[2026-10-25 00:00:04,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:00:04,967.967 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 00:00:09,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:00:09,988.988 INFO    ] Checking for system updates...
[2026-10-25 00:00:10,027.027 INFO    ] 200
[2026-10-25 00:00:10,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:10,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:10,086.086 INFO    ] No update needed
[2026-10-25 00:00:10,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 00:00:10,126.126 INFO    ] 200
[2026-10-25 00:00:10,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:10,169.169 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:00:10,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:10,226.226 INFO    ] No camera update needed
[2026-10-25 00:00:10,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:00:10,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:00:10,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:00:10,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:00:12,282.282 INFO    ] ================================================
[2026-10-25 00:00:12,297.297 INFO    ] Launching Daemon at Sun Oct 25 00:00:12 IST 2026
[2026-10-25 00:00:12,308.308 INFO    ] ================================================
[2026-10-25 00:00:12,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:00:12
[2026-10-25 00:00:13,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:00:13,762.762 INFO    ] Initializing speech engine...
[2026-10-25 00:00:13,767.767 INFO    ] 2026-10-25 00:00:13
[2026-10-25 00:00:14,029.029 INFO    ] 2026-10-25 00:00:14
[2026-10-25 00:00:14,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:00:14,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:00:14,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:00:14,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:00:14,497.497 INFO    ] time= 25/10/2026 00:00:14
[2026-10-25 00:00:14,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:00:14,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:00:14,640.640 INFO    ] No existing commands found in stream
[2026-10-25 00:00:19,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:00:19,654.654 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 00:00:24,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:00:24,050.050 INFO    ] Checking for system updates...
[2026-10-25 00:00:24,090.090 INFO    ] 200
[2026-10-25 00:00:24,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:24,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:24,155.155 INFO    ] No update needed
[2026-10-25 00:00:24,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 00:00:24,195.195 INFO    ] 200
[2026-10-25 00:00:24,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:24,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:00:24,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:24,304.304 INFO    ] No camera update needed
[2026-10-25 00:00:24,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:00:24,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:00:24,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:00:24,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:00:26,359.359 INFO    ] ================================================
[2026-10-25 00:00:26,374.374 INFO    ] Launching Daemon at Sun Oct 25 00:00:26 IST 2026
[2026-10-25 00:00:26,385.385 INFO    ] ================================================
[2026-10-25 00:00:26,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:00:26
[2026-10-25 00:00:27,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:00:27,795.795 INFO    ] Initializing speech engine...
[2026-10-25 00:00:27,804.804 INFO    ] 2026-10-25 00:00:27
[2026-10-25 00:00:28,098.098 INFO    ] 2026-10-25 00:00:28
[2026-10-25 00:00:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:00:28,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:00:28,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:00:28,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:00:28,521.521 INFO    ] time= 25/10/2026 00:00:28
[2026-10-25 00:00:28,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:00:28,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:00:28,657.657 INFO    ] No existing commands found in stream
[2026-10-25 00:00:33,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:00:33,685.685 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 00:00:36,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:00:36,654.654 INFO    ] Checking for system updates...
[2026-10-25 00:00:36,690.690 INFO    ] 200
[2026-10-25 00:00:36,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:36,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:00:36,755.755 INFO    ] No update needed
[2026-10-25 00:00:36,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 00:00:36,790.790 INFO    ] 200
[2026-10-25 00:00:36,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:36,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:00:36,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:00:36,904.904 INFO    ] No camera update needed
[2026-10-25 00:00:36,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:00:36,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:00:36,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:00:36,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:00:38,959.959 INFO    ] ================================================
[2026-10-25 00:00:38,981.981 INFO    ] Launching Daemon at Sun Oct 25 00:00:38 IST 2026
[2026-10-25 00:00:38,992.992 INFO    ] ================================================
[2026-10-25 00:00:39,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:00:39
[2026-10-25 00:00:40,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:00:40,457.457 INFO    ] Initializing speech engine...
[2026-10-25 00:00:40,466.466 INFO    ] 2026-10-25 00:00:40
[2026-10-25 00:00:40,739.739 INFO    ] 2026-10-25 00:00:40
[2026-10-25 00:00:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:00:40,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:00:41,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:00:41,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:00:41,167.167 INFO    ] time= 25/10/2026 00:00:41
[2026-10-25 00:00:41,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:00:41,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:00:41,253.253 INFO    ] No existing commands found in stream
[2026-10-25 00:00:46,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:00:46,269.269 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 00:00:47,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:00:47,833.833 INFO    ] Checking for system updates...
[2026-10-25 00:00:47,869.869 INFO    ] 200
[2026-10-25 00:00:47,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:47,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:47,935.935 INFO    ] No update needed
[2026-10-25 00:00:47,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 00:00:47,971.971 INFO    ] 200
[2026-10-25 00:00:47,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:00:48,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:00:48,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:00:48,175.175 INFO    ] No camera update needed
[2026-10-25 00:00:48,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:00:48,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:00:48,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:00:48,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:00:50,232.232 INFO    ] ================================================
[2026-10-25 00:00:50,247.247 INFO    ] Launching Daemon at Sun Oct 25 00:00:50 IST 2026
[2026-10-25 00:00:50,258.258 INFO    ] ================================================
[2026-10-25 00:00:50,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:00:50
[2026-10-25 00:00:51,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:00:51,903.903 INFO    ] Initializing speech engine...
[2026-10-25 00:00:51,913.913 INFO    ] 2026-10-25 00:00:51
[2026-10-25 00:00:52,203.203 INFO    ] 2026-10-25 00:00:52
[2026-10-25 00:00:52,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:00:52,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:00:52,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:00:52,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:00:52,755.755 INFO    ] time= 25/10/2026 00:00:52
[2026-10-25 00:00:52,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:00:52,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:00:52,917.917 INFO    ] No existing commands found in stream
[2026-10-25 00:00:57,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:00:57,953.953 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 00:01:00,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:01:00,488.488 INFO    ] Checking for system updates...
[2026-10-25 00:01:00,528.528 INFO    ] 200
[2026-10-25 00:01:00,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:00,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:01:00,594.594 INFO    ] No update needed
[2026-10-25 00:01:00,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 00:01:00,634.634 INFO    ] 200
[2026-10-25 00:01:00,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:00,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:01:00,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:01:00,742.742 INFO    ] No camera update needed
[2026-10-25 00:01:00,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:01:00,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:01:00,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:01:00,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:01:02,811.811 INFO    ] ================================================
[2026-10-25 00:01:02,837.837 INFO    ] Launching Daemon at Sun Oct 25 00:01:02 IST 2026
[2026-10-25 00:01:02,856.856 INFO    ] ================================================
[2026-10-25 00:01:03,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:01:03
[2026-10-25 00:01:04,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:01:04,398.398 INFO    ] Initializing speech engine...
[2026-10-25 00:01:04,407.407 INFO    ] 2026-10-25 00:01:04
[2026-10-25 00:01:04,662.662 INFO    ] 2026-10-25 00:01:04
[2026-10-25 00:01:04,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:01:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:01:04,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:01:05,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:01:05,143.143 INFO    ] time= 25/10/2026 00:01:05
[2026-10-25 00:01:05,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:01:05,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:01:05,284.284 INFO    ] No existing commands found in stream
[2026-10-25 00:01:10,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:01:10,313.313 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 00:01:13,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:01:13,673.673 INFO    ] Checking for system updates...
[2026-10-25 00:01:13,712.712 INFO    ] 200
[2026-10-25 00:01:13,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:13,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:13,770.770 INFO    ] No update needed
[2026-10-25 00:01:13,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 00:01:13,810.810 INFO    ] 200
[2026-10-25 00:01:13,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:13,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:01:13,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:13,905.905 INFO    ] No camera update needed
[2026-10-25 00:01:13,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:01:13,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:01:13,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:01:13,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:01:15,962.962 INFO    ] ================================================
[2026-10-25 00:01:15,977.977 INFO    ] Launching Daemon at Sun Oct 25 00:01:15 IST 2026
[2026-10-25 00:01:15,987.987 INFO    ] ================================================
[2026-10-25 00:01:16,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:01:16
[2026-10-25 00:01:17,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:01:17,427.427 INFO    ] Initializing speech engine...
[2026-10-25 00:01:17,433.433 INFO    ] 2026-10-25 00:01:17
[2026-10-25 00:01:17,730.730 INFO    ] 2026-10-25 00:01:17
[2026-10-25 00:01:17,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:01:17,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:01:17,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:01:18,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:01:18,145.145 INFO    ] time= 25/10/2026 00:01:18
[2026-10-25 00:01:18,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:01:18,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:01:18,231.231 INFO    ] No existing commands found in stream
[2026-10-25 00:01:23,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:01:23,269.269 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 00:01:27,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:01:27,502.502 INFO    ] Checking for system updates...
[2026-10-25 00:01:27,542.542 INFO    ] 200
[2026-10-25 00:01:27,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:27,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:27,600.600 INFO    ] No update needed
[2026-10-25 00:01:27,602.602 INFO    ] Checking for camera pi updates...
[2026-10-25 00:01:27,640.640 INFO    ] 200
[2026-10-25 00:01:27,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:27,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:01:27,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:27,734.734 INFO    ] No camera update needed
[2026-10-25 00:01:27,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:01:27,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:01:27,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:01:27,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:01:29,791.791 INFO    ] ================================================
[2026-10-25 00:01:29,806.806 INFO    ] Launching Daemon at Sun Oct 25 00:01:29 IST 2026
[2026-10-25 00:01:29,817.817 INFO    ] ================================================
[2026-10-25 00:01:30,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:01:30
[2026-10-25 00:01:30,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:01:31,285.285 INFO    ] Initializing speech engine...
[2026-10-25 00:01:31,294.294 INFO    ] 2026-10-25 00:01:31
[2026-10-25 00:01:31,563.563 INFO    ] 2026-10-25 00:01:31
[2026-10-25 00:01:31,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:01:31,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:01:31,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:01:32,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:01:32,076.076 INFO    ] time= 25/10/2026 00:01:32
[2026-10-25 00:01:32,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:01:32,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:01:32,290.290 INFO    ] No existing commands found in stream
[2026-10-25 00:01:37,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:01:37,323.323 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 00:01:39,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:01:39,538.538 INFO    ] Checking for system updates...
[2026-10-25 00:01:39,580.580 INFO    ] 200
[2026-10-25 00:01:39,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:39,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:39,647.647 INFO    ] No update needed
[2026-10-25 00:01:39,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 00:01:39,688.688 INFO    ] 200
[2026-10-25 00:01:39,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:39,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:01:39,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:01:39,793.793 INFO    ] No camera update needed
[2026-10-25 00:01:39,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:01:39,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:01:39,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:01:39,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:01:41,847.847 INFO    ] ================================================
[2026-10-25 00:01:41,862.862 INFO    ] Launching Daemon at Sun Oct 25 00:01:41 IST 2026
[2026-10-25 00:01:41,873.873 INFO    ] ================================================
[2026-10-25 00:01:42,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:01:42
[2026-10-25 00:01:43,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:01:43,281.281 INFO    ] Initializing speech engine...
[2026-10-25 00:01:43,287.287 INFO    ] 2026-10-25 00:01:43
[2026-10-25 00:01:43,584.584 INFO    ] 2026-10-25 00:01:43
[2026-10-25 00:01:43,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:01:43,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:01:43,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:01:43,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:01:43,996.996 INFO    ] time= 25/10/2026 00:01:43
[2026-10-25 00:01:44,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:01:44,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:01:44,148.148 INFO    ] No existing commands found in stream
[2026-10-25 00:01:49,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:01:49,176.176 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 00:01:52,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:01:52,833.833 INFO    ] Checking for system updates...
[2026-10-25 00:01:52,869.869 INFO    ] 200
[2026-10-25 00:01:52,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:52,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:01:52,933.933 INFO    ] No update needed
[2026-10-25 00:01:52,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 00:01:52,969.969 INFO    ] 200
[2026-10-25 00:01:52,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:01:53,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:01:53,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:01:53,078.078 INFO    ] No camera update needed
[2026-10-25 00:01:53,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:01:53,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:01:53,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:01:53,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:01:55,133.133 INFO    ] ================================================
[2026-10-25 00:01:55,148.148 INFO    ] Launching Daemon at Sun Oct 25 00:01:55 IST 2026
[2026-10-25 00:01:55,159.159 INFO    ] ================================================
[2026-10-25 00:01:55,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:01:55
[2026-10-25 00:01:56,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:01:56,757.757 INFO    ] Initializing speech engine...
[2026-10-25 00:01:56,766.766 INFO    ] 2026-10-25 00:01:56
[2026-10-25 00:01:57,035.035 INFO    ] 2026-10-25 00:01:57
[2026-10-25 00:01:57,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:01:57,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:01:57,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:01:57,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:01:57,587.587 INFO    ] time= 25/10/2026 00:01:57
[2026-10-25 00:01:57,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:01:57,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:01:57,738.738 INFO    ] No existing commands found in stream
[2026-10-25 00:02:02,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:02:02,768.768 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 00:02:05,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:02:05,218.218 INFO    ] Checking for system updates...
[2026-10-25 00:02:05,257.257 INFO    ] 200
[2026-10-25 00:02:05,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:05,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:02:05,315.315 INFO    ] No update needed
[2026-10-25 00:02:05,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 00:02:05,351.351 INFO    ] 200
[2026-10-25 00:02:05,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:05,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:02:05,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:02:05,452.452 INFO    ] No camera update needed
[2026-10-25 00:02:05,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:02:05,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:02:05,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:02:05,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:02:07,512.512 INFO    ] ================================================
[2026-10-25 00:02:07,527.527 INFO    ] Launching Daemon at Sun Oct 25 00:02:07 IST 2026
[2026-10-25 00:02:07,538.538 INFO    ] ================================================
[2026-10-25 00:02:08,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:02:08
[2026-10-25 00:02:08,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:02:09,136.136 INFO    ] Initializing speech engine...
[2026-10-25 00:02:09,144.144 INFO    ] 2026-10-25 00:02:09
[2026-10-25 00:02:09,419.419 INFO    ] 2026-10-25 00:02:09
[2026-10-25 00:02:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:02:09,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:02:09,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:02:09,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:02:09,938.938 INFO    ] time= 25/10/2026 00:02:09
[2026-10-25 00:02:09,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:02:10,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:02:10,126.126 INFO    ] No existing commands found in stream
[2026-10-25 00:02:15,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:02:15,161.161 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 00:02:16,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:02:16,887.887 INFO    ] Checking for system updates...
[2026-10-25 00:02:16,925.925 INFO    ] 200
[2026-10-25 00:02:16,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:16,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:16,991.991 INFO    ] No update needed
[2026-10-25 00:02:16,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 00:02:17,029.029 INFO    ] 200
[2026-10-25 00:02:17,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:17,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:02:17,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:17,136.136 INFO    ] No camera update needed
[2026-10-25 00:02:17,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:02:17,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:02:17,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:02:17,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:02:19,191.191 INFO    ] ================================================
[2026-10-25 00:02:19,206.206 INFO    ] Launching Daemon at Sun Oct 25 00:02:19 IST 2026
[2026-10-25 00:02:19,216.216 INFO    ] ================================================
[2026-10-25 00:02:19,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:02:19
[2026-10-25 00:02:20,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:02:20,614.614 INFO    ] Initializing speech engine...
[2026-10-25 00:02:20,626.626 INFO    ] 2026-10-25 00:02:20
[2026-10-25 00:02:20,893.893 INFO    ] 2026-10-25 00:02:20
[2026-10-25 00:02:20,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:02:21,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:02:21,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:02:21,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:02:21,269.269 INFO    ] time= 25/10/2026 00:02:21
[2026-10-25 00:02:21,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:02:21,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:02:21,445.445 INFO    ] No existing commands found in stream
[2026-10-25 00:02:26,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:02:26,473.473 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 00:02:27,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:02:27,851.851 INFO    ] Checking for system updates...
[2026-10-25 00:02:27,888.888 INFO    ] 200
[2026-10-25 00:02:27,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:27,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:27,955.955 INFO    ] No update needed
[2026-10-25 00:02:27,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 00:02:27,995.995 INFO    ] 200
[2026-10-25 00:02:27,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:28,040.040 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:02:28,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:28,089.089 INFO    ] No camera update needed
[2026-10-25 00:02:28,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:02:28,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:02:28,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:02:28,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:02:30,147.147 INFO    ] ================================================
[2026-10-25 00:02:30,162.162 INFO    ] Launching Daemon at Sun Oct 25 00:02:30 IST 2026
[2026-10-25 00:02:30,172.172 INFO    ] ================================================
[2026-10-25 00:02:30,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:02:30
[2026-10-25 00:02:31,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:02:31,614.614 INFO    ] Initializing speech engine...
[2026-10-25 00:02:31,623.623 INFO    ] 2026-10-25 00:02:31
[2026-10-25 00:02:31,909.909 INFO    ] 2026-10-25 00:02:31
[2026-10-25 00:02:31,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:02:32,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:02:32,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:02:32,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:02:32,323.323 INFO    ] time= 25/10/2026 00:02:32
[2026-10-25 00:02:32,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:02:32,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:02:32,461.461 INFO    ] No existing commands found in stream
[2026-10-25 00:02:37,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:02:37,477.477 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 00:02:40,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:02:40,323.323 INFO    ] Checking for system updates...
[2026-10-25 00:02:40,363.363 INFO    ] 200
[2026-10-25 00:02:40,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:40,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:40,421.421 INFO    ] No update needed
[2026-10-25 00:02:40,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 00:02:40,457.457 INFO    ] 200
[2026-10-25 00:02:40,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:40,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:02:40,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:02:40,554.554 INFO    ] No camera update needed
[2026-10-25 00:02:40,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:02:40,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:02:40,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:02:40,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:02:42,609.609 INFO    ] ================================================
[2026-10-25 00:02:42,624.624 INFO    ] Launching Daemon at Sun Oct 25 00:02:42 IST 2026
[2026-10-25 00:02:42,635.635 INFO    ] ================================================
[2026-10-25 00:02:43,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:02:43
[2026-10-25 00:02:43,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:02:44,050.050 INFO    ] Initializing speech engine...
[2026-10-25 00:02:44,069.069 INFO    ] 2026-10-25 00:02:44
[2026-10-25 00:02:44,320.320 INFO    ] 2026-10-25 00:02:44
[2026-10-25 00:02:44,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:02:44,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:02:44,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:02:44,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:02:44,811.811 INFO    ] time= 25/10/2026 00:02:44
[2026-10-25 00:02:44,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:02:44,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:02:45,028.028 INFO    ] No existing commands found in stream
[2026-10-25 00:02:50,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:02:50,056.056 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 00:02:52,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:02:52,101.101 INFO    ] Checking for system updates...
[2026-10-25 00:02:52,140.140 INFO    ] 200
[2026-10-25 00:02:52,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:52,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:02:52,203.203 INFO    ] No update needed
[2026-10-25 00:02:52,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 00:02:52,238.238 INFO    ] 200
[2026-10-25 00:02:52,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:02:52,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:02:52,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:02:52,439.439 INFO    ] No camera update needed
[2026-10-25 00:02:52,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:02:52,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:02:52,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:02:52,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:02:54,494.494 INFO    ] ================================================
[2026-10-25 00:02:54,509.509 INFO    ] Launching Daemon at Sun Oct 25 00:02:54 IST 2026
[2026-10-25 00:02:54,519.519 INFO    ] ================================================
[2026-10-25 00:02:55,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:02:55
[2026-10-25 00:02:55,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:02:55,926.926 INFO    ] Initializing speech engine...
[2026-10-25 00:02:55,932.932 INFO    ] 2026-10-25 00:02:55
[2026-10-25 00:02:56,219.219 INFO    ] 2026-10-25 00:02:56
[2026-10-25 00:02:56,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:02:56,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:02:56,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:02:56,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:02:56,630.630 INFO    ] time= 25/10/2026 00:02:56
[2026-10-25 00:02:56,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:02:56,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:02:56,810.810 INFO    ] No existing commands found in stream
[2026-10-25 00:03:01,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:03:01,837.837 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 00:03:03,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:03:03,449.449 INFO    ] Checking for system updates...
[2026-10-25 00:03:03,486.486 INFO    ] 200
[2026-10-25 00:03:03,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:03,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:03,557.557 INFO    ] No update needed
[2026-10-25 00:03:03,560.560 INFO    ] Checking for camera pi updates...
[2026-10-25 00:03:03,593.593 INFO    ] 200
[2026-10-25 00:03:03,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:03,654.654 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:03:03,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:03,714.714 INFO    ] No camera update needed
[2026-10-25 00:03:03,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:03:03,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:03:03,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:03:03,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:03:05,771.771 INFO    ] ================================================
[2026-10-25 00:03:05,786.786 INFO    ] Launching Daemon at Sun Oct 25 00:03:05 IST 2026
[2026-10-25 00:03:05,797.797 INFO    ] ================================================
[2026-10-25 00:03:06,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:03:06
[2026-10-25 00:03:06,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:03:07,213.213 INFO    ] Initializing speech engine...
[2026-10-25 00:03:07,229.229 INFO    ] 2026-10-25 00:03:07
[2026-10-25 00:03:07,514.514 INFO    ] 2026-10-25 00:03:07
[2026-10-25 00:03:07,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:03:07,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:03:07,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:03:07,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:03:07,935.935 INFO    ] time= 25/10/2026 00:03:07
[2026-10-25 00:03:07,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:03:07,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:03:08,114.114 INFO    ] No existing commands found in stream
[2026-10-25 00:03:13,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:03:13,142.142 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 00:03:17,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:03:17,145.145 INFO    ] Checking for system updates...
[2026-10-25 00:03:17,191.191 INFO    ] 200
[2026-10-25 00:03:17,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:17,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:17,258.258 INFO    ] No update needed
[2026-10-25 00:03:17,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 00:03:17,301.301 INFO    ] 200
[2026-10-25 00:03:17,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:17,355.355 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:03:17,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:17,408.408 INFO    ] No camera update needed
[2026-10-25 00:03:17,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:03:17,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:03:17,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:03:17,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:03:19,469.469 INFO    ] ================================================
[2026-10-25 00:03:19,484.484 INFO    ] Launching Daemon at Sun Oct 25 00:03:19 IST 2026
[2026-10-25 00:03:19,495.495 INFO    ] ================================================
[2026-10-25 00:03:20,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:03:20
[2026-10-25 00:03:20,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:03:20,900.900 INFO    ] Initializing speech engine...
[2026-10-25 00:03:20,908.908 INFO    ] 2026-10-25 00:03:20
[2026-10-25 00:03:21,182.182 INFO    ] 2026-10-25 00:03:21
[2026-10-25 00:03:21,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:03:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:03:21,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:03:21,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:03:21,646.646 INFO    ] time= 25/10/2026 00:03:21
[2026-10-25 00:03:21,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:03:21,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:03:21,827.827 INFO    ] No existing commands found in stream
[2026-10-25 00:03:26,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:03:26,867.867 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 00:03:27,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:03:27,506.506 INFO    ] Checking for system updates...
[2026-10-25 00:03:27,546.546 INFO    ] 200
[2026-10-25 00:03:27,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:27,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:27,611.611 INFO    ] No update needed
[2026-10-25 00:03:27,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 00:03:27,653.653 INFO    ] 200
[2026-10-25 00:03:27,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:27,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:03:27,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:27,771.771 INFO    ] No camera update needed
[2026-10-25 00:03:27,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:03:27,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:03:27,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:03:27,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:03:29,832.832 INFO    ] ================================================
[2026-10-25 00:03:29,848.848 INFO    ] Launching Daemon at Sun Oct 25 00:03:29 IST 2026
[2026-10-25 00:03:29,859.859 INFO    ] ================================================
[2026-10-25 00:03:30,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:03:30
[2026-10-25 00:03:31,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:03:31,288.288 INFO    ] Initializing speech engine...
[2026-10-25 00:03:31,301.301 INFO    ] 2026-10-25 00:03:31
[2026-10-25 00:03:31,576.576 INFO    ] 2026-10-25 00:03:31
[2026-10-25 00:03:31,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:03:31,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:03:31,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:03:32,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:03:32,078.078 INFO    ] time= 25/10/2026 00:03:32
[2026-10-25 00:03:32,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:03:32,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:03:32,256.256 INFO    ] No existing commands found in stream
[2026-10-25 00:03:37,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:03:37,306.306 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 00:03:39,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:03:39,357.357 INFO    ] Checking for system updates...
[2026-10-25 00:03:39,395.395 INFO    ] 200
[2026-10-25 00:03:39,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:39,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:39,454.454 INFO    ] No update needed
[2026-10-25 00:03:39,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 00:03:39,491.491 INFO    ] 200
[2026-10-25 00:03:39,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:39,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:03:39,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:39,588.588 INFO    ] No camera update needed
[2026-10-25 00:03:39,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:03:39,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:03:39,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:03:39,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:03:41,643.643 INFO    ] ================================================
[2026-10-25 00:03:41,659.659 INFO    ] Launching Daemon at Sun Oct 25 00:03:41 IST 2026
[2026-10-25 00:03:41,669.669 INFO    ] ================================================
[2026-10-25 00:03:42,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:03:42
[2026-10-25 00:03:42,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:03:43,070.070 INFO    ] Initializing speech engine...
[2026-10-25 00:03:43,078.078 INFO    ] 2026-10-25 00:03:43
[2026-10-25 00:03:43,370.370 INFO    ] 2026-10-25 00:03:43
[2026-10-25 00:03:43,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:03:43,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:03:43,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:03:43,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:03:43,757.757 INFO    ] time= 25/10/2026 00:03:43
[2026-10-25 00:03:43,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:03:43,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:03:43,868.868 INFO    ] No existing commands found in stream
[2026-10-25 00:03:48,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:03:48,884.884 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 00:03:53,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:03:53,090.090 INFO    ] Checking for system updates...
[2026-10-25 00:03:53,130.130 INFO    ] 200
[2026-10-25 00:03:53,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:53,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:53,188.188 INFO    ] No update needed
[2026-10-25 00:03:53,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 00:03:53,224.224 INFO    ] 200
[2026-10-25 00:03:53,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:03:53,271.271 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:03:53,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:03:53,320.320 INFO    ] No camera update needed
[2026-10-25 00:03:53,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:03:53,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:03:53,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:03:53,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:03:55,376.376 INFO    ] ================================================
[2026-10-25 00:03:55,391.391 INFO    ] Launching Daemon at Sun Oct 25 00:03:55 IST 2026
[2026-10-25 00:03:55,402.402 INFO    ] ================================================
[2026-10-25 00:03:56,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:03:56
[2026-10-25 00:03:56,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:03:57,009.009 INFO    ] Initializing speech engine...
[2026-10-25 00:03:57,014.014 INFO    ] 2026-10-25 00:03:57
[2026-10-25 00:03:57,296.296 INFO    ] 2026-10-25 00:03:57
[2026-10-25 00:03:57,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:03:57,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:03:57,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:03:57,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:03:57,824.824 INFO    ] time= 25/10/2026 00:03:57
[2026-10-25 00:03:57,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:03:57,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:03:57,977.977 INFO    ] No existing commands found in stream
[2026-10-25 00:04:02,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:04:02,999.999 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 00:04:07,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:04:07,410.410 INFO    ] Checking for system updates...
[2026-10-25 00:04:07,447.447 INFO    ] 200
[2026-10-25 00:04:07,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:07,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:04:07,506.506 INFO    ] No update needed
[2026-10-25 00:04:07,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 00:04:07,544.544 INFO    ] 200
[2026-10-25 00:04:07,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:07,588.588 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:04:07,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:04:07,650.650 INFO    ] No camera update needed
[2026-10-25 00:04:07,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:04:07,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:04:07,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:04:07,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:04:09,709.709 INFO    ] ================================================
[2026-10-25 00:04:09,723.723 INFO    ] Launching Daemon at Sun Oct 25 00:04:09 IST 2026
[2026-10-25 00:04:09,735.735 INFO    ] ================================================
[2026-10-25 00:04:10,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:04:10
[2026-10-25 00:04:10,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:04:11,177.177 INFO    ] Initializing speech engine...
[2026-10-25 00:04:11,185.185 INFO    ] 2026-10-25 00:04:11
[2026-10-25 00:04:11,460.460 INFO    ] 2026-10-25 00:04:11
[2026-10-25 00:04:11,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:04:11,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:04:11,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:04:11,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:04:11,984.984 INFO    ] time= 25/10/2026 00:04:11
[2026-10-25 00:04:11,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:04:12,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:04:12,115.115 INFO    ] No existing commands found in stream
[2026-10-25 00:04:17,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:04:17,145.145 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 00:04:18,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:04:18,744.744 INFO    ] Checking for system updates...
[2026-10-25 00:04:18,780.780 INFO    ] 200
[2026-10-25 00:04:18,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:18,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:18,847.847 INFO    ] No update needed
[2026-10-25 00:04:18,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 00:04:18,887.887 INFO    ] 200
[2026-10-25 00:04:18,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:18,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:04:18,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:18,988.988 INFO    ] No camera update needed
[2026-10-25 00:04:18,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:04:18,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:04:19,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:04:19,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:04:21,049.049 INFO    ] ================================================
[2026-10-25 00:04:21,065.065 INFO    ] Launching Daemon at Sun Oct 25 00:04:21 IST 2026
[2026-10-25 00:04:21,076.076 INFO    ] ================================================
[2026-10-25 00:04:21,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:04:21
[2026-10-25 00:04:22,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:04:22,512.512 INFO    ] Initializing speech engine...
[2026-10-25 00:04:22,522.522 INFO    ] 2026-10-25 00:04:22
[2026-10-25 00:04:22,783.783 INFO    ] 2026-10-25 00:04:22
[2026-10-25 00:04:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:04:23,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:04:23,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:04:23,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:04:23,344.344 INFO    ] time= 25/10/2026 00:04:23
[2026-10-25 00:04:23,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:04:23,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:04:23,485.485 INFO    ] No existing commands found in stream
[2026-10-25 00:04:28,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:04:28,514.514 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 00:04:31,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:04:31,340.340 INFO    ] Checking for system updates...
[2026-10-25 00:04:31,376.376 INFO    ] 200
[2026-10-25 00:04:31,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:31,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:31,441.441 INFO    ] No update needed
[2026-10-25 00:04:31,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 00:04:31,477.477 INFO    ] 200
[2026-10-25 00:04:31,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:31,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:04:31,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:31,564.564 INFO    ] No camera update needed
[2026-10-25 00:04:31,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:04:31,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:04:31,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:04:31,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:04:33,621.621 INFO    ] ================================================
[2026-10-25 00:04:33,637.637 INFO    ] Launching Daemon at Sun Oct 25 00:04:33 IST 2026
[2026-10-25 00:04:33,648.648 INFO    ] ================================================
[2026-10-25 00:04:34,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:04:34
[2026-10-25 00:04:34,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:04:35,103.103 INFO    ] Initializing speech engine...
[2026-10-25 00:04:35,112.112 INFO    ] 2026-10-25 00:04:35
[2026-10-25 00:04:35,369.369 INFO    ] 2026-10-25 00:04:35
[2026-10-25 00:04:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:04:35,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:04:35,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:04:35,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:04:35,834.834 INFO    ] time= 25/10/2026 00:04:35
[2026-10-25 00:04:35,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:04:35,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:04:36,030.030 INFO    ] No existing commands found in stream
[2026-10-25 00:04:41,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:04:41,055.055 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 00:04:44,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:04:44,302.302 INFO    ] Checking for system updates...
[2026-10-25 00:04:44,338.338 INFO    ] 200
[2026-10-25 00:04:44,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:44,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:44,409.409 INFO    ] No update needed
[2026-10-25 00:04:44,412.412 INFO    ] Checking for camera pi updates...
[2026-10-25 00:04:44,445.445 INFO    ] 200
[2026-10-25 00:04:44,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:44,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:04:44,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:44,556.556 INFO    ] No camera update needed
[2026-10-25 00:04:44,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:04:44,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:04:44,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:04:44,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:04:46,612.612 INFO    ] ================================================
[2026-10-25 00:04:46,628.628 INFO    ] Launching Daemon at Sun Oct 25 00:04:46 IST 2026
[2026-10-25 00:04:46,639.639 INFO    ] ================================================
[2026-10-25 00:04:47,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:04:47
[2026-10-25 00:04:47,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:04:48,241.241 INFO    ] Initializing speech engine...
[2026-10-25 00:04:48,250.250 INFO    ] 2026-10-25 00:04:48
[2026-10-25 00:04:48,523.523 INFO    ] 2026-10-25 00:04:48
[2026-10-25 00:04:48,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:04:48,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:04:48,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:04:48,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:04:49,016.016 INFO    ] time= 25/10/2026 00:04:48
[2026-10-25 00:04:49,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:04:49,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:04:49,205.205 INFO    ] No existing commands found in stream
[2026-10-25 00:04:54,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:04:54,231.231 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 00:04:55,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:04:55,308.308 INFO    ] Checking for system updates...
[2026-10-25 00:04:55,345.345 INFO    ] 200
[2026-10-25 00:04:55,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:55,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:55,404.404 INFO    ] No update needed
[2026-10-25 00:04:55,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 00:04:55,442.442 INFO    ] 200
[2026-10-25 00:04:55,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:04:55,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:04:55,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:04:55,654.654 INFO    ] No camera update needed
[2026-10-25 00:04:55,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:04:55,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:04:55,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:04:55,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:04:57,714.714 INFO    ] ================================================
[2026-10-25 00:04:57,730.730 INFO    ] Launching Daemon at Sun Oct 25 00:04:57 IST 2026
[2026-10-25 00:04:57,741.741 INFO    ] ================================================
[2026-10-25 00:04:58,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:04:58
[2026-10-25 00:04:59,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:04:59,315.315 INFO    ] Initializing speech engine...
[2026-10-25 00:04:59,335.335 INFO    ] 2026-10-25 00:04:59
[2026-10-25 00:04:59,610.610 INFO    ] 2026-10-25 00:04:59
[2026-10-25 00:04:59,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:04:59,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:04:59,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:05:00,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:05:00,119.119 INFO    ] time= 25/10/2026 00:05:00
[2026-10-25 00:05:00,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:05:00,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:05:00,309.309 INFO    ] No existing commands found in stream
[2026-10-25 00:05:05,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:05:05,344.344 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 00:05:06,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:05:06,358.358 INFO    ] Checking for system updates...
[2026-10-25 00:05:06,397.397 INFO    ] 200
[2026-10-25 00:05:06,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:06,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:06,464.464 INFO    ] No update needed
[2026-10-25 00:05:06,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 00:05:06,506.506 INFO    ] 200
[2026-10-25 00:05:06,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:06,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:05:06,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:06,611.611 INFO    ] No camera update needed
[2026-10-25 00:05:06,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:05:06,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:05:06,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:05:06,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:05:08,669.669 INFO    ] ================================================
[2026-10-25 00:05:08,685.685 INFO    ] Launching Daemon at Sun Oct 25 00:05:08 IST 2026
[2026-10-25 00:05:08,696.696 INFO    ] ================================================
[2026-10-25 00:05:09,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:05:09
[2026-10-25 00:05:09,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:05:10,148.148 INFO    ] Initializing speech engine...
[2026-10-25 00:05:10,157.157 INFO    ] 2026-10-25 00:05:10
[2026-10-25 00:05:10,407.407 INFO    ] 2026-10-25 00:05:10
[2026-10-25 00:05:10,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:05:10,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:05:10,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:05:10,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:05:10,895.895 INFO    ] time= 25/10/2026 00:05:10
[2026-10-25 00:05:10,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:05:10,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:05:11,006.006 INFO    ] No existing commands found in stream
[2026-10-25 00:05:16,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:05:16,019.019 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 00:05:17,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:05:17,625.625 INFO    ] Checking for system updates...
[2026-10-25 00:05:17,661.661 INFO    ] 200
[2026-10-25 00:05:17,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:17,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:05:17,719.719 INFO    ] No update needed
[2026-10-25 00:05:17,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 00:05:17,756.756 INFO    ] 200
[2026-10-25 00:05:17,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:17,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:05:17,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:05:17,851.851 INFO    ] No camera update needed
[2026-10-25 00:05:17,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:05:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:05:17,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:05:17,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:05:19,907.907 INFO    ] ================================================
[2026-10-25 00:05:19,923.923 INFO    ] Launching Daemon at Sun Oct 25 00:05:19 IST 2026
[2026-10-25 00:05:19,935.935 INFO    ] ================================================
[2026-10-25 00:05:20,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:05:20
[2026-10-25 00:05:21,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:05:21,367.367 INFO    ] Initializing speech engine...
[2026-10-25 00:05:21,373.373 INFO    ] 2026-10-25 00:05:21
[2026-10-25 00:05:21,635.635 INFO    ] 2026-10-25 00:05:21
[2026-10-25 00:05:21,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:05:21,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:05:21,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:05:22,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:05:22,124.124 INFO    ] time= 25/10/2026 00:05:22
[2026-10-25 00:05:22,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:05:22,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:05:22,302.302 INFO    ] No existing commands found in stream
[2026-10-25 00:05:27,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:05:27,332.332 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 00:05:31,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:05:31,083.083 INFO    ] Checking for system updates...
[2026-10-25 00:05:31,120.120 INFO    ] 200
[2026-10-25 00:05:31,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:31,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:31,189.189 INFO    ] No update needed
[2026-10-25 00:05:31,192.192 INFO    ] Checking for camera pi updates...
[2026-10-25 00:05:31,227.227 INFO    ] 200
[2026-10-25 00:05:31,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:31,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:05:31,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:31,332.332 INFO    ] No camera update needed
[2026-10-25 00:05:31,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:05:31,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:05:31,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:05:31,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:05:33,393.393 INFO    ] ================================================
[2026-10-25 00:05:33,408.408 INFO    ] Launching Daemon at Sun Oct 25 00:05:33 IST 2026
[2026-10-25 00:05:33,418.418 INFO    ] ================================================
[2026-10-25 00:05:33,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:05:33
[2026-10-25 00:05:34,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:05:34,884.884 INFO    ] Initializing speech engine...
[2026-10-25 00:05:34,899.899 INFO    ] 2026-10-25 00:05:34
[2026-10-25 00:05:35,164.164 INFO    ] 2026-10-25 00:05:35
[2026-10-25 00:05:35,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:05:35,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:05:35,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:05:35,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:05:35,649.649 INFO    ] time= 25/10/2026 00:05:35
[2026-10-25 00:05:35,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:05:35,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:05:35,824.824 INFO    ] No existing commands found in stream
[2026-10-25 00:05:40,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:05:40,864.864 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 00:05:43,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:05:43,603.603 INFO    ] Checking for system updates...
[2026-10-25 00:05:43,640.640 INFO    ] 200
[2026-10-25 00:05:43,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:43,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:43,699.699 INFO    ] No update needed
[2026-10-25 00:05:43,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 00:05:43,737.737 INFO    ] 200
[2026-10-25 00:05:43,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:43,781.781 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:05:43,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:43,843.843 INFO    ] No camera update needed
[2026-10-25 00:05:43,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:05:43,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:05:43,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:05:43,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:05:45,899.899 INFO    ] ================================================
[2026-10-25 00:05:45,915.915 INFO    ] Launching Daemon at Sun Oct 25 00:05:45 IST 2026
[2026-10-25 00:05:45,926.926 INFO    ] ================================================
[2026-10-25 00:05:46,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:05:46
[2026-10-25 00:05:47,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:05:47,340.340 INFO    ] Initializing speech engine...
[2026-10-25 00:05:47,348.348 INFO    ] 2026-10-25 00:05:47
[2026-10-25 00:05:47,623.623 INFO    ] 2026-10-25 00:05:47
[2026-10-25 00:05:47,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:05:47,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:05:47,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:05:48,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:05:48,101.101 INFO    ] time= 25/10/2026 00:05:48
[2026-10-25 00:05:48,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:05:48,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:05:48,257.257 INFO    ] No existing commands found in stream
[2026-10-25 00:05:53,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:05:53,289.289 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 00:05:57,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:05:57,086.086 INFO    ] Checking for system updates...
[2026-10-25 00:05:57,123.123 INFO    ] 200
[2026-10-25 00:05:57,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:57,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:57,183.183 INFO    ] No update needed
[2026-10-25 00:05:57,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 00:05:57,219.219 INFO    ] 200
[2026-10-25 00:05:57,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:05:57,276.276 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:05:57,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:05:57,327.327 INFO    ] No camera update needed
[2026-10-25 00:05:57,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:05:57,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:05:57,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:05:57,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:05:59,383.383 INFO    ] ================================================
[2026-10-25 00:05:59,399.399 INFO    ] Launching Daemon at Sun Oct 25 00:05:59 IST 2026
[2026-10-25 00:05:59,411.411 INFO    ] ================================================
[2026-10-25 00:06:00,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:06:00
[2026-10-25 00:06:00,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:06:00,863.863 INFO    ] Initializing speech engine...
[2026-10-25 00:06:00,882.882 INFO    ] 2026-10-25 00:06:00
[2026-10-25 00:06:01,128.128 INFO    ] 2026-10-25 00:06:01
[2026-10-25 00:06:01,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:06:01,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:06:01,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:06:01,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:06:01,590.590 INFO    ] time= 25/10/2026 00:06:01
[2026-10-25 00:06:01,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:06:01,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:06:01,746.746 INFO    ] No existing commands found in stream
[2026-10-25 00:06:06,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:06:06,769.769 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 00:06:11,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:06:11,179.179 INFO    ] Checking for system updates...
[2026-10-25 00:06:11,216.216 INFO    ] 200
[2026-10-25 00:06:11,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:11,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:06:11,277.277 INFO    ] No update needed
[2026-10-25 00:06:11,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 00:06:11,315.315 INFO    ] 200
[2026-10-25 00:06:11,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:11,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:06:11,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:06:11,410.410 INFO    ] No camera update needed
[2026-10-25 00:06:11,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:06:11,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:06:11,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:06:11,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:06:13,470.470 INFO    ] ================================================
[2026-10-25 00:06:13,487.487 INFO    ] Launching Daemon at Sun Oct 25 00:06:13 IST 2026
[2026-10-25 00:06:13,498.498 INFO    ] ================================================
[2026-10-25 00:06:14,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:06:14
[2026-10-25 00:06:14,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:06:15,168.168 INFO    ] Initializing speech engine...
[2026-10-25 00:06:15,182.182 INFO    ] 2026-10-25 00:06:15
[2026-10-25 00:06:15,464.464 INFO    ] 2026-10-25 00:06:15
[2026-10-25 00:06:15,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:06:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:06:15,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:06:15,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:06:16,012.012 INFO    ] time= 25/10/2026 00:06:15
[2026-10-25 00:06:16,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:06:16,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:06:16,166.166 INFO    ] No existing commands found in stream
[2026-10-25 00:06:21,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:06:21,205.205 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 00:06:22,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:06:22,589.589 INFO    ] Checking for system updates...
[2026-10-25 00:06:22,626.626 INFO    ] 200
[2026-10-25 00:06:22,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:22,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:22,690.690 INFO    ] No update needed
[2026-10-25 00:06:22,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 00:06:22,728.728 INFO    ] 200
[2026-10-25 00:06:22,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:22,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:06:22,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:22,837.837 INFO    ] No camera update needed
[2026-10-25 00:06:22,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:06:22,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:06:22,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:06:22,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:06:24,894.894 INFO    ] ================================================
[2026-10-25 00:06:24,912.912 INFO    ] Launching Daemon at Sun Oct 25 00:06:24 IST 2026
[2026-10-25 00:06:24,923.923 INFO    ] ================================================
[2026-10-25 00:06:25,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:06:25
[2026-10-25 00:06:26,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:06:26,344.344 INFO    ] Initializing speech engine...
[2026-10-25 00:06:26,352.352 INFO    ] 2026-10-25 00:06:26
[2026-10-25 00:06:26,600.600 INFO    ] 2026-10-25 00:06:26
[2026-10-25 00:06:26,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:06:26,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:06:26,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:06:27,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:06:27,044.044 INFO    ] time= 25/10/2026 00:06:27
[2026-10-25 00:06:27,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:06:27,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:06:27,225.225 INFO    ] No existing commands found in stream
[2026-10-25 00:06:32,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:06:32,236.236 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 00:06:34,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:06:34,807.807 INFO    ] Checking for system updates...
[2026-10-25 00:06:34,843.843 INFO    ] 200
[2026-10-25 00:06:34,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:34,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:06:34,901.901 INFO    ] No update needed
[2026-10-25 00:06:34,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 00:06:34,942.942 INFO    ] 200
[2026-10-25 00:06:34,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:34,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:06:35,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:06:35,043.043 INFO    ] No camera update needed
[2026-10-25 00:06:35,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:06:35,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:06:35,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:06:35,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:06:37,098.098 INFO    ] ================================================
[2026-10-25 00:06:37,113.113 INFO    ] Launching Daemon at Sun Oct 25 00:06:37 IST 2026
[2026-10-25 00:06:37,124.124 INFO    ] ================================================
[2026-10-25 00:06:37,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:06:37
[2026-10-25 00:06:38,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:06:38,516.516 INFO    ] Initializing speech engine...
[2026-10-25 00:06:38,524.524 INFO    ] 2026-10-25 00:06:38
[2026-10-25 00:06:38,796.796 INFO    ] 2026-10-25 00:06:38
[2026-10-25 00:06:38,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:06:39,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:06:39,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:06:39,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:06:39,333.333 INFO    ] time= 25/10/2026 00:06:39
[2026-10-25 00:06:39,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:06:39,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:06:39,502.502 INFO    ] No existing commands found in stream
[2026-10-25 00:06:44,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:06:44,533.533 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 00:06:45,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:06:45,781.781 INFO    ] Checking for system updates...
[2026-10-25 00:06:45,817.817 INFO    ] 200
[2026-10-25 00:06:45,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:45,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:45,876.876 INFO    ] No update needed
[2026-10-25 00:06:45,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 00:06:45,912.912 INFO    ] 200
[2026-10-25 00:06:45,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:45,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:06:46,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:46,004.004 INFO    ] No camera update needed
[2026-10-25 00:06:46,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:06:46,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:06:46,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:06:46,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:06:48,060.060 INFO    ] ================================================
[2026-10-25 00:06:48,075.075 INFO    ] Launching Daemon at Sun Oct 25 00:06:48 IST 2026
[2026-10-25 00:06:48,087.087 INFO    ] ================================================
[2026-10-25 00:06:48,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:06:48
[2026-10-25 00:06:49,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:06:49,508.508 INFO    ] Initializing speech engine...
[2026-10-25 00:06:49,517.517 INFO    ] 2026-10-25 00:06:49
[2026-10-25 00:06:49,767.767 INFO    ] 2026-10-25 00:06:49
[2026-10-25 00:06:49,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:06:50,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:06:50,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:06:50,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:06:50,242.242 INFO    ] time= 25/10/2026 00:06:50
[2026-10-25 00:06:50,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:06:50,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:06:50,398.398 INFO    ] No existing commands found in stream
[2026-10-25 00:06:55,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:06:55,413.413 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 00:06:58,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:06:58,617.617 INFO    ] Checking for system updates...
[2026-10-25 00:06:58,659.659 INFO    ] 200
[2026-10-25 00:06:58,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:58,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:58,716.716 INFO    ] No update needed
[2026-10-25 00:06:58,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 00:06:58,753.753 INFO    ] 200
[2026-10-25 00:06:58,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:06:58,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:06:58,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:06:58,958.958 INFO    ] No camera update needed
[2026-10-25 00:06:58,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:06:58,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:06:58,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:06:58,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:07:01,014.014 INFO    ] ================================================
[2026-10-25 00:07:01,030.030 INFO    ] Launching Daemon at Sun Oct 25 00:07:01 IST 2026
[2026-10-25 00:07:01,042.042 INFO    ] ================================================
[2026-10-25 00:07:01,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:07:01
[2026-10-25 00:07:02,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:07:02,758.758 INFO    ] Initializing speech engine...
[2026-10-25 00:07:02,766.766 INFO    ] 2026-10-25 00:07:02
[2026-10-25 00:07:03,072.072 INFO    ] 2026-10-25 00:07:03
[2026-10-25 00:07:03,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:07:03,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:07:03,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:07:03,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:07:03,471.471 INFO    ] time= 25/10/2026 00:07:03
[2026-10-25 00:07:03,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:07:03,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:07:03,663.663 INFO    ] No existing commands found in stream
[2026-10-25 00:07:08,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:07:08,683.683 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 00:07:12,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:07:12,881.881 INFO    ] Checking for system updates...
[2026-10-25 00:07:12,917.917 INFO    ] 200
[2026-10-25 00:07:12,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:12,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:12,977.977 INFO    ] No update needed
[2026-10-25 00:07:12,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 00:07:13,014.014 INFO    ] 200
[2026-10-25 00:07:13,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:13,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:07:13,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:13,113.113 INFO    ] No camera update needed
[2026-10-25 00:07:13,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:07:13,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:07:13,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:07:13,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:07:15,169.169 INFO    ] ================================================
[2026-10-25 00:07:15,183.183 INFO    ] Launching Daemon at Sun Oct 25 00:07:15 IST 2026
[2026-10-25 00:07:15,194.194 INFO    ] ================================================
[2026-10-25 00:07:15,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:07:15
[2026-10-25 00:07:16,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:07:16,616.616 INFO    ] Initializing speech engine...
[2026-10-25 00:07:16,625.625 INFO    ] 2026-10-25 00:07:16
[2026-10-25 00:07:16,885.885 INFO    ] 2026-10-25 00:07:16
[2026-10-25 00:07:16,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:07:17,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:07:17,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:07:17,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:07:17,428.428 INFO    ] time= 25/10/2026 00:07:17
[2026-10-25 00:07:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:07:17,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:07:17,568.568 INFO    ] No existing commands found in stream
[2026-10-25 00:07:22,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:07:22,595.595 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 00:07:26,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:07:26,087.087 INFO    ] Checking for system updates...
[2026-10-25 00:07:26,124.124 INFO    ] 200
[2026-10-25 00:07:26,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:26,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:07:26,183.183 INFO    ] No update needed
[2026-10-25 00:07:26,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 00:07:26,220.220 INFO    ] 200
[2026-10-25 00:07:26,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:26,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:07:26,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:07:26,315.315 INFO    ] No camera update needed
[2026-10-25 00:07:26,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:07:26,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:07:26,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:07:26,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:07:28,370.370 INFO    ] ================================================
[2026-10-25 00:07:28,386.386 INFO    ] Launching Daemon at Sun Oct 25 00:07:28 IST 2026
[2026-10-25 00:07:28,396.396 INFO    ] ================================================
[2026-10-25 00:07:28,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:07:28
[2026-10-25 00:07:29,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:07:29,816.816 INFO    ] Initializing speech engine...
[2026-10-25 00:07:29,821.821 INFO    ] 2026-10-25 00:07:29
[2026-10-25 00:07:30,137.137 INFO    ] 2026-10-25 00:07:30
[2026-10-25 00:07:30,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:07:30,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:07:30,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:07:30,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:07:30,588.588 INFO    ] time= 25/10/2026 00:07:30
[2026-10-25 00:07:30,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:07:30,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:07:30,727.727 INFO    ] No existing commands found in stream
[2026-10-25 00:07:35,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:07:35,751.751 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:07:39,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:07:39,764.764 INFO    ] Checking for system updates...
[2026-10-25 00:07:39,805.805 INFO    ] 200
[2026-10-25 00:07:39,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:39,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:39,872.872 INFO    ] No update needed
[2026-10-25 00:07:39,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 00:07:39,910.910 INFO    ] 200
[2026-10-25 00:07:39,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:39,961.961 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:07:40,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:40,017.017 INFO    ] No camera update needed
[2026-10-25 00:07:40,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:07:40,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:07:40,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:07:40,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:07:42,076.076 INFO    ] ================================================
[2026-10-25 00:07:42,091.091 INFO    ] Launching Daemon at Sun Oct 25 00:07:42 IST 2026
[2026-10-25 00:07:42,103.103 INFO    ] ================================================
[2026-10-25 00:07:42,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:07:42
[2026-10-25 00:07:43,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:07:43,507.507 INFO    ] Initializing speech engine...
[2026-10-25 00:07:43,531.531 INFO    ] 2026-10-25 00:07:43
[2026-10-25 00:07:43,785.785 INFO    ] 2026-10-25 00:07:43
[2026-10-25 00:07:43,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:07:44,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:07:44,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:07:44,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:07:44,281.281 INFO    ] time= 25/10/2026 00:07:44
[2026-10-25 00:07:44,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:07:44,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:07:44,466.466 INFO    ] No existing commands found in stream
[2026-10-25 00:07:49,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:07:49,494.494 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 00:07:52,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:07:52,641.641 INFO    ] Checking for system updates...
[2026-10-25 00:07:52,681.681 INFO    ] 200
[2026-10-25 00:07:52,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:52,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:52,740.740 INFO    ] No update needed
[2026-10-25 00:07:52,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 00:07:52,776.776 INFO    ] 200
[2026-10-25 00:07:52,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:07:52,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:07:52,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:07:52,886.886 INFO    ] No camera update needed
[2026-10-25 00:07:52,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:07:52,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:07:52,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:07:52,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:07:54,947.947 INFO    ] ================================================
[2026-10-25 00:07:54,964.964 INFO    ] Launching Daemon at Sun Oct 25 00:07:54 IST 2026
[2026-10-25 00:07:54,974.974 INFO    ] ================================================
[2026-10-25 00:07:55,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:07:55
[2026-10-25 00:07:56,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:07:56,444.444 INFO    ] Initializing speech engine...
[2026-10-25 00:07:56,454.454 INFO    ] 2026-10-25 00:07:56
[2026-10-25 00:07:56,699.699 INFO    ] 2026-10-25 00:07:56
[2026-10-25 00:07:56,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:07:56,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:07:56,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:07:57,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:07:57,179.179 INFO    ] time= 25/10/2026 00:07:57
[2026-10-25 00:07:57,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:07:57,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:07:57,384.384 INFO    ] No existing commands found in stream
[2026-10-25 00:08:02,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:08:02,412.412 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 00:08:05,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:08:05,119.119 INFO    ] Checking for system updates...
[2026-10-25 00:08:05,157.157 INFO    ] 200
[2026-10-25 00:08:05,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:05,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:05,224.224 INFO    ] No update needed
[2026-10-25 00:08:05,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 00:08:05,261.261 INFO    ] 200
[2026-10-25 00:08:05,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:05,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:08:05,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:05,362.362 INFO    ] No camera update needed
[2026-10-25 00:08:05,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:08:05,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:08:05,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:08:05,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:08:07,420.420 INFO    ] ================================================
[2026-10-25 00:08:07,435.435 INFO    ] Launching Daemon at Sun Oct 25 00:08:07 IST 2026
[2026-10-25 00:08:07,446.446 INFO    ] ================================================
[2026-10-25 00:08:08,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:08:08
[2026-10-25 00:08:08,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:08:08,846.846 INFO    ] Initializing speech engine...
[2026-10-25 00:08:08,855.855 INFO    ] 2026-10-25 00:08:08
[2026-10-25 00:08:09,148.148 INFO    ] 2026-10-25 00:08:09
[2026-10-25 00:08:09,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:08:09,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:08:09,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:08:09,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:08:09,569.569 INFO    ] time= 25/10/2026 00:08:09
[2026-10-25 00:08:09,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:08:09,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:08:09,733.733 INFO    ] No existing commands found in stream
[2026-10-25 00:08:14,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:08:14,761.761 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 00:08:15,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:08:15,297.297 INFO    ] Checking for system updates...
[2026-10-25 00:08:15,333.333 INFO    ] 200
[2026-10-25 00:08:15,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:15,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:15,392.392 INFO    ] No update needed
[2026-10-25 00:08:15,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 00:08:15,441.441 INFO    ] 200
[2026-10-25 00:08:15,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:15,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:08:15,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:15,530.530 INFO    ] No camera update needed
[2026-10-25 00:08:15,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:08:15,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:08:15,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:08:15,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:08:17,590.590 INFO    ] ================================================
[2026-10-25 00:08:17,606.606 INFO    ] Launching Daemon at Sun Oct 25 00:08:17 IST 2026
[2026-10-25 00:08:17,617.617 INFO    ] ================================================
[2026-10-25 00:08:18,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:08:18
[2026-10-25 00:08:18,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:08:19,015.015 INFO    ] Initializing speech engine...
[2026-10-25 00:08:19,021.021 INFO    ] 2026-10-25 00:08:19
[2026-10-25 00:08:19,292.292 INFO    ] 2026-10-25 00:08:19
[2026-10-25 00:08:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:08:19,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:08:19,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:08:19,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:08:19,793.793 INFO    ] time= 25/10/2026 00:08:19
[2026-10-25 00:08:19,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:08:19,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:08:19,982.982 INFO    ] No existing commands found in stream
[2026-10-25 00:08:25,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:08:25,010.010 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 00:08:29,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:08:29,284.284 INFO    ] Checking for system updates...
[2026-10-25 00:08:29,320.320 INFO    ] 200
[2026-10-25 00:08:29,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:29,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:29,377.377 INFO    ] No update needed
[2026-10-25 00:08:29,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 00:08:29,414.414 INFO    ] 200
[2026-10-25 00:08:29,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:29,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:08:29,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:29,506.506 INFO    ] No camera update needed
[2026-10-25 00:08:29,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:08:29,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:08:29,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:08:29,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:08:31,566.566 INFO    ] ================================================
[2026-10-25 00:08:31,583.583 INFO    ] Launching Daemon at Sun Oct 25 00:08:31 IST 2026
[2026-10-25 00:08:31,595.595 INFO    ] ================================================
[2026-10-25 00:08:32,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:08:32
[2026-10-25 00:08:32,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:08:33,071.071 INFO    ] Initializing speech engine...
[2026-10-25 00:08:33,079.079 INFO    ] 2026-10-25 00:08:33
[2026-10-25 00:08:33,378.378 INFO    ] 2026-10-25 00:08:33
[2026-10-25 00:08:33,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:08:33,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:08:33,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:08:33,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:08:33,764.764 INFO    ] time= 25/10/2026 00:08:33
[2026-10-25 00:08:33,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:08:33,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:08:33,894.894 INFO    ] No existing commands found in stream
[2026-10-25 00:08:38,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:08:38,909.909 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 00:08:42,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:08:42,635.635 INFO    ] Checking for system updates...
[2026-10-25 00:08:42,673.673 INFO    ] 200
[2026-10-25 00:08:42,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:42,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:42,735.735 INFO    ] No update needed
[2026-10-25 00:08:42,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 00:08:42,776.776 INFO    ] 200
[2026-10-25 00:08:42,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:42,820.820 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:08:42,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:08:42,871.871 INFO    ] No camera update needed
[2026-10-25 00:08:42,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:08:42,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:08:42,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:08:42,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:08:44,928.928 INFO    ] ================================================
[2026-10-25 00:08:44,943.943 INFO    ] Launching Daemon at Sun Oct 25 00:08:44 IST 2026
[2026-10-25 00:08:44,955.955 INFO    ] ================================================
[2026-10-25 00:08:45,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:08:45
[2026-10-25 00:08:46,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:08:46,607.607 INFO    ] Initializing speech engine...
[2026-10-25 00:08:46,622.622 INFO    ] 2026-10-25 00:08:46
[2026-10-25 00:08:46,909.909 INFO    ] 2026-10-25 00:08:46
[2026-10-25 00:08:47,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:08:47,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:08:47,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:08:47,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:08:47,440.440 INFO    ] time= 25/10/2026 00:08:47
[2026-10-25 00:08:47,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:08:47,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:08:47,596.596 INFO    ] No existing commands found in stream
[2026-10-25 00:08:52,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:08:52,623.623 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 00:08:55,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:08:55,997.997 INFO    ] Checking for system updates...
[2026-10-25 00:08:56,038.038 INFO    ] 200
[2026-10-25 00:08:56,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:56,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:08:56,099.099 INFO    ] No update needed
[2026-10-25 00:08:56,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 00:08:56,137.137 INFO    ] 200
[2026-10-25 00:08:56,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:08:56,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:08:56,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:08:56,214.214 INFO    ] No camera update needed
[2026-10-25 00:08:56,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:08:56,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:08:56,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:08:56,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:08:58,273.273 INFO    ] ================================================
[2026-10-25 00:08:58,289.289 INFO    ] Launching Daemon at Sun Oct 25 00:08:58 IST 2026
[2026-10-25 00:08:58,301.301 INFO    ] ================================================
[2026-10-25 00:08:58,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:08:58
[2026-10-25 00:08:59,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:08:59,707.707 INFO    ] Initializing speech engine...
[2026-10-25 00:08:59,722.722 INFO    ] 2026-10-25 00:08:59
[2026-10-25 00:08:59,975.975 INFO    ] 2026-10-25 00:08:59
[2026-10-25 00:09:00,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:00,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:00,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:00,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:00,350.350 INFO    ] time= 25/10/2026 00:09:00
[2026-10-25 00:09:00,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:00,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:00,539.539 INFO    ] No existing commands found in stream
[2026-10-25 00:09:05,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:09:05,562.562 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 00:09:06,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:09:06,329.329 INFO    ] Checking for system updates...
[2026-10-25 00:09:06,365.365 INFO    ] 200
[2026-10-25 00:09:06,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:06,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:09:06,434.434 INFO    ] No update needed
[2026-10-25 00:09:06,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 00:09:06,483.483 INFO    ] 200
[2026-10-25 00:09:06,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:06,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:09:06,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:09:06,596.596 INFO    ] No camera update needed
[2026-10-25 00:09:06,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:09:06,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:09:06,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:09:06,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:09:08,664.664 INFO    ] ================================================
[2026-10-25 00:09:08,682.682 INFO    ] Launching Daemon at Sun Oct 25 00:09:08 IST 2026
[2026-10-25 00:09:08,695.695 INFO    ] ================================================
[2026-10-25 00:09:09,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:09:09
[2026-10-25 00:09:10,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:09:10,279.279 INFO    ] Initializing speech engine...
[2026-10-25 00:09:10,302.302 INFO    ] 2026-10-25 00:09:10
[2026-10-25 00:09:10,564.564 INFO    ] 2026-10-25 00:09:10
[2026-10-25 00:09:10,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:10,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:10,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:10,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:10,943.943 INFO    ] time= 25/10/2026 00:09:10
[2026-10-25 00:09:10,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:10,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:11,119.119 INFO    ] No existing commands found in stream
[2026-10-25 00:09:16,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:09:16,153.153 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 00:09:20,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:09:20,119.119 INFO    ] Checking for system updates...
[2026-10-25 00:09:20,156.156 INFO    ] 200
[2026-10-25 00:09:20,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:20,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:09:20,214.214 INFO    ] No update needed
[2026-10-25 00:09:20,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 00:09:20,251.251 INFO    ] 200
[2026-10-25 00:09:20,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:20,295.295 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:09:20,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:09:20,345.345 INFO    ] No camera update needed
[2026-10-25 00:09:20,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:09:20,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:09:20,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:09:20,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:09:22,407.407 INFO    ] ================================================
[2026-10-25 00:09:22,423.423 INFO    ] Launching Daemon at Sun Oct 25 00:09:22 IST 2026
[2026-10-25 00:09:22,434.434 INFO    ] ================================================
[2026-10-25 00:09:23,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:09:22
[2026-10-25 00:09:23,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:09:23,959.959 INFO    ] Initializing speech engine...
[2026-10-25 00:09:23,969.969 INFO    ] 2026-10-25 00:09:23
[2026-10-25 00:09:24,267.267 INFO    ] 2026-10-25 00:09:24
[2026-10-25 00:09:24,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:24,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:24,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:24,665.665 INFO    ] time= 25/10/2026 00:09:24
[2026-10-25 00:09:24,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:24,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:24,774.774 INFO    ] No existing commands found in stream
[2026-10-25 00:09:29,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:09:29,789.789 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 00:09:30,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:09:30,799.799 INFO    ] Checking for system updates...
[2026-10-25 00:09:30,835.835 INFO    ] 200
[2026-10-25 00:09:30,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:30,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:30,893.893 INFO    ] No update needed
[2026-10-25 00:09:30,895.895 INFO    ] Checking for camera pi updates...
[2026-10-25 00:09:30,933.933 INFO    ] 200
[2026-10-25 00:09:30,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:30,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:09:31,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:31,033.033 INFO    ] No camera update needed
[2026-10-25 00:09:31,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:09:31,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:09:31,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:09:31,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:09:33,090.090 INFO    ] ================================================
[2026-10-25 00:09:33,106.106 INFO    ] Launching Daemon at Sun Oct 25 00:09:33 IST 2026
[2026-10-25 00:09:33,117.117 INFO    ] ================================================
[2026-10-25 00:09:33,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:09:33
[2026-10-25 00:09:34,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:09:34,525.525 INFO    ] Initializing speech engine...
[2026-10-25 00:09:34,548.548 INFO    ] 2026-10-25 00:09:34
[2026-10-25 00:09:34,798.798 INFO    ] 2026-10-25 00:09:34
[2026-10-25 00:09:34,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:35,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:35,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:35,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:35,291.291 INFO    ] time= 25/10/2026 00:09:35
[2026-10-25 00:09:35,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:35,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:35,430.430 INFO    ] No existing commands found in stream
[2026-10-25 00:09:40,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:09:40,445.445 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 00:09:42,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:09:42,249.249 INFO    ] Checking for system updates...
[2026-10-25 00:09:42,286.286 INFO    ] 200
[2026-10-25 00:09:42,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:42,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:42,344.344 INFO    ] No update needed
[2026-10-25 00:09:42,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 00:09:42,381.381 INFO    ] 200
[2026-10-25 00:09:42,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:42,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:09:42,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:42,473.473 INFO    ] No camera update needed
[2026-10-25 00:09:42,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:09:42,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:09:42,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:09:42,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:09:44,530.530 INFO    ] ================================================
[2026-10-25 00:09:44,546.546 INFO    ] Launching Daemon at Sun Oct 25 00:09:44 IST 2026
[2026-10-25 00:09:44,558.558 INFO    ] ================================================
[2026-10-25 00:09:45,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:09:45
[2026-10-25 00:09:45,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:09:46,055.055 INFO    ] Initializing speech engine...
[2026-10-25 00:09:46,061.061 INFO    ] 2026-10-25 00:09:46
[2026-10-25 00:09:46,356.356 INFO    ] 2026-10-25 00:09:46
[2026-10-25 00:09:46,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:46,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:46,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:46,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:46,775.775 INFO    ] time= 25/10/2026 00:09:46
[2026-10-25 00:09:46,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:46,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:46,859.859 INFO    ] No existing commands found in stream
[2026-10-25 00:09:51,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:09:51,874.874 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 00:09:52,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:09:52,342.342 INFO    ] Checking for system updates...
[2026-10-25 00:09:52,384.384 INFO    ] 200
[2026-10-25 00:09:52,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:52,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:52,443.443 INFO    ] No update needed
[2026-10-25 00:09:52,446.446 INFO    ] Checking for camera pi updates...
[2026-10-25 00:09:52,481.481 INFO    ] 200
[2026-10-25 00:09:52,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:09:52,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:09:52,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:09:52,576.576 INFO    ] No camera update needed
[2026-10-25 00:09:52,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:09:52,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:09:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:09:52,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:09:54,634.634 INFO    ] ================================================
[2026-10-25 00:09:54,650.650 INFO    ] Launching Daemon at Sun Oct 25 00:09:54 IST 2026
[2026-10-25 00:09:54,662.662 INFO    ] ================================================
[2026-10-25 00:09:55,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:09:55
[2026-10-25 00:09:55,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:09:56,122.122 INFO    ] Initializing speech engine...
[2026-10-25 00:09:56,128.128 INFO    ] 2026-10-25 00:09:56
[2026-10-25 00:09:56,388.388 INFO    ] 2026-10-25 00:09:56
[2026-10-25 00:09:56,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:09:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:09:56,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:09:56,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:09:56,870.870 INFO    ] time= 25/10/2026 00:09:56
[2026-10-25 00:09:56,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:09:56,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:09:57,003.003 INFO    ] No existing commands found in stream
[2026-10-25 00:10:02,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:10:02,037.037 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 00:10:08,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:10:08,045.045 INFO    ] Checking for system updates...
[2026-10-25 00:10:08,081.081 INFO    ] 200
[2026-10-25 00:10:08,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:08,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:08,139.139 INFO    ] No update needed
[2026-10-25 00:10:08,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 00:10:08,176.176 INFO    ] 200
[2026-10-25 00:10:08,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:08,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:10:08,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:08,270.270 INFO    ] No camera update needed
[2026-10-25 00:10:08,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:10:08,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:10:08,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:10:08,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:10:10,327.327 INFO    ] ================================================
[2026-10-25 00:10:10,343.343 INFO    ] Launching Daemon at Sun Oct 25 00:10:10 IST 2026
[2026-10-25 00:10:10,354.354 INFO    ] ================================================
[2026-10-25 00:10:10,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:10:10
[2026-10-25 00:10:11,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:10:11,850.850 INFO    ] Initializing speech engine...
[2026-10-25 00:10:11,853.853 INFO    ] 2026-10-25 00:10:11
[2026-10-25 00:10:12,108.108 INFO    ] 2026-10-25 00:10:12
[2026-10-25 00:10:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:10:12,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:10:12,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:10:12,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:10:12,616.616 INFO    ] time= 25/10/2026 00:10:12
[2026-10-25 00:10:12,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:10:12,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:10:12,809.809 INFO    ] No existing commands found in stream
[2026-10-25 00:10:17,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:10:17,836.836 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 00:10:20,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:10:20,131.131 INFO    ] Checking for system updates...
[2026-10-25 00:10:20,167.167 INFO    ] 200
[2026-10-25 00:10:20,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:20,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:10:20,225.225 INFO    ] No update needed
[2026-10-25 00:10:20,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 00:10:20,262.262 INFO    ] 200
[2026-10-25 00:10:20,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:20,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:10:20,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:10:20,364.364 INFO    ] No camera update needed
[2026-10-25 00:10:20,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:10:20,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:10:20,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:10:20,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:10:22,418.418 INFO    ] ================================================
[2026-10-25 00:10:22,434.434 INFO    ] Launching Daemon at Sun Oct 25 00:10:22 IST 2026
[2026-10-25 00:10:22,446.446 INFO    ] ================================================
[2026-10-25 00:10:23,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:10:23
[2026-10-25 00:10:23,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:10:23,902.902 INFO    ] Initializing speech engine...
[2026-10-25 00:10:23,911.911 INFO    ] 2026-10-25 00:10:23
[2026-10-25 00:10:24,169.169 INFO    ] 2026-10-25 00:10:24
[2026-10-25 00:10:24,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:10:24,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:10:24,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:10:24,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:10:24,625.625 INFO    ] time= 25/10/2026 00:10:24
[2026-10-25 00:10:24,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:10:24,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:10:24,827.827 INFO    ] No existing commands found in stream
[2026-10-25 00:10:29,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:10:29,862.862 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 00:10:30,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:10:30,340.340 INFO    ] Checking for system updates...
[2026-10-25 00:10:30,376.376 INFO    ] 200
[2026-10-25 00:10:30,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:30,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:30,434.434 INFO    ] No update needed
[2026-10-25 00:10:30,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 00:10:30,470.470 INFO    ] 200
[2026-10-25 00:10:30,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:30,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:10:30,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:30,561.561 INFO    ] No camera update needed
[2026-10-25 00:10:30,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:10:30,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:10:30,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:10:30,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:10:32,619.619 INFO    ] ================================================
[2026-10-25 00:10:32,636.636 INFO    ] Launching Daemon at Sun Oct 25 00:10:32 IST 2026
[2026-10-25 00:10:32,649.649 INFO    ] ================================================
[2026-10-25 00:10:33,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:10:33
[2026-10-25 00:10:33,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:10:34,065.065 INFO    ] Initializing speech engine...
[2026-10-25 00:10:34,073.073 INFO    ] 2026-10-25 00:10:34
[2026-10-25 00:10:34,343.343 INFO    ] 2026-10-25 00:10:34
[2026-10-25 00:10:34,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:10:34,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:10:34,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:10:34,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:10:34,812.812 INFO    ] time= 25/10/2026 00:10:34
[2026-10-25 00:10:34,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:10:34,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:10:35,005.005 INFO    ] No existing commands found in stream
[2026-10-25 00:10:40,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:10:40,033.033 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 00:10:42,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:10:42,816.816 INFO    ] Checking for system updates...
[2026-10-25 00:10:42,855.855 INFO    ] 200
[2026-10-25 00:10:42,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:42,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:42,913.913 INFO    ] No update needed
[2026-10-25 00:10:42,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 00:10:42,949.949 INFO    ] 200
[2026-10-25 00:10:42,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:42,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:10:43,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:43,045.045 INFO    ] No camera update needed
[2026-10-25 00:10:43,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:10:43,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:10:43,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:10:43,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:10:45,101.101 INFO    ] ================================================
[2026-10-25 00:10:45,116.116 INFO    ] Launching Daemon at Sun Oct 25 00:10:45 IST 2026
[2026-10-25 00:10:45,126.126 INFO    ] ================================================
[2026-10-25 00:10:45,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:10:45
[2026-10-25 00:10:46,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:10:46,638.638 INFO    ] Initializing speech engine...
[2026-10-25 00:10:46,646.646 INFO    ] 2026-10-25 00:10:46
[2026-10-25 00:10:46,922.922 INFO    ] 2026-10-25 00:10:46
[2026-10-25 00:10:46,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:10:47,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:10:47,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:10:47,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:10:47,379.379 INFO    ] time= 25/10/2026 00:10:47
[2026-10-25 00:10:47,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:10:47,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:10:47,612.612 INFO    ] No existing commands found in stream
[2026-10-25 00:10:52,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:10:52,637.637 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 00:10:54,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:10:54,646.646 INFO    ] Checking for system updates...
[2026-10-25 00:10:54,683.683 INFO    ] 200
[2026-10-25 00:10:54,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:54,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:54,740.740 INFO    ] No update needed
[2026-10-25 00:10:54,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 00:10:54,777.777 INFO    ] 200
[2026-10-25 00:10:54,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:10:54,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:10:54,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:10:54,867.867 INFO    ] No camera update needed
[2026-10-25 00:10:54,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:10:54,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:10:54,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:10:54,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:10:56,922.922 INFO    ] ================================================
[2026-10-25 00:10:56,937.937 INFO    ] Launching Daemon at Sun Oct 25 00:10:56 IST 2026
[2026-10-25 00:10:56,948.948 INFO    ] ================================================
[2026-10-25 00:10:57,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:10:57
[2026-10-25 00:10:58,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:10:58,404.404 INFO    ] Initializing speech engine...
[2026-10-25 00:10:58,410.410 INFO    ] 2026-10-25 00:10:58
[2026-10-25 00:10:58,656.656 INFO    ] 2026-10-25 00:10:58
[2026-10-25 00:10:58,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:10:58,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:10:58,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:10:59,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:10:59,130.130 INFO    ] time= 25/10/2026 00:10:59
[2026-10-25 00:10:59,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:10:59,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:10:59,333.333 INFO    ] No existing commands found in stream
[2026-10-25 00:11:04,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:11:04,358.358 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 00:11:06,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:11:06,785.785 INFO    ] Checking for system updates...
[2026-10-25 00:11:06,821.821 INFO    ] 200
[2026-10-25 00:11:06,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:06,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:11:06,879.879 INFO    ] No update needed
[2026-10-25 00:11:06,881.881 INFO    ] Checking for camera pi updates...
[2026-10-25 00:11:06,915.915 INFO    ] 200
[2026-10-25 00:11:06,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:06,959.959 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:11:07,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:11:07,117.117 INFO    ] No camera update needed
[2026-10-25 00:11:07,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:11:07,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:11:07,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:11:07,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:11:09,174.174 INFO    ] ================================================
[2026-10-25 00:11:09,189.189 INFO    ] Launching Daemon at Sun Oct 25 00:11:09 IST 2026
[2026-10-25 00:11:09,200.200 INFO    ] ================================================
[2026-10-25 00:11:09,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:11:09
[2026-10-25 00:11:10,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:11:10,615.615 INFO    ] Initializing speech engine...
[2026-10-25 00:11:10,624.624 INFO    ] 2026-10-25 00:11:10
[2026-10-25 00:11:10,870.870 INFO    ] 2026-10-25 00:11:10
[2026-10-25 00:11:10,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:11:11,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:11:11,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:11:11,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:11:11,339.339 INFO    ] time= 25/10/2026 00:11:11
[2026-10-25 00:11:11,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:11:11,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:11:11,551.551 INFO    ] No existing commands found in stream
[2026-10-25 00:11:16,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:11:16,584.584 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 00:11:17,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:11:17,428.428 INFO    ] Checking for system updates...
[2026-10-25 00:11:17,466.466 INFO    ] 200
[2026-10-25 00:11:17,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:17,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:17,525.525 INFO    ] No update needed
[2026-10-25 00:11:17,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 00:11:17,563.563 INFO    ] 200
[2026-10-25 00:11:17,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:17,608.608 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:11:17,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:17,658.658 INFO    ] No camera update needed
[2026-10-25 00:11:17,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:11:17,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:11:17,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:11:17,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:11:19,717.717 INFO    ] ================================================
[2026-10-25 00:11:19,732.732 INFO    ] Launching Daemon at Sun Oct 25 00:11:19 IST 2026
[2026-10-25 00:11:19,743.743 INFO    ] ================================================
[2026-10-25 00:11:20,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:11:20
[2026-10-25 00:11:20,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:11:21,193.193 INFO    ] Initializing speech engine...
[2026-10-25 00:11:21,203.203 INFO    ] 2026-10-25 00:11:21
[2026-10-25 00:11:21,466.466 INFO    ] 2026-10-25 00:11:21
[2026-10-25 00:11:21,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:11:21,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:11:21,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:11:21,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:11:22,011.011 INFO    ] time= 25/10/2026 00:11:21
[2026-10-25 00:11:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:11:22,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:11:22,161.161 INFO    ] No existing commands found in stream
[2026-10-25 00:11:27,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:11:27,180.180 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 00:11:30,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:11:30,591.591 INFO    ] Checking for system updates...
[2026-10-25 00:11:30,628.628 INFO    ] 200
[2026-10-25 00:11:30,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:30,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:30,689.689 INFO    ] No update needed
[2026-10-25 00:11:30,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 00:11:30,727.727 INFO    ] 200
[2026-10-25 00:11:30,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:30,771.771 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:11:30,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:30,822.822 INFO    ] No camera update needed
[2026-10-25 00:11:30,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:11:30,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:11:30,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:11:30,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:11:32,880.880 INFO    ] ================================================
[2026-10-25 00:11:32,896.896 INFO    ] Launching Daemon at Sun Oct 25 00:11:32 IST 2026
[2026-10-25 00:11:32,908.908 INFO    ] ================================================
[2026-10-25 00:11:33,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:11:33
[2026-10-25 00:11:34,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:11:34,375.375 INFO    ] Initializing speech engine...
[2026-10-25 00:11:34,398.398 INFO    ] 2026-10-25 00:11:34
[2026-10-25 00:11:34,653.653 INFO    ] 2026-10-25 00:11:34
[2026-10-25 00:11:34,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:11:34,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:11:34,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:11:35,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:11:35,131.131 INFO    ] time= 25/10/2026 00:11:35
[2026-10-25 00:11:35,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:11:35,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:11:35,351.351 INFO    ] No existing commands found in stream
[2026-10-25 00:11:40,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:11:40,379.379 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 00:11:41,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:11:41,234.234 INFO    ] Checking for system updates...
[2026-10-25 00:11:41,269.269 INFO    ] 200
[2026-10-25 00:11:41,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:41,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:41,327.327 INFO    ] No update needed
[2026-10-25 00:11:41,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 00:11:41,363.363 INFO    ] 200
[2026-10-25 00:11:41,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:41,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:11:41,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:11:41,456.456 INFO    ] No camera update needed
[2026-10-25 00:11:41,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:11:41,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:11:41,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:11:41,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:11:43,511.511 INFO    ] ================================================
[2026-10-25 00:11:43,526.526 INFO    ] Launching Daemon at Sun Oct 25 00:11:43 IST 2026
[2026-10-25 00:11:43,536.536 INFO    ] ================================================
[2026-10-25 00:11:44,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:11:44
[2026-10-25 00:11:44,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:11:44,929.929 INFO    ] Initializing speech engine...
[2026-10-25 00:11:44,937.937 INFO    ] 2026-10-25 00:11:44
[2026-10-25 00:11:45,209.209 INFO    ] 2026-10-25 00:11:45
[2026-10-25 00:11:45,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:11:45,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:11:45,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:11:45,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:11:45,715.715 INFO    ] time= 25/10/2026 00:11:45
[2026-10-25 00:11:45,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:11:45,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:11:45,908.908 INFO    ] No existing commands found in stream
[2026-10-25 00:11:50,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:11:50,941.941 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 00:11:53,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:11:53,150.150 INFO    ] Checking for system updates...
[2026-10-25 00:11:53,189.189 INFO    ] 200
[2026-10-25 00:11:53,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:53,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:11:53,247.247 INFO    ] No update needed
[2026-10-25 00:11:53,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 00:11:53,283.283 INFO    ] 200
[2026-10-25 00:11:53,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:11:53,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:11:53,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:11:53,376.376 INFO    ] No camera update needed
[2026-10-25 00:11:53,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:11:53,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:11:53,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:11:53,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:11:55,430.430 INFO    ] ================================================
[2026-10-25 00:11:55,444.444 INFO    ] Launching Daemon at Sun Oct 25 00:11:55 IST 2026
[2026-10-25 00:11:55,455.455 INFO    ] ================================================
[2026-10-25 00:11:56,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:11:56
[2026-10-25 00:11:56,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:11:56,856.856 INFO    ] Initializing speech engine...
[2026-10-25 00:11:56,879.879 INFO    ] 2026-10-25 00:11:56
[2026-10-25 00:11:57,136.136 INFO    ] 2026-10-25 00:11:57
[2026-10-25 00:11:57,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:11:57,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:11:57,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:11:57,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:11:57,589.589 INFO    ] time= 25/10/2026 00:11:57
[2026-10-25 00:11:57,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:11:57,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:11:57,769.769 INFO    ] No existing commands found in stream
[2026-10-25 00:12:02,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:12:02,786.786 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 00:12:07,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:12:07,015.015 INFO    ] Checking for system updates...
[2026-10-25 00:12:07,051.051 INFO    ] 200
[2026-10-25 00:12:07,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:07,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:07,111.111 INFO    ] No update needed
[2026-10-25 00:12:07,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 00:12:07,147.147 INFO    ] 200
[2026-10-25 00:12:07,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:07,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:12:07,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:07,227.227 INFO    ] No camera update needed
[2026-10-25 00:12:07,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:12:07,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:12:07,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:12:07,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:12:09,281.281 INFO    ] ================================================
[2026-10-25 00:12:09,296.296 INFO    ] Launching Daemon at Sun Oct 25 00:12:09 IST 2026
[2026-10-25 00:12:09,306.306 INFO    ] ================================================
[2026-10-25 00:12:09,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:12:09
[2026-10-25 00:12:10,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:12:10,795.795 INFO    ] Initializing speech engine...
[2026-10-25 00:12:10,802.802 INFO    ] 2026-10-25 00:12:10
[2026-10-25 00:12:11,080.080 INFO    ] 2026-10-25 00:12:11
[2026-10-25 00:12:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:12:11,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:12:11,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:12:11,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:12:11,563.563 INFO    ] time= 25/10/2026 00:12:11
[2026-10-25 00:12:11,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:12:11,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:12:11,745.745 INFO    ] No existing commands found in stream
[2026-10-25 00:12:16,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:12:16,779.779 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 00:12:19,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:12:19,901.901 INFO    ] Checking for system updates...
[2026-10-25 00:12:19,940.940 INFO    ] 200
[2026-10-25 00:12:19,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:19,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:19,997.997 INFO    ] No update needed
[2026-10-25 00:12:19,999.999 INFO    ] Checking for camera pi updates...
[2026-10-25 00:12:20,033.033 INFO    ] 200
[2026-10-25 00:12:20,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:20,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:12:20,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:20,110.110 INFO    ] No camera update needed
[2026-10-25 00:12:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:12:20,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:12:20,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:12:20,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:12:22,165.165 INFO    ] ================================================
[2026-10-25 00:12:22,181.181 INFO    ] Launching Daemon at Sun Oct 25 00:12:22 IST 2026
[2026-10-25 00:12:22,191.191 INFO    ] ================================================
[2026-10-25 00:12:22,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:12:22
[2026-10-25 00:12:23,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:12:23,598.598 INFO    ] Initializing speech engine...
[2026-10-25 00:12:23,612.612 INFO    ] 2026-10-25 00:12:23
[2026-10-25 00:12:23,874.874 INFO    ] 2026-10-25 00:12:23
[2026-10-25 00:12:23,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:12:24,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:12:24,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:12:24,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:12:24,341.341 INFO    ] time= 25/10/2026 00:12:24
[2026-10-25 00:12:24,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:12:24,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:12:24,540.540 INFO    ] No existing commands found in stream
[2026-10-25 00:12:29,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:12:29,573.573 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 00:12:30,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:12:30,172.172 INFO    ] Checking for system updates...
[2026-10-25 00:12:30,210.210 INFO    ] 200
[2026-10-25 00:12:30,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:30,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:30,269.269 INFO    ] No update needed
[2026-10-25 00:12:30,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 00:12:30,306.306 INFO    ] 200
[2026-10-25 00:12:30,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:30,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:12:30,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:30,384.384 INFO    ] No camera update needed
[2026-10-25 00:12:30,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:12:30,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:12:30,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:12:30,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:12:32,441.441 INFO    ] ================================================
[2026-10-25 00:12:32,457.457 INFO    ] Launching Daemon at Sun Oct 25 00:12:32 IST 2026
[2026-10-25 00:12:32,468.468 INFO    ] ================================================
[2026-10-25 00:12:33,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:12:33
[2026-10-25 00:12:33,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:12:33,945.945 INFO    ] Initializing speech engine...
[2026-10-25 00:12:33,951.951 INFO    ] 2026-10-25 00:12:33
[2026-10-25 00:12:34,259.259 INFO    ] 2026-10-25 00:12:34
[2026-10-25 00:12:34,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:12:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:12:34,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:12:34,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:12:34,671.671 INFO    ] time= 25/10/2026 00:12:34
[2026-10-25 00:12:34,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:12:34,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:12:34,779.779 INFO    ] No existing commands found in stream
[2026-10-25 00:12:39,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:12:39,795.795 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 00:12:40,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:12:40,926.926 INFO    ] Checking for system updates...
[2026-10-25 00:12:40,962.962 INFO    ] 200
[2026-10-25 00:12:40,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:41,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:41,019.019 INFO    ] No update needed
[2026-10-25 00:12:41,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 00:12:41,063.063 INFO    ] 200
[2026-10-25 00:12:41,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:41,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:12:41,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:12:41,163.163 INFO    ] No camera update needed
[2026-10-25 00:12:41,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:12:41,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:12:41,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:12:41,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:12:43,219.219 INFO    ] ================================================
[2026-10-25 00:12:43,234.234 INFO    ] Launching Daemon at Sun Oct 25 00:12:43 IST 2026
[2026-10-25 00:12:43,245.245 INFO    ] ================================================
[2026-10-25 00:12:43,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:12:43
[2026-10-25 00:12:44,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:12:44,826.826 INFO    ] Initializing speech engine...
[2026-10-25 00:12:44,835.835 INFO    ] 2026-10-25 00:12:44
[2026-10-25 00:12:45,124.124 INFO    ] 2026-10-25 00:12:45
[2026-10-25 00:12:45,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:12:45,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:12:45,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:12:45,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:12:45,650.650 INFO    ] time= 25/10/2026 00:12:45
[2026-10-25 00:12:45,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:12:45,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:12:45,805.805 INFO    ] No existing commands found in stream
[2026-10-25 00:12:50,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:12:50,828.828 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 00:12:51,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:12:51,555.555 INFO    ] Checking for system updates...
[2026-10-25 00:12:51,596.596 INFO    ] 200
[2026-10-25 00:12:51,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:51,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:12:51,661.661 INFO    ] No update needed
[2026-10-25 00:12:51,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 00:12:51,699.699 INFO    ] 200
[2026-10-25 00:12:51,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:12:51,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:12:51,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:12:51,795.795 INFO    ] No camera update needed
[2026-10-25 00:12:51,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:12:51,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:12:51,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:12:51,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:12:53,854.854 INFO    ] ================================================
[2026-10-25 00:12:53,869.869 INFO    ] Launching Daemon at Sun Oct 25 00:12:53 IST 2026
[2026-10-25 00:12:53,879.879 INFO    ] ================================================
[2026-10-25 00:12:54,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:12:54
[2026-10-25 00:12:55,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:12:55,289.289 INFO    ] Initializing speech engine...
[2026-10-25 00:12:55,298.298 INFO    ] 2026-10-25 00:12:55
[2026-10-25 00:12:55,549.549 INFO    ] 2026-10-25 00:12:55
[2026-10-25 00:12:55,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:12:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:12:55,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:12:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:12:55,984.984 INFO    ] time= 25/10/2026 00:12:55
[2026-10-25 00:12:56,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:12:56,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:12:56,215.215 INFO    ] No existing commands found in stream
[2026-10-25 00:13:01,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:13:01,240.240 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 00:13:02,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:13:02,345.345 INFO    ] Checking for system updates...
[2026-10-25 00:13:02,407.407 INFO    ] 200
[2026-10-25 00:13:02,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:02,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:13:02,476.476 INFO    ] No update needed
[2026-10-25 00:13:02,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 00:13:02,520.520 INFO    ] 200
[2026-10-25 00:13:02,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:02,578.578 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:13:02,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:13:02,618.618 INFO    ] No camera update needed
[2026-10-25 00:13:02,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:13:02,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:13:02,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:13:02,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:13:04,676.676 INFO    ] ================================================
[2026-10-25 00:13:04,692.692 INFO    ] Launching Daemon at Sun Oct 25 00:13:04 IST 2026
[2026-10-25 00:13:04,703.703 INFO    ] ================================================
[2026-10-25 00:13:05,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:13:05
[2026-10-25 00:13:05,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:13:06,123.123 INFO    ] Initializing speech engine...
[2026-10-25 00:13:06,135.135 INFO    ] 2026-10-25 00:13:06
[2026-10-25 00:13:06,392.392 INFO    ] 2026-10-25 00:13:06
[2026-10-25 00:13:06,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:13:06,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:13:06,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:13:06,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:13:06,744.744 INFO    ] time= 25/10/2026 00:13:06
[2026-10-25 00:13:06,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:13:06,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:13:06,848.848 INFO    ] No existing commands found in stream
[2026-10-25 00:13:11,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:13:11,867.867 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 00:13:14,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:13:14,430.430 INFO    ] Checking for system updates...
[2026-10-25 00:13:14,465.465 INFO    ] 200
[2026-10-25 00:13:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:14,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:14,528.528 INFO    ] No update needed
[2026-10-25 00:13:14,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 00:13:14,566.566 INFO    ] 200
[2026-10-25 00:13:14,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:14,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:13:14,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:14,774.774 INFO    ] No camera update needed
[2026-10-25 00:13:14,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:13:14,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:13:14,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:13:14,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:13:16,828.828 INFO    ] ================================================
[2026-10-25 00:13:16,843.843 INFO    ] Launching Daemon at Sun Oct 25 00:13:16 IST 2026
[2026-10-25 00:13:16,854.854 INFO    ] ================================================
[2026-10-25 00:13:17,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:13:17
[2026-10-25 00:13:18,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:13:18,273.273 INFO    ] Initializing speech engine...
[2026-10-25 00:13:18,300.300 INFO    ] 2026-10-25 00:13:18
[2026-10-25 00:13:18,551.551 INFO    ] 2026-10-25 00:13:18
[2026-10-25 00:13:18,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:13:18,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:13:18,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:13:18,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:13:18,929.929 INFO    ] time= 25/10/2026 00:13:18
[2026-10-25 00:13:18,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:13:18,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:13:19,106.106 INFO    ] No existing commands found in stream
[2026-10-25 00:13:24,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:13:24,134.134 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 00:13:24,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:13:24,597.597 INFO    ] Checking for system updates...
[2026-10-25 00:13:24,634.634 INFO    ] 200
[2026-10-25 00:13:24,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:24,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:24,691.691 INFO    ] No update needed
[2026-10-25 00:13:24,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 00:13:24,726.726 INFO    ] 200
[2026-10-25 00:13:24,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:24,771.771 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:13:24,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:24,830.830 INFO    ] No camera update needed
[2026-10-25 00:13:24,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:13:24,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:13:24,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:13:24,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:13:26,886.886 INFO    ] ================================================
[2026-10-25 00:13:26,901.901 INFO    ] Launching Daemon at Sun Oct 25 00:13:26 IST 2026
[2026-10-25 00:13:26,912.912 INFO    ] ================================================
[2026-10-25 00:13:27,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:13:27
[2026-10-25 00:13:28,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:13:28,489.489 INFO    ] Initializing speech engine...
[2026-10-25 00:13:28,497.497 INFO    ] 2026-10-25 00:13:28
[2026-10-25 00:13:28,779.779 INFO    ] 2026-10-25 00:13:28
[2026-10-25 00:13:28,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:13:29,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:13:29,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:13:29,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:13:29,317.317 INFO    ] time= 25/10/2026 00:13:29
[2026-10-25 00:13:29,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:13:29,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:13:29,480.480 INFO    ] No existing commands found in stream
[2026-10-25 00:13:34,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:13:34,514.514 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 00:13:36,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:13:36,414.414 INFO    ] Checking for system updates...
[2026-10-25 00:13:36,453.453 INFO    ] 200
[2026-10-25 00:13:36,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:36,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:36,510.510 INFO    ] No update needed
[2026-10-25 00:13:36,512.512 INFO    ] Checking for camera pi updates...
[2026-10-25 00:13:36,546.546 INFO    ] 200
[2026-10-25 00:13:36,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:36,591.591 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:13:36,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:36,725.725 INFO    ] No camera update needed
[2026-10-25 00:13:36,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:13:36,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:13:36,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:13:36,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:13:38,781.781 INFO    ] ================================================
[2026-10-25 00:13:38,796.796 INFO    ] Launching Daemon at Sun Oct 25 00:13:38 IST 2026
[2026-10-25 00:13:38,807.807 INFO    ] ================================================
[2026-10-25 00:13:39,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:13:39
[2026-10-25 00:13:39,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:13:40,211.211 INFO    ] Initializing speech engine...
[2026-10-25 00:13:40,224.224 INFO    ] 2026-10-25 00:13:40
[2026-10-25 00:13:40,500.500 INFO    ] 2026-10-25 00:13:40
[2026-10-25 00:13:40,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:13:40,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:13:40,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:13:40,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:13:40,903.903 INFO    ] time= 25/10/2026 00:13:40
[2026-10-25 00:13:40,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:13:40,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:13:41,032.032 INFO    ] No existing commands found in stream
[2026-10-25 00:13:46,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:13:46,060.060 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 00:13:50,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:13:50,454.454 INFO    ] Checking for system updates...
[2026-10-25 00:13:50,490.490 INFO    ] 200
[2026-10-25 00:13:50,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:50,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:50,547.547 INFO    ] No update needed
[2026-10-25 00:13:50,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 00:13:50,585.585 INFO    ] 200
[2026-10-25 00:13:50,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:13:50,630.630 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:13:50,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:13:50,678.678 INFO    ] No camera update needed
[2026-10-25 00:13:50,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:13:50,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:13:50,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:13:50,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:13:52,733.733 INFO    ] ================================================
[2026-10-25 00:13:52,748.748 INFO    ] Launching Daemon at Sun Oct 25 00:13:52 IST 2026
[2026-10-25 00:13:52,759.759 INFO    ] ================================================
[2026-10-25 00:13:53,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:13:53
[2026-10-25 00:13:53,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:13:54,178.178 INFO    ] Initializing speech engine...
[2026-10-25 00:13:54,203.203 INFO    ] 2026-10-25 00:13:54
[2026-10-25 00:13:54,468.468 INFO    ] 2026-10-25 00:13:54
[2026-10-25 00:13:54,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:13:54,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:13:54,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:13:54,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:13:54,945.945 INFO    ] time= 25/10/2026 00:13:54
[2026-10-25 00:13:55,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:13:55,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:13:55,144.144 INFO    ] No existing commands found in stream
[2026-10-25 00:14:00,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:00,162.162 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 00:14:03,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:14:03,713.713 INFO    ] Checking for system updates...
[2026-10-25 00:14:03,748.748 INFO    ] 200
[2026-10-25 00:14:03,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:03,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:03,816.816 INFO    ] No update needed
[2026-10-25 00:14:03,818.818 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:03,860.860 INFO    ] 200
[2026-10-25 00:14:03,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:03,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:03,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:03,985.985 INFO    ] No camera update needed
[2026-10-25 00:14:03,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:03,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:03,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:04,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:14:06,041.041 INFO    ] ================================================
[2026-10-25 00:14:06,056.056 INFO    ] Launching Daemon at Sun Oct 25 00:14:06 IST 2026
[2026-10-25 00:14:06,067.067 INFO    ] ================================================
[2026-10-25 00:14:06,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:14:06
[2026-10-25 00:14:07,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:14:07,549.549 INFO    ] Initializing speech engine...
[2026-10-25 00:14:07,560.560 INFO    ] 2026-10-25 00:14:07
[2026-10-25 00:14:07,835.835 INFO    ] 2026-10-25 00:14:07
[2026-10-25 00:14:07,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:14:08,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:14:08,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:14:08,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:14:08,367.367 INFO    ] time= 25/10/2026 00:14:08
[2026-10-25 00:14:08,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:14:08,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:14:08,512.512 INFO    ] No existing commands found in stream
[2026-10-25 00:14:13,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:13,537.537 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 00:14:14,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:14:14,523.523 INFO    ] Checking for system updates...
[2026-10-25 00:14:14,560.560 INFO    ] 200
[2026-10-25 00:14:14,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:14,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:14,621.621 INFO    ] No update needed
[2026-10-25 00:14:14,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:14,658.658 INFO    ] 200
[2026-10-25 00:14:14,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:14,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:14,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:14,753.753 INFO    ] No camera update needed
[2026-10-25 00:14:14,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:14,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:14,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:14,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:14:16,812.812 INFO    ] ================================================
[2026-10-25 00:14:16,827.827 INFO    ] Launching Daemon at Sun Oct 25 00:14:16 IST 2026
[2026-10-25 00:14:16,838.838 INFO    ] ================================================
[2026-10-25 00:14:17,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:14:17
[2026-10-25 00:14:18,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:14:18,293.293 INFO    ] Initializing speech engine...
[2026-10-25 00:14:18,309.309 INFO    ] 2026-10-25 00:14:18
[2026-10-25 00:14:18,563.563 INFO    ] 2026-10-25 00:14:18
[2026-10-25 00:14:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:14:18,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:14:18,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:14:18,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:14:19,007.007 INFO    ] time= 25/10/2026 00:14:18
[2026-10-25 00:14:19,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:14:19,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:14:19,181.181 INFO    ] No existing commands found in stream
[2026-10-25 00:14:24,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:24,196.196 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 00:14:25,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:14:25,041.041 INFO    ] Checking for system updates...
[2026-10-25 00:14:25,077.077 INFO    ] 200
[2026-10-25 00:14:25,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:25,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:14:25,139.139 INFO    ] No update needed
[2026-10-25 00:14:25,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:25,178.178 INFO    ] 200
[2026-10-25 00:14:25,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:25,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:25,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:14:25,273.273 INFO    ] No camera update needed
[2026-10-25 00:14:25,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:25,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:25,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:25,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:14:27,329.329 INFO    ] ================================================
[2026-10-25 00:14:27,344.344 INFO    ] Launching Daemon at Sun Oct 25 00:14:27 IST 2026
[2026-10-25 00:14:27,354.354 INFO    ] ================================================
[2026-10-25 00:14:27,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:14:27
[2026-10-25 00:14:28,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:14:28,753.753 INFO    ] Initializing speech engine...
[2026-10-25 00:14:28,761.761 INFO    ] 2026-10-25 00:14:28
[2026-10-25 00:14:29,051.051 INFO    ] 2026-10-25 00:14:29
[2026-10-25 00:14:29,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:14:29,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:14:29,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:14:29,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:14:29,426.426 INFO    ] time= 25/10/2026 00:14:29
[2026-10-25 00:14:29,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:14:29,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:14:29,549.549 INFO    ] No existing commands found in stream
[2026-10-25 00:14:34,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:34,565.565 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 00:14:36,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:14:36,356.356 INFO    ] Checking for system updates...
[2026-10-25 00:14:36,393.393 INFO    ] 200
[2026-10-25 00:14:36,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:36,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:36,456.456 INFO    ] No update needed
[2026-10-25 00:14:36,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:36,492.492 INFO    ] 200
[2026-10-25 00:14:36,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:36,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:36,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:36,606.606 INFO    ] No camera update needed
[2026-10-25 00:14:36,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:36,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:36,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:36,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:14:38,661.661 INFO    ] ================================================
[2026-10-25 00:14:38,676.676 INFO    ] Launching Daemon at Sun Oct 25 00:14:38 IST 2026
[2026-10-25 00:14:38,687.687 INFO    ] ================================================
[2026-10-25 00:14:39,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:14:39
[2026-10-25 00:14:39,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:14:40,113.113 INFO    ] Initializing speech engine...
[2026-10-25 00:14:40,122.122 INFO    ] 2026-10-25 00:14:40
[2026-10-25 00:14:40,387.387 INFO    ] 2026-10-25 00:14:40
[2026-10-25 00:14:40,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:14:40,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:14:40,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:14:40,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:14:40,801.801 INFO    ] time= 25/10/2026 00:14:40
[2026-10-25 00:14:40,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:14:40,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:14:40,885.885 INFO    ] No existing commands found in stream
[2026-10-25 00:14:45,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:45,901.901 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 00:14:47,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:14:47,397.397 INFO    ] Checking for system updates...
[2026-10-25 00:14:47,438.438 INFO    ] 200
[2026-10-25 00:14:47,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:47,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:47,499.499 INFO    ] No update needed
[2026-10-25 00:14:47,502.502 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:47,537.537 INFO    ] 200
[2026-10-25 00:14:47,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:47,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:47,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:14:47,645.645 INFO    ] No camera update needed
[2026-10-25 00:14:47,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:47,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:47,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:47,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:14:49,703.703 INFO    ] ================================================
[2026-10-25 00:14:49,718.718 INFO    ] Launching Daemon at Sun Oct 25 00:14:49 IST 2026
[2026-10-25 00:14:49,729.729 INFO    ] ================================================
[2026-10-25 00:14:50,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:14:50
[2026-10-25 00:14:50,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:14:51,144.144 INFO    ] Initializing speech engine...
[2026-10-25 00:14:51,153.153 INFO    ] 2026-10-25 00:14:51
[2026-10-25 00:14:51,397.397 INFO    ] 2026-10-25 00:14:51
[2026-10-25 00:14:51,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:14:51,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:14:51,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:14:52,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:14:52,094.094 INFO    ] time= 25/10/2026 00:14:52
[2026-10-25 00:14:52,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:14:52,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:14:52,282.282 INFO    ] No existing commands found in stream
[2026-10-25 00:14:57,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:14:57,322.322 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 00:14:58,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:14:58,633.633 INFO    ] Checking for system updates...
[2026-10-25 00:14:58,673.673 INFO    ] 200
[2026-10-25 00:14:58,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:58,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:14:58,737.737 INFO    ] No update needed
[2026-10-25 00:14:58,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 00:14:58,774.774 INFO    ] 200
[2026-10-25 00:14:58,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:14:58,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:14:58,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:14:58,865.865 INFO    ] No camera update needed
[2026-10-25 00:14:58,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:14:58,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:14:58,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:14:58,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:00,921.921 INFO    ] ================================================
[2026-10-25 00:15:00,937.937 INFO    ] Launching Daemon at Sun Oct 25 00:15:00 IST 2026
[2026-10-25 00:15:00,948.948 INFO    ] ================================================
[2026-10-25 00:15:01,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:01
[2026-10-25 00:15:02,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:03,107.107 INFO    ] Initializing speech engine...
[2026-10-25 00:15:03,117.117 INFO    ] 2026-10-25 00:15:03
[2026-10-25 00:15:03,387.387 INFO    ] 2026-10-25 00:15:03
[2026-10-25 00:15:03,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:03,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:03,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:15:03,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:15:03,847.847 INFO    ] time= 25/10/2026 00:15:03
[2026-10-25 00:15:03,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:15:03,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:15:03,937.937 INFO    ] No existing commands found in stream
[2026-10-25 00:15:08,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:15:08,965.965 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 00:15:09,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:15:09,647.647 INFO    ] Checking for system updates...
[2026-10-25 00:15:09,682.682 INFO    ] 200
[2026-10-25 00:15:09,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:09,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:09,741.741 INFO    ] No update needed
[2026-10-25 00:15:09,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 00:15:09,780.780 INFO    ] 200
[2026-10-25 00:15:09,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:09,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:15:09,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:09,887.887 INFO    ] No camera update needed
[2026-10-25 00:15:09,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:15:09,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:15:09,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:15:09,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:11,942.942 INFO    ] ================================================
[2026-10-25 00:15:11,957.957 INFO    ] Launching Daemon at Sun Oct 25 00:15:11 IST 2026
[2026-10-25 00:15:11,968.968 INFO    ] ================================================
[2026-10-25 00:15:12,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:12
[2026-10-25 00:15:13,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:13,412.412 INFO    ] Initializing speech engine...
[2026-10-25 00:15:13,418.418 INFO    ] 2026-10-25 00:15:13
[2026-10-25 00:15:13,676.676 INFO    ] 2026-10-25 00:15:13
[2026-10-25 00:15:13,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:13,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:13,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:15:14,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:15:14,150.150 INFO    ] time= 25/10/2026 00:15:14
[2026-10-25 00:15:14,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:15:14,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:15:14,323.323 INFO    ] No existing commands found in stream
[2026-10-25 00:15:19,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:15:19,352.352 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 00:15:20,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:15:20,553.553 INFO    ] Checking for system updates...
[2026-10-25 00:15:20,592.592 INFO    ] 200
[2026-10-25 00:15:20,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:20,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:15:20,655.655 INFO    ] No update needed
[2026-10-25 00:15:20,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 00:15:20,691.691 INFO    ] 200
[2026-10-25 00:15:20,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:20,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:15:20,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:15:20,901.901 INFO    ] No camera update needed
[2026-10-25 00:15:20,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:15:20,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:15:20,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:15:20,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:22,959.959 INFO    ] ================================================
[2026-10-25 00:15:22,974.974 INFO    ] Launching Daemon at Sun Oct 25 00:15:22 IST 2026
[2026-10-25 00:15:22,985.985 INFO    ] ================================================
[2026-10-25 00:15:23,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:23
[2026-10-25 00:15:24,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:24,426.426 INFO    ] Initializing speech engine...
[2026-10-25 00:15:24,434.434 INFO    ] 2026-10-25 00:15:24
[2026-10-25 00:15:24,687.687 INFO    ] 2026-10-25 00:15:24
[2026-10-25 00:15:24,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:24,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:24,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:15:25,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:15:25,161.161 INFO    ] time= 25/10/2026 00:15:25
[2026-10-25 00:15:25,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:15:25,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:15:25,328.328 INFO    ] No existing commands found in stream
[2026-10-25 00:15:30,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:15:30,367.367 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 00:15:31,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:15:31,977.977 INFO    ] Checking for system updates...
[2026-10-25 00:15:32,014.014 INFO    ] 200
[2026-10-25 00:15:32,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:32,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:15:32,079.079 INFO    ] No update needed
[2026-10-25 00:15:32,082.082 INFO    ] Checking for camera pi updates...
[2026-10-25 00:15:32,116.116 INFO    ] 200
[2026-10-25 00:15:32,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:32,160.160 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:15:32,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:15:32,203.203 INFO    ] No camera update needed
[2026-10-25 00:15:32,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:15:32,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:15:32,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:15:32,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:34,262.262 INFO    ] ================================================
[2026-10-25 00:15:34,278.278 INFO    ] Launching Daemon at Sun Oct 25 00:15:34 IST 2026
[2026-10-25 00:15:34,289.289 INFO    ] ================================================
[2026-10-25 00:15:34,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:34
[2026-10-25 00:15:35,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:35,696.696 INFO    ] Initializing speech engine...
[2026-10-25 00:15:35,711.711 INFO    ] 2026-10-25 00:15:35
[2026-10-25 00:15:35,993.993 INFO    ] 2026-10-25 00:15:35
[2026-10-25 00:15:36,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:36,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:36,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:15:36,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:15:36,409.409 INFO    ] time= 25/10/2026 00:15:36
[2026-10-25 00:15:36,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:15:36,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:15:36,499.499 INFO    ] No existing commands found in stream
[2026-10-25 00:15:41,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:15:41,527.527 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 00:15:43,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:15:43,135.135 INFO    ] Checking for system updates...
[2026-10-25 00:15:43,172.172 INFO    ] 200
[2026-10-25 00:15:43,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:43,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:43,233.233 INFO    ] No update needed
[2026-10-25 00:15:43,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 00:15:43,274.274 INFO    ] 200
[2026-10-25 00:15:43,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:43,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:15:43,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:43,380.380 INFO    ] No camera update needed
[2026-10-25 00:15:43,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:15:43,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:15:43,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:15:43,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:45,439.439 INFO    ] ================================================
[2026-10-25 00:15:45,454.454 INFO    ] Launching Daemon at Sun Oct 25 00:15:45 IST 2026
[2026-10-25 00:15:45,465.465 INFO    ] ================================================
[2026-10-25 00:15:46,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:46
[2026-10-25 00:15:46,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:46,865.865 INFO    ] Initializing speech engine...
[2026-10-25 00:15:46,873.873 INFO    ] 2026-10-25 00:15:46
[2026-10-25 00:15:47,149.149 INFO    ] 2026-10-25 00:15:47
[2026-10-25 00:15:47,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:47,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:47,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:15:47,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:15:47,636.636 INFO    ] time= 25/10/2026 00:15:47
[2026-10-25 00:15:47,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:15:47,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:15:47,817.817 INFO    ] No existing commands found in stream
[2026-10-25 00:15:52,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:15:52,857.857 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 00:15:55,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:15:55,366.366 INFO    ] Checking for system updates...
[2026-10-25 00:15:55,403.403 INFO    ] 200
[2026-10-25 00:15:55,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:55,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:55,462.462 INFO    ] No update needed
[2026-10-25 00:15:55,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 00:15:55,502.502 INFO    ] 200
[2026-10-25 00:15:55,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:15:55,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:15:55,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:15:55,600.600 INFO    ] No camera update needed
[2026-10-25 00:15:55,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:15:55,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:15:55,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:15:55,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:15:57,658.658 INFO    ] ================================================
[2026-10-25 00:15:57,674.674 INFO    ] Launching Daemon at Sun Oct 25 00:15:57 IST 2026
[2026-10-25 00:15:57,685.685 INFO    ] ================================================
[2026-10-25 00:15:58,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:15:58
[2026-10-25 00:15:58,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:15:59,126.126 INFO    ] Initializing speech engine...
[2026-10-25 00:15:59,134.134 INFO    ] 2026-10-25 00:15:59
[2026-10-25 00:15:59,391.391 INFO    ] 2026-10-25 00:15:59
[2026-10-25 00:15:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:15:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:15:59,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:16:00,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:16:00,118.118 INFO    ] time= 25/10/2026 00:16:00
[2026-10-25 00:16:00,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:16:00,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:16:00,324.324 INFO    ] No existing commands found in stream
[2026-10-25 00:16:05,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:16:05,339.339 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 00:16:05,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:16:05,842.842 INFO    ] Checking for system updates...
[2026-10-25 00:16:05,878.878 INFO    ] 200
[2026-10-25 00:16:05,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:05,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:16:05,945.945 INFO    ] No update needed
[2026-10-25 00:16:05,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 00:16:05,981.981 INFO    ] 200
[2026-10-25 00:16:05,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:06,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:16:06,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:16:06,082.082 INFO    ] No camera update needed
[2026-10-25 00:16:06,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:16:06,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:16:06,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:16:06,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:16:08,137.137 INFO    ] ================================================
[2026-10-25 00:16:08,153.153 INFO    ] Launching Daemon at Sun Oct 25 00:16:08 IST 2026
[2026-10-25 00:16:08,163.163 INFO    ] ================================================
[2026-10-25 00:16:08,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:16:08
[2026-10-25 00:16:09,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:16:09,617.617 INFO    ] Initializing speech engine...
[2026-10-25 00:16:09,626.626 INFO    ] 2026-10-25 00:16:09
[2026-10-25 00:16:09,871.871 INFO    ] 2026-10-25 00:16:09
[2026-10-25 00:16:09,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:16:10,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:16:10,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:16:10,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:16:10,333.333 INFO    ] time= 25/10/2026 00:16:10
[2026-10-25 00:16:10,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:16:10,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:16:10,492.492 INFO    ] No existing commands found in stream
[2026-10-25 00:16:15,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:16:15,522.522 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 00:16:16,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:16:16,819.819 INFO    ] Checking for system updates...
[2026-10-25 00:16:16,855.855 INFO    ] 200
[2026-10-25 00:16:16,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:16,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:16,914.914 INFO    ] No update needed
[2026-10-25 00:16:16,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 00:16:16,950.950 INFO    ] 200
[2026-10-25 00:16:16,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:16,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:16:17,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:17,044.044 INFO    ] No camera update needed
[2026-10-25 00:16:17,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:16:17,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:16:17,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:16:17,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:16:19,101.101 INFO    ] ================================================
[2026-10-25 00:16:19,117.117 INFO    ] Launching Daemon at Sun Oct 25 00:16:19 IST 2026
[2026-10-25 00:16:19,129.129 INFO    ] ================================================
[2026-10-25 00:16:19,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:16:19
[2026-10-25 00:16:20,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:16:20,537.537 INFO    ] Initializing speech engine...
[2026-10-25 00:16:20,562.562 INFO    ] 2026-10-25 00:16:20
[2026-10-25 00:16:20,837.837 INFO    ] 2026-10-25 00:16:20
[2026-10-25 00:16:20,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:16:21,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:16:21,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:16:21,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:16:21,217.217 INFO    ] time= 25/10/2026 00:16:21
[2026-10-25 00:16:21,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:16:21,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:16:21,343.343 INFO    ] No existing commands found in stream
[2026-10-25 00:16:26,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:16:26,358.358 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 00:16:29,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:16:29,921.921 INFO    ] Checking for system updates...
[2026-10-25 00:16:29,957.957 INFO    ] 200
[2026-10-25 00:16:29,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:30,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:30,022.022 INFO    ] No update needed
[2026-10-25 00:16:30,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 00:16:30,059.059 INFO    ] 200
[2026-10-25 00:16:30,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:30,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:16:30,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:30,153.153 INFO    ] No camera update needed
[2026-10-25 00:16:30,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:16:30,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:16:30,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:16:30,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:16:32,215.215 INFO    ] ================================================
[2026-10-25 00:16:32,231.231 INFO    ] Launching Daemon at Sun Oct 25 00:16:32 IST 2026
[2026-10-25 00:16:32,242.242 INFO    ] ================================================
[2026-10-25 00:16:32,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:16:32
[2026-10-25 00:16:33,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:16:33,740.740 INFO    ] Initializing speech engine...
[2026-10-25 00:16:33,754.754 INFO    ] 2026-10-25 00:16:33
[2026-10-25 00:16:34,021.021 INFO    ] 2026-10-25 00:16:34
[2026-10-25 00:16:34,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:16:34,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:16:34,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:16:34,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:16:34,439.439 INFO    ] time= 25/10/2026 00:16:34
[2026-10-25 00:16:34,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:16:34,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:16:34,570.570 INFO    ] No existing commands found in stream
[2026-10-25 00:16:39,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:16:39,598.598 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 00:16:43,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:16:43,740.740 INFO    ] Checking for system updates...
[2026-10-25 00:16:43,776.776 INFO    ] 200
[2026-10-25 00:16:43,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:43,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:16:43,834.834 INFO    ] No update needed
[2026-10-25 00:16:43,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 00:16:43,871.871 INFO    ] 200
[2026-10-25 00:16:43,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:43,932.932 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:16:43,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:16:43,989.989 INFO    ] No camera update needed
[2026-10-25 00:16:43,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:16:43,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:16:43,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:16:44,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:16:46,043.043 INFO    ] ================================================
[2026-10-25 00:16:46,058.058 INFO    ] Launching Daemon at Sun Oct 25 00:16:46 IST 2026
[2026-10-25 00:16:46,069.069 INFO    ] ================================================
[2026-10-25 00:16:46,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:16:46
[2026-10-25 00:16:47,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:16:47,485.485 INFO    ] Initializing speech engine...
[2026-10-25 00:16:47,505.505 INFO    ] 2026-10-25 00:16:47
[2026-10-25 00:16:47,768.768 INFO    ] 2026-10-25 00:16:47
[2026-10-25 00:16:47,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:16:48,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:16:48,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:16:48,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:16:48,182.182 INFO    ] time= 25/10/2026 00:16:48
[2026-10-25 00:16:48,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:16:48,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:16:48,321.321 INFO    ] No existing commands found in stream
[2026-10-25 00:16:53,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:16:53,354.354 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 00:16:56,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:16:56,359.359 INFO    ] Checking for system updates...
[2026-10-25 00:16:56,395.395 INFO    ] 200
[2026-10-25 00:16:56,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:56,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:56,460.460 INFO    ] No update needed
[2026-10-25 00:16:56,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 00:16:56,497.497 INFO    ] 200
[2026-10-25 00:16:56,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:16:56,540.540 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:16:56,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:16:56,598.598 INFO    ] No camera update needed
[2026-10-25 00:16:56,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:16:56,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:16:56,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:16:56,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:16:58,653.653 INFO    ] ================================================
[2026-10-25 00:16:58,669.669 INFO    ] Launching Daemon at Sun Oct 25 00:16:58 IST 2026
[2026-10-25 00:16:58,681.681 INFO    ] ================================================
[2026-10-25 00:16:59,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:16:59
[2026-10-25 00:16:59,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:17:00,217.217 INFO    ] Initializing speech engine...
[2026-10-25 00:17:00,231.231 INFO    ] 2026-10-25 00:17:00
[2026-10-25 00:17:00,536.536 INFO    ] 2026-10-25 00:17:00
[2026-10-25 00:17:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:17:00,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:17:00,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:17:01,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:17:01,045.045 INFO    ] time= 25/10/2026 00:17:01
[2026-10-25 00:17:01,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:17:01,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:17:01,200.200 INFO    ] No existing commands found in stream
[2026-10-25 00:17:06,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:17:06,228.228 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:17:10,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:17:10,187.187 INFO    ] Checking for system updates...
[2026-10-25 00:17:10,229.229 INFO    ] 200
[2026-10-25 00:17:10,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:10,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:10,289.289 INFO    ] No update needed
[2026-10-25 00:17:10,292.292 INFO    ] Checking for camera pi updates...
[2026-10-25 00:17:10,326.326 INFO    ] 200
[2026-10-25 00:17:10,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:10,370.370 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:17:10,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:10,419.419 INFO    ] No camera update needed
[2026-10-25 00:17:10,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:17:10,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:17:10,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:17:10,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:17:12,475.475 INFO    ] ================================================
[2026-10-25 00:17:12,491.491 INFO    ] Launching Daemon at Sun Oct 25 00:17:12 IST 2026
[2026-10-25 00:17:12,503.503 INFO    ] ================================================
[2026-10-25 00:17:13,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:17:13
[2026-10-25 00:17:13,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:17:13,915.915 INFO    ] Initializing speech engine...
[2026-10-25 00:17:13,924.924 INFO    ] 2026-10-25 00:17:13
[2026-10-25 00:17:14,219.219 INFO    ] 2026-10-25 00:17:14
[2026-10-25 00:17:14,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:17:14,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:17:14,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:17:14,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:17:14,617.617 INFO    ] time= 25/10/2026 00:17:14
[2026-10-25 00:17:14,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:17:14,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:17:14,725.725 INFO    ] No existing commands found in stream
[2026-10-25 00:17:19,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:17:19,739.739 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 00:17:22,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:17:22,456.456 INFO    ] Checking for system updates...
[2026-10-25 00:17:22,493.493 INFO    ] 200
[2026-10-25 00:17:22,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:22,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:22,559.559 INFO    ] No update needed
[2026-10-25 00:17:22,561.561 INFO    ] Checking for camera pi updates...
[2026-10-25 00:17:22,596.596 INFO    ] 200
[2026-10-25 00:17:22,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:22,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:17:22,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:22,803.803 INFO    ] No camera update needed
[2026-10-25 00:17:22,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:17:22,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:17:22,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:17:22,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:17:24,859.859 INFO    ] ================================================
[2026-10-25 00:17:24,874.874 INFO    ] Launching Daemon at Sun Oct 25 00:17:24 IST 2026
[2026-10-25 00:17:24,886.886 INFO    ] ================================================
[2026-10-25 00:17:25,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:17:25
[2026-10-25 00:17:26,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:17:26,280.280 INFO    ] Initializing speech engine...
[2026-10-25 00:17:26,294.294 INFO    ] 2026-10-25 00:17:26
[2026-10-25 00:17:26,556.556 INFO    ] 2026-10-25 00:17:26
[2026-10-25 00:17:26,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:17:26,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:17:26,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:17:26,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:17:27,039.039 INFO    ] time= 25/10/2026 00:17:26
[2026-10-25 00:17:27,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:17:27,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:17:27,216.216 INFO    ] No existing commands found in stream
[2026-10-25 00:17:32,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:17:32,245.245 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 00:17:34,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:17:34,030.030 INFO    ] Checking for system updates...
[2026-10-25 00:17:34,069.069 INFO    ] 200
[2026-10-25 00:17:34,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:34,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:34,133.133 INFO    ] No update needed
[2026-10-25 00:17:34,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 00:17:34,180.180 INFO    ] 200
[2026-10-25 00:17:34,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:34,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:17:34,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:17:34,274.274 INFO    ] No camera update needed
[2026-10-25 00:17:34,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:17:34,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:17:34,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:17:34,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:17:36,330.330 INFO    ] ================================================
[2026-10-25 00:17:36,345.345 INFO    ] Launching Daemon at Sun Oct 25 00:17:36 IST 2026
[2026-10-25 00:17:36,355.355 INFO    ] ================================================
[2026-10-25 00:17:36,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:17:36
[2026-10-25 00:17:37,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:17:37,795.795 INFO    ] Initializing speech engine...
[2026-10-25 00:17:37,809.809 INFO    ] 2026-10-25 00:17:37
[2026-10-25 00:17:38,092.092 INFO    ] 2026-10-25 00:17:38
[2026-10-25 00:17:38,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:17:38,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:17:38,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:17:38,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:17:38,513.513 INFO    ] time= 25/10/2026 00:17:38
[2026-10-25 00:17:38,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:17:38,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:17:38,657.657 INFO    ] No existing commands found in stream
[2026-10-25 00:17:43,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:17:43,680.680 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 00:17:45,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:17:45,493.493 INFO    ] Checking for system updates...
[2026-10-25 00:17:45,534.534 INFO    ] 200
[2026-10-25 00:17:45,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:45,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:17:45,593.593 INFO    ] No update needed
[2026-10-25 00:17:45,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 00:17:45,629.629 INFO    ] 200
[2026-10-25 00:17:45,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:45,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:17:45,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:17:45,732.732 INFO    ] No camera update needed
[2026-10-25 00:17:45,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:17:45,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:17:45,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:17:45,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:17:47,788.788 INFO    ] ================================================
[2026-10-25 00:17:47,804.804 INFO    ] Launching Daemon at Sun Oct 25 00:17:47 IST 2026
[2026-10-25 00:17:47,814.814 INFO    ] ================================================
[2026-10-25 00:17:48,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:17:48
[2026-10-25 00:17:48,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:17:49,238.238 INFO    ] Initializing speech engine...
[2026-10-25 00:17:49,244.244 INFO    ] 2026-10-25 00:17:49
[2026-10-25 00:17:49,489.489 INFO    ] 2026-10-25 00:17:49
[2026-10-25 00:17:49,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:17:49,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:17:49,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:17:49,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:17:50,045.045 INFO    ] time= 25/10/2026 00:17:50
[2026-10-25 00:17:50,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:17:50,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:17:50,179.179 INFO    ] No existing commands found in stream
[2026-10-25 00:17:55,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:17:55,207.207 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 00:17:59,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:17:59,174.174 INFO    ] Checking for system updates...
[2026-10-25 00:17:59,213.213 INFO    ] 200
[2026-10-25 00:17:59,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:59,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:17:59,283.283 INFO    ] No update needed
[2026-10-25 00:17:59,286.286 INFO    ] Checking for camera pi updates...
[2026-10-25 00:17:59,325.325 INFO    ] 200
[2026-10-25 00:17:59,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:17:59,370.370 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:17:59,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:17:59,423.423 INFO    ] No camera update needed
[2026-10-25 00:17:59,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:17:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:17:59,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:17:59,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:18:01,484.484 INFO    ] ================================================
[2026-10-25 00:18:01,499.499 INFO    ] Launching Daemon at Sun Oct 25 00:18:01 IST 2026
[2026-10-25 00:18:01,510.510 INFO    ] ================================================
[2026-10-25 00:18:02,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:18:02
[2026-10-25 00:18:03,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:18:03,415.415 INFO    ] Initializing speech engine...
[2026-10-25 00:18:03,442.442 INFO    ] 2026-10-25 00:18:03
[2026-10-25 00:18:03,743.743 INFO    ] 2026-10-25 00:18:03
[2026-10-25 00:18:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:18:03,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:18:03,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:18:04,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:18:04,147.147 INFO    ] time= 25/10/2026 00:18:04
[2026-10-25 00:18:04,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:18:04,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:18:04,339.339 INFO    ] No existing commands found in stream
[2026-10-25 00:18:09,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:18:09,356.356 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 00:18:11,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:18:11,116.116 INFO    ] Checking for system updates...
[2026-10-25 00:18:11,153.153 INFO    ] 200
[2026-10-25 00:18:11,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:11,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:11,210.210 INFO    ] No update needed
[2026-10-25 00:18:11,213.213 INFO    ] Checking for camera pi updates...
[2026-10-25 00:18:11,248.248 INFO    ] 200
[2026-10-25 00:18:11,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:11,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:18:11,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:11,358.358 INFO    ] No camera update needed
[2026-10-25 00:18:11,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:18:11,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:18:11,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:18:11,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:18:13,414.414 INFO    ] ================================================
[2026-10-25 00:18:13,430.430 INFO    ] Launching Daemon at Sun Oct 25 00:18:13 IST 2026
[2026-10-25 00:18:13,441.441 INFO    ] ================================================
[2026-10-25 00:18:14,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:18:14
[2026-10-25 00:18:14,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:18:14,952.952 INFO    ] Initializing speech engine...
[2026-10-25 00:18:14,972.972 INFO    ] 2026-10-25 00:18:14
[2026-10-25 00:18:15,232.232 INFO    ] 2026-10-25 00:18:15
[2026-10-25 00:18:15,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:18:15,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:18:15,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:18:15,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:18:15,632.632 INFO    ] time= 25/10/2026 00:18:15
[2026-10-25 00:18:15,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:18:15,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:18:15,775.775 INFO    ] No existing commands found in stream
[2026-10-25 00:18:20,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:18:20,803.803 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 00:18:23,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:18:23,048.048 INFO    ] Checking for system updates...
[2026-10-25 00:18:23,086.086 INFO    ] 200
[2026-10-25 00:18:23,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:23,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:23,147.147 INFO    ] No update needed
[2026-10-25 00:18:23,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 00:18:23,185.185 INFO    ] 200
[2026-10-25 00:18:23,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:23,231.231 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:18:23,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:23,281.281 INFO    ] No camera update needed
[2026-10-25 00:18:23,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:18:23,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:18:23,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:18:23,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:18:25,336.336 INFO    ] ================================================
[2026-10-25 00:18:25,351.351 INFO    ] Launching Daemon at Sun Oct 25 00:18:25 IST 2026
[2026-10-25 00:18:25,362.362 INFO    ] ================================================
[2026-10-25 00:18:25,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:18:25
[2026-10-25 00:18:26,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:18:26,895.895 INFO    ] Initializing speech engine...
[2026-10-25 00:18:26,915.915 INFO    ] 2026-10-25 00:18:26
[2026-10-25 00:18:27,175.175 INFO    ] 2026-10-25 00:18:27
[2026-10-25 00:18:27,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:18:27,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:18:27,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:18:27,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:18:27,688.688 INFO    ] time= 25/10/2026 00:18:27
[2026-10-25 00:18:27,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:18:27,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:18:27,877.877 INFO    ] No existing commands found in stream
[2026-10-25 00:18:32,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:18:32,907.907 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 00:18:37,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:18:37,161.161 INFO    ] Checking for system updates...
[2026-10-25 00:18:37,199.199 INFO    ] 200
[2026-10-25 00:18:37,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:37,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:37,259.259 INFO    ] No update needed
[2026-10-25 00:18:37,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 00:18:37,301.301 INFO    ] 200
[2026-10-25 00:18:37,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:37,344.344 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:18:37,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:37,497.497 INFO    ] No camera update needed
[2026-10-25 00:18:37,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:18:37,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:18:37,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:18:37,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:18:39,554.554 INFO    ] ================================================
[2026-10-25 00:18:39,569.569 INFO    ] Launching Daemon at Sun Oct 25 00:18:39 IST 2026
[2026-10-25 00:18:39,580.580 INFO    ] ================================================
[2026-10-25 00:18:40,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:18:40
[2026-10-25 00:18:40,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:18:41,161.161 INFO    ] Initializing speech engine...
[2026-10-25 00:18:41,173.173 INFO    ] 2026-10-25 00:18:41
[2026-10-25 00:18:41,478.478 INFO    ] 2026-10-25 00:18:41
[2026-10-25 00:18:41,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:18:41,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:18:41,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:18:41,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:18:41,982.982 INFO    ] time= 25/10/2026 00:18:41
[2026-10-25 00:18:42,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:18:42,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:18:42,135.135 INFO    ] No existing commands found in stream
[2026-10-25 00:18:47,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:18:47,151.151 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 00:18:51,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:18:51,385.385 INFO    ] Checking for system updates...
[2026-10-25 00:18:51,425.425 INFO    ] 200
[2026-10-25 00:18:51,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:51,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:51,487.487 INFO    ] No update needed
[2026-10-25 00:18:51,490.490 INFO    ] Checking for camera pi updates...
[2026-10-25 00:18:51,525.525 INFO    ] 200
[2026-10-25 00:18:51,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:18:51,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:18:51,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:18:51,632.632 INFO    ] No camera update needed
[2026-10-25 00:18:51,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:18:51,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:18:51,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:18:51,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:18:53,689.689 INFO    ] ================================================
[2026-10-25 00:18:53,704.704 INFO    ] Launching Daemon at Sun Oct 25 00:18:53 IST 2026
[2026-10-25 00:18:53,714.714 INFO    ] ================================================
[2026-10-25 00:18:54,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:18:54
[2026-10-25 00:18:54,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:18:55,271.271 INFO    ] Initializing speech engine...
[2026-10-25 00:18:55,283.283 INFO    ] 2026-10-25 00:18:55
[2026-10-25 00:18:55,546.546 INFO    ] 2026-10-25 00:18:55
[2026-10-25 00:18:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:18:55,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:18:55,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:18:56,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:18:56,094.094 INFO    ] time= 25/10/2026 00:18:56
[2026-10-25 00:18:56,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:18:56,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:18:56,245.245 INFO    ] No existing commands found in stream
[2026-10-25 00:19:01,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:19:01,276.276 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 00:19:02,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:19:02,711.711 INFO    ] Checking for system updates...
[2026-10-25 00:19:02,753.753 INFO    ] 200
[2026-10-25 00:19:02,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:02,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:19:02,818.818 INFO    ] No update needed
[2026-10-25 00:19:02,820.820 INFO    ] Checking for camera pi updates...
[2026-10-25 00:19:02,858.858 INFO    ] 200
[2026-10-25 00:19:02,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:02,902.902 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:19:02,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:19:02,937.937 INFO    ] No camera update needed
[2026-10-25 00:19:02,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:19:02,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:19:02,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:19:02,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:19:05,004.004 INFO    ] ================================================
[2026-10-25 00:19:05,019.019 INFO    ] Launching Daemon at Sun Oct 25 00:19:05 IST 2026
[2026-10-25 00:19:05,030.030 INFO    ] ================================================
[2026-10-25 00:19:05,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:19:05
[2026-10-25 00:19:06,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:19:06,634.634 INFO    ] Initializing speech engine...
[2026-10-25 00:19:06,644.644 INFO    ] 2026-10-25 00:19:06
[2026-10-25 00:19:06,916.916 INFO    ] 2026-10-25 00:19:06
[2026-10-25 00:19:06,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:19:07,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:19:07,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:19:07,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:19:07,425.425 INFO    ] time= 25/10/2026 00:19:07
[2026-10-25 00:19:07,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:19:07,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:19:07,621.621 INFO    ] No existing commands found in stream
[2026-10-25 00:19:12,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:19:12,648.648 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 00:19:13,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:19:13,934.934 INFO    ] Checking for system updates...
[2026-10-25 00:19:13,972.972 INFO    ] 200
[2026-10-25 00:19:13,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:14,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:14,033.033 INFO    ] No update needed
[2026-10-25 00:19:14,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 00:19:14,071.071 INFO    ] 200
[2026-10-25 00:19:14,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:14,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:19:14,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:14,165.165 INFO    ] No camera update needed
[2026-10-25 00:19:14,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:19:14,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:19:14,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:19:14,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:19:16,220.220 INFO    ] ================================================
[2026-10-25 00:19:16,235.235 INFO    ] Launching Daemon at Sun Oct 25 00:19:16 IST 2026
[2026-10-25 00:19:16,246.246 INFO    ] ================================================
[2026-10-25 00:19:16,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:19:16
[2026-10-25 00:19:17,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:19:17,693.693 INFO    ] Initializing speech engine...
[2026-10-25 00:19:17,703.703 INFO    ] 2026-10-25 00:19:17
[2026-10-25 00:19:17,963.963 INFO    ] 2026-10-25 00:19:17
[2026-10-25 00:19:18,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:19:18,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:19:18,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:19:18,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:19:18,430.430 INFO    ] time= 25/10/2026 00:19:18
[2026-10-25 00:19:18,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:19:18,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:19:18,629.629 INFO    ] No existing commands found in stream
[2026-10-25 00:19:23,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:19:23,662.662 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 00:19:24,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:19:24,290.290 INFO    ] Checking for system updates...
[2026-10-25 00:19:24,327.327 INFO    ] 200
[2026-10-25 00:19:24,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:24,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:19:24,388.388 INFO    ] No update needed
[2026-10-25 00:19:24,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 00:19:24,425.425 INFO    ] 200
[2026-10-25 00:19:24,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:24,468.468 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:19:24,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:19:24,529.529 INFO    ] No camera update needed
[2026-10-25 00:19:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:19:24,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:19:24,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:19:24,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:19:26,583.583 INFO    ] ================================================
[2026-10-25 00:19:26,598.598 INFO    ] Launching Daemon at Sun Oct 25 00:19:26 IST 2026
[2026-10-25 00:19:26,609.609 INFO    ] ================================================
[2026-10-25 00:19:27,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:19:27
[2026-10-25 00:19:27,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:19:28,184.184 INFO    ] Initializing speech engine...
[2026-10-25 00:19:28,204.204 INFO    ] 2026-10-25 00:19:28
[2026-10-25 00:19:28,470.470 INFO    ] 2026-10-25 00:19:28
[2026-10-25 00:19:28,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:19:28,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:19:28,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:19:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:19:28,862.862 INFO    ] time= 25/10/2026 00:19:28
[2026-10-25 00:19:28,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:19:28,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:19:28,971.971 INFO    ] No existing commands found in stream
[2026-10-25 00:19:33,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:19:33,989.989 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 00:19:37,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:19:37,708.708 INFO    ] Checking for system updates...
[2026-10-25 00:19:37,747.747 INFO    ] 200
[2026-10-25 00:19:37,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:37,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:37,811.811 INFO    ] No update needed
[2026-10-25 00:19:37,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 00:19:37,851.851 INFO    ] 200
[2026-10-25 00:19:37,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:37,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:19:37,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:37,930.930 INFO    ] No camera update needed
[2026-10-25 00:19:37,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:19:37,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:19:37,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:19:37,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:19:39,986.986 INFO    ] ================================================
[2026-10-25 00:19:40,001.001 INFO    ] Launching Daemon at Sun Oct 25 00:19:39 IST 2026
[2026-10-25 00:19:40,012.012 INFO    ] ================================================
[2026-10-25 00:19:40,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:19:40
[2026-10-25 00:19:41,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:19:41,607.607 INFO    ] Initializing speech engine...
[2026-10-25 00:19:41,615.615 INFO    ] 2026-10-25 00:19:41
[2026-10-25 00:19:41,906.906 INFO    ] 2026-10-25 00:19:41
[2026-10-25 00:19:42,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:19:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:19:42,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:19:42,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:19:42,450.450 INFO    ] time= 25/10/2026 00:19:42
[2026-10-25 00:19:42,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:19:42,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:19:42,608.608 INFO    ] No existing commands found in stream
[2026-10-25 00:19:47,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:19:47,633.633 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 00:19:51,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:19:51,797.797 INFO    ] Checking for system updates...
[2026-10-25 00:19:51,835.835 INFO    ] 200
[2026-10-25 00:19:51,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:51,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:51,897.897 INFO    ] No update needed
[2026-10-25 00:19:51,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 00:19:51,934.934 INFO    ] 200
[2026-10-25 00:19:51,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:19:51,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:19:52,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:19:52,024.024 INFO    ] No camera update needed
[2026-10-25 00:19:52,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:19:52,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:19:52,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:19:52,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:19:54,079.079 INFO    ] ================================================
[2026-10-25 00:19:54,095.095 INFO    ] Launching Daemon at Sun Oct 25 00:19:54 IST 2026
[2026-10-25 00:19:54,105.105 INFO    ] ================================================
[2026-10-25 00:19:54,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:19:54
[2026-10-25 00:19:55,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:19:55,716.716 INFO    ] Initializing speech engine...
[2026-10-25 00:19:55,722.722 INFO    ] 2026-10-25 00:19:55
[2026-10-25 00:19:55,997.997 INFO    ] 2026-10-25 00:19:55
[2026-10-25 00:19:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:19:56,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:19:56,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:19:56,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:19:56,394.394 INFO    ] time= 25/10/2026 00:19:56
[2026-10-25 00:19:56,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:19:56,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:19:56,477.477 INFO    ] No existing commands found in stream
[2026-10-25 00:20:01,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:20:01,495.495 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 00:20:07,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:20:07,729.729 INFO    ] Checking for system updates...
[2026-10-25 00:20:07,765.765 INFO    ] 200
[2026-10-25 00:20:07,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:07,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:20:07,824.824 INFO    ] No update needed
[2026-10-25 00:20:07,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 00:20:07,864.864 INFO    ] 200
[2026-10-25 00:20:07,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:07,914.914 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:20:07,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:20:07,961.961 INFO    ] No camera update needed
[2026-10-25 00:20:07,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:20:07,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:20:07,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:20:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:20:10,015.015 INFO    ] ================================================
[2026-10-25 00:20:10,030.030 INFO    ] Launching Daemon at Sun Oct 25 00:20:10 IST 2026
[2026-10-25 00:20:10,041.041 INFO    ] ================================================
[2026-10-25 00:20:10,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:20:10
[2026-10-25 00:20:11,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:20:11,469.469 INFO    ] Initializing speech engine...
[2026-10-25 00:20:11,478.478 INFO    ] 2026-10-25 00:20:11
[2026-10-25 00:20:11,725.725 INFO    ] 2026-10-25 00:20:11
[2026-10-25 00:20:11,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:20:11,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:20:12,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:20:12,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:20:12,189.189 INFO    ] time= 25/10/2026 00:20:12
[2026-10-25 00:20:12,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:20:12,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:20:12,386.386 INFO    ] No existing commands found in stream
[2026-10-25 00:20:17,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:20:17,415.415 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 00:20:18,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:20:18,078.078 INFO    ] Checking for system updates...
[2026-10-25 00:20:18,114.114 INFO    ] 200
[2026-10-25 00:20:18,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:18,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:20:18,174.174 INFO    ] No update needed
[2026-10-25 00:20:18,177.177 INFO    ] Checking for camera pi updates...
[2026-10-25 00:20:18,212.212 INFO    ] 200
[2026-10-25 00:20:18,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:18,254.254 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:20:18,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:20:18,311.311 INFO    ] No camera update needed
[2026-10-25 00:20:18,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:20:18,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:20:18,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:20:18,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:20:20,365.365 INFO    ] ================================================
[2026-10-25 00:20:20,381.381 INFO    ] Launching Daemon at Sun Oct 25 00:20:20 IST 2026
[2026-10-25 00:20:20,391.391 INFO    ] ================================================
[2026-10-25 00:20:20,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:20:20
[2026-10-25 00:20:21,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:20:21,803.803 INFO    ] Initializing speech engine...
[2026-10-25 00:20:21,822.822 INFO    ] 2026-10-25 00:20:21
[2026-10-25 00:20:22,067.067 INFO    ] 2026-10-25 00:20:22
[2026-10-25 00:20:22,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:20:22,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:20:22,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:20:22,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:20:22,562.562 INFO    ] time= 25/10/2026 00:20:22
[2026-10-25 00:20:22,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:20:22,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:20:22,709.709 INFO    ] No existing commands found in stream
[2026-10-25 00:20:27,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:20:27,748.748 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 00:20:32,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:20:32,079.079 INFO    ] Checking for system updates...
[2026-10-25 00:20:32,119.119 INFO    ] 200
[2026-10-25 00:20:32,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:32,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:32,193.193 INFO    ] No update needed
[2026-10-25 00:20:32,195.195 INFO    ] Checking for camera pi updates...
[2026-10-25 00:20:32,233.233 INFO    ] 200
[2026-10-25 00:20:32,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:32,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:20:32,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:32,321.321 INFO    ] No camera update needed
[2026-10-25 00:20:32,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:20:32,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:20:32,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:20:32,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:20:34,378.378 INFO    ] ================================================
[2026-10-25 00:20:34,393.393 INFO    ] Launching Daemon at Sun Oct 25 00:20:34 IST 2026
[2026-10-25 00:20:34,403.403 INFO    ] ================================================
[2026-10-25 00:20:34,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:20:34
[2026-10-25 00:20:35,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:20:35,855.855 INFO    ] Initializing speech engine...
[2026-10-25 00:20:35,864.864 INFO    ] 2026-10-25 00:20:35
[2026-10-25 00:20:36,114.114 INFO    ] 2026-10-25 00:20:36
[2026-10-25 00:20:36,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:20:36,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:20:36,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:20:36,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:20:36,588.588 INFO    ] time= 25/10/2026 00:20:36
[2026-10-25 00:20:36,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:20:36,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:20:36,797.797 INFO    ] No existing commands found in stream
[2026-10-25 00:20:41,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:20:41,830.830 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 00:20:46,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:20:46,037.037 INFO    ] Checking for system updates...
[2026-10-25 00:20:46,073.073 INFO    ] 200
[2026-10-25 00:20:46,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:46,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:46,137.137 INFO    ] No update needed
[2026-10-25 00:20:46,140.140 INFO    ] Checking for camera pi updates...
[2026-10-25 00:20:46,177.177 INFO    ] 200
[2026-10-25 00:20:46,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:46,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:20:46,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:46,273.273 INFO    ] No camera update needed
[2026-10-25 00:20:46,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:20:46,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:20:46,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:20:46,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:20:48,328.328 INFO    ] ================================================
[2026-10-25 00:20:48,343.343 INFO    ] Launching Daemon at Sun Oct 25 00:20:48 IST 2026
[2026-10-25 00:20:48,354.354 INFO    ] ================================================
[2026-10-25 00:20:48,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:20:48
[2026-10-25 00:20:49,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:20:49,846.846 INFO    ] Initializing speech engine...
[2026-10-25 00:20:49,854.854 INFO    ] 2026-10-25 00:20:49
[2026-10-25 00:20:50,112.112 INFO    ] 2026-10-25 00:20:50
[2026-10-25 00:20:50,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:20:50,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:20:50,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:20:50,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:20:50,569.569 INFO    ] time= 25/10/2026 00:20:50
[2026-10-25 00:20:50,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:20:50,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:20:50,789.789 INFO    ] No existing commands found in stream
[2026-10-25 00:20:55,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:20:55,819.819 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 00:20:56,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:20:56,638.638 INFO    ] Checking for system updates...
[2026-10-25 00:20:56,675.675 INFO    ] 200
[2026-10-25 00:20:56,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:56,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:56,734.734 INFO    ] No update needed
[2026-10-25 00:20:56,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 00:20:56,771.771 INFO    ] 200
[2026-10-25 00:20:56,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:20:56,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:20:56,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:20:56,852.852 INFO    ] No camera update needed
[2026-10-25 00:20:56,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:20:56,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:20:56,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:20:56,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:20:58,907.907 INFO    ] ================================================
[2026-10-25 00:20:58,922.922 INFO    ] Launching Daemon at Sun Oct 25 00:20:58 IST 2026
[2026-10-25 00:20:58,932.932 INFO    ] ================================================
[2026-10-25 00:20:59,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:20:59
[2026-10-25 00:21:00,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:00,389.389 INFO    ] Initializing speech engine...
[2026-10-25 00:21:00,396.396 INFO    ] 2026-10-25 00:21:00
[2026-10-25 00:21:00,643.643 INFO    ] 2026-10-25 00:21:00
[2026-10-25 00:21:00,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:00,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:00,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:01,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:01,095.095 INFO    ] time= 25/10/2026 00:21:01
[2026-10-25 00:21:01,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:01,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:01,258.258 INFO    ] No existing commands found in stream
[2026-10-25 00:21:06,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:21:06,273.273 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 00:21:06,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:21:06,949.949 INFO    ] Checking for system updates...
[2026-10-25 00:21:06,988.988 INFO    ] 200
[2026-10-25 00:21:06,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:07,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:07,047.047 INFO    ] No update needed
[2026-10-25 00:21:07,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 00:21:07,087.087 INFO    ] 200
[2026-10-25 00:21:07,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:07,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:21:07,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:07,179.179 INFO    ] No camera update needed
[2026-10-25 00:21:07,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:21:07,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:21:07,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:21:07,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:21:09,236.236 INFO    ] ================================================
[2026-10-25 00:21:09,251.251 INFO    ] Launching Daemon at Sun Oct 25 00:21:09 IST 2026
[2026-10-25 00:21:09,262.262 INFO    ] ================================================
[2026-10-25 00:21:09,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:21:09
[2026-10-25 00:21:10,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:10,666.666 INFO    ] Initializing speech engine...
[2026-10-25 00:21:10,689.689 INFO    ] 2026-10-25 00:21:10
[2026-10-25 00:21:10,944.944 INFO    ] 2026-10-25 00:21:10
[2026-10-25 00:21:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:11,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:11,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:11,427.427 INFO    ] time= 25/10/2026 00:21:11
[2026-10-25 00:21:11,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:11,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:11,578.578 INFO    ] No existing commands found in stream
[2026-10-25 00:21:16,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:21:16,593.593 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 00:21:17,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:21:17,168.168 INFO    ] Checking for system updates...
[2026-10-25 00:21:17,207.207 INFO    ] 200
[2026-10-25 00:21:17,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:17,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:21:17,271.271 INFO    ] No update needed
[2026-10-25 00:21:17,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 00:21:17,308.308 INFO    ] 200
[2026-10-25 00:21:17,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:17,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:21:17,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:21:17,404.404 INFO    ] No camera update needed
[2026-10-25 00:21:17,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:21:17,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:21:17,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:21:17,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:21:19,461.461 INFO    ] ================================================
[2026-10-25 00:21:19,476.476 INFO    ] Launching Daemon at Sun Oct 25 00:21:19 IST 2026
[2026-10-25 00:21:19,486.486 INFO    ] ================================================
[2026-10-25 00:21:20,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:21:20
[2026-10-25 00:21:20,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:20,938.938 INFO    ] Initializing speech engine...
[2026-10-25 00:21:20,956.956 INFO    ] 2026-10-25 00:21:20
[2026-10-25 00:21:21,230.230 INFO    ] 2026-10-25 00:21:21
[2026-10-25 00:21:21,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:21,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:21,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:21,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:21,714.714 INFO    ] time= 25/10/2026 00:21:21
[2026-10-25 00:21:21,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:21,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:21,869.869 INFO    ] No existing commands found in stream
[2026-10-25 00:21:26,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:21:26,895.895 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 00:21:28,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:21:28,815.815 INFO    ] Checking for system updates...
[2026-10-25 00:21:28,855.855 INFO    ] 200
[2026-10-25 00:21:28,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:28,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:21:28,915.915 INFO    ] No update needed
[2026-10-25 00:21:28,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 00:21:28,956.956 INFO    ] 200
[2026-10-25 00:21:28,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:29,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:21:29,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:21:29,059.059 INFO    ] No camera update needed
[2026-10-25 00:21:29,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:21:29,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:21:29,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:21:29,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:21:31,118.118 INFO    ] ================================================
[2026-10-25 00:21:31,134.134 INFO    ] Launching Daemon at Sun Oct 25 00:21:31 IST 2026
[2026-10-25 00:21:31,145.145 INFO    ] ================================================
[2026-10-25 00:21:31,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:21:31
[2026-10-25 00:21:32,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:32,711.711 INFO    ] Initializing speech engine...
[2026-10-25 00:21:32,719.719 INFO    ] 2026-10-25 00:21:32
[2026-10-25 00:21:32,995.995 INFO    ] 2026-10-25 00:21:32
[2026-10-25 00:21:33,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:33,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:33,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:33,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:33,468.468 INFO    ] time= 25/10/2026 00:21:33
[2026-10-25 00:21:33,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:33,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:33,668.668 INFO    ] No existing commands found in stream
[2026-10-25 00:21:38,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:21:38,701.701 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 00:21:42,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:21:42,791.791 INFO    ] Checking for system updates...
[2026-10-25 00:21:42,826.826 INFO    ] 200
[2026-10-25 00:21:42,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:42,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:42,891.891 INFO    ] No update needed
[2026-10-25 00:21:42,893.893 INFO    ] Checking for camera pi updates...
[2026-10-25 00:21:42,928.928 INFO    ] 200
[2026-10-25 00:21:42,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:42,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:21:43,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:43,132.132 INFO    ] No camera update needed
[2026-10-25 00:21:43,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:21:43,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:21:43,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:21:43,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:21:45,188.188 INFO    ] ================================================
[2026-10-25 00:21:45,203.203 INFO    ] Launching Daemon at Sun Oct 25 00:21:45 IST 2026
[2026-10-25 00:21:45,214.214 INFO    ] ================================================
[2026-10-25 00:21:45,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:21:45
[2026-10-25 00:21:46,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:46,657.657 INFO    ] Initializing speech engine...
[2026-10-25 00:21:46,665.665 INFO    ] 2026-10-25 00:21:46
[2026-10-25 00:21:46,912.912 INFO    ] 2026-10-25 00:21:46
[2026-10-25 00:21:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:47,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:47,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:47,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:47,387.387 INFO    ] time= 25/10/2026 00:21:47
[2026-10-25 00:21:47,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:47,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:47,557.557 INFO    ] No existing commands found in stream
[2026-10-25 00:21:52,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:21:52,597.597 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 00:21:53,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:21:53,365.365 INFO    ] Checking for system updates...
[2026-10-25 00:21:53,401.401 INFO    ] 200
[2026-10-25 00:21:53,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:53,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:53,464.464 INFO    ] No update needed
[2026-10-25 00:21:53,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 00:21:53,503.503 INFO    ] 200
[2026-10-25 00:21:53,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:21:53,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:21:53,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:21:53,621.621 INFO    ] No camera update needed
[2026-10-25 00:21:53,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:21:53,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:21:53,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:21:53,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:21:55,677.677 INFO    ] ================================================
[2026-10-25 00:21:55,692.692 INFO    ] Launching Daemon at Sun Oct 25 00:21:55 IST 2026
[2026-10-25 00:21:55,703.703 INFO    ] ================================================
[2026-10-25 00:21:56,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:21:56
[2026-10-25 00:21:56,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:21:57,138.138 INFO    ] Initializing speech engine...
[2026-10-25 00:21:57,160.160 INFO    ] 2026-10-25 00:21:57
[2026-10-25 00:21:57,415.415 INFO    ] 2026-10-25 00:21:57
[2026-10-25 00:21:57,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:21:57,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:21:57,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:21:57,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:21:57,888.888 INFO    ] time= 25/10/2026 00:21:57
[2026-10-25 00:21:57,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:21:57,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:21:58,096.096 INFO    ] No existing commands found in stream
[2026-10-25 00:22:03,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:22:03,126.126 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 00:22:03,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:22:03,879.879 INFO    ] Checking for system updates...
[2026-10-25 00:22:03,915.915 INFO    ] 200
[2026-10-25 00:22:03,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:03,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:22:03,974.974 INFO    ] No update needed
[2026-10-25 00:22:03,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 00:22:04,018.018 INFO    ] 200
[2026-10-25 00:22:04,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:04,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:22:04,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:22:04,130.130 INFO    ] No camera update needed
[2026-10-25 00:22:04,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:22:04,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:22:04,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:22:04,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:22:06,186.186 INFO    ] ================================================
[2026-10-25 00:22:06,201.201 INFO    ] Launching Daemon at Sun Oct 25 00:22:06 IST 2026
[2026-10-25 00:22:06,212.212 INFO    ] ================================================
[2026-10-25 00:22:06,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:22:06
[2026-10-25 00:22:07,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:22:07,621.621 INFO    ] Initializing speech engine...
[2026-10-25 00:22:07,627.627 INFO    ] 2026-10-25 00:22:07
[2026-10-25 00:22:07,919.919 INFO    ] 2026-10-25 00:22:07
[2026-10-25 00:22:07,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:22:08,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:22:08,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:22:08,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:22:08,330.330 INFO    ] time= 25/10/2026 00:22:08
[2026-10-25 00:22:08,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:22:08,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:22:08,487.487 INFO    ] No existing commands found in stream
[2026-10-25 00:22:13,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:22:13,515.515 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 00:22:15,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:22:15,083.083 INFO    ] Checking for system updates...
[2026-10-25 00:22:15,122.122 INFO    ] 200
[2026-10-25 00:22:15,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:15,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:15,180.180 INFO    ] No update needed
[2026-10-25 00:22:15,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 00:22:15,219.219 INFO    ] 200
[2026-10-25 00:22:15,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:15,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:22:15,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:15,314.314 INFO    ] No camera update needed
[2026-10-25 00:22:15,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:22:15,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:22:15,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:22:15,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:22:17,368.368 INFO    ] ================================================
[2026-10-25 00:22:17,383.383 INFO    ] Launching Daemon at Sun Oct 25 00:22:17 IST 2026
[2026-10-25 00:22:17,394.394 INFO    ] ================================================
[2026-10-25 00:22:17,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:22:17
[2026-10-25 00:22:18,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:22:18,791.791 INFO    ] Initializing speech engine...
[2026-10-25 00:22:18,800.800 INFO    ] 2026-10-25 00:22:18
[2026-10-25 00:22:19,090.090 INFO    ] 2026-10-25 00:22:19
[2026-10-25 00:22:19,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:22:19,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:22:19,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:22:19,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:22:19,498.498 INFO    ] time= 25/10/2026 00:22:19
[2026-10-25 00:22:19,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:22:19,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:22:19,583.583 INFO    ] No existing commands found in stream
[2026-10-25 00:22:24,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:22:24,601.601 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 00:22:28,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:22:28,502.502 INFO    ] Checking for system updates...
[2026-10-25 00:22:28,541.541 INFO    ] 200
[2026-10-25 00:22:28,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:28,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:28,604.604 INFO    ] No update needed
[2026-10-25 00:22:28,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 00:22:28,640.640 INFO    ] 200
[2026-10-25 00:22:28,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:28,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:22:28,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:28,732.732 INFO    ] No camera update needed
[2026-10-25 00:22:28,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:22:28,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:22:28,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:22:28,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:22:30,786.786 INFO    ] ================================================
[2026-10-25 00:22:30,802.802 INFO    ] Launching Daemon at Sun Oct 25 00:22:30 IST 2026
[2026-10-25 00:22:30,813.813 INFO    ] ================================================
[2026-10-25 00:22:31,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:22:31
[2026-10-25 00:22:32,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:22:32,269.269 INFO    ] Initializing speech engine...
[2026-10-25 00:22:32,278.278 INFO    ] 2026-10-25 00:22:32
[2026-10-25 00:22:32,566.566 INFO    ] 2026-10-25 00:22:32
[2026-10-25 00:22:32,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:22:32,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:22:32,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:22:33,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:22:33,023.023 INFO    ] time= 25/10/2026 00:22:33
[2026-10-25 00:22:33,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:22:33,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:22:33,214.214 INFO    ] No existing commands found in stream
[2026-10-25 00:22:38,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:22:38,242.242 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 00:22:39,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:22:39,238.238 INFO    ] Checking for system updates...
[2026-10-25 00:22:39,276.276 INFO    ] 200
[2026-10-25 00:22:39,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:39,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:22:39,337.337 INFO    ] No update needed
[2026-10-25 00:22:39,339.339 INFO    ] Checking for camera pi updates...
[2026-10-25 00:22:39,373.373 INFO    ] 200
[2026-10-25 00:22:39,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:39,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:22:39,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:22:39,477.477 INFO    ] No camera update needed
[2026-10-25 00:22:39,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:22:39,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:22:39,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:22:39,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:22:41,533.533 INFO    ] ================================================
[2026-10-25 00:22:41,548.548 INFO    ] Launching Daemon at Sun Oct 25 00:22:41 IST 2026
[2026-10-25 00:22:41,559.559 INFO    ] ================================================
[2026-10-25 00:22:42,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:22:42
[2026-10-25 00:22:42,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:22:42,958.958 INFO    ] Initializing speech engine...
[2026-10-25 00:22:42,967.967 INFO    ] 2026-10-25 00:22:42
[2026-10-25 00:22:43,257.257 INFO    ] 2026-10-25 00:22:43
[2026-10-25 00:22:43,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:22:43,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:22:43,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:22:43,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:22:43,668.668 INFO    ] time= 25/10/2026 00:22:43
[2026-10-25 00:22:43,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:22:43,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:22:43,838.838 INFO    ] No existing commands found in stream
[2026-10-25 00:22:48,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:22:48,866.866 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 00:22:50,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:22:50,352.352 INFO    ] Checking for system updates...
[2026-10-25 00:22:50,388.388 INFO    ] 200
[2026-10-25 00:22:50,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:50,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:50,454.454 INFO    ] No update needed
[2026-10-25 00:22:50,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 00:22:50,490.490 INFO    ] 200
[2026-10-25 00:22:50,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:22:50,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:22:50,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:22:50,596.596 INFO    ] No camera update needed
[2026-10-25 00:22:50,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:22:50,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:22:50,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:22:50,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:22:52,652.652 INFO    ] ================================================
[2026-10-25 00:22:52,667.667 INFO    ] Launching Daemon at Sun Oct 25 00:22:52 IST 2026
[2026-10-25 00:22:52,678.678 INFO    ] ================================================
[2026-10-25 00:22:53,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:22:53
[2026-10-25 00:22:53,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:22:54,074.074 INFO    ] Initializing speech engine...
[2026-10-25 00:22:54,096.096 INFO    ] 2026-10-25 00:22:54
[2026-10-25 00:22:54,353.353 INFO    ] 2026-10-25 00:22:54
[2026-10-25 00:22:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:22:54,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:22:54,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:22:54,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:22:54,852.852 INFO    ] time= 25/10/2026 00:22:54
[2026-10-25 00:22:54,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:22:54,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:22:55,054.054 INFO    ] No existing commands found in stream
[2026-10-25 00:23:00,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:23:00,082.082 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 00:23:02,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:23:02,026.026 INFO    ] Checking for system updates...
[2026-10-25 00:23:02,071.071 INFO    ] 200
[2026-10-25 00:23:02,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:02,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:02,151.151 INFO    ] No update needed
[2026-10-25 00:23:02,155.155 INFO    ] Checking for camera pi updates...
[2026-10-25 00:23:02,196.196 INFO    ] 200
[2026-10-25 00:23:02,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:02,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:23:02,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:02,301.301 INFO    ] No camera update needed
[2026-10-25 00:23:02,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:23:02,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:23:02,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:23:02,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:23:04,372.372 INFO    ] ================================================
[2026-10-25 00:23:04,387.387 INFO    ] Launching Daemon at Sun Oct 25 00:23:04 IST 2026
[2026-10-25 00:23:04,397.397 INFO    ] ================================================
[2026-10-25 00:23:04,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:23:04
[2026-10-25 00:23:05,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:23:05,862.862 INFO    ] Initializing speech engine...
[2026-10-25 00:23:05,873.873 INFO    ] 2026-10-25 00:23:05
[2026-10-25 00:23:06,131.131 INFO    ] 2026-10-25 00:23:06
[2026-10-25 00:23:06,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:23:06,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:23:06,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:23:06,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:23:06,617.617 INFO    ] time= 25/10/2026 00:23:06
[2026-10-25 00:23:06,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:23:06,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:23:06,806.806 INFO    ] No existing commands found in stream
[2026-10-25 00:23:11,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:23:11,836.836 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 00:23:13,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:23:13,950.950 INFO    ] Checking for system updates...
[2026-10-25 00:23:13,987.987 INFO    ] 200
[2026-10-25 00:23:13,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:14,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:23:14,045.045 INFO    ] No update needed
[2026-10-25 00:23:14,047.047 INFO    ] Checking for camera pi updates...
[2026-10-25 00:23:14,082.082 INFO    ] 200
[2026-10-25 00:23:14,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:14,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:23:14,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:23:14,180.180 INFO    ] No camera update needed
[2026-10-25 00:23:14,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:23:14,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:23:14,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:23:14,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:23:16,235.235 INFO    ] ================================================
[2026-10-25 00:23:16,250.250 INFO    ] Launching Daemon at Sun Oct 25 00:23:16 IST 2026
[2026-10-25 00:23:16,260.260 INFO    ] ================================================
[2026-10-25 00:23:16,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:23:16
[2026-10-25 00:23:17,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:23:17,661.661 INFO    ] Initializing speech engine...
[2026-10-25 00:23:17,674.674 INFO    ] 2026-10-25 00:23:17
[2026-10-25 00:23:17,937.937 INFO    ] 2026-10-25 00:23:17
[2026-10-25 00:23:17,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:23:18,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:23:18,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:23:18,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:23:18,411.411 INFO    ] time= 25/10/2026 00:23:18
[2026-10-25 00:23:18,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:23:18,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:23:18,614.614 INFO    ] No existing commands found in stream
[2026-10-25 00:23:23,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:23:23,649.649 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 00:23:26,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:23:26,550.550 INFO    ] Checking for system updates...
[2026-10-25 00:23:26,593.593 INFO    ] 200
[2026-10-25 00:23:26,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:26,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:26,661.661 INFO    ] No update needed
[2026-10-25 00:23:26,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 00:23:26,705.705 INFO    ] 200
[2026-10-25 00:23:26,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:26,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:23:26,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:26,820.820 INFO    ] No camera update needed
[2026-10-25 00:23:26,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:23:26,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:23:26,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:23:26,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:23:28,877.877 INFO    ] ================================================
[2026-10-25 00:23:28,892.892 INFO    ] Launching Daemon at Sun Oct 25 00:23:28 IST 2026
[2026-10-25 00:23:28,903.903 INFO    ] ================================================
[2026-10-25 00:23:29,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:23:29
[2026-10-25 00:23:30,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:23:30,321.321 INFO    ] Initializing speech engine...
[2026-10-25 00:23:30,327.327 INFO    ] 2026-10-25 00:23:30
[2026-10-25 00:23:30,584.584 INFO    ] 2026-10-25 00:23:30
[2026-10-25 00:23:30,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:23:30,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:23:30,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:23:31,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:23:31,083.083 INFO    ] time= 25/10/2026 00:23:31
[2026-10-25 00:23:31,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:23:31,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:23:31,260.260 INFO    ] No existing commands found in stream
[2026-10-25 00:23:36,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:23:36,289.289 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 00:23:36,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:23:36,992.992 INFO    ] Checking for system updates...
[2026-10-25 00:23:37,035.035 INFO    ] 200
[2026-10-25 00:23:37,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:37,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:37,094.094 INFO    ] No update needed
[2026-10-25 00:23:37,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 00:23:37,130.130 INFO    ] 200
[2026-10-25 00:23:37,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:37,175.175 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:23:37,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:23:37,409.409 INFO    ] No camera update needed
[2026-10-25 00:23:37,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:23:37,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:23:37,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:23:37,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:23:39,466.466 INFO    ] ================================================
[2026-10-25 00:23:39,481.481 INFO    ] Launching Daemon at Sun Oct 25 00:23:39 IST 2026
[2026-10-25 00:23:39,493.493 INFO    ] ================================================
[2026-10-25 00:23:40,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:23:40
[2026-10-25 00:23:40,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:23:40,915.915 INFO    ] Initializing speech engine...
[2026-10-25 00:23:40,937.937 INFO    ] 2026-10-25 00:23:40
[2026-10-25 00:23:41,187.187 INFO    ] 2026-10-25 00:23:41
[2026-10-25 00:23:41,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:23:41,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:23:41,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:23:41,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:23:41,739.739 INFO    ] time= 25/10/2026 00:23:41
[2026-10-25 00:23:41,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:23:41,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:23:41,884.884 INFO    ] No existing commands found in stream
[2026-10-25 00:23:46,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:23:46,906.906 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 00:23:50,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:23:50,658.658 INFO    ] Checking for system updates...
[2026-10-25 00:23:50,695.695 INFO    ] 200
[2026-10-25 00:23:50,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:50,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:23:50,754.754 INFO    ] No update needed
[2026-10-25 00:23:50,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 00:23:50,795.795 INFO    ] 200
[2026-10-25 00:23:50,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:23:50,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:23:51,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:23:51,013.013 INFO    ] No camera update needed
[2026-10-25 00:23:51,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:23:51,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:23:51,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:23:51,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:23:53,072.072 INFO    ] ================================================
[2026-10-25 00:23:53,088.088 INFO    ] Launching Daemon at Sun Oct 25 00:23:53 IST 2026
[2026-10-25 00:23:53,100.100 INFO    ] ================================================
[2026-10-25 00:23:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:23:53
[2026-10-25 00:23:54,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:23:54,734.734 INFO    ] Initializing speech engine...
[2026-10-25 00:23:54,743.743 INFO    ] 2026-10-25 00:23:54
[2026-10-25 00:23:55,040.040 INFO    ] 2026-10-25 00:23:55
[2026-10-25 00:23:55,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:23:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:23:55,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:23:55,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:23:55,467.467 INFO    ] time= 25/10/2026 00:23:55
[2026-10-25 00:23:55,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:23:55,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:23:55,610.610 INFO    ] No existing commands found in stream
[2026-10-25 00:24:00,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:24:00,628.628 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 00:24:04,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:24:04,660.660 INFO    ] Checking for system updates...
[2026-10-25 00:24:04,696.696 INFO    ] 200
[2026-10-25 00:24:04,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:04,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:04,755.755 INFO    ] No update needed
[2026-10-25 00:24:04,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 00:24:04,791.791 INFO    ] 200
[2026-10-25 00:24:04,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:04,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:24:04,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:04,886.886 INFO    ] No camera update needed
[2026-10-25 00:24:04,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:24:04,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:24:04,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:24:04,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:24:06,941.941 INFO    ] ================================================
[2026-10-25 00:24:06,957.957 INFO    ] Launching Daemon at Sun Oct 25 00:24:06 IST 2026
[2026-10-25 00:24:06,967.967 INFO    ] ================================================
[2026-10-25 00:24:07,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:24:07
[2026-10-25 00:24:08,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:24:08,388.388 INFO    ] Initializing speech engine...
[2026-10-25 00:24:08,394.394 INFO    ] 2026-10-25 00:24:08
[2026-10-25 00:24:08,685.685 INFO    ] 2026-10-25 00:24:08
[2026-10-25 00:24:08,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:24:08,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:24:08,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:24:09,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:24:09,099.099 INFO    ] time= 25/10/2026 00:24:09
[2026-10-25 00:24:09,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:24:09,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:24:09,261.261 INFO    ] No existing commands found in stream
[2026-10-25 00:24:14,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:24:14,294.294 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 00:24:18,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:24:18,412.412 INFO    ] Checking for system updates...
[2026-10-25 00:24:18,448.448 INFO    ] 200
[2026-10-25 00:24:18,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:18,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:18,506.506 INFO    ] No update needed
[2026-10-25 00:24:18,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 00:24:18,550.550 INFO    ] 200
[2026-10-25 00:24:18,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:18,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:24:18,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:18,648.648 INFO    ] No camera update needed
[2026-10-25 00:24:18,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:24:18,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:24:18,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:24:18,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:24:20,703.703 INFO    ] ================================================
[2026-10-25 00:24:20,718.718 INFO    ] Launching Daemon at Sun Oct 25 00:24:20 IST 2026
[2026-10-25 00:24:20,728.728 INFO    ] ================================================
[2026-10-25 00:24:21,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:24:21
[2026-10-25 00:24:21,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:24:22,220.220 INFO    ] Initializing speech engine...
[2026-10-25 00:24:22,229.229 INFO    ] 2026-10-25 00:24:22
[2026-10-25 00:24:22,493.493 INFO    ] 2026-10-25 00:24:22
[2026-10-25 00:24:22,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:24:22,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:24:22,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:24:22,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:24:22,903.903 INFO    ] time= 25/10/2026 00:24:22
[2026-10-25 00:24:22,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:24:22,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:24:23,061.061 INFO    ] No existing commands found in stream
[2026-10-25 00:24:28,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:24:28,080.080 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 00:24:32,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:24:32,362.362 INFO    ] Checking for system updates...
[2026-10-25 00:24:32,400.400 INFO    ] 200
[2026-10-25 00:24:32,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:32,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:24:32,472.472 INFO    ] No update needed
[2026-10-25 00:24:32,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 00:24:32,513.513 INFO    ] 200
[2026-10-25 00:24:32,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:32,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:24:32,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:24:32,605.605 INFO    ] No camera update needed
[2026-10-25 00:24:32,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:24:32,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:24:32,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:24:32,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:24:34,663.663 INFO    ] ================================================
[2026-10-25 00:24:34,678.678 INFO    ] Launching Daemon at Sun Oct 25 00:24:34 IST 2026
[2026-10-25 00:24:34,689.689 INFO    ] ================================================
[2026-10-25 00:24:35,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:24:35
[2026-10-25 00:24:35,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:24:36,105.105 INFO    ] Initializing speech engine...
[2026-10-25 00:24:36,114.114 INFO    ] 2026-10-25 00:24:36
[2026-10-25 00:24:36,371.371 INFO    ] 2026-10-25 00:24:36
[2026-10-25 00:24:36,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:24:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:24:36,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:24:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:24:36,847.847 INFO    ] time= 25/10/2026 00:24:36
[2026-10-25 00:24:36,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:24:36,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:24:36,975.975 INFO    ] No existing commands found in stream
[2026-10-25 00:24:41,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:24:41,992.992 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 00:24:46,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:24:46,368.368 INFO    ] Checking for system updates...
[2026-10-25 00:24:46,410.410 INFO    ] 200
[2026-10-25 00:24:46,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:46,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:24:46,468.468 INFO    ] No update needed
[2026-10-25 00:24:46,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 00:24:46,505.505 INFO    ] 200
[2026-10-25 00:24:46,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:46,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:24:46,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:24:46,605.605 INFO    ] No camera update needed
[2026-10-25 00:24:46,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:24:46,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:24:46,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:24:46,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:24:48,659.659 INFO    ] ================================================
[2026-10-25 00:24:48,675.675 INFO    ] Launching Daemon at Sun Oct 25 00:24:48 IST 2026
[2026-10-25 00:24:48,686.686 INFO    ] ================================================
[2026-10-25 00:24:49,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:24:49
[2026-10-25 00:24:49,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:24:50,278.278 INFO    ] Initializing speech engine...
[2026-10-25 00:24:50,292.292 INFO    ] 2026-10-25 00:24:50
[2026-10-25 00:24:50,564.564 INFO    ] 2026-10-25 00:24:50
[2026-10-25 00:24:50,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:24:50,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:24:50,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:24:50,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:24:51,054.054 INFO    ] time= 25/10/2026 00:24:50
[2026-10-25 00:24:51,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:24:51,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:24:51,211.211 INFO    ] No existing commands found in stream
[2026-10-25 00:24:56,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:24:56,246.246 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 00:24:59,513.513 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:24:59,516.516 INFO    ] Checking for system updates...
[2026-10-25 00:24:59,553.553 INFO    ] 200
[2026-10-25 00:24:59,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:59,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:59,611.611 INFO    ] No update needed
[2026-10-25 00:24:59,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 00:24:59,648.648 INFO    ] 200
[2026-10-25 00:24:59,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:24:59,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:24:59,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:24:59,760.760 INFO    ] No camera update needed
[2026-10-25 00:24:59,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:24:59,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:24:59,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:24:59,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:25:01,828.828 INFO    ] ================================================
[2026-10-25 00:25:01,883.883 INFO    ] Launching Daemon at Sun Oct 25 00:25:01 IST 2026
[2026-10-25 00:25:01,956.956 INFO    ] ================================================
[2026-10-25 00:25:02,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:25:02
[2026-10-25 00:25:03,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:25:03,785.785 INFO    ] Initializing speech engine...
[2026-10-25 00:25:03,793.793 INFO    ] 2026-10-25 00:25:03
[2026-10-25 00:25:04,059.059 INFO    ] 2026-10-25 00:25:04
[2026-10-25 00:25:04,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:25:04,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:25:04,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:25:04,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:25:04,464.464 INFO    ] time= 25/10/2026 00:25:04
[2026-10-25 00:25:04,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:25:04,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:25:04,636.636 INFO    ] No existing commands found in stream
[2026-10-25 00:25:09,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:25:09,651.651 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 00:25:11,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:25:11,890.890 INFO    ] Checking for system updates...
[2026-10-25 00:25:11,930.930 INFO    ] 200
[2026-10-25 00:25:11,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:11,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:25:11,995.995 INFO    ] No update needed
[2026-10-25 00:25:11,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 00:25:12,035.035 INFO    ] 200
[2026-10-25 00:25:12,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:12,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:25:12,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:25:12,135.135 INFO    ] No camera update needed
[2026-10-25 00:25:12,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:25:12,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:25:12,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:25:12,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:25:14,191.191 INFO    ] ================================================
[2026-10-25 00:25:14,206.206 INFO    ] Launching Daemon at Sun Oct 25 00:25:14 IST 2026
[2026-10-25 00:25:14,218.218 INFO    ] ================================================
[2026-10-25 00:25:14,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:25:14
[2026-10-25 00:25:15,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:25:15,663.663 INFO    ] Initializing speech engine...
[2026-10-25 00:25:15,689.689 INFO    ] 2026-10-25 00:25:15
[2026-10-25 00:25:15,961.961 INFO    ] 2026-10-25 00:25:15
[2026-10-25 00:25:15,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:25:16,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:25:16,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:25:16,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:25:16,465.465 INFO    ] time= 25/10/2026 00:25:16
[2026-10-25 00:25:16,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:25:16,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:25:16,668.668 INFO    ] No existing commands found in stream
[2026-10-25 00:25:21,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:25:21,696.696 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 00:25:22,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:25:22,926.926 INFO    ] Checking for system updates...
[2026-10-25 00:25:22,963.963 INFO    ] 200
[2026-10-25 00:25:22,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:23,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:25:23,027.027 INFO    ] No update needed
[2026-10-25 00:25:23,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 00:25:23,062.062 INFO    ] 200
[2026-10-25 00:25:23,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:23,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:25:23,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:25:23,153.153 INFO    ] No camera update needed
[2026-10-25 00:25:23,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:25:23,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:25:23,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:25:23,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:25:25,209.209 INFO    ] ================================================
[2026-10-25 00:25:25,225.225 INFO    ] Launching Daemon at Sun Oct 25 00:25:25 IST 2026
[2026-10-25 00:25:25,236.236 INFO    ] ================================================
[2026-10-25 00:25:25,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:25:25
[2026-10-25 00:25:26,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:25:26,632.632 INFO    ] Initializing speech engine...
[2026-10-25 00:25:26,647.647 INFO    ] 2026-10-25 00:25:26
[2026-10-25 00:25:26,913.913 INFO    ] 2026-10-25 00:25:26
[2026-10-25 00:25:26,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:25:27,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:25:27,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:25:27,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:25:27,383.383 INFO    ] time= 25/10/2026 00:25:27
[2026-10-25 00:25:27,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:25:27,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:25:27,602.602 INFO    ] No existing commands found in stream
[2026-10-25 00:25:32,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:25:32,622.622 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 00:25:36,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:25:36,988.988 INFO    ] Checking for system updates...
[2026-10-25 00:25:37,027.027 INFO    ] 200
[2026-10-25 00:25:37,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:37,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:25:37,086.086 INFO    ] No update needed
[2026-10-25 00:25:37,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 00:25:37,123.123 INFO    ] 200
[2026-10-25 00:25:37,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:37,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:25:37,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:25:37,312.312 INFO    ] No camera update needed
[2026-10-25 00:25:37,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:25:37,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:25:37,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:25:37,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:25:39,373.373 INFO    ] ================================================
[2026-10-25 00:25:39,389.389 INFO    ] Launching Daemon at Sun Oct 25 00:25:39 IST 2026
[2026-10-25 00:25:39,400.400 INFO    ] ================================================
[2026-10-25 00:25:40,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:25:40
[2026-10-25 00:25:40,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:25:40,870.870 INFO    ] Initializing speech engine...
[2026-10-25 00:25:40,875.875 INFO    ] 2026-10-25 00:25:40
[2026-10-25 00:25:41,149.149 INFO    ] 2026-10-25 00:25:41
[2026-10-25 00:25:41,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:25:41,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:25:41,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:25:41,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:25:41,597.597 INFO    ] time= 25/10/2026 00:25:41
[2026-10-25 00:25:41,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:25:41,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:25:41,814.814 INFO    ] No existing commands found in stream
[2026-10-25 00:25:46,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:25:46,854.854 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 00:25:51,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:25:51,175.175 INFO    ] Checking for system updates...
[2026-10-25 00:25:51,211.211 INFO    ] 200
[2026-10-25 00:25:51,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:51,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:25:51,275.275 INFO    ] No update needed
[2026-10-25 00:25:51,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 00:25:51,316.316 INFO    ] 200
[2026-10-25 00:25:51,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:25:51,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:25:51,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:25:51,417.417 INFO    ] No camera update needed
[2026-10-25 00:25:51,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:25:51,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:25:51,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:25:51,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:25:53,476.476 INFO    ] ================================================
[2026-10-25 00:25:53,492.492 INFO    ] Launching Daemon at Sun Oct 25 00:25:53 IST 2026
[2026-10-25 00:25:53,504.504 INFO    ] ================================================
[2026-10-25 00:25:54,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:25:54
[2026-10-25 00:25:54,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:25:55,146.146 INFO    ] Initializing speech engine...
[2026-10-25 00:25:55,155.155 INFO    ] 2026-10-25 00:25:55
[2026-10-25 00:25:55,421.421 INFO    ] 2026-10-25 00:25:55
[2026-10-25 00:25:55,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:25:55,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:25:55,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:25:55,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:25:55,840.840 INFO    ] time= 25/10/2026 00:25:55
[2026-10-25 00:25:55,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:25:55,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:25:55,997.997 INFO    ] No existing commands found in stream
[2026-10-25 00:26:01,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:26:01,016.016 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 00:26:03,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:26:03,898.898 INFO    ] Checking for system updates...
[2026-10-25 00:26:03,933.933 INFO    ] 200
[2026-10-25 00:26:03,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:03,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:03,991.991 INFO    ] No update needed
[2026-10-25 00:26:03,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 00:26:04,030.030 INFO    ] 200
[2026-10-25 00:26:04,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:04,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:26:04,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:04,125.125 INFO    ] No camera update needed
[2026-10-25 00:26:04,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:26:04,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:26:04,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:26:04,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:26:06,181.181 INFO    ] ================================================
[2026-10-25 00:26:06,203.203 INFO    ] Launching Daemon at Sun Oct 25 00:26:06 IST 2026
[2026-10-25 00:26:06,215.215 INFO    ] ================================================
[2026-10-25 00:26:06,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:26:06
[2026-10-25 00:26:07,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:26:07,622.622 INFO    ] Initializing speech engine...
[2026-10-25 00:26:07,630.630 INFO    ] 2026-10-25 00:26:07
[2026-10-25 00:26:07,920.920 INFO    ] 2026-10-25 00:26:07
[2026-10-25 00:26:07,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:26:08,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:26:08,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:26:08,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:26:08,336.336 INFO    ] time= 25/10/2026 00:26:08
[2026-10-25 00:26:08,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:26:08,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:26:08,426.426 INFO    ] No existing commands found in stream
[2026-10-25 00:26:13,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:26:13,453.453 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 00:26:15,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:26:15,094.094 INFO    ] Checking for system updates...
[2026-10-25 00:26:15,129.129 INFO    ] 200
[2026-10-25 00:26:15,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:15,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:15,187.187 INFO    ] No update needed
[2026-10-25 00:26:15,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 00:26:15,226.226 INFO    ] 200
[2026-10-25 00:26:15,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:15,273.273 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:26:15,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:15,335.335 INFO    ] No camera update needed
[2026-10-25 00:26:15,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:26:15,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:26:15,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:26:15,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:26:17,389.389 INFO    ] ================================================
[2026-10-25 00:26:17,405.405 INFO    ] Launching Daemon at Sun Oct 25 00:26:17 IST 2026
[2026-10-25 00:26:17,416.416 INFO    ] ================================================
[2026-10-25 00:26:18,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:26:18
[2026-10-25 00:26:18,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:26:18,874.874 INFO    ] Initializing speech engine...
[2026-10-25 00:26:18,880.880 INFO    ] 2026-10-25 00:26:18
[2026-10-25 00:26:19,173.173 INFO    ] 2026-10-25 00:26:19
[2026-10-25 00:26:19,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:26:19,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:26:19,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:26:19,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:26:19,569.569 INFO    ] time= 25/10/2026 00:26:19
[2026-10-25 00:26:19,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:26:19,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:26:19,757.757 INFO    ] No existing commands found in stream
[2026-10-25 00:26:24,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:26:24,778.778 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 00:26:28,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:26:28,518.518 INFO    ] Checking for system updates...
[2026-10-25 00:26:28,558.558 INFO    ] 200
[2026-10-25 00:26:28,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:28,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:28,628.628 INFO    ] No update needed
[2026-10-25 00:26:28,631.631 INFO    ] Checking for camera pi updates...
[2026-10-25 00:26:28,667.667 INFO    ] 200
[2026-10-25 00:26:28,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:28,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:26:28,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:28,767.767 INFO    ] No camera update needed
[2026-10-25 00:26:28,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:26:28,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:26:28,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:26:28,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:26:30,824.824 INFO    ] ================================================
[2026-10-25 00:26:30,839.839 INFO    ] Launching Daemon at Sun Oct 25 00:26:30 IST 2026
[2026-10-25 00:26:30,850.850 INFO    ] ================================================
[2026-10-25 00:26:31,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:26:31
[2026-10-25 00:26:32,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:26:32,491.491 INFO    ] Initializing speech engine...
[2026-10-25 00:26:32,506.506 INFO    ] 2026-10-25 00:26:32
[2026-10-25 00:26:32,814.814 INFO    ] 2026-10-25 00:26:32
[2026-10-25 00:26:32,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:26:33,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:26:33,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:26:33,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:26:33,317.317 INFO    ] time= 25/10/2026 00:26:33
[2026-10-25 00:26:33,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:26:33,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:26:33,452.452 INFO    ] No existing commands found in stream
[2026-10-25 00:26:38,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:26:38,480.480 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 00:26:40,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:26:40,737.737 INFO    ] Checking for system updates...
[2026-10-25 00:26:40,772.772 INFO    ] 200
[2026-10-25 00:26:40,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:40,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:26:40,830.830 INFO    ] No update needed
[2026-10-25 00:26:40,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 00:26:40,866.866 INFO    ] 200
[2026-10-25 00:26:40,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:40,915.915 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:26:40,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:26:40,968.968 INFO    ] No camera update needed
[2026-10-25 00:26:40,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:26:40,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:26:40,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:26:40,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:26:43,023.023 INFO    ] ================================================
[2026-10-25 00:26:43,038.038 INFO    ] Launching Daemon at Sun Oct 25 00:26:43 IST 2026
[2026-10-25 00:26:43,049.049 INFO    ] ================================================
[2026-10-25 00:26:43,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:26:43
[2026-10-25 00:26:44,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:26:44,467.467 INFO    ] Initializing speech engine...
[2026-10-25 00:26:44,480.480 INFO    ] 2026-10-25 00:26:44
[2026-10-25 00:26:44,731.731 INFO    ] 2026-10-25 00:26:44
[2026-10-25 00:26:44,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:26:45,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:26:45,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:26:45,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:26:45,203.203 INFO    ] time= 25/10/2026 00:26:45
[2026-10-25 00:26:45,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:26:45,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:26:45,368.368 INFO    ] No existing commands found in stream
[2026-10-25 00:26:50,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:26:50,406.406 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 00:26:53,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:26:53,854.854 INFO    ] Checking for system updates...
[2026-10-25 00:26:53,889.889 INFO    ] 200
[2026-10-25 00:26:53,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:53,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:53,949.949 INFO    ] No update needed
[2026-10-25 00:26:53,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 00:26:53,985.985 INFO    ] 200
[2026-10-25 00:26:53,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:26:54,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:26:54,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:26:54,089.089 INFO    ] No camera update needed
[2026-10-25 00:26:54,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:26:54,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:26:54,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:26:54,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:26:56,153.153 INFO    ] ================================================
[2026-10-25 00:26:56,168.168 INFO    ] Launching Daemon at Sun Oct 25 00:26:56 IST 2026
[2026-10-25 00:26:56,179.179 INFO    ] ================================================
[2026-10-25 00:26:56,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:26:56
[2026-10-25 00:26:57,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:26:57,573.573 INFO    ] Initializing speech engine...
[2026-10-25 00:26:57,585.585 INFO    ] 2026-10-25 00:26:57
[2026-10-25 00:26:57,848.848 INFO    ] 2026-10-25 00:26:57
[2026-10-25 00:26:57,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:26:58,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:26:58,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:26:58,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:26:58,289.289 INFO    ] time= 25/10/2026 00:26:58
[2026-10-25 00:26:58,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:26:58,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:26:58,470.470 INFO    ] No existing commands found in stream
[2026-10-25 00:27:03,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:27:03,485.485 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 00:27:07,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:27:07,230.230 INFO    ] Checking for system updates...
[2026-10-25 00:27:07,265.265 INFO    ] 200
[2026-10-25 00:27:07,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:07,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:27:07,324.324 INFO    ] No update needed
[2026-10-25 00:27:07,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 00:27:07,361.361 INFO    ] 200
[2026-10-25 00:27:07,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:07,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:27:07,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:27:07,451.451 INFO    ] No camera update needed
[2026-10-25 00:27:07,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:27:07,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:27:07,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:27:07,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:27:09,504.504 INFO    ] ================================================
[2026-10-25 00:27:09,519.519 INFO    ] Launching Daemon at Sun Oct 25 00:27:09 IST 2026
[2026-10-25 00:27:09,530.530 INFO    ] ================================================
[2026-10-25 00:27:10,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:27:10
[2026-10-25 00:27:10,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:27:10,984.984 INFO    ] Initializing speech engine...
[2026-10-25 00:27:10,995.995 INFO    ] 2026-10-25 00:27:10
[2026-10-25 00:27:11,242.242 INFO    ] 2026-10-25 00:27:11
[2026-10-25 00:27:11,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:27:11,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:27:11,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:27:11,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:27:11,732.732 INFO    ] time= 25/10/2026 00:27:11
[2026-10-25 00:27:11,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:27:11,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:27:11,873.873 INFO    ] No existing commands found in stream
[2026-10-25 00:27:16,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:27:16,913.913 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:27:20,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:27:20,876.876 INFO    ] Checking for system updates...
[2026-10-25 00:27:20,913.913 INFO    ] 200
[2026-10-25 00:27:20,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:20,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:20,972.972 INFO    ] No update needed
[2026-10-25 00:27:20,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 00:27:21,014.014 INFO    ] 200
[2026-10-25 00:27:21,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:21,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:27:21,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:21,117.117 INFO    ] No camera update needed
[2026-10-25 00:27:21,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:27:21,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:27:21,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:27:21,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:27:23,174.174 INFO    ] ================================================
[2026-10-25 00:27:23,196.196 INFO    ] Launching Daemon at Sun Oct 25 00:27:23 IST 2026
[2026-10-25 00:27:23,207.207 INFO    ] ================================================
[2026-10-25 00:27:23,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:27:23
[2026-10-25 00:27:24,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:27:24,659.659 INFO    ] Initializing speech engine...
[2026-10-25 00:27:24,668.668 INFO    ] 2026-10-25 00:27:24
[2026-10-25 00:27:24,931.931 INFO    ] 2026-10-25 00:27:24
[2026-10-25 00:27:24,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:27:25,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:27:25,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:27:25,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:27:25,410.410 INFO    ] time= 25/10/2026 00:27:25
[2026-10-25 00:27:25,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:27:25,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:27:25,598.598 INFO    ] No existing commands found in stream
[2026-10-25 00:27:30,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:27:30,624.624 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 00:27:35,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:27:35,038.038 INFO    ] Checking for system updates...
[2026-10-25 00:27:35,074.074 INFO    ] 200
[2026-10-25 00:27:35,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:35,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:35,134.134 INFO    ] No update needed
[2026-10-25 00:27:35,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 00:27:35,169.169 INFO    ] 200
[2026-10-25 00:27:35,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:35,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:27:35,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:35,263.263 INFO    ] No camera update needed
[2026-10-25 00:27:35,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:27:35,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:27:35,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:27:35,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:27:37,322.322 INFO    ] ================================================
[2026-10-25 00:27:37,337.337 INFO    ] Launching Daemon at Sun Oct 25 00:27:37 IST 2026
[2026-10-25 00:27:37,348.348 INFO    ] ================================================
[2026-10-25 00:27:37,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:27:37
[2026-10-25 00:27:38,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:27:38,910.910 INFO    ] Initializing speech engine...
[2026-10-25 00:27:38,926.926 INFO    ] 2026-10-25 00:27:38
[2026-10-25 00:27:39,193.193 INFO    ] 2026-10-25 00:27:39
[2026-10-25 00:27:39,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:27:39,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:27:39,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:27:39,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:27:39,700.700 INFO    ] time= 25/10/2026 00:27:39
[2026-10-25 00:27:39,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:27:39,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:27:39,884.884 INFO    ] No existing commands found in stream
[2026-10-25 00:27:44,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:27:44,916.916 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 00:27:49,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:27:49,393.393 INFO    ] Checking for system updates...
[2026-10-25 00:27:49,433.433 INFO    ] 200
[2026-10-25 00:27:49,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:49,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:49,505.505 INFO    ] No update needed
[2026-10-25 00:27:49,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 00:27:49,542.542 INFO    ] 200
[2026-10-25 00:27:49,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:27:49,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:27:49,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:27:49,660.660 INFO    ] No camera update needed
[2026-10-25 00:27:49,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:27:49,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:27:49,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:27:49,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:27:51,720.720 INFO    ] ================================================
[2026-10-25 00:27:51,735.735 INFO    ] Launching Daemon at Sun Oct 25 00:27:51 IST 2026
[2026-10-25 00:27:51,746.746 INFO    ] ================================================
[2026-10-25 00:27:52,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:27:52
[2026-10-25 00:27:52,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:27:53,139.139 INFO    ] Initializing speech engine...
[2026-10-25 00:27:53,154.154 INFO    ] 2026-10-25 00:27:53
[2026-10-25 00:27:53,418.418 INFO    ] 2026-10-25 00:27:53
[2026-10-25 00:27:53,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:27:53,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:27:53,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:27:53,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:27:53,916.916 INFO    ] time= 25/10/2026 00:27:53
[2026-10-25 00:27:53,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:27:53,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:27:54,049.049 INFO    ] No existing commands found in stream
[2026-10-25 00:27:59,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:27:59,064.064 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 00:28:02,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:28:02,459.459 INFO    ] Checking for system updates...
[2026-10-25 00:28:02,518.518 INFO    ] 200
[2026-10-25 00:28:02,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:02,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:28:02,607.607 INFO    ] No update needed
[2026-10-25 00:28:02,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 00:28:02,669.669 INFO    ] 200
[2026-10-25 00:28:02,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:02,717.717 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:28:02,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:28:02,752.752 INFO    ] No camera update needed
[2026-10-25 00:28:02,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:28:02,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:28:02,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:28:02,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:28:04,807.807 INFO    ] ================================================
[2026-10-25 00:28:04,822.822 INFO    ] Launching Daemon at Sun Oct 25 00:28:04 IST 2026
[2026-10-25 00:28:04,833.833 INFO    ] ================================================
[2026-10-25 00:28:05,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:28:05
[2026-10-25 00:28:05,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:28:06,258.258 INFO    ] Initializing speech engine...
[2026-10-25 00:28:06,265.265 INFO    ] 2026-10-25 00:28:06
[2026-10-25 00:28:06,509.509 INFO    ] 2026-10-25 00:28:06
[2026-10-25 00:28:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:28:06,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:28:06,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:28:06,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:28:06,996.996 INFO    ] time= 25/10/2026 00:28:06
[2026-10-25 00:28:07,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:28:07,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:28:07,200.200 INFO    ] No existing commands found in stream
[2026-10-25 00:28:12,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:28:12,225.225 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 00:28:14,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:28:14,229.229 INFO    ] Checking for system updates...
[2026-10-25 00:28:14,265.265 INFO    ] 200
[2026-10-25 00:28:14,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:14,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:14,322.322 INFO    ] No update needed
[2026-10-25 00:28:14,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 00:28:14,359.359 INFO    ] 200
[2026-10-25 00:28:14,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:14,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:28:14,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:14,569.569 INFO    ] No camera update needed
[2026-10-25 00:28:14,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:28:14,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:28:14,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:28:14,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:28:16,626.626 INFO    ] ================================================
[2026-10-25 00:28:16,641.641 INFO    ] Launching Daemon at Sun Oct 25 00:28:16 IST 2026
[2026-10-25 00:28:16,652.652 INFO    ] ================================================
[2026-10-25 00:28:17,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:28:17
[2026-10-25 00:28:17,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:28:18,119.119 INFO    ] Initializing speech engine...
[2026-10-25 00:28:18,142.142 INFO    ] 2026-10-25 00:28:18
[2026-10-25 00:28:18,393.393 INFO    ] 2026-10-25 00:28:18
[2026-10-25 00:28:18,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:28:18,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:28:18,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:28:18,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:28:18,883.883 INFO    ] time= 25/10/2026 00:28:18
[2026-10-25 00:28:18,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:28:18,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:28:19,081.081 INFO    ] No existing commands found in stream
[2026-10-25 00:28:24,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:28:24,112.112 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:28:28,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:28:28,058.058 INFO    ] Checking for system updates...
[2026-10-25 00:28:28,093.093 INFO    ] 200
[2026-10-25 00:28:28,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:28,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:28,154.154 INFO    ] No update needed
[2026-10-25 00:28:28,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 00:28:28,191.191 INFO    ] 200
[2026-10-25 00:28:28,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:28,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:28:28,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:28,290.290 INFO    ] No camera update needed
[2026-10-25 00:28:28,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:28:28,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:28:28,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:28:28,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:28:30,345.345 INFO    ] ================================================
[2026-10-25 00:28:30,360.360 INFO    ] Launching Daemon at Sun Oct 25 00:28:30 IST 2026
[2026-10-25 00:28:30,371.371 INFO    ] ================================================
[2026-10-25 00:28:31,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:28:31
[2026-10-25 00:28:31,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:28:32,071.071 INFO    ] Initializing speech engine...
[2026-10-25 00:28:32,078.078 INFO    ] 2026-10-25 00:28:32
[2026-10-25 00:28:32,384.384 INFO    ] 2026-10-25 00:28:32
[2026-10-25 00:28:32,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:28:32,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:28:32,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:28:32,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:28:32,861.861 INFO    ] time= 25/10/2026 00:28:32
[2026-10-25 00:28:32,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:28:32,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:28:32,991.991 INFO    ] No existing commands found in stream
[2026-10-25 00:28:38,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:28:38,013.013 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 00:28:41,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:28:41,849.849 INFO    ] Checking for system updates...
[2026-10-25 00:28:41,886.886 INFO    ] 200
[2026-10-25 00:28:41,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:41,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:41,950.950 INFO    ] No update needed
[2026-10-25 00:28:41,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 00:28:41,986.986 INFO    ] 200
[2026-10-25 00:28:41,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:42,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:28:42,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:42,076.076 INFO    ] No camera update needed
[2026-10-25 00:28:42,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:28:42,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:28:42,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:28:42,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:28:44,133.133 INFO    ] ================================================
[2026-10-25 00:28:44,148.148 INFO    ] Launching Daemon at Sun Oct 25 00:28:44 IST 2026
[2026-10-25 00:28:44,158.158 INFO    ] ================================================
[2026-10-25 00:28:44,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:28:44
[2026-10-25 00:28:45,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:28:45,630.630 INFO    ] Initializing speech engine...
[2026-10-25 00:28:45,640.640 INFO    ] 2026-10-25 00:28:45
[2026-10-25 00:28:45,901.901 INFO    ] 2026-10-25 00:28:45
[2026-10-25 00:28:45,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:28:46,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:28:46,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:28:46,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:28:46,441.441 INFO    ] time= 25/10/2026 00:28:46
[2026-10-25 00:28:46,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:28:46,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:28:46,574.574 INFO    ] No existing commands found in stream
[2026-10-25 00:28:51,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:28:51,604.604 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 00:28:53,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:28:53,887.887 INFO    ] Checking for system updates...
[2026-10-25 00:28:53,923.923 INFO    ] 200
[2026-10-25 00:28:53,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:53,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:53,982.982 INFO    ] No update needed
[2026-10-25 00:28:53,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 00:28:54,018.018 INFO    ] 200
[2026-10-25 00:28:54,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:28:54,062.062 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:28:54,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:28:54,107.107 INFO    ] No camera update needed
[2026-10-25 00:28:54,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:28:54,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:28:54,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:28:54,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:28:56,163.163 INFO    ] ================================================
[2026-10-25 00:28:56,178.178 INFO    ] Launching Daemon at Sun Oct 25 00:28:56 IST 2026
[2026-10-25 00:28:56,188.188 INFO    ] ================================================
[2026-10-25 00:28:56,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:28:56
[2026-10-25 00:28:57,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:28:57,725.725 INFO    ] Initializing speech engine...
[2026-10-25 00:28:57,734.734 INFO    ] 2026-10-25 00:28:57
[2026-10-25 00:28:57,980.980 INFO    ] 2026-10-25 00:28:57
[2026-10-25 00:28:58,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:28:58,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:28:58,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:28:58,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:28:58,473.473 INFO    ] time= 25/10/2026 00:28:58
[2026-10-25 00:28:58,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:28:58,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:28:58,671.671 INFO    ] No existing commands found in stream
[2026-10-25 00:29:03,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:29:03,698.698 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 00:29:05,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:29:05,478.478 INFO    ] Checking for system updates...
[2026-10-25 00:29:05,514.514 INFO    ] 200
[2026-10-25 00:29:05,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:05,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:05,572.572 INFO    ] No update needed
[2026-10-25 00:29:05,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 00:29:05,612.612 INFO    ] 200
[2026-10-25 00:29:05,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:05,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:29:05,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:05,720.720 INFO    ] No camera update needed
[2026-10-25 00:29:05,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:29:05,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:29:05,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:29:05,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:29:07,778.778 INFO    ] ================================================
[2026-10-25 00:29:07,793.793 INFO    ] Launching Daemon at Sun Oct 25 00:29:07 IST 2026
[2026-10-25 00:29:07,804.804 INFO    ] ================================================
[2026-10-25 00:29:08,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:29:08
[2026-10-25 00:29:08,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:29:09,263.263 INFO    ] Initializing speech engine...
[2026-10-25 00:29:09,275.275 INFO    ] 2026-10-25 00:29:09
[2026-10-25 00:29:09,525.525 INFO    ] 2026-10-25 00:29:09
[2026-10-25 00:29:09,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:29:09,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:29:09,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:29:09,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:29:09,988.988 INFO    ] time= 25/10/2026 00:29:09
[2026-10-25 00:29:10,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:29:10,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:29:10,164.164 INFO    ] No existing commands found in stream
[2026-10-25 00:29:15,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:29:15,196.196 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 00:29:16,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:29:16,163.163 INFO    ] Checking for system updates...
[2026-10-25 00:29:16,203.203 INFO    ] 200
[2026-10-25 00:29:16,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:16,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:29:16,260.260 INFO    ] No update needed
[2026-10-25 00:29:16,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 00:29:16,297.297 INFO    ] 200
[2026-10-25 00:29:16,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:16,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:29:16,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:29:16,388.388 INFO    ] No camera update needed
[2026-10-25 00:29:16,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:29:16,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:29:16,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:29:16,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:29:18,443.443 INFO    ] ================================================
[2026-10-25 00:29:18,458.458 INFO    ] Launching Daemon at Sun Oct 25 00:29:18 IST 2026
[2026-10-25 00:29:18,469.469 INFO    ] ================================================
[2026-10-25 00:29:19,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:29:19
[2026-10-25 00:29:19,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:29:19,945.945 INFO    ] Initializing speech engine...
[2026-10-25 00:29:19,953.953 INFO    ] 2026-10-25 00:29:19
[2026-10-25 00:29:20,235.235 INFO    ] 2026-10-25 00:29:20
[2026-10-25 00:29:20,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:29:20,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:29:20,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:29:20,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:29:20,705.705 INFO    ] time= 25/10/2026 00:29:20
[2026-10-25 00:29:20,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:29:20,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:29:20,894.894 INFO    ] No existing commands found in stream
[2026-10-25 00:29:25,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:29:25,919.919 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 00:29:27,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:29:27,585.585 INFO    ] Checking for system updates...
[2026-10-25 00:29:27,623.623 INFO    ] 200
[2026-10-25 00:29:27,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:27,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:27,683.683 INFO    ] No update needed
[2026-10-25 00:29:27,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 00:29:27,721.721 INFO    ] 200
[2026-10-25 00:29:27,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:27,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:29:27,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:27,815.815 INFO    ] No camera update needed
[2026-10-25 00:29:27,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:29:27,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:29:27,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:29:27,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:29:29,870.870 INFO    ] ================================================
[2026-10-25 00:29:29,885.885 INFO    ] Launching Daemon at Sun Oct 25 00:29:29 IST 2026
[2026-10-25 00:29:29,897.897 INFO    ] ================================================
[2026-10-25 00:29:30,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:29:30
[2026-10-25 00:29:31,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:29:31,304.304 INFO    ] Initializing speech engine...
[2026-10-25 00:29:31,314.314 INFO    ] 2026-10-25 00:29:31
[2026-10-25 00:29:31,581.581 INFO    ] 2026-10-25 00:29:31
[2026-10-25 00:29:31,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:29:31,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:29:31,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:29:32,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:29:32,115.115 INFO    ] time= 25/10/2026 00:29:32
[2026-10-25 00:29:32,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:29:32,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:29:32,318.318 INFO    ] No existing commands found in stream
[2026-10-25 00:29:37,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:29:37,337.337 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 00:29:40,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:29:40,055.055 INFO    ] Checking for system updates...
[2026-10-25 00:29:40,092.092 INFO    ] 200
[2026-10-25 00:29:40,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:40,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:29:40,149.149 INFO    ] No update needed
[2026-10-25 00:29:40,152.152 INFO    ] Checking for camera pi updates...
[2026-10-25 00:29:40,187.187 INFO    ] 200
[2026-10-25 00:29:40,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:40,236.236 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:29:40,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:29:40,297.297 INFO    ] No camera update needed
[2026-10-25 00:29:40,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:29:40,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:29:40,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:29:40,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:29:42,357.357 INFO    ] ================================================
[2026-10-25 00:29:42,372.372 INFO    ] Launching Daemon at Sun Oct 25 00:29:42 IST 2026
[2026-10-25 00:29:42,383.383 INFO    ] ================================================
[2026-10-25 00:29:42,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:29:42
[2026-10-25 00:29:43,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:29:43,852.852 INFO    ] Initializing speech engine...
[2026-10-25 00:29:43,868.868 INFO    ] 2026-10-25 00:29:43
[2026-10-25 00:29:44,126.126 INFO    ] 2026-10-25 00:29:44
[2026-10-25 00:29:44,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:29:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:29:44,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:29:44,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:29:44,599.599 INFO    ] time= 25/10/2026 00:29:44
[2026-10-25 00:29:44,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:29:44,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:29:44,743.743 INFO    ] No existing commands found in stream
[2026-10-25 00:29:49,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:29:49,760.760 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 00:29:52,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:29:52,689.689 INFO    ] Checking for system updates...
[2026-10-25 00:29:52,726.726 INFO    ] 200
[2026-10-25 00:29:52,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:52,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:52,791.791 INFO    ] No update needed
[2026-10-25 00:29:52,794.794 INFO    ] Checking for camera pi updates...
[2026-10-25 00:29:52,828.828 INFO    ] 200
[2026-10-25 00:29:52,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:29:52,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:29:52,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:29:52,922.922 INFO    ] No camera update needed
[2026-10-25 00:29:52,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:29:52,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:29:52,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:29:52,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:29:54,977.977 INFO    ] ================================================
[2026-10-25 00:29:54,992.992 INFO    ] Launching Daemon at Sun Oct 25 00:29:54 IST 2026
[2026-10-25 00:29:55,003.003 INFO    ] ================================================
[2026-10-25 00:29:55,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:29:55
[2026-10-25 00:29:56,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:29:56,605.605 INFO    ] Initializing speech engine...
[2026-10-25 00:29:56,617.617 INFO    ] 2026-10-25 00:29:56
[2026-10-25 00:29:56,907.907 INFO    ] 2026-10-25 00:29:56
[2026-10-25 00:29:56,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:29:57,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:29:57,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:29:57,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:29:57,391.391 INFO    ] time= 25/10/2026 00:29:57
[2026-10-25 00:29:57,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:29:57,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:29:57,589.589 INFO    ] No existing commands found in stream
[2026-10-25 00:30:02,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:30:02,605.605 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 00:30:07,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:30:07,089.089 INFO    ] Checking for system updates...
[2026-10-25 00:30:07,129.129 INFO    ] 200
[2026-10-25 00:30:07,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:07,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:30:07,189.189 INFO    ] No update needed
[2026-10-25 00:30:07,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 00:30:07,227.227 INFO    ] 200
[2026-10-25 00:30:07,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:07,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:30:07,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:30:07,327.327 INFO    ] No camera update needed
[2026-10-25 00:30:07,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:30:07,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:30:07,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:30:07,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:30:09,382.382 INFO    ] ================================================
[2026-10-25 00:30:09,397.397 INFO    ] Launching Daemon at Sun Oct 25 00:30:09 IST 2026
[2026-10-25 00:30:09,408.408 INFO    ] ================================================
[2026-10-25 00:30:09,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:30:09
[2026-10-25 00:30:10,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:30:10,809.809 INFO    ] Initializing speech engine...
[2026-10-25 00:30:10,822.822 INFO    ] 2026-10-25 00:30:10
[2026-10-25 00:30:11,106.106 INFO    ] 2026-10-25 00:30:11
[2026-10-25 00:30:11,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:30:11,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:30:11,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:30:11,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:30:11,523.523 INFO    ] time= 25/10/2026 00:30:11
[2026-10-25 00:30:11,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:30:11,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:30:11,709.709 INFO    ] No existing commands found in stream
[2026-10-25 00:30:16,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:30:16,732.732 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 00:30:21,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:30:21,172.172 INFO    ] Checking for system updates...
[2026-10-25 00:30:21,213.213 INFO    ] 200
[2026-10-25 00:30:21,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:21,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:21,278.278 INFO    ] No update needed
[2026-10-25 00:30:21,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 00:30:21,319.319 INFO    ] 200
[2026-10-25 00:30:21,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:21,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:30:21,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:21,518.518 INFO    ] No camera update needed
[2026-10-25 00:30:21,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:30:21,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:30:21,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:30:21,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:30:23,574.574 INFO    ] ================================================
[2026-10-25 00:30:23,589.589 INFO    ] Launching Daemon at Sun Oct 25 00:30:23 IST 2026
[2026-10-25 00:30:23,600.600 INFO    ] ================================================
[2026-10-25 00:30:24,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:30:24
[2026-10-25 00:30:24,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:30:24,994.994 INFO    ] Initializing speech engine...
[2026-10-25 00:30:25,016.016 INFO    ] 2026-10-25 00:30:25
[2026-10-25 00:30:25,266.266 INFO    ] 2026-10-25 00:30:25
[2026-10-25 00:30:25,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:30:25,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:30:25,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:30:25,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:30:25,698.698 INFO    ] time= 25/10/2026 00:30:25
[2026-10-25 00:30:25,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:30:25,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:30:25,884.884 INFO    ] No existing commands found in stream
[2026-10-25 00:30:30,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:30:30,907.907 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 00:30:34,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:30:34,549.549 INFO    ] Checking for system updates...
[2026-10-25 00:30:34,585.585 INFO    ] 200
[2026-10-25 00:30:34,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:34,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:34,644.644 INFO    ] No update needed
[2026-10-25 00:30:34,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 00:30:34,683.683 INFO    ] 200
[2026-10-25 00:30:34,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:34,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:30:34,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:34,779.779 INFO    ] No camera update needed
[2026-10-25 00:30:34,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:30:34,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:30:34,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:30:34,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:30:36,834.834 INFO    ] ================================================
[2026-10-25 00:30:36,849.849 INFO    ] Launching Daemon at Sun Oct 25 00:30:36 IST 2026
[2026-10-25 00:30:36,861.861 INFO    ] ================================================
[2026-10-25 00:30:37,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:30:37
[2026-10-25 00:30:38,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:30:38,329.329 INFO    ] Initializing speech engine...
[2026-10-25 00:30:38,339.339 INFO    ] 2026-10-25 00:30:38
[2026-10-25 00:30:38,582.582 INFO    ] 2026-10-25 00:30:38
[2026-10-25 00:30:38,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:30:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:30:38,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:30:39,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:30:39,087.087 INFO    ] time= 25/10/2026 00:30:39
[2026-10-25 00:30:39,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:30:39,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:30:39,271.271 INFO    ] No existing commands found in stream
[2026-10-25 00:30:44,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:30:44,301.301 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 00:30:47,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:30:47,749.749 INFO    ] Checking for system updates...
[2026-10-25 00:30:47,787.787 INFO    ] 200
[2026-10-25 00:30:47,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:47,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:47,845.845 INFO    ] No update needed
[2026-10-25 00:30:47,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 00:30:47,891.891 INFO    ] 200
[2026-10-25 00:30:47,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:30:47,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:30:47,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:30:47,994.994 INFO    ] No camera update needed
[2026-10-25 00:30:47,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:30:47,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:30:48,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:30:48,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:30:50,051.051 INFO    ] ================================================
[2026-10-25 00:30:50,066.066 INFO    ] Launching Daemon at Sun Oct 25 00:30:50 IST 2026
[2026-10-25 00:30:50,077.077 INFO    ] ================================================
[2026-10-25 00:30:50,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:30:50
[2026-10-25 00:30:51,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:30:51,677.677 INFO    ] Initializing speech engine...
[2026-10-25 00:30:51,690.690 INFO    ] 2026-10-25 00:30:51
[2026-10-25 00:30:51,966.966 INFO    ] 2026-10-25 00:30:51
[2026-10-25 00:30:52,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:30:52,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:30:52,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:30:52,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:30:52,507.507 INFO    ] time= 25/10/2026 00:30:52
[2026-10-25 00:30:52,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:30:52,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:30:52,663.663 INFO    ] No existing commands found in stream
[2026-10-25 00:30:57,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:30:57,696.696 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 00:31:00,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:31:00,316.316 INFO    ] Checking for system updates...
[2026-10-25 00:31:00,353.353 INFO    ] 200
[2026-10-25 00:31:00,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:00,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:00,412.412 INFO    ] No update needed
[2026-10-25 00:31:00,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 00:31:00,450.450 INFO    ] 200
[2026-10-25 00:31:00,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:00,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:31:00,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:00,549.549 INFO    ] No camera update needed
[2026-10-25 00:31:00,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:31:00,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:31:00,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:31:00,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:31:02,610.610 INFO    ] ================================================
[2026-10-25 00:31:02,631.631 INFO    ] Launching Daemon at Sun Oct 25 00:31:02 IST 2026
[2026-10-25 00:31:02,647.647 INFO    ] ================================================
[2026-10-25 00:31:03,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:31:03
[2026-10-25 00:31:03,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:31:04,231.231 INFO    ] Initializing speech engine...
[2026-10-25 00:31:04,238.238 INFO    ] 2026-10-25 00:31:04
[2026-10-25 00:31:04,536.536 INFO    ] 2026-10-25 00:31:04
[2026-10-25 00:31:04,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:31:04,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:31:04,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:31:04,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:31:04,949.949 INFO    ] time= 25/10/2026 00:31:04
[2026-10-25 00:31:04,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:31:04,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:31:05,037.037 INFO    ] No existing commands found in stream
[2026-10-25 00:31:10,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:31:10,052.052 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 00:31:13,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:31:13,119.119 INFO    ] Checking for system updates...
[2026-10-25 00:31:13,159.159 INFO    ] 200
[2026-10-25 00:31:13,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:13,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:31:13,223.223 INFO    ] No update needed
[2026-10-25 00:31:13,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 00:31:13,259.259 INFO    ] 200
[2026-10-25 00:31:13,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:13,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:31:13,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:31:13,352.352 INFO    ] No camera update needed
[2026-10-25 00:31:13,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:31:13,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:31:13,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:31:13,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:31:15,408.408 INFO    ] ================================================
[2026-10-25 00:31:15,423.423 INFO    ] Launching Daemon at Sun Oct 25 00:31:15 IST 2026
[2026-10-25 00:31:15,435.435 INFO    ] ================================================
[2026-10-25 00:31:16,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:31:15
[2026-10-25 00:31:16,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:31:16,844.844 INFO    ] Initializing speech engine...
[2026-10-25 00:31:16,861.861 INFO    ] 2026-10-25 00:31:16
[2026-10-25 00:31:17,145.145 INFO    ] 2026-10-25 00:31:17
[2026-10-25 00:31:17,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:31:17,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:31:17,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:31:17,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:31:17,567.567 INFO    ] time= 25/10/2026 00:31:17
[2026-10-25 00:31:17,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:31:17,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:31:17,742.742 INFO    ] No existing commands found in stream
[2026-10-25 00:31:22,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:31:22,770.770 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 00:31:24,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:31:24,496.496 INFO    ] Checking for system updates...
[2026-10-25 00:31:24,532.532 INFO    ] 200
[2026-10-25 00:31:24,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:24,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:31:24,597.597 INFO    ] No update needed
[2026-10-25 00:31:24,600.600 INFO    ] Checking for camera pi updates...
[2026-10-25 00:31:24,637.637 INFO    ] 200
[2026-10-25 00:31:24,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:24,680.680 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:31:24,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:31:24,729.729 INFO    ] No camera update needed
[2026-10-25 00:31:24,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:31:24,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:31:24,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:31:24,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:31:26,786.786 INFO    ] ================================================
[2026-10-25 00:31:26,802.802 INFO    ] Launching Daemon at Sun Oct 25 00:31:26 IST 2026
[2026-10-25 00:31:26,813.813 INFO    ] ================================================
[2026-10-25 00:31:27,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:31:27
[2026-10-25 00:31:28,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:31:28,411.411 INFO    ] Initializing speech engine...
[2026-10-25 00:31:28,434.434 INFO    ] 2026-10-25 00:31:28
[2026-10-25 00:31:28,712.712 INFO    ] 2026-10-25 00:31:28
[2026-10-25 00:31:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:31:29,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:31:29,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:31:29,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:31:29,224.224 INFO    ] time= 25/10/2026 00:31:29
[2026-10-25 00:31:29,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:31:29,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:31:29,438.438 INFO    ] No existing commands found in stream
[2026-10-25 00:31:34,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:31:34,464.464 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 00:31:36,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:31:36,239.239 INFO    ] Checking for system updates...
[2026-10-25 00:31:36,276.276 INFO    ] 200
[2026-10-25 00:31:36,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:36,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:36,337.337 INFO    ] No update needed
[2026-10-25 00:31:36,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 00:31:36,375.375 INFO    ] 200
[2026-10-25 00:31:36,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:36,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:31:36,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:36,480.480 INFO    ] No camera update needed
[2026-10-25 00:31:36,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:31:36,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:31:36,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:31:36,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:31:38,541.541 INFO    ] ================================================
[2026-10-25 00:31:38,556.556 INFO    ] Launching Daemon at Sun Oct 25 00:31:38 IST 2026
[2026-10-25 00:31:38,568.568 INFO    ] ================================================
[2026-10-25 00:31:39,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:31:39
[2026-10-25 00:31:39,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:31:40,199.199 INFO    ] Initializing speech engine...
[2026-10-25 00:31:40,211.211 INFO    ] 2026-10-25 00:31:40
[2026-10-25 00:31:40,497.497 INFO    ] 2026-10-25 00:31:40
[2026-10-25 00:31:40,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:31:40,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:31:40,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:31:41,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:31:41,031.031 INFO    ] time= 25/10/2026 00:31:41
[2026-10-25 00:31:41,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:31:41,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:31:41,186.186 INFO    ] No existing commands found in stream
[2026-10-25 00:31:46,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:31:46,214.214 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 00:31:50,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:31:50,188.188 INFO    ] Checking for system updates...
[2026-10-25 00:31:50,229.229 INFO    ] 200
[2026-10-25 00:31:50,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:50,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:50,295.295 INFO    ] No update needed
[2026-10-25 00:31:50,297.297 INFO    ] Checking for camera pi updates...
[2026-10-25 00:31:50,335.335 INFO    ] 200
[2026-10-25 00:31:50,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:31:50,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:31:50,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:31:50,428.428 INFO    ] No camera update needed
[2026-10-25 00:31:50,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:31:50,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:31:50,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:31:50,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:31:52,484.484 INFO    ] ================================================
[2026-10-25 00:31:52,500.500 INFO    ] Launching Daemon at Sun Oct 25 00:31:52 IST 2026
[2026-10-25 00:31:52,511.511 INFO    ] ================================================
[2026-10-25 00:31:53,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:31:53
[2026-10-25 00:31:53,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:31:53,918.918 INFO    ] Initializing speech engine...
[2026-10-25 00:31:53,926.926 INFO    ] 2026-10-25 00:31:53
[2026-10-25 00:31:54,219.219 INFO    ] 2026-10-25 00:31:54
[2026-10-25 00:31:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:31:54,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:31:54,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:31:54,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:31:54,614.614 INFO    ] time= 25/10/2026 00:31:54
[2026-10-25 00:31:54,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:31:54,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:31:54,722.722 INFO    ] No existing commands found in stream
[2026-10-25 00:31:59,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:31:59,738.738 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 00:32:04,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:32:04,052.052 INFO    ] Checking for system updates...
[2026-10-25 00:32:04,091.091 INFO    ] 200
[2026-10-25 00:32:04,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:04,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:04,154.154 INFO    ] No update needed
[2026-10-25 00:32:04,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 00:32:04,192.192 INFO    ] 200
[2026-10-25 00:32:04,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:04,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:32:04,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:04,290.290 INFO    ] No camera update needed
[2026-10-25 00:32:04,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:32:04,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:32:04,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:32:04,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:32:06,344.344 INFO    ] ================================================
[2026-10-25 00:32:06,360.360 INFO    ] Launching Daemon at Sun Oct 25 00:32:06 IST 2026
[2026-10-25 00:32:06,371.371 INFO    ] ================================================
[2026-10-25 00:32:06,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:32:06
[2026-10-25 00:32:07,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:32:07,787.787 INFO    ] Initializing speech engine...
[2026-10-25 00:32:07,804.804 INFO    ] 2026-10-25 00:32:07
[2026-10-25 00:32:08,068.068 INFO    ] 2026-10-25 00:32:08
[2026-10-25 00:32:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:32:08,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:32:08,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:32:08,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:32:08,519.519 INFO    ] time= 25/10/2026 00:32:08
[2026-10-25 00:32:08,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:32:08,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:32:08,692.692 INFO    ] No existing commands found in stream
[2026-10-25 00:32:13,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:32:13,706.706 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 00:32:18,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:32:18,204.204 INFO    ] Checking for system updates...
[2026-10-25 00:32:18,239.239 INFO    ] 200
[2026-10-25 00:32:18,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:18,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:18,311.311 INFO    ] No update needed
[2026-10-25 00:32:18,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 00:32:18,349.349 INFO    ] 200
[2026-10-25 00:32:18,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:18,395.395 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:32:18,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:18,447.447 INFO    ] No camera update needed
[2026-10-25 00:32:18,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:32:18,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:32:18,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:32:18,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:32:20,502.502 INFO    ] ================================================
[2026-10-25 00:32:20,517.517 INFO    ] Launching Daemon at Sun Oct 25 00:32:20 IST 2026
[2026-10-25 00:32:20,528.528 INFO    ] ================================================
[2026-10-25 00:32:21,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:32:21
[2026-10-25 00:32:21,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:32:22,075.075 INFO    ] Initializing speech engine...
[2026-10-25 00:32:22,083.083 INFO    ] 2026-10-25 00:32:22
[2026-10-25 00:32:22,351.351 INFO    ] 2026-10-25 00:32:22
[2026-10-25 00:32:22,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:32:22,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:32:22,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:32:22,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:32:22,852.852 INFO    ] time= 25/10/2026 00:32:22
[2026-10-25 00:32:22,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:32:22,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:32:23,052.052 INFO    ] No existing commands found in stream
[2026-10-25 00:32:28,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:32:28,081.081 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 00:32:29,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:32:29,114.114 INFO    ] Checking for system updates...
[2026-10-25 00:32:29,149.149 INFO    ] 200
[2026-10-25 00:32:29,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:29,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:32:29,208.208 INFO    ] No update needed
[2026-10-25 00:32:29,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 00:32:29,247.247 INFO    ] 200
[2026-10-25 00:32:29,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:29,290.290 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:32:29,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:32:29,447.447 INFO    ] No camera update needed
[2026-10-25 00:32:29,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:32:29,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:32:29,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:32:29,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:32:31,506.506 INFO    ] ================================================
[2026-10-25 00:32:31,521.521 INFO    ] Launching Daemon at Sun Oct 25 00:32:31 IST 2026
[2026-10-25 00:32:31,533.533 INFO    ] ================================================
[2026-10-25 00:32:32,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:32:32
[2026-10-25 00:32:32,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:32:33,029.029 INFO    ] Initializing speech engine...
[2026-10-25 00:32:33,038.038 INFO    ] 2026-10-25 00:32:33
[2026-10-25 00:32:33,286.286 INFO    ] 2026-10-25 00:32:33
[2026-10-25 00:32:33,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:32:33,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:32:33,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:32:33,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:32:33,775.775 INFO    ] time= 25/10/2026 00:32:33
[2026-10-25 00:32:33,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:32:33,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:32:33,963.963 INFO    ] No existing commands found in stream
[2026-10-25 00:32:38,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:32:38,994.994 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 00:32:41,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:32:41,699.699 INFO    ] Checking for system updates...
[2026-10-25 00:32:41,739.739 INFO    ] 200
[2026-10-25 00:32:41,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:41,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:41,802.802 INFO    ] No update needed
[2026-10-25 00:32:41,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 00:32:41,838.838 INFO    ] 200
[2026-10-25 00:32:41,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:41,881.881 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:32:41,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:32:41,939.939 INFO    ] No camera update needed
[2026-10-25 00:32:41,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:32:41,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:32:41,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:32:41,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:32:44,998.998 INFO    ] ================================================
[2026-10-25 00:32:44,013.013 INFO    ] Launching Daemon at Sun Oct 25 00:32:44 IST 2026
[2026-10-25 00:32:44,023.023 INFO    ] ================================================
[2026-10-25 00:32:44,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:32:44
[2026-10-25 00:32:45,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:32:45,443.443 INFO    ] Initializing speech engine...
[2026-10-25 00:32:45,453.453 INFO    ] 2026-10-25 00:32:45
[2026-10-25 00:32:45,704.704 INFO    ] 2026-10-25 00:32:45
[2026-10-25 00:32:45,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:32:45,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:32:46,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:32:46,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:32:46,211.211 INFO    ] time= 25/10/2026 00:32:46
[2026-10-25 00:32:46,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:32:46,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:32:46,396.396 INFO    ] No existing commands found in stream
[2026-10-25 00:32:51,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:32:51,426.426 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 00:32:53,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:32:53,260.260 INFO    ] Checking for system updates...
[2026-10-25 00:32:53,299.299 INFO    ] 200
[2026-10-25 00:32:53,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:53,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:32:53,356.356 INFO    ] No update needed
[2026-10-25 00:32:53,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 00:32:53,392.392 INFO    ] 200
[2026-10-25 00:32:53,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:32:53,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:32:53,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:32:53,508.508 INFO    ] No camera update needed
[2026-10-25 00:32:53,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:32:53,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:32:53,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:32:53,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:32:55,565.565 INFO    ] ================================================
[2026-10-25 00:32:55,580.580 INFO    ] Launching Daemon at Sun Oct 25 00:32:55 IST 2026
[2026-10-25 00:32:55,590.590 INFO    ] ================================================
[2026-10-25 00:32:56,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:32:56
[2026-10-25 00:32:56,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:32:56,987.987 INFO    ] Initializing speech engine...
[2026-10-25 00:32:56,996.996 INFO    ] 2026-10-25 00:32:56
[2026-10-25 00:32:57,271.271 INFO    ] 2026-10-25 00:32:57
[2026-10-25 00:32:57,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:32:57,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:32:57,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:32:57,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:32:57,836.836 INFO    ] time= 25/10/2026 00:32:57
[2026-10-25 00:32:57,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:32:57,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:32:57,968.968 INFO    ] No existing commands found in stream
[2026-10-25 00:33:02,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:33:02,997.997 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 00:33:04,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:33:04,233.233 INFO    ] Checking for system updates...
[2026-10-25 00:33:04,270.270 INFO    ] 200
[2026-10-25 00:33:04,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:04,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:04,334.334 INFO    ] No update needed
[2026-10-25 00:33:04,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 00:33:04,370.370 INFO    ] 200
[2026-10-25 00:33:04,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:04,418.418 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:33:04,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:04,477.477 INFO    ] No camera update needed
[2026-10-25 00:33:04,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:33:04,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:33:04,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:33:04,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:33:06,532.532 INFO    ] ================================================
[2026-10-25 00:33:06,547.547 INFO    ] Launching Daemon at Sun Oct 25 00:33:06 IST 2026
[2026-10-25 00:33:06,558.558 INFO    ] ================================================
[2026-10-25 00:33:07,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:33:07
[2026-10-25 00:33:07,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:33:07,946.946 INFO    ] Initializing speech engine...
[2026-10-25 00:33:07,970.970 INFO    ] 2026-10-25 00:33:07
[2026-10-25 00:33:08,220.220 INFO    ] 2026-10-25 00:33:08
[2026-10-25 00:33:08,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:33:08,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:33:08,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:33:08,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:33:08,773.773 INFO    ] time= 25/10/2026 00:33:08
[2026-10-25 00:33:08,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:33:08,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:33:08,923.923 INFO    ] No existing commands found in stream
[2026-10-25 00:33:13,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:33:13,940.940 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 00:33:15,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:33:15,119.119 INFO    ] Checking for system updates...
[2026-10-25 00:33:15,159.159 INFO    ] 200
[2026-10-25 00:33:15,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:15,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:15,218.218 INFO    ] No update needed
[2026-10-25 00:33:15,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 00:33:15,255.255 INFO    ] 200
[2026-10-25 00:33:15,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:15,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:33:15,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:15,361.361 INFO    ] No camera update needed
[2026-10-25 00:33:15,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:33:15,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:33:15,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:33:15,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:33:17,417.417 INFO    ] ================================================
[2026-10-25 00:33:17,432.432 INFO    ] Launching Daemon at Sun Oct 25 00:33:17 IST 2026
[2026-10-25 00:33:17,443.443 INFO    ] ================================================
[2026-10-25 00:33:18,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:33:18
[2026-10-25 00:33:18,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:33:18,883.883 INFO    ] Initializing speech engine...
[2026-10-25 00:33:18,889.889 INFO    ] 2026-10-25 00:33:18
[2026-10-25 00:33:19,156.156 INFO    ] 2026-10-25 00:33:19
[2026-10-25 00:33:19,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:33:19,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:33:19,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:33:19,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:33:19,593.593 INFO    ] time= 25/10/2026 00:33:19
[2026-10-25 00:33:19,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:33:19,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:33:19,762.762 INFO    ] No existing commands found in stream
[2026-10-25 00:33:24,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:33:24,777.777 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 00:33:27,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:33:27,259.259 INFO    ] Checking for system updates...
[2026-10-25 00:33:27,296.296 INFO    ] 200
[2026-10-25 00:33:27,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:27,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:27,360.360 INFO    ] No update needed
[2026-10-25 00:33:27,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 00:33:27,397.397 INFO    ] 200
[2026-10-25 00:33:27,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:27,445.445 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:33:27,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:27,509.509 INFO    ] No camera update needed
[2026-10-25 00:33:27,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:33:27,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:33:27,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:33:27,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:33:29,564.564 INFO    ] ================================================
[2026-10-25 00:33:29,579.579 INFO    ] Launching Daemon at Sun Oct 25 00:33:29 IST 2026
[2026-10-25 00:33:29,590.590 INFO    ] ================================================
[2026-10-25 00:33:30,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:33:30
[2026-10-25 00:33:30,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:33:31,006.006 INFO    ] Initializing speech engine...
[2026-10-25 00:33:31,015.015 INFO    ] 2026-10-25 00:33:31
[2026-10-25 00:33:31,275.275 INFO    ] 2026-10-25 00:33:31
[2026-10-25 00:33:31,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:33:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:33:31,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:33:31,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:33:31,812.812 INFO    ] time= 25/10/2026 00:33:31
[2026-10-25 00:33:31,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:33:31,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:33:31,991.991 INFO    ] No existing commands found in stream
[2026-10-25 00:33:37,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:33:37,019.019 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 00:33:38,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:33:38,909.909 INFO    ] Checking for system updates...
[2026-10-25 00:33:38,949.949 INFO    ] 200
[2026-10-25 00:33:38,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:39,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:33:39,008.008 INFO    ] No update needed
[2026-10-25 00:33:39,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 00:33:39,044.044 INFO    ] 200
[2026-10-25 00:33:39,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:39,092.092 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:33:39,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:33:39,142.142 INFO    ] No camera update needed
[2026-10-25 00:33:39,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:33:39,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:33:39,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:33:39,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:33:41,198.198 INFO    ] ================================================
[2026-10-25 00:33:41,213.213 INFO    ] Launching Daemon at Sun Oct 25 00:33:41 IST 2026
[2026-10-25 00:33:41,224.224 INFO    ] ================================================
[2026-10-25 00:33:41,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:33:41
[2026-10-25 00:33:42,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:33:42,636.636 INFO    ] Initializing speech engine...
[2026-10-25 00:33:42,656.656 INFO    ] 2026-10-25 00:33:42
[2026-10-25 00:33:42,932.932 INFO    ] 2026-10-25 00:33:42
[2026-10-25 00:33:42,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:33:43,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:33:43,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:33:43,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:33:43,303.303 INFO    ] time= 25/10/2026 00:33:43
[2026-10-25 00:33:43,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:33:43,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:33:43,425.425 INFO    ] No existing commands found in stream
[2026-10-25 00:33:48,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:33:48,446.446 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:33:52,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:33:52,438.438 INFO    ] Checking for system updates...
[2026-10-25 00:33:52,477.477 INFO    ] 200
[2026-10-25 00:33:52,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:52,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:52,541.541 INFO    ] No update needed
[2026-10-25 00:33:52,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 00:33:52,581.581 INFO    ] 200
[2026-10-25 00:33:52,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:33:52,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:33:52,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:33:52,682.682 INFO    ] No camera update needed
[2026-10-25 00:33:52,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:33:52,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:33:52,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:33:52,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:33:54,737.737 INFO    ] ================================================
[2026-10-25 00:33:54,752.752 INFO    ] Launching Daemon at Sun Oct 25 00:33:54 IST 2026
[2026-10-25 00:33:54,764.764 INFO    ] ================================================
[2026-10-25 00:33:55,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:33:55
[2026-10-25 00:33:56,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:33:56,361.361 INFO    ] Initializing speech engine...
[2026-10-25 00:33:56,371.371 INFO    ] 2026-10-25 00:33:56
[2026-10-25 00:33:56,641.641 INFO    ] 2026-10-25 00:33:56
[2026-10-25 00:33:56,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:33:56,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:33:56,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:33:57,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:33:57,143.143 INFO    ] time= 25/10/2026 00:33:57
[2026-10-25 00:33:57,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:33:57,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:33:57,259.259 INFO    ] No existing commands found in stream
[2026-10-25 00:34:02,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:34:02,293.293 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 00:34:04,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:34:04,805.805 INFO    ] Checking for system updates...
[2026-10-25 00:34:04,846.846 INFO    ] 200
[2026-10-25 00:34:04,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:04,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:34:04,908.908 INFO    ] No update needed
[2026-10-25 00:34:04,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 00:34:04,949.949 INFO    ] 200
[2026-10-25 00:34:04,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:05,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:34:05,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:34:05,061.061 INFO    ] No camera update needed
[2026-10-25 00:34:05,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:34:05,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:34:05,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:34:05,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:34:07,120.120 INFO    ] ================================================
[2026-10-25 00:34:07,135.135 INFO    ] Launching Daemon at Sun Oct 25 00:34:07 IST 2026
[2026-10-25 00:34:07,146.146 INFO    ] ================================================
[2026-10-25 00:34:07,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:34:07
[2026-10-25 00:34:08,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:34:08,549.549 INFO    ] Initializing speech engine...
[2026-10-25 00:34:08,556.556 INFO    ] 2026-10-25 00:34:08
[2026-10-25 00:34:08,850.850 INFO    ] 2026-10-25 00:34:08
[2026-10-25 00:34:08,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:34:09,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:34:09,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:34:09,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:34:09,241.241 INFO    ] time= 25/10/2026 00:34:09
[2026-10-25 00:34:09,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:34:09,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:34:09,347.347 INFO    ] No existing commands found in stream
[2026-10-25 00:34:14,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:34:14,362.362 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 00:34:17,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:34:17,503.503 INFO    ] Checking for system updates...
[2026-10-25 00:34:17,542.542 INFO    ] 200
[2026-10-25 00:34:17,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:17,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:34:17,606.606 INFO    ] No update needed
[2026-10-25 00:34:17,608.608 INFO    ] Checking for camera pi updates...
[2026-10-25 00:34:17,645.645 INFO    ] 200
[2026-10-25 00:34:17,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:17,692.692 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:34:17,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:34:17,730.730 INFO    ] No camera update needed
[2026-10-25 00:34:17,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:34:17,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:34:17,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:34:17,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:34:19,785.785 INFO    ] ================================================
[2026-10-25 00:34:19,801.801 INFO    ] Launching Daemon at Sun Oct 25 00:34:19 IST 2026
[2026-10-25 00:34:19,813.813 INFO    ] ================================================
[2026-10-25 00:34:20,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:34:20
[2026-10-25 00:34:21,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:34:21,413.413 INFO    ] Initializing speech engine...
[2026-10-25 00:34:21,422.422 INFO    ] 2026-10-25 00:34:21
[2026-10-25 00:34:21,704.704 INFO    ] 2026-10-25 00:34:21
[2026-10-25 00:34:21,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:34:21,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:34:21,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:34:22,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:34:22,237.237 INFO    ] time= 25/10/2026 00:34:22
[2026-10-25 00:34:22,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:34:22,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:34:22,392.392 INFO    ] No existing commands found in stream
[2026-10-25 00:34:27,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:34:27,410.410 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 00:34:30,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:34:30,442.442 INFO    ] Checking for system updates...
[2026-10-25 00:34:30,482.482 INFO    ] 200
[2026-10-25 00:34:30,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:30,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:30,543.543 INFO    ] No update needed
[2026-10-25 00:34:30,546.546 INFO    ] Checking for camera pi updates...
[2026-10-25 00:34:30,580.580 INFO    ] 200
[2026-10-25 00:34:30,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:30,630.630 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:34:30,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:30,699.699 INFO    ] No camera update needed
[2026-10-25 00:34:30,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:34:30,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:34:30,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:34:30,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:34:32,759.759 INFO    ] ================================================
[2026-10-25 00:34:32,774.774 INFO    ] Launching Daemon at Sun Oct 25 00:34:32 IST 2026
[2026-10-25 00:34:32,785.785 INFO    ] ================================================
[2026-10-25 00:34:33,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:34:33
[2026-10-25 00:34:33,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:34:34,187.187 INFO    ] Initializing speech engine...
[2026-10-25 00:34:34,195.195 INFO    ] 2026-10-25 00:34:34
[2026-10-25 00:34:34,487.487 INFO    ] 2026-10-25 00:34:34
[2026-10-25 00:34:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:34:34,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:34:34,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:34:34,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:34:34,879.879 INFO    ] time= 25/10/2026 00:34:34
[2026-10-25 00:34:34,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:34:34,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:34:34,987.987 INFO    ] No existing commands found in stream
[2026-10-25 00:34:39,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:34:40,000.000 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 00:34:40,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:34:40,613.613 INFO    ] Checking for system updates...
[2026-10-25 00:34:40,649.649 INFO    ] 200
[2026-10-25 00:34:40,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:40,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:40,713.713 INFO    ] No update needed
[2026-10-25 00:34:40,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 00:34:40,749.749 INFO    ] 200
[2026-10-25 00:34:40,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:40,797.797 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:34:40,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:40,847.847 INFO    ] No camera update needed
[2026-10-25 00:34:40,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:34:40,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:34:40,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:34:40,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:34:42,903.903 INFO    ] ================================================
[2026-10-25 00:34:42,918.918 INFO    ] Launching Daemon at Sun Oct 25 00:34:42 IST 2026
[2026-10-25 00:34:42,930.930 INFO    ] ================================================
[2026-10-25 00:34:43,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:34:43
[2026-10-25 00:34:44,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:34:44,379.379 INFO    ] Initializing speech engine...
[2026-10-25 00:34:44,385.385 INFO    ] 2026-10-25 00:34:44
[2026-10-25 00:34:44,654.654 INFO    ] 2026-10-25 00:34:44
[2026-10-25 00:34:44,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:34:44,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:34:44,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:34:45,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:34:45,121.121 INFO    ] time= 25/10/2026 00:34:45
[2026-10-25 00:34:45,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:34:45,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:34:45,307.307 INFO    ] No existing commands found in stream
[2026-10-25 00:34:50,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:34:50,333.333 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 00:34:52,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:34:52,843.843 INFO    ] Checking for system updates...
[2026-10-25 00:34:52,879.879 INFO    ] 200
[2026-10-25 00:34:52,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:52,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:52,943.943 INFO    ] No update needed
[2026-10-25 00:34:52,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 00:34:52,982.982 INFO    ] 200
[2026-10-25 00:34:52,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:34:53,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:34:53,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:34:53,084.084 INFO    ] No camera update needed
[2026-10-25 00:34:53,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:34:53,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:34:53,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:34:53,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:34:55,141.141 INFO    ] ================================================
[2026-10-25 00:34:55,157.157 INFO    ] Launching Daemon at Sun Oct 25 00:34:55 IST 2026
[2026-10-25 00:34:55,168.168 INFO    ] ================================================
[2026-10-25 00:34:55,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:34:55
[2026-10-25 00:34:56,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:34:56,609.609 INFO    ] Initializing speech engine...
[2026-10-25 00:34:56,618.618 INFO    ] 2026-10-25 00:34:56
[2026-10-25 00:34:56,863.863 INFO    ] 2026-10-25 00:34:56
[2026-10-25 00:34:56,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:34:57,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:34:57,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:34:57,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:34:57,336.336 INFO    ] time= 25/10/2026 00:34:57
[2026-10-25 00:34:57,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:34:57,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:34:57,485.485 INFO    ] No existing commands found in stream
[2026-10-25 00:35:02,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:35:02,525.525 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 00:35:04,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:35:04,420.420 INFO    ] Checking for system updates...
[2026-10-25 00:35:04,461.461 INFO    ] 200
[2026-10-25 00:35:04,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:04,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:35:04,519.519 INFO    ] No update needed
[2026-10-25 00:35:04,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 00:35:04,555.555 INFO    ] 200
[2026-10-25 00:35:04,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:04,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:35:04,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:35:04,653.653 INFO    ] No camera update needed
[2026-10-25 00:35:04,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:35:04,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:35:04,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:35:04,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:35:06,712.712 INFO    ] ================================================
[2026-10-25 00:35:06,728.728 INFO    ] Launching Daemon at Sun Oct 25 00:35:06 IST 2026
[2026-10-25 00:35:06,739.739 INFO    ] ================================================
[2026-10-25 00:35:07,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:35:07
[2026-10-25 00:35:07,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:35:08,204.204 INFO    ] Initializing speech engine...
[2026-10-25 00:35:08,213.213 INFO    ] 2026-10-25 00:35:08
[2026-10-25 00:35:08,471.471 INFO    ] 2026-10-25 00:35:08
[2026-10-25 00:35:08,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:35:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:35:08,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:35:08,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:35:08,954.954 INFO    ] time= 25/10/2026 00:35:08
[2026-10-25 00:35:09,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:35:09,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:35:09,154.154 INFO    ] No existing commands found in stream
[2026-10-25 00:35:14,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:35:14,184.184 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 00:35:17,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:35:17,683.683 INFO    ] Checking for system updates...
[2026-10-25 00:35:17,722.722 INFO    ] 200
[2026-10-25 00:35:17,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:17,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:17,781.781 INFO    ] No update needed
[2026-10-25 00:35:17,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 00:35:17,819.819 INFO    ] 200
[2026-10-25 00:35:17,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:17,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:35:17,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:17,922.922 INFO    ] No camera update needed
[2026-10-25 00:35:17,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:35:17,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:35:17,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:35:17,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:35:19,978.978 INFO    ] ================================================
[2026-10-25 00:35:20,994.994 INFO    ] Launching Daemon at Sun Oct 25 00:35:19 IST 2026
[2026-10-25 00:35:20,006.006 INFO    ] ================================================
[2026-10-25 00:35:20,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:35:20
[2026-10-25 00:35:21,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:35:21,470.470 INFO    ] Initializing speech engine...
[2026-10-25 00:35:21,479.479 INFO    ] 2026-10-25 00:35:21
[2026-10-25 00:35:21,738.738 INFO    ] 2026-10-25 00:35:21
[2026-10-25 00:35:21,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:35:22,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:35:22,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:35:22,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:35:22,283.283 INFO    ] time= 25/10/2026 00:35:22
[2026-10-25 00:35:22,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:35:22,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:35:22,427.427 INFO    ] No existing commands found in stream
[2026-10-25 00:35:27,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:35:27,451.451 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 00:35:30,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:35:30,378.378 INFO    ] Checking for system updates...
[2026-10-25 00:35:30,419.419 INFO    ] 200
[2026-10-25 00:35:30,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:30,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:30,476.476 INFO    ] No update needed
[2026-10-25 00:35:30,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 00:35:30,512.512 INFO    ] 200
[2026-10-25 00:35:30,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:30,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:35:30,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:30,609.609 INFO    ] No camera update needed
[2026-10-25 00:35:30,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:35:30,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:35:30,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:35:30,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:35:32,667.667 INFO    ] ================================================
[2026-10-25 00:35:32,683.683 INFO    ] Launching Daemon at Sun Oct 25 00:35:32 IST 2026
[2026-10-25 00:35:32,695.695 INFO    ] ================================================
[2026-10-25 00:35:33,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:35:33
[2026-10-25 00:35:33,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:35:34,103.103 INFO    ] Initializing speech engine...
[2026-10-25 00:35:34,116.116 INFO    ] 2026-10-25 00:35:34
[2026-10-25 00:35:34,402.402 INFO    ] 2026-10-25 00:35:34
[2026-10-25 00:35:34,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:35:34,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:35:34,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:35:34,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:35:34,793.793 INFO    ] time= 25/10/2026 00:35:34
[2026-10-25 00:35:34,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:35:34,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:35:34,923.923 INFO    ] No existing commands found in stream
[2026-10-25 00:35:39,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:35:39,938.938 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 00:35:42,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:35:42,169.169 INFO    ] Checking for system updates...
[2026-10-25 00:35:42,210.210 INFO    ] 200
[2026-10-25 00:35:42,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:42,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:42,276.276 INFO    ] No update needed
[2026-10-25 00:35:42,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 00:35:42,316.316 INFO    ] 200
[2026-10-25 00:35:42,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:42,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:35:42,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:42,425.425 INFO    ] No camera update needed
[2026-10-25 00:35:42,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:35:42,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:35:42,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:35:42,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:35:44,482.482 INFO    ] ================================================
[2026-10-25 00:35:44,498.498 INFO    ] Launching Daemon at Sun Oct 25 00:35:44 IST 2026
[2026-10-25 00:35:44,510.510 INFO    ] ================================================
[2026-10-25 00:35:45,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:35:45
[2026-10-25 00:35:45,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:35:46,178.178 INFO    ] Initializing speech engine...
[2026-10-25 00:35:46,190.190 INFO    ] 2026-10-25 00:35:46
[2026-10-25 00:35:46,503.503 INFO    ] 2026-10-25 00:35:46
[2026-10-25 00:35:46,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:35:46,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:35:46,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:35:46,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:35:47,010.010 INFO    ] time= 25/10/2026 00:35:46
[2026-10-25 00:35:47,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:35:47,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:35:47,164.164 INFO    ] No existing commands found in stream
[2026-10-25 00:35:52,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:35:52,180.180 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 00:35:53,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:35:53,557.557 INFO    ] Checking for system updates...
[2026-10-25 00:35:53,600.600 INFO    ] 200
[2026-10-25 00:35:53,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:53,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:53,660.660 INFO    ] No update needed
[2026-10-25 00:35:53,663.663 INFO    ] Checking for camera pi updates...
[2026-10-25 00:35:53,699.699 INFO    ] 200
[2026-10-25 00:35:53,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:35:53,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:35:53,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:35:53,793.793 INFO    ] No camera update needed
[2026-10-25 00:35:53,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:35:53,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:35:53,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:35:53,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:35:55,849.849 INFO    ] ================================================
[2026-10-25 00:35:55,865.865 INFO    ] Launching Daemon at Sun Oct 25 00:35:55 IST 2026
[2026-10-25 00:35:55,876.876 INFO    ] ================================================
[2026-10-25 00:35:56,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:35:56
[2026-10-25 00:35:57,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:35:57,326.326 INFO    ] Initializing speech engine...
[2026-10-25 00:35:57,335.335 INFO    ] 2026-10-25 00:35:57
[2026-10-25 00:35:57,589.589 INFO    ] 2026-10-25 00:35:57
[2026-10-25 00:35:57,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:35:57,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:35:57,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:35:58,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:35:58,057.057 INFO    ] time= 25/10/2026 00:35:58
[2026-10-25 00:35:58,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:35:58,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:35:58,239.239 INFO    ] No existing commands found in stream
[2026-10-25 00:36:03,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:36:03,271.271 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 00:36:07,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:36:07,623.623 INFO    ] Checking for system updates...
[2026-10-25 00:36:07,659.659 INFO    ] 200
[2026-10-25 00:36:07,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:07,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:36:07,725.725 INFO    ] No update needed
[2026-10-25 00:36:07,728.728 INFO    ] Checking for camera pi updates...
[2026-10-25 00:36:07,766.766 INFO    ] 200
[2026-10-25 00:36:07,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:07,809.809 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:36:07,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:36:07,859.859 INFO    ] No camera update needed
[2026-10-25 00:36:07,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:36:07,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:36:07,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:36:07,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:36:09,918.918 INFO    ] ================================================
[2026-10-25 00:36:09,934.934 INFO    ] Launching Daemon at Sun Oct 25 00:36:09 IST 2026
[2026-10-25 00:36:09,945.945 INFO    ] ================================================
[2026-10-25 00:36:10,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:36:10
[2026-10-25 00:36:11,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:36:11,387.387 INFO    ] Initializing speech engine...
[2026-10-25 00:36:11,403.403 INFO    ] 2026-10-25 00:36:11
[2026-10-25 00:36:11,658.658 INFO    ] 2026-10-25 00:36:11
[2026-10-25 00:36:11,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:36:11,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:36:11,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:36:12,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:36:12,156.156 INFO    ] time= 25/10/2026 00:36:12
[2026-10-25 00:36:12,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:36:12,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:36:12,341.341 INFO    ] No existing commands found in stream
[2026-10-25 00:36:17,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:36:17,376.376 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 00:36:18,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:36:18,650.650 INFO    ] Checking for system updates...
[2026-10-25 00:36:18,690.690 INFO    ] 200
[2026-10-25 00:36:18,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:18,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:18,755.755 INFO    ] No update needed
[2026-10-25 00:36:18,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 00:36:18,795.795 INFO    ] 200
[2026-10-25 00:36:18,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:18,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:36:18,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:18,895.895 INFO    ] No camera update needed
[2026-10-25 00:36:18,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:36:18,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:36:18,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:36:18,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:36:20,951.951 INFO    ] ================================================
[2026-10-25 00:36:20,967.967 INFO    ] Launching Daemon at Sun Oct 25 00:36:20 IST 2026
[2026-10-25 00:36:20,977.977 INFO    ] ================================================
[2026-10-25 00:36:21,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:36:21
[2026-10-25 00:36:22,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:36:22,387.387 INFO    ] Initializing speech engine...
[2026-10-25 00:36:22,412.412 INFO    ] 2026-10-25 00:36:22
[2026-10-25 00:36:22,686.686 INFO    ] 2026-10-25 00:36:22
[2026-10-25 00:36:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:36:22,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:36:22,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:36:23,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:36:23,077.077 INFO    ] time= 25/10/2026 00:36:23
[2026-10-25 00:36:23,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:36:23,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:36:23,191.191 INFO    ] No existing commands found in stream
[2026-10-25 00:36:28,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:36:28,206.206 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 00:36:29,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:36:29,244.244 INFO    ] Checking for system updates...
[2026-10-25 00:36:29,281.281 INFO    ] 200
[2026-10-25 00:36:29,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:29,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:29,343.343 INFO    ] No update needed
[2026-10-25 00:36:29,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 00:36:29,387.387 INFO    ] 200
[2026-10-25 00:36:29,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:29,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:36:29,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:29,489.489 INFO    ] No camera update needed
[2026-10-25 00:36:29,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:36:29,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:36:29,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:36:29,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:36:31,551.551 INFO    ] ================================================
[2026-10-25 00:36:31,569.569 INFO    ] Launching Daemon at Sun Oct 25 00:36:31 IST 2026
[2026-10-25 00:36:31,581.581 INFO    ] ================================================
[2026-10-25 00:36:32,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:36:32
[2026-10-25 00:36:32,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:36:33,081.081 INFO    ] Initializing speech engine...
[2026-10-25 00:36:33,087.087 INFO    ] 2026-10-25 00:36:33
[2026-10-25 00:36:33,347.347 INFO    ] 2026-10-25 00:36:33
[2026-10-25 00:36:33,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:36:33,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:36:33,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:36:33,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:36:33,838.838 INFO    ] time= 25/10/2026 00:36:33
[2026-10-25 00:36:33,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:36:33,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:36:34,016.016 INFO    ] No existing commands found in stream
[2026-10-25 00:36:39,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:36:39,054.054 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 00:36:41,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:36:41,779.779 INFO    ] Checking for system updates...
[2026-10-25 00:36:41,819.819 INFO    ] 200
[2026-10-25 00:36:41,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:41,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:41,877.877 INFO    ] No update needed
[2026-10-25 00:36:41,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 00:36:41,917.917 INFO    ] 200
[2026-10-25 00:36:41,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:41,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:36:42,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:42,121.121 INFO    ] No camera update needed
[2026-10-25 00:36:42,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:36:42,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:36:42,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:36:42,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:36:44,177.177 INFO    ] ================================================
[2026-10-25 00:36:44,193.193 INFO    ] Launching Daemon at Sun Oct 25 00:36:44 IST 2026
[2026-10-25 00:36:44,203.203 INFO    ] ================================================
[2026-10-25 00:36:44,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:36:44
[2026-10-25 00:36:45,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:36:45,663.663 INFO    ] Initializing speech engine...
[2026-10-25 00:36:45,668.668 INFO    ] 2026-10-25 00:36:45
[2026-10-25 00:36:45,928.928 INFO    ] 2026-10-25 00:36:45
[2026-10-25 00:36:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:36:46,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:36:46,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:36:46,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:36:46,402.402 INFO    ] time= 25/10/2026 00:36:46
[2026-10-25 00:36:46,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:36:46,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:36:46,606.606 INFO    ] No existing commands found in stream
[2026-10-25 00:36:51,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:36:51,638.638 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 00:36:52,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:36:52,743.743 INFO    ] Checking for system updates...
[2026-10-25 00:36:52,783.783 INFO    ] 200
[2026-10-25 00:36:52,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:52,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:52,848.848 INFO    ] No update needed
[2026-10-25 00:36:52,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 00:36:52,888.888 INFO    ] 200
[2026-10-25 00:36:52,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:36:52,937.937 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:36:52,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:36:52,987.987 INFO    ] No camera update needed
[2026-10-25 00:36:52,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:36:52,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:36:52,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:36:53,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:36:55,043.043 INFO    ] ================================================
[2026-10-25 00:36:55,058.058 INFO    ] Launching Daemon at Sun Oct 25 00:36:55 IST 2026
[2026-10-25 00:36:55,068.068 INFO    ] ================================================
[2026-10-25 00:36:55,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:36:55
[2026-10-25 00:36:56,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:36:56,508.508 INFO    ] Initializing speech engine...
[2026-10-25 00:36:56,516.516 INFO    ] 2026-10-25 00:36:56
[2026-10-25 00:36:56,814.814 INFO    ] 2026-10-25 00:36:56
[2026-10-25 00:36:56,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:36:57,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:36:57,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:36:57,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:36:57,236.236 INFO    ] time= 25/10/2026 00:36:57
[2026-10-25 00:36:57,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:36:57,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:36:57,326.326 INFO    ] No existing commands found in stream
[2026-10-25 00:37:02,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:37:02,354.354 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 00:37:04,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:37:04,195.195 INFO    ] Checking for system updates...
[2026-10-25 00:37:04,237.237 INFO    ] 200
[2026-10-25 00:37:04,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:04,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:37:04,297.297 INFO    ] No update needed
[2026-10-25 00:37:04,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 00:37:04,335.335 INFO    ] 200
[2026-10-25 00:37:04,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:04,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:37:04,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:37:04,437.437 INFO    ] No camera update needed
[2026-10-25 00:37:04,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:37:04,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:37:04,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:37:04,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:37:06,492.492 INFO    ] ================================================
[2026-10-25 00:37:06,508.508 INFO    ] Launching Daemon at Sun Oct 25 00:37:06 IST 2026
[2026-10-25 00:37:06,518.518 INFO    ] ================================================
[2026-10-25 00:37:07,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:37:07
[2026-10-25 00:37:07,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:37:07,933.933 INFO    ] Initializing speech engine...
[2026-10-25 00:37:07,941.941 INFO    ] 2026-10-25 00:37:07
[2026-10-25 00:37:08,187.187 INFO    ] 2026-10-25 00:37:08
[2026-10-25 00:37:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:37:08,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:37:08,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:37:08,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:37:08,554.554 INFO    ] time= 25/10/2026 00:37:08
[2026-10-25 00:37:08,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:37:08,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:37:08,738.738 INFO    ] No existing commands found in stream
[2026-10-25 00:37:13,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:37:13,762.762 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 00:37:17,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:37:17,856.856 INFO    ] Checking for system updates...
[2026-10-25 00:37:17,892.892 INFO    ] 200
[2026-10-25 00:37:17,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:17,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:17,956.956 INFO    ] No update needed
[2026-10-25 00:37:17,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 00:37:17,995.995 INFO    ] 200
[2026-10-25 00:37:17,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:18,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:37:18,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:18,097.097 INFO    ] No camera update needed
[2026-10-25 00:37:18,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:37:18,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:37:18,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:37:18,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:37:20,155.155 INFO    ] ================================================
[2026-10-25 00:37:20,169.169 INFO    ] Launching Daemon at Sun Oct 25 00:37:20 IST 2026
[2026-10-25 00:37:20,180.180 INFO    ] ================================================
[2026-10-25 00:37:20,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:37:20
[2026-10-25 00:37:21,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:37:21,649.649 INFO    ] Initializing speech engine...
[2026-10-25 00:37:21,658.658 INFO    ] 2026-10-25 00:37:21
[2026-10-25 00:37:21,915.915 INFO    ] 2026-10-25 00:37:21
[2026-10-25 00:37:21,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:37:22,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:37:22,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:37:22,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:37:22,375.375 INFO    ] time= 25/10/2026 00:37:22
[2026-10-25 00:37:22,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:37:22,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:37:22,587.587 INFO    ] No existing commands found in stream
[2026-10-25 00:37:27,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:37:27,621.621 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 00:37:29,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:37:29,378.378 INFO    ] Checking for system updates...
[2026-10-25 00:37:29,418.418 INFO    ] 200
[2026-10-25 00:37:29,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:29,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:29,482.482 INFO    ] No update needed
[2026-10-25 00:37:29,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 00:37:29,522.522 INFO    ] 200
[2026-10-25 00:37:29,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:29,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:37:29,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:29,618.618 INFO    ] No camera update needed
[2026-10-25 00:37:29,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:37:29,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:37:29,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:37:29,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:37:31,679.679 INFO    ] ================================================
[2026-10-25 00:37:31,694.694 INFO    ] Launching Daemon at Sun Oct 25 00:37:31 IST 2026
[2026-10-25 00:37:31,705.705 INFO    ] ================================================
[2026-10-25 00:37:32,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:37:32
[2026-10-25 00:37:32,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:37:33,156.156 INFO    ] Initializing speech engine...
[2026-10-25 00:37:33,178.178 INFO    ] 2026-10-25 00:37:33
[2026-10-25 00:37:33,434.434 INFO    ] 2026-10-25 00:37:33
[2026-10-25 00:37:33,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:37:33,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:37:33,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:37:33,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:37:33,812.812 INFO    ] time= 25/10/2026 00:37:33
[2026-10-25 00:37:33,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:37:33,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:37:33,933.933 INFO    ] No existing commands found in stream
[2026-10-25 00:37:38,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:37:38,946.946 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 00:37:42,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:37:42,474.474 INFO    ] Checking for system updates...
[2026-10-25 00:37:42,509.509 INFO    ] 200
[2026-10-25 00:37:42,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:42,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:37:42,568.568 INFO    ] No update needed
[2026-10-25 00:37:42,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 00:37:42,608.608 INFO    ] 200
[2026-10-25 00:37:42,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:42,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:37:42,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:37:42,716.716 INFO    ] No camera update needed
[2026-10-25 00:37:42,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:37:42,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:37:42,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:37:42,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:37:44,775.775 INFO    ] ================================================
[2026-10-25 00:37:44,790.790 INFO    ] Launching Daemon at Sun Oct 25 00:37:44 IST 2026
[2026-10-25 00:37:44,801.801 INFO    ] ================================================
[2026-10-25 00:37:45,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:37:45
[2026-10-25 00:37:46,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:37:46,311.311 INFO    ] Initializing speech engine...
[2026-10-25 00:37:46,319.319 INFO    ] 2026-10-25 00:37:46
[2026-10-25 00:37:46,586.586 INFO    ] 2026-10-25 00:37:46
[2026-10-25 00:37:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:37:46,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:37:46,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:37:47,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:37:47,137.137 INFO    ] time= 25/10/2026 00:37:47
[2026-10-25 00:37:47,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:37:47,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:37:47,292.292 INFO    ] No existing commands found in stream
[2026-10-25 00:37:52,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:37:52,315.315 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 00:37:54,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:37:54,278.278 INFO    ] Checking for system updates...
[2026-10-25 00:37:54,316.316 INFO    ] 200
[2026-10-25 00:37:54,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:54,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:54,380.380 INFO    ] No update needed
[2026-10-25 00:37:54,382.382 INFO    ] Checking for camera pi updates...
[2026-10-25 00:37:54,416.416 INFO    ] 200
[2026-10-25 00:37:54,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:37:54,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:37:54,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:37:54,515.515 INFO    ] No camera update needed
[2026-10-25 00:37:54,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:37:54,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:37:54,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:37:54,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:37:56,571.571 INFO    ] ================================================
[2026-10-25 00:37:56,586.586 INFO    ] Launching Daemon at Sun Oct 25 00:37:56 IST 2026
[2026-10-25 00:37:56,597.597 INFO    ] ================================================
[2026-10-25 00:37:57,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:37:57
[2026-10-25 00:37:57,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:37:58,179.179 INFO    ] Initializing speech engine...
[2026-10-25 00:37:58,185.185 INFO    ] 2026-10-25 00:37:58
[2026-10-25 00:37:58,470.470 INFO    ] 2026-10-25 00:37:58
[2026-10-25 00:37:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:37:58,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:37:58,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:37:58,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:37:59,006.006 INFO    ] time= 25/10/2026 00:37:58
[2026-10-25 00:37:59,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:37:59,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:37:59,164.164 INFO    ] No existing commands found in stream
[2026-10-25 00:38:04,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:38:04,187.187 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 00:38:07,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:38:07,303.303 INFO    ] Checking for system updates...
[2026-10-25 00:38:07,344.344 INFO    ] 200
[2026-10-25 00:38:07,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:07,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:07,404.404 INFO    ] No update needed
[2026-10-25 00:38:07,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 00:38:07,441.441 INFO    ] 200
[2026-10-25 00:38:07,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:07,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:38:07,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:07,536.536 INFO    ] No camera update needed
[2026-10-25 00:38:07,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:38:07,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:38:07,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:38:07,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:38:09,594.594 INFO    ] ================================================
[2026-10-25 00:38:09,609.609 INFO    ] Launching Daemon at Sun Oct 25 00:38:09 IST 2026
[2026-10-25 00:38:09,620.620 INFO    ] ================================================
[2026-10-25 00:38:10,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:38:10
[2026-10-25 00:38:10,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:38:11,027.027 INFO    ] Initializing speech engine...
[2026-10-25 00:38:11,036.036 INFO    ] 2026-10-25 00:38:11
[2026-10-25 00:38:11,328.328 INFO    ] 2026-10-25 00:38:11
[2026-10-25 00:38:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:38:11,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:38:11,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:38:11,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:38:11,836.836 INFO    ] time= 25/10/2026 00:38:11
[2026-10-25 00:38:11,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:38:11,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:38:12,023.023 INFO    ] No existing commands found in stream
[2026-10-25 00:38:17,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:38:17,037.037 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 00:38:20,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:38:20,807.807 INFO    ] Checking for system updates...
[2026-10-25 00:38:20,844.844 INFO    ] 200
[2026-10-25 00:38:20,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:20,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:20,901.901 INFO    ] No update needed
[2026-10-25 00:38:20,903.903 INFO    ] Checking for camera pi updates...
[2026-10-25 00:38:20,941.941 INFO    ] 200
[2026-10-25 00:38:20,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:20,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:38:21,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:21,036.036 INFO    ] No camera update needed
[2026-10-25 00:38:21,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:38:21,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:38:21,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:38:21,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:38:23,095.095 INFO    ] ================================================
[2026-10-25 00:38:23,110.110 INFO    ] Launching Daemon at Sun Oct 25 00:38:23 IST 2026
[2026-10-25 00:38:23,121.121 INFO    ] ================================================
[2026-10-25 00:38:23,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:38:23
[2026-10-25 00:38:24,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:38:24,587.587 INFO    ] Initializing speech engine...
[2026-10-25 00:38:24,594.594 INFO    ] 2026-10-25 00:38:24
[2026-10-25 00:38:24,849.849 INFO    ] 2026-10-25 00:38:24
[2026-10-25 00:38:24,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:38:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:38:25,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:38:25,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:38:25,314.314 INFO    ] time= 25/10/2026 00:38:25
[2026-10-25 00:38:25,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:38:25,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:38:25,473.473 INFO    ] No existing commands found in stream
[2026-10-25 00:38:30,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:38:30,512.512 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 00:38:33,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:38:33,888.888 INFO    ] Checking for system updates...
[2026-10-25 00:38:33,928.928 INFO    ] 200
[2026-10-25 00:38:33,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:33,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:38:33,986.986 INFO    ] No update needed
[2026-10-25 00:38:33,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 00:38:34,030.030 INFO    ] 200
[2026-10-25 00:38:34,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:34,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:38:34,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:38:34,134.134 INFO    ] No camera update needed
[2026-10-25 00:38:34,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:38:34,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:38:34,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:38:34,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:38:36,190.190 INFO    ] ================================================
[2026-10-25 00:38:36,205.205 INFO    ] Launching Daemon at Sun Oct 25 00:38:36 IST 2026
[2026-10-25 00:38:36,216.216 INFO    ] ================================================
[2026-10-25 00:38:36,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:38:36
[2026-10-25 00:38:37,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:38:37,631.631 INFO    ] Initializing speech engine...
[2026-10-25 00:38:37,643.643 INFO    ] 2026-10-25 00:38:37
[2026-10-25 00:38:37,889.889 INFO    ] 2026-10-25 00:38:37
[2026-10-25 00:38:37,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:38:38,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:38:38,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:38:38,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:38:38,353.353 INFO    ] time= 25/10/2026 00:38:38
[2026-10-25 00:38:38,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:38:38,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:38:38,520.520 INFO    ] No existing commands found in stream
[2026-10-25 00:38:43,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:38:43,559.559 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 00:38:47,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:38:47,304.304 INFO    ] Checking for system updates...
[2026-10-25 00:38:47,341.341 INFO    ] 200
[2026-10-25 00:38:47,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:47,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:47,398.398 INFO    ] No update needed
[2026-10-25 00:38:47,400.400 INFO    ] Checking for camera pi updates...
[2026-10-25 00:38:47,435.435 INFO    ] 200
[2026-10-25 00:38:47,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:47,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:38:47,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:47,639.639 INFO    ] No camera update needed
[2026-10-25 00:38:47,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:38:47,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:38:47,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:38:47,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:38:49,697.697 INFO    ] ================================================
[2026-10-25 00:38:49,712.712 INFO    ] Launching Daemon at Sun Oct 25 00:38:49 IST 2026
[2026-10-25 00:38:49,723.723 INFO    ] ================================================
[2026-10-25 00:38:50,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:38:50
[2026-10-25 00:38:50,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:38:51,174.174 INFO    ] Initializing speech engine...
[2026-10-25 00:38:51,183.183 INFO    ] 2026-10-25 00:38:51
[2026-10-25 00:38:51,478.478 INFO    ] 2026-10-25 00:38:51
[2026-10-25 00:38:51,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:38:51,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:38:51,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:38:51,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:38:51,901.901 INFO    ] time= 25/10/2026 00:38:51
[2026-10-25 00:38:51,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:38:51,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:38:52,052.052 INFO    ] No existing commands found in stream
[2026-10-25 00:38:57,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:38:57,080.080 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 00:38:58,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:38:58,433.433 INFO    ] Checking for system updates...
[2026-10-25 00:38:58,470.470 INFO    ] 200
[2026-10-25 00:38:58,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:58,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:58,537.537 INFO    ] No update needed
[2026-10-25 00:38:58,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 00:38:58,573.573 INFO    ] 200
[2026-10-25 00:38:58,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:38:58,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:38:58,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:38:58,670.670 INFO    ] No camera update needed
[2026-10-25 00:38:58,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:38:58,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:38:58,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:38:58,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:00,726.726 INFO    ] ================================================
[2026-10-25 00:39:00,741.741 INFO    ] Launching Daemon at Sun Oct 25 00:39:00 IST 2026
[2026-10-25 00:39:00,752.752 INFO    ] ================================================
[2026-10-25 00:39:01,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:01
[2026-10-25 00:39:02,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:39:02,418.418 INFO    ] Initializing speech engine...
[2026-10-25 00:39:02,434.434 INFO    ] 2026-10-25 00:39:02
[2026-10-25 00:39:02,728.728 INFO    ] 2026-10-25 00:39:02
[2026-10-25 00:39:02,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:39:02,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:39:02,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:39:03,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:39:03,164.164 INFO    ] time= 25/10/2026 00:39:03
[2026-10-25 00:39:03,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:39:03,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:39:03,364.364 INFO    ] No existing commands found in stream
[2026-10-25 00:39:08,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:39:08,394.394 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 00:39:11,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:39:11,522.522 INFO    ] Checking for system updates...
[2026-10-25 00:39:11,558.558 INFO    ] 200
[2026-10-25 00:39:11,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:11,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:11,616.616 INFO    ] No update needed
[2026-10-25 00:39:11,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 00:39:11,653.653 INFO    ] 200
[2026-10-25 00:39:11,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:11,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:39:11,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:11,746.746 INFO    ] No camera update needed
[2026-10-25 00:39:11,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:39:11,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:39:11,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:39:11,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:13,801.801 INFO    ] ================================================
[2026-10-25 00:39:13,816.816 INFO    ] Launching Daemon at Sun Oct 25 00:39:13 IST 2026
[2026-10-25 00:39:13,827.827 INFO    ] ================================================
[2026-10-25 00:39:14,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:14
[2026-10-25 00:39:14,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:39:15,232.232 INFO    ] Initializing speech engine...
[2026-10-25 00:39:15,238.238 INFO    ] 2026-10-25 00:39:15
[2026-10-25 00:39:15,532.532 INFO    ] 2026-10-25 00:39:15
[2026-10-25 00:39:15,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:39:15,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:39:15,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:39:15,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:39:15,878.878 INFO    ] time= 25/10/2026 00:39:15
[2026-10-25 00:39:15,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:39:15,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:39:15,964.964 INFO    ] No existing commands found in stream
[2026-10-25 00:39:20,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:39:20,984.984 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 00:39:22,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:39:22,583.583 INFO    ] Checking for system updates...
[2026-10-25 00:39:22,619.619 INFO    ] 200
[2026-10-25 00:39:22,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:22,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:22,677.677 INFO    ] No update needed
[2026-10-25 00:39:22,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 00:39:22,713.713 INFO    ] 200
[2026-10-25 00:39:22,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:22,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:39:22,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:22,805.805 INFO    ] No camera update needed
[2026-10-25 00:39:22,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:39:22,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:39:22,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:39:22,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:24,861.861 INFO    ] ================================================
[2026-10-25 00:39:24,876.876 INFO    ] Launching Daemon at Sun Oct 25 00:39:24 IST 2026
[2026-10-25 00:39:24,886.886 INFO    ] ================================================
[2026-10-25 00:39:25,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:25
[2026-10-25 00:39:26,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:39:26,284.284 INFO    ] Initializing speech engine...
[2026-10-25 00:39:26,306.306 INFO    ] 2026-10-25 00:39:26
[2026-10-25 00:39:26,557.557 INFO    ] 2026-10-25 00:39:26
[2026-10-25 00:39:26,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:39:26,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:39:26,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:39:26,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:39:27,054.054 INFO    ] time= 25/10/2026 00:39:26
[2026-10-25 00:39:27,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:39:27,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:39:27,247.247 INFO    ] No existing commands found in stream
[2026-10-25 00:39:32,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:39:32,274.274 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 00:39:33,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:39:33,396.396 INFO    ] Checking for system updates...
[2026-10-25 00:39:33,435.435 INFO    ] 200
[2026-10-25 00:39:33,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:33,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:39:33,499.499 INFO    ] No update needed
[2026-10-25 00:39:33,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 00:39:33,535.535 INFO    ] 200
[2026-10-25 00:39:33,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:33,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:39:33,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:39:33,631.631 INFO    ] No camera update needed
[2026-10-25 00:39:33,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:39:33,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:39:33,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:39:33,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:35,687.687 INFO    ] ================================================
[2026-10-25 00:39:35,702.702 INFO    ] Launching Daemon at Sun Oct 25 00:39:35 IST 2026
[2026-10-25 00:39:35,713.713 INFO    ] ================================================
[2026-10-25 00:39:36,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:36
[2026-10-25 00:39:36,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:39:37,123.123 INFO    ] Initializing speech engine...
[2026-10-25 00:39:37,132.132 INFO    ] 2026-10-25 00:39:37
[2026-10-25 00:39:37,423.423 INFO    ] 2026-10-25 00:39:37
[2026-10-25 00:39:37,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:39:37,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:39:37,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:39:37,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:39:37,836.836 INFO    ] time= 25/10/2026 00:39:37
[2026-10-25 00:39:37,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:39:37,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:39:37,922.922 INFO    ] No existing commands found in stream
[2026-10-25 00:39:42,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:39:42,940.940 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 00:39:45,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:39:45,667.667 INFO    ] Checking for system updates...
[2026-10-25 00:39:45,706.706 INFO    ] 200
[2026-10-25 00:39:45,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:45,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:45,765.765 INFO    ] No update needed
[2026-10-25 00:39:45,767.767 INFO    ] Checking for camera pi updates...
[2026-10-25 00:39:45,802.802 INFO    ] 200
[2026-10-25 00:39:45,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:45,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:39:45,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:39:45,897.897 INFO    ] No camera update needed
[2026-10-25 00:39:45,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:39:45,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:39:45,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:39:45,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:47,952.952 INFO    ] ================================================
[2026-10-25 00:39:47,968.968 INFO    ] Launching Daemon at Sun Oct 25 00:39:47 IST 2026
[2026-10-25 00:39:47,979.979 INFO    ] ================================================
[2026-10-25 00:39:48,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:48
[2026-10-25 00:39:49,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:39:49,398.398 INFO    ] Initializing speech engine...
[2026-10-25 00:39:49,407.407 INFO    ] 2026-10-25 00:39:49
[2026-10-25 00:39:49,666.666 INFO    ] 2026-10-25 00:39:49
[2026-10-25 00:39:49,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:39:49,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:39:49,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:39:50,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:39:50,150.150 INFO    ] time= 25/10/2026 00:39:50
[2026-10-25 00:39:50,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:39:50,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:39:50,274.274 INFO    ] No existing commands found in stream
[2026-10-25 00:39:55,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:39:55,287.287 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 00:39:56,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:39:56,630.630 INFO    ] Checking for system updates...
[2026-10-25 00:39:56,666.666 INFO    ] 200
[2026-10-25 00:39:56,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:56,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:39:56,725.725 INFO    ] No update needed
[2026-10-25 00:39:56,728.728 INFO    ] Checking for camera pi updates...
[2026-10-25 00:39:56,765.765 INFO    ] 200
[2026-10-25 00:39:56,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:39:56,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:39:56,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:39:56,857.857 INFO    ] No camera update needed
[2026-10-25 00:39:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:39:56,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:39:56,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:39:56,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:39:58,915.915 INFO    ] ================================================
[2026-10-25 00:39:58,931.931 INFO    ] Launching Daemon at Sun Oct 25 00:39:58 IST 2026
[2026-10-25 00:39:58,943.943 INFO    ] ================================================
[2026-10-25 00:39:59,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:39:59
[2026-10-25 00:40:00,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:40:00,342.342 INFO    ] Initializing speech engine...
[2026-10-25 00:40:00,356.356 INFO    ] 2026-10-25 00:40:00
[2026-10-25 00:40:00,623.623 INFO    ] 2026-10-25 00:40:00
[2026-10-25 00:40:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:40:00,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:40:00,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:40:00,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:40:00,995.995 INFO    ] time= 25/10/2026 00:40:00
[2026-10-25 00:40:01,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:40:01,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:40:01,173.173 INFO    ] No existing commands found in stream
[2026-10-25 00:40:06,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:40:06,203.203 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 00:40:08,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:40:08,995.995 INFO    ] Checking for system updates...
[2026-10-25 00:40:09,035.035 INFO    ] 200
[2026-10-25 00:40:09,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:09,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:09,106.106 INFO    ] No update needed
[2026-10-25 00:40:09,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 00:40:09,147.147 INFO    ] 200
[2026-10-25 00:40:09,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:09,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:40:09,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:09,242.242 INFO    ] No camera update needed
[2026-10-25 00:40:09,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:40:09,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:40:09,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:40:09,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:40:11,299.299 INFO    ] ================================================
[2026-10-25 00:40:11,315.315 INFO    ] Launching Daemon at Sun Oct 25 00:40:11 IST 2026
[2026-10-25 00:40:11,327.327 INFO    ] ================================================
[2026-10-25 00:40:11,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:40:11
[2026-10-25 00:40:12,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:40:12,935.935 INFO    ] Initializing speech engine...
[2026-10-25 00:40:12,942.942 INFO    ] 2026-10-25 00:40:12
[2026-10-25 00:40:13,229.229 INFO    ] 2026-10-25 00:40:13
[2026-10-25 00:40:13,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:40:13,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:40:13,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:40:13,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:40:13,776.776 INFO    ] time= 25/10/2026 00:40:13
[2026-10-25 00:40:13,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:40:13,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:40:13,934.934 INFO    ] No existing commands found in stream
[2026-10-25 00:40:18,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:40:18,973.973 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 00:40:22,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:40:22,788.788 INFO    ] Checking for system updates...
[2026-10-25 00:40:22,827.827 INFO    ] 200
[2026-10-25 00:40:22,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:22,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:40:22,887.887 INFO    ] No update needed
[2026-10-25 00:40:22,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 00:40:22,924.924 INFO    ] 200
[2026-10-25 00:40:22,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:22,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:40:23,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:40:23,028.028 INFO    ] No camera update needed
[2026-10-25 00:40:23,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:40:23,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:40:23,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:40:23,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:40:25,088.088 INFO    ] ================================================
[2026-10-25 00:40:25,104.104 INFO    ] Launching Daemon at Sun Oct 25 00:40:25 IST 2026
[2026-10-25 00:40:25,116.116 INFO    ] ================================================
[2026-10-25 00:40:25,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:40:25
[2026-10-25 00:40:26,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:40:26,519.519 INFO    ] Initializing speech engine...
[2026-10-25 00:40:26,542.542 INFO    ] 2026-10-25 00:40:26
[2026-10-25 00:40:26,798.798 INFO    ] 2026-10-25 00:40:26
[2026-10-25 00:40:26,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:40:27,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:40:27,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:40:27,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:40:27,301.301 INFO    ] time= 25/10/2026 00:40:27
[2026-10-25 00:40:27,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:40:27,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:40:27,486.486 INFO    ] No existing commands found in stream
[2026-10-25 00:40:32,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:40:32,516.516 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 00:40:33,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:40:33,853.853 INFO    ] Checking for system updates...
[2026-10-25 00:40:33,890.890 INFO    ] 200
[2026-10-25 00:40:33,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:33,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:40:33,949.949 INFO    ] No update needed
[2026-10-25 00:40:33,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 00:40:33,987.987 INFO    ] 200
[2026-10-25 00:40:33,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:34,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:40:34,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:40:34,107.107 INFO    ] No camera update needed
[2026-10-25 00:40:34,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:40:34,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:40:34,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:40:34,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:40:36,162.162 INFO    ] ================================================
[2026-10-25 00:40:36,177.177 INFO    ] Launching Daemon at Sun Oct 25 00:40:36 IST 2026
[2026-10-25 00:40:36,189.189 INFO    ] ================================================
[2026-10-25 00:40:36,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:40:36
[2026-10-25 00:40:37,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:40:37,756.756 INFO    ] Initializing speech engine...
[2026-10-25 00:40:37,764.764 INFO    ] 2026-10-25 00:40:37
[2026-10-25 00:40:38,051.051 INFO    ] 2026-10-25 00:40:38
[2026-10-25 00:40:38,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:40:38,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:40:38,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:40:38,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:40:38,590.590 INFO    ] time= 25/10/2026 00:40:38
[2026-10-25 00:40:38,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:40:38,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:40:38,742.742 INFO    ] No existing commands found in stream
[2026-10-25 00:40:43,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:40:43,759.759 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 00:40:46,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:40:46,212.212 INFO    ] Checking for system updates...
[2026-10-25 00:40:46,251.251 INFO    ] 200
[2026-10-25 00:40:46,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:46,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:46,316.316 INFO    ] No update needed
[2026-10-25 00:40:46,319.319 INFO    ] Checking for camera pi updates...
[2026-10-25 00:40:46,358.358 INFO    ] 200
[2026-10-25 00:40:46,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:46,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:40:46,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:46,459.459 INFO    ] No camera update needed
[2026-10-25 00:40:46,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:40:46,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:40:46,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:40:46,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:40:48,514.514 INFO    ] ================================================
[2026-10-25 00:40:48,529.529 INFO    ] Launching Daemon at Sun Oct 25 00:40:48 IST 2026
[2026-10-25 00:40:48,540.540 INFO    ] ================================================
[2026-10-25 00:40:49,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:40:49
[2026-10-25 00:40:49,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:40:50,170.170 INFO    ] Initializing speech engine...
[2026-10-25 00:40:50,181.181 INFO    ] 2026-10-25 00:40:50
[2026-10-25 00:40:50,468.468 INFO    ] 2026-10-25 00:40:50
[2026-10-25 00:40:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:40:50,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:40:50,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:40:50,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:40:50,965.965 INFO    ] time= 25/10/2026 00:40:50
[2026-10-25 00:40:51,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:40:51,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:40:51,128.128 INFO    ] No existing commands found in stream
[2026-10-25 00:40:56,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:40:56,155.155 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 00:40:59,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:40:59,009.009 INFO    ] Checking for system updates...
[2026-10-25 00:40:59,047.047 INFO    ] 200
[2026-10-25 00:40:59,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:59,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:59,107.107 INFO    ] No update needed
[2026-10-25 00:40:59,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 00:40:59,143.143 INFO    ] 200
[2026-10-25 00:40:59,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:40:59,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:40:59,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:40:59,339.339 INFO    ] No camera update needed
[2026-10-25 00:40:59,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:40:59,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:40:59,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:40:59,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:41:01,413.413 INFO    ] ================================================
[2026-10-25 00:41:01,448.448 INFO    ] Launching Daemon at Sun Oct 25 00:41:01 IST 2026
[2026-10-25 00:41:01,476.476 INFO    ] ================================================
[2026-10-25 00:41:02,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:41:02
[2026-10-25 00:41:02,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:41:03,157.157 INFO    ] Initializing speech engine...
[2026-10-25 00:41:03,165.165 INFO    ] 2026-10-25 00:41:03
[2026-10-25 00:41:03,427.427 INFO    ] 2026-10-25 00:41:03
[2026-10-25 00:41:03,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:41:03,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:41:03,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:41:03,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:41:03,838.838 INFO    ] time= 25/10/2026 00:41:03
[2026-10-25 00:41:03,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:41:03,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:41:04,012.012 INFO    ] No existing commands found in stream
[2026-10-25 00:41:09,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:41:09,039.039 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 00:41:10,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:41:10,910.910 INFO    ] Checking for system updates...
[2026-10-25 00:41:10,946.946 INFO    ] 200
[2026-10-25 00:41:10,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:11,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:11,004.004 INFO    ] No update needed
[2026-10-25 00:41:11,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 00:41:11,043.043 INFO    ] 200
[2026-10-25 00:41:11,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:11,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:41:11,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:11,138.138 INFO    ] No camera update needed
[2026-10-25 00:41:11,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:41:11,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:41:11,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:41:11,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:41:13,193.193 INFO    ] ================================================
[2026-10-25 00:41:13,209.209 INFO    ] Launching Daemon at Sun Oct 25 00:41:13 IST 2026
[2026-10-25 00:41:13,221.221 INFO    ] ================================================
[2026-10-25 00:41:13,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:41:13
[2026-10-25 00:41:14,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:41:14,830.830 INFO    ] Initializing speech engine...
[2026-10-25 00:41:14,841.841 INFO    ] 2026-10-25 00:41:14
[2026-10-25 00:41:15,146.146 INFO    ] 2026-10-25 00:41:15
[2026-10-25 00:41:15,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:41:15,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:41:15,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:41:15,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:41:15,653.653 INFO    ] time= 25/10/2026 00:41:15
[2026-10-25 00:41:15,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:41:15,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:41:15,806.806 INFO    ] No existing commands found in stream
[2026-10-25 00:41:20,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:41:20,822.822 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 00:41:25,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:41:25,275.275 INFO    ] Checking for system updates...
[2026-10-25 00:41:25,316.316 INFO    ] 200
[2026-10-25 00:41:25,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:25,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:25,384.384 INFO    ] No update needed
[2026-10-25 00:41:25,387.387 INFO    ] Checking for camera pi updates...
[2026-10-25 00:41:25,425.425 INFO    ] 200
[2026-10-25 00:41:25,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:25,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:41:25,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:25,520.520 INFO    ] No camera update needed
[2026-10-25 00:41:25,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:41:25,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:41:25,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:41:25,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:41:27,577.577 INFO    ] ================================================
[2026-10-25 00:41:27,592.592 INFO    ] Launching Daemon at Sun Oct 25 00:41:27 IST 2026
[2026-10-25 00:41:27,603.603 INFO    ] ================================================
[2026-10-25 00:41:28,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:41:28
[2026-10-25 00:41:28,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:41:29,215.215 INFO    ] Initializing speech engine...
[2026-10-25 00:41:29,229.229 INFO    ] 2026-10-25 00:41:29
[2026-10-25 00:41:29,512.512 INFO    ] 2026-10-25 00:41:29
[2026-10-25 00:41:29,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:41:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:41:29,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:41:30,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:41:30,043.043 INFO    ] time= 25/10/2026 00:41:30
[2026-10-25 00:41:30,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:41:30,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:41:30,198.198 INFO    ] No existing commands found in stream
[2026-10-25 00:41:35,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:41:35,222.222 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 00:41:36,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:41:36,242.242 INFO    ] Checking for system updates...
[2026-10-25 00:41:36,283.283 INFO    ] 200
[2026-10-25 00:41:36,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:36,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:41:36,341.341 INFO    ] No update needed
[2026-10-25 00:41:36,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 00:41:36,377.377 INFO    ] 200
[2026-10-25 00:41:36,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:36,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:41:36,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:41:36,471.471 INFO    ] No camera update needed
[2026-10-25 00:41:36,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:41:36,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:41:36,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:41:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:41:38,527.527 INFO    ] ================================================
[2026-10-25 00:41:38,542.542 INFO    ] Launching Daemon at Sun Oct 25 00:41:38 IST 2026
[2026-10-25 00:41:38,553.553 INFO    ] ================================================
[2026-10-25 00:41:39,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:41:39
[2026-10-25 00:41:39,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:41:40,182.182 INFO    ] Initializing speech engine...
[2026-10-25 00:41:40,190.190 INFO    ] 2026-10-25 00:41:40
[2026-10-25 00:41:40,475.475 INFO    ] 2026-10-25 00:41:40
[2026-10-25 00:41:40,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:41:40,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:41:40,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:41:40,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:41:41,013.013 INFO    ] time= 25/10/2026 00:41:40
[2026-10-25 00:41:41,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:41:41,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:41:41,168.168 INFO    ] No existing commands found in stream
[2026-10-25 00:41:46,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:41:46,193.193 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 00:41:49,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:41:49,220.220 INFO    ] Checking for system updates...
[2026-10-25 00:41:49,257.257 INFO    ] 200
[2026-10-25 00:41:49,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:49,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:49,318.318 INFO    ] No update needed
[2026-10-25 00:41:49,320.320 INFO    ] Checking for camera pi updates...
[2026-10-25 00:41:49,354.354 INFO    ] 200
[2026-10-25 00:41:49,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:41:49,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:41:49,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:41:49,450.450 INFO    ] No camera update needed
[2026-10-25 00:41:49,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:41:49,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:41:49,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:41:49,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:41:51,504.504 INFO    ] ================================================
[2026-10-25 00:41:51,519.519 INFO    ] Launching Daemon at Sun Oct 25 00:41:51 IST 2026
[2026-10-25 00:41:51,529.529 INFO    ] ================================================
[2026-10-25 00:41:52,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:41:52
[2026-10-25 00:41:52,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:41:53,162.162 INFO    ] Initializing speech engine...
[2026-10-25 00:41:53,176.176 INFO    ] 2026-10-25 00:41:53
[2026-10-25 00:41:53,455.455 INFO    ] 2026-10-25 00:41:53
[2026-10-25 00:41:53,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:41:53,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:41:53,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:41:53,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:41:54,013.013 INFO    ] time= 25/10/2026 00:41:53
[2026-10-25 00:41:54,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:41:54,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:41:54,160.160 INFO    ] No existing commands found in stream
[2026-10-25 00:41:59,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:41:59,181.181 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 00:42:02,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:42:02,383.383 INFO    ] Checking for system updates...
[2026-10-25 00:42:02,437.437 INFO    ] 200
[2026-10-25 00:42:02,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:02,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:02,535.535 INFO    ] No update needed
[2026-10-25 00:42:02,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 00:42:02,581.581 INFO    ] 200
[2026-10-25 00:42:02,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:02,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:42:02,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:02,669.669 INFO    ] No camera update needed
[2026-10-25 00:42:02,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:42:02,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:42:02,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:42:02,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:42:04,727.727 INFO    ] ================================================
[2026-10-25 00:42:04,742.742 INFO    ] Launching Daemon at Sun Oct 25 00:42:04 IST 2026
[2026-10-25 00:42:04,753.753 INFO    ] ================================================
[2026-10-25 00:42:05,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:42:05
[2026-10-25 00:42:06,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:42:06,266.266 INFO    ] Initializing speech engine...
[2026-10-25 00:42:06,272.272 INFO    ] 2026-10-25 00:42:06
[2026-10-25 00:42:06,546.546 INFO    ] 2026-10-25 00:42:06
[2026-10-25 00:42:06,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:42:06,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:42:06,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:42:06,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:42:06,987.987 INFO    ] time= 25/10/2026 00:42:06
[2026-10-25 00:42:07,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:42:07,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:42:07,167.167 INFO    ] No existing commands found in stream
[2026-10-25 00:42:12,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:42:12,182.182 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 00:42:15,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:42:15,178.178 INFO    ] Checking for system updates...
[2026-10-25 00:42:15,214.214 INFO    ] 200
[2026-10-25 00:42:15,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:15,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:42:15,278.278 INFO    ] No update needed
[2026-10-25 00:42:15,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 00:42:15,315.315 INFO    ] 200
[2026-10-25 00:42:15,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:15,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:42:15,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:42:15,413.413 INFO    ] No camera update needed
[2026-10-25 00:42:15,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:42:15,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:42:15,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:42:15,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:42:17,467.467 INFO    ] ================================================
[2026-10-25 00:42:17,482.482 INFO    ] Launching Daemon at Sun Oct 25 00:42:17 IST 2026
[2026-10-25 00:42:17,492.492 INFO    ] ================================================
[2026-10-25 00:42:18,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:42:18
[2026-10-25 00:42:18,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:42:18,926.926 INFO    ] Initializing speech engine...
[2026-10-25 00:42:18,935.935 INFO    ] 2026-10-25 00:42:18
[2026-10-25 00:42:19,187.187 INFO    ] 2026-10-25 00:42:19
[2026-10-25 00:42:19,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:42:19,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:42:19,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:42:19,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:42:19,662.662 INFO    ] time= 25/10/2026 00:42:19
[2026-10-25 00:42:19,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:42:19,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:42:19,806.806 INFO    ] No existing commands found in stream
[2026-10-25 00:42:24,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:42:24,845.845 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 00:42:28,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:42:28,827.827 INFO    ] Checking for system updates...
[2026-10-25 00:42:28,867.867 INFO    ] 200
[2026-10-25 00:42:28,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:28,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:28,927.927 INFO    ] No update needed
[2026-10-25 00:42:28,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 00:42:28,968.968 INFO    ] 200
[2026-10-25 00:42:28,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:29,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:42:29,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:29,064.064 INFO    ] No camera update needed
[2026-10-25 00:42:29,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:42:29,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:42:29,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:42:29,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:42:31,122.122 INFO    ] ================================================
[2026-10-25 00:42:31,137.137 INFO    ] Launching Daemon at Sun Oct 25 00:42:31 IST 2026
[2026-10-25 00:42:31,149.149 INFO    ] ================================================
[2026-10-25 00:42:31,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:42:31
[2026-10-25 00:42:32,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:42:32,630.630 INFO    ] Initializing speech engine...
[2026-10-25 00:42:32,653.653 INFO    ] 2026-10-25 00:42:32
[2026-10-25 00:42:32,904.904 INFO    ] 2026-10-25 00:42:32
[2026-10-25 00:42:32,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:42:33,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:42:33,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:42:33,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:42:33,352.352 INFO    ] time= 25/10/2026 00:42:33
[2026-10-25 00:42:33,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:42:33,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:42:33,522.522 INFO    ] No existing commands found in stream
[2026-10-25 00:42:38,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:42:38,535.535 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 00:42:39,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:42:39,624.624 INFO    ] Checking for system updates...
[2026-10-25 00:42:39,665.665 INFO    ] 200
[2026-10-25 00:42:39,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:39,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:42:39,734.734 INFO    ] No update needed
[2026-10-25 00:42:39,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 00:42:39,776.776 INFO    ] 200
[2026-10-25 00:42:39,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:39,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:42:39,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:42:39,876.876 INFO    ] No camera update needed
[2026-10-25 00:42:39,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:42:39,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:42:39,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:42:39,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:42:41,935.935 INFO    ] ================================================
[2026-10-25 00:42:41,949.949 INFO    ] Launching Daemon at Sun Oct 25 00:42:41 IST 2026
[2026-10-25 00:42:41,960.960 INFO    ] ================================================
[2026-10-25 00:42:42,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:42:42
[2026-10-25 00:42:43,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:42:43,531.531 INFO    ] Initializing speech engine...
[2026-10-25 00:42:43,539.539 INFO    ] 2026-10-25 00:42:43
[2026-10-25 00:42:43,821.821 INFO    ] 2026-10-25 00:42:43
[2026-10-25 00:42:43,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:42:44,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:42:44,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:42:44,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:42:44,329.329 INFO    ] time= 25/10/2026 00:42:44
[2026-10-25 00:42:44,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:42:44,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:42:44,502.502 INFO    ] No existing commands found in stream
[2026-10-25 00:42:49,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:42:49,529.529 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 00:42:50,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:42:50,405.405 INFO    ] Checking for system updates...
[2026-10-25 00:42:50,442.442 INFO    ] 200
[2026-10-25 00:42:50,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:50,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:50,507.507 INFO    ] No update needed
[2026-10-25 00:42:50,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 00:42:50,548.548 INFO    ] 200
[2026-10-25 00:42:50,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:42:50,596.596 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:42:50,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:42:50,647.647 INFO    ] No camera update needed
[2026-10-25 00:42:50,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:42:50,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:42:50,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:42:50,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:42:52,705.705 INFO    ] ================================================
[2026-10-25 00:42:52,720.720 INFO    ] Launching Daemon at Sun Oct 25 00:42:52 IST 2026
[2026-10-25 00:42:52,730.730 INFO    ] ================================================
[2026-10-25 00:42:53,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:42:53
[2026-10-25 00:42:53,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:42:54,170.170 INFO    ] Initializing speech engine...
[2026-10-25 00:42:54,176.176 INFO    ] 2026-10-25 00:42:54
[2026-10-25 00:42:54,468.468 INFO    ] 2026-10-25 00:42:54
[2026-10-25 00:42:54,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:42:54,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:42:54,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:42:54,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:42:54,998.998 INFO    ] time= 25/10/2026 00:42:54
[2026-10-25 00:42:55,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:42:55,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:42:55,183.183 INFO    ] No existing commands found in stream
[2026-10-25 00:43:00,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:00,221.221 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 00:43:01,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:43:01,870.870 INFO    ] Checking for system updates...
[2026-10-25 00:43:01,917.917 INFO    ] 200
[2026-10-25 00:43:01,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:02,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:02,004.004 INFO    ] No update needed
[2026-10-25 00:43:02,007.007 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:02,055.055 INFO    ] 200
[2026-10-25 00:43:02,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:02,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:02,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:02,160.160 INFO    ] No camera update needed
[2026-10-25 00:43:02,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:02,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:02,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:02,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:43:04,227.227 INFO    ] ================================================
[2026-10-25 00:43:04,242.242 INFO    ] Launching Daemon at Sun Oct 25 00:43:04 IST 2026
[2026-10-25 00:43:04,252.252 INFO    ] ================================================
[2026-10-25 00:43:04,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:43:04
[2026-10-25 00:43:05,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:43:05,696.696 INFO    ] Initializing speech engine...
[2026-10-25 00:43:05,706.706 INFO    ] 2026-10-25 00:43:05
[2026-10-25 00:43:05,956.956 INFO    ] 2026-10-25 00:43:05
[2026-10-25 00:43:05,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:43:06,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:43:06,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:43:06,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:43:06,453.453 INFO    ] time= 25/10/2026 00:43:06
[2026-10-25 00:43:06,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:43:06,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:43:06,656.656 INFO    ] No existing commands found in stream
[2026-10-25 00:43:11,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:11,684.684 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 00:43:12,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:43:12,495.495 INFO    ] Checking for system updates...
[2026-10-25 00:43:12,533.533 INFO    ] 200
[2026-10-25 00:43:12,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:12,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:12,592.592 INFO    ] No update needed
[2026-10-25 00:43:12,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:12,631.631 INFO    ] 200
[2026-10-25 00:43:12,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:12,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:12,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:12,728.728 INFO    ] No camera update needed
[2026-10-25 00:43:12,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:12,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:12,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:12,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:43:14,785.785 INFO    ] ================================================
[2026-10-25 00:43:14,800.800 INFO    ] Launching Daemon at Sun Oct 25 00:43:14 IST 2026
[2026-10-25 00:43:14,810.810 INFO    ] ================================================
[2026-10-25 00:43:15,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:43:15
[2026-10-25 00:43:15,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:43:16,254.254 INFO    ] Initializing speech engine...
[2026-10-25 00:43:16,265.265 INFO    ] 2026-10-25 00:43:16
[2026-10-25 00:43:16,510.510 INFO    ] 2026-10-25 00:43:16
[2026-10-25 00:43:16,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:43:16,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:43:16,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:43:16,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:43:16,989.989 INFO    ] time= 25/10/2026 00:43:16
[2026-10-25 00:43:17,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:43:17,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:43:17,171.171 INFO    ] No existing commands found in stream
[2026-10-25 00:43:22,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:22,198.198 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 00:43:22,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:43:22,713.713 INFO    ] Checking for system updates...
[2026-10-25 00:43:22,749.749 INFO    ] 200
[2026-10-25 00:43:22,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:22,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:22,813.813 INFO    ] No update needed
[2026-10-25 00:43:22,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:22,851.851 INFO    ] 200
[2026-10-25 00:43:22,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:22,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:22,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:22,946.946 INFO    ] No camera update needed
[2026-10-25 00:43:22,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:22,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:22,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:22,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:43:25,004.004 INFO    ] ================================================
[2026-10-25 00:43:25,019.019 INFO    ] Launching Daemon at Sun Oct 25 00:43:25 IST 2026
[2026-10-25 00:43:25,030.030 INFO    ] ================================================
[2026-10-25 00:43:25,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:43:25
[2026-10-25 00:43:26,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:43:26,468.468 INFO    ] Initializing speech engine...
[2026-10-25 00:43:26,487.487 INFO    ] 2026-10-25 00:43:26
[2026-10-25 00:43:26,739.739 INFO    ] 2026-10-25 00:43:26
[2026-10-25 00:43:26,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:43:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:43:27,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:43:27,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:43:27,222.222 INFO    ] time= 25/10/2026 00:43:27
[2026-10-25 00:43:27,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:43:27,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:43:27,377.377 INFO    ] No existing commands found in stream
[2026-10-25 00:43:32,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:32,418.418 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 00:43:33,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:43:33,968.968 INFO    ] Checking for system updates...
[2026-10-25 00:43:34,005.005 INFO    ] 200
[2026-10-25 00:43:34,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:34,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:34,064.064 INFO    ] No update needed
[2026-10-25 00:43:34,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:34,101.101 INFO    ] 200
[2026-10-25 00:43:34,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:34,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:34,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:34,189.189 INFO    ] No camera update needed
[2026-10-25 00:43:34,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:34,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:34,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:34,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:43:36,245.245 INFO    ] ================================================
[2026-10-25 00:43:36,266.266 INFO    ] Launching Daemon at Sun Oct 25 00:43:36 IST 2026
[2026-10-25 00:43:36,277.277 INFO    ] ================================================
[2026-10-25 00:43:36,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:43:36
[2026-10-25 00:43:37,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:43:37,671.671 INFO    ] Initializing speech engine...
[2026-10-25 00:43:37,686.686 INFO    ] 2026-10-25 00:43:37
[2026-10-25 00:43:37,953.953 INFO    ] 2026-10-25 00:43:37
[2026-10-25 00:43:37,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:43:38,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:43:38,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:43:38,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:43:38,433.433 INFO    ] time= 25/10/2026 00:43:38
[2026-10-25 00:43:38,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:43:38,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:43:38,647.647 INFO    ] No existing commands found in stream
[2026-10-25 00:43:43,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:43,675.675 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 00:43:45,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:43:45,304.304 INFO    ] Checking for system updates...
[2026-10-25 00:43:45,340.340 INFO    ] 200
[2026-10-25 00:43:45,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:45,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:45,404.404 INFO    ] No update needed
[2026-10-25 00:43:45,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:45,441.441 INFO    ] 200
[2026-10-25 00:43:45,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:45,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:45,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:43:45,548.548 INFO    ] No camera update needed
[2026-10-25 00:43:45,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:45,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:45,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:45,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:43:47,607.607 INFO    ] ================================================
[2026-10-25 00:43:47,621.621 INFO    ] Launching Daemon at Sun Oct 25 00:43:47 IST 2026
[2026-10-25 00:43:47,632.632 INFO    ] ================================================
[2026-10-25 00:43:48,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:43:48
[2026-10-25 00:43:48,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:43:49,071.071 INFO    ] Initializing speech engine...
[2026-10-25 00:43:49,080.080 INFO    ] 2026-10-25 00:43:49
[2026-10-25 00:43:49,328.328 INFO    ] 2026-10-25 00:43:49
[2026-10-25 00:43:49,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:43:49,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:43:49,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:43:49,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:43:49,782.782 INFO    ] time= 25/10/2026 00:43:49
[2026-10-25 00:43:49,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:43:49,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:43:49,986.986 INFO    ] No existing commands found in stream
[2026-10-25 00:43:54,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:43:54,996.996 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 00:43:58,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:43:58,976.976 INFO    ] Checking for system updates...
[2026-10-25 00:43:59,012.012 INFO    ] 200
[2026-10-25 00:43:59,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:59,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:59,069.069 INFO    ] No update needed
[2026-10-25 00:43:59,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 00:43:59,105.105 INFO    ] 200
[2026-10-25 00:43:59,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:43:59,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:43:59,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:43:59,203.203 INFO    ] No camera update needed
[2026-10-25 00:43:59,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:43:59,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:43:59,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:43:59,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:44:01,303.303 INFO    ] ================================================
[2026-10-25 00:44:01,336.336 INFO    ] Launching Daemon at Sun Oct 25 00:44:01 IST 2026
[2026-10-25 00:44:01,442.442 INFO    ] ================================================
[2026-10-25 00:44:02,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:44:02
[2026-10-25 00:44:02,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:44:03,076.076 INFO    ] Initializing speech engine...
[2026-10-25 00:44:03,084.084 INFO    ] 2026-10-25 00:44:03
[2026-10-25 00:44:03,376.376 INFO    ] 2026-10-25 00:44:03
[2026-10-25 00:44:03,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:44:03,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:44:03,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:44:03,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:44:03,810.810 INFO    ] time= 25/10/2026 00:44:03
[2026-10-25 00:44:03,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:44:03,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:44:03,900.900 INFO    ] No existing commands found in stream
[2026-10-25 00:44:08,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:44:08,936.936 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 00:44:11,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:44:11,723.723 INFO    ] Checking for system updates...
[2026-10-25 00:44:11,764.764 INFO    ] 200
[2026-10-25 00:44:11,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:11,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:11,823.823 INFO    ] No update needed
[2026-10-25 00:44:11,825.825 INFO    ] Checking for camera pi updates...
[2026-10-25 00:44:11,860.860 INFO    ] 200
[2026-10-25 00:44:11,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:11,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:44:11,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:11,955.955 INFO    ] No camera update needed
[2026-10-25 00:44:11,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:44:11,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:44:11,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:44:11,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:44:14,012.012 INFO    ] ================================================
[2026-10-25 00:44:14,027.027 INFO    ] Launching Daemon at Sun Oct 25 00:44:14 IST 2026
[2026-10-25 00:44:14,037.037 INFO    ] ================================================
[2026-10-25 00:44:14,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:44:14
[2026-10-25 00:44:15,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:44:15,483.483 INFO    ] Initializing speech engine...
[2026-10-25 00:44:15,494.494 INFO    ] 2026-10-25 00:44:15
[2026-10-25 00:44:15,750.750 INFO    ] 2026-10-25 00:44:15
[2026-10-25 00:44:15,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:44:16,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:44:16,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:44:16,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:44:16,290.290 INFO    ] time= 25/10/2026 00:44:16
[2026-10-25 00:44:16,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:44:16,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:44:16,429.429 INFO    ] No existing commands found in stream
[2026-10-25 00:44:21,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:44:21,456.456 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 00:44:25,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:44:25,822.822 INFO    ] Checking for system updates...
[2026-10-25 00:44:25,859.859 INFO    ] 200
[2026-10-25 00:44:25,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:25,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:25,916.916 INFO    ] No update needed
[2026-10-25 00:44:25,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 00:44:25,952.952 INFO    ] 200
[2026-10-25 00:44:25,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:25,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:44:26,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:26,045.045 INFO    ] No camera update needed
[2026-10-25 00:44:26,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:44:26,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:44:26,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:44:26,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:44:28,102.102 INFO    ] ================================================
[2026-10-25 00:44:28,116.116 INFO    ] Launching Daemon at Sun Oct 25 00:44:28 IST 2026
[2026-10-25 00:44:28,127.127 INFO    ] ================================================
[2026-10-25 00:44:28,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:44:28
[2026-10-25 00:44:29,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:44:29,727.727 INFO    ] Initializing speech engine...
[2026-10-25 00:44:29,740.740 INFO    ] 2026-10-25 00:44:29
[2026-10-25 00:44:30,021.021 INFO    ] 2026-10-25 00:44:30
[2026-10-25 00:44:30,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:44:30,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:44:30,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:44:30,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:44:30,475.475 INFO    ] time= 25/10/2026 00:44:30
[2026-10-25 00:44:30,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:44:30,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:44:30,634.634 INFO    ] No existing commands found in stream
[2026-10-25 00:44:35,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:44:35,649.649 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 00:44:37,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:44:37,884.884 INFO    ] Checking for system updates...
[2026-10-25 00:44:37,921.921 INFO    ] 200
[2026-10-25 00:44:37,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:37,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:37,980.980 INFO    ] No update needed
[2026-10-25 00:44:37,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 00:44:38,016.016 INFO    ] 200
[2026-10-25 00:44:38,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:38,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:44:38,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:44:38,096.096 INFO    ] No camera update needed
[2026-10-25 00:44:38,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:44:38,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:44:38,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:44:38,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:44:40,150.150 INFO    ] ================================================
[2026-10-25 00:44:40,166.166 INFO    ] Launching Daemon at Sun Oct 25 00:44:40 IST 2026
[2026-10-25 00:44:40,177.177 INFO    ] ================================================
[2026-10-25 00:44:40,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:44:40
[2026-10-25 00:44:41,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:44:41,634.634 INFO    ] Initializing speech engine...
[2026-10-25 00:44:41,643.643 INFO    ] 2026-10-25 00:44:41
[2026-10-25 00:44:41,887.887 INFO    ] 2026-10-25 00:44:41
[2026-10-25 00:44:41,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:44:42,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:44:42,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:44:42,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:44:42,425.425 INFO    ] time= 25/10/2026 00:44:42
[2026-10-25 00:44:42,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:44:42,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:44:42,580.580 INFO    ] No existing commands found in stream
[2026-10-25 00:44:47,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:44:47,613.613 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 00:44:48,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:44:48,329.329 INFO    ] Checking for system updates...
[2026-10-25 00:44:48,371.371 INFO    ] 200
[2026-10-25 00:44:48,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:48,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:44:48,429.429 INFO    ] No update needed
[2026-10-25 00:44:48,431.431 INFO    ] Checking for camera pi updates...
[2026-10-25 00:44:48,465.465 INFO    ] 200
[2026-10-25 00:44:48,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:44:48,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:44:48,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:44:48,561.561 INFO    ] No camera update needed
[2026-10-25 00:44:48,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:44:48,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:44:48,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:44:48,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:44:50,615.615 INFO    ] ================================================
[2026-10-25 00:44:50,630.630 INFO    ] Launching Daemon at Sun Oct 25 00:44:50 IST 2026
[2026-10-25 00:44:50,641.641 INFO    ] ================================================
[2026-10-25 00:44:51,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:44:51
[2026-10-25 00:44:51,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:44:52,254.254 INFO    ] Initializing speech engine...
[2026-10-25 00:44:52,261.261 INFO    ] 2026-10-25 00:44:52
[2026-10-25 00:44:52,532.532 INFO    ] 2026-10-25 00:44:52
[2026-10-25 00:44:52,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:44:52,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:44:52,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:44:52,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:44:53,014.014 INFO    ] time= 25/10/2026 00:44:52
[2026-10-25 00:44:53,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:44:53,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:44:53,176.176 INFO    ] No existing commands found in stream
[2026-10-25 00:44:58,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:44:58,217.217 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 00:45:01,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:45:01,766.766 INFO    ] Checking for system updates...
[2026-10-25 00:45:01,913.913 INFO    ] 200
[2026-10-25 00:45:01,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:02,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:02,468.468 INFO    ] No update needed
[2026-10-25 00:45:02,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 00:45:02,604.604 INFO    ] 200
[2026-10-25 00:45:02,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:02,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:45:02,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:02,720.720 INFO    ] No camera update needed
[2026-10-25 00:45:02,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:45:02,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:45:02,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:45:02,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:45:04,782.782 INFO    ] ================================================
[2026-10-25 00:45:04,798.798 INFO    ] Launching Daemon at Sun Oct 25 00:45:04 IST 2026
[2026-10-25 00:45:04,809.809 INFO    ] ================================================
[2026-10-25 00:45:05,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:45:05
[2026-10-25 00:45:05,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:45:06,223.223 INFO    ] Initializing speech engine...
[2026-10-25 00:45:06,238.238 INFO    ] 2026-10-25 00:45:06
[2026-10-25 00:45:06,492.492 INFO    ] 2026-10-25 00:45:06
[2026-10-25 00:45:06,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:45:06,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:45:06,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:45:06,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:45:06,981.981 INFO    ] time= 25/10/2026 00:45:06
[2026-10-25 00:45:07,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:45:07,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:45:07,184.184 INFO    ] No existing commands found in stream
[2026-10-25 00:45:12,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:45:12,218.218 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 00:45:15,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:45:15,444.444 INFO    ] Checking for system updates...
[2026-10-25 00:45:15,484.484 INFO    ] 200
[2026-10-25 00:45:15,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:15,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:15,542.542 INFO    ] No update needed
[2026-10-25 00:45:15,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 00:45:15,578.578 INFO    ] 200
[2026-10-25 00:45:15,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:15,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:45:15,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:15,777.777 INFO    ] No camera update needed
[2026-10-25 00:45:15,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:45:15,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:45:15,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:45:15,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:45:17,838.838 INFO    ] ================================================
[2026-10-25 00:45:17,853.853 INFO    ] Launching Daemon at Sun Oct 25 00:45:17 IST 2026
[2026-10-25 00:45:17,864.864 INFO    ] ================================================
[2026-10-25 00:45:18,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:45:18
[2026-10-25 00:45:19,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:45:19,306.306 INFO    ] Initializing speech engine...
[2026-10-25 00:45:19,320.320 INFO    ] 2026-10-25 00:45:19
[2026-10-25 00:45:19,586.586 INFO    ] 2026-10-25 00:45:19
[2026-10-25 00:45:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:45:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:45:19,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:45:19,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:45:19,964.964 INFO    ] time= 25/10/2026 00:45:19
[2026-10-25 00:45:19,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:45:20,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:45:20,125.125 INFO    ] No existing commands found in stream
[2026-10-25 00:45:25,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:45:25,158.158 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 00:45:28,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:45:28,740.740 INFO    ] Checking for system updates...
[2026-10-25 00:45:28,776.776 INFO    ] 200
[2026-10-25 00:45:28,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:28,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:28,834.834 INFO    ] No update needed
[2026-10-25 00:45:28,837.837 INFO    ] Checking for camera pi updates...
[2026-10-25 00:45:28,870.870 INFO    ] 200
[2026-10-25 00:45:28,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:28,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:45:28,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:28,968.968 INFO    ] No camera update needed
[2026-10-25 00:45:28,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:45:28,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:45:28,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:45:28,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:45:31,025.025 INFO    ] ================================================
[2026-10-25 00:45:31,039.039 INFO    ] Launching Daemon at Sun Oct 25 00:45:31 IST 2026
[2026-10-25 00:45:31,050.050 INFO    ] ================================================
[2026-10-25 00:45:31,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:45:31
[2026-10-25 00:45:32,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:45:32,518.518 INFO    ] Initializing speech engine...
[2026-10-25 00:45:32,528.528 INFO    ] 2026-10-25 00:45:32
[2026-10-25 00:45:32,815.815 INFO    ] 2026-10-25 00:45:32
[2026-10-25 00:45:32,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:45:33,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:45:33,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:45:33,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:45:33,230.230 INFO    ] time= 25/10/2026 00:45:33
[2026-10-25 00:45:33,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:45:33,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:45:33,421.421 INFO    ] No existing commands found in stream
[2026-10-25 00:45:38,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:45:38,457.457 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 00:45:40,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:45:40,541.541 INFO    ] Checking for system updates...
[2026-10-25 00:45:40,579.579 INFO    ] 200
[2026-10-25 00:45:40,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:40,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:40,638.638 INFO    ] No update needed
[2026-10-25 00:45:40,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 00:45:40,676.676 INFO    ] 200
[2026-10-25 00:45:40,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:40,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:45:40,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:45:40,777.777 INFO    ] No camera update needed
[2026-10-25 00:45:40,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:45:40,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:45:40,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:45:40,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:45:42,836.836 INFO    ] ================================================
[2026-10-25 00:45:42,852.852 INFO    ] Launching Daemon at Sun Oct 25 00:45:42 IST 2026
[2026-10-25 00:45:42,863.863 INFO    ] ================================================
[2026-10-25 00:45:43,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:45:43
[2026-10-25 00:45:44,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:45:44,493.493 INFO    ] Initializing speech engine...
[2026-10-25 00:45:44,501.501 INFO    ] 2026-10-25 00:45:44
[2026-10-25 00:45:44,815.815 INFO    ] 2026-10-25 00:45:44
[2026-10-25 00:45:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:45:45,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:45:45,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:45:45,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:45:45,335.335 INFO    ] time= 25/10/2026 00:45:45
[2026-10-25 00:45:45,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:45:45,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:45:45,488.488 INFO    ] No existing commands found in stream
[2026-10-25 00:45:50,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:45:50,516.516 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 00:45:53,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:45:53,649.649 INFO    ] Checking for system updates...
[2026-10-25 00:45:53,690.690 INFO    ] 200
[2026-10-25 00:45:53,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:53,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:45:53,750.750 INFO    ] No update needed
[2026-10-25 00:45:53,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 00:45:53,787.787 INFO    ] 200
[2026-10-25 00:45:53,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:45:53,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:45:53,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:45:53,883.883 INFO    ] No camera update needed
[2026-10-25 00:45:53,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:45:53,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:45:53,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:45:53,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:45:55,941.941 INFO    ] ================================================
[2026-10-25 00:45:55,956.956 INFO    ] Launching Daemon at Sun Oct 25 00:45:55 IST 2026
[2026-10-25 00:45:55,967.967 INFO    ] ================================================
[2026-10-25 00:45:56,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:45:56
[2026-10-25 00:45:57,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:45:57,364.364 INFO    ] Initializing speech engine...
[2026-10-25 00:45:57,373.373 INFO    ] 2026-10-25 00:45:57
[2026-10-25 00:45:57,666.666 INFO    ] 2026-10-25 00:45:57
[2026-10-25 00:45:57,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:45:57,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:45:57,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:45:58,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:45:58,089.089 INFO    ] time= 25/10/2026 00:45:58
[2026-10-25 00:45:58,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:45:58,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:45:58,259.259 INFO    ] No existing commands found in stream
[2026-10-25 00:46:03,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:46:03,287.287 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 00:46:03,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:46:03,778.778 INFO    ] Checking for system updates...
[2026-10-25 00:46:03,815.815 INFO    ] 200
[2026-10-25 00:46:03,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:03,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:03,875.875 INFO    ] No update needed
[2026-10-25 00:46:03,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 00:46:03,923.923 INFO    ] 200
[2026-10-25 00:46:03,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:03,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:46:04,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:04,032.032 INFO    ] No camera update needed
[2026-10-25 00:46:04,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:46:04,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:46:04,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:46:04,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:46:06,090.090 INFO    ] ================================================
[2026-10-25 00:46:06,106.106 INFO    ] Launching Daemon at Sun Oct 25 00:46:06 IST 2026
[2026-10-25 00:46:06,117.117 INFO    ] ================================================
[2026-10-25 00:46:06,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:46:06
[2026-10-25 00:46:07,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:46:07,744.744 INFO    ] Initializing speech engine...
[2026-10-25 00:46:07,752.752 INFO    ] 2026-10-25 00:46:07
[2026-10-25 00:46:08,072.072 INFO    ] 2026-10-25 00:46:08
[2026-10-25 00:46:08,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:46:08,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:46:08,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:46:08,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:46:08,585.585 INFO    ] time= 25/10/2026 00:46:08
[2026-10-25 00:46:08,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:46:08,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:46:08,743.743 INFO    ] No existing commands found in stream
[2026-10-25 00:46:13,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:46:13,758.758 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 00:46:14,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:46:14,662.662 INFO    ] Checking for system updates...
[2026-10-25 00:46:14,698.698 INFO    ] 200
[2026-10-25 00:46:14,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:14,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:14,756.756 INFO    ] No update needed
[2026-10-25 00:46:14,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 00:46:14,793.793 INFO    ] 200
[2026-10-25 00:46:14,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:14,841.841 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:46:14,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:14,915.915 INFO    ] No camera update needed
[2026-10-25 00:46:14,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:46:14,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:46:14,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:46:14,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:46:16,971.971 INFO    ] ================================================
[2026-10-25 00:46:16,985.985 INFO    ] Launching Daemon at Sun Oct 25 00:46:16 IST 2026
[2026-10-25 00:46:17,996.996 INFO    ] ================================================
[2026-10-25 00:46:17,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:46:17
[2026-10-25 00:46:18,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:46:18,644.644 INFO    ] Initializing speech engine...
[2026-10-25 00:46:18,653.653 INFO    ] 2026-10-25 00:46:18
[2026-10-25 00:46:18,974.974 INFO    ] 2026-10-25 00:46:18
[2026-10-25 00:46:19,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:46:19,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:46:19,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:46:19,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:46:19,495.495 INFO    ] time= 25/10/2026 00:46:19
[2026-10-25 00:46:19,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:46:19,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:46:19,647.647 INFO    ] No existing commands found in stream
[2026-10-25 00:46:24,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:46:24,669.669 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 00:46:27,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:46:27,045.045 INFO    ] Checking for system updates...
[2026-10-25 00:46:27,085.085 INFO    ] 200
[2026-10-25 00:46:27,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:27,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:27,161.161 INFO    ] No update needed
[2026-10-25 00:46:27,165.165 INFO    ] Checking for camera pi updates...
[2026-10-25 00:46:27,206.206 INFO    ] 200
[2026-10-25 00:46:27,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:27,260.260 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:46:27,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:46:27,306.306 INFO    ] No camera update needed
[2026-10-25 00:46:27,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:46:27,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:46:27,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:46:27,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:46:29,367.367 INFO    ] ================================================
[2026-10-25 00:46:29,382.382 INFO    ] Launching Daemon at Sun Oct 25 00:46:29 IST 2026
[2026-10-25 00:46:29,393.393 INFO    ] ================================================
[2026-10-25 00:46:29,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:46:29
[2026-10-25 00:46:30,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:46:30,795.795 INFO    ] Initializing speech engine...
[2026-10-25 00:46:30,818.818 INFO    ] 2026-10-25 00:46:30
[2026-10-25 00:46:31,073.073 INFO    ] 2026-10-25 00:46:31
[2026-10-25 00:46:31,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:46:31,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:46:31,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:46:31,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:46:31,476.476 INFO    ] time= 25/10/2026 00:46:31
[2026-10-25 00:46:31,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:46:31,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:46:31,657.657 INFO    ] No existing commands found in stream
[2026-10-25 00:46:36,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:46:36,697.697 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 00:46:38,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:46:38,710.710 INFO    ] Checking for system updates...
[2026-10-25 00:46:38,747.747 INFO    ] 200
[2026-10-25 00:46:38,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:38,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:46:38,809.809 INFO    ] No update needed
[2026-10-25 00:46:38,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 00:46:38,847.847 INFO    ] 200
[2026-10-25 00:46:38,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:38,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:46:38,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:46:38,949.949 INFO    ] No camera update needed
[2026-10-25 00:46:38,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:46:38,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:46:38,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:46:38,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:46:41,012.012 INFO    ] ================================================
[2026-10-25 00:46:41,027.027 INFO    ] Launching Daemon at Sun Oct 25 00:46:41 IST 2026
[2026-10-25 00:46:41,038.038 INFO    ] ================================================
[2026-10-25 00:46:41,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:46:41
[2026-10-25 00:46:42,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:46:42,437.437 INFO    ] Initializing speech engine...
[2026-10-25 00:46:42,446.446 INFO    ] 2026-10-25 00:46:42
[2026-10-25 00:46:42,713.713 INFO    ] 2026-10-25 00:46:42
[2026-10-25 00:46:42,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:46:42,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:46:42,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:46:43,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:46:43,104.104 INFO    ] time= 25/10/2026 00:46:43
[2026-10-25 00:46:43,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:46:43,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:46:43,289.289 INFO    ] No existing commands found in stream
[2026-10-25 00:46:48,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:46:48,314.314 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 00:46:50,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:46:50,622.622 INFO    ] Checking for system updates...
[2026-10-25 00:46:50,657.657 INFO    ] 200
[2026-10-25 00:46:50,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:50,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:46:50,716.716 INFO    ] No update needed
[2026-10-25 00:46:50,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 00:46:50,757.757 INFO    ] 200
[2026-10-25 00:46:50,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:46:50,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:46:50,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:46:50,836.836 INFO    ] No camera update needed
[2026-10-25 00:46:50,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:46:50,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:46:50,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:46:50,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:46:52,892.892 INFO    ] ================================================
[2026-10-25 00:46:52,907.907 INFO    ] Launching Daemon at Sun Oct 25 00:46:52 IST 2026
[2026-10-25 00:46:52,918.918 INFO    ] ================================================
[2026-10-25 00:46:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:46:53
[2026-10-25 00:46:54,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:46:54,567.567 INFO    ] Initializing speech engine...
[2026-10-25 00:46:54,582.582 INFO    ] 2026-10-25 00:46:54
[2026-10-25 00:46:54,855.855 INFO    ] 2026-10-25 00:46:54
[2026-10-25 00:46:54,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:46:55,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:46:55,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:46:55,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:46:55,365.365 INFO    ] time= 25/10/2026 00:46:55
[2026-10-25 00:46:55,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:46:55,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:46:55,564.564 INFO    ] No existing commands found in stream
[2026-10-25 00:47:00,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:47:00,591.591 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 00:47:01,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:47:01,216.216 INFO    ] Checking for system updates...
[2026-10-25 00:47:01,298.298 INFO    ] 200
[2026-10-25 00:47:01,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:01,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:47:01,419.419 INFO    ] No update needed
[2026-10-25 00:47:01,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 00:47:01,488.488 INFO    ] 200
[2026-10-25 00:47:01,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:01,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:47:01,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:47:01,593.593 INFO    ] No camera update needed
[2026-10-25 00:47:01,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:47:01,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:47:01,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:47:01,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:47:03,672.672 INFO    ] ================================================
[2026-10-25 00:47:03,686.686 INFO    ] Launching Daemon at Sun Oct 25 00:47:03 IST 2026
[2026-10-25 00:47:03,697.697 INFO    ] ================================================
[2026-10-25 00:47:04,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:47:04
[2026-10-25 00:47:05,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:47:05,299.299 INFO    ] Initializing speech engine...
[2026-10-25 00:47:05,307.307 INFO    ] 2026-10-25 00:47:05
[2026-10-25 00:47:05,577.577 INFO    ] 2026-10-25 00:47:05
[2026-10-25 00:47:05,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:47:05,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:47:05,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:47:06,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:47:06,059.059 INFO    ] time= 25/10/2026 00:47:06
[2026-10-25 00:47:06,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:47:06,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:47:06,222.222 INFO    ] No existing commands found in stream
[2026-10-25 00:47:11,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:47:11,263.263 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 00:47:14,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:47:14,386.386 INFO    ] Checking for system updates...
[2026-10-25 00:47:14,424.424 INFO    ] 200
[2026-10-25 00:47:14,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:14,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:14,483.483 INFO    ] No update needed
[2026-10-25 00:47:14,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 00:47:14,520.520 INFO    ] 200
[2026-10-25 00:47:14,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:14,565.565 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:47:14,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:14,618.618 INFO    ] No camera update needed
[2026-10-25 00:47:14,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:47:14,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:47:14,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:47:14,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:47:16,676.676 INFO    ] ================================================
[2026-10-25 00:47:16,690.690 INFO    ] Launching Daemon at Sun Oct 25 00:47:16 IST 2026
[2026-10-25 00:47:16,701.701 INFO    ] ================================================
[2026-10-25 00:47:17,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:47:17
[2026-10-25 00:47:17,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:47:18,206.206 INFO    ] Initializing speech engine...
[2026-10-25 00:47:18,214.214 INFO    ] 2026-10-25 00:47:18
[2026-10-25 00:47:18,507.507 INFO    ] 2026-10-25 00:47:18
[2026-10-25 00:47:18,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:47:18,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:47:18,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:47:18,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:47:19,004.004 INFO    ] time= 25/10/2026 00:47:18
[2026-10-25 00:47:19,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:47:19,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:47:19,194.194 INFO    ] No existing commands found in stream
[2026-10-25 00:47:24,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:47:24,235.235 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 00:47:26,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:47:26,295.295 INFO    ] Checking for system updates...
[2026-10-25 00:47:26,332.332 INFO    ] 200
[2026-10-25 00:47:26,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:26,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:26,390.390 INFO    ] No update needed
[2026-10-25 00:47:26,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 00:47:26,428.428 INFO    ] 200
[2026-10-25 00:47:26,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:26,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:47:26,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:26,641.641 INFO    ] No camera update needed
[2026-10-25 00:47:26,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:47:26,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:47:26,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:47:26,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:47:28,698.698 INFO    ] ================================================
[2026-10-25 00:47:28,713.713 INFO    ] Launching Daemon at Sun Oct 25 00:47:28 IST 2026
[2026-10-25 00:47:28,724.724 INFO    ] ================================================
[2026-10-25 00:47:29,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:47:29
[2026-10-25 00:47:29,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:47:30,151.151 INFO    ] Initializing speech engine...
[2026-10-25 00:47:30,169.169 INFO    ] 2026-10-25 00:47:30
[2026-10-25 00:47:30,415.415 INFO    ] 2026-10-25 00:47:30
[2026-10-25 00:47:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:47:30,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:47:30,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:47:30,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:47:30,890.890 INFO    ] time= 25/10/2026 00:47:30
[2026-10-25 00:47:30,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:47:30,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:47:31,007.007 INFO    ] No existing commands found in stream
[2026-10-25 00:47:36,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:47:36,025.025 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 00:47:40,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:47:40,314.314 INFO    ] Checking for system updates...
[2026-10-25 00:47:40,352.352 INFO    ] 200
[2026-10-25 00:47:40,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:40,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:47:40,409.409 INFO    ] No update needed
[2026-10-25 00:47:40,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 00:47:40,445.445 INFO    ] 200
[2026-10-25 00:47:40,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:40,492.492 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:47:40,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:47:40,555.555 INFO    ] No camera update needed
[2026-10-25 00:47:40,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:47:40,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:47:40,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:47:40,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:47:42,610.610 INFO    ] ================================================
[2026-10-25 00:47:42,625.625 INFO    ] Launching Daemon at Sun Oct 25 00:47:42 IST 2026
[2026-10-25 00:47:42,636.636 INFO    ] ================================================
[2026-10-25 00:47:43,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:47:43
[2026-10-25 00:47:43,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:47:44,193.193 INFO    ] Initializing speech engine...
[2026-10-25 00:47:44,199.199 INFO    ] 2026-10-25 00:47:44
[2026-10-25 00:47:44,465.465 INFO    ] 2026-10-25 00:47:44
[2026-10-25 00:47:44,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:47:44,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:47:44,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:47:44,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:47:44,962.962 INFO    ] time= 25/10/2026 00:47:44
[2026-10-25 00:47:45,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:47:45,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:47:45,151.151 INFO    ] No existing commands found in stream
[2026-10-25 00:47:50,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:47:50,177.177 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 00:47:50,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:47:50,651.651 INFO    ] Checking for system updates...
[2026-10-25 00:47:50,688.688 INFO    ] 200
[2026-10-25 00:47:50,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:50,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:50,746.746 INFO    ] No update needed
[2026-10-25 00:47:50,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 00:47:50,783.783 INFO    ] 200
[2026-10-25 00:47:50,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:47:50,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:47:50,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:47:50,871.871 INFO    ] No camera update needed
[2026-10-25 00:47:50,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:47:50,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:47:50,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:47:50,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:47:52,929.929 INFO    ] ================================================
[2026-10-25 00:47:52,944.944 INFO    ] Launching Daemon at Sun Oct 25 00:47:52 IST 2026
[2026-10-25 00:47:52,955.955 INFO    ] ================================================
[2026-10-25 00:47:53,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:47:53
[2026-10-25 00:47:54,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:47:54,505.505 INFO    ] Initializing speech engine...
[2026-10-25 00:47:54,515.515 INFO    ] 2026-10-25 00:47:54
[2026-10-25 00:47:54,780.780 INFO    ] 2026-10-25 00:47:54
[2026-10-25 00:47:54,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:47:55,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:47:55,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:47:55,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:47:55,254.254 INFO    ] time= 25/10/2026 00:47:55
[2026-10-25 00:47:55,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:47:55,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:47:55,461.461 INFO    ] No existing commands found in stream
[2026-10-25 00:48:00,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:00,492.492 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 00:48:03,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:48:03,973.973 INFO    ] Checking for system updates...
[2026-10-25 00:48:04,010.010 INFO    ] 200
[2026-10-25 00:48:04,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:04,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:04,068.068 INFO    ] No update needed
[2026-10-25 00:48:04,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:04,105.105 INFO    ] 200
[2026-10-25 00:48:04,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:04,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:04,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:04,206.206 INFO    ] No camera update needed
[2026-10-25 00:48:04,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:04,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:04,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:04,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:48:06,261.261 INFO    ] ================================================
[2026-10-25 00:48:06,276.276 INFO    ] Launching Daemon at Sun Oct 25 00:48:06 IST 2026
[2026-10-25 00:48:06,287.287 INFO    ] ================================================
[2026-10-25 00:48:06,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:48:06
[2026-10-25 00:48:07,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:48:07,860.860 INFO    ] Initializing speech engine...
[2026-10-25 00:48:07,874.874 INFO    ] 2026-10-25 00:48:07
[2026-10-25 00:48:08,152.152 INFO    ] 2026-10-25 00:48:08
[2026-10-25 00:48:08,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:48:08,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:48:08,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:48:08,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:48:08,685.685 INFO    ] time= 25/10/2026 00:48:08
[2026-10-25 00:48:08,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:48:08,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:48:08,839.839 INFO    ] No existing commands found in stream
[2026-10-25 00:48:13,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:13,866.866 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 00:48:14,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:48:14,356.356 INFO    ] Checking for system updates...
[2026-10-25 00:48:14,392.392 INFO    ] 200
[2026-10-25 00:48:14,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:14,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:48:14,451.451 INFO    ] No update needed
[2026-10-25 00:48:14,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:14,489.489 INFO    ] 200
[2026-10-25 00:48:14,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:14,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:14,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:48:14,584.584 INFO    ] No camera update needed
[2026-10-25 00:48:14,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:14,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:14,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:14,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:48:16,642.642 INFO    ] ================================================
[2026-10-25 00:48:16,658.658 INFO    ] Launching Daemon at Sun Oct 25 00:48:16 IST 2026
[2026-10-25 00:48:16,669.669 INFO    ] ================================================
[2026-10-25 00:48:17,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:48:17
[2026-10-25 00:48:17,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:48:18,121.121 INFO    ] Initializing speech engine...
[2026-10-25 00:48:18,134.134 INFO    ] 2026-10-25 00:48:18
[2026-10-25 00:48:18,413.413 INFO    ] 2026-10-25 00:48:18
[2026-10-25 00:48:18,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:48:18,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:48:18,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:48:18,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:48:18,823.823 INFO    ] time= 25/10/2026 00:48:18
[2026-10-25 00:48:18,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:48:18,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:48:18,974.974 INFO    ] No existing commands found in stream
[2026-10-25 00:48:23,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:24,002.002 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 00:48:24,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:48:24,695.695 INFO    ] Checking for system updates...
[2026-10-25 00:48:24,732.732 INFO    ] 200
[2026-10-25 00:48:24,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:24,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:24,790.790 INFO    ] No update needed
[2026-10-25 00:48:24,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:24,827.827 INFO    ] 200
[2026-10-25 00:48:24,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:24,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:24,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:24,930.930 INFO    ] No camera update needed
[2026-10-25 00:48:24,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:24,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:24,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:24,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:48:26,989.989 INFO    ] ================================================
[2026-10-25 00:48:27,004.004 INFO    ] Launching Daemon at Sun Oct 25 00:48:26 IST 2026
[2026-10-25 00:48:27,015.015 INFO    ] ================================================
[2026-10-25 00:48:27,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:48:27
[2026-10-25 00:48:28,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:48:28,502.502 INFO    ] Initializing speech engine...
[2026-10-25 00:48:28,516.516 INFO    ] 2026-10-25 00:48:28
[2026-10-25 00:48:28,821.821 INFO    ] 2026-10-25 00:48:28
[2026-10-25 00:48:28,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:48:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:48:29,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:48:29,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:48:29,321.321 INFO    ] time= 25/10/2026 00:48:29
[2026-10-25 00:48:29,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:48:29,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:48:29,472.472 INFO    ] No existing commands found in stream
[2026-10-25 00:48:34,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:34,496.496 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 00:48:35,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:48:35,851.851 INFO    ] Checking for system updates...
[2026-10-25 00:48:35,888.888 INFO    ] 200
[2026-10-25 00:48:35,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:35,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:35,946.946 INFO    ] No update needed
[2026-10-25 00:48:35,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:35,988.988 INFO    ] 200
[2026-10-25 00:48:35,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:36,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:36,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:36,099.099 INFO    ] No camera update needed
[2026-10-25 00:48:36,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:36,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:36,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:36,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:48:38,154.154 INFO    ] ================================================
[2026-10-25 00:48:38,169.169 INFO    ] Launching Daemon at Sun Oct 25 00:48:38 IST 2026
[2026-10-25 00:48:38,180.180 INFO    ] ================================================
[2026-10-25 00:48:38,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:48:38
[2026-10-25 00:48:39,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:48:39,634.634 INFO    ] Initializing speech engine...
[2026-10-25 00:48:39,643.643 INFO    ] 2026-10-25 00:48:39
[2026-10-25 00:48:39,899.899 INFO    ] 2026-10-25 00:48:39
[2026-10-25 00:48:39,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:48:40,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:48:40,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:48:40,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:48:40,376.376 INFO    ] time= 25/10/2026 00:48:40
[2026-10-25 00:48:40,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:48:40,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:48:40,579.579 INFO    ] No existing commands found in stream
[2026-10-25 00:48:45,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:45,604.604 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 00:48:47,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:48:47,682.682 INFO    ] Checking for system updates...
[2026-10-25 00:48:47,718.718 INFO    ] 200
[2026-10-25 00:48:47,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:47,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:47,777.777 INFO    ] No update needed
[2026-10-25 00:48:47,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:47,813.813 INFO    ] 200
[2026-10-25 00:48:47,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:47,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:47,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:47,906.906 INFO    ] No camera update needed
[2026-10-25 00:48:47,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:47,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:47,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:47,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:48:49,963.963 INFO    ] ================================================
[2026-10-25 00:48:49,979.979 INFO    ] Launching Daemon at Sun Oct 25 00:48:49 IST 2026
[2026-10-25 00:48:49,990.990 INFO    ] ================================================
[2026-10-25 00:48:50,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:48:50
[2026-10-25 00:48:51,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:48:51,411.411 INFO    ] Initializing speech engine...
[2026-10-25 00:48:51,421.421 INFO    ] 2026-10-25 00:48:51
[2026-10-25 00:48:51,681.681 INFO    ] 2026-10-25 00:48:51
[2026-10-25 00:48:51,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:48:51,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:48:51,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:48:52,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:48:52,186.186 INFO    ] time= 25/10/2026 00:48:52
[2026-10-25 00:48:52,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:48:52,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:48:52,381.381 INFO    ] No existing commands found in stream
[2026-10-25 00:48:57,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:48:57,409.409 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 00:48:59,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:48:59,155.155 INFO    ] Checking for system updates...
[2026-10-25 00:48:59,191.191 INFO    ] 200
[2026-10-25 00:48:59,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:59,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:59,250.250 INFO    ] No update needed
[2026-10-25 00:48:59,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 00:48:59,286.286 INFO    ] 200
[2026-10-25 00:48:59,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:48:59,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:48:59,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:48:59,389.389 INFO    ] No camera update needed
[2026-10-25 00:48:59,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:48:59,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:48:59,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:48:59,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:49:01,458.458 INFO    ] ================================================
[2026-10-25 00:49:01,483.483 INFO    ] Launching Daemon at Sun Oct 25 00:49:01 IST 2026
[2026-10-25 00:49:01,509.509 INFO    ] ================================================
[2026-10-25 00:49:02,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:49:02
[2026-10-25 00:49:02,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:49:03,121.121 INFO    ] Initializing speech engine...
[2026-10-25 00:49:03,134.134 INFO    ] 2026-10-25 00:49:03
[2026-10-25 00:49:03,425.425 INFO    ] 2026-10-25 00:49:03
[2026-10-25 00:49:03,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:49:03,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:49:03,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:49:03,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:49:03,916.916 INFO    ] time= 25/10/2026 00:49:03
[2026-10-25 00:49:03,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:49:04,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:49:04,107.107 INFO    ] No existing commands found in stream
[2026-10-25 00:49:09,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:49:09,136.136 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 00:49:12,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:49:12,173.173 INFO    ] Checking for system updates...
[2026-10-25 00:49:12,213.213 INFO    ] 200
[2026-10-25 00:49:12,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:12,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:49:12,282.282 INFO    ] No update needed
[2026-10-25 00:49:12,286.286 INFO    ] Checking for camera pi updates...
[2026-10-25 00:49:12,323.323 INFO    ] 200
[2026-10-25 00:49:12,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:12,372.372 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:49:12,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:49:12,406.406 INFO    ] No camera update needed
[2026-10-25 00:49:12,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:49:12,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:49:12,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:49:12,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:49:14,463.463 INFO    ] ================================================
[2026-10-25 00:49:14,479.479 INFO    ] Launching Daemon at Sun Oct 25 00:49:14 IST 2026
[2026-10-25 00:49:14,490.490 INFO    ] ================================================
[2026-10-25 00:49:15,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:49:15
[2026-10-25 00:49:15,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:49:16,073.073 INFO    ] Initializing speech engine...
[2026-10-25 00:49:16,081.081 INFO    ] 2026-10-25 00:49:16
[2026-10-25 00:49:16,349.349 INFO    ] 2026-10-25 00:49:16
[2026-10-25 00:49:16,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:49:16,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:49:16,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:49:16,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:49:16,830.830 INFO    ] time= 25/10/2026 00:49:16
[2026-10-25 00:49:16,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:49:16,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:49:17,013.013 INFO    ] No existing commands found in stream
[2026-10-25 00:49:22,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:49:22,049.049 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 00:49:25,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:49:25,065.065 INFO    ] Checking for system updates...
[2026-10-25 00:49:25,106.106 INFO    ] 200
[2026-10-25 00:49:25,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:25,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:25,168.168 INFO    ] No update needed
[2026-10-25 00:49:25,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 00:49:25,205.205 INFO    ] 200
[2026-10-25 00:49:25,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:25,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:49:25,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:25,302.302 INFO    ] No camera update needed
[2026-10-25 00:49:25,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:49:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:49:25,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:49:25,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:49:27,359.359 INFO    ] ================================================
[2026-10-25 00:49:27,374.374 INFO    ] Launching Daemon at Sun Oct 25 00:49:27 IST 2026
[2026-10-25 00:49:27,385.385 INFO    ] ================================================
[2026-10-25 00:49:27,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:49:27
[2026-10-25 00:49:28,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:49:28,827.827 INFO    ] Initializing speech engine...
[2026-10-25 00:49:28,842.842 INFO    ] 2026-10-25 00:49:28
[2026-10-25 00:49:29,120.120 INFO    ] 2026-10-25 00:49:29
[2026-10-25 00:49:29,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:49:29,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:49:29,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:49:29,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:49:29,523.523 INFO    ] time= 25/10/2026 00:49:29
[2026-10-25 00:49:29,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:49:29,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:49:29,707.707 INFO    ] No existing commands found in stream
[2026-10-25 00:49:34,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:49:34,741.741 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 00:49:37,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:49:37,596.596 INFO    ] Checking for system updates...
[2026-10-25 00:49:37,632.632 INFO    ] 200
[2026-10-25 00:49:37,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:37,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:37,690.690 INFO    ] No update needed
[2026-10-25 00:49:37,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 00:49:37,728.728 INFO    ] 200
[2026-10-25 00:49:37,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:37,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:49:37,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:37,807.807 INFO    ] No camera update needed
[2026-10-25 00:49:37,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:49:37,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:49:37,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:49:37,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:49:39,864.864 INFO    ] ================================================
[2026-10-25 00:49:39,880.880 INFO    ] Launching Daemon at Sun Oct 25 00:49:39 IST 2026
[2026-10-25 00:49:39,891.891 INFO    ] ================================================
[2026-10-25 00:49:40,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:49:40
[2026-10-25 00:49:41,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:49:41,291.291 INFO    ] Initializing speech engine...
[2026-10-25 00:49:41,300.300 INFO    ] 2026-10-25 00:49:41
[2026-10-25 00:49:41,585.585 INFO    ] 2026-10-25 00:49:41
[2026-10-25 00:49:41,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:49:41,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:49:41,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:49:41,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:49:41,984.984 INFO    ] time= 25/10/2026 00:49:41
[2026-10-25 00:49:41,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:49:41,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:49:42,070.070 INFO    ] No existing commands found in stream
[2026-10-25 00:49:47,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:49:47,103.103 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 00:49:48,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:49:48,499.499 INFO    ] Checking for system updates...
[2026-10-25 00:49:48,535.535 INFO    ] 200
[2026-10-25 00:49:48,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:48,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:48,597.597 INFO    ] No update needed
[2026-10-25 00:49:48,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 00:49:48,633.633 INFO    ] 200
[2026-10-25 00:49:48,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:49:48,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:49:48,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:49:48,728.728 INFO    ] No camera update needed
[2026-10-25 00:49:48,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:49:48,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:49:48,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:49:48,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:49:50,785.785 INFO    ] ================================================
[2026-10-25 00:49:50,801.801 INFO    ] Launching Daemon at Sun Oct 25 00:49:50 IST 2026
[2026-10-25 00:49:50,812.812 INFO    ] ================================================
[2026-10-25 00:49:51,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:49:51
[2026-10-25 00:49:52,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:49:52,363.363 INFO    ] Initializing speech engine...
[2026-10-25 00:49:52,377.377 INFO    ] 2026-10-25 00:49:52
[2026-10-25 00:49:52,656.656 INFO    ] 2026-10-25 00:49:52
[2026-10-25 00:49:52,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:49:53,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:49:53,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:49:53,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:49:53,211.211 INFO    ] time= 25/10/2026 00:49:53
[2026-10-25 00:49:53,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:49:53,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:49:53,363.363 INFO    ] No existing commands found in stream
[2026-10-25 00:49:58,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:49:58,380.380 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 00:50:02,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:50:02,375.375 INFO    ] Checking for system updates...
[2026-10-25 00:50:02,428.428 INFO    ] 200
[2026-10-25 00:50:02,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:02,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:02,514.514 INFO    ] No update needed
[2026-10-25 00:50:02,518.518 INFO    ] Checking for camera pi updates...
[2026-10-25 00:50:02,559.559 INFO    ] 200
[2026-10-25 00:50:02,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:02,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:50:02,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:02,660.660 INFO    ] No camera update needed
[2026-10-25 00:50:02,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:50:02,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:50:02,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:50:02,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:50:04,723.723 INFO    ] ================================================
[2026-10-25 00:50:04,739.739 INFO    ] Launching Daemon at Sun Oct 25 00:50:04 IST 2026
[2026-10-25 00:50:04,751.751 INFO    ] ================================================
[2026-10-25 00:50:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:50:05
[2026-10-25 00:50:06,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:50:06,410.410 INFO    ] Initializing speech engine...
[2026-10-25 00:50:06,417.417 INFO    ] 2026-10-25 00:50:06
[2026-10-25 00:50:06,726.726 INFO    ] 2026-10-25 00:50:06
[2026-10-25 00:50:06,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:50:06,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:50:06,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:50:07,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:50:07,234.234 INFO    ] time= 25/10/2026 00:50:07
[2026-10-25 00:50:07,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:50:07,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:50:07,376.376 INFO    ] No existing commands found in stream
[2026-10-25 00:50:12,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:50:12,404.404 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 00:50:14,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:50:14,160.160 INFO    ] Checking for system updates...
[2026-10-25 00:50:14,197.197 INFO    ] 200
[2026-10-25 00:50:14,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:14,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:14,266.266 INFO    ] No update needed
[2026-10-25 00:50:14,269.269 INFO    ] Checking for camera pi updates...
[2026-10-25 00:50:14,304.304 INFO    ] 200
[2026-10-25 00:50:14,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:14,354.354 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:50:14,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:14,425.425 INFO    ] No camera update needed
[2026-10-25 00:50:14,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:50:14,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:50:14,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:50:14,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:50:16,486.486 INFO    ] ================================================
[2026-10-25 00:50:16,502.502 INFO    ] Launching Daemon at Sun Oct 25 00:50:16 IST 2026
[2026-10-25 00:50:16,512.512 INFO    ] ================================================
[2026-10-25 00:50:17,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:50:17
[2026-10-25 00:50:17,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:50:18,141.141 INFO    ] Initializing speech engine...
[2026-10-25 00:50:18,154.154 INFO    ] 2026-10-25 00:50:18
[2026-10-25 00:50:18,467.467 INFO    ] 2026-10-25 00:50:18
[2026-10-25 00:50:18,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:50:18,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:50:18,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:50:18,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:50:18,985.985 INFO    ] time= 25/10/2026 00:50:18
[2026-10-25 00:50:19,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:50:19,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:50:19,142.142 INFO    ] No existing commands found in stream
[2026-10-25 00:50:24,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:50:24,167.167 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 00:50:27,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:50:27,336.336 INFO    ] Checking for system updates...
[2026-10-25 00:50:27,373.373 INFO    ] 200
[2026-10-25 00:50:27,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:27,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:27,432.432 INFO    ] No update needed
[2026-10-25 00:50:27,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 00:50:27,474.474 INFO    ] 200
[2026-10-25 00:50:27,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:27,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:50:27,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:27,553.553 INFO    ] No camera update needed
[2026-10-25 00:50:27,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:50:27,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:50:27,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:50:27,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:50:29,612.612 INFO    ] ================================================
[2026-10-25 00:50:29,628.628 INFO    ] Launching Daemon at Sun Oct 25 00:50:29 IST 2026
[2026-10-25 00:50:29,639.639 INFO    ] ================================================
[2026-10-25 00:50:30,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:50:30
[2026-10-25 00:50:30,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:50:31,275.275 INFO    ] Initializing speech engine...
[2026-10-25 00:50:31,289.289 INFO    ] 2026-10-25 00:50:31
[2026-10-25 00:50:31,571.571 INFO    ] 2026-10-25 00:50:31
[2026-10-25 00:50:31,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:50:31,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:50:31,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:50:32,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:50:32,091.091 INFO    ] time= 25/10/2026 00:50:32
[2026-10-25 00:50:32,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:50:32,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:50:32,306.306 INFO    ] No existing commands found in stream
[2026-10-25 00:50:37,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:50:37,338.338 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 00:50:39,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:50:39,537.537 INFO    ] Checking for system updates...
[2026-10-25 00:50:39,573.573 INFO    ] 200
[2026-10-25 00:50:39,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:39,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:39,632.632 INFO    ] No update needed
[2026-10-25 00:50:39,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 00:50:39,670.670 INFO    ] 200
[2026-10-25 00:50:39,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:39,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:50:39,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:39,769.769 INFO    ] No camera update needed
[2026-10-25 00:50:39,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:50:39,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:50:39,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:50:39,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:50:41,828.828 INFO    ] ================================================
[2026-10-25 00:50:41,844.844 INFO    ] Launching Daemon at Sun Oct 25 00:50:41 IST 2026
[2026-10-25 00:50:41,855.855 INFO    ] ================================================
[2026-10-25 00:50:42,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:50:42
[2026-10-25 00:50:43,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:50:43,457.457 INFO    ] Initializing speech engine...
[2026-10-25 00:50:43,465.465 INFO    ] 2026-10-25 00:50:43
[2026-10-25 00:50:43,746.746 INFO    ] 2026-10-25 00:50:43
[2026-10-25 00:50:43,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:50:44,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:50:44,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:50:44,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:50:44,260.260 INFO    ] time= 25/10/2026 00:50:44
[2026-10-25 00:50:44,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:50:44,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:50:44,426.426 INFO    ] No existing commands found in stream
[2026-10-25 00:50:49,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:50:49,442.442 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 00:50:50,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:50:50,027.027 INFO    ] Checking for system updates...
[2026-10-25 00:50:50,066.066 INFO    ] 200
[2026-10-25 00:50:50,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:50,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:50,130.130 INFO    ] No update needed
[2026-10-25 00:50:50,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 00:50:50,167.167 INFO    ] 200
[2026-10-25 00:50:50,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:50:50,210.210 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:50:50,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:50:50,261.261 INFO    ] No camera update needed
[2026-10-25 00:50:50,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:50:50,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:50:50,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:50:50,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:50:52,318.318 INFO    ] ================================================
[2026-10-25 00:50:52,334.334 INFO    ] Launching Daemon at Sun Oct 25 00:50:52 IST 2026
[2026-10-25 00:50:52,345.345 INFO    ] ================================================
[2026-10-25 00:50:52,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:50:52
[2026-10-25 00:50:53,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:50:53,798.798 INFO    ] Initializing speech engine...
[2026-10-25 00:50:53,811.811 INFO    ] 2026-10-25 00:50:53
[2026-10-25 00:50:54,094.094 INFO    ] 2026-10-25 00:50:54
[2026-10-25 00:50:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:50:54,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:50:54,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:50:54,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:50:54,592.592 INFO    ] time= 25/10/2026 00:50:54
[2026-10-25 00:50:54,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:50:54,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:50:54,789.789 INFO    ] No existing commands found in stream
[2026-10-25 00:50:59,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:50:59,804.804 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 00:51:01,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:51:01,957.957 INFO    ] Checking for system updates...
[2026-10-25 00:51:02,039.039 INFO    ] 200
[2026-10-25 00:51:02,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:02,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:02,142.142 INFO    ] No update needed
[2026-10-25 00:51:02,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 00:51:02,232.232 INFO    ] 200
[2026-10-25 00:51:02,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:02,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:51:02,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:02,343.343 INFO    ] No camera update needed
[2026-10-25 00:51:02,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:51:02,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:51:02,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:51:02,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:51:04,412.412 INFO    ] ================================================
[2026-10-25 00:51:04,427.427 INFO    ] Launching Daemon at Sun Oct 25 00:51:04 IST 2026
[2026-10-25 00:51:04,438.438 INFO    ] ================================================
[2026-10-25 00:51:05,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:51:05
[2026-10-25 00:51:05,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:51:05,844.844 INFO    ] Initializing speech engine...
[2026-10-25 00:51:05,851.851 INFO    ] 2026-10-25 00:51:05
[2026-10-25 00:51:06,142.142 INFO    ] 2026-10-25 00:51:06
[2026-10-25 00:51:06,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:51:06,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:51:06,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:51:06,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:51:06,559.559 INFO    ] time= 25/10/2026 00:51:06
[2026-10-25 00:51:06,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:51:06,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:51:06,721.721 INFO    ] No existing commands found in stream
[2026-10-25 00:51:11,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:51:11,749.749 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 00:51:14,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:51:14,848.848 INFO    ] Checking for system updates...
[2026-10-25 00:51:14,884.884 INFO    ] 200
[2026-10-25 00:51:14,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:14,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:14,941.941 INFO    ] No update needed
[2026-10-25 00:51:14,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 00:51:14,982.982 INFO    ] 200
[2026-10-25 00:51:14,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:15,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:51:15,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:15,088.088 INFO    ] No camera update needed
[2026-10-25 00:51:15,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:51:15,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:51:15,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:51:15,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:51:17,145.145 INFO    ] ================================================
[2026-10-25 00:51:17,162.162 INFO    ] Launching Daemon at Sun Oct 25 00:51:17 IST 2026
[2026-10-25 00:51:17,173.173 INFO    ] ================================================
[2026-10-25 00:51:17,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:51:17
[2026-10-25 00:51:18,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:51:18,814.814 INFO    ] Initializing speech engine...
[2026-10-25 00:51:18,828.828 INFO    ] 2026-10-25 00:51:18
[2026-10-25 00:51:19,111.111 INFO    ] 2026-10-25 00:51:19
[2026-10-25 00:51:19,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:51:19,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:51:19,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:51:19,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:51:19,636.636 INFO    ] time= 25/10/2026 00:51:19
[2026-10-25 00:51:19,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:51:19,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:51:19,803.803 INFO    ] No existing commands found in stream
[2026-10-25 00:51:24,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:51:24,836.836 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 00:51:26,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:51:26,188.188 INFO    ] Checking for system updates...
[2026-10-25 00:51:26,230.230 INFO    ] 200
[2026-10-25 00:51:26,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:26,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:51:26,291.291 INFO    ] No update needed
[2026-10-25 00:51:26,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 00:51:26,328.328 INFO    ] 200
[2026-10-25 00:51:26,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:26,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:51:26,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:51:26,431.431 INFO    ] No camera update needed
[2026-10-25 00:51:26,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:51:26,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:51:26,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:51:26,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:51:28,492.492 INFO    ] ================================================
[2026-10-25 00:51:28,508.508 INFO    ] Launching Daemon at Sun Oct 25 00:51:28 IST 2026
[2026-10-25 00:51:28,518.518 INFO    ] ================================================
[2026-10-25 00:51:29,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:51:29
[2026-10-25 00:51:29,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:51:30,136.136 INFO    ] Initializing speech engine...
[2026-10-25 00:51:30,144.144 INFO    ] 2026-10-25 00:51:30
[2026-10-25 00:51:30,436.436 INFO    ] 2026-10-25 00:51:30
[2026-10-25 00:51:30,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:51:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:51:30,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:51:30,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:51:30,927.927 INFO    ] time= 25/10/2026 00:51:30
[2026-10-25 00:51:30,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:51:30,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:51:31,135.135 INFO    ] No existing commands found in stream
[2026-10-25 00:51:36,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:51:36,162.162 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 00:51:38,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:51:38,746.746 INFO    ] Checking for system updates...
[2026-10-25 00:51:38,783.783 INFO    ] 200
[2026-10-25 00:51:38,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:38,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:38,848.848 INFO    ] No update needed
[2026-10-25 00:51:38,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 00:51:38,890.890 INFO    ] 200
[2026-10-25 00:51:38,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:38,937.937 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:51:39,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:39,108.108 INFO    ] No camera update needed
[2026-10-25 00:51:39,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:51:39,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:51:39,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:51:39,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:51:41,169.169 INFO    ] ================================================
[2026-10-25 00:51:41,189.189 INFO    ] Launching Daemon at Sun Oct 25 00:51:41 IST 2026
[2026-10-25 00:51:41,201.201 INFO    ] ================================================
[2026-10-25 00:51:41,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:51:41
[2026-10-25 00:51:42,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:51:42,681.681 INFO    ] Initializing speech engine...
[2026-10-25 00:51:42,691.691 INFO    ] 2026-10-25 00:51:42
[2026-10-25 00:51:42,940.940 INFO    ] 2026-10-25 00:51:42
[2026-10-25 00:51:42,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:51:43,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:51:43,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:51:43,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:51:43,334.334 INFO    ] time= 25/10/2026 00:51:43
[2026-10-25 00:51:43,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:51:43,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:51:43,426.426 INFO    ] No existing commands found in stream
[2026-10-25 00:51:48,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:51:48,442.442 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 00:51:52,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:51:52,676.676 INFO    ] Checking for system updates...
[2026-10-25 00:51:52,714.714 INFO    ] 200
[2026-10-25 00:51:52,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:52,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:52,774.774 INFO    ] No update needed
[2026-10-25 00:51:52,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 00:51:52,812.812 INFO    ] 200
[2026-10-25 00:51:52,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:51:52,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:51:52,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:51:52,913.913 INFO    ] No camera update needed
[2026-10-25 00:51:52,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:51:52,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:51:52,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:51:52,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:51:54,978.978 INFO    ] ================================================
[2026-10-25 00:51:55,995.995 INFO    ] Launching Daemon at Sun Oct 25 00:51:54 IST 2026
[2026-10-25 00:51:55,006.006 INFO    ] ================================================
[2026-10-25 00:51:55,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:51:55
[2026-10-25 00:51:56,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:51:56,465.465 INFO    ] Initializing speech engine...
[2026-10-25 00:51:56,475.475 INFO    ] 2026-10-25 00:51:56
[2026-10-25 00:51:56,733.733 INFO    ] 2026-10-25 00:51:56
[2026-10-25 00:51:56,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:51:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:51:57,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:51:57,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:51:57,205.205 INFO    ] time= 25/10/2026 00:51:57
[2026-10-25 00:51:57,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:51:57,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:51:57,367.367 INFO    ] No existing commands found in stream
[2026-10-25 00:52:02,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:52:02,406.406 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 00:52:03,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:52:03,377.377 INFO    ] Checking for system updates...
[2026-10-25 00:52:03,417.417 INFO    ] 200
[2026-10-25 00:52:03,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:03,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:03,497.497 INFO    ] No update needed
[2026-10-25 00:52:03,500.500 INFO    ] Checking for camera pi updates...
[2026-10-25 00:52:03,548.548 INFO    ] 200
[2026-10-25 00:52:03,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:03,597.597 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:52:03,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:03,663.663 INFO    ] No camera update needed
[2026-10-25 00:52:03,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:52:03,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:52:03,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:52:03,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:52:05,722.722 INFO    ] ================================================
[2026-10-25 00:52:05,738.738 INFO    ] Launching Daemon at Sun Oct 25 00:52:05 IST 2026
[2026-10-25 00:52:05,749.749 INFO    ] ================================================
[2026-10-25 00:52:06,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:52:06
[2026-10-25 00:52:06,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:52:07,153.153 INFO    ] Initializing speech engine...
[2026-10-25 00:52:07,165.165 INFO    ] 2026-10-25 00:52:07
[2026-10-25 00:52:07,433.433 INFO    ] 2026-10-25 00:52:07
[2026-10-25 00:52:07,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:52:07,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:52:07,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:52:07,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:52:07,883.883 INFO    ] time= 25/10/2026 00:52:07
[2026-10-25 00:52:07,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:52:07,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:52:08,066.066 INFO    ] No existing commands found in stream
[2026-10-25 00:52:13,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:52:13,080.080 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 00:52:16,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:52:16,736.736 INFO    ] Checking for system updates...
[2026-10-25 00:52:16,775.775 INFO    ] 200
[2026-10-25 00:52:16,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:16,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:52:16,833.833 INFO    ] No update needed
[2026-10-25 00:52:16,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 00:52:16,869.869 INFO    ] 200
[2026-10-25 00:52:16,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:16,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:52:16,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:52:16,964.964 INFO    ] No camera update needed
[2026-10-25 00:52:16,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:52:16,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:52:16,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:52:16,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:52:19,022.022 INFO    ] ================================================
[2026-10-25 00:52:19,038.038 INFO    ] Launching Daemon at Sun Oct 25 00:52:19 IST 2026
[2026-10-25 00:52:19,049.049 INFO    ] ================================================
[2026-10-25 00:52:19,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:52:19
[2026-10-25 00:52:20,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:52:20,451.451 INFO    ] Initializing speech engine...
[2026-10-25 00:52:20,465.465 INFO    ] 2026-10-25 00:52:20
[2026-10-25 00:52:20,726.726 INFO    ] 2026-10-25 00:52:20
[2026-10-25 00:52:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:52:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:52:20,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:52:21,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:52:21,144.144 INFO    ] time= 25/10/2026 00:52:21
[2026-10-25 00:52:21,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:52:21,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:52:21,293.293 INFO    ] No existing commands found in stream
[2026-10-25 00:52:26,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:52:26,316.316 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 00:52:28,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:52:28,136.136 INFO    ] Checking for system updates...
[2026-10-25 00:52:28,172.172 INFO    ] 200
[2026-10-25 00:52:28,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:28,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:28,229.229 INFO    ] No update needed
[2026-10-25 00:52:28,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 00:52:28,266.266 INFO    ] 200
[2026-10-25 00:52:28,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:28,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:52:28,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:28,362.362 INFO    ] No camera update needed
[2026-10-25 00:52:28,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:52:28,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:52:28,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:52:28,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:52:30,419.419 INFO    ] ================================================
[2026-10-25 00:52:30,435.435 INFO    ] Launching Daemon at Sun Oct 25 00:52:30 IST 2026
[2026-10-25 00:52:30,445.445 INFO    ] ================================================
[2026-10-25 00:52:31,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:52:31
[2026-10-25 00:52:31,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:52:31,898.898 INFO    ] Initializing speech engine...
[2026-10-25 00:52:31,904.904 INFO    ] 2026-10-25 00:52:31
[2026-10-25 00:52:32,169.169 INFO    ] 2026-10-25 00:52:32
[2026-10-25 00:52:32,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:52:32,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:52:32,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:52:32,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:52:32,545.545 INFO    ] time= 25/10/2026 00:52:32
[2026-10-25 00:52:32,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:52:32,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:52:32,686.686 INFO    ] No existing commands found in stream
[2026-10-25 00:52:37,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:52:37,709.709 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 00:52:40,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:52:40,820.820 INFO    ] Checking for system updates...
[2026-10-25 00:52:40,857.857 INFO    ] 200
[2026-10-25 00:52:40,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:40,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:52:40,915.915 INFO    ] No update needed
[2026-10-25 00:52:40,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 00:52:40,951.951 INFO    ] 200
[2026-10-25 00:52:40,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:40,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:52:41,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:52:41,045.045 INFO    ] No camera update needed
[2026-10-25 00:52:41,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:52:41,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:52:41,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:52:41,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:52:43,103.103 INFO    ] ================================================
[2026-10-25 00:52:43,118.118 INFO    ] Launching Daemon at Sun Oct 25 00:52:43 IST 2026
[2026-10-25 00:52:43,128.128 INFO    ] ================================================
[2026-10-25 00:52:43,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:52:43
[2026-10-25 00:52:44,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:52:44,755.755 INFO    ] Initializing speech engine...
[2026-10-25 00:52:44,766.766 INFO    ] 2026-10-25 00:52:44
[2026-10-25 00:52:45,058.058 INFO    ] 2026-10-25 00:52:45
[2026-10-25 00:52:45,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:52:45,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:52:45,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:52:45,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:52:45,610.610 INFO    ] time= 25/10/2026 00:52:45
[2026-10-25 00:52:45,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:52:45,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:52:45,770.770 INFO    ] No existing commands found in stream
[2026-10-25 00:52:50,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:52:50,789.789 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 00:52:51,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:52:51,405.405 INFO    ] Checking for system updates...
[2026-10-25 00:52:51,442.442 INFO    ] 200
[2026-10-25 00:52:51,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:51,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:51,502.502 INFO    ] No update needed
[2026-10-25 00:52:51,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 00:52:51,539.539 INFO    ] 200
[2026-10-25 00:52:51,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:52:51,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:52:51,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:52:51,637.637 INFO    ] No camera update needed
[2026-10-25 00:52:51,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:52:51,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:52:51,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:52:51,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:52:53,697.697 INFO    ] ================================================
[2026-10-25 00:52:53,712.712 INFO    ] Launching Daemon at Sun Oct 25 00:52:53 IST 2026
[2026-10-25 00:52:53,723.723 INFO    ] ================================================
[2026-10-25 00:52:54,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:52:54
[2026-10-25 00:52:54,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:52:55,149.149 INFO    ] Initializing speech engine...
[2026-10-25 00:52:55,155.155 INFO    ] 2026-10-25 00:52:55
[2026-10-25 00:52:55,450.450 INFO    ] 2026-10-25 00:52:55
[2026-10-25 00:52:55,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:52:55,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:52:55,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:52:55,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:52:55,874.874 INFO    ] time= 25/10/2026 00:52:55
[2026-10-25 00:52:55,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:52:55,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:52:56,006.006 INFO    ] No existing commands found in stream
[2026-10-25 00:53:01,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:53:01,041.041 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 00:53:05,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:53:05,293.293 INFO    ] Checking for system updates...
[2026-10-25 00:53:05,329.329 INFO    ] 200
[2026-10-25 00:53:05,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:05,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:53:05,387.387 INFO    ] No update needed
[2026-10-25 00:53:05,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 00:53:05,423.423 INFO    ] 200
[2026-10-25 00:53:05,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:05,467.467 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:53:05,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:53:05,516.516 INFO    ] No camera update needed
[2026-10-25 00:53:05,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:53:05,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:53:05,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:53:05,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:53:07,572.572 INFO    ] ================================================
[2026-10-25 00:53:07,587.587 INFO    ] Launching Daemon at Sun Oct 25 00:53:07 IST 2026
[2026-10-25 00:53:07,598.598 INFO    ] ================================================
[2026-10-25 00:53:08,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:53:08
[2026-10-25 00:53:08,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:53:09,010.010 INFO    ] Initializing speech engine...
[2026-10-25 00:53:09,017.017 INFO    ] 2026-10-25 00:53:09
[2026-10-25 00:53:09,294.294 INFO    ] 2026-10-25 00:53:09
[2026-10-25 00:53:09,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:53:09,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:53:09,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:53:09,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:53:09,729.729 INFO    ] time= 25/10/2026 00:53:09
[2026-10-25 00:53:09,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:53:09,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:53:09,912.912 INFO    ] No existing commands found in stream
[2026-10-25 00:53:14,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:53:14,927.927 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 00:53:18,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:53:18,761.761 INFO    ] Checking for system updates...
[2026-10-25 00:53:18,796.796 INFO    ] 200
[2026-10-25 00:53:18,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:18,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:18,855.855 INFO    ] No update needed
[2026-10-25 00:53:18,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 00:53:18,895.895 INFO    ] 200
[2026-10-25 00:53:18,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:18,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:53:18,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:18,988.988 INFO    ] No camera update needed
[2026-10-25 00:53:18,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:53:18,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:53:18,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:53:19,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:53:21,044.044 INFO    ] ================================================
[2026-10-25 00:53:21,059.059 INFO    ] Launching Daemon at Sun Oct 25 00:53:21 IST 2026
[2026-10-25 00:53:21,070.070 INFO    ] ================================================
[2026-10-25 00:53:21,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:53:21
[2026-10-25 00:53:22,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:53:22,487.487 INFO    ] Initializing speech engine...
[2026-10-25 00:53:22,493.493 INFO    ] 2026-10-25 00:53:22
[2026-10-25 00:53:22,787.787 INFO    ] 2026-10-25 00:53:22
[2026-10-25 00:53:22,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:53:23,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:53:23,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:53:23,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:53:23,165.165 INFO    ] time= 25/10/2026 00:53:23
[2026-10-25 00:53:23,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:53:23,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:53:23,289.289 INFO    ] No existing commands found in stream
[2026-10-25 00:53:28,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:53:28,301.301 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 00:53:29,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:53:29,308.308 INFO    ] Checking for system updates...
[2026-10-25 00:53:29,346.346 INFO    ] 200
[2026-10-25 00:53:29,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:29,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:29,417.417 INFO    ] No update needed
[2026-10-25 00:53:29,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 00:53:29,454.454 INFO    ] 200
[2026-10-25 00:53:29,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:29,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:53:29,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:29,562.562 INFO    ] No camera update needed
[2026-10-25 00:53:29,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:53:29,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:53:29,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:53:29,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:53:31,621.621 INFO    ] ================================================
[2026-10-25 00:53:31,638.638 INFO    ] Launching Daemon at Sun Oct 25 00:53:31 IST 2026
[2026-10-25 00:53:31,651.651 INFO    ] ================================================
[2026-10-25 00:53:32,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:53:32
[2026-10-25 00:53:32,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:53:33,129.129 INFO    ] Initializing speech engine...
[2026-10-25 00:53:33,138.138 INFO    ] 2026-10-25 00:53:33
[2026-10-25 00:53:33,432.432 INFO    ] 2026-10-25 00:53:33
[2026-10-25 00:53:33,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:53:33,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:53:33,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:53:33,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:53:33,814.814 INFO    ] time= 25/10/2026 00:53:33
[2026-10-25 00:53:33,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:53:33,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:53:33,940.940 INFO    ] No existing commands found in stream
[2026-10-25 00:53:38,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:53:38,956.956 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 00:53:41,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:53:41,787.787 INFO    ] Checking for system updates...
[2026-10-25 00:53:41,823.823 INFO    ] 200
[2026-10-25 00:53:41,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:41,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:53:41,881.881 INFO    ] No update needed
[2026-10-25 00:53:41,883.883 INFO    ] Checking for camera pi updates...
[2026-10-25 00:53:41,917.917 INFO    ] 200
[2026-10-25 00:53:41,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:41,960.960 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:53:42,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:53:42,128.128 INFO    ] No camera update needed
[2026-10-25 00:53:42,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:53:42,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:53:42,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:53:42,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:53:44,184.184 INFO    ] ================================================
[2026-10-25 00:53:44,201.201 INFO    ] Launching Daemon at Sun Oct 25 00:53:44 IST 2026
[2026-10-25 00:53:44,213.213 INFO    ] ================================================
[2026-10-25 00:53:44,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:53:44
[2026-10-25 00:53:45,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:53:45,645.645 INFO    ] Initializing speech engine...
[2026-10-25 00:53:45,650.650 INFO    ] 2026-10-25 00:53:45
[2026-10-25 00:53:45,897.897 INFO    ] 2026-10-25 00:53:45
[2026-10-25 00:53:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:53:46,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:53:46,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:53:46,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:53:46,378.378 INFO    ] time= 25/10/2026 00:53:46
[2026-10-25 00:53:46,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:53:46,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:53:46,525.525 INFO    ] No existing commands found in stream
[2026-10-25 00:53:51,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:53:51,539.539 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 00:53:53,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:53:53,835.835 INFO    ] Checking for system updates...
[2026-10-25 00:53:53,871.871 INFO    ] 200
[2026-10-25 00:53:53,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:53,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:53,928.928 INFO    ] No update needed
[2026-10-25 00:53:53,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 00:53:53,965.965 INFO    ] 200
[2026-10-25 00:53:53,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:53:54,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:53:54,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:53:54,063.063 INFO    ] No camera update needed
[2026-10-25 00:53:54,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:53:54,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:53:54,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:53:54,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:53:56,119.119 INFO    ] ================================================
[2026-10-25 00:53:56,135.135 INFO    ] Launching Daemon at Sun Oct 25 00:53:56 IST 2026
[2026-10-25 00:53:56,146.146 INFO    ] ================================================
[2026-10-25 00:53:56,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:53:56
[2026-10-25 00:53:57,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:53:57,576.576 INFO    ] Initializing speech engine...
[2026-10-25 00:53:57,585.585 INFO    ] 2026-10-25 00:53:57
[2026-10-25 00:53:57,835.835 INFO    ] 2026-10-25 00:53:57
[2026-10-25 00:53:57,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:53:58,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:53:58,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:53:58,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:53:58,316.316 INFO    ] time= 25/10/2026 00:53:58
[2026-10-25 00:53:58,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:53:58,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:53:58,498.498 INFO    ] No existing commands found in stream
[2026-10-25 00:54:03,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:54:03,538.538 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 00:54:04,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:54:04,298.298 INFO    ] Checking for system updates...
[2026-10-25 00:54:04,335.335 INFO    ] 200
[2026-10-25 00:54:04,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:04,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:04,394.394 INFO    ] No update needed
[2026-10-25 00:54:04,396.396 INFO    ] Checking for camera pi updates...
[2026-10-25 00:54:04,431.431 INFO    ] 200
[2026-10-25 00:54:04,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:04,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:54:04,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:04,529.529 INFO    ] No camera update needed
[2026-10-25 00:54:04,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:54:04,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:54:04,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:54:04,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:54:06,592.592 INFO    ] ================================================
[2026-10-25 00:54:06,607.607 INFO    ] Launching Daemon at Sun Oct 25 00:54:06 IST 2026
[2026-10-25 00:54:06,619.619 INFO    ] ================================================
[2026-10-25 00:54:07,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:54:07
[2026-10-25 00:54:07,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:54:08,194.194 INFO    ] Initializing speech engine...
[2026-10-25 00:54:08,206.206 INFO    ] 2026-10-25 00:54:08
[2026-10-25 00:54:08,486.486 INFO    ] 2026-10-25 00:54:08
[2026-10-25 00:54:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:54:08,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:54:08,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:54:08,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:54:09,012.012 INFO    ] time= 25/10/2026 00:54:09
[2026-10-25 00:54:09,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:54:09,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:54:09,145.145 INFO    ] No existing commands found in stream
[2026-10-25 00:54:14,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:54:14,178.178 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 00:54:16,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:54:16,475.475 INFO    ] Checking for system updates...
[2026-10-25 00:54:16,512.512 INFO    ] 200
[2026-10-25 00:54:16,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:16,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:54:16,570.570 INFO    ] No update needed
[2026-10-25 00:54:16,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 00:54:16,610.610 INFO    ] 200
[2026-10-25 00:54:16,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:16,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:54:16,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:54:16,713.713 INFO    ] No camera update needed
[2026-10-25 00:54:16,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:54:16,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:54:16,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:54:16,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:54:18,772.772 INFO    ] ================================================
[2026-10-25 00:54:18,787.787 INFO    ] Launching Daemon at Sun Oct 25 00:54:18 IST 2026
[2026-10-25 00:54:18,798.798 INFO    ] ================================================
[2026-10-25 00:54:19,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:54:19
[2026-10-25 00:54:19,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:54:20,266.266 INFO    ] Initializing speech engine...
[2026-10-25 00:54:20,273.273 INFO    ] 2026-10-25 00:54:20
[2026-10-25 00:54:20,521.521 INFO    ] 2026-10-25 00:54:20
[2026-10-25 00:54:20,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:54:20,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:54:20,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:54:20,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:54:20,965.965 INFO    ] time= 25/10/2026 00:54:20
[2026-10-25 00:54:21,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:54:21,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:54:21,166.166 INFO    ] No existing commands found in stream
[2026-10-25 00:54:26,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:54:26,206.206 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 00:54:28,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:54:28,711.711 INFO    ] Checking for system updates...
[2026-10-25 00:54:28,747.747 INFO    ] 200
[2026-10-25 00:54:28,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:28,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:28,805.805 INFO    ] No update needed
[2026-10-25 00:54:28,807.807 INFO    ] Checking for camera pi updates...
[2026-10-25 00:54:28,841.841 INFO    ] 200
[2026-10-25 00:54:28,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:28,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:54:28,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:28,933.933 INFO    ] No camera update needed
[2026-10-25 00:54:28,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:54:28,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:54:28,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:54:28,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:54:30,990.990 INFO    ] ================================================
[2026-10-25 00:54:31,007.007 INFO    ] Launching Daemon at Sun Oct 25 00:54:31 IST 2026
[2026-10-25 00:54:31,018.018 INFO    ] ================================================
[2026-10-25 00:54:31,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:54:31
[2026-10-25 00:54:32,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:54:32,687.687 INFO    ] Initializing speech engine...
[2026-10-25 00:54:32,698.698 INFO    ] 2026-10-25 00:54:32
[2026-10-25 00:54:32,971.971 INFO    ] 2026-10-25 00:54:32
[2026-10-25 00:54:33,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:54:33,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:54:33,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:54:33,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:54:33,470.470 INFO    ] time= 25/10/2026 00:54:33
[2026-10-25 00:54:33,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:54:33,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:54:33,666.666 INFO    ] No existing commands found in stream
[2026-10-25 00:54:38,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:54:38,703.703 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 00:54:40,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:54:40,153.153 INFO    ] Checking for system updates...
[2026-10-25 00:54:40,189.189 INFO    ] 200
[2026-10-25 00:54:40,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:40,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:40,247.247 INFO    ] No update needed
[2026-10-25 00:54:40,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 00:54:40,283.283 INFO    ] 200
[2026-10-25 00:54:40,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:40,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:54:40,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:40,384.384 INFO    ] No camera update needed
[2026-10-25 00:54:40,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:54:40,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:54:40,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:54:40,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:54:42,439.439 INFO    ] ================================================
[2026-10-25 00:54:42,455.455 INFO    ] Launching Daemon at Sun Oct 25 00:54:42 IST 2026
[2026-10-25 00:54:42,466.466 INFO    ] ================================================
[2026-10-25 00:54:43,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:54:43
[2026-10-25 00:54:43,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:54:43,904.904 INFO    ] Initializing speech engine...
[2026-10-25 00:54:43,919.919 INFO    ] 2026-10-25 00:54:43
[2026-10-25 00:54:44,200.200 INFO    ] 2026-10-25 00:54:44
[2026-10-25 00:54:44,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:54:44,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:54:44,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:54:44,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:54:44,605.605 INFO    ] time= 25/10/2026 00:54:44
[2026-10-25 00:54:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:54:44,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:54:44,788.788 INFO    ] No existing commands found in stream
[2026-10-25 00:54:49,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:54:49,816.816 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 00:54:52,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:54:52,634.634 INFO    ] Checking for system updates...
[2026-10-25 00:54:52,670.670 INFO    ] 200
[2026-10-25 00:54:52,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:52,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:52,728.728 INFO    ] No update needed
[2026-10-25 00:54:52,730.730 INFO    ] Checking for camera pi updates...
[2026-10-25 00:54:52,764.764 INFO    ] 200
[2026-10-25 00:54:52,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:54:52,811.811 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:54:52,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:54:52,860.860 INFO    ] No camera update needed
[2026-10-25 00:54:52,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:54:52,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:54:52,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:54:52,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:54:54,916.916 INFO    ] ================================================
[2026-10-25 00:54:54,931.931 INFO    ] Launching Daemon at Sun Oct 25 00:54:54 IST 2026
[2026-10-25 00:54:54,943.943 INFO    ] ================================================
[2026-10-25 00:54:55,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:54:55
[2026-10-25 00:54:56,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:54:56,386.386 INFO    ] Initializing speech engine...
[2026-10-25 00:54:56,410.410 INFO    ] 2026-10-25 00:54:56
[2026-10-25 00:54:56,683.683 INFO    ] 2026-10-25 00:54:56
[2026-10-25 00:54:56,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:54:56,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:54:56,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:54:57,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:54:57,162.162 INFO    ] time= 25/10/2026 00:54:57
[2026-10-25 00:54:57,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:54:57,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:54:57,358.358 INFO    ] No existing commands found in stream
[2026-10-25 00:55:02,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:55:02,374.374 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 00:55:06,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:55:06,340.340 INFO    ] Checking for system updates...
[2026-10-25 00:55:06,381.381 INFO    ] 200
[2026-10-25 00:55:06,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:06,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:06,438.438 INFO    ] No update needed
[2026-10-25 00:55:06,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 00:55:06,477.477 INFO    ] 200
[2026-10-25 00:55:06,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:06,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:55:06,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:06,572.572 INFO    ] No camera update needed
[2026-10-25 00:55:06,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:55:06,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:55:06,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:55:06,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:55:08,628.628 INFO    ] ================================================
[2026-10-25 00:55:08,644.644 INFO    ] Launching Daemon at Sun Oct 25 00:55:08 IST 2026
[2026-10-25 00:55:08,655.655 INFO    ] ================================================
[2026-10-25 00:55:09,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:55:09
[2026-10-25 00:55:09,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:55:10,064.064 INFO    ] Initializing speech engine...
[2026-10-25 00:55:10,072.072 INFO    ] 2026-10-25 00:55:10
[2026-10-25 00:55:10,363.363 INFO    ] 2026-10-25 00:55:10
[2026-10-25 00:55:10,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:55:10,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:55:10,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:55:10,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:55:10,755.755 INFO    ] time= 25/10/2026 00:55:10
[2026-10-25 00:55:10,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:55:10,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:55:10,862.862 INFO    ] No existing commands found in stream
[2026-10-25 00:55:15,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:55:15,877.877 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 00:55:17,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:55:17,236.236 INFO    ] Checking for system updates...
[2026-10-25 00:55:17,271.271 INFO    ] 200
[2026-10-25 00:55:17,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:17,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:17,329.329 INFO    ] No update needed
[2026-10-25 00:55:17,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 00:55:17,365.365 INFO    ] 200
[2026-10-25 00:55:17,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:17,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:55:17,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:17,458.458 INFO    ] No camera update needed
[2026-10-25 00:55:17,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:55:17,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:55:17,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:55:17,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:55:19,513.513 INFO    ] ================================================
[2026-10-25 00:55:19,529.529 INFO    ] Launching Daemon at Sun Oct 25 00:55:19 IST 2026
[2026-10-25 00:55:19,540.540 INFO    ] ================================================
[2026-10-25 00:55:20,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:55:20
[2026-10-25 00:55:20,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:55:20,956.956 INFO    ] Initializing speech engine...
[2026-10-25 00:55:20,968.968 INFO    ] 2026-10-25 00:55:20
[2026-10-25 00:55:21,231.231 INFO    ] 2026-10-25 00:55:21
[2026-10-25 00:55:21,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:55:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:55:21,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:55:21,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:55:21,709.709 INFO    ] time= 25/10/2026 00:55:21
[2026-10-25 00:55:21,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:55:21,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:55:21,847.847 INFO    ] No existing commands found in stream
[2026-10-25 00:55:26,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:55:26,862.862 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 00:55:29,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:55:29,495.495 INFO    ] Checking for system updates...
[2026-10-25 00:55:29,531.531 INFO    ] 200
[2026-10-25 00:55:29,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:29,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:29,590.590 INFO    ] No update needed
[2026-10-25 00:55:29,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 00:55:29,630.630 INFO    ] 200
[2026-10-25 00:55:29,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:29,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:55:29,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:29,726.726 INFO    ] No camera update needed
[2026-10-25 00:55:29,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:55:29,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:55:29,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:55:29,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:55:31,785.785 INFO    ] ================================================
[2026-10-25 00:55:31,802.802 INFO    ] Launching Daemon at Sun Oct 25 00:55:31 IST 2026
[2026-10-25 00:55:31,814.814 INFO    ] ================================================
[2026-10-25 00:55:32,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:55:32
[2026-10-25 00:55:33,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:55:33,297.297 INFO    ] Initializing speech engine...
[2026-10-25 00:55:33,316.316 INFO    ] 2026-10-25 00:55:33
[2026-10-25 00:55:33,565.565 INFO    ] 2026-10-25 00:55:33
[2026-10-25 00:55:33,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:55:33,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:55:33,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:55:33,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:55:33,935.935 INFO    ] time= 25/10/2026 00:55:33
[2026-10-25 00:55:33,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:55:33,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:55:34,115.115 INFO    ] No existing commands found in stream
[2026-10-25 00:55:39,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:55:39,146.146 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 00:55:42,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:55:42,724.724 INFO    ] Checking for system updates...
[2026-10-25 00:55:42,760.760 INFO    ] 200
[2026-10-25 00:55:42,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:42,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:42,824.824 INFO    ] No update needed
[2026-10-25 00:55:42,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 00:55:42,864.864 INFO    ] 200
[2026-10-25 00:55:42,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:42,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:55:42,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:55:42,955.955 INFO    ] No camera update needed
[2026-10-25 00:55:42,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:55:42,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:55:42,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:55:42,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:55:45,013.013 INFO    ] ================================================
[2026-10-25 00:55:45,028.028 INFO    ] Launching Daemon at Sun Oct 25 00:55:45 IST 2026
[2026-10-25 00:55:45,039.039 INFO    ] ================================================
[2026-10-25 00:55:45,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:55:45
[2026-10-25 00:55:46,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:55:46,643.643 INFO    ] Initializing speech engine...
[2026-10-25 00:55:46,655.655 INFO    ] 2026-10-25 00:55:46
[2026-10-25 00:55:46,937.937 INFO    ] 2026-10-25 00:55:46
[2026-10-25 00:55:46,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:55:47,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:55:47,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:55:47,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:55:47,464.464 INFO    ] time= 25/10/2026 00:55:47
[2026-10-25 00:55:47,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:55:47,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:55:47,619.619 INFO    ] No existing commands found in stream
[2026-10-25 00:55:52,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:55:52,648.648 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 00:55:54,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:55:54,401.401 INFO    ] Checking for system updates...
[2026-10-25 00:55:54,438.438 INFO    ] 200
[2026-10-25 00:55:54,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:54,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:55:54,498.498 INFO    ] No update needed
[2026-10-25 00:55:54,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 00:55:54,535.535 INFO    ] 200
[2026-10-25 00:55:54,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:55:54,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:55:54,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:55:54,738.738 INFO    ] No camera update needed
[2026-10-25 00:55:54,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:55:54,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:55:54,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:55:54,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:55:56,796.796 INFO    ] ================================================
[2026-10-25 00:55:56,811.811 INFO    ] Launching Daemon at Sun Oct 25 00:55:56 IST 2026
[2026-10-25 00:55:56,822.822 INFO    ] ================================================
[2026-10-25 00:55:57,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:55:57
[2026-10-25 00:55:58,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:55:58,290.290 INFO    ] Initializing speech engine...
[2026-10-25 00:55:58,309.309 INFO    ] 2026-10-25 00:55:58
[2026-10-25 00:55:58,561.561 INFO    ] 2026-10-25 00:55:58
[2026-10-25 00:55:58,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:55:58,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:55:58,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:55:58,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:55:59,059.059 INFO    ] time= 25/10/2026 00:55:59
[2026-10-25 00:55:59,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:55:59,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:55:59,263.263 INFO    ] No existing commands found in stream
[2026-10-25 00:56:04,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:56:04,282.282 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 00:56:06,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:56:06,583.583 INFO    ] Checking for system updates...
[2026-10-25 00:56:06,620.620 INFO    ] 200
[2026-10-25 00:56:06,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:06,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:06,677.677 INFO    ] No update needed
[2026-10-25 00:56:06,679.679 INFO    ] Checking for camera pi updates...
[2026-10-25 00:56:06,713.713 INFO    ] 200
[2026-10-25 00:56:06,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:06,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:56:06,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:06,805.805 INFO    ] No camera update needed
[2026-10-25 00:56:06,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:56:06,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:56:06,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:56:06,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:56:08,861.861 INFO    ] ================================================
[2026-10-25 00:56:08,876.876 INFO    ] Launching Daemon at Sun Oct 25 00:56:08 IST 2026
[2026-10-25 00:56:08,887.887 INFO    ] ================================================
[2026-10-25 00:56:09,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:56:09
[2026-10-25 00:56:10,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:56:10,352.352 INFO    ] Initializing speech engine...
[2026-10-25 00:56:10,361.361 INFO    ] 2026-10-25 00:56:10
[2026-10-25 00:56:10,618.618 INFO    ] 2026-10-25 00:56:10
[2026-10-25 00:56:10,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:56:10,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:56:10,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:56:11,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:56:11,101.101 INFO    ] time= 25/10/2026 00:56:11
[2026-10-25 00:56:11,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:56:11,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:56:11,285.285 INFO    ] No existing commands found in stream
[2026-10-25 00:56:16,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:56:16,300.300 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 00:56:20,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:56:20,347.347 INFO    ] Checking for system updates...
[2026-10-25 00:56:20,385.385 INFO    ] 200
[2026-10-25 00:56:20,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:20,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:20,442.442 INFO    ] No update needed
[2026-10-25 00:56:20,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 00:56:20,479.479 INFO    ] 200
[2026-10-25 00:56:20,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:20,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:56:20,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:20,574.574 INFO    ] No camera update needed
[2026-10-25 00:56:20,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:56:20,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:56:20,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:56:20,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:56:22,630.630 INFO    ] ================================================
[2026-10-25 00:56:22,645.645 INFO    ] Launching Daemon at Sun Oct 25 00:56:22 IST 2026
[2026-10-25 00:56:22,655.655 INFO    ] ================================================
[2026-10-25 00:56:23,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:56:23
[2026-10-25 00:56:23,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:56:24,066.066 INFO    ] Initializing speech engine...
[2026-10-25 00:56:24,084.084 INFO    ] 2026-10-25 00:56:24
[2026-10-25 00:56:24,332.332 INFO    ] 2026-10-25 00:56:24
[2026-10-25 00:56:24,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:56:24,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:56:24,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:56:24,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:56:24,806.806 INFO    ] time= 25/10/2026 00:56:24
[2026-10-25 00:56:24,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:56:24,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:56:24,969.969 INFO    ] No existing commands found in stream
[2026-10-25 00:56:30,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:56:30,004.004 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 00:56:32,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 00:56:32,698.698 INFO    ] Checking for system updates...
[2026-10-25 00:56:32,733.733 INFO    ] 200
[2026-10-25 00:56:32,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:32,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:56:32,796.796 INFO    ] No update needed
[2026-10-25 00:56:32,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 00:56:32,832.832 INFO    ] 200
[2026-10-25 00:56:32,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:32,874.874 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:56:32,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:56:32,908.908 INFO    ] No camera update needed
[2026-10-25 00:56:32,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:56:32,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:56:32,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:56:32,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:56:34,963.963 INFO    ] ================================================
[2026-10-25 00:56:34,978.978 INFO    ] Launching Daemon at Sun Oct 25 00:56:34 IST 2026
[2026-10-25 00:56:34,988.988 INFO    ] ================================================
[2026-10-25 00:56:35,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:56:35
[2026-10-25 00:56:36,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:56:36,377.377 INFO    ] Initializing speech engine...
[2026-10-25 00:56:36,392.392 INFO    ] 2026-10-25 00:56:36
[2026-10-25 00:56:36,656.656 INFO    ] 2026-10-25 00:56:36
[2026-10-25 00:56:36,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:56:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:56:36,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:56:37,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:56:37,138.138 INFO    ] time= 25/10/2026 00:56:37
[2026-10-25 00:56:37,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:56:37,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:56:37,351.351 INFO    ] No existing commands found in stream
[2026-10-25 00:56:42,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:56:42,379.379 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 00:56:43,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:56:43,800.800 INFO    ] Checking for system updates...
[2026-10-25 00:56:43,836.836 INFO    ] 200
[2026-10-25 00:56:43,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:43,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:43,894.894 INFO    ] No update needed
[2026-10-25 00:56:43,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 00:56:43,930.930 INFO    ] 200
[2026-10-25 00:56:43,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:43,973.973 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:56:44,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:56:44,028.028 INFO    ] No camera update needed
[2026-10-25 00:56:44,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:56:44,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:56:44,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:56:44,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:56:46,083.083 INFO    ] ================================================
[2026-10-25 00:56:46,098.098 INFO    ] Launching Daemon at Sun Oct 25 00:56:46 IST 2026
[2026-10-25 00:56:46,108.108 INFO    ] ================================================
[2026-10-25 00:56:46,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:56:46
[2026-10-25 00:56:47,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:56:47,525.525 INFO    ] Initializing speech engine...
[2026-10-25 00:56:47,535.535 INFO    ] 2026-10-25 00:56:47
[2026-10-25 00:56:47,781.781 INFO    ] 2026-10-25 00:56:47
[2026-10-25 00:56:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:56:48,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:56:48,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:56:48,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:56:48,254.254 INFO    ] time= 25/10/2026 00:56:48
[2026-10-25 00:56:48,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:56:48,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:56:48,462.462 INFO    ] No existing commands found in stream
[2026-10-25 00:56:53,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:56:53,485.485 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 00:56:54,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:56:54,926.926 INFO    ] Checking for system updates...
[2026-10-25 00:56:54,962.962 INFO    ] 200
[2026-10-25 00:56:54,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:55,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:56:55,026.026 INFO    ] No update needed
[2026-10-25 00:56:55,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 00:56:55,065.065 INFO    ] 200
[2026-10-25 00:56:55,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:56:55,108.108 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:56:55,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:56:55,158.158 INFO    ] No camera update needed
[2026-10-25 00:56:55,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:56:55,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:56:55,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:56:55,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:56:57,213.213 INFO    ] ================================================
[2026-10-25 00:56:57,228.228 INFO    ] Launching Daemon at Sun Oct 25 00:56:57 IST 2026
[2026-10-25 00:56:57,239.239 INFO    ] ================================================
[2026-10-25 00:56:57,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:56:57
[2026-10-25 00:56:58,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:56:58,826.826 INFO    ] Initializing speech engine...
[2026-10-25 00:56:58,839.839 INFO    ] 2026-10-25 00:56:58
[2026-10-25 00:56:59,120.120 INFO    ] 2026-10-25 00:56:59
[2026-10-25 00:56:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:56:59,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:56:59,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:56:59,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:56:59,618.618 INFO    ] time= 25/10/2026 00:56:59
[2026-10-25 00:56:59,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:56:59,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:56:59,808.808 INFO    ] No existing commands found in stream
[2026-10-25 00:57:04,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:57:04,840.840 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 00:57:07,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:57:07,994.994 INFO    ] Checking for system updates...
[2026-10-25 00:57:08,033.033 INFO    ] 200
[2026-10-25 00:57:08,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:08,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:57:08,097.097 INFO    ] No update needed
[2026-10-25 00:57:08,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 00:57:08,136.136 INFO    ] 200
[2026-10-25 00:57:08,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:08,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:57:08,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:57:08,236.236 INFO    ] No camera update needed
[2026-10-25 00:57:08,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:57:08,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:57:08,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:57:08,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:57:10,297.297 INFO    ] ================================================
[2026-10-25 00:57:10,312.312 INFO    ] Launching Daemon at Sun Oct 25 00:57:10 IST 2026
[2026-10-25 00:57:10,322.322 INFO    ] ================================================
[2026-10-25 00:57:10,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:57:10
[2026-10-25 00:57:11,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:57:11,768.768 INFO    ] Initializing speech engine...
[2026-10-25 00:57:11,786.786 INFO    ] 2026-10-25 00:57:11
[2026-10-25 00:57:12,054.054 INFO    ] 2026-10-25 00:57:12
[2026-10-25 00:57:12,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:57:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:57:12,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:57:12,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:57:12,561.561 INFO    ] time= 25/10/2026 00:57:12
[2026-10-25 00:57:12,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:57:12,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:57:12,732.732 INFO    ] No existing commands found in stream
[2026-10-25 00:57:17,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:57:17,747.747 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 00:57:20,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:57:20,873.873 INFO    ] Checking for system updates...
[2026-10-25 00:57:20,909.909 INFO    ] 200
[2026-10-25 00:57:20,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:20,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:20,968.968 INFO    ] No update needed
[2026-10-25 00:57:20,970.970 INFO    ] Checking for camera pi updates...
[2026-10-25 00:57:21,004.004 INFO    ] 200
[2026-10-25 00:57:21,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:21,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:57:21,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:21,100.100 INFO    ] No camera update needed
[2026-10-25 00:57:21,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:57:21,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:57:21,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:57:21,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:57:23,155.155 INFO    ] ================================================
[2026-10-25 00:57:23,170.170 INFO    ] Launching Daemon at Sun Oct 25 00:57:23 IST 2026
[2026-10-25 00:57:23,181.181 INFO    ] ================================================
[2026-10-25 00:57:23,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:57:23
[2026-10-25 00:57:24,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:57:24,621.621 INFO    ] Initializing speech engine...
[2026-10-25 00:57:24,628.628 INFO    ] 2026-10-25 00:57:24
[2026-10-25 00:57:24,888.888 INFO    ] 2026-10-25 00:57:24
[2026-10-25 00:57:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:57:25,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:57:25,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:57:25,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:57:25,357.357 INFO    ] time= 25/10/2026 00:57:25
[2026-10-25 00:57:25,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:57:25,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:57:25,502.502 INFO    ] No existing commands found in stream
[2026-10-25 00:57:30,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:57:30,526.526 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 00:57:31,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:57:31,816.816 INFO    ] Checking for system updates...
[2026-10-25 00:57:31,854.854 INFO    ] 200
[2026-10-25 00:57:31,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:31,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:31,924.924 INFO    ] No update needed
[2026-10-25 00:57:31,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 00:57:31,966.966 INFO    ] 200
[2026-10-25 00:57:31,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:32,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:57:32,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:32,059.059 INFO    ] No camera update needed
[2026-10-25 00:57:32,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:57:32,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:57:32,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:57:32,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:57:34,118.118 INFO    ] ================================================
[2026-10-25 00:57:34,133.133 INFO    ] Launching Daemon at Sun Oct 25 00:57:34 IST 2026
[2026-10-25 00:57:34,144.144 INFO    ] ================================================
[2026-10-25 00:57:34,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:57:34
[2026-10-25 00:57:35,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:57:35,691.691 INFO    ] Initializing speech engine...
[2026-10-25 00:57:35,697.697 INFO    ] 2026-10-25 00:57:35
[2026-10-25 00:57:35,955.955 INFO    ] 2026-10-25 00:57:35
[2026-10-25 00:57:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:57:36,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:57:36,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:57:36,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:57:36,496.496 INFO    ] time= 25/10/2026 00:57:36
[2026-10-25 00:57:36,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:57:36,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:57:36,648.648 INFO    ] No existing commands found in stream
[2026-10-25 00:57:41,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:57:41,672.672 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 00:57:44,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:57:44,785.785 INFO    ] Checking for system updates...
[2026-10-25 00:57:44,821.821 INFO    ] 200
[2026-10-25 00:57:44,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:44,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:44,885.885 INFO    ] No update needed
[2026-10-25 00:57:44,888.888 INFO    ] Checking for camera pi updates...
[2026-10-25 00:57:44,923.923 INFO    ] 200
[2026-10-25 00:57:44,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:44,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:57:45,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:57:45,025.025 INFO    ] No camera update needed
[2026-10-25 00:57:45,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:57:45,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:57:45,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:57:45,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:57:47,083.083 INFO    ] ================================================
[2026-10-25 00:57:47,098.098 INFO    ] Launching Daemon at Sun Oct 25 00:57:47 IST 2026
[2026-10-25 00:57:47,109.109 INFO    ] ================================================
[2026-10-25 00:57:47,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:57:47
[2026-10-25 00:57:48,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:57:48,687.687 INFO    ] Initializing speech engine...
[2026-10-25 00:57:48,698.698 INFO    ] 2026-10-25 00:57:48
[2026-10-25 00:57:48,982.982 INFO    ] 2026-10-25 00:57:48
[2026-10-25 00:57:49,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:57:49,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:57:49,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:57:49,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:57:49,510.510 INFO    ] time= 25/10/2026 00:57:49
[2026-10-25 00:57:49,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:57:49,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:57:49,642.642 INFO    ] No existing commands found in stream
[2026-10-25 00:57:54,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:57:54,673.673 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 00:57:59,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:57:59,112.112 INFO    ] Checking for system updates...
[2026-10-25 00:57:59,149.149 INFO    ] 200
[2026-10-25 00:57:59,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:59,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:57:59,207.207 INFO    ] No update needed
[2026-10-25 00:57:59,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 00:57:59,244.244 INFO    ] 200
[2026-10-25 00:57:59,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:57:59,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:57:59,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:57:59,445.445 INFO    ] No camera update needed
[2026-10-25 00:57:59,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:57:59,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:57:59,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:57:59,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:58:01,525.525 INFO    ] ================================================
[2026-10-25 00:58:01,554.554 INFO    ] Launching Daemon at Sun Oct 25 00:58:01 IST 2026
[2026-10-25 00:58:01,573.573 INFO    ] ================================================
[2026-10-25 00:58:02,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:58:02
[2026-10-25 00:58:02,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:58:03,234.234 INFO    ] Initializing speech engine...
[2026-10-25 00:58:03,249.249 INFO    ] 2026-10-25 00:58:03
[2026-10-25 00:58:03,560.560 INFO    ] 2026-10-25 00:58:03
[2026-10-25 00:58:03,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:58:03,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:58:03,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:58:03,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:58:03,967.967 INFO    ] time= 25/10/2026 00:58:03
[2026-10-25 00:58:03,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:58:03,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:58:04,052.052 INFO    ] No existing commands found in stream
[2026-10-25 00:58:09,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:58:09,085.085 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 00:58:11,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:58:11,315.315 INFO    ] Checking for system updates...
[2026-10-25 00:58:11,353.353 INFO    ] 200
[2026-10-25 00:58:11,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:11,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:58:11,411.411 INFO    ] No update needed
[2026-10-25 00:58:11,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 00:58:11,446.446 INFO    ] 200
[2026-10-25 00:58:11,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:11,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:58:11,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:58:11,543.543 INFO    ] No camera update needed
[2026-10-25 00:58:11,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:58:11,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:58:11,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:58:11,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:58:13,599.599 INFO    ] ================================================
[2026-10-25 00:58:13,615.615 INFO    ] Launching Daemon at Sun Oct 25 00:58:13 IST 2026
[2026-10-25 00:58:13,626.626 INFO    ] ================================================
[2026-10-25 00:58:14,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:58:14
[2026-10-25 00:58:14,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:58:15,078.078 INFO    ] Initializing speech engine...
[2026-10-25 00:58:15,084.084 INFO    ] 2026-10-25 00:58:15
[2026-10-25 00:58:15,346.346 INFO    ] 2026-10-25 00:58:15
[2026-10-25 00:58:15,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:58:15,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:58:15,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:58:15,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:58:15,803.803 INFO    ] time= 25/10/2026 00:58:15
[2026-10-25 00:58:15,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:58:15,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:58:15,955.955 INFO    ] No existing commands found in stream
[2026-10-25 00:58:20,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:58:20,983.983 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 00:58:24,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:58:24,670.670 INFO    ] Checking for system updates...
[2026-10-25 00:58:24,709.709 INFO    ] 200
[2026-10-25 00:58:24,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:24,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:58:24,769.769 INFO    ] No update needed
[2026-10-25 00:58:24,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 00:58:24,806.806 INFO    ] 200
[2026-10-25 00:58:24,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:24,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:58:24,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:58:24,910.910 INFO    ] No camera update needed
[2026-10-25 00:58:24,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:58:24,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:58:24,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:58:24,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:58:26,968.968 INFO    ] ================================================
[2026-10-25 00:58:26,983.983 INFO    ] Launching Daemon at Sun Oct 25 00:58:26 IST 2026
[2026-10-25 00:58:27,995.995 INFO    ] ================================================
[2026-10-25 00:58:27,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:58:27
[2026-10-25 00:58:28,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:58:28,570.570 INFO    ] Initializing speech engine...
[2026-10-25 00:58:28,578.578 INFO    ] 2026-10-25 00:58:28
[2026-10-25 00:58:28,845.845 INFO    ] 2026-10-25 00:58:28
[2026-10-25 00:58:28,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:58:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:58:29,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:58:29,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:58:29,343.343 INFO    ] time= 25/10/2026 00:58:29
[2026-10-25 00:58:29,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:58:29,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:58:29,524.524 INFO    ] No existing commands found in stream
[2026-10-25 00:58:34,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:58:34,553.553 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 00:58:38,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:58:38,509.509 INFO    ] Checking for system updates...
[2026-10-25 00:58:38,546.546 INFO    ] 200
[2026-10-25 00:58:38,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:38,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:58:38,605.605 INFO    ] No update needed
[2026-10-25 00:58:38,608.608 INFO    ] Checking for camera pi updates...
[2026-10-25 00:58:38,643.643 INFO    ] 200
[2026-10-25 00:58:38,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:38,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:58:38,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 00:58:38,741.741 INFO    ] No camera update needed
[2026-10-25 00:58:38,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:58:38,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:58:38,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:58:38,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:58:40,799.799 INFO    ] ================================================
[2026-10-25 00:58:40,814.814 INFO    ] Launching Daemon at Sun Oct 25 00:58:40 IST 2026
[2026-10-25 00:58:40,825.825 INFO    ] ================================================
[2026-10-25 00:58:41,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:58:41
[2026-10-25 00:58:42,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:58:42,403.403 INFO    ] Initializing speech engine...
[2026-10-25 00:58:42,409.409 INFO    ] 2026-10-25 00:58:42
[2026-10-25 00:58:42,683.683 INFO    ] 2026-10-25 00:58:42
[2026-10-25 00:58:42,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:58:42,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:58:42,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:58:43,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:58:43,150.150 INFO    ] time= 25/10/2026 00:58:43
[2026-10-25 00:58:43,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:58:43,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:58:43,307.307 INFO    ] No existing commands found in stream
[2026-10-25 00:58:48,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:58:48,324.324 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 00:58:49,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:58:49,943.943 INFO    ] Checking for system updates...
[2026-10-25 00:58:49,980.980 INFO    ] 200
[2026-10-25 00:58:49,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:50,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:58:50,045.045 INFO    ] No update needed
[2026-10-25 00:58:50,048.048 INFO    ] Checking for camera pi updates...
[2026-10-25 00:58:50,083.083 INFO    ] 200
[2026-10-25 00:58:50,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:58:50,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:58:50,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:58:50,175.175 INFO    ] No camera update needed
[2026-10-25 00:58:50,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:58:50,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:58:50,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:58:50,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:58:52,234.234 INFO    ] ================================================
[2026-10-25 00:58:52,249.249 INFO    ] Launching Daemon at Sun Oct 25 00:58:52 IST 2026
[2026-10-25 00:58:52,259.259 INFO    ] ================================================
[2026-10-25 00:58:52,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:58:52
[2026-10-25 00:58:53,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:58:53,706.706 INFO    ] Initializing speech engine...
[2026-10-25 00:58:53,716.716 INFO    ] 2026-10-25 00:58:53
[2026-10-25 00:58:53,964.964 INFO    ] 2026-10-25 00:58:53
[2026-10-25 00:58:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:58:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:58:54,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:58:54,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:58:54,472.472 INFO    ] time= 25/10/2026 00:58:54
[2026-10-25 00:58:54,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:58:54,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:58:54,652.652 INFO    ] No existing commands found in stream
[2026-10-25 00:58:59,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:58:59,682.682 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 00:59:00,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 00:59:00,932.932 INFO    ] Checking for system updates...
[2026-10-25 00:59:00,974.974 INFO    ] 200
[2026-10-25 00:59:00,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:01,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:01,040.040 INFO    ] No update needed
[2026-10-25 00:59:01,043.043 INFO    ] Checking for camera pi updates...
[2026-10-25 00:59:01,080.080 INFO    ] 200
[2026-10-25 00:59:01,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:01,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:59:01,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:01,177.177 INFO    ] No camera update needed
[2026-10-25 00:59:01,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:59:01,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:59:01,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:59:01,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:59:03,238.238 INFO    ] ================================================
[2026-10-25 00:59:03,253.253 INFO    ] Launching Daemon at Sun Oct 25 00:59:03 IST 2026
[2026-10-25 00:59:03,264.264 INFO    ] ================================================
[2026-10-25 00:59:03,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:59:03
[2026-10-25 00:59:04,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:59:04,753.753 INFO    ] Initializing speech engine...
[2026-10-25 00:59:04,766.766 INFO    ] 2026-10-25 00:59:04
[2026-10-25 00:59:05,031.031 INFO    ] 2026-10-25 00:59:05
[2026-10-25 00:59:05,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:59:05,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:59:05,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:59:05,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:59:05,439.439 INFO    ] time= 25/10/2026 00:59:05
[2026-10-25 00:59:05,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:59:05,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:59:05,603.603 INFO    ] No existing commands found in stream
[2026-10-25 00:59:10,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:59:10,631.631 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 00:59:12,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 00:59:12,020.020 INFO    ] Checking for system updates...
[2026-10-25 00:59:12,056.056 INFO    ] 200
[2026-10-25 00:59:12,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:12,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:12,113.113 INFO    ] No update needed
[2026-10-25 00:59:12,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 00:59:12,150.150 INFO    ] 200
[2026-10-25 00:59:12,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:12,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:59:12,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:12,244.244 INFO    ] No camera update needed
[2026-10-25 00:59:12,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:59:12,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:59:12,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:59:12,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:59:14,298.298 INFO    ] ================================================
[2026-10-25 00:59:14,313.313 INFO    ] Launching Daemon at Sun Oct 25 00:59:14 IST 2026
[2026-10-25 00:59:14,324.324 INFO    ] ================================================
[2026-10-25 00:59:14,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:59:14
[2026-10-25 00:59:15,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:59:15,771.771 INFO    ] Initializing speech engine...
[2026-10-25 00:59:15,779.779 INFO    ] 2026-10-25 00:59:15
[2026-10-25 00:59:16,030.030 INFO    ] 2026-10-25 00:59:16
[2026-10-25 00:59:16,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:59:16,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:59:16,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:59:16,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:59:16,505.505 INFO    ] time= 25/10/2026 00:59:16
[2026-10-25 00:59:16,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:59:16,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:59:16,707.707 INFO    ] No existing commands found in stream
[2026-10-25 00:59:21,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:59:21,736.736 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 00:59:24,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 00:59:24,519.519 INFO    ] Checking for system updates...
[2026-10-25 00:59:24,555.555 INFO    ] 200
[2026-10-25 00:59:24,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:24,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:24,612.612 INFO    ] No update needed
[2026-10-25 00:59:24,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 00:59:24,648.648 INFO    ] 200
[2026-10-25 00:59:24,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:24,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:59:24,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:24,744.744 INFO    ] No camera update needed
[2026-10-25 00:59:24,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:59:24,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:59:24,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:59:24,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:59:26,802.802 INFO    ] ================================================
[2026-10-25 00:59:26,817.817 INFO    ] Launching Daemon at Sun Oct 25 00:59:26 IST 2026
[2026-10-25 00:59:26,828.828 INFO    ] ================================================
[2026-10-25 00:59:27,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:59:27
[2026-10-25 00:59:27,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:59:28,226.226 INFO    ] Initializing speech engine...
[2026-10-25 00:59:28,244.244 INFO    ] 2026-10-25 00:59:28
[2026-10-25 00:59:28,493.493 INFO    ] 2026-10-25 00:59:28
[2026-10-25 00:59:28,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:59:28,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:59:28,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:59:28,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:59:28,965.965 INFO    ] time= 25/10/2026 00:59:28
[2026-10-25 00:59:29,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:59:29,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:59:29,122.122 INFO    ] No existing commands found in stream
[2026-10-25 00:59:34,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:59:34,136.136 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 00:59:37,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 00:59:37,275.275 INFO    ] Checking for system updates...
[2026-10-25 00:59:37,314.314 INFO    ] 200
[2026-10-25 00:59:37,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:37,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:37,372.372 INFO    ] No update needed
[2026-10-25 00:59:37,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 00:59:37,415.415 INFO    ] 200
[2026-10-25 00:59:37,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:37,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:59:37,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:37,544.544 INFO    ] No camera update needed
[2026-10-25 00:59:37,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:59:37,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:59:37,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:59:37,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:59:39,600.600 INFO    ] ================================================
[2026-10-25 00:59:39,615.615 INFO    ] Launching Daemon at Sun Oct 25 00:59:39 IST 2026
[2026-10-25 00:59:39,626.626 INFO    ] ================================================
[2026-10-25 00:59:40,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:59:40
[2026-10-25 00:59:40,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:59:41,025.025 INFO    ] Initializing speech engine...
[2026-10-25 00:59:41,034.034 INFO    ] 2026-10-25 00:59:41
[2026-10-25 00:59:41,321.321 INFO    ] 2026-10-25 00:59:41
[2026-10-25 00:59:41,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:59:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:59:41,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:59:41,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:59:41,728.728 INFO    ] time= 25/10/2026 00:59:41
[2026-10-25 00:59:41,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:59:41,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:59:41,814.814 INFO    ] No existing commands found in stream
[2026-10-25 00:59:46,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 00:59:46,832.832 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 00:59:50,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 00:59:50,616.616 INFO    ] Checking for system updates...
[2026-10-25 00:59:50,653.653 INFO    ] 200
[2026-10-25 00:59:50,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:50,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:50,710.710 INFO    ] No update needed
[2026-10-25 00:59:50,713.713 INFO    ] Checking for camera pi updates...
[2026-10-25 00:59:50,746.746 INFO    ] 200
[2026-10-25 00:59:50,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 00:59:50,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 00:59:50,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 00:59:50,841.841 INFO    ] No camera update needed
[2026-10-25 00:59:50,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 00:59:50,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 00:59:50,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 00:59:50,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 00:59:52,897.897 INFO    ] ================================================
[2026-10-25 00:59:52,912.912 INFO    ] Launching Daemon at Sun Oct 25 00:59:52 IST 2026
[2026-10-25 00:59:52,923.923 INFO    ] ================================================
[2026-10-25 00:59:53,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 00:59:53
[2026-10-25 00:59:54,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 00:59:54,367.367 INFO    ] Initializing speech engine...
[2026-10-25 00:59:54,377.377 INFO    ] 2026-10-25 00:59:54
[2026-10-25 00:59:54,623.623 INFO    ] 2026-10-25 00:59:54
[2026-10-25 00:59:54,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 00:59:54,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 00:59:54,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 00:59:55,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 00:59:55,122.122 INFO    ] time= 25/10/2026 00:59:55
[2026-10-25 00:59:55,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 00:59:55,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 00:59:55,297.297 INFO    ] No existing commands found in stream
[2026-10-25 01:00:00,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:00:00,322.322 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 01:00:03,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:00:03,422.422 INFO    ] Checking for system updates...
[2026-10-25 01:00:03,564.564 INFO    ] 200
[2026-10-25 01:00:03,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:03,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:03,904.904 INFO    ] No update needed
[2026-10-25 01:00:03,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 01:00:04,110.110 INFO    ] 200
[2026-10-25 01:00:04,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:04,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:00:04,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:04,396.396 INFO    ] No camera update needed
[2026-10-25 01:00:04,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:00:04,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:00:04,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:00:04,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:00:06,567.567 INFO    ] ================================================
[2026-10-25 01:00:06,582.582 INFO    ] Launching Daemon at Sun Oct 25 01:00:06 IST 2026
[2026-10-25 01:00:06,593.593 INFO    ] ================================================
[2026-10-25 01:00:07,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:00:07
[2026-10-25 01:00:07,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:00:08,048.048 INFO    ] Initializing speech engine...
[2026-10-25 01:00:08,058.058 INFO    ] 2026-10-25 01:00:08
[2026-10-25 01:00:08,306.306 INFO    ] 2026-10-25 01:00:08
[2026-10-25 01:00:08,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:00:08,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:00:08,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:00:08,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:00:08,783.783 INFO    ] time= 25/10/2026 01:00:08
[2026-10-25 01:00:08,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:00:08,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:00:08,951.951 INFO    ] No existing commands found in stream
[2026-10-25 01:00:13,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:00:13,991.991 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 01:00:16,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:00:16,741.741 INFO    ] Checking for system updates...
[2026-10-25 01:00:16,781.781 INFO    ] 200
[2026-10-25 01:00:16,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:16,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:00:16,838.838 INFO    ] No update needed
[2026-10-25 01:00:16,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 01:00:16,877.877 INFO    ] 200
[2026-10-25 01:00:16,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:16,920.920 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:00:16,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:00:16,968.968 INFO    ] No camera update needed
[2026-10-25 01:00:16,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:00:16,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:00:16,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:00:16,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:00:19,025.025 INFO    ] ================================================
[2026-10-25 01:00:19,040.040 INFO    ] Launching Daemon at Sun Oct 25 01:00:19 IST 2026
[2026-10-25 01:00:19,051.051 INFO    ] ================================================
[2026-10-25 01:00:19,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:00:19
[2026-10-25 01:00:20,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:00:20,594.594 INFO    ] Initializing speech engine...
[2026-10-25 01:00:20,602.602 INFO    ] 2026-10-25 01:00:20
[2026-10-25 01:00:20,867.867 INFO    ] 2026-10-25 01:00:20
[2026-10-25 01:00:20,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:00:21,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:00:21,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:00:21,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:00:21,931.931 INFO    ] time= 25/10/2026 01:00:21
[2026-10-25 01:00:21,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:00:21,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:00:22,079.079 INFO    ] No existing commands found in stream
[2026-10-25 01:00:27,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:00:27,094.094 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 01:00:29,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:00:29,428.428 INFO    ] Checking for system updates...
[2026-10-25 01:00:29,469.469 INFO    ] 200
[2026-10-25 01:00:29,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:29,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:29,530.530 INFO    ] No update needed
[2026-10-25 01:00:29,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 01:00:29,568.568 INFO    ] 200
[2026-10-25 01:00:29,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:29,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:00:29,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:29,672.672 INFO    ] No camera update needed
[2026-10-25 01:00:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:00:29,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:00:29,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:00:29,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:00:31,731.731 INFO    ] ================================================
[2026-10-25 01:00:31,746.746 INFO    ] Launching Daemon at Sun Oct 25 01:00:31 IST 2026
[2026-10-25 01:00:31,757.757 INFO    ] ================================================
[2026-10-25 01:00:32,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:00:32
[2026-10-25 01:00:32,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:00:33,271.271 INFO    ] Initializing speech engine...
[2026-10-25 01:00:33,289.289 INFO    ] 2026-10-25 01:00:33
[2026-10-25 01:00:33,546.546 INFO    ] 2026-10-25 01:00:33
[2026-10-25 01:00:33,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:00:33,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:00:33,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:00:33,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:00:33,957.957 INFO    ] time= 25/10/2026 01:00:33
[2026-10-25 01:00:33,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:00:33,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:00:34,063.063 INFO    ] No existing commands found in stream
[2026-10-25 01:00:39,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:00:39,078.078 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 01:00:41,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:00:41,104.104 INFO    ] Checking for system updates...
[2026-10-25 01:00:41,139.139 INFO    ] 200
[2026-10-25 01:00:41,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:41,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:41,198.198 INFO    ] No update needed
[2026-10-25 01:00:41,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 01:00:41,238.238 INFO    ] 200
[2026-10-25 01:00:41,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:41,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:00:41,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:41,339.339 INFO    ] No camera update needed
[2026-10-25 01:00:41,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:00:41,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:00:41,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:00:41,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:00:43,395.395 INFO    ] ================================================
[2026-10-25 01:00:43,410.410 INFO    ] Launching Daemon at Sun Oct 25 01:00:43 IST 2026
[2026-10-25 01:00:43,421.421 INFO    ] ================================================
[2026-10-25 01:00:43,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:00:43
[2026-10-25 01:00:44,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:00:44,829.829 INFO    ] Initializing speech engine...
[2026-10-25 01:00:44,844.844 INFO    ] 2026-10-25 01:00:44
[2026-10-25 01:00:45,124.124 INFO    ] 2026-10-25 01:00:45
[2026-10-25 01:00:45,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:00:45,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:00:45,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:00:45,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:00:45,536.536 INFO    ] time= 25/10/2026 01:00:45
[2026-10-25 01:00:45,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:00:45,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:00:45,722.722 INFO    ] No existing commands found in stream
[2026-10-25 01:00:50,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:00:50,750.750 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 01:00:52,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:00:52,592.592 INFO    ] Checking for system updates...
[2026-10-25 01:00:52,628.628 INFO    ] 200
[2026-10-25 01:00:52,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:52,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:52,692.692 INFO    ] No update needed
[2026-10-25 01:00:52,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 01:00:52,728.728 INFO    ] 200
[2026-10-25 01:00:52,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:00:52,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:00:52,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:00:52,840.840 INFO    ] No camera update needed
[2026-10-25 01:00:52,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:00:52,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:00:52,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:00:52,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:00:54,897.897 INFO    ] ================================================
[2026-10-25 01:00:54,912.912 INFO    ] Launching Daemon at Sun Oct 25 01:00:54 IST 2026
[2026-10-25 01:00:54,922.922 INFO    ] ================================================
[2026-10-25 01:00:55,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:00:55
[2026-10-25 01:00:56,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:00:56,360.360 INFO    ] Initializing speech engine...
[2026-10-25 01:00:56,369.369 INFO    ] 2026-10-25 01:00:56
[2026-10-25 01:00:56,663.663 INFO    ] 2026-10-25 01:00:56
[2026-10-25 01:00:56,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:00:56,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:00:56,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:00:57,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:00:57,076.076 INFO    ] time= 25/10/2026 01:00:57
[2026-10-25 01:00:57,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:00:57,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:00:57,223.223 INFO    ] No existing commands found in stream
[2026-10-25 01:01:02,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:01:02,248.248 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 01:01:06,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:01:06,009.009 INFO    ] Checking for system updates...
[2026-10-25 01:01:06,046.046 INFO    ] 200
[2026-10-25 01:01:06,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:06,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:01:06,105.105 INFO    ] No update needed
[2026-10-25 01:01:06,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 01:01:06,142.142 INFO    ] 200
[2026-10-25 01:01:06,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:06,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:01:06,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:01:06,234.234 INFO    ] No camera update needed
[2026-10-25 01:01:06,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:01:06,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:01:06,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:01:06,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:01:08,289.289 INFO    ] ================================================
[2026-10-25 01:01:08,304.304 INFO    ] Launching Daemon at Sun Oct 25 01:01:08 IST 2026
[2026-10-25 01:01:08,315.315 INFO    ] ================================================
[2026-10-25 01:01:08,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:01:08
[2026-10-25 01:01:09,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:01:09,718.718 INFO    ] Initializing speech engine...
[2026-10-25 01:01:09,734.734 INFO    ] 2026-10-25 01:01:09
[2026-10-25 01:01:10,011.011 INFO    ] 2026-10-25 01:01:09
[2026-10-25 01:01:10,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:01:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:01:10,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:01:10,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:01:10,412.412 INFO    ] time= 25/10/2026 01:01:10
[2026-10-25 01:01:10,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:01:10,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:01:10,581.581 INFO    ] No existing commands found in stream
[2026-10-25 01:01:15,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:01:15,609.609 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 01:01:18,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:01:18,226.226 INFO    ] Checking for system updates...
[2026-10-25 01:01:18,262.262 INFO    ] 200
[2026-10-25 01:01:18,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:18,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:01:18,324.324 INFO    ] No update needed
[2026-10-25 01:01:18,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 01:01:18,363.363 INFO    ] 200
[2026-10-25 01:01:18,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:18,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:01:18,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:01:18,461.461 INFO    ] No camera update needed
[2026-10-25 01:01:18,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:01:18,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:01:18,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:01:18,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:01:20,517.517 INFO    ] ================================================
[2026-10-25 01:01:20,533.533 INFO    ] Launching Daemon at Sun Oct 25 01:01:20 IST 2026
[2026-10-25 01:01:20,543.543 INFO    ] ================================================
[2026-10-25 01:01:21,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:01:21
[2026-10-25 01:01:21,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:01:21,994.994 INFO    ] Initializing speech engine...
[2026-10-25 01:01:22,000.000 INFO    ] 2026-10-25 01:01:21
[2026-10-25 01:01:22,259.259 INFO    ] 2026-10-25 01:01:22
[2026-10-25 01:01:22,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:01:22,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:01:22,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:01:22,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:01:22,751.751 INFO    ] time= 25/10/2026 01:01:22
[2026-10-25 01:01:22,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:01:22,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:01:22,940.940 INFO    ] No existing commands found in stream
[2026-10-25 01:01:27,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:01:27,970.970 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 01:01:30,917.917 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:01:30,919.919 INFO    ] Checking for system updates...
[2026-10-25 01:01:30,957.957 INFO    ] 200
[2026-10-25 01:01:30,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:31,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:31,015.015 INFO    ] No update needed
[2026-10-25 01:01:31,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 01:01:31,054.054 INFO    ] 200
[2026-10-25 01:01:31,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:31,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:01:31,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:31,147.147 INFO    ] No camera update needed
[2026-10-25 01:01:31,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:01:31,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:01:31,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:01:31,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:01:33,206.206 INFO    ] ================================================
[2026-10-25 01:01:33,222.222 INFO    ] Launching Daemon at Sun Oct 25 01:01:33 IST 2026
[2026-10-25 01:01:33,232.232 INFO    ] ================================================
[2026-10-25 01:01:33,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:01:33
[2026-10-25 01:01:34,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:01:34,688.688 INFO    ] Initializing speech engine...
[2026-10-25 01:01:34,696.696 INFO    ] 2026-10-25 01:01:34
[2026-10-25 01:01:34,960.960 INFO    ] 2026-10-25 01:01:34
[2026-10-25 01:01:34,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:01:35,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:01:35,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:01:35,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:01:35,434.434 INFO    ] time= 25/10/2026 01:01:35
[2026-10-25 01:01:35,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:01:35,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:01:35,624.624 INFO    ] No existing commands found in stream
[2026-10-25 01:01:40,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:01:40,639.639 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 01:01:43,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:01:43,573.573 INFO    ] Checking for system updates...
[2026-10-25 01:01:43,608.608 INFO    ] 200
[2026-10-25 01:01:43,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:43,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:43,666.666 INFO    ] No update needed
[2026-10-25 01:01:43,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 01:01:43,703.703 INFO    ] 200
[2026-10-25 01:01:43,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:43,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:01:43,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:43,804.804 INFO    ] No camera update needed
[2026-10-25 01:01:43,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:01:43,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:01:43,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:01:43,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:01:45,857.857 INFO    ] ================================================
[2026-10-25 01:01:45,872.872 INFO    ] Launching Daemon at Sun Oct 25 01:01:45 IST 2026
[2026-10-25 01:01:45,883.883 INFO    ] ================================================
[2026-10-25 01:01:46,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:01:46
[2026-10-25 01:01:47,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:01:47,322.322 INFO    ] Initializing speech engine...
[2026-10-25 01:01:47,348.348 INFO    ] 2026-10-25 01:01:47
[2026-10-25 01:01:47,610.610 INFO    ] 2026-10-25 01:01:47
[2026-10-25 01:01:47,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:01:47,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:01:47,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:01:48,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:01:48,011.011 INFO    ] time= 25/10/2026 01:01:48
[2026-10-25 01:01:48,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:01:48,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:01:48,173.173 INFO    ] No existing commands found in stream
[2026-10-25 01:01:53,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:01:53,201.201 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 01:01:55,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:01:55,273.273 INFO    ] Checking for system updates...
[2026-10-25 01:01:55,309.309 INFO    ] 200
[2026-10-25 01:01:55,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:55,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:55,374.374 INFO    ] No update needed
[2026-10-25 01:01:55,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 01:01:55,412.412 INFO    ] 200
[2026-10-25 01:01:55,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:01:55,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:01:55,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:01:55,508.508 INFO    ] No camera update needed
[2026-10-25 01:01:55,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:01:55,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:01:55,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:01:55,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:01:57,563.563 INFO    ] ================================================
[2026-10-25 01:01:57,578.578 INFO    ] Launching Daemon at Sun Oct 25 01:01:57 IST 2026
[2026-10-25 01:01:57,589.589 INFO    ] ================================================
[2026-10-25 01:01:58,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:01:58
[2026-10-25 01:01:58,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:01:59,045.045 INFO    ] Initializing speech engine...
[2026-10-25 01:01:59,055.055 INFO    ] 2026-10-25 01:01:59
[2026-10-25 01:01:59,317.317 INFO    ] 2026-10-25 01:01:59
[2026-10-25 01:01:59,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:01:59,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:01:59,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:01:59,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:01:59,827.827 INFO    ] time= 25/10/2026 01:01:59
[2026-10-25 01:01:59,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:01:59,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:00,040.040 INFO    ] No existing commands found in stream
[2026-10-25 01:02:05,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:02:05,068.068 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 01:02:07,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:02:07,618.618 INFO    ] Checking for system updates...
[2026-10-25 01:02:07,654.654 INFO    ] 200
[2026-10-25 01:02:07,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:07,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:07,715.715 INFO    ] No update needed
[2026-10-25 01:02:07,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 01:02:07,758.758 INFO    ] 200
[2026-10-25 01:02:07,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:07,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:02:07,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:07,964.964 INFO    ] No camera update needed
[2026-10-25 01:02:07,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:02:07,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:02:07,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:02:07,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:02:10,019.019 INFO    ] ================================================
[2026-10-25 01:02:10,034.034 INFO    ] Launching Daemon at Sun Oct 25 01:02:10 IST 2026
[2026-10-25 01:02:10,045.045 INFO    ] ================================================
[2026-10-25 01:02:10,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:02:10
[2026-10-25 01:02:11,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:02:11,472.472 INFO    ] Initializing speech engine...
[2026-10-25 01:02:11,482.482 INFO    ] 2026-10-25 01:02:11
[2026-10-25 01:02:11,741.741 INFO    ] 2026-10-25 01:02:11
[2026-10-25 01:02:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:02:11,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:02:12,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:02:12,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:02:12,229.229 INFO    ] time= 25/10/2026 01:02:12
[2026-10-25 01:02:12,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:02:12,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:12,407.407 INFO    ] No existing commands found in stream
[2026-10-25 01:02:17,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:02:17,422.422 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 01:02:18,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:02:18,563.563 INFO    ] Checking for system updates...
[2026-10-25 01:02:18,599.599 INFO    ] 200
[2026-10-25 01:02:18,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:18,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:02:18,657.657 INFO    ] No update needed
[2026-10-25 01:02:18,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 01:02:18,693.693 INFO    ] 200
[2026-10-25 01:02:18,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:18,740.740 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:02:18,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:02:18,793.793 INFO    ] No camera update needed
[2026-10-25 01:02:18,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:02:18,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:02:18,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:02:18,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:02:20,847.847 INFO    ] ================================================
[2026-10-25 01:02:20,862.862 INFO    ] Launching Daemon at Sun Oct 25 01:02:20 IST 2026
[2026-10-25 01:02:20,873.873 INFO    ] ================================================
[2026-10-25 01:02:21,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:02:21
[2026-10-25 01:02:22,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:02:22,319.319 INFO    ] Initializing speech engine...
[2026-10-25 01:02:22,338.338 INFO    ] 2026-10-25 01:02:22
[2026-10-25 01:02:22,603.603 INFO    ] 2026-10-25 01:02:22
[2026-10-25 01:02:22,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:02:22,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:02:22,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:02:22,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:02:23,005.005 INFO    ] time= 25/10/2026 01:02:23
[2026-10-25 01:02:23,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:02:23,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:23,149.149 INFO    ] No existing commands found in stream
[2026-10-25 01:02:28,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:02:28,177.177 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 01:02:29,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:02:29,386.386 INFO    ] Checking for system updates...
[2026-10-25 01:02:29,423.423 INFO    ] 200
[2026-10-25 01:02:29,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:29,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:29,485.485 INFO    ] No update needed
[2026-10-25 01:02:29,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 01:02:29,523.523 INFO    ] 200
[2026-10-25 01:02:29,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:29,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:02:29,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:29,616.616 INFO    ] No camera update needed
[2026-10-25 01:02:29,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:02:29,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:02:29,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:02:29,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:02:31,671.671 INFO    ] ================================================
[2026-10-25 01:02:31,687.687 INFO    ] Launching Daemon at Sun Oct 25 01:02:31 IST 2026
[2026-10-25 01:02:31,700.700 INFO    ] ================================================
[2026-10-25 01:02:32,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:02:32
[2026-10-25 01:02:32,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:02:33,186.186 INFO    ] Initializing speech engine...
[2026-10-25 01:02:33,201.201 INFO    ] 2026-10-25 01:02:33
[2026-10-25 01:02:33,475.475 INFO    ] 2026-10-25 01:02:33
[2026-10-25 01:02:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:02:33,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:02:33,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:02:33,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:02:33,879.879 INFO    ] time= 25/10/2026 01:02:33
[2026-10-25 01:02:33,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:02:33,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:34,029.029 INFO    ] No existing commands found in stream
[2026-10-25 01:02:39,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:02:39,056.056 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 01:02:40,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:02:40,910.910 INFO    ] Checking for system updates...
[2026-10-25 01:02:40,947.947 INFO    ] 200
[2026-10-25 01:02:40,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:41,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:02:41,005.005 INFO    ] No update needed
[2026-10-25 01:02:41,007.007 INFO    ] Checking for camera pi updates...
[2026-10-25 01:02:41,048.048 INFO    ] 200
[2026-10-25 01:02:41,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:41,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:02:41,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:02:41,142.142 INFO    ] No camera update needed
[2026-10-25 01:02:41,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:02:41,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:02:41,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:02:41,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:02:43,196.196 INFO    ] ================================================
[2026-10-25 01:02:43,211.211 INFO    ] Launching Daemon at Sun Oct 25 01:02:43 IST 2026
[2026-10-25 01:02:43,222.222 INFO    ] ================================================
[2026-10-25 01:02:43,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:02:43
[2026-10-25 01:02:44,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:02:44,653.653 INFO    ] Initializing speech engine...
[2026-10-25 01:02:44,665.665 INFO    ] 2026-10-25 01:02:44
[2026-10-25 01:02:44,914.914 INFO    ] 2026-10-25 01:02:44
[2026-10-25 01:02:44,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:02:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:02:45,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:02:45,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:02:45,390.390 INFO    ] time= 25/10/2026 01:02:45
[2026-10-25 01:02:45,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:02:45,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:45,595.595 INFO    ] No existing commands found in stream
[2026-10-25 01:02:50,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:02:50,628.628 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 01:02:54,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:02:54,235.235 INFO    ] Checking for system updates...
[2026-10-25 01:02:54,277.277 INFO    ] 200
[2026-10-25 01:02:54,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:54,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:54,335.335 INFO    ] No update needed
[2026-10-25 01:02:54,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 01:02:54,371.371 INFO    ] 200
[2026-10-25 01:02:54,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:02:54,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:02:54,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:02:54,465.465 INFO    ] No camera update needed
[2026-10-25 01:02:54,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:02:54,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:02:54,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:02:54,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:02:56,521.521 INFO    ] ================================================
[2026-10-25 01:02:56,535.535 INFO    ] Launching Daemon at Sun Oct 25 01:02:56 IST 2026
[2026-10-25 01:02:56,546.546 INFO    ] ================================================
[2026-10-25 01:02:57,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:02:57
[2026-10-25 01:02:57,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:02:58,096.096 INFO    ] Initializing speech engine...
[2026-10-25 01:02:58,106.106 INFO    ] 2026-10-25 01:02:58
[2026-10-25 01:02:58,377.377 INFO    ] 2026-10-25 01:02:58
[2026-10-25 01:02:58,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:02:58,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:02:58,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:02:58,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:02:58,860.860 INFO    ] time= 25/10/2026 01:02:58
[2026-10-25 01:02:58,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:02:58,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:02:59,060.060 INFO    ] No existing commands found in stream
[2026-10-25 01:03:04,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:03:04,089.089 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 01:03:05,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:03:05,982.982 INFO    ] Checking for system updates...
[2026-10-25 01:03:06,021.021 INFO    ] 200
[2026-10-25 01:03:06,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:06,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:06,089.089 INFO    ] No update needed
[2026-10-25 01:03:06,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 01:03:06,127.127 INFO    ] 200
[2026-10-25 01:03:06,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:06,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:03:06,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:06,229.229 INFO    ] No camera update needed
[2026-10-25 01:03:06,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:03:06,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:03:06,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:03:06,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:03:08,284.284 INFO    ] ================================================
[2026-10-25 01:03:08,299.299 INFO    ] Launching Daemon at Sun Oct 25 01:03:08 IST 2026
[2026-10-25 01:03:08,310.310 INFO    ] ================================================
[2026-10-25 01:03:08,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:03:08
[2026-10-25 01:03:09,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:03:09,708.708 INFO    ] Initializing speech engine...
[2026-10-25 01:03:09,714.714 INFO    ] 2026-10-25 01:03:09
[2026-10-25 01:03:09,985.985 INFO    ] 2026-10-25 01:03:09
[2026-10-25 01:03:10,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:03:10,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:03:10,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:03:10,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:03:10,479.479 INFO    ] time= 25/10/2026 01:03:10
[2026-10-25 01:03:10,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:03:10,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:03:10,662.662 INFO    ] No existing commands found in stream
[2026-10-25 01:03:15,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:03:15,695.695 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 01:03:17,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:03:17,724.724 INFO    ] Checking for system updates...
[2026-10-25 01:03:17,775.775 INFO    ] 200
[2026-10-25 01:03:17,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:17,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:03:17,833.833 INFO    ] No update needed
[2026-10-25 01:03:17,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 01:03:17,868.868 INFO    ] 200
[2026-10-25 01:03:17,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:17,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:03:17,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:03:17,963.963 INFO    ] No camera update needed
[2026-10-25 01:03:17,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:03:17,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:03:17,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:03:17,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:03:20,019.019 INFO    ] ================================================
[2026-10-25 01:03:20,034.034 INFO    ] Launching Daemon at Sun Oct 25 01:03:20 IST 2026
[2026-10-25 01:03:20,045.045 INFO    ] ================================================
[2026-10-25 01:03:20,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:03:20
[2026-10-25 01:03:21,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:03:21,570.570 INFO    ] Initializing speech engine...
[2026-10-25 01:03:21,583.583 INFO    ] 2026-10-25 01:03:21
[2026-10-25 01:03:21,860.860 INFO    ] 2026-10-25 01:03:21
[2026-10-25 01:03:21,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:03:22,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:03:22,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:03:22,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:03:22,366.366 INFO    ] time= 25/10/2026 01:03:22
[2026-10-25 01:03:22,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:03:22,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:03:22,540.540 INFO    ] No existing commands found in stream
[2026-10-25 01:03:27,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:03:27,569.569 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 01:03:30,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:03:30,834.834 INFO    ] Checking for system updates...
[2026-10-25 01:03:30,870.870 INFO    ] 200
[2026-10-25 01:03:30,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:30,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:30,928.928 INFO    ] No update needed
[2026-10-25 01:03:30,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 01:03:30,964.964 INFO    ] 200
[2026-10-25 01:03:30,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:31,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:03:31,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:31,057.057 INFO    ] No camera update needed
[2026-10-25 01:03:31,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:03:31,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:03:31,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:03:31,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:03:33,116.116 INFO    ] ================================================
[2026-10-25 01:03:33,132.132 INFO    ] Launching Daemon at Sun Oct 25 01:03:33 IST 2026
[2026-10-25 01:03:33,142.142 INFO    ] ================================================
[2026-10-25 01:03:33,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:03:33
[2026-10-25 01:03:34,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:03:34,736.736 INFO    ] Initializing speech engine...
[2026-10-25 01:03:34,744.744 INFO    ] 2026-10-25 01:03:34
[2026-10-25 01:03:35,016.016 INFO    ] 2026-10-25 01:03:35
[2026-10-25 01:03:35,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:03:35,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:03:35,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:03:35,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:03:35,491.491 INFO    ] time= 25/10/2026 01:03:35
[2026-10-25 01:03:35,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:03:35,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:03:35,648.648 INFO    ] No existing commands found in stream
[2026-10-25 01:03:40,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:03:40,688.688 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 01:03:44,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:03:44,887.887 INFO    ] Checking for system updates...
[2026-10-25 01:03:44,925.925 INFO    ] 200
[2026-10-25 01:03:44,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:44,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:44,983.983 INFO    ] No update needed
[2026-10-25 01:03:44,986.986 INFO    ] Checking for camera pi updates...
[2026-10-25 01:03:45,020.020 INFO    ] 200
[2026-10-25 01:03:45,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:45,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:03:45,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:45,112.112 INFO    ] No camera update needed
[2026-10-25 01:03:45,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:03:45,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:03:45,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:03:45,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:03:47,165.165 INFO    ] ================================================
[2026-10-25 01:03:47,181.181 INFO    ] Launching Daemon at Sun Oct 25 01:03:47 IST 2026
[2026-10-25 01:03:47,193.193 INFO    ] ================================================
[2026-10-25 01:03:47,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:03:47
[2026-10-25 01:03:48,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:03:48,796.796 INFO    ] Initializing speech engine...
[2026-10-25 01:03:48,810.810 INFO    ] 2026-10-25 01:03:48
[2026-10-25 01:03:49,120.120 INFO    ] 2026-10-25 01:03:49
[2026-10-25 01:03:49,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:03:49,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:03:49,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:03:49,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:03:49,581.581 INFO    ] time= 25/10/2026 01:03:49
[2026-10-25 01:03:49,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:03:49,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:03:49,772.772 INFO    ] No existing commands found in stream
[2026-10-25 01:03:54,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:03:54,807.807 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 01:03:57,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:03:57,714.714 INFO    ] Checking for system updates...
[2026-10-25 01:03:57,759.759 INFO    ] 200
[2026-10-25 01:03:57,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:57,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:57,830.830 INFO    ] No update needed
[2026-10-25 01:03:57,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 01:03:57,870.870 INFO    ] 200
[2026-10-25 01:03:57,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:03:57,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:03:57,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:03:57,976.976 INFO    ] No camera update needed
[2026-10-25 01:03:57,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:03:57,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:03:57,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:03:57,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:04:00,044.044 INFO    ] ================================================
[2026-10-25 01:04:00,059.059 INFO    ] Launching Daemon at Sun Oct 25 01:04:00 IST 2026
[2026-10-25 01:04:00,069.069 INFO    ] ================================================
[2026-10-25 01:04:00,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:04:00
[2026-10-25 01:04:01,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:04:01,490.490 INFO    ] Initializing speech engine...
[2026-10-25 01:04:01,499.499 INFO    ] 2026-10-25 01:04:01
[2026-10-25 01:04:01,759.759 INFO    ] 2026-10-25 01:04:01
[2026-10-25 01:04:01,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:04:02,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:04:02,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:04:02,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:04:02,247.247 INFO    ] time= 25/10/2026 01:04:02
[2026-10-25 01:04:02,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:04:02,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:04:02,370.370 INFO    ] No existing commands found in stream
[2026-10-25 01:04:07,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:04:07,386.386 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 01:04:11,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:04:11,294.294 INFO    ] Checking for system updates...
[2026-10-25 01:04:11,330.330 INFO    ] 200
[2026-10-25 01:04:11,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:11,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:04:11,388.388 INFO    ] No update needed
[2026-10-25 01:04:11,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 01:04:11,425.425 INFO    ] 200
[2026-10-25 01:04:11,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:11,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:04:11,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:04:11,626.626 INFO    ] No camera update needed
[2026-10-25 01:04:11,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:04:11,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:04:11,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:04:11,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:04:13,684.684 INFO    ] ================================================
[2026-10-25 01:04:13,699.699 INFO    ] Launching Daemon at Sun Oct 25 01:04:13 IST 2026
[2026-10-25 01:04:13,710.710 INFO    ] ================================================
[2026-10-25 01:04:14,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:04:14
[2026-10-25 01:04:14,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:04:15,122.122 INFO    ] Initializing speech engine...
[2026-10-25 01:04:15,131.131 INFO    ] 2026-10-25 01:04:15
[2026-10-25 01:04:15,383.383 INFO    ] 2026-10-25 01:04:15
[2026-10-25 01:04:15,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:04:15,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:04:15,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:04:15,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:04:15,854.854 INFO    ] time= 25/10/2026 01:04:15
[2026-10-25 01:04:15,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:04:15,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:04:16,044.044 INFO    ] No existing commands found in stream
[2026-10-25 01:04:21,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:04:21,075.075 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 01:04:21,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:04:21,839.839 INFO    ] Checking for system updates...
[2026-10-25 01:04:21,875.875 INFO    ] 200
[2026-10-25 01:04:21,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:21,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:21,933.933 INFO    ] No update needed
[2026-10-25 01:04:21,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 01:04:21,973.973 INFO    ] 200
[2026-10-25 01:04:21,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:22,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:04:22,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:22,071.071 INFO    ] No camera update needed
[2026-10-25 01:04:22,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:04:22,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:04:22,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:04:22,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:04:24,126.126 INFO    ] ================================================
[2026-10-25 01:04:24,142.142 INFO    ] Launching Daemon at Sun Oct 25 01:04:24 IST 2026
[2026-10-25 01:04:24,152.152 INFO    ] ================================================
[2026-10-25 01:04:24,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:04:24
[2026-10-25 01:04:25,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:04:25,557.557 INFO    ] Initializing speech engine...
[2026-10-25 01:04:25,564.564 INFO    ] 2026-10-25 01:04:25
[2026-10-25 01:04:25,862.862 INFO    ] 2026-10-25 01:04:25
[2026-10-25 01:04:25,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:04:26,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:04:26,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:04:26,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:04:26,284.284 INFO    ] time= 25/10/2026 01:04:26
[2026-10-25 01:04:26,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:04:26,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:04:26,374.374 INFO    ] No existing commands found in stream
[2026-10-25 01:04:31,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:04:31,389.389 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 01:04:34,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:04:34,195.195 INFO    ] Checking for system updates...
[2026-10-25 01:04:34,231.231 INFO    ] 200
[2026-10-25 01:04:34,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:34,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:04:34,296.296 INFO    ] No update needed
[2026-10-25 01:04:34,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 01:04:34,332.332 INFO    ] 200
[2026-10-25 01:04:34,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:34,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:04:34,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:04:34,422.422 INFO    ] No camera update needed
[2026-10-25 01:04:34,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:04:34,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:04:34,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:04:34,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:04:36,476.476 INFO    ] ================================================
[2026-10-25 01:04:36,491.491 INFO    ] Launching Daemon at Sun Oct 25 01:04:36 IST 2026
[2026-10-25 01:04:36,503.503 INFO    ] ================================================
[2026-10-25 01:04:37,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:04:37
[2026-10-25 01:04:37,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:04:38,163.163 INFO    ] Initializing speech engine...
[2026-10-25 01:04:38,177.177 INFO    ] 2026-10-25 01:04:38
[2026-10-25 01:04:38,460.460 INFO    ] 2026-10-25 01:04:38
[2026-10-25 01:04:38,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:04:38,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:04:38,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:04:38,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:04:39,014.014 INFO    ] time= 25/10/2026 01:04:39
[2026-10-25 01:04:39,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:04:39,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:04:39,179.179 INFO    ] No existing commands found in stream
[2026-10-25 01:04:44,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:04:44,208.208 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 01:04:46,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:04:46,879.879 INFO    ] Checking for system updates...
[2026-10-25 01:04:46,917.917 INFO    ] 200
[2026-10-25 01:04:46,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:46,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:46,977.977 INFO    ] No update needed
[2026-10-25 01:04:46,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 01:04:47,018.018 INFO    ] 200
[2026-10-25 01:04:47,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:47,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:04:47,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:47,116.116 INFO    ] No camera update needed
[2026-10-25 01:04:47,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:04:47,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:04:47,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:04:47,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:04:49,176.176 INFO    ] ================================================
[2026-10-25 01:04:49,191.191 INFO    ] Launching Daemon at Sun Oct 25 01:04:49 IST 2026
[2026-10-25 01:04:49,202.202 INFO    ] ================================================
[2026-10-25 01:04:49,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:04:49
[2026-10-25 01:04:50,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:04:50,604.604 INFO    ] Initializing speech engine...
[2026-10-25 01:04:50,621.621 INFO    ] 2026-10-25 01:04:50
[2026-10-25 01:04:50,905.905 INFO    ] 2026-10-25 01:04:50
[2026-10-25 01:04:50,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:04:51,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:04:51,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:04:51,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:04:51,312.312 INFO    ] time= 25/10/2026 01:04:51
[2026-10-25 01:04:51,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:04:51,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:04:51,409.409 INFO    ] No existing commands found in stream
[2026-10-25 01:04:56,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:04:56,424.424 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 01:04:58,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:04:58,088.088 INFO    ] Checking for system updates...
[2026-10-25 01:04:58,124.124 INFO    ] 200
[2026-10-25 01:04:58,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:58,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:58,196.196 INFO    ] No update needed
[2026-10-25 01:04:58,198.198 INFO    ] Checking for camera pi updates...
[2026-10-25 01:04:58,237.237 INFO    ] 200
[2026-10-25 01:04:58,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:04:58,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:04:58,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:04:58,332.332 INFO    ] No camera update needed
[2026-10-25 01:04:58,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:04:58,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:04:58,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:04:58,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:05:00,387.387 INFO    ] ================================================
[2026-10-25 01:05:00,402.402 INFO    ] Launching Daemon at Sun Oct 25 01:05:00 IST 2026
[2026-10-25 01:05:00,413.413 INFO    ] ================================================
[2026-10-25 01:05:00,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:05:00
[2026-10-25 01:05:01,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:05:01,919.919 INFO    ] Initializing speech engine...
[2026-10-25 01:05:01,928.928 INFO    ] 2026-10-25 01:05:01
[2026-10-25 01:05:02,512.512 INFO    ] 2026-10-25 01:05:02
[2026-10-25 01:05:02,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:05:02,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:05:02,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:05:03,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:05:03,064.064 INFO    ] time= 25/10/2026 01:05:03
[2026-10-25 01:05:03,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:05:03,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:05:03,293.293 INFO    ] No existing commands found in stream
[2026-10-25 01:05:08,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:05:08,324.324 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 01:05:11,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:05:11,802.802 INFO    ] Checking for system updates...
[2026-10-25 01:05:11,838.838 INFO    ] 200
[2026-10-25 01:05:11,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:11,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:11,896.896 INFO    ] No update needed
[2026-10-25 01:05:11,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 01:05:11,933.933 INFO    ] 200
[2026-10-25 01:05:11,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:11,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:05:12,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:12,023.023 INFO    ] No camera update needed
[2026-10-25 01:05:12,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:05:12,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:05:12,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:05:12,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:05:14,078.078 INFO    ] ================================================
[2026-10-25 01:05:14,094.094 INFO    ] Launching Daemon at Sun Oct 25 01:05:14 IST 2026
[2026-10-25 01:05:14,105.105 INFO    ] ================================================
[2026-10-25 01:05:14,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:05:14
[2026-10-25 01:05:15,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:05:15,548.548 INFO    ] Initializing speech engine...
[2026-10-25 01:05:15,570.570 INFO    ] 2026-10-25 01:05:15
[2026-10-25 01:05:15,825.825 INFO    ] 2026-10-25 01:05:15
[2026-10-25 01:05:15,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:05:16,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:05:16,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:05:16,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:05:16,224.224 INFO    ] time= 25/10/2026 01:05:16
[2026-10-25 01:05:16,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:05:16,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:05:16,324.324 INFO    ] No existing commands found in stream
[2026-10-25 01:05:21,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:05:21,341.341 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 01:05:24,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:05:24,305.305 INFO    ] Checking for system updates...
[2026-10-25 01:05:24,350.350 INFO    ] 200
[2026-10-25 01:05:24,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:24,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:24,408.408 INFO    ] No update needed
[2026-10-25 01:05:24,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 01:05:24,445.445 INFO    ] 200
[2026-10-25 01:05:24,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:24,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:05:24,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:24,543.543 INFO    ] No camera update needed
[2026-10-25 01:05:24,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:05:24,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:05:24,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:05:24,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:05:26,597.597 INFO    ] ================================================
[2026-10-25 01:05:26,612.612 INFO    ] Launching Daemon at Sun Oct 25 01:05:26 IST 2026
[2026-10-25 01:05:26,623.623 INFO    ] ================================================
[2026-10-25 01:05:27,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:05:27
[2026-10-25 01:05:27,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:05:28,035.035 INFO    ] Initializing speech engine...
[2026-10-25 01:05:28,051.051 INFO    ] 2026-10-25 01:05:28
[2026-10-25 01:05:28,353.353 INFO    ] 2026-10-25 01:05:28
[2026-10-25 01:05:28,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:05:28,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:05:28,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:05:28,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:05:28,871.871 INFO    ] time= 25/10/2026 01:05:28
[2026-10-25 01:05:28,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:05:28,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:05:29,082.082 INFO    ] No existing commands found in stream
[2026-10-25 01:05:34,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:05:34,115.115 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 01:05:36,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:05:36,146.146 INFO    ] Checking for system updates...
[2026-10-25 01:05:36,183.183 INFO    ] 200
[2026-10-25 01:05:36,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:36,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:36,246.246 INFO    ] No update needed
[2026-10-25 01:05:36,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 01:05:36,283.283 INFO    ] 200
[2026-10-25 01:05:36,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:36,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:05:36,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:36,379.379 INFO    ] No camera update needed
[2026-10-25 01:05:36,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:05:36,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:05:36,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:05:36,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:05:38,434.434 INFO    ] ================================================
[2026-10-25 01:05:38,450.450 INFO    ] Launching Daemon at Sun Oct 25 01:05:38 IST 2026
[2026-10-25 01:05:38,461.461 INFO    ] ================================================
[2026-10-25 01:05:39,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:05:39
[2026-10-25 01:05:39,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:05:39,884.884 INFO    ] Initializing speech engine...
[2026-10-25 01:05:39,893.893 INFO    ] 2026-10-25 01:05:39
[2026-10-25 01:05:40,140.140 INFO    ] 2026-10-25 01:05:40
[2026-10-25 01:05:40,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:05:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:05:40,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:05:40,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:05:40,612.612 INFO    ] time= 25/10/2026 01:05:40
[2026-10-25 01:05:40,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:05:40,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:05:40,765.765 INFO    ] No existing commands found in stream
[2026-10-25 01:05:45,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:05:45,792.792 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 01:05:46,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:05:46,342.342 INFO    ] Checking for system updates...
[2026-10-25 01:05:46,383.383 INFO    ] 200
[2026-10-25 01:05:46,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:46,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:05:46,442.442 INFO    ] No update needed
[2026-10-25 01:05:46,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 01:05:46,483.483 INFO    ] 200
[2026-10-25 01:05:46,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:46,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:05:46,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:05:46,570.570 INFO    ] No camera update needed
[2026-10-25 01:05:46,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:05:46,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:05:46,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:05:46,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:05:48,626.626 INFO    ] ================================================
[2026-10-25 01:05:48,642.642 INFO    ] Launching Daemon at Sun Oct 25 01:05:48 IST 2026
[2026-10-25 01:05:48,653.653 INFO    ] ================================================
[2026-10-25 01:05:49,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:05:49
[2026-10-25 01:05:49,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:05:50,069.069 INFO    ] Initializing speech engine...
[2026-10-25 01:05:50,078.078 INFO    ] 2026-10-25 01:05:50
[2026-10-25 01:05:50,337.337 INFO    ] 2026-10-25 01:05:50
[2026-10-25 01:05:50,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:05:50,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:05:50,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:05:50,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:05:50,800.800 INFO    ] time= 25/10/2026 01:05:50
[2026-10-25 01:05:50,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:05:50,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:05:50,977.977 INFO    ] No existing commands found in stream
[2026-10-25 01:05:56,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:05:56,011.011 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 01:05:58,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:05:58,891.891 INFO    ] Checking for system updates...
[2026-10-25 01:05:58,932.932 INFO    ] 200
[2026-10-25 01:05:58,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:58,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:58,990.990 INFO    ] No update needed
[2026-10-25 01:05:58,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 01:05:59,031.031 INFO    ] 200
[2026-10-25 01:05:59,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:05:59,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:05:59,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:05:59,132.132 INFO    ] No camera update needed
[2026-10-25 01:05:59,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:05:59,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:05:59,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:05:59,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:06:01,187.187 INFO    ] ================================================
[2026-10-25 01:06:01,202.202 INFO    ] Launching Daemon at Sun Oct 25 01:06:01 IST 2026
[2026-10-25 01:06:01,213.213 INFO    ] ================================================
[2026-10-25 01:06:01,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:06:01
[2026-10-25 01:06:02,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:06:02,995.995 INFO    ] Initializing speech engine...
[2026-10-25 01:06:03,002.002 INFO    ] 2026-10-25 01:06:02
[2026-10-25 01:06:03,300.300 INFO    ] 2026-10-25 01:06:03
[2026-10-25 01:06:03,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:06:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:06:03,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:06:03,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:06:03,773.773 INFO    ] time= 25/10/2026 01:06:03
[2026-10-25 01:06:03,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:06:03,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:06:03,949.949 INFO    ] No existing commands found in stream
[2026-10-25 01:06:08,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:06:08,983.983 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 01:06:13,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:06:13,276.276 INFO    ] Checking for system updates...
[2026-10-25 01:06:13,317.317 INFO    ] 200
[2026-10-25 01:06:13,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:13,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:13,377.377 INFO    ] No update needed
[2026-10-25 01:06:13,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 01:06:13,421.421 INFO    ] 200
[2026-10-25 01:06:13,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:13,470.470 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:06:13,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:13,624.624 INFO    ] No camera update needed
[2026-10-25 01:06:13,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:06:13,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:06:13,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:06:13,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:06:15,681.681 INFO    ] ================================================
[2026-10-25 01:06:15,696.696 INFO    ] Launching Daemon at Sun Oct 25 01:06:15 IST 2026
[2026-10-25 01:06:15,707.707 INFO    ] ================================================
[2026-10-25 01:06:16,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:06:16
[2026-10-25 01:06:16,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:06:17,145.145 INFO    ] Initializing speech engine...
[2026-10-25 01:06:17,154.154 INFO    ] 2026-10-25 01:06:17
[2026-10-25 01:06:17,452.452 INFO    ] 2026-10-25 01:06:17
[2026-10-25 01:06:17,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:06:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:06:17,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:06:17,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:06:17,841.841 INFO    ] time= 25/10/2026 01:06:17
[2026-10-25 01:06:17,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:06:17,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:06:17,970.970 INFO    ] No existing commands found in stream
[2026-10-25 01:06:22,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:06:22,985.985 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 01:06:27,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:06:27,392.392 INFO    ] Checking for system updates...
[2026-10-25 01:06:27,432.432 INFO    ] 200
[2026-10-25 01:06:27,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:27,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:27,491.491 INFO    ] No update needed
[2026-10-25 01:06:27,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 01:06:27,531.531 INFO    ] 200
[2026-10-25 01:06:27,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:27,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:06:27,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:27,626.626 INFO    ] No camera update needed
[2026-10-25 01:06:27,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:06:27,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:06:27,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:06:27,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:06:29,681.681 INFO    ] ================================================
[2026-10-25 01:06:29,696.696 INFO    ] Launching Daemon at Sun Oct 25 01:06:29 IST 2026
[2026-10-25 01:06:29,707.707 INFO    ] ================================================
[2026-10-25 01:06:30,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:06:30
[2026-10-25 01:06:31,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:06:31,378.378 INFO    ] Initializing speech engine...
[2026-10-25 01:06:31,389.389 INFO    ] 2026-10-25 01:06:31
[2026-10-25 01:06:31,692.692 INFO    ] 2026-10-25 01:06:31
[2026-10-25 01:06:31,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:06:32,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:06:32,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:06:32,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:06:32,261.261 INFO    ] time= 25/10/2026 01:06:32
[2026-10-25 01:06:32,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:06:32,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:06:32,421.421 INFO    ] No existing commands found in stream
[2026-10-25 01:06:37,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:06:37,455.455 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 01:06:38,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:06:38,475.475 INFO    ] Checking for system updates...
[2026-10-25 01:06:38,512.512 INFO    ] 200
[2026-10-25 01:06:38,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:38,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:06:38,569.569 INFO    ] No update needed
[2026-10-25 01:06:38,572.572 INFO    ] Checking for camera pi updates...
[2026-10-25 01:06:38,606.606 INFO    ] 200
[2026-10-25 01:06:38,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:38,660.660 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:06:38,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:06:38,721.721 INFO    ] No camera update needed
[2026-10-25 01:06:38,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:06:38,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:06:38,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:06:38,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:06:40,777.777 INFO    ] ================================================
[2026-10-25 01:06:40,792.792 INFO    ] Launching Daemon at Sun Oct 25 01:06:40 IST 2026
[2026-10-25 01:06:40,804.804 INFO    ] ================================================
[2026-10-25 01:06:41,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:06:41
[2026-10-25 01:06:42,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:06:42,477.477 INFO    ] Initializing speech engine...
[2026-10-25 01:06:42,486.486 INFO    ] 2026-10-25 01:06:42
[2026-10-25 01:06:42,793.793 INFO    ] 2026-10-25 01:06:42
[2026-10-25 01:06:42,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:06:43,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:06:43,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:06:43,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:06:43,304.304 INFO    ] time= 25/10/2026 01:06:43
[2026-10-25 01:06:43,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:06:43,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:06:43,461.461 INFO    ] No existing commands found in stream
[2026-10-25 01:06:48,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:06:48,494.494 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 01:06:51,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:06:51,194.194 INFO    ] Checking for system updates...
[2026-10-25 01:06:51,237.237 INFO    ] 200
[2026-10-25 01:06:51,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:51,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:51,298.298 INFO    ] No update needed
[2026-10-25 01:06:51,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 01:06:51,337.337 INFO    ] 200
[2026-10-25 01:06:51,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:06:51,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:06:51,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:06:51,435.435 INFO    ] No camera update needed
[2026-10-25 01:06:51,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:06:51,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:06:51,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:06:51,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:06:53,494.494 INFO    ] ================================================
[2026-10-25 01:06:53,509.509 INFO    ] Launching Daemon at Sun Oct 25 01:06:53 IST 2026
[2026-10-25 01:06:53,520.520 INFO    ] ================================================
[2026-10-25 01:06:54,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:06:54
[2026-10-25 01:06:54,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:06:54,918.918 INFO    ] Initializing speech engine...
[2026-10-25 01:06:54,933.933 INFO    ] 2026-10-25 01:06:54
[2026-10-25 01:06:55,192.192 INFO    ] 2026-10-25 01:06:55
[2026-10-25 01:06:55,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:06:55,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:06:55,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:06:55,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:06:55,671.671 INFO    ] time= 25/10/2026 01:06:55
[2026-10-25 01:06:55,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:06:55,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:06:55,869.869 INFO    ] No existing commands found in stream
[2026-10-25 01:07:00,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:07:00,898.898 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 01:07:02,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:07:02,339.339 INFO    ] Checking for system updates...
[2026-10-25 01:07:02,380.380 INFO    ] 200
[2026-10-25 01:07:02,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:02,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:07:02,460.460 INFO    ] No update needed
[2026-10-25 01:07:02,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 01:07:02,502.502 INFO    ] 200
[2026-10-25 01:07:02,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:02,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:07:02,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:07:02,593.593 INFO    ] No camera update needed
[2026-10-25 01:07:02,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:07:02,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:07:02,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:07:02,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:07:04,652.652 INFO    ] ================================================
[2026-10-25 01:07:04,667.667 INFO    ] Launching Daemon at Sun Oct 25 01:07:04 IST 2026
[2026-10-25 01:07:04,678.678 INFO    ] ================================================
[2026-10-25 01:07:05,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:07:05
[2026-10-25 01:07:05,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:07:06,089.089 INFO    ] Initializing speech engine...
[2026-10-25 01:07:06,098.098 INFO    ] 2026-10-25 01:07:06
[2026-10-25 01:07:06,397.397 INFO    ] 2026-10-25 01:07:06
[2026-10-25 01:07:06,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:07:06,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:07:06,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:07:06,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:07:06,798.798 INFO    ] time= 25/10/2026 01:07:06
[2026-10-25 01:07:06,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:07:06,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:07:06,915.915 INFO    ] No existing commands found in stream
[2026-10-25 01:07:11,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:07:11,930.930 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 01:07:14,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:07:14,631.631 INFO    ] Checking for system updates...
[2026-10-25 01:07:14,672.672 INFO    ] 200
[2026-10-25 01:07:14,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:14,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:14,737.737 INFO    ] No update needed
[2026-10-25 01:07:14,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 01:07:14,775.775 INFO    ] 200
[2026-10-25 01:07:14,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:14,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:07:14,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:14,899.899 INFO    ] No camera update needed
[2026-10-25 01:07:14,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:07:14,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:07:14,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:07:14,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:07:16,957.957 INFO    ] ================================================
[2026-10-25 01:07:16,972.972 INFO    ] Launching Daemon at Sun Oct 25 01:07:16 IST 2026
[2026-10-25 01:07:16,982.982 INFO    ] ================================================
[2026-10-25 01:07:17,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:07:17
[2026-10-25 01:07:18,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:07:18,404.404 INFO    ] Initializing speech engine...
[2026-10-25 01:07:18,413.413 INFO    ] 2026-10-25 01:07:18
[2026-10-25 01:07:18,709.709 INFO    ] 2026-10-25 01:07:18
[2026-10-25 01:07:18,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:07:18,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:07:18,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:07:19,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:07:19,117.117 INFO    ] time= 25/10/2026 01:07:19
[2026-10-25 01:07:19,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:07:19,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:07:19,282.282 INFO    ] No existing commands found in stream
[2026-10-25 01:07:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:07:24,310.310 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 01:07:28,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:07:28,735.735 INFO    ] Checking for system updates...
[2026-10-25 01:07:28,771.771 INFO    ] 200
[2026-10-25 01:07:28,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:28,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:28,830.830 INFO    ] No update needed
[2026-10-25 01:07:28,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 01:07:28,866.866 INFO    ] 200
[2026-10-25 01:07:28,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:28,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:07:28,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:28,971.971 INFO    ] No camera update needed
[2026-10-25 01:07:28,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:07:28,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:07:28,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:07:28,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:07:31,028.028 INFO    ] ================================================
[2026-10-25 01:07:31,043.043 INFO    ] Launching Daemon at Sun Oct 25 01:07:31 IST 2026
[2026-10-25 01:07:31,054.054 INFO    ] ================================================
[2026-10-25 01:07:31,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:07:31
[2026-10-25 01:07:32,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:07:32,532.532 INFO    ] Initializing speech engine...
[2026-10-25 01:07:32,558.558 INFO    ] 2026-10-25 01:07:32
[2026-10-25 01:07:32,849.849 INFO    ] 2026-10-25 01:07:32
[2026-10-25 01:07:32,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:07:33,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:07:33,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:07:33,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:07:33,297.297 INFO    ] time= 25/10/2026 01:07:33
[2026-10-25 01:07:33,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:07:33,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:07:33,478.478 INFO    ] No existing commands found in stream
[2026-10-25 01:07:38,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:07:38,517.517 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 01:07:40,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:07:40,466.466 INFO    ] Checking for system updates...
[2026-10-25 01:07:40,502.502 INFO    ] 200
[2026-10-25 01:07:40,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:40,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:40,560.560 INFO    ] No update needed
[2026-10-25 01:07:40,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 01:07:40,603.603 INFO    ] 200
[2026-10-25 01:07:40,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:40,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:07:40,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:40,702.702 INFO    ] No camera update needed
[2026-10-25 01:07:40,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:07:40,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:07:40,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:07:40,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:07:42,757.757 INFO    ] ================================================
[2026-10-25 01:07:42,772.772 INFO    ] Launching Daemon at Sun Oct 25 01:07:42 IST 2026
[2026-10-25 01:07:42,783.783 INFO    ] ================================================
[2026-10-25 01:07:43,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:07:43
[2026-10-25 01:07:44,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:07:44,453.453 INFO    ] Initializing speech engine...
[2026-10-25 01:07:44,466.466 INFO    ] 2026-10-25 01:07:44
[2026-10-25 01:07:44,778.778 INFO    ] 2026-10-25 01:07:44
[2026-10-25 01:07:44,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:07:45,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:07:45,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:07:45,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:07:45,289.289 INFO    ] time= 25/10/2026 01:07:45
[2026-10-25 01:07:45,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:07:45,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:07:45,438.438 INFO    ] No existing commands found in stream
[2026-10-25 01:07:50,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:07:50,458.458 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 01:07:51,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:07:51,623.623 INFO    ] Checking for system updates...
[2026-10-25 01:07:51,666.666 INFO    ] 200
[2026-10-25 01:07:51,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:51,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:51,726.726 INFO    ] No update needed
[2026-10-25 01:07:51,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 01:07:51,769.769 INFO    ] 200
[2026-10-25 01:07:51,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:07:51,822.822 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:07:51,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:07:51,880.880 INFO    ] No camera update needed
[2026-10-25 01:07:51,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:07:51,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:07:51,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:07:51,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:07:53,941.941 INFO    ] ================================================
[2026-10-25 01:07:53,957.957 INFO    ] Launching Daemon at Sun Oct 25 01:07:53 IST 2026
[2026-10-25 01:07:53,968.968 INFO    ] ================================================
[2026-10-25 01:07:54,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:07:54
[2026-10-25 01:07:55,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:07:55,388.388 INFO    ] Initializing speech engine...
[2026-10-25 01:07:55,397.397 INFO    ] 2026-10-25 01:07:55
[2026-10-25 01:07:55,648.648 INFO    ] 2026-10-25 01:07:55
[2026-10-25 01:07:55,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:07:55,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:07:55,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:07:56,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:07:56,129.129 INFO    ] time= 25/10/2026 01:07:56
[2026-10-25 01:07:56,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:07:56,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:07:56,315.315 INFO    ] No existing commands found in stream
[2026-10-25 01:08:01,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:08:01,340.340 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 01:08:02,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:08:02,852.852 INFO    ] Checking for system updates...
[2026-10-25 01:08:02,903.903 INFO    ] 200
[2026-10-25 01:08:02,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:02,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:03,001.001 INFO    ] No update needed
[2026-10-25 01:08:03,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 01:08:03,051.051 INFO    ] 200
[2026-10-25 01:08:03,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:03,101.101 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:08:03,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:03,155.155 INFO    ] No camera update needed
[2026-10-25 01:08:03,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:08:03,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:08:03,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:08:03,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:08:05,210.210 INFO    ] ================================================
[2026-10-25 01:08:05,226.226 INFO    ] Launching Daemon at Sun Oct 25 01:08:05 IST 2026
[2026-10-25 01:08:05,237.237 INFO    ] ================================================
[2026-10-25 01:08:05,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:08:05
[2026-10-25 01:08:06,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:08:06,662.662 INFO    ] Initializing speech engine...
[2026-10-25 01:08:06,670.670 INFO    ] 2026-10-25 01:08:06
[2026-10-25 01:08:06,956.956 INFO    ] 2026-10-25 01:08:06
[2026-10-25 01:08:06,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:08:07,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:08:07,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:08:07,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:08:07,440.440 INFO    ] time= 25/10/2026 01:08:07
[2026-10-25 01:08:07,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:08:07,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:08:07,625.625 INFO    ] No existing commands found in stream
[2026-10-25 01:08:12,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:08:12,647.647 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 01:08:14,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:08:14,366.366 INFO    ] Checking for system updates...
[2026-10-25 01:08:14,402.402 INFO    ] 200
[2026-10-25 01:08:14,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:14,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:08:14,469.469 INFO    ] No update needed
[2026-10-25 01:08:14,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 01:08:14,507.507 INFO    ] 200
[2026-10-25 01:08:14,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:14,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:08:14,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:08:14,719.719 INFO    ] No camera update needed
[2026-10-25 01:08:14,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:08:14,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:08:14,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:08:14,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:08:16,774.774 INFO    ] ================================================
[2026-10-25 01:08:16,789.789 INFO    ] Launching Daemon at Sun Oct 25 01:08:16 IST 2026
[2026-10-25 01:08:16,799.799 INFO    ] ================================================
[2026-10-25 01:08:17,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:08:17
[2026-10-25 01:08:18,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:08:18,371.371 INFO    ] Initializing speech engine...
[2026-10-25 01:08:18,378.378 INFO    ] 2026-10-25 01:08:18
[2026-10-25 01:08:18,644.644 INFO    ] 2026-10-25 01:08:18
[2026-10-25 01:08:18,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:08:18,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:08:18,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:08:19,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:08:19,188.188 INFO    ] time= 25/10/2026 01:08:19
[2026-10-25 01:08:19,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:08:19,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:08:19,334.334 INFO    ] No existing commands found in stream
[2026-10-25 01:08:24,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:08:24,358.358 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 01:08:26,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:08:26,768.768 INFO    ] Checking for system updates...
[2026-10-25 01:08:26,804.804 INFO    ] 200
[2026-10-25 01:08:26,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:26,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:26,863.863 INFO    ] No update needed
[2026-10-25 01:08:26,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 01:08:26,899.899 INFO    ] 200
[2026-10-25 01:08:26,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:26,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:08:26,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:26,993.993 INFO    ] No camera update needed
[2026-10-25 01:08:26,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:08:26,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:08:27,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:08:27,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:08:29,049.049 INFO    ] ================================================
[2026-10-25 01:08:29,064.064 INFO    ] Launching Daemon at Sun Oct 25 01:08:29 IST 2026
[2026-10-25 01:08:29,078.078 INFO    ] ================================================
[2026-10-25 01:08:29,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:08:29
[2026-10-25 01:08:30,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:08:30,656.656 INFO    ] Initializing speech engine...
[2026-10-25 01:08:30,669.669 INFO    ] 2026-10-25 01:08:30
[2026-10-25 01:08:30,945.945 INFO    ] 2026-10-25 01:08:30
[2026-10-25 01:08:30,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:08:31,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:08:31,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:08:31,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:08:31,433.433 INFO    ] time= 25/10/2026 01:08:31
[2026-10-25 01:08:31,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:08:31,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:08:31,569.569 INFO    ] No existing commands found in stream
[2026-10-25 01:08:36,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:08:36,584.584 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 01:08:39,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:08:39,895.895 INFO    ] Checking for system updates...
[2026-10-25 01:08:39,932.932 INFO    ] 200
[2026-10-25 01:08:39,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:39,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:39,997.997 INFO    ] No update needed
[2026-10-25 01:08:40,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 01:08:40,039.039 INFO    ] 200
[2026-10-25 01:08:40,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:40,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:08:40,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:40,141.141 INFO    ] No camera update needed
[2026-10-25 01:08:40,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:08:40,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:08:40,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:08:40,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:08:42,199.199 INFO    ] ================================================
[2026-10-25 01:08:42,214.214 INFO    ] Launching Daemon at Sun Oct 25 01:08:42 IST 2026
[2026-10-25 01:08:42,225.225 INFO    ] ================================================
[2026-10-25 01:08:42,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:08:42
[2026-10-25 01:08:43,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:08:43,811.811 INFO    ] Initializing speech engine...
[2026-10-25 01:08:43,823.823 INFO    ] 2026-10-25 01:08:43
[2026-10-25 01:08:44,088.088 INFO    ] 2026-10-25 01:08:44
[2026-10-25 01:08:44,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:08:44,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:08:44,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:08:44,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:08:44,550.550 INFO    ] time= 25/10/2026 01:08:44
[2026-10-25 01:08:44,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:08:44,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:08:44,755.755 INFO    ] No existing commands found in stream
[2026-10-25 01:08:49,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:08:49,781.781 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 01:08:52,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:08:52,450.450 INFO    ] Checking for system updates...
[2026-10-25 01:08:52,486.486 INFO    ] 200
[2026-10-25 01:08:52,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:52,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:52,551.551 INFO    ] No update needed
[2026-10-25 01:08:52,554.554 INFO    ] Checking for camera pi updates...
[2026-10-25 01:08:52,592.592 INFO    ] 200
[2026-10-25 01:08:52,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:08:52,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:08:52,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:08:52,694.694 INFO    ] No camera update needed
[2026-10-25 01:08:52,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:08:52,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:08:52,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:08:52,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:08:54,753.753 INFO    ] ================================================
[2026-10-25 01:08:54,768.768 INFO    ] Launching Daemon at Sun Oct 25 01:08:54 IST 2026
[2026-10-25 01:08:54,779.779 INFO    ] ================================================
[2026-10-25 01:08:55,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:08:55
[2026-10-25 01:08:56,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:08:56,387.387 INFO    ] Initializing speech engine...
[2026-10-25 01:08:56,400.400 INFO    ] 2026-10-25 01:08:56
[2026-10-25 01:08:56,675.675 INFO    ] 2026-10-25 01:08:56
[2026-10-25 01:08:56,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:08:56,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:08:56,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:08:57,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:08:57,095.095 INFO    ] time= 25/10/2026 01:08:57
[2026-10-25 01:08:57,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:08:57,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:08:57,292.292 INFO    ] No existing commands found in stream
[2026-10-25 01:09:02,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:02,316.316 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 01:09:05,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:09:05,837.837 INFO    ] Checking for system updates...
[2026-10-25 01:09:05,875.875 INFO    ] 200
[2026-10-25 01:09:05,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:05,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:09:05,933.933 INFO    ] No update needed
[2026-10-25 01:09:05,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 01:09:05,977.977 INFO    ] 200
[2026-10-25 01:09:05,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:06,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:09:06,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:09:06,072.072 INFO    ] No camera update needed
[2026-10-25 01:09:06,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:09:06,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:09:06,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:09:06,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:09:08,127.127 INFO    ] ================================================
[2026-10-25 01:09:08,142.142 INFO    ] Launching Daemon at Sun Oct 25 01:09:08 IST 2026
[2026-10-25 01:09:08,152.152 INFO    ] ================================================
[2026-10-25 01:09:08,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:09:08
[2026-10-25 01:09:09,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:09:09,619.619 INFO    ] Initializing speech engine...
[2026-10-25 01:09:09,628.628 INFO    ] 2026-10-25 01:09:09
[2026-10-25 01:09:09,895.895 INFO    ] 2026-10-25 01:09:09
[2026-10-25 01:09:09,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:09:10,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:09:10,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:09:10,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:09:10,288.288 INFO    ] time= 25/10/2026 01:09:10
[2026-10-25 01:09:10,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:09:10,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:09:10,394.394 INFO    ] No existing commands found in stream
[2026-10-25 01:09:15,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:15,410.410 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 01:09:17,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:09:17,191.191 INFO    ] Checking for system updates...
[2026-10-25 01:09:17,227.227 INFO    ] 200
[2026-10-25 01:09:17,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:17,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:09:17,285.285 INFO    ] No update needed
[2026-10-25 01:09:17,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 01:09:17,324.324 INFO    ] 200
[2026-10-25 01:09:17,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:17,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:09:17,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:09:17,419.419 INFO    ] No camera update needed
[2026-10-25 01:09:17,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:09:17,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:09:17,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:09:17,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:09:19,473.473 INFO    ] ================================================
[2026-10-25 01:09:19,489.489 INFO    ] Launching Daemon at Sun Oct 25 01:09:19 IST 2026
[2026-10-25 01:09:19,500.500 INFO    ] ================================================
[2026-10-25 01:09:20,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:09:20
[2026-10-25 01:09:20,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:09:20,923.923 INFO    ] Initializing speech engine...
[2026-10-25 01:09:20,944.944 INFO    ] 2026-10-25 01:09:20
[2026-10-25 01:09:21,207.207 INFO    ] 2026-10-25 01:09:21
[2026-10-25 01:09:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:09:21,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:09:21,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:09:21,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:09:21,575.575 INFO    ] time= 25/10/2026 01:09:21
[2026-10-25 01:09:21,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:09:21,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:09:21,697.697 INFO    ] No existing commands found in stream
[2026-10-25 01:09:26,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:26,712.712 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 01:09:27,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:09:27,474.474 INFO    ] Checking for system updates...
[2026-10-25 01:09:27,511.511 INFO    ] 200
[2026-10-25 01:09:27,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:27,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:27,568.568 INFO    ] No update needed
[2026-10-25 01:09:27,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 01:09:27,603.603 INFO    ] 200
[2026-10-25 01:09:27,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:27,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:09:27,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:27,703.703 INFO    ] No camera update needed
[2026-10-25 01:09:27,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:09:27,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:09:27,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:09:27,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:09:29,757.757 INFO    ] ================================================
[2026-10-25 01:09:29,772.772 INFO    ] Launching Daemon at Sun Oct 25 01:09:29 IST 2026
[2026-10-25 01:09:29,782.782 INFO    ] ================================================
[2026-10-25 01:09:30,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:09:30
[2026-10-25 01:09:31,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:09:31,348.348 INFO    ] Initializing speech engine...
[2026-10-25 01:09:31,361.361 INFO    ] 2026-10-25 01:09:31
[2026-10-25 01:09:31,641.641 INFO    ] 2026-10-25 01:09:31
[2026-10-25 01:09:31,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:09:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:09:31,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:09:32,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:09:32,125.125 INFO    ] time= 25/10/2026 01:09:32
[2026-10-25 01:09:32,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:09:32,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:09:32,311.311 INFO    ] No existing commands found in stream
[2026-10-25 01:09:37,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:37,343.343 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 01:09:39,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:09:39,413.413 INFO    ] Checking for system updates...
[2026-10-25 01:09:39,453.453 INFO    ] 200
[2026-10-25 01:09:39,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:39,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:39,518.518 INFO    ] No update needed
[2026-10-25 01:09:39,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 01:09:39,557.557 INFO    ] 200
[2026-10-25 01:09:39,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:39,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:09:39,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:39,672.672 INFO    ] No camera update needed
[2026-10-25 01:09:39,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:09:39,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:09:39,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:09:39,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:09:41,728.728 INFO    ] ================================================
[2026-10-25 01:09:41,743.743 INFO    ] Launching Daemon at Sun Oct 25 01:09:41 IST 2026
[2026-10-25 01:09:41,754.754 INFO    ] ================================================
[2026-10-25 01:09:42,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:09:42
[2026-10-25 01:09:42,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:09:43,149.149 INFO    ] Initializing speech engine...
[2026-10-25 01:09:43,169.169 INFO    ] 2026-10-25 01:09:43
[2026-10-25 01:09:43,424.424 INFO    ] 2026-10-25 01:09:43
[2026-10-25 01:09:43,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:09:43,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:09:43,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:09:43,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:09:43,917.917 INFO    ] time= 25/10/2026 01:09:43
[2026-10-25 01:09:43,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:09:43,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:09:44,110.110 INFO    ] No existing commands found in stream
[2026-10-25 01:09:49,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:49,144.144 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 01:09:50,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:09:50,220.220 INFO    ] Checking for system updates...
[2026-10-25 01:09:50,255.255 INFO    ] 200
[2026-10-25 01:09:50,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:50,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:50,312.312 INFO    ] No update needed
[2026-10-25 01:09:50,314.314 INFO    ] Checking for camera pi updates...
[2026-10-25 01:09:50,347.347 INFO    ] 200
[2026-10-25 01:09:50,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:09:50,396.396 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:09:50,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:09:50,454.454 INFO    ] No camera update needed
[2026-10-25 01:09:50,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:09:50,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:09:50,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:09:50,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:09:52,510.510 INFO    ] ================================================
[2026-10-25 01:09:52,525.525 INFO    ] Launching Daemon at Sun Oct 25 01:09:52 IST 2026
[2026-10-25 01:09:52,536.536 INFO    ] ================================================
[2026-10-25 01:09:53,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:09:53
[2026-10-25 01:09:53,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:09:53,970.970 INFO    ] Initializing speech engine...
[2026-10-25 01:09:53,979.979 INFO    ] 2026-10-25 01:09:53
[2026-10-25 01:09:54,240.240 INFO    ] 2026-10-25 01:09:54
[2026-10-25 01:09:54,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:09:54,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:09:54,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:09:54,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:09:54,750.750 INFO    ] time= 25/10/2026 01:09:54
[2026-10-25 01:09:54,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:09:54,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:09:54,919.919 INFO    ] No existing commands found in stream
[2026-10-25 01:09:59,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:09:59,946.946 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 01:10:07,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:10:07,729.729 INFO    ] Checking for system updates...
[2026-10-25 01:10:07,766.766 INFO    ] 200
[2026-10-25 01:10:07,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:07,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:10:07,824.824 INFO    ] No update needed
[2026-10-25 01:10:07,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 01:10:07,860.860 INFO    ] 200
[2026-10-25 01:10:07,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:07,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:10:07,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:10:07,958.958 INFO    ] No camera update needed
[2026-10-25 01:10:07,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:10:07,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:10:07,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:10:07,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:10:10,014.014 INFO    ] ================================================
[2026-10-25 01:10:10,030.030 INFO    ] Launching Daemon at Sun Oct 25 01:10:10 IST 2026
[2026-10-25 01:10:10,041.041 INFO    ] ================================================
[2026-10-25 01:10:10,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:10:10
[2026-10-25 01:10:11,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:10:11,475.475 INFO    ] Initializing speech engine...
[2026-10-25 01:10:11,484.484 INFO    ] 2026-10-25 01:10:11
[2026-10-25 01:10:11,734.734 INFO    ] 2026-10-25 01:10:11
[2026-10-25 01:10:11,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:10:11,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:10:12,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:10:12,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:10:12,205.205 INFO    ] time= 25/10/2026 01:10:12
[2026-10-25 01:10:12,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:10:12,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:10:12,432.432 INFO    ] No existing commands found in stream
[2026-10-25 01:10:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:10:17,465.465 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 01:10:19,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:10:19,545.545 INFO    ] Checking for system updates...
[2026-10-25 01:10:19,581.581 INFO    ] 200
[2026-10-25 01:10:19,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:19,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:19,640.640 INFO    ] No update needed
[2026-10-25 01:10:19,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 01:10:19,676.676 INFO    ] 200
[2026-10-25 01:10:19,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:19,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:10:19,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:19,871.871 INFO    ] No camera update needed
[2026-10-25 01:10:19,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:10:19,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:10:19,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:10:19,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:10:21,926.926 INFO    ] ================================================
[2026-10-25 01:10:21,941.941 INFO    ] Launching Daemon at Sun Oct 25 01:10:21 IST 2026
[2026-10-25 01:10:21,952.952 INFO    ] ================================================
[2026-10-25 01:10:22,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:10:22
[2026-10-25 01:10:23,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:10:23,349.349 INFO    ] Initializing speech engine...
[2026-10-25 01:10:23,355.355 INFO    ] 2026-10-25 01:10:23
[2026-10-25 01:10:23,645.645 INFO    ] 2026-10-25 01:10:23
[2026-10-25 01:10:23,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:10:23,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:10:23,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:10:24,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:10:24,053.053 INFO    ] time= 25/10/2026 01:10:24
[2026-10-25 01:10:24,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:10:24,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:10:24,140.140 INFO    ] No existing commands found in stream
[2026-10-25 01:10:29,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:10:29,156.156 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 01:10:32,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:10:32,643.643 INFO    ] Checking for system updates...
[2026-10-25 01:10:32,686.686 INFO    ] 200
[2026-10-25 01:10:32,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:32,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:32,748.748 INFO    ] No update needed
[2026-10-25 01:10:32,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 01:10:32,791.791 INFO    ] 200
[2026-10-25 01:10:32,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:32,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:10:32,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:32,876.876 INFO    ] No camera update needed
[2026-10-25 01:10:32,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:10:32,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:10:32,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:10:32,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:10:34,935.935 INFO    ] ================================================
[2026-10-25 01:10:34,950.950 INFO    ] Launching Daemon at Sun Oct 25 01:10:34 IST 2026
[2026-10-25 01:10:34,960.960 INFO    ] ================================================
[2026-10-25 01:10:35,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:10:35
[2026-10-25 01:10:36,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:10:36,381.381 INFO    ] Initializing speech engine...
[2026-10-25 01:10:36,390.390 INFO    ] 2026-10-25 01:10:36
[2026-10-25 01:10:36,635.635 INFO    ] 2026-10-25 01:10:36
[2026-10-25 01:10:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:10:36,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:10:36,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:10:37,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:10:37,108.108 INFO    ] time= 25/10/2026 01:10:37
[2026-10-25 01:10:37,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:10:37,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:10:37,274.274 INFO    ] No existing commands found in stream
[2026-10-25 01:10:42,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:10:42,313.313 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 01:10:45,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:10:45,462.462 INFO    ] Checking for system updates...
[2026-10-25 01:10:45,498.498 INFO    ] 200
[2026-10-25 01:10:45,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:45,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:10:45,555.555 INFO    ] No update needed
[2026-10-25 01:10:45,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 01:10:45,592.592 INFO    ] 200
[2026-10-25 01:10:45,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:45,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:10:45,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:10:45,696.696 INFO    ] No camera update needed
[2026-10-25 01:10:45,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:10:45,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:10:45,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:10:45,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:10:47,753.753 INFO    ] ================================================
[2026-10-25 01:10:47,767.767 INFO    ] Launching Daemon at Sun Oct 25 01:10:47 IST 2026
[2026-10-25 01:10:47,778.778 INFO    ] ================================================
[2026-10-25 01:10:48,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:10:48
[2026-10-25 01:10:49,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:10:49,377.377 INFO    ] Initializing speech engine...
[2026-10-25 01:10:49,384.384 INFO    ] 2026-10-25 01:10:49
[2026-10-25 01:10:49,698.698 INFO    ] 2026-10-25 01:10:49
[2026-10-25 01:10:49,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:10:50,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:10:50,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:10:50,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:10:50,210.210 INFO    ] time= 25/10/2026 01:10:50
[2026-10-25 01:10:50,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:10:50,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:10:50,367.367 INFO    ] No existing commands found in stream
[2026-10-25 01:10:55,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:10:55,399.399 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 01:10:57,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:10:57,705.705 INFO    ] Checking for system updates...
[2026-10-25 01:10:57,742.742 INFO    ] 200
[2026-10-25 01:10:57,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:57,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:57,799.799 INFO    ] No update needed
[2026-10-25 01:10:57,801.801 INFO    ] Checking for camera pi updates...
[2026-10-25 01:10:57,839.839 INFO    ] 200
[2026-10-25 01:10:57,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:10:57,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:10:57,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:10:57,929.929 INFO    ] No camera update needed
[2026-10-25 01:10:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:10:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:10:57,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:10:57,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:10:59,984.984 INFO    ] ================================================
[2026-10-25 01:11:00,999.999 INFO    ] Launching Daemon at Sun Oct 25 01:10:59 IST 2026
[2026-10-25 01:11:00,011.011 INFO    ] ================================================
[2026-10-25 01:11:00,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:11:00
[2026-10-25 01:11:01,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:11:01,413.413 INFO    ] Initializing speech engine...
[2026-10-25 01:11:01,427.427 INFO    ] 2026-10-25 01:11:01
[2026-10-25 01:11:01,713.713 INFO    ] 2026-10-25 01:11:01
[2026-10-25 01:11:01,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:11:01,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:11:01,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:11:02,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:11:02,121.121 INFO    ] time= 25/10/2026 01:11:02
[2026-10-25 01:11:02,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:11:02,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:11:02,192.192 INFO    ] No existing commands found in stream
[2026-10-25 01:11:07,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:11:07,242.242 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 01:11:10,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:11:10,246.246 INFO    ] Checking for system updates...
[2026-10-25 01:11:10,288.288 INFO    ] 200
[2026-10-25 01:11:10,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:10,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:11:10,352.352 INFO    ] No update needed
[2026-10-25 01:11:10,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 01:11:10,393.393 INFO    ] 200
[2026-10-25 01:11:10,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:10,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:11:10,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:11:10,492.492 INFO    ] No camera update needed
[2026-10-25 01:11:10,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:11:10,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:11:10,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:11:10,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:11:12,549.549 INFO    ] ================================================
[2026-10-25 01:11:12,564.564 INFO    ] Launching Daemon at Sun Oct 25 01:11:12 IST 2026
[2026-10-25 01:11:12,576.576 INFO    ] ================================================
[2026-10-25 01:11:13,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:11:13
[2026-10-25 01:11:13,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:11:14,028.028 INFO    ] Initializing speech engine...
[2026-10-25 01:11:14,035.035 INFO    ] 2026-10-25 01:11:14
[2026-10-25 01:11:14,293.293 INFO    ] 2026-10-25 01:11:14
[2026-10-25 01:11:14,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:11:14,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:11:14,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:11:14,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:11:14,774.774 INFO    ] time= 25/10/2026 01:11:14
[2026-10-25 01:11:14,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:11:14,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:11:14,961.961 INFO    ] No existing commands found in stream
[2026-10-25 01:11:19,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:11:19,995.995 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 01:11:21,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:11:21,832.832 INFO    ] Checking for system updates...
[2026-10-25 01:11:21,868.868 INFO    ] 200
[2026-10-25 01:11:21,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:21,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:11:21,940.940 INFO    ] No update needed
[2026-10-25 01:11:21,943.943 INFO    ] Checking for camera pi updates...
[2026-10-25 01:11:21,977.977 INFO    ] 200
[2026-10-25 01:11:21,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:22,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:11:22,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:11:22,072.072 INFO    ] No camera update needed
[2026-10-25 01:11:22,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:11:22,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:11:22,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:11:22,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:11:24,129.129 INFO    ] ================================================
[2026-10-25 01:11:24,144.144 INFO    ] Launching Daemon at Sun Oct 25 01:11:24 IST 2026
[2026-10-25 01:11:24,155.155 INFO    ] ================================================
[2026-10-25 01:11:24,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:11:24
[2026-10-25 01:11:25,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:11:25,549.549 INFO    ] Initializing speech engine...
[2026-10-25 01:11:25,558.558 INFO    ] 2026-10-25 01:11:25
[2026-10-25 01:11:25,830.830 INFO    ] 2026-10-25 01:11:25
[2026-10-25 01:11:25,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:11:26,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:11:26,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:11:26,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:11:26,325.325 INFO    ] time= 25/10/2026 01:11:26
[2026-10-25 01:11:26,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:11:26,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:11:26,466.466 INFO    ] No existing commands found in stream
[2026-10-25 01:11:31,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:11:31,488.488 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 01:11:32,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:11:32,596.596 INFO    ] Checking for system updates...
[2026-10-25 01:11:32,637.637 INFO    ] 200
[2026-10-25 01:11:32,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:32,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:32,712.712 INFO    ] No update needed
[2026-10-25 01:11:32,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 01:11:32,751.751 INFO    ] 200
[2026-10-25 01:11:32,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:32,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:11:32,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:32,839.839 INFO    ] No camera update needed
[2026-10-25 01:11:32,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:11:32,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:11:32,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:11:32,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:11:34,898.898 INFO    ] ================================================
[2026-10-25 01:11:34,913.913 INFO    ] Launching Daemon at Sun Oct 25 01:11:34 IST 2026
[2026-10-25 01:11:34,924.924 INFO    ] ================================================
[2026-10-25 01:11:35,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:11:35
[2026-10-25 01:11:36,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:11:36,333.333 INFO    ] Initializing speech engine...
[2026-10-25 01:11:36,342.342 INFO    ] 2026-10-25 01:11:36
[2026-10-25 01:11:36,635.635 INFO    ] 2026-10-25 01:11:36
[2026-10-25 01:11:36,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:11:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:11:36,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:11:37,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:11:37,053.053 INFO    ] time= 25/10/2026 01:11:37
[2026-10-25 01:11:37,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:11:37,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:11:37,137.137 INFO    ] No existing commands found in stream
[2026-10-25 01:11:42,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:11:42,153.153 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 01:11:43,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:11:43,440.440 INFO    ] Checking for system updates...
[2026-10-25 01:11:43,480.480 INFO    ] 200
[2026-10-25 01:11:43,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:43,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:43,538.538 INFO    ] No update needed
[2026-10-25 01:11:43,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 01:11:43,578.578 INFO    ] 200
[2026-10-25 01:11:43,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:43,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:11:43,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:43,679.679 INFO    ] No camera update needed
[2026-10-25 01:11:43,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:11:43,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:11:43,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:11:43,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:11:45,734.734 INFO    ] ================================================
[2026-10-25 01:11:45,749.749 INFO    ] Launching Daemon at Sun Oct 25 01:11:45 IST 2026
[2026-10-25 01:11:45,759.759 INFO    ] ================================================
[2026-10-25 01:11:46,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:11:46
[2026-10-25 01:11:46,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:11:47,219.219 INFO    ] Initializing speech engine...
[2026-10-25 01:11:47,225.225 INFO    ] 2026-10-25 01:11:47
[2026-10-25 01:11:47,473.473 INFO    ] 2026-10-25 01:11:47
[2026-10-25 01:11:47,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:11:47,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:11:47,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:11:47,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:11:47,975.975 INFO    ] time= 25/10/2026 01:11:47
[2026-10-25 01:11:48,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:11:48,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:11:48,168.168 INFO    ] No existing commands found in stream
[2026-10-25 01:11:53,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:11:53,196.196 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 01:11:57,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:11:57,387.387 INFO    ] Checking for system updates...
[2026-10-25 01:11:57,423.423 INFO    ] 200
[2026-10-25 01:11:57,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:57,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:57,480.480 INFO    ] No update needed
[2026-10-25 01:11:57,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 01:11:57,520.520 INFO    ] 200
[2026-10-25 01:11:57,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:11:57,568.568 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:11:57,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:11:57,638.638 INFO    ] No camera update needed
[2026-10-25 01:11:57,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:11:57,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:11:57,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:11:57,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:11:59,694.694 INFO    ] ================================================
[2026-10-25 01:11:59,709.709 INFO    ] Launching Daemon at Sun Oct 25 01:11:59 IST 2026
[2026-10-25 01:11:59,719.719 INFO    ] ================================================
[2026-10-25 01:12:00,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:12:00
[2026-10-25 01:12:00,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:12:01,271.271 INFO    ] Initializing speech engine...
[2026-10-25 01:12:01,284.284 INFO    ] 2026-10-25 01:12:01
[2026-10-25 01:12:01,600.600 INFO    ] 2026-10-25 01:12:01
[2026-10-25 01:12:01,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:12:01,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:12:01,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:12:02,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:12:02,085.085 INFO    ] time= 25/10/2026 01:12:02
[2026-10-25 01:12:02,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:12:02,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:12:02,168.168 INFO    ] No existing commands found in stream
[2026-10-25 01:12:07,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:12:07,184.184 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 01:12:11,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:12:11,464.464 INFO    ] Checking for system updates...
[2026-10-25 01:12:11,501.501 INFO    ] 200
[2026-10-25 01:12:11,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:11,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:12:11,560.560 INFO    ] No update needed
[2026-10-25 01:12:11,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 01:12:11,598.598 INFO    ] 200
[2026-10-25 01:12:11,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:11,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:12:11,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:12:11,696.696 INFO    ] No camera update needed
[2026-10-25 01:12:11,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:12:11,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:12:11,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:12:11,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:12:13,754.754 INFO    ] ================================================
[2026-10-25 01:12:13,769.769 INFO    ] Launching Daemon at Sun Oct 25 01:12:13 IST 2026
[2026-10-25 01:12:13,779.779 INFO    ] ================================================
[2026-10-25 01:12:14,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:12:14
[2026-10-25 01:12:15,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:12:15,341.341 INFO    ] Initializing speech engine...
[2026-10-25 01:12:15,353.353 INFO    ] 2026-10-25 01:12:15
[2026-10-25 01:12:15,619.619 INFO    ] 2026-10-25 01:12:15
[2026-10-25 01:12:15,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:12:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:12:15,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:12:16,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:12:16,124.124 INFO    ] time= 25/10/2026 01:12:16
[2026-10-25 01:12:16,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:12:16,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:12:16,309.309 INFO    ] No existing commands found in stream
[2026-10-25 01:12:21,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:12:21,343.343 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 01:12:24,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:12:24,736.736 INFO    ] Checking for system updates...
[2026-10-25 01:12:24,773.773 INFO    ] 200
[2026-10-25 01:12:24,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:24,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:12:24,837.837 INFO    ] No update needed
[2026-10-25 01:12:24,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 01:12:24,877.877 INFO    ] 200
[2026-10-25 01:12:24,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:24,920.920 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:12:25,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:12:25,057.057 INFO    ] No camera update needed
[2026-10-25 01:12:25,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:12:25,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:12:25,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:12:25,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:12:27,114.114 INFO    ] ================================================
[2026-10-25 01:12:27,129.129 INFO    ] Launching Daemon at Sun Oct 25 01:12:27 IST 2026
[2026-10-25 01:12:27,140.140 INFO    ] ================================================
[2026-10-25 01:12:27,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:12:27
[2026-10-25 01:12:28,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:12:28,538.538 INFO    ] Initializing speech engine...
[2026-10-25 01:12:28,561.561 INFO    ] 2026-10-25 01:12:28
[2026-10-25 01:12:28,814.814 INFO    ] 2026-10-25 01:12:28
[2026-10-25 01:12:28,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:12:29,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:12:29,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:12:29,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:12:29,286.286 INFO    ] time= 25/10/2026 01:12:29
[2026-10-25 01:12:29,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:12:29,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:12:29,466.466 INFO    ] No existing commands found in stream
[2026-10-25 01:12:34,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:12:34,506.506 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 01:12:35,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:12:35,998.998 INFO    ] Checking for system updates...
[2026-10-25 01:12:36,034.034 INFO    ] 200
[2026-10-25 01:12:36,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:36,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:12:36,102.102 INFO    ] No update needed
[2026-10-25 01:12:36,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 01:12:36,142.142 INFO    ] 200
[2026-10-25 01:12:36,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:36,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:12:36,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:12:36,245.245 INFO    ] No camera update needed
[2026-10-25 01:12:36,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:12:36,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:12:36,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:12:36,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:12:38,299.299 INFO    ] ================================================
[2026-10-25 01:12:38,314.314 INFO    ] Launching Daemon at Sun Oct 25 01:12:38 IST 2026
[2026-10-25 01:12:38,324.324 INFO    ] ================================================
[2026-10-25 01:12:38,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:12:38
[2026-10-25 01:12:39,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:12:39,757.757 INFO    ] Initializing speech engine...
[2026-10-25 01:12:39,772.772 INFO    ] 2026-10-25 01:12:39
[2026-10-25 01:12:40,056.056 INFO    ] 2026-10-25 01:12:40
[2026-10-25 01:12:40,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:12:40,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:12:40,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:12:40,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:12:40,451.451 INFO    ] time= 25/10/2026 01:12:40
[2026-10-25 01:12:40,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:12:40,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:12:40,562.562 INFO    ] No existing commands found in stream
[2026-10-25 01:12:45,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:12:45,575.575 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 01:12:49,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:12:49,926.926 INFO    ] Checking for system updates...
[2026-10-25 01:12:49,962.962 INFO    ] 200
[2026-10-25 01:12:49,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:50,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:12:50,020.020 INFO    ] No update needed
[2026-10-25 01:12:50,022.022 INFO    ] Checking for camera pi updates...
[2026-10-25 01:12:50,056.056 INFO    ] 200
[2026-10-25 01:12:50,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:12:50,100.100 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:12:50,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:12:50,148.148 INFO    ] No camera update needed
[2026-10-25 01:12:50,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:12:50,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:12:50,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:12:50,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:12:52,205.205 INFO    ] ================================================
[2026-10-25 01:12:52,220.220 INFO    ] Launching Daemon at Sun Oct 25 01:12:52 IST 2026
[2026-10-25 01:12:52,231.231 INFO    ] ================================================
[2026-10-25 01:12:52,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:12:52
[2026-10-25 01:12:53,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:12:53,634.634 INFO    ] Initializing speech engine...
[2026-10-25 01:12:53,648.648 INFO    ] 2026-10-25 01:12:53
[2026-10-25 01:12:53,915.915 INFO    ] 2026-10-25 01:12:53
[2026-10-25 01:12:53,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:12:54,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:12:54,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:12:54,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:12:54,292.292 INFO    ] time= 25/10/2026 01:12:54
[2026-10-25 01:12:54,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:12:54,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:12:54,468.468 INFO    ] No existing commands found in stream
[2026-10-25 01:12:59,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:12:59,496.496 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 01:13:00,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:13:00,631.631 INFO    ] Checking for system updates...
[2026-10-25 01:13:00,673.673 INFO    ] 200
[2026-10-25 01:13:00,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:00,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:00,730.730 INFO    ] No update needed
[2026-10-25 01:13:00,733.733 INFO    ] Checking for camera pi updates...
[2026-10-25 01:13:00,771.771 INFO    ] 200
[2026-10-25 01:13:00,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:00,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:13:00,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:00,873.873 INFO    ] No camera update needed
[2026-10-25 01:13:00,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:13:00,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:13:00,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:13:00,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:13:02,936.936 INFO    ] ================================================
[2026-10-25 01:13:02,952.952 INFO    ] Launching Daemon at Sun Oct 25 01:13:02 IST 2026
[2026-10-25 01:13:02,965.965 INFO    ] ================================================
[2026-10-25 01:13:03,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:13:03
[2026-10-25 01:13:04,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:13:04,408.408 INFO    ] Initializing speech engine...
[2026-10-25 01:13:04,431.431 INFO    ] 2026-10-25 01:13:04
[2026-10-25 01:13:04,689.689 INFO    ] 2026-10-25 01:13:04
[2026-10-25 01:13:04,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:13:04,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:13:04,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:13:05,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:13:05,184.184 INFO    ] time= 25/10/2026 01:13:05
[2026-10-25 01:13:05,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:13:05,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:13:05,330.330 INFO    ] No existing commands found in stream
[2026-10-25 01:13:10,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:13:10,345.345 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 01:13:13,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:13:13,031.031 INFO    ] Checking for system updates...
[2026-10-25 01:13:13,072.072 INFO    ] 200
[2026-10-25 01:13:13,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:13,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:13:13,136.136 INFO    ] No update needed
[2026-10-25 01:13:13,138.138 INFO    ] Checking for camera pi updates...
[2026-10-25 01:13:13,172.172 INFO    ] 200
[2026-10-25 01:13:13,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:13,220.220 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:13:13,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:13:13,271.271 INFO    ] No camera update needed
[2026-10-25 01:13:13,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:13:13,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:13:13,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:13:13,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:13:15,327.327 INFO    ] ================================================
[2026-10-25 01:13:15,343.343 INFO    ] Launching Daemon at Sun Oct 25 01:13:15 IST 2026
[2026-10-25 01:13:15,354.354 INFO    ] ================================================
[2026-10-25 01:13:15,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:13:15
[2026-10-25 01:13:16,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:13:16,787.787 INFO    ] Initializing speech engine...
[2026-10-25 01:13:16,809.809 INFO    ] 2026-10-25 01:13:16
[2026-10-25 01:13:17,064.064 INFO    ] 2026-10-25 01:13:17
[2026-10-25 01:13:17,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:13:17,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:13:17,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:13:17,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:13:17,555.555 INFO    ] time= 25/10/2026 01:13:17
[2026-10-25 01:13:17,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:13:17,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:13:17,745.745 INFO    ] No existing commands found in stream
[2026-10-25 01:13:22,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:13:22,778.778 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 01:13:23,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:13:23,776.776 INFO    ] Checking for system updates...
[2026-10-25 01:13:23,811.811 INFO    ] 200
[2026-10-25 01:13:23,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:23,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:23,869.869 INFO    ] No update needed
[2026-10-25 01:13:23,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 01:13:23,905.905 INFO    ] 200
[2026-10-25 01:13:23,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:23,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:13:23,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:23,997.997 INFO    ] No camera update needed
[2026-10-25 01:13:23,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:13:24,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:13:24,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:13:24,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:13:26,054.054 INFO    ] ================================================
[2026-10-25 01:13:26,068.068 INFO    ] Launching Daemon at Sun Oct 25 01:13:26 IST 2026
[2026-10-25 01:13:26,079.079 INFO    ] ================================================
[2026-10-25 01:13:26,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:13:26
[2026-10-25 01:13:27,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:13:27,525.525 INFO    ] Initializing speech engine...
[2026-10-25 01:13:27,534.534 INFO    ] 2026-10-25 01:13:27
[2026-10-25 01:13:27,781.781 INFO    ] 2026-10-25 01:13:27
[2026-10-25 01:13:27,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:13:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:13:28,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:13:28,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:13:28,263.263 INFO    ] time= 25/10/2026 01:13:28
[2026-10-25 01:13:28,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:13:28,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:13:28,463.463 INFO    ] No existing commands found in stream
[2026-10-25 01:13:33,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:13:33,496.496 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 01:13:37,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:13:37,398.398 INFO    ] Checking for system updates...
[2026-10-25 01:13:37,434.434 INFO    ] 200
[2026-10-25 01:13:37,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:37,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:13:37,499.499 INFO    ] No update needed
[2026-10-25 01:13:37,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 01:13:37,539.539 INFO    ] 200
[2026-10-25 01:13:37,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:37,582.582 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:13:37,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:13:37,651.651 INFO    ] No camera update needed
[2026-10-25 01:13:37,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:13:37,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:13:37,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:13:37,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:13:39,707.707 INFO    ] ================================================
[2026-10-25 01:13:39,723.723 INFO    ] Launching Daemon at Sun Oct 25 01:13:39 IST 2026
[2026-10-25 01:13:39,734.734 INFO    ] ================================================
[2026-10-25 01:13:40,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:13:40
[2026-10-25 01:13:40,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:13:41,197.197 INFO    ] Initializing speech engine...
[2026-10-25 01:13:41,207.207 INFO    ] 2026-10-25 01:13:41
[2026-10-25 01:13:41,466.466 INFO    ] 2026-10-25 01:13:41
[2026-10-25 01:13:41,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:13:41,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:13:41,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:13:41,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:13:42,009.009 INFO    ] time= 25/10/2026 01:13:41
[2026-10-25 01:13:42,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:13:42,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:13:42,133.133 INFO    ] No existing commands found in stream
[2026-10-25 01:13:47,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:13:47,161.161 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 01:13:48,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:13:48,482.482 INFO    ] Checking for system updates...
[2026-10-25 01:13:48,518.518 INFO    ] 200
[2026-10-25 01:13:48,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:48,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:48,583.583 INFO    ] No update needed
[2026-10-25 01:13:48,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 01:13:48,623.623 INFO    ] 200
[2026-10-25 01:13:48,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:13:48,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:13:48,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:13:48,715.715 INFO    ] No camera update needed
[2026-10-25 01:13:48,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:13:48,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:13:48,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:13:48,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:13:50,772.772 INFO    ] ================================================
[2026-10-25 01:13:50,787.787 INFO    ] Launching Daemon at Sun Oct 25 01:13:50 IST 2026
[2026-10-25 01:13:50,798.798 INFO    ] ================================================
[2026-10-25 01:13:51,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:13:51
[2026-10-25 01:13:51,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:13:52,216.216 INFO    ] Initializing speech engine...
[2026-10-25 01:13:52,226.226 INFO    ] 2026-10-25 01:13:52
[2026-10-25 01:13:52,471.471 INFO    ] 2026-10-25 01:13:52
[2026-10-25 01:13:52,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:13:52,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:13:52,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:13:52,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:13:52,946.946 INFO    ] time= 25/10/2026 01:13:52
[2026-10-25 01:13:52,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:13:53,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:13:53,092.092 INFO    ] No existing commands found in stream
[2026-10-25 01:13:58,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:13:58,124.124 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 01:14:00,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:14:00,391.391 INFO    ] Checking for system updates...
[2026-10-25 01:14:00,426.426 INFO    ] 200
[2026-10-25 01:14:00,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:00,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:00,484.484 INFO    ] No update needed
[2026-10-25 01:14:00,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 01:14:00,520.520 INFO    ] 200
[2026-10-25 01:14:00,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:00,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:14:00,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:00,611.611 INFO    ] No camera update needed
[2026-10-25 01:14:00,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:14:00,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:14:00,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:14:00,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:14:02,667.667 INFO    ] ================================================
[2026-10-25 01:14:02,686.686 INFO    ] Launching Daemon at Sun Oct 25 01:14:02 IST 2026
[2026-10-25 01:14:02,698.698 INFO    ] ================================================
[2026-10-25 01:14:03,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:14:03
[2026-10-25 01:14:03,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:14:04,153.153 INFO    ] Initializing speech engine...
[2026-10-25 01:14:04,162.162 INFO    ] 2026-10-25 01:14:04
[2026-10-25 01:14:04,407.407 INFO    ] 2026-10-25 01:14:04
[2026-10-25 01:14:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:14:04,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:14:04,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:14:04,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:14:04,876.876 INFO    ] time= 25/10/2026 01:14:04
[2026-10-25 01:14:04,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:14:04,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:14:05,089.089 INFO    ] No existing commands found in stream
[2026-10-25 01:14:10,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:14:10,124.124 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 01:14:13,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:14:13,844.844 INFO    ] Checking for system updates...
[2026-10-25 01:14:13,883.883 INFO    ] 200
[2026-10-25 01:14:13,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:13,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:13,947.947 INFO    ] No update needed
[2026-10-25 01:14:13,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 01:14:13,983.983 INFO    ] 200
[2026-10-25 01:14:13,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:14,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:14:14,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:14,090.090 INFO    ] No camera update needed
[2026-10-25 01:14:14,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:14:14,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:14:14,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:14:14,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:14:16,146.146 INFO    ] ================================================
[2026-10-25 01:14:16,161.161 INFO    ] Launching Daemon at Sun Oct 25 01:14:16 IST 2026
[2026-10-25 01:14:16,171.171 INFO    ] ================================================
[2026-10-25 01:14:16,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:14:16
[2026-10-25 01:14:17,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:14:17,624.624 INFO    ] Initializing speech engine...
[2026-10-25 01:14:17,633.633 INFO    ] 2026-10-25 01:14:17
[2026-10-25 01:14:17,893.893 INFO    ] 2026-10-25 01:14:17
[2026-10-25 01:14:17,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:14:18,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:14:18,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:14:18,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:14:18,359.359 INFO    ] time= 25/10/2026 01:14:18
[2026-10-25 01:14:18,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:14:18,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:14:18,562.562 INFO    ] No existing commands found in stream
[2026-10-25 01:14:23,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:14:23,595.595 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 01:14:27,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:14:27,767.767 INFO    ] Checking for system updates...
[2026-10-25 01:14:27,807.807 INFO    ] 200
[2026-10-25 01:14:27,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:27,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:27,871.871 INFO    ] No update needed
[2026-10-25 01:14:27,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 01:14:27,907.907 INFO    ] 200
[2026-10-25 01:14:27,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:27,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:14:28,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:28,108.108 INFO    ] No camera update needed
[2026-10-25 01:14:28,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:14:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:14:28,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:14:28,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:14:30,167.167 INFO    ] ================================================
[2026-10-25 01:14:30,182.182 INFO    ] Launching Daemon at Sun Oct 25 01:14:30 IST 2026
[2026-10-25 01:14:30,193.193 INFO    ] ================================================
[2026-10-25 01:14:30,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:14:30
[2026-10-25 01:14:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:14:31,681.681 INFO    ] Initializing speech engine...
[2026-10-25 01:14:31,690.690 INFO    ] 2026-10-25 01:14:31
[2026-10-25 01:14:31,965.965 INFO    ] 2026-10-25 01:14:31
[2026-10-25 01:14:32,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:14:32,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:14:32,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:14:32,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:14:32,438.438 INFO    ] time= 25/10/2026 01:14:32
[2026-10-25 01:14:32,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:14:32,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:14:32,633.633 INFO    ] No existing commands found in stream
[2026-10-25 01:14:37,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:14:37,657.657 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 01:14:38,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:14:38,702.702 INFO    ] Checking for system updates...
[2026-10-25 01:14:38,738.738 INFO    ] 200
[2026-10-25 01:14:38,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:38,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:14:38,796.796 INFO    ] No update needed
[2026-10-25 01:14:38,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 01:14:38,832.832 INFO    ] 200
[2026-10-25 01:14:38,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:38,875.875 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:14:38,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:14:38,923.923 INFO    ] No camera update needed
[2026-10-25 01:14:38,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:14:38,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:14:38,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:14:38,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:14:40,980.980 INFO    ] ================================================
[2026-10-25 01:14:41,996.996 INFO    ] Launching Daemon at Sun Oct 25 01:14:40 IST 2026
[2026-10-25 01:14:41,007.007 INFO    ] ================================================
[2026-10-25 01:14:41,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:14:41
[2026-10-25 01:14:42,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:14:42,458.458 INFO    ] Initializing speech engine...
[2026-10-25 01:14:42,471.471 INFO    ] 2026-10-25 01:14:42
[2026-10-25 01:14:42,738.738 INFO    ] 2026-10-25 01:14:42
[2026-10-25 01:14:42,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:14:43,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:14:43,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:14:43,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:14:43,268.268 INFO    ] time= 25/10/2026 01:14:43
[2026-10-25 01:14:43,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:14:43,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:14:43,404.404 INFO    ] No existing commands found in stream
[2026-10-25 01:14:48,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:14:48,428.428 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 01:14:52,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:14:52,187.187 INFO    ] Checking for system updates...
[2026-10-25 01:14:52,227.227 INFO    ] 200
[2026-10-25 01:14:52,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:52,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:52,284.284 INFO    ] No update needed
[2026-10-25 01:14:52,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 01:14:52,321.321 INFO    ] 200
[2026-10-25 01:14:52,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:14:52,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:14:52,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:14:52,420.420 INFO    ] No camera update needed
[2026-10-25 01:14:52,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:14:52,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:14:52,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:14:52,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:14:54,478.478 INFO    ] ================================================
[2026-10-25 01:14:54,493.493 INFO    ] Launching Daemon at Sun Oct 25 01:14:54 IST 2026
[2026-10-25 01:14:54,503.503 INFO    ] ================================================
[2026-10-25 01:14:55,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:14:55
[2026-10-25 01:14:55,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:14:56,031.031 INFO    ] Initializing speech engine...
[2026-10-25 01:14:56,054.054 INFO    ] 2026-10-25 01:14:56
[2026-10-25 01:14:56,329.329 INFO    ] 2026-10-25 01:14:56
[2026-10-25 01:14:56,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:14:56,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:14:56,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:14:56,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:14:56,959.959 INFO    ] time= 25/10/2026 01:14:56
[2026-10-25 01:14:57,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:14:57,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:14:57,196.196 INFO    ] No existing commands found in stream
[2026-10-25 01:15:02,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:15:02,232.232 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 01:15:03,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:15:03,923.923 INFO    ] Checking for system updates...
[2026-10-25 01:15:03,959.959 INFO    ] 200
[2026-10-25 01:15:03,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:04,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:04,016.016 INFO    ] No update needed
[2026-10-25 01:15:04,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 01:15:04,052.052 INFO    ] 200
[2026-10-25 01:15:04,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:04,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:15:04,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:04,151.151 INFO    ] No camera update needed
[2026-10-25 01:15:04,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:15:04,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:15:04,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:15:04,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:15:06,207.207 INFO    ] ================================================
[2026-10-25 01:15:06,222.222 INFO    ] Launching Daemon at Sun Oct 25 01:15:06 IST 2026
[2026-10-25 01:15:06,233.233 INFO    ] ================================================
[2026-10-25 01:15:06,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:15:06
[2026-10-25 01:15:07,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:15:07,873.873 INFO    ] Initializing speech engine...
[2026-10-25 01:15:07,878.878 INFO    ] 2026-10-25 01:15:07
[2026-10-25 01:15:08,162.162 INFO    ] 2026-10-25 01:15:08
[2026-10-25 01:15:08,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:15:08,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:15:08,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:15:08,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:15:08,644.644 INFO    ] time= 25/10/2026 01:15:08
[2026-10-25 01:15:08,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:15:08,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:15:08,807.807 INFO    ] No existing commands found in stream
[2026-10-25 01:15:13,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:15:13,822.822 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 01:15:15,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:15:15,836.836 INFO    ] Checking for system updates...
[2026-10-25 01:15:15,872.872 INFO    ] 200
[2026-10-25 01:15:15,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:15,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:15,936.936 INFO    ] No update needed
[2026-10-25 01:15:15,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 01:15:15,975.975 INFO    ] 200
[2026-10-25 01:15:15,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:16,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:15:16,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:16,071.071 INFO    ] No camera update needed
[2026-10-25 01:15:16,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:15:16,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:15:16,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:15:16,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:15:18,126.126 INFO    ] ================================================
[2026-10-25 01:15:18,141.141 INFO    ] Launching Daemon at Sun Oct 25 01:15:18 IST 2026
[2026-10-25 01:15:18,153.153 INFO    ] ================================================
[2026-10-25 01:15:18,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:15:18
[2026-10-25 01:15:19,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:15:19,771.771 INFO    ] Initializing speech engine...
[2026-10-25 01:15:19,782.782 INFO    ] 2026-10-25 01:15:19
[2026-10-25 01:15:20,088.088 INFO    ] 2026-10-25 01:15:20
[2026-10-25 01:15:20,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:15:20,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:15:20,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:15:20,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:15:20,597.597 INFO    ] time= 25/10/2026 01:15:20
[2026-10-25 01:15:20,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:15:20,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:15:20,749.749 INFO    ] No existing commands found in stream
[2026-10-25 01:15:25,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:15:25,766.766 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 01:15:27,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:15:27,873.873 INFO    ] Checking for system updates...
[2026-10-25 01:15:27,909.909 INFO    ] 200
[2026-10-25 01:15:27,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:27,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:15:27,976.976 INFO    ] No update needed
[2026-10-25 01:15:27,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 01:15:28,017.017 INFO    ] 200
[2026-10-25 01:15:28,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:28,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:15:28,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:15:28,113.113 INFO    ] No camera update needed
[2026-10-25 01:15:28,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:15:28,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:15:28,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:15:28,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:15:30,169.169 INFO    ] ================================================
[2026-10-25 01:15:30,184.184 INFO    ] Launching Daemon at Sun Oct 25 01:15:30 IST 2026
[2026-10-25 01:15:30,195.195 INFO    ] ================================================
[2026-10-25 01:15:30,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:15:30
[2026-10-25 01:15:31,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:15:31,852.852 INFO    ] Initializing speech engine...
[2026-10-25 01:15:31,861.861 INFO    ] 2026-10-25 01:15:31
[2026-10-25 01:15:32,152.152 INFO    ] 2026-10-25 01:15:32
[2026-10-25 01:15:32,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:15:32,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:15:32,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:15:32,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:15:32,653.653 INFO    ] time= 25/10/2026 01:15:32
[2026-10-25 01:15:32,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:15:32,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:15:32,828.828 INFO    ] No existing commands found in stream
[2026-10-25 01:15:37,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:15:37,856.856 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 01:15:42,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:15:42,145.145 INFO    ] Checking for system updates...
[2026-10-25 01:15:42,181.181 INFO    ] 200
[2026-10-25 01:15:42,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:42,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:42,239.239 INFO    ] No update needed
[2026-10-25 01:15:42,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 01:15:42,275.275 INFO    ] 200
[2026-10-25 01:15:42,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:42,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:15:42,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:15:42,379.379 INFO    ] No camera update needed
[2026-10-25 01:15:42,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:15:42,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:15:42,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:15:42,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:15:44,435.435 INFO    ] ================================================
[2026-10-25 01:15:44,449.449 INFO    ] Launching Daemon at Sun Oct 25 01:15:44 IST 2026
[2026-10-25 01:15:44,460.460 INFO    ] ================================================
[2026-10-25 01:15:45,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:15:45
[2026-10-25 01:15:45,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:15:45,860.860 INFO    ] Initializing speech engine...
[2026-10-25 01:15:45,875.875 INFO    ] 2026-10-25 01:15:45
[2026-10-25 01:15:46,140.140 INFO    ] 2026-10-25 01:15:46
[2026-10-25 01:15:46,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:15:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:15:46,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:15:46,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:15:46,620.620 INFO    ] time= 25/10/2026 01:15:46
[2026-10-25 01:15:46,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:15:46,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:15:46,829.829 INFO    ] No existing commands found in stream
[2026-10-25 01:15:51,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:15:51,848.848 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 01:15:55,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:15:55,196.196 INFO    ] Checking for system updates...
[2026-10-25 01:15:55,232.232 INFO    ] 200
[2026-10-25 01:15:55,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:55,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:15:55,289.289 INFO    ] No update needed
[2026-10-25 01:15:55,292.292 INFO    ] Checking for camera pi updates...
[2026-10-25 01:15:55,329.329 INFO    ] 200
[2026-10-25 01:15:55,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:15:55,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:15:55,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:15:55,430.430 INFO    ] No camera update needed
[2026-10-25 01:15:55,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:15:55,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:15:55,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:15:55,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:15:57,486.486 INFO    ] ================================================
[2026-10-25 01:15:57,501.501 INFO    ] Launching Daemon at Sun Oct 25 01:15:57 IST 2026
[2026-10-25 01:15:57,512.512 INFO    ] ================================================
[2026-10-25 01:15:58,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:15:58
[2026-10-25 01:15:58,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:15:58,980.980 INFO    ] Initializing speech engine...
[2026-10-25 01:15:58,995.995 INFO    ] 2026-10-25 01:15:58
[2026-10-25 01:15:59,273.273 INFO    ] 2026-10-25 01:15:59
[2026-10-25 01:15:59,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:15:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:15:59,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:15:59,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:15:59,814.814 INFO    ] time= 25/10/2026 01:15:59
[2026-10-25 01:15:59,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:15:59,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:15:59,968.968 INFO    ] No existing commands found in stream
[2026-10-25 01:16:04,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:16:04,986.986 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 01:16:06,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:16:06,971.971 INFO    ] Checking for system updates...
[2026-10-25 01:16:07,012.012 INFO    ] 200
[2026-10-25 01:16:07,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:07,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:07,070.070 INFO    ] No update needed
[2026-10-25 01:16:07,073.073 INFO    ] Checking for camera pi updates...
[2026-10-25 01:16:07,106.106 INFO    ] 200
[2026-10-25 01:16:07,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:07,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:16:07,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:07,188.188 INFO    ] No camera update needed
[2026-10-25 01:16:07,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:16:07,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:16:07,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:16:07,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:16:09,242.242 INFO    ] ================================================
[2026-10-25 01:16:09,257.257 INFO    ] Launching Daemon at Sun Oct 25 01:16:09 IST 2026
[2026-10-25 01:16:09,268.268 INFO    ] ================================================
[2026-10-25 01:16:09,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:16:09
[2026-10-25 01:16:10,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:16:10,684.684 INFO    ] Initializing speech engine...
[2026-10-25 01:16:10,699.699 INFO    ] 2026-10-25 01:16:10
[2026-10-25 01:16:10,966.966 INFO    ] 2026-10-25 01:16:10
[2026-10-25 01:16:11,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:16:11,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:16:11,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:16:11,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:16:11,448.448 INFO    ] time= 25/10/2026 01:16:11
[2026-10-25 01:16:11,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:16:11,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:16:11,595.595 INFO    ] No existing commands found in stream
[2026-10-25 01:16:16,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:16:16,610.610 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 01:16:19,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:16:19,615.615 INFO    ] Checking for system updates...
[2026-10-25 01:16:19,650.650 INFO    ] 200
[2026-10-25 01:16:19,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:19,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:19,707.707 INFO    ] No update needed
[2026-10-25 01:16:19,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 01:16:19,746.746 INFO    ] 200
[2026-10-25 01:16:19,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:19,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:16:19,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:19,851.851 INFO    ] No camera update needed
[2026-10-25 01:16:19,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:16:19,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:16:19,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:16:19,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:16:21,906.906 INFO    ] ================================================
[2026-10-25 01:16:21,921.921 INFO    ] Launching Daemon at Sun Oct 25 01:16:21 IST 2026
[2026-10-25 01:16:21,932.932 INFO    ] ================================================
[2026-10-25 01:16:22,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:16:22
[2026-10-25 01:16:23,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:16:23,356.356 INFO    ] Initializing speech engine...
[2026-10-25 01:16:23,379.379 INFO    ] 2026-10-25 01:16:23
[2026-10-25 01:16:23,633.633 INFO    ] 2026-10-25 01:16:23
[2026-10-25 01:16:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:16:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:16:23,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:16:24,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:16:24,192.192 INFO    ] time= 25/10/2026 01:16:24
[2026-10-25 01:16:24,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:16:24,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:16:24,331.331 INFO    ] No existing commands found in stream
[2026-10-25 01:16:29,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:16:29,358.358 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 01:16:29,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:16:29,922.922 INFO    ] Checking for system updates...
[2026-10-25 01:16:29,962.962 INFO    ] 200
[2026-10-25 01:16:29,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:30,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:30,019.019 INFO    ] No update needed
[2026-10-25 01:16:30,021.021 INFO    ] Checking for camera pi updates...
[2026-10-25 01:16:30,055.055 INFO    ] 200
[2026-10-25 01:16:30,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:30,099.099 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:16:30,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:30,254.254 INFO    ] No camera update needed
[2026-10-25 01:16:30,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:16:30,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:16:30,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:16:30,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:16:32,311.311 INFO    ] ================================================
[2026-10-25 01:16:32,328.328 INFO    ] Launching Daemon at Sun Oct 25 01:16:32 IST 2026
[2026-10-25 01:16:32,340.340 INFO    ] ================================================
[2026-10-25 01:16:32,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:16:32
[2026-10-25 01:16:33,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:16:33,795.795 INFO    ] Initializing speech engine...
[2026-10-25 01:16:33,810.810 INFO    ] 2026-10-25 01:16:33
[2026-10-25 01:16:34,094.094 INFO    ] 2026-10-25 01:16:34
[2026-10-25 01:16:34,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:16:34,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:16:34,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:16:34,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:16:34,448.448 INFO    ] time= 25/10/2026 01:16:34
[2026-10-25 01:16:34,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:16:34,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:16:34,598.598 INFO    ] No existing commands found in stream
[2026-10-25 01:16:39,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:16:39,611.611 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 01:16:42,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:16:42,932.932 INFO    ] Checking for system updates...
[2026-10-25 01:16:42,968.968 INFO    ] 200
[2026-10-25 01:16:42,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:43,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:16:43,025.025 INFO    ] No update needed
[2026-10-25 01:16:43,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 01:16:43,069.069 INFO    ] 200
[2026-10-25 01:16:43,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:43,112.112 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:16:43,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:16:43,162.162 INFO    ] No camera update needed
[2026-10-25 01:16:43,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:16:43,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:16:43,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:16:43,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:16:45,216.216 INFO    ] ================================================
[2026-10-25 01:16:45,232.232 INFO    ] Launching Daemon at Sun Oct 25 01:16:45 IST 2026
[2026-10-25 01:16:45,243.243 INFO    ] ================================================
[2026-10-25 01:16:45,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:16:45
[2026-10-25 01:16:46,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:16:46,878.878 INFO    ] Initializing speech engine...
[2026-10-25 01:16:46,891.891 INFO    ] 2026-10-25 01:16:46
[2026-10-25 01:16:47,173.173 INFO    ] 2026-10-25 01:16:47
[2026-10-25 01:16:47,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:16:47,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:16:47,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:16:47,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:16:47,722.722 INFO    ] time= 25/10/2026 01:16:47
[2026-10-25 01:16:47,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:16:47,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:16:47,859.859 INFO    ] No existing commands found in stream
[2026-10-25 01:16:52,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:16:52,889.889 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 01:16:55,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:16:55,487.487 INFO    ] Checking for system updates...
[2026-10-25 01:16:55,523.523 INFO    ] 200
[2026-10-25 01:16:55,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:55,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:55,581.581 INFO    ] No update needed
[2026-10-25 01:16:55,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 01:16:55,616.616 INFO    ] 200
[2026-10-25 01:16:55,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:16:55,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:16:55,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:16:55,709.709 INFO    ] No camera update needed
[2026-10-25 01:16:55,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:16:55,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:16:55,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:16:55,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:16:57,763.763 INFO    ] ================================================
[2026-10-25 01:16:57,778.778 INFO    ] Launching Daemon at Sun Oct 25 01:16:57 IST 2026
[2026-10-25 01:16:57,789.789 INFO    ] ================================================
[2026-10-25 01:16:58,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:16:58
[2026-10-25 01:16:58,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:16:59,248.248 INFO    ] Initializing speech engine...
[2026-10-25 01:16:59,260.260 INFO    ] 2026-10-25 01:16:59
[2026-10-25 01:16:59,521.521 INFO    ] 2026-10-25 01:16:59
[2026-10-25 01:16:59,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:16:59,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:16:59,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:16:59,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:16:59,973.973 INFO    ] time= 25/10/2026 01:16:59
[2026-10-25 01:17:00,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:17:00,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:17:00,196.196 INFO    ] No existing commands found in stream
[2026-10-25 01:17:05,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:17:05,221.221 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 01:17:06,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:17:06,640.640 INFO    ] Checking for system updates...
[2026-10-25 01:17:06,676.676 INFO    ] 200
[2026-10-25 01:17:06,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:06,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:17:06,734.734 INFO    ] No update needed
[2026-10-25 01:17:06,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 01:17:06,770.770 INFO    ] 200
[2026-10-25 01:17:06,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:06,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:17:06,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:17:06,870.870 INFO    ] No camera update needed
[2026-10-25 01:17:06,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:17:06,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:17:06,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:17:06,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:17:08,925.925 INFO    ] ================================================
[2026-10-25 01:17:08,941.941 INFO    ] Launching Daemon at Sun Oct 25 01:17:08 IST 2026
[2026-10-25 01:17:08,952.952 INFO    ] ================================================
[2026-10-25 01:17:09,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:17:09
[2026-10-25 01:17:10,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:17:10,562.562 INFO    ] Initializing speech engine...
[2026-10-25 01:17:10,571.571 INFO    ] 2026-10-25 01:17:10
[2026-10-25 01:17:10,859.859 INFO    ] 2026-10-25 01:17:10
[2026-10-25 01:17:10,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:17:11,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:17:11,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:17:11,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:17:11,322.322 INFO    ] time= 25/10/2026 01:17:11
[2026-10-25 01:17:11,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:17:11,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:17:11,477.477 INFO    ] No existing commands found in stream
[2026-10-25 01:17:16,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:17:16,493.493 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 01:17:19,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:17:19,220.220 INFO    ] Checking for system updates...
[2026-10-25 01:17:19,257.257 INFO    ] 200
[2026-10-25 01:17:19,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:19,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:19,323.323 INFO    ] No update needed
[2026-10-25 01:17:19,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 01:17:19,364.364 INFO    ] 200
[2026-10-25 01:17:19,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:19,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:17:19,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:19,479.479 INFO    ] No camera update needed
[2026-10-25 01:17:19,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:17:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:17:19,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:17:19,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:17:21,536.536 INFO    ] ================================================
[2026-10-25 01:17:21,552.552 INFO    ] Launching Daemon at Sun Oct 25 01:17:21 IST 2026
[2026-10-25 01:17:21,566.566 INFO    ] ================================================
[2026-10-25 01:17:22,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:17:22
[2026-10-25 01:17:22,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:17:22,979.979 INFO    ] Initializing speech engine...
[2026-10-25 01:17:22,998.998 INFO    ] 2026-10-25 01:17:22
[2026-10-25 01:17:23,249.249 INFO    ] 2026-10-25 01:17:23
[2026-10-25 01:17:23,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:17:23,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:17:23,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:17:23,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:17:23,731.731 INFO    ] time= 25/10/2026 01:17:23
[2026-10-25 01:17:23,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:17:23,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:17:23,886.886 INFO    ] No existing commands found in stream
[2026-10-25 01:17:28,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:17:28,914.914 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 01:17:29,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:17:29,575.575 INFO    ] Checking for system updates...
[2026-10-25 01:17:29,615.615 INFO    ] 200
[2026-10-25 01:17:29,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:29,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:29,672.672 INFO    ] No update needed
[2026-10-25 01:17:29,674.674 INFO    ] Checking for camera pi updates...
[2026-10-25 01:17:29,712.712 INFO    ] 200
[2026-10-25 01:17:29,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:29,754.754 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:17:29,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:29,798.798 INFO    ] No camera update needed
[2026-10-25 01:17:29,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:17:29,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:17:29,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:17:29,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:17:31,854.854 INFO    ] ================================================
[2026-10-25 01:17:31,869.869 INFO    ] Launching Daemon at Sun Oct 25 01:17:31 IST 2026
[2026-10-25 01:17:31,880.880 INFO    ] ================================================
[2026-10-25 01:17:32,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:17:32
[2026-10-25 01:17:33,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:17:33,413.413 INFO    ] Initializing speech engine...
[2026-10-25 01:17:33,439.439 INFO    ] 2026-10-25 01:17:33
[2026-10-25 01:17:33,713.713 INFO    ] 2026-10-25 01:17:33
[2026-10-25 01:17:33,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:17:33,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:17:33,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:17:34,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:17:34,102.102 INFO    ] time= 25/10/2026 01:17:34
[2026-10-25 01:17:34,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:17:34,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:17:34,212.212 INFO    ] No existing commands found in stream
[2026-10-25 01:17:39,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:17:39,230.230 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 01:17:43,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:17:43,185.185 INFO    ] Checking for system updates...
[2026-10-25 01:17:43,221.221 INFO    ] 200
[2026-10-25 01:17:43,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:43,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:43,279.279 INFO    ] No update needed
[2026-10-25 01:17:43,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 01:17:43,316.316 INFO    ] 200
[2026-10-25 01:17:43,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:43,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:17:43,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:43,420.420 INFO    ] No camera update needed
[2026-10-25 01:17:43,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:17:43,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:17:43,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:17:43,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:17:45,475.475 INFO    ] ================================================
[2026-10-25 01:17:45,490.490 INFO    ] Launching Daemon at Sun Oct 25 01:17:45 IST 2026
[2026-10-25 01:17:45,501.501 INFO    ] ================================================
[2026-10-25 01:17:46,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:17:46
[2026-10-25 01:17:46,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:17:47,076.076 INFO    ] Initializing speech engine...
[2026-10-25 01:17:47,082.082 INFO    ] 2026-10-25 01:17:47
[2026-10-25 01:17:47,366.366 INFO    ] 2026-10-25 01:17:47
[2026-10-25 01:17:47,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:17:47,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:17:47,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:17:47,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:17:47,928.928 INFO    ] time= 25/10/2026 01:17:47
[2026-10-25 01:17:47,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:17:47,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:17:48,043.043 INFO    ] No existing commands found in stream
[2026-10-25 01:17:53,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:17:53,056.056 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 01:17:55,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:17:55,523.523 INFO    ] Checking for system updates...
[2026-10-25 01:17:55,562.562 INFO    ] 200
[2026-10-25 01:17:55,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:55,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:55,621.621 INFO    ] No update needed
[2026-10-25 01:17:55,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 01:17:55,663.663 INFO    ] 200
[2026-10-25 01:17:55,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:17:55,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:17:55,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:17:55,762.762 INFO    ] No camera update needed
[2026-10-25 01:17:55,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:17:55,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:17:55,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:17:55,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:17:57,817.817 INFO    ] ================================================
[2026-10-25 01:17:57,832.832 INFO    ] Launching Daemon at Sun Oct 25 01:17:57 IST 2026
[2026-10-25 01:17:57,843.843 INFO    ] ================================================
[2026-10-25 01:17:58,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:17:58
[2026-10-25 01:17:59,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:17:59,317.317 INFO    ] Initializing speech engine...
[2026-10-25 01:17:59,326.326 INFO    ] 2026-10-25 01:17:59
[2026-10-25 01:17:59,594.594 INFO    ] 2026-10-25 01:17:59
[2026-10-25 01:17:59,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:17:59,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:17:59,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:18:00,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:18:00,100.100 INFO    ] time= 25/10/2026 01:18:00
[2026-10-25 01:18:00,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:18:00,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:18:00,302.302 INFO    ] No existing commands found in stream
[2026-10-25 01:18:05,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:18:05,331.331 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 01:18:08,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:18:08,071.071 INFO    ] Checking for system updates...
[2026-10-25 01:18:08,109.109 INFO    ] 200
[2026-10-25 01:18:08,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:08,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:18:08,174.174 INFO    ] No update needed
[2026-10-25 01:18:08,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 01:18:08,210.210 INFO    ] 200
[2026-10-25 01:18:08,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:08,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:18:08,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:18:08,306.306 INFO    ] No camera update needed
[2026-10-25 01:18:08,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:18:08,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:18:08,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:18:08,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:18:10,362.362 INFO    ] ================================================
[2026-10-25 01:18:10,377.377 INFO    ] Launching Daemon at Sun Oct 25 01:18:10 IST 2026
[2026-10-25 01:18:10,388.388 INFO    ] ================================================
[2026-10-25 01:18:10,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:18:10
[2026-10-25 01:18:11,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:18:11,808.808 INFO    ] Initializing speech engine...
[2026-10-25 01:18:11,814.814 INFO    ] 2026-10-25 01:18:11
[2026-10-25 01:18:12,063.063 INFO    ] 2026-10-25 01:18:12
[2026-10-25 01:18:12,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:18:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:18:12,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:18:12,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:18:12,541.541 INFO    ] time= 25/10/2026 01:18:12
[2026-10-25 01:18:12,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:18:12,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:18:12,693.693 INFO    ] No existing commands found in stream
[2026-10-25 01:18:17,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:18:17,708.708 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 01:18:18,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:18:18,714.714 INFO    ] Checking for system updates...
[2026-10-25 01:18:18,750.750 INFO    ] 200
[2026-10-25 01:18:18,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:18,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:18,814.814 INFO    ] No update needed
[2026-10-25 01:18:18,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 01:18:18,851.851 INFO    ] 200
[2026-10-25 01:18:18,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:18,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:18:18,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:18,951.951 INFO    ] No camera update needed
[2026-10-25 01:18:18,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:18:18,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:18:18,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:18:18,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:18:21,007.007 INFO    ] ================================================
[2026-10-25 01:18:21,022.022 INFO    ] Launching Daemon at Sun Oct 25 01:18:21 IST 2026
[2026-10-25 01:18:21,033.033 INFO    ] ================================================
[2026-10-25 01:18:21,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:18:21
[2026-10-25 01:18:22,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:18:22,583.583 INFO    ] Initializing speech engine...
[2026-10-25 01:18:22,591.591 INFO    ] 2026-10-25 01:18:22
[2026-10-25 01:18:22,849.849 INFO    ] 2026-10-25 01:18:22
[2026-10-25 01:18:22,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:18:23,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:18:23,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:18:23,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:18:23,336.336 INFO    ] time= 25/10/2026 01:18:23
[2026-10-25 01:18:23,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:18:23,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:18:23,455.455 INFO    ] No existing commands found in stream
[2026-10-25 01:18:28,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:18:28,487.487 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 01:18:30,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:18:30,654.654 INFO    ] Checking for system updates...
[2026-10-25 01:18:30,693.693 INFO    ] 200
[2026-10-25 01:18:30,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:30,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:18:30,751.751 INFO    ] No update needed
[2026-10-25 01:18:30,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 01:18:30,791.791 INFO    ] 200
[2026-10-25 01:18:30,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:30,838.838 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:18:30,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:18:30,895.895 INFO    ] No camera update needed
[2026-10-25 01:18:30,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:18:30,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:18:30,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:18:30,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:18:32,954.954 INFO    ] ================================================
[2026-10-25 01:18:32,971.971 INFO    ] Launching Daemon at Sun Oct 25 01:18:32 IST 2026
[2026-10-25 01:18:32,983.983 INFO    ] ================================================
[2026-10-25 01:18:33,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:18:33
[2026-10-25 01:18:34,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:18:34,424.424 INFO    ] Initializing speech engine...
[2026-10-25 01:18:34,437.437 INFO    ] 2026-10-25 01:18:34
[2026-10-25 01:18:34,701.701 INFO    ] 2026-10-25 01:18:34
[2026-10-25 01:18:34,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:18:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:18:34,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:18:35,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:18:35,175.175 INFO    ] time= 25/10/2026 01:18:35
[2026-10-25 01:18:35,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:18:35,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:18:35,345.345 INFO    ] No existing commands found in stream
[2026-10-25 01:18:40,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:18:40,385.385 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 01:18:42,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:18:42,024.024 INFO    ] Checking for system updates...
[2026-10-25 01:18:42,079.079 INFO    ] 200
[2026-10-25 01:18:42,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:42,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:42,138.138 INFO    ] No update needed
[2026-10-25 01:18:42,140.140 INFO    ] Checking for camera pi updates...
[2026-10-25 01:18:42,179.179 INFO    ] 200
[2026-10-25 01:18:42,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:42,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:18:42,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:42,272.272 INFO    ] No camera update needed
[2026-10-25 01:18:42,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:18:42,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:18:42,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:18:42,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:18:44,326.326 INFO    ] ================================================
[2026-10-25 01:18:44,341.341 INFO    ] Launching Daemon at Sun Oct 25 01:18:44 IST 2026
[2026-10-25 01:18:44,352.352 INFO    ] ================================================
[2026-10-25 01:18:44,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:18:44
[2026-10-25 01:18:45,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:18:45,808.808 INFO    ] Initializing speech engine...
[2026-10-25 01:18:45,815.815 INFO    ] 2026-10-25 01:18:45
[2026-10-25 01:18:46,089.089 INFO    ] 2026-10-25 01:18:46
[2026-10-25 01:18:46,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:18:46,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:18:46,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:18:46,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:18:46,569.569 INFO    ] time= 25/10/2026 01:18:46
[2026-10-25 01:18:46,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:18:46,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:18:46,761.761 INFO    ] No existing commands found in stream
[2026-10-25 01:18:51,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:18:51,783.783 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 01:18:55,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:18:55,624.624 INFO    ] Checking for system updates...
[2026-10-25 01:18:55,660.660 INFO    ] 200
[2026-10-25 01:18:55,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:55,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:55,718.718 INFO    ] No update needed
[2026-10-25 01:18:55,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 01:18:55,758.758 INFO    ] 200
[2026-10-25 01:18:55,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:18:55,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:18:55,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:18:55,854.854 INFO    ] No camera update needed
[2026-10-25 01:18:55,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:18:55,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:18:55,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:18:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:18:57,911.911 INFO    ] ================================================
[2026-10-25 01:18:57,926.926 INFO    ] Launching Daemon at Sun Oct 25 01:18:57 IST 2026
[2026-10-25 01:18:57,936.936 INFO    ] ================================================
[2026-10-25 01:18:58,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:18:58
[2026-10-25 01:18:59,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:18:59,388.388 INFO    ] Initializing speech engine...
[2026-10-25 01:18:59,394.394 INFO    ] 2026-10-25 01:18:59
[2026-10-25 01:18:59,639.639 INFO    ] 2026-10-25 01:18:59
[2026-10-25 01:18:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:18:59,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:18:59,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:19:00,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:19:00,132.132 INFO    ] time= 25/10/2026 01:19:00
[2026-10-25 01:19:00,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:19:00,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:19:00,320.320 INFO    ] No existing commands found in stream
[2026-10-25 01:19:05,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:19:05,353.353 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 01:19:06,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:19:06,822.822 INFO    ] Checking for system updates...
[2026-10-25 01:19:06,859.859 INFO    ] 200
[2026-10-25 01:19:06,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:06,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:19:06,924.924 INFO    ] No update needed
[2026-10-25 01:19:06,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 01:19:06,964.964 INFO    ] 200
[2026-10-25 01:19:06,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:07,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:19:07,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:19:07,056.056 INFO    ] No camera update needed
[2026-10-25 01:19:07,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:19:07,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:19:07,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:19:07,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:19:09,113.113 INFO    ] ================================================
[2026-10-25 01:19:09,129.129 INFO    ] Launching Daemon at Sun Oct 25 01:19:09 IST 2026
[2026-10-25 01:19:09,141.141 INFO    ] ================================================
[2026-10-25 01:19:09,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:19:09
[2026-10-25 01:19:10,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:19:10,723.723 INFO    ] Initializing speech engine...
[2026-10-25 01:19:10,728.728 INFO    ] 2026-10-25 01:19:10
[2026-10-25 01:19:10,991.991 INFO    ] 2026-10-25 01:19:10
[2026-10-25 01:19:11,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:19:11,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:19:11,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:19:11,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:19:11,447.447 INFO    ] time= 25/10/2026 01:19:11
[2026-10-25 01:19:11,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:19:11,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:19:11,599.599 INFO    ] No existing commands found in stream
[2026-10-25 01:19:16,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:19:16,615.615 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 01:19:20,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:19:20,509.509 INFO    ] Checking for system updates...
[2026-10-25 01:19:20,545.545 INFO    ] 200
[2026-10-25 01:19:20,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:20,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:20,610.610 INFO    ] No update needed
[2026-10-25 01:19:20,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 01:19:20,656.656 INFO    ] 200
[2026-10-25 01:19:20,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:20,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:19:20,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:20,753.753 INFO    ] No camera update needed
[2026-10-25 01:19:20,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:19:20,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:19:20,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:19:20,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:19:22,810.810 INFO    ] ================================================
[2026-10-25 01:19:22,825.825 INFO    ] Launching Daemon at Sun Oct 25 01:19:22 IST 2026
[2026-10-25 01:19:22,835.835 INFO    ] ================================================
[2026-10-25 01:19:23,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:19:23
[2026-10-25 01:19:24,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:19:24,279.279 INFO    ] Initializing speech engine...
[2026-10-25 01:19:24,294.294 INFO    ] 2026-10-25 01:19:24
[2026-10-25 01:19:24,561.561 INFO    ] 2026-10-25 01:19:24
[2026-10-25 01:19:24,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:19:24,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:19:24,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:19:25,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:19:25,050.050 INFO    ] time= 25/10/2026 01:19:25
[2026-10-25 01:19:25,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:19:25,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:19:25,226.226 INFO    ] No existing commands found in stream
[2026-10-25 01:19:30,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:19:30,245.245 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 01:19:34,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:19:34,228.228 INFO    ] Checking for system updates...
[2026-10-25 01:19:34,265.265 INFO    ] 200
[2026-10-25 01:19:34,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:34,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:34,331.331 INFO    ] No update needed
[2026-10-25 01:19:34,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 01:19:34,367.367 INFO    ] 200
[2026-10-25 01:19:34,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:34,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:19:34,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:34,471.471 INFO    ] No camera update needed
[2026-10-25 01:19:34,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:19:34,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:19:34,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:19:34,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:19:36,525.525 INFO    ] ================================================
[2026-10-25 01:19:36,540.540 INFO    ] Launching Daemon at Sun Oct 25 01:19:36 IST 2026
[2026-10-25 01:19:36,551.551 INFO    ] ================================================
[2026-10-25 01:19:37,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:19:37
[2026-10-25 01:19:37,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:19:38,074.074 INFO    ] Initializing speech engine...
[2026-10-25 01:19:38,088.088 INFO    ] 2026-10-25 01:19:38
[2026-10-25 01:19:38,354.354 INFO    ] 2026-10-25 01:19:38
[2026-10-25 01:19:38,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:19:38,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:19:38,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:19:38,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:19:38,818.818 INFO    ] time= 25/10/2026 01:19:38
[2026-10-25 01:19:38,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:19:38,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:19:39,041.041 INFO    ] No existing commands found in stream
[2026-10-25 01:19:44,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:19:44,066.066 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 01:19:48,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:19:48,204.204 INFO    ] Checking for system updates...
[2026-10-25 01:19:48,240.240 INFO    ] 200
[2026-10-25 01:19:48,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:48,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:48,313.313 INFO    ] No update needed
[2026-10-25 01:19:48,315.315 INFO    ] Checking for camera pi updates...
[2026-10-25 01:19:48,349.349 INFO    ] 200
[2026-10-25 01:19:48,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:19:48,398.398 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:19:48,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:19:48,465.465 INFO    ] No camera update needed
[2026-10-25 01:19:48,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:19:48,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:19:48,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:19:48,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:19:50,519.519 INFO    ] ================================================
[2026-10-25 01:19:50,534.534 INFO    ] Launching Daemon at Sun Oct 25 01:19:50 IST 2026
[2026-10-25 01:19:50,545.545 INFO    ] ================================================
[2026-10-25 01:19:51,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:19:51
[2026-10-25 01:19:51,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:19:51,959.959 INFO    ] Initializing speech engine...
[2026-10-25 01:19:51,969.969 INFO    ] 2026-10-25 01:19:51
[2026-10-25 01:19:52,212.212 INFO    ] 2026-10-25 01:19:52
[2026-10-25 01:19:52,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:19:52,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:19:52,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:19:52,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:19:52,680.680 INFO    ] time= 25/10/2026 01:19:52
[2026-10-25 01:19:52,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:19:52,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:19:52,828.828 INFO    ] No existing commands found in stream
[2026-10-25 01:19:57,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:19:57,843.843 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 01:20:00,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:20:00,993.993 INFO    ] Checking for system updates...
[2026-10-25 01:20:01,028.028 INFO    ] 200
[2026-10-25 01:20:01,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:01,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:20:01,095.095 INFO    ] No update needed
[2026-10-25 01:20:01,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 01:20:01,136.136 INFO    ] 200
[2026-10-25 01:20:01,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:01,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:20:01,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:20:01,233.233 INFO    ] No camera update needed
[2026-10-25 01:20:01,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:20:01,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:20:01,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:20:01,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:20:03,294.294 INFO    ] ================================================
[2026-10-25 01:20:03,309.309 INFO    ] Launching Daemon at Sun Oct 25 01:20:03 IST 2026
[2026-10-25 01:20:03,320.320 INFO    ] ================================================
[2026-10-25 01:20:03,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:20:03
[2026-10-25 01:20:04,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:20:04,765.765 INFO    ] Initializing speech engine...
[2026-10-25 01:20:04,774.774 INFO    ] 2026-10-25 01:20:04
[2026-10-25 01:20:05,071.071 INFO    ] 2026-10-25 01:20:05
[2026-10-25 01:20:05,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:20:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:20:05,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:20:05,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:20:05,580.580 INFO    ] time= 25/10/2026 01:20:05
[2026-10-25 01:20:05,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:20:05,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:20:05,717.717 INFO    ] No existing commands found in stream
[2026-10-25 01:20:10,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:20:10,741.741 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 01:20:12,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:20:12,333.333 INFO    ] Checking for system updates...
[2026-10-25 01:20:12,372.372 INFO    ] 200
[2026-10-25 01:20:12,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:12,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:20:12,439.439 INFO    ] No update needed
[2026-10-25 01:20:12,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 01:20:12,488.488 INFO    ] 200
[2026-10-25 01:20:12,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:12,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:20:12,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:20:12,588.588 INFO    ] No camera update needed
[2026-10-25 01:20:12,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:20:12,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:20:12,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:20:12,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:20:14,649.649 INFO    ] ================================================
[2026-10-25 01:20:14,665.665 INFO    ] Launching Daemon at Sun Oct 25 01:20:14 IST 2026
[2026-10-25 01:20:14,675.675 INFO    ] ================================================
[2026-10-25 01:20:15,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:20:15
[2026-10-25 01:20:15,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:20:16,134.134 INFO    ] Initializing speech engine...
[2026-10-25 01:20:16,144.144 INFO    ] 2026-10-25 01:20:16
[2026-10-25 01:20:16,402.402 INFO    ] 2026-10-25 01:20:16
[2026-10-25 01:20:16,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:20:16,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:20:16,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:20:16,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:20:16,887.887 INFO    ] time= 25/10/2026 01:20:16
[2026-10-25 01:20:16,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:20:16,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:20:17,080.080 INFO    ] No existing commands found in stream
[2026-10-25 01:20:22,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:20:22,108.108 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 01:20:26,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:20:26,342.342 INFO    ] Checking for system updates...
[2026-10-25 01:20:26,379.379 INFO    ] 200
[2026-10-25 01:20:26,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:26,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:26,446.446 INFO    ] No update needed
[2026-10-25 01:20:26,448.448 INFO    ] Checking for camera pi updates...
[2026-10-25 01:20:26,486.486 INFO    ] 200
[2026-10-25 01:20:26,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:26,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:20:26,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:26,580.580 INFO    ] No camera update needed
[2026-10-25 01:20:26,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:20:26,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:20:26,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:20:26,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:20:28,637.637 INFO    ] ================================================
[2026-10-25 01:20:28,652.652 INFO    ] Launching Daemon at Sun Oct 25 01:20:28 IST 2026
[2026-10-25 01:20:28,662.662 INFO    ] ================================================
[2026-10-25 01:20:29,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:20:29
[2026-10-25 01:20:29,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:20:30,139.139 INFO    ] Initializing speech engine...
[2026-10-25 01:20:30,150.150 INFO    ] 2026-10-25 01:20:30
[2026-10-25 01:20:30,411.411 INFO    ] 2026-10-25 01:20:30
[2026-10-25 01:20:30,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:20:30,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:20:30,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:20:30,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:20:30,848.848 INFO    ] time= 25/10/2026 01:20:30
[2026-10-25 01:20:30,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:20:30,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:20:31,062.062 INFO    ] No existing commands found in stream
[2026-10-25 01:20:36,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:20:36,089.089 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 01:20:36,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:20:36,668.668 INFO    ] Checking for system updates...
[2026-10-25 01:20:36,709.709 INFO    ] 200
[2026-10-25 01:20:36,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:36,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:36,772.772 INFO    ] No update needed
[2026-10-25 01:20:36,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 01:20:36,811.811 INFO    ] 200
[2026-10-25 01:20:36,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:36,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:20:37,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:37,114.114 INFO    ] No camera update needed
[2026-10-25 01:20:37,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:20:37,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:20:37,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:20:37,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:20:39,171.171 INFO    ] ================================================
[2026-10-25 01:20:39,186.186 INFO    ] Launching Daemon at Sun Oct 25 01:20:39 IST 2026
[2026-10-25 01:20:39,197.197 INFO    ] ================================================
[2026-10-25 01:20:39,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:20:39
[2026-10-25 01:20:40,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:20:40,867.867 INFO    ] Initializing speech engine...
[2026-10-25 01:20:40,878.878 INFO    ] 2026-10-25 01:20:40
[2026-10-25 01:20:41,166.166 INFO    ] 2026-10-25 01:20:41
[2026-10-25 01:20:41,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:20:41,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:20:41,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:20:41,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:20:41,697.697 INFO    ] time= 25/10/2026 01:20:41
[2026-10-25 01:20:41,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:20:41,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:20:41,854.854 INFO    ] No existing commands found in stream
[2026-10-25 01:20:46,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:20:46,873.873 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 01:20:49,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:20:49,988.988 INFO    ] Checking for system updates...
[2026-10-25 01:20:50,029.029 INFO    ] 200
[2026-10-25 01:20:50,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:50,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:50,088.088 INFO    ] No update needed
[2026-10-25 01:20:50,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 01:20:50,123.123 INFO    ] 200
[2026-10-25 01:20:50,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:20:50,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:20:50,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:20:50,221.221 INFO    ] No camera update needed
[2026-10-25 01:20:50,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:20:50,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:20:50,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:20:50,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:20:52,276.276 INFO    ] ================================================
[2026-10-25 01:20:52,292.292 INFO    ] Launching Daemon at Sun Oct 25 01:20:52 IST 2026
[2026-10-25 01:20:52,302.302 INFO    ] ================================================
[2026-10-25 01:20:52,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:20:52
[2026-10-25 01:20:53,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:20:53,778.778 INFO    ] Initializing speech engine...
[2026-10-25 01:20:53,785.785 INFO    ] 2026-10-25 01:20:53
[2026-10-25 01:20:54,086.086 INFO    ] 2026-10-25 01:20:54
[2026-10-25 01:20:54,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:20:54,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:20:54,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:20:54,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:20:54,474.474 INFO    ] time= 25/10/2026 01:20:54
[2026-10-25 01:20:54,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:20:54,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:20:54,604.604 INFO    ] No existing commands found in stream
[2026-10-25 01:20:59,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:20:59,618.618 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 01:21:03,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:21:03,573.573 INFO    ] Checking for system updates...
[2026-10-25 01:21:03,613.613 INFO    ] 200
[2026-10-25 01:21:03,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:03,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:03,690.690 INFO    ] No update needed
[2026-10-25 01:21:03,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 01:21:03,744.744 INFO    ] 200
[2026-10-25 01:21:03,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:03,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:21:03,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:03,844.844 INFO    ] No camera update needed
[2026-10-25 01:21:03,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:21:03,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:21:03,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:21:03,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:21:05,899.899 INFO    ] ================================================
[2026-10-25 01:21:05,915.915 INFO    ] Launching Daemon at Sun Oct 25 01:21:05 IST 2026
[2026-10-25 01:21:05,926.926 INFO    ] ================================================
[2026-10-25 01:21:06,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:21:06
[2026-10-25 01:21:07,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:21:07,346.346 INFO    ] Initializing speech engine...
[2026-10-25 01:21:07,360.360 INFO    ] 2026-10-25 01:21:07
[2026-10-25 01:21:07,613.613 INFO    ] 2026-10-25 01:21:07
[2026-10-25 01:21:07,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:21:07,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:21:07,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:21:07,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:21:08,018.018 INFO    ] time= 25/10/2026 01:21:08
[2026-10-25 01:21:08,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:21:08,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:21:08,106.106 INFO    ] No existing commands found in stream
[2026-10-25 01:21:13,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:21:13,122.122 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 01:21:17,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:21:17,105.105 INFO    ] Checking for system updates...
[2026-10-25 01:21:17,141.141 INFO    ] 200
[2026-10-25 01:21:17,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:17,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:17,207.207 INFO    ] No update needed
[2026-10-25 01:21:17,209.209 INFO    ] Checking for camera pi updates...
[2026-10-25 01:21:17,247.247 INFO    ] 200
[2026-10-25 01:21:17,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:17,290.290 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:21:17,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:17,347.347 INFO    ] No camera update needed
[2026-10-25 01:21:17,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:21:17,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:21:17,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:21:17,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:21:19,402.402 INFO    ] ================================================
[2026-10-25 01:21:19,419.419 INFO    ] Launching Daemon at Sun Oct 25 01:21:19 IST 2026
[2026-10-25 01:21:19,430.430 INFO    ] ================================================
[2026-10-25 01:21:20,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:21:20
[2026-10-25 01:21:20,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:21:21,052.052 INFO    ] Initializing speech engine...
[2026-10-25 01:21:21,063.063 INFO    ] 2026-10-25 01:21:21
[2026-10-25 01:21:21,348.348 INFO    ] 2026-10-25 01:21:21
[2026-10-25 01:21:21,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:21:21,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:21:21,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:21:21,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:21:21,836.836 INFO    ] time= 25/10/2026 01:21:21
[2026-10-25 01:21:21,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:21:21,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:21:21,979.979 INFO    ] No existing commands found in stream
[2026-10-25 01:21:27,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:21:27,003.003 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 01:21:29,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:21:29,041.041 INFO    ] Checking for system updates...
[2026-10-25 01:21:29,081.081 INFO    ] 200
[2026-10-25 01:21:29,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:29,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:21:29,146.146 INFO    ] No update needed
[2026-10-25 01:21:29,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 01:21:29,182.182 INFO    ] 200
[2026-10-25 01:21:29,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:29,226.226 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:21:29,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:21:29,274.274 INFO    ] No camera update needed
[2026-10-25 01:21:29,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:21:29,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:21:29,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:21:29,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:21:31,329.329 INFO    ] ================================================
[2026-10-25 01:21:31,344.344 INFO    ] Launching Daemon at Sun Oct 25 01:21:31 IST 2026
[2026-10-25 01:21:31,355.355 INFO    ] ================================================
[2026-10-25 01:21:31,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:21:31
[2026-10-25 01:21:32,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:21:32,843.843 INFO    ] Initializing speech engine...
[2026-10-25 01:21:32,860.860 INFO    ] 2026-10-25 01:21:32
[2026-10-25 01:21:33,133.133 INFO    ] 2026-10-25 01:21:33
[2026-10-25 01:21:33,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:21:33,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:21:33,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:21:33,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:21:33,576.576 INFO    ] time= 25/10/2026 01:21:33
[2026-10-25 01:21:33,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:21:33,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:21:33,777.777 INFO    ] No existing commands found in stream
[2026-10-25 01:21:38,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:21:38,817.817 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 01:21:43,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:21:43,108.108 INFO    ] Checking for system updates...
[2026-10-25 01:21:43,144.144 INFO    ] 200
[2026-10-25 01:21:43,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:43,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:43,206.206 INFO    ] No update needed
[2026-10-25 01:21:43,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 01:21:43,242.242 INFO    ] 200
[2026-10-25 01:21:43,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:43,290.290 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:21:43,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:43,338.338 INFO    ] No camera update needed
[2026-10-25 01:21:43,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:21:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:21:43,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:21:43,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:21:45,397.397 INFO    ] ================================================
[2026-10-25 01:21:45,413.413 INFO    ] Launching Daemon at Sun Oct 25 01:21:45 IST 2026
[2026-10-25 01:21:45,424.424 INFO    ] ================================================
[2026-10-25 01:21:46,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:21:46
[2026-10-25 01:21:46,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:21:47,035.035 INFO    ] Initializing speech engine...
[2026-10-25 01:21:47,047.047 INFO    ] 2026-10-25 01:21:47
[2026-10-25 01:21:47,332.332 INFO    ] 2026-10-25 01:21:47
[2026-10-25 01:21:47,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:21:47,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:21:47,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:21:47,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:21:47,871.871 INFO    ] time= 25/10/2026 01:21:47
[2026-10-25 01:21:47,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:21:47,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:21:48,037.037 INFO    ] No existing commands found in stream
[2026-10-25 01:21:53,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:21:53,066.066 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 01:21:56,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:21:56,628.628 INFO    ] Checking for system updates...
[2026-10-25 01:21:56,664.664 INFO    ] 200
[2026-10-25 01:21:56,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:56,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:56,722.722 INFO    ] No update needed
[2026-10-25 01:21:56,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 01:21:56,763.763 INFO    ] 200
[2026-10-25 01:21:56,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:21:56,810.810 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:21:56,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:21:56,859.859 INFO    ] No camera update needed
[2026-10-25 01:21:56,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:21:56,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:21:56,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:21:56,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:21:58,913.913 INFO    ] ================================================
[2026-10-25 01:21:58,928.928 INFO    ] Launching Daemon at Sun Oct 25 01:21:58 IST 2026
[2026-10-25 01:21:58,939.939 INFO    ] ================================================
[2026-10-25 01:21:59,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:21:59
[2026-10-25 01:22:00,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:22:00,357.357 INFO    ] Initializing speech engine...
[2026-10-25 01:22:00,366.366 INFO    ] 2026-10-25 01:22:00
[2026-10-25 01:22:00,619.619 INFO    ] 2026-10-25 01:22:00
[2026-10-25 01:22:00,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:22:00,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:22:00,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:22:01,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:22:01,045.045 INFO    ] time= 25/10/2026 01:22:01
[2026-10-25 01:22:01,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:22:01,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:22:01,227.227 INFO    ] No existing commands found in stream
[2026-10-25 01:22:06,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:22:06,260.260 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 01:22:10,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:22:10,675.675 INFO    ] Checking for system updates...
[2026-10-25 01:22:10,711.711 INFO    ] 200
[2026-10-25 01:22:10,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:10,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:10,771.771 INFO    ] No update needed
[2026-10-25 01:22:10,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 01:22:10,807.807 INFO    ] 200
[2026-10-25 01:22:10,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:10,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:22:10,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:10,899.899 INFO    ] No camera update needed
[2026-10-25 01:22:10,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:22:10,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:22:10,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:22:10,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:22:12,954.954 INFO    ] ================================================
[2026-10-25 01:22:12,969.969 INFO    ] Launching Daemon at Sun Oct 25 01:22:12 IST 2026
[2026-10-25 01:22:14,434.434 INFO    ] ================================================
[2026-10-25 01:22:15,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:22:15
[2026-10-25 01:22:15,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:22:15,884.884 INFO    ] Initializing speech engine...
[2026-10-25 01:22:15,900.900 INFO    ] 2026-10-25 01:22:15
[2026-10-25 01:22:16,153.153 INFO    ] 2026-10-25 01:22:16
[2026-10-25 01:22:16,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:22:16,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:22:16,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:22:16,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:22:16,625.625 INFO    ] time= 25/10/2026 01:22:16
[2026-10-25 01:22:16,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:22:16,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:22:16,782.782 INFO    ] No existing commands found in stream
[2026-10-25 01:22:21,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:22:21,817.817 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 01:22:22,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:22:22,786.786 INFO    ] Checking for system updates...
[2026-10-25 01:22:22,825.825 INFO    ] 200
[2026-10-25 01:22:22,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:22,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:22,889.889 INFO    ] No update needed
[2026-10-25 01:22:22,892.892 INFO    ] Checking for camera pi updates...
[2026-10-25 01:22:22,926.926 INFO    ] 200
[2026-10-25 01:22:22,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:22,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:22:23,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:23,021.021 INFO    ] No camera update needed
[2026-10-25 01:22:23,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:22:23,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:22:23,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:22:23,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:22:25,078.078 INFO    ] ================================================
[2026-10-25 01:22:25,093.093 INFO    ] Launching Daemon at Sun Oct 25 01:22:25 IST 2026
[2026-10-25 01:22:25,103.103 INFO    ] ================================================
[2026-10-25 01:22:25,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:22:25
[2026-10-25 01:22:26,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:22:26,505.505 INFO    ] Initializing speech engine...
[2026-10-25 01:22:26,527.527 INFO    ] 2026-10-25 01:22:26
[2026-10-25 01:22:26,781.781 INFO    ] 2026-10-25 01:22:26
[2026-10-25 01:22:26,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:22:27,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:22:27,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:22:27,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:22:27,160.160 INFO    ] time= 25/10/2026 01:22:27
[2026-10-25 01:22:27,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:22:27,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:22:27,336.336 INFO    ] No existing commands found in stream
[2026-10-25 01:22:32,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:22:32,365.365 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 01:22:36,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:22:36,422.422 INFO    ] Checking for system updates...
[2026-10-25 01:22:36,462.462 INFO    ] 200
[2026-10-25 01:22:36,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:36,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:22:36,526.526 INFO    ] No update needed
[2026-10-25 01:22:36,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 01:22:36,562.562 INFO    ] 200
[2026-10-25 01:22:36,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:36,605.605 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:22:36,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:22:36,661.661 INFO    ] No camera update needed
[2026-10-25 01:22:36,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:22:36,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:22:36,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:22:36,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:22:38,717.717 INFO    ] ================================================
[2026-10-25 01:22:38,732.732 INFO    ] Launching Daemon at Sun Oct 25 01:22:38 IST 2026
[2026-10-25 01:22:38,743.743 INFO    ] ================================================
[2026-10-25 01:22:39,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:22:39
[2026-10-25 01:22:39,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:22:40,137.137 INFO    ] Initializing speech engine...
[2026-10-25 01:22:40,152.152 INFO    ] 2026-10-25 01:22:40
[2026-10-25 01:22:40,417.417 INFO    ] 2026-10-25 01:22:40
[2026-10-25 01:22:40,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:22:40,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:22:40,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:22:40,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:22:40,894.894 INFO    ] time= 25/10/2026 01:22:40
[2026-10-25 01:22:40,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:22:40,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:22:41,097.097 INFO    ] No existing commands found in stream
[2026-10-25 01:22:46,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:22:46,120.120 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 01:22:47,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:22:47,778.778 INFO    ] Checking for system updates...
[2026-10-25 01:22:47,819.819 INFO    ] 200
[2026-10-25 01:22:47,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:47,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:47,878.878 INFO    ] No update needed
[2026-10-25 01:22:47,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 01:22:47,918.918 INFO    ] 200
[2026-10-25 01:22:47,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:22:47,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:22:48,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:22:48,127.127 INFO    ] No camera update needed
[2026-10-25 01:22:48,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:22:48,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:22:48,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:22:48,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:22:50,182.182 INFO    ] ================================================
[2026-10-25 01:22:50,198.198 INFO    ] Launching Daemon at Sun Oct 25 01:22:50 IST 2026
[2026-10-25 01:22:50,209.209 INFO    ] ================================================
[2026-10-25 01:22:50,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:22:50
[2026-10-25 01:22:51,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:22:51,844.844 INFO    ] Initializing speech engine...
[2026-10-25 01:22:51,856.856 INFO    ] 2026-10-25 01:22:51
[2026-10-25 01:22:52,139.139 INFO    ] 2026-10-25 01:22:52
[2026-10-25 01:22:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:22:52,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:22:52,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:22:52,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:22:52,624.624 INFO    ] time= 25/10/2026 01:22:52
[2026-10-25 01:22:52,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:22:52,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:22:52,841.841 INFO    ] No existing commands found in stream
[2026-10-25 01:22:57,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:22:57,863.863 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 01:22:59,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:22:59,950.950 INFO    ] Checking for system updates...
[2026-10-25 01:22:59,994.994 INFO    ] 200
[2026-10-25 01:22:59,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:00,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:00,053.053 INFO    ] No update needed
[2026-10-25 01:23:00,056.056 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:00,089.089 INFO    ] 200
[2026-10-25 01:23:00,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:00,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:00,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:00,195.195 INFO    ] No camera update needed
[2026-10-25 01:23:00,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:00,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:00,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:00,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:02,257.257 INFO    ] ================================================
[2026-10-25 01:23:02,279.279 INFO    ] Launching Daemon at Sun Oct 25 01:23:02 IST 2026
[2026-10-25 01:23:02,296.296 INFO    ] ================================================
[2026-10-25 01:23:02,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:23:02
[2026-10-25 01:23:03,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:23:03,817.817 INFO    ] Initializing speech engine...
[2026-10-25 01:23:03,831.831 INFO    ] 2026-10-25 01:23:03
[2026-10-25 01:23:04,095.095 INFO    ] 2026-10-25 01:23:04
[2026-10-25 01:23:04,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:23:04,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:23:04,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:23:04,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:23:04,648.648 INFO    ] time= 25/10/2026 01:23:04
[2026-10-25 01:23:04,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:23:04,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:23:04,794.794 INFO    ] No existing commands found in stream
[2026-10-25 01:23:09,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:23:09,818.818 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 01:23:11,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:23:11,047.047 INFO    ] Checking for system updates...
[2026-10-25 01:23:11,083.083 INFO    ] 200
[2026-10-25 01:23:11,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:11,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:11,140.140 INFO    ] No update needed
[2026-10-25 01:23:11,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:11,180.180 INFO    ] 200
[2026-10-25 01:23:11,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:11,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:11,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:11,295.295 INFO    ] No camera update needed
[2026-10-25 01:23:11,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:11,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:11,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:11,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:13,352.352 INFO    ] ================================================
[2026-10-25 01:23:13,367.367 INFO    ] Launching Daemon at Sun Oct 25 01:23:13 IST 2026
[2026-10-25 01:23:13,377.377 INFO    ] ================================================
[2026-10-25 01:23:13,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:23:13
[2026-10-25 01:23:14,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:23:14,823.823 INFO    ] Initializing speech engine...
[2026-10-25 01:23:14,842.842 INFO    ] 2026-10-25 01:23:14
[2026-10-25 01:23:15,105.105 INFO    ] 2026-10-25 01:23:15
[2026-10-25 01:23:15,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:23:15,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:23:15,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:23:15,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:23:15,631.631 INFO    ] time= 25/10/2026 01:23:15
[2026-10-25 01:23:15,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:23:15,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:23:15,816.816 INFO    ] No existing commands found in stream
[2026-10-25 01:23:20,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:23:20,836.836 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 01:23:24,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:23:24,303.303 INFO    ] Checking for system updates...
[2026-10-25 01:23:24,340.340 INFO    ] 200
[2026-10-25 01:23:24,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:24,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:24,406.406 INFO    ] No update needed
[2026-10-25 01:23:24,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:24,446.446 INFO    ] 200
[2026-10-25 01:23:24,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:24,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:24,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:24,545.545 INFO    ] No camera update needed
[2026-10-25 01:23:24,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:24,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:24,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:24,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:26,601.601 INFO    ] ================================================
[2026-10-25 01:23:26,616.616 INFO    ] Launching Daemon at Sun Oct 25 01:23:26 IST 2026
[2026-10-25 01:23:26,626.626 INFO    ] ================================================
[2026-10-25 01:23:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:23:27
[2026-10-25 01:23:27,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:23:28,221.221 INFO    ] Initializing speech engine...
[2026-10-25 01:23:28,231.231 INFO    ] 2026-10-25 01:23:28
[2026-10-25 01:23:28,503.503 INFO    ] 2026-10-25 01:23:28
[2026-10-25 01:23:28,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:23:28,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:23:28,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:23:28,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:23:29,011.011 INFO    ] time= 25/10/2026 01:23:28
[2026-10-25 01:23:29,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:23:29,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:23:29,185.185 INFO    ] No existing commands found in stream
[2026-10-25 01:23:34,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:23:34,216.216 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 01:23:34,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:23:34,701.701 INFO    ] Checking for system updates...
[2026-10-25 01:23:34,742.742 INFO    ] 200
[2026-10-25 01:23:34,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:34,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:34,800.800 INFO    ] No update needed
[2026-10-25 01:23:34,803.803 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:34,854.854 INFO    ] 200
[2026-10-25 01:23:34,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:34,898.898 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:34,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:34,951.951 INFO    ] No camera update needed
[2026-10-25 01:23:34,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:34,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:34,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:34,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:37,005.005 INFO    ] ================================================
[2026-10-25 01:23:37,020.020 INFO    ] Launching Daemon at Sun Oct 25 01:23:37 IST 2026
[2026-10-25 01:23:37,032.032 INFO    ] ================================================
[2026-10-25 01:23:37,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:23:37
[2026-10-25 01:23:38,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:23:38,447.447 INFO    ] Initializing speech engine...
[2026-10-25 01:23:38,463.463 INFO    ] 2026-10-25 01:23:38
[2026-10-25 01:23:38,748.748 INFO    ] 2026-10-25 01:23:38
[2026-10-25 01:23:38,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:23:39,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:23:39,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:23:39,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:23:39,169.169 INFO    ] time= 25/10/2026 01:23:39
[2026-10-25 01:23:39,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:23:39,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:23:39,254.254 INFO    ] No existing commands found in stream
[2026-10-25 01:23:44,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:23:44,269.269 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 01:23:46,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:23:46,082.082 INFO    ] Checking for system updates...
[2026-10-25 01:23:46,123.123 INFO    ] 200
[2026-10-25 01:23:46,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:46,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:46,188.188 INFO    ] No update needed
[2026-10-25 01:23:46,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:46,228.228 INFO    ] 200
[2026-10-25 01:23:46,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:46,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:46,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:23:46,321.321 INFO    ] No camera update needed
[2026-10-25 01:23:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:46,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:46,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:46,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:48,375.375 INFO    ] ================================================
[2026-10-25 01:23:48,390.390 INFO    ] Launching Daemon at Sun Oct 25 01:23:48 IST 2026
[2026-10-25 01:23:48,401.401 INFO    ] ================================================
[2026-10-25 01:23:48,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:23:48
[2026-10-25 01:23:49,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:23:49,814.814 INFO    ] Initializing speech engine...
[2026-10-25 01:23:49,822.822 INFO    ] 2026-10-25 01:23:49
[2026-10-25 01:23:50,089.089 INFO    ] 2026-10-25 01:23:50
[2026-10-25 01:23:50,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:23:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:23:50,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:23:50,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:23:50,581.581 INFO    ] time= 25/10/2026 01:23:50
[2026-10-25 01:23:50,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:23:50,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:23:50,776.776 INFO    ] No existing commands found in stream
[2026-10-25 01:23:55,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:23:55,803.803 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 01:23:57,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:23:57,667.667 INFO    ] Checking for system updates...
[2026-10-25 01:23:57,709.709 INFO    ] 200
[2026-10-25 01:23:57,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:57,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:57,775.775 INFO    ] No update needed
[2026-10-25 01:23:57,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 01:23:57,812.812 INFO    ] 200
[2026-10-25 01:23:57,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:23:57,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:23:57,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:23:57,907.907 INFO    ] No camera update needed
[2026-10-25 01:23:57,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:23:57,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:23:57,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:23:57,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:23:59,969.969 INFO    ] ================================================
[2026-10-25 01:23:59,984.984 INFO    ] Launching Daemon at Sun Oct 25 01:23:59 IST 2026
[2026-10-25 01:24:00,995.995 INFO    ] ================================================
[2026-10-25 01:24:00,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:00
[2026-10-25 01:24:01,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:01,725.725 INFO    ] Initializing speech engine...
[2026-10-25 01:24:01,734.734 INFO    ] 2026-10-25 01:24:01
[2026-10-25 01:24:02,032.032 INFO    ] 2026-10-25 01:24:02
[2026-10-25 01:24:02,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:02,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:02,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:02,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:02,505.505 INFO    ] time= 25/10/2026 01:24:02
[2026-10-25 01:24:02,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:02,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:02,694.694 INFO    ] No existing commands found in stream
[2026-10-25 01:24:07,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:24:07,728.728 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 01:24:11,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:24:11,425.425 INFO    ] Checking for system updates...
[2026-10-25 01:24:11,465.465 INFO    ] 200
[2026-10-25 01:24:11,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:11,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:11,530.530 INFO    ] No update needed
[2026-10-25 01:24:11,532.532 INFO    ] Checking for camera pi updates...
[2026-10-25 01:24:11,568.568 INFO    ] 200
[2026-10-25 01:24:11,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:11,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:24:11,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:11,661.661 INFO    ] No camera update needed
[2026-10-25 01:24:11,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:24:11,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:24:11,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:24:11,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:24:13,716.716 INFO    ] ================================================
[2026-10-25 01:24:13,731.731 INFO    ] Launching Daemon at Sun Oct 25 01:24:13 IST 2026
[2026-10-25 01:24:13,741.741 INFO    ] ================================================
[2026-10-25 01:24:14,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:14
[2026-10-25 01:24:14,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:15,197.197 INFO    ] Initializing speech engine...
[2026-10-25 01:24:15,207.207 INFO    ] 2026-10-25 01:24:15
[2026-10-25 01:24:15,495.495 INFO    ] 2026-10-25 01:24:15
[2026-10-25 01:24:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:15,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:15,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:15,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:15,972.972 INFO    ] time= 25/10/2026 01:24:15
[2026-10-25 01:24:16,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:16,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:16,156.156 INFO    ] No existing commands found in stream
[2026-10-25 01:24:21,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:24:21,176.176 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 01:24:22,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:24:22,134.134 INFO    ] Checking for system updates...
[2026-10-25 01:24:22,175.175 INFO    ] 200
[2026-10-25 01:24:22,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:22,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:22,246.246 INFO    ] No update needed
[2026-10-25 01:24:22,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 01:24:22,282.282 INFO    ] 200
[2026-10-25 01:24:22,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:22,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:24:22,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:22,375.375 INFO    ] No camera update needed
[2026-10-25 01:24:22,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:24:22,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:24:22,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:24:22,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:24:24,430.430 INFO    ] ================================================
[2026-10-25 01:24:24,445.445 INFO    ] Launching Daemon at Sun Oct 25 01:24:24 IST 2026
[2026-10-25 01:24:24,456.456 INFO    ] ================================================
[2026-10-25 01:24:25,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:25
[2026-10-25 01:24:25,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:25,915.915 INFO    ] Initializing speech engine...
[2026-10-25 01:24:25,922.922 INFO    ] 2026-10-25 01:24:25
[2026-10-25 01:24:26,183.183 INFO    ] 2026-10-25 01:24:26
[2026-10-25 01:24:26,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:26,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:26,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:26,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:26,694.694 INFO    ] time= 25/10/2026 01:24:26
[2026-10-25 01:24:26,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:26,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:26,875.875 INFO    ] No existing commands found in stream
[2026-10-25 01:24:31,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:24:31,890.890 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 01:24:33,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:24:33,354.354 INFO    ] Checking for system updates...
[2026-10-25 01:24:33,396.396 INFO    ] 200
[2026-10-25 01:24:33,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:33,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:24:33,453.453 INFO    ] No update needed
[2026-10-25 01:24:33,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 01:24:33,489.489 INFO    ] 200
[2026-10-25 01:24:33,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:33,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:24:33,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:24:33,600.600 INFO    ] No camera update needed
[2026-10-25 01:24:33,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:24:33,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:24:33,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:24:33,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:24:35,656.656 INFO    ] ================================================
[2026-10-25 01:24:35,671.671 INFO    ] Launching Daemon at Sun Oct 25 01:24:35 IST 2026
[2026-10-25 01:24:35,681.681 INFO    ] ================================================
[2026-10-25 01:24:36,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:36
[2026-10-25 01:24:37,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:37,317.317 INFO    ] Initializing speech engine...
[2026-10-25 01:24:37,332.332 INFO    ] 2026-10-25 01:24:37
[2026-10-25 01:24:37,621.621 INFO    ] 2026-10-25 01:24:37
[2026-10-25 01:24:37,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:37,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:37,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:38,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:38,169.169 INFO    ] time= 25/10/2026 01:24:38
[2026-10-25 01:24:38,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:38,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:38,321.321 INFO    ] No existing commands found in stream
[2026-10-25 01:24:43,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:24:43,342.342 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 01:24:44,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:24:44,016.016 INFO    ] Checking for system updates...
[2026-10-25 01:24:44,059.059 INFO    ] 200
[2026-10-25 01:24:44,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:44,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:44,125.125 INFO    ] No update needed
[2026-10-25 01:24:44,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 01:24:44,166.166 INFO    ] 200
[2026-10-25 01:24:44,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:44,211.211 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:24:44,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:44,268.268 INFO    ] No camera update needed
[2026-10-25 01:24:44,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:24:44,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:24:44,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:24:44,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:24:46,322.322 INFO    ] ================================================
[2026-10-25 01:24:46,338.338 INFO    ] Launching Daemon at Sun Oct 25 01:24:46 IST 2026
[2026-10-25 01:24:46,348.348 INFO    ] ================================================
[2026-10-25 01:24:46,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:46
[2026-10-25 01:24:47,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:47,765.765 INFO    ] Initializing speech engine...
[2026-10-25 01:24:47,784.784 INFO    ] 2026-10-25 01:24:47
[2026-10-25 01:24:48,029.029 INFO    ] 2026-10-25 01:24:48
[2026-10-25 01:24:48,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:48,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:48,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:48,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:48,402.402 INFO    ] time= 25/10/2026 01:24:48
[2026-10-25 01:24:48,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:48,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:48,577.577 INFO    ] No existing commands found in stream
[2026-10-25 01:24:53,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:24:53,605.605 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 01:24:54,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:24:54,391.391 INFO    ] Checking for system updates...
[2026-10-25 01:24:54,431.431 INFO    ] 200
[2026-10-25 01:24:54,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:54,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:54,495.495 INFO    ] No update needed
[2026-10-25 01:24:54,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 01:24:54,532.532 INFO    ] 200
[2026-10-25 01:24:54,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:24:54,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:24:54,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:24:54,732.732 INFO    ] No camera update needed
[2026-10-25 01:24:54,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:24:54,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:24:54,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:24:54,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:24:56,790.790 INFO    ] ================================================
[2026-10-25 01:24:56,805.805 INFO    ] Launching Daemon at Sun Oct 25 01:24:56 IST 2026
[2026-10-25 01:24:56,815.815 INFO    ] ================================================
[2026-10-25 01:24:57,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:24:57
[2026-10-25 01:24:58,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:24:58,259.259 INFO    ] Initializing speech engine...
[2026-10-25 01:24:58,266.266 INFO    ] 2026-10-25 01:24:58
[2026-10-25 01:24:58,565.565 INFO    ] 2026-10-25 01:24:58
[2026-10-25 01:24:58,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:24:58,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:24:58,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:24:59,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:24:59,065.065 INFO    ] time= 25/10/2026 01:24:59
[2026-10-25 01:24:59,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:24:59,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:24:59,269.269 INFO    ] No existing commands found in stream
[2026-10-25 01:25:04,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:25:04,284.284 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 01:25:04,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:25:04,741.741 INFO    ] Checking for system updates...
[2026-10-25 01:25:04,777.777 INFO    ] 200
[2026-10-25 01:25:04,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:04,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:25:04,843.843 INFO    ] No update needed
[2026-10-25 01:25:04,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 01:25:04,883.883 INFO    ] 200
[2026-10-25 01:25:04,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:04,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:25:04,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:25:04,980.980 INFO    ] No camera update needed
[2026-10-25 01:25:04,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:25:04,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:25:04,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:25:04,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:25:07,037.037 INFO    ] ================================================
[2026-10-25 01:25:07,056.056 INFO    ] Launching Daemon at Sun Oct 25 01:25:07 IST 2026
[2026-10-25 01:25:07,067.067 INFO    ] ================================================
[2026-10-25 01:25:07,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:25:07
[2026-10-25 01:25:08,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:25:08,718.718 INFO    ] Initializing speech engine...
[2026-10-25 01:25:08,725.725 INFO    ] 2026-10-25 01:25:08
[2026-10-25 01:25:09,010.010 INFO    ] 2026-10-25 01:25:09
[2026-10-25 01:25:09,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:25:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:25:09,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:25:09,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:25:09,542.542 INFO    ] time= 25/10/2026 01:25:09
[2026-10-25 01:25:09,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:25:09,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:25:09,698.698 INFO    ] No existing commands found in stream
[2026-10-25 01:25:14,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:25:14,729.729 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 01:25:18,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:25:18,070.070 INFO    ] Checking for system updates...
[2026-10-25 01:25:18,112.112 INFO    ] 200
[2026-10-25 01:25:18,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:18,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:18,186.186 INFO    ] No update needed
[2026-10-25 01:25:18,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 01:25:18,228.228 INFO    ] 200
[2026-10-25 01:25:18,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:18,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:25:18,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:18,345.345 INFO    ] No camera update needed
[2026-10-25 01:25:18,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:25:18,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:25:18,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:25:18,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:25:20,405.405 INFO    ] ================================================
[2026-10-25 01:25:20,420.420 INFO    ] Launching Daemon at Sun Oct 25 01:25:20 IST 2026
[2026-10-25 01:25:20,430.430 INFO    ] ================================================
[2026-10-25 01:25:21,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:25:21
[2026-10-25 01:25:21,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:25:21,879.879 INFO    ] Initializing speech engine...
[2026-10-25 01:25:21,894.894 INFO    ] 2026-10-25 01:25:21
[2026-10-25 01:25:22,188.188 INFO    ] 2026-10-25 01:25:22
[2026-10-25 01:25:22,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:25:22,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:25:22,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:25:22,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:25:22,638.638 INFO    ] time= 25/10/2026 01:25:22
[2026-10-25 01:25:22,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:25:22,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:25:22,816.816 INFO    ] No existing commands found in stream
[2026-10-25 01:25:27,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:25:27,831.831 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 01:25:30,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:25:30,824.824 INFO    ] Checking for system updates...
[2026-10-25 01:25:30,861.861 INFO    ] 200
[2026-10-25 01:25:30,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:30,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:30,928.928 INFO    ] No update needed
[2026-10-25 01:25:30,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 01:25:30,968.968 INFO    ] 200
[2026-10-25 01:25:30,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:31,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:25:31,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:31,064.064 INFO    ] No camera update needed
[2026-10-25 01:25:31,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:25:31,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:25:31,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:25:31,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:25:33,120.120 INFO    ] ================================================
[2026-10-25 01:25:33,136.136 INFO    ] Launching Daemon at Sun Oct 25 01:25:33 IST 2026
[2026-10-25 01:25:33,146.146 INFO    ] ================================================
[2026-10-25 01:25:33,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:25:33
[2026-10-25 01:25:34,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:25:34,591.591 INFO    ] Initializing speech engine...
[2026-10-25 01:25:34,598.598 INFO    ] 2026-10-25 01:25:34
[2026-10-25 01:25:34,870.870 INFO    ] 2026-10-25 01:25:34
[2026-10-25 01:25:34,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:25:35,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:25:35,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:25:35,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:25:35,410.410 INFO    ] time= 25/10/2026 01:25:35
[2026-10-25 01:25:35,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:25:35,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:25:35,549.549 INFO    ] No existing commands found in stream
[2026-10-25 01:25:40,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:25:40,576.576 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 01:25:41,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:25:41,364.364 INFO    ] Checking for system updates...
[2026-10-25 01:25:41,405.405 INFO    ] 200
[2026-10-25 01:25:41,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:41,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:25:41,472.472 INFO    ] No update needed
[2026-10-25 01:25:41,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 01:25:41,508.508 INFO    ] 200
[2026-10-25 01:25:41,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:41,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:25:41,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:25:41,609.609 INFO    ] No camera update needed
[2026-10-25 01:25:41,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:25:41,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:25:41,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:25:41,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:25:43,665.665 INFO    ] ================================================
[2026-10-25 01:25:43,680.680 INFO    ] Launching Daemon at Sun Oct 25 01:25:43 IST 2026
[2026-10-25 01:25:43,691.691 INFO    ] ================================================
[2026-10-25 01:25:44,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:25:44
[2026-10-25 01:25:45,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:25:45,362.362 INFO    ] Initializing speech engine...
[2026-10-25 01:25:45,368.368 INFO    ] 2026-10-25 01:25:45
[2026-10-25 01:25:45,658.658 INFO    ] 2026-10-25 01:25:45
[2026-10-25 01:25:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:25:45,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:25:45,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:25:46,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:25:46,188.188 INFO    ] time= 25/10/2026 01:25:46
[2026-10-25 01:25:46,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:25:46,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:25:46,354.354 INFO    ] No existing commands found in stream
[2026-10-25 01:25:51,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:25:51,387.387 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 01:25:55,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:25:55,152.152 INFO    ] Checking for system updates...
[2026-10-25 01:25:55,195.195 INFO    ] 200
[2026-10-25 01:25:55,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:55,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:55,265.265 INFO    ] No update needed
[2026-10-25 01:25:55,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 01:25:55,307.307 INFO    ] 200
[2026-10-25 01:25:55,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:25:55,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:25:55,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:25:55,409.409 INFO    ] No camera update needed
[2026-10-25 01:25:55,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:25:55,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:25:55,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:25:55,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:25:57,468.468 INFO    ] ================================================
[2026-10-25 01:25:57,483.483 INFO    ] Launching Daemon at Sun Oct 25 01:25:57 IST 2026
[2026-10-25 01:25:57,494.494 INFO    ] ================================================
[2026-10-25 01:25:58,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:25:58
[2026-10-25 01:25:58,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:25:59,140.140 INFO    ] Initializing speech engine...
[2026-10-25 01:25:59,148.148 INFO    ] 2026-10-25 01:25:59
[2026-10-25 01:25:59,467.467 INFO    ] 2026-10-25 01:25:59
[2026-10-25 01:25:59,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:25:59,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:25:59,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:25:59,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:25:59,975.975 INFO    ] time= 25/10/2026 01:25:59
[2026-10-25 01:25:59,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:26:00,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:26:00,130.130 INFO    ] No existing commands found in stream
[2026-10-25 01:26:05,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:26:05,154.154 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 01:26:06,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:26:06,843.843 INFO    ] Checking for system updates...
[2026-10-25 01:26:06,885.885 INFO    ] 200
[2026-10-25 01:26:06,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:06,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:06,952.952 INFO    ] No update needed
[2026-10-25 01:26:06,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 01:26:06,991.991 INFO    ] 200
[2026-10-25 01:26:06,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:07,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:26:07,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:07,102.102 INFO    ] No camera update needed
[2026-10-25 01:26:07,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:26:07,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:26:07,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:26:07,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:26:09,160.160 INFO    ] ================================================
[2026-10-25 01:26:09,175.175 INFO    ] Launching Daemon at Sun Oct 25 01:26:09 IST 2026
[2026-10-25 01:26:09,186.186 INFO    ] ================================================
[2026-10-25 01:26:09,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:26:09
[2026-10-25 01:26:10,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:26:10,653.653 INFO    ] Initializing speech engine...
[2026-10-25 01:26:10,661.661 INFO    ] 2026-10-25 01:26:10
[2026-10-25 01:26:10,941.941 INFO    ] 2026-10-25 01:26:10
[2026-10-25 01:26:11,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:26:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:26:11,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:26:11,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:26:11,433.433 INFO    ] time= 25/10/2026 01:26:11
[2026-10-25 01:26:11,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:26:11,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:26:11,641.641 INFO    ] No existing commands found in stream
[2026-10-25 01:26:16,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:26:16,667.667 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 01:26:19,295.295 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:26:19,298.298 INFO    ] Checking for system updates...
[2026-10-25 01:26:19,340.340 INFO    ] 200
[2026-10-25 01:26:19,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:19,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:19,408.408 INFO    ] No update needed
[2026-10-25 01:26:19,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 01:26:19,450.450 INFO    ] 200
[2026-10-25 01:26:19,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:19,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:26:19,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:19,549.549 INFO    ] No camera update needed
[2026-10-25 01:26:19,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:26:19,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:26:19,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:26:19,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:26:21,609.609 INFO    ] ================================================
[2026-10-25 01:26:21,624.624 INFO    ] Launching Daemon at Sun Oct 25 01:26:21 IST 2026
[2026-10-25 01:26:21,640.640 INFO    ] ================================================
[2026-10-25 01:26:22,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:26:22
[2026-10-25 01:26:22,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:26:23,287.287 INFO    ] Initializing speech engine...
[2026-10-25 01:26:23,301.301 INFO    ] 2026-10-25 01:26:23
[2026-10-25 01:26:23,615.615 INFO    ] 2026-10-25 01:26:23
[2026-10-25 01:26:23,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:26:23,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:26:23,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:26:24,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:26:24,136.136 INFO    ] time= 25/10/2026 01:26:24
[2026-10-25 01:26:24,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:26:24,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:26:24,295.295 INFO    ] No existing commands found in stream
[2026-10-25 01:26:29,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:26:29,311.311 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 01:26:30,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:26:30,178.178 INFO    ] Checking for system updates...
[2026-10-25 01:26:30,216.216 INFO    ] 200
[2026-10-25 01:26:30,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:30,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:30,284.284 INFO    ] No update needed
[2026-10-25 01:26:30,286.286 INFO    ] Checking for camera pi updates...
[2026-10-25 01:26:30,322.322 INFO    ] 200
[2026-10-25 01:26:30,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:30,372.372 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:26:30,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:30,424.424 INFO    ] No camera update needed
[2026-10-25 01:26:30,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:26:30,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:26:30,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:26:30,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:26:32,484.484 INFO    ] ================================================
[2026-10-25 01:26:32,500.500 INFO    ] Launching Daemon at Sun Oct 25 01:26:32 IST 2026
[2026-10-25 01:26:32,512.512 INFO    ] ================================================
[2026-10-25 01:26:33,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:26:33
[2026-10-25 01:26:33,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:26:33,977.977 INFO    ] Initializing speech engine...
[2026-10-25 01:26:33,985.985 INFO    ] 2026-10-25 01:26:33
[2026-10-25 01:26:34,284.284 INFO    ] 2026-10-25 01:26:34
[2026-10-25 01:26:34,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:26:34,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:26:34,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:26:34,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:26:34,781.781 INFO    ] time= 25/10/2026 01:26:34
[2026-10-25 01:26:34,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:26:34,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:26:34,937.937 INFO    ] No existing commands found in stream
[2026-10-25 01:26:39,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:26:39,951.951 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 01:26:42,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:26:42,755.755 INFO    ] Checking for system updates...
[2026-10-25 01:26:42,791.791 INFO    ] 200
[2026-10-25 01:26:42,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:42,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:42,850.850 INFO    ] No update needed
[2026-10-25 01:26:42,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 01:26:42,886.886 INFO    ] 200
[2026-10-25 01:26:42,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:42,930.930 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:26:42,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:42,980.980 INFO    ] No camera update needed
[2026-10-25 01:26:42,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:26:42,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:26:42,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:26:42,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:26:45,035.035 INFO    ] ================================================
[2026-10-25 01:26:45,049.049 INFO    ] Launching Daemon at Sun Oct 25 01:26:45 IST 2026
[2026-10-25 01:26:45,060.060 INFO    ] ================================================
[2026-10-25 01:26:45,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:26:45
[2026-10-25 01:26:46,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:26:46,509.509 INFO    ] Initializing speech engine...
[2026-10-25 01:26:46,527.527 INFO    ] 2026-10-25 01:26:46
[2026-10-25 01:26:46,802.802 INFO    ] 2026-10-25 01:26:46
[2026-10-25 01:26:46,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:26:47,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:26:47,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:26:47,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:26:47,304.304 INFO    ] time= 25/10/2026 01:26:47
[2026-10-25 01:26:47,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:26:47,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:26:47,482.482 INFO    ] No existing commands found in stream
[2026-10-25 01:26:52,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:26:52,497.497 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 01:26:55,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:26:55,298.298 INFO    ] Checking for system updates...
[2026-10-25 01:26:55,341.341 INFO    ] 200
[2026-10-25 01:26:55,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:55,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:55,402.402 INFO    ] No update needed
[2026-10-25 01:26:55,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 01:26:55,440.440 INFO    ] 200
[2026-10-25 01:26:55,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:26:55,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:26:55,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:26:55,544.544 INFO    ] No camera update needed
[2026-10-25 01:26:55,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:26:55,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:26:55,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:26:55,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:26:57,604.604 INFO    ] ================================================
[2026-10-25 01:26:57,619.619 INFO    ] Launching Daemon at Sun Oct 25 01:26:57 IST 2026
[2026-10-25 01:26:57,630.630 INFO    ] ================================================
[2026-10-25 01:26:58,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:26:58
[2026-10-25 01:26:58,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:26:59,217.217 INFO    ] Initializing speech engine...
[2026-10-25 01:26:59,229.229 INFO    ] 2026-10-25 01:26:59
[2026-10-25 01:26:59,496.496 INFO    ] 2026-10-25 01:26:59
[2026-10-25 01:26:59,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:26:59,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:26:59,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:26:59,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:26:59,993.993 INFO    ] time= 25/10/2026 01:26:59
[2026-10-25 01:27:00,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:00,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:00,181.181 INFO    ] No existing commands found in stream
[2026-10-25 01:27:05,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:27:05,211.211 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 01:27:06,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:27:06,330.330 INFO    ] Checking for system updates...
[2026-10-25 01:27:06,366.366 INFO    ] 200
[2026-10-25 01:27:06,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:06,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:06,424.424 INFO    ] No update needed
[2026-10-25 01:27:06,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 01:27:06,459.459 INFO    ] 200
[2026-10-25 01:27:06,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:06,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:27:06,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:06,553.553 INFO    ] No camera update needed
[2026-10-25 01:27:06,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:27:06,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:27:06,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:27:06,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:27:08,607.607 INFO    ] ================================================
[2026-10-25 01:27:08,622.622 INFO    ] Launching Daemon at Sun Oct 25 01:27:08 IST 2026
[2026-10-25 01:27:08,632.632 INFO    ] ================================================
[2026-10-25 01:27:09,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:27:09
[2026-10-25 01:27:09,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:27:10,086.086 INFO    ] Initializing speech engine...
[2026-10-25 01:27:10,095.095 INFO    ] 2026-10-25 01:27:10
[2026-10-25 01:27:10,357.357 INFO    ] 2026-10-25 01:27:10
[2026-10-25 01:27:10,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:27:10,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:27:10,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:27:10,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:27:10,839.839 INFO    ] time= 25/10/2026 01:27:10
[2026-10-25 01:27:10,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:10,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:10,977.977 INFO    ] No existing commands found in stream
[2026-10-25 01:27:16,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:27:16,012.012 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 01:27:19,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:27:19,436.436 INFO    ] Checking for system updates...
[2026-10-25 01:27:19,472.472 INFO    ] 200
[2026-10-25 01:27:19,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:19,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:27:19,529.529 INFO    ] No update needed
[2026-10-25 01:27:19,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 01:27:19,565.565 INFO    ] 200
[2026-10-25 01:27:19,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:19,608.608 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:27:19,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:27:19,667.667 INFO    ] No camera update needed
[2026-10-25 01:27:19,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:27:19,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:27:19,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:27:19,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:27:21,721.721 INFO    ] ================================================
[2026-10-25 01:27:21,736.736 INFO    ] Launching Daemon at Sun Oct 25 01:27:21 IST 2026
[2026-10-25 01:27:21,746.746 INFO    ] ================================================
[2026-10-25 01:27:22,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:27:22
[2026-10-25 01:27:22,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:27:23,219.219 INFO    ] Initializing speech engine...
[2026-10-25 01:27:23,228.228 INFO    ] 2026-10-25 01:27:23
[2026-10-25 01:27:23,483.483 INFO    ] 2026-10-25 01:27:23
[2026-10-25 01:27:23,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:27:23,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:27:23,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:27:23,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:27:23,971.971 INFO    ] time= 25/10/2026 01:27:23
[2026-10-25 01:27:24,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:24,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:24,175.175 INFO    ] No existing commands found in stream
[2026-10-25 01:27:29,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:27:29,199.199 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 01:27:30,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:27:30,931.931 INFO    ] Checking for system updates...
[2026-10-25 01:27:30,967.967 INFO    ] 200
[2026-10-25 01:27:30,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:31,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:31,025.025 INFO    ] No update needed
[2026-10-25 01:27:31,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 01:27:31,061.061 INFO    ] 200
[2026-10-25 01:27:31,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:31,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:27:31,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:31,165.165 INFO    ] No camera update needed
[2026-10-25 01:27:31,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:27:31,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:27:31,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:27:31,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:27:33,220.220 INFO    ] ================================================
[2026-10-25 01:27:33,235.235 INFO    ] Launching Daemon at Sun Oct 25 01:27:33 IST 2026
[2026-10-25 01:27:33,245.245 INFO    ] ================================================
[2026-10-25 01:27:33,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:27:33
[2026-10-25 01:27:34,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:27:34,697.697 INFO    ] Initializing speech engine...
[2026-10-25 01:27:34,706.706 INFO    ] 2026-10-25 01:27:34
[2026-10-25 01:27:34,954.954 INFO    ] 2026-10-25 01:27:34
[2026-10-25 01:27:35,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:27:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:27:35,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:27:35,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:27:35,445.445 INFO    ] time= 25/10/2026 01:27:35
[2026-10-25 01:27:35,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:35,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:35,649.649 INFO    ] No existing commands found in stream
[2026-10-25 01:27:40,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:27:40,676.676 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 01:27:41,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:27:41,643.643 INFO    ] Checking for system updates...
[2026-10-25 01:27:41,679.679 INFO    ] 200
[2026-10-25 01:27:41,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:41,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:41,737.737 INFO    ] No update needed
[2026-10-25 01:27:41,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 01:27:41,773.773 INFO    ] 200
[2026-10-25 01:27:41,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:41,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:27:41,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:41,851.851 INFO    ] No camera update needed
[2026-10-25 01:27:41,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:27:41,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:27:41,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:27:41,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:27:43,906.906 INFO    ] ================================================
[2026-10-25 01:27:43,921.921 INFO    ] Launching Daemon at Sun Oct 25 01:27:43 IST 2026
[2026-10-25 01:27:43,932.932 INFO    ] ================================================
[2026-10-25 01:27:44,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:27:44
[2026-10-25 01:27:45,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:27:45,351.351 INFO    ] Initializing speech engine...
[2026-10-25 01:27:45,359.359 INFO    ] 2026-10-25 01:27:45
[2026-10-25 01:27:45,607.607 INFO    ] 2026-10-25 01:27:45
[2026-10-25 01:27:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:27:45,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:27:45,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:27:46,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:27:46,072.072 INFO    ] time= 25/10/2026 01:27:46
[2026-10-25 01:27:46,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:46,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:46,228.228 INFO    ] No existing commands found in stream
[2026-10-25 01:27:51,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:27:51,257.257 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 01:27:52,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:27:52,758.758 INFO    ] Checking for system updates...
[2026-10-25 01:27:52,794.794 INFO    ] 200
[2026-10-25 01:27:52,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:52,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:52,856.856 INFO    ] No update needed
[2026-10-25 01:27:52,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 01:27:52,893.893 INFO    ] 200
[2026-10-25 01:27:52,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:27:52,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:27:52,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:27:52,989.989 INFO    ] No camera update needed
[2026-10-25 01:27:52,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:27:52,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:27:52,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:27:53,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:27:55,042.042 INFO    ] ================================================
[2026-10-25 01:27:55,057.057 INFO    ] Launching Daemon at Sun Oct 25 01:27:55 IST 2026
[2026-10-25 01:27:55,068.068 INFO    ] ================================================
[2026-10-25 01:27:55,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:27:55
[2026-10-25 01:27:56,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:27:56,460.460 INFO    ] Initializing speech engine...
[2026-10-25 01:27:56,482.482 INFO    ] 2026-10-25 01:27:56
[2026-10-25 01:27:56,733.733 INFO    ] 2026-10-25 01:27:56
[2026-10-25 01:27:56,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:27:57,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:27:57,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:27:57,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:27:57,232.232 INFO    ] time= 25/10/2026 01:27:57
[2026-10-25 01:27:57,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:27:57,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:27:57,419.419 INFO    ] No existing commands found in stream
[2026-10-25 01:28:02,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:28:02,447.447 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 01:28:05,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:28:05,857.857 INFO    ] Checking for system updates...
[2026-10-25 01:28:05,893.893 INFO    ] 200
[2026-10-25 01:28:05,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:05,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:05,951.951 INFO    ] No update needed
[2026-10-25 01:28:05,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 01:28:05,989.989 INFO    ] 200
[2026-10-25 01:28:05,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:06,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:28:06,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:06,094.094 INFO    ] No camera update needed
[2026-10-25 01:28:06,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:28:06,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:28:06,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:28:06,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:28:08,149.149 INFO    ] ================================================
[2026-10-25 01:28:08,164.164 INFO    ] Launching Daemon at Sun Oct 25 01:28:08 IST 2026
[2026-10-25 01:28:08,174.174 INFO    ] ================================================
[2026-10-25 01:28:08,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:28:08
[2026-10-25 01:28:09,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:28:09,627.627 INFO    ] Initializing speech engine...
[2026-10-25 01:28:09,636.636 INFO    ] 2026-10-25 01:28:09
[2026-10-25 01:28:09,884.884 INFO    ] 2026-10-25 01:28:09
[2026-10-25 01:28:09,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:28:10,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:28:10,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:28:10,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:28:10,358.358 INFO    ] time= 25/10/2026 01:28:10
[2026-10-25 01:28:10,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:28:10,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:28:10,572.572 INFO    ] No existing commands found in stream
[2026-10-25 01:28:15,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:28:15,603.603 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 01:28:18,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:28:18,457.457 INFO    ] Checking for system updates...
[2026-10-25 01:28:18,493.493 INFO    ] 200
[2026-10-25 01:28:18,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:18,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:28:18,551.551 INFO    ] No update needed
[2026-10-25 01:28:18,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 01:28:18,591.591 INFO    ] 200
[2026-10-25 01:28:18,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:18,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:28:18,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:28:18,682.682 INFO    ] No camera update needed
[2026-10-25 01:28:18,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:28:18,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:28:18,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:28:18,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:28:20,737.737 INFO    ] ================================================
[2026-10-25 01:28:20,752.752 INFO    ] Launching Daemon at Sun Oct 25 01:28:20 IST 2026
[2026-10-25 01:28:20,762.762 INFO    ] ================================================
[2026-10-25 01:28:21,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:28:21
[2026-10-25 01:28:21,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:28:22,187.187 INFO    ] Initializing speech engine...
[2026-10-25 01:28:22,195.195 INFO    ] 2026-10-25 01:28:22
[2026-10-25 01:28:22,452.452 INFO    ] 2026-10-25 01:28:22
[2026-10-25 01:28:22,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:28:22,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:28:22,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:28:22,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:28:22,927.927 INFO    ] time= 25/10/2026 01:28:22
[2026-10-25 01:28:22,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:28:23,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:28:23,104.104 INFO    ] No existing commands found in stream
[2026-10-25 01:28:28,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:28:28,136.136 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 01:28:32,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:28:32,181.181 INFO    ] Checking for system updates...
[2026-10-25 01:28:32,219.219 INFO    ] 200
[2026-10-25 01:28:32,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:32,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:28:32,284.284 INFO    ] No update needed
[2026-10-25 01:28:32,286.286 INFO    ] Checking for camera pi updates...
[2026-10-25 01:28:32,322.322 INFO    ] 200
[2026-10-25 01:28:32,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:32,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:28:32,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:28:32,408.408 INFO    ] No camera update needed
[2026-10-25 01:28:32,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:28:32,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:28:32,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:28:32,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:28:34,467.467 INFO    ] ================================================
[2026-10-25 01:28:34,482.482 INFO    ] Launching Daemon at Sun Oct 25 01:28:34 IST 2026
[2026-10-25 01:28:34,493.493 INFO    ] ================================================
[2026-10-25 01:28:35,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:28:35
[2026-10-25 01:28:35,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:28:35,913.913 INFO    ] Initializing speech engine...
[2026-10-25 01:28:35,922.922 INFO    ] 2026-10-25 01:28:35
[2026-10-25 01:28:36,232.232 INFO    ] 2026-10-25 01:28:36
[2026-10-25 01:28:36,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:28:36,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:28:36,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:28:36,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:28:36,647.647 INFO    ] time= 25/10/2026 01:28:36
[2026-10-25 01:28:36,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:28:36,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:28:36,731.731 INFO    ] No existing commands found in stream
[2026-10-25 01:28:41,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:28:41,747.747 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 01:28:44,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:28:44,021.021 INFO    ] Checking for system updates...
[2026-10-25 01:28:44,059.059 INFO    ] 200
[2026-10-25 01:28:44,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:44,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:44,126.126 INFO    ] No update needed
[2026-10-25 01:28:44,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 01:28:44,170.170 INFO    ] 200
[2026-10-25 01:28:44,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:44,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:28:44,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:44,290.290 INFO    ] No camera update needed
[2026-10-25 01:28:44,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:28:44,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:28:44,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:28:44,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:28:46,348.348 INFO    ] ================================================
[2026-10-25 01:28:46,363.363 INFO    ] Launching Daemon at Sun Oct 25 01:28:46 IST 2026
[2026-10-25 01:28:46,373.373 INFO    ] ================================================
[2026-10-25 01:28:46,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:28:46
[2026-10-25 01:28:47,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:28:47,797.797 INFO    ] Initializing speech engine...
[2026-10-25 01:28:47,818.818 INFO    ] 2026-10-25 01:28:47
[2026-10-25 01:28:48,084.084 INFO    ] 2026-10-25 01:28:48
[2026-10-25 01:28:48,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:28:48,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:28:48,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:28:48,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:28:48,501.501 INFO    ] time= 25/10/2026 01:28:48
[2026-10-25 01:28:48,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:28:48,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:28:48,667.667 INFO    ] No existing commands found in stream
[2026-10-25 01:28:53,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:28:53,695.695 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 01:28:56,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:28:56,928.928 INFO    ] Checking for system updates...
[2026-10-25 01:28:56,964.964 INFO    ] 200
[2026-10-25 01:28:56,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:57,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:57,029.029 INFO    ] No update needed
[2026-10-25 01:28:57,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 01:28:57,065.065 INFO    ] 200
[2026-10-25 01:28:57,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:28:57,108.108 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:28:57,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:28:57,167.167 INFO    ] No camera update needed
[2026-10-25 01:28:57,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:28:57,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:28:57,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:28:57,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:28:59,224.224 INFO    ] ================================================
[2026-10-25 01:28:59,239.239 INFO    ] Launching Daemon at Sun Oct 25 01:28:59 IST 2026
[2026-10-25 01:28:59,250.250 INFO    ] ================================================
[2026-10-25 01:28:59,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:28:59
[2026-10-25 01:29:00,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:29:00,642.642 INFO    ] Initializing speech engine...
[2026-10-25 01:29:00,649.649 INFO    ] 2026-10-25 01:29:00
[2026-10-25 01:29:00,923.923 INFO    ] 2026-10-25 01:29:00
[2026-10-25 01:29:00,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:29:01,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:29:01,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:29:01,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:29:01,366.366 INFO    ] time= 25/10/2026 01:29:01
[2026-10-25 01:29:01,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:29:01,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:29:01,570.570 INFO    ] No existing commands found in stream
[2026-10-25 01:29:06,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:29:06,584.584 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 01:29:07,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:29:07,551.551 INFO    ] Checking for system updates...
[2026-10-25 01:29:07,588.588 INFO    ] 200
[2026-10-25 01:29:07,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:07,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:29:07,652.652 INFO    ] No update needed
[2026-10-25 01:29:07,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 01:29:07,689.689 INFO    ] 200
[2026-10-25 01:29:07,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:07,732.732 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:29:07,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:29:07,886.886 INFO    ] No camera update needed
[2026-10-25 01:29:07,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:29:07,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:29:07,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:29:07,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:29:09,941.941 INFO    ] ================================================
[2026-10-25 01:29:09,956.956 INFO    ] Launching Daemon at Sun Oct 25 01:29:09 IST 2026
[2026-10-25 01:29:09,967.967 INFO    ] ================================================
[2026-10-25 01:29:10,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:29:10
[2026-10-25 01:29:11,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:29:11,375.375 INFO    ] Initializing speech engine...
[2026-10-25 01:29:11,381.381 INFO    ] 2026-10-25 01:29:11
[2026-10-25 01:29:11,682.682 INFO    ] 2026-10-25 01:29:11
[2026-10-25 01:29:11,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:29:11,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:29:11,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:29:12,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:29:12,099.099 INFO    ] time= 25/10/2026 01:29:12
[2026-10-25 01:29:12,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:29:12,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:29:12,183.183 INFO    ] No existing commands found in stream
[2026-10-25 01:29:17,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:29:17,198.198 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 01:29:19,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:29:19,104.104 INFO    ] Checking for system updates...
[2026-10-25 01:29:19,140.140 INFO    ] 200
[2026-10-25 01:29:19,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:19,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:19,204.204 INFO    ] No update needed
[2026-10-25 01:29:19,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 01:29:19,240.240 INFO    ] 200
[2026-10-25 01:29:19,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:19,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:29:19,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:19,338.338 INFO    ] No camera update needed
[2026-10-25 01:29:19,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:29:19,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:29:19,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:29:19,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:29:21,394.394 INFO    ] ================================================
[2026-10-25 01:29:21,410.410 INFO    ] Launching Daemon at Sun Oct 25 01:29:21 IST 2026
[2026-10-25 01:29:21,426.426 INFO    ] ================================================
[2026-10-25 01:29:22,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:29:22
[2026-10-25 01:29:22,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:29:23,069.069 INFO    ] Initializing speech engine...
[2026-10-25 01:29:23,077.077 INFO    ] 2026-10-25 01:29:23
[2026-10-25 01:29:23,391.391 INFO    ] 2026-10-25 01:29:23
[2026-10-25 01:29:23,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:29:23,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:29:23,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:29:23,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:29:23,899.899 INFO    ] time= 25/10/2026 01:29:23
[2026-10-25 01:29:23,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:29:23,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:29:24,053.053 INFO    ] No existing commands found in stream
[2026-10-25 01:29:29,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:29:29,076.076 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 01:29:31,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:29:31,285.285 INFO    ] Checking for system updates...
[2026-10-25 01:29:31,327.327 INFO    ] 200
[2026-10-25 01:29:31,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:31,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:31,387.387 INFO    ] No update needed
[2026-10-25 01:29:31,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 01:29:31,426.426 INFO    ] 200
[2026-10-25 01:29:31,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:31,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:29:31,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:31,526.526 INFO    ] No camera update needed
[2026-10-25 01:29:31,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:29:31,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:29:31,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:29:31,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:29:33,585.585 INFO    ] ================================================
[2026-10-25 01:29:33,600.600 INFO    ] Launching Daemon at Sun Oct 25 01:29:33 IST 2026
[2026-10-25 01:29:33,610.610 INFO    ] ================================================
[2026-10-25 01:29:34,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:29:34
[2026-10-25 01:29:34,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:29:35,022.022 INFO    ] Initializing speech engine...
[2026-10-25 01:29:35,036.036 INFO    ] 2026-10-25 01:29:35
[2026-10-25 01:29:35,326.326 INFO    ] 2026-10-25 01:29:35
[2026-10-25 01:29:35,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:29:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:29:35,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:29:35,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:29:35,707.707 INFO    ] time= 25/10/2026 01:29:35
[2026-10-25 01:29:35,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:29:35,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:29:35,833.833 INFO    ] No existing commands found in stream
[2026-10-25 01:29:40,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:29:40,849.849 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 01:29:43,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:29:43,916.916 INFO    ] Checking for system updates...
[2026-10-25 01:29:43,952.952 INFO    ] 200
[2026-10-25 01:29:43,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:44,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:44,011.011 INFO    ] No update needed
[2026-10-25 01:29:44,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 01:29:44,046.046 INFO    ] 200
[2026-10-25 01:29:44,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:44,090.090 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:29:44,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:44,138.138 INFO    ] No camera update needed
[2026-10-25 01:29:44,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:29:44,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:29:44,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:29:44,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:29:46,193.193 INFO    ] ================================================
[2026-10-25 01:29:46,208.208 INFO    ] Launching Daemon at Sun Oct 25 01:29:46 IST 2026
[2026-10-25 01:29:46,219.219 INFO    ] ================================================
[2026-10-25 01:29:46,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:29:46
[2026-10-25 01:29:47,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:29:47,632.632 INFO    ] Initializing speech engine...
[2026-10-25 01:29:47,650.650 INFO    ] 2026-10-25 01:29:47
[2026-10-25 01:29:47,901.901 INFO    ] 2026-10-25 01:29:47
[2026-10-25 01:29:47,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:29:48,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:29:48,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:29:48,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:29:48,382.382 INFO    ] time= 25/10/2026 01:29:48
[2026-10-25 01:29:48,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:29:48,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:29:48,535.535 INFO    ] No existing commands found in stream
[2026-10-25 01:29:53,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:29:53,550.550 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 01:29:56,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:29:56,059.059 INFO    ] Checking for system updates...
[2026-10-25 01:29:56,095.095 INFO    ] 200
[2026-10-25 01:29:56,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:56,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:56,155.155 INFO    ] No update needed
[2026-10-25 01:29:56,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 01:29:56,195.195 INFO    ] 200
[2026-10-25 01:29:56,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:29:56,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:29:56,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:29:56,296.296 INFO    ] No camera update needed
[2026-10-25 01:29:56,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:29:56,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:29:56,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:29:56,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:29:58,356.356 INFO    ] ================================================
[2026-10-25 01:29:58,372.372 INFO    ] Launching Daemon at Sun Oct 25 01:29:58 IST 2026
[2026-10-25 01:29:58,383.383 INFO    ] ================================================
[2026-10-25 01:29:59,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:29:59
[2026-10-25 01:29:59,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:00,025.025 INFO    ] Initializing speech engine...
[2026-10-25 01:30:00,034.034 INFO    ] 2026-10-25 01:30:00
[2026-10-25 01:30:00,332.332 INFO    ] 2026-10-25 01:30:00
[2026-10-25 01:30:00,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:00,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:00,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:00,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:00,874.874 INFO    ] time= 25/10/2026 01:30:00
[2026-10-25 01:30:00,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:00,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:01,034.034 INFO    ] No existing commands found in stream
[2026-10-25 01:30:06,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:30:06,067.067 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 01:30:08,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:30:08,374.374 INFO    ] Checking for system updates...
[2026-10-25 01:30:08,409.409 INFO    ] 200
[2026-10-25 01:30:08,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:08,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:08,468.468 INFO    ] No update needed
[2026-10-25 01:30:08,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 01:30:08,504.504 INFO    ] 200
[2026-10-25 01:30:08,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:08,548.548 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:30:08,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:08,613.613 INFO    ] No camera update needed
[2026-10-25 01:30:08,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:30:08,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:30:08,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:30:08,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:30:10,669.669 INFO    ] ================================================
[2026-10-25 01:30:10,684.684 INFO    ] Launching Daemon at Sun Oct 25 01:30:10 IST 2026
[2026-10-25 01:30:10,695.695 INFO    ] ================================================
[2026-10-25 01:30:11,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:30:11
[2026-10-25 01:30:11,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:12,137.137 INFO    ] Initializing speech engine...
[2026-10-25 01:30:12,159.159 INFO    ] 2026-10-25 01:30:12
[2026-10-25 01:30:12,436.436 INFO    ] 2026-10-25 01:30:12
[2026-10-25 01:30:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:12,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:12,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:12,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:12,837.837 INFO    ] time= 25/10/2026 01:30:12
[2026-10-25 01:30:12,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:12,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:12,948.948 INFO    ] No existing commands found in stream
[2026-10-25 01:30:17,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:30:17,962.962 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 01:30:18,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:30:18,644.644 INFO    ] Checking for system updates...
[2026-10-25 01:30:18,681.681 INFO    ] 200
[2026-10-25 01:30:18,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:18,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:18,745.745 INFO    ] No update needed
[2026-10-25 01:30:18,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 01:30:18,781.781 INFO    ] 200
[2026-10-25 01:30:18,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:18,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:30:18,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:18,871.871 INFO    ] No camera update needed
[2026-10-25 01:30:18,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:30:18,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:30:18,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:30:18,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:30:20,928.928 INFO    ] ================================================
[2026-10-25 01:30:20,944.944 INFO    ] Launching Daemon at Sun Oct 25 01:30:20 IST 2026
[2026-10-25 01:30:20,954.954 INFO    ] ================================================
[2026-10-25 01:30:21,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:30:21
[2026-10-25 01:30:22,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:22,406.406 INFO    ] Initializing speech engine...
[2026-10-25 01:30:22,415.415 INFO    ] 2026-10-25 01:30:22
[2026-10-25 01:30:22,673.673 INFO    ] 2026-10-25 01:30:22
[2026-10-25 01:30:22,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:22,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:23,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:23,144.144 INFO    ] time= 25/10/2026 01:30:23
[2026-10-25 01:30:23,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:23,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:23,298.298 INFO    ] No existing commands found in stream
[2026-10-25 01:30:28,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:30:28,313.313 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 01:30:31,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:30:31,326.326 INFO    ] Checking for system updates...
[2026-10-25 01:30:31,363.363 INFO    ] 200
[2026-10-25 01:30:31,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:31,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:31,429.429 INFO    ] No update needed
[2026-10-25 01:30:31,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 01:30:31,471.471 INFO    ] 200
[2026-10-25 01:30:31,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:31,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:30:31,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:30:31,585.585 INFO    ] No camera update needed
[2026-10-25 01:30:31,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:30:31,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:30:31,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:30:31,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:30:33,645.645 INFO    ] ================================================
[2026-10-25 01:30:33,661.661 INFO    ] Launching Daemon at Sun Oct 25 01:30:33 IST 2026
[2026-10-25 01:30:33,672.672 INFO    ] ================================================
[2026-10-25 01:30:34,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:30:34
[2026-10-25 01:30:34,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:35,281.281 INFO    ] Initializing speech engine...
[2026-10-25 01:30:35,293.293 INFO    ] 2026-10-25 01:30:35
[2026-10-25 01:30:35,572.572 INFO    ] 2026-10-25 01:30:35
[2026-10-25 01:30:35,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:35,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:35,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:36,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:36,107.107 INFO    ] time= 25/10/2026 01:30:36
[2026-10-25 01:30:36,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:36,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:36,262.262 INFO    ] No existing commands found in stream
[2026-10-25 01:30:41,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:30:41,279.279 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 01:30:43,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:30:43,337.337 INFO    ] Checking for system updates...
[2026-10-25 01:30:43,384.384 INFO    ] 200
[2026-10-25 01:30:43,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:43,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:30:43,453.453 INFO    ] No update needed
[2026-10-25 01:30:43,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 01:30:43,495.495 INFO    ] 200
[2026-10-25 01:30:43,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:43,543.543 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:30:43,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:30:43,594.594 INFO    ] No camera update needed
[2026-10-25 01:30:43,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:30:43,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:30:43,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:30:43,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:30:45,652.652 INFO    ] ================================================
[2026-10-25 01:30:45,667.667 INFO    ] Launching Daemon at Sun Oct 25 01:30:45 IST 2026
[2026-10-25 01:30:45,678.678 INFO    ] ================================================
[2026-10-25 01:30:46,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:30:46
[2026-10-25 01:30:46,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:47,109.109 INFO    ] Initializing speech engine...
[2026-10-25 01:30:47,124.124 INFO    ] 2026-10-25 01:30:47
[2026-10-25 01:30:47,401.401 INFO    ] 2026-10-25 01:30:47
[2026-10-25 01:30:47,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:47,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:47,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:47,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:47,808.808 INFO    ] time= 25/10/2026 01:30:47
[2026-10-25 01:30:47,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:47,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:47,890.890 INFO    ] No existing commands found in stream
[2026-10-25 01:30:52,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:30:52,906.906 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 01:30:54,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:30:54,155.155 INFO    ] Checking for system updates...
[2026-10-25 01:30:54,193.193 INFO    ] 200
[2026-10-25 01:30:54,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:54,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:30:54,256.256 INFO    ] No update needed
[2026-10-25 01:30:54,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 01:30:54,304.304 INFO    ] 200
[2026-10-25 01:30:54,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:30:54,362.362 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:30:54,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:30:54,419.419 INFO    ] No camera update needed
[2026-10-25 01:30:54,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:30:54,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:30:54,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:30:54,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:30:56,483.483 INFO    ] ================================================
[2026-10-25 01:30:56,498.498 INFO    ] Launching Daemon at Sun Oct 25 01:30:56 IST 2026
[2026-10-25 01:30:56,509.509 INFO    ] ================================================
[2026-10-25 01:30:57,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:30:57
[2026-10-25 01:30:57,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:30:58,068.068 INFO    ] Initializing speech engine...
[2026-10-25 01:30:58,077.077 INFO    ] 2026-10-25 01:30:58
[2026-10-25 01:30:58,361.361 INFO    ] 2026-10-25 01:30:58
[2026-10-25 01:30:58,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:30:58,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:30:58,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:30:58,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:30:58,815.815 INFO    ] time= 25/10/2026 01:30:58
[2026-10-25 01:30:58,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:30:58,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:30:58,973.973 INFO    ] No existing commands found in stream
[2026-10-25 01:31:03,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:31:03,988.988 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 01:31:07,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:31:07,320.320 INFO    ] Checking for system updates...
[2026-10-25 01:31:07,357.357 INFO    ] 200
[2026-10-25 01:31:07,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:07,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:07,418.418 INFO    ] No update needed
[2026-10-25 01:31:07,421.421 INFO    ] Checking for camera pi updates...
[2026-10-25 01:31:07,456.456 INFO    ] 200
[2026-10-25 01:31:07,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:07,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:31:07,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:07,555.555 INFO    ] No camera update needed
[2026-10-25 01:31:07,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:31:07,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:31:07,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:31:07,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:31:09,609.609 INFO    ] ================================================
[2026-10-25 01:31:09,624.624 INFO    ] Launching Daemon at Sun Oct 25 01:31:09 IST 2026
[2026-10-25 01:31:09,634.634 INFO    ] ================================================
[2026-10-25 01:31:10,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:31:10
[2026-10-25 01:31:10,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:31:11,037.037 INFO    ] Initializing speech engine...
[2026-10-25 01:31:11,056.056 INFO    ] 2026-10-25 01:31:11
[2026-10-25 01:31:11,317.317 INFO    ] 2026-10-25 01:31:11
[2026-10-25 01:31:11,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:31:11,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:31:11,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:31:11,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:31:11,693.693 INFO    ] time= 25/10/2026 01:31:11
[2026-10-25 01:31:11,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:31:11,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:31:11,872.872 INFO    ] No existing commands found in stream
[2026-10-25 01:31:16,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:31:16,901.901 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 01:31:17,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:31:17,843.843 INFO    ] Checking for system updates...
[2026-10-25 01:31:17,884.884 INFO    ] 200
[2026-10-25 01:31:17,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:17,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:31:17,944.944 INFO    ] No update needed
[2026-10-25 01:31:17,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 01:31:17,982.982 INFO    ] 200
[2026-10-25 01:31:17,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:18,031.031 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:31:18,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:31:18,198.198 INFO    ] No camera update needed
[2026-10-25 01:31:18,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:31:18,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:31:18,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:31:18,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:31:20,255.255 INFO    ] ================================================
[2026-10-25 01:31:20,269.269 INFO    ] Launching Daemon at Sun Oct 25 01:31:20 IST 2026
[2026-10-25 01:31:20,280.280 INFO    ] ================================================
[2026-10-25 01:31:20,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:31:20
[2026-10-25 01:31:21,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:31:21,729.729 INFO    ] Initializing speech engine...
[2026-10-25 01:31:21,742.742 INFO    ] 2026-10-25 01:31:21
[2026-10-25 01:31:22,009.009 INFO    ] 2026-10-25 01:31:22
[2026-10-25 01:31:22,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:31:22,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:31:22,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:31:22,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:31:22,403.403 INFO    ] time= 25/10/2026 01:31:22
[2026-10-25 01:31:22,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:31:22,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:31:22,575.575 INFO    ] No existing commands found in stream
[2026-10-25 01:31:27,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:31:27,590.590 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 01:31:31,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:31:31,855.855 INFO    ] Checking for system updates...
[2026-10-25 01:31:31,901.901 INFO    ] 200
[2026-10-25 01:31:31,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:31,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:32,002.002 INFO    ] No update needed
[2026-10-25 01:31:32,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 01:31:32,045.045 INFO    ] 200
[2026-10-25 01:31:32,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:32,099.099 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:31:32,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:32,142.142 INFO    ] No camera update needed
[2026-10-25 01:31:32,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:31:32,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:31:32,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:31:32,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:31:34,202.202 INFO    ] ================================================
[2026-10-25 01:31:34,217.217 INFO    ] Launching Daemon at Sun Oct 25 01:31:34 IST 2026
[2026-10-25 01:31:34,228.228 INFO    ] ================================================
[2026-10-25 01:31:34,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:31:34
[2026-10-25 01:31:35,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:31:35,899.899 INFO    ] Initializing speech engine...
[2026-10-25 01:31:35,914.914 INFO    ] 2026-10-25 01:31:35
[2026-10-25 01:31:36,201.201 INFO    ] 2026-10-25 01:31:36
[2026-10-25 01:31:36,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:31:36,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:31:36,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:31:36,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:31:36,707.707 INFO    ] time= 25/10/2026 01:31:36
[2026-10-25 01:31:36,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:31:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:31:36,891.891 INFO    ] No existing commands found in stream
[2026-10-25 01:31:41,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:31:41,923.923 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 01:31:44,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:31:44,953.953 INFO    ] Checking for system updates...
[2026-10-25 01:31:44,991.991 INFO    ] 200
[2026-10-25 01:31:44,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:45,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:45,050.050 INFO    ] No update needed
[2026-10-25 01:31:45,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 01:31:45,094.094 INFO    ] 200
[2026-10-25 01:31:45,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:45,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:31:45,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:45,205.205 INFO    ] No camera update needed
[2026-10-25 01:31:45,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:31:45,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:31:45,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:31:45,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:31:47,263.263 INFO    ] ================================================
[2026-10-25 01:31:47,279.279 INFO    ] Launching Daemon at Sun Oct 25 01:31:47 IST 2026
[2026-10-25 01:31:47,289.289 INFO    ] ================================================
[2026-10-25 01:31:47,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:31:47
[2026-10-25 01:31:48,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:31:48,952.952 INFO    ] Initializing speech engine...
[2026-10-25 01:31:48,958.958 INFO    ] 2026-10-25 01:31:48
[2026-10-25 01:31:49,216.216 INFO    ] 2026-10-25 01:31:49
[2026-10-25 01:31:49,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:31:49,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:31:49,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:31:49,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:31:49,695.695 INFO    ] time= 25/10/2026 01:31:49
[2026-10-25 01:31:49,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:31:49,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:31:49,845.845 INFO    ] No existing commands found in stream
[2026-10-25 01:31:54,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:31:54,860.860 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 01:31:55,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:31:55,362.362 INFO    ] Checking for system updates...
[2026-10-25 01:31:55,400.400 INFO    ] 200
[2026-10-25 01:31:55,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:55,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:55,467.467 INFO    ] No update needed
[2026-10-25 01:31:55,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 01:31:55,506.506 INFO    ] 200
[2026-10-25 01:31:55,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:31:55,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:31:55,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:31:55,616.616 INFO    ] No camera update needed
[2026-10-25 01:31:55,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:31:55,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:31:55,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:31:55,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:31:57,671.671 INFO    ] ================================================
[2026-10-25 01:31:57,686.686 INFO    ] Launching Daemon at Sun Oct 25 01:31:57 IST 2026
[2026-10-25 01:31:57,696.696 INFO    ] ================================================
[2026-10-25 01:31:58,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:31:58
[2026-10-25 01:31:58,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:31:59,155.155 INFO    ] Initializing speech engine...
[2026-10-25 01:31:59,161.161 INFO    ] 2026-10-25 01:31:59
[2026-10-25 01:31:59,422.422 INFO    ] 2026-10-25 01:31:59
[2026-10-25 01:31:59,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:31:59,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:31:59,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:31:59,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:31:59,967.967 INFO    ] time= 25/10/2026 01:31:59
[2026-10-25 01:31:59,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:31:59,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:32:00,114.114 INFO    ] No existing commands found in stream
[2026-10-25 01:32:05,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:32:05,133.133 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 01:32:08,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:32:08,511.511 INFO    ] Checking for system updates...
[2026-10-25 01:32:08,548.548 INFO    ] 200
[2026-10-25 01:32:08,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:08,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:08,607.607 INFO    ] No update needed
[2026-10-25 01:32:08,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 01:32:08,645.645 INFO    ] 200
[2026-10-25 01:32:08,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:08,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:32:08,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:08,738.738 INFO    ] No camera update needed
[2026-10-25 01:32:08,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:32:08,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:32:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:32:08,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:32:10,793.793 INFO    ] ================================================
[2026-10-25 01:32:10,809.809 INFO    ] Launching Daemon at Sun Oct 25 01:32:10 IST 2026
[2026-10-25 01:32:10,820.820 INFO    ] ================================================
[2026-10-25 01:32:11,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:32:11
[2026-10-25 01:32:12,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:32:12,380.380 INFO    ] Initializing speech engine...
[2026-10-25 01:32:12,390.390 INFO    ] 2026-10-25 01:32:12
[2026-10-25 01:32:12,656.656 INFO    ] 2026-10-25 01:32:12
[2026-10-25 01:32:12,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:32:12,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:32:12,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:32:13,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:32:13,159.159 INFO    ] time= 25/10/2026 01:32:13
[2026-10-25 01:32:13,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:32:13,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:32:13,353.353 INFO    ] No existing commands found in stream
[2026-10-25 01:32:18,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:32:18,383.383 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 01:32:21,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:32:21,021.021 INFO    ] Checking for system updates...
[2026-10-25 01:32:21,057.057 INFO    ] 200
[2026-10-25 01:32:21,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:21,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:21,116.116 INFO    ] No update needed
[2026-10-25 01:32:21,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 01:32:21,158.158 INFO    ] 200
[2026-10-25 01:32:21,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:21,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:32:21,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:21,254.254 INFO    ] No camera update needed
[2026-10-25 01:32:21,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:32:21,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:32:21,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:32:21,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:32:23,311.311 INFO    ] ================================================
[2026-10-25 01:32:23,326.326 INFO    ] Launching Daemon at Sun Oct 25 01:32:23 IST 2026
[2026-10-25 01:32:23,337.337 INFO    ] ================================================
[2026-10-25 01:32:23,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:32:23
[2026-10-25 01:32:24,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:32:24,940.940 INFO    ] Initializing speech engine...
[2026-10-25 01:32:24,948.948 INFO    ] 2026-10-25 01:32:24
[2026-10-25 01:32:25,217.217 INFO    ] 2026-10-25 01:32:25
[2026-10-25 01:32:25,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:32:25,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:32:25,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:32:25,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:32:25,720.720 INFO    ] time= 25/10/2026 01:32:25
[2026-10-25 01:32:25,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:32:25,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:32:25,878.878 INFO    ] No existing commands found in stream
[2026-10-25 01:32:30,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:32:30,893.893 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 01:32:32,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:32:32,588.588 INFO    ] Checking for system updates...
[2026-10-25 01:32:32,636.636 INFO    ] 200
[2026-10-25 01:32:32,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:32,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:32,699.699 INFO    ] No update needed
[2026-10-25 01:32:32,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 01:32:32,741.741 INFO    ] 200
[2026-10-25 01:32:32,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:32,793.793 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:32:32,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:32,859.859 INFO    ] No camera update needed
[2026-10-25 01:32:32,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:32:32,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:32:32,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:32:32,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:32:34,918.918 INFO    ] ================================================
[2026-10-25 01:32:34,935.935 INFO    ] Launching Daemon at Sun Oct 25 01:32:34 IST 2026
[2026-10-25 01:32:34,950.950 INFO    ] ================================================
[2026-10-25 01:32:35,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:32:35
[2026-10-25 01:32:36,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:32:36,361.361 INFO    ] Initializing speech engine...
[2026-10-25 01:32:36,369.369 INFO    ] 2026-10-25 01:32:36
[2026-10-25 01:32:36,655.655 INFO    ] 2026-10-25 01:32:36
[2026-10-25 01:32:36,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:32:36,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:32:36,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:32:37,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:32:37,027.027 INFO    ] time= 25/10/2026 01:32:37
[2026-10-25 01:32:37,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:32:37,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:32:37,126.126 INFO    ] No existing commands found in stream
[2026-10-25 01:32:42,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:32:42,165.165 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 01:32:44,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:32:44,176.176 INFO    ] Checking for system updates...
[2026-10-25 01:32:44,212.212 INFO    ] 200
[2026-10-25 01:32:44,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:44,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:44,269.269 INFO    ] No update needed
[2026-10-25 01:32:44,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 01:32:44,306.306 INFO    ] 200
[2026-10-25 01:32:44,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:44,354.354 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:32:44,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:44,409.409 INFO    ] No camera update needed
[2026-10-25 01:32:44,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:32:44,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:32:44,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:32:44,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:32:46,468.468 INFO    ] ================================================
[2026-10-25 01:32:46,483.483 INFO    ] Launching Daemon at Sun Oct 25 01:32:46 IST 2026
[2026-10-25 01:32:46,494.494 INFO    ] ================================================
[2026-10-25 01:32:47,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:32:47
[2026-10-25 01:32:47,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:32:47,906.906 INFO    ] Initializing speech engine...
[2026-10-25 01:32:47,919.919 INFO    ] 2026-10-25 01:32:47
[2026-10-25 01:32:48,186.186 INFO    ] 2026-10-25 01:32:48
[2026-10-25 01:32:48,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:32:48,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:32:48,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:32:48,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:32:48,625.625 INFO    ] time= 25/10/2026 01:32:48
[2026-10-25 01:32:48,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:32:48,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:32:48,799.799 INFO    ] No existing commands found in stream
[2026-10-25 01:32:53,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:32:53,816.816 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 01:32:57,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:32:57,427.427 INFO    ] Checking for system updates...
[2026-10-25 01:32:57,464.464 INFO    ] 200
[2026-10-25 01:32:57,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:57,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:57,528.528 INFO    ] No update needed
[2026-10-25 01:32:57,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 01:32:57,565.565 INFO    ] 200
[2026-10-25 01:32:57,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:32:57,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:32:57,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:32:57,666.666 INFO    ] No camera update needed
[2026-10-25 01:32:57,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:32:57,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:32:57,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:32:57,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:32:59,723.723 INFO    ] ================================================
[2026-10-25 01:32:59,739.739 INFO    ] Launching Daemon at Sun Oct 25 01:32:59 IST 2026
[2026-10-25 01:32:59,750.750 INFO    ] ================================================
[2026-10-25 01:33:00,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:33:00
[2026-10-25 01:33:00,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:33:01,153.153 INFO    ] Initializing speech engine...
[2026-10-25 01:33:01,159.159 INFO    ] 2026-10-25 01:33:01
[2026-10-25 01:33:01,419.419 INFO    ] 2026-10-25 01:33:01
[2026-10-25 01:33:01,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:33:01,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:33:01,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:33:01,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:33:01,851.851 INFO    ] time= 25/10/2026 01:33:01
[2026-10-25 01:33:01,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:33:01,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:33:02,016.016 INFO    ] No existing commands found in stream
[2026-10-25 01:33:07,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:33:07,045.045 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 01:33:10,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:33:10,900.900 INFO    ] Checking for system updates...
[2026-10-25 01:33:10,939.939 INFO    ] 200
[2026-10-25 01:33:10,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:10,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:10,999.999 INFO    ] No update needed
[2026-10-25 01:33:11,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 01:33:11,045.045 INFO    ] 200
[2026-10-25 01:33:11,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:11,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:33:11,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:11,126.126 INFO    ] No camera update needed
[2026-10-25 01:33:11,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:33:11,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:33:11,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:33:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:33:13,184.184 INFO    ] ================================================
[2026-10-25 01:33:13,199.199 INFO    ] Launching Daemon at Sun Oct 25 01:33:13 IST 2026
[2026-10-25 01:33:13,210.210 INFO    ] ================================================
[2026-10-25 01:33:13,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:33:13
[2026-10-25 01:33:14,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:33:14,797.797 INFO    ] Initializing speech engine...
[2026-10-25 01:33:14,803.803 INFO    ] 2026-10-25 01:33:14
[2026-10-25 01:33:15,061.061 INFO    ] 2026-10-25 01:33:15
[2026-10-25 01:33:15,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:33:15,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:33:15,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:33:15,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:33:15,527.527 INFO    ] time= 25/10/2026 01:33:15
[2026-10-25 01:33:15,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:33:15,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:33:15,683.683 INFO    ] No existing commands found in stream
[2026-10-25 01:33:20,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:33:20,697.697 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 01:33:21,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:33:21,661.661 INFO    ] Checking for system updates...
[2026-10-25 01:33:21,697.697 INFO    ] 200
[2026-10-25 01:33:21,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:21,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:21,757.757 INFO    ] No update needed
[2026-10-25 01:33:21,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 01:33:21,795.795 INFO    ] 200
[2026-10-25 01:33:21,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:21,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:33:22,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:22,005.005 INFO    ] No camera update needed
[2026-10-25 01:33:22,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:33:22,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:33:22,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:33:22,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:33:24,061.061 INFO    ] ================================================
[2026-10-25 01:33:24,077.077 INFO    ] Launching Daemon at Sun Oct 25 01:33:24 IST 2026
[2026-10-25 01:33:24,088.088 INFO    ] ================================================
[2026-10-25 01:33:24,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:33:24
[2026-10-25 01:33:25,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:33:25,535.535 INFO    ] Initializing speech engine...
[2026-10-25 01:33:25,544.544 INFO    ] 2026-10-25 01:33:25
[2026-10-25 01:33:25,789.789 INFO    ] 2026-10-25 01:33:25
[2026-10-25 01:33:25,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:33:26,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:33:26,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:33:26,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:33:26,262.262 INFO    ] time= 25/10/2026 01:33:26
[2026-10-25 01:33:26,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:33:26,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:33:26,406.406 INFO    ] No existing commands found in stream
[2026-10-25 01:33:31,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:33:31,424.424 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 01:33:33,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:33:33,870.870 INFO    ] Checking for system updates...
[2026-10-25 01:33:33,907.907 INFO    ] 200
[2026-10-25 01:33:33,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:33,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:33,965.965 INFO    ] No update needed
[2026-10-25 01:33:33,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 01:33:34,012.012 INFO    ] 200
[2026-10-25 01:33:34,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:34,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:33:34,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:34,130.130 INFO    ] No camera update needed
[2026-10-25 01:33:34,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:33:34,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:33:34,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:33:34,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:33:36,189.189 INFO    ] ================================================
[2026-10-25 01:33:36,205.205 INFO    ] Launching Daemon at Sun Oct 25 01:33:36 IST 2026
[2026-10-25 01:33:36,216.216 INFO    ] ================================================
[2026-10-25 01:33:36,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:33:36
[2026-10-25 01:33:37,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:33:37,826.826 INFO    ] Initializing speech engine...
[2026-10-25 01:33:37,835.835 INFO    ] 2026-10-25 01:33:37
[2026-10-25 01:33:38,119.119 INFO    ] 2026-10-25 01:33:38
[2026-10-25 01:33:38,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:33:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:33:38,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:33:38,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:33:38,578.578 INFO    ] time= 25/10/2026 01:33:38
[2026-10-25 01:33:38,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:33:38,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:33:38,780.780 INFO    ] No existing commands found in stream
[2026-10-25 01:33:43,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:33:43,816.816 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 01:33:46,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:33:46,722.722 INFO    ] Checking for system updates...
[2026-10-25 01:33:46,762.762 INFO    ] 200
[2026-10-25 01:33:46,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:46,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:46,827.827 INFO    ] No update needed
[2026-10-25 01:33:46,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 01:33:46,864.864 INFO    ] 200
[2026-10-25 01:33:46,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:33:46,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:33:46,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:33:46,958.958 INFO    ] No camera update needed
[2026-10-25 01:33:46,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:33:46,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:33:46,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:33:46,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:33:49,014.014 INFO    ] ================================================
[2026-10-25 01:33:49,030.030 INFO    ] Launching Daemon at Sun Oct 25 01:33:49 IST 2026
[2026-10-25 01:33:49,041.041 INFO    ] ================================================
[2026-10-25 01:33:49,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:33:49
[2026-10-25 01:33:50,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:33:50,690.690 INFO    ] Initializing speech engine...
[2026-10-25 01:33:50,703.703 INFO    ] 2026-10-25 01:33:50
[2026-10-25 01:33:50,964.964 INFO    ] 2026-10-25 01:33:50
[2026-10-25 01:33:51,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:33:51,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:33:51,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:33:51,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:33:51,430.430 INFO    ] time= 25/10/2026 01:33:51
[2026-10-25 01:33:51,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:33:51,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:33:51,623.623 INFO    ] No existing commands found in stream
[2026-10-25 01:33:56,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:33:56,646.646 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 01:34:00,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:34:00,820.820 INFO    ] Checking for system updates...
[2026-10-25 01:34:00,856.856 INFO    ] 200
[2026-10-25 01:34:00,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:00,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:00,915.915 INFO    ] No update needed
[2026-10-25 01:34:00,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:00,955.955 INFO    ] 200
[2026-10-25 01:34:00,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:00,998.998 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:01,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:01,062.062 INFO    ] No camera update needed
[2026-10-25 01:34:01,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:01,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:01,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:01,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:03,120.120 INFO    ] ================================================
[2026-10-25 01:34:03,136.136 INFO    ] Launching Daemon at Sun Oct 25 01:34:03 IST 2026
[2026-10-25 01:34:03,146.146 INFO    ] ================================================
[2026-10-25 01:34:03,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:03
[2026-10-25 01:34:04,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:34:04,579.579 INFO    ] Initializing speech engine...
[2026-10-25 01:34:04,585.585 INFO    ] 2026-10-25 01:34:04
[2026-10-25 01:34:04,880.880 INFO    ] 2026-10-25 01:34:04
[2026-10-25 01:34:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:34:05,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:34:05,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:34:05,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:34:05,296.296 INFO    ] time= 25/10/2026 01:34:05
[2026-10-25 01:34:05,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:34:05,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:34:05,387.387 INFO    ] No existing commands found in stream
[2026-10-25 01:34:10,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:34:10,425.425 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 01:34:11,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:34:11,431.431 INFO    ] Checking for system updates...
[2026-10-25 01:34:11,468.468 INFO    ] 200
[2026-10-25 01:34:11,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:11,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:11,525.525 INFO    ] No update needed
[2026-10-25 01:34:11,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:11,565.565 INFO    ] 200
[2026-10-25 01:34:11,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:11,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:11,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:11,663.663 INFO    ] No camera update needed
[2026-10-25 01:34:11,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:11,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:11,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:11,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:13,719.719 INFO    ] ================================================
[2026-10-25 01:34:13,735.735 INFO    ] Launching Daemon at Sun Oct 25 01:34:13 IST 2026
[2026-10-25 01:34:13,747.747 INFO    ] ================================================
[2026-10-25 01:34:14,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:14
[2026-10-25 01:34:14,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:34:15,165.165 INFO    ] Initializing speech engine...
[2026-10-25 01:34:15,172.172 INFO    ] 2026-10-25 01:34:15
[2026-10-25 01:34:15,466.466 INFO    ] 2026-10-25 01:34:15
[2026-10-25 01:34:15,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:34:15,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:34:15,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:34:15,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:34:15,888.888 INFO    ] time= 25/10/2026 01:34:15
[2026-10-25 01:34:15,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:34:15,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:34:16,055.055 INFO    ] No existing commands found in stream
[2026-10-25 01:34:21,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:34:21,088.088 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 01:34:22,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:34:22,829.829 INFO    ] Checking for system updates...
[2026-10-25 01:34:22,866.866 INFO    ] 200
[2026-10-25 01:34:22,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:22,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:22,926.926 INFO    ] No update needed
[2026-10-25 01:34:22,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:22,964.964 INFO    ] 200
[2026-10-25 01:34:22,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:23,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:23,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:23,064.064 INFO    ] No camera update needed
[2026-10-25 01:34:23,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:23,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:23,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:23,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:25,122.122 INFO    ] ================================================
[2026-10-25 01:34:25,138.138 INFO    ] Launching Daemon at Sun Oct 25 01:34:25 IST 2026
[2026-10-25 01:34:25,148.148 INFO    ] ================================================
[2026-10-25 01:34:25,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:25
[2026-10-25 01:34:26,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:34:26,575.575 INFO    ] Initializing speech engine...
[2026-10-25 01:34:26,584.584 INFO    ] 2026-10-25 01:34:26
[2026-10-25 01:34:26,829.829 INFO    ] 2026-10-25 01:34:26
[2026-10-25 01:34:26,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:34:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:34:27,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:34:27,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:34:27,306.306 INFO    ] time= 25/10/2026 01:34:27
[2026-10-25 01:34:27,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:34:27,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:34:27,519.519 INFO    ] No existing commands found in stream
[2026-10-25 01:34:32,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:34:32,546.546 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 01:34:33,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:34:33,286.286 INFO    ] Checking for system updates...
[2026-10-25 01:34:33,322.322 INFO    ] 200
[2026-10-25 01:34:33,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:33,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:33,379.379 INFO    ] No update needed
[2026-10-25 01:34:33,382.382 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:33,415.415 INFO    ] 200
[2026-10-25 01:34:33,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:33,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:33,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:34:33,516.516 INFO    ] No camera update needed
[2026-10-25 01:34:33,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:33,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:33,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:33,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:35,574.574 INFO    ] ================================================
[2026-10-25 01:34:35,589.589 INFO    ] Launching Daemon at Sun Oct 25 01:34:35 IST 2026
[2026-10-25 01:34:35,601.601 INFO    ] ================================================
[2026-10-25 01:34:36,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:36
[2026-10-25 01:34:36,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:34:37,003.003 INFO    ] Initializing speech engine...
[2026-10-25 01:34:37,012.012 INFO    ] 2026-10-25 01:34:37
[2026-10-25 01:34:37,307.307 INFO    ] 2026-10-25 01:34:37
[2026-10-25 01:34:37,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:34:37,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:34:37,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:34:37,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:34:37,722.722 INFO    ] time= 25/10/2026 01:34:37
[2026-10-25 01:34:37,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:34:37,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:34:37,806.806 INFO    ] No existing commands found in stream
[2026-10-25 01:34:42,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:34:42,822.822 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 01:34:45,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:34:45,859.859 INFO    ] Checking for system updates...
[2026-10-25 01:34:45,895.895 INFO    ] 200
[2026-10-25 01:34:45,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:45,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:45,960.960 INFO    ] No update needed
[2026-10-25 01:34:45,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:45,999.999 INFO    ] 200
[2026-10-25 01:34:46,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:46,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:46,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:46,101.101 INFO    ] No camera update needed
[2026-10-25 01:34:46,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:46,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:46,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:46,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:48,159.159 INFO    ] ================================================
[2026-10-25 01:34:48,174.174 INFO    ] Launching Daemon at Sun Oct 25 01:34:48 IST 2026
[2026-10-25 01:34:48,184.184 INFO    ] ================================================
[2026-10-25 01:34:48,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:48
[2026-10-25 01:34:49,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:34:49,612.612 INFO    ] Initializing speech engine...
[2026-10-25 01:34:49,623.623 INFO    ] 2026-10-25 01:34:49
[2026-10-25 01:34:49,867.867 INFO    ] 2026-10-25 01:34:49
[2026-10-25 01:34:49,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:34:50,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:34:50,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:34:50,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:34:50,364.364 INFO    ] time= 25/10/2026 01:34:50
[2026-10-25 01:34:50,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:34:50,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:34:50,552.552 INFO    ] No existing commands found in stream
[2026-10-25 01:34:55,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:34:55,582.582 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 01:34:56,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:34:56,884.884 INFO    ] Checking for system updates...
[2026-10-25 01:34:56,921.921 INFO    ] 200
[2026-10-25 01:34:56,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:56,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:56,979.979 INFO    ] No update needed
[2026-10-25 01:34:56,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 01:34:57,016.016 INFO    ] 200
[2026-10-25 01:34:57,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:34:57,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:34:57,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:34:57,118.118 INFO    ] No camera update needed
[2026-10-25 01:34:57,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:34:57,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:34:57,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:34:57,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:34:59,176.176 INFO    ] ================================================
[2026-10-25 01:34:59,192.192 INFO    ] Launching Daemon at Sun Oct 25 01:34:59 IST 2026
[2026-10-25 01:34:59,203.203 INFO    ] ================================================
[2026-10-25 01:34:59,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:34:59
[2026-10-25 01:35:00,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:35:00,628.628 INFO    ] Initializing speech engine...
[2026-10-25 01:35:00,638.638 INFO    ] 2026-10-25 01:35:00
[2026-10-25 01:35:00,883.883 INFO    ] 2026-10-25 01:35:00
[2026-10-25 01:35:00,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:35:01,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:35:01,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:35:01,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:35:01,388.388 INFO    ] time= 25/10/2026 01:35:01
[2026-10-25 01:35:01,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:35:01,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:35:01,479.479 INFO    ] No existing commands found in stream
[2026-10-25 01:35:06,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:35:06,493.493 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 01:35:09,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:35:09,875.875 INFO    ] Checking for system updates...
[2026-10-25 01:35:09,912.912 INFO    ] 200
[2026-10-25 01:35:09,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:09,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:09,976.976 INFO    ] No update needed
[2026-10-25 01:35:09,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 01:35:10,015.015 INFO    ] 200
[2026-10-25 01:35:10,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:10,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:35:10,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:10,114.114 INFO    ] No camera update needed
[2026-10-25 01:35:10,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:35:10,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:35:10,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:35:10,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:35:12,172.172 INFO    ] ================================================
[2026-10-25 01:35:12,188.188 INFO    ] Launching Daemon at Sun Oct 25 01:35:12 IST 2026
[2026-10-25 01:35:12,199.199 INFO    ] ================================================
[2026-10-25 01:35:12,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:35:12
[2026-10-25 01:35:13,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:35:13,610.610 INFO    ] Initializing speech engine...
[2026-10-25 01:35:13,623.623 INFO    ] 2026-10-25 01:35:13
[2026-10-25 01:35:13,885.885 INFO    ] 2026-10-25 01:35:13
[2026-10-25 01:35:13,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:35:14,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:35:14,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:35:14,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:35:14,373.373 INFO    ] time= 25/10/2026 01:35:14
[2026-10-25 01:35:14,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:35:14,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:35:14,562.562 INFO    ] No existing commands found in stream
[2026-10-25 01:35:19,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:35:19,592.592 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 01:35:23,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:35:23,313.313 INFO    ] Checking for system updates...
[2026-10-25 01:35:23,349.349 INFO    ] 200
[2026-10-25 01:35:23,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:23,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:35:23,411.411 INFO    ] No update needed
[2026-10-25 01:35:23,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 01:35:23,448.448 INFO    ] 200
[2026-10-25 01:35:23,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:23,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:35:23,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:35:23,557.557 INFO    ] No camera update needed
[2026-10-25 01:35:23,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:35:23,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:35:23,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:35:23,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:35:25,616.616 INFO    ] ================================================
[2026-10-25 01:35:25,633.633 INFO    ] Launching Daemon at Sun Oct 25 01:35:25 IST 2026
[2026-10-25 01:35:25,644.644 INFO    ] ================================================
[2026-10-25 01:35:26,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:35:26
[2026-10-25 01:35:27,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:35:27,349.349 INFO    ] Initializing speech engine...
[2026-10-25 01:35:27,361.361 INFO    ] 2026-10-25 01:35:27
[2026-10-25 01:35:27,661.661 INFO    ] 2026-10-25 01:35:27
[2026-10-25 01:35:27,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:35:27,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:35:27,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:35:28,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:35:28,121.121 INFO    ] time= 25/10/2026 01:35:28
[2026-10-25 01:35:28,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:35:28,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:35:28,277.277 INFO    ] No existing commands found in stream
[2026-10-25 01:35:33,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:35:33,293.293 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 01:35:36,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:35:36,368.368 INFO    ] Checking for system updates...
[2026-10-25 01:35:36,409.409 INFO    ] 200
[2026-10-25 01:35:36,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:36,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:36,469.469 INFO    ] No update needed
[2026-10-25 01:35:36,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 01:35:36,506.506 INFO    ] 200
[2026-10-25 01:35:36,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:36,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:35:36,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:36,604.604 INFO    ] No camera update needed
[2026-10-25 01:35:36,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:35:36,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:35:36,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:35:36,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:35:38,658.658 INFO    ] ================================================
[2026-10-25 01:35:38,673.673 INFO    ] Launching Daemon at Sun Oct 25 01:35:38 IST 2026
[2026-10-25 01:35:38,684.684 INFO    ] ================================================
[2026-10-25 01:35:39,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:35:39
[2026-10-25 01:35:39,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:35:40,098.098 INFO    ] Initializing speech engine...
[2026-10-25 01:35:40,109.109 INFO    ] 2026-10-25 01:35:40
[2026-10-25 01:35:40,353.353 INFO    ] 2026-10-25 01:35:40
[2026-10-25 01:35:40,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:35:40,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:35:40,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:35:40,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:35:40,825.825 INFO    ] time= 25/10/2026 01:35:40
[2026-10-25 01:35:40,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:35:40,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:35:41,038.038 INFO    ] No existing commands found in stream
[2026-10-25 01:35:46,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:35:46,068.068 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 01:35:48,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:35:48,896.896 INFO    ] Checking for system updates...
[2026-10-25 01:35:48,932.932 INFO    ] 200
[2026-10-25 01:35:48,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:48,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:48,989.989 INFO    ] No update needed
[2026-10-25 01:35:48,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 01:35:49,025.025 INFO    ] 200
[2026-10-25 01:35:49,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:35:49,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:35:49,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:35:49,124.124 INFO    ] No camera update needed
[2026-10-25 01:35:49,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:35:49,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:35:49,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:35:49,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:35:51,181.181 INFO    ] ================================================
[2026-10-25 01:35:51,197.197 INFO    ] Launching Daemon at Sun Oct 25 01:35:51 IST 2026
[2026-10-25 01:35:51,207.207 INFO    ] ================================================
[2026-10-25 01:35:51,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:35:51
[2026-10-25 01:35:52,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:35:52,622.622 INFO    ] Initializing speech engine...
[2026-10-25 01:35:52,631.631 INFO    ] 2026-10-25 01:35:52
[2026-10-25 01:35:52,875.875 INFO    ] 2026-10-25 01:35:52
[2026-10-25 01:35:52,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:35:53,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:35:53,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:35:53,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:35:53,348.348 INFO    ] time= 25/10/2026 01:35:53
[2026-10-25 01:35:53,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:35:53,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:35:53,497.497 INFO    ] No existing commands found in stream
[2026-10-25 01:35:58,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:35:58,512.512 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 01:36:00,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:36:00,130.130 INFO    ] Checking for system updates...
[2026-10-25 01:36:00,166.166 INFO    ] 200
[2026-10-25 01:36:00,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:00,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:00,225.225 INFO    ] No update needed
[2026-10-25 01:36:00,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 01:36:00,261.261 INFO    ] 200
[2026-10-25 01:36:00,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:00,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:36:00,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:00,363.363 INFO    ] No camera update needed
[2026-10-25 01:36:00,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:36:00,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:36:00,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:36:00,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:36:02,421.421 INFO    ] ================================================
[2026-10-25 01:36:02,438.438 INFO    ] Launching Daemon at Sun Oct 25 01:36:02 IST 2026
[2026-10-25 01:36:02,450.450 INFO    ] ================================================
[2026-10-25 01:36:03,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:36:03
[2026-10-25 01:36:03,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:36:03,965.965 INFO    ] Initializing speech engine...
[2026-10-25 01:36:03,971.971 INFO    ] 2026-10-25 01:36:03
[2026-10-25 01:36:04,249.249 INFO    ] 2026-10-25 01:36:04
[2026-10-25 01:36:04,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:36:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:36:04,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:36:04,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:36:04,624.624 INFO    ] time= 25/10/2026 01:36:04
[2026-10-25 01:36:04,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:36:04,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:36:04,749.749 INFO    ] No existing commands found in stream
[2026-10-25 01:36:09,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:36:09,767.767 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 01:36:10,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:36:10,278.278 INFO    ] Checking for system updates...
[2026-10-25 01:36:10,318.318 INFO    ] 200
[2026-10-25 01:36:10,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:10,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:10,375.375 INFO    ] No update needed
[2026-10-25 01:36:10,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 01:36:10,411.411 INFO    ] 200
[2026-10-25 01:36:10,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:10,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:36:10,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:10,513.513 INFO    ] No camera update needed
[2026-10-25 01:36:10,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:36:10,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:36:10,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:36:10,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:36:12,568.568 INFO    ] ================================================
[2026-10-25 01:36:12,582.582 INFO    ] Launching Daemon at Sun Oct 25 01:36:12 IST 2026
[2026-10-25 01:36:12,593.593 INFO    ] ================================================
[2026-10-25 01:36:13,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:36:13
[2026-10-25 01:36:13,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:36:13,986.986 INFO    ] Initializing speech engine...
[2026-10-25 01:36:13,992.992 INFO    ] 2026-10-25 01:36:13
[2026-10-25 01:36:14,267.267 INFO    ] 2026-10-25 01:36:14
[2026-10-25 01:36:14,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:36:14,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:36:14,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:36:14,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:36:14,744.744 INFO    ] time= 25/10/2026 01:36:14
[2026-10-25 01:36:14,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:36:14,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:36:14,960.960 INFO    ] No existing commands found in stream
[2026-10-25 01:36:19,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:36:19,993.993 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 01:36:24,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:36:24,093.093 INFO    ] Checking for system updates...
[2026-10-25 01:36:24,129.129 INFO    ] 200
[2026-10-25 01:36:24,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:24,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:36:24,187.187 INFO    ] No update needed
[2026-10-25 01:36:24,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 01:36:24,225.225 INFO    ] 200
[2026-10-25 01:36:24,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:24,273.273 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:36:24,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:36:24,325.325 INFO    ] No camera update needed
[2026-10-25 01:36:24,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:36:24,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:36:24,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:36:24,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:36:26,381.381 INFO    ] ================================================
[2026-10-25 01:36:26,396.396 INFO    ] Launching Daemon at Sun Oct 25 01:36:26 IST 2026
[2026-10-25 01:36:26,407.407 INFO    ] ================================================
[2026-10-25 01:36:26,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:36:26
[2026-10-25 01:36:27,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:36:27,811.811 INFO    ] Initializing speech engine...
[2026-10-25 01:36:27,819.819 INFO    ] 2026-10-25 01:36:27
[2026-10-25 01:36:28,107.107 INFO    ] 2026-10-25 01:36:28
[2026-10-25 01:36:28,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:36:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:36:28,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:36:28,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:36:28,513.513 INFO    ] time= 25/10/2026 01:36:28
[2026-10-25 01:36:28,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:36:28,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:36:28,601.601 INFO    ] No existing commands found in stream
[2026-10-25 01:36:33,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:36:33,616.616 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 01:36:37,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:36:37,413.413 INFO    ] Checking for system updates...
[2026-10-25 01:36:37,452.452 INFO    ] 200
[2026-10-25 01:36:37,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:37,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:37,516.516 INFO    ] No update needed
[2026-10-25 01:36:37,518.518 INFO    ] Checking for camera pi updates...
[2026-10-25 01:36:37,556.556 INFO    ] 200
[2026-10-25 01:36:37,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:37,599.599 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:36:37,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:37,705.705 INFO    ] No camera update needed
[2026-10-25 01:36:37,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:36:37,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:36:37,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:36:37,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:36:39,767.767 INFO    ] ================================================
[2026-10-25 01:36:39,782.782 INFO    ] Launching Daemon at Sun Oct 25 01:36:39 IST 2026
[2026-10-25 01:36:39,793.793 INFO    ] ================================================
[2026-10-25 01:36:40,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:36:40
[2026-10-25 01:36:40,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:36:41,224.224 INFO    ] Initializing speech engine...
[2026-10-25 01:36:41,233.233 INFO    ] 2026-10-25 01:36:41
[2026-10-25 01:36:41,478.478 INFO    ] 2026-10-25 01:36:41
[2026-10-25 01:36:41,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:36:41,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:36:41,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:36:41,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:36:41,936.936 INFO    ] time= 25/10/2026 01:36:41
[2026-10-25 01:36:41,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:36:42,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:36:42,102.102 INFO    ] No existing commands found in stream
[2026-10-25 01:36:47,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:36:47,140.140 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 01:36:48,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:36:48,710.710 INFO    ] Checking for system updates...
[2026-10-25 01:36:48,746.746 INFO    ] 200
[2026-10-25 01:36:48,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:48,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:48,813.813 INFO    ] No update needed
[2026-10-25 01:36:48,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 01:36:48,853.853 INFO    ] 200
[2026-10-25 01:36:48,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:36:48,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:36:48,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:36:48,965.965 INFO    ] No camera update needed
[2026-10-25 01:36:48,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:36:48,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:36:48,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:36:48,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:36:51,021.021 INFO    ] ================================================
[2026-10-25 01:36:51,036.036 INFO    ] Launching Daemon at Sun Oct 25 01:36:51 IST 2026
[2026-10-25 01:36:51,047.047 INFO    ] ================================================
[2026-10-25 01:36:51,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:36:51
[2026-10-25 01:36:52,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:36:52,457.457 INFO    ] Initializing speech engine...
[2026-10-25 01:36:52,466.466 INFO    ] 2026-10-25 01:36:52
[2026-10-25 01:36:52,759.759 INFO    ] 2026-10-25 01:36:52
[2026-10-25 01:36:52,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:36:52,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:36:53,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:36:53,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:36:53,139.139 INFO    ] time= 25/10/2026 01:36:53
[2026-10-25 01:36:53,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:36:53,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:36:53,264.264 INFO    ] No existing commands found in stream
[2026-10-25 01:36:58,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:36:58,280.280 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 01:37:01,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:37:01,799.799 INFO    ] Checking for system updates...
[2026-10-25 01:37:01,879.879 INFO    ] 200
[2026-10-25 01:37:01,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:01,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:37:02,000.000 INFO    ] No update needed
[2026-10-25 01:37:02,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 01:37:02,068.068 INFO    ] 200
[2026-10-25 01:37:02,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:02,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:37:02,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:37:02,173.173 INFO    ] No camera update needed
[2026-10-25 01:37:02,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:37:02,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:37:02,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:37:02,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:37:04,244.244 INFO    ] ================================================
[2026-10-25 01:37:04,259.259 INFO    ] Launching Daemon at Sun Oct 25 01:37:04 IST 2026
[2026-10-25 01:37:04,269.269 INFO    ] ================================================
[2026-10-25 01:37:04,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:37:04
[2026-10-25 01:37:05,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:37:05,688.688 INFO    ] Initializing speech engine...
[2026-10-25 01:37:05,697.697 INFO    ] 2026-10-25 01:37:05
[2026-10-25 01:37:05,942.942 INFO    ] 2026-10-25 01:37:05
[2026-10-25 01:37:05,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:37:06,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:37:06,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:37:06,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:37:06,308.308 INFO    ] time= 25/10/2026 01:37:06
[2026-10-25 01:37:06,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:37:06,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:37:06,386.386 INFO    ] No existing commands found in stream
[2026-10-25 01:37:11,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:37:11,414.414 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 01:37:15,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:37:15,559.559 INFO    ] Checking for system updates...
[2026-10-25 01:37:15,600.600 INFO    ] 200
[2026-10-25 01:37:15,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:15,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:37:15,672.672 INFO    ] No update needed
[2026-10-25 01:37:15,675.675 INFO    ] Checking for camera pi updates...
[2026-10-25 01:37:15,709.709 INFO    ] 200
[2026-10-25 01:37:15,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:15,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:37:15,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:37:15,812.812 INFO    ] No camera update needed
[2026-10-25 01:37:15,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:37:15,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:37:15,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:37:15,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:37:17,871.871 INFO    ] ================================================
[2026-10-25 01:37:17,886.886 INFO    ] Launching Daemon at Sun Oct 25 01:37:17 IST 2026
[2026-10-25 01:37:17,897.897 INFO    ] ================================================
[2026-10-25 01:37:18,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:37:18
[2026-10-25 01:37:19,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:37:19,317.317 INFO    ] Initializing speech engine...
[2026-10-25 01:37:19,326.326 INFO    ] 2026-10-25 01:37:19
[2026-10-25 01:37:19,572.572 INFO    ] 2026-10-25 01:37:19
[2026-10-25 01:37:19,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:37:19,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:37:19,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:37:19,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:37:19,940.940 INFO    ] time= 25/10/2026 01:37:19
[2026-10-25 01:37:19,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:37:19,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:37:20,109.109 INFO    ] No existing commands found in stream
[2026-10-25 01:37:25,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:37:25,147.147 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 01:37:26,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:37:26,322.322 INFO    ] Checking for system updates...
[2026-10-25 01:37:26,361.361 INFO    ] 200
[2026-10-25 01:37:26,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:26,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:26,426.426 INFO    ] No update needed
[2026-10-25 01:37:26,428.428 INFO    ] Checking for camera pi updates...
[2026-10-25 01:37:26,463.463 INFO    ] 200
[2026-10-25 01:37:26,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:26,511.511 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:37:26,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:26,568.568 INFO    ] No camera update needed
[2026-10-25 01:37:26,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:37:26,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:37:26,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:37:26,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:37:28,625.625 INFO    ] ================================================
[2026-10-25 01:37:28,640.640 INFO    ] Launching Daemon at Sun Oct 25 01:37:28 IST 2026
[2026-10-25 01:37:28,650.650 INFO    ] ================================================
[2026-10-25 01:37:29,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:37:29
[2026-10-25 01:37:29,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:37:30,129.129 INFO    ] Initializing speech engine...
[2026-10-25 01:37:30,139.139 INFO    ] 2026-10-25 01:37:30
[2026-10-25 01:37:30,400.400 INFO    ] 2026-10-25 01:37:30
[2026-10-25 01:37:30,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:37:30,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:37:30,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:37:30,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:37:30,946.946 INFO    ] time= 25/10/2026 01:37:30
[2026-10-25 01:37:30,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:37:30,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:37:31,100.100 INFO    ] No existing commands found in stream
[2026-10-25 01:37:36,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:37:36,131.131 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 01:37:38,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:37:38,662.662 INFO    ] Checking for system updates...
[2026-10-25 01:37:38,703.703 INFO    ] 200
[2026-10-25 01:37:38,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:38,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:38,761.761 INFO    ] No update needed
[2026-10-25 01:37:38,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 01:37:38,797.797 INFO    ] 200
[2026-10-25 01:37:38,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:38,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:37:38,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:38,998.998 INFO    ] No camera update needed
[2026-10-25 01:37:39,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:37:39,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:37:39,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:37:39,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:37:41,056.056 INFO    ] ================================================
[2026-10-25 01:37:41,072.072 INFO    ] Launching Daemon at Sun Oct 25 01:37:41 IST 2026
[2026-10-25 01:37:41,083.083 INFO    ] ================================================
[2026-10-25 01:37:41,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:37:41
[2026-10-25 01:37:42,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:37:42,550.550 INFO    ] Initializing speech engine...
[2026-10-25 01:37:42,559.559 INFO    ] 2026-10-25 01:37:42
[2026-10-25 01:37:42,808.808 INFO    ] 2026-10-25 01:37:42
[2026-10-25 01:37:42,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:37:43,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:37:43,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:37:43,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:37:43,287.287 INFO    ] time= 25/10/2026 01:37:43
[2026-10-25 01:37:43,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:37:43,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:37:43,497.497 INFO    ] No existing commands found in stream
[2026-10-25 01:37:48,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:37:48,525.525 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 01:37:51,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:37:51,782.782 INFO    ] Checking for system updates...
[2026-10-25 01:37:51,818.818 INFO    ] 200
[2026-10-25 01:37:51,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:51,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:51,884.884 INFO    ] No update needed
[2026-10-25 01:37:51,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 01:37:51,922.922 INFO    ] 200
[2026-10-25 01:37:51,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:37:51,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:37:52,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:37:52,031.031 INFO    ] No camera update needed
[2026-10-25 01:37:52,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:37:52,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:37:52,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:37:52,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:37:54,088.088 INFO    ] ================================================
[2026-10-25 01:37:54,103.103 INFO    ] Launching Daemon at Sun Oct 25 01:37:54 IST 2026
[2026-10-25 01:37:54,114.114 INFO    ] ================================================
[2026-10-25 01:37:54,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:37:54
[2026-10-25 01:37:55,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:37:55,562.562 INFO    ] Initializing speech engine...
[2026-10-25 01:37:55,572.572 INFO    ] 2026-10-25 01:37:55
[2026-10-25 01:37:55,820.820 INFO    ] 2026-10-25 01:37:55
[2026-10-25 01:37:55,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:37:56,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:37:56,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:37:56,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:37:56,317.317 INFO    ] time= 25/10/2026 01:37:56
[2026-10-25 01:37:56,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:37:56,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:37:56,493.493 INFO    ] No existing commands found in stream
[2026-10-25 01:38:01,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:38:01,527.527 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 01:38:05,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:38:05,712.712 INFO    ] Checking for system updates...
[2026-10-25 01:38:05,754.754 INFO    ] 200
[2026-10-25 01:38:05,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:05,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:38:05,816.816 INFO    ] No update needed
[2026-10-25 01:38:05,818.818 INFO    ] Checking for camera pi updates...
[2026-10-25 01:38:05,853.853 INFO    ] 200
[2026-10-25 01:38:05,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:05,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:38:05,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:38:05,957.957 INFO    ] No camera update needed
[2026-10-25 01:38:05,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:38:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:38:05,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:38:05,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:38:08,017.017 INFO    ] ================================================
[2026-10-25 01:38:08,032.032 INFO    ] Launching Daemon at Sun Oct 25 01:38:08 IST 2026
[2026-10-25 01:38:08,043.043 INFO    ] ================================================
[2026-10-25 01:38:08,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:38:08
[2026-10-25 01:38:09,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:38:09,471.471 INFO    ] Initializing speech engine...
[2026-10-25 01:38:09,482.482 INFO    ] 2026-10-25 01:38:09
[2026-10-25 01:38:09,742.742 INFO    ] 2026-10-25 01:38:09
[2026-10-25 01:38:09,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:38:10,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:38:10,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:38:10,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:38:10,232.232 INFO    ] time= 25/10/2026 01:38:10
[2026-10-25 01:38:10,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:38:10,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:38:10,411.411 INFO    ] No existing commands found in stream
[2026-10-25 01:38:15,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:38:15,445.445 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 01:38:16,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:38:16,793.793 INFO    ] Checking for system updates...
[2026-10-25 01:38:16,831.831 INFO    ] 200
[2026-10-25 01:38:16,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:16,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:16,891.891 INFO    ] No update needed
[2026-10-25 01:38:16,893.893 INFO    ] Checking for camera pi updates...
[2026-10-25 01:38:16,929.929 INFO    ] 200
[2026-10-25 01:38:16,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:17,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:38:17,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:17,057.057 INFO    ] No camera update needed
[2026-10-25 01:38:17,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:38:17,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:38:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:38:17,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:38:19,114.114 INFO    ] ================================================
[2026-10-25 01:38:19,129.129 INFO    ] Launching Daemon at Sun Oct 25 01:38:19 IST 2026
[2026-10-25 01:38:19,140.140 INFO    ] ================================================
[2026-10-25 01:38:19,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:38:19
[2026-10-25 01:38:20,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:38:20,714.714 INFO    ] Initializing speech engine...
[2026-10-25 01:38:20,723.723 INFO    ] 2026-10-25 01:38:20
[2026-10-25 01:38:20,968.968 INFO    ] 2026-10-25 01:38:20
[2026-10-25 01:38:21,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:38:21,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:38:21,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:38:21,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:38:21,451.451 INFO    ] time= 25/10/2026 01:38:21
[2026-10-25 01:38:21,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:38:21,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:38:21,658.658 INFO    ] No existing commands found in stream
[2026-10-25 01:38:26,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:38:26,683.683 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 01:38:28,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:38:28,509.509 INFO    ] Checking for system updates...
[2026-10-25 01:38:28,544.544 INFO    ] 200
[2026-10-25 01:38:28,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:28,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:38:28,607.607 INFO    ] No update needed
[2026-10-25 01:38:28,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 01:38:28,645.645 INFO    ] 200
[2026-10-25 01:38:28,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:28,693.693 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:38:28,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:38:28,743.743 INFO    ] No camera update needed
[2026-10-25 01:38:28,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:38:28,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:38:28,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:38:28,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:38:30,799.799 INFO    ] ================================================
[2026-10-25 01:38:30,815.815 INFO    ] Launching Daemon at Sun Oct 25 01:38:30 IST 2026
[2026-10-25 01:38:30,826.826 INFO    ] ================================================
[2026-10-25 01:38:31,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:38:31
[2026-10-25 01:38:31,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:38:32,258.258 INFO    ] Initializing speech engine...
[2026-10-25 01:38:32,267.267 INFO    ] 2026-10-25 01:38:32
[2026-10-25 01:38:32,582.582 INFO    ] 2026-10-25 01:38:32
[2026-10-25 01:38:32,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:38:32,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:38:32,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:38:32,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:38:32,983.983 INFO    ] time= 25/10/2026 01:38:32
[2026-10-25 01:38:32,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:38:33,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:38:33,118.118 INFO    ] No existing commands found in stream
[2026-10-25 01:38:38,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:38:38,132.132 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 01:38:41,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:38:41,977.977 INFO    ] Checking for system updates...
[2026-10-25 01:38:42,014.014 INFO    ] 200
[2026-10-25 01:38:42,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:42,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:42,071.071 INFO    ] No update needed
[2026-10-25 01:38:42,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 01:38:42,111.111 INFO    ] 200
[2026-10-25 01:38:42,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:42,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:38:42,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:42,192.192 INFO    ] No camera update needed
[2026-10-25 01:38:42,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:38:42,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:38:42,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:38:42,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:38:44,249.249 INFO    ] ================================================
[2026-10-25 01:38:44,265.265 INFO    ] Launching Daemon at Sun Oct 25 01:38:44 IST 2026
[2026-10-25 01:38:44,276.276 INFO    ] ================================================
[2026-10-25 01:38:44,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:38:44
[2026-10-25 01:38:45,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:38:45,716.716 INFO    ] Initializing speech engine...
[2026-10-25 01:38:45,723.723 INFO    ] 2026-10-25 01:38:45
[2026-10-25 01:38:46,017.017 INFO    ] 2026-10-25 01:38:45
[2026-10-25 01:38:46,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:38:46,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:38:46,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:38:46,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:38:46,437.437 INFO    ] time= 25/10/2026 01:38:46
[2026-10-25 01:38:46,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:38:46,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:38:46,521.521 INFO    ] No existing commands found in stream
[2026-10-25 01:38:51,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:38:51,536.536 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 01:38:51,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:38:51,982.982 INFO    ] Checking for system updates...
[2026-10-25 01:38:52,018.018 INFO    ] 200
[2026-10-25 01:38:52,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:52,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:52,077.077 INFO    ] No update needed
[2026-10-25 01:38:52,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 01:38:52,113.113 INFO    ] 200
[2026-10-25 01:38:52,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:38:52,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:38:52,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:38:52,206.206 INFO    ] No camera update needed
[2026-10-25 01:38:52,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:38:52,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:38:52,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:38:52,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:38:54,263.263 INFO    ] ================================================
[2026-10-25 01:38:54,279.279 INFO    ] Launching Daemon at Sun Oct 25 01:38:54 IST 2026
[2026-10-25 01:38:54,290.290 INFO    ] ================================================
[2026-10-25 01:38:54,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:38:54
[2026-10-25 01:38:55,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:38:55,909.909 INFO    ] Initializing speech engine...
[2026-10-25 01:38:55,917.917 INFO    ] 2026-10-25 01:38:55
[2026-10-25 01:38:56,190.190 INFO    ] 2026-10-25 01:38:56
[2026-10-25 01:38:56,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:38:56,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:38:56,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:38:56,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:38:56,708.708 INFO    ] time= 25/10/2026 01:38:56
[2026-10-25 01:38:56,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:38:56,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:38:56,888.888 INFO    ] No existing commands found in stream
[2026-10-25 01:39:01,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:39:01,932.932 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 01:39:05,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:39:05,651.651 INFO    ] Checking for system updates...
[2026-10-25 01:39:05,689.689 INFO    ] 200
[2026-10-25 01:39:05,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:05,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:39:05,750.750 INFO    ] No update needed
[2026-10-25 01:39:05,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 01:39:05,791.791 INFO    ] 200
[2026-10-25 01:39:05,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:05,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:39:05,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:39:05,900.900 INFO    ] No camera update needed
[2026-10-25 01:39:05,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:39:05,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:39:05,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:39:05,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:39:07,959.959 INFO    ] ================================================
[2026-10-25 01:39:07,974.974 INFO    ] Launching Daemon at Sun Oct 25 01:39:07 IST 2026
[2026-10-25 01:39:07,985.985 INFO    ] ================================================
[2026-10-25 01:39:08,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:39:08
[2026-10-25 01:39:09,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:39:09,576.576 INFO    ] Initializing speech engine...
[2026-10-25 01:39:09,603.603 INFO    ] 2026-10-25 01:39:09
[2026-10-25 01:39:09,868.868 INFO    ] 2026-10-25 01:39:09
[2026-10-25 01:39:09,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:39:10,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:39:10,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:39:10,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:39:10,389.389 INFO    ] time= 25/10/2026 01:39:10
[2026-10-25 01:39:10,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:39:10,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:39:10,581.581 INFO    ] No existing commands found in stream
[2026-10-25 01:39:15,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:39:15,615.615 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 01:39:19,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:39:19,177.177 INFO    ] Checking for system updates...
[2026-10-25 01:39:19,214.214 INFO    ] 200
[2026-10-25 01:39:19,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:19,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:39:19,280.280 INFO    ] No update needed
[2026-10-25 01:39:19,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 01:39:19,322.322 INFO    ] 200
[2026-10-25 01:39:19,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:19,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:39:19,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:39:19,419.419 INFO    ] No camera update needed
[2026-10-25 01:39:19,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:39:19,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:39:19,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:39:19,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:39:21,477.477 INFO    ] ================================================
[2026-10-25 01:39:21,493.493 INFO    ] Launching Daemon at Sun Oct 25 01:39:21 IST 2026
[2026-10-25 01:39:21,504.504 INFO    ] ================================================
[2026-10-25 01:39:22,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:39:22
[2026-10-25 01:39:22,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:39:22,917.917 INFO    ] Initializing speech engine...
[2026-10-25 01:39:22,942.942 INFO    ] 2026-10-25 01:39:22
[2026-10-25 01:39:23,214.214 INFO    ] 2026-10-25 01:39:23
[2026-10-25 01:39:23,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:39:23,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:39:23,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:39:23,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:39:23,628.628 INFO    ] time= 25/10/2026 01:39:23
[2026-10-25 01:39:23,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:39:23,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:39:23,721.721 INFO    ] No existing commands found in stream
[2026-10-25 01:39:28,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:39:28,755.755 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 01:39:29,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:39:29,933.933 INFO    ] Checking for system updates...
[2026-10-25 01:39:29,971.971 INFO    ] 200
[2026-10-25 01:39:29,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:30,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:30,029.029 INFO    ] No update needed
[2026-10-25 01:39:30,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 01:39:30,065.065 INFO    ] 200
[2026-10-25 01:39:30,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:30,113.113 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:39:30,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:30,147.147 INFO    ] No camera update needed
[2026-10-25 01:39:30,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:39:30,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:39:30,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:39:30,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:39:32,204.204 INFO    ] ================================================
[2026-10-25 01:39:32,220.220 INFO    ] Launching Daemon at Sun Oct 25 01:39:32 IST 2026
[2026-10-25 01:39:32,232.232 INFO    ] ================================================
[2026-10-25 01:39:32,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:39:32
[2026-10-25 01:39:33,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:39:33,698.698 INFO    ] Initializing speech engine...
[2026-10-25 01:39:33,707.707 INFO    ] 2026-10-25 01:39:33
[2026-10-25 01:39:33,998.998 INFO    ] 2026-10-25 01:39:33
[2026-10-25 01:39:34,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:39:34,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:39:34,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:39:34,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:39:34,416.416 INFO    ] time= 25/10/2026 01:39:34
[2026-10-25 01:39:34,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:39:34,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:39:34,568.568 INFO    ] No existing commands found in stream
[2026-10-25 01:39:39,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:39:39,591.591 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 01:39:42,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:39:42,362.362 INFO    ] Checking for system updates...
[2026-10-25 01:39:42,402.402 INFO    ] 200
[2026-10-25 01:39:42,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:42,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:42,461.461 INFO    ] No update needed
[2026-10-25 01:39:42,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 01:39:42,497.497 INFO    ] 200
[2026-10-25 01:39:42,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:42,540.540 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:39:42,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:42,692.692 INFO    ] No camera update needed
[2026-10-25 01:39:42,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:39:42,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:39:42,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:39:42,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:39:44,747.747 INFO    ] ================================================
[2026-10-25 01:39:44,763.763 INFO    ] Launching Daemon at Sun Oct 25 01:39:44 IST 2026
[2026-10-25 01:39:44,774.774 INFO    ] ================================================
[2026-10-25 01:39:45,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:39:45
[2026-10-25 01:39:46,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:39:46,391.391 INFO    ] Initializing speech engine...
[2026-10-25 01:39:46,405.405 INFO    ] 2026-10-25 01:39:46
[2026-10-25 01:39:46,689.689 INFO    ] 2026-10-25 01:39:46
[2026-10-25 01:39:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:39:46,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:39:46,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:39:47,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:39:47,219.219 INFO    ] time= 25/10/2026 01:39:47
[2026-10-25 01:39:47,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:39:47,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:39:47,367.367 INFO    ] No existing commands found in stream
[2026-10-25 01:39:52,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:39:52,387.387 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 01:39:54,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:39:54,294.294 INFO    ] Checking for system updates...
[2026-10-25 01:39:54,331.331 INFO    ] 200
[2026-10-25 01:39:54,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:54,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:54,388.388 INFO    ] No update needed
[2026-10-25 01:39:54,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 01:39:54,428.428 INFO    ] 200
[2026-10-25 01:39:54,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:39:54,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:39:54,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:39:54,520.520 INFO    ] No camera update needed
[2026-10-25 01:39:54,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:39:54,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:39:54,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:39:54,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:39:56,578.578 INFO    ] ================================================
[2026-10-25 01:39:56,593.593 INFO    ] Launching Daemon at Sun Oct 25 01:39:56 IST 2026
[2026-10-25 01:39:56,605.605 INFO    ] ================================================
[2026-10-25 01:39:57,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:39:57
[2026-10-25 01:39:57,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:39:58,225.225 INFO    ] Initializing speech engine...
[2026-10-25 01:39:58,239.239 INFO    ] 2026-10-25 01:39:58
[2026-10-25 01:39:58,520.520 INFO    ] 2026-10-25 01:39:58
[2026-10-25 01:39:58,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:39:58,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:39:58,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:39:59,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:39:59,070.070 INFO    ] time= 25/10/2026 01:39:59
[2026-10-25 01:39:59,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:39:59,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:39:59,230.230 INFO    ] No existing commands found in stream
[2026-10-25 01:40:04,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:40:04,247.247 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 01:40:08,704.704 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:40:08,707.707 INFO    ] Checking for system updates...
[2026-10-25 01:40:08,749.749 INFO    ] 200
[2026-10-25 01:40:08,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:08,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:08,810.810 INFO    ] No update needed
[2026-10-25 01:40:08,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 01:40:08,852.852 INFO    ] 200
[2026-10-25 01:40:08,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:08,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:40:08,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:08,969.969 INFO    ] No camera update needed
[2026-10-25 01:40:08,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:40:08,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:40:08,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:40:08,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:40:11,031.031 INFO    ] ================================================
[2026-10-25 01:40:11,047.047 INFO    ] Launching Daemon at Sun Oct 25 01:40:11 IST 2026
[2026-10-25 01:40:11,058.058 INFO    ] ================================================
[2026-10-25 01:40:11,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:40:11
[2026-10-25 01:40:12,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:40:12,478.478 INFO    ] Initializing speech engine...
[2026-10-25 01:40:12,486.486 INFO    ] 2026-10-25 01:40:12
[2026-10-25 01:40:12,735.735 INFO    ] 2026-10-25 01:40:12
[2026-10-25 01:40:12,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:40:12,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:40:13,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:40:13,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:40:13,209.209 INFO    ] time= 25/10/2026 01:40:13
[2026-10-25 01:40:13,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:40:13,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:40:13,350.350 INFO    ] No existing commands found in stream
[2026-10-25 01:40:18,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:40:18,364.364 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 01:40:21,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:40:21,589.589 INFO    ] Checking for system updates...
[2026-10-25 01:40:21,626.626 INFO    ] 200
[2026-10-25 01:40:21,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:21,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:21,686.686 INFO    ] No update needed
[2026-10-25 01:40:21,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 01:40:21,725.725 INFO    ] 200
[2026-10-25 01:40:21,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:21,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:40:21,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:21,839.839 INFO    ] No camera update needed
[2026-10-25 01:40:21,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:40:21,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:40:21,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:40:21,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:40:23,897.897 INFO    ] ================================================
[2026-10-25 01:40:23,912.912 INFO    ] Launching Daemon at Sun Oct 25 01:40:23 IST 2026
[2026-10-25 01:40:23,923.923 INFO    ] ================================================
[2026-10-25 01:40:24,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:40:24
[2026-10-25 01:40:25,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:40:25,562.562 INFO    ] Initializing speech engine...
[2026-10-25 01:40:25,576.576 INFO    ] 2026-10-25 01:40:25
[2026-10-25 01:40:25,867.867 INFO    ] 2026-10-25 01:40:25
[2026-10-25 01:40:25,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:40:26,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:40:26,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:40:26,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:40:26,401.401 INFO    ] time= 25/10/2026 01:40:26
[2026-10-25 01:40:26,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:40:26,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:40:26,551.551 INFO    ] No existing commands found in stream
[2026-10-25 01:40:31,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:40:31,572.572 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 01:40:33,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:40:33,955.955 INFO    ] Checking for system updates...
[2026-10-25 01:40:33,992.992 INFO    ] 200
[2026-10-25 01:40:33,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:34,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:34,053.053 INFO    ] No update needed
[2026-10-25 01:40:34,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 01:40:34,090.090 INFO    ] 200
[2026-10-25 01:40:34,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:34,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:40:34,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:40:34,196.196 INFO    ] No camera update needed
[2026-10-25 01:40:34,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:40:34,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:40:34,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:40:34,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:40:36,256.256 INFO    ] ================================================
[2026-10-25 01:40:36,272.272 INFO    ] Launching Daemon at Sun Oct 25 01:40:36 IST 2026
[2026-10-25 01:40:36,283.283 INFO    ] ================================================
[2026-10-25 01:40:36,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:40:36
[2026-10-25 01:40:37,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:40:37,684.684 INFO    ] Initializing speech engine...
[2026-10-25 01:40:37,693.693 INFO    ] 2026-10-25 01:40:37
[2026-10-25 01:40:37,985.985 INFO    ] 2026-10-25 01:40:37
[2026-10-25 01:40:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:40:38,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:40:38,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:40:38,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:40:38,365.365 INFO    ] time= 25/10/2026 01:40:38
[2026-10-25 01:40:38,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:40:38,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:40:38,491.491 INFO    ] No existing commands found in stream
[2026-10-25 01:40:43,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:40:43,506.506 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 01:40:46,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:40:46,059.059 INFO    ] Checking for system updates...
[2026-10-25 01:40:46,096.096 INFO    ] 200
[2026-10-25 01:40:46,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:46,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:40:46,163.163 INFO    ] No update needed
[2026-10-25 01:40:46,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 01:40:46,201.201 INFO    ] 200
[2026-10-25 01:40:46,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:46,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:40:46,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:40:46,307.307 INFO    ] No camera update needed
[2026-10-25 01:40:46,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:40:46,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:40:46,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:40:46,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:40:48,363.363 INFO    ] ================================================
[2026-10-25 01:40:48,379.379 INFO    ] Launching Daemon at Sun Oct 25 01:40:48 IST 2026
[2026-10-25 01:40:48,390.390 INFO    ] ================================================
[2026-10-25 01:40:49,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:40:49
[2026-10-25 01:40:49,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:40:50,036.036 INFO    ] Initializing speech engine...
[2026-10-25 01:40:50,047.047 INFO    ] 2026-10-25 01:40:50
[2026-10-25 01:40:50,359.359 INFO    ] 2026-10-25 01:40:50
[2026-10-25 01:40:50,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:40:50,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:40:50,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:40:50,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:40:50,880.880 INFO    ] time= 25/10/2026 01:40:50
[2026-10-25 01:40:50,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:40:50,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:40:51,058.058 INFO    ] No existing commands found in stream
[2026-10-25 01:40:56,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:40:56,072.072 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 01:40:58,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:40:58,542.542 INFO    ] Checking for system updates...
[2026-10-25 01:40:58,580.580 INFO    ] 200
[2026-10-25 01:40:58,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:58,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:40:58,648.648 INFO    ] No update needed
[2026-10-25 01:40:58,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 01:40:58,686.686 INFO    ] 200
[2026-10-25 01:40:58,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:40:58,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:40:58,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:40:58,779.779 INFO    ] No camera update needed
[2026-10-25 01:40:58,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:40:58,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:40:58,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:40:58,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:00,839.839 INFO    ] ================================================
[2026-10-25 01:41:00,855.855 INFO    ] Launching Daemon at Sun Oct 25 01:41:00 IST 2026
[2026-10-25 01:41:00,866.866 INFO    ] ================================================
[2026-10-25 01:41:01,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:01
[2026-10-25 01:41:02,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:41:02,772.772 INFO    ] Initializing speech engine...
[2026-10-25 01:41:02,778.778 INFO    ] 2026-10-25 01:41:02
[2026-10-25 01:41:03,107.107 INFO    ] 2026-10-25 01:41:03
[2026-10-25 01:41:03,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:41:03,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:41:03,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:41:03,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:41:03,622.622 INFO    ] time= 25/10/2026 01:41:03
[2026-10-25 01:41:03,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:41:03,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:41:03,822.822 INFO    ] No existing commands found in stream
[2026-10-25 01:41:08,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:41:08,852.852 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 01:41:10,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:41:10,181.181 INFO    ] Checking for system updates...
[2026-10-25 01:41:10,219.219 INFO    ] 200
[2026-10-25 01:41:10,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:10,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:10,279.279 INFO    ] No update needed
[2026-10-25 01:41:10,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 01:41:10,317.317 INFO    ] 200
[2026-10-25 01:41:10,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:10,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:41:10,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:10,428.428 INFO    ] No camera update needed
[2026-10-25 01:41:10,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:41:10,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:41:10,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:41:10,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:12,487.487 INFO    ] ================================================
[2026-10-25 01:41:12,502.502 INFO    ] Launching Daemon at Sun Oct 25 01:41:12 IST 2026
[2026-10-25 01:41:12,513.513 INFO    ] ================================================
[2026-10-25 01:41:13,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:13
[2026-10-25 01:41:13,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:41:14,063.063 INFO    ] Initializing speech engine...
[2026-10-25 01:41:14,085.085 INFO    ] 2026-10-25 01:41:14
[2026-10-25 01:41:14,338.338 INFO    ] 2026-10-25 01:41:14
[2026-10-25 01:41:14,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:41:14,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:41:14,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:41:14,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:41:14,833.833 INFO    ] time= 25/10/2026 01:41:14
[2026-10-25 01:41:14,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:41:14,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:41:15,032.032 INFO    ] No existing commands found in stream
[2026-10-25 01:41:20,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:41:20,059.059 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 01:41:20,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:41:20,994.994 INFO    ] Checking for system updates...
[2026-10-25 01:41:21,039.039 INFO    ] 200
[2026-10-25 01:41:21,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:21,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:21,098.098 INFO    ] No update needed
[2026-10-25 01:41:21,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 01:41:21,139.139 INFO    ] 200
[2026-10-25 01:41:21,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:21,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:41:21,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:21,230.230 INFO    ] No camera update needed
[2026-10-25 01:41:21,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:41:21,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:41:21,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:41:21,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:23,286.286 INFO    ] ================================================
[2026-10-25 01:41:23,303.303 INFO    ] Launching Daemon at Sun Oct 25 01:41:23 IST 2026
[2026-10-25 01:41:23,314.314 INFO    ] ================================================
[2026-10-25 01:41:23,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:23
[2026-10-25 01:41:24,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:41:24,729.729 INFO    ] Initializing speech engine...
[2026-10-25 01:41:24,748.748 INFO    ] 2026-10-25 01:41:24
[2026-10-25 01:41:24,999.999 INFO    ] 2026-10-25 01:41:24
[2026-10-25 01:41:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:41:25,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:41:25,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:41:25,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:41:25,425.425 INFO    ] time= 25/10/2026 01:41:25
[2026-10-25 01:41:25,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:41:25,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:41:25,512.512 INFO    ] No existing commands found in stream
[2026-10-25 01:41:30,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:41:30,527.527 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 01:41:32,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:41:32,285.285 INFO    ] Checking for system updates...
[2026-10-25 01:41:32,323.323 INFO    ] 200
[2026-10-25 01:41:32,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:32,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:32,385.385 INFO    ] No update needed
[2026-10-25 01:41:32,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 01:41:32,427.427 INFO    ] 200
[2026-10-25 01:41:32,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:32,483.483 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:41:32,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:32,521.521 INFO    ] No camera update needed
[2026-10-25 01:41:32,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:41:32,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:41:32,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:41:32,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:34,580.580 INFO    ] ================================================
[2026-10-25 01:41:34,596.596 INFO    ] Launching Daemon at Sun Oct 25 01:41:34 IST 2026
[2026-10-25 01:41:34,607.607 INFO    ] ================================================
[2026-10-25 01:41:35,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:35
[2026-10-25 01:41:35,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:41:36,274.274 INFO    ] Initializing speech engine...
[2026-10-25 01:41:36,284.284 INFO    ] 2026-10-25 01:41:36
[2026-10-25 01:41:36,536.536 INFO    ] 2026-10-25 01:41:36
[2026-10-25 01:41:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:41:36,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:41:36,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:41:37,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:41:37,079.079 INFO    ] time= 25/10/2026 01:41:37
[2026-10-25 01:41:37,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:41:37,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:41:37,224.224 INFO    ] No existing commands found in stream
[2026-10-25 01:41:42,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:41:42,247.247 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 01:41:42,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:41:42,831.831 INFO    ] Checking for system updates...
[2026-10-25 01:41:42,867.867 INFO    ] 200
[2026-10-25 01:41:42,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:42,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:42,926.926 INFO    ] No update needed
[2026-10-25 01:41:42,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 01:41:42,962.962 INFO    ] 200
[2026-10-25 01:41:42,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:43,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:41:43,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:43,059.059 INFO    ] No camera update needed
[2026-10-25 01:41:43,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:41:43,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:41:43,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:41:43,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:45,118.118 INFO    ] ================================================
[2026-10-25 01:41:45,134.134 INFO    ] Launching Daemon at Sun Oct 25 01:41:45 IST 2026
[2026-10-25 01:41:45,145.145 INFO    ] ================================================
[2026-10-25 01:41:45,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:45
[2026-10-25 01:41:46,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:41:46,713.713 INFO    ] Initializing speech engine...
[2026-10-25 01:41:46,723.723 INFO    ] 2026-10-25 01:41:46
[2026-10-25 01:41:46,982.982 INFO    ] 2026-10-25 01:41:46
[2026-10-25 01:41:47,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:41:47,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:41:47,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:41:47,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:41:47,397.397 INFO    ] time= 25/10/2026 01:41:47
[2026-10-25 01:41:47,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:41:47,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:41:47,569.569 INFO    ] No existing commands found in stream
[2026-10-25 01:41:52,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:41:52,596.596 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 01:41:56,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:41:56,041.041 INFO    ] Checking for system updates...
[2026-10-25 01:41:56,076.076 INFO    ] 200
[2026-10-25 01:41:56,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:56,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:56,142.142 INFO    ] No update needed
[2026-10-25 01:41:56,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 01:41:56,179.179 INFO    ] 200
[2026-10-25 01:41:56,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:41:56,240.240 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:41:56,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:41:56,401.401 INFO    ] No camera update needed
[2026-10-25 01:41:56,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:41:56,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:41:56,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:41:56,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:41:58,454.454 INFO    ] ================================================
[2026-10-25 01:41:58,470.470 INFO    ] Launching Daemon at Sun Oct 25 01:41:58 IST 2026
[2026-10-25 01:41:58,482.482 INFO    ] ================================================
[2026-10-25 01:41:59,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:41:59
[2026-10-25 01:41:59,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:00,008.008 INFO    ] Initializing speech engine...
[2026-10-25 01:42:00,023.023 INFO    ] 2026-10-25 01:42:00
[2026-10-25 01:42:00,294.294 INFO    ] 2026-10-25 01:42:00
[2026-10-25 01:42:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:00,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:00,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:00,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:00,696.696 INFO    ] time= 25/10/2026 01:42:00
[2026-10-25 01:42:00,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:00,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:00,802.802 INFO    ] No existing commands found in stream
[2026-10-25 01:42:05,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:42:05,818.818 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 01:42:07,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:42:07,149.149 INFO    ] Checking for system updates...
[2026-10-25 01:42:07,189.189 INFO    ] 200
[2026-10-25 01:42:07,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:07,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:07,247.247 INFO    ] No update needed
[2026-10-25 01:42:07,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 01:42:07,283.283 INFO    ] 200
[2026-10-25 01:42:07,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:07,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:42:07,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:07,392.392 INFO    ] No camera update needed
[2026-10-25 01:42:07,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:42:07,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:42:07,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:42:07,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:42:09,449.449 INFO    ] ================================================
[2026-10-25 01:42:09,465.465 INFO    ] Launching Daemon at Sun Oct 25 01:42:09 IST 2026
[2026-10-25 01:42:09,477.477 INFO    ] ================================================
[2026-10-25 01:42:10,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:42:10
[2026-10-25 01:42:10,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:10,880.880 INFO    ] Initializing speech engine...
[2026-10-25 01:42:10,888.888 INFO    ] 2026-10-25 01:42:10
[2026-10-25 01:42:11,161.161 INFO    ] 2026-10-25 01:42:11
[2026-10-25 01:42:11,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:11,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:11,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:11,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:11,591.591 INFO    ] time= 25/10/2026 01:42:11
[2026-10-25 01:42:11,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:11,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:11,742.742 INFO    ] No existing commands found in stream
[2026-10-25 01:42:16,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:42:16,765.765 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 01:42:19,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:42:19,821.821 INFO    ] Checking for system updates...
[2026-10-25 01:42:19,857.857 INFO    ] 200
[2026-10-25 01:42:19,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:19,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:42:19,920.920 INFO    ] No update needed
[2026-10-25 01:42:19,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 01:42:19,960.960 INFO    ] 200
[2026-10-25 01:42:19,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:20,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:42:20,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:42:20,054.054 INFO    ] No camera update needed
[2026-10-25 01:42:20,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:42:20,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:42:20,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:42:20,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:42:22,108.108 INFO    ] ================================================
[2026-10-25 01:42:22,124.124 INFO    ] Launching Daemon at Sun Oct 25 01:42:22 IST 2026
[2026-10-25 01:42:22,135.135 INFO    ] ================================================
[2026-10-25 01:42:22,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:42:22
[2026-10-25 01:42:23,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:23,688.688 INFO    ] Initializing speech engine...
[2026-10-25 01:42:23,695.695 INFO    ] 2026-10-25 01:42:23
[2026-10-25 01:42:23,938.938 INFO    ] 2026-10-25 01:42:23
[2026-10-25 01:42:23,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:24,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:24,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:24,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:24,428.428 INFO    ] time= 25/10/2026 01:42:24
[2026-10-25 01:42:24,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:24,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:24,640.640 INFO    ] No existing commands found in stream
[2026-10-25 01:42:29,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:42:29,671.671 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 01:42:30,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:42:30,986.986 INFO    ] Checking for system updates...
[2026-10-25 01:42:31,027.027 INFO    ] 200
[2026-10-25 01:42:31,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:31,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:31,088.088 INFO    ] No update needed
[2026-10-25 01:42:31,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 01:42:31,129.129 INFO    ] 200
[2026-10-25 01:42:31,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:31,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:42:31,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:31,225.225 INFO    ] No camera update needed
[2026-10-25 01:42:31,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:42:31,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:42:31,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:42:31,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:42:33,285.285 INFO    ] ================================================
[2026-10-25 01:42:33,301.301 INFO    ] Launching Daemon at Sun Oct 25 01:42:33 IST 2026
[2026-10-25 01:42:33,311.311 INFO    ] ================================================
[2026-10-25 01:42:33,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:42:33
[2026-10-25 01:42:34,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:34,766.766 INFO    ] Initializing speech engine...
[2026-10-25 01:42:34,775.775 INFO    ] 2026-10-25 01:42:34
[2026-10-25 01:42:35,031.031 INFO    ] 2026-10-25 01:42:35
[2026-10-25 01:42:35,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:35,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:35,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:35,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:35,489.489 INFO    ] time= 25/10/2026 01:42:35
[2026-10-25 01:42:35,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:35,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:35,651.651 INFO    ] No existing commands found in stream
[2026-10-25 01:42:40,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:42:40,689.689 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 01:42:42,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:42:42,029.029 INFO    ] Checking for system updates...
[2026-10-25 01:42:42,071.071 INFO    ] 200
[2026-10-25 01:42:42,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:42,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:42,134.134 INFO    ] No update needed
[2026-10-25 01:42:42,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 01:42:42,170.170 INFO    ] 200
[2026-10-25 01:42:42,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:42,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:42:42,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:42,266.266 INFO    ] No camera update needed
[2026-10-25 01:42:42,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:42:42,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:42:42,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:42:42,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:42:44,323.323 INFO    ] ================================================
[2026-10-25 01:42:44,339.339 INFO    ] Launching Daemon at Sun Oct 25 01:42:44 IST 2026
[2026-10-25 01:42:44,350.350 INFO    ] ================================================
[2026-10-25 01:42:44,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:42:44
[2026-10-25 01:42:45,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:45,950.950 INFO    ] Initializing speech engine...
[2026-10-25 01:42:45,963.963 INFO    ] 2026-10-25 01:42:45
[2026-10-25 01:42:46,240.240 INFO    ] 2026-10-25 01:42:46
[2026-10-25 01:42:46,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:46,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:46,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:46,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:46,795.795 INFO    ] time= 25/10/2026 01:42:46
[2026-10-25 01:42:46,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:46,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:46,957.957 INFO    ] No existing commands found in stream
[2026-10-25 01:42:51,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:42:51,979.979 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 01:42:54,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:42:54,771.771 INFO    ] Checking for system updates...
[2026-10-25 01:42:54,812.812 INFO    ] 200
[2026-10-25 01:42:54,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:54,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:54,872.872 INFO    ] No update needed
[2026-10-25 01:42:54,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 01:42:54,913.913 INFO    ] 200
[2026-10-25 01:42:54,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:42:54,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:42:55,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:42:55,022.022 INFO    ] No camera update needed
[2026-10-25 01:42:55,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:42:55,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:42:55,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:42:55,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:42:57,080.080 INFO    ] ================================================
[2026-10-25 01:42:57,095.095 INFO    ] Launching Daemon at Sun Oct 25 01:42:57 IST 2026
[2026-10-25 01:42:57,105.105 INFO    ] ================================================
[2026-10-25 01:42:57,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:42:57
[2026-10-25 01:42:58,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:42:58,697.697 INFO    ] Initializing speech engine...
[2026-10-25 01:42:58,711.711 INFO    ] 2026-10-25 01:42:58
[2026-10-25 01:42:58,995.995 INFO    ] 2026-10-25 01:42:58
[2026-10-25 01:42:59,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:42:59,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:42:59,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:42:59,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:42:59,453.453 INFO    ] time= 25/10/2026 01:42:59
[2026-10-25 01:42:59,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:42:59,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:42:59,643.643 INFO    ] No existing commands found in stream
[2026-10-25 01:43:04,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:43:04,674.674 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 01:43:05,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:43:05,860.860 INFO    ] Checking for system updates...
[2026-10-25 01:43:05,898.898 INFO    ] 200
[2026-10-25 01:43:05,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:05,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:05,959.959 INFO    ] No update needed
[2026-10-25 01:43:05,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 01:43:05,997.997 INFO    ] 200
[2026-10-25 01:43:05,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:06,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:43:06,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:06,108.108 INFO    ] No camera update needed
[2026-10-25 01:43:06,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:43:06,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:43:06,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:43:06,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:43:08,166.166 INFO    ] ================================================
[2026-10-25 01:43:08,181.181 INFO    ] Launching Daemon at Sun Oct 25 01:43:08 IST 2026
[2026-10-25 01:43:08,192.192 INFO    ] ================================================
[2026-10-25 01:43:08,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:43:08
[2026-10-25 01:43:09,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:43:09,609.609 INFO    ] Initializing speech engine...
[2026-10-25 01:43:09,618.618 INFO    ] 2026-10-25 01:43:09
[2026-10-25 01:43:09,865.865 INFO    ] 2026-10-25 01:43:09
[2026-10-25 01:43:09,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:43:10,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:43:10,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:43:10,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:43:10,378.378 INFO    ] time= 25/10/2026 01:43:10
[2026-10-25 01:43:10,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:43:10,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:43:10,552.552 INFO    ] No existing commands found in stream
[2026-10-25 01:43:15,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:43:15,579.579 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 01:43:16,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:43:16,072.072 INFO    ] Checking for system updates...
[2026-10-25 01:43:16,112.112 INFO    ] 200
[2026-10-25 01:43:16,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:16,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:43:16,171.171 INFO    ] No update needed
[2026-10-25 01:43:16,173.173 INFO    ] Checking for camera pi updates...
[2026-10-25 01:43:16,207.207 INFO    ] 200
[2026-10-25 01:43:16,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:16,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:43:16,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:43:16,296.296 INFO    ] No camera update needed
[2026-10-25 01:43:16,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:43:16,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:43:16,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:43:16,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:43:18,353.353 INFO    ] ================================================
[2026-10-25 01:43:18,368.368 INFO    ] Launching Daemon at Sun Oct 25 01:43:18 IST 2026
[2026-10-25 01:43:18,378.378 INFO    ] ================================================
[2026-10-25 01:43:18,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:43:18
[2026-10-25 01:43:19,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:43:19,781.781 INFO    ] Initializing speech engine...
[2026-10-25 01:43:19,790.790 INFO    ] 2026-10-25 01:43:19
[2026-10-25 01:43:20,085.085 INFO    ] 2026-10-25 01:43:20
[2026-10-25 01:43:20,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:43:20,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:43:20,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:43:20,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:43:20,503.503 INFO    ] time= 25/10/2026 01:43:20
[2026-10-25 01:43:20,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:43:20,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:43:20,653.653 INFO    ] No existing commands found in stream
[2026-10-25 01:43:25,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:43:25,676.676 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 01:43:29,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:43:29,526.526 INFO    ] Checking for system updates...
[2026-10-25 01:43:29,563.563 INFO    ] 200
[2026-10-25 01:43:29,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:29,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:29,623.623 INFO    ] No update needed
[2026-10-25 01:43:29,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 01:43:29,660.660 INFO    ] 200
[2026-10-25 01:43:29,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:29,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:43:29,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:29,775.775 INFO    ] No camera update needed
[2026-10-25 01:43:29,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:43:29,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:43:29,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:43:29,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:43:31,834.834 INFO    ] ================================================
[2026-10-25 01:43:31,849.849 INFO    ] Launching Daemon at Sun Oct 25 01:43:31 IST 2026
[2026-10-25 01:43:31,860.860 INFO    ] ================================================
[2026-10-25 01:43:32,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:43:32
[2026-10-25 01:43:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:43:33,399.399 INFO    ] Initializing speech engine...
[2026-10-25 01:43:33,405.405 INFO    ] 2026-10-25 01:43:33
[2026-10-25 01:43:33,700.700 INFO    ] 2026-10-25 01:43:33
[2026-10-25 01:43:33,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:43:33,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:43:33,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:43:34,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:43:34,122.122 INFO    ] time= 25/10/2026 01:43:34
[2026-10-25 01:43:34,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:43:34,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:43:34,207.207 INFO    ] No existing commands found in stream
[2026-10-25 01:43:39,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:43:39,222.222 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 01:43:39,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:43:39,971.971 INFO    ] Checking for system updates...
[2026-10-25 01:43:40,008.008 INFO    ] 200
[2026-10-25 01:43:40,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:40,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:40,069.069 INFO    ] No update needed
[2026-10-25 01:43:40,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 01:43:40,107.107 INFO    ] 200
[2026-10-25 01:43:40,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:40,152.152 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:43:40,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:43:40,205.205 INFO    ] No camera update needed
[2026-10-25 01:43:40,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:43:40,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:43:40,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:43:40,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:43:42,262.262 INFO    ] ================================================
[2026-10-25 01:43:42,278.278 INFO    ] Launching Daemon at Sun Oct 25 01:43:42 IST 2026
[2026-10-25 01:43:42,290.290 INFO    ] ================================================
[2026-10-25 01:43:42,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:43:42
[2026-10-25 01:43:43,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:43:43,729.729 INFO    ] Initializing speech engine...
[2026-10-25 01:43:43,738.738 INFO    ] 2026-10-25 01:43:43
[2026-10-25 01:43:44,013.013 INFO    ] 2026-10-25 01:43:43
[2026-10-25 01:43:44,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:43:44,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:43:44,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:43:44,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:43:44,514.514 INFO    ] time= 25/10/2026 01:43:44
[2026-10-25 01:43:44,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:43:44,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:43:44,703.703 INFO    ] No existing commands found in stream
[2026-10-25 01:43:49,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:43:49,728.728 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 01:43:50,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:43:50,686.686 INFO    ] Checking for system updates...
[2026-10-25 01:43:50,722.722 INFO    ] 200
[2026-10-25 01:43:50,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:50,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:43:50,788.788 INFO    ] No update needed
[2026-10-25 01:43:50,790.790 INFO    ] Checking for camera pi updates...
[2026-10-25 01:43:50,825.825 INFO    ] 200
[2026-10-25 01:43:50,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:43:50,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:43:50,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:43:50,920.920 INFO    ] No camera update needed
[2026-10-25 01:43:50,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:43:50,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:43:50,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:43:50,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:43:52,979.979 INFO    ] ================================================
[2026-10-25 01:43:53,995.995 INFO    ] Launching Daemon at Sun Oct 25 01:43:52 IST 2026
[2026-10-25 01:43:53,006.006 INFO    ] ================================================
[2026-10-25 01:43:53,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:43:53
[2026-10-25 01:43:54,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:43:54,435.435 INFO    ] Initializing speech engine...
[2026-10-25 01:43:54,445.445 INFO    ] 2026-10-25 01:43:54
[2026-10-25 01:43:54,696.696 INFO    ] 2026-10-25 01:43:54
[2026-10-25 01:43:54,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:43:54,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:43:54,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:43:55,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:43:55,172.172 INFO    ] time= 25/10/2026 01:43:55
[2026-10-25 01:43:55,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:43:55,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:43:55,375.375 INFO    ] No existing commands found in stream
[2026-10-25 01:44:00,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:00,403.403 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 01:44:03,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:44:03,616.616 INFO    ] Checking for system updates...
[2026-10-25 01:44:03,656.656 INFO    ] 200
[2026-10-25 01:44:03,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:03,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:44:03,722.722 INFO    ] No update needed
[2026-10-25 01:44:03,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 01:44:03,766.766 INFO    ] 200
[2026-10-25 01:44:03,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:03,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:44:03,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:44:03,890.890 INFO    ] No camera update needed
[2026-10-25 01:44:03,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:44:03,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:44:03,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:44:03,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:44:05,945.945 INFO    ] ================================================
[2026-10-25 01:44:05,962.962 INFO    ] Launching Daemon at Sun Oct 25 01:44:05 IST 2026
[2026-10-25 01:44:05,973.973 INFO    ] ================================================
[2026-10-25 01:44:06,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:44:06
[2026-10-25 01:44:07,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:44:07,413.413 INFO    ] Initializing speech engine...
[2026-10-25 01:44:07,421.421 INFO    ] 2026-10-25 01:44:07
[2026-10-25 01:44:07,683.683 INFO    ] 2026-10-25 01:44:07
[2026-10-25 01:44:07,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:44:07,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:44:07,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:44:08,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:44:08,146.146 INFO    ] time= 25/10/2026 01:44:08
[2026-10-25 01:44:08,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:44:08,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:44:08,336.336 INFO    ] No existing commands found in stream
[2026-10-25 01:44:13,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:13,369.369 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 01:44:13,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:44:13,828.828 INFO    ] Checking for system updates...
[2026-10-25 01:44:13,870.870 INFO    ] 200
[2026-10-25 01:44:13,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:13,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:44:13,930.930 INFO    ] No update needed
[2026-10-25 01:44:13,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 01:44:13,966.966 INFO    ] 200
[2026-10-25 01:44:13,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:14,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:44:14,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:44:14,069.069 INFO    ] No camera update needed
[2026-10-25 01:44:14,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:44:14,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:44:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:44:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:44:16,128.128 INFO    ] ================================================
[2026-10-25 01:44:16,144.144 INFO    ] Launching Daemon at Sun Oct 25 01:44:16 IST 2026
[2026-10-25 01:44:16,155.155 INFO    ] ================================================
[2026-10-25 01:44:16,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:44:16
[2026-10-25 01:44:17,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:44:17,548.548 INFO    ] Initializing speech engine...
[2026-10-25 01:44:17,557.557 INFO    ] 2026-10-25 01:44:17
[2026-10-25 01:44:17,827.827 INFO    ] 2026-10-25 01:44:17
[2026-10-25 01:44:17,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:44:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:44:18,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:44:18,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:44:18,274.274 INFO    ] time= 25/10/2026 01:44:18
[2026-10-25 01:44:18,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:44:18,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:44:18,390.390 INFO    ] No existing commands found in stream
[2026-10-25 01:44:23,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:23,405.405 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 01:44:24,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:44:24,322.322 INFO    ] Checking for system updates...
[2026-10-25 01:44:24,362.362 INFO    ] 200
[2026-10-25 01:44:24,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:24,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:24,419.419 INFO    ] No update needed
[2026-10-25 01:44:24,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 01:44:24,455.455 INFO    ] 200
[2026-10-25 01:44:24,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:24,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:44:24,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:24,552.552 INFO    ] No camera update needed
[2026-10-25 01:44:24,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:44:24,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:44:24,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:44:24,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:44:26,609.609 INFO    ] ================================================
[2026-10-25 01:44:26,625.625 INFO    ] Launching Daemon at Sun Oct 25 01:44:26 IST 2026
[2026-10-25 01:44:26,636.636 INFO    ] ================================================
[2026-10-25 01:44:27,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:44:27
[2026-10-25 01:44:27,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:44:28,081.081 INFO    ] Initializing speech engine...
[2026-10-25 01:44:28,089.089 INFO    ] 2026-10-25 01:44:28
[2026-10-25 01:44:28,362.362 INFO    ] 2026-10-25 01:44:28
[2026-10-25 01:44:28,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:44:28,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:44:28,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:44:28,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:44:28,838.838 INFO    ] time= 25/10/2026 01:44:28
[2026-10-25 01:44:28,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:44:28,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:44:29,002.002 INFO    ] No existing commands found in stream
[2026-10-25 01:44:34,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:34,017.017 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 01:44:37,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:44:37,161.161 INFO    ] Checking for system updates...
[2026-10-25 01:44:37,197.197 INFO    ] 200
[2026-10-25 01:44:37,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:37,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:37,255.255 INFO    ] No update needed
[2026-10-25 01:44:37,257.257 INFO    ] Checking for camera pi updates...
[2026-10-25 01:44:37,291.291 INFO    ] 200
[2026-10-25 01:44:37,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:37,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:44:37,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:37,506.506 INFO    ] No camera update needed
[2026-10-25 01:44:37,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:44:37,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:44:37,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:44:37,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:44:39,568.568 INFO    ] ================================================
[2026-10-25 01:44:39,584.584 INFO    ] Launching Daemon at Sun Oct 25 01:44:39 IST 2026
[2026-10-25 01:44:39,594.594 INFO    ] ================================================
[2026-10-25 01:44:40,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:44:40
[2026-10-25 01:44:40,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:44:40,988.988 INFO    ] Initializing speech engine...
[2026-10-25 01:44:41,003.003 INFO    ] 2026-10-25 01:44:40
[2026-10-25 01:44:41,267.267 INFO    ] 2026-10-25 01:44:41
[2026-10-25 01:44:41,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:44:41,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:44:41,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:44:41,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:44:41,744.744 INFO    ] time= 25/10/2026 01:44:41
[2026-10-25 01:44:41,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:44:41,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:44:41,890.890 INFO    ] No existing commands found in stream
[2026-10-25 01:44:46,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:46,913.913 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 01:44:48,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:44:48,073.073 INFO    ] Checking for system updates...
[2026-10-25 01:44:48,108.108 INFO    ] 200
[2026-10-25 01:44:48,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:48,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:48,168.168 INFO    ] No update needed
[2026-10-25 01:44:48,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 01:44:48,203.203 INFO    ] 200
[2026-10-25 01:44:48,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:44:48,246.246 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:44:48,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:44:48,307.307 INFO    ] No camera update needed
[2026-10-25 01:44:48,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:44:48,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:44:48,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:44:48,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:44:50,365.365 INFO    ] ================================================
[2026-10-25 01:44:50,380.380 INFO    ] Launching Daemon at Sun Oct 25 01:44:50 IST 2026
[2026-10-25 01:44:50,392.392 INFO    ] ================================================
[2026-10-25 01:44:51,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:44:51
[2026-10-25 01:44:51,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:44:52,035.035 INFO    ] Initializing speech engine...
[2026-10-25 01:44:52,048.048 INFO    ] 2026-10-25 01:44:52
[2026-10-25 01:44:52,314.314 INFO    ] 2026-10-25 01:44:52
[2026-10-25 01:44:52,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:44:52,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:44:52,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:44:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:44:52,745.745 INFO    ] time= 25/10/2026 01:44:52
[2026-10-25 01:44:52,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:44:52,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:44:52,908.908 INFO    ] No existing commands found in stream
[2026-10-25 01:44:57,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:44:57,936.936 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 01:45:00,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:45:00,019.019 INFO    ] Checking for system updates...
[2026-10-25 01:45:00,059.059 INFO    ] 200
[2026-10-25 01:45:00,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:00,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:00,125.125 INFO    ] No update needed
[2026-10-25 01:45:00,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 01:45:00,161.161 INFO    ] 200
[2026-10-25 01:45:00,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:00,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:45:00,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:00,262.262 INFO    ] No camera update needed
[2026-10-25 01:45:00,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:45:00,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:45:00,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:45:00,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:45:02,395.395 INFO    ] ================================================
[2026-10-25 01:45:02,447.447 INFO    ] Launching Daemon at Sun Oct 25 01:45:02 IST 2026
[2026-10-25 01:45:02,469.469 INFO    ] ================================================
[2026-10-25 01:45:03,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:45:03
[2026-10-25 01:45:03,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:45:04,168.168 INFO    ] Initializing speech engine...
[2026-10-25 01:45:04,182.182 INFO    ] 2026-10-25 01:45:04
[2026-10-25 01:45:04,441.441 INFO    ] 2026-10-25 01:45:04
[2026-10-25 01:45:04,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:45:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:45:04,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:45:04,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:45:04,838.838 INFO    ] time= 25/10/2026 01:45:04
[2026-10-25 01:45:04,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:45:04,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:45:05,004.004 INFO    ] No existing commands found in stream
[2026-10-25 01:45:10,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:45:10,027.027 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 01:45:10,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:45:10,759.759 INFO    ] Checking for system updates...
[2026-10-25 01:45:10,796.796 INFO    ] 200
[2026-10-25 01:45:10,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:10,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:45:10,855.855 INFO    ] No update needed
[2026-10-25 01:45:10,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 01:45:10,895.895 INFO    ] 200
[2026-10-25 01:45:10,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:10,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:45:11,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:45:11,006.006 INFO    ] No camera update needed
[2026-10-25 01:45:11,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:45:11,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:45:11,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:45:11,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:45:13,064.064 INFO    ] ================================================
[2026-10-25 01:45:13,081.081 INFO    ] Launching Daemon at Sun Oct 25 01:45:13 IST 2026
[2026-10-25 01:45:13,092.092 INFO    ] ================================================
[2026-10-25 01:45:13,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:45:13
[2026-10-25 01:45:14,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:45:14,555.555 INFO    ] Initializing speech engine...
[2026-10-25 01:45:14,560.560 INFO    ] 2026-10-25 01:45:14
[2026-10-25 01:45:14,822.822 INFO    ] 2026-10-25 01:45:14
[2026-10-25 01:45:14,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:45:15,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:45:15,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:45:15,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:45:15,298.298 INFO    ] time= 25/10/2026 01:45:15
[2026-10-25 01:45:15,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:45:15,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:45:15,514.514 INFO    ] No existing commands found in stream
[2026-10-25 01:45:20,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:45:20,542.542 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 01:45:24,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:45:24,246.246 INFO    ] Checking for system updates...
[2026-10-25 01:45:24,285.285 INFO    ] 200
[2026-10-25 01:45:24,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:24,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:24,350.350 INFO    ] No update needed
[2026-10-25 01:45:24,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 01:45:24,387.387 INFO    ] 200
[2026-10-25 01:45:24,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:24,432.432 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:45:24,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:24,496.496 INFO    ] No camera update needed
[2026-10-25 01:45:24,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:45:24,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:45:24,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:45:24,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:45:26,553.553 INFO    ] ================================================
[2026-10-25 01:45:26,568.568 INFO    ] Launching Daemon at Sun Oct 25 01:45:26 IST 2026
[2026-10-25 01:45:26,580.580 INFO    ] ================================================
[2026-10-25 01:45:27,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:45:27
[2026-10-25 01:45:27,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:45:28,045.045 INFO    ] Initializing speech engine...
[2026-10-25 01:45:28,055.055 INFO    ] 2026-10-25 01:45:28
[2026-10-25 01:45:28,311.311 INFO    ] 2026-10-25 01:45:28
[2026-10-25 01:45:28,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:45:28,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:45:28,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:45:28,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:45:28,781.781 INFO    ] time= 25/10/2026 01:45:28
[2026-10-25 01:45:28,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:45:28,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:45:28,963.963 INFO    ] No existing commands found in stream
[2026-10-25 01:45:33,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:45:33,992.992 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 01:45:38,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:45:38,381.381 INFO    ] Checking for system updates...
[2026-10-25 01:45:38,418.418 INFO    ] 200
[2026-10-25 01:45:38,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:38,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:38,476.476 INFO    ] No update needed
[2026-10-25 01:45:38,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 01:45:38,513.513 INFO    ] 200
[2026-10-25 01:45:38,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:38,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:45:38,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:45:38,604.604 INFO    ] No camera update needed
[2026-10-25 01:45:38,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:45:38,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:45:38,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:45:38,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:45:40,663.663 INFO    ] ================================================
[2026-10-25 01:45:40,678.678 INFO    ] Launching Daemon at Sun Oct 25 01:45:40 IST 2026
[2026-10-25 01:45:40,689.689 INFO    ] ================================================
[2026-10-25 01:45:41,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:45:41
[2026-10-25 01:45:41,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:45:42,137.137 INFO    ] Initializing speech engine...
[2026-10-25 01:45:42,155.155 INFO    ] 2026-10-25 01:45:42
[2026-10-25 01:45:42,434.434 INFO    ] 2026-10-25 01:45:42
[2026-10-25 01:45:42,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:45:42,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:45:42,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:45:42,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:45:42,839.839 INFO    ] time= 25/10/2026 01:45:42
[2026-10-25 01:45:42,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:45:42,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:45:42,949.949 INFO    ] No existing commands found in stream
[2026-10-25 01:45:47,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:45:47,964.964 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 01:45:50,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:45:50,456.456 INFO    ] Checking for system updates...
[2026-10-25 01:45:50,492.492 INFO    ] 200
[2026-10-25 01:45:50,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:50,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:45:50,558.558 INFO    ] No update needed
[2026-10-25 01:45:50,560.560 INFO    ] Checking for camera pi updates...
[2026-10-25 01:45:50,598.598 INFO    ] 200
[2026-10-25 01:45:50,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:45:50,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:45:50,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:45:50,704.704 INFO    ] No camera update needed
[2026-10-25 01:45:50,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:45:50,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:45:50,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:45:50,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:45:52,761.761 INFO    ] ================================================
[2026-10-25 01:45:52,776.776 INFO    ] Launching Daemon at Sun Oct 25 01:45:52 IST 2026
[2026-10-25 01:45:52,787.787 INFO    ] ================================================
[2026-10-25 01:45:53,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:45:53
[2026-10-25 01:45:54,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:45:54,435.435 INFO    ] Initializing speech engine...
[2026-10-25 01:45:54,448.448 INFO    ] 2026-10-25 01:45:54
[2026-10-25 01:45:54,731.731 INFO    ] 2026-10-25 01:45:54
[2026-10-25 01:45:54,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:45:55,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:45:55,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:45:55,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:45:55,203.203 INFO    ] time= 25/10/2026 01:45:55
[2026-10-25 01:45:55,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:45:55,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:45:55,351.351 INFO    ] No existing commands found in stream
[2026-10-25 01:46:00,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:00,380.380 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 01:46:02,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:46:02,487.487 INFO    ] Checking for system updates...
[2026-10-25 01:46:02,530.530 INFO    ] 200
[2026-10-25 01:46:02,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:02,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:02,599.599 INFO    ] No update needed
[2026-10-25 01:46:02,602.602 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:02,640.640 INFO    ] 200
[2026-10-25 01:46:02,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:02,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:46:02,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:02,730.730 INFO    ] No camera update needed
[2026-10-25 01:46:02,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:02,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:02,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:02,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:46:04,790.790 INFO    ] ================================================
[2026-10-25 01:46:04,805.805 INFO    ] Launching Daemon at Sun Oct 25 01:46:04 IST 2026
[2026-10-25 01:46:04,817.817 INFO    ] ================================================
[2026-10-25 01:46:05,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:46:05
[2026-10-25 01:46:05,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:46:06,282.282 INFO    ] Initializing speech engine...
[2026-10-25 01:46:06,291.291 INFO    ] 2026-10-25 01:46:06
[2026-10-25 01:46:06,560.560 INFO    ] 2026-10-25 01:46:06
[2026-10-25 01:46:06,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:46:06,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:46:06,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:46:06,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:46:06,972.972 INFO    ] time= 25/10/2026 01:46:06
[2026-10-25 01:46:06,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:46:06,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:46:07,055.055 INFO    ] No existing commands found in stream
[2026-10-25 01:46:12,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:12,070.070 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 01:46:13,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:46:13,904.904 INFO    ] Checking for system updates...
[2026-10-25 01:46:13,940.940 INFO    ] 200
[2026-10-25 01:46:13,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:13,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:46:13,999.999 INFO    ] No update needed
[2026-10-25 01:46:14,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:14,036.036 INFO    ] 200
[2026-10-25 01:46:14,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:14,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:46:14,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:46:14,243.243 INFO    ] No camera update needed
[2026-10-25 01:46:14,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:14,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:14,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:14,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:46:16,299.299 INFO    ] ================================================
[2026-10-25 01:46:16,315.315 INFO    ] Launching Daemon at Sun Oct 25 01:46:16 IST 2026
[2026-10-25 01:46:16,326.326 INFO    ] ================================================
[2026-10-25 01:46:16,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:46:16
[2026-10-25 01:46:17,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:46:17,922.922 INFO    ] Initializing speech engine...
[2026-10-25 01:46:17,933.933 INFO    ] 2026-10-25 01:46:17
[2026-10-25 01:46:18,220.220 INFO    ] 2026-10-25 01:46:18
[2026-10-25 01:46:18,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:46:18,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:46:18,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:46:18,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:46:18,715.715 INFO    ] time= 25/10/2026 01:46:18
[2026-10-25 01:46:18,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:46:18,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:46:18,880.880 INFO    ] No existing commands found in stream
[2026-10-25 01:46:23,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:23,918.918 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 01:46:26,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:46:26,430.430 INFO    ] Checking for system updates...
[2026-10-25 01:46:26,471.471 INFO    ] 200
[2026-10-25 01:46:26,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 01:46:26,476.476 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 01:46:26,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:26,516.516 INFO    ] 200
[2026-10-25 01:46:26,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 01:46:26,521.521 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 01:46:26,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:26,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:26,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:26,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:46:28,578.578 INFO    ] ================================================
[2026-10-25 01:46:28,595.595 INFO    ] Launching Daemon at Sun Oct 25 01:46:28 IST 2026
[2026-10-25 01:46:28,606.606 INFO    ] ================================================
[2026-10-25 01:46:29,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:46:29
[2026-10-25 01:46:29,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:46:30,028.028 INFO    ] Initializing speech engine...
[2026-10-25 01:46:30,035.035 INFO    ] 2026-10-25 01:46:30
[2026-10-25 01:46:30,294.294 INFO    ] 2026-10-25 01:46:30
[2026-10-25 01:46:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:46:30,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:46:30,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:46:30,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:46:30,789.789 INFO    ] time= 25/10/2026 01:46:30
[2026-10-25 01:46:30,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:46:30,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:46:30,946.946 INFO    ] No existing commands found in stream
[2026-10-25 01:46:35,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:35,985.985 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 01:46:38,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:46:38,161.161 INFO    ] Checking for system updates...
[2026-10-25 01:46:38,199.199 INFO    ] 200
[2026-10-25 01:46:38,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:38,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:38,258.258 INFO    ] No update needed
[2026-10-25 01:46:38,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:38,294.294 INFO    ] 200
[2026-10-25 01:46:38,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:38,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:46:38,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:38,372.372 INFO    ] No camera update needed
[2026-10-25 01:46:38,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:38,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:38,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:38,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:46:40,431.431 INFO    ] ================================================
[2026-10-25 01:46:40,445.445 INFO    ] Launching Daemon at Sun Oct 25 01:46:40 IST 2026
[2026-10-25 01:46:40,456.456 INFO    ] ================================================
[2026-10-25 01:46:41,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:46:41
[2026-10-25 01:46:41,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:46:41,864.864 INFO    ] Initializing speech engine...
[2026-10-25 01:46:41,877.877 INFO    ] 2026-10-25 01:46:41
[2026-10-25 01:46:42,144.144 INFO    ] 2026-10-25 01:46:42
[2026-10-25 01:46:42,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:46:42,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:46:42,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:46:42,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:46:42,521.521 INFO    ] time= 25/10/2026 01:46:42
[2026-10-25 01:46:42,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:46:42,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:46:42,698.698 INFO    ] No existing commands found in stream
[2026-10-25 01:46:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:47,725.725 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 01:46:48,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:46:48,420.420 INFO    ] Checking for system updates...
[2026-10-25 01:46:48,456.456 INFO    ] 200
[2026-10-25 01:46:48,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:48,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:48,515.515 INFO    ] No update needed
[2026-10-25 01:46:48,517.517 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:48,559.559 INFO    ] 200
[2026-10-25 01:46:48,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:48,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:46:48,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:46:48,654.654 INFO    ] No camera update needed
[2026-10-25 01:46:48,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:48,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:48,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:48,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:46:50,711.711 INFO    ] ================================================
[2026-10-25 01:46:50,726.726 INFO    ] Launching Daemon at Sun Oct 25 01:46:50 IST 2026
[2026-10-25 01:46:50,737.737 INFO    ] ================================================
[2026-10-25 01:46:51,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:46:51
[2026-10-25 01:46:51,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:46:52,175.175 INFO    ] Initializing speech engine...
[2026-10-25 01:46:52,182.182 INFO    ] 2026-10-25 01:46:52
[2026-10-25 01:46:52,480.480 INFO    ] 2026-10-25 01:46:52
[2026-10-25 01:46:52,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:46:52,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:46:52,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:46:52,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:46:52,890.890 INFO    ] time= 25/10/2026 01:46:52
[2026-10-25 01:46:52,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:46:52,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:46:53,015.015 INFO    ] No existing commands found in stream
[2026-10-25 01:46:58,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:46:58,048.048 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 01:46:59,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:46:59,218.218 INFO    ] Checking for system updates...
[2026-10-25 01:46:59,254.254 INFO    ] 200
[2026-10-25 01:46:59,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:59,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:46:59,313.313 INFO    ] No update needed
[2026-10-25 01:46:59,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 01:46:59,349.349 INFO    ] 200
[2026-10-25 01:46:59,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:46:59,392.392 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:46:59,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:46:59,453.453 INFO    ] No camera update needed
[2026-10-25 01:46:59,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:46:59,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:46:59,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:46:59,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:47:01,514.514 INFO    ] ================================================
[2026-10-25 01:47:01,529.529 INFO    ] Launching Daemon at Sun Oct 25 01:47:01 IST 2026
[2026-10-25 01:47:01,540.540 INFO    ] ================================================
[2026-10-25 01:47:02,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:47:02
[2026-10-25 01:47:02,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:47:03,352.352 INFO    ] Initializing speech engine...
[2026-10-25 01:47:03,359.359 INFO    ] 2026-10-25 01:47:03
[2026-10-25 01:47:03,651.651 INFO    ] 2026-10-25 01:47:03
[2026-10-25 01:47:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:47:03,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:47:03,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:47:04,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:47:04,129.129 INFO    ] time= 25/10/2026 01:47:04
[2026-10-25 01:47:04,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:47:04,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:47:04,306.306 INFO    ] No existing commands found in stream
[2026-10-25 01:47:09,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:47:09,325.325 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 01:47:12,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:47:12,725.725 INFO    ] Checking for system updates...
[2026-10-25 01:47:12,761.761 INFO    ] 200
[2026-10-25 01:47:12,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:12,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:47:12,819.819 INFO    ] No update needed
[2026-10-25 01:47:12,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 01:47:12,864.864 INFO    ] 200
[2026-10-25 01:47:12,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:12,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:47:12,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:47:12,968.968 INFO    ] No camera update needed
[2026-10-25 01:47:12,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:47:12,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:47:12,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:47:12,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:47:15,022.022 INFO    ] ================================================
[2026-10-25 01:47:15,038.038 INFO    ] Launching Daemon at Sun Oct 25 01:47:15 IST 2026
[2026-10-25 01:47:15,049.049 INFO    ] ================================================
[2026-10-25 01:47:15,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:47:15
[2026-10-25 01:47:16,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:47:16,720.720 INFO    ] Initializing speech engine...
[2026-10-25 01:47:16,728.728 INFO    ] 2026-10-25 01:47:16
[2026-10-25 01:47:17,009.009 INFO    ] 2026-10-25 01:47:16
[2026-10-25 01:47:17,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:47:17,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:47:17,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:47:17,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:47:17,499.499 INFO    ] time= 25/10/2026 01:47:17
[2026-10-25 01:47:17,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:47:17,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:47:17,643.643 INFO    ] No existing commands found in stream
[2026-10-25 01:47:22,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:47:22,666.666 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 01:47:26,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:47:26,790.790 INFO    ] Checking for system updates...
[2026-10-25 01:47:26,827.827 INFO    ] 200
[2026-10-25 01:47:26,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:26,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:47:26,887.887 INFO    ] No update needed
[2026-10-25 01:47:26,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 01:47:26,923.923 INFO    ] 200
[2026-10-25 01:47:26,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:26,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:47:27,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:47:27,018.018 INFO    ] No camera update needed
[2026-10-25 01:47:27,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:47:27,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:47:27,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:47:27,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:47:29,072.072 INFO    ] ================================================
[2026-10-25 01:47:29,088.088 INFO    ] Launching Daemon at Sun Oct 25 01:47:29 IST 2026
[2026-10-25 01:47:29,098.098 INFO    ] ================================================
[2026-10-25 01:47:29,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:47:29
[2026-10-25 01:47:30,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:47:30,782.782 INFO    ] Initializing speech engine...
[2026-10-25 01:47:30,795.795 INFO    ] 2026-10-25 01:47:30
[2026-10-25 01:47:31,109.109 INFO    ] 2026-10-25 01:47:31
[2026-10-25 01:47:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:47:31,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:47:31,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:47:31,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:47:31,623.623 INFO    ] time= 25/10/2026 01:47:31
[2026-10-25 01:47:31,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:47:31,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:47:31,790.790 INFO    ] No existing commands found in stream
[2026-10-25 01:47:36,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:47:36,813.813 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 01:47:39,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:47:39,674.674 INFO    ] Checking for system updates...
[2026-10-25 01:47:39,711.711 INFO    ] 200
[2026-10-25 01:47:39,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:39,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:47:39,768.768 INFO    ] No update needed
[2026-10-25 01:47:39,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 01:47:39,805.805 INFO    ] 200
[2026-10-25 01:47:39,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:39,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:47:39,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:47:39,908.908 INFO    ] No camera update needed
[2026-10-25 01:47:39,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:47:39,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:47:39,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:47:39,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:47:41,963.963 INFO    ] ================================================
[2026-10-25 01:47:41,979.979 INFO    ] Launching Daemon at Sun Oct 25 01:47:41 IST 2026
[2026-10-25 01:47:41,989.989 INFO    ] ================================================
[2026-10-25 01:47:42,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:47:42
[2026-10-25 01:47:43,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:47:43,520.520 INFO    ] Initializing speech engine...
[2026-10-25 01:47:43,532.532 INFO    ] 2026-10-25 01:47:43
[2026-10-25 01:47:43,798.798 INFO    ] 2026-10-25 01:47:43
[2026-10-25 01:47:43,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:47:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:47:44,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:47:44,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:47:44,282.282 INFO    ] time= 25/10/2026 01:47:44
[2026-10-25 01:47:44,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:47:44,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:47:44,437.437 INFO    ] No existing commands found in stream
[2026-10-25 01:47:49,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:47:49,451.451 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 01:47:53,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:47:53,788.788 INFO    ] Checking for system updates...
[2026-10-25 01:47:53,824.824 INFO    ] 200
[2026-10-25 01:47:53,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:53,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:47:53,883.883 INFO    ] No update needed
[2026-10-25 01:47:53,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 01:47:53,919.919 INFO    ] 200
[2026-10-25 01:47:53,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:47:53,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:47:54,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:47:54,016.016 INFO    ] No camera update needed
[2026-10-25 01:47:54,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:47:54,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:47:54,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:47:54,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:47:56,070.070 INFO    ] ================================================
[2026-10-25 01:47:56,086.086 INFO    ] Launching Daemon at Sun Oct 25 01:47:56 IST 2026
[2026-10-25 01:47:56,096.096 INFO    ] ================================================
[2026-10-25 01:47:56,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:47:56
[2026-10-25 01:47:57,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:47:57,570.570 INFO    ] Initializing speech engine...
[2026-10-25 01:47:57,577.577 INFO    ] 2026-10-25 01:47:57
[2026-10-25 01:47:57,840.840 INFO    ] 2026-10-25 01:47:57
[2026-10-25 01:47:57,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:47:58,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:47:58,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:47:58,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:47:58,325.325 INFO    ] time= 25/10/2026 01:47:58
[2026-10-25 01:47:58,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:47:58,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:47:58,525.525 INFO    ] No existing commands found in stream
[2026-10-25 01:48:03,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:48:03,553.553 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 01:48:04,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:48:04,675.675 INFO    ] Checking for system updates...
[2026-10-25 01:48:04,711.711 INFO    ] 200
[2026-10-25 01:48:04,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:04,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:04,777.777 INFO    ] No update needed
[2026-10-25 01:48:04,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 01:48:04,816.816 INFO    ] 200
[2026-10-25 01:48:04,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:04,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:48:04,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:04,918.918 INFO    ] No camera update needed
[2026-10-25 01:48:04,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:48:04,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:48:04,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:48:04,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:48:06,972.972 INFO    ] ================================================
[2026-10-25 01:48:06,987.987 INFO    ] Launching Daemon at Sun Oct 25 01:48:06 IST 2026
[2026-10-25 01:48:07,998.998 INFO    ] ================================================
[2026-10-25 01:48:07,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:48:07
[2026-10-25 01:48:08,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:48:08,426.426 INFO    ] Initializing speech engine...
[2026-10-25 01:48:08,449.449 INFO    ] 2026-10-25 01:48:08
[2026-10-25 01:48:08,699.699 INFO    ] 2026-10-25 01:48:08
[2026-10-25 01:48:08,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:48:08,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:48:08,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:48:09,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:48:09,193.193 INFO    ] time= 25/10/2026 01:48:09
[2026-10-25 01:48:09,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:48:09,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:48:09,328.328 INFO    ] No existing commands found in stream
[2026-10-25 01:48:14,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:48:14,366.366 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 01:48:15,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:48:15,944.944 INFO    ] Checking for system updates...
[2026-10-25 01:48:15,984.984 INFO    ] 200
[2026-10-25 01:48:15,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:16,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:48:16,051.051 INFO    ] No update needed
[2026-10-25 01:48:16,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 01:48:16,088.088 INFO    ] 200
[2026-10-25 01:48:16,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:16,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:48:16,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:48:16,201.201 INFO    ] No camera update needed
[2026-10-25 01:48:16,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:48:16,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:48:16,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:48:16,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:48:18,263.263 INFO    ] ================================================
[2026-10-25 01:48:18,278.278 INFO    ] Launching Daemon at Sun Oct 25 01:48:18 IST 2026
[2026-10-25 01:48:18,288.288 INFO    ] ================================================
[2026-10-25 01:48:18,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:48:18
[2026-10-25 01:48:19,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:48:19,712.712 INFO    ] Initializing speech engine...
[2026-10-25 01:48:19,718.718 INFO    ] 2026-10-25 01:48:19
[2026-10-25 01:48:20,015.015 INFO    ] 2026-10-25 01:48:19
[2026-10-25 01:48:20,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:48:20,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:48:20,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:48:20,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:48:20,400.400 INFO    ] time= 25/10/2026 01:48:20
[2026-10-25 01:48:20,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:48:20,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:48:20,528.528 INFO    ] No existing commands found in stream
[2026-10-25 01:48:25,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:48:25,543.543 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 01:48:27,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:48:27,938.938 INFO    ] Checking for system updates...
[2026-10-25 01:48:27,978.978 INFO    ] 200
[2026-10-25 01:48:27,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:28,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:28,036.036 INFO    ] No update needed
[2026-10-25 01:48:28,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 01:48:28,076.076 INFO    ] 200
[2026-10-25 01:48:28,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:28,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:48:28,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:28,281.281 INFO    ] No camera update needed
[2026-10-25 01:48:28,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:48:28,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:48:28,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:48:28,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:48:30,337.337 INFO    ] ================================================
[2026-10-25 01:48:30,352.352 INFO    ] Launching Daemon at Sun Oct 25 01:48:30 IST 2026
[2026-10-25 01:48:30,364.364 INFO    ] ================================================
[2026-10-25 01:48:30,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:48:30
[2026-10-25 01:48:31,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:48:31,787.787 INFO    ] Initializing speech engine...
[2026-10-25 01:48:31,802.802 INFO    ] 2026-10-25 01:48:31
[2026-10-25 01:48:32,083.083 INFO    ] 2026-10-25 01:48:32
[2026-10-25 01:48:32,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:48:32,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:48:32,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:48:32,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:48:32,543.543 INFO    ] time= 25/10/2026 01:48:32
[2026-10-25 01:48:32,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:48:32,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:48:32,744.744 INFO    ] No existing commands found in stream
[2026-10-25 01:48:37,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:48:37,762.762 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 01:48:41,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:48:41,079.079 INFO    ] Checking for system updates...
[2026-10-25 01:48:41,120.120 INFO    ] 200
[2026-10-25 01:48:41,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:41,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:41,177.177 INFO    ] No update needed
[2026-10-25 01:48:41,180.180 INFO    ] Checking for camera pi updates...
[2026-10-25 01:48:41,213.213 INFO    ] 200
[2026-10-25 01:48:41,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:41,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:48:41,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:48:41,308.308 INFO    ] No camera update needed
[2026-10-25 01:48:41,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:48:41,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:48:41,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:48:41,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:48:43,363.363 INFO    ] ================================================
[2026-10-25 01:48:43,378.378 INFO    ] Launching Daemon at Sun Oct 25 01:48:43 IST 2026
[2026-10-25 01:48:43,389.389 INFO    ] ================================================
[2026-10-25 01:48:43,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:48:43
[2026-10-25 01:48:44,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:48:44,792.792 INFO    ] Initializing speech engine...
[2026-10-25 01:48:44,805.805 INFO    ] 2026-10-25 01:48:44
[2026-10-25 01:48:45,065.065 INFO    ] 2026-10-25 01:48:45
[2026-10-25 01:48:45,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:48:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:48:45,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:48:45,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:48:45,542.542 INFO    ] time= 25/10/2026 01:48:45
[2026-10-25 01:48:45,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:48:45,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:48:45,691.691 INFO    ] No existing commands found in stream
[2026-10-25 01:48:50,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:48:50,727.727 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 01:48:55,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:48:55,122.122 INFO    ] Checking for system updates...
[2026-10-25 01:48:55,159.159 INFO    ] 200
[2026-10-25 01:48:55,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:55,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:48:55,228.228 INFO    ] No update needed
[2026-10-25 01:48:55,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 01:48:55,271.271 INFO    ] 200
[2026-10-25 01:48:55,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:48:55,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:48:55,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:48:55,381.381 INFO    ] No camera update needed
[2026-10-25 01:48:55,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:48:55,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:48:55,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:48:55,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:48:57,441.441 INFO    ] ================================================
[2026-10-25 01:48:57,456.456 INFO    ] Launching Daemon at Sun Oct 25 01:48:57 IST 2026
[2026-10-25 01:48:57,467.467 INFO    ] ================================================
[2026-10-25 01:48:58,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:48:58
[2026-10-25 01:48:58,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:48:58,911.911 INFO    ] Initializing speech engine...
[2026-10-25 01:48:58,920.920 INFO    ] 2026-10-25 01:48:58
[2026-10-25 01:48:59,221.221 INFO    ] 2026-10-25 01:48:59
[2026-10-25 01:48:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:48:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:48:59,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:48:59,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:48:59,650.650 INFO    ] time= 25/10/2026 01:48:59
[2026-10-25 01:48:59,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:48:59,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:48:59,817.817 INFO    ] No existing commands found in stream
[2026-10-25 01:49:04,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:49:04,845.845 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 01:49:08,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:49:08,857.857 INFO    ] Checking for system updates...
[2026-10-25 01:49:08,894.894 INFO    ] 200
[2026-10-25 01:49:08,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:08,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:08,960.960 INFO    ] No update needed
[2026-10-25 01:49:08,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 01:49:09,002.002 INFO    ] 200
[2026-10-25 01:49:09,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:09,052.052 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:49:09,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:09,097.097 INFO    ] No camera update needed
[2026-10-25 01:49:09,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:49:09,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:49:09,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:49:09,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:49:11,153.153 INFO    ] ================================================
[2026-10-25 01:49:11,168.168 INFO    ] Launching Daemon at Sun Oct 25 01:49:11 IST 2026
[2026-10-25 01:49:11,179.179 INFO    ] ================================================
[2026-10-25 01:49:11,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:49:11
[2026-10-25 01:49:12,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:49:12,866.866 INFO    ] Initializing speech engine...
[2026-10-25 01:49:12,872.872 INFO    ] 2026-10-25 01:49:12
[2026-10-25 01:49:13,182.182 INFO    ] 2026-10-25 01:49:13
[2026-10-25 01:49:13,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:49:13,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:49:13,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:49:13,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:49:13,692.692 INFO    ] time= 25/10/2026 01:49:13
[2026-10-25 01:49:13,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:49:13,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:49:13,839.839 INFO    ] No existing commands found in stream
[2026-10-25 01:49:18,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:49:18,864.864 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 01:49:19,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:49:19,465.465 INFO    ] Checking for system updates...
[2026-10-25 01:49:19,507.507 INFO    ] 200
[2026-10-25 01:49:19,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:19,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:19,573.573 INFO    ] No update needed
[2026-10-25 01:49:19,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 01:49:19,613.613 INFO    ] 200
[2026-10-25 01:49:19,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:19,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:49:19,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:19,711.711 INFO    ] No camera update needed
[2026-10-25 01:49:19,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:49:19,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:49:19,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:49:19,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:49:21,767.767 INFO    ] ================================================
[2026-10-25 01:49:21,782.782 INFO    ] Launching Daemon at Sun Oct 25 01:49:21 IST 2026
[2026-10-25 01:49:21,794.794 INFO    ] ================================================
[2026-10-25 01:49:22,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:49:22
[2026-10-25 01:49:22,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:49:23,241.241 INFO    ] Initializing speech engine...
[2026-10-25 01:49:23,255.255 INFO    ] 2026-10-25 01:49:23
[2026-10-25 01:49:23,511.511 INFO    ] 2026-10-25 01:49:23
[2026-10-25 01:49:23,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:49:23,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:49:23,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:49:23,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:49:23,988.988 INFO    ] time= 25/10/2026 01:49:23
[2026-10-25 01:49:24,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:49:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:49:24,181.181 INFO    ] No existing commands found in stream
[2026-10-25 01:49:29,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:49:29,196.196 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 01:49:30,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:49:30,449.449 INFO    ] Checking for system updates...
[2026-10-25 01:49:30,497.497 INFO    ] 200
[2026-10-25 01:49:30,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:30,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:49:30,589.589 INFO    ] No update needed
[2026-10-25 01:49:30,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 01:49:30,632.632 INFO    ] 200
[2026-10-25 01:49:30,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:30,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:49:30,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:49:30,739.739 INFO    ] No camera update needed
[2026-10-25 01:49:30,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:49:30,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:49:30,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:49:30,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:49:32,797.797 INFO    ] ================================================
[2026-10-25 01:49:32,814.814 INFO    ] Launching Daemon at Sun Oct 25 01:49:32 IST 2026
[2026-10-25 01:49:32,826.826 INFO    ] ================================================
[2026-10-25 01:49:33,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:49:33
[2026-10-25 01:49:34,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:49:34,501.501 INFO    ] Initializing speech engine...
[2026-10-25 01:49:34,513.513 INFO    ] 2026-10-25 01:49:34
[2026-10-25 01:49:34,799.799 INFO    ] 2026-10-25 01:49:34
[2026-10-25 01:49:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:49:35,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:49:35,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:49:35,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:49:35,351.351 INFO    ] time= 25/10/2026 01:49:35
[2026-10-25 01:49:35,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:49:35,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:49:35,486.486 INFO    ] No existing commands found in stream
[2026-10-25 01:49:40,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:49:40,521.521 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 01:49:44,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:49:44,626.626 INFO    ] Checking for system updates...
[2026-10-25 01:49:44,667.667 INFO    ] 200
[2026-10-25 01:49:44,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:44,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:44,733.733 INFO    ] No update needed
[2026-10-25 01:49:44,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 01:49:44,774.774 INFO    ] 200
[2026-10-25 01:49:44,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:44,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:49:44,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:44,871.871 INFO    ] No camera update needed
[2026-10-25 01:49:44,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:49:44,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:49:44,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:49:44,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:49:46,929.929 INFO    ] ================================================
[2026-10-25 01:49:46,944.944 INFO    ] Launching Daemon at Sun Oct 25 01:49:46 IST 2026
[2026-10-25 01:49:46,954.954 INFO    ] ================================================
[2026-10-25 01:49:47,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:49:47
[2026-10-25 01:49:48,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:49:48,392.392 INFO    ] Initializing speech engine...
[2026-10-25 01:49:48,411.411 INFO    ] 2026-10-25 01:49:48
[2026-10-25 01:49:48,661.661 INFO    ] 2026-10-25 01:49:48
[2026-10-25 01:49:48,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:49:48,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:49:48,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:49:49,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:49:49,157.157 INFO    ] time= 25/10/2026 01:49:49
[2026-10-25 01:49:49,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:49:49,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:49:49,281.281 INFO    ] No existing commands found in stream
[2026-10-25 01:49:54,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:49:54,308.308 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 01:49:56,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:49:56,936.936 INFO    ] Checking for system updates...
[2026-10-25 01:49:56,973.973 INFO    ] 200
[2026-10-25 01:49:56,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:57,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:57,040.040 INFO    ] No update needed
[2026-10-25 01:49:57,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 01:49:57,077.077 INFO    ] 200
[2026-10-25 01:49:57,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:49:57,121.121 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:49:57,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:49:57,179.179 INFO    ] No camera update needed
[2026-10-25 01:49:57,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:49:57,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:49:57,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:49:57,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:49:59,235.235 INFO    ] ================================================
[2026-10-25 01:49:59,251.251 INFO    ] Launching Daemon at Sun Oct 25 01:49:59 IST 2026
[2026-10-25 01:49:59,261.261 INFO    ] ================================================
[2026-10-25 01:49:59,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:49:59
[2026-10-25 01:50:00,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:50:00,914.914 INFO    ] Initializing speech engine...
[2026-10-25 01:50:00,928.928 INFO    ] 2026-10-25 01:50:00
[2026-10-25 01:50:01,198.198 INFO    ] 2026-10-25 01:50:01
[2026-10-25 01:50:01,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:50:01,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:50:01,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:50:01,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:50:01,681.681 INFO    ] time= 25/10/2026 01:50:01
[2026-10-25 01:50:01,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:50:01,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:50:01,836.836 INFO    ] No existing commands found in stream
[2026-10-25 01:50:06,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:50:06,899.899 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 01:50:10,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:50:10,204.204 INFO    ] Checking for system updates...
[2026-10-25 01:50:10,244.244 INFO    ] 200
[2026-10-25 01:50:10,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:10,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:10,307.307 INFO    ] No update needed
[2026-10-25 01:50:10,309.309 INFO    ] Checking for camera pi updates...
[2026-10-25 01:50:10,346.346 INFO    ] 200
[2026-10-25 01:50:10,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:10,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:50:10,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:10,458.458 INFO    ] No camera update needed
[2026-10-25 01:50:10,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:50:10,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:50:10,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:50:10,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:50:12,513.513 INFO    ] ================================================
[2026-10-25 01:50:12,529.529 INFO    ] Launching Daemon at Sun Oct 25 01:50:12 IST 2026
[2026-10-25 01:50:12,540.540 INFO    ] ================================================
[2026-10-25 01:50:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:50:13
[2026-10-25 01:50:13,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:50:13,958.958 INFO    ] Initializing speech engine...
[2026-10-25 01:50:13,966.966 INFO    ] 2026-10-25 01:50:13
[2026-10-25 01:50:14,244.244 INFO    ] 2026-10-25 01:50:14
[2026-10-25 01:50:14,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:50:14,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:50:14,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:50:14,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:50:14,713.713 INFO    ] time= 25/10/2026 01:50:14
[2026-10-25 01:50:14,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:50:14,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:50:14,863.863 INFO    ] No existing commands found in stream
[2026-10-25 01:50:19,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:50:19,877.877 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 01:50:23,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:50:23,794.794 INFO    ] Checking for system updates...
[2026-10-25 01:50:23,833.833 INFO    ] 200
[2026-10-25 01:50:23,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:23,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:23,895.895 INFO    ] No update needed
[2026-10-25 01:50:23,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 01:50:23,934.934 INFO    ] 200
[2026-10-25 01:50:23,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:23,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:50:24,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:24,030.030 INFO    ] No camera update needed
[2026-10-25 01:50:24,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:50:24,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:50:24,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:50:24,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:50:26,087.087 INFO    ] ================================================
[2026-10-25 01:50:26,102.102 INFO    ] Launching Daemon at Sun Oct 25 01:50:26 IST 2026
[2026-10-25 01:50:26,114.114 INFO    ] ================================================
[2026-10-25 01:50:26,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:50:26
[2026-10-25 01:50:27,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:50:27,624.624 INFO    ] Initializing speech engine...
[2026-10-25 01:50:27,631.631 INFO    ] 2026-10-25 01:50:27
[2026-10-25 01:50:27,917.917 INFO    ] 2026-10-25 01:50:27
[2026-10-25 01:50:27,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:50:28,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:50:28,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:50:28,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:50:28,402.402 INFO    ] time= 25/10/2026 01:50:28
[2026-10-25 01:50:28,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:50:28,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:50:28,597.597 INFO    ] No existing commands found in stream
[2026-10-25 01:50:33,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:50:33,612.612 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 01:50:37,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:50:37,901.901 INFO    ] Checking for system updates...
[2026-10-25 01:50:37,937.937 INFO    ] 200
[2026-10-25 01:50:37,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:37,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:37,995.995 INFO    ] No update needed
[2026-10-25 01:50:37,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 01:50:38,038.038 INFO    ] 200
[2026-10-25 01:50:38,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:38,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:50:38,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:38,117.117 INFO    ] No camera update needed
[2026-10-25 01:50:38,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:50:38,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:50:38,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:50:38,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:50:40,173.173 INFO    ] ================================================
[2026-10-25 01:50:40,188.188 INFO    ] Launching Daemon at Sun Oct 25 01:50:40 IST 2026
[2026-10-25 01:50:40,199.199 INFO    ] ================================================
[2026-10-25 01:50:40,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:50:40
[2026-10-25 01:50:41,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:50:41,633.633 INFO    ] Initializing speech engine...
[2026-10-25 01:50:41,646.646 INFO    ] 2026-10-25 01:50:41
[2026-10-25 01:50:41,895.895 INFO    ] 2026-10-25 01:50:41
[2026-10-25 01:50:41,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:50:42,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:50:42,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:50:42,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:50:42,331.331 INFO    ] time= 25/10/2026 01:50:42
[2026-10-25 01:50:42,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:50:42,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:50:42,443.443 INFO    ] No existing commands found in stream
[2026-10-25 01:50:47,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:50:47,457.457 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 01:50:49,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:50:49,549.549 INFO    ] Checking for system updates...
[2026-10-25 01:50:49,589.589 INFO    ] 200
[2026-10-25 01:50:49,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:49,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:49,655.655 INFO    ] No update needed
[2026-10-25 01:50:49,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 01:50:49,695.695 INFO    ] 200
[2026-10-25 01:50:49,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:50:49,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:50:49,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:50:49,792.792 INFO    ] No camera update needed
[2026-10-25 01:50:49,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:50:49,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:50:49,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:50:49,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:50:51,852.852 INFO    ] ================================================
[2026-10-25 01:50:51,867.867 INFO    ] Launching Daemon at Sun Oct 25 01:50:51 IST 2026
[2026-10-25 01:50:51,878.878 INFO    ] ================================================
[2026-10-25 01:50:52,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:50:52
[2026-10-25 01:50:53,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:50:53,334.334 INFO    ] Initializing speech engine...
[2026-10-25 01:50:53,339.339 INFO    ] 2026-10-25 01:50:53
[2026-10-25 01:50:53,600.600 INFO    ] 2026-10-25 01:50:53
[2026-10-25 01:50:53,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:50:53,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:50:53,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:50:54,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:50:54,050.050 INFO    ] time= 25/10/2026 01:50:54
[2026-10-25 01:50:54,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:50:54,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:50:54,211.211 INFO    ] No existing commands found in stream
[2026-10-25 01:50:59,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:50:59,225.225 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 01:51:03,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:51:03,394.394 INFO    ] Checking for system updates...
[2026-10-25 01:51:03,434.434 INFO    ] 200
[2026-10-25 01:51:03,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:03,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:03,504.504 INFO    ] No update needed
[2026-10-25 01:51:03,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 01:51:03,544.544 INFO    ] 200
[2026-10-25 01:51:03,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:03,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:51:03,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:03,645.645 INFO    ] No camera update needed
[2026-10-25 01:51:03,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:51:03,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:51:03,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:51:03,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:51:05,703.703 INFO    ] ================================================
[2026-10-25 01:51:05,719.719 INFO    ] Launching Daemon at Sun Oct 25 01:51:05 IST 2026
[2026-10-25 01:51:05,730.730 INFO    ] ================================================
[2026-10-25 01:51:06,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:51:06
[2026-10-25 01:51:06,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:51:07,196.196 INFO    ] Initializing speech engine...
[2026-10-25 01:51:07,205.205 INFO    ] 2026-10-25 01:51:07
[2026-10-25 01:51:07,464.464 INFO    ] 2026-10-25 01:51:07
[2026-10-25 01:51:07,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:51:07,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:51:07,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:51:07,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:51:07,877.877 INFO    ] time= 25/10/2026 01:51:07
[2026-10-25 01:51:07,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:51:07,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:51:08,032.032 INFO    ] No existing commands found in stream
[2026-10-25 01:51:13,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:51:13,055.055 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 01:51:17,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:51:17,452.452 INFO    ] Checking for system updates...
[2026-10-25 01:51:17,491.491 INFO    ] 200
[2026-10-25 01:51:17,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:17,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:17,555.555 INFO    ] No update needed
[2026-10-25 01:51:17,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 01:51:17,591.591 INFO    ] 200
[2026-10-25 01:51:17,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:17,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:51:17,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:17,682.682 INFO    ] No camera update needed
[2026-10-25 01:51:17,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:51:17,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:51:17,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:51:17,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:51:19,738.738 INFO    ] ================================================
[2026-10-25 01:51:19,754.754 INFO    ] Launching Daemon at Sun Oct 25 01:51:19 IST 2026
[2026-10-25 01:51:19,765.765 INFO    ] ================================================
[2026-10-25 01:51:20,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:51:20
[2026-10-25 01:51:20,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:51:21,201.201 INFO    ] Initializing speech engine...
[2026-10-25 01:51:21,207.207 INFO    ] 2026-10-25 01:51:21
[2026-10-25 01:51:21,503.503 INFO    ] 2026-10-25 01:51:21
[2026-10-25 01:51:21,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:51:21,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:51:21,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:51:21,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:51:21,898.898 INFO    ] time= 25/10/2026 01:51:21
[2026-10-25 01:51:21,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:51:21,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:51:22,004.004 INFO    ] No existing commands found in stream
[2026-10-25 01:51:27,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:51:27,019.019 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 01:51:30,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:51:30,619.619 INFO    ] Checking for system updates...
[2026-10-25 01:51:30,656.656 INFO    ] 200
[2026-10-25 01:51:30,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:30,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:51:30,721.721 INFO    ] No update needed
[2026-10-25 01:51:30,724.724 INFO    ] Checking for camera pi updates...
[2026-10-25 01:51:30,759.759 INFO    ] 200
[2026-10-25 01:51:30,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:30,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:51:30,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:51:30,859.859 INFO    ] No camera update needed
[2026-10-25 01:51:30,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:51:30,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:51:30,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:51:30,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:51:32,917.917 INFO    ] ================================================
[2026-10-25 01:51:32,933.933 INFO    ] Launching Daemon at Sun Oct 25 01:51:32 IST 2026
[2026-10-25 01:51:32,945.945 INFO    ] ================================================
[2026-10-25 01:51:33,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:51:33
[2026-10-25 01:51:34,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:51:34,536.536 INFO    ] Initializing speech engine...
[2026-10-25 01:51:34,543.543 INFO    ] 2026-10-25 01:51:34
[2026-10-25 01:51:34,812.812 INFO    ] 2026-10-25 01:51:34
[2026-10-25 01:51:34,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:51:35,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:51:35,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:51:35,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:51:35,342.342 INFO    ] time= 25/10/2026 01:51:35
[2026-10-25 01:51:35,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:51:35,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:51:35,521.521 INFO    ] No existing commands found in stream
[2026-10-25 01:51:40,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:51:40,549.549 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 01:51:42,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:51:42,391.391 INFO    ] Checking for system updates...
[2026-10-25 01:51:42,427.427 INFO    ] 200
[2026-10-25 01:51:42,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:42,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:42,493.493 INFO    ] No update needed
[2026-10-25 01:51:42,496.496 INFO    ] Checking for camera pi updates...
[2026-10-25 01:51:42,537.537 INFO    ] 200
[2026-10-25 01:51:42,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:42,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:51:42,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:42,629.629 INFO    ] No camera update needed
[2026-10-25 01:51:42,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:51:42,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:51:42,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:51:42,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:51:44,686.686 INFO    ] ================================================
[2026-10-25 01:51:44,702.702 INFO    ] Launching Daemon at Sun Oct 25 01:51:44 IST 2026
[2026-10-25 01:51:44,714.714 INFO    ] ================================================
[2026-10-25 01:51:45,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:51:45
[2026-10-25 01:51:45,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:51:46,114.114 INFO    ] Initializing speech engine...
[2026-10-25 01:51:46,128.128 INFO    ] 2026-10-25 01:51:46
[2026-10-25 01:51:46,392.392 INFO    ] 2026-10-25 01:51:46
[2026-10-25 01:51:46,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:51:46,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:51:46,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:51:46,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:51:46,839.839 INFO    ] time= 25/10/2026 01:51:46
[2026-10-25 01:51:46,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:51:46,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:51:47,023.023 INFO    ] No existing commands found in stream
[2026-10-25 01:51:52,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:51:52,037.037 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 01:51:53,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:51:53,178.178 INFO    ] Checking for system updates...
[2026-10-25 01:51:53,215.215 INFO    ] 200
[2026-10-25 01:51:53,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:53,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:53,274.274 INFO    ] No update needed
[2026-10-25 01:51:53,277.277 INFO    ] Checking for camera pi updates...
[2026-10-25 01:51:53,315.315 INFO    ] 200
[2026-10-25 01:51:53,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:51:53,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:51:53,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:51:53,422.422 INFO    ] No camera update needed
[2026-10-25 01:51:53,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:51:53,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:51:53,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:51:53,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:51:55,478.478 INFO    ] ================================================
[2026-10-25 01:51:55,494.494 INFO    ] Launching Daemon at Sun Oct 25 01:51:55 IST 2026
[2026-10-25 01:51:55,505.505 INFO    ] ================================================
[2026-10-25 01:51:56,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:51:56
[2026-10-25 01:51:56,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:51:56,953.953 INFO    ] Initializing speech engine...
[2026-10-25 01:51:56,963.963 INFO    ] 2026-10-25 01:51:56
[2026-10-25 01:51:57,220.220 INFO    ] 2026-10-25 01:51:57
[2026-10-25 01:51:57,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:51:57,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:51:57,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:51:57,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:51:57,709.709 INFO    ] time= 25/10/2026 01:51:57
[2026-10-25 01:51:57,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:51:57,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:51:57,902.902 INFO    ] No existing commands found in stream
[2026-10-25 01:52:02,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:52:02,927.927 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 01:52:04,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:52:04,255.255 INFO    ] Checking for system updates...
[2026-10-25 01:52:04,303.303 INFO    ] 200
[2026-10-25 01:52:04,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:04,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:52:04,362.362 INFO    ] No update needed
[2026-10-25 01:52:04,365.365 INFO    ] Checking for camera pi updates...
[2026-10-25 01:52:04,399.399 INFO    ] 200
[2026-10-25 01:52:04,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:04,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:52:04,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:52:04,494.494 INFO    ] No camera update needed
[2026-10-25 01:52:04,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:52:04,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:52:04,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:52:04,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:52:06,550.550 INFO    ] ================================================
[2026-10-25 01:52:06,566.566 INFO    ] Launching Daemon at Sun Oct 25 01:52:06 IST 2026
[2026-10-25 01:52:06,577.577 INFO    ] ================================================
[2026-10-25 01:52:07,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:52:07
[2026-10-25 01:52:07,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:52:07,982.982 INFO    ] Initializing speech engine...
[2026-10-25 01:52:08,006.006 INFO    ] 2026-10-25 01:52:07
[2026-10-25 01:52:08,269.269 INFO    ] 2026-10-25 01:52:08
[2026-10-25 01:52:08,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:52:08,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:52:08,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:52:08,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:52:08,675.675 INFO    ] time= 25/10/2026 01:52:08
[2026-10-25 01:52:08,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:52:08,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:52:08,851.851 INFO    ] No existing commands found in stream
[2026-10-25 01:52:13,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:52:13,884.884 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 01:52:17,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:52:17,447.447 INFO    ] Checking for system updates...
[2026-10-25 01:52:17,486.486 INFO    ] 200
[2026-10-25 01:52:17,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:17,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:17,548.548 INFO    ] No update needed
[2026-10-25 01:52:17,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 01:52:17,584.584 INFO    ] 200
[2026-10-25 01:52:17,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:17,627.627 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:52:17,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:17,702.702 INFO    ] No camera update needed
[2026-10-25 01:52:17,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:52:17,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:52:17,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:52:17,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:52:19,757.757 INFO    ] ================================================
[2026-10-25 01:52:19,773.773 INFO    ] Launching Daemon at Sun Oct 25 01:52:19 IST 2026
[2026-10-25 01:52:19,784.784 INFO    ] ================================================
[2026-10-25 01:52:20,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:52:20
[2026-10-25 01:52:20,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:52:21,235.235 INFO    ] Initializing speech engine...
[2026-10-25 01:52:21,246.246 INFO    ] 2026-10-25 01:52:21
[2026-10-25 01:52:21,493.493 INFO    ] 2026-10-25 01:52:21
[2026-10-25 01:52:21,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:52:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:52:21,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:52:21,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:52:21,963.963 INFO    ] time= 25/10/2026 01:52:21
[2026-10-25 01:52:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:52:22,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:52:22,118.118 INFO    ] No existing commands found in stream
[2026-10-25 01:52:27,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:52:27,157.157 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 01:52:29,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:52:29,151.151 INFO    ] Checking for system updates...
[2026-10-25 01:52:29,190.190 INFO    ] 200
[2026-10-25 01:52:29,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:29,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:29,248.248 INFO    ] No update needed
[2026-10-25 01:52:29,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 01:52:29,284.284 INFO    ] 200
[2026-10-25 01:52:29,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:29,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:52:29,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:29,379.379 INFO    ] No camera update needed
[2026-10-25 01:52:29,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:52:29,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:52:29,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:52:29,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:52:31,438.438 INFO    ] ================================================
[2026-10-25 01:52:31,457.457 INFO    ] Launching Daemon at Sun Oct 25 01:52:31 IST 2026
[2026-10-25 01:52:31,469.469 INFO    ] ================================================
[2026-10-25 01:52:32,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:52:32
[2026-10-25 01:52:32,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:52:33,121.121 INFO    ] Initializing speech engine...
[2026-10-25 01:52:33,130.130 INFO    ] 2026-10-25 01:52:33
[2026-10-25 01:52:33,396.396 INFO    ] 2026-10-25 01:52:33
[2026-10-25 01:52:33,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:52:33,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:52:33,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:52:33,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:52:33,939.939 INFO    ] time= 25/10/2026 01:52:33
[2026-10-25 01:52:33,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:52:33,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:52:34,092.092 INFO    ] No existing commands found in stream
[2026-10-25 01:52:39,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:52:39,111.111 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 01:52:40,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:52:40,069.069 INFO    ] Checking for system updates...
[2026-10-25 01:52:40,106.106 INFO    ] 200
[2026-10-25 01:52:40,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:40,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:40,166.166 INFO    ] No update needed
[2026-10-25 01:52:40,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 01:52:40,202.202 INFO    ] 200
[2026-10-25 01:52:40,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:40,247.247 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:52:40,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:52:40,399.399 INFO    ] No camera update needed
[2026-10-25 01:52:40,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:52:40,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:52:40,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:52:40,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:52:42,455.455 INFO    ] ================================================
[2026-10-25 01:52:42,471.471 INFO    ] Launching Daemon at Sun Oct 25 01:52:42 IST 2026
[2026-10-25 01:52:42,482.482 INFO    ] ================================================
[2026-10-25 01:52:43,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:52:43
[2026-10-25 01:52:43,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:52:43,888.888 INFO    ] Initializing speech engine...
[2026-10-25 01:52:43,906.906 INFO    ] 2026-10-25 01:52:43
[2026-10-25 01:52:44,157.157 INFO    ] 2026-10-25 01:52:44
[2026-10-25 01:52:44,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:52:44,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:52:44,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:52:44,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:52:44,531.531 INFO    ] time= 25/10/2026 01:52:44
[2026-10-25 01:52:44,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:52:44,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:52:44,711.711 INFO    ] No existing commands found in stream
[2026-10-25 01:52:49,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:52:49,739.739 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 01:52:52,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:52:52,881.881 INFO    ] Checking for system updates...
[2026-10-25 01:52:52,921.921 INFO    ] 200
[2026-10-25 01:52:52,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:52,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:52:52,983.983 INFO    ] No update needed
[2026-10-25 01:52:52,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 01:52:53,022.022 INFO    ] 200
[2026-10-25 01:52:53,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:52:53,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:52:53,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:52:53,114.114 INFO    ] No camera update needed
[2026-10-25 01:52:53,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:52:53,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:52:53,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:52:53,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:52:55,172.172 INFO    ] ================================================
[2026-10-25 01:52:55,187.187 INFO    ] Launching Daemon at Sun Oct 25 01:52:55 IST 2026
[2026-10-25 01:52:55,199.199 INFO    ] ================================================
[2026-10-25 01:52:55,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:52:55
[2026-10-25 01:52:56,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:52:56,615.615 INFO    ] Initializing speech engine...
[2026-10-25 01:52:56,624.624 INFO    ] 2026-10-25 01:52:56
[2026-10-25 01:52:56,871.871 INFO    ] 2026-10-25 01:52:56
[2026-10-25 01:52:56,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:52:57,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:52:57,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:52:57,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:52:57,343.343 INFO    ] time= 25/10/2026 01:52:57
[2026-10-25 01:52:57,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:52:57,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:52:57,557.557 INFO    ] No existing commands found in stream
[2026-10-25 01:53:02,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:53:02,586.586 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 01:53:04,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:53:04,957.957 INFO    ] Checking for system updates...
[2026-10-25 01:53:04,996.996 INFO    ] 200
[2026-10-25 01:53:04,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:05,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:05,054.054 INFO    ] No update needed
[2026-10-25 01:53:05,056.056 INFO    ] Checking for camera pi updates...
[2026-10-25 01:53:05,089.089 INFO    ] 200
[2026-10-25 01:53:05,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:05,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:53:05,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:05,184.184 INFO    ] No camera update needed
[2026-10-25 01:53:05,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:53:05,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:53:05,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:53:05,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:53:07,240.240 INFO    ] ================================================
[2026-10-25 01:53:07,254.254 INFO    ] Launching Daemon at Sun Oct 25 01:53:07 IST 2026
[2026-10-25 01:53:07,265.265 INFO    ] ================================================
[2026-10-25 01:53:07,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:53:07
[2026-10-25 01:53:08,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:53:08,655.655 INFO    ] Initializing speech engine...
[2026-10-25 01:53:08,662.662 INFO    ] 2026-10-25 01:53:08
[2026-10-25 01:53:08,934.934 INFO    ] 2026-10-25 01:53:08
[2026-10-25 01:53:08,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:53:09,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:53:09,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:53:09,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:53:09,381.381 INFO    ] time= 25/10/2026 01:53:09
[2026-10-25 01:53:09,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:53:09,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:53:09,566.566 INFO    ] No existing commands found in stream
[2026-10-25 01:53:14,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:53:14,585.585 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 01:53:17,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:53:17,359.359 INFO    ] Checking for system updates...
[2026-10-25 01:53:17,395.395 INFO    ] 200
[2026-10-25 01:53:17,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:17,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:53:17,463.463 INFO    ] No update needed
[2026-10-25 01:53:17,465.465 INFO    ] Checking for camera pi updates...
[2026-10-25 01:53:17,502.502 INFO    ] 200
[2026-10-25 01:53:17,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:17,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:53:17,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:53:17,601.601 INFO    ] No camera update needed
[2026-10-25 01:53:17,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:53:17,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:53:17,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:53:17,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:53:19,656.656 INFO    ] ================================================
[2026-10-25 01:53:19,672.672 INFO    ] Launching Daemon at Sun Oct 25 01:53:19 IST 2026
[2026-10-25 01:53:19,682.682 INFO    ] ================================================
[2026-10-25 01:53:20,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:53:20
[2026-10-25 01:53:20,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:53:21,130.130 INFO    ] Initializing speech engine...
[2026-10-25 01:53:21,137.137 INFO    ] 2026-10-25 01:53:21
[2026-10-25 01:53:21,398.398 INFO    ] 2026-10-25 01:53:21
[2026-10-25 01:53:21,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:53:21,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:53:21,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:53:21,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:53:21,939.939 INFO    ] time= 25/10/2026 01:53:21
[2026-10-25 01:53:21,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:53:21,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:53:22,085.085 INFO    ] No existing commands found in stream
[2026-10-25 01:53:27,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:53:27,108.108 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 01:53:29,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:53:29,103.103 INFO    ] Checking for system updates...
[2026-10-25 01:53:29,140.140 INFO    ] 200
[2026-10-25 01:53:29,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:29,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:29,205.205 INFO    ] No update needed
[2026-10-25 01:53:29,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 01:53:29,241.241 INFO    ] 200
[2026-10-25 01:53:29,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:29,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:53:29,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:29,331.331 INFO    ] No camera update needed
[2026-10-25 01:53:29,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:53:29,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:53:29,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:53:29,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:53:31,388.388 INFO    ] ================================================
[2026-10-25 01:53:31,404.404 INFO    ] Launching Daemon at Sun Oct 25 01:53:31 IST 2026
[2026-10-25 01:53:31,415.415 INFO    ] ================================================
[2026-10-25 01:53:32,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:53:32
[2026-10-25 01:53:32,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:53:32,937.937 INFO    ] Initializing speech engine...
[2026-10-25 01:53:32,953.953 INFO    ] 2026-10-25 01:53:32
[2026-10-25 01:53:33,231.231 INFO    ] 2026-10-25 01:53:33
[2026-10-25 01:53:33,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:53:33,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:53:33,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:53:33,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:53:33,600.600 INFO    ] time= 25/10/2026 01:53:33
[2026-10-25 01:53:33,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:53:33,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:53:33,725.725 INFO    ] No existing commands found in stream
[2026-10-25 01:53:38,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:53:38,739.739 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 01:53:40,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:53:40,811.811 INFO    ] Checking for system updates...
[2026-10-25 01:53:40,847.847 INFO    ] 200
[2026-10-25 01:53:40,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:40,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:40,913.913 INFO    ] No update needed
[2026-10-25 01:53:40,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 01:53:40,950.950 INFO    ] 200
[2026-10-25 01:53:40,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:40,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:53:41,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:53:41,042.042 INFO    ] No camera update needed
[2026-10-25 01:53:41,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:53:41,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:53:41,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:53:41,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:53:43,101.101 INFO    ] ================================================
[2026-10-25 01:53:43,116.116 INFO    ] Launching Daemon at Sun Oct 25 01:53:43 IST 2026
[2026-10-25 01:53:43,127.127 INFO    ] ================================================
[2026-10-25 01:53:43,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:53:43
[2026-10-25 01:53:44,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:53:44,667.667 INFO    ] Initializing speech engine...
[2026-10-25 01:53:44,671.671 INFO    ] 2026-10-25 01:53:44
[2026-10-25 01:53:44,930.930 INFO    ] 2026-10-25 01:53:44
[2026-10-25 01:53:44,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:53:45,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:53:45,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:53:45,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:53:45,431.431 INFO    ] time= 25/10/2026 01:53:45
[2026-10-25 01:53:45,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:53:45,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:53:45,626.626 INFO    ] No existing commands found in stream
[2026-10-25 01:53:50,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:53:50,656.656 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 01:53:53,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:53:53,129.129 INFO    ] Checking for system updates...
[2026-10-25 01:53:53,166.166 INFO    ] 200
[2026-10-25 01:53:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:53,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:53:53,225.225 INFO    ] No update needed
[2026-10-25 01:53:53,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 01:53:53,266.266 INFO    ] 200
[2026-10-25 01:53:53,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:53:53,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:53:53,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:53:53,368.368 INFO    ] No camera update needed
[2026-10-25 01:53:53,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:53:53,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:53:53,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:53:53,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:53:55,423.423 INFO    ] ================================================
[2026-10-25 01:53:55,438.438 INFO    ] Launching Daemon at Sun Oct 25 01:53:55 IST 2026
[2026-10-25 01:53:55,448.448 INFO    ] ================================================
[2026-10-25 01:53:56,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:53:56
[2026-10-25 01:53:56,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:53:57,054.054 INFO    ] Initializing speech engine...
[2026-10-25 01:53:57,062.062 INFO    ] 2026-10-25 01:53:57
[2026-10-25 01:53:57,333.333 INFO    ] 2026-10-25 01:53:57
[2026-10-25 01:53:57,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:53:57,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:53:57,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:53:57,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:53:57,826.826 INFO    ] time= 25/10/2026 01:53:57
[2026-10-25 01:53:57,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:53:57,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:53:57,979.979 INFO    ] No existing commands found in stream
[2026-10-25 01:54:03,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:54:03,018.018 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 01:54:04,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:54:04,782.782 INFO    ] Checking for system updates...
[2026-10-25 01:54:04,823.823 INFO    ] 200
[2026-10-25 01:54:04,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:04,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:04,883.883 INFO    ] No update needed
[2026-10-25 01:54:04,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 01:54:04,924.924 INFO    ] 200
[2026-10-25 01:54:04,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:04,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:54:05,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:05,028.028 INFO    ] No camera update needed
[2026-10-25 01:54:05,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:54:05,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:54:05,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:54:05,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:54:07,087.087 INFO    ] ================================================
[2026-10-25 01:54:07,102.102 INFO    ] Launching Daemon at Sun Oct 25 01:54:07 IST 2026
[2026-10-25 01:54:07,113.113 INFO    ] ================================================
[2026-10-25 01:54:07,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:54:07
[2026-10-25 01:54:08,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:54:08,519.519 INFO    ] Initializing speech engine...
[2026-10-25 01:54:08,526.526 INFO    ] 2026-10-25 01:54:08
[2026-10-25 01:54:08,798.798 INFO    ] 2026-10-25 01:54:08
[2026-10-25 01:54:08,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:54:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:54:09,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:54:09,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:54:09,176.176 INFO    ] time= 25/10/2026 01:54:09
[2026-10-25 01:54:09,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:54:09,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:54:09,340.340 INFO    ] No existing commands found in stream
[2026-10-25 01:54:14,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:54:14,368.368 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 01:54:17,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:54:17,768.768 INFO    ] Checking for system updates...
[2026-10-25 01:54:17,805.805 INFO    ] 200
[2026-10-25 01:54:17,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:17,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:17,871.871 INFO    ] No update needed
[2026-10-25 01:54:17,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 01:54:17,906.906 INFO    ] 200
[2026-10-25 01:54:17,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:17,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:54:17,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:18,000.000 INFO    ] No camera update needed
[2026-10-25 01:54:18,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:54:18,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:54:18,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:54:18,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:54:20,056.056 INFO    ] ================================================
[2026-10-25 01:54:20,072.072 INFO    ] Launching Daemon at Sun Oct 25 01:54:20 IST 2026
[2026-10-25 01:54:20,083.083 INFO    ] ================================================
[2026-10-25 01:54:20,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:54:20
[2026-10-25 01:54:21,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:54:21,715.715 INFO    ] Initializing speech engine...
[2026-10-25 01:54:21,729.729 INFO    ] 2026-10-25 01:54:21
[2026-10-25 01:54:22,035.035 INFO    ] 2026-10-25 01:54:22
[2026-10-25 01:54:22,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:54:22,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:54:22,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:54:22,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:54:22,526.526 INFO    ] time= 25/10/2026 01:54:22
[2026-10-25 01:54:22,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:54:22,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:54:22,685.685 INFO    ] No existing commands found in stream
[2026-10-25 01:54:27,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:54:27,710.710 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 01:54:28,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:54:28,335.335 INFO    ] Checking for system updates...
[2026-10-25 01:54:28,372.372 INFO    ] 200
[2026-10-25 01:54:28,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:28,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:54:28,431.431 INFO    ] No update needed
[2026-10-25 01:54:28,434.434 INFO    ] Checking for camera pi updates...
[2026-10-25 01:54:28,472.472 INFO    ] 200
[2026-10-25 01:54:28,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:28,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:54:28,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:54:28,567.567 INFO    ] No camera update needed
[2026-10-25 01:54:28,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:54:28,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:54:28,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:54:28,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:54:30,625.625 INFO    ] ================================================
[2026-10-25 01:54:30,640.640 INFO    ] Launching Daemon at Sun Oct 25 01:54:30 IST 2026
[2026-10-25 01:54:30,651.651 INFO    ] ================================================
[2026-10-25 01:54:31,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:54:31
[2026-10-25 01:54:31,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:54:32,212.212 INFO    ] Initializing speech engine...
[2026-10-25 01:54:32,220.220 INFO    ] 2026-10-25 01:54:32
[2026-10-25 01:54:32,522.522 INFO    ] 2026-10-25 01:54:32
[2026-10-25 01:54:32,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:54:32,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:54:32,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:54:32,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:54:33,029.029 INFO    ] time= 25/10/2026 01:54:32
[2026-10-25 01:54:33,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:54:33,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:54:33,234.234 INFO    ] No existing commands found in stream
[2026-10-25 01:54:38,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:54:38,261.261 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 01:54:40,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:54:40,517.517 INFO    ] Checking for system updates...
[2026-10-25 01:54:40,556.556 INFO    ] 200
[2026-10-25 01:54:40,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:40,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:54:40,614.614 INFO    ] No update needed
[2026-10-25 01:54:40,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 01:54:40,650.650 INFO    ] 200
[2026-10-25 01:54:40,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:40,692.692 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:54:40,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:54:40,743.743 INFO    ] No camera update needed
[2026-10-25 01:54:40,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:54:40,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:54:40,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:54:40,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:54:42,799.799 INFO    ] ================================================
[2026-10-25 01:54:42,814.814 INFO    ] Launching Daemon at Sun Oct 25 01:54:42 IST 2026
[2026-10-25 01:54:42,825.825 INFO    ] ================================================
[2026-10-25 01:54:43,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:54:43
[2026-10-25 01:54:44,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:54:44,459.459 INFO    ] Initializing speech engine...
[2026-10-25 01:54:44,467.467 INFO    ] 2026-10-25 01:54:44
[2026-10-25 01:54:44,775.775 INFO    ] 2026-10-25 01:54:44
[2026-10-25 01:54:44,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:54:45,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:54:45,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:54:45,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:54:45,293.293 INFO    ] time= 25/10/2026 01:54:45
[2026-10-25 01:54:45,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:54:45,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:54:45,448.448 INFO    ] No existing commands found in stream
[2026-10-25 01:54:50,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:54:50,471.471 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 01:54:51,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:54:51,684.684 INFO    ] Checking for system updates...
[2026-10-25 01:54:51,721.721 INFO    ] 200
[2026-10-25 01:54:51,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:51,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:51,781.781 INFO    ] No update needed
[2026-10-25 01:54:51,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 01:54:51,819.819 INFO    ] 200
[2026-10-25 01:54:51,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:54:51,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:54:52,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:54:52,022.022 INFO    ] No camera update needed
[2026-10-25 01:54:52,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:54:52,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:54:52,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:54:52,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:54:54,081.081 INFO    ] ================================================
[2026-10-25 01:54:54,095.095 INFO    ] Launching Daemon at Sun Oct 25 01:54:54 IST 2026
[2026-10-25 01:54:54,106.106 INFO    ] ================================================
[2026-10-25 01:54:54,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:54:54
[2026-10-25 01:54:55,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:54:55,565.565 INFO    ] Initializing speech engine...
[2026-10-25 01:54:55,574.574 INFO    ] 2026-10-25 01:54:55
[2026-10-25 01:54:55,835.835 INFO    ] 2026-10-25 01:54:55
[2026-10-25 01:54:55,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:54:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:54:56,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:54:56,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:54:56,235.235 INFO    ] time= 25/10/2026 01:54:56
[2026-10-25 01:54:56,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:54:56,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:54:56,406.406 INFO    ] No existing commands found in stream
[2026-10-25 01:55:01,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:55:01,438.438 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 01:55:02,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 01:55:02,817.817 INFO    ] Checking for system updates...
[2026-10-25 01:55:02,869.869 INFO    ] 200
[2026-10-25 01:55:02,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:02,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:02,938.938 INFO    ] No update needed
[2026-10-25 01:55:02,942.942 INFO    ] Checking for camera pi updates...
[2026-10-25 01:55:02,989.989 INFO    ] 200
[2026-10-25 01:55:02,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:03,033.033 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:55:03,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:03,082.082 INFO    ] No camera update needed
[2026-10-25 01:55:03,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:55:03,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:55:03,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:55:03,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:55:05,140.140 INFO    ] ================================================
[2026-10-25 01:55:05,156.156 INFO    ] Launching Daemon at Sun Oct 25 01:55:05 IST 2026
[2026-10-25 01:55:05,166.166 INFO    ] ================================================
[2026-10-25 01:55:05,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:55:05
[2026-10-25 01:55:06,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:55:06,564.564 INFO    ] Initializing speech engine...
[2026-10-25 01:55:06,569.569 INFO    ] 2026-10-25 01:55:06
[2026-10-25 01:55:06,844.844 INFO    ] 2026-10-25 01:55:06
[2026-10-25 01:55:06,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:55:07,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:55:07,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:55:07,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:55:07,221.221 INFO    ] time= 25/10/2026 01:55:07
[2026-10-25 01:55:07,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:55:07,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:55:07,391.391 INFO    ] No existing commands found in stream
[2026-10-25 01:55:12,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:55:12,419.419 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 01:55:14,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:55:14,897.897 INFO    ] Checking for system updates...
[2026-10-25 01:55:14,934.934 INFO    ] 200
[2026-10-25 01:55:14,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:14,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:14,992.992 INFO    ] No update needed
[2026-10-25 01:55:14,995.995 INFO    ] Checking for camera pi updates...
[2026-10-25 01:55:15,034.034 INFO    ] 200
[2026-10-25 01:55:15,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:15,088.088 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:55:15,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:15,146.146 INFO    ] No camera update needed
[2026-10-25 01:55:15,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:55:15,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:55:15,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:55:15,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:55:17,203.203 INFO    ] ================================================
[2026-10-25 01:55:17,218.218 INFO    ] Launching Daemon at Sun Oct 25 01:55:17 IST 2026
[2026-10-25 01:55:17,229.229 INFO    ] ================================================
[2026-10-25 01:55:17,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:55:17
[2026-10-25 01:55:18,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:55:18,679.679 INFO    ] Initializing speech engine...
[2026-10-25 01:55:18,685.685 INFO    ] 2026-10-25 01:55:18
[2026-10-25 01:55:18,945.945 INFO    ] 2026-10-25 01:55:18
[2026-10-25 01:55:18,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:55:19,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:55:19,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:55:19,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:55:19,430.430 INFO    ] time= 25/10/2026 01:55:19
[2026-10-25 01:55:19,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:55:19,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:55:19,622.622 INFO    ] No existing commands found in stream
[2026-10-25 01:55:24,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:55:24,636.636 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 01:55:26,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:55:26,675.675 INFO    ] Checking for system updates...
[2026-10-25 01:55:26,712.712 INFO    ] 200
[2026-10-25 01:55:26,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:26,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:26,772.772 INFO    ] No update needed
[2026-10-25 01:55:26,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 01:55:26,813.813 INFO    ] 200
[2026-10-25 01:55:26,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:26,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:55:26,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:26,905.905 INFO    ] No camera update needed
[2026-10-25 01:55:26,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:55:26,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:55:26,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:55:26,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:55:28,960.960 INFO    ] ================================================
[2026-10-25 01:55:28,975.975 INFO    ] Launching Daemon at Sun Oct 25 01:55:28 IST 2026
[2026-10-25 01:55:28,985.985 INFO    ] ================================================
[2026-10-25 01:55:29,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:55:29
[2026-10-25 01:55:30,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:55:30,444.444 INFO    ] Initializing speech engine...
[2026-10-25 01:55:30,453.453 INFO    ] 2026-10-25 01:55:30
[2026-10-25 01:55:30,713.713 INFO    ] 2026-10-25 01:55:30
[2026-10-25 01:55:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:55:30,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:55:30,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:55:31,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:55:31,202.202 INFO    ] time= 25/10/2026 01:55:31
[2026-10-25 01:55:31,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:55:31,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:55:31,386.386 INFO    ] No existing commands found in stream
[2026-10-25 01:55:36,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:55:36,413.413 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 01:55:38,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:55:38,083.083 INFO    ] Checking for system updates...
[2026-10-25 01:55:38,119.119 INFO    ] 200
[2026-10-25 01:55:38,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:38,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:38,178.178 INFO    ] No update needed
[2026-10-25 01:55:38,180.180 INFO    ] Checking for camera pi updates...
[2026-10-25 01:55:38,214.214 INFO    ] 200
[2026-10-25 01:55:38,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:38,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:55:38,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:38,295.295 INFO    ] No camera update needed
[2026-10-25 01:55:38,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:55:38,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:55:38,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:55:38,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:55:40,352.352 INFO    ] ================================================
[2026-10-25 01:55:40,367.367 INFO    ] Launching Daemon at Sun Oct 25 01:55:40 IST 2026
[2026-10-25 01:55:40,377.377 INFO    ] ================================================
[2026-10-25 01:55:40,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:55:40
[2026-10-25 01:55:41,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:55:41,775.775 INFO    ] Initializing speech engine...
[2026-10-25 01:55:41,781.781 INFO    ] 2026-10-25 01:55:41
[2026-10-25 01:55:42,076.076 INFO    ] 2026-10-25 01:55:42
[2026-10-25 01:55:42,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:55:42,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:55:42,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:55:42,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:55:42,492.492 INFO    ] time= 25/10/2026 01:55:42
[2026-10-25 01:55:42,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:55:42,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:55:42,577.577 INFO    ] No existing commands found in stream
[2026-10-25 01:55:47,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:55:47,597.597 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 01:55:50,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:55:50,976.976 INFO    ] Checking for system updates...
[2026-10-25 01:55:51,012.012 INFO    ] 200
[2026-10-25 01:55:51,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:51,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:51,080.080 INFO    ] No update needed
[2026-10-25 01:55:51,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 01:55:51,121.121 INFO    ] 200
[2026-10-25 01:55:51,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:55:51,169.169 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:55:51,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:55:51,219.219 INFO    ] No camera update needed
[2026-10-25 01:55:51,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:55:51,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:55:51,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:55:51,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:55:53,274.274 INFO    ] ================================================
[2026-10-25 01:55:53,289.289 INFO    ] Launching Daemon at Sun Oct 25 01:55:53 IST 2026
[2026-10-25 01:55:53,299.299 INFO    ] ================================================
[2026-10-25 01:55:53,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:55:53
[2026-10-25 01:55:54,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:55:54,734.734 INFO    ] Initializing speech engine...
[2026-10-25 01:55:54,743.743 INFO    ] 2026-10-25 01:55:54
[2026-10-25 01:55:55,039.039 INFO    ] 2026-10-25 01:55:55
[2026-10-25 01:55:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:55:55,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:55:55,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:55:55,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:55:55,437.437 INFO    ] time= 25/10/2026 01:55:55
[2026-10-25 01:55:55,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:55:55,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:55:55,617.617 INFO    ] No existing commands found in stream
[2026-10-25 01:56:00,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:56:00,645.645 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 01:56:01,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:56:01,123.123 INFO    ] Checking for system updates...
[2026-10-25 01:56:01,159.159 INFO    ] 200
[2026-10-25 01:56:01,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:01,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:01,217.217 INFO    ] No update needed
[2026-10-25 01:56:01,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 01:56:01,257.257 INFO    ] 200
[2026-10-25 01:56:01,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:01,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:56:01,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:01,346.346 INFO    ] No camera update needed
[2026-10-25 01:56:01,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:56:01,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:56:01,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:56:01,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:56:03,418.418 INFO    ] ================================================
[2026-10-25 01:56:03,433.433 INFO    ] Launching Daemon at Sun Oct 25 01:56:03 IST 2026
[2026-10-25 01:56:03,445.445 INFO    ] ================================================
[2026-10-25 01:56:04,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:56:04
[2026-10-25 01:56:04,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:56:05,043.043 INFO    ] Initializing speech engine...
[2026-10-25 01:56:05,051.051 INFO    ] 2026-10-25 01:56:05
[2026-10-25 01:56:05,339.339 INFO    ] 2026-10-25 01:56:05
[2026-10-25 01:56:05,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:56:05,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:56:05,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:56:05,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:56:05,811.811 INFO    ] time= 25/10/2026 01:56:05
[2026-10-25 01:56:05,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:56:05,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:56:05,955.955 INFO    ] No existing commands found in stream
[2026-10-25 01:56:10,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:56:10,971.971 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 01:56:13,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:56:13,749.749 INFO    ] Checking for system updates...
[2026-10-25 01:56:13,787.787 INFO    ] 200
[2026-10-25 01:56:13,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:13,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:56:13,845.845 INFO    ] No update needed
[2026-10-25 01:56:13,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 01:56:13,882.882 INFO    ] 200
[2026-10-25 01:56:13,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:13,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:56:13,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:56:13,984.984 INFO    ] No camera update needed
[2026-10-25 01:56:13,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:56:13,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:56:13,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:56:13,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:56:16,038.038 INFO    ] ================================================
[2026-10-25 01:56:16,053.053 INFO    ] Launching Daemon at Sun Oct 25 01:56:16 IST 2026
[2026-10-25 01:56:16,064.064 INFO    ] ================================================
[2026-10-25 01:56:16,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:56:16
[2026-10-25 01:56:17,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:56:17,479.479 INFO    ] Initializing speech engine...
[2026-10-25 01:56:17,488.488 INFO    ] 2026-10-25 01:56:17
[2026-10-25 01:56:17,738.738 INFO    ] 2026-10-25 01:56:17
[2026-10-25 01:56:17,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:56:17,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:56:17,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:56:18,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:56:18,114.114 INFO    ] time= 25/10/2026 01:56:18
[2026-10-25 01:56:18,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:56:18,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:56:18,292.292 INFO    ] No existing commands found in stream
[2026-10-25 01:56:23,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:56:23,325.325 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 01:56:27,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:56:27,133.133 INFO    ] Checking for system updates...
[2026-10-25 01:56:27,172.172 INFO    ] 200
[2026-10-25 01:56:27,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:27,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:27,238.238 INFO    ] No update needed
[2026-10-25 01:56:27,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 01:56:27,277.277 INFO    ] 200
[2026-10-25 01:56:27,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:27,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:56:27,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:27,372.372 INFO    ] No camera update needed
[2026-10-25 01:56:27,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:56:27,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:56:27,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:56:27,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:56:29,428.428 INFO    ] ================================================
[2026-10-25 01:56:29,443.443 INFO    ] Launching Daemon at Sun Oct 25 01:56:29 IST 2026
[2026-10-25 01:56:29,454.454 INFO    ] ================================================
[2026-10-25 01:56:30,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:56:30
[2026-10-25 01:56:30,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:56:30,854.854 INFO    ] Initializing speech engine...
[2026-10-25 01:56:30,859.859 INFO    ] 2026-10-25 01:56:30
[2026-10-25 01:56:31,132.132 INFO    ] 2026-10-25 01:56:31
[2026-10-25 01:56:31,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:56:31,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:56:31,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:56:31,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:56:31,592.592 INFO    ] time= 25/10/2026 01:56:31
[2026-10-25 01:56:31,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:56:31,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:56:31,774.774 INFO    ] No existing commands found in stream
[2026-10-25 01:56:36,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:56:36,795.795 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 01:56:38,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:56:38,178.178 INFO    ] Checking for system updates...
[2026-10-25 01:56:38,214.214 INFO    ] 200
[2026-10-25 01:56:38,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:38,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:38,280.280 INFO    ] No update needed
[2026-10-25 01:56:38,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 01:56:38,319.319 INFO    ] 200
[2026-10-25 01:56:38,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:38,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:56:38,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:56:38,398.398 INFO    ] No camera update needed
[2026-10-25 01:56:38,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:56:38,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:56:38,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:56:38,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:56:40,457.457 INFO    ] ================================================
[2026-10-25 01:56:40,474.474 INFO    ] Launching Daemon at Sun Oct 25 01:56:40 IST 2026
[2026-10-25 01:56:40,485.485 INFO    ] ================================================
[2026-10-25 01:56:41,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:56:41
[2026-10-25 01:56:41,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:56:41,901.901 INFO    ] Initializing speech engine...
[2026-10-25 01:56:41,910.910 INFO    ] 2026-10-25 01:56:41
[2026-10-25 01:56:42,158.158 INFO    ] 2026-10-25 01:56:42
[2026-10-25 01:56:42,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:56:42,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:56:42,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:56:42,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:56:42,530.530 INFO    ] time= 25/10/2026 01:56:42
[2026-10-25 01:56:42,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:56:42,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:56:42,608.608 INFO    ] No existing commands found in stream
[2026-10-25 01:56:47,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:56:47,626.626 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 01:56:50,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:56:50,629.629 INFO    ] Checking for system updates...
[2026-10-25 01:56:50,668.668 INFO    ] 200
[2026-10-25 01:56:50,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:50,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:56:50,725.725 INFO    ] No update needed
[2026-10-25 01:56:50,727.727 INFO    ] Checking for camera pi updates...
[2026-10-25 01:56:50,761.761 INFO    ] 200
[2026-10-25 01:56:50,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:56:50,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:56:50,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:56:50,859.859 INFO    ] No camera update needed
[2026-10-25 01:56:50,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:56:50,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:56:50,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:56:50,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:56:52,916.916 INFO    ] ================================================
[2026-10-25 01:56:52,931.931 INFO    ] Launching Daemon at Sun Oct 25 01:56:52 IST 2026
[2026-10-25 01:56:52,942.942 INFO    ] ================================================
[2026-10-25 01:56:53,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:56:53
[2026-10-25 01:56:54,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:56:54,351.351 INFO    ] Initializing speech engine...
[2026-10-25 01:56:54,369.369 INFO    ] 2026-10-25 01:56:54
[2026-10-25 01:56:54,619.619 INFO    ] 2026-10-25 01:56:54
[2026-10-25 01:56:54,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:56:54,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:56:54,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:56:55,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:56:55,098.098 INFO    ] time= 25/10/2026 01:56:55
[2026-10-25 01:56:55,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:56:55,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:56:55,247.247 INFO    ] No existing commands found in stream
[2026-10-25 01:57:00,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:57:00,262.262 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 01:57:03,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 01:57:03,156.156 INFO    ] Checking for system updates...
[2026-10-25 01:57:03,197.197 INFO    ] 200
[2026-10-25 01:57:03,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:03,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:03,263.263 INFO    ] No update needed
[2026-10-25 01:57:03,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 01:57:03,315.315 INFO    ] 200
[2026-10-25 01:57:03,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:03,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:57:03,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:03,415.415 INFO    ] No camera update needed
[2026-10-25 01:57:03,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:57:03,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:57:03,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:57:03,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:57:05,469.469 INFO    ] ================================================
[2026-10-25 01:57:05,483.483 INFO    ] Launching Daemon at Sun Oct 25 01:57:05 IST 2026
[2026-10-25 01:57:05,494.494 INFO    ] ================================================
[2026-10-25 01:57:06,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:57:06
[2026-10-25 01:57:06,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:57:06,963.963 INFO    ] Initializing speech engine...
[2026-10-25 01:57:06,972.972 INFO    ] 2026-10-25 01:57:06
[2026-10-25 01:57:07,232.232 INFO    ] 2026-10-25 01:57:07
[2026-10-25 01:57:07,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:57:07,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:57:07,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:57:07,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:57:07,774.774 INFO    ] time= 25/10/2026 01:57:07
[2026-10-25 01:57:07,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:57:07,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:57:07,913.913 INFO    ] No existing commands found in stream
[2026-10-25 01:57:12,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:57:12,936.936 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 01:57:15,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:57:15,144.144 INFO    ] Checking for system updates...
[2026-10-25 01:57:15,180.180 INFO    ] 200
[2026-10-25 01:57:15,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:15,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:15,244.244 INFO    ] No update needed
[2026-10-25 01:57:15,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 01:57:15,280.280 INFO    ] 200
[2026-10-25 01:57:15,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:15,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:57:15,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:15,385.385 INFO    ] No camera update needed
[2026-10-25 01:57:15,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:57:15,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:57:15,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:57:15,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:57:17,441.441 INFO    ] ================================================
[2026-10-25 01:57:17,455.455 INFO    ] Launching Daemon at Sun Oct 25 01:57:17 IST 2026
[2026-10-25 01:57:17,466.466 INFO    ] ================================================
[2026-10-25 01:57:18,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:57:18
[2026-10-25 01:57:18,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:57:18,892.892 INFO    ] Initializing speech engine...
[2026-10-25 01:57:18,905.905 INFO    ] 2026-10-25 01:57:18
[2026-10-25 01:57:19,155.155 INFO    ] 2026-10-25 01:57:19
[2026-10-25 01:57:19,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:57:19,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:57:19,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:57:19,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:57:19,635.635 INFO    ] time= 25/10/2026 01:57:19
[2026-10-25 01:57:19,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:57:19,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:57:19,788.788 INFO    ] No existing commands found in stream
[2026-10-25 01:57:24,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:57:24,805.805 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 01:57:27,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:57:27,701.701 INFO    ] Checking for system updates...
[2026-10-25 01:57:27,736.736 INFO    ] 200
[2026-10-25 01:57:27,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:27,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:27,795.795 INFO    ] No update needed
[2026-10-25 01:57:27,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 01:57:27,831.831 INFO    ] 200
[2026-10-25 01:57:27,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:27,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:57:27,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:27,928.928 INFO    ] No camera update needed
[2026-10-25 01:57:27,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:57:27,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:57:27,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:57:27,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:57:29,984.984 INFO    ] ================================================
[2026-10-25 01:57:30,999.999 INFO    ] Launching Daemon at Sun Oct 25 01:57:29 IST 2026
[2026-10-25 01:57:30,009.009 INFO    ] ================================================
[2026-10-25 01:57:30,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:57:30
[2026-10-25 01:57:31,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:57:31,525.525 INFO    ] Initializing speech engine...
[2026-10-25 01:57:31,548.548 INFO    ] 2026-10-25 01:57:31
[2026-10-25 01:57:31,816.816 INFO    ] 2026-10-25 01:57:31
[2026-10-25 01:57:31,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:57:32,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:57:32,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:57:32,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:57:32,196.196 INFO    ] time= 25/10/2026 01:57:32
[2026-10-25 01:57:32,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:57:32,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:57:32,304.304 INFO    ] No existing commands found in stream
[2026-10-25 01:57:37,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:57:37,322.322 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 01:57:38,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:57:38,029.029 INFO    ] Checking for system updates...
[2026-10-25 01:57:38,068.068 INFO    ] 200
[2026-10-25 01:57:38,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:38,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:38,127.127 INFO    ] No update needed
[2026-10-25 01:57:38,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 01:57:38,163.163 INFO    ] 200
[2026-10-25 01:57:38,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:38,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:57:38,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:38,252.252 INFO    ] No camera update needed
[2026-10-25 01:57:38,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:57:38,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:57:38,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:57:38,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:57:40,309.309 INFO    ] ================================================
[2026-10-25 01:57:40,323.323 INFO    ] Launching Daemon at Sun Oct 25 01:57:40 IST 2026
[2026-10-25 01:57:40,334.334 INFO    ] ================================================
[2026-10-25 01:57:40,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:57:40
[2026-10-25 01:57:41,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:57:41,878.878 INFO    ] Initializing speech engine...
[2026-10-25 01:57:41,886.886 INFO    ] 2026-10-25 01:57:41
[2026-10-25 01:57:42,167.167 INFO    ] 2026-10-25 01:57:42
[2026-10-25 01:57:42,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:57:42,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:57:42,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:57:42,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:57:42,702.702 INFO    ] time= 25/10/2026 01:57:42
[2026-10-25 01:57:42,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:57:42,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:57:42,850.850 INFO    ] No existing commands found in stream
[2026-10-25 01:57:47,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:57:47,870.870 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 01:57:51,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:57:51,206.206 INFO    ] Checking for system updates...
[2026-10-25 01:57:51,245.245 INFO    ] 200
[2026-10-25 01:57:51,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:51,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:51,303.303 INFO    ] No update needed
[2026-10-25 01:57:51,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 01:57:51,346.346 INFO    ] 200
[2026-10-25 01:57:51,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:57:51,388.388 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:57:51,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:57:51,440.440 INFO    ] No camera update needed
[2026-10-25 01:57:51,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:57:51,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:57:51,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:57:51,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:57:53,494.494 INFO    ] ================================================
[2026-10-25 01:57:53,509.509 INFO    ] Launching Daemon at Sun Oct 25 01:57:53 IST 2026
[2026-10-25 01:57:53,520.520 INFO    ] ================================================
[2026-10-25 01:57:54,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:57:54
[2026-10-25 01:57:54,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:57:55,103.103 INFO    ] Initializing speech engine...
[2026-10-25 01:57:55,115.115 INFO    ] 2026-10-25 01:57:55
[2026-10-25 01:57:55,399.399 INFO    ] 2026-10-25 01:57:55
[2026-10-25 01:57:55,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:57:55,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:57:55,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:57:55,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:57:55,890.890 INFO    ] time= 25/10/2026 01:57:55
[2026-10-25 01:57:55,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:57:55,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:57:56,083.083 INFO    ] No existing commands found in stream
[2026-10-25 01:58:01,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:58:01,111.111 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 01:58:05,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:58:05,226.226 INFO    ] Checking for system updates...
[2026-10-25 01:58:05,264.264 INFO    ] 200
[2026-10-25 01:58:05,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:05,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:05,322.322 INFO    ] No update needed
[2026-10-25 01:58:05,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 01:58:05,359.359 INFO    ] 200
[2026-10-25 01:58:05,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:05,410.410 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:58:05,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:05,471.471 INFO    ] No camera update needed
[2026-10-25 01:58:05,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:58:05,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:58:05,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:58:05,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:58:07,525.525 INFO    ] ================================================
[2026-10-25 01:58:07,541.541 INFO    ] Launching Daemon at Sun Oct 25 01:58:07 IST 2026
[2026-10-25 01:58:07,552.552 INFO    ] ================================================
[2026-10-25 01:58:08,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:58:08
[2026-10-25 01:58:08,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:58:09,163.163 INFO    ] Initializing speech engine...
[2026-10-25 01:58:09,173.173 INFO    ] 2026-10-25 01:58:09
[2026-10-25 01:58:09,460.460 INFO    ] 2026-10-25 01:58:09
[2026-10-25 01:58:09,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:58:09,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:58:09,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:58:09,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:58:09,936.936 INFO    ] time= 25/10/2026 01:58:09
[2026-10-25 01:58:09,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:58:10,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:58:10,131.131 INFO    ] No existing commands found in stream
[2026-10-25 01:58:15,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:58:15,167.167 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 01:58:16,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:58:16,759.759 INFO    ] Checking for system updates...
[2026-10-25 01:58:16,796.796 INFO    ] 200
[2026-10-25 01:58:16,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:16,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:16,863.863 INFO    ] No update needed
[2026-10-25 01:58:16,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 01:58:16,901.901 INFO    ] 200
[2026-10-25 01:58:16,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:16,947.947 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:58:16,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:17,002.002 INFO    ] No camera update needed
[2026-10-25 01:58:17,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:58:17,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:58:17,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:58:17,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:58:19,059.059 INFO    ] ================================================
[2026-10-25 01:58:19,076.076 INFO    ] Launching Daemon at Sun Oct 25 01:58:19 IST 2026
[2026-10-25 01:58:19,088.088 INFO    ] ================================================
[2026-10-25 01:58:19,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:58:19
[2026-10-25 01:58:20,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:58:20,515.515 INFO    ] Initializing speech engine...
[2026-10-25 01:58:20,528.528 INFO    ] 2026-10-25 01:58:20
[2026-10-25 01:58:20,795.795 INFO    ] 2026-10-25 01:58:20
[2026-10-25 01:58:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:58:21,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:58:21,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:58:21,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:58:21,277.277 INFO    ] time= 25/10/2026 01:58:21
[2026-10-25 01:58:21,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:58:21,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:58:21,416.416 INFO    ] No existing commands found in stream
[2026-10-25 01:58:26,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:58:26,431.431 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 01:58:30,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 01:58:30,315.315 INFO    ] Checking for system updates...
[2026-10-25 01:58:30,351.351 INFO    ] 200
[2026-10-25 01:58:30,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:30,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:30,408.408 INFO    ] No update needed
[2026-10-25 01:58:30,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 01:58:30,449.449 INFO    ] 200
[2026-10-25 01:58:30,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:30,492.492 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:58:30,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:30,545.545 INFO    ] No camera update needed
[2026-10-25 01:58:30,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:58:30,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:58:30,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:58:30,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:58:32,603.603 INFO    ] ================================================
[2026-10-25 01:58:32,619.619 INFO    ] Launching Daemon at Sun Oct 25 01:58:32 IST 2026
[2026-10-25 01:58:32,631.631 INFO    ] ================================================
[2026-10-25 01:58:33,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:58:33
[2026-10-25 01:58:33,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:58:34,222.222 INFO    ] Initializing speech engine...
[2026-10-25 01:58:34,229.229 INFO    ] 2026-10-25 01:58:34
[2026-10-25 01:58:34,504.504 INFO    ] 2026-10-25 01:58:34
[2026-10-25 01:58:34,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:58:34,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:58:34,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:58:34,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:58:34,978.978 INFO    ] time= 25/10/2026 01:58:34
[2026-10-25 01:58:35,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:58:35,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:58:35,127.127 INFO    ] No existing commands found in stream
[2026-10-25 01:58:40,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:58:40,156.156 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 01:58:43,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:58:43,957.957 INFO    ] Checking for system updates...
[2026-10-25 01:58:43,993.993 INFO    ] 200
[2026-10-25 01:58:43,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:44,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:58:44,051.051 INFO    ] No update needed
[2026-10-25 01:58:44,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 01:58:44,091.091 INFO    ] 200
[2026-10-25 01:58:44,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:44,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:58:44,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:58:44,199.199 INFO    ] No camera update needed
[2026-10-25 01:58:44,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:58:44,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:58:44,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:58:44,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:58:46,255.255 INFO    ] ================================================
[2026-10-25 01:58:46,270.270 INFO    ] Launching Daemon at Sun Oct 25 01:58:46 IST 2026
[2026-10-25 01:58:46,281.281 INFO    ] ================================================
[2026-10-25 01:58:46,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:58:46
[2026-10-25 01:58:47,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:58:47,731.731 INFO    ] Initializing speech engine...
[2026-10-25 01:58:47,736.736 INFO    ] 2026-10-25 01:58:47
[2026-10-25 01:58:47,997.997 INFO    ] 2026-10-25 01:58:47
[2026-10-25 01:58:48,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:58:48,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:58:48,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:58:48,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:58:48,489.489 INFO    ] time= 25/10/2026 01:58:48
[2026-10-25 01:58:48,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:58:48,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:58:48,675.675 INFO    ] No existing commands found in stream
[2026-10-25 01:58:53,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:58:53,704.704 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 01:58:54,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:58:54,887.887 INFO    ] Checking for system updates...
[2026-10-25 01:58:54,923.923 INFO    ] 200
[2026-10-25 01:58:54,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:54,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:54,981.981 INFO    ] No update needed
[2026-10-25 01:58:54,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 01:58:55,018.018 INFO    ] 200
[2026-10-25 01:58:55,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:58:55,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:58:55,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:58:55,114.114 INFO    ] No camera update needed
[2026-10-25 01:58:55,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:58:55,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:58:55,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:58:55,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:58:57,171.171 INFO    ] ================================================
[2026-10-25 01:58:57,186.186 INFO    ] Launching Daemon at Sun Oct 25 01:58:57 IST 2026
[2026-10-25 01:58:57,197.197 INFO    ] ================================================
[2026-10-25 01:58:57,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:58:57
[2026-10-25 01:58:58,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:58:58,654.654 INFO    ] Initializing speech engine...
[2026-10-25 01:58:58,662.662 INFO    ] 2026-10-25 01:58:58
[2026-10-25 01:58:58,920.920 INFO    ] 2026-10-25 01:58:58
[2026-10-25 01:58:58,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:58:59,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:58:59,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:58:59,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:58:59,386.386 INFO    ] time= 25/10/2026 01:58:59
[2026-10-25 01:58:59,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:58:59,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:58:59,529.529 INFO    ] No existing commands found in stream
[2026-10-25 01:59:04,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:59:04,546.546 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 01:59:08,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:59:08,465.465 INFO    ] Checking for system updates...
[2026-10-25 01:59:08,501.501 INFO    ] 200
[2026-10-25 01:59:08,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:08,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:08,565.565 INFO    ] No update needed
[2026-10-25 01:59:08,567.567 INFO    ] Checking for camera pi updates...
[2026-10-25 01:59:08,601.601 INFO    ] 200
[2026-10-25 01:59:08,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:08,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:59:08,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:08,693.693 INFO    ] No camera update needed
[2026-10-25 01:59:08,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:59:08,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:59:08,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:59:08,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:59:10,752.752 INFO    ] ================================================
[2026-10-25 01:59:10,767.767 INFO    ] Launching Daemon at Sun Oct 25 01:59:10 IST 2026
[2026-10-25 01:59:10,777.777 INFO    ] ================================================
[2026-10-25 01:59:11,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:59:11
[2026-10-25 01:59:11,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:59:12,194.194 INFO    ] Initializing speech engine...
[2026-10-25 01:59:12,203.203 INFO    ] 2026-10-25 01:59:12
[2026-10-25 01:59:12,453.453 INFO    ] 2026-10-25 01:59:12
[2026-10-25 01:59:12,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:59:12,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:59:12,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:59:12,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:59:12,930.930 INFO    ] time= 25/10/2026 01:59:12
[2026-10-25 01:59:12,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:59:13,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:59:13,084.084 INFO    ] No existing commands found in stream
[2026-10-25 01:59:18,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:59:18,107.107 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 01:59:22,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 01:59:22,455.455 INFO    ] Checking for system updates...
[2026-10-25 01:59:22,491.491 INFO    ] 200
[2026-10-25 01:59:22,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:22,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:22,556.556 INFO    ] No update needed
[2026-10-25 01:59:22,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 01:59:22,595.595 INFO    ] 200
[2026-10-25 01:59:22,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:22,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:59:22,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:22,692.692 INFO    ] No camera update needed
[2026-10-25 01:59:22,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:59:22,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:59:22,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:59:22,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:59:24,748.748 INFO    ] ================================================
[2026-10-25 01:59:24,763.763 INFO    ] Launching Daemon at Sun Oct 25 01:59:24 IST 2026
[2026-10-25 01:59:24,773.773 INFO    ] ================================================
[2026-10-25 01:59:25,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:59:25
[2026-10-25 01:59:25,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:59:26,272.272 INFO    ] Initializing speech engine...
[2026-10-25 01:59:26,279.279 INFO    ] 2026-10-25 01:59:26
[2026-10-25 01:59:26,549.549 INFO    ] 2026-10-25 01:59:26
[2026-10-25 01:59:26,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:59:26,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:59:26,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:59:26,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:59:27,055.055 INFO    ] time= 25/10/2026 01:59:27
[2026-10-25 01:59:27,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:59:27,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:59:27,252.252 INFO    ] No existing commands found in stream
[2026-10-25 01:59:32,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:59:32,282.282 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 01:59:35,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 01:59:35,129.129 INFO    ] Checking for system updates...
[2026-10-25 01:59:35,166.166 INFO    ] 200
[2026-10-25 01:59:35,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:35,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:59:35,225.225 INFO    ] No update needed
[2026-10-25 01:59:35,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 01:59:35,265.265 INFO    ] 200
[2026-10-25 01:59:35,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:35,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:59:35,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 01:59:35,361.361 INFO    ] No camera update needed
[2026-10-25 01:59:35,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:59:35,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:59:35,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:59:35,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:59:37,416.416 INFO    ] ================================================
[2026-10-25 01:59:37,431.431 INFO    ] Launching Daemon at Sun Oct 25 01:59:37 IST 2026
[2026-10-25 01:59:37,441.441 INFO    ] ================================================
[2026-10-25 01:59:38,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:59:38
[2026-10-25 01:59:38,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:59:38,887.887 INFO    ] Initializing speech engine...
[2026-10-25 01:59:38,897.897 INFO    ] 2026-10-25 01:59:38
[2026-10-25 01:59:39,144.144 INFO    ] 2026-10-25 01:59:39
[2026-10-25 01:59:39,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:59:39,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:59:39,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:59:39,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:59:39,607.607 INFO    ] time= 25/10/2026 01:59:39
[2026-10-25 01:59:39,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:59:39,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:59:39,820.820 INFO    ] No existing commands found in stream
[2026-10-25 01:59:44,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:59:44,845.845 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 01:59:46,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 01:59:46,526.526 INFO    ] Checking for system updates...
[2026-10-25 01:59:46,562.562 INFO    ] 200
[2026-10-25 01:59:46,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:46,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:46,619.619 INFO    ] No update needed
[2026-10-25 01:59:46,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 01:59:46,662.662 INFO    ] 200
[2026-10-25 01:59:46,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 01:59:46,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 01:59:46,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 01:59:46,761.761 INFO    ] No camera update needed
[2026-10-25 01:59:46,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 01:59:46,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 01:59:46,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 01:59:46,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 01:59:48,817.817 INFO    ] ================================================
[2026-10-25 01:59:48,832.832 INFO    ] Launching Daemon at Sun Oct 25 01:59:48 IST 2026
[2026-10-25 01:59:48,842.842 INFO    ] ================================================
[2026-10-25 01:59:49,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 01:59:49
[2026-10-25 01:59:49,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 01:59:50,241.241 INFO    ] Initializing speech engine...
[2026-10-25 01:59:50,256.256 INFO    ] 2026-10-25 01:59:50
[2026-10-25 01:59:50,523.523 INFO    ] 2026-10-25 01:59:50
[2026-10-25 01:59:50,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 01:59:50,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 01:59:50,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 01:59:50,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 01:59:51,007.007 INFO    ] time= 25/10/2026 01:59:50
[2026-10-25 01:59:51,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 01:59:51,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 01:59:51,188.188 INFO    ] No existing commands found in stream
[2026-10-25 01:59:56,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 01:59:56,223.223 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 02:00:00,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:00:00,153.153 INFO    ] Checking for system updates...
[2026-10-25 02:00:00,192.192 INFO    ] 200
[2026-10-25 02:00:00,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:00,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:00:00,251.251 INFO    ] No update needed
[2026-10-25 02:00:00,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 02:00:00,291.291 INFO    ] 200
[2026-10-25 02:00:00,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:00,344.344 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:00:00,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:00:00,401.401 INFO    ] No camera update needed
[2026-10-25 02:00:00,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:00:00,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:00:00,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:00:00,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:00:02,814.814 INFO    ] ================================================
[2026-10-25 02:00:03,917.917 INFO    ] Launching Daemon at Sun Oct 25 02:00:02 IST 2026
[2026-10-25 02:00:03,072.072 INFO    ] ================================================
[2026-10-25 02:00:05,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:00:05
[2026-10-25 02:00:06,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:00:06,860.860 INFO    ] Initializing speech engine...
[2026-10-25 02:00:06,867.867 INFO    ] 2026-10-25 02:00:06
[2026-10-25 02:00:07,169.169 INFO    ] 2026-10-25 02:00:07
[2026-10-25 02:00:07,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:00:07,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:00:07,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:00:07,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:00:07,534.534 INFO    ] time= 25/10/2026 02:00:07
[2026-10-25 02:00:07,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:00:07,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:00:07,612.612 INFO    ] No existing commands found in stream
[2026-10-25 02:00:12,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:00:12,628.628 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 02:00:14,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:00:14,993.993 INFO    ] Checking for system updates...
[2026-10-25 02:00:15,031.031 INFO    ] 200
[2026-10-25 02:00:15,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:15,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:15,092.092 INFO    ] No update needed
[2026-10-25 02:00:15,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 02:00:15,134.134 INFO    ] 200
[2026-10-25 02:00:15,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:15,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:00:15,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:15,248.248 INFO    ] No camera update needed
[2026-10-25 02:00:15,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:00:15,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:00:15,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:00:15,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:00:17,303.303 INFO    ] ================================================
[2026-10-25 02:00:17,319.319 INFO    ] Launching Daemon at Sun Oct 25 02:00:17 IST 2026
[2026-10-25 02:00:17,329.329 INFO    ] ================================================
[2026-10-25 02:00:18,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:00:18
[2026-10-25 02:00:18,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:00:19,029.029 INFO    ] Initializing speech engine...
[2026-10-25 02:00:19,042.042 INFO    ] 2026-10-25 02:00:19
[2026-10-25 02:00:19,334.334 INFO    ] 2026-10-25 02:00:19
[2026-10-25 02:00:19,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:00:19,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:00:19,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:00:19,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:00:19,828.828 INFO    ] time= 25/10/2026 02:00:19
[2026-10-25 02:00:19,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:00:19,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:00:20,043.043 INFO    ] No existing commands found in stream
[2026-10-25 02:00:25,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:00:25,063.063 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 02:00:26,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:00:26,811.811 INFO    ] Checking for system updates...
[2026-10-25 02:00:26,854.854 INFO    ] 200
[2026-10-25 02:00:26,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:26,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:00:26,919.919 INFO    ] No update needed
[2026-10-25 02:00:26,922.922 INFO    ] Checking for camera pi updates...
[2026-10-25 02:00:26,957.957 INFO    ] 200
[2026-10-25 02:00:26,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:27,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:00:27,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:00:27,058.058 INFO    ] No camera update needed
[2026-10-25 02:00:27,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:00:27,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:00:27,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:00:27,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:00:29,113.113 INFO    ] ================================================
[2026-10-25 02:00:29,129.129 INFO    ] Launching Daemon at Sun Oct 25 02:00:29 IST 2026
[2026-10-25 02:00:29,141.141 INFO    ] ================================================
[2026-10-25 02:00:29,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:00:29
[2026-10-25 02:00:30,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:00:30,536.536 INFO    ] Initializing speech engine...
[2026-10-25 02:00:30,545.545 INFO    ] 2026-10-25 02:00:30
[2026-10-25 02:00:30,819.819 INFO    ] 2026-10-25 02:00:30
[2026-10-25 02:00:30,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:00:31,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:00:31,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:00:31,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:00:31,195.195 INFO    ] time= 25/10/2026 02:00:31
[2026-10-25 02:00:31,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:00:31,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:00:31,357.357 INFO    ] No existing commands found in stream
[2026-10-25 02:00:36,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:00:36,385.385 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 02:00:39,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:00:39,907.907 INFO    ] Checking for system updates...
[2026-10-25 02:00:39,943.943 INFO    ] 200
[2026-10-25 02:00:39,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:39,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:40,001.001 INFO    ] No update needed
[2026-10-25 02:00:40,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 02:00:40,041.041 INFO    ] 200
[2026-10-25 02:00:40,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:40,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:00:40,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:40,139.139 INFO    ] No camera update needed
[2026-10-25 02:00:40,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:00:40,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:00:40,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:00:40,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:00:42,194.194 INFO    ] ================================================
[2026-10-25 02:00:42,211.211 INFO    ] Launching Daemon at Sun Oct 25 02:00:42 IST 2026
[2026-10-25 02:00:42,223.223 INFO    ] ================================================
[2026-10-25 02:00:42,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:00:42
[2026-10-25 02:00:43,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:00:43,672.672 INFO    ] Initializing speech engine...
[2026-10-25 02:00:43,681.681 INFO    ] 2026-10-25 02:00:43
[2026-10-25 02:00:43,929.929 INFO    ] 2026-10-25 02:00:43
[2026-10-25 02:00:43,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:00:44,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:00:44,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:00:44,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:00:44,410.410 INFO    ] time= 25/10/2026 02:00:44
[2026-10-25 02:00:44,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:00:44,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:00:44,608.608 INFO    ] No existing commands found in stream
[2026-10-25 02:00:49,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:00:49,647.647 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 02:00:53,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:00:53,709.709 INFO    ] Checking for system updates...
[2026-10-25 02:00:53,746.746 INFO    ] 200
[2026-10-25 02:00:53,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:53,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:53,803.803 INFO    ] No update needed
[2026-10-25 02:00:53,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 02:00:53,838.838 INFO    ] 200
[2026-10-25 02:00:53,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:00:53,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:00:53,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:00:53,936.936 INFO    ] No camera update needed
[2026-10-25 02:00:53,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:00:53,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:00:53,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:00:53,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:00:55,992.992 INFO    ] ================================================
[2026-10-25 02:00:56,008.008 INFO    ] Launching Daemon at Sun Oct 25 02:00:56 IST 2026
[2026-10-25 02:00:56,019.019 INFO    ] ================================================
[2026-10-25 02:00:56,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:00:56
[2026-10-25 02:00:57,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:00:57,645.645 INFO    ] Initializing speech engine...
[2026-10-25 02:00:57,654.654 INFO    ] 2026-10-25 02:00:57
[2026-10-25 02:00:57,925.925 INFO    ] 2026-10-25 02:00:57
[2026-10-25 02:00:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:00:58,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:00:58,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:00:58,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:00:58,409.409 INFO    ] time= 25/10/2026 02:00:58
[2026-10-25 02:00:58,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:00:58,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:00:58,605.605 INFO    ] No existing commands found in stream
[2026-10-25 02:01:03,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:01:03,634.634 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 02:01:06,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:01:06,648.648 INFO    ] Checking for system updates...
[2026-10-25 02:01:06,686.686 INFO    ] 200
[2026-10-25 02:01:06,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:06,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:06,745.745 INFO    ] No update needed
[2026-10-25 02:01:06,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 02:01:06,786.786 INFO    ] 200
[2026-10-25 02:01:06,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:06,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:01:06,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:07,000.000 INFO    ] No camera update needed
[2026-10-25 02:01:07,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:01:07,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:01:07,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:01:07,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:01:09,059.059 INFO    ] ================================================
[2026-10-25 02:01:09,075.075 INFO    ] Launching Daemon at Sun Oct 25 02:01:09 IST 2026
[2026-10-25 02:01:09,088.088 INFO    ] ================================================
[2026-10-25 02:01:09,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:01:09
[2026-10-25 02:01:10,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:01:10,534.534 INFO    ] Initializing speech engine...
[2026-10-25 02:01:10,558.558 INFO    ] 2026-10-25 02:01:10
[2026-10-25 02:01:10,832.832 INFO    ] 2026-10-25 02:01:10
[2026-10-25 02:01:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:01:11,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:01:11,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:01:11,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:01:11,244.244 INFO    ] time= 25/10/2026 02:01:11
[2026-10-25 02:01:11,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:01:11,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:01:11,438.438 INFO    ] No existing commands found in stream
[2026-10-25 02:01:16,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:01:16,452.452 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 02:01:18,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:01:18,494.494 INFO    ] Checking for system updates...
[2026-10-25 02:01:18,536.536 INFO    ] 200
[2026-10-25 02:01:18,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:18,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:18,595.595 INFO    ] No update needed
[2026-10-25 02:01:18,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 02:01:18,634.634 INFO    ] 200
[2026-10-25 02:01:18,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:18,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:01:18,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:18,721.721 INFO    ] No camera update needed
[2026-10-25 02:01:18,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:01:18,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:01:18,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:01:18,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:01:20,781.781 INFO    ] ================================================
[2026-10-25 02:01:20,797.797 INFO    ] Launching Daemon at Sun Oct 25 02:01:20 IST 2026
[2026-10-25 02:01:20,808.808 INFO    ] ================================================
[2026-10-25 02:01:21,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:01:21
[2026-10-25 02:01:21,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:01:22,268.268 INFO    ] Initializing speech engine...
[2026-10-25 02:01:22,274.274 INFO    ] 2026-10-25 02:01:22
[2026-10-25 02:01:22,536.536 INFO    ] 2026-10-25 02:01:22
[2026-10-25 02:01:22,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:01:22,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:01:22,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:01:23,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:01:23,079.079 INFO    ] time= 25/10/2026 02:01:23
[2026-10-25 02:01:23,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:01:23,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:01:23,225.225 INFO    ] No existing commands found in stream
[2026-10-25 02:01:28,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:01:28,247.247 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 02:01:30,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:01:30,632.632 INFO    ] Checking for system updates...
[2026-10-25 02:01:30,668.668 INFO    ] 200
[2026-10-25 02:01:30,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:30,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:30,727.727 INFO    ] No update needed
[2026-10-25 02:01:30,730.730 INFO    ] Checking for camera pi updates...
[2026-10-25 02:01:30,764.764 INFO    ] 200
[2026-10-25 02:01:30,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:30,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:01:30,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:30,861.861 INFO    ] No camera update needed
[2026-10-25 02:01:30,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:01:30,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:01:30,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:01:30,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:01:32,920.920 INFO    ] ================================================
[2026-10-25 02:01:32,938.938 INFO    ] Launching Daemon at Sun Oct 25 02:01:32 IST 2026
[2026-10-25 02:01:32,950.950 INFO    ] ================================================
[2026-10-25 02:01:33,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:01:33
[2026-10-25 02:01:34,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:01:34,363.363 INFO    ] Initializing speech engine...
[2026-10-25 02:01:34,370.370 INFO    ] 2026-10-25 02:01:34
[2026-10-25 02:01:34,645.645 INFO    ] 2026-10-25 02:01:34
[2026-10-25 02:01:34,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:01:34,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:01:34,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:01:35,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:01:35,022.022 INFO    ] time= 25/10/2026 02:01:35
[2026-10-25 02:01:35,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:01:35,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:01:35,191.191 INFO    ] No existing commands found in stream
[2026-10-25 02:01:40,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:01:40,219.219 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 02:01:41,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:01:41,565.565 INFO    ] Checking for system updates...
[2026-10-25 02:01:41,601.601 INFO    ] 200
[2026-10-25 02:01:41,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:41,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:01:41,659.659 INFO    ] No update needed
[2026-10-25 02:01:41,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 02:01:41,696.696 INFO    ] 200
[2026-10-25 02:01:41,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:41,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:01:41,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:01:41,800.800 INFO    ] No camera update needed
[2026-10-25 02:01:41,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:01:41,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:01:41,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:01:41,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:01:43,854.854 INFO    ] ================================================
[2026-10-25 02:01:43,869.869 INFO    ] Launching Daemon at Sun Oct 25 02:01:43 IST 2026
[2026-10-25 02:01:43,880.880 INFO    ] ================================================
[2026-10-25 02:01:44,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:01:44
[2026-10-25 02:01:45,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:01:45,555.555 INFO    ] Initializing speech engine...
[2026-10-25 02:01:45,563.563 INFO    ] 2026-10-25 02:01:45
[2026-10-25 02:01:45,844.844 INFO    ] 2026-10-25 02:01:45
[2026-10-25 02:01:45,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:01:46,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:01:46,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:01:46,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:01:46,370.370 INFO    ] time= 25/10/2026 02:01:46
[2026-10-25 02:01:46,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:01:46,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:01:46,541.541 INFO    ] No existing commands found in stream
[2026-10-25 02:01:51,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:01:51,571.571 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 02:01:53,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:01:53,135.135 INFO    ] Checking for system updates...
[2026-10-25 02:01:53,176.176 INFO    ] 200
[2026-10-25 02:01:53,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:53,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:53,242.242 INFO    ] No update needed
[2026-10-25 02:01:53,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 02:01:53,283.283 INFO    ] 200
[2026-10-25 02:01:53,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:01:53,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:01:53,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:01:53,393.393 INFO    ] No camera update needed
[2026-10-25 02:01:53,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:01:53,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:01:53,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:01:53,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:01:55,449.449 INFO    ] ================================================
[2026-10-25 02:01:55,465.465 INFO    ] Launching Daemon at Sun Oct 25 02:01:55 IST 2026
[2026-10-25 02:01:55,476.476 INFO    ] ================================================
[2026-10-25 02:01:56,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:01:56
[2026-10-25 02:01:56,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:01:57,038.038 INFO    ] Initializing speech engine...
[2026-10-25 02:01:57,052.052 INFO    ] 2026-10-25 02:01:57
[2026-10-25 02:01:57,343.343 INFO    ] 2026-10-25 02:01:57
[2026-10-25 02:01:57,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:01:57,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:01:57,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:01:57,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:01:57,661.661 INFO    ] time= 25/10/2026 02:01:57
[2026-10-25 02:01:57,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:01:57,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:01:57,794.794 INFO    ] No existing commands found in stream
[2026-10-25 02:02:02,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:02:02,806.806 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 02:02:05,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:02:05,336.336 INFO    ] Checking for system updates...
[2026-10-25 02:02:05,372.372 INFO    ] 200
[2026-10-25 02:02:05,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:05,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:05,431.431 INFO    ] No update needed
[2026-10-25 02:02:05,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 02:02:05,467.467 INFO    ] 200
[2026-10-25 02:02:05,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:05,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:02:05,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:05,561.561 INFO    ] No camera update needed
[2026-10-25 02:02:05,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:02:05,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:02:05,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:02:05,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:02:07,617.617 INFO    ] ================================================
[2026-10-25 02:02:07,633.633 INFO    ] Launching Daemon at Sun Oct 25 02:02:07 IST 2026
[2026-10-25 02:02:07,644.644 INFO    ] ================================================
[2026-10-25 02:02:08,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:02:08
[2026-10-25 02:02:09,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:02:09,320.320 INFO    ] Initializing speech engine...
[2026-10-25 02:02:09,327.327 INFO    ] 2026-10-25 02:02:09
[2026-10-25 02:02:09,616.616 INFO    ] 2026-10-25 02:02:09
[2026-10-25 02:02:09,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:02:09,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:02:09,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:02:10,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:02:10,089.089 INFO    ] time= 25/10/2026 02:02:10
[2026-10-25 02:02:10,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:02:10,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:02:10,301.301 INFO    ] No existing commands found in stream
[2026-10-25 02:02:15,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:02:15,326.326 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 02:02:18,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:02:18,660.660 INFO    ] Checking for system updates...
[2026-10-25 02:02:18,697.697 INFO    ] 200
[2026-10-25 02:02:18,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:18,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:18,759.759 INFO    ] No update needed
[2026-10-25 02:02:18,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 02:02:18,802.802 INFO    ] 200
[2026-10-25 02:02:18,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:18,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:02:18,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:18,900.900 INFO    ] No camera update needed
[2026-10-25 02:02:18,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:02:18,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:02:18,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:02:18,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:02:20,961.961 INFO    ] ================================================
[2026-10-25 02:02:20,977.977 INFO    ] Launching Daemon at Sun Oct 25 02:02:20 IST 2026
[2026-10-25 02:02:20,987.987 INFO    ] ================================================
[2026-10-25 02:02:21,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:02:21
[2026-10-25 02:02:22,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:02:22,400.400 INFO    ] Initializing speech engine...
[2026-10-25 02:02:22,406.406 INFO    ] 2026-10-25 02:02:22
[2026-10-25 02:02:22,709.709 INFO    ] 2026-10-25 02:02:22
[2026-10-25 02:02:22,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:02:22,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:02:22,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:02:23,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:02:23,074.074 INFO    ] time= 25/10/2026 02:02:23
[2026-10-25 02:02:23,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:02:23,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:02:23,157.157 INFO    ] No existing commands found in stream
[2026-10-25 02:02:28,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:02:28,172.172 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 02:02:31,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:02:31,256.256 INFO    ] Checking for system updates...
[2026-10-25 02:02:31,297.297 INFO    ] 200
[2026-10-25 02:02:31,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:31,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:02:31,364.364 INFO    ] No update needed
[2026-10-25 02:02:31,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 02:02:31,404.404 INFO    ] 200
[2026-10-25 02:02:31,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:31,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:02:31,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:02:31,489.489 INFO    ] No camera update needed
[2026-10-25 02:02:31,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:02:31,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:02:31,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:02:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:02:33,545.545 INFO    ] ================================================
[2026-10-25 02:02:33,561.561 INFO    ] Launching Daemon at Sun Oct 25 02:02:33 IST 2026
[2026-10-25 02:02:33,572.572 INFO    ] ================================================
[2026-10-25 02:02:34,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:02:34
[2026-10-25 02:02:34,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:02:35,024.024 INFO    ] Initializing speech engine...
[2026-10-25 02:02:35,033.033 INFO    ] 2026-10-25 02:02:35
[2026-10-25 02:02:35,295.295 INFO    ] 2026-10-25 02:02:35
[2026-10-25 02:02:35,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:02:35,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:02:35,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:02:35,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:02:35,752.752 INFO    ] time= 25/10/2026 02:02:35
[2026-10-25 02:02:35,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:02:35,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:02:35,899.899 INFO    ] No existing commands found in stream
[2026-10-25 02:02:40,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:02:40,914.914 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 02:02:41,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:02:41,727.727 INFO    ] Checking for system updates...
[2026-10-25 02:02:41,763.763 INFO    ] 200
[2026-10-25 02:02:41,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:41,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:41,829.829 INFO    ] No update needed
[2026-10-25 02:02:41,831.831 INFO    ] Checking for camera pi updates...
[2026-10-25 02:02:41,866.866 INFO    ] 200
[2026-10-25 02:02:41,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:41,915.915 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:02:41,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:41,973.973 INFO    ] No camera update needed
[2026-10-25 02:02:41,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:02:41,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:02:41,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:02:41,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:02:44,029.029 INFO    ] ================================================
[2026-10-25 02:02:44,045.045 INFO    ] Launching Daemon at Sun Oct 25 02:02:44 IST 2026
[2026-10-25 02:02:44,055.055 INFO    ] ================================================
[2026-10-25 02:02:44,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:02:44
[2026-10-25 02:02:45,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:02:45,521.521 INFO    ] Initializing speech engine...
[2026-10-25 02:02:45,530.530 INFO    ] 2026-10-25 02:02:45
[2026-10-25 02:02:45,776.776 INFO    ] 2026-10-25 02:02:45
[2026-10-25 02:02:45,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:02:45,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:02:45,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:02:46,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:02:46,142.142 INFO    ] time= 25/10/2026 02:02:46
[2026-10-25 02:02:46,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:02:46,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:02:46,290.290 INFO    ] No existing commands found in stream
[2026-10-25 02:02:51,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:02:51,318.318 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 02:02:55,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:02:55,327.327 INFO    ] Checking for system updates...
[2026-10-25 02:02:55,364.364 INFO    ] 200
[2026-10-25 02:02:55,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:55,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:55,423.423 INFO    ] No update needed
[2026-10-25 02:02:55,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 02:02:55,462.462 INFO    ] 200
[2026-10-25 02:02:55,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:02:55,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:02:55,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:02:55,561.561 INFO    ] No camera update needed
[2026-10-25 02:02:55,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:02:55,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:02:55,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:02:55,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:02:57,623.623 INFO    ] ================================================
[2026-10-25 02:02:57,638.638 INFO    ] Launching Daemon at Sun Oct 25 02:02:57 IST 2026
[2026-10-25 02:02:57,650.650 INFO    ] ================================================
[2026-10-25 02:02:58,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:02:58
[2026-10-25 02:02:58,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:02:59,128.128 INFO    ] Initializing speech engine...
[2026-10-25 02:02:59,150.150 INFO    ] 2026-10-25 02:02:59
[2026-10-25 02:02:59,405.405 INFO    ] 2026-10-25 02:02:59
[2026-10-25 02:02:59,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:02:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:02:59,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:02:59,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:02:59,859.859 INFO    ] time= 25/10/2026 02:02:59
[2026-10-25 02:02:59,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:02:59,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:00,039.039 INFO    ] No existing commands found in stream
[2026-10-25 02:03:05,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:03:05,055.055 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 02:03:08,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:03:08,374.374 INFO    ] Checking for system updates...
[2026-10-25 02:03:08,415.415 INFO    ] 200
[2026-10-25 02:03:08,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:08,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:08,482.482 INFO    ] No update needed
[2026-10-25 02:03:08,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 02:03:08,523.523 INFO    ] 200
[2026-10-25 02:03:08,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:08,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:03:08,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:08,626.626 INFO    ] No camera update needed
[2026-10-25 02:03:08,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:03:08,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:03:08,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:03:08,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:03:10,684.684 INFO    ] ================================================
[2026-10-25 02:03:10,701.701 INFO    ] Launching Daemon at Sun Oct 25 02:03:10 IST 2026
[2026-10-25 02:03:10,711.711 INFO    ] ================================================
[2026-10-25 02:03:11,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:03:11
[2026-10-25 02:03:12,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:03:12,276.276 INFO    ] Initializing speech engine...
[2026-10-25 02:03:12,297.297 INFO    ] 2026-10-25 02:03:12
[2026-10-25 02:03:12,549.549 INFO    ] 2026-10-25 02:03:12
[2026-10-25 02:03:12,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:03:12,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:03:12,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:03:12,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:03:12,927.927 INFO    ] time= 25/10/2026 02:03:12
[2026-10-25 02:03:12,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:03:12,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:13,007.007 INFO    ] No existing commands found in stream
[2026-10-25 02:03:18,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:03:18,023.023 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 02:03:19,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:03:19,150.150 INFO    ] Checking for system updates...
[2026-10-25 02:03:19,191.191 INFO    ] 200
[2026-10-25 02:03:19,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:19,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:03:19,249.249 INFO    ] No update needed
[2026-10-25 02:03:19,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 02:03:19,285.285 INFO    ] 200
[2026-10-25 02:03:19,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:19,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:03:19,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:03:19,489.489 INFO    ] No camera update needed
[2026-10-25 02:03:19,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:03:19,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:03:19,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:03:19,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:03:21,544.544 INFO    ] ================================================
[2026-10-25 02:03:21,559.559 INFO    ] Launching Daemon at Sun Oct 25 02:03:21 IST 2026
[2026-10-25 02:03:21,570.570 INFO    ] ================================================
[2026-10-25 02:03:22,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:03:22
[2026-10-25 02:03:22,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:03:23,238.238 INFO    ] Initializing speech engine...
[2026-10-25 02:03:23,244.244 INFO    ] 2026-10-25 02:03:23
[2026-10-25 02:03:23,537.537 INFO    ] 2026-10-25 02:03:23
[2026-10-25 02:03:23,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:03:23,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:03:23,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:03:24,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:03:24,089.089 INFO    ] time= 25/10/2026 02:03:24
[2026-10-25 02:03:24,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:03:24,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:24,229.229 INFO    ] No existing commands found in stream
[2026-10-25 02:03:29,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:03:29,246.246 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 02:03:31,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:03:31,259.259 INFO    ] Checking for system updates...
[2026-10-25 02:03:31,297.297 INFO    ] 200
[2026-10-25 02:03:31,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:31,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:31,355.355 INFO    ] No update needed
[2026-10-25 02:03:31,358.358 INFO    ] Checking for camera pi updates...
[2026-10-25 02:03:31,392.392 INFO    ] 200
[2026-10-25 02:03:31,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:31,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:03:31,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:31,494.494 INFO    ] No camera update needed
[2026-10-25 02:03:31,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:03:31,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:03:31,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:03:31,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:03:33,552.552 INFO    ] ================================================
[2026-10-25 02:03:33,567.567 INFO    ] Launching Daemon at Sun Oct 25 02:03:33 IST 2026
[2026-10-25 02:03:33,579.579 INFO    ] ================================================
[2026-10-25 02:03:34,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:03:34
[2026-10-25 02:03:34,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:03:35,155.155 INFO    ] Initializing speech engine...
[2026-10-25 02:03:35,165.165 INFO    ] 2026-10-25 02:03:35
[2026-10-25 02:03:35,469.469 INFO    ] 2026-10-25 02:03:35
[2026-10-25 02:03:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:03:35,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:03:35,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:03:35,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:03:35,989.989 INFO    ] time= 25/10/2026 02:03:35
[2026-10-25 02:03:35,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:03:36,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:36,130.130 INFO    ] No existing commands found in stream
[2026-10-25 02:03:41,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:03:41,164.164 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 02:03:42,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:03:42,484.484 INFO    ] Checking for system updates...
[2026-10-25 02:03:42,532.532 INFO    ] 200
[2026-10-25 02:03:42,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:42,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:42,601.601 INFO    ] No update needed
[2026-10-25 02:03:42,604.604 INFO    ] Checking for camera pi updates...
[2026-10-25 02:03:42,659.659 INFO    ] 200
[2026-10-25 02:03:42,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:03:42,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:03:42,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:03:42,753.753 INFO    ] No camera update needed
[2026-10-25 02:03:42,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:03:42,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:03:42,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:03:42,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:03:44,808.808 INFO    ] ================================================
[2026-10-25 02:03:44,823.823 INFO    ] Launching Daemon at Sun Oct 25 02:03:44 IST 2026
[2026-10-25 02:03:44,833.833 INFO    ] ================================================
[2026-10-25 02:03:45,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:03:45
[2026-10-25 02:03:46,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:03:46,300.300 INFO    ] Initializing speech engine...
[2026-10-25 02:03:46,310.310 INFO    ] 2026-10-25 02:03:46
[2026-10-25 02:03:46,559.559 INFO    ] 2026-10-25 02:03:46
[2026-10-25 02:03:46,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:03:46,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:03:46,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:03:46,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:03:47,030.030 INFO    ] time= 25/10/2026 02:03:46
[2026-10-25 02:03:47,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:03:47,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:47,182.182 INFO    ] No existing commands found in stream
[2026-10-25 02:03:52,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:03:52,200.200 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 02:03:55,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:03:55,298.298 INFO    ] Checking for system updates...
[2026-10-25 02:03:55,345.345 INFO    ] 200
[2026-10-25 02:03:55,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:03:55,351.351 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 02:03:55,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 02:03:55,415.415 INFO    ] 200
[2026-10-25 02:03:55,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:03:55,420.420 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 02:03:55,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:03:55,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:03:55,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:03:55,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:03:57,480.480 INFO    ] ================================================
[2026-10-25 02:03:57,497.497 INFO    ] Launching Daemon at Sun Oct 25 02:03:57 IST 2026
[2026-10-25 02:03:57,508.508 INFO    ] ================================================
[2026-10-25 02:03:58,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:03:58
[2026-10-25 02:03:58,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:03:59,027.027 INFO    ] Initializing speech engine...
[2026-10-25 02:03:59,044.044 INFO    ] 2026-10-25 02:03:59
[2026-10-25 02:03:59,296.296 INFO    ] 2026-10-25 02:03:59
[2026-10-25 02:03:59,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:03:59,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:03:59,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:03:59,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:03:59,650.650 INFO    ] time= 25/10/2026 02:03:59
[2026-10-25 02:03:59,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:03:59,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:03:59,749.749 INFO    ] No existing commands found in stream
[2026-10-25 02:04:04,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:04:04,767.767 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 02:04:07,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:04:07,438.438 INFO    ] Checking for system updates...
[2026-10-25 02:04:07,473.473 INFO    ] 200
[2026-10-25 02:04:07,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:07,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:04:07,530.530 INFO    ] No update needed
[2026-10-25 02:04:07,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 02:04:07,570.570 INFO    ] 200
[2026-10-25 02:04:07,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:07,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:04:07,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:04:07,672.672 INFO    ] No camera update needed
[2026-10-25 02:04:07,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:04:07,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:04:07,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:04:07,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:04:09,729.729 INFO    ] ================================================
[2026-10-25 02:04:09,745.745 INFO    ] Launching Daemon at Sun Oct 25 02:04:09 IST 2026
[2026-10-25 02:04:09,756.756 INFO    ] ================================================
[2026-10-25 02:04:10,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:04:10
[2026-10-25 02:04:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:04:11,154.154 INFO    ] Initializing speech engine...
[2026-10-25 02:04:11,159.159 INFO    ] 2026-10-25 02:04:11
[2026-10-25 02:04:11,460.460 INFO    ] 2026-10-25 02:04:11
[2026-10-25 02:04:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:04:11,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:04:11,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:04:11,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:04:11,883.883 INFO    ] time= 25/10/2026 02:04:11
[2026-10-25 02:04:11,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:04:11,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:04:11,967.967 INFO    ] No existing commands found in stream
[2026-10-25 02:04:16,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:04:16,983.983 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 02:04:19,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:04:19,270.270 INFO    ] Checking for system updates...
[2026-10-25 02:04:19,309.309 INFO    ] 200
[2026-10-25 02:04:19,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:19,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:19,375.375 INFO    ] No update needed
[2026-10-25 02:04:19,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 02:04:19,411.411 INFO    ] 200
[2026-10-25 02:04:19,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:19,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:04:19,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:19,512.512 INFO    ] No camera update needed
[2026-10-25 02:04:19,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:04:19,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:04:19,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:04:19,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:04:21,567.567 INFO    ] ================================================
[2026-10-25 02:04:21,583.583 INFO    ] Launching Daemon at Sun Oct 25 02:04:21 IST 2026
[2026-10-25 02:04:21,595.595 INFO    ] ================================================
[2026-10-25 02:04:22,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:04:22
[2026-10-25 02:04:22,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:04:23,058.058 INFO    ] Initializing speech engine...
[2026-10-25 02:04:23,067.067 INFO    ] 2026-10-25 02:04:23
[2026-10-25 02:04:23,318.318 INFO    ] 2026-10-25 02:04:23
[2026-10-25 02:04:23,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:04:23,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:04:23,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:04:23,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:04:23,807.807 INFO    ] time= 25/10/2026 02:04:23
[2026-10-25 02:04:23,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:04:23,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:04:23,945.945 INFO    ] No existing commands found in stream
[2026-10-25 02:04:28,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:04:28,980.980 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 02:04:33,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:04:33,050.050 INFO    ] Checking for system updates...
[2026-10-25 02:04:33,091.091 INFO    ] 200
[2026-10-25 02:04:33,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:33,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:33,164.164 INFO    ] No update needed
[2026-10-25 02:04:33,167.167 INFO    ] Checking for camera pi updates...
[2026-10-25 02:04:33,205.205 INFO    ] 200
[2026-10-25 02:04:33,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:33,254.254 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:04:33,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:33,298.298 INFO    ] No camera update needed
[2026-10-25 02:04:33,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:04:33,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:04:33,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:04:33,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:04:35,364.364 INFO    ] ================================================
[2026-10-25 02:04:35,380.380 INFO    ] Launching Daemon at Sun Oct 25 02:04:35 IST 2026
[2026-10-25 02:04:35,392.392 INFO    ] ================================================
[2026-10-25 02:04:35,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:04:35
[2026-10-25 02:04:36,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:04:36,859.859 INFO    ] Initializing speech engine...
[2026-10-25 02:04:36,868.868 INFO    ] 2026-10-25 02:04:36
[2026-10-25 02:04:37,127.127 INFO    ] 2026-10-25 02:04:37
[2026-10-25 02:04:37,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:04:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:04:37,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:04:37,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:04:37,588.588 INFO    ] time= 25/10/2026 02:04:37
[2026-10-25 02:04:37,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:04:37,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:04:37,739.739 INFO    ] No existing commands found in stream
[2026-10-25 02:04:42,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:04:42,754.754 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 02:04:44,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:04:44,624.624 INFO    ] Checking for system updates...
[2026-10-25 02:04:44,664.664 INFO    ] 200
[2026-10-25 02:04:44,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:44,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:04:44,730.730 INFO    ] No update needed
[2026-10-25 02:04:44,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 02:04:44,766.766 INFO    ] 200
[2026-10-25 02:04:44,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:44,814.814 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:04:44,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:04:44,865.865 INFO    ] No camera update needed
[2026-10-25 02:04:44,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:04:44,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:04:44,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:04:44,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:04:46,922.922 INFO    ] ================================================
[2026-10-25 02:04:46,938.938 INFO    ] Launching Daemon at Sun Oct 25 02:04:46 IST 2026
[2026-10-25 02:04:46,950.950 INFO    ] ================================================
[2026-10-25 02:04:47,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:04:47
[2026-10-25 02:04:48,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:04:48,571.571 INFO    ] Initializing speech engine...
[2026-10-25 02:04:48,584.584 INFO    ] 2026-10-25 02:04:48
[2026-10-25 02:04:48,890.890 INFO    ] 2026-10-25 02:04:48
[2026-10-25 02:04:48,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:04:49,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:04:49,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:04:49,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:04:49,397.397 INFO    ] time= 25/10/2026 02:04:49
[2026-10-25 02:04:49,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:04:49,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:04:49,532.532 INFO    ] No existing commands found in stream
[2026-10-25 02:04:54,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:04:54,564.564 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 02:04:56,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:04:56,181.181 INFO    ] Checking for system updates...
[2026-10-25 02:04:56,221.221 INFO    ] 200
[2026-10-25 02:04:56,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:56,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:56,284.284 INFO    ] No update needed
[2026-10-25 02:04:56,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 02:04:56,324.324 INFO    ] 200
[2026-10-25 02:04:56,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:04:56,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:04:56,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:04:56,418.418 INFO    ] No camera update needed
[2026-10-25 02:04:56,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:04:56,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:04:56,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:04:56,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:04:58,474.474 INFO    ] ================================================
[2026-10-25 02:04:58,489.489 INFO    ] Launching Daemon at Sun Oct 25 02:04:58 IST 2026
[2026-10-25 02:04:58,500.500 INFO    ] ================================================
[2026-10-25 02:04:59,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:04:59
[2026-10-25 02:04:59,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:05:00,141.141 INFO    ] Initializing speech engine...
[2026-10-25 02:05:00,152.152 INFO    ] 2026-10-25 02:05:00
[2026-10-25 02:05:00,469.469 INFO    ] 2026-10-25 02:05:00
[2026-10-25 02:05:00,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:05:00,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:05:00,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:05:00,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:05:00,989.989 INFO    ] time= 25/10/2026 02:05:00
[2026-10-25 02:05:01,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:05:01,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:05:01,145.145 INFO    ] No existing commands found in stream
[2026-10-25 02:05:06,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:05:06,161.161 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 02:05:09,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:05:09,983.983 INFO    ] Checking for system updates...
[2026-10-25 02:05:10,019.019 INFO    ] 200
[2026-10-25 02:05:10,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:10,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:10,080.080 INFO    ] No update needed
[2026-10-25 02:05:10,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 02:05:10,121.121 INFO    ] 200
[2026-10-25 02:05:10,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:10,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:05:10,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:10,220.220 INFO    ] No camera update needed
[2026-10-25 02:05:10,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:05:10,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:05:10,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:05:10,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:05:12,277.277 INFO    ] ================================================
[2026-10-25 02:05:12,292.292 INFO    ] Launching Daemon at Sun Oct 25 02:05:12 IST 2026
[2026-10-25 02:05:12,303.303 INFO    ] ================================================
[2026-10-25 02:05:12,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:05:12
[2026-10-25 02:05:13,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:05:13,768.768 INFO    ] Initializing speech engine...
[2026-10-25 02:05:13,776.776 INFO    ] 2026-10-25 02:05:13
[2026-10-25 02:05:14,034.034 INFO    ] 2026-10-25 02:05:14
[2026-10-25 02:05:14,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:05:14,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:05:14,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:05:14,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:05:14,492.492 INFO    ] time= 25/10/2026 02:05:14
[2026-10-25 02:05:14,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:05:14,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:05:14,643.643 INFO    ] No existing commands found in stream
[2026-10-25 02:05:19,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:05:19,657.657 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 02:05:20,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:05:20,738.738 INFO    ] Checking for system updates...
[2026-10-25 02:05:20,778.778 INFO    ] 200
[2026-10-25 02:05:20,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:20,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:20,842.842 INFO    ] No update needed
[2026-10-25 02:05:20,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 02:05:20,882.882 INFO    ] 200
[2026-10-25 02:05:20,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:20,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:05:20,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:20,981.981 INFO    ] No camera update needed
[2026-10-25 02:05:20,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:05:20,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:05:20,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:05:20,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:05:23,037.037 INFO    ] ================================================
[2026-10-25 02:05:23,053.053 INFO    ] Launching Daemon at Sun Oct 25 02:05:23 IST 2026
[2026-10-25 02:05:23,063.063 INFO    ] ================================================
[2026-10-25 02:05:23,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:05:23
[2026-10-25 02:05:24,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:05:24,482.482 INFO    ] Initializing speech engine...
[2026-10-25 02:05:24,493.493 INFO    ] 2026-10-25 02:05:24
[2026-10-25 02:05:24,753.753 INFO    ] 2026-10-25 02:05:24
[2026-10-25 02:05:24,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:05:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:05:25,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:05:25,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:05:25,204.204 INFO    ] time= 25/10/2026 02:05:25
[2026-10-25 02:05:25,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:05:25,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:05:25,376.376 INFO    ] No existing commands found in stream
[2026-10-25 02:05:30,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:05:30,403.403 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 02:05:31,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:05:31,669.669 INFO    ] Checking for system updates...
[2026-10-25 02:05:31,708.708 INFO    ] 200
[2026-10-25 02:05:31,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:31,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:31,775.775 INFO    ] No update needed
[2026-10-25 02:05:31,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 02:05:31,813.813 INFO    ] 200
[2026-10-25 02:05:31,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:31,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:05:32,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:32,012.012 INFO    ] No camera update needed
[2026-10-25 02:05:32,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:05:32,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:05:32,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:05:32,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:05:34,072.072 INFO    ] ================================================
[2026-10-25 02:05:34,087.087 INFO    ] Launching Daemon at Sun Oct 25 02:05:34 IST 2026
[2026-10-25 02:05:34,097.097 INFO    ] ================================================
[2026-10-25 02:05:34,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:05:34
[2026-10-25 02:05:35,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:05:35,597.597 INFO    ] Initializing speech engine...
[2026-10-25 02:05:35,603.603 INFO    ] 2026-10-25 02:05:35
[2026-10-25 02:05:35,895.895 INFO    ] 2026-10-25 02:05:35
[2026-10-25 02:05:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:05:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:05:36,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:05:36,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:05:36,384.384 INFO    ] time= 25/10/2026 02:05:36
[2026-10-25 02:05:36,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:05:36,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:05:36,535.535 INFO    ] No existing commands found in stream
[2026-10-25 02:05:41,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:05:41,547.547 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 02:05:45,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:05:45,556.556 INFO    ] Checking for system updates...
[2026-10-25 02:05:45,592.592 INFO    ] 200
[2026-10-25 02:05:45,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:45,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:45,656.656 INFO    ] No update needed
[2026-10-25 02:05:45,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 02:05:45,693.693 INFO    ] 200
[2026-10-25 02:05:45,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:45,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:05:45,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:45,802.802 INFO    ] No camera update needed
[2026-10-25 02:05:45,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:05:45,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:05:45,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:05:45,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:05:47,864.864 INFO    ] ================================================
[2026-10-25 02:05:47,879.879 INFO    ] Launching Daemon at Sun Oct 25 02:05:47 IST 2026
[2026-10-25 02:05:47,889.889 INFO    ] ================================================
[2026-10-25 02:05:48,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:05:48
[2026-10-25 02:05:49,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:05:49,290.290 INFO    ] Initializing speech engine...
[2026-10-25 02:05:49,296.296 INFO    ] 2026-10-25 02:05:49
[2026-10-25 02:05:49,593.593 INFO    ] 2026-10-25 02:05:49
[2026-10-25 02:05:49,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:05:49,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:05:49,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:05:49,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:05:50,005.005 INFO    ] time= 25/10/2026 02:05:49
[2026-10-25 02:05:50,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:05:50,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:05:50,088.088 INFO    ] No existing commands found in stream
[2026-10-25 02:05:55,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:05:55,104.104 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 02:05:56,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:05:56,684.684 INFO    ] Checking for system updates...
[2026-10-25 02:05:56,723.723 INFO    ] 200
[2026-10-25 02:05:56,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:56,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:56,786.786 INFO    ] No update needed
[2026-10-25 02:05:56,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 02:05:56,825.825 INFO    ] 200
[2026-10-25 02:05:56,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:05:56,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:05:56,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:05:56,922.922 INFO    ] No camera update needed
[2026-10-25 02:05:56,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:05:56,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:05:56,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:05:56,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:05:58,978.978 INFO    ] ================================================
[2026-10-25 02:05:58,993.993 INFO    ] Launching Daemon at Sun Oct 25 02:05:58 IST 2026
[2026-10-25 02:05:59,004.004 INFO    ] ================================================
[2026-10-25 02:05:59,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:05:59
[2026-10-25 02:06:00,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:00,454.454 INFO    ] Initializing speech engine...
[2026-10-25 02:06:00,461.461 INFO    ] 2026-10-25 02:06:00
[2026-10-25 02:06:00,723.723 INFO    ] 2026-10-25 02:06:00
[2026-10-25 02:06:00,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:01,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:01,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:01,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:01,178.178 INFO    ] time= 25/10/2026 02:06:01
[2026-10-25 02:06:01,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:01,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:01,337.337 INFO    ] No existing commands found in stream
[2026-10-25 02:06:06,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:06:06,352.352 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 02:06:10,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:06:10,322.322 INFO    ] Checking for system updates...
[2026-10-25 02:06:10,358.358 INFO    ] 200
[2026-10-25 02:06:10,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:10,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:10,417.417 INFO    ] No update needed
[2026-10-25 02:06:10,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 02:06:10,454.454 INFO    ] 200
[2026-10-25 02:06:10,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:10,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:06:10,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:10,557.557 INFO    ] No camera update needed
[2026-10-25 02:06:10,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:06:10,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:06:10,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:06:10,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:06:12,616.616 INFO    ] ================================================
[2026-10-25 02:06:12,631.631 INFO    ] Launching Daemon at Sun Oct 25 02:06:12 IST 2026
[2026-10-25 02:06:12,642.642 INFO    ] ================================================
[2026-10-25 02:06:13,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:06:13
[2026-10-25 02:06:13,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:14,070.070 INFO    ] Initializing speech engine...
[2026-10-25 02:06:14,078.078 INFO    ] 2026-10-25 02:06:14
[2026-10-25 02:06:14,349.349 INFO    ] 2026-10-25 02:06:14
[2026-10-25 02:06:14,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:14,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:14,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:14,794.794 INFO    ] time= 25/10/2026 02:06:14
[2026-10-25 02:06:14,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:14,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:14,987.987 INFO    ] No existing commands found in stream
[2026-10-25 02:06:20,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:06:20,016.016 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 02:06:21,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:06:21,928.928 INFO    ] Checking for system updates...
[2026-10-25 02:06:21,964.964 INFO    ] 200
[2026-10-25 02:06:21,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:22,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:22,027.027 INFO    ] No update needed
[2026-10-25 02:06:22,030.030 INFO    ] Checking for camera pi updates...
[2026-10-25 02:06:22,067.067 INFO    ] 200
[2026-10-25 02:06:22,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:22,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:06:22,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:22,164.164 INFO    ] No camera update needed
[2026-10-25 02:06:22,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:06:22,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:06:22,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:06:22,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:06:24,220.220 INFO    ] ================================================
[2026-10-25 02:06:24,242.242 INFO    ] Launching Daemon at Sun Oct 25 02:06:24 IST 2026
[2026-10-25 02:06:24,252.252 INFO    ] ================================================
[2026-10-25 02:06:24,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:06:24
[2026-10-25 02:06:25,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:25,664.664 INFO    ] Initializing speech engine...
[2026-10-25 02:06:25,671.671 INFO    ] 2026-10-25 02:06:25
[2026-10-25 02:06:25,961.961 INFO    ] 2026-10-25 02:06:25
[2026-10-25 02:06:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:26,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:26,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:26,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:26,374.374 INFO    ] time= 25/10/2026 02:06:26
[2026-10-25 02:06:26,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:26,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:26,563.563 INFO    ] No existing commands found in stream
[2026-10-25 02:06:31,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:06:31,597.597 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 02:06:33,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:06:33,823.823 INFO    ] Checking for system updates...
[2026-10-25 02:06:33,864.864 INFO    ] 200
[2026-10-25 02:06:33,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:33,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:06:33,922.922 INFO    ] No update needed
[2026-10-25 02:06:33,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 02:06:33,960.960 INFO    ] 200
[2026-10-25 02:06:33,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:34,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:06:34,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:06:34,054.054 INFO    ] No camera update needed
[2026-10-25 02:06:34,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:06:34,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:06:34,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:06:34,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:06:36,122.122 INFO    ] ================================================
[2026-10-25 02:06:36,137.137 INFO    ] Launching Daemon at Sun Oct 25 02:06:36 IST 2026
[2026-10-25 02:06:36,148.148 INFO    ] ================================================
[2026-10-25 02:06:36,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:06:36
[2026-10-25 02:06:37,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:37,579.579 INFO    ] Initializing speech engine...
[2026-10-25 02:06:37,602.602 INFO    ] 2026-10-25 02:06:37
[2026-10-25 02:06:37,856.856 INFO    ] 2026-10-25 02:06:37
[2026-10-25 02:06:37,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:38,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:38,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:38,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:38,303.303 INFO    ] time= 25/10/2026 02:06:38
[2026-10-25 02:06:38,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:38,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:38,501.501 INFO    ] No existing commands found in stream
[2026-10-25 02:06:43,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:06:43,515.515 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 02:06:44,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:06:44,079.079 INFO    ] Checking for system updates...
[2026-10-25 02:06:44,116.116 INFO    ] 200
[2026-10-25 02:06:44,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:44,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:44,174.174 INFO    ] No update needed
[2026-10-25 02:06:44,177.177 INFO    ] Checking for camera pi updates...
[2026-10-25 02:06:44,211.211 INFO    ] 200
[2026-10-25 02:06:44,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:44,254.254 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:06:44,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:44,306.306 INFO    ] No camera update needed
[2026-10-25 02:06:44,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:06:44,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:06:44,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:06:44,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:06:46,361.361 INFO    ] ================================================
[2026-10-25 02:06:46,376.376 INFO    ] Launching Daemon at Sun Oct 25 02:06:46 IST 2026
[2026-10-25 02:06:46,387.387 INFO    ] ================================================
[2026-10-25 02:06:46,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:06:46
[2026-10-25 02:06:47,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:47,838.838 INFO    ] Initializing speech engine...
[2026-10-25 02:06:47,845.845 INFO    ] 2026-10-25 02:06:47
[2026-10-25 02:06:48,106.106 INFO    ] 2026-10-25 02:06:48
[2026-10-25 02:06:48,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:48,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:48,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:48,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:48,571.571 INFO    ] time= 25/10/2026 02:06:48
[2026-10-25 02:06:48,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:48,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:48,741.741 INFO    ] No existing commands found in stream
[2026-10-25 02:06:53,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:06:53,780.780 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 02:06:54,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:06:54,259.259 INFO    ] Checking for system updates...
[2026-10-25 02:06:54,296.296 INFO    ] 200
[2026-10-25 02:06:54,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:54,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:54,354.354 INFO    ] No update needed
[2026-10-25 02:06:54,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 02:06:54,394.394 INFO    ] 200
[2026-10-25 02:06:54,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:06:54,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:06:54,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:06:54,492.492 INFO    ] No camera update needed
[2026-10-25 02:06:54,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:06:54,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:06:54,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:06:54,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:06:56,549.549 INFO    ] ================================================
[2026-10-25 02:06:56,564.564 INFO    ] Launching Daemon at Sun Oct 25 02:06:56 IST 2026
[2026-10-25 02:06:56,575.575 INFO    ] ================================================
[2026-10-25 02:06:57,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:06:57
[2026-10-25 02:06:57,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:06:57,975.975 INFO    ] Initializing speech engine...
[2026-10-25 02:06:57,998.998 INFO    ] 2026-10-25 02:06:57
[2026-10-25 02:06:58,253.253 INFO    ] 2026-10-25 02:06:58
[2026-10-25 02:06:58,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:06:58,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:06:58,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:06:58,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:06:58,739.739 INFO    ] time= 25/10/2026 02:06:58
[2026-10-25 02:06:58,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:06:58,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:06:58,888.888 INFO    ] No existing commands found in stream
[2026-10-25 02:07:03,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:07:03,911.911 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 02:07:06,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:07:06,007.007 INFO    ] Checking for system updates...
[2026-10-25 02:07:06,042.042 INFO    ] 200
[2026-10-25 02:07:06,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:06,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:07:06,099.099 INFO    ] No update needed
[2026-10-25 02:07:06,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 02:07:06,139.139 INFO    ] 200
[2026-10-25 02:07:06,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:06,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:07:06,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:07:06,234.234 INFO    ] No camera update needed
[2026-10-25 02:07:06,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:07:06,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:07:06,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:07:06,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:07:08,290.290 INFO    ] ================================================
[2026-10-25 02:07:08,305.305 INFO    ] Launching Daemon at Sun Oct 25 02:07:08 IST 2026
[2026-10-25 02:07:08,316.316 INFO    ] ================================================
[2026-10-25 02:07:08,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:07:08
[2026-10-25 02:07:09,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:07:09,773.773 INFO    ] Initializing speech engine...
[2026-10-25 02:07:09,779.779 INFO    ] 2026-10-25 02:07:09
[2026-10-25 02:07:10,041.041 INFO    ] 2026-10-25 02:07:10
[2026-10-25 02:07:10,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:07:10,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:07:10,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:07:10,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:07:10,503.503 INFO    ] time= 25/10/2026 02:07:10
[2026-10-25 02:07:10,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:07:10,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:07:10,646.646 INFO    ] No existing commands found in stream
[2026-10-25 02:07:15,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:07:15,661.661 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 02:07:17,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:07:17,664.664 INFO    ] Checking for system updates...
[2026-10-25 02:07:17,700.700 INFO    ] 200
[2026-10-25 02:07:17,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:17,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:17,758.758 INFO    ] No update needed
[2026-10-25 02:07:17,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 02:07:17,794.794 INFO    ] 200
[2026-10-25 02:07:17,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:17,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:07:17,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:17,891.891 INFO    ] No camera update needed
[2026-10-25 02:07:17,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:07:17,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:07:17,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:07:17,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:07:19,948.948 INFO    ] ================================================
[2026-10-25 02:07:19,963.963 INFO    ] Launching Daemon at Sun Oct 25 02:07:19 IST 2026
[2026-10-25 02:07:19,974.974 INFO    ] ================================================
[2026-10-25 02:07:20,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:07:20
[2026-10-25 02:07:21,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:07:21,415.415 INFO    ] Initializing speech engine...
[2026-10-25 02:07:21,431.431 INFO    ] 2026-10-25 02:07:21
[2026-10-25 02:07:21,688.688 INFO    ] 2026-10-25 02:07:21
[2026-10-25 02:07:21,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:07:21,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:07:21,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:07:22,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:07:22,058.058 INFO    ] time= 25/10/2026 02:07:22
[2026-10-25 02:07:22,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:07:22,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:07:22,234.234 INFO    ] No existing commands found in stream
[2026-10-25 02:07:27,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:07:27,262.262 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 02:07:30,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:07:30,016.016 INFO    ] Checking for system updates...
[2026-10-25 02:07:30,056.056 INFO    ] 200
[2026-10-25 02:07:30,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:30,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:07:30,120.120 INFO    ] No update needed
[2026-10-25 02:07:30,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 02:07:30,157.157 INFO    ] 200
[2026-10-25 02:07:30,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:30,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:07:30,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:07:30,258.258 INFO    ] No camera update needed
[2026-10-25 02:07:30,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:07:30,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:07:30,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:07:30,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:07:32,315.315 INFO    ] ================================================
[2026-10-25 02:07:32,331.331 INFO    ] Launching Daemon at Sun Oct 25 02:07:32 IST 2026
[2026-10-25 02:07:32,342.342 INFO    ] ================================================
[2026-10-25 02:07:32,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:07:32
[2026-10-25 02:07:33,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:07:33,810.810 INFO    ] Initializing speech engine...
[2026-10-25 02:07:33,836.836 INFO    ] 2026-10-25 02:07:33
[2026-10-25 02:07:34,112.112 INFO    ] 2026-10-25 02:07:34
[2026-10-25 02:07:34,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:07:34,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:07:34,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:07:34,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:07:34,533.533 INFO    ] time= 25/10/2026 02:07:34
[2026-10-25 02:07:34,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:07:34,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:07:34,617.617 INFO    ] No existing commands found in stream
[2026-10-25 02:07:39,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:07:39,633.633 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 02:07:41,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:07:41,576.576 INFO    ] Checking for system updates...
[2026-10-25 02:07:41,617.617 INFO    ] 200
[2026-10-25 02:07:41,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:41,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:41,678.678 INFO    ] No update needed
[2026-10-25 02:07:41,681.681 INFO    ] Checking for camera pi updates...
[2026-10-25 02:07:41,715.715 INFO    ] 200
[2026-10-25 02:07:41,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:41,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:07:41,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:41,932.932 INFO    ] No camera update needed
[2026-10-25 02:07:41,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:07:41,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:07:41,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:07:41,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:07:43,988.988 INFO    ] ================================================
[2026-10-25 02:07:44,004.004 INFO    ] Launching Daemon at Sun Oct 25 02:07:43 IST 2026
[2026-10-25 02:07:44,014.014 INFO    ] ================================================
[2026-10-25 02:07:44,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:07:44
[2026-10-25 02:07:45,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:07:45,456.456 INFO    ] Initializing speech engine...
[2026-10-25 02:07:45,465.465 INFO    ] 2026-10-25 02:07:45
[2026-10-25 02:07:45,762.762 INFO    ] 2026-10-25 02:07:45
[2026-10-25 02:07:45,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:07:45,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:07:46,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:07:46,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:07:46,182.182 INFO    ] time= 25/10/2026 02:07:46
[2026-10-25 02:07:46,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:07:46,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:07:46,377.377 INFO    ] No existing commands found in stream
[2026-10-25 02:07:51,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:07:51,410.410 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 02:07:55,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:07:55,039.039 INFO    ] Checking for system updates...
[2026-10-25 02:07:55,075.075 INFO    ] 200
[2026-10-25 02:07:55,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:55,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:55,139.139 INFO    ] No update needed
[2026-10-25 02:07:55,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 02:07:55,176.176 INFO    ] 200
[2026-10-25 02:07:55,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:07:55,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:07:55,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:07:55,271.271 INFO    ] No camera update needed
[2026-10-25 02:07:55,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:07:55,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:07:55,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:07:55,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:07:57,326.326 INFO    ] ================================================
[2026-10-25 02:07:57,342.342 INFO    ] Launching Daemon at Sun Oct 25 02:07:57 IST 2026
[2026-10-25 02:07:57,352.352 INFO    ] ================================================
[2026-10-25 02:07:57,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:07:57
[2026-10-25 02:07:58,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:07:58,783.783 INFO    ] Initializing speech engine...
[2026-10-25 02:07:58,793.793 INFO    ] 2026-10-25 02:07:58
[2026-10-25 02:07:59,042.042 INFO    ] 2026-10-25 02:07:59
[2026-10-25 02:07:59,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:07:59,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:07:59,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:07:59,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:07:59,501.501 INFO    ] time= 25/10/2026 02:07:59
[2026-10-25 02:07:59,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:07:59,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:07:59,705.705 INFO    ] No existing commands found in stream
[2026-10-25 02:08:04,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:08:04,739.739 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 02:08:08,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:08:08,787.787 INFO    ] Checking for system updates...
[2026-10-25 02:08:08,827.827 INFO    ] 200
[2026-10-25 02:08:08,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:08,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:08,892.892 INFO    ] No update needed
[2026-10-25 02:08:08,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 02:08:08,931.931 INFO    ] 200
[2026-10-25 02:08:08,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:08,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:08:09,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:09,028.028 INFO    ] No camera update needed
[2026-10-25 02:08:09,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:08:09,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:08:09,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:08:09,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:08:11,084.084 INFO    ] ================================================
[2026-10-25 02:08:11,099.099 INFO    ] Launching Daemon at Sun Oct 25 02:08:11 IST 2026
[2026-10-25 02:08:11,110.110 INFO    ] ================================================
[2026-10-25 02:08:11,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:08:11
[2026-10-25 02:08:12,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:08:12,556.556 INFO    ] Initializing speech engine...
[2026-10-25 02:08:12,563.563 INFO    ] 2026-10-25 02:08:12
[2026-10-25 02:08:12,820.820 INFO    ] 2026-10-25 02:08:12
[2026-10-25 02:08:12,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:08:13,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:08:13,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:08:13,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:08:13,302.302 INFO    ] time= 25/10/2026 02:08:13
[2026-10-25 02:08:13,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:08:13,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:08:13,483.483 INFO    ] No existing commands found in stream
[2026-10-25 02:08:18,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:08:18,516.516 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 02:08:20,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:08:20,579.579 INFO    ] Checking for system updates...
[2026-10-25 02:08:20,615.615 INFO    ] 200
[2026-10-25 02:08:20,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:20,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:20,673.673 INFO    ] No update needed
[2026-10-25 02:08:20,675.675 INFO    ] Checking for camera pi updates...
[2026-10-25 02:08:20,709.709 INFO    ] 200
[2026-10-25 02:08:20,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:20,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:08:20,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:20,816.816 INFO    ] No camera update needed
[2026-10-25 02:08:20,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:08:20,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:08:20,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:08:20,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:08:22,872.872 INFO    ] ================================================
[2026-10-25 02:08:22,887.887 INFO    ] Launching Daemon at Sun Oct 25 02:08:22 IST 2026
[2026-10-25 02:08:22,897.897 INFO    ] ================================================
[2026-10-25 02:08:23,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:08:23
[2026-10-25 02:08:24,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:08:24,349.349 INFO    ] Initializing speech engine...
[2026-10-25 02:08:24,358.358 INFO    ] 2026-10-25 02:08:24
[2026-10-25 02:08:24,619.619 INFO    ] 2026-10-25 02:08:24
[2026-10-25 02:08:24,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:08:24,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:08:24,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:08:25,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:08:25,159.159 INFO    ] time= 25/10/2026 02:08:25
[2026-10-25 02:08:25,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:08:25,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:08:25,294.294 INFO    ] No existing commands found in stream
[2026-10-25 02:08:30,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:08:30,323.323 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 02:08:31,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:08:31,597.597 INFO    ] Checking for system updates...
[2026-10-25 02:08:31,637.637 INFO    ] 200
[2026-10-25 02:08:31,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:31,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:31,714.714 INFO    ] No update needed
[2026-10-25 02:08:31,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 02:08:31,766.766 INFO    ] 200
[2026-10-25 02:08:31,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:31,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:08:31,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:08:31,858.858 INFO    ] No camera update needed
[2026-10-25 02:08:31,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:08:31,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:08:31,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:08:31,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:08:33,917.917 INFO    ] ================================================
[2026-10-25 02:08:33,933.933 INFO    ] Launching Daemon at Sun Oct 25 02:08:33 IST 2026
[2026-10-25 02:08:33,943.943 INFO    ] ================================================
[2026-10-25 02:08:34,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:08:34
[2026-10-25 02:08:35,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:08:35,337.337 INFO    ] Initializing speech engine...
[2026-10-25 02:08:35,344.344 INFO    ] 2026-10-25 02:08:35
[2026-10-25 02:08:35,618.618 INFO    ] 2026-10-25 02:08:35
[2026-10-25 02:08:35,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:08:35,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:08:35,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:08:36,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:08:36,091.091 INFO    ] time= 25/10/2026 02:08:36
[2026-10-25 02:08:36,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:08:36,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:08:36,252.252 INFO    ] No existing commands found in stream
[2026-10-25 02:08:41,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:08:41,274.274 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 02:08:44,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:08:44,769.769 INFO    ] Checking for system updates...
[2026-10-25 02:08:44,804.804 INFO    ] 200
[2026-10-25 02:08:44,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:44,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:08:44,868.868 INFO    ] No update needed
[2026-10-25 02:08:44,870.870 INFO    ] Checking for camera pi updates...
[2026-10-25 02:08:44,904.904 INFO    ] 200
[2026-10-25 02:08:44,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:44,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:08:44,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:08:44,999.999 INFO    ] No camera update needed
[2026-10-25 02:08:45,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:08:45,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:08:45,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:08:45,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:08:47,056.056 INFO    ] ================================================
[2026-10-25 02:08:47,071.071 INFO    ] Launching Daemon at Sun Oct 25 02:08:47 IST 2026
[2026-10-25 02:08:47,082.082 INFO    ] ================================================
[2026-10-25 02:08:47,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:08:47
[2026-10-25 02:08:48,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:08:48,481.481 INFO    ] Initializing speech engine...
[2026-10-25 02:08:48,495.495 INFO    ] 2026-10-25 02:08:48
[2026-10-25 02:08:48,762.762 INFO    ] 2026-10-25 02:08:48
[2026-10-25 02:08:48,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:08:48,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:08:49,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:08:49,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:08:49,228.228 INFO    ] time= 25/10/2026 02:08:49
[2026-10-25 02:08:49,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:08:49,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:08:49,447.447 INFO    ] No existing commands found in stream
[2026-10-25 02:08:54,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:08:54,480.480 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 02:08:55,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:08:55,789.789 INFO    ] Checking for system updates...
[2026-10-25 02:08:55,826.826 INFO    ] 200
[2026-10-25 02:08:55,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:55,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:08:55,892.892 INFO    ] No update needed
[2026-10-25 02:08:55,895.895 INFO    ] Checking for camera pi updates...
[2026-10-25 02:08:55,933.933 INFO    ] 200
[2026-10-25 02:08:55,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:08:55,982.982 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:08:56,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:08:56,038.038 INFO    ] No camera update needed
[2026-10-25 02:08:56,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:08:56,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:08:56,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:08:56,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:08:58,097.097 INFO    ] ================================================
[2026-10-25 02:08:58,112.112 INFO    ] Launching Daemon at Sun Oct 25 02:08:58 IST 2026
[2026-10-25 02:08:58,123.123 INFO    ] ================================================
[2026-10-25 02:08:58,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:08:58
[2026-10-25 02:08:59,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:08:59,529.529 INFO    ] Initializing speech engine...
[2026-10-25 02:08:59,547.547 INFO    ] 2026-10-25 02:08:59
[2026-10-25 02:08:59,798.798 INFO    ] 2026-10-25 02:08:59
[2026-10-25 02:08:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:09:00,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:09:00,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:09:00,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:09:00,241.241 INFO    ] time= 25/10/2026 02:09:00
[2026-10-25 02:09:00,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:09:00,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:09:00,423.423 INFO    ] No existing commands found in stream
[2026-10-25 02:09:05,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:09:05,437.437 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 02:09:07,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:09:07,200.200 INFO    ] Checking for system updates...
[2026-10-25 02:09:07,239.239 INFO    ] 200
[2026-10-25 02:09:07,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:07,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:07,301.301 INFO    ] No update needed
[2026-10-25 02:09:07,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 02:09:07,337.337 INFO    ] 200
[2026-10-25 02:09:07,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:07,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:09:07,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:07,435.435 INFO    ] No camera update needed
[2026-10-25 02:09:07,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:09:07,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:09:07,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:09:07,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:09:09,491.491 INFO    ] ================================================
[2026-10-25 02:09:09,505.505 INFO    ] Launching Daemon at Sun Oct 25 02:09:09 IST 2026
[2026-10-25 02:09:09,516.516 INFO    ] ================================================
[2026-10-25 02:09:10,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:09:10
[2026-10-25 02:09:10,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:09:11,083.083 INFO    ] Initializing speech engine...
[2026-10-25 02:09:11,092.092 INFO    ] 2026-10-25 02:09:11
[2026-10-25 02:09:11,359.359 INFO    ] 2026-10-25 02:09:11
[2026-10-25 02:09:11,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:09:11,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:09:11,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:09:11,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:09:11,852.852 INFO    ] time= 25/10/2026 02:09:11
[2026-10-25 02:09:11,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:09:11,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:09:12,041.041 INFO    ] No existing commands found in stream
[2026-10-25 02:09:17,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:09:17,075.075 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 02:09:19,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:09:19,325.325 INFO    ] Checking for system updates...
[2026-10-25 02:09:19,364.364 INFO    ] 200
[2026-10-25 02:09:19,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:19,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:19,421.421 INFO    ] No update needed
[2026-10-25 02:09:19,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 02:09:19,458.458 INFO    ] 200
[2026-10-25 02:09:19,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:19,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:09:19,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:19,556.556 INFO    ] No camera update needed
[2026-10-25 02:09:19,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:09:19,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:09:19,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:09:19,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:09:21,612.612 INFO    ] ================================================
[2026-10-25 02:09:21,627.627 INFO    ] Launching Daemon at Sun Oct 25 02:09:21 IST 2026
[2026-10-25 02:09:21,637.637 INFO    ] ================================================
[2026-10-25 02:09:22,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:09:22
[2026-10-25 02:09:22,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:09:23,048.048 INFO    ] Initializing speech engine...
[2026-10-25 02:09:23,064.064 INFO    ] 2026-10-25 02:09:23
[2026-10-25 02:09:23,341.341 INFO    ] 2026-10-25 02:09:23
[2026-10-25 02:09:23,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:09:23,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:09:23,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:09:23,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:09:23,750.750 INFO    ] time= 25/10/2026 02:09:23
[2026-10-25 02:09:23,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:09:23,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:09:23,935.935 INFO    ] No existing commands found in stream
[2026-10-25 02:09:28,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:09:28,968.968 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 02:09:31,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:09:31,509.509 INFO    ] Checking for system updates...
[2026-10-25 02:09:31,545.545 INFO    ] 200
[2026-10-25 02:09:31,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:31,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:31,608.608 INFO    ] No update needed
[2026-10-25 02:09:31,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 02:09:31,643.643 INFO    ] 200
[2026-10-25 02:09:31,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:31,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:09:31,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:09:31,728.728 INFO    ] No camera update needed
[2026-10-25 02:09:31,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:09:31,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:09:31,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:09:31,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:09:33,784.784 INFO    ] ================================================
[2026-10-25 02:09:33,799.799 INFO    ] Launching Daemon at Sun Oct 25 02:09:33 IST 2026
[2026-10-25 02:09:33,810.810 INFO    ] ================================================
[2026-10-25 02:09:34,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:09:34
[2026-10-25 02:09:34,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:09:35,230.230 INFO    ] Initializing speech engine...
[2026-10-25 02:09:35,239.239 INFO    ] 2026-10-25 02:09:35
[2026-10-25 02:09:35,489.489 INFO    ] 2026-10-25 02:09:35
[2026-10-25 02:09:35,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:09:35,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:09:35,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:09:35,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:09:35,862.862 INFO    ] time= 25/10/2026 02:09:35
[2026-10-25 02:09:35,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:09:35,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:09:36,039.039 INFO    ] No existing commands found in stream
[2026-10-25 02:09:41,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:09:41,067.067 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 02:09:44,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:09:44,832.832 INFO    ] Checking for system updates...
[2026-10-25 02:09:44,871.871 INFO    ] 200
[2026-10-25 02:09:44,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:44,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:09:44,933.933 INFO    ] No update needed
[2026-10-25 02:09:44,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 02:09:44,972.972 INFO    ] 200
[2026-10-25 02:09:44,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:45,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:09:45,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:09:45,181.181 INFO    ] No camera update needed
[2026-10-25 02:09:45,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:09:45,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:09:45,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:09:45,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:09:47,237.237 INFO    ] ================================================
[2026-10-25 02:09:47,252.252 INFO    ] Launching Daemon at Sun Oct 25 02:09:47 IST 2026
[2026-10-25 02:09:47,263.263 INFO    ] ================================================
[2026-10-25 02:09:47,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:09:47
[2026-10-25 02:09:48,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:09:48,873.873 INFO    ] Initializing speech engine...
[2026-10-25 02:09:48,882.882 INFO    ] 2026-10-25 02:09:48
[2026-10-25 02:09:49,151.151 INFO    ] 2026-10-25 02:09:49
[2026-10-25 02:09:49,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:09:49,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:09:49,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:09:49,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:09:49,621.621 INFO    ] time= 25/10/2026 02:09:49
[2026-10-25 02:09:49,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:09:49,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:09:49,815.815 INFO    ] No existing commands found in stream
[2026-10-25 02:09:54,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:09:54,830.830 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 02:09:58,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:09:58,751.751 INFO    ] Checking for system updates...
[2026-10-25 02:09:58,787.787 INFO    ] 200
[2026-10-25 02:09:58,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:58,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:09:58,851.851 INFO    ] No update needed
[2026-10-25 02:09:58,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 02:09:58,887.887 INFO    ] 200
[2026-10-25 02:09:58,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:09:58,930.930 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:09:58,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:09:58,983.983 INFO    ] No camera update needed
[2026-10-25 02:09:58,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:09:58,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:09:58,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:09:58,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:10:01,038.038 INFO    ] ================================================
[2026-10-25 02:10:01,065.065 INFO    ] Launching Daemon at Sun Oct 25 02:10:01 IST 2026
[2026-10-25 02:10:01,080.080 INFO    ] ================================================
[2026-10-25 02:10:01,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:10:01
[2026-10-25 02:10:02,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:10:03,214.214 INFO    ] Initializing speech engine...
[2026-10-25 02:10:03,217.217 INFO    ] 2026-10-25 02:10:03
[2026-10-25 02:10:03,546.546 INFO    ] 2026-10-25 02:10:03
[2026-10-25 02:10:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:10:03,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:10:03,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:10:03,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:10:03,959.959 INFO    ] time= 25/10/2026 02:10:03
[2026-10-25 02:10:03,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:10:04,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:10:04,143.143 INFO    ] No existing commands found in stream
[2026-10-25 02:10:09,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:10:09,173.173 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 02:10:10,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:10:10,647.647 INFO    ] Checking for system updates...
[2026-10-25 02:10:10,688.688 INFO    ] 200
[2026-10-25 02:10:10,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:10,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:10:10,754.754 INFO    ] No update needed
[2026-10-25 02:10:10,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 02:10:10,795.795 INFO    ] 200
[2026-10-25 02:10:10,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:10,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:10:10,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:10:10,886.886 INFO    ] No camera update needed
[2026-10-25 02:10:10,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:10:10,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:10:10,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:10:10,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:10:12,943.943 INFO    ] ================================================
[2026-10-25 02:10:12,958.958 INFO    ] Launching Daemon at Sun Oct 25 02:10:12 IST 2026
[2026-10-25 02:10:12,969.969 INFO    ] ================================================
[2026-10-25 02:10:13,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:10:13
[2026-10-25 02:10:14,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:10:14,419.419 INFO    ] Initializing speech engine...
[2026-10-25 02:10:14,429.429 INFO    ] 2026-10-25 02:10:14
[2026-10-25 02:10:14,692.692 INFO    ] 2026-10-25 02:10:14
[2026-10-25 02:10:14,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:10:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:10:14,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:10:15,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:10:15,066.066 INFO    ] time= 25/10/2026 02:10:15
[2026-10-25 02:10:15,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:10:15,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:10:15,189.189 INFO    ] No existing commands found in stream
[2026-10-25 02:10:20,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:10:20,205.205 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 02:10:21,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:10:21,822.822 INFO    ] Checking for system updates...
[2026-10-25 02:10:21,857.857 INFO    ] 200
[2026-10-25 02:10:21,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:21,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:10:21,921.921 INFO    ] No update needed
[2026-10-25 02:10:21,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 02:10:21,957.957 INFO    ] 200
[2026-10-25 02:10:21,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:22,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:10:22,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:10:22,059.059 INFO    ] No camera update needed
[2026-10-25 02:10:22,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:10:22,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:10:22,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:10:22,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:10:24,113.113 INFO    ] ================================================
[2026-10-25 02:10:24,128.128 INFO    ] Launching Daemon at Sun Oct 25 02:10:24 IST 2026
[2026-10-25 02:10:24,139.139 INFO    ] ================================================
[2026-10-25 02:10:24,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:10:24
[2026-10-25 02:10:25,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:10:25,545.545 INFO    ] Initializing speech engine...
[2026-10-25 02:10:25,551.551 INFO    ] 2026-10-25 02:10:25
[2026-10-25 02:10:25,839.839 INFO    ] 2026-10-25 02:10:25
[2026-10-25 02:10:25,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:10:26,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:10:26,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:10:26,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:10:26,251.251 INFO    ] time= 25/10/2026 02:10:26
[2026-10-25 02:10:26,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:10:26,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:10:26,400.400 INFO    ] No existing commands found in stream
[2026-10-25 02:10:31,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:10:31,427.427 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 02:10:34,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:10:34,296.296 INFO    ] Checking for system updates...
[2026-10-25 02:10:34,332.332 INFO    ] 200
[2026-10-25 02:10:34,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:34,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:10:34,389.389 INFO    ] No update needed
[2026-10-25 02:10:34,392.392 INFO    ] Checking for camera pi updates...
[2026-10-25 02:10:34,426.426 INFO    ] 200
[2026-10-25 02:10:34,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:34,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:10:34,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:10:34,531.531 INFO    ] No camera update needed
[2026-10-25 02:10:34,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:10:34,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:10:34,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:10:34,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:10:36,586.586 INFO    ] ================================================
[2026-10-25 02:10:36,601.601 INFO    ] Launching Daemon at Sun Oct 25 02:10:36 IST 2026
[2026-10-25 02:10:36,612.612 INFO    ] ================================================
[2026-10-25 02:10:37,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:10:37
[2026-10-25 02:10:37,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:10:38,046.046 INFO    ] Initializing speech engine...
[2026-10-25 02:10:38,059.059 INFO    ] 2026-10-25 02:10:38
[2026-10-25 02:10:38,344.344 INFO    ] 2026-10-25 02:10:38
[2026-10-25 02:10:38,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:10:38,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:10:38,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:10:38,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:10:38,758.758 INFO    ] time= 25/10/2026 02:10:38
[2026-10-25 02:10:38,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:10:38,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:10:38,842.842 INFO    ] No existing commands found in stream
[2026-10-25 02:10:43,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:10:43,858.858 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 02:10:47,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:10:47,107.107 INFO    ] Checking for system updates...
[2026-10-25 02:10:47,143.143 INFO    ] 200
[2026-10-25 02:10:47,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:47,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:10:47,201.201 INFO    ] No update needed
[2026-10-25 02:10:47,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 02:10:47,244.244 INFO    ] 200
[2026-10-25 02:10:47,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:10:47,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:10:47,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:10:47,340.340 INFO    ] No camera update needed
[2026-10-25 02:10:47,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:10:47,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:10:47,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:10:47,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:10:49,395.395 INFO    ] ================================================
[2026-10-25 02:10:49,410.410 INFO    ] Launching Daemon at Sun Oct 25 02:10:49 IST 2026
[2026-10-25 02:10:49,421.421 INFO    ] ================================================
[2026-10-25 02:10:50,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:10:49
[2026-10-25 02:10:50,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:10:50,846.846 INFO    ] Initializing speech engine...
[2026-10-25 02:10:50,860.860 INFO    ] 2026-10-25 02:10:50
[2026-10-25 02:10:51,148.148 INFO    ] 2026-10-25 02:10:51
[2026-10-25 02:10:51,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:10:51,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:10:51,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:10:51,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:10:51,524.524 INFO    ] time= 25/10/2026 02:10:51
[2026-10-25 02:10:51,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:10:51,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:10:51,648.648 INFO    ] No existing commands found in stream
[2026-10-25 02:10:56,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:10:56,663.663 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 02:11:00,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:11:00,966.966 INFO    ] Checking for system updates...
[2026-10-25 02:11:01,006.006 INFO    ] 200
[2026-10-25 02:11:01,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:01,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:01,063.063 INFO    ] No update needed
[2026-10-25 02:11:01,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 02:11:01,103.103 INFO    ] 200
[2026-10-25 02:11:01,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:01,146.146 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:11:01,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:01,209.209 INFO    ] No camera update needed
[2026-10-25 02:11:01,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:11:01,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:11:01,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:11:01,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:11:03,267.267 INFO    ] ================================================
[2026-10-25 02:11:03,288.288 INFO    ] Launching Daemon at Sun Oct 25 02:11:03 IST 2026
[2026-10-25 02:11:03,300.300 INFO    ] ================================================
[2026-10-25 02:11:03,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:11:03
[2026-10-25 02:11:04,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:11:04,955.955 INFO    ] Initializing speech engine...
[2026-10-25 02:11:04,967.967 INFO    ] 2026-10-25 02:11:04
[2026-10-25 02:11:05,253.253 INFO    ] 2026-10-25 02:11:05
[2026-10-25 02:11:05,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:11:05,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:11:05,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:11:05,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:11:05,751.751 INFO    ] time= 25/10/2026 02:11:05
[2026-10-25 02:11:05,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:11:05,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:11:05,942.942 INFO    ] No existing commands found in stream
[2026-10-25 02:11:10,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:11:10,971.971 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 02:11:13,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:11:13,584.584 INFO    ] Checking for system updates...
[2026-10-25 02:11:13,622.622 INFO    ] 200
[2026-10-25 02:11:13,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:13,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:13,682.682 INFO    ] No update needed
[2026-10-25 02:11:13,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 02:11:13,720.720 INFO    ] 200
[2026-10-25 02:11:13,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:13,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:11:13,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:13,820.820 INFO    ] No camera update needed
[2026-10-25 02:11:13,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:11:13,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:11:13,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:11:13,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:11:15,881.881 INFO    ] ================================================
[2026-10-25 02:11:15,896.896 INFO    ] Launching Daemon at Sun Oct 25 02:11:15 IST 2026
[2026-10-25 02:11:15,907.907 INFO    ] ================================================
[2026-10-25 02:11:16,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:11:16
[2026-10-25 02:11:17,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:11:17,587.587 INFO    ] Initializing speech engine...
[2026-10-25 02:11:17,601.601 INFO    ] 2026-10-25 02:11:17
[2026-10-25 02:11:17,917.917 INFO    ] 2026-10-25 02:11:17
[2026-10-25 02:11:18,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:11:18,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:11:18,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:11:18,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:11:18,441.441 INFO    ] time= 25/10/2026 02:11:18
[2026-10-25 02:11:18,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:11:18,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:11:18,605.605 INFO    ] No existing commands found in stream
[2026-10-25 02:11:23,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:11:23,637.637 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 02:11:29,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:11:29,664.664 INFO    ] Checking for system updates...
[2026-10-25 02:11:29,703.703 INFO    ] 200
[2026-10-25 02:11:29,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:29,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:11:29,778.778 INFO    ] No update needed
[2026-10-25 02:11:29,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 02:11:29,821.821 INFO    ] 200
[2026-10-25 02:11:29,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:29,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:11:29,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:11:29,920.920 INFO    ] No camera update needed
[2026-10-25 02:11:29,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:11:29,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:11:29,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:11:29,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:11:31,982.982 INFO    ] ================================================
[2026-10-25 02:11:32,000.000 INFO    ] Launching Daemon at Sun Oct 25 02:11:31 IST 2026
[2026-10-25 02:11:32,012.012 INFO    ] ================================================
[2026-10-25 02:11:32,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:11:32
[2026-10-25 02:11:33,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:11:33,495.495 INFO    ] Initializing speech engine...
[2026-10-25 02:11:33,504.504 INFO    ] 2026-10-25 02:11:33
[2026-10-25 02:11:33,755.755 INFO    ] 2026-10-25 02:11:33
[2026-10-25 02:11:33,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:11:34,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:11:34,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:11:34,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:11:34,220.220 INFO    ] time= 25/10/2026 02:11:34
[2026-10-25 02:11:34,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:11:34,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:11:34,423.423 INFO    ] No existing commands found in stream
[2026-10-25 02:11:39,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:11:39,438.438 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 02:11:40,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:11:40,976.976 INFO    ] Checking for system updates...
[2026-10-25 02:11:41,012.012 INFO    ] 200
[2026-10-25 02:11:41,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:41,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:41,072.072 INFO    ] No update needed
[2026-10-25 02:11:41,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 02:11:41,108.108 INFO    ] 200
[2026-10-25 02:11:41,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:41,151.151 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:11:41,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:41,201.201 INFO    ] No camera update needed
[2026-10-25 02:11:41,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:11:41,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:11:41,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:11:41,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:11:43,257.257 INFO    ] ================================================
[2026-10-25 02:11:43,273.273 INFO    ] Launching Daemon at Sun Oct 25 02:11:43 IST 2026
[2026-10-25 02:11:43,284.284 INFO    ] ================================================
[2026-10-25 02:11:43,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:11:43
[2026-10-25 02:11:44,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:11:44,706.706 INFO    ] Initializing speech engine...
[2026-10-25 02:11:44,723.723 INFO    ] 2026-10-25 02:11:44
[2026-10-25 02:11:45,014.014 INFO    ] 2026-10-25 02:11:44
[2026-10-25 02:11:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:11:45,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:11:45,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:11:45,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:11:45,404.404 INFO    ] time= 25/10/2026 02:11:45
[2026-10-25 02:11:45,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:11:45,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:11:45,532.532 INFO    ] No existing commands found in stream
[2026-10-25 02:11:50,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:11:50,547.547 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 02:11:52,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:11:52,228.228 INFO    ] Checking for system updates...
[2026-10-25 02:11:52,264.264 INFO    ] 200
[2026-10-25 02:11:52,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:52,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:52,326.326 INFO    ] No update needed
[2026-10-25 02:11:52,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 02:11:52,362.362 INFO    ] 200
[2026-10-25 02:11:52,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:11:52,405.405 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:11:52,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:11:52,560.560 INFO    ] No camera update needed
[2026-10-25 02:11:52,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:11:52,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:11:52,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:11:52,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:11:54,617.617 INFO    ] ================================================
[2026-10-25 02:11:54,632.632 INFO    ] Launching Daemon at Sun Oct 25 02:11:54 IST 2026
[2026-10-25 02:11:54,643.643 INFO    ] ================================================
[2026-10-25 02:11:55,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:11:55
[2026-10-25 02:11:55,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:11:56,047.047 INFO    ] Initializing speech engine...
[2026-10-25 02:11:56,053.053 INFO    ] 2026-10-25 02:11:56
[2026-10-25 02:11:56,353.353 INFO    ] 2026-10-25 02:11:56
[2026-10-25 02:11:56,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:11:56,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:11:56,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:11:56,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:11:56,709.709 INFO    ] time= 25/10/2026 02:11:56
[2026-10-25 02:11:56,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:11:56,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:11:56,792.792 INFO    ] No existing commands found in stream
[2026-10-25 02:12:01,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:12:01,806.806 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 02:12:05,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:12:05,988.988 INFO    ] Checking for system updates...
[2026-10-25 02:12:06,024.024 INFO    ] 200
[2026-10-25 02:12:06,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:06,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:06,093.093 INFO    ] No update needed
[2026-10-25 02:12:06,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 02:12:06,129.129 INFO    ] 200
[2026-10-25 02:12:06,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:06,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:12:06,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:06,222.222 INFO    ] No camera update needed
[2026-10-25 02:12:06,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:12:06,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:12:06,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:12:06,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:12:08,277.277 INFO    ] ================================================
[2026-10-25 02:12:08,292.292 INFO    ] Launching Daemon at Sun Oct 25 02:12:08 IST 2026
[2026-10-25 02:12:08,302.302 INFO    ] ================================================
[2026-10-25 02:12:08,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:12:08
[2026-10-25 02:12:09,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:12:09,704.704 INFO    ] Initializing speech engine...
[2026-10-25 02:12:09,712.712 INFO    ] 2026-10-25 02:12:09
[2026-10-25 02:12:09,999.999 INFO    ] 2026-10-25 02:12:09
[2026-10-25 02:12:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:12:10,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:12:10,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:12:10,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:12:10,432.432 INFO    ] time= 25/10/2026 02:12:10
[2026-10-25 02:12:10,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:12:10,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:12:10,521.521 INFO    ] No existing commands found in stream
[2026-10-25 02:12:15,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:12:15,537.537 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 02:12:16,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:12:16,526.526 INFO    ] Checking for system updates...
[2026-10-25 02:12:16,562.562 INFO    ] 200
[2026-10-25 02:12:16,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:16,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:16,620.620 INFO    ] No update needed
[2026-10-25 02:12:16,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 02:12:16,656.656 INFO    ] 200
[2026-10-25 02:12:16,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:16,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:12:16,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:16,757.757 INFO    ] No camera update needed
[2026-10-25 02:12:16,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:12:16,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:12:16,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:12:16,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:12:18,811.811 INFO    ] ================================================
[2026-10-25 02:12:18,826.826 INFO    ] Launching Daemon at Sun Oct 25 02:12:18 IST 2026
[2026-10-25 02:12:18,837.837 INFO    ] ================================================
[2026-10-25 02:12:19,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:12:19
[2026-10-25 02:12:19,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:12:20,266.266 INFO    ] Initializing speech engine...
[2026-10-25 02:12:20,275.275 INFO    ] 2026-10-25 02:12:20
[2026-10-25 02:12:20,528.528 INFO    ] 2026-10-25 02:12:20
[2026-10-25 02:12:20,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:12:20,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:12:20,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:12:20,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:12:21,024.024 INFO    ] time= 25/10/2026 02:12:20
[2026-10-25 02:12:21,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:12:21,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:12:21,206.206 INFO    ] No existing commands found in stream
[2026-10-25 02:12:26,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:12:26,234.234 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 02:12:28,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:12:28,004.004 INFO    ] Checking for system updates...
[2026-10-25 02:12:28,041.041 INFO    ] 200
[2026-10-25 02:12:28,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:28,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:28,108.108 INFO    ] No update needed
[2026-10-25 02:12:28,111.111 INFO    ] Checking for camera pi updates...
[2026-10-25 02:12:28,146.146 INFO    ] 200
[2026-10-25 02:12:28,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:28,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:12:28,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:28,249.249 INFO    ] No camera update needed
[2026-10-25 02:12:28,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:12:28,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:12:28,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:12:28,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:12:30,309.309 INFO    ] ================================================
[2026-10-25 02:12:30,324.324 INFO    ] Launching Daemon at Sun Oct 25 02:12:30 IST 2026
[2026-10-25 02:12:30,336.336 INFO    ] ================================================
[2026-10-25 02:12:30,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:12:30
[2026-10-25 02:12:31,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:12:31,812.812 INFO    ] Initializing speech engine...
[2026-10-25 02:12:31,823.823 INFO    ] 2026-10-25 02:12:31
[2026-10-25 02:12:32,088.088 INFO    ] 2026-10-25 02:12:32
[2026-10-25 02:12:32,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:12:32,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:12:32,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:12:32,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:12:32,481.481 INFO    ] time= 25/10/2026 02:12:32
[2026-10-25 02:12:32,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:12:32,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:12:32,665.665 INFO    ] No existing commands found in stream
[2026-10-25 02:12:37,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:12:37,698.698 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 02:12:39,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:12:39,725.725 INFO    ] Checking for system updates...
[2026-10-25 02:12:39,762.762 INFO    ] 200
[2026-10-25 02:12:39,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:39,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:12:39,821.821 INFO    ] No update needed
[2026-10-25 02:12:39,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 02:12:39,861.861 INFO    ] 200
[2026-10-25 02:12:39,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:39,904.904 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:12:39,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:12:39,954.954 INFO    ] No camera update needed
[2026-10-25 02:12:39,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:12:39,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:12:39,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:12:39,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:12:42,011.011 INFO    ] ================================================
[2026-10-25 02:12:42,027.027 INFO    ] Launching Daemon at Sun Oct 25 02:12:42 IST 2026
[2026-10-25 02:12:42,038.038 INFO    ] ================================================
[2026-10-25 02:12:42,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:12:42
[2026-10-25 02:12:43,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:12:43,470.470 INFO    ] Initializing speech engine...
[2026-10-25 02:12:43,479.479 INFO    ] 2026-10-25 02:12:43
[2026-10-25 02:12:43,775.775 INFO    ] 2026-10-25 02:12:43
[2026-10-25 02:12:43,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:12:44,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:12:44,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:12:44,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:12:44,188.188 INFO    ] time= 25/10/2026 02:12:44
[2026-10-25 02:12:44,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:12:44,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:12:44,289.289 INFO    ] No existing commands found in stream
[2026-10-25 02:12:49,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:12:49,307.307 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 02:12:53,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:12:53,020.020 INFO    ] Checking for system updates...
[2026-10-25 02:12:53,057.057 INFO    ] 200
[2026-10-25 02:12:53,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:53,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:53,118.118 INFO    ] No update needed
[2026-10-25 02:12:53,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 02:12:53,154.154 INFO    ] 200
[2026-10-25 02:12:53,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:12:53,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:12:53,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:12:53,250.250 INFO    ] No camera update needed
[2026-10-25 02:12:53,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:12:53,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:12:53,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:12:53,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:12:55,306.306 INFO    ] ================================================
[2026-10-25 02:12:55,321.321 INFO    ] Launching Daemon at Sun Oct 25 02:12:55 IST 2026
[2026-10-25 02:12:55,332.332 INFO    ] ================================================
[2026-10-25 02:12:55,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:12:55
[2026-10-25 02:12:56,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:12:56,749.749 INFO    ] Initializing speech engine...
[2026-10-25 02:12:56,758.758 INFO    ] 2026-10-25 02:12:56
[2026-10-25 02:12:57,017.017 INFO    ] 2026-10-25 02:12:57
[2026-10-25 02:12:57,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:12:57,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:12:57,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:12:57,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:12:57,474.474 INFO    ] time= 25/10/2026 02:12:57
[2026-10-25 02:12:57,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:12:57,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:12:57,625.625 INFO    ] No existing commands found in stream
[2026-10-25 02:13:02,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:13:02,647.647 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 02:13:03,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:13:03,514.514 INFO    ] Checking for system updates...
[2026-10-25 02:13:03,552.552 INFO    ] 200
[2026-10-25 02:13:03,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:03,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:03,614.614 INFO    ] No update needed
[2026-10-25 02:13:03,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 02:13:03,652.652 INFO    ] 200
[2026-10-25 02:13:03,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:03,698.698 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:13:03,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:03,747.747 INFO    ] No camera update needed
[2026-10-25 02:13:03,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:13:03,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:13:03,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:13:03,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:13:05,813.813 INFO    ] ================================================
[2026-10-25 02:13:05,829.829 INFO    ] Launching Daemon at Sun Oct 25 02:13:05 IST 2026
[2026-10-25 02:13:05,840.840 INFO    ] ================================================
[2026-10-25 02:13:06,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:13:06
[2026-10-25 02:13:07,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:13:07,258.258 INFO    ] Initializing speech engine...
[2026-10-25 02:13:07,265.265 INFO    ] 2026-10-25 02:13:07
[2026-10-25 02:13:07,568.568 INFO    ] 2026-10-25 02:13:07
[2026-10-25 02:13:07,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:13:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:13:07,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:13:07,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:13:07,931.931 INFO    ] time= 25/10/2026 02:13:07
[2026-10-25 02:13:07,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:13:07,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:13:08,019.019 INFO    ] No existing commands found in stream
[2026-10-25 02:13:13,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:13:13,034.034 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 02:13:16,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:13:16,627.627 INFO    ] Checking for system updates...
[2026-10-25 02:13:16,664.664 INFO    ] 200
[2026-10-25 02:13:16,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:16,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:16,734.734 INFO    ] No update needed
[2026-10-25 02:13:16,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 02:13:16,770.770 INFO    ] 200
[2026-10-25 02:13:16,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:16,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:13:16,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:16,875.875 INFO    ] No camera update needed
[2026-10-25 02:13:16,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:13:16,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:13:16,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:13:16,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:13:18,930.930 INFO    ] ================================================
[2026-10-25 02:13:18,945.945 INFO    ] Launching Daemon at Sun Oct 25 02:13:18 IST 2026
[2026-10-25 02:13:18,956.956 INFO    ] ================================================
[2026-10-25 02:13:19,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:13:19
[2026-10-25 02:13:20,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:13:20,386.386 INFO    ] Initializing speech engine...
[2026-10-25 02:13:20,394.394 INFO    ] 2026-10-25 02:13:20
[2026-10-25 02:13:20,670.670 INFO    ] 2026-10-25 02:13:20
[2026-10-25 02:13:20,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:13:20,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:13:20,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:13:21,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:13:21,200.200 INFO    ] time= 25/10/2026 02:13:21
[2026-10-25 02:13:21,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:13:21,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:13:21,352.352 INFO    ] No existing commands found in stream
[2026-10-25 02:13:26,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:13:26,370.370 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 02:13:29,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:13:29,914.914 INFO    ] Checking for system updates...
[2026-10-25 02:13:29,950.950 INFO    ] 200
[2026-10-25 02:13:29,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:30,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:30,007.007 INFO    ] No update needed
[2026-10-25 02:13:30,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 02:13:30,046.046 INFO    ] 200
[2026-10-25 02:13:30,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:30,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:13:30,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:30,148.148 INFO    ] No camera update needed
[2026-10-25 02:13:30,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:13:30,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:13:30,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:13:30,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:13:32,209.209 INFO    ] ================================================
[2026-10-25 02:13:32,226.226 INFO    ] Launching Daemon at Sun Oct 25 02:13:32 IST 2026
[2026-10-25 02:13:32,238.238 INFO    ] ================================================
[2026-10-25 02:13:32,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:13:32
[2026-10-25 02:13:33,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:13:33,724.724 INFO    ] Initializing speech engine...
[2026-10-25 02:13:33,742.742 INFO    ] 2026-10-25 02:13:33
[2026-10-25 02:13:33,989.989 INFO    ] 2026-10-25 02:13:33
[2026-10-25 02:13:34,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:13:34,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:13:34,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:13:34,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:13:34,459.459 INFO    ] time= 25/10/2026 02:13:34
[2026-10-25 02:13:34,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:13:34,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:13:34,685.685 INFO    ] No existing commands found in stream
[2026-10-25 02:13:39,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:13:39,710.710 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 02:13:42,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:13:42,394.394 INFO    ] Checking for system updates...
[2026-10-25 02:13:42,432.432 INFO    ] 200
[2026-10-25 02:13:42,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:42,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:42,495.495 INFO    ] No update needed
[2026-10-25 02:13:42,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 02:13:42,532.532 INFO    ] 200
[2026-10-25 02:13:42,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:42,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:13:42,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:42,629.629 INFO    ] No camera update needed
[2026-10-25 02:13:42,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:13:42,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:13:42,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:13:42,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:13:44,686.686 INFO    ] ================================================
[2026-10-25 02:13:44,702.702 INFO    ] Launching Daemon at Sun Oct 25 02:13:44 IST 2026
[2026-10-25 02:13:44,712.712 INFO    ] ================================================
[2026-10-25 02:13:45,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:13:45
[2026-10-25 02:13:46,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:13:46,412.412 INFO    ] Initializing speech engine...
[2026-10-25 02:13:46,421.421 INFO    ] 2026-10-25 02:13:46
[2026-10-25 02:13:46,711.711 INFO    ] 2026-10-25 02:13:46
[2026-10-25 02:13:46,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:13:47,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:13:47,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:13:47,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:13:47,257.257 INFO    ] time= 25/10/2026 02:13:47
[2026-10-25 02:13:47,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:13:47,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:13:47,398.398 INFO    ] No existing commands found in stream
[2026-10-25 02:13:52,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:13:52,416.416 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 02:13:54,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:13:54,878.878 INFO    ] Checking for system updates...
[2026-10-25 02:13:54,924.924 INFO    ] 200
[2026-10-25 02:13:54,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:54,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:54,990.990 INFO    ] No update needed
[2026-10-25 02:13:54,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 02:13:55,033.033 INFO    ] 200
[2026-10-25 02:13:55,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:13:55,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:13:55,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:13:55,236.236 INFO    ] No camera update needed
[2026-10-25 02:13:55,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:13:55,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:13:55,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:13:55,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:13:57,296.296 INFO    ] ================================================
[2026-10-25 02:13:57,312.312 INFO    ] Launching Daemon at Sun Oct 25 02:13:57 IST 2026
[2026-10-25 02:13:57,323.323 INFO    ] ================================================
[2026-10-25 02:13:57,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:13:57
[2026-10-25 02:13:58,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:13:58,732.732 INFO    ] Initializing speech engine...
[2026-10-25 02:13:58,739.739 INFO    ] 2026-10-25 02:13:58
[2026-10-25 02:13:59,041.041 INFO    ] 2026-10-25 02:13:58
[2026-10-25 02:13:59,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:13:59,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:13:59,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:13:59,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:13:59,453.453 INFO    ] time= 25/10/2026 02:13:59
[2026-10-25 02:13:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:13:59,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:13:59,562.562 INFO    ] No existing commands found in stream
[2026-10-25 02:14:04,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:04,578.578 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 02:14:07,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:14:07,214.214 INFO    ] Checking for system updates...
[2026-10-25 02:14:07,249.249 INFO    ] 200
[2026-10-25 02:14:07,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:07,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:07,307.307 INFO    ] No update needed
[2026-10-25 02:14:07,310.310 INFO    ] Checking for camera pi updates...
[2026-10-25 02:14:07,344.344 INFO    ] 200
[2026-10-25 02:14:07,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:07,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:14:07,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:07,435.435 INFO    ] No camera update needed
[2026-10-25 02:14:07,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:14:07,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:14:07,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:14:07,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:14:09,490.490 INFO    ] ================================================
[2026-10-25 02:14:09,505.505 INFO    ] Launching Daemon at Sun Oct 25 02:14:09 IST 2026
[2026-10-25 02:14:09,517.517 INFO    ] ================================================
[2026-10-25 02:14:10,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:14:10
[2026-10-25 02:14:10,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:14:10,993.993 INFO    ] Initializing speech engine...
[2026-10-25 02:14:11,007.007 INFO    ] 2026-10-25 02:14:10
[2026-10-25 02:14:11,292.292 INFO    ] 2026-10-25 02:14:11
[2026-10-25 02:14:11,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:14:11,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:14:11,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:14:11,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:14:11,834.834 INFO    ] time= 25/10/2026 02:14:11
[2026-10-25 02:14:11,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:14:11,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:14:11,976.976 INFO    ] No existing commands found in stream
[2026-10-25 02:14:17,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:17,005.005 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 02:14:18,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:14:18,434.434 INFO    ] Checking for system updates...
[2026-10-25 02:14:18,471.471 INFO    ] 200
[2026-10-25 02:14:18,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:18,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:18,533.533 INFO    ] No update needed
[2026-10-25 02:14:18,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 02:14:18,571.571 INFO    ] 200
[2026-10-25 02:14:18,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:18,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:14:18,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:18,667.667 INFO    ] No camera update needed
[2026-10-25 02:14:18,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:14:18,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:14:18,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:14:18,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:14:20,724.724 INFO    ] ================================================
[2026-10-25 02:14:20,740.740 INFO    ] Launching Daemon at Sun Oct 25 02:14:20 IST 2026
[2026-10-25 02:14:20,751.751 INFO    ] ================================================
[2026-10-25 02:14:21,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:14:21
[2026-10-25 02:14:21,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:14:22,167.167 INFO    ] Initializing speech engine...
[2026-10-25 02:14:22,176.176 INFO    ] 2026-10-25 02:14:22
[2026-10-25 02:14:22,470.470 INFO    ] 2026-10-25 02:14:22
[2026-10-25 02:14:22,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:14:22,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:14:22,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:14:22,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:14:22,892.892 INFO    ] time= 25/10/2026 02:14:22
[2026-10-25 02:14:22,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:14:22,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:14:23,044.044 INFO    ] No existing commands found in stream
[2026-10-25 02:14:28,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:28,077.077 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 02:14:28,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:14:28,849.849 INFO    ] Checking for system updates...
[2026-10-25 02:14:28,885.885 INFO    ] 200
[2026-10-25 02:14:28,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:28,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:14:28,949.949 INFO    ] No update needed
[2026-10-25 02:14:28,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 02:14:28,985.985 INFO    ] 200
[2026-10-25 02:14:28,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:29,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:14:29,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:14:29,085.085 INFO    ] No camera update needed
[2026-10-25 02:14:29,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:14:29,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:14:29,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:14:29,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:14:31,142.142 INFO    ] ================================================
[2026-10-25 02:14:31,158.158 INFO    ] Launching Daemon at Sun Oct 25 02:14:31 IST 2026
[2026-10-25 02:14:31,169.169 INFO    ] ================================================
[2026-10-25 02:14:31,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:14:31
[2026-10-25 02:14:32,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:14:32,848.848 INFO    ] Initializing speech engine...
[2026-10-25 02:14:32,855.855 INFO    ] 2026-10-25 02:14:32
[2026-10-25 02:14:33,126.126 INFO    ] 2026-10-25 02:14:33
[2026-10-25 02:14:33,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:14:33,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:14:33,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:14:33,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:14:33,612.612 INFO    ] time= 25/10/2026 02:14:33
[2026-10-25 02:14:33,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:14:33,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:14:33,841.841 INFO    ] No existing commands found in stream
[2026-10-25 02:14:38,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:38,863.863 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 02:14:39,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:14:39,762.762 INFO    ] Checking for system updates...
[2026-10-25 02:14:39,799.799 INFO    ] 200
[2026-10-25 02:14:39,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:39,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:14:39,863.863 INFO    ] No update needed
[2026-10-25 02:14:39,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 02:14:39,901.901 INFO    ] 200
[2026-10-25 02:14:39,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:39,946.946 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:14:39,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:14:39,999.999 INFO    ] No camera update needed
[2026-10-25 02:14:40,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:14:40,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:14:40,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:14:40,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:14:42,057.057 INFO    ] ================================================
[2026-10-25 02:14:42,072.072 INFO    ] Launching Daemon at Sun Oct 25 02:14:42 IST 2026
[2026-10-25 02:14:42,083.083 INFO    ] ================================================
[2026-10-25 02:14:42,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:14:42
[2026-10-25 02:14:43,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:14:43,518.518 INFO    ] Initializing speech engine...
[2026-10-25 02:14:43,533.533 INFO    ] 2026-10-25 02:14:43
[2026-10-25 02:14:43,819.819 INFO    ] 2026-10-25 02:14:43
[2026-10-25 02:14:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:14:44,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:14:44,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:14:44,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:14:44,196.196 INFO    ] time= 25/10/2026 02:14:44
[2026-10-25 02:14:44,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:14:44,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:14:44,320.320 INFO    ] No existing commands found in stream
[2026-10-25 02:14:49,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:49,335.335 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 02:14:50,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:14:50,066.066 INFO    ] Checking for system updates...
[2026-10-25 02:14:50,101.101 INFO    ] 200
[2026-10-25 02:14:50,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:50,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:50,160.160 INFO    ] No update needed
[2026-10-25 02:14:50,163.163 INFO    ] Checking for camera pi updates...
[2026-10-25 02:14:50,196.196 INFO    ] 200
[2026-10-25 02:14:50,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:14:50,240.240 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:14:50,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:14:50,300.300 INFO    ] No camera update needed
[2026-10-25 02:14:50,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:14:50,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:14:50,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:14:50,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:14:52,356.356 INFO    ] ================================================
[2026-10-25 02:14:52,372.372 INFO    ] Launching Daemon at Sun Oct 25 02:14:52 IST 2026
[2026-10-25 02:14:52,383.383 INFO    ] ================================================
[2026-10-25 02:14:52,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:14:52
[2026-10-25 02:14:53,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:14:53,858.858 INFO    ] Initializing speech engine...
[2026-10-25 02:14:53,875.875 INFO    ] 2026-10-25 02:14:53
[2026-10-25 02:14:54,147.147 INFO    ] 2026-10-25 02:14:54
[2026-10-25 02:14:54,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:14:54,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:14:54,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:14:54,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:14:54,566.566 INFO    ] time= 25/10/2026 02:14:54
[2026-10-25 02:14:54,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:14:54,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:14:54,734.734 INFO    ] No existing commands found in stream
[2026-10-25 02:14:59,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:14:59,762.762 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 02:15:01,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:15:01,058.058 INFO    ] Checking for system updates...
[2026-10-25 02:15:01,098.098 INFO    ] 200
[2026-10-25 02:15:01,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:01,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:01,156.156 INFO    ] No update needed
[2026-10-25 02:15:01,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 02:15:01,196.196 INFO    ] 200
[2026-10-25 02:15:01,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:01,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:15:01,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:01,290.290 INFO    ] No camera update needed
[2026-10-25 02:15:01,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:15:01,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:15:01,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:15:01,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:15:03,352.352 INFO    ] ================================================
[2026-10-25 02:15:03,370.370 INFO    ] Launching Daemon at Sun Oct 25 02:15:03 IST 2026
[2026-10-25 02:15:03,384.384 INFO    ] ================================================
[2026-10-25 02:15:04,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:15:04
[2026-10-25 02:15:04,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:15:04,870.870 INFO    ] Initializing speech engine...
[2026-10-25 02:15:04,876.876 INFO    ] 2026-10-25 02:15:04
[2026-10-25 02:15:05,175.175 INFO    ] 2026-10-25 02:15:05
[2026-10-25 02:15:05,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:15:05,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:15:05,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:15:05,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:15:05,765.765 INFO    ] time= 25/10/2026 02:15:05
[2026-10-25 02:15:05,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:15:05,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:15:05,885.885 INFO    ] No existing commands found in stream
[2026-10-25 02:15:10,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:15:10,899.899 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 02:15:13,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:15:13,358.358 INFO    ] Checking for system updates...
[2026-10-25 02:15:13,396.396 INFO    ] 200
[2026-10-25 02:15:13,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:13,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:13,457.457 INFO    ] No update needed
[2026-10-25 02:15:13,460.460 INFO    ] Checking for camera pi updates...
[2026-10-25 02:15:13,495.495 INFO    ] 200
[2026-10-25 02:15:13,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:13,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:15:13,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:13,594.594 INFO    ] No camera update needed
[2026-10-25 02:15:13,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:15:13,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:15:13,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:15:13,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:15:15,653.653 INFO    ] ================================================
[2026-10-25 02:15:15,668.668 INFO    ] Launching Daemon at Sun Oct 25 02:15:15 IST 2026
[2026-10-25 02:15:15,679.679 INFO    ] ================================================
[2026-10-25 02:15:16,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:15:16
[2026-10-25 02:15:16,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:15:17,086.086 INFO    ] Initializing speech engine...
[2026-10-25 02:15:17,094.094 INFO    ] 2026-10-25 02:15:17
[2026-10-25 02:15:17,391.391 INFO    ] 2026-10-25 02:15:17
[2026-10-25 02:15:17,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:15:17,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:15:17,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:15:17,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:15:17,773.773 INFO    ] time= 25/10/2026 02:15:17
[2026-10-25 02:15:17,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:15:17,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:15:17,898.898 INFO    ] No existing commands found in stream
[2026-10-25 02:15:22,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:15:22,913.913 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 02:15:24,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:15:24,676.676 INFO    ] Checking for system updates...
[2026-10-25 02:15:24,712.712 INFO    ] 200
[2026-10-25 02:15:24,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:24,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:15:24,771.771 INFO    ] No update needed
[2026-10-25 02:15:24,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 02:15:24,811.811 INFO    ] 200
[2026-10-25 02:15:24,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:24,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:15:24,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:15:24,902.902 INFO    ] No camera update needed
[2026-10-25 02:15:24,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:15:24,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:15:24,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:15:24,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:15:26,958.958 INFO    ] ================================================
[2026-10-25 02:15:26,974.974 INFO    ] Launching Daemon at Sun Oct 25 02:15:26 IST 2026
[2026-10-25 02:15:26,985.985 INFO    ] ================================================
[2026-10-25 02:15:27,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:15:27
[2026-10-25 02:15:28,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:15:28,399.399 INFO    ] Initializing speech engine...
[2026-10-25 02:15:28,408.408 INFO    ] 2026-10-25 02:15:28
[2026-10-25 02:15:28,654.654 INFO    ] 2026-10-25 02:15:28
[2026-10-25 02:15:28,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:15:28,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:15:28,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:15:29,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:15:29,021.021 INFO    ] time= 25/10/2026 02:15:29
[2026-10-25 02:15:29,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:15:29,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:15:29,201.201 INFO    ] No existing commands found in stream
[2026-10-25 02:15:34,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:15:34,229.229 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 02:15:36,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:15:36,699.699 INFO    ] Checking for system updates...
[2026-10-25 02:15:36,735.735 INFO    ] 200
[2026-10-25 02:15:36,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:36,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:36,793.793 INFO    ] No update needed
[2026-10-25 02:15:36,796.796 INFO    ] Checking for camera pi updates...
[2026-10-25 02:15:36,829.829 INFO    ] 200
[2026-10-25 02:15:36,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:36,873.873 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:15:36,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:36,990.990 INFO    ] No camera update needed
[2026-10-25 02:15:36,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:15:36,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:15:37,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:15:37,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:15:39,046.046 INFO    ] ================================================
[2026-10-25 02:15:39,062.062 INFO    ] Launching Daemon at Sun Oct 25 02:15:39 IST 2026
[2026-10-25 02:15:39,073.073 INFO    ] ================================================
[2026-10-25 02:15:39,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:15:39
[2026-10-25 02:15:40,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:15:40,485.485 INFO    ] Initializing speech engine...
[2026-10-25 02:15:40,494.494 INFO    ] 2026-10-25 02:15:40
[2026-10-25 02:15:40,788.788 INFO    ] 2026-10-25 02:15:40
[2026-10-25 02:15:40,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:15:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:15:41,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:15:41,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:15:41,170.170 INFO    ] time= 25/10/2026 02:15:41
[2026-10-25 02:15:41,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:15:41,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:15:41,295.295 INFO    ] No existing commands found in stream
[2026-10-25 02:15:46,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:15:46,310.310 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 02:15:49,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:15:49,330.330 INFO    ] Checking for system updates...
[2026-10-25 02:15:49,367.367 INFO    ] 200
[2026-10-25 02:15:49,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:49,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:49,432.432 INFO    ] No update needed
[2026-10-25 02:15:49,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 02:15:49,470.470 INFO    ] 200
[2026-10-25 02:15:49,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:15:49,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:15:49,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:15:49,566.566 INFO    ] No camera update needed
[2026-10-25 02:15:49,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:15:49,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:15:49,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:15:49,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:15:51,631.631 INFO    ] ================================================
[2026-10-25 02:15:51,647.647 INFO    ] Launching Daemon at Sun Oct 25 02:15:51 IST 2026
[2026-10-25 02:15:51,658.658 INFO    ] ================================================
[2026-10-25 02:15:52,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:15:52
[2026-10-25 02:15:52,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:15:53,072.072 INFO    ] Initializing speech engine...
[2026-10-25 02:15:53,081.081 INFO    ] 2026-10-25 02:15:53
[2026-10-25 02:15:53,333.333 INFO    ] 2026-10-25 02:15:53
[2026-10-25 02:15:53,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:15:53,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:15:53,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:15:53,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:15:53,799.799 INFO    ] time= 25/10/2026 02:15:53
[2026-10-25 02:15:53,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:15:53,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:15:53,996.996 INFO    ] No existing commands found in stream
[2026-10-25 02:15:59,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:15:59,026.026 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 02:16:02,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:16:02,455.455 INFO    ] Checking for system updates...
[2026-10-25 02:16:02,496.496 INFO    ] 200
[2026-10-25 02:16:02,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:02,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:16:02,570.570 INFO    ] No update needed
[2026-10-25 02:16:02,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 02:16:02,612.612 INFO    ] 200
[2026-10-25 02:16:02,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:02,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:16:02,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:16:02,710.710 INFO    ] No camera update needed
[2026-10-25 02:16:02,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:16:02,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:16:02,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:16:02,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:16:04,779.779 INFO    ] ================================================
[2026-10-25 02:16:04,793.793 INFO    ] Launching Daemon at Sun Oct 25 02:16:04 IST 2026
[2026-10-25 02:16:04,804.804 INFO    ] ================================================
[2026-10-25 02:16:05,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:16:05
[2026-10-25 02:16:05,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:16:06,203.203 INFO    ] Initializing speech engine...
[2026-10-25 02:16:06,209.209 INFO    ] 2026-10-25 02:16:06
[2026-10-25 02:16:06,500.500 INFO    ] 2026-10-25 02:16:06
[2026-10-25 02:16:06,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:16:06,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:16:06,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:16:07,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:16:07,125.125 INFO    ] time= 25/10/2026 02:16:07
[2026-10-25 02:16:07,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:16:07,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:16:07,266.266 INFO    ] No existing commands found in stream
[2026-10-25 02:16:12,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:16:12,294.294 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 02:16:16,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:16:16,644.644 INFO    ] Checking for system updates...
[2026-10-25 02:16:16,681.681 INFO    ] 200
[2026-10-25 02:16:16,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:16,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:16:16,741.741 INFO    ] No update needed
[2026-10-25 02:16:16,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 02:16:16,778.778 INFO    ] 200
[2026-10-25 02:16:16,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:16,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:16:16,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:16:16,876.876 INFO    ] No camera update needed
[2026-10-25 02:16:16,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:16:16,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:16:16,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:16:16,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:16:18,935.935 INFO    ] ================================================
[2026-10-25 02:16:18,950.950 INFO    ] Launching Daemon at Sun Oct 25 02:16:18 IST 2026
[2026-10-25 02:16:18,961.961 INFO    ] ================================================
[2026-10-25 02:16:19,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:16:19
[2026-10-25 02:16:20,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:16:20,378.378 INFO    ] Initializing speech engine...
[2026-10-25 02:16:20,402.402 INFO    ] 2026-10-25 02:16:20
[2026-10-25 02:16:20,672.672 INFO    ] 2026-10-25 02:16:20
[2026-10-25 02:16:20,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:16:20,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:16:20,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:16:21,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:16:21,085.085 INFO    ] time= 25/10/2026 02:16:21
[2026-10-25 02:16:21,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:16:21,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:16:21,169.169 INFO    ] No existing commands found in stream
[2026-10-25 02:16:26,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:16:26,185.185 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 02:16:28,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:16:28,429.429 INFO    ] Checking for system updates...
[2026-10-25 02:16:28,465.465 INFO    ] 200
[2026-10-25 02:16:28,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:28,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:16:28,525.525 INFO    ] No update needed
[2026-10-25 02:16:28,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 02:16:28,560.560 INFO    ] 200
[2026-10-25 02:16:28,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:28,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:16:28,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:16:28,648.648 INFO    ] No camera update needed
[2026-10-25 02:16:28,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:16:28,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:16:28,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:16:28,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:16:30,704.704 INFO    ] ================================================
[2026-10-25 02:16:30,719.719 INFO    ] Launching Daemon at Sun Oct 25 02:16:30 IST 2026
[2026-10-25 02:16:30,731.731 INFO    ] ================================================
[2026-10-25 02:16:31,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:16:31
[2026-10-25 02:16:32,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:16:32,352.352 INFO    ] Initializing speech engine...
[2026-10-25 02:16:32,361.361 INFO    ] 2026-10-25 02:16:32
[2026-10-25 02:16:32,647.647 INFO    ] 2026-10-25 02:16:32
[2026-10-25 02:16:32,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:16:32,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:16:32,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:16:33,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:16:33,080.080 INFO    ] time= 25/10/2026 02:16:33
[2026-10-25 02:16:33,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:16:33,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:16:33,167.167 INFO    ] No existing commands found in stream
[2026-10-25 02:16:38,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:16:38,183.183 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 02:16:40,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:16:40,083.083 INFO    ] Checking for system updates...
[2026-10-25 02:16:40,126.126 INFO    ] 200
[2026-10-25 02:16:40,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:40,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:16:40,185.185 INFO    ] No update needed
[2026-10-25 02:16:40,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 02:16:40,221.221 INFO    ] 200
[2026-10-25 02:16:40,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:16:40,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:16:40,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:16:40,312.312 INFO    ] No camera update needed
[2026-10-25 02:16:40,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:16:40,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:16:40,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:16:40,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:16:42,368.368 INFO    ] ================================================
[2026-10-25 02:16:42,383.383 INFO    ] Launching Daemon at Sun Oct 25 02:16:42 IST 2026
[2026-10-25 02:16:42,394.394 INFO    ] ================================================
[2026-10-25 02:16:42,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:16:42
[2026-10-25 02:16:43,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:16:43,842.842 INFO    ] Initializing speech engine...
[2026-10-25 02:16:43,854.854 INFO    ] 2026-10-25 02:16:43
[2026-10-25 02:16:44,119.119 INFO    ] 2026-10-25 02:16:44
[2026-10-25 02:16:44,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:16:44,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:16:44,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:16:44,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:16:44,597.597 INFO    ] time= 25/10/2026 02:16:44
[2026-10-25 02:16:44,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:16:44,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:16:44,800.800 INFO    ] No existing commands found in stream
[2026-10-25 02:16:49,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:16:49,826.826 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 02:16:51,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:16:51,366.366 INFO    ] Checking for system updates...
[2026-10-25 02:16:51,407.407 INFO    ] 200
[2026-10-25 02:16:51,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:16:51,413.413 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 02:16:51,416.416 INFO    ] Checking for camera pi updates...
[2026-10-25 02:16:51,457.457 INFO    ] 200
[2026-10-25 02:16:51,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:16:51,463.463 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 02:16:51,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:16:51,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:16:51,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:16:51,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:16:53,524.524 INFO    ] ================================================
[2026-10-25 02:16:53,540.540 INFO    ] Launching Daemon at Sun Oct 25 02:16:53 IST 2026
[2026-10-25 02:16:53,552.552 INFO    ] ================================================
[2026-10-25 02:16:54,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:16:54
[2026-10-25 02:16:54,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:16:55,104.104 INFO    ] Initializing speech engine...
[2026-10-25 02:16:55,113.113 INFO    ] 2026-10-25 02:16:55
[2026-10-25 02:16:55,359.359 INFO    ] 2026-10-25 02:16:55
[2026-10-25 02:16:55,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:16:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:16:55,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:16:55,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:16:55,846.846 INFO    ] time= 25/10/2026 02:16:55
[2026-10-25 02:16:55,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:16:55,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:16:55,996.996 INFO    ] No existing commands found in stream
[2026-10-25 02:17:01,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:17:01,009.009 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 02:17:03,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:17:03,224.224 INFO    ] Checking for system updates...
[2026-10-25 02:17:03,260.260 INFO    ] 200
[2026-10-25 02:17:03,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:03,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:03,318.318 INFO    ] No update needed
[2026-10-25 02:17:03,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 02:17:03,355.355 INFO    ] 200
[2026-10-25 02:17:03,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:03,398.398 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:17:03,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:03,448.448 INFO    ] No camera update needed
[2026-10-25 02:17:03,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:17:03,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:17:03,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:17:03,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:17:05,504.504 INFO    ] ================================================
[2026-10-25 02:17:05,519.519 INFO    ] Launching Daemon at Sun Oct 25 02:17:05 IST 2026
[2026-10-25 02:17:05,530.530 INFO    ] ================================================
[2026-10-25 02:17:06,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:17:06
[2026-10-25 02:17:06,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:17:06,947.947 INFO    ] Initializing speech engine...
[2026-10-25 02:17:06,957.957 INFO    ] 2026-10-25 02:17:06
[2026-10-25 02:17:07,220.220 INFO    ] 2026-10-25 02:17:07
[2026-10-25 02:17:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:17:07,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:17:07,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:17:07,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:17:07,681.681 INFO    ] time= 25/10/2026 02:17:07
[2026-10-25 02:17:07,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:17:07,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:17:07,851.851 INFO    ] No existing commands found in stream
[2026-10-25 02:17:12,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:17:12,891.891 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 02:17:14,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:17:14,104.104 INFO    ] Checking for system updates...
[2026-10-25 02:17:14,140.140 INFO    ] 200
[2026-10-25 02:17:14,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:14,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:14,198.198 INFO    ] No update needed
[2026-10-25 02:17:14,201.201 INFO    ] Checking for camera pi updates...
[2026-10-25 02:17:14,235.235 INFO    ] 200
[2026-10-25 02:17:14,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:14,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:17:14,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:14,333.333 INFO    ] No camera update needed
[2026-10-25 02:17:14,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:17:14,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:17:14,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:17:14,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:17:16,387.387 INFO    ] ================================================
[2026-10-25 02:17:16,403.403 INFO    ] Launching Daemon at Sun Oct 25 02:17:16 IST 2026
[2026-10-25 02:17:16,413.413 INFO    ] ================================================
[2026-10-25 02:17:16,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:17:16
[2026-10-25 02:17:17,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:17:17,847.847 INFO    ] Initializing speech engine...
[2026-10-25 02:17:17,856.856 INFO    ] 2026-10-25 02:17:17
[2026-10-25 02:17:18,153.153 INFO    ] 2026-10-25 02:17:18
[2026-10-25 02:17:18,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:17:18,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:17:18,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:17:18,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:17:18,573.573 INFO    ] time= 25/10/2026 02:17:18
[2026-10-25 02:17:18,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:17:18,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:17:18,667.667 INFO    ] No existing commands found in stream
[2026-10-25 02:17:23,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:17:23,685.685 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 02:17:25,730.730 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:17:25,733.733 INFO    ] Checking for system updates...
[2026-10-25 02:17:25,769.769 INFO    ] 200
[2026-10-25 02:17:25,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:25,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:25,828.828 INFO    ] No update needed
[2026-10-25 02:17:25,831.831 INFO    ] Checking for camera pi updates...
[2026-10-25 02:17:25,866.866 INFO    ] 200
[2026-10-25 02:17:25,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:25,908.908 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:17:25,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:17:25,957.957 INFO    ] No camera update needed
[2026-10-25 02:17:25,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:17:25,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:17:25,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:17:25,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:17:28,015.015 INFO    ] ================================================
[2026-10-25 02:17:28,035.035 INFO    ] Launching Daemon at Sun Oct 25 02:17:28 IST 2026
[2026-10-25 02:17:28,047.047 INFO    ] ================================================
[2026-10-25 02:17:28,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:17:28
[2026-10-25 02:17:29,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:17:29,486.486 INFO    ] Initializing speech engine...
[2026-10-25 02:17:29,495.495 INFO    ] 2026-10-25 02:17:29
[2026-10-25 02:17:29,743.743 INFO    ] 2026-10-25 02:17:29
[2026-10-25 02:17:29,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:17:29,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:17:29,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:17:30,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:17:30,122.122 INFO    ] time= 25/10/2026 02:17:30
[2026-10-25 02:17:30,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:17:30,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:17:30,320.320 INFO    ] No existing commands found in stream
[2026-10-25 02:17:35,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:17:35,334.334 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 02:17:37,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:17:37,601.601 INFO    ] Checking for system updates...
[2026-10-25 02:17:37,637.637 INFO    ] 200
[2026-10-25 02:17:37,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:37,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:17:37,702.702 INFO    ] No update needed
[2026-10-25 02:17:37,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 02:17:37,742.742 INFO    ] 200
[2026-10-25 02:17:37,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:37,785.785 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:17:37,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:17:37,821.821 INFO    ] No camera update needed
[2026-10-25 02:17:37,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:17:37,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:17:37,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:17:37,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:17:39,878.878 INFO    ] ================================================
[2026-10-25 02:17:39,893.893 INFO    ] Launching Daemon at Sun Oct 25 02:17:39 IST 2026
[2026-10-25 02:17:39,904.904 INFO    ] ================================================
[2026-10-25 02:17:40,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:17:40
[2026-10-25 02:17:41,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:17:41,313.313 INFO    ] Initializing speech engine...
[2026-10-25 02:17:41,329.329 INFO    ] 2026-10-25 02:17:41
[2026-10-25 02:17:41,587.587 INFO    ] 2026-10-25 02:17:41
[2026-10-25 02:17:41,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:17:41,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:17:41,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:17:42,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:17:42,074.074 INFO    ] time= 25/10/2026 02:17:42
[2026-10-25 02:17:42,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:17:42,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:17:42,280.280 INFO    ] No existing commands found in stream
[2026-10-25 02:17:47,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:17:47,295.295 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 02:17:51,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:17:51,692.692 INFO    ] Checking for system updates...
[2026-10-25 02:17:51,728.728 INFO    ] 200
[2026-10-25 02:17:51,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:51,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:17:51,789.789 INFO    ] No update needed
[2026-10-25 02:17:51,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 02:17:51,826.826 INFO    ] 200
[2026-10-25 02:17:51,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:17:51,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:17:51,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:17:51,920.920 INFO    ] No camera update needed
[2026-10-25 02:17:51,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:17:51,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:17:51,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:17:51,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:17:53,976.976 INFO    ] ================================================
[2026-10-25 02:17:53,992.992 INFO    ] Launching Daemon at Sun Oct 25 02:17:53 IST 2026
[2026-10-25 02:17:54,003.003 INFO    ] ================================================
[2026-10-25 02:17:54,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:17:54
[2026-10-25 02:17:55,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:17:55,416.416 INFO    ] Initializing speech engine...
[2026-10-25 02:17:55,424.424 INFO    ] 2026-10-25 02:17:55
[2026-10-25 02:17:55,722.722 INFO    ] 2026-10-25 02:17:55
[2026-10-25 02:17:55,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:17:55,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:17:55,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:17:56,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:17:56,145.145 INFO    ] time= 25/10/2026 02:17:56
[2026-10-25 02:17:56,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:17:56,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:17:56,231.231 INFO    ] No existing commands found in stream
[2026-10-25 02:18:01,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:18:01,248.248 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 02:18:03,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:18:03,457.457 INFO    ] Checking for system updates...
[2026-10-25 02:18:03,492.492 INFO    ] 200
[2026-10-25 02:18:03,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:03,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:03,557.557 INFO    ] No update needed
[2026-10-25 02:18:03,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 02:18:03,594.594 INFO    ] 200
[2026-10-25 02:18:03,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:03,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:18:03,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:03,796.796 INFO    ] No camera update needed
[2026-10-25 02:18:03,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:18:03,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:18:03,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:18:03,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:18:05,856.856 INFO    ] ================================================
[2026-10-25 02:18:05,871.871 INFO    ] Launching Daemon at Sun Oct 25 02:18:05 IST 2026
[2026-10-25 02:18:05,882.882 INFO    ] ================================================
[2026-10-25 02:18:06,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:18:06
[2026-10-25 02:18:07,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:18:07,492.492 INFO    ] Initializing speech engine...
[2026-10-25 02:18:07,503.503 INFO    ] 2026-10-25 02:18:07
[2026-10-25 02:18:07,782.782 INFO    ] 2026-10-25 02:18:07
[2026-10-25 02:18:07,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:18:08,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:18:08,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:18:08,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:18:08,194.194 INFO    ] time= 25/10/2026 02:18:08
[2026-10-25 02:18:08,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:18:08,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:18:08,382.382 INFO    ] No existing commands found in stream
[2026-10-25 02:18:13,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:18:13,410.410 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 02:18:16,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:18:16,734.734 INFO    ] Checking for system updates...
[2026-10-25 02:18:16,774.774 INFO    ] 200
[2026-10-25 02:18:16,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:16,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:16,832.832 INFO    ] No update needed
[2026-10-25 02:18:16,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 02:18:16,868.868 INFO    ] 200
[2026-10-25 02:18:16,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:16,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:18:16,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:16,964.964 INFO    ] No camera update needed
[2026-10-25 02:18:16,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:18:16,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:18:16,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:18:16,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:18:19,018.018 INFO    ] ================================================
[2026-10-25 02:18:19,033.033 INFO    ] Launching Daemon at Sun Oct 25 02:18:19 IST 2026
[2026-10-25 02:18:19,044.044 INFO    ] ================================================
[2026-10-25 02:18:19,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:18:19
[2026-10-25 02:18:20,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:18:20,664.664 INFO    ] Initializing speech engine...
[2026-10-25 02:18:20,678.678 INFO    ] 2026-10-25 02:18:20
[2026-10-25 02:18:20,995.995 INFO    ] 2026-10-25 02:18:20
[2026-10-25 02:18:21,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:18:21,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:18:21,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:18:21,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:18:21,515.515 INFO    ] time= 25/10/2026 02:18:21
[2026-10-25 02:18:21,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:18:21,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:18:21,676.676 INFO    ] No existing commands found in stream
[2026-10-25 02:18:26,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:18:26,703.703 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 02:18:27,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:18:27,843.843 INFO    ] Checking for system updates...
[2026-10-25 02:18:27,879.879 INFO    ] 200
[2026-10-25 02:18:27,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:27,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:18:27,941.941 INFO    ] No update needed
[2026-10-25 02:18:27,943.943 INFO    ] Checking for camera pi updates...
[2026-10-25 02:18:27,979.979 INFO    ] 200
[2026-10-25 02:18:27,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:28,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:18:28,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:18:28,082.082 INFO    ] No camera update needed
[2026-10-25 02:18:28,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:18:28,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:18:28,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:18:28,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:18:30,136.136 INFO    ] ================================================
[2026-10-25 02:18:30,151.151 INFO    ] Launching Daemon at Sun Oct 25 02:18:30 IST 2026
[2026-10-25 02:18:30,162.162 INFO    ] ================================================
[2026-10-25 02:18:30,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:18:30
[2026-10-25 02:18:31,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:18:31,599.599 INFO    ] Initializing speech engine...
[2026-10-25 02:18:31,602.602 INFO    ] 2026-10-25 02:18:31
[2026-10-25 02:18:31,883.883 INFO    ] 2026-10-25 02:18:31
[2026-10-25 02:18:31,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:18:32,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:18:32,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:18:32,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:18:32,283.283 INFO    ] time= 25/10/2026 02:18:32
[2026-10-25 02:18:32,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:18:32,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:18:32,460.460 INFO    ] No existing commands found in stream
[2026-10-25 02:18:37,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:18:37,498.498 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 02:18:40,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:18:40,120.120 INFO    ] Checking for system updates...
[2026-10-25 02:18:40,161.161 INFO    ] 200
[2026-10-25 02:18:40,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:40,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:18:40,220.220 INFO    ] No update needed
[2026-10-25 02:18:40,223.223 INFO    ] Checking for camera pi updates...
[2026-10-25 02:18:40,257.257 INFO    ] 200
[2026-10-25 02:18:40,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:40,301.301 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:18:40,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:18:40,365.365 INFO    ] No camera update needed
[2026-10-25 02:18:40,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:18:40,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:18:40,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:18:40,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:18:42,422.422 INFO    ] ================================================
[2026-10-25 02:18:42,437.437 INFO    ] Launching Daemon at Sun Oct 25 02:18:42 IST 2026
[2026-10-25 02:18:42,448.448 INFO    ] ================================================
[2026-10-25 02:18:43,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:18:43
[2026-10-25 02:18:43,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:18:43,873.873 INFO    ] Initializing speech engine...
[2026-10-25 02:18:43,883.883 INFO    ] 2026-10-25 02:18:43
[2026-10-25 02:18:44,131.131 INFO    ] 2026-10-25 02:18:44
[2026-10-25 02:18:44,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:18:44,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:18:44,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:18:44,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:18:44,506.506 INFO    ] time= 25/10/2026 02:18:44
[2026-10-25 02:18:44,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:18:44,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:18:44,685.685 INFO    ] No existing commands found in stream
[2026-10-25 02:18:49,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:18:49,713.713 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 02:18:50,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:18:50,701.701 INFO    ] Checking for system updates...
[2026-10-25 02:18:50,743.743 INFO    ] 200
[2026-10-25 02:18:50,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:50,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:50,816.816 INFO    ] No update needed
[2026-10-25 02:18:50,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 02:18:50,855.855 INFO    ] 200
[2026-10-25 02:18:50,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:18:50,898.898 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:18:50,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:18:50,950.950 INFO    ] No camera update needed
[2026-10-25 02:18:50,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:18:50,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:18:50,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:18:50,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:18:53,007.007 INFO    ] ================================================
[2026-10-25 02:18:53,022.022 INFO    ] Launching Daemon at Sun Oct 25 02:18:53 IST 2026
[2026-10-25 02:18:53,032.032 INFO    ] ================================================
[2026-10-25 02:18:53,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:18:53
[2026-10-25 02:18:54,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:18:54,487.487 INFO    ] Initializing speech engine...
[2026-10-25 02:18:54,494.494 INFO    ] 2026-10-25 02:18:54
[2026-10-25 02:18:54,754.754 INFO    ] 2026-10-25 02:18:54
[2026-10-25 02:18:54,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:18:55,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:18:55,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:18:55,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:18:55,233.233 INFO    ] time= 25/10/2026 02:18:55
[2026-10-25 02:18:55,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:18:55,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:18:55,433.433 INFO    ] No existing commands found in stream
[2026-10-25 02:19:00,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:19:00,463.463 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 02:19:04,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:19:04,800.800 INFO    ] Checking for system updates...
[2026-10-25 02:19:04,837.837 INFO    ] 200
[2026-10-25 02:19:04,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:04,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:04,899.899 INFO    ] No update needed
[2026-10-25 02:19:04,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 02:19:04,936.936 INFO    ] 200
[2026-10-25 02:19:04,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:04,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:19:05,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:05,031.031 INFO    ] No camera update needed
[2026-10-25 02:19:05,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:19:05,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:19:05,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:19:05,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:19:07,086.086 INFO    ] ================================================
[2026-10-25 02:19:07,101.101 INFO    ] Launching Daemon at Sun Oct 25 02:19:07 IST 2026
[2026-10-25 02:19:07,112.112 INFO    ] ================================================
[2026-10-25 02:19:07,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:19:07
[2026-10-25 02:19:08,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:19:08,741.741 INFO    ] Initializing speech engine...
[2026-10-25 02:19:08,755.755 INFO    ] 2026-10-25 02:19:08
[2026-10-25 02:19:09,036.036 INFO    ] 2026-10-25 02:19:09
[2026-10-25 02:19:09,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:19:09,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:19:09,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:19:09,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:19:09,530.530 INFO    ] time= 25/10/2026 02:19:09
[2026-10-25 02:19:09,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:19:09,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:19:09,727.727 INFO    ] No existing commands found in stream
[2026-10-25 02:19:14,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:19:14,759.759 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 02:19:17,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:19:17,464.464 INFO    ] Checking for system updates...
[2026-10-25 02:19:17,555.555 INFO    ] 200
[2026-10-25 02:19:17,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:17,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:17,619.619 INFO    ] No update needed
[2026-10-25 02:19:17,621.621 INFO    ] Checking for camera pi updates...
[2026-10-25 02:19:17,656.656 INFO    ] 200
[2026-10-25 02:19:17,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:17,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:19:17,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:17,765.765 INFO    ] No camera update needed
[2026-10-25 02:19:17,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:19:17,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:19:17,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:19:17,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:19:19,820.820 INFO    ] ================================================
[2026-10-25 02:19:19,835.835 INFO    ] Launching Daemon at Sun Oct 25 02:19:19 IST 2026
[2026-10-25 02:19:19,846.846 INFO    ] ================================================
[2026-10-25 02:19:20,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:19:20
[2026-10-25 02:19:21,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:19:21,456.456 INFO    ] Initializing speech engine...
[2026-10-25 02:19:21,466.466 INFO    ] 2026-10-25 02:19:21
[2026-10-25 02:19:21,786.786 INFO    ] 2026-10-25 02:19:21
[2026-10-25 02:19:21,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:19:22,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:19:22,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:19:22,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:19:22,304.304 INFO    ] time= 25/10/2026 02:19:22
[2026-10-25 02:19:22,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:19:22,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:19:22,435.435 INFO    ] No existing commands found in stream
[2026-10-25 02:19:27,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:19:27,472.472 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 02:19:29,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:19:29,501.501 INFO    ] Checking for system updates...
[2026-10-25 02:19:29,538.538 INFO    ] 200
[2026-10-25 02:19:29,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:29,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:29,596.596 INFO    ] No update needed
[2026-10-25 02:19:29,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 02:19:29,632.632 INFO    ] 200
[2026-10-25 02:19:29,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:29,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:19:29,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:29,728.728 INFO    ] No camera update needed
[2026-10-25 02:19:29,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:19:29,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:19:29,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:19:29,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:19:31,785.785 INFO    ] ================================================
[2026-10-25 02:19:31,802.802 INFO    ] Launching Daemon at Sun Oct 25 02:19:31 IST 2026
[2026-10-25 02:19:31,814.814 INFO    ] ================================================
[2026-10-25 02:19:32,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:19:32
[2026-10-25 02:19:33,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:19:33,308.308 INFO    ] Initializing speech engine...
[2026-10-25 02:19:33,333.333 INFO    ] 2026-10-25 02:19:33
[2026-10-25 02:19:33,605.605 INFO    ] 2026-10-25 02:19:33
[2026-10-25 02:19:33,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:19:33,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:19:33,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:19:34,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:19:34,020.020 INFO    ] time= 25/10/2026 02:19:34
[2026-10-25 02:19:34,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:19:34,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:19:34,103.103 INFO    ] No existing commands found in stream
[2026-10-25 02:19:39,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:19:39,119.119 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 02:19:42,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:19:42,359.359 INFO    ] Checking for system updates...
[2026-10-25 02:19:42,396.396 INFO    ] 200
[2026-10-25 02:19:42,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:42,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:42,459.459 INFO    ] No update needed
[2026-10-25 02:19:42,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 02:19:42,498.498 INFO    ] 200
[2026-10-25 02:19:42,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:42,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:19:42,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:42,603.603 INFO    ] No camera update needed
[2026-10-25 02:19:42,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:19:42,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:19:42,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:19:42,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:19:44,661.661 INFO    ] ================================================
[2026-10-25 02:19:44,677.677 INFO    ] Launching Daemon at Sun Oct 25 02:19:44 IST 2026
[2026-10-25 02:19:44,688.688 INFO    ] ================================================
[2026-10-25 02:19:45,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:19:45
[2026-10-25 02:19:45,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:19:46,124.124 INFO    ] Initializing speech engine...
[2026-10-25 02:19:46,140.140 INFO    ] 2026-10-25 02:19:46
[2026-10-25 02:19:46,394.394 INFO    ] 2026-10-25 02:19:46
[2026-10-25 02:19:46,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:19:46,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:19:46,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:19:46,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:19:46,873.873 INFO    ] time= 25/10/2026 02:19:46
[2026-10-25 02:19:46,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:19:46,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:19:47,034.034 INFO    ] No existing commands found in stream
[2026-10-25 02:19:52,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:19:52,075.075 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 02:19:52,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:19:52,833.833 INFO    ] Checking for system updates...
[2026-10-25 02:19:52,876.876 INFO    ] 200
[2026-10-25 02:19:52,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:52,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:52,946.946 INFO    ] No update needed
[2026-10-25 02:19:52,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 02:19:52,987.987 INFO    ] 200
[2026-10-25 02:19:52,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:19:53,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:19:53,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:19:53,114.114 INFO    ] No camera update needed
[2026-10-25 02:19:53,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:19:53,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:19:53,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:19:53,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:19:55,173.173 INFO    ] ================================================
[2026-10-25 02:19:55,188.188 INFO    ] Launching Daemon at Sun Oct 25 02:19:55 IST 2026
[2026-10-25 02:19:55,199.199 INFO    ] ================================================
[2026-10-25 02:19:55,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:19:55
[2026-10-25 02:19:56,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:19:56,606.606 INFO    ] Initializing speech engine...
[2026-10-25 02:19:56,620.620 INFO    ] 2026-10-25 02:19:56
[2026-10-25 02:19:56,875.875 INFO    ] 2026-10-25 02:19:56
[2026-10-25 02:19:56,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:19:57,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:19:57,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:19:57,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:19:57,395.395 INFO    ] time= 25/10/2026 02:19:57
[2026-10-25 02:19:57,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:19:57,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:19:57,545.545 INFO    ] No existing commands found in stream
[2026-10-25 02:20:02,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:20:02,559.559 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 02:20:08,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:20:08,350.350 INFO    ] Checking for system updates...
[2026-10-25 02:20:08,393.393 INFO    ] 200
[2026-10-25 02:20:08,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:08,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:08,468.468 INFO    ] No update needed
[2026-10-25 02:20:08,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 02:20:08,506.506 INFO    ] 200
[2026-10-25 02:20:08,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:08,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:20:08,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:08,713.713 INFO    ] No camera update needed
[2026-10-25 02:20:08,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:20:08,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:20:08,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:20:08,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:20:10,772.772 INFO    ] ================================================
[2026-10-25 02:20:10,788.788 INFO    ] Launching Daemon at Sun Oct 25 02:20:10 IST 2026
[2026-10-25 02:20:10,799.799 INFO    ] ================================================
[2026-10-25 02:20:11,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:20:11
[2026-10-25 02:20:11,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:20:12,216.216 INFO    ] Initializing speech engine...
[2026-10-25 02:20:12,225.225 INFO    ] 2026-10-25 02:20:12
[2026-10-25 02:20:12,471.471 INFO    ] 2026-10-25 02:20:12
[2026-10-25 02:20:12,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:20:12,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:20:12,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:20:12,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:20:12,935.935 INFO    ] time= 25/10/2026 02:20:12
[2026-10-25 02:20:12,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:20:13,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:20:13,157.157 INFO    ] No existing commands found in stream
[2026-10-25 02:20:18,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:20:18,186.186 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 02:20:22,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:20:22,274.274 INFO    ] Checking for system updates...
[2026-10-25 02:20:22,315.315 INFO    ] 200
[2026-10-25 02:20:22,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:22,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:22,377.377 INFO    ] No update needed
[2026-10-25 02:20:22,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 02:20:22,419.419 INFO    ] 200
[2026-10-25 02:20:22,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:22,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:20:22,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:22,520.520 INFO    ] No camera update needed
[2026-10-25 02:20:22,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:20:22,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:20:22,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:20:22,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:20:24,579.579 INFO    ] ================================================
[2026-10-25 02:20:24,595.595 INFO    ] Launching Daemon at Sun Oct 25 02:20:24 IST 2026
[2026-10-25 02:20:24,606.606 INFO    ] ================================================
[2026-10-25 02:20:25,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:20:25
[2026-10-25 02:20:25,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:20:26,064.064 INFO    ] Initializing speech engine...
[2026-10-25 02:20:26,070.070 INFO    ] 2026-10-25 02:20:26
[2026-10-25 02:20:26,319.319 INFO    ] 2026-10-25 02:20:26
[2026-10-25 02:20:26,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:20:26,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:20:26,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:20:26,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:20:26,794.794 INFO    ] time= 25/10/2026 02:20:26
[2026-10-25 02:20:26,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:20:26,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:20:26,983.983 INFO    ] No existing commands found in stream
[2026-10-25 02:20:32,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:20:32,012.012 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 02:20:33,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:20:33,543.543 INFO    ] Checking for system updates...
[2026-10-25 02:20:33,580.580 INFO    ] 200
[2026-10-25 02:20:33,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:33,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:33,639.639 INFO    ] No update needed
[2026-10-25 02:20:33,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 02:20:33,681.681 INFO    ] 200
[2026-10-25 02:20:33,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:33,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:20:33,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:33,779.779 INFO    ] No camera update needed
[2026-10-25 02:20:33,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:20:33,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:20:33,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:20:33,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:20:35,865.865 INFO    ] ================================================
[2026-10-25 02:20:35,881.881 INFO    ] Launching Daemon at Sun Oct 25 02:20:35 IST 2026
[2026-10-25 02:20:35,894.894 INFO    ] ================================================
[2026-10-25 02:20:36,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:20:36
[2026-10-25 02:20:37,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:20:37,313.313 INFO    ] Initializing speech engine...
[2026-10-25 02:20:37,322.322 INFO    ] 2026-10-25 02:20:37
[2026-10-25 02:20:37,566.566 INFO    ] 2026-10-25 02:20:37
[2026-10-25 02:20:37,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:20:37,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:20:37,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:20:37,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:20:38,042.042 INFO    ] time= 25/10/2026 02:20:37
[2026-10-25 02:20:38,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:20:38,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:20:38,240.240 INFO    ] No existing commands found in stream
[2026-10-25 02:20:43,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:20:43,265.265 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 02:20:45,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:20:45,602.602 INFO    ] Checking for system updates...
[2026-10-25 02:20:45,643.643 INFO    ] 200
[2026-10-25 02:20:45,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:45,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:45,709.709 INFO    ] No update needed
[2026-10-25 02:20:45,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 02:20:45,746.746 INFO    ] 200
[2026-10-25 02:20:45,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:45,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:20:45,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:45,841.841 INFO    ] No camera update needed
[2026-10-25 02:20:45,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:20:45,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:20:45,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:20:45,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:20:47,898.898 INFO    ] ================================================
[2026-10-25 02:20:47,921.921 INFO    ] Launching Daemon at Sun Oct 25 02:20:47 IST 2026
[2026-10-25 02:20:47,932.932 INFO    ] ================================================
[2026-10-25 02:20:48,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:20:48
[2026-10-25 02:20:49,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:20:49,384.384 INFO    ] Initializing speech engine...
[2026-10-25 02:20:49,393.393 INFO    ] 2026-10-25 02:20:49
[2026-10-25 02:20:49,640.640 INFO    ] 2026-10-25 02:20:49
[2026-10-25 02:20:49,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:20:49,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:20:49,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:20:50,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:20:50,008.008 INFO    ] time= 25/10/2026 02:20:50
[2026-10-25 02:20:50,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:20:50,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:20:50,185.185 INFO    ] No existing commands found in stream
[2026-10-25 02:20:55,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:20:55,216.216 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 02:20:55,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:20:55,861.861 INFO    ] Checking for system updates...
[2026-10-25 02:20:55,899.899 INFO    ] 200
[2026-10-25 02:20:55,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:55,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:55,967.967 INFO    ] No update needed
[2026-10-25 02:20:55,970.970 INFO    ] Checking for camera pi updates...
[2026-10-25 02:20:56,005.005 INFO    ] 200
[2026-10-25 02:20:56,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:20:56,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:20:56,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:20:56,106.106 INFO    ] No camera update needed
[2026-10-25 02:20:56,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:20:56,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:20:56,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:20:56,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:20:58,166.166 INFO    ] ================================================
[2026-10-25 02:20:58,183.183 INFO    ] Launching Daemon at Sun Oct 25 02:20:58 IST 2026
[2026-10-25 02:20:58,196.196 INFO    ] ================================================
[2026-10-25 02:20:58,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:20:58
[2026-10-25 02:20:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:20:59,845.845 INFO    ] Initializing speech engine...
[2026-10-25 02:20:59,858.858 INFO    ] 2026-10-25 02:20:59
[2026-10-25 02:21:00,172.172 INFO    ] 2026-10-25 02:21:00
[2026-10-25 02:21:00,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:00,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:00,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:00,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:00,687.687 INFO    ] time= 25/10/2026 02:21:00
[2026-10-25 02:21:00,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:00,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:00,844.844 INFO    ] No existing commands found in stream
[2026-10-25 02:21:05,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:21:05,877.877 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 02:21:07,540.540 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:21:07,543.543 INFO    ] Checking for system updates...
[2026-10-25 02:21:07,581.581 INFO    ] 200
[2026-10-25 02:21:07,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:07,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:21:07,643.643 INFO    ] No update needed
[2026-10-25 02:21:07,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 02:21:07,684.684 INFO    ] 200
[2026-10-25 02:21:07,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:07,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:21:07,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:21:07,791.791 INFO    ] No camera update needed
[2026-10-25 02:21:07,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:21:07,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:21:07,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:21:07,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:21:09,851.851 INFO    ] ================================================
[2026-10-25 02:21:09,867.867 INFO    ] Launching Daemon at Sun Oct 25 02:21:09 IST 2026
[2026-10-25 02:21:09,882.882 INFO    ] ================================================
[2026-10-25 02:21:10,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:21:10
[2026-10-25 02:21:11,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:21:11,343.343 INFO    ] Initializing speech engine...
[2026-10-25 02:21:11,353.353 INFO    ] 2026-10-25 02:21:11
[2026-10-25 02:21:11,612.612 INFO    ] 2026-10-25 02:21:11
[2026-10-25 02:21:11,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:11,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:11,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:12,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:12,107.107 INFO    ] time= 25/10/2026 02:21:12
[2026-10-25 02:21:12,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:12,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:12,291.291 INFO    ] No existing commands found in stream
[2026-10-25 02:21:17,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:21:17,324.324 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 02:21:18,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:21:18,053.053 INFO    ] Checking for system updates...
[2026-10-25 02:21:18,094.094 INFO    ] 200
[2026-10-25 02:21:18,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:18,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:21:18,153.153 INFO    ] No update needed
[2026-10-25 02:21:18,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 02:21:18,191.191 INFO    ] 200
[2026-10-25 02:21:18,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:18,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:21:18,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:21:18,303.303 INFO    ] No camera update needed
[2026-10-25 02:21:18,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:21:18,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:21:18,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:21:18,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:21:20,360.360 INFO    ] ================================================
[2026-10-25 02:21:20,375.375 INFO    ] Launching Daemon at Sun Oct 25 02:21:20 IST 2026
[2026-10-25 02:21:20,386.386 INFO    ] ================================================
[2026-10-25 02:21:20,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:21:20
[2026-10-25 02:21:21,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:21:21,857.857 INFO    ] Initializing speech engine...
[2026-10-25 02:21:21,871.871 INFO    ] 2026-10-25 02:21:21
[2026-10-25 02:21:22,152.152 INFO    ] 2026-10-25 02:21:22
[2026-10-25 02:21:22,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:22,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:22,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:22,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:22,653.653 INFO    ] time= 25/10/2026 02:21:22
[2026-10-25 02:21:22,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:22,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:22,829.829 INFO    ] No existing commands found in stream
[2026-10-25 02:21:27,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:21:27,844.844 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 02:21:31,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:21:31,874.874 INFO    ] Checking for system updates...
[2026-10-25 02:21:31,912.912 INFO    ] 200
[2026-10-25 02:21:31,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:31,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:31,986.986 INFO    ] No update needed
[2026-10-25 02:21:31,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 02:21:32,030.030 INFO    ] 200
[2026-10-25 02:21:32,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:32,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:21:32,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:32,118.118 INFO    ] No camera update needed
[2026-10-25 02:21:32,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:21:32,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:21:32,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:21:32,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:21:34,179.179 INFO    ] ================================================
[2026-10-25 02:21:34,195.195 INFO    ] Launching Daemon at Sun Oct 25 02:21:34 IST 2026
[2026-10-25 02:21:34,206.206 INFO    ] ================================================
[2026-10-25 02:21:34,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:21:34
[2026-10-25 02:21:35,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:21:35,618.618 INFO    ] Initializing speech engine...
[2026-10-25 02:21:35,627.627 INFO    ] 2026-10-25 02:21:35
[2026-10-25 02:21:35,930.930 INFO    ] 2026-10-25 02:21:35
[2026-10-25 02:21:35,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:36,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:36,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:36,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:36,319.319 INFO    ] time= 25/10/2026 02:21:36
[2026-10-25 02:21:36,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:36,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:36,446.446 INFO    ] No existing commands found in stream
[2026-10-25 02:21:41,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:21:41,464.464 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 02:21:42,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:21:42,862.862 INFO    ] Checking for system updates...
[2026-10-25 02:21:42,902.902 INFO    ] 200
[2026-10-25 02:21:42,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:42,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:42,963.963 INFO    ] No update needed
[2026-10-25 02:21:42,966.966 INFO    ] Checking for camera pi updates...
[2026-10-25 02:21:43,006.006 INFO    ] 200
[2026-10-25 02:21:43,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:43,057.057 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:21:43,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:43,107.107 INFO    ] No camera update needed
[2026-10-25 02:21:43,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:21:43,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:21:43,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:21:43,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:21:45,167.167 INFO    ] ================================================
[2026-10-25 02:21:45,183.183 INFO    ] Launching Daemon at Sun Oct 25 02:21:45 IST 2026
[2026-10-25 02:21:45,194.194 INFO    ] ================================================
[2026-10-25 02:21:45,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:21:45
[2026-10-25 02:21:46,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:21:46,646.646 INFO    ] Initializing speech engine...
[2026-10-25 02:21:46,655.655 INFO    ] 2026-10-25 02:21:46
[2026-10-25 02:21:46,904.904 INFO    ] 2026-10-25 02:21:46
[2026-10-25 02:21:46,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:47,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:47,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:47,431.431 INFO    ] time= 25/10/2026 02:21:47
[2026-10-25 02:21:47,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:47,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:47,592.592 INFO    ] No existing commands found in stream
[2026-10-25 02:21:52,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:21:52,623.623 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 02:21:54,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:21:54,798.798 INFO    ] Checking for system updates...
[2026-10-25 02:21:54,840.840 INFO    ] 200
[2026-10-25 02:21:54,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:54,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:54,901.901 INFO    ] No update needed
[2026-10-25 02:21:54,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 02:21:54,938.938 INFO    ] 200
[2026-10-25 02:21:54,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:21:54,982.982 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:21:55,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:21:55,031.031 INFO    ] No camera update needed
[2026-10-25 02:21:55,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:21:55,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:21:55,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:21:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:21:57,087.087 INFO    ] ================================================
[2026-10-25 02:21:57,103.103 INFO    ] Launching Daemon at Sun Oct 25 02:21:57 IST 2026
[2026-10-25 02:21:57,115.115 INFO    ] ================================================
[2026-10-25 02:21:57,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:21:57
[2026-10-25 02:21:58,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:21:58,759.759 INFO    ] Initializing speech engine...
[2026-10-25 02:21:58,768.768 INFO    ] 2026-10-25 02:21:58
[2026-10-25 02:21:59,088.088 INFO    ] 2026-10-25 02:21:59
[2026-10-25 02:21:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:21:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:21:59,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:21:59,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:21:59,594.594 INFO    ] time= 25/10/2026 02:21:59
[2026-10-25 02:21:59,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:21:59,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:21:59,747.747 INFO    ] No existing commands found in stream
[2026-10-25 02:22:04,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:22:04,766.766 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 02:22:05,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:22:05,946.946 INFO    ] Checking for system updates...
[2026-10-25 02:22:05,986.986 INFO    ] 200
[2026-10-25 02:22:05,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:06,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:06,045.045 INFO    ] No update needed
[2026-10-25 02:22:06,048.048 INFO    ] Checking for camera pi updates...
[2026-10-25 02:22:06,082.082 INFO    ] 200
[2026-10-25 02:22:06,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:06,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:22:06,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:06,185.185 INFO    ] No camera update needed
[2026-10-25 02:22:06,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:22:06,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:22:06,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:22:06,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:22:08,243.243 INFO    ] ================================================
[2026-10-25 02:22:08,258.258 INFO    ] Launching Daemon at Sun Oct 25 02:22:08 IST 2026
[2026-10-25 02:22:08,269.269 INFO    ] ================================================
[2026-10-25 02:22:08,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:22:08
[2026-10-25 02:22:09,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:22:09,719.719 INFO    ] Initializing speech engine...
[2026-10-25 02:22:09,728.728 INFO    ] 2026-10-25 02:22:09
[2026-10-25 02:22:10,026.026 INFO    ] 2026-10-25 02:22:09
[2026-10-25 02:22:10,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:22:10,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:22:10,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:22:10,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:22:10,435.435 INFO    ] time= 25/10/2026 02:22:10
[2026-10-25 02:22:10,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:22:10,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:22:10,523.523 INFO    ] No existing commands found in stream
[2026-10-25 02:22:15,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:22:15,538.538 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 02:22:19,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:22:19,295.295 INFO    ] Checking for system updates...
[2026-10-25 02:22:19,333.333 INFO    ] 200
[2026-10-25 02:22:19,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:19,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:22:19,398.398 INFO    ] No update needed
[2026-10-25 02:22:19,400.400 INFO    ] Checking for camera pi updates...
[2026-10-25 02:22:19,434.434 INFO    ] 200
[2026-10-25 02:22:19,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:19,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:22:19,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:22:19,650.650 INFO    ] No camera update needed
[2026-10-25 02:22:19,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:22:19,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:22:19,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:22:19,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:22:21,707.707 INFO    ] ================================================
[2026-10-25 02:22:21,723.723 INFO    ] Launching Daemon at Sun Oct 25 02:22:21 IST 2026
[2026-10-25 02:22:21,734.734 INFO    ] ================================================
[2026-10-25 02:22:22,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:22:22
[2026-10-25 02:22:22,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:22:23,201.201 INFO    ] Initializing speech engine...
[2026-10-25 02:22:23,210.210 INFO    ] 2026-10-25 02:22:23
[2026-10-25 02:22:23,491.491 INFO    ] 2026-10-25 02:22:23
[2026-10-25 02:22:23,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:22:23,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:22:23,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:22:23,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:22:24,028.028 INFO    ] time= 25/10/2026 02:22:24
[2026-10-25 02:22:24,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:22:24,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:22:24,183.183 INFO    ] No existing commands found in stream
[2026-10-25 02:22:29,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:22:29,200.200 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 02:22:30,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:22:30,512.512 INFO    ] Checking for system updates...
[2026-10-25 02:22:30,549.549 INFO    ] 200
[2026-10-25 02:22:30,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:30,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:22:30,609.609 INFO    ] No update needed
[2026-10-25 02:22:30,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 02:22:30,647.647 INFO    ] 200
[2026-10-25 02:22:30,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:30,692.692 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:22:30,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:22:30,756.756 INFO    ] No camera update needed
[2026-10-25 02:22:30,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:22:30,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:22:30,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:22:30,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:22:32,820.820 INFO    ] ================================================
[2026-10-25 02:22:32,885.885 INFO    ] Launching Daemon at Sun Oct 25 02:22:32 IST 2026
[2026-10-25 02:22:32,900.900 INFO    ] ================================================
[2026-10-25 02:22:33,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:22:33
[2026-10-25 02:22:34,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:22:34,398.398 INFO    ] Initializing speech engine...
[2026-10-25 02:22:34,406.406 INFO    ] 2026-10-25 02:22:34
[2026-10-25 02:22:34,664.664 INFO    ] 2026-10-25 02:22:34
[2026-10-25 02:22:34,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:22:34,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:22:34,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:22:35,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:22:35,143.143 INFO    ] time= 25/10/2026 02:22:35
[2026-10-25 02:22:35,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:22:35,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:22:35,345.345 INFO    ] No existing commands found in stream
[2026-10-25 02:22:40,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:22:40,375.375 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 02:22:41,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:22:41,762.762 INFO    ] Checking for system updates...
[2026-10-25 02:22:41,799.799 INFO    ] 200
[2026-10-25 02:22:41,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:41,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:41,862.862 INFO    ] No update needed
[2026-10-25 02:22:41,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 02:22:41,898.898 INFO    ] 200
[2026-10-25 02:22:41,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:41,943.943 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:22:41,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:41,991.991 INFO    ] No camera update needed
[2026-10-25 02:22:41,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:22:41,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:22:42,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:22:42,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:22:44,047.047 INFO    ] ================================================
[2026-10-25 02:22:44,063.063 INFO    ] Launching Daemon at Sun Oct 25 02:22:44 IST 2026
[2026-10-25 02:22:44,073.073 INFO    ] ================================================
[2026-10-25 02:22:44,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:22:44
[2026-10-25 02:22:45,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:22:45,646.646 INFO    ] Initializing speech engine...
[2026-10-25 02:22:45,653.653 INFO    ] 2026-10-25 02:22:45
[2026-10-25 02:22:45,923.923 INFO    ] 2026-10-25 02:22:45
[2026-10-25 02:22:45,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:22:46,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:22:46,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:22:46,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:22:46,419.419 INFO    ] time= 25/10/2026 02:22:46
[2026-10-25 02:22:46,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:22:46,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:22:46,631.631 INFO    ] No existing commands found in stream
[2026-10-25 02:22:51,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:22:51,660.660 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 02:22:55,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:22:55,197.197 INFO    ] Checking for system updates...
[2026-10-25 02:22:55,235.235 INFO    ] 200
[2026-10-25 02:22:55,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:55,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:55,294.294 INFO    ] No update needed
[2026-10-25 02:22:55,297.297 INFO    ] Checking for camera pi updates...
[2026-10-25 02:22:55,333.333 INFO    ] 200
[2026-10-25 02:22:55,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:22:55,376.376 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:22:55,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:22:55,427.427 INFO    ] No camera update needed
[2026-10-25 02:22:55,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:22:55,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:22:55,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:22:55,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:22:57,482.482 INFO    ] ================================================
[2026-10-25 02:22:57,497.497 INFO    ] Launching Daemon at Sun Oct 25 02:22:57 IST 2026
[2026-10-25 02:22:57,508.508 INFO    ] ================================================
[2026-10-25 02:22:58,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:22:58
[2026-10-25 02:22:58,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:22:58,898.898 INFO    ] Initializing speech engine...
[2026-10-25 02:22:58,906.906 INFO    ] 2026-10-25 02:22:58
[2026-10-25 02:22:59,174.174 INFO    ] 2026-10-25 02:22:59
[2026-10-25 02:22:59,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:22:59,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:22:59,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:22:59,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:22:59,636.636 INFO    ] time= 25/10/2026 02:22:59
[2026-10-25 02:22:59,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:22:59,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:22:59,828.828 INFO    ] No existing commands found in stream
[2026-10-25 02:23:04,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:23:04,841.841 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 02:23:06,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:23:06,164.164 INFO    ] Checking for system updates...
[2026-10-25 02:23:06,201.201 INFO    ] 200
[2026-10-25 02:23:06,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:06,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:06,268.268 INFO    ] No update needed
[2026-10-25 02:23:06,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 02:23:06,306.306 INFO    ] 200
[2026-10-25 02:23:06,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:06,350.350 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:23:06,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:06,402.402 INFO    ] No camera update needed
[2026-10-25 02:23:06,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:23:06,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:23:06,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:23:06,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:23:08,467.467 INFO    ] ================================================
[2026-10-25 02:23:08,483.483 INFO    ] Launching Daemon at Sun Oct 25 02:23:08 IST 2026
[2026-10-25 02:23:08,494.494 INFO    ] ================================================
[2026-10-25 02:23:09,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:23:09
[2026-10-25 02:23:09,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:23:10,085.085 INFO    ] Initializing speech engine...
[2026-10-25 02:23:10,093.093 INFO    ] 2026-10-25 02:23:10
[2026-10-25 02:23:10,348.348 INFO    ] 2026-10-25 02:23:10
[2026-10-25 02:23:10,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:23:10,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:23:10,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:23:10,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:23:10,891.891 INFO    ] time= 25/10/2026 02:23:10
[2026-10-25 02:23:10,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:23:10,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:23:11,039.039 INFO    ] No existing commands found in stream
[2026-10-25 02:23:16,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:23:16,056.056 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 02:23:18,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:23:18,772.772 INFO    ] Checking for system updates...
[2026-10-25 02:23:18,812.812 INFO    ] 200
[2026-10-25 02:23:18,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:18,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:18,887.887 INFO    ] No update needed
[2026-10-25 02:23:18,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 02:23:18,925.925 INFO    ] 200
[2026-10-25 02:23:18,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:18,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:23:19,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:19,024.024 INFO    ] No camera update needed
[2026-10-25 02:23:19,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:23:19,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:23:19,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:23:19,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:23:21,083.083 INFO    ] ================================================
[2026-10-25 02:23:21,098.098 INFO    ] Launching Daemon at Sun Oct 25 02:23:21 IST 2026
[2026-10-25 02:23:21,108.108 INFO    ] ================================================
[2026-10-25 02:23:21,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:23:21
[2026-10-25 02:23:22,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:23:22,557.557 INFO    ] Initializing speech engine...
[2026-10-25 02:23:22,564.564 INFO    ] 2026-10-25 02:23:22
[2026-10-25 02:23:22,818.818 INFO    ] 2026-10-25 02:23:22
[2026-10-25 02:23:22,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:23:23,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:23:23,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:23:23,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:23:23,320.320 INFO    ] time= 25/10/2026 02:23:23
[2026-10-25 02:23:23,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:23:23,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:23:23,497.497 INFO    ] No existing commands found in stream
[2026-10-25 02:23:28,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:23:28,522.522 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 02:23:31,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:23:31,538.538 INFO    ] Checking for system updates...
[2026-10-25 02:23:31,578.578 INFO    ] 200
[2026-10-25 02:23:31,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:31,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:23:31,643.643 INFO    ] No update needed
[2026-10-25 02:23:31,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 02:23:31,683.683 INFO    ] 200
[2026-10-25 02:23:31,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:31,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:23:31,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:23:31,765.765 INFO    ] No camera update needed
[2026-10-25 02:23:31,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:23:31,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:23:31,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:23:31,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:23:33,825.825 INFO    ] ================================================
[2026-10-25 02:23:33,840.840 INFO    ] Launching Daemon at Sun Oct 25 02:23:33 IST 2026
[2026-10-25 02:23:33,850.850 INFO    ] ================================================
[2026-10-25 02:23:34,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:23:34
[2026-10-25 02:23:35,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:23:35,302.302 INFO    ] Initializing speech engine...
[2026-10-25 02:23:35,311.311 INFO    ] 2026-10-25 02:23:35
[2026-10-25 02:23:35,572.572 INFO    ] 2026-10-25 02:23:35
[2026-10-25 02:23:35,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:23:35,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:23:35,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:23:35,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:23:36,040.040 INFO    ] time= 25/10/2026 02:23:35
[2026-10-25 02:23:36,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:23:36,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:23:36,231.231 INFO    ] No existing commands found in stream
[2026-10-25 02:23:41,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:23:41,257.257 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 02:23:45,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:23:45,598.598 INFO    ] Checking for system updates...
[2026-10-25 02:23:45,634.634 INFO    ] 200
[2026-10-25 02:23:45,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:45,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:45,691.691 INFO    ] No update needed
[2026-10-25 02:23:45,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 02:23:45,727.727 INFO    ] 200
[2026-10-25 02:23:45,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:45,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:23:45,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:45,823.823 INFO    ] No camera update needed
[2026-10-25 02:23:45,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:23:45,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:23:45,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:23:45,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:23:47,879.879 INFO    ] ================================================
[2026-10-25 02:23:47,894.894 INFO    ] Launching Daemon at Sun Oct 25 02:23:47 IST 2026
[2026-10-25 02:23:47,904.904 INFO    ] ================================================
[2026-10-25 02:23:48,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:23:48
[2026-10-25 02:23:49,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:23:49,513.513 INFO    ] Initializing speech engine...
[2026-10-25 02:23:49,522.522 INFO    ] 2026-10-25 02:23:49
[2026-10-25 02:23:49,800.800 INFO    ] 2026-10-25 02:23:49
[2026-10-25 02:23:49,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:23:50,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:23:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:23:50,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:23:50,336.336 INFO    ] time= 25/10/2026 02:23:50
[2026-10-25 02:23:50,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:23:50,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:23:50,490.490 INFO    ] No existing commands found in stream
[2026-10-25 02:23:55,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:23:55,524.524 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 02:23:59,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:23:59,374.374 INFO    ] Checking for system updates...
[2026-10-25 02:23:59,412.412 INFO    ] 200
[2026-10-25 02:23:59,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:59,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:59,471.471 INFO    ] No update needed
[2026-10-25 02:23:59,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 02:23:59,508.508 INFO    ] 200
[2026-10-25 02:23:59,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:23:59,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:23:59,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:23:59,604.604 INFO    ] No camera update needed
[2026-10-25 02:23:59,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:23:59,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:23:59,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:23:59,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:24:01,659.659 INFO    ] ================================================
[2026-10-25 02:24:01,674.674 INFO    ] Launching Daemon at Sun Oct 25 02:24:01 IST 2026
[2026-10-25 02:24:01,684.684 INFO    ] ================================================
[2026-10-25 02:24:02,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:24:02
[2026-10-25 02:24:03,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:24:03,324.324 INFO    ] Initializing speech engine...
[2026-10-25 02:24:03,328.328 INFO    ] 2026-10-25 02:24:03
[2026-10-25 02:24:03,667.667 INFO    ] 2026-10-25 02:24:03
[2026-10-25 02:24:03,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:24:03,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:24:03,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:24:04,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:24:04,076.076 INFO    ] time= 25/10/2026 02:24:04
[2026-10-25 02:24:04,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:24:04,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:24:04,198.198 INFO    ] No existing commands found in stream
[2026-10-25 02:24:09,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:24:09,213.213 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 02:24:13,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:24:13,398.398 INFO    ] Checking for system updates...
[2026-10-25 02:24:13,434.434 INFO    ] 200
[2026-10-25 02:24:13,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:13,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:13,502.502 INFO    ] No update needed
[2026-10-25 02:24:13,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 02:24:13,538.538 INFO    ] 200
[2026-10-25 02:24:13,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:13,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:24:13,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:13,637.637 INFO    ] No camera update needed
[2026-10-25 02:24:13,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:24:13,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:24:13,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:24:13,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:24:15,690.690 INFO    ] ================================================
[2026-10-25 02:24:15,705.705 INFO    ] Launching Daemon at Sun Oct 25 02:24:15 IST 2026
[2026-10-25 02:24:15,716.716 INFO    ] ================================================
[2026-10-25 02:24:16,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:24:16
[2026-10-25 02:24:16,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:24:17,151.151 INFO    ] Initializing speech engine...
[2026-10-25 02:24:17,158.158 INFO    ] 2026-10-25 02:24:17
[2026-10-25 02:24:17,453.453 INFO    ] 2026-10-25 02:24:17
[2026-10-25 02:24:17,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:24:17,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:24:17,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:24:17,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:24:17,937.937 INFO    ] time= 25/10/2026 02:24:17
[2026-10-25 02:24:17,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:24:17,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:24:18,089.089 INFO    ] No existing commands found in stream
[2026-10-25 02:24:23,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:24:23,104.104 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 02:24:25,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:24:25,641.641 INFO    ] Checking for system updates...
[2026-10-25 02:24:25,677.677 INFO    ] 200
[2026-10-25 02:24:25,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:25,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:25,742.742 INFO    ] No update needed
[2026-10-25 02:24:25,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 02:24:25,778.778 INFO    ] 200
[2026-10-25 02:24:25,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:25,826.826 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:24:25,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:25,962.962 INFO    ] No camera update needed
[2026-10-25 02:24:25,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:24:25,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:24:25,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:24:25,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:24:28,018.018 INFO    ] ================================================
[2026-10-25 02:24:28,033.033 INFO    ] Launching Daemon at Sun Oct 25 02:24:28 IST 2026
[2026-10-25 02:24:28,048.048 INFO    ] ================================================
[2026-10-25 02:24:28,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:24:28
[2026-10-25 02:24:29,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:24:29,649.649 INFO    ] Initializing speech engine...
[2026-10-25 02:24:29,657.657 INFO    ] 2026-10-25 02:24:29
[2026-10-25 02:24:29,930.930 INFO    ] 2026-10-25 02:24:29
[2026-10-25 02:24:29,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:24:30,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:24:30,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:24:30,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:24:30,411.411 INFO    ] time= 25/10/2026 02:24:30
[2026-10-25 02:24:30,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:24:30,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:24:30,568.568 INFO    ] No existing commands found in stream
[2026-10-25 02:24:35,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:24:35,608.608 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 02:24:39,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:24:39,575.575 INFO    ] Checking for system updates...
[2026-10-25 02:24:39,611.611 INFO    ] 200
[2026-10-25 02:24:39,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:39,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:24:39,676.676 INFO    ] No update needed
[2026-10-25 02:24:39,678.678 INFO    ] Checking for camera pi updates...
[2026-10-25 02:24:39,715.715 INFO    ] 200
[2026-10-25 02:24:39,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:39,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:24:39,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:24:39,820.820 INFO    ] No camera update needed
[2026-10-25 02:24:39,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:24:39,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:24:39,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:24:39,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:24:41,883.883 INFO    ] ================================================
[2026-10-25 02:24:41,897.897 INFO    ] Launching Daemon at Sun Oct 25 02:24:41 IST 2026
[2026-10-25 02:24:41,908.908 INFO    ] ================================================
[2026-10-25 02:24:42,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:24:42
[2026-10-25 02:24:43,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:24:43,395.395 INFO    ] Initializing speech engine...
[2026-10-25 02:24:43,402.402 INFO    ] 2026-10-25 02:24:43
[2026-10-25 02:24:43,694.694 INFO    ] 2026-10-25 02:24:43
[2026-10-25 02:24:43,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:24:43,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:24:43,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:24:44,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:24:44,098.098 INFO    ] time= 25/10/2026 02:24:44
[2026-10-25 02:24:44,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:24:44,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:24:44,265.265 INFO    ] No existing commands found in stream
[2026-10-25 02:24:49,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:24:49,282.282 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 02:24:53,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:24:53,642.642 INFO    ] Checking for system updates...
[2026-10-25 02:24:53,679.679 INFO    ] 200
[2026-10-25 02:24:53,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:53,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:53,737.737 INFO    ] No update needed
[2026-10-25 02:24:53,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 02:24:53,773.773 INFO    ] 200
[2026-10-25 02:24:53,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:24:53,820.820 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:24:53,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:24:53,874.874 INFO    ] No camera update needed
[2026-10-25 02:24:53,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:24:53,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:24:53,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:24:53,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:24:55,928.928 INFO    ] ================================================
[2026-10-25 02:24:55,943.943 INFO    ] Launching Daemon at Sun Oct 25 02:24:55 IST 2026
[2026-10-25 02:24:55,954.954 INFO    ] ================================================
[2026-10-25 02:24:56,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:24:56
[2026-10-25 02:24:57,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:24:57,385.385 INFO    ] Initializing speech engine...
[2026-10-25 02:24:57,394.394 INFO    ] 2026-10-25 02:24:57
[2026-10-25 02:24:57,638.638 INFO    ] 2026-10-25 02:24:57
[2026-10-25 02:24:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:24:57,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:24:57,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:24:58,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:24:58,109.109 INFO    ] time= 25/10/2026 02:24:58
[2026-10-25 02:24:58,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:24:58,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:24:58,261.261 INFO    ] No existing commands found in stream
[2026-10-25 02:25:03,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:25:03,276.276 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 02:25:07,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:25:07,307.307 INFO    ] Checking for system updates...
[2026-10-25 02:25:07,344.344 INFO    ] 200
[2026-10-25 02:25:07,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:07,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:07,411.411 INFO    ] No update needed
[2026-10-25 02:25:07,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 02:25:07,452.452 INFO    ] 200
[2026-10-25 02:25:07,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:07,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:25:07,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:07,547.547 INFO    ] No camera update needed
[2026-10-25 02:25:07,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:25:07,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:25:07,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:25:07,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:25:09,603.603 INFO    ] ================================================
[2026-10-25 02:25:09,618.618 INFO    ] Launching Daemon at Sun Oct 25 02:25:09 IST 2026
[2026-10-25 02:25:09,628.628 INFO    ] ================================================
[2026-10-25 02:25:10,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:25:10
[2026-10-25 02:25:10,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:25:11,037.037 INFO    ] Initializing speech engine...
[2026-10-25 02:25:11,046.046 INFO    ] 2026-10-25 02:25:11
[2026-10-25 02:25:11,322.322 INFO    ] 2026-10-25 02:25:11
[2026-10-25 02:25:11,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:25:11,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:25:11,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:25:11,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:25:11,822.822 INFO    ] time= 25/10/2026 02:25:11
[2026-10-25 02:25:11,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:25:11,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:25:11,959.959 INFO    ] No existing commands found in stream
[2026-10-25 02:25:16,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:25:16,975.975 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 02:25:17,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:25:17,637.637 INFO    ] Checking for system updates...
[2026-10-25 02:25:17,678.678 INFO    ] 200
[2026-10-25 02:25:17,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:17,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:25:17,745.745 INFO    ] No update needed
[2026-10-25 02:25:17,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 02:25:17,783.783 INFO    ] 200
[2026-10-25 02:25:17,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:17,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:25:17,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:25:17,891.891 INFO    ] No camera update needed
[2026-10-25 02:25:17,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:25:17,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:25:17,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:25:17,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:25:19,950.950 INFO    ] ================================================
[2026-10-25 02:25:19,965.965 INFO    ] Launching Daemon at Sun Oct 25 02:25:19 IST 2026
[2026-10-25 02:25:19,976.976 INFO    ] ================================================
[2026-10-25 02:25:20,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:25:20
[2026-10-25 02:25:21,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:25:21,429.429 INFO    ] Initializing speech engine...
[2026-10-25 02:25:21,439.439 INFO    ] 2026-10-25 02:25:21
[2026-10-25 02:25:21,688.688 INFO    ] 2026-10-25 02:25:21
[2026-10-25 02:25:21,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:25:21,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:25:21,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:25:22,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:25:22,208.208 INFO    ] time= 25/10/2026 02:25:22
[2026-10-25 02:25:22,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:25:22,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:25:22,388.388 INFO    ] No existing commands found in stream
[2026-10-25 02:25:27,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:25:27,414.414 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 02:25:30,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:25:30,675.675 INFO    ] Checking for system updates...
[2026-10-25 02:25:30,717.717 INFO    ] 200
[2026-10-25 02:25:30,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:30,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:30,777.777 INFO    ] No update needed
[2026-10-25 02:25:30,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 02:25:30,819.819 INFO    ] 200
[2026-10-25 02:25:30,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:30,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:25:30,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:30,934.934 INFO    ] No camera update needed
[2026-10-25 02:25:30,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:25:30,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:25:30,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:25:30,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:25:32,992.992 INFO    ] ================================================
[2026-10-25 02:25:33,008.008 INFO    ] Launching Daemon at Sun Oct 25 02:25:33 IST 2026
[2026-10-25 02:25:33,019.019 INFO    ] ================================================
[2026-10-25 02:25:33,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:25:33
[2026-10-25 02:25:34,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:25:34,488.488 INFO    ] Initializing speech engine...
[2026-10-25 02:25:34,497.497 INFO    ] 2026-10-25 02:25:34
[2026-10-25 02:25:34,759.759 INFO    ] 2026-10-25 02:25:34
[2026-10-25 02:25:34,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:25:35,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:25:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:25:35,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:25:35,217.217 INFO    ] time= 25/10/2026 02:25:35
[2026-10-25 02:25:35,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:25:35,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:25:35,421.421 INFO    ] No existing commands found in stream
[2026-10-25 02:25:40,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:25:40,451.451 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 02:25:41,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:25:41,231.231 INFO    ] Checking for system updates...
[2026-10-25 02:25:41,267.267 INFO    ] 200
[2026-10-25 02:25:41,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:41,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:25:41,326.326 INFO    ] No update needed
[2026-10-25 02:25:41,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 02:25:41,366.366 INFO    ] 200
[2026-10-25 02:25:41,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:41,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:25:41,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:25:41,464.464 INFO    ] No camera update needed
[2026-10-25 02:25:41,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:25:41,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:25:41,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:25:41,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:25:43,521.521 INFO    ] ================================================
[2026-10-25 02:25:43,536.536 INFO    ] Launching Daemon at Sun Oct 25 02:25:43 IST 2026
[2026-10-25 02:25:43,547.547 INFO    ] ================================================
[2026-10-25 02:25:44,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:25:44
[2026-10-25 02:25:44,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:25:44,993.993 INFO    ] Initializing speech engine...
[2026-10-25 02:25:45,004.004 INFO    ] 2026-10-25 02:25:44
[2026-10-25 02:25:45,250.250 INFO    ] 2026-10-25 02:25:45
[2026-10-25 02:25:45,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:25:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:25:45,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:25:45,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:25:45,729.729 INFO    ] time= 25/10/2026 02:25:45
[2026-10-25 02:25:45,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:25:45,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:25:45,881.881 INFO    ] No existing commands found in stream
[2026-10-25 02:25:50,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:25:50,920.920 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 02:25:55,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:25:55,231.231 INFO    ] Checking for system updates...
[2026-10-25 02:25:55,266.266 INFO    ] 200
[2026-10-25 02:25:55,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:55,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:55,333.333 INFO    ] No update needed
[2026-10-25 02:25:55,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 02:25:55,374.374 INFO    ] 200
[2026-10-25 02:25:55,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:25:55,418.418 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:25:55,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:25:55,470.470 INFO    ] No camera update needed
[2026-10-25 02:25:55,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:25:55,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:25:55,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:25:55,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:25:57,526.526 INFO    ] ================================================
[2026-10-25 02:25:57,541.541 INFO    ] Launching Daemon at Sun Oct 25 02:25:57 IST 2026
[2026-10-25 02:25:57,552.552 INFO    ] ================================================
[2026-10-25 02:25:58,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:25:58
[2026-10-25 02:25:58,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:25:58,972.972 INFO    ] Initializing speech engine...
[2026-10-25 02:25:58,981.981 INFO    ] 2026-10-25 02:25:58
[2026-10-25 02:25:59,228.228 INFO    ] 2026-10-25 02:25:59
[2026-10-25 02:25:59,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:25:59,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:25:59,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:25:59,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:25:59,725.725 INFO    ] time= 25/10/2026 02:25:59
[2026-10-25 02:25:59,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:25:59,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:25:59,882.882 INFO    ] No existing commands found in stream
[2026-10-25 02:26:04,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:26:04,896.896 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 02:26:07,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:26:07,199.199 INFO    ] Checking for system updates...
[2026-10-25 02:26:07,234.234 INFO    ] 200
[2026-10-25 02:26:07,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:07,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:26:07,293.293 INFO    ] No update needed
[2026-10-25 02:26:07,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 02:26:07,329.329 INFO    ] 200
[2026-10-25 02:26:07,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:07,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:26:07,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:26:07,424.424 INFO    ] No camera update needed
[2026-10-25 02:26:07,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:26:07,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:26:07,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:26:07,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:26:09,479.479 INFO    ] ================================================
[2026-10-25 02:26:09,494.494 INFO    ] Launching Daemon at Sun Oct 25 02:26:09 IST 2026
[2026-10-25 02:26:09,505.505 INFO    ] ================================================
[2026-10-25 02:26:10,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:26:10
[2026-10-25 02:26:10,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:26:10,974.974 INFO    ] Initializing speech engine...
[2026-10-25 02:26:10,982.982 INFO    ] 2026-10-25 02:26:10
[2026-10-25 02:26:11,242.242 INFO    ] 2026-10-25 02:26:11
[2026-10-25 02:26:11,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:26:11,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:26:11,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:26:11,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:26:11,695.695 INFO    ] time= 25/10/2026 02:26:11
[2026-10-25 02:26:11,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:26:11,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:26:11,851.851 INFO    ] No existing commands found in stream
[2026-10-25 02:26:16,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:26:16,870.870 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 02:26:19,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:26:19,197.197 INFO    ] Checking for system updates...
[2026-10-25 02:26:19,233.233 INFO    ] 200
[2026-10-25 02:26:19,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:19,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:19,299.299 INFO    ] No update needed
[2026-10-25 02:26:19,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 02:26:19,339.339 INFO    ] 200
[2026-10-25 02:26:19,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:19,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:26:19,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:19,427.427 INFO    ] No camera update needed
[2026-10-25 02:26:19,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:26:19,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:26:19,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:26:19,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:26:21,484.484 INFO    ] ================================================
[2026-10-25 02:26:21,499.499 INFO    ] Launching Daemon at Sun Oct 25 02:26:21 IST 2026
[2026-10-25 02:26:21,510.510 INFO    ] ================================================
[2026-10-25 02:26:22,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:26:22
[2026-10-25 02:26:22,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:26:23,093.093 INFO    ] Initializing speech engine...
[2026-10-25 02:26:23,121.121 INFO    ] 2026-10-25 02:26:23
[2026-10-25 02:26:23,391.391 INFO    ] 2026-10-25 02:26:23
[2026-10-25 02:26:23,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:26:23,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:26:23,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:26:23,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:26:23,782.782 INFO    ] time= 25/10/2026 02:26:23
[2026-10-25 02:26:23,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:26:23,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:26:23,959.959 INFO    ] No existing commands found in stream
[2026-10-25 02:26:28,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:26:28,988.988 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 02:26:31,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:26:31,429.429 INFO    ] Checking for system updates...
[2026-10-25 02:26:31,467.467 INFO    ] 200
[2026-10-25 02:26:31,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:31,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:31,538.538 INFO    ] No update needed
[2026-10-25 02:26:31,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 02:26:31,577.577 INFO    ] 200
[2026-10-25 02:26:31,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:31,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:26:31,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:31,772.772 INFO    ] No camera update needed
[2026-10-25 02:26:31,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:26:31,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:26:31,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:26:31,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:26:33,831.831 INFO    ] ================================================
[2026-10-25 02:26:33,845.845 INFO    ] Launching Daemon at Sun Oct 25 02:26:33 IST 2026
[2026-10-25 02:26:33,856.856 INFO    ] ================================================
[2026-10-25 02:26:34,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:26:34
[2026-10-25 02:26:35,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:26:35,387.387 INFO    ] Initializing speech engine...
[2026-10-25 02:26:35,393.393 INFO    ] 2026-10-25 02:26:35
[2026-10-25 02:26:35,692.692 INFO    ] 2026-10-25 02:26:35
[2026-10-25 02:26:35,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:26:35,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:26:35,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:26:36,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:26:36,075.075 INFO    ] time= 25/10/2026 02:26:36
[2026-10-25 02:26:36,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:26:36,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:26:36,201.201 INFO    ] No existing commands found in stream
[2026-10-25 02:26:41,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:26:41,216.216 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 02:26:45,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:26:45,079.079 INFO    ] Checking for system updates...
[2026-10-25 02:26:45,119.119 INFO    ] 200
[2026-10-25 02:26:45,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:45,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:45,177.177 INFO    ] No update needed
[2026-10-25 02:26:45,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 02:26:45,217.217 INFO    ] 200
[2026-10-25 02:26:45,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:45,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:26:45,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:26:45,317.317 INFO    ] No camera update needed
[2026-10-25 02:26:45,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:26:45,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:26:45,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:26:45,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:26:47,373.373 INFO    ] ================================================
[2026-10-25 02:26:47,387.387 INFO    ] Launching Daemon at Sun Oct 25 02:26:47 IST 2026
[2026-10-25 02:26:47,398.398 INFO    ] ================================================
[2026-10-25 02:26:47,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:26:47
[2026-10-25 02:26:48,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:26:48,867.867 INFO    ] Initializing speech engine...
[2026-10-25 02:26:48,875.875 INFO    ] 2026-10-25 02:26:48
[2026-10-25 02:26:49,134.134 INFO    ] 2026-10-25 02:26:49
[2026-10-25 02:26:49,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:26:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:26:49,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:26:49,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:26:49,595.595 INFO    ] time= 25/10/2026 02:26:49
[2026-10-25 02:26:49,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:26:49,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:26:49,741.741 INFO    ] No existing commands found in stream
[2026-10-25 02:26:54,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:26:54,763.763 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 02:26:57,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:26:57,495.495 INFO    ] Checking for system updates...
[2026-10-25 02:26:57,536.536 INFO    ] 200
[2026-10-25 02:26:57,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:57,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:26:57,593.593 INFO    ] No update needed
[2026-10-25 02:26:57,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 02:26:57,633.633 INFO    ] 200
[2026-10-25 02:26:57,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:26:57,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:26:57,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:26:57,729.729 INFO    ] No camera update needed
[2026-10-25 02:26:57,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:26:57,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:26:57,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:26:57,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:26:59,786.786 INFO    ] ================================================
[2026-10-25 02:26:59,801.801 INFO    ] Launching Daemon at Sun Oct 25 02:26:59 IST 2026
[2026-10-25 02:26:59,811.811 INFO    ] ================================================
[2026-10-25 02:27:00,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:27:00
[2026-10-25 02:27:01,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:27:01,673.673 INFO    ] Initializing speech engine...
[2026-10-25 02:27:01,677.677 INFO    ] 2026-10-25 02:27:01
[2026-10-25 02:27:02,058.058 INFO    ] 2026-10-25 02:27:02
[2026-10-25 02:27:02,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:27:02,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:27:02,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:27:02,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:27:02,552.552 INFO    ] time= 25/10/2026 02:27:02
[2026-10-25 02:27:02,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:27:02,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:27:02,695.695 INFO    ] No existing commands found in stream
[2026-10-25 02:27:07,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:27:07,723.723 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 02:27:10,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:27:10,892.892 INFO    ] Checking for system updates...
[2026-10-25 02:27:10,929.929 INFO    ] 200
[2026-10-25 02:27:10,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:10,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:10,988.988 INFO    ] No update needed
[2026-10-25 02:27:10,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 02:27:11,026.026 INFO    ] 200
[2026-10-25 02:27:11,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:11,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:27:11,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:11,137.137 INFO    ] No camera update needed
[2026-10-25 02:27:11,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:27:11,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:27:11,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:27:11,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:27:13,195.195 INFO    ] ================================================
[2026-10-25 02:27:13,210.210 INFO    ] Launching Daemon at Sun Oct 25 02:27:13 IST 2026
[2026-10-25 02:27:13,221.221 INFO    ] ================================================
[2026-10-25 02:27:13,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:27:13
[2026-10-25 02:27:14,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:27:14,618.618 INFO    ] Initializing speech engine...
[2026-10-25 02:27:14,641.641 INFO    ] 2026-10-25 02:27:14
[2026-10-25 02:27:14,895.895 INFO    ] 2026-10-25 02:27:14
[2026-10-25 02:27:14,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:27:15,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:27:15,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:27:15,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:27:15,371.371 INFO    ] time= 25/10/2026 02:27:15
[2026-10-25 02:27:15,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:27:15,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:27:15,533.533 INFO    ] No existing commands found in stream
[2026-10-25 02:27:20,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:27:20,560.560 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 02:27:21,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:27:21,598.598 INFO    ] Checking for system updates...
[2026-10-25 02:27:21,633.633 INFO    ] 200
[2026-10-25 02:27:21,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:21,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:21,702.702 INFO    ] No update needed
[2026-10-25 02:27:21,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 02:27:21,742.742 INFO    ] 200
[2026-10-25 02:27:21,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:21,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:27:21,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:21,842.842 INFO    ] No camera update needed
[2026-10-25 02:27:21,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:27:21,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:27:21,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:27:21,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:27:23,898.898 INFO    ] ================================================
[2026-10-25 02:27:23,913.913 INFO    ] Launching Daemon at Sun Oct 25 02:27:23 IST 2026
[2026-10-25 02:27:23,924.924 INFO    ] ================================================
[2026-10-25 02:27:24,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:27:24
[2026-10-25 02:27:25,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:27:25,379.379 INFO    ] Initializing speech engine...
[2026-10-25 02:27:25,397.397 INFO    ] 2026-10-25 02:27:25
[2026-10-25 02:27:25,674.674 INFO    ] 2026-10-25 02:27:25
[2026-10-25 02:27:25,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:27:25,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:27:25,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:27:26,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:27:26,053.053 INFO    ] time= 25/10/2026 02:27:26
[2026-10-25 02:27:26,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:27:26,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:27:26,180.180 INFO    ] No existing commands found in stream
[2026-10-25 02:27:31,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:27:31,195.195 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 02:27:34,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:27:34,437.437 INFO    ] Checking for system updates...
[2026-10-25 02:27:34,484.484 INFO    ] 200
[2026-10-25 02:27:34,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:34,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:27:34,572.572 INFO    ] No update needed
[2026-10-25 02:27:34,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 02:27:34,608.608 INFO    ] 200
[2026-10-25 02:27:34,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:34,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:27:34,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:27:34,704.704 INFO    ] No camera update needed
[2026-10-25 02:27:34,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:27:34,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:27:34,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:27:34,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:27:36,760.760 INFO    ] ================================================
[2026-10-25 02:27:36,775.775 INFO    ] Launching Daemon at Sun Oct 25 02:27:36 IST 2026
[2026-10-25 02:27:36,786.786 INFO    ] ================================================
[2026-10-25 02:27:37,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:27:37
[2026-10-25 02:27:38,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:27:38,386.386 INFO    ] Initializing speech engine...
[2026-10-25 02:27:38,393.393 INFO    ] 2026-10-25 02:27:38
[2026-10-25 02:27:38,665.665 INFO    ] 2026-10-25 02:27:38
[2026-10-25 02:27:38,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:27:38,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:27:38,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:27:39,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:27:39,157.157 INFO    ] time= 25/10/2026 02:27:39
[2026-10-25 02:27:39,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:27:39,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:27:39,299.299 INFO    ] No existing commands found in stream
[2026-10-25 02:27:44,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:27:44,334.334 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 02:27:48,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:27:48,613.613 INFO    ] Checking for system updates...
[2026-10-25 02:27:48,648.648 INFO    ] 200
[2026-10-25 02:27:48,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:48,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:48,707.707 INFO    ] No update needed
[2026-10-25 02:27:48,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 02:27:48,743.743 INFO    ] 200
[2026-10-25 02:27:48,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:27:48,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:27:48,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:27:48,842.842 INFO    ] No camera update needed
[2026-10-25 02:27:48,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:27:48,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:27:48,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:27:48,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:27:50,899.899 INFO    ] ================================================
[2026-10-25 02:27:50,914.914 INFO    ] Launching Daemon at Sun Oct 25 02:27:50 IST 2026
[2026-10-25 02:27:50,926.926 INFO    ] ================================================
[2026-10-25 02:27:51,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:27:51
[2026-10-25 02:27:52,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:27:52,383.383 INFO    ] Initializing speech engine...
[2026-10-25 02:27:52,399.399 INFO    ] 2026-10-25 02:27:52
[2026-10-25 02:27:52,672.672 INFO    ] 2026-10-25 02:27:52
[2026-10-25 02:27:52,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:27:52,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:27:52,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:27:53,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:27:53,088.088 INFO    ] time= 25/10/2026 02:27:53
[2026-10-25 02:27:53,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:27:53,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:27:53,232.232 INFO    ] No existing commands found in stream
[2026-10-25 02:27:58,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:27:58,255.255 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 02:28:02,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:28:02,538.538 INFO    ] Checking for system updates...
[2026-10-25 02:28:02,582.582 INFO    ] 200
[2026-10-25 02:28:02,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:02,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:02,658.658 INFO    ] No update needed
[2026-10-25 02:28:02,661.661 INFO    ] Checking for camera pi updates...
[2026-10-25 02:28:02,707.707 INFO    ] 200
[2026-10-25 02:28:02,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:02,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:28:02,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:02,826.826 INFO    ] No camera update needed
[2026-10-25 02:28:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:28:02,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:28:02,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:28:02,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:28:04,887.887 INFO    ] ================================================
[2026-10-25 02:28:04,902.902 INFO    ] Launching Daemon at Sun Oct 25 02:28:04 IST 2026
[2026-10-25 02:28:04,913.913 INFO    ] ================================================
[2026-10-25 02:28:05,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:28:05
[2026-10-25 02:28:06,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:28:06,335.335 INFO    ] Initializing speech engine...
[2026-10-25 02:28:06,344.344 INFO    ] 2026-10-25 02:28:06
[2026-10-25 02:28:06,593.593 INFO    ] 2026-10-25 02:28:06
[2026-10-25 02:28:06,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:28:06,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:28:06,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:28:07,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:28:07,073.073 INFO    ] time= 25/10/2026 02:28:07
[2026-10-25 02:28:07,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:28:07,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:28:07,223.223 INFO    ] No existing commands found in stream
[2026-10-25 02:28:12,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:28:12,238.238 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 02:28:14,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:28:14,354.354 INFO    ] Checking for system updates...
[2026-10-25 02:28:14,393.393 INFO    ] 200
[2026-10-25 02:28:14,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:14,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:28:14,456.456 INFO    ] No update needed
[2026-10-25 02:28:14,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 02:28:14,495.495 INFO    ] 200
[2026-10-25 02:28:14,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:14,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:28:14,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:28:14,588.588 INFO    ] No camera update needed
[2026-10-25 02:28:14,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:28:14,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:28:14,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:28:14,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:28:16,644.644 INFO    ] ================================================
[2026-10-25 02:28:16,659.659 INFO    ] Launching Daemon at Sun Oct 25 02:28:16 IST 2026
[2026-10-25 02:28:16,669.669 INFO    ] ================================================
[2026-10-25 02:28:17,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:28:17
[2026-10-25 02:28:17,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:28:18,241.241 INFO    ] Initializing speech engine...
[2026-10-25 02:28:18,249.249 INFO    ] 2026-10-25 02:28:18
[2026-10-25 02:28:18,534.534 INFO    ] 2026-10-25 02:28:18
[2026-10-25 02:28:18,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:28:18,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:28:18,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:28:18,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:28:19,020.020 INFO    ] time= 25/10/2026 02:28:18
[2026-10-25 02:28:19,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:28:19,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:28:19,215.215 INFO    ] No existing commands found in stream
[2026-10-25 02:28:24,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:28:24,249.249 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 02:28:26,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:28:26,757.757 INFO    ] Checking for system updates...
[2026-10-25 02:28:26,794.794 INFO    ] 200
[2026-10-25 02:28:26,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:26,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:26,855.855 INFO    ] No update needed
[2026-10-25 02:28:26,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 02:28:26,892.892 INFO    ] 200
[2026-10-25 02:28:26,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:26,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:28:26,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:26,984.984 INFO    ] No camera update needed
[2026-10-25 02:28:26,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:28:26,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:28:26,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:28:27,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:28:29,041.041 INFO    ] ================================================
[2026-10-25 02:28:29,056.056 INFO    ] Launching Daemon at Sun Oct 25 02:28:29 IST 2026
[2026-10-25 02:28:29,066.066 INFO    ] ================================================
[2026-10-25 02:28:29,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:28:29
[2026-10-25 02:28:30,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:28:30,506.506 INFO    ] Initializing speech engine...
[2026-10-25 02:28:30,513.513 INFO    ] 2026-10-25 02:28:30
[2026-10-25 02:28:30,806.806 INFO    ] 2026-10-25 02:28:30
[2026-10-25 02:28:30,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:28:31,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:28:31,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:28:31,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:28:31,220.220 INFO    ] time= 25/10/2026 02:28:31
[2026-10-25 02:28:31,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:28:31,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:28:31,365.365 INFO    ] No existing commands found in stream
[2026-10-25 02:28:36,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:28:36,388.388 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 02:28:37,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:28:37,978.978 INFO    ] Checking for system updates...
[2026-10-25 02:28:38,016.016 INFO    ] 200
[2026-10-25 02:28:38,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:38,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:38,078.078 INFO    ] No update needed
[2026-10-25 02:28:38,081.081 INFO    ] Checking for camera pi updates...
[2026-10-25 02:28:38,118.118 INFO    ] 200
[2026-10-25 02:28:38,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:38,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:28:38,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:38,307.307 INFO    ] No camera update needed
[2026-10-25 02:28:38,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:28:38,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:28:38,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:28:38,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:28:40,363.363 INFO    ] ================================================
[2026-10-25 02:28:40,377.377 INFO    ] Launching Daemon at Sun Oct 25 02:28:40 IST 2026
[2026-10-25 02:28:40,388.388 INFO    ] ================================================
[2026-10-25 02:28:41,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:28:41
[2026-10-25 02:28:41,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:28:41,965.965 INFO    ] Initializing speech engine...
[2026-10-25 02:28:41,974.974 INFO    ] 2026-10-25 02:28:41
[2026-10-25 02:28:42,254.254 INFO    ] 2026-10-25 02:28:42
[2026-10-25 02:28:42,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:28:42,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:28:42,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:28:42,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:28:42,791.791 INFO    ] time= 25/10/2026 02:28:42
[2026-10-25 02:28:42,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:28:42,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:28:42,943.943 INFO    ] No existing commands found in stream
[2026-10-25 02:28:47,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:28:47,968.968 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 02:28:48,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:28:48,465.465 INFO    ] Checking for system updates...
[2026-10-25 02:28:48,501.501 INFO    ] 200
[2026-10-25 02:28:48,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:48,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:48,564.564 INFO    ] No update needed
[2026-10-25 02:28:48,566.566 INFO    ] Checking for camera pi updates...
[2026-10-25 02:28:48,603.603 INFO    ] 200
[2026-10-25 02:28:48,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:28:48,649.649 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:28:48,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:28:48,701.701 INFO    ] No camera update needed
[2026-10-25 02:28:48,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:28:48,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:28:48,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:28:48,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:28:50,756.756 INFO    ] ================================================
[2026-10-25 02:28:50,771.771 INFO    ] Launching Daemon at Sun Oct 25 02:28:50 IST 2026
[2026-10-25 02:28:50,782.782 INFO    ] ================================================
[2026-10-25 02:28:51,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:28:51
[2026-10-25 02:28:51,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:28:52,225.225 INFO    ] Initializing speech engine...
[2026-10-25 02:28:52,234.234 INFO    ] 2026-10-25 02:28:52
[2026-10-25 02:28:52,496.496 INFO    ] 2026-10-25 02:28:52
[2026-10-25 02:28:52,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:28:52,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:28:52,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:28:52,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:28:52,952.952 INFO    ] time= 25/10/2026 02:28:52
[2026-10-25 02:28:53,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:28:53,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:28:53,097.097 INFO    ] No existing commands found in stream
[2026-10-25 02:28:58,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:28:58,112.112 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 02:29:01,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:29:01,188.188 INFO    ] Checking for system updates...
[2026-10-25 02:29:01,225.225 INFO    ] 200
[2026-10-25 02:29:01,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:01,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:01,284.284 INFO    ] No update needed
[2026-10-25 02:29:01,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 02:29:01,321.321 INFO    ] 200
[2026-10-25 02:29:01,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:01,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:29:01,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:01,412.412 INFO    ] No camera update needed
[2026-10-25 02:29:01,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:29:01,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:29:01,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:29:01,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:29:03,475.475 INFO    ] ================================================
[2026-10-25 02:29:03,492.492 INFO    ] Launching Daemon at Sun Oct 25 02:29:03 IST 2026
[2026-10-25 02:29:03,502.502 INFO    ] ================================================
[2026-10-25 02:29:04,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:29:04
[2026-10-25 02:29:04,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:29:04,949.949 INFO    ] Initializing speech engine...
[2026-10-25 02:29:04,962.962 INFO    ] 2026-10-25 02:29:04
[2026-10-25 02:29:05,245.245 INFO    ] 2026-10-25 02:29:05
[2026-10-25 02:29:05,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:29:05,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:29:05,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:29:05,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:29:05,633.633 INFO    ] time= 25/10/2026 02:29:05
[2026-10-25 02:29:05,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:29:05,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:29:05,738.738 INFO    ] No existing commands found in stream
[2026-10-25 02:29:10,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:29:10,754.754 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 02:29:13,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:29:13,487.487 INFO    ] Checking for system updates...
[2026-10-25 02:29:13,526.526 INFO    ] 200
[2026-10-25 02:29:13,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:13,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:29:13,590.590 INFO    ] No update needed
[2026-10-25 02:29:13,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 02:29:13,629.629 INFO    ] 200
[2026-10-25 02:29:13,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:13,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:29:13,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:29:13,728.728 INFO    ] No camera update needed
[2026-10-25 02:29:13,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:29:13,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:29:13,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:29:13,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:29:15,783.783 INFO    ] ================================================
[2026-10-25 02:29:15,798.798 INFO    ] Launching Daemon at Sun Oct 25 02:29:15 IST 2026
[2026-10-25 02:29:15,810.810 INFO    ] ================================================
[2026-10-25 02:29:16,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:29:16
[2026-10-25 02:29:16,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:29:17,251.251 INFO    ] Initializing speech engine...
[2026-10-25 02:29:17,259.259 INFO    ] 2026-10-25 02:29:17
[2026-10-25 02:29:17,551.551 INFO    ] 2026-10-25 02:29:17
[2026-10-25 02:29:17,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:29:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:29:17,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:29:17,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:29:17,959.959 INFO    ] time= 25/10/2026 02:29:17
[2026-10-25 02:29:17,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:29:17,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:29:18,041.041 INFO    ] No existing commands found in stream
[2026-10-25 02:29:23,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:29:23,057.057 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 02:29:26,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:29:26,552.552 INFO    ] Checking for system updates...
[2026-10-25 02:29:26,591.591 INFO    ] 200
[2026-10-25 02:29:26,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:26,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:26,655.655 INFO    ] No update needed
[2026-10-25 02:29:26,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 02:29:26,694.694 INFO    ] 200
[2026-10-25 02:29:26,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:26,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:29:26,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:26,785.785 INFO    ] No camera update needed
[2026-10-25 02:29:26,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:29:26,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:29:26,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:29:26,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:29:28,842.842 INFO    ] ================================================
[2026-10-25 02:29:28,857.857 INFO    ] Launching Daemon at Sun Oct 25 02:29:28 IST 2026
[2026-10-25 02:29:28,868.868 INFO    ] ================================================
[2026-10-25 02:29:29,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:29:29
[2026-10-25 02:29:30,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:29:30,329.329 INFO    ] Initializing speech engine...
[2026-10-25 02:29:30,339.339 INFO    ] 2026-10-25 02:29:30
[2026-10-25 02:29:30,609.609 INFO    ] 2026-10-25 02:29:30
[2026-10-25 02:29:30,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:29:30,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:29:30,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:29:31,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:29:31,114.114 INFO    ] time= 25/10/2026 02:29:31
[2026-10-25 02:29:31,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:29:31,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:29:31,300.300 INFO    ] No existing commands found in stream
[2026-10-25 02:29:36,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:29:36,339.339 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 02:29:37,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:29:37,425.425 INFO    ] Checking for system updates...
[2026-10-25 02:29:37,465.465 INFO    ] 200
[2026-10-25 02:29:37,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:37,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:37,528.528 INFO    ] No update needed
[2026-10-25 02:29:37,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 02:29:37,565.565 INFO    ] 200
[2026-10-25 02:29:37,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:37,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:29:37,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:37,679.679 INFO    ] No camera update needed
[2026-10-25 02:29:37,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:29:37,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:29:37,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:29:37,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:29:39,737.737 INFO    ] ================================================
[2026-10-25 02:29:39,752.752 INFO    ] Launching Daemon at Sun Oct 25 02:29:39 IST 2026
[2026-10-25 02:29:39,763.763 INFO    ] ================================================
[2026-10-25 02:29:40,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:29:40
[2026-10-25 02:29:40,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:29:41,225.225 INFO    ] Initializing speech engine...
[2026-10-25 02:29:41,238.238 INFO    ] 2026-10-25 02:29:41
[2026-10-25 02:29:41,543.543 INFO    ] 2026-10-25 02:29:41
[2026-10-25 02:29:41,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:29:41,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:29:41,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:29:42,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:29:42,045.045 INFO    ] time= 25/10/2026 02:29:42
[2026-10-25 02:29:42,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:29:42,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:29:42,173.173 INFO    ] No existing commands found in stream
[2026-10-25 02:29:47,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:29:47,207.207 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 02:29:51,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:29:51,405.405 INFO    ] Checking for system updates...
[2026-10-25 02:29:51,445.445 INFO    ] 200
[2026-10-25 02:29:51,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:51,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:51,513.513 INFO    ] No update needed
[2026-10-25 02:29:51,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 02:29:51,554.554 INFO    ] 200
[2026-10-25 02:29:51,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:29:51,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:29:51,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:29:51,651.651 INFO    ] No camera update needed
[2026-10-25 02:29:51,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:29:51,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:29:51,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:29:51,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:29:53,707.707 INFO    ] ================================================
[2026-10-25 02:29:53,723.723 INFO    ] Launching Daemon at Sun Oct 25 02:29:53 IST 2026
[2026-10-25 02:29:53,733.733 INFO    ] ================================================
[2026-10-25 02:29:54,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:29:54
[2026-10-25 02:29:55,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:29:55,311.311 INFO    ] Initializing speech engine...
[2026-10-25 02:29:55,318.318 INFO    ] 2026-10-25 02:29:55
[2026-10-25 02:29:55,586.586 INFO    ] 2026-10-25 02:29:55
[2026-10-25 02:29:55,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:29:55,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:29:55,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:29:56,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:29:56,084.084 INFO    ] time= 25/10/2026 02:29:56
[2026-10-25 02:29:56,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:29:56,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:29:56,273.273 INFO    ] No existing commands found in stream
[2026-10-25 02:30:01,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:30:01,304.304 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 02:30:04,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:30:04,440.440 INFO    ] Checking for system updates...
[2026-10-25 02:30:04,478.478 INFO    ] 200
[2026-10-25 02:30:04,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:04,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:04,537.537 INFO    ] No update needed
[2026-10-25 02:30:04,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 02:30:04,579.579 INFO    ] 200
[2026-10-25 02:30:04,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:04,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:30:04,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:04,675.675 INFO    ] No camera update needed
[2026-10-25 02:30:04,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:30:04,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:30:04,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:30:04,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:30:06,730.730 INFO    ] ================================================
[2026-10-25 02:30:06,745.745 INFO    ] Launching Daemon at Sun Oct 25 02:30:06 IST 2026
[2026-10-25 02:30:06,756.756 INFO    ] ================================================
[2026-10-25 02:30:07,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:30:07
[2026-10-25 02:30:07,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:30:08,213.213 INFO    ] Initializing speech engine...
[2026-10-25 02:30:08,223.223 INFO    ] 2026-10-25 02:30:08
[2026-10-25 02:30:08,482.482 INFO    ] 2026-10-25 02:30:08
[2026-10-25 02:30:08,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:30:08,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:30:08,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:30:08,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:30:08,953.953 INFO    ] time= 25/10/2026 02:30:08
[2026-10-25 02:30:09,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:30:09,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:30:09,147.147 INFO    ] No existing commands found in stream
[2026-10-25 02:30:14,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:30:14,176.176 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 02:30:17,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:30:17,295.295 INFO    ] Checking for system updates...
[2026-10-25 02:30:17,332.332 INFO    ] 200
[2026-10-25 02:30:17,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:17,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:30:17,395.395 INFO    ] No update needed
[2026-10-25 02:30:17,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 02:30:17,431.431 INFO    ] 200
[2026-10-25 02:30:17,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:17,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:30:17,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:30:17,524.524 INFO    ] No camera update needed
[2026-10-25 02:30:17,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:30:17,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:30:17,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:30:17,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:30:19,581.581 INFO    ] ================================================
[2026-10-25 02:30:19,596.596 INFO    ] Launching Daemon at Sun Oct 25 02:30:19 IST 2026
[2026-10-25 02:30:19,607.607 INFO    ] ================================================
[2026-10-25 02:30:20,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:30:20
[2026-10-25 02:30:20,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:30:21,011.011 INFO    ] Initializing speech engine...
[2026-10-25 02:30:21,032.032 INFO    ] 2026-10-25 02:30:21
[2026-10-25 02:30:21,291.291 INFO    ] 2026-10-25 02:30:21
[2026-10-25 02:30:21,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:30:21,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:30:21,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:30:21,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:30:21,668.668 INFO    ] time= 25/10/2026 02:30:21
[2026-10-25 02:30:21,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:30:21,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:30:21,852.852 INFO    ] No existing commands found in stream
[2026-10-25 02:30:26,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:30:26,880.880 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 02:30:27,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:30:27,444.444 INFO    ] Checking for system updates...
[2026-10-25 02:30:27,485.485 INFO    ] 200
[2026-10-25 02:30:27,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:27,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:27,555.555 INFO    ] No update needed
[2026-10-25 02:30:27,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 02:30:27,593.593 INFO    ] 200
[2026-10-25 02:30:27,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:27,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:30:27,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:27,688.688 INFO    ] No camera update needed
[2026-10-25 02:30:27,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:30:27,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:30:27,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:30:27,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:30:29,745.745 INFO    ] ================================================
[2026-10-25 02:30:29,761.761 INFO    ] Launching Daemon at Sun Oct 25 02:30:29 IST 2026
[2026-10-25 02:30:29,772.772 INFO    ] ================================================
[2026-10-25 02:30:30,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:30:30
[2026-10-25 02:30:31,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:30:31,358.358 INFO    ] Initializing speech engine...
[2026-10-25 02:30:31,367.367 INFO    ] 2026-10-25 02:30:31
[2026-10-25 02:30:31,634.634 INFO    ] 2026-10-25 02:30:31
[2026-10-25 02:30:31,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:30:31,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:30:31,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:30:32,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:30:32,111.111 INFO    ] time= 25/10/2026 02:30:32
[2026-10-25 02:30:32,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:30:32,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:30:32,304.304 INFO    ] No existing commands found in stream
[2026-10-25 02:30:37,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:30:37,319.319 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 02:30:40,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:30:40,436.436 INFO    ] Checking for system updates...
[2026-10-25 02:30:40,476.476 INFO    ] 200
[2026-10-25 02:30:40,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:40,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:40,545.545 INFO    ] No update needed
[2026-10-25 02:30:40,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 02:30:40,585.585 INFO    ] 200
[2026-10-25 02:30:40,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:40,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:30:40,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:40,788.788 INFO    ] No camera update needed
[2026-10-25 02:30:40,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:30:40,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:30:40,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:30:40,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:30:42,851.851 INFO    ] ================================================
[2026-10-25 02:30:42,867.867 INFO    ] Launching Daemon at Sun Oct 25 02:30:42 IST 2026
[2026-10-25 02:30:42,877.877 INFO    ] ================================================
[2026-10-25 02:30:43,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:30:43
[2026-10-25 02:30:44,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:30:44,330.330 INFO    ] Initializing speech engine...
[2026-10-25 02:30:44,339.339 INFO    ] 2026-10-25 02:30:44
[2026-10-25 02:30:44,589.589 INFO    ] 2026-10-25 02:30:44
[2026-10-25 02:30:44,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:30:44,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:30:44,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:30:45,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:30:45,087.087 INFO    ] time= 25/10/2026 02:30:45
[2026-10-25 02:30:45,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:30:45,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:30:45,288.288 INFO    ] No existing commands found in stream
[2026-10-25 02:30:50,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:30:50,315.315 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 02:30:54,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:30:54,314.314 INFO    ] Checking for system updates...
[2026-10-25 02:30:54,354.354 INFO    ] 200
[2026-10-25 02:30:54,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:54,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:54,411.411 INFO    ] No update needed
[2026-10-25 02:30:54,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 02:30:54,447.447 INFO    ] 200
[2026-10-25 02:30:54,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:30:54,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:30:54,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:30:54,541.541 INFO    ] No camera update needed
[2026-10-25 02:30:54,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:30:54,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:30:54,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:30:54,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:30:56,598.598 INFO    ] ================================================
[2026-10-25 02:30:56,613.613 INFO    ] Launching Daemon at Sun Oct 25 02:30:56 IST 2026
[2026-10-25 02:30:56,624.624 INFO    ] ================================================
[2026-10-25 02:30:57,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:30:57
[2026-10-25 02:30:57,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:30:58,230.230 INFO    ] Initializing speech engine...
[2026-10-25 02:30:58,242.242 INFO    ] 2026-10-25 02:30:58
[2026-10-25 02:30:58,528.528 INFO    ] 2026-10-25 02:30:58
[2026-10-25 02:30:58,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:30:58,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:30:58,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:30:59,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:30:59,072.072 INFO    ] time= 25/10/2026 02:30:59
[2026-10-25 02:30:59,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:30:59,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:30:59,224.224 INFO    ] No existing commands found in stream
[2026-10-25 02:31:04,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:31:04,247.247 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 02:31:07,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:31:07,855.855 INFO    ] Checking for system updates...
[2026-10-25 02:31:07,897.897 INFO    ] 200
[2026-10-25 02:31:07,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:07,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:07,958.958 INFO    ] No update needed
[2026-10-25 02:31:07,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 02:31:07,996.996 INFO    ] 200
[2026-10-25 02:31:07,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:08,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:31:08,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:08,094.094 INFO    ] No camera update needed
[2026-10-25 02:31:08,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:31:08,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:31:08,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:31:08,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:31:10,154.154 INFO    ] ================================================
[2026-10-25 02:31:10,169.169 INFO    ] Launching Daemon at Sun Oct 25 02:31:10 IST 2026
[2026-10-25 02:31:10,180.180 INFO    ] ================================================
[2026-10-25 02:31:10,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:31:10
[2026-10-25 02:31:11,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:31:11,637.637 INFO    ] Initializing speech engine...
[2026-10-25 02:31:11,647.647 INFO    ] 2026-10-25 02:31:11
[2026-10-25 02:31:11,907.907 INFO    ] 2026-10-25 02:31:11
[2026-10-25 02:31:11,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:31:12,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:31:12,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:31:12,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:31:12,366.366 INFO    ] time= 25/10/2026 02:31:12
[2026-10-25 02:31:12,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:31:12,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:31:12,525.525 INFO    ] No existing commands found in stream
[2026-10-25 02:31:17,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:31:17,547.547 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 02:31:18,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:31:18,125.125 INFO    ] Checking for system updates...
[2026-10-25 02:31:18,162.162 INFO    ] 200
[2026-10-25 02:31:18,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:18,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:31:18,228.228 INFO    ] No update needed
[2026-10-25 02:31:18,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 02:31:18,265.265 INFO    ] 200
[2026-10-25 02:31:18,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:18,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:31:18,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:31:18,368.368 INFO    ] No camera update needed
[2026-10-25 02:31:18,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:31:18,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:31:18,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:31:18,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:31:20,428.428 INFO    ] ================================================
[2026-10-25 02:31:20,444.444 INFO    ] Launching Daemon at Sun Oct 25 02:31:20 IST 2026
[2026-10-25 02:31:20,455.455 INFO    ] ================================================
[2026-10-25 02:31:21,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:31:21
[2026-10-25 02:31:21,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:31:21,906.906 INFO    ] Initializing speech engine...
[2026-10-25 02:31:21,912.912 INFO    ] 2026-10-25 02:31:21
[2026-10-25 02:31:22,212.212 INFO    ] 2026-10-25 02:31:22
[2026-10-25 02:31:22,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:31:22,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:31:22,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:31:22,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:31:22,616.616 INFO    ] time= 25/10/2026 02:31:22
[2026-10-25 02:31:22,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:31:22,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:31:22,727.727 INFO    ] No existing commands found in stream
[2026-10-25 02:31:27,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:31:27,744.744 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 02:31:29,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:31:29,192.192 INFO    ] Checking for system updates...
[2026-10-25 02:31:29,228.228 INFO    ] 200
[2026-10-25 02:31:29,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:29,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:29,286.286 INFO    ] No update needed
[2026-10-25 02:31:29,288.288 INFO    ] Checking for camera pi updates...
[2026-10-25 02:31:29,323.323 INFO    ] 200
[2026-10-25 02:31:29,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:29,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:31:29,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:29,414.414 INFO    ] No camera update needed
[2026-10-25 02:31:29,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:31:29,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:31:29,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:31:29,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:31:31,472.472 INFO    ] ================================================
[2026-10-25 02:31:31,490.490 INFO    ] Launching Daemon at Sun Oct 25 02:31:31 IST 2026
[2026-10-25 02:31:31,503.503 INFO    ] ================================================
[2026-10-25 02:31:32,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:31:32
[2026-10-25 02:31:32,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:31:33,183.183 INFO    ] Initializing speech engine...
[2026-10-25 02:31:33,197.197 INFO    ] 2026-10-25 02:31:33
[2026-10-25 02:31:33,484.484 INFO    ] 2026-10-25 02:31:33
[2026-10-25 02:31:33,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:31:33,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:31:33,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:31:33,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:31:34,038.038 INFO    ] time= 25/10/2026 02:31:33
[2026-10-25 02:31:34,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:31:34,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:31:34,178.178 INFO    ] No existing commands found in stream
[2026-10-25 02:31:39,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:31:39,214.214 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 02:31:41,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:31:41,505.505 INFO    ] Checking for system updates...
[2026-10-25 02:31:41,542.542 INFO    ] 200
[2026-10-25 02:31:41,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:41,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:31:41,602.602 INFO    ] No update needed
[2026-10-25 02:31:41,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 02:31:41,640.640 INFO    ] 200
[2026-10-25 02:31:41,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:41,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:31:41,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:31:41,738.738 INFO    ] No camera update needed
[2026-10-25 02:31:41,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:31:41,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:31:41,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:31:41,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:31:43,796.796 INFO    ] ================================================
[2026-10-25 02:31:43,811.811 INFO    ] Launching Daemon at Sun Oct 25 02:31:43 IST 2026
[2026-10-25 02:31:43,822.822 INFO    ] ================================================
[2026-10-25 02:31:44,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:31:44
[2026-10-25 02:31:45,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:31:45,482.482 INFO    ] Initializing speech engine...
[2026-10-25 02:31:45,495.495 INFO    ] 2026-10-25 02:31:45
[2026-10-25 02:31:45,784.784 INFO    ] 2026-10-25 02:31:45
[2026-10-25 02:31:45,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:31:46,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:31:46,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:31:46,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:31:46,333.333 INFO    ] time= 25/10/2026 02:31:46
[2026-10-25 02:31:46,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:31:46,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:31:46,474.474 INFO    ] No existing commands found in stream
[2026-10-25 02:31:51,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:31:51,504.504 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 02:31:54,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:31:54,970.970 INFO    ] Checking for system updates...
[2026-10-25 02:31:55,006.006 INFO    ] 200
[2026-10-25 02:31:55,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:55,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:55,064.064 INFO    ] No update needed
[2026-10-25 02:31:55,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 02:31:55,106.106 INFO    ] 200
[2026-10-25 02:31:55,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:31:55,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:31:55,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:31:55,200.200 INFO    ] No camera update needed
[2026-10-25 02:31:55,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:31:55,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:31:55,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:31:55,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:31:57,256.256 INFO    ] ================================================
[2026-10-25 02:31:57,272.272 INFO    ] Launching Daemon at Sun Oct 25 02:31:57 IST 2026
[2026-10-25 02:31:57,283.283 INFO    ] ================================================
[2026-10-25 02:31:57,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:31:57
[2026-10-25 02:31:58,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:31:58,938.938 INFO    ] Initializing speech engine...
[2026-10-25 02:31:58,952.952 INFO    ] 2026-10-25 02:31:58
[2026-10-25 02:31:59,270.270 INFO    ] 2026-10-25 02:31:59
[2026-10-25 02:31:59,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:31:59,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:31:59,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:31:59,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:31:59,784.784 INFO    ] time= 25/10/2026 02:31:59
[2026-10-25 02:31:59,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:31:59,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:31:59,947.947 INFO    ] No existing commands found in stream
[2026-10-25 02:32:04,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:32:04,975.975 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 02:32:09,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:32:09,123.123 INFO    ] Checking for system updates...
[2026-10-25 02:32:09,160.160 INFO    ] 200
[2026-10-25 02:32:09,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:09,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:09,221.221 INFO    ] No update needed
[2026-10-25 02:32:09,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 02:32:09,258.258 INFO    ] 200
[2026-10-25 02:32:09,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:09,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:32:09,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:09,359.359 INFO    ] No camera update needed
[2026-10-25 02:32:09,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:32:09,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:32:09,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:32:09,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:32:11,418.418 INFO    ] ================================================
[2026-10-25 02:32:11,433.433 INFO    ] Launching Daemon at Sun Oct 25 02:32:11 IST 2026
[2026-10-25 02:32:11,444.444 INFO    ] ================================================
[2026-10-25 02:32:12,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:32:12
[2026-10-25 02:32:12,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:32:12,907.907 INFO    ] Initializing speech engine...
[2026-10-25 02:32:12,914.914 INFO    ] 2026-10-25 02:32:12
[2026-10-25 02:32:13,182.182 INFO    ] 2026-10-25 02:32:13
[2026-10-25 02:32:13,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:32:13,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:32:13,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:32:13,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:32:13,599.599 INFO    ] time= 25/10/2026 02:32:13
[2026-10-25 02:32:13,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:32:13,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:32:13,689.689 INFO    ] No existing commands found in stream
[2026-10-25 02:32:18,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:32:18,715.715 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 02:32:22,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:32:22,952.952 INFO    ] Checking for system updates...
[2026-10-25 02:32:22,989.989 INFO    ] 200
[2026-10-25 02:32:22,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:23,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:23,058.058 INFO    ] No update needed
[2026-10-25 02:32:23,061.061 INFO    ] Checking for camera pi updates...
[2026-10-25 02:32:23,096.096 INFO    ] 200
[2026-10-25 02:32:23,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:23,141.141 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:32:23,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:23,204.204 INFO    ] No camera update needed
[2026-10-25 02:32:23,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:32:23,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:32:23,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:32:23,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:32:25,262.262 INFO    ] ================================================
[2026-10-25 02:32:25,278.278 INFO    ] Launching Daemon at Sun Oct 25 02:32:25 IST 2026
[2026-10-25 02:32:25,289.289 INFO    ] ================================================
[2026-10-25 02:32:25,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:32:25
[2026-10-25 02:32:26,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:32:26,795.795 INFO    ] Initializing speech engine...
[2026-10-25 02:32:26,804.804 INFO    ] 2026-10-25 02:32:26
[2026-10-25 02:32:27,078.078 INFO    ] 2026-10-25 02:32:27
[2026-10-25 02:32:27,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:32:27,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:32:27,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:32:27,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:32:27,583.583 INFO    ] time= 25/10/2026 02:32:27
[2026-10-25 02:32:27,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:32:27,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:32:27,771.771 INFO    ] No existing commands found in stream
[2026-10-25 02:32:32,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:32:32,794.794 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 02:32:36,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:32:36,328.328 INFO    ] Checking for system updates...
[2026-10-25 02:32:36,366.366 INFO    ] 200
[2026-10-25 02:32:36,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:36,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:32:36,436.436 INFO    ] No update needed
[2026-10-25 02:32:36,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 02:32:36,476.476 INFO    ] 200
[2026-10-25 02:32:36,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:36,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:32:36,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:32:36,596.596 INFO    ] No camera update needed
[2026-10-25 02:32:36,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:32:36,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:32:36,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:32:36,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:32:38,657.657 INFO    ] ================================================
[2026-10-25 02:32:38,673.673 INFO    ] Launching Daemon at Sun Oct 25 02:32:38 IST 2026
[2026-10-25 02:32:38,684.684 INFO    ] ================================================
[2026-10-25 02:32:39,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:32:39
[2026-10-25 02:32:39,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:32:40,109.109 INFO    ] Initializing speech engine...
[2026-10-25 02:32:40,116.116 INFO    ] 2026-10-25 02:32:40
[2026-10-25 02:32:40,369.369 INFO    ] 2026-10-25 02:32:40
[2026-10-25 02:32:40,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:32:40,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:32:40,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:32:40,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:32:40,750.750 INFO    ] time= 25/10/2026 02:32:40
[2026-10-25 02:32:40,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:32:40,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:32:40,917.917 INFO    ] No existing commands found in stream
[2026-10-25 02:32:45,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:32:45,955.955 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 02:32:47,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:32:47,581.581 INFO    ] Checking for system updates...
[2026-10-25 02:32:47,617.617 INFO    ] 200
[2026-10-25 02:32:47,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:47,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:47,678.678 INFO    ] No update needed
[2026-10-25 02:32:47,681.681 INFO    ] Checking for camera pi updates...
[2026-10-25 02:32:47,715.715 INFO    ] 200
[2026-10-25 02:32:47,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:32:47,758.758 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:32:47,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:32:47,912.912 INFO    ] No camera update needed
[2026-10-25 02:32:47,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:32:47,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:32:47,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:32:47,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:32:49,969.969 INFO    ] ================================================
[2026-10-25 02:32:49,984.984 INFO    ] Launching Daemon at Sun Oct 25 02:32:49 IST 2026
[2026-10-25 02:32:50,995.995 INFO    ] ================================================
[2026-10-25 02:32:50,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:32:50
[2026-10-25 02:32:51,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:32:51,408.408 INFO    ] Initializing speech engine...
[2026-10-25 02:32:51,423.423 INFO    ] 2026-10-25 02:32:51
[2026-10-25 02:32:51,689.689 INFO    ] 2026-10-25 02:32:51
[2026-10-25 02:32:51,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:32:51,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:32:51,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:32:52,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:32:52,067.067 INFO    ] time= 25/10/2026 02:32:52
[2026-10-25 02:32:52,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:32:52,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:32:52,229.229 INFO    ] No existing commands found in stream
[2026-10-25 02:32:57,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:32:57,256.256 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 02:33:01,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:33:01,631.631 INFO    ] Checking for system updates...
[2026-10-25 02:33:01,704.704 INFO    ] 200
[2026-10-25 02:33:01,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:01,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:33:01,848.848 INFO    ] No update needed
[2026-10-25 02:33:01,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:01,904.904 INFO    ] 200
[2026-10-25 02:33:01,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:01,965.965 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:33:02,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:33:02,022.022 INFO    ] No camera update needed
[2026-10-25 02:33:02,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:33:02,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:33:02,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:33:02,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:33:04,090.090 INFO    ] ================================================
[2026-10-25 02:33:04,105.105 INFO    ] Launching Daemon at Sun Oct 25 02:33:04 IST 2026
[2026-10-25 02:33:04,117.117 INFO    ] ================================================
[2026-10-25 02:33:04,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:33:04
[2026-10-25 02:33:05,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:33:05,516.516 INFO    ] Initializing speech engine...
[2026-10-25 02:33:05,528.528 INFO    ] 2026-10-25 02:33:05
[2026-10-25 02:33:05,794.794 INFO    ] 2026-10-25 02:33:05
[2026-10-25 02:33:05,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:33:06,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:33:06,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:33:06,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:33:06,172.172 INFO    ] time= 25/10/2026 02:33:06
[2026-10-25 02:33:06,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:33:06,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:33:06,321.321 INFO    ] No existing commands found in stream
[2026-10-25 02:33:11,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:33:11,355.355 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 02:33:12,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:33:12,544.544 INFO    ] Checking for system updates...
[2026-10-25 02:33:12,580.580 INFO    ] 200
[2026-10-25 02:33:12,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:12,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:12,638.638 INFO    ] No update needed
[2026-10-25 02:33:12,640.640 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:12,673.673 INFO    ] 200
[2026-10-25 02:33:12,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:12,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:33:12,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:12,769.769 INFO    ] No camera update needed
[2026-10-25 02:33:12,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:33:12,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:33:12,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:33:12,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:33:14,825.825 INFO    ] ================================================
[2026-10-25 02:33:14,840.840 INFO    ] Launching Daemon at Sun Oct 25 02:33:14 IST 2026
[2026-10-25 02:33:14,850.850 INFO    ] ================================================
[2026-10-25 02:33:15,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:33:15
[2026-10-25 02:33:16,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:33:16,250.250 INFO    ] Initializing speech engine...
[2026-10-25 02:33:16,264.264 INFO    ] 2026-10-25 02:33:16
[2026-10-25 02:33:16,531.531 INFO    ] 2026-10-25 02:33:16
[2026-10-25 02:33:16,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:33:16,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:33:16,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:33:16,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:33:17,010.010 INFO    ] time= 25/10/2026 02:33:16
[2026-10-25 02:33:17,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:33:17,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:33:17,164.164 INFO    ] No existing commands found in stream
[2026-10-25 02:33:22,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:33:22,183.183 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 02:33:24,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:33:24,400.400 INFO    ] Checking for system updates...
[2026-10-25 02:33:24,436.436 INFO    ] 200
[2026-10-25 02:33:24,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:24,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:24,493.493 INFO    ] No update needed
[2026-10-25 02:33:24,495.495 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:24,529.529 INFO    ] 200
[2026-10-25 02:33:24,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:24,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:33:24,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:24,621.621 INFO    ] No camera update needed
[2026-10-25 02:33:24,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:33:24,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:33:24,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:33:24,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:33:26,676.676 INFO    ] ================================================
[2026-10-25 02:33:26,691.691 INFO    ] Launching Daemon at Sun Oct 25 02:33:26 IST 2026
[2026-10-25 02:33:26,701.701 INFO    ] ================================================
[2026-10-25 02:33:27,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:33:27
[2026-10-25 02:33:27,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:33:28,165.165 INFO    ] Initializing speech engine...
[2026-10-25 02:33:28,171.171 INFO    ] 2026-10-25 02:33:28
[2026-10-25 02:33:28,421.421 INFO    ] 2026-10-25 02:33:28
[2026-10-25 02:33:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:33:28,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:33:28,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:33:28,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:33:28,902.902 INFO    ] time= 25/10/2026 02:33:28
[2026-10-25 02:33:28,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:33:28,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:33:29,120.120 INFO    ] No existing commands found in stream
[2026-10-25 02:33:34,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:33:34,154.154 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 02:33:35,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:33:35,098.098 INFO    ] Checking for system updates...
[2026-10-25 02:33:35,135.135 INFO    ] 200
[2026-10-25 02:33:35,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:35,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:35,204.204 INFO    ] No update needed
[2026-10-25 02:33:35,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:35,244.244 INFO    ] 200
[2026-10-25 02:33:35,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:35,287.287 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:33:35,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:35,343.343 INFO    ] No camera update needed
[2026-10-25 02:33:35,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:33:35,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:33:35,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:33:35,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:33:37,398.398 INFO    ] ================================================
[2026-10-25 02:33:37,414.414 INFO    ] Launching Daemon at Sun Oct 25 02:33:37 IST 2026
[2026-10-25 02:33:37,424.424 INFO    ] ================================================
[2026-10-25 02:33:38,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:33:38
[2026-10-25 02:33:38,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:33:38,882.882 INFO    ] Initializing speech engine...
[2026-10-25 02:33:38,891.891 INFO    ] 2026-10-25 02:33:38
[2026-10-25 02:33:39,150.150 INFO    ] 2026-10-25 02:33:39
[2026-10-25 02:33:39,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:33:39,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:33:39,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:33:39,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:33:39,633.633 INFO    ] time= 25/10/2026 02:33:39
[2026-10-25 02:33:39,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:33:39,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:33:39,823.823 INFO    ] No existing commands found in stream
[2026-10-25 02:33:44,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:33:44,856.856 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 02:33:47,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:33:47,999.999 INFO    ] Checking for system updates...
[2026-10-25 02:33:48,041.041 INFO    ] 200
[2026-10-25 02:33:48,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:48,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:33:48,100.100 INFO    ] No update needed
[2026-10-25 02:33:48,103.103 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:48,142.142 INFO    ] 200
[2026-10-25 02:33:48,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:48,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:33:48,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:33:48,255.255 INFO    ] No camera update needed
[2026-10-25 02:33:48,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:33:48,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:33:48,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:33:48,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:33:50,316.316 INFO    ] ================================================
[2026-10-25 02:33:50,331.331 INFO    ] Launching Daemon at Sun Oct 25 02:33:50 IST 2026
[2026-10-25 02:33:50,342.342 INFO    ] ================================================
[2026-10-25 02:33:50,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:33:50
[2026-10-25 02:33:51,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:33:51,794.794 INFO    ] Initializing speech engine...
[2026-10-25 02:33:51,808.808 INFO    ] 2026-10-25 02:33:51
[2026-10-25 02:33:52,096.096 INFO    ] 2026-10-25 02:33:52
[2026-10-25 02:33:52,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:33:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:33:52,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:33:52,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:33:52,498.498 INFO    ] time= 25/10/2026 02:33:52
[2026-10-25 02:33:52,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:33:52,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:33:52,607.607 INFO    ] No existing commands found in stream
[2026-10-25 02:33:57,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:33:57,623.623 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 02:33:59,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:33:59,832.832 INFO    ] Checking for system updates...
[2026-10-25 02:33:59,868.868 INFO    ] 200
[2026-10-25 02:33:59,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:33:59,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:33:59,926.926 INFO    ] No update needed
[2026-10-25 02:33:59,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 02:33:59,966.966 INFO    ] 200
[2026-10-25 02:33:59,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:00,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:00,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:34:00,079.079 INFO    ] No camera update needed
[2026-10-25 02:34:00,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:00,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:00,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:00,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:34:02,138.138 INFO    ] ================================================
[2026-10-25 02:34:02,162.162 INFO    ] Launching Daemon at Sun Oct 25 02:34:02 IST 2026
[2026-10-25 02:34:02,180.180 INFO    ] ================================================
[2026-10-25 02:34:02,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:34:02
[2026-10-25 02:34:03,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:34:03,730.730 INFO    ] Initializing speech engine...
[2026-10-25 02:34:03,741.741 INFO    ] 2026-10-25 02:34:03
[2026-10-25 02:34:04,000.000 INFO    ] 2026-10-25 02:34:03
[2026-10-25 02:34:04,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:34:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:34:04,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:34:04,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:34:04,485.485 INFO    ] time= 25/10/2026 02:34:04
[2026-10-25 02:34:04,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:34:04,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:34:04,631.631 INFO    ] No existing commands found in stream
[2026-10-25 02:34:09,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:34:09,646.646 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 02:34:10,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:34:10,212.212 INFO    ] Checking for system updates...
[2026-10-25 02:34:10,251.251 INFO    ] 200
[2026-10-25 02:34:10,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:10,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:10,318.318 INFO    ] No update needed
[2026-10-25 02:34:10,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 02:34:10,356.356 INFO    ] 200
[2026-10-25 02:34:10,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:10,400.400 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:10,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:10,453.453 INFO    ] No camera update needed
[2026-10-25 02:34:10,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:10,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:10,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:10,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:34:12,516.516 INFO    ] ================================================
[2026-10-25 02:34:12,532.532 INFO    ] Launching Daemon at Sun Oct 25 02:34:12 IST 2026
[2026-10-25 02:34:12,543.543 INFO    ] ================================================
[2026-10-25 02:34:13,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:34:13
[2026-10-25 02:34:13,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:34:13,970.970 INFO    ] Initializing speech engine...
[2026-10-25 02:34:13,981.981 INFO    ] 2026-10-25 02:34:13
[2026-10-25 02:34:14,227.227 INFO    ] 2026-10-25 02:34:14
[2026-10-25 02:34:14,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:34:14,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:34:14,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:34:14,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:34:14,701.701 INFO    ] time= 25/10/2026 02:34:14
[2026-10-25 02:34:14,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:34:14,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:34:14,872.872 INFO    ] No existing commands found in stream
[2026-10-25 02:34:19,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:34:19,912.912 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 02:34:23,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:34:23,231.231 INFO    ] Checking for system updates...
[2026-10-25 02:34:23,267.267 INFO    ] 200
[2026-10-25 02:34:23,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:23,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:34:23,326.326 INFO    ] No update needed
[2026-10-25 02:34:23,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 02:34:23,362.362 INFO    ] 200
[2026-10-25 02:34:23,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:23,405.405 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:23,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:34:23,463.463 INFO    ] No camera update needed
[2026-10-25 02:34:23,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:23,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:23,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:23,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:34:25,519.519 INFO    ] ================================================
[2026-10-25 02:34:25,535.535 INFO    ] Launching Daemon at Sun Oct 25 02:34:25 IST 2026
[2026-10-25 02:34:25,547.547 INFO    ] ================================================
[2026-10-25 02:34:26,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:34:26
[2026-10-25 02:34:26,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:34:26,970.970 INFO    ] Initializing speech engine...
[2026-10-25 02:34:26,978.978 INFO    ] 2026-10-25 02:34:26
[2026-10-25 02:34:27,229.229 INFO    ] 2026-10-25 02:34:27
[2026-10-25 02:34:27,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:34:27,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:34:27,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:34:27,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:34:27,689.689 INFO    ] time= 25/10/2026 02:34:27
[2026-10-25 02:34:27,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:34:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:34:27,864.864 INFO    ] No existing commands found in stream
[2026-10-25 02:34:32,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:34:32,878.878 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 02:34:34,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:34:34,562.562 INFO    ] Checking for system updates...
[2026-10-25 02:34:34,598.598 INFO    ] 200
[2026-10-25 02:34:34,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:34,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:34,663.663 INFO    ] No update needed
[2026-10-25 02:34:34,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 02:34:34,703.703 INFO    ] 200
[2026-10-25 02:34:34,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:34,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:34,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:34,797.797 INFO    ] No camera update needed
[2026-10-25 02:34:34,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:34,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:34,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:34,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:34:36,855.855 INFO    ] ================================================
[2026-10-25 02:34:36,871.871 INFO    ] Launching Daemon at Sun Oct 25 02:34:36 IST 2026
[2026-10-25 02:34:36,883.883 INFO    ] ================================================
[2026-10-25 02:34:37,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:34:37
[2026-10-25 02:34:38,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:34:38,524.524 INFO    ] Initializing speech engine...
[2026-10-25 02:34:38,538.538 INFO    ] 2026-10-25 02:34:38
[2026-10-25 02:34:38,812.812 INFO    ] 2026-10-25 02:34:38
[2026-10-25 02:34:38,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:34:39,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:34:39,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:34:39,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:34:39,378.378 INFO    ] time= 25/10/2026 02:34:39
[2026-10-25 02:34:39,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:34:39,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:34:39,530.530 INFO    ] No existing commands found in stream
[2026-10-25 02:34:44,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:34:44,552.552 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 02:34:46,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:34:46,802.802 INFO    ] Checking for system updates...
[2026-10-25 02:34:46,844.844 INFO    ] 200
[2026-10-25 02:34:46,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:46,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:46,904.904 INFO    ] No update needed
[2026-10-25 02:34:46,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 02:34:46,957.957 INFO    ] 200
[2026-10-25 02:34:46,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:47,000.000 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:47,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:47,053.053 INFO    ] No camera update needed
[2026-10-25 02:34:47,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:47,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:47,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:47,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:34:49,110.110 INFO    ] ================================================
[2026-10-25 02:34:49,126.126 INFO    ] Launching Daemon at Sun Oct 25 02:34:49 IST 2026
[2026-10-25 02:34:49,137.137 INFO    ] ================================================
[2026-10-25 02:34:49,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:34:49
[2026-10-25 02:34:50,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:34:50,727.727 INFO    ] Initializing speech engine...
[2026-10-25 02:34:50,741.741 INFO    ] 2026-10-25 02:34:50
[2026-10-25 02:34:51,025.025 INFO    ] 2026-10-25 02:34:51
[2026-10-25 02:34:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:34:51,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:34:51,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:34:51,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:34:51,570.570 INFO    ] time= 25/10/2026 02:34:51
[2026-10-25 02:34:51,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:34:51,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:34:51,726.726 INFO    ] No existing commands found in stream
[2026-10-25 02:34:56,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:34:56,743.743 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 02:34:58,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:34:58,083.083 INFO    ] Checking for system updates...
[2026-10-25 02:34:58,120.120 INFO    ] 200
[2026-10-25 02:34:58,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:58,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:58,178.178 INFO    ] No update needed
[2026-10-25 02:34:58,180.180 INFO    ] Checking for camera pi updates...
[2026-10-25 02:34:58,216.216 INFO    ] 200
[2026-10-25 02:34:58,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:34:58,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:34:58,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:34:58,421.421 INFO    ] No camera update needed
[2026-10-25 02:34:58,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:34:58,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:34:58,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:34:58,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:00,476.476 INFO    ] ================================================
[2026-10-25 02:35:00,493.493 INFO    ] Launching Daemon at Sun Oct 25 02:35:00 IST 2026
[2026-10-25 02:35:00,504.504 INFO    ] ================================================
[2026-10-25 02:35:01,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:35:01
[2026-10-25 02:35:01,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:35:02,568.568 INFO    ] Initializing speech engine...
[2026-10-25 02:35:02,571.571 INFO    ] 2026-10-25 02:35:02
[2026-10-25 02:35:02,881.881 INFO    ] 2026-10-25 02:35:02
[2026-10-25 02:35:02,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:35:03,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:35:03,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:35:03,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:35:03,456.456 INFO    ] time= 25/10/2026 02:35:03
[2026-10-25 02:35:03,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:35:03,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:35:03,668.668 INFO    ] No existing commands found in stream
[2026-10-25 02:35:08,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:35:08,715.715 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 02:35:09,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:35:09,316.316 INFO    ] Checking for system updates...
[2026-10-25 02:35:09,354.354 INFO    ] 200
[2026-10-25 02:35:09,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:09,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:09,414.414 INFO    ] No update needed
[2026-10-25 02:35:09,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 02:35:09,452.452 INFO    ] 200
[2026-10-25 02:35:09,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:09,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:35:09,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:09,555.555 INFO    ] No camera update needed
[2026-10-25 02:35:09,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:35:09,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:35:09,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:35:09,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:11,614.614 INFO    ] ================================================
[2026-10-25 02:35:11,629.629 INFO    ] Launching Daemon at Sun Oct 25 02:35:11 IST 2026
[2026-10-25 02:35:11,640.640 INFO    ] ================================================
[2026-10-25 02:35:12,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:35:12
[2026-10-25 02:35:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:35:13,153.153 INFO    ] Initializing speech engine...
[2026-10-25 02:35:13,168.168 INFO    ] 2026-10-25 02:35:13
[2026-10-25 02:35:13,449.449 INFO    ] 2026-10-25 02:35:13
[2026-10-25 02:35:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:35:13,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:35:13,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:35:13,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:35:13,942.942 INFO    ] time= 25/10/2026 02:35:13
[2026-10-25 02:35:13,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:35:14,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:35:14,135.135 INFO    ] No existing commands found in stream
[2026-10-25 02:35:19,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:35:19,169.169 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 02:35:22,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:35:22,806.806 INFO    ] Checking for system updates...
[2026-10-25 02:35:22,843.843 INFO    ] 200
[2026-10-25 02:35:22,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:22,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:35:22,901.901 INFO    ] No update needed
[2026-10-25 02:35:22,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 02:35:22,940.940 INFO    ] 200
[2026-10-25 02:35:22,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:22,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:35:23,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:35:23,056.056 INFO    ] No camera update needed
[2026-10-25 02:35:23,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:35:23,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:35:23,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:35:23,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:25,116.116 INFO    ] ================================================
[2026-10-25 02:35:25,132.132 INFO    ] Launching Daemon at Sun Oct 25 02:35:25 IST 2026
[2026-10-25 02:35:25,143.143 INFO    ] ================================================
[2026-10-25 02:35:25,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:35:25
[2026-10-25 02:35:26,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:35:26,567.567 INFO    ] Initializing speech engine...
[2026-10-25 02:35:26,575.575 INFO    ] 2026-10-25 02:35:26
[2026-10-25 02:35:26,825.825 INFO    ] 2026-10-25 02:35:26
[2026-10-25 02:35:26,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:35:27,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:35:27,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:35:27,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:35:27,287.287 INFO    ] time= 25/10/2026 02:35:27
[2026-10-25 02:35:27,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:35:27,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:35:27,472.472 INFO    ] No existing commands found in stream
[2026-10-25 02:35:32,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:35:32,513.513 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 02:35:34,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:35:34,794.794 INFO    ] Checking for system updates...
[2026-10-25 02:35:34,830.830 INFO    ] 200
[2026-10-25 02:35:34,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:34,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:34,893.893 INFO    ] No update needed
[2026-10-25 02:35:34,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 02:35:34,933.933 INFO    ] 200
[2026-10-25 02:35:34,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:34,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:35:35,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:35,031.031 INFO    ] No camera update needed
[2026-10-25 02:35:35,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:35:35,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:35:35,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:35:35,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:37,087.087 INFO    ] ================================================
[2026-10-25 02:35:37,102.102 INFO    ] Launching Daemon at Sun Oct 25 02:35:37 IST 2026
[2026-10-25 02:35:37,113.113 INFO    ] ================================================
[2026-10-25 02:35:37,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:35:37
[2026-10-25 02:35:38,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:35:38,553.553 INFO    ] Initializing speech engine...
[2026-10-25 02:35:38,563.563 INFO    ] 2026-10-25 02:35:38
[2026-10-25 02:35:38,820.820 INFO    ] 2026-10-25 02:35:38
[2026-10-25 02:35:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:35:39,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:35:39,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:35:39,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:35:39,294.294 INFO    ] time= 25/10/2026 02:35:39
[2026-10-25 02:35:39,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:35:39,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:35:39,428.428 INFO    ] No existing commands found in stream
[2026-10-25 02:35:44,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:35:44,443.443 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 02:35:45,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:35:45,935.935 INFO    ] Checking for system updates...
[2026-10-25 02:35:45,972.972 INFO    ] 200
[2026-10-25 02:35:45,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:46,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:46,035.035 INFO    ] No update needed
[2026-10-25 02:35:46,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 02:35:46,072.072 INFO    ] 200
[2026-10-25 02:35:46,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:46,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:35:46,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:46,163.163 INFO    ] No camera update needed
[2026-10-25 02:35:46,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:35:46,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:35:46,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:35:46,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:48,219.219 INFO    ] ================================================
[2026-10-25 02:35:48,235.235 INFO    ] Launching Daemon at Sun Oct 25 02:35:48 IST 2026
[2026-10-25 02:35:48,245.245 INFO    ] ================================================
[2026-10-25 02:35:48,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:35:48
[2026-10-25 02:35:49,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:35:49,697.697 INFO    ] Initializing speech engine...
[2026-10-25 02:35:49,702.702 INFO    ] 2026-10-25 02:35:49
[2026-10-25 02:35:49,962.962 INFO    ] 2026-10-25 02:35:49
[2026-10-25 02:35:49,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:35:50,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:35:50,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:35:50,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:35:50,414.414 INFO    ] time= 25/10/2026 02:35:50
[2026-10-25 02:35:50,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:35:50,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:35:50,570.570 INFO    ] No existing commands found in stream
[2026-10-25 02:35:55,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:35:55,593.593 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 02:35:57,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:35:57,286.286 INFO    ] Checking for system updates...
[2026-10-25 02:35:57,340.340 INFO    ] 200
[2026-10-25 02:35:57,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:57,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:57,399.399 INFO    ] No update needed
[2026-10-25 02:35:57,402.402 INFO    ] Checking for camera pi updates...
[2026-10-25 02:35:57,436.436 INFO    ] 200
[2026-10-25 02:35:57,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:35:57,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:35:57,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:35:57,525.525 INFO    ] No camera update needed
[2026-10-25 02:35:57,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:35:57,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:35:57,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:35:57,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:35:59,581.581 INFO    ] ================================================
[2026-10-25 02:35:59,597.597 INFO    ] Launching Daemon at Sun Oct 25 02:35:59 IST 2026
[2026-10-25 02:35:59,608.608 INFO    ] ================================================
[2026-10-25 02:36:00,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:36:00
[2026-10-25 02:36:00,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:36:01,416.416 INFO    ] Initializing speech engine...
[2026-10-25 02:36:01,427.427 INFO    ] 2026-10-25 02:36:01
[2026-10-25 02:36:01,846.846 INFO    ] 2026-10-25 02:36:01
[2026-10-25 02:36:01,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:36:02,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:36:02,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:36:02,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:36:02,369.369 INFO    ] time= 25/10/2026 02:36:02
[2026-10-25 02:36:02,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:36:02,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:36:02,521.521 INFO    ] No existing commands found in stream
[2026-10-25 02:36:07,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:36:07,555.555 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 02:36:10,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:36:10,086.086 INFO    ] Checking for system updates...
[2026-10-25 02:36:10,123.123 INFO    ] 200
[2026-10-25 02:36:10,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:10,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:36:10,182.182 INFO    ] No update needed
[2026-10-25 02:36:10,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 02:36:10,218.218 INFO    ] 200
[2026-10-25 02:36:10,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:10,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:36:10,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:36:10,316.316 INFO    ] No camera update needed
[2026-10-25 02:36:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:36:10,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:36:10,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:36:10,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:36:12,372.372 INFO    ] ================================================
[2026-10-25 02:36:12,388.388 INFO    ] Launching Daemon at Sun Oct 25 02:36:12 IST 2026
[2026-10-25 02:36:12,403.403 INFO    ] ================================================
[2026-10-25 02:36:12,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:36:12
[2026-10-25 02:36:13,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:36:13,836.836 INFO    ] Initializing speech engine...
[2026-10-25 02:36:13,845.845 INFO    ] 2026-10-25 02:36:13
[2026-10-25 02:36:14,137.137 INFO    ] 2026-10-25 02:36:14
[2026-10-25 02:36:14,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:36:14,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:36:14,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:36:14,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:36:14,551.551 INFO    ] time= 25/10/2026 02:36:14
[2026-10-25 02:36:14,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:36:14,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:36:14,715.715 INFO    ] No existing commands found in stream
[2026-10-25 02:36:19,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:36:19,743.743 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 02:36:23,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:36:23,922.922 INFO    ] Checking for system updates...
[2026-10-25 02:36:23,957.957 INFO    ] 200
[2026-10-25 02:36:23,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:24,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:36:24,016.016 INFO    ] No update needed
[2026-10-25 02:36:24,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 02:36:24,060.060 INFO    ] 200
[2026-10-25 02:36:24,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:24,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:36:24,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:36:24,173.173 INFO    ] No camera update needed
[2026-10-25 02:36:24,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:36:24,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:36:24,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:36:24,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:36:26,231.231 INFO    ] ================================================
[2026-10-25 02:36:26,246.246 INFO    ] Launching Daemon at Sun Oct 25 02:36:26 IST 2026
[2026-10-25 02:36:26,257.257 INFO    ] ================================================
[2026-10-25 02:36:26,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:36:26
[2026-10-25 02:36:27,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:36:27,851.851 INFO    ] Initializing speech engine...
[2026-10-25 02:36:27,860.860 INFO    ] 2026-10-25 02:36:27
[2026-10-25 02:36:28,131.131 INFO    ] 2026-10-25 02:36:28
[2026-10-25 02:36:28,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:36:28,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:36:28,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:36:28,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:36:28,609.609 INFO    ] time= 25/10/2026 02:36:28
[2026-10-25 02:36:28,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:36:28,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:36:28,811.811 INFO    ] No existing commands found in stream
[2026-10-25 02:36:33,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:36:33,836.836 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 02:36:38,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:36:38,246.246 INFO    ] Checking for system updates...
[2026-10-25 02:36:38,282.282 INFO    ] 200
[2026-10-25 02:36:38,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:38,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:36:38,346.346 INFO    ] No update needed
[2026-10-25 02:36:38,349.349 INFO    ] Checking for camera pi updates...
[2026-10-25 02:36:38,386.386 INFO    ] 200
[2026-10-25 02:36:38,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:38,430.430 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:36:38,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:36:38,474.474 INFO    ] No camera update needed
[2026-10-25 02:36:38,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:36:38,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:36:38,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:36:38,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:36:40,528.528 INFO    ] ================================================
[2026-10-25 02:36:40,543.543 INFO    ] Launching Daemon at Sun Oct 25 02:36:40 IST 2026
[2026-10-25 02:36:40,554.554 INFO    ] ================================================
[2026-10-25 02:36:41,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:36:41
[2026-10-25 02:36:41,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:36:42,007.007 INFO    ] Initializing speech engine...
[2026-10-25 02:36:42,023.023 INFO    ] 2026-10-25 02:36:42
[2026-10-25 02:36:42,307.307 INFO    ] 2026-10-25 02:36:42
[2026-10-25 02:36:42,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:36:42,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:36:42,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:36:42,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:36:42,797.797 INFO    ] time= 25/10/2026 02:36:42
[2026-10-25 02:36:42,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:36:42,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:36:42,996.996 INFO    ] No existing commands found in stream
[2026-10-25 02:36:48,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:36:48,010.010 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 02:36:49,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:36:49,082.082 INFO    ] Checking for system updates...
[2026-10-25 02:36:49,471.471 INFO    ] 200
[2026-10-25 02:36:49,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:49,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:36:49,528.528 INFO    ] No update needed
[2026-10-25 02:36:49,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 02:36:49,567.567 INFO    ] 200
[2026-10-25 02:36:49,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:36:49,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:36:49,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:36:49,670.670 INFO    ] No camera update needed
[2026-10-25 02:36:49,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:36:49,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:36:49,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:36:49,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:36:51,726.726 INFO    ] ================================================
[2026-10-25 02:36:51,742.742 INFO    ] Launching Daemon at Sun Oct 25 02:36:51 IST 2026
[2026-10-25 02:36:51,752.752 INFO    ] ================================================
[2026-10-25 02:36:52,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:36:52
[2026-10-25 02:36:52,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:36:53,217.217 INFO    ] Initializing speech engine...
[2026-10-25 02:36:53,226.226 INFO    ] 2026-10-25 02:36:53
[2026-10-25 02:36:53,491.491 INFO    ] 2026-10-25 02:36:53
[2026-10-25 02:36:53,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:36:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:36:53,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:36:53,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:36:53,889.889 INFO    ] time= 25/10/2026 02:36:53
[2026-10-25 02:36:53,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:36:53,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:36:54,064.064 INFO    ] No existing commands found in stream
[2026-10-25 02:36:59,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:36:59,092.092 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 02:37:00,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:37:00,888.888 INFO    ] Checking for system updates...
[2026-10-25 02:37:00,925.925 INFO    ] 200
[2026-10-25 02:37:00,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:00,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:00,983.983 INFO    ] No update needed
[2026-10-25 02:37:00,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 02:37:01,024.024 INFO    ] 200
[2026-10-25 02:37:01,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:01,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:37:01,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:01,236.236 INFO    ] No camera update needed
[2026-10-25 02:37:01,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:37:01,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:37:01,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:37:01,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:37:03,326.326 INFO    ] ================================================
[2026-10-25 02:37:03,341.341 INFO    ] Launching Daemon at Sun Oct 25 02:37:03 IST 2026
[2026-10-25 02:37:03,352.352 INFO    ] ================================================
[2026-10-25 02:37:03,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:37:03
[2026-10-25 02:37:04,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:37:04,816.816 INFO    ] Initializing speech engine...
[2026-10-25 02:37:04,826.826 INFO    ] 2026-10-25 02:37:04
[2026-10-25 02:37:05,087.087 INFO    ] 2026-10-25 02:37:05
[2026-10-25 02:37:05,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:37:05,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:37:05,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:37:05,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:37:05,550.550 INFO    ] time= 25/10/2026 02:37:05
[2026-10-25 02:37:05,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:37:05,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:37:05,722.722 INFO    ] No existing commands found in stream
[2026-10-25 02:37:10,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:37:10,761.761 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 02:37:14,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:37:14,819.819 INFO    ] Checking for system updates...
[2026-10-25 02:37:14,859.859 INFO    ] 200
[2026-10-25 02:37:14,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:14,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:14,924.924 INFO    ] No update needed
[2026-10-25 02:37:14,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 02:37:14,960.960 INFO    ] 200
[2026-10-25 02:37:14,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:15,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:37:15,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:15,065.065 INFO    ] No camera update needed
[2026-10-25 02:37:15,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:37:15,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:37:15,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:37:15,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:37:17,122.122 INFO    ] ================================================
[2026-10-25 02:37:17,137.137 INFO    ] Launching Daemon at Sun Oct 25 02:37:17 IST 2026
[2026-10-25 02:37:17,148.148 INFO    ] ================================================
[2026-10-25 02:37:17,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:37:17
[2026-10-25 02:37:18,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:37:18,694.694 INFO    ] Initializing speech engine...
[2026-10-25 02:37:18,708.708 INFO    ] 2026-10-25 02:37:18
[2026-10-25 02:37:19,020.020 INFO    ] 2026-10-25 02:37:18
[2026-10-25 02:37:19,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:37:19,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:37:19,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:37:19,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:37:19,543.543 INFO    ] time= 25/10/2026 02:37:19
[2026-10-25 02:37:19,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:37:19,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:37:19,703.703 INFO    ] No existing commands found in stream
[2026-10-25 02:37:24,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:37:24,726.726 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 02:37:25,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:37:25,232.232 INFO    ] Checking for system updates...
[2026-10-25 02:37:25,268.268 INFO    ] 200
[2026-10-25 02:37:25,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:25,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:25,332.332 INFO    ] No update needed
[2026-10-25 02:37:25,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 02:37:25,369.369 INFO    ] 200
[2026-10-25 02:37:25,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:25,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:37:25,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:25,461.461 INFO    ] No camera update needed
[2026-10-25 02:37:25,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:37:25,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:37:25,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:37:25,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:37:27,517.517 INFO    ] ================================================
[2026-10-25 02:37:27,533.533 INFO    ] Launching Daemon at Sun Oct 25 02:37:27 IST 2026
[2026-10-25 02:37:27,543.543 INFO    ] ================================================
[2026-10-25 02:37:28,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:37:28
[2026-10-25 02:37:28,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:37:28,983.983 INFO    ] Initializing speech engine...
[2026-10-25 02:37:29,008.008 INFO    ] 2026-10-25 02:37:28
[2026-10-25 02:37:29,286.286 INFO    ] 2026-10-25 02:37:29
[2026-10-25 02:37:29,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:37:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:37:29,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:37:29,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:37:29,707.707 INFO    ] time= 25/10/2026 02:37:29
[2026-10-25 02:37:29,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:37:29,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:37:29,871.871 INFO    ] No existing commands found in stream
[2026-10-25 02:37:34,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:37:34,899.899 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 02:37:37,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:37:37,886.886 INFO    ] Checking for system updates...
[2026-10-25 02:37:37,923.923 INFO    ] 200
[2026-10-25 02:37:37,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:37,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:37:37,983.983 INFO    ] No update needed
[2026-10-25 02:37:37,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 02:37:38,027.027 INFO    ] 200
[2026-10-25 02:37:38,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:38,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:37:38,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:37:38,108.108 INFO    ] No camera update needed
[2026-10-25 02:37:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:37:38,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:37:38,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:37:38,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:37:40,164.164 INFO    ] ================================================
[2026-10-25 02:37:40,180.180 INFO    ] Launching Daemon at Sun Oct 25 02:37:40 IST 2026
[2026-10-25 02:37:40,191.191 INFO    ] ================================================
[2026-10-25 02:37:40,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:37:40
[2026-10-25 02:37:41,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:37:41,809.809 INFO    ] Initializing speech engine...
[2026-10-25 02:37:41,819.819 INFO    ] 2026-10-25 02:37:41
[2026-10-25 02:37:42,101.101 INFO    ] 2026-10-25 02:37:42
[2026-10-25 02:37:42,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:37:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:37:42,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:37:42,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:37:42,631.631 INFO    ] time= 25/10/2026 02:37:42
[2026-10-25 02:37:42,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:37:42,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:37:42,787.787 INFO    ] No existing commands found in stream
[2026-10-25 02:37:47,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:37:47,815.815 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 02:37:50,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:37:50,562.562 INFO    ] Checking for system updates...
[2026-10-25 02:37:50,599.599 INFO    ] 200
[2026-10-25 02:37:50,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:50,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:50,665.665 INFO    ] No update needed
[2026-10-25 02:37:50,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 02:37:50,706.706 INFO    ] 200
[2026-10-25 02:37:50,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:37:50,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:37:50,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:37:50,816.816 INFO    ] No camera update needed
[2026-10-25 02:37:50,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:37:50,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:37:50,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:37:50,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:37:52,876.876 INFO    ] ================================================
[2026-10-25 02:37:52,891.891 INFO    ] Launching Daemon at Sun Oct 25 02:37:52 IST 2026
[2026-10-25 02:37:52,902.902 INFO    ] ================================================
[2026-10-25 02:37:53,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:37:53
[2026-10-25 02:37:54,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:37:54,346.346 INFO    ] Initializing speech engine...
[2026-10-25 02:37:54,355.355 INFO    ] 2026-10-25 02:37:54
[2026-10-25 02:37:54,604.604 INFO    ] 2026-10-25 02:37:54
[2026-10-25 02:37:54,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:37:54,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:37:54,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:37:55,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:37:55,101.101 INFO    ] time= 25/10/2026 02:37:55
[2026-10-25 02:37:55,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:37:55,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:37:55,301.301 INFO    ] No existing commands found in stream
[2026-10-25 02:38:00,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:00,328.328 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 02:38:01,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:38:01,712.712 INFO    ] Checking for system updates...
[2026-10-25 02:38:01,757.757 INFO    ] 200
[2026-10-25 02:38:01,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:01,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:01,825.825 INFO    ] No update needed
[2026-10-25 02:38:01,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:01,866.866 INFO    ] 200
[2026-10-25 02:38:01,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:01,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:38:01,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:01,954.954 INFO    ] No camera update needed
[2026-10-25 02:38:01,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:38:01,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:38:01,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:38:01,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:38:04,018.018 INFO    ] ================================================
[2026-10-25 02:38:04,034.034 INFO    ] Launching Daemon at Sun Oct 25 02:38:04 IST 2026
[2026-10-25 02:38:04,045.045 INFO    ] ================================================
[2026-10-25 02:38:04,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:38:04
[2026-10-25 02:38:05,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:38:05,441.441 INFO    ] Initializing speech engine...
[2026-10-25 02:38:05,464.464 INFO    ] 2026-10-25 02:38:05
[2026-10-25 02:38:05,716.716 INFO    ] 2026-10-25 02:38:05
[2026-10-25 02:38:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:38:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:38:06,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:38:06,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:38:06,189.189 INFO    ] time= 25/10/2026 02:38:06
[2026-10-25 02:38:06,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:38:06,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:38:06,343.343 INFO    ] No existing commands found in stream
[2026-10-25 02:38:11,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:11,357.357 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 02:38:15,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:38:15,407.407 INFO    ] Checking for system updates...
[2026-10-25 02:38:15,447.447 INFO    ] 200
[2026-10-25 02:38:15,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:15,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:15,511.511 INFO    ] No update needed
[2026-10-25 02:38:15,513.513 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:15,547.547 INFO    ] 200
[2026-10-25 02:38:15,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:15,591.591 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:38:15,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:15,641.641 INFO    ] No camera update needed
[2026-10-25 02:38:15,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:38:15,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:38:15,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:38:15,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:38:17,697.697 INFO    ] ================================================
[2026-10-25 02:38:17,712.712 INFO    ] Launching Daemon at Sun Oct 25 02:38:17 IST 2026
[2026-10-25 02:38:17,724.724 INFO    ] ================================================
[2026-10-25 02:38:18,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:38:18
[2026-10-25 02:38:18,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:38:19,144.144 INFO    ] Initializing speech engine...
[2026-10-25 02:38:19,153.153 INFO    ] 2026-10-25 02:38:19
[2026-10-25 02:38:19,446.446 INFO    ] 2026-10-25 02:38:19
[2026-10-25 02:38:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:38:19,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:38:19,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:38:19,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:38:19,864.864 INFO    ] time= 25/10/2026 02:38:19
[2026-10-25 02:38:19,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:38:19,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:38:19,953.953 INFO    ] No existing commands found in stream
[2026-10-25 02:38:24,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:24,967.967 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 02:38:25,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:38:25,831.831 INFO    ] Checking for system updates...
[2026-10-25 02:38:25,868.868 INFO    ] 200
[2026-10-25 02:38:25,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:25,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:38:25,926.926 INFO    ] No update needed
[2026-10-25 02:38:25,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:25,963.963 INFO    ] 200
[2026-10-25 02:38:25,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:26,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:38:26,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:38:26,057.057 INFO    ] No camera update needed
[2026-10-25 02:38:26,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:38:26,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:38:26,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:38:26,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:38:28,112.112 INFO    ] ================================================
[2026-10-25 02:38:28,128.128 INFO    ] Launching Daemon at Sun Oct 25 02:38:28 IST 2026
[2026-10-25 02:38:28,139.139 INFO    ] ================================================
[2026-10-25 02:38:28,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:38:28
[2026-10-25 02:38:29,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:38:29,600.600 INFO    ] Initializing speech engine...
[2026-10-25 02:38:29,621.621 INFO    ] 2026-10-25 02:38:29
[2026-10-25 02:38:29,890.890 INFO    ] 2026-10-25 02:38:29
[2026-10-25 02:38:29,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:38:30,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:38:30,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:38:30,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:38:30,313.313 INFO    ] time= 25/10/2026 02:38:30
[2026-10-25 02:38:30,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:38:30,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:38:30,449.449 INFO    ] No existing commands found in stream
[2026-10-25 02:38:35,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:35,476.476 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 02:38:36,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:38:36,391.391 INFO    ] Checking for system updates...
[2026-10-25 02:38:36,426.426 INFO    ] 200
[2026-10-25 02:38:36,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:36,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:36,492.492 INFO    ] No update needed
[2026-10-25 02:38:36,494.494 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:36,528.528 INFO    ] 200
[2026-10-25 02:38:36,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:36,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:38:36,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:38:36,631.631 INFO    ] No camera update needed
[2026-10-25 02:38:36,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:38:36,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:38:36,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:38:36,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:38:38,686.686 INFO    ] ================================================
[2026-10-25 02:38:38,702.702 INFO    ] Launching Daemon at Sun Oct 25 02:38:38 IST 2026
[2026-10-25 02:38:38,712.712 INFO    ] ================================================
[2026-10-25 02:38:39,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:38:39
[2026-10-25 02:38:39,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:38:40,157.157 INFO    ] Initializing speech engine...
[2026-10-25 02:38:40,165.165 INFO    ] 2026-10-25 02:38:40
[2026-10-25 02:38:40,461.461 INFO    ] 2026-10-25 02:38:40
[2026-10-25 02:38:40,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:38:40,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:38:40,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:38:40,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:38:40,846.846 INFO    ] time= 25/10/2026 02:38:40
[2026-10-25 02:38:40,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:38:40,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:38:40,930.930 INFO    ] No existing commands found in stream
[2026-10-25 02:38:45,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:45,945.945 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 02:38:49,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:38:49,329.329 INFO    ] Checking for system updates...
[2026-10-25 02:38:49,368.368 INFO    ] 200
[2026-10-25 02:38:49,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:49,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:38:49,433.433 INFO    ] No update needed
[2026-10-25 02:38:49,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:49,473.473 INFO    ] 200
[2026-10-25 02:38:49,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:49,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:38:49,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:38:49,566.566 INFO    ] No camera update needed
[2026-10-25 02:38:49,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:38:49,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:38:49,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:38:49,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:38:51,623.623 INFO    ] ================================================
[2026-10-25 02:38:51,637.637 INFO    ] Launching Daemon at Sun Oct 25 02:38:51 IST 2026
[2026-10-25 02:38:51,648.648 INFO    ] ================================================
[2026-10-25 02:38:52,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:38:52
[2026-10-25 02:38:52,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:38:53,076.076 INFO    ] Initializing speech engine...
[2026-10-25 02:38:53,099.099 INFO    ] 2026-10-25 02:38:53
[2026-10-25 02:38:53,357.357 INFO    ] 2026-10-25 02:38:53
[2026-10-25 02:38:53,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:38:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:38:53,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:38:53,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:38:53,838.838 INFO    ] time= 25/10/2026 02:38:53
[2026-10-25 02:38:53,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:38:53,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:38:54,037.037 INFO    ] No existing commands found in stream
[2026-10-25 02:38:59,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:38:59,067.067 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 02:38:59,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:38:59,785.785 INFO    ] Checking for system updates...
[2026-10-25 02:38:59,822.822 INFO    ] 200
[2026-10-25 02:38:59,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:59,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:38:59,880.880 INFO    ] No update needed
[2026-10-25 02:38:59,883.883 INFO    ] Checking for camera pi updates...
[2026-10-25 02:38:59,917.917 INFO    ] 200
[2026-10-25 02:38:59,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:38:59,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:39:00,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:00,020.020 INFO    ] No camera update needed
[2026-10-25 02:39:00,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:00,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:00,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:00,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:39:02,087.087 INFO    ] ================================================
[2026-10-25 02:39:02,112.112 INFO    ] Launching Daemon at Sun Oct 25 02:39:02 IST 2026
[2026-10-25 02:39:02,130.130 INFO    ] ================================================
[2026-10-25 02:39:02,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:39:02
[2026-10-25 02:39:03,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:39:03,793.793 INFO    ] Initializing speech engine...
[2026-10-25 02:39:03,801.801 INFO    ] 2026-10-25 02:39:03
[2026-10-25 02:39:04,053.053 INFO    ] 2026-10-25 02:39:04
[2026-10-25 02:39:04,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:39:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:39:04,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:39:04,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:39:04,534.534 INFO    ] time= 25/10/2026 02:39:04
[2026-10-25 02:39:04,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:39:04,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:39:04,697.697 INFO    ] No existing commands found in stream
[2026-10-25 02:39:09,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:39:09,720.720 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 02:39:12,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:39:12,878.878 INFO    ] Checking for system updates...
[2026-10-25 02:39:12,918.918 INFO    ] 200
[2026-10-25 02:39:12,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:12,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:12,977.977 INFO    ] No update needed
[2026-10-25 02:39:12,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 02:39:13,014.014 INFO    ] 200
[2026-10-25 02:39:13,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:13,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:39:13,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:13,220.220 INFO    ] No camera update needed
[2026-10-25 02:39:13,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:13,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:13,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:13,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:39:15,286.286 INFO    ] ================================================
[2026-10-25 02:39:15,301.301 INFO    ] Launching Daemon at Sun Oct 25 02:39:15 IST 2026
[2026-10-25 02:39:15,312.312 INFO    ] ================================================
[2026-10-25 02:39:15,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:39:15
[2026-10-25 02:39:16,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:39:16,762.762 INFO    ] Initializing speech engine...
[2026-10-25 02:39:16,772.772 INFO    ] 2026-10-25 02:39:16
[2026-10-25 02:39:17,020.020 INFO    ] 2026-10-25 02:39:17
[2026-10-25 02:39:17,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:39:17,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:39:17,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:39:17,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:39:17,503.503 INFO    ] time= 25/10/2026 02:39:17
[2026-10-25 02:39:17,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:39:17,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:39:17,712.712 INFO    ] No existing commands found in stream
[2026-10-25 02:39:22,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:39:22,740.740 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 02:39:24,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:39:24,543.543 INFO    ] Checking for system updates...
[2026-10-25 02:39:24,580.580 INFO    ] 200
[2026-10-25 02:39:24,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:24,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:24,642.642 INFO    ] No update needed
[2026-10-25 02:39:24,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 02:39:24,679.679 INFO    ] 200
[2026-10-25 02:39:24,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:24,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:39:24,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:24,781.781 INFO    ] No camera update needed
[2026-10-25 02:39:24,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:24,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:24,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:24,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:39:26,837.837 INFO    ] ================================================
[2026-10-25 02:39:26,853.853 INFO    ] Launching Daemon at Sun Oct 25 02:39:26 IST 2026
[2026-10-25 02:39:26,863.863 INFO    ] ================================================
[2026-10-25 02:39:27,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:39:27
[2026-10-25 02:39:28,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:39:28,343.343 INFO    ] Initializing speech engine...
[2026-10-25 02:39:28,352.352 INFO    ] 2026-10-25 02:39:28
[2026-10-25 02:39:28,610.610 INFO    ] 2026-10-25 02:39:28
[2026-10-25 02:39:28,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:39:28,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:39:28,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:39:29,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:39:29,081.081 INFO    ] time= 25/10/2026 02:39:29
[2026-10-25 02:39:29,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:39:29,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:39:29,233.233 INFO    ] No existing commands found in stream
[2026-10-25 02:39:34,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:39:34,247.247 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 02:39:35,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:39:35,433.433 INFO    ] Checking for system updates...
[2026-10-25 02:39:35,480.480 INFO    ] 200
[2026-10-25 02:39:35,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:39:35,486.486 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 02:39:35,488.488 INFO    ] Checking for camera pi updates...
[2026-10-25 02:39:35,526.526 INFO    ] 200
[2026-10-25 02:39:35,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 02:39:35,531.531 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 02:39:35,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:35,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:35,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:35,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:39:37,598.598 INFO    ] ================================================
[2026-10-25 02:39:37,613.613 INFO    ] Launching Daemon at Sun Oct 25 02:39:37 IST 2026
[2026-10-25 02:39:37,623.623 INFO    ] ================================================
[2026-10-25 02:39:38,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:39:38
[2026-10-25 02:39:38,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:39:39,087.087 INFO    ] Initializing speech engine...
[2026-10-25 02:39:39,111.111 INFO    ] 2026-10-25 02:39:39
[2026-10-25 02:39:39,367.367 INFO    ] 2026-10-25 02:39:39
[2026-10-25 02:39:39,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:39:39,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:39:39,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:39:39,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:39:39,749.749 INFO    ] time= 25/10/2026 02:39:39
[2026-10-25 02:39:39,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:39:39,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:39:39,858.858 INFO    ] No existing commands found in stream
[2026-10-25 02:39:44,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:39:44,873.873 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 02:39:48,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:39:48,502.502 INFO    ] Checking for system updates...
[2026-10-25 02:39:48,538.538 INFO    ] 200
[2026-10-25 02:39:48,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:48,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:48,598.598 INFO    ] No update needed
[2026-10-25 02:39:48,600.600 INFO    ] Checking for camera pi updates...
[2026-10-25 02:39:48,638.638 INFO    ] 200
[2026-10-25 02:39:48,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:48,686.686 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:39:48,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:39:48,738.738 INFO    ] No camera update needed
[2026-10-25 02:39:48,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:48,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:48,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:48,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:39:50,793.793 INFO    ] ================================================
[2026-10-25 02:39:50,809.809 INFO    ] Launching Daemon at Sun Oct 25 02:39:50 IST 2026
[2026-10-25 02:39:50,820.820 INFO    ] ================================================
[2026-10-25 02:39:51,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:39:51
[2026-10-25 02:39:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:39:52,276.276 INFO    ] Initializing speech engine...
[2026-10-25 02:39:52,284.284 INFO    ] 2026-10-25 02:39:52
[2026-10-25 02:39:52,543.543 INFO    ] 2026-10-25 02:39:52
[2026-10-25 02:39:52,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:39:52,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:39:52,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:39:52,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:39:52,997.997 INFO    ] time= 25/10/2026 02:39:52
[2026-10-25 02:39:53,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:39:53,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:39:53,164.164 INFO    ] No existing commands found in stream
[2026-10-25 02:39:58,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:39:58,204.204 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 02:39:59,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:39:59,559.559 INFO    ] Checking for system updates...
[2026-10-25 02:39:59,599.599 INFO    ] 200
[2026-10-25 02:39:59,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:59,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:39:59,656.656 INFO    ] No update needed
[2026-10-25 02:39:59,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 02:39:59,693.693 INFO    ] 200
[2026-10-25 02:39:59,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:39:59,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:39:59,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:39:59,795.795 INFO    ] No camera update needed
[2026-10-25 02:39:59,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:39:59,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:39:59,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:39:59,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:40:01,897.897 INFO    ] ================================================
[2026-10-25 02:40:02,954.954 INFO    ] Launching Daemon at Sun Oct 25 02:40:01 IST 2026
[2026-10-25 02:40:02,013.013 INFO    ] ================================================
[2026-10-25 02:40:02,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:40:02
[2026-10-25 02:40:03,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:40:03,926.926 INFO    ] Initializing speech engine...
[2026-10-25 02:40:03,932.932 INFO    ] 2026-10-25 02:40:03
[2026-10-25 02:40:04,192.192 INFO    ] 2026-10-25 02:40:04
[2026-10-25 02:40:04,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:40:04,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:40:04,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:40:04,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:40:04,702.702 INFO    ] time= 25/10/2026 02:40:04
[2026-10-25 02:40:04,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:40:04,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:40:04,892.892 INFO    ] No existing commands found in stream
[2026-10-25 02:40:09,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:40:09,914.914 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 02:40:13,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:40:13,045.045 INFO    ] Checking for system updates...
[2026-10-25 02:40:13,085.085 INFO    ] 200
[2026-10-25 02:40:13,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:13,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:40:13,144.144 INFO    ] No update needed
[2026-10-25 02:40:13,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 02:40:13,179.179 INFO    ] 200
[2026-10-25 02:40:13,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:13,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:40:13,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:40:13,273.273 INFO    ] No camera update needed
[2026-10-25 02:40:13,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:40:13,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:40:13,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:40:13,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:40:15,327.327 INFO    ] ================================================
[2026-10-25 02:40:15,342.342 INFO    ] Launching Daemon at Sun Oct 25 02:40:15 IST 2026
[2026-10-25 02:40:15,353.353 INFO    ] ================================================
[2026-10-25 02:40:15,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:40:15
[2026-10-25 02:40:16,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:40:16,756.756 INFO    ] Initializing speech engine...
[2026-10-25 02:40:16,762.762 INFO    ] 2026-10-25 02:40:16
[2026-10-25 02:40:17,053.053 INFO    ] 2026-10-25 02:40:17
[2026-10-25 02:40:17,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:40:17,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:40:17,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:40:17,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:40:17,563.563 INFO    ] time= 25/10/2026 02:40:17
[2026-10-25 02:40:17,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:40:17,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:40:17,752.752 INFO    ] No existing commands found in stream
[2026-10-25 02:40:22,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:40:22,780.780 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 02:40:25,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:40:25,616.616 INFO    ] Checking for system updates...
[2026-10-25 02:40:25,655.655 INFO    ] 200
[2026-10-25 02:40:25,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:25,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:40:25,713.713 INFO    ] No update needed
[2026-10-25 02:40:25,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 02:40:25,752.752 INFO    ] 200
[2026-10-25 02:40:25,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:25,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:40:25,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:40:25,852.852 INFO    ] No camera update needed
[2026-10-25 02:40:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:40:25,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:40:25,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:40:25,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:40:27,908.908 INFO    ] ================================================
[2026-10-25 02:40:27,924.924 INFO    ] Launching Daemon at Sun Oct 25 02:40:27 IST 2026
[2026-10-25 02:40:27,934.934 INFO    ] ================================================
[2026-10-25 02:40:28,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:40:28
[2026-10-25 02:40:29,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:40:29,399.399 INFO    ] Initializing speech engine...
[2026-10-25 02:40:29,405.405 INFO    ] 2026-10-25 02:40:29
[2026-10-25 02:40:29,653.653 INFO    ] 2026-10-25 02:40:29
[2026-10-25 02:40:29,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:40:29,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:40:29,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:40:30,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:40:30,132.132 INFO    ] time= 25/10/2026 02:40:30
[2026-10-25 02:40:30,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:40:30,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:40:30,309.309 INFO    ] No existing commands found in stream
[2026-10-25 02:40:35,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:40:35,343.343 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 02:40:39,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:40:39,713.713 INFO    ] Checking for system updates...
[2026-10-25 02:40:39,749.749 INFO    ] 200
[2026-10-25 02:40:39,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:39,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:40:39,809.809 INFO    ] No update needed
[2026-10-25 02:40:39,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 02:40:39,845.845 INFO    ] 200
[2026-10-25 02:40:39,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:39,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:40:39,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:40:39,938.938 INFO    ] No camera update needed
[2026-10-25 02:40:39,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:40:39,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:40:39,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:40:39,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:40:42,997.997 INFO    ] ================================================
[2026-10-25 02:40:42,013.013 INFO    ] Launching Daemon at Sun Oct 25 02:40:42 IST 2026
[2026-10-25 02:40:42,023.023 INFO    ] ================================================
[2026-10-25 02:40:42,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:40:42
[2026-10-25 02:40:43,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:40:43,417.417 INFO    ] Initializing speech engine...
[2026-10-25 02:40:43,432.432 INFO    ] 2026-10-25 02:40:43
[2026-10-25 02:40:43,700.700 INFO    ] 2026-10-25 02:40:43
[2026-10-25 02:40:43,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:40:43,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:40:44,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:40:44,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:40:44,206.206 INFO    ] time= 25/10/2026 02:40:44
[2026-10-25 02:40:44,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:40:44,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:40:44,386.386 INFO    ] No existing commands found in stream
[2026-10-25 02:40:49,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:40:49,419.419 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 02:40:51,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:40:51,841.841 INFO    ] Checking for system updates...
[2026-10-25 02:40:51,881.881 INFO    ] 200
[2026-10-25 02:40:51,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:51,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:40:51,945.945 INFO    ] No update needed
[2026-10-25 02:40:51,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 02:40:51,983.983 INFO    ] 200
[2026-10-25 02:40:51,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:40:52,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:40:52,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:40:52,092.092 INFO    ] No camera update needed
[2026-10-25 02:40:52,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:40:52,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:40:52,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:40:52,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:40:54,147.147 INFO    ] ================================================
[2026-10-25 02:40:54,162.162 INFO    ] Launching Daemon at Sun Oct 25 02:40:54 IST 2026
[2026-10-25 02:40:54,174.174 INFO    ] ================================================
[2026-10-25 02:40:54,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:40:54
[2026-10-25 02:40:55,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:40:55,567.567 INFO    ] Initializing speech engine...
[2026-10-25 02:40:55,583.583 INFO    ] 2026-10-25 02:40:55
[2026-10-25 02:40:55,848.848 INFO    ] 2026-10-25 02:40:55
[2026-10-25 02:40:55,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:40:56,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:40:56,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:40:56,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:40:56,321.321 INFO    ] time= 25/10/2026 02:40:56
[2026-10-25 02:40:56,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:40:56,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:40:56,478.478 INFO    ] No existing commands found in stream
[2026-10-25 02:41:01,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:01,493.493 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 02:41:02,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:41:02,313.313 INFO    ] Checking for system updates...
[2026-10-25 02:41:02,370.370 INFO    ] 200
[2026-10-25 02:41:02,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:02,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:02,455.455 INFO    ] No update needed
[2026-10-25 02:41:02,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 02:41:02,497.497 INFO    ] 200
[2026-10-25 02:41:02,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:02,547.547 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:41:02,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:02,588.588 INFO    ] No camera update needed
[2026-10-25 02:41:02,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:41:02,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:41:02,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:41:02,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:41:04,653.653 INFO    ] ================================================
[2026-10-25 02:41:04,668.668 INFO    ] Launching Daemon at Sun Oct 25 02:41:04 IST 2026
[2026-10-25 02:41:04,679.679 INFO    ] ================================================
[2026-10-25 02:41:05,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:41:05
[2026-10-25 02:41:05,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:41:06,136.136 INFO    ] Initializing speech engine...
[2026-10-25 02:41:06,145.145 INFO    ] 2026-10-25 02:41:06
[2026-10-25 02:41:06,395.395 INFO    ] 2026-10-25 02:41:06
[2026-10-25 02:41:06,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:41:06,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:41:06,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:41:06,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:41:06,865.865 INFO    ] time= 25/10/2026 02:41:06
[2026-10-25 02:41:06,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:41:06,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:41:07,020.020 INFO    ] No existing commands found in stream
[2026-10-25 02:41:12,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:12,034.034 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 02:41:14,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:41:14,073.073 INFO    ] Checking for system updates...
[2026-10-25 02:41:14,109.109 INFO    ] 200
[2026-10-25 02:41:14,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:14,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:14,167.167 INFO    ] No update needed
[2026-10-25 02:41:14,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 02:41:14,203.203 INFO    ] 200
[2026-10-25 02:41:14,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:14,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:41:14,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:14,304.304 INFO    ] No camera update needed
[2026-10-25 02:41:14,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:41:14,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:41:14,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:41:14,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:41:16,362.362 INFO    ] ================================================
[2026-10-25 02:41:16,377.377 INFO    ] Launching Daemon at Sun Oct 25 02:41:16 IST 2026
[2026-10-25 02:41:16,387.387 INFO    ] ================================================
[2026-10-25 02:41:17,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:41:17
[2026-10-25 02:41:17,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:41:17,978.978 INFO    ] Initializing speech engine...
[2026-10-25 02:41:17,988.988 INFO    ] 2026-10-25 02:41:17
[2026-10-25 02:41:18,260.260 INFO    ] 2026-10-25 02:41:18
[2026-10-25 02:41:18,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:41:18,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:41:18,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:41:18,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:41:18,734.734 INFO    ] time= 25/10/2026 02:41:18
[2026-10-25 02:41:18,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:41:18,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:41:18,960.960 INFO    ] No existing commands found in stream
[2026-10-25 02:41:23,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:23,980.980 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 02:41:25,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:41:25,201.201 INFO    ] Checking for system updates...
[2026-10-25 02:41:25,240.240 INFO    ] 200
[2026-10-25 02:41:25,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:25,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:41:25,299.299 INFO    ] No update needed
[2026-10-25 02:41:25,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 02:41:25,338.338 INFO    ] 200
[2026-10-25 02:41:25,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:25,381.381 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:41:25,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:41:25,542.542 INFO    ] No camera update needed
[2026-10-25 02:41:25,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:41:25,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:41:25,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:41:25,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:41:27,598.598 INFO    ] ================================================
[2026-10-25 02:41:27,613.613 INFO    ] Launching Daemon at Sun Oct 25 02:41:27 IST 2026
[2026-10-25 02:41:27,624.624 INFO    ] ================================================
[2026-10-25 02:41:28,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:41:28
[2026-10-25 02:41:28,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:41:29,061.061 INFO    ] Initializing speech engine...
[2026-10-25 02:41:29,072.072 INFO    ] 2026-10-25 02:41:29
[2026-10-25 02:41:29,339.339 INFO    ] 2026-10-25 02:41:29
[2026-10-25 02:41:29,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:41:29,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:41:29,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:41:29,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:41:29,830.830 INFO    ] time= 25/10/2026 02:41:29
[2026-10-25 02:41:29,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:41:29,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:41:30,004.004 INFO    ] No existing commands found in stream
[2026-10-25 02:41:35,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:35,034.034 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 02:41:37,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:41:37,266.266 INFO    ] Checking for system updates...
[2026-10-25 02:41:37,303.303 INFO    ] 200
[2026-10-25 02:41:37,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:37,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:41:37,360.360 INFO    ] No update needed
[2026-10-25 02:41:37,362.362 INFO    ] Checking for camera pi updates...
[2026-10-25 02:41:37,401.401 INFO    ] 200
[2026-10-25 02:41:37,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:37,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:41:37,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:41:37,552.552 INFO    ] No camera update needed
[2026-10-25 02:41:37,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:41:37,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:41:37,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:41:37,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:41:39,612.612 INFO    ] ================================================
[2026-10-25 02:41:39,627.627 INFO    ] Launching Daemon at Sun Oct 25 02:41:39 IST 2026
[2026-10-25 02:41:39,638.638 INFO    ] ================================================
[2026-10-25 02:41:40,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:41:40
[2026-10-25 02:41:40,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:41:41,052.052 INFO    ] Initializing speech engine...
[2026-10-25 02:41:41,065.065 INFO    ] 2026-10-25 02:41:41
[2026-10-25 02:41:41,350.350 INFO    ] 2026-10-25 02:41:41
[2026-10-25 02:41:41,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:41:41,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:41:41,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:41:41,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:41:41,732.732 INFO    ] time= 25/10/2026 02:41:41
[2026-10-25 02:41:41,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:41:41,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:41:41,858.858 INFO    ] No existing commands found in stream
[2026-10-25 02:41:46,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:46,873.873 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 02:41:48,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:41:48,298.298 INFO    ] Checking for system updates...
[2026-10-25 02:41:48,334.334 INFO    ] 200
[2026-10-25 02:41:48,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:48,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:48,393.393 INFO    ] No update needed
[2026-10-25 02:41:48,396.396 INFO    ] Checking for camera pi updates...
[2026-10-25 02:41:48,431.431 INFO    ] 200
[2026-10-25 02:41:48,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:41:48,476.476 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:41:48,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:41:48,533.533 INFO    ] No camera update needed
[2026-10-25 02:41:48,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:41:48,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:41:48,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:41:48,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:41:50,591.591 INFO    ] ================================================
[2026-10-25 02:41:50,607.607 INFO    ] Launching Daemon at Sun Oct 25 02:41:50 IST 2026
[2026-10-25 02:41:50,618.618 INFO    ] ================================================
[2026-10-25 02:41:51,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:41:51
[2026-10-25 02:41:51,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:41:52,060.060 INFO    ] Initializing speech engine...
[2026-10-25 02:41:52,084.084 INFO    ] 2026-10-25 02:41:52
[2026-10-25 02:41:52,359.359 INFO    ] 2026-10-25 02:41:52
[2026-10-25 02:41:52,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:41:52,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:41:52,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:41:52,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:41:52,783.783 INFO    ] time= 25/10/2026 02:41:52
[2026-10-25 02:41:52,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:41:52,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:41:52,947.947 INFO    ] No existing commands found in stream
[2026-10-25 02:41:57,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:41:57,975.975 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 02:42:01,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:42:01,529.529 INFO    ] Checking for system updates...
[2026-10-25 02:42:01,570.570 INFO    ] 200
[2026-10-25 02:42:01,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:01,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:01,635.635 INFO    ] No update needed
[2026-10-25 02:42:01,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:01,673.673 INFO    ] 200
[2026-10-25 02:42:01,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:01,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:01,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:01,775.775 INFO    ] No camera update needed
[2026-10-25 02:42:01,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:01,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:01,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:01,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:03,835.835 INFO    ] ================================================
[2026-10-25 02:42:03,852.852 INFO    ] Launching Daemon at Sun Oct 25 02:42:03 IST 2026
[2026-10-25 02:42:03,864.864 INFO    ] ================================================
[2026-10-25 02:42:04,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:04
[2026-10-25 02:42:05,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:42:05,571.571 INFO    ] Initializing speech engine...
[2026-10-25 02:42:05,579.579 INFO    ] 2026-10-25 02:42:05
[2026-10-25 02:42:05,927.927 INFO    ] 2026-10-25 02:42:05
[2026-10-25 02:42:05,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:42:06,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:42:06,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:42:06,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:42:06,482.482 INFO    ] time= 25/10/2026 02:42:06
[2026-10-25 02:42:06,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:42:06,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:42:06,706.706 INFO    ] No existing commands found in stream
[2026-10-25 02:42:11,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:42:11,740.740 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 02:42:13,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:42:13,636.636 INFO    ] Checking for system updates...
[2026-10-25 02:42:13,672.672 INFO    ] 200
[2026-10-25 02:42:13,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:13,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:13,737.737 INFO    ] No update needed
[2026-10-25 02:42:13,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:13,774.774 INFO    ] 200
[2026-10-25 02:42:13,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:13,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:13,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:13,863.863 INFO    ] No camera update needed
[2026-10-25 02:42:13,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:13,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:13,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:13,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:15,919.919 INFO    ] ================================================
[2026-10-25 02:42:15,935.935 INFO    ] Launching Daemon at Sun Oct 25 02:42:15 IST 2026
[2026-10-25 02:42:15,947.947 INFO    ] ================================================
[2026-10-25 02:42:16,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:16
[2026-10-25 02:42:17,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:42:17,583.583 INFO    ] Initializing speech engine...
[2026-10-25 02:42:17,598.598 INFO    ] 2026-10-25 02:42:17
[2026-10-25 02:42:17,879.879 INFO    ] 2026-10-25 02:42:17
[2026-10-25 02:42:17,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:42:18,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:42:18,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:42:18,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:42:18,418.418 INFO    ] time= 25/10/2026 02:42:18
[2026-10-25 02:42:18,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:42:18,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:42:18,592.592 INFO    ] No existing commands found in stream
[2026-10-25 02:42:23,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:42:23,628.628 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 02:42:25,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:42:25,204.204 INFO    ] Checking for system updates...
[2026-10-25 02:42:25,241.241 INFO    ] 200
[2026-10-25 02:42:25,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:25,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:25,300.300 INFO    ] No update needed
[2026-10-25 02:42:25,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:25,336.336 INFO    ] 200
[2026-10-25 02:42:25,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:25,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:25,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:25,436.436 INFO    ] No camera update needed
[2026-10-25 02:42:25,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:25,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:25,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:25,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:27,550.550 INFO    ] ================================================
[2026-10-25 02:42:27,565.565 INFO    ] Launching Daemon at Sun Oct 25 02:42:27 IST 2026
[2026-10-25 02:42:27,577.577 INFO    ] ================================================
[2026-10-25 02:42:28,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:28
[2026-10-25 02:42:28,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:42:29,031.031 INFO    ] Initializing speech engine...
[2026-10-25 02:42:29,037.037 INFO    ] 2026-10-25 02:42:29
[2026-10-25 02:42:29,311.311 INFO    ] 2026-10-25 02:42:29
[2026-10-25 02:42:29,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:42:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:42:29,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:42:29,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:42:29,757.757 INFO    ] time= 25/10/2026 02:42:29
[2026-10-25 02:42:29,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:42:29,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:42:29,958.958 INFO    ] No existing commands found in stream
[2026-10-25 02:42:34,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:42:34,989.989 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 02:42:36,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:42:36,473.473 INFO    ] Checking for system updates...
[2026-10-25 02:42:36,514.514 INFO    ] 200
[2026-10-25 02:42:36,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:36,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:36,580.580 INFO    ] No update needed
[2026-10-25 02:42:36,582.582 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:36,623.623 INFO    ] 200
[2026-10-25 02:42:36,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:36,672.672 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:36,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:42:36,722.722 INFO    ] No camera update needed
[2026-10-25 02:42:36,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:36,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:36,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:36,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:38,781.781 INFO    ] ================================================
[2026-10-25 02:42:38,796.796 INFO    ] Launching Daemon at Sun Oct 25 02:42:38 IST 2026
[2026-10-25 02:42:38,807.807 INFO    ] ================================================
[2026-10-25 02:42:39,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:39
[2026-10-25 02:42:39,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:42:40,226.226 INFO    ] Initializing speech engine...
[2026-10-25 02:42:40,238.238 INFO    ] 2026-10-25 02:42:40
[2026-10-25 02:42:40,491.491 INFO    ] 2026-10-25 02:42:40
[2026-10-25 02:42:40,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:42:40,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:42:40,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:42:40,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:42:40,887.887 INFO    ] time= 25/10/2026 02:42:40
[2026-10-25 02:42:40,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:42:40,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:42:40,972.972 INFO    ] No existing commands found in stream
[2026-10-25 02:42:45,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:42:45,990.990 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 02:42:46,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:42:46,578.578 INFO    ] Checking for system updates...
[2026-10-25 02:42:46,615.615 INFO    ] 200
[2026-10-25 02:42:46,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:46,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:46,674.674 INFO    ] No update needed
[2026-10-25 02:42:46,677.677 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:46,715.715 INFO    ] 200
[2026-10-25 02:42:46,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:46,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:46,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:46,813.813 INFO    ] No camera update needed
[2026-10-25 02:42:46,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:46,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:46,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:46,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:48,873.873 INFO    ] ================================================
[2026-10-25 02:42:48,888.888 INFO    ] Launching Daemon at Sun Oct 25 02:42:48 IST 2026
[2026-10-25 02:42:48,899.899 INFO    ] ================================================
[2026-10-25 02:42:49,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:49
[2026-10-25 02:42:50,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:42:50,314.314 INFO    ] Initializing speech engine...
[2026-10-25 02:42:50,337.337 INFO    ] 2026-10-25 02:42:50
[2026-10-25 02:42:50,594.594 INFO    ] 2026-10-25 02:42:50
[2026-10-25 02:42:50,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:42:50,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:42:50,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:42:51,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:42:51,164.164 INFO    ] time= 25/10/2026 02:42:51
[2026-10-25 02:42:51,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:42:51,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:42:51,321.321 INFO    ] No existing commands found in stream
[2026-10-25 02:42:56,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:42:56,350.350 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 02:42:56,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:42:56,915.915 INFO    ] Checking for system updates...
[2026-10-25 02:42:56,952.952 INFO    ] 200
[2026-10-25 02:42:56,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:57,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:57,013.013 INFO    ] No update needed
[2026-10-25 02:42:57,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 02:42:57,055.055 INFO    ] 200
[2026-10-25 02:42:57,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:42:57,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:42:57,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:42:57,155.155 INFO    ] No camera update needed
[2026-10-25 02:42:57,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:42:57,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:42:57,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:42:57,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:42:59,216.216 INFO    ] ================================================
[2026-10-25 02:42:59,231.231 INFO    ] Launching Daemon at Sun Oct 25 02:42:59 IST 2026
[2026-10-25 02:42:59,242.242 INFO    ] ================================================
[2026-10-25 02:42:59,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:42:59
[2026-10-25 02:43:00,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:43:00,660.660 INFO    ] Initializing speech engine...
[2026-10-25 02:43:00,683.683 INFO    ] 2026-10-25 02:43:00
[2026-10-25 02:43:00,953.953 INFO    ] 2026-10-25 02:43:00
[2026-10-25 02:43:00,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:43:01,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:43:01,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:43:01,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:43:01,432.432 INFO    ] time= 25/10/2026 02:43:01
[2026-10-25 02:43:01,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:43:01,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:43:01,532.532 INFO    ] No existing commands found in stream
[2026-10-25 02:43:06,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:43:06,546.546 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 02:43:07,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:43:07,416.416 INFO    ] Checking for system updates...
[2026-10-25 02:43:07,455.455 INFO    ] 200
[2026-10-25 02:43:07,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:07,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:07,520.520 INFO    ] No update needed
[2026-10-25 02:43:07,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 02:43:07,559.559 INFO    ] 200
[2026-10-25 02:43:07,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:07,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:43:07,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:07,663.663 INFO    ] No camera update needed
[2026-10-25 02:43:07,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:43:07,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:43:07,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:43:07,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:43:09,720.720 INFO    ] ================================================
[2026-10-25 02:43:09,735.735 INFO    ] Launching Daemon at Sun Oct 25 02:43:09 IST 2026
[2026-10-25 02:43:09,745.745 INFO    ] ================================================
[2026-10-25 02:43:10,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:43:10
[2026-10-25 02:43:10,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:43:11,219.219 INFO    ] Initializing speech engine...
[2026-10-25 02:43:11,228.228 INFO    ] 2026-10-25 02:43:11
[2026-10-25 02:43:11,515.515 INFO    ] 2026-10-25 02:43:11
[2026-10-25 02:43:11,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:43:11,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:43:11,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:43:12,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:43:12,067.067 INFO    ] time= 25/10/2026 02:43:12
[2026-10-25 02:43:12,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:43:12,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:43:12,195.195 INFO    ] No existing commands found in stream
[2026-10-25 02:43:17,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:43:17,229.229 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 02:43:18,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:43:18,156.156 INFO    ] Checking for system updates...
[2026-10-25 02:43:18,193.193 INFO    ] 200
[2026-10-25 02:43:18,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:18,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:18,253.253 INFO    ] No update needed
[2026-10-25 02:43:18,256.256 INFO    ] Checking for camera pi updates...
[2026-10-25 02:43:18,290.290 INFO    ] 200
[2026-10-25 02:43:18,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:18,341.341 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:43:18,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:18,394.394 INFO    ] No camera update needed
[2026-10-25 02:43:18,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:43:18,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:43:18,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:43:18,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:43:20,449.449 INFO    ] ================================================
[2026-10-25 02:43:20,463.463 INFO    ] Launching Daemon at Sun Oct 25 02:43:20 IST 2026
[2026-10-25 02:43:20,474.474 INFO    ] ================================================
[2026-10-25 02:43:21,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:43:21
[2026-10-25 02:43:21,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:43:21,943.943 INFO    ] Initializing speech engine...
[2026-10-25 02:43:21,953.953 INFO    ] 2026-10-25 02:43:21
[2026-10-25 02:43:22,222.222 INFO    ] 2026-10-25 02:43:22
[2026-10-25 02:43:22,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:43:22,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:43:22,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:43:22,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:43:22,612.612 INFO    ] time= 25/10/2026 02:43:22
[2026-10-25 02:43:22,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:43:22,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:43:22,722.722 INFO    ] No existing commands found in stream
[2026-10-25 02:43:27,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:43:27,740.740 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 02:43:33,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:43:33,018.018 INFO    ] Checking for system updates...
[2026-10-25 02:43:33,054.054 INFO    ] 200
[2026-10-25 02:43:33,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:33,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:33,115.115 INFO    ] No update needed
[2026-10-25 02:43:33,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 02:43:33,152.152 INFO    ] 200
[2026-10-25 02:43:33,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:33,200.200 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:43:33,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:43:33,248.248 INFO    ] No camera update needed
[2026-10-25 02:43:33,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:43:33,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:43:33,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:43:33,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:43:35,303.303 INFO    ] ================================================
[2026-10-25 02:43:35,319.319 INFO    ] Launching Daemon at Sun Oct 25 02:43:35 IST 2026
[2026-10-25 02:43:35,330.330 INFO    ] ================================================
[2026-10-25 02:43:35,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:43:35
[2026-10-25 02:43:36,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:43:36,868.868 INFO    ] Initializing speech engine...
[2026-10-25 02:43:36,876.876 INFO    ] 2026-10-25 02:43:36
[2026-10-25 02:43:37,160.160 INFO    ] 2026-10-25 02:43:37
[2026-10-25 02:43:37,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:43:37,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:43:37,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:43:37,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:43:37,707.707 INFO    ] time= 25/10/2026 02:43:37
[2026-10-25 02:43:37,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:43:37,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:43:37,855.855 INFO    ] No existing commands found in stream
[2026-10-25 02:43:42,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:43:42,876.876 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 02:43:44,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:43:44,898.898 INFO    ] Checking for system updates...
[2026-10-25 02:43:44,938.938 INFO    ] 200
[2026-10-25 02:43:44,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:45,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:43:45,005.005 INFO    ] No update needed
[2026-10-25 02:43:45,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 02:43:45,046.046 INFO    ] 200
[2026-10-25 02:43:45,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:45,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:43:45,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:43:45,150.150 INFO    ] No camera update needed
[2026-10-25 02:43:45,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:43:45,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:43:45,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:43:45,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:43:47,206.206 INFO    ] ================================================
[2026-10-25 02:43:47,222.222 INFO    ] Launching Daemon at Sun Oct 25 02:43:47 IST 2026
[2026-10-25 02:43:47,232.232 INFO    ] ================================================
[2026-10-25 02:43:47,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:43:47
[2026-10-25 02:43:48,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:43:48,644.644 INFO    ] Initializing speech engine...
[2026-10-25 02:43:48,650.650 INFO    ] 2026-10-25 02:43:48
[2026-10-25 02:43:48,925.925 INFO    ] 2026-10-25 02:43:48
[2026-10-25 02:43:48,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:43:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:43:49,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:43:49,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:43:49,396.396 INFO    ] time= 25/10/2026 02:43:49
[2026-10-25 02:43:49,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:43:49,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:43:49,562.562 INFO    ] No existing commands found in stream
[2026-10-25 02:43:54,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:43:54,589.589 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 02:43:56,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:43:56,668.668 INFO    ] Checking for system updates...
[2026-10-25 02:43:56,705.705 INFO    ] 200
[2026-10-25 02:43:56,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:56,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:43:56,764.764 INFO    ] No update needed
[2026-10-25 02:43:56,767.767 INFO    ] Checking for camera pi updates...
[2026-10-25 02:43:56,802.802 INFO    ] 200
[2026-10-25 02:43:56,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:43:56,846.846 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:43:56,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:43:56,897.897 INFO    ] No camera update needed
[2026-10-25 02:43:56,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:43:56,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:43:56,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:43:56,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:43:58,956.956 INFO    ] ================================================
[2026-10-25 02:43:58,972.972 INFO    ] Launching Daemon at Sun Oct 25 02:43:58 IST 2026
[2026-10-25 02:43:58,982.982 INFO    ] ================================================
[2026-10-25 02:43:59,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:43:59
[2026-10-25 02:44:00,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:44:00,410.410 INFO    ] Initializing speech engine...
[2026-10-25 02:44:00,426.426 INFO    ] 2026-10-25 02:44:00
[2026-10-25 02:44:00,707.707 INFO    ] 2026-10-25 02:44:00
[2026-10-25 02:44:00,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:44:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:44:00,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:44:01,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:44:01,106.106 INFO    ] time= 25/10/2026 02:44:01
[2026-10-25 02:44:01,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:44:01,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:44:01,272.272 INFO    ] No existing commands found in stream
[2026-10-25 02:44:06,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:44:06,285.285 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 02:44:09,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:44:09,384.384 INFO    ] Checking for system updates...
[2026-10-25 02:44:09,421.421 INFO    ] 200
[2026-10-25 02:44:09,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:09,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:09,483.483 INFO    ] No update needed
[2026-10-25 02:44:09,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 02:44:09,526.526 INFO    ] 200
[2026-10-25 02:44:09,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:09,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:44:09,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:09,617.617 INFO    ] No camera update needed
[2026-10-25 02:44:09,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:44:09,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:44:09,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:44:09,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:44:11,672.672 INFO    ] ================================================
[2026-10-25 02:44:11,687.687 INFO    ] Launching Daemon at Sun Oct 25 02:44:11 IST 2026
[2026-10-25 02:44:11,698.698 INFO    ] ================================================
[2026-10-25 02:44:12,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:44:12
[2026-10-25 02:44:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:44:13,118.118 INFO    ] Initializing speech engine...
[2026-10-25 02:44:13,127.127 INFO    ] 2026-10-25 02:44:13
[2026-10-25 02:44:13,371.371 INFO    ] 2026-10-25 02:44:13
[2026-10-25 02:44:13,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:44:13,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:44:13,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:44:13,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:44:13,797.797 INFO    ] time= 25/10/2026 02:44:13
[2026-10-25 02:44:13,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:44:13,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:44:13,945.945 INFO    ] No existing commands found in stream
[2026-10-25 02:44:18,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:44:18,969.969 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 02:44:22,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:44:22,948.948 INFO    ] Checking for system updates...
[2026-10-25 02:44:22,984.984 INFO    ] 200
[2026-10-25 02:44:22,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:23,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:44:23,042.042 INFO    ] No update needed
[2026-10-25 02:44:23,044.044 INFO    ] Checking for camera pi updates...
[2026-10-25 02:44:23,081.081 INFO    ] 200
[2026-10-25 02:44:23,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:23,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:44:23,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:44:23,180.180 INFO    ] No camera update needed
[2026-10-25 02:44:23,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:44:23,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:44:23,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:44:23,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:44:25,236.236 INFO    ] ================================================
[2026-10-25 02:44:25,251.251 INFO    ] Launching Daemon at Sun Oct 25 02:44:25 IST 2026
[2026-10-25 02:44:25,262.262 INFO    ] ================================================
[2026-10-25 02:44:25,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:44:25
[2026-10-25 02:44:26,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:44:26,709.709 INFO    ] Initializing speech engine...
[2026-10-25 02:44:26,725.725 INFO    ] 2026-10-25 02:44:26
[2026-10-25 02:44:26,997.997 INFO    ] 2026-10-25 02:44:26
[2026-10-25 02:44:27,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:44:27,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:44:27,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:44:27,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:44:27,408.408 INFO    ] time= 25/10/2026 02:44:27
[2026-10-25 02:44:27,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:44:27,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:44:27,491.491 INFO    ] No existing commands found in stream
[2026-10-25 02:44:32,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:44:32,506.506 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 02:44:36,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:44:36,465.465 INFO    ] Checking for system updates...
[2026-10-25 02:44:36,501.501 INFO    ] 200
[2026-10-25 02:44:36,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:36,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:36,559.559 INFO    ] No update needed
[2026-10-25 02:44:36,562.562 INFO    ] Checking for camera pi updates...
[2026-10-25 02:44:36,595.595 INFO    ] 200
[2026-10-25 02:44:36,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:36,643.643 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:44:36,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:36,693.693 INFO    ] No camera update needed
[2026-10-25 02:44:36,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:44:36,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:44:36,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:44:36,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:44:38,747.747 INFO    ] ================================================
[2026-10-25 02:44:38,763.763 INFO    ] Launching Daemon at Sun Oct 25 02:44:38 IST 2026
[2026-10-25 02:44:38,774.774 INFO    ] ================================================
[2026-10-25 02:44:39,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:44:39
[2026-10-25 02:44:39,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:44:40,232.232 INFO    ] Initializing speech engine...
[2026-10-25 02:44:40,237.237 INFO    ] 2026-10-25 02:44:40
[2026-10-25 02:44:40,496.496 INFO    ] 2026-10-25 02:44:40
[2026-10-25 02:44:40,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:44:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:44:40,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:44:40,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:44:40,951.951 INFO    ] time= 25/10/2026 02:44:40
[2026-10-25 02:44:41,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:44:41,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:44:41,109.109 INFO    ] No existing commands found in stream
[2026-10-25 02:44:46,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:44:46,144.144 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 02:44:47,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:44:47,246.246 INFO    ] Checking for system updates...
[2026-10-25 02:44:47,283.283 INFO    ] 200
[2026-10-25 02:44:47,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:47,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:47,348.348 INFO    ] No update needed
[2026-10-25 02:44:47,351.351 INFO    ] Checking for camera pi updates...
[2026-10-25 02:44:47,385.385 INFO    ] 200
[2026-10-25 02:44:47,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:47,434.434 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:44:47,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:47,493.493 INFO    ] No camera update needed
[2026-10-25 02:44:47,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:44:47,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:44:47,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:44:47,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:44:49,552.552 INFO    ] ================================================
[2026-10-25 02:44:49,568.568 INFO    ] Launching Daemon at Sun Oct 25 02:44:49 IST 2026
[2026-10-25 02:44:49,579.579 INFO    ] ================================================
[2026-10-25 02:44:50,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:44:50
[2026-10-25 02:44:50,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:44:51,038.038 INFO    ] Initializing speech engine...
[2026-10-25 02:44:51,047.047 INFO    ] 2026-10-25 02:44:51
[2026-10-25 02:44:51,305.305 INFO    ] 2026-10-25 02:44:51
[2026-10-25 02:44:51,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:44:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:44:51,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:44:51,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:44:51,845.845 INFO    ] time= 25/10/2026 02:44:51
[2026-10-25 02:44:51,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:44:51,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:44:51,985.985 INFO    ] No existing commands found in stream
[2026-10-25 02:44:57,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:44:57,012.012 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 02:44:59,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:44:59,210.210 INFO    ] Checking for system updates...
[2026-10-25 02:44:59,246.246 INFO    ] 200
[2026-10-25 02:44:59,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:59,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:59,304.304 INFO    ] No update needed
[2026-10-25 02:44:59,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 02:44:59,339.339 INFO    ] 200
[2026-10-25 02:44:59,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:44:59,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:44:59,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:44:59,439.439 INFO    ] No camera update needed
[2026-10-25 02:44:59,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:44:59,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:44:59,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:44:59,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:01,593.593 INFO    ] ================================================
[2026-10-25 02:45:01,708.708 INFO    ] Launching Daemon at Sun Oct 25 02:45:01 IST 2026
[2026-10-25 02:45:01,771.771 INFO    ] ================================================
[2026-10-25 02:45:02,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:45:02
[2026-10-25 02:45:03,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:45:03,507.507 INFO    ] Initializing speech engine...
[2026-10-25 02:45:03,514.514 INFO    ] 2026-10-25 02:45:03
[2026-10-25 02:45:03,819.819 INFO    ] 2026-10-25 02:45:03
[2026-10-25 02:45:03,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:45:04,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:45:04,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:45:04,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:45:04,201.201 INFO    ] time= 25/10/2026 02:45:04
[2026-10-25 02:45:04,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:45:04,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:45:04,397.397 INFO    ] No existing commands found in stream
[2026-10-25 02:45:09,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:45:09,412.412 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 02:45:10,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:45:10,010.010 INFO    ] Checking for system updates...
[2026-10-25 02:45:10,049.049 INFO    ] 200
[2026-10-25 02:45:10,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:10,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:10,108.108 INFO    ] No update needed
[2026-10-25 02:45:10,110.110 INFO    ] Checking for camera pi updates...
[2026-10-25 02:45:10,144.144 INFO    ] 200
[2026-10-25 02:45:10,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:10,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:45:10,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:10,244.244 INFO    ] No camera update needed
[2026-10-25 02:45:10,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:45:10,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:45:10,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:45:10,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:12,301.301 INFO    ] ================================================
[2026-10-25 02:45:12,317.317 INFO    ] Launching Daemon at Sun Oct 25 02:45:12 IST 2026
[2026-10-25 02:45:12,328.328 INFO    ] ================================================
[2026-10-25 02:45:12,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:45:12
[2026-10-25 02:45:13,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:45:13,755.755 INFO    ] Initializing speech engine...
[2026-10-25 02:45:13,764.764 INFO    ] 2026-10-25 02:45:13
[2026-10-25 02:45:14,025.025 INFO    ] 2026-10-25 02:45:14
[2026-10-25 02:45:14,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:45:14,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:45:14,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:45:14,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:45:14,487.487 INFO    ] time= 25/10/2026 02:45:14
[2026-10-25 02:45:14,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:45:14,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:45:14,652.652 INFO    ] No existing commands found in stream
[2026-10-25 02:45:19,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:45:19,666.666 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 02:45:20,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:45:20,252.252 INFO    ] Checking for system updates...
[2026-10-25 02:45:20,288.288 INFO    ] 200
[2026-10-25 02:45:20,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:20,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:20,356.356 INFO    ] No update needed
[2026-10-25 02:45:20,358.358 INFO    ] Checking for camera pi updates...
[2026-10-25 02:45:20,392.392 INFO    ] 200
[2026-10-25 02:45:20,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:20,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:45:20,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:20,484.484 INFO    ] No camera update needed
[2026-10-25 02:45:20,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:45:20,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:45:20,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:45:20,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:22,538.538 INFO    ] ================================================
[2026-10-25 02:45:22,554.554 INFO    ] Launching Daemon at Sun Oct 25 02:45:22 IST 2026
[2026-10-25 02:45:22,566.566 INFO    ] ================================================
[2026-10-25 02:45:23,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:45:23
[2026-10-25 02:45:23,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:45:24,016.016 INFO    ] Initializing speech engine...
[2026-10-25 02:45:24,027.027 INFO    ] 2026-10-25 02:45:24
[2026-10-25 02:45:24,285.285 INFO    ] 2026-10-25 02:45:24
[2026-10-25 02:45:24,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:45:24,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:45:24,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:45:24,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:45:24,695.695 INFO    ] time= 25/10/2026 02:45:24
[2026-10-25 02:45:24,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:45:24,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:45:24,822.822 INFO    ] No existing commands found in stream
[2026-10-25 02:45:29,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:45:29,850.850 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 02:45:32,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:45:32,496.496 INFO    ] Checking for system updates...
[2026-10-25 02:45:32,539.539 INFO    ] 200
[2026-10-25 02:45:32,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:32,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:32,609.609 INFO    ] No update needed
[2026-10-25 02:45:32,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 02:45:32,648.648 INFO    ] 200
[2026-10-25 02:45:32,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:32,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:45:32,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:32,731.731 INFO    ] No camera update needed
[2026-10-25 02:45:32,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:45:32,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:45:32,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:45:32,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:34,792.792 INFO    ] ================================================
[2026-10-25 02:45:34,807.807 INFO    ] Launching Daemon at Sun Oct 25 02:45:34 IST 2026
[2026-10-25 02:45:34,819.819 INFO    ] ================================================
[2026-10-25 02:45:35,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:45:35
[2026-10-25 02:45:35,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:45:36,222.222 INFO    ] Initializing speech engine...
[2026-10-25 02:45:36,231.231 INFO    ] 2026-10-25 02:45:36
[2026-10-25 02:45:36,532.532 INFO    ] 2026-10-25 02:45:36
[2026-10-25 02:45:36,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:45:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:45:36,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:45:36,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:45:36,908.908 INFO    ] time= 25/10/2026 02:45:36
[2026-10-25 02:45:36,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:45:36,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:45:37,032.032 INFO    ] No existing commands found in stream
[2026-10-25 02:45:42,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:45:42,047.047 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 02:45:45,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:45:45,181.181 INFO    ] Checking for system updates...
[2026-10-25 02:45:45,217.217 INFO    ] 200
[2026-10-25 02:45:45,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:45,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:45:45,276.276 INFO    ] No update needed
[2026-10-25 02:45:45,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 02:45:45,314.314 INFO    ] 200
[2026-10-25 02:45:45,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:45,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:45:45,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:45:45,514.514 INFO    ] No camera update needed
[2026-10-25 02:45:45,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:45:45,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:45:45,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:45:45,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:47,569.569 INFO    ] ================================================
[2026-10-25 02:45:47,586.586 INFO    ] Launching Daemon at Sun Oct 25 02:45:47 IST 2026
[2026-10-25 02:45:47,597.597 INFO    ] ================================================
[2026-10-25 02:45:48,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:45:48
[2026-10-25 02:45:48,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:45:49,021.021 INFO    ] Initializing speech engine...
[2026-10-25 02:45:49,030.030 INFO    ] 2026-10-25 02:45:49
[2026-10-25 02:45:49,295.295 INFO    ] 2026-10-25 02:45:49
[2026-10-25 02:45:49,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:45:49,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:45:49,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:45:49,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:45:49,787.787 INFO    ] time= 25/10/2026 02:45:49
[2026-10-25 02:45:49,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:45:49,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:45:49,938.938 INFO    ] No existing commands found in stream
[2026-10-25 02:45:54,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:45:54,955.955 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 02:45:57,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:45:57,248.248 INFO    ] Checking for system updates...
[2026-10-25 02:45:57,285.285 INFO    ] 200
[2026-10-25 02:45:57,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:57,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:57,344.344 INFO    ] No update needed
[2026-10-25 02:45:57,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 02:45:57,385.385 INFO    ] 200
[2026-10-25 02:45:57,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:45:57,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:45:57,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:45:57,493.493 INFO    ] No camera update needed
[2026-10-25 02:45:57,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:45:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:45:57,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:45:57,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:45:59,554.554 INFO    ] ================================================
[2026-10-25 02:45:59,569.569 INFO    ] Launching Daemon at Sun Oct 25 02:45:59 IST 2026
[2026-10-25 02:45:59,580.580 INFO    ] ================================================
[2026-10-25 02:46:00,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:46:00
[2026-10-25 02:46:00,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:46:01,206.206 INFO    ] Initializing speech engine...
[2026-10-25 02:46:01,213.213 INFO    ] 2026-10-25 02:46:01
[2026-10-25 02:46:01,490.490 INFO    ] 2026-10-25 02:46:01
[2026-10-25 02:46:01,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:46:01,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:46:01,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:46:01,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:46:01,983.983 INFO    ] time= 25/10/2026 02:46:01
[2026-10-25 02:46:01,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:46:01,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:46:02,069.069 INFO    ] No existing commands found in stream
[2026-10-25 02:46:07,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:46:07,082.082 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 02:46:09,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:46:09,441.441 INFO    ] Checking for system updates...
[2026-10-25 02:46:09,477.477 INFO    ] 200
[2026-10-25 02:46:09,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:09,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:09,547.547 INFO    ] No update needed
[2026-10-25 02:46:09,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 02:46:09,588.588 INFO    ] 200
[2026-10-25 02:46:09,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:09,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:46:09,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:09,682.682 INFO    ] No camera update needed
[2026-10-25 02:46:09,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:46:09,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:46:09,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:46:09,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:46:11,739.739 INFO    ] ================================================
[2026-10-25 02:46:11,755.755 INFO    ] Launching Daemon at Sun Oct 25 02:46:11 IST 2026
[2026-10-25 02:46:11,766.766 INFO    ] ================================================
[2026-10-25 02:46:12,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:46:12
[2026-10-25 02:46:13,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:46:13,342.342 INFO    ] Initializing speech engine...
[2026-10-25 02:46:13,351.351 INFO    ] 2026-10-25 02:46:13
[2026-10-25 02:46:13,610.610 INFO    ] 2026-10-25 02:46:13
[2026-10-25 02:46:13,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:46:13,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:46:13,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:46:14,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:46:14,090.090 INFO    ] time= 25/10/2026 02:46:14
[2026-10-25 02:46:14,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:46:14,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:46:14,258.258 INFO    ] No existing commands found in stream
[2026-10-25 02:46:19,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:46:19,293.293 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 02:46:22,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:46:22,742.742 INFO    ] Checking for system updates...
[2026-10-25 02:46:22,786.786 INFO    ] 200
[2026-10-25 02:46:22,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:22,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:22,843.843 INFO    ] No update needed
[2026-10-25 02:46:22,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 02:46:22,883.883 INFO    ] 200
[2026-10-25 02:46:22,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:22,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:46:22,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:22,987.987 INFO    ] No camera update needed
[2026-10-25 02:46:22,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:46:22,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:46:22,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:46:23,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:46:25,043.043 INFO    ] ================================================
[2026-10-25 02:46:25,059.059 INFO    ] Launching Daemon at Sun Oct 25 02:46:25 IST 2026
[2026-10-25 02:46:25,070.070 INFO    ] ================================================
[2026-10-25 02:46:25,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:46:25
[2026-10-25 02:46:26,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:46:26,490.490 INFO    ] Initializing speech engine...
[2026-10-25 02:46:26,499.499 INFO    ] 2026-10-25 02:46:26
[2026-10-25 02:46:26,749.749 INFO    ] 2026-10-25 02:46:26
[2026-10-25 02:46:26,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:46:27,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:46:27,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:46:27,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:46:27,202.202 INFO    ] time= 25/10/2026 02:46:27
[2026-10-25 02:46:27,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:46:27,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:46:27,403.403 INFO    ] No existing commands found in stream
[2026-10-25 02:46:32,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:46:32,444.444 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 02:46:34,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:46:34,511.511 INFO    ] Checking for system updates...
[2026-10-25 02:46:34,547.547 INFO    ] 200
[2026-10-25 02:46:34,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:34,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:46:34,604.604 INFO    ] No update needed
[2026-10-25 02:46:34,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 02:46:34,639.639 INFO    ] 200
[2026-10-25 02:46:34,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:34,683.683 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:46:34,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:46:34,736.736 INFO    ] No camera update needed
[2026-10-25 02:46:34,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:46:34,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:46:34,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:46:34,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:46:36,798.798 INFO    ] ================================================
[2026-10-25 02:46:36,814.814 INFO    ] Launching Daemon at Sun Oct 25 02:46:36 IST 2026
[2026-10-25 02:46:36,825.825 INFO    ] ================================================
[2026-10-25 02:46:37,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:46:37
[2026-10-25 02:46:38,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:46:38,271.271 INFO    ] Initializing speech engine...
[2026-10-25 02:46:38,280.280 INFO    ] 2026-10-25 02:46:38
[2026-10-25 02:46:38,528.528 INFO    ] 2026-10-25 02:46:38
[2026-10-25 02:46:38,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:46:38,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:46:38,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:46:38,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:46:39,021.021 INFO    ] time= 25/10/2026 02:46:38
[2026-10-25 02:46:39,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:46:39,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:46:39,203.203 INFO    ] No existing commands found in stream
[2026-10-25 02:46:44,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:46:44,233.233 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 02:46:48,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:46:48,092.092 INFO    ] Checking for system updates...
[2026-10-25 02:46:48,130.130 INFO    ] 200
[2026-10-25 02:46:48,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:48,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:48,189.189 INFO    ] No update needed
[2026-10-25 02:46:48,192.192 INFO    ] Checking for camera pi updates...
[2026-10-25 02:46:48,230.230 INFO    ] 200
[2026-10-25 02:46:48,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:46:48,275.275 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:46:48,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:46:48,325.325 INFO    ] No camera update needed
[2026-10-25 02:46:48,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:46:48,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:46:48,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:46:48,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:46:50,383.383 INFO    ] ================================================
[2026-10-25 02:46:50,399.399 INFO    ] Launching Daemon at Sun Oct 25 02:46:50 IST 2026
[2026-10-25 02:46:50,410.410 INFO    ] ================================================
[2026-10-25 02:46:50,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:46:50
[2026-10-25 02:46:51,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:46:51,848.848 INFO    ] Initializing speech engine...
[2026-10-25 02:46:51,857.857 INFO    ] 2026-10-25 02:46:51
[2026-10-25 02:46:52,151.151 INFO    ] 2026-10-25 02:46:52
[2026-10-25 02:46:52,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:46:52,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:46:52,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:46:52,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:46:52,570.570 INFO    ] time= 25/10/2026 02:46:52
[2026-10-25 02:46:52,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:46:52,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:46:52,755.755 INFO    ] No existing commands found in stream
[2026-10-25 02:46:57,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:46:57,783.783 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 02:47:00,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:47:00,886.886 INFO    ] Checking for system updates...
[2026-10-25 02:47:00,922.922 INFO    ] 200
[2026-10-25 02:47:00,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:00,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:00,979.979 INFO    ] No update needed
[2026-10-25 02:47:00,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 02:47:01,016.016 INFO    ] 200
[2026-10-25 02:47:01,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:01,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:47:01,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:01,112.112 INFO    ] No camera update needed
[2026-10-25 02:47:01,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:47:01,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:47:01,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:47:01,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:47:03,177.177 INFO    ] ================================================
[2026-10-25 02:47:03,199.199 INFO    ] Launching Daemon at Sun Oct 25 02:47:03 IST 2026
[2026-10-25 02:47:03,213.213 INFO    ] ================================================
[2026-10-25 02:47:03,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:47:03
[2026-10-25 02:47:04,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:47:04,793.793 INFO    ] Initializing speech engine...
[2026-10-25 02:47:04,818.818 INFO    ] 2026-10-25 02:47:04
[2026-10-25 02:47:05,095.095 INFO    ] 2026-10-25 02:47:05
[2026-10-25 02:47:05,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:47:05,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:47:05,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:47:05,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:47:05,478.478 INFO    ] time= 25/10/2026 02:47:05
[2026-10-25 02:47:05,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:47:05,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:47:05,603.603 INFO    ] No existing commands found in stream
[2026-10-25 02:47:10,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:47:10,618.618 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 02:47:14,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:47:14,305.305 INFO    ] Checking for system updates...
[2026-10-25 02:47:14,342.342 INFO    ] 200
[2026-10-25 02:47:14,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:14,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:14,401.401 INFO    ] No update needed
[2026-10-25 02:47:14,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 02:47:14,443.443 INFO    ] 200
[2026-10-25 02:47:14,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:14,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:47:14,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:14,557.557 INFO    ] No camera update needed
[2026-10-25 02:47:14,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:47:14,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:47:14,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:47:14,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:47:16,616.616 INFO    ] ================================================
[2026-10-25 02:47:16,632.632 INFO    ] Launching Daemon at Sun Oct 25 02:47:16 IST 2026
[2026-10-25 02:47:16,643.643 INFO    ] ================================================
[2026-10-25 02:47:17,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:47:17
[2026-10-25 02:47:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:47:18,238.238 INFO    ] Initializing speech engine...
[2026-10-25 02:47:18,253.253 INFO    ] 2026-10-25 02:47:18
[2026-10-25 02:47:18,562.562 INFO    ] 2026-10-25 02:47:18
[2026-10-25 02:47:18,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:47:18,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:47:18,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:47:19,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:47:19,069.069 INFO    ] time= 25/10/2026 02:47:19
[2026-10-25 02:47:19,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:47:19,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:47:19,221.221 INFO    ] No existing commands found in stream
[2026-10-25 02:47:24,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:47:24,240.240 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 02:47:28,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:47:28,267.267 INFO    ] Checking for system updates...
[2026-10-25 02:47:28,304.304 INFO    ] 200
[2026-10-25 02:47:28,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:28,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:47:28,361.361 INFO    ] No update needed
[2026-10-25 02:47:28,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 02:47:28,397.397 INFO    ] 200
[2026-10-25 02:47:28,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:28,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:47:28,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:47:28,501.501 INFO    ] No camera update needed
[2026-10-25 02:47:28,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:47:28,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:47:28,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:47:28,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:47:30,560.560 INFO    ] ================================================
[2026-10-25 02:47:30,575.575 INFO    ] Launching Daemon at Sun Oct 25 02:47:30 IST 2026
[2026-10-25 02:47:30,586.586 INFO    ] ================================================
[2026-10-25 02:47:31,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:47:31
[2026-10-25 02:47:31,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:47:32,048.048 INFO    ] Initializing speech engine...
[2026-10-25 02:47:32,057.057 INFO    ] 2026-10-25 02:47:32
[2026-10-25 02:47:32,364.364 INFO    ] 2026-10-25 02:47:32
[2026-10-25 02:47:32,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:47:32,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:47:32,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:47:32,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:47:32,880.880 INFO    ] time= 25/10/2026 02:47:32
[2026-10-25 02:47:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:47:32,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:47:33,101.101 INFO    ] No existing commands found in stream
[2026-10-25 02:47:38,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:47:38,130.130 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 02:47:41,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:47:41,173.173 INFO    ] Checking for system updates...
[2026-10-25 02:47:41,214.214 INFO    ] 200
[2026-10-25 02:47:41,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:41,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:41,272.272 INFO    ] No update needed
[2026-10-25 02:47:41,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 02:47:41,308.308 INFO    ] 200
[2026-10-25 02:47:41,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:41,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:47:41,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:41,403.403 INFO    ] No camera update needed
[2026-10-25 02:47:41,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:47:41,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:47:41,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:47:41,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:47:43,457.457 INFO    ] ================================================
[2026-10-25 02:47:43,473.473 INFO    ] Launching Daemon at Sun Oct 25 02:47:43 IST 2026
[2026-10-25 02:47:43,485.485 INFO    ] ================================================
[2026-10-25 02:47:44,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:47:44
[2026-10-25 02:47:44,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:47:44,881.881 INFO    ] Initializing speech engine...
[2026-10-25 02:47:44,896.896 INFO    ] 2026-10-25 02:47:44
[2026-10-25 02:47:45,160.160 INFO    ] 2026-10-25 02:47:45
[2026-10-25 02:47:45,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:47:45,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:47:45,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:47:45,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:47:45,634.634 INFO    ] time= 25/10/2026 02:47:45
[2026-10-25 02:47:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:47:45,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:47:45,826.826 INFO    ] No existing commands found in stream
[2026-10-25 02:47:50,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:47:50,862.862 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 02:47:54,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:47:54,187.187 INFO    ] Checking for system updates...
[2026-10-25 02:47:54,222.222 INFO    ] 200
[2026-10-25 02:47:54,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:54,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:54,281.281 INFO    ] No update needed
[2026-10-25 02:47:54,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 02:47:54,319.319 INFO    ] 200
[2026-10-25 02:47:54,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:47:54,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:47:54,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:47:54,526.526 INFO    ] No camera update needed
[2026-10-25 02:47:54,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:47:54,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:47:54,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:47:54,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:47:56,585.585 INFO    ] ================================================
[2026-10-25 02:47:56,601.601 INFO    ] Launching Daemon at Sun Oct 25 02:47:56 IST 2026
[2026-10-25 02:47:56,612.612 INFO    ] ================================================
[2026-10-25 02:47:57,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:47:57
[2026-10-25 02:47:57,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:47:58,215.215 INFO    ] Initializing speech engine...
[2026-10-25 02:47:58,223.223 INFO    ] 2026-10-25 02:47:58
[2026-10-25 02:47:58,495.495 INFO    ] 2026-10-25 02:47:58
[2026-10-25 02:47:58,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:47:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:47:58,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:47:58,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:47:59,004.004 INFO    ] time= 25/10/2026 02:47:58
[2026-10-25 02:47:59,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:47:59,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:47:59,132.132 INFO    ] No existing commands found in stream
[2026-10-25 02:48:04,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:48:04,146.146 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 02:48:07,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:48:07,348.348 INFO    ] Checking for system updates...
[2026-10-25 02:48:07,386.386 INFO    ] 200
[2026-10-25 02:48:07,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:07,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:48:07,455.455 INFO    ] No update needed
[2026-10-25 02:48:07,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 02:48:07,497.497 INFO    ] 200
[2026-10-25 02:48:07,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:07,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:48:07,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:48:07,615.615 INFO    ] No camera update needed
[2026-10-25 02:48:07,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:48:07,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:48:07,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:48:07,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:48:09,675.675 INFO    ] ================================================
[2026-10-25 02:48:09,692.692 INFO    ] Launching Daemon at Sun Oct 25 02:48:09 IST 2026
[2026-10-25 02:48:09,702.702 INFO    ] ================================================
[2026-10-25 02:48:10,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:48:10
[2026-10-25 02:48:10,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:48:11,138.138 INFO    ] Initializing speech engine...
[2026-10-25 02:48:11,147.147 INFO    ] 2026-10-25 02:48:11
[2026-10-25 02:48:11,438.438 INFO    ] 2026-10-25 02:48:11
[2026-10-25 02:48:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:48:11,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:48:11,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:48:11,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:48:11,849.849 INFO    ] time= 25/10/2026 02:48:11
[2026-10-25 02:48:11,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:48:11,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:48:11,937.937 INFO    ] No existing commands found in stream
[2026-10-25 02:48:16,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:48:16,953.953 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 02:48:19,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:48:19,262.262 INFO    ] Checking for system updates...
[2026-10-25 02:48:19,298.298 INFO    ] 200
[2026-10-25 02:48:19,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:19,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:48:19,356.356 INFO    ] No update needed
[2026-10-25 02:48:19,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 02:48:19,396.396 INFO    ] 200
[2026-10-25 02:48:19,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:19,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:48:19,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:48:19,492.492 INFO    ] No camera update needed
[2026-10-25 02:48:19,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:48:19,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:48:19,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:48:19,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:48:21,548.548 INFO    ] ================================================
[2026-10-25 02:48:21,563.563 INFO    ] Launching Daemon at Sun Oct 25 02:48:21 IST 2026
[2026-10-25 02:48:21,575.575 INFO    ] ================================================
[2026-10-25 02:48:22,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:48:22
[2026-10-25 02:48:22,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:48:23,009.009 INFO    ] Initializing speech engine...
[2026-10-25 02:48:23,024.024 INFO    ] 2026-10-25 02:48:23
[2026-10-25 02:48:23,296.296 INFO    ] 2026-10-25 02:48:23
[2026-10-25 02:48:23,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:48:23,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:48:23,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:48:23,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:48:23,799.799 INFO    ] time= 25/10/2026 02:48:23
[2026-10-25 02:48:23,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:48:23,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:48:23,980.980 INFO    ] No existing commands found in stream
[2026-10-25 02:48:28,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:48:28,996.996 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 02:48:33,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:48:33,367.367 INFO    ] Checking for system updates...
[2026-10-25 02:48:33,409.409 INFO    ] 200
[2026-10-25 02:48:33,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:33,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:33,469.469 INFO    ] No update needed
[2026-10-25 02:48:33,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 02:48:33,507.507 INFO    ] 200
[2026-10-25 02:48:33,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:33,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:48:33,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:33,618.618 INFO    ] No camera update needed
[2026-10-25 02:48:33,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:48:33,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:48:33,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:48:33,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:48:35,676.676 INFO    ] ================================================
[2026-10-25 02:48:35,692.692 INFO    ] Launching Daemon at Sun Oct 25 02:48:35 IST 2026
[2026-10-25 02:48:35,703.703 INFO    ] ================================================
[2026-10-25 02:48:36,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:48:36
[2026-10-25 02:48:36,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:48:37,156.156 INFO    ] Initializing speech engine...
[2026-10-25 02:48:37,166.166 INFO    ] 2026-10-25 02:48:37
[2026-10-25 02:48:37,429.429 INFO    ] 2026-10-25 02:48:37
[2026-10-25 02:48:37,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:48:37,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:48:37,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:48:37,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:48:37,889.889 INFO    ] time= 25/10/2026 02:48:37
[2026-10-25 02:48:37,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:48:37,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:48:38,043.043 INFO    ] No existing commands found in stream
[2026-10-25 02:48:43,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:48:43,058.058 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 02:48:44,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:48:44,801.801 INFO    ] Checking for system updates...
[2026-10-25 02:48:44,836.836 INFO    ] 200
[2026-10-25 02:48:44,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:44,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:44,894.894 INFO    ] No update needed
[2026-10-25 02:48:44,897.897 INFO    ] Checking for camera pi updates...
[2026-10-25 02:48:44,934.934 INFO    ] 200
[2026-10-25 02:48:44,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:44,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:48:45,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:45,041.041 INFO    ] No camera update needed
[2026-10-25 02:48:45,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:48:45,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:48:45,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:48:45,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:48:47,098.098 INFO    ] ================================================
[2026-10-25 02:48:47,114.114 INFO    ] Launching Daemon at Sun Oct 25 02:48:47 IST 2026
[2026-10-25 02:48:47,126.126 INFO    ] ================================================
[2026-10-25 02:48:47,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:48:47
[2026-10-25 02:48:48,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:48:48,721.721 INFO    ] Initializing speech engine...
[2026-10-25 02:48:48,731.731 INFO    ] 2026-10-25 02:48:48
[2026-10-25 02:48:49,004.004 INFO    ] 2026-10-25 02:48:49
[2026-10-25 02:48:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:48:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:48:49,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:48:49,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:48:49,549.549 INFO    ] time= 25/10/2026 02:48:49
[2026-10-25 02:48:49,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:48:49,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:48:49,710.710 INFO    ] No existing commands found in stream
[2026-10-25 02:48:54,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:48:54,745.745 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 02:48:59,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:48:59,221.221 INFO    ] Checking for system updates...
[2026-10-25 02:48:59,261.261 INFO    ] 200
[2026-10-25 02:48:59,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:59,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:59,321.321 INFO    ] No update needed
[2026-10-25 02:48:59,323.323 INFO    ] Checking for camera pi updates...
[2026-10-25 02:48:59,361.361 INFO    ] 200
[2026-10-25 02:48:59,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:48:59,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:48:59,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:48:59,463.463 INFO    ] No camera update needed
[2026-10-25 02:48:59,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:48:59,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:48:59,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:48:59,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:49:01,521.521 INFO    ] ================================================
[2026-10-25 02:49:01,537.537 INFO    ] Launching Daemon at Sun Oct 25 02:49:01 IST 2026
[2026-10-25 02:49:01,552.552 INFO    ] ================================================
[2026-10-25 02:49:02,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:49:02
[2026-10-25 02:49:03,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:49:03,384.384 INFO    ] Initializing speech engine...
[2026-10-25 02:49:03,391.391 INFO    ] 2026-10-25 02:49:03
[2026-10-25 02:49:03,686.686 INFO    ] 2026-10-25 02:49:03
[2026-10-25 02:49:03,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:49:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:49:03,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:49:04,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:49:04,082.082 INFO    ] time= 25/10/2026 02:49:04
[2026-10-25 02:49:04,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:49:04,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:49:04,274.274 INFO    ] No existing commands found in stream
[2026-10-25 02:49:09,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:49:09,300.300 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 02:49:11,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:49:11,532.532 INFO    ] Checking for system updates...
[2026-10-25 02:49:11,568.568 INFO    ] 200
[2026-10-25 02:49:11,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:11,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:11,628.628 INFO    ] No update needed
[2026-10-25 02:49:11,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 02:49:11,666.666 INFO    ] 200
[2026-10-25 02:49:11,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:11,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:49:11,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:11,757.757 INFO    ] No camera update needed
[2026-10-25 02:49:11,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:49:11,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:49:11,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:49:11,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:49:13,816.816 INFO    ] ================================================
[2026-10-25 02:49:13,831.831 INFO    ] Launching Daemon at Sun Oct 25 02:49:13 IST 2026
[2026-10-25 02:49:13,843.843 INFO    ] ================================================
[2026-10-25 02:49:14,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:49:14
[2026-10-25 02:49:15,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:49:15,304.304 INFO    ] Initializing speech engine...
[2026-10-25 02:49:15,310.310 INFO    ] 2026-10-25 02:49:15
[2026-10-25 02:49:15,564.564 INFO    ] 2026-10-25 02:49:15
[2026-10-25 02:49:15,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:49:15,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:49:15,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:49:15,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:49:16,048.048 INFO    ] time= 25/10/2026 02:49:15
[2026-10-25 02:49:16,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:49:16,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:49:16,252.252 INFO    ] No existing commands found in stream
[2026-10-25 02:49:21,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:49:21,279.279 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 02:49:21,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:49:21,880.880 INFO    ] Checking for system updates...
[2026-10-25 02:49:21,916.916 INFO    ] 200
[2026-10-25 02:49:21,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:21,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:21,981.981 INFO    ] No update needed
[2026-10-25 02:49:21,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 02:49:22,018.018 INFO    ] 200
[2026-10-25 02:49:22,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:22,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:49:22,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:22,114.114 INFO    ] No camera update needed
[2026-10-25 02:49:22,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:49:22,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:49:22,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:49:22,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:49:24,171.171 INFO    ] ================================================
[2026-10-25 02:49:24,187.187 INFO    ] Launching Daemon at Sun Oct 25 02:49:24 IST 2026
[2026-10-25 02:49:24,199.199 INFO    ] ================================================
[2026-10-25 02:49:24,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:49:24
[2026-10-25 02:49:25,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:49:25,617.617 INFO    ] Initializing speech engine...
[2026-10-25 02:49:25,641.641 INFO    ] 2026-10-25 02:49:25
[2026-10-25 02:49:25,915.915 INFO    ] 2026-10-25 02:49:25
[2026-10-25 02:49:25,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:49:26,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:49:26,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:49:26,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:49:26,331.331 INFO    ] time= 25/10/2026 02:49:26
[2026-10-25 02:49:26,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:49:26,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:49:26,481.481 INFO    ] No existing commands found in stream
[2026-10-25 02:49:31,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:49:31,504.504 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 02:49:35,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:49:35,571.571 INFO    ] Checking for system updates...
[2026-10-25 02:49:35,607.607 INFO    ] 200
[2026-10-25 02:49:35,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:35,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:49:35,672.672 INFO    ] No update needed
[2026-10-25 02:49:35,674.674 INFO    ] Checking for camera pi updates...
[2026-10-25 02:49:35,712.712 INFO    ] 200
[2026-10-25 02:49:35,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:35,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:49:35,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:49:35,815.815 INFO    ] No camera update needed
[2026-10-25 02:49:35,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:49:35,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:49:35,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:49:35,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:49:37,872.872 INFO    ] ================================================
[2026-10-25 02:49:37,888.888 INFO    ] Launching Daemon at Sun Oct 25 02:49:37 IST 2026
[2026-10-25 02:49:37,899.899 INFO    ] ================================================
[2026-10-25 02:49:38,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:49:38
[2026-10-25 02:49:39,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:49:39,319.319 INFO    ] Initializing speech engine...
[2026-10-25 02:49:39,338.338 INFO    ] 2026-10-25 02:49:39
[2026-10-25 02:49:39,587.587 INFO    ] 2026-10-25 02:49:39
[2026-10-25 02:49:39,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:49:39,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:49:39,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:49:40,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:49:40,046.046 INFO    ] time= 25/10/2026 02:49:40
[2026-10-25 02:49:40,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:49:40,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:49:40,224.224 INFO    ] No existing commands found in stream
[2026-10-25 02:49:45,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:49:45,236.236 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 02:49:47,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:49:47,537.537 INFO    ] Checking for system updates...
[2026-10-25 02:49:47,573.573 INFO    ] 200
[2026-10-25 02:49:47,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:47,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:47,648.648 INFO    ] No update needed
[2026-10-25 02:49:47,650.650 INFO    ] Checking for camera pi updates...
[2026-10-25 02:49:47,688.688 INFO    ] 200
[2026-10-25 02:49:47,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:47,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:49:47,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:47,795.795 INFO    ] No camera update needed
[2026-10-25 02:49:47,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:49:47,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:49:47,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:49:47,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:49:49,851.851 INFO    ] ================================================
[2026-10-25 02:49:49,867.867 INFO    ] Launching Daemon at Sun Oct 25 02:49:49 IST 2026
[2026-10-25 02:49:49,878.878 INFO    ] ================================================
[2026-10-25 02:49:50,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:49:50
[2026-10-25 02:49:51,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:49:51,328.328 INFO    ] Initializing speech engine...
[2026-10-25 02:49:51,338.338 INFO    ] 2026-10-25 02:49:51
[2026-10-25 02:49:51,599.599 INFO    ] 2026-10-25 02:49:51
[2026-10-25 02:49:51,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:49:51,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:49:51,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:49:52,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:49:52,086.086 INFO    ] time= 25/10/2026 02:49:52
[2026-10-25 02:49:52,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:49:52,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:49:52,279.279 INFO    ] No existing commands found in stream
[2026-10-25 02:49:57,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:49:57,306.306 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 02:49:59,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:49:59,898.898 INFO    ] Checking for system updates...
[2026-10-25 02:49:59,934.934 INFO    ] 200
[2026-10-25 02:49:59,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:49:59,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:49:59,993.993 INFO    ] No update needed
[2026-10-25 02:49:59,995.995 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:00,033.033 INFO    ] 200
[2026-10-25 02:50:00,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:00,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:00,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:00,232.232 INFO    ] No camera update needed
[2026-10-25 02:50:00,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:00,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:00,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:00,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:50:02,325.325 INFO    ] ================================================
[2026-10-25 02:50:02,352.352 INFO    ] Launching Daemon at Sun Oct 25 02:50:02 IST 2026
[2026-10-25 02:50:02,372.372 INFO    ] ================================================
[2026-10-25 02:50:03,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:50:03
[2026-10-25 02:50:03,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:50:03,967.967 INFO    ] Initializing speech engine...
[2026-10-25 02:50:03,990.990 INFO    ] 2026-10-25 02:50:03
[2026-10-25 02:50:04,244.244 INFO    ] 2026-10-25 02:50:04
[2026-10-25 02:50:04,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:50:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:50:04,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:50:04,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:50:04,732.732 INFO    ] time= 25/10/2026 02:50:04
[2026-10-25 02:50:04,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:50:04,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:50:04,940.940 INFO    ] No existing commands found in stream
[2026-10-25 02:50:09,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:50:09,964.964 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 02:50:10,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:50:10,393.393 INFO    ] Checking for system updates...
[2026-10-25 02:50:10,435.435 INFO    ] 200
[2026-10-25 02:50:10,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:10,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:10,498.498 INFO    ] No update needed
[2026-10-25 02:50:10,500.500 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:10,538.538 INFO    ] 200
[2026-10-25 02:50:10,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:10,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:10,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:10,637.637 INFO    ] No camera update needed
[2026-10-25 02:50:10,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:10,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:10,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:10,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:50:12,694.694 INFO    ] ================================================
[2026-10-25 02:50:12,710.710 INFO    ] Launching Daemon at Sun Oct 25 02:50:12 IST 2026
[2026-10-25 02:50:12,722.722 INFO    ] ================================================
[2026-10-25 02:50:13,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:50:13
[2026-10-25 02:50:14,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:50:14,393.393 INFO    ] Initializing speech engine...
[2026-10-25 02:50:14,401.401 INFO    ] 2026-10-25 02:50:14
[2026-10-25 02:50:14,711.711 INFO    ] 2026-10-25 02:50:14
[2026-10-25 02:50:14,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:50:14,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:50:14,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:50:15,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:50:15,226.226 INFO    ] time= 25/10/2026 02:50:15
[2026-10-25 02:50:15,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:50:15,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:50:15,379.379 INFO    ] No existing commands found in stream
[2026-10-25 02:50:20,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:50:20,399.399 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 02:50:22,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:50:22,940.940 INFO    ] Checking for system updates...
[2026-10-25 02:50:22,982.982 INFO    ] 200
[2026-10-25 02:50:22,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:23,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:23,043.043 INFO    ] No update needed
[2026-10-25 02:50:23,045.045 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:23,080.080 INFO    ] 200
[2026-10-25 02:50:23,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:23,125.125 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:23,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:23,185.185 INFO    ] No camera update needed
[2026-10-25 02:50:23,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:23,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:23,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:23,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:50:25,246.246 INFO    ] ================================================
[2026-10-25 02:50:25,262.262 INFO    ] Launching Daemon at Sun Oct 25 02:50:25 IST 2026
[2026-10-25 02:50:25,273.273 INFO    ] ================================================
[2026-10-25 02:50:25,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:50:25
[2026-10-25 02:50:26,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:50:26,915.915 INFO    ] Initializing speech engine...
[2026-10-25 02:50:26,928.928 INFO    ] 2026-10-25 02:50:26
[2026-10-25 02:50:27,218.218 INFO    ] 2026-10-25 02:50:27
[2026-10-25 02:50:27,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:50:27,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:50:27,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:50:27,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:50:27,759.759 INFO    ] time= 25/10/2026 02:50:27
[2026-10-25 02:50:27,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:50:27,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:50:27,905.905 INFO    ] No existing commands found in stream
[2026-10-25 02:50:32,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:50:32,924.924 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 02:50:34,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:50:34,611.611 INFO    ] Checking for system updates...
[2026-10-25 02:50:34,653.653 INFO    ] 200
[2026-10-25 02:50:34,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:34,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:34,722.722 INFO    ] No update needed
[2026-10-25 02:50:34,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:34,760.760 INFO    ] 200
[2026-10-25 02:50:34,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:34,811.811 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:34,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:34,867.867 INFO    ] No camera update needed
[2026-10-25 02:50:34,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:34,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:34,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:34,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:50:36,926.926 INFO    ] ================================================
[2026-10-25 02:50:36,942.942 INFO    ] Launching Daemon at Sun Oct 25 02:50:36 IST 2026
[2026-10-25 02:50:36,953.953 INFO    ] ================================================
[2026-10-25 02:50:37,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:50:37
[2026-10-25 02:50:38,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:50:38,612.612 INFO    ] Initializing speech engine...
[2026-10-25 02:50:38,623.623 INFO    ] 2026-10-25 02:50:38
[2026-10-25 02:50:38,912.912 INFO    ] 2026-10-25 02:50:38
[2026-10-25 02:50:38,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:50:39,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:50:39,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:50:39,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:50:39,398.398 INFO    ] time= 25/10/2026 02:50:39
[2026-10-25 02:50:39,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:50:39,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:50:39,568.568 INFO    ] No existing commands found in stream
[2026-10-25 02:50:44,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:50:44,599.599 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 02:50:46,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:50:46,739.739 INFO    ] Checking for system updates...
[2026-10-25 02:50:46,781.781 INFO    ] 200
[2026-10-25 02:50:46,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:46,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:50:46,850.850 INFO    ] No update needed
[2026-10-25 02:50:46,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:46,892.892 INFO    ] 200
[2026-10-25 02:50:46,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:46,942.942 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:46,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:50:46,994.994 INFO    ] No camera update needed
[2026-10-25 02:50:46,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:47,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:47,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:47,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:50:49,054.054 INFO    ] ================================================
[2026-10-25 02:50:49,071.071 INFO    ] Launching Daemon at Sun Oct 25 02:50:49 IST 2026
[2026-10-25 02:50:49,082.082 INFO    ] ================================================
[2026-10-25 02:50:49,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:50:49
[2026-10-25 02:50:50,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:50:50,728.728 INFO    ] Initializing speech engine...
[2026-10-25 02:50:50,735.735 INFO    ] 2026-10-25 02:50:50
[2026-10-25 02:50:51,019.019 INFO    ] 2026-10-25 02:50:51
[2026-10-25 02:50:51,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:50:51,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:50:51,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:50:51,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:50:51,555.555 INFO    ] time= 25/10/2026 02:50:51
[2026-10-25 02:50:51,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:50:51,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:50:51,691.691 INFO    ] No existing commands found in stream
[2026-10-25 02:50:56,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:50:56,720.720 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 02:50:59,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:50:59,171.171 INFO    ] Checking for system updates...
[2026-10-25 02:50:59,208.208 INFO    ] 200
[2026-10-25 02:50:59,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:59,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:59,269.269 INFO    ] No update needed
[2026-10-25 02:50:59,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 02:50:59,307.307 INFO    ] 200
[2026-10-25 02:50:59,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:50:59,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:50:59,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:50:59,415.415 INFO    ] No camera update needed
[2026-10-25 02:50:59,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:50:59,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:50:59,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:50:59,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:51:01,477.477 INFO    ] ================================================
[2026-10-25 02:51:01,504.504 INFO    ] Launching Daemon at Sun Oct 25 02:51:01 IST 2026
[2026-10-25 02:51:01,523.523 INFO    ] ================================================
[2026-10-25 02:51:02,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:51:02
[2026-10-25 02:51:03,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:51:03,427.427 INFO    ] Initializing speech engine...
[2026-10-25 02:51:03,439.439 INFO    ] 2026-10-25 02:51:03
[2026-10-25 02:51:03,744.744 INFO    ] 2026-10-25 02:51:03
[2026-10-25 02:51:03,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:51:04,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:51:04,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:51:04,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:51:04,214.214 INFO    ] time= 25/10/2026 02:51:04
[2026-10-25 02:51:04,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:51:04,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:51:04,420.420 INFO    ] No existing commands found in stream
[2026-10-25 02:51:09,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:51:09,447.447 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 02:51:12,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:51:12,661.661 INFO    ] Checking for system updates...
[2026-10-25 02:51:12,697.697 INFO    ] 200
[2026-10-25 02:51:12,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:12,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:51:12,757.757 INFO    ] No update needed
[2026-10-25 02:51:12,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 02:51:12,799.799 INFO    ] 200
[2026-10-25 02:51:12,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:12,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:51:12,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:51:12,906.906 INFO    ] No camera update needed
[2026-10-25 02:51:12,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:51:12,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:51:12,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:51:12,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:51:14,966.966 INFO    ] ================================================
[2026-10-25 02:51:14,981.981 INFO    ] Launching Daemon at Sun Oct 25 02:51:14 IST 2026
[2026-10-25 02:51:14,992.992 INFO    ] ================================================
[2026-10-25 02:51:15,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:51:15
[2026-10-25 02:51:16,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:51:16,417.417 INFO    ] Initializing speech engine...
[2026-10-25 02:51:16,432.432 INFO    ] 2026-10-25 02:51:16
[2026-10-25 02:51:16,711.711 INFO    ] 2026-10-25 02:51:16
[2026-10-25 02:51:16,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:51:17,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:51:17,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:51:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:51:17,210.210 INFO    ] time= 25/10/2026 02:51:17
[2026-10-25 02:51:17,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:51:17,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:51:17,401.401 INFO    ] No existing commands found in stream
[2026-10-25 02:51:22,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:51:22,430.430 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 02:51:23,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:51:23,014.014 INFO    ] Checking for system updates...
[2026-10-25 02:51:23,052.052 INFO    ] 200
[2026-10-25 02:51:23,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:23,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:51:23,122.122 INFO    ] No update needed
[2026-10-25 02:51:23,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 02:51:23,169.169 INFO    ] 200
[2026-10-25 02:51:23,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:23,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:51:23,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:51:23,274.274 INFO    ] No camera update needed
[2026-10-25 02:51:23,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:51:23,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:51:23,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:51:23,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:51:25,334.334 INFO    ] ================================================
[2026-10-25 02:51:25,350.350 INFO    ] Launching Daemon at Sun Oct 25 02:51:25 IST 2026
[2026-10-25 02:51:25,362.362 INFO    ] ================================================
[2026-10-25 02:51:25,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:51:25
[2026-10-25 02:51:26,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:51:26,771.771 INFO    ] Initializing speech engine...
[2026-10-25 02:51:26,779.779 INFO    ] 2026-10-25 02:51:26
[2026-10-25 02:51:27,053.053 INFO    ] 2026-10-25 02:51:27
[2026-10-25 02:51:27,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:51:27,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:51:27,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:51:27,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:51:27,559.559 INFO    ] time= 25/10/2026 02:51:27
[2026-10-25 02:51:27,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:51:27,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:51:27,730.730 INFO    ] No existing commands found in stream
[2026-10-25 02:51:32,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:51:32,756.756 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 02:51:36,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:51:36,327.327 INFO    ] Checking for system updates...
[2026-10-25 02:51:36,364.364 INFO    ] 200
[2026-10-25 02:51:36,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:36,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:51:36,422.422 INFO    ] No update needed
[2026-10-25 02:51:36,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 02:51:36,457.457 INFO    ] 200
[2026-10-25 02:51:36,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:36,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:51:36,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:51:36,554.554 INFO    ] No camera update needed
[2026-10-25 02:51:36,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:51:36,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:51:36,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:51:36,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:51:38,611.611 INFO    ] ================================================
[2026-10-25 02:51:38,625.625 INFO    ] Launching Daemon at Sun Oct 25 02:51:38 IST 2026
[2026-10-25 02:51:38,637.637 INFO    ] ================================================
[2026-10-25 02:51:39,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:51:39
[2026-10-25 02:51:39,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:51:40,059.059 INFO    ] Initializing speech engine...
[2026-10-25 02:51:40,065.065 INFO    ] 2026-10-25 02:51:40
[2026-10-25 02:51:40,316.316 INFO    ] 2026-10-25 02:51:40
[2026-10-25 02:51:40,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:51:40,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:51:40,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:51:40,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:51:40,783.783 INFO    ] time= 25/10/2026 02:51:40
[2026-10-25 02:51:40,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:51:40,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:51:40,970.970 INFO    ] No existing commands found in stream
[2026-10-25 02:51:45,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:51:45,997.997 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 02:51:50,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:51:50,238.238 INFO    ] Checking for system updates...
[2026-10-25 02:51:50,276.276 INFO    ] 200
[2026-10-25 02:51:50,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:50,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:51:50,336.336 INFO    ] No update needed
[2026-10-25 02:51:50,339.339 INFO    ] Checking for camera pi updates...
[2026-10-25 02:51:50,373.373 INFO    ] 200
[2026-10-25 02:51:50,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:51:50,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:51:50,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:51:50,470.470 INFO    ] No camera update needed
[2026-10-25 02:51:50,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:51:50,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:51:50,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:51:50,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:51:52,529.529 INFO    ] ================================================
[2026-10-25 02:51:52,544.544 INFO    ] Launching Daemon at Sun Oct 25 02:51:52 IST 2026
[2026-10-25 02:51:52,555.555 INFO    ] ================================================
[2026-10-25 02:51:53,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:51:53
[2026-10-25 02:51:53,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:51:54,123.123 INFO    ] Initializing speech engine...
[2026-10-25 02:51:54,135.135 INFO    ] 2026-10-25 02:51:54
[2026-10-25 02:51:54,447.447 INFO    ] 2026-10-25 02:51:54
[2026-10-25 02:51:54,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:51:54,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:51:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:51:54,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:51:54,969.969 INFO    ] time= 25/10/2026 02:51:54
[2026-10-25 02:51:54,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:51:55,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:51:55,130.130 INFO    ] No existing commands found in stream
[2026-10-25 02:52:00,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:52:00,164.164 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 02:52:03,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:52:03,655.655 INFO    ] Checking for system updates...
[2026-10-25 02:52:03,692.692 INFO    ] 200
[2026-10-25 02:52:03,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:03,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:52:03,751.751 INFO    ] No update needed
[2026-10-25 02:52:03,754.754 INFO    ] Checking for camera pi updates...
[2026-10-25 02:52:03,789.789 INFO    ] 200
[2026-10-25 02:52:03,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:03,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:52:03,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:52:03,887.887 INFO    ] No camera update needed
[2026-10-25 02:52:03,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:52:03,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:52:03,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:52:03,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:52:05,944.944 INFO    ] ================================================
[2026-10-25 02:52:05,960.960 INFO    ] Launching Daemon at Sun Oct 25 02:52:05 IST 2026
[2026-10-25 02:52:05,971.971 INFO    ] ================================================
[2026-10-25 02:52:06,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:52:06
[2026-10-25 02:52:07,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:52:07,423.423 INFO    ] Initializing speech engine...
[2026-10-25 02:52:07,445.445 INFO    ] 2026-10-25 02:52:07
[2026-10-25 02:52:07,704.704 INFO    ] 2026-10-25 02:52:07
[2026-10-25 02:52:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:52:07,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:52:07,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:52:08,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:52:08,082.082 INFO    ] time= 25/10/2026 02:52:08
[2026-10-25 02:52:08,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:52:08,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:52:08,243.243 INFO    ] No existing commands found in stream
[2026-10-25 02:52:13,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:52:13,275.275 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 02:52:14,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:52:14,626.626 INFO    ] Checking for system updates...
[2026-10-25 02:52:14,663.663 INFO    ] 200
[2026-10-25 02:52:14,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:14,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:14,722.722 INFO    ] No update needed
[2026-10-25 02:52:14,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 02:52:14,761.761 INFO    ] 200
[2026-10-25 02:52:14,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:14,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:52:14,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:14,868.868 INFO    ] No camera update needed
[2026-10-25 02:52:14,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:52:14,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:52:14,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:52:14,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:52:16,924.924 INFO    ] ================================================
[2026-10-25 02:52:16,939.939 INFO    ] Launching Daemon at Sun Oct 25 02:52:16 IST 2026
[2026-10-25 02:52:16,950.950 INFO    ] ================================================
[2026-10-25 02:52:17,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:52:17
[2026-10-25 02:52:18,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:52:18,419.419 INFO    ] Initializing speech engine...
[2026-10-25 02:52:18,426.426 INFO    ] 2026-10-25 02:52:18
[2026-10-25 02:52:18,676.676 INFO    ] 2026-10-25 02:52:18
[2026-10-25 02:52:18,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:52:18,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:52:18,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:52:19,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:52:19,050.050 INFO    ] time= 25/10/2026 02:52:19
[2026-10-25 02:52:19,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:52:19,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:52:19,203.203 INFO    ] No existing commands found in stream
[2026-10-25 02:52:24,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:52:24,236.236 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 02:52:26,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:52:26,146.146 INFO    ] Checking for system updates...
[2026-10-25 02:52:26,182.182 INFO    ] 200
[2026-10-25 02:52:26,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:26,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:26,239.239 INFO    ] No update needed
[2026-10-25 02:52:26,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 02:52:26,276.276 INFO    ] 200
[2026-10-25 02:52:26,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:26,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:52:26,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:26,388.388 INFO    ] No camera update needed
[2026-10-25 02:52:26,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:52:26,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:52:26,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:52:26,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:52:28,448.448 INFO    ] ================================================
[2026-10-25 02:52:28,464.464 INFO    ] Launching Daemon at Sun Oct 25 02:52:28 IST 2026
[2026-10-25 02:52:28,476.476 INFO    ] ================================================
[2026-10-25 02:52:29,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:52:29
[2026-10-25 02:52:29,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:52:29,901.901 INFO    ] Initializing speech engine...
[2026-10-25 02:52:29,917.917 INFO    ] 2026-10-25 02:52:29
[2026-10-25 02:52:30,168.168 INFO    ] 2026-10-25 02:52:30
[2026-10-25 02:52:30,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:52:30,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:52:30,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:52:30,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:52:30,653.653 INFO    ] time= 25/10/2026 02:52:30
[2026-10-25 02:52:30,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:52:30,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:52:30,813.813 INFO    ] No existing commands found in stream
[2026-10-25 02:52:35,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:52:35,840.840 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 02:52:38,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:52:38,486.486 INFO    ] Checking for system updates...
[2026-10-25 02:52:38,522.522 INFO    ] 200
[2026-10-25 02:52:38,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:38,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:38,579.579 INFO    ] No update needed
[2026-10-25 02:52:38,582.582 INFO    ] Checking for camera pi updates...
[2026-10-25 02:52:38,620.620 INFO    ] 200
[2026-10-25 02:52:38,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:38,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:52:38,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:52:38,732.732 INFO    ] No camera update needed
[2026-10-25 02:52:38,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:52:38,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:52:38,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:52:38,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:52:40,788.788 INFO    ] ================================================
[2026-10-25 02:52:40,804.804 INFO    ] Launching Daemon at Sun Oct 25 02:52:40 IST 2026
[2026-10-25 02:52:40,814.814 INFO    ] ================================================
[2026-10-25 02:52:41,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:52:41
[2026-10-25 02:52:41,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:52:42,262.262 INFO    ] Initializing speech engine...
[2026-10-25 02:52:42,271.271 INFO    ] 2026-10-25 02:52:42
[2026-10-25 02:52:42,531.531 INFO    ] 2026-10-25 02:52:42
[2026-10-25 02:52:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:52:42,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:52:42,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:52:42,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:52:43,027.027 INFO    ] time= 25/10/2026 02:52:42
[2026-10-25 02:52:43,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:52:43,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:52:43,220.220 INFO    ] No existing commands found in stream
[2026-10-25 02:52:48,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:52:48,244.244 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 02:52:51,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:52:51,987.987 INFO    ] Checking for system updates...
[2026-10-25 02:52:52,024.024 INFO    ] 200
[2026-10-25 02:52:52,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:52,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:52:52,083.083 INFO    ] No update needed
[2026-10-25 02:52:52,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 02:52:52,121.121 INFO    ] 200
[2026-10-25 02:52:52,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:52:52,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:52:52,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:52:52,225.225 INFO    ] No camera update needed
[2026-10-25 02:52:52,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:52:52,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:52:52,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:52:52,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:52:54,283.283 INFO    ] ================================================
[2026-10-25 02:52:54,299.299 INFO    ] Launching Daemon at Sun Oct 25 02:52:54 IST 2026
[2026-10-25 02:52:54,309.309 INFO    ] ================================================
[2026-10-25 02:52:54,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:52:54
[2026-10-25 02:52:55,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:52:55,757.757 INFO    ] Initializing speech engine...
[2026-10-25 02:52:55,766.766 INFO    ] 2026-10-25 02:52:55
[2026-10-25 02:52:56,013.013 INFO    ] 2026-10-25 02:52:56
[2026-10-25 02:52:56,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:52:56,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:52:56,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:52:56,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:52:56,392.392 INFO    ] time= 25/10/2026 02:52:56
[2026-10-25 02:52:56,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:52:56,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:52:56,534.534 INFO    ] No existing commands found in stream
[2026-10-25 02:53:01,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:53:01,562.562 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 02:53:03,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:53:03,472.472 INFO    ] Checking for system updates...
[2026-10-25 02:53:03,522.522 INFO    ] 200
[2026-10-25 02:53:03,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:03,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:53:03,591.591 INFO    ] No update needed
[2026-10-25 02:53:03,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 02:53:03,634.634 INFO    ] 200
[2026-10-25 02:53:03,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:03,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:53:03,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:53:03,745.745 INFO    ] No camera update needed
[2026-10-25 02:53:03,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:53:03,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:53:03,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:53:03,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:53:05,799.799 INFO    ] ================================================
[2026-10-25 02:53:05,815.815 INFO    ] Launching Daemon at Sun Oct 25 02:53:05 IST 2026
[2026-10-25 02:53:05,826.826 INFO    ] ================================================
[2026-10-25 02:53:06,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:53:06
[2026-10-25 02:53:07,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:53:07,400.400 INFO    ] Initializing speech engine...
[2026-10-25 02:53:07,413.413 INFO    ] 2026-10-25 02:53:07
[2026-10-25 02:53:07,689.689 INFO    ] 2026-10-25 02:53:07
[2026-10-25 02:53:07,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:53:08,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:53:08,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:53:08,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:53:08,226.226 INFO    ] time= 25/10/2026 02:53:08
[2026-10-25 02:53:08,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:53:08,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:53:08,361.361 INFO    ] No existing commands found in stream
[2026-10-25 02:53:13,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:53:13,396.396 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 02:53:17,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:53:17,350.350 INFO    ] Checking for system updates...
[2026-10-25 02:53:17,386.386 INFO    ] 200
[2026-10-25 02:53:17,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:17,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:53:17,445.445 INFO    ] No update needed
[2026-10-25 02:53:17,448.448 INFO    ] Checking for camera pi updates...
[2026-10-25 02:53:17,482.482 INFO    ] 200
[2026-10-25 02:53:17,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:17,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:53:17,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:53:17,577.577 INFO    ] No camera update needed
[2026-10-25 02:53:17,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:53:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:53:17,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:53:17,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:53:19,633.633 INFO    ] ================================================
[2026-10-25 02:53:19,648.648 INFO    ] Launching Daemon at Sun Oct 25 02:53:19 IST 2026
[2026-10-25 02:53:19,659.659 INFO    ] ================================================
[2026-10-25 02:53:20,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:53:20
[2026-10-25 02:53:20,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:53:21,115.115 INFO    ] Initializing speech engine...
[2026-10-25 02:53:21,136.136 INFO    ] 2026-10-25 02:53:21
[2026-10-25 02:53:21,400.400 INFO    ] 2026-10-25 02:53:21
[2026-10-25 02:53:21,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:53:21,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:53:21,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:53:21,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:53:21,869.869 INFO    ] time= 25/10/2026 02:53:21
[2026-10-25 02:53:21,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:53:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:53:22,029.029 INFO    ] No existing commands found in stream
[2026-10-25 02:53:27,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:53:27,069.069 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 02:53:30,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:53:30,764.764 INFO    ] Checking for system updates...
[2026-10-25 02:53:30,800.800 INFO    ] 200
[2026-10-25 02:53:30,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:30,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:30,858.858 INFO    ] No update needed
[2026-10-25 02:53:30,860.860 INFO    ] Checking for camera pi updates...
[2026-10-25 02:53:30,895.895 INFO    ] 200
[2026-10-25 02:53:30,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:30,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:53:30,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:30,992.992 INFO    ] No camera update needed
[2026-10-25 02:53:30,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:53:30,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:53:31,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:53:31,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:53:33,048.048 INFO    ] ================================================
[2026-10-25 02:53:33,063.063 INFO    ] Launching Daemon at Sun Oct 25 02:53:33 IST 2026
[2026-10-25 02:53:33,074.074 INFO    ] ================================================
[2026-10-25 02:53:33,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:53:33
[2026-10-25 02:53:34,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:53:34,474.474 INFO    ] Initializing speech engine...
[2026-10-25 02:53:34,482.482 INFO    ] 2026-10-25 02:53:34
[2026-10-25 02:53:34,755.755 INFO    ] 2026-10-25 02:53:34
[2026-10-25 02:53:34,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:53:35,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:53:35,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:53:35,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:53:35,243.243 INFO    ] time= 25/10/2026 02:53:35
[2026-10-25 02:53:35,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:53:35,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:53:35,453.453 INFO    ] No existing commands found in stream
[2026-10-25 02:53:40,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:53:40,477.477 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 02:53:43,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:53:43,573.573 INFO    ] Checking for system updates...
[2026-10-25 02:53:43,609.609 INFO    ] 200
[2026-10-25 02:53:43,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:43,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:43,680.680 INFO    ] No update needed
[2026-10-25 02:53:43,682.682 INFO    ] Checking for camera pi updates...
[2026-10-25 02:53:43,716.716 INFO    ] 200
[2026-10-25 02:53:43,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:43,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:53:43,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:43,823.823 INFO    ] No camera update needed
[2026-10-25 02:53:43,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:53:43,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:53:43,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:53:43,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:53:45,878.878 INFO    ] ================================================
[2026-10-25 02:53:45,893.893 INFO    ] Launching Daemon at Sun Oct 25 02:53:45 IST 2026
[2026-10-25 02:53:45,904.904 INFO    ] ================================================
[2026-10-25 02:53:46,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:53:46
[2026-10-25 02:53:47,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:53:47,340.340 INFO    ] Initializing speech engine...
[2026-10-25 02:53:47,349.349 INFO    ] 2026-10-25 02:53:47
[2026-10-25 02:53:47,643.643 INFO    ] 2026-10-25 02:53:47
[2026-10-25 02:53:47,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:53:47,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:53:47,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:53:48,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:53:48,095.095 INFO    ] time= 25/10/2026 02:53:48
[2026-10-25 02:53:48,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:53:48,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:53:48,269.269 INFO    ] No existing commands found in stream
[2026-10-25 02:53:53,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:53:53,284.284 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 02:53:55,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:53:55,088.088 INFO    ] Checking for system updates...
[2026-10-25 02:53:55,125.125 INFO    ] 200
[2026-10-25 02:53:55,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:55,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:55,185.185 INFO    ] No update needed
[2026-10-25 02:53:55,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 02:53:55,222.222 INFO    ] 200
[2026-10-25 02:53:55,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:53:55,273.273 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:53:55,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:53:55,335.335 INFO    ] No camera update needed
[2026-10-25 02:53:55,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:53:55,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:53:55,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:53:55,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:53:57,390.390 INFO    ] ================================================
[2026-10-25 02:53:57,405.405 INFO    ] Launching Daemon at Sun Oct 25 02:53:57 IST 2026
[2026-10-25 02:53:57,415.415 INFO    ] ================================================
[2026-10-25 02:53:58,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:53:58
[2026-10-25 02:53:58,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:53:58,976.976 INFO    ] Initializing speech engine...
[2026-10-25 02:53:58,999.999 INFO    ] 2026-10-25 02:53:58
[2026-10-25 02:53:59,267.267 INFO    ] 2026-10-25 02:53:59
[2026-10-25 02:53:59,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:53:59,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:53:59,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:53:59,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:53:59,753.753 INFO    ] time= 25/10/2026 02:53:59
[2026-10-25 02:53:59,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:53:59,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:53:59,907.907 INFO    ] No existing commands found in stream
[2026-10-25 02:54:04,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:54:04,922.922 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 02:54:07,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 02:54:07,563.563 INFO    ] Checking for system updates...
[2026-10-25 02:54:07,600.600 INFO    ] 200
[2026-10-25 02:54:07,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:07,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:07,659.659 INFO    ] No update needed
[2026-10-25 02:54:07,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 02:54:07,697.697 INFO    ] 200
[2026-10-25 02:54:07,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:07,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:54:07,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:07,897.897 INFO    ] No camera update needed
[2026-10-25 02:54:07,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:54:07,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:54:07,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:54:07,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:54:09,954.954 INFO    ] ================================================
[2026-10-25 02:54:09,969.969 INFO    ] Launching Daemon at Sun Oct 25 02:54:09 IST 2026
[2026-10-25 02:54:09,979.979 INFO    ] ================================================
[2026-10-25 02:54:10,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:54:10
[2026-10-25 02:54:11,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:54:11,424.424 INFO    ] Initializing speech engine...
[2026-10-25 02:54:11,434.434 INFO    ] 2026-10-25 02:54:11
[2026-10-25 02:54:11,692.692 INFO    ] 2026-10-25 02:54:11
[2026-10-25 02:54:11,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:54:11,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:54:11,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:54:12,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:54:12,093.093 INFO    ] time= 25/10/2026 02:54:12
[2026-10-25 02:54:12,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:54:12,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:54:12,269.269 INFO    ] No existing commands found in stream
[2026-10-25 02:54:17,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:54:17,297.297 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 02:54:17,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:54:17,837.837 INFO    ] Checking for system updates...
[2026-10-25 02:54:17,874.874 INFO    ] 200
[2026-10-25 02:54:17,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:17,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:17,934.934 INFO    ] No update needed
[2026-10-25 02:54:17,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 02:54:17,972.972 INFO    ] 200
[2026-10-25 02:54:17,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:18,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:54:18,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:18,073.073 INFO    ] No camera update needed
[2026-10-25 02:54:18,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:54:18,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:54:18,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:54:18,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:54:20,130.130 INFO    ] ================================================
[2026-10-25 02:54:20,145.145 INFO    ] Launching Daemon at Sun Oct 25 02:54:20 IST 2026
[2026-10-25 02:54:20,155.155 INFO    ] ================================================
[2026-10-25 02:54:20,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:54:20
[2026-10-25 02:54:21,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:54:21,563.563 INFO    ] Initializing speech engine...
[2026-10-25 02:54:21,577.577 INFO    ] 2026-10-25 02:54:21
[2026-10-25 02:54:21,852.852 INFO    ] 2026-10-25 02:54:21
[2026-10-25 02:54:21,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:54:22,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:54:22,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:54:22,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:54:22,256.256 INFO    ] time= 25/10/2026 02:54:22
[2026-10-25 02:54:22,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:54:22,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:54:22,427.427 INFO    ] No existing commands found in stream
[2026-10-25 02:54:27,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:54:27,454.454 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 02:54:31,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:54:31,489.489 INFO    ] Checking for system updates...
[2026-10-25 02:54:31,526.526 INFO    ] 200
[2026-10-25 02:54:31,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:31,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:31,584.584 INFO    ] No update needed
[2026-10-25 02:54:31,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 02:54:31,621.621 INFO    ] 200
[2026-10-25 02:54:31,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:31,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:54:31,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:31,715.715 INFO    ] No camera update needed
[2026-10-25 02:54:31,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:54:31,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:54:31,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:54:31,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:54:33,784.784 INFO    ] ================================================
[2026-10-25 02:54:33,800.800 INFO    ] Launching Daemon at Sun Oct 25 02:54:33 IST 2026
[2026-10-25 02:54:33,810.810 INFO    ] ================================================
[2026-10-25 02:54:34,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:54:34
[2026-10-25 02:54:34,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:54:35,259.259 INFO    ] Initializing speech engine...
[2026-10-25 02:54:35,266.266 INFO    ] 2026-10-25 02:54:35
[2026-10-25 02:54:35,525.525 INFO    ] 2026-10-25 02:54:35
[2026-10-25 02:54:35,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:54:35,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:54:35,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:54:35,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:54:35,926.926 INFO    ] time= 25/10/2026 02:54:35
[2026-10-25 02:54:35,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:54:35,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:54:36,010.010 INFO    ] No existing commands found in stream
[2026-10-25 02:54:41,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:54:41,025.025 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 02:54:41,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:54:41,753.753 INFO    ] Checking for system updates...
[2026-10-25 02:54:41,789.789 INFO    ] 200
[2026-10-25 02:54:41,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:41,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:54:41,848.848 INFO    ] No update needed
[2026-10-25 02:54:41,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 02:54:41,886.886 INFO    ] 200
[2026-10-25 02:54:41,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:41,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:54:41,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:54:41,980.980 INFO    ] No camera update needed
[2026-10-25 02:54:41,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:54:41,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:54:41,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:54:41,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:54:44,035.035 INFO    ] ================================================
[2026-10-25 02:54:44,050.050 INFO    ] Launching Daemon at Sun Oct 25 02:54:44 IST 2026
[2026-10-25 02:54:44,060.060 INFO    ] ================================================
[2026-10-25 02:54:44,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:54:44
[2026-10-25 02:54:45,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:54:45,487.487 INFO    ] Initializing speech engine...
[2026-10-25 02:54:45,496.496 INFO    ] 2026-10-25 02:54:45
[2026-10-25 02:54:45,784.784 INFO    ] 2026-10-25 02:54:45
[2026-10-25 02:54:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:54:46,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:54:46,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:54:46,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:54:46,187.187 INFO    ] time= 25/10/2026 02:54:46
[2026-10-25 02:54:46,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:54:46,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:54:46,337.337 INFO    ] No existing commands found in stream
[2026-10-25 02:54:51,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:54:51,365.365 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 02:54:55,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:54:55,154.154 INFO    ] Checking for system updates...
[2026-10-25 02:54:55,196.196 INFO    ] 200
[2026-10-25 02:54:55,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:55,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:55,254.254 INFO    ] No update needed
[2026-10-25 02:54:55,257.257 INFO    ] Checking for camera pi updates...
[2026-10-25 02:54:55,291.291 INFO    ] 200
[2026-10-25 02:54:55,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:54:55,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:54:55,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:54:55,393.393 INFO    ] No camera update needed
[2026-10-25 02:54:55,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:54:55,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:54:55,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:54:55,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:54:57,449.449 INFO    ] ================================================
[2026-10-25 02:54:57,465.465 INFO    ] Launching Daemon at Sun Oct 25 02:54:57 IST 2026
[2026-10-25 02:54:57,476.476 INFO    ] ================================================
[2026-10-25 02:54:58,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:54:58
[2026-10-25 02:54:58,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:54:58,967.967 INFO    ] Initializing speech engine...
[2026-10-25 02:54:58,972.972 INFO    ] 2026-10-25 02:54:58
[2026-10-25 02:54:59,234.234 INFO    ] 2026-10-25 02:54:59
[2026-10-25 02:54:59,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:54:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:54:59,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:54:59,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:54:59,693.693 INFO    ] time= 25/10/2026 02:54:59
[2026-10-25 02:54:59,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:54:59,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:54:59,852.852 INFO    ] No existing commands found in stream
[2026-10-25 02:55:04,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:55:04,866.866 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 02:55:07,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:55:07,357.357 INFO    ] Checking for system updates...
[2026-10-25 02:55:07,394.394 INFO    ] 200
[2026-10-25 02:55:07,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:07,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:55:07,456.456 INFO    ] No update needed
[2026-10-25 02:55:07,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 02:55:07,492.492 INFO    ] 200
[2026-10-25 02:55:07,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:07,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:55:07,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:55:07,588.588 INFO    ] No camera update needed
[2026-10-25 02:55:07,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:55:07,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:55:07,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:55:07,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:55:09,644.644 INFO    ] ================================================
[2026-10-25 02:55:09,659.659 INFO    ] Launching Daemon at Sun Oct 25 02:55:09 IST 2026
[2026-10-25 02:55:09,670.670 INFO    ] ================================================
[2026-10-25 02:55:10,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:55:10
[2026-10-25 02:55:10,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:55:11,151.151 INFO    ] Initializing speech engine...
[2026-10-25 02:55:11,177.177 INFO    ] 2026-10-25 02:55:11
[2026-10-25 02:55:11,463.463 INFO    ] 2026-10-25 02:55:11
[2026-10-25 02:55:11,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:55:11,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:55:11,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:55:11,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:55:11,872.872 INFO    ] time= 25/10/2026 02:55:11
[2026-10-25 02:55:11,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:55:11,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:55:12,006.006 INFO    ] No existing commands found in stream
[2026-10-25 02:55:17,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:55:17,030.030 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 02:55:20,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:55:20,994.994 INFO    ] Checking for system updates...
[2026-10-25 02:55:21,030.030 INFO    ] 200
[2026-10-25 02:55:21,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:21,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:55:21,090.090 INFO    ] No update needed
[2026-10-25 02:55:21,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 02:55:21,126.126 INFO    ] 200
[2026-10-25 02:55:21,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:21,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:55:21,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:55:21,222.222 INFO    ] No camera update needed
[2026-10-25 02:55:21,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:55:21,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:55:21,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:55:21,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:55:23,277.277 INFO    ] ================================================
[2026-10-25 02:55:23,293.293 INFO    ] Launching Daemon at Sun Oct 25 02:55:23 IST 2026
[2026-10-25 02:55:23,304.304 INFO    ] ================================================
[2026-10-25 02:55:23,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:55:23
[2026-10-25 02:55:24,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:55:24,719.719 INFO    ] Initializing speech engine...
[2026-10-25 02:55:24,728.728 INFO    ] 2026-10-25 02:55:24
[2026-10-25 02:55:24,974.974 INFO    ] 2026-10-25 02:55:24
[2026-10-25 02:55:25,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:55:25,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:55:25,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:55:25,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:55:25,446.446 INFO    ] time= 25/10/2026 02:55:25
[2026-10-25 02:55:25,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:55:25,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:55:25,666.666 INFO    ] No existing commands found in stream
[2026-10-25 02:55:30,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:55:30,694.694 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 02:55:31,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:55:31,512.512 INFO    ] Checking for system updates...
[2026-10-25 02:55:31,548.548 INFO    ] 200
[2026-10-25 02:55:31,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:31,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:31,606.606 INFO    ] No update needed
[2026-10-25 02:55:31,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 02:55:31,642.642 INFO    ] 200
[2026-10-25 02:55:31,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:31,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:55:31,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:31,737.737 INFO    ] No camera update needed
[2026-10-25 02:55:31,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:55:31,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:55:31,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:55:31,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:55:33,792.792 INFO    ] ================================================
[2026-10-25 02:55:33,808.808 INFO    ] Launching Daemon at Sun Oct 25 02:55:33 IST 2026
[2026-10-25 02:55:33,819.819 INFO    ] ================================================
[2026-10-25 02:55:34,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:55:34
[2026-10-25 02:55:34,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:55:35,239.239 INFO    ] Initializing speech engine...
[2026-10-25 02:55:35,248.248 INFO    ] 2026-10-25 02:55:35
[2026-10-25 02:55:35,497.497 INFO    ] 2026-10-25 02:55:35
[2026-10-25 02:55:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:55:35,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:55:35,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:55:35,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:55:35,992.992 INFO    ] time= 25/10/2026 02:55:35
[2026-10-25 02:55:36,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:55:36,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:55:36,129.129 INFO    ] No existing commands found in stream
[2026-10-25 02:55:41,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:55:41,143.143 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 02:55:42,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:55:42,113.113 INFO    ] Checking for system updates...
[2026-10-25 02:55:42,153.153 INFO    ] 200
[2026-10-25 02:55:42,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:42,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:42,212.212 INFO    ] No update needed
[2026-10-25 02:55:42,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 02:55:42,248.248 INFO    ] 200
[2026-10-25 02:55:42,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:42,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:55:42,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:42,347.347 INFO    ] No camera update needed
[2026-10-25 02:55:42,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:55:42,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:55:42,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:55:42,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:55:44,403.403 INFO    ] ================================================
[2026-10-25 02:55:44,418.418 INFO    ] Launching Daemon at Sun Oct 25 02:55:44 IST 2026
[2026-10-25 02:55:44,430.430 INFO    ] ================================================
[2026-10-25 02:55:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:55:45
[2026-10-25 02:55:45,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:55:45,875.875 INFO    ] Initializing speech engine...
[2026-10-25 02:55:45,900.900 INFO    ] 2026-10-25 02:55:45
[2026-10-25 02:55:46,170.170 INFO    ] 2026-10-25 02:55:46
[2026-10-25 02:55:46,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:55:46,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:55:46,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:55:46,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:55:46,585.585 INFO    ] time= 25/10/2026 02:55:46
[2026-10-25 02:55:46,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:55:46,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:55:46,744.744 INFO    ] No existing commands found in stream
[2026-10-25 02:55:51,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:55:51,767.767 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 02:55:52,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:55:52,920.920 INFO    ] Checking for system updates...
[2026-10-25 02:55:52,960.960 INFO    ] 200
[2026-10-25 02:55:52,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:53,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:53,019.019 INFO    ] No update needed
[2026-10-25 02:55:53,021.021 INFO    ] Checking for camera pi updates...
[2026-10-25 02:55:53,055.055 INFO    ] 200
[2026-10-25 02:55:53,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:55:53,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:55:53,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:55:53,148.148 INFO    ] No camera update needed
[2026-10-25 02:55:53,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:55:53,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:55:53,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:55:53,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:55:55,203.203 INFO    ] ================================================
[2026-10-25 02:55:55,219.219 INFO    ] Launching Daemon at Sun Oct 25 02:55:55 IST 2026
[2026-10-25 02:55:55,230.230 INFO    ] ================================================
[2026-10-25 02:55:55,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:55:55
[2026-10-25 02:55:56,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:55:56,675.675 INFO    ] Initializing speech engine...
[2026-10-25 02:55:56,684.684 INFO    ] 2026-10-25 02:55:56
[2026-10-25 02:55:56,977.977 INFO    ] 2026-10-25 02:55:56
[2026-10-25 02:55:57,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:55:57,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:55:57,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:55:57,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:55:57,369.369 INFO    ] time= 25/10/2026 02:55:57
[2026-10-25 02:55:57,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:55:57,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:55:57,475.475 INFO    ] No existing commands found in stream
[2026-10-25 02:56:02,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:56:02,486.486 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 02:56:06,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:56:06,276.276 INFO    ] Checking for system updates...
[2026-10-25 02:56:06,314.314 INFO    ] 200
[2026-10-25 02:56:06,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:06,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:06,373.373 INFO    ] No update needed
[2026-10-25 02:56:06,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 02:56:06,409.409 INFO    ] 200
[2026-10-25 02:56:06,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:06,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:56:06,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:06,513.513 INFO    ] No camera update needed
[2026-10-25 02:56:06,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:56:06,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:56:06,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:56:06,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:56:08,569.569 INFO    ] ================================================
[2026-10-25 02:56:08,584.584 INFO    ] Launching Daemon at Sun Oct 25 02:56:08 IST 2026
[2026-10-25 02:56:08,595.595 INFO    ] ================================================
[2026-10-25 02:56:09,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:56:09
[2026-10-25 02:56:09,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:56:10,102.102 INFO    ] Initializing speech engine...
[2026-10-25 02:56:10,115.115 INFO    ] 2026-10-25 02:56:10
[2026-10-25 02:56:10,394.394 INFO    ] 2026-10-25 02:56:10
[2026-10-25 02:56:10,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:56:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:56:10,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:56:10,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:56:10,931.931 INFO    ] time= 25/10/2026 02:56:10
[2026-10-25 02:56:10,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:56:10,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:56:11,102.102 INFO    ] No existing commands found in stream
[2026-10-25 02:56:16,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:56:16,143.143 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 02:56:17,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:56:17,282.282 INFO    ] Checking for system updates...
[2026-10-25 02:56:17,319.319 INFO    ] 200
[2026-10-25 02:56:17,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:17,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:17,377.377 INFO    ] No update needed
[2026-10-25 02:56:17,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 02:56:17,417.417 INFO    ] 200
[2026-10-25 02:56:17,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:17,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:56:17,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:17,618.618 INFO    ] No camera update needed
[2026-10-25 02:56:17,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:56:17,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:56:17,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:56:17,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:56:19,678.678 INFO    ] ================================================
[2026-10-25 02:56:19,693.693 INFO    ] Launching Daemon at Sun Oct 25 02:56:19 IST 2026
[2026-10-25 02:56:19,703.703 INFO    ] ================================================
[2026-10-25 02:56:20,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:56:20
[2026-10-25 02:56:20,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:56:21,170.170 INFO    ] Initializing speech engine...
[2026-10-25 02:56:21,176.176 INFO    ] 2026-10-25 02:56:21
[2026-10-25 02:56:21,439.439 INFO    ] 2026-10-25 02:56:21
[2026-10-25 02:56:21,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:56:21,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:56:21,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:56:21,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:56:21,892.892 INFO    ] time= 25/10/2026 02:56:21
[2026-10-25 02:56:21,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:56:21,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:56:22,111.111 INFO    ] No existing commands found in stream
[2026-10-25 02:56:27,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:56:27,145.145 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 02:56:30,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 02:56:30,221.221 INFO    ] Checking for system updates...
[2026-10-25 02:56:30,258.258 INFO    ] 200
[2026-10-25 02:56:30,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:30,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:30,318.318 INFO    ] No update needed
[2026-10-25 02:56:30,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 02:56:30,355.355 INFO    ] 200
[2026-10-25 02:56:30,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:30,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:56:30,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:30,452.452 INFO    ] No camera update needed
[2026-10-25 02:56:30,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:56:30,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:56:30,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:56:30,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:56:32,509.509 INFO    ] ================================================
[2026-10-25 02:56:32,524.524 INFO    ] Launching Daemon at Sun Oct 25 02:56:32 IST 2026
[2026-10-25 02:56:32,535.535 INFO    ] ================================================
[2026-10-25 02:56:33,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:56:33
[2026-10-25 02:56:33,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:56:33,995.995 INFO    ] Initializing speech engine...
[2026-10-25 02:56:34,003.003 INFO    ] 2026-10-25 02:56:33
[2026-10-25 02:56:34,265.265 INFO    ] 2026-10-25 02:56:34
[2026-10-25 02:56:34,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:56:34,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:56:34,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:56:34,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:56:34,752.752 INFO    ] time= 25/10/2026 02:56:34
[2026-10-25 02:56:34,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:56:34,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:56:34,945.945 INFO    ] No existing commands found in stream
[2026-10-25 02:56:39,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:56:39,972.972 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 02:56:40,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:56:40,649.649 INFO    ] Checking for system updates...
[2026-10-25 02:56:40,686.686 INFO    ] 200
[2026-10-25 02:56:40,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:40,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:56:40,744.744 INFO    ] No update needed
[2026-10-25 02:56:40,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 02:56:40,781.781 INFO    ] 200
[2026-10-25 02:56:40,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:40,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:56:40,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:56:40,879.879 INFO    ] No camera update needed
[2026-10-25 02:56:40,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:56:40,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:56:40,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:56:40,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:56:42,934.934 INFO    ] ================================================
[2026-10-25 02:56:42,949.949 INFO    ] Launching Daemon at Sun Oct 25 02:56:42 IST 2026
[2026-10-25 02:56:42,960.960 INFO    ] ================================================
[2026-10-25 02:56:43,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:56:43
[2026-10-25 02:56:44,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:56:44,379.379 INFO    ] Initializing speech engine...
[2026-10-25 02:56:44,388.388 INFO    ] 2026-10-25 02:56:44
[2026-10-25 02:56:44,635.635 INFO    ] 2026-10-25 02:56:44
[2026-10-25 02:56:44,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:56:44,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:56:44,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:56:45,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:56:45,130.130 INFO    ] time= 25/10/2026 02:56:45
[2026-10-25 02:56:45,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:56:45,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:56:45,324.324 INFO    ] No existing commands found in stream
[2026-10-25 02:56:50,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:56:50,352.352 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 02:56:51,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:56:51,481.481 INFO    ] Checking for system updates...
[2026-10-25 02:56:51,522.522 INFO    ] 200
[2026-10-25 02:56:51,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:51,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:51,587.587 INFO    ] No update needed
[2026-10-25 02:56:51,590.590 INFO    ] Checking for camera pi updates...
[2026-10-25 02:56:51,623.623 INFO    ] 200
[2026-10-25 02:56:51,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:56:51,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:56:51,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:56:51,721.721 INFO    ] No camera update needed
[2026-10-25 02:56:51,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:56:51,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:56:51,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:56:51,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:56:53,777.777 INFO    ] ================================================
[2026-10-25 02:56:53,792.792 INFO    ] Launching Daemon at Sun Oct 25 02:56:53 IST 2026
[2026-10-25 02:56:53,803.803 INFO    ] ================================================
[2026-10-25 02:56:54,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:56:54
[2026-10-25 02:56:54,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:56:55,217.217 INFO    ] Initializing speech engine...
[2026-10-25 02:56:55,233.233 INFO    ] 2026-10-25 02:56:55
[2026-10-25 02:56:55,509.509 INFO    ] 2026-10-25 02:56:55
[2026-10-25 02:56:55,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:56:55,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:56:55,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:56:55,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:56:55,933.933 INFO    ] time= 25/10/2026 02:56:55
[2026-10-25 02:56:55,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:56:55,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:56:56,019.019 INFO    ] No existing commands found in stream
[2026-10-25 02:57:01,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:57:01,034.034 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 02:57:03,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:57:03,526.526 INFO    ] Checking for system updates...
[2026-10-25 02:57:03,563.563 INFO    ] 200
[2026-10-25 02:57:03,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:03,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:57:03,625.625 INFO    ] No update needed
[2026-10-25 02:57:03,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 02:57:03,662.662 INFO    ] 200
[2026-10-25 02:57:03,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:03,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:57:03,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:57:03,770.770 INFO    ] No camera update needed
[2026-10-25 02:57:03,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:57:03,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:57:03,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:57:03,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:57:05,828.828 INFO    ] ================================================
[2026-10-25 02:57:05,844.844 INFO    ] Launching Daemon at Sun Oct 25 02:57:05 IST 2026
[2026-10-25 02:57:05,854.854 INFO    ] ================================================
[2026-10-25 02:57:06,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:57:06
[2026-10-25 02:57:07,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:57:07,311.311 INFO    ] Initializing speech engine...
[2026-10-25 02:57:07,320.320 INFO    ] 2026-10-25 02:57:07
[2026-10-25 02:57:07,585.585 INFO    ] 2026-10-25 02:57:07
[2026-10-25 02:57:07,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:57:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:57:07,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:57:08,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:57:08,071.071 INFO    ] time= 25/10/2026 02:57:08
[2026-10-25 02:57:08,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:57:08,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:57:08,196.196 INFO    ] No existing commands found in stream
[2026-10-25 02:57:13,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:57:13,211.211 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 02:57:14,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:57:14,778.778 INFO    ] Checking for system updates...
[2026-10-25 02:57:14,814.814 INFO    ] 200
[2026-10-25 02:57:14,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:14,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:14,873.873 INFO    ] No update needed
[2026-10-25 02:57:14,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 02:57:14,909.909 INFO    ] 200
[2026-10-25 02:57:14,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:14,952.952 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:57:15,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:15,004.004 INFO    ] No camera update needed
[2026-10-25 02:57:15,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:57:15,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:57:15,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:57:15,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:57:17,062.062 INFO    ] ================================================
[2026-10-25 02:57:17,078.078 INFO    ] Launching Daemon at Sun Oct 25 02:57:17 IST 2026
[2026-10-25 02:57:17,088.088 INFO    ] ================================================
[2026-10-25 02:57:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:57:17
[2026-10-25 02:57:18,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:57:18,549.549 INFO    ] Initializing speech engine...
[2026-10-25 02:57:18,559.559 INFO    ] 2026-10-25 02:57:18
[2026-10-25 02:57:18,806.806 INFO    ] 2026-10-25 02:57:18
[2026-10-25 02:57:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:57:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:57:19,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:57:19,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:57:19,285.285 INFO    ] time= 25/10/2026 02:57:19
[2026-10-25 02:57:19,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:57:19,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:57:19,437.437 INFO    ] No existing commands found in stream
[2026-10-25 02:57:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:57:24,452.452 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 02:57:25,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:57:25,220.220 INFO    ] Checking for system updates...
[2026-10-25 02:57:25,260.260 INFO    ] 200
[2026-10-25 02:57:25,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:25,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:57:25,318.318 INFO    ] No update needed
[2026-10-25 02:57:25,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 02:57:25,358.358 INFO    ] 200
[2026-10-25 02:57:25,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:25,400.400 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:57:25,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 02:57:25,462.462 INFO    ] No camera update needed
[2026-10-25 02:57:25,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:57:25,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:57:25,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:57:25,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:57:27,518.518 INFO    ] ================================================
[2026-10-25 02:57:27,535.535 INFO    ] Launching Daemon at Sun Oct 25 02:57:27 IST 2026
[2026-10-25 02:57:27,546.546 INFO    ] ================================================
[2026-10-25 02:57:28,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:57:28
[2026-10-25 02:57:28,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:57:29,164.164 INFO    ] Initializing speech engine...
[2026-10-25 02:57:29,177.177 INFO    ] 2026-10-25 02:57:29
[2026-10-25 02:57:29,455.455 INFO    ] 2026-10-25 02:57:29
[2026-10-25 02:57:29,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:57:29,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:57:29,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:57:29,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:57:29,930.930 INFO    ] time= 25/10/2026 02:57:29
[2026-10-25 02:57:29,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:57:29,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:57:30,125.125 INFO    ] No existing commands found in stream
[2026-10-25 02:57:35,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:57:35,157.157 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 02:57:39,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:57:39,226.226 INFO    ] Checking for system updates...
[2026-10-25 02:57:39,264.264 INFO    ] 200
[2026-10-25 02:57:39,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:39,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:39,323.323 INFO    ] No update needed
[2026-10-25 02:57:39,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 02:57:39,360.360 INFO    ] 200
[2026-10-25 02:57:39,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:39,409.409 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:57:39,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:39,458.458 INFO    ] No camera update needed
[2026-10-25 02:57:39,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:57:39,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:57:39,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:57:39,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:57:41,516.516 INFO    ] ================================================
[2026-10-25 02:57:41,530.530 INFO    ] Launching Daemon at Sun Oct 25 02:57:41 IST 2026
[2026-10-25 02:57:41,541.541 INFO    ] ================================================
[2026-10-25 02:57:42,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:57:42
[2026-10-25 02:57:42,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:57:42,938.938 INFO    ] Initializing speech engine...
[2026-10-25 02:57:42,953.953 INFO    ] 2026-10-25 02:57:42
[2026-10-25 02:57:43,219.219 INFO    ] 2026-10-25 02:57:43
[2026-10-25 02:57:43,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:57:43,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:57:43,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:57:43,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:57:43,696.696 INFO    ] time= 25/10/2026 02:57:43
[2026-10-25 02:57:43,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:57:43,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:57:43,904.904 INFO    ] No existing commands found in stream
[2026-10-25 02:57:48,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:57:48,928.928 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 02:57:53,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:57:53,188.188 INFO    ] Checking for system updates...
[2026-10-25 02:57:53,224.224 INFO    ] 200
[2026-10-25 02:57:53,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:53,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:53,281.281 INFO    ] No update needed
[2026-10-25 02:57:53,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 02:57:53,317.317 INFO    ] 200
[2026-10-25 02:57:53,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:57:53,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:57:53,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:57:53,429.429 INFO    ] No camera update needed
[2026-10-25 02:57:53,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:57:53,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:57:53,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:57:53,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:57:55,485.485 INFO    ] ================================================
[2026-10-25 02:57:55,499.499 INFO    ] Launching Daemon at Sun Oct 25 02:57:55 IST 2026
[2026-10-25 02:57:55,510.510 INFO    ] ================================================
[2026-10-25 02:57:56,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:57:56
[2026-10-25 02:57:56,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:57:56,968.968 INFO    ] Initializing speech engine...
[2026-10-25 02:57:56,975.975 INFO    ] 2026-10-25 02:57:56
[2026-10-25 02:57:57,236.236 INFO    ] 2026-10-25 02:57:57
[2026-10-25 02:57:57,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:57:57,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:57:57,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:57:57,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:57:57,695.695 INFO    ] time= 25/10/2026 02:57:57
[2026-10-25 02:57:57,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:57:57,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:57:57,847.847 INFO    ] No existing commands found in stream
[2026-10-25 02:58:02,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:58:02,876.876 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 02:58:07,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:58:07,266.266 INFO    ] Checking for system updates...
[2026-10-25 02:58:07,304.304 INFO    ] 200
[2026-10-25 02:58:07,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:07,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:07,368.368 INFO    ] No update needed
[2026-10-25 02:58:07,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 02:58:07,404.404 INFO    ] 200
[2026-10-25 02:58:07,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:07,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:58:07,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:07,497.497 INFO    ] No camera update needed
[2026-10-25 02:58:07,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:58:07,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:58:07,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:58:07,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:58:09,553.553 INFO    ] ================================================
[2026-10-25 02:58:09,568.568 INFO    ] Launching Daemon at Sun Oct 25 02:58:09 IST 2026
[2026-10-25 02:58:09,578.578 INFO    ] ================================================
[2026-10-25 02:58:10,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:58:10
[2026-10-25 02:58:10,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:58:11,166.166 INFO    ] Initializing speech engine...
[2026-10-25 02:58:11,174.174 INFO    ] 2026-10-25 02:58:11
[2026-10-25 02:58:11,456.456 INFO    ] 2026-10-25 02:58:11
[2026-10-25 02:58:11,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:58:11,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:58:11,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:58:11,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:58:11,951.951 INFO    ] time= 25/10/2026 02:58:11
[2026-10-25 02:58:11,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:58:12,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:58:12,121.121 INFO    ] No existing commands found in stream
[2026-10-25 02:58:17,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:58:17,150.150 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 02:58:17,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:58:17,979.979 INFO    ] Checking for system updates...
[2026-10-25 02:58:18,016.016 INFO    ] 200
[2026-10-25 02:58:18,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:18,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:18,076.076 INFO    ] No update needed
[2026-10-25 02:58:18,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 02:58:18,113.113 INFO    ] 200
[2026-10-25 02:58:18,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:18,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:58:18,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:18,244.244 INFO    ] No camera update needed
[2026-10-25 02:58:18,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:58:18,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:58:18,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:58:18,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:58:20,301.301 INFO    ] ================================================
[2026-10-25 02:58:20,315.315 INFO    ] Launching Daemon at Sun Oct 25 02:58:20 IST 2026
[2026-10-25 02:58:20,326.326 INFO    ] ================================================
[2026-10-25 02:58:20,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:58:20
[2026-10-25 02:58:21,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:58:21,922.922 INFO    ] Initializing speech engine...
[2026-10-25 02:58:21,931.931 INFO    ] 2026-10-25 02:58:21
[2026-10-25 02:58:22,221.221 INFO    ] 2026-10-25 02:58:22
[2026-10-25 02:58:22,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:58:22,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:58:22,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:58:22,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:58:22,751.751 INFO    ] time= 25/10/2026 02:58:22
[2026-10-25 02:58:22,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:58:22,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:58:22,906.906 INFO    ] No existing commands found in stream
[2026-10-25 02:58:27,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:58:27,939.939 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 02:58:30,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:58:30,819.819 INFO    ] Checking for system updates...
[2026-10-25 02:58:30,856.856 INFO    ] 200
[2026-10-25 02:58:30,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:30,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:30,915.915 INFO    ] No update needed
[2026-10-25 02:58:30,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 02:58:30,956.956 INFO    ] 200
[2026-10-25 02:58:30,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:31,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:58:31,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:31,175.175 INFO    ] No camera update needed
[2026-10-25 02:58:31,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:58:31,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:58:31,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:58:31,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:58:33,237.237 INFO    ] ================================================
[2026-10-25 02:58:33,252.252 INFO    ] Launching Daemon at Sun Oct 25 02:58:33 IST 2026
[2026-10-25 02:58:33,262.262 INFO    ] ================================================
[2026-10-25 02:58:33,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:58:33
[2026-10-25 02:58:34,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:58:34,688.688 INFO    ] Initializing speech engine...
[2026-10-25 02:58:34,694.694 INFO    ] 2026-10-25 02:58:34
[2026-10-25 02:58:34,937.937 INFO    ] 2026-10-25 02:58:34
[2026-10-25 02:58:34,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:58:35,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:58:35,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:58:35,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:58:35,426.426 INFO    ] time= 25/10/2026 02:58:35
[2026-10-25 02:58:35,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:58:35,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:58:35,558.558 INFO    ] No existing commands found in stream
[2026-10-25 02:58:40,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:58:40,593.593 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 02:58:44,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:58:44,419.419 INFO    ] Checking for system updates...
[2026-10-25 02:58:44,459.459 INFO    ] 200
[2026-10-25 02:58:44,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:44,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:44,525.525 INFO    ] No update needed
[2026-10-25 02:58:44,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 02:58:44,566.566 INFO    ] 200
[2026-10-25 02:58:44,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:44,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:58:44,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:44,664.664 INFO    ] No camera update needed
[2026-10-25 02:58:44,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:58:44,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:58:44,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:58:44,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:58:46,722.722 INFO    ] ================================================
[2026-10-25 02:58:46,737.737 INFO    ] Launching Daemon at Sun Oct 25 02:58:46 IST 2026
[2026-10-25 02:58:46,748.748 INFO    ] ================================================
[2026-10-25 02:58:47,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:58:47
[2026-10-25 02:58:48,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:58:48,344.344 INFO    ] Initializing speech engine...
[2026-10-25 02:58:48,352.352 INFO    ] 2026-10-25 02:58:48
[2026-10-25 02:58:48,633.633 INFO    ] 2026-10-25 02:58:48
[2026-10-25 02:58:48,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:58:48,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:58:48,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:58:49,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:58:49,114.114 INFO    ] time= 25/10/2026 02:58:49
[2026-10-25 02:58:49,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:58:49,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:58:49,320.320 INFO    ] No existing commands found in stream
[2026-10-25 02:58:54,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:58:54,344.344 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 02:58:54,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:58:54,959.959 INFO    ] Checking for system updates...
[2026-10-25 02:58:54,997.997 INFO    ] 200
[2026-10-25 02:58:54,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:55,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:55,056.056 INFO    ] No update needed
[2026-10-25 02:58:55,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 02:58:55,094.094 INFO    ] 200
[2026-10-25 02:58:55,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:58:55,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:58:55,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:58:55,199.199 INFO    ] No camera update needed
[2026-10-25 02:58:55,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:58:55,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:58:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:58:55,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:58:57,257.257 INFO    ] ================================================
[2026-10-25 02:58:57,272.272 INFO    ] Launching Daemon at Sun Oct 25 02:58:57 IST 2026
[2026-10-25 02:58:57,282.282 INFO    ] ================================================
[2026-10-25 02:58:57,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:58:57
[2026-10-25 02:58:58,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:58:58,846.846 INFO    ] Initializing speech engine...
[2026-10-25 02:58:58,858.858 INFO    ] 2026-10-25 02:58:58
[2026-10-25 02:58:59,167.167 INFO    ] 2026-10-25 02:58:59
[2026-10-25 02:58:59,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:58:59,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:58:59,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:58:59,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:58:59,673.673 INFO    ] time= 25/10/2026 02:58:59
[2026-10-25 02:58:59,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:58:59,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:58:59,826.826 INFO    ] No existing commands found in stream
[2026-10-25 02:59:04,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:59:04,845.845 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 02:59:08,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 02:59:08,809.809 INFO    ] Checking for system updates...
[2026-10-25 02:59:08,846.846 INFO    ] 200
[2026-10-25 02:59:08,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:08,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:08,906.906 INFO    ] No update needed
[2026-10-25 02:59:08,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 02:59:08,947.947 INFO    ] 200
[2026-10-25 02:59:08,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:09,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:59:09,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:09,065.065 INFO    ] No camera update needed
[2026-10-25 02:59:09,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:59:09,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:59:09,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:59:09,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:59:11,122.122 INFO    ] ================================================
[2026-10-25 02:59:11,137.137 INFO    ] Launching Daemon at Sun Oct 25 02:59:11 IST 2026
[2026-10-25 02:59:11,147.147 INFO    ] ================================================
[2026-10-25 02:59:11,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:59:11
[2026-10-25 02:59:12,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:59:12,561.561 INFO    ] Initializing speech engine...
[2026-10-25 02:59:12,569.569 INFO    ] 2026-10-25 02:59:12
[2026-10-25 02:59:12,849.849 INFO    ] 2026-10-25 02:59:12
[2026-10-25 02:59:12,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:59:13,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:59:13,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:59:13,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:59:13,336.336 INFO    ] time= 25/10/2026 02:59:13
[2026-10-25 02:59:13,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:59:13,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:59:13,485.485 INFO    ] No existing commands found in stream
[2026-10-25 02:59:18,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:59:18,499.499 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 02:59:20,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 02:59:20,694.694 INFO    ] Checking for system updates...
[2026-10-25 02:59:20,729.729 INFO    ] 200
[2026-10-25 02:59:20,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:20,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:20,787.787 INFO    ] No update needed
[2026-10-25 02:59:20,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 02:59:20,826.826 INFO    ] 200
[2026-10-25 02:59:20,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:20,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:59:20,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:20,923.923 INFO    ] No camera update needed
[2026-10-25 02:59:20,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:59:20,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:59:20,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:59:20,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:59:22,978.978 INFO    ] ================================================
[2026-10-25 02:59:22,993.993 INFO    ] Launching Daemon at Sun Oct 25 02:59:22 IST 2026
[2026-10-25 02:59:23,003.003 INFO    ] ================================================
[2026-10-25 02:59:23,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:59:23
[2026-10-25 02:59:24,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:59:24,445.445 INFO    ] Initializing speech engine...
[2026-10-25 02:59:24,454.454 INFO    ] 2026-10-25 02:59:24
[2026-10-25 02:59:24,747.747 INFO    ] 2026-10-25 02:59:24
[2026-10-25 02:59:24,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:59:24,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:59:25,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:59:25,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:59:25,157.157 INFO    ] time= 25/10/2026 02:59:25
[2026-10-25 02:59:25,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:59:25,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:59:25,314.314 INFO    ] No existing commands found in stream
[2026-10-25 02:59:30,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:59:30,342.342 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 02:59:31,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 02:59:31,062.062 INFO    ] Checking for system updates...
[2026-10-25 02:59:31,098.098 INFO    ] 200
[2026-10-25 02:59:31,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:31,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:31,156.156 INFO    ] No update needed
[2026-10-25 02:59:31,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 02:59:31,199.199 INFO    ] 200
[2026-10-25 02:59:31,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:31,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:59:31,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:31,314.314 INFO    ] No camera update needed
[2026-10-25 02:59:31,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:59:31,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:59:31,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:59:31,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:59:33,373.373 INFO    ] ================================================
[2026-10-25 02:59:33,388.388 INFO    ] Launching Daemon at Sun Oct 25 02:59:33 IST 2026
[2026-10-25 02:59:33,399.399 INFO    ] ================================================
[2026-10-25 02:59:33,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:59:33
[2026-10-25 02:59:34,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:59:34,859.859 INFO    ] Initializing speech engine...
[2026-10-25 02:59:34,875.875 INFO    ] 2026-10-25 02:59:34
[2026-10-25 02:59:35,150.150 INFO    ] 2026-10-25 02:59:35
[2026-10-25 02:59:35,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:59:35,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:59:35,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:59:35,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:59:35,627.627 INFO    ] time= 25/10/2026 02:59:35
[2026-10-25 02:59:35,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:59:35,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:59:35,776.776 INFO    ] No existing commands found in stream
[2026-10-25 02:59:40,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:59:40,791.791 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 02:59:43,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:59:43,943.943 INFO    ] Checking for system updates...
[2026-10-25 02:59:43,980.980 INFO    ] 200
[2026-10-25 02:59:43,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:44,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:44,039.039 INFO    ] No update needed
[2026-10-25 02:59:44,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 02:59:44,078.078 INFO    ] 200
[2026-10-25 02:59:44,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:44,126.126 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:59:44,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:44,185.185 INFO    ] No camera update needed
[2026-10-25 02:59:44,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:59:44,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:59:44,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:59:44,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:59:46,241.241 INFO    ] ================================================
[2026-10-25 02:59:46,256.256 INFO    ] Launching Daemon at Sun Oct 25 02:59:46 IST 2026
[2026-10-25 02:59:46,274.274 INFO    ] ================================================
[2026-10-25 02:59:46,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:59:46
[2026-10-25 02:59:47,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:59:47,702.702 INFO    ] Initializing speech engine...
[2026-10-25 02:59:47,721.721 INFO    ] 2026-10-25 02:59:47
[2026-10-25 02:59:47,972.972 INFO    ] 2026-10-25 02:59:47
[2026-10-25 02:59:48,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 02:59:48,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 02:59:48,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 02:59:48,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 02:59:48,426.426 INFO    ] time= 25/10/2026 02:59:48
[2026-10-25 02:59:48,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 02:59:48,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 02:59:48,597.597 INFO    ] No existing commands found in stream
[2026-10-25 02:59:53,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 02:59:53,612.612 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 02:59:55,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 02:59:55,728.728 INFO    ] Checking for system updates...
[2026-10-25 02:59:55,763.763 INFO    ] 200
[2026-10-25 02:59:55,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:55,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:55,820.820 INFO    ] No update needed
[2026-10-25 02:59:55,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 02:59:55,856.856 INFO    ] 200
[2026-10-25 02:59:55,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 02:59:55,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 02:59:55,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 02:59:55,968.968 INFO    ] No camera update needed
[2026-10-25 02:59:55,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 02:59:55,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 02:59:55,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 02:59:55,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 02:59:58,026.026 INFO    ] ================================================
[2026-10-25 02:59:58,042.042 INFO    ] Launching Daemon at Sun Oct 25 02:59:58 IST 2026
[2026-10-25 02:59:58,054.054 INFO    ] ================================================
[2026-10-25 02:59:58,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 02:59:58
[2026-10-25 02:59:59,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 02:59:59,526.526 INFO    ] Initializing speech engine...
[2026-10-25 02:59:59,535.535 INFO    ] 2026-10-25 02:59:59
[2026-10-25 02:59:59,783.783 INFO    ] 2026-10-25 02:59:59
[2026-10-25 02:59:59,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:00:00,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:00:00,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:00:00,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:00:00,273.273 INFO    ] time= 25/10/2026 03:00:00
[2026-10-25 03:00:00,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:00:00,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:00:00,470.470 INFO    ] No existing commands found in stream
[2026-10-25 03:00:05,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:00:05,488.488 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 03:00:10,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:00:10,256.256 INFO    ] Checking for system updates...
[2026-10-25 03:00:10,292.292 INFO    ] 200
[2026-10-25 03:00:10,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:10,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:10,358.358 INFO    ] No update needed
[2026-10-25 03:00:10,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 03:00:10,394.394 INFO    ] 200
[2026-10-25 03:00:10,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:10,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:00:10,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:10,498.498 INFO    ] No camera update needed
[2026-10-25 03:00:10,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:00:10,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:00:10,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:00:10,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:00:12,558.558 INFO    ] ================================================
[2026-10-25 03:00:12,574.574 INFO    ] Launching Daemon at Sun Oct 25 03:00:12 IST 2026
[2026-10-25 03:00:12,586.586 INFO    ] ================================================
[2026-10-25 03:00:13,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:00:13
[2026-10-25 03:00:13,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:00:14,019.019 INFO    ] Initializing speech engine...
[2026-10-25 03:00:14,046.046 INFO    ] 2026-10-25 03:00:14
[2026-10-25 03:00:14,324.324 INFO    ] 2026-10-25 03:00:14
[2026-10-25 03:00:14,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:00:14,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:00:14,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:00:14,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:00:14,830.830 INFO    ] time= 25/10/2026 03:00:14
[2026-10-25 03:00:14,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:00:14,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:00:15,022.022 INFO    ] No existing commands found in stream
[2026-10-25 03:00:20,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:00:20,062.062 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 03:00:22,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:00:22,042.042 INFO    ] Checking for system updates...
[2026-10-25 03:00:22,083.083 INFO    ] 200
[2026-10-25 03:00:22,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:22,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:22,153.153 INFO    ] No update needed
[2026-10-25 03:00:22,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 03:00:22,190.190 INFO    ] 200
[2026-10-25 03:00:22,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:22,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:00:22,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:22,280.280 INFO    ] No camera update needed
[2026-10-25 03:00:22,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:00:22,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:00:22,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:00:22,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:00:24,337.337 INFO    ] ================================================
[2026-10-25 03:00:24,359.359 INFO    ] Launching Daemon at Sun Oct 25 03:00:24 IST 2026
[2026-10-25 03:00:24,370.370 INFO    ] ================================================
[2026-10-25 03:00:25,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:00:25
[2026-10-25 03:00:25,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:00:26,009.009 INFO    ] Initializing speech engine...
[2026-10-25 03:00:26,022.022 INFO    ] 2026-10-25 03:00:26
[2026-10-25 03:00:26,305.305 INFO    ] 2026-10-25 03:00:26
[2026-10-25 03:00:26,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:00:26,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:00:26,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:00:26,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:00:26,858.858 INFO    ] time= 25/10/2026 03:00:26
[2026-10-25 03:00:26,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:00:26,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:00:27,016.016 INFO    ] No existing commands found in stream
[2026-10-25 03:00:32,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:00:32,045.045 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 03:00:35,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:00:35,564.564 INFO    ] Checking for system updates...
[2026-10-25 03:00:35,605.605 INFO    ] 200
[2026-10-25 03:00:35,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:35,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:35,664.664 INFO    ] No update needed
[2026-10-25 03:00:35,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 03:00:35,701.701 INFO    ] 200
[2026-10-25 03:00:35,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:35,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:00:35,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:00:35,904.904 INFO    ] No camera update needed
[2026-10-25 03:00:35,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:00:35,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:00:35,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:00:35,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:00:37,959.959 INFO    ] ================================================
[2026-10-25 03:00:37,975.975 INFO    ] Launching Daemon at Sun Oct 25 03:00:37 IST 2026
[2026-10-25 03:00:37,986.986 INFO    ] ================================================
[2026-10-25 03:00:38,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:00:38
[2026-10-25 03:00:39,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:00:39,446.446 INFO    ] Initializing speech engine...
[2026-10-25 03:00:39,455.455 INFO    ] 2026-10-25 03:00:39
[2026-10-25 03:00:39,709.709 INFO    ] 2026-10-25 03:00:39
[2026-10-25 03:00:39,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:00:39,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:00:39,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:00:40,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:00:40,187.187 INFO    ] time= 25/10/2026 03:00:40
[2026-10-25 03:00:40,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:00:40,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:00:40,319.319 INFO    ] No existing commands found in stream
[2026-10-25 03:00:45,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:00:45,334.334 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 03:00:47,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:00:47,735.735 INFO    ] Checking for system updates...
[2026-10-25 03:00:47,773.773 INFO    ] 200
[2026-10-25 03:00:47,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:47,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:00:47,838.838 INFO    ] No update needed
[2026-10-25 03:00:47,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 03:00:47,874.874 INFO    ] 200
[2026-10-25 03:00:47,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:00:47,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:00:47,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:00:47,969.969 INFO    ] No camera update needed
[2026-10-25 03:00:47,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:00:47,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:00:47,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:00:47,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:00:50,035.035 INFO    ] ================================================
[2026-10-25 03:00:50,051.051 INFO    ] Launching Daemon at Sun Oct 25 03:00:50 IST 2026
[2026-10-25 03:00:50,063.063 INFO    ] ================================================
[2026-10-25 03:00:50,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:00:50
[2026-10-25 03:00:51,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:00:51,714.714 INFO    ] Initializing speech engine...
[2026-10-25 03:00:51,728.728 INFO    ] 2026-10-25 03:00:51
[2026-10-25 03:00:52,041.041 INFO    ] 2026-10-25 03:00:52
[2026-10-25 03:00:52,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:00:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:00:52,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:00:52,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:00:52,514.514 INFO    ] time= 25/10/2026 03:00:52
[2026-10-25 03:00:52,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:00:52,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:00:52,702.702 INFO    ] No existing commands found in stream
[2026-10-25 03:00:57,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:00:57,735.735 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 03:01:00,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:01:00,300.300 INFO    ] Checking for system updates...
[2026-10-25 03:01:00,344.344 INFO    ] 200
[2026-10-25 03:01:00,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:01:00,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:01:00,404.404 INFO    ] No update needed
[2026-10-25 03:01:00,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 03:01:00,442.442 INFO    ] 200
[2026-10-25 03:01:00,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:01:00,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:01:00,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:01:00,541.541 INFO    ] No camera update needed
[2026-10-25 03:01:00,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:01:00,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:00,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:00,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:02,625.625 INFO    ] ================================================
[2026-10-25 03:01:02,647.647 INFO    ] Launching Daemon at Sun Oct 25 03:01:02 IST 2026
[2026-10-25 03:01:02,664.664 INFO    ] ================================================
[2026-10-25 03:01:03,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:03
[2026-10-25 03:01:03,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:04,233.233 INFO    ] Initializing speech engine...
[2026-10-25 03:01:04,242.242 INFO    ] 2026-10-25 03:01:04
[2026-10-25 03:01:04,497.497 INFO    ] 2026-10-25 03:01:04
[2026-10-25 03:01:04,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:04,652.652 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:04,809.809 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:04,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:04,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:04,872.872 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:04,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:06,945.945 INFO    ] ================================================
[2026-10-25 03:01:06,961.961 INFO    ] Launching Daemon at Sun Oct 25 03:01:06 IST 2026
[2026-10-25 03:01:06,972.972 INFO    ] ================================================
[2026-10-25 03:01:07,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:07
[2026-10-25 03:01:08,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:08,421.421 INFO    ] Initializing speech engine...
[2026-10-25 03:01:08,446.446 INFO    ] 2026-10-25 03:01:08
[2026-10-25 03:01:08,720.720 INFO    ] 2026-10-25 03:01:08
[2026-10-25 03:01:08,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:08,814.814 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:08,984.984 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:09,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:09,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:09,102.102 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:09,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:11,179.179 INFO    ] ================================================
[2026-10-25 03:01:11,194.194 INFO    ] Launching Daemon at Sun Oct 25 03:01:11 IST 2026
[2026-10-25 03:01:11,205.205 INFO    ] ================================================
[2026-10-25 03:01:11,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:11
[2026-10-25 03:01:12,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:12,805.805 INFO    ] Initializing speech engine...
[2026-10-25 03:01:12,810.810 INFO    ] 2026-10-25 03:01:12
[2026-10-25 03:01:13,087.087 INFO    ] 2026-10-25 03:01:13
[2026-10-25 03:01:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:13,243.243 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:13,384.384 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:13,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:13,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:13,459.459 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:13,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:15,543.543 INFO    ] ================================================
[2026-10-25 03:01:15,558.558 INFO    ] Launching Daemon at Sun Oct 25 03:01:15 IST 2026
[2026-10-25 03:01:15,568.568 INFO    ] ================================================
[2026-10-25 03:01:16,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:16
[2026-10-25 03:01:16,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:17,135.135 INFO    ] Initializing speech engine...
[2026-10-25 03:01:17,143.143 INFO    ] 2026-10-25 03:01:17
[2026-10-25 03:01:17,445.445 INFO    ] 2026-10-25 03:01:17
[2026-10-25 03:01:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:20,673.673 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-10-25 03:01:20,700.700 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:20,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:20,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:20,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:22,756.756 INFO    ] ================================================
[2026-10-25 03:01:22,773.773 INFO    ] Launching Daemon at Sun Oct 25 03:01:22 IST 2026
[2026-10-25 03:01:22,785.785 INFO    ] ================================================
[2026-10-25 03:01:23,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:23
[2026-10-25 03:01:23,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:24,208.208 INFO    ] Initializing speech engine...
[2026-10-25 03:01:24,215.215 INFO    ] 2026-10-25 03:01:24
[2026-10-25 03:01:24,507.507 INFO    ] 2026-10-25 03:01:24
[2026-10-25 03:01:24,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:24,599.599 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:24,771.771 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:24,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:24,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:24,889.889 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:24,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:26,966.966 INFO    ] ================================================
[2026-10-25 03:01:26,980.980 INFO    ] Launching Daemon at Sun Oct 25 03:01:26 IST 2026
[2026-10-25 03:01:26,991.991 INFO    ] ================================================
[2026-10-25 03:01:27,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:27
[2026-10-25 03:01:28,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:28,460.460 INFO    ] Initializing speech engine...
[2026-10-25 03:01:28,476.476 INFO    ] 2026-10-25 03:01:28
[2026-10-25 03:01:28,762.762 INFO    ] 2026-10-25 03:01:28
[2026-10-25 03:01:28,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:28,905.905 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:29,074.074 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:29,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:29,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:29,162.162 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:29,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:31,310.310 INFO    ] ================================================
[2026-10-25 03:01:31,326.326 INFO    ] Launching Daemon at Sun Oct 25 03:01:31 IST 2026
[2026-10-25 03:01:31,338.338 INFO    ] ================================================
[2026-10-25 03:01:31,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:31
[2026-10-25 03:01:32,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:32,928.928 INFO    ] Initializing speech engine...
[2026-10-25 03:01:32,953.953 INFO    ] 2026-10-25 03:01:32
[2026-10-25 03:01:33,223.223 INFO    ] 2026-10-25 03:01:33
[2026-10-25 03:01:33,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:38,341.341 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 03:01:38,368.368 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:38,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:38,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:38,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:40,421.421 INFO    ] ================================================
[2026-10-25 03:01:40,436.436 INFO    ] Launching Daemon at Sun Oct 25 03:01:40 IST 2026
[2026-10-25 03:01:40,446.446 INFO    ] ================================================
[2026-10-25 03:01:41,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:41
[2026-10-25 03:01:41,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:42,048.048 INFO    ] Initializing speech engine...
[2026-10-25 03:01:42,063.063 INFO    ] 2026-10-25 03:01:42
[2026-10-25 03:01:42,346.346 INFO    ] 2026-10-25 03:01:42
[2026-10-25 03:01:42,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:42,480.480 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:42,647.647 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:42,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:42,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:42,707.707 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:42,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:44,781.781 INFO    ] ================================================
[2026-10-25 03:01:44,796.796 INFO    ] Launching Daemon at Sun Oct 25 03:01:44 IST 2026
[2026-10-25 03:01:44,807.807 INFO    ] ================================================
[2026-10-25 03:01:45,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:45
[2026-10-25 03:01:45,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:46,258.258 INFO    ] Initializing speech engine...
[2026-10-25 03:01:46,267.267 INFO    ] 2026-10-25 03:01:46
[2026-10-25 03:01:46,515.515 INFO    ] 2026-10-25 03:01:46
[2026-10-25 03:01:46,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:46,674.674 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:46,827.827 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:46,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:46,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:46,884.884 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:01:46,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:48,970.970 INFO    ] ================================================
[2026-10-25 03:01:48,985.985 INFO    ] Launching Daemon at Sun Oct 25 03:01:48 IST 2026
[2026-10-25 03:01:49,996.996 INFO    ] ================================================
[2026-10-25 03:01:49,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:49
[2026-10-25 03:01:50,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:50,454.454 INFO    ] Initializing speech engine...
[2026-10-25 03:01:50,465.465 INFO    ] 2026-10-25 03:01:50
[2026-10-25 03:01:50,740.740 INFO    ] 2026-10-25 03:01:50
[2026-10-25 03:01:50,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:55,862.862 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 03:01:55,889.889 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:55,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:55,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:01:55,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:01:57,943.943 INFO    ] ================================================
[2026-10-25 03:01:57,958.958 INFO    ] Launching Daemon at Sun Oct 25 03:01:57 IST 2026
[2026-10-25 03:01:57,968.968 INFO    ] ================================================
[2026-10-25 03:01:58,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:01:58
[2026-10-25 03:01:59,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:01:59,375.375 INFO    ] Initializing speech engine...
[2026-10-25 03:01:59,395.395 INFO    ] 2026-10-25 03:01:59
[2026-10-25 03:01:59,655.655 INFO    ] 2026-10-25 03:01:59
[2026-10-25 03:01:59,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:01:59,815.815 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 03:01:59,918.918 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 03:01:59,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:01:59,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:02:00,020.020 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 03:02:00,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:02:02,113.113 INFO    ] ================================================
[2026-10-25 03:02:02,133.133 INFO    ] Launching Daemon at Sun Oct 25 03:02:02 IST 2026
[2026-10-25 03:02:02,154.154 INFO    ] ================================================
[2026-10-25 03:02:02,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:02:02
[2026-10-25 03:02:03,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:02:03,775.775 INFO    ] Initializing speech engine...
[2026-10-25 03:02:03,782.782 INFO    ] 2026-10-25 03:02:03
[2026-10-25 03:02:04,070.070 INFO    ] 2026-10-25 03:02:04
[2026-10-25 03:02:04,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:02:04,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:02:04,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:02:04,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:02:04,413.413 INFO    ] time= 25/10/2026 03:02:04
[2026-10-25 03:02:04,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:02:04,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:02:04,498.498 INFO    ] No existing commands found in stream
[2026-10-25 03:02:09,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:02:09,513.513 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 03:02:13,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:02:13,352.352 INFO    ] Checking for system updates...
[2026-10-25 03:02:13,392.392 INFO    ] 200
[2026-10-25 03:02:13,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:13,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:13,449.449 INFO    ] No update needed
[2026-10-25 03:02:13,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 03:02:13,488.488 INFO    ] 200
[2026-10-25 03:02:13,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:13,532.532 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:02:13,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:13,585.585 INFO    ] No camera update needed
[2026-10-25 03:02:13,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:02:13,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:02:13,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:02:13,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:02:15,640.640 INFO    ] ================================================
[2026-10-25 03:02:15,654.654 INFO    ] Launching Daemon at Sun Oct 25 03:02:15 IST 2026
[2026-10-25 03:02:15,665.665 INFO    ] ================================================
[2026-10-25 03:02:16,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:02:16
[2026-10-25 03:02:16,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:02:17,144.144 INFO    ] Initializing speech engine...
[2026-10-25 03:02:17,154.154 INFO    ] 2026-10-25 03:02:17
[2026-10-25 03:02:17,434.434 INFO    ] 2026-10-25 03:02:17
[2026-10-25 03:02:17,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:02:17,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:02:17,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:02:17,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:02:17,910.910 INFO    ] time= 25/10/2026 03:02:17
[2026-10-25 03:02:17,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:02:17,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:02:18,093.093 INFO    ] No existing commands found in stream
[2026-10-25 03:02:23,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:02:23,133.133 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 03:02:25,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:02:25,235.235 INFO    ] Checking for system updates...
[2026-10-25 03:02:25,271.271 INFO    ] 200
[2026-10-25 03:02:25,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:25,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:25,328.328 INFO    ] No update needed
[2026-10-25 03:02:25,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 03:02:25,364.364 INFO    ] 200
[2026-10-25 03:02:25,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:25,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:02:25,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:25,456.456 INFO    ] No camera update needed
[2026-10-25 03:02:25,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:02:25,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:02:25,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:02:25,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:02:27,511.511 INFO    ] ================================================
[2026-10-25 03:02:27,526.526 INFO    ] Launching Daemon at Sun Oct 25 03:02:27 IST 2026
[2026-10-25 03:02:27,537.537 INFO    ] ================================================
[2026-10-25 03:02:28,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:02:28
[2026-10-25 03:02:28,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:02:28,946.946 INFO    ] Initializing speech engine...
[2026-10-25 03:02:28,955.955 INFO    ] 2026-10-25 03:02:28
[2026-10-25 03:02:29,243.243 INFO    ] 2026-10-25 03:02:29
[2026-10-25 03:02:29,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:02:29,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:02:29,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:02:29,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:02:29,613.613 INFO    ] time= 25/10/2026 03:02:29
[2026-10-25 03:02:29,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:02:29,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:02:29,735.735 INFO    ] No existing commands found in stream
[2026-10-25 03:02:34,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:02:34,750.750 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 03:02:36,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:02:36,693.693 INFO    ] Checking for system updates...
[2026-10-25 03:02:36,730.730 INFO    ] 200
[2026-10-25 03:02:36,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:36,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:02:36,802.802 INFO    ] No update needed
[2026-10-25 03:02:36,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 03:02:36,838.838 INFO    ] 200
[2026-10-25 03:02:36,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:36,881.881 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:02:36,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:02:36,980.980 INFO    ] No camera update needed
[2026-10-25 03:02:36,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:02:36,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:02:36,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:02:36,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:02:39,035.035 INFO    ] ================================================
[2026-10-25 03:02:39,050.050 INFO    ] Launching Daemon at Sun Oct 25 03:02:39 IST 2026
[2026-10-25 03:02:39,061.061 INFO    ] ================================================
[2026-10-25 03:02:39,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:02:39
[2026-10-25 03:02:40,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:02:40,567.567 INFO    ] Initializing speech engine...
[2026-10-25 03:02:40,586.586 INFO    ] 2026-10-25 03:02:40
[2026-10-25 03:02:40,865.865 INFO    ] 2026-10-25 03:02:40
[2026-10-25 03:02:40,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:02:41,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:02:41,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:02:41,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:02:41,316.316 INFO    ] time= 25/10/2026 03:02:41
[2026-10-25 03:02:41,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:02:41,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:02:41,460.460 INFO    ] No existing commands found in stream
[2026-10-25 03:02:46,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:02:46,475.475 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 03:02:49,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:02:49,692.692 INFO    ] Checking for system updates...
[2026-10-25 03:02:49,727.727 INFO    ] 200
[2026-10-25 03:02:49,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:49,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:49,791.791 INFO    ] No update needed
[2026-10-25 03:02:49,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 03:02:49,827.827 INFO    ] 200
[2026-10-25 03:02:49,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:02:49,870.870 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:02:49,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:02:49,932.932 INFO    ] No camera update needed
[2026-10-25 03:02:49,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:02:49,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:02:49,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:02:49,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:02:51,988.988 INFO    ] ================================================
[2026-10-25 03:02:52,004.004 INFO    ] Launching Daemon at Sun Oct 25 03:02:51 IST 2026
[2026-10-25 03:02:52,015.015 INFO    ] ================================================
[2026-10-25 03:02:52,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:02:52
[2026-10-25 03:02:53,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:02:53,416.416 INFO    ] Initializing speech engine...
[2026-10-25 03:02:53,439.439 INFO    ] 2026-10-25 03:02:53
[2026-10-25 03:02:53,695.695 INFO    ] 2026-10-25 03:02:53
[2026-10-25 03:02:53,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:02:53,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:02:54,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:02:54,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:02:54,209.209 INFO    ] time= 25/10/2026 03:02:54
[2026-10-25 03:02:54,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:02:54,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:02:54,394.394 INFO    ] No existing commands found in stream
[2026-10-25 03:02:59,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:02:59,424.424 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 03:03:00,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:03:00,304.304 INFO    ] Checking for system updates...
[2026-10-25 03:03:00,351.351 INFO    ] 200
[2026-10-25 03:03:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:00,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:00,408.408 INFO    ] No update needed
[2026-10-25 03:03:00,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 03:03:00,444.444 INFO    ] 200
[2026-10-25 03:03:00,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:00,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:03:00,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:00,543.543 INFO    ] No camera update needed
[2026-10-25 03:03:00,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:03:00,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:03:00,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:03:00,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:03:02,610.610 INFO    ] ================================================
[2026-10-25 03:03:02,633.633 INFO    ] Launching Daemon at Sun Oct 25 03:03:02 IST 2026
[2026-10-25 03:03:02,651.651 INFO    ] ================================================
[2026-10-25 03:03:03,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:03:03
[2026-10-25 03:03:03,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:03:04,168.168 INFO    ] Initializing speech engine...
[2026-10-25 03:03:04,191.191 INFO    ] 2026-10-25 03:03:04
[2026-10-25 03:03:04,462.462 INFO    ] 2026-10-25 03:03:04
[2026-10-25 03:03:04,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:03:04,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:03:04,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:03:04,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:03:04,807.807 INFO    ] time= 25/10/2026 03:03:04
[2026-10-25 03:03:04,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:03:04,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:03:04,886.886 INFO    ] No existing commands found in stream
[2026-10-25 03:03:09,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:03:09,900.900 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 03:03:14,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:03:14,156.156 INFO    ] Checking for system updates...
[2026-10-25 03:03:14,195.195 INFO    ] 200
[2026-10-25 03:03:14,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:14,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:03:14,252.252 INFO    ] No update needed
[2026-10-25 03:03:14,255.255 INFO    ] Checking for camera pi updates...
[2026-10-25 03:03:14,289.289 INFO    ] 200
[2026-10-25 03:03:14,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:14,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:03:14,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:03:14,392.392 INFO    ] No camera update needed
[2026-10-25 03:03:14,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:03:14,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:03:14,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:03:14,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:03:16,447.447 INFO    ] ================================================
[2026-10-25 03:03:16,463.463 INFO    ] Launching Daemon at Sun Oct 25 03:03:16 IST 2026
[2026-10-25 03:03:16,474.474 INFO    ] ================================================
[2026-10-25 03:03:17,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:03:17
[2026-10-25 03:03:17,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:03:17,871.871 INFO    ] Initializing speech engine...
[2026-10-25 03:03:17,879.879 INFO    ] 2026-10-25 03:03:17
[2026-10-25 03:03:18,173.173 INFO    ] 2026-10-25 03:03:18
[2026-10-25 03:03:18,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:03:18,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:03:18,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:03:18,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:03:18,588.588 INFO    ] time= 25/10/2026 03:03:18
[2026-10-25 03:03:18,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:03:18,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:03:18,766.766 INFO    ] No existing commands found in stream
[2026-10-25 03:03:23,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:03:23,799.799 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 03:03:26,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:03:26,986.986 INFO    ] Checking for system updates...
[2026-10-25 03:03:27,025.025 INFO    ] 200
[2026-10-25 03:03:27,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:27,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:27,083.083 INFO    ] No update needed
[2026-10-25 03:03:27,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 03:03:27,119.119 INFO    ] 200
[2026-10-25 03:03:27,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:27,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:03:27,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:27,214.214 INFO    ] No camera update needed
[2026-10-25 03:03:27,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:03:27,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:03:27,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:03:27,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:03:29,269.269 INFO    ] ================================================
[2026-10-25 03:03:29,284.284 INFO    ] Launching Daemon at Sun Oct 25 03:03:29 IST 2026
[2026-10-25 03:03:29,295.295 INFO    ] ================================================
[2026-10-25 03:03:29,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:03:29
[2026-10-25 03:03:30,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:03:30,701.701 INFO    ] Initializing speech engine...
[2026-10-25 03:03:30,707.707 INFO    ] 2026-10-25 03:03:30
[2026-10-25 03:03:31,003.003 INFO    ] 2026-10-25 03:03:30
[2026-10-25 03:03:31,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:03:31,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:03:31,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:03:31,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:03:31,371.371 INFO    ] time= 25/10/2026 03:03:31
[2026-10-25 03:03:31,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:03:31,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:03:31,471.471 INFO    ] No existing commands found in stream
[2026-10-25 03:03:36,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:03:36,504.504 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 03:03:40,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:03:40,866.866 INFO    ] Checking for system updates...
[2026-10-25 03:03:40,905.905 INFO    ] 200
[2026-10-25 03:03:40,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:40,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:40,962.962 INFO    ] No update needed
[2026-10-25 03:03:40,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 03:03:41,002.002 INFO    ] 200
[2026-10-25 03:03:41,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:41,046.046 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:03:41,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:03:41,104.104 INFO    ] No camera update needed
[2026-10-25 03:03:41,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:03:41,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:03:41,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:03:41,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:03:43,161.161 INFO    ] ================================================
[2026-10-25 03:03:43,176.176 INFO    ] Launching Daemon at Sun Oct 25 03:03:43 IST 2026
[2026-10-25 03:03:43,187.187 INFO    ] ================================================
[2026-10-25 03:03:43,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:03:43
[2026-10-25 03:03:44,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:03:44,679.679 INFO    ] Initializing speech engine...
[2026-10-25 03:03:44,693.693 INFO    ] 2026-10-25 03:03:44
[2026-10-25 03:03:44,976.976 INFO    ] 2026-10-25 03:03:44
[2026-10-25 03:03:45,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:03:45,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:03:45,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:03:45,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:03:45,450.450 INFO    ] time= 25/10/2026 03:03:45
[2026-10-25 03:03:45,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:03:45,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:03:45,644.644 INFO    ] No existing commands found in stream
[2026-10-25 03:03:50,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:03:50,675.675 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 03:03:52,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:03:52,901.901 INFO    ] Checking for system updates...
[2026-10-25 03:03:52,938.938 INFO    ] 200
[2026-10-25 03:03:52,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:52,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:03:52,998.998 INFO    ] No update needed
[2026-10-25 03:03:53,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 03:03:53,045.045 INFO    ] 200
[2026-10-25 03:03:53,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:03:53,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:03:53,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:03:53,155.155 INFO    ] No camera update needed
[2026-10-25 03:03:53,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:03:53,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:03:53,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:03:53,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:03:55,222.222 INFO    ] ================================================
[2026-10-25 03:03:55,239.239 INFO    ] Launching Daemon at Sun Oct 25 03:03:55 IST 2026
[2026-10-25 03:03:55,250.250 INFO    ] ================================================
[2026-10-25 03:03:55,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:03:55
[2026-10-25 03:03:56,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:03:56,880.880 INFO    ] Initializing speech engine...
[2026-10-25 03:03:56,888.888 INFO    ] 2026-10-25 03:03:56
[2026-10-25 03:03:57,159.159 INFO    ] 2026-10-25 03:03:57
[2026-10-25 03:03:57,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:03:57,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:03:57,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:03:57,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:03:57,710.710 INFO    ] time= 25/10/2026 03:03:57
[2026-10-25 03:03:57,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:03:57,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:03:57,867.867 INFO    ] No existing commands found in stream
[2026-10-25 03:04:02,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:04:02,896.896 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 03:04:05,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:04:05,886.886 INFO    ] Checking for system updates...
[2026-10-25 03:04:05,923.923 INFO    ] 200
[2026-10-25 03:04:05,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:05,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:05,982.982 INFO    ] No update needed
[2026-10-25 03:04:05,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 03:04:06,022.022 INFO    ] 200
[2026-10-25 03:04:06,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:06,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:04:06,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:06,225.225 INFO    ] No camera update needed
[2026-10-25 03:04:06,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:04:06,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:04:06,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:04:06,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:04:08,282.282 INFO    ] ================================================
[2026-10-25 03:04:08,297.297 INFO    ] Launching Daemon at Sun Oct 25 03:04:08 IST 2026
[2026-10-25 03:04:08,308.308 INFO    ] ================================================
[2026-10-25 03:04:08,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:04:08
[2026-10-25 03:04:09,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:04:09,888.888 INFO    ] Initializing speech engine...
[2026-10-25 03:04:09,896.896 INFO    ] 2026-10-25 03:04:09
[2026-10-25 03:04:10,177.177 INFO    ] 2026-10-25 03:04:10
[2026-10-25 03:04:10,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:04:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:04:10,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:04:10,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:04:10,661.661 INFO    ] time= 25/10/2026 03:04:10
[2026-10-25 03:04:10,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:04:10,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:04:10,847.847 INFO    ] No existing commands found in stream
[2026-10-25 03:04:15,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:04:15,889.889 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 03:04:16,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:04:16,387.387 INFO    ] Checking for system updates...
[2026-10-25 03:04:16,424.424 INFO    ] 200
[2026-10-25 03:04:16,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:16,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:04:16,490.490 INFO    ] No update needed
[2026-10-25 03:04:16,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 03:04:16,533.533 INFO    ] 200
[2026-10-25 03:04:16,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:16,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:04:16,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:04:16,636.636 INFO    ] No camera update needed
[2026-10-25 03:04:16,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:04:16,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:04:16,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:04:16,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:04:18,693.693 INFO    ] ================================================
[2026-10-25 03:04:18,708.708 INFO    ] Launching Daemon at Sun Oct 25 03:04:18 IST 2026
[2026-10-25 03:04:18,718.718 INFO    ] ================================================
[2026-10-25 03:04:19,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:04:19
[2026-10-25 03:04:19,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:04:20,196.196 INFO    ] Initializing speech engine...
[2026-10-25 03:04:20,205.205 INFO    ] 2026-10-25 03:04:20
[2026-10-25 03:04:20,495.495 INFO    ] 2026-10-25 03:04:20
[2026-10-25 03:04:20,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:04:20,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:04:20,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:04:20,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:04:21,024.024 INFO    ] time= 25/10/2026 03:04:20
[2026-10-25 03:04:21,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:04:21,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:04:21,180.180 INFO    ] No existing commands found in stream
[2026-10-25 03:04:26,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:04:26,204.204 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 03:04:29,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:04:29,303.303 INFO    ] Checking for system updates...
[2026-10-25 03:04:29,340.340 INFO    ] 200
[2026-10-25 03:04:29,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:29,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:29,405.405 INFO    ] No update needed
[2026-10-25 03:04:29,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 03:04:29,443.443 INFO    ] 200
[2026-10-25 03:04:29,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:29,491.491 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:04:29,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:29,524.524 INFO    ] No camera update needed
[2026-10-25 03:04:29,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:04:29,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:04:29,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:04:29,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:04:31,581.581 INFO    ] ================================================
[2026-10-25 03:04:31,597.597 INFO    ] Launching Daemon at Sun Oct 25 03:04:31 IST 2026
[2026-10-25 03:04:31,609.609 INFO    ] ================================================
[2026-10-25 03:04:32,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:04:32
[2026-10-25 03:04:32,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:04:33,119.119 INFO    ] Initializing speech engine...
[2026-10-25 03:04:33,128.128 INFO    ] 2026-10-25 03:04:33
[2026-10-25 03:04:33,383.383 INFO    ] 2026-10-25 03:04:33
[2026-10-25 03:04:33,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:04:33,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:04:33,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:04:33,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:04:33,871.871 INFO    ] time= 25/10/2026 03:04:33
[2026-10-25 03:04:33,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:04:33,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:04:34,105.105 INFO    ] No existing commands found in stream
[2026-10-25 03:04:39,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:04:39,134.134 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 03:04:43,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:04:43,268.268 INFO    ] Checking for system updates...
[2026-10-25 03:04:43,314.314 INFO    ] 200
[2026-10-25 03:04:43,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:43,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:04:43,373.373 INFO    ] No update needed
[2026-10-25 03:04:43,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 03:04:43,411.411 INFO    ] 200
[2026-10-25 03:04:43,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:43,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:04:43,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:04:43,506.506 INFO    ] No camera update needed
[2026-10-25 03:04:43,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:04:43,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:04:43,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:04:43,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:04:45,565.565 INFO    ] ================================================
[2026-10-25 03:04:45,580.580 INFO    ] Launching Daemon at Sun Oct 25 03:04:45 IST 2026
[2026-10-25 03:04:45,591.591 INFO    ] ================================================
[2026-10-25 03:04:46,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:04:46
[2026-10-25 03:04:46,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:04:46,998.998 INFO    ] Initializing speech engine...
[2026-10-25 03:04:47,022.022 INFO    ] 2026-10-25 03:04:47
[2026-10-25 03:04:47,288.288 INFO    ] 2026-10-25 03:04:47
[2026-10-25 03:04:47,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:04:47,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:04:47,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:04:47,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:04:47,656.656 INFO    ] time= 25/10/2026 03:04:47
[2026-10-25 03:04:47,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:04:47,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:04:47,778.778 INFO    ] No existing commands found in stream
[2026-10-25 03:04:52,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:04:52,798.798 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 03:04:57,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:04:57,268.268 INFO    ] Checking for system updates...
[2026-10-25 03:04:57,311.311 INFO    ] 200
[2026-10-25 03:04:57,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:57,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:57,378.378 INFO    ] No update needed
[2026-10-25 03:04:57,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 03:04:57,414.414 INFO    ] 200
[2026-10-25 03:04:57,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:04:57,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:04:57,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:04:57,531.531 INFO    ] No camera update needed
[2026-10-25 03:04:57,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:04:57,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:04:57,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:04:57,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:04:59,587.587 INFO    ] ================================================
[2026-10-25 03:04:59,602.602 INFO    ] Launching Daemon at Sun Oct 25 03:04:59 IST 2026
[2026-10-25 03:04:59,612.612 INFO    ] ================================================
[2026-10-25 03:05:00,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:00
[2026-10-25 03:05:00,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:01,014.014 INFO    ] Initializing speech engine...
[2026-10-25 03:05:01,029.029 INFO    ] 2026-10-25 03:05:01
[2026-10-25 03:05:01,307.307 INFO    ] 2026-10-25 03:05:01
[2026-10-25 03:05:01,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:05:01,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:05:01,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:05:01,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:05:01,834.834 INFO    ] time= 25/10/2026 03:05:01
[2026-10-25 03:05:01,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:05:01,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:05:01,937.937 INFO    ] No existing commands found in stream
[2026-10-25 03:05:06,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:05:06,950.950 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 03:05:10,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:05:10,331.331 INFO    ] Checking for system updates...
[2026-10-25 03:05:10,369.369 INFO    ] 200
[2026-10-25 03:05:10,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:10,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:10,426.426 INFO    ] No update needed
[2026-10-25 03:05:10,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 03:05:10,466.466 INFO    ] 200
[2026-10-25 03:05:10,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:10,509.509 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:05:10,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:10,577.577 INFO    ] No camera update needed
[2026-10-25 03:05:10,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:05:10,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:05:10,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:05:10,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:05:12,633.633 INFO    ] ================================================
[2026-10-25 03:05:12,648.648 INFO    ] Launching Daemon at Sun Oct 25 03:05:12 IST 2026
[2026-10-25 03:05:12,659.659 INFO    ] ================================================
[2026-10-25 03:05:13,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:13
[2026-10-25 03:05:13,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:14,112.112 INFO    ] Initializing speech engine...
[2026-10-25 03:05:14,117.117 INFO    ] 2026-10-25 03:05:14
[2026-10-25 03:05:14,382.382 INFO    ] 2026-10-25 03:05:14
[2026-10-25 03:05:14,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:05:14,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:05:14,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:05:14,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:05:14,862.862 INFO    ] time= 25/10/2026 03:05:14
[2026-10-25 03:05:14,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:05:14,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:05:15,048.048 INFO    ] No existing commands found in stream
[2026-10-25 03:05:20,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:05:20,082.082 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 03:05:21,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:05:21,135.135 INFO    ] Checking for system updates...
[2026-10-25 03:05:21,171.171 INFO    ] 200
[2026-10-25 03:05:21,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:21,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:21,230.230 INFO    ] No update needed
[2026-10-25 03:05:21,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 03:05:21,274.274 INFO    ] 200
[2026-10-25 03:05:21,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:21,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:05:21,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:21,382.382 INFO    ] No camera update needed
[2026-10-25 03:05:21,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:05:21,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:05:21,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:05:21,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:05:23,437.437 INFO    ] ================================================
[2026-10-25 03:05:23,452.452 INFO    ] Launching Daemon at Sun Oct 25 03:05:23 IST 2026
[2026-10-25 03:05:23,467.467 INFO    ] ================================================
[2026-10-25 03:05:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:24
[2026-10-25 03:05:24,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:24,885.885 INFO    ] Initializing speech engine...
[2026-10-25 03:05:24,900.900 INFO    ] 2026-10-25 03:05:24
[2026-10-25 03:05:25,164.164 INFO    ] 2026-10-25 03:05:25
[2026-10-25 03:05:25,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:05:25,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:05:25,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:05:25,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:05:25,527.527 INFO    ] time= 25/10/2026 03:05:25
[2026-10-25 03:05:25,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:05:25,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:05:25,646.646 INFO    ] No existing commands found in stream
[2026-10-25 03:05:30,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:05:30,658.658 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 03:05:33,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:05:33,644.644 INFO    ] Checking for system updates...
[2026-10-25 03:05:33,684.684 INFO    ] 200
[2026-10-25 03:05:33,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:33,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:05:33,748.748 INFO    ] No update needed
[2026-10-25 03:05:33,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 03:05:33,786.786 INFO    ] 200
[2026-10-25 03:05:33,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:33,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:05:33,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:05:33,880.880 INFO    ] No camera update needed
[2026-10-25 03:05:33,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:05:33,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:05:33,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:05:33,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:05:35,938.938 INFO    ] ================================================
[2026-10-25 03:05:35,953.953 INFO    ] Launching Daemon at Sun Oct 25 03:05:35 IST 2026
[2026-10-25 03:05:35,964.964 INFO    ] ================================================
[2026-10-25 03:05:36,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:36
[2026-10-25 03:05:37,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:37,519.519 INFO    ] Initializing speech engine...
[2026-10-25 03:05:37,528.528 INFO    ] 2026-10-25 03:05:37
[2026-10-25 03:05:37,793.793 INFO    ] 2026-10-25 03:05:37
[2026-10-25 03:05:37,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:05:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:05:38,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:05:38,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:05:38,294.294 INFO    ] time= 25/10/2026 03:05:38
[2026-10-25 03:05:38,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:05:38,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:05:38,488.488 INFO    ] No existing commands found in stream
[2026-10-25 03:05:43,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:05:43,517.517 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 03:05:45,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:05:45,388.388 INFO    ] Checking for system updates...
[2026-10-25 03:05:45,425.425 INFO    ] 200
[2026-10-25 03:05:45,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:45,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:45,490.490 INFO    ] No update needed
[2026-10-25 03:05:45,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 03:05:45,529.529 INFO    ] 200
[2026-10-25 03:05:45,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:45,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:05:45,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:05:45,635.635 INFO    ] No camera update needed
[2026-10-25 03:05:45,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:05:45,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:05:45,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:05:45,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:05:47,692.692 INFO    ] ================================================
[2026-10-25 03:05:47,707.707 INFO    ] Launching Daemon at Sun Oct 25 03:05:47 IST 2026
[2026-10-25 03:05:47,717.717 INFO    ] ================================================
[2026-10-25 03:05:48,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:48
[2026-10-25 03:05:48,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:49,117.117 INFO    ] Initializing speech engine...
[2026-10-25 03:05:49,125.125 INFO    ] 2026-10-25 03:05:49
[2026-10-25 03:05:49,415.415 INFO    ] 2026-10-25 03:05:49
[2026-10-25 03:05:49,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:05:49,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:05:49,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:05:49,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:05:49,829.829 INFO    ] time= 25/10/2026 03:05:49
[2026-10-25 03:05:49,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:05:49,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:05:49,915.915 INFO    ] No existing commands found in stream
[2026-10-25 03:05:54,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:05:54,933.933 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 03:05:55,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:05:55,951.951 INFO    ] Checking for system updates...
[2026-10-25 03:05:55,986.986 INFO    ] 200
[2026-10-25 03:05:55,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:56,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:05:56,044.044 INFO    ] No update needed
[2026-10-25 03:05:56,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 03:05:56,083.083 INFO    ] 200
[2026-10-25 03:05:56,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:05:56,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:05:56,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:05:56,183.183 INFO    ] No camera update needed
[2026-10-25 03:05:56,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:05:56,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:05:56,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:05:56,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:05:58,238.238 INFO    ] ================================================
[2026-10-25 03:05:58,253.253 INFO    ] Launching Daemon at Sun Oct 25 03:05:58 IST 2026
[2026-10-25 03:05:58,263.263 INFO    ] ================================================
[2026-10-25 03:05:58,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:05:58
[2026-10-25 03:05:59,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:05:59,666.666 INFO    ] Initializing speech engine...
[2026-10-25 03:05:59,681.681 INFO    ] 2026-10-25 03:05:59
[2026-10-25 03:05:59,963.963 INFO    ] 2026-10-25 03:05:59
[2026-10-25 03:05:59,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:06:00,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:06:00,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:06:00,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:06:00,353.353 INFO    ] time= 25/10/2026 03:06:00
[2026-10-25 03:06:00,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:06:00,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:06:00,460.460 INFO    ] No existing commands found in stream
[2026-10-25 03:06:05,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:06:05,475.475 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 03:06:07,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:06:07,056.056 INFO    ] Checking for system updates...
[2026-10-25 03:06:07,091.091 INFO    ] 200
[2026-10-25 03:06:07,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:07,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:07,154.154 INFO    ] No update needed
[2026-10-25 03:06:07,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 03:06:07,190.190 INFO    ] 200
[2026-10-25 03:06:07,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:07,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:06:07,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:07,293.293 INFO    ] No camera update needed
[2026-10-25 03:06:07,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:06:07,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:06:07,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:06:07,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:06:09,347.347 INFO    ] ================================================
[2026-10-25 03:06:09,362.362 INFO    ] Launching Daemon at Sun Oct 25 03:06:09 IST 2026
[2026-10-25 03:06:09,372.372 INFO    ] ================================================
[2026-10-25 03:06:09,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:06:09
[2026-10-25 03:06:10,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:06:10,825.825 INFO    ] Initializing speech engine...
[2026-10-25 03:06:10,832.832 INFO    ] 2026-10-25 03:06:10
[2026-10-25 03:06:11,094.094 INFO    ] 2026-10-25 03:06:11
[2026-10-25 03:06:11,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:06:11,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:06:11,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:06:11,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:06:11,555.555 INFO    ] time= 25/10/2026 03:06:11
[2026-10-25 03:06:11,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:06:11,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:06:11,705.705 INFO    ] No existing commands found in stream
[2026-10-25 03:06:16,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:06:16,719.719 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 03:06:20,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:06:20,773.773 INFO    ] Checking for system updates...
[2026-10-25 03:06:20,810.810 INFO    ] 200
[2026-10-25 03:06:20,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:20,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:06:20,871.871 INFO    ] No update needed
[2026-10-25 03:06:20,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 03:06:20,907.907 INFO    ] 200
[2026-10-25 03:06:20,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:20,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:06:21,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:06:21,126.126 INFO    ] No camera update needed
[2026-10-25 03:06:21,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:06:21,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:06:21,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:06:21,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:06:23,185.185 INFO    ] ================================================
[2026-10-25 03:06:23,200.200 INFO    ] Launching Daemon at Sun Oct 25 03:06:23 IST 2026
[2026-10-25 03:06:23,211.211 INFO    ] ================================================
[2026-10-25 03:06:23,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:06:23
[2026-10-25 03:06:24,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:06:24,670.670 INFO    ] Initializing speech engine...
[2026-10-25 03:06:24,680.680 INFO    ] 2026-10-25 03:06:24
[2026-10-25 03:06:24,965.965 INFO    ] 2026-10-25 03:06:24
[2026-10-25 03:06:25,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:06:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:06:25,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:06:25,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:06:25,498.498 INFO    ] time= 25/10/2026 03:06:25
[2026-10-25 03:06:25,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:06:25,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:06:25,639.639 INFO    ] No existing commands found in stream
[2026-10-25 03:06:30,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:06:30,666.666 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 03:06:34,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:06:34,621.621 INFO    ] Checking for system updates...
[2026-10-25 03:06:34,661.661 INFO    ] 200
[2026-10-25 03:06:34,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:34,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:34,720.720 INFO    ] No update needed
[2026-10-25 03:06:34,723.723 INFO    ] Checking for camera pi updates...
[2026-10-25 03:06:34,756.756 INFO    ] 200
[2026-10-25 03:06:34,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:34,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:06:34,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:34,849.849 INFO    ] No camera update needed
[2026-10-25 03:06:34,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:06:34,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:06:34,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:06:34,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:06:36,904.904 INFO    ] ================================================
[2026-10-25 03:06:36,919.919 INFO    ] Launching Daemon at Sun Oct 25 03:06:36 IST 2026
[2026-10-25 03:06:36,930.930 INFO    ] ================================================
[2026-10-25 03:06:37,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:06:37
[2026-10-25 03:06:38,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:06:38,542.542 INFO    ] Initializing speech engine...
[2026-10-25 03:06:38,550.550 INFO    ] 2026-10-25 03:06:38
[2026-10-25 03:06:38,840.840 INFO    ] 2026-10-25 03:06:38
[2026-10-25 03:06:38,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:06:39,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:06:39,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:06:39,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:06:39,309.309 INFO    ] time= 25/10/2026 03:06:39
[2026-10-25 03:06:39,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:06:39,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:06:39,531.531 INFO    ] No existing commands found in stream
[2026-10-25 03:06:44,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:06:44,559.559 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 03:06:45,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:06:45,387.387 INFO    ] Checking for system updates...
[2026-10-25 03:06:45,424.424 INFO    ] 200
[2026-10-25 03:06:45,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:45,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:06:45,482.482 INFO    ] No update needed
[2026-10-25 03:06:45,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 03:06:45,518.518 INFO    ] 200
[2026-10-25 03:06:45,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:45,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:06:45,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:06:45,621.621 INFO    ] No camera update needed
[2026-10-25 03:06:45,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:06:45,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:06:45,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:06:45,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:06:47,678.678 INFO    ] ================================================
[2026-10-25 03:06:47,693.693 INFO    ] Launching Daemon at Sun Oct 25 03:06:47 IST 2026
[2026-10-25 03:06:47,703.703 INFO    ] ================================================
[2026-10-25 03:06:48,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:06:48
[2026-10-25 03:06:48,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:06:49,165.165 INFO    ] Initializing speech engine...
[2026-10-25 03:06:49,176.176 INFO    ] 2026-10-25 03:06:49
[2026-10-25 03:06:49,429.429 INFO    ] 2026-10-25 03:06:49
[2026-10-25 03:06:49,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:06:49,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:06:49,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:06:49,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:06:49,889.889 INFO    ] time= 25/10/2026 03:06:49
[2026-10-25 03:06:49,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:06:49,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:06:50,079.079 INFO    ] No existing commands found in stream
[2026-10-25 03:06:55,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:06:55,111.111 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 03:06:59,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:06:59,339.339 INFO    ] Checking for system updates...
[2026-10-25 03:06:59,376.376 INFO    ] 200
[2026-10-25 03:06:59,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:59,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:59,433.433 INFO    ] No update needed
[2026-10-25 03:06:59,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 03:06:59,469.469 INFO    ] 200
[2026-10-25 03:06:59,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:06:59,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:06:59,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:06:59,581.581 INFO    ] No camera update needed
[2026-10-25 03:06:59,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:06:59,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:06:59,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:06:59,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:07:01,637.637 INFO    ] ================================================
[2026-10-25 03:07:01,652.652 INFO    ] Launching Daemon at Sun Oct 25 03:07:01 IST 2026
[2026-10-25 03:07:01,663.663 INFO    ] ================================================
[2026-10-25 03:07:02,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:07:02
[2026-10-25 03:07:03,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:07:03,353.353 INFO    ] Initializing speech engine...
[2026-10-25 03:07:03,362.362 INFO    ] 2026-10-25 03:07:03
[2026-10-25 03:07:03,687.687 INFO    ] 2026-10-25 03:07:03
[2026-10-25 03:07:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:07:03,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:07:03,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:07:04,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:07:04,097.097 INFO    ] time= 25/10/2026 03:07:04
[2026-10-25 03:07:04,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:07:04,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:07:04,266.266 INFO    ] No existing commands found in stream
[2026-10-25 03:07:09,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:07:09,295.295 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 03:07:11,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:07:11,445.445 INFO    ] Checking for system updates...
[2026-10-25 03:07:11,482.482 INFO    ] 200
[2026-10-25 03:07:11,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:11,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:11,541.541 INFO    ] No update needed
[2026-10-25 03:07:11,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 03:07:11,578.578 INFO    ] 200
[2026-10-25 03:07:11,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:11,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:07:11,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:11,674.674 INFO    ] No camera update needed
[2026-10-25 03:07:11,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:07:11,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:07:11,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:07:11,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:07:13,730.730 INFO    ] ================================================
[2026-10-25 03:07:13,745.745 INFO    ] Launching Daemon at Sun Oct 25 03:07:13 IST 2026
[2026-10-25 03:07:13,756.756 INFO    ] ================================================
[2026-10-25 03:07:14,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:07:14
[2026-10-25 03:07:14,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:07:15,168.168 INFO    ] Initializing speech engine...
[2026-10-25 03:07:15,188.188 INFO    ] 2026-10-25 03:07:15
[2026-10-25 03:07:15,446.446 INFO    ] 2026-10-25 03:07:15
[2026-10-25 03:07:15,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:07:15,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:07:15,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:07:15,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:07:15,803.803 INFO    ] time= 25/10/2026 03:07:15
[2026-10-25 03:07:15,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:07:15,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:07:15,869.869 INFO    ] No existing commands found in stream
[2026-10-25 03:07:20,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:07:20,921.921 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 03:07:24,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:07:24,966.966 INFO    ] Checking for system updates...
[2026-10-25 03:07:25,004.004 INFO    ] 200
[2026-10-25 03:07:25,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:25,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:25,062.062 INFO    ] No update needed
[2026-10-25 03:07:25,065.065 INFO    ] Checking for camera pi updates...
[2026-10-25 03:07:25,098.098 INFO    ] 200
[2026-10-25 03:07:25,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:25,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:07:25,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:25,182.182 INFO    ] No camera update needed
[2026-10-25 03:07:25,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:07:25,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:07:25,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:07:25,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:07:27,238.238 INFO    ] ================================================
[2026-10-25 03:07:27,252.252 INFO    ] Launching Daemon at Sun Oct 25 03:07:27 IST 2026
[2026-10-25 03:07:27,263.263 INFO    ] ================================================
[2026-10-25 03:07:27,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:07:27
[2026-10-25 03:07:28,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:07:28,752.752 INFO    ] Initializing speech engine...
[2026-10-25 03:07:28,762.762 INFO    ] 2026-10-25 03:07:28
[2026-10-25 03:07:29,024.024 INFO    ] 2026-10-25 03:07:29
[2026-10-25 03:07:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:07:29,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:07:29,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:07:29,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:07:29,415.415 INFO    ] time= 25/10/2026 03:07:29
[2026-10-25 03:07:29,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:07:29,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:07:29,585.585 INFO    ] No existing commands found in stream
[2026-10-25 03:07:34,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:07:34,618.618 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 03:07:36,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:07:36,195.195 INFO    ] Checking for system updates...
[2026-10-25 03:07:36,231.231 INFO    ] 200
[2026-10-25 03:07:36,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:36,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:36,289.289 INFO    ] No update needed
[2026-10-25 03:07:36,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 03:07:36,327.327 INFO    ] 200
[2026-10-25 03:07:36,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:36,374.374 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:07:36,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:07:36,408.408 INFO    ] No camera update needed
[2026-10-25 03:07:36,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:07:36,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:07:36,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:07:36,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:07:38,462.462 INFO    ] ================================================
[2026-10-25 03:07:38,477.477 INFO    ] Launching Daemon at Sun Oct 25 03:07:38 IST 2026
[2026-10-25 03:07:38,488.488 INFO    ] ================================================
[2026-10-25 03:07:39,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:07:39
[2026-10-25 03:07:39,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:07:39,996.996 INFO    ] Initializing speech engine...
[2026-10-25 03:07:40,006.006 INFO    ] 2026-10-25 03:07:39
[2026-10-25 03:07:40,273.273 INFO    ] 2026-10-25 03:07:40
[2026-10-25 03:07:40,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:07:40,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:07:40,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:07:40,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:07:40,674.674 INFO    ] time= 25/10/2026 03:07:40
[2026-10-25 03:07:40,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:07:40,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:07:40,755.755 INFO    ] No existing commands found in stream
[2026-10-25 03:07:45,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:07:45,793.793 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 03:07:49,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:07:49,704.704 INFO    ] Checking for system updates...
[2026-10-25 03:07:49,741.741 INFO    ] 200
[2026-10-25 03:07:49,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:49,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:07:49,798.798 INFO    ] No update needed
[2026-10-25 03:07:49,800.800 INFO    ] Checking for camera pi updates...
[2026-10-25 03:07:49,840.840 INFO    ] 200
[2026-10-25 03:07:49,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:07:49,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:07:49,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:07:49,963.963 INFO    ] No camera update needed
[2026-10-25 03:07:49,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:07:49,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:07:49,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:07:49,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:07:52,018.018 INFO    ] ================================================
[2026-10-25 03:07:52,033.033 INFO    ] Launching Daemon at Sun Oct 25 03:07:52 IST 2026
[2026-10-25 03:07:52,044.044 INFO    ] ================================================
[2026-10-25 03:07:52,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:07:52
[2026-10-25 03:07:53,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:07:53,599.599 INFO    ] Initializing speech engine...
[2026-10-25 03:07:53,608.608 INFO    ] 2026-10-25 03:07:53
[2026-10-25 03:07:53,886.886 INFO    ] 2026-10-25 03:07:53
[2026-10-25 03:07:53,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:07:54,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:07:54,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:07:54,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:07:54,423.423 INFO    ] time= 25/10/2026 03:07:54
[2026-10-25 03:07:54,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:07:54,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:07:54,575.575 INFO    ] No existing commands found in stream
[2026-10-25 03:07:59,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:07:59,592.592 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 03:08:03,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:08:03,318.318 INFO    ] Checking for system updates...
[2026-10-25 03:08:03,381.381 INFO    ] 200
[2026-10-25 03:08:03,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:03,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:08:03,459.459 INFO    ] No update needed
[2026-10-25 03:08:03,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 03:08:03,504.504 INFO    ] 200
[2026-10-25 03:08:03,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:03,565.565 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:08:03,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:08:03,623.623 INFO    ] No camera update needed
[2026-10-25 03:08:03,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:08:03,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:08:03,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:08:03,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:08:05,680.680 INFO    ] ================================================
[2026-10-25 03:08:05,695.695 INFO    ] Launching Daemon at Sun Oct 25 03:08:05 IST 2026
[2026-10-25 03:08:05,705.705 INFO    ] ================================================
[2026-10-25 03:08:06,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:08:06
[2026-10-25 03:08:06,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:08:07,166.166 INFO    ] Initializing speech engine...
[2026-10-25 03:08:07,173.173 INFO    ] 2026-10-25 03:08:07
[2026-10-25 03:08:07,440.440 INFO    ] 2026-10-25 03:08:07
[2026-10-25 03:08:07,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:08:07,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:08:07,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:08:07,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:08:07,844.844 INFO    ] time= 25/10/2026 03:08:07
[2026-10-25 03:08:07,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:08:07,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:08:07,930.930 INFO    ] No existing commands found in stream
[2026-10-25 03:08:12,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:08:12,946.946 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 03:08:13,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:08:13,541.541 INFO    ] Checking for system updates...
[2026-10-25 03:08:13,577.577 INFO    ] 200
[2026-10-25 03:08:13,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:13,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:13,634.634 INFO    ] No update needed
[2026-10-25 03:08:13,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 03:08:13,675.675 INFO    ] 200
[2026-10-25 03:08:13,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:13,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:08:13,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:13,776.776 INFO    ] No camera update needed
[2026-10-25 03:08:13,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:08:13,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:08:13,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:08:13,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:08:15,830.830 INFO    ] ================================================
[2026-10-25 03:08:15,844.844 INFO    ] Launching Daemon at Sun Oct 25 03:08:15 IST 2026
[2026-10-25 03:08:15,855.855 INFO    ] ================================================
[2026-10-25 03:08:16,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:08:16
[2026-10-25 03:08:17,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:08:17,560.560 INFO    ] Initializing speech engine...
[2026-10-25 03:08:17,566.566 INFO    ] 2026-10-25 03:08:17
[2026-10-25 03:08:17,837.837 INFO    ] 2026-10-25 03:08:17
[2026-10-25 03:08:17,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:08:18,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:08:18,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:08:18,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:08:18,316.316 INFO    ] time= 25/10/2026 03:08:18
[2026-10-25 03:08:18,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:08:18,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:08:18,521.521 INFO    ] No existing commands found in stream
[2026-10-25 03:08:23,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:08:23,547.547 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 03:08:24,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:08:24,176.176 INFO    ] Checking for system updates...
[2026-10-25 03:08:24,216.216 INFO    ] 200
[2026-10-25 03:08:24,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:24,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:24,275.275 INFO    ] No update needed
[2026-10-25 03:08:24,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 03:08:24,314.314 INFO    ] 200
[2026-10-25 03:08:24,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:24,376.376 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:08:24,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:24,516.516 INFO    ] No camera update needed
[2026-10-25 03:08:24,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:08:24,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:08:24,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:08:24,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:08:26,574.574 INFO    ] ================================================
[2026-10-25 03:08:26,589.589 INFO    ] Launching Daemon at Sun Oct 25 03:08:26 IST 2026
[2026-10-25 03:08:26,600.600 INFO    ] ================================================
[2026-10-25 03:08:27,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:08:27
[2026-10-25 03:08:27,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:08:28,010.010 INFO    ] Initializing speech engine...
[2026-10-25 03:08:28,029.029 INFO    ] 2026-10-25 03:08:28
[2026-10-25 03:08:28,275.275 INFO    ] 2026-10-25 03:08:28
[2026-10-25 03:08:28,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:08:29,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:08:29,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:08:29,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:08:29,490.490 INFO    ] time= 25/10/2026 03:08:29
[2026-10-25 03:08:29,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:08:29,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:08:29,598.598 INFO    ] No existing commands found in stream
[2026-10-25 03:08:34,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:08:34,626.626 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 03:08:36,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:08:36,672.672 INFO    ] Checking for system updates...
[2026-10-25 03:08:36,713.713 INFO    ] 200
[2026-10-25 03:08:36,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:36,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:36,776.776 INFO    ] No update needed
[2026-10-25 03:08:36,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 03:08:36,814.814 INFO    ] 200
[2026-10-25 03:08:36,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:36,857.857 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:08:37,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:08:37,090.090 INFO    ] No camera update needed
[2026-10-25 03:08:37,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:08:37,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:08:37,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:08:37,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:08:39,148.148 INFO    ] ================================================
[2026-10-25 03:08:39,164.164 INFO    ] Launching Daemon at Sun Oct 25 03:08:39 IST 2026
[2026-10-25 03:08:39,175.175 INFO    ] ================================================
[2026-10-25 03:08:39,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:08:39
[2026-10-25 03:08:40,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:08:40,620.620 INFO    ] Initializing speech engine...
[2026-10-25 03:08:40,644.644 INFO    ] 2026-10-25 03:08:40
[2026-10-25 03:08:40,920.920 INFO    ] 2026-10-25 03:08:40
[2026-10-25 03:08:40,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:08:41,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:08:41,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:08:41,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:08:41,297.297 INFO    ] time= 25/10/2026 03:08:41
[2026-10-25 03:08:41,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:08:41,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:08:41,421.421 INFO    ] No existing commands found in stream
[2026-10-25 03:08:46,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:08:46,436.436 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 03:08:50,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:08:50,688.688 INFO    ] Checking for system updates...
[2026-10-25 03:08:50,724.724 INFO    ] 200
[2026-10-25 03:08:50,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:50,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:08:50,790.790 INFO    ] No update needed
[2026-10-25 03:08:50,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 03:08:50,827.827 INFO    ] 200
[2026-10-25 03:08:50,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:08:50,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:08:50,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:08:50,937.937 INFO    ] No camera update needed
[2026-10-25 03:08:50,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:08:50,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:08:50,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:08:50,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:08:52,992.992 INFO    ] ================================================
[2026-10-25 03:08:53,007.007 INFO    ] Launching Daemon at Sun Oct 25 03:08:53 IST 2026
[2026-10-25 03:08:53,019.019 INFO    ] ================================================
[2026-10-25 03:08:53,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:08:53
[2026-10-25 03:08:54,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:08:54,444.444 INFO    ] Initializing speech engine...
[2026-10-25 03:08:54,453.453 INFO    ] 2026-10-25 03:08:54
[2026-10-25 03:08:54,718.718 INFO    ] 2026-10-25 03:08:54
[2026-10-25 03:08:54,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:08:54,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:08:54,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:08:55,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:08:55,190.190 INFO    ] time= 25/10/2026 03:08:55
[2026-10-25 03:08:55,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:08:55,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:08:55,329.329 INFO    ] No existing commands found in stream
[2026-10-25 03:09:00,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:09:00,368.368 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 03:09:01,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:09:01,147.147 INFO    ] Checking for system updates...
[2026-10-25 03:09:01,196.196 INFO    ] 200
[2026-10-25 03:09:01,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:01,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:01,260.260 INFO    ] No update needed
[2026-10-25 03:09:01,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 03:09:01,299.299 INFO    ] 200
[2026-10-25 03:09:01,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:01,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:09:01,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:01,407.407 INFO    ] No camera update needed
[2026-10-25 03:09:01,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:09:01,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:09:01,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:09:01,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:09:03,473.473 INFO    ] ================================================
[2026-10-25 03:09:03,491.491 INFO    ] Launching Daemon at Sun Oct 25 03:09:03 IST 2026
[2026-10-25 03:09:03,510.510 INFO    ] ================================================
[2026-10-25 03:09:04,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:09:04
[2026-10-25 03:09:04,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:09:05,029.029 INFO    ] Initializing speech engine...
[2026-10-25 03:09:05,038.038 INFO    ] 2026-10-25 03:09:05
[2026-10-25 03:09:05,288.288 INFO    ] 2026-10-25 03:09:05
[2026-10-25 03:09:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:09:05,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:09:05,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:09:05,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:09:05,649.649 INFO    ] time= 25/10/2026 03:09:05
[2026-10-25 03:09:05,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:09:05,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:09:05,760.760 INFO    ] No existing commands found in stream
[2026-10-25 03:09:10,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:09:10,778.778 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 03:09:12,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:09:12,914.914 INFO    ] Checking for system updates...
[2026-10-25 03:09:12,954.954 INFO    ] 200
[2026-10-25 03:09:12,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:13,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:13,013.013 INFO    ] No update needed
[2026-10-25 03:09:13,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 03:09:13,049.049 INFO    ] 200
[2026-10-25 03:09:13,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:13,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:09:13,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:13,161.161 INFO    ] No camera update needed
[2026-10-25 03:09:13,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:09:13,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:09:13,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:09:13,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:09:15,216.216 INFO    ] ================================================
[2026-10-25 03:09:15,233.233 INFO    ] Launching Daemon at Sun Oct 25 03:09:15 IST 2026
[2026-10-25 03:09:15,244.244 INFO    ] ================================================
[2026-10-25 03:09:15,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:09:15
[2026-10-25 03:09:16,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:09:16,676.676 INFO    ] Initializing speech engine...
[2026-10-25 03:09:16,685.685 INFO    ] 2026-10-25 03:09:16
[2026-10-25 03:09:16,936.936 INFO    ] 2026-10-25 03:09:16
[2026-10-25 03:09:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:09:17,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:09:17,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:09:17,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:09:17,409.409 INFO    ] time= 25/10/2026 03:09:17
[2026-10-25 03:09:17,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:09:17,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:09:17,563.563 INFO    ] No existing commands found in stream
[2026-10-25 03:09:22,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:09:22,578.578 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 03:09:23,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:09:23,675.675 INFO    ] Checking for system updates...
[2026-10-25 03:09:23,731.731 INFO    ] 200
[2026-10-25 03:09:23,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:23,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:09:23,790.790 INFO    ] No update needed
[2026-10-25 03:09:23,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 03:09:23,829.829 INFO    ] 200
[2026-10-25 03:09:23,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:23,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:09:23,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:09:23,933.933 INFO    ] No camera update needed
[2026-10-25 03:09:23,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:09:23,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:09:23,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:09:23,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:09:25,988.988 INFO    ] ================================================
[2026-10-25 03:09:26,003.003 INFO    ] Launching Daemon at Sun Oct 25 03:09:25 IST 2026
[2026-10-25 03:09:26,014.014 INFO    ] ================================================
[2026-10-25 03:09:26,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:09:26
[2026-10-25 03:09:27,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:09:27,458.458 INFO    ] Initializing speech engine...
[2026-10-25 03:09:27,466.466 INFO    ] 2026-10-25 03:09:27
[2026-10-25 03:09:27,734.734 INFO    ] 2026-10-25 03:09:27
[2026-10-25 03:09:27,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:09:29,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:09:29,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:09:29,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:09:29,165.165 INFO    ] time= 25/10/2026 03:09:29
[2026-10-25 03:09:29,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:09:29,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:09:29,230.230 INFO    ] No existing commands found in stream
[2026-10-25 03:09:34,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:09:34,245.245 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 03:09:37,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:09:37,339.339 INFO    ] Checking for system updates...
[2026-10-25 03:09:37,375.375 INFO    ] 200
[2026-10-25 03:09:37,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:37,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:37,433.433 INFO    ] No update needed
[2026-10-25 03:09:37,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 03:09:37,476.476 INFO    ] 200
[2026-10-25 03:09:37,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:37,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:09:37,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:37,644.644 INFO    ] No camera update needed
[2026-10-25 03:09:37,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:09:37,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:09:37,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:09:37,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:09:39,701.701 INFO    ] ================================================
[2026-10-25 03:09:39,737.737 INFO    ] Launching Daemon at Sun Oct 25 03:09:39 IST 2026
[2026-10-25 03:09:39,751.751 INFO    ] ================================================
[2026-10-25 03:09:40,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:09:40
[2026-10-25 03:09:41,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:09:41,338.338 INFO    ] Initializing speech engine...
[2026-10-25 03:09:41,352.352 INFO    ] 2026-10-25 03:09:41
[2026-10-25 03:09:41,634.634 INFO    ] 2026-10-25 03:09:41
[2026-10-25 03:09:41,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:09:41,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:09:41,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:09:42,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:09:42,166.166 INFO    ] time= 25/10/2026 03:09:42
[2026-10-25 03:09:42,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:09:42,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:09:42,319.319 INFO    ] No existing commands found in stream
[2026-10-25 03:09:47,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:09:47,335.335 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 03:09:50,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:09:50,831.831 INFO    ] Checking for system updates...
[2026-10-25 03:09:50,868.868 INFO    ] 200
[2026-10-25 03:09:50,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:50,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:50,935.935 INFO    ] No update needed
[2026-10-25 03:09:50,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 03:09:50,973.973 INFO    ] 200
[2026-10-25 03:09:50,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:09:51,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:09:51,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:09:51,074.074 INFO    ] No camera update needed
[2026-10-25 03:09:51,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:09:51,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:09:51,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:09:51,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:09:53,131.131 INFO    ] ================================================
[2026-10-25 03:09:53,146.146 INFO    ] Launching Daemon at Sun Oct 25 03:09:53 IST 2026
[2026-10-25 03:09:53,157.157 INFO    ] ================================================
[2026-10-25 03:09:53,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:09:53
[2026-10-25 03:09:54,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:09:54,582.582 INFO    ] Initializing speech engine...
[2026-10-25 03:09:54,591.591 INFO    ] 2026-10-25 03:09:54
[2026-10-25 03:09:54,842.842 INFO    ] 2026-10-25 03:09:54
[2026-10-25 03:09:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:09:55,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:09:55,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:09:55,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:09:55,323.323 INFO    ] time= 25/10/2026 03:09:55
[2026-10-25 03:09:55,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:09:55,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:09:55,478.478 INFO    ] No existing commands found in stream
[2026-10-25 03:10:00,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:10:00,495.495 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 03:10:01,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:10:01,572.572 INFO    ] Checking for system updates...
[2026-10-25 03:10:01,659.659 INFO    ] 200
[2026-10-25 03:10:01,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:01,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:01,869.869 INFO    ] No update needed
[2026-10-25 03:10:01,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 03:10:01,973.973 INFO    ] 200
[2026-10-25 03:10:01,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:02,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:10:02,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:02,140.140 INFO    ] No camera update needed
[2026-10-25 03:10:02,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:10:02,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:10:02,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:10:02,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:10:04,208.208 INFO    ] ================================================
[2026-10-25 03:10:04,223.223 INFO    ] Launching Daemon at Sun Oct 25 03:10:04 IST 2026
[2026-10-25 03:10:04,234.234 INFO    ] ================================================
[2026-10-25 03:10:04,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:10:04
[2026-10-25 03:10:05,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:10:05,692.692 INFO    ] Initializing speech engine...
[2026-10-25 03:10:05,700.700 INFO    ] 2026-10-25 03:10:05
[2026-10-25 03:10:05,959.959 INFO    ] 2026-10-25 03:10:05
[2026-10-25 03:10:06,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:10:06,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:10:06,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:10:06,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:10:06,435.435 INFO    ] time= 25/10/2026 03:10:06
[2026-10-25 03:10:06,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:10:06,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:10:06,643.643 INFO    ] No existing commands found in stream
[2026-10-25 03:10:11,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:10:11,666.666 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 03:10:12,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:10:12,292.292 INFO    ] Checking for system updates...
[2026-10-25 03:10:12,327.327 INFO    ] 200
[2026-10-25 03:10:12,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:12,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:12,387.387 INFO    ] No update needed
[2026-10-25 03:10:12,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 03:10:12,425.425 INFO    ] 200
[2026-10-25 03:10:12,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:12,468.468 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:10:12,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:12,505.505 INFO    ] No camera update needed
[2026-10-25 03:10:12,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:10:12,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:10:12,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:10:12,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:10:14,561.561 INFO    ] ================================================
[2026-10-25 03:10:14,576.576 INFO    ] Launching Daemon at Sun Oct 25 03:10:14 IST 2026
[2026-10-25 03:10:14,587.587 INFO    ] ================================================
[2026-10-25 03:10:15,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:10:15
[2026-10-25 03:10:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:10:15,980.980 INFO    ] Initializing speech engine...
[2026-10-25 03:10:16,006.006 INFO    ] 2026-10-25 03:10:15
[2026-10-25 03:10:16,261.261 INFO    ] 2026-10-25 03:10:16
[2026-10-25 03:10:16,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:10:16,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:10:16,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:10:16,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:10:16,744.744 INFO    ] time= 25/10/2026 03:10:16
[2026-10-25 03:10:16,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:10:16,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:10:16,898.898 INFO    ] No existing commands found in stream
[2026-10-25 03:10:21,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:10:21,913.913 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 03:10:26,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:10:26,158.158 INFO    ] Checking for system updates...
[2026-10-25 03:10:26,198.198 INFO    ] 200
[2026-10-25 03:10:26,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:26,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:26,263.263 INFO    ] No update needed
[2026-10-25 03:10:26,265.265 INFO    ] Checking for camera pi updates...
[2026-10-25 03:10:26,299.299 INFO    ] 200
[2026-10-25 03:10:26,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:26,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:10:26,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:26,514.514 INFO    ] No camera update needed
[2026-10-25 03:10:26,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:10:26,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:10:26,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:10:26,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:10:28,572.572 INFO    ] ================================================
[2026-10-25 03:10:28,587.587 INFO    ] Launching Daemon at Sun Oct 25 03:10:28 IST 2026
[2026-10-25 03:10:28,597.597 INFO    ] ================================================
[2026-10-25 03:10:29,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:10:29
[2026-10-25 03:10:29,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:10:30,022.022 INFO    ] Initializing speech engine...
[2026-10-25 03:10:30,029.029 INFO    ] 2026-10-25 03:10:30
[2026-10-25 03:10:30,292.292 INFO    ] 2026-10-25 03:10:30
[2026-10-25 03:10:30,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:10:30,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:10:30,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:10:30,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:10:30,708.708 INFO    ] time= 25/10/2026 03:10:30
[2026-10-25 03:10:30,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:10:30,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:10:30,792.792 INFO    ] No existing commands found in stream
[2026-10-25 03:10:35,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:10:35,807.807 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 03:10:38,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:10:38,457.457 INFO    ] Checking for system updates...
[2026-10-25 03:10:38,493.493 INFO    ] 200
[2026-10-25 03:10:38,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:38,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:38,552.552 INFO    ] No update needed
[2026-10-25 03:10:38,554.554 INFO    ] Checking for camera pi updates...
[2026-10-25 03:10:38,588.588 INFO    ] 200
[2026-10-25 03:10:38,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:38,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:10:38,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:10:38,684.684 INFO    ] No camera update needed
[2026-10-25 03:10:38,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:10:38,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:10:38,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:10:38,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:10:40,740.740 INFO    ] ================================================
[2026-10-25 03:10:40,754.754 INFO    ] Launching Daemon at Sun Oct 25 03:10:40 IST 2026
[2026-10-25 03:10:40,765.765 INFO    ] ================================================
[2026-10-25 03:10:41,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:10:41
[2026-10-25 03:10:41,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:10:42,179.179 INFO    ] Initializing speech engine...
[2026-10-25 03:10:42,188.188 INFO    ] 2026-10-25 03:10:42
[2026-10-25 03:10:42,433.433 INFO    ] 2026-10-25 03:10:42
[2026-10-25 03:10:42,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:10:42,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:10:42,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:10:42,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:10:42,909.909 INFO    ] time= 25/10/2026 03:10:42
[2026-10-25 03:10:42,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:10:42,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:10:43,060.060 INFO    ] No existing commands found in stream
[2026-10-25 03:10:48,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:10:48,095.095 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 03:10:51,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:10:51,359.359 INFO    ] Checking for system updates...
[2026-10-25 03:10:51,396.396 INFO    ] 200
[2026-10-25 03:10:51,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:51,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:10:51,453.453 INFO    ] No update needed
[2026-10-25 03:10:51,455.455 INFO    ] Checking for camera pi updates...
[2026-10-25 03:10:51,491.491 INFO    ] 200
[2026-10-25 03:10:51,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:10:51,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:10:51,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:10:51,586.586 INFO    ] No camera update needed
[2026-10-25 03:10:51,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:10:51,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:10:51,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:10:51,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:10:53,641.641 INFO    ] ================================================
[2026-10-25 03:10:53,656.656 INFO    ] Launching Daemon at Sun Oct 25 03:10:53 IST 2026
[2026-10-25 03:10:53,667.667 INFO    ] ================================================
[2026-10-25 03:10:54,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:10:54
[2026-10-25 03:10:54,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:10:55,094.094 INFO    ] Initializing speech engine...
[2026-10-25 03:10:55,105.105 INFO    ] 2026-10-25 03:10:55
[2026-10-25 03:10:55,350.350 INFO    ] 2026-10-25 03:10:55
[2026-10-25 03:10:55,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:10:55,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:10:55,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:10:55,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:10:55,830.830 INFO    ] time= 25/10/2026 03:10:55
[2026-10-25 03:10:55,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:10:55,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:10:55,983.983 INFO    ] No existing commands found in stream
[2026-10-25 03:11:00,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:11:00,997.997 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 03:11:02,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:11:02,842.842 INFO    ] Checking for system updates...
[2026-10-25 03:11:02,897.897 INFO    ] 200
[2026-10-25 03:11:02,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:02,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:02,975.975 INFO    ] No update needed
[2026-10-25 03:11:02,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 03:11:03,026.026 INFO    ] 200
[2026-10-25 03:11:03,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:03,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:11:03,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:03,121.121 INFO    ] No camera update needed
[2026-10-25 03:11:03,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:11:03,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:11:03,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:11:03,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:11:05,183.183 INFO    ] ================================================
[2026-10-25 03:11:05,198.198 INFO    ] Launching Daemon at Sun Oct 25 03:11:05 IST 2026
[2026-10-25 03:11:05,208.208 INFO    ] ================================================
[2026-10-25 03:11:05,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:11:05
[2026-10-25 03:11:06,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:11:06,626.626 INFO    ] Initializing speech engine...
[2026-10-25 03:11:06,651.651 INFO    ] 2026-10-25 03:11:06
[2026-10-25 03:11:06,920.920 INFO    ] 2026-10-25 03:11:06
[2026-10-25 03:11:06,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:11:07,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:11:07,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:11:07,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:11:07,332.332 INFO    ] time= 25/10/2026 03:11:07
[2026-10-25 03:11:07,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:11:07,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:11:07,415.415 INFO    ] No existing commands found in stream
[2026-10-25 03:11:12,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:11:12,430.430 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 03:11:16,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:11:16,509.509 INFO    ] Checking for system updates...
[2026-10-25 03:11:16,546.546 INFO    ] 200
[2026-10-25 03:11:16,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:16,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:11:16,603.603 INFO    ] No update needed
[2026-10-25 03:11:16,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 03:11:16,643.643 INFO    ] 200
[2026-10-25 03:11:16,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:16,686.686 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:11:16,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:11:16,745.745 INFO    ] No camera update needed
[2026-10-25 03:11:16,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:11:16,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:11:16,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:11:16,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:11:18,802.802 INFO    ] ================================================
[2026-10-25 03:11:18,817.817 INFO    ] Launching Daemon at Sun Oct 25 03:11:18 IST 2026
[2026-10-25 03:11:18,827.827 INFO    ] ================================================
[2026-10-25 03:11:19,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:11:19
[2026-10-25 03:11:19,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:11:20,247.247 INFO    ] Initializing speech engine...
[2026-10-25 03:11:20,270.270 INFO    ] 2026-10-25 03:11:20
[2026-10-25 03:11:20,534.534 INFO    ] 2026-10-25 03:11:20
[2026-10-25 03:11:20,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:11:20,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:11:20,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:11:20,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:11:20,909.909 INFO    ] time= 25/10/2026 03:11:20
[2026-10-25 03:11:20,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:11:20,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:11:21,075.075 INFO    ] No existing commands found in stream
[2026-10-25 03:11:26,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:11:26,108.108 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 03:11:27,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:11:27,605.605 INFO    ] Checking for system updates...
[2026-10-25 03:11:27,645.645 INFO    ] 200
[2026-10-25 03:11:27,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:27,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:27,704.704 INFO    ] No update needed
[2026-10-25 03:11:27,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 03:11:27,741.741 INFO    ] 200
[2026-10-25 03:11:27,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:27,785.785 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:11:27,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:27,840.840 INFO    ] No camera update needed
[2026-10-25 03:11:27,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:11:27,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:11:27,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:11:27,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:11:29,895.895 INFO    ] ================================================
[2026-10-25 03:11:29,910.910 INFO    ] Launching Daemon at Sun Oct 25 03:11:29 IST 2026
[2026-10-25 03:11:29,920.920 INFO    ] ================================================
[2026-10-25 03:11:30,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:11:30
[2026-10-25 03:11:31,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:11:31,372.372 INFO    ] Initializing speech engine...
[2026-10-25 03:11:31,381.381 INFO    ] 2026-10-25 03:11:31
[2026-10-25 03:11:31,654.654 INFO    ] 2026-10-25 03:11:31
[2026-10-25 03:11:31,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:11:31,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:11:31,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:11:32,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:11:32,025.025 INFO    ] time= 25/10/2026 03:11:32
[2026-10-25 03:11:32,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:11:32,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:11:32,155.155 INFO    ] No existing commands found in stream
[2026-10-25 03:11:37,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:11:37,186.186 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 03:11:40,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:11:40,201.201 INFO    ] Checking for system updates...
[2026-10-25 03:11:40,236.236 INFO    ] 200
[2026-10-25 03:11:40,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:40,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:40,300.300 INFO    ] No update needed
[2026-10-25 03:11:40,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 03:11:40,339.339 INFO    ] 200
[2026-10-25 03:11:40,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:40,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:11:40,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:11:40,440.440 INFO    ] No camera update needed
[2026-10-25 03:11:40,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:11:40,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:11:40,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:11:40,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:11:42,497.497 INFO    ] ================================================
[2026-10-25 03:11:42,512.512 INFO    ] Launching Daemon at Sun Oct 25 03:11:42 IST 2026
[2026-10-25 03:11:42,522.522 INFO    ] ================================================
[2026-10-25 03:11:43,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:11:43
[2026-10-25 03:11:43,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:11:44,015.015 INFO    ] Initializing speech engine...
[2026-10-25 03:11:44,024.024 INFO    ] 2026-10-25 03:11:44
[2026-10-25 03:11:44,284.284 INFO    ] 2026-10-25 03:11:44
[2026-10-25 03:11:44,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:11:44,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:11:44,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:11:44,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:11:44,743.743 INFO    ] time= 25/10/2026 03:11:44
[2026-10-25 03:11:44,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:11:44,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:11:44,894.894 INFO    ] No existing commands found in stream
[2026-10-25 03:11:49,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:11:49,908.908 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 03:11:52,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:11:52,299.299 INFO    ] Checking for system updates...
[2026-10-25 03:11:52,335.335 INFO    ] 200
[2026-10-25 03:11:52,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:52,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:11:52,394.394 INFO    ] No update needed
[2026-10-25 03:11:52,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 03:11:52,432.432 INFO    ] 200
[2026-10-25 03:11:52,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:11:52,479.479 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:11:52,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:11:52,550.550 INFO    ] No camera update needed
[2026-10-25 03:11:52,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:11:52,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:11:52,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:11:52,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:11:54,606.606 INFO    ] ================================================
[2026-10-25 03:11:54,622.622 INFO    ] Launching Daemon at Sun Oct 25 03:11:54 IST 2026
[2026-10-25 03:11:54,632.632 INFO    ] ================================================
[2026-10-25 03:11:55,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:11:55
[2026-10-25 03:11:55,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:11:56,114.114 INFO    ] Initializing speech engine...
[2026-10-25 03:11:56,124.124 INFO    ] 2026-10-25 03:11:56
[2026-10-25 03:11:56,372.372 INFO    ] 2026-10-25 03:11:56
[2026-10-25 03:11:56,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:11:56,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:11:56,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:11:56,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:11:56,860.860 INFO    ] time= 25/10/2026 03:11:56
[2026-10-25 03:11:56,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:11:56,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:11:56,993.993 INFO    ] No existing commands found in stream
[2026-10-25 03:12:02,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:12:02,006.006 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 03:12:04,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:12:04,358.358 INFO    ] Checking for system updates...
[2026-10-25 03:12:04,398.398 INFO    ] 200
[2026-10-25 03:12:04,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:04,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:04,464.464 INFO    ] No update needed
[2026-10-25 03:12:04,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 03:12:04,500.500 INFO    ] 200
[2026-10-25 03:12:04,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:04,548.548 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:12:04,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:04,608.608 INFO    ] No camera update needed
[2026-10-25 03:12:04,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:12:04,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:12:04,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:12:04,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:12:06,665.665 INFO    ] ================================================
[2026-10-25 03:12:06,680.680 INFO    ] Launching Daemon at Sun Oct 25 03:12:06 IST 2026
[2026-10-25 03:12:06,691.691 INFO    ] ================================================
[2026-10-25 03:12:07,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:12:07
[2026-10-25 03:12:08,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:12:08,288.288 INFO    ] Initializing speech engine...
[2026-10-25 03:12:08,295.295 INFO    ] 2026-10-25 03:12:08
[2026-10-25 03:12:08,593.593 INFO    ] 2026-10-25 03:12:08
[2026-10-25 03:12:08,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:12:08,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:12:08,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:12:08,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:12:08,974.974 INFO    ] time= 25/10/2026 03:12:08
[2026-10-25 03:12:08,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:12:09,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:12:09,099.099 INFO    ] No existing commands found in stream
[2026-10-25 03:12:14,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:12:14,114.114 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 03:12:18,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:12:18,272.272 INFO    ] Checking for system updates...
[2026-10-25 03:12:18,309.309 INFO    ] 200
[2026-10-25 03:12:18,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:18,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:12:18,384.384 INFO    ] No update needed
[2026-10-25 03:12:18,387.387 INFO    ] Checking for camera pi updates...
[2026-10-25 03:12:18,426.426 INFO    ] 200
[2026-10-25 03:12:18,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:18,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:12:18,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:12:18,526.526 INFO    ] No camera update needed
[2026-10-25 03:12:18,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:12:18,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:12:18,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:12:18,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:12:20,581.581 INFO    ] ================================================
[2026-10-25 03:12:20,596.596 INFO    ] Launching Daemon at Sun Oct 25 03:12:20 IST 2026
[2026-10-25 03:12:20,607.607 INFO    ] ================================================
[2026-10-25 03:12:21,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:12:21
[2026-10-25 03:12:21,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:12:22,062.062 INFO    ] Initializing speech engine...
[2026-10-25 03:12:22,071.071 INFO    ] 2026-10-25 03:12:22
[2026-10-25 03:12:22,334.334 INFO    ] 2026-10-25 03:12:22
[2026-10-25 03:12:22,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:12:22,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:12:22,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:12:22,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:12:22,806.806 INFO    ] time= 25/10/2026 03:12:22
[2026-10-25 03:12:22,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:12:22,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:12:22,938.938 INFO    ] No existing commands found in stream
[2026-10-25 03:12:27,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:12:27,953.953 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 03:12:30,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:12:30,783.783 INFO    ] Checking for system updates...
[2026-10-25 03:12:30,819.819 INFO    ] 200
[2026-10-25 03:12:30,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:30,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:12:30,877.877 INFO    ] No update needed
[2026-10-25 03:12:30,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 03:12:30,925.925 INFO    ] 200
[2026-10-25 03:12:30,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:30,967.967 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:12:31,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:12:31,128.128 INFO    ] No camera update needed
[2026-10-25 03:12:31,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:12:31,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:12:31,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:12:31,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:12:33,183.183 INFO    ] ================================================
[2026-10-25 03:12:33,198.198 INFO    ] Launching Daemon at Sun Oct 25 03:12:33 IST 2026
[2026-10-25 03:12:33,209.209 INFO    ] ================================================
[2026-10-25 03:12:33,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:12:33
[2026-10-25 03:12:34,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:12:34,831.831 INFO    ] Initializing speech engine...
[2026-10-25 03:12:34,845.845 INFO    ] 2026-10-25 03:12:34
[2026-10-25 03:12:35,129.129 INFO    ] 2026-10-25 03:12:35
[2026-10-25 03:12:35,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:12:35,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:12:35,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:12:35,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:12:35,629.629 INFO    ] time= 25/10/2026 03:12:35
[2026-10-25 03:12:35,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:12:35,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:12:35,808.808 INFO    ] No existing commands found in stream
[2026-10-25 03:12:40,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:12:40,837.837 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 03:12:44,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:12:44,735.735 INFO    ] Checking for system updates...
[2026-10-25 03:12:44,773.773 INFO    ] 200
[2026-10-25 03:12:44,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:44,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:44,839.839 INFO    ] No update needed
[2026-10-25 03:12:44,842.842 INFO    ] Checking for camera pi updates...
[2026-10-25 03:12:44,881.881 INFO    ] 200
[2026-10-25 03:12:44,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:44,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:12:44,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:44,981.981 INFO    ] No camera update needed
[2026-10-25 03:12:44,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:12:44,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:12:44,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:12:44,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:12:47,039.039 INFO    ] ================================================
[2026-10-25 03:12:47,053.053 INFO    ] Launching Daemon at Sun Oct 25 03:12:47 IST 2026
[2026-10-25 03:12:47,064.064 INFO    ] ================================================
[2026-10-25 03:12:47,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:12:47
[2026-10-25 03:12:48,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:12:48,664.664 INFO    ] Initializing speech engine...
[2026-10-25 03:12:48,685.685 INFO    ] 2026-10-25 03:12:48
[2026-10-25 03:12:48,951.951 INFO    ] 2026-10-25 03:12:48
[2026-10-25 03:12:48,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:12:49,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:12:49,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:12:49,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:12:49,462.462 INFO    ] time= 25/10/2026 03:12:49
[2026-10-25 03:12:49,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:12:49,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:12:49,588.588 INFO    ] No existing commands found in stream
[2026-10-25 03:12:54,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:12:54,605.605 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 03:12:55,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:12:55,421.421 INFO    ] Checking for system updates...
[2026-10-25 03:12:55,458.458 INFO    ] 200
[2026-10-25 03:12:55,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:55,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:55,525.525 INFO    ] No update needed
[2026-10-25 03:12:55,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 03:12:55,566.566 INFO    ] 200
[2026-10-25 03:12:55,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:12:55,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:12:55,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:12:55,665.665 INFO    ] No camera update needed
[2026-10-25 03:12:55,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:12:55,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:12:55,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:12:55,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:12:57,731.731 INFO    ] ================================================
[2026-10-25 03:12:57,746.746 INFO    ] Launching Daemon at Sun Oct 25 03:12:57 IST 2026
[2026-10-25 03:12:57,763.763 INFO    ] ================================================
[2026-10-25 03:12:58,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:12:58
[2026-10-25 03:12:58,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:12:59,178.178 INFO    ] Initializing speech engine...
[2026-10-25 03:12:59,184.184 INFO    ] 2026-10-25 03:12:59
[2026-10-25 03:12:59,476.476 INFO    ] 2026-10-25 03:12:59
[2026-10-25 03:12:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:12:59,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:12:59,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:12:59,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:12:59,829.829 INFO    ] time= 25/10/2026 03:12:59
[2026-10-25 03:12:59,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:12:59,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:12:59,916.916 INFO    ] No existing commands found in stream
[2026-10-25 03:13:04,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:13:04,964.964 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 03:13:05,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:13:05,979.979 INFO    ] Checking for system updates...
[2026-10-25 03:13:06,015.015 INFO    ] 200
[2026-10-25 03:13:06,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:06,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:06,079.079 INFO    ] No update needed
[2026-10-25 03:13:06,082.082 INFO    ] Checking for camera pi updates...
[2026-10-25 03:13:06,116.116 INFO    ] 200
[2026-10-25 03:13:06,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:06,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:13:06,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:06,225.225 INFO    ] No camera update needed
[2026-10-25 03:13:06,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:13:06,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:13:06,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:13:06,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:13:08,282.282 INFO    ] ================================================
[2026-10-25 03:13:08,297.297 INFO    ] Launching Daemon at Sun Oct 25 03:13:08 IST 2026
[2026-10-25 03:13:08,307.307 INFO    ] ================================================
[2026-10-25 03:13:08,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:13:08
[2026-10-25 03:13:09,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:13:09,722.722 INFO    ] Initializing speech engine...
[2026-10-25 03:13:09,741.741 INFO    ] 2026-10-25 03:13:09
[2026-10-25 03:13:09,992.992 INFO    ] 2026-10-25 03:13:09
[2026-10-25 03:13:10,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:13:10,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:13:10,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:13:10,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:13:10,368.368 INFO    ] time= 25/10/2026 03:13:10
[2026-10-25 03:13:10,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:13:10,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:13:10,533.533 INFO    ] No existing commands found in stream
[2026-10-25 03:13:15,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:13:15,561.561 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 03:13:17,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:13:17,743.743 INFO    ] Checking for system updates...
[2026-10-25 03:13:17,778.778 INFO    ] 200
[2026-10-25 03:13:17,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:17,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:17,844.844 INFO    ] No update needed
[2026-10-25 03:13:17,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 03:13:17,880.880 INFO    ] 200
[2026-10-25 03:13:17,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:17,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:13:17,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:17,984.984 INFO    ] No camera update needed
[2026-10-25 03:13:17,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:13:17,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:13:17,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:13:17,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:13:20,040.040 INFO    ] ================================================
[2026-10-25 03:13:20,055.055 INFO    ] Launching Daemon at Sun Oct 25 03:13:20 IST 2026
[2026-10-25 03:13:20,065.065 INFO    ] ================================================
[2026-10-25 03:13:20,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:13:20
[2026-10-25 03:13:21,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:13:21,473.473 INFO    ] Initializing speech engine...
[2026-10-25 03:13:21,485.485 INFO    ] 2026-10-25 03:13:21
[2026-10-25 03:13:21,751.751 INFO    ] 2026-10-25 03:13:21
[2026-10-25 03:13:21,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:13:22,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:13:22,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:13:22,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:13:22,218.218 INFO    ] time= 25/10/2026 03:13:22
[2026-10-25 03:13:22,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:13:22,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:13:22,376.376 INFO    ] No existing commands found in stream
[2026-10-25 03:13:27,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:13:27,391.391 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 03:13:29,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:13:29,683.683 INFO    ] Checking for system updates...
[2026-10-25 03:13:29,719.719 INFO    ] 200
[2026-10-25 03:13:29,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:29,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:13:29,783.783 INFO    ] No update needed
[2026-10-25 03:13:29,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 03:13:29,822.822 INFO    ] 200
[2026-10-25 03:13:29,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:29,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:13:29,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:13:29,933.933 INFO    ] No camera update needed
[2026-10-25 03:13:29,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:13:29,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:13:29,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:13:29,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:13:31,990.990 INFO    ] ================================================
[2026-10-25 03:13:32,006.006 INFO    ] Launching Daemon at Sun Oct 25 03:13:32 IST 2026
[2026-10-25 03:13:32,018.018 INFO    ] ================================================
[2026-10-25 03:13:32,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:13:32
[2026-10-25 03:13:33,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:13:33,525.525 INFO    ] Initializing speech engine...
[2026-10-25 03:13:33,533.533 INFO    ] 2026-10-25 03:13:33
[2026-10-25 03:13:33,793.793 INFO    ] 2026-10-25 03:13:33
[2026-10-25 03:13:33,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:13:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:13:34,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:13:34,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:13:34,254.254 INFO    ] time= 25/10/2026 03:13:34
[2026-10-25 03:13:34,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:13:34,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:13:34,398.398 INFO    ] No existing commands found in stream
[2026-10-25 03:13:39,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:13:39,413.413 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 03:13:41,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:13:41,454.454 INFO    ] Checking for system updates...
[2026-10-25 03:13:41,491.491 INFO    ] 200
[2026-10-25 03:13:41,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:41,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:13:41,549.549 INFO    ] No update needed
[2026-10-25 03:13:41,551.551 INFO    ] Checking for camera pi updates...
[2026-10-25 03:13:41,588.588 INFO    ] 200
[2026-10-25 03:13:41,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:41,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:13:41,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:13:41,684.684 INFO    ] No camera update needed
[2026-10-25 03:13:41,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:13:41,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:13:41,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:13:41,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:13:43,742.742 INFO    ] ================================================
[2026-10-25 03:13:43,757.757 INFO    ] Launching Daemon at Sun Oct 25 03:13:43 IST 2026
[2026-10-25 03:13:43,767.767 INFO    ] ================================================
[2026-10-25 03:13:44,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:13:44
[2026-10-25 03:13:44,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:13:45,220.220 INFO    ] Initializing speech engine...
[2026-10-25 03:13:45,226.226 INFO    ] 2026-10-25 03:13:45
[2026-10-25 03:13:45,486.486 INFO    ] 2026-10-25 03:13:45
[2026-10-25 03:13:45,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:13:45,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:13:45,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:13:45,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:13:45,934.934 INFO    ] time= 25/10/2026 03:13:45
[2026-10-25 03:13:45,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:13:46,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:13:46,098.098 INFO    ] No existing commands found in stream
[2026-10-25 03:13:51,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:13:51,132.132 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 03:13:54,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:13:54,754.754 INFO    ] Checking for system updates...
[2026-10-25 03:13:54,793.793 INFO    ] 200
[2026-10-25 03:13:54,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:54,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:54,852.852 INFO    ] No update needed
[2026-10-25 03:13:54,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 03:13:54,892.892 INFO    ] 200
[2026-10-25 03:13:54,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:13:54,941.941 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:13:54,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:13:54,991.991 INFO    ] No camera update needed
[2026-10-25 03:13:54,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:13:54,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:13:55,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:13:55,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:13:57,046.046 INFO    ] ================================================
[2026-10-25 03:13:57,061.061 INFO    ] Launching Daemon at Sun Oct 25 03:13:57 IST 2026
[2026-10-25 03:13:57,072.072 INFO    ] ================================================
[2026-10-25 03:13:57,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:13:57
[2026-10-25 03:13:58,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:13:58,481.481 INFO    ] Initializing speech engine...
[2026-10-25 03:13:58,494.494 INFO    ] 2026-10-25 03:13:58
[2026-10-25 03:13:58,756.756 INFO    ] 2026-10-25 03:13:58
[2026-10-25 03:13:58,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:13:59,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:13:59,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:13:59,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:13:59,255.255 INFO    ] time= 25/10/2026 03:13:59
[2026-10-25 03:13:59,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:13:59,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:13:59,438.438 INFO    ] No existing commands found in stream
[2026-10-25 03:14:04,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:14:04,465.465 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 03:14:06,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:14:06,493.493 INFO    ] Checking for system updates...
[2026-10-25 03:14:06,535.535 INFO    ] 200
[2026-10-25 03:14:06,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:06,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:06,599.599 INFO    ] No update needed
[2026-10-25 03:14:06,601.601 INFO    ] Checking for camera pi updates...
[2026-10-25 03:14:06,636.636 INFO    ] 200
[2026-10-25 03:14:06,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:06,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:14:06,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:06,731.731 INFO    ] No camera update needed
[2026-10-25 03:14:06,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:14:06,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:14:06,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:14:06,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:14:08,788.788 INFO    ] ================================================
[2026-10-25 03:14:08,803.803 INFO    ] Launching Daemon at Sun Oct 25 03:14:08 IST 2026
[2026-10-25 03:14:08,814.814 INFO    ] ================================================
[2026-10-25 03:14:09,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:14:09
[2026-10-25 03:14:09,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:14:10,212.212 INFO    ] Initializing speech engine...
[2026-10-25 03:14:10,218.218 INFO    ] 2026-10-25 03:14:10
[2026-10-25 03:14:10,516.516 INFO    ] 2026-10-25 03:14:10
[2026-10-25 03:14:10,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:14:10,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:14:10,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:14:10,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:14:10,869.869 INFO    ] time= 25/10/2026 03:14:10
[2026-10-25 03:14:10,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:14:10,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:14:10,950.950 INFO    ] No existing commands found in stream
[2026-10-25 03:14:15,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:14:15,964.964 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 03:14:18,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:14:18,814.814 INFO    ] Checking for system updates...
[2026-10-25 03:14:18,850.850 INFO    ] 200
[2026-10-25 03:14:18,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:18,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:18,918.918 INFO    ] No update needed
[2026-10-25 03:14:18,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 03:14:18,954.954 INFO    ] 200
[2026-10-25 03:14:18,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:19,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:14:19,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:19,051.051 INFO    ] No camera update needed
[2026-10-25 03:14:19,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:14:19,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:14:19,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:14:19,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:14:21,105.105 INFO    ] ================================================
[2026-10-25 03:14:21,121.121 INFO    ] Launching Daemon at Sun Oct 25 03:14:21 IST 2026
[2026-10-25 03:14:21,131.131 INFO    ] ================================================
[2026-10-25 03:14:21,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:14:21
[2026-10-25 03:14:22,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:14:22,593.593 INFO    ] Initializing speech engine...
[2026-10-25 03:14:22,602.602 INFO    ] 2026-10-25 03:14:22
[2026-10-25 03:14:22,862.862 INFO    ] 2026-10-25 03:14:22
[2026-10-25 03:14:22,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:14:23,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:14:23,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:14:23,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:14:23,332.332 INFO    ] time= 25/10/2026 03:14:23
[2026-10-25 03:14:23,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:14:23,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:14:23,525.525 INFO    ] No existing commands found in stream
[2026-10-25 03:14:28,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:14:28,539.539 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 03:14:32,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:14:32,603.603 INFO    ] Checking for system updates...
[2026-10-25 03:14:32,641.641 INFO    ] 200
[2026-10-25 03:14:32,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:32,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:32,705.705 INFO    ] No update needed
[2026-10-25 03:14:32,708.708 INFO    ] Checking for camera pi updates...
[2026-10-25 03:14:32,753.753 INFO    ] 200
[2026-10-25 03:14:32,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:32,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:14:32,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:14:32,835.835 INFO    ] No camera update needed
[2026-10-25 03:14:32,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:14:32,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:14:32,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:14:32,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:14:34,894.894 INFO    ] ================================================
[2026-10-25 03:14:34,909.909 INFO    ] Launching Daemon at Sun Oct 25 03:14:34 IST 2026
[2026-10-25 03:14:34,920.920 INFO    ] ================================================
[2026-10-25 03:14:35,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:14:35
[2026-10-25 03:14:36,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:14:36,398.398 INFO    ] Initializing speech engine...
[2026-10-25 03:14:36,411.411 INFO    ] 2026-10-25 03:14:36
[2026-10-25 03:14:36,672.672 INFO    ] 2026-10-25 03:14:36
[2026-10-25 03:14:36,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:14:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:14:36,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:14:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:14:37,048.048 INFO    ] time= 25/10/2026 03:14:37
[2026-10-25 03:14:37,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:14:37,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:14:37,185.185 INFO    ] No existing commands found in stream
[2026-10-25 03:14:42,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:14:42,205.205 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 03:14:45,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:14:45,849.849 INFO    ] Checking for system updates...
[2026-10-25 03:14:45,885.885 INFO    ] 200
[2026-10-25 03:14:45,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:45,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:14:45,950.950 INFO    ] No update needed
[2026-10-25 03:14:45,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 03:14:45,990.990 INFO    ] 200
[2026-10-25 03:14:45,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:46,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:14:46,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:14:46,092.092 INFO    ] No camera update needed
[2026-10-25 03:14:46,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:14:46,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:14:46,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:14:46,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:14:48,150.150 INFO    ] ================================================
[2026-10-25 03:14:48,165.165 INFO    ] Launching Daemon at Sun Oct 25 03:14:48 IST 2026
[2026-10-25 03:14:48,176.176 INFO    ] ================================================
[2026-10-25 03:14:48,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:14:48
[2026-10-25 03:14:49,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:14:49,597.597 INFO    ] Initializing speech engine...
[2026-10-25 03:14:49,612.612 INFO    ] 2026-10-25 03:14:49
[2026-10-25 03:14:49,915.915 INFO    ] 2026-10-25 03:14:49
[2026-10-25 03:14:50,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:14:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:14:50,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:14:50,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:14:50,349.349 INFO    ] time= 25/10/2026 03:14:50
[2026-10-25 03:14:50,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:14:50,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:14:50,434.434 INFO    ] No existing commands found in stream
[2026-10-25 03:14:55,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:14:55,450.450 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 03:14:59,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:14:59,323.323 INFO    ] Checking for system updates...
[2026-10-25 03:14:59,359.359 INFO    ] 200
[2026-10-25 03:14:59,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:59,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:14:59,417.417 INFO    ] No update needed
[2026-10-25 03:14:59,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 03:14:59,457.457 INFO    ] 200
[2026-10-25 03:14:59,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:14:59,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:14:59,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:14:59,554.554 INFO    ] No camera update needed
[2026-10-25 03:14:59,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:14:59,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:14:59,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:14:59,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:15:01,610.610 INFO    ] ================================================
[2026-10-25 03:15:01,625.625 INFO    ] Launching Daemon at Sun Oct 25 03:15:01 IST 2026
[2026-10-25 03:15:01,636.636 INFO    ] ================================================
[2026-10-25 03:15:02,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:15:02
[2026-10-25 03:15:03,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:15:03,746.746 INFO    ] Initializing speech engine...
[2026-10-25 03:15:03,755.755 INFO    ] 2026-10-25 03:15:03
[2026-10-25 03:15:04,072.072 INFO    ] 2026-10-25 03:15:04
[2026-10-25 03:15:04,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:15:04,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:15:04,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:15:04,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:15:04,462.462 INFO    ] time= 25/10/2026 03:15:04
[2026-10-25 03:15:04,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:15:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:15:04,557.557 INFO    ] No existing commands found in stream
[2026-10-25 03:15:09,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:15:09,596.596 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 03:15:10,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:15:10,697.697 INFO    ] Checking for system updates...
[2026-10-25 03:15:10,734.734 INFO    ] 200
[2026-10-25 03:15:10,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:10,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:15:10,793.793 INFO    ] No update needed
[2026-10-25 03:15:10,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 03:15:10,829.829 INFO    ] 200
[2026-10-25 03:15:10,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:10,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:15:10,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:15:10,936.936 INFO    ] No camera update needed
[2026-10-25 03:15:10,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:15:10,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:15:10,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:15:10,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:15:12,991.991 INFO    ] ================================================
[2026-10-25 03:15:13,006.006 INFO    ] Launching Daemon at Sun Oct 25 03:15:13 IST 2026
[2026-10-25 03:15:13,017.017 INFO    ] ================================================
[2026-10-25 03:15:13,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:15:13
[2026-10-25 03:15:14,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:15:14,453.453 INFO    ] Initializing speech engine...
[2026-10-25 03:15:14,468.468 INFO    ] 2026-10-25 03:15:14
[2026-10-25 03:15:14,752.752 INFO    ] 2026-10-25 03:15:14
[2026-10-25 03:15:14,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:15:14,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:15:15,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:15:15,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:15:15,170.170 INFO    ] time= 25/10/2026 03:15:15
[2026-10-25 03:15:15,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:15:15,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:15:15,253.253 INFO    ] No existing commands found in stream
[2026-10-25 03:15:20,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:15:20,269.269 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 03:15:22,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:15:22,056.056 INFO    ] Checking for system updates...
[2026-10-25 03:15:22,092.092 INFO    ] 200
[2026-10-25 03:15:22,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:22,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:15:22,150.150 INFO    ] No update needed
[2026-10-25 03:15:22,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 03:15:22,187.187 INFO    ] 200
[2026-10-25 03:15:22,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:22,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:15:22,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:15:22,283.283 INFO    ] No camera update needed
[2026-10-25 03:15:22,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:15:22,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:15:22,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:15:22,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:15:24,337.337 INFO    ] ================================================
[2026-10-25 03:15:24,353.353 INFO    ] Launching Daemon at Sun Oct 25 03:15:24 IST 2026
[2026-10-25 03:15:24,363.363 INFO    ] ================================================
[2026-10-25 03:15:24,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:15:24
[2026-10-25 03:15:25,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:15:25,801.801 INFO    ] Initializing speech engine...
[2026-10-25 03:15:25,808.808 INFO    ] 2026-10-25 03:15:25
[2026-10-25 03:15:26,104.104 INFO    ] 2026-10-25 03:15:26
[2026-10-25 03:15:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:15:26,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:15:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:15:26,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:15:26,485.485 INFO    ] time= 25/10/2026 03:15:26
[2026-10-25 03:15:26,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:15:26,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:15:26,658.658 INFO    ] No existing commands found in stream
[2026-10-25 03:15:31,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:15:31,681.681 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 03:15:34,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:15:34,720.720 INFO    ] Checking for system updates...
[2026-10-25 03:15:34,766.766 INFO    ] 200
[2026-10-25 03:15:34,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:34,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:15:34,843.843 INFO    ] No update needed
[2026-10-25 03:15:34,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 03:15:34,891.891 INFO    ] 200
[2026-10-25 03:15:34,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:34,955.955 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:15:35,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:15:35,006.006 INFO    ] No camera update needed
[2026-10-25 03:15:35,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:15:35,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:15:35,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:15:35,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:15:37,064.064 INFO    ] ================================================
[2026-10-25 03:15:37,079.079 INFO    ] Launching Daemon at Sun Oct 25 03:15:37 IST 2026
[2026-10-25 03:15:37,090.090 INFO    ] ================================================
[2026-10-25 03:15:37,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:15:37
[2026-10-25 03:15:38,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:15:38,550.550 INFO    ] Initializing speech engine...
[2026-10-25 03:15:38,558.558 INFO    ] 2026-10-25 03:15:38
[2026-10-25 03:15:38,833.833 INFO    ] 2026-10-25 03:15:38
[2026-10-25 03:15:38,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:15:39,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:15:39,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:15:39,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:15:39,216.216 INFO    ] time= 25/10/2026 03:15:39
[2026-10-25 03:15:39,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:15:39,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:15:39,368.368 INFO    ] No existing commands found in stream
[2026-10-25 03:15:44,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:15:44,395.395 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 03:15:49,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:15:49,116.116 INFO    ] Checking for system updates...
[2026-10-25 03:15:49,154.154 INFO    ] 200
[2026-10-25 03:15:49,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:49,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:15:49,215.215 INFO    ] No update needed
[2026-10-25 03:15:49,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 03:15:49,257.257 INFO    ] 200
[2026-10-25 03:15:49,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:15:49,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:15:49,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:15:49,352.352 INFO    ] No camera update needed
[2026-10-25 03:15:49,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:15:49,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:15:49,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:15:49,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:15:51,410.410 INFO    ] ================================================
[2026-10-25 03:15:51,426.426 INFO    ] Launching Daemon at Sun Oct 25 03:15:51 IST 2026
[2026-10-25 03:15:51,438.438 INFO    ] ================================================
[2026-10-25 03:15:52,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:15:52
[2026-10-25 03:15:52,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:15:52,875.875 INFO    ] Initializing speech engine...
[2026-10-25 03:15:52,884.884 INFO    ] 2026-10-25 03:15:52
[2026-10-25 03:15:53,135.135 INFO    ] 2026-10-25 03:15:53
[2026-10-25 03:15:53,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:15:53,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:15:53,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:15:53,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:15:53,514.514 INFO    ] time= 25/10/2026 03:15:53
[2026-10-25 03:15:53,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:15:53,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:15:53,684.684 INFO    ] No existing commands found in stream
[2026-10-25 03:15:58,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:15:58,712.712 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 03:16:00,308.308 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:16:00,310.310 INFO    ] Checking for system updates...
[2026-10-25 03:16:00,351.351 INFO    ] 200
[2026-10-25 03:16:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:00,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:00,416.416 INFO    ] No update needed
[2026-10-25 03:16:00,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 03:16:00,456.456 INFO    ] 200
[2026-10-25 03:16:00,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:00,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:16:00,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:00,565.565 INFO    ] No camera update needed
[2026-10-25 03:16:00,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:16:00,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:16:00,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:16:00,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:16:02,651.651 INFO    ] ================================================
[2026-10-25 03:16:02,672.672 INFO    ] Launching Daemon at Sun Oct 25 03:16:02 IST 2026
[2026-10-25 03:16:02,690.690 INFO    ] ================================================
[2026-10-25 03:16:03,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:16:03
[2026-10-25 03:16:04,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:16:04,483.483 INFO    ] Initializing speech engine...
[2026-10-25 03:16:04,494.494 INFO    ] 2026-10-25 03:16:04
[2026-10-25 03:16:04,770.770 INFO    ] 2026-10-25 03:16:04
[2026-10-25 03:16:04,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:16:05,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:16:05,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:16:05,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:16:05,254.254 INFO    ] time= 25/10/2026 03:16:05
[2026-10-25 03:16:05,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:16:05,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:16:05,390.390 INFO    ] No existing commands found in stream
[2026-10-25 03:16:10,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:16:10,406.406 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 03:16:13,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:16:13,566.566 INFO    ] Checking for system updates...
[2026-10-25 03:16:13,604.604 INFO    ] 200
[2026-10-25 03:16:13,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:13,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:16:13,662.662 INFO    ] No update needed
[2026-10-25 03:16:13,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 03:16:13,703.703 INFO    ] 200
[2026-10-25 03:16:13,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:13,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:16:13,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:16:13,829.829 INFO    ] No camera update needed
[2026-10-25 03:16:13,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:16:13,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:16:13,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:16:13,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:16:15,887.887 INFO    ] ================================================
[2026-10-25 03:16:15,903.903 INFO    ] Launching Daemon at Sun Oct 25 03:16:15 IST 2026
[2026-10-25 03:16:15,915.915 INFO    ] ================================================
[2026-10-25 03:16:16,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:16:16
[2026-10-25 03:16:17,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:16:17,361.361 INFO    ] Initializing speech engine...
[2026-10-25 03:16:17,370.370 INFO    ] 2026-10-25 03:16:17
[2026-10-25 03:16:17,672.672 INFO    ] 2026-10-25 03:16:17
[2026-10-25 03:16:17,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:16:17,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:16:17,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:16:18,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:16:18,176.176 INFO    ] time= 25/10/2026 03:16:18
[2026-10-25 03:16:18,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:16:18,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:16:18,379.379 INFO    ] No existing commands found in stream
[2026-10-25 03:16:23,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:16:23,404.404 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 03:16:24,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:16:24,630.630 INFO    ] Checking for system updates...
[2026-10-25 03:16:24,673.673 INFO    ] 200
[2026-10-25 03:16:24,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:24,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:16:24,741.741 INFO    ] No update needed
[2026-10-25 03:16:24,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 03:16:24,780.780 INFO    ] 200
[2026-10-25 03:16:24,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:24,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:16:24,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:16:24,880.880 INFO    ] No camera update needed
[2026-10-25 03:16:24,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:16:24,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:16:24,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:16:24,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:16:26,939.939 INFO    ] ================================================
[2026-10-25 03:16:26,954.954 INFO    ] Launching Daemon at Sun Oct 25 03:16:26 IST 2026
[2026-10-25 03:16:26,965.965 INFO    ] ================================================
[2026-10-25 03:16:27,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:16:27
[2026-10-25 03:16:28,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:16:28,617.617 INFO    ] Initializing speech engine...
[2026-10-25 03:16:28,627.627 INFO    ] 2026-10-25 03:16:28
[2026-10-25 03:16:28,930.930 INFO    ] 2026-10-25 03:16:28
[2026-10-25 03:16:29,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:16:29,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:16:29,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:16:29,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:16:29,437.437 INFO    ] time= 25/10/2026 03:16:29
[2026-10-25 03:16:29,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:16:29,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:16:29,594.594 INFO    ] No existing commands found in stream
[2026-10-25 03:16:34,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:16:34,620.620 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 03:16:37,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:16:37,394.394 INFO    ] Checking for system updates...
[2026-10-25 03:16:37,429.429 INFO    ] 200
[2026-10-25 03:16:37,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:37,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:37,497.497 INFO    ] No update needed
[2026-10-25 03:16:37,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 03:16:37,533.533 INFO    ] 200
[2026-10-25 03:16:37,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:37,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:16:37,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:37,780.780 INFO    ] No camera update needed
[2026-10-25 03:16:37,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:16:37,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:16:37,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:16:37,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:16:39,835.835 INFO    ] ================================================
[2026-10-25 03:16:39,850.850 INFO    ] Launching Daemon at Sun Oct 25 03:16:39 IST 2026
[2026-10-25 03:16:39,861.861 INFO    ] ================================================
[2026-10-25 03:16:40,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:16:40
[2026-10-25 03:16:41,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:16:41,512.512 INFO    ] Initializing speech engine...
[2026-10-25 03:16:41,527.527 INFO    ] 2026-10-25 03:16:41
[2026-10-25 03:16:41,805.805 INFO    ] 2026-10-25 03:16:41
[2026-10-25 03:16:41,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:16:42,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:16:42,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:16:42,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:16:42,282.282 INFO    ] time= 25/10/2026 03:16:42
[2026-10-25 03:16:42,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:16:42,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:16:42,435.435 INFO    ] No existing commands found in stream
[2026-10-25 03:16:47,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:16:47,451.451 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 03:16:50,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:16:50,975.975 INFO    ] Checking for system updates...
[2026-10-25 03:16:51,017.017 INFO    ] 200
[2026-10-25 03:16:51,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:51,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:51,086.086 INFO    ] No update needed
[2026-10-25 03:16:51,089.089 INFO    ] Checking for camera pi updates...
[2026-10-25 03:16:51,132.132 INFO    ] 200
[2026-10-25 03:16:51,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:16:51,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:16:51,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:16:51,237.237 INFO    ] No camera update needed
[2026-10-25 03:16:51,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:16:51,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:16:51,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:16:51,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:16:53,297.297 INFO    ] ================================================
[2026-10-25 03:16:53,312.312 INFO    ] Launching Daemon at Sun Oct 25 03:16:53 IST 2026
[2026-10-25 03:16:53,323.323 INFO    ] ================================================
[2026-10-25 03:16:53,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:16:53
[2026-10-25 03:16:54,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:16:54,937.937 INFO    ] Initializing speech engine...
[2026-10-25 03:16:54,944.944 INFO    ] 2026-10-25 03:16:54
[2026-10-25 03:16:55,220.220 INFO    ] 2026-10-25 03:16:55
[2026-10-25 03:16:55,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:16:55,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:16:55,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:16:55,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:16:55,702.702 INFO    ] time= 25/10/2026 03:16:55
[2026-10-25 03:16:55,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:16:55,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:16:55,860.860 INFO    ] No existing commands found in stream
[2026-10-25 03:17:00,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:17:00,884.884 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 03:17:04,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:17:04,667.667 INFO    ] Checking for system updates...
[2026-10-25 03:17:04,704.704 INFO    ] 200
[2026-10-25 03:17:04,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:04,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:17:04,765.765 INFO    ] No update needed
[2026-10-25 03:17:04,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 03:17:04,806.806 INFO    ] 200
[2026-10-25 03:17:04,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:04,850.850 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:17:04,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:17:04,914.914 INFO    ] No camera update needed
[2026-10-25 03:17:04,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:17:04,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:17:04,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:17:04,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:17:06,973.973 INFO    ] ================================================
[2026-10-25 03:17:06,988.988 INFO    ] Launching Daemon at Sun Oct 25 03:17:06 IST 2026
[2026-10-25 03:17:07,999.999 INFO    ] ================================================
[2026-10-25 03:17:07,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:17:07
[2026-10-25 03:17:08,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:17:08,652.652 INFO    ] Initializing speech engine...
[2026-10-25 03:17:08,661.661 INFO    ] 2026-10-25 03:17:08
[2026-10-25 03:17:08,949.949 INFO    ] 2026-10-25 03:17:08
[2026-10-25 03:17:08,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:17:09,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:17:09,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:17:09,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:17:09,406.406 INFO    ] time= 25/10/2026 03:17:09
[2026-10-25 03:17:09,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:17:09,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:17:09,576.576 INFO    ] No existing commands found in stream
[2026-10-25 03:17:14,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:17:14,591.591 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 03:17:16,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:17:16,872.872 INFO    ] Checking for system updates...
[2026-10-25 03:17:16,912.912 INFO    ] 200
[2026-10-25 03:17:16,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:16,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:16,983.983 INFO    ] No update needed
[2026-10-25 03:17:16,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 03:17:17,023.023 INFO    ] 200
[2026-10-25 03:17:17,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:17,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:17:17,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:17,120.120 INFO    ] No camera update needed
[2026-10-25 03:17:17,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:17:17,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:17:17,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:17:17,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:17:19,175.175 INFO    ] ================================================
[2026-10-25 03:17:19,191.191 INFO    ] Launching Daemon at Sun Oct 25 03:17:19 IST 2026
[2026-10-25 03:17:19,201.201 INFO    ] ================================================
[2026-10-25 03:17:19,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:17:19
[2026-10-25 03:17:20,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:17:20,785.785 INFO    ] Initializing speech engine...
[2026-10-25 03:17:20,796.796 INFO    ] 2026-10-25 03:17:20
[2026-10-25 03:17:21,077.077 INFO    ] 2026-10-25 03:17:21
[2026-10-25 03:17:21,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:17:21,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:17:21,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:17:21,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:17:21,522.522 INFO    ] time= 25/10/2026 03:17:21
[2026-10-25 03:17:21,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:17:21,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:17:21,675.675 INFO    ] No existing commands found in stream
[2026-10-25 03:17:26,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:17:26,690.690 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 03:17:27,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:17:27,688.688 INFO    ] Checking for system updates...
[2026-10-25 03:17:27,725.725 INFO    ] 200
[2026-10-25 03:17:27,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:27,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:27,792.792 INFO    ] No update needed
[2026-10-25 03:17:27,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 03:17:27,834.834 INFO    ] 200
[2026-10-25 03:17:27,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:27,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:17:27,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:27,944.944 INFO    ] No camera update needed
[2026-10-25 03:17:27,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:17:27,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:17:27,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:17:27,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:17:30,003.003 INFO    ] ================================================
[2026-10-25 03:17:30,019.019 INFO    ] Launching Daemon at Sun Oct 25 03:17:30 IST 2026
[2026-10-25 03:17:30,029.029 INFO    ] ================================================
[2026-10-25 03:17:30,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:17:30
[2026-10-25 03:17:31,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:17:31,416.416 INFO    ] Initializing speech engine...
[2026-10-25 03:17:31,424.424 INFO    ] 2026-10-25 03:17:31
[2026-10-25 03:17:31,696.696 INFO    ] 2026-10-25 03:17:31
[2026-10-25 03:17:31,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:17:31,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:17:31,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:17:32,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:17:32,071.071 INFO    ] time= 25/10/2026 03:17:32
[2026-10-25 03:17:32,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:17:32,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:17:32,179.179 INFO    ] No existing commands found in stream
[2026-10-25 03:17:37,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:17:37,195.195 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 03:17:38,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:17:38,694.694 INFO    ] Checking for system updates...
[2026-10-25 03:17:38,729.729 INFO    ] 200
[2026-10-25 03:17:38,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:38,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:38,787.787 INFO    ] No update needed
[2026-10-25 03:17:38,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 03:17:38,823.823 INFO    ] 200
[2026-10-25 03:17:38,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:38,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:17:38,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:17:38,925.925 INFO    ] No camera update needed
[2026-10-25 03:17:38,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:17:38,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:17:38,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:17:38,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:17:40,980.980 INFO    ] ================================================
[2026-10-25 03:17:41,995.995 INFO    ] Launching Daemon at Sun Oct 25 03:17:40 IST 2026
[2026-10-25 03:17:41,005.005 INFO    ] ================================================
[2026-10-25 03:17:41,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:17:41
[2026-10-25 03:17:42,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:17:42,468.468 INFO    ] Initializing speech engine...
[2026-10-25 03:17:42,477.477 INFO    ] 2026-10-25 03:17:42
[2026-10-25 03:17:42,735.735 INFO    ] 2026-10-25 03:17:42
[2026-10-25 03:17:42,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:17:43,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:17:43,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:17:43,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:17:43,190.190 INFO    ] time= 25/10/2026 03:17:43
[2026-10-25 03:17:43,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:17:43,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:17:43,342.342 INFO    ] No existing commands found in stream
[2026-10-25 03:17:48,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:17:48,357.357 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 03:17:51,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:17:51,953.953 INFO    ] Checking for system updates...
[2026-10-25 03:17:51,989.989 INFO    ] 200
[2026-10-25 03:17:51,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:52,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:17:52,056.056 INFO    ] No update needed
[2026-10-25 03:17:52,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 03:17:52,098.098 INFO    ] 200
[2026-10-25 03:17:52,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:17:52,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:17:52,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:17:52,210.210 INFO    ] No camera update needed
[2026-10-25 03:17:52,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:17:52,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:17:52,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:17:52,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:17:54,265.265 INFO    ] ================================================
[2026-10-25 03:17:54,280.280 INFO    ] Launching Daemon at Sun Oct 25 03:17:54 IST 2026
[2026-10-25 03:17:54,291.291 INFO    ] ================================================
[2026-10-25 03:17:54,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:17:54
[2026-10-25 03:17:55,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:17:55,706.706 INFO    ] Initializing speech engine...
[2026-10-25 03:17:55,716.716 INFO    ] 2026-10-25 03:17:55
[2026-10-25 03:17:55,960.960 INFO    ] 2026-10-25 03:17:55
[2026-10-25 03:17:55,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:17:56,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:17:56,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:17:56,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:17:56,339.339 INFO    ] time= 25/10/2026 03:17:56
[2026-10-25 03:17:56,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:17:56,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:17:56,453.453 INFO    ] No existing commands found in stream
[2026-10-25 03:18:01,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:18:01,468.468 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 03:18:03,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:18:03,683.683 INFO    ] Checking for system updates...
[2026-10-25 03:18:03,718.718 INFO    ] 200
[2026-10-25 03:18:03,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:03,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:03,776.776 INFO    ] No update needed
[2026-10-25 03:18:03,778.778 INFO    ] Checking for camera pi updates...
[2026-10-25 03:18:03,812.812 INFO    ] 200
[2026-10-25 03:18:03,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:03,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:18:03,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:03,910.910 INFO    ] No camera update needed
[2026-10-25 03:18:03,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:18:03,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:18:03,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:18:03,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:18:05,965.965 INFO    ] ================================================
[2026-10-25 03:18:05,981.981 INFO    ] Launching Daemon at Sun Oct 25 03:18:05 IST 2026
[2026-10-25 03:18:05,992.992 INFO    ] ================================================
[2026-10-25 03:18:06,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:18:06
[2026-10-25 03:18:07,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:18:07,430.430 INFO    ] Initializing speech engine...
[2026-10-25 03:18:07,439.439 INFO    ] 2026-10-25 03:18:07
[2026-10-25 03:18:07,688.688 INFO    ] 2026-10-25 03:18:07
[2026-10-25 03:18:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:18:07,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:18:07,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:18:08,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:18:08,076.076 INFO    ] time= 25/10/2026 03:18:08
[2026-10-25 03:18:08,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:18:08,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:18:08,166.166 INFO    ] No existing commands found in stream
[2026-10-25 03:18:13,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:18:13,181.181 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 03:18:14,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:18:14,293.293 INFO    ] Checking for system updates...
[2026-10-25 03:18:14,328.328 INFO    ] 200
[2026-10-25 03:18:14,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:14,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:14,396.396 INFO    ] No update needed
[2026-10-25 03:18:14,398.398 INFO    ] Checking for camera pi updates...
[2026-10-25 03:18:14,431.431 INFO    ] 200
[2026-10-25 03:18:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:14,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:18:14,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:14,544.544 INFO    ] No camera update needed
[2026-10-25 03:18:14,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:18:14,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:18:14,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:18:14,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:18:16,602.602 INFO    ] ================================================
[2026-10-25 03:18:16,617.617 INFO    ] Launching Daemon at Sun Oct 25 03:18:16 IST 2026
[2026-10-25 03:18:16,628.628 INFO    ] ================================================
[2026-10-25 03:18:17,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:18:17
[2026-10-25 03:18:17,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:18:18,207.207 INFO    ] Initializing speech engine...
[2026-10-25 03:18:18,214.214 INFO    ] 2026-10-25 03:18:18
[2026-10-25 03:18:18,504.504 INFO    ] 2026-10-25 03:18:18
[2026-10-25 03:18:18,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:18:18,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:18:18,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:18:18,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:18:18,979.979 INFO    ] time= 25/10/2026 03:18:18
[2026-10-25 03:18:19,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:18:19,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:18:19,196.196 INFO    ] No existing commands found in stream
[2026-10-25 03:18:24,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:18:24,217.217 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 03:18:27,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:18:27,216.216 INFO    ] Checking for system updates...
[2026-10-25 03:18:27,259.259 INFO    ] 200
[2026-10-25 03:18:27,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:27,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:18:27,336.336 INFO    ] No update needed
[2026-10-25 03:18:27,339.339 INFO    ] Checking for camera pi updates...
[2026-10-25 03:18:27,379.379 INFO    ] 200
[2026-10-25 03:18:27,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:27,429.429 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:18:27,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:18:27,493.493 INFO    ] No camera update needed
[2026-10-25 03:18:27,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:18:27,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:18:27,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:18:27,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:18:29,553.553 INFO    ] ================================================
[2026-10-25 03:18:29,568.568 INFO    ] Launching Daemon at Sun Oct 25 03:18:29 IST 2026
[2026-10-25 03:18:29,579.579 INFO    ] ================================================
[2026-10-25 03:18:30,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:18:30
[2026-10-25 03:18:30,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:18:30,999.999 INFO    ] Initializing speech engine...
[2026-10-25 03:18:31,008.008 INFO    ] 2026-10-25 03:18:31
[2026-10-25 03:18:31,253.253 INFO    ] 2026-10-25 03:18:31
[2026-10-25 03:18:31,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:18:31,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:18:31,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:18:31,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:18:31,622.622 INFO    ] time= 25/10/2026 03:18:31
[2026-10-25 03:18:31,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:18:31,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:18:31,795.795 INFO    ] No existing commands found in stream
[2026-10-25 03:18:36,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:18:36,828.828 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 03:18:40,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:18:40,318.318 INFO    ] Checking for system updates...
[2026-10-25 03:18:40,355.355 INFO    ] 200
[2026-10-25 03:18:40,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:40,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:40,423.423 INFO    ] No update needed
[2026-10-25 03:18:40,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 03:18:40,466.466 INFO    ] 200
[2026-10-25 03:18:40,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:40,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:18:40,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:18:40,674.674 INFO    ] No camera update needed
[2026-10-25 03:18:40,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:18:40,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:18:40,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:18:40,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:18:42,730.730 INFO    ] ================================================
[2026-10-25 03:18:42,745.745 INFO    ] Launching Daemon at Sun Oct 25 03:18:42 IST 2026
[2026-10-25 03:18:42,756.756 INFO    ] ================================================
[2026-10-25 03:18:43,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:18:43
[2026-10-25 03:18:43,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:18:44,164.164 INFO    ] Initializing speech engine...
[2026-10-25 03:18:44,176.176 INFO    ] 2026-10-25 03:18:44
[2026-10-25 03:18:44,438.438 INFO    ] 2026-10-25 03:18:44
[2026-10-25 03:18:44,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:18:44,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:18:44,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:18:44,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:18:44,805.805 INFO    ] time= 25/10/2026 03:18:44
[2026-10-25 03:18:44,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:18:44,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:18:44,965.965 INFO    ] No existing commands found in stream
[2026-10-25 03:18:49,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:18:49,993.993 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 03:18:51,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:18:51,047.047 INFO    ] Checking for system updates...
[2026-10-25 03:18:51,084.084 INFO    ] 200
[2026-10-25 03:18:51,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:51,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:18:51,143.143 INFO    ] No update needed
[2026-10-25 03:18:51,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 03:18:51,183.183 INFO    ] 200
[2026-10-25 03:18:51,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:18:51,231.231 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:18:51,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:18:51,280.280 INFO    ] No camera update needed
[2026-10-25 03:18:51,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:18:51,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:18:51,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:18:51,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:18:53,336.336 INFO    ] ================================================
[2026-10-25 03:18:53,351.351 INFO    ] Launching Daemon at Sun Oct 25 03:18:53 IST 2026
[2026-10-25 03:18:53,362.362 INFO    ] ================================================
[2026-10-25 03:18:53,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:18:53
[2026-10-25 03:18:54,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:18:54,780.780 INFO    ] Initializing speech engine...
[2026-10-25 03:18:54,804.804 INFO    ] 2026-10-25 03:18:54
[2026-10-25 03:18:55,081.081 INFO    ] 2026-10-25 03:18:55
[2026-10-25 03:18:55,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:18:55,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:18:55,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:18:55,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:18:55,505.505 INFO    ] time= 25/10/2026 03:18:55
[2026-10-25 03:18:55,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:18:55,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:18:55,650.650 INFO    ] No existing commands found in stream
[2026-10-25 03:19:00,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:19:00,678.678 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 03:19:05,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:19:05,058.058 INFO    ] Checking for system updates...
[2026-10-25 03:19:05,096.096 INFO    ] 200
[2026-10-25 03:19:05,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:05,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:05,164.164 INFO    ] No update needed
[2026-10-25 03:19:05,167.167 INFO    ] Checking for camera pi updates...
[2026-10-25 03:19:05,206.206 INFO    ] 200
[2026-10-25 03:19:05,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:05,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:19:05,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:05,307.307 INFO    ] No camera update needed
[2026-10-25 03:19:05,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:19:05,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:19:05,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:19:05,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:19:07,367.367 INFO    ] ================================================
[2026-10-25 03:19:07,382.382 INFO    ] Launching Daemon at Sun Oct 25 03:19:07 IST 2026
[2026-10-25 03:19:07,393.393 INFO    ] ================================================
[2026-10-25 03:19:07,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:19:07
[2026-10-25 03:19:08,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:19:08,803.803 INFO    ] Initializing speech engine...
[2026-10-25 03:19:08,816.816 INFO    ] 2026-10-25 03:19:08
[2026-10-25 03:19:09,089.089 INFO    ] 2026-10-25 03:19:09
[2026-10-25 03:19:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:19:09,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:19:09,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:19:09,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:19:09,449.449 INFO    ] time= 25/10/2026 03:19:09
[2026-10-25 03:19:09,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:19:09,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:19:09,556.556 INFO    ] No existing commands found in stream
[2026-10-25 03:19:14,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:19:14,575.575 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 03:19:16,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:19:16,942.942 INFO    ] Checking for system updates...
[2026-10-25 03:19:16,978.978 INFO    ] 200
[2026-10-25 03:19:16,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:17,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:17,037.037 INFO    ] No update needed
[2026-10-25 03:19:17,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 03:19:17,077.077 INFO    ] 200
[2026-10-25 03:19:17,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:17,126.126 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:19:17,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:17,177.177 INFO    ] No camera update needed
[2026-10-25 03:19:17,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:19:17,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:19:17,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:19:17,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:19:19,231.231 INFO    ] ================================================
[2026-10-25 03:19:19,246.246 INFO    ] Launching Daemon at Sun Oct 25 03:19:19 IST 2026
[2026-10-25 03:19:19,257.257 INFO    ] ================================================
[2026-10-25 03:19:19,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:19:19
[2026-10-25 03:19:20,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:19:20,659.659 INFO    ] Initializing speech engine...
[2026-10-25 03:19:20,673.673 INFO    ] 2026-10-25 03:19:20
[2026-10-25 03:19:20,935.935 INFO    ] 2026-10-25 03:19:20
[2026-10-25 03:19:20,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:19:21,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:19:21,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:19:21,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:19:21,380.380 INFO    ] time= 25/10/2026 03:19:21
[2026-10-25 03:19:21,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:19:21,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:19:21,565.565 INFO    ] No existing commands found in stream
[2026-10-25 03:19:26,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:19:26,579.579 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 03:19:29,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:19:29,652.652 INFO    ] Checking for system updates...
[2026-10-25 03:19:29,688.688 INFO    ] 200
[2026-10-25 03:19:29,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:29,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:19:29,754.754 INFO    ] No update needed
[2026-10-25 03:19:29,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 03:19:29,790.790 INFO    ] 200
[2026-10-25 03:19:29,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:29,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:19:29,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:19:29,883.883 INFO    ] No camera update needed
[2026-10-25 03:19:29,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:19:29,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:19:29,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:19:29,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:19:31,940.940 INFO    ] ================================================
[2026-10-25 03:19:31,956.956 INFO    ] Launching Daemon at Sun Oct 25 03:19:31 IST 2026
[2026-10-25 03:19:31,968.968 INFO    ] ================================================
[2026-10-25 03:19:32,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:19:32
[2026-10-25 03:19:33,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:19:33,545.545 INFO    ] Initializing speech engine...
[2026-10-25 03:19:33,552.552 INFO    ] 2026-10-25 03:19:33
[2026-10-25 03:19:33,829.829 INFO    ] 2026-10-25 03:19:33
[2026-10-25 03:19:33,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:19:34,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:19:34,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:19:34,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:19:34,209.209 INFO    ] time= 25/10/2026 03:19:34
[2026-10-25 03:19:34,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:19:34,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:19:34,317.317 INFO    ] No existing commands found in stream
[2026-10-25 03:19:39,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:19:39,350.350 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 03:19:42,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:19:42,497.497 INFO    ] Checking for system updates...
[2026-10-25 03:19:42,537.537 INFO    ] 200
[2026-10-25 03:19:42,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:42,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:42,603.603 INFO    ] No update needed
[2026-10-25 03:19:42,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 03:19:42,647.647 INFO    ] 200
[2026-10-25 03:19:42,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:42,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:19:42,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:19:42,761.761 INFO    ] No camera update needed
[2026-10-25 03:19:42,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:19:42,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:19:42,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:19:42,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:19:44,820.820 INFO    ] ================================================
[2026-10-25 03:19:44,835.835 INFO    ] Launching Daemon at Sun Oct 25 03:19:44 IST 2026
[2026-10-25 03:19:44,848.848 INFO    ] ================================================
[2026-10-25 03:19:45,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:19:45
[2026-10-25 03:19:46,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:19:46,517.517 INFO    ] Initializing speech engine...
[2026-10-25 03:19:46,529.529 INFO    ] 2026-10-25 03:19:46
[2026-10-25 03:19:46,817.817 INFO    ] 2026-10-25 03:19:46
[2026-10-25 03:19:46,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:19:47,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:19:47,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:19:47,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:19:47,348.348 INFO    ] time= 25/10/2026 03:19:47
[2026-10-25 03:19:47,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:19:47,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:19:47,503.503 INFO    ] No existing commands found in stream
[2026-10-25 03:19:52,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:19:52,527.527 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 03:19:54,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:19:54,034.034 INFO    ] Checking for system updates...
[2026-10-25 03:19:54,074.074 INFO    ] 200
[2026-10-25 03:19:54,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:54,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:19:54,139.139 INFO    ] No update needed
[2026-10-25 03:19:54,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 03:19:54,175.175 INFO    ] 200
[2026-10-25 03:19:54,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:19:54,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:19:54,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:19:54,291.291 INFO    ] No camera update needed
[2026-10-25 03:19:54,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:19:54,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:19:54,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:19:54,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:19:56,345.345 INFO    ] ================================================
[2026-10-25 03:19:56,366.366 INFO    ] Launching Daemon at Sun Oct 25 03:19:56 IST 2026
[2026-10-25 03:19:56,377.377 INFO    ] ================================================
[2026-10-25 03:19:56,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:19:56
[2026-10-25 03:19:57,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:19:57,793.793 INFO    ] Initializing speech engine...
[2026-10-25 03:19:57,801.801 INFO    ] 2026-10-25 03:19:57
[2026-10-25 03:19:58,071.071 INFO    ] 2026-10-25 03:19:58
[2026-10-25 03:19:58,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:19:59,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:19:59,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:19:59,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:19:59,178.178 INFO    ] time= 25/10/2026 03:19:59
[2026-10-25 03:19:59,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:19:59,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:19:59,285.285 INFO    ] No existing commands found in stream
[2026-10-25 03:20:04,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:20:04,298.298 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 03:20:08,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:20:08,617.617 INFO    ] Checking for system updates...
[2026-10-25 03:20:08,661.661 INFO    ] 200
[2026-10-25 03:20:08,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:08,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:20:08,731.731 INFO    ] No update needed
[2026-10-25 03:20:08,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 03:20:08,769.769 INFO    ] 200
[2026-10-25 03:20:08,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:08,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:20:08,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:20:08,862.862 INFO    ] No camera update needed
[2026-10-25 03:20:08,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:20:08,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:20:08,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:20:08,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:20:10,918.918 INFO    ] ================================================
[2026-10-25 03:20:10,934.934 INFO    ] Launching Daemon at Sun Oct 25 03:20:10 IST 2026
[2026-10-25 03:20:10,944.944 INFO    ] ================================================
[2026-10-25 03:20:11,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:20:11
[2026-10-25 03:20:12,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:20:12,347.347 INFO    ] Initializing speech engine...
[2026-10-25 03:20:12,353.353 INFO    ] 2026-10-25 03:20:12
[2026-10-25 03:20:12,648.648 INFO    ] 2026-10-25 03:20:12
[2026-10-25 03:20:12,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:20:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:20:12,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:20:13,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:20:13,068.068 INFO    ] time= 25/10/2026 03:20:13
[2026-10-25 03:20:13,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:20:13,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:20:13,153.153 INFO    ] No existing commands found in stream
[2026-10-25 03:20:18,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:20:18,168.168 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 03:20:21,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:20:21,735.735 INFO    ] Checking for system updates...
[2026-10-25 03:20:21,775.775 INFO    ] 200
[2026-10-25 03:20:21,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:21,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:20:21,839.839 INFO    ] No update needed
[2026-10-25 03:20:21,842.842 INFO    ] Checking for camera pi updates...
[2026-10-25 03:20:21,879.879 INFO    ] 200
[2026-10-25 03:20:21,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:21,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:20:21,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:20:21,978.978 INFO    ] No camera update needed
[2026-10-25 03:20:21,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:20:21,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:20:21,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:20:21,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:20:24,035.035 INFO    ] ================================================
[2026-10-25 03:20:24,050.050 INFO    ] Launching Daemon at Sun Oct 25 03:20:24 IST 2026
[2026-10-25 03:20:24,061.061 INFO    ] ================================================
[2026-10-25 03:20:24,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:20:24
[2026-10-25 03:20:25,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:20:25,462.462 INFO    ] Initializing speech engine...
[2026-10-25 03:20:25,475.475 INFO    ] 2026-10-25 03:20:25
[2026-10-25 03:20:25,736.736 INFO    ] 2026-10-25 03:20:25
[2026-10-25 03:20:25,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:20:26,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:20:26,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:20:26,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:20:26,206.206 INFO    ] time= 25/10/2026 03:20:26
[2026-10-25 03:20:26,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:20:26,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:20:26,357.357 INFO    ] No existing commands found in stream
[2026-10-25 03:20:31,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:20:31,375.375 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 03:20:32,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:20:32,594.594 INFO    ] Checking for system updates...
[2026-10-25 03:20:32,633.633 INFO    ] 200
[2026-10-25 03:20:32,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:32,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:20:32,708.708 INFO    ] No update needed
[2026-10-25 03:20:32,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 03:20:32,765.765 INFO    ] 200
[2026-10-25 03:20:32,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:32,811.811 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:20:32,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:20:32,852.852 INFO    ] No camera update needed
[2026-10-25 03:20:32,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:20:32,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:20:32,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:20:32,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:20:34,912.912 INFO    ] ================================================
[2026-10-25 03:20:34,927.927 INFO    ] Launching Daemon at Sun Oct 25 03:20:34 IST 2026
[2026-10-25 03:20:34,938.938 INFO    ] ================================================
[2026-10-25 03:20:35,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:20:35
[2026-10-25 03:20:36,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:20:36,577.577 INFO    ] Initializing speech engine...
[2026-10-25 03:20:36,589.589 INFO    ] 2026-10-25 03:20:36
[2026-10-25 03:20:36,873.873 INFO    ] 2026-10-25 03:20:36
[2026-10-25 03:20:36,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:20:37,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:20:37,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:20:37,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:20:37,405.405 INFO    ] time= 25/10/2026 03:20:37
[2026-10-25 03:20:37,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:20:37,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:20:37,555.555 INFO    ] No existing commands found in stream
[2026-10-25 03:20:42,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:20:42,574.574 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 03:20:45,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:20:45,289.289 INFO    ] Checking for system updates...
[2026-10-25 03:20:45,327.327 INFO    ] 200
[2026-10-25 03:20:45,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:45,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:20:45,388.388 INFO    ] No update needed
[2026-10-25 03:20:45,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 03:20:45,427.427 INFO    ] 200
[2026-10-25 03:20:45,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:20:45,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:20:45,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:20:45,633.633 INFO    ] No camera update needed
[2026-10-25 03:20:45,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:20:45,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:20:45,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:20:45,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:20:47,694.694 INFO    ] ================================================
[2026-10-25 03:20:47,709.709 INFO    ] Launching Daemon at Sun Oct 25 03:20:47 IST 2026
[2026-10-25 03:20:47,720.720 INFO    ] ================================================
[2026-10-25 03:20:48,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:20:48
[2026-10-25 03:20:48,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:20:49,142.142 INFO    ] Initializing speech engine...
[2026-10-25 03:20:49,167.167 INFO    ] 2026-10-25 03:20:49
[2026-10-25 03:20:49,439.439 INFO    ] 2026-10-25 03:20:49
[2026-10-25 03:20:49,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:20:49,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:20:49,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:20:49,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:20:49,865.865 INFO    ] time= 25/10/2026 03:20:49
[2026-10-25 03:20:49,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:20:49,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:20:50,044.044 INFO    ] No existing commands found in stream
[2026-10-25 03:20:55,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:20:55,077.077 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 03:21:01,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:21:01,750.750 INFO    ] Checking for system updates...
[2026-10-25 03:21:01,806.806 INFO    ] 200
[2026-10-25 03:21:01,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:01,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:01,888.888 INFO    ] No update needed
[2026-10-25 03:21:01,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 03:21:01,935.935 INFO    ] 200
[2026-10-25 03:21:01,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:01,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:21:02,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:02,097.097 INFO    ] No camera update needed
[2026-10-25 03:21:02,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:21:02,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:21:02,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:21:02,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:21:04,158.158 INFO    ] ================================================
[2026-10-25 03:21:04,174.174 INFO    ] Launching Daemon at Sun Oct 25 03:21:04 IST 2026
[2026-10-25 03:21:04,186.186 INFO    ] ================================================
[2026-10-25 03:21:04,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:21:04
[2026-10-25 03:21:05,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:21:05,603.603 INFO    ] Initializing speech engine...
[2026-10-25 03:21:05,612.612 INFO    ] 2026-10-25 03:21:05
[2026-10-25 03:21:05,858.858 INFO    ] 2026-10-25 03:21:05
[2026-10-25 03:21:05,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:21:06,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:21:06,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:21:06,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:21:06,340.340 INFO    ] time= 25/10/2026 03:21:06
[2026-10-25 03:21:06,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:21:06,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:21:06,517.517 INFO    ] No existing commands found in stream
[2026-10-25 03:21:11,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:21:11,552.552 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 03:21:15,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:21:15,940.940 INFO    ] Checking for system updates...
[2026-10-25 03:21:15,976.976 INFO    ] 200
[2026-10-25 03:21:15,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:16,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:21:16,034.034 INFO    ] No update needed
[2026-10-25 03:21:16,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 03:21:16,071.071 INFO    ] 200
[2026-10-25 03:21:16,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:16,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:21:16,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:21:16,175.175 INFO    ] No camera update needed
[2026-10-25 03:21:16,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:21:16,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:21:16,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:21:16,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:21:18,233.233 INFO    ] ================================================
[2026-10-25 03:21:18,249.249 INFO    ] Launching Daemon at Sun Oct 25 03:21:18 IST 2026
[2026-10-25 03:21:18,261.261 INFO    ] ================================================
[2026-10-25 03:21:18,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:21:18
[2026-10-25 03:21:19,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:21:19,895.895 INFO    ] Initializing speech engine...
[2026-10-25 03:21:19,903.903 INFO    ] 2026-10-25 03:21:19
[2026-10-25 03:21:20,163.163 INFO    ] 2026-10-25 03:21:20
[2026-10-25 03:21:20,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:21:20,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:21:20,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:21:20,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:21:20,650.650 INFO    ] time= 25/10/2026 03:21:20
[2026-10-25 03:21:20,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:21:20,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:21:20,812.812 INFO    ] No existing commands found in stream
[2026-10-25 03:21:25,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:21:25,852.852 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 03:21:27,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:21:27,319.319 INFO    ] Checking for system updates...
[2026-10-25 03:21:27,356.356 INFO    ] 200
[2026-10-25 03:21:27,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:27,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:27,416.416 INFO    ] No update needed
[2026-10-25 03:21:27,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 03:21:27,452.452 INFO    ] 200
[2026-10-25 03:21:27,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:27,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:21:27,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:27,546.546 INFO    ] No camera update needed
[2026-10-25 03:21:27,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:21:27,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:21:27,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:21:27,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:21:29,610.610 INFO    ] ================================================
[2026-10-25 03:21:29,625.625 INFO    ] Launching Daemon at Sun Oct 25 03:21:29 IST 2026
[2026-10-25 03:21:29,636.636 INFO    ] ================================================
[2026-10-25 03:21:30,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:21:30
[2026-10-25 03:21:30,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:21:31,068.068 INFO    ] Initializing speech engine...
[2026-10-25 03:21:31,077.077 INFO    ] 2026-10-25 03:21:31
[2026-10-25 03:21:31,383.383 INFO    ] 2026-10-25 03:21:31
[2026-10-25 03:21:31,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:21:31,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:21:31,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:21:31,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:21:31,750.750 INFO    ] time= 25/10/2026 03:21:31
[2026-10-25 03:21:31,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:21:31,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:21:31,871.871 INFO    ] No existing commands found in stream
[2026-10-25 03:21:36,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:21:36,886.886 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 03:21:37,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:21:37,429.429 INFO    ] Checking for system updates...
[2026-10-25 03:21:37,470.470 INFO    ] 200
[2026-10-25 03:21:37,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:37,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:37,536.536 INFO    ] No update needed
[2026-10-25 03:21:37,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 03:21:37,576.576 INFO    ] 200
[2026-10-25 03:21:37,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:37,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:21:37,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:21:37,685.685 INFO    ] No camera update needed
[2026-10-25 03:21:37,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:21:37,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:21:37,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:21:37,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:21:39,741.741 INFO    ] ================================================
[2026-10-25 03:21:39,757.757 INFO    ] Launching Daemon at Sun Oct 25 03:21:39 IST 2026
[2026-10-25 03:21:39,768.768 INFO    ] ================================================
[2026-10-25 03:21:40,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:21:40
[2026-10-25 03:21:40,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:21:41,174.174 INFO    ] Initializing speech engine...
[2026-10-25 03:21:41,196.196 INFO    ] 2026-10-25 03:21:41
[2026-10-25 03:21:41,449.449 INFO    ] 2026-10-25 03:21:41
[2026-10-25 03:21:41,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:21:41,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:21:41,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:21:41,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:21:41,818.818 INFO    ] time= 25/10/2026 03:21:41
[2026-10-25 03:21:41,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:21:41,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:21:41,979.979 INFO    ] No existing commands found in stream
[2026-10-25 03:21:47,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:21:47,006.006 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 03:21:48,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:21:48,658.658 INFO    ] Checking for system updates...
[2026-10-25 03:21:48,695.695 INFO    ] 200
[2026-10-25 03:21:48,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:48,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:21:48,753.753 INFO    ] No update needed
[2026-10-25 03:21:48,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 03:21:48,793.793 INFO    ] 200
[2026-10-25 03:21:48,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:21:48,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:21:48,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:21:48,889.889 INFO    ] No camera update needed
[2026-10-25 03:21:48,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:21:48,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:21:48,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:21:48,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:21:50,947.947 INFO    ] ================================================
[2026-10-25 03:21:50,962.962 INFO    ] Launching Daemon at Sun Oct 25 03:21:50 IST 2026
[2026-10-25 03:21:50,974.974 INFO    ] ================================================
[2026-10-25 03:21:51,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:21:51
[2026-10-25 03:21:52,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:21:52,619.619 INFO    ] Initializing speech engine...
[2026-10-25 03:21:52,627.627 INFO    ] 2026-10-25 03:21:52
[2026-10-25 03:21:52,883.883 INFO    ] 2026-10-25 03:21:52
[2026-10-25 03:21:52,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:21:53,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:21:53,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:21:53,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:21:53,368.368 INFO    ] time= 25/10/2026 03:21:53
[2026-10-25 03:21:53,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:21:53,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:21:53,544.544 INFO    ] No existing commands found in stream
[2026-10-25 03:21:58,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:21:58,563.563 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 03:22:02,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:22:02,478.478 INFO    ] Checking for system updates...
[2026-10-25 03:22:02,525.525 INFO    ] 200
[2026-10-25 03:22:02,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:02,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:02,593.593 INFO    ] No update needed
[2026-10-25 03:22:02,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 03:22:02,636.636 INFO    ] 200
[2026-10-25 03:22:02,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:02,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:22:02,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:02,738.738 INFO    ] No camera update needed
[2026-10-25 03:22:02,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:22:02,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:22:02,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:22:02,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:22:04,797.797 INFO    ] ================================================
[2026-10-25 03:22:04,813.813 INFO    ] Launching Daemon at Sun Oct 25 03:22:04 IST 2026
[2026-10-25 03:22:04,824.824 INFO    ] ================================================
[2026-10-25 03:22:05,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:22:05
[2026-10-25 03:22:06,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:22:06,500.500 INFO    ] Initializing speech engine...
[2026-10-25 03:22:06,507.507 INFO    ] 2026-10-25 03:22:06
[2026-10-25 03:22:06,796.796 INFO    ] 2026-10-25 03:22:06
[2026-10-25 03:22:06,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:22:07,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:22:07,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:22:07,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:22:07,276.276 INFO    ] time= 25/10/2026 03:22:07
[2026-10-25 03:22:07,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:22:07,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:22:07,483.483 INFO    ] No existing commands found in stream
[2026-10-25 03:22:12,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:22:12,519.519 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 03:22:15,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:22:15,247.247 INFO    ] Checking for system updates...
[2026-10-25 03:22:15,284.284 INFO    ] 200
[2026-10-25 03:22:15,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:15,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:15,354.354 INFO    ] No update needed
[2026-10-25 03:22:15,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 03:22:15,390.390 INFO    ] 200
[2026-10-25 03:22:15,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:15,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:22:15,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:15,504.504 INFO    ] No camera update needed
[2026-10-25 03:22:15,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:22:15,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:22:15,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:22:15,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:22:17,560.560 INFO    ] ================================================
[2026-10-25 03:22:17,576.576 INFO    ] Launching Daemon at Sun Oct 25 03:22:17 IST 2026
[2026-10-25 03:22:17,588.588 INFO    ] ================================================
[2026-10-25 03:22:18,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:22:18
[2026-10-25 03:22:18,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:22:19,027.027 INFO    ] Initializing speech engine...
[2026-10-25 03:22:19,042.042 INFO    ] 2026-10-25 03:22:19
[2026-10-25 03:22:19,299.299 INFO    ] 2026-10-25 03:22:19
[2026-10-25 03:22:19,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:22:19,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:22:19,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:22:19,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:22:19,659.659 INFO    ] time= 25/10/2026 03:22:19
[2026-10-25 03:22:19,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:22:19,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:22:19,785.785 INFO    ] No existing commands found in stream
[2026-10-25 03:22:24,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:22:24,797.797 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 03:22:27,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:22:27,537.537 INFO    ] Checking for system updates...
[2026-10-25 03:22:27,573.573 INFO    ] 200
[2026-10-25 03:22:27,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:27,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:27,639.639 INFO    ] No update needed
[2026-10-25 03:22:27,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 03:22:27,676.676 INFO    ] 200
[2026-10-25 03:22:27,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:27,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:22:27,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:27,780.780 INFO    ] No camera update needed
[2026-10-25 03:22:27,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:22:27,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:22:27,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:22:27,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:22:29,837.837 INFO    ] ================================================
[2026-10-25 03:22:29,854.854 INFO    ] Launching Daemon at Sun Oct 25 03:22:29 IST 2026
[2026-10-25 03:22:29,868.868 INFO    ] ================================================
[2026-10-25 03:22:30,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:22:30
[2026-10-25 03:22:31,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:22:31,488.488 INFO    ] Initializing speech engine...
[2026-10-25 03:22:31,496.496 INFO    ] 2026-10-25 03:22:31
[2026-10-25 03:22:31,819.819 INFO    ] 2026-10-25 03:22:31
[2026-10-25 03:22:31,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:22:32,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:22:32,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:22:32,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:22:32,222.222 INFO    ] time= 25/10/2026 03:22:32
[2026-10-25 03:22:32,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:22:32,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:22:32,335.335 INFO    ] No existing commands found in stream
[2026-10-25 03:22:37,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:22:37,348.348 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 03:22:37,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:22:37,890.890 INFO    ] Checking for system updates...
[2026-10-25 03:22:37,926.926 INFO    ] 200
[2026-10-25 03:22:37,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:37,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:22:37,986.986 INFO    ] No update needed
[2026-10-25 03:22:37,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 03:22:38,026.026 INFO    ] 200
[2026-10-25 03:22:38,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:38,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:22:38,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:22:38,108.108 INFO    ] No camera update needed
[2026-10-25 03:22:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:22:38,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:22:38,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:22:38,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:22:40,166.166 INFO    ] ================================================
[2026-10-25 03:22:40,182.182 INFO    ] Launching Daemon at Sun Oct 25 03:22:40 IST 2026
[2026-10-25 03:22:40,193.193 INFO    ] ================================================
[2026-10-25 03:22:40,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:22:40
[2026-10-25 03:22:41,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:22:41,626.626 INFO    ] Initializing speech engine...
[2026-10-25 03:22:41,640.640 INFO    ] 2026-10-25 03:22:41
[2026-10-25 03:22:41,907.907 INFO    ] 2026-10-25 03:22:41
[2026-10-25 03:22:41,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:22:42,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:22:42,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:22:42,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:22:42,280.280 INFO    ] time= 25/10/2026 03:22:42
[2026-10-25 03:22:42,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:22:42,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:22:42,464.464 INFO    ] No existing commands found in stream
[2026-10-25 03:22:47,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:22:47,489.489 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 03:22:49,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:22:49,607.607 INFO    ] Checking for system updates...
[2026-10-25 03:22:49,647.647 INFO    ] 200
[2026-10-25 03:22:49,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:49,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:49,705.705 INFO    ] No update needed
[2026-10-25 03:22:49,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 03:22:49,741.741 INFO    ] 200
[2026-10-25 03:22:49,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:22:49,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:22:49,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:22:49,942.942 INFO    ] No camera update needed
[2026-10-25 03:22:49,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:22:49,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:22:49,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:22:49,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:22:52,003.003 INFO    ] ================================================
[2026-10-25 03:22:52,018.018 INFO    ] Launching Daemon at Sun Oct 25 03:22:52 IST 2026
[2026-10-25 03:22:52,029.029 INFO    ] ================================================
[2026-10-25 03:22:52,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:22:52
[2026-10-25 03:22:53,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:22:53,468.468 INFO    ] Initializing speech engine...
[2026-10-25 03:22:53,482.482 INFO    ] 2026-10-25 03:22:53
[2026-10-25 03:22:53,765.765 INFO    ] 2026-10-25 03:22:53
[2026-10-25 03:22:53,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:22:53,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:22:54,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:22:54,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:22:54,147.147 INFO    ] time= 25/10/2026 03:22:54
[2026-10-25 03:22:54,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:22:54,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:22:54,269.269 INFO    ] No existing commands found in stream
[2026-10-25 03:22:59,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:22:59,284.284 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 03:23:03,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:23:03,079.079 INFO    ] Checking for system updates...
[2026-10-25 03:23:03,117.117 INFO    ] 200
[2026-10-25 03:23:03,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:03,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:23:03,180.180 INFO    ] No update needed
[2026-10-25 03:23:03,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 03:23:03,220.220 INFO    ] 200
[2026-10-25 03:23:03,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:03,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:23:03,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:23:03,302.302 INFO    ] No camera update needed
[2026-10-25 03:23:03,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:23:03,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:23:03,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:23:03,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:23:05,363.363 INFO    ] ================================================
[2026-10-25 03:23:05,378.378 INFO    ] Launching Daemon at Sun Oct 25 03:23:05 IST 2026
[2026-10-25 03:23:05,389.389 INFO    ] ================================================
[2026-10-25 03:23:05,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:23:05
[2026-10-25 03:23:06,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:23:06,814.814 INFO    ] Initializing speech engine...
[2026-10-25 03:23:06,823.823 INFO    ] 2026-10-25 03:23:06
[2026-10-25 03:23:07,071.071 INFO    ] 2026-10-25 03:23:07
[2026-10-25 03:23:07,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:23:07,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:23:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:23:07,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:23:07,545.545 INFO    ] time= 25/10/2026 03:23:07
[2026-10-25 03:23:07,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:23:07,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:23:07,704.704 INFO    ] No existing commands found in stream
[2026-10-25 03:23:12,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:23:12,719.719 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 03:23:15,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:23:15,734.734 INFO    ] Checking for system updates...
[2026-10-25 03:23:15,775.775 INFO    ] 200
[2026-10-25 03:23:15,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:15,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:15,836.836 INFO    ] No update needed
[2026-10-25 03:23:15,838.838 INFO    ] Checking for camera pi updates...
[2026-10-25 03:23:15,877.877 INFO    ] 200
[2026-10-25 03:23:15,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:15,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:23:15,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:15,980.980 INFO    ] No camera update needed
[2026-10-25 03:23:15,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:23:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:23:15,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:23:15,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:23:18,035.035 INFO    ] ================================================
[2026-10-25 03:23:18,050.050 INFO    ] Launching Daemon at Sun Oct 25 03:23:18 IST 2026
[2026-10-25 03:23:18,061.061 INFO    ] ================================================
[2026-10-25 03:23:18,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:23:18
[2026-10-25 03:23:19,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:23:19,459.459 INFO    ] Initializing speech engine...
[2026-10-25 03:23:19,482.482 INFO    ] 2026-10-25 03:23:19
[2026-10-25 03:23:19,734.734 INFO    ] 2026-10-25 03:23:19
[2026-10-25 03:23:19,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:23:20,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:23:20,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:23:20,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:23:20,202.202 INFO    ] time= 25/10/2026 03:23:20
[2026-10-25 03:23:20,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:23:20,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:23:20,348.348 INFO    ] No existing commands found in stream
[2026-10-25 03:23:25,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:23:25,363.363 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 03:23:26,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:23:26,459.459 INFO    ] Checking for system updates...
[2026-10-25 03:23:26,505.505 INFO    ] 200
[2026-10-25 03:23:26,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:26,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:26,562.562 INFO    ] No update needed
[2026-10-25 03:23:26,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 03:23:26,598.598 INFO    ] 200
[2026-10-25 03:23:26,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:26,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:23:26,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:26,691.691 INFO    ] No camera update needed
[2026-10-25 03:23:26,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:23:26,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:23:26,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:23:26,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:23:28,749.749 INFO    ] ================================================
[2026-10-25 03:23:28,764.764 INFO    ] Launching Daemon at Sun Oct 25 03:23:28 IST 2026
[2026-10-25 03:23:28,774.774 INFO    ] ================================================
[2026-10-25 03:23:29,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:23:29
[2026-10-25 03:23:29,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:23:30,218.218 INFO    ] Initializing speech engine...
[2026-10-25 03:23:30,224.224 INFO    ] 2026-10-25 03:23:30
[2026-10-25 03:23:30,521.521 INFO    ] 2026-10-25 03:23:30
[2026-10-25 03:23:30,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:23:30,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:23:30,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:23:30,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:23:31,016.016 INFO    ] time= 25/10/2026 03:23:30
[2026-10-25 03:23:31,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:23:31,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:23:31,205.205 INFO    ] No existing commands found in stream
[2026-10-25 03:23:36,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:23:36,234.234 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 03:23:37,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:23:37,940.940 INFO    ] Checking for system updates...
[2026-10-25 03:23:37,976.976 INFO    ] 200
[2026-10-25 03:23:37,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:38,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:23:38,036.036 INFO    ] No update needed
[2026-10-25 03:23:38,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 03:23:38,076.076 INFO    ] 200
[2026-10-25 03:23:38,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:38,120.120 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:23:38,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:23:38,154.154 INFO    ] No camera update needed
[2026-10-25 03:23:38,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:23:38,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:23:38,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:23:38,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:23:40,209.209 INFO    ] ================================================
[2026-10-25 03:23:40,226.226 INFO    ] Launching Daemon at Sun Oct 25 03:23:40 IST 2026
[2026-10-25 03:23:40,237.237 INFO    ] ================================================
[2026-10-25 03:23:40,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:23:40
[2026-10-25 03:23:41,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:23:41,652.652 INFO    ] Initializing speech engine...
[2026-10-25 03:23:41,665.665 INFO    ] 2026-10-25 03:23:41
[2026-10-25 03:23:41,930.930 INFO    ] 2026-10-25 03:23:41
[2026-10-25 03:23:41,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:23:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:23:42,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:23:42,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:23:42,305.305 INFO    ] time= 25/10/2026 03:23:42
[2026-10-25 03:23:42,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:23:42,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:23:42,455.455 INFO    ] No existing commands found in stream
[2026-10-25 03:23:47,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:23:47,482.482 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 03:23:51,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:23:51,029.029 INFO    ] Checking for system updates...
[2026-10-25 03:23:51,069.069 INFO    ] 200
[2026-10-25 03:23:51,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:51,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:51,134.134 INFO    ] No update needed
[2026-10-25 03:23:51,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 03:23:51,170.170 INFO    ] 200
[2026-10-25 03:23:51,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:23:51,228.228 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:23:51,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:23:51,303.303 INFO    ] No camera update needed
[2026-10-25 03:23:51,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:23:51,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:23:51,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:23:51,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:23:53,363.363 INFO    ] ================================================
[2026-10-25 03:23:53,378.378 INFO    ] Launching Daemon at Sun Oct 25 03:23:53 IST 2026
[2026-10-25 03:23:53,389.389 INFO    ] ================================================
[2026-10-25 03:23:53,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:23:53
[2026-10-25 03:23:54,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:23:54,801.801 INFO    ] Initializing speech engine...
[2026-10-25 03:23:54,808.808 INFO    ] 2026-10-25 03:23:54
[2026-10-25 03:23:55,107.107 INFO    ] 2026-10-25 03:23:55
[2026-10-25 03:23:55,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:23:55,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:23:55,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:23:55,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:23:55,490.490 INFO    ] time= 25/10/2026 03:23:55
[2026-10-25 03:23:55,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:23:55,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:23:55,615.615 INFO    ] No existing commands found in stream
[2026-10-25 03:24:00,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:24:00,631.631 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 03:24:02,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:24:02,910.910 INFO    ] Checking for system updates...
[2026-10-25 03:24:02,954.954 INFO    ] 200
[2026-10-25 03:24:02,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:03,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:24:03,028.028 INFO    ] No update needed
[2026-10-25 03:24:03,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 03:24:03,075.075 INFO    ] 200
[2026-10-25 03:24:03,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:03,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:24:03,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:24:03,185.185 INFO    ] No camera update needed
[2026-10-25 03:24:03,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:24:03,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:24:03,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:24:03,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:24:05,244.244 INFO    ] ================================================
[2026-10-25 03:24:05,260.260 INFO    ] Launching Daemon at Sun Oct 25 03:24:05 IST 2026
[2026-10-25 03:24:05,271.271 INFO    ] ================================================
[2026-10-25 03:24:05,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:24:05
[2026-10-25 03:24:06,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:24:06,688.688 INFO    ] Initializing speech engine...
[2026-10-25 03:24:06,713.713 INFO    ] 2026-10-25 03:24:06
[2026-10-25 03:24:06,983.983 INFO    ] 2026-10-25 03:24:06
[2026-10-25 03:24:07,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:24:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:24:07,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:24:07,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:24:07,401.401 INFO    ] time= 25/10/2026 03:24:07
[2026-10-25 03:24:07,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:24:07,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:24:07,554.554 INFO    ] No existing commands found in stream
[2026-10-25 03:24:12,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:24:12,577.577 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 03:24:15,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:24:15,284.284 INFO    ] Checking for system updates...
[2026-10-25 03:24:15,322.322 INFO    ] 200
[2026-10-25 03:24:15,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:15,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:15,384.384 INFO    ] No update needed
[2026-10-25 03:24:15,387.387 INFO    ] Checking for camera pi updates...
[2026-10-25 03:24:15,427.427 INFO    ] 200
[2026-10-25 03:24:15,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:15,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:24:15,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:15,537.537 INFO    ] No camera update needed
[2026-10-25 03:24:15,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:24:15,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:24:15,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:24:15,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:24:17,592.592 INFO    ] ================================================
[2026-10-25 03:24:17,607.607 INFO    ] Launching Daemon at Sun Oct 25 03:24:17 IST 2026
[2026-10-25 03:24:17,619.619 INFO    ] ================================================
[2026-10-25 03:24:18,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:24:18
[2026-10-25 03:24:18,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:24:19,099.099 INFO    ] Initializing speech engine...
[2026-10-25 03:24:19,109.109 INFO    ] 2026-10-25 03:24:19
[2026-10-25 03:24:19,381.381 INFO    ] 2026-10-25 03:24:19
[2026-10-25 03:24:19,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:24:19,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:24:19,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:24:19,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:24:19,863.863 INFO    ] time= 25/10/2026 03:24:19
[2026-10-25 03:24:19,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:24:19,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:24:20,026.026 INFO    ] No existing commands found in stream
[2026-10-25 03:24:25,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:24:25,067.067 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 03:24:26,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:24:26,850.850 INFO    ] Checking for system updates...
[2026-10-25 03:24:26,892.892 INFO    ] 200
[2026-10-25 03:24:26,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:26,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:26,950.950 INFO    ] No update needed
[2026-10-25 03:24:26,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 03:24:26,986.986 INFO    ] 200
[2026-10-25 03:24:26,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:27,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:24:27,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:27,096.096 INFO    ] No camera update needed
[2026-10-25 03:24:27,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:24:27,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:24:27,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:24:27,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:24:29,150.150 INFO    ] ================================================
[2026-10-25 03:24:29,165.165 INFO    ] Launching Daemon at Sun Oct 25 03:24:29 IST 2026
[2026-10-25 03:24:29,176.176 INFO    ] ================================================
[2026-10-25 03:24:29,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:24:29
[2026-10-25 03:24:30,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:24:30,778.778 INFO    ] Initializing speech engine...
[2026-10-25 03:24:30,787.787 INFO    ] 2026-10-25 03:24:30
[2026-10-25 03:24:31,075.075 INFO    ] 2026-10-25 03:24:31
[2026-10-25 03:24:31,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:24:31,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:24:31,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:24:31,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:24:31,624.624 INFO    ] time= 25/10/2026 03:24:31
[2026-10-25 03:24:31,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:24:31,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:24:31,774.774 INFO    ] No existing commands found in stream
[2026-10-25 03:24:36,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:24:36,797.797 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 03:24:40,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:24:40,659.659 INFO    ] Checking for system updates...
[2026-10-25 03:24:40,697.697 INFO    ] 200
[2026-10-25 03:24:40,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:40,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:24:40,757.757 INFO    ] No update needed
[2026-10-25 03:24:40,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 03:24:40,794.794 INFO    ] 200
[2026-10-25 03:24:40,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:40,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:24:40,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:24:40,895.895 INFO    ] No camera update needed
[2026-10-25 03:24:40,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:24:40,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:24:40,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:24:40,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:24:42,949.949 INFO    ] ================================================
[2026-10-25 03:24:42,964.964 INFO    ] Launching Daemon at Sun Oct 25 03:24:42 IST 2026
[2026-10-25 03:24:42,974.974 INFO    ] ================================================
[2026-10-25 03:24:43,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:24:43
[2026-10-25 03:24:44,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:24:44,437.437 INFO    ] Initializing speech engine...
[2026-10-25 03:24:44,445.445 INFO    ] 2026-10-25 03:24:44
[2026-10-25 03:24:44,736.736 INFO    ] 2026-10-25 03:24:44
[2026-10-25 03:24:44,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:24:45,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:24:45,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:24:45,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:24:45,224.224 INFO    ] time= 25/10/2026 03:24:45
[2026-10-25 03:24:45,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:24:45,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:24:45,445.445 INFO    ] No existing commands found in stream
[2026-10-25 03:24:50,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:24:50,476.476 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 03:24:53,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:24:53,877.877 INFO    ] Checking for system updates...
[2026-10-25 03:24:53,919.919 INFO    ] 200
[2026-10-25 03:24:53,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:53,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:53,984.984 INFO    ] No update needed
[2026-10-25 03:24:53,987.987 INFO    ] Checking for camera pi updates...
[2026-10-25 03:24:54,021.021 INFO    ] 200
[2026-10-25 03:24:54,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:24:54,068.068 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:24:54,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:24:54,227.227 INFO    ] No camera update needed
[2026-10-25 03:24:54,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:24:54,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:24:54,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:24:54,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:24:56,284.284 INFO    ] ================================================
[2026-10-25 03:24:56,299.299 INFO    ] Launching Daemon at Sun Oct 25 03:24:56 IST 2026
[2026-10-25 03:24:56,310.310 INFO    ] ================================================
[2026-10-25 03:24:56,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:24:56
[2026-10-25 03:24:57,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:24:57,722.722 INFO    ] Initializing speech engine...
[2026-10-25 03:24:57,733.733 INFO    ] 2026-10-25 03:24:57
[2026-10-25 03:24:57,981.981 INFO    ] 2026-10-25 03:24:57
[2026-10-25 03:24:58,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:24:59,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:24:59,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:24:59,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:24:59,207.207 INFO    ] time= 25/10/2026 03:24:59
[2026-10-25 03:24:59,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:24:59,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:24:59,327.327 INFO    ] No existing commands found in stream
[2026-10-25 03:25:04,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:25:04,342.342 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 03:25:08,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:25:08,733.733 INFO    ] Checking for system updates...
[2026-10-25 03:25:08,773.773 INFO    ] 200
[2026-10-25 03:25:08,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:08,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:08,830.830 INFO    ] No update needed
[2026-10-25 03:25:08,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 03:25:08,867.867 INFO    ] 200
[2026-10-25 03:25:08,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:08,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:25:08,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:08,944.944 INFO    ] No camera update needed
[2026-10-25 03:25:08,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:25:08,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:25:08,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:25:08,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:25:11,999.999 INFO    ] ================================================
[2026-10-25 03:25:11,014.014 INFO    ] Launching Daemon at Sun Oct 25 03:25:11 IST 2026
[2026-10-25 03:25:11,025.025 INFO    ] ================================================
[2026-10-25 03:25:11,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:25:11
[2026-10-25 03:25:12,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:25:12,510.510 INFO    ] Initializing speech engine...
[2026-10-25 03:25:12,522.522 INFO    ] 2026-10-25 03:25:12
[2026-10-25 03:25:12,797.797 INFO    ] 2026-10-25 03:25:12
[2026-10-25 03:25:12,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:25:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:25:13,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:25:13,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:25:13,168.168 INFO    ] time= 25/10/2026 03:25:13
[2026-10-25 03:25:13,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:25:13,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:25:13,346.346 INFO    ] No existing commands found in stream
[2026-10-25 03:25:18,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:25:18,377.377 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 03:25:20,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:25:20,410.410 INFO    ] Checking for system updates...
[2026-10-25 03:25:20,447.447 INFO    ] 200
[2026-10-25 03:25:20,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:20,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:25:20,513.513 INFO    ] No update needed
[2026-10-25 03:25:20,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 03:25:20,553.553 INFO    ] 200
[2026-10-25 03:25:20,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:20,596.596 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:25:20,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:25:20,668.668 INFO    ] No camera update needed
[2026-10-25 03:25:20,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:25:20,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:25:20,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:25:20,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:25:22,724.724 INFO    ] ================================================
[2026-10-25 03:25:22,739.739 INFO    ] Launching Daemon at Sun Oct 25 03:25:22 IST 2026
[2026-10-25 03:25:22,750.750 INFO    ] ================================================
[2026-10-25 03:25:23,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:25:23
[2026-10-25 03:25:23,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:25:24,203.203 INFO    ] Initializing speech engine...
[2026-10-25 03:25:24,212.212 INFO    ] 2026-10-25 03:25:24
[2026-10-25 03:25:24,486.486 INFO    ] 2026-10-25 03:25:24
[2026-10-25 03:25:24,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:25:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:25:24,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:25:24,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:25:24,933.933 INFO    ] time= 25/10/2026 03:25:24
[2026-10-25 03:25:24,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:25:25,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:25:25,104.104 INFO    ] No existing commands found in stream
[2026-10-25 03:25:30,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:25:30,118.118 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 03:25:32,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:25:32,623.623 INFO    ] Checking for system updates...
[2026-10-25 03:25:32,666.666 INFO    ] 200
[2026-10-25 03:25:32,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:32,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:32,737.737 INFO    ] No update needed
[2026-10-25 03:25:32,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 03:25:32,792.792 INFO    ] 200
[2026-10-25 03:25:32,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:32,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:25:32,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:32,887.887 INFO    ] No camera update needed
[2026-10-25 03:25:32,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:25:32,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:25:32,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:25:32,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:25:34,947.947 INFO    ] ================================================
[2026-10-25 03:25:34,962.962 INFO    ] Launching Daemon at Sun Oct 25 03:25:34 IST 2026
[2026-10-25 03:25:34,973.973 INFO    ] ================================================
[2026-10-25 03:25:35,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:25:35
[2026-10-25 03:25:36,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:25:36,442.442 INFO    ] Initializing speech engine...
[2026-10-25 03:25:36,448.448 INFO    ] 2026-10-25 03:25:36
[2026-10-25 03:25:36,720.720 INFO    ] 2026-10-25 03:25:36
[2026-10-25 03:25:36,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:25:36,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:25:36,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:25:37,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:25:37,179.179 INFO    ] time= 25/10/2026 03:25:37
[2026-10-25 03:25:37,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:25:37,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:25:37,383.383 INFO    ] No existing commands found in stream
[2026-10-25 03:25:42,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:25:42,417.417 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 03:25:46,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:25:46,203.203 INFO    ] Checking for system updates...
[2026-10-25 03:25:46,239.239 INFO    ] 200
[2026-10-25 03:25:46,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:46,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:25:46,307.307 INFO    ] No update needed
[2026-10-25 03:25:46,309.309 INFO    ] Checking for camera pi updates...
[2026-10-25 03:25:46,342.342 INFO    ] 200
[2026-10-25 03:25:46,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:46,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:25:46,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:25:46,445.445 INFO    ] No camera update needed
[2026-10-25 03:25:46,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:25:46,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:25:46,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:25:46,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:25:48,501.501 INFO    ] ================================================
[2026-10-25 03:25:48,516.516 INFO    ] Launching Daemon at Sun Oct 25 03:25:48 IST 2026
[2026-10-25 03:25:48,527.527 INFO    ] ================================================
[2026-10-25 03:25:49,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:25:49
[2026-10-25 03:25:49,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:25:49,952.952 INFO    ] Initializing speech engine...
[2026-10-25 03:25:49,975.975 INFO    ] 2026-10-25 03:25:49
[2026-10-25 03:25:50,231.231 INFO    ] 2026-10-25 03:25:50
[2026-10-25 03:25:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:25:50,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:25:50,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:25:50,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:25:50,604.604 INFO    ] time= 25/10/2026 03:25:50
[2026-10-25 03:25:50,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:25:50,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:25:50,774.774 INFO    ] No existing commands found in stream
[2026-10-25 03:25:55,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:25:55,806.806 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 03:25:59,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:25:59,241.241 INFO    ] Checking for system updates...
[2026-10-25 03:25:59,283.283 INFO    ] 200
[2026-10-25 03:25:59,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:59,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:59,353.353 INFO    ] No update needed
[2026-10-25 03:25:59,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 03:25:59,395.395 INFO    ] 200
[2026-10-25 03:25:59,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:25:59,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:25:59,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:25:59,508.508 INFO    ] No camera update needed
[2026-10-25 03:25:59,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:25:59,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:25:59,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:25:59,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:26:01,578.578 INFO    ] ================================================
[2026-10-25 03:26:01,594.594 INFO    ] Launching Daemon at Sun Oct 25 03:26:01 IST 2026
[2026-10-25 03:26:01,606.606 INFO    ] ================================================
[2026-10-25 03:26:02,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:26:02
[2026-10-25 03:26:02,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:26:03,259.259 INFO    ] Initializing speech engine...
[2026-10-25 03:26:03,274.274 INFO    ] 2026-10-25 03:26:03
[2026-10-25 03:26:03,540.540 INFO    ] 2026-10-25 03:26:03
[2026-10-25 03:26:03,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:26:03,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:26:03,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:26:03,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:26:04,025.025 INFO    ] time= 25/10/2026 03:26:03
[2026-10-25 03:26:04,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:26:04,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:26:04,196.196 INFO    ] No existing commands found in stream
[2026-10-25 03:26:09,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:26:09,231.231 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 03:26:10,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:26:10,421.421 INFO    ] Checking for system updates...
[2026-10-25 03:26:10,462.462 INFO    ] 200
[2026-10-25 03:26:10,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:10,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:26:10,523.523 INFO    ] No update needed
[2026-10-25 03:26:10,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 03:26:10,560.560 INFO    ] 200
[2026-10-25 03:26:10,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:10,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:26:10,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:26:10,671.671 INFO    ] No camera update needed
[2026-10-25 03:26:10,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:26:10,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:26:10,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:26:10,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:26:12,727.727 INFO    ] ================================================
[2026-10-25 03:26:12,742.742 INFO    ] Launching Daemon at Sun Oct 25 03:26:12 IST 2026
[2026-10-25 03:26:12,752.752 INFO    ] ================================================
[2026-10-25 03:26:13,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:26:13
[2026-10-25 03:26:14,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:26:14,339.339 INFO    ] Initializing speech engine...
[2026-10-25 03:26:14,349.349 INFO    ] 2026-10-25 03:26:14
[2026-10-25 03:26:14,594.594 INFO    ] 2026-10-25 03:26:14
[2026-10-25 03:26:14,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:26:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:26:14,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:26:15,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:26:15,040.040 INFO    ] time= 25/10/2026 03:26:15
[2026-10-25 03:26:15,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:26:15,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:26:15,209.209 INFO    ] No existing commands found in stream
[2026-10-25 03:26:20,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:26:20,225.225 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 03:26:23,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:26:23,382.382 INFO    ] Checking for system updates...
[2026-10-25 03:26:23,426.426 INFO    ] 200
[2026-10-25 03:26:23,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:23,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:23,492.492 INFO    ] No update needed
[2026-10-25 03:26:23,494.494 INFO    ] Checking for camera pi updates...
[2026-10-25 03:26:23,529.529 INFO    ] 200
[2026-10-25 03:26:23,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:23,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:26:23,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:23,634.634 INFO    ] No camera update needed
[2026-10-25 03:26:23,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:26:23,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:26:23,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:26:23,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:26:25,690.690 INFO    ] ================================================
[2026-10-25 03:26:25,705.705 INFO    ] Launching Daemon at Sun Oct 25 03:26:25 IST 2026
[2026-10-25 03:26:25,715.715 INFO    ] ================================================
[2026-10-25 03:26:26,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:26:26
[2026-10-25 03:26:26,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:26:27,161.161 INFO    ] Initializing speech engine...
[2026-10-25 03:26:27,170.170 INFO    ] 2026-10-25 03:26:27
[2026-10-25 03:26:27,423.423 INFO    ] 2026-10-25 03:26:27
[2026-10-25 03:26:27,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:26:27,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:26:27,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:26:28,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:26:28,955.955 INFO    ] time= 25/10/2026 03:26:28
[2026-10-25 03:26:28,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:26:28,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:26:29,069.069 INFO    ] No existing commands found in stream
[2026-10-25 03:26:34,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:26:34,089.089 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 03:26:35,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:26:35,859.859 INFO    ] Checking for system updates...
[2026-10-25 03:26:35,895.895 INFO    ] 200
[2026-10-25 03:26:35,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:35,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:35,954.954 INFO    ] No update needed
[2026-10-25 03:26:35,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 03:26:35,991.991 INFO    ] 200
[2026-10-25 03:26:35,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:36,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:26:36,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:36,108.108 INFO    ] No camera update needed
[2026-10-25 03:26:36,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:26:36,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:26:36,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:26:36,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:26:38,164.164 INFO    ] ================================================
[2026-10-25 03:26:38,179.179 INFO    ] Launching Daemon at Sun Oct 25 03:26:38 IST 2026
[2026-10-25 03:26:38,189.189 INFO    ] ================================================
[2026-10-25 03:26:38,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:26:38
[2026-10-25 03:26:39,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:26:39,582.582 INFO    ] Initializing speech engine...
[2026-10-25 03:26:39,588.588 INFO    ] 2026-10-25 03:26:39
[2026-10-25 03:26:39,884.884 INFO    ] 2026-10-25 03:26:39
[2026-10-25 03:26:39,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:26:40,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:26:40,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:26:40,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:26:40,239.239 INFO    ] time= 25/10/2026 03:26:40
[2026-10-25 03:26:40,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:26:40,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:26:40,312.312 INFO    ] No existing commands found in stream
[2026-10-25 03:26:45,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:26:45,355.355 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 03:26:47,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:26:47,539.539 INFO    ] Checking for system updates...
[2026-10-25 03:26:47,575.575 INFO    ] 200
[2026-10-25 03:26:47,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:47,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:26:47,639.639 INFO    ] No update needed
[2026-10-25 03:26:47,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 03:26:47,675.675 INFO    ] 200
[2026-10-25 03:26:47,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:47,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:26:47,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:26:47,790.790 INFO    ] No camera update needed
[2026-10-25 03:26:47,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:26:47,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:26:47,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:26:47,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:26:49,844.844 INFO    ] ================================================
[2026-10-25 03:26:49,859.859 INFO    ] Launching Daemon at Sun Oct 25 03:26:49 IST 2026
[2026-10-25 03:26:49,869.869 INFO    ] ================================================
[2026-10-25 03:26:50,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:26:50
[2026-10-25 03:26:51,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:26:51,282.282 INFO    ] Initializing speech engine...
[2026-10-25 03:26:51,291.291 INFO    ] 2026-10-25 03:26:51
[2026-10-25 03:26:51,536.536 INFO    ] 2026-10-25 03:26:51
[2026-10-25 03:26:51,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:26:51,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:26:51,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:26:51,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:26:51,900.900 INFO    ] time= 25/10/2026 03:26:51
[2026-10-25 03:26:51,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:26:51,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:26:52,078.078 INFO    ] No existing commands found in stream
[2026-10-25 03:26:57,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:26:57,107.107 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 03:26:59,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:26:59,318.318 INFO    ] Checking for system updates...
[2026-10-25 03:26:59,359.359 INFO    ] 200
[2026-10-25 03:26:59,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:59,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:59,432.432 INFO    ] No update needed
[2026-10-25 03:26:59,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 03:26:59,474.474 INFO    ] 200
[2026-10-25 03:26:59,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:26:59,522.522 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:26:59,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:26:59,681.681 INFO    ] No camera update needed
[2026-10-25 03:26:59,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:26:59,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:26:59,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:26:59,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:27:01,739.739 INFO    ] ================================================
[2026-10-25 03:27:01,756.756 INFO    ] Launching Daemon at Sun Oct 25 03:27:01 IST 2026
[2026-10-25 03:27:01,773.773 INFO    ] ================================================
[2026-10-25 03:27:02,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:27:02
[2026-10-25 03:27:03,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:27:03,381.381 INFO    ] Initializing speech engine...
[2026-10-25 03:27:03,403.403 INFO    ] 2026-10-25 03:27:03
[2026-10-25 03:27:03,657.657 INFO    ] 2026-10-25 03:27:03
[2026-10-25 03:27:03,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:27:03,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:27:03,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:27:04,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:27:04,028.028 INFO    ] time= 25/10/2026 03:27:04
[2026-10-25 03:27:04,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:27:04,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:27:04,222.222 INFO    ] No existing commands found in stream
[2026-10-25 03:27:09,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:27:09,235.235 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 03:27:09,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:27:09,987.987 INFO    ] Checking for system updates...
[2026-10-25 03:27:10,024.024 INFO    ] 200
[2026-10-25 03:27:10,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:10,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:10,085.085 INFO    ] No update needed
[2026-10-25 03:27:10,087.087 INFO    ] Checking for camera pi updates...
[2026-10-25 03:27:10,133.133 INFO    ] 200
[2026-10-25 03:27:10,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:10,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:27:10,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:10,234.234 INFO    ] No camera update needed
[2026-10-25 03:27:10,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:27:10,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:27:10,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:27:10,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:27:12,290.290 INFO    ] ================================================
[2026-10-25 03:27:12,305.305 INFO    ] Launching Daemon at Sun Oct 25 03:27:12 IST 2026
[2026-10-25 03:27:12,315.315 INFO    ] ================================================
[2026-10-25 03:27:12,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:27:12
[2026-10-25 03:27:13,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:27:13,773.773 INFO    ] Initializing speech engine...
[2026-10-25 03:27:13,782.782 INFO    ] 2026-10-25 03:27:13
[2026-10-25 03:27:14,031.031 INFO    ] 2026-10-25 03:27:14
[2026-10-25 03:27:14,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:27:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:27:14,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:27:14,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:27:14,502.502 INFO    ] time= 25/10/2026 03:27:14
[2026-10-25 03:27:14,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:27:14,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:27:14,653.653 INFO    ] No existing commands found in stream
[2026-10-25 03:27:19,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:27:19,669.669 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 03:27:23,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:27:23,262.262 INFO    ] Checking for system updates...
[2026-10-25 03:27:23,303.303 INFO    ] 200
[2026-10-25 03:27:23,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:23,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:23,361.361 INFO    ] No update needed
[2026-10-25 03:27:23,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 03:27:23,398.398 INFO    ] 200
[2026-10-25 03:27:23,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:23,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:27:23,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:23,507.507 INFO    ] No camera update needed
[2026-10-25 03:27:23,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:27:23,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:27:23,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:27:23,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:27:25,564.564 INFO    ] ================================================
[2026-10-25 03:27:25,579.579 INFO    ] Launching Daemon at Sun Oct 25 03:27:25 IST 2026
[2026-10-25 03:27:25,592.592 INFO    ] ================================================
[2026-10-25 03:27:26,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:27:26
[2026-10-25 03:27:26,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:27:26,998.998 INFO    ] Initializing speech engine...
[2026-10-25 03:27:27,007.007 INFO    ] 2026-10-25 03:27:27
[2026-10-25 03:27:27,281.281 INFO    ] 2026-10-25 03:27:27
[2026-10-25 03:27:27,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:27:27,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:27:27,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:27:27,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:27:27,761.761 INFO    ] time= 25/10/2026 03:27:27
[2026-10-25 03:27:27,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:27:27,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:27:27,906.906 INFO    ] No existing commands found in stream
[2026-10-25 03:27:32,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:27:32,921.921 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 03:27:35,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:27:35,848.848 INFO    ] Checking for system updates...
[2026-10-25 03:27:35,888.888 INFO    ] 200
[2026-10-25 03:27:35,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:35,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:35,949.949 INFO    ] No update needed
[2026-10-25 03:27:35,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 03:27:35,990.990 INFO    ] 200
[2026-10-25 03:27:35,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:36,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:27:36,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:36,083.083 INFO    ] No camera update needed
[2026-10-25 03:27:36,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:27:36,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:27:36,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:27:36,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:27:38,140.140 INFO    ] ================================================
[2026-10-25 03:27:38,157.157 INFO    ] Launching Daemon at Sun Oct 25 03:27:38 IST 2026
[2026-10-25 03:27:38,168.168 INFO    ] ================================================
[2026-10-25 03:27:38,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:27:38
[2026-10-25 03:27:39,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:27:39,621.621 INFO    ] Initializing speech engine...
[2026-10-25 03:27:39,630.630 INFO    ] 2026-10-25 03:27:39
[2026-10-25 03:27:39,878.878 INFO    ] 2026-10-25 03:27:39
[2026-10-25 03:27:39,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:27:40,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:27:40,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:27:40,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:27:40,384.384 INFO    ] time= 25/10/2026 03:27:40
[2026-10-25 03:27:40,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:27:40,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:27:40,499.499 INFO    ] No existing commands found in stream
[2026-10-25 03:27:45,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:27:45,523.523 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 03:27:48,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:27:48,688.688 INFO    ] Checking for system updates...
[2026-10-25 03:27:48,724.724 INFO    ] 200
[2026-10-25 03:27:48,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:48,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:48,783.783 INFO    ] No update needed
[2026-10-25 03:27:48,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 03:27:48,819.819 INFO    ] 200
[2026-10-25 03:27:48,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:27:48,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:27:48,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:27:48,926.926 INFO    ] No camera update needed
[2026-10-25 03:27:48,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:27:48,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:27:48,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:27:48,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:27:50,984.984 INFO    ] ================================================
[2026-10-25 03:27:51,999.999 INFO    ] Launching Daemon at Sun Oct 25 03:27:50 IST 2026
[2026-10-25 03:27:51,011.011 INFO    ] ================================================
[2026-10-25 03:27:51,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:27:51
[2026-10-25 03:27:52,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:27:52,624.624 INFO    ] Initializing speech engine...
[2026-10-25 03:27:52,637.637 INFO    ] 2026-10-25 03:27:52
[2026-10-25 03:27:52,900.900 INFO    ] 2026-10-25 03:27:52
[2026-10-25 03:27:52,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:27:53,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:27:53,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:27:53,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:27:53,277.277 INFO    ] time= 25/10/2026 03:27:53
[2026-10-25 03:27:53,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:27:53,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:27:53,353.353 INFO    ] No existing commands found in stream
[2026-10-25 03:27:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:27:58,368.368 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 03:28:01,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:28:01,792.792 INFO    ] Checking for system updates...
[2026-10-25 03:28:01,832.832 INFO    ] 200
[2026-10-25 03:28:01,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:01,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:01,902.902 INFO    ] No update needed
[2026-10-25 03:28:01,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 03:28:01,954.954 INFO    ] 200
[2026-10-25 03:28:01,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:02,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:28:02,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:02,084.084 INFO    ] No camera update needed
[2026-10-25 03:28:02,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:28:02,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:28:02,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:28:02,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:28:04,150.150 INFO    ] ================================================
[2026-10-25 03:28:04,166.166 INFO    ] Launching Daemon at Sun Oct 25 03:28:04 IST 2026
[2026-10-25 03:28:04,178.178 INFO    ] ================================================
[2026-10-25 03:28:04,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:28:04
[2026-10-25 03:28:05,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:28:05,594.594 INFO    ] Initializing speech engine...
[2026-10-25 03:28:05,603.603 INFO    ] 2026-10-25 03:28:05
[2026-10-25 03:28:05,862.862 INFO    ] 2026-10-25 03:28:05
[2026-10-25 03:28:05,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:28:06,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:28:06,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:28:06,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:28:06,294.294 INFO    ] time= 25/10/2026 03:28:06
[2026-10-25 03:28:06,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:28:06,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:28:06,468.468 INFO    ] No existing commands found in stream
[2026-10-25 03:28:11,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:28:11,483.483 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 03:28:15,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:28:15,443.443 INFO    ] Checking for system updates...
[2026-10-25 03:28:15,479.479 INFO    ] 200
[2026-10-25 03:28:15,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:15,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:15,543.543 INFO    ] No update needed
[2026-10-25 03:28:15,546.546 INFO    ] Checking for camera pi updates...
[2026-10-25 03:28:15,580.580 INFO    ] 200
[2026-10-25 03:28:15,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:15,624.624 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:28:15,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:15,671.671 INFO    ] No camera update needed
[2026-10-25 03:28:15,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:28:15,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:28:15,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:28:15,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:28:17,725.725 INFO    ] ================================================
[2026-10-25 03:28:17,741.741 INFO    ] Launching Daemon at Sun Oct 25 03:28:17 IST 2026
[2026-10-25 03:28:17,752.752 INFO    ] ================================================
[2026-10-25 03:28:18,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:28:18
[2026-10-25 03:28:18,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:28:19,211.211 INFO    ] Initializing speech engine...
[2026-10-25 03:28:19,215.215 INFO    ] 2026-10-25 03:28:19
[2026-10-25 03:28:19,470.470 INFO    ] 2026-10-25 03:28:19
[2026-10-25 03:28:19,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:28:19,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:28:19,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:28:19,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:28:19,843.843 INFO    ] time= 25/10/2026 03:28:19
[2026-10-25 03:28:19,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:28:19,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:28:20,013.013 INFO    ] No existing commands found in stream
[2026-10-25 03:28:25,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:28:25,046.046 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 03:28:29,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:28:29,274.274 INFO    ] Checking for system updates...
[2026-10-25 03:28:29,310.310 INFO    ] 200
[2026-10-25 03:28:29,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:29,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:29,368.368 INFO    ] No update needed
[2026-10-25 03:28:29,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 03:28:29,408.408 INFO    ] 200
[2026-10-25 03:28:29,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:29,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:28:29,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:29,492.492 INFO    ] No camera update needed
[2026-10-25 03:28:29,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:28:29,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:28:29,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:28:29,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:28:31,550.550 INFO    ] ================================================
[2026-10-25 03:28:31,568.568 INFO    ] Launching Daemon at Sun Oct 25 03:28:31 IST 2026
[2026-10-25 03:28:31,581.581 INFO    ] ================================================
[2026-10-25 03:28:32,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:28:32
[2026-10-25 03:28:32,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:28:33,080.080 INFO    ] Initializing speech engine...
[2026-10-25 03:28:33,089.089 INFO    ] 2026-10-25 03:28:33
[2026-10-25 03:28:33,389.389 INFO    ] 2026-10-25 03:28:33
[2026-10-25 03:28:33,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:28:33,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:28:33,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:28:33,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:28:33,865.865 INFO    ] time= 25/10/2026 03:28:33
[2026-10-25 03:28:33,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:28:33,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:28:34,043.043 INFO    ] No existing commands found in stream
[2026-10-25 03:28:39,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:28:39,057.057 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 03:28:41,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:28:41,331.331 INFO    ] Checking for system updates...
[2026-10-25 03:28:41,373.373 INFO    ] 200
[2026-10-25 03:28:41,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:41,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:41,439.439 INFO    ] No update needed
[2026-10-25 03:28:41,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 03:28:41,477.477 INFO    ] 200
[2026-10-25 03:28:41,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:41,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:28:41,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:41,567.567 INFO    ] No camera update needed
[2026-10-25 03:28:41,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:28:41,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:28:41,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:28:41,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:28:43,626.626 INFO    ] ================================================
[2026-10-25 03:28:43,641.641 INFO    ] Launching Daemon at Sun Oct 25 03:28:43 IST 2026
[2026-10-25 03:28:43,652.652 INFO    ] ================================================
[2026-10-25 03:28:44,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:28:44
[2026-10-25 03:28:44,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:28:45,117.117 INFO    ] Initializing speech engine...
[2026-10-25 03:28:45,127.127 INFO    ] 2026-10-25 03:28:45
[2026-10-25 03:28:45,394.394 INFO    ] 2026-10-25 03:28:45
[2026-10-25 03:28:45,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:28:45,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:28:45,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:28:45,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:28:45,934.934 INFO    ] time= 25/10/2026 03:28:45
[2026-10-25 03:28:45,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:28:45,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:28:46,068.068 INFO    ] No existing commands found in stream
[2026-10-25 03:28:51,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:28:51,096.096 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 03:28:51,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:28:51,634.634 INFO    ] Checking for system updates...
[2026-10-25 03:28:51,675.675 INFO    ] 200
[2026-10-25 03:28:51,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:51,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:51,735.735 INFO    ] No update needed
[2026-10-25 03:28:51,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 03:28:51,775.775 INFO    ] 200
[2026-10-25 03:28:51,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:28:51,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:28:51,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:28:51,883.883 INFO    ] No camera update needed
[2026-10-25 03:28:51,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:28:51,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:28:51,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:28:51,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:28:53,942.942 INFO    ] ================================================
[2026-10-25 03:28:53,958.958 INFO    ] Launching Daemon at Sun Oct 25 03:28:53 IST 2026
[2026-10-25 03:28:53,969.969 INFO    ] ================================================
[2026-10-25 03:28:54,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:28:54
[2026-10-25 03:28:55,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:28:55,453.453 INFO    ] Initializing speech engine...
[2026-10-25 03:28:55,462.462 INFO    ] 2026-10-25 03:28:55
[2026-10-25 03:28:55,711.711 INFO    ] 2026-10-25 03:28:55
[2026-10-25 03:28:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:28:55,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:28:55,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:28:56,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:28:56,085.085 INFO    ] time= 25/10/2026 03:28:56
[2026-10-25 03:28:56,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:28:56,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:28:56,261.261 INFO    ] No existing commands found in stream
[2026-10-25 03:29:01,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:01,301.301 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 03:29:02,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:29:02,101.101 INFO    ] Checking for system updates...
[2026-10-25 03:29:02,154.154 INFO    ] 200
[2026-10-25 03:29:02,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:02,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:02,221.221 INFO    ] No update needed
[2026-10-25 03:29:02,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:02,269.269 INFO    ] 200
[2026-10-25 03:29:02,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:02,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:02,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:02,361.361 INFO    ] No camera update needed
[2026-10-25 03:29:02,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:02,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:02,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:02,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:29:04,423.423 INFO    ] ================================================
[2026-10-25 03:29:04,439.439 INFO    ] Launching Daemon at Sun Oct 25 03:29:04 IST 2026
[2026-10-25 03:29:04,450.450 INFO    ] ================================================
[2026-10-25 03:29:05,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:29:05
[2026-10-25 03:29:05,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:29:06,110.110 INFO    ] Initializing speech engine...
[2026-10-25 03:29:06,122.122 INFO    ] 2026-10-25 03:29:06
[2026-10-25 03:29:06,403.403 INFO    ] 2026-10-25 03:29:06
[2026-10-25 03:29:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:29:06,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:29:06,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:29:06,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:29:06,774.774 INFO    ] time= 25/10/2026 03:29:06
[2026-10-25 03:29:06,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:29:06,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:29:06,925.925 INFO    ] No existing commands found in stream
[2026-10-25 03:29:11,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:11,948.948 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 03:29:13,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:29:13,129.129 INFO    ] Checking for system updates...
[2026-10-25 03:29:13,170.170 INFO    ] 200
[2026-10-25 03:29:13,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:13,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:13,229.229 INFO    ] No update needed
[2026-10-25 03:29:13,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:13,269.269 INFO    ] 200
[2026-10-25 03:29:13,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:13,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:13,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:13,366.366 INFO    ] No camera update needed
[2026-10-25 03:29:13,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:13,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:13,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:13,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:29:15,424.424 INFO    ] ================================================
[2026-10-25 03:29:15,439.439 INFO    ] Launching Daemon at Sun Oct 25 03:29:15 IST 2026
[2026-10-25 03:29:15,450.450 INFO    ] ================================================
[2026-10-25 03:29:16,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:29:16
[2026-10-25 03:29:16,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:29:16,875.875 INFO    ] Initializing speech engine...
[2026-10-25 03:29:16,885.885 INFO    ] 2026-10-25 03:29:16
[2026-10-25 03:29:17,130.130 INFO    ] 2026-10-25 03:29:17
[2026-10-25 03:29:17,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:29:17,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:29:17,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:29:17,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:29:17,620.620 INFO    ] time= 25/10/2026 03:29:17
[2026-10-25 03:29:17,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:29:17,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:29:17,764.764 INFO    ] No existing commands found in stream
[2026-10-25 03:29:22,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:22,785.785 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 03:29:24,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:29:24,439.439 INFO    ] Checking for system updates...
[2026-10-25 03:29:24,475.475 INFO    ] 200
[2026-10-25 03:29:24,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:24,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:24,532.532 INFO    ] No update needed
[2026-10-25 03:29:24,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:24,568.568 INFO    ] 200
[2026-10-25 03:29:24,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:24,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:24,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:24,682.682 INFO    ] No camera update needed
[2026-10-25 03:29:24,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:24,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:24,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:24,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:29:26,737.737 INFO    ] ================================================
[2026-10-25 03:29:26,753.753 INFO    ] Launching Daemon at Sun Oct 25 03:29:26 IST 2026
[2026-10-25 03:29:26,764.764 INFO    ] ================================================
[2026-10-25 03:29:27,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:29:27
[2026-10-25 03:29:27,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:29:28,168.168 INFO    ] Initializing speech engine...
[2026-10-25 03:29:28,176.176 INFO    ] 2026-10-25 03:29:28
[2026-10-25 03:29:28,466.466 INFO    ] 2026-10-25 03:29:28
[2026-10-25 03:29:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:29:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:29:29,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:29:29,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:29:29,286.286 INFO    ] time= 25/10/2026 03:29:29
[2026-10-25 03:29:29,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:29:29,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:29:29,494.494 INFO    ] No existing commands found in stream
[2026-10-25 03:29:34,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:34,522.522 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 03:29:36,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:29:36,514.514 INFO    ] Checking for system updates...
[2026-10-25 03:29:36,554.554 INFO    ] 200
[2026-10-25 03:29:36,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:36,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:36,612.612 INFO    ] No update needed
[2026-10-25 03:29:36,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:36,648.648 INFO    ] 200
[2026-10-25 03:29:36,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:36,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:36,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:36,756.756 INFO    ] No camera update needed
[2026-10-25 03:29:36,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:36,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:36,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:36,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:29:38,811.811 INFO    ] ================================================
[2026-10-25 03:29:38,827.827 INFO    ] Launching Daemon at Sun Oct 25 03:29:38 IST 2026
[2026-10-25 03:29:38,839.839 INFO    ] ================================================
[2026-10-25 03:29:39,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:29:39
[2026-10-25 03:29:40,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:29:40,280.280 INFO    ] Initializing speech engine...
[2026-10-25 03:29:40,293.293 INFO    ] 2026-10-25 03:29:40
[2026-10-25 03:29:40,556.556 INFO    ] 2026-10-25 03:29:40
[2026-10-25 03:29:40,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:29:40,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:29:40,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:29:40,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:29:40,946.946 INFO    ] time= 25/10/2026 03:29:40
[2026-10-25 03:29:40,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:29:40,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:29:41,127.127 INFO    ] No existing commands found in stream
[2026-10-25 03:29:46,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:46,155.155 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 03:29:46,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:29:46,762.762 INFO    ] Checking for system updates...
[2026-10-25 03:29:46,798.798 INFO    ] 200
[2026-10-25 03:29:46,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:46,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:46,863.863 INFO    ] No update needed
[2026-10-25 03:29:46,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:46,899.899 INFO    ] 200
[2026-10-25 03:29:46,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:46,947.947 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:46,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:29:46,998.998 INFO    ] No camera update needed
[2026-10-25 03:29:47,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:47,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:47,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:47,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:29:49,059.059 INFO    ] ================================================
[2026-10-25 03:29:49,075.075 INFO    ] Launching Daemon at Sun Oct 25 03:29:49 IST 2026
[2026-10-25 03:29:49,087.087 INFO    ] ================================================
[2026-10-25 03:29:49,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:29:49
[2026-10-25 03:29:50,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:29:50,701.701 INFO    ] Initializing speech engine...
[2026-10-25 03:29:50,708.708 INFO    ] 2026-10-25 03:29:50
[2026-10-25 03:29:50,973.973 INFO    ] 2026-10-25 03:29:50
[2026-10-25 03:29:51,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:29:51,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:29:51,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:29:51,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:29:51,350.350 INFO    ] time= 25/10/2026 03:29:51
[2026-10-25 03:29:51,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:29:51,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:29:51,475.475 INFO    ] No existing commands found in stream
[2026-10-25 03:29:56,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:29:56,491.491 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 03:29:59,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:29:59,279.279 INFO    ] Checking for system updates...
[2026-10-25 03:29:59,315.315 INFO    ] 200
[2026-10-25 03:29:59,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:59,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:59,372.372 INFO    ] No update needed
[2026-10-25 03:29:59,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 03:29:59,412.412 INFO    ] 200
[2026-10-25 03:29:59,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:29:59,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:29:59,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:29:59,504.504 INFO    ] No camera update needed
[2026-10-25 03:29:59,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:29:59,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:29:59,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:29:59,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:30:01,604.604 INFO    ] ================================================
[2026-10-25 03:30:01,685.685 INFO    ] Launching Daemon at Sun Oct 25 03:30:01 IST 2026
[2026-10-25 03:30:01,824.824 INFO    ] ================================================
[2026-10-25 03:30:02,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:30:02
[2026-10-25 03:30:03,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:30:04,091.091 INFO    ] Initializing speech engine...
[2026-10-25 03:30:04,096.096 INFO    ] 2026-10-25 03:30:04
[2026-10-25 03:30:04,389.389 INFO    ] 2026-10-25 03:30:04
[2026-10-25 03:30:04,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:30:04,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:30:04,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:30:04,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:30:04,848.848 INFO    ] time= 25/10/2026 03:30:04
[2026-10-25 03:30:04,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:30:04,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:30:04,991.991 INFO    ] No existing commands found in stream
[2026-10-25 03:30:10,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:30:10,006.006 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 03:30:11,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:30:11,595.595 INFO    ] Checking for system updates...
[2026-10-25 03:30:11,631.631 INFO    ] 200
[2026-10-25 03:30:11,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:11,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:30:11,696.696 INFO    ] No update needed
[2026-10-25 03:30:11,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 03:30:11,733.733 INFO    ] 200
[2026-10-25 03:30:11,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:11,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:30:11,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:30:11,837.837 INFO    ] No camera update needed
[2026-10-25 03:30:11,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:30:11,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:30:11,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:30:11,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:30:13,894.894 INFO    ] ================================================
[2026-10-25 03:30:13,910.910 INFO    ] Launching Daemon at Sun Oct 25 03:30:13 IST 2026
[2026-10-25 03:30:13,922.922 INFO    ] ================================================
[2026-10-25 03:30:14,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:30:14
[2026-10-25 03:30:15,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:30:15,553.553 INFO    ] Initializing speech engine...
[2026-10-25 03:30:15,566.566 INFO    ] 2026-10-25 03:30:15
[2026-10-25 03:30:15,847.847 INFO    ] 2026-10-25 03:30:15
[2026-10-25 03:30:15,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:30:16,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:30:16,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:30:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:30:16,303.303 INFO    ] time= 25/10/2026 03:30:16
[2026-10-25 03:30:16,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:30:16,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:30:16,481.481 INFO    ] No existing commands found in stream
[2026-10-25 03:30:21,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:30:21,510.510 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 03:30:24,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:30:24,673.673 INFO    ] Checking for system updates...
[2026-10-25 03:30:24,724.724 INFO    ] 200
[2026-10-25 03:30:24,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:24,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:30:24,802.802 INFO    ] No update needed
[2026-10-25 03:30:24,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 03:30:24,848.848 INFO    ] 200
[2026-10-25 03:30:24,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:24,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:30:24,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:30:24,956.956 INFO    ] No camera update needed
[2026-10-25 03:30:24,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:30:24,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:30:24,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:30:24,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:30:27,019.019 INFO    ] ================================================
[2026-10-25 03:30:27,035.035 INFO    ] Launching Daemon at Sun Oct 25 03:30:27 IST 2026
[2026-10-25 03:30:27,047.047 INFO    ] ================================================
[2026-10-25 03:30:27,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:30:27
[2026-10-25 03:30:28,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:30:28,665.665 INFO    ] Initializing speech engine...
[2026-10-25 03:30:28,673.673 INFO    ] 2026-10-25 03:30:28
[2026-10-25 03:30:28,953.953 INFO    ] 2026-10-25 03:30:28
[2026-10-25 03:30:29,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:30:29,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:30:29,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:30:29,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:30:29,440.440 INFO    ] time= 25/10/2026 03:30:29
[2026-10-25 03:30:29,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:30:29,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:30:29,587.587 INFO    ] No existing commands found in stream
[2026-10-25 03:30:34,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:30:34,626.626 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 03:30:38,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:30:38,870.870 INFO    ] Checking for system updates...
[2026-10-25 03:30:38,912.912 INFO    ] 200
[2026-10-25 03:30:38,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 03:30:38,919.919 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 03:30:38,922.922 INFO    ] Checking for camera pi updates...
[2026-10-25 03:30:38,971.971 INFO    ] 200
[2026-10-25 03:30:38,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 03:30:38,978.978 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 03:30:38,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:30:38,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:30:38,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:30:38,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:30:41,039.039 INFO    ] ================================================
[2026-10-25 03:30:41,055.055 INFO    ] Launching Daemon at Sun Oct 25 03:30:41 IST 2026
[2026-10-25 03:30:41,066.066 INFO    ] ================================================
[2026-10-25 03:30:41,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:30:41
[2026-10-25 03:30:42,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:30:42,503.503 INFO    ] Initializing speech engine...
[2026-10-25 03:30:42,515.515 INFO    ] 2026-10-25 03:30:42
[2026-10-25 03:30:42,784.784 INFO    ] 2026-10-25 03:30:42
[2026-10-25 03:30:42,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:30:42,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:30:43,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:30:43,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:30:43,163.163 INFO    ] time= 25/10/2026 03:30:43
[2026-10-25 03:30:43,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:30:43,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:30:43,343.343 INFO    ] No existing commands found in stream
[2026-10-25 03:30:48,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:30:48,367.367 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 03:30:52,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:30:52,090.090 INFO    ] Checking for system updates...
[2026-10-25 03:30:52,130.130 INFO    ] 200
[2026-10-25 03:30:52,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:52,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:30:52,188.188 INFO    ] No update needed
[2026-10-25 03:30:52,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 03:30:52,226.226 INFO    ] 200
[2026-10-25 03:30:52,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:30:52,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:30:52,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:30:52,329.329 INFO    ] No camera update needed
[2026-10-25 03:30:52,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:30:52,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:30:52,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:30:52,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:30:54,387.387 INFO    ] ================================================
[2026-10-25 03:30:54,403.403 INFO    ] Launching Daemon at Sun Oct 25 03:30:54 IST 2026
[2026-10-25 03:30:54,413.413 INFO    ] ================================================
[2026-10-25 03:30:54,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:30:54
[2026-10-25 03:30:55,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:30:55,819.819 INFO    ] Initializing speech engine...
[2026-10-25 03:30:55,826.826 INFO    ] 2026-10-25 03:30:55
[2026-10-25 03:30:56,127.127 INFO    ] 2026-10-25 03:30:56
[2026-10-25 03:30:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:30:56,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:30:56,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:30:56,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:30:56,525.525 INFO    ] time= 25/10/2026 03:30:56
[2026-10-25 03:30:56,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:30:56,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:30:56,633.633 INFO    ] No existing commands found in stream
[2026-10-25 03:31:01,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:31:01,646.646 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 03:31:05,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:31:05,677.677 INFO    ] Checking for system updates...
[2026-10-25 03:31:05,713.713 INFO    ] 200
[2026-10-25 03:31:05,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:05,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:05,773.773 INFO    ] No update needed
[2026-10-25 03:31:05,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 03:31:05,809.809 INFO    ] 200
[2026-10-25 03:31:05,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:05,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:31:05,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:05,902.902 INFO    ] No camera update needed
[2026-10-25 03:31:05,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:31:05,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:31:05,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:31:05,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:31:07,958.958 INFO    ] ================================================
[2026-10-25 03:31:07,974.974 INFO    ] Launching Daemon at Sun Oct 25 03:31:07 IST 2026
[2026-10-25 03:31:07,986.986 INFO    ] ================================================
[2026-10-25 03:31:08,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:31:08
[2026-10-25 03:31:09,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:31:09,448.448 INFO    ] Initializing speech engine...
[2026-10-25 03:31:09,455.455 INFO    ] 2026-10-25 03:31:09
[2026-10-25 03:31:09,718.718 INFO    ] 2026-10-25 03:31:09
[2026-10-25 03:31:09,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:31:09,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:31:10,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:31:10,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:31:10,205.205 INFO    ] time= 25/10/2026 03:31:10
[2026-10-25 03:31:10,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:31:10,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:31:10,403.403 INFO    ] No existing commands found in stream
[2026-10-25 03:31:15,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:31:15,430.430 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 03:31:17,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:31:17,513.513 INFO    ] Checking for system updates...
[2026-10-25 03:31:17,550.550 INFO    ] 200
[2026-10-25 03:31:17,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:17,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:17,608.608 INFO    ] No update needed
[2026-10-25 03:31:17,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 03:31:17,649.649 INFO    ] 200
[2026-10-25 03:31:17,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:17,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:31:17,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:17,752.752 INFO    ] No camera update needed
[2026-10-25 03:31:17,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:31:17,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:31:17,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:31:17,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:31:19,807.807 INFO    ] ================================================
[2026-10-25 03:31:19,823.823 INFO    ] Launching Daemon at Sun Oct 25 03:31:19 IST 2026
[2026-10-25 03:31:19,834.834 INFO    ] ================================================
[2026-10-25 03:31:20,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:31:20
[2026-10-25 03:31:20,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:31:21,253.253 INFO    ] Initializing speech engine...
[2026-10-25 03:31:21,262.262 INFO    ] 2026-10-25 03:31:21
[2026-10-25 03:31:21,510.510 INFO    ] 2026-10-25 03:31:21
[2026-10-25 03:31:21,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:31:21,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:31:21,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:31:21,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:31:21,887.887 INFO    ] time= 25/10/2026 03:31:21
[2026-10-25 03:31:21,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:31:21,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:31:22,039.039 INFO    ] No existing commands found in stream
[2026-10-25 03:31:27,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:31:27,062.062 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 03:31:30,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:31:30,790.790 INFO    ] Checking for system updates...
[2026-10-25 03:31:30,826.826 INFO    ] 200
[2026-10-25 03:31:30,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:30,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:30,885.885 INFO    ] No update needed
[2026-10-25 03:31:30,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 03:31:30,922.922 INFO    ] 200
[2026-10-25 03:31:30,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:30,965.965 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:31:31,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:31,019.019 INFO    ] No camera update needed
[2026-10-25 03:31:31,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:31:31,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:31:31,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:31:31,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:31:33,075.075 INFO    ] ================================================
[2026-10-25 03:31:33,091.091 INFO    ] Launching Daemon at Sun Oct 25 03:31:33 IST 2026
[2026-10-25 03:31:33,103.103 INFO    ] ================================================
[2026-10-25 03:31:33,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:31:33
[2026-10-25 03:31:34,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:31:34,550.550 INFO    ] Initializing speech engine...
[2026-10-25 03:31:34,560.560 INFO    ] 2026-10-25 03:31:34
[2026-10-25 03:31:34,821.821 INFO    ] 2026-10-25 03:31:34
[2026-10-25 03:31:34,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:31:35,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:31:35,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:31:35,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:31:35,310.310 INFO    ] time= 25/10/2026 03:31:35
[2026-10-25 03:31:35,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:31:35,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:31:35,488.488 INFO    ] No existing commands found in stream
[2026-10-25 03:31:40,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:31:40,516.516 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 03:31:43,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:31:43,983.983 INFO    ] Checking for system updates...
[2026-10-25 03:31:44,019.019 INFO    ] 200
[2026-10-25 03:31:44,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:44,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:44,076.076 INFO    ] No update needed
[2026-10-25 03:31:44,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 03:31:44,116.116 INFO    ] 200
[2026-10-25 03:31:44,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:44,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:31:44,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:44,220.220 INFO    ] No camera update needed
[2026-10-25 03:31:44,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:31:44,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:31:44,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:31:44,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:31:46,276.276 INFO    ] ================================================
[2026-10-25 03:31:46,292.292 INFO    ] Launching Daemon at Sun Oct 25 03:31:46 IST 2026
[2026-10-25 03:31:46,303.303 INFO    ] ================================================
[2026-10-25 03:31:46,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:31:46
[2026-10-25 03:31:47,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:31:47,772.772 INFO    ] Initializing speech engine...
[2026-10-25 03:31:47,786.786 INFO    ] 2026-10-25 03:31:47
[2026-10-25 03:31:48,050.050 INFO    ] 2026-10-25 03:31:48
[2026-10-25 03:31:48,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:31:48,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:31:48,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:31:48,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:31:48,542.542 INFO    ] time= 25/10/2026 03:31:48
[2026-10-25 03:31:48,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:31:48,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:31:48,680.680 INFO    ] No existing commands found in stream
[2026-10-25 03:31:53,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:31:53,697.697 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 03:31:54,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:31:54,144.144 INFO    ] Checking for system updates...
[2026-10-25 03:31:54,180.180 INFO    ] 200
[2026-10-25 03:31:54,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:54,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:54,238.238 INFO    ] No update needed
[2026-10-25 03:31:54,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 03:31:54,277.277 INFO    ] 200
[2026-10-25 03:31:54,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:31:54,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:31:54,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:31:54,379.379 INFO    ] No camera update needed
[2026-10-25 03:31:54,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:31:54,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:31:54,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:31:54,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:31:56,441.441 INFO    ] ================================================
[2026-10-25 03:31:56,456.456 INFO    ] Launching Daemon at Sun Oct 25 03:31:56 IST 2026
[2026-10-25 03:31:56,468.468 INFO    ] ================================================
[2026-10-25 03:31:57,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:31:57
[2026-10-25 03:31:57,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:31:57,887.887 INFO    ] Initializing speech engine...
[2026-10-25 03:31:57,896.896 INFO    ] 2026-10-25 03:31:57
[2026-10-25 03:31:58,143.143 INFO    ] 2026-10-25 03:31:58
[2026-10-25 03:31:58,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:31:59,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:31:59,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:31:59,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:31:59,359.359 INFO    ] time= 25/10/2026 03:31:59
[2026-10-25 03:31:59,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:31:59,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:31:59,464.464 INFO    ] No existing commands found in stream
[2026-10-25 03:32:04,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:32:04,486.486 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 03:32:08,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:32:08,773.773 INFO    ] Checking for system updates...
[2026-10-25 03:32:08,811.811 INFO    ] 200
[2026-10-25 03:32:08,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:08,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:08,869.869 INFO    ] No update needed
[2026-10-25 03:32:08,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 03:32:08,908.908 INFO    ] 200
[2026-10-25 03:32:08,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:08,955.955 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:32:09,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:09,014.014 INFO    ] No camera update needed
[2026-10-25 03:32:09,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:32:09,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:32:09,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:32:09,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:32:11,070.070 INFO    ] ================================================
[2026-10-25 03:32:11,086.086 INFO    ] Launching Daemon at Sun Oct 25 03:32:11 IST 2026
[2026-10-25 03:32:11,097.097 INFO    ] ================================================
[2026-10-25 03:32:11,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:32:11
[2026-10-25 03:32:12,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:32:12,653.653 INFO    ] Initializing speech engine...
[2026-10-25 03:32:12,666.666 INFO    ] 2026-10-25 03:32:12
[2026-10-25 03:32:12,946.946 INFO    ] 2026-10-25 03:32:12
[2026-10-25 03:32:12,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:32:13,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:32:13,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:32:13,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:32:13,475.475 INFO    ] time= 25/10/2026 03:32:13
[2026-10-25 03:32:13,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:32:13,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:32:13,615.615 INFO    ] No existing commands found in stream
[2026-10-25 03:32:18,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:32:18,643.643 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 03:32:19,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:32:19,146.146 INFO    ] Checking for system updates...
[2026-10-25 03:32:19,183.183 INFO    ] 200
[2026-10-25 03:32:19,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:19,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:32:19,247.247 INFO    ] No update needed
[2026-10-25 03:32:19,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 03:32:19,283.283 INFO    ] 200
[2026-10-25 03:32:19,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:19,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:32:19,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:32:19,388.388 INFO    ] No camera update needed
[2026-10-25 03:32:19,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:32:19,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:32:19,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:32:19,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:32:21,447.447 INFO    ] ================================================
[2026-10-25 03:32:21,463.463 INFO    ] Launching Daemon at Sun Oct 25 03:32:21 IST 2026
[2026-10-25 03:32:21,474.474 INFO    ] ================================================
[2026-10-25 03:32:22,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:32:22
[2026-10-25 03:32:22,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:32:22,918.918 INFO    ] Initializing speech engine...
[2026-10-25 03:32:22,938.938 INFO    ] 2026-10-25 03:32:22
[2026-10-25 03:32:23,215.215 INFO    ] 2026-10-25 03:32:23
[2026-10-25 03:32:23,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:32:23,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:32:23,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:32:23,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:32:23,584.584 INFO    ] time= 25/10/2026 03:32:23
[2026-10-25 03:32:23,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:32:23,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:32:23,705.705 INFO    ] No existing commands found in stream
[2026-10-25 03:32:28,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:32:28,720.720 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 03:32:32,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:32:32,969.969 INFO    ] Checking for system updates...
[2026-10-25 03:32:33,005.005 INFO    ] 200
[2026-10-25 03:32:33,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:33,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:33,064.064 INFO    ] No update needed
[2026-10-25 03:32:33,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 03:32:33,103.103 INFO    ] 200
[2026-10-25 03:32:33,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:33,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:32:33,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:33,199.199 INFO    ] No camera update needed
[2026-10-25 03:32:33,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:32:33,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:32:33,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:32:33,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:32:35,253.253 INFO    ] ================================================
[2026-10-25 03:32:35,269.269 INFO    ] Launching Daemon at Sun Oct 25 03:32:35 IST 2026
[2026-10-25 03:32:35,280.280 INFO    ] ================================================
[2026-10-25 03:32:35,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:32:35
[2026-10-25 03:32:36,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:32:36,835.835 INFO    ] Initializing speech engine...
[2026-10-25 03:32:36,842.842 INFO    ] 2026-10-25 03:32:36
[2026-10-25 03:32:37,125.125 INFO    ] 2026-10-25 03:32:37
[2026-10-25 03:32:37,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:32:37,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:32:37,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:32:37,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:32:37,620.620 INFO    ] time= 25/10/2026 03:32:37
[2026-10-25 03:32:37,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:32:37,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:32:37,811.811 INFO    ] No existing commands found in stream
[2026-10-25 03:32:42,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:32:42,843.843 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 03:32:46,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:32:46,525.525 INFO    ] Checking for system updates...
[2026-10-25 03:32:46,562.562 INFO    ] 200
[2026-10-25 03:32:46,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:46,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:46,625.625 INFO    ] No update needed
[2026-10-25 03:32:46,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 03:32:46,668.668 INFO    ] 200
[2026-10-25 03:32:46,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:46,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:32:46,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:46,768.768 INFO    ] No camera update needed
[2026-10-25 03:32:46,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:32:46,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:32:46,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:32:46,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:32:48,823.823 INFO    ] ================================================
[2026-10-25 03:32:48,838.838 INFO    ] Launching Daemon at Sun Oct 25 03:32:48 IST 2026
[2026-10-25 03:32:48,849.849 INFO    ] ================================================
[2026-10-25 03:32:49,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:32:49
[2026-10-25 03:32:49,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:32:50,264.264 INFO    ] Initializing speech engine...
[2026-10-25 03:32:50,283.283 INFO    ] 2026-10-25 03:32:50
[2026-10-25 03:32:50,542.542 INFO    ] 2026-10-25 03:32:50
[2026-10-25 03:32:50,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:32:50,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:32:50,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:32:50,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:32:50,942.942 INFO    ] time= 25/10/2026 03:32:50
[2026-10-25 03:32:50,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:32:50,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:32:51,093.093 INFO    ] No existing commands found in stream
[2026-10-25 03:32:56,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:32:56,122.122 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 03:32:59,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:32:59,329.329 INFO    ] Checking for system updates...
[2026-10-25 03:32:59,365.365 INFO    ] 200
[2026-10-25 03:32:59,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:59,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:59,423.423 INFO    ] No update needed
[2026-10-25 03:32:59,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 03:32:59,460.460 INFO    ] 200
[2026-10-25 03:32:59,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:32:59,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:32:59,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:32:59,568.568 INFO    ] No camera update needed
[2026-10-25 03:32:59,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:32:59,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:32:59,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:32:59,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:33:01,628.628 INFO    ] ================================================
[2026-10-25 03:33:01,650.650 INFO    ] Launching Daemon at Sun Oct 25 03:33:01 IST 2026
[2026-10-25 03:33:01,663.663 INFO    ] ================================================
[2026-10-25 03:33:02,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:33:02
[2026-10-25 03:33:03,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:33:03,305.305 INFO    ] Initializing speech engine...
[2026-10-25 03:33:03,318.318 INFO    ] 2026-10-25 03:33:03
[2026-10-25 03:33:03,579.579 INFO    ] 2026-10-25 03:33:03
[2026-10-25 03:33:03,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:33:03,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:33:03,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:33:03,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:33:04,026.026 INFO    ] time= 25/10/2026 03:33:03
[2026-10-25 03:33:04,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:33:04,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:33:04,171.171 INFO    ] No existing commands found in stream
[2026-10-25 03:33:09,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:33:09,186.186 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 03:33:12,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:33:12,749.749 INFO    ] Checking for system updates...
[2026-10-25 03:33:12,785.785 INFO    ] 200
[2026-10-25 03:33:12,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:12,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:12,847.847 INFO    ] No update needed
[2026-10-25 03:33:12,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 03:33:12,885.885 INFO    ] 200
[2026-10-25 03:33:12,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:12,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:33:13,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:13,085.085 INFO    ] No camera update needed
[2026-10-25 03:33:13,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:33:13,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:33:13,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:33:13,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:33:15,141.141 INFO    ] ================================================
[2026-10-25 03:33:15,157.157 INFO    ] Launching Daemon at Sun Oct 25 03:33:15 IST 2026
[2026-10-25 03:33:15,168.168 INFO    ] ================================================
[2026-10-25 03:33:15,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:33:15
[2026-10-25 03:33:16,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:33:16,601.601 INFO    ] Initializing speech engine...
[2026-10-25 03:33:16,622.622 INFO    ] 2026-10-25 03:33:16
[2026-10-25 03:33:16,881.881 INFO    ] 2026-10-25 03:33:16
[2026-10-25 03:33:16,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:33:17,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:33:17,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:33:17,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:33:17,255.255 INFO    ] time= 25/10/2026 03:33:17
[2026-10-25 03:33:17,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:33:17,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:33:17,419.419 INFO    ] No existing commands found in stream
[2026-10-25 03:33:22,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:33:22,452.452 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 03:33:23,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:33:23,959.959 INFO    ] Checking for system updates...
[2026-10-25 03:33:23,997.997 INFO    ] 200
[2026-10-25 03:33:24,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:24,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:24,061.061 INFO    ] No update needed
[2026-10-25 03:33:24,063.063 INFO    ] Checking for camera pi updates...
[2026-10-25 03:33:24,101.101 INFO    ] 200
[2026-10-25 03:33:24,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:24,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:33:24,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:24,195.195 INFO    ] No camera update needed
[2026-10-25 03:33:24,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:33:24,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:33:24,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:33:24,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:33:26,251.251 INFO    ] ================================================
[2026-10-25 03:33:26,267.267 INFO    ] Launching Daemon at Sun Oct 25 03:33:26 IST 2026
[2026-10-25 03:33:26,279.279 INFO    ] ================================================
[2026-10-25 03:33:26,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:33:26
[2026-10-25 03:33:27,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:33:27,859.859 INFO    ] Initializing speech engine...
[2026-10-25 03:33:27,871.871 INFO    ] 2026-10-25 03:33:27
[2026-10-25 03:33:28,127.127 INFO    ] 2026-10-25 03:33:28
[2026-10-25 03:33:28,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:33:29,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:33:29,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:33:29,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:33:29,242.242 INFO    ] time= 25/10/2026 03:33:29
[2026-10-25 03:33:29,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:33:29,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:33:29,350.350 INFO    ] No existing commands found in stream
[2026-10-25 03:33:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:33:34,364.364 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 03:33:36,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:33:36,021.021 INFO    ] Checking for system updates...
[2026-10-25 03:33:36,058.058 INFO    ] 200
[2026-10-25 03:33:36,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:36,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:33:36,119.119 INFO    ] No update needed
[2026-10-25 03:33:36,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 03:33:36,156.156 INFO    ] 200
[2026-10-25 03:33:36,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:36,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:33:36,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:33:36,257.257 INFO    ] No camera update needed
[2026-10-25 03:33:36,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:33:36,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:33:36,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:33:36,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:33:38,314.314 INFO    ] ================================================
[2026-10-25 03:33:38,330.330 INFO    ] Launching Daemon at Sun Oct 25 03:33:38 IST 2026
[2026-10-25 03:33:38,342.342 INFO    ] ================================================
[2026-10-25 03:33:38,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:33:38
[2026-10-25 03:33:39,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:33:39,781.781 INFO    ] Initializing speech engine...
[2026-10-25 03:33:39,790.790 INFO    ] 2026-10-25 03:33:39
[2026-10-25 03:33:40,061.061 INFO    ] 2026-10-25 03:33:40
[2026-10-25 03:33:40,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:33:40,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:33:40,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:33:40,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:33:40,437.437 INFO    ] time= 25/10/2026 03:33:40
[2026-10-25 03:33:40,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:33:40,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:33:40,626.626 INFO    ] No existing commands found in stream
[2026-10-25 03:33:45,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:33:45,645.645 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 03:33:46,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:33:46,648.648 INFO    ] Checking for system updates...
[2026-10-25 03:33:46,693.693 INFO    ] 200
[2026-10-25 03:33:46,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:46,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:46,755.755 INFO    ] No update needed
[2026-10-25 03:33:46,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 03:33:46,795.795 INFO    ] 200
[2026-10-25 03:33:46,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:46,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:33:46,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:46,899.899 INFO    ] No camera update needed
[2026-10-25 03:33:46,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:33:46,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:33:46,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:33:46,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:33:48,956.956 INFO    ] ================================================
[2026-10-25 03:33:48,971.971 INFO    ] Launching Daemon at Sun Oct 25 03:33:48 IST 2026
[2026-10-25 03:33:48,982.982 INFO    ] ================================================
[2026-10-25 03:33:49,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:33:49
[2026-10-25 03:33:50,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:33:50,579.579 INFO    ] Initializing speech engine...
[2026-10-25 03:33:50,589.589 INFO    ] 2026-10-25 03:33:50
[2026-10-25 03:33:50,858.858 INFO    ] 2026-10-25 03:33:50
[2026-10-25 03:33:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:33:51,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:33:51,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:33:51,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:33:51,338.338 INFO    ] time= 25/10/2026 03:33:51
[2026-10-25 03:33:51,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:33:51,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:33:51,531.531 INFO    ] No existing commands found in stream
[2026-10-25 03:33:56,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:33:56,558.558 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 03:33:57,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:33:57,999.999 INFO    ] Checking for system updates...
[2026-10-25 03:33:58,042.042 INFO    ] 200
[2026-10-25 03:33:58,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:58,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:58,110.110 INFO    ] No update needed
[2026-10-25 03:33:58,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 03:33:58,152.152 INFO    ] 200
[2026-10-25 03:33:58,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:33:58,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:33:58,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:33:58,264.264 INFO    ] No camera update needed
[2026-10-25 03:33:58,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:33:58,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:33:58,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:33:58,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:34:00,324.324 INFO    ] ================================================
[2026-10-25 03:34:00,338.338 INFO    ] Launching Daemon at Sun Oct 25 03:34:00 IST 2026
[2026-10-25 03:34:00,349.349 INFO    ] ================================================
[2026-10-25 03:34:00,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:34:00
[2026-10-25 03:34:01,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:34:02,025.025 INFO    ] Initializing speech engine...
[2026-10-25 03:34:02,041.041 INFO    ] 2026-10-25 03:34:02
[2026-10-25 03:34:02,331.331 INFO    ] 2026-10-25 03:34:02
[2026-10-25 03:34:02,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:34:02,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:34:02,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:34:02,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:34:02,781.781 INFO    ] time= 25/10/2026 03:34:02
[2026-10-25 03:34:02,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:34:02,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:34:02,931.931 INFO    ] No existing commands found in stream
[2026-10-25 03:34:07,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:34:07,945.945 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 03:34:12,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:34:12,257.257 INFO    ] Checking for system updates...
[2026-10-25 03:34:12,294.294 INFO    ] 200
[2026-10-25 03:34:12,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:12,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:12,351.351 INFO    ] No update needed
[2026-10-25 03:34:12,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 03:34:12,392.392 INFO    ] 200
[2026-10-25 03:34:12,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:12,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:34:12,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:12,505.505 INFO    ] No camera update needed
[2026-10-25 03:34:12,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:34:12,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:34:12,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:34:12,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:34:14,563.563 INFO    ] ================================================
[2026-10-25 03:34:14,578.578 INFO    ] Launching Daemon at Sun Oct 25 03:34:14 IST 2026
[2026-10-25 03:34:14,589.589 INFO    ] ================================================
[2026-10-25 03:34:15,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:34:15
[2026-10-25 03:34:15,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:34:16,051.051 INFO    ] Initializing speech engine...
[2026-10-25 03:34:16,058.058 INFO    ] 2026-10-25 03:34:16
[2026-10-25 03:34:16,355.355 INFO    ] 2026-10-25 03:34:16
[2026-10-25 03:34:16,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:34:16,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:34:16,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:34:16,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:34:16,781.781 INFO    ] time= 25/10/2026 03:34:16
[2026-10-25 03:34:16,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:34:16,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:34:16,929.929 INFO    ] No existing commands found in stream
[2026-10-25 03:34:21,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:34:21,952.952 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 03:34:25,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:34:25,624.624 INFO    ] Checking for system updates...
[2026-10-25 03:34:25,664.664 INFO    ] 200
[2026-10-25 03:34:25,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:25,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:25,728.728 INFO    ] No update needed
[2026-10-25 03:34:25,731.731 INFO    ] Checking for camera pi updates...
[2026-10-25 03:34:25,765.765 INFO    ] 200
[2026-10-25 03:34:25,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:25,814.814 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:34:25,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:25,862.862 INFO    ] No camera update needed
[2026-10-25 03:34:25,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:34:25,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:34:25,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:34:25,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:34:27,924.924 INFO    ] ================================================
[2026-10-25 03:34:27,940.940 INFO    ] Launching Daemon at Sun Oct 25 03:34:27 IST 2026
[2026-10-25 03:34:27,951.951 INFO    ] ================================================
[2026-10-25 03:34:28,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:34:28
[2026-10-25 03:34:29,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:34:29,394.394 INFO    ] Initializing speech engine...
[2026-10-25 03:34:29,404.404 INFO    ] 2026-10-25 03:34:29
[2026-10-25 03:34:29,703.703 INFO    ] 2026-10-25 03:34:29
[2026-10-25 03:34:29,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:34:29,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:34:29,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:34:30,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:34:30,107.107 INFO    ] time= 25/10/2026 03:34:30
[2026-10-25 03:34:30,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:34:30,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:34:30,219.219 INFO    ] No existing commands found in stream
[2026-10-25 03:34:35,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:34:35,234.234 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 03:34:35,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:34:35,711.711 INFO    ] Checking for system updates...
[2026-10-25 03:34:35,748.748 INFO    ] 200
[2026-10-25 03:34:35,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:35,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:34:35,805.805 INFO    ] No update needed
[2026-10-25 03:34:35,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 03:34:35,841.841 INFO    ] 200
[2026-10-25 03:34:35,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:35,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:34:35,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:34:35,939.939 INFO    ] No camera update needed
[2026-10-25 03:34:35,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:34:35,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:34:35,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:34:35,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:34:38,996.996 INFO    ] ================================================
[2026-10-25 03:34:38,013.013 INFO    ] Launching Daemon at Sun Oct 25 03:34:38 IST 2026
[2026-10-25 03:34:38,024.024 INFO    ] ================================================
[2026-10-25 03:34:38,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:34:38
[2026-10-25 03:34:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:34:39,708.708 INFO    ] Initializing speech engine...
[2026-10-25 03:34:39,719.719 INFO    ] 2026-10-25 03:34:39
[2026-10-25 03:34:40,026.026 INFO    ] 2026-10-25 03:34:39
[2026-10-25 03:34:40,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:34:40,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:34:40,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:34:40,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:34:40,535.535 INFO    ] time= 25/10/2026 03:34:40
[2026-10-25 03:34:40,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:34:40,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:34:40,689.689 INFO    ] No existing commands found in stream
[2026-10-25 03:34:45,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:34:45,706.706 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 03:34:47,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:34:47,242.242 INFO    ] Checking for system updates...
[2026-10-25 03:34:47,279.279 INFO    ] 200
[2026-10-25 03:34:47,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:47,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:47,340.340 INFO    ] No update needed
[2026-10-25 03:34:47,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 03:34:47,378.378 INFO    ] 200
[2026-10-25 03:34:47,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:34:47,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:34:47,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:34:47,490.490 INFO    ] No camera update needed
[2026-10-25 03:34:47,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:34:47,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:34:47,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:34:47,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:34:49,550.550 INFO    ] ================================================
[2026-10-25 03:34:49,566.566 INFO    ] Launching Daemon at Sun Oct 25 03:34:49 IST 2026
[2026-10-25 03:34:49,577.577 INFO    ] ================================================
[2026-10-25 03:34:50,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:34:50
[2026-10-25 03:34:50,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:34:51,249.249 INFO    ] Initializing speech engine...
[2026-10-25 03:34:51,261.261 INFO    ] 2026-10-25 03:34:51
[2026-10-25 03:34:51,571.571 INFO    ] 2026-10-25 03:34:51
[2026-10-25 03:34:51,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:34:51,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:34:51,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:34:52,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:34:52,082.082 INFO    ] time= 25/10/2026 03:34:52
[2026-10-25 03:34:52,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:34:52,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:34:52,239.239 INFO    ] No existing commands found in stream
[2026-10-25 03:34:57,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:34:57,272.272 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 03:35:01,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:35:01,099.099 INFO    ] Checking for system updates...
[2026-10-25 03:35:01,140.140 INFO    ] 200
[2026-10-25 03:35:01,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:01,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:35:01,206.206 INFO    ] No update needed
[2026-10-25 03:35:01,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 03:35:01,242.242 INFO    ] 200
[2026-10-25 03:35:01,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:01,286.286 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:35:01,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:35:01,354.354 INFO    ] No camera update needed
[2026-10-25 03:35:01,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:35:01,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:35:01,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:35:01,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:35:03,411.411 INFO    ] ================================================
[2026-10-25 03:35:03,427.427 INFO    ] Launching Daemon at Sun Oct 25 03:35:03 IST 2026
[2026-10-25 03:35:03,438.438 INFO    ] ================================================
[2026-10-25 03:35:04,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:35:04
[2026-10-25 03:35:04,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:35:04,859.859 INFO    ] Initializing speech engine...
[2026-10-25 03:35:04,880.880 INFO    ] 2026-10-25 03:35:04
[2026-10-25 03:35:05,139.139 INFO    ] 2026-10-25 03:35:05
[2026-10-25 03:35:05,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:35:05,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:35:05,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:35:05,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:35:05,626.626 INFO    ] time= 25/10/2026 03:35:05
[2026-10-25 03:35:05,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:35:05,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:35:05,777.777 INFO    ] No existing commands found in stream
[2026-10-25 03:35:10,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:35:10,805.805 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 03:35:11,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:35:11,383.383 INFO    ] Checking for system updates...
[2026-10-25 03:35:11,428.428 INFO    ] 200
[2026-10-25 03:35:11,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:11,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:11,494.494 INFO    ] No update needed
[2026-10-25 03:35:11,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 03:35:11,531.531 INFO    ] 200
[2026-10-25 03:35:11,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:11,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:35:11,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:11,636.636 INFO    ] No camera update needed
[2026-10-25 03:35:11,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:35:11,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:35:11,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:35:11,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:35:13,692.692 INFO    ] ================================================
[2026-10-25 03:35:13,708.708 INFO    ] Launching Daemon at Sun Oct 25 03:35:13 IST 2026
[2026-10-25 03:35:13,719.719 INFO    ] ================================================
[2026-10-25 03:35:14,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:35:14
[2026-10-25 03:35:14,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:35:15,129.129 INFO    ] Initializing speech engine...
[2026-10-25 03:35:15,149.149 INFO    ] 2026-10-25 03:35:15
[2026-10-25 03:35:15,402.402 INFO    ] 2026-10-25 03:35:15
[2026-10-25 03:35:15,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:35:15,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:35:15,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:35:15,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:35:15,775.775 INFO    ] time= 25/10/2026 03:35:15
[2026-10-25 03:35:15,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:35:15,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:35:15,953.953 INFO    ] No existing commands found in stream
[2026-10-25 03:35:20,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:35:20,982.982 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 03:35:23,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:35:23,940.940 INFO    ] Checking for system updates...
[2026-10-25 03:35:23,976.976 INFO    ] 200
[2026-10-25 03:35:23,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:24,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:24,034.034 INFO    ] No update needed
[2026-10-25 03:35:24,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 03:35:24,075.075 INFO    ] 200
[2026-10-25 03:35:24,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:24,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:35:24,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:24,308.308 INFO    ] No camera update needed
[2026-10-25 03:35:24,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:35:24,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:35:24,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:35:24,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:35:26,364.364 INFO    ] ================================================
[2026-10-25 03:35:26,379.379 INFO    ] Launching Daemon at Sun Oct 25 03:35:26 IST 2026
[2026-10-25 03:35:26,390.390 INFO    ] ================================================
[2026-10-25 03:35:27,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:35:27
[2026-10-25 03:35:27,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:35:28,031.031 INFO    ] Initializing speech engine...
[2026-10-25 03:35:28,041.041 INFO    ] 2026-10-25 03:35:28
[2026-10-25 03:35:28,317.317 INFO    ] 2026-10-25 03:35:28
[2026-10-25 03:35:28,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:35:29,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:35:29,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:35:29,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:35:29,449.449 INFO    ] time= 25/10/2026 03:35:29
[2026-10-25 03:35:29,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:35:29,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:35:29,562.562 INFO    ] No existing commands found in stream
[2026-10-25 03:35:34,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:35:34,576.576 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 03:35:35,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:35:35,156.156 INFO    ] Checking for system updates...
[2026-10-25 03:35:35,194.194 INFO    ] 200
[2026-10-25 03:35:35,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:35,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:35,256.256 INFO    ] No update needed
[2026-10-25 03:35:35,258.258 INFO    ] Checking for camera pi updates...
[2026-10-25 03:35:35,295.295 INFO    ] 200
[2026-10-25 03:35:35,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:35,340.340 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:35:35,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:35,412.412 INFO    ] No camera update needed
[2026-10-25 03:35:35,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:35:35,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:35:35,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:35:35,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:35:37,473.473 INFO    ] ================================================
[2026-10-25 03:35:37,489.489 INFO    ] Launching Daemon at Sun Oct 25 03:35:37 IST 2026
[2026-10-25 03:35:37,500.500 INFO    ] ================================================
[2026-10-25 03:35:38,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:35:38
[2026-10-25 03:35:38,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:35:39,175.175 INFO    ] Initializing speech engine...
[2026-10-25 03:35:39,189.189 INFO    ] 2026-10-25 03:35:39
[2026-10-25 03:35:39,509.509 INFO    ] 2026-10-25 03:35:39
[2026-10-25 03:35:39,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:35:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:35:39,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:35:40,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:35:40,033.033 INFO    ] time= 25/10/2026 03:35:40
[2026-10-25 03:35:40,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:35:40,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:35:40,190.190 INFO    ] No existing commands found in stream
[2026-10-25 03:35:45,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:35:45,216.216 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 03:35:49,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:35:49,450.450 INFO    ] Checking for system updates...
[2026-10-25 03:35:49,492.492 INFO    ] 200
[2026-10-25 03:35:49,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:49,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:49,553.553 INFO    ] No update needed
[2026-10-25 03:35:49,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 03:35:49,596.596 INFO    ] 200
[2026-10-25 03:35:49,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:35:49,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:35:49,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:35:49,697.697 INFO    ] No camera update needed
[2026-10-25 03:35:49,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:35:49,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:35:49,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:35:49,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:35:51,756.756 INFO    ] ================================================
[2026-10-25 03:35:51,772.772 INFO    ] Launching Daemon at Sun Oct 25 03:35:51 IST 2026
[2026-10-25 03:35:51,782.782 INFO    ] ================================================
[2026-10-25 03:35:52,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:35:52
[2026-10-25 03:35:53,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:35:53,460.460 INFO    ] Initializing speech engine...
[2026-10-25 03:35:53,469.469 INFO    ] 2026-10-25 03:35:53
[2026-10-25 03:35:53,754.754 INFO    ] 2026-10-25 03:35:53
[2026-10-25 03:35:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:35:54,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:35:54,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:35:54,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:35:54,239.239 INFO    ] time= 25/10/2026 03:35:54
[2026-10-25 03:35:54,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:35:54,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:35:54,425.425 INFO    ] No existing commands found in stream
[2026-10-25 03:35:59,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:35:59,457.457 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 03:36:00,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:36:00,676.676 INFO    ] Checking for system updates...
[2026-10-25 03:36:00,719.719 INFO    ] 200
[2026-10-25 03:36:00,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:00,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:00,788.788 INFO    ] No update needed
[2026-10-25 03:36:00,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 03:36:00,830.830 INFO    ] 200
[2026-10-25 03:36:00,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:00,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:36:00,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:00,944.944 INFO    ] No camera update needed
[2026-10-25 03:36:00,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:36:00,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:36:00,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:36:00,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:36:03,019.019 INFO    ] ================================================
[2026-10-25 03:36:03,040.040 INFO    ] Launching Daemon at Sun Oct 25 03:36:03 IST 2026
[2026-10-25 03:36:03,051.051 INFO    ] ================================================
[2026-10-25 03:36:03,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:36:03
[2026-10-25 03:36:04,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:36:04,717.717 INFO    ] Initializing speech engine...
[2026-10-25 03:36:04,732.732 INFO    ] 2026-10-25 03:36:04
[2026-10-25 03:36:05,013.013 INFO    ] 2026-10-25 03:36:04
[2026-10-25 03:36:05,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:36:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:36:05,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:36:05,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:36:05,538.538 INFO    ] time= 25/10/2026 03:36:05
[2026-10-25 03:36:05,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:36:05,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:36:05,679.679 INFO    ] No existing commands found in stream
[2026-10-25 03:36:10,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:36:10,706.706 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 03:36:13,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:36:13,802.802 INFO    ] Checking for system updates...
[2026-10-25 03:36:13,839.839 INFO    ] 200
[2026-10-25 03:36:13,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:13,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:36:13,901.901 INFO    ] No update needed
[2026-10-25 03:36:13,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 03:36:13,944.944 INFO    ] 200
[2026-10-25 03:36:13,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:14,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:36:14,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:36:14,055.055 INFO    ] No camera update needed
[2026-10-25 03:36:14,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:36:14,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:36:14,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:36:14,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:36:16,110.110 INFO    ] ================================================
[2026-10-25 03:36:16,125.125 INFO    ] Launching Daemon at Sun Oct 25 03:36:16 IST 2026
[2026-10-25 03:36:16,136.136 INFO    ] ================================================
[2026-10-25 03:36:16,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:36:16
[2026-10-25 03:36:17,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:36:17,732.732 INFO    ] Initializing speech engine...
[2026-10-25 03:36:17,740.740 INFO    ] 2026-10-25 03:36:17
[2026-10-25 03:36:18,010.010 INFO    ] 2026-10-25 03:36:18
[2026-10-25 03:36:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:36:18,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:36:18,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:36:18,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:36:18,557.557 INFO    ] time= 25/10/2026 03:36:18
[2026-10-25 03:36:18,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:36:18,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:36:18,710.710 INFO    ] No existing commands found in stream
[2026-10-25 03:36:23,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:36:23,728.728 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 03:36:27,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:36:27,313.313 INFO    ] Checking for system updates...
[2026-10-25 03:36:27,350.350 INFO    ] 200
[2026-10-25 03:36:27,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:27,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:27,410.410 INFO    ] No update needed
[2026-10-25 03:36:27,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 03:36:27,448.448 INFO    ] 200
[2026-10-25 03:36:27,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:27,509.509 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:36:27,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:27,578.578 INFO    ] No camera update needed
[2026-10-25 03:36:27,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:36:27,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:36:27,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:36:27,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:36:29,633.633 INFO    ] ================================================
[2026-10-25 03:36:29,647.647 INFO    ] Launching Daemon at Sun Oct 25 03:36:29 IST 2026
[2026-10-25 03:36:29,658.658 INFO    ] ================================================
[2026-10-25 03:36:30,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:36:30
[2026-10-25 03:36:30,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:36:31,261.261 INFO    ] Initializing speech engine...
[2026-10-25 03:36:31,268.268 INFO    ] 2026-10-25 03:36:31
[2026-10-25 03:36:31,557.557 INFO    ] 2026-10-25 03:36:31
[2026-10-25 03:36:31,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:36:31,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:36:31,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:36:31,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:36:32,035.035 INFO    ] time= 25/10/2026 03:36:31
[2026-10-25 03:36:32,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:36:32,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:36:32,180.180 INFO    ] No existing commands found in stream
[2026-10-25 03:36:37,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:36:37,211.211 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 03:36:41,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:36:41,439.439 INFO    ] Checking for system updates...
[2026-10-25 03:36:41,476.476 INFO    ] 200
[2026-10-25 03:36:41,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:41,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:41,536.536 INFO    ] No update needed
[2026-10-25 03:36:41,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 03:36:41,574.574 INFO    ] 200
[2026-10-25 03:36:41,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:41,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:36:41,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:36:41,687.687 INFO    ] No camera update needed
[2026-10-25 03:36:41,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:36:41,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:36:41,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:36:41,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:36:43,743.743 INFO    ] ================================================
[2026-10-25 03:36:43,759.759 INFO    ] Launching Daemon at Sun Oct 25 03:36:43 IST 2026
[2026-10-25 03:36:43,770.770 INFO    ] ================================================
[2026-10-25 03:36:44,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:36:44
[2026-10-25 03:36:45,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:36:45,325.325 INFO    ] Initializing speech engine...
[2026-10-25 03:36:45,341.341 INFO    ] 2026-10-25 03:36:45
[2026-10-25 03:36:45,646.646 INFO    ] 2026-10-25 03:36:45
[2026-10-25 03:36:45,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:36:45,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:36:45,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:36:46,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:36:46,040.040 INFO    ] time= 25/10/2026 03:36:46
[2026-10-25 03:36:46,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:36:46,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:36:46,235.235 INFO    ] No existing commands found in stream
[2026-10-25 03:36:51,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:36:51,258.258 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 03:36:53,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:36:53,701.701 INFO    ] Checking for system updates...
[2026-10-25 03:36:53,738.738 INFO    ] 200
[2026-10-25 03:36:53,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:53,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:36:53,797.797 INFO    ] No update needed
[2026-10-25 03:36:53,800.800 INFO    ] Checking for camera pi updates...
[2026-10-25 03:36:53,836.836 INFO    ] 200
[2026-10-25 03:36:53,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:36:53,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:36:53,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:36:53,951.951 INFO    ] No camera update needed
[2026-10-25 03:36:53,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:36:53,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:36:53,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:36:53,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:36:56,007.007 INFO    ] ================================================
[2026-10-25 03:36:56,023.023 INFO    ] Launching Daemon at Sun Oct 25 03:36:56 IST 2026
[2026-10-25 03:36:56,034.034 INFO    ] ================================================
[2026-10-25 03:36:56,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:36:56
[2026-10-25 03:36:57,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:36:57,472.472 INFO    ] Initializing speech engine...
[2026-10-25 03:36:57,478.478 INFO    ] 2026-10-25 03:36:57
[2026-10-25 03:36:57,772.772 INFO    ] 2026-10-25 03:36:57
[2026-10-25 03:36:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:36:59,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:36:59,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:36:59,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:36:59,288.288 INFO    ] time= 25/10/2026 03:36:59
[2026-10-25 03:36:59,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:36:59,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:36:59,363.363 INFO    ] No existing commands found in stream
[2026-10-25 03:37:04,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:37:04,376.376 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 03:37:05,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:37:05,733.733 INFO    ] Checking for system updates...
[2026-10-25 03:37:05,769.769 INFO    ] 200
[2026-10-25 03:37:05,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:05,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:37:05,826.826 INFO    ] No update needed
[2026-10-25 03:37:05,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 03:37:05,866.866 INFO    ] 200
[2026-10-25 03:37:05,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:05,910.910 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:37:05,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:37:05,979.979 INFO    ] No camera update needed
[2026-10-25 03:37:05,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:37:05,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:37:05,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:37:05,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:37:08,035.035 INFO    ] ================================================
[2026-10-25 03:37:08,054.054 INFO    ] Launching Daemon at Sun Oct 25 03:37:08 IST 2026
[2026-10-25 03:37:08,067.067 INFO    ] ================================================
[2026-10-25 03:37:08,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:37:08
[2026-10-25 03:37:09,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:37:09,735.735 INFO    ] Initializing speech engine...
[2026-10-25 03:37:09,749.749 INFO    ] 2026-10-25 03:37:09
[2026-10-25 03:37:10,037.037 INFO    ] 2026-10-25 03:37:10
[2026-10-25 03:37:10,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:37:10,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:37:10,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:37:10,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:37:10,568.568 INFO    ] time= 25/10/2026 03:37:10
[2026-10-25 03:37:10,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:37:10,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:37:10,711.711 INFO    ] No existing commands found in stream
[2026-10-25 03:37:15,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:37:15,739.739 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 03:37:16,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:37:16,555.555 INFO    ] Checking for system updates...
[2026-10-25 03:37:16,597.597 INFO    ] 200
[2026-10-25 03:37:16,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:16,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:16,664.664 INFO    ] No update needed
[2026-10-25 03:37:16,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 03:37:16,706.706 INFO    ] 200
[2026-10-25 03:37:16,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:16,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:37:16,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:16,800.800 INFO    ] No camera update needed
[2026-10-25 03:37:16,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:37:16,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:37:16,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:37:16,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:37:18,859.859 INFO    ] ================================================
[2026-10-25 03:37:18,874.874 INFO    ] Launching Daemon at Sun Oct 25 03:37:18 IST 2026
[2026-10-25 03:37:18,884.884 INFO    ] ================================================
[2026-10-25 03:37:19,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:37:19
[2026-10-25 03:37:20,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:37:20,337.337 INFO    ] Initializing speech engine...
[2026-10-25 03:37:20,343.343 INFO    ] 2026-10-25 03:37:20
[2026-10-25 03:37:20,587.587 INFO    ] 2026-10-25 03:37:20
[2026-10-25 03:37:20,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:37:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:37:20,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:37:20,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:37:20,961.961 INFO    ] time= 25/10/2026 03:37:20
[2026-10-25 03:37:20,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:37:21,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:37:21,134.134 INFO    ] No existing commands found in stream
[2026-10-25 03:37:26,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:37:26,168.168 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 03:37:27,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:37:27,781.781 INFO    ] Checking for system updates...
[2026-10-25 03:37:27,821.821 INFO    ] 200
[2026-10-25 03:37:27,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:27,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:37:27,878.878 INFO    ] No update needed
[2026-10-25 03:37:27,881.881 INFO    ] Checking for camera pi updates...
[2026-10-25 03:37:27,915.915 INFO    ] 200
[2026-10-25 03:37:27,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:28,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:37:28,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:37:28,178.178 INFO    ] No camera update needed
[2026-10-25 03:37:28,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:37:28,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:37:28,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:37:28,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:37:30,235.235 INFO    ] ================================================
[2026-10-25 03:37:30,249.249 INFO    ] Launching Daemon at Sun Oct 25 03:37:30 IST 2026
[2026-10-25 03:37:30,260.260 INFO    ] ================================================
[2026-10-25 03:37:31,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:37:30
[2026-10-25 03:37:32,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:37:32,851.851 INFO    ] Initializing speech engine...
[2026-10-25 03:37:32,864.864 INFO    ] 2026-10-25 03:37:32
[2026-10-25 03:37:33,183.183 INFO    ] 2026-10-25 03:37:33
[2026-10-25 03:37:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:37:33,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:37:33,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:37:33,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:37:33,692.692 INFO    ] time= 25/10/2026 03:37:33
[2026-10-25 03:37:33,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:37:33,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:37:33,898.898 INFO    ] No existing commands found in stream
[2026-10-25 03:37:38,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:37:38,924.924 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 03:37:41,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:37:41,188.188 INFO    ] Checking for system updates...
[2026-10-25 03:37:41,225.225 INFO    ] 200
[2026-10-25 03:37:41,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:41,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:41,292.292 INFO    ] No update needed
[2026-10-25 03:37:41,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 03:37:41,329.329 INFO    ] 200
[2026-10-25 03:37:41,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:41,372.372 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:37:41,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:41,424.424 INFO    ] No camera update needed
[2026-10-25 03:37:41,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:37:41,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:37:41,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:37:41,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:37:43,481.481 INFO    ] ================================================
[2026-10-25 03:37:43,498.498 INFO    ] Launching Daemon at Sun Oct 25 03:37:43 IST 2026
[2026-10-25 03:37:43,510.510 INFO    ] ================================================
[2026-10-25 03:37:44,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:37:44
[2026-10-25 03:37:44,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:37:45,179.179 INFO    ] Initializing speech engine...
[2026-10-25 03:37:45,186.186 INFO    ] 2026-10-25 03:37:45
[2026-10-25 03:37:45,472.472 INFO    ] 2026-10-25 03:37:45
[2026-10-25 03:37:45,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:37:45,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:37:45,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:37:45,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:37:45,947.947 INFO    ] time= 25/10/2026 03:37:45
[2026-10-25 03:37:46,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:37:46,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:37:46,158.158 INFO    ] No existing commands found in stream
[2026-10-25 03:37:51,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:37:51,177.177 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 03:37:53,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:37:53,310.310 INFO    ] Checking for system updates...
[2026-10-25 03:37:53,347.347 INFO    ] 200
[2026-10-25 03:37:53,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:53,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:53,405.405 INFO    ] No update needed
[2026-10-25 03:37:53,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 03:37:53,442.442 INFO    ] 200
[2026-10-25 03:37:53,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:37:53,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:37:53,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:37:53,533.533 INFO    ] No camera update needed
[2026-10-25 03:37:53,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:37:53,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:37:53,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:37:53,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:37:55,588.588 INFO    ] ================================================
[2026-10-25 03:37:55,604.604 INFO    ] Launching Daemon at Sun Oct 25 03:37:55 IST 2026
[2026-10-25 03:37:55,615.615 INFO    ] ================================================
[2026-10-25 03:37:56,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:37:56
[2026-10-25 03:37:56,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:37:57,063.063 INFO    ] Initializing speech engine...
[2026-10-25 03:37:57,072.072 INFO    ] 2026-10-25 03:37:57
[2026-10-25 03:37:57,319.319 INFO    ] 2026-10-25 03:37:57
[2026-10-25 03:37:57,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:37:57,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:37:57,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:37:57,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:37:57,795.795 INFO    ] time= 25/10/2026 03:37:57
[2026-10-25 03:37:57,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:37:57,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:37:57,937.937 INFO    ] No existing commands found in stream
[2026-10-25 03:38:02,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:38:02,953.953 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 03:38:03,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:38:03,626.626 INFO    ] Checking for system updates...
[2026-10-25 03:38:03,675.675 INFO    ] 200
[2026-10-25 03:38:03,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:03,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:38:03,734.734 INFO    ] No update needed
[2026-10-25 03:38:03,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 03:38:03,770.770 INFO    ] 200
[2026-10-25 03:38:03,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:03,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:38:03,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:38:03,889.889 INFO    ] No camera update needed
[2026-10-25 03:38:03,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:38:03,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:38:03,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:38:03,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:38:05,947.947 INFO    ] ================================================
[2026-10-25 03:38:05,963.963 INFO    ] Launching Daemon at Sun Oct 25 03:38:05 IST 2026
[2026-10-25 03:38:05,974.974 INFO    ] ================================================
[2026-10-25 03:38:06,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:38:06
[2026-10-25 03:38:07,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:38:07,588.588 INFO    ] Initializing speech engine...
[2026-10-25 03:38:07,596.596 INFO    ] 2026-10-25 03:38:07
[2026-10-25 03:38:07,866.866 INFO    ] 2026-10-25 03:38:07
[2026-10-25 03:38:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:38:08,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:38:08,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:38:08,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:38:08,341.341 INFO    ] time= 25/10/2026 03:38:08
[2026-10-25 03:38:08,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:38:08,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:38:08,488.488 INFO    ] No existing commands found in stream
[2026-10-25 03:38:13,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:38:13,527.527 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 03:38:14,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:38:14,535.535 INFO    ] Checking for system updates...
[2026-10-25 03:38:14,571.571 INFO    ] 200
[2026-10-25 03:38:14,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:14,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:38:14,630.630 INFO    ] No update needed
[2026-10-25 03:38:14,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 03:38:14,674.674 INFO    ] 200
[2026-10-25 03:38:14,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:14,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:38:14,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:38:14,789.789 INFO    ] No camera update needed
[2026-10-25 03:38:14,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:38:14,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:38:14,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:38:14,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:38:16,847.847 INFO    ] ================================================
[2026-10-25 03:38:16,862.862 INFO    ] Launching Daemon at Sun Oct 25 03:38:16 IST 2026
[2026-10-25 03:38:16,873.873 INFO    ] ================================================
[2026-10-25 03:38:17,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:38:17
[2026-10-25 03:38:18,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:38:18,481.481 INFO    ] Initializing speech engine...
[2026-10-25 03:38:18,493.493 INFO    ] 2026-10-25 03:38:18
[2026-10-25 03:38:18,785.785 INFO    ] 2026-10-25 03:38:18
[2026-10-25 03:38:18,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:38:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:38:19,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:38:19,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:38:19,263.263 INFO    ] time= 25/10/2026 03:38:19
[2026-10-25 03:38:19,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:38:19,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:38:19,449.449 INFO    ] No existing commands found in stream
[2026-10-25 03:38:24,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:38:24,477.477 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 03:38:26,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:38:26,875.875 INFO    ] Checking for system updates...
[2026-10-25 03:38:26,911.911 INFO    ] 200
[2026-10-25 03:38:26,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:26,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:26,969.969 INFO    ] No update needed
[2026-10-25 03:38:26,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 03:38:27,010.010 INFO    ] 200
[2026-10-25 03:38:27,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:27,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:38:27,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:27,116.116 INFO    ] No camera update needed
[2026-10-25 03:38:27,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:38:27,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:38:27,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:38:27,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:38:29,172.172 INFO    ] ================================================
[2026-10-25 03:38:29,187.187 INFO    ] Launching Daemon at Sun Oct 25 03:38:29 IST 2026
[2026-10-25 03:38:29,198.198 INFO    ] ================================================
[2026-10-25 03:38:29,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:38:29
[2026-10-25 03:38:30,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:38:30,650.650 INFO    ] Initializing speech engine...
[2026-10-25 03:38:30,659.659 INFO    ] 2026-10-25 03:38:30
[2026-10-25 03:38:30,905.905 INFO    ] 2026-10-25 03:38:30
[2026-10-25 03:38:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:38:31,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:38:31,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:38:31,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:38:31,274.274 INFO    ] time= 25/10/2026 03:38:31
[2026-10-25 03:38:31,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:38:31,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:38:31,348.348 INFO    ] No existing commands found in stream
[2026-10-25 03:38:36,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:38:36,363.363 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 03:38:37,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:38:37,941.941 INFO    ] Checking for system updates...
[2026-10-25 03:38:37,978.978 INFO    ] 200
[2026-10-25 03:38:37,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:38,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:38,035.035 INFO    ] No update needed
[2026-10-25 03:38:38,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 03:38:38,071.071 INFO    ] 200
[2026-10-25 03:38:38,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:38,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:38:38,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:38,151.151 INFO    ] No camera update needed
[2026-10-25 03:38:38,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:38:38,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:38:38,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:38:38,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:38:40,205.205 INFO    ] ================================================
[2026-10-25 03:38:40,221.221 INFO    ] Launching Daemon at Sun Oct 25 03:38:40 IST 2026
[2026-10-25 03:38:40,231.231 INFO    ] ================================================
[2026-10-25 03:38:40,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:38:40
[2026-10-25 03:38:41,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:38:41,653.653 INFO    ] Initializing speech engine...
[2026-10-25 03:38:41,666.666 INFO    ] 2026-10-25 03:38:41
[2026-10-25 03:38:41,955.955 INFO    ] 2026-10-25 03:38:41
[2026-10-25 03:38:41,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:38:42,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:38:42,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:38:42,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:38:42,318.318 INFO    ] time= 25/10/2026 03:38:42
[2026-10-25 03:38:42,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:38:42,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:38:42,414.414 INFO    ] No existing commands found in stream
[2026-10-25 03:38:47,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:38:47,429.429 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 03:38:50,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:38:50,651.651 INFO    ] Checking for system updates...
[2026-10-25 03:38:50,687.687 INFO    ] 200
[2026-10-25 03:38:50,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:50,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:50,746.746 INFO    ] No update needed
[2026-10-25 03:38:50,748.748 INFO    ] Checking for camera pi updates...
[2026-10-25 03:38:50,786.786 INFO    ] 200
[2026-10-25 03:38:50,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:38:50,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:38:50,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:38:50,893.893 INFO    ] No camera update needed
[2026-10-25 03:38:50,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:38:50,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:38:50,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:38:50,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:38:52,954.954 INFO    ] ================================================
[2026-10-25 03:38:52,970.970 INFO    ] Launching Daemon at Sun Oct 25 03:38:52 IST 2026
[2026-10-25 03:38:52,981.981 INFO    ] ================================================
[2026-10-25 03:38:53,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:38:53
[2026-10-25 03:38:54,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:38:54,567.567 INFO    ] Initializing speech engine...
[2026-10-25 03:38:54,574.574 INFO    ] 2026-10-25 03:38:54
[2026-10-25 03:38:54,842.842 INFO    ] 2026-10-25 03:38:54
[2026-10-25 03:38:54,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:38:55,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:38:55,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:38:55,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:38:55,234.234 INFO    ] time= 25/10/2026 03:38:55
[2026-10-25 03:38:55,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:38:55,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:38:55,348.348 INFO    ] No existing commands found in stream
[2026-10-25 03:39:00,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:00,361.361 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 03:39:01,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:39:01,671.671 INFO    ] Checking for system updates...
[2026-10-25 03:39:01,740.740 INFO    ] 200
[2026-10-25 03:39:01,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:01,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:01,873.873 INFO    ] No update needed
[2026-10-25 03:39:01,877.877 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:01,937.937 INFO    ] 200
[2026-10-25 03:39:01,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:02,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:02,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:02,065.065 INFO    ] No camera update needed
[2026-10-25 03:39:02,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:02,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:02,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:02,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:39:04,131.131 INFO    ] ================================================
[2026-10-25 03:39:04,146.146 INFO    ] Launching Daemon at Sun Oct 25 03:39:04 IST 2026
[2026-10-25 03:39:04,156.156 INFO    ] ================================================
[2026-10-25 03:39:04,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:39:04
[2026-10-25 03:39:05,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:39:05,578.578 INFO    ] Initializing speech engine...
[2026-10-25 03:39:05,587.587 INFO    ] 2026-10-25 03:39:05
[2026-10-25 03:39:05,881.881 INFO    ] 2026-10-25 03:39:05
[2026-10-25 03:39:05,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:39:06,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:39:06,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:39:06,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:39:06,235.235 INFO    ] time= 25/10/2026 03:39:06
[2026-10-25 03:39:06,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:39:06,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:39:06,313.313 INFO    ] No existing commands found in stream
[2026-10-25 03:39:11,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:11,327.327 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 03:39:12,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:39:12,987.987 INFO    ] Checking for system updates...
[2026-10-25 03:39:13,023.023 INFO    ] 200
[2026-10-25 03:39:13,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:13,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:13,080.080 INFO    ] No update needed
[2026-10-25 03:39:13,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:13,116.116 INFO    ] 200
[2026-10-25 03:39:13,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:13,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:13,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:13,215.215 INFO    ] No camera update needed
[2026-10-25 03:39:13,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:13,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:13,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:13,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:39:15,269.269 INFO    ] ================================================
[2026-10-25 03:39:15,284.284 INFO    ] Launching Daemon at Sun Oct 25 03:39:15 IST 2026
[2026-10-25 03:39:15,295.295 INFO    ] ================================================
[2026-10-25 03:39:15,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:39:15
[2026-10-25 03:39:16,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:39:16,775.775 INFO    ] Initializing speech engine...
[2026-10-25 03:39:16,786.786 INFO    ] 2026-10-25 03:39:16
[2026-10-25 03:39:17,066.066 INFO    ] 2026-10-25 03:39:17
[2026-10-25 03:39:17,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:39:17,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:39:17,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:39:17,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:39:17,550.550 INFO    ] time= 25/10/2026 03:39:17
[2026-10-25 03:39:17,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:39:17,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:39:17,669.669 INFO    ] No existing commands found in stream
[2026-10-25 03:39:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:22,686.686 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 03:39:25,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:39:25,831.831 INFO    ] Checking for system updates...
[2026-10-25 03:39:25,873.873 INFO    ] 200
[2026-10-25 03:39:25,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:25,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:25,938.938 INFO    ] No update needed
[2026-10-25 03:39:25,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:25,975.975 INFO    ] 200
[2026-10-25 03:39:25,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:26,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:26,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:26,081.081 INFO    ] No camera update needed
[2026-10-25 03:39:26,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:26,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:26,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:26,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:39:28,135.135 INFO    ] ================================================
[2026-10-25 03:39:28,150.150 INFO    ] Launching Daemon at Sun Oct 25 03:39:28 IST 2026
[2026-10-25 03:39:28,160.160 INFO    ] ================================================
[2026-10-25 03:39:28,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:39:28
[2026-10-25 03:39:29,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:39:29,598.598 INFO    ] Initializing speech engine...
[2026-10-25 03:39:29,603.603 INFO    ] 2026-10-25 03:39:29
[2026-10-25 03:39:29,881.881 INFO    ] 2026-10-25 03:39:29
[2026-10-25 03:39:29,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:39:30,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:39:30,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:39:30,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:39:30,257.257 INFO    ] time= 25/10/2026 03:39:30
[2026-10-25 03:39:30,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:39:30,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:39:30,439.439 INFO    ] No existing commands found in stream
[2026-10-25 03:39:35,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:35,469.469 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 03:39:36,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:39:36,973.973 INFO    ] Checking for system updates...
[2026-10-25 03:39:37,009.009 INFO    ] 200
[2026-10-25 03:39:37,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:37,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:37,074.074 INFO    ] No update needed
[2026-10-25 03:39:37,076.076 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:37,110.110 INFO    ] 200
[2026-10-25 03:39:37,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:37,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:37,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:39:37,291.291 INFO    ] No camera update needed
[2026-10-25 03:39:37,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:37,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:37,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:37,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:39:39,347.347 INFO    ] ================================================
[2026-10-25 03:39:39,362.362 INFO    ] Launching Daemon at Sun Oct 25 03:39:39 IST 2026
[2026-10-25 03:39:39,372.372 INFO    ] ================================================
[2026-10-25 03:39:39,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:39:39
[2026-10-25 03:39:40,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:39:40,811.811 INFO    ] Initializing speech engine...
[2026-10-25 03:39:40,820.820 INFO    ] 2026-10-25 03:39:40
[2026-10-25 03:39:41,106.106 INFO    ] 2026-10-25 03:39:41
[2026-10-25 03:39:41,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:39:41,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:39:41,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:39:41,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:39:41,476.476 INFO    ] time= 25/10/2026 03:39:41
[2026-10-25 03:39:41,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:39:41,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:39:41,554.554 INFO    ] No existing commands found in stream
[2026-10-25 03:39:46,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:46,587.587 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 03:39:48,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:39:48,260.260 INFO    ] Checking for system updates...
[2026-10-25 03:39:48,296.296 INFO    ] 200
[2026-10-25 03:39:48,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:48,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:48,353.353 INFO    ] No update needed
[2026-10-25 03:39:48,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:48,390.390 INFO    ] 200
[2026-10-25 03:39:48,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:48,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:48,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:48,488.488 INFO    ] No camera update needed
[2026-10-25 03:39:48,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:48,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:48,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:48,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:39:50,547.547 INFO    ] ================================================
[2026-10-25 03:39:50,562.562 INFO    ] Launching Daemon at Sun Oct 25 03:39:50 IST 2026
[2026-10-25 03:39:50,573.573 INFO    ] ================================================
[2026-10-25 03:39:51,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:39:51
[2026-10-25 03:39:51,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:39:52,039.039 INFO    ] Initializing speech engine...
[2026-10-25 03:39:52,047.047 INFO    ] 2026-10-25 03:39:52
[2026-10-25 03:39:52,318.318 INFO    ] 2026-10-25 03:39:52
[2026-10-25 03:39:52,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:39:52,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:39:52,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:39:52,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:39:52,702.702 INFO    ] time= 25/10/2026 03:39:52
[2026-10-25 03:39:52,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:39:52,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:39:52,855.855 INFO    ] No existing commands found in stream
[2026-10-25 03:39:57,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:39:57,883.883 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 03:39:59,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:39:59,267.267 INFO    ] Checking for system updates...
[2026-10-25 03:39:59,308.308 INFO    ] 200
[2026-10-25 03:39:59,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:59,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:59,367.367 INFO    ] No update needed
[2026-10-25 03:39:59,369.369 INFO    ] Checking for camera pi updates...
[2026-10-25 03:39:59,409.409 INFO    ] 200
[2026-10-25 03:39:59,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:39:59,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:39:59,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:39:59,522.522 INFO    ] No camera update needed
[2026-10-25 03:39:59,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:39:59,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:39:59,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:39:59,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:01,577.577 INFO    ] ================================================
[2026-10-25 03:40:01,592.592 INFO    ] Launching Daemon at Sun Oct 25 03:40:01 IST 2026
[2026-10-25 03:40:01,602.602 INFO    ] ================================================
[2026-10-25 03:40:02,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:02
[2026-10-25 03:40:03,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:40:03,924.924 INFO    ] Initializing speech engine...
[2026-10-25 03:40:03,940.940 INFO    ] 2026-10-25 03:40:03
[2026-10-25 03:40:04,237.237 INFO    ] 2026-10-25 03:40:04
[2026-10-25 03:40:04,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:40:04,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:40:04,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:40:04,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:40:04,592.592 INFO    ] time= 25/10/2026 03:40:04
[2026-10-25 03:40:04,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:40:04,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:40:04,671.671 INFO    ] No existing commands found in stream
[2026-10-25 03:40:09,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:40:09,685.685 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 03:40:10,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:40:10,650.650 INFO    ] Checking for system updates...
[2026-10-25 03:40:10,686.686 INFO    ] 200
[2026-10-25 03:40:10,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:10,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:10,743.743 INFO    ] No update needed
[2026-10-25 03:40:10,746.746 INFO    ] Checking for camera pi updates...
[2026-10-25 03:40:10,779.779 INFO    ] 200
[2026-10-25 03:40:10,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:10,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:40:10,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:10,885.885 INFO    ] No camera update needed
[2026-10-25 03:40:10,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:40:10,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:40:10,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:40:10,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:12,941.941 INFO    ] ================================================
[2026-10-25 03:40:12,956.956 INFO    ] Launching Daemon at Sun Oct 25 03:40:12 IST 2026
[2026-10-25 03:40:12,967.967 INFO    ] ================================================
[2026-10-25 03:40:13,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:13
[2026-10-25 03:40:14,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:40:14,382.382 INFO    ] Initializing speech engine...
[2026-10-25 03:40:14,398.398 INFO    ] 2026-10-25 03:40:14
[2026-10-25 03:40:14,658.658 INFO    ] 2026-10-25 03:40:14
[2026-10-25 03:40:14,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:40:14,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:40:14,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:40:15,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:40:15,041.041 INFO    ] time= 25/10/2026 03:40:15
[2026-10-25 03:40:15,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:40:15,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:40:15,224.224 INFO    ] No existing commands found in stream
[2026-10-25 03:40:20,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:40:20,252.252 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 03:40:21,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:40:21,638.638 INFO    ] Checking for system updates...
[2026-10-25 03:40:21,675.675 INFO    ] 200
[2026-10-25 03:40:21,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:21,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:21,734.734 INFO    ] No update needed
[2026-10-25 03:40:21,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 03:40:21,775.775 INFO    ] 200
[2026-10-25 03:40:21,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:21,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:40:21,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:21,870.870 INFO    ] No camera update needed
[2026-10-25 03:40:21,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:40:21,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:40:21,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:40:21,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:23,926.926 INFO    ] ================================================
[2026-10-25 03:40:23,942.942 INFO    ] Launching Daemon at Sun Oct 25 03:40:23 IST 2026
[2026-10-25 03:40:23,952.952 INFO    ] ================================================
[2026-10-25 03:40:24,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:24
[2026-10-25 03:40:25,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:40:25,387.387 INFO    ] Initializing speech engine...
[2026-10-25 03:40:25,396.396 INFO    ] 2026-10-25 03:40:25
[2026-10-25 03:40:25,693.693 INFO    ] 2026-10-25 03:40:25
[2026-10-25 03:40:25,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:40:25,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:40:25,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:40:26,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:40:26,076.076 INFO    ] time= 25/10/2026 03:40:26
[2026-10-25 03:40:26,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:40:26,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:40:26,203.203 INFO    ] No existing commands found in stream
[2026-10-25 03:40:31,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:40:31,216.216 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 03:40:34,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:40:34,710.710 INFO    ] Checking for system updates...
[2026-10-25 03:40:34,750.750 INFO    ] 200
[2026-10-25 03:40:34,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:34,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:40:34,825.825 INFO    ] No update needed
[2026-10-25 03:40:34,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 03:40:34,863.863 INFO    ] 200
[2026-10-25 03:40:34,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:34,905.905 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:40:34,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:40:34,980.980 INFO    ] No camera update needed
[2026-10-25 03:40:34,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:40:34,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:40:34,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:40:34,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:37,038.038 INFO    ] ================================================
[2026-10-25 03:40:37,054.054 INFO    ] Launching Daemon at Sun Oct 25 03:40:37 IST 2026
[2026-10-25 03:40:37,064.064 INFO    ] ================================================
[2026-10-25 03:40:37,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:37
[2026-10-25 03:40:38,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:40:38,713.713 INFO    ] Initializing speech engine...
[2026-10-25 03:40:38,726.726 INFO    ] 2026-10-25 03:40:38
[2026-10-25 03:40:39,041.041 INFO    ] 2026-10-25 03:40:39
[2026-10-25 03:40:39,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:40:39,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:40:39,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:40:39,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:40:39,546.546 INFO    ] time= 25/10/2026 03:40:39
[2026-10-25 03:40:39,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:40:39,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:40:39,683.683 INFO    ] No existing commands found in stream
[2026-10-25 03:40:44,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:40:44,711.711 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 03:40:46,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:40:46,453.453 INFO    ] Checking for system updates...
[2026-10-25 03:40:46,490.490 INFO    ] 200
[2026-10-25 03:40:46,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:46,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:46,556.556 INFO    ] No update needed
[2026-10-25 03:40:46,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 03:40:46,592.592 INFO    ] 200
[2026-10-25 03:40:46,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:46,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:40:46,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:40:46,706.706 INFO    ] No camera update needed
[2026-10-25 03:40:46,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:40:46,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:40:46,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:40:46,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:48,761.761 INFO    ] ================================================
[2026-10-25 03:40:48,776.776 INFO    ] Launching Daemon at Sun Oct 25 03:40:48 IST 2026
[2026-10-25 03:40:48,787.787 INFO    ] ================================================
[2026-10-25 03:40:49,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:49
[2026-10-25 03:40:49,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:40:50,205.205 INFO    ] Initializing speech engine...
[2026-10-25 03:40:50,213.213 INFO    ] 2026-10-25 03:40:50
[2026-10-25 03:40:50,458.458 INFO    ] 2026-10-25 03:40:50
[2026-10-25 03:40:50,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:40:50,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:40:50,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:40:50,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:40:50,919.919 INFO    ] time= 25/10/2026 03:40:50
[2026-10-25 03:40:50,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:40:51,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:40:51,117.117 INFO    ] No existing commands found in stream
[2026-10-25 03:40:56,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:40:56,151.151 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 03:40:56,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:40:56,808.808 INFO    ] Checking for system updates...
[2026-10-25 03:40:56,849.849 INFO    ] 200
[2026-10-25 03:40:56,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:56,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:40:56,908.908 INFO    ] No update needed
[2026-10-25 03:40:56,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 03:40:56,945.945 INFO    ] 200
[2026-10-25 03:40:56,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:40:56,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:40:57,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:40:57,055.055 INFO    ] No camera update needed
[2026-10-25 03:40:57,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:40:57,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:40:57,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:40:57,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:40:59,109.109 INFO    ] ================================================
[2026-10-25 03:40:59,124.124 INFO    ] Launching Daemon at Sun Oct 25 03:40:59 IST 2026
[2026-10-25 03:40:59,135.135 INFO    ] ================================================
[2026-10-25 03:40:59,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:40:59
[2026-10-25 03:41:00,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:00,606.606 INFO    ] Initializing speech engine...
[2026-10-25 03:41:00,616.616 INFO    ] 2026-10-25 03:41:00
[2026-10-25 03:41:00,910.910 INFO    ] 2026-10-25 03:41:00
[2026-10-25 03:41:00,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:01,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:41:01,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:41:01,465.465 INFO    ] time= 25/10/2026 03:41:01
[2026-10-25 03:41:01,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:41:01,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:41:01,531.531 INFO    ] No existing commands found in stream
[2026-10-25 03:41:06,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:41:06,545.545 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 03:41:08,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:41:08,305.305 INFO    ] Checking for system updates...
[2026-10-25 03:41:08,347.347 INFO    ] 200
[2026-10-25 03:41:08,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:08,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:08,405.405 INFO    ] No update needed
[2026-10-25 03:41:08,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 03:41:08,445.445 INFO    ] 200
[2026-10-25 03:41:08,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:08,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:41:08,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:08,561.561 INFO    ] No camera update needed
[2026-10-25 03:41:08,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:41:08,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:41:08,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:41:08,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:41:10,616.616 INFO    ] ================================================
[2026-10-25 03:41:10,632.632 INFO    ] Launching Daemon at Sun Oct 25 03:41:10 IST 2026
[2026-10-25 03:41:10,642.642 INFO    ] ================================================
[2026-10-25 03:41:11,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:41:11
[2026-10-25 03:41:11,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:12,048.048 INFO    ] Initializing speech engine...
[2026-10-25 03:41:12,063.063 INFO    ] 2026-10-25 03:41:12
[2026-10-25 03:41:12,336.336 INFO    ] 2026-10-25 03:41:12
[2026-10-25 03:41:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:12,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:12,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:41:12,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:41:12,817.817 INFO    ] time= 25/10/2026 03:41:12
[2026-10-25 03:41:12,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:41:12,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:41:12,973.973 INFO    ] No existing commands found in stream
[2026-10-25 03:41:17,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:41:17,987.987 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 03:41:21,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:41:21,308.308 INFO    ] Checking for system updates...
[2026-10-25 03:41:21,347.347 INFO    ] 200
[2026-10-25 03:41:21,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:21,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:41:21,406.406 INFO    ] No update needed
[2026-10-25 03:41:21,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 03:41:21,447.447 INFO    ] 200
[2026-10-25 03:41:21,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:21,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:41:21,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:41:21,539.539 INFO    ] No camera update needed
[2026-10-25 03:41:21,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:41:21,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:41:21,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:41:21,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:41:23,601.601 INFO    ] ================================================
[2026-10-25 03:41:23,615.615 INFO    ] Launching Daemon at Sun Oct 25 03:41:23 IST 2026
[2026-10-25 03:41:23,626.626 INFO    ] ================================================
[2026-10-25 03:41:24,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:41:24
[2026-10-25 03:41:24,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:25,200.200 INFO    ] Initializing speech engine...
[2026-10-25 03:41:25,208.208 INFO    ] 2026-10-25 03:41:25
[2026-10-25 03:41:25,462.462 INFO    ] 2026-10-25 03:41:25
[2026-10-25 03:41:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:25,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:41:25,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:41:25,951.951 INFO    ] time= 25/10/2026 03:41:25
[2026-10-25 03:41:26,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:41:26,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:41:26,140.140 INFO    ] No existing commands found in stream
[2026-10-25 03:41:31,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:41:31,173.173 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 03:41:32,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:41:32,200.200 INFO    ] Checking for system updates...
[2026-10-25 03:41:32,239.239 INFO    ] 200
[2026-10-25 03:41:32,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:32,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:41:32,302.302 INFO    ] No update needed
[2026-10-25 03:41:32,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 03:41:32,345.345 INFO    ] 200
[2026-10-25 03:41:32,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:32,392.392 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:41:32,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:41:32,433.433 INFO    ] No camera update needed
[2026-10-25 03:41:32,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:41:32,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:41:32,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:41:32,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:41:34,496.496 INFO    ] ================================================
[2026-10-25 03:41:34,511.511 INFO    ] Launching Daemon at Sun Oct 25 03:41:34 IST 2026
[2026-10-25 03:41:34,521.521 INFO    ] ================================================
[2026-10-25 03:41:35,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:41:35
[2026-10-25 03:41:35,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:35,960.960 INFO    ] Initializing speech engine...
[2026-10-25 03:41:35,967.967 INFO    ] 2026-10-25 03:41:35
[2026-10-25 03:41:36,223.223 INFO    ] 2026-10-25 03:41:36
[2026-10-25 03:41:36,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:36,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:36,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:41:36,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:41:36,679.679 INFO    ] time= 25/10/2026 03:41:36
[2026-10-25 03:41:36,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:41:36,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:41:36,856.856 INFO    ] No existing commands found in stream
[2026-10-25 03:41:41,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:41:41,895.895 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 03:41:42,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:41:42,569.569 INFO    ] Checking for system updates...
[2026-10-25 03:41:42,610.610 INFO    ] 200
[2026-10-25 03:41:42,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:42,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:42,675.675 INFO    ] No update needed
[2026-10-25 03:41:42,677.677 INFO    ] Checking for camera pi updates...
[2026-10-25 03:41:42,712.712 INFO    ] 200
[2026-10-25 03:41:42,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:42,762.762 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:41:42,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:42,941.941 INFO    ] No camera update needed
[2026-10-25 03:41:42,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:41:42,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:41:42,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:41:42,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:41:45,995.995 INFO    ] ================================================
[2026-10-25 03:41:45,010.010 INFO    ] Launching Daemon at Sun Oct 25 03:41:45 IST 2026
[2026-10-25 03:41:45,021.021 INFO    ] ================================================
[2026-10-25 03:41:45,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:41:45
[2026-10-25 03:41:46,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:46,434.434 INFO    ] Initializing speech engine...
[2026-10-25 03:41:46,442.442 INFO    ] 2026-10-25 03:41:46
[2026-10-25 03:41:46,689.689 INFO    ] 2026-10-25 03:41:46
[2026-10-25 03:41:46,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:46,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:46,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:41:47,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:41:47,155.155 INFO    ] time= 25/10/2026 03:41:47
[2026-10-25 03:41:47,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:41:47,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:41:47,331.331 INFO    ] No existing commands found in stream
[2026-10-25 03:41:52,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:41:52,370.370 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 03:41:55,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:41:55,633.633 INFO    ] Checking for system updates...
[2026-10-25 03:41:55,669.669 INFO    ] 200
[2026-10-25 03:41:55,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:55,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:55,735.735 INFO    ] No update needed
[2026-10-25 03:41:55,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 03:41:55,775.775 INFO    ] 200
[2026-10-25 03:41:55,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:41:55,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:41:55,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:41:55,888.888 INFO    ] No camera update needed
[2026-10-25 03:41:55,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:41:55,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:41:55,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:41:55,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:41:57,944.944 INFO    ] ================================================
[2026-10-25 03:41:57,959.959 INFO    ] Launching Daemon at Sun Oct 25 03:41:57 IST 2026
[2026-10-25 03:41:57,970.970 INFO    ] ================================================
[2026-10-25 03:41:58,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:41:58
[2026-10-25 03:41:59,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:41:59,363.363 INFO    ] Initializing speech engine...
[2026-10-25 03:41:59,383.383 INFO    ] 2026-10-25 03:41:59
[2026-10-25 03:41:59,653.653 INFO    ] 2026-10-25 03:41:59
[2026-10-25 03:41:59,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:41:59,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:41:59,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:42:00,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:42:00,134.134 INFO    ] time= 25/10/2026 03:42:00
[2026-10-25 03:42:00,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:42:00,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:42:00,279.279 INFO    ] No existing commands found in stream
[2026-10-25 03:42:05,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:42:05,296.296 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 03:42:06,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:42:06,560.560 INFO    ] Checking for system updates...
[2026-10-25 03:42:06,597.597 INFO    ] 200
[2026-10-25 03:42:06,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:06,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:42:06,663.663 INFO    ] No update needed
[2026-10-25 03:42:06,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 03:42:06,703.703 INFO    ] 200
[2026-10-25 03:42:06,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:06,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:42:06,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:42:06,803.803 INFO    ] No camera update needed
[2026-10-25 03:42:06,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:42:06,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:42:06,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:42:06,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:42:08,865.865 INFO    ] ================================================
[2026-10-25 03:42:08,879.879 INFO    ] Launching Daemon at Sun Oct 25 03:42:08 IST 2026
[2026-10-25 03:42:08,890.890 INFO    ] ================================================
[2026-10-25 03:42:09,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:42:09
[2026-10-25 03:42:10,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:42:10,321.321 INFO    ] Initializing speech engine...
[2026-10-25 03:42:10,330.330 INFO    ] 2026-10-25 03:42:10
[2026-10-25 03:42:10,580.580 INFO    ] 2026-10-25 03:42:10
[2026-10-25 03:42:10,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:42:10,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:42:10,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:42:11,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:42:11,067.067 INFO    ] time= 25/10/2026 03:42:11
[2026-10-25 03:42:11,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:42:11,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:42:11,215.215 INFO    ] No existing commands found in stream
[2026-10-25 03:42:16,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:42:16,233.233 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 03:42:20,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:42:20,176.176 INFO    ] Checking for system updates...
[2026-10-25 03:42:20,216.216 INFO    ] 200
[2026-10-25 03:42:20,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:20,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:20,274.274 INFO    ] No update needed
[2026-10-25 03:42:20,277.277 INFO    ] Checking for camera pi updates...
[2026-10-25 03:42:20,314.314 INFO    ] 200
[2026-10-25 03:42:20,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:20,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:42:20,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:20,416.416 INFO    ] No camera update needed
[2026-10-25 03:42:20,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:42:20,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:42:20,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:42:20,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:42:22,475.475 INFO    ] ================================================
[2026-10-25 03:42:22,491.491 INFO    ] Launching Daemon at Sun Oct 25 03:42:22 IST 2026
[2026-10-25 03:42:22,502.502 INFO    ] ================================================
[2026-10-25 03:42:23,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:42:23
[2026-10-25 03:42:23,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:42:24,054.054 INFO    ] Initializing speech engine...
[2026-10-25 03:42:24,059.059 INFO    ] 2026-10-25 03:42:24
[2026-10-25 03:42:24,312.312 INFO    ] 2026-10-25 03:42:24
[2026-10-25 03:42:24,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:42:24,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:42:24,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:42:24,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:42:24,804.804 INFO    ] time= 25/10/2026 03:42:24
[2026-10-25 03:42:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:42:24,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:42:24,993.993 INFO    ] No existing commands found in stream
[2026-10-25 03:42:30,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:42:30,026.026 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 03:42:30,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:42:30,977.977 INFO    ] Checking for system updates...
[2026-10-25 03:42:31,017.017 INFO    ] 200
[2026-10-25 03:42:31,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:31,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:31,075.075 INFO    ] No update needed
[2026-10-25 03:42:31,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 03:42:31,116.116 INFO    ] 200
[2026-10-25 03:42:31,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:31,160.160 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:42:31,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:31,237.237 INFO    ] No camera update needed
[2026-10-25 03:42:31,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:42:31,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:42:31,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:42:31,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:42:33,292.292 INFO    ] ================================================
[2026-10-25 03:42:33,307.307 INFO    ] Launching Daemon at Sun Oct 25 03:42:33 IST 2026
[2026-10-25 03:42:33,318.318 INFO    ] ================================================
[2026-10-25 03:42:33,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:42:33
[2026-10-25 03:42:34,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:42:34,719.719 INFO    ] Initializing speech engine...
[2026-10-25 03:42:34,732.732 INFO    ] 2026-10-25 03:42:34
[2026-10-25 03:42:34,997.997 INFO    ] 2026-10-25 03:42:34
[2026-10-25 03:42:35,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:42:35,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:42:35,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:42:35,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:42:35,372.372 INFO    ] time= 25/10/2026 03:42:35
[2026-10-25 03:42:35,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:42:35,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:42:35,538.538 INFO    ] No existing commands found in stream
[2026-10-25 03:42:40,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:42:40,575.575 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 03:42:44,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:42:44,953.953 INFO    ] Checking for system updates...
[2026-10-25 03:42:44,994.994 INFO    ] 200
[2026-10-25 03:42:44,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:45,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:45,053.053 INFO    ] No update needed
[2026-10-25 03:42:45,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 03:42:45,094.094 INFO    ] 200
[2026-10-25 03:42:45,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:45,142.142 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:42:45,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:42:45,193.193 INFO    ] No camera update needed
[2026-10-25 03:42:45,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:42:45,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:42:45,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:42:45,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:42:47,247.247 INFO    ] ================================================
[2026-10-25 03:42:47,262.262 INFO    ] Launching Daemon at Sun Oct 25 03:42:47 IST 2026
[2026-10-25 03:42:47,273.273 INFO    ] ================================================
[2026-10-25 03:42:47,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:42:47
[2026-10-25 03:42:48,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:42:48,699.699 INFO    ] Initializing speech engine...
[2026-10-25 03:42:48,709.709 INFO    ] 2026-10-25 03:42:48
[2026-10-25 03:42:48,953.953 INFO    ] 2026-10-25 03:42:48
[2026-10-25 03:42:48,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:42:49,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:42:49,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:42:49,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:42:49,446.446 INFO    ] time= 25/10/2026 03:42:49
[2026-10-25 03:42:49,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:42:49,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:42:49,568.568 INFO    ] No existing commands found in stream
[2026-10-25 03:42:54,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:42:54,583.583 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 03:42:57,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:42:57,228.228 INFO    ] Checking for system updates...
[2026-10-25 03:42:57,265.265 INFO    ] 200
[2026-10-25 03:42:57,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:57,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:42:57,331.331 INFO    ] No update needed
[2026-10-25 03:42:57,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 03:42:57,370.370 INFO    ] 200
[2026-10-25 03:42:57,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:42:57,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:42:57,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:42:57,472.472 INFO    ] No camera update needed
[2026-10-25 03:42:57,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:42:57,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:42:57,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:42:57,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:42:59,528.528 INFO    ] ================================================
[2026-10-25 03:42:59,543.543 INFO    ] Launching Daemon at Sun Oct 25 03:42:59 IST 2026
[2026-10-25 03:42:59,554.554 INFO    ] ================================================
[2026-10-25 03:43:00,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:00
[2026-10-25 03:43:00,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:00,990.990 INFO    ] Initializing speech engine...
[2026-10-25 03:43:00,996.996 INFO    ] 2026-10-25 03:43:00
[2026-10-25 03:43:01,258.258 INFO    ] 2026-10-25 03:43:01
[2026-10-25 03:43:01,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:43:01,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:43:01,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:43:01,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:43:01,765.765 INFO    ] time= 25/10/2026 03:43:01
[2026-10-25 03:43:01,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:43:01,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:43:01,907.907 INFO    ] No existing commands found in stream
[2026-10-25 03:43:06,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:43:06,952.952 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 03:43:08,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:43:08,477.477 INFO    ] Checking for system updates...
[2026-10-25 03:43:08,514.514 INFO    ] 200
[2026-10-25 03:43:08,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:08,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:43:08,581.581 INFO    ] No update needed
[2026-10-25 03:43:08,584.584 INFO    ] Checking for camera pi updates...
[2026-10-25 03:43:08,623.623 INFO    ] 200
[2026-10-25 03:43:08,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:08,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:43:08,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:43:08,737.737 INFO    ] No camera update needed
[2026-10-25 03:43:08,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:43:08,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:43:08,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:43:08,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:43:10,797.797 INFO    ] ================================================
[2026-10-25 03:43:10,812.812 INFO    ] Launching Daemon at Sun Oct 25 03:43:10 IST 2026
[2026-10-25 03:43:10,824.824 INFO    ] ================================================
[2026-10-25 03:43:11,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:11
[2026-10-25 03:43:11,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:12,234.234 INFO    ] Initializing speech engine...
[2026-10-25 03:43:12,246.246 INFO    ] 2026-10-25 03:43:12
[2026-10-25 03:43:12,511.511 INFO    ] 2026-10-25 03:43:12
[2026-10-25 03:43:12,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:43:12,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:43:12,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:43:12,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:43:12,991.991 INFO    ] time= 25/10/2026 03:43:12
[2026-10-25 03:43:13,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:43:13,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:43:13,141.141 INFO    ] No existing commands found in stream
[2026-10-25 03:43:18,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:43:18,156.156 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 03:43:20,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:43:20,906.906 INFO    ] Checking for system updates...
[2026-10-25 03:43:20,942.942 INFO    ] 200
[2026-10-25 03:43:20,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:21,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:21,007.007 INFO    ] No update needed
[2026-10-25 03:43:21,009.009 INFO    ] Checking for camera pi updates...
[2026-10-25 03:43:21,046.046 INFO    ] 200
[2026-10-25 03:43:21,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:21,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:43:21,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:21,153.153 INFO    ] No camera update needed
[2026-10-25 03:43:21,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:43:21,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:43:21,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:43:21,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:43:23,210.210 INFO    ] ================================================
[2026-10-25 03:43:23,225.225 INFO    ] Launching Daemon at Sun Oct 25 03:43:23 IST 2026
[2026-10-25 03:43:23,236.236 INFO    ] ================================================
[2026-10-25 03:43:23,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:23
[2026-10-25 03:43:24,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:24,669.669 INFO    ] Initializing speech engine...
[2026-10-25 03:43:24,675.675 INFO    ] 2026-10-25 03:43:24
[2026-10-25 03:43:24,980.980 INFO    ] 2026-10-25 03:43:24
[2026-10-25 03:43:25,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:43:25,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:43:25,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:43:25,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:43:25,361.361 INFO    ] time= 25/10/2026 03:43:25
[2026-10-25 03:43:25,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:43:25,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:43:25,485.485 INFO    ] No existing commands found in stream
[2026-10-25 03:43:30,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:43:30,500.500 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 03:43:32,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:43:32,180.180 INFO    ] Checking for system updates...
[2026-10-25 03:43:32,228.228 INFO    ] 200
[2026-10-25 03:43:32,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:32,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:32,296.296 INFO    ] No update needed
[2026-10-25 03:43:32,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 03:43:32,340.340 INFO    ] 200
[2026-10-25 03:43:32,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:32,388.388 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:43:32,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:32,423.423 INFO    ] No camera update needed
[2026-10-25 03:43:32,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:43:32,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:43:32,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:43:32,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:43:34,483.483 INFO    ] ================================================
[2026-10-25 03:43:34,498.498 INFO    ] Launching Daemon at Sun Oct 25 03:43:34 IST 2026
[2026-10-25 03:43:34,509.509 INFO    ] ================================================
[2026-10-25 03:43:35,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:35
[2026-10-25 03:43:35,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:35,957.957 INFO    ] Initializing speech engine...
[2026-10-25 03:43:35,964.964 INFO    ] 2026-10-25 03:43:35
[2026-10-25 03:43:36,260.260 INFO    ] 2026-10-25 03:43:36
[2026-10-25 03:43:36,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:43:36,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:43:36,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:43:36,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:43:36,643.643 INFO    ] time= 25/10/2026 03:43:36
[2026-10-25 03:43:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:43:36,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:43:36,762.762 INFO    ] No existing commands found in stream
[2026-10-25 03:43:41,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:43:41,784.784 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 03:43:42,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:43:42,801.801 INFO    ] Checking for system updates...
[2026-10-25 03:43:42,837.837 INFO    ] 200
[2026-10-25 03:43:42,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:42,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:42,895.895 INFO    ] No update needed
[2026-10-25 03:43:42,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 03:43:42,932.932 INFO    ] 200
[2026-10-25 03:43:42,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:42,975.975 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:43:43,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:43:43,040.040 INFO    ] No camera update needed
[2026-10-25 03:43:43,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:43:43,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:43:43,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:43:43,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:43:45,096.096 INFO    ] ================================================
[2026-10-25 03:43:45,112.112 INFO    ] Launching Daemon at Sun Oct 25 03:43:45 IST 2026
[2026-10-25 03:43:45,123.123 INFO    ] ================================================
[2026-10-25 03:43:45,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:45
[2026-10-25 03:43:46,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:46,531.531 INFO    ] Initializing speech engine...
[2026-10-25 03:43:46,539.539 INFO    ] 2026-10-25 03:43:46
[2026-10-25 03:43:46,835.835 INFO    ] 2026-10-25 03:43:46
[2026-10-25 03:43:46,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:43:47,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:43:47,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:43:47,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:43:47,232.232 INFO    ] time= 25/10/2026 03:43:47
[2026-10-25 03:43:47,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:43:47,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:43:47,342.342 INFO    ] No existing commands found in stream
[2026-10-25 03:43:52,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:43:52,370.370 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 03:43:55,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:43:55,571.571 INFO    ] Checking for system updates...
[2026-10-25 03:43:55,612.612 INFO    ] 200
[2026-10-25 03:43:55,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:55,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:43:55,671.671 INFO    ] No update needed
[2026-10-25 03:43:55,674.674 INFO    ] Checking for camera pi updates...
[2026-10-25 03:43:55,711.711 INFO    ] 200
[2026-10-25 03:43:55,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:43:55,760.760 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:43:55,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:43:55,914.914 INFO    ] No camera update needed
[2026-10-25 03:43:55,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:43:55,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:43:55,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:43:55,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:43:57,970.970 INFO    ] ================================================
[2026-10-25 03:43:57,985.985 INFO    ] Launching Daemon at Sun Oct 25 03:43:57 IST 2026
[2026-10-25 03:43:58,996.996 INFO    ] ================================================
[2026-10-25 03:43:58,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:43:58
[2026-10-25 03:43:59,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:43:59,633.633 INFO    ] Initializing speech engine...
[2026-10-25 03:43:59,647.647 INFO    ] 2026-10-25 03:43:59
[2026-10-25 03:43:59,930.930 INFO    ] 2026-10-25 03:43:59
[2026-10-25 03:43:59,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:44:00,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:44:00,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:44:00,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:44:00,411.411 INFO    ] time= 25/10/2026 03:44:00
[2026-10-25 03:44:00,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:44:00,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:44:00,621.621 INFO    ] No existing commands found in stream
[2026-10-25 03:44:05,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:44:05,650.650 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 03:44:09,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:44:09,650.650 INFO    ] Checking for system updates...
[2026-10-25 03:44:09,687.687 INFO    ] 200
[2026-10-25 03:44:09,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:09,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:09,755.755 INFO    ] No update needed
[2026-10-25 03:44:09,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 03:44:09,792.792 INFO    ] 200
[2026-10-25 03:44:09,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:09,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:44:09,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:09,894.894 INFO    ] No camera update needed
[2026-10-25 03:44:09,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:44:09,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:44:09,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:44:09,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:44:11,954.954 INFO    ] ================================================
[2026-10-25 03:44:11,970.970 INFO    ] Launching Daemon at Sun Oct 25 03:44:11 IST 2026
[2026-10-25 03:44:11,981.981 INFO    ] ================================================
[2026-10-25 03:44:12,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:44:12
[2026-10-25 03:44:13,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:44:13,648.648 INFO    ] Initializing speech engine...
[2026-10-25 03:44:13,659.659 INFO    ] 2026-10-25 03:44:13
[2026-10-25 03:44:13,928.928 INFO    ] 2026-10-25 03:44:13
[2026-10-25 03:44:13,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:44:14,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:44:14,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:44:14,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:44:14,329.329 INFO    ] time= 25/10/2026 03:44:14
[2026-10-25 03:44:14,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:44:14,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:44:14,498.498 INFO    ] No existing commands found in stream
[2026-10-25 03:44:19,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:44:19,513.513 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 03:44:23,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:44:23,109.109 INFO    ] Checking for system updates...
[2026-10-25 03:44:23,145.145 INFO    ] 200
[2026-10-25 03:44:23,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:23,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:23,203.203 INFO    ] No update needed
[2026-10-25 03:44:23,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 03:44:23,239.239 INFO    ] 200
[2026-10-25 03:44:23,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:23,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:44:23,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:23,330.330 INFO    ] No camera update needed
[2026-10-25 03:44:23,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:44:23,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:44:23,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:44:23,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:44:25,387.387 INFO    ] ================================================
[2026-10-25 03:44:25,403.403 INFO    ] Launching Daemon at Sun Oct 25 03:44:25 IST 2026
[2026-10-25 03:44:25,414.414 INFO    ] ================================================
[2026-10-25 03:44:26,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:44:26
[2026-10-25 03:44:26,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:44:27,043.043 INFO    ] Initializing speech engine...
[2026-10-25 03:44:27,051.051 INFO    ] 2026-10-25 03:44:27
[2026-10-25 03:44:27,329.329 INFO    ] 2026-10-25 03:44:27
[2026-10-25 03:44:27,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:44:27,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:44:27,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:44:27,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:44:27,817.817 INFO    ] time= 25/10/2026 03:44:27
[2026-10-25 03:44:27,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:44:27,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:44:27,965.965 INFO    ] No existing commands found in stream
[2026-10-25 03:44:33,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:44:33,007.007 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 03:44:36,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:44:36,112.112 INFO    ] Checking for system updates...
[2026-10-25 03:44:36,153.153 INFO    ] 200
[2026-10-25 03:44:36,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:36,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:36,216.216 INFO    ] No update needed
[2026-10-25 03:44:36,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 03:44:36,256.256 INFO    ] 200
[2026-10-25 03:44:36,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:36,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:44:36,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:36,355.355 INFO    ] No camera update needed
[2026-10-25 03:44:36,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:44:36,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:44:36,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:44:36,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:44:38,411.411 INFO    ] ================================================
[2026-10-25 03:44:38,427.427 INFO    ] Launching Daemon at Sun Oct 25 03:44:38 IST 2026
[2026-10-25 03:44:38,438.438 INFO    ] ================================================
[2026-10-25 03:44:39,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:44:39
[2026-10-25 03:44:39,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:44:39,849.849 INFO    ] Initializing speech engine...
[2026-10-25 03:44:39,868.868 INFO    ] 2026-10-25 03:44:39
[2026-10-25 03:44:40,117.117 INFO    ] 2026-10-25 03:44:40
[2026-10-25 03:44:40,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:44:40,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:44:40,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:44:40,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:44:40,596.596 INFO    ] time= 25/10/2026 03:44:40
[2026-10-25 03:44:40,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:44:40,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:44:40,773.773 INFO    ] No existing commands found in stream
[2026-10-25 03:44:45,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:44:45,813.813 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 03:44:49,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:44:49,627.627 INFO    ] Checking for system updates...
[2026-10-25 03:44:49,669.669 INFO    ] 200
[2026-10-25 03:44:49,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:49,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:49,733.733 INFO    ] No update needed
[2026-10-25 03:44:49,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 03:44:49,771.771 INFO    ] 200
[2026-10-25 03:44:49,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:44:49,814.814 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:44:49,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:44:49,876.876 INFO    ] No camera update needed
[2026-10-25 03:44:49,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:44:49,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:44:49,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:44:49,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:44:51,932.932 INFO    ] ================================================
[2026-10-25 03:44:51,947.947 INFO    ] Launching Daemon at Sun Oct 25 03:44:51 IST 2026
[2026-10-25 03:44:51,958.958 INFO    ] ================================================
[2026-10-25 03:44:52,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:44:52
[2026-10-25 03:44:53,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:44:53,395.395 INFO    ] Initializing speech engine...
[2026-10-25 03:44:53,404.404 INFO    ] 2026-10-25 03:44:53
[2026-10-25 03:44:53,665.665 INFO    ] 2026-10-25 03:44:53
[2026-10-25 03:44:53,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:44:53,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:44:53,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:44:54,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:44:54,211.211 INFO    ] time= 25/10/2026 03:44:54
[2026-10-25 03:44:54,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:44:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:44:54,354.354 INFO    ] No existing commands found in stream
[2026-10-25 03:44:59,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:44:59,378.378 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 03:45:03,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:45:03,004.004 INFO    ] Checking for system updates...
[2026-10-25 03:45:03,048.048 INFO    ] 200
[2026-10-25 03:45:03,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:03,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:03,144.144 INFO    ] No update needed
[2026-10-25 03:45:03,147.147 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:03,190.190 INFO    ] 200
[2026-10-25 03:45:03,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:03,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:45:03,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:03,310.310 INFO    ] No camera update needed
[2026-10-25 03:45:03,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:45:03,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:45:03,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:45:03,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:45:05,373.373 INFO    ] ================================================
[2026-10-25 03:45:05,389.389 INFO    ] Launching Daemon at Sun Oct 25 03:45:05 IST 2026
[2026-10-25 03:45:05,400.400 INFO    ] ================================================
[2026-10-25 03:45:05,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:45:05
[2026-10-25 03:45:06,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:45:06,876.876 INFO    ] Initializing speech engine...
[2026-10-25 03:45:06,900.900 INFO    ] 2026-10-25 03:45:06
[2026-10-25 03:45:07,173.173 INFO    ] 2026-10-25 03:45:07
[2026-10-25 03:45:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:45:07,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:45:07,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:45:07,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:45:07,567.567 INFO    ] time= 25/10/2026 03:45:07
[2026-10-25 03:45:07,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:45:07,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:45:07,692.692 INFO    ] No existing commands found in stream
[2026-10-25 03:45:12,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:45:12,705.705 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 03:45:14,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:45:14,241.241 INFO    ] Checking for system updates...
[2026-10-25 03:45:14,280.280 INFO    ] 200
[2026-10-25 03:45:14,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:14,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:14,337.337 INFO    ] No update needed
[2026-10-25 03:45:14,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:14,377.377 INFO    ] 200
[2026-10-25 03:45:14,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:14,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:45:14,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:14,472.472 INFO    ] No camera update needed
[2026-10-25 03:45:14,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:45:14,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:45:14,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:45:14,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:45:16,527.527 INFO    ] ================================================
[2026-10-25 03:45:16,542.542 INFO    ] Launching Daemon at Sun Oct 25 03:45:16 IST 2026
[2026-10-25 03:45:16,553.553 INFO    ] ================================================
[2026-10-25 03:45:17,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:45:17
[2026-10-25 03:45:17,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:45:17,997.997 INFO    ] Initializing speech engine...
[2026-10-25 03:45:18,011.011 INFO    ] 2026-10-25 03:45:17
[2026-10-25 03:45:18,295.295 INFO    ] 2026-10-25 03:45:18
[2026-10-25 03:45:18,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:45:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:45:18,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:45:18,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:45:18,687.687 INFO    ] time= 25/10/2026 03:45:18
[2026-10-25 03:45:18,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:45:18,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:45:18,876.876 INFO    ] No existing commands found in stream
[2026-10-25 03:45:23,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:45:23,910.910 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 03:45:26,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:45:26,619.619 INFO    ] Checking for system updates...
[2026-10-25 03:45:26,658.658 INFO    ] 200
[2026-10-25 03:45:26,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:26,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:45:26,718.718 INFO    ] No update needed
[2026-10-25 03:45:26,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:26,755.755 INFO    ] 200
[2026-10-25 03:45:26,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:26,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:45:26,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:45:26,849.849 INFO    ] No camera update needed
[2026-10-25 03:45:26,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:45:26,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:45:26,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:45:26,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:45:28,906.906 INFO    ] ================================================
[2026-10-25 03:45:28,921.921 INFO    ] Launching Daemon at Sun Oct 25 03:45:28 IST 2026
[2026-10-25 03:45:28,932.932 INFO    ] ================================================
[2026-10-25 03:45:29,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:45:29
[2026-10-25 03:45:30,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:45:30,399.399 INFO    ] Initializing speech engine...
[2026-10-25 03:45:30,409.409 INFO    ] 2026-10-25 03:45:30
[2026-10-25 03:45:30,690.690 INFO    ] 2026-10-25 03:45:30
[2026-10-25 03:45:30,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:45:30,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:45:30,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:45:31,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:45:31,064.064 INFO    ] time= 25/10/2026 03:45:31
[2026-10-25 03:45:31,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:45:31,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:45:31,187.187 INFO    ] No existing commands found in stream
[2026-10-25 03:45:36,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:45:36,203.203 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 03:45:39,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:45:39,004.004 INFO    ] Checking for system updates...
[2026-10-25 03:45:39,040.040 INFO    ] 200
[2026-10-25 03:45:39,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:39,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:39,102.102 INFO    ] No update needed
[2026-10-25 03:45:39,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:39,140.140 INFO    ] 200
[2026-10-25 03:45:39,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:39,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:45:39,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:45:39,218.218 INFO    ] No camera update needed
[2026-10-25 03:45:39,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:45:39,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:45:39,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:45:39,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:45:41,273.273 INFO    ] ================================================
[2026-10-25 03:45:41,288.288 INFO    ] Launching Daemon at Sun Oct 25 03:45:41 IST 2026
[2026-10-25 03:45:41,299.299 INFO    ] ================================================
[2026-10-25 03:45:41,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:45:41
[2026-10-25 03:45:42,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:45:42,792.792 INFO    ] Initializing speech engine...
[2026-10-25 03:45:42,797.797 INFO    ] 2026-10-25 03:45:42
[2026-10-25 03:45:43,047.047 INFO    ] 2026-10-25 03:45:43
[2026-10-25 03:45:43,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:45:43,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:45:43,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:45:43,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:45:43,428.428 INFO    ] time= 25/10/2026 03:45:43
[2026-10-25 03:45:43,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:45:43,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:45:43,580.580 INFO    ] No existing commands found in stream
[2026-10-25 03:45:48,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:45:48,607.607 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 03:45:49,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:45:49,385.385 INFO    ] Checking for system updates...
[2026-10-25 03:45:49,424.424 INFO    ] 200
[2026-10-25 03:45:49,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:49,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:45:49,486.486 INFO    ] No update needed
[2026-10-25 03:45:49,488.488 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:49,522.522 INFO    ] 200
[2026-10-25 03:45:49,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:49,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:45:49,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:45:49,621.621 INFO    ] No camera update needed
[2026-10-25 03:45:49,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:45:49,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:45:49,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:45:49,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:45:51,675.675 INFO    ] ================================================
[2026-10-25 03:45:51,690.690 INFO    ] Launching Daemon at Sun Oct 25 03:45:51 IST 2026
[2026-10-25 03:45:51,701.701 INFO    ] ================================================
[2026-10-25 03:45:52,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:45:52
[2026-10-25 03:45:52,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:45:53,109.109 INFO    ] Initializing speech engine...
[2026-10-25 03:45:53,125.125 INFO    ] 2026-10-25 03:45:53
[2026-10-25 03:45:53,401.401 INFO    ] 2026-10-25 03:45:53
[2026-10-25 03:45:53,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:45:53,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:45:53,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:45:53,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:45:53,777.777 INFO    ] time= 25/10/2026 03:45:53
[2026-10-25 03:45:53,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:45:53,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:45:53,900.900 INFO    ] No existing commands found in stream
[2026-10-25 03:45:58,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:45:58,915.915 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 03:45:59,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:45:59,656.656 INFO    ] Checking for system updates...
[2026-10-25 03:45:59,693.693 INFO    ] 200
[2026-10-25 03:45:59,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:59,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:45:59,755.755 INFO    ] No update needed
[2026-10-25 03:45:59,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 03:45:59,797.797 INFO    ] 200
[2026-10-25 03:45:59,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:45:59,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:00,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:00,007.007 INFO    ] No camera update needed
[2026-10-25 03:46:00,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:00,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:00,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:00,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:02,065.065 INFO    ] ================================================
[2026-10-25 03:46:02,084.084 INFO    ] Launching Daemon at Sun Oct 25 03:46:02 IST 2026
[2026-10-25 03:46:02,099.099 INFO    ] ================================================
[2026-10-25 03:46:02,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:02
[2026-10-25 03:46:03,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:03,668.668 INFO    ] Initializing speech engine...
[2026-10-25 03:46:03,677.677 INFO    ] 2026-10-25 03:46:03
[2026-10-25 03:46:03,924.924 INFO    ] 2026-10-25 03:46:03
[2026-10-25 03:46:03,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:04,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:04,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:04,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:04,422.422 INFO    ] time= 25/10/2026 03:46:04
[2026-10-25 03:46:04,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:04,541.541 INFO    ] No existing commands found in stream
[2026-10-25 03:46:09,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:46:09,564.564 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 03:46:11,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:46:11,179.179 INFO    ] Checking for system updates...
[2026-10-25 03:46:11,218.218 INFO    ] 200
[2026-10-25 03:46:11,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:11,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:11,280.280 INFO    ] No update needed
[2026-10-25 03:46:11,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 03:46:11,317.317 INFO    ] 200
[2026-10-25 03:46:11,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:11,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:11,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:11,423.423 INFO    ] No camera update needed
[2026-10-25 03:46:11,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:11,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:11,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:11,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:13,481.481 INFO    ] ================================================
[2026-10-25 03:46:13,496.496 INFO    ] Launching Daemon at Sun Oct 25 03:46:13 IST 2026
[2026-10-25 03:46:13,506.506 INFO    ] ================================================
[2026-10-25 03:46:14,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:14
[2026-10-25 03:46:14,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:15,028.028 INFO    ] Initializing speech engine...
[2026-10-25 03:46:15,051.051 INFO    ] 2026-10-25 03:46:15
[2026-10-25 03:46:15,312.312 INFO    ] 2026-10-25 03:46:15
[2026-10-25 03:46:15,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:15,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:15,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:15,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:15,831.831 INFO    ] time= 25/10/2026 03:46:15
[2026-10-25 03:46:15,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:15,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:16,014.014 INFO    ] No existing commands found in stream
[2026-10-25 03:46:21,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:46:21,038.038 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 03:46:21,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:46:21,478.478 INFO    ] Checking for system updates...
[2026-10-25 03:46:21,517.517 INFO    ] 200
[2026-10-25 03:46:21,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:21,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:46:21,578.578 INFO    ] No update needed
[2026-10-25 03:46:21,580.580 INFO    ] Checking for camera pi updates...
[2026-10-25 03:46:21,617.617 INFO    ] 200
[2026-10-25 03:46:21,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:21,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:21,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:46:21,728.728 INFO    ] No camera update needed
[2026-10-25 03:46:21,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:21,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:21,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:21,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:23,785.785 INFO    ] ================================================
[2026-10-25 03:46:23,800.800 INFO    ] Launching Daemon at Sun Oct 25 03:46:23 IST 2026
[2026-10-25 03:46:23,811.811 INFO    ] ================================================
[2026-10-25 03:46:24,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:24
[2026-10-25 03:46:24,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:25,265.265 INFO    ] Initializing speech engine...
[2026-10-25 03:46:25,272.272 INFO    ] 2026-10-25 03:46:25
[2026-10-25 03:46:25,533.533 INFO    ] 2026-10-25 03:46:25
[2026-10-25 03:46:25,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:25,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:25,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:25,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:26,022.022 INFO    ] time= 25/10/2026 03:46:25
[2026-10-25 03:46:26,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:26,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:26,212.212 INFO    ] No existing commands found in stream
[2026-10-25 03:46:31,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:46:31,242.242 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 03:46:33,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:46:33,390.390 INFO    ] Checking for system updates...
[2026-10-25 03:46:33,427.427 INFO    ] 200
[2026-10-25 03:46:33,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:33,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:33,490.490 INFO    ] No update needed
[2026-10-25 03:46:33,492.492 INFO    ] Checking for camera pi updates...
[2026-10-25 03:46:33,531.531 INFO    ] 200
[2026-10-25 03:46:33,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:33,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:33,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:33,626.626 INFO    ] No camera update needed
[2026-10-25 03:46:33,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:33,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:33,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:33,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:35,683.683 INFO    ] ================================================
[2026-10-25 03:46:35,698.698 INFO    ] Launching Daemon at Sun Oct 25 03:46:35 IST 2026
[2026-10-25 03:46:35,708.708 INFO    ] ================================================
[2026-10-25 03:46:36,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:36
[2026-10-25 03:46:36,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:37,246.246 INFO    ] Initializing speech engine...
[2026-10-25 03:46:37,256.256 INFO    ] 2026-10-25 03:46:37
[2026-10-25 03:46:37,523.523 INFO    ] 2026-10-25 03:46:37
[2026-10-25 03:46:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:37,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:37,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:37,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:38,023.023 INFO    ] time= 25/10/2026 03:46:37
[2026-10-25 03:46:38,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:38,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:38,170.170 INFO    ] No existing commands found in stream
[2026-10-25 03:46:43,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:46:43,185.185 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 03:46:44,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:46:44,460.460 INFO    ] Checking for system updates...
[2026-10-25 03:46:44,501.501 INFO    ] 200
[2026-10-25 03:46:44,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:44,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:46:44,561.561 INFO    ] No update needed
[2026-10-25 03:46:44,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 03:46:44,602.602 INFO    ] 200
[2026-10-25 03:46:44,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:44,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:44,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:46:44,707.707 INFO    ] No camera update needed
[2026-10-25 03:46:44,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:44,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:44,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:44,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:46,767.767 INFO    ] ================================================
[2026-10-25 03:46:46,782.782 INFO    ] Launching Daemon at Sun Oct 25 03:46:46 IST 2026
[2026-10-25 03:46:46,793.793 INFO    ] ================================================
[2026-10-25 03:46:47,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:47
[2026-10-25 03:46:47,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:48,244.244 INFO    ] Initializing speech engine...
[2026-10-25 03:46:48,253.253 INFO    ] 2026-10-25 03:46:48
[2026-10-25 03:46:48,500.500 INFO    ] 2026-10-25 03:46:48
[2026-10-25 03:46:48,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:48,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:48,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:48,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:48,984.984 INFO    ] time= 25/10/2026 03:46:48
[2026-10-25 03:46:49,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:49,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:49,118.118 INFO    ] No existing commands found in stream
[2026-10-25 03:46:54,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:46:54,141.141 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 03:46:54,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:46:54,878.878 INFO    ] Checking for system updates...
[2026-10-25 03:46:54,915.915 INFO    ] 200
[2026-10-25 03:46:54,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:54,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:54,973.973 INFO    ] No update needed
[2026-10-25 03:46:54,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 03:46:55,013.013 INFO    ] 200
[2026-10-25 03:46:55,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:46:55,057.057 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:46:55,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:46:55,113.113 INFO    ] No camera update needed
[2026-10-25 03:46:55,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:46:55,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:46:55,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:46:55,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:46:57,171.171 INFO    ] ================================================
[2026-10-25 03:46:57,187.187 INFO    ] Launching Daemon at Sun Oct 25 03:46:57 IST 2026
[2026-10-25 03:46:57,197.197 INFO    ] ================================================
[2026-10-25 03:46:57,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:46:57
[2026-10-25 03:46:58,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:46:58,795.795 INFO    ] Initializing speech engine...
[2026-10-25 03:46:58,803.803 INFO    ] 2026-10-25 03:46:58
[2026-10-25 03:46:59,090.090 INFO    ] 2026-10-25 03:46:59
[2026-10-25 03:46:59,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:46:59,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:46:59,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:46:59,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:46:59,628.628 INFO    ] time= 25/10/2026 03:46:59
[2026-10-25 03:46:59,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:46:59,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:46:59,767.767 INFO    ] No existing commands found in stream
[2026-10-25 03:47:04,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:47:04,801.801 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 03:47:08,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:47:08,023.023 INFO    ] Checking for system updates...
[2026-10-25 03:47:08,061.061 INFO    ] 200
[2026-10-25 03:47:08,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:08,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:47:08,127.127 INFO    ] No update needed
[2026-10-25 03:47:08,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 03:47:08,165.165 INFO    ] 200
[2026-10-25 03:47:08,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:08,209.209 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:47:08,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:47:08,266.266 INFO    ] No camera update needed
[2026-10-25 03:47:08,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:47:08,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:47:08,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:47:08,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:47:10,325.325 INFO    ] ================================================
[2026-10-25 03:47:10,341.341 INFO    ] Launching Daemon at Sun Oct 25 03:47:10 IST 2026
[2026-10-25 03:47:10,351.351 INFO    ] ================================================
[2026-10-25 03:47:10,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:47:10
[2026-10-25 03:47:11,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:47:11,906.906 INFO    ] Initializing speech engine...
[2026-10-25 03:47:11,919.919 INFO    ] 2026-10-25 03:47:11
[2026-10-25 03:47:12,204.204 INFO    ] 2026-10-25 03:47:12
[2026-10-25 03:47:12,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:47:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:47:12,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:47:12,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:47:12,734.734 INFO    ] time= 25/10/2026 03:47:12
[2026-10-25 03:47:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:47:12,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:47:12,885.885 INFO    ] No existing commands found in stream
[2026-10-25 03:47:17,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:47:17,906.906 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 03:47:20,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:47:20,014.014 INFO    ] Checking for system updates...
[2026-10-25 03:47:20,052.052 INFO    ] 200
[2026-10-25 03:47:20,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:20,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:20,113.113 INFO    ] No update needed
[2026-10-25 03:47:20,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 03:47:20,153.153 INFO    ] 200
[2026-10-25 03:47:20,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:20,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:47:20,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:20,257.257 INFO    ] No camera update needed
[2026-10-25 03:47:20,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:47:20,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:47:20,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:47:20,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:47:22,314.314 INFO    ] ================================================
[2026-10-25 03:47:22,329.329 INFO    ] Launching Daemon at Sun Oct 25 03:47:22 IST 2026
[2026-10-25 03:47:22,340.340 INFO    ] ================================================
[2026-10-25 03:47:22,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:47:22
[2026-10-25 03:47:23,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:47:23,797.797 INFO    ] Initializing speech engine...
[2026-10-25 03:47:23,805.805 INFO    ] 2026-10-25 03:47:23
[2026-10-25 03:47:24,063.063 INFO    ] 2026-10-25 03:47:24
[2026-10-25 03:47:24,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:47:24,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:47:24,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:47:24,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:47:24,527.527 INFO    ] time= 25/10/2026 03:47:24
[2026-10-25 03:47:24,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:47:24,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:47:24,684.684 INFO    ] No existing commands found in stream
[2026-10-25 03:47:29,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:47:29,723.723 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 03:47:31,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:47:31,053.053 INFO    ] Checking for system updates...
[2026-10-25 03:47:31,090.090 INFO    ] 200
[2026-10-25 03:47:31,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:31,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:31,154.154 INFO    ] No update needed
[2026-10-25 03:47:31,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 03:47:31,191.191 INFO    ] 200
[2026-10-25 03:47:31,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:31,236.236 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:47:31,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:31,297.297 INFO    ] No camera update needed
[2026-10-25 03:47:31,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:47:31,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:47:31,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:47:31,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:47:33,354.354 INFO    ] ================================================
[2026-10-25 03:47:33,369.369 INFO    ] Launching Daemon at Sun Oct 25 03:47:33 IST 2026
[2026-10-25 03:47:33,380.380 INFO    ] ================================================
[2026-10-25 03:47:33,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:47:33
[2026-10-25 03:47:34,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:47:34,832.832 INFO    ] Initializing speech engine...
[2026-10-25 03:47:34,842.842 INFO    ] 2026-10-25 03:47:34
[2026-10-25 03:47:35,089.089 INFO    ] 2026-10-25 03:47:35
[2026-10-25 03:47:35,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:47:35,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:47:35,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:47:35,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:47:35,561.561 INFO    ] time= 25/10/2026 03:47:35
[2026-10-25 03:47:35,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:47:35,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:47:35,717.717 INFO    ] No existing commands found in stream
[2026-10-25 03:47:40,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:47:40,755.755 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 03:47:41,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:47:41,311.311 INFO    ] Checking for system updates...
[2026-10-25 03:47:41,352.352 INFO    ] 200
[2026-10-25 03:47:41,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:41,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:41,415.415 INFO    ] No update needed
[2026-10-25 03:47:41,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 03:47:41,453.453 INFO    ] 200
[2026-10-25 03:47:41,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:41,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:47:41,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:47:41,550.550 INFO    ] No camera update needed
[2026-10-25 03:47:41,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:47:41,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:47:41,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:47:41,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:47:43,609.609 INFO    ] ================================================
[2026-10-25 03:47:43,624.624 INFO    ] Launching Daemon at Sun Oct 25 03:47:43 IST 2026
[2026-10-25 03:47:43,635.635 INFO    ] ================================================
[2026-10-25 03:47:44,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:47:44
[2026-10-25 03:47:44,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:47:45,239.239 INFO    ] Initializing speech engine...
[2026-10-25 03:47:45,251.251 INFO    ] 2026-10-25 03:47:45
[2026-10-25 03:47:45,522.522 INFO    ] 2026-10-25 03:47:45
[2026-10-25 03:47:45,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:47:45,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:47:45,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:47:45,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:47:46,011.011 INFO    ] time= 25/10/2026 03:47:45
[2026-10-25 03:47:46,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:47:46,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:47:46,232.232 INFO    ] No existing commands found in stream
[2026-10-25 03:47:51,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:47:51,261.261 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 03:47:53,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:47:53,652.652 INFO    ] Checking for system updates...
[2026-10-25 03:47:53,689.689 INFO    ] 200
[2026-10-25 03:47:53,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:53,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:47:53,748.748 INFO    ] No update needed
[2026-10-25 03:47:53,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 03:47:53,785.785 INFO    ] 200
[2026-10-25 03:47:53,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:47:53,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:47:53,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:47:53,890.890 INFO    ] No camera update needed
[2026-10-25 03:47:53,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:47:53,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:47:53,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:47:53,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:47:55,944.944 INFO    ] ================================================
[2026-10-25 03:47:55,959.959 INFO    ] Launching Daemon at Sun Oct 25 03:47:55 IST 2026
[2026-10-25 03:47:55,969.969 INFO    ] ================================================
[2026-10-25 03:47:56,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:47:56
[2026-10-25 03:47:57,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:47:57,370.370 INFO    ] Initializing speech engine...
[2026-10-25 03:47:57,392.392 INFO    ] 2026-10-25 03:47:57
[2026-10-25 03:47:57,647.647 INFO    ] 2026-10-25 03:47:57
[2026-10-25 03:47:57,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:47:58,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:47:59,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:47:59,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:47:59,103.103 INFO    ] time= 25/10/2026 03:47:59
[2026-10-25 03:47:59,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:47:59,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:47:59,178.178 INFO    ] No existing commands found in stream
[2026-10-25 03:48:04,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:48:04,191.191 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 03:48:07,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:48:07,886.886 INFO    ] Checking for system updates...
[2026-10-25 03:48:07,922.922 INFO    ] 200
[2026-10-25 03:48:07,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:07,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:07,981.981 INFO    ] No update needed
[2026-10-25 03:48:07,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 03:48:08,017.017 INFO    ] 200
[2026-10-25 03:48:08,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:08,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:48:08,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:08,123.123 INFO    ] No camera update needed
[2026-10-25 03:48:08,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:48:08,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:48:08,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:48:08,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:48:10,177.177 INFO    ] ================================================
[2026-10-25 03:48:10,192.192 INFO    ] Launching Daemon at Sun Oct 25 03:48:10 IST 2026
[2026-10-25 03:48:10,203.203 INFO    ] ================================================
[2026-10-25 03:48:10,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:48:10
[2026-10-25 03:48:11,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:48:11,636.636 INFO    ] Initializing speech engine...
[2026-10-25 03:48:11,658.658 INFO    ] 2026-10-25 03:48:11
[2026-10-25 03:48:11,912.912 INFO    ] 2026-10-25 03:48:11
[2026-10-25 03:48:11,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:48:12,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:48:12,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:48:12,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:48:12,387.387 INFO    ] time= 25/10/2026 03:48:12
[2026-10-25 03:48:12,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:48:12,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:48:12,545.545 INFO    ] No existing commands found in stream
[2026-10-25 03:48:17,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:48:17,581.581 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 03:48:19,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:48:19,688.688 INFO    ] Checking for system updates...
[2026-10-25 03:48:19,726.726 INFO    ] 200
[2026-10-25 03:48:19,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:19,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:19,810.810 INFO    ] No update needed
[2026-10-25 03:48:19,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 03:48:19,846.846 INFO    ] 200
[2026-10-25 03:48:19,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:19,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:48:19,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:19,960.960 INFO    ] No camera update needed
[2026-10-25 03:48:19,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:48:19,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:48:19,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:48:19,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:48:22,015.015 INFO    ] ================================================
[2026-10-25 03:48:22,030.030 INFO    ] Launching Daemon at Sun Oct 25 03:48:22 IST 2026
[2026-10-25 03:48:22,041.041 INFO    ] ================================================
[2026-10-25 03:48:22,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:48:22
[2026-10-25 03:48:23,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:48:23,498.498 INFO    ] Initializing speech engine...
[2026-10-25 03:48:23,503.503 INFO    ] 2026-10-25 03:48:23
[2026-10-25 03:48:23,762.762 INFO    ] 2026-10-25 03:48:23
[2026-10-25 03:48:23,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:48:24,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:48:24,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:48:24,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:48:24,233.233 INFO    ] time= 25/10/2026 03:48:24
[2026-10-25 03:48:24,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:48:24,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:48:24,381.381 INFO    ] No existing commands found in stream
[2026-10-25 03:48:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:48:29,416.416 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 03:48:31,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:48:31,253.253 INFO    ] Checking for system updates...
[2026-10-25 03:48:31,293.293 INFO    ] 200
[2026-10-25 03:48:31,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:31,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:31,358.358 INFO    ] No update needed
[2026-10-25 03:48:31,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 03:48:31,394.394 INFO    ] 200
[2026-10-25 03:48:31,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:31,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:48:31,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:31,488.488 INFO    ] No camera update needed
[2026-10-25 03:48:31,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:48:31,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:48:31,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:48:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:48:33,546.546 INFO    ] ================================================
[2026-10-25 03:48:33,561.561 INFO    ] Launching Daemon at Sun Oct 25 03:48:33 IST 2026
[2026-10-25 03:48:33,572.572 INFO    ] ================================================
[2026-10-25 03:48:34,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:48:34
[2026-10-25 03:48:34,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:48:35,027.027 INFO    ] Initializing speech engine...
[2026-10-25 03:48:35,036.036 INFO    ] 2026-10-25 03:48:35
[2026-10-25 03:48:35,294.294 INFO    ] 2026-10-25 03:48:35
[2026-10-25 03:48:35,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:48:35,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:48:35,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:48:35,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:48:35,759.759 INFO    ] time= 25/10/2026 03:48:35
[2026-10-25 03:48:35,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:48:35,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:48:35,901.901 INFO    ] No existing commands found in stream
[2026-10-25 03:48:40,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:48:40,941.941 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 03:48:43,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:48:43,269.269 INFO    ] Checking for system updates...
[2026-10-25 03:48:43,305.305 INFO    ] 200
[2026-10-25 03:48:43,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:43,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:43,363.363 INFO    ] No update needed
[2026-10-25 03:48:43,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 03:48:43,401.401 INFO    ] 200
[2026-10-25 03:48:43,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:43,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:48:43,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:48:43,499.499 INFO    ] No camera update needed
[2026-10-25 03:48:43,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:48:43,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:48:43,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:48:43,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:48:45,556.556 INFO    ] ================================================
[2026-10-25 03:48:45,571.571 INFO    ] Launching Daemon at Sun Oct 25 03:48:45 IST 2026
[2026-10-25 03:48:45,581.581 INFO    ] ================================================
[2026-10-25 03:48:46,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:48:46
[2026-10-25 03:48:46,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:48:47,037.037 INFO    ] Initializing speech engine...
[2026-10-25 03:48:47,044.044 INFO    ] 2026-10-25 03:48:47
[2026-10-25 03:48:47,304.304 INFO    ] 2026-10-25 03:48:47
[2026-10-25 03:48:47,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:48:47,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:48:47,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:48:47,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:48:47,780.780 INFO    ] time= 25/10/2026 03:48:47
[2026-10-25 03:48:47,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:48:47,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:48:47,978.978 INFO    ] No existing commands found in stream
[2026-10-25 03:48:52,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:48:52,994.994 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 03:48:56,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:48:56,925.925 INFO    ] Checking for system updates...
[2026-10-25 03:48:56,961.961 INFO    ] 200
[2026-10-25 03:48:56,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:57,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:48:57,026.026 INFO    ] No update needed
[2026-10-25 03:48:57,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 03:48:57,065.065 INFO    ] 200
[2026-10-25 03:48:57,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:48:57,108.108 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:48:57,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:48:57,174.174 INFO    ] No camera update needed
[2026-10-25 03:48:57,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:48:57,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:48:57,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:48:57,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:48:59,232.232 INFO    ] ================================================
[2026-10-25 03:48:59,247.247 INFO    ] Launching Daemon at Sun Oct 25 03:48:59 IST 2026
[2026-10-25 03:48:59,258.258 INFO    ] ================================================
[2026-10-25 03:48:59,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:48:59
[2026-10-25 03:49:00,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:49:00,688.688 INFO    ] Initializing speech engine...
[2026-10-25 03:49:00,694.694 INFO    ] 2026-10-25 03:49:00
[2026-10-25 03:49:00,989.989 INFO    ] 2026-10-25 03:49:00
[2026-10-25 03:49:01,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:49:01,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:49:01,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:49:01,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:49:01,335.335 INFO    ] time= 25/10/2026 03:49:01
[2026-10-25 03:49:01,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:49:01,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:49:01,418.418 INFO    ] No existing commands found in stream
[2026-10-25 03:49:06,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:49:06,431.431 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 03:49:10,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:49:10,023.023 INFO    ] Checking for system updates...
[2026-10-25 03:49:10,063.063 INFO    ] 200
[2026-10-25 03:49:10,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:10,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:10,121.121 INFO    ] No update needed
[2026-10-25 03:49:10,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 03:49:10,157.157 INFO    ] 200
[2026-10-25 03:49:10,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:10,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:49:10,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:10,258.258 INFO    ] No camera update needed
[2026-10-25 03:49:10,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:49:10,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:49:10,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:49:10,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:49:12,314.314 INFO    ] ================================================
[2026-10-25 03:49:12,329.329 INFO    ] Launching Daemon at Sun Oct 25 03:49:12 IST 2026
[2026-10-25 03:49:12,339.339 INFO    ] ================================================
[2026-10-25 03:49:12,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:49:12
[2026-10-25 03:49:13,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:49:13,803.803 INFO    ] Initializing speech engine...
[2026-10-25 03:49:13,810.810 INFO    ] 2026-10-25 03:49:13
[2026-10-25 03:49:14,071.071 INFO    ] 2026-10-25 03:49:14
[2026-10-25 03:49:14,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:49:14,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:49:14,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:49:14,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:49:14,551.551 INFO    ] time= 25/10/2026 03:49:14
[2026-10-25 03:49:14,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:49:14,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:49:14,707.707 INFO    ] No existing commands found in stream
[2026-10-25 03:49:19,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:49:19,746.746 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 03:49:21,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:49:21,179.179 INFO    ] Checking for system updates...
[2026-10-25 03:49:21,216.216 INFO    ] 200
[2026-10-25 03:49:21,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:21,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:21,285.285 INFO    ] No update needed
[2026-10-25 03:49:21,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 03:49:21,321.321 INFO    ] 200
[2026-10-25 03:49:21,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:21,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:49:21,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:21,416.416 INFO    ] No camera update needed
[2026-10-25 03:49:21,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:49:21,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:49:21,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:49:21,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:49:23,479.479 INFO    ] ================================================
[2026-10-25 03:49:23,496.496 INFO    ] Launching Daemon at Sun Oct 25 03:49:23 IST 2026
[2026-10-25 03:49:23,507.507 INFO    ] ================================================
[2026-10-25 03:49:24,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:49:24
[2026-10-25 03:49:24,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:49:24,959.959 INFO    ] Initializing speech engine...
[2026-10-25 03:49:24,966.966 INFO    ] 2026-10-25 03:49:24
[2026-10-25 03:49:25,263.263 INFO    ] 2026-10-25 03:49:25
[2026-10-25 03:49:25,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:49:25,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:49:25,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:49:25,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:49:25,629.629 INFO    ] time= 25/10/2026 03:49:25
[2026-10-25 03:49:25,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:49:25,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:49:25,710.710 INFO    ] No existing commands found in stream
[2026-10-25 03:49:30,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:49:30,724.724 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 03:49:33,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:49:33,263.263 INFO    ] Checking for system updates...
[2026-10-25 03:49:33,304.304 INFO    ] 200
[2026-10-25 03:49:33,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:33,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:49:33,369.369 INFO    ] No update needed
[2026-10-25 03:49:33,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 03:49:33,406.406 INFO    ] 200
[2026-10-25 03:49:33,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:33,449.449 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:49:33,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:49:33,497.497 INFO    ] No camera update needed
[2026-10-25 03:49:33,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:49:33,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:49:33,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:49:33,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:49:35,551.551 INFO    ] ================================================
[2026-10-25 03:49:35,567.567 INFO    ] Launching Daemon at Sun Oct 25 03:49:35 IST 2026
[2026-10-25 03:49:35,577.577 INFO    ] ================================================
[2026-10-25 03:49:36,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:49:36
[2026-10-25 03:49:36,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:49:37,005.005 INFO    ] Initializing speech engine...
[2026-10-25 03:49:37,013.013 INFO    ] 2026-10-25 03:49:37
[2026-10-25 03:49:37,264.264 INFO    ] 2026-10-25 03:49:37
[2026-10-25 03:49:37,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:49:37,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:49:37,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:49:37,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:49:37,640.640 INFO    ] time= 25/10/2026 03:49:37
[2026-10-25 03:49:37,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:49:37,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:49:37,815.815 INFO    ] No existing commands found in stream
[2026-10-25 03:49:42,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:49:42,847.847 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 03:49:43,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:49:43,927.927 INFO    ] Checking for system updates...
[2026-10-25 03:49:43,970.970 INFO    ] 200
[2026-10-25 03:49:43,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:44,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:49:44,039.039 INFO    ] No update needed
[2026-10-25 03:49:44,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 03:49:44,077.077 INFO    ] 200
[2026-10-25 03:49:44,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:44,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:49:44,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:49:44,189.189 INFO    ] No camera update needed
[2026-10-25 03:49:44,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:49:44,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:49:44,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:49:44,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:49:46,249.249 INFO    ] ================================================
[2026-10-25 03:49:46,264.264 INFO    ] Launching Daemon at Sun Oct 25 03:49:46 IST 2026
[2026-10-25 03:49:46,275.275 INFO    ] ================================================
[2026-10-25 03:49:46,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:49:46
[2026-10-25 03:49:47,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:49:47,757.757 INFO    ] Initializing speech engine...
[2026-10-25 03:49:47,770.770 INFO    ] 2026-10-25 03:49:47
[2026-10-25 03:49:48,037.037 INFO    ] 2026-10-25 03:49:48
[2026-10-25 03:49:48,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:49:48,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:49:48,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:49:48,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:49:48,488.488 INFO    ] time= 25/10/2026 03:49:48
[2026-10-25 03:49:48,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:49:48,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:49:48,633.633 INFO    ] No existing commands found in stream
[2026-10-25 03:49:53,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:49:53,650.650 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 03:49:56,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:49:56,914.914 INFO    ] Checking for system updates...
[2026-10-25 03:49:56,949.949 INFO    ] 200
[2026-10-25 03:49:56,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:57,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:57,009.009 INFO    ] No update needed
[2026-10-25 03:49:57,011.011 INFO    ] Checking for camera pi updates...
[2026-10-25 03:49:57,050.050 INFO    ] 200
[2026-10-25 03:49:57,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:49:57,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:49:57,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:49:57,154.154 INFO    ] No camera update needed
[2026-10-25 03:49:57,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:49:57,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:49:57,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:49:57,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:49:59,211.211 INFO    ] ================================================
[2026-10-25 03:49:59,227.227 INFO    ] Launching Daemon at Sun Oct 25 03:49:59 IST 2026
[2026-10-25 03:49:59,238.238 INFO    ] ================================================
[2026-10-25 03:49:59,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:49:59
[2026-10-25 03:50:00,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:50:00,748.748 INFO    ] Initializing speech engine...
[2026-10-25 03:50:00,757.757 INFO    ] 2026-10-25 03:50:00
[2026-10-25 03:50:01,006.006 INFO    ] 2026-10-25 03:50:00
[2026-10-25 03:50:01,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:50:01,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:50:01,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:50:01,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:50:01,505.505 INFO    ] time= 25/10/2026 03:50:01
[2026-10-25 03:50:01,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:50:01,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:50:01,704.704 INFO    ] No existing commands found in stream
[2026-10-25 03:50:06,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:50:06,732.732 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 03:50:09,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:50:09,587.587 INFO    ] Checking for system updates...
[2026-10-25 03:50:09,623.623 INFO    ] 200
[2026-10-25 03:50:09,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:09,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:50:09,683.683 INFO    ] No update needed
[2026-10-25 03:50:09,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 03:50:09,720.720 INFO    ] 200
[2026-10-25 03:50:09,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:09,764.764 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:50:09,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:50:09,935.935 INFO    ] No camera update needed
[2026-10-25 03:50:09,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:50:09,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:50:09,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:50:09,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:50:11,990.990 INFO    ] ================================================
[2026-10-25 03:50:12,006.006 INFO    ] Launching Daemon at Sun Oct 25 03:50:12 IST 2026
[2026-10-25 03:50:12,017.017 INFO    ] ================================================
[2026-10-25 03:50:12,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:50:12
[2026-10-25 03:50:13,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:50:13,469.469 INFO    ] Initializing speech engine...
[2026-10-25 03:50:13,478.478 INFO    ] 2026-10-25 03:50:13
[2026-10-25 03:50:13,728.728 INFO    ] 2026-10-25 03:50:13
[2026-10-25 03:50:13,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:50:13,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:50:14,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:50:14,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:50:14,218.218 INFO    ] time= 25/10/2026 03:50:14
[2026-10-25 03:50:14,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:50:14,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:50:14,411.411 INFO    ] No existing commands found in stream
[2026-10-25 03:50:19,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:50:19,445.445 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 03:50:22,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:50:22,525.525 INFO    ] Checking for system updates...
[2026-10-25 03:50:22,561.561 INFO    ] 200
[2026-10-25 03:50:22,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:22,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:50:22,628.628 INFO    ] No update needed
[2026-10-25 03:50:22,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 03:50:22,665.665 INFO    ] 200
[2026-10-25 03:50:22,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:22,714.714 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:50:22,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:50:22,766.766 INFO    ] No camera update needed
[2026-10-25 03:50:22,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:50:22,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:50:22,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:50:22,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:50:24,824.824 INFO    ] ================================================
[2026-10-25 03:50:24,839.839 INFO    ] Launching Daemon at Sun Oct 25 03:50:24 IST 2026
[2026-10-25 03:50:24,850.850 INFO    ] ================================================
[2026-10-25 03:50:25,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:50:25
[2026-10-25 03:50:26,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:50:26,258.258 INFO    ] Initializing speech engine...
[2026-10-25 03:50:26,265.265 INFO    ] 2026-10-25 03:50:26
[2026-10-25 03:50:26,565.565 INFO    ] 2026-10-25 03:50:26
[2026-10-25 03:50:26,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:50:26,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:50:26,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:50:26,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:50:26,976.976 INFO    ] time= 25/10/2026 03:50:26
[2026-10-25 03:50:27,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:50:27,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:50:27,168.168 INFO    ] No existing commands found in stream
[2026-10-25 03:50:32,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:50:32,181.181 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 03:50:35,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:50:35,488.488 INFO    ] Checking for system updates...
[2026-10-25 03:50:35,529.529 INFO    ] 200
[2026-10-25 03:50:35,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:35,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:50:35,587.587 INFO    ] No update needed
[2026-10-25 03:50:35,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 03:50:35,623.623 INFO    ] 200
[2026-10-25 03:50:35,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:35,680.680 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:50:35,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:50:35,731.731 INFO    ] No camera update needed
[2026-10-25 03:50:35,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:50:35,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:50:35,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:50:35,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:50:37,786.786 INFO    ] ================================================
[2026-10-25 03:50:37,801.801 INFO    ] Launching Daemon at Sun Oct 25 03:50:37 IST 2026
[2026-10-25 03:50:37,812.812 INFO    ] ================================================
[2026-10-25 03:50:38,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:50:38
[2026-10-25 03:50:38,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:50:39,264.264 INFO    ] Initializing speech engine...
[2026-10-25 03:50:39,276.276 INFO    ] 2026-10-25 03:50:39
[2026-10-25 03:50:39,526.526 INFO    ] 2026-10-25 03:50:39
[2026-10-25 03:50:39,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:50:39,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:50:39,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:50:39,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:50:39,898.898 INFO    ] time= 25/10/2026 03:50:39
[2026-10-25 03:50:39,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:50:39,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:50:39,974.974 INFO    ] No existing commands found in stream
[2026-10-25 03:50:44,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:50:44,986.986 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 03:50:48,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:50:48,349.349 INFO    ] Checking for system updates...
[2026-10-25 03:50:48,385.385 INFO    ] 200
[2026-10-25 03:50:48,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:48,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:50:48,444.444 INFO    ] No update needed
[2026-10-25 03:50:48,446.446 INFO    ] Checking for camera pi updates...
[2026-10-25 03:50:48,481.481 INFO    ] 200
[2026-10-25 03:50:48,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:50:48,530.530 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:50:48,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:50:48,584.584 INFO    ] No camera update needed
[2026-10-25 03:50:48,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:50:48,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:50:48,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:50:48,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:50:50,640.640 INFO    ] ================================================
[2026-10-25 03:50:50,655.655 INFO    ] Launching Daemon at Sun Oct 25 03:50:50 IST 2026
[2026-10-25 03:50:50,666.666 INFO    ] ================================================
[2026-10-25 03:50:51,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:50:51
[2026-10-25 03:50:52,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:50:52,323.323 INFO    ] Initializing speech engine...
[2026-10-25 03:50:52,336.336 INFO    ] 2026-10-25 03:50:52
[2026-10-25 03:50:52,621.621 INFO    ] 2026-10-25 03:50:52
[2026-10-25 03:50:52,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:50:52,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:50:52,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:50:53,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:50:53,169.169 INFO    ] time= 25/10/2026 03:50:53
[2026-10-25 03:50:53,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:50:53,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:50:53,331.331 INFO    ] No existing commands found in stream
[2026-10-25 03:50:58,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:50:58,351.351 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 03:51:01,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:51:01,864.864 INFO    ] Checking for system updates...
[2026-10-25 03:51:01,942.942 INFO    ] 200
[2026-10-25 03:51:01,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:02,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:51:02,011.011 INFO    ] No update needed
[2026-10-25 03:51:02,014.014 INFO    ] Checking for camera pi updates...
[2026-10-25 03:51:02,061.061 INFO    ] 200
[2026-10-25 03:51:02,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:02,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:51:02,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:51:02,175.175 INFO    ] No camera update needed
[2026-10-25 03:51:02,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:51:02,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:51:02,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:51:02,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:51:04,234.234 INFO    ] ================================================
[2026-10-25 03:51:04,249.249 INFO    ] Launching Daemon at Sun Oct 25 03:51:04 IST 2026
[2026-10-25 03:51:04,259.259 INFO    ] ================================================
[2026-10-25 03:51:04,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:51:04
[2026-10-25 03:51:05,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:51:05,683.683 INFO    ] Initializing speech engine...
[2026-10-25 03:51:05,695.695 INFO    ] 2026-10-25 03:51:05
[2026-10-25 03:51:05,943.943 INFO    ] 2026-10-25 03:51:05
[2026-10-25 03:51:05,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:51:06,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:51:06,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:51:06,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:51:06,310.310 INFO    ] time= 25/10/2026 03:51:06
[2026-10-25 03:51:06,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:51:06,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:51:06,475.475 INFO    ] No existing commands found in stream
[2026-10-25 03:51:11,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:51:11,503.503 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 03:51:12,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:51:12,598.598 INFO    ] Checking for system updates...
[2026-10-25 03:51:12,635.635 INFO    ] 200
[2026-10-25 03:51:12,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:12,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:12,703.703 INFO    ] No update needed
[2026-10-25 03:51:12,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 03:51:12,745.745 INFO    ] 200
[2026-10-25 03:51:12,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:12,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:51:12,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:12,861.861 INFO    ] No camera update needed
[2026-10-25 03:51:12,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:51:12,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:51:12,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:51:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:51:14,921.921 INFO    ] ================================================
[2026-10-25 03:51:14,937.937 INFO    ] Launching Daemon at Sun Oct 25 03:51:14 IST 2026
[2026-10-25 03:51:14,948.948 INFO    ] ================================================
[2026-10-25 03:51:15,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:51:15
[2026-10-25 03:51:16,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:51:16,595.595 INFO    ] Initializing speech engine...
[2026-10-25 03:51:16,603.603 INFO    ] 2026-10-25 03:51:16
[2026-10-25 03:51:16,909.909 INFO    ] 2026-10-25 03:51:16
[2026-10-25 03:51:16,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:51:17,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:51:17,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:51:17,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:51:17,418.418 INFO    ] time= 25/10/2026 03:51:17
[2026-10-25 03:51:17,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:51:17,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:51:17,578.578 INFO    ] No existing commands found in stream
[2026-10-25 03:51:22,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:51:22,612.612 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 03:51:24,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:51:24,993.993 INFO    ] Checking for system updates...
[2026-10-25 03:51:25,030.030 INFO    ] 200
[2026-10-25 03:51:25,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:25,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:25,089.089 INFO    ] No update needed
[2026-10-25 03:51:25,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 03:51:25,130.130 INFO    ] 200
[2026-10-25 03:51:25,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:25,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:51:25,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:25,233.233 INFO    ] No camera update needed
[2026-10-25 03:51:25,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:51:25,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:51:25,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:51:25,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:51:27,287.287 INFO    ] ================================================
[2026-10-25 03:51:27,303.303 INFO    ] Launching Daemon at Sun Oct 25 03:51:27 IST 2026
[2026-10-25 03:51:27,313.313 INFO    ] ================================================
[2026-10-25 03:51:27,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:51:27
[2026-10-25 03:51:28,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:51:28,746.746 INFO    ] Initializing speech engine...
[2026-10-25 03:51:28,755.755 INFO    ] 2026-10-25 03:51:28
[2026-10-25 03:51:29,011.011 INFO    ] 2026-10-25 03:51:29
[2026-10-25 03:51:29,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:51:29,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:51:29,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:51:29,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:51:29,488.488 INFO    ] time= 25/10/2026 03:51:29
[2026-10-25 03:51:29,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:51:29,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:51:29,619.619 INFO    ] No existing commands found in stream
[2026-10-25 03:51:34,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:51:34,642.642 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 03:51:35,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:51:35,425.425 INFO    ] Checking for system updates...
[2026-10-25 03:51:35,462.462 INFO    ] 200
[2026-10-25 03:51:35,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:35,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:51:35,520.520 INFO    ] No update needed
[2026-10-25 03:51:35,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 03:51:35,557.557 INFO    ] 200
[2026-10-25 03:51:35,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:35,600.600 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:51:35,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:51:35,668.668 INFO    ] No camera update needed
[2026-10-25 03:51:35,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:51:35,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:51:35,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:51:35,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:51:37,723.723 INFO    ] ================================================
[2026-10-25 03:51:37,738.738 INFO    ] Launching Daemon at Sun Oct 25 03:51:37 IST 2026
[2026-10-25 03:51:37,749.749 INFO    ] ================================================
[2026-10-25 03:51:38,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:51:38
[2026-10-25 03:51:38,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:51:39,166.166 INFO    ] Initializing speech engine...
[2026-10-25 03:51:39,174.174 INFO    ] 2026-10-25 03:51:39
[2026-10-25 03:51:39,470.470 INFO    ] 2026-10-25 03:51:39
[2026-10-25 03:51:39,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:51:39,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:51:39,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:51:39,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:51:39,851.851 INFO    ] time= 25/10/2026 03:51:39
[2026-10-25 03:51:39,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:51:39,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:51:39,977.977 INFO    ] No existing commands found in stream
[2026-10-25 03:51:44,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:51:44,989.989 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 03:51:48,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:51:48,358.358 INFO    ] Checking for system updates...
[2026-10-25 03:51:48,398.398 INFO    ] 200
[2026-10-25 03:51:48,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:48,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:48,457.457 INFO    ] No update needed
[2026-10-25 03:51:48,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 03:51:48,494.494 INFO    ] 200
[2026-10-25 03:51:48,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:51:48,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:51:48,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:51:48,593.593 INFO    ] No camera update needed
[2026-10-25 03:51:48,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:51:48,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:51:48,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:51:48,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:51:50,648.648 INFO    ] ================================================
[2026-10-25 03:51:50,663.663 INFO    ] Launching Daemon at Sun Oct 25 03:51:50 IST 2026
[2026-10-25 03:51:50,674.674 INFO    ] ================================================
[2026-10-25 03:51:51,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:51:51
[2026-10-25 03:51:51,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:51:52,086.086 INFO    ] Initializing speech engine...
[2026-10-25 03:51:52,109.109 INFO    ] 2026-10-25 03:51:52
[2026-10-25 03:51:52,363.363 INFO    ] 2026-10-25 03:51:52
[2026-10-25 03:51:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:51:52,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:51:52,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:51:52,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:51:52,834.834 INFO    ] time= 25/10/2026 03:51:52
[2026-10-25 03:51:52,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:51:52,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:51:52,984.984 INFO    ] No existing commands found in stream
[2026-10-25 03:51:57,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:51:57,998.998 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 03:52:01,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:52:01,493.493 INFO    ] Checking for system updates...
[2026-10-25 03:52:01,589.589 INFO    ] 200
[2026-10-25 03:52:01,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:01,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:01,678.678 INFO    ] No update needed
[2026-10-25 03:52:01,681.681 INFO    ] Checking for camera pi updates...
[2026-10-25 03:52:01,725.725 INFO    ] 200
[2026-10-25 03:52:01,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:01,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:52:01,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:01,836.836 INFO    ] No camera update needed
[2026-10-25 03:52:01,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:52:01,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:52:01,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:52:01,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:52:03,905.905 INFO    ] ================================================
[2026-10-25 03:52:03,920.920 INFO    ] Launching Daemon at Sun Oct 25 03:52:03 IST 2026
[2026-10-25 03:52:03,931.931 INFO    ] ================================================
[2026-10-25 03:52:04,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:52:04
[2026-10-25 03:52:05,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:52:05,441.441 INFO    ] Initializing speech engine...
[2026-10-25 03:52:05,451.451 INFO    ] 2026-10-25 03:52:05
[2026-10-25 03:52:05,740.740 INFO    ] 2026-10-25 03:52:05
[2026-10-25 03:52:05,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:52:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:52:06,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:52:06,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:52:06,261.261 INFO    ] time= 25/10/2026 03:52:06
[2026-10-25 03:52:06,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:52:06,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:52:06,443.443 INFO    ] No existing commands found in stream
[2026-10-25 03:52:11,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:52:11,483.483 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 03:52:13,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:52:13,902.902 INFO    ] Checking for system updates...
[2026-10-25 03:52:13,939.939 INFO    ] 200
[2026-10-25 03:52:13,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:13,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:52:13,997.997 INFO    ] No update needed
[2026-10-25 03:52:14,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 03:52:14,038.038 INFO    ] 200
[2026-10-25 03:52:14,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:14,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:52:14,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:52:14,254.254 INFO    ] No camera update needed
[2026-10-25 03:52:14,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:52:14,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:52:14,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:52:14,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:52:16,315.315 INFO    ] ================================================
[2026-10-25 03:52:16,330.330 INFO    ] Launching Daemon at Sun Oct 25 03:52:16 IST 2026
[2026-10-25 03:52:16,341.341 INFO    ] ================================================
[2026-10-25 03:52:16,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:52:16
[2026-10-25 03:52:17,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:52:17,786.786 INFO    ] Initializing speech engine...
[2026-10-25 03:52:17,793.793 INFO    ] 2026-10-25 03:52:17
[2026-10-25 03:52:18,111.111 INFO    ] 2026-10-25 03:52:18
[2026-10-25 03:52:18,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:52:18,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:52:18,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:52:18,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:52:18,475.475 INFO    ] time= 25/10/2026 03:52:18
[2026-10-25 03:52:18,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:52:18,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:52:18,557.557 INFO    ] No existing commands found in stream
[2026-10-25 03:52:23,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:52:23,568.568 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 03:52:24,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:52:24,233.233 INFO    ] Checking for system updates...
[2026-10-25 03:52:24,274.274 INFO    ] 200
[2026-10-25 03:52:24,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:24,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:24,332.332 INFO    ] No update needed
[2026-10-25 03:52:24,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 03:52:24,368.368 INFO    ] 200
[2026-10-25 03:52:24,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:24,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:52:24,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:24,464.464 INFO    ] No camera update needed
[2026-10-25 03:52:24,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:52:24,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:52:24,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:52:24,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:52:26,518.518 INFO    ] ================================================
[2026-10-25 03:52:26,534.534 INFO    ] Launching Daemon at Sun Oct 25 03:52:26 IST 2026
[2026-10-25 03:52:26,544.544 INFO    ] ================================================
[2026-10-25 03:52:27,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:52:27
[2026-10-25 03:52:27,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:52:27,967.967 INFO    ] Initializing speech engine...
[2026-10-25 03:52:27,977.977 INFO    ] 2026-10-25 03:52:27
[2026-10-25 03:52:28,227.227 INFO    ] 2026-10-25 03:52:28
[2026-10-25 03:52:28,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:52:29,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:52:29,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:52:29,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:52:29,479.479 INFO    ] time= 25/10/2026 03:52:29
[2026-10-25 03:52:29,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:52:29,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:52:29,591.591 INFO    ] No existing commands found in stream
[2026-10-25 03:52:34,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:52:34,619.619 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 03:52:38,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:52:38,463.463 INFO    ] Checking for system updates...
[2026-10-25 03:52:38,499.499 INFO    ] 200
[2026-10-25 03:52:38,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:38,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:38,556.556 INFO    ] No update needed
[2026-10-25 03:52:38,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 03:52:38,597.597 INFO    ] 200
[2026-10-25 03:52:38,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:38,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:52:38,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:52:38,698.698 INFO    ] No camera update needed
[2026-10-25 03:52:38,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:52:38,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:52:38,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:52:38,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:52:40,755.755 INFO    ] ================================================
[2026-10-25 03:52:40,771.771 INFO    ] Launching Daemon at Sun Oct 25 03:52:40 IST 2026
[2026-10-25 03:52:40,782.782 INFO    ] ================================================
[2026-10-25 03:52:41,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:52:41
[2026-10-25 03:52:42,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:52:42,463.463 INFO    ] Initializing speech engine...
[2026-10-25 03:52:42,472.472 INFO    ] 2026-10-25 03:52:42
[2026-10-25 03:52:42,751.751 INFO    ] 2026-10-25 03:52:42
[2026-10-25 03:52:42,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:52:42,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:52:43,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:52:43,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:52:43,182.182 INFO    ] time= 25/10/2026 03:52:43
[2026-10-25 03:52:43,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:52:43,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:52:43,347.347 INFO    ] No existing commands found in stream
[2026-10-25 03:52:48,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:52:48,383.383 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 03:52:52,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:52:52,463.463 INFO    ] Checking for system updates...
[2026-10-25 03:52:52,500.500 INFO    ] 200
[2026-10-25 03:52:52,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:52,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:52:52,568.568 INFO    ] No update needed
[2026-10-25 03:52:52,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 03:52:52,609.609 INFO    ] 200
[2026-10-25 03:52:52,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:52:52,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:52:52,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:52:52,705.705 INFO    ] No camera update needed
[2026-10-25 03:52:52,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:52:52,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:52:52,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:52:52,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:52:54,772.772 INFO    ] ================================================
[2026-10-25 03:52:54,788.788 INFO    ] Launching Daemon at Sun Oct 25 03:52:54 IST 2026
[2026-10-25 03:52:54,799.799 INFO    ] ================================================
[2026-10-25 03:52:55,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:52:55
[2026-10-25 03:52:56,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:52:56,459.459 INFO    ] Initializing speech engine...
[2026-10-25 03:52:56,467.467 INFO    ] 2026-10-25 03:52:56
[2026-10-25 03:52:56,787.787 INFO    ] 2026-10-25 03:52:56
[2026-10-25 03:52:56,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:52:57,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:52:57,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:52:57,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:52:57,293.293 INFO    ] time= 25/10/2026 03:52:57
[2026-10-25 03:52:57,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:52:57,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:52:57,447.447 INFO    ] No existing commands found in stream
[2026-10-25 03:53:02,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:53:02,471.471 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 03:53:07,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:53:07,830.830 INFO    ] Checking for system updates...
[2026-10-25 03:53:07,867.867 INFO    ] 200
[2026-10-25 03:53:07,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:07,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:07,929.929 INFO    ] No update needed
[2026-10-25 03:53:07,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 03:53:07,966.966 INFO    ] 200
[2026-10-25 03:53:07,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:08,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:53:08,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:08,067.067 INFO    ] No camera update needed
[2026-10-25 03:53:08,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:53:08,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:53:08,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:53:08,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:53:10,126.126 INFO    ] ================================================
[2026-10-25 03:53:10,142.142 INFO    ] Launching Daemon at Sun Oct 25 03:53:10 IST 2026
[2026-10-25 03:53:10,153.153 INFO    ] ================================================
[2026-10-25 03:53:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:53:10
[2026-10-25 03:53:11,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:53:11,601.601 INFO    ] Initializing speech engine...
[2026-10-25 03:53:11,620.620 INFO    ] 2026-10-25 03:53:11
[2026-10-25 03:53:11,872.872 INFO    ] 2026-10-25 03:53:11
[2026-10-25 03:53:11,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:53:12,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:53:12,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:53:12,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:53:12,252.252 INFO    ] time= 25/10/2026 03:53:12
[2026-10-25 03:53:12,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:53:12,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:53:12,446.446 INFO    ] No existing commands found in stream
[2026-10-25 03:53:17,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:53:17,468.468 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 03:53:19,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:53:19,664.664 INFO    ] Checking for system updates...
[2026-10-25 03:53:19,704.704 INFO    ] 200
[2026-10-25 03:53:19,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:19,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:19,762.762 INFO    ] No update needed
[2026-10-25 03:53:19,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 03:53:19,798.798 INFO    ] 200
[2026-10-25 03:53:19,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:19,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:53:19,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:19,898.898 INFO    ] No camera update needed
[2026-10-25 03:53:19,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:53:19,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:53:19,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:53:19,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:53:21,955.955 INFO    ] ================================================
[2026-10-25 03:53:21,973.973 INFO    ] Launching Daemon at Sun Oct 25 03:53:21 IST 2026
[2026-10-25 03:53:21,985.985 INFO    ] ================================================
[2026-10-25 03:53:22,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:53:22
[2026-10-25 03:53:23,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:53:23,467.467 INFO    ] Initializing speech engine...
[2026-10-25 03:53:23,473.473 INFO    ] 2026-10-25 03:53:23
[2026-10-25 03:53:23,760.760 INFO    ] 2026-10-25 03:53:23
[2026-10-25 03:53:23,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:53:23,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:53:24,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:53:24,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:53:24,152.152 INFO    ] time= 25/10/2026 03:53:24
[2026-10-25 03:53:24,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:53:24,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:53:24,249.249 INFO    ] No existing commands found in stream
[2026-10-25 03:53:29,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:53:29,283.283 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 03:53:31,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:53:31,509.509 INFO    ] Checking for system updates...
[2026-10-25 03:53:31,553.553 INFO    ] 200
[2026-10-25 03:53:31,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:31,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:31,625.625 INFO    ] No update needed
[2026-10-25 03:53:31,628.628 INFO    ] Checking for camera pi updates...
[2026-10-25 03:53:31,664.664 INFO    ] 200
[2026-10-25 03:53:31,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:31,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:53:31,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:31,761.761 INFO    ] No camera update needed
[2026-10-25 03:53:31,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:53:31,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:53:31,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:53:31,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:53:33,819.819 INFO    ] ================================================
[2026-10-25 03:53:33,834.834 INFO    ] Launching Daemon at Sun Oct 25 03:53:33 IST 2026
[2026-10-25 03:53:33,845.845 INFO    ] ================================================
[2026-10-25 03:53:34,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:53:34
[2026-10-25 03:53:35,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:53:35,299.299 INFO    ] Initializing speech engine...
[2026-10-25 03:53:35,309.309 INFO    ] 2026-10-25 03:53:35
[2026-10-25 03:53:35,565.565 INFO    ] 2026-10-25 03:53:35
[2026-10-25 03:53:35,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:53:35,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:53:35,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:53:35,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:53:36,032.032 INFO    ] time= 25/10/2026 03:53:35
[2026-10-25 03:53:36,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:53:36,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:53:36,173.173 INFO    ] No existing commands found in stream
[2026-10-25 03:53:41,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:53:41,186.186 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 03:53:43,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:53:43,626.626 INFO    ] Checking for system updates...
[2026-10-25 03:53:43,664.664 INFO    ] 200
[2026-10-25 03:53:43,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:43,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:53:43,723.723 INFO    ] No update needed
[2026-10-25 03:53:43,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 03:53:43,761.761 INFO    ] 200
[2026-10-25 03:53:43,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:43,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:53:43,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:53:43,879.879 INFO    ] No camera update needed
[2026-10-25 03:53:43,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:53:43,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:53:43,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:53:43,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:53:45,938.938 INFO    ] ================================================
[2026-10-25 03:53:45,954.954 INFO    ] Launching Daemon at Sun Oct 25 03:53:45 IST 2026
[2026-10-25 03:53:45,965.965 INFO    ] ================================================
[2026-10-25 03:53:46,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:53:46
[2026-10-25 03:53:47,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:53:47,607.607 INFO    ] Initializing speech engine...
[2026-10-25 03:53:47,613.613 INFO    ] 2026-10-25 03:53:47
[2026-10-25 03:53:47,929.929 INFO    ] 2026-10-25 03:53:47
[2026-10-25 03:53:48,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:53:48,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:53:48,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:53:48,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:53:48,437.437 INFO    ] time= 25/10/2026 03:53:48
[2026-10-25 03:53:48,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:53:48,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:53:48,587.587 INFO    ] No existing commands found in stream
[2026-10-25 03:53:53,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:53:53,606.606 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 03:53:54,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:53:54,525.525 INFO    ] Checking for system updates...
[2026-10-25 03:53:54,563.563 INFO    ] 200
[2026-10-25 03:53:54,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:54,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:54,623.623 INFO    ] No update needed
[2026-10-25 03:53:54,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 03:53:54,664.664 INFO    ] 200
[2026-10-25 03:53:54,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:53:54,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:53:54,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:53:54,781.781 INFO    ] No camera update needed
[2026-10-25 03:53:54,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:53:54,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:53:54,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:53:54,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:53:56,839.839 INFO    ] ================================================
[2026-10-25 03:53:56,855.855 INFO    ] Launching Daemon at Sun Oct 25 03:53:56 IST 2026
[2026-10-25 03:53:56,866.866 INFO    ] ================================================
[2026-10-25 03:53:57,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:53:57
[2026-10-25 03:53:58,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:53:58,355.355 INFO    ] Initializing speech engine...
[2026-10-25 03:53:58,363.363 INFO    ] 2026-10-25 03:53:58
[2026-10-25 03:53:58,615.615 INFO    ] 2026-10-25 03:53:58
[2026-10-25 03:53:58,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:53:58,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:53:59,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:53:59,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:53:59,176.176 INFO    ] time= 25/10/2026 03:53:59
[2026-10-25 03:53:59,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:53:59,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:53:59,316.316 INFO    ] No existing commands found in stream
[2026-10-25 03:54:04,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:54:04,335.335 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 03:54:06,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:54:06,204.204 INFO    ] Checking for system updates...
[2026-10-25 03:54:06,239.239 INFO    ] 200
[2026-10-25 03:54:06,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:06,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:06,304.304 INFO    ] No update needed
[2026-10-25 03:54:06,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 03:54:06,343.343 INFO    ] 200
[2026-10-25 03:54:06,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:06,385.385 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:54:06,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:06,455.455 INFO    ] No camera update needed
[2026-10-25 03:54:06,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:54:06,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:54:06,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:54:06,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:54:08,512.512 INFO    ] ================================================
[2026-10-25 03:54:08,528.528 INFO    ] Launching Daemon at Sun Oct 25 03:54:08 IST 2026
[2026-10-25 03:54:08,539.539 INFO    ] ================================================
[2026-10-25 03:54:09,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:54:09
[2026-10-25 03:54:09,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:54:10,124.124 INFO    ] Initializing speech engine...
[2026-10-25 03:54:10,131.131 INFO    ] 2026-10-25 03:54:10
[2026-10-25 03:54:10,401.401 INFO    ] 2026-10-25 03:54:10
[2026-10-25 03:54:10,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:54:10,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:54:10,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:54:10,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:54:10,891.891 INFO    ] time= 25/10/2026 03:54:10
[2026-10-25 03:54:10,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:54:10,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:54:11,093.093 INFO    ] No existing commands found in stream
[2026-10-25 03:54:16,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:54:16,122.122 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 03:54:16,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:54:16,847.847 INFO    ] Checking for system updates...
[2026-10-25 03:54:16,887.887 INFO    ] 200
[2026-10-25 03:54:16,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:16,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:16,948.948 INFO    ] No update needed
[2026-10-25 03:54:16,950.950 INFO    ] Checking for camera pi updates...
[2026-10-25 03:54:16,985.985 INFO    ] 200
[2026-10-25 03:54:16,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:17,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:54:17,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:17,197.197 INFO    ] No camera update needed
[2026-10-25 03:54:17,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:54:17,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:54:17,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:54:17,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:54:19,255.255 INFO    ] ================================================
[2026-10-25 03:54:19,271.271 INFO    ] Launching Daemon at Sun Oct 25 03:54:19 IST 2026
[2026-10-25 03:54:19,281.281 INFO    ] ================================================
[2026-10-25 03:54:19,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:54:19
[2026-10-25 03:54:20,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:54:20,852.852 INFO    ] Initializing speech engine...
[2026-10-25 03:54:20,867.867 INFO    ] 2026-10-25 03:54:20
[2026-10-25 03:54:21,132.132 INFO    ] 2026-10-25 03:54:21
[2026-10-25 03:54:21,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:54:21,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:54:21,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:54:21,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:54:21,635.635 INFO    ] time= 25/10/2026 03:54:21
[2026-10-25 03:54:21,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:54:21,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:54:21,765.765 INFO    ] No existing commands found in stream
[2026-10-25 03:54:26,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:54:26,783.783 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 03:54:27,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:54:27,539.539 INFO    ] Checking for system updates...
[2026-10-25 03:54:27,576.576 INFO    ] 200
[2026-10-25 03:54:27,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:27,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:27,635.635 INFO    ] No update needed
[2026-10-25 03:54:27,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 03:54:27,676.676 INFO    ] 200
[2026-10-25 03:54:27,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:27,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:54:27,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:27,770.770 INFO    ] No camera update needed
[2026-10-25 03:54:27,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:54:27,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:54:27,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:54:27,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:54:29,826.826 INFO    ] ================================================
[2026-10-25 03:54:29,842.842 INFO    ] Launching Daemon at Sun Oct 25 03:54:29 IST 2026
[2026-10-25 03:54:29,853.853 INFO    ] ================================================
[2026-10-25 03:54:30,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:54:30
[2026-10-25 03:54:30,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:54:31,240.240 INFO    ] Initializing speech engine...
[2026-10-25 03:54:31,248.248 INFO    ] 2026-10-25 03:54:31
[2026-10-25 03:54:31,557.557 INFO    ] 2026-10-25 03:54:31
[2026-10-25 03:54:31,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:54:31,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:54:31,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:54:31,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:54:31,981.981 INFO    ] time= 25/10/2026 03:54:31
[2026-10-25 03:54:32,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:54:32,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:54:32,159.159 INFO    ] No existing commands found in stream
[2026-10-25 03:54:37,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:54:37,172.172 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 03:54:39,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:54:39,421.421 INFO    ] Checking for system updates...
[2026-10-25 03:54:39,457.457 INFO    ] 200
[2026-10-25 03:54:39,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:39,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:39,515.515 INFO    ] No update needed
[2026-10-25 03:54:39,517.517 INFO    ] Checking for camera pi updates...
[2026-10-25 03:54:39,553.553 INFO    ] 200
[2026-10-25 03:54:39,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:39,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:54:39,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:54:39,656.656 INFO    ] No camera update needed
[2026-10-25 03:54:39,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:54:39,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:54:39,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:54:39,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:54:41,713.713 INFO    ] ================================================
[2026-10-25 03:54:41,729.729 INFO    ] Launching Daemon at Sun Oct 25 03:54:41 IST 2026
[2026-10-25 03:54:41,740.740 INFO    ] ================================================
[2026-10-25 03:54:42,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:54:42
[2026-10-25 03:54:42,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:54:43,158.158 INFO    ] Initializing speech engine...
[2026-10-25 03:54:43,166.166 INFO    ] 2026-10-25 03:54:43
[2026-10-25 03:54:43,458.458 INFO    ] 2026-10-25 03:54:43
[2026-10-25 03:54:43,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:54:43,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:54:43,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:54:43,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:54:43,835.835 INFO    ] time= 25/10/2026 03:54:43
[2026-10-25 03:54:43,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:54:43,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:54:43,959.959 INFO    ] No existing commands found in stream
[2026-10-25 03:54:48,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:54:48,975.975 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 03:54:51,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:54:51,252.252 INFO    ] Checking for system updates...
[2026-10-25 03:54:51,294.294 INFO    ] 200
[2026-10-25 03:54:51,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:51,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:54:51,359.359 INFO    ] No update needed
[2026-10-25 03:54:51,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 03:54:51,399.399 INFO    ] 200
[2026-10-25 03:54:51,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:54:51,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:54:51,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:54:51,493.493 INFO    ] No camera update needed
[2026-10-25 03:54:51,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:54:51,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:54:51,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:54:51,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:54:53,549.549 INFO    ] ================================================
[2026-10-25 03:54:53,565.565 INFO    ] Launching Daemon at Sun Oct 25 03:54:53 IST 2026
[2026-10-25 03:54:53,577.577 INFO    ] ================================================
[2026-10-25 03:54:54,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:54:54
[2026-10-25 03:54:54,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:54:54,991.991 INFO    ] Initializing speech engine...
[2026-10-25 03:54:55,006.006 INFO    ] 2026-10-25 03:54:54
[2026-10-25 03:54:55,287.287 INFO    ] 2026-10-25 03:54:55
[2026-10-25 03:54:55,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:54:55,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:54:55,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:54:55,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:54:55,666.666 INFO    ] time= 25/10/2026 03:54:55
[2026-10-25 03:54:55,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:54:55,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:54:55,789.789 INFO    ] No existing commands found in stream
[2026-10-25 03:55:00,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:55:00,805.805 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 03:55:01,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:55:01,516.516 INFO    ] Checking for system updates...
[2026-10-25 03:55:01,644.644 INFO    ] 200
[2026-10-25 03:55:01,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:01,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:55:01,918.918 INFO    ] No update needed
[2026-10-25 03:55:01,922.922 INFO    ] Checking for camera pi updates...
[2026-10-25 03:55:02,013.013 INFO    ] 200
[2026-10-25 03:55:02,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:02,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:55:02,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:55:02,195.195 INFO    ] No camera update needed
[2026-10-25 03:55:02,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:55:02,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:55:02,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:55:02,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:55:04,256.256 INFO    ] ================================================
[2026-10-25 03:55:04,272.272 INFO    ] Launching Daemon at Sun Oct 25 03:55:04 IST 2026
[2026-10-25 03:55:04,283.283 INFO    ] ================================================
[2026-10-25 03:55:04,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:55:04
[2026-10-25 03:55:05,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:55:05,705.705 INFO    ] Initializing speech engine...
[2026-10-25 03:55:05,720.720 INFO    ] 2026-10-25 03:55:05
[2026-10-25 03:55:06,011.011 INFO    ] 2026-10-25 03:55:05
[2026-10-25 03:55:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:55:06,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:55:06,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:55:06,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:55:06,388.388 INFO    ] time= 25/10/2026 03:55:06
[2026-10-25 03:55:06,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:55:06,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:55:06,513.513 INFO    ] No existing commands found in stream
[2026-10-25 03:55:11,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:55:11,528.528 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 03:55:15,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:55:15,208.208 INFO    ] Checking for system updates...
[2026-10-25 03:55:15,244.244 INFO    ] 200
[2026-10-25 03:55:15,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:15,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:15,308.308 INFO    ] No update needed
[2026-10-25 03:55:15,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 03:55:15,348.348 INFO    ] 200
[2026-10-25 03:55:15,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:15,396.396 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:55:15,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:15,440.440 INFO    ] No camera update needed
[2026-10-25 03:55:15,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:55:15,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:55:15,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:55:15,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:55:17,496.496 INFO    ] ================================================
[2026-10-25 03:55:17,512.512 INFO    ] Launching Daemon at Sun Oct 25 03:55:17 IST 2026
[2026-10-25 03:55:17,523.523 INFO    ] ================================================
[2026-10-25 03:55:18,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:55:18
[2026-10-25 03:55:18,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:55:18,928.928 INFO    ] Initializing speech engine...
[2026-10-25 03:55:18,943.943 INFO    ] 2026-10-25 03:55:18
[2026-10-25 03:55:19,208.208 INFO    ] 2026-10-25 03:55:19
[2026-10-25 03:55:19,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:55:19,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:55:19,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:55:19,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:55:19,684.684 INFO    ] time= 25/10/2026 03:55:19
[2026-10-25 03:55:19,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:55:19,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:55:19,834.834 INFO    ] No existing commands found in stream
[2026-10-25 03:55:24,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:55:24,857.857 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 03:55:26,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:55:26,202.202 INFO    ] Checking for system updates...
[2026-10-25 03:55:26,242.242 INFO    ] 200
[2026-10-25 03:55:26,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:26,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:26,301.301 INFO    ] No update needed
[2026-10-25 03:55:26,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 03:55:26,337.337 INFO    ] 200
[2026-10-25 03:55:26,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:26,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:55:26,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:26,440.440 INFO    ] No camera update needed
[2026-10-25 03:55:26,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:55:26,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:55:26,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:55:26,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:55:28,497.497 INFO    ] ================================================
[2026-10-25 03:55:28,513.513 INFO    ] Launching Daemon at Sun Oct 25 03:55:28 IST 2026
[2026-10-25 03:55:28,524.524 INFO    ] ================================================
[2026-10-25 03:55:29,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:55:29
[2026-10-25 03:55:29,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:55:30,132.132 INFO    ] Initializing speech engine...
[2026-10-25 03:55:30,141.141 INFO    ] 2026-10-25 03:55:30
[2026-10-25 03:55:30,410.410 INFO    ] 2026-10-25 03:55:30
[2026-10-25 03:55:30,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:55:30,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:55:30,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:55:30,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:55:30,894.894 INFO    ] time= 25/10/2026 03:55:30
[2026-10-25 03:55:30,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:55:30,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:55:31,091.091 INFO    ] No existing commands found in stream
[2026-10-25 03:55:36,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:55:36,126.126 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 03:55:39,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:55:39,261.261 INFO    ] Checking for system updates...
[2026-10-25 03:55:39,298.298 INFO    ] 200
[2026-10-25 03:55:39,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:39,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:39,357.357 INFO    ] No update needed
[2026-10-25 03:55:39,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 03:55:39,396.396 INFO    ] 200
[2026-10-25 03:55:39,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:39,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:55:39,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:39,496.496 INFO    ] No camera update needed
[2026-10-25 03:55:39,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:55:39,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:55:39,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:55:39,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:55:41,556.556 INFO    ] ================================================
[2026-10-25 03:55:41,572.572 INFO    ] Launching Daemon at Sun Oct 25 03:55:41 IST 2026
[2026-10-25 03:55:41,583.583 INFO    ] ================================================
[2026-10-25 03:55:42,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:55:42
[2026-10-25 03:55:42,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:55:43,053.053 INFO    ] Initializing speech engine...
[2026-10-25 03:55:43,058.058 INFO    ] 2026-10-25 03:55:43
[2026-10-25 03:55:43,321.321 INFO    ] 2026-10-25 03:55:43
[2026-10-25 03:55:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:55:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:55:43,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:55:43,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:55:43,809.809 INFO    ] time= 25/10/2026 03:55:43
[2026-10-25 03:55:43,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:55:43,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:55:43,945.945 INFO    ] No existing commands found in stream
[2026-10-25 03:55:48,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:55:48,985.985 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 03:55:50,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:55:50,421.421 INFO    ] Checking for system updates...
[2026-10-25 03:55:50,458.458 INFO    ] 200
[2026-10-25 03:55:50,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:50,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:50,518.518 INFO    ] No update needed
[2026-10-25 03:55:50,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 03:55:50,559.559 INFO    ] 200
[2026-10-25 03:55:50,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:55:50,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:55:50,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:55:50,661.661 INFO    ] No camera update needed
[2026-10-25 03:55:50,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:55:50,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:55:50,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:55:50,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:55:52,717.717 INFO    ] ================================================
[2026-10-25 03:55:52,733.733 INFO    ] Launching Daemon at Sun Oct 25 03:55:52 IST 2026
[2026-10-25 03:55:52,745.745 INFO    ] ================================================
[2026-10-25 03:55:53,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:55:53
[2026-10-25 03:55:53,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:55:54,204.204 INFO    ] Initializing speech engine...
[2026-10-25 03:55:54,212.212 INFO    ] 2026-10-25 03:55:54
[2026-10-25 03:55:54,463.463 INFO    ] 2026-10-25 03:55:54
[2026-10-25 03:55:54,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:55:54,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:55:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:55:54,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:55:54,930.930 INFO    ] time= 25/10/2026 03:55:54
[2026-10-25 03:55:54,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:55:55,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:55:55,117.117 INFO    ] No existing commands found in stream
[2026-10-25 03:56:00,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:56:00,145.145 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 03:56:02,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:56:02,552.552 INFO    ] Checking for system updates...
[2026-10-25 03:56:02,604.604 INFO    ] 200
[2026-10-25 03:56:02,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:02,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:02,676.676 INFO    ] No update needed
[2026-10-25 03:56:02,679.679 INFO    ] Checking for camera pi updates...
[2026-10-25 03:56:02,719.719 INFO    ] 200
[2026-10-25 03:56:02,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:02,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:56:02,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:02,837.837 INFO    ] No camera update needed
[2026-10-25 03:56:02,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:56:02,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:56:02,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:56:02,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:56:04,904.904 INFO    ] ================================================
[2026-10-25 03:56:04,920.920 INFO    ] Launching Daemon at Sun Oct 25 03:56:04 IST 2026
[2026-10-25 03:56:04,931.931 INFO    ] ================================================
[2026-10-25 03:56:05,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:56:05
[2026-10-25 03:56:06,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:56:06,560.560 INFO    ] Initializing speech engine...
[2026-10-25 03:56:06,566.566 INFO    ] 2026-10-25 03:56:06
[2026-10-25 03:56:06,854.854 INFO    ] 2026-10-25 03:56:06
[2026-10-25 03:56:06,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:56:07,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:56:07,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:56:07,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:56:07,337.337 INFO    ] time= 25/10/2026 03:56:07
[2026-10-25 03:56:07,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:56:07,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:56:07,456.456 INFO    ] No existing commands found in stream
[2026-10-25 03:56:12,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:56:12,473.473 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 03:56:13,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:56:13,206.206 INFO    ] Checking for system updates...
[2026-10-25 03:56:13,242.242 INFO    ] 200
[2026-10-25 03:56:13,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:13,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:56:13,303.303 INFO    ] No update needed
[2026-10-25 03:56:13,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 03:56:13,341.341 INFO    ] 200
[2026-10-25 03:56:13,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:13,398.398 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:56:13,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:56:13,451.451 INFO    ] No camera update needed
[2026-10-25 03:56:13,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:56:13,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:56:13,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:56:13,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:56:15,507.507 INFO    ] ================================================
[2026-10-25 03:56:15,523.523 INFO    ] Launching Daemon at Sun Oct 25 03:56:15 IST 2026
[2026-10-25 03:56:15,534.534 INFO    ] ================================================
[2026-10-25 03:56:16,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:56:16
[2026-10-25 03:56:16,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:56:17,058.058 INFO    ] Initializing speech engine...
[2026-10-25 03:56:17,073.073 INFO    ] 2026-10-25 03:56:17
[2026-10-25 03:56:17,354.354 INFO    ] 2026-10-25 03:56:17
[2026-10-25 03:56:17,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:56:17,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:56:17,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:56:17,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:56:17,730.730 INFO    ] time= 25/10/2026 03:56:17
[2026-10-25 03:56:17,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:56:17,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:56:17,852.852 INFO    ] No existing commands found in stream
[2026-10-25 03:56:22,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:56:22,867.867 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 03:56:27,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:56:27,264.264 INFO    ] Checking for system updates...
[2026-10-25 03:56:27,300.300 INFO    ] 200
[2026-10-25 03:56:27,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:27,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:27,357.357 INFO    ] No update needed
[2026-10-25 03:56:27,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 03:56:27,397.397 INFO    ] 200
[2026-10-25 03:56:27,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:27,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:56:27,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:27,611.611 INFO    ] No camera update needed
[2026-10-25 03:56:27,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:56:27,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:56:27,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:56:27,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:56:29,666.666 INFO    ] ================================================
[2026-10-25 03:56:29,682.682 INFO    ] Launching Daemon at Sun Oct 25 03:56:29 IST 2026
[2026-10-25 03:56:29,694.694 INFO    ] ================================================
[2026-10-25 03:56:30,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:56:30
[2026-10-25 03:56:30,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:56:31,131.131 INFO    ] Initializing speech engine...
[2026-10-25 03:56:31,140.140 INFO    ] 2026-10-25 03:56:31
[2026-10-25 03:56:31,433.433 INFO    ] 2026-10-25 03:56:31
[2026-10-25 03:56:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:56:31,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:56:31,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:56:31,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:56:31,827.827 INFO    ] time= 25/10/2026 03:56:31
[2026-10-25 03:56:31,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:56:31,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:56:31,957.957 INFO    ] No existing commands found in stream
[2026-10-25 03:56:36,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:56:36,974.974 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 03:56:39,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:56:39,692.692 INFO    ] Checking for system updates...
[2026-10-25 03:56:39,732.732 INFO    ] 200
[2026-10-25 03:56:39,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:39,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:56:39,797.797 INFO    ] No update needed
[2026-10-25 03:56:39,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 03:56:39,833.833 INFO    ] 200
[2026-10-25 03:56:39,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:39,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:56:39,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:56:39,924.924 INFO    ] No camera update needed
[2026-10-25 03:56:39,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:56:39,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:56:39,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:56:39,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:56:41,980.980 INFO    ] ================================================
[2026-10-25 03:56:42,995.995 INFO    ] Launching Daemon at Sun Oct 25 03:56:41 IST 2026
[2026-10-25 03:56:42,006.006 INFO    ] ================================================
[2026-10-25 03:56:42,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:56:42
[2026-10-25 03:56:43,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:56:43,409.409 INFO    ] Initializing speech engine...
[2026-10-25 03:56:43,423.423 INFO    ] 2026-10-25 03:56:43
[2026-10-25 03:56:43,695.695 INFO    ] 2026-10-25 03:56:43
[2026-10-25 03:56:43,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:56:43,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:56:43,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:56:44,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:56:44,063.063 INFO    ] time= 25/10/2026 03:56:44
[2026-10-25 03:56:44,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:56:44,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:56:44,227.227 INFO    ] No existing commands found in stream
[2026-10-25 03:56:49,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:56:49,260.260 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 03:56:52,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:56:52,973.973 INFO    ] Checking for system updates...
[2026-10-25 03:56:53,009.009 INFO    ] 200
[2026-10-25 03:56:53,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:53,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:53,074.074 INFO    ] No update needed
[2026-10-25 03:56:53,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 03:56:53,112.112 INFO    ] 200
[2026-10-25 03:56:53,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:56:53,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:56:53,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:56:53,203.203 INFO    ] No camera update needed
[2026-10-25 03:56:53,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:56:53,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:56:53,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:56:53,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:56:55,263.263 INFO    ] ================================================
[2026-10-25 03:56:55,279.279 INFO    ] Launching Daemon at Sun Oct 25 03:56:55 IST 2026
[2026-10-25 03:56:55,290.290 INFO    ] ================================================
[2026-10-25 03:56:55,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:56:55
[2026-10-25 03:56:56,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:56:56,918.918 INFO    ] Initializing speech engine...
[2026-10-25 03:56:56,932.932 INFO    ] 2026-10-25 03:56:56
[2026-10-25 03:56:57,245.245 INFO    ] 2026-10-25 03:56:57
[2026-10-25 03:56:57,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:56:57,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:56:57,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:56:57,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:56:57,681.681 INFO    ] time= 25/10/2026 03:56:57
[2026-10-25 03:56:57,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:56:57,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:56:57,852.852 INFO    ] No existing commands found in stream
[2026-10-25 03:57:02,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:57:02,867.867 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 03:57:04,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:57:04,221.221 INFO    ] Checking for system updates...
[2026-10-25 03:57:04,259.259 INFO    ] 200
[2026-10-25 03:57:04,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:04,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:04,327.327 INFO    ] No update needed
[2026-10-25 03:57:04,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 03:57:04,370.370 INFO    ] 200
[2026-10-25 03:57:04,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:04,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:57:04,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:04,480.480 INFO    ] No camera update needed
[2026-10-25 03:57:04,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:57:04,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:57:04,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:57:04,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:57:06,541.541 INFO    ] ================================================
[2026-10-25 03:57:06,557.557 INFO    ] Launching Daemon at Sun Oct 25 03:57:06 IST 2026
[2026-10-25 03:57:06,568.568 INFO    ] ================================================
[2026-10-25 03:57:07,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:57:07
[2026-10-25 03:57:07,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:57:08,217.217 INFO    ] Initializing speech engine...
[2026-10-25 03:57:08,223.223 INFO    ] 2026-10-25 03:57:08
[2026-10-25 03:57:08,499.499 INFO    ] 2026-10-25 03:57:08
[2026-10-25 03:57:08,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:57:08,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:57:08,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:57:09,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:57:09,056.056 INFO    ] time= 25/10/2026 03:57:09
[2026-10-25 03:57:09,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:57:09,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:57:09,181.181 INFO    ] No existing commands found in stream
[2026-10-25 03:57:14,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:57:14,216.216 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 03:57:16,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:57:16,363.363 INFO    ] Checking for system updates...
[2026-10-25 03:57:16,403.403 INFO    ] 200
[2026-10-25 03:57:16,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:16,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:16,461.461 INFO    ] No update needed
[2026-10-25 03:57:16,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 03:57:16,497.497 INFO    ] 200
[2026-10-25 03:57:16,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:16,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:57:16,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:16,590.590 INFO    ] No camera update needed
[2026-10-25 03:57:16,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:57:16,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:57:16,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:57:16,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:57:18,645.645 INFO    ] ================================================
[2026-10-25 03:57:18,662.662 INFO    ] Launching Daemon at Sun Oct 25 03:57:18 IST 2026
[2026-10-25 03:57:18,673.673 INFO    ] ================================================
[2026-10-25 03:57:19,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:57:19
[2026-10-25 03:57:19,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:57:20,076.076 INFO    ] Initializing speech engine...
[2026-10-25 03:57:20,102.102 INFO    ] 2026-10-25 03:57:20
[2026-10-25 03:57:20,353.353 INFO    ] 2026-10-25 03:57:20
[2026-10-25 03:57:20,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:57:20,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:57:20,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:57:20,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:57:20,730.730 INFO    ] time= 25/10/2026 03:57:20
[2026-10-25 03:57:20,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:57:20,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:57:20,890.890 INFO    ] No existing commands found in stream
[2026-10-25 03:57:25,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:57:25,923.923 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 03:57:29,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 03:57:29,578.578 INFO    ] Checking for system updates...
[2026-10-25 03:57:29,618.618 INFO    ] 200
[2026-10-25 03:57:29,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:29,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:29,677.677 INFO    ] No update needed
[2026-10-25 03:57:29,679.679 INFO    ] Checking for camera pi updates...
[2026-10-25 03:57:29,713.713 INFO    ] 200
[2026-10-25 03:57:29,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:29,757.757 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:57:29,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:29,809.809 INFO    ] No camera update needed
[2026-10-25 03:57:29,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:57:29,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:57:29,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:57:29,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:57:31,873.873 INFO    ] ================================================
[2026-10-25 03:57:31,890.890 INFO    ] Launching Daemon at Sun Oct 25 03:57:31 IST 2026
[2026-10-25 03:57:31,903.903 INFO    ] ================================================
[2026-10-25 03:57:32,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:57:32
[2026-10-25 03:57:33,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:57:33,376.376 INFO    ] Initializing speech engine...
[2026-10-25 03:57:33,394.394 INFO    ] 2026-10-25 03:57:33
[2026-10-25 03:57:33,650.650 INFO    ] 2026-10-25 03:57:33
[2026-10-25 03:57:33,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:57:33,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:57:33,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:57:34,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:57:34,166.166 INFO    ] time= 25/10/2026 03:57:34
[2026-10-25 03:57:34,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:57:34,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:57:34,314.314 INFO    ] No existing commands found in stream
[2026-10-25 03:57:39,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:57:39,339.339 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 03:57:40,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:57:40,516.516 INFO    ] Checking for system updates...
[2026-10-25 03:57:40,555.555 INFO    ] 200
[2026-10-25 03:57:40,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:40,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:57:40,623.623 INFO    ] No update needed
[2026-10-25 03:57:40,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 03:57:40,662.662 INFO    ] 200
[2026-10-25 03:57:40,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:40,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:57:40,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:57:40,762.762 INFO    ] No camera update needed
[2026-10-25 03:57:40,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:57:40,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:57:40,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:57:40,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:57:42,817.817 INFO    ] ================================================
[2026-10-25 03:57:42,832.832 INFO    ] Launching Daemon at Sun Oct 25 03:57:42 IST 2026
[2026-10-25 03:57:42,842.842 INFO    ] ================================================
[2026-10-25 03:57:43,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:57:43
[2026-10-25 03:57:44,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:57:44,398.398 INFO    ] Initializing speech engine...
[2026-10-25 03:57:44,408.408 INFO    ] 2026-10-25 03:57:44
[2026-10-25 03:57:44,667.667 INFO    ] 2026-10-25 03:57:44
[2026-10-25 03:57:44,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:57:44,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:57:44,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:57:45,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:57:45,151.151 INFO    ] time= 25/10/2026 03:57:45
[2026-10-25 03:57:45,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:57:45,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:57:45,351.351 INFO    ] No existing commands found in stream
[2026-10-25 03:57:50,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:57:50,384.384 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 03:57:54,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 03:57:54,390.390 INFO    ] Checking for system updates...
[2026-10-25 03:57:54,426.426 INFO    ] 200
[2026-10-25 03:57:54,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:54,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:54,484.484 INFO    ] No update needed
[2026-10-25 03:57:54,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 03:57:54,520.520 INFO    ] 200
[2026-10-25 03:57:54,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:57:54,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:57:54,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:57:54,623.623 INFO    ] No camera update needed
[2026-10-25 03:57:54,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:57:54,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:57:54,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:57:54,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:57:56,682.682 INFO    ] ================================================
[2026-10-25 03:57:56,697.697 INFO    ] Launching Daemon at Sun Oct 25 03:57:56 IST 2026
[2026-10-25 03:57:56,712.712 INFO    ] ================================================
[2026-10-25 03:57:57,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:57:57
[2026-10-25 03:57:57,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:57:58,155.155 INFO    ] Initializing speech engine...
[2026-10-25 03:57:58,164.164 INFO    ] 2026-10-25 03:57:58
[2026-10-25 03:57:58,414.414 INFO    ] 2026-10-25 03:57:58
[2026-10-25 03:57:58,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:57:58,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:57:58,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:57:59,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:57:59,130.130 INFO    ] time= 25/10/2026 03:57:59
[2026-10-25 03:57:59,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:57:59,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:57:59,314.314 INFO    ] No existing commands found in stream
[2026-10-25 03:58:04,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:58:04,336.336 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 03:58:06,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:58:06,318.318 INFO    ] Checking for system updates...
[2026-10-25 03:58:06,354.354 INFO    ] 200
[2026-10-25 03:58:06,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:06,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:58:06,416.416 INFO    ] No update needed
[2026-10-25 03:58:06,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 03:58:06,452.452 INFO    ] 200
[2026-10-25 03:58:06,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:06,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:58:06,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:58:06,556.556 INFO    ] No camera update needed
[2026-10-25 03:58:06,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:58:06,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:58:06,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:58:06,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:58:08,613.613 INFO    ] ================================================
[2026-10-25 03:58:08,632.632 INFO    ] Launching Daemon at Sun Oct 25 03:58:08 IST 2026
[2026-10-25 03:58:08,642.642 INFO    ] ================================================
[2026-10-25 03:58:09,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:58:09
[2026-10-25 03:58:09,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:58:10,260.260 INFO    ] Initializing speech engine...
[2026-10-25 03:58:10,268.268 INFO    ] 2026-10-25 03:58:10
[2026-10-25 03:58:10,558.558 INFO    ] 2026-10-25 03:58:10
[2026-10-25 03:58:10,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:58:10,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:58:10,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:58:11,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:58:11,085.085 INFO    ] time= 25/10/2026 03:58:11
[2026-10-25 03:58:11,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:58:11,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:58:11,224.224 INFO    ] No existing commands found in stream
[2026-10-25 03:58:16,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:58:16,252.252 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 03:58:19,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:58:19,971.971 INFO    ] Checking for system updates...
[2026-10-25 03:58:20,009.009 INFO    ] 200
[2026-10-25 03:58:20,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:20,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:58:20,069.069 INFO    ] No update needed
[2026-10-25 03:58:20,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 03:58:20,115.115 INFO    ] 200
[2026-10-25 03:58:20,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:20,169.169 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:58:20,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:58:20,215.215 INFO    ] No camera update needed
[2026-10-25 03:58:20,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:58:20,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:58:20,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:58:20,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:58:22,273.273 INFO    ] ================================================
[2026-10-25 03:58:22,288.288 INFO    ] Launching Daemon at Sun Oct 25 03:58:22 IST 2026
[2026-10-25 03:58:22,299.299 INFO    ] ================================================
[2026-10-25 03:58:22,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:58:22
[2026-10-25 03:58:23,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:58:23,738.738 INFO    ] Initializing speech engine...
[2026-10-25 03:58:23,748.748 INFO    ] 2026-10-25 03:58:23
[2026-10-25 03:58:24,022.022 INFO    ] 2026-10-25 03:58:24
[2026-10-25 03:58:24,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:58:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:58:24,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:58:24,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:58:24,515.515 INFO    ] time= 25/10/2026 03:58:24
[2026-10-25 03:58:24,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:58:24,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:58:24,649.649 INFO    ] No existing commands found in stream
[2026-10-25 03:58:29,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:58:29,665.665 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 03:58:31,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 03:58:31,249.249 INFO    ] Checking for system updates...
[2026-10-25 03:58:31,287.287 INFO    ] 200
[2026-10-25 03:58:31,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:31,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:31,356.356 INFO    ] No update needed
[2026-10-25 03:58:31,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 03:58:31,398.398 INFO    ] 200
[2026-10-25 03:58:31,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:31,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:58:31,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:31,613.613 INFO    ] No camera update needed
[2026-10-25 03:58:31,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:58:31,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:58:31,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:58:31,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:58:33,671.671 INFO    ] ================================================
[2026-10-25 03:58:33,685.685 INFO    ] Launching Daemon at Sun Oct 25 03:58:33 IST 2026
[2026-10-25 03:58:33,696.696 INFO    ] ================================================
[2026-10-25 03:58:34,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:58:34
[2026-10-25 03:58:34,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:58:35,184.184 INFO    ] Initializing speech engine...
[2026-10-25 03:58:35,193.193 INFO    ] 2026-10-25 03:58:35
[2026-10-25 03:58:35,451.451 INFO    ] 2026-10-25 03:58:35
[2026-10-25 03:58:35,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:58:35,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:58:35,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:58:35,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:58:35,919.919 INFO    ] time= 25/10/2026 03:58:35
[2026-10-25 03:58:35,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:58:36,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:58:36,059.059 INFO    ] No existing commands found in stream
[2026-10-25 03:58:41,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:58:41,083.083 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 03:58:44,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:58:44,328.328 INFO    ] Checking for system updates...
[2026-10-25 03:58:44,372.372 INFO    ] 200
[2026-10-25 03:58:44,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:44,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:44,429.429 INFO    ] No update needed
[2026-10-25 03:58:44,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 03:58:44,466.466 INFO    ] 200
[2026-10-25 03:58:44,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:44,510.510 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:58:44,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:44,562.562 INFO    ] No camera update needed
[2026-10-25 03:58:44,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:58:44,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:58:44,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:58:44,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:58:46,617.617 INFO    ] ================================================
[2026-10-25 03:58:46,632.632 INFO    ] Launching Daemon at Sun Oct 25 03:58:46 IST 2026
[2026-10-25 03:58:46,643.643 INFO    ] ================================================
[2026-10-25 03:58:47,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:58:47
[2026-10-25 03:58:47,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:58:48,035.035 INFO    ] Initializing speech engine...
[2026-10-25 03:58:48,050.050 INFO    ] 2026-10-25 03:58:48
[2026-10-25 03:58:48,314.314 INFO    ] 2026-10-25 03:58:48
[2026-10-25 03:58:48,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:58:48,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:58:48,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:58:48,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:58:48,668.668 INFO    ] time= 25/10/2026 03:58:48
[2026-10-25 03:58:48,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:58:48,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:58:48,765.765 INFO    ] No existing commands found in stream
[2026-10-25 03:58:53,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:58:53,780.780 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 03:58:57,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 03:58:57,474.474 INFO    ] Checking for system updates...
[2026-10-25 03:58:57,511.511 INFO    ] 200
[2026-10-25 03:58:57,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:57,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:57,568.568 INFO    ] No update needed
[2026-10-25 03:58:57,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 03:58:57,604.604 INFO    ] 200
[2026-10-25 03:58:57,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:58:57,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:58:57,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:58:57,714.714 INFO    ] No camera update needed
[2026-10-25 03:58:57,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:58:57,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:58:57,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:58:57,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:58:59,771.771 INFO    ] ================================================
[2026-10-25 03:58:59,786.786 INFO    ] Launching Daemon at Sun Oct 25 03:58:59 IST 2026
[2026-10-25 03:58:59,797.797 INFO    ] ================================================
[2026-10-25 03:59:00,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:00
[2026-10-25 03:59:00,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:01,252.252 INFO    ] Initializing speech engine...
[2026-10-25 03:59:01,261.261 INFO    ] 2026-10-25 03:59:01
[2026-10-25 03:59:01,511.511 INFO    ] 2026-10-25 03:59:01
[2026-10-25 03:59:01,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:01,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:01,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:01,952.952 INFO    ] time= 25/10/2026 03:59:01
[2026-10-25 03:59:01,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:01,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:02,030.030 INFO    ] No existing commands found in stream
[2026-10-25 03:59:07,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:59:07,044.044 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 03:59:10,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:59:10,581.581 INFO    ] Checking for system updates...
[2026-10-25 03:59:10,621.621 INFO    ] 200
[2026-10-25 03:59:10,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:10,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:10,678.678 INFO    ] No update needed
[2026-10-25 03:59:10,681.681 INFO    ] Checking for camera pi updates...
[2026-10-25 03:59:10,718.718 INFO    ] 200
[2026-10-25 03:59:10,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:10,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:59:10,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:10,820.820 INFO    ] No camera update needed
[2026-10-25 03:59:10,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:59:10,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:59:10,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:59:10,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:59:12,875.875 INFO    ] ================================================
[2026-10-25 03:59:12,890.890 INFO    ] Launching Daemon at Sun Oct 25 03:59:12 IST 2026
[2026-10-25 03:59:12,901.901 INFO    ] ================================================
[2026-10-25 03:59:13,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:13
[2026-10-25 03:59:14,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:14,333.333 INFO    ] Initializing speech engine...
[2026-10-25 03:59:14,353.353 INFO    ] 2026-10-25 03:59:14
[2026-10-25 03:59:14,626.626 INFO    ] 2026-10-25 03:59:14
[2026-10-25 03:59:14,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:14,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:14,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:15,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:15,106.106 INFO    ] time= 25/10/2026 03:59:15
[2026-10-25 03:59:15,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:15,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:15,266.266 INFO    ] No existing commands found in stream
[2026-10-25 03:59:20,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:59:20,305.305 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 03:59:21,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:59:21,468.468 INFO    ] Checking for system updates...
[2026-10-25 03:59:21,504.504 INFO    ] 200
[2026-10-25 03:59:21,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:21,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:21,561.561 INFO    ] No update needed
[2026-10-25 03:59:21,564.564 INFO    ] Checking for camera pi updates...
[2026-10-25 03:59:21,598.598 INFO    ] 200
[2026-10-25 03:59:21,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:21,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:59:21,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:21,701.701 INFO    ] No camera update needed
[2026-10-25 03:59:21,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:59:21,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:59:21,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:59:21,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:59:23,755.755 INFO    ] ================================================
[2026-10-25 03:59:23,770.770 INFO    ] Launching Daemon at Sun Oct 25 03:59:23 IST 2026
[2026-10-25 03:59:23,780.780 INFO    ] ================================================
[2026-10-25 03:59:24,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:24
[2026-10-25 03:59:25,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:25,264.264 INFO    ] Initializing speech engine...
[2026-10-25 03:59:25,287.287 INFO    ] 2026-10-25 03:59:25
[2026-10-25 03:59:25,540.540 INFO    ] 2026-10-25 03:59:25
[2026-10-25 03:59:25,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:25,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:25,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:25,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:26,019.019 INFO    ] time= 25/10/2026 03:59:25
[2026-10-25 03:59:26,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:26,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:26,174.174 INFO    ] No existing commands found in stream
[2026-10-25 03:59:31,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:59:31,197.197 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 03:59:31,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:59:31,593.593 INFO    ] Checking for system updates...
[2026-10-25 03:59:31,629.629 INFO    ] 200
[2026-10-25 03:59:31,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:31,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:59:31,686.686 INFO    ] No update needed
[2026-10-25 03:59:31,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 03:59:31,726.726 INFO    ] 200
[2026-10-25 03:59:31,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:31,779.779 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:59:31,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 03:59:31,818.818 INFO    ] No camera update needed
[2026-10-25 03:59:31,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:59:31,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:59:31,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:59:31,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:59:33,876.876 INFO    ] ================================================
[2026-10-25 03:59:33,891.891 INFO    ] Launching Daemon at Sun Oct 25 03:59:33 IST 2026
[2026-10-25 03:59:33,902.902 INFO    ] ================================================
[2026-10-25 03:59:34,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:34
[2026-10-25 03:59:35,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:35,321.321 INFO    ] Initializing speech engine...
[2026-10-25 03:59:35,326.326 INFO    ] 2026-10-25 03:59:35
[2026-10-25 03:59:35,571.571 INFO    ] 2026-10-25 03:59:35
[2026-10-25 03:59:35,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:35,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:35,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:35,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:36,042.042 INFO    ] time= 25/10/2026 03:59:35
[2026-10-25 03:59:36,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:36,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:36,183.183 INFO    ] No existing commands found in stream
[2026-10-25 03:59:41,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:59:41,197.197 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 03:59:42,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 03:59:42,828.828 INFO    ] Checking for system updates...
[2026-10-25 03:59:42,863.863 INFO    ] 200
[2026-10-25 03:59:42,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:42,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:42,926.926 INFO    ] No update needed
[2026-10-25 03:59:42,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 03:59:42,962.962 INFO    ] 200
[2026-10-25 03:59:42,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:43,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:59:43,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:43,081.081 INFO    ] No camera update needed
[2026-10-25 03:59:43,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:59:43,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:59:43,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:59:43,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:59:45,135.135 INFO    ] ================================================
[2026-10-25 03:59:45,150.150 INFO    ] Launching Daemon at Sun Oct 25 03:59:45 IST 2026
[2026-10-25 03:59:45,160.160 INFO    ] ================================================
[2026-10-25 03:59:45,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:45
[2026-10-25 03:59:46,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:46,616.616 INFO    ] Initializing speech engine...
[2026-10-25 03:59:46,639.639 INFO    ] 2026-10-25 03:59:46
[2026-10-25 03:59:46,892.892 INFO    ] 2026-10-25 03:59:46
[2026-10-25 03:59:46,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:47,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:47,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:47,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:47,403.403 INFO    ] time= 25/10/2026 03:59:47
[2026-10-25 03:59:47,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:47,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:47,540.540 INFO    ] No existing commands found in stream
[2026-10-25 03:59:52,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 03:59:52,575.575 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 03:59:53,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 03:59:53,258.258 INFO    ] Checking for system updates...
[2026-10-25 03:59:53,298.298 INFO    ] 200
[2026-10-25 03:59:53,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:53,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:53,356.356 INFO    ] No update needed
[2026-10-25 03:59:53,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 03:59:53,396.396 INFO    ] 200
[2026-10-25 03:59:53,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 03:59:53,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 03:59:53,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 03:59:53,508.508 INFO    ] No camera update needed
[2026-10-25 03:59:53,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 03:59:53,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 03:59:53,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 03:59:53,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 03:59:55,563.563 INFO    ] ================================================
[2026-10-25 03:59:55,578.578 INFO    ] Launching Daemon at Sun Oct 25 03:59:55 IST 2026
[2026-10-25 03:59:55,589.589 INFO    ] ================================================
[2026-10-25 03:59:56,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 03:59:56
[2026-10-25 03:59:56,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 03:59:57,044.044 INFO    ] Initializing speech engine...
[2026-10-25 03:59:57,053.053 INFO    ] 2026-10-25 03:59:57
[2026-10-25 03:59:57,311.311 INFO    ] 2026-10-25 03:59:57
[2026-10-25 03:59:57,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 03:59:57,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 03:59:57,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 03:59:57,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 03:59:57,774.774 INFO    ] time= 25/10/2026 03:59:57
[2026-10-25 03:59:57,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 03:59:57,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 03:59:57,919.919 INFO    ] No existing commands found in stream
[2026-10-25 04:00:02,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:00:02,944.944 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 04:00:09,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:00:09,469.469 INFO    ] Checking for system updates...
[2026-10-25 04:00:09,523.523 INFO    ] 200
[2026-10-25 04:00:09,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:09,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:09,583.583 INFO    ] No update needed
[2026-10-25 04:00:09,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 04:00:09,623.623 INFO    ] 200
[2026-10-25 04:00:09,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:09,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:00:09,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:09,725.725 INFO    ] No camera update needed
[2026-10-25 04:00:09,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:00:09,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:00:09,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:00:09,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:00:11,782.782 INFO    ] ================================================
[2026-10-25 04:00:11,797.797 INFO    ] Launching Daemon at Sun Oct 25 04:00:11 IST 2026
[2026-10-25 04:00:11,807.807 INFO    ] ================================================
[2026-10-25 04:00:12,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:00:12
[2026-10-25 04:00:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:00:13,201.201 INFO    ] Initializing speech engine...
[2026-10-25 04:00:13,209.209 INFO    ] 2026-10-25 04:00:13
[2026-10-25 04:00:13,480.480 INFO    ] 2026-10-25 04:00:13
[2026-10-25 04:00:13,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:00:13,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:00:13,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:00:13,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:00:13,958.958 INFO    ] time= 25/10/2026 04:00:13
[2026-10-25 04:00:14,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:00:14,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:00:14,108.108 INFO    ] No existing commands found in stream
[2026-10-25 04:00:19,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:00:19,122.122 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 04:00:22,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:00:22,278.278 INFO    ] Checking for system updates...
[2026-10-25 04:00:22,318.318 INFO    ] 200
[2026-10-25 04:00:22,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:22,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:22,380.380 INFO    ] No update needed
[2026-10-25 04:00:22,383.383 INFO    ] Checking for camera pi updates...
[2026-10-25 04:00:22,419.419 INFO    ] 200
[2026-10-25 04:00:22,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:22,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:00:22,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:22,510.510 INFO    ] No camera update needed
[2026-10-25 04:00:22,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:00:22,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:00:22,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:00:22,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:00:24,569.569 INFO    ] ================================================
[2026-10-25 04:00:24,584.584 INFO    ] Launching Daemon at Sun Oct 25 04:00:24 IST 2026
[2026-10-25 04:00:24,594.594 INFO    ] ================================================
[2026-10-25 04:00:25,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:00:25
[2026-10-25 04:00:25,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:00:26,011.011 INFO    ] Initializing speech engine...
[2026-10-25 04:00:26,020.020 INFO    ] 2026-10-25 04:00:26
[2026-10-25 04:00:26,266.266 INFO    ] 2026-10-25 04:00:26
[2026-10-25 04:00:26,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:00:26,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:00:26,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:00:26,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:00:26,754.754 INFO    ] time= 25/10/2026 04:00:26
[2026-10-25 04:00:26,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:00:26,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:00:26,940.940 INFO    ] No existing commands found in stream
[2026-10-25 04:00:31,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:00:31,965.965 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 04:00:34,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:00:34,872.872 INFO    ] Checking for system updates...
[2026-10-25 04:00:34,911.911 INFO    ] 200
[2026-10-25 04:00:34,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:34,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:00:34,969.969 INFO    ] No update needed
[2026-10-25 04:00:34,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 04:00:35,007.007 INFO    ] 200
[2026-10-25 04:00:35,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:35,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:00:35,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:00:35,104.104 INFO    ] No camera update needed
[2026-10-25 04:00:35,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:00:35,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:00:35,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:00:35,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:00:37,161.161 INFO    ] ================================================
[2026-10-25 04:00:37,176.176 INFO    ] Launching Daemon at Sun Oct 25 04:00:37 IST 2026
[2026-10-25 04:00:37,187.187 INFO    ] ================================================
[2026-10-25 04:00:37,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:00:37
[2026-10-25 04:00:38,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:00:38,598.598 INFO    ] Initializing speech engine...
[2026-10-25 04:00:38,613.613 INFO    ] 2026-10-25 04:00:38
[2026-10-25 04:00:38,879.879 INFO    ] 2026-10-25 04:00:38
[2026-10-25 04:00:38,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:00:39,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:00:39,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:00:39,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:00:39,341.341 INFO    ] time= 25/10/2026 04:00:39
[2026-10-25 04:00:39,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:00:39,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:00:39,518.518 INFO    ] No existing commands found in stream
[2026-10-25 04:00:44,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:00:44,532.532 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 04:00:46,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:00:46,455.455 INFO    ] Checking for system updates...
[2026-10-25 04:00:46,491.491 INFO    ] 200
[2026-10-25 04:00:46,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:46,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:46,554.554 INFO    ] No update needed
[2026-10-25 04:00:46,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 04:00:46,591.591 INFO    ] 200
[2026-10-25 04:00:46,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:46,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:00:46,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:46,682.682 INFO    ] No camera update needed
[2026-10-25 04:00:46,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:00:46,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:00:46,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:00:46,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:00:48,737.737 INFO    ] ================================================
[2026-10-25 04:00:48,753.753 INFO    ] Launching Daemon at Sun Oct 25 04:00:48 IST 2026
[2026-10-25 04:00:48,768.768 INFO    ] ================================================
[2026-10-25 04:00:49,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:00:49
[2026-10-25 04:00:49,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:00:50,194.194 INFO    ] Initializing speech engine...
[2026-10-25 04:00:50,203.203 INFO    ] 2026-10-25 04:00:50
[2026-10-25 04:00:50,449.449 INFO    ] 2026-10-25 04:00:50
[2026-10-25 04:00:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:00:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:00:50,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:00:50,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:00:50,896.896 INFO    ] time= 25/10/2026 04:00:50
[2026-10-25 04:00:50,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:00:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:00:51,066.066 INFO    ] No existing commands found in stream
[2026-10-25 04:00:56,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:00:56,089.089 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 04:00:59,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:00:59,327.327 INFO    ] Checking for system updates...
[2026-10-25 04:00:59,363.363 INFO    ] 200
[2026-10-25 04:00:59,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:59,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:59,448.448 INFO    ] No update needed
[2026-10-25 04:00:59,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 04:00:59,487.487 INFO    ] 200
[2026-10-25 04:00:59,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:00:59,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:00:59,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:00:59,582.582 INFO    ] No camera update needed
[2026-10-25 04:00:59,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:00:59,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:00:59,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:00:59,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:01:01,645.645 INFO    ] ================================================
[2026-10-25 04:01:01,661.661 INFO    ] Launching Daemon at Sun Oct 25 04:01:01 IST 2026
[2026-10-25 04:01:01,671.671 INFO    ] ================================================
[2026-10-25 04:01:02,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:01:02
[2026-10-25 04:01:03,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:01:03,403.403 INFO    ] Initializing speech engine...
[2026-10-25 04:01:03,420.420 INFO    ] 2026-10-25 04:01:03
[2026-10-25 04:01:03,691.691 INFO    ] 2026-10-25 04:01:03
[2026-10-25 04:01:03,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:01:03,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:01:03,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:01:04,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:01:04,077.077 INFO    ] time= 25/10/2026 04:01:04
[2026-10-25 04:01:04,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:01:04,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:01:04,260.260 INFO    ] No existing commands found in stream
[2026-10-25 04:01:09,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:01:09,287.287 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 04:01:12,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:01:12,505.505 INFO    ] Checking for system updates...
[2026-10-25 04:01:12,542.542 INFO    ] 200
[2026-10-25 04:01:12,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:12,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:01:12,601.601 INFO    ] No update needed
[2026-10-25 04:01:12,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 04:01:12,644.644 INFO    ] 200
[2026-10-25 04:01:12,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:12,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:01:12,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:01:12,750.750 INFO    ] No camera update needed
[2026-10-25 04:01:12,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:01:12,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:01:12,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:01:12,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:01:14,810.810 INFO    ] ================================================
[2026-10-25 04:01:14,833.833 INFO    ] Launching Daemon at Sun Oct 25 04:01:14 IST 2026
[2026-10-25 04:01:14,843.843 INFO    ] ================================================
[2026-10-25 04:01:15,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:01:15
[2026-10-25 04:01:16,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:01:16,327.327 INFO    ] Initializing speech engine...
[2026-10-25 04:01:16,336.336 INFO    ] 2026-10-25 04:01:16
[2026-10-25 04:01:16,617.617 INFO    ] 2026-10-25 04:01:16
[2026-10-25 04:01:16,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:01:16,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:01:16,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:01:16,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:01:16,979.979 INFO    ] time= 25/10/2026 04:01:16
[2026-10-25 04:01:16,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:01:17,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:01:17,103.103 INFO    ] No existing commands found in stream
[2026-10-25 04:01:22,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:01:22,117.117 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 04:01:25,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:01:25,058.058 INFO    ] Checking for system updates...
[2026-10-25 04:01:25,097.097 INFO    ] 200
[2026-10-25 04:01:25,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:25,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:25,158.158 INFO    ] No update needed
[2026-10-25 04:01:25,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 04:01:25,195.195 INFO    ] 200
[2026-10-25 04:01:25,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:25,242.242 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:01:25,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:25,291.291 INFO    ] No camera update needed
[2026-10-25 04:01:25,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:01:25,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:01:25,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:01:25,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:01:27,350.350 INFO    ] ================================================
[2026-10-25 04:01:27,365.365 INFO    ] Launching Daemon at Sun Oct 25 04:01:27 IST 2026
[2026-10-25 04:01:27,375.375 INFO    ] ================================================
[2026-10-25 04:01:27,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:01:27
[2026-10-25 04:01:28,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:01:28,821.821 INFO    ] Initializing speech engine...
[2026-10-25 04:01:28,838.838 INFO    ] 2026-10-25 04:01:28
[2026-10-25 04:01:29,103.103 INFO    ] 2026-10-25 04:01:29
[2026-10-25 04:01:29,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:01:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:01:29,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:01:29,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:01:29,478.478 INFO    ] time= 25/10/2026 04:01:29
[2026-10-25 04:01:29,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:01:29,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:01:29,587.587 INFO    ] No existing commands found in stream
[2026-10-25 04:01:34,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:01:34,602.602 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 04:01:35,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:01:35,527.527 INFO    ] Checking for system updates...
[2026-10-25 04:01:35,565.565 INFO    ] 200
[2026-10-25 04:01:35,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:35,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:35,628.628 INFO    ] No update needed
[2026-10-25 04:01:35,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 04:01:35,667.667 INFO    ] 200
[2026-10-25 04:01:35,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:35,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:01:35,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:35,768.768 INFO    ] No camera update needed
[2026-10-25 04:01:35,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:01:35,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:01:35,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:01:35,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:01:37,822.822 INFO    ] ================================================
[2026-10-25 04:01:37,838.838 INFO    ] Launching Daemon at Sun Oct 25 04:01:37 IST 2026
[2026-10-25 04:01:37,849.849 INFO    ] ================================================
[2026-10-25 04:01:38,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:01:38
[2026-10-25 04:01:39,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:01:39,430.430 INFO    ] Initializing speech engine...
[2026-10-25 04:01:39,438.438 INFO    ] 2026-10-25 04:01:39
[2026-10-25 04:01:39,712.712 INFO    ] 2026-10-25 04:01:39
[2026-10-25 04:01:39,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:01:39,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:01:40,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:01:40,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:01:40,184.184 INFO    ] time= 25/10/2026 04:01:40
[2026-10-25 04:01:40,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:01:40,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:01:40,403.403 INFO    ] No existing commands found in stream
[2026-10-25 04:01:45,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:01:45,427.427 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 04:01:49,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:01:49,259.259 INFO    ] Checking for system updates...
[2026-10-25 04:01:49,300.300 INFO    ] 200
[2026-10-25 04:01:49,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:49,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:49,360.360 INFO    ] No update needed
[2026-10-25 04:01:49,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 04:01:49,399.399 INFO    ] 200
[2026-10-25 04:01:49,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:01:49,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:01:49,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:01:49,499.499 INFO    ] No camera update needed
[2026-10-25 04:01:49,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:01:49,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:01:49,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:01:49,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:01:51,555.555 INFO    ] ================================================
[2026-10-25 04:01:51,571.571 INFO    ] Launching Daemon at Sun Oct 25 04:01:51 IST 2026
[2026-10-25 04:01:51,584.584 INFO    ] ================================================
[2026-10-25 04:01:52,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:01:52
[2026-10-25 04:01:52,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:01:53,025.025 INFO    ] Initializing speech engine...
[2026-10-25 04:01:53,035.035 INFO    ] 2026-10-25 04:01:53
[2026-10-25 04:01:53,280.280 INFO    ] 2026-10-25 04:01:53
[2026-10-25 04:01:53,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:01:53,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:01:53,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:01:53,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:01:53,651.651 INFO    ] time= 25/10/2026 04:01:53
[2026-10-25 04:01:53,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:01:53,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:01:53,727.727 INFO    ] No existing commands found in stream
[2026-10-25 04:01:58,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:01:58,765.765 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 04:02:03,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:02:03,049.049 INFO    ] Checking for system updates...
[2026-10-25 04:02:03,095.095 INFO    ] 200
[2026-10-25 04:02:03,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:03,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:03,183.183 INFO    ] No update needed
[2026-10-25 04:02:03,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:03,245.245 INFO    ] 200
[2026-10-25 04:02:03,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:03,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:03,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:03,358.358 INFO    ] No camera update needed
[2026-10-25 04:02:03,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:03,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:03,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:03,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:02:05,422.422 INFO    ] ================================================
[2026-10-25 04:02:05,438.438 INFO    ] Launching Daemon at Sun Oct 25 04:02:05 IST 2026
[2026-10-25 04:02:05,449.449 INFO    ] ================================================
[2026-10-25 04:02:06,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:02:06
[2026-10-25 04:02:06,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:02:07,041.041 INFO    ] Initializing speech engine...
[2026-10-25 04:02:07,048.048 INFO    ] 2026-10-25 04:02:07
[2026-10-25 04:02:07,319.319 INFO    ] 2026-10-25 04:02:07
[2026-10-25 04:02:07,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:02:07,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:02:07,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:02:07,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:02:07,804.804 INFO    ] time= 25/10/2026 04:02:07
[2026-10-25 04:02:07,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:02:07,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:02:07,935.935 INFO    ] No existing commands found in stream
[2026-10-25 04:02:12,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:02:12,953.953 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 04:02:14,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:02:14,386.386 INFO    ] Checking for system updates...
[2026-10-25 04:02:14,423.423 INFO    ] 200
[2026-10-25 04:02:14,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:14,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:14,491.491 INFO    ] No update needed
[2026-10-25 04:02:14,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:14,527.527 INFO    ] 200
[2026-10-25 04:02:14,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:14,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:14,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:14,642.642 INFO    ] No camera update needed
[2026-10-25 04:02:14,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:14,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:14,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:14,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:02:16,699.699 INFO    ] ================================================
[2026-10-25 04:02:16,715.715 INFO    ] Launching Daemon at Sun Oct 25 04:02:16 IST 2026
[2026-10-25 04:02:16,726.726 INFO    ] ================================================
[2026-10-25 04:02:17,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:02:17
[2026-10-25 04:02:17,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:02:18,175.175 INFO    ] Initializing speech engine...
[2026-10-25 04:02:18,190.190 INFO    ] 2026-10-25 04:02:18
[2026-10-25 04:02:18,472.472 INFO    ] 2026-10-25 04:02:18
[2026-10-25 04:02:18,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:02:18,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:02:18,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:02:18,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:02:18,865.865 INFO    ] time= 25/10/2026 04:02:18
[2026-10-25 04:02:18,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:02:18,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:02:18,973.973 INFO    ] No existing commands found in stream
[2026-10-25 04:02:23,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:02:23,987.987 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 04:02:27,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:02:27,065.065 INFO    ] Checking for system updates...
[2026-10-25 04:02:27,105.105 INFO    ] 200
[2026-10-25 04:02:27,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:27,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:27,164.164 INFO    ] No update needed
[2026-10-25 04:02:27,167.167 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:27,205.205 INFO    ] 200
[2026-10-25 04:02:27,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:27,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:27,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:27,299.299 INFO    ] No camera update needed
[2026-10-25 04:02:27,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:27,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:27,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:27,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:02:29,355.355 INFO    ] ================================================
[2026-10-25 04:02:29,371.371 INFO    ] Launching Daemon at Sun Oct 25 04:02:29 IST 2026
[2026-10-25 04:02:29,382.382 INFO    ] ================================================
[2026-10-25 04:02:29,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:02:29
[2026-10-25 04:02:30,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:02:30,792.792 INFO    ] Initializing speech engine...
[2026-10-25 04:02:30,810.810 INFO    ] 2026-10-25 04:02:30
[2026-10-25 04:02:31,057.057 INFO    ] 2026-10-25 04:02:31
[2026-10-25 04:02:31,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:02:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:02:31,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:02:31,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:02:31,543.543 INFO    ] time= 25/10/2026 04:02:31
[2026-10-25 04:02:31,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:02:31,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:02:31,752.752 INFO    ] No existing commands found in stream
[2026-10-25 04:02:36,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:02:36,781.781 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 04:02:37,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:02:37,369.369 INFO    ] Checking for system updates...
[2026-10-25 04:02:37,408.408 INFO    ] 200
[2026-10-25 04:02:37,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:37,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:37,473.473 INFO    ] No update needed
[2026-10-25 04:02:37,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:37,509.509 INFO    ] 200
[2026-10-25 04:02:37,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:37,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:37,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:02:37,811.811 INFO    ] No camera update needed
[2026-10-25 04:02:37,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:37,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:37,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:37,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:02:39,867.867 INFO    ] ================================================
[2026-10-25 04:02:39,883.883 INFO    ] Launching Daemon at Sun Oct 25 04:02:39 IST 2026
[2026-10-25 04:02:39,894.894 INFO    ] ================================================
[2026-10-25 04:02:40,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:02:40
[2026-10-25 04:02:41,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:02:41,296.296 INFO    ] Initializing speech engine...
[2026-10-25 04:02:41,302.302 INFO    ] 2026-10-25 04:02:41
[2026-10-25 04:02:41,591.591 INFO    ] 2026-10-25 04:02:41
[2026-10-25 04:02:41,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:02:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:02:41,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:02:41,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:02:42,002.002 INFO    ] time= 25/10/2026 04:02:41
[2026-10-25 04:02:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:02:42,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:02:42,089.089 INFO    ] No existing commands found in stream
[2026-10-25 04:02:47,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:02:47,105.105 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 04:02:47,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:02:47,927.927 INFO    ] Checking for system updates...
[2026-10-25 04:02:47,966.966 INFO    ] 200
[2026-10-25 04:02:47,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:48,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:48,024.024 INFO    ] No update needed
[2026-10-25 04:02:48,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:48,066.066 INFO    ] 200
[2026-10-25 04:02:48,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:48,108.108 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:48,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:48,162.162 INFO    ] No camera update needed
[2026-10-25 04:02:48,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:48,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:48,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:48,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:02:50,216.216 INFO    ] ================================================
[2026-10-25 04:02:50,231.231 INFO    ] Launching Daemon at Sun Oct 25 04:02:50 IST 2026
[2026-10-25 04:02:50,242.242 INFO    ] ================================================
[2026-10-25 04:02:50,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:02:50
[2026-10-25 04:02:51,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:02:51,666.666 INFO    ] Initializing speech engine...
[2026-10-25 04:02:51,671.671 INFO    ] 2026-10-25 04:02:51
[2026-10-25 04:02:51,955.955 INFO    ] 2026-10-25 04:02:51
[2026-10-25 04:02:51,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:02:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:02:52,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:02:52,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:02:52,332.332 INFO    ] time= 25/10/2026 04:02:52
[2026-10-25 04:02:52,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:02:52,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:02:52,506.506 INFO    ] No existing commands found in stream
[2026-10-25 04:02:57,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:02:57,534.534 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 04:02:59,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:02:59,341.341 INFO    ] Checking for system updates...
[2026-10-25 04:02:59,378.378 INFO    ] 200
[2026-10-25 04:02:59,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:59,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:59,437.437 INFO    ] No update needed
[2026-10-25 04:02:59,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 04:02:59,473.473 INFO    ] 200
[2026-10-25 04:02:59,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:02:59,522.522 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:02:59,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:02:59,572.572 INFO    ] No camera update needed
[2026-10-25 04:02:59,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:02:59,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:02:59,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:02:59,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:03:01,630.630 INFO    ] ================================================
[2026-10-25 04:03:01,645.645 INFO    ] Launching Daemon at Sun Oct 25 04:03:01 IST 2026
[2026-10-25 04:03:01,656.656 INFO    ] ================================================
[2026-10-25 04:03:02,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:03:02
[2026-10-25 04:03:03,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:03:03,379.379 INFO    ] Initializing speech engine...
[2026-10-25 04:03:03,405.405 INFO    ] 2026-10-25 04:03:03
[2026-10-25 04:03:03,695.695 INFO    ] 2026-10-25 04:03:03
[2026-10-25 04:03:03,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:03:03,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:03:03,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:03:04,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:03:04,100.100 INFO    ] time= 25/10/2026 04:03:04
[2026-10-25 04:03:04,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:03:04,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:03:04,269.269 INFO    ] No existing commands found in stream
[2026-10-25 04:03:09,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:03:09,304.304 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 04:03:13,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:03:13,608.608 INFO    ] Checking for system updates...
[2026-10-25 04:03:13,648.648 INFO    ] 200
[2026-10-25 04:03:13,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:13,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:03:13,711.711 INFO    ] No update needed
[2026-10-25 04:03:13,714.714 INFO    ] Checking for camera pi updates...
[2026-10-25 04:03:13,752.752 INFO    ] 200
[2026-10-25 04:03:13,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:13,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:03:13,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:03:13,847.847 INFO    ] No camera update needed
[2026-10-25 04:03:13,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:03:13,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:03:13,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:03:13,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:03:15,903.903 INFO    ] ================================================
[2026-10-25 04:03:15,918.918 INFO    ] Launching Daemon at Sun Oct 25 04:03:15 IST 2026
[2026-10-25 04:03:15,933.933 INFO    ] ================================================
[2026-10-25 04:03:16,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:03:16
[2026-10-25 04:03:17,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:03:17,365.365 INFO    ] Initializing speech engine...
[2026-10-25 04:03:17,387.387 INFO    ] 2026-10-25 04:03:17
[2026-10-25 04:03:17,640.640 INFO    ] 2026-10-25 04:03:17
[2026-10-25 04:03:17,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:03:17,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:03:17,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:03:18,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:03:18,123.123 INFO    ] time= 25/10/2026 04:03:18
[2026-10-25 04:03:18,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:03:18,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:03:18,254.254 INFO    ] No existing commands found in stream
[2026-10-25 04:03:23,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:03:23,269.269 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 04:03:24,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:03:24,995.995 INFO    ] Checking for system updates...
[2026-10-25 04:03:25,040.040 INFO    ] 200
[2026-10-25 04:03:25,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:25,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:03:25,110.110 INFO    ] No update needed
[2026-10-25 04:03:25,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 04:03:25,153.153 INFO    ] 200
[2026-10-25 04:03:25,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:25,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:03:25,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:03:25,263.263 INFO    ] No camera update needed
[2026-10-25 04:03:25,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:03:25,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:03:25,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:03:25,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:03:27,319.319 INFO    ] ================================================
[2026-10-25 04:03:27,334.334 INFO    ] Launching Daemon at Sun Oct 25 04:03:27 IST 2026
[2026-10-25 04:03:27,345.345 INFO    ] ================================================
[2026-10-25 04:03:27,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:03:27
[2026-10-25 04:03:28,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:03:28,745.745 INFO    ] Initializing speech engine...
[2026-10-25 04:03:28,759.759 INFO    ] 2026-10-25 04:03:28
[2026-10-25 04:03:29,022.022 INFO    ] 2026-10-25 04:03:29
[2026-10-25 04:03:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:03:29,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:03:29,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:03:29,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:03:29,500.500 INFO    ] time= 25/10/2026 04:03:29
[2026-10-25 04:03:29,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:03:29,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:03:29,648.648 INFO    ] No existing commands found in stream
[2026-10-25 04:03:34,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:03:34,663.663 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 04:03:37,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:03:37,374.374 INFO    ] Checking for system updates...
[2026-10-25 04:03:37,410.410 INFO    ] 200
[2026-10-25 04:03:37,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:37,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:03:37,509.509 INFO    ] No update needed
[2026-10-25 04:03:37,511.511 INFO    ] Checking for camera pi updates...
[2026-10-25 04:03:37,548.548 INFO    ] 200
[2026-10-25 04:03:37,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:37,598.598 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:03:37,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:03:37,722.722 INFO    ] No camera update needed
[2026-10-25 04:03:37,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:03:37,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:03:37,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:03:37,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:03:39,778.778 INFO    ] ================================================
[2026-10-25 04:03:39,794.794 INFO    ] Launching Daemon at Sun Oct 25 04:03:39 IST 2026
[2026-10-25 04:03:39,806.806 INFO    ] ================================================
[2026-10-25 04:03:40,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:03:40
[2026-10-25 04:03:41,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:03:41,308.308 INFO    ] Initializing speech engine...
[2026-10-25 04:03:41,315.315 INFO    ] 2026-10-25 04:03:41
[2026-10-25 04:03:41,567.567 INFO    ] 2026-10-25 04:03:41
[2026-10-25 04:03:41,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:03:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:03:41,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:03:41,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:03:41,942.942 INFO    ] time= 25/10/2026 04:03:41
[2026-10-25 04:03:41,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:03:41,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:03:42,106.106 INFO    ] No existing commands found in stream
[2026-10-25 04:03:47,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:03:47,134.134 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 04:03:49,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:03:49,023.023 INFO    ] Checking for system updates...
[2026-10-25 04:03:49,059.059 INFO    ] 200
[2026-10-25 04:03:49,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:49,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:03:49,124.124 INFO    ] No update needed
[2026-10-25 04:03:49,126.126 INFO    ] Checking for camera pi updates...
[2026-10-25 04:03:49,159.159 INFO    ] 200
[2026-10-25 04:03:49,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:03:49,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:03:49,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:03:49,269.269 INFO    ] No camera update needed
[2026-10-25 04:03:49,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:03:49,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:03:49,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:03:49,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:03:51,330.330 INFO    ] ================================================
[2026-10-25 04:03:51,346.346 INFO    ] Launching Daemon at Sun Oct 25 04:03:51 IST 2026
[2026-10-25 04:03:51,357.357 INFO    ] ================================================
[2026-10-25 04:03:51,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:03:51
[2026-10-25 04:03:52,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:03:52,781.781 INFO    ] Initializing speech engine...
[2026-10-25 04:03:52,789.789 INFO    ] 2026-10-25 04:03:52
[2026-10-25 04:03:53,063.063 INFO    ] 2026-10-25 04:03:53
[2026-10-25 04:03:53,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:03:53,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:03:53,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:03:53,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:03:53,439.439 INFO    ] time= 25/10/2026 04:03:53
[2026-10-25 04:03:53,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:03:53,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:03:53,603.603 INFO    ] No existing commands found in stream
[2026-10-25 04:03:58,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:03:58,631.631 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 04:04:01,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:04:01,224.224 INFO    ] Checking for system updates...
[2026-10-25 04:04:01,298.298 INFO    ] 200
[2026-10-25 04:04:01,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:01,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:01,415.415 INFO    ] No update needed
[2026-10-25 04:04:01,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:01,478.478 INFO    ] 200
[2026-10-25 04:04:01,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:01,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:01,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:01,670.670 INFO    ] No camera update needed
[2026-10-25 04:04:01,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:01,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:01,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:01,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:04:03,731.731 INFO    ] ================================================
[2026-10-25 04:04:03,747.747 INFO    ] Launching Daemon at Sun Oct 25 04:04:03 IST 2026
[2026-10-25 04:04:03,758.758 INFO    ] ================================================
[2026-10-25 04:04:04,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:04:04
[2026-10-25 04:04:04,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:04:05,149.149 INFO    ] Initializing speech engine...
[2026-10-25 04:04:05,157.157 INFO    ] 2026-10-25 04:04:05
[2026-10-25 04:04:05,432.432 INFO    ] 2026-10-25 04:04:05
[2026-10-25 04:04:05,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:04:05,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:04:05,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:04:05,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:04:05,811.811 INFO    ] time= 25/10/2026 04:04:05
[2026-10-25 04:04:05,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:04:05,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:04:05,958.958 INFO    ] No existing commands found in stream
[2026-10-25 04:04:10,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:04:10,986.986 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 04:04:13,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:04:13,821.821 INFO    ] Checking for system updates...
[2026-10-25 04:04:13,857.857 INFO    ] 200
[2026-10-25 04:04:13,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:13,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:13,921.921 INFO    ] No update needed
[2026-10-25 04:04:13,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:13,957.957 INFO    ] 200
[2026-10-25 04:04:13,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:14,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:14,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:14,047.047 INFO    ] No camera update needed
[2026-10-25 04:04:14,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:14,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:14,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:14,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:04:16,102.102 INFO    ] ================================================
[2026-10-25 04:04:16,117.117 INFO    ] Launching Daemon at Sun Oct 25 04:04:16 IST 2026
[2026-10-25 04:04:16,129.129 INFO    ] ================================================
[2026-10-25 04:04:16,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:04:16
[2026-10-25 04:04:17,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:04:17,638.638 INFO    ] Initializing speech engine...
[2026-10-25 04:04:17,648.648 INFO    ] 2026-10-25 04:04:17
[2026-10-25 04:04:17,895.895 INFO    ] 2026-10-25 04:04:17
[2026-10-25 04:04:17,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:04:18,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:04:18,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:04:18,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:04:18,270.270 INFO    ] time= 25/10/2026 04:04:18
[2026-10-25 04:04:18,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:04:18,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:04:18,448.448 INFO    ] No existing commands found in stream
[2026-10-25 04:04:23,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:04:23,476.476 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 04:04:24,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:04:24,473.473 INFO    ] Checking for system updates...
[2026-10-25 04:04:24,514.514 INFO    ] 200
[2026-10-25 04:04:24,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:24,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:24,572.572 INFO    ] No update needed
[2026-10-25 04:04:24,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:24,613.613 INFO    ] 200
[2026-10-25 04:04:24,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:24,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:24,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:24,705.705 INFO    ] No camera update needed
[2026-10-25 04:04:24,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:24,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:24,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:24,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:04:26,762.762 INFO    ] ================================================
[2026-10-25 04:04:26,778.778 INFO    ] Launching Daemon at Sun Oct 25 04:04:26 IST 2026
[2026-10-25 04:04:26,789.789 INFO    ] ================================================
[2026-10-25 04:04:27,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:04:27
[2026-10-25 04:04:27,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:04:28,202.202 INFO    ] Initializing speech engine...
[2026-10-25 04:04:28,211.211 INFO    ] 2026-10-25 04:04:28
[2026-10-25 04:04:28,504.504 INFO    ] 2026-10-25 04:04:28
[2026-10-25 04:04:28,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:04:29,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:04:29,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:04:29,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:04:29,549.549 INFO    ] time= 25/10/2026 04:04:29
[2026-10-25 04:04:29,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:04:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:04:29,728.728 INFO    ] No existing commands found in stream
[2026-10-25 04:04:34,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:04:34,761.761 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 04:04:38,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:04:38,859.859 INFO    ] Checking for system updates...
[2026-10-25 04:04:38,895.895 INFO    ] 200
[2026-10-25 04:04:38,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:38,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:38,962.962 INFO    ] No update needed
[2026-10-25 04:04:38,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:38,999.999 INFO    ] 200
[2026-10-25 04:04:39,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:39,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:39,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:04:39,208.208 INFO    ] No camera update needed
[2026-10-25 04:04:39,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:39,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:39,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:39,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:04:41,262.262 INFO    ] ================================================
[2026-10-25 04:04:41,278.278 INFO    ] Launching Daemon at Sun Oct 25 04:04:41 IST 2026
[2026-10-25 04:04:41,289.289 INFO    ] ================================================
[2026-10-25 04:04:41,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:04:41
[2026-10-25 04:04:42,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:04:42,738.738 INFO    ] Initializing speech engine...
[2026-10-25 04:04:42,758.758 INFO    ] 2026-10-25 04:04:42
[2026-10-25 04:04:43,028.028 INFO    ] 2026-10-25 04:04:43
[2026-10-25 04:04:43,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:04:43,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:04:43,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:04:43,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:04:43,453.453 INFO    ] time= 25/10/2026 04:04:43
[2026-10-25 04:04:43,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:04:43,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:04:43,647.647 INFO    ] No existing commands found in stream
[2026-10-25 04:04:48,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:04:48,680.680 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 04:04:49,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:04:49,107.107 INFO    ] Checking for system updates...
[2026-10-25 04:04:49,148.148 INFO    ] 200
[2026-10-25 04:04:49,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:49,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:04:49,206.206 INFO    ] No update needed
[2026-10-25 04:04:49,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:49,246.246 INFO    ] 200
[2026-10-25 04:04:49,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:49,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:49,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:04:49,340.340 INFO    ] No camera update needed
[2026-10-25 04:04:49,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:49,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:49,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:49,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:04:51,397.397 INFO    ] ================================================
[2026-10-25 04:04:51,412.412 INFO    ] Launching Daemon at Sun Oct 25 04:04:51 IST 2026
[2026-10-25 04:04:51,423.423 INFO    ] ================================================
[2026-10-25 04:04:52,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:04:52
[2026-10-25 04:04:52,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:04:53,060.060 INFO    ] Initializing speech engine...
[2026-10-25 04:04:53,067.067 INFO    ] 2026-10-25 04:04:53
[2026-10-25 04:04:53,389.389 INFO    ] 2026-10-25 04:04:53
[2026-10-25 04:04:53,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:04:53,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:04:53,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:04:53,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:04:53,904.904 INFO    ] time= 25/10/2026 04:04:53
[2026-10-25 04:04:53,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:04:53,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:04:54,053.053 INFO    ] No existing commands found in stream
[2026-10-25 04:04:59,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:04:59,075.075 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 04:04:59,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:04:59,689.689 INFO    ] Checking for system updates...
[2026-10-25 04:04:59,727.727 INFO    ] 200
[2026-10-25 04:04:59,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:59,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:04:59,797.797 INFO    ] No update needed
[2026-10-25 04:04:59,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 04:04:59,833.833 INFO    ] 200
[2026-10-25 04:04:59,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:04:59,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:04:59,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:04:59,934.934 INFO    ] No camera update needed
[2026-10-25 04:04:59,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:04:59,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:04:59,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:04:59,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:05:02,991.991 INFO    ] ================================================
[2026-10-25 04:05:02,013.013 INFO    ] Launching Daemon at Sun Oct 25 04:05:02 IST 2026
[2026-10-25 04:05:02,029.029 INFO    ] ================================================
[2026-10-25 04:05:02,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:05:02
[2026-10-25 04:05:03,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:05:03,580.580 INFO    ] Initializing speech engine...
[2026-10-25 04:05:03,585.585 INFO    ] 2026-10-25 04:05:03
[2026-10-25 04:05:03,860.860 INFO    ] 2026-10-25 04:05:03
[2026-10-25 04:05:03,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:05:04,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:05:04,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:05:04,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:05:04,240.240 INFO    ] time= 25/10/2026 04:05:04
[2026-10-25 04:05:04,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:05:04,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:05:04,398.398 INFO    ] No existing commands found in stream
[2026-10-25 04:05:09,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:05:09,426.426 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 04:05:13,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:05:13,659.659 INFO    ] Checking for system updates...
[2026-10-25 04:05:13,700.700 INFO    ] 200
[2026-10-25 04:05:13,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:13,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:05:13,758.758 INFO    ] No update needed
[2026-10-25 04:05:13,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 04:05:13,799.799 INFO    ] 200
[2026-10-25 04:05:13,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:13,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:05:13,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:05:13,900.900 INFO    ] No camera update needed
[2026-10-25 04:05:13,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:05:13,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:05:13,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:05:13,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:05:15,955.955 INFO    ] ================================================
[2026-10-25 04:05:15,971.971 INFO    ] Launching Daemon at Sun Oct 25 04:05:15 IST 2026
[2026-10-25 04:05:15,982.982 INFO    ] ================================================
[2026-10-25 04:05:16,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:05:16
[2026-10-25 04:05:17,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:05:17,429.429 INFO    ] Initializing speech engine...
[2026-10-25 04:05:17,438.438 INFO    ] 2026-10-25 04:05:17
[2026-10-25 04:05:17,688.688 INFO    ] 2026-10-25 04:05:17
[2026-10-25 04:05:17,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:05:17,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:05:17,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:05:18,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:05:18,174.174 INFO    ] time= 25/10/2026 04:05:18
[2026-10-25 04:05:18,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:05:18,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:05:18,342.342 INFO    ] No existing commands found in stream
[2026-10-25 04:05:23,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:05:23,376.376 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 04:05:27,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:05:27,596.596 INFO    ] Checking for system updates...
[2026-10-25 04:05:27,636.636 INFO    ] 200
[2026-10-25 04:05:27,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:27,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:05:27,701.701 INFO    ] No update needed
[2026-10-25 04:05:27,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 04:05:27,737.737 INFO    ] 200
[2026-10-25 04:05:27,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:27,786.786 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:05:27,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:05:27,843.843 INFO    ] No camera update needed
[2026-10-25 04:05:27,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:05:27,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:05:27,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:05:27,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:05:29,901.901 INFO    ] ================================================
[2026-10-25 04:05:29,916.916 INFO    ] Launching Daemon at Sun Oct 25 04:05:29 IST 2026
[2026-10-25 04:05:29,927.927 INFO    ] ================================================
[2026-10-25 04:05:30,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:05:30
[2026-10-25 04:05:31,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:05:31,582.582 INFO    ] Initializing speech engine...
[2026-10-25 04:05:31,589.589 INFO    ] 2026-10-25 04:05:31
[2026-10-25 04:05:31,854.854 INFO    ] 2026-10-25 04:05:31
[2026-10-25 04:05:31,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:05:32,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:05:32,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:05:32,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:05:32,421.421 INFO    ] time= 25/10/2026 04:05:32
[2026-10-25 04:05:32,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:05:32,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:05:32,573.573 INFO    ] No existing commands found in stream
[2026-10-25 04:05:37,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:05:37,606.606 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 04:05:38,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:05:38,183.183 INFO    ] Checking for system updates...
[2026-10-25 04:05:38,218.218 INFO    ] 200
[2026-10-25 04:05:38,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:38,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:05:38,278.278 INFO    ] No update needed
[2026-10-25 04:05:38,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 04:05:38,315.315 INFO    ] 200
[2026-10-25 04:05:38,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:38,357.357 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:05:38,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:05:38,395.395 INFO    ] No camera update needed
[2026-10-25 04:05:38,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:05:38,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:05:38,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:05:38,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:05:40,450.450 INFO    ] ================================================
[2026-10-25 04:05:40,466.466 INFO    ] Launching Daemon at Sun Oct 25 04:05:40 IST 2026
[2026-10-25 04:05:40,476.476 INFO    ] ================================================
[2026-10-25 04:05:41,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:05:41
[2026-10-25 04:05:41,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:05:42,053.053 INFO    ] Initializing speech engine...
[2026-10-25 04:05:42,062.062 INFO    ] 2026-10-25 04:05:42
[2026-10-25 04:05:42,310.310 INFO    ] 2026-10-25 04:05:42
[2026-10-25 04:05:42,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:05:42,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:05:42,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:05:42,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:05:42,793.793 INFO    ] time= 25/10/2026 04:05:42
[2026-10-25 04:05:42,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:05:42,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:05:42,932.932 INFO    ] No existing commands found in stream
[2026-10-25 04:05:47,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:05:47,955.955 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 04:05:49,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:05:49,384.384 INFO    ] Checking for system updates...
[2026-10-25 04:05:49,420.420 INFO    ] 200
[2026-10-25 04:05:49,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:49,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:05:49,486.486 INFO    ] No update needed
[2026-10-25 04:05:49,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 04:05:49,523.523 INFO    ] 200
[2026-10-25 04:05:49,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:05:49,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:05:49,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:05:49,619.619 INFO    ] No camera update needed
[2026-10-25 04:05:49,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:05:49,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:05:49,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:05:49,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:05:51,675.675 INFO    ] ================================================
[2026-10-25 04:05:51,690.690 INFO    ] Launching Daemon at Sun Oct 25 04:05:51 IST 2026
[2026-10-25 04:05:51,701.701 INFO    ] ================================================
[2026-10-25 04:05:52,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:05:52
[2026-10-25 04:05:52,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:05:53,192.192 INFO    ] Initializing speech engine...
[2026-10-25 04:05:53,199.199 INFO    ] 2026-10-25 04:05:53
[2026-10-25 04:05:53,465.465 INFO    ] 2026-10-25 04:05:53
[2026-10-25 04:05:53,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:05:53,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:05:53,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:05:53,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:05:53,865.865 INFO    ] time= 25/10/2026 04:05:53
[2026-10-25 04:05:53,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:05:53,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:05:54,000.000 INFO    ] No existing commands found in stream
[2026-10-25 04:05:59,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:05:59,014.014 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 04:06:02,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:06:02,423.423 INFO    ] Checking for system updates...
[2026-10-25 04:06:02,465.465 INFO    ] 200
[2026-10-25 04:06:02,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:02,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:02,536.536 INFO    ] No update needed
[2026-10-25 04:06:02,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 04:06:02,577.577 INFO    ] 200
[2026-10-25 04:06:02,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:02,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:06:02,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:02,664.664 INFO    ] No camera update needed
[2026-10-25 04:06:02,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:06:02,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:06:02,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:06:02,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:06:04,724.724 INFO    ] ================================================
[2026-10-25 04:06:04,739.739 INFO    ] Launching Daemon at Sun Oct 25 04:06:04 IST 2026
[2026-10-25 04:06:04,751.751 INFO    ] ================================================
[2026-10-25 04:06:05,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:06:05
[2026-10-25 04:06:05,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:06:06,155.155 INFO    ] Initializing speech engine...
[2026-10-25 04:06:06,180.180 INFO    ] 2026-10-25 04:06:06
[2026-10-25 04:06:06,458.458 INFO    ] 2026-10-25 04:06:06
[2026-10-25 04:06:06,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:06:06,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:06:06,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:06:06,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:06:06,838.838 INFO    ] time= 25/10/2026 04:06:06
[2026-10-25 04:06:06,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:06:06,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:06:06,963.963 INFO    ] No existing commands found in stream
[2026-10-25 04:06:11,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:06:11,978.978 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 04:06:15,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:06:15,079.079 INFO    ] Checking for system updates...
[2026-10-25 04:06:15,121.121 INFO    ] 200
[2026-10-25 04:06:15,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:15,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:15,190.190 INFO    ] No update needed
[2026-10-25 04:06:15,192.192 INFO    ] Checking for camera pi updates...
[2026-10-25 04:06:15,231.231 INFO    ] 200
[2026-10-25 04:06:15,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:15,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:06:15,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:15,342.342 INFO    ] No camera update needed
[2026-10-25 04:06:15,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:06:15,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:06:15,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:06:15,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:06:17,401.401 INFO    ] ================================================
[2026-10-25 04:06:17,416.416 INFO    ] Launching Daemon at Sun Oct 25 04:06:17 IST 2026
[2026-10-25 04:06:17,427.427 INFO    ] ================================================
[2026-10-25 04:06:18,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:06:18
[2026-10-25 04:06:18,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:06:19,047.047 INFO    ] Initializing speech engine...
[2026-10-25 04:06:19,054.054 INFO    ] 2026-10-25 04:06:19
[2026-10-25 04:06:19,374.374 INFO    ] 2026-10-25 04:06:19
[2026-10-25 04:06:19,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:06:19,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:06:19,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:06:19,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:06:19,897.897 INFO    ] time= 25/10/2026 04:06:19
[2026-10-25 04:06:19,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:06:19,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:06:20,108.108 INFO    ] No existing commands found in stream
[2026-10-25 04:06:25,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:06:25,137.137 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 04:06:29,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:06:29,503.503 INFO    ] Checking for system updates...
[2026-10-25 04:06:29,540.540 INFO    ] 200
[2026-10-25 04:06:29,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:29,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:06:29,600.600 INFO    ] No update needed
[2026-10-25 04:06:29,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 04:06:29,642.642 INFO    ] 200
[2026-10-25 04:06:29,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:29,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:06:29,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:06:29,736.736 INFO    ] No camera update needed
[2026-10-25 04:06:29,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:06:29,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:06:29,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:06:29,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:06:31,792.792 INFO    ] ================================================
[2026-10-25 04:06:31,808.808 INFO    ] Launching Daemon at Sun Oct 25 04:06:31 IST 2026
[2026-10-25 04:06:31,822.822 INFO    ] ================================================
[2026-10-25 04:06:32,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:06:32
[2026-10-25 04:06:33,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:06:33,305.305 INFO    ] Initializing speech engine...
[2026-10-25 04:06:33,312.312 INFO    ] 2026-10-25 04:06:33
[2026-10-25 04:06:33,610.610 INFO    ] 2026-10-25 04:06:33
[2026-10-25 04:06:33,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:06:33,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:06:33,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:06:33,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:06:34,002.002 INFO    ] time= 25/10/2026 04:06:33
[2026-10-25 04:06:34,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:06:34,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:06:34,131.131 INFO    ] No existing commands found in stream
[2026-10-25 04:06:39,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:06:39,146.146 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 04:06:42,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:06:42,448.448 INFO    ] Checking for system updates...
[2026-10-25 04:06:42,484.484 INFO    ] 200
[2026-10-25 04:06:42,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:42,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:42,542.542 INFO    ] No update needed
[2026-10-25 04:06:42,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 04:06:42,583.583 INFO    ] 200
[2026-10-25 04:06:42,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:42,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:06:42,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:42,793.793 INFO    ] No camera update needed
[2026-10-25 04:06:42,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:06:42,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:06:42,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:06:42,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:06:44,849.849 INFO    ] ================================================
[2026-10-25 04:06:44,865.865 INFO    ] Launching Daemon at Sun Oct 25 04:06:44 IST 2026
[2026-10-25 04:06:44,876.876 INFO    ] ================================================
[2026-10-25 04:06:45,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:06:45
[2026-10-25 04:06:46,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:06:46,501.501 INFO    ] Initializing speech engine...
[2026-10-25 04:06:46,514.514 INFO    ] 2026-10-25 04:06:46
[2026-10-25 04:06:46,797.797 INFO    ] 2026-10-25 04:06:46
[2026-10-25 04:06:46,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:06:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:06:47,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:06:47,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:06:47,325.325 INFO    ] time= 25/10/2026 04:06:47
[2026-10-25 04:06:47,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:06:47,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:06:47,479.479 INFO    ] No existing commands found in stream
[2026-10-25 04:06:52,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:06:52,504.504 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 04:06:55,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:06:55,865.865 INFO    ] Checking for system updates...
[2026-10-25 04:06:55,902.902 INFO    ] 200
[2026-10-25 04:06:55,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:55,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:55,964.964 INFO    ] No update needed
[2026-10-25 04:06:55,966.966 INFO    ] Checking for camera pi updates...
[2026-10-25 04:06:56,000.000 INFO    ] 200
[2026-10-25 04:06:56,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:06:56,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:06:56,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:06:56,098.098 INFO    ] No camera update needed
[2026-10-25 04:06:56,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:06:56,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:06:56,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:06:56,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:06:58,154.154 INFO    ] ================================================
[2026-10-25 04:06:58,169.169 INFO    ] Launching Daemon at Sun Oct 25 04:06:58 IST 2026
[2026-10-25 04:06:58,181.181 INFO    ] ================================================
[2026-10-25 04:06:58,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:06:58
[2026-10-25 04:06:59,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:06:59,610.610 INFO    ] Initializing speech engine...
[2026-10-25 04:06:59,619.619 INFO    ] 2026-10-25 04:06:59
[2026-10-25 04:06:59,867.867 INFO    ] 2026-10-25 04:06:59
[2026-10-25 04:06:59,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:07:00,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:07:00,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:07:00,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:07:00,355.355 INFO    ] time= 25/10/2026 04:07:00
[2026-10-25 04:07:00,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:07:00,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:07:00,489.489 INFO    ] No existing commands found in stream
[2026-10-25 04:07:05,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:07:05,524.524 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 04:07:07,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:07:07,713.713 INFO    ] Checking for system updates...
[2026-10-25 04:07:07,749.749 INFO    ] 200
[2026-10-25 04:07:07,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:07,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:07,814.814 INFO    ] No update needed
[2026-10-25 04:07:07,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 04:07:07,850.850 INFO    ] 200
[2026-10-25 04:07:07,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:07,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:07:07,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:07,949.949 INFO    ] No camera update needed
[2026-10-25 04:07:07,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:07:07,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:07:07,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:07:07,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:07:10,005.005 INFO    ] ================================================
[2026-10-25 04:07:10,020.020 INFO    ] Launching Daemon at Sun Oct 25 04:07:10 IST 2026
[2026-10-25 04:07:10,030.030 INFO    ] ================================================
[2026-10-25 04:07:10,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:07:10
[2026-10-25 04:07:11,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:07:11,444.444 INFO    ] Initializing speech engine...
[2026-10-25 04:07:11,452.452 INFO    ] 2026-10-25 04:07:11
[2026-10-25 04:07:11,748.748 INFO    ] 2026-10-25 04:07:11
[2026-10-25 04:07:11,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:07:11,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:07:11,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:07:12,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:07:12,144.144 INFO    ] time= 25/10/2026 04:07:12
[2026-10-25 04:07:12,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:07:12,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:07:12,252.252 INFO    ] No existing commands found in stream
[2026-10-25 04:07:17,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:07:17,273.273 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 04:07:20,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:07:20,855.855 INFO    ] Checking for system updates...
[2026-10-25 04:07:20,891.891 INFO    ] 200
[2026-10-25 04:07:20,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:20,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:20,950.950 INFO    ] No update needed
[2026-10-25 04:07:20,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 04:07:20,986.986 INFO    ] 200
[2026-10-25 04:07:20,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:21,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:07:21,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:21,094.094 INFO    ] No camera update needed
[2026-10-25 04:07:21,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:07:21,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:07:21,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:07:21,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:07:23,150.150 INFO    ] ================================================
[2026-10-25 04:07:23,165.165 INFO    ] Launching Daemon at Sun Oct 25 04:07:23 IST 2026
[2026-10-25 04:07:23,176.176 INFO    ] ================================================
[2026-10-25 04:07:23,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:07:23
[2026-10-25 04:07:24,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:07:24,769.769 INFO    ] Initializing speech engine...
[2026-10-25 04:07:24,783.783 INFO    ] 2026-10-25 04:07:24
[2026-10-25 04:07:25,045.045 INFO    ] 2026-10-25 04:07:25
[2026-10-25 04:07:25,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:07:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:07:25,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:07:25,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:07:25,572.572 INFO    ] time= 25/10/2026 04:07:25
[2026-10-25 04:07:25,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:07:25,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:07:25,725.725 INFO    ] No existing commands found in stream
[2026-10-25 04:07:30,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:07:30,744.744 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 04:07:32,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:07:32,197.197 INFO    ] Checking for system updates...
[2026-10-25 04:07:32,237.237 INFO    ] 200
[2026-10-25 04:07:32,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:32,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:32,314.314 INFO    ] No update needed
[2026-10-25 04:07:32,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 04:07:32,356.356 INFO    ] 200
[2026-10-25 04:07:32,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:32,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:07:32,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:07:32,447.447 INFO    ] No camera update needed
[2026-10-25 04:07:32,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:07:32,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:07:32,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:07:32,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:07:34,505.505 INFO    ] ================================================
[2026-10-25 04:07:34,520.520 INFO    ] Launching Daemon at Sun Oct 25 04:07:34 IST 2026
[2026-10-25 04:07:34,531.531 INFO    ] ================================================
[2026-10-25 04:07:35,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:07:35
[2026-10-25 04:07:35,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:07:35,954.954 INFO    ] Initializing speech engine...
[2026-10-25 04:07:35,976.976 INFO    ] 2026-10-25 04:07:35
[2026-10-25 04:07:36,227.227 INFO    ] 2026-10-25 04:07:36
[2026-10-25 04:07:36,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:07:36,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:07:36,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:07:36,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:07:36,679.679 INFO    ] time= 25/10/2026 04:07:36
[2026-10-25 04:07:36,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:07:36,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:07:36,842.842 INFO    ] No existing commands found in stream
[2026-10-25 04:07:41,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:07:41,856.856 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 04:07:44,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:07:44,422.422 INFO    ] Checking for system updates...
[2026-10-25 04:07:44,458.458 INFO    ] 200
[2026-10-25 04:07:44,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:44,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:07:44,517.517 INFO    ] No update needed
[2026-10-25 04:07:44,520.520 INFO    ] Checking for camera pi updates...
[2026-10-25 04:07:44,555.555 INFO    ] 200
[2026-10-25 04:07:44,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:44,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:07:44,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:07:44,661.661 INFO    ] No camera update needed
[2026-10-25 04:07:44,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:07:44,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:07:44,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:07:44,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:07:46,721.721 INFO    ] ================================================
[2026-10-25 04:07:46,736.736 INFO    ] Launching Daemon at Sun Oct 25 04:07:46 IST 2026
[2026-10-25 04:07:46,746.746 INFO    ] ================================================
[2026-10-25 04:07:47,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:07:47
[2026-10-25 04:07:47,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:07:48,216.216 INFO    ] Initializing speech engine...
[2026-10-25 04:07:48,223.223 INFO    ] 2026-10-25 04:07:48
[2026-10-25 04:07:48,482.482 INFO    ] 2026-10-25 04:07:48
[2026-10-25 04:07:48,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:07:48,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:07:48,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:07:48,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:07:48,965.965 INFO    ] time= 25/10/2026 04:07:48
[2026-10-25 04:07:49,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:07:49,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:07:49,150.150 INFO    ] No existing commands found in stream
[2026-10-25 04:07:54,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:07:54,184.184 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 04:07:57,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:07:57,355.355 INFO    ] Checking for system updates...
[2026-10-25 04:07:57,394.394 INFO    ] 200
[2026-10-25 04:07:57,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:57,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:07:57,455.455 INFO    ] No update needed
[2026-10-25 04:07:57,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 04:07:57,492.492 INFO    ] 200
[2026-10-25 04:07:57,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:07:57,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:07:57,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:07:57,590.590 INFO    ] No camera update needed
[2026-10-25 04:07:57,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:07:57,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:07:57,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:07:57,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:07:59,648.648 INFO    ] ================================================
[2026-10-25 04:07:59,664.664 INFO    ] Launching Daemon at Sun Oct 25 04:07:59 IST 2026
[2026-10-25 04:07:59,676.676 INFO    ] ================================================
[2026-10-25 04:08:00,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:08:00
[2026-10-25 04:08:00,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:08:01,198.198 INFO    ] Initializing speech engine...
[2026-10-25 04:08:01,203.203 INFO    ] 2026-10-25 04:08:01
[2026-10-25 04:08:01,463.463 INFO    ] 2026-10-25 04:08:01
[2026-10-25 04:08:01,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:08:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:08:01,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:08:01,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:08:01,914.914 INFO    ] time= 25/10/2026 04:08:01
[2026-10-25 04:08:01,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:08:01,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:08:01,975.975 INFO    ] No existing commands found in stream
[2026-10-25 04:08:06,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:08:06,989.989 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 04:08:10,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:08:10,259.259 INFO    ] Checking for system updates...
[2026-10-25 04:08:10,295.295 INFO    ] 200
[2026-10-25 04:08:10,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:10,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:08:10,353.353 INFO    ] No update needed
[2026-10-25 04:08:10,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 04:08:10,390.390 INFO    ] 200
[2026-10-25 04:08:10,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:10,433.433 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:08:10,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:08:10,466.466 INFO    ] No camera update needed
[2026-10-25 04:08:10,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:08:10,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:08:10,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:08:10,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:08:12,521.521 INFO    ] ================================================
[2026-10-25 04:08:12,536.536 INFO    ] Launching Daemon at Sun Oct 25 04:08:12 IST 2026
[2026-10-25 04:08:12,548.548 INFO    ] ================================================
[2026-10-25 04:08:13,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:08:13
[2026-10-25 04:08:13,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:08:14,196.196 INFO    ] Initializing speech engine...
[2026-10-25 04:08:14,205.205 INFO    ] 2026-10-25 04:08:14
[2026-10-25 04:08:14,478.478 INFO    ] 2026-10-25 04:08:14
[2026-10-25 04:08:14,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:08:14,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:08:14,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:08:14,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:08:14,970.970 INFO    ] time= 25/10/2026 04:08:14
[2026-10-25 04:08:15,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:08:15,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:08:15,176.176 INFO    ] No existing commands found in stream
[2026-10-25 04:08:20,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:08:20,210.210 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 04:08:24,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:08:24,510.510 INFO    ] Checking for system updates...
[2026-10-25 04:08:24,547.547 INFO    ] 200
[2026-10-25 04:08:24,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:24,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:08:24,607.607 INFO    ] No update needed
[2026-10-25 04:08:24,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 04:08:24,644.644 INFO    ] 200
[2026-10-25 04:08:24,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:24,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:08:24,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:08:24,744.744 INFO    ] No camera update needed
[2026-10-25 04:08:24,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:08:24,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:08:24,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:08:24,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:08:26,798.798 INFO    ] ================================================
[2026-10-25 04:08:26,813.813 INFO    ] Launching Daemon at Sun Oct 25 04:08:26 IST 2026
[2026-10-25 04:08:26,824.824 INFO    ] ================================================
[2026-10-25 04:08:27,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:08:27
[2026-10-25 04:08:28,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:08:28,325.325 INFO    ] Initializing speech engine...
[2026-10-25 04:08:28,337.337 INFO    ] 2026-10-25 04:08:28
[2026-10-25 04:08:28,603.603 INFO    ] 2026-10-25 04:08:28
[2026-10-25 04:08:28,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:08:28,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:08:28,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:08:29,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:08:29,169.169 INFO    ] time= 25/10/2026 04:08:29
[2026-10-25 04:08:29,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:08:29,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:08:29,307.307 INFO    ] No existing commands found in stream
[2026-10-25 04:08:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:08:34,335.335 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 04:08:37,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:08:37,789.789 INFO    ] Checking for system updates...
[2026-10-25 04:08:37,825.825 INFO    ] 200
[2026-10-25 04:08:37,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:37,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:08:37,883.883 INFO    ] No update needed
[2026-10-25 04:08:37,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 04:08:37,925.925 INFO    ] 200
[2026-10-25 04:08:37,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:37,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:08:38,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:08:38,006.006 INFO    ] No camera update needed
[2026-10-25 04:08:38,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:08:38,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:08:38,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:08:38,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:08:40,061.061 INFO    ] ================================================
[2026-10-25 04:08:40,076.076 INFO    ] Launching Daemon at Sun Oct 25 04:08:40 IST 2026
[2026-10-25 04:08:40,087.087 INFO    ] ================================================
[2026-10-25 04:08:40,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:08:40
[2026-10-25 04:08:41,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:08:41,543.543 INFO    ] Initializing speech engine...
[2026-10-25 04:08:41,557.557 INFO    ] 2026-10-25 04:08:41
[2026-10-25 04:08:41,839.839 INFO    ] 2026-10-25 04:08:41
[2026-10-25 04:08:41,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:08:42,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:08:42,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:08:42,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:08:42,209.209 INFO    ] time= 25/10/2026 04:08:42
[2026-10-25 04:08:42,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:08:42,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:08:42,334.334 INFO    ] No existing commands found in stream
[2026-10-25 04:08:47,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:08:47,367.367 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 04:08:50,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:08:50,717.717 INFO    ] Checking for system updates...
[2026-10-25 04:08:50,753.753 INFO    ] 200
[2026-10-25 04:08:50,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:50,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:08:50,811.811 INFO    ] No update needed
[2026-10-25 04:08:50,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 04:08:50,850.850 INFO    ] 200
[2026-10-25 04:08:50,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:08:50,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:08:51,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:08:51,062.062 INFO    ] No camera update needed
[2026-10-25 04:08:51,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:08:51,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:08:51,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:08:51,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:08:53,122.122 INFO    ] ================================================
[2026-10-25 04:08:53,139.139 INFO    ] Launching Daemon at Sun Oct 25 04:08:53 IST 2026
[2026-10-25 04:08:53,150.150 INFO    ] ================================================
[2026-10-25 04:08:53,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:08:53
[2026-10-25 04:08:54,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:08:54,727.727 INFO    ] Initializing speech engine...
[2026-10-25 04:08:54,736.736 INFO    ] 2026-10-25 04:08:54
[2026-10-25 04:08:55,029.029 INFO    ] 2026-10-25 04:08:55
[2026-10-25 04:08:55,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:08:55,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:08:55,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:08:55,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:08:55,485.485 INFO    ] time= 25/10/2026 04:08:55
[2026-10-25 04:08:55,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:08:55,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:08:55,637.637 INFO    ] No existing commands found in stream
[2026-10-25 04:09:00,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:09:00,665.665 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 04:09:03,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:09:03,352.352 INFO    ] Checking for system updates...
[2026-10-25 04:09:03,395.395 INFO    ] 200
[2026-10-25 04:09:03,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:03,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:03,467.467 INFO    ] No update needed
[2026-10-25 04:09:03,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 04:09:03,506.506 INFO    ] 200
[2026-10-25 04:09:03,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:03,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:09:03,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:03,613.613 INFO    ] No camera update needed
[2026-10-25 04:09:03,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:09:03,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:09:03,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:09:03,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:09:05,676.676 INFO    ] ================================================
[2026-10-25 04:09:05,691.691 INFO    ] Launching Daemon at Sun Oct 25 04:09:05 IST 2026
[2026-10-25 04:09:05,701.701 INFO    ] ================================================
[2026-10-25 04:09:06,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:09:06
[2026-10-25 04:09:06,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:09:07,227.227 INFO    ] Initializing speech engine...
[2026-10-25 04:09:07,272.272 INFO    ] 2026-10-25 04:09:07
[2026-10-25 04:09:07,545.545 INFO    ] 2026-10-25 04:09:07
[2026-10-25 04:09:07,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:09:07,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:09:07,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:09:08,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:09:08,045.045 INFO    ] time= 25/10/2026 04:09:08
[2026-10-25 04:09:08,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:09:08,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:09:08,182.182 INFO    ] No existing commands found in stream
[2026-10-25 04:09:13,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:09:13,212.212 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 04:09:14,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:09:14,930.930 INFO    ] Checking for system updates...
[2026-10-25 04:09:14,968.968 INFO    ] 200
[2026-10-25 04:09:14,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:15,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:15,040.040 INFO    ] No update needed
[2026-10-25 04:09:15,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 04:09:15,080.080 INFO    ] 200
[2026-10-25 04:09:15,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:15,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:09:15,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:15,190.190 INFO    ] No camera update needed
[2026-10-25 04:09:15,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:09:15,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:09:15,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:09:15,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:09:17,251.251 INFO    ] ================================================
[2026-10-25 04:09:17,266.266 INFO    ] Launching Daemon at Sun Oct 25 04:09:17 IST 2026
[2026-10-25 04:09:17,494.494 INFO    ] ================================================
[2026-10-25 04:09:18,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:09:18
[2026-10-25 04:09:18,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:09:19,149.149 INFO    ] Initializing speech engine...
[2026-10-25 04:09:19,159.159 INFO    ] 2026-10-25 04:09:19
[2026-10-25 04:09:19,434.434 INFO    ] 2026-10-25 04:09:19
[2026-10-25 04:09:19,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:09:19,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:09:19,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:09:19,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:09:19,934.934 INFO    ] time= 25/10/2026 04:09:19
[2026-10-25 04:09:19,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:09:20,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:09:20,132.132 INFO    ] No existing commands found in stream
[2026-10-25 04:09:25,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:09:25,161.161 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 04:09:29,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:09:29,454.454 INFO    ] Checking for system updates...
[2026-10-25 04:09:29,491.491 INFO    ] 200
[2026-10-25 04:09:29,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:29,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:09:29,556.556 INFO    ] No update needed
[2026-10-25 04:09:29,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 04:09:29,596.596 INFO    ] 200
[2026-10-25 04:09:29,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:29,646.646 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:09:29,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:09:29,700.700 INFO    ] No camera update needed
[2026-10-25 04:09:29,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:09:29,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:09:29,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:09:29,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:09:31,757.757 INFO    ] ================================================
[2026-10-25 04:09:31,772.772 INFO    ] Launching Daemon at Sun Oct 25 04:09:31 IST 2026
[2026-10-25 04:09:31,783.783 INFO    ] ================================================
[2026-10-25 04:09:32,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:09:32
[2026-10-25 04:09:33,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:09:33,309.309 INFO    ] Initializing speech engine...
[2026-10-25 04:09:33,316.316 INFO    ] 2026-10-25 04:09:33
[2026-10-25 04:09:33,576.576 INFO    ] 2026-10-25 04:09:33
[2026-10-25 04:09:33,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:09:33,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:09:33,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:09:33,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:09:34,053.053 INFO    ] time= 25/10/2026 04:09:34
[2026-10-25 04:09:34,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:09:34,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:09:34,261.261 INFO    ] No existing commands found in stream
[2026-10-25 04:09:39,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:09:39,285.285 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 04:09:42,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:09:42,102.102 INFO    ] Checking for system updates...
[2026-10-25 04:09:42,137.137 INFO    ] 200
[2026-10-25 04:09:42,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:42,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:42,196.196 INFO    ] No update needed
[2026-10-25 04:09:42,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 04:09:42,233.233 INFO    ] 200
[2026-10-25 04:09:42,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:42,276.276 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:09:42,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:09:42,326.326 INFO    ] No camera update needed
[2026-10-25 04:09:42,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:09:42,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:09:42,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:09:42,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:09:44,382.382 INFO    ] ================================================
[2026-10-25 04:09:44,397.397 INFO    ] Launching Daemon at Sun Oct 25 04:09:44 IST 2026
[2026-10-25 04:09:44,407.407 INFO    ] ================================================
[2026-10-25 04:09:44,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:09:44
[2026-10-25 04:09:45,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:09:45,822.822 INFO    ] Initializing speech engine...
[2026-10-25 04:09:45,842.842 INFO    ] 2026-10-25 04:09:45
[2026-10-25 04:09:46,112.112 INFO    ] 2026-10-25 04:09:46
[2026-10-25 04:09:46,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:09:46,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:09:46,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:09:46,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:09:46,481.481 INFO    ] time= 25/10/2026 04:09:46
[2026-10-25 04:09:46,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:09:46,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:09:46,602.602 INFO    ] No existing commands found in stream
[2026-10-25 04:09:51,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:09:51,617.617 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 04:09:55,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:09:55,453.453 INFO    ] Checking for system updates...
[2026-10-25 04:09:55,492.492 INFO    ] 200
[2026-10-25 04:09:55,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:55,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:09:55,554.554 INFO    ] No update needed
[2026-10-25 04:09:55,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 04:09:55,591.591 INFO    ] 200
[2026-10-25 04:09:55,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:09:55,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:09:55,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:09:55,700.700 INFO    ] No camera update needed
[2026-10-25 04:09:55,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:09:55,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:09:55,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:09:55,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:09:57,755.755 INFO    ] ================================================
[2026-10-25 04:09:57,769.769 INFO    ] Launching Daemon at Sun Oct 25 04:09:57 IST 2026
[2026-10-25 04:09:57,781.781 INFO    ] ================================================
[2026-10-25 04:09:58,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:09:58
[2026-10-25 04:09:58,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:09:59,187.187 INFO    ] Initializing speech engine...
[2026-10-25 04:09:59,194.194 INFO    ] 2026-10-25 04:09:59
[2026-10-25 04:09:59,480.480 INFO    ] 2026-10-25 04:09:59
[2026-10-25 04:09:59,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:09:59,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:09:59,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:09:59,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:09:59,886.886 INFO    ] time= 25/10/2026 04:09:59
[2026-10-25 04:09:59,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:09:59,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:09:59,972.972 INFO    ] No existing commands found in stream
[2026-10-25 04:10:04,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:10:04,987.987 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 04:10:08,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:10:08,883.883 INFO    ] Checking for system updates...
[2026-10-25 04:10:08,920.920 INFO    ] 200
[2026-10-25 04:10:08,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:08,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:10:08,977.977 INFO    ] No update needed
[2026-10-25 04:10:08,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 04:10:09,013.013 INFO    ] 200
[2026-10-25 04:10:09,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:09,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:10:09,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:10:09,126.126 INFO    ] No camera update needed
[2026-10-25 04:10:09,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:10:09,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:10:09,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:10:09,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:10:11,181.181 INFO    ] ================================================
[2026-10-25 04:10:11,196.196 INFO    ] Launching Daemon at Sun Oct 25 04:10:11 IST 2026
[2026-10-25 04:10:11,207.207 INFO    ] ================================================
[2026-10-25 04:10:11,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:10:11
[2026-10-25 04:10:12,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:10:12,791.791 INFO    ] Initializing speech engine...
[2026-10-25 04:10:12,805.805 INFO    ] 2026-10-25 04:10:12
[2026-10-25 04:10:13,090.090 INFO    ] 2026-10-25 04:10:13
[2026-10-25 04:10:13,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:10:13,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:10:13,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:10:13,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:10:13,574.574 INFO    ] time= 25/10/2026 04:10:13
[2026-10-25 04:10:13,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:10:13,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:10:13,781.781 INFO    ] No existing commands found in stream
[2026-10-25 04:10:18,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:10:18,809.809 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 04:10:19,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:10:19,804.804 INFO    ] Checking for system updates...
[2026-10-25 04:10:19,844.844 INFO    ] 200
[2026-10-25 04:10:19,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:19,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:19,903.903 INFO    ] No update needed
[2026-10-25 04:10:19,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 04:10:19,943.943 INFO    ] 200
[2026-10-25 04:10:19,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:19,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:10:20,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:20,050.050 INFO    ] No camera update needed
[2026-10-25 04:10:20,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:10:20,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:10:20,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:10:20,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:10:22,108.108 INFO    ] ================================================
[2026-10-25 04:10:22,123.123 INFO    ] Launching Daemon at Sun Oct 25 04:10:22 IST 2026
[2026-10-25 04:10:22,134.134 INFO    ] ================================================
[2026-10-25 04:10:22,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:10:22
[2026-10-25 04:10:23,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:10:23,530.530 INFO    ] Initializing speech engine...
[2026-10-25 04:10:23,543.543 INFO    ] 2026-10-25 04:10:23
[2026-10-25 04:10:23,817.817 INFO    ] 2026-10-25 04:10:23
[2026-10-25 04:10:23,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:10:24,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:10:24,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:10:24,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:10:24,185.185 INFO    ] time= 25/10/2026 04:10:24
[2026-10-25 04:10:24,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:10:24,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:10:24,307.307 INFO    ] No existing commands found in stream
[2026-10-25 04:10:29,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:10:29,323.323 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 04:10:31,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:10:31,888.888 INFO    ] Checking for system updates...
[2026-10-25 04:10:31,924.924 INFO    ] 200
[2026-10-25 04:10:31,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:31,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:31,982.982 INFO    ] No update needed
[2026-10-25 04:10:31,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 04:10:32,021.021 INFO    ] 200
[2026-10-25 04:10:32,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:32,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:10:32,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:32,099.099 INFO    ] No camera update needed
[2026-10-25 04:10:32,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:10:32,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:10:32,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:10:32,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:10:34,160.160 INFO    ] ================================================
[2026-10-25 04:10:34,174.174 INFO    ] Launching Daemon at Sun Oct 25 04:10:34 IST 2026
[2026-10-25 04:10:34,185.185 INFO    ] ================================================
[2026-10-25 04:10:34,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:10:34
[2026-10-25 04:10:35,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:10:35,765.765 INFO    ] Initializing speech engine...
[2026-10-25 04:10:35,778.778 INFO    ] 2026-10-25 04:10:35
[2026-10-25 04:10:36,060.060 INFO    ] 2026-10-25 04:10:36
[2026-10-25 04:10:36,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:10:36,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:10:36,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:10:36,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:10:36,598.598 INFO    ] time= 25/10/2026 04:10:36
[2026-10-25 04:10:36,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:10:36,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:10:36,748.748 INFO    ] No existing commands found in stream
[2026-10-25 04:10:41,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:10:41,767.767 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 04:10:43,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:10:43,580.580 INFO    ] Checking for system updates...
[2026-10-25 04:10:43,617.617 INFO    ] 200
[2026-10-25 04:10:43,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:43,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:43,681.681 INFO    ] No update needed
[2026-10-25 04:10:43,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 04:10:43,719.719 INFO    ] 200
[2026-10-25 04:10:43,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:43,763.763 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:10:43,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:10:43,828.828 INFO    ] No camera update needed
[2026-10-25 04:10:43,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:10:43,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:10:43,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:10:43,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:10:45,885.885 INFO    ] ================================================
[2026-10-25 04:10:45,901.901 INFO    ] Launching Daemon at Sun Oct 25 04:10:45 IST 2026
[2026-10-25 04:10:45,911.911 INFO    ] ================================================
[2026-10-25 04:10:46,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:10:46
[2026-10-25 04:10:47,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:10:47,491.491 INFO    ] Initializing speech engine...
[2026-10-25 04:10:47,501.501 INFO    ] 2026-10-25 04:10:47
[2026-10-25 04:10:47,766.766 INFO    ] 2026-10-25 04:10:47
[2026-10-25 04:10:47,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:10:48,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:10:48,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:10:48,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:10:48,228.228 INFO    ] time= 25/10/2026 04:10:48
[2026-10-25 04:10:48,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:10:48,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:10:48,376.376 INFO    ] No existing commands found in stream
[2026-10-25 04:10:53,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:10:53,401.401 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 04:10:57,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:10:57,594.594 INFO    ] Checking for system updates...
[2026-10-25 04:10:57,630.630 INFO    ] 200
[2026-10-25 04:10:57,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:57,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:10:57,687.687 INFO    ] No update needed
[2026-10-25 04:10:57,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 04:10:57,723.723 INFO    ] 200
[2026-10-25 04:10:57,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:10:57,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:10:57,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:10:57,930.930 INFO    ] No camera update needed
[2026-10-25 04:10:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:10:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:10:57,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:10:57,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:10:59,984.984 INFO    ] ================================================
[2026-10-25 04:11:00,999.999 INFO    ] Launching Daemon at Sun Oct 25 04:10:59 IST 2026
[2026-10-25 04:11:00,010.010 INFO    ] ================================================
[2026-10-25 04:11:00,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:00
[2026-10-25 04:11:01,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:01,743.743 INFO    ] Initializing speech engine...
[2026-10-25 04:11:01,746.746 INFO    ] 2026-10-25 04:11:01
[2026-10-25 04:11:02,050.050 INFO    ] 2026-10-25 04:11:02
[2026-10-25 04:11:02,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:02,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:02,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:02,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:02,569.569 INFO    ] time= 25/10/2026 04:11:02
[2026-10-25 04:11:02,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:02,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:02,747.747 INFO    ] No existing commands found in stream
[2026-10-25 04:11:07,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:11:07,769.769 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 04:11:09,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:11:09,765.765 INFO    ] Checking for system updates...
[2026-10-25 04:11:09,801.801 INFO    ] 200
[2026-10-25 04:11:09,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:09,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:09,866.866 INFO    ] No update needed
[2026-10-25 04:11:09,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 04:11:09,901.901 INFO    ] 200
[2026-10-25 04:11:09,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:09,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:11:10,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:10,002.002 INFO    ] No camera update needed
[2026-10-25 04:11:10,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:11:10,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:11:10,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:11:10,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:11:12,060.060 INFO    ] ================================================
[2026-10-25 04:11:12,075.075 INFO    ] Launching Daemon at Sun Oct 25 04:11:12 IST 2026
[2026-10-25 04:11:12,086.086 INFO    ] ================================================
[2026-10-25 04:11:12,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:12
[2026-10-25 04:11:13,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:13,508.508 INFO    ] Initializing speech engine...
[2026-10-25 04:11:13,516.516 INFO    ] 2026-10-25 04:11:13
[2026-10-25 04:11:13,812.812 INFO    ] 2026-10-25 04:11:13
[2026-10-25 04:11:13,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:14,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:14,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:14,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:14,200.200 INFO    ] time= 25/10/2026 04:11:14
[2026-10-25 04:11:14,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:14,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:14,307.307 INFO    ] No existing commands found in stream
[2026-10-25 04:11:19,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:11:19,323.323 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 04:11:21,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:11:21,613.613 INFO    ] Checking for system updates...
[2026-10-25 04:11:21,650.650 INFO    ] 200
[2026-10-25 04:11:21,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:21,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:21,709.709 INFO    ] No update needed
[2026-10-25 04:11:21,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 04:11:21,745.745 INFO    ] 200
[2026-10-25 04:11:21,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:21,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:11:21,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:21,857.857 INFO    ] No camera update needed
[2026-10-25 04:11:21,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:11:21,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:11:21,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:11:21,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:11:23,913.913 INFO    ] ================================================
[2026-10-25 04:11:23,928.928 INFO    ] Launching Daemon at Sun Oct 25 04:11:23 IST 2026
[2026-10-25 04:11:23,940.940 INFO    ] ================================================
[2026-10-25 04:11:24,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:24
[2026-10-25 04:11:25,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:25,383.383 INFO    ] Initializing speech engine...
[2026-10-25 04:11:25,392.392 INFO    ] 2026-10-25 04:11:25
[2026-10-25 04:11:25,685.685 INFO    ] 2026-10-25 04:11:25
[2026-10-25 04:11:25,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:25,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:25,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:26,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:26,057.057 INFO    ] time= 25/10/2026 04:11:26
[2026-10-25 04:11:26,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:26,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:26,180.180 INFO    ] No existing commands found in stream
[2026-10-25 04:11:31,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:11:31,195.195 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 04:11:32,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:11:32,432.432 INFO    ] Checking for system updates...
[2026-10-25 04:11:32,474.474 INFO    ] 200
[2026-10-25 04:11:32,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:32,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:32,550.550 INFO    ] No update needed
[2026-10-25 04:11:32,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 04:11:32,600.600 INFO    ] 200
[2026-10-25 04:11:32,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:32,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:11:32,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:11:32,702.702 INFO    ] No camera update needed
[2026-10-25 04:11:32,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:11:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:11:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:11:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:11:34,764.764 INFO    ] ================================================
[2026-10-25 04:11:34,780.780 INFO    ] Launching Daemon at Sun Oct 25 04:11:34 IST 2026
[2026-10-25 04:11:34,791.791 INFO    ] ================================================
[2026-10-25 04:11:35,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:35
[2026-10-25 04:11:35,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:36,209.209 INFO    ] Initializing speech engine...
[2026-10-25 04:11:36,217.217 INFO    ] 2026-10-25 04:11:36
[2026-10-25 04:11:36,510.510 INFO    ] 2026-10-25 04:11:36
[2026-10-25 04:11:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:36,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:36,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:36,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:36,880.880 INFO    ] time= 25/10/2026 04:11:36
[2026-10-25 04:11:36,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:36,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:37,005.005 INFO    ] No existing commands found in stream
[2026-10-25 04:11:42,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:11:42,023.023 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 04:11:44,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:11:44,053.053 INFO    ] Checking for system updates...
[2026-10-25 04:11:44,093.093 INFO    ] 200
[2026-10-25 04:11:44,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:44,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:11:44,155.155 INFO    ] No update needed
[2026-10-25 04:11:44,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 04:11:44,194.194 INFO    ] 200
[2026-10-25 04:11:44,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:44,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:11:44,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:11:44,303.303 INFO    ] No camera update needed
[2026-10-25 04:11:44,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:11:44,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:11:44,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:11:44,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:11:46,360.360 INFO    ] ================================================
[2026-10-25 04:11:46,376.376 INFO    ] Launching Daemon at Sun Oct 25 04:11:46 IST 2026
[2026-10-25 04:11:46,387.387 INFO    ] ================================================
[2026-10-25 04:11:46,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:46
[2026-10-25 04:11:47,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:47,806.806 INFO    ] Initializing speech engine...
[2026-10-25 04:11:47,821.821 INFO    ] 2026-10-25 04:11:47
[2026-10-25 04:11:48,089.089 INFO    ] 2026-10-25 04:11:48
[2026-10-25 04:11:48,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:48,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:48,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:48,458.458 INFO    ] time= 25/10/2026 04:11:48
[2026-10-25 04:11:48,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:48,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:48,578.578 INFO    ] No existing commands found in stream
[2026-10-25 04:11:53,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:11:53,592.592 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 04:11:54,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:11:54,935.935 INFO    ] Checking for system updates...
[2026-10-25 04:11:54,971.971 INFO    ] 200
[2026-10-25 04:11:54,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:55,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:11:55,029.029 INFO    ] No update needed
[2026-10-25 04:11:55,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 04:11:55,066.066 INFO    ] 200
[2026-10-25 04:11:55,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:11:55,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:11:55,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:11:55,160.160 INFO    ] No camera update needed
[2026-10-25 04:11:55,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:11:55,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:11:55,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:11:55,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:11:57,216.216 INFO    ] ================================================
[2026-10-25 04:11:57,232.232 INFO    ] Launching Daemon at Sun Oct 25 04:11:57 IST 2026
[2026-10-25 04:11:57,243.243 INFO    ] ================================================
[2026-10-25 04:11:57,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:11:57
[2026-10-25 04:11:58,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:11:58,690.690 INFO    ] Initializing speech engine...
[2026-10-25 04:11:58,699.699 INFO    ] 2026-10-25 04:11:58
[2026-10-25 04:11:58,961.961 INFO    ] 2026-10-25 04:11:58
[2026-10-25 04:11:58,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:11:59,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:11:59,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:11:59,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:11:59,425.425 INFO    ] time= 25/10/2026 04:11:59
[2026-10-25 04:11:59,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:11:59,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:11:59,571.571 INFO    ] No existing commands found in stream
[2026-10-25 04:12:04,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:12:04,589.589 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 04:12:08,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:12:08,322.322 INFO    ] Checking for system updates...
[2026-10-25 04:12:08,358.358 INFO    ] 200
[2026-10-25 04:12:08,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:08,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:08,423.423 INFO    ] No update needed
[2026-10-25 04:12:08,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 04:12:08,459.459 INFO    ] 200
[2026-10-25 04:12:08,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:08,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:12:08,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:08,553.553 INFO    ] No camera update needed
[2026-10-25 04:12:08,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:12:08,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:12:08,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:12:08,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:12:10,611.611 INFO    ] ================================================
[2026-10-25 04:12:10,626.626 INFO    ] Launching Daemon at Sun Oct 25 04:12:10 IST 2026
[2026-10-25 04:12:10,637.637 INFO    ] ================================================
[2026-10-25 04:12:11,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:12:11
[2026-10-25 04:12:11,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:12:12,055.055 INFO    ] Initializing speech engine...
[2026-10-25 04:12:12,065.065 INFO    ] 2026-10-25 04:12:12
[2026-10-25 04:12:12,313.313 INFO    ] 2026-10-25 04:12:12
[2026-10-25 04:12:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:12:12,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:12:12,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:12:12,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:12:12,687.687 INFO    ] time= 25/10/2026 04:12:12
[2026-10-25 04:12:12,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:12:12,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:12:12,851.851 INFO    ] No existing commands found in stream
[2026-10-25 04:12:17,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:12:17,884.884 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 04:12:20,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:12:20,160.160 INFO    ] Checking for system updates...
[2026-10-25 04:12:20,200.200 INFO    ] 200
[2026-10-25 04:12:20,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:20,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:20,264.264 INFO    ] No update needed
[2026-10-25 04:12:20,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 04:12:20,299.299 INFO    ] 200
[2026-10-25 04:12:20,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:20,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:12:20,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:20,393.393 INFO    ] No camera update needed
[2026-10-25 04:12:20,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:12:20,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:12:20,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:12:20,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:12:22,451.451 INFO    ] ================================================
[2026-10-25 04:12:22,467.467 INFO    ] Launching Daemon at Sun Oct 25 04:12:22 IST 2026
[2026-10-25 04:12:22,478.478 INFO    ] ================================================
[2026-10-25 04:12:23,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:12:23
[2026-10-25 04:12:23,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:12:23,935.935 INFO    ] Initializing speech engine...
[2026-10-25 04:12:23,941.941 INFO    ] 2026-10-25 04:12:23
[2026-10-25 04:12:24,200.200 INFO    ] 2026-10-25 04:12:24
[2026-10-25 04:12:24,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:12:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:12:24,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:12:24,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:12:24,662.662 INFO    ] time= 25/10/2026 04:12:24
[2026-10-25 04:12:24,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:12:24,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:12:24,805.805 INFO    ] No existing commands found in stream
[2026-10-25 04:12:29,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:12:29,819.819 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 04:12:32,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:12:32,193.193 INFO    ] Checking for system updates...
[2026-10-25 04:12:32,236.236 INFO    ] 200
[2026-10-25 04:12:32,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:32,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:32,305.305 INFO    ] No update needed
[2026-10-25 04:12:32,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 04:12:32,345.345 INFO    ] 200
[2026-10-25 04:12:32,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:32,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:12:32,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:12:32,438.438 INFO    ] No camera update needed
[2026-10-25 04:12:32,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:12:32,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:12:32,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:12:32,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:12:34,497.497 INFO    ] ================================================
[2026-10-25 04:12:34,513.513 INFO    ] Launching Daemon at Sun Oct 25 04:12:34 IST 2026
[2026-10-25 04:12:34,524.524 INFO    ] ================================================
[2026-10-25 04:12:35,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:12:35
[2026-10-25 04:12:35,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:12:35,935.935 INFO    ] Initializing speech engine...
[2026-10-25 04:12:35,945.945 INFO    ] 2026-10-25 04:12:35
[2026-10-25 04:12:36,196.196 INFO    ] 2026-10-25 04:12:36
[2026-10-25 04:12:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:12:36,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:12:36,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:12:36,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:12:36,653.653 INFO    ] time= 25/10/2026 04:12:36
[2026-10-25 04:12:36,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:12:36,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:12:36,805.805 INFO    ] No existing commands found in stream
[2026-10-25 04:12:41,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:12:41,819.819 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 04:12:43,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:12:43,326.326 INFO    ] Checking for system updates...
[2026-10-25 04:12:43,363.363 INFO    ] 200
[2026-10-25 04:12:43,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:43,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:12:43,434.434 INFO    ] No update needed
[2026-10-25 04:12:43,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 04:12:43,475.475 INFO    ] 200
[2026-10-25 04:12:43,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:43,519.519 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:12:43,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:12:43,577.577 INFO    ] No camera update needed
[2026-10-25 04:12:43,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:12:43,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:12:43,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:12:43,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:12:45,632.632 INFO    ] ================================================
[2026-10-25 04:12:45,648.648 INFO    ] Launching Daemon at Sun Oct 25 04:12:45 IST 2026
[2026-10-25 04:12:45,660.660 INFO    ] ================================================
[2026-10-25 04:12:46,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:12:46
[2026-10-25 04:12:46,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:12:47,062.062 INFO    ] Initializing speech engine...
[2026-10-25 04:12:47,076.076 INFO    ] 2026-10-25 04:12:47
[2026-10-25 04:12:47,344.344 INFO    ] 2026-10-25 04:12:47
[2026-10-25 04:12:47,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:12:47,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:12:47,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:12:47,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:12:47,823.823 INFO    ] time= 25/10/2026 04:12:47
[2026-10-25 04:12:47,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:12:47,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:12:47,974.974 INFO    ] No existing commands found in stream
[2026-10-25 04:12:52,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:12:52,989.989 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 04:12:56,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:12:56,889.889 INFO    ] Checking for system updates...
[2026-10-25 04:12:56,927.927 INFO    ] 200
[2026-10-25 04:12:56,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:56,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:12:56,992.992 INFO    ] No update needed
[2026-10-25 04:12:56,995.995 INFO    ] Checking for camera pi updates...
[2026-10-25 04:12:57,033.033 INFO    ] 200
[2026-10-25 04:12:57,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:12:57,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:12:57,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:12:57,125.125 INFO    ] No camera update needed
[2026-10-25 04:12:57,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:12:57,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:12:57,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:12:57,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:12:59,180.180 INFO    ] ================================================
[2026-10-25 04:12:59,195.195 INFO    ] Launching Daemon at Sun Oct 25 04:12:59 IST 2026
[2026-10-25 04:12:59,207.207 INFO    ] ================================================
[2026-10-25 04:12:59,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:12:59
[2026-10-25 04:13:00,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:13:00,600.600 INFO    ] Initializing speech engine...
[2026-10-25 04:13:00,613.613 INFO    ] 2026-10-25 04:13:00
[2026-10-25 04:13:00,873.873 INFO    ] 2026-10-25 04:13:00
[2026-10-25 04:13:00,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:13:01,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:13:01,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:13:01,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:13:01,344.344 INFO    ] time= 25/10/2026 04:13:01
[2026-10-25 04:13:01,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:13:01,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:13:01,488.488 INFO    ] No existing commands found in stream
[2026-10-25 04:13:06,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:13:06,506.506 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 04:13:08,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:13:08,260.260 INFO    ] Checking for system updates...
[2026-10-25 04:13:08,300.300 INFO    ] 200
[2026-10-25 04:13:08,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:08,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:08,358.358 INFO    ] No update needed
[2026-10-25 04:13:08,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 04:13:08,394.394 INFO    ] 200
[2026-10-25 04:13:08,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:08,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:13:08,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:08,495.495 INFO    ] No camera update needed
[2026-10-25 04:13:08,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:13:08,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:13:08,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:13:08,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:13:10,555.555 INFO    ] ================================================
[2026-10-25 04:13:10,571.571 INFO    ] Launching Daemon at Sun Oct 25 04:13:10 IST 2026
[2026-10-25 04:13:10,582.582 INFO    ] ================================================
[2026-10-25 04:13:11,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:13:11
[2026-10-25 04:13:11,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:13:12,029.029 INFO    ] Initializing speech engine...
[2026-10-25 04:13:12,038.038 INFO    ] 2026-10-25 04:13:12
[2026-10-25 04:13:12,288.288 INFO    ] 2026-10-25 04:13:12
[2026-10-25 04:13:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:13:12,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:13:12,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:13:12,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:13:12,783.783 INFO    ] time= 25/10/2026 04:13:12
[2026-10-25 04:13:12,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:13:12,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:13:12,912.912 INFO    ] No existing commands found in stream
[2026-10-25 04:13:17,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:13:17,929.929 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 04:13:19,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:13:19,684.684 INFO    ] Checking for system updates...
[2026-10-25 04:13:19,720.720 INFO    ] 200
[2026-10-25 04:13:19,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:19,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:19,779.779 INFO    ] No update needed
[2026-10-25 04:13:19,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 04:13:19,819.819 INFO    ] 200
[2026-10-25 04:13:19,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:19,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:13:19,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:19,942.942 INFO    ] No camera update needed
[2026-10-25 04:13:19,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:13:19,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:13:19,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:13:19,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:13:22,999.999 INFO    ] ================================================
[2026-10-25 04:13:22,015.015 INFO    ] Launching Daemon at Sun Oct 25 04:13:22 IST 2026
[2026-10-25 04:13:22,026.026 INFO    ] ================================================
[2026-10-25 04:13:22,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:13:22
[2026-10-25 04:13:23,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:13:23,488.488 INFO    ] Initializing speech engine...
[2026-10-25 04:13:23,495.495 INFO    ] 2026-10-25 04:13:23
[2026-10-25 04:13:23,758.758 INFO    ] 2026-10-25 04:13:23
[2026-10-25 04:13:23,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:13:24,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:13:24,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:13:24,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:13:24,300.300 INFO    ] time= 25/10/2026 04:13:24
[2026-10-25 04:13:24,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:13:24,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:13:24,446.446 INFO    ] No existing commands found in stream
[2026-10-25 04:13:29,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:13:29,466.466 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 04:13:32,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:13:32,613.613 INFO    ] Checking for system updates...
[2026-10-25 04:13:32,673.673 INFO    ] 200
[2026-10-25 04:13:32,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:32,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:32,769.769 INFO    ] No update needed
[2026-10-25 04:13:32,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 04:13:32,831.831 INFO    ] 200
[2026-10-25 04:13:32,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:32,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:13:32,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:32,947.947 INFO    ] No camera update needed
[2026-10-25 04:13:32,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:13:32,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:13:32,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:13:32,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:13:35,009.009 INFO    ] ================================================
[2026-10-25 04:13:35,025.025 INFO    ] Launching Daemon at Sun Oct 25 04:13:35 IST 2026
[2026-10-25 04:13:35,036.036 INFO    ] ================================================
[2026-10-25 04:13:35,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:13:35
[2026-10-25 04:13:36,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:13:36,584.584 INFO    ] Initializing speech engine...
[2026-10-25 04:13:36,589.589 INFO    ] 2026-10-25 04:13:36
[2026-10-25 04:13:36,858.858 INFO    ] 2026-10-25 04:13:36
[2026-10-25 04:13:36,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:13:37,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:13:37,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:13:37,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:13:37,328.328 INFO    ] time= 25/10/2026 04:13:37
[2026-10-25 04:13:37,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:13:37,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:13:37,539.539 INFO    ] No existing commands found in stream
[2026-10-25 04:13:42,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:13:42,566.566 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 04:13:45,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:13:45,415.415 INFO    ] Checking for system updates...
[2026-10-25 04:13:45,452.452 INFO    ] 200
[2026-10-25 04:13:45,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:45,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:45,518.518 INFO    ] No update needed
[2026-10-25 04:13:45,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 04:13:45,555.555 INFO    ] 200
[2026-10-25 04:13:45,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:45,598.598 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:13:45,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:13:45,652.652 INFO    ] No camera update needed
[2026-10-25 04:13:45,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:13:45,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:13:45,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:13:45,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:13:47,707.707 INFO    ] ================================================
[2026-10-25 04:13:47,722.722 INFO    ] Launching Daemon at Sun Oct 25 04:13:47 IST 2026
[2026-10-25 04:13:47,733.733 INFO    ] ================================================
[2026-10-25 04:13:48,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:13:48
[2026-10-25 04:13:49,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:13:49,291.291 INFO    ] Initializing speech engine...
[2026-10-25 04:13:49,300.300 INFO    ] 2026-10-25 04:13:49
[2026-10-25 04:13:49,569.569 INFO    ] 2026-10-25 04:13:49
[2026-10-25 04:13:49,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:13:49,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:13:49,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:13:49,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:13:50,063.063 INFO    ] time= 25/10/2026 04:13:50
[2026-10-25 04:13:50,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:13:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:13:50,251.251 INFO    ] No existing commands found in stream
[2026-10-25 04:13:55,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:13:55,285.285 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 04:13:59,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:13:59,725.725 INFO    ] Checking for system updates...
[2026-10-25 04:13:59,762.762 INFO    ] 200
[2026-10-25 04:13:59,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:59,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:13:59,824.824 INFO    ] No update needed
[2026-10-25 04:13:59,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 04:13:59,860.860 INFO    ] 200
[2026-10-25 04:13:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:13:59,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:13:59,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:13:59,958.958 INFO    ] No camera update needed
[2026-10-25 04:13:59,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:13:59,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:13:59,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:13:59,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:14:02,030.030 INFO    ] ================================================
[2026-10-25 04:14:02,065.065 INFO    ] Launching Daemon at Sun Oct 25 04:14:02 IST 2026
[2026-10-25 04:14:02,083.083 INFO    ] ================================================
[2026-10-25 04:14:02,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:14:02
[2026-10-25 04:14:03,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:14:03,663.663 INFO    ] Initializing speech engine...
[2026-10-25 04:14:03,674.674 INFO    ] 2026-10-25 04:14:03
[2026-10-25 04:14:03,934.934 INFO    ] 2026-10-25 04:14:03
[2026-10-25 04:14:03,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:14:04,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:14:04,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:14:04,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:14:04,398.398 INFO    ] time= 25/10/2026 04:14:04
[2026-10-25 04:14:04,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:14:04,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:14:04,561.561 INFO    ] No existing commands found in stream
[2026-10-25 04:14:09,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:14:09,575.575 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 04:14:10,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:14:10,944.944 INFO    ] Checking for system updates...
[2026-10-25 04:14:10,984.984 INFO    ] 200
[2026-10-25 04:14:10,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:11,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:11,049.049 INFO    ] No update needed
[2026-10-25 04:14:11,052.052 INFO    ] Checking for camera pi updates...
[2026-10-25 04:14:11,092.092 INFO    ] 200
[2026-10-25 04:14:11,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:11,135.135 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:14:11,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:11,191.191 INFO    ] No camera update needed
[2026-10-25 04:14:11,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:14:11,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:14:11,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:14:11,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:14:13,248.248 INFO    ] ================================================
[2026-10-25 04:14:13,264.264 INFO    ] Launching Daemon at Sun Oct 25 04:14:13 IST 2026
[2026-10-25 04:14:13,275.275 INFO    ] ================================================
[2026-10-25 04:14:13,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:14:13
[2026-10-25 04:14:14,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:14:14,713.713 INFO    ] Initializing speech engine...
[2026-10-25 04:14:14,719.719 INFO    ] 2026-10-25 04:14:14
[2026-10-25 04:14:15,009.009 INFO    ] 2026-10-25 04:14:14
[2026-10-25 04:14:15,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:14:15,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:14:15,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:14:15,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:14:15,446.446 INFO    ] time= 25/10/2026 04:14:15
[2026-10-25 04:14:15,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:14:15,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:14:15,530.530 INFO    ] No existing commands found in stream
[2026-10-25 04:14:20,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:14:20,545.545 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 04:14:24,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:14:24,778.778 INFO    ] Checking for system updates...
[2026-10-25 04:14:24,818.818 INFO    ] 200
[2026-10-25 04:14:24,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:24,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:24,883.883 INFO    ] No update needed
[2026-10-25 04:14:24,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 04:14:24,919.919 INFO    ] 200
[2026-10-25 04:14:24,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:24,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:14:25,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:25,037.037 INFO    ] No camera update needed
[2026-10-25 04:14:25,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:14:25,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:14:25,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:14:25,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:14:27,093.093 INFO    ] ================================================
[2026-10-25 04:14:27,108.108 INFO    ] Launching Daemon at Sun Oct 25 04:14:27 IST 2026
[2026-10-25 04:14:27,119.119 INFO    ] ================================================
[2026-10-25 04:14:27,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:14:27
[2026-10-25 04:14:28,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:14:28,538.538 INFO    ] Initializing speech engine...
[2026-10-25 04:14:28,546.546 INFO    ] 2026-10-25 04:14:28
[2026-10-25 04:14:28,843.843 INFO    ] 2026-10-25 04:14:28
[2026-10-25 04:14:28,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:14:29,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:14:29,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:14:29,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:14:29,348.348 INFO    ] time= 25/10/2026 04:14:29
[2026-10-25 04:14:29,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:14:29,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:14:29,502.502 INFO    ] No existing commands found in stream
[2026-10-25 04:14:34,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:14:34,517.517 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 04:14:36,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:14:36,393.393 INFO    ] Checking for system updates...
[2026-10-25 04:14:36,434.434 INFO    ] 200
[2026-10-25 04:14:36,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:36,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:36,500.500 INFO    ] No update needed
[2026-10-25 04:14:36,502.502 INFO    ] Checking for camera pi updates...
[2026-10-25 04:14:36,536.536 INFO    ] 200
[2026-10-25 04:14:36,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:36,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:14:36,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:14:36,628.628 INFO    ] No camera update needed
[2026-10-25 04:14:36,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:14:36,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:14:36,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:14:36,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:14:38,683.683 INFO    ] ================================================
[2026-10-25 04:14:38,699.699 INFO    ] Launching Daemon at Sun Oct 25 04:14:38 IST 2026
[2026-10-25 04:14:38,710.710 INFO    ] ================================================
[2026-10-25 04:14:39,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:14:39
[2026-10-25 04:14:40,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:14:40,342.342 INFO    ] Initializing speech engine...
[2026-10-25 04:14:40,349.349 INFO    ] 2026-10-25 04:14:40
[2026-10-25 04:14:40,624.624 INFO    ] 2026-10-25 04:14:40
[2026-10-25 04:14:40,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:14:40,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:14:40,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:14:41,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:14:41,114.114 INFO    ] time= 25/10/2026 04:14:41
[2026-10-25 04:14:41,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:14:41,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:14:41,305.305 INFO    ] No existing commands found in stream
[2026-10-25 04:14:46,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:14:46,339.339 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 04:14:50,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:14:50,281.281 INFO    ] Checking for system updates...
[2026-10-25 04:14:50,323.323 INFO    ] 200
[2026-10-25 04:14:50,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:50,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:14:50,382.382 INFO    ] No update needed
[2026-10-25 04:14:50,385.385 INFO    ] Checking for camera pi updates...
[2026-10-25 04:14:50,419.419 INFO    ] 200
[2026-10-25 04:14:50,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:14:50,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:14:50,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:14:50,526.526 INFO    ] No camera update needed
[2026-10-25 04:14:50,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:14:50,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:14:50,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:14:50,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:14:52,581.581 INFO    ] ================================================
[2026-10-25 04:14:52,597.597 INFO    ] Launching Daemon at Sun Oct 25 04:14:52 IST 2026
[2026-10-25 04:14:52,608.608 INFO    ] ================================================
[2026-10-25 04:14:53,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:14:53
[2026-10-25 04:14:53,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:14:54,046.046 INFO    ] Initializing speech engine...
[2026-10-25 04:14:54,056.056 INFO    ] 2026-10-25 04:14:54
[2026-10-25 04:14:54,328.328 INFO    ] 2026-10-25 04:14:54
[2026-10-25 04:14:54,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:14:54,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:14:54,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:14:54,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:14:54,837.837 INFO    ] time= 25/10/2026 04:14:54
[2026-10-25 04:14:54,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:14:54,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:14:55,029.029 INFO    ] No existing commands found in stream
[2026-10-25 04:15:00,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:15:00,055.055 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 04:15:04,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:15:04,430.430 INFO    ] Checking for system updates...
[2026-10-25 04:15:04,467.467 INFO    ] 200
[2026-10-25 04:15:04,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:04,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:04,535.535 INFO    ] No update needed
[2026-10-25 04:15:04,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 04:15:04,577.577 INFO    ] 200
[2026-10-25 04:15:04,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:04,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:15:04,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:04,787.787 INFO    ] No camera update needed
[2026-10-25 04:15:04,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:15:04,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:15:04,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:15:04,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:15:06,847.847 INFO    ] ================================================
[2026-10-25 04:15:06,863.863 INFO    ] Launching Daemon at Sun Oct 25 04:15:06 IST 2026
[2026-10-25 04:15:06,874.874 INFO    ] ================================================
[2026-10-25 04:15:07,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:15:07
[2026-10-25 04:15:08,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:15:08,516.516 INFO    ] Initializing speech engine...
[2026-10-25 04:15:08,528.528 INFO    ] 2026-10-25 04:15:08
[2026-10-25 04:15:08,819.819 INFO    ] 2026-10-25 04:15:08
[2026-10-25 04:15:08,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:15:09,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:15:09,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:15:09,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:15:09,323.323 INFO    ] time= 25/10/2026 04:15:09
[2026-10-25 04:15:09,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:15:09,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:15:09,500.500 INFO    ] No existing commands found in stream
[2026-10-25 04:15:14,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:15:14,534.534 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 04:15:16,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:15:16,352.352 INFO    ] Checking for system updates...
[2026-10-25 04:15:16,394.394 INFO    ] 200
[2026-10-25 04:15:16,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:16,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:16,464.464 INFO    ] No update needed
[2026-10-25 04:15:16,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 04:15:16,507.507 INFO    ] 200
[2026-10-25 04:15:16,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:16,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:15:16,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:16,617.617 INFO    ] No camera update needed
[2026-10-25 04:15:16,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:15:16,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:15:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:15:16,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:15:18,679.679 INFO    ] ================================================
[2026-10-25 04:15:18,695.695 INFO    ] Launching Daemon at Sun Oct 25 04:15:18 IST 2026
[2026-10-25 04:15:18,705.705 INFO    ] ================================================
[2026-10-25 04:15:19,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:15:19
[2026-10-25 04:15:20,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:15:20,377.377 INFO    ] Initializing speech engine...
[2026-10-25 04:15:20,392.392 INFO    ] 2026-10-25 04:15:20
[2026-10-25 04:15:20,683.683 INFO    ] 2026-10-25 04:15:20
[2026-10-25 04:15:20,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:15:21,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:15:21,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:15:21,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:15:21,277.277 INFO    ] time= 25/10/2026 04:15:21
[2026-10-25 04:15:21,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:15:21,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:15:21,470.470 INFO    ] No existing commands found in stream
[2026-10-25 04:15:26,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:15:26,499.499 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 04:15:30,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:15:30,870.870 INFO    ] Checking for system updates...
[2026-10-25 04:15:30,909.909 INFO    ] 200
[2026-10-25 04:15:30,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:30,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:30,976.976 INFO    ] No update needed
[2026-10-25 04:15:30,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 04:15:31,015.015 INFO    ] 200
[2026-10-25 04:15:31,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:31,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:15:31,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:31,125.125 INFO    ] No camera update needed
[2026-10-25 04:15:31,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:15:31,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:15:31,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:15:31,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:15:33,188.188 INFO    ] ================================================
[2026-10-25 04:15:33,205.205 INFO    ] Launching Daemon at Sun Oct 25 04:15:33 IST 2026
[2026-10-25 04:15:33,217.217 INFO    ] ================================================
[2026-10-25 04:15:33,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:15:33
[2026-10-25 04:15:34,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:15:34,689.689 INFO    ] Initializing speech engine...
[2026-10-25 04:15:34,695.695 INFO    ] 2026-10-25 04:15:34
[2026-10-25 04:15:34,992.992 INFO    ] 2026-10-25 04:15:34
[2026-10-25 04:15:35,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:15:35,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:15:35,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:15:35,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:15:35,353.353 INFO    ] time= 25/10/2026 04:15:35
[2026-10-25 04:15:35,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:15:35,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:15:35,436.436 INFO    ] No existing commands found in stream
[2026-10-25 04:15:40,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:15:40,451.451 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 04:15:44,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:15:44,315.315 INFO    ] Checking for system updates...
[2026-10-25 04:15:44,351.351 INFO    ] 200
[2026-10-25 04:15:44,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:44,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:15:44,408.408 INFO    ] No update needed
[2026-10-25 04:15:44,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 04:15:44,446.446 INFO    ] 200
[2026-10-25 04:15:44,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:44,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:15:44,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:15:44,544.544 INFO    ] No camera update needed
[2026-10-25 04:15:44,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:15:44,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:15:44,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:15:44,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:15:46,598.598 INFO    ] ================================================
[2026-10-25 04:15:46,613.613 INFO    ] Launching Daemon at Sun Oct 25 04:15:46 IST 2026
[2026-10-25 04:15:46,624.624 INFO    ] ================================================
[2026-10-25 04:15:47,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:15:47
[2026-10-25 04:15:47,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:15:48,044.044 INFO    ] Initializing speech engine...
[2026-10-25 04:15:48,056.056 INFO    ] 2026-10-25 04:15:48
[2026-10-25 04:15:48,306.306 INFO    ] 2026-10-25 04:15:48
[2026-10-25 04:15:48,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:15:48,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:15:48,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:15:48,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:15:48,683.683 INFO    ] time= 25/10/2026 04:15:48
[2026-10-25 04:15:48,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:15:48,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:15:48,843.843 INFO    ] No existing commands found in stream
[2026-10-25 04:15:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:15:53,876.876 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 04:15:55,805.805 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:15:55,808.808 INFO    ] Checking for system updates...
[2026-10-25 04:15:55,844.844 INFO    ] 200
[2026-10-25 04:15:55,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:55,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:55,903.903 INFO    ] No update needed
[2026-10-25 04:15:55,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 04:15:55,942.942 INFO    ] 200
[2026-10-25 04:15:55,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:15:55,985.985 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:15:56,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:15:56,043.043 INFO    ] No camera update needed
[2026-10-25 04:15:56,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:15:56,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:15:56,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:15:56,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:15:58,099.099 INFO    ] ================================================
[2026-10-25 04:15:58,115.115 INFO    ] Launching Daemon at Sun Oct 25 04:15:58 IST 2026
[2026-10-25 04:15:58,126.126 INFO    ] ================================================
[2026-10-25 04:15:58,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:15:58
[2026-10-25 04:15:59,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:15:59,533.533 INFO    ] Initializing speech engine...
[2026-10-25 04:15:59,558.558 INFO    ] 2026-10-25 04:15:59
[2026-10-25 04:15:59,816.816 INFO    ] 2026-10-25 04:15:59
[2026-10-25 04:15:59,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:00,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:00,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:00,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:00,193.193 INFO    ] time= 25/10/2026 04:16:00
[2026-10-25 04:16:00,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:00,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:00,347.347 INFO    ] No existing commands found in stream
[2026-10-25 04:16:05,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:16:05,375.375 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 04:16:08,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:16:08,116.116 INFO    ] Checking for system updates...
[2026-10-25 04:16:08,154.154 INFO    ] 200
[2026-10-25 04:16:08,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:08,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:08,224.224 INFO    ] No update needed
[2026-10-25 04:16:08,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 04:16:08,262.262 INFO    ] 200
[2026-10-25 04:16:08,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:08,306.306 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:16:08,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:08,376.376 INFO    ] No camera update needed
[2026-10-25 04:16:08,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:16:08,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:16:08,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:16:08,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:16:10,434.434 INFO    ] ================================================
[2026-10-25 04:16:10,449.449 INFO    ] Launching Daemon at Sun Oct 25 04:16:10 IST 2026
[2026-10-25 04:16:10,461.461 INFO    ] ================================================
[2026-10-25 04:16:11,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:16:11
[2026-10-25 04:16:11,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:16:11,917.917 INFO    ] Initializing speech engine...
[2026-10-25 04:16:11,926.926 INFO    ] 2026-10-25 04:16:11
[2026-10-25 04:16:12,188.188 INFO    ] 2026-10-25 04:16:12
[2026-10-25 04:16:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:12,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:12,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:12,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:12,671.671 INFO    ] time= 25/10/2026 04:16:12
[2026-10-25 04:16:12,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:12,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:12,865.865 INFO    ] No existing commands found in stream
[2026-10-25 04:16:17,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:16:17,894.894 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 04:16:19,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:16:19,358.358 INFO    ] Checking for system updates...
[2026-10-25 04:16:19,406.406 INFO    ] 200
[2026-10-25 04:16:19,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:19,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:16:19,465.465 INFO    ] No update needed
[2026-10-25 04:16:19,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 04:16:19,506.506 INFO    ] 200
[2026-10-25 04:16:19,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:19,555.555 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:16:19,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:16:19,621.621 INFO    ] No camera update needed
[2026-10-25 04:16:19,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:16:19,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:16:19,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:16:19,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:16:21,677.677 INFO    ] ================================================
[2026-10-25 04:16:21,693.693 INFO    ] Launching Daemon at Sun Oct 25 04:16:21 IST 2026
[2026-10-25 04:16:21,705.705 INFO    ] ================================================
[2026-10-25 04:16:22,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:16:22
[2026-10-25 04:16:22,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:16:23,118.118 INFO    ] Initializing speech engine...
[2026-10-25 04:16:23,127.127 INFO    ] 2026-10-25 04:16:23
[2026-10-25 04:16:23,374.374 INFO    ] 2026-10-25 04:16:23
[2026-10-25 04:16:23,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:23,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:24,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:24,100.100 INFO    ] time= 25/10/2026 04:16:24
[2026-10-25 04:16:24,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:24,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:24,303.303 INFO    ] No existing commands found in stream
[2026-10-25 04:16:29,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:16:29,327.327 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 04:16:30,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:16:30,999.999 INFO    ] Checking for system updates...
[2026-10-25 04:16:31,037.037 INFO    ] 200
[2026-10-25 04:16:31,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:31,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:31,095.095 INFO    ] No update needed
[2026-10-25 04:16:31,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 04:16:31,135.135 INFO    ] 200
[2026-10-25 04:16:31,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:31,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:16:31,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:31,234.234 INFO    ] No camera update needed
[2026-10-25 04:16:31,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:16:31,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:16:31,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:16:31,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:16:33,291.291 INFO    ] ================================================
[2026-10-25 04:16:33,307.307 INFO    ] Launching Daemon at Sun Oct 25 04:16:33 IST 2026
[2026-10-25 04:16:33,319.319 INFO    ] ================================================
[2026-10-25 04:16:33,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:16:33
[2026-10-25 04:16:34,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:16:34,793.793 INFO    ] Initializing speech engine...
[2026-10-25 04:16:34,802.802 INFO    ] 2026-10-25 04:16:34
[2026-10-25 04:16:35,064.064 INFO    ] 2026-10-25 04:16:35
[2026-10-25 04:16:35,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:35,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:35,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:35,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:35,533.533 INFO    ] time= 25/10/2026 04:16:35
[2026-10-25 04:16:35,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:35,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:35,673.673 INFO    ] No existing commands found in stream
[2026-10-25 04:16:40,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:16:40,686.686 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 04:16:44,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:16:44,103.103 INFO    ] Checking for system updates...
[2026-10-25 04:16:44,139.139 INFO    ] 200
[2026-10-25 04:16:44,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:44,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:44,198.198 INFO    ] No update needed
[2026-10-25 04:16:44,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 04:16:44,239.239 INFO    ] 200
[2026-10-25 04:16:44,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:44,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:16:44,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:44,339.339 INFO    ] No camera update needed
[2026-10-25 04:16:44,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:16:44,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:16:44,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:16:44,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:16:46,396.396 INFO    ] ================================================
[2026-10-25 04:16:46,411.411 INFO    ] Launching Daemon at Sun Oct 25 04:16:46 IST 2026
[2026-10-25 04:16:46,423.423 INFO    ] ================================================
[2026-10-25 04:16:46,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:16:46
[2026-10-25 04:16:47,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:16:47,836.836 INFO    ] Initializing speech engine...
[2026-10-25 04:16:47,846.846 INFO    ] 2026-10-25 04:16:47
[2026-10-25 04:16:48,090.090 INFO    ] 2026-10-25 04:16:48
[2026-10-25 04:16:48,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:48,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:48,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:48,557.557 INFO    ] time= 25/10/2026 04:16:48
[2026-10-25 04:16:48,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:48,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:48,710.710 INFO    ] No existing commands found in stream
[2026-10-25 04:16:53,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:16:53,745.745 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 04:16:54,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:16:54,357.357 INFO    ] Checking for system updates...
[2026-10-25 04:16:54,394.394 INFO    ] 200
[2026-10-25 04:16:54,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:54,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:54,461.461 INFO    ] No update needed
[2026-10-25 04:16:54,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 04:16:54,497.497 INFO    ] 200
[2026-10-25 04:16:54,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:16:54,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:16:54,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:16:54,619.619 INFO    ] No camera update needed
[2026-10-25 04:16:54,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:16:54,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:16:54,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:16:54,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:16:56,673.673 INFO    ] ================================================
[2026-10-25 04:16:56,689.689 INFO    ] Launching Daemon at Sun Oct 25 04:16:56 IST 2026
[2026-10-25 04:16:56,701.701 INFO    ] ================================================
[2026-10-25 04:16:57,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:16:57
[2026-10-25 04:16:57,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:16:58,249.249 INFO    ] Initializing speech engine...
[2026-10-25 04:16:58,263.263 INFO    ] 2026-10-25 04:16:58
[2026-10-25 04:16:58,551.551 INFO    ] 2026-10-25 04:16:58
[2026-10-25 04:16:58,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:16:59,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:16:59,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:16:59,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:16:59,214.214 INFO    ] time= 25/10/2026 04:16:59
[2026-10-25 04:16:59,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:16:59,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:16:59,353.353 INFO    ] No existing commands found in stream
[2026-10-25 04:17:04,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:17:04,376.376 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 04:17:08,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:17:08,786.786 INFO    ] Checking for system updates...
[2026-10-25 04:17:08,822.822 INFO    ] 200
[2026-10-25 04:17:08,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:08,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:08,880.880 INFO    ] No update needed
[2026-10-25 04:17:08,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 04:17:08,916.916 INFO    ] 200
[2026-10-25 04:17:08,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:08,959.959 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:17:09,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:09,114.114 INFO    ] No camera update needed
[2026-10-25 04:17:09,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:17:09,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:17:09,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:17:09,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:17:11,171.171 INFO    ] ================================================
[2026-10-25 04:17:11,187.187 INFO    ] Launching Daemon at Sun Oct 25 04:17:11 IST 2026
[2026-10-25 04:17:11,197.197 INFO    ] ================================================
[2026-10-25 04:17:11,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:17:11
[2026-10-25 04:17:12,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:17:12,609.609 INFO    ] Initializing speech engine...
[2026-10-25 04:17:12,625.625 INFO    ] 2026-10-25 04:17:12
[2026-10-25 04:17:12,914.914 INFO    ] 2026-10-25 04:17:12
[2026-10-25 04:17:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:17:13,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:17:13,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:17:13,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:17:13,339.339 INFO    ] time= 25/10/2026 04:17:13
[2026-10-25 04:17:13,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:17:13,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:17:13,429.429 INFO    ] No existing commands found in stream
[2026-10-25 04:17:18,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:17:18,444.444 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 04:17:19,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:17:19,105.105 INFO    ] Checking for system updates...
[2026-10-25 04:17:19,142.142 INFO    ] 200
[2026-10-25 04:17:19,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:19,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:19,210.210 INFO    ] No update needed
[2026-10-25 04:17:19,213.213 INFO    ] Checking for camera pi updates...
[2026-10-25 04:17:19,252.252 INFO    ] 200
[2026-10-25 04:17:19,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:19,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:17:19,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:19,353.353 INFO    ] No camera update needed
[2026-10-25 04:17:19,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:17:19,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:17:19,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:17:19,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:17:21,408.408 INFO    ] ================================================
[2026-10-25 04:17:21,424.424 INFO    ] Launching Daemon at Sun Oct 25 04:17:21 IST 2026
[2026-10-25 04:17:21,436.436 INFO    ] ================================================
[2026-10-25 04:17:22,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:17:21
[2026-10-25 04:17:22,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:17:22,829.829 INFO    ] Initializing speech engine...
[2026-10-25 04:17:22,842.842 INFO    ] 2026-10-25 04:17:22
[2026-10-25 04:17:23,102.102 INFO    ] 2026-10-25 04:17:23
[2026-10-25 04:17:23,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:17:23,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:17:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:17:23,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:17:23,595.595 INFO    ] time= 25/10/2026 04:17:23
[2026-10-25 04:17:23,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:17:23,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:17:23,716.716 INFO    ] No existing commands found in stream
[2026-10-25 04:17:28,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:17:28,731.731 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 04:17:32,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:17:32,363.363 INFO    ] Checking for system updates...
[2026-10-25 04:17:32,408.408 INFO    ] 200
[2026-10-25 04:17:32,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:32,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:32,471.471 INFO    ] No update needed
[2026-10-25 04:17:32,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 04:17:32,517.517 INFO    ] 200
[2026-10-25 04:17:32,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:32,577.577 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:17:32,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:32,629.629 INFO    ] No camera update needed
[2026-10-25 04:17:32,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:17:32,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:17:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:17:32,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:17:34,697.697 INFO    ] ================================================
[2026-10-25 04:17:34,713.713 INFO    ] Launching Daemon at Sun Oct 25 04:17:34 IST 2026
[2026-10-25 04:17:34,723.723 INFO    ] ================================================
[2026-10-25 04:17:35,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:17:35
[2026-10-25 04:17:36,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:17:36,370.370 INFO    ] Initializing speech engine...
[2026-10-25 04:17:36,385.385 INFO    ] 2026-10-25 04:17:36
[2026-10-25 04:17:36,675.675 INFO    ] 2026-10-25 04:17:36
[2026-10-25 04:17:36,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:17:36,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:17:37,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:17:37,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:17:37,205.205 INFO    ] time= 25/10/2026 04:17:37
[2026-10-25 04:17:37,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:17:37,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:17:37,361.361 INFO    ] No existing commands found in stream
[2026-10-25 04:17:42,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:17:42,400.400 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 04:17:44,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:17:44,648.648 INFO    ] Checking for system updates...
[2026-10-25 04:17:44,687.687 INFO    ] 200
[2026-10-25 04:17:44,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:44,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:17:44,760.760 INFO    ] No update needed
[2026-10-25 04:17:44,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 04:17:44,798.798 INFO    ] 200
[2026-10-25 04:17:44,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:44,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:17:44,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:17:44,905.905 INFO    ] No camera update needed
[2026-10-25 04:17:44,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:17:44,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:17:44,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:17:44,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:17:46,967.967 INFO    ] ================================================
[2026-10-25 04:17:46,984.984 INFO    ] Launching Daemon at Sun Oct 25 04:17:46 IST 2026
[2026-10-25 04:17:47,997.997 INFO    ] ================================================
[2026-10-25 04:17:47,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:17:47
[2026-10-25 04:17:48,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:17:48,484.484 INFO    ] Initializing speech engine...
[2026-10-25 04:17:48,493.493 INFO    ] 2026-10-25 04:17:48
[2026-10-25 04:17:48,790.790 INFO    ] 2026-10-25 04:17:48
[2026-10-25 04:17:48,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:17:49,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:17:49,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:17:49,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:17:49,216.216 INFO    ] time= 25/10/2026 04:17:49
[2026-10-25 04:17:49,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:17:49,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:17:49,304.304 INFO    ] No existing commands found in stream
[2026-10-25 04:17:54,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:17:54,323.323 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 04:17:59,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:17:59,456.456 INFO    ] Checking for system updates...
[2026-10-25 04:17:59,493.493 INFO    ] 200
[2026-10-25 04:17:59,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:59,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:59,551.551 INFO    ] No update needed
[2026-10-25 04:17:59,554.554 INFO    ] Checking for camera pi updates...
[2026-10-25 04:17:59,592.592 INFO    ] 200
[2026-10-25 04:17:59,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:17:59,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:17:59,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:17:59,684.684 INFO    ] No camera update needed
[2026-10-25 04:17:59,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:17:59,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:17:59,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:17:59,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:18:01,757.757 INFO    ] ================================================
[2026-10-25 04:18:01,794.794 INFO    ] Launching Daemon at Sun Oct 25 04:18:01 IST 2026
[2026-10-25 04:18:01,811.811 INFO    ] ================================================
[2026-10-25 04:18:02,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:18:02
[2026-10-25 04:18:03,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:18:03,614.614 INFO    ] Initializing speech engine...
[2026-10-25 04:18:03,620.620 INFO    ] 2026-10-25 04:18:03
[2026-10-25 04:18:03,877.877 INFO    ] 2026-10-25 04:18:03
[2026-10-25 04:18:03,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:18:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:18:04,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:18:04,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:18:04,336.336 INFO    ] time= 25/10/2026 04:18:04
[2026-10-25 04:18:04,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:18:04,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:18:04,534.534 INFO    ] No existing commands found in stream
[2026-10-25 04:18:09,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:18:09,564.564 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 04:18:11,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:18:11,888.888 INFO    ] Checking for system updates...
[2026-10-25 04:18:11,924.924 INFO    ] 200
[2026-10-25 04:18:11,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:11,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:11,982.982 INFO    ] No update needed
[2026-10-25 04:18:11,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 04:18:12,021.021 INFO    ] 200
[2026-10-25 04:18:12,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:12,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:18:12,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:12,132.132 INFO    ] No camera update needed
[2026-10-25 04:18:12,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:18:12,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:18:12,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:18:12,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:18:14,187.187 INFO    ] ================================================
[2026-10-25 04:18:14,202.202 INFO    ] Launching Daemon at Sun Oct 25 04:18:14 IST 2026
[2026-10-25 04:18:14,213.213 INFO    ] ================================================
[2026-10-25 04:18:14,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:18:14
[2026-10-25 04:18:15,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:18:15,628.628 INFO    ] Initializing speech engine...
[2026-10-25 04:18:15,653.653 INFO    ] 2026-10-25 04:18:15
[2026-10-25 04:18:15,922.922 INFO    ] 2026-10-25 04:18:15
[2026-10-25 04:18:15,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:18:16,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:18:16,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:18:16,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:18:16,309.309 INFO    ] time= 25/10/2026 04:18:16
[2026-10-25 04:18:16,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:18:16,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:18:16,415.415 INFO    ] No existing commands found in stream
[2026-10-25 04:18:21,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:18:21,430.430 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 04:18:23,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:18:23,810.810 INFO    ] Checking for system updates...
[2026-10-25 04:18:23,846.846 INFO    ] 200
[2026-10-25 04:18:23,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:23,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:18:23,903.903 INFO    ] No update needed
[2026-10-25 04:18:23,906.906 INFO    ] Checking for camera pi updates...
[2026-10-25 04:18:23,942.942 INFO    ] 200
[2026-10-25 04:18:23,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:23,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:18:24,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:18:24,045.045 INFO    ] No camera update needed
[2026-10-25 04:18:24,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:18:24,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:18:24,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:18:24,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:18:26,102.102 INFO    ] ================================================
[2026-10-25 04:18:26,121.121 INFO    ] Launching Daemon at Sun Oct 25 04:18:26 IST 2026
[2026-10-25 04:18:26,132.132 INFO    ] ================================================
[2026-10-25 04:18:26,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:18:26
[2026-10-25 04:18:27,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:18:27,730.730 INFO    ] Initializing speech engine...
[2026-10-25 04:18:27,744.744 INFO    ] 2026-10-25 04:18:27
[2026-10-25 04:18:28,049.049 INFO    ] 2026-10-25 04:18:28
[2026-10-25 04:18:28,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:18:28,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:18:28,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:18:29,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:18:29,109.109 INFO    ] time= 25/10/2026 04:18:29
[2026-10-25 04:18:29,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:18:29,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:18:29,214.214 INFO    ] No existing commands found in stream
[2026-10-25 04:18:34,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:18:34,229.229 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 04:18:36,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:18:36,479.479 INFO    ] Checking for system updates...
[2026-10-25 04:18:36,517.517 INFO    ] 200
[2026-10-25 04:18:36,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:36,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:36,582.582 INFO    ] No update needed
[2026-10-25 04:18:36,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 04:18:36,621.621 INFO    ] 200
[2026-10-25 04:18:36,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:36,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:18:36,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:36,735.735 INFO    ] No camera update needed
[2026-10-25 04:18:36,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:18:36,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:18:36,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:18:36,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:18:38,792.792 INFO    ] ================================================
[2026-10-25 04:18:38,808.808 INFO    ] Launching Daemon at Sun Oct 25 04:18:38 IST 2026
[2026-10-25 04:18:38,819.819 INFO    ] ================================================
[2026-10-25 04:18:39,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:18:39
[2026-10-25 04:18:39,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:18:40,242.242 INFO    ] Initializing speech engine...
[2026-10-25 04:18:40,247.247 INFO    ] 2026-10-25 04:18:40
[2026-10-25 04:18:40,537.537 INFO    ] 2026-10-25 04:18:40
[2026-10-25 04:18:40,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:18:40,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:18:40,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:18:40,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:18:40,928.928 INFO    ] time= 25/10/2026 04:18:40
[2026-10-25 04:18:40,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:18:40,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:18:41,035.035 INFO    ] No existing commands found in stream
[2026-10-25 04:18:46,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:18:46,051.051 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 04:18:48,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:18:48,948.948 INFO    ] Checking for system updates...
[2026-10-25 04:18:48,987.987 INFO    ] 200
[2026-10-25 04:18:48,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:49,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:49,047.047 INFO    ] No update needed
[2026-10-25 04:18:49,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 04:18:49,083.083 INFO    ] 200
[2026-10-25 04:18:49,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:18:49,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:18:49,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:18:49,179.179 INFO    ] No camera update needed
[2026-10-25 04:18:49,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:18:49,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:18:49,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:18:49,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:18:51,235.235 INFO    ] ================================================
[2026-10-25 04:18:51,251.251 INFO    ] Launching Daemon at Sun Oct 25 04:18:51 IST 2026
[2026-10-25 04:18:51,261.261 INFO    ] ================================================
[2026-10-25 04:18:51,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:18:51
[2026-10-25 04:18:52,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:18:52,847.847 INFO    ] Initializing speech engine...
[2026-10-25 04:18:52,861.861 INFO    ] 2026-10-25 04:18:52
[2026-10-25 04:18:53,137.137 INFO    ] 2026-10-25 04:18:53
[2026-10-25 04:18:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:18:53,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:18:53,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:18:53,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:18:53,670.670 INFO    ] time= 25/10/2026 04:18:53
[2026-10-25 04:18:53,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:18:53,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:18:53,810.810 INFO    ] No existing commands found in stream
[2026-10-25 04:18:58,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:18:58,837.837 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 04:19:00,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:19:00,439.439 INFO    ] Checking for system updates...
[2026-10-25 04:19:00,476.476 INFO    ] 200
[2026-10-25 04:19:00,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:00,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:19:00,535.535 INFO    ] No update needed
[2026-10-25 04:19:00,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 04:19:00,572.572 INFO    ] 200
[2026-10-25 04:19:00,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:00,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:19:00,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:19:00,676.676 INFO    ] No camera update needed
[2026-10-25 04:19:00,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:19:00,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:19:00,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:19:00,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:19:02,753.753 INFO    ] ================================================
[2026-10-25 04:19:02,776.776 INFO    ] Launching Daemon at Sun Oct 25 04:19:02 IST 2026
[2026-10-25 04:19:02,788.788 INFO    ] ================================================
[2026-10-25 04:19:03,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:19:03
[2026-10-25 04:19:04,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:19:04,421.421 INFO    ] Initializing speech engine...
[2026-10-25 04:19:04,431.431 INFO    ] 2026-10-25 04:19:04
[2026-10-25 04:19:04,702.702 INFO    ] 2026-10-25 04:19:04
[2026-10-25 04:19:04,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:19:04,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:19:04,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:19:05,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:19:05,249.249 INFO    ] time= 25/10/2026 04:19:05
[2026-10-25 04:19:05,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:19:05,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:19:05,407.407 INFO    ] No existing commands found in stream
[2026-10-25 04:19:10,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:19:10,425.425 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 04:19:12,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:19:12,722.722 INFO    ] Checking for system updates...
[2026-10-25 04:19:12,759.759 INFO    ] 200
[2026-10-25 04:19:12,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:12,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:12,819.819 INFO    ] No update needed
[2026-10-25 04:19:12,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 04:19:12,856.856 INFO    ] 200
[2026-10-25 04:19:12,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:12,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:19:13,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:13,077.077 INFO    ] No camera update needed
[2026-10-25 04:19:13,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:19:13,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:19:13,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:19:13,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:19:15,137.137 INFO    ] ================================================
[2026-10-25 04:19:15,155.155 INFO    ] Launching Daemon at Sun Oct 25 04:19:15 IST 2026
[2026-10-25 04:19:15,166.166 INFO    ] ================================================
[2026-10-25 04:19:15,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:19:15
[2026-10-25 04:19:16,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:19:16,585.585 INFO    ] Initializing speech engine...
[2026-10-25 04:19:16,594.594 INFO    ] 2026-10-25 04:19:16
[2026-10-25 04:19:16,861.861 INFO    ] 2026-10-25 04:19:16
[2026-10-25 04:19:16,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:19:17,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:19:17,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:19:17,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:19:17,277.277 INFO    ] time= 25/10/2026 04:19:17
[2026-10-25 04:19:17,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:19:17,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:19:17,387.387 INFO    ] No existing commands found in stream
[2026-10-25 04:19:22,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:19:22,403.403 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 04:19:25,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:19:25,914.914 INFO    ] Checking for system updates...
[2026-10-25 04:19:25,954.954 INFO    ] 200
[2026-10-25 04:19:25,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:26,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:26,012.012 INFO    ] No update needed
[2026-10-25 04:19:26,014.014 INFO    ] Checking for camera pi updates...
[2026-10-25 04:19:26,047.047 INFO    ] 200
[2026-10-25 04:19:26,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:26,090.090 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:19:26,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:26,144.144 INFO    ] No camera update needed
[2026-10-25 04:19:26,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:19:26,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:19:26,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:19:26,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:19:28,199.199 INFO    ] ================================================
[2026-10-25 04:19:28,214.214 INFO    ] Launching Daemon at Sun Oct 25 04:19:28 IST 2026
[2026-10-25 04:19:28,224.224 INFO    ] ================================================
[2026-10-25 04:19:28,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:19:28
[2026-10-25 04:19:29,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:19:29,626.626 INFO    ] Initializing speech engine...
[2026-10-25 04:19:29,649.649 INFO    ] 2026-10-25 04:19:29
[2026-10-25 04:19:29,911.911 INFO    ] 2026-10-25 04:19:29
[2026-10-25 04:19:29,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:19:30,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:19:30,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:19:30,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:19:30,336.336 INFO    ] time= 25/10/2026 04:19:30
[2026-10-25 04:19:30,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:19:30,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:19:30,494.494 INFO    ] No existing commands found in stream
[2026-10-25 04:19:35,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:19:35,517.517 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 04:19:36,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:19:36,480.480 INFO    ] Checking for system updates...
[2026-10-25 04:19:36,516.516 INFO    ] 200
[2026-10-25 04:19:36,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:36,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:19:36,574.574 INFO    ] No update needed
[2026-10-25 04:19:36,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 04:19:36,610.610 INFO    ] 200
[2026-10-25 04:19:36,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:36,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:19:36,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:19:36,714.714 INFO    ] No camera update needed
[2026-10-25 04:19:36,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:19:36,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:19:36,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:19:36,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:19:38,769.769 INFO    ] ================================================
[2026-10-25 04:19:38,784.784 INFO    ] Launching Daemon at Sun Oct 25 04:19:38 IST 2026
[2026-10-25 04:19:38,794.794 INFO    ] ================================================
[2026-10-25 04:19:39,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:19:39
[2026-10-25 04:19:39,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:19:40,246.246 INFO    ] Initializing speech engine...
[2026-10-25 04:19:40,255.255 INFO    ] 2026-10-25 04:19:40
[2026-10-25 04:19:40,514.514 INFO    ] 2026-10-25 04:19:40
[2026-10-25 04:19:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:19:40,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:19:40,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:19:40,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:19:40,992.992 INFO    ] time= 25/10/2026 04:19:40
[2026-10-25 04:19:41,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:19:41,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:19:41,141.141 INFO    ] No existing commands found in stream
[2026-10-25 04:19:46,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:19:46,156.156 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 04:19:50,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:19:50,173.173 INFO    ] Checking for system updates...
[2026-10-25 04:19:50,209.209 INFO    ] 200
[2026-10-25 04:19:50,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:50,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:50,269.269 INFO    ] No update needed
[2026-10-25 04:19:50,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 04:19:50,322.322 INFO    ] 200
[2026-10-25 04:19:50,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:19:50,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:19:50,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:19:50,420.420 INFO    ] No camera update needed
[2026-10-25 04:19:50,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:19:50,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:19:50,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:19:50,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:19:52,476.476 INFO    ] ================================================
[2026-10-25 04:19:52,491.491 INFO    ] Launching Daemon at Sun Oct 25 04:19:52 IST 2026
[2026-10-25 04:19:52,502.502 INFO    ] ================================================
[2026-10-25 04:19:53,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:19:53
[2026-10-25 04:19:53,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:19:53,951.951 INFO    ] Initializing speech engine...
[2026-10-25 04:19:53,961.961 INFO    ] 2026-10-25 04:19:53
[2026-10-25 04:19:54,249.249 INFO    ] 2026-10-25 04:19:54
[2026-10-25 04:19:54,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:19:54,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:19:54,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:19:54,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:19:54,810.810 INFO    ] time= 25/10/2026 04:19:54
[2026-10-25 04:19:54,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:19:54,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:19:54,984.984 INFO    ] No existing commands found in stream
[2026-10-25 04:20:00,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:00,009.009 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 04:20:02,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:20:02,775.775 INFO    ] Checking for system updates...
[2026-10-25 04:20:02,833.833 INFO    ] 200
[2026-10-25 04:20:02,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:02,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:02,917.917 INFO    ] No update needed
[2026-10-25 04:20:02,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 04:20:02,966.966 INFO    ] 200
[2026-10-25 04:20:02,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:03,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:20:03,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:03,058.058 INFO    ] No camera update needed
[2026-10-25 04:20:03,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:20:03,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:20:03,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:20:03,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:20:05,118.118 INFO    ] ================================================
[2026-10-25 04:20:05,134.134 INFO    ] Launching Daemon at Sun Oct 25 04:20:05 IST 2026
[2026-10-25 04:20:05,146.146 INFO    ] ================================================
[2026-10-25 04:20:05,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:20:05
[2026-10-25 04:20:06,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:20:06,706.706 INFO    ] Initializing speech engine...
[2026-10-25 04:20:06,716.716 INFO    ] 2026-10-25 04:20:06
[2026-10-25 04:20:06,984.984 INFO    ] 2026-10-25 04:20:06
[2026-10-25 04:20:07,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:20:07,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:20:07,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:20:07,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:20:07,541.541 INFO    ] time= 25/10/2026 04:20:07
[2026-10-25 04:20:07,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:20:07,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:20:07,684.684 INFO    ] No existing commands found in stream
[2026-10-25 04:20:12,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:12,713.713 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 04:20:14,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:20:14,506.506 INFO    ] Checking for system updates...
[2026-10-25 04:20:14,543.543 INFO    ] 200
[2026-10-25 04:20:14,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:14,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:14,603.603 INFO    ] No update needed
[2026-10-25 04:20:14,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 04:20:14,639.639 INFO    ] 200
[2026-10-25 04:20:14,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:14,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:20:14,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:14,754.754 INFO    ] No camera update needed
[2026-10-25 04:20:14,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:20:14,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:20:14,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:20:14,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:20:16,813.813 INFO    ] ================================================
[2026-10-25 04:20:16,828.828 INFO    ] Launching Daemon at Sun Oct 25 04:20:16 IST 2026
[2026-10-25 04:20:16,838.838 INFO    ] ================================================
[2026-10-25 04:20:17,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:20:17
[2026-10-25 04:20:17,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:20:18,232.232 INFO    ] Initializing speech engine...
[2026-10-25 04:20:18,247.247 INFO    ] 2026-10-25 04:20:18
[2026-10-25 04:20:18,512.512 INFO    ] 2026-10-25 04:20:18
[2026-10-25 04:20:18,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:20:18,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:20:18,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:20:18,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:20:18,887.887 INFO    ] time= 25/10/2026 04:20:18
[2026-10-25 04:20:18,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:20:18,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:20:19,055.055 INFO    ] No existing commands found in stream
[2026-10-25 04:20:24,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:24,083.083 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 04:20:24,528.528 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:20:24,530.530 INFO    ] Checking for system updates...
[2026-10-25 04:20:24,567.567 INFO    ] 200
[2026-10-25 04:20:24,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:24,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:24,631.631 INFO    ] No update needed
[2026-10-25 04:20:24,634.634 INFO    ] Checking for camera pi updates...
[2026-10-25 04:20:24,667.667 INFO    ] 200
[2026-10-25 04:20:24,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:24,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:20:24,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:24,785.785 INFO    ] No camera update needed
[2026-10-25 04:20:24,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:20:24,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:20:24,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:20:24,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:20:26,841.841 INFO    ] ================================================
[2026-10-25 04:20:26,857.857 INFO    ] Launching Daemon at Sun Oct 25 04:20:26 IST 2026
[2026-10-25 04:20:26,868.868 INFO    ] ================================================
[2026-10-25 04:20:27,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:20:27
[2026-10-25 04:20:28,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:20:28,489.489 INFO    ] Initializing speech engine...
[2026-10-25 04:20:28,500.500 INFO    ] 2026-10-25 04:20:28
[2026-10-25 04:20:28,787.787 INFO    ] 2026-10-25 04:20:28
[2026-10-25 04:20:28,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:20:29,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:20:29,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:20:29,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:20:29,180.180 INFO    ] time= 25/10/2026 04:20:29
[2026-10-25 04:20:29,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:20:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:20:29,357.357 INFO    ] No existing commands found in stream
[2026-10-25 04:20:34,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:34,385.385 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 04:20:36,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:20:36,332.332 INFO    ] Checking for system updates...
[2026-10-25 04:20:36,372.372 INFO    ] 200
[2026-10-25 04:20:36,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:36,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:36,432.432 INFO    ] No update needed
[2026-10-25 04:20:36,434.434 INFO    ] Checking for camera pi updates...
[2026-10-25 04:20:36,469.469 INFO    ] 200
[2026-10-25 04:20:36,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:36,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:20:36,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:36,566.566 INFO    ] No camera update needed
[2026-10-25 04:20:36,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:20:36,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:20:36,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:20:36,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:20:38,625.625 INFO    ] ================================================
[2026-10-25 04:20:38,641.641 INFO    ] Launching Daemon at Sun Oct 25 04:20:38 IST 2026
[2026-10-25 04:20:38,660.660 INFO    ] ================================================
[2026-10-25 04:20:39,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:20:39
[2026-10-25 04:20:39,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:20:40,135.135 INFO    ] Initializing speech engine...
[2026-10-25 04:20:40,149.149 INFO    ] 2026-10-25 04:20:40
[2026-10-25 04:20:40,428.428 INFO    ] 2026-10-25 04:20:40
[2026-10-25 04:20:40,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:20:40,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:20:40,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:20:40,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:20:40,924.924 INFO    ] time= 25/10/2026 04:20:40
[2026-10-25 04:20:40,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:20:41,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:20:41,075.075 INFO    ] No existing commands found in stream
[2026-10-25 04:20:46,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:46,093.093 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 04:20:46,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:20:46,579.579 INFO    ] Checking for system updates...
[2026-10-25 04:20:46,616.616 INFO    ] 200
[2026-10-25 04:20:46,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:46,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:46,674.674 INFO    ] No update needed
[2026-10-25 04:20:46,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 04:20:46,714.714 INFO    ] 200
[2026-10-25 04:20:46,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:46,760.760 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:20:46,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:46,795.795 INFO    ] No camera update needed
[2026-10-25 04:20:46,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:20:46,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:20:46,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:20:46,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:20:48,850.850 INFO    ] ================================================
[2026-10-25 04:20:48,865.865 INFO    ] Launching Daemon at Sun Oct 25 04:20:48 IST 2026
[2026-10-25 04:20:48,875.875 INFO    ] ================================================
[2026-10-25 04:20:49,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:20:49
[2026-10-25 04:20:50,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:20:50,264.264 INFO    ] Initializing speech engine...
[2026-10-25 04:20:50,272.272 INFO    ] 2026-10-25 04:20:50
[2026-10-25 04:20:50,546.546 INFO    ] 2026-10-25 04:20:50
[2026-10-25 04:20:50,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:20:50,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:20:50,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:20:50,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:20:51,043.043 INFO    ] time= 25/10/2026 04:20:51
[2026-10-25 04:20:51,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:20:51,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:20:51,174.174 INFO    ] No existing commands found in stream
[2026-10-25 04:20:56,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:20:56,188.188 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 04:20:59,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:20:59,874.874 INFO    ] Checking for system updates...
[2026-10-25 04:20:59,909.909 INFO    ] 200
[2026-10-25 04:20:59,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:20:59,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:20:59,967.967 INFO    ] No update needed
[2026-10-25 04:20:59,969.969 INFO    ] Checking for camera pi updates...
[2026-10-25 04:21:00,005.005 INFO    ] 200
[2026-10-25 04:21:00,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:00,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:21:00,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:21:00,103.103 INFO    ] No camera update needed
[2026-10-25 04:21:00,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:21:00,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:21:00,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:21:00,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:21:02,191.191 INFO    ] ================================================
[2026-10-25 04:21:02,216.216 INFO    ] Launching Daemon at Sun Oct 25 04:21:02 IST 2026
[2026-10-25 04:21:02,236.236 INFO    ] ================================================
[2026-10-25 04:21:02,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:21:02
[2026-10-25 04:21:03,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:21:03,976.976 INFO    ] Initializing speech engine...
[2026-10-25 04:21:03,990.990 INFO    ] 2026-10-25 04:21:03
[2026-10-25 04:21:04,288.288 INFO    ] 2026-10-25 04:21:04
[2026-10-25 04:21:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:21:04,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:21:04,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:21:04,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:21:04,814.814 INFO    ] time= 25/10/2026 04:21:04
[2026-10-25 04:21:04,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:21:04,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:21:04,972.972 INFO    ] No existing commands found in stream
[2026-10-25 04:21:09,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:21:10,002.002 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 04:21:12,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:21:12,305.305 INFO    ] Checking for system updates...
[2026-10-25 04:21:12,343.343 INFO    ] 200
[2026-10-25 04:21:12,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:12,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:21:12,402.402 INFO    ] No update needed
[2026-10-25 04:21:12,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 04:21:12,444.444 INFO    ] 200
[2026-10-25 04:21:12,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:12,492.492 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:21:12,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:21:12,560.560 INFO    ] No camera update needed
[2026-10-25 04:21:12,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:21:12,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:21:12,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:21:12,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:21:14,619.619 INFO    ] ================================================
[2026-10-25 04:21:14,635.635 INFO    ] Launching Daemon at Sun Oct 25 04:21:14 IST 2026
[2026-10-25 04:21:14,646.646 INFO    ] ================================================
[2026-10-25 04:21:15,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:21:15
[2026-10-25 04:21:15,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:21:16,090.090 INFO    ] Initializing speech engine...
[2026-10-25 04:21:16,115.115 INFO    ] 2026-10-25 04:21:16
[2026-10-25 04:21:16,392.392 INFO    ] 2026-10-25 04:21:16
[2026-10-25 04:21:16,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:21:16,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:21:16,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:21:16,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:21:16,771.771 INFO    ] time= 25/10/2026 04:21:16
[2026-10-25 04:21:16,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:21:16,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:21:16,896.896 INFO    ] No existing commands found in stream
[2026-10-25 04:21:21,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:21:21,908.908 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 04:21:25,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:21:25,678.678 INFO    ] Checking for system updates...
[2026-10-25 04:21:25,721.721 INFO    ] 200
[2026-10-25 04:21:25,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:25,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:21:25,788.788 INFO    ] No update needed
[2026-10-25 04:21:25,790.790 INFO    ] Checking for camera pi updates...
[2026-10-25 04:21:25,828.828 INFO    ] 200
[2026-10-25 04:21:25,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:25,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:21:26,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:21:26,031.031 INFO    ] No camera update needed
[2026-10-25 04:21:26,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:21:26,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:21:26,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:21:26,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:21:28,088.088 INFO    ] ================================================
[2026-10-25 04:21:28,104.104 INFO    ] Launching Daemon at Sun Oct 25 04:21:28 IST 2026
[2026-10-25 04:21:28,115.115 INFO    ] ================================================
[2026-10-25 04:21:28,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:21:28
[2026-10-25 04:21:29,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:21:29,554.554 INFO    ] Initializing speech engine...
[2026-10-25 04:21:29,561.561 INFO    ] 2026-10-25 04:21:29
[2026-10-25 04:21:29,860.860 INFO    ] 2026-10-25 04:21:29
[2026-10-25 04:21:29,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:21:30,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:21:30,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:21:30,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:21:30,244.244 INFO    ] time= 25/10/2026 04:21:30
[2026-10-25 04:21:30,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:21:30,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:21:30,371.371 INFO    ] No existing commands found in stream
[2026-10-25 04:21:35,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:21:35,386.386 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 04:21:39,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:21:39,287.287 INFO    ] Checking for system updates...
[2026-10-25 04:21:39,323.323 INFO    ] 200
[2026-10-25 04:21:39,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:39,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:21:39,389.389 INFO    ] No update needed
[2026-10-25 04:21:39,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 04:21:39,426.426 INFO    ] 200
[2026-10-25 04:21:39,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:39,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:21:39,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:21:39,541.541 INFO    ] No camera update needed
[2026-10-25 04:21:39,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:21:39,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:21:39,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:21:39,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:21:41,599.599 INFO    ] ================================================
[2026-10-25 04:21:41,614.614 INFO    ] Launching Daemon at Sun Oct 25 04:21:41 IST 2026
[2026-10-25 04:21:41,625.625 INFO    ] ================================================
[2026-10-25 04:21:42,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:21:42
[2026-10-25 04:21:42,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:21:43,031.031 INFO    ] Initializing speech engine...
[2026-10-25 04:21:43,037.037 INFO    ] 2026-10-25 04:21:43
[2026-10-25 04:21:43,332.332 INFO    ] 2026-10-25 04:21:43
[2026-10-25 04:21:43,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:21:43,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:21:43,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:21:43,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:21:43,749.749 INFO    ] time= 25/10/2026 04:21:43
[2026-10-25 04:21:43,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:21:43,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:21:43,922.922 INFO    ] No existing commands found in stream
[2026-10-25 04:21:48,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:21:48,949.949 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 04:21:51,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:21:51,566.566 INFO    ] Checking for system updates...
[2026-10-25 04:21:51,602.602 INFO    ] 200
[2026-10-25 04:21:51,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:51,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:21:51,660.660 INFO    ] No update needed
[2026-10-25 04:21:51,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 04:21:51,696.696 INFO    ] 200
[2026-10-25 04:21:51,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:21:51,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:21:51,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:21:51,821.821 INFO    ] No camera update needed
[2026-10-25 04:21:51,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:21:51,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:21:51,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:21:51,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:21:53,876.876 INFO    ] ================================================
[2026-10-25 04:21:53,892.892 INFO    ] Launching Daemon at Sun Oct 25 04:21:53 IST 2026
[2026-10-25 04:21:53,904.904 INFO    ] ================================================
[2026-10-25 04:21:54,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:21:54
[2026-10-25 04:21:55,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:21:55,536.536 INFO    ] Initializing speech engine...
[2026-10-25 04:21:55,548.548 INFO    ] 2026-10-25 04:21:55
[2026-10-25 04:21:55,832.832 INFO    ] 2026-10-25 04:21:55
[2026-10-25 04:21:55,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:21:56,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:21:56,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:21:56,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:21:56,314.314 INFO    ] time= 25/10/2026 04:21:56
[2026-10-25 04:21:56,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:21:56,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:21:56,447.447 INFO    ] No existing commands found in stream
[2026-10-25 04:22:01,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:01,464.464 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 04:22:01,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:22:01,931.931 INFO    ] Checking for system updates...
[2026-10-25 04:22:01,975.975 INFO    ] 200
[2026-10-25 04:22:01,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:02,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:22:02,060.060 INFO    ] No update needed
[2026-10-25 04:22:02,064.064 INFO    ] Checking for camera pi updates...
[2026-10-25 04:22:02,104.104 INFO    ] 200
[2026-10-25 04:22:02,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:02,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:22:02,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:22:02,202.202 INFO    ] No camera update needed
[2026-10-25 04:22:02,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:22:02,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:22:02,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:22:02,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:22:04,267.267 INFO    ] ================================================
[2026-10-25 04:22:04,282.282 INFO    ] Launching Daemon at Sun Oct 25 04:22:04 IST 2026
[2026-10-25 04:22:04,294.294 INFO    ] ================================================
[2026-10-25 04:22:04,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:22:04
[2026-10-25 04:22:05,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:22:05,962.962 INFO    ] Initializing speech engine...
[2026-10-25 04:22:05,970.970 INFO    ] 2026-10-25 04:22:05
[2026-10-25 04:22:06,288.288 INFO    ] 2026-10-25 04:22:06
[2026-10-25 04:22:06,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:22:06,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:22:06,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:22:06,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:22:06,798.798 INFO    ] time= 25/10/2026 04:22:06
[2026-10-25 04:22:06,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:22:06,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:22:06,983.983 INFO    ] No existing commands found in stream
[2026-10-25 04:22:12,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:12,017.017 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 04:22:15,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:22:15,016.016 INFO    ] Checking for system updates...
[2026-10-25 04:22:15,055.055 INFO    ] 200
[2026-10-25 04:22:15,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:15,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:15,115.115 INFO    ] No update needed
[2026-10-25 04:22:15,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 04:22:15,151.151 INFO    ] 200
[2026-10-25 04:22:15,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:15,196.196 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:22:15,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:15,262.262 INFO    ] No camera update needed
[2026-10-25 04:22:15,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:22:15,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:22:15,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:22:15,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:22:17,319.319 INFO    ] ================================================
[2026-10-25 04:22:17,335.335 INFO    ] Launching Daemon at Sun Oct 25 04:22:17 IST 2026
[2026-10-25 04:22:17,346.346 INFO    ] ================================================
[2026-10-25 04:22:17,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:22:17
[2026-10-25 04:22:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:22:18,892.892 INFO    ] Initializing speech engine...
[2026-10-25 04:22:18,902.902 INFO    ] 2026-10-25 04:22:18
[2026-10-25 04:22:19,161.161 INFO    ] 2026-10-25 04:22:19
[2026-10-25 04:22:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:22:19,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:22:19,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:22:19,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:22:19,490.490 INFO    ] time= 25/10/2026 04:22:19
[2026-10-25 04:22:19,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:22:19,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:22:19,603.603 INFO    ] No existing commands found in stream
[2026-10-25 04:22:24,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:24,618.618 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 04:22:25,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:22:25,294.294 INFO    ] Checking for system updates...
[2026-10-25 04:22:25,330.330 INFO    ] 200
[2026-10-25 04:22:25,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:25,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:25,391.391 INFO    ] No update needed
[2026-10-25 04:22:25,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 04:22:25,428.428 INFO    ] 200
[2026-10-25 04:22:25,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:25,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:22:25,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:25,547.547 INFO    ] No camera update needed
[2026-10-25 04:22:25,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:22:25,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:22:25,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:22:25,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:22:27,604.604 INFO    ] ================================================
[2026-10-25 04:22:27,620.620 INFO    ] Launching Daemon at Sun Oct 25 04:22:27 IST 2026
[2026-10-25 04:22:27,631.631 INFO    ] ================================================
[2026-10-25 04:22:28,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:22:28
[2026-10-25 04:22:28,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:22:29,084.084 INFO    ] Initializing speech engine...
[2026-10-25 04:22:29,087.087 INFO    ] 2026-10-25 04:22:29
[2026-10-25 04:22:29,340.340 INFO    ] 2026-10-25 04:22:29
[2026-10-25 04:22:29,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:22:29,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:22:29,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:22:29,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:22:29,718.718 INFO    ] time= 25/10/2026 04:22:29
[2026-10-25 04:22:29,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:22:29,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:22:29,893.893 INFO    ] No existing commands found in stream
[2026-10-25 04:22:34,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:34,916.916 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 04:22:37,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:22:37,669.669 INFO    ] Checking for system updates...
[2026-10-25 04:22:37,705.705 INFO    ] 200
[2026-10-25 04:22:37,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:37,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:37,762.762 INFO    ] No update needed
[2026-10-25 04:22:37,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 04:22:37,804.804 INFO    ] 200
[2026-10-25 04:22:37,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:37,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:22:37,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:37,886.886 INFO    ] No camera update needed
[2026-10-25 04:22:37,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:22:37,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:22:37,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:22:37,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:22:39,941.941 INFO    ] ================================================
[2026-10-25 04:22:39,957.957 INFO    ] Launching Daemon at Sun Oct 25 04:22:39 IST 2026
[2026-10-25 04:22:39,968.968 INFO    ] ================================================
[2026-10-25 04:22:40,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:22:40
[2026-10-25 04:22:41,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:22:41,600.600 INFO    ] Initializing speech engine...
[2026-10-25 04:22:41,611.611 INFO    ] 2026-10-25 04:22:41
[2026-10-25 04:22:41,889.889 INFO    ] 2026-10-25 04:22:41
[2026-10-25 04:22:41,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:22:42,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:22:42,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:22:42,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:22:42,385.385 INFO    ] time= 25/10/2026 04:22:42
[2026-10-25 04:22:42,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:22:42,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:22:42,581.581 INFO    ] No existing commands found in stream
[2026-10-25 04:22:47,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:47,596.596 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 04:22:49,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:22:49,597.597 INFO    ] Checking for system updates...
[2026-10-25 04:22:49,634.634 INFO    ] 200
[2026-10-25 04:22:49,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:49,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:49,691.691 INFO    ] No update needed
[2026-10-25 04:22:49,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 04:22:49,727.727 INFO    ] 200
[2026-10-25 04:22:49,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:22:49,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:22:49,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:22:49,823.823 INFO    ] No camera update needed
[2026-10-25 04:22:49,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:22:49,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:22:49,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:22:49,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:22:51,879.879 INFO    ] ================================================
[2026-10-25 04:22:51,895.895 INFO    ] Launching Daemon at Sun Oct 25 04:22:51 IST 2026
[2026-10-25 04:22:51,906.906 INFO    ] ================================================
[2026-10-25 04:22:52,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:22:52
[2026-10-25 04:22:53,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:22:53,366.366 INFO    ] Initializing speech engine...
[2026-10-25 04:22:53,372.372 INFO    ] 2026-10-25 04:22:53
[2026-10-25 04:22:53,632.632 INFO    ] 2026-10-25 04:22:53
[2026-10-25 04:22:53,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:22:53,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:22:53,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:22:54,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:22:54,107.107 INFO    ] time= 25/10/2026 04:22:54
[2026-10-25 04:22:54,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:22:54,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:22:54,239.239 INFO    ] No existing commands found in stream
[2026-10-25 04:22:59,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:22:59,254.254 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 04:22:59,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:22:59,904.904 INFO    ] Checking for system updates...
[2026-10-25 04:22:59,944.944 INFO    ] 200
[2026-10-25 04:22:59,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:00,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:00,003.003 INFO    ] No update needed
[2026-10-25 04:23:00,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:00,039.039 INFO    ] 200
[2026-10-25 04:23:00,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:00,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:00,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:00,129.129 INFO    ] No camera update needed
[2026-10-25 04:23:00,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:00,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:00,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:02,204.204 INFO    ] ================================================
[2026-10-25 04:23:02,223.223 INFO    ] Launching Daemon at Sun Oct 25 04:23:02 IST 2026
[2026-10-25 04:23:02,238.238 INFO    ] ================================================
[2026-10-25 04:23:02,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:02
[2026-10-25 04:23:03,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:23:03,846.846 INFO    ] Initializing speech engine...
[2026-10-25 04:23:03,856.856 INFO    ] 2026-10-25 04:23:03
[2026-10-25 04:23:04,103.103 INFO    ] 2026-10-25 04:23:04
[2026-10-25 04:23:04,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:23:04,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:23:04,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:23:04,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:23:04,444.444 INFO    ] time= 25/10/2026 04:23:04
[2026-10-25 04:23:04,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:23:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:23:04,554.554 INFO    ] No existing commands found in stream
[2026-10-25 04:23:09,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:23:09,569.569 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 04:23:12,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:23:12,125.125 INFO    ] Checking for system updates...
[2026-10-25 04:23:12,162.162 INFO    ] 200
[2026-10-25 04:23:12,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:12,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:12,225.225 INFO    ] No update needed
[2026-10-25 04:23:12,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:12,262.262 INFO    ] 200
[2026-10-25 04:23:12,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:12,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:12,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:12,369.369 INFO    ] No camera update needed
[2026-10-25 04:23:12,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:12,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:12,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:12,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:14,427.427 INFO    ] ================================================
[2026-10-25 04:23:14,443.443 INFO    ] Launching Daemon at Sun Oct 25 04:23:14 IST 2026
[2026-10-25 04:23:14,454.454 INFO    ] ================================================
[2026-10-25 04:23:15,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:15
[2026-10-25 04:23:15,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:23:15,864.864 INFO    ] Initializing speech engine...
[2026-10-25 04:23:15,886.886 INFO    ] 2026-10-25 04:23:15
[2026-10-25 04:23:16,139.139 INFO    ] 2026-10-25 04:23:16
[2026-10-25 04:23:16,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:23:16,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:23:16,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:23:16,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:23:16,615.615 INFO    ] time= 25/10/2026 04:23:16
[2026-10-25 04:23:16,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:23:16,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:23:16,764.764 INFO    ] No existing commands found in stream
[2026-10-25 04:23:21,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:23:21,779.779 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 04:23:22,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:23:22,615.615 INFO    ] Checking for system updates...
[2026-10-25 04:23:22,651.651 INFO    ] 200
[2026-10-25 04:23:22,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:22,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:22,709.709 INFO    ] No update needed
[2026-10-25 04:23:22,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:22,745.745 INFO    ] 200
[2026-10-25 04:23:22,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:22,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:22,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:22,861.861 INFO    ] No camera update needed
[2026-10-25 04:23:22,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:22,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:22,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:22,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:24,918.918 INFO    ] ================================================
[2026-10-25 04:23:24,934.934 INFO    ] Launching Daemon at Sun Oct 25 04:23:24 IST 2026
[2026-10-25 04:23:24,945.945 INFO    ] ================================================
[2026-10-25 04:23:25,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:25
[2026-10-25 04:23:26,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:23:26,342.342 INFO    ] Initializing speech engine...
[2026-10-25 04:23:26,372.372 INFO    ] 2026-10-25 04:23:26
[2026-10-25 04:23:26,619.619 INFO    ] 2026-10-25 04:23:26
[2026-10-25 04:23:26,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:23:26,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:23:26,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:23:27,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:23:27,094.094 INFO    ] time= 25/10/2026 04:23:27
[2026-10-25 04:23:27,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:23:27,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:23:27,234.234 INFO    ] No existing commands found in stream
[2026-10-25 04:23:32,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:23:32,250.250 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 04:23:34,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:23:34,943.943 INFO    ] Checking for system updates...
[2026-10-25 04:23:34,979.979 INFO    ] 200
[2026-10-25 04:23:34,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:35,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:35,037.037 INFO    ] No update needed
[2026-10-25 04:23:35,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:35,073.073 INFO    ] 200
[2026-10-25 04:23:35,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:35,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:35,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:35,181.181 INFO    ] No camera update needed
[2026-10-25 04:23:35,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:35,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:35,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:35,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:37,237.237 INFO    ] ================================================
[2026-10-25 04:23:37,253.253 INFO    ] Launching Daemon at Sun Oct 25 04:23:37 IST 2026
[2026-10-25 04:23:37,264.264 INFO    ] ================================================
[2026-10-25 04:23:37,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:37
[2026-10-25 04:23:38,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:23:38,719.719 INFO    ] Initializing speech engine...
[2026-10-25 04:23:38,729.729 INFO    ] 2026-10-25 04:23:38
[2026-10-25 04:23:38,979.979 INFO    ] 2026-10-25 04:23:38
[2026-10-25 04:23:39,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:23:39,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:23:39,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:23:39,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:23:39,462.462 INFO    ] time= 25/10/2026 04:23:39
[2026-10-25 04:23:39,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:23:39,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:23:39,603.603 INFO    ] No existing commands found in stream
[2026-10-25 04:23:44,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:23:44,631.631 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 04:23:46,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:23:46,389.389 INFO    ] Checking for system updates...
[2026-10-25 04:23:46,424.424 INFO    ] 200
[2026-10-25 04:23:46,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:46,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:46,508.508 INFO    ] No update needed
[2026-10-25 04:23:46,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:46,546.546 INFO    ] 200
[2026-10-25 04:23:46,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:46,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:46,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:23:46,644.644 INFO    ] No camera update needed
[2026-10-25 04:23:46,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:46,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:46,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:46,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:48,702.702 INFO    ] ================================================
[2026-10-25 04:23:48,717.717 INFO    ] Launching Daemon at Sun Oct 25 04:23:48 IST 2026
[2026-10-25 04:23:48,729.729 INFO    ] ================================================
[2026-10-25 04:23:49,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:49
[2026-10-25 04:23:49,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:23:50,183.183 INFO    ] Initializing speech engine...
[2026-10-25 04:23:50,193.193 INFO    ] 2026-10-25 04:23:50
[2026-10-25 04:23:50,440.440 INFO    ] 2026-10-25 04:23:50
[2026-10-25 04:23:50,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:23:50,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:23:50,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:23:50,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:23:50,900.900 INFO    ] time= 25/10/2026 04:23:50
[2026-10-25 04:23:50,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:23:51,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:23:51,051.051 INFO    ] No existing commands found in stream
[2026-10-25 04:23:56,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:23:56,066.066 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 04:23:56,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:23:56,823.823 INFO    ] Checking for system updates...
[2026-10-25 04:23:56,861.861 INFO    ] 200
[2026-10-25 04:23:56,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:56,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:56,921.921 INFO    ] No update needed
[2026-10-25 04:23:56,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 04:23:56,958.958 INFO    ] 200
[2026-10-25 04:23:56,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:23:57,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:23:57,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:23:57,060.060 INFO    ] No camera update needed
[2026-10-25 04:23:57,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:23:57,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:23:57,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:23:57,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:23:59,118.118 INFO    ] ================================================
[2026-10-25 04:23:59,133.133 INFO    ] Launching Daemon at Sun Oct 25 04:23:59 IST 2026
[2026-10-25 04:23:59,145.145 INFO    ] ================================================
[2026-10-25 04:23:59,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:23:59
[2026-10-25 04:24:00,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:00,743.743 INFO    ] Initializing speech engine...
[2026-10-25 04:24:00,752.752 INFO    ] 2026-10-25 04:24:00
[2026-10-25 04:24:01,025.025 INFO    ] 2026-10-25 04:24:01
[2026-10-25 04:24:01,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:24:01,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:24:01,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:24:01,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:24:01,425.425 INFO    ] time= 25/10/2026 04:24:01
[2026-10-25 04:24:01,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:24:01,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:24:01,505.505 INFO    ] No existing commands found in stream
[2026-10-25 04:24:06,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:24:06,518.518 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 04:24:09,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:24:09,939.939 INFO    ] Checking for system updates...
[2026-10-25 04:24:09,979.979 INFO    ] 200
[2026-10-25 04:24:09,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:10,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:10,038.038 INFO    ] No update needed
[2026-10-25 04:24:10,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 04:24:10,075.075 INFO    ] 200
[2026-10-25 04:24:10,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:10,123.123 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:24:10,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:10,173.173 INFO    ] No camera update needed
[2026-10-25 04:24:10,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:24:10,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:24:10,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:24:10,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:24:12,230.230 INFO    ] ================================================
[2026-10-25 04:24:12,245.245 INFO    ] Launching Daemon at Sun Oct 25 04:24:12 IST 2026
[2026-10-25 04:24:12,257.257 INFO    ] ================================================
[2026-10-25 04:24:12,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:24:12
[2026-10-25 04:24:13,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:13,704.704 INFO    ] Initializing speech engine...
[2026-10-25 04:24:13,729.729 INFO    ] 2026-10-25 04:24:13
[2026-10-25 04:24:14,006.006 INFO    ] 2026-10-25 04:24:13
[2026-10-25 04:24:14,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:24:14,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:24:14,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:24:14,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:24:14,383.383 INFO    ] time= 25/10/2026 04:24:14
[2026-10-25 04:24:14,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:24:14,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:24:14,507.507 INFO    ] No existing commands found in stream
[2026-10-25 04:24:19,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:24:19,523.523 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 04:24:20,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:24:20,298.298 INFO    ] Checking for system updates...
[2026-10-25 04:24:20,334.334 INFO    ] 200
[2026-10-25 04:24:20,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:20,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:20,399.399 INFO    ] No update needed
[2026-10-25 04:24:20,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 04:24:20,435.435 INFO    ] 200
[2026-10-25 04:24:20,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:20,483.483 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:24:20,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:20,533.533 INFO    ] No camera update needed
[2026-10-25 04:24:20,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:24:20,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:24:20,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:24:20,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:24:22,591.591 INFO    ] ================================================
[2026-10-25 04:24:22,606.606 INFO    ] Launching Daemon at Sun Oct 25 04:24:22 IST 2026
[2026-10-25 04:24:22,618.618 INFO    ] ================================================
[2026-10-25 04:24:23,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:24:23
[2026-10-25 04:24:23,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:24,062.062 INFO    ] Initializing speech engine...
[2026-10-25 04:24:24,070.070 INFO    ] 2026-10-25 04:24:24
[2026-10-25 04:24:24,365.365 INFO    ] 2026-10-25 04:24:24
[2026-10-25 04:24:24,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:24:24,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:24:24,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:24:24,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:24:24,784.784 INFO    ] time= 25/10/2026 04:24:24
[2026-10-25 04:24:24,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:24:24,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:24:24,871.871 INFO    ] No existing commands found in stream
[2026-10-25 04:24:29,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:24:29,909.909 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 04:24:31,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:24:31,474.474 INFO    ] Checking for system updates...
[2026-10-25 04:24:31,515.515 INFO    ] 200
[2026-10-25 04:24:31,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:31,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:24:31,577.577 INFO    ] No update needed
[2026-10-25 04:24:31,580.580 INFO    ] Checking for camera pi updates...
[2026-10-25 04:24:31,621.621 INFO    ] 200
[2026-10-25 04:24:31,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:31,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:24:31,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:24:31,730.730 INFO    ] No camera update needed
[2026-10-25 04:24:31,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:24:31,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:24:31,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:24:31,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:24:33,792.792 INFO    ] ================================================
[2026-10-25 04:24:33,808.808 INFO    ] Launching Daemon at Sun Oct 25 04:24:33 IST 2026
[2026-10-25 04:24:33,819.819 INFO    ] ================================================
[2026-10-25 04:24:34,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:24:34
[2026-10-25 04:24:35,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:35,357.357 INFO    ] Initializing speech engine...
[2026-10-25 04:24:35,368.368 INFO    ] 2026-10-25 04:24:35
[2026-10-25 04:24:35,676.676 INFO    ] 2026-10-25 04:24:35
[2026-10-25 04:24:35,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:24:35,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:24:35,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:24:36,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:24:36,185.185 INFO    ] time= 25/10/2026 04:24:36
[2026-10-25 04:24:36,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:24:36,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:24:36,323.323 INFO    ] No existing commands found in stream
[2026-10-25 04:24:41,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:24:41,351.351 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 04:24:45,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:24:45,296.296 INFO    ] Checking for system updates...
[2026-10-25 04:24:45,333.333 INFO    ] 200
[2026-10-25 04:24:45,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:45,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:45,393.393 INFO    ] No update needed
[2026-10-25 04:24:45,396.396 INFO    ] Checking for camera pi updates...
[2026-10-25 04:24:45,436.436 INFO    ] 200
[2026-10-25 04:24:45,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:45,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:24:45,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:45,554.554 INFO    ] No camera update needed
[2026-10-25 04:24:45,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:24:45,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:24:45,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:24:45,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:24:47,613.613 INFO    ] ================================================
[2026-10-25 04:24:47,628.628 INFO    ] Launching Daemon at Sun Oct 25 04:24:47 IST 2026
[2026-10-25 04:24:47,639.639 INFO    ] ================================================
[2026-10-25 04:24:48,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:24:48
[2026-10-25 04:24:48,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:49,258.258 INFO    ] Initializing speech engine...
[2026-10-25 04:24:49,270.270 INFO    ] 2026-10-25 04:24:49
[2026-10-25 04:24:49,580.580 INFO    ] 2026-10-25 04:24:49
[2026-10-25 04:24:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:24:49,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:24:49,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:24:50,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:24:50,082.082 INFO    ] time= 25/10/2026 04:24:50
[2026-10-25 04:24:50,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:24:50,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:24:50,238.238 INFO    ] No existing commands found in stream
[2026-10-25 04:24:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:24:55,271.271 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 04:24:56,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:24:56,096.096 INFO    ] Checking for system updates...
[2026-10-25 04:24:56,137.137 INFO    ] 200
[2026-10-25 04:24:56,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:56,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:56,196.196 INFO    ] No update needed
[2026-10-25 04:24:56,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 04:24:56,238.238 INFO    ] 200
[2026-10-25 04:24:56,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:24:56,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:24:56,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:24:56,343.343 INFO    ] No camera update needed
[2026-10-25 04:24:56,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:24:56,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:24:56,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:24:56,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:24:58,402.402 INFO    ] ================================================
[2026-10-25 04:24:58,417.417 INFO    ] Launching Daemon at Sun Oct 25 04:24:58 IST 2026
[2026-10-25 04:24:58,428.428 INFO    ] ================================================
[2026-10-25 04:24:59,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:24:59
[2026-10-25 04:24:59,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:24:59,881.881 INFO    ] Initializing speech engine...
[2026-10-25 04:24:59,890.890 INFO    ] 2026-10-25 04:24:59
[2026-10-25 04:25:00,137.137 INFO    ] 2026-10-25 04:25:00
[2026-10-25 04:25:00,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:25:00,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:25:00,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:25:00,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:25:00,606.606 INFO    ] time= 25/10/2026 04:25:00
[2026-10-25 04:25:00,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:25:00,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:25:00,752.752 INFO    ] No existing commands found in stream
[2026-10-25 04:25:05,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:25:05,768.768 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 04:25:11,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:25:11,003.003 INFO    ] Checking for system updates...
[2026-10-25 04:25:11,039.039 INFO    ] 200
[2026-10-25 04:25:11,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:11,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:25:11,105.105 INFO    ] No update needed
[2026-10-25 04:25:11,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 04:25:11,141.141 INFO    ] 200
[2026-10-25 04:25:11,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:11,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:25:11,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:25:11,255.255 INFO    ] No camera update needed
[2026-10-25 04:25:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:25:11,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:25:11,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:25:11,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:25:13,313.313 INFO    ] ================================================
[2026-10-25 04:25:13,329.329 INFO    ] Launching Daemon at Sun Oct 25 04:25:13 IST 2026
[2026-10-25 04:25:13,339.339 INFO    ] ================================================
[2026-10-25 04:25:13,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:25:13
[2026-10-25 04:25:14,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:25:14,898.898 INFO    ] Initializing speech engine...
[2026-10-25 04:25:14,913.913 INFO    ] 2026-10-25 04:25:14
[2026-10-25 04:25:15,181.181 INFO    ] 2026-10-25 04:25:15
[2026-10-25 04:25:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:25:15,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:25:15,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:25:15,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:25:15,655.655 INFO    ] time= 25/10/2026 04:25:15
[2026-10-25 04:25:15,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:25:15,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:25:15,814.814 INFO    ] No existing commands found in stream
[2026-10-25 04:25:20,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:25:20,829.829 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 04:25:24,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:25:24,410.410 INFO    ] Checking for system updates...
[2026-10-25 04:25:24,447.447 INFO    ] 200
[2026-10-25 04:25:24,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:24,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:25:24,506.506 INFO    ] No update needed
[2026-10-25 04:25:24,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 04:25:24,542.542 INFO    ] 200
[2026-10-25 04:25:24,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:24,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:25:24,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:25:24,639.639 INFO    ] No camera update needed
[2026-10-25 04:25:24,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:25:24,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:25:24,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:25:24,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:25:26,694.694 INFO    ] ================================================
[2026-10-25 04:25:26,710.710 INFO    ] Launching Daemon at Sun Oct 25 04:25:26 IST 2026
[2026-10-25 04:25:26,721.721 INFO    ] ================================================
[2026-10-25 04:25:27,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:25:27
[2026-10-25 04:25:27,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:25:28,168.168 INFO    ] Initializing speech engine...
[2026-10-25 04:25:28,175.175 INFO    ] 2026-10-25 04:25:28
[2026-10-25 04:25:28,424.424 INFO    ] 2026-10-25 04:25:28
[2026-10-25 04:25:28,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:25:29,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:25:29,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:25:29,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:25:29,258.258 INFO    ] time= 25/10/2026 04:25:29
[2026-10-25 04:25:29,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:25:29,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:25:29,433.433 INFO    ] No existing commands found in stream
[2026-10-25 04:25:34,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:25:34,456.456 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 04:25:37,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:25:37,223.223 INFO    ] Checking for system updates...
[2026-10-25 04:25:37,259.259 INFO    ] 200
[2026-10-25 04:25:37,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:37,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:25:37,319.319 INFO    ] No update needed
[2026-10-25 04:25:37,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 04:25:37,356.356 INFO    ] 200
[2026-10-25 04:25:37,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:37,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:25:38,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:25:38,562.562 INFO    ] No camera update needed
[2026-10-25 04:25:38,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:25:38,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:25:38,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:25:38,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:25:40,620.620 INFO    ] ================================================
[2026-10-25 04:25:40,635.635 INFO    ] Launching Daemon at Sun Oct 25 04:25:40 IST 2026
[2026-10-25 04:25:40,646.646 INFO    ] ================================================
[2026-10-25 04:25:41,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:25:41
[2026-10-25 04:25:41,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:25:42,101.101 INFO    ] Initializing speech engine...
[2026-10-25 04:25:42,114.114 INFO    ] 2026-10-25 04:25:42
[2026-10-25 04:25:42,376.376 INFO    ] 2026-10-25 04:25:42
[2026-10-25 04:25:42,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:25:42,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:25:42,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:25:42,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:25:42,797.797 INFO    ] time= 25/10/2026 04:25:42
[2026-10-25 04:25:42,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:25:42,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:25:42,954.954 INFO    ] No existing commands found in stream
[2026-10-25 04:25:47,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:25:47,970.970 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 04:25:48,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:25:48,711.711 INFO    ] Checking for system updates...
[2026-10-25 04:25:48,746.746 INFO    ] 200
[2026-10-25 04:25:48,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:48,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:25:48,810.810 INFO    ] No update needed
[2026-10-25 04:25:48,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 04:25:48,851.851 INFO    ] 200
[2026-10-25 04:25:48,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:25:48,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:25:48,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:25:48,952.952 INFO    ] No camera update needed
[2026-10-25 04:25:48,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:25:48,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:25:48,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:25:48,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:25:51,008.008 INFO    ] ================================================
[2026-10-25 04:25:51,023.023 INFO    ] Launching Daemon at Sun Oct 25 04:25:51 IST 2026
[2026-10-25 04:25:51,034.034 INFO    ] ================================================
[2026-10-25 04:25:51,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:25:51
[2026-10-25 04:25:52,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:25:52,432.432 INFO    ] Initializing speech engine...
[2026-10-25 04:25:52,455.455 INFO    ] 2026-10-25 04:25:52
[2026-10-25 04:25:52,709.709 INFO    ] 2026-10-25 04:25:52
[2026-10-25 04:25:52,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:25:52,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:25:52,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:25:53,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:25:53,085.085 INFO    ] time= 25/10/2026 04:25:53
[2026-10-25 04:25:53,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:25:53,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:25:53,254.254 INFO    ] No existing commands found in stream
[2026-10-25 04:25:58,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:25:58,287.287 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 04:26:01,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:26:01,263.263 INFO    ] Checking for system updates...
[2026-10-25 04:26:01,299.299 INFO    ] 200
[2026-10-25 04:26:01,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:01,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:01,357.357 INFO    ] No update needed
[2026-10-25 04:26:01,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:01,393.393 INFO    ] 200
[2026-10-25 04:26:01,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:01,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:01,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:01,486.486 INFO    ] No camera update needed
[2026-10-25 04:26:01,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:01,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:01,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:01,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:26:03,554.554 INFO    ] ================================================
[2026-10-25 04:26:03,570.570 INFO    ] Launching Daemon at Sun Oct 25 04:26:03 IST 2026
[2026-10-25 04:26:03,581.581 INFO    ] ================================================
[2026-10-25 04:26:04,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:26:04
[2026-10-25 04:26:04,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:26:05,226.226 INFO    ] Initializing speech engine...
[2026-10-25 04:26:05,235.235 INFO    ] 2026-10-25 04:26:05
[2026-10-25 04:26:05,529.529 INFO    ] 2026-10-25 04:26:05
[2026-10-25 04:26:05,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:26:05,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:26:05,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:26:06,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:26:06,057.057 INFO    ] time= 25/10/2026 04:26:06
[2026-10-25 04:26:06,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:26:06,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:26:06,213.213 INFO    ] No existing commands found in stream
[2026-10-25 04:26:11,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:26:11,251.251 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 04:26:13,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:26:13,089.089 INFO    ] Checking for system updates...
[2026-10-25 04:26:13,126.126 INFO    ] 200
[2026-10-25 04:26:13,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:13,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:13,192.192 INFO    ] No update needed
[2026-10-25 04:26:13,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:13,233.233 INFO    ] 200
[2026-10-25 04:26:13,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:13,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:13,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:13,344.344 INFO    ] No camera update needed
[2026-10-25 04:26:13,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:13,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:13,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:13,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:26:15,400.400 INFO    ] ================================================
[2026-10-25 04:26:15,415.415 INFO    ] Launching Daemon at Sun Oct 25 04:26:15 IST 2026
[2026-10-25 04:26:15,426.426 INFO    ] ================================================
[2026-10-25 04:26:15,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:26:15
[2026-10-25 04:26:16,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:26:16,828.828 INFO    ] Initializing speech engine...
[2026-10-25 04:26:16,837.837 INFO    ] 2026-10-25 04:26:16
[2026-10-25 04:26:17,134.134 INFO    ] 2026-10-25 04:26:17
[2026-10-25 04:26:17,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:26:17,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:26:17,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:26:17,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:26:17,519.519 INFO    ] time= 25/10/2026 04:26:17
[2026-10-25 04:26:17,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:26:17,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:26:17,644.644 INFO    ] No existing commands found in stream
[2026-10-25 04:26:22,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:26:22,658.658 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 04:26:25,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:26:25,692.692 INFO    ] Checking for system updates...
[2026-10-25 04:26:25,729.729 INFO    ] 200
[2026-10-25 04:26:25,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:25,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:25,795.795 INFO    ] No update needed
[2026-10-25 04:26:25,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:25,831.831 INFO    ] 200
[2026-10-25 04:26:25,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:25,873.873 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:25,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:25,940.940 INFO    ] No camera update needed
[2026-10-25 04:26:25,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:25,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:25,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:25,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:26:28,996.996 INFO    ] ================================================
[2026-10-25 04:26:28,011.011 INFO    ] Launching Daemon at Sun Oct 25 04:26:28 IST 2026
[2026-10-25 04:26:28,022.022 INFO    ] ================================================
[2026-10-25 04:26:28,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:26:28
[2026-10-25 04:26:29,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:26:29,655.655 INFO    ] Initializing speech engine...
[2026-10-25 04:26:29,668.668 INFO    ] 2026-10-25 04:26:29
[2026-10-25 04:26:29,954.954 INFO    ] 2026-10-25 04:26:29
[2026-10-25 04:26:30,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:26:30,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:26:30,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:26:30,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:26:30,485.485 INFO    ] time= 25/10/2026 04:26:30
[2026-10-25 04:26:30,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:26:30,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:26:30,641.641 INFO    ] No existing commands found in stream
[2026-10-25 04:26:35,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:26:35,656.656 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 04:26:36,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:26:36,680.680 INFO    ] Checking for system updates...
[2026-10-25 04:26:36,718.718 INFO    ] 200
[2026-10-25 04:26:36,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:36,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:36,779.779 INFO    ] No update needed
[2026-10-25 04:26:36,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:36,816.816 INFO    ] 200
[2026-10-25 04:26:36,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:36,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:37,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:37,137.137 INFO    ] No camera update needed
[2026-10-25 04:26:37,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:37,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:37,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:37,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:26:39,197.197 INFO    ] ================================================
[2026-10-25 04:26:39,213.213 INFO    ] Launching Daemon at Sun Oct 25 04:26:39 IST 2026
[2026-10-25 04:26:39,224.224 INFO    ] ================================================
[2026-10-25 04:26:39,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:26:39
[2026-10-25 04:26:40,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:26:40,655.655 INFO    ] Initializing speech engine...
[2026-10-25 04:26:40,670.670 INFO    ] 2026-10-25 04:26:40
[2026-10-25 04:26:40,925.925 INFO    ] 2026-10-25 04:26:40
[2026-10-25 04:26:40,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:26:41,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:26:41,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:26:41,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:26:41,420.420 INFO    ] time= 25/10/2026 04:26:41
[2026-10-25 04:26:41,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:26:41,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:26:41,541.541 INFO    ] No existing commands found in stream
[2026-10-25 04:26:46,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:26:46,555.555 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 04:26:47,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:26:47,721.721 INFO    ] Checking for system updates...
[2026-10-25 04:26:47,762.762 INFO    ] 200
[2026-10-25 04:26:47,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:47,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:47,821.821 INFO    ] No update needed
[2026-10-25 04:26:47,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:47,861.861 INFO    ] 200
[2026-10-25 04:26:47,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:47,909.909 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:47,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:26:47,960.960 INFO    ] No camera update needed
[2026-10-25 04:26:47,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:47,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:47,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:47,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:26:50,017.017 INFO    ] ================================================
[2026-10-25 04:26:50,032.032 INFO    ] Launching Daemon at Sun Oct 25 04:26:50 IST 2026
[2026-10-25 04:26:50,043.043 INFO    ] ================================================
[2026-10-25 04:26:50,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:26:50
[2026-10-25 04:26:51,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:26:51,703.703 INFO    ] Initializing speech engine...
[2026-10-25 04:26:51,712.712 INFO    ] 2026-10-25 04:26:51
[2026-10-25 04:26:51,993.993 INFO    ] 2026-10-25 04:26:51
[2026-10-25 04:26:52,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:26:52,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:26:52,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:26:52,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:26:52,527.527 INFO    ] time= 25/10/2026 04:26:52
[2026-10-25 04:26:52,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:26:52,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:26:52,659.659 INFO    ] No existing commands found in stream
[2026-10-25 04:26:57,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:26:57,686.686 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 04:26:59,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:26:59,353.353 INFO    ] Checking for system updates...
[2026-10-25 04:26:59,393.393 INFO    ] 200
[2026-10-25 04:26:59,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:59,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:59,450.450 INFO    ] No update needed
[2026-10-25 04:26:59,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 04:26:59,491.491 INFO    ] 200
[2026-10-25 04:26:59,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:26:59,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:26:59,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:26:59,594.594 INFO    ] No camera update needed
[2026-10-25 04:26:59,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:26:59,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:26:59,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:26:59,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:01,666.666 INFO    ] ================================================
[2026-10-25 04:27:01,694.694 INFO    ] Launching Daemon at Sun Oct 25 04:27:01 IST 2026
[2026-10-25 04:27:01,713.713 INFO    ] ================================================
[2026-10-25 04:27:02,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:02
[2026-10-25 04:27:03,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:27:03,347.347 INFO    ] Initializing speech engine...
[2026-10-25 04:27:03,354.354 INFO    ] 2026-10-25 04:27:03
[2026-10-25 04:27:03,654.654 INFO    ] 2026-10-25 04:27:03
[2026-10-25 04:27:03,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:27:03,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:27:03,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:27:04,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:27:04,028.028 INFO    ] time= 25/10/2026 04:27:04
[2026-10-25 04:27:04,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:27:04,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:27:04,195.195 INFO    ] No existing commands found in stream
[2026-10-25 04:27:09,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:27:09,228.228 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 04:27:09,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:27:09,887.887 INFO    ] Checking for system updates...
[2026-10-25 04:27:09,923.923 INFO    ] 200
[2026-10-25 04:27:09,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:09,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:09,988.988 INFO    ] No update needed
[2026-10-25 04:27:09,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 04:27:10,029.029 INFO    ] 200
[2026-10-25 04:27:10,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:10,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:27:10,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:10,124.124 INFO    ] No camera update needed
[2026-10-25 04:27:10,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:27:10,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:27:10,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:27:10,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:12,181.181 INFO    ] ================================================
[2026-10-25 04:27:12,197.197 INFO    ] Launching Daemon at Sun Oct 25 04:27:12 IST 2026
[2026-10-25 04:27:12,208.208 INFO    ] ================================================
[2026-10-25 04:27:12,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:12
[2026-10-25 04:27:13,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:27:13,845.845 INFO    ] Initializing speech engine...
[2026-10-25 04:27:13,855.855 INFO    ] 2026-10-25 04:27:13
[2026-10-25 04:27:14,171.171 INFO    ] 2026-10-25 04:27:14
[2026-10-25 04:27:14,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:27:14,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:27:14,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:27:14,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:27:14,679.679 INFO    ] time= 25/10/2026 04:27:14
[2026-10-25 04:27:14,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:27:14,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:27:14,836.836 INFO    ] No existing commands found in stream
[2026-10-25 04:27:19,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:27:19,852.852 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 04:27:21,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:27:21,550.550 INFO    ] Checking for system updates...
[2026-10-25 04:27:21,591.591 INFO    ] 200
[2026-10-25 04:27:21,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:21,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:21,659.659 INFO    ] No update needed
[2026-10-25 04:27:21,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 04:27:21,696.696 INFO    ] 200
[2026-10-25 04:27:21,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:21,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:27:21,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:21,791.791 INFO    ] No camera update needed
[2026-10-25 04:27:21,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:27:21,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:27:21,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:27:21,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:23,850.850 INFO    ] ================================================
[2026-10-25 04:27:23,867.867 INFO    ] Launching Daemon at Sun Oct 25 04:27:23 IST 2026
[2026-10-25 04:27:23,878.878 INFO    ] ================================================
[2026-10-25 04:27:24,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:24
[2026-10-25 04:27:25,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:27:25,281.281 INFO    ] Initializing speech engine...
[2026-10-25 04:27:25,304.304 INFO    ] 2026-10-25 04:27:25
[2026-10-25 04:27:25,561.561 INFO    ] 2026-10-25 04:27:25
[2026-10-25 04:27:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:27:25,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:27:25,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:27:26,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:27:26,009.009 INFO    ] time= 25/10/2026 04:27:26
[2026-10-25 04:27:26,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:27:26,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:27:26,191.191 INFO    ] No existing commands found in stream
[2026-10-25 04:27:31,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:27:31,206.206 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 04:27:32,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:27:32,146.146 INFO    ] Checking for system updates...
[2026-10-25 04:27:32,187.187 INFO    ] 200
[2026-10-25 04:27:32,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:32,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:32,258.258 INFO    ] No update needed
[2026-10-25 04:27:32,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 04:27:32,299.299 INFO    ] 200
[2026-10-25 04:27:32,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:32,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:27:32,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:32,385.385 INFO    ] No camera update needed
[2026-10-25 04:27:32,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:27:32,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:27:32,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:27:32,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:34,446.446 INFO    ] ================================================
[2026-10-25 04:27:34,462.462 INFO    ] Launching Daemon at Sun Oct 25 04:27:34 IST 2026
[2026-10-25 04:27:34,474.474 INFO    ] ================================================
[2026-10-25 04:27:35,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:35
[2026-10-25 04:27:35,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:27:35,924.924 INFO    ] Initializing speech engine...
[2026-10-25 04:27:35,934.934 INFO    ] 2026-10-25 04:27:35
[2026-10-25 04:27:36,188.188 INFO    ] 2026-10-25 04:27:36
[2026-10-25 04:27:36,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:27:36,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:27:36,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:27:36,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:27:36,661.661 INFO    ] time= 25/10/2026 04:27:36
[2026-10-25 04:27:36,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:27:36,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:27:36,838.838 INFO    ] No existing commands found in stream
[2026-10-25 04:27:41,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:27:41,873.873 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 04:27:43,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:27:43,877.877 INFO    ] Checking for system updates...
[2026-10-25 04:27:43,913.913 INFO    ] 200
[2026-10-25 04:27:43,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:43,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:27:43,971.971 INFO    ] No update needed
[2026-10-25 04:27:43,973.973 INFO    ] Checking for camera pi updates...
[2026-10-25 04:27:44,015.015 INFO    ] 200
[2026-10-25 04:27:44,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:44,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:27:44,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:27:44,228.228 INFO    ] No camera update needed
[2026-10-25 04:27:44,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:27:44,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:27:44,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:27:44,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:46,286.286 INFO    ] ================================================
[2026-10-25 04:27:46,302.302 INFO    ] Launching Daemon at Sun Oct 25 04:27:46 IST 2026
[2026-10-25 04:27:46,313.313 INFO    ] ================================================
[2026-10-25 04:27:46,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:46
[2026-10-25 04:27:47,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:27:47,954.954 INFO    ] Initializing speech engine...
[2026-10-25 04:27:47,968.968 INFO    ] 2026-10-25 04:27:47
[2026-10-25 04:27:48,282.282 INFO    ] 2026-10-25 04:27:48
[2026-10-25 04:27:48,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:27:48,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:27:48,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:27:48,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:27:48,799.799 INFO    ] time= 25/10/2026 04:27:48
[2026-10-25 04:27:48,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:27:48,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:27:48,961.961 INFO    ] No existing commands found in stream
[2026-10-25 04:27:53,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:27:53,984.984 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 04:27:56,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:27:56,659.659 INFO    ] Checking for system updates...
[2026-10-25 04:27:56,701.701 INFO    ] 200
[2026-10-25 04:27:56,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:56,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:56,763.763 INFO    ] No update needed
[2026-10-25 04:27:56,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 04:27:56,801.801 INFO    ] 200
[2026-10-25 04:27:56,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:27:56,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:27:56,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:27:56,912.912 INFO    ] No camera update needed
[2026-10-25 04:27:56,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:27:56,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:27:56,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:27:56,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:27:58,971.971 INFO    ] ================================================
[2026-10-25 04:27:58,987.987 INFO    ] Launching Daemon at Sun Oct 25 04:27:58 IST 2026
[2026-10-25 04:27:59,999.999 INFO    ] ================================================
[2026-10-25 04:27:59,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:27:59
[2026-10-25 04:28:00,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:28:00,637.637 INFO    ] Initializing speech engine...
[2026-10-25 04:28:00,646.646 INFO    ] 2026-10-25 04:28:00
[2026-10-25 04:28:00,937.937 INFO    ] 2026-10-25 04:28:00
[2026-10-25 04:28:00,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:28:01,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:28:01,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:28:01,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:28:01,403.403 INFO    ] time= 25/10/2026 04:28:01
[2026-10-25 04:28:01,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:28:01,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:28:01,620.620 INFO    ] No existing commands found in stream
[2026-10-25 04:28:06,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:28:06,650.650 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 04:28:07,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:28:07,512.512 INFO    ] Checking for system updates...
[2026-10-25 04:28:07,547.547 INFO    ] 200
[2026-10-25 04:28:07,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:07,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:28:07,607.607 INFO    ] No update needed
[2026-10-25 04:28:07,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 04:28:07,643.643 INFO    ] 200
[2026-10-25 04:28:07,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:07,689.689 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:28:07,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:28:07,739.739 INFO    ] No camera update needed
[2026-10-25 04:28:07,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:28:07,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:28:07,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:28:07,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:28:09,794.794 INFO    ] ================================================
[2026-10-25 04:28:09,810.810 INFO    ] Launching Daemon at Sun Oct 25 04:28:09 IST 2026
[2026-10-25 04:28:09,821.821 INFO    ] ================================================
[2026-10-25 04:28:10,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:28:10
[2026-10-25 04:28:11,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:28:11,357.357 INFO    ] Initializing speech engine...
[2026-10-25 04:28:11,366.366 INFO    ] 2026-10-25 04:28:11
[2026-10-25 04:28:11,627.627 INFO    ] 2026-10-25 04:28:11
[2026-10-25 04:28:11,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:28:11,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:28:11,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:28:12,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:28:12,094.094 INFO    ] time= 25/10/2026 04:28:12
[2026-10-25 04:28:12,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:28:12,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:28:12,255.255 INFO    ] No existing commands found in stream
[2026-10-25 04:28:17,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:28:17,294.294 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 04:28:20,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:28:20,948.948 INFO    ] Checking for system updates...
[2026-10-25 04:28:20,984.984 INFO    ] 200
[2026-10-25 04:28:20,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:21,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:21,049.049 INFO    ] No update needed
[2026-10-25 04:28:21,052.052 INFO    ] Checking for camera pi updates...
[2026-10-25 04:28:21,090.090 INFO    ] 200
[2026-10-25 04:28:21,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:21,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:28:21,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:21,207.207 INFO    ] No camera update needed
[2026-10-25 04:28:21,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:28:21,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:28:21,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:28:21,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:28:23,264.264 INFO    ] ================================================
[2026-10-25 04:28:23,280.280 INFO    ] Launching Daemon at Sun Oct 25 04:28:23 IST 2026
[2026-10-25 04:28:23,291.291 INFO    ] ================================================
[2026-10-25 04:28:23,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:28:23
[2026-10-25 04:28:24,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:28:24,694.694 INFO    ] Initializing speech engine...
[2026-10-25 04:28:24,703.703 INFO    ] 2026-10-25 04:28:24
[2026-10-25 04:28:24,998.998 INFO    ] 2026-10-25 04:28:24
[2026-10-25 04:28:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:28:25,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:28:25,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:28:25,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:28:25,385.385 INFO    ] time= 25/10/2026 04:28:25
[2026-10-25 04:28:25,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:28:25,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:28:25,511.511 INFO    ] No existing commands found in stream
[2026-10-25 04:28:30,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:28:30,526.526 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 04:28:33,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:28:33,792.792 INFO    ] Checking for system updates...
[2026-10-25 04:28:33,829.829 INFO    ] 200
[2026-10-25 04:28:33,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:33,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:33,887.887 INFO    ] No update needed
[2026-10-25 04:28:33,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 04:28:33,922.922 INFO    ] 200
[2026-10-25 04:28:33,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:33,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:28:34,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:34,055.055 INFO    ] No camera update needed
[2026-10-25 04:28:34,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:28:34,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:28:34,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:28:34,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:28:36,110.110 INFO    ] ================================================
[2026-10-25 04:28:36,125.125 INFO    ] Launching Daemon at Sun Oct 25 04:28:36 IST 2026
[2026-10-25 04:28:36,136.136 INFO    ] ================================================
[2026-10-25 04:28:36,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:28:36
[2026-10-25 04:28:37,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:28:37,547.547 INFO    ] Initializing speech engine...
[2026-10-25 04:28:37,559.559 INFO    ] 2026-10-25 04:28:37
[2026-10-25 04:28:37,816.816 INFO    ] 2026-10-25 04:28:37
[2026-10-25 04:28:37,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:28:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:28:38,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:28:38,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:28:38,261.261 INFO    ] time= 25/10/2026 04:28:38
[2026-10-25 04:28:38,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:28:38,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:28:38,427.427 INFO    ] No existing commands found in stream
[2026-10-25 04:28:43,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:28:43,451.451 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 04:28:45,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:28:45,077.077 INFO    ] Checking for system updates...
[2026-10-25 04:28:45,113.113 INFO    ] 200
[2026-10-25 04:28:45,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:45,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:45,171.171 INFO    ] No update needed
[2026-10-25 04:28:45,173.173 INFO    ] Checking for camera pi updates...
[2026-10-25 04:28:45,208.208 INFO    ] 200
[2026-10-25 04:28:45,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:45,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:28:45,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:28:45,301.301 INFO    ] No camera update needed
[2026-10-25 04:28:45,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:28:45,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:28:45,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:28:45,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:28:47,358.358 INFO    ] ================================================
[2026-10-25 04:28:47,373.373 INFO    ] Launching Daemon at Sun Oct 25 04:28:47 IST 2026
[2026-10-25 04:28:47,384.384 INFO    ] ================================================
[2026-10-25 04:28:47,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:28:47
[2026-10-25 04:28:48,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:28:48,954.954 INFO    ] Initializing speech engine...
[2026-10-25 04:28:48,963.963 INFO    ] 2026-10-25 04:28:48
[2026-10-25 04:28:49,242.242 INFO    ] 2026-10-25 04:28:49
[2026-10-25 04:28:49,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:28:49,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:28:49,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:28:49,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:28:49,798.798 INFO    ] time= 25/10/2026 04:28:49
[2026-10-25 04:28:49,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:28:49,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:28:49,948.948 INFO    ] No existing commands found in stream
[2026-10-25 04:28:54,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:28:54,968.968 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 04:28:57,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:28:57,820.820 INFO    ] Checking for system updates...
[2026-10-25 04:28:57,856.856 INFO    ] 200
[2026-10-25 04:28:57,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:57,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:28:57,914.914 INFO    ] No update needed
[2026-10-25 04:28:57,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 04:28:57,968.968 INFO    ] 200
[2026-10-25 04:28:57,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:28:58,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:28:58,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:28:58,071.071 INFO    ] No camera update needed
[2026-10-25 04:28:58,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:28:58,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:28:58,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:28:58,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:00,126.126 INFO    ] ================================================
[2026-10-25 04:29:00,141.141 INFO    ] Launching Daemon at Sun Oct 25 04:29:00 IST 2026
[2026-10-25 04:29:00,153.153 INFO    ] ================================================
[2026-10-25 04:29:00,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:00
[2026-10-25 04:29:01,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:29:01,573.573 INFO    ] Initializing speech engine...
[2026-10-25 04:29:01,581.581 INFO    ] 2026-10-25 04:29:01
[2026-10-25 04:29:01,862.862 INFO    ] 2026-10-25 04:29:01
[2026-10-25 04:29:01,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:29:02,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:29:02,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:29:02,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:29:02,318.318 INFO    ] time= 25/10/2026 04:29:02
[2026-10-25 04:29:02,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:29:02,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:29:02,412.412 INFO    ] No existing commands found in stream
[2026-10-25 04:29:07,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:29:07,433.433 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 04:29:08,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:29:08,678.678 INFO    ] Checking for system updates...
[2026-10-25 04:29:08,714.714 INFO    ] 200
[2026-10-25 04:29:08,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:08,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:08,772.772 INFO    ] No update needed
[2026-10-25 04:29:08,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 04:29:08,808.808 INFO    ] 200
[2026-10-25 04:29:08,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:08,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:29:08,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:08,926.926 INFO    ] No camera update needed
[2026-10-25 04:29:08,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:29:08,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:29:08,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:29:08,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:10,983.983 INFO    ] ================================================
[2026-10-25 04:29:11,998.998 INFO    ] Launching Daemon at Sun Oct 25 04:29:10 IST 2026
[2026-10-25 04:29:11,010.010 INFO    ] ================================================
[2026-10-25 04:29:11,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:11
[2026-10-25 04:29:12,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:29:12,646.646 INFO    ] Initializing speech engine...
[2026-10-25 04:29:12,660.660 INFO    ] 2026-10-25 04:29:12
[2026-10-25 04:29:12,968.968 INFO    ] 2026-10-25 04:29:12
[2026-10-25 04:29:13,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:29:13,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:29:13,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:29:13,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:29:13,478.478 INFO    ] time= 25/10/2026 04:29:13
[2026-10-25 04:29:13,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:29:13,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:29:13,631.631 INFO    ] No existing commands found in stream
[2026-10-25 04:29:18,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:29:18,648.648 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 04:29:20,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:29:20,809.809 INFO    ] Checking for system updates...
[2026-10-25 04:29:20,846.846 INFO    ] 200
[2026-10-25 04:29:20,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:20,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:20,914.914 INFO    ] No update needed
[2026-10-25 04:29:20,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 04:29:20,952.952 INFO    ] 200
[2026-10-25 04:29:20,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:20,996.996 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:29:21,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:21,056.056 INFO    ] No camera update needed
[2026-10-25 04:29:21,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:29:21,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:29:21,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:29:21,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:23,115.115 INFO    ] ================================================
[2026-10-25 04:29:23,131.131 INFO    ] Launching Daemon at Sun Oct 25 04:29:23 IST 2026
[2026-10-25 04:29:23,142.142 INFO    ] ================================================
[2026-10-25 04:29:23,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:23
[2026-10-25 04:29:24,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:29:24,790.790 INFO    ] Initializing speech engine...
[2026-10-25 04:29:24,801.801 INFO    ] 2026-10-25 04:29:24
[2026-10-25 04:29:25,110.110 INFO    ] 2026-10-25 04:29:25
[2026-10-25 04:29:25,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:29:25,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:29:25,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:29:25,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:29:25,618.618 INFO    ] time= 25/10/2026 04:29:25
[2026-10-25 04:29:25,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:29:25,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:29:25,783.783 INFO    ] No existing commands found in stream
[2026-10-25 04:29:30,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:29:30,817.817 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 04:29:32,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:29:32,907.907 INFO    ] Checking for system updates...
[2026-10-25 04:29:32,956.956 INFO    ] 200
[2026-10-25 04:29:32,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:33,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:29:33,042.042 INFO    ] No update needed
[2026-10-25 04:29:33,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 04:29:33,086.086 INFO    ] 200
[2026-10-25 04:29:33,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:33,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:29:33,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:29:33,207.207 INFO    ] No camera update needed
[2026-10-25 04:29:33,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:29:33,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:29:33,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:29:33,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:35,262.262 INFO    ] ================================================
[2026-10-25 04:29:35,277.277 INFO    ] Launching Daemon at Sun Oct 25 04:29:35 IST 2026
[2026-10-25 04:29:35,288.288 INFO    ] ================================================
[2026-10-25 04:29:35,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:35
[2026-10-25 04:29:36,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:29:36,709.709 INFO    ] Initializing speech engine...
[2026-10-25 04:29:36,718.718 INFO    ] 2026-10-25 04:29:36
[2026-10-25 04:29:36,962.962 INFO    ] 2026-10-25 04:29:36
[2026-10-25 04:29:36,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:29:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:29:37,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:29:37,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:29:37,426.426 INFO    ] time= 25/10/2026 04:29:37
[2026-10-25 04:29:37,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:29:37,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:29:37,576.576 INFO    ] No existing commands found in stream
[2026-10-25 04:29:42,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:29:42,591.591 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 04:29:44,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:29:44,556.556 INFO    ] Checking for system updates...
[2026-10-25 04:29:44,593.593 INFO    ] 200
[2026-10-25 04:29:44,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:44,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:29:44,653.653 INFO    ] No update needed
[2026-10-25 04:29:44,656.656 INFO    ] Checking for camera pi updates...
[2026-10-25 04:29:44,691.691 INFO    ] 200
[2026-10-25 04:29:44,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:44,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:29:44,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:29:44,799.799 INFO    ] No camera update needed
[2026-10-25 04:29:44,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:29:44,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:29:44,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:29:44,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:46,859.859 INFO    ] ================================================
[2026-10-25 04:29:46,875.875 INFO    ] Launching Daemon at Sun Oct 25 04:29:46 IST 2026
[2026-10-25 04:29:46,886.886 INFO    ] ================================================
[2026-10-25 04:29:47,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:47
[2026-10-25 04:29:48,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:29:48,287.287 INFO    ] Initializing speech engine...
[2026-10-25 04:29:48,310.310 INFO    ] 2026-10-25 04:29:48
[2026-10-25 04:29:48,560.560 INFO    ] 2026-10-25 04:29:48
[2026-10-25 04:29:48,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:29:48,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:29:48,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:29:48,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:29:49,025.025 INFO    ] time= 25/10/2026 04:29:48
[2026-10-25 04:29:49,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:29:49,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:29:49,195.195 INFO    ] No existing commands found in stream
[2026-10-25 04:29:54,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:29:54,234.234 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 04:29:56,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:29:56,407.407 INFO    ] Checking for system updates...
[2026-10-25 04:29:56,443.443 INFO    ] 200
[2026-10-25 04:29:56,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:56,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:56,500.500 INFO    ] No update needed
[2026-10-25 04:29:56,503.503 INFO    ] Checking for camera pi updates...
[2026-10-25 04:29:56,538.538 INFO    ] 200
[2026-10-25 04:29:56,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:29:56,581.581 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:29:56,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:29:56,744.744 INFO    ] No camera update needed
[2026-10-25 04:29:56,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:29:56,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:29:56,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:29:56,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:29:58,799.799 INFO    ] ================================================
[2026-10-25 04:29:58,814.814 INFO    ] Launching Daemon at Sun Oct 25 04:29:58 IST 2026
[2026-10-25 04:29:58,824.824 INFO    ] ================================================
[2026-10-25 04:29:59,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:29:59
[2026-10-25 04:29:59,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:30:00,251.251 INFO    ] Initializing speech engine...
[2026-10-25 04:30:00,258.258 INFO    ] 2026-10-25 04:30:00
[2026-10-25 04:30:00,507.507 INFO    ] 2026-10-25 04:30:00
[2026-10-25 04:30:00,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:30:00,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:30:00,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:30:00,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:30:00,878.878 INFO    ] time= 25/10/2026 04:30:00
[2026-10-25 04:30:00,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:30:00,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:30:01,003.003 INFO    ] No existing commands found in stream
[2026-10-25 04:30:06,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:30:06,020.020 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 04:30:08,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:30:08,434.434 INFO    ] Checking for system updates...
[2026-10-25 04:30:08,474.474 INFO    ] 200
[2026-10-25 04:30:08,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:08,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:08,531.531 INFO    ] No update needed
[2026-10-25 04:30:08,534.534 INFO    ] Checking for camera pi updates...
[2026-10-25 04:30:08,568.568 INFO    ] 200
[2026-10-25 04:30:08,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:08,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:30:08,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:08,664.664 INFO    ] No camera update needed
[2026-10-25 04:30:08,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:30:08,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:30:08,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:30:08,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:30:10,719.719 INFO    ] ================================================
[2026-10-25 04:30:10,734.734 INFO    ] Launching Daemon at Sun Oct 25 04:30:10 IST 2026
[2026-10-25 04:30:10,745.745 INFO    ] ================================================
[2026-10-25 04:30:11,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:30:11
[2026-10-25 04:30:11,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:30:12,140.140 INFO    ] Initializing speech engine...
[2026-10-25 04:30:12,161.161 INFO    ] 2026-10-25 04:30:12
[2026-10-25 04:30:12,421.421 INFO    ] 2026-10-25 04:30:12
[2026-10-25 04:30:12,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:30:12,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:30:12,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:30:12,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:30:12,899.899 INFO    ] time= 25/10/2026 04:30:12
[2026-10-25 04:30:12,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:30:12,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:30:13,044.044 INFO    ] No existing commands found in stream
[2026-10-25 04:30:18,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:30:18,058.058 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 04:30:19,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:30:19,511.511 INFO    ] Checking for system updates...
[2026-10-25 04:30:19,548.548 INFO    ] 200
[2026-10-25 04:30:19,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:19,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:30:19,615.615 INFO    ] No update needed
[2026-10-25 04:30:19,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 04:30:19,653.653 INFO    ] 200
[2026-10-25 04:30:19,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:19,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:30:19,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:30:19,758.758 INFO    ] No camera update needed
[2026-10-25 04:30:19,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:30:19,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:30:19,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:30:19,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:30:21,817.817 INFO    ] ================================================
[2026-10-25 04:30:21,835.835 INFO    ] Launching Daemon at Sun Oct 25 04:30:21 IST 2026
[2026-10-25 04:30:21,845.845 INFO    ] ================================================
[2026-10-25 04:30:22,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:30:22
[2026-10-25 04:30:23,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:30:23,305.305 INFO    ] Initializing speech engine...
[2026-10-25 04:30:23,316.316 INFO    ] 2026-10-25 04:30:23
[2026-10-25 04:30:23,582.582 INFO    ] 2026-10-25 04:30:23
[2026-10-25 04:30:23,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:30:23,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:30:23,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:30:23,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:30:24,005.005 INFO    ] time= 25/10/2026 04:30:23
[2026-10-25 04:30:24,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:30:24,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:30:24,231.231 INFO    ] No existing commands found in stream
[2026-10-25 04:30:29,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:30:29,267.267 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 04:30:30,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:30:30,694.694 INFO    ] Checking for system updates...
[2026-10-25 04:30:30,732.732 INFO    ] 200
[2026-10-25 04:30:30,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:30,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:30,791.791 INFO    ] No update needed
[2026-10-25 04:30:30,794.794 INFO    ] Checking for camera pi updates...
[2026-10-25 04:30:30,832.832 INFO    ] 200
[2026-10-25 04:30:30,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:30,881.881 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:30:30,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:30,954.954 INFO    ] No camera update needed
[2026-10-25 04:30:30,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:30:30,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:30:30,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:30:30,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:30:33,013.013 INFO    ] ================================================
[2026-10-25 04:30:33,029.029 INFO    ] Launching Daemon at Sun Oct 25 04:30:33 IST 2026
[2026-10-25 04:30:33,041.041 INFO    ] ================================================
[2026-10-25 04:30:33,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:30:33
[2026-10-25 04:30:34,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:30:34,518.518 INFO    ] Initializing speech engine...
[2026-10-25 04:30:34,526.526 INFO    ] 2026-10-25 04:30:34
[2026-10-25 04:30:34,786.786 INFO    ] 2026-10-25 04:30:34
[2026-10-25 04:30:34,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:30:35,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:30:35,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:30:35,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:30:35,239.239 INFO    ] time= 25/10/2026 04:30:35
[2026-10-25 04:30:35,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:30:35,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:30:35,391.391 INFO    ] No existing commands found in stream
[2026-10-25 04:30:40,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:30:40,406.406 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 04:30:44,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:30:44,040.040 INFO    ] Checking for system updates...
[2026-10-25 04:30:44,081.081 INFO    ] 200
[2026-10-25 04:30:44,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:44,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:44,139.139 INFO    ] No update needed
[2026-10-25 04:30:44,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 04:30:44,177.177 INFO    ] 200
[2026-10-25 04:30:44,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:44,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:30:44,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:44,287.287 INFO    ] No camera update needed
[2026-10-25 04:30:44,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:30:44,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:30:44,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:30:44,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:30:46,345.345 INFO    ] ================================================
[2026-10-25 04:30:46,360.360 INFO    ] Launching Daemon at Sun Oct 25 04:30:46 IST 2026
[2026-10-25 04:30:46,371.371 INFO    ] ================================================
[2026-10-25 04:30:46,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:30:46
[2026-10-25 04:30:47,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:30:47,792.792 INFO    ] Initializing speech engine...
[2026-10-25 04:30:47,801.801 INFO    ] 2026-10-25 04:30:47
[2026-10-25 04:30:48,050.050 INFO    ] 2026-10-25 04:30:48
[2026-10-25 04:30:48,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:30:48,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:30:48,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:30:48,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:30:48,524.524 INFO    ] time= 25/10/2026 04:30:48
[2026-10-25 04:30:48,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:30:48,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:30:48,680.680 INFO    ] No existing commands found in stream
[2026-10-25 04:30:53,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:30:53,694.694 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 04:30:57,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:30:57,778.778 INFO    ] Checking for system updates...
[2026-10-25 04:30:57,817.817 INFO    ] 200
[2026-10-25 04:30:57,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:57,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:57,876.876 INFO    ] No update needed
[2026-10-25 04:30:57,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 04:30:57,913.913 INFO    ] 200
[2026-10-25 04:30:57,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:30:57,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:30:58,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:30:58,012.012 INFO    ] No camera update needed
[2026-10-25 04:30:58,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:30:58,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:30:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:30:58,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:00,067.067 INFO    ] ================================================
[2026-10-25 04:31:00,082.082 INFO    ] Launching Daemon at Sun Oct 25 04:31:00 IST 2026
[2026-10-25 04:31:00,092.092 INFO    ] ================================================
[2026-10-25 04:31:00,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:00
[2026-10-25 04:31:01,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:31:01,507.507 INFO    ] Initializing speech engine...
[2026-10-25 04:31:01,518.518 INFO    ] 2026-10-25 04:31:01
[2026-10-25 04:31:01,809.809 INFO    ] 2026-10-25 04:31:01
[2026-10-25 04:31:01,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:31:02,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:31:02,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:31:02,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:31:02,311.311 INFO    ] time= 25/10/2026 04:31:02
[2026-10-25 04:31:02,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:31:02,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:31:02,402.402 INFO    ] No existing commands found in stream
[2026-10-25 04:31:07,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:31:07,418.418 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 04:31:09,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:31:09,826.826 INFO    ] Checking for system updates...
[2026-10-25 04:31:09,867.867 INFO    ] 200
[2026-10-25 04:31:09,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:09,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:09,931.931 INFO    ] No update needed
[2026-10-25 04:31:09,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 04:31:09,972.972 INFO    ] 200
[2026-10-25 04:31:09,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:10,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:31:10,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:10,066.066 INFO    ] No camera update needed
[2026-10-25 04:31:10,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:31:10,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:31:10,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:31:10,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:12,120.120 INFO    ] ================================================
[2026-10-25 04:31:12,135.135 INFO    ] Launching Daemon at Sun Oct 25 04:31:12 IST 2026
[2026-10-25 04:31:12,145.145 INFO    ] ================================================
[2026-10-25 04:31:12,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:12
[2026-10-25 04:31:13,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:31:13,593.593 INFO    ] Initializing speech engine...
[2026-10-25 04:31:13,604.604 INFO    ] 2026-10-25 04:31:13
[2026-10-25 04:31:13,866.866 INFO    ] 2026-10-25 04:31:13
[2026-10-25 04:31:13,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:31:14,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:31:14,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:31:14,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:31:14,331.331 INFO    ] time= 25/10/2026 04:31:14
[2026-10-25 04:31:14,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:31:14,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:31:14,477.477 INFO    ] No existing commands found in stream
[2026-10-25 04:31:19,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:31:19,505.505 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 04:31:20,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:31:20,060.060 INFO    ] Checking for system updates...
[2026-10-25 04:31:20,096.096 INFO    ] 200
[2026-10-25 04:31:20,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:20,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:31:20,157.157 INFO    ] No update needed
[2026-10-25 04:31:20,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 04:31:20,193.193 INFO    ] 200
[2026-10-25 04:31:20,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:20,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:31:20,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:31:20,287.287 INFO    ] No camera update needed
[2026-10-25 04:31:20,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:31:20,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:31:20,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:31:20,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:22,345.345 INFO    ] ================================================
[2026-10-25 04:31:22,360.360 INFO    ] Launching Daemon at Sun Oct 25 04:31:22 IST 2026
[2026-10-25 04:31:22,372.372 INFO    ] ================================================
[2026-10-25 04:31:22,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:22
[2026-10-25 04:31:23,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:31:23,790.790 INFO    ] Initializing speech engine...
[2026-10-25 04:31:23,799.799 INFO    ] 2026-10-25 04:31:23
[2026-10-25 04:31:24,047.047 INFO    ] 2026-10-25 04:31:24
[2026-10-25 04:31:24,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:31:24,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:31:24,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:31:24,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:31:24,525.525 INFO    ] time= 25/10/2026 04:31:24
[2026-10-25 04:31:24,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:31:24,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:31:24,676.676 INFO    ] No existing commands found in stream
[2026-10-25 04:31:29,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:31:29,691.691 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 04:31:33,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:31:33,756.756 INFO    ] Checking for system updates...
[2026-10-25 04:31:33,793.793 INFO    ] 200
[2026-10-25 04:31:33,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:33,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:33,851.851 INFO    ] No update needed
[2026-10-25 04:31:33,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 04:31:33,888.888 INFO    ] 200
[2026-10-25 04:31:33,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:33,931.931 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:31:33,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:33,990.990 INFO    ] No camera update needed
[2026-10-25 04:31:33,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:31:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:31:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:31:34,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:36,045.045 INFO    ] ================================================
[2026-10-25 04:31:36,061.061 INFO    ] Launching Daemon at Sun Oct 25 04:31:36 IST 2026
[2026-10-25 04:31:36,072.072 INFO    ] ================================================
[2026-10-25 04:31:36,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:36
[2026-10-25 04:31:37,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:31:37,494.494 INFO    ] Initializing speech engine...
[2026-10-25 04:31:37,504.504 INFO    ] 2026-10-25 04:31:37
[2026-10-25 04:31:37,749.749 INFO    ] 2026-10-25 04:31:37
[2026-10-25 04:31:37,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:31:38,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:31:38,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:31:38,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:31:38,233.233 INFO    ] time= 25/10/2026 04:31:38
[2026-10-25 04:31:38,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:31:38,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:31:38,368.368 INFO    ] No existing commands found in stream
[2026-10-25 04:31:43,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:31:43,396.396 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 04:31:44,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:31:44,630.630 INFO    ] Checking for system updates...
[2026-10-25 04:31:44,671.671 INFO    ] 200
[2026-10-25 04:31:44,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:44,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:31:44,735.735 INFO    ] No update needed
[2026-10-25 04:31:44,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 04:31:44,777.777 INFO    ] 200
[2026-10-25 04:31:44,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:44,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:31:44,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:31:44,881.881 INFO    ] No camera update needed
[2026-10-25 04:31:44,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:31:44,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:31:44,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:31:44,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:46,936.936 INFO    ] ================================================
[2026-10-25 04:31:46,951.951 INFO    ] Launching Daemon at Sun Oct 25 04:31:46 IST 2026
[2026-10-25 04:31:46,962.962 INFO    ] ================================================
[2026-10-25 04:31:47,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:47
[2026-10-25 04:31:48,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:31:48,364.364 INFO    ] Initializing speech engine...
[2026-10-25 04:31:48,377.377 INFO    ] 2026-10-25 04:31:48
[2026-10-25 04:31:48,657.657 INFO    ] 2026-10-25 04:31:48
[2026-10-25 04:31:48,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:31:48,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:31:48,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:31:49,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:31:49,037.037 INFO    ] time= 25/10/2026 04:31:49
[2026-10-25 04:31:49,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:31:49,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:31:49,159.159 INFO    ] No existing commands found in stream
[2026-10-25 04:31:54,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:31:54,174.174 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 04:31:56,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:31:56,693.693 INFO    ] Checking for system updates...
[2026-10-25 04:31:56,733.733 INFO    ] 200
[2026-10-25 04:31:56,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:56,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:56,796.796 INFO    ] No update needed
[2026-10-25 04:31:56,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 04:31:56,832.832 INFO    ] 200
[2026-10-25 04:31:56,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:31:56,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:31:56,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:31:56,942.942 INFO    ] No camera update needed
[2026-10-25 04:31:56,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:31:56,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:31:56,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:31:56,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:31:59,997.997 INFO    ] ================================================
[2026-10-25 04:31:59,012.012 INFO    ] Launching Daemon at Sun Oct 25 04:31:59 IST 2026
[2026-10-25 04:31:59,023.023 INFO    ] ================================================
[2026-10-25 04:31:59,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:31:59
[2026-10-25 04:32:00,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:32:00,429.429 INFO    ] Initializing speech engine...
[2026-10-25 04:32:00,436.436 INFO    ] 2026-10-25 04:32:00
[2026-10-25 04:32:00,723.723 INFO    ] 2026-10-25 04:32:00
[2026-10-25 04:32:00,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:32:00,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:32:00,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:32:01,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:32:01,115.115 INFO    ] time= 25/10/2026 04:32:01
[2026-10-25 04:32:01,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:32:01,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:32:01,288.288 INFO    ] No existing commands found in stream
[2026-10-25 04:32:06,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:32:06,322.322 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 04:32:09,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:32:09,431.431 INFO    ] Checking for system updates...
[2026-10-25 04:32:09,469.469 INFO    ] 200
[2026-10-25 04:32:09,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:09,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:32:09,527.527 INFO    ] No update needed
[2026-10-25 04:32:09,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 04:32:09,564.564 INFO    ] 200
[2026-10-25 04:32:09,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:09,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:32:09,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:32:09,663.663 INFO    ] No camera update needed
[2026-10-25 04:32:09,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:32:09,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:32:09,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:32:09,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:32:11,719.719 INFO    ] ================================================
[2026-10-25 04:32:11,734.734 INFO    ] Launching Daemon at Sun Oct 25 04:32:11 IST 2026
[2026-10-25 04:32:11,745.745 INFO    ] ================================================
[2026-10-25 04:32:12,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:32:12
[2026-10-25 04:32:13,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:32:13,322.322 INFO    ] Initializing speech engine...
[2026-10-25 04:32:13,330.330 INFO    ] 2026-10-25 04:32:13
[2026-10-25 04:32:13,610.610 INFO    ] 2026-10-25 04:32:13
[2026-10-25 04:32:13,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:32:13,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:32:13,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:32:14,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:32:14,148.148 INFO    ] time= 25/10/2026 04:32:14
[2026-10-25 04:32:14,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:32:14,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:32:14,283.283 INFO    ] No existing commands found in stream
[2026-10-25 04:32:19,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:32:19,315.315 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 04:32:23,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:32:23,266.266 INFO    ] Checking for system updates...
[2026-10-25 04:32:23,305.305 INFO    ] 200
[2026-10-25 04:32:23,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:23,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:23,376.376 INFO    ] No update needed
[2026-10-25 04:32:23,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 04:32:23,419.419 INFO    ] 200
[2026-10-25 04:32:23,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:23,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:32:23,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:23,528.528 INFO    ] No camera update needed
[2026-10-25 04:32:23,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:32:23,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:32:23,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:32:23,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:32:25,582.582 INFO    ] ================================================
[2026-10-25 04:32:25,597.597 INFO    ] Launching Daemon at Sun Oct 25 04:32:25 IST 2026
[2026-10-25 04:32:25,607.607 INFO    ] ================================================
[2026-10-25 04:32:26,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:32:26
[2026-10-25 04:32:26,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:32:27,137.137 INFO    ] Initializing speech engine...
[2026-10-25 04:32:27,144.144 INFO    ] 2026-10-25 04:32:27
[2026-10-25 04:32:27,414.414 INFO    ] 2026-10-25 04:32:27
[2026-10-25 04:32:27,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:32:27,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:32:27,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:32:27,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:32:27,857.857 INFO    ] time= 25/10/2026 04:32:27
[2026-10-25 04:32:27,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:32:27,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:32:28,032.032 INFO    ] No existing commands found in stream
[2026-10-25 04:32:33,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:32:33,048.048 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 04:32:33,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:32:33,902.902 INFO    ] Checking for system updates...
[2026-10-25 04:32:33,941.941 INFO    ] 200
[2026-10-25 04:32:33,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:34,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:34,016.016 INFO    ] No update needed
[2026-10-25 04:32:34,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 04:32:34,055.055 INFO    ] 200
[2026-10-25 04:32:34,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:34,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:32:34,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:34,157.157 INFO    ] No camera update needed
[2026-10-25 04:32:34,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:32:34,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:32:34,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:32:34,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:32:36,211.211 INFO    ] ================================================
[2026-10-25 04:32:36,226.226 INFO    ] Launching Daemon at Sun Oct 25 04:32:36 IST 2026
[2026-10-25 04:32:36,237.237 INFO    ] ================================================
[2026-10-25 04:32:36,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:32:36
[2026-10-25 04:32:37,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:32:37,817.817 INFO    ] Initializing speech engine...
[2026-10-25 04:32:37,830.830 INFO    ] 2026-10-25 04:32:37
[2026-10-25 04:32:38,108.108 INFO    ] 2026-10-25 04:32:38
[2026-10-25 04:32:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:32:38,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:32:38,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:32:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:32:38,651.651 INFO    ] time= 25/10/2026 04:32:38
[2026-10-25 04:32:38,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:32:38,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:32:38,791.791 INFO    ] No existing commands found in stream
[2026-10-25 04:32:43,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:32:43,823.823 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 04:32:46,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:32:46,043.043 INFO    ] Checking for system updates...
[2026-10-25 04:32:46,080.080 INFO    ] 200
[2026-10-25 04:32:46,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:46,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:32:46,138.138 INFO    ] No update needed
[2026-10-25 04:32:46,140.140 INFO    ] Checking for camera pi updates...
[2026-10-25 04:32:46,180.180 INFO    ] 200
[2026-10-25 04:32:46,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:46,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:32:46,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:32:46,279.279 INFO    ] No camera update needed
[2026-10-25 04:32:46,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:32:46,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:32:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:32:46,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:32:48,333.333 INFO    ] ================================================
[2026-10-25 04:32:48,349.349 INFO    ] Launching Daemon at Sun Oct 25 04:32:48 IST 2026
[2026-10-25 04:32:48,360.360 INFO    ] ================================================
[2026-10-25 04:32:48,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:32:48
[2026-10-25 04:32:49,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:32:49,836.836 INFO    ] Initializing speech engine...
[2026-10-25 04:32:49,844.844 INFO    ] 2026-10-25 04:32:49
[2026-10-25 04:32:50,131.131 INFO    ] 2026-10-25 04:32:50
[2026-10-25 04:32:50,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:32:50,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:32:50,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:32:50,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:32:50,503.503 INFO    ] time= 25/10/2026 04:32:50
[2026-10-25 04:32:50,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:32:50,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:32:50,624.624 INFO    ] No existing commands found in stream
[2026-10-25 04:32:55,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:32:55,638.638 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 04:32:59,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:32:59,612.612 INFO    ] Checking for system updates...
[2026-10-25 04:32:59,649.649 INFO    ] 200
[2026-10-25 04:32:59,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:59,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:59,712.712 INFO    ] No update needed
[2026-10-25 04:32:59,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 04:32:59,751.751 INFO    ] 200
[2026-10-25 04:32:59,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:32:59,793.793 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:32:59,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:32:59,847.847 INFO    ] No camera update needed
[2026-10-25 04:32:59,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:32:59,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:32:59,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:32:59,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:01,905.905 INFO    ] ================================================
[2026-10-25 04:33:01,921.921 INFO    ] Launching Daemon at Sun Oct 25 04:33:01 IST 2026
[2026-10-25 04:33:01,932.932 INFO    ] ================================================
[2026-10-25 04:33:02,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:02
[2026-10-25 04:33:03,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:33:03,617.617 INFO    ] Initializing speech engine...
[2026-10-25 04:33:03,633.633 INFO    ] 2026-10-25 04:33:03
[2026-10-25 04:33:03,921.921 INFO    ] 2026-10-25 04:33:03
[2026-10-25 04:33:03,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:33:04,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:33:04,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:33:04,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:33:04,296.296 INFO    ] time= 25/10/2026 04:33:04
[2026-10-25 04:33:04,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:33:04,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:33:04,391.391 INFO    ] No existing commands found in stream
[2026-10-25 04:33:09,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:33:09,406.406 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 04:33:10,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:33:10,731.731 INFO    ] Checking for system updates...
[2026-10-25 04:33:10,768.768 INFO    ] 200
[2026-10-25 04:33:10,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:10,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:10,827.827 INFO    ] No update needed
[2026-10-25 04:33:10,830.830 INFO    ] Checking for camera pi updates...
[2026-10-25 04:33:10,864.864 INFO    ] 200
[2026-10-25 04:33:10,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:10,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:33:10,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:10,959.959 INFO    ] No camera update needed
[2026-10-25 04:33:10,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:33:10,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:33:10,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:33:10,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:13,015.015 INFO    ] ================================================
[2026-10-25 04:33:13,031.031 INFO    ] Launching Daemon at Sun Oct 25 04:33:13 IST 2026
[2026-10-25 04:33:13,043.043 INFO    ] ================================================
[2026-10-25 04:33:13,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:13
[2026-10-25 04:33:14,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:33:14,469.469 INFO    ] Initializing speech engine...
[2026-10-25 04:33:14,478.478 INFO    ] 2026-10-25 04:33:14
[2026-10-25 04:33:14,728.728 INFO    ] 2026-10-25 04:33:14
[2026-10-25 04:33:14,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:33:14,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:33:15,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:33:15,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:33:15,179.179 INFO    ] time= 25/10/2026 04:33:15
[2026-10-25 04:33:15,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:33:15,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:33:15,354.354 INFO    ] No existing commands found in stream
[2026-10-25 04:33:20,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:33:20,368.368 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 04:33:21,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:33:21,537.537 INFO    ] Checking for system updates...
[2026-10-25 04:33:21,574.574 INFO    ] 200
[2026-10-25 04:33:21,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:21,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:33:21,632.632 INFO    ] No update needed
[2026-10-25 04:33:21,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 04:33:21,668.668 INFO    ] 200
[2026-10-25 04:33:21,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:21,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:33:21,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:33:21,765.765 INFO    ] No camera update needed
[2026-10-25 04:33:21,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:33:21,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:33:21,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:33:21,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:23,820.820 INFO    ] ================================================
[2026-10-25 04:33:23,835.835 INFO    ] Launching Daemon at Sun Oct 25 04:33:23 IST 2026
[2026-10-25 04:33:23,846.846 INFO    ] ================================================
[2026-10-25 04:33:24,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:24
[2026-10-25 04:33:25,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:33:25,349.349 INFO    ] Initializing speech engine...
[2026-10-25 04:33:25,358.358 INFO    ] 2026-10-25 04:33:25
[2026-10-25 04:33:25,621.621 INFO    ] 2026-10-25 04:33:25
[2026-10-25 04:33:25,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:33:25,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:33:25,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:33:26,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:33:26,129.129 INFO    ] time= 25/10/2026 04:33:26
[2026-10-25 04:33:26,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:33:26,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:33:26,263.263 INFO    ] No existing commands found in stream
[2026-10-25 04:33:31,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:33:31,279.279 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 04:33:34,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:33:34,661.661 INFO    ] Checking for system updates...
[2026-10-25 04:33:34,699.699 INFO    ] 200
[2026-10-25 04:33:34,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:34,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:34,765.765 INFO    ] No update needed
[2026-10-25 04:33:34,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 04:33:34,802.802 INFO    ] 200
[2026-10-25 04:33:34,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:34,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:33:34,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:34,897.897 INFO    ] No camera update needed
[2026-10-25 04:33:34,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:33:34,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:33:34,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:33:34,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:36,952.952 INFO    ] ================================================
[2026-10-25 04:33:36,967.967 INFO    ] Launching Daemon at Sun Oct 25 04:33:36 IST 2026
[2026-10-25 04:33:36,978.978 INFO    ] ================================================
[2026-10-25 04:33:37,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:37
[2026-10-25 04:33:38,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:33:38,429.429 INFO    ] Initializing speech engine...
[2026-10-25 04:33:38,446.446 INFO    ] 2026-10-25 04:33:38
[2026-10-25 04:33:38,698.698 INFO    ] 2026-10-25 04:33:38
[2026-10-25 04:33:38,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:33:38,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:33:38,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:33:39,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:33:39,180.180 INFO    ] time= 25/10/2026 04:33:39
[2026-10-25 04:33:39,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:33:39,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:33:39,326.326 INFO    ] No existing commands found in stream
[2026-10-25 04:33:44,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:33:44,364.364 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 04:33:45,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:33:45,724.724 INFO    ] Checking for system updates...
[2026-10-25 04:33:45,764.764 INFO    ] 200
[2026-10-25 04:33:45,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:45,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:33:45,826.826 INFO    ] No update needed
[2026-10-25 04:33:45,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 04:33:45,863.863 INFO    ] 200
[2026-10-25 04:33:45,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:45,910.910 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:33:45,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:33:45,979.979 INFO    ] No camera update needed
[2026-10-25 04:33:45,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:33:45,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:33:45,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:33:45,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:48,038.038 INFO    ] ================================================
[2026-10-25 04:33:48,053.053 INFO    ] Launching Daemon at Sun Oct 25 04:33:48 IST 2026
[2026-10-25 04:33:48,063.063 INFO    ] ================================================
[2026-10-25 04:33:48,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:48
[2026-10-25 04:33:49,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:33:49,473.473 INFO    ] Initializing speech engine...
[2026-10-25 04:33:49,493.493 INFO    ] 2026-10-25 04:33:49
[2026-10-25 04:33:49,743.743 INFO    ] 2026-10-25 04:33:49
[2026-10-25 04:33:49,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:33:49,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:33:49,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:33:50,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:33:50,117.117 INFO    ] time= 25/10/2026 04:33:50
[2026-10-25 04:33:50,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:33:50,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:33:50,306.306 INFO    ] No existing commands found in stream
[2026-10-25 04:33:55,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:33:55,333.333 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 04:33:56,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:33:56,304.304 INFO    ] Checking for system updates...
[2026-10-25 04:33:56,346.346 INFO    ] 200
[2026-10-25 04:33:56,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:56,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:56,404.404 INFO    ] No update needed
[2026-10-25 04:33:56,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 04:33:56,441.441 INFO    ] 200
[2026-10-25 04:33:56,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:33:56,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:33:56,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:33:56,528.528 INFO    ] No camera update needed
[2026-10-25 04:33:56,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:33:56,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:33:56,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:33:56,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:33:58,582.582 INFO    ] ================================================
[2026-10-25 04:33:58,597.597 INFO    ] Launching Daemon at Sun Oct 25 04:33:58 IST 2026
[2026-10-25 04:33:58,608.608 INFO    ] ================================================
[2026-10-25 04:33:59,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:33:59
[2026-10-25 04:33:59,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:34:00,025.025 INFO    ] Initializing speech engine...
[2026-10-25 04:34:00,032.032 INFO    ] 2026-10-25 04:34:00
[2026-10-25 04:34:00,279.279 INFO    ] 2026-10-25 04:34:00
[2026-10-25 04:34:00,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:34:00,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:34:00,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:34:00,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:34:00,744.744 INFO    ] time= 25/10/2026 04:34:00
[2026-10-25 04:34:00,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:34:00,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:34:00,846.846 INFO    ] No existing commands found in stream
[2026-10-25 04:34:05,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:34:05,860.860 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 04:34:09,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:34:09,540.540 INFO    ] Checking for system updates...
[2026-10-25 04:34:09,580.580 INFO    ] 200
[2026-10-25 04:34:09,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:09,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:09,638.638 INFO    ] No update needed
[2026-10-25 04:34:09,640.640 INFO    ] Checking for camera pi updates...
[2026-10-25 04:34:09,677.677 INFO    ] 200
[2026-10-25 04:34:09,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:09,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:34:09,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:09,881.881 INFO    ] No camera update needed
[2026-10-25 04:34:09,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:34:09,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:34:09,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:34:09,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:34:11,938.938 INFO    ] ================================================
[2026-10-25 04:34:11,953.953 INFO    ] Launching Daemon at Sun Oct 25 04:34:11 IST 2026
[2026-10-25 04:34:11,964.964 INFO    ] ================================================
[2026-10-25 04:34:12,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:34:12
[2026-10-25 04:34:13,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:34:13,429.429 INFO    ] Initializing speech engine...
[2026-10-25 04:34:13,437.437 INFO    ] 2026-10-25 04:34:13
[2026-10-25 04:34:13,685.685 INFO    ] 2026-10-25 04:34:13
[2026-10-25 04:34:13,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:34:13,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:34:13,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:34:14,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:34:14,184.184 INFO    ] time= 25/10/2026 04:34:14
[2026-10-25 04:34:14,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:34:14,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:34:14,325.325 INFO    ] No existing commands found in stream
[2026-10-25 04:34:19,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:34:19,363.363 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 04:34:23,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:34:23,423.423 INFO    ] Checking for system updates...
[2026-10-25 04:34:23,462.462 INFO    ] 200
[2026-10-25 04:34:23,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:23,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:23,527.527 INFO    ] No update needed
[2026-10-25 04:34:23,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 04:34:23,566.566 INFO    ] 200
[2026-10-25 04:34:23,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:23,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:34:23,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:23,674.674 INFO    ] No camera update needed
[2026-10-25 04:34:23,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:34:23,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:34:23,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:34:23,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:34:25,732.732 INFO    ] ================================================
[2026-10-25 04:34:25,747.747 INFO    ] Launching Daemon at Sun Oct 25 04:34:25 IST 2026
[2026-10-25 04:34:25,758.758 INFO    ] ================================================
[2026-10-25 04:34:26,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:34:26
[2026-10-25 04:34:26,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:34:27,169.169 INFO    ] Initializing speech engine...
[2026-10-25 04:34:27,183.183 INFO    ] 2026-10-25 04:34:27
[2026-10-25 04:34:27,478.478 INFO    ] 2026-10-25 04:34:27
[2026-10-25 04:34:27,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:34:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:34:27,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:34:27,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:34:27,863.863 INFO    ] time= 25/10/2026 04:34:27
[2026-10-25 04:34:27,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:34:27,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:34:28,049.049 INFO    ] No existing commands found in stream
[2026-10-25 04:34:33,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:34:33,076.076 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 04:34:35,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:34:35,609.609 INFO    ] Checking for system updates...
[2026-10-25 04:34:35,647.647 INFO    ] 200
[2026-10-25 04:34:35,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:35,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:35,710.710 INFO    ] No update needed
[2026-10-25 04:34:35,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 04:34:35,749.749 INFO    ] 200
[2026-10-25 04:34:35,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:35,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:34:35,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:34:35,851.851 INFO    ] No camera update needed
[2026-10-25 04:34:35,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:34:35,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:34:35,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:34:35,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:34:37,907.907 INFO    ] ================================================
[2026-10-25 04:34:37,922.922 INFO    ] Launching Daemon at Sun Oct 25 04:34:37 IST 2026
[2026-10-25 04:34:37,933.933 INFO    ] ================================================
[2026-10-25 04:34:38,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:34:38
[2026-10-25 04:34:39,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:34:39,383.383 INFO    ] Initializing speech engine...
[2026-10-25 04:34:39,392.392 INFO    ] 2026-10-25 04:34:39
[2026-10-25 04:34:39,646.646 INFO    ] 2026-10-25 04:34:39
[2026-10-25 04:34:39,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:34:39,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:34:39,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:34:40,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:34:40,145.145 INFO    ] time= 25/10/2026 04:34:40
[2026-10-25 04:34:40,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:34:40,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:34:40,340.340 INFO    ] No existing commands found in stream
[2026-10-25 04:34:45,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:34:45,367.367 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 04:34:49,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:34:49,370.370 INFO    ] Checking for system updates...
[2026-10-25 04:34:49,408.408 INFO    ] 200
[2026-10-25 04:34:49,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:49,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:34:49,466.466 INFO    ] No update needed
[2026-10-25 04:34:49,469.469 INFO    ] Checking for camera pi updates...
[2026-10-25 04:34:49,507.507 INFO    ] 200
[2026-10-25 04:34:49,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:34:49,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:34:49,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:34:49,614.614 INFO    ] No camera update needed
[2026-10-25 04:34:49,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:34:49,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:34:49,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:34:49,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:34:51,673.673 INFO    ] ================================================
[2026-10-25 04:34:51,689.689 INFO    ] Launching Daemon at Sun Oct 25 04:34:51 IST 2026
[2026-10-25 04:34:51,700.700 INFO    ] ================================================
[2026-10-25 04:34:52,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:34:52
[2026-10-25 04:34:52,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:34:53,133.133 INFO    ] Initializing speech engine...
[2026-10-25 04:34:53,140.140 INFO    ] 2026-10-25 04:34:53
[2026-10-25 04:34:53,400.400 INFO    ] 2026-10-25 04:34:53
[2026-10-25 04:34:53,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:34:53,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:34:53,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:34:53,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:34:53,801.801 INFO    ] time= 25/10/2026 04:34:53
[2026-10-25 04:34:53,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:34:53,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:34:53,961.961 INFO    ] No existing commands found in stream
[2026-10-25 04:34:58,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:34:58,988.988 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 04:35:01,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:35:01,071.071 INFO    ] Checking for system updates...
[2026-10-25 04:35:01,107.107 INFO    ] 200
[2026-10-25 04:35:01,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:01,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:01,165.165 INFO    ] No update needed
[2026-10-25 04:35:01,168.168 INFO    ] Checking for camera pi updates...
[2026-10-25 04:35:01,202.202 INFO    ] 200
[2026-10-25 04:35:01,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:01,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:35:01,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:01,295.295 INFO    ] No camera update needed
[2026-10-25 04:35:01,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:35:01,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:35:01,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:35:01,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:35:03,352.352 INFO    ] ================================================
[2026-10-25 04:35:03,368.368 INFO    ] Launching Daemon at Sun Oct 25 04:35:03 IST 2026
[2026-10-25 04:35:03,378.378 INFO    ] ================================================
[2026-10-25 04:35:03,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:35:03
[2026-10-25 04:35:04,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:35:04,806.806 INFO    ] Initializing speech engine...
[2026-10-25 04:35:04,812.812 INFO    ] 2026-10-25 04:35:04
[2026-10-25 04:35:05,090.090 INFO    ] 2026-10-25 04:35:05
[2026-10-25 04:35:05,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:35:05,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:35:05,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:35:05,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:35:05,556.556 INFO    ] time= 25/10/2026 04:35:05
[2026-10-25 04:35:05,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:35:05,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:35:05,721.721 INFO    ] No existing commands found in stream
[2026-10-25 04:35:10,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:35:10,744.744 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 04:35:11,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:35:11,984.984 INFO    ] Checking for system updates...
[2026-10-25 04:35:12,019.019 INFO    ] 200
[2026-10-25 04:35:12,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:12,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:12,081.081 INFO    ] No update needed
[2026-10-25 04:35:12,084.084 INFO    ] Checking for camera pi updates...
[2026-10-25 04:35:12,121.121 INFO    ] 200
[2026-10-25 04:35:12,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:12,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:35:12,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:12,218.218 INFO    ] No camera update needed
[2026-10-25 04:35:12,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:35:12,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:35:12,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:35:12,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:35:14,274.274 INFO    ] ================================================
[2026-10-25 04:35:14,289.289 INFO    ] Launching Daemon at Sun Oct 25 04:35:14 IST 2026
[2026-10-25 04:35:14,300.300 INFO    ] ================================================
[2026-10-25 04:35:14,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:35:14
[2026-10-25 04:35:15,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:35:15,771.771 INFO    ] Initializing speech engine...
[2026-10-25 04:35:15,780.780 INFO    ] 2026-10-25 04:35:15
[2026-10-25 04:35:16,040.040 INFO    ] 2026-10-25 04:35:16
[2026-10-25 04:35:16,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:35:16,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:35:16,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:35:16,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:35:16,402.402 INFO    ] time= 25/10/2026 04:35:16
[2026-10-25 04:35:16,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:35:16,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:35:16,521.521 INFO    ] No existing commands found in stream
[2026-10-25 04:35:21,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:35:21,538.538 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 04:35:24,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:35:24,584.584 INFO    ] Checking for system updates...
[2026-10-25 04:35:24,620.620 INFO    ] 200
[2026-10-25 04:35:24,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:24,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:24,678.678 INFO    ] No update needed
[2026-10-25 04:35:24,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 04:35:24,714.714 INFO    ] 200
[2026-10-25 04:35:24,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:24,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:35:24,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:24,813.813 INFO    ] No camera update needed
[2026-10-25 04:35:24,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:35:24,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:35:24,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:35:24,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:35:26,868.868 INFO    ] ================================================
[2026-10-25 04:35:26,883.883 INFO    ] Launching Daemon at Sun Oct 25 04:35:26 IST 2026
[2026-10-25 04:35:26,895.895 INFO    ] ================================================
[2026-10-25 04:35:27,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:35:27
[2026-10-25 04:35:28,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:35:28,328.328 INFO    ] Initializing speech engine...
[2026-10-25 04:35:28,342.342 INFO    ] 2026-10-25 04:35:28
[2026-10-25 04:35:28,621.621 INFO    ] 2026-10-25 04:35:28
[2026-10-25 04:35:28,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:35:29,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:35:29,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:35:29,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:35:29,490.490 INFO    ] time= 25/10/2026 04:35:29
[2026-10-25 04:35:29,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:35:29,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:35:29,692.692 INFO    ] No existing commands found in stream
[2026-10-25 04:35:34,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:35:34,718.718 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 04:35:38,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:35:38,311.311 INFO    ] Checking for system updates...
[2026-10-25 04:35:38,349.349 INFO    ] 200
[2026-10-25 04:35:38,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:38,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:38,407.407 INFO    ] No update needed
[2026-10-25 04:35:38,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 04:35:38,443.443 INFO    ] 200
[2026-10-25 04:35:38,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:38,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:35:38,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:38,531.531 INFO    ] No camera update needed
[2026-10-25 04:35:38,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:35:38,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:35:38,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:35:38,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:35:40,586.586 INFO    ] ================================================
[2026-10-25 04:35:40,602.602 INFO    ] Launching Daemon at Sun Oct 25 04:35:40 IST 2026
[2026-10-25 04:35:40,613.613 INFO    ] ================================================
[2026-10-25 04:35:41,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:35:41
[2026-10-25 04:35:41,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:35:42,017.017 INFO    ] Initializing speech engine...
[2026-10-25 04:35:42,036.036 INFO    ] 2026-10-25 04:35:42
[2026-10-25 04:35:42,286.286 INFO    ] 2026-10-25 04:35:42
[2026-10-25 04:35:42,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:35:42,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:35:42,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:35:42,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:35:42,659.659 INFO    ] time= 25/10/2026 04:35:42
[2026-10-25 04:35:42,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:35:42,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:35:42,820.820 INFO    ] No existing commands found in stream
[2026-10-25 04:35:47,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:35:47,848.848 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 04:35:50,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:35:50,896.896 INFO    ] Checking for system updates...
[2026-10-25 04:35:50,934.934 INFO    ] 200
[2026-10-25 04:35:50,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:50,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:50,992.992 INFO    ] No update needed
[2026-10-25 04:35:50,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 04:35:51,028.028 INFO    ] 200
[2026-10-25 04:35:51,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:35:51,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:35:51,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:35:51,124.124 INFO    ] No camera update needed
[2026-10-25 04:35:51,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:35:51,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:35:51,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:35:51,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:35:53,179.179 INFO    ] ================================================
[2026-10-25 04:35:53,194.194 INFO    ] Launching Daemon at Sun Oct 25 04:35:53 IST 2026
[2026-10-25 04:35:53,205.205 INFO    ] ================================================
[2026-10-25 04:35:53,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:35:53
[2026-10-25 04:35:54,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:35:54,600.600 INFO    ] Initializing speech engine...
[2026-10-25 04:35:54,624.624 INFO    ] 2026-10-25 04:35:54
[2026-10-25 04:35:54,878.878 INFO    ] 2026-10-25 04:35:54
[2026-10-25 04:35:54,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:35:55,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:35:55,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:35:55,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:35:55,321.321 INFO    ] time= 25/10/2026 04:35:55
[2026-10-25 04:35:55,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:35:55,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:35:55,474.474 INFO    ] No existing commands found in stream
[2026-10-25 04:36:00,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:00,487.487 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 04:36:01,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:36:01,761.761 INFO    ] Checking for system updates...
[2026-10-25 04:36:01,835.835 INFO    ] 200
[2026-10-25 04:36:01,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:01,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:01,926.926 INFO    ] No update needed
[2026-10-25 04:36:01,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:01,977.977 INFO    ] 200
[2026-10-25 04:36:01,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:02,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:02,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:02,156.156 INFO    ] No camera update needed
[2026-10-25 04:36:02,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:02,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:02,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:02,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:36:04,226.226 INFO    ] ================================================
[2026-10-25 04:36:04,243.243 INFO    ] Launching Daemon at Sun Oct 25 04:36:04 IST 2026
[2026-10-25 04:36:04,254.254 INFO    ] ================================================
[2026-10-25 04:36:04,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:36:04
[2026-10-25 04:36:05,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:36:05,657.657 INFO    ] Initializing speech engine...
[2026-10-25 04:36:05,664.664 INFO    ] 2026-10-25 04:36:05
[2026-10-25 04:36:05,958.958 INFO    ] 2026-10-25 04:36:05
[2026-10-25 04:36:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:36:06,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:36:06,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:36:06,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:36:06,336.336 INFO    ] time= 25/10/2026 04:36:06
[2026-10-25 04:36:06,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:36:06,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:36:06,460.460 INFO    ] No existing commands found in stream
[2026-10-25 04:36:11,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:11,475.475 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 04:36:13,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:36:13,933.933 INFO    ] Checking for system updates...
[2026-10-25 04:36:13,973.973 INFO    ] 200
[2026-10-25 04:36:13,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:14,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:14,030.030 INFO    ] No update needed
[2026-10-25 04:36:14,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:14,069.069 INFO    ] 200
[2026-10-25 04:36:14,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:14,113.113 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:14,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:14,296.296 INFO    ] No camera update needed
[2026-10-25 04:36:14,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:14,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:14,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:14,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:36:16,351.351 INFO    ] ================================================
[2026-10-25 04:36:16,367.367 INFO    ] Launching Daemon at Sun Oct 25 04:36:16 IST 2026
[2026-10-25 04:36:16,378.378 INFO    ] ================================================
[2026-10-25 04:36:16,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:36:16
[2026-10-25 04:36:17,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:36:17,828.828 INFO    ] Initializing speech engine...
[2026-10-25 04:36:17,837.837 INFO    ] 2026-10-25 04:36:17
[2026-10-25 04:36:18,088.088 INFO    ] 2026-10-25 04:36:18
[2026-10-25 04:36:18,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:36:18,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:36:18,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:36:18,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:36:18,490.490 INFO    ] time= 25/10/2026 04:36:18
[2026-10-25 04:36:18,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:36:18,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:36:18,663.663 INFO    ] No existing commands found in stream
[2026-10-25 04:36:23,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:23,696.696 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 04:36:25,401.401 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:36:25,404.404 INFO    ] Checking for system updates...
[2026-10-25 04:36:25,445.445 INFO    ] 200
[2026-10-25 04:36:25,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:25,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:36:25,512.512 INFO    ] No update needed
[2026-10-25 04:36:25,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:25,552.552 INFO    ] 200
[2026-10-25 04:36:25,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:25,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:25,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:36:25,665.665 INFO    ] No camera update needed
[2026-10-25 04:36:25,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:25,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:25,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:25,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:36:27,732.732 INFO    ] ================================================
[2026-10-25 04:36:27,749.749 INFO    ] Launching Daemon at Sun Oct 25 04:36:27 IST 2026
[2026-10-25 04:36:27,761.761 INFO    ] ================================================
[2026-10-25 04:36:28,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:36:28
[2026-10-25 04:36:29,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:36:29,438.438 INFO    ] Initializing speech engine...
[2026-10-25 04:36:29,449.449 INFO    ] 2026-10-25 04:36:29
[2026-10-25 04:36:29,739.739 INFO    ] 2026-10-25 04:36:29
[2026-10-25 04:36:29,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:36:30,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:36:30,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:36:30,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:36:30,171.171 INFO    ] time= 25/10/2026 04:36:30
[2026-10-25 04:36:30,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:36:30,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:36:30,340.340 INFO    ] No existing commands found in stream
[2026-10-25 04:36:35,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:35,354.354 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 04:36:37,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:36:37,427.427 INFO    ] Checking for system updates...
[2026-10-25 04:36:37,469.469 INFO    ] 200
[2026-10-25 04:36:37,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:37,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:37,533.533 INFO    ] No update needed
[2026-10-25 04:36:37,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:37,572.572 INFO    ] 200
[2026-10-25 04:36:37,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:37,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:37,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:37,727.727 INFO    ] No camera update needed
[2026-10-25 04:36:37,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:37,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:37,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:37,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:36:39,782.782 INFO    ] ================================================
[2026-10-25 04:36:39,796.796 INFO    ] Launching Daemon at Sun Oct 25 04:36:39 IST 2026
[2026-10-25 04:36:39,807.807 INFO    ] ================================================
[2026-10-25 04:36:40,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:36:40
[2026-10-25 04:36:40,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:36:41,220.220 INFO    ] Initializing speech engine...
[2026-10-25 04:36:41,235.235 INFO    ] 2026-10-25 04:36:41
[2026-10-25 04:36:41,512.512 INFO    ] 2026-10-25 04:36:41
[2026-10-25 04:36:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:36:41,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:36:41,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:36:41,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:36:41,914.914 INFO    ] time= 25/10/2026 04:36:41
[2026-10-25 04:36:41,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:36:41,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:36:42,002.002 INFO    ] No existing commands found in stream
[2026-10-25 04:36:47,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:47,017.017 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 04:36:47,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:36:47,454.454 INFO    ] Checking for system updates...
[2026-10-25 04:36:47,490.490 INFO    ] 200
[2026-10-25 04:36:47,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:47,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:47,547.547 INFO    ] No update needed
[2026-10-25 04:36:47,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:47,583.583 INFO    ] 200
[2026-10-25 04:36:47,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:47,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:47,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:47,681.681 INFO    ] No camera update needed
[2026-10-25 04:36:47,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:47,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:47,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:47,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:36:49,737.737 INFO    ] ================================================
[2026-10-25 04:36:49,757.757 INFO    ] Launching Daemon at Sun Oct 25 04:36:49 IST 2026
[2026-10-25 04:36:49,768.768 INFO    ] ================================================
[2026-10-25 04:36:50,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:36:50
[2026-10-25 04:36:51,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:36:51,336.336 INFO    ] Initializing speech engine...
[2026-10-25 04:36:51,345.345 INFO    ] 2026-10-25 04:36:51
[2026-10-25 04:36:51,618.618 INFO    ] 2026-10-25 04:36:51
[2026-10-25 04:36:51,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:36:51,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:36:51,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:36:52,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:36:52,095.095 INFO    ] time= 25/10/2026 04:36:52
[2026-10-25 04:36:52,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:36:52,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:36:52,230.230 INFO    ] No existing commands found in stream
[2026-10-25 04:36:57,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:36:57,245.245 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 04:36:59,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:36:59,724.724 INFO    ] Checking for system updates...
[2026-10-25 04:36:59,761.761 INFO    ] 200
[2026-10-25 04:36:59,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:59,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:59,824.824 INFO    ] No update needed
[2026-10-25 04:36:59,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 04:36:59,859.859 INFO    ] 200
[2026-10-25 04:36:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:36:59,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:36:59,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:36:59,969.969 INFO    ] No camera update needed
[2026-10-25 04:36:59,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:36:59,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:36:59,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:36:59,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:37:02,035.035 INFO    ] ================================================
[2026-10-25 04:37:02,063.063 INFO    ] Launching Daemon at Sun Oct 25 04:37:02 IST 2026
[2026-10-25 04:37:02,078.078 INFO    ] ================================================
[2026-10-25 04:37:02,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:37:02
[2026-10-25 04:37:03,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:37:03,691.691 INFO    ] Initializing speech engine...
[2026-10-25 04:37:03,697.697 INFO    ] 2026-10-25 04:37:03
[2026-10-25 04:37:03,973.973 INFO    ] 2026-10-25 04:37:03
[2026-10-25 04:37:04,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:37:04,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:37:04,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:37:04,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:37:04,464.464 INFO    ] time= 25/10/2026 04:37:04
[2026-10-25 04:37:04,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:37:04,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:37:04,653.653 INFO    ] No existing commands found in stream
[2026-10-25 04:37:09,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:37:09,686.686 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 04:37:14,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:37:14,090.090 INFO    ] Checking for system updates...
[2026-10-25 04:37:14,126.126 INFO    ] 200
[2026-10-25 04:37:14,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:14,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:14,184.184 INFO    ] No update needed
[2026-10-25 04:37:14,186.186 INFO    ] Checking for camera pi updates...
[2026-10-25 04:37:14,220.220 INFO    ] 200
[2026-10-25 04:37:14,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:14,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:37:14,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:14,325.325 INFO    ] No camera update needed
[2026-10-25 04:37:14,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:37:14,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:37:14,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:37:14,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:37:16,381.381 INFO    ] ================================================
[2026-10-25 04:37:16,396.396 INFO    ] Launching Daemon at Sun Oct 25 04:37:16 IST 2026
[2026-10-25 04:37:16,407.407 INFO    ] ================================================
[2026-10-25 04:37:16,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:37:16
[2026-10-25 04:37:17,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:37:17,812.812 INFO    ] Initializing speech engine...
[2026-10-25 04:37:17,824.824 INFO    ] 2026-10-25 04:37:17
[2026-10-25 04:37:18,092.092 INFO    ] 2026-10-25 04:37:18
[2026-10-25 04:37:18,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:37:18,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:37:18,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:37:18,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:37:18,551.551 INFO    ] time= 25/10/2026 04:37:18
[2026-10-25 04:37:18,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:37:18,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:37:18,725.725 INFO    ] No existing commands found in stream
[2026-10-25 04:37:23,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:37:23,744.744 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 04:37:27,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:37:27,657.657 INFO    ] Checking for system updates...
[2026-10-25 04:37:27,695.695 INFO    ] 200
[2026-10-25 04:37:27,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:27,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:27,752.752 INFO    ] No update needed
[2026-10-25 04:37:27,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 04:37:27,788.788 INFO    ] 200
[2026-10-25 04:37:27,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:27,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:37:27,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:27,892.892 INFO    ] No camera update needed
[2026-10-25 04:37:27,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:37:27,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:37:27,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:37:27,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:37:29,948.948 INFO    ] ================================================
[2026-10-25 04:37:29,963.963 INFO    ] Launching Daemon at Sun Oct 25 04:37:29 IST 2026
[2026-10-25 04:37:29,973.973 INFO    ] ================================================
[2026-10-25 04:37:30,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:37:30
[2026-10-25 04:37:31,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:37:31,398.398 INFO    ] Initializing speech engine...
[2026-10-25 04:37:31,407.407 INFO    ] 2026-10-25 04:37:31
[2026-10-25 04:37:31,659.659 INFO    ] 2026-10-25 04:37:31
[2026-10-25 04:37:31,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:37:31,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:37:31,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:37:32,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:37:32,057.057 INFO    ] time= 25/10/2026 04:37:32
[2026-10-25 04:37:32,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:37:32,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:37:32,141.141 INFO    ] No existing commands found in stream
[2026-10-25 04:37:37,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:37:37,179.179 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 04:37:38,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:37:38,329.329 INFO    ] Checking for system updates...
[2026-10-25 04:37:38,365.365 INFO    ] 200
[2026-10-25 04:37:38,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:38,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:37:38,428.428 INFO    ] No update needed
[2026-10-25 04:37:38,431.431 INFO    ] Checking for camera pi updates...
[2026-10-25 04:37:38,470.470 INFO    ] 200
[2026-10-25 04:37:38,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:38,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:37:38,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:37:38,571.571 INFO    ] No camera update needed
[2026-10-25 04:37:38,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:37:38,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:37:38,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:37:38,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:37:40,626.626 INFO    ] ================================================
[2026-10-25 04:37:40,641.641 INFO    ] Launching Daemon at Sun Oct 25 04:37:40 IST 2026
[2026-10-25 04:37:40,652.652 INFO    ] ================================================
[2026-10-25 04:37:41,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:37:41
[2026-10-25 04:37:41,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:37:42,234.234 INFO    ] Initializing speech engine...
[2026-10-25 04:37:42,245.245 INFO    ] 2026-10-25 04:37:42
[2026-10-25 04:37:42,515.515 INFO    ] 2026-10-25 04:37:42
[2026-10-25 04:37:42,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:37:42,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:37:42,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:37:42,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:37:42,995.995 INFO    ] time= 25/10/2026 04:37:42
[2026-10-25 04:37:43,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:37:43,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:37:43,157.157 INFO    ] No existing commands found in stream
[2026-10-25 04:37:48,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:37:48,196.196 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 04:37:50,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:37:50,325.325 INFO    ] Checking for system updates...
[2026-10-25 04:37:50,361.361 INFO    ] 200
[2026-10-25 04:37:50,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:50,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:50,424.424 INFO    ] No update needed
[2026-10-25 04:37:50,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 04:37:50,465.465 INFO    ] 200
[2026-10-25 04:37:50,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:37:50,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:37:50,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:37:50,581.581 INFO    ] No camera update needed
[2026-10-25 04:37:50,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:37:50,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:37:50,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:37:50,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:37:52,636.636 INFO    ] ================================================
[2026-10-25 04:37:52,651.651 INFO    ] Launching Daemon at Sun Oct 25 04:37:52 IST 2026
[2026-10-25 04:37:52,661.661 INFO    ] ================================================
[2026-10-25 04:37:53,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:37:53
[2026-10-25 04:37:53,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:37:54,053.053 INFO    ] Initializing speech engine...
[2026-10-25 04:37:54,059.059 INFO    ] 2026-10-25 04:37:54
[2026-10-25 04:37:54,332.332 INFO    ] 2026-10-25 04:37:54
[2026-10-25 04:37:54,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:37:54,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:37:54,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:37:54,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:37:54,814.814 INFO    ] time= 25/10/2026 04:37:54
[2026-10-25 04:37:54,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:37:54,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:37:54,958.958 INFO    ] No existing commands found in stream
[2026-10-25 04:37:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:37:59,973.973 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 04:38:04,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:38:04,335.335 INFO    ] Checking for system updates...
[2026-10-25 04:38:04,373.373 INFO    ] 200
[2026-10-25 04:38:04,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:04,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:04,431.431 INFO    ] No update needed
[2026-10-25 04:38:04,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 04:38:04,469.469 INFO    ] 200
[2026-10-25 04:38:04,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:04,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:38:04,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:04,582.582 INFO    ] No camera update needed
[2026-10-25 04:38:04,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:38:04,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:38:04,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:38:04,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:38:06,637.637 INFO    ] ================================================
[2026-10-25 04:38:06,652.652 INFO    ] Launching Daemon at Sun Oct 25 04:38:06 IST 2026
[2026-10-25 04:38:06,662.662 INFO    ] ================================================
[2026-10-25 04:38:07,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:38:07
[2026-10-25 04:38:07,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:38:08,061.061 INFO    ] Initializing speech engine...
[2026-10-25 04:38:08,070.070 INFO    ] 2026-10-25 04:38:08
[2026-10-25 04:38:08,355.355 INFO    ] 2026-10-25 04:38:08
[2026-10-25 04:38:08,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:38:08,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:38:08,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:38:08,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:38:08,755.755 INFO    ] time= 25/10/2026 04:38:08
[2026-10-25 04:38:08,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:38:08,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:38:08,915.915 INFO    ] No existing commands found in stream
[2026-10-25 04:38:13,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:38:13,938.938 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 04:38:17,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:38:17,639.639 INFO    ] Checking for system updates...
[2026-10-25 04:38:17,678.678 INFO    ] 200
[2026-10-25 04:38:17,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:17,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:17,737.737 INFO    ] No update needed
[2026-10-25 04:38:17,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 04:38:17,777.777 INFO    ] 200
[2026-10-25 04:38:17,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:17,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:38:17,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:17,976.976 INFO    ] No camera update needed
[2026-10-25 04:38:17,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:38:17,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:38:17,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:38:17,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:38:20,033.033 INFO    ] ================================================
[2026-10-25 04:38:20,048.048 INFO    ] Launching Daemon at Sun Oct 25 04:38:20 IST 2026
[2026-10-25 04:38:20,058.058 INFO    ] ================================================
[2026-10-25 04:38:20,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:38:20
[2026-10-25 04:38:21,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:38:21,503.503 INFO    ] Initializing speech engine...
[2026-10-25 04:38:21,518.518 INFO    ] 2026-10-25 04:38:21
[2026-10-25 04:38:21,784.784 INFO    ] 2026-10-25 04:38:21
[2026-10-25 04:38:21,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:38:22,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:38:22,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:38:22,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:38:22,184.184 INFO    ] time= 25/10/2026 04:38:22
[2026-10-25 04:38:22,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:38:22,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:38:22,330.330 INFO    ] No existing commands found in stream
[2026-10-25 04:38:27,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:38:27,357.357 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 04:38:29,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:38:29,565.565 INFO    ] Checking for system updates...
[2026-10-25 04:38:29,605.605 INFO    ] 200
[2026-10-25 04:38:29,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:29,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:38:29,666.666 INFO    ] No update needed
[2026-10-25 04:38:29,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 04:38:29,705.705 INFO    ] 200
[2026-10-25 04:38:29,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:29,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:38:29,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:38:29,820.820 INFO    ] No camera update needed
[2026-10-25 04:38:29,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:38:29,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:38:29,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:38:29,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:38:31,878.878 INFO    ] ================================================
[2026-10-25 04:38:31,894.894 INFO    ] Launching Daemon at Sun Oct 25 04:38:31 IST 2026
[2026-10-25 04:38:31,905.905 INFO    ] ================================================
[2026-10-25 04:38:32,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:38:32
[2026-10-25 04:38:33,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:38:33,453.453 INFO    ] Initializing speech engine...
[2026-10-25 04:38:33,461.461 INFO    ] 2026-10-25 04:38:33
[2026-10-25 04:38:33,732.732 INFO    ] 2026-10-25 04:38:33
[2026-10-25 04:38:33,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:38:34,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:38:34,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:38:34,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:38:34,217.217 INFO    ] time= 25/10/2026 04:38:34
[2026-10-25 04:38:34,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:38:34,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:38:34,411.411 INFO    ] No existing commands found in stream
[2026-10-25 04:38:39,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:38:39,442.442 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 04:38:40,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:38:40,645.645 INFO    ] Checking for system updates...
[2026-10-25 04:38:40,698.698 INFO    ] 200
[2026-10-25 04:38:40,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:40,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:40,762.762 INFO    ] No update needed
[2026-10-25 04:38:40,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 04:38:40,804.804 INFO    ] 200
[2026-10-25 04:38:40,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:40,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:38:40,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:38:40,914.914 INFO    ] No camera update needed
[2026-10-25 04:38:40,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:38:40,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:38:40,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:38:40,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:38:42,970.970 INFO    ] ================================================
[2026-10-25 04:38:42,985.985 INFO    ] Launching Daemon at Sun Oct 25 04:38:42 IST 2026
[2026-10-25 04:38:43,996.996 INFO    ] ================================================
[2026-10-25 04:38:43,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:38:43
[2026-10-25 04:38:44,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:38:44,542.542 INFO    ] Initializing speech engine...
[2026-10-25 04:38:44,549.549 INFO    ] 2026-10-25 04:38:44
[2026-10-25 04:38:44,818.818 INFO    ] 2026-10-25 04:38:44
[2026-10-25 04:38:44,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:38:45,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:38:45,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:38:45,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:38:45,317.317 INFO    ] time= 25/10/2026 04:38:45
[2026-10-25 04:38:45,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:38:45,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:38:45,504.504 INFO    ] No existing commands found in stream
[2026-10-25 04:38:50,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:38:50,535.535 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 04:38:53,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:38:53,666.666 INFO    ] Checking for system updates...
[2026-10-25 04:38:53,703.703 INFO    ] 200
[2026-10-25 04:38:53,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:53,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:38:53,763.763 INFO    ] No update needed
[2026-10-25 04:38:53,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 04:38:53,799.799 INFO    ] 200
[2026-10-25 04:38:53,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:38:53,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:38:53,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:38:53,895.895 INFO    ] No camera update needed
[2026-10-25 04:38:53,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:38:53,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:38:53,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:38:53,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:38:55,954.954 INFO    ] ================================================
[2026-10-25 04:38:55,969.969 INFO    ] Launching Daemon at Sun Oct 25 04:38:55 IST 2026
[2026-10-25 04:38:55,980.980 INFO    ] ================================================
[2026-10-25 04:38:56,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:38:56
[2026-10-25 04:38:57,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:38:57,420.420 INFO    ] Initializing speech engine...
[2026-10-25 04:38:57,432.432 INFO    ] 2026-10-25 04:38:57
[2026-10-25 04:38:57,694.694 INFO    ] 2026-10-25 04:38:57
[2026-10-25 04:38:57,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:38:57,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:38:57,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:38:58,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:38:58,092.092 INFO    ] time= 25/10/2026 04:38:58
[2026-10-25 04:38:58,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:38:58,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:38:58,175.175 INFO    ] No existing commands found in stream
[2026-10-25 04:39:03,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:39:03,186.186 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 04:39:03,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:39:03,640.640 INFO    ] Checking for system updates...
[2026-10-25 04:39:03,679.679 INFO    ] 200
[2026-10-25 04:39:03,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:03,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:03,772.772 INFO    ] No update needed
[2026-10-25 04:39:03,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 04:39:03,808.808 INFO    ] 200
[2026-10-25 04:39:03,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:03,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:39:03,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:03,908.908 INFO    ] No camera update needed
[2026-10-25 04:39:03,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:39:03,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:39:03,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:39:03,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:39:05,964.964 INFO    ] ================================================
[2026-10-25 04:39:05,979.979 INFO    ] Launching Daemon at Sun Oct 25 04:39:05 IST 2026
[2026-10-25 04:39:05,991.991 INFO    ] ================================================
[2026-10-25 04:39:06,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:39:06
[2026-10-25 04:39:07,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:39:07,433.433 INFO    ] Initializing speech engine...
[2026-10-25 04:39:07,439.439 INFO    ] 2026-10-25 04:39:07
[2026-10-25 04:39:07,738.738 INFO    ] 2026-10-25 04:39:07
[2026-10-25 04:39:07,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:39:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:39:07,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:39:08,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:39:08,090.090 INFO    ] time= 25/10/2026 04:39:08
[2026-10-25 04:39:08,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:39:08,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:39:08,172.172 INFO    ] No existing commands found in stream
[2026-10-25 04:39:13,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:39:13,186.186 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 04:39:13,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:39:13,688.688 INFO    ] Checking for system updates...
[2026-10-25 04:39:13,728.728 INFO    ] 200
[2026-10-25 04:39:13,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:13,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:13,794.794 INFO    ] No update needed
[2026-10-25 04:39:13,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 04:39:13,832.832 INFO    ] 200
[2026-10-25 04:39:13,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:13,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:39:13,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:13,966.966 INFO    ] No camera update needed
[2026-10-25 04:39:13,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:39:13,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:39:13,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:39:13,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:39:16,023.023 INFO    ] ================================================
[2026-10-25 04:39:16,038.038 INFO    ] Launching Daemon at Sun Oct 25 04:39:16 IST 2026
[2026-10-25 04:39:16,050.050 INFO    ] ================================================
[2026-10-25 04:39:16,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:39:16
[2026-10-25 04:39:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:39:17,646.646 INFO    ] Initializing speech engine...
[2026-10-25 04:39:17,660.660 INFO    ] 2026-10-25 04:39:17
[2026-10-25 04:39:17,946.946 INFO    ] 2026-10-25 04:39:17
[2026-10-25 04:39:18,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:39:18,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:39:18,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:39:18,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:39:18,423.423 INFO    ] time= 25/10/2026 04:39:18
[2026-10-25 04:39:18,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:39:18,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:39:18,612.612 INFO    ] No existing commands found in stream
[2026-10-25 04:39:23,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:39:23,642.642 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 04:39:27,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:39:27,955.955 INFO    ] Checking for system updates...
[2026-10-25 04:39:27,993.993 INFO    ] 200
[2026-10-25 04:39:27,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:28,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:39:28,052.052 INFO    ] No update needed
[2026-10-25 04:39:28,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 04:39:28,090.090 INFO    ] 200
[2026-10-25 04:39:28,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:28,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:39:28,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:39:28,199.199 INFO    ] No camera update needed
[2026-10-25 04:39:28,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:39:28,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:39:28,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:39:28,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:39:30,258.258 INFO    ] ================================================
[2026-10-25 04:39:30,273.273 INFO    ] Launching Daemon at Sun Oct 25 04:39:30 IST 2026
[2026-10-25 04:39:30,284.284 INFO    ] ================================================
[2026-10-25 04:39:30,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:39:30
[2026-10-25 04:39:31,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:39:31,731.731 INFO    ] Initializing speech engine...
[2026-10-25 04:39:31,745.745 INFO    ] 2026-10-25 04:39:31
[2026-10-25 04:39:32,045.045 INFO    ] 2026-10-25 04:39:32
[2026-10-25 04:39:32,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:39:32,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:39:32,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:39:32,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:39:32,517.517 INFO    ] time= 25/10/2026 04:39:32
[2026-10-25 04:39:32,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:39:32,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:39:32,705.705 INFO    ] No existing commands found in stream
[2026-10-25 04:39:37,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:39:37,724.724 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 04:39:41,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:39:41,877.877 INFO    ] Checking for system updates...
[2026-10-25 04:39:41,914.914 INFO    ] 200
[2026-10-25 04:39:41,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:41,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:41,980.980 INFO    ] No update needed
[2026-10-25 04:39:41,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 04:39:42,022.022 INFO    ] 200
[2026-10-25 04:39:42,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:42,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:39:42,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:39:42,124.124 INFO    ] No camera update needed
[2026-10-25 04:39:42,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:39:42,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:39:42,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:39:42,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:39:44,183.183 INFO    ] ================================================
[2026-10-25 04:39:44,199.199 INFO    ] Launching Daemon at Sun Oct 25 04:39:44 IST 2026
[2026-10-25 04:39:44,210.210 INFO    ] ================================================
[2026-10-25 04:39:44,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:39:44
[2026-10-25 04:39:45,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:39:45,722.722 INFO    ] Initializing speech engine...
[2026-10-25 04:39:45,730.730 INFO    ] 2026-10-25 04:39:45
[2026-10-25 04:39:45,985.985 INFO    ] 2026-10-25 04:39:45
[2026-10-25 04:39:46,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:39:46,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:39:46,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:39:46,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:39:46,447.447 INFO    ] time= 25/10/2026 04:39:46
[2026-10-25 04:39:46,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:39:46,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:39:46,650.650 INFO    ] No existing commands found in stream
[2026-10-25 04:39:51,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:39:51,675.675 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 04:39:55,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:39:55,853.853 INFO    ] Checking for system updates...
[2026-10-25 04:39:55,889.889 INFO    ] 200
[2026-10-25 04:39:55,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:55,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:39:55,946.946 INFO    ] No update needed
[2026-10-25 04:39:55,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 04:39:55,988.988 INFO    ] 200
[2026-10-25 04:39:55,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:39:56,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:39:56,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:39:56,096.096 INFO    ] No camera update needed
[2026-10-25 04:39:56,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:39:56,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:39:56,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:39:56,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:39:58,152.152 INFO    ] ================================================
[2026-10-25 04:39:58,167.167 INFO    ] Launching Daemon at Sun Oct 25 04:39:58 IST 2026
[2026-10-25 04:39:58,178.178 INFO    ] ================================================
[2026-10-25 04:39:58,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:39:58
[2026-10-25 04:39:59,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:39:59,629.629 INFO    ] Initializing speech engine...
[2026-10-25 04:39:59,635.635 INFO    ] 2026-10-25 04:39:59
[2026-10-25 04:39:59,895.895 INFO    ] 2026-10-25 04:39:59
[2026-10-25 04:39:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:40:00,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:40:00,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:40:00,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:40:00,386.386 INFO    ] time= 25/10/2026 04:40:00
[2026-10-25 04:40:00,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:40:00,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:40:00,569.569 INFO    ] No existing commands found in stream
[2026-10-25 04:40:05,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:40:05,597.597 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 04:40:08,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:40:08,953.953 INFO    ] Checking for system updates...
[2026-10-25 04:40:08,989.989 INFO    ] 200
[2026-10-25 04:40:08,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:09,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:09,048.048 INFO    ] No update needed
[2026-10-25 04:40:09,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 04:40:09,085.085 INFO    ] 200
[2026-10-25 04:40:09,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:09,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:40:09,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:09,178.178 INFO    ] No camera update needed
[2026-10-25 04:40:09,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:40:09,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:40:09,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:40:09,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:40:11,234.234 INFO    ] ================================================
[2026-10-25 04:40:11,248.248 INFO    ] Launching Daemon at Sun Oct 25 04:40:11 IST 2026
[2026-10-25 04:40:11,259.259 INFO    ] ================================================
[2026-10-25 04:40:11,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:40:11
[2026-10-25 04:40:12,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:40:12,694.694 INFO    ] Initializing speech engine...
[2026-10-25 04:40:12,707.707 INFO    ] 2026-10-25 04:40:12
[2026-10-25 04:40:12,972.972 INFO    ] 2026-10-25 04:40:12
[2026-10-25 04:40:13,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:40:13,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:40:13,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:40:13,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:40:13,428.428 INFO    ] time= 25/10/2026 04:40:13
[2026-10-25 04:40:13,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:40:13,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:40:13,588.588 INFO    ] No existing commands found in stream
[2026-10-25 04:40:18,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:40:18,603.603 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 04:40:19,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:40:19,024.024 INFO    ] Checking for system updates...
[2026-10-25 04:40:19,060.060 INFO    ] 200
[2026-10-25 04:40:19,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:19,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:19,127.127 INFO    ] No update needed
[2026-10-25 04:40:19,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 04:40:19,164.164 INFO    ] 200
[2026-10-25 04:40:19,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:19,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:40:19,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:19,269.269 INFO    ] No camera update needed
[2026-10-25 04:40:19,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:40:19,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:40:19,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:40:19,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:40:21,324.324 INFO    ] ================================================
[2026-10-25 04:40:21,339.339 INFO    ] Launching Daemon at Sun Oct 25 04:40:21 IST 2026
[2026-10-25 04:40:21,350.350 INFO    ] ================================================
[2026-10-25 04:40:21,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:40:21
[2026-10-25 04:40:22,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:40:22,769.769 INFO    ] Initializing speech engine...
[2026-10-25 04:40:22,778.778 INFO    ] 2026-10-25 04:40:22
[2026-10-25 04:40:23,027.027 INFO    ] 2026-10-25 04:40:23
[2026-10-25 04:40:23,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:40:23,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:40:23,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:40:23,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:40:23,501.501 INFO    ] time= 25/10/2026 04:40:23
[2026-10-25 04:40:23,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:40:23,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:40:23,658.658 INFO    ] No existing commands found in stream
[2026-10-25 04:40:28,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:40:28,673.673 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 04:40:32,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:40:32,389.389 INFO    ] Checking for system updates...
[2026-10-25 04:40:32,433.433 INFO    ] 200
[2026-10-25 04:40:32,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:32,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:40:32,496.496 INFO    ] No update needed
[2026-10-25 04:40:32,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 04:40:32,539.539 INFO    ] 200
[2026-10-25 04:40:32,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:32,591.591 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:40:32,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:40:32,630.630 INFO    ] No camera update needed
[2026-10-25 04:40:32,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:40:32,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:40:32,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:40:32,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:40:34,689.689 INFO    ] ================================================
[2026-10-25 04:40:34,704.704 INFO    ] Launching Daemon at Sun Oct 25 04:40:34 IST 2026
[2026-10-25 04:40:34,715.715 INFO    ] ================================================
[2026-10-25 04:40:35,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:40:35
[2026-10-25 04:40:35,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:40:36,193.193 INFO    ] Initializing speech engine...
[2026-10-25 04:40:36,196.196 INFO    ] 2026-10-25 04:40:36
[2026-10-25 04:40:36,485.485 INFO    ] 2026-10-25 04:40:36
[2026-10-25 04:40:36,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:40:36,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:40:36,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:40:36,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:40:36,872.872 INFO    ] time= 25/10/2026 04:40:36
[2026-10-25 04:40:36,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:40:36,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:40:37,049.049 INFO    ] No existing commands found in stream
[2026-10-25 04:40:42,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:40:42,076.076 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 04:40:44,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:40:44,624.624 INFO    ] Checking for system updates...
[2026-10-25 04:40:44,662.662 INFO    ] 200
[2026-10-25 04:40:44,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:44,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:40:44,724.724 INFO    ] No update needed
[2026-10-25 04:40:44,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 04:40:44,760.760 INFO    ] 200
[2026-10-25 04:40:44,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:44,804.804 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:40:44,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:40:44,859.859 INFO    ] No camera update needed
[2026-10-25 04:40:44,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:40:44,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:40:44,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:40:44,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:40:46,916.916 INFO    ] ================================================
[2026-10-25 04:40:46,931.931 INFO    ] Launching Daemon at Sun Oct 25 04:40:46 IST 2026
[2026-10-25 04:40:46,942.942 INFO    ] ================================================
[2026-10-25 04:40:47,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:40:47
[2026-10-25 04:40:48,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:40:48,417.417 INFO    ] Initializing speech engine...
[2026-10-25 04:40:48,424.424 INFO    ] 2026-10-25 04:40:48
[2026-10-25 04:40:48,700.700 INFO    ] 2026-10-25 04:40:48
[2026-10-25 04:40:48,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:40:48,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:40:48,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:40:49,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:40:49,169.169 INFO    ] time= 25/10/2026 04:40:49
[2026-10-25 04:40:49,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:40:49,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:40:49,299.299 INFO    ] No existing commands found in stream
[2026-10-25 04:40:54,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:40:54,313.313 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 04:40:55,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:40:55,734.734 INFO    ] Checking for system updates...
[2026-10-25 04:40:55,774.774 INFO    ] 200
[2026-10-25 04:40:55,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:55,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:55,832.832 INFO    ] No update needed
[2026-10-25 04:40:55,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 04:40:55,868.868 INFO    ] 200
[2026-10-25 04:40:55,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:40:55,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:40:55,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:40:55,977.977 INFO    ] No camera update needed
[2026-10-25 04:40:55,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:40:55,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:40:55,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:40:55,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:40:58,033.033 INFO    ] ================================================
[2026-10-25 04:40:58,048.048 INFO    ] Launching Daemon at Sun Oct 25 04:40:58 IST 2026
[2026-10-25 04:40:58,059.059 INFO    ] ================================================
[2026-10-25 04:40:58,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:40:58
[2026-10-25 04:40:59,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:40:59,515.515 INFO    ] Initializing speech engine...
[2026-10-25 04:40:59,521.521 INFO    ] 2026-10-25 04:40:59
[2026-10-25 04:40:59,781.781 INFO    ] 2026-10-25 04:40:59
[2026-10-25 04:40:59,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:41:00,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:41:00,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:41:00,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:41:00,240.240 INFO    ] time= 25/10/2026 04:41:00
[2026-10-25 04:41:00,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:41:00,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:41:00,412.412 INFO    ] No existing commands found in stream
[2026-10-25 04:41:05,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:41:05,452.452 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 04:41:08,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:41:08,106.106 INFO    ] Checking for system updates...
[2026-10-25 04:41:08,143.143 INFO    ] 200
[2026-10-25 04:41:08,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:08,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:08,209.209 INFO    ] No update needed
[2026-10-25 04:41:08,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 04:41:08,246.246 INFO    ] 200
[2026-10-25 04:41:08,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:08,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:41:08,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:08,341.341 INFO    ] No camera update needed
[2026-10-25 04:41:08,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:41:08,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:41:08,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:41:08,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:41:10,401.401 INFO    ] ================================================
[2026-10-25 04:41:10,416.416 INFO    ] Launching Daemon at Sun Oct 25 04:41:10 IST 2026
[2026-10-25 04:41:10,427.427 INFO    ] ================================================
[2026-10-25 04:41:11,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:41:11
[2026-10-25 04:41:11,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:41:11,886.886 INFO    ] Initializing speech engine...
[2026-10-25 04:41:11,895.895 INFO    ] 2026-10-25 04:41:11
[2026-10-25 04:41:12,141.141 INFO    ] 2026-10-25 04:41:12
[2026-10-25 04:41:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:41:12,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:41:12,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:41:12,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:41:12,576.576 INFO    ] time= 25/10/2026 04:41:12
[2026-10-25 04:41:12,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:41:12,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:41:12,753.753 INFO    ] No existing commands found in stream
[2026-10-25 04:41:17,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:41:17,766.766 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 04:41:18,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:41:18,537.537 INFO    ] Checking for system updates...
[2026-10-25 04:41:18,573.573 INFO    ] 200
[2026-10-25 04:41:18,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:18,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:18,631.631 INFO    ] No update needed
[2026-10-25 04:41:18,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 04:41:18,672.672 INFO    ] 200
[2026-10-25 04:41:18,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:18,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:41:18,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:18,779.779 INFO    ] No camera update needed
[2026-10-25 04:41:18,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:41:18,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:41:18,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:41:18,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:41:20,835.835 INFO    ] ================================================
[2026-10-25 04:41:20,850.850 INFO    ] Launching Daemon at Sun Oct 25 04:41:20 IST 2026
[2026-10-25 04:41:20,861.861 INFO    ] ================================================
[2026-10-25 04:41:21,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:41:21
[2026-10-25 04:41:22,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:41:22,306.306 INFO    ] Initializing speech engine...
[2026-10-25 04:41:22,315.315 INFO    ] 2026-10-25 04:41:22
[2026-10-25 04:41:22,559.559 INFO    ] 2026-10-25 04:41:22
[2026-10-25 04:41:22,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:41:22,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:41:22,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:41:22,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:41:23,047.047 INFO    ] time= 25/10/2026 04:41:22
[2026-10-25 04:41:23,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:41:23,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:41:23,179.179 INFO    ] No existing commands found in stream
[2026-10-25 04:41:28,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:41:28,214.214 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 04:41:29,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:41:29,534.534 INFO    ] Checking for system updates...
[2026-10-25 04:41:29,570.570 INFO    ] 200
[2026-10-25 04:41:29,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:29,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:29,627.627 INFO    ] No update needed
[2026-10-25 04:41:29,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 04:41:29,669.669 INFO    ] 200
[2026-10-25 04:41:29,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:29,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:41:29,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:41:29,772.772 INFO    ] No camera update needed
[2026-10-25 04:41:29,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:41:29,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:41:29,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:41:29,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:41:31,830.830 INFO    ] ================================================
[2026-10-25 04:41:31,847.847 INFO    ] Launching Daemon at Sun Oct 25 04:41:31 IST 2026
[2026-10-25 04:41:31,858.858 INFO    ] ================================================
[2026-10-25 04:41:32,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:41:32
[2026-10-25 04:41:33,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:41:33,400.400 INFO    ] Initializing speech engine...
[2026-10-25 04:41:33,410.410 INFO    ] 2026-10-25 04:41:33
[2026-10-25 04:41:33,658.658 INFO    ] 2026-10-25 04:41:33
[2026-10-25 04:41:33,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:41:33,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:41:33,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:41:34,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:41:34,128.128 INFO    ] time= 25/10/2026 04:41:34
[2026-10-25 04:41:34,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:41:34,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:41:34,294.294 INFO    ] No existing commands found in stream
[2026-10-25 04:41:39,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:41:39,333.333 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 04:41:43,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:41:43,012.012 INFO    ] Checking for system updates...
[2026-10-25 04:41:43,055.055 INFO    ] 200
[2026-10-25 04:41:43,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:43,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:41:43,114.114 INFO    ] No update needed
[2026-10-25 04:41:43,116.116 INFO    ] Checking for camera pi updates...
[2026-10-25 04:41:43,155.155 INFO    ] 200
[2026-10-25 04:41:43,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:43,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:41:43,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:41:43,252.252 INFO    ] No camera update needed
[2026-10-25 04:41:43,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:41:43,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:41:43,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:41:43,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:41:45,309.309 INFO    ] ================================================
[2026-10-25 04:41:45,324.324 INFO    ] Launching Daemon at Sun Oct 25 04:41:45 IST 2026
[2026-10-25 04:41:45,335.335 INFO    ] ================================================
[2026-10-25 04:41:45,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:41:45
[2026-10-25 04:41:46,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:41:46,986.986 INFO    ] Initializing speech engine...
[2026-10-25 04:41:46,997.997 INFO    ] 2026-10-25 04:41:46
[2026-10-25 04:41:47,291.291 INFO    ] 2026-10-25 04:41:47
[2026-10-25 04:41:47,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:41:47,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:41:47,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:41:47,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:41:47,768.768 INFO    ] time= 25/10/2026 04:41:47
[2026-10-25 04:41:47,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:41:47,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:41:47,909.909 INFO    ] No existing commands found in stream
[2026-10-25 04:41:52,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:41:52,950.950 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 04:41:57,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:41:57,246.246 INFO    ] Checking for system updates...
[2026-10-25 04:41:57,283.283 INFO    ] 200
[2026-10-25 04:41:57,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:57,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:41:57,343.343 INFO    ] No update needed
[2026-10-25 04:41:57,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 04:41:57,381.381 INFO    ] 200
[2026-10-25 04:41:57,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:41:57,432.432 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:41:57,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:41:57,488.488 INFO    ] No camera update needed
[2026-10-25 04:41:57,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:41:57,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:41:57,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:41:57,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:41:59,548.548 INFO    ] ================================================
[2026-10-25 04:41:59,564.564 INFO    ] Launching Daemon at Sun Oct 25 04:41:59 IST 2026
[2026-10-25 04:41:59,574.574 INFO    ] ================================================
[2026-10-25 04:42:00,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:42:00
[2026-10-25 04:42:00,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:42:01,241.241 INFO    ] Initializing speech engine...
[2026-10-25 04:42:01,255.255 INFO    ] 2026-10-25 04:42:01
[2026-10-25 04:42:01,732.732 INFO    ] 2026-10-25 04:42:01
[2026-10-25 04:42:01,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:42:02,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:42:02,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:42:02,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:42:02,332.332 INFO    ] time= 25/10/2026 04:42:02
[2026-10-25 04:42:02,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:42:02,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:42:02,488.488 INFO    ] No existing commands found in stream
[2026-10-25 04:42:07,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:42:07,521.521 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 04:42:08,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:42:08,404.404 INFO    ] Checking for system updates...
[2026-10-25 04:42:08,439.439 INFO    ] 200
[2026-10-25 04:42:08,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:08,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:08,506.506 INFO    ] No update needed
[2026-10-25 04:42:08,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 04:42:08,546.546 INFO    ] 200
[2026-10-25 04:42:08,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:08,591.591 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:42:08,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:08,655.655 INFO    ] No camera update needed
[2026-10-25 04:42:08,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:42:08,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:42:08,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:42:08,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:42:10,709.709 INFO    ] ================================================
[2026-10-25 04:42:10,726.726 INFO    ] Launching Daemon at Sun Oct 25 04:42:10 IST 2026
[2026-10-25 04:42:10,737.737 INFO    ] ================================================
[2026-10-25 04:42:12,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:42:11
[2026-10-25 04:42:12,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:42:13,174.174 INFO    ] Initializing speech engine...
[2026-10-25 04:42:13,180.180 INFO    ] 2026-10-25 04:42:13
[2026-10-25 04:42:13,480.480 INFO    ] 2026-10-25 04:42:13
[2026-10-25 04:42:13,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:42:13,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:42:13,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:42:13,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:42:13,869.869 INFO    ] time= 25/10/2026 04:42:13
[2026-10-25 04:42:13,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:42:13,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:42:13,999.999 INFO    ] No existing commands found in stream
[2026-10-25 04:42:19,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:42:19,013.013 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 04:42:22,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:42:22,489.489 INFO    ] Checking for system updates...
[2026-10-25 04:42:22,527.527 INFO    ] 200
[2026-10-25 04:42:22,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:22,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:42:22,593.593 INFO    ] No update needed
[2026-10-25 04:42:22,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 04:42:22,630.630 INFO    ] 200
[2026-10-25 04:42:22,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:22,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:42:22,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:42:22,735.735 INFO    ] No camera update needed
[2026-10-25 04:42:22,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:42:22,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:42:22,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:42:22,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:42:24,792.792 INFO    ] ================================================
[2026-10-25 04:42:24,808.808 INFO    ] Launching Daemon at Sun Oct 25 04:42:24 IST 2026
[2026-10-25 04:42:24,820.820 INFO    ] ================================================
[2026-10-25 04:42:25,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:42:25
[2026-10-25 04:42:26,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:42:26,262.262 INFO    ] Initializing speech engine...
[2026-10-25 04:42:26,277.277 INFO    ] 2026-10-25 04:42:26
[2026-10-25 04:42:26,531.531 INFO    ] 2026-10-25 04:42:26
[2026-10-25 04:42:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:42:26,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:42:26,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:42:26,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:42:27,024.024 INFO    ] time= 25/10/2026 04:42:26
[2026-10-25 04:42:27,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:42:27,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:42:27,208.208 INFO    ] No existing commands found in stream
[2026-10-25 04:42:32,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:42:32,241.241 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 04:42:35,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:42:35,089.089 INFO    ] Checking for system updates...
[2026-10-25 04:42:35,125.125 INFO    ] 200
[2026-10-25 04:42:35,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:35,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:35,183.183 INFO    ] No update needed
[2026-10-25 04:42:35,186.186 INFO    ] Checking for camera pi updates...
[2026-10-25 04:42:35,219.219 INFO    ] 200
[2026-10-25 04:42:35,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:35,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:42:35,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:35,427.427 INFO    ] No camera update needed
[2026-10-25 04:42:35,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:42:35,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:42:35,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:42:35,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:42:37,483.483 INFO    ] ================================================
[2026-10-25 04:42:37,499.499 INFO    ] Launching Daemon at Sun Oct 25 04:42:37 IST 2026
[2026-10-25 04:42:37,510.510 INFO    ] ================================================
[2026-10-25 04:42:38,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:42:38
[2026-10-25 04:42:38,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:42:38,960.960 INFO    ] Initializing speech engine...
[2026-10-25 04:42:38,973.973 INFO    ] 2026-10-25 04:42:38
[2026-10-25 04:42:39,221.221 INFO    ] 2026-10-25 04:42:39
[2026-10-25 04:42:39,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:42:39,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:42:39,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:42:39,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:42:39,702.702 INFO    ] time= 25/10/2026 04:42:39
[2026-10-25 04:42:39,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:42:39,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:42:39,838.838 INFO    ] No existing commands found in stream
[2026-10-25 04:42:44,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:42:44,853.853 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 04:42:50,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:42:50,187.187 INFO    ] Checking for system updates...
[2026-10-25 04:42:50,225.225 INFO    ] 200
[2026-10-25 04:42:50,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:50,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:50,284.284 INFO    ] No update needed
[2026-10-25 04:42:50,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 04:42:50,325.325 INFO    ] 200
[2026-10-25 04:42:50,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:42:50,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:42:50,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:42:50,425.425 INFO    ] No camera update needed
[2026-10-25 04:42:50,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:42:50,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:42:50,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:42:50,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:42:52,482.482 INFO    ] ================================================
[2026-10-25 04:42:52,499.499 INFO    ] Launching Daemon at Sun Oct 25 04:42:52 IST 2026
[2026-10-25 04:42:52,514.514 INFO    ] ================================================
[2026-10-25 04:42:53,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:42:53
[2026-10-25 04:42:53,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:42:53,969.969 INFO    ] Initializing speech engine...
[2026-10-25 04:42:53,978.978 INFO    ] 2026-10-25 04:42:53
[2026-10-25 04:42:54,235.235 INFO    ] 2026-10-25 04:42:54
[2026-10-25 04:42:54,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:42:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:42:54,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:42:54,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:42:54,688.688 INFO    ] time= 25/10/2026 04:42:54
[2026-10-25 04:42:54,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:42:54,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:42:54,844.844 INFO    ] No existing commands found in stream
[2026-10-25 04:42:59,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:42:59,872.872 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 04:43:00,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:43:00,479.479 INFO    ] Checking for system updates...
[2026-10-25 04:43:00,516.516 INFO    ] 200
[2026-10-25 04:43:00,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:00,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:00,582.582 INFO    ] No update needed
[2026-10-25 04:43:00,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 04:43:00,624.624 INFO    ] 200
[2026-10-25 04:43:00,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:00,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:43:00,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:00,723.723 INFO    ] No camera update needed
[2026-10-25 04:43:00,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:43:00,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:43:00,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:43:00,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:43:02,788.788 INFO    ] ================================================
[2026-10-25 04:43:02,811.811 INFO    ] Launching Daemon at Sun Oct 25 04:43:02 IST 2026
[2026-10-25 04:43:02,828.828 INFO    ] ================================================
[2026-10-25 04:43:03,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:43:03
[2026-10-25 04:43:04,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:43:04,361.361 INFO    ] Initializing speech engine...
[2026-10-25 04:43:04,370.370 INFO    ] 2026-10-25 04:43:04
[2026-10-25 04:43:04,654.654 INFO    ] 2026-10-25 04:43:04
[2026-10-25 04:43:04,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:43:04,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:43:04,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:43:05,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:43:05,126.126 INFO    ] time= 25/10/2026 04:43:05
[2026-10-25 04:43:05,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:43:05,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:43:05,270.270 INFO    ] No existing commands found in stream
[2026-10-25 04:43:10,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:43:10,285.285 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 04:43:12,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:43:12,418.418 INFO    ] Checking for system updates...
[2026-10-25 04:43:12,454.454 INFO    ] 200
[2026-10-25 04:43:12,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:12,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:43:12,512.512 INFO    ] No update needed
[2026-10-25 04:43:12,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 04:43:12,548.548 INFO    ] 200
[2026-10-25 04:43:12,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:12,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:43:12,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:43:12,643.643 INFO    ] No camera update needed
[2026-10-25 04:43:12,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:43:12,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:43:12,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:43:12,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:43:14,697.697 INFO    ] ================================================
[2026-10-25 04:43:14,713.713 INFO    ] Launching Daemon at Sun Oct 25 04:43:14 IST 2026
[2026-10-25 04:43:14,724.724 INFO    ] ================================================
[2026-10-25 04:43:15,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:43:15
[2026-10-25 04:43:15,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:43:16,174.174 INFO    ] Initializing speech engine...
[2026-10-25 04:43:16,183.183 INFO    ] 2026-10-25 04:43:16
[2026-10-25 04:43:16,429.429 INFO    ] 2026-10-25 04:43:16
[2026-10-25 04:43:16,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:43:16,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:43:16,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:43:16,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:43:16,896.896 INFO    ] time= 25/10/2026 04:43:16
[2026-10-25 04:43:16,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:43:16,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:43:17,049.049 INFO    ] No existing commands found in stream
[2026-10-25 04:43:22,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:43:22,064.064 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 04:43:26,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:43:26,173.173 INFO    ] Checking for system updates...
[2026-10-25 04:43:26,210.210 INFO    ] 200
[2026-10-25 04:43:26,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:26,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:26,269.269 INFO    ] No update needed
[2026-10-25 04:43:26,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 04:43:26,309.309 INFO    ] 200
[2026-10-25 04:43:26,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:26,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:43:26,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:26,411.411 INFO    ] No camera update needed
[2026-10-25 04:43:26,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:43:26,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:43:26,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:43:26,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:43:28,467.467 INFO    ] ================================================
[2026-10-25 04:43:28,483.483 INFO    ] Launching Daemon at Sun Oct 25 04:43:28 IST 2026
[2026-10-25 04:43:28,493.493 INFO    ] ================================================
[2026-10-25 04:43:29,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:43:29
[2026-10-25 04:43:29,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:43:29,906.906 INFO    ] Initializing speech engine...
[2026-10-25 04:43:29,929.929 INFO    ] 2026-10-25 04:43:29
[2026-10-25 04:43:30,184.184 INFO    ] 2026-10-25 04:43:30
[2026-10-25 04:43:30,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:43:30,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:43:30,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:43:30,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:43:30,597.597 INFO    ] time= 25/10/2026 04:43:30
[2026-10-25 04:43:30,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:43:30,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:43:30,768.768 INFO    ] No existing commands found in stream
[2026-10-25 04:43:35,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:43:35,796.796 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 04:43:38,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:43:38,942.942 INFO    ] Checking for system updates...
[2026-10-25 04:43:38,978.978 INFO    ] 200
[2026-10-25 04:43:38,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:39,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:43:39,035.035 INFO    ] No update needed
[2026-10-25 04:43:39,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 04:43:39,071.071 INFO    ] 200
[2026-10-25 04:43:39,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:39,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:43:39,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:43:39,175.175 INFO    ] No camera update needed
[2026-10-25 04:43:39,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:43:39,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:43:39,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:43:39,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:43:41,231.231 INFO    ] ================================================
[2026-10-25 04:43:41,247.247 INFO    ] Launching Daemon at Sun Oct 25 04:43:41 IST 2026
[2026-10-25 04:43:41,258.258 INFO    ] ================================================
[2026-10-25 04:43:41,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:43:41
[2026-10-25 04:43:42,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:43:42,711.711 INFO    ] Initializing speech engine...
[2026-10-25 04:43:42,722.722 INFO    ] 2026-10-25 04:43:42
[2026-10-25 04:43:42,969.969 INFO    ] 2026-10-25 04:43:42
[2026-10-25 04:43:43,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:43:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:43:43,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:43:43,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:43:43,455.455 INFO    ] time= 25/10/2026 04:43:43
[2026-10-25 04:43:43,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:43:43,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:43:43,655.655 INFO    ] No existing commands found in stream
[2026-10-25 04:43:48,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:43:48,686.686 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 04:43:50,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:43:50,947.947 INFO    ] Checking for system updates...
[2026-10-25 04:43:50,984.984 INFO    ] 200
[2026-10-25 04:43:50,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:51,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:51,044.044 INFO    ] No update needed
[2026-10-25 04:43:51,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 04:43:51,080.080 INFO    ] 200
[2026-10-25 04:43:51,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:43:51,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:43:51,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:43:51,176.176 INFO    ] No camera update needed
[2026-10-25 04:43:51,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:43:51,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:43:51,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:43:51,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:43:53,231.231 INFO    ] ================================================
[2026-10-25 04:43:53,247.247 INFO    ] Launching Daemon at Sun Oct 25 04:43:53 IST 2026
[2026-10-25 04:43:53,258.258 INFO    ] ================================================
[2026-10-25 04:43:53,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:43:53
[2026-10-25 04:43:54,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:43:54,647.647 INFO    ] Initializing speech engine...
[2026-10-25 04:43:54,655.655 INFO    ] 2026-10-25 04:43:54
[2026-10-25 04:43:54,929.929 INFO    ] 2026-10-25 04:43:54
[2026-10-25 04:43:54,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:43:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:43:55,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:43:55,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:43:55,411.411 INFO    ] time= 25/10/2026 04:43:55
[2026-10-25 04:43:55,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:43:55,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:43:55,559.559 INFO    ] No existing commands found in stream
[2026-10-25 04:44:00,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:00,574.574 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 04:44:01,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:44:01,622.622 INFO    ] Checking for system updates...
[2026-10-25 04:44:01,658.658 INFO    ] 200
[2026-10-25 04:44:01,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:01,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:01,758.758 INFO    ] No update needed
[2026-10-25 04:44:01,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:01,852.852 INFO    ] 200
[2026-10-25 04:44:01,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:01,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:02,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:02,030.030 INFO    ] No camera update needed
[2026-10-25 04:44:02,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:02,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:02,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:02,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:04,096.096 INFO    ] ================================================
[2026-10-25 04:44:04,112.112 INFO    ] Launching Daemon at Sun Oct 25 04:44:04 IST 2026
[2026-10-25 04:44:04,122.122 INFO    ] ================================================
[2026-10-25 04:44:04,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:44:04
[2026-10-25 04:44:05,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:44:05,668.668 INFO    ] Initializing speech engine...
[2026-10-25 04:44:05,677.677 INFO    ] 2026-10-25 04:44:05
[2026-10-25 04:44:05,923.923 INFO    ] 2026-10-25 04:44:05
[2026-10-25 04:44:05,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:44:06,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:44:06,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:44:06,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:44:06,392.392 INFO    ] time= 25/10/2026 04:44:06
[2026-10-25 04:44:06,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:44:06,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:44:06,538.538 INFO    ] No existing commands found in stream
[2026-10-25 04:44:11,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:11,553.553 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 04:44:13,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:44:13,984.984 INFO    ] Checking for system updates...
[2026-10-25 04:44:14,021.021 INFO    ] 200
[2026-10-25 04:44:14,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:14,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:14,081.081 INFO    ] No update needed
[2026-10-25 04:44:14,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:14,118.118 INFO    ] 200
[2026-10-25 04:44:14,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:14,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:14,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:14,216.216 INFO    ] No camera update needed
[2026-10-25 04:44:14,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:14,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:14,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:14,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:16,280.280 INFO    ] ================================================
[2026-10-25 04:44:16,296.296 INFO    ] Launching Daemon at Sun Oct 25 04:44:16 IST 2026
[2026-10-25 04:44:16,307.307 INFO    ] ================================================
[2026-10-25 04:44:16,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:44:16
[2026-10-25 04:44:17,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:44:17,916.916 INFO    ] Initializing speech engine...
[2026-10-25 04:44:17,928.928 INFO    ] 2026-10-25 04:44:17
[2026-10-25 04:44:18,194.194 INFO    ] 2026-10-25 04:44:18
[2026-10-25 04:44:18,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:44:18,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:44:18,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:44:18,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:44:18,725.725 INFO    ] time= 25/10/2026 04:44:18
[2026-10-25 04:44:18,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:44:18,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:44:18,863.863 INFO    ] No existing commands found in stream
[2026-10-25 04:44:23,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:23,890.890 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 04:44:25,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:44:25,254.254 INFO    ] Checking for system updates...
[2026-10-25 04:44:25,292.292 INFO    ] 200
[2026-10-25 04:44:25,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:25,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:25,351.351 INFO    ] No update needed
[2026-10-25 04:44:25,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:25,389.389 INFO    ] 200
[2026-10-25 04:44:25,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:25,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:25,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:25,488.488 INFO    ] No camera update needed
[2026-10-25 04:44:25,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:25,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:25,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:25,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:27,546.546 INFO    ] ================================================
[2026-10-25 04:44:27,561.561 INFO    ] Launching Daemon at Sun Oct 25 04:44:27 IST 2026
[2026-10-25 04:44:27,571.571 INFO    ] ================================================
[2026-10-25 04:44:28,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:44:28
[2026-10-25 04:44:28,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:44:28,995.995 INFO    ] Initializing speech engine...
[2026-10-25 04:44:29,004.004 INFO    ] 2026-10-25 04:44:28
[2026-10-25 04:44:29,300.300 INFO    ] 2026-10-25 04:44:29
[2026-10-25 04:44:29,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:44:29,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:44:29,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:44:29,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:44:29,656.656 INFO    ] time= 25/10/2026 04:44:29
[2026-10-25 04:44:29,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:44:29,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:44:29,742.742 INFO    ] No existing commands found in stream
[2026-10-25 04:44:34,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:34,780.780 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 04:44:36,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:44:36,852.852 INFO    ] Checking for system updates...
[2026-10-25 04:44:36,892.892 INFO    ] 200
[2026-10-25 04:44:36,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:36,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:44:36,950.950 INFO    ] No update needed
[2026-10-25 04:44:36,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:36,991.991 INFO    ] 200
[2026-10-25 04:44:36,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:37,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:37,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:44:37,163.163 INFO    ] No camera update needed
[2026-10-25 04:44:37,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:37,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:37,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:37,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:39,218.218 INFO    ] ================================================
[2026-10-25 04:44:39,234.234 INFO    ] Launching Daemon at Sun Oct 25 04:44:39 IST 2026
[2026-10-25 04:44:39,244.244 INFO    ] ================================================
[2026-10-25 04:44:39,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:44:39
[2026-10-25 04:44:40,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:44:40,649.649 INFO    ] Initializing speech engine...
[2026-10-25 04:44:40,657.657 INFO    ] 2026-10-25 04:44:40
[2026-10-25 04:44:40,955.955 INFO    ] 2026-10-25 04:44:40
[2026-10-25 04:44:40,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:44:41,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:44:41,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:44:41,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:44:41,351.351 INFO    ] time= 25/10/2026 04:44:41
[2026-10-25 04:44:41,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:44:41,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:44:41,467.467 INFO    ] No existing commands found in stream
[2026-10-25 04:44:46,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:46,482.482 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 04:44:46,900.900 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:44:46,903.903 INFO    ] Checking for system updates...
[2026-10-25 04:44:46,938.938 INFO    ] 200
[2026-10-25 04:44:46,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:46,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:46,996.996 INFO    ] No update needed
[2026-10-25 04:44:46,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:47,031.031 INFO    ] 200
[2026-10-25 04:44:47,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:47,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:47,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:44:47,242.242 INFO    ] No camera update needed
[2026-10-25 04:44:47,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:47,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:47,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:47,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:49,297.297 INFO    ] ================================================
[2026-10-25 04:44:49,312.312 INFO    ] Launching Daemon at Sun Oct 25 04:44:49 IST 2026
[2026-10-25 04:44:49,323.323 INFO    ] ================================================
[2026-10-25 04:44:49,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:44:49
[2026-10-25 04:44:50,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:44:50,729.729 INFO    ] Initializing speech engine...
[2026-10-25 04:44:50,743.743 INFO    ] 2026-10-25 04:44:50
[2026-10-25 04:44:51,004.004 INFO    ] 2026-10-25 04:44:50
[2026-10-25 04:44:51,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:44:51,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:44:51,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:44:51,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:44:51,369.369 INFO    ] time= 25/10/2026 04:44:51
[2026-10-25 04:44:51,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:44:51,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:44:51,544.544 INFO    ] No existing commands found in stream
[2026-10-25 04:44:56,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:44:56,572.572 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 04:44:57,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:44:57,642.642 INFO    ] Checking for system updates...
[2026-10-25 04:44:57,682.682 INFO    ] 200
[2026-10-25 04:44:57,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:57,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:44:57,739.739 INFO    ] No update needed
[2026-10-25 04:44:57,742.742 INFO    ] Checking for camera pi updates...
[2026-10-25 04:44:57,776.776 INFO    ] 200
[2026-10-25 04:44:57,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:44:57,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:44:57,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:44:57,874.874 INFO    ] No camera update needed
[2026-10-25 04:44:57,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:44:57,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:44:57,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:44:57,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:44:59,931.931 INFO    ] ================================================
[2026-10-25 04:44:59,952.952 INFO    ] Launching Daemon at Sun Oct 25 04:44:59 IST 2026
[2026-10-25 04:44:59,963.963 INFO    ] ================================================
[2026-10-25 04:45:00,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:45:00
[2026-10-25 04:45:01,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:45:01,390.390 INFO    ] Initializing speech engine...
[2026-10-25 04:45:01,399.399 INFO    ] 2026-10-25 04:45:01
[2026-10-25 04:45:01,646.646 INFO    ] 2026-10-25 04:45:01
[2026-10-25 04:45:01,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:45:01,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:45:01,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:45:02,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:45:02,064.064 INFO    ] time= 25/10/2026 04:45:02
[2026-10-25 04:45:02,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:45:02,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:45:02,182.182 INFO    ] No existing commands found in stream
[2026-10-25 04:45:07,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:45:07,196.196 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 04:45:10,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:45:10,287.287 INFO    ] Checking for system updates...
[2026-10-25 04:45:10,323.323 INFO    ] 200
[2026-10-25 04:45:10,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:10,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:10,380.380 INFO    ] No update needed
[2026-10-25 04:45:10,383.383 INFO    ] Checking for camera pi updates...
[2026-10-25 04:45:10,417.417 INFO    ] 200
[2026-10-25 04:45:10,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:10,459.459 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:45:10,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:10,494.494 INFO    ] No camera update needed
[2026-10-25 04:45:10,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:45:10,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:45:10,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:45:10,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:45:12,551.551 INFO    ] ================================================
[2026-10-25 04:45:12,567.567 INFO    ] Launching Daemon at Sun Oct 25 04:45:12 IST 2026
[2026-10-25 04:45:12,578.578 INFO    ] ================================================
[2026-10-25 04:45:13,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:45:13
[2026-10-25 04:45:13,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:45:14,029.029 INFO    ] Initializing speech engine...
[2026-10-25 04:45:14,047.047 INFO    ] 2026-10-25 04:45:14
[2026-10-25 04:45:14,312.312 INFO    ] 2026-10-25 04:45:14
[2026-10-25 04:45:14,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:45:14,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:45:14,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:45:14,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:45:14,697.697 INFO    ] time= 25/10/2026 04:45:14
[2026-10-25 04:45:14,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:45:14,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:45:14,812.812 INFO    ] No existing commands found in stream
[2026-10-25 04:45:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:45:19,830.830 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 04:45:23,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:45:23,263.263 INFO    ] Checking for system updates...
[2026-10-25 04:45:23,302.302 INFO    ] 200
[2026-10-25 04:45:23,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:23,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:23,359.359 INFO    ] No update needed
[2026-10-25 04:45:23,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 04:45:23,399.399 INFO    ] 200
[2026-10-25 04:45:23,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:23,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:45:23,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:23,502.502 INFO    ] No camera update needed
[2026-10-25 04:45:23,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:45:23,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:45:23,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:45:23,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:45:25,557.557 INFO    ] ================================================
[2026-10-25 04:45:25,573.573 INFO    ] Launching Daemon at Sun Oct 25 04:45:25 IST 2026
[2026-10-25 04:45:25,584.584 INFO    ] ================================================
[2026-10-25 04:45:26,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:45:26
[2026-10-25 04:45:26,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:45:26,990.990 INFO    ] Initializing speech engine...
[2026-10-25 04:45:27,009.009 INFO    ] 2026-10-25 04:45:27
[2026-10-25 04:45:27,256.256 INFO    ] 2026-10-25 04:45:27
[2026-10-25 04:45:27,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:45:27,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:45:27,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:45:27,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:45:27,723.723 INFO    ] time= 25/10/2026 04:45:27
[2026-10-25 04:45:27,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:45:27,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:45:27,881.881 INFO    ] No existing commands found in stream
[2026-10-25 04:45:32,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:45:32,904.904 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 04:45:34,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:45:34,386.386 INFO    ] Checking for system updates...
[2026-10-25 04:45:34,422.422 INFO    ] 200
[2026-10-25 04:45:34,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:34,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:45:34,480.480 INFO    ] No update needed
[2026-10-25 04:45:34,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 04:45:34,519.519 INFO    ] 200
[2026-10-25 04:45:34,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:34,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:45:34,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:45:34,615.615 INFO    ] No camera update needed
[2026-10-25 04:45:34,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:45:34,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:45:34,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:45:34,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:45:36,672.672 INFO    ] ================================================
[2026-10-25 04:45:36,688.688 INFO    ] Launching Daemon at Sun Oct 25 04:45:36 IST 2026
[2026-10-25 04:45:36,698.698 INFO    ] ================================================
[2026-10-25 04:45:37,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:45:37
[2026-10-25 04:45:37,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:45:38,113.113 INFO    ] Initializing speech engine...
[2026-10-25 04:45:38,119.119 INFO    ] 2026-10-25 04:45:38
[2026-10-25 04:45:38,415.415 INFO    ] 2026-10-25 04:45:38
[2026-10-25 04:45:38,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:45:38,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:45:38,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:45:38,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:45:38,795.795 INFO    ] time= 25/10/2026 04:45:38
[2026-10-25 04:45:38,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:45:38,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:45:38,920.920 INFO    ] No existing commands found in stream
[2026-10-25 04:45:43,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:45:43,935.935 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 04:45:45,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:45:45,517.517 INFO    ] Checking for system updates...
[2026-10-25 04:45:45,554.554 INFO    ] 200
[2026-10-25 04:45:45,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:45,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:45,620.620 INFO    ] No update needed
[2026-10-25 04:45:45,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 04:45:45,663.663 INFO    ] 200
[2026-10-25 04:45:45,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:45,711.711 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:45:45,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:45:45,767.767 INFO    ] No camera update needed
[2026-10-25 04:45:45,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:45:45,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:45:45,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:45:45,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:45:47,825.825 INFO    ] ================================================
[2026-10-25 04:45:47,841.841 INFO    ] Launching Daemon at Sun Oct 25 04:45:47 IST 2026
[2026-10-25 04:45:47,851.851 INFO    ] ================================================
[2026-10-25 04:45:48,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:45:48
[2026-10-25 04:45:49,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:45:49,460.460 INFO    ] Initializing speech engine...
[2026-10-25 04:45:49,468.468 INFO    ] 2026-10-25 04:45:49
[2026-10-25 04:45:49,736.736 INFO    ] 2026-10-25 04:45:49
[2026-10-25 04:45:49,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:45:49,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:45:49,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:45:50,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:45:50,200.200 INFO    ] time= 25/10/2026 04:45:50
[2026-10-25 04:45:50,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:45:50,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:45:50,433.433 INFO    ] No existing commands found in stream
[2026-10-25 04:45:55,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:45:55,467.467 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 04:45:59,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:45:59,536.536 INFO    ] Checking for system updates...
[2026-10-25 04:45:59,574.574 INFO    ] 200
[2026-10-25 04:45:59,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:59,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:45:59,640.640 INFO    ] No update needed
[2026-10-25 04:45:59,643.643 INFO    ] Checking for camera pi updates...
[2026-10-25 04:45:59,679.679 INFO    ] 200
[2026-10-25 04:45:59,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:45:59,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:45:59,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:45:59,778.778 INFO    ] No camera update needed
[2026-10-25 04:45:59,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:45:59,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:45:59,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:45:59,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:46:01,842.842 INFO    ] ================================================
[2026-10-25 04:46:01,864.864 INFO    ] Launching Daemon at Sun Oct 25 04:46:01 IST 2026
[2026-10-25 04:46:01,880.880 INFO    ] ================================================
[2026-10-25 04:46:02,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:46:02
[2026-10-25 04:46:03,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:46:03,578.578 INFO    ] Initializing speech engine...
[2026-10-25 04:46:03,589.589 INFO    ] 2026-10-25 04:46:03
[2026-10-25 04:46:03,858.858 INFO    ] 2026-10-25 04:46:03
[2026-10-25 04:46:03,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:46:04,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:46:04,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:46:04,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:46:04,341.341 INFO    ] time= 25/10/2026 04:46:04
[2026-10-25 04:46:04,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:46:04,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:46:04,485.485 INFO    ] No existing commands found in stream
[2026-10-25 04:46:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:46:09,520.520 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 04:46:10,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:46:10,950.950 INFO    ] Checking for system updates...
[2026-10-25 04:46:10,987.987 INFO    ] 200
[2026-10-25 04:46:10,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:11,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:11,051.051 INFO    ] No update needed
[2026-10-25 04:46:11,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 04:46:11,089.089 INFO    ] 200
[2026-10-25 04:46:11,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:11,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:46:11,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:11,187.187 INFO    ] No camera update needed
[2026-10-25 04:46:11,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:46:11,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:46:11,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:46:11,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:46:13,243.243 INFO    ] ================================================
[2026-10-25 04:46:13,259.259 INFO    ] Launching Daemon at Sun Oct 25 04:46:13 IST 2026
[2026-10-25 04:46:13,272.272 INFO    ] ================================================
[2026-10-25 04:46:13,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:46:13
[2026-10-25 04:46:14,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:46:14,803.803 INFO    ] Initializing speech engine...
[2026-10-25 04:46:14,813.813 INFO    ] 2026-10-25 04:46:14
[2026-10-25 04:46:15,085.085 INFO    ] 2026-10-25 04:46:15
[2026-10-25 04:46:15,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:46:15,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:46:15,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:46:15,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:46:15,557.557 INFO    ] time= 25/10/2026 04:46:15
[2026-10-25 04:46:15,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:46:15,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:46:15,701.701 INFO    ] No existing commands found in stream
[2026-10-25 04:46:20,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:46:20,734.734 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 04:46:21,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:46:21,284.284 INFO    ] Checking for system updates...
[2026-10-25 04:46:21,322.322 INFO    ] 200
[2026-10-25 04:46:21,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:21,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:21,383.383 INFO    ] No update needed
[2026-10-25 04:46:21,386.386 INFO    ] Checking for camera pi updates...
[2026-10-25 04:46:21,421.421 INFO    ] 200
[2026-10-25 04:46:21,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:21,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:46:21,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:21,533.533 INFO    ] No camera update needed
[2026-10-25 04:46:21,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:46:21,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:46:21,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:46:21,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:46:23,592.592 INFO    ] ================================================
[2026-10-25 04:46:23,607.607 INFO    ] Launching Daemon at Sun Oct 25 04:46:23 IST 2026
[2026-10-25 04:46:23,618.618 INFO    ] ================================================
[2026-10-25 04:46:24,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:46:24
[2026-10-25 04:46:24,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:46:25,218.218 INFO    ] Initializing speech engine...
[2026-10-25 04:46:25,224.224 INFO    ] 2026-10-25 04:46:25
[2026-10-25 04:46:25,510.510 INFO    ] 2026-10-25 04:46:25
[2026-10-25 04:46:25,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:46:25,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:46:25,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:46:25,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:46:26,001.001 INFO    ] time= 25/10/2026 04:46:25
[2026-10-25 04:46:26,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:46:26,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:46:26,182.182 INFO    ] No existing commands found in stream
[2026-10-25 04:46:31,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:46:31,211.211 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 04:46:33,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:46:33,506.506 INFO    ] Checking for system updates...
[2026-10-25 04:46:33,543.543 INFO    ] 200
[2026-10-25 04:46:33,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:33,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:33,609.609 INFO    ] No update needed
[2026-10-25 04:46:33,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 04:46:33,647.647 INFO    ] 200
[2026-10-25 04:46:33,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:33,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:46:33,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:46:33,752.752 INFO    ] No camera update needed
[2026-10-25 04:46:33,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:46:33,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:46:33,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:46:33,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:46:35,813.813 INFO    ] ================================================
[2026-10-25 04:46:35,828.828 INFO    ] Launching Daemon at Sun Oct 25 04:46:35 IST 2026
[2026-10-25 04:46:35,839.839 INFO    ] ================================================
[2026-10-25 04:46:36,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:46:36
[2026-10-25 04:46:37,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:46:37,302.302 INFO    ] Initializing speech engine...
[2026-10-25 04:46:37,315.315 INFO    ] 2026-10-25 04:46:37
[2026-10-25 04:46:37,604.604 INFO    ] 2026-10-25 04:46:37
[2026-10-25 04:46:37,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:46:37,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:46:37,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:46:37,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:46:37,995.995 INFO    ] time= 25/10/2026 04:46:37
[2026-10-25 04:46:38,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:46:38,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:46:38,104.104 INFO    ] No existing commands found in stream
[2026-10-25 04:46:43,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:46:43,132.132 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 04:46:44,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:46:44,830.830 INFO    ] Checking for system updates...
[2026-10-25 04:46:44,866.866 INFO    ] 200
[2026-10-25 04:46:44,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:44,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:46:44,930.930 INFO    ] No update needed
[2026-10-25 04:46:44,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 04:46:44,966.966 INFO    ] 200
[2026-10-25 04:46:44,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:45,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:46:45,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:46:45,080.080 INFO    ] No camera update needed
[2026-10-25 04:46:45,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:46:45,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:46:45,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:46:45,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:46:47,135.135 INFO    ] ================================================
[2026-10-25 04:46:47,150.150 INFO    ] Launching Daemon at Sun Oct 25 04:46:47 IST 2026
[2026-10-25 04:46:47,161.161 INFO    ] ================================================
[2026-10-25 04:46:47,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:46:47
[2026-10-25 04:46:48,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:46:48,579.579 INFO    ] Initializing speech engine...
[2026-10-25 04:46:48,588.588 INFO    ] 2026-10-25 04:46:48
[2026-10-25 04:46:48,835.835 INFO    ] 2026-10-25 04:46:48
[2026-10-25 04:46:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:46:49,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:46:49,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:46:49,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:46:49,332.332 INFO    ] time= 25/10/2026 04:46:49
[2026-10-25 04:46:49,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:46:49,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:46:49,520.520 INFO    ] No existing commands found in stream
[2026-10-25 04:46:54,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:46:54,554.554 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 04:46:58,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:46:58,525.525 INFO    ] Checking for system updates...
[2026-10-25 04:46:58,562.562 INFO    ] 200
[2026-10-25 04:46:58,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:58,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:46:58,623.623 INFO    ] No update needed
[2026-10-25 04:46:58,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 04:46:58,662.662 INFO    ] 200
[2026-10-25 04:46:58,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:46:58,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:46:58,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:46:58,874.874 INFO    ] No camera update needed
[2026-10-25 04:46:58,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:46:58,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:46:58,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:46:58,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:00,932.932 INFO    ] ================================================
[2026-10-25 04:47:00,947.947 INFO    ] Launching Daemon at Sun Oct 25 04:47:00 IST 2026
[2026-10-25 04:47:00,958.958 INFO    ] ================================================
[2026-10-25 04:47:01,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:01
[2026-10-25 04:47:02,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:47:02,663.663 INFO    ] Initializing speech engine...
[2026-10-25 04:47:02,675.675 INFO    ] 2026-10-25 04:47:02
[2026-10-25 04:47:02,965.965 INFO    ] 2026-10-25 04:47:02
[2026-10-25 04:47:03,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:47:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:47:03,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:47:03,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:47:03,368.368 INFO    ] time= 25/10/2026 04:47:03
[2026-10-25 04:47:03,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:47:03,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:47:03,540.540 INFO    ] No existing commands found in stream
[2026-10-25 04:47:08,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:47:08,578.578 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 04:47:09,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:47:09,048.048 INFO    ] Checking for system updates...
[2026-10-25 04:47:09,090.090 INFO    ] 200
[2026-10-25 04:47:09,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:09,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:09,149.149 INFO    ] No update needed
[2026-10-25 04:47:09,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 04:47:09,185.185 INFO    ] 200
[2026-10-25 04:47:09,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:09,227.227 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:47:09,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:09,285.285 INFO    ] No camera update needed
[2026-10-25 04:47:09,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:47:09,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:47:09,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:47:09,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:11,339.339 INFO    ] ================================================
[2026-10-25 04:47:11,355.355 INFO    ] Launching Daemon at Sun Oct 25 04:47:11 IST 2026
[2026-10-25 04:47:11,366.366 INFO    ] ================================================
[2026-10-25 04:47:11,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:11
[2026-10-25 04:47:12,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:47:12,800.800 INFO    ] Initializing speech engine...
[2026-10-25 04:47:12,809.809 INFO    ] 2026-10-25 04:47:12
[2026-10-25 04:47:13,073.073 INFO    ] 2026-10-25 04:47:13
[2026-10-25 04:47:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:47:13,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:47:13,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:47:13,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:47:13,485.485 INFO    ] time= 25/10/2026 04:47:13
[2026-10-25 04:47:13,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:47:13,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:47:13,623.623 INFO    ] No existing commands found in stream
[2026-10-25 04:47:18,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:47:18,646.646 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 04:47:22,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:47:22,517.517 INFO    ] Checking for system updates...
[2026-10-25 04:47:22,556.556 INFO    ] 200
[2026-10-25 04:47:22,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:22,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:22,615.615 INFO    ] No update needed
[2026-10-25 04:47:22,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 04:47:22,651.651 INFO    ] 200
[2026-10-25 04:47:22,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:22,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:47:22,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:22,766.766 INFO    ] No camera update needed
[2026-10-25 04:47:22,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:47:22,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:47:22,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:47:22,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:24,822.822 INFO    ] ================================================
[2026-10-25 04:47:24,837.837 INFO    ] Launching Daemon at Sun Oct 25 04:47:24 IST 2026
[2026-10-25 04:47:24,848.848 INFO    ] ================================================
[2026-10-25 04:47:25,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:25
[2026-10-25 04:47:26,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:47:26,275.275 INFO    ] Initializing speech engine...
[2026-10-25 04:47:26,284.284 INFO    ] 2026-10-25 04:47:26
[2026-10-25 04:47:26,531.531 INFO    ] 2026-10-25 04:47:26
[2026-10-25 04:47:26,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:47:26,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:47:26,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:47:26,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:47:26,981.981 INFO    ] time= 25/10/2026 04:47:26
[2026-10-25 04:47:27,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:47:27,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:47:27,146.146 INFO    ] No existing commands found in stream
[2026-10-25 04:47:32,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:47:32,156.156 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 04:47:33,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:47:33,167.167 INFO    ] Checking for system updates...
[2026-10-25 04:47:33,204.204 INFO    ] 200
[2026-10-25 04:47:33,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:33,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:33,262.262 INFO    ] No update needed
[2026-10-25 04:47:33,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 04:47:33,298.298 INFO    ] 200
[2026-10-25 04:47:33,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:33,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:47:33,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:47:33,398.398 INFO    ] No camera update needed
[2026-10-25 04:47:33,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:47:33,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:47:33,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:47:33,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:35,455.455 INFO    ] ================================================
[2026-10-25 04:47:35,470.470 INFO    ] Launching Daemon at Sun Oct 25 04:47:35 IST 2026
[2026-10-25 04:47:35,481.481 INFO    ] ================================================
[2026-10-25 04:47:36,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:36
[2026-10-25 04:47:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:47:37,076.076 INFO    ] Initializing speech engine...
[2026-10-25 04:47:37,083.083 INFO    ] 2026-10-25 04:47:37
[2026-10-25 04:47:37,401.401 INFO    ] 2026-10-25 04:47:37
[2026-10-25 04:47:37,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:47:37,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:47:37,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:47:37,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:47:37,905.905 INFO    ] time= 25/10/2026 04:47:37
[2026-10-25 04:47:37,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:47:37,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:47:38,059.059 INFO    ] No existing commands found in stream
[2026-10-25 04:47:43,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:47:43,076.076 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 04:47:45,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:47:45,528.528 INFO    ] Checking for system updates...
[2026-10-25 04:47:45,565.565 INFO    ] 200
[2026-10-25 04:47:45,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:45,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:47:45,624.624 INFO    ] No update needed
[2026-10-25 04:47:45,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 04:47:45,661.661 INFO    ] 200
[2026-10-25 04:47:45,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:45,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:47:45,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:47:45,769.769 INFO    ] No camera update needed
[2026-10-25 04:47:45,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:47:45,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:47:45,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:47:45,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:47,828.828 INFO    ] ================================================
[2026-10-25 04:47:47,844.844 INFO    ] Launching Daemon at Sun Oct 25 04:47:47 IST 2026
[2026-10-25 04:47:47,855.855 INFO    ] ================================================
[2026-10-25 04:47:48,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:48
[2026-10-25 04:47:49,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:47:49,259.259 INFO    ] Initializing speech engine...
[2026-10-25 04:47:49,265.265 INFO    ] 2026-10-25 04:47:49
[2026-10-25 04:47:49,557.557 INFO    ] 2026-10-25 04:47:49
[2026-10-25 04:47:49,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:47:49,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:47:49,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:47:49,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:47:49,969.969 INFO    ] time= 25/10/2026 04:47:49
[2026-10-25 04:47:49,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:47:50,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:47:50,151.151 INFO    ] No existing commands found in stream
[2026-10-25 04:47:55,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:47:55,178.178 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 04:47:57,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:47:57,015.015 INFO    ] Checking for system updates...
[2026-10-25 04:47:57,052.052 INFO    ] 200
[2026-10-25 04:47:57,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:57,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:47:57,109.109 INFO    ] No update needed
[2026-10-25 04:47:57,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 04:47:57,149.149 INFO    ] 200
[2026-10-25 04:47:57,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:47:57,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:47:57,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:47:57,245.245 INFO    ] No camera update needed
[2026-10-25 04:47:57,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:47:57,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:47:57,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:47:57,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:47:59,301.301 INFO    ] ================================================
[2026-10-25 04:47:59,317.317 INFO    ] Launching Daemon at Sun Oct 25 04:47:59 IST 2026
[2026-10-25 04:47:59,328.328 INFO    ] ================================================
[2026-10-25 04:47:59,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:47:59
[2026-10-25 04:48:00,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:48:00,735.735 INFO    ] Initializing speech engine...
[2026-10-25 04:48:00,741.741 INFO    ] 2026-10-25 04:48:00
[2026-10-25 04:48:01,029.029 INFO    ] 2026-10-25 04:48:01
[2026-10-25 04:48:01,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:48:01,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:48:01,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:48:01,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:48:01,435.435 INFO    ] time= 25/10/2026 04:48:01
[2026-10-25 04:48:01,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:48:01,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:48:01,517.517 INFO    ] No existing commands found in stream
[2026-10-25 04:48:06,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:48:06,541.541 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 04:48:08,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:48:08,138.138 INFO    ] Checking for system updates...
[2026-10-25 04:48:08,175.175 INFO    ] 200
[2026-10-25 04:48:08,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:08,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:48:08,243.243 INFO    ] No update needed
[2026-10-25 04:48:08,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 04:48:08,279.279 INFO    ] 200
[2026-10-25 04:48:08,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:08,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:48:08,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:48:08,372.372 INFO    ] No camera update needed
[2026-10-25 04:48:08,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:48:08,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:48:08,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:48:08,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:48:10,428.428 INFO    ] ================================================
[2026-10-25 04:48:10,444.444 INFO    ] Launching Daemon at Sun Oct 25 04:48:10 IST 2026
[2026-10-25 04:48:10,455.455 INFO    ] ================================================
[2026-10-25 04:48:11,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:48:11
[2026-10-25 04:48:11,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:48:11,862.862 INFO    ] Initializing speech engine...
[2026-10-25 04:48:11,881.881 INFO    ] 2026-10-25 04:48:11
[2026-10-25 04:48:12,129.129 INFO    ] 2026-10-25 04:48:12
[2026-10-25 04:48:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:48:12,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:48:12,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:48:12,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:48:12,507.507 INFO    ] time= 25/10/2026 04:48:12
[2026-10-25 04:48:12,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:48:12,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:48:12,670.670 INFO    ] No existing commands found in stream
[2026-10-25 04:48:17,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:48:17,703.703 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 04:48:21,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:48:21,770.770 INFO    ] Checking for system updates...
[2026-10-25 04:48:21,806.806 INFO    ] 200
[2026-10-25 04:48:21,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:21,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:21,863.863 INFO    ] No update needed
[2026-10-25 04:48:21,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 04:48:21,900.900 INFO    ] 200
[2026-10-25 04:48:21,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:21,947.947 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:48:22,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:22,003.003 INFO    ] No camera update needed
[2026-10-25 04:48:22,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:48:22,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:48:22,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:48:22,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:48:24,059.059 INFO    ] ================================================
[2026-10-25 04:48:24,075.075 INFO    ] Launching Daemon at Sun Oct 25 04:48:24 IST 2026
[2026-10-25 04:48:24,086.086 INFO    ] ================================================
[2026-10-25 04:48:24,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:48:24
[2026-10-25 04:48:25,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:48:25,483.483 INFO    ] Initializing speech engine...
[2026-10-25 04:48:25,495.495 INFO    ] 2026-10-25 04:48:25
[2026-10-25 04:48:25,758.758 INFO    ] 2026-10-25 04:48:25
[2026-10-25 04:48:25,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:48:26,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:48:26,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:48:26,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:48:26,221.221 INFO    ] time= 25/10/2026 04:48:26
[2026-10-25 04:48:26,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:48:26,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:48:26,376.376 INFO    ] No existing commands found in stream
[2026-10-25 04:48:31,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:48:31,399.399 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 04:48:35,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:48:35,066.066 INFO    ] Checking for system updates...
[2026-10-25 04:48:35,102.102 INFO    ] 200
[2026-10-25 04:48:35,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:35,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:48:35,165.165 INFO    ] No update needed
[2026-10-25 04:48:35,168.168 INFO    ] Checking for camera pi updates...
[2026-10-25 04:48:35,202.202 INFO    ] 200
[2026-10-25 04:48:35,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:35,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:48:35,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:48:35,306.306 INFO    ] No camera update needed
[2026-10-25 04:48:35,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:48:35,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:48:35,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:48:35,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:48:37,360.360 INFO    ] ================================================
[2026-10-25 04:48:37,375.375 INFO    ] Launching Daemon at Sun Oct 25 04:48:37 IST 2026
[2026-10-25 04:48:37,386.386 INFO    ] ================================================
[2026-10-25 04:48:37,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:48:37
[2026-10-25 04:48:38,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:48:38,793.793 INFO    ] Initializing speech engine...
[2026-10-25 04:48:38,809.809 INFO    ] 2026-10-25 04:48:38
[2026-10-25 04:48:39,064.064 INFO    ] 2026-10-25 04:48:39
[2026-10-25 04:48:39,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:48:39,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:48:39,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:48:39,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:48:39,515.515 INFO    ] time= 25/10/2026 04:48:39
[2026-10-25 04:48:39,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:48:39,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:48:39,665.665 INFO    ] No existing commands found in stream
[2026-10-25 04:48:44,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:48:44,689.689 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 04:48:46,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:48:46,338.338 INFO    ] Checking for system updates...
[2026-10-25 04:48:46,375.375 INFO    ] 200
[2026-10-25 04:48:46,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:46,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:46,432.432 INFO    ] No update needed
[2026-10-25 04:48:46,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 04:48:46,471.471 INFO    ] 200
[2026-10-25 04:48:46,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:46,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:48:46,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:46,575.575 INFO    ] No camera update needed
[2026-10-25 04:48:46,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:48:46,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:48:46,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:48:46,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:48:48,629.629 INFO    ] ================================================
[2026-10-25 04:48:48,644.644 INFO    ] Launching Daemon at Sun Oct 25 04:48:48 IST 2026
[2026-10-25 04:48:48,656.656 INFO    ] ================================================
[2026-10-25 04:48:49,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:48:49
[2026-10-25 04:48:49,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:48:50,109.109 INFO    ] Initializing speech engine...
[2026-10-25 04:48:50,115.115 INFO    ] 2026-10-25 04:48:50
[2026-10-25 04:48:50,365.365 INFO    ] 2026-10-25 04:48:50
[2026-10-25 04:48:50,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:48:50,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:48:50,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:48:50,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:48:50,825.825 INFO    ] time= 25/10/2026 04:48:50
[2026-10-25 04:48:50,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:48:50,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:48:50,970.970 INFO    ] No existing commands found in stream
[2026-10-25 04:48:55,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:48:55,985.985 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 04:48:59,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:48:59,547.547 INFO    ] Checking for system updates...
[2026-10-25 04:48:59,584.584 INFO    ] 200
[2026-10-25 04:48:59,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:59,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:59,642.642 INFO    ] No update needed
[2026-10-25 04:48:59,644.644 INFO    ] Checking for camera pi updates...
[2026-10-25 04:48:59,678.678 INFO    ] 200
[2026-10-25 04:48:59,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:48:59,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:48:59,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:48:59,778.778 INFO    ] No camera update needed
[2026-10-25 04:48:59,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:48:59,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:48:59,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:48:59,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:49:01,848.848 INFO    ] ================================================
[2026-10-25 04:49:01,880.880 INFO    ] Launching Daemon at Sun Oct 25 04:49:01 IST 2026
[2026-10-25 04:49:01,900.900 INFO    ] ================================================
[2026-10-25 04:49:02,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:49:02
[2026-10-25 04:49:03,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:49:03,689.689 INFO    ] Initializing speech engine...
[2026-10-25 04:49:03,698.698 INFO    ] 2026-10-25 04:49:03
[2026-10-25 04:49:03,970.970 INFO    ] 2026-10-25 04:49:03
[2026-10-25 04:49:04,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:49:04,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:49:04,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:49:04,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:49:04,515.515 INFO    ] time= 25/10/2026 04:49:04
[2026-10-25 04:49:04,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:49:04,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:49:04,627.627 INFO    ] No existing commands found in stream
[2026-10-25 04:49:09,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:49:09,658.658 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 04:49:10,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:49:10,707.707 INFO    ] Checking for system updates...
[2026-10-25 04:49:10,747.747 INFO    ] 200
[2026-10-25 04:49:10,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:10,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:10,804.804 INFO    ] No update needed
[2026-10-25 04:49:10,807.807 INFO    ] Checking for camera pi updates...
[2026-10-25 04:49:10,841.841 INFO    ] 200
[2026-10-25 04:49:10,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:10,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:49:10,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:10,938.938 INFO    ] No camera update needed
[2026-10-25 04:49:10,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:49:10,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:49:10,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:49:10,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:49:12,994.994 INFO    ] ================================================
[2026-10-25 04:49:13,009.009 INFO    ] Launching Daemon at Sun Oct 25 04:49:13 IST 2026
[2026-10-25 04:49:13,020.020 INFO    ] ================================================
[2026-10-25 04:49:13,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:49:13
[2026-10-25 04:49:14,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:49:14,513.513 INFO    ] Initializing speech engine...
[2026-10-25 04:49:14,535.535 INFO    ] 2026-10-25 04:49:14
[2026-10-25 04:49:14,787.787 INFO    ] 2026-10-25 04:49:14
[2026-10-25 04:49:14,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:49:15,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:49:15,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:49:15,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:49:15,237.237 INFO    ] time= 25/10/2026 04:49:15
[2026-10-25 04:49:15,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:49:15,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:49:15,405.405 INFO    ] No existing commands found in stream
[2026-10-25 04:49:20,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:49:20,420.420 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 04:49:22,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:49:22,576.576 INFO    ] Checking for system updates...
[2026-10-25 04:49:22,613.613 INFO    ] 200
[2026-10-25 04:49:22,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:22,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:22,670.670 INFO    ] No update needed
[2026-10-25 04:49:22,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 04:49:22,709.709 INFO    ] 200
[2026-10-25 04:49:22,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:22,757.757 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:49:22,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:22,814.814 INFO    ] No camera update needed
[2026-10-25 04:49:22,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:49:22,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:49:22,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:49:22,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:49:24,869.869 INFO    ] ================================================
[2026-10-25 04:49:24,884.884 INFO    ] Launching Daemon at Sun Oct 25 04:49:24 IST 2026
[2026-10-25 04:49:24,895.895 INFO    ] ================================================
[2026-10-25 04:49:25,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:49:25
[2026-10-25 04:49:26,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:49:26,319.319 INFO    ] Initializing speech engine...
[2026-10-25 04:49:26,328.328 INFO    ] 2026-10-25 04:49:26
[2026-10-25 04:49:26,573.573 INFO    ] 2026-10-25 04:49:26
[2026-10-25 04:49:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:49:26,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:49:26,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:49:27,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:49:27,076.076 INFO    ] time= 25/10/2026 04:49:27
[2026-10-25 04:49:27,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:49:27,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:49:27,264.264 INFO    ] No existing commands found in stream
[2026-10-25 04:49:32,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:49:32,286.286 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 04:49:33,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:49:33,268.268 INFO    ] Checking for system updates...
[2026-10-25 04:49:33,304.304 INFO    ] 200
[2026-10-25 04:49:33,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:33,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:49:33,368.368 INFO    ] No update needed
[2026-10-25 04:49:33,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 04:49:33,408.408 INFO    ] 200
[2026-10-25 04:49:33,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:33,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:49:33,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:49:33,505.505 INFO    ] No camera update needed
[2026-10-25 04:49:33,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:49:33,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:49:33,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:49:33,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:49:35,561.561 INFO    ] ================================================
[2026-10-25 04:49:35,577.577 INFO    ] Launching Daemon at Sun Oct 25 04:49:35 IST 2026
[2026-10-25 04:49:35,588.588 INFO    ] ================================================
[2026-10-25 04:49:36,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:49:36
[2026-10-25 04:49:36,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:49:37,179.179 INFO    ] Initializing speech engine...
[2026-10-25 04:49:37,194.194 INFO    ] 2026-10-25 04:49:37
[2026-10-25 04:49:37,476.476 INFO    ] 2026-10-25 04:49:37
[2026-10-25 04:49:37,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:49:37,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:49:37,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:49:37,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:49:38,005.005 INFO    ] time= 25/10/2026 04:49:37
[2026-10-25 04:49:38,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:49:38,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:49:38,157.157 INFO    ] No existing commands found in stream
[2026-10-25 04:49:43,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:49:43,174.174 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 04:49:44,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:49:44,208.208 INFO    ] Checking for system updates...
[2026-10-25 04:49:44,252.252 INFO    ] 200
[2026-10-25 04:49:44,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:44,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:49:44,317.317 INFO    ] No update needed
[2026-10-25 04:49:44,320.320 INFO    ] Checking for camera pi updates...
[2026-10-25 04:49:44,354.354 INFO    ] 200
[2026-10-25 04:49:44,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:44,398.398 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:49:44,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:49:44,451.451 INFO    ] No camera update needed
[2026-10-25 04:49:44,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:49:44,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:49:44,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:49:44,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:49:46,507.507 INFO    ] ================================================
[2026-10-25 04:49:46,523.523 INFO    ] Launching Daemon at Sun Oct 25 04:49:46 IST 2026
[2026-10-25 04:49:46,534.534 INFO    ] ================================================
[2026-10-25 04:49:47,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:49:47
[2026-10-25 04:49:47,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:49:47,941.941 INFO    ] Initializing speech engine...
[2026-10-25 04:49:47,947.947 INFO    ] 2026-10-25 04:49:47
[2026-10-25 04:49:48,220.220 INFO    ] 2026-10-25 04:49:48
[2026-10-25 04:49:48,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:49:48,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:49:48,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:49:48,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:49:48,598.598 INFO    ] time= 25/10/2026 04:49:48
[2026-10-25 04:49:48,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:49:48,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:49:48,710.710 INFO    ] No existing commands found in stream
[2026-10-25 04:49:53,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:49:53,737.737 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 04:49:58,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:49:58,021.021 INFO    ] Checking for system updates...
[2026-10-25 04:49:58,058.058 INFO    ] 200
[2026-10-25 04:49:58,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:58,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:58,120.120 INFO    ] No update needed
[2026-10-25 04:49:58,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 04:49:58,162.162 INFO    ] 200
[2026-10-25 04:49:58,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:49:58,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:49:58,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:49:58,267.267 INFO    ] No camera update needed
[2026-10-25 04:49:58,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:49:58,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:49:58,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:49:58,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:50:00,333.333 INFO    ] ================================================
[2026-10-25 04:50:00,348.348 INFO    ] Launching Daemon at Sun Oct 25 04:50:00 IST 2026
[2026-10-25 04:50:00,359.359 INFO    ] ================================================
[2026-10-25 04:50:01,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:50:01
[2026-10-25 04:50:01,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:50:02,376.376 INFO    ] Initializing speech engine...
[2026-10-25 04:50:02,379.379 INFO    ] 2026-10-25 04:50:02
[2026-10-25 04:50:02,850.850 INFO    ] 2026-10-25 04:50:02
[2026-10-25 04:50:02,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:50:03,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:50:03,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:50:03,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:50:03,249.249 INFO    ] time= 25/10/2026 04:50:03
[2026-10-25 04:50:03,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:50:03,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:50:03,319.319 INFO    ] No existing commands found in stream
[2026-10-25 04:50:08,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:50:08,332.332 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 04:50:10,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:50:10,687.687 INFO    ] Checking for system updates...
[2026-10-25 04:50:10,724.724 INFO    ] 200
[2026-10-25 04:50:10,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:10,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:10,781.781 INFO    ] No update needed
[2026-10-25 04:50:10,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 04:50:10,821.821 INFO    ] 200
[2026-10-25 04:50:10,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:10,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:50:10,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:10,921.921 INFO    ] No camera update needed
[2026-10-25 04:50:10,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:50:10,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:50:10,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:50:10,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:50:12,979.979 INFO    ] ================================================
[2026-10-25 04:50:12,994.994 INFO    ] Launching Daemon at Sun Oct 25 04:50:12 IST 2026
[2026-10-25 04:50:13,004.004 INFO    ] ================================================
[2026-10-25 04:50:13,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:50:13
[2026-10-25 04:50:14,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:50:14,418.418 INFO    ] Initializing speech engine...
[2026-10-25 04:50:14,427.427 INFO    ] 2026-10-25 04:50:14
[2026-10-25 04:50:14,718.718 INFO    ] 2026-10-25 04:50:14
[2026-10-25 04:50:14,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:50:14,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:50:14,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:50:15,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:50:15,140.140 INFO    ] time= 25/10/2026 04:50:15
[2026-10-25 04:50:15,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:50:15,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:50:15,305.305 INFO    ] No existing commands found in stream
[2026-10-25 04:50:20,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:50:20,338.338 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 04:50:24,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:50:24,180.180 INFO    ] Checking for system updates...
[2026-10-25 04:50:24,216.216 INFO    ] 200
[2026-10-25 04:50:24,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:24,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:24,279.279 INFO    ] No update needed
[2026-10-25 04:50:24,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 04:50:24,316.316 INFO    ] 200
[2026-10-25 04:50:24,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:24,359.359 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:50:24,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:24,422.422 INFO    ] No camera update needed
[2026-10-25 04:50:24,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:50:24,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:50:24,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:50:24,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:50:26,476.476 INFO    ] ================================================
[2026-10-25 04:50:26,492.492 INFO    ] Launching Daemon at Sun Oct 25 04:50:26 IST 2026
[2026-10-25 04:50:26,503.503 INFO    ] ================================================
[2026-10-25 04:50:27,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:50:27
[2026-10-25 04:50:27,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:50:28,126.126 INFO    ] Initializing speech engine...
[2026-10-25 04:50:28,138.138 INFO    ] 2026-10-25 04:50:28
[2026-10-25 04:50:28,417.417 INFO    ] 2026-10-25 04:50:28
[2026-10-25 04:50:28,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:50:29,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:50:29,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:50:29,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:50:29,555.555 INFO    ] time= 25/10/2026 04:50:29
[2026-10-25 04:50:29,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:50:29,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:50:29,738.738 INFO    ] No existing commands found in stream
[2026-10-25 04:50:34,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:50:34,768.768 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 04:50:37,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:50:37,422.422 INFO    ] Checking for system updates...
[2026-10-25 04:50:37,458.458 INFO    ] 200
[2026-10-25 04:50:37,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:37,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:37,523.523 INFO    ] No update needed
[2026-10-25 04:50:37,525.525 INFO    ] Checking for camera pi updates...
[2026-10-25 04:50:37,559.559 INFO    ] 200
[2026-10-25 04:50:37,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:37,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:50:37,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:50:37,751.751 INFO    ] No camera update needed
[2026-10-25 04:50:37,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:50:37,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:50:37,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:50:37,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:50:39,808.808 INFO    ] ================================================
[2026-10-25 04:50:39,823.823 INFO    ] Launching Daemon at Sun Oct 25 04:50:39 IST 2026
[2026-10-25 04:50:39,834.834 INFO    ] ================================================
[2026-10-25 04:50:40,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:50:40
[2026-10-25 04:50:40,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:50:41,273.273 INFO    ] Initializing speech engine...
[2026-10-25 04:50:41,279.279 INFO    ] 2026-10-25 04:50:41
[2026-10-25 04:50:41,523.523 INFO    ] 2026-10-25 04:50:41
[2026-10-25 04:50:41,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:50:41,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:50:41,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:50:41,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:50:41,893.893 INFO    ] time= 25/10/2026 04:50:41
[2026-10-25 04:50:41,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:50:41,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:50:42,067.067 INFO    ] No existing commands found in stream
[2026-10-25 04:50:47,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:50:47,100.100 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 04:50:50,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:50:50,851.851 INFO    ] Checking for system updates...
[2026-10-25 04:50:50,890.890 INFO    ] 200
[2026-10-25 04:50:50,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:50,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:50:50,954.954 INFO    ] No update needed
[2026-10-25 04:50:50,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 04:50:50,990.990 INFO    ] 200
[2026-10-25 04:50:50,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:50:51,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:50:51,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:50:51,089.089 INFO    ] No camera update needed
[2026-10-25 04:50:51,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:50:51,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:50:51,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:50:51,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:50:53,143.143 INFO    ] ================================================
[2026-10-25 04:50:53,158.158 INFO    ] Launching Daemon at Sun Oct 25 04:50:53 IST 2026
[2026-10-25 04:50:53,169.169 INFO    ] ================================================
[2026-10-25 04:50:53,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:50:53
[2026-10-25 04:50:54,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:50:54,619.619 INFO    ] Initializing speech engine...
[2026-10-25 04:50:54,628.628 INFO    ] 2026-10-25 04:50:54
[2026-10-25 04:50:54,888.888 INFO    ] 2026-10-25 04:50:54
[2026-10-25 04:50:54,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:50:55,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:50:55,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:50:55,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:50:55,345.345 INFO    ] time= 25/10/2026 04:50:55
[2026-10-25 04:50:55,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:50:55,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:50:55,497.497 INFO    ] No existing commands found in stream
[2026-10-25 04:51:00,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:51:00,512.512 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 04:51:02,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:51:02,201.201 INFO    ] Checking for system updates...
[2026-10-25 04:51:02,255.255 INFO    ] 200
[2026-10-25 04:51:02,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:02,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:02,324.324 INFO    ] No update needed
[2026-10-25 04:51:02,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 04:51:02,372.372 INFO    ] 200
[2026-10-25 04:51:02,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:02,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:51:02,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:02,485.485 INFO    ] No camera update needed
[2026-10-25 04:51:02,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:51:02,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:51:02,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:51:02,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:51:04,551.551 INFO    ] ================================================
[2026-10-25 04:51:04,567.567 INFO    ] Launching Daemon at Sun Oct 25 04:51:04 IST 2026
[2026-10-25 04:51:04,578.578 INFO    ] ================================================
[2026-10-25 04:51:05,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:51:05
[2026-10-25 04:51:05,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:51:06,016.016 INFO    ] Initializing speech engine...
[2026-10-25 04:51:06,025.025 INFO    ] 2026-10-25 04:51:06
[2026-10-25 04:51:06,293.293 INFO    ] 2026-10-25 04:51:06
[2026-10-25 04:51:06,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:51:06,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:51:06,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:51:06,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:51:06,837.837 INFO    ] time= 25/10/2026 04:51:06
[2026-10-25 04:51:06,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:51:06,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:51:06,994.994 INFO    ] No existing commands found in stream
[2026-10-25 04:51:12,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:51:12,008.008 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 04:51:13,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:51:13,671.671 INFO    ] Checking for system updates...
[2026-10-25 04:51:13,707.707 INFO    ] 200
[2026-10-25 04:51:13,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:13,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:13,772.772 INFO    ] No update needed
[2026-10-25 04:51:13,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 04:51:13,812.812 INFO    ] 200
[2026-10-25 04:51:13,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:13,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:51:14,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:14,033.033 INFO    ] No camera update needed
[2026-10-25 04:51:14,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:51:14,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:51:14,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:51:14,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:51:16,090.090 INFO    ] ================================================
[2026-10-25 04:51:16,106.106 INFO    ] Launching Daemon at Sun Oct 25 04:51:16 IST 2026
[2026-10-25 04:51:16,117.117 INFO    ] ================================================
[2026-10-25 04:51:16,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:51:16
[2026-10-25 04:51:17,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:51:17,534.534 INFO    ] Initializing speech engine...
[2026-10-25 04:51:17,546.546 INFO    ] 2026-10-25 04:51:17
[2026-10-25 04:51:17,817.817 INFO    ] 2026-10-25 04:51:17
[2026-10-25 04:51:17,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:51:18,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:51:18,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:51:18,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:51:18,313.313 INFO    ] time= 25/10/2026 04:51:18
[2026-10-25 04:51:18,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:51:18,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:51:18,463.463 INFO    ] No existing commands found in stream
[2026-10-25 04:51:23,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:51:23,499.499 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 04:51:26,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:51:26,297.297 INFO    ] Checking for system updates...
[2026-10-25 04:51:26,336.336 INFO    ] 200
[2026-10-25 04:51:26,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:26,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:26,395.395 INFO    ] No update needed
[2026-10-25 04:51:26,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 04:51:26,436.436 INFO    ] 200
[2026-10-25 04:51:26,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:26,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:51:26,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:26,535.535 INFO    ] No camera update needed
[2026-10-25 04:51:26,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:51:26,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:51:26,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:51:26,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:51:28,592.592 INFO    ] ================================================
[2026-10-25 04:51:28,608.608 INFO    ] Launching Daemon at Sun Oct 25 04:51:28 IST 2026
[2026-10-25 04:51:28,619.619 INFO    ] ================================================
[2026-10-25 04:51:29,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:51:29
[2026-10-25 04:51:29,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:51:30,018.018 INFO    ] Initializing speech engine...
[2026-10-25 04:51:30,033.033 INFO    ] 2026-10-25 04:51:30
[2026-10-25 04:51:30,321.321 INFO    ] 2026-10-25 04:51:30
[2026-10-25 04:51:30,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:51:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:51:30,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:51:30,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:51:30,746.746 INFO    ] time= 25/10/2026 04:51:30
[2026-10-25 04:51:30,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:51:30,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:51:30,832.832 INFO    ] No existing commands found in stream
[2026-10-25 04:51:35,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:51:35,847.847 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 04:51:36,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:51:36,759.759 INFO    ] Checking for system updates...
[2026-10-25 04:51:36,796.796 INFO    ] 200
[2026-10-25 04:51:36,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:36,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:36,853.853 INFO    ] No update needed
[2026-10-25 04:51:36,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 04:51:36,893.893 INFO    ] 200
[2026-10-25 04:51:36,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:36,937.937 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:51:37,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:37,076.076 INFO    ] No camera update needed
[2026-10-25 04:51:37,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:51:37,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:51:37,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:51:37,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:51:39,132.132 INFO    ] ================================================
[2026-10-25 04:51:39,147.147 INFO    ] Launching Daemon at Sun Oct 25 04:51:39 IST 2026
[2026-10-25 04:51:39,159.159 INFO    ] ================================================
[2026-10-25 04:51:39,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:51:39
[2026-10-25 04:51:40,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:51:40,628.628 INFO    ] Initializing speech engine...
[2026-10-25 04:51:40,635.635 INFO    ] 2026-10-25 04:51:40
[2026-10-25 04:51:40,894.894 INFO    ] 2026-10-25 04:51:40
[2026-10-25 04:51:40,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:51:41,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:51:41,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:51:41,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:51:41,372.372 INFO    ] time= 25/10/2026 04:51:41
[2026-10-25 04:51:41,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:51:41,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:51:41,507.507 INFO    ] No existing commands found in stream
[2026-10-25 04:51:46,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:51:46,524.524 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 04:51:51,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:51:51,171.171 INFO    ] Checking for system updates...
[2026-10-25 04:51:51,212.212 INFO    ] 200
[2026-10-25 04:51:51,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:51,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:51,284.284 INFO    ] No update needed
[2026-10-25 04:51:51,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 04:51:51,327.327 INFO    ] 200
[2026-10-25 04:51:51,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:51:51,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:51:51,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:51:51,426.426 INFO    ] No camera update needed
[2026-10-25 04:51:51,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:51:51,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:51:51,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:51:51,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:51:53,486.486 INFO    ] ================================================
[2026-10-25 04:51:53,502.502 INFO    ] Launching Daemon at Sun Oct 25 04:51:53 IST 2026
[2026-10-25 04:51:53,512.512 INFO    ] ================================================
[2026-10-25 04:51:54,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:51:54
[2026-10-25 04:51:54,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:51:55,152.152 INFO    ] Initializing speech engine...
[2026-10-25 04:51:55,166.166 INFO    ] 2026-10-25 04:51:55
[2026-10-25 04:51:55,454.454 INFO    ] 2026-10-25 04:51:55
[2026-10-25 04:51:55,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:51:55,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:51:55,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:51:55,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:51:55,923.923 INFO    ] time= 25/10/2026 04:51:55
[2026-10-25 04:51:55,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:51:55,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:51:56,074.074 INFO    ] No existing commands found in stream
[2026-10-25 04:52:01,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:52:01,105.105 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 04:52:04,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:52:04,434.434 INFO    ] Checking for system updates...
[2026-10-25 04:52:04,471.471 INFO    ] 200
[2026-10-25 04:52:04,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:04,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:04,528.528 INFO    ] No update needed
[2026-10-25 04:52:04,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 04:52:04,567.567 INFO    ] 200
[2026-10-25 04:52:04,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:04,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:52:04,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:04,673.673 INFO    ] No camera update needed
[2026-10-25 04:52:04,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:52:04,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:52:04,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:52:04,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:52:06,727.727 INFO    ] ================================================
[2026-10-25 04:52:06,742.742 INFO    ] Launching Daemon at Sun Oct 25 04:52:06 IST 2026
[2026-10-25 04:52:06,753.753 INFO    ] ================================================
[2026-10-25 04:52:07,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:52:07
[2026-10-25 04:52:07,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:52:08,206.206 INFO    ] Initializing speech engine...
[2026-10-25 04:52:08,216.216 INFO    ] 2026-10-25 04:52:08
[2026-10-25 04:52:08,481.481 INFO    ] 2026-10-25 04:52:08
[2026-10-25 04:52:08,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:52:08,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:52:08,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:52:08,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:52:08,976.976 INFO    ] time= 25/10/2026 04:52:08
[2026-10-25 04:52:09,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:52:09,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:52:09,165.165 INFO    ] No existing commands found in stream
[2026-10-25 04:52:14,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:52:14,197.197 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 04:52:18,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:52:18,072.072 INFO    ] Checking for system updates...
[2026-10-25 04:52:18,111.111 INFO    ] 200
[2026-10-25 04:52:18,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:18,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:18,169.169 INFO    ] No update needed
[2026-10-25 04:52:18,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 04:52:18,216.216 INFO    ] 200
[2026-10-25 04:52:18,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:18,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:52:18,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:18,325.325 INFO    ] No camera update needed
[2026-10-25 04:52:18,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:52:18,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:52:18,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:52:18,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:52:20,385.385 INFO    ] ================================================
[2026-10-25 04:52:20,401.401 INFO    ] Launching Daemon at Sun Oct 25 04:52:20 IST 2026
[2026-10-25 04:52:20,414.414 INFO    ] ================================================
[2026-10-25 04:52:20,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:52:20
[2026-10-25 04:52:21,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:52:21,814.814 INFO    ] Initializing speech engine...
[2026-10-25 04:52:21,823.823 INFO    ] 2026-10-25 04:52:21
[2026-10-25 04:52:22,112.112 INFO    ] 2026-10-25 04:52:22
[2026-10-25 04:52:22,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:52:22,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:52:22,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:52:22,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:52:22,521.521 INFO    ] time= 25/10/2026 04:52:22
[2026-10-25 04:52:22,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:52:22,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:52:22,604.604 INFO    ] No existing commands found in stream
[2026-10-25 04:52:27,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:52:27,616.616 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 04:52:30,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:52:30,551.551 INFO    ] Checking for system updates...
[2026-10-25 04:52:30,587.587 INFO    ] 200
[2026-10-25 04:52:30,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:30,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:30,646.646 INFO    ] No update needed
[2026-10-25 04:52:30,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 04:52:30,684.684 INFO    ] 200
[2026-10-25 04:52:30,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:30,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:52:30,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:52:30,773.773 INFO    ] No camera update needed
[2026-10-25 04:52:30,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:52:30,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:52:30,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:52:30,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:52:32,831.831 INFO    ] ================================================
[2026-10-25 04:52:32,846.846 INFO    ] Launching Daemon at Sun Oct 25 04:52:32 IST 2026
[2026-10-25 04:52:32,856.856 INFO    ] ================================================
[2026-10-25 04:52:33,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:52:33
[2026-10-25 04:52:34,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:52:34,299.299 INFO    ] Initializing speech engine...
[2026-10-25 04:52:34,316.316 INFO    ] 2026-10-25 04:52:34
[2026-10-25 04:52:34,583.583 INFO    ] 2026-10-25 04:52:34
[2026-10-25 04:52:34,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:52:34,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:52:34,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:52:35,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:52:35,081.081 INFO    ] time= 25/10/2026 04:52:35
[2026-10-25 04:52:35,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:52:35,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:52:35,261.261 INFO    ] No existing commands found in stream
[2026-10-25 04:52:40,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:52:40,275.275 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 04:52:41,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:52:41,515.515 INFO    ] Checking for system updates...
[2026-10-25 04:52:41,555.555 INFO    ] 200
[2026-10-25 04:52:41,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:41,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:52:41,614.614 INFO    ] No update needed
[2026-10-25 04:52:41,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 04:52:41,654.654 INFO    ] 200
[2026-10-25 04:52:41,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:41,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:52:41,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:52:41,754.754 INFO    ] No camera update needed
[2026-10-25 04:52:41,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:52:41,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:52:41,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:52:41,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:52:43,811.811 INFO    ] ================================================
[2026-10-25 04:52:43,826.826 INFO    ] Launching Daemon at Sun Oct 25 04:52:43 IST 2026
[2026-10-25 04:52:43,837.837 INFO    ] ================================================
[2026-10-25 04:52:44,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:52:44
[2026-10-25 04:52:45,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:52:45,352.352 INFO    ] Initializing speech engine...
[2026-10-25 04:52:45,359.359 INFO    ] 2026-10-25 04:52:45
[2026-10-25 04:52:45,608.608 INFO    ] 2026-10-25 04:52:45
[2026-10-25 04:52:45,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:52:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:52:45,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:52:46,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:52:46,082.082 INFO    ] time= 25/10/2026 04:52:46
[2026-10-25 04:52:46,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:52:46,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:52:46,229.229 INFO    ] No existing commands found in stream
[2026-10-25 04:52:51,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:52:51,264.264 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 04:52:52,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:52:52,415.415 INFO    ] Checking for system updates...
[2026-10-25 04:52:52,455.455 INFO    ] 200
[2026-10-25 04:52:52,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:52,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:52:52,519.519 INFO    ] No update needed
[2026-10-25 04:52:52,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 04:52:52,556.556 INFO    ] 200
[2026-10-25 04:52:52,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:52:52,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:52:52,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:52:52,655.655 INFO    ] No camera update needed
[2026-10-25 04:52:52,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:52:52,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:52:52,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:52:52,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:52:54,710.710 INFO    ] ================================================
[2026-10-25 04:52:54,725.725 INFO    ] Launching Daemon at Sun Oct 25 04:52:54 IST 2026
[2026-10-25 04:52:54,736.736 INFO    ] ================================================
[2026-10-25 04:52:55,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:52:55
[2026-10-25 04:52:55,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:52:56,225.225 INFO    ] Initializing speech engine...
[2026-10-25 04:52:56,231.231 INFO    ] 2026-10-25 04:52:56
[2026-10-25 04:52:56,521.521 INFO    ] 2026-10-25 04:52:56
[2026-10-25 04:52:56,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:52:56,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:52:56,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:52:57,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:52:57,068.068 INFO    ] time= 25/10/2026 04:52:57
[2026-10-25 04:52:57,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:52:57,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:52:57,229.229 INFO    ] No existing commands found in stream
[2026-10-25 04:53:02,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:53:02,257.257 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 04:53:05,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:53:05,831.831 INFO    ] Checking for system updates...
[2026-10-25 04:53:05,866.866 INFO    ] 200
[2026-10-25 04:53:05,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:05,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:05,924.924 INFO    ] No update needed
[2026-10-25 04:53:05,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 04:53:05,961.961 INFO    ] 200
[2026-10-25 04:53:05,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:06,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:53:06,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:06,055.055 INFO    ] No camera update needed
[2026-10-25 04:53:06,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:53:06,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:53:06,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:53:06,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:53:08,111.111 INFO    ] ================================================
[2026-10-25 04:53:08,126.126 INFO    ] Launching Daemon at Sun Oct 25 04:53:08 IST 2026
[2026-10-25 04:53:08,136.136 INFO    ] ================================================
[2026-10-25 04:53:08,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:53:08
[2026-10-25 04:53:09,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:53:09,592.592 INFO    ] Initializing speech engine...
[2026-10-25 04:53:09,602.602 INFO    ] 2026-10-25 04:53:09
[2026-10-25 04:53:09,864.864 INFO    ] 2026-10-25 04:53:09
[2026-10-25 04:53:09,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:53:10,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:53:10,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:53:10,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:53:10,336.336 INFO    ] time= 25/10/2026 04:53:10
[2026-10-25 04:53:10,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:53:10,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:53:10,477.477 INFO    ] No existing commands found in stream
[2026-10-25 04:53:15,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:53:15,492.492 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 04:53:18,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:53:18,919.919 INFO    ] Checking for system updates...
[2026-10-25 04:53:18,955.955 INFO    ] 200
[2026-10-25 04:53:18,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:19,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:19,014.014 INFO    ] No update needed
[2026-10-25 04:53:19,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 04:53:19,051.051 INFO    ] 200
[2026-10-25 04:53:19,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:19,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:53:19,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:19,263.263 INFO    ] No camera update needed
[2026-10-25 04:53:19,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:53:19,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:53:19,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:53:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:53:21,319.319 INFO    ] ================================================
[2026-10-25 04:53:21,333.333 INFO    ] Launching Daemon at Sun Oct 25 04:53:21 IST 2026
[2026-10-25 04:53:21,344.344 INFO    ] ================================================
[2026-10-25 04:53:21,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:53:21
[2026-10-25 04:53:22,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:53:22,975.975 INFO    ] Initializing speech engine...
[2026-10-25 04:53:22,989.989 INFO    ] 2026-10-25 04:53:22
[2026-10-25 04:53:23,275.275 INFO    ] 2026-10-25 04:53:23
[2026-10-25 04:53:23,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:53:23,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:53:23,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:53:23,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:53:23,735.735 INFO    ] time= 25/10/2026 04:53:23
[2026-10-25 04:53:23,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:53:23,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:53:23,893.893 INFO    ] No existing commands found in stream
[2026-10-25 04:53:28,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:53:28,921.921 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 04:53:29,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:53:29,748.748 INFO    ] Checking for system updates...
[2026-10-25 04:53:29,789.789 INFO    ] 200
[2026-10-25 04:53:29,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:29,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:29,854.854 INFO    ] No update needed
[2026-10-25 04:53:29,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 04:53:29,895.895 INFO    ] 200
[2026-10-25 04:53:29,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:29,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:53:29,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:29,989.989 INFO    ] No camera update needed
[2026-10-25 04:53:29,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:53:29,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:53:30,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:53:30,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:53:32,046.046 INFO    ] ================================================
[2026-10-25 04:53:32,063.063 INFO    ] Launching Daemon at Sun Oct 25 04:53:32 IST 2026
[2026-10-25 04:53:32,076.076 INFO    ] ================================================
[2026-10-25 04:53:32,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:53:32
[2026-10-25 04:53:33,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:53:33,706.706 INFO    ] Initializing speech engine...
[2026-10-25 04:53:33,720.720 INFO    ] 2026-10-25 04:53:33
[2026-10-25 04:53:34,009.009 INFO    ] 2026-10-25 04:53:34
[2026-10-25 04:53:34,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:53:34,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:53:34,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:53:34,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:53:34,537.537 INFO    ] time= 25/10/2026 04:53:34
[2026-10-25 04:53:34,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:53:34,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:53:34,693.693 INFO    ] No existing commands found in stream
[2026-10-25 04:53:39,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:53:39,721.721 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 04:53:40,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:53:40,944.944 INFO    ] Checking for system updates...
[2026-10-25 04:53:40,980.980 INFO    ] 200
[2026-10-25 04:53:40,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:41,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:41,038.038 INFO    ] No update needed
[2026-10-25 04:53:41,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 04:53:41,074.074 INFO    ] 200
[2026-10-25 04:53:41,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:41,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:53:41,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:41,176.176 INFO    ] No camera update needed
[2026-10-25 04:53:41,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:53:41,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:53:41,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:53:41,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:53:43,232.232 INFO    ] ================================================
[2026-10-25 04:53:43,248.248 INFO    ] Launching Daemon at Sun Oct 25 04:53:43 IST 2026
[2026-10-25 04:53:43,259.259 INFO    ] ================================================
[2026-10-25 04:53:43,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:53:43
[2026-10-25 04:53:44,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:53:44,837.837 INFO    ] Initializing speech engine...
[2026-10-25 04:53:44,844.844 INFO    ] 2026-10-25 04:53:44
[2026-10-25 04:53:45,118.118 INFO    ] 2026-10-25 04:53:45
[2026-10-25 04:53:45,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:53:45,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:53:45,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:53:45,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:53:45,621.621 INFO    ] time= 25/10/2026 04:53:45
[2026-10-25 04:53:45,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:53:45,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:53:45,830.830 INFO    ] No existing commands found in stream
[2026-10-25 04:53:50,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:53:50,857.857 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 04:53:52,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:53:52,593.593 INFO    ] Checking for system updates...
[2026-10-25 04:53:52,630.630 INFO    ] 200
[2026-10-25 04:53:52,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:52,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:52,693.693 INFO    ] No update needed
[2026-10-25 04:53:52,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 04:53:52,729.729 INFO    ] 200
[2026-10-25 04:53:52,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:53:52,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:53:52,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:53:52,847.847 INFO    ] No camera update needed
[2026-10-25 04:53:52,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:53:52,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:53:52,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:53:52,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:53:54,902.902 INFO    ] ================================================
[2026-10-25 04:53:54,918.918 INFO    ] Launching Daemon at Sun Oct 25 04:53:54 IST 2026
[2026-10-25 04:53:54,928.928 INFO    ] ================================================
[2026-10-25 04:53:55,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:53:55
[2026-10-25 04:53:56,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:53:56,383.383 INFO    ] Initializing speech engine...
[2026-10-25 04:53:56,393.393 INFO    ] 2026-10-25 04:53:56
[2026-10-25 04:53:56,650.650 INFO    ] 2026-10-25 04:53:56
[2026-10-25 04:53:56,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:53:56,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:53:56,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:53:57,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:53:57,114.114 INFO    ] time= 25/10/2026 04:53:57
[2026-10-25 04:53:57,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:53:57,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:53:57,290.290 INFO    ] No existing commands found in stream
[2026-10-25 04:54:02,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:54:02,306.306 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 04:54:04,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:54:04,731.731 INFO    ] Checking for system updates...
[2026-10-25 04:54:04,768.768 INFO    ] 200
[2026-10-25 04:54:04,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:04,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:54:04,826.826 INFO    ] No update needed
[2026-10-25 04:54:04,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 04:54:04,862.862 INFO    ] 200
[2026-10-25 04:54:04,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:04,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:54:04,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:54:04,955.955 INFO    ] No camera update needed
[2026-10-25 04:54:04,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:54:04,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:54:04,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:54:04,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:54:07,013.013 INFO    ] ================================================
[2026-10-25 04:54:07,029.029 INFO    ] Launching Daemon at Sun Oct 25 04:54:07 IST 2026
[2026-10-25 04:54:07,040.040 INFO    ] ================================================
[2026-10-25 04:54:07,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:54:07
[2026-10-25 04:54:08,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:54:08,503.503 INFO    ] Initializing speech engine...
[2026-10-25 04:54:08,513.513 INFO    ] 2026-10-25 04:54:08
[2026-10-25 04:54:08,779.779 INFO    ] 2026-10-25 04:54:08
[2026-10-25 04:54:08,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:54:09,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:54:09,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:54:09,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:54:09,188.188 INFO    ] time= 25/10/2026 04:54:09
[2026-10-25 04:54:09,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:54:09,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:54:09,276.276 INFO    ] No existing commands found in stream
[2026-10-25 04:54:14,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:54:14,291.291 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 04:54:16,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:54:16,874.874 INFO    ] Checking for system updates...
[2026-10-25 04:54:16,917.917 INFO    ] 200
[2026-10-25 04:54:16,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:16,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:16,975.975 INFO    ] No update needed
[2026-10-25 04:54:16,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 04:54:17,011.011 INFO    ] 200
[2026-10-25 04:54:17,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:17,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:54:17,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:17,113.113 INFO    ] No camera update needed
[2026-10-25 04:54:17,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:54:17,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:54:17,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:54:17,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:54:19,170.170 INFO    ] ================================================
[2026-10-25 04:54:19,185.185 INFO    ] Launching Daemon at Sun Oct 25 04:54:19 IST 2026
[2026-10-25 04:54:19,197.197 INFO    ] ================================================
[2026-10-25 04:54:19,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:54:19
[2026-10-25 04:54:20,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:54:20,596.596 INFO    ] Initializing speech engine...
[2026-10-25 04:54:20,602.602 INFO    ] 2026-10-25 04:54:20
[2026-10-25 04:54:20,893.893 INFO    ] 2026-10-25 04:54:20
[2026-10-25 04:54:20,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:54:21,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:54:21,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:54:21,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:54:21,308.308 INFO    ] time= 25/10/2026 04:54:21
[2026-10-25 04:54:21,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:54:21,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:54:21,474.474 INFO    ] No existing commands found in stream
[2026-10-25 04:54:26,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:54:26,502.502 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 04:54:29,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:54:29,530.530 INFO    ] Checking for system updates...
[2026-10-25 04:54:29,569.569 INFO    ] 200
[2026-10-25 04:54:29,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:29,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:54:29,633.633 INFO    ] No update needed
[2026-10-25 04:54:29,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 04:54:29,672.672 INFO    ] 200
[2026-10-25 04:54:29,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:29,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:54:29,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:54:29,775.775 INFO    ] No camera update needed
[2026-10-25 04:54:29,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:54:29,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:54:29,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:54:29,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:54:31,832.832 INFO    ] ================================================
[2026-10-25 04:54:31,849.849 INFO    ] Launching Daemon at Sun Oct 25 04:54:31 IST 2026
[2026-10-25 04:54:31,861.861 INFO    ] ================================================
[2026-10-25 04:54:32,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:54:32
[2026-10-25 04:54:33,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:54:33,520.520 INFO    ] Initializing speech engine...
[2026-10-25 04:54:33,532.532 INFO    ] 2026-10-25 04:54:33
[2026-10-25 04:54:33,815.815 INFO    ] 2026-10-25 04:54:33
[2026-10-25 04:54:33,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:54:34,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:54:34,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:54:34,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:54:34,356.356 INFO    ] time= 25/10/2026 04:54:34
[2026-10-25 04:54:34,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:54:34,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:54:34,504.504 INFO    ] No existing commands found in stream
[2026-10-25 04:54:39,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:54:39,533.533 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 04:54:43,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:54:43,676.676 INFO    ] Checking for system updates...
[2026-10-25 04:54:43,713.713 INFO    ] 200
[2026-10-25 04:54:43,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:43,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:43,779.779 INFO    ] No update needed
[2026-10-25 04:54:43,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 04:54:43,820.820 INFO    ] 200
[2026-10-25 04:54:43,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:43,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:54:43,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:43,918.918 INFO    ] No camera update needed
[2026-10-25 04:54:43,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:54:43,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:54:43,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:54:43,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:54:45,978.978 INFO    ] ================================================
[2026-10-25 04:54:46,995.995 INFO    ] Launching Daemon at Sun Oct 25 04:54:45 IST 2026
[2026-10-25 04:54:46,007.007 INFO    ] ================================================
[2026-10-25 04:54:46,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:54:46
[2026-10-25 04:54:47,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:54:47,526.526 INFO    ] Initializing speech engine...
[2026-10-25 04:54:47,535.535 INFO    ] 2026-10-25 04:54:47
[2026-10-25 04:54:47,793.793 INFO    ] 2026-10-25 04:54:47
[2026-10-25 04:54:47,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:54:48,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:54:48,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:54:48,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:54:48,255.255 INFO    ] time= 25/10/2026 04:54:48
[2026-10-25 04:54:48,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:54:48,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:54:48,395.395 INFO    ] No existing commands found in stream
[2026-10-25 04:54:53,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:54:53,410.410 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 04:54:55,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:54:55,878.878 INFO    ] Checking for system updates...
[2026-10-25 04:54:55,914.914 INFO    ] 200
[2026-10-25 04:54:55,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:55,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:55,972.972 INFO    ] No update needed
[2026-10-25 04:54:55,974.974 INFO    ] Checking for camera pi updates...
[2026-10-25 04:54:56,009.009 INFO    ] 200
[2026-10-25 04:54:56,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:54:56,051.051 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:54:56,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:54:56,104.104 INFO    ] No camera update needed
[2026-10-25 04:54:56,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:54:56,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:54:56,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:54:56,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:54:58,162.162 INFO    ] ================================================
[2026-10-25 04:54:58,178.178 INFO    ] Launching Daemon at Sun Oct 25 04:54:58 IST 2026
[2026-10-25 04:54:58,189.189 INFO    ] ================================================
[2026-10-25 04:54:58,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:54:58
[2026-10-25 04:54:59,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:54:59,786.786 INFO    ] Initializing speech engine...
[2026-10-25 04:54:59,800.800 INFO    ] 2026-10-25 04:54:59
[2026-10-25 04:55:00,075.075 INFO    ] 2026-10-25 04:55:00
[2026-10-25 04:55:00,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:55:00,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:55:00,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:55:00,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:55:00,606.606 INFO    ] time= 25/10/2026 04:55:00
[2026-10-25 04:55:00,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:55:00,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:55:00,741.741 INFO    ] No existing commands found in stream
[2026-10-25 04:55:05,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:55:05,772.772 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 04:55:09,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:55:09,202.202 INFO    ] Checking for system updates...
[2026-10-25 04:55:09,243.243 INFO    ] 200
[2026-10-25 04:55:09,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:09,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:09,305.305 INFO    ] No update needed
[2026-10-25 04:55:09,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 04:55:09,341.341 INFO    ] 200
[2026-10-25 04:55:09,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:09,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:55:09,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:09,439.439 INFO    ] No camera update needed
[2026-10-25 04:55:09,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:55:09,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:55:09,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:55:09,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:55:11,496.496 INFO    ] ================================================
[2026-10-25 04:55:11,512.512 INFO    ] Launching Daemon at Sun Oct 25 04:55:11 IST 2026
[2026-10-25 04:55:11,522.522 INFO    ] ================================================
[2026-10-25 04:55:12,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:55:12
[2026-10-25 04:55:12,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:55:13,102.102 INFO    ] Initializing speech engine...
[2026-10-25 04:55:13,110.110 INFO    ] 2026-10-25 04:55:13
[2026-10-25 04:55:13,420.420 INFO    ] 2026-10-25 04:55:13
[2026-10-25 04:55:13,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:55:13,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:55:13,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:55:13,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:55:13,925.925 INFO    ] time= 25/10/2026 04:55:13
[2026-10-25 04:55:13,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:55:13,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:55:14,047.047 INFO    ] No existing commands found in stream
[2026-10-25 04:55:19,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:55:19,081.081 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 04:55:22,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:55:22,091.091 INFO    ] Checking for system updates...
[2026-10-25 04:55:22,127.127 INFO    ] 200
[2026-10-25 04:55:22,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:22,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:22,188.188 INFO    ] No update needed
[2026-10-25 04:55:22,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 04:55:22,224.224 INFO    ] 200
[2026-10-25 04:55:22,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:22,275.275 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:55:22,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:22,452.452 INFO    ] No camera update needed
[2026-10-25 04:55:22,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:55:22,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:55:22,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:55:22,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:55:24,506.506 INFO    ] ================================================
[2026-10-25 04:55:24,521.521 INFO    ] Launching Daemon at Sun Oct 25 04:55:24 IST 2026
[2026-10-25 04:55:24,531.531 INFO    ] ================================================
[2026-10-25 04:55:25,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:55:25
[2026-10-25 04:55:25,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:55:26,075.075 INFO    ] Initializing speech engine...
[2026-10-25 04:55:26,082.082 INFO    ] 2026-10-25 04:55:26
[2026-10-25 04:55:26,363.363 INFO    ] 2026-10-25 04:55:26
[2026-10-25 04:55:26,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:55:26,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:55:26,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:55:26,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:55:26,919.919 INFO    ] time= 25/10/2026 04:55:26
[2026-10-25 04:55:26,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:55:26,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:55:27,048.048 INFO    ] No existing commands found in stream
[2026-10-25 04:55:32,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:55:32,078.078 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 04:55:34,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:55:34,195.195 INFO    ] Checking for system updates...
[2026-10-25 04:55:34,231.231 INFO    ] 200
[2026-10-25 04:55:34,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:34,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:55:34,299.299 INFO    ] No update needed
[2026-10-25 04:55:34,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 04:55:34,337.337 INFO    ] 200
[2026-10-25 04:55:34,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:34,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:55:34,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:55:34,434.434 INFO    ] No camera update needed
[2026-10-25 04:55:34,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:55:34,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:55:34,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:55:34,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:55:36,489.489 INFO    ] ================================================
[2026-10-25 04:55:36,504.504 INFO    ] Launching Daemon at Sun Oct 25 04:55:36 IST 2026
[2026-10-25 04:55:36,514.514 INFO    ] ================================================
[2026-10-25 04:55:37,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:55:37
[2026-10-25 04:55:37,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:55:37,916.916 INFO    ] Initializing speech engine...
[2026-10-25 04:55:37,925.925 INFO    ] 2026-10-25 04:55:37
[2026-10-25 04:55:38,212.212 INFO    ] 2026-10-25 04:55:38
[2026-10-25 04:55:38,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:55:38,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:55:38,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:55:38,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:55:38,622.622 INFO    ] time= 25/10/2026 04:55:38
[2026-10-25 04:55:38,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:55:38,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:55:38,781.781 INFO    ] No existing commands found in stream
[2026-10-25 04:55:43,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:55:43,809.809 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 04:55:44,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:55:44,474.474 INFO    ] Checking for system updates...
[2026-10-25 04:55:44,513.513 INFO    ] 200
[2026-10-25 04:55:44,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:44,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:44,571.571 INFO    ] No update needed
[2026-10-25 04:55:44,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 04:55:44,606.606 INFO    ] 200
[2026-10-25 04:55:44,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:44,652.652 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:55:44,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:44,710.710 INFO    ] No camera update needed
[2026-10-25 04:55:44,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:55:44,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:55:44,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:55:44,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:55:46,764.764 INFO    ] ================================================
[2026-10-25 04:55:46,779.779 INFO    ] Launching Daemon at Sun Oct 25 04:55:46 IST 2026
[2026-10-25 04:55:46,789.789 INFO    ] ================================================
[2026-10-25 04:55:47,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:55:47
[2026-10-25 04:55:47,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:55:48,237.237 INFO    ] Initializing speech engine...
[2026-10-25 04:55:48,261.261 INFO    ] 2026-10-25 04:55:48
[2026-10-25 04:55:48,530.530 INFO    ] 2026-10-25 04:55:48
[2026-10-25 04:55:48,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:55:48,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:55:48,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:55:48,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:55:48,942.942 INFO    ] time= 25/10/2026 04:55:48
[2026-10-25 04:55:48,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:55:48,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:55:49,025.025 INFO    ] No existing commands found in stream
[2026-10-25 04:55:54,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:55:54,040.040 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 04:55:57,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:55:57,365.365 INFO    ] Checking for system updates...
[2026-10-25 04:55:57,401.401 INFO    ] 200
[2026-10-25 04:55:57,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:57,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:57,459.459 INFO    ] No update needed
[2026-10-25 04:55:57,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 04:55:57,495.495 INFO    ] 200
[2026-10-25 04:55:57,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:55:57,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:55:57,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:55:57,591.591 INFO    ] No camera update needed
[2026-10-25 04:55:57,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:55:57,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:55:57,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:55:57,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:55:59,645.645 INFO    ] ================================================
[2026-10-25 04:55:59,661.661 INFO    ] Launching Daemon at Sun Oct 25 04:55:59 IST 2026
[2026-10-25 04:55:59,671.671 INFO    ] ================================================
[2026-10-25 04:56:00,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:00
[2026-10-25 04:56:00,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:01,242.242 INFO    ] Initializing speech engine...
[2026-10-25 04:56:01,252.252 INFO    ] 2026-10-25 04:56:01
[2026-10-25 04:56:01,541.541 INFO    ] 2026-10-25 04:56:01
[2026-10-25 04:56:01,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:01,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:01,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:02,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:02,030.030 INFO    ] time= 25/10/2026 04:56:02
[2026-10-25 04:56:02,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:02,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:02,165.165 INFO    ] No existing commands found in stream
[2026-10-25 04:56:07,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:56:07,178.178 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 04:56:08,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:56:08,426.426 INFO    ] Checking for system updates...
[2026-10-25 04:56:08,465.465 INFO    ] 200
[2026-10-25 04:56:08,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:08,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:08,527.527 INFO    ] No update needed
[2026-10-25 04:56:08,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 04:56:08,565.565 INFO    ] 200
[2026-10-25 04:56:08,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:08,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:56:08,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:08,675.675 INFO    ] No camera update needed
[2026-10-25 04:56:08,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:56:08,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:56:08,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:56:08,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:56:10,730.730 INFO    ] ================================================
[2026-10-25 04:56:10,745.745 INFO    ] Launching Daemon at Sun Oct 25 04:56:10 IST 2026
[2026-10-25 04:56:10,756.756 INFO    ] ================================================
[2026-10-25 04:56:11,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:11
[2026-10-25 04:56:11,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:12,203.203 INFO    ] Initializing speech engine...
[2026-10-25 04:56:12,214.214 INFO    ] 2026-10-25 04:56:12
[2026-10-25 04:56:12,476.476 INFO    ] 2026-10-25 04:56:12
[2026-10-25 04:56:12,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:12,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:12,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:12,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:13,020.020 INFO    ] time= 25/10/2026 04:56:12
[2026-10-25 04:56:13,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:13,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:13,155.155 INFO    ] No existing commands found in stream
[2026-10-25 04:56:18,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:56:18,185.185 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 04:56:18,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:56:18,789.789 INFO    ] Checking for system updates...
[2026-10-25 04:56:18,825.825 INFO    ] 200
[2026-10-25 04:56:18,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:18,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:56:18,884.884 INFO    ] No update needed
[2026-10-25 04:56:18,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 04:56:18,920.920 INFO    ] 200
[2026-10-25 04:56:18,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:18,963.963 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:56:19,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:56:19,014.014 INFO    ] No camera update needed
[2026-10-25 04:56:19,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:56:19,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:56:19,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:56:19,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:56:21,070.070 INFO    ] ================================================
[2026-10-25 04:56:21,085.085 INFO    ] Launching Daemon at Sun Oct 25 04:56:21 IST 2026
[2026-10-25 04:56:21,095.095 INFO    ] ================================================
[2026-10-25 04:56:21,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:21
[2026-10-25 04:56:22,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:22,546.546 INFO    ] Initializing speech engine...
[2026-10-25 04:56:22,553.553 INFO    ] 2026-10-25 04:56:22
[2026-10-25 04:56:22,814.814 INFO    ] 2026-10-25 04:56:22
[2026-10-25 04:56:22,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:23,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:23,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:23,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:23,274.274 INFO    ] time= 25/10/2026 04:56:23
[2026-10-25 04:56:23,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:23,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:23,472.472 INFO    ] No existing commands found in stream
[2026-10-25 04:56:28,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:56:28,496.496 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 04:56:31,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:56:31,502.502 INFO    ] Checking for system updates...
[2026-10-25 04:56:31,546.546 INFO    ] 200
[2026-10-25 04:56:31,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:31,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:31,604.604 INFO    ] No update needed
[2026-10-25 04:56:31,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 04:56:31,641.641 INFO    ] 200
[2026-10-25 04:56:31,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:31,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:56:31,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:31,741.741 INFO    ] No camera update needed
[2026-10-25 04:56:31,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:56:31,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:56:31,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:56:31,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:56:33,796.796 INFO    ] ================================================
[2026-10-25 04:56:33,811.811 INFO    ] Launching Daemon at Sun Oct 25 04:56:33 IST 2026
[2026-10-25 04:56:33,821.821 INFO    ] ================================================
[2026-10-25 04:56:34,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:34
[2026-10-25 04:56:35,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:35,388.388 INFO    ] Initializing speech engine...
[2026-10-25 04:56:35,396.396 INFO    ] 2026-10-25 04:56:35
[2026-10-25 04:56:35,663.663 INFO    ] 2026-10-25 04:56:35
[2026-10-25 04:56:35,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:35,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:35,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:36,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:36,155.155 INFO    ] time= 25/10/2026 04:56:36
[2026-10-25 04:56:36,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:36,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:36,339.339 INFO    ] No existing commands found in stream
[2026-10-25 04:56:41,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:56:41,368.368 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 04:56:43,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:56:43,619.619 INFO    ] Checking for system updates...
[2026-10-25 04:56:43,660.660 INFO    ] 200
[2026-10-25 04:56:43,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:43,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:56:43,723.723 INFO    ] No update needed
[2026-10-25 04:56:43,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 04:56:43,759.759 INFO    ] 200
[2026-10-25 04:56:43,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:43,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:56:43,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:56:43,853.853 INFO    ] No camera update needed
[2026-10-25 04:56:43,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:56:43,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:56:43,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:56:43,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:56:45,908.908 INFO    ] ================================================
[2026-10-25 04:56:45,924.924 INFO    ] Launching Daemon at Sun Oct 25 04:56:45 IST 2026
[2026-10-25 04:56:45,935.935 INFO    ] ================================================
[2026-10-25 04:56:46,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:46
[2026-10-25 04:56:47,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:47,391.391 INFO    ] Initializing speech engine...
[2026-10-25 04:56:47,400.400 INFO    ] 2026-10-25 04:56:47
[2026-10-25 04:56:47,661.661 INFO    ] 2026-10-25 04:56:47
[2026-10-25 04:56:47,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:47,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:48,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:48,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:48,204.204 INFO    ] time= 25/10/2026 04:56:48
[2026-10-25 04:56:48,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:48,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:48,352.352 INFO    ] No existing commands found in stream
[2026-10-25 04:56:53,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:56:53,370.370 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 04:56:54,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:56:54,364.364 INFO    ] Checking for system updates...
[2026-10-25 04:56:54,403.403 INFO    ] 200
[2026-10-25 04:56:54,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:54,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:54,461.461 INFO    ] No update needed
[2026-10-25 04:56:54,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 04:56:54,502.502 INFO    ] 200
[2026-10-25 04:56:54,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:56:54,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:56:54,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:56:54,628.628 INFO    ] No camera update needed
[2026-10-25 04:56:54,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:56:54,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:56:54,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:56:54,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:56:56,684.684 INFO    ] ================================================
[2026-10-25 04:56:56,699.699 INFO    ] Launching Daemon at Sun Oct 25 04:56:56 IST 2026
[2026-10-25 04:56:56,710.710 INFO    ] ================================================
[2026-10-25 04:56:57,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:56:57
[2026-10-25 04:56:57,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:56:58,291.291 INFO    ] Initializing speech engine...
[2026-10-25 04:56:58,300.300 INFO    ] 2026-10-25 04:56:58
[2026-10-25 04:56:58,572.572 INFO    ] 2026-10-25 04:56:58
[2026-10-25 04:56:58,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:56:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:56:59,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:56:59,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:56:59,576.576 INFO    ] time= 25/10/2026 04:56:59
[2026-10-25 04:56:59,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:56:59,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:56:59,716.716 INFO    ] No existing commands found in stream
[2026-10-25 04:57:04,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:57:04,735.735 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 04:57:05,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:57:05,204.204 INFO    ] Checking for system updates...
[2026-10-25 04:57:05,241.241 INFO    ] 200
[2026-10-25 04:57:05,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:05,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:05,300.300 INFO    ] No update needed
[2026-10-25 04:57:05,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 04:57:05,337.337 INFO    ] 200
[2026-10-25 04:57:05,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:05,385.385 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:57:05,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:05,444.444 INFO    ] No camera update needed
[2026-10-25 04:57:05,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:57:05,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:57:05,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:57:05,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:57:07,500.500 INFO    ] ================================================
[2026-10-25 04:57:07,515.515 INFO    ] Launching Daemon at Sun Oct 25 04:57:07 IST 2026
[2026-10-25 04:57:07,526.526 INFO    ] ================================================
[2026-10-25 04:57:08,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:57:08
[2026-10-25 04:57:08,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:57:08,937.937 INFO    ] Initializing speech engine...
[2026-10-25 04:57:08,944.944 INFO    ] 2026-10-25 04:57:08
[2026-10-25 04:57:09,235.235 INFO    ] 2026-10-25 04:57:09
[2026-10-25 04:57:09,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:57:09,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:57:09,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:57:09,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:57:09,639.639 INFO    ] time= 25/10/2026 04:57:09
[2026-10-25 04:57:09,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:57:09,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:57:09,722.722 INFO    ] No existing commands found in stream
[2026-10-25 04:57:14,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:57:14,737.737 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 04:57:15,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 04:57:15,337.337 INFO    ] Checking for system updates...
[2026-10-25 04:57:15,376.376 INFO    ] 200
[2026-10-25 04:57:15,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:15,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:15,433.433 INFO    ] No update needed
[2026-10-25 04:57:15,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 04:57:15,472.472 INFO    ] 200
[2026-10-25 04:57:15,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:15,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:57:15,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:15,565.565 INFO    ] No camera update needed
[2026-10-25 04:57:15,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:57:15,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:57:15,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:57:15,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:57:17,621.621 INFO    ] ================================================
[2026-10-25 04:57:17,635.635 INFO    ] Launching Daemon at Sun Oct 25 04:57:17 IST 2026
[2026-10-25 04:57:17,646.646 INFO    ] ================================================
[2026-10-25 04:57:18,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:57:18
[2026-10-25 04:57:18,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:57:19,071.071 INFO    ] Initializing speech engine...
[2026-10-25 04:57:19,083.083 INFO    ] 2026-10-25 04:57:19
[2026-10-25 04:57:19,333.333 INFO    ] 2026-10-25 04:57:19
[2026-10-25 04:57:19,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:57:19,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:57:19,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:57:19,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:57:19,821.821 INFO    ] time= 25/10/2026 04:57:19
[2026-10-25 04:57:19,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:57:19,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:57:20,002.002 INFO    ] No existing commands found in stream
[2026-10-25 04:57:25,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:57:25,036.036 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 04:57:29,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:57:29,633.633 INFO    ] Checking for system updates...
[2026-10-25 04:57:29,669.669 INFO    ] 200
[2026-10-25 04:57:29,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:29,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:29,732.732 INFO    ] No update needed
[2026-10-25 04:57:29,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 04:57:29,769.769 INFO    ] 200
[2026-10-25 04:57:29,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:29,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:57:29,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:29,981.981 INFO    ] No camera update needed
[2026-10-25 04:57:29,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:57:29,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:57:29,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:57:29,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:57:32,038.038 INFO    ] ================================================
[2026-10-25 04:57:32,055.055 INFO    ] Launching Daemon at Sun Oct 25 04:57:32 IST 2026
[2026-10-25 04:57:32,066.066 INFO    ] ================================================
[2026-10-25 04:57:32,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:57:32
[2026-10-25 04:57:33,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:57:33,666.666 INFO    ] Initializing speech engine...
[2026-10-25 04:57:33,676.676 INFO    ] 2026-10-25 04:57:33
[2026-10-25 04:57:33,947.947 INFO    ] 2026-10-25 04:57:33
[2026-10-25 04:57:34,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:57:34,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:57:34,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:57:34,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:57:34,456.456 INFO    ] time= 25/10/2026 04:57:34
[2026-10-25 04:57:34,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:57:34,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:57:34,631.631 INFO    ] No existing commands found in stream
[2026-10-25 04:57:39,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:57:39,662.662 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 04:57:42,186.186 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:57:42,189.189 INFO    ] Checking for system updates...
[2026-10-25 04:57:42,225.225 INFO    ] 200
[2026-10-25 04:57:42,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:42,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:42,283.283 INFO    ] No update needed
[2026-10-25 04:57:42,285.285 INFO    ] Checking for camera pi updates...
[2026-10-25 04:57:42,319.319 INFO    ] 200
[2026-10-25 04:57:42,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:42,362.362 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:57:42,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:42,426.426 INFO    ] No camera update needed
[2026-10-25 04:57:42,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:57:42,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:57:42,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:57:42,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:57:44,481.481 INFO    ] ================================================
[2026-10-25 04:57:44,495.495 INFO    ] Launching Daemon at Sun Oct 25 04:57:44 IST 2026
[2026-10-25 04:57:44,506.506 INFO    ] ================================================
[2026-10-25 04:57:45,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:57:45
[2026-10-25 04:57:45,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:57:45,925.925 INFO    ] Initializing speech engine...
[2026-10-25 04:57:45,932.932 INFO    ] 2026-10-25 04:57:45
[2026-10-25 04:57:46,182.182 INFO    ] 2026-10-25 04:57:46
[2026-10-25 04:57:46,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:57:46,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:57:46,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:57:46,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:57:46,554.554 INFO    ] time= 25/10/2026 04:57:46
[2026-10-25 04:57:46,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:57:46,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:57:46,630.630 INFO    ] No existing commands found in stream
[2026-10-25 04:57:51,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:57:51,668.668 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 04:57:55,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:57:55,829.829 INFO    ] Checking for system updates...
[2026-10-25 04:57:55,865.865 INFO    ] 200
[2026-10-25 04:57:55,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:55,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:55,928.928 INFO    ] No update needed
[2026-10-25 04:57:55,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 04:57:55,967.967 INFO    ] 200
[2026-10-25 04:57:55,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:57:56,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:57:56,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:57:56,063.063 INFO    ] No camera update needed
[2026-10-25 04:57:56,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:57:56,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:57:56,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:57:56,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:57:58,118.118 INFO    ] ================================================
[2026-10-25 04:57:58,133.133 INFO    ] Launching Daemon at Sun Oct 25 04:57:58 IST 2026
[2026-10-25 04:57:58,144.144 INFO    ] ================================================
[2026-10-25 04:57:58,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:57:58
[2026-10-25 04:57:59,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:57:59,549.549 INFO    ] Initializing speech engine...
[2026-10-25 04:57:59,562.562 INFO    ] 2026-10-25 04:57:59
[2026-10-25 04:57:59,846.846 INFO    ] 2026-10-25 04:57:59
[2026-10-25 04:57:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:58:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:58:00,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:58:00,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:58:00,340.340 INFO    ] time= 25/10/2026 04:58:00
[2026-10-25 04:58:00,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:58:00,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:58:00,521.521 INFO    ] No existing commands found in stream
[2026-10-25 04:58:05,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:58:05,536.536 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 04:58:09,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:58:09,262.262 INFO    ] Checking for system updates...
[2026-10-25 04:58:09,297.297 INFO    ] 200
[2026-10-25 04:58:09,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:09,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:09,358.358 INFO    ] No update needed
[2026-10-25 04:58:09,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 04:58:09,395.395 INFO    ] 200
[2026-10-25 04:58:09,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:09,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:58:09,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:09,503.503 INFO    ] No camera update needed
[2026-10-25 04:58:09,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:58:09,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:58:09,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:58:09,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:58:11,557.557 INFO    ] ================================================
[2026-10-25 04:58:11,572.572 INFO    ] Launching Daemon at Sun Oct 25 04:58:11 IST 2026
[2026-10-25 04:58:11,583.583 INFO    ] ================================================
[2026-10-25 04:58:12,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:58:12
[2026-10-25 04:58:12,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:58:13,003.003 INFO    ] Initializing speech engine...
[2026-10-25 04:58:13,023.023 INFO    ] 2026-10-25 04:58:13
[2026-10-25 04:58:13,294.294 INFO    ] 2026-10-25 04:58:13
[2026-10-25 04:58:13,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:58:13,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:58:13,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:58:13,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:58:13,671.671 INFO    ] time= 25/10/2026 04:58:13
[2026-10-25 04:58:13,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:58:13,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:58:13,774.774 INFO    ] No existing commands found in stream
[2026-10-25 04:58:18,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:58:18,788.788 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 04:58:22,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:58:22,780.780 INFO    ] Checking for system updates...
[2026-10-25 04:58:22,816.816 INFO    ] 200
[2026-10-25 04:58:22,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:22,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:22,883.883 INFO    ] No update needed
[2026-10-25 04:58:22,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 04:58:22,921.921 INFO    ] 200
[2026-10-25 04:58:22,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:22,967.967 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:58:23,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:23,018.018 INFO    ] No camera update needed
[2026-10-25 04:58:23,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:58:23,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:58:23,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:58:23,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:58:25,073.073 INFO    ] ================================================
[2026-10-25 04:58:25,089.089 INFO    ] Launching Daemon at Sun Oct 25 04:58:25 IST 2026
[2026-10-25 04:58:25,099.099 INFO    ] ================================================
[2026-10-25 04:58:25,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:58:25
[2026-10-25 04:58:26,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:58:26,649.649 INFO    ] Initializing speech engine...
[2026-10-25 04:58:26,659.659 INFO    ] 2026-10-25 04:58:26
[2026-10-25 04:58:26,932.932 INFO    ] 2026-10-25 04:58:26
[2026-10-25 04:58:26,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:58:27,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:58:27,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:58:27,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:58:27,458.458 INFO    ] time= 25/10/2026 04:58:27
[2026-10-25 04:58:27,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:58:27,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:58:27,602.602 INFO    ] No existing commands found in stream
[2026-10-25 04:58:32,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:58:32,629.629 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 04:58:36,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 04:58:36,069.069 INFO    ] Checking for system updates...
[2026-10-25 04:58:36,109.109 INFO    ] 200
[2026-10-25 04:58:36,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:36,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:36,173.173 INFO    ] No update needed
[2026-10-25 04:58:36,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 04:58:36,210.210 INFO    ] 200
[2026-10-25 04:58:36,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:36,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:58:36,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:36,318.318 INFO    ] No camera update needed
[2026-10-25 04:58:36,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:58:36,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:58:36,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:58:36,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:58:38,375.375 INFO    ] ================================================
[2026-10-25 04:58:38,390.390 INFO    ] Launching Daemon at Sun Oct 25 04:58:38 IST 2026
[2026-10-25 04:58:38,400.400 INFO    ] ================================================
[2026-10-25 04:58:39,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:58:39
[2026-10-25 04:58:39,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:58:39,952.952 INFO    ] Initializing speech engine...
[2026-10-25 04:58:39,960.960 INFO    ] 2026-10-25 04:58:39
[2026-10-25 04:58:40,246.246 INFO    ] 2026-10-25 04:58:40
[2026-10-25 04:58:40,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:58:40,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:58:40,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:58:40,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:58:40,774.774 INFO    ] time= 25/10/2026 04:58:40
[2026-10-25 04:58:40,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:58:40,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:58:40,928.928 INFO    ] No existing commands found in stream
[2026-10-25 04:58:45,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:58:45,946.946 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 04:58:50,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:58:50,149.149 INFO    ] Checking for system updates...
[2026-10-25 04:58:50,186.186 INFO    ] 200
[2026-10-25 04:58:50,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:50,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:50,244.244 INFO    ] No update needed
[2026-10-25 04:58:50,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 04:58:50,279.279 INFO    ] 200
[2026-10-25 04:58:50,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:58:50,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:58:50,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:58:50,385.385 INFO    ] No camera update needed
[2026-10-25 04:58:50,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:58:50,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:58:50,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:58:50,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:58:52,440.440 INFO    ] ================================================
[2026-10-25 04:58:52,455.455 INFO    ] Launching Daemon at Sun Oct 25 04:58:52 IST 2026
[2026-10-25 04:58:52,466.466 INFO    ] ================================================
[2026-10-25 04:58:53,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:58:53
[2026-10-25 04:58:53,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:58:53,872.872 INFO    ] Initializing speech engine...
[2026-10-25 04:58:53,894.894 INFO    ] 2026-10-25 04:58:53
[2026-10-25 04:58:54,147.147 INFO    ] 2026-10-25 04:58:54
[2026-10-25 04:58:54,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:58:54,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:58:54,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:58:54,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:58:54,630.630 INFO    ] time= 25/10/2026 04:58:54
[2026-10-25 04:58:54,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:58:54,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:58:54,823.823 INFO    ] No existing commands found in stream
[2026-10-25 04:58:59,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:58:59,851.851 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 04:59:01,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 04:59:01,707.707 INFO    ] Checking for system updates...
[2026-10-25 04:59:01,754.754 INFO    ] 200
[2026-10-25 04:59:01,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:01,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:59:01,837.837 INFO    ] No update needed
[2026-10-25 04:59:01,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 04:59:01,890.890 INFO    ] 200
[2026-10-25 04:59:01,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:01,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:59:01,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:59:02,000.000 INFO    ] No camera update needed
[2026-10-25 04:59:02,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:59:02,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:59:02,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:59:02,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:59:04,066.066 INFO    ] ================================================
[2026-10-25 04:59:04,082.082 INFO    ] Launching Daemon at Sun Oct 25 04:59:04 IST 2026
[2026-10-25 04:59:04,092.092 INFO    ] ================================================
[2026-10-25 04:59:04,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:59:04
[2026-10-25 04:59:05,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:59:05,693.693 INFO    ] Initializing speech engine...
[2026-10-25 04:59:05,702.702 INFO    ] 2026-10-25 04:59:05
[2026-10-25 04:59:05,972.972 INFO    ] 2026-10-25 04:59:05
[2026-10-25 04:59:06,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:59:06,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:59:06,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:59:06,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:59:06,457.457 INFO    ] time= 25/10/2026 04:59:06
[2026-10-25 04:59:06,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:59:06,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:59:06,652.652 INFO    ] No existing commands found in stream
[2026-10-25 04:59:11,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:59:11,688.688 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 04:59:12,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:59:12,951.951 INFO    ] Checking for system updates...
[2026-10-25 04:59:12,988.988 INFO    ] 200
[2026-10-25 04:59:12,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:13,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:13,047.047 INFO    ] No update needed
[2026-10-25 04:59:13,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 04:59:13,083.083 INFO    ] 200
[2026-10-25 04:59:13,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:13,135.135 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:59:13,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:13,192.192 INFO    ] No camera update needed
[2026-10-25 04:59:13,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:59:13,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:59:13,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:59:13,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:59:15,249.249 INFO    ] ================================================
[2026-10-25 04:59:15,264.264 INFO    ] Launching Daemon at Sun Oct 25 04:59:15 IST 2026
[2026-10-25 04:59:15,274.274 INFO    ] ================================================
[2026-10-25 04:59:15,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:59:15
[2026-10-25 04:59:16,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:59:16,687.687 INFO    ] Initializing speech engine...
[2026-10-25 04:59:16,695.695 INFO    ] 2026-10-25 04:59:16
[2026-10-25 04:59:16,943.943 INFO    ] 2026-10-25 04:59:16
[2026-10-25 04:59:16,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:59:17,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:59:17,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:59:17,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:59:17,417.417 INFO    ] time= 25/10/2026 04:59:17
[2026-10-25 04:59:17,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:59:17,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:59:17,563.563 INFO    ] No existing commands found in stream
[2026-10-25 04:59:22,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:59:22,575.575 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 04:59:26,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 04:59:26,513.513 INFO    ] Checking for system updates...
[2026-10-25 04:59:26,549.549 INFO    ] 200
[2026-10-25 04:59:26,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:26,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:26,606.606 INFO    ] No update needed
[2026-10-25 04:59:26,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 04:59:26,642.642 INFO    ] 200
[2026-10-25 04:59:26,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:26,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:59:26,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:26,748.748 INFO    ] No camera update needed
[2026-10-25 04:59:26,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:59:26,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:59:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:59:26,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:59:28,803.803 INFO    ] ================================================
[2026-10-25 04:59:28,819.819 INFO    ] Launching Daemon at Sun Oct 25 04:59:28 IST 2026
[2026-10-25 04:59:28,829.829 INFO    ] ================================================
[2026-10-25 04:59:29,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:59:29
[2026-10-25 04:59:29,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:59:30,234.234 INFO    ] Initializing speech engine...
[2026-10-25 04:59:30,257.257 INFO    ] 2026-10-25 04:59:30
[2026-10-25 04:59:30,508.508 INFO    ] 2026-10-25 04:59:30
[2026-10-25 04:59:30,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:59:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:59:30,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:59:30,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:59:30,876.876 INFO    ] time= 25/10/2026 04:59:30
[2026-10-25 04:59:30,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:59:30,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:59:31,048.048 INFO    ] No existing commands found in stream
[2026-10-25 04:59:36,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:59:36,076.076 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 04:59:39,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 04:59:39,634.634 INFO    ] Checking for system updates...
[2026-10-25 04:59:39,671.671 INFO    ] 200
[2026-10-25 04:59:39,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:39,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:59:39,739.739 INFO    ] No update needed
[2026-10-25 04:59:39,742.742 INFO    ] Checking for camera pi updates...
[2026-10-25 04:59:39,776.776 INFO    ] 200
[2026-10-25 04:59:39,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:39,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:59:39,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 04:59:39,880.880 INFO    ] No camera update needed
[2026-10-25 04:59:39,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:59:39,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:59:39,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:59:39,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:59:41,939.939 INFO    ] ================================================
[2026-10-25 04:59:41,954.954 INFO    ] Launching Daemon at Sun Oct 25 04:59:41 IST 2026
[2026-10-25 04:59:41,965.965 INFO    ] ================================================
[2026-10-25 04:59:42,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:59:42
[2026-10-25 04:59:43,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:59:43,370.370 INFO    ] Initializing speech engine...
[2026-10-25 04:59:43,384.384 INFO    ] 2026-10-25 04:59:43
[2026-10-25 04:59:43,664.664 INFO    ] 2026-10-25 04:59:43
[2026-10-25 04:59:43,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:59:43,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:59:43,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:59:44,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:59:44,080.080 INFO    ] time= 25/10/2026 04:59:44
[2026-10-25 04:59:44,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:59:44,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:59:44,237.237 INFO    ] No existing commands found in stream
[2026-10-25 04:59:49,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 04:59:49,260.260 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 04:59:50,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 04:59:50,489.489 INFO    ] Checking for system updates...
[2026-10-25 04:59:50,525.525 INFO    ] 200
[2026-10-25 04:59:50,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:50,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:50,583.583 INFO    ] No update needed
[2026-10-25 04:59:50,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 04:59:50,619.619 INFO    ] 200
[2026-10-25 04:59:50,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 04:59:50,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 04:59:50,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 04:59:50,711.711 INFO    ] No camera update needed
[2026-10-25 04:59:50,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-25 04:59:50,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 04:59:50,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 04:59:50,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 04:59:52,765.765 INFO    ] ================================================
[2026-10-25 04:59:52,779.779 INFO    ] Launching Daemon at Sun Oct 25 04:59:52 IST 2026
[2026-10-25 04:59:52,790.790 INFO    ] ================================================
[2026-10-25 04:59:53,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 04:59:53
[2026-10-25 04:59:54,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 04:59:54,406.406 INFO    ] Initializing speech engine...
[2026-10-25 04:59:54,416.416 INFO    ] 2026-10-25 04:59:54
[2026-10-25 04:59:54,685.685 INFO    ] 2026-10-25 04:59:54
[2026-10-25 04:59:54,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 04:59:54,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 04:59:54,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 04:59:55,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 04:59:55,173.173 INFO    ] time= 25/10/2026 04:59:55
[2026-10-25 04:59:55,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 04:59:55,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 04:59:55,374.374 INFO    ] No existing commands found in stream
[2026-10-25 05:00:00,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:00:00,405.405 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 05:00:03,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:00:03,213.213 INFO    ] Checking for system updates...
[2026-10-25 05:00:03,402.402 INFO    ] 200
[2026-10-25 05:00:03,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:03,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:03,784.784 INFO    ] No update needed
[2026-10-25 05:00:03,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 05:00:04,025.025 INFO    ] 200
[2026-10-25 05:00:04,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:04,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:00:04,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:04,380.380 INFO    ] No camera update needed
[2026-10-25 05:00:04,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:00:04,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:00:04,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:00:04,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:00:06,564.564 INFO    ] ================================================
[2026-10-25 05:00:06,579.579 INFO    ] Launching Daemon at Sun Oct 25 05:00:06 IST 2026
[2026-10-25 05:00:06,589.589 INFO    ] ================================================
[2026-10-25 05:00:07,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:00:07
[2026-10-25 05:00:07,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:00:08,063.063 INFO    ] Initializing speech engine...
[2026-10-25 05:00:08,072.072 INFO    ] 2026-10-25 05:00:08
[2026-10-25 05:00:08,325.325 INFO    ] 2026-10-25 05:00:08
[2026-10-25 05:00:08,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:00:08,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:00:08,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:00:08,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:00:08,794.794 INFO    ] time= 25/10/2026 05:00:08
[2026-10-25 05:00:08,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:00:08,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:00:08,933.933 INFO    ] No existing commands found in stream
[2026-10-25 05:00:13,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:00:13,947.947 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 05:00:16,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:00:16,208.208 INFO    ] Checking for system updates...
[2026-10-25 05:00:16,243.243 INFO    ] 200
[2026-10-25 05:00:16,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:16,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:00:16,301.301 INFO    ] No update needed
[2026-10-25 05:00:16,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 05:00:16,337.337 INFO    ] 200
[2026-10-25 05:00:16,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:16,381.381 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:00:16,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:00:16,441.441 INFO    ] No camera update needed
[2026-10-25 05:00:16,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:00:16,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:00:16,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:00:16,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:00:18,496.496 INFO    ] ================================================
[2026-10-25 05:00:18,511.511 INFO    ] Launching Daemon at Sun Oct 25 05:00:18 IST 2026
[2026-10-25 05:00:18,521.521 INFO    ] ================================================
[2026-10-25 05:00:19,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:00:19
[2026-10-25 05:00:19,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:00:20,017.017 INFO    ] Initializing speech engine...
[2026-10-25 05:00:20,027.027 INFO    ] 2026-10-25 05:00:20
[2026-10-25 05:00:20,289.289 INFO    ] 2026-10-25 05:00:20
[2026-10-25 05:00:20,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:00:20,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:00:20,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:00:20,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:00:20,778.778 INFO    ] time= 25/10/2026 05:00:20
[2026-10-25 05:00:20,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:00:20,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:00:20,973.973 INFO    ] No existing commands found in stream
[2026-10-25 05:00:25,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:00:25,997.997 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 05:00:29,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:00:29,843.843 INFO    ] Checking for system updates...
[2026-10-25 05:00:29,879.879 INFO    ] 200
[2026-10-25 05:00:29,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:29,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:29,943.943 INFO    ] No update needed
[2026-10-25 05:00:29,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 05:00:29,982.982 INFO    ] 200
[2026-10-25 05:00:29,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:30,025.025 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:00:30,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:30,082.082 INFO    ] No camera update needed
[2026-10-25 05:00:30,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:00:30,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:00:30,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:00:30,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:00:32,139.139 INFO    ] ================================================
[2026-10-25 05:00:32,156.156 INFO    ] Launching Daemon at Sun Oct 25 05:00:32 IST 2026
[2026-10-25 05:00:32,168.168 INFO    ] ================================================
[2026-10-25 05:00:32,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:00:32
[2026-10-25 05:00:33,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:00:33,620.620 INFO    ] Initializing speech engine...
[2026-10-25 05:00:33,642.642 INFO    ] 2026-10-25 05:00:33
[2026-10-25 05:00:33,919.919 INFO    ] 2026-10-25 05:00:33
[2026-10-25 05:00:33,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:00:34,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:00:34,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:00:34,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:00:34,321.321 INFO    ] time= 25/10/2026 05:00:34
[2026-10-25 05:00:34,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:00:34,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:00:34,483.483 INFO    ] No existing commands found in stream
[2026-10-25 05:00:39,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:00:39,512.512 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 05:00:40,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:00:40,944.944 INFO    ] Checking for system updates...
[2026-10-25 05:00:40,979.979 INFO    ] 200
[2026-10-25 05:00:40,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:41,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:41,038.038 INFO    ] No update needed
[2026-10-25 05:00:41,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 05:00:41,073.073 INFO    ] 200
[2026-10-25 05:00:41,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:41,120.120 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:00:41,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:00:41,180.180 INFO    ] No camera update needed
[2026-10-25 05:00:41,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:00:41,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:00:41,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:00:41,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:00:43,234.234 INFO    ] ================================================
[2026-10-25 05:00:43,249.249 INFO    ] Launching Daemon at Sun Oct 25 05:00:43 IST 2026
[2026-10-25 05:00:43,260.260 INFO    ] ================================================
[2026-10-25 05:00:43,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:00:43
[2026-10-25 05:00:44,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:00:44,679.679 INFO    ] Initializing speech engine...
[2026-10-25 05:00:44,689.689 INFO    ] 2026-10-25 05:00:44
[2026-10-25 05:00:44,934.934 INFO    ] 2026-10-25 05:00:44
[2026-10-25 05:00:44,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:00:45,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:00:45,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:00:45,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:00:45,402.402 INFO    ] time= 25/10/2026 05:00:45
[2026-10-25 05:00:45,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:00:45,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:00:45,548.548 INFO    ] No existing commands found in stream
[2026-10-25 05:00:50,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:00:50,563.563 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 05:00:53,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:00:53,150.150 INFO    ] Checking for system updates...
[2026-10-25 05:00:53,186.186 INFO    ] 200
[2026-10-25 05:00:53,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:53,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:00:53,243.243 INFO    ] No update needed
[2026-10-25 05:00:53,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 05:00:53,278.278 INFO    ] 200
[2026-10-25 05:00:53,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:00:53,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:00:53,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:00:53,387.387 INFO    ] No camera update needed
[2026-10-25 05:00:53,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:00:53,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:00:53,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:00:53,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:00:55,443.443 INFO    ] ================================================
[2026-10-25 05:00:55,458.458 INFO    ] Launching Daemon at Sun Oct 25 05:00:55 IST 2026
[2026-10-25 05:00:55,472.472 INFO    ] ================================================
[2026-10-25 05:00:56,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:00:56
[2026-10-25 05:00:56,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:00:56,891.891 INFO    ] Initializing speech engine...
[2026-10-25 05:00:56,900.900 INFO    ] 2026-10-25 05:00:56
[2026-10-25 05:00:57,156.156 INFO    ] 2026-10-25 05:00:57
[2026-10-25 05:00:57,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:00:57,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:00:57,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:00:57,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:00:57,586.586 INFO    ] time= 25/10/2026 05:00:57
[2026-10-25 05:00:57,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:00:57,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:00:57,793.793 INFO    ] No existing commands found in stream
[2026-10-25 05:01:02,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:01:02,833.833 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 05:01:04,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:01:04,662.662 INFO    ] Checking for system updates...
[2026-10-25 05:01:04,706.706 INFO    ] 200
[2026-10-25 05:01:04,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:04,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:04,773.773 INFO    ] No update needed
[2026-10-25 05:01:04,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 05:01:04,815.815 INFO    ] 200
[2026-10-25 05:01:04,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:04,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:01:04,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:04,936.936 INFO    ] No camera update needed
[2026-10-25 05:01:04,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:01:04,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:01:04,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:01:04,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:01:06,993.993 INFO    ] ================================================
[2026-10-25 05:01:07,008.008 INFO    ] Launching Daemon at Sun Oct 25 05:01:07 IST 2026
[2026-10-25 05:01:07,018.018 INFO    ] ================================================
[2026-10-25 05:01:07,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:01:07
[2026-10-25 05:01:08,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:01:08,437.437 INFO    ] Initializing speech engine...
[2026-10-25 05:01:08,446.446 INFO    ] 2026-10-25 05:01:08
[2026-10-25 05:01:08,691.691 INFO    ] 2026-10-25 05:01:08
[2026-10-25 05:01:08,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:01:08,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:01:08,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:01:09,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:01:09,157.157 INFO    ] time= 25/10/2026 05:01:09
[2026-10-25 05:01:09,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:01:09,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:01:09,309.309 INFO    ] No existing commands found in stream
[2026-10-25 05:01:14,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:01:14,324.324 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 05:01:16,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:01:16,937.937 INFO    ] Checking for system updates...
[2026-10-25 05:01:16,973.973 INFO    ] 200
[2026-10-25 05:01:16,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:17,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:17,036.036 INFO    ] No update needed
[2026-10-25 05:01:17,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 05:01:17,071.071 INFO    ] 200
[2026-10-25 05:01:17,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:17,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:01:17,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:17,185.185 INFO    ] No camera update needed
[2026-10-25 05:01:17,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:01:17,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:01:17,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:01:17,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:01:19,239.239 INFO    ] ================================================
[2026-10-25 05:01:19,254.254 INFO    ] Launching Daemon at Sun Oct 25 05:01:19 IST 2026
[2026-10-25 05:01:19,265.265 INFO    ] ================================================
[2026-10-25 05:01:19,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:01:19
[2026-10-25 05:01:20,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:01:20,724.724 INFO    ] Initializing speech engine...
[2026-10-25 05:01:20,731.731 INFO    ] 2026-10-25 05:01:20
[2026-10-25 05:01:20,992.992 INFO    ] 2026-10-25 05:01:20
[2026-10-25 05:01:21,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:01:21,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:01:21,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:01:21,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:01:21,455.455 INFO    ] time= 25/10/2026 05:01:21
[2026-10-25 05:01:21,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:01:21,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:01:21,598.598 INFO    ] No existing commands found in stream
[2026-10-25 05:01:26,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:01:26,613.613 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 05:01:28,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:01:28,245.245 INFO    ] Checking for system updates...
[2026-10-25 05:01:28,282.282 INFO    ] 200
[2026-10-25 05:01:28,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:28,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:01:28,339.339 INFO    ] No update needed
[2026-10-25 05:01:28,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 05:01:28,375.375 INFO    ] 200
[2026-10-25 05:01:28,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:28,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:01:28,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:01:28,468.468 INFO    ] No camera update needed
[2026-10-25 05:01:28,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:01:28,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:01:28,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:01:28,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:01:30,522.522 INFO    ] ================================================
[2026-10-25 05:01:30,537.537 INFO    ] Launching Daemon at Sun Oct 25 05:01:30 IST 2026
[2026-10-25 05:01:30,547.547 INFO    ] ================================================
[2026-10-25 05:01:31,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:01:31
[2026-10-25 05:01:31,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:01:32,046.046 INFO    ] Initializing speech engine...
[2026-10-25 05:01:32,059.059 INFO    ] 2026-10-25 05:01:32
[2026-10-25 05:01:32,339.339 INFO    ] 2026-10-25 05:01:32
[2026-10-25 05:01:32,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:01:32,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:01:32,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:01:32,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:01:32,815.815 INFO    ] time= 25/10/2026 05:01:32
[2026-10-25 05:01:32,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:01:32,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:01:33,004.004 INFO    ] No existing commands found in stream
[2026-10-25 05:01:38,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:01:38,021.021 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 05:01:42,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:01:42,184.184 INFO    ] Checking for system updates...
[2026-10-25 05:01:42,222.222 INFO    ] 200
[2026-10-25 05:01:42,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:42,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:42,281.281 INFO    ] No update needed
[2026-10-25 05:01:42,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 05:01:42,317.317 INFO    ] 200
[2026-10-25 05:01:42,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:42,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:01:42,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:01:42,518.518 INFO    ] No camera update needed
[2026-10-25 05:01:42,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:01:42,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:01:42,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:01:42,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:01:44,573.573 INFO    ] ================================================
[2026-10-25 05:01:44,589.589 INFO    ] Launching Daemon at Sun Oct 25 05:01:44 IST 2026
[2026-10-25 05:01:44,600.600 INFO    ] ================================================
[2026-10-25 05:01:45,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:01:45
[2026-10-25 05:01:45,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:01:46,237.237 INFO    ] Initializing speech engine...
[2026-10-25 05:01:46,248.248 INFO    ] 2026-10-25 05:01:46
[2026-10-25 05:01:46,557.557 INFO    ] 2026-10-25 05:01:46
[2026-10-25 05:01:46,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:01:46,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:01:46,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:01:47,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:01:47,063.063 INFO    ] time= 25/10/2026 05:01:47
[2026-10-25 05:01:47,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:01:47,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:01:47,219.219 INFO    ] No existing commands found in stream
[2026-10-25 05:01:52,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:01:52,257.257 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 05:01:54,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:01:54,236.236 INFO    ] Checking for system updates...
[2026-10-25 05:01:54,274.274 INFO    ] 200
[2026-10-25 05:01:54,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:54,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:01:54,340.340 INFO    ] No update needed
[2026-10-25 05:01:54,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 05:01:54,380.380 INFO    ] 200
[2026-10-25 05:01:54,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:01:54,430.430 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:01:54,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:01:54,498.498 INFO    ] No camera update needed
[2026-10-25 05:01:54,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:01:54,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:01:54,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:01:54,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:01:56,555.555 INFO    ] ================================================
[2026-10-25 05:01:56,571.571 INFO    ] Launching Daemon at Sun Oct 25 05:01:56 IST 2026
[2026-10-25 05:01:56,582.582 INFO    ] ================================================
[2026-10-25 05:01:57,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:01:57
[2026-10-25 05:01:57,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:01:57,985.985 INFO    ] Initializing speech engine...
[2026-10-25 05:01:57,992.992 INFO    ] 2026-10-25 05:01:57
[2026-10-25 05:01:58,293.293 INFO    ] 2026-10-25 05:01:58
[2026-10-25 05:01:58,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:01:58,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:01:58,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:01:58,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:01:58,772.772 INFO    ] time= 25/10/2026 05:01:58
[2026-10-25 05:01:58,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:01:58,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:01:58,935.935 INFO    ] No existing commands found in stream
[2026-10-25 05:02:03,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:02:03,963.963 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 05:02:06,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:02:06,902.902 INFO    ] Checking for system updates...
[2026-10-25 05:02:06,942.942 INFO    ] 200
[2026-10-25 05:02:06,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:07,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:02:07,006.006 INFO    ] No update needed
[2026-10-25 05:02:07,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 05:02:07,043.043 INFO    ] 200
[2026-10-25 05:02:07,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:07,090.090 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:02:07,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:02:07,142.142 INFO    ] No camera update needed
[2026-10-25 05:02:07,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:02:07,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:02:07,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:02:07,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:02:09,197.197 INFO    ] ================================================
[2026-10-25 05:02:09,213.213 INFO    ] Launching Daemon at Sun Oct 25 05:02:09 IST 2026
[2026-10-25 05:02:09,224.224 INFO    ] ================================================
[2026-10-25 05:02:09,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:02:09
[2026-10-25 05:02:10,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:02:10,696.696 INFO    ] Initializing speech engine...
[2026-10-25 05:02:10,705.705 INFO    ] 2026-10-25 05:02:10
[2026-10-25 05:02:10,952.952 INFO    ] 2026-10-25 05:02:10
[2026-10-25 05:02:10,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:02:11,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:02:11,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:02:11,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:02:11,323.323 INFO    ] time= 25/10/2026 05:02:11
[2026-10-25 05:02:11,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:02:11,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:02:11,493.493 INFO    ] No existing commands found in stream
[2026-10-25 05:02:16,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:02:16,526.526 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 05:02:19,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:02:19,862.862 INFO    ] Checking for system updates...
[2026-10-25 05:02:19,901.901 INFO    ] 200
[2026-10-25 05:02:19,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:19,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:19,958.958 INFO    ] No update needed
[2026-10-25 05:02:19,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 05:02:19,995.995 INFO    ] 200
[2026-10-25 05:02:19,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:20,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:02:20,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:20,099.099 INFO    ] No camera update needed
[2026-10-25 05:02:20,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:02:20,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:02:20,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:02:20,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:02:22,154.154 INFO    ] ================================================
[2026-10-25 05:02:22,169.169 INFO    ] Launching Daemon at Sun Oct 25 05:02:22 IST 2026
[2026-10-25 05:02:22,180.180 INFO    ] ================================================
[2026-10-25 05:02:22,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:02:22
[2026-10-25 05:02:23,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:02:23,593.593 INFO    ] Initializing speech engine...
[2026-10-25 05:02:23,612.612 INFO    ] 2026-10-25 05:02:23
[2026-10-25 05:02:23,863.863 INFO    ] 2026-10-25 05:02:23
[2026-10-25 05:02:23,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:02:24,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:02:24,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:02:24,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:02:24,218.218 INFO    ] time= 25/10/2026 05:02:24
[2026-10-25 05:02:24,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:02:24,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:02:24,315.315 INFO    ] No existing commands found in stream
[2026-10-25 05:02:29,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:02:29,330.330 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 05:02:31,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:02:31,952.952 INFO    ] Checking for system updates...
[2026-10-25 05:02:31,999.999 INFO    ] 200
[2026-10-25 05:02:32,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:32,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:32,069.069 INFO    ] No update needed
[2026-10-25 05:02:32,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 05:02:32,108.108 INFO    ] 200
[2026-10-25 05:02:32,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:32,155.155 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:02:32,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:32,220.220 INFO    ] No camera update needed
[2026-10-25 05:02:32,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:02:32,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:02:32,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:02:32,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:02:34,278.278 INFO    ] ================================================
[2026-10-25 05:02:34,294.294 INFO    ] Launching Daemon at Sun Oct 25 05:02:34 IST 2026
[2026-10-25 05:02:34,304.304 INFO    ] ================================================
[2026-10-25 05:02:34,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:02:34
[2026-10-25 05:02:35,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:02:35,896.896 INFO    ] Initializing speech engine...
[2026-10-25 05:02:35,904.904 INFO    ] 2026-10-25 05:02:35
[2026-10-25 05:02:36,188.188 INFO    ] 2026-10-25 05:02:36
[2026-10-25 05:02:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:02:36,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:02:36,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:02:36,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:02:36,700.700 INFO    ] time= 25/10/2026 05:02:36
[2026-10-25 05:02:36,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:02:36,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:02:36,861.861 INFO    ] No existing commands found in stream
[2026-10-25 05:02:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:02:41,894.894 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 05:02:45,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:02:45,705.705 INFO    ] Checking for system updates...
[2026-10-25 05:02:45,743.743 INFO    ] 200
[2026-10-25 05:02:45,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:45,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:02:45,808.808 INFO    ] No update needed
[2026-10-25 05:02:45,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 05:02:45,850.850 INFO    ] 200
[2026-10-25 05:02:45,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:45,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:02:45,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:02:45,968.968 INFO    ] No camera update needed
[2026-10-25 05:02:45,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:02:45,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:02:45,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:02:45,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:02:48,027.027 INFO    ] ================================================
[2026-10-25 05:02:48,042.042 INFO    ] Launching Daemon at Sun Oct 25 05:02:48 IST 2026
[2026-10-25 05:02:48,053.053 INFO    ] ================================================
[2026-10-25 05:02:48,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:02:48
[2026-10-25 05:02:49,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:02:49,472.472 INFO    ] Initializing speech engine...
[2026-10-25 05:02:49,481.481 INFO    ] 2026-10-25 05:02:49
[2026-10-25 05:02:49,727.727 INFO    ] 2026-10-25 05:02:49
[2026-10-25 05:02:49,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:02:50,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:02:50,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:02:50,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:02:50,222.222 INFO    ] time= 25/10/2026 05:02:50
[2026-10-25 05:02:50,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:02:50,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:02:50,346.346 INFO    ] No existing commands found in stream
[2026-10-25 05:02:55,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:02:55,362.362 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 05:02:59,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:02:59,550.550 INFO    ] Checking for system updates...
[2026-10-25 05:02:59,587.587 INFO    ] 200
[2026-10-25 05:02:59,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:59,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:59,654.654 INFO    ] No update needed
[2026-10-25 05:02:59,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 05:02:59,692.692 INFO    ] 200
[2026-10-25 05:02:59,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:02:59,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:02:59,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:02:59,782.782 INFO    ] No camera update needed
[2026-10-25 05:02:59,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:02:59,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:02:59,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:02:59,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:03:01,842.842 INFO    ] ================================================
[2026-10-25 05:03:01,862.862 INFO    ] Launching Daemon at Sun Oct 25 05:03:01 IST 2026
[2026-10-25 05:03:01,878.878 INFO    ] ================================================
[2026-10-25 05:03:02,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:03:02
[2026-10-25 05:03:03,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:03:03,456.456 INFO    ] Initializing speech engine...
[2026-10-25 05:03:03,473.473 INFO    ] 2026-10-25 05:03:03
[2026-10-25 05:03:03,764.764 INFO    ] 2026-10-25 05:03:03
[2026-10-25 05:03:03,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:03:03,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:03:03,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:03:04,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:03:04,121.121 INFO    ] time= 25/10/2026 05:03:04
[2026-10-25 05:03:04,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:03:04,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:03:04,203.203 INFO    ] No existing commands found in stream
[2026-10-25 05:03:09,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:03:09,216.216 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 05:03:10,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:03:10,383.383 INFO    ] Checking for system updates...
[2026-10-25 05:03:10,419.419 INFO    ] 200
[2026-10-25 05:03:10,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:10,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:10,482.482 INFO    ] No update needed
[2026-10-25 05:03:10,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 05:03:10,519.519 INFO    ] 200
[2026-10-25 05:03:10,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:10,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:03:10,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:10,622.622 INFO    ] No camera update needed
[2026-10-25 05:03:10,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:03:10,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:03:10,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:03:10,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:03:12,676.676 INFO    ] ================================================
[2026-10-25 05:03:12,691.691 INFO    ] Launching Daemon at Sun Oct 25 05:03:12 IST 2026
[2026-10-25 05:03:12,702.702 INFO    ] ================================================
[2026-10-25 05:03:13,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:03:13
[2026-10-25 05:03:13,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:03:14,123.123 INFO    ] Initializing speech engine...
[2026-10-25 05:03:14,133.133 INFO    ] 2026-10-25 05:03:14
[2026-10-25 05:03:14,390.390 INFO    ] 2026-10-25 05:03:14
[2026-10-25 05:03:14,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:03:14,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:03:14,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:03:14,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:03:14,852.852 INFO    ] time= 25/10/2026 05:03:14
[2026-10-25 05:03:14,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:03:14,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:03:15,048.048 INFO    ] No existing commands found in stream
[2026-10-25 05:03:20,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:03:20,083.083 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 05:03:23,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:03:23,500.500 INFO    ] Checking for system updates...
[2026-10-25 05:03:23,537.537 INFO    ] 200
[2026-10-25 05:03:23,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:23,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:23,603.603 INFO    ] No update needed
[2026-10-25 05:03:23,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 05:03:23,640.640 INFO    ] 200
[2026-10-25 05:03:23,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:23,683.683 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:03:23,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:23,739.739 INFO    ] No camera update needed
[2026-10-25 05:03:23,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:03:23,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:03:23,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:03:23,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:03:25,800.800 INFO    ] ================================================
[2026-10-25 05:03:25,815.815 INFO    ] Launching Daemon at Sun Oct 25 05:03:25 IST 2026
[2026-10-25 05:03:25,825.825 INFO    ] ================================================
[2026-10-25 05:03:26,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:03:26
[2026-10-25 05:03:27,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:03:27,497.497 INFO    ] Initializing speech engine...
[2026-10-25 05:03:27,509.509 INFO    ] 2026-10-25 05:03:27
[2026-10-25 05:03:27,796.796 INFO    ] 2026-10-25 05:03:27
[2026-10-25 05:03:27,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:03:29,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:03:29,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:03:29,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:03:29,312.312 INFO    ] time= 25/10/2026 05:03:29
[2026-10-25 05:03:29,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:03:29,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:03:29,423.423 INFO    ] No existing commands found in stream
[2026-10-25 05:03:34,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:03:34,456.456 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 05:03:37,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:03:37,150.150 INFO    ] Checking for system updates...
[2026-10-25 05:03:37,188.188 INFO    ] 200
[2026-10-25 05:03:37,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:37,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:03:37,256.256 INFO    ] No update needed
[2026-10-25 05:03:37,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 05:03:37,298.298 INFO    ] 200
[2026-10-25 05:03:37,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:37,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:03:37,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:03:37,460.460 INFO    ] No camera update needed
[2026-10-25 05:03:37,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:03:37,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:03:37,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:03:37,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:03:39,522.522 INFO    ] ================================================
[2026-10-25 05:03:39,537.537 INFO    ] Launching Daemon at Sun Oct 25 05:03:39 IST 2026
[2026-10-25 05:03:39,548.548 INFO    ] ================================================
[2026-10-25 05:03:40,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:03:40
[2026-10-25 05:03:40,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:03:41,218.218 INFO    ] Initializing speech engine...
[2026-10-25 05:03:41,229.229 INFO    ] 2026-10-25 05:03:41
[2026-10-25 05:03:41,543.543 INFO    ] 2026-10-25 05:03:41
[2026-10-25 05:03:41,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:03:41,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:03:41,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:03:41,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:03:42,048.048 INFO    ] time= 25/10/2026 05:03:42
[2026-10-25 05:03:42,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:03:42,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:03:42,195.195 INFO    ] No existing commands found in stream
[2026-10-25 05:03:47,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:03:47,219.219 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:03:47,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:03:47,674.674 INFO    ] Checking for system updates...
[2026-10-25 05:03:47,711.711 INFO    ] 200
[2026-10-25 05:03:47,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:47,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:47,769.769 INFO    ] No update needed
[2026-10-25 05:03:47,772.772 INFO    ] Checking for camera pi updates...
[2026-10-25 05:03:47,806.806 INFO    ] 200
[2026-10-25 05:03:47,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:03:47,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:03:48,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:03:48,009.009 INFO    ] No camera update needed
[2026-10-25 05:03:48,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:03:48,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:03:48,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:03:48,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:03:50,064.064 INFO    ] ================================================
[2026-10-25 05:03:50,079.079 INFO    ] Launching Daemon at Sun Oct 25 05:03:50 IST 2026
[2026-10-25 05:03:50,089.089 INFO    ] ================================================
[2026-10-25 05:03:50,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:03:50
[2026-10-25 05:03:51,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:03:51,775.775 INFO    ] Initializing speech engine...
[2026-10-25 05:03:51,783.783 INFO    ] 2026-10-25 05:03:51
[2026-10-25 05:03:52,087.087 INFO    ] 2026-10-25 05:03:52
[2026-10-25 05:03:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:03:52,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:03:52,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:03:52,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:03:52,594.594 INFO    ] time= 25/10/2026 05:03:52
[2026-10-25 05:03:52,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:03:52,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:03:52,745.745 INFO    ] No existing commands found in stream
[2026-10-25 05:03:57,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:03:57,766.766 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 05:04:00,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:04:00,326.326 INFO    ] Checking for system updates...
[2026-10-25 05:04:00,369.369 INFO    ] 200
[2026-10-25 05:04:00,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:00,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:00,439.439 INFO    ] No update needed
[2026-10-25 05:04:00,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 05:04:00,482.482 INFO    ] 200
[2026-10-25 05:04:00,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:00,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:04:00,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:00,595.595 INFO    ] No camera update needed
[2026-10-25 05:04:00,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:04:00,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:04:00,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:04:00,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:04:02,662.662 INFO    ] ================================================
[2026-10-25 05:04:02,680.680 INFO    ] Launching Daemon at Sun Oct 25 05:04:02 IST 2026
[2026-10-25 05:04:02,697.697 INFO    ] ================================================
[2026-10-25 05:04:03,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:04:03
[2026-10-25 05:04:03,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:04:04,171.171 INFO    ] Initializing speech engine...
[2026-10-25 05:04:04,176.176 INFO    ] 2026-10-25 05:04:04
[2026-10-25 05:04:04,482.482 INFO    ] 2026-10-25 05:04:04
[2026-10-25 05:04:04,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:04:04,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:04:04,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:04:04,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:04:04,887.887 INFO    ] time= 25/10/2026 05:04:04
[2026-10-25 05:04:04,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:04:04,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:04:04,996.996 INFO    ] No existing commands found in stream
[2026-10-25 05:04:10,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:04:10,011.011 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 05:04:14,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:04:14,142.142 INFO    ] Checking for system updates...
[2026-10-25 05:04:14,182.182 INFO    ] 200
[2026-10-25 05:04:14,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:14,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:04:14,292.292 INFO    ] No update needed
[2026-10-25 05:04:14,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 05:04:14,337.337 INFO    ] 200
[2026-10-25 05:04:14,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:14,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:04:14,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:04:14,443.443 INFO    ] No camera update needed
[2026-10-25 05:04:14,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:04:14,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:04:14,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:04:14,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:04:16,504.504 INFO    ] ================================================
[2026-10-25 05:04:16,519.519 INFO    ] Launching Daemon at Sun Oct 25 05:04:16 IST 2026
[2026-10-25 05:04:16,530.530 INFO    ] ================================================
[2026-10-25 05:04:17,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:04:17
[2026-10-25 05:04:17,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:04:17,970.970 INFO    ] Initializing speech engine...
[2026-10-25 05:04:17,980.980 INFO    ] 2026-10-25 05:04:17
[2026-10-25 05:04:18,236.236 INFO    ] 2026-10-25 05:04:18
[2026-10-25 05:04:18,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:04:18,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:04:18,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:04:18,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:04:18,724.724 INFO    ] time= 25/10/2026 05:04:18
[2026-10-25 05:04:18,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:04:18,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:04:18,917.917 INFO    ] No existing commands found in stream
[2026-10-25 05:04:23,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:04:23,942.942 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 05:04:27,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:04:27,957.957 INFO    ] Checking for system updates...
[2026-10-25 05:04:27,993.993 INFO    ] 200
[2026-10-25 05:04:27,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:28,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:28,050.050 INFO    ] No update needed
[2026-10-25 05:04:28,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 05:04:28,091.091 INFO    ] 200
[2026-10-25 05:04:28,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:28,135.135 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:04:28,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:28,186.186 INFO    ] No camera update needed
[2026-10-25 05:04:28,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:04:28,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:04:28,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:04:28,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:04:30,243.243 INFO    ] ================================================
[2026-10-25 05:04:30,258.258 INFO    ] Launching Daemon at Sun Oct 25 05:04:30 IST 2026
[2026-10-25 05:04:30,268.268 INFO    ] ================================================
[2026-10-25 05:04:30,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:04:30
[2026-10-25 05:04:31,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:04:31,878.878 INFO    ] Initializing speech engine...
[2026-10-25 05:04:31,887.887 INFO    ] 2026-10-25 05:04:31
[2026-10-25 05:04:32,204.204 INFO    ] 2026-10-25 05:04:32
[2026-10-25 05:04:32,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:04:32,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:04:32,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:04:32,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:04:32,605.605 INFO    ] time= 25/10/2026 05:04:32
[2026-10-25 05:04:32,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:04:32,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:04:32,733.733 INFO    ] No existing commands found in stream
[2026-10-25 05:04:37,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:04:37,754.754 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 05:04:40,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:04:40,965.965 INFO    ] Checking for system updates...
[2026-10-25 05:04:41,007.007 INFO    ] 200
[2026-10-25 05:04:41,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:41,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:41,067.067 INFO    ] No update needed
[2026-10-25 05:04:41,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 05:04:41,105.105 INFO    ] 200
[2026-10-25 05:04:41,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:41,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:04:41,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:41,217.217 INFO    ] No camera update needed
[2026-10-25 05:04:41,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:04:41,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:04:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:04:41,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:04:43,276.276 INFO    ] ================================================
[2026-10-25 05:04:43,291.291 INFO    ] Launching Daemon at Sun Oct 25 05:04:43 IST 2026
[2026-10-25 05:04:43,302.302 INFO    ] ================================================
[2026-10-25 05:04:43,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:04:43
[2026-10-25 05:04:44,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:04:44,729.729 INFO    ] Initializing speech engine...
[2026-10-25 05:04:44,735.735 INFO    ] 2026-10-25 05:04:44
[2026-10-25 05:04:45,040.040 INFO    ] 2026-10-25 05:04:45
[2026-10-25 05:04:45,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:04:45,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:04:45,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:04:45,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:04:45,427.427 INFO    ] time= 25/10/2026 05:04:45
[2026-10-25 05:04:45,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:04:45,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:04:45,552.552 INFO    ] No existing commands found in stream
[2026-10-25 05:04:50,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:04:50,567.567 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 05:04:52,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:04:52,938.938 INFO    ] Checking for system updates...
[2026-10-25 05:04:52,975.975 INFO    ] 200
[2026-10-25 05:04:52,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:53,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:53,035.035 INFO    ] No update needed
[2026-10-25 05:04:53,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 05:04:53,072.072 INFO    ] 200
[2026-10-25 05:04:53,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:04:53,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:04:53,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:04:53,169.169 INFO    ] No camera update needed
[2026-10-25 05:04:53,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:04:53,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:04:53,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:04:53,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:04:55,228.228 INFO    ] ================================================
[2026-10-25 05:04:55,243.243 INFO    ] Launching Daemon at Sun Oct 25 05:04:55 IST 2026
[2026-10-25 05:04:55,254.254 INFO    ] ================================================
[2026-10-25 05:04:55,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:04:55
[2026-10-25 05:04:56,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:04:56,711.711 INFO    ] Initializing speech engine...
[2026-10-25 05:04:56,717.717 INFO    ] 2026-10-25 05:04:56
[2026-10-25 05:04:56,981.981 INFO    ] 2026-10-25 05:04:56
[2026-10-25 05:04:57,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:04:57,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:04:57,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:04:57,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:04:57,465.465 INFO    ] time= 25/10/2026 05:04:57
[2026-10-25 05:04:57,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:04:57,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:04:57,631.631 INFO    ] No existing commands found in stream
[2026-10-25 05:05:02,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:05:02,646.646 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 05:05:06,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:05:06,766.766 INFO    ] Checking for system updates...
[2026-10-25 05:05:06,803.803 INFO    ] 200
[2026-10-25 05:05:06,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:06,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:06,868.868 INFO    ] No update needed
[2026-10-25 05:05:06,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 05:05:06,905.905 INFO    ] 200
[2026-10-25 05:05:06,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:06,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:05:07,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:07,012.012 INFO    ] No camera update needed
[2026-10-25 05:05:07,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:05:07,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:05:07,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:05:07,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:05:09,067.067 INFO    ] ================================================
[2026-10-25 05:05:09,083.083 INFO    ] Launching Daemon at Sun Oct 25 05:05:09 IST 2026
[2026-10-25 05:05:09,093.093 INFO    ] ================================================
[2026-10-25 05:05:09,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:05:09
[2026-10-25 05:05:10,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:05:10,506.506 INFO    ] Initializing speech engine...
[2026-10-25 05:05:10,521.521 INFO    ] 2026-10-25 05:05:10
[2026-10-25 05:05:10,789.789 INFO    ] 2026-10-25 05:05:10
[2026-10-25 05:05:10,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:05:11,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:05:11,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:05:11,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:05:11,248.248 INFO    ] time= 25/10/2026 05:05:11
[2026-10-25 05:05:11,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:05:11,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:05:11,365.365 INFO    ] No existing commands found in stream
[2026-10-25 05:05:16,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:05:16,378.378 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 05:05:18,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:05:18,219.219 INFO    ] Checking for system updates...
[2026-10-25 05:05:18,254.254 INFO    ] 200
[2026-10-25 05:05:18,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:18,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:18,319.319 INFO    ] No update needed
[2026-10-25 05:05:18,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 05:05:18,356.356 INFO    ] 200
[2026-10-25 05:05:18,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:18,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:05:18,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:18,453.453 INFO    ] No camera update needed
[2026-10-25 05:05:18,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:05:18,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:05:18,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:05:18,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:05:20,511.511 INFO    ] ================================================
[2026-10-25 05:05:20,526.526 INFO    ] Launching Daemon at Sun Oct 25 05:05:20 IST 2026
[2026-10-25 05:05:20,536.536 INFO    ] ================================================
[2026-10-25 05:05:21,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:05:21
[2026-10-25 05:05:21,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:05:21,991.991 INFO    ] Initializing speech engine...
[2026-10-25 05:05:22,000.000 INFO    ] 2026-10-25 05:05:21
[2026-10-25 05:05:22,259.259 INFO    ] 2026-10-25 05:05:22
[2026-10-25 05:05:22,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:05:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:05:22,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:05:22,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:05:22,729.729 INFO    ] time= 25/10/2026 05:05:22
[2026-10-25 05:05:22,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:05:22,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:05:22,867.867 INFO    ] No existing commands found in stream
[2026-10-25 05:05:27,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:05:27,882.882 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 05:05:30,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:05:30,658.658 INFO    ] Checking for system updates...
[2026-10-25 05:05:30,694.694 INFO    ] 200
[2026-10-25 05:05:30,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:30,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:30,759.759 INFO    ] No update needed
[2026-10-25 05:05:30,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 05:05:30,795.795 INFO    ] 200
[2026-10-25 05:05:30,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:30,838.838 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:05:30,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:30,891.891 INFO    ] No camera update needed
[2026-10-25 05:05:30,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:05:30,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:05:30,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:05:30,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:05:32,950.950 INFO    ] ================================================
[2026-10-25 05:05:32,965.965 INFO    ] Launching Daemon at Sun Oct 25 05:05:32 IST 2026
[2026-10-25 05:05:32,975.975 INFO    ] ================================================
[2026-10-25 05:05:33,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:05:33
[2026-10-25 05:05:34,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:05:34,434.434 INFO    ] Initializing speech engine...
[2026-10-25 05:05:34,443.443 INFO    ] 2026-10-25 05:05:34
[2026-10-25 05:05:34,720.720 INFO    ] 2026-10-25 05:05:34
[2026-10-25 05:05:34,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:05:35,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:05:35,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:05:35,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:05:35,336.336 INFO    ] time= 25/10/2026 05:05:35
[2026-10-25 05:05:35,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:05:35,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:05:35,513.513 INFO    ] No existing commands found in stream
[2026-10-25 05:05:40,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:05:40,548.548 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 05:05:41,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:05:41,926.926 INFO    ] Checking for system updates...
[2026-10-25 05:05:41,970.970 INFO    ] 200
[2026-10-25 05:05:41,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:42,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:42,033.033 INFO    ] No update needed
[2026-10-25 05:05:42,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 05:05:42,075.075 INFO    ] 200
[2026-10-25 05:05:42,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:42,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:05:42,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:05:42,182.182 INFO    ] No camera update needed
[2026-10-25 05:05:42,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:05:42,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:05:42,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:05:42,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:05:44,238.238 INFO    ] ================================================
[2026-10-25 05:05:44,252.252 INFO    ] Launching Daemon at Sun Oct 25 05:05:44 IST 2026
[2026-10-25 05:05:44,263.263 INFO    ] ================================================
[2026-10-25 05:05:44,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:05:44
[2026-10-25 05:05:45,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:05:45,796.796 INFO    ] Initializing speech engine...
[2026-10-25 05:05:45,810.810 INFO    ] 2026-10-25 05:05:45
[2026-10-25 05:05:46,101.101 INFO    ] 2026-10-25 05:05:46
[2026-10-25 05:05:46,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:05:46,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:05:46,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:05:46,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:05:46,468.468 INFO    ] time= 25/10/2026 05:05:46
[2026-10-25 05:05:46,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:05:46,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:05:46,607.607 INFO    ] No existing commands found in stream
[2026-10-25 05:05:51,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:05:51,629.629 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 05:05:54,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:05:54,933.933 INFO    ] Checking for system updates...
[2026-10-25 05:05:54,969.969 INFO    ] 200
[2026-10-25 05:05:54,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:55,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:05:55,040.040 INFO    ] No update needed
[2026-10-25 05:05:55,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 05:05:55,077.077 INFO    ] 200
[2026-10-25 05:05:55,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:05:55,120.120 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:05:55,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:05:55,290.290 INFO    ] No camera update needed
[2026-10-25 05:05:55,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:05:55,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:05:55,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:05:55,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:05:57,346.346 INFO    ] ================================================
[2026-10-25 05:05:57,362.362 INFO    ] Launching Daemon at Sun Oct 25 05:05:57 IST 2026
[2026-10-25 05:05:57,373.373 INFO    ] ================================================
[2026-10-25 05:05:57,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:05:57
[2026-10-25 05:05:58,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:05:58,787.787 INFO    ] Initializing speech engine...
[2026-10-25 05:05:58,793.793 INFO    ] 2026-10-25 05:05:58
[2026-10-25 05:05:59,068.068 INFO    ] 2026-10-25 05:05:59
[2026-10-25 05:05:59,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:05:59,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:05:59,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:05:59,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:05:59,563.563 INFO    ] time= 25/10/2026 05:05:59
[2026-10-25 05:05:59,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:05:59,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:05:59,705.705 INFO    ] No existing commands found in stream
[2026-10-25 05:06:04,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:06:04,719.719 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 05:06:08,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:06:08,757.757 INFO    ] Checking for system updates...
[2026-10-25 05:06:08,794.794 INFO    ] 200
[2026-10-25 05:06:08,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:08,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:08,853.853 INFO    ] No update needed
[2026-10-25 05:06:08,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 05:06:08,889.889 INFO    ] 200
[2026-10-25 05:06:08,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:08,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:06:09,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:09,016.016 INFO    ] No camera update needed
[2026-10-25 05:06:09,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:06:09,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:06:09,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:06:09,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:06:11,074.074 INFO    ] ================================================
[2026-10-25 05:06:11,089.089 INFO    ] Launching Daemon at Sun Oct 25 05:06:11 IST 2026
[2026-10-25 05:06:11,100.100 INFO    ] ================================================
[2026-10-25 05:06:11,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:06:11
[2026-10-25 05:06:12,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:06:12,754.754 INFO    ] Initializing speech engine...
[2026-10-25 05:06:12,768.768 INFO    ] 2026-10-25 05:06:12
[2026-10-25 05:06:13,060.060 INFO    ] 2026-10-25 05:06:13
[2026-10-25 05:06:13,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:06:13,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:06:13,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:06:13,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:06:13,606.606 INFO    ] time= 25/10/2026 05:06:13
[2026-10-25 05:06:13,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:06:13,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:06:13,750.750 INFO    ] No existing commands found in stream
[2026-10-25 05:06:18,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:06:18,779.779 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 05:06:22,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:06:22,319.319 INFO    ] Checking for system updates...
[2026-10-25 05:06:22,356.356 INFO    ] 200
[2026-10-25 05:06:22,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:22,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:22,414.414 INFO    ] No update needed
[2026-10-25 05:06:22,416.416 INFO    ] Checking for camera pi updates...
[2026-10-25 05:06:22,450.450 INFO    ] 200
[2026-10-25 05:06:22,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:22,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:06:22,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:22,553.553 INFO    ] No camera update needed
[2026-10-25 05:06:22,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:06:22,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:06:22,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:06:22,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:06:24,607.607 INFO    ] ================================================
[2026-10-25 05:06:24,622.622 INFO    ] Launching Daemon at Sun Oct 25 05:06:24 IST 2026
[2026-10-25 05:06:24,633.633 INFO    ] ================================================
[2026-10-25 05:06:25,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:06:25
[2026-10-25 05:06:25,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:06:26,092.092 INFO    ] Initializing speech engine...
[2026-10-25 05:06:26,112.112 INFO    ] 2026-10-25 05:06:26
[2026-10-25 05:06:26,395.395 INFO    ] 2026-10-25 05:06:26
[2026-10-25 05:06:26,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:06:26,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:06:26,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:06:26,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:06:26,822.822 INFO    ] time= 25/10/2026 05:06:26
[2026-10-25 05:06:26,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:06:26,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:06:26,908.908 INFO    ] No existing commands found in stream
[2026-10-25 05:06:31,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:06:31,925.925 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 05:06:33,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:06:33,916.916 INFO    ] Checking for system updates...
[2026-10-25 05:06:33,952.952 INFO    ] 200
[2026-10-25 05:06:33,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:34,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:34,013.013 INFO    ] No update needed
[2026-10-25 05:06:34,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 05:06:34,049.049 INFO    ] 200
[2026-10-25 05:06:34,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:34,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:06:34,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:34,154.154 INFO    ] No camera update needed
[2026-10-25 05:06:34,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:06:34,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:06:34,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:06:34,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:06:36,211.211 INFO    ] ================================================
[2026-10-25 05:06:36,226.226 INFO    ] Launching Daemon at Sun Oct 25 05:06:36 IST 2026
[2026-10-25 05:06:36,237.237 INFO    ] ================================================
[2026-10-25 05:06:36,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:06:36
[2026-10-25 05:06:37,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:06:37,887.887 INFO    ] Initializing speech engine...
[2026-10-25 05:06:37,901.901 INFO    ] 2026-10-25 05:06:37
[2026-10-25 05:06:38,181.181 INFO    ] 2026-10-25 05:06:38
[2026-10-25 05:06:38,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:06:38,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:06:38,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:06:38,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:06:38,719.719 INFO    ] time= 25/10/2026 05:06:38
[2026-10-25 05:06:38,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:06:38,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:06:38,875.875 INFO    ] No existing commands found in stream
[2026-10-25 05:06:43,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:06:43,901.901 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 05:06:45,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:06:45,290.290 INFO    ] Checking for system updates...
[2026-10-25 05:06:45,329.329 INFO    ] 200
[2026-10-25 05:06:45,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:45,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:45,388.388 INFO    ] No update needed
[2026-10-25 05:06:45,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 05:06:45,431.431 INFO    ] 200
[2026-10-25 05:06:45,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:45,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:06:45,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:45,533.533 INFO    ] No camera update needed
[2026-10-25 05:06:45,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:06:45,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:06:45,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:06:45,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:06:47,594.594 INFO    ] ================================================
[2026-10-25 05:06:47,609.609 INFO    ] Launching Daemon at Sun Oct 25 05:06:47 IST 2026
[2026-10-25 05:06:47,620.620 INFO    ] ================================================
[2026-10-25 05:06:48,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:06:48
[2026-10-25 05:06:48,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:06:49,272.272 INFO    ] Initializing speech engine...
[2026-10-25 05:06:49,280.280 INFO    ] 2026-10-25 05:06:49
[2026-10-25 05:06:49,554.554 INFO    ] 2026-10-25 05:06:49
[2026-10-25 05:06:49,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:06:49,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:06:49,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:06:50,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:06:50,103.103 INFO    ] time= 25/10/2026 05:06:50
[2026-10-25 05:06:50,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:06:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:06:50,260.260 INFO    ] No existing commands found in stream
[2026-10-25 05:06:55,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:06:55,284.284 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 05:06:55,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:06:55,857.857 INFO    ] Checking for system updates...
[2026-10-25 05:06:55,893.893 INFO    ] 200
[2026-10-25 05:06:55,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:55,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:55,953.953 INFO    ] No update needed
[2026-10-25 05:06:55,956.956 INFO    ] Checking for camera pi updates...
[2026-10-25 05:06:55,993.993 INFO    ] 200
[2026-10-25 05:06:55,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:06:56,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:06:56,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:06:56,100.100 INFO    ] No camera update needed
[2026-10-25 05:06:56,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:06:56,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:06:56,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:06:56,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:06:58,156.156 INFO    ] ================================================
[2026-10-25 05:06:58,171.171 INFO    ] Launching Daemon at Sun Oct 25 05:06:58 IST 2026
[2026-10-25 05:06:58,182.182 INFO    ] ================================================
[2026-10-25 05:06:58,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:06:58
[2026-10-25 05:06:59,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:06:59,599.599 INFO    ] Initializing speech engine...
[2026-10-25 05:06:59,606.606 INFO    ] 2026-10-25 05:06:59
[2026-10-25 05:06:59,852.852 INFO    ] 2026-10-25 05:06:59
[2026-10-25 05:06:59,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:07:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:07:00,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:07:00,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:07:00,268.268 INFO    ] time= 25/10/2026 05:07:00
[2026-10-25 05:07:00,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:07:00,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:07:00,354.354 INFO    ] No existing commands found in stream
[2026-10-25 05:07:05,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:07:05,369.369 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 05:07:09,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:07:09,495.495 INFO    ] Checking for system updates...
[2026-10-25 05:07:09,531.531 INFO    ] 200
[2026-10-25 05:07:09,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:09,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:09,590.590 INFO    ] No update needed
[2026-10-25 05:07:09,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 05:07:09,630.630 INFO    ] 200
[2026-10-25 05:07:09,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:09,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:07:09,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:09,732.732 INFO    ] No camera update needed
[2026-10-25 05:07:09,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:07:09,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:07:09,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:07:09,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:07:11,793.793 INFO    ] ================================================
[2026-10-25 05:07:11,808.808 INFO    ] Launching Daemon at Sun Oct 25 05:07:11 IST 2026
[2026-10-25 05:07:11,819.819 INFO    ] ================================================
[2026-10-25 05:07:12,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:07:12
[2026-10-25 05:07:13,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:07:13,470.470 INFO    ] Initializing speech engine...
[2026-10-25 05:07:13,482.482 INFO    ] 2026-10-25 05:07:13
[2026-10-25 05:07:13,798.798 INFO    ] 2026-10-25 05:07:13
[2026-10-25 05:07:13,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:07:14,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:07:14,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:07:14,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:07:14,315.315 INFO    ] time= 25/10/2026 05:07:14
[2026-10-25 05:07:14,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:07:14,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:07:14,462.462 INFO    ] No existing commands found in stream
[2026-10-25 05:07:19,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:07:19,494.494 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 05:07:22,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:07:22,965.965 INFO    ] Checking for system updates...
[2026-10-25 05:07:23,003.003 INFO    ] 200
[2026-10-25 05:07:23,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:23,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:23,063.063 INFO    ] No update needed
[2026-10-25 05:07:23,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 05:07:23,101.101 INFO    ] 200
[2026-10-25 05:07:23,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:23,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:07:23,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:23,206.206 INFO    ] No camera update needed
[2026-10-25 05:07:23,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:07:23,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:07:23,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:07:23,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:07:25,260.260 INFO    ] ================================================
[2026-10-25 05:07:25,276.276 INFO    ] Launching Daemon at Sun Oct 25 05:07:25 IST 2026
[2026-10-25 05:07:25,286.286 INFO    ] ================================================
[2026-10-25 05:07:25,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:07:25
[2026-10-25 05:07:26,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:07:26,728.728 INFO    ] Initializing speech engine...
[2026-10-25 05:07:26,734.734 INFO    ] 2026-10-25 05:07:26
[2026-10-25 05:07:27,037.037 INFO    ] 2026-10-25 05:07:26
[2026-10-25 05:07:27,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:07:27,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:07:27,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:07:27,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:07:27,426.426 INFO    ] time= 25/10/2026 05:07:27
[2026-10-25 05:07:27,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:07:27,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:07:27,553.553 INFO    ] No existing commands found in stream
[2026-10-25 05:07:32,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:07:32,566.566 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 05:07:34,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:07:34,947.947 INFO    ] Checking for system updates...
[2026-10-25 05:07:34,984.984 INFO    ] 200
[2026-10-25 05:07:34,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:35,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:07:35,050.050 INFO    ] No update needed
[2026-10-25 05:07:35,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 05:07:35,087.087 INFO    ] 200
[2026-10-25 05:07:35,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:35,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:07:35,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:07:35,186.186 INFO    ] No camera update needed
[2026-10-25 05:07:35,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:07:35,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:07:35,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:07:35,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:07:37,242.242 INFO    ] ================================================
[2026-10-25 05:07:37,258.258 INFO    ] Launching Daemon at Sun Oct 25 05:07:37 IST 2026
[2026-10-25 05:07:37,268.268 INFO    ] ================================================
[2026-10-25 05:07:37,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:07:37
[2026-10-25 05:07:38,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:07:38,723.723 INFO    ] Initializing speech engine...
[2026-10-25 05:07:38,730.730 INFO    ] 2026-10-25 05:07:38
[2026-10-25 05:07:39,034.034 INFO    ] 2026-10-25 05:07:39
[2026-10-25 05:07:39,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:07:39,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:07:39,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:07:39,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:07:39,529.529 INFO    ] time= 25/10/2026 05:07:39
[2026-10-25 05:07:39,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:07:39,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:07:39,656.656 INFO    ] No existing commands found in stream
[2026-10-25 05:07:44,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:07:44,676.676 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 05:07:46,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:07:46,233.233 INFO    ] Checking for system updates...
[2026-10-25 05:07:46,269.269 INFO    ] 200
[2026-10-25 05:07:46,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:46,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:46,327.327 INFO    ] No update needed
[2026-10-25 05:07:46,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 05:07:46,364.364 INFO    ] 200
[2026-10-25 05:07:46,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:07:46,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:07:46,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:07:46,471.471 INFO    ] No camera update needed
[2026-10-25 05:07:46,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:07:46,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:07:46,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:07:46,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:07:48,530.530 INFO    ] ================================================
[2026-10-25 05:07:48,545.545 INFO    ] Launching Daemon at Sun Oct 25 05:07:48 IST 2026
[2026-10-25 05:07:48,556.556 INFO    ] ================================================
[2026-10-25 05:07:49,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:07:49
[2026-10-25 05:07:49,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:07:50,007.007 INFO    ] Initializing speech engine...
[2026-10-25 05:07:50,016.016 INFO    ] 2026-10-25 05:07:50
[2026-10-25 05:07:50,270.270 INFO    ] 2026-10-25 05:07:50
[2026-10-25 05:07:50,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:07:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:07:50,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:07:50,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:07:50,749.749 INFO    ] time= 25/10/2026 05:07:50
[2026-10-25 05:07:50,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:07:50,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:07:50,900.900 INFO    ] No existing commands found in stream
[2026-10-25 05:07:55,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:07:55,936.936 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 05:08:00,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:08:00,046.046 INFO    ] Checking for system updates...
[2026-10-25 05:08:00,084.084 INFO    ] 200
[2026-10-25 05:08:00,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:00,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:00,142.142 INFO    ] No update needed
[2026-10-25 05:08:00,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:00,179.179 INFO    ] 200
[2026-10-25 05:08:00,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:00,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:00,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:00,389.389 INFO    ] No camera update needed
[2026-10-25 05:08:00,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:00,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:00,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:00,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:08:02,450.450 INFO    ] ================================================
[2026-10-25 05:08:02,471.471 INFO    ] Launching Daemon at Sun Oct 25 05:08:02 IST 2026
[2026-10-25 05:08:02,493.493 INFO    ] ================================================
[2026-10-25 05:08:03,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:08:03
[2026-10-25 05:08:03,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:08:04,151.151 INFO    ] Initializing speech engine...
[2026-10-25 05:08:04,158.158 INFO    ] 2026-10-25 05:08:04
[2026-10-25 05:08:04,454.454 INFO    ] 2026-10-25 05:08:04
[2026-10-25 05:08:04,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:08:04,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:08:04,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:08:04,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:08:04,853.853 INFO    ] time= 25/10/2026 05:08:04
[2026-10-25 05:08:04,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:08:04,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:08:04,963.963 INFO    ] No existing commands found in stream
[2026-10-25 05:08:09,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:08:09,978.978 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 05:08:11,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:08:11,915.915 INFO    ] Checking for system updates...
[2026-10-25 05:08:11,955.955 INFO    ] 200
[2026-10-25 05:08:11,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:12,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:12,021.021 INFO    ] No update needed
[2026-10-25 05:08:12,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:12,061.061 INFO    ] 200
[2026-10-25 05:08:12,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:12,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:12,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:12,154.154 INFO    ] No camera update needed
[2026-10-25 05:08:12,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:12,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:12,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:12,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:08:14,209.209 INFO    ] ================================================
[2026-10-25 05:08:14,224.224 INFO    ] Launching Daemon at Sun Oct 25 05:08:14 IST 2026
[2026-10-25 05:08:14,235.235 INFO    ] ================================================
[2026-10-25 05:08:14,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:08:14
[2026-10-25 05:08:15,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:08:15,628.628 INFO    ] Initializing speech engine...
[2026-10-25 05:08:15,636.636 INFO    ] 2026-10-25 05:08:15
[2026-10-25 05:08:15,911.911 INFO    ] 2026-10-25 05:08:15
[2026-10-25 05:08:15,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:08:16,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:08:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:08:16,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:08:16,285.285 INFO    ] time= 25/10/2026 05:08:16
[2026-10-25 05:08:16,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:08:16,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:08:16,445.445 INFO    ] No existing commands found in stream
[2026-10-25 05:08:21,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:08:21,478.478 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 05:08:23,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:08:23,750.750 INFO    ] Checking for system updates...
[2026-10-25 05:08:23,787.787 INFO    ] 200
[2026-10-25 05:08:23,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:23,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:23,855.855 INFO    ] No update needed
[2026-10-25 05:08:23,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:23,897.897 INFO    ] 200
[2026-10-25 05:08:23,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:23,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:24,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:24,015.015 INFO    ] No camera update needed
[2026-10-25 05:08:24,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:24,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:24,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:24,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:08:26,072.072 INFO    ] ================================================
[2026-10-25 05:08:26,087.087 INFO    ] Launching Daemon at Sun Oct 25 05:08:26 IST 2026
[2026-10-25 05:08:26,098.098 INFO    ] ================================================
[2026-10-25 05:08:26,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:08:26
[2026-10-25 05:08:27,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:08:27,546.546 INFO    ] Initializing speech engine...
[2026-10-25 05:08:27,556.556 INFO    ] 2026-10-25 05:08:27
[2026-10-25 05:08:27,804.804 INFO    ] 2026-10-25 05:08:27
[2026-10-25 05:08:27,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:08:29,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:08:29,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:08:29,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:08:29,344.344 INFO    ] time= 25/10/2026 05:08:29
[2026-10-25 05:08:29,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:08:29,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:08:29,468.468 INFO    ] No existing commands found in stream
[2026-10-25 05:08:34,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:08:34,476.476 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 05:08:37,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:08:37,072.072 INFO    ] Checking for system updates...
[2026-10-25 05:08:37,111.111 INFO    ] 200
[2026-10-25 05:08:37,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:37,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:08:37,182.182 INFO    ] No update needed
[2026-10-25 05:08:37,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:37,227.227 INFO    ] 200
[2026-10-25 05:08:37,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:37,280.280 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:37,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:08:37,349.349 INFO    ] No camera update needed
[2026-10-25 05:08:37,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:37,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:37,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:37,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:08:39,410.410 INFO    ] ================================================
[2026-10-25 05:08:39,424.424 INFO    ] Launching Daemon at Sun Oct 25 05:08:39 IST 2026
[2026-10-25 05:08:39,435.435 INFO    ] ================================================
[2026-10-25 05:08:40,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:08:40
[2026-10-25 05:08:40,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:08:40,884.884 INFO    ] Initializing speech engine...
[2026-10-25 05:08:40,899.899 INFO    ] 2026-10-25 05:08:40
[2026-10-25 05:08:41,165.165 INFO    ] 2026-10-25 05:08:41
[2026-10-25 05:08:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:08:41,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:08:41,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:08:41,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:08:41,541.541 INFO    ] time= 25/10/2026 05:08:41
[2026-10-25 05:08:41,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:08:41,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:08:41,619.619 INFO    ] No existing commands found in stream
[2026-10-25 05:08:46,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:08:46,638.638 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 05:08:48,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:08:48,886.886 INFO    ] Checking for system updates...
[2026-10-25 05:08:48,927.927 INFO    ] 200
[2026-10-25 05:08:48,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:48,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:08:48,992.992 INFO    ] No update needed
[2026-10-25 05:08:48,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:49,033.033 INFO    ] 200
[2026-10-25 05:08:49,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:49,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:49,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:08:49,133.133 INFO    ] No camera update needed
[2026-10-25 05:08:49,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:49,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:49,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:49,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:08:51,189.189 INFO    ] ================================================
[2026-10-25 05:08:51,204.204 INFO    ] Launching Daemon at Sun Oct 25 05:08:51 IST 2026
[2026-10-25 05:08:51,215.215 INFO    ] ================================================
[2026-10-25 05:08:51,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:08:51
[2026-10-25 05:08:52,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:08:52,687.687 INFO    ] Initializing speech engine...
[2026-10-25 05:08:52,693.693 INFO    ] 2026-10-25 05:08:52
[2026-10-25 05:08:52,954.954 INFO    ] 2026-10-25 05:08:52
[2026-10-25 05:08:52,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:08:53,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:08:53,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:08:53,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:08:53,418.418 INFO    ] time= 25/10/2026 05:08:53
[2026-10-25 05:08:53,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:08:53,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:08:53,562.562 INFO    ] No existing commands found in stream
[2026-10-25 05:08:58,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:08:58,577.577 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 05:08:59,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:08:59,686.686 INFO    ] Checking for system updates...
[2026-10-25 05:08:59,723.723 INFO    ] 200
[2026-10-25 05:08:59,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:59,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:59,780.780 INFO    ] No update needed
[2026-10-25 05:08:59,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 05:08:59,821.821 INFO    ] 200
[2026-10-25 05:08:59,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:08:59,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:08:59,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:08:59,914.914 INFO    ] No camera update needed
[2026-10-25 05:08:59,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:08:59,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:08:59,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:08:59,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:09:01,982.982 INFO    ] ================================================
[2026-10-25 05:09:02,027.027 INFO    ] Launching Daemon at Sun Oct 25 05:09:02 IST 2026
[2026-10-25 05:09:02,073.073 INFO    ] ================================================
[2026-10-25 05:09:02,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:09:02
[2026-10-25 05:09:03,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:09:03,878.878 INFO    ] Initializing speech engine...
[2026-10-25 05:09:03,899.899 INFO    ] 2026-10-25 05:09:03
[2026-10-25 05:09:04,191.191 INFO    ] 2026-10-25 05:09:04
[2026-10-25 05:09:04,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:09:04,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:09:04,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:09:04,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:09:04,682.682 INFO    ] time= 25/10/2026 05:09:04
[2026-10-25 05:09:04,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:09:04,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:09:04,906.906 INFO    ] No existing commands found in stream
[2026-10-25 05:09:09,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:09:09,936.936 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 05:09:13,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:09:13,638.638 INFO    ] Checking for system updates...
[2026-10-25 05:09:13,681.681 INFO    ] 200
[2026-10-25 05:09:13,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:13,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:13,775.775 INFO    ] No update needed
[2026-10-25 05:09:13,778.778 INFO    ] Checking for camera pi updates...
[2026-10-25 05:09:13,818.818 INFO    ] 200
[2026-10-25 05:09:13,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:13,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:09:13,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:13,929.929 INFO    ] No camera update needed
[2026-10-25 05:09:13,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:09:13,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:09:13,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:09:13,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:09:15,990.990 INFO    ] ================================================
[2026-10-25 05:09:16,005.005 INFO    ] Launching Daemon at Sun Oct 25 05:09:15 IST 2026
[2026-10-25 05:09:16,016.016 INFO    ] ================================================
[2026-10-25 05:09:16,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:09:16
[2026-10-25 05:09:17,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:09:17,413.413 INFO    ] Initializing speech engine...
[2026-10-25 05:09:17,420.420 INFO    ] 2026-10-25 05:09:17
[2026-10-25 05:09:17,723.723 INFO    ] 2026-10-25 05:09:17
[2026-10-25 05:09:17,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:09:17,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:09:17,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:09:18,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:09:18,110.110 INFO    ] time= 25/10/2026 05:09:18
[2026-10-25 05:09:18,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:09:18,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:09:18,238.238 INFO    ] No existing commands found in stream
[2026-10-25 05:09:23,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:09:23,253.253 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 05:09:24,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:09:24,795.795 INFO    ] Checking for system updates...
[2026-10-25 05:09:24,830.830 INFO    ] 200
[2026-10-25 05:09:24,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:24,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:24,887.887 INFO    ] No update needed
[2026-10-25 05:09:24,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 05:09:24,923.923 INFO    ] 200
[2026-10-25 05:09:24,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:24,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:09:25,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:25,016.016 INFO    ] No camera update needed
[2026-10-25 05:09:25,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:09:25,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:09:25,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:09:25,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:09:27,070.070 INFO    ] ================================================
[2026-10-25 05:09:27,085.085 INFO    ] Launching Daemon at Sun Oct 25 05:09:27 IST 2026
[2026-10-25 05:09:27,096.096 INFO    ] ================================================
[2026-10-25 05:09:27,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:09:27
[2026-10-25 05:09:28,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:09:28,773.773 INFO    ] Initializing speech engine...
[2026-10-25 05:09:28,786.786 INFO    ] 2026-10-25 05:09:28
[2026-10-25 05:09:29,081.081 INFO    ] 2026-10-25 05:09:29
[2026-10-25 05:09:29,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:09:29,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:09:29,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:09:29,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:09:29,622.622 INFO    ] time= 25/10/2026 05:09:29
[2026-10-25 05:09:29,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:09:29,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:09:29,751.751 INFO    ] No existing commands found in stream
[2026-10-25 05:09:34,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:09:34,781.781 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 05:09:37,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:09:37,226.226 INFO    ] Checking for system updates...
[2026-10-25 05:09:37,263.263 INFO    ] 200
[2026-10-25 05:09:37,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:37,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:09:37,323.323 INFO    ] No update needed
[2026-10-25 05:09:37,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 05:09:37,364.364 INFO    ] 200
[2026-10-25 05:09:37,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:37,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:09:37,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:09:37,489.489 INFO    ] No camera update needed
[2026-10-25 05:09:37,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:09:37,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:09:37,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:09:37,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:09:39,543.543 INFO    ] ================================================
[2026-10-25 05:09:39,558.558 INFO    ] Launching Daemon at Sun Oct 25 05:09:39 IST 2026
[2026-10-25 05:09:39,569.569 INFO    ] ================================================
[2026-10-25 05:09:40,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:09:40
[2026-10-25 05:09:40,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:09:41,255.255 INFO    ] Initializing speech engine...
[2026-10-25 05:09:41,264.264 INFO    ] 2026-10-25 05:09:41
[2026-10-25 05:09:41,576.576 INFO    ] 2026-10-25 05:09:41
[2026-10-25 05:09:41,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:09:41,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:09:41,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:09:42,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:09:42,094.094 INFO    ] time= 25/10/2026 05:09:42
[2026-10-25 05:09:42,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:09:42,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:09:42,257.257 INFO    ] No existing commands found in stream
[2026-10-25 05:09:47,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:09:47,279.279 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 05:09:47,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:09:47,848.848 INFO    ] Checking for system updates...
[2026-10-25 05:09:47,885.885 INFO    ] 200
[2026-10-25 05:09:47,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:47,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:47,944.944 INFO    ] No update needed
[2026-10-25 05:09:47,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 05:09:47,980.980 INFO    ] 200
[2026-10-25 05:09:47,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:48,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:09:48,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:48,082.082 INFO    ] No camera update needed
[2026-10-25 05:09:48,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:09:48,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:09:48,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:09:48,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:09:50,136.136 INFO    ] ================================================
[2026-10-25 05:09:50,151.151 INFO    ] Launching Daemon at Sun Oct 25 05:09:50 IST 2026
[2026-10-25 05:09:50,161.161 INFO    ] ================================================
[2026-10-25 05:09:50,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:09:50
[2026-10-25 05:09:51,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:09:51,617.617 INFO    ] Initializing speech engine...
[2026-10-25 05:09:51,623.623 INFO    ] 2026-10-25 05:09:51
[2026-10-25 05:09:51,885.885 INFO    ] 2026-10-25 05:09:51
[2026-10-25 05:09:51,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:09:52,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:09:52,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:09:52,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:09:52,338.338 INFO    ] time= 25/10/2026 05:09:52
[2026-10-25 05:09:52,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:09:52,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:09:52,493.493 INFO    ] No existing commands found in stream
[2026-10-25 05:09:57,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:09:57,507.507 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 05:09:59,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:09:59,561.561 INFO    ] Checking for system updates...
[2026-10-25 05:09:59,596.596 INFO    ] 200
[2026-10-25 05:09:59,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:59,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:59,662.662 INFO    ] No update needed
[2026-10-25 05:09:59,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 05:09:59,698.698 INFO    ] 200
[2026-10-25 05:09:59,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:09:59,747.747 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:09:59,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:09:59,806.806 INFO    ] No camera update needed
[2026-10-25 05:09:59,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:09:59,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:09:59,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:09:59,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:10:01,908.908 INFO    ] ================================================
[2026-10-25 05:10:01,967.967 INFO    ] Launching Daemon at Sun Oct 25 05:10:01 IST 2026
[2026-10-25 05:10:01,983.983 INFO    ] ================================================
[2026-10-25 05:10:02,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:10:02
[2026-10-25 05:10:03,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:10:03,596.596 INFO    ] Initializing speech engine...
[2026-10-25 05:10:03,607.607 INFO    ] 2026-10-25 05:10:03
[2026-10-25 05:10:03,886.886 INFO    ] 2026-10-25 05:10:03
[2026-10-25 05:10:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:10:04,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:10:04,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:10:04,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:10:04,309.309 INFO    ] time= 25/10/2026 05:10:04
[2026-10-25 05:10:04,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:10:04,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:10:04,394.394 INFO    ] No existing commands found in stream
[2026-10-25 05:10:09,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:10:09,410.410 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 05:10:12,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:10:12,457.457 INFO    ] Checking for system updates...
[2026-10-25 05:10:12,498.498 INFO    ] 200
[2026-10-25 05:10:12,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:12,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:12,563.563 INFO    ] No update needed
[2026-10-25 05:10:12,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 05:10:12,598.598 INFO    ] 200
[2026-10-25 05:10:12,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:12,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:10:12,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:12,698.698 INFO    ] No camera update needed
[2026-10-25 05:10:12,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:10:12,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:10:12,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:10:12,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:10:14,753.753 INFO    ] ================================================
[2026-10-25 05:10:14,768.768 INFO    ] Launching Daemon at Sun Oct 25 05:10:14 IST 2026
[2026-10-25 05:10:14,779.779 INFO    ] ================================================
[2026-10-25 05:10:15,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:10:15
[2026-10-25 05:10:16,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:10:16,416.416 INFO    ] Initializing speech engine...
[2026-10-25 05:10:16,423.423 INFO    ] 2026-10-25 05:10:16
[2026-10-25 05:10:16,741.741 INFO    ] 2026-10-25 05:10:16
[2026-10-25 05:10:16,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:10:17,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:10:17,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:10:17,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:10:17,250.250 INFO    ] time= 25/10/2026 05:10:17
[2026-10-25 05:10:17,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:10:17,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:10:17,370.370 INFO    ] No existing commands found in stream
[2026-10-25 05:10:22,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:10:22,396.396 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 05:10:26,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:10:26,574.574 INFO    ] Checking for system updates...
[2026-10-25 05:10:26,615.615 INFO    ] 200
[2026-10-25 05:10:26,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:26,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:10:26,681.681 INFO    ] No update needed
[2026-10-25 05:10:26,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 05:10:26,723.723 INFO    ] 200
[2026-10-25 05:10:26,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:26,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:10:26,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:10:26,822.822 INFO    ] No camera update needed
[2026-10-25 05:10:26,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:10:26,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:10:26,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:10:26,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:10:28,883.883 INFO    ] ================================================
[2026-10-25 05:10:28,898.898 INFO    ] Launching Daemon at Sun Oct 25 05:10:28 IST 2026
[2026-10-25 05:10:28,909.909 INFO    ] ================================================
[2026-10-25 05:10:29,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:10:29
[2026-10-25 05:10:30,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:10:30,337.337 INFO    ] Initializing speech engine...
[2026-10-25 05:10:30,346.346 INFO    ] 2026-10-25 05:10:30
[2026-10-25 05:10:30,591.591 INFO    ] 2026-10-25 05:10:30
[2026-10-25 05:10:30,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:10:30,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:10:30,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:10:31,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:10:31,052.052 INFO    ] time= 25/10/2026 05:10:31
[2026-10-25 05:10:31,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:10:31,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:10:31,220.220 INFO    ] No existing commands found in stream
[2026-10-25 05:10:36,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:10:36,235.235 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 05:10:39,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:10:39,581.581 INFO    ] Checking for system updates...
[2026-10-25 05:10:39,623.623 INFO    ] 200
[2026-10-25 05:10:39,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:39,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:39,687.687 INFO    ] No update needed
[2026-10-25 05:10:39,690.690 INFO    ] Checking for camera pi updates...
[2026-10-25 05:10:39,725.725 INFO    ] 200
[2026-10-25 05:10:39,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:39,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:10:39,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:39,828.828 INFO    ] No camera update needed
[2026-10-25 05:10:39,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:10:39,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:10:39,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:10:39,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:10:41,888.888 INFO    ] ================================================
[2026-10-25 05:10:41,904.904 INFO    ] Launching Daemon at Sun Oct 25 05:10:41 IST 2026
[2026-10-25 05:10:41,916.916 INFO    ] ================================================
[2026-10-25 05:10:42,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:10:42
[2026-10-25 05:10:43,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:10:43,327.327 INFO    ] Initializing speech engine...
[2026-10-25 05:10:43,346.346 INFO    ] 2026-10-25 05:10:43
[2026-10-25 05:10:43,595.595 INFO    ] 2026-10-25 05:10:43
[2026-10-25 05:10:43,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:10:43,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:10:43,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:10:43,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:10:44,036.036 INFO    ] time= 25/10/2026 05:10:44
[2026-10-25 05:10:44,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:10:44,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:10:44,177.177 INFO    ] No existing commands found in stream
[2026-10-25 05:10:49,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:10:49,201.201 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 05:10:51,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:10:51,915.915 INFO    ] Checking for system updates...
[2026-10-25 05:10:51,951.951 INFO    ] 200
[2026-10-25 05:10:51,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:52,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:52,016.016 INFO    ] No update needed
[2026-10-25 05:10:52,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 05:10:52,056.056 INFO    ] 200
[2026-10-25 05:10:52,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:10:52,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:10:52,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:10:52,154.154 INFO    ] No camera update needed
[2026-10-25 05:10:52,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:10:52,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:10:52,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:10:52,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:10:54,211.211 INFO    ] ================================================
[2026-10-25 05:10:54,226.226 INFO    ] Launching Daemon at Sun Oct 25 05:10:54 IST 2026
[2026-10-25 05:10:54,238.238 INFO    ] ================================================
[2026-10-25 05:10:54,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:10:54
[2026-10-25 05:10:55,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:10:55,672.672 INFO    ] Initializing speech engine...
[2026-10-25 05:10:55,681.681 INFO    ] 2026-10-25 05:10:55
[2026-10-25 05:10:55,944.944 INFO    ] 2026-10-25 05:10:55
[2026-10-25 05:10:55,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:10:56,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:10:56,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:10:56,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:10:56,443.443 INFO    ] time= 25/10/2026 05:10:56
[2026-10-25 05:10:56,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:10:56,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:10:56,568.568 INFO    ] No existing commands found in stream
[2026-10-25 05:11:01,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:11:01,585.585 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 05:11:04,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:11:04,347.347 INFO    ] Checking for system updates...
[2026-10-25 05:11:04,384.384 INFO    ] 200
[2026-10-25 05:11:04,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:04,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:04,441.441 INFO    ] No update needed
[2026-10-25 05:11:04,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 05:11:04,477.477 INFO    ] 200
[2026-10-25 05:11:04,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:04,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:11:04,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:04,578.578 INFO    ] No camera update needed
[2026-10-25 05:11:04,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:11:04,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:11:04,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:11:04,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:11:06,635.635 INFO    ] ================================================
[2026-10-25 05:11:06,651.651 INFO    ] Launching Daemon at Sun Oct 25 05:11:06 IST 2026
[2026-10-25 05:11:06,662.662 INFO    ] ================================================
[2026-10-25 05:11:07,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:11:07
[2026-10-25 05:11:07,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:11:08,292.292 INFO    ] Initializing speech engine...
[2026-10-25 05:11:08,304.304 INFO    ] 2026-10-25 05:11:08
[2026-10-25 05:11:08,612.612 INFO    ] 2026-10-25 05:11:08
[2026-10-25 05:11:08,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:11:08,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:11:08,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:11:09,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:11:09,119.119 INFO    ] time= 25/10/2026 05:11:09
[2026-10-25 05:11:09,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:11:09,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:11:09,273.273 INFO    ] No existing commands found in stream
[2026-10-25 05:11:14,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:11:14,288.288 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 05:11:16,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:11:16,790.790 INFO    ] Checking for system updates...
[2026-10-25 05:11:16,827.827 INFO    ] 200
[2026-10-25 05:11:16,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:16,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:11:16,884.884 INFO    ] No update needed
[2026-10-25 05:11:16,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 05:11:16,921.921 INFO    ] 200
[2026-10-25 05:11:16,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:16,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:11:17,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:11:17,028.028 INFO    ] No camera update needed
[2026-10-25 05:11:17,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:11:17,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:11:17,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:11:17,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:11:19,084.084 INFO    ] ================================================
[2026-10-25 05:11:19,100.100 INFO    ] Launching Daemon at Sun Oct 25 05:11:19 IST 2026
[2026-10-25 05:11:19,111.111 INFO    ] ================================================
[2026-10-25 05:11:19,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:11:19
[2026-10-25 05:11:20,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:11:20,708.708 INFO    ] Initializing speech engine...
[2026-10-25 05:11:20,716.716 INFO    ] 2026-10-25 05:11:20
[2026-10-25 05:11:21,035.035 INFO    ] 2026-10-25 05:11:21
[2026-10-25 05:11:21,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:11:21,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:11:21,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:11:21,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:11:21,537.537 INFO    ] time= 25/10/2026 05:11:21
[2026-10-25 05:11:21,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:11:21,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:11:21,689.689 INFO    ] No existing commands found in stream
[2026-10-25 05:11:26,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:11:26,707.707 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 05:11:29,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:11:29,732.732 INFO    ] Checking for system updates...
[2026-10-25 05:11:29,773.773 INFO    ] 200
[2026-10-25 05:11:29,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:29,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:29,839.839 INFO    ] No update needed
[2026-10-25 05:11:29,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 05:11:29,879.879 INFO    ] 200
[2026-10-25 05:11:29,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:29,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:11:29,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:29,985.985 INFO    ] No camera update needed
[2026-10-25 05:11:29,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:11:29,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:11:29,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:11:30,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:11:32,043.043 INFO    ] ================================================
[2026-10-25 05:11:32,061.061 INFO    ] Launching Daemon at Sun Oct 25 05:11:32 IST 2026
[2026-10-25 05:11:32,074.074 INFO    ] ================================================
[2026-10-25 05:11:32,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:11:32
[2026-10-25 05:11:33,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:11:33,646.646 INFO    ] Initializing speech engine...
[2026-10-25 05:11:33,655.655 INFO    ] 2026-10-25 05:11:33
[2026-10-25 05:11:33,927.927 INFO    ] 2026-10-25 05:11:33
[2026-10-25 05:11:33,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:11:34,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:11:34,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:11:34,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:11:34,398.398 INFO    ] time= 25/10/2026 05:11:34
[2026-10-25 05:11:34,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:11:34,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:11:34,541.541 INFO    ] No existing commands found in stream
[2026-10-25 05:11:39,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:11:39,557.557 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 05:11:40,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:11:40,935.935 INFO    ] Checking for system updates...
[2026-10-25 05:11:40,972.972 INFO    ] 200
[2026-10-25 05:11:40,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:41,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:41,040.040 INFO    ] No update needed
[2026-10-25 05:11:41,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 05:11:41,085.085 INFO    ] 200
[2026-10-25 05:11:41,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:41,133.133 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:11:41,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:11:41,191.191 INFO    ] No camera update needed
[2026-10-25 05:11:41,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:11:41,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:11:41,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:11:41,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:11:43,248.248 INFO    ] ================================================
[2026-10-25 05:11:43,264.264 INFO    ] Launching Daemon at Sun Oct 25 05:11:43 IST 2026
[2026-10-25 05:11:43,276.276 INFO    ] ================================================
[2026-10-25 05:11:43,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:11:43
[2026-10-25 05:11:44,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:11:44,682.682 INFO    ] Initializing speech engine...
[2026-10-25 05:11:44,703.703 INFO    ] 2026-10-25 05:11:44
[2026-10-25 05:11:44,978.978 INFO    ] 2026-10-25 05:11:44
[2026-10-25 05:11:45,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:11:45,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:11:45,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:11:45,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:11:45,390.390 INFO    ] time= 25/10/2026 05:11:45
[2026-10-25 05:11:45,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:11:45,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:11:45,475.475 INFO    ] No existing commands found in stream
[2026-10-25 05:11:50,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:11:50,490.490 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 05:11:52,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:11:52,927.927 INFO    ] Checking for system updates...
[2026-10-25 05:11:52,965.965 INFO    ] 200
[2026-10-25 05:11:52,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:53,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:11:53,024.024 INFO    ] No update needed
[2026-10-25 05:11:53,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 05:11:53,062.062 INFO    ] 200
[2026-10-25 05:11:53,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:11:53,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:11:53,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:11:53,164.164 INFO    ] No camera update needed
[2026-10-25 05:11:53,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:11:53,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:11:53,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:11:53,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:11:55,219.219 INFO    ] ================================================
[2026-10-25 05:11:55,235.235 INFO    ] Launching Daemon at Sun Oct 25 05:11:55 IST 2026
[2026-10-25 05:11:55,245.245 INFO    ] ================================================
[2026-10-25 05:11:55,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:11:55
[2026-10-25 05:11:56,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:11:56,640.640 INFO    ] Initializing speech engine...
[2026-10-25 05:11:56,653.653 INFO    ] 2026-10-25 05:11:56
[2026-10-25 05:11:56,915.915 INFO    ] 2026-10-25 05:11:56
[2026-10-25 05:11:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:11:57,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:11:57,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:11:57,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:11:57,385.385 INFO    ] time= 25/10/2026 05:11:57
[2026-10-25 05:11:57,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:11:57,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:11:57,530.530 INFO    ] No existing commands found in stream
[2026-10-25 05:12:02,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:12:02,556.556 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 05:12:03,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:12:03,020.020 INFO    ] Checking for system updates...
[2026-10-25 05:12:03,061.061 INFO    ] 200
[2026-10-25 05:12:03,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:03,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:12:03,125.125 INFO    ] No update needed
[2026-10-25 05:12:03,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 05:12:03,162.162 INFO    ] 200
[2026-10-25 05:12:03,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:03,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:12:03,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:12:03,273.273 INFO    ] No camera update needed
[2026-10-25 05:12:03,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:12:03,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:12:03,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:12:03,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:12:05,331.331 INFO    ] ================================================
[2026-10-25 05:12:05,347.347 INFO    ] Launching Daemon at Sun Oct 25 05:12:05 IST 2026
[2026-10-25 05:12:05,359.359 INFO    ] ================================================
[2026-10-25 05:12:06,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:12:05
[2026-10-25 05:12:06,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:12:06,885.885 INFO    ] Initializing speech engine...
[2026-10-25 05:12:06,892.892 INFO    ] 2026-10-25 05:12:06
[2026-10-25 05:12:07,139.139 INFO    ] 2026-10-25 05:12:07
[2026-10-25 05:12:07,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:12:07,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:12:07,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:12:07,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:12:07,583.583 INFO    ] time= 25/10/2026 05:12:07
[2026-10-25 05:12:07,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:12:07,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:12:07,755.755 INFO    ] No existing commands found in stream
[2026-10-25 05:12:12,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:12:12,770.770 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 05:12:16,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:12:16,181.181 INFO    ] Checking for system updates...
[2026-10-25 05:12:16,217.217 INFO    ] 200
[2026-10-25 05:12:16,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:16,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:16,292.292 INFO    ] No update needed
[2026-10-25 05:12:16,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 05:12:16,332.332 INFO    ] 200
[2026-10-25 05:12:16,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:16,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:12:16,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:16,537.537 INFO    ] No camera update needed
[2026-10-25 05:12:16,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:12:16,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:12:16,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:12:16,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:12:18,592.592 INFO    ] ================================================
[2026-10-25 05:12:18,608.608 INFO    ] Launching Daemon at Sun Oct 25 05:12:18 IST 2026
[2026-10-25 05:12:18,619.619 INFO    ] ================================================
[2026-10-25 05:12:19,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:12:19
[2026-10-25 05:12:19,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:12:20,019.019 INFO    ] Initializing speech engine...
[2026-10-25 05:12:20,042.042 INFO    ] 2026-10-25 05:12:20
[2026-10-25 05:12:20,292.292 INFO    ] 2026-10-25 05:12:20
[2026-10-25 05:12:20,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:12:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:12:20,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:12:20,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:12:20,763.763 INFO    ] time= 25/10/2026 05:12:20
[2026-10-25 05:12:20,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:12:20,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:12:20,911.911 INFO    ] No existing commands found in stream
[2026-10-25 05:12:25,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:12:25,926.926 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 05:12:27,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:12:27,037.037 INFO    ] Checking for system updates...
[2026-10-25 05:12:27,076.076 INFO    ] 200
[2026-10-25 05:12:27,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:27,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:27,134.134 INFO    ] No update needed
[2026-10-25 05:12:27,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 05:12:27,174.174 INFO    ] 200
[2026-10-25 05:12:27,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:27,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:12:27,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:27,277.277 INFO    ] No camera update needed
[2026-10-25 05:12:27,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:12:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:12:27,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:12:27,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:12:29,336.336 INFO    ] ================================================
[2026-10-25 05:12:29,353.353 INFO    ] Launching Daemon at Sun Oct 25 05:12:29 IST 2026
[2026-10-25 05:12:29,364.364 INFO    ] ================================================
[2026-10-25 05:12:29,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:12:29
[2026-10-25 05:12:30,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:12:30,871.871 INFO    ] Initializing speech engine...
[2026-10-25 05:12:30,877.877 INFO    ] 2026-10-25 05:12:30
[2026-10-25 05:12:31,153.153 INFO    ] 2026-10-25 05:12:31
[2026-10-25 05:12:31,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:12:31,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:12:31,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:12:31,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:12:31,670.670 INFO    ] time= 25/10/2026 05:12:31
[2026-10-25 05:12:31,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:12:31,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:12:31,852.852 INFO    ] No existing commands found in stream
[2026-10-25 05:12:36,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:12:36,886.886 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 05:12:39,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:12:39,851.851 INFO    ] Checking for system updates...
[2026-10-25 05:12:39,890.890 INFO    ] 200
[2026-10-25 05:12:39,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:39,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:12:39,955.955 INFO    ] No update needed
[2026-10-25 05:12:39,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 05:12:39,995.995 INFO    ] 200
[2026-10-25 05:12:39,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:40,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:12:40,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:12:40,088.088 INFO    ] No camera update needed
[2026-10-25 05:12:40,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:12:40,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:12:40,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:12:40,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:12:42,142.142 INFO    ] ================================================
[2026-10-25 05:12:42,157.157 INFO    ] Launching Daemon at Sun Oct 25 05:12:42 IST 2026
[2026-10-25 05:12:42,168.168 INFO    ] ================================================
[2026-10-25 05:12:42,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:12:42
[2026-10-25 05:12:43,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:12:43,561.561 INFO    ] Initializing speech engine...
[2026-10-25 05:12:43,576.576 INFO    ] 2026-10-25 05:12:43
[2026-10-25 05:12:43,837.837 INFO    ] 2026-10-25 05:12:43
[2026-10-25 05:12:43,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:12:44,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:12:44,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:12:44,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:12:44,203.203 INFO    ] time= 25/10/2026 05:12:44
[2026-10-25 05:12:44,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:12:44,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:12:44,370.370 INFO    ] No existing commands found in stream
[2026-10-25 05:12:49,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:12:49,408.408 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 05:12:53,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:12:53,237.237 INFO    ] Checking for system updates...
[2026-10-25 05:12:53,273.273 INFO    ] 200
[2026-10-25 05:12:53,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:53,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:53,332.332 INFO    ] No update needed
[2026-10-25 05:12:53,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 05:12:53,368.368 INFO    ] 200
[2026-10-25 05:12:53,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:12:53,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:12:53,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:12:53,473.473 INFO    ] No camera update needed
[2026-10-25 05:12:53,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:12:53,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:12:53,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:12:53,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:12:55,529.529 INFO    ] ================================================
[2026-10-25 05:12:55,544.544 INFO    ] Launching Daemon at Sun Oct 25 05:12:55 IST 2026
[2026-10-25 05:12:55,554.554 INFO    ] ================================================
[2026-10-25 05:12:56,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:12:56
[2026-10-25 05:12:56,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:12:56,951.951 INFO    ] Initializing speech engine...
[2026-10-25 05:12:56,965.965 INFO    ] 2026-10-25 05:12:56
[2026-10-25 05:12:57,227.227 INFO    ] 2026-10-25 05:12:57
[2026-10-25 05:12:57,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:12:57,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:12:57,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:12:57,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:12:57,700.700 INFO    ] time= 25/10/2026 05:12:57
[2026-10-25 05:12:57,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:12:57,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:12:57,846.846 INFO    ] No existing commands found in stream
[2026-10-25 05:13:02,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:13:02,867.867 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 05:13:06,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:13:06,251.251 INFO    ] Checking for system updates...
[2026-10-25 05:13:06,287.287 INFO    ] 200
[2026-10-25 05:13:06,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:06,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:06,352.352 INFO    ] No update needed
[2026-10-25 05:13:06,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 05:13:06,393.393 INFO    ] 200
[2026-10-25 05:13:06,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:06,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:13:06,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:06,499.499 INFO    ] No camera update needed
[2026-10-25 05:13:06,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:13:06,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:13:06,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:13:06,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:13:08,558.558 INFO    ] ================================================
[2026-10-25 05:13:08,574.574 INFO    ] Launching Daemon at Sun Oct 25 05:13:08 IST 2026
[2026-10-25 05:13:08,584.584 INFO    ] ================================================
[2026-10-25 05:13:09,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:13:09
[2026-10-25 05:13:09,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:13:10,041.041 INFO    ] Initializing speech engine...
[2026-10-25 05:13:10,050.050 INFO    ] 2026-10-25 05:13:10
[2026-10-25 05:13:10,309.309 INFO    ] 2026-10-25 05:13:10
[2026-10-25 05:13:10,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:13:10,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:13:10,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:13:10,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:13:10,783.783 INFO    ] time= 25/10/2026 05:13:10
[2026-10-25 05:13:10,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:13:10,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:13:10,917.917 INFO    ] No existing commands found in stream
[2026-10-25 05:13:15,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:13:15,932.932 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 05:13:17,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:13:17,712.712 INFO    ] Checking for system updates...
[2026-10-25 05:13:17,753.753 INFO    ] 200
[2026-10-25 05:13:17,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:17,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:17,818.818 INFO    ] No update needed
[2026-10-25 05:13:17,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 05:13:17,855.855 INFO    ] 200
[2026-10-25 05:13:17,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:17,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:13:17,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:17,963.963 INFO    ] No camera update needed
[2026-10-25 05:13:17,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:13:17,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:13:17,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:13:17,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:13:20,019.019 INFO    ] ================================================
[2026-10-25 05:13:20,036.036 INFO    ] Launching Daemon at Sun Oct 25 05:13:20 IST 2026
[2026-10-25 05:13:20,052.052 INFO    ] ================================================
[2026-10-25 05:13:20,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:13:20
[2026-10-25 05:13:21,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:13:21,505.505 INFO    ] Initializing speech engine...
[2026-10-25 05:13:21,521.521 INFO    ] 2026-10-25 05:13:21
[2026-10-25 05:13:21,797.797 INFO    ] 2026-10-25 05:13:21
[2026-10-25 05:13:21,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:13:22,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:13:22,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:13:22,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:13:22,171.171 INFO    ] time= 25/10/2026 05:13:22
[2026-10-25 05:13:22,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:13:22,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:13:22,341.341 INFO    ] No existing commands found in stream
[2026-10-25 05:13:27,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:13:27,369.369 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 05:13:27,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:13:28,001.001 INFO    ] Checking for system updates...
[2026-10-25 05:13:28,038.038 INFO    ] 200
[2026-10-25 05:13:28,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:28,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:28,098.098 INFO    ] No update needed
[2026-10-25 05:13:28,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 05:13:28,138.138 INFO    ] 200
[2026-10-25 05:13:28,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:28,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:13:28,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:28,238.238 INFO    ] No camera update needed
[2026-10-25 05:13:28,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:13:28,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:13:28,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:13:28,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:13:30,294.294 INFO    ] ================================================
[2026-10-25 05:13:30,309.309 INFO    ] Launching Daemon at Sun Oct 25 05:13:30 IST 2026
[2026-10-25 05:13:30,320.320 INFO    ] ================================================
[2026-10-25 05:13:30,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:13:30
[2026-10-25 05:13:31,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:13:31,804.804 INFO    ] Initializing speech engine...
[2026-10-25 05:13:31,812.812 INFO    ] 2026-10-25 05:13:31
[2026-10-25 05:13:32,113.113 INFO    ] 2026-10-25 05:13:32
[2026-10-25 05:13:32,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:13:32,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:13:32,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:13:32,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:13:32,621.621 INFO    ] time= 25/10/2026 05:13:32
[2026-10-25 05:13:32,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:13:32,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:13:32,848.848 INFO    ] No existing commands found in stream
[2026-10-25 05:13:37,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:13:37,881.881 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 05:13:41,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:13:41,529.529 INFO    ] Checking for system updates...
[2026-10-25 05:13:41,567.567 INFO    ] 200
[2026-10-25 05:13:41,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:41,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:41,627.627 INFO    ] No update needed
[2026-10-25 05:13:41,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 05:13:41,670.670 INFO    ] 200
[2026-10-25 05:13:41,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:41,744.744 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:13:41,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:41,794.794 INFO    ] No camera update needed
[2026-10-25 05:13:41,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:13:41,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:13:41,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:13:41,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:13:43,849.849 INFO    ] ================================================
[2026-10-25 05:13:43,865.865 INFO    ] Launching Daemon at Sun Oct 25 05:13:43 IST 2026
[2026-10-25 05:13:43,876.876 INFO    ] ================================================
[2026-10-25 05:13:44,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:13:44
[2026-10-25 05:13:45,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:13:45,300.300 INFO    ] Initializing speech engine...
[2026-10-25 05:13:45,307.307 INFO    ] 2026-10-25 05:13:45
[2026-10-25 05:13:45,565.565 INFO    ] 2026-10-25 05:13:45
[2026-10-25 05:13:45,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:13:45,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:13:45,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:13:45,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:13:46,049.049 INFO    ] time= 25/10/2026 05:13:45
[2026-10-25 05:13:46,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:13:46,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:13:46,243.243 INFO    ] No existing commands found in stream
[2026-10-25 05:13:51,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:13:51,271.271 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 05:13:54,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:13:54,395.395 INFO    ] Checking for system updates...
[2026-10-25 05:13:54,432.432 INFO    ] 200
[2026-10-25 05:13:54,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:54,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:54,502.502 INFO    ] No update needed
[2026-10-25 05:13:54,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 05:13:54,550.550 INFO    ] 200
[2026-10-25 05:13:54,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:13:54,594.594 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:13:54,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:13:54,649.649 INFO    ] No camera update needed
[2026-10-25 05:13:54,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:13:54,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:13:54,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:13:54,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:13:56,704.704 INFO    ] ================================================
[2026-10-25 05:13:56,719.719 INFO    ] Launching Daemon at Sun Oct 25 05:13:56 IST 2026
[2026-10-25 05:13:56,730.730 INFO    ] ================================================
[2026-10-25 05:13:57,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:13:57
[2026-10-25 05:13:57,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:13:58,161.161 INFO    ] Initializing speech engine...
[2026-10-25 05:13:58,167.167 INFO    ] 2026-10-25 05:13:58
[2026-10-25 05:13:58,410.410 INFO    ] 2026-10-25 05:13:58
[2026-10-25 05:13:58,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:13:59,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:13:59,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:13:59,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:13:59,517.517 INFO    ] time= 25/10/2026 05:13:59
[2026-10-25 05:13:59,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:13:59,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:13:59,623.623 INFO    ] No existing commands found in stream
[2026-10-25 05:14:04,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:14:04,637.637 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 05:14:08,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:14:08,366.366 INFO    ] Checking for system updates...
[2026-10-25 05:14:08,402.402 INFO    ] 200
[2026-10-25 05:14:08,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:08,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:08,466.466 INFO    ] No update needed
[2026-10-25 05:14:08,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 05:14:08,502.502 INFO    ] 200
[2026-10-25 05:14:08,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:08,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:14:08,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:08,606.606 INFO    ] No camera update needed
[2026-10-25 05:14:08,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:14:08,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:14:08,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:14:08,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:14:10,661.661 INFO    ] ================================================
[2026-10-25 05:14:10,677.677 INFO    ] Launching Daemon at Sun Oct 25 05:14:10 IST 2026
[2026-10-25 05:14:10,688.688 INFO    ] ================================================
[2026-10-25 05:14:11,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:14:11
[2026-10-25 05:14:11,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:14:12,149.149 INFO    ] Initializing speech engine...
[2026-10-25 05:14:12,157.157 INFO    ] 2026-10-25 05:14:12
[2026-10-25 05:14:12,427.427 INFO    ] 2026-10-25 05:14:12
[2026-10-25 05:14:12,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:14:12,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:14:12,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:14:12,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:14:12,902.902 INFO    ] time= 25/10/2026 05:14:12
[2026-10-25 05:14:12,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:14:12,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:14:13,018.018 INFO    ] No existing commands found in stream
[2026-10-25 05:14:18,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:14:18,032.032 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 05:14:18,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:14:18,716.716 INFO    ] Checking for system updates...
[2026-10-25 05:14:18,752.752 INFO    ] 200
[2026-10-25 05:14:18,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:18,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:18,809.809 INFO    ] No update needed
[2026-10-25 05:14:18,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 05:14:18,851.851 INFO    ] 200
[2026-10-25 05:14:18,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:18,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:14:19,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:19,053.053 INFO    ] No camera update needed
[2026-10-25 05:14:19,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:14:19,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:14:19,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:14:19,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:14:21,108.108 INFO    ] ================================================
[2026-10-25 05:14:21,123.123 INFO    ] Launching Daemon at Sun Oct 25 05:14:21 IST 2026
[2026-10-25 05:14:21,134.134 INFO    ] ================================================
[2026-10-25 05:14:21,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:14:21
[2026-10-25 05:14:22,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:14:22,589.589 INFO    ] Initializing speech engine...
[2026-10-25 05:14:22,598.598 INFO    ] 2026-10-25 05:14:22
[2026-10-25 05:14:22,848.848 INFO    ] 2026-10-25 05:14:22
[2026-10-25 05:14:22,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:14:23,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:14:23,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:14:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:14:23,317.317 INFO    ] time= 25/10/2026 05:14:23
[2026-10-25 05:14:23,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:14:23,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:14:23,465.465 INFO    ] No existing commands found in stream
[2026-10-25 05:14:28,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:14:28,480.480 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 05:14:30,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:14:30,605.605 INFO    ] Checking for system updates...
[2026-10-25 05:14:30,642.642 INFO    ] 200
[2026-10-25 05:14:30,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:30,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:30,708.708 INFO    ] No update needed
[2026-10-25 05:14:30,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 05:14:30,748.748 INFO    ] 200
[2026-10-25 05:14:30,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:30,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:14:30,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:30,846.846 INFO    ] No camera update needed
[2026-10-25 05:14:30,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:14:30,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:14:30,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:14:30,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:14:32,904.904 INFO    ] ================================================
[2026-10-25 05:14:32,919.919 INFO    ] Launching Daemon at Sun Oct 25 05:14:32 IST 2026
[2026-10-25 05:14:32,929.929 INFO    ] ================================================
[2026-10-25 05:14:33,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:14:33
[2026-10-25 05:14:34,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:14:34,590.590 INFO    ] Initializing speech engine...
[2026-10-25 05:14:34,604.604 INFO    ] 2026-10-25 05:14:34
[2026-10-25 05:14:34,879.879 INFO    ] 2026-10-25 05:14:34
[2026-10-25 05:14:34,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:14:35,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:14:35,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:14:35,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:14:35,356.356 INFO    ] time= 25/10/2026 05:14:35
[2026-10-25 05:14:35,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:14:35,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:14:35,501.501 INFO    ] No existing commands found in stream
[2026-10-25 05:14:40,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:14:40,516.516 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 05:14:42,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:14:42,583.583 INFO    ] Checking for system updates...
[2026-10-25 05:14:42,624.624 INFO    ] 200
[2026-10-25 05:14:42,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:42,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:42,686.686 INFO    ] No update needed
[2026-10-25 05:14:42,688.688 INFO    ] Checking for camera pi updates...
[2026-10-25 05:14:42,724.724 INFO    ] 200
[2026-10-25 05:14:42,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:42,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:14:42,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:42,823.823 INFO    ] No camera update needed
[2026-10-25 05:14:42,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:14:42,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:14:42,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:14:42,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:14:44,882.882 INFO    ] ================================================
[2026-10-25 05:14:44,897.897 INFO    ] Launching Daemon at Sun Oct 25 05:14:44 IST 2026
[2026-10-25 05:14:44,908.908 INFO    ] ================================================
[2026-10-25 05:14:45,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:14:45
[2026-10-25 05:14:46,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:14:46,316.316 INFO    ] Initializing speech engine...
[2026-10-25 05:14:46,335.335 INFO    ] 2026-10-25 05:14:46
[2026-10-25 05:14:46,584.584 INFO    ] 2026-10-25 05:14:46
[2026-10-25 05:14:46,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:14:46,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:14:46,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:14:46,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:14:46,923.923 INFO    ] time= 25/10/2026 05:14:46
[2026-10-25 05:14:46,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:14:46,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:14:47,037.037 INFO    ] No existing commands found in stream
[2026-10-25 05:14:52,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:14:52,050.050 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 05:14:55,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:14:55,108.108 INFO    ] Checking for system updates...
[2026-10-25 05:14:55,146.146 INFO    ] 200
[2026-10-25 05:14:55,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:55,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:55,215.215 INFO    ] No update needed
[2026-10-25 05:14:55,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 05:14:55,257.257 INFO    ] 200
[2026-10-25 05:14:55,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:14:55,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:14:55,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:14:55,359.359 INFO    ] No camera update needed
[2026-10-25 05:14:55,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:14:55,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:14:55,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:14:55,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:14:57,419.419 INFO    ] ================================================
[2026-10-25 05:14:57,435.435 INFO    ] Launching Daemon at Sun Oct 25 05:14:57 IST 2026
[2026-10-25 05:14:57,446.446 INFO    ] ================================================
[2026-10-25 05:14:58,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:14:58
[2026-10-25 05:14:58,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:14:58,860.860 INFO    ] Initializing speech engine...
[2026-10-25 05:14:58,867.867 INFO    ] 2026-10-25 05:14:58
[2026-10-25 05:14:59,163.163 INFO    ] 2026-10-25 05:14:59
[2026-10-25 05:14:59,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:14:59,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:14:59,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:14:59,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:14:59,556.556 INFO    ] time= 25/10/2026 05:14:59
[2026-10-25 05:14:59,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:14:59,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:14:59,686.686 INFO    ] No existing commands found in stream
[2026-10-25 05:15:04,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:15:04,702.702 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 05:15:06,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:15:06,136.136 INFO    ] Checking for system updates...
[2026-10-25 05:15:06,177.177 INFO    ] 200
[2026-10-25 05:15:06,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:06,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:06,242.242 INFO    ] No update needed
[2026-10-25 05:15:06,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 05:15:06,278.278 INFO    ] 200
[2026-10-25 05:15:06,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:06,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:15:06,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:06,378.378 INFO    ] No camera update needed
[2026-10-25 05:15:06,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:15:06,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:15:06,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:15:06,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:15:08,434.434 INFO    ] ================================================
[2026-10-25 05:15:08,449.449 INFO    ] Launching Daemon at Sun Oct 25 05:15:08 IST 2026
[2026-10-25 05:15:08,460.460 INFO    ] ================================================
[2026-10-25 05:15:09,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:15:09
[2026-10-25 05:15:09,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:15:10,116.116 INFO    ] Initializing speech engine...
[2026-10-25 05:15:10,127.127 INFO    ] 2026-10-25 05:15:10
[2026-10-25 05:15:10,408.408 INFO    ] 2026-10-25 05:15:10
[2026-10-25 05:15:10,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:15:10,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:15:10,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:15:10,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:15:10,939.939 INFO    ] time= 25/10/2026 05:15:10
[2026-10-25 05:15:10,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:15:10,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:15:11,078.078 INFO    ] No existing commands found in stream
[2026-10-25 05:15:16,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:15:16,112.112 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 05:15:19,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:15:19,682.682 INFO    ] Checking for system updates...
[2026-10-25 05:15:19,720.720 INFO    ] 200
[2026-10-25 05:15:19,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:19,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:19,778.778 INFO    ] No update needed
[2026-10-25 05:15:19,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 05:15:19,814.814 INFO    ] 200
[2026-10-25 05:15:19,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:19,857.857 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:15:19,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:19,914.914 INFO    ] No camera update needed
[2026-10-25 05:15:19,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:15:19,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:15:19,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:15:19,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:15:21,969.969 INFO    ] ================================================
[2026-10-25 05:15:21,984.984 INFO    ] Launching Daemon at Sun Oct 25 05:15:21 IST 2026
[2026-10-25 05:15:22,996.996 INFO    ] ================================================
[2026-10-25 05:15:22,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:15:22
[2026-10-25 05:15:23,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:15:23,453.453 INFO    ] Initializing speech engine...
[2026-10-25 05:15:23,461.461 INFO    ] 2026-10-25 05:15:23
[2026-10-25 05:15:23,716.716 INFO    ] 2026-10-25 05:15:23
[2026-10-25 05:15:23,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:15:24,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:15:24,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:15:24,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:15:24,446.446 INFO    ] time= 25/10/2026 05:15:24
[2026-10-25 05:15:24,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:15:24,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:15:24,686.686 INFO    ] No existing commands found in stream
[2026-10-25 05:15:29,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:15:29,715.715 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 05:15:32,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:15:32,150.150 INFO    ] Checking for system updates...
[2026-10-25 05:15:32,195.195 INFO    ] 200
[2026-10-25 05:15:32,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:32,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:15:32,283.283 INFO    ] No update needed
[2026-10-25 05:15:32,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 05:15:32,337.337 INFO    ] 200
[2026-10-25 05:15:32,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:32,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:15:32,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:15:32,457.457 INFO    ] No camera update needed
[2026-10-25 05:15:32,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:15:32,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:15:32,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:15:32,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:15:34,521.521 INFO    ] ================================================
[2026-10-25 05:15:34,538.538 INFO    ] Launching Daemon at Sun Oct 25 05:15:34 IST 2026
[2026-10-25 05:15:34,550.550 INFO    ] ================================================
[2026-10-25 05:15:35,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:15:35
[2026-10-25 05:15:35,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:15:36,125.125 INFO    ] Initializing speech engine...
[2026-10-25 05:15:36,135.135 INFO    ] 2026-10-25 05:15:36
[2026-10-25 05:15:36,380.380 INFO    ] 2026-10-25 05:15:36
[2026-10-25 05:15:36,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:15:36,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:15:36,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:15:36,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:15:36,844.844 INFO    ] time= 25/10/2026 05:15:36
[2026-10-25 05:15:36,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:15:36,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:15:37,026.026 INFO    ] No existing commands found in stream
[2026-10-25 05:15:42,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:15:42,061.061 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 05:15:44,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:15:44,134.134 INFO    ] Checking for system updates...
[2026-10-25 05:15:44,173.173 INFO    ] 200
[2026-10-25 05:15:44,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:44,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:44,230.230 INFO    ] No update needed
[2026-10-25 05:15:44,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 05:15:44,266.266 INFO    ] 200
[2026-10-25 05:15:44,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:44,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:15:44,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:44,359.359 INFO    ] No camera update needed
[2026-10-25 05:15:44,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:15:44,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:15:44,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:15:44,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:15:46,416.416 INFO    ] ================================================
[2026-10-25 05:15:46,432.432 INFO    ] Launching Daemon at Sun Oct 25 05:15:46 IST 2026
[2026-10-25 05:15:46,443.443 INFO    ] ================================================
[2026-10-25 05:15:47,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:15:47
[2026-10-25 05:15:47,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:15:47,874.874 INFO    ] Initializing speech engine...
[2026-10-25 05:15:47,886.886 INFO    ] 2026-10-25 05:15:47
[2026-10-25 05:15:48,151.151 INFO    ] 2026-10-25 05:15:48
[2026-10-25 05:15:48,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:15:48,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:15:48,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:15:48,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:15:48,526.526 INFO    ] time= 25/10/2026 05:15:48
[2026-10-25 05:15:48,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:15:48,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:15:48,697.697 INFO    ] No existing commands found in stream
[2026-10-25 05:15:53,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:15:53,729.729 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 05:15:57,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:15:57,864.864 INFO    ] Checking for system updates...
[2026-10-25 05:15:57,904.904 INFO    ] 200
[2026-10-25 05:15:57,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:57,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:57,961.961 INFO    ] No update needed
[2026-10-25 05:15:57,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 05:15:57,997.997 INFO    ] 200
[2026-10-25 05:15:57,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:15:58,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:15:58,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:15:58,091.091 INFO    ] No camera update needed
[2026-10-25 05:15:58,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:15:58,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:15:58,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:15:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:16:00,145.145 INFO    ] ================================================
[2026-10-25 05:16:00,160.160 INFO    ] Launching Daemon at Sun Oct 25 05:16:00 IST 2026
[2026-10-25 05:16:00,171.171 INFO    ] ================================================
[2026-10-25 05:16:00,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:16:00
[2026-10-25 05:16:01,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:16:01,577.577 INFO    ] Initializing speech engine...
[2026-10-25 05:16:01,597.597 INFO    ] 2026-10-25 05:16:01
[2026-10-25 05:16:01,846.846 INFO    ] 2026-10-25 05:16:01
[2026-10-25 05:16:01,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:16:02,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:16:02,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:16:02,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:16:02,335.335 INFO    ] time= 25/10/2026 05:16:02
[2026-10-25 05:16:02,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:16:02,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:16:02,405.405 INFO    ] No existing commands found in stream
[2026-10-25 05:16:07,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:16:07,443.443 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 05:16:11,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:16:11,352.352 INFO    ] Checking for system updates...
[2026-10-25 05:16:11,389.389 INFO    ] 200
[2026-10-25 05:16:11,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:11,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:11,449.449 INFO    ] No update needed
[2026-10-25 05:16:11,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 05:16:11,490.490 INFO    ] 200
[2026-10-25 05:16:11,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:11,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:16:11,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:11,591.591 INFO    ] No camera update needed
[2026-10-25 05:16:11,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:16:11,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:16:11,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:16:11,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:16:13,649.649 INFO    ] ================================================
[2026-10-25 05:16:13,665.665 INFO    ] Launching Daemon at Sun Oct 25 05:16:13 IST 2026
[2026-10-25 05:16:13,676.676 INFO    ] ================================================
[2026-10-25 05:16:14,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:16:14
[2026-10-25 05:16:14,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:16:15,078.078 INFO    ] Initializing speech engine...
[2026-10-25 05:16:15,101.101 INFO    ] 2026-10-25 05:16:15
[2026-10-25 05:16:15,356.356 INFO    ] 2026-10-25 05:16:15
[2026-10-25 05:16:15,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:16:15,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:16:15,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:16:15,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:16:15,733.733 INFO    ] time= 25/10/2026 05:16:15
[2026-10-25 05:16:15,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:16:15,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:16:15,870.870 INFO    ] No existing commands found in stream
[2026-10-25 05:16:20,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:16:20,897.897 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 05:16:23,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:16:23,997.997 INFO    ] Checking for system updates...
[2026-10-25 05:16:24,036.036 INFO    ] 200
[2026-10-25 05:16:24,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:24,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:24,099.099 INFO    ] No update needed
[2026-10-25 05:16:24,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 05:16:24,143.143 INFO    ] 200
[2026-10-25 05:16:24,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:24,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:16:24,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:24,339.339 INFO    ] No camera update needed
[2026-10-25 05:16:24,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:16:24,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:16:24,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:16:24,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:16:26,394.394 INFO    ] ================================================
[2026-10-25 05:16:26,410.410 INFO    ] Launching Daemon at Sun Oct 25 05:16:26 IST 2026
[2026-10-25 05:16:26,420.420 INFO    ] ================================================
[2026-10-25 05:16:27,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:16:27
[2026-10-25 05:16:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:16:27,949.949 INFO    ] Initializing speech engine...
[2026-10-25 05:16:27,968.968 INFO    ] 2026-10-25 05:16:27
[2026-10-25 05:16:28,215.215 INFO    ] 2026-10-25 05:16:28
[2026-10-25 05:16:28,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:16:29,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:16:29,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:16:29,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:16:29,721.721 INFO    ] time= 25/10/2026 05:16:29
[2026-10-25 05:16:29,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:16:29,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:16:29,853.853 INFO    ] No existing commands found in stream
[2026-10-25 05:16:34,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:16:34,886.886 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 05:16:36,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:16:36,689.689 INFO    ] Checking for system updates...
[2026-10-25 05:16:36,725.725 INFO    ] 200
[2026-10-25 05:16:36,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:36,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:36,786.786 INFO    ] No update needed
[2026-10-25 05:16:36,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 05:16:36,822.822 INFO    ] 200
[2026-10-25 05:16:36,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:36,873.873 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:16:36,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:36,936.936 INFO    ] No camera update needed
[2026-10-25 05:16:36,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:16:36,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:16:36,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:16:36,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:16:38,993.993 INFO    ] ================================================
[2026-10-25 05:16:39,009.009 INFO    ] Launching Daemon at Sun Oct 25 05:16:39 IST 2026
[2026-10-25 05:16:39,020.020 INFO    ] ================================================
[2026-10-25 05:16:39,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:16:39
[2026-10-25 05:16:40,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:16:40,426.426 INFO    ] Initializing speech engine...
[2026-10-25 05:16:40,440.440 INFO    ] 2026-10-25 05:16:40
[2026-10-25 05:16:40,720.720 INFO    ] 2026-10-25 05:16:40
[2026-10-25 05:16:40,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:16:40,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:16:40,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:16:41,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:16:41,117.117 INFO    ] time= 25/10/2026 05:16:41
[2026-10-25 05:16:41,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:16:41,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:16:41,297.297 INFO    ] No existing commands found in stream
[2026-10-25 05:16:46,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:16:46,326.326 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 05:16:47,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:16:47,495.495 INFO    ] Checking for system updates...
[2026-10-25 05:16:47,531.531 INFO    ] 200
[2026-10-25 05:16:47,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:47,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:47,588.588 INFO    ] No update needed
[2026-10-25 05:16:47,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 05:16:47,625.625 INFO    ] 200
[2026-10-25 05:16:47,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:16:47,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:16:47,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:16:47,740.740 INFO    ] No camera update needed
[2026-10-25 05:16:47,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:16:47,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:16:47,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:16:47,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:16:49,797.797 INFO    ] ================================================
[2026-10-25 05:16:49,812.812 INFO    ] Launching Daemon at Sun Oct 25 05:16:49 IST 2026
[2026-10-25 05:16:49,823.823 INFO    ] ================================================
[2026-10-25 05:16:50,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:16:50
[2026-10-25 05:16:51,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:16:51,263.263 INFO    ] Initializing speech engine...
[2026-10-25 05:16:51,285.285 INFO    ] 2026-10-25 05:16:51
[2026-10-25 05:16:51,536.536 INFO    ] 2026-10-25 05:16:51
[2026-10-25 05:16:51,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:16:51,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:16:51,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:16:51,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:16:52,010.010 INFO    ] time= 25/10/2026 05:16:51
[2026-10-25 05:16:52,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:16:52,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:16:52,149.149 INFO    ] No existing commands found in stream
[2026-10-25 05:16:57,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:16:57,164.164 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 05:17:00,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:17:00,929.929 INFO    ] Checking for system updates...
[2026-10-25 05:17:00,968.968 INFO    ] 200
[2026-10-25 05:17:00,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:01,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:01,039.039 INFO    ] No update needed
[2026-10-25 05:17:01,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 05:17:01,112.112 INFO    ] 200
[2026-10-25 05:17:01,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:01,248.248 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:17:01,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:01,304.304 INFO    ] No camera update needed
[2026-10-25 05:17:01,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:17:01,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:17:01,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:17:01,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:17:03,409.409 INFO    ] ================================================
[2026-10-25 05:17:03,430.430 INFO    ] Launching Daemon at Sun Oct 25 05:17:03 IST 2026
[2026-10-25 05:17:03,441.441 INFO    ] ================================================
[2026-10-25 05:17:04,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:17:04
[2026-10-25 05:17:04,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:17:04,868.868 INFO    ] Initializing speech engine...
[2026-10-25 05:17:04,878.878 INFO    ] 2026-10-25 05:17:04
[2026-10-25 05:17:05,143.143 INFO    ] 2026-10-25 05:17:05
[2026-10-25 05:17:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:17:05,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:17:05,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:17:05,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:17:05,522.522 INFO    ] time= 25/10/2026 05:17:05
[2026-10-25 05:17:05,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:17:05,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:17:05,629.629 INFO    ] No existing commands found in stream
[2026-10-25 05:17:10,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:17:10,652.652 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 05:17:14,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:17:14,534.534 INFO    ] Checking for system updates...
[2026-10-25 05:17:14,574.574 INFO    ] 200
[2026-10-25 05:17:14,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:14,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:17:14,633.633 INFO    ] No update needed
[2026-10-25 05:17:14,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 05:17:14,669.669 INFO    ] 200
[2026-10-25 05:17:14,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:14,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:17:14,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:17:14,770.770 INFO    ] No camera update needed
[2026-10-25 05:17:14,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:17:14,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:17:14,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:17:14,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:17:16,826.826 INFO    ] ================================================
[2026-10-25 05:17:16,842.842 INFO    ] Launching Daemon at Sun Oct 25 05:17:16 IST 2026
[2026-10-25 05:17:16,853.853 INFO    ] ================================================
[2026-10-25 05:17:17,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:17:17
[2026-10-25 05:17:18,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:17:18,265.265 INFO    ] Initializing speech engine...
[2026-10-25 05:17:18,287.287 INFO    ] 2026-10-25 05:17:18
[2026-10-25 05:17:18,537.537 INFO    ] 2026-10-25 05:17:18
[2026-10-25 05:17:18,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:17:18,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:17:18,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:17:18,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:17:19,011.011 INFO    ] time= 25/10/2026 05:17:18
[2026-10-25 05:17:19,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:17:19,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:17:19,156.156 INFO    ] No existing commands found in stream
[2026-10-25 05:17:24,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:17:24,173.173 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 05:17:27,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:17:27,644.644 INFO    ] Checking for system updates...
[2026-10-25 05:17:27,684.684 INFO    ] 200
[2026-10-25 05:17:27,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:27,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:27,742.742 INFO    ] No update needed
[2026-10-25 05:17:27,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 05:17:27,783.783 INFO    ] 200
[2026-10-25 05:17:27,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:27,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:17:27,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:27,883.883 INFO    ] No camera update needed
[2026-10-25 05:17:27,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:17:27,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:17:27,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:17:27,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:17:29,944.944 INFO    ] ================================================
[2026-10-25 05:17:29,962.962 INFO    ] Launching Daemon at Sun Oct 25 05:17:29 IST 2026
[2026-10-25 05:17:29,986.986 INFO    ] ================================================
[2026-10-25 05:17:30,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:17:30
[2026-10-25 05:17:31,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:17:31,519.519 INFO    ] Initializing speech engine...
[2026-10-25 05:17:31,525.525 INFO    ] 2026-10-25 05:17:31
[2026-10-25 05:17:31,784.784 INFO    ] 2026-10-25 05:17:31
[2026-10-25 05:17:31,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:17:32,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:17:32,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:17:32,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:17:32,298.298 INFO    ] time= 25/10/2026 05:17:32
[2026-10-25 05:17:32,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:17:32,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:17:32,460.460 INFO    ] No existing commands found in stream
[2026-10-25 05:17:37,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:17:37,475.475 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 05:17:39,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:17:39,368.368 INFO    ] Checking for system updates...
[2026-10-25 05:17:39,406.406 INFO    ] 200
[2026-10-25 05:17:39,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:39,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:17:39,466.466 INFO    ] No update needed
[2026-10-25 05:17:39,469.469 INFO    ] Checking for camera pi updates...
[2026-10-25 05:17:39,510.510 INFO    ] 200
[2026-10-25 05:17:39,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:39,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:17:39,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:17:39,612.612 INFO    ] No camera update needed
[2026-10-25 05:17:39,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:17:39,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:17:39,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:17:39,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:17:41,668.668 INFO    ] ================================================
[2026-10-25 05:17:41,683.683 INFO    ] Launching Daemon at Sun Oct 25 05:17:41 IST 2026
[2026-10-25 05:17:41,694.694 INFO    ] ================================================
[2026-10-25 05:17:42,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:17:42
[2026-10-25 05:17:42,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:17:43,155.155 INFO    ] Initializing speech engine...
[2026-10-25 05:17:43,168.168 INFO    ] 2026-10-25 05:17:43
[2026-10-25 05:17:43,432.432 INFO    ] 2026-10-25 05:17:43
[2026-10-25 05:17:43,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:17:43,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:17:43,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:17:43,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:17:43,977.977 INFO    ] time= 25/10/2026 05:17:43
[2026-10-25 05:17:43,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:17:44,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:17:44,115.115 INFO    ] No existing commands found in stream
[2026-10-25 05:17:49,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:17:49,132.132 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 05:17:52,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:17:52,183.183 INFO    ] Checking for system updates...
[2026-10-25 05:17:52,219.219 INFO    ] 200
[2026-10-25 05:17:52,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:52,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:52,285.285 INFO    ] No update needed
[2026-10-25 05:17:52,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 05:17:52,322.322 INFO    ] 200
[2026-10-25 05:17:52,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:17:52,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:17:52,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:17:52,416.416 INFO    ] No camera update needed
[2026-10-25 05:17:52,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:17:52,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:17:52,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:17:52,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:17:54,471.471 INFO    ] ================================================
[2026-10-25 05:17:54,487.487 INFO    ] Launching Daemon at Sun Oct 25 05:17:54 IST 2026
[2026-10-25 05:17:54,497.497 INFO    ] ================================================
[2026-10-25 05:17:55,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:17:55
[2026-10-25 05:17:55,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:17:55,940.940 INFO    ] Initializing speech engine...
[2026-10-25 05:17:55,949.949 INFO    ] 2026-10-25 05:17:55
[2026-10-25 05:17:56,197.197 INFO    ] 2026-10-25 05:17:56
[2026-10-25 05:17:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:17:56,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:17:56,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:17:56,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:17:56,666.666 INFO    ] time= 25/10/2026 05:17:56
[2026-10-25 05:17:56,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:17:56,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:17:56,813.813 INFO    ] No existing commands found in stream
[2026-10-25 05:18:01,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:18:01,826.826 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 05:18:04,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:18:04,854.854 INFO    ] Checking for system updates...
[2026-10-25 05:18:04,892.892 INFO    ] 200
[2026-10-25 05:18:04,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:04,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:18:04,950.950 INFO    ] No update needed
[2026-10-25 05:18:04,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 05:18:04,988.988 INFO    ] 200
[2026-10-25 05:18:04,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:05,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:18:05,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:18:05,099.099 INFO    ] No camera update needed
[2026-10-25 05:18:05,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:18:05,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:18:05,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:18:05,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:18:07,153.153 INFO    ] ================================================
[2026-10-25 05:18:07,170.170 INFO    ] Launching Daemon at Sun Oct 25 05:18:07 IST 2026
[2026-10-25 05:18:07,181.181 INFO    ] ================================================
[2026-10-25 05:18:07,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:18:07
[2026-10-25 05:18:08,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:18:08,570.570 INFO    ] Initializing speech engine...
[2026-10-25 05:18:08,578.578 INFO    ] 2026-10-25 05:18:08
[2026-10-25 05:18:08,855.855 INFO    ] 2026-10-25 05:18:08
[2026-10-25 05:18:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:18:09,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:18:09,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:18:09,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:18:09,322.322 INFO    ] time= 25/10/2026 05:18:09
[2026-10-25 05:18:09,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:18:09,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:18:09,469.469 INFO    ] No existing commands found in stream
[2026-10-25 05:18:14,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:18:14,484.484 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 05:18:16,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:18:16,629.629 INFO    ] Checking for system updates...
[2026-10-25 05:18:16,665.665 INFO    ] 200
[2026-10-25 05:18:16,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:16,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:16,726.726 INFO    ] No update needed
[2026-10-25 05:18:16,728.728 INFO    ] Checking for camera pi updates...
[2026-10-25 05:18:16,764.764 INFO    ] 200
[2026-10-25 05:18:16,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:16,809.809 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:18:16,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:16,860.860 INFO    ] No camera update needed
[2026-10-25 05:18:16,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:18:16,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:18:16,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:18:16,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:18:18,916.916 INFO    ] ================================================
[2026-10-25 05:18:18,932.932 INFO    ] Launching Daemon at Sun Oct 25 05:18:18 IST 2026
[2026-10-25 05:18:18,943.943 INFO    ] ================================================
[2026-10-25 05:18:19,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:18:19
[2026-10-25 05:18:20,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:18:20,380.380 INFO    ] Initializing speech engine...
[2026-10-25 05:18:20,386.386 INFO    ] 2026-10-25 05:18:20
[2026-10-25 05:18:20,679.679 INFO    ] 2026-10-25 05:18:20
[2026-10-25 05:18:20,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:18:20,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:18:20,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:18:21,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:18:21,046.046 INFO    ] time= 25/10/2026 05:18:21
[2026-10-25 05:18:21,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:18:21,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:18:21,166.166 INFO    ] No existing commands found in stream
[2026-10-25 05:18:26,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:18:26,182.182 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 05:18:31,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:18:31,634.634 INFO    ] Checking for system updates...
[2026-10-25 05:18:31,673.673 INFO    ] 200
[2026-10-25 05:18:31,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:31,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:31,741.741 INFO    ] No update needed
[2026-10-25 05:18:31,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 05:18:31,779.779 INFO    ] 200
[2026-10-25 05:18:31,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:31,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:18:31,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:31,981.981 INFO    ] No camera update needed
[2026-10-25 05:18:31,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:18:31,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:18:31,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:18:31,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:18:34,039.039 INFO    ] ================================================
[2026-10-25 05:18:34,055.055 INFO    ] Launching Daemon at Sun Oct 25 05:18:34 IST 2026
[2026-10-25 05:18:34,066.066 INFO    ] ================================================
[2026-10-25 05:18:34,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:18:34
[2026-10-25 05:18:35,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:18:35,493.493 INFO    ] Initializing speech engine...
[2026-10-25 05:18:35,507.507 INFO    ] 2026-10-25 05:18:35
[2026-10-25 05:18:35,772.772 INFO    ] 2026-10-25 05:18:35
[2026-10-25 05:18:35,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:18:36,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:18:36,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:18:36,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:18:36,252.252 INFO    ] time= 25/10/2026 05:18:36
[2026-10-25 05:18:36,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:18:36,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:18:36,389.389 INFO    ] No existing commands found in stream
[2026-10-25 05:18:41,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:18:41,404.404 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 05:18:45,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:18:45,721.721 INFO    ] Checking for system updates...
[2026-10-25 05:18:45,757.757 INFO    ] 200
[2026-10-25 05:18:45,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:45,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:45,821.821 INFO    ] No update needed
[2026-10-25 05:18:45,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 05:18:45,861.861 INFO    ] 200
[2026-10-25 05:18:45,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:45,905.905 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:18:45,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:45,955.955 INFO    ] No camera update needed
[2026-10-25 05:18:45,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:18:45,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:18:45,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:18:45,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:18:48,013.013 INFO    ] ================================================
[2026-10-25 05:18:48,028.028 INFO    ] Launching Daemon at Sun Oct 25 05:18:48 IST 2026
[2026-10-25 05:18:48,040.040 INFO    ] ================================================
[2026-10-25 05:18:48,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:18:48
[2026-10-25 05:18:49,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:18:49,475.475 INFO    ] Initializing speech engine...
[2026-10-25 05:18:49,490.490 INFO    ] 2026-10-25 05:18:49
[2026-10-25 05:18:49,769.769 INFO    ] 2026-10-25 05:18:49
[2026-10-25 05:18:49,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:18:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:18:50,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:18:50,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:18:50,177.177 INFO    ] time= 25/10/2026 05:18:50
[2026-10-25 05:18:50,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:18:50,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:18:50,262.262 INFO    ] No existing commands found in stream
[2026-10-25 05:18:55,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:18:55,275.275 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 05:18:56,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:18:56,852.852 INFO    ] Checking for system updates...
[2026-10-25 05:18:56,892.892 INFO    ] 200
[2026-10-25 05:18:56,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:56,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:56,955.955 INFO    ] No update needed
[2026-10-25 05:18:56,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 05:18:56,994.994 INFO    ] 200
[2026-10-25 05:18:56,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:18:57,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:18:57,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:18:57,083.083 INFO    ] No camera update needed
[2026-10-25 05:18:57,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:18:57,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:18:57,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:18:57,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:18:59,138.138 INFO    ] ================================================
[2026-10-25 05:18:59,153.153 INFO    ] Launching Daemon at Sun Oct 25 05:18:59 IST 2026
[2026-10-25 05:18:59,164.164 INFO    ] ================================================
[2026-10-25 05:18:59,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:18:59
[2026-10-25 05:19:00,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:19:00,581.581 INFO    ] Initializing speech engine...
[2026-10-25 05:19:00,590.590 INFO    ] 2026-10-25 05:19:00
[2026-10-25 05:19:00,834.834 INFO    ] 2026-10-25 05:19:00
[2026-10-25 05:19:00,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:19:01,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:19:01,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:19:01,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:19:01,310.310 INFO    ] time= 25/10/2026 05:19:01
[2026-10-25 05:19:01,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:19:01,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:19:01,428.428 INFO    ] No existing commands found in stream
[2026-10-25 05:19:06,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:19:06,444.444 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 05:19:08,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:19:08,399.399 INFO    ] Checking for system updates...
[2026-10-25 05:19:08,439.439 INFO    ] 200
[2026-10-25 05:19:08,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:08,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:08,497.497 INFO    ] No update needed
[2026-10-25 05:19:08,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 05:19:08,537.537 INFO    ] 200
[2026-10-25 05:19:08,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:08,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:19:08,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:08,639.639 INFO    ] No camera update needed
[2026-10-25 05:19:08,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:19:08,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:19:08,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:19:08,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:19:10,695.695 INFO    ] ================================================
[2026-10-25 05:19:10,710.710 INFO    ] Launching Daemon at Sun Oct 25 05:19:10 IST 2026
[2026-10-25 05:19:10,721.721 INFO    ] ================================================
[2026-10-25 05:19:11,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:19:11
[2026-10-25 05:19:11,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:19:12,136.136 INFO    ] Initializing speech engine...
[2026-10-25 05:19:12,145.145 INFO    ] 2026-10-25 05:19:12
[2026-10-25 05:19:12,438.438 INFO    ] 2026-10-25 05:19:12
[2026-10-25 05:19:12,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:19:12,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:19:12,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:19:12,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:19:12,814.814 INFO    ] time= 25/10/2026 05:19:12
[2026-10-25 05:19:12,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:19:12,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:19:12,938.938 INFO    ] No existing commands found in stream
[2026-10-25 05:19:17,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:19:17,953.953 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 05:19:21,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:19:21,097.097 INFO    ] Checking for system updates...
[2026-10-25 05:19:21,137.137 INFO    ] 200
[2026-10-25 05:19:21,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:21,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:21,200.200 INFO    ] No update needed
[2026-10-25 05:19:21,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 05:19:21,240.240 INFO    ] 200
[2026-10-25 05:19:21,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:21,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:19:21,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:21,339.339 INFO    ] No camera update needed
[2026-10-25 05:19:21,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:19:21,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:19:21,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:19:21,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:19:23,396.396 INFO    ] ================================================
[2026-10-25 05:19:23,412.412 INFO    ] Launching Daemon at Sun Oct 25 05:19:23 IST 2026
[2026-10-25 05:19:23,428.428 INFO    ] ================================================
[2026-10-25 05:19:23,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:19:23
[2026-10-25 05:19:24,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:19:24,836.836 INFO    ] Initializing speech engine...
[2026-10-25 05:19:24,842.842 INFO    ] 2026-10-25 05:19:24
[2026-10-25 05:19:25,133.133 INFO    ] 2026-10-25 05:19:25
[2026-10-25 05:19:25,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:19:25,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:19:25,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:19:25,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:19:25,521.521 INFO    ] time= 25/10/2026 05:19:25
[2026-10-25 05:19:25,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:19:25,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:19:25,634.634 INFO    ] No existing commands found in stream
[2026-10-25 05:19:30,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:19:30,649.649 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 05:19:32,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:19:32,422.422 INFO    ] Checking for system updates...
[2026-10-25 05:19:32,468.468 INFO    ] 200
[2026-10-25 05:19:32,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:32,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:32,535.535 INFO    ] No update needed
[2026-10-25 05:19:32,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 05:19:32,571.571 INFO    ] 200
[2026-10-25 05:19:32,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:32,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:19:32,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:32,671.671 INFO    ] No camera update needed
[2026-10-25 05:19:32,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:19:32,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:19:32,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:19:32,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:19:34,726.726 INFO    ] ================================================
[2026-10-25 05:19:34,742.742 INFO    ] Launching Daemon at Sun Oct 25 05:19:34 IST 2026
[2026-10-25 05:19:34,753.753 INFO    ] ================================================
[2026-10-25 05:19:35,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:19:35
[2026-10-25 05:19:35,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:19:36,201.201 INFO    ] Initializing speech engine...
[2026-10-25 05:19:36,208.208 INFO    ] 2026-10-25 05:19:36
[2026-10-25 05:19:36,477.477 INFO    ] 2026-10-25 05:19:36
[2026-10-25 05:19:36,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:19:36,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:19:36,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:19:36,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:19:36,949.949 INFO    ] time= 25/10/2026 05:19:36
[2026-10-25 05:19:36,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:19:37,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:19:37,087.087 INFO    ] No existing commands found in stream
[2026-10-25 05:19:42,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:19:42,103.103 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 05:19:44,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:19:44,795.795 INFO    ] Checking for system updates...
[2026-10-25 05:19:44,832.832 INFO    ] 200
[2026-10-25 05:19:44,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:44,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:19:44,897.897 INFO    ] No update needed
[2026-10-25 05:19:44,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 05:19:44,935.935 INFO    ] 200
[2026-10-25 05:19:44,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:44,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:19:45,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:19:45,036.036 INFO    ] No camera update needed
[2026-10-25 05:19:45,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:19:45,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:19:45,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:19:45,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:19:47,092.092 INFO    ] ================================================
[2026-10-25 05:19:47,107.107 INFO    ] Launching Daemon at Sun Oct 25 05:19:47 IST 2026
[2026-10-25 05:19:47,117.117 INFO    ] ================================================
[2026-10-25 05:19:47,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:19:47
[2026-10-25 05:19:48,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:19:48,505.505 INFO    ] Initializing speech engine...
[2026-10-25 05:19:48,515.515 INFO    ] 2026-10-25 05:19:48
[2026-10-25 05:19:48,809.809 INFO    ] 2026-10-25 05:19:48
[2026-10-25 05:19:48,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:19:49,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:19:49,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:19:49,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:19:49,224.224 INFO    ] time= 25/10/2026 05:19:49
[2026-10-25 05:19:49,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:19:49,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:19:49,387.387 INFO    ] No existing commands found in stream
[2026-10-25 05:19:54,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:19:54,415.415 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 05:19:59,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:19:59,708.708 INFO    ] Checking for system updates...
[2026-10-25 05:19:59,747.747 INFO    ] 200
[2026-10-25 05:19:59,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:59,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:59,811.811 INFO    ] No update needed
[2026-10-25 05:19:59,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 05:19:59,850.850 INFO    ] 200
[2026-10-25 05:19:59,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:19:59,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:19:59,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:19:59,949.949 INFO    ] No camera update needed
[2026-10-25 05:19:59,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:19:59,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:19:59,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:19:59,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:02,036.036 INFO    ] ================================================
[2026-10-25 05:20:02,071.071 INFO    ] Launching Daemon at Sun Oct 25 05:20:02 IST 2026
[2026-10-25 05:20:02,092.092 INFO    ] ================================================
[2026-10-25 05:20:02,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:20:02
[2026-10-25 05:20:03,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:20:03,815.815 INFO    ] Initializing speech engine...
[2026-10-25 05:20:03,823.823 INFO    ] 2026-10-25 05:20:03
[2026-10-25 05:20:04,098.098 INFO    ] 2026-10-25 05:20:04
[2026-10-25 05:20:04,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:20:04,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:20:04,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:20:04,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:20:04,553.553 INFO    ] time= 25/10/2026 05:20:04
[2026-10-25 05:20:04,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:20:04,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:20:04,720.720 INFO    ] No existing commands found in stream
[2026-10-25 05:20:09,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:20:09,734.734 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 05:20:10,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:20:10,662.662 INFO    ] Checking for system updates...
[2026-10-25 05:20:10,698.698 INFO    ] 200
[2026-10-25 05:20:10,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:10,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:10,755.755 INFO    ] No update needed
[2026-10-25 05:20:10,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 05:20:10,795.795 INFO    ] 200
[2026-10-25 05:20:10,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:10,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:20:10,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:10,899.899 INFO    ] No camera update needed
[2026-10-25 05:20:10,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:20:10,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:20:10,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:20:10,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:12,955.955 INFO    ] ================================================
[2026-10-25 05:20:12,970.970 INFO    ] Launching Daemon at Sun Oct 25 05:20:12 IST 2026
[2026-10-25 05:20:12,980.980 INFO    ] ================================================
[2026-10-25 05:20:13,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:20:13
[2026-10-25 05:20:14,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:20:14,509.509 INFO    ] Initializing speech engine...
[2026-10-25 05:20:14,516.516 INFO    ] 2026-10-25 05:20:14
[2026-10-25 05:20:14,798.798 INFO    ] 2026-10-25 05:20:14
[2026-10-25 05:20:14,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:20:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:20:15,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:20:15,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:20:15,282.282 INFO    ] time= 25/10/2026 05:20:15
[2026-10-25 05:20:15,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:20:15,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:20:15,462.462 INFO    ] No existing commands found in stream
[2026-10-25 05:20:20,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:20:20,496.496 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 05:20:20,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:20:20,955.955 INFO    ] Checking for system updates...
[2026-10-25 05:20:20,992.992 INFO    ] 200
[2026-10-25 05:20:20,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:21,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:20:21,057.057 INFO    ] No update needed
[2026-10-25 05:20:21,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 05:20:21,098.098 INFO    ] 200
[2026-10-25 05:20:21,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:21,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:20:21,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:20:21,200.200 INFO    ] No camera update needed
[2026-10-25 05:20:21,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:20:21,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:20:21,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:20:21,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:23,258.258 INFO    ] ================================================
[2026-10-25 05:20:23,275.275 INFO    ] Launching Daemon at Sun Oct 25 05:20:23 IST 2026
[2026-10-25 05:20:23,286.286 INFO    ] ================================================
[2026-10-25 05:20:23,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:20:23
[2026-10-25 05:20:24,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:20:24,697.697 INFO    ] Initializing speech engine...
[2026-10-25 05:20:24,710.710 INFO    ] 2026-10-25 05:20:24
[2026-10-25 05:20:24,992.992 INFO    ] 2026-10-25 05:20:24
[2026-10-25 05:20:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:20:25,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:20:25,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:20:25,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:20:25,406.406 INFO    ] time= 25/10/2026 05:20:25
[2026-10-25 05:20:25,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:20:25,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:20:25,490.490 INFO    ] No existing commands found in stream
[2026-10-25 05:20:30,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:20:30,505.505 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 05:20:33,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:20:33,253.253 INFO    ] Checking for system updates...
[2026-10-25 05:20:33,301.301 INFO    ] 200
[2026-10-25 05:20:33,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:33,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:20:33,372.372 INFO    ] No update needed
[2026-10-25 05:20:33,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 05:20:33,414.414 INFO    ] 200
[2026-10-25 05:20:33,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:33,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:20:33,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:20:33,511.511 INFO    ] No camera update needed
[2026-10-25 05:20:33,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:20:33,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:20:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:20:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:35,572.572 INFO    ] ================================================
[2026-10-25 05:20:35,588.588 INFO    ] Launching Daemon at Sun Oct 25 05:20:35 IST 2026
[2026-10-25 05:20:35,600.600 INFO    ] ================================================
[2026-10-25 05:20:36,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:20:36
[2026-10-25 05:20:36,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:20:37,142.142 INFO    ] Initializing speech engine...
[2026-10-25 05:20:37,153.153 INFO    ] 2026-10-25 05:20:37
[2026-10-25 05:20:37,434.434 INFO    ] 2026-10-25 05:20:37
[2026-10-25 05:20:37,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:20:37,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:20:37,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:20:37,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:20:37,902.902 INFO    ] time= 25/10/2026 05:20:37
[2026-10-25 05:20:37,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:20:37,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:20:38,060.060 INFO    ] No existing commands found in stream
[2026-10-25 05:20:43,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:20:43,074.074 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 05:20:44,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:20:44,799.799 INFO    ] Checking for system updates...
[2026-10-25 05:20:44,834.834 INFO    ] 200
[2026-10-25 05:20:44,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:44,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:44,891.891 INFO    ] No update needed
[2026-10-25 05:20:44,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 05:20:44,932.932 INFO    ] 200
[2026-10-25 05:20:44,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:44,981.981 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:20:45,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:45,153.153 INFO    ] No camera update needed
[2026-10-25 05:20:45,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:20:45,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:20:45,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:20:45,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:47,211.211 INFO    ] ================================================
[2026-10-25 05:20:47,228.228 INFO    ] Launching Daemon at Sun Oct 25 05:20:47 IST 2026
[2026-10-25 05:20:47,239.239 INFO    ] ================================================
[2026-10-25 05:20:47,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:20:47
[2026-10-25 05:20:48,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:20:48,925.925 INFO    ] Initializing speech engine...
[2026-10-25 05:20:48,936.936 INFO    ] 2026-10-25 05:20:48
[2026-10-25 05:20:49,249.249 INFO    ] 2026-10-25 05:20:49
[2026-10-25 05:20:49,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:20:49,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:20:49,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:20:49,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:20:49,761.761 INFO    ] time= 25/10/2026 05:20:49
[2026-10-25 05:20:49,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:20:49,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:20:49,917.917 INFO    ] No existing commands found in stream
[2026-10-25 05:20:54,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:20:54,960.960 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 05:20:57,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:20:57,668.668 INFO    ] Checking for system updates...
[2026-10-25 05:20:57,704.704 INFO    ] 200
[2026-10-25 05:20:57,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:57,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:57,763.763 INFO    ] No update needed
[2026-10-25 05:20:57,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 05:20:57,799.799 INFO    ] 200
[2026-10-25 05:20:57,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:20:57,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:20:57,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:20:57,910.910 INFO    ] No camera update needed
[2026-10-25 05:20:57,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:20:57,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:20:57,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:20:57,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:20:59,968.968 INFO    ] ================================================
[2026-10-25 05:20:59,983.983 INFO    ] Launching Daemon at Sun Oct 25 05:20:59 IST 2026
[2026-10-25 05:21:00,995.995 INFO    ] ================================================
[2026-10-25 05:21:00,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:21:00
[2026-10-25 05:21:01,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:21:01,436.436 INFO    ] Initializing speech engine...
[2026-10-25 05:21:01,448.448 INFO    ] 2026-10-25 05:21:01
[2026-10-25 05:21:01,714.714 INFO    ] 2026-10-25 05:21:01
[2026-10-25 05:21:01,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:21:02,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:21:02,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:21:02,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:21:02,229.229 INFO    ] time= 25/10/2026 05:21:02
[2026-10-25 05:21:02,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:21:02,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:21:02,320.320 INFO    ] No existing commands found in stream
[2026-10-25 05:21:07,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:21:07,333.333 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 05:21:09,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:21:09,131.131 INFO    ] Checking for system updates...
[2026-10-25 05:21:09,168.168 INFO    ] 200
[2026-10-25 05:21:09,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:09,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:09,236.236 INFO    ] No update needed
[2026-10-25 05:21:09,239.239 INFO    ] Checking for camera pi updates...
[2026-10-25 05:21:09,279.279 INFO    ] 200
[2026-10-25 05:21:09,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:09,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:21:09,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:09,371.371 INFO    ] No camera update needed
[2026-10-25 05:21:09,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:21:09,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:21:09,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:21:09,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:21:11,427.427 INFO    ] ================================================
[2026-10-25 05:21:11,442.442 INFO    ] Launching Daemon at Sun Oct 25 05:21:11 IST 2026
[2026-10-25 05:21:11,453.453 INFO    ] ================================================
[2026-10-25 05:21:12,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:21:12
[2026-10-25 05:21:12,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:21:13,081.081 INFO    ] Initializing speech engine...
[2026-10-25 05:21:13,091.091 INFO    ] 2026-10-25 05:21:13
[2026-10-25 05:21:13,364.364 INFO    ] 2026-10-25 05:21:13
[2026-10-25 05:21:13,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:21:13,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:21:13,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:21:13,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:21:13,913.913 INFO    ] time= 25/10/2026 05:21:13
[2026-10-25 05:21:13,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:21:13,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:21:14,062.062 INFO    ] No existing commands found in stream
[2026-10-25 05:21:19,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:21:19,082.082 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 05:21:21,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:21:21,328.328 INFO    ] Checking for system updates...
[2026-10-25 05:21:21,369.369 INFO    ] 200
[2026-10-25 05:21:21,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:21,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:21,431.431 INFO    ] No update needed
[2026-10-25 05:21:21,434.434 INFO    ] Checking for camera pi updates...
[2026-10-25 05:21:21,468.468 INFO    ] 200
[2026-10-25 05:21:21,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:21,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:21:21,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:21,566.566 INFO    ] No camera update needed
[2026-10-25 05:21:21,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:21:21,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:21:21,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:21:21,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:21:23,625.625 INFO    ] ================================================
[2026-10-25 05:21:23,641.641 INFO    ] Launching Daemon at Sun Oct 25 05:21:23 IST 2026
[2026-10-25 05:21:23,652.652 INFO    ] ================================================
[2026-10-25 05:21:24,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:21:24
[2026-10-25 05:21:24,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:21:25,093.093 INFO    ] Initializing speech engine...
[2026-10-25 05:21:25,116.116 INFO    ] 2026-10-25 05:21:25
[2026-10-25 05:21:25,371.371 INFO    ] 2026-10-25 05:21:25
[2026-10-25 05:21:25,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:21:25,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:21:25,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:21:25,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:21:25,874.874 INFO    ] time= 25/10/2026 05:21:25
[2026-10-25 05:21:25,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:21:25,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:21:26,053.053 INFO    ] No existing commands found in stream
[2026-10-25 05:21:31,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:21:31,083.083 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:21:31,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:21:31,528.528 INFO    ] Checking for system updates...
[2026-10-25 05:21:31,568.568 INFO    ] 200
[2026-10-25 05:21:31,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:31,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:31,633.633 INFO    ] No update needed
[2026-10-25 05:21:31,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 05:21:31,674.674 INFO    ] 200
[2026-10-25 05:21:31,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:31,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:21:31,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:31,797.797 INFO    ] No camera update needed
[2026-10-25 05:21:31,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:21:31,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:21:31,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:21:31,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:21:33,859.859 INFO    ] ================================================
[2026-10-25 05:21:33,875.875 INFO    ] Launching Daemon at Sun Oct 25 05:21:33 IST 2026
[2026-10-25 05:21:33,886.886 INFO    ] ================================================
[2026-10-25 05:21:34,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:21:34
[2026-10-25 05:21:35,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:21:35,506.506 INFO    ] Initializing speech engine...
[2026-10-25 05:21:35,518.518 INFO    ] 2026-10-25 05:21:35
[2026-10-25 05:21:35,808.808 INFO    ] 2026-10-25 05:21:35
[2026-10-25 05:21:35,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:21:36,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:21:36,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:21:36,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:21:36,348.348 INFO    ] time= 25/10/2026 05:21:36
[2026-10-25 05:21:36,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:21:36,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:21:36,478.478 INFO    ] No existing commands found in stream
[2026-10-25 05:21:41,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:21:41,513.513 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 05:21:44,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:21:44,555.555 INFO    ] Checking for system updates...
[2026-10-25 05:21:44,596.596 INFO    ] 200
[2026-10-25 05:21:44,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:44,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:44,663.663 INFO    ] No update needed
[2026-10-25 05:21:44,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 05:21:44,702.702 INFO    ] 200
[2026-10-25 05:21:44,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:44,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:21:44,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:44,806.806 INFO    ] No camera update needed
[2026-10-25 05:21:44,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:21:44,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:21:44,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:21:44,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:21:46,864.864 INFO    ] ================================================
[2026-10-25 05:21:46,879.879 INFO    ] Launching Daemon at Sun Oct 25 05:21:46 IST 2026
[2026-10-25 05:21:46,890.890 INFO    ] ================================================
[2026-10-25 05:21:47,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:21:47
[2026-10-25 05:21:48,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:21:48,529.529 INFO    ] Initializing speech engine...
[2026-10-25 05:21:48,542.542 INFO    ] 2026-10-25 05:21:48
[2026-10-25 05:21:48,825.825 INFO    ] 2026-10-25 05:21:48
[2026-10-25 05:21:48,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:21:49,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:21:49,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:21:49,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:21:49,293.293 INFO    ] time= 25/10/2026 05:21:49
[2026-10-25 05:21:49,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:21:49,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:21:49,439.439 INFO    ] No existing commands found in stream
[2026-10-25 05:21:54,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:21:54,454.454 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 05:21:57,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:21:57,891.891 INFO    ] Checking for system updates...
[2026-10-25 05:21:57,929.929 INFO    ] 200
[2026-10-25 05:21:57,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:57,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:57,989.989 INFO    ] No update needed
[2026-10-25 05:21:57,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 05:21:58,027.027 INFO    ] 200
[2026-10-25 05:21:58,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:21:58,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:21:58,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:21:58,122.122 INFO    ] No camera update needed
[2026-10-25 05:21:58,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:21:58,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:21:58,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:21:58,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:22:00,182.182 INFO    ] ================================================
[2026-10-25 05:22:00,198.198 INFO    ] Launching Daemon at Sun Oct 25 05:22:00 IST 2026
[2026-10-25 05:22:00,209.209 INFO    ] ================================================
[2026-10-25 05:22:00,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:22:00
[2026-10-25 05:22:01,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:22:01,645.645 INFO    ] Initializing speech engine...
[2026-10-25 05:22:01,654.654 INFO    ] 2026-10-25 05:22:01
[2026-10-25 05:22:01,952.952 INFO    ] 2026-10-25 05:22:01
[2026-10-25 05:22:02,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:22:02,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:22:02,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:22:02,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:22:02,347.347 INFO    ] time= 25/10/2026 05:22:02
[2026-10-25 05:22:02,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:22:02,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:22:02,461.461 INFO    ] No existing commands found in stream
[2026-10-25 05:22:07,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:22:07,477.477 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 05:22:08,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:22:08,362.362 INFO    ] Checking for system updates...
[2026-10-25 05:22:08,400.400 INFO    ] 200
[2026-10-25 05:22:08,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:08,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:08,458.458 INFO    ] No update needed
[2026-10-25 05:22:08,460.460 INFO    ] Checking for camera pi updates...
[2026-10-25 05:22:08,494.494 INFO    ] 200
[2026-10-25 05:22:08,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:08,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:22:08,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:08,589.589 INFO    ] No camera update needed
[2026-10-25 05:22:08,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:22:08,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:22:08,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:22:08,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:22:10,644.644 INFO    ] ================================================
[2026-10-25 05:22:10,660.660 INFO    ] Launching Daemon at Sun Oct 25 05:22:10 IST 2026
[2026-10-25 05:22:10,671.671 INFO    ] ================================================
[2026-10-25 05:22:11,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:22:11
[2026-10-25 05:22:11,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:22:12,195.195 INFO    ] Initializing speech engine...
[2026-10-25 05:22:12,205.205 INFO    ] 2026-10-25 05:22:12
[2026-10-25 05:22:12,467.467 INFO    ] 2026-10-25 05:22:12
[2026-10-25 05:22:12,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:22:12,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:22:12,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:22:12,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:22:12,925.925 INFO    ] time= 25/10/2026 05:22:12
[2026-10-25 05:22:12,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:22:13,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:22:13,075.075 INFO    ] No existing commands found in stream
[2026-10-25 05:22:18,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:22:18,090.090 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 05:22:21,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:22:21,209.209 INFO    ] Checking for system updates...
[2026-10-25 05:22:21,245.245 INFO    ] 200
[2026-10-25 05:22:21,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:21,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:22:21,303.303 INFO    ] No update needed
[2026-10-25 05:22:21,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 05:22:21,339.339 INFO    ] 200
[2026-10-25 05:22:21,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:21,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:22:21,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:22:21,435.435 INFO    ] No camera update needed
[2026-10-25 05:22:21,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:22:21,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:22:21,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:22:21,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:22:23,491.491 INFO    ] ================================================
[2026-10-25 05:22:23,507.507 INFO    ] Launching Daemon at Sun Oct 25 05:22:23 IST 2026
[2026-10-25 05:22:23,517.517 INFO    ] ================================================
[2026-10-25 05:22:24,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:22:24
[2026-10-25 05:22:24,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:22:24,983.983 INFO    ] Initializing speech engine...
[2026-10-25 05:22:24,992.992 INFO    ] 2026-10-25 05:22:24
[2026-10-25 05:22:25,253.253 INFO    ] 2026-10-25 05:22:25
[2026-10-25 05:22:25,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:22:25,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:22:25,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:22:25,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:22:25,714.714 INFO    ] time= 25/10/2026 05:22:25
[2026-10-25 05:22:25,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:22:25,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:22:25,865.865 INFO    ] No existing commands found in stream
[2026-10-25 05:22:30,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:22:30,879.879 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 05:22:33,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:22:33,345.345 INFO    ] Checking for system updates...
[2026-10-25 05:22:33,381.381 INFO    ] 200
[2026-10-25 05:22:33,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:33,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:33,458.458 INFO    ] No update needed
[2026-10-25 05:22:33,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 05:22:33,498.498 INFO    ] 200
[2026-10-25 05:22:33,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:33,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:22:33,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:33,591.591 INFO    ] No camera update needed
[2026-10-25 05:22:33,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:22:33,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:22:33,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:22:33,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:22:35,646.646 INFO    ] ================================================
[2026-10-25 05:22:35,662.662 INFO    ] Launching Daemon at Sun Oct 25 05:22:35 IST 2026
[2026-10-25 05:22:35,673.673 INFO    ] ================================================
[2026-10-25 05:22:36,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:22:36
[2026-10-25 05:22:36,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:22:37,241.241 INFO    ] Initializing speech engine...
[2026-10-25 05:22:37,248.248 INFO    ] 2026-10-25 05:22:37
[2026-10-25 05:22:37,508.508 INFO    ] 2026-10-25 05:22:37
[2026-10-25 05:22:37,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:22:37,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:22:37,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:22:37,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:22:37,972.972 INFO    ] time= 25/10/2026 05:22:37
[2026-10-25 05:22:38,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:22:38,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:22:38,112.112 INFO    ] No existing commands found in stream
[2026-10-25 05:22:43,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:22:43,127.127 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 05:22:47,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:22:47,480.480 INFO    ] Checking for system updates...
[2026-10-25 05:22:47,517.517 INFO    ] 200
[2026-10-25 05:22:47,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:47,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:47,577.577 INFO    ] No update needed
[2026-10-25 05:22:47,579.579 INFO    ] Checking for camera pi updates...
[2026-10-25 05:22:47,619.619 INFO    ] 200
[2026-10-25 05:22:47,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:47,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:22:47,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:47,829.829 INFO    ] No camera update needed
[2026-10-25 05:22:47,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:22:47,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:22:47,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:22:47,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:22:49,890.890 INFO    ] ================================================
[2026-10-25 05:22:49,906.906 INFO    ] Launching Daemon at Sun Oct 25 05:22:49 IST 2026
[2026-10-25 05:22:49,917.917 INFO    ] ================================================
[2026-10-25 05:22:50,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:22:50
[2026-10-25 05:22:51,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:22:51,328.328 INFO    ] Initializing speech engine...
[2026-10-25 05:22:51,337.337 INFO    ] 2026-10-25 05:22:51
[2026-10-25 05:22:51,588.588 INFO    ] 2026-10-25 05:22:51
[2026-10-25 05:22:51,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:22:51,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:22:51,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:22:52,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:22:52,044.044 INFO    ] time= 25/10/2026 05:22:52
[2026-10-25 05:22:52,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:22:52,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:22:52,198.198 INFO    ] No existing commands found in stream
[2026-10-25 05:22:57,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:22:57,213.213 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 05:22:59,616.616 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:22:59,619.619 INFO    ] Checking for system updates...
[2026-10-25 05:22:59,655.655 INFO    ] 200
[2026-10-25 05:22:59,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:59,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:59,713.713 INFO    ] No update needed
[2026-10-25 05:22:59,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 05:22:59,749.749 INFO    ] 200
[2026-10-25 05:22:59,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:22:59,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:22:59,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:22:59,845.845 INFO    ] No camera update needed
[2026-10-25 05:22:59,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:22:59,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:22:59,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:22:59,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:23:01,926.926 INFO    ] ================================================
[2026-10-25 05:23:01,971.971 INFO    ] Launching Daemon at Sun Oct 25 05:23:01 IST 2026
[2026-10-25 05:23:02,995.995 INFO    ] ================================================
[2026-10-25 05:23:02,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:23:02
[2026-10-25 05:23:03,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:23:03,797.797 INFO    ] Initializing speech engine...
[2026-10-25 05:23:03,813.813 INFO    ] 2026-10-25 05:23:03
[2026-10-25 05:23:04,119.119 INFO    ] 2026-10-25 05:23:04
[2026-10-25 05:23:04,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:23:04,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:23:04,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:23:04,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:23:04,545.545 INFO    ] time= 25/10/2026 05:23:04
[2026-10-25 05:23:04,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:23:04,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:23:04,632.632 INFO    ] No existing commands found in stream
[2026-10-25 05:23:09,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:23:09,650.650 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 05:23:13,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:23:13,856.856 INFO    ] Checking for system updates...
[2026-10-25 05:23:13,893.893 INFO    ] 200
[2026-10-25 05:23:13,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:13,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:13,961.961 INFO    ] No update needed
[2026-10-25 05:23:13,964.964 INFO    ] Checking for camera pi updates...
[2026-10-25 05:23:13,997.997 INFO    ] 200
[2026-10-25 05:23:14,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:14,040.040 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:23:14,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:14,093.093 INFO    ] No camera update needed
[2026-10-25 05:23:14,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:23:14,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:23:14,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:23:14,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:23:16,148.148 INFO    ] ================================================
[2026-10-25 05:23:16,164.164 INFO    ] Launching Daemon at Sun Oct 25 05:23:16 IST 2026
[2026-10-25 05:23:16,174.174 INFO    ] ================================================
[2026-10-25 05:23:16,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:23:16
[2026-10-25 05:23:17,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:23:17,595.595 INFO    ] Initializing speech engine...
[2026-10-25 05:23:17,604.604 INFO    ] 2026-10-25 05:23:17
[2026-10-25 05:23:17,859.859 INFO    ] 2026-10-25 05:23:17
[2026-10-25 05:23:17,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:23:18,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:23:18,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:23:18,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:23:18,217.217 INFO    ] time= 25/10/2026 05:23:18
[2026-10-25 05:23:18,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:23:18,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:23:18,298.298 INFO    ] No existing commands found in stream
[2026-10-25 05:23:23,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:23:23,316.316 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 05:23:23,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:23:23,919.919 INFO    ] Checking for system updates...
[2026-10-25 05:23:23,956.956 INFO    ] 200
[2026-10-25 05:23:23,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:24,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:24,014.014 INFO    ] No update needed
[2026-10-25 05:23:24,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 05:23:24,050.050 INFO    ] 200
[2026-10-25 05:23:24,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:24,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:23:24,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:24,141.141 INFO    ] No camera update needed
[2026-10-25 05:23:24,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:23:24,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:23:24,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:23:24,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:23:26,199.199 INFO    ] ================================================
[2026-10-25 05:23:26,214.214 INFO    ] Launching Daemon at Sun Oct 25 05:23:26 IST 2026
[2026-10-25 05:23:26,225.225 INFO    ] ================================================
[2026-10-25 05:23:26,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:23:26
[2026-10-25 05:23:27,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:23:27,623.623 INFO    ] Initializing speech engine...
[2026-10-25 05:23:27,636.636 INFO    ] 2026-10-25 05:23:27
[2026-10-25 05:23:27,899.899 INFO    ] 2026-10-25 05:23:27
[2026-10-25 05:23:27,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:23:29,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:23:29,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:23:29,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:23:29,418.418 INFO    ] time= 25/10/2026 05:23:29
[2026-10-25 05:23:29,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:23:29,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:23:29,546.546 INFO    ] No existing commands found in stream
[2026-10-25 05:23:34,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:23:34,569.569 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 05:23:37,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:23:37,413.413 INFO    ] Checking for system updates...
[2026-10-25 05:23:37,449.449 INFO    ] 200
[2026-10-25 05:23:37,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:37,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:23:37,507.507 INFO    ] No update needed
[2026-10-25 05:23:37,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 05:23:37,543.543 INFO    ] 200
[2026-10-25 05:23:37,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:37,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:23:37,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:23:37,749.749 INFO    ] No camera update needed
[2026-10-25 05:23:37,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:23:37,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:23:37,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:23:37,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:23:39,807.807 INFO    ] ================================================
[2026-10-25 05:23:39,822.822 INFO    ] Launching Daemon at Sun Oct 25 05:23:39 IST 2026
[2026-10-25 05:23:39,833.833 INFO    ] ================================================
[2026-10-25 05:23:40,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:23:40
[2026-10-25 05:23:40,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:23:41,228.228 INFO    ] Initializing speech engine...
[2026-10-25 05:23:41,236.236 INFO    ] 2026-10-25 05:23:41
[2026-10-25 05:23:41,509.509 INFO    ] 2026-10-25 05:23:41
[2026-10-25 05:23:41,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:23:41,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:23:41,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:23:41,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:23:41,992.992 INFO    ] time= 25/10/2026 05:23:41
[2026-10-25 05:23:42,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:23:42,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:23:42,133.133 INFO    ] No existing commands found in stream
[2026-10-25 05:23:47,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:23:47,147.147 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 05:23:51,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:23:51,313.313 INFO    ] Checking for system updates...
[2026-10-25 05:23:51,354.354 INFO    ] 200
[2026-10-25 05:23:51,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:51,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:51,411.411 INFO    ] No update needed
[2026-10-25 05:23:51,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 05:23:51,451.451 INFO    ] 200
[2026-10-25 05:23:51,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:23:51,493.493 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:23:51,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:23:51,546.546 INFO    ] No camera update needed
[2026-10-25 05:23:51,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:23:51,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:23:51,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:23:51,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:23:53,603.603 INFO    ] ================================================
[2026-10-25 05:23:53,619.619 INFO    ] Launching Daemon at Sun Oct 25 05:23:53 IST 2026
[2026-10-25 05:23:53,632.632 INFO    ] ================================================
[2026-10-25 05:23:54,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:23:54
[2026-10-25 05:23:54,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:23:55,048.048 INFO    ] Initializing speech engine...
[2026-10-25 05:23:55,056.056 INFO    ] 2026-10-25 05:23:55
[2026-10-25 05:23:55,306.306 INFO    ] 2026-10-25 05:23:55
[2026-10-25 05:23:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:23:55,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:23:55,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:23:55,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:23:55,675.675 INFO    ] time= 25/10/2026 05:23:55
[2026-10-25 05:23:55,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:23:55,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:23:55,841.841 INFO    ] No existing commands found in stream
[2026-10-25 05:24:00,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:24:00,868.868 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 05:24:04,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:24:04,141.141 INFO    ] Checking for system updates...
[2026-10-25 05:24:04,177.177 INFO    ] 200
[2026-10-25 05:24:04,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:04,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:04,236.236 INFO    ] No update needed
[2026-10-25 05:24:04,238.238 INFO    ] Checking for camera pi updates...
[2026-10-25 05:24:04,275.275 INFO    ] 200
[2026-10-25 05:24:04,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:04,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:24:04,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:04,378.378 INFO    ] No camera update needed
[2026-10-25 05:24:04,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:24:04,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:24:04,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:24:04,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:24:06,434.434 INFO    ] ================================================
[2026-10-25 05:24:06,449.449 INFO    ] Launching Daemon at Sun Oct 25 05:24:06 IST 2026
[2026-10-25 05:24:06,459.459 INFO    ] ================================================
[2026-10-25 05:24:07,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:24:07
[2026-10-25 05:24:07,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:24:08,065.065 INFO    ] Initializing speech engine...
[2026-10-25 05:24:08,073.073 INFO    ] 2026-10-25 05:24:08
[2026-10-25 05:24:08,346.346 INFO    ] 2026-10-25 05:24:08
[2026-10-25 05:24:08,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:24:08,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:24:08,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:24:08,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:24:08,895.895 INFO    ] time= 25/10/2026 05:24:08
[2026-10-25 05:24:08,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:24:08,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:24:09,036.036 INFO    ] No existing commands found in stream
[2026-10-25 05:24:14,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:24:14,062.062 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 05:24:18,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:24:18,063.063 INFO    ] Checking for system updates...
[2026-10-25 05:24:18,104.104 INFO    ] 200
[2026-10-25 05:24:18,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:18,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:24:18,171.171 INFO    ] No update needed
[2026-10-25 05:24:18,174.174 INFO    ] Checking for camera pi updates...
[2026-10-25 05:24:18,213.213 INFO    ] 200
[2026-10-25 05:24:18,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:18,268.268 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:24:18,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:24:18,334.334 INFO    ] No camera update needed
[2026-10-25 05:24:18,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:24:18,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:24:18,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:24:18,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:24:20,419.419 INFO    ] ================================================
[2026-10-25 05:24:20,434.434 INFO    ] Launching Daemon at Sun Oct 25 05:24:20 IST 2026
[2026-10-25 05:24:20,445.445 INFO    ] ================================================
[2026-10-25 05:24:21,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:24:21
[2026-10-25 05:24:21,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:24:21,857.857 INFO    ] Initializing speech engine...
[2026-10-25 05:24:21,877.877 INFO    ] 2026-10-25 05:24:21
[2026-10-25 05:24:22,134.134 INFO    ] 2026-10-25 05:24:22
[2026-10-25 05:24:22,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:24:22,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:24:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:24:22,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:24:22,605.605 INFO    ] time= 25/10/2026 05:24:22
[2026-10-25 05:24:22,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:24:22,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:24:22,751.751 INFO    ] No existing commands found in stream
[2026-10-25 05:24:27,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:24:27,766.766 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 05:24:28,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:24:28,228.228 INFO    ] Checking for system updates...
[2026-10-25 05:24:28,265.265 INFO    ] 200
[2026-10-25 05:24:28,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:28,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:24:28,329.329 INFO    ] No update needed
[2026-10-25 05:24:28,332.332 INFO    ] Checking for camera pi updates...
[2026-10-25 05:24:28,366.366 INFO    ] 200
[2026-10-25 05:24:28,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:28,408.408 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:24:28,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:24:28,475.475 INFO    ] No camera update needed
[2026-10-25 05:24:28,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:24:28,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:24:28,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:24:28,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:24:30,531.531 INFO    ] ================================================
[2026-10-25 05:24:30,546.546 INFO    ] Launching Daemon at Sun Oct 25 05:24:30 IST 2026
[2026-10-25 05:24:30,556.556 INFO    ] ================================================
[2026-10-25 05:24:31,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:24:31
[2026-10-25 05:24:31,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:24:32,225.225 INFO    ] Initializing speech engine...
[2026-10-25 05:24:32,235.235 INFO    ] 2026-10-25 05:24:32
[2026-10-25 05:24:32,534.534 INFO    ] 2026-10-25 05:24:32
[2026-10-25 05:24:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:24:32,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:24:32,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:24:33,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:24:33,089.089 INFO    ] time= 25/10/2026 05:24:33
[2026-10-25 05:24:33,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:24:33,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:24:33,225.225 INFO    ] No existing commands found in stream
[2026-10-25 05:24:38,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:24:38,248.248 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 05:24:41,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:24:41,368.368 INFO    ] Checking for system updates...
[2026-10-25 05:24:41,410.410 INFO    ] 200
[2026-10-25 05:24:41,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:41,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:41,470.470 INFO    ] No update needed
[2026-10-25 05:24:41,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 05:24:41,508.508 INFO    ] 200
[2026-10-25 05:24:41,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:41,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:24:41,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:41,610.610 INFO    ] No camera update needed
[2026-10-25 05:24:41,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:24:41,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:24:41,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:24:41,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:24:43,664.664 INFO    ] ================================================
[2026-10-25 05:24:43,679.679 INFO    ] Launching Daemon at Sun Oct 25 05:24:43 IST 2026
[2026-10-25 05:24:43,690.690 INFO    ] ================================================
[2026-10-25 05:24:44,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:24:44
[2026-10-25 05:24:44,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:24:45,085.085 INFO    ] Initializing speech engine...
[2026-10-25 05:24:45,098.098 INFO    ] 2026-10-25 05:24:45
[2026-10-25 05:24:45,363.363 INFO    ] 2026-10-25 05:24:45
[2026-10-25 05:24:45,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:24:45,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:24:45,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:24:45,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:24:45,736.736 INFO    ] time= 25/10/2026 05:24:45
[2026-10-25 05:24:45,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:24:45,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:24:45,914.914 INFO    ] No existing commands found in stream
[2026-10-25 05:24:50,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:24:50,947.947 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 05:24:55,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:24:55,167.167 INFO    ] Checking for system updates...
[2026-10-25 05:24:55,203.203 INFO    ] 200
[2026-10-25 05:24:55,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:55,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:55,260.260 INFO    ] No update needed
[2026-10-25 05:24:55,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 05:24:55,296.296 INFO    ] 200
[2026-10-25 05:24:55,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:24:55,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:24:55,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:24:55,509.509 INFO    ] No camera update needed
[2026-10-25 05:24:55,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:24:55,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:24:55,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:24:55,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:24:57,564.564 INFO    ] ================================================
[2026-10-25 05:24:57,579.579 INFO    ] Launching Daemon at Sun Oct 25 05:24:57 IST 2026
[2026-10-25 05:24:57,589.589 INFO    ] ================================================
[2026-10-25 05:24:58,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:24:58
[2026-10-25 05:24:58,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:24:59,010.010 INFO    ] Initializing speech engine...
[2026-10-25 05:24:59,019.019 INFO    ] 2026-10-25 05:24:59
[2026-10-25 05:24:59,269.269 INFO    ] 2026-10-25 05:24:59
[2026-10-25 05:24:59,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:24:59,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:24:59,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:24:59,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:24:59,748.748 INFO    ] time= 25/10/2026 05:24:59
[2026-10-25 05:24:59,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:24:59,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:24:59,906.906 INFO    ] No existing commands found in stream
[2026-10-25 05:25:04,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:25:04,940.940 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 05:25:08,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:25:08,287.287 INFO    ] Checking for system updates...
[2026-10-25 05:25:08,323.323 INFO    ] 200
[2026-10-25 05:25:08,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:08,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:25:08,382.382 INFO    ] No update needed
[2026-10-25 05:25:08,384.384 INFO    ] Checking for camera pi updates...
[2026-10-25 05:25:08,418.418 INFO    ] 200
[2026-10-25 05:25:08,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:08,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:25:08,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:25:08,516.516 INFO    ] No camera update needed
[2026-10-25 05:25:08,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:25:08,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:25:08,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:25:08,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:25:10,577.577 INFO    ] ================================================
[2026-10-25 05:25:10,592.592 INFO    ] Launching Daemon at Sun Oct 25 05:25:10 IST 2026
[2026-10-25 05:25:10,604.604 INFO    ] ================================================
[2026-10-25 05:25:11,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:25:11
[2026-10-25 05:25:11,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:25:12,061.061 INFO    ] Initializing speech engine...
[2026-10-25 05:25:12,068.068 INFO    ] 2026-10-25 05:25:12
[2026-10-25 05:25:12,329.329 INFO    ] 2026-10-25 05:25:12
[2026-10-25 05:25:12,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:25:12,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:25:12,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:25:12,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:25:12,790.790 INFO    ] time= 25/10/2026 05:25:12
[2026-10-25 05:25:12,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:25:12,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:25:12,932.932 INFO    ] No existing commands found in stream
[2026-10-25 05:25:17,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:25:17,947.947 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 05:25:19,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:25:19,013.013 INFO    ] Checking for system updates...
[2026-10-25 05:25:19,053.053 INFO    ] 200
[2026-10-25 05:25:19,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:19,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:19,111.111 INFO    ] No update needed
[2026-10-25 05:25:19,114.114 INFO    ] Checking for camera pi updates...
[2026-10-25 05:25:19,148.148 INFO    ] 200
[2026-10-25 05:25:19,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:19,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:25:19,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:19,240.240 INFO    ] No camera update needed
[2026-10-25 05:25:19,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:25:19,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:25:19,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:25:19,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:25:21,297.297 INFO    ] ================================================
[2026-10-25 05:25:21,313.313 INFO    ] Launching Daemon at Sun Oct 25 05:25:21 IST 2026
[2026-10-25 05:25:21,324.324 INFO    ] ================================================
[2026-10-25 05:25:21,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:25:21
[2026-10-25 05:25:22,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:25:22,899.899 INFO    ] Initializing speech engine...
[2026-10-25 05:25:22,908.908 INFO    ] 2026-10-25 05:25:22
[2026-10-25 05:25:23,171.171 INFO    ] 2026-10-25 05:25:23
[2026-10-25 05:25:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:25:23,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:25:23,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:25:23,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:25:23,686.686 INFO    ] time= 25/10/2026 05:25:23
[2026-10-25 05:25:23,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:25:23,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:25:23,838.838 INFO    ] No existing commands found in stream
[2026-10-25 05:25:28,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:25:28,876.876 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 05:25:31,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:25:31,458.458 INFO    ] Checking for system updates...
[2026-10-25 05:25:31,493.493 INFO    ] 200
[2026-10-25 05:25:31,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:31,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:31,550.550 INFO    ] No update needed
[2026-10-25 05:25:31,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 05:25:31,591.591 INFO    ] 200
[2026-10-25 05:25:31,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:31,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:25:31,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:31,668.668 INFO    ] No camera update needed
[2026-10-25 05:25:31,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:25:31,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:25:31,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:25:31,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:25:33,726.726 INFO    ] ================================================
[2026-10-25 05:25:33,742.742 INFO    ] Launching Daemon at Sun Oct 25 05:25:33 IST 2026
[2026-10-25 05:25:33,752.752 INFO    ] ================================================
[2026-10-25 05:25:34,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:25:34
[2026-10-25 05:25:35,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:25:35,360.360 INFO    ] Initializing speech engine...
[2026-10-25 05:25:35,369.369 INFO    ] 2026-10-25 05:25:35
[2026-10-25 05:25:35,614.614 INFO    ] 2026-10-25 05:25:35
[2026-10-25 05:25:35,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:25:35,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:25:35,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:25:36,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:25:36,090.090 INFO    ] time= 25/10/2026 05:25:36
[2026-10-25 05:25:36,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:25:36,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:25:36,233.233 INFO    ] No existing commands found in stream
[2026-10-25 05:25:41,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:25:41,247.247 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 05:25:43,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:25:43,882.882 INFO    ] Checking for system updates...
[2026-10-25 05:25:43,918.918 INFO    ] 200
[2026-10-25 05:25:43,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:43,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:43,983.983 INFO    ] No update needed
[2026-10-25 05:25:43,986.986 INFO    ] Checking for camera pi updates...
[2026-10-25 05:25:44,019.019 INFO    ] 200
[2026-10-25 05:25:44,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:44,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:25:44,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:44,118.118 INFO    ] No camera update needed
[2026-10-25 05:25:44,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:25:44,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:25:44,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:25:44,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:25:46,177.177 INFO    ] ================================================
[2026-10-25 05:25:46,193.193 INFO    ] Launching Daemon at Sun Oct 25 05:25:46 IST 2026
[2026-10-25 05:25:46,204.204 INFO    ] ================================================
[2026-10-25 05:25:46,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:25:46
[2026-10-25 05:25:47,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:25:47,658.658 INFO    ] Initializing speech engine...
[2026-10-25 05:25:47,667.667 INFO    ] 2026-10-25 05:25:47
[2026-10-25 05:25:47,925.925 INFO    ] 2026-10-25 05:25:47
[2026-10-25 05:25:47,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:25:48,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:25:48,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:25:48,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:25:48,385.385 INFO    ] time= 25/10/2026 05:25:48
[2026-10-25 05:25:48,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:25:48,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:25:48,536.536 INFO    ] No existing commands found in stream
[2026-10-25 05:25:53,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:25:53,551.551 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 05:25:55,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:25:55,032.032 INFO    ] Checking for system updates...
[2026-10-25 05:25:55,072.072 INFO    ] 200
[2026-10-25 05:25:55,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:55,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:55,140.140 INFO    ] No update needed
[2026-10-25 05:25:55,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 05:25:55,191.191 INFO    ] 200
[2026-10-25 05:25:55,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:25:55,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:25:55,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:25:55,287.287 INFO    ] No camera update needed
[2026-10-25 05:25:55,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:25:55,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:25:55,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:25:55,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:25:57,348.348 INFO    ] ================================================
[2026-10-25 05:25:57,363.363 INFO    ] Launching Daemon at Sun Oct 25 05:25:57 IST 2026
[2026-10-25 05:25:57,374.374 INFO    ] ================================================
[2026-10-25 05:25:58,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:25:58
[2026-10-25 05:25:58,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:25:58,971.971 INFO    ] Initializing speech engine...
[2026-10-25 05:25:58,984.984 INFO    ] 2026-10-25 05:25:58
[2026-10-25 05:25:59,268.268 INFO    ] 2026-10-25 05:25:59
[2026-10-25 05:25:59,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:25:59,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:25:59,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:25:59,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:25:59,623.623 INFO    ] time= 25/10/2026 05:25:59
[2026-10-25 05:25:59,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:25:59,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:25:59,706.706 INFO    ] No existing commands found in stream
[2026-10-25 05:26:04,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:26:04,722.722 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 05:26:06,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:26:06,726.726 INFO    ] Checking for system updates...
[2026-10-25 05:26:06,762.762 INFO    ] 200
[2026-10-25 05:26:06,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:06,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:06,827.827 INFO    ] No update needed
[2026-10-25 05:26:06,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 05:26:06,863.863 INFO    ] 200
[2026-10-25 05:26:06,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:06,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:26:06,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:06,955.955 INFO    ] No camera update needed
[2026-10-25 05:26:06,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:26:06,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:26:06,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:26:06,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:26:09,009.009 INFO    ] ================================================
[2026-10-25 05:26:09,025.025 INFO    ] Launching Daemon at Sun Oct 25 05:26:09 IST 2026
[2026-10-25 05:26:09,037.037 INFO    ] ================================================
[2026-10-25 05:26:09,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:26:09
[2026-10-25 05:26:10,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:26:10,483.483 INFO    ] Initializing speech engine...
[2026-10-25 05:26:10,488.488 INFO    ] 2026-10-25 05:26:10
[2026-10-25 05:26:10,785.785 INFO    ] 2026-10-25 05:26:10
[2026-10-25 05:26:10,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:26:11,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:26:11,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:26:11,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:26:11,167.167 INFO    ] time= 25/10/2026 05:26:11
[2026-10-25 05:26:11,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:26:11,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:26:11,292.292 INFO    ] No existing commands found in stream
[2026-10-25 05:26:16,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:26:16,306.306 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 05:26:20,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:26:20,082.082 INFO    ] Checking for system updates...
[2026-10-25 05:26:20,123.123 INFO    ] 200
[2026-10-25 05:26:20,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:20,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:26:20,188.188 INFO    ] No update needed
[2026-10-25 05:26:20,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 05:26:20,228.228 INFO    ] 200
[2026-10-25 05:26:20,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:20,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:26:20,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:26:20,334.334 INFO    ] No camera update needed
[2026-10-25 05:26:20,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:26:20,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:26:20,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:26:20,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:26:22,391.391 INFO    ] ================================================
[2026-10-25 05:26:22,407.407 INFO    ] Launching Daemon at Sun Oct 25 05:26:22 IST 2026
[2026-10-25 05:26:22,418.418 INFO    ] ================================================
[2026-10-25 05:26:23,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:26:23
[2026-10-25 05:26:23,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:26:24,055.055 INFO    ] Initializing speech engine...
[2026-10-25 05:26:24,064.064 INFO    ] 2026-10-25 05:26:24
[2026-10-25 05:26:24,381.381 INFO    ] 2026-10-25 05:26:24
[2026-10-25 05:26:24,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:26:24,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:26:24,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:26:24,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:26:24,898.898 INFO    ] time= 25/10/2026 05:26:24
[2026-10-25 05:26:24,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:26:24,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:26:25,054.054 INFO    ] No existing commands found in stream
[2026-10-25 05:26:30,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:26:30,075.075 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 05:26:34,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:26:34,361.361 INFO    ] Checking for system updates...
[2026-10-25 05:26:34,400.400 INFO    ] 200
[2026-10-25 05:26:34,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:34,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:34,459.459 INFO    ] No update needed
[2026-10-25 05:26:34,462.462 INFO    ] Checking for camera pi updates...
[2026-10-25 05:26:34,496.496 INFO    ] 200
[2026-10-25 05:26:34,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:34,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:26:34,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:34,606.606 INFO    ] No camera update needed
[2026-10-25 05:26:34,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:26:34,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:26:34,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:26:34,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:26:36,660.660 INFO    ] ================================================
[2026-10-25 05:26:36,676.676 INFO    ] Launching Daemon at Sun Oct 25 05:26:36 IST 2026
[2026-10-25 05:26:36,688.688 INFO    ] ================================================
[2026-10-25 05:26:37,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:26:37
[2026-10-25 05:26:37,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:26:38,108.108 INFO    ] Initializing speech engine...
[2026-10-25 05:26:38,117.117 INFO    ] 2026-10-25 05:26:38
[2026-10-25 05:26:38,367.367 INFO    ] 2026-10-25 05:26:38
[2026-10-25 05:26:38,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:26:38,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:26:38,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:26:38,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:26:38,742.742 INFO    ] time= 25/10/2026 05:26:38
[2026-10-25 05:26:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:26:38,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:26:38,896.896 INFO    ] No existing commands found in stream
[2026-10-25 05:26:43,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:26:43,923.923 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 05:26:45,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:26:45,924.924 INFO    ] Checking for system updates...
[2026-10-25 05:26:45,962.962 INFO    ] 200
[2026-10-25 05:26:45,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:46,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:46,022.022 INFO    ] No update needed
[2026-10-25 05:26:46,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 05:26:46,061.061 INFO    ] 200
[2026-10-25 05:26:46,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:46,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:26:46,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:26:46,165.165 INFO    ] No camera update needed
[2026-10-25 05:26:46,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:26:46,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:26:46,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:26:46,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:26:48,221.221 INFO    ] ================================================
[2026-10-25 05:26:48,237.237 INFO    ] Launching Daemon at Sun Oct 25 05:26:48 IST 2026
[2026-10-25 05:26:48,249.249 INFO    ] ================================================
[2026-10-25 05:26:48,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:26:48
[2026-10-25 05:26:49,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:26:49,867.867 INFO    ] Initializing speech engine...
[2026-10-25 05:26:49,880.880 INFO    ] 2026-10-25 05:26:49
[2026-10-25 05:26:50,161.161 INFO    ] 2026-10-25 05:26:50
[2026-10-25 05:26:50,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:26:50,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:26:50,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:26:50,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:26:50,693.693 INFO    ] time= 25/10/2026 05:26:50
[2026-10-25 05:26:50,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:26:50,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:26:50,831.831 INFO    ] No existing commands found in stream
[2026-10-25 05:26:55,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:26:55,858.858 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 05:26:57,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:26:57,523.523 INFO    ] Checking for system updates...
[2026-10-25 05:26:57,563.563 INFO    ] 200
[2026-10-25 05:26:57,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:57,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:26:57,628.628 INFO    ] No update needed
[2026-10-25 05:26:57,631.631 INFO    ] Checking for camera pi updates...
[2026-10-25 05:26:57,670.670 INFO    ] 200
[2026-10-25 05:26:57,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:26:57,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:26:57,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:26:57,876.876 INFO    ] No camera update needed
[2026-10-25 05:26:57,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:26:57,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:26:57,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:26:57,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:26:59,931.931 INFO    ] ================================================
[2026-10-25 05:26:59,946.946 INFO    ] Launching Daemon at Sun Oct 25 05:26:59 IST 2026
[2026-10-25 05:26:59,957.957 INFO    ] ================================================
[2026-10-25 05:27:00,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:27:00
[2026-10-25 05:27:01,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:27:01,713.713 INFO    ] Initializing speech engine...
[2026-10-25 05:27:01,733.733 INFO    ] 2026-10-25 05:27:01
[2026-10-25 05:27:02,121.121 INFO    ] 2026-10-25 05:27:02
[2026-10-25 05:27:02,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:27:02,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:27:02,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:27:02,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:27:02,630.630 INFO    ] time= 25/10/2026 05:27:02
[2026-10-25 05:27:02,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:27:02,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:27:02,856.856 INFO    ] No existing commands found in stream
[2026-10-25 05:27:07,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:27:07,875.875 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 05:27:09,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:27:09,713.713 INFO    ] Checking for system updates...
[2026-10-25 05:27:09,754.754 INFO    ] 200
[2026-10-25 05:27:09,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:09,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:09,814.814 INFO    ] No update needed
[2026-10-25 05:27:09,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 05:27:09,851.851 INFO    ] 200
[2026-10-25 05:27:09,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:09,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:27:09,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:09,960.960 INFO    ] No camera update needed
[2026-10-25 05:27:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:27:09,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:27:09,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:27:09,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:27:12,019.019 INFO    ] ================================================
[2026-10-25 05:27:12,033.033 INFO    ] Launching Daemon at Sun Oct 25 05:27:12 IST 2026
[2026-10-25 05:27:12,044.044 INFO    ] ================================================
[2026-10-25 05:27:12,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:27:12
[2026-10-25 05:27:13,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:27:13,494.494 INFO    ] Initializing speech engine...
[2026-10-25 05:27:13,500.500 INFO    ] 2026-10-25 05:27:13
[2026-10-25 05:27:13,766.766 INFO    ] 2026-10-25 05:27:13
[2026-10-25 05:27:13,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:27:13,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:27:14,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:27:14,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:27:14,179.179 INFO    ] time= 25/10/2026 05:27:14
[2026-10-25 05:27:14,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:27:14,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:27:14,269.269 INFO    ] No existing commands found in stream
[2026-10-25 05:27:19,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:27:19,284.284 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 05:27:21,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:27:21,256.256 INFO    ] Checking for system updates...
[2026-10-25 05:27:21,297.297 INFO    ] 200
[2026-10-25 05:27:21,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:21,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:21,356.356 INFO    ] No update needed
[2026-10-25 05:27:21,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 05:27:21,396.396 INFO    ] 200
[2026-10-25 05:27:21,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:21,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:27:21,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:21,497.497 INFO    ] No camera update needed
[2026-10-25 05:27:21,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:27:21,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:27:21,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:27:21,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:27:23,556.556 INFO    ] ================================================
[2026-10-25 05:27:23,571.571 INFO    ] Launching Daemon at Sun Oct 25 05:27:23 IST 2026
[2026-10-25 05:27:23,581.581 INFO    ] ================================================
[2026-10-25 05:27:24,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:27:24
[2026-10-25 05:27:24,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:27:25,026.026 INFO    ] Initializing speech engine...
[2026-10-25 05:27:25,038.038 INFO    ] 2026-10-25 05:27:25
[2026-10-25 05:27:25,296.296 INFO    ] 2026-10-25 05:27:25
[2026-10-25 05:27:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:27:25,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:27:25,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:27:25,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:27:25,790.790 INFO    ] time= 25/10/2026 05:27:25
[2026-10-25 05:27:25,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:27:25,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:27:25,987.987 INFO    ] No existing commands found in stream
[2026-10-25 05:27:31,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:27:31,017.017 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 05:27:32,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:27:32,565.565 INFO    ] Checking for system updates...
[2026-10-25 05:27:32,619.619 INFO    ] 200
[2026-10-25 05:27:32,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:32,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:27:32,683.683 INFO    ] No update needed
[2026-10-25 05:27:32,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 05:27:32,721.721 INFO    ] 200
[2026-10-25 05:27:32,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:32,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:27:32,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:27:32,809.809 INFO    ] No camera update needed
[2026-10-25 05:27:32,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:27:32,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:27:32,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:27:32,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:27:34,868.868 INFO    ] ================================================
[2026-10-25 05:27:34,883.883 INFO    ] Launching Daemon at Sun Oct 25 05:27:34 IST 2026
[2026-10-25 05:27:34,894.894 INFO    ] ================================================
[2026-10-25 05:27:35,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:27:35
[2026-10-25 05:27:36,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:27:36,326.326 INFO    ] Initializing speech engine...
[2026-10-25 05:27:36,332.332 INFO    ] 2026-10-25 05:27:36
[2026-10-25 05:27:36,627.627 INFO    ] 2026-10-25 05:27:36
[2026-10-25 05:27:36,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:27:36,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:27:36,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:27:37,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:27:37,041.041 INFO    ] time= 25/10/2026 05:27:37
[2026-10-25 05:27:37,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:27:37,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:27:37,199.199 INFO    ] No existing commands found in stream
[2026-10-25 05:27:42,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:27:42,226.226 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 05:27:43,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:27:43,725.725 INFO    ] Checking for system updates...
[2026-10-25 05:27:43,766.766 INFO    ] 200
[2026-10-25 05:27:43,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:43,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:43,827.827 INFO    ] No update needed
[2026-10-25 05:27:43,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 05:27:43,864.864 INFO    ] 200
[2026-10-25 05:27:43,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:43,908.908 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:27:43,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:27:43,965.965 INFO    ] No camera update needed
[2026-10-25 05:27:43,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:27:43,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:27:43,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:27:43,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:27:46,023.023 INFO    ] ================================================
[2026-10-25 05:27:46,038.038 INFO    ] Launching Daemon at Sun Oct 25 05:27:46 IST 2026
[2026-10-25 05:27:46,048.048 INFO    ] ================================================
[2026-10-25 05:27:46,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:27:46
[2026-10-25 05:27:47,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:27:47,468.468 INFO    ] Initializing speech engine...
[2026-10-25 05:27:47,477.477 INFO    ] 2026-10-25 05:27:47
[2026-10-25 05:27:47,725.725 INFO    ] 2026-10-25 05:27:47
[2026-10-25 05:27:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:27:47,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:27:47,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:27:48,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:27:48,100.100 INFO    ] time= 25/10/2026 05:27:48
[2026-10-25 05:27:48,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:27:48,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:27:48,258.258 INFO    ] No existing commands found in stream
[2026-10-25 05:27:53,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:27:53,286.286 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 05:27:57,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:27:57,193.193 INFO    ] Checking for system updates...
[2026-10-25 05:27:57,232.232 INFO    ] 200
[2026-10-25 05:27:57,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:57,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:27:57,295.295 INFO    ] No update needed
[2026-10-25 05:27:57,297.297 INFO    ] Checking for camera pi updates...
[2026-10-25 05:27:57,335.335 INFO    ] 200
[2026-10-25 05:27:57,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:27:57,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:27:57,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:27:57,435.435 INFO    ] No camera update needed
[2026-10-25 05:27:57,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:27:57,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:27:57,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:27:57,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:27:59,493.493 INFO    ] ================================================
[2026-10-25 05:27:59,509.509 INFO    ] Launching Daemon at Sun Oct 25 05:27:59 IST 2026
[2026-10-25 05:27:59,519.519 INFO    ] ================================================
[2026-10-25 05:28:00,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:00
[2026-10-25 05:28:00,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:00,942.942 INFO    ] Initializing speech engine...
[2026-10-25 05:28:00,950.950 INFO    ] 2026-10-25 05:28:00
[2026-10-25 05:28:01,242.242 INFO    ] 2026-10-25 05:28:01
[2026-10-25 05:28:01,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:01,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:28:01,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:28:01,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:28:01,648.648 INFO    ] time= 25/10/2026 05:28:01
[2026-10-25 05:28:01,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:28:01,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:28:01,726.726 INFO    ] No existing commands found in stream
[2026-10-25 05:28:06,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:28:06,740.740 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 05:28:10,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:28:10,953.953 INFO    ] Checking for system updates...
[2026-10-25 05:28:10,995.995 INFO    ] 200
[2026-10-25 05:28:10,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:11,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:11,066.066 INFO    ] No update needed
[2026-10-25 05:28:11,068.068 INFO    ] Checking for camera pi updates...
[2026-10-25 05:28:11,104.104 INFO    ] 200
[2026-10-25 05:28:11,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:11,155.155 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:28:11,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:11,209.209 INFO    ] No camera update needed
[2026-10-25 05:28:11,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:28:11,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:28:11,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:28:11,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:28:13,266.266 INFO    ] ================================================
[2026-10-25 05:28:13,282.282 INFO    ] Launching Daemon at Sun Oct 25 05:28:13 IST 2026
[2026-10-25 05:28:13,292.292 INFO    ] ================================================
[2026-10-25 05:28:13,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:13
[2026-10-25 05:28:14,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:14,829.829 INFO    ] Initializing speech engine...
[2026-10-25 05:28:14,851.851 INFO    ] 2026-10-25 05:28:14
[2026-10-25 05:28:15,105.105 INFO    ] 2026-10-25 05:28:15
[2026-10-25 05:28:15,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:15,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:28:15,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:28:15,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:28:15,578.578 INFO    ] time= 25/10/2026 05:28:15
[2026-10-25 05:28:15,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:28:15,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:28:15,720.720 INFO    ] No existing commands found in stream
[2026-10-25 05:28:20,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:28:20,735.735 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 05:28:21,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:28:21,696.696 INFO    ] Checking for system updates...
[2026-10-25 05:28:21,732.732 INFO    ] 200
[2026-10-25 05:28:21,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:21,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:28:21,790.790 INFO    ] No update needed
[2026-10-25 05:28:21,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 05:28:21,826.826 INFO    ] 200
[2026-10-25 05:28:21,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:21,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:28:21,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:28:21,919.919 INFO    ] No camera update needed
[2026-10-25 05:28:21,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:28:21,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:28:21,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:28:21,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:28:23,978.978 INFO    ] ================================================
[2026-10-25 05:28:23,993.993 INFO    ] Launching Daemon at Sun Oct 25 05:28:23 IST 2026
[2026-10-25 05:28:24,004.004 INFO    ] ================================================
[2026-10-25 05:28:24,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:24
[2026-10-25 05:28:25,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:25,457.457 INFO    ] Initializing speech engine...
[2026-10-25 05:28:25,467.467 INFO    ] 2026-10-25 05:28:25
[2026-10-25 05:28:25,716.716 INFO    ] 2026-10-25 05:28:25
[2026-10-25 05:28:25,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:28:26,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:28:26,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:28:26,192.192 INFO    ] time= 25/10/2026 05:28:26
[2026-10-25 05:28:26,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:28:26,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:28:26,389.389 INFO    ] No existing commands found in stream
[2026-10-25 05:28:31,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:28:31,424.424 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 05:28:33,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:28:33,261.261 INFO    ] Checking for system updates...
[2026-10-25 05:28:33,302.302 INFO    ] 200
[2026-10-25 05:28:33,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:33,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:33,361.361 INFO    ] No update needed
[2026-10-25 05:28:33,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 05:28:33,398.398 INFO    ] 200
[2026-10-25 05:28:33,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:33,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:28:33,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:33,498.498 INFO    ] No camera update needed
[2026-10-25 05:28:33,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:28:33,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:28:33,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:28:33,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:28:35,553.553 INFO    ] ================================================
[2026-10-25 05:28:35,567.567 INFO    ] Launching Daemon at Sun Oct 25 05:28:35 IST 2026
[2026-10-25 05:28:35,578.578 INFO    ] ================================================
[2026-10-25 05:28:36,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:36
[2026-10-25 05:28:36,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:36,996.996 INFO    ] Initializing speech engine...
[2026-10-25 05:28:37,005.005 INFO    ] 2026-10-25 05:28:36
[2026-10-25 05:28:37,250.250 INFO    ] 2026-10-25 05:28:37
[2026-10-25 05:28:37,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:37,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:28:37,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:28:37,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:28:37,618.618 INFO    ] time= 25/10/2026 05:28:37
[2026-10-25 05:28:37,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:28:37,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:28:37,773.773 INFO    ] No existing commands found in stream
[2026-10-25 05:28:42,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:28:42,806.806 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 05:28:44,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:28:44,522.522 INFO    ] Checking for system updates...
[2026-10-25 05:28:44,562.562 INFO    ] 200
[2026-10-25 05:28:44,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:44,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:44,628.628 INFO    ] No update needed
[2026-10-25 05:28:44,631.631 INFO    ] Checking for camera pi updates...
[2026-10-25 05:28:44,664.664 INFO    ] 200
[2026-10-25 05:28:44,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:44,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:28:44,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:44,759.759 INFO    ] No camera update needed
[2026-10-25 05:28:44,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:28:44,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:28:44,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:28:44,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:28:46,814.814 INFO    ] ================================================
[2026-10-25 05:28:46,829.829 INFO    ] Launching Daemon at Sun Oct 25 05:28:46 IST 2026
[2026-10-25 05:28:46,839.839 INFO    ] ================================================
[2026-10-25 05:28:47,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:47
[2026-10-25 05:28:47,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:48,254.254 INFO    ] Initializing speech engine...
[2026-10-25 05:28:48,264.264 INFO    ] 2026-10-25 05:28:48
[2026-10-25 05:28:48,522.522 INFO    ] 2026-10-25 05:28:48
[2026-10-25 05:28:48,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:48,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:28:48,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:28:48,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:28:49,025.025 INFO    ] time= 25/10/2026 05:28:48
[2026-10-25 05:28:49,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:28:49,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:28:49,197.197 INFO    ] No existing commands found in stream
[2026-10-25 05:28:54,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:28:54,225.225 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 05:28:55,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:28:55,674.674 INFO    ] Checking for system updates...
[2026-10-25 05:28:55,710.710 INFO    ] 200
[2026-10-25 05:28:55,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:55,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:55,768.768 INFO    ] No update needed
[2026-10-25 05:28:55,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 05:28:55,804.804 INFO    ] 200
[2026-10-25 05:28:55,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:28:55,847.847 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:28:55,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:28:55,905.905 INFO    ] No camera update needed
[2026-10-25 05:28:55,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:28:55,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:28:55,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:28:55,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:28:57,960.960 INFO    ] ================================================
[2026-10-25 05:28:57,975.975 INFO    ] Launching Daemon at Sun Oct 25 05:28:57 IST 2026
[2026-10-25 05:28:57,985.985 INFO    ] ================================================
[2026-10-25 05:28:58,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:28:58
[2026-10-25 05:28:59,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:28:59,444.444 INFO    ] Initializing speech engine...
[2026-10-25 05:28:59,452.452 INFO    ] 2026-10-25 05:28:59
[2026-10-25 05:28:59,716.716 INFO    ] 2026-10-25 05:28:59
[2026-10-25 05:28:59,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:28:59,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:29:00,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:29:00,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:29:00,247.247 INFO    ] time= 25/10/2026 05:29:00
[2026-10-25 05:29:00,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:29:00,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:29:00,391.391 INFO    ] No existing commands found in stream
[2026-10-25 05:29:05,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:29:05,424.424 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 05:29:11,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:29:11,954.954 INFO    ] Checking for system updates...
[2026-10-25 05:29:11,994.994 INFO    ] 200
[2026-10-25 05:29:11,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:12,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:29:12,051.051 INFO    ] No update needed
[2026-10-25 05:29:12,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 05:29:12,091.091 INFO    ] 200
[2026-10-25 05:29:12,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:12,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:29:12,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:29:12,193.193 INFO    ] No camera update needed
[2026-10-25 05:29:12,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:29:12,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:29:12,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:29:12,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:29:14,247.247 INFO    ] ================================================
[2026-10-25 05:29:14,262.262 INFO    ] Launching Daemon at Sun Oct 25 05:29:14 IST 2026
[2026-10-25 05:29:14,273.273 INFO    ] ================================================
[2026-10-25 05:29:14,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:29:14
[2026-10-25 05:29:15,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:29:15,692.692 INFO    ] Initializing speech engine...
[2026-10-25 05:29:15,706.706 INFO    ] 2026-10-25 05:29:15
[2026-10-25 05:29:15,973.973 INFO    ] 2026-10-25 05:29:15
[2026-10-25 05:29:16,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:29:16,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:29:16,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:29:16,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:29:16,715.715 INFO    ] time= 25/10/2026 05:29:16
[2026-10-25 05:29:16,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:29:16,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:29:16,913.913 INFO    ] No existing commands found in stream
[2026-10-25 05:29:21,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:29:21,936.936 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 05:29:25,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:29:25,433.433 INFO    ] Checking for system updates...
[2026-10-25 05:29:25,473.473 INFO    ] 200
[2026-10-25 05:29:25,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:25,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:29:25,530.530 INFO    ] No update needed
[2026-10-25 05:29:25,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 05:29:25,571.571 INFO    ] 200
[2026-10-25 05:29:25,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:25,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:29:25,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:29:25,675.675 INFO    ] No camera update needed
[2026-10-25 05:29:25,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:29:25,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:29:25,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:29:25,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:29:27,731.731 INFO    ] ================================================
[2026-10-25 05:29:27,746.746 INFO    ] Launching Daemon at Sun Oct 25 05:29:27 IST 2026
[2026-10-25 05:29:27,757.757 INFO    ] ================================================
[2026-10-25 05:29:28,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:29:28
[2026-10-25 05:29:29,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:29:29,350.350 INFO    ] Initializing speech engine...
[2026-10-25 05:29:29,358.358 INFO    ] 2026-10-25 05:29:29
[2026-10-25 05:29:29,627.627 INFO    ] 2026-10-25 05:29:29
[2026-10-25 05:29:29,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:29:29,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:29:29,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:29:30,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:29:30,102.102 INFO    ] time= 25/10/2026 05:29:30
[2026-10-25 05:29:30,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:29:30,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:29:30,251.251 INFO    ] No existing commands found in stream
[2026-10-25 05:29:35,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:29:35,266.266 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 05:29:39,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:29:39,534.534 INFO    ] Checking for system updates...
[2026-10-25 05:29:39,571.571 INFO    ] 200
[2026-10-25 05:29:39,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:39,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:29:39,636.636 INFO    ] No update needed
[2026-10-25 05:29:39,639.639 INFO    ] Checking for camera pi updates...
[2026-10-25 05:29:39,676.676 INFO    ] 200
[2026-10-25 05:29:39,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:39,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:29:39,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:29:39,772.772 INFO    ] No camera update needed
[2026-10-25 05:29:39,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:29:39,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:29:39,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:29:39,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:29:41,831.831 INFO    ] ================================================
[2026-10-25 05:29:41,846.846 INFO    ] Launching Daemon at Sun Oct 25 05:29:41 IST 2026
[2026-10-25 05:29:41,856.856 INFO    ] ================================================
[2026-10-25 05:29:42,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:29:42
[2026-10-25 05:29:43,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:29:43,441.441 INFO    ] Initializing speech engine...
[2026-10-25 05:29:43,452.452 INFO    ] 2026-10-25 05:29:43
[2026-10-25 05:29:43,728.728 INFO    ] 2026-10-25 05:29:43
[2026-10-25 05:29:43,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:29:44,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:29:44,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:29:44,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:29:44,200.200 INFO    ] time= 25/10/2026 05:29:44
[2026-10-25 05:29:44,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:29:44,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:29:44,351.351 INFO    ] No existing commands found in stream
[2026-10-25 05:29:49,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:29:49,367.367 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 05:29:50,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:29:50,824.824 INFO    ] Checking for system updates...
[2026-10-25 05:29:50,864.864 INFO    ] 200
[2026-10-25 05:29:50,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:50,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:29:50,930.930 INFO    ] No update needed
[2026-10-25 05:29:50,933.933 INFO    ] Checking for camera pi updates...
[2026-10-25 05:29:50,969.969 INFO    ] 200
[2026-10-25 05:29:50,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:29:51,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:29:51,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:29:51,069.069 INFO    ] No camera update needed
[2026-10-25 05:29:51,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:29:51,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:29:51,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:29:51,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:29:53,122.122 INFO    ] ================================================
[2026-10-25 05:29:53,137.137 INFO    ] Launching Daemon at Sun Oct 25 05:29:53 IST 2026
[2026-10-25 05:29:53,148.148 INFO    ] ================================================
[2026-10-25 05:29:53,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:29:53
[2026-10-25 05:29:54,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:29:54,615.615 INFO    ] Initializing speech engine...
[2026-10-25 05:29:54,624.624 INFO    ] 2026-10-25 05:29:54
[2026-10-25 05:29:54,891.891 INFO    ] 2026-10-25 05:29:54
[2026-10-25 05:29:54,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:29:55,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:29:55,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:29:55,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:29:55,265.265 INFO    ] time= 25/10/2026 05:29:55
[2026-10-25 05:29:55,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:29:55,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:29:55,388.388 INFO    ] No existing commands found in stream
[2026-10-25 05:30:00,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:30:00,401.401 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 05:30:01,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:30:01,583.583 INFO    ] Checking for system updates...
[2026-10-25 05:30:01,622.622 INFO    ] 200
[2026-10-25 05:30:01,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:01,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:01,711.711 INFO    ] No update needed
[2026-10-25 05:30:01,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 05:30:01,785.785 INFO    ] 200
[2026-10-25 05:30:01,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:02,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:30:02,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:02,260.260 INFO    ] No camera update needed
[2026-10-25 05:30:02,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:30:02,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:30:02,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:30:02,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:30:04,353.353 INFO    ] ================================================
[2026-10-25 05:30:04,368.368 INFO    ] Launching Daemon at Sun Oct 25 05:30:04 IST 2026
[2026-10-25 05:30:04,379.379 INFO    ] ================================================
[2026-10-25 05:30:04,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:30:04
[2026-10-25 05:30:05,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:30:05,834.834 INFO    ] Initializing speech engine...
[2026-10-25 05:30:05,844.844 INFO    ] 2026-10-25 05:30:05
[2026-10-25 05:30:06,102.102 INFO    ] 2026-10-25 05:30:06
[2026-10-25 05:30:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:30:06,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:30:06,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:30:06,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:30:06,584.584 INFO    ] time= 25/10/2026 05:30:06
[2026-10-25 05:30:06,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:30:06,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:30:06,720.720 INFO    ] No existing commands found in stream
[2026-10-25 05:30:11,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:30:11,755.755 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 05:30:14,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:30:14,908.908 INFO    ] Checking for system updates...
[2026-10-25 05:30:14,945.945 INFO    ] 200
[2026-10-25 05:30:14,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:15,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:30:15,009.009 INFO    ] No update needed
[2026-10-25 05:30:15,012.012 INFO    ] Checking for camera pi updates...
[2026-10-25 05:30:15,045.045 INFO    ] 200
[2026-10-25 05:30:15,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:15,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:30:15,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:30:15,163.163 INFO    ] No camera update needed
[2026-10-25 05:30:15,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:30:15,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:30:15,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:30:15,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:30:17,221.221 INFO    ] ================================================
[2026-10-25 05:30:17,236.236 INFO    ] Launching Daemon at Sun Oct 25 05:30:17 IST 2026
[2026-10-25 05:30:17,246.246 INFO    ] ================================================
[2026-10-25 05:30:17,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:30:17
[2026-10-25 05:30:18,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:30:18,705.705 INFO    ] Initializing speech engine...
[2026-10-25 05:30:18,711.711 INFO    ] 2026-10-25 05:30:18
[2026-10-25 05:30:18,973.973 INFO    ] 2026-10-25 05:30:18
[2026-10-25 05:30:19,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:30:19,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:30:19,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:30:19,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:30:19,437.437 INFO    ] time= 25/10/2026 05:30:19
[2026-10-25 05:30:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:30:19,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:30:19,582.582 INFO    ] No existing commands found in stream
[2026-10-25 05:30:24,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:30:24,601.601 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 05:30:26,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:30:26,851.851 INFO    ] Checking for system updates...
[2026-10-25 05:30:26,891.891 INFO    ] 200
[2026-10-25 05:30:26,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:26,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:30:26,955.955 INFO    ] No update needed
[2026-10-25 05:30:26,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 05:30:26,994.994 INFO    ] 200
[2026-10-25 05:30:26,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:27,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:30:27,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:30:27,107.107 INFO    ] No camera update needed
[2026-10-25 05:30:27,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:30:27,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:30:27,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:30:27,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:30:29,166.166 INFO    ] ================================================
[2026-10-25 05:30:29,183.183 INFO    ] Launching Daemon at Sun Oct 25 05:30:29 IST 2026
[2026-10-25 05:30:29,195.195 INFO    ] ================================================
[2026-10-25 05:30:29,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:30:29
[2026-10-25 05:30:30,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:30:30,887.887 INFO    ] Initializing speech engine...
[2026-10-25 05:30:30,895.895 INFO    ] 2026-10-25 05:30:30
[2026-10-25 05:30:31,154.154 INFO    ] 2026-10-25 05:30:31
[2026-10-25 05:30:31,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:30:31,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:30:31,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:30:31,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:30:31,606.606 INFO    ] time= 25/10/2026 05:30:31
[2026-10-25 05:30:31,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:30:31,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:30:31,755.755 INFO    ] No existing commands found in stream
[2026-10-25 05:30:36,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:30:36,770.770 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 05:30:40,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:30:40,407.407 INFO    ] Checking for system updates...
[2026-10-25 05:30:40,443.443 INFO    ] 200
[2026-10-25 05:30:40,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:40,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:40,503.503 INFO    ] No update needed
[2026-10-25 05:30:40,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 05:30:40,539.539 INFO    ] 200
[2026-10-25 05:30:40,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:40,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:30:40,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:40,645.645 INFO    ] No camera update needed
[2026-10-25 05:30:40,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:30:40,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:30:40,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:30:40,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:30:42,699.699 INFO    ] ================================================
[2026-10-25 05:30:42,714.714 INFO    ] Launching Daemon at Sun Oct 25 05:30:42 IST 2026
[2026-10-25 05:30:42,724.724 INFO    ] ================================================
[2026-10-25 05:30:43,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:30:43
[2026-10-25 05:30:43,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:30:44,210.210 INFO    ] Initializing speech engine...
[2026-10-25 05:30:44,219.219 INFO    ] 2026-10-25 05:30:44
[2026-10-25 05:30:44,468.468 INFO    ] 2026-10-25 05:30:44
[2026-10-25 05:30:44,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:30:44,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:30:44,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:30:44,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:30:44,838.838 INFO    ] time= 25/10/2026 05:30:44
[2026-10-25 05:30:44,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:30:44,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:30:44,998.998 INFO    ] No existing commands found in stream
[2026-10-25 05:30:50,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:30:50,026.026 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 05:30:54,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:30:54,132.132 INFO    ] Checking for system updates...
[2026-10-25 05:30:54,175.175 INFO    ] 200
[2026-10-25 05:30:54,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:54,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:54,250.250 INFO    ] No update needed
[2026-10-25 05:30:54,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 05:30:54,293.293 INFO    ] 200
[2026-10-25 05:30:54,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:30:54,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:30:54,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:30:54,442.442 INFO    ] No camera update needed
[2026-10-25 05:30:54,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:30:54,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:30:54,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:30:54,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:30:56,502.502 INFO    ] ================================================
[2026-10-25 05:30:56,517.517 INFO    ] Launching Daemon at Sun Oct 25 05:30:56 IST 2026
[2026-10-25 05:30:56,528.528 INFO    ] ================================================
[2026-10-25 05:30:57,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:30:57
[2026-10-25 05:30:57,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:30:57,924.924 INFO    ] Initializing speech engine...
[2026-10-25 05:30:57,938.938 INFO    ] 2026-10-25 05:30:57
[2026-10-25 05:30:58,206.206 INFO    ] 2026-10-25 05:30:58
[2026-10-25 05:30:58,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:30:59,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:30:59,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:30:59,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:30:59,583.583 INFO    ] time= 25/10/2026 05:30:59
[2026-10-25 05:30:59,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:30:59,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:30:59,650.650 INFO    ] No existing commands found in stream
[2026-10-25 05:31:04,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:31:04,664.664 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 05:31:05,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:31:05,736.736 INFO    ] Checking for system updates...
[2026-10-25 05:31:05,771.771 INFO    ] 200
[2026-10-25 05:31:05,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:05,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:05,836.836 INFO    ] No update needed
[2026-10-25 05:31:05,838.838 INFO    ] Checking for camera pi updates...
[2026-10-25 05:31:05,879.879 INFO    ] 200
[2026-10-25 05:31:05,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:05,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:31:06,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:06,104.104 INFO    ] No camera update needed
[2026-10-25 05:31:06,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:31:06,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:31:06,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:31:06,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:31:08,158.158 INFO    ] ================================================
[2026-10-25 05:31:08,173.173 INFO    ] Launching Daemon at Sun Oct 25 05:31:08 IST 2026
[2026-10-25 05:31:08,184.184 INFO    ] ================================================
[2026-10-25 05:31:08,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:31:08
[2026-10-25 05:31:09,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:31:09,639.639 INFO    ] Initializing speech engine...
[2026-10-25 05:31:09,646.646 INFO    ] 2026-10-25 05:31:09
[2026-10-25 05:31:09,906.906 INFO    ] 2026-10-25 05:31:09
[2026-10-25 05:31:09,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:31:10,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:31:10,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:31:10,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:31:10,371.371 INFO    ] time= 25/10/2026 05:31:10
[2026-10-25 05:31:10,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:31:10,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:31:10,516.516 INFO    ] No existing commands found in stream
[2026-10-25 05:31:15,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:31:15,533.533 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 05:31:17,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:31:17,466.466 INFO    ] Checking for system updates...
[2026-10-25 05:31:17,506.506 INFO    ] 200
[2026-10-25 05:31:17,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:17,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:17,571.571 INFO    ] No update needed
[2026-10-25 05:31:17,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 05:31:17,607.607 INFO    ] 200
[2026-10-25 05:31:17,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:17,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:31:17,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:17,699.699 INFO    ] No camera update needed
[2026-10-25 05:31:17,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:31:17,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:31:17,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:31:17,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:31:19,756.756 INFO    ] ================================================
[2026-10-25 05:31:19,772.772 INFO    ] Launching Daemon at Sun Oct 25 05:31:19 IST 2026
[2026-10-25 05:31:19,782.782 INFO    ] ================================================
[2026-10-25 05:31:20,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:31:20
[2026-10-25 05:31:21,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:31:21,426.426 INFO    ] Initializing speech engine...
[2026-10-25 05:31:21,441.441 INFO    ] 2026-10-25 05:31:21
[2026-10-25 05:31:21,726.726 INFO    ] 2026-10-25 05:31:21
[2026-10-25 05:31:21,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:31:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:31:22,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:31:22,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:31:22,198.198 INFO    ] time= 25/10/2026 05:31:22
[2026-10-25 05:31:22,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:31:22,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:31:22,346.346 INFO    ] No existing commands found in stream
[2026-10-25 05:31:27,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:31:27,366.366 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 05:31:30,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:31:30,334.334 INFO    ] Checking for system updates...
[2026-10-25 05:31:30,376.376 INFO    ] 200
[2026-10-25 05:31:30,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:30,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:30,438.438 INFO    ] No update needed
[2026-10-25 05:31:30,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 05:31:30,476.476 INFO    ] 200
[2026-10-25 05:31:30,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:30,522.522 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:31:30,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:30,588.588 INFO    ] No camera update needed
[2026-10-25 05:31:30,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:31:30,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:31:30,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:31:30,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:31:32,650.650 INFO    ] ================================================
[2026-10-25 05:31:32,666.666 INFO    ] Launching Daemon at Sun Oct 25 05:31:32 IST 2026
[2026-10-25 05:31:32,676.676 INFO    ] ================================================
[2026-10-25 05:31:33,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:31:33
[2026-10-25 05:31:33,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:31:34,108.108 INFO    ] Initializing speech engine...
[2026-10-25 05:31:34,130.130 INFO    ] 2026-10-25 05:31:34
[2026-10-25 05:31:34,385.385 INFO    ] 2026-10-25 05:31:34
[2026-10-25 05:31:34,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:31:34,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:31:34,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:31:34,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:31:34,884.884 INFO    ] time= 25/10/2026 05:31:34
[2026-10-25 05:31:34,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:31:34,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:31:35,067.067 INFO    ] No existing commands found in stream
[2026-10-25 05:31:40,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:31:40,101.101 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 05:31:43,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:31:43,015.015 INFO    ] Checking for system updates...
[2026-10-25 05:31:43,056.056 INFO    ] 200
[2026-10-25 05:31:43,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:43,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:43,114.114 INFO    ] No update needed
[2026-10-25 05:31:43,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 05:31:43,159.159 INFO    ] 200
[2026-10-25 05:31:43,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:43,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:31:43,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:31:43,265.265 INFO    ] No camera update needed
[2026-10-25 05:31:43,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:31:43,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:31:43,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:31:43,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:31:45,324.324 INFO    ] ================================================
[2026-10-25 05:31:45,339.339 INFO    ] Launching Daemon at Sun Oct 25 05:31:45 IST 2026
[2026-10-25 05:31:45,350.350 INFO    ] ================================================
[2026-10-25 05:31:45,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:31:45
[2026-10-25 05:31:46,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:31:46,959.959 INFO    ] Initializing speech engine...
[2026-10-25 05:31:46,967.967 INFO    ] 2026-10-25 05:31:46
[2026-10-25 05:31:47,258.258 INFO    ] 2026-10-25 05:31:47
[2026-10-25 05:31:47,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:31:47,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:31:47,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:31:47,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:31:47,809.809 INFO    ] time= 25/10/2026 05:31:47
[2026-10-25 05:31:47,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:31:47,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:31:47,964.964 INFO    ] No existing commands found in stream
[2026-10-25 05:31:52,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:31:52,986.986 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 05:31:56,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:31:56,676.676 INFO    ] Checking for system updates...
[2026-10-25 05:31:56,715.715 INFO    ] 200
[2026-10-25 05:31:56,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:56,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:31:56,779.779 INFO    ] No update needed
[2026-10-25 05:31:56,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 05:31:56,818.818 INFO    ] 200
[2026-10-25 05:31:56,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:31:56,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:31:56,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:31:56,917.917 INFO    ] No camera update needed
[2026-10-25 05:31:56,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:31:56,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:31:56,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:31:56,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:31:58,972.972 INFO    ] ================================================
[2026-10-25 05:31:58,986.986 INFO    ] Launching Daemon at Sun Oct 25 05:31:58 IST 2026
[2026-10-25 05:31:59,997.997 INFO    ] ================================================
[2026-10-25 05:31:59,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:31:59
[2026-10-25 05:32:00,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:00,468.468 INFO    ] Initializing speech engine...
[2026-10-25 05:32:00,482.482 INFO    ] 2026-10-25 05:32:00
[2026-10-25 05:32:00,737.737 INFO    ] 2026-10-25 05:32:00
[2026-10-25 05:32:00,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:00,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:01,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:01,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:01,227.227 INFO    ] time= 25/10/2026 05:32:01
[2026-10-25 05:32:01,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:01,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:01,372.372 INFO    ] No existing commands found in stream
[2026-10-25 05:32:06,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:32:06,402.402 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 05:32:06,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:32:06,825.825 INFO    ] Checking for system updates...
[2026-10-25 05:32:06,862.862 INFO    ] 200
[2026-10-25 05:32:06,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:06,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:06,922.922 INFO    ] No update needed
[2026-10-25 05:32:06,925.925 INFO    ] Checking for camera pi updates...
[2026-10-25 05:32:06,962.962 INFO    ] 200
[2026-10-25 05:32:06,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:07,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:32:07,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:07,060.060 INFO    ] No camera update needed
[2026-10-25 05:32:07,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:32:07,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:32:07,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:32:07,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:32:09,116.116 INFO    ] ================================================
[2026-10-25 05:32:09,131.131 INFO    ] Launching Daemon at Sun Oct 25 05:32:09 IST 2026
[2026-10-25 05:32:09,142.142 INFO    ] ================================================
[2026-10-25 05:32:09,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:32:09
[2026-10-25 05:32:10,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:10,570.570 INFO    ] Initializing speech engine...
[2026-10-25 05:32:10,577.577 INFO    ] 2026-10-25 05:32:10
[2026-10-25 05:32:10,867.867 INFO    ] 2026-10-25 05:32:10
[2026-10-25 05:32:10,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:11,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:11,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:11,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:11,279.279 INFO    ] time= 25/10/2026 05:32:11
[2026-10-25 05:32:11,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:11,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:11,363.363 INFO    ] No existing commands found in stream
[2026-10-25 05:32:16,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:32:16,378.378 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 05:32:17,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:32:17,730.730 INFO    ] Checking for system updates...
[2026-10-25 05:32:17,766.766 INFO    ] 200
[2026-10-25 05:32:17,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:17,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:32:17,826.826 INFO    ] No update needed
[2026-10-25 05:32:17,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 05:32:17,865.865 INFO    ] 200
[2026-10-25 05:32:17,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:17,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:32:17,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:32:17,986.986 INFO    ] No camera update needed
[2026-10-25 05:32:17,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:32:17,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:32:17,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:32:18,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:32:20,042.042 INFO    ] ================================================
[2026-10-25 05:32:20,057.057 INFO    ] Launching Daemon at Sun Oct 25 05:32:20 IST 2026
[2026-10-25 05:32:20,068.068 INFO    ] ================================================
[2026-10-25 05:32:20,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:32:20
[2026-10-25 05:32:21,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:21,514.514 INFO    ] Initializing speech engine...
[2026-10-25 05:32:21,523.523 INFO    ] 2026-10-25 05:32:21
[2026-10-25 05:32:21,771.771 INFO    ] 2026-10-25 05:32:21
[2026-10-25 05:32:21,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:22,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:22,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:22,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:22,248.248 INFO    ] time= 25/10/2026 05:32:22
[2026-10-25 05:32:22,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:22,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:22,391.391 INFO    ] No existing commands found in stream
[2026-10-25 05:32:27,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:32:27,406.406 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 05:32:29,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:32:29,861.861 INFO    ] Checking for system updates...
[2026-10-25 05:32:29,905.905 INFO    ] 200
[2026-10-25 05:32:29,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:29,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:29,995.995 INFO    ] No update needed
[2026-10-25 05:32:29,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 05:32:30,041.041 INFO    ] 200
[2026-10-25 05:32:30,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:30,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:32:30,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:30,164.164 INFO    ] No camera update needed
[2026-10-25 05:32:30,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:32:30,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:32:30,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:32:30,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:32:32,221.221 INFO    ] ================================================
[2026-10-25 05:32:32,237.237 INFO    ] Launching Daemon at Sun Oct 25 05:32:32 IST 2026
[2026-10-25 05:32:32,248.248 INFO    ] ================================================
[2026-10-25 05:32:32,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:32:32
[2026-10-25 05:32:33,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:33,679.679 INFO    ] Initializing speech engine...
[2026-10-25 05:32:33,687.687 INFO    ] 2026-10-25 05:32:33
[2026-10-25 05:32:33,975.975 INFO    ] 2026-10-25 05:32:33
[2026-10-25 05:32:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:34,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:34,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:34,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:34,377.377 INFO    ] time= 25/10/2026 05:32:34
[2026-10-25 05:32:34,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:34,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:34,466.466 INFO    ] No existing commands found in stream
[2026-10-25 05:32:39,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:32:39,484.484 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 05:32:41,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:32:41,952.952 INFO    ] Checking for system updates...
[2026-10-25 05:32:41,988.988 INFO    ] 200
[2026-10-25 05:32:41,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:42,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:42,046.046 INFO    ] No update needed
[2026-10-25 05:32:42,048.048 INFO    ] Checking for camera pi updates...
[2026-10-25 05:32:42,082.082 INFO    ] 200
[2026-10-25 05:32:42,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:42,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:32:42,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:32:42,183.183 INFO    ] No camera update needed
[2026-10-25 05:32:42,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:32:42,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:32:42,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:32:42,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:32:44,238.238 INFO    ] ================================================
[2026-10-25 05:32:44,253.253 INFO    ] Launching Daemon at Sun Oct 25 05:32:44 IST 2026
[2026-10-25 05:32:44,264.264 INFO    ] ================================================
[2026-10-25 05:32:44,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:32:44
[2026-10-25 05:32:45,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:45,745.745 INFO    ] Initializing speech engine...
[2026-10-25 05:32:45,758.758 INFO    ] 2026-10-25 05:32:45
[2026-10-25 05:32:46,004.004 INFO    ] 2026-10-25 05:32:46
[2026-10-25 05:32:46,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:46,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:46,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:46,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:46,472.472 INFO    ] time= 25/10/2026 05:32:46
[2026-10-25 05:32:46,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:46,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:46,616.616 INFO    ] No existing commands found in stream
[2026-10-25 05:32:51,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:32:51,631.631 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 05:32:53,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:32:53,110.110 INFO    ] Checking for system updates...
[2026-10-25 05:32:53,145.145 INFO    ] 200
[2026-10-25 05:32:53,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:53,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:32:53,208.208 INFO    ] No update needed
[2026-10-25 05:32:53,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 05:32:53,247.247 INFO    ] 200
[2026-10-25 05:32:53,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:32:53,293.293 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:32:53,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:32:53,345.345 INFO    ] No camera update needed
[2026-10-25 05:32:53,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:32:53,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:32:53,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:32:53,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:32:55,400.400 INFO    ] ================================================
[2026-10-25 05:32:55,416.416 INFO    ] Launching Daemon at Sun Oct 25 05:32:55 IST 2026
[2026-10-25 05:32:55,426.426 INFO    ] ================================================
[2026-10-25 05:32:56,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:32:56
[2026-10-25 05:32:56,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:32:56,862.862 INFO    ] Initializing speech engine...
[2026-10-25 05:32:56,878.878 INFO    ] 2026-10-25 05:32:56
[2026-10-25 05:32:57,131.131 INFO    ] 2026-10-25 05:32:57
[2026-10-25 05:32:57,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:32:57,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:32:57,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:32:57,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:32:57,501.501 INFO    ] time= 25/10/2026 05:32:57
[2026-10-25 05:32:57,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:32:57,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:32:57,683.683 INFO    ] No existing commands found in stream
[2026-10-25 05:33:02,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:02,707.707 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 05:33:03,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:33:03,838.838 INFO    ] Checking for system updates...
[2026-10-25 05:33:03,875.875 INFO    ] 200
[2026-10-25 05:33:03,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:03,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:33:03,932.932 INFO    ] No update needed
[2026-10-25 05:33:03,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 05:33:03,968.968 INFO    ] 200
[2026-10-25 05:33:03,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:04,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:33:04,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:33:04,078.078 INFO    ] No camera update needed
[2026-10-25 05:33:04,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:33:04,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:33:04,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:33:04,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:33:06,133.133 INFO    ] ================================================
[2026-10-25 05:33:06,153.153 INFO    ] Launching Daemon at Sun Oct 25 05:33:06 IST 2026
[2026-10-25 05:33:06,163.163 INFO    ] ================================================
[2026-10-25 05:33:06,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:33:06
[2026-10-25 05:33:07,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:33:07,567.567 INFO    ] Initializing speech engine...
[2026-10-25 05:33:07,583.583 INFO    ] 2026-10-25 05:33:07
[2026-10-25 05:33:07,866.866 INFO    ] 2026-10-25 05:33:07
[2026-10-25 05:33:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:33:08,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:33:08,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:33:08,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:33:08,281.281 INFO    ] time= 25/10/2026 05:33:08
[2026-10-25 05:33:08,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:33:08,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:33:08,364.364 INFO    ] No existing commands found in stream
[2026-10-25 05:33:13,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:13,379.379 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 05:33:14,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:33:14,057.057 INFO    ] Checking for system updates...
[2026-10-25 05:33:14,096.096 INFO    ] 200
[2026-10-25 05:33:14,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:14,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:14,153.153 INFO    ] No update needed
[2026-10-25 05:33:14,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 05:33:14,190.190 INFO    ] 200
[2026-10-25 05:33:14,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:14,240.240 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:33:14,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:14,534.534 INFO    ] No camera update needed
[2026-10-25 05:33:14,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:33:14,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:33:14,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:33:14,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:33:16,589.589 INFO    ] ================================================
[2026-10-25 05:33:16,605.605 INFO    ] Launching Daemon at Sun Oct 25 05:33:16 IST 2026
[2026-10-25 05:33:16,615.615 INFO    ] ================================================
[2026-10-25 05:33:17,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:33:17
[2026-10-25 05:33:17,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:33:18,017.017 INFO    ] Initializing speech engine...
[2026-10-25 05:33:18,025.025 INFO    ] 2026-10-25 05:33:18
[2026-10-25 05:33:18,301.301 INFO    ] 2026-10-25 05:33:18
[2026-10-25 05:33:18,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:33:18,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:33:18,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:33:18,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:33:18,682.682 INFO    ] time= 25/10/2026 05:33:18
[2026-10-25 05:33:18,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:33:18,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:33:18,744.744 INFO    ] No existing commands found in stream
[2026-10-25 05:33:23,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:23,756.756 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 05:33:27,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:33:27,526.526 INFO    ] Checking for system updates...
[2026-10-25 05:33:27,565.565 INFO    ] 200
[2026-10-25 05:33:27,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:27,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:27,622.622 INFO    ] No update needed
[2026-10-25 05:33:27,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 05:33:27,658.658 INFO    ] 200
[2026-10-25 05:33:27,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:27,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:33:27,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:27,762.762 INFO    ] No camera update needed
[2026-10-25 05:33:27,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:33:27,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:33:27,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:33:27,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:33:29,818.818 INFO    ] ================================================
[2026-10-25 05:33:29,833.833 INFO    ] Launching Daemon at Sun Oct 25 05:33:29 IST 2026
[2026-10-25 05:33:29,844.844 INFO    ] ================================================
[2026-10-25 05:33:30,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:33:30
[2026-10-25 05:33:30,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:33:31,240.240 INFO    ] Initializing speech engine...
[2026-10-25 05:33:31,253.253 INFO    ] 2026-10-25 05:33:31
[2026-10-25 05:33:31,523.523 INFO    ] 2026-10-25 05:33:31
[2026-10-25 05:33:31,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:33:31,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:33:31,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:33:31,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:33:32,014.014 INFO    ] time= 25/10/2026 05:33:31
[2026-10-25 05:33:32,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:33:32,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:33:32,176.176 INFO    ] No existing commands found in stream
[2026-10-25 05:33:37,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:37,199.199 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 05:33:38,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:33:38,840.840 INFO    ] Checking for system updates...
[2026-10-25 05:33:38,876.876 INFO    ] 200
[2026-10-25 05:33:38,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:38,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:33:38,935.935 INFO    ] No update needed
[2026-10-25 05:33:38,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 05:33:38,972.972 INFO    ] 200
[2026-10-25 05:33:38,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:39,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:33:39,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:33:39,085.085 INFO    ] No camera update needed
[2026-10-25 05:33:39,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:33:39,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:33:39,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:33:39,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:33:41,141.141 INFO    ] ================================================
[2026-10-25 05:33:41,157.157 INFO    ] Launching Daemon at Sun Oct 25 05:33:41 IST 2026
[2026-10-25 05:33:41,168.168 INFO    ] ================================================
[2026-10-25 05:33:41,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:33:41
[2026-10-25 05:33:42,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:33:42,771.771 INFO    ] Initializing speech engine...
[2026-10-25 05:33:42,781.781 INFO    ] 2026-10-25 05:33:42
[2026-10-25 05:33:43,065.065 INFO    ] 2026-10-25 05:33:43
[2026-10-25 05:33:43,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:33:43,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:33:43,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:33:43,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:33:43,596.596 INFO    ] time= 25/10/2026 05:33:43
[2026-10-25 05:33:43,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:33:43,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:33:43,750.750 INFO    ] No existing commands found in stream
[2026-10-25 05:33:48,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:48,779.779 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:33:49,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:33:49,232.232 INFO    ] Checking for system updates...
[2026-10-25 05:33:49,273.273 INFO    ] 200
[2026-10-25 05:33:49,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:49,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:49,340.340 INFO    ] No update needed
[2026-10-25 05:33:49,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 05:33:49,377.377 INFO    ] 200
[2026-10-25 05:33:49,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:33:49,427.427 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:33:49,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:33:49,492.492 INFO    ] No camera update needed
[2026-10-25 05:33:49,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:33:49,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:33:49,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:33:49,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:33:51,548.548 INFO    ] ================================================
[2026-10-25 05:33:51,564.564 INFO    ] Launching Daemon at Sun Oct 25 05:33:51 IST 2026
[2026-10-25 05:33:51,575.575 INFO    ] ================================================
[2026-10-25 05:33:52,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:33:52
[2026-10-25 05:33:52,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:33:52,971.971 INFO    ] Initializing speech engine...
[2026-10-25 05:33:52,984.984 INFO    ] 2026-10-25 05:33:52
[2026-10-25 05:33:53,247.247 INFO    ] 2026-10-25 05:33:53
[2026-10-25 05:33:53,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:33:53,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:33:53,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:33:53,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:33:53,616.616 INFO    ] time= 25/10/2026 05:33:53
[2026-10-25 05:33:53,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:33:53,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:33:53,789.789 INFO    ] No existing commands found in stream
[2026-10-25 05:33:58,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:33:58,821.821 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 05:34:02,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:34:02,343.343 INFO    ] Checking for system updates...
[2026-10-25 05:34:02,383.383 INFO    ] 200
[2026-10-25 05:34:02,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:02,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:34:02,451.451 INFO    ] No update needed
[2026-10-25 05:34:02,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 05:34:02,491.491 INFO    ] 200
[2026-10-25 05:34:02,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:02,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:34:02,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:34:02,576.576 INFO    ] No camera update needed
[2026-10-25 05:34:02,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:34:02,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:34:02,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:34:02,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:34:04,638.638 INFO    ] ================================================
[2026-10-25 05:34:04,654.654 INFO    ] Launching Daemon at Sun Oct 25 05:34:04 IST 2026
[2026-10-25 05:34:04,665.665 INFO    ] ================================================
[2026-10-25 05:34:05,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:34:05
[2026-10-25 05:34:05,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:34:06,269.269 INFO    ] Initializing speech engine...
[2026-10-25 05:34:06,278.278 INFO    ] 2026-10-25 05:34:06
[2026-10-25 05:34:06,563.563 INFO    ] 2026-10-25 05:34:06
[2026-10-25 05:34:06,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:34:06,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:34:06,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:34:06,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:34:07,024.024 INFO    ] time= 25/10/2026 05:34:06
[2026-10-25 05:34:07,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:34:07,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:34:07,223.223 INFO    ] No existing commands found in stream
[2026-10-25 05:34:12,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:34:12,259.259 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 05:34:13,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:34:13,945.945 INFO    ] Checking for system updates...
[2026-10-25 05:34:13,983.983 INFO    ] 200
[2026-10-25 05:34:13,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:14,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:34:14,044.044 INFO    ] No update needed
[2026-10-25 05:34:14,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 05:34:14,082.082 INFO    ] 200
[2026-10-25 05:34:14,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:14,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:34:14,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:34:14,186.186 INFO    ] No camera update needed
[2026-10-25 05:34:14,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:34:14,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:34:14,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:34:14,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:34:16,241.241 INFO    ] ================================================
[2026-10-25 05:34:16,257.257 INFO    ] Launching Daemon at Sun Oct 25 05:34:16 IST 2026
[2026-10-25 05:34:16,268.268 INFO    ] ================================================
[2026-10-25 05:34:16,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:34:16
[2026-10-25 05:34:17,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:34:17,877.877 INFO    ] Initializing speech engine...
[2026-10-25 05:34:17,885.885 INFO    ] 2026-10-25 05:34:17
[2026-10-25 05:34:18,178.178 INFO    ] 2026-10-25 05:34:18
[2026-10-25 05:34:18,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:34:18,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:34:18,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:34:18,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:34:18,706.706 INFO    ] time= 25/10/2026 05:34:18
[2026-10-25 05:34:18,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:34:18,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:34:18,843.843 INFO    ] No existing commands found in stream
[2026-10-25 05:34:23,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:34:23,874.874 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 05:34:24,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:34:24,787.787 INFO    ] Checking for system updates...
[2026-10-25 05:34:24,824.824 INFO    ] 200
[2026-10-25 05:34:24,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:24,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:24,884.884 INFO    ] No update needed
[2026-10-25 05:34:24,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 05:34:24,925.925 INFO    ] 200
[2026-10-25 05:34:24,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:24,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:34:25,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:25,045.045 INFO    ] No camera update needed
[2026-10-25 05:34:25,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:34:25,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:34:25,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:34:25,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:34:27,099.099 INFO    ] ================================================
[2026-10-25 05:34:27,114.114 INFO    ] Launching Daemon at Sun Oct 25 05:34:27 IST 2026
[2026-10-25 05:34:27,125.125 INFO    ] ================================================
[2026-10-25 05:34:27,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:34:27
[2026-10-25 05:34:28,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:34:28,526.526 INFO    ] Initializing speech engine...
[2026-10-25 05:34:28,535.535 INFO    ] 2026-10-25 05:34:28
[2026-10-25 05:34:28,829.829 INFO    ] 2026-10-25 05:34:28
[2026-10-25 05:34:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:34:29,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:34:29,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:34:29,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:34:29,864.864 INFO    ] time= 25/10/2026 05:34:29
[2026-10-25 05:34:29,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:34:29,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:34:30,042.042 INFO    ] No existing commands found in stream
[2026-10-25 05:34:35,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:34:35,075.075 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 05:34:38,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:34:38,527.527 INFO    ] Checking for system updates...
[2026-10-25 05:34:38,564.564 INFO    ] 200
[2026-10-25 05:34:38,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:38,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:38,621.621 INFO    ] No update needed
[2026-10-25 05:34:38,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 05:34:38,658.658 INFO    ] 200
[2026-10-25 05:34:38,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:38,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:34:38,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:38,768.768 INFO    ] No camera update needed
[2026-10-25 05:34:38,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:34:38,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:34:38,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:34:38,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:34:40,825.825 INFO    ] ================================================
[2026-10-25 05:34:40,840.840 INFO    ] Launching Daemon at Sun Oct 25 05:34:40 IST 2026
[2026-10-25 05:34:40,851.851 INFO    ] ================================================
[2026-10-25 05:34:41,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:34:41
[2026-10-25 05:34:42,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:34:42,436.436 INFO    ] Initializing speech engine...
[2026-10-25 05:34:42,441.441 INFO    ] 2026-10-25 05:34:42
[2026-10-25 05:34:42,726.726 INFO    ] 2026-10-25 05:34:42
[2026-10-25 05:34:42,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:34:42,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:34:43,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:34:43,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:34:43,184.184 INFO    ] time= 25/10/2026 05:34:43
[2026-10-25 05:34:43,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:34:43,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:34:43,388.388 INFO    ] No existing commands found in stream
[2026-10-25 05:34:48,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:34:48,417.417 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 05:34:49,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:34:49,759.759 INFO    ] Checking for system updates...
[2026-10-25 05:34:49,796.796 INFO    ] 200
[2026-10-25 05:34:49,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:49,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:49,857.857 INFO    ] No update needed
[2026-10-25 05:34:49,860.860 INFO    ] Checking for camera pi updates...
[2026-10-25 05:34:49,895.895 INFO    ] 200
[2026-10-25 05:34:49,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:34:49,940.940 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:34:49,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:34:49,994.994 INFO    ] No camera update needed
[2026-10-25 05:34:49,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:34:50,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:34:50,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:34:50,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:34:52,053.053 INFO    ] ================================================
[2026-10-25 05:34:52,068.068 INFO    ] Launching Daemon at Sun Oct 25 05:34:52 IST 2026
[2026-10-25 05:34:52,078.078 INFO    ] ================================================
[2026-10-25 05:34:52,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:34:52
[2026-10-25 05:34:53,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:34:53,690.690 INFO    ] Initializing speech engine...
[2026-10-25 05:34:53,704.704 INFO    ] 2026-10-25 05:34:53
[2026-10-25 05:34:53,987.987 INFO    ] 2026-10-25 05:34:53
[2026-10-25 05:34:54,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:34:54,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:34:54,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:34:54,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:34:54,515.515 INFO    ] time= 25/10/2026 05:34:54
[2026-10-25 05:34:54,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:34:54,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:34:54,667.667 INFO    ] No existing commands found in stream
[2026-10-25 05:34:59,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:34:59,688.688 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 05:35:01,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:35:01,232.232 INFO    ] Checking for system updates...
[2026-10-25 05:35:01,270.270 INFO    ] 200
[2026-10-25 05:35:01,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:01,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:35:01,329.329 INFO    ] No update needed
[2026-10-25 05:35:01,332.332 INFO    ] Checking for camera pi updates...
[2026-10-25 05:35:01,367.367 INFO    ] 200
[2026-10-25 05:35:01,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:01,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:35:01,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:35:01,537.537 INFO    ] No camera update needed
[2026-10-25 05:35:01,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:35:01,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:35:01,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:35:01,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:35:03,700.700 INFO    ] ================================================
[2026-10-25 05:35:03,715.715 INFO    ] Launching Daemon at Sun Oct 25 05:35:03 IST 2026
[2026-10-25 05:35:03,726.726 INFO    ] ================================================
[2026-10-25 05:35:04,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:35:04
[2026-10-25 05:35:05,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:35:05,329.329 INFO    ] Initializing speech engine...
[2026-10-25 05:35:05,338.338 INFO    ] 2026-10-25 05:35:05
[2026-10-25 05:35:05,624.624 INFO    ] 2026-10-25 05:35:05
[2026-10-25 05:35:05,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:35:05,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:35:05,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:35:06,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:35:06,114.114 INFO    ] time= 25/10/2026 05:35:06
[2026-10-25 05:35:06,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:35:06,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:35:06,315.315 INFO    ] No existing commands found in stream
[2026-10-25 05:35:11,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:35:11,345.345 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 05:35:13,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:35:13,113.113 INFO    ] Checking for system updates...
[2026-10-25 05:35:13,154.154 INFO    ] 200
[2026-10-25 05:35:13,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:13,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:13,218.218 INFO    ] No update needed
[2026-10-25 05:35:13,221.221 INFO    ] Checking for camera pi updates...
[2026-10-25 05:35:13,257.257 INFO    ] 200
[2026-10-25 05:35:13,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:13,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:35:13,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:13,355.355 INFO    ] No camera update needed
[2026-10-25 05:35:13,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:35:13,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:35:13,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:35:13,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:35:15,415.415 INFO    ] ================================================
[2026-10-25 05:35:15,430.430 INFO    ] Launching Daemon at Sun Oct 25 05:35:15 IST 2026
[2026-10-25 05:35:15,441.441 INFO    ] ================================================
[2026-10-25 05:35:16,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:35:16
[2026-10-25 05:35:16,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:35:16,887.887 INFO    ] Initializing speech engine...
[2026-10-25 05:35:16,896.896 INFO    ] 2026-10-25 05:35:16
[2026-10-25 05:35:17,142.142 INFO    ] 2026-10-25 05:35:17
[2026-10-25 05:35:17,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:35:17,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:35:17,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:35:17,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:35:17,600.600 INFO    ] time= 25/10/2026 05:35:17
[2026-10-25 05:35:17,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:35:17,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:35:17,768.768 INFO    ] No existing commands found in stream
[2026-10-25 05:35:22,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:35:22,782.782 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 05:35:23,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:35:23,399.399 INFO    ] Checking for system updates...
[2026-10-25 05:35:23,437.437 INFO    ] 200
[2026-10-25 05:35:23,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:23,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:23,502.502 INFO    ] No update needed
[2026-10-25 05:35:23,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 05:35:23,541.541 INFO    ] 200
[2026-10-25 05:35:23,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:23,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:35:23,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:23,743.743 INFO    ] No camera update needed
[2026-10-25 05:35:23,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:35:23,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:35:23,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:35:23,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:35:25,803.803 INFO    ] ================================================
[2026-10-25 05:35:25,818.818 INFO    ] Launching Daemon at Sun Oct 25 05:35:25 IST 2026
[2026-10-25 05:35:25,829.829 INFO    ] ================================================
[2026-10-25 05:35:26,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:35:26
[2026-10-25 05:35:27,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:35:27,281.281 INFO    ] Initializing speech engine...
[2026-10-25 05:35:27,290.290 INFO    ] 2026-10-25 05:35:27
[2026-10-25 05:35:27,546.546 INFO    ] 2026-10-25 05:35:27
[2026-10-25 05:35:27,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:35:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:35:27,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:35:27,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:35:28,029.029 INFO    ] time= 25/10/2026 05:35:27
[2026-10-25 05:35:28,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:35:28,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:35:28,213.213 INFO    ] No existing commands found in stream
[2026-10-25 05:35:33,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:35:33,246.246 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 05:35:37,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:35:37,026.026 INFO    ] Checking for system updates...
[2026-10-25 05:35:37,062.062 INFO    ] 200
[2026-10-25 05:35:37,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:37,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:37,120.120 INFO    ] No update needed
[2026-10-25 05:35:37,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 05:35:37,156.156 INFO    ] 200
[2026-10-25 05:35:37,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:37,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:35:37,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:35:37,335.335 INFO    ] No camera update needed
[2026-10-25 05:35:37,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:35:37,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:35:37,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:35:37,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:35:39,391.391 INFO    ] ================================================
[2026-10-25 05:35:39,406.406 INFO    ] Launching Daemon at Sun Oct 25 05:35:39 IST 2026
[2026-10-25 05:35:39,416.416 INFO    ] ================================================
[2026-10-25 05:35:40,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:35:39
[2026-10-25 05:35:40,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:35:40,878.878 INFO    ] Initializing speech engine...
[2026-10-25 05:35:40,883.883 INFO    ] 2026-10-25 05:35:40
[2026-10-25 05:35:41,145.145 INFO    ] 2026-10-25 05:35:41
[2026-10-25 05:35:41,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:35:41,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:35:41,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:35:41,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:35:41,625.625 INFO    ] time= 25/10/2026 05:35:41
[2026-10-25 05:35:41,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:35:41,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:35:41,819.819 INFO    ] No existing commands found in stream
[2026-10-25 05:35:46,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:35:46,854.854 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 05:35:49,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:35:49,422.422 INFO    ] Checking for system updates...
[2026-10-25 05:35:49,459.459 INFO    ] 200
[2026-10-25 05:35:49,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:49,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:35:49,517.517 INFO    ] No update needed
[2026-10-25 05:35:49,519.519 INFO    ] Checking for camera pi updates...
[2026-10-25 05:35:49,553.553 INFO    ] 200
[2026-10-25 05:35:49,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:35:49,600.600 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:35:49,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:35:49,654.654 INFO    ] No camera update needed
[2026-10-25 05:35:49,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:35:49,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:35:49,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:35:49,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:35:51,710.710 INFO    ] ================================================
[2026-10-25 05:35:51,725.725 INFO    ] Launching Daemon at Sun Oct 25 05:35:51 IST 2026
[2026-10-25 05:35:51,736.736 INFO    ] ================================================
[2026-10-25 05:35:52,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:35:52
[2026-10-25 05:35:53,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:35:53,360.360 INFO    ] Initializing speech engine...
[2026-10-25 05:35:53,370.370 INFO    ] 2026-10-25 05:35:53
[2026-10-25 05:35:53,652.652 INFO    ] 2026-10-25 05:35:53
[2026-10-25 05:35:53,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:35:53,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:35:53,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:35:54,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:35:54,198.198 INFO    ] time= 25/10/2026 05:35:54
[2026-10-25 05:35:54,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:35:54,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:35:54,332.332 INFO    ] No existing commands found in stream
[2026-10-25 05:35:59,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:35:59,361.361 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 05:36:03,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:36:03,658.658 INFO    ] Checking for system updates...
[2026-10-25 05:36:03,695.695 INFO    ] 200
[2026-10-25 05:36:03,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:03,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:36:03,760.760 INFO    ] No update needed
[2026-10-25 05:36:03,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 05:36:03,799.799 INFO    ] 200
[2026-10-25 05:36:03,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:03,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:36:03,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:36:03,896.896 INFO    ] No camera update needed
[2026-10-25 05:36:03,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:36:03,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:36:03,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:36:03,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:36:05,949.949 INFO    ] ================================================
[2026-10-25 05:36:05,964.964 INFO    ] Launching Daemon at Sun Oct 25 05:36:05 IST 2026
[2026-10-25 05:36:05,975.975 INFO    ] ================================================
[2026-10-25 05:36:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:36:06
[2026-10-25 05:36:07,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:36:07,416.416 INFO    ] Initializing speech engine...
[2026-10-25 05:36:07,430.430 INFO    ] 2026-10-25 05:36:07
[2026-10-25 05:36:07,685.685 INFO    ] 2026-10-25 05:36:07
[2026-10-25 05:36:07,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:36:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:36:07,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:36:08,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:36:08,183.183 INFO    ] time= 25/10/2026 05:36:08
[2026-10-25 05:36:08,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:36:08,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:36:08,297.297 INFO    ] No existing commands found in stream
[2026-10-25 05:36:13,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:36:13,312.312 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 05:36:14,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:36:14,576.576 INFO    ] Checking for system updates...
[2026-10-25 05:36:14,613.613 INFO    ] 200
[2026-10-25 05:36:14,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:14,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:14,670.670 INFO    ] No update needed
[2026-10-25 05:36:14,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 05:36:14,708.708 INFO    ] 200
[2026-10-25 05:36:14,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:14,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:36:14,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:14,804.804 INFO    ] No camera update needed
[2026-10-25 05:36:14,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:36:14,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:36:14,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:36:14,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:36:16,861.861 INFO    ] ================================================
[2026-10-25 05:36:16,875.875 INFO    ] Launching Daemon at Sun Oct 25 05:36:16 IST 2026
[2026-10-25 05:36:16,886.886 INFO    ] ================================================
[2026-10-25 05:36:17,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:36:17
[2026-10-25 05:36:18,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:36:18,299.299 INFO    ] Initializing speech engine...
[2026-10-25 05:36:18,313.313 INFO    ] 2026-10-25 05:36:18
[2026-10-25 05:36:18,559.559 INFO    ] 2026-10-25 05:36:18
[2026-10-25 05:36:18,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:36:18,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:36:18,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:36:18,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:36:18,930.930 INFO    ] time= 25/10/2026 05:36:18
[2026-10-25 05:36:18,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:36:18,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:36:19,106.106 INFO    ] No existing commands found in stream
[2026-10-25 05:36:24,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:36:24,134.134 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 05:36:27,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:36:27,182.182 INFO    ] Checking for system updates...
[2026-10-25 05:36:27,219.219 INFO    ] 200
[2026-10-25 05:36:27,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:27,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:36:27,280.280 INFO    ] No update needed
[2026-10-25 05:36:27,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 05:36:27,317.317 INFO    ] 200
[2026-10-25 05:36:27,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:27,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:36:27,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:36:27,443.443 INFO    ] No camera update needed
[2026-10-25 05:36:27,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:36:27,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:36:27,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:36:27,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:36:29,498.498 INFO    ] ================================================
[2026-10-25 05:36:29,513.513 INFO    ] Launching Daemon at Sun Oct 25 05:36:29 IST 2026
[2026-10-25 05:36:29,524.524 INFO    ] ================================================
[2026-10-25 05:36:30,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:36:30
[2026-10-25 05:36:30,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:36:30,925.925 INFO    ] Initializing speech engine...
[2026-10-25 05:36:30,934.934 INFO    ] 2026-10-25 05:36:30
[2026-10-25 05:36:31,225.225 INFO    ] 2026-10-25 05:36:31
[2026-10-25 05:36:31,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:36:31,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:36:31,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:36:31,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:36:31,638.638 INFO    ] time= 25/10/2026 05:36:31
[2026-10-25 05:36:31,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:36:31,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:36:31,726.726 INFO    ] No existing commands found in stream
[2026-10-25 05:36:36,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:36:36,742.742 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 05:36:41,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:36:41,131.131 INFO    ] Checking for system updates...
[2026-10-25 05:36:41,167.167 INFO    ] 200
[2026-10-25 05:36:41,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:41,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:41,224.224 INFO    ] No update needed
[2026-10-25 05:36:41,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 05:36:41,261.261 INFO    ] 200
[2026-10-25 05:36:41,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:41,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:36:41,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:41,361.361 INFO    ] No camera update needed
[2026-10-25 05:36:41,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:36:41,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:36:41,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:36:41,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:36:43,416.416 INFO    ] ================================================
[2026-10-25 05:36:43,431.431 INFO    ] Launching Daemon at Sun Oct 25 05:36:43 IST 2026
[2026-10-25 05:36:43,442.442 INFO    ] ================================================
[2026-10-25 05:36:44,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:36:44
[2026-10-25 05:36:44,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:36:44,842.842 INFO    ] Initializing speech engine...
[2026-10-25 05:36:44,849.849 INFO    ] 2026-10-25 05:36:44
[2026-10-25 05:36:45,145.145 INFO    ] 2026-10-25 05:36:45
[2026-10-25 05:36:45,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:36:45,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:36:45,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:36:45,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:36:45,541.541 INFO    ] time= 25/10/2026 05:36:45
[2026-10-25 05:36:45,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:36:45,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:36:45,650.650 INFO    ] No existing commands found in stream
[2026-10-25 05:36:50,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:36:50,664.664 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 05:36:53,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:36:53,166.166 INFO    ] Checking for system updates...
[2026-10-25 05:36:53,202.202 INFO    ] 200
[2026-10-25 05:36:53,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:53,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:53,259.259 INFO    ] No update needed
[2026-10-25 05:36:53,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 05:36:53,295.295 INFO    ] 200
[2026-10-25 05:36:53,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:36:53,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:36:53,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:36:53,397.397 INFO    ] No camera update needed
[2026-10-25 05:36:53,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:36:53,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:36:53,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:36:53,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:36:55,453.453 INFO    ] ================================================
[2026-10-25 05:36:55,467.467 INFO    ] Launching Daemon at Sun Oct 25 05:36:55 IST 2026
[2026-10-25 05:36:55,478.478 INFO    ] ================================================
[2026-10-25 05:36:56,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:36:56
[2026-10-25 05:36:56,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:36:56,874.874 INFO    ] Initializing speech engine...
[2026-10-25 05:36:56,889.889 INFO    ] 2026-10-25 05:36:56
[2026-10-25 05:36:57,153.153 INFO    ] 2026-10-25 05:36:57
[2026-10-25 05:36:57,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:36:57,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:36:57,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:36:57,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:36:57,636.636 INFO    ] time= 25/10/2026 05:36:57
[2026-10-25 05:36:57,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:36:57,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:36:57,785.785 INFO    ] No existing commands found in stream
[2026-10-25 05:37:02,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:37:02,808.808 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 05:37:05,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:37:05,609.609 INFO    ] Checking for system updates...
[2026-10-25 05:37:05,646.646 INFO    ] 200
[2026-10-25 05:37:05,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:05,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:37:05,707.707 INFO    ] No update needed
[2026-10-25 05:37:05,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 05:37:05,747.747 INFO    ] 200
[2026-10-25 05:37:05,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:05,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:37:05,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:37:05,852.852 INFO    ] No camera update needed
[2026-10-25 05:37:05,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:37:05,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:37:05,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:37:05,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:37:07,913.913 INFO    ] ================================================
[2026-10-25 05:37:07,928.928 INFO    ] Launching Daemon at Sun Oct 25 05:37:07 IST 2026
[2026-10-25 05:37:07,939.939 INFO    ] ================================================
[2026-10-25 05:37:08,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:37:08
[2026-10-25 05:37:09,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:37:09,346.346 INFO    ] Initializing speech engine...
[2026-10-25 05:37:09,359.359 INFO    ] 2026-10-25 05:37:09
[2026-10-25 05:37:09,621.621 INFO    ] 2026-10-25 05:37:09
[2026-10-25 05:37:09,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:37:09,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:37:09,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:37:10,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:37:10,088.088 INFO    ] time= 25/10/2026 05:37:10
[2026-10-25 05:37:10,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:37:10,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:37:10,245.245 INFO    ] No existing commands found in stream
[2026-10-25 05:37:15,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:37:15,261.261 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 05:37:19,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:37:19,723.723 INFO    ] Checking for system updates...
[2026-10-25 05:37:19,779.779 INFO    ] 200
[2026-10-25 05:37:19,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:19,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:37:19,852.852 INFO    ] No update needed
[2026-10-25 05:37:19,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 05:37:19,897.897 INFO    ] 200
[2026-10-25 05:37:19,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:19,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:37:20,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:37:20,005.005 INFO    ] No camera update needed
[2026-10-25 05:37:20,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:37:20,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:37:20,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:37:20,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:37:22,072.072 INFO    ] ================================================
[2026-10-25 05:37:22,088.088 INFO    ] Launching Daemon at Sun Oct 25 05:37:22 IST 2026
[2026-10-25 05:37:22,099.099 INFO    ] ================================================
[2026-10-25 05:37:22,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:37:22
[2026-10-25 05:37:23,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:37:23,605.605 INFO    ] Initializing speech engine...
[2026-10-25 05:37:23,613.613 INFO    ] 2026-10-25 05:37:23
[2026-10-25 05:37:23,900.900 INFO    ] 2026-10-25 05:37:23
[2026-10-25 05:37:23,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:37:24,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:37:24,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:37:24,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:37:24,373.373 INFO    ] time= 25/10/2026 05:37:24
[2026-10-25 05:37:24,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:37:24,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:37:24,583.583 INFO    ] No existing commands found in stream
[2026-10-25 05:37:29,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:37:29,617.617 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 05:37:33,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:37:33,437.437 INFO    ] Checking for system updates...
[2026-10-25 05:37:33,474.474 INFO    ] 200
[2026-10-25 05:37:33,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:33,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:37:33,534.534 INFO    ] No update needed
[2026-10-25 05:37:33,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 05:37:33,571.571 INFO    ] 200
[2026-10-25 05:37:33,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:33,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:37:33,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:37:33,670.670 INFO    ] No camera update needed
[2026-10-25 05:37:33,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:37:33,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:37:33,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:37:33,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:37:35,730.730 INFO    ] ================================================
[2026-10-25 05:37:35,745.745 INFO    ] Launching Daemon at Sun Oct 25 05:37:35 IST 2026
[2026-10-25 05:37:35,755.755 INFO    ] ================================================
[2026-10-25 05:37:36,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:37:36
[2026-10-25 05:37:36,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:37:37,207.207 INFO    ] Initializing speech engine...
[2026-10-25 05:37:37,216.216 INFO    ] 2026-10-25 05:37:37
[2026-10-25 05:37:37,479.479 INFO    ] 2026-10-25 05:37:37
[2026-10-25 05:37:37,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:37:37,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:37:37,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:37:37,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:37:37,953.953 INFO    ] time= 25/10/2026 05:37:37
[2026-10-25 05:37:38,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:37:38,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:37:38,157.157 INFO    ] No existing commands found in stream
[2026-10-25 05:37:43,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:37:43,186.186 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 05:37:45,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:37:45,508.508 INFO    ] Checking for system updates...
[2026-10-25 05:37:45,544.544 INFO    ] 200
[2026-10-25 05:37:45,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:45,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:37:45,609.609 INFO    ] No update needed
[2026-10-25 05:37:45,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 05:37:45,645.645 INFO    ] 200
[2026-10-25 05:37:45,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:45,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:37:45,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:37:45,742.742 INFO    ] No camera update needed
[2026-10-25 05:37:45,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:37:45,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:37:45,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:37:45,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:37:47,798.798 INFO    ] ================================================
[2026-10-25 05:37:47,813.813 INFO    ] Launching Daemon at Sun Oct 25 05:37:47 IST 2026
[2026-10-25 05:37:47,824.824 INFO    ] ================================================
[2026-10-25 05:37:48,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:37:48
[2026-10-25 05:37:49,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:37:49,299.299 INFO    ] Initializing speech engine...
[2026-10-25 05:37:49,314.314 INFO    ] 2026-10-25 05:37:49
[2026-10-25 05:37:49,580.580 INFO    ] 2026-10-25 05:37:49
[2026-10-25 05:37:49,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:37:49,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:37:49,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:37:50,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:37:50,027.027 INFO    ] time= 25/10/2026 05:37:50
[2026-10-25 05:37:50,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:37:50,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:37:50,209.209 INFO    ] No existing commands found in stream
[2026-10-25 05:37:55,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:37:55,224.224 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 05:37:59,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:37:59,792.792 INFO    ] Checking for system updates...
[2026-10-25 05:37:59,829.829 INFO    ] 200
[2026-10-25 05:37:59,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:59,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:37:59,896.896 INFO    ] No update needed
[2026-10-25 05:37:59,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 05:37:59,936.936 INFO    ] 200
[2026-10-25 05:37:59,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:37:59,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:38:00,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:38:00,062.062 INFO    ] No camera update needed
[2026-10-25 05:38:00,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:38:00,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:38:00,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:38:00,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:38:02,117.117 INFO    ] ================================================
[2026-10-25 05:38:02,138.138 INFO    ] Launching Daemon at Sun Oct 25 05:38:02 IST 2026
[2026-10-25 05:38:02,154.154 INFO    ] ================================================
[2026-10-25 05:38:02,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:38:02
[2026-10-25 05:38:03,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:38:03,717.717 INFO    ] Initializing speech engine...
[2026-10-25 05:38:03,735.735 INFO    ] 2026-10-25 05:38:03
[2026-10-25 05:38:04,016.016 INFO    ] 2026-10-25 05:38:04
[2026-10-25 05:38:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:38:04,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:38:04,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:38:04,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:38:04,505.505 INFO    ] time= 25/10/2026 05:38:04
[2026-10-25 05:38:04,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:38:04,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:38:04,695.695 INFO    ] No existing commands found in stream
[2026-10-25 05:38:09,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:38:09,736.736 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 05:38:13,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:38:13,486.486 INFO    ] Checking for system updates...
[2026-10-25 05:38:13,523.523 INFO    ] 200
[2026-10-25 05:38:13,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:13,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:13,581.581 INFO    ] No update needed
[2026-10-25 05:38:13,584.584 INFO    ] Checking for camera pi updates...
[2026-10-25 05:38:13,618.618 INFO    ] 200
[2026-10-25 05:38:13,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:13,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:38:13,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:13,729.729 INFO    ] No camera update needed
[2026-10-25 05:38:13,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:38:13,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:38:13,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:38:13,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:38:15,783.783 INFO    ] ================================================
[2026-10-25 05:38:15,798.798 INFO    ] Launching Daemon at Sun Oct 25 05:38:15 IST 2026
[2026-10-25 05:38:15,808.808 INFO    ] ================================================
[2026-10-25 05:38:16,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:38:16
[2026-10-25 05:38:17,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:38:17,289.289 INFO    ] Initializing speech engine...
[2026-10-25 05:38:17,297.297 INFO    ] 2026-10-25 05:38:17
[2026-10-25 05:38:17,546.546 INFO    ] 2026-10-25 05:38:17
[2026-10-25 05:38:17,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:38:17,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:38:17,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:38:17,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:38:17,995.995 INFO    ] time= 25/10/2026 05:38:17
[2026-10-25 05:38:18,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:38:18,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:38:18,157.157 INFO    ] No existing commands found in stream
[2026-10-25 05:38:23,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:38:23,172.172 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 05:38:26,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:38:26,552.552 INFO    ] Checking for system updates...
[2026-10-25 05:38:26,593.593 INFO    ] 200
[2026-10-25 05:38:26,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:26,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:26,650.650 INFO    ] No update needed
[2026-10-25 05:38:26,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 05:38:26,690.690 INFO    ] 200
[2026-10-25 05:38:26,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:26,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:38:26,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:26,787.787 INFO    ] No camera update needed
[2026-10-25 05:38:26,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:38:26,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:38:26,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:38:26,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:38:28,840.840 INFO    ] ================================================
[2026-10-25 05:38:28,855.855 INFO    ] Launching Daemon at Sun Oct 25 05:38:28 IST 2026
[2026-10-25 05:38:28,866.866 INFO    ] ================================================
[2026-10-25 05:38:29,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:38:29
[2026-10-25 05:38:30,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:38:30,360.360 INFO    ] Initializing speech engine...
[2026-10-25 05:38:30,369.369 INFO    ] 2026-10-25 05:38:30
[2026-10-25 05:38:30,655.655 INFO    ] 2026-10-25 05:38:30
[2026-10-25 05:38:30,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:38:30,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:38:30,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:38:31,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:38:31,175.175 INFO    ] time= 25/10/2026 05:38:31
[2026-10-25 05:38:31,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:38:31,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:38:31,319.319 INFO    ] No existing commands found in stream
[2026-10-25 05:38:36,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:38:36,346.346 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 05:38:39,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:38:39,428.428 INFO    ] Checking for system updates...
[2026-10-25 05:38:39,468.468 INFO    ] 200
[2026-10-25 05:38:39,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:39,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:38:39,530.530 INFO    ] No update needed
[2026-10-25 05:38:39,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 05:38:39,568.568 INFO    ] 200
[2026-10-25 05:38:39,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:39,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:38:39,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:38:39,676.676 INFO    ] No camera update needed
[2026-10-25 05:38:39,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:38:39,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:38:39,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:38:39,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:38:41,731.731 INFO    ] ================================================
[2026-10-25 05:38:41,746.746 INFO    ] Launching Daemon at Sun Oct 25 05:38:41 IST 2026
[2026-10-25 05:38:41,757.757 INFO    ] ================================================
[2026-10-25 05:38:42,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:38:42
[2026-10-25 05:38:42,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:38:43,178.178 INFO    ] Initializing speech engine...
[2026-10-25 05:38:43,191.191 INFO    ] 2026-10-25 05:38:43
[2026-10-25 05:38:43,437.437 INFO    ] 2026-10-25 05:38:43
[2026-10-25 05:38:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:38:43,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:38:43,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:38:43,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:38:43,943.943 INFO    ] time= 25/10/2026 05:38:43
[2026-10-25 05:38:43,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:38:44,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:38:44,126.126 INFO    ] No existing commands found in stream
[2026-10-25 05:38:49,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:38:49,162.162 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 05:38:50,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:38:50,169.169 INFO    ] Checking for system updates...
[2026-10-25 05:38:50,219.219 INFO    ] 200
[2026-10-25 05:38:50,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:50,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:50,279.279 INFO    ] No update needed
[2026-10-25 05:38:50,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 05:38:50,316.316 INFO    ] 200
[2026-10-25 05:38:50,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:38:50,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:38:50,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:38:50,412.412 INFO    ] No camera update needed
[2026-10-25 05:38:50,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:38:50,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:38:50,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:38:50,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:38:52,468.468 INFO    ] ================================================
[2026-10-25 05:38:52,483.483 INFO    ] Launching Daemon at Sun Oct 25 05:38:52 IST 2026
[2026-10-25 05:38:52,494.494 INFO    ] ================================================
[2026-10-25 05:38:53,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:38:53
[2026-10-25 05:38:53,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:38:53,898.898 INFO    ] Initializing speech engine...
[2026-10-25 05:38:53,911.911 INFO    ] 2026-10-25 05:38:53
[2026-10-25 05:38:54,176.176 INFO    ] 2026-10-25 05:38:54
[2026-10-25 05:38:54,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:38:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:38:54,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:38:54,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:38:54,551.551 INFO    ] time= 25/10/2026 05:38:54
[2026-10-25 05:38:54,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:38:54,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:38:54,698.698 INFO    ] No existing commands found in stream
[2026-10-25 05:38:59,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:38:59,731.731 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 05:39:02,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:39:03,003.003 INFO    ] Checking for system updates...
[2026-10-25 05:39:03,047.047 INFO    ] 200
[2026-10-25 05:39:03,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:03,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:03,123.123 INFO    ] No update needed
[2026-10-25 05:39:03,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 05:39:03,190.190 INFO    ] 200
[2026-10-25 05:39:03,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:03,252.252 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:39:03,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:03,319.319 INFO    ] No camera update needed
[2026-10-25 05:39:03,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:39:03,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:39:03,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:39:03,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:39:05,383.383 INFO    ] ================================================
[2026-10-25 05:39:05,399.399 INFO    ] Launching Daemon at Sun Oct 25 05:39:05 IST 2026
[2026-10-25 05:39:05,413.413 INFO    ] ================================================
[2026-10-25 05:39:05,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:39:05
[2026-10-25 05:39:06,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:39:06,849.849 INFO    ] Initializing speech engine...
[2026-10-25 05:39:06,856.856 INFO    ] 2026-10-25 05:39:06
[2026-10-25 05:39:07,102.102 INFO    ] 2026-10-25 05:39:07
[2026-10-25 05:39:07,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:39:07,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:39:07,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:39:07,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:39:07,560.560 INFO    ] time= 25/10/2026 05:39:07
[2026-10-25 05:39:07,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:39:07,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:39:07,715.715 INFO    ] No existing commands found in stream
[2026-10-25 05:39:12,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:39:12,729.729 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 05:39:17,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:39:17,004.004 INFO    ] Checking for system updates...
[2026-10-25 05:39:17,041.041 INFO    ] 200
[2026-10-25 05:39:17,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:17,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:39:17,099.099 INFO    ] No update needed
[2026-10-25 05:39:17,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 05:39:17,137.137 INFO    ] 200
[2026-10-25 05:39:17,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:17,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:39:17,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:39:17,254.254 INFO    ] No camera update needed
[2026-10-25 05:39:17,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:39:17,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:39:17,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:39:17,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:39:19,311.311 INFO    ] ================================================
[2026-10-25 05:39:19,327.327 INFO    ] Launching Daemon at Sun Oct 25 05:39:19 IST 2026
[2026-10-25 05:39:19,338.338 INFO    ] ================================================
[2026-10-25 05:39:19,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:39:19
[2026-10-25 05:39:20,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:39:20,894.894 INFO    ] Initializing speech engine...
[2026-10-25 05:39:20,901.901 INFO    ] 2026-10-25 05:39:20
[2026-10-25 05:39:21,190.190 INFO    ] 2026-10-25 05:39:21
[2026-10-25 05:39:21,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:39:21,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:39:21,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:39:21,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:39:21,637.637 INFO    ] time= 25/10/2026 05:39:21
[2026-10-25 05:39:21,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:39:21,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:39:21,786.786 INFO    ] No existing commands found in stream
[2026-10-25 05:39:26,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:39:26,801.801 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 05:39:31,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:39:31,194.194 INFO    ] Checking for system updates...
[2026-10-25 05:39:31,230.230 INFO    ] 200
[2026-10-25 05:39:31,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:31,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:39:31,288.288 INFO    ] No update needed
[2026-10-25 05:39:31,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 05:39:31,325.325 INFO    ] 200
[2026-10-25 05:39:31,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:31,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:39:31,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:39:31,407.407 INFO    ] No camera update needed
[2026-10-25 05:39:31,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:39:31,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:39:31,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:39:31,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:39:33,462.462 INFO    ] ================================================
[2026-10-25 05:39:33,478.478 INFO    ] Launching Daemon at Sun Oct 25 05:39:33 IST 2026
[2026-10-25 05:39:33,489.489 INFO    ] ================================================
[2026-10-25 05:39:34,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:39:34
[2026-10-25 05:39:34,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:39:34,881.881 INFO    ] Initializing speech engine...
[2026-10-25 05:39:34,889.889 INFO    ] 2026-10-25 05:39:34
[2026-10-25 05:39:35,163.163 INFO    ] 2026-10-25 05:39:35
[2026-10-25 05:39:35,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:39:35,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:39:35,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:39:35,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:39:35,623.623 INFO    ] time= 25/10/2026 05:39:35
[2026-10-25 05:39:35,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:39:35,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:39:35,794.794 INFO    ] No existing commands found in stream
[2026-10-25 05:39:40,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:39:40,809.809 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 05:39:42,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:39:42,145.145 INFO    ] Checking for system updates...
[2026-10-25 05:39:42,181.181 INFO    ] 200
[2026-10-25 05:39:42,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:42,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:42,239.239 INFO    ] No update needed
[2026-10-25 05:39:42,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 05:39:42,276.276 INFO    ] 200
[2026-10-25 05:39:42,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:42,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:39:42,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:42,479.479 INFO    ] No camera update needed
[2026-10-25 05:39:42,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:39:42,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:39:42,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:39:42,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:39:44,534.534 INFO    ] ================================================
[2026-10-25 05:39:44,550.550 INFO    ] Launching Daemon at Sun Oct 25 05:39:44 IST 2026
[2026-10-25 05:39:44,561.561 INFO    ] ================================================
[2026-10-25 05:39:45,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:39:45
[2026-10-25 05:39:45,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:39:46,019.019 INFO    ] Initializing speech engine...
[2026-10-25 05:39:46,028.028 INFO    ] 2026-10-25 05:39:46
[2026-10-25 05:39:46,276.276 INFO    ] 2026-10-25 05:39:46
[2026-10-25 05:39:46,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:39:46,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:39:46,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:39:46,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:39:46,750.750 INFO    ] time= 25/10/2026 05:39:46
[2026-10-25 05:39:46,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:39:46,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:39:46,895.895 INFO    ] No existing commands found in stream
[2026-10-25 05:39:51,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:39:51,910.910 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 05:39:54,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:39:54,757.757 INFO    ] Checking for system updates...
[2026-10-25 05:39:54,793.793 INFO    ] 200
[2026-10-25 05:39:54,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:54,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:54,852.852 INFO    ] No update needed
[2026-10-25 05:39:54,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 05:39:54,889.889 INFO    ] 200
[2026-10-25 05:39:54,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:39:54,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:39:54,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:39:54,996.996 INFO    ] No camera update needed
[2026-10-25 05:39:54,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:39:55,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:39:55,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:39:55,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:39:57,054.054 INFO    ] ================================================
[2026-10-25 05:39:57,069.069 INFO    ] Launching Daemon at Sun Oct 25 05:39:57 IST 2026
[2026-10-25 05:39:57,080.080 INFO    ] ================================================
[2026-10-25 05:39:57,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:39:57
[2026-10-25 05:39:58,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:39:58,474.474 INFO    ] Initializing speech engine...
[2026-10-25 05:39:58,497.497 INFO    ] 2026-10-25 05:39:58
[2026-10-25 05:39:58,752.752 INFO    ] 2026-10-25 05:39:58
[2026-10-25 05:39:58,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:39:59,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:39:59,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:39:59,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:39:59,749.749 INFO    ] time= 25/10/2026 05:39:59
[2026-10-25 05:39:59,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:39:59,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:39:59,872.872 INFO    ] No existing commands found in stream
[2026-10-25 05:40:04,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:40:04,899.899 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 05:40:08,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:40:08,252.252 INFO    ] Checking for system updates...
[2026-10-25 05:40:08,288.288 INFO    ] 200
[2026-10-25 05:40:08,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:08,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:08,354.354 INFO    ] No update needed
[2026-10-25 05:40:08,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 05:40:08,390.390 INFO    ] 200
[2026-10-25 05:40:08,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:08,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:40:08,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:08,491.491 INFO    ] No camera update needed
[2026-10-25 05:40:08,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:40:08,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:40:08,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:40:08,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:40:10,547.547 INFO    ] ================================================
[2026-10-25 05:40:10,561.561 INFO    ] Launching Daemon at Sun Oct 25 05:40:10 IST 2026
[2026-10-25 05:40:10,572.572 INFO    ] ================================================
[2026-10-25 05:40:11,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:40:11
[2026-10-25 05:40:11,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:40:11,995.995 INFO    ] Initializing speech engine...
[2026-10-25 05:40:12,007.007 INFO    ] 2026-10-25 05:40:11
[2026-10-25 05:40:12,274.274 INFO    ] 2026-10-25 05:40:12
[2026-10-25 05:40:12,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:40:12,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:40:12,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:40:12,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:40:12,743.743 INFO    ] time= 25/10/2026 05:40:12
[2026-10-25 05:40:12,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:40:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:40:12,904.904 INFO    ] No existing commands found in stream
[2026-10-25 05:40:17,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:40:17,919.919 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 05:40:19,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:40:19,064.064 INFO    ] Checking for system updates...
[2026-10-25 05:40:19,100.100 INFO    ] 200
[2026-10-25 05:40:19,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:19,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:19,163.163 INFO    ] No update needed
[2026-10-25 05:40:19,165.165 INFO    ] Checking for camera pi updates...
[2026-10-25 05:40:19,200.200 INFO    ] 200
[2026-10-25 05:40:19,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:19,243.243 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:40:19,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:19,302.302 INFO    ] No camera update needed
[2026-10-25 05:40:19,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:40:19,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:40:19,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:40:19,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:40:21,361.361 INFO    ] ================================================
[2026-10-25 05:40:21,376.376 INFO    ] Launching Daemon at Sun Oct 25 05:40:21 IST 2026
[2026-10-25 05:40:21,386.386 INFO    ] ================================================
[2026-10-25 05:40:21,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:40:21
[2026-10-25 05:40:22,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:40:22,834.834 INFO    ] Initializing speech engine...
[2026-10-25 05:40:22,845.845 INFO    ] 2026-10-25 05:40:22
[2026-10-25 05:40:23,104.104 INFO    ] 2026-10-25 05:40:23
[2026-10-25 05:40:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:40:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:40:23,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:40:23,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:40:23,588.588 INFO    ] time= 25/10/2026 05:40:23
[2026-10-25 05:40:23,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:40:23,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:40:23,784.784 INFO    ] No existing commands found in stream
[2026-10-25 05:40:28,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:40:28,812.812 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 05:40:32,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:40:32,989.989 INFO    ] Checking for system updates...
[2026-10-25 05:40:33,030.030 INFO    ] 200
[2026-10-25 05:40:33,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:33,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:33,094.094 INFO    ] No update needed
[2026-10-25 05:40:33,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 05:40:33,136.136 INFO    ] 200
[2026-10-25 05:40:33,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:33,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:40:33,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:33,235.235 INFO    ] No camera update needed
[2026-10-25 05:40:33,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:40:33,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:40:33,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:40:33,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:40:35,295.295 INFO    ] ================================================
[2026-10-25 05:40:35,311.311 INFO    ] Launching Daemon at Sun Oct 25 05:40:35 IST 2026
[2026-10-25 05:40:35,322.322 INFO    ] ================================================
[2026-10-25 05:40:35,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:40:35
[2026-10-25 05:40:36,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:40:36,734.734 INFO    ] Initializing speech engine...
[2026-10-25 05:40:36,756.756 INFO    ] 2026-10-25 05:40:36
[2026-10-25 05:40:37,015.015 INFO    ] 2026-10-25 05:40:37
[2026-10-25 05:40:37,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:40:37,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:40:37,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:40:37,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:40:37,485.485 INFO    ] time= 25/10/2026 05:40:37
[2026-10-25 05:40:37,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:40:37,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:40:37,623.623 INFO    ] No existing commands found in stream
[2026-10-25 05:40:42,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:40:42,638.638 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 05:40:46,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:40:46,371.371 INFO    ] Checking for system updates...
[2026-10-25 05:40:46,406.406 INFO    ] 200
[2026-10-25 05:40:46,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:46,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:46,469.469 INFO    ] No update needed
[2026-10-25 05:40:46,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 05:40:46,509.509 INFO    ] 200
[2026-10-25 05:40:46,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:46,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:40:46,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:40:46,620.620 INFO    ] No camera update needed
[2026-10-25 05:40:46,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:40:46,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:40:46,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:40:46,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:40:48,680.680 INFO    ] ================================================
[2026-10-25 05:40:48,696.696 INFO    ] Launching Daemon at Sun Oct 25 05:40:48 IST 2026
[2026-10-25 05:40:48,707.707 INFO    ] ================================================
[2026-10-25 05:40:49,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:40:49
[2026-10-25 05:40:49,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:40:50,117.117 INFO    ] Initializing speech engine...
[2026-10-25 05:40:50,123.123 INFO    ] 2026-10-25 05:40:50
[2026-10-25 05:40:50,418.418 INFO    ] 2026-10-25 05:40:50
[2026-10-25 05:40:50,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:40:50,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:40:50,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:40:50,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:40:50,798.798 INFO    ] time= 25/10/2026 05:40:50
[2026-10-25 05:40:50,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:40:50,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:40:50,923.923 INFO    ] No existing commands found in stream
[2026-10-25 05:40:55,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:40:55,938.938 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 05:40:59,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:40:59,653.653 INFO    ] Checking for system updates...
[2026-10-25 05:40:59,696.696 INFO    ] 200
[2026-10-25 05:40:59,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:59,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:40:59,754.754 INFO    ] No update needed
[2026-10-25 05:40:59,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 05:40:59,790.790 INFO    ] 200
[2026-10-25 05:40:59,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:40:59,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:40:59,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:40:59,883.883 INFO    ] No camera update needed
[2026-10-25 05:40:59,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:40:59,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:40:59,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:40:59,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:41:01,943.943 INFO    ] ================================================
[2026-10-25 05:41:01,967.967 INFO    ] Launching Daemon at Sun Oct 25 05:41:01 IST 2026
[2026-10-25 05:41:01,982.982 INFO    ] ================================================
[2026-10-25 05:41:02,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:41:02
[2026-10-25 05:41:03,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:41:03,674.674 INFO    ] Initializing speech engine...
[2026-10-25 05:41:03,687.687 INFO    ] 2026-10-25 05:41:03
[2026-10-25 05:41:03,957.957 INFO    ] 2026-10-25 05:41:03
[2026-10-25 05:41:04,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:41:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:41:04,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:41:04,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:41:04,444.444 INFO    ] time= 25/10/2026 05:41:04
[2026-10-25 05:41:04,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:41:04,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:41:04,660.660 INFO    ] No existing commands found in stream
[2026-10-25 05:41:09,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:41:09,691.691 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 05:41:11,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:41:11,972.972 INFO    ] Checking for system updates...
[2026-10-25 05:41:12,009.009 INFO    ] 200
[2026-10-25 05:41:12,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:12,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:12,066.066 INFO    ] No update needed
[2026-10-25 05:41:12,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 05:41:12,103.103 INFO    ] 200
[2026-10-25 05:41:12,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:12,151.151 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:41:12,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:12,217.217 INFO    ] No camera update needed
[2026-10-25 05:41:12,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:41:12,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:41:12,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:41:12,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:41:14,272.272 INFO    ] ================================================
[2026-10-25 05:41:14,287.287 INFO    ] Launching Daemon at Sun Oct 25 05:41:14 IST 2026
[2026-10-25 05:41:14,298.298 INFO    ] ================================================
[2026-10-25 05:41:14,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:41:14
[2026-10-25 05:41:15,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:41:15,940.940 INFO    ] Initializing speech engine...
[2026-10-25 05:41:15,949.949 INFO    ] 2026-10-25 05:41:15
[2026-10-25 05:41:16,224.224 INFO    ] 2026-10-25 05:41:16
[2026-10-25 05:41:16,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:41:16,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:41:16,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:41:16,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:41:16,705.705 INFO    ] time= 25/10/2026 05:41:16
[2026-10-25 05:41:16,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:41:16,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:41:16,855.855 INFO    ] No existing commands found in stream
[2026-10-25 05:41:21,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:41:21,872.872 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 05:41:23,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:41:23,396.396 INFO    ] Checking for system updates...
[2026-10-25 05:41:23,434.434 INFO    ] 200
[2026-10-25 05:41:23,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:23,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:23,501.501 INFO    ] No update needed
[2026-10-25 05:41:23,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 05:41:23,544.544 INFO    ] 200
[2026-10-25 05:41:23,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:23,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:41:23,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:23,646.646 INFO    ] No camera update needed
[2026-10-25 05:41:23,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:41:23,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:41:23,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:41:23,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:41:25,704.704 INFO    ] ================================================
[2026-10-25 05:41:25,719.719 INFO    ] Launching Daemon at Sun Oct 25 05:41:25 IST 2026
[2026-10-25 05:41:25,729.729 INFO    ] ================================================
[2026-10-25 05:41:26,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:41:26
[2026-10-25 05:41:27,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:41:27,378.378 INFO    ] Initializing speech engine...
[2026-10-25 05:41:27,390.390 INFO    ] 2026-10-25 05:41:27
[2026-10-25 05:41:27,700.700 INFO    ] 2026-10-25 05:41:27
[2026-10-25 05:41:27,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:41:27,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:41:28,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:41:29,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:41:29,362.362 INFO    ] time= 25/10/2026 05:41:29
[2026-10-25 05:41:29,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:41:29,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:41:29,521.521 INFO    ] No existing commands found in stream
[2026-10-25 05:41:34,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:41:34,556.556 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 05:41:35,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:41:35,620.620 INFO    ] Checking for system updates...
[2026-10-25 05:41:35,658.658 INFO    ] 200
[2026-10-25 05:41:35,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:35,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:35,719.719 INFO    ] No update needed
[2026-10-25 05:41:35,722.722 INFO    ] Checking for camera pi updates...
[2026-10-25 05:41:35,758.758 INFO    ] 200
[2026-10-25 05:41:35,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:35,804.804 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:41:35,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:35,865.865 INFO    ] No camera update needed
[2026-10-25 05:41:35,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:41:35,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:41:35,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:41:35,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:41:37,923.923 INFO    ] ================================================
[2026-10-25 05:41:37,938.938 INFO    ] Launching Daemon at Sun Oct 25 05:41:37 IST 2026
[2026-10-25 05:41:37,948.948 INFO    ] ================================================
[2026-10-25 05:41:38,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:41:38
[2026-10-25 05:41:39,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:41:39,392.392 INFO    ] Initializing speech engine...
[2026-10-25 05:41:39,406.406 INFO    ] 2026-10-25 05:41:39
[2026-10-25 05:41:39,695.695 INFO    ] 2026-10-25 05:41:39
[2026-10-25 05:41:39,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:41:39,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:41:39,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:41:40,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:41:40,075.075 INFO    ] time= 25/10/2026 05:41:40
[2026-10-25 05:41:40,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:41:40,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:41:40,201.201 INFO    ] No existing commands found in stream
[2026-10-25 05:41:45,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:41:45,216.216 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 05:41:46,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:41:46,724.724 INFO    ] Checking for system updates...
[2026-10-25 05:41:46,760.760 INFO    ] 200
[2026-10-25 05:41:46,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:46,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:46,819.819 INFO    ] No update needed
[2026-10-25 05:41:46,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 05:41:46,857.857 INFO    ] 200
[2026-10-25 05:41:46,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:46,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:41:47,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:41:47,082.082 INFO    ] No camera update needed
[2026-10-25 05:41:47,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:41:47,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:41:47,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:41:47,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:41:49,136.136 INFO    ] ================================================
[2026-10-25 05:41:49,151.151 INFO    ] Launching Daemon at Sun Oct 25 05:41:49 IST 2026
[2026-10-25 05:41:49,162.162 INFO    ] ================================================
[2026-10-25 05:41:49,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:41:49
[2026-10-25 05:41:50,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:41:50,567.567 INFO    ] Initializing speech engine...
[2026-10-25 05:41:50,582.582 INFO    ] 2026-10-25 05:41:50
[2026-10-25 05:41:50,848.848 INFO    ] 2026-10-25 05:41:50
[2026-10-25 05:41:50,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:41:51,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:41:51,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:41:51,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:41:51,324.324 INFO    ] time= 25/10/2026 05:41:51
[2026-10-25 05:41:51,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:41:51,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:41:51,516.516 INFO    ] No existing commands found in stream
[2026-10-25 05:41:56,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:41:56,531.531 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 05:41:59,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:41:59,679.679 INFO    ] Checking for system updates...
[2026-10-25 05:41:59,715.715 INFO    ] 200
[2026-10-25 05:41:59,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:59,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:41:59,774.774 INFO    ] No update needed
[2026-10-25 05:41:59,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 05:41:59,810.810 INFO    ] 200
[2026-10-25 05:41:59,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:41:59,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:41:59,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:41:59,936.936 INFO    ] No camera update needed
[2026-10-25 05:41:59,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:41:59,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:41:59,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:41:59,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:42:02,996.996 INFO    ] ================================================
[2026-10-25 05:42:02,018.018 INFO    ] Launching Daemon at Sun Oct 25 05:42:02 IST 2026
[2026-10-25 05:42:02,035.035 INFO    ] ================================================
[2026-10-25 05:42:02,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:42:02
[2026-10-25 05:42:03,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:42:03,855.855 INFO    ] Initializing speech engine...
[2026-10-25 05:42:03,860.860 INFO    ] 2026-10-25 05:42:03
[2026-10-25 05:42:04,168.168 INFO    ] 2026-10-25 05:42:04
[2026-10-25 05:42:04,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:42:04,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:42:04,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:42:04,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:42:04,677.677 INFO    ] time= 25/10/2026 05:42:04
[2026-10-25 05:42:04,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:42:04,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:42:04,831.831 INFO    ] No existing commands found in stream
[2026-10-25 05:42:09,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:42:09,851.851 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 05:42:11,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:42:11,750.750 INFO    ] Checking for system updates...
[2026-10-25 05:42:11,789.789 INFO    ] 200
[2026-10-25 05:42:11,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:11,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:11,850.850 INFO    ] No update needed
[2026-10-25 05:42:11,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 05:42:11,889.889 INFO    ] 200
[2026-10-25 05:42:11,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:11,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:42:11,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:11,987.987 INFO    ] No camera update needed
[2026-10-25 05:42:11,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:42:11,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:42:11,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:42:12,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:42:14,046.046 INFO    ] ================================================
[2026-10-25 05:42:14,061.061 INFO    ] Launching Daemon at Sun Oct 25 05:42:14 IST 2026
[2026-10-25 05:42:14,072.072 INFO    ] ================================================
[2026-10-25 05:42:14,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:42:14
[2026-10-25 05:42:15,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:42:15,468.468 INFO    ] Initializing speech engine...
[2026-10-25 05:42:15,490.490 INFO    ] 2026-10-25 05:42:15
[2026-10-25 05:42:15,749.749 INFO    ] 2026-10-25 05:42:15
[2026-10-25 05:42:15,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:42:15,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:42:15,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:42:16,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:42:16,106.106 INFO    ] time= 25/10/2026 05:42:16
[2026-10-25 05:42:16,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:42:16,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:42:16,203.203 INFO    ] No existing commands found in stream
[2026-10-25 05:42:21,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:42:21,218.218 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 05:42:22,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:42:22,858.858 INFO    ] Checking for system updates...
[2026-10-25 05:42:22,898.898 INFO    ] 200
[2026-10-25 05:42:22,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:22,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:22,955.955 INFO    ] No update needed
[2026-10-25 05:42:22,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 05:42:22,991.991 INFO    ] 200
[2026-10-25 05:42:22,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:23,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:42:23,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:23,092.092 INFO    ] No camera update needed
[2026-10-25 05:42:23,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:42:23,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:42:23,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:42:23,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:42:25,147.147 INFO    ] ================================================
[2026-10-25 05:42:25,162.162 INFO    ] Launching Daemon at Sun Oct 25 05:42:25 IST 2026
[2026-10-25 05:42:25,173.173 INFO    ] ================================================
[2026-10-25 05:42:25,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:42:25
[2026-10-25 05:42:26,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:42:26,586.586 INFO    ] Initializing speech engine...
[2026-10-25 05:42:26,610.610 INFO    ] 2026-10-25 05:42:26
[2026-10-25 05:42:26,881.881 INFO    ] 2026-10-25 05:42:26
[2026-10-25 05:42:26,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:42:27,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:42:27,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:42:27,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:42:27,295.295 INFO    ] time= 25/10/2026 05:42:27
[2026-10-25 05:42:27,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:42:27,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:42:27,439.439 INFO    ] No existing commands found in stream
[2026-10-25 05:42:32,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:42:32,467.467 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 05:42:34,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:42:34,404.404 INFO    ] Checking for system updates...
[2026-10-25 05:42:34,451.451 INFO    ] 200
[2026-10-25 05:42:34,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:34,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:34,517.517 INFO    ] No update needed
[2026-10-25 05:42:34,520.520 INFO    ] Checking for camera pi updates...
[2026-10-25 05:42:34,568.568 INFO    ] 200
[2026-10-25 05:42:34,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:34,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:42:34,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:34,676.676 INFO    ] No camera update needed
[2026-10-25 05:42:34,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:42:34,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:42:34,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:42:34,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:42:36,735.735 INFO    ] ================================================
[2026-10-25 05:42:36,751.751 INFO    ] Launching Daemon at Sun Oct 25 05:42:36 IST 2026
[2026-10-25 05:42:36,761.761 INFO    ] ================================================
[2026-10-25 05:42:37,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:42:37
[2026-10-25 05:42:37,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:42:38,178.178 INFO    ] Initializing speech engine...
[2026-10-25 05:42:38,187.187 INFO    ] 2026-10-25 05:42:38
[2026-10-25 05:42:38,435.435 INFO    ] 2026-10-25 05:42:38
[2026-10-25 05:42:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:42:38,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:42:38,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:42:38,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:42:38,883.883 INFO    ] time= 25/10/2026 05:42:38
[2026-10-25 05:42:38,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:42:38,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:42:39,057.057 INFO    ] No existing commands found in stream
[2026-10-25 05:42:44,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:42:44,072.072 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 05:42:46,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:42:46,408.408 INFO    ] Checking for system updates...
[2026-10-25 05:42:46,444.444 INFO    ] 200
[2026-10-25 05:42:46,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:46,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:46,502.502 INFO    ] No update needed
[2026-10-25 05:42:46,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 05:42:46,539.539 INFO    ] 200
[2026-10-25 05:42:46,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:42:46,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:42:46,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:42:46,633.633 INFO    ] No camera update needed
[2026-10-25 05:42:46,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:42:46,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:42:46,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:42:46,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:42:48,689.689 INFO    ] ================================================
[2026-10-25 05:42:48,704.704 INFO    ] Launching Daemon at Sun Oct 25 05:42:48 IST 2026
[2026-10-25 05:42:48,716.716 INFO    ] ================================================
[2026-10-25 05:42:49,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:42:49
[2026-10-25 05:42:49,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:42:50,115.115 INFO    ] Initializing speech engine...
[2026-10-25 05:42:50,137.137 INFO    ] 2026-10-25 05:42:50
[2026-10-25 05:42:50,392.392 INFO    ] 2026-10-25 05:42:50
[2026-10-25 05:42:50,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:42:50,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:42:50,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:42:50,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:42:50,850.850 INFO    ] time= 25/10/2026 05:42:50
[2026-10-25 05:42:50,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:42:50,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:42:51,017.017 INFO    ] No existing commands found in stream
[2026-10-25 05:42:56,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:42:56,032.032 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 05:42:59,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:42:59,924.924 INFO    ] Checking for system updates...
[2026-10-25 05:42:59,966.966 INFO    ] 200
[2026-10-25 05:42:59,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:00,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:00,030.030 INFO    ] No update needed
[2026-10-25 05:43:00,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 05:43:00,069.069 INFO    ] 200
[2026-10-25 05:43:00,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:00,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:43:00,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:00,169.169 INFO    ] No camera update needed
[2026-10-25 05:43:00,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:43:00,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:43:00,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:43:00,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:43:02,229.229 INFO    ] ================================================
[2026-10-25 05:43:02,249.249 INFO    ] Launching Daemon at Sun Oct 25 05:43:02 IST 2026
[2026-10-25 05:43:02,262.262 INFO    ] ================================================
[2026-10-25 05:43:03,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:43:03
[2026-10-25 05:43:03,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:43:03,873.873 INFO    ] Initializing speech engine...
[2026-10-25 05:43:03,888.888 INFO    ] 2026-10-25 05:43:03
[2026-10-25 05:43:04,156.156 INFO    ] 2026-10-25 05:43:04
[2026-10-25 05:43:04,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:43:04,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:43:04,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:43:04,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:43:04,498.498 INFO    ] time= 25/10/2026 05:43:04
[2026-10-25 05:43:04,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:43:04,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:43:04,610.610 INFO    ] No existing commands found in stream
[2026-10-25 05:43:09,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:43:09,625.625 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 05:43:13,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:43:13,032.032 INFO    ] Checking for system updates...
[2026-10-25 05:43:13,067.067 INFO    ] 200
[2026-10-25 05:43:13,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:13,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:43:13,125.125 INFO    ] No update needed
[2026-10-25 05:43:13,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 05:43:13,162.162 INFO    ] 200
[2026-10-25 05:43:13,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:13,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:43:13,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:43:13,259.259 INFO    ] No camera update needed
[2026-10-25 05:43:13,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:43:13,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:43:13,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:43:13,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:43:15,315.315 INFO    ] ================================================
[2026-10-25 05:43:15,331.331 INFO    ] Launching Daemon at Sun Oct 25 05:43:15 IST 2026
[2026-10-25 05:43:15,342.342 INFO    ] ================================================
[2026-10-25 05:43:16,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:43:16
[2026-10-25 05:43:16,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:43:17,015.015 INFO    ] Initializing speech engine...
[2026-10-25 05:43:17,022.022 INFO    ] 2026-10-25 05:43:17
[2026-10-25 05:43:17,307.307 INFO    ] 2026-10-25 05:43:17
[2026-10-25 05:43:17,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:43:17,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:43:17,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:43:17,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:43:17,803.803 INFO    ] time= 25/10/2026 05:43:17
[2026-10-25 05:43:17,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:43:17,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:43:17,932.932 INFO    ] No existing commands found in stream
[2026-10-25 05:43:22,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:43:22,965.965 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 05:43:26,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:43:26,713.713 INFO    ] Checking for system updates...
[2026-10-25 05:43:26,750.750 INFO    ] 200
[2026-10-25 05:43:26,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:26,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:26,869.869 INFO    ] No update needed
[2026-10-25 05:43:26,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 05:43:26,910.910 INFO    ] 200
[2026-10-25 05:43:26,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:26,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:43:27,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:27,005.005 INFO    ] No camera update needed
[2026-10-25 05:43:27,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:43:27,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:43:27,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:43:27,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:43:29,062.062 INFO    ] ================================================
[2026-10-25 05:43:29,079.079 INFO    ] Launching Daemon at Sun Oct 25 05:43:29 IST 2026
[2026-10-25 05:43:29,090.090 INFO    ] ================================================
[2026-10-25 05:43:29,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:43:29
[2026-10-25 05:43:30,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:43:30,578.578 INFO    ] Initializing speech engine...
[2026-10-25 05:43:30,585.585 INFO    ] 2026-10-25 05:43:30
[2026-10-25 05:43:30,845.845 INFO    ] 2026-10-25 05:43:30
[2026-10-25 05:43:30,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:43:31,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:43:31,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:43:31,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:43:31,320.320 INFO    ] time= 25/10/2026 05:43:31
[2026-10-25 05:43:31,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:43:31,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:43:31,454.454 INFO    ] No existing commands found in stream
[2026-10-25 05:43:36,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:43:36,469.469 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 05:43:38,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:43:38,826.826 INFO    ] Checking for system updates...
[2026-10-25 05:43:38,874.874 INFO    ] 200
[2026-10-25 05:43:38,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:38,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:38,942.942 INFO    ] No update needed
[2026-10-25 05:43:38,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 05:43:38,982.982 INFO    ] 200
[2026-10-25 05:43:38,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:39,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:43:39,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:39,105.105 INFO    ] No camera update needed
[2026-10-25 05:43:39,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:43:39,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:43:39,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:43:39,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:43:41,160.160 INFO    ] ================================================
[2026-10-25 05:43:41,176.176 INFO    ] Launching Daemon at Sun Oct 25 05:43:41 IST 2026
[2026-10-25 05:43:41,188.188 INFO    ] ================================================
[2026-10-25 05:43:41,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:43:41
[2026-10-25 05:43:42,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:43:42,629.629 INFO    ] Initializing speech engine...
[2026-10-25 05:43:42,643.643 INFO    ] 2026-10-25 05:43:42
[2026-10-25 05:43:42,903.903 INFO    ] 2026-10-25 05:43:42
[2026-10-25 05:43:42,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:43:43,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:43:43,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:43:43,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:43:43,343.343 INFO    ] time= 25/10/2026 05:43:43
[2026-10-25 05:43:43,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:43:43,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:43:43,516.516 INFO    ] No existing commands found in stream
[2026-10-25 05:43:48,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:43:48,530.530 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 05:43:49,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:43:49,518.518 INFO    ] Checking for system updates...
[2026-10-25 05:43:49,554.554 INFO    ] 200
[2026-10-25 05:43:49,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:49,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:49,611.611 INFO    ] No update needed
[2026-10-25 05:43:49,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 05:43:49,647.647 INFO    ] 200
[2026-10-25 05:43:49,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:43:49,693.693 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:43:49,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:43:49,860.860 INFO    ] No camera update needed
[2026-10-25 05:43:49,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:43:49,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:43:49,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:43:49,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:43:51,917.917 INFO    ] ================================================
[2026-10-25 05:43:51,933.933 INFO    ] Launching Daemon at Sun Oct 25 05:43:51 IST 2026
[2026-10-25 05:43:51,944.944 INFO    ] ================================================
[2026-10-25 05:43:52,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:43:52
[2026-10-25 05:43:53,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:43:53,355.355 INFO    ] Initializing speech engine...
[2026-10-25 05:43:53,375.375 INFO    ] 2026-10-25 05:43:53
[2026-10-25 05:43:53,620.620 INFO    ] 2026-10-25 05:43:53
[2026-10-25 05:43:53,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:43:53,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:43:53,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:43:53,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:43:53,986.986 INFO    ] time= 25/10/2026 05:43:53
[2026-10-25 05:43:53,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:43:54,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:43:54,174.174 INFO    ] No existing commands found in stream
[2026-10-25 05:43:59,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:43:59,195.195 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 05:44:00,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:44:00,332.332 INFO    ] Checking for system updates...
[2026-10-25 05:44:00,368.368 INFO    ] 200
[2026-10-25 05:44:00,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:00,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:00,427.427 INFO    ] No update needed
[2026-10-25 05:44:00,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 05:44:00,463.463 INFO    ] 200
[2026-10-25 05:44:00,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:00,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:44:00,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:00,572.572 INFO    ] No camera update needed
[2026-10-25 05:44:00,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:44:00,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:44:00,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:44:00,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:44:02,649.649 INFO    ] ================================================
[2026-10-25 05:44:02,672.672 INFO    ] Launching Daemon at Sun Oct 25 05:44:02 IST 2026
[2026-10-25 05:44:02,689.689 INFO    ] ================================================
[2026-10-25 05:44:03,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:44:03
[2026-10-25 05:44:03,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:44:04,221.221 INFO    ] Initializing speech engine...
[2026-10-25 05:44:04,240.240 INFO    ] 2026-10-25 05:44:04
[2026-10-25 05:44:04,495.495 INFO    ] 2026-10-25 05:44:04
[2026-10-25 05:44:04,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:44:04,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:44:04,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:44:04,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:44:04,860.860 INFO    ] time= 25/10/2026 05:44:04
[2026-10-25 05:44:04,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:44:04,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:44:04,934.934 INFO    ] No existing commands found in stream
[2026-10-25 05:44:09,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:44:09,949.949 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 05:44:12,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:44:12,113.113 INFO    ] Checking for system updates...
[2026-10-25 05:44:12,159.159 INFO    ] 200
[2026-10-25 05:44:12,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:12,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:44:12,225.225 INFO    ] No update needed
[2026-10-25 05:44:12,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 05:44:12,266.266 INFO    ] 200
[2026-10-25 05:44:12,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:12,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:44:12,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:44:12,366.366 INFO    ] No camera update needed
[2026-10-25 05:44:12,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:44:12,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:44:12,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:44:12,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:44:14,423.423 INFO    ] ================================================
[2026-10-25 05:44:14,439.439 INFO    ] Launching Daemon at Sun Oct 25 05:44:14 IST 2026
[2026-10-25 05:44:14,450.450 INFO    ] ================================================
[2026-10-25 05:44:15,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:44:15
[2026-10-25 05:44:15,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:44:15,885.885 INFO    ] Initializing speech engine...
[2026-10-25 05:44:15,894.894 INFO    ] 2026-10-25 05:44:15
[2026-10-25 05:44:16,152.152 INFO    ] 2026-10-25 05:44:16
[2026-10-25 05:44:16,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:44:16,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:44:16,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:44:16,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:44:16,588.588 INFO    ] time= 25/10/2026 05:44:16
[2026-10-25 05:44:16,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:44:16,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:44:16,753.753 INFO    ] No existing commands found in stream
[2026-10-25 05:44:21,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:44:21,767.767 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 05:44:25,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:44:25,926.926 INFO    ] Checking for system updates...
[2026-10-25 05:44:25,967.967 INFO    ] 200
[2026-10-25 05:44:25,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:26,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:26,035.035 INFO    ] No update needed
[2026-10-25 05:44:26,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 05:44:26,072.072 INFO    ] 200
[2026-10-25 05:44:26,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:26,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:44:26,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:26,180.180 INFO    ] No camera update needed
[2026-10-25 05:44:26,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:44:26,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:44:26,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:44:26,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:44:28,237.237 INFO    ] ================================================
[2026-10-25 05:44:28,252.252 INFO    ] Launching Daemon at Sun Oct 25 05:44:28 IST 2026
[2026-10-25 05:44:28,264.264 INFO    ] ================================================
[2026-10-25 05:44:28,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:44:28
[2026-10-25 05:44:29,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:44:29,682.682 INFO    ] Initializing speech engine...
[2026-10-25 05:44:29,691.691 INFO    ] 2026-10-25 05:44:29
[2026-10-25 05:44:29,950.950 INFO    ] 2026-10-25 05:44:29
[2026-10-25 05:44:29,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:44:30,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:44:30,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:44:30,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:44:30,408.408 INFO    ] time= 25/10/2026 05:44:30
[2026-10-25 05:44:30,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:44:30,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:44:30,556.556 INFO    ] No existing commands found in stream
[2026-10-25 05:44:35,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:44:35,571.571 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 05:44:36,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:44:36,928.928 INFO    ] Checking for system updates...
[2026-10-25 05:44:36,964.964 INFO    ] 200
[2026-10-25 05:44:36,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:37,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:37,024.024 INFO    ] No update needed
[2026-10-25 05:44:37,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 05:44:37,061.061 INFO    ] 200
[2026-10-25 05:44:37,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:37,103.103 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:44:37,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:37,336.336 INFO    ] No camera update needed
[2026-10-25 05:44:37,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:44:37,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:44:37,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:44:37,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:44:39,393.393 INFO    ] ================================================
[2026-10-25 05:44:39,408.408 INFO    ] Launching Daemon at Sun Oct 25 05:44:39 IST 2026
[2026-10-25 05:44:39,418.418 INFO    ] ================================================
[2026-10-25 05:44:40,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:44:40
[2026-10-25 05:44:40,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:44:41,003.003 INFO    ] Initializing speech engine...
[2026-10-25 05:44:41,012.012 INFO    ] 2026-10-25 05:44:41
[2026-10-25 05:44:41,257.257 INFO    ] 2026-10-25 05:44:41
[2026-10-25 05:44:41,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:44:41,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:44:41,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:44:41,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:44:41,714.714 INFO    ] time= 25/10/2026 05:44:41
[2026-10-25 05:44:41,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:44:41,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:44:41,864.864 INFO    ] No existing commands found in stream
[2026-10-25 05:44:46,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:44:46,897.897 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 05:44:49,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:44:49,083.083 INFO    ] Checking for system updates...
[2026-10-25 05:44:49,124.124 INFO    ] 200
[2026-10-25 05:44:49,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:49,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:49,192.192 INFO    ] No update needed
[2026-10-25 05:44:49,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 05:44:49,233.233 INFO    ] 200
[2026-10-25 05:44:49,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:44:49,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:44:49,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:44:49,337.337 INFO    ] No camera update needed
[2026-10-25 05:44:49,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:44:49,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:44:49,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:44:49,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:44:51,391.391 INFO    ] ================================================
[2026-10-25 05:44:51,407.407 INFO    ] Launching Daemon at Sun Oct 25 05:44:51 IST 2026
[2026-10-25 05:44:51,417.417 INFO    ] ================================================
[2026-10-25 05:44:52,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:44:52
[2026-10-25 05:44:52,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:44:52,907.907 INFO    ] Initializing speech engine...
[2026-10-25 05:44:52,916.916 INFO    ] 2026-10-25 05:44:52
[2026-10-25 05:44:53,167.167 INFO    ] 2026-10-25 05:44:53
[2026-10-25 05:44:53,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:44:53,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:44:53,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:44:53,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:44:53,543.543 INFO    ] time= 25/10/2026 05:44:53
[2026-10-25 05:44:53,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:44:53,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:44:53,717.717 INFO    ] No existing commands found in stream
[2026-10-25 05:44:58,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:44:58,745.745 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 05:45:01,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:45:01,028.028 INFO    ] Checking for system updates...
[2026-10-25 05:45:01,065.065 INFO    ] 200
[2026-10-25 05:45:01,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:01,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:01,131.131 INFO    ] No update needed
[2026-10-25 05:45:01,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 05:45:01,172.172 INFO    ] 200
[2026-10-25 05:45:01,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:01,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:45:01,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:01,290.290 INFO    ] No camera update needed
[2026-10-25 05:45:01,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:45:01,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:45:01,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:45:01,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:45:03,378.378 INFO    ] ================================================
[2026-10-25 05:45:03,405.405 INFO    ] Launching Daemon at Sun Oct 25 05:45:03 IST 2026
[2026-10-25 05:45:03,421.421 INFO    ] ================================================
[2026-10-25 05:45:04,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:45:04
[2026-10-25 05:45:04,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:45:04,891.891 INFO    ] Initializing speech engine...
[2026-10-25 05:45:04,915.915 INFO    ] 2026-10-25 05:45:04
[2026-10-25 05:45:05,171.171 INFO    ] 2026-10-25 05:45:05
[2026-10-25 05:45:05,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:45:05,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:45:05,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:45:05,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:45:05,546.546 INFO    ] time= 25/10/2026 05:45:05
[2026-10-25 05:45:05,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:45:05,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:45:05,722.722 INFO    ] No existing commands found in stream
[2026-10-25 05:45:10,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:45:10,749.749 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 05:45:14,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:45:14,509.509 INFO    ] Checking for system updates...
[2026-10-25 05:45:14,549.549 INFO    ] 200
[2026-10-25 05:45:14,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:14,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:45:14,608.608 INFO    ] No update needed
[2026-10-25 05:45:14,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 05:45:14,648.648 INFO    ] 200
[2026-10-25 05:45:14,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:14,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:45:14,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:45:14,758.758 INFO    ] No camera update needed
[2026-10-25 05:45:14,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:45:14,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:45:14,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:45:14,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:45:16,813.813 INFO    ] ================================================
[2026-10-25 05:45:16,827.827 INFO    ] Launching Daemon at Sun Oct 25 05:45:16 IST 2026
[2026-10-25 05:45:16,838.838 INFO    ] ================================================
[2026-10-25 05:45:17,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:45:17
[2026-10-25 05:45:18,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:45:18,294.294 INFO    ] Initializing speech engine...
[2026-10-25 05:45:18,299.299 INFO    ] 2026-10-25 05:45:18
[2026-10-25 05:45:18,561.561 INFO    ] 2026-10-25 05:45:18
[2026-10-25 05:45:18,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:45:18,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:45:18,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:45:18,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:45:19,031.031 INFO    ] time= 25/10/2026 05:45:18
[2026-10-25 05:45:19,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:45:19,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:45:19,178.178 INFO    ] No existing commands found in stream
[2026-10-25 05:45:24,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:45:24,218.218 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 05:45:27,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:45:27,476.476 INFO    ] Checking for system updates...
[2026-10-25 05:45:27,514.514 INFO    ] 200
[2026-10-25 05:45:27,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:27,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:27,581.581 INFO    ] No update needed
[2026-10-25 05:45:27,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 05:45:27,621.621 INFO    ] 200
[2026-10-25 05:45:27,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:27,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:45:27,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:27,715.715 INFO    ] No camera update needed
[2026-10-25 05:45:27,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:45:27,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:45:27,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:45:27,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:45:29,770.770 INFO    ] ================================================
[2026-10-25 05:45:29,785.785 INFO    ] Launching Daemon at Sun Oct 25 05:45:29 IST 2026
[2026-10-25 05:45:29,796.796 INFO    ] ================================================
[2026-10-25 05:45:30,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:45:30
[2026-10-25 05:45:30,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:45:31,251.251 INFO    ] Initializing speech engine...
[2026-10-25 05:45:31,260.260 INFO    ] 2026-10-25 05:45:31
[2026-10-25 05:45:31,508.508 INFO    ] 2026-10-25 05:45:31
[2026-10-25 05:45:31,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:45:31,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:45:31,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:45:31,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:45:31,997.997 INFO    ] time= 25/10/2026 05:45:31
[2026-10-25 05:45:32,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:45:32,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:45:32,206.206 INFO    ] No existing commands found in stream
[2026-10-25 05:45:37,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:45:37,238.238 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 05:45:41,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:45:41,657.657 INFO    ] Checking for system updates...
[2026-10-25 05:45:41,694.694 INFO    ] 200
[2026-10-25 05:45:41,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:41,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:41,758.758 INFO    ] No update needed
[2026-10-25 05:45:41,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 05:45:41,799.799 INFO    ] 200
[2026-10-25 05:45:41,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:41,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:45:41,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:45:41,903.903 INFO    ] No camera update needed
[2026-10-25 05:45:41,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:45:41,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:45:41,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:45:41,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:45:43,957.957 INFO    ] ================================================
[2026-10-25 05:45:43,976.976 INFO    ] Launching Daemon at Sun Oct 25 05:45:43 IST 2026
[2026-10-25 05:45:43,987.987 INFO    ] ================================================
[2026-10-25 05:45:44,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:45:44
[2026-10-25 05:45:45,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:45:45,449.449 INFO    ] Initializing speech engine...
[2026-10-25 05:45:45,457.457 INFO    ] 2026-10-25 05:45:45
[2026-10-25 05:45:45,716.716 INFO    ] 2026-10-25 05:45:45
[2026-10-25 05:45:45,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:45:45,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:45:46,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:45:46,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:45:46,168.168 INFO    ] time= 25/10/2026 05:45:46
[2026-10-25 05:45:46,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:45:46,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:45:46,317.317 INFO    ] No existing commands found in stream
[2026-10-25 05:45:51,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:45:51,333.333 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 05:45:55,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:45:55,269.269 INFO    ] Checking for system updates...
[2026-10-25 05:45:55,306.306 INFO    ] 200
[2026-10-25 05:45:55,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:55,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:45:55,372.372 INFO    ] No update needed
[2026-10-25 05:45:55,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 05:45:55,413.413 INFO    ] 200
[2026-10-25 05:45:55,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:45:55,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:45:55,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:45:55,618.618 INFO    ] No camera update needed
[2026-10-25 05:45:55,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:45:55,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:45:55,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:45:55,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:45:57,677.677 INFO    ] ================================================
[2026-10-25 05:45:57,692.692 INFO    ] Launching Daemon at Sun Oct 25 05:45:57 IST 2026
[2026-10-25 05:45:57,702.702 INFO    ] ================================================
[2026-10-25 05:45:58,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:45:58
[2026-10-25 05:45:58,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:45:59,118.118 INFO    ] Initializing speech engine...
[2026-10-25 05:45:59,126.126 INFO    ] 2026-10-25 05:45:59
[2026-10-25 05:45:59,382.382 INFO    ] 2026-10-25 05:45:59
[2026-10-25 05:45:59,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:45:59,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:45:59,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:45:59,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:45:59,843.843 INFO    ] time= 25/10/2026 05:45:59
[2026-10-25 05:45:59,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:45:59,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:46:00,044.044 INFO    ] No existing commands found in stream
[2026-10-25 05:46:05,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:46:05,069.069 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 05:46:08,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:46:08,435.435 INFO    ] Checking for system updates...
[2026-10-25 05:46:08,475.475 INFO    ] 200
[2026-10-25 05:46:08,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:08,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:46:08,539.539 INFO    ] No update needed
[2026-10-25 05:46:08,542.542 INFO    ] Checking for camera pi updates...
[2026-10-25 05:46:08,576.576 INFO    ] 200
[2026-10-25 05:46:08,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:08,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:46:08,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:46:08,668.668 INFO    ] No camera update needed
[2026-10-25 05:46:08,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:46:08,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:46:08,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:46:08,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:46:10,725.725 INFO    ] ================================================
[2026-10-25 05:46:10,740.740 INFO    ] Launching Daemon at Sun Oct 25 05:46:10 IST 2026
[2026-10-25 05:46:10,752.752 INFO    ] ================================================
[2026-10-25 05:46:11,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:46:11
[2026-10-25 05:46:11,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:46:12,161.161 INFO    ] Initializing speech engine...
[2026-10-25 05:46:12,181.181 INFO    ] 2026-10-25 05:46:12
[2026-10-25 05:46:12,426.426 INFO    ] 2026-10-25 05:46:12
[2026-10-25 05:46:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:46:12,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:46:12,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:46:12,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:46:12,890.890 INFO    ] time= 25/10/2026 05:46:12
[2026-10-25 05:46:12,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:46:13,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:46:13,091.091 INFO    ] No existing commands found in stream
[2026-10-25 05:46:18,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:46:18,105.105 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 05:46:21,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:46:21,423.423 INFO    ] Checking for system updates...
[2026-10-25 05:46:21,463.463 INFO    ] 200
[2026-10-25 05:46:21,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:21,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:21,528.528 INFO    ] No update needed
[2026-10-25 05:46:21,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 05:46:21,563.563 INFO    ] 200
[2026-10-25 05:46:21,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:21,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:46:21,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:21,668.668 INFO    ] No camera update needed
[2026-10-25 05:46:21,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:46:21,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:46:21,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:46:21,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:46:23,726.726 INFO    ] ================================================
[2026-10-25 05:46:23,741.741 INFO    ] Launching Daemon at Sun Oct 25 05:46:23 IST 2026
[2026-10-25 05:46:23,751.751 INFO    ] ================================================
[2026-10-25 05:46:24,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:46:24
[2026-10-25 05:46:25,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:46:25,398.398 INFO    ] Initializing speech engine...
[2026-10-25 05:46:25,409.409 INFO    ] 2026-10-25 05:46:25
[2026-10-25 05:46:25,696.696 INFO    ] 2026-10-25 05:46:25
[2026-10-25 05:46:25,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:46:26,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:46:26,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:46:26,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:46:26,227.227 INFO    ] time= 25/10/2026 05:46:26
[2026-10-25 05:46:26,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:46:26,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:46:26,373.373 INFO    ] No existing commands found in stream
[2026-10-25 05:46:31,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:46:31,398.398 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 05:46:34,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:46:34,996.996 INFO    ] Checking for system updates...
[2026-10-25 05:46:35,033.033 INFO    ] 200
[2026-10-25 05:46:35,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:35,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:35,092.092 INFO    ] No update needed
[2026-10-25 05:46:35,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 05:46:35,132.132 INFO    ] 200
[2026-10-25 05:46:35,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:35,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:46:35,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:35,238.238 INFO    ] No camera update needed
[2026-10-25 05:46:35,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:46:35,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:46:35,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:46:35,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:46:37,294.294 INFO    ] ================================================
[2026-10-25 05:46:37,309.309 INFO    ] Launching Daemon at Sun Oct 25 05:46:37 IST 2026
[2026-10-25 05:46:37,319.319 INFO    ] ================================================
[2026-10-25 05:46:37,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:46:37
[2026-10-25 05:46:38,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:46:38,927.927 INFO    ] Initializing speech engine...
[2026-10-25 05:46:38,938.938 INFO    ] 2026-10-25 05:46:38
[2026-10-25 05:46:39,244.244 INFO    ] 2026-10-25 05:46:39
[2026-10-25 05:46:39,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:46:39,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:46:39,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:46:39,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:46:39,748.748 INFO    ] time= 25/10/2026 05:46:39
[2026-10-25 05:46:39,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:46:39,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:46:39,899.899 INFO    ] No existing commands found in stream
[2026-10-25 05:46:44,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:46:44,929.929 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 05:46:46,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:46:46,898.898 INFO    ] Checking for system updates...
[2026-10-25 05:46:46,939.939 INFO    ] 200
[2026-10-25 05:46:46,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:47,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:46:47,003.003 INFO    ] No update needed
[2026-10-25 05:46:47,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 05:46:47,042.042 INFO    ] 200
[2026-10-25 05:46:47,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:47,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:46:47,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:46:47,161.161 INFO    ] No camera update needed
[2026-10-25 05:46:47,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:46:47,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:46:47,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:46:47,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:46:49,215.215 INFO    ] ================================================
[2026-10-25 05:46:49,230.230 INFO    ] Launching Daemon at Sun Oct 25 05:46:49 IST 2026
[2026-10-25 05:46:49,241.241 INFO    ] ================================================
[2026-10-25 05:46:49,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:46:49
[2026-10-25 05:46:50,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:46:50,641.641 INFO    ] Initializing speech engine...
[2026-10-25 05:46:50,648.648 INFO    ] 2026-10-25 05:46:50
[2026-10-25 05:46:50,939.939 INFO    ] 2026-10-25 05:46:50
[2026-10-25 05:46:50,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:46:51,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:46:51,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:46:51,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:46:51,315.315 INFO    ] time= 25/10/2026 05:46:51
[2026-10-25 05:46:51,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:46:51,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:46:51,439.439 INFO    ] No existing commands found in stream
[2026-10-25 05:46:56,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:46:56,454.454 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 05:46:58,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:46:58,278.278 INFO    ] Checking for system updates...
[2026-10-25 05:46:58,317.317 INFO    ] 200
[2026-10-25 05:46:58,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:58,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:58,381.381 INFO    ] No update needed
[2026-10-25 05:46:58,384.384 INFO    ] Checking for camera pi updates...
[2026-10-25 05:46:58,418.418 INFO    ] 200
[2026-10-25 05:46:58,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:46:58,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:46:58,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:46:58,531.531 INFO    ] No camera update needed
[2026-10-25 05:46:58,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:46:58,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:46:58,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:46:58,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:00,586.586 INFO    ] ================================================
[2026-10-25 05:47:00,601.601 INFO    ] Launching Daemon at Sun Oct 25 05:47:00 IST 2026
[2026-10-25 05:47:00,612.612 INFO    ] ================================================
[2026-10-25 05:47:01,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:01
[2026-10-25 05:47:01,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:47:02,230.230 INFO    ] Initializing speech engine...
[2026-10-25 05:47:02,247.247 INFO    ] 2026-10-25 05:47:02
[2026-10-25 05:47:02,598.598 INFO    ] 2026-10-25 05:47:02
[2026-10-25 05:47:02,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:47:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:47:02,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:47:03,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:47:03,102.102 INFO    ] time= 25/10/2026 05:47:03
[2026-10-25 05:47:03,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:47:03,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:47:03,231.231 INFO    ] No existing commands found in stream
[2026-10-25 05:47:08,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:47:08,245.245 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 05:47:08,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:47:08,811.811 INFO    ] Checking for system updates...
[2026-10-25 05:47:08,848.848 INFO    ] 200
[2026-10-25 05:47:08,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:08,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:08,911.911 INFO    ] No update needed
[2026-10-25 05:47:08,913.913 INFO    ] Checking for camera pi updates...
[2026-10-25 05:47:08,947.947 INFO    ] 200
[2026-10-25 05:47:08,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:08,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:47:09,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:09,047.047 INFO    ] No camera update needed
[2026-10-25 05:47:09,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:47:09,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:47:09,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:47:09,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:11,101.101 INFO    ] ================================================
[2026-10-25 05:47:11,116.116 INFO    ] Launching Daemon at Sun Oct 25 05:47:11 IST 2026
[2026-10-25 05:47:11,127.127 INFO    ] ================================================
[2026-10-25 05:47:11,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:11
[2026-10-25 05:47:12,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:47:12,617.617 INFO    ] Initializing speech engine...
[2026-10-25 05:47:12,627.627 INFO    ] 2026-10-25 05:47:12
[2026-10-25 05:47:12,892.892 INFO    ] 2026-10-25 05:47:12
[2026-10-25 05:47:12,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:47:13,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:47:13,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:47:13,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:47:13,275.275 INFO    ] time= 25/10/2026 05:47:13
[2026-10-25 05:47:13,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:47:13,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:47:13,441.441 INFO    ] No existing commands found in stream
[2026-10-25 05:47:18,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:47:18,469.469 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 05:47:20,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:47:20,952.952 INFO    ] Checking for system updates...
[2026-10-25 05:47:20,992.992 INFO    ] 200
[2026-10-25 05:47:20,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:21,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:47:21,056.056 INFO    ] No update needed
[2026-10-25 05:47:21,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 05:47:21,096.096 INFO    ] 200
[2026-10-25 05:47:21,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:21,143.143 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:47:21,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:47:21,194.194 INFO    ] No camera update needed
[2026-10-25 05:47:21,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:47:21,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:47:21,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:47:21,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:23,248.248 INFO    ] ================================================
[2026-10-25 05:47:23,263.263 INFO    ] Launching Daemon at Sun Oct 25 05:47:23 IST 2026
[2026-10-25 05:47:23,273.273 INFO    ] ================================================
[2026-10-25 05:47:23,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:23
[2026-10-25 05:47:24,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:47:24,886.886 INFO    ] Initializing speech engine...
[2026-10-25 05:47:24,897.897 INFO    ] 2026-10-25 05:47:24
[2026-10-25 05:47:25,175.175 INFO    ] 2026-10-25 05:47:25
[2026-10-25 05:47:25,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:47:25,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:47:25,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:47:25,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:47:25,707.707 INFO    ] time= 25/10/2026 05:47:25
[2026-10-25 05:47:25,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:47:25,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:47:25,864.864 INFO    ] No existing commands found in stream
[2026-10-25 05:47:30,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:47:30,883.883 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 05:47:34,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:47:34,126.126 INFO    ] Checking for system updates...
[2026-10-25 05:47:34,166.166 INFO    ] 200
[2026-10-25 05:47:34,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:34,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:34,235.235 INFO    ] No update needed
[2026-10-25 05:47:34,238.238 INFO    ] Checking for camera pi updates...
[2026-10-25 05:47:34,276.276 INFO    ] 200
[2026-10-25 05:47:34,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:34,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:47:34,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:34,378.378 INFO    ] No camera update needed
[2026-10-25 05:47:34,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:47:34,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:47:34,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:47:34,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:36,437.437 INFO    ] ================================================
[2026-10-25 05:47:36,453.453 INFO    ] Launching Daemon at Sun Oct 25 05:47:36 IST 2026
[2026-10-25 05:47:36,464.464 INFO    ] ================================================
[2026-10-25 05:47:37,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:37
[2026-10-25 05:47:37,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:47:37,879.879 INFO    ] Initializing speech engine...
[2026-10-25 05:47:37,889.889 INFO    ] 2026-10-25 05:47:37
[2026-10-25 05:47:38,145.145 INFO    ] 2026-10-25 05:47:38
[2026-10-25 05:47:38,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:47:38,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:47:38,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:47:38,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:47:38,615.615 INFO    ] time= 25/10/2026 05:47:38
[2026-10-25 05:47:38,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:47:38,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:47:38,766.766 INFO    ] No existing commands found in stream
[2026-10-25 05:47:43,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:47:43,805.805 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 05:47:44,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:47:44,674.674 INFO    ] Checking for system updates...
[2026-10-25 05:47:44,712.712 INFO    ] 200
[2026-10-25 05:47:44,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:44,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:47:44,771.771 INFO    ] No update needed
[2026-10-25 05:47:44,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 05:47:44,810.810 INFO    ] 200
[2026-10-25 05:47:44,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:44,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:47:44,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:47:44,921.921 INFO    ] No camera update needed
[2026-10-25 05:47:44,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:47:44,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:47:44,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:47:44,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:46,977.977 INFO    ] ================================================
[2026-10-25 05:47:46,993.993 INFO    ] Launching Daemon at Sun Oct 25 05:47:46 IST 2026
[2026-10-25 05:47:47,003.003 INFO    ] ================================================
[2026-10-25 05:47:47,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:47
[2026-10-25 05:47:48,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:47:48,407.407 INFO    ] Initializing speech engine...
[2026-10-25 05:47:48,426.426 INFO    ] 2026-10-25 05:47:48
[2026-10-25 05:47:48,671.671 INFO    ] 2026-10-25 05:47:48
[2026-10-25 05:47:48,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:47:48,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:47:48,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:47:49,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:47:49,103.103 INFO    ] time= 25/10/2026 05:47:49
[2026-10-25 05:47:49,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:47:49,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:47:49,280.280 INFO    ] No existing commands found in stream
[2026-10-25 05:47:54,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:47:54,295.295 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 05:47:56,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:47:56,923.923 INFO    ] Checking for system updates...
[2026-10-25 05:47:56,963.963 INFO    ] 200
[2026-10-25 05:47:56,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:57,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:57,026.026 INFO    ] No update needed
[2026-10-25 05:47:57,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 05:47:57,065.065 INFO    ] 200
[2026-10-25 05:47:57,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:47:57,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:47:57,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:47:57,172.172 INFO    ] No camera update needed
[2026-10-25 05:47:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:47:57,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:47:57,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:47:57,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:47:59,229.229 INFO    ] ================================================
[2026-10-25 05:47:59,244.244 INFO    ] Launching Daemon at Sun Oct 25 05:47:59 IST 2026
[2026-10-25 05:47:59,254.254 INFO    ] ================================================
[2026-10-25 05:47:59,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:47:59
[2026-10-25 05:48:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:48:00,716.716 INFO    ] Initializing speech engine...
[2026-10-25 05:48:00,736.736 INFO    ] 2026-10-25 05:48:00
[2026-10-25 05:48:00,993.993 INFO    ] 2026-10-25 05:48:00
[2026-10-25 05:48:01,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:48:01,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:48:01,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:48:01,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:48:01,480.480 INFO    ] time= 25/10/2026 05:48:01
[2026-10-25 05:48:01,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:48:01,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:48:01,576.576 INFO    ] No existing commands found in stream
[2026-10-25 05:48:06,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:48:06,602.602 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 05:48:10,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:48:10,249.249 INFO    ] Checking for system updates...
[2026-10-25 05:48:10,286.286 INFO    ] 200
[2026-10-25 05:48:10,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:10,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:48:10,345.345 INFO    ] No update needed
[2026-10-25 05:48:10,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 05:48:10,386.386 INFO    ] 200
[2026-10-25 05:48:10,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:10,430.430 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:48:10,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:48:10,493.493 INFO    ] No camera update needed
[2026-10-25 05:48:10,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:48:10,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:48:10,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:48:10,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:48:12,548.548 INFO    ] ================================================
[2026-10-25 05:48:12,563.563 INFO    ] Launching Daemon at Sun Oct 25 05:48:12 IST 2026
[2026-10-25 05:48:12,574.574 INFO    ] ================================================
[2026-10-25 05:48:13,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:48:13
[2026-10-25 05:48:13,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:48:14,028.028 INFO    ] Initializing speech engine...
[2026-10-25 05:48:14,034.034 INFO    ] 2026-10-25 05:48:14
[2026-10-25 05:48:14,292.292 INFO    ] 2026-10-25 05:48:14
[2026-10-25 05:48:14,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:48:14,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:48:14,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:48:14,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:48:14,753.753 INFO    ] time= 25/10/2026 05:48:14
[2026-10-25 05:48:14,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:48:14,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:48:14,895.895 INFO    ] No existing commands found in stream
[2026-10-25 05:48:19,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:48:19,910.910 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:48:20,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:48:20,355.355 INFO    ] Checking for system updates...
[2026-10-25 05:48:20,391.391 INFO    ] 200
[2026-10-25 05:48:20,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:20,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:48:20,457.457 INFO    ] No update needed
[2026-10-25 05:48:20,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 05:48:20,497.497 INFO    ] 200
[2026-10-25 05:48:20,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:20,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:48:20,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:48:20,602.602 INFO    ] No camera update needed
[2026-10-25 05:48:20,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:48:20,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:48:20,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:48:20,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:48:22,659.659 INFO    ] ================================================
[2026-10-25 05:48:22,674.674 INFO    ] Launching Daemon at Sun Oct 25 05:48:22 IST 2026
[2026-10-25 05:48:22,685.685 INFO    ] ================================================
[2026-10-25 05:48:23,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:48:23
[2026-10-25 05:48:23,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:48:24,094.094 INFO    ] Initializing speech engine...
[2026-10-25 05:48:24,101.101 INFO    ] 2026-10-25 05:48:24
[2026-10-25 05:48:24,408.408 INFO    ] 2026-10-25 05:48:24
[2026-10-25 05:48:24,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:48:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:48:24,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:48:24,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:48:24,794.794 INFO    ] time= 25/10/2026 05:48:24
[2026-10-25 05:48:24,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:48:24,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:48:24,858.858 INFO    ] No existing commands found in stream
[2026-10-25 05:48:29,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:48:29,873.873 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 05:48:34,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:48:34,126.126 INFO    ] Checking for system updates...
[2026-10-25 05:48:34,167.167 INFO    ] 200
[2026-10-25 05:48:34,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:34,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:48:34,233.233 INFO    ] No update needed
[2026-10-25 05:48:34,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 05:48:34,270.270 INFO    ] 200
[2026-10-25 05:48:34,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:34,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:48:34,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:48:34,381.381 INFO    ] No camera update needed
[2026-10-25 05:48:34,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:48:34,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:48:34,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:48:34,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:48:36,436.436 INFO    ] ================================================
[2026-10-25 05:48:36,452.452 INFO    ] Launching Daemon at Sun Oct 25 05:48:36 IST 2026
[2026-10-25 05:48:36,463.463 INFO    ] ================================================
[2026-10-25 05:48:37,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:48:37
[2026-10-25 05:48:37,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:48:37,890.890 INFO    ] Initializing speech engine...
[2026-10-25 05:48:37,900.900 INFO    ] 2026-10-25 05:48:37
[2026-10-25 05:48:38,150.150 INFO    ] 2026-10-25 05:48:38
[2026-10-25 05:48:38,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:48:38,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:48:38,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:48:38,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:48:38,614.614 INFO    ] time= 25/10/2026 05:48:38
[2026-10-25 05:48:38,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:48:38,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:48:38,782.782 INFO    ] No existing commands found in stream
[2026-10-25 05:48:43,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:48:43,797.797 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 05:48:46,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:48:46,495.495 INFO    ] Checking for system updates...
[2026-10-25 05:48:46,536.536 INFO    ] 200
[2026-10-25 05:48:46,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:46,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:48:46,594.594 INFO    ] No update needed
[2026-10-25 05:48:46,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 05:48:46,635.635 INFO    ] 200
[2026-10-25 05:48:46,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:48:46,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:48:46,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:48:46,736.736 INFO    ] No camera update needed
[2026-10-25 05:48:46,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:48:46,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:48:46,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:48:46,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:48:48,791.791 INFO    ] ================================================
[2026-10-25 05:48:48,808.808 INFO    ] Launching Daemon at Sun Oct 25 05:48:48 IST 2026
[2026-10-25 05:48:48,820.820 INFO    ] ================================================
[2026-10-25 05:48:49,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:48:49
[2026-10-25 05:48:50,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:48:50,491.491 INFO    ] Initializing speech engine...
[2026-10-25 05:48:50,502.502 INFO    ] 2026-10-25 05:48:50
[2026-10-25 05:48:50,805.805 INFO    ] 2026-10-25 05:48:50
[2026-10-25 05:48:50,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:48:51,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:48:51,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:48:51,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:48:51,255.255 INFO    ] time= 25/10/2026 05:48:51
[2026-10-25 05:48:51,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:48:51,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:48:51,436.436 INFO    ] No existing commands found in stream
[2026-10-25 05:48:56,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:48:56,465.465 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 05:49:00,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:49:00,841.841 INFO    ] Checking for system updates...
[2026-10-25 05:49:00,884.884 INFO    ] 200
[2026-10-25 05:49:00,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:00,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:00,944.944 INFO    ] No update needed
[2026-10-25 05:49:00,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:00,987.987 INFO    ] 200
[2026-10-25 05:49:00,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:01,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:01,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:01,113.113 INFO    ] No camera update needed
[2026-10-25 05:49:01,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:01,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:01,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:01,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:49:03,177.177 INFO    ] ================================================
[2026-10-25 05:49:03,193.193 INFO    ] Launching Daemon at Sun Oct 25 05:49:03 IST 2026
[2026-10-25 05:49:03,204.204 INFO    ] ================================================
[2026-10-25 05:49:03,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:49:03
[2026-10-25 05:49:04,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:49:04,807.807 INFO    ] Initializing speech engine...
[2026-10-25 05:49:04,814.814 INFO    ] 2026-10-25 05:49:04
[2026-10-25 05:49:05,100.100 INFO    ] 2026-10-25 05:49:05
[2026-10-25 05:49:05,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:49:05,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:49:05,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:49:05,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:49:05,548.548 INFO    ] time= 25/10/2026 05:49:05
[2026-10-25 05:49:05,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:49:05,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:49:05,701.701 INFO    ] No existing commands found in stream
[2026-10-25 05:49:10,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:49:10,730.730 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 05:49:13,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:49:13,616.616 INFO    ] Checking for system updates...
[2026-10-25 05:49:13,657.657 INFO    ] 200
[2026-10-25 05:49:13,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:13,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:13,718.718 INFO    ] No update needed
[2026-10-25 05:49:13,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:13,759.759 INFO    ] 200
[2026-10-25 05:49:13,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:13,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:13,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:13,869.869 INFO    ] No camera update needed
[2026-10-25 05:49:13,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:13,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:13,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:13,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:49:15,928.928 INFO    ] ================================================
[2026-10-25 05:49:15,944.944 INFO    ] Launching Daemon at Sun Oct 25 05:49:15 IST 2026
[2026-10-25 05:49:15,956.956 INFO    ] ================================================
[2026-10-25 05:49:16,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:49:16
[2026-10-25 05:49:17,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:49:17,358.358 INFO    ] Initializing speech engine...
[2026-10-25 05:49:17,366.366 INFO    ] 2026-10-25 05:49:17
[2026-10-25 05:49:17,637.637 INFO    ] 2026-10-25 05:49:17
[2026-10-25 05:49:17,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:49:17,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:49:17,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:49:18,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:49:18,089.089 INFO    ] time= 25/10/2026 05:49:18
[2026-10-25 05:49:18,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:49:18,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:49:18,251.251 INFO    ] No existing commands found in stream
[2026-10-25 05:49:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:49:23,266.266 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:49:23,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:49:23,694.694 INFO    ] Checking for system updates...
[2026-10-25 05:49:23,730.730 INFO    ] 200
[2026-10-25 05:49:23,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:23,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:23,794.794 INFO    ] No update needed
[2026-10-25 05:49:23,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:23,834.834 INFO    ] 200
[2026-10-25 05:49:23,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:23,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:23,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:23,956.956 INFO    ] No camera update needed
[2026-10-25 05:49:23,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:23,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:23,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:49:26,012.012 INFO    ] ================================================
[2026-10-25 05:49:26,028.028 INFO    ] Launching Daemon at Sun Oct 25 05:49:26 IST 2026
[2026-10-25 05:49:26,039.039 INFO    ] ================================================
[2026-10-25 05:49:26,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:49:26
[2026-10-25 05:49:27,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:49:27,480.480 INFO    ] Initializing speech engine...
[2026-10-25 05:49:27,490.490 INFO    ] 2026-10-25 05:49:27
[2026-10-25 05:49:27,753.753 INFO    ] 2026-10-25 05:49:27
[2026-10-25 05:49:27,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:49:28,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:49:28,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:49:28,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:49:28,832.832 INFO    ] time= 25/10/2026 05:49:28
[2026-10-25 05:49:28,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:49:28,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:49:28,943.943 INFO    ] No existing commands found in stream
[2026-10-25 05:49:33,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:49:33,957.957 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 05:49:34,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:49:34,815.815 INFO    ] Checking for system updates...
[2026-10-25 05:49:34,850.850 INFO    ] 200
[2026-10-25 05:49:34,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:34,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:34,907.907 INFO    ] No update needed
[2026-10-25 05:49:34,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:34,944.944 INFO    ] 200
[2026-10-25 05:49:34,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:34,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:35,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:35,040.040 INFO    ] No camera update needed
[2026-10-25 05:49:35,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:35,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:35,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:35,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:49:37,097.097 INFO    ] ================================================
[2026-10-25 05:49:37,112.112 INFO    ] Launching Daemon at Sun Oct 25 05:49:37 IST 2026
[2026-10-25 05:49:37,124.124 INFO    ] ================================================
[2026-10-25 05:49:37,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:49:37
[2026-10-25 05:49:38,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:49:38,554.554 INFO    ] Initializing speech engine...
[2026-10-25 05:49:38,563.563 INFO    ] 2026-10-25 05:49:38
[2026-10-25 05:49:38,811.811 INFO    ] 2026-10-25 05:49:38
[2026-10-25 05:49:38,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:49:39,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:49:39,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:49:39,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:49:39,285.285 INFO    ] time= 25/10/2026 05:49:39
[2026-10-25 05:49:39,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:49:39,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:49:39,428.428 INFO    ] No existing commands found in stream
[2026-10-25 05:49:44,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:49:44,443.443 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 05:49:48,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:49:48,115.115 INFO    ] Checking for system updates...
[2026-10-25 05:49:48,155.155 INFO    ] 200
[2026-10-25 05:49:48,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:48,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:48,212.212 INFO    ] No update needed
[2026-10-25 05:49:48,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:48,248.248 INFO    ] 200
[2026-10-25 05:49:48,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:48,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:48,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:49:48,354.354 INFO    ] No camera update needed
[2026-10-25 05:49:48,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:48,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:48,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:48,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:49:50,412.412 INFO    ] ================================================
[2026-10-25 05:49:50,428.428 INFO    ] Launching Daemon at Sun Oct 25 05:49:50 IST 2026
[2026-10-25 05:49:50,439.439 INFO    ] ================================================
[2026-10-25 05:49:51,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:49:51
[2026-10-25 05:49:51,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:49:51,981.981 INFO    ] Initializing speech engine...
[2026-10-25 05:49:51,990.990 INFO    ] 2026-10-25 05:49:51
[2026-10-25 05:49:52,285.285 INFO    ] 2026-10-25 05:49:52
[2026-10-25 05:49:52,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:49:52,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:49:52,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:49:52,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:49:52,657.657 INFO    ] time= 25/10/2026 05:49:52
[2026-10-25 05:49:52,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:49:52,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:49:52,773.773 INFO    ] No existing commands found in stream
[2026-10-25 05:49:57,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:49:57,787.787 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 05:49:59,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:49:59,679.679 INFO    ] Checking for system updates...
[2026-10-25 05:49:59,720.720 INFO    ] 200
[2026-10-25 05:49:59,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:59,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:59,793.793 INFO    ] No update needed
[2026-10-25 05:49:59,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 05:49:59,829.829 INFO    ] 200
[2026-10-25 05:49:59,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:49:59,873.873 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:49:59,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:49:59,930.930 INFO    ] No camera update needed
[2026-10-25 05:49:59,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:49:59,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:49:59,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:49:59,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:50:02,044.044 INFO    ] ================================================
[2026-10-25 05:50:02,110.110 INFO    ] Launching Daemon at Sun Oct 25 05:50:02 IST 2026
[2026-10-25 05:50:02,175.175 INFO    ] ================================================
[2026-10-25 05:50:02,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:50:02
[2026-10-25 05:50:03,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:50:04,043.043 INFO    ] Initializing speech engine...
[2026-10-25 05:50:04,050.050 INFO    ] 2026-10-25 05:50:04
[2026-10-25 05:50:04,312.312 INFO    ] 2026-10-25 05:50:04
[2026-10-25 05:50:04,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:50:04,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:50:04,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:50:04,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:50:04,775.775 INFO    ] time= 25/10/2026 05:50:04
[2026-10-25 05:50:04,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:50:04,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:50:04,926.926 INFO    ] No existing commands found in stream
[2026-10-25 05:50:09,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:50:09,936.936 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 05:50:13,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:50:13,427.427 INFO    ] Checking for system updates...
[2026-10-25 05:50:13,468.468 INFO    ] 200
[2026-10-25 05:50:13,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:13,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:13,526.526 INFO    ] No update needed
[2026-10-25 05:50:13,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 05:50:13,563.563 INFO    ] 200
[2026-10-25 05:50:13,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:13,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:50:13,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:13,774.774 INFO    ] No camera update needed
[2026-10-25 05:50:13,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:50:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:50:13,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:50:13,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:50:15,838.838 INFO    ] ================================================
[2026-10-25 05:50:15,854.854 INFO    ] Launching Daemon at Sun Oct 25 05:50:15 IST 2026
[2026-10-25 05:50:15,865.865 INFO    ] ================================================
[2026-10-25 05:50:16,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:50:16
[2026-10-25 05:50:17,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:50:17,331.331 INFO    ] Initializing speech engine...
[2026-10-25 05:50:17,339.339 INFO    ] 2026-10-25 05:50:17
[2026-10-25 05:50:17,588.588 INFO    ] 2026-10-25 05:50:17
[2026-10-25 05:50:17,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:50:17,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:50:17,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:50:18,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:50:18,082.082 INFO    ] time= 25/10/2026 05:50:18
[2026-10-25 05:50:18,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:50:18,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:50:18,291.291 INFO    ] No existing commands found in stream
[2026-10-25 05:50:23,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:50:23,310.310 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 05:50:26,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:50:26,941.941 INFO    ] Checking for system updates...
[2026-10-25 05:50:26,981.981 INFO    ] 200
[2026-10-25 05:50:26,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:27,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:27,039.039 INFO    ] No update needed
[2026-10-25 05:50:27,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 05:50:27,079.079 INFO    ] 200
[2026-10-25 05:50:27,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:27,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:50:27,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:27,188.188 INFO    ] No camera update needed
[2026-10-25 05:50:27,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:50:27,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:50:27,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:50:27,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:50:29,243.243 INFO    ] ================================================
[2026-10-25 05:50:29,259.259 INFO    ] Launching Daemon at Sun Oct 25 05:50:29 IST 2026
[2026-10-25 05:50:29,271.271 INFO    ] ================================================
[2026-10-25 05:50:29,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:50:29
[2026-10-25 05:50:30,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:50:30,724.724 INFO    ] Initializing speech engine...
[2026-10-25 05:50:30,735.735 INFO    ] 2026-10-25 05:50:30
[2026-10-25 05:50:30,982.982 INFO    ] 2026-10-25 05:50:30
[2026-10-25 05:50:31,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:50:31,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:50:31,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:50:31,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:50:31,483.483 INFO    ] time= 25/10/2026 05:50:31
[2026-10-25 05:50:31,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:50:31,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:50:31,675.675 INFO    ] No existing commands found in stream
[2026-10-25 05:50:36,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:50:36,703.703 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 05:50:40,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:50:40,763.763 INFO    ] Checking for system updates...
[2026-10-25 05:50:40,799.799 INFO    ] 200
[2026-10-25 05:50:40,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:40,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:40,863.863 INFO    ] No update needed
[2026-10-25 05:50:40,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 05:50:40,900.900 INFO    ] 200
[2026-10-25 05:50:40,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:40,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:50:41,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:41,012.012 INFO    ] No camera update needed
[2026-10-25 05:50:41,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:50:41,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:50:41,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:50:41,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:50:43,068.068 INFO    ] ================================================
[2026-10-25 05:50:43,084.084 INFO    ] Launching Daemon at Sun Oct 25 05:50:43 IST 2026
[2026-10-25 05:50:43,095.095 INFO    ] ================================================
[2026-10-25 05:50:43,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:50:43
[2026-10-25 05:50:44,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:50:44,536.536 INFO    ] Initializing speech engine...
[2026-10-25 05:50:44,545.545 INFO    ] 2026-10-25 05:50:44
[2026-10-25 05:50:44,796.796 INFO    ] 2026-10-25 05:50:44
[2026-10-25 05:50:44,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:50:45,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:50:45,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:50:45,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:50:45,295.295 INFO    ] time= 25/10/2026 05:50:45
[2026-10-25 05:50:45,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:50:45,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:50:45,484.484 INFO    ] No existing commands found in stream
[2026-10-25 05:50:50,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:50:50,513.513 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 05:50:53,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:50:53,702.702 INFO    ] Checking for system updates...
[2026-10-25 05:50:53,738.738 INFO    ] 200
[2026-10-25 05:50:53,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:53,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:53,797.797 INFO    ] No update needed
[2026-10-25 05:50:53,800.800 INFO    ] Checking for camera pi updates...
[2026-10-25 05:50:53,836.836 INFO    ] 200
[2026-10-25 05:50:53,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:50:53,879.879 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:50:53,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:50:53,931.931 INFO    ] No camera update needed
[2026-10-25 05:50:53,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:50:53,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:50:53,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:50:53,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:50:55,988.988 INFO    ] ================================================
[2026-10-25 05:50:56,004.004 INFO    ] Launching Daemon at Sun Oct 25 05:50:55 IST 2026
[2026-10-25 05:50:56,015.015 INFO    ] ================================================
[2026-10-25 05:50:56,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:50:56
[2026-10-25 05:50:57,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:50:57,413.413 INFO    ] Initializing speech engine...
[2026-10-25 05:50:57,425.425 INFO    ] 2026-10-25 05:50:57
[2026-10-25 05:50:57,688.688 INFO    ] 2026-10-25 05:50:57
[2026-10-25 05:50:57,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:50:57,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:50:57,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:50:59,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:50:59,396.396 INFO    ] time= 25/10/2026 05:50:59
[2026-10-25 05:50:59,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:50:59,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:50:59,566.566 INFO    ] No existing commands found in stream
[2026-10-25 05:51:04,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:51:04,593.593 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 05:51:06,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:51:06,723.723 INFO    ] Checking for system updates...
[2026-10-25 05:51:06,759.759 INFO    ] 200
[2026-10-25 05:51:06,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:06,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:06,818.818 INFO    ] No update needed
[2026-10-25 05:51:06,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 05:51:06,856.856 INFO    ] 200
[2026-10-25 05:51:06,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:06,904.904 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:51:06,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:06,968.968 INFO    ] No camera update needed
[2026-10-25 05:51:06,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:51:06,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:51:06,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:51:06,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:51:09,025.025 INFO    ] ================================================
[2026-10-25 05:51:09,040.040 INFO    ] Launching Daemon at Sun Oct 25 05:51:09 IST 2026
[2026-10-25 05:51:09,052.052 INFO    ] ================================================
[2026-10-25 05:51:09,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:51:09
[2026-10-25 05:51:10,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:51:10,615.615 INFO    ] Initializing speech engine...
[2026-10-25 05:51:10,628.628 INFO    ] 2026-10-25 05:51:10
[2026-10-25 05:51:10,879.879 INFO    ] 2026-10-25 05:51:10
[2026-10-25 05:51:10,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:51:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:51:11,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:51:11,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:51:11,375.375 INFO    ] time= 25/10/2026 05:51:11
[2026-10-25 05:51:11,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:51:11,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:51:11,535.535 INFO    ] No existing commands found in stream
[2026-10-25 05:51:16,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:51:16,550.550 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 05:51:20,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:51:20,863.863 INFO    ] Checking for system updates...
[2026-10-25 05:51:20,902.902 INFO    ] 200
[2026-10-25 05:51:20,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:20,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:51:20,967.967 INFO    ] No update needed
[2026-10-25 05:51:20,969.969 INFO    ] Checking for camera pi updates...
[2026-10-25 05:51:21,003.003 INFO    ] 200
[2026-10-25 05:51:21,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:21,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:51:21,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:51:21,109.109 INFO    ] No camera update needed
[2026-10-25 05:51:21,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:51:21,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:51:21,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:51:21,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:51:23,166.166 INFO    ] ================================================
[2026-10-25 05:51:23,182.182 INFO    ] Launching Daemon at Sun Oct 25 05:51:23 IST 2026
[2026-10-25 05:51:23,192.192 INFO    ] ================================================
[2026-10-25 05:51:23,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:51:23
[2026-10-25 05:51:24,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:51:24,627.627 INFO    ] Initializing speech engine...
[2026-10-25 05:51:24,636.636 INFO    ] 2026-10-25 05:51:24
[2026-10-25 05:51:24,887.887 INFO    ] 2026-10-25 05:51:24
[2026-10-25 05:51:24,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:51:25,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:51:25,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:51:25,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:51:25,263.263 INFO    ] time= 25/10/2026 05:51:25
[2026-10-25 05:51:25,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:51:25,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:51:25,342.342 INFO    ] No existing commands found in stream
[2026-10-25 05:51:30,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:51:30,375.375 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 05:51:32,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:51:32,760.760 INFO    ] Checking for system updates...
[2026-10-25 05:51:32,798.798 INFO    ] 200
[2026-10-25 05:51:32,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:32,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:32,867.867 INFO    ] No update needed
[2026-10-25 05:51:32,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 05:51:32,910.910 INFO    ] 200
[2026-10-25 05:51:32,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:32,961.961 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:51:33,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:33,012.012 INFO    ] No camera update needed
[2026-10-25 05:51:33,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:51:33,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:51:33,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:51:33,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:51:35,069.069 INFO    ] ================================================
[2026-10-25 05:51:35,083.083 INFO    ] Launching Daemon at Sun Oct 25 05:51:35 IST 2026
[2026-10-25 05:51:35,094.094 INFO    ] ================================================
[2026-10-25 05:51:35,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:51:35
[2026-10-25 05:51:36,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:51:36,648.648 INFO    ] Initializing speech engine...
[2026-10-25 05:51:36,662.662 INFO    ] 2026-10-25 05:51:36
[2026-10-25 05:51:36,936.936 INFO    ] 2026-10-25 05:51:36
[2026-10-25 05:51:36,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:51:37,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:51:37,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:51:37,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:51:37,483.483 INFO    ] time= 25/10/2026 05:51:37
[2026-10-25 05:51:37,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:51:37,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:51:37,632.632 INFO    ] No existing commands found in stream
[2026-10-25 05:51:42,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:51:42,656.656 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 05:51:44,537.537 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:51:44,540.540 INFO    ] Checking for system updates...
[2026-10-25 05:51:44,577.577 INFO    ] 200
[2026-10-25 05:51:44,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:44,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:44,636.636 INFO    ] No update needed
[2026-10-25 05:51:44,639.639 INFO    ] Checking for camera pi updates...
[2026-10-25 05:51:44,674.674 INFO    ] 200
[2026-10-25 05:51:44,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:44,717.717 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:51:44,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:44,782.782 INFO    ] No camera update needed
[2026-10-25 05:51:44,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:51:44,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:51:44,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:51:44,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:51:46,845.845 INFO    ] ================================================
[2026-10-25 05:51:46,860.860 INFO    ] Launching Daemon at Sun Oct 25 05:51:46 IST 2026
[2026-10-25 05:51:46,870.870 INFO    ] ================================================
[2026-10-25 05:51:47,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:51:47
[2026-10-25 05:51:48,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:51:49,583.583 INFO    ] Initializing speech engine...
[2026-10-25 05:51:49,587.587 INFO    ] 2026-10-25 05:51:49
[2026-10-25 05:51:49,846.846 INFO    ] 2026-10-25 05:51:49
[2026-10-25 05:51:49,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:51:50,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:51:50,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:51:50,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:51:50,245.245 INFO    ] time= 25/10/2026 05:51:50
[2026-10-25 05:51:50,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:51:50,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:51:50,335.335 INFO    ] No existing commands found in stream
[2026-10-25 05:51:55,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:51:55,349.349 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 05:51:59,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:51:59,775.775 INFO    ] Checking for system updates...
[2026-10-25 05:51:59,814.814 INFO    ] 200
[2026-10-25 05:51:59,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:59,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:51:59,876.876 INFO    ] No update needed
[2026-10-25 05:51:59,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 05:51:59,914.914 INFO    ] 200
[2026-10-25 05:51:59,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:51:59,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:52:00,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:52:00,017.017 INFO    ] No camera update needed
[2026-10-25 05:52:00,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:52:00,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:52:00,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:52:00,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:52:02,097.097 INFO    ] ================================================
[2026-10-25 05:52:02,138.138 INFO    ] Launching Daemon at Sun Oct 25 05:52:02 IST 2026
[2026-10-25 05:52:02,165.165 INFO    ] ================================================
[2026-10-25 05:52:02,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:52:02
[2026-10-25 05:52:03,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:52:03,800.800 INFO    ] Initializing speech engine...
[2026-10-25 05:52:03,823.823 INFO    ] 2026-10-25 05:52:03
[2026-10-25 05:52:04,113.113 INFO    ] 2026-10-25 05:52:04
[2026-10-25 05:52:04,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:52:04,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:52:04,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:52:04,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:52:04,549.549 INFO    ] time= 25/10/2026 05:52:04
[2026-10-25 05:52:04,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:52:04,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:52:04,631.631 INFO    ] No existing commands found in stream
[2026-10-25 05:52:09,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:52:09,646.646 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 05:52:11,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:52:11,747.747 INFO    ] Checking for system updates...
[2026-10-25 05:52:11,789.789 INFO    ] 200
[2026-10-25 05:52:11,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:11,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:52:11,849.849 INFO    ] No update needed
[2026-10-25 05:52:11,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 05:52:11,887.887 INFO    ] 200
[2026-10-25 05:52:11,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:11,932.932 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:52:12,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:52:12,003.003 INFO    ] No camera update needed
[2026-10-25 05:52:12,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:52:12,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:52:12,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:52:12,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:52:14,062.062 INFO    ] ================================================
[2026-10-25 05:52:14,077.077 INFO    ] Launching Daemon at Sun Oct 25 05:52:14 IST 2026
[2026-10-25 05:52:14,087.087 INFO    ] ================================================
[2026-10-25 05:52:14,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:52:14
[2026-10-25 05:52:15,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:52:15,502.502 INFO    ] Initializing speech engine...
[2026-10-25 05:52:15,509.509 INFO    ] 2026-10-25 05:52:15
[2026-10-25 05:52:15,808.808 INFO    ] 2026-10-25 05:52:15
[2026-10-25 05:52:15,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:52:15,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:52:16,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:52:16,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:52:16,168.168 INFO    ] time= 25/10/2026 05:52:16
[2026-10-25 05:52:16,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:52:16,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:52:16,248.248 INFO    ] No existing commands found in stream
[2026-10-25 05:52:21,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:52:21,262.262 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 05:52:25,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:52:25,609.609 INFO    ] Checking for system updates...
[2026-10-25 05:52:25,645.645 INFO    ] 200
[2026-10-25 05:52:25,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:25,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:52:25,710.710 INFO    ] No update needed
[2026-10-25 05:52:25,713.713 INFO    ] Checking for camera pi updates...
[2026-10-25 05:52:25,752.752 INFO    ] 200
[2026-10-25 05:52:25,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:25,801.801 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:52:25,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:52:25,956.956 INFO    ] No camera update needed
[2026-10-25 05:52:25,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:52:25,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:52:25,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:52:25,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:52:28,011.011 INFO    ] ================================================
[2026-10-25 05:52:28,027.027 INFO    ] Launching Daemon at Sun Oct 25 05:52:28 IST 2026
[2026-10-25 05:52:28,037.037 INFO    ] ================================================
[2026-10-25 05:52:28,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:52:28
[2026-10-25 05:52:29,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:52:29,692.692 INFO    ] Initializing speech engine...
[2026-10-25 05:52:29,703.703 INFO    ] 2026-10-25 05:52:29
[2026-10-25 05:52:29,985.985 INFO    ] 2026-10-25 05:52:29
[2026-10-25 05:52:30,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:52:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:52:30,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:52:30,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:52:30,485.485 INFO    ] time= 25/10/2026 05:52:30
[2026-10-25 05:52:30,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:52:30,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:52:30,691.691 INFO    ] No existing commands found in stream
[2026-10-25 05:52:35,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:52:35,712.712 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 05:52:37,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:52:37,043.043 INFO    ] Checking for system updates...
[2026-10-25 05:52:37,080.080 INFO    ] 200
[2026-10-25 05:52:37,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:37,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:52:37,141.141 INFO    ] No update needed
[2026-10-25 05:52:37,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 05:52:37,179.179 INFO    ] 200
[2026-10-25 05:52:37,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:37,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:52:37,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:52:37,355.355 INFO    ] No camera update needed
[2026-10-25 05:52:37,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:52:37,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:52:37,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:52:37,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:52:39,416.416 INFO    ] ================================================
[2026-10-25 05:52:39,431.431 INFO    ] Launching Daemon at Sun Oct 25 05:52:39 IST 2026
[2026-10-25 05:52:39,442.442 INFO    ] ================================================
[2026-10-25 05:52:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:52:40
[2026-10-25 05:52:40,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:52:40,977.977 INFO    ] Initializing speech engine...
[2026-10-25 05:52:40,983.983 INFO    ] 2026-10-25 05:52:40
[2026-10-25 05:52:41,259.259 INFO    ] 2026-10-25 05:52:41
[2026-10-25 05:52:41,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:52:41,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:52:41,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:52:41,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:52:41,807.807 INFO    ] time= 25/10/2026 05:52:41
[2026-10-25 05:52:41,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:52:41,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:52:41,959.959 INFO    ] No existing commands found in stream
[2026-10-25 05:52:46,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:52:46,979.979 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 05:52:50,486.486 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:52:50,489.489 INFO    ] Checking for system updates...
[2026-10-25 05:52:50,526.526 INFO    ] 200
[2026-10-25 05:52:50,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:50,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:52:50,587.587 INFO    ] No update needed
[2026-10-25 05:52:50,590.590 INFO    ] Checking for camera pi updates...
[2026-10-25 05:52:50,624.624 INFO    ] 200
[2026-10-25 05:52:50,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:52:50,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:52:50,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:52:50,716.716 INFO    ] No camera update needed
[2026-10-25 05:52:50,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:52:50,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:52:50,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:52:50,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:52:52,772.772 INFO    ] ================================================
[2026-10-25 05:52:52,788.788 INFO    ] Launching Daemon at Sun Oct 25 05:52:52 IST 2026
[2026-10-25 05:52:52,798.798 INFO    ] ================================================
[2026-10-25 05:52:53,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:52:53
[2026-10-25 05:52:53,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:52:54,253.253 INFO    ] Initializing speech engine...
[2026-10-25 05:52:54,262.262 INFO    ] 2026-10-25 05:52:54
[2026-10-25 05:52:54,526.526 INFO    ] 2026-10-25 05:52:54
[2026-10-25 05:52:54,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:52:54,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:52:54,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:52:54,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:52:54,963.963 INFO    ] time= 25/10/2026 05:52:54
[2026-10-25 05:52:55,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:52:55,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:52:55,147.147 INFO    ] No existing commands found in stream
[2026-10-25 05:53:00,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:53:00,162.162 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 05:53:03,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:53:03,621.621 INFO    ] Checking for system updates...
[2026-10-25 05:53:03,663.663 INFO    ] 200
[2026-10-25 05:53:03,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:03,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:03,727.727 INFO    ] No update needed
[2026-10-25 05:53:03,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 05:53:03,766.766 INFO    ] 200
[2026-10-25 05:53:03,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:03,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:53:03,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:03,868.868 INFO    ] No camera update needed
[2026-10-25 05:53:03,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:53:03,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:53:03,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:53:03,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:53:05,923.923 INFO    ] ================================================
[2026-10-25 05:53:05,938.938 INFO    ] Launching Daemon at Sun Oct 25 05:53:05 IST 2026
[2026-10-25 05:53:05,949.949 INFO    ] ================================================
[2026-10-25 05:53:06,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:53:06
[2026-10-25 05:53:07,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:53:07,399.399 INFO    ] Initializing speech engine...
[2026-10-25 05:53:07,406.406 INFO    ] 2026-10-25 05:53:07
[2026-10-25 05:53:07,666.666 INFO    ] 2026-10-25 05:53:07
[2026-10-25 05:53:07,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:53:07,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:53:07,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:53:08,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:53:08,113.113 INFO    ] time= 25/10/2026 05:53:08
[2026-10-25 05:53:08,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:53:08,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:53:08,293.293 INFO    ] No existing commands found in stream
[2026-10-25 05:53:13,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:53:13,311.311 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 05:53:15,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:53:15,567.567 INFO    ] Checking for system updates...
[2026-10-25 05:53:15,604.604 INFO    ] 200
[2026-10-25 05:53:15,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:15,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:15,667.667 INFO    ] No update needed
[2026-10-25 05:53:15,670.670 INFO    ] Checking for camera pi updates...
[2026-10-25 05:53:15,704.704 INFO    ] 200
[2026-10-25 05:53:15,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:15,747.747 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:53:15,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:15,808.808 INFO    ] No camera update needed
[2026-10-25 05:53:15,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:53:15,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:53:15,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:53:15,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:53:17,864.864 INFO    ] ================================================
[2026-10-25 05:53:17,879.879 INFO    ] Launching Daemon at Sun Oct 25 05:53:17 IST 2026
[2026-10-25 05:53:17,890.890 INFO    ] ================================================
[2026-10-25 05:53:18,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:53:18
[2026-10-25 05:53:19,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:53:19,289.289 INFO    ] Initializing speech engine...
[2026-10-25 05:53:19,296.296 INFO    ] 2026-10-25 05:53:19
[2026-10-25 05:53:19,571.571 INFO    ] 2026-10-25 05:53:19
[2026-10-25 05:53:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:53:19,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:53:19,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:53:19,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:53:19,950.950 INFO    ] time= 25/10/2026 05:53:19
[2026-10-25 05:53:19,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:53:20,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:53:20,135.135 INFO    ] No existing commands found in stream
[2026-10-25 05:53:25,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:53:25,157.157 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 05:53:26,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:53:26,867.867 INFO    ] Checking for system updates...
[2026-10-25 05:53:26,902.902 INFO    ] 200
[2026-10-25 05:53:26,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:26,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:53:26,961.961 INFO    ] No update needed
[2026-10-25 05:53:26,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 05:53:27,001.001 INFO    ] 200
[2026-10-25 05:53:27,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:27,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:53:27,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:53:27,100.100 INFO    ] No camera update needed
[2026-10-25 05:53:27,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:53:27,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:53:27,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:53:27,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:53:29,155.155 INFO    ] ================================================
[2026-10-25 05:53:29,170.170 INFO    ] Launching Daemon at Sun Oct 25 05:53:29 IST 2026
[2026-10-25 05:53:29,181.181 INFO    ] ================================================
[2026-10-25 05:53:29,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:53:29
[2026-10-25 05:53:30,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:53:30,612.612 INFO    ] Initializing speech engine...
[2026-10-25 05:53:30,616.616 INFO    ] 2026-10-25 05:53:30
[2026-10-25 05:53:30,879.879 INFO    ] 2026-10-25 05:53:30
[2026-10-25 05:53:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:53:31,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:53:31,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:53:31,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:53:31,351.351 INFO    ] time= 25/10/2026 05:53:31
[2026-10-25 05:53:31,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:53:31,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:53:31,498.498 INFO    ] No existing commands found in stream
[2026-10-25 05:53:36,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:53:36,513.513 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 05:53:40,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:53:40,075.075 INFO    ] Checking for system updates...
[2026-10-25 05:53:40,115.115 INFO    ] 200
[2026-10-25 05:53:40,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:40,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:53:40,185.185 INFO    ] No update needed
[2026-10-25 05:53:40,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 05:53:40,228.228 INFO    ] 200
[2026-10-25 05:53:40,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:40,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:53:40,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:53:40,333.333 INFO    ] No camera update needed
[2026-10-25 05:53:40,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:53:40,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:53:40,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:53:40,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:53:42,393.393 INFO    ] ================================================
[2026-10-25 05:53:42,407.407 INFO    ] Launching Daemon at Sun Oct 25 05:53:42 IST 2026
[2026-10-25 05:53:42,418.418 INFO    ] ================================================
[2026-10-25 05:53:43,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:53:43
[2026-10-25 05:53:43,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:53:43,968.968 INFO    ] Initializing speech engine...
[2026-10-25 05:53:43,975.975 INFO    ] 2026-10-25 05:53:43
[2026-10-25 05:53:44,281.281 INFO    ] 2026-10-25 05:53:44
[2026-10-25 05:53:44,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:53:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:53:44,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:53:44,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:53:44,661.661 INFO    ] time= 25/10/2026 05:53:44
[2026-10-25 05:53:44,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:53:44,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:53:44,776.776 INFO    ] No existing commands found in stream
[2026-10-25 05:53:49,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:53:49,794.794 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 05:53:53,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:53:53,892.892 INFO    ] Checking for system updates...
[2026-10-25 05:53:53,929.929 INFO    ] 200
[2026-10-25 05:53:53,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:53,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:53,989.989 INFO    ] No update needed
[2026-10-25 05:53:53,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 05:53:54,026.026 INFO    ] 200
[2026-10-25 05:53:54,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:53:54,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:53:54,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:53:54,125.125 INFO    ] No camera update needed
[2026-10-25 05:53:54,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:53:54,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:53:54,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:53:54,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:53:56,184.184 INFO    ] ================================================
[2026-10-25 05:53:56,200.200 INFO    ] Launching Daemon at Sun Oct 25 05:53:56 IST 2026
[2026-10-25 05:53:56,210.210 INFO    ] ================================================
[2026-10-25 05:53:56,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:53:56
[2026-10-25 05:53:57,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:53:57,638.638 INFO    ] Initializing speech engine...
[2026-10-25 05:53:57,654.654 INFO    ] 2026-10-25 05:53:57
[2026-10-25 05:53:57,937.937 INFO    ] 2026-10-25 05:53:57
[2026-10-25 05:53:57,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:53:59,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:53:59,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:53:59,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:53:59,616.616 INFO    ] time= 25/10/2026 05:53:59
[2026-10-25 05:53:59,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:53:59,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:53:59,684.684 INFO    ] No existing commands found in stream
[2026-10-25 05:54:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:54:04,700.700 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 05:54:06,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:54:06,942.942 INFO    ] Checking for system updates...
[2026-10-25 05:54:06,978.978 INFO    ] 200
[2026-10-25 05:54:06,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:07,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:07,043.043 INFO    ] No update needed
[2026-10-25 05:54:07,045.045 INFO    ] Checking for camera pi updates...
[2026-10-25 05:54:07,082.082 INFO    ] 200
[2026-10-25 05:54:07,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:07,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:54:07,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:07,197.197 INFO    ] No camera update needed
[2026-10-25 05:54:07,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:54:07,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:54:07,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:54:07,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:54:09,252.252 INFO    ] ================================================
[2026-10-25 05:54:09,267.267 INFO    ] Launching Daemon at Sun Oct 25 05:54:09 IST 2026
[2026-10-25 05:54:09,278.278 INFO    ] ================================================
[2026-10-25 05:54:09,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:54:09
[2026-10-25 05:54:10,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:54:10,754.754 INFO    ] Initializing speech engine...
[2026-10-25 05:54:10,765.765 INFO    ] 2026-10-25 05:54:10
[2026-10-25 05:54:11,041.041 INFO    ] 2026-10-25 05:54:11
[2026-10-25 05:54:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:54:11,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:54:11,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:54:11,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:54:11,519.519 INFO    ] time= 25/10/2026 05:54:11
[2026-10-25 05:54:11,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:54:11,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:54:11,718.718 INFO    ] No existing commands found in stream
[2026-10-25 05:54:16,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:54:16,748.748 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 05:54:24,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:54:24,646.646 INFO    ] Checking for system updates...
[2026-10-25 05:54:24,684.684 INFO    ] 200
[2026-10-25 05:54:24,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:24,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:24,744.744 INFO    ] No update needed
[2026-10-25 05:54:24,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 05:54:24,786.786 INFO    ] 200
[2026-10-25 05:54:24,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:24,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:54:24,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:24,892.892 INFO    ] No camera update needed
[2026-10-25 05:54:24,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:54:24,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:54:24,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:54:24,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:54:26,953.953 INFO    ] ================================================
[2026-10-25 05:54:26,968.968 INFO    ] Launching Daemon at Sun Oct 25 05:54:26 IST 2026
[2026-10-25 05:54:26,980.980 INFO    ] ================================================
[2026-10-25 05:54:27,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:54:27
[2026-10-25 05:54:28,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:54:28,591.591 INFO    ] Initializing speech engine...
[2026-10-25 05:54:28,605.605 INFO    ] 2026-10-25 05:54:28
[2026-10-25 05:54:28,886.886 INFO    ] 2026-10-25 05:54:28
[2026-10-25 05:54:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:54:29,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:54:29,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:54:29,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:54:29,860.860 INFO    ] time= 25/10/2026 05:54:29
[2026-10-25 05:54:29,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:54:29,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:54:29,990.990 INFO    ] No existing commands found in stream
[2026-10-25 05:54:35,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:54:35,006.006 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 05:54:37,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:54:37,422.422 INFO    ] Checking for system updates...
[2026-10-25 05:54:37,459.459 INFO    ] 200
[2026-10-25 05:54:37,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:37,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:37,519.519 INFO    ] No update needed
[2026-10-25 05:54:37,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 05:54:37,558.558 INFO    ] 200
[2026-10-25 05:54:37,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:37,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:54:37,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:54:37,773.773 INFO    ] No camera update needed
[2026-10-25 05:54:37,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:54:37,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:54:37,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:54:37,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:54:39,832.832 INFO    ] ================================================
[2026-10-25 05:54:39,848.848 INFO    ] Launching Daemon at Sun Oct 25 05:54:39 IST 2026
[2026-10-25 05:54:39,859.859 INFO    ] ================================================
[2026-10-25 05:54:40,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:54:40
[2026-10-25 05:54:41,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:54:41,278.278 INFO    ] Initializing speech engine...
[2026-10-25 05:54:41,287.287 INFO    ] 2026-10-25 05:54:41
[2026-10-25 05:54:41,547.547 INFO    ] 2026-10-25 05:54:41
[2026-10-25 05:54:41,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:54:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:54:41,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:54:41,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:54:42,021.021 INFO    ] time= 25/10/2026 05:54:41
[2026-10-25 05:54:42,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:54:42,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:54:42,154.154 INFO    ] No existing commands found in stream
[2026-10-25 05:54:47,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:54:47,168.168 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 05:54:51,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:54:51,527.527 INFO    ] Checking for system updates...
[2026-10-25 05:54:51,569.569 INFO    ] 200
[2026-10-25 05:54:51,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:51,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:54:51,637.637 INFO    ] No update needed
[2026-10-25 05:54:51,640.640 INFO    ] Checking for camera pi updates...
[2026-10-25 05:54:51,681.681 INFO    ] 200
[2026-10-25 05:54:51,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:54:51,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:54:51,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:54:51,798.798 INFO    ] No camera update needed
[2026-10-25 05:54:51,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:54:51,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:54:51,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:54:51,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:54:53,859.859 INFO    ] ================================================
[2026-10-25 05:54:53,874.874 INFO    ] Launching Daemon at Sun Oct 25 05:54:53 IST 2026
[2026-10-25 05:54:53,886.886 INFO    ] ================================================
[2026-10-25 05:54:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:54:54
[2026-10-25 05:54:55,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:54:55,276.276 INFO    ] Initializing speech engine...
[2026-10-25 05:54:55,284.284 INFO    ] 2026-10-25 05:54:55
[2026-10-25 05:54:55,553.553 INFO    ] 2026-10-25 05:54:55
[2026-10-25 05:54:55,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:54:55,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:54:55,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:54:55,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:54:55,927.927 INFO    ] time= 25/10/2026 05:54:55
[2026-10-25 05:54:55,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:54:55,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:54:56,118.118 INFO    ] No existing commands found in stream
[2026-10-25 05:55:01,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:01,149.149 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 05:55:02,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:55:02,213.213 INFO    ] Checking for system updates...
[2026-10-25 05:55:02,256.256 INFO    ] 200
[2026-10-25 05:55:02,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:02,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:02,327.327 INFO    ] No update needed
[2026-10-25 05:55:02,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 05:55:02,372.372 INFO    ] 200
[2026-10-25 05:55:02,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:02,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:55:02,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:02,478.478 INFO    ] No camera update needed
[2026-10-25 05:55:02,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:55:02,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:55:02,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:55:02,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:55:04,544.544 INFO    ] ================================================
[2026-10-25 05:55:04,560.560 INFO    ] Launching Daemon at Sun Oct 25 05:55:04 IST 2026
[2026-10-25 05:55:04,571.571 INFO    ] ================================================
[2026-10-25 05:55:05,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:55:05
[2026-10-25 05:55:05,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:55:06,210.210 INFO    ] Initializing speech engine...
[2026-10-25 05:55:06,224.224 INFO    ] 2026-10-25 05:55:06
[2026-10-25 05:55:06,534.534 INFO    ] 2026-10-25 05:55:06
[2026-10-25 05:55:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:55:06,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:55:06,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:55:07,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:55:07,043.043 INFO    ] time= 25/10/2026 05:55:07
[2026-10-25 05:55:07,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:55:07,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:55:07,196.196 INFO    ] No existing commands found in stream
[2026-10-25 05:55:12,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:12,221.221 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 05:55:13,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:55:13,538.538 INFO    ] Checking for system updates...
[2026-10-25 05:55:13,580.580 INFO    ] 200
[2026-10-25 05:55:13,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:13,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:55:13,641.641 INFO    ] No update needed
[2026-10-25 05:55:13,643.643 INFO    ] Checking for camera pi updates...
[2026-10-25 05:55:13,679.679 INFO    ] 200
[2026-10-25 05:55:13,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:13,724.724 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:55:13,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:55:13,778.778 INFO    ] No camera update needed
[2026-10-25 05:55:13,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:55:13,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:55:13,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:55:13,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:55:15,840.840 INFO    ] ================================================
[2026-10-25 05:55:15,861.861 INFO    ] Launching Daemon at Sun Oct 25 05:55:15 IST 2026
[2026-10-25 05:55:15,872.872 INFO    ] ================================================
[2026-10-25 05:55:16,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:55:16
[2026-10-25 05:55:17,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:55:17,505.505 INFO    ] Initializing speech engine...
[2026-10-25 05:55:17,513.513 INFO    ] 2026-10-25 05:55:17
[2026-10-25 05:55:17,807.807 INFO    ] 2026-10-25 05:55:17
[2026-10-25 05:55:17,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:55:18,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:55:18,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:55:18,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:55:18,285.285 INFO    ] time= 25/10/2026 05:55:18
[2026-10-25 05:55:18,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:55:18,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:55:18,473.473 INFO    ] No existing commands found in stream
[2026-10-25 05:55:23,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:23,503.503 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 05:55:26,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:55:26,515.515 INFO    ] Checking for system updates...
[2026-10-25 05:55:26,553.553 INFO    ] 200
[2026-10-25 05:55:26,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:26,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:55:26,619.619 INFO    ] No update needed
[2026-10-25 05:55:26,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 05:55:26,655.655 INFO    ] 200
[2026-10-25 05:55:26,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:26,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:55:26,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:55:26,765.765 INFO    ] No camera update needed
[2026-10-25 05:55:26,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:55:26,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:55:26,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:55:26,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:55:28,821.821 INFO    ] ================================================
[2026-10-25 05:55:28,836.836 INFO    ] Launching Daemon at Sun Oct 25 05:55:28 IST 2026
[2026-10-25 05:55:28,846.846 INFO    ] ================================================
[2026-10-25 05:55:29,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:55:29
[2026-10-25 05:55:30,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:55:30,445.445 INFO    ] Initializing speech engine...
[2026-10-25 05:55:30,456.456 INFO    ] 2026-10-25 05:55:30
[2026-10-25 05:55:30,762.762 INFO    ] 2026-10-25 05:55:30
[2026-10-25 05:55:30,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:55:31,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:55:31,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:55:31,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:55:31,269.269 INFO    ] time= 25/10/2026 05:55:31
[2026-10-25 05:55:31,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:55:31,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:55:31,444.444 INFO    ] No existing commands found in stream
[2026-10-25 05:55:36,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:36,463.463 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 05:55:37,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:55:37,613.613 INFO    ] Checking for system updates...
[2026-10-25 05:55:37,650.650 INFO    ] 200
[2026-10-25 05:55:37,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:37,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:37,710.710 INFO    ] No update needed
[2026-10-25 05:55:37,713.713 INFO    ] Checking for camera pi updates...
[2026-10-25 05:55:37,746.746 INFO    ] 200
[2026-10-25 05:55:37,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:37,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:55:37,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:37,856.856 INFO    ] No camera update needed
[2026-10-25 05:55:37,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:55:37,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:55:37,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:55:37,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:55:39,912.912 INFO    ] ================================================
[2026-10-25 05:55:39,927.927 INFO    ] Launching Daemon at Sun Oct 25 05:55:39 IST 2026
[2026-10-25 05:55:39,937.937 INFO    ] ================================================
[2026-10-25 05:55:40,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:55:40
[2026-10-25 05:55:41,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:55:41,360.360 INFO    ] Initializing speech engine...
[2026-10-25 05:55:41,367.367 INFO    ] 2026-10-25 05:55:41
[2026-10-25 05:55:41,658.658 INFO    ] 2026-10-25 05:55:41
[2026-10-25 05:55:41,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:55:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:55:41,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:55:42,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:55:42,033.033 INFO    ] time= 25/10/2026 05:55:42
[2026-10-25 05:55:42,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:55:42,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:55:42,156.156 INFO    ] No existing commands found in stream
[2026-10-25 05:55:47,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:47,177.177 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 05:55:50,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:55:50,142.142 INFO    ] Checking for system updates...
[2026-10-25 05:55:50,179.179 INFO    ] 200
[2026-10-25 05:55:50,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:50,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:50,239.239 INFO    ] No update needed
[2026-10-25 05:55:50,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 05:55:50,276.276 INFO    ] 200
[2026-10-25 05:55:50,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:55:50,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:55:50,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:55:50,375.375 INFO    ] No camera update needed
[2026-10-25 05:55:50,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:55:50,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:55:50,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:55:50,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:55:52,433.433 INFO    ] ================================================
[2026-10-25 05:55:52,448.448 INFO    ] Launching Daemon at Sun Oct 25 05:55:52 IST 2026
[2026-10-25 05:55:52,458.458 INFO    ] ================================================
[2026-10-25 05:55:53,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:55:53
[2026-10-25 05:55:53,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:55:53,871.871 INFO    ] Initializing speech engine...
[2026-10-25 05:55:53,887.887 INFO    ] 2026-10-25 05:55:53
[2026-10-25 05:55:54,154.154 INFO    ] 2026-10-25 05:55:54
[2026-10-25 05:55:54,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:55:54,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:55:54,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:55:54,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:55:54,527.527 INFO    ] time= 25/10/2026 05:55:54
[2026-10-25 05:55:54,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:55:54,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:55:54,649.649 INFO    ] No existing commands found in stream
[2026-10-25 05:55:59,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:55:59,665.665 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 05:56:00,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:56:00,823.823 INFO    ] Checking for system updates...
[2026-10-25 05:56:00,859.859 INFO    ] 200
[2026-10-25 05:56:00,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:00,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:56:00,916.916 INFO    ] No update needed
[2026-10-25 05:56:00,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:00,952.952 INFO    ] 200
[2026-10-25 05:56:00,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:00,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:01,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:56:01,063.063 INFO    ] No camera update needed
[2026-10-25 05:56:01,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:01,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:01,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:01,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:56:03,129.129 INFO    ] ================================================
[2026-10-25 05:56:03,146.146 INFO    ] Launching Daemon at Sun Oct 25 05:56:03 IST 2026
[2026-10-25 05:56:03,158.158 INFO    ] ================================================
[2026-10-25 05:56:03,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:56:03
[2026-10-25 05:56:04,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:56:04,607.607 INFO    ] Initializing speech engine...
[2026-10-25 05:56:04,615.615 INFO    ] 2026-10-25 05:56:04
[2026-10-25 05:56:04,917.917 INFO    ] 2026-10-25 05:56:04
[2026-10-25 05:56:04,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:56:05,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:56:05,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:56:05,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:56:05,301.301 INFO    ] time= 25/10/2026 05:56:05
[2026-10-25 05:56:05,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:56:05,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:56:05,427.427 INFO    ] No existing commands found in stream
[2026-10-25 05:56:10,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:56:10,443.443 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 05:56:12,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:56:12,166.166 INFO    ] Checking for system updates...
[2026-10-25 05:56:12,202.202 INFO    ] 200
[2026-10-25 05:56:12,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:12,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:12,261.261 INFO    ] No update needed
[2026-10-25 05:56:12,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:12,297.297 INFO    ] 200
[2026-10-25 05:56:12,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:12,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:12,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:12,410.410 INFO    ] No camera update needed
[2026-10-25 05:56:12,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:12,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:12,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:12,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:56:14,464.464 INFO    ] ================================================
[2026-10-25 05:56:14,479.479 INFO    ] Launching Daemon at Sun Oct 25 05:56:14 IST 2026
[2026-10-25 05:56:14,489.489 INFO    ] ================================================
[2026-10-25 05:56:15,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:56:15
[2026-10-25 05:56:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:56:16,003.003 INFO    ] Initializing speech engine...
[2026-10-25 05:56:16,012.012 INFO    ] 2026-10-25 05:56:16
[2026-10-25 05:56:16,261.261 INFO    ] 2026-10-25 05:56:16
[2026-10-25 05:56:16,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:56:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:56:16,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:56:16,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:56:16,740.740 INFO    ] time= 25/10/2026 05:56:16
[2026-10-25 05:56:16,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:56:16,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:56:16,896.896 INFO    ] No existing commands found in stream
[2026-10-25 05:56:21,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:56:21,918.918 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 05:56:23,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:56:23,608.608 INFO    ] Checking for system updates...
[2026-10-25 05:56:23,644.644 INFO    ] 200
[2026-10-25 05:56:23,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:23,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:23,702.702 INFO    ] No update needed
[2026-10-25 05:56:23,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:23,739.739 INFO    ] 200
[2026-10-25 05:56:23,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:23,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:23,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:23,837.837 INFO    ] No camera update needed
[2026-10-25 05:56:23,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:23,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:23,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:23,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:56:25,894.894 INFO    ] ================================================
[2026-10-25 05:56:25,909.909 INFO    ] Launching Daemon at Sun Oct 25 05:56:25 IST 2026
[2026-10-25 05:56:25,922.922 INFO    ] ================================================
[2026-10-25 05:56:26,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:56:26
[2026-10-25 05:56:27,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:56:27,396.396 INFO    ] Initializing speech engine...
[2026-10-25 05:56:27,405.405 INFO    ] 2026-10-25 05:56:27
[2026-10-25 05:56:27,657.657 INFO    ] 2026-10-25 05:56:27
[2026-10-25 05:56:27,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:56:27,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:56:27,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:56:28,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:56:28,985.985 INFO    ] time= 25/10/2026 05:56:28
[2026-10-25 05:56:28,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:56:28,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:56:29,054.054 INFO    ] No existing commands found in stream
[2026-10-25 05:56:34,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:56:34,067.067 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 05:56:34,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:56:34,982.982 INFO    ] Checking for system updates...
[2026-10-25 05:56:35,018.018 INFO    ] 200
[2026-10-25 05:56:35,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:35,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:35,077.077 INFO    ] No update needed
[2026-10-25 05:56:35,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:35,118.118 INFO    ] 200
[2026-10-25 05:56:35,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:35,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:35,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:35,316.316 INFO    ] No camera update needed
[2026-10-25 05:56:35,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:35,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:35,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:35,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:56:37,371.371 INFO    ] ================================================
[2026-10-25 05:56:37,386.386 INFO    ] Launching Daemon at Sun Oct 25 05:56:37 IST 2026
[2026-10-25 05:56:37,397.397 INFO    ] ================================================
[2026-10-25 05:56:37,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:56:37
[2026-10-25 05:56:38,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:56:38,816.816 INFO    ] Initializing speech engine...
[2026-10-25 05:56:38,825.825 INFO    ] 2026-10-25 05:56:38
[2026-10-25 05:56:39,069.069 INFO    ] 2026-10-25 05:56:39
[2026-10-25 05:56:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:56:39,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:56:39,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:56:39,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:56:39,544.544 INFO    ] time= 25/10/2026 05:56:39
[2026-10-25 05:56:39,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:56:39,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:56:39,719.719 INFO    ] No existing commands found in stream
[2026-10-25 05:56:44,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:56:44,751.751 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 05:56:45,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:56:45,196.196 INFO    ] Checking for system updates...
[2026-10-25 05:56:45,233.233 INFO    ] 200
[2026-10-25 05:56:45,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:45,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:56:45,290.290 INFO    ] No update needed
[2026-10-25 05:56:45,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:45,327.327 INFO    ] 200
[2026-10-25 05:56:45,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:45,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:45,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:56:45,416.416 INFO    ] No camera update needed
[2026-10-25 05:56:45,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:45,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:45,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:45,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:56:47,473.473 INFO    ] ================================================
[2026-10-25 05:56:47,488.488 INFO    ] Launching Daemon at Sun Oct 25 05:56:47 IST 2026
[2026-10-25 05:56:47,499.499 INFO    ] ================================================
[2026-10-25 05:56:48,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:56:48
[2026-10-25 05:56:48,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:56:48,899.899 INFO    ] Initializing speech engine...
[2026-10-25 05:56:48,922.922 INFO    ] 2026-10-25 05:56:48
[2026-10-25 05:56:49,175.175 INFO    ] 2026-10-25 05:56:49
[2026-10-25 05:56:49,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:56:49,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:56:49,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:56:49,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:56:49,651.651 INFO    ] time= 25/10/2026 05:56:49
[2026-10-25 05:56:49,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:56:49,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:56:49,854.854 INFO    ] No existing commands found in stream
[2026-10-25 05:56:54,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:56:54,884.884 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 05:56:59,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:56:59,727.727 INFO    ] Checking for system updates...
[2026-10-25 05:56:59,763.763 INFO    ] 200
[2026-10-25 05:56:59,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:59,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:59,830.830 INFO    ] No update needed
[2026-10-25 05:56:59,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 05:56:59,866.866 INFO    ] 200
[2026-10-25 05:56:59,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:56:59,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:56:59,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:56:59,963.963 INFO    ] No camera update needed
[2026-10-25 05:56:59,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:56:59,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:56:59,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:56:59,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:57:02,020.020 INFO    ] ================================================
[2026-10-25 05:57:02,044.044 INFO    ] Launching Daemon at Sun Oct 25 05:57:02 IST 2026
[2026-10-25 05:57:02,057.057 INFO    ] ================================================
[2026-10-25 05:57:02,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:57:02
[2026-10-25 05:57:03,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:57:03,689.689 INFO    ] Initializing speech engine...
[2026-10-25 05:57:03,698.698 INFO    ] 2026-10-25 05:57:03
[2026-10-25 05:57:03,943.943 INFO    ] 2026-10-25 05:57:03
[2026-10-25 05:57:03,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:57:04,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:57:04,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:57:04,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:57:04,410.410 INFO    ] time= 25/10/2026 05:57:04
[2026-10-25 05:57:04,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:57:04,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:57:04,561.561 INFO    ] No existing commands found in stream
[2026-10-25 05:57:09,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:57:09,579.579 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 05:57:13,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:57:13,506.506 INFO    ] Checking for system updates...
[2026-10-25 05:57:13,546.546 INFO    ] 200
[2026-10-25 05:57:13,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:13,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:57:13,610.610 INFO    ] No update needed
[2026-10-25 05:57:13,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 05:57:13,646.646 INFO    ] 200
[2026-10-25 05:57:13,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:13,689.689 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:57:13,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:57:13,757.757 INFO    ] No camera update needed
[2026-10-25 05:57:13,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:57:13,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:57:13,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:57:13,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:57:15,814.814 INFO    ] ================================================
[2026-10-25 05:57:15,829.829 INFO    ] Launching Daemon at Sun Oct 25 05:57:15 IST 2026
[2026-10-25 05:57:15,840.840 INFO    ] ================================================
[2026-10-25 05:57:16,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:57:16
[2026-10-25 05:57:16,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:57:17,256.256 INFO    ] Initializing speech engine...
[2026-10-25 05:57:17,265.265 INFO    ] 2026-10-25 05:57:17
[2026-10-25 05:57:17,511.511 INFO    ] 2026-10-25 05:57:17
[2026-10-25 05:57:17,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:57:17,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:57:17,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:57:17,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:57:18,014.014 INFO    ] time= 25/10/2026 05:57:17
[2026-10-25 05:57:18,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:57:18,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:57:18,205.205 INFO    ] No existing commands found in stream
[2026-10-25 05:57:23,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:57:23,235.235 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 05:57:24,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:57:24,654.654 INFO    ] Checking for system updates...
[2026-10-25 05:57:24,690.690 INFO    ] 200
[2026-10-25 05:57:24,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:24,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:24,749.749 INFO    ] No update needed
[2026-10-25 05:57:24,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 05:57:24,785.785 INFO    ] 200
[2026-10-25 05:57:24,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:24,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:57:24,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:24,892.892 INFO    ] No camera update needed
[2026-10-25 05:57:24,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:57:24,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:57:24,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:57:24,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:57:26,947.947 INFO    ] ================================================
[2026-10-25 05:57:26,962.962 INFO    ] Launching Daemon at Sun Oct 25 05:57:26 IST 2026
[2026-10-25 05:57:26,972.972 INFO    ] ================================================
[2026-10-25 05:57:27,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:57:27
[2026-10-25 05:57:28,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:57:28,376.376 INFO    ] Initializing speech engine...
[2026-10-25 05:57:28,384.384 INFO    ] 2026-10-25 05:57:28
[2026-10-25 05:57:28,677.677 INFO    ] 2026-10-25 05:57:28
[2026-10-25 05:57:28,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:57:29,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:57:29,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:57:29,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:57:29,940.940 INFO    ] time= 25/10/2026 05:57:29
[2026-10-25 05:57:29,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:57:29,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:57:30,063.063 INFO    ] No existing commands found in stream
[2026-10-25 05:57:35,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:57:35,078.078 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 05:57:36,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:57:36,969.969 INFO    ] Checking for system updates...
[2026-10-25 05:57:37,005.005 INFO    ] 200
[2026-10-25 05:57:37,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:37,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:37,069.069 INFO    ] No update needed
[2026-10-25 05:57:37,073.073 INFO    ] Checking for camera pi updates...
[2026-10-25 05:57:37,106.106 INFO    ] 200
[2026-10-25 05:57:37,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:37,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:57:37,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:37,370.370 INFO    ] No camera update needed
[2026-10-25 05:57:37,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:57:37,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:57:37,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:57:37,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:57:39,425.425 INFO    ] ================================================
[2026-10-25 05:57:39,441.441 INFO    ] Launching Daemon at Sun Oct 25 05:57:39 IST 2026
[2026-10-25 05:57:39,451.451 INFO    ] ================================================
[2026-10-25 05:57:40,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:57:40
[2026-10-25 05:57:40,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:57:40,858.858 INFO    ] Initializing speech engine...
[2026-10-25 05:57:40,865.865 INFO    ] 2026-10-25 05:57:40
[2026-10-25 05:57:41,158.158 INFO    ] 2026-10-25 05:57:41
[2026-10-25 05:57:41,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:57:41,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:57:41,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:57:41,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:57:41,573.573 INFO    ] time= 25/10/2026 05:57:41
[2026-10-25 05:57:41,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:57:41,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:57:41,646.646 INFO    ] No existing commands found in stream
[2026-10-25 05:57:46,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:57:46,661.661 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 05:57:47,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:57:47,638.638 INFO    ] Checking for system updates...
[2026-10-25 05:57:47,678.678 INFO    ] 200
[2026-10-25 05:57:47,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:47,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:47,737.737 INFO    ] No update needed
[2026-10-25 05:57:47,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 05:57:47,773.773 INFO    ] 200
[2026-10-25 05:57:47,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:57:47,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:57:47,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:57:47,897.897 INFO    ] No camera update needed
[2026-10-25 05:57:47,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:57:47,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:57:47,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:57:47,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:57:49,953.953 INFO    ] ================================================
[2026-10-25 05:57:49,968.968 INFO    ] Launching Daemon at Sun Oct 25 05:57:49 IST 2026
[2026-10-25 05:57:49,978.978 INFO    ] ================================================
[2026-10-25 05:57:50,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:57:50
[2026-10-25 05:57:51,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:57:51,403.403 INFO    ] Initializing speech engine...
[2026-10-25 05:57:51,411.411 INFO    ] 2026-10-25 05:57:51
[2026-10-25 05:57:51,661.661 INFO    ] 2026-10-25 05:57:51
[2026-10-25 05:57:51,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:57:51,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:57:51,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:57:52,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:57:52,120.120 INFO    ] time= 25/10/2026 05:57:52
[2026-10-25 05:57:52,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:57:52,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:57:52,278.278 INFO    ] No existing commands found in stream
[2026-10-25 05:57:57,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:57:57,293.293 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 05:58:00,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:58:00,954.954 INFO    ] Checking for system updates...
[2026-10-25 05:58:00,991.991 INFO    ] 200
[2026-10-25 05:58:00,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:01,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:01,048.048 INFO    ] No update needed
[2026-10-25 05:58:01,051.051 INFO    ] Checking for camera pi updates...
[2026-10-25 05:58:01,084.084 INFO    ] 200
[2026-10-25 05:58:01,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:01,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:58:01,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:01,197.197 INFO    ] No camera update needed
[2026-10-25 05:58:01,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:58:01,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:58:01,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:58:01,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:58:03,257.257 INFO    ] ================================================
[2026-10-25 05:58:03,276.276 INFO    ] Launching Daemon at Sun Oct 25 05:58:03 IST 2026
[2026-10-25 05:58:03,287.287 INFO    ] ================================================
[2026-10-25 05:58:03,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:58:03
[2026-10-25 05:58:04,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:58:04,782.782 INFO    ] Initializing speech engine...
[2026-10-25 05:58:04,790.790 INFO    ] 2026-10-25 05:58:04
[2026-10-25 05:58:05,072.072 INFO    ] 2026-10-25 05:58:05
[2026-10-25 05:58:05,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:58:05,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:58:05,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:58:05,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:58:05,542.542 INFO    ] time= 25/10/2026 05:58:05
[2026-10-25 05:58:05,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:58:05,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:58:05,730.730 INFO    ] No existing commands found in stream
[2026-10-25 05:58:10,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:58:10,759.759 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 05:58:14,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 05:58:14,921.921 INFO    ] Checking for system updates...
[2026-10-25 05:58:14,962.962 INFO    ] 200
[2026-10-25 05:58:14,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:15,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:15,025.025 INFO    ] No update needed
[2026-10-25 05:58:15,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 05:58:15,064.064 INFO    ] 200
[2026-10-25 05:58:15,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:15,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:58:15,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:15,172.172 INFO    ] No camera update needed
[2026-10-25 05:58:15,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:58:15,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:58:15,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:58:15,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:58:17,229.229 INFO    ] ================================================
[2026-10-25 05:58:17,245.245 INFO    ] Launching Daemon at Sun Oct 25 05:58:17 IST 2026
[2026-10-25 05:58:17,256.256 INFO    ] ================================================
[2026-10-25 05:58:17,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:58:17
[2026-10-25 05:58:18,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:58:18,649.649 INFO    ] Initializing speech engine...
[2026-10-25 05:58:18,657.657 INFO    ] 2026-10-25 05:58:18
[2026-10-25 05:58:18,926.926 INFO    ] 2026-10-25 05:58:18
[2026-10-25 05:58:18,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:58:19,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:58:19,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:58:19,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:58:19,399.399 INFO    ] time= 25/10/2026 05:58:19
[2026-10-25 05:58:19,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:58:19,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:58:19,546.546 INFO    ] No existing commands found in stream
[2026-10-25 05:58:24,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:58:24,573.573 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 05:58:25,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:58:25,976.976 INFO    ] Checking for system updates...
[2026-10-25 05:58:26,018.018 INFO    ] 200
[2026-10-25 05:58:26,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:26,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:26,085.085 INFO    ] No update needed
[2026-10-25 05:58:26,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 05:58:26,123.123 INFO    ] 200
[2026-10-25 05:58:26,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:26,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:58:26,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:26,228.228 INFO    ] No camera update needed
[2026-10-25 05:58:26,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:58:26,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:58:26,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:58:26,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:58:28,284.284 INFO    ] ================================================
[2026-10-25 05:58:28,299.299 INFO    ] Launching Daemon at Sun Oct 25 05:58:28 IST 2026
[2026-10-25 05:58:28,311.311 INFO    ] ================================================
[2026-10-25 05:58:28,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:58:28
[2026-10-25 05:58:29,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:58:29,883.883 INFO    ] Initializing speech engine...
[2026-10-25 05:58:29,891.891 INFO    ] 2026-10-25 05:58:29
[2026-10-25 05:58:30,163.163 INFO    ] 2026-10-25 05:58:30
[2026-10-25 05:58:30,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:58:30,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:58:30,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:58:30,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:58:30,636.636 INFO    ] time= 25/10/2026 05:58:30
[2026-10-25 05:58:30,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:58:30,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:58:30,786.786 INFO    ] No existing commands found in stream
[2026-10-25 05:58:35,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:58:35,827.827 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 05:58:39,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 05:58:39,438.438 INFO    ] Checking for system updates...
[2026-10-25 05:58:39,475.475 INFO    ] 200
[2026-10-25 05:58:39,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:39,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:58:39,533.533 INFO    ] No update needed
[2026-10-25 05:58:39,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 05:58:39,573.573 INFO    ] 200
[2026-10-25 05:58:39,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:39,621.621 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:58:39,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:58:39,810.810 INFO    ] No camera update needed
[2026-10-25 05:58:39,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:58:39,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:58:39,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:58:39,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:58:41,864.864 INFO    ] ================================================
[2026-10-25 05:58:41,879.879 INFO    ] Launching Daemon at Sun Oct 25 05:58:41 IST 2026
[2026-10-25 05:58:41,891.891 INFO    ] ================================================
[2026-10-25 05:58:42,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:58:42
[2026-10-25 05:58:43,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:58:43,316.316 INFO    ] Initializing speech engine...
[2026-10-25 05:58:43,325.325 INFO    ] 2026-10-25 05:58:43
[2026-10-25 05:58:43,577.577 INFO    ] 2026-10-25 05:58:43
[2026-10-25 05:58:43,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:58:43,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:58:43,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:58:44,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:58:44,052.052 INFO    ] time= 25/10/2026 05:58:44
[2026-10-25 05:58:44,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:58:44,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:58:44,211.211 INFO    ] No existing commands found in stream
[2026-10-25 05:58:49,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:58:49,225.225 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 05:58:53,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:58:53,399.399 INFO    ] Checking for system updates...
[2026-10-25 05:58:53,435.435 INFO    ] 200
[2026-10-25 05:58:53,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:53,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:53,501.501 INFO    ] No update needed
[2026-10-25 05:58:53,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 05:58:53,542.542 INFO    ] 200
[2026-10-25 05:58:53,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:58:53,590.590 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:58:53,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:58:53,641.641 INFO    ] No camera update needed
[2026-10-25 05:58:53,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:58:53,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:58:53,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:58:53,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:58:55,696.696 INFO    ] ================================================
[2026-10-25 05:58:55,712.712 INFO    ] Launching Daemon at Sun Oct 25 05:58:55 IST 2026
[2026-10-25 05:58:55,723.723 INFO    ] ================================================
[2026-10-25 05:58:56,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:58:56
[2026-10-25 05:58:57,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:58:57,295.295 INFO    ] Initializing speech engine...
[2026-10-25 05:58:57,309.309 INFO    ] 2026-10-25 05:58:57
[2026-10-25 05:58:57,592.592 INFO    ] 2026-10-25 05:58:57
[2026-10-25 05:58:57,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:58:57,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:58:57,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:58:58,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:58:58,023.023 INFO    ] time= 25/10/2026 05:58:58
[2026-10-25 05:58:58,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:58:58,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:58:58,167.167 INFO    ] No existing commands found in stream
[2026-10-25 05:59:03,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:59:03,196.196 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 05:59:05,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 05:59:05,371.371 INFO    ] Checking for system updates...
[2026-10-25 05:59:05,407.407 INFO    ] 200
[2026-10-25 05:59:05,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:05,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:05,471.471 INFO    ] No update needed
[2026-10-25 05:59:05,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 05:59:05,507.507 INFO    ] 200
[2026-10-25 05:59:05,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:05,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:59:05,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:05,605.605 INFO    ] No camera update needed
[2026-10-25 05:59:05,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:59:05,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:59:05,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:59:05,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:59:07,659.659 INFO    ] ================================================
[2026-10-25 05:59:07,675.675 INFO    ] Launching Daemon at Sun Oct 25 05:59:07 IST 2026
[2026-10-25 05:59:07,685.685 INFO    ] ================================================
[2026-10-25 05:59:08,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:59:08
[2026-10-25 05:59:08,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:59:09,098.098 INFO    ] Initializing speech engine...
[2026-10-25 05:59:09,107.107 INFO    ] 2026-10-25 05:59:09
[2026-10-25 05:59:09,352.352 INFO    ] 2026-10-25 05:59:09
[2026-10-25 05:59:09,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:59:09,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:59:09,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:59:09,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:59:09,826.826 INFO    ] time= 25/10/2026 05:59:09
[2026-10-25 05:59:09,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:59:09,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:59:10,028.028 INFO    ] No existing commands found in stream
[2026-10-25 05:59:15,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:59:15,058.058 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 05:59:19,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:59:19,475.475 INFO    ] Checking for system updates...
[2026-10-25 05:59:19,515.515 INFO    ] 200
[2026-10-25 05:59:19,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:19,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:19,580.580 INFO    ] No update needed
[2026-10-25 05:59:19,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 05:59:19,620.620 INFO    ] 200
[2026-10-25 05:59:19,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:19,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:59:19,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:19,741.741 INFO    ] No camera update needed
[2026-10-25 05:59:19,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:59:19,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:59:19,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:59:19,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:59:21,798.798 INFO    ] ================================================
[2026-10-25 05:59:21,813.813 INFO    ] Launching Daemon at Sun Oct 25 05:59:21 IST 2026
[2026-10-25 05:59:21,824.824 INFO    ] ================================================
[2026-10-25 05:59:22,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:59:22
[2026-10-25 05:59:23,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:59:23,423.423 INFO    ] Initializing speech engine...
[2026-10-25 05:59:23,434.434 INFO    ] 2026-10-25 05:59:23
[2026-10-25 05:59:23,706.706 INFO    ] 2026-10-25 05:59:23
[2026-10-25 05:59:23,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:59:23,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:59:24,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:59:24,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:59:24,208.208 INFO    ] time= 25/10/2026 05:59:24
[2026-10-25 05:59:24,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:59:24,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:59:24,418.418 INFO    ] No existing commands found in stream
[2026-10-25 05:59:29,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:59:29,438.438 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 05:59:31,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 05:59:31,890.890 INFO    ] Checking for system updates...
[2026-10-25 05:59:31,933.933 INFO    ] 200
[2026-10-25 05:59:31,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:32,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:59:32,010.010 INFO    ] No update needed
[2026-10-25 05:59:32,014.014 INFO    ] Checking for camera pi updates...
[2026-10-25 05:59:32,062.062 INFO    ] 200
[2026-10-25 05:59:32,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:32,125.125 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:59:32,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:59:32,168.168 INFO    ] No camera update needed
[2026-10-25 05:59:32,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:59:32,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:59:32,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:59:32,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:59:34,228.228 INFO    ] ================================================
[2026-10-25 05:59:34,243.243 INFO    ] Launching Daemon at Sun Oct 25 05:59:34 IST 2026
[2026-10-25 05:59:34,254.254 INFO    ] ================================================
[2026-10-25 05:59:34,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:59:34
[2026-10-25 05:59:35,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:59:35,665.665 INFO    ] Initializing speech engine...
[2026-10-25 05:59:35,674.674 INFO    ] 2026-10-25 05:59:35
[2026-10-25 05:59:35,967.967 INFO    ] 2026-10-25 05:59:35
[2026-10-25 05:59:36,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:59:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:59:36,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:59:36,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:59:36,382.382 INFO    ] time= 25/10/2026 05:59:36
[2026-10-25 05:59:36,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:59:36,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:59:36,470.470 INFO    ] No existing commands found in stream
[2026-10-25 05:59:41,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:59:41,485.485 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 05:59:45,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 05:59:45,306.306 INFO    ] Checking for system updates...
[2026-10-25 05:59:45,342.342 INFO    ] 200
[2026-10-25 05:59:45,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:45,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:59:45,406.406 INFO    ] No update needed
[2026-10-25 05:59:45,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 05:59:45,446.446 INFO    ] 200
[2026-10-25 05:59:45,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:45,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:59:45,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 05:59:45,555.555 INFO    ] No camera update needed
[2026-10-25 05:59:45,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:59:45,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:59:45,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:59:45,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 05:59:47,611.611 INFO    ] ================================================
[2026-10-25 05:59:47,626.626 INFO    ] Launching Daemon at Sun Oct 25 05:59:47 IST 2026
[2026-10-25 05:59:47,637.637 INFO    ] ================================================
[2026-10-25 05:59:48,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 05:59:48
[2026-10-25 05:59:48,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 05:59:49,250.250 INFO    ] Initializing speech engine...
[2026-10-25 05:59:49,258.258 INFO    ] 2026-10-25 05:59:49
[2026-10-25 05:59:49,528.528 INFO    ] 2026-10-25 05:59:49
[2026-10-25 05:59:49,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 05:59:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 05:59:49,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 05:59:49,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 05:59:49,991.991 INFO    ] time= 25/10/2026 05:59:49
[2026-10-25 05:59:50,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 05:59:50,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 05:59:50,196.196 INFO    ] No existing commands found in stream
[2026-10-25 05:59:55,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 05:59:55,222.222 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 05:59:58,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 05:59:58,192.192 INFO    ] Checking for system updates...
[2026-10-25 05:59:58,232.232 INFO    ] 200
[2026-10-25 05:59:58,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:58,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:58,297.297 INFO    ] No update needed
[2026-10-25 05:59:58,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 05:59:58,336.336 INFO    ] 200
[2026-10-25 05:59:58,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 05:59:58,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 05:59:58,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 05:59:58,437.437 INFO    ] No camera update needed
[2026-10-25 05:59:58,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 05:59:58,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 05:59:58,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 05:59:58,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:00:00,493.493 INFO    ] ================================================
[2026-10-25 06:00:00,508.508 INFO    ] Launching Daemon at Sun Oct 25 06:00:00 IST 2026
[2026-10-25 06:00:00,518.518 INFO    ] ================================================
[2026-10-25 06:00:01,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:00:01
[2026-10-25 06:00:02,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:00:04,445.445 INFO    ] Initializing speech engine...
[2026-10-25 06:00:04,448.448 INFO    ] 2026-10-25 06:00:04
[2026-10-25 06:00:05,240.240 INFO    ] 2026-10-25 06:00:05
[2026-10-25 06:00:05,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:00:05,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:00:05,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:00:05,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:00:05,900.900 INFO    ] time= 25/10/2026 06:00:05
[2026-10-25 06:00:05,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:00:05,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:00:06,058.058 INFO    ] No existing commands found in stream
[2026-10-25 06:00:11,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:00:11,082.082 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 06:00:12,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:00:12,900.900 INFO    ] Checking for system updates...
[2026-10-25 06:00:12,936.936 INFO    ] 200
[2026-10-25 06:00:12,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:12,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:13,000.000 INFO    ] No update needed
[2026-10-25 06:00:13,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 06:00:13,036.036 INFO    ] 200
[2026-10-25 06:00:13,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:13,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:00:13,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:13,140.140 INFO    ] No camera update needed
[2026-10-25 06:00:13,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:00:13,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:00:13,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:00:13,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:00:15,198.198 INFO    ] ================================================
[2026-10-25 06:00:15,214.214 INFO    ] Launching Daemon at Sun Oct 25 06:00:15 IST 2026
[2026-10-25 06:00:15,224.224 INFO    ] ================================================
[2026-10-25 06:00:15,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:00:15
[2026-10-25 06:00:16,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:00:16,659.659 INFO    ] Initializing speech engine...
[2026-10-25 06:00:16,667.667 INFO    ] 2026-10-25 06:00:16
[2026-10-25 06:00:16,969.969 INFO    ] 2026-10-25 06:00:16
[2026-10-25 06:00:17,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:00:17,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:00:17,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:00:17,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:00:17,373.373 INFO    ] time= 25/10/2026 06:00:17
[2026-10-25 06:00:17,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:00:17,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:00:17,562.562 INFO    ] No existing commands found in stream
[2026-10-25 06:00:22,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:00:22,589.589 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 06:00:24,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:00:24,841.841 INFO    ] Checking for system updates...
[2026-10-25 06:00:24,877.877 INFO    ] 200
[2026-10-25 06:00:24,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:24,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:24,936.936 INFO    ] No update needed
[2026-10-25 06:00:24,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 06:00:24,975.975 INFO    ] 200
[2026-10-25 06:00:24,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:25,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:00:25,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:25,080.080 INFO    ] No camera update needed
[2026-10-25 06:00:25,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:00:25,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:00:25,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:00:25,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:00:27,135.135 INFO    ] ================================================
[2026-10-25 06:00:27,151.151 INFO    ] Launching Daemon at Sun Oct 25 06:00:27 IST 2026
[2026-10-25 06:00:27,163.163 INFO    ] ================================================
[2026-10-25 06:00:27,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:00:27
[2026-10-25 06:00:28,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:00:28,622.622 INFO    ] Initializing speech engine...
[2026-10-25 06:00:28,632.632 INFO    ] 2026-10-25 06:00:28
[2026-10-25 06:00:28,880.880 INFO    ] 2026-10-25 06:00:28
[2026-10-25 06:00:28,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:00:29,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:00:29,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:00:29,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:00:29,857.857 INFO    ] time= 25/10/2026 06:00:29
[2026-10-25 06:00:29,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:00:29,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:00:29,978.978 INFO    ] No existing commands found in stream
[2026-10-25 06:00:35,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:00:35,005.005 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 06:00:35,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:00:35,695.695 INFO    ] Checking for system updates...
[2026-10-25 06:00:35,734.734 INFO    ] 200
[2026-10-25 06:00:35,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:35,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:00:35,797.797 INFO    ] No update needed
[2026-10-25 06:00:35,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 06:00:35,833.833 INFO    ] 200
[2026-10-25 06:00:35,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:35,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:00:35,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:00:35,931.931 INFO    ] No camera update needed
[2026-10-25 06:00:35,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:00:35,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:00:35,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:00:35,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:00:37,986.986 INFO    ] ================================================
[2026-10-25 06:00:38,002.002 INFO    ] Launching Daemon at Sun Oct 25 06:00:37 IST 2026
[2026-10-25 06:00:38,013.013 INFO    ] ================================================
[2026-10-25 06:00:38,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:00:38
[2026-10-25 06:00:39,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:00:39,584.584 INFO    ] Initializing speech engine...
[2026-10-25 06:00:39,596.596 INFO    ] 2026-10-25 06:00:39
[2026-10-25 06:00:39,879.879 INFO    ] 2026-10-25 06:00:39
[2026-10-25 06:00:39,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:00:40,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:00:40,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:00:40,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:00:40,322.322 INFO    ] time= 25/10/2026 06:00:40
[2026-10-25 06:00:40,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:00:40,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:00:40,466.466 INFO    ] No existing commands found in stream
[2026-10-25 06:00:45,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:00:45,476.476 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 06:00:45,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:00:45,995.995 INFO    ] Checking for system updates...
[2026-10-25 06:00:46,034.034 INFO    ] 200
[2026-10-25 06:00:46,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:46,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:46,092.092 INFO    ] No update needed
[2026-10-25 06:00:46,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 06:00:46,130.130 INFO    ] 200
[2026-10-25 06:00:46,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:00:46,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:00:46,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:00:46,343.343 INFO    ] No camera update needed
[2026-10-25 06:00:46,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:00:46,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:00:46,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:00:46,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:00:48,398.398 INFO    ] ================================================
[2026-10-25 06:00:48,413.413 INFO    ] Launching Daemon at Sun Oct 25 06:00:48 IST 2026
[2026-10-25 06:00:48,424.424 INFO    ] ================================================
[2026-10-25 06:00:49,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:00:49
[2026-10-25 06:00:49,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:00:49,886.886 INFO    ] Initializing speech engine...
[2026-10-25 06:00:49,894.894 INFO    ] 2026-10-25 06:00:49
[2026-10-25 06:00:50,152.152 INFO    ] 2026-10-25 06:00:50
[2026-10-25 06:00:50,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:00:50,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:00:50,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:00:50,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:00:50,671.671 INFO    ] time= 25/10/2026 06:00:50
[2026-10-25 06:00:50,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:00:50,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:00:50,823.823 INFO    ] No existing commands found in stream
[2026-10-25 06:00:55,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:00:55,857.857 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 06:01:00,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:01:00,015.015 INFO    ] Checking for system updates...
[2026-10-25 06:01:00,055.055 INFO    ] 200
[2026-10-25 06:01:00,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:00,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:00,113.113 INFO    ] No update needed
[2026-10-25 06:01:00,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 06:01:00,152.152 INFO    ] 200
[2026-10-25 06:01:00,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:00,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:01:00,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:00,261.261 INFO    ] No camera update needed
[2026-10-25 06:01:00,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:01:00,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:01:00,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:01:00,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:01:02,318.318 INFO    ] ================================================
[2026-10-25 06:01:02,335.335 INFO    ] Launching Daemon at Sun Oct 25 06:01:02 IST 2026
[2026-10-25 06:01:02,348.348 INFO    ] ================================================
[2026-10-25 06:01:03,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:01:02
[2026-10-25 06:01:03,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:01:03,884.884 INFO    ] Initializing speech engine...
[2026-10-25 06:01:03,899.899 INFO    ] 2026-10-25 06:01:03
[2026-10-25 06:01:04,165.165 INFO    ] 2026-10-25 06:01:04
[2026-10-25 06:01:04,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:01:04,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:01:04,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:01:04,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:01:04,545.545 INFO    ] time= 25/10/2026 06:01:04
[2026-10-25 06:01:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:01:04,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:01:04,723.723 INFO    ] No existing commands found in stream
[2026-10-25 06:01:09,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:01:09,755.755 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 06:01:10,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:01:10,361.361 INFO    ] Checking for system updates...
[2026-10-25 06:01:10,402.402 INFO    ] 200
[2026-10-25 06:01:10,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:10,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:10,459.459 INFO    ] No update needed
[2026-10-25 06:01:10,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 06:01:10,495.495 INFO    ] 200
[2026-10-25 06:01:10,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:10,543.543 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:01:10,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:10,604.604 INFO    ] No camera update needed
[2026-10-25 06:01:10,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:01:10,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:01:10,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:01:10,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:01:12,662.662 INFO    ] ================================================
[2026-10-25 06:01:12,677.677 INFO    ] Launching Daemon at Sun Oct 25 06:01:12 IST 2026
[2026-10-25 06:01:12,688.688 INFO    ] ================================================
[2026-10-25 06:01:13,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:01:13
[2026-10-25 06:01:13,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:01:14,128.128 INFO    ] Initializing speech engine...
[2026-10-25 06:01:14,134.134 INFO    ] 2026-10-25 06:01:14
[2026-10-25 06:01:14,429.429 INFO    ] 2026-10-25 06:01:14
[2026-10-25 06:01:14,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:01:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:01:14,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:01:14,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:01:14,832.832 INFO    ] time= 25/10/2026 06:01:14
[2026-10-25 06:01:14,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:01:14,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:01:14,935.935 INFO    ] No existing commands found in stream
[2026-10-25 06:01:19,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:01:19,950.950 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 06:01:22,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:01:22,789.789 INFO    ] Checking for system updates...
[2026-10-25 06:01:22,826.826 INFO    ] 200
[2026-10-25 06:01:22,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:22,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:22,893.893 INFO    ] No update needed
[2026-10-25 06:01:22,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 06:01:22,931.931 INFO    ] 200
[2026-10-25 06:01:22,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:22,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:01:23,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:23,034.034 INFO    ] No camera update needed
[2026-10-25 06:01:23,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:01:23,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:01:23,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:01:23,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:01:25,094.094 INFO    ] ================================================
[2026-10-25 06:01:25,110.110 INFO    ] Launching Daemon at Sun Oct 25 06:01:25 IST 2026
[2026-10-25 06:01:25,121.121 INFO    ] ================================================
[2026-10-25 06:01:25,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:01:25
[2026-10-25 06:01:26,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:01:26,529.529 INFO    ] Initializing speech engine...
[2026-10-25 06:01:26,536.536 INFO    ] 2026-10-25 06:01:26
[2026-10-25 06:01:26,833.833 INFO    ] 2026-10-25 06:01:26
[2026-10-25 06:01:26,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:01:27,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:01:27,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:01:27,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:01:27,256.256 INFO    ] time= 25/10/2026 06:01:27
[2026-10-25 06:01:27,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:01:27,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:01:27,344.344 INFO    ] No existing commands found in stream
[2026-10-25 06:01:32,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:01:32,362.362 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 06:01:35,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:01:35,668.668 INFO    ] Checking for system updates...
[2026-10-25 06:01:35,705.705 INFO    ] 200
[2026-10-25 06:01:35,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:35,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:35,771.771 INFO    ] No update needed
[2026-10-25 06:01:35,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 06:01:35,811.811 INFO    ] 200
[2026-10-25 06:01:35,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:35,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:01:35,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:35,920.920 INFO    ] No camera update needed
[2026-10-25 06:01:35,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:01:35,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:01:35,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:01:35,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:01:37,976.976 INFO    ] ================================================
[2026-10-25 06:01:37,992.992 INFO    ] Launching Daemon at Sun Oct 25 06:01:37 IST 2026
[2026-10-25 06:01:38,004.004 INFO    ] ================================================
[2026-10-25 06:01:38,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:01:38
[2026-10-25 06:01:39,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:01:39,411.411 INFO    ] Initializing speech engine...
[2026-10-25 06:01:39,416.416 INFO    ] 2026-10-25 06:01:39
[2026-10-25 06:01:39,717.717 INFO    ] 2026-10-25 06:01:39
[2026-10-25 06:01:39,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:01:39,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:01:39,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:01:40,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:01:40,096.096 INFO    ] time= 25/10/2026 06:01:40
[2026-10-25 06:01:40,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:01:40,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:01:40,169.169 INFO    ] No existing commands found in stream
[2026-10-25 06:01:45,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:01:45,206.206 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 06:01:48,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:01:48,793.793 INFO    ] Checking for system updates...
[2026-10-25 06:01:48,833.833 INFO    ] 200
[2026-10-25 06:01:48,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:48,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:48,899.899 INFO    ] No update needed
[2026-10-25 06:01:48,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 06:01:48,936.936 INFO    ] 200
[2026-10-25 06:01:48,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:01:48,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:01:49,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:01:49,039.039 INFO    ] No camera update needed
[2026-10-25 06:01:49,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:01:49,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:01:49,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:01:49,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:01:51,094.094 INFO    ] ================================================
[2026-10-25 06:01:51,111.111 INFO    ] Launching Daemon at Sun Oct 25 06:01:51 IST 2026
[2026-10-25 06:01:51,122.122 INFO    ] ================================================
[2026-10-25 06:01:51,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:01:51
[2026-10-25 06:01:52,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:01:52,523.523 INFO    ] Initializing speech engine...
[2026-10-25 06:01:52,545.545 INFO    ] 2026-10-25 06:01:52
[2026-10-25 06:01:52,796.796 INFO    ] 2026-10-25 06:01:52
[2026-10-25 06:01:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:01:53,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:01:53,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:01:53,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:01:53,166.166 INFO    ] time= 25/10/2026 06:01:53
[2026-10-25 06:01:53,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:01:53,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:01:53,323.323 INFO    ] No existing commands found in stream
[2026-10-25 06:01:58,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:01:58,351.351 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 06:02:00,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:02:00,017.017 INFO    ] Checking for system updates...
[2026-10-25 06:02:00,057.057 INFO    ] 200
[2026-10-25 06:02:00,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:00,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:00,114.114 INFO    ] No update needed
[2026-10-25 06:02:00,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 06:02:00,151.151 INFO    ] 200
[2026-10-25 06:02:00,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:00,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:02:00,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:00,256.256 INFO    ] No camera update needed
[2026-10-25 06:02:00,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:02:00,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:02:00,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:02:00,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:02:02,320.320 INFO    ] ================================================
[2026-10-25 06:02:02,345.345 INFO    ] Launching Daemon at Sun Oct 25 06:02:02 IST 2026
[2026-10-25 06:02:02,365.365 INFO    ] ================================================
[2026-10-25 06:02:02,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:02:02
[2026-10-25 06:02:03,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:02:03,909.909 INFO    ] Initializing speech engine...
[2026-10-25 06:02:03,918.918 INFO    ] 2026-10-25 06:02:03
[2026-10-25 06:02:04,178.178 INFO    ] 2026-10-25 06:02:04
[2026-10-25 06:02:04,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:02:04,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:02:04,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:02:04,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:02:04,636.636 INFO    ] time= 25/10/2026 06:02:04
[2026-10-25 06:02:04,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:02:04,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:02:04,850.850 INFO    ] No existing commands found in stream
[2026-10-25 06:02:09,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:02:09,883.883 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 06:02:11,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:02:11,698.698 INFO    ] Checking for system updates...
[2026-10-25 06:02:11,738.738 INFO    ] 200
[2026-10-25 06:02:11,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:11,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:11,796.796 INFO    ] No update needed
[2026-10-25 06:02:11,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 06:02:11,835.835 INFO    ] 200
[2026-10-25 06:02:11,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:11,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:02:11,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:11,933.933 INFO    ] No camera update needed
[2026-10-25 06:02:11,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:02:11,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:02:11,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:02:11,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:02:13,991.991 INFO    ] ================================================
[2026-10-25 06:02:14,006.006 INFO    ] Launching Daemon at Sun Oct 25 06:02:14 IST 2026
[2026-10-25 06:02:14,017.017 INFO    ] ================================================
[2026-10-25 06:02:14,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:02:14
[2026-10-25 06:02:15,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:02:15,439.439 INFO    ] Initializing speech engine...
[2026-10-25 06:02:15,448.448 INFO    ] 2026-10-25 06:02:15
[2026-10-25 06:02:15,694.694 INFO    ] 2026-10-25 06:02:15
[2026-10-25 06:02:15,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:02:15,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:02:15,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:02:16,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:02:16,189.189 INFO    ] time= 25/10/2026 06:02:16
[2026-10-25 06:02:16,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:02:16,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:02:16,391.391 INFO    ] No existing commands found in stream
[2026-10-25 06:02:21,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:02:21,420.420 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 06:02:23,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:02:23,204.204 INFO    ] Checking for system updates...
[2026-10-25 06:02:23,244.244 INFO    ] 200
[2026-10-25 06:02:23,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:23,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:23,303.303 INFO    ] No update needed
[2026-10-25 06:02:23,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 06:02:23,340.340 INFO    ] 200
[2026-10-25 06:02:23,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:23,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:02:23,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:23,435.435 INFO    ] No camera update needed
[2026-10-25 06:02:23,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:02:23,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:02:23,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:02:23,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:02:25,496.496 INFO    ] ================================================
[2026-10-25 06:02:25,512.512 INFO    ] Launching Daemon at Sun Oct 25 06:02:25 IST 2026
[2026-10-25 06:02:25,523.523 INFO    ] ================================================
[2026-10-25 06:02:26,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:02:26
[2026-10-25 06:02:26,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:02:27,178.178 INFO    ] Initializing speech engine...
[2026-10-25 06:02:27,186.186 INFO    ] 2026-10-25 06:02:27
[2026-10-25 06:02:27,506.506 INFO    ] 2026-10-25 06:02:27
[2026-10-25 06:02:27,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:02:27,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:02:27,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:02:27,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:02:28,013.013 INFO    ] time= 25/10/2026 06:02:27
[2026-10-25 06:02:28,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:02:28,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:02:28,125.125 INFO    ] No existing commands found in stream
[2026-10-25 06:02:33,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:02:33,138.138 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 06:02:34,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:02:34,549.549 INFO    ] Checking for system updates...
[2026-10-25 06:02:34,585.585 INFO    ] 200
[2026-10-25 06:02:34,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:34,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:02:34,643.643 INFO    ] No update needed
[2026-10-25 06:02:34,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 06:02:34,679.679 INFO    ] 200
[2026-10-25 06:02:34,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:34,723.723 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:02:34,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:02:34,778.778 INFO    ] No camera update needed
[2026-10-25 06:02:34,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:02:34,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:02:34,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:02:34,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:02:36,836.836 INFO    ] ================================================
[2026-10-25 06:02:36,852.852 INFO    ] Launching Daemon at Sun Oct 25 06:02:36 IST 2026
[2026-10-25 06:02:36,862.862 INFO    ] ================================================
[2026-10-25 06:02:37,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:02:37
[2026-10-25 06:02:38,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:02:38,286.286 INFO    ] Initializing speech engine...
[2026-10-25 06:02:38,292.292 INFO    ] 2026-10-25 06:02:38
[2026-10-25 06:02:38,568.568 INFO    ] 2026-10-25 06:02:38
[2026-10-25 06:02:38,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:02:38,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:02:38,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:02:38,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:02:38,955.955 INFO    ] time= 25/10/2026 06:02:38
[2026-10-25 06:02:38,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:02:39,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:02:39,117.117 INFO    ] No existing commands found in stream
[2026-10-25 06:02:44,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:02:44,150.150 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 06:02:47,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:02:47,693.693 INFO    ] Checking for system updates...
[2026-10-25 06:02:47,730.730 INFO    ] 200
[2026-10-25 06:02:47,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:47,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:47,794.794 INFO    ] No update needed
[2026-10-25 06:02:47,796.796 INFO    ] Checking for camera pi updates...
[2026-10-25 06:02:47,833.833 INFO    ] 200
[2026-10-25 06:02:47,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:02:47,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:02:47,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:02:47,929.929 INFO    ] No camera update needed
[2026-10-25 06:02:47,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:02:47,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:02:47,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:02:47,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:02:49,994.994 INFO    ] ================================================
[2026-10-25 06:02:50,009.009 INFO    ] Launching Daemon at Sun Oct 25 06:02:50 IST 2026
[2026-10-25 06:02:50,020.020 INFO    ] ================================================
[2026-10-25 06:02:50,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:02:50
[2026-10-25 06:02:51,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:02:51,589.589 INFO    ] Initializing speech engine...
[2026-10-25 06:02:51,596.596 INFO    ] 2026-10-25 06:02:51
[2026-10-25 06:02:51,877.877 INFO    ] 2026-10-25 06:02:51
[2026-10-25 06:02:51,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:02:52,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:02:52,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:02:52,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:02:52,408.408 INFO    ] time= 25/10/2026 06:02:52
[2026-10-25 06:02:52,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:02:52,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:02:52,538.538 INFO    ] No existing commands found in stream
[2026-10-25 06:02:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:02:57,566.566 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 06:03:01,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:03:01,442.442 INFO    ] Checking for system updates...
[2026-10-25 06:03:01,479.479 INFO    ] 200
[2026-10-25 06:03:01,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:01,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:01,544.544 INFO    ] No update needed
[2026-10-25 06:03:01,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 06:03:01,582.582 INFO    ] 200
[2026-10-25 06:03:01,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:01,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:03:01,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:01,836.836 INFO    ] No camera update needed
[2026-10-25 06:03:01,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:03:01,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:03:01,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:03:01,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:03:03,910.910 INFO    ] ================================================
[2026-10-25 06:03:03,925.925 INFO    ] Launching Daemon at Sun Oct 25 06:03:03 IST 2026
[2026-10-25 06:03:03,936.936 INFO    ] ================================================
[2026-10-25 06:03:04,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:03:04
[2026-10-25 06:03:05,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:03:05,339.339 INFO    ] Initializing speech engine...
[2026-10-25 06:03:05,362.362 INFO    ] 2026-10-25 06:03:05
[2026-10-25 06:03:05,617.617 INFO    ] 2026-10-25 06:03:05
[2026-10-25 06:03:05,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:03:05,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:03:05,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:03:06,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:03:06,031.031 INFO    ] time= 25/10/2026 06:03:06
[2026-10-25 06:03:06,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:03:06,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:03:06,184.184 INFO    ] No existing commands found in stream
[2026-10-25 06:03:11,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:03:11,212.212 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 06:03:15,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:03:15,426.426 INFO    ] Checking for system updates...
[2026-10-25 06:03:15,462.462 INFO    ] 200
[2026-10-25 06:03:15,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:15,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:15,528.528 INFO    ] No update needed
[2026-10-25 06:03:15,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 06:03:15,567.567 INFO    ] 200
[2026-10-25 06:03:15,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:15,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:03:15,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:15,672.672 INFO    ] No camera update needed
[2026-10-25 06:03:15,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:03:15,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:03:15,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:03:15,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:03:17,736.736 INFO    ] ================================================
[2026-10-25 06:03:17,751.751 INFO    ] Launching Daemon at Sun Oct 25 06:03:17 IST 2026
[2026-10-25 06:03:17,762.762 INFO    ] ================================================
[2026-10-25 06:03:18,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:03:18
[2026-10-25 06:03:18,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:03:19,232.232 INFO    ] Initializing speech engine...
[2026-10-25 06:03:19,245.245 INFO    ] 2026-10-25 06:03:19
[2026-10-25 06:03:19,527.527 INFO    ] 2026-10-25 06:03:19
[2026-10-25 06:03:19,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:03:19,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:03:19,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:03:19,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:03:19,898.898 INFO    ] time= 25/10/2026 06:03:19
[2026-10-25 06:03:19,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:03:19,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:03:20,024.024 INFO    ] No existing commands found in stream
[2026-10-25 06:03:25,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:03:25,036.036 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 06:03:29,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:03:29,916.916 INFO    ] Checking for system updates...
[2026-10-25 06:03:29,953.953 INFO    ] 200
[2026-10-25 06:03:29,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:30,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:03:30,014.014 INFO    ] No update needed
[2026-10-25 06:03:30,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 06:03:30,056.056 INFO    ] 200
[2026-10-25 06:03:30,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:30,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:03:30,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:03:30,163.163 INFO    ] No camera update needed
[2026-10-25 06:03:30,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:03:30,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:03:30,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:03:30,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:03:32,223.223 INFO    ] ================================================
[2026-10-25 06:03:32,244.244 INFO    ] Launching Daemon at Sun Oct 25 06:03:32 IST 2026
[2026-10-25 06:03:32,260.260 INFO    ] ================================================
[2026-10-25 06:03:32,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:03:32
[2026-10-25 06:03:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:03:33,791.791 INFO    ] Initializing speech engine...
[2026-10-25 06:03:33,814.814 INFO    ] 2026-10-25 06:03:33
[2026-10-25 06:03:34,071.071 INFO    ] 2026-10-25 06:03:34
[2026-10-25 06:03:34,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:03:34,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:03:34,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:03:34,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:03:34,421.421 INFO    ] time= 25/10/2026 06:03:34
[2026-10-25 06:03:34,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:03:34,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:03:34,538.538 INFO    ] No existing commands found in stream
[2026-10-25 06:03:39,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:03:39,568.568 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 06:03:42,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:03:42,793.793 INFO    ] Checking for system updates...
[2026-10-25 06:03:42,834.834 INFO    ] 200
[2026-10-25 06:03:42,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:42,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:42,892.892 INFO    ] No update needed
[2026-10-25 06:03:42,895.895 INFO    ] Checking for camera pi updates...
[2026-10-25 06:03:42,928.928 INFO    ] 200
[2026-10-25 06:03:42,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:42,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:03:43,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:03:43,036.036 INFO    ] No camera update needed
[2026-10-25 06:03:43,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:03:43,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:03:43,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:03:43,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:03:45,092.092 INFO    ] ================================================
[2026-10-25 06:03:45,107.107 INFO    ] Launching Daemon at Sun Oct 25 06:03:45 IST 2026
[2026-10-25 06:03:45,118.118 INFO    ] ================================================
[2026-10-25 06:03:45,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:03:45
[2026-10-25 06:03:46,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:03:46,535.535 INFO    ] Initializing speech engine...
[2026-10-25 06:03:46,545.545 INFO    ] 2026-10-25 06:03:46
[2026-10-25 06:03:46,805.805 INFO    ] 2026-10-25 06:03:46
[2026-10-25 06:03:46,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:03:47,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:03:47,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:03:47,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:03:47,262.262 INFO    ] time= 25/10/2026 06:03:47
[2026-10-25 06:03:47,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:03:47,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:03:47,409.409 INFO    ] No existing commands found in stream
[2026-10-25 06:03:52,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:03:52,424.424 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 06:03:52,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:03:52,996.996 INFO    ] Checking for system updates...
[2026-10-25 06:03:53,032.032 INFO    ] 200
[2026-10-25 06:03:53,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:53,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:03:53,097.097 INFO    ] No update needed
[2026-10-25 06:03:53,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 06:03:53,135.135 INFO    ] 200
[2026-10-25 06:03:53,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:03:53,180.180 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:03:53,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:03:53,263.263 INFO    ] No camera update needed
[2026-10-25 06:03:53,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:03:53,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:03:53,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:03:53,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:03:55,322.322 INFO    ] ================================================
[2026-10-25 06:03:55,337.337 INFO    ] Launching Daemon at Sun Oct 25 06:03:55 IST 2026
[2026-10-25 06:03:55,348.348 INFO    ] ================================================
[2026-10-25 06:03:55,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:03:55
[2026-10-25 06:03:56,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:03:56,753.753 INFO    ] Initializing speech engine...
[2026-10-25 06:03:56,760.760 INFO    ] 2026-10-25 06:03:56
[2026-10-25 06:03:57,057.057 INFO    ] 2026-10-25 06:03:57
[2026-10-25 06:03:57,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:03:57,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:03:57,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:03:57,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:03:57,477.477 INFO    ] time= 25/10/2026 06:03:57
[2026-10-25 06:03:57,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:03:57,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:03:57,565.565 INFO    ] No existing commands found in stream
[2026-10-25 06:04:02,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:04:02,594.594 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 06:04:04,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:04:04,895.895 INFO    ] Checking for system updates...
[2026-10-25 06:04:04,932.932 INFO    ] 200
[2026-10-25 06:04:04,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:04,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:04,989.989 INFO    ] No update needed
[2026-10-25 06:04:04,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 06:04:05,029.029 INFO    ] 200
[2026-10-25 06:04:05,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:05,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:04:05,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:05,124.124 INFO    ] No camera update needed
[2026-10-25 06:04:05,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:04:05,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:04:05,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:04:05,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:04:07,179.179 INFO    ] ================================================
[2026-10-25 06:04:07,193.193 INFO    ] Launching Daemon at Sun Oct 25 06:04:07 IST 2026
[2026-10-25 06:04:07,204.204 INFO    ] ================================================
[2026-10-25 06:04:07,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:04:07
[2026-10-25 06:04:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:04:08,686.686 INFO    ] Initializing speech engine...
[2026-10-25 06:04:08,695.695 INFO    ] 2026-10-25 06:04:08
[2026-10-25 06:04:08,966.966 INFO    ] 2026-10-25 06:04:08
[2026-10-25 06:04:09,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:04:09,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:04:09,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:04:09,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:04:09,545.545 INFO    ] time= 25/10/2026 06:04:09
[2026-10-25 06:04:09,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:04:09,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:04:09,692.692 INFO    ] No existing commands found in stream
[2026-10-25 06:04:14,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:04:14,718.718 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 06:04:18,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:04:18,589.589 INFO    ] Checking for system updates...
[2026-10-25 06:04:18,627.627 INFO    ] 200
[2026-10-25 06:04:18,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:18,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:04:18,697.697 INFO    ] No update needed
[2026-10-25 06:04:18,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 06:04:18,735.735 INFO    ] 200
[2026-10-25 06:04:18,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:18,781.781 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:04:18,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:04:18,852.852 INFO    ] No camera update needed
[2026-10-25 06:04:18,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:04:18,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:04:18,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:04:18,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:04:20,912.912 INFO    ] ================================================
[2026-10-25 06:04:20,927.927 INFO    ] Launching Daemon at Sun Oct 25 06:04:20 IST 2026
[2026-10-25 06:04:20,938.938 INFO    ] ================================================
[2026-10-25 06:04:21,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:04:21
[2026-10-25 06:04:22,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:04:22,345.345 INFO    ] Initializing speech engine...
[2026-10-25 06:04:22,354.354 INFO    ] 2026-10-25 06:04:22
[2026-10-25 06:04:22,651.651 INFO    ] 2026-10-25 06:04:22
[2026-10-25 06:04:22,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:04:22,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:04:22,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:04:23,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:04:23,050.050 INFO    ] time= 25/10/2026 06:04:23
[2026-10-25 06:04:23,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:04:23,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:04:23,171.171 INFO    ] No existing commands found in stream
[2026-10-25 06:04:28,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:04:28,205.205 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 06:04:31,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:04:31,532.532 INFO    ] Checking for system updates...
[2026-10-25 06:04:31,570.570 INFO    ] 200
[2026-10-25 06:04:31,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:31,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:31,630.630 INFO    ] No update needed
[2026-10-25 06:04:31,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 06:04:31,676.676 INFO    ] 200
[2026-10-25 06:04:31,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:31,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:04:31,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:31,778.778 INFO    ] No camera update needed
[2026-10-25 06:04:31,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:04:31,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:04:31,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:04:31,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:04:33,843.843 INFO    ] ================================================
[2026-10-25 06:04:33,858.858 INFO    ] Launching Daemon at Sun Oct 25 06:04:33 IST 2026
[2026-10-25 06:04:33,869.869 INFO    ] ================================================
[2026-10-25 06:04:34,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:04:34
[2026-10-25 06:04:35,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:04:35,282.282 INFO    ] Initializing speech engine...
[2026-10-25 06:04:35,291.291 INFO    ] 2026-10-25 06:04:35
[2026-10-25 06:04:35,536.536 INFO    ] 2026-10-25 06:04:35
[2026-10-25 06:04:35,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:04:35,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:04:35,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:04:35,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:04:36,005.005 INFO    ] time= 25/10/2026 06:04:35
[2026-10-25 06:04:36,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:04:36,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:04:36,161.161 INFO    ] No existing commands found in stream
[2026-10-25 06:04:41,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:04:41,183.183 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 06:04:42,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:04:42,406.406 INFO    ] Checking for system updates...
[2026-10-25 06:04:42,442.442 INFO    ] 200
[2026-10-25 06:04:42,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:42,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:42,500.500 INFO    ] No update needed
[2026-10-25 06:04:42,502.502 INFO    ] Checking for camera pi updates...
[2026-10-25 06:04:42,537.537 INFO    ] 200
[2026-10-25 06:04:42,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:42,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:04:42,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:04:42,630.630 INFO    ] No camera update needed
[2026-10-25 06:04:42,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:04:42,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:04:42,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:04:42,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:04:44,685.685 INFO    ] ================================================
[2026-10-25 06:04:44,701.701 INFO    ] Launching Daemon at Sun Oct 25 06:04:44 IST 2026
[2026-10-25 06:04:44,712.712 INFO    ] ================================================
[2026-10-25 06:04:45,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:04:45
[2026-10-25 06:04:45,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:04:46,174.174 INFO    ] Initializing speech engine...
[2026-10-25 06:04:46,185.185 INFO    ] 2026-10-25 06:04:46
[2026-10-25 06:04:46,447.447 INFO    ] 2026-10-25 06:04:46
[2026-10-25 06:04:46,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:04:46,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:04:46,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:04:46,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:04:46,901.901 INFO    ] time= 25/10/2026 06:04:46
[2026-10-25 06:04:46,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:04:46,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:04:47,056.056 INFO    ] No existing commands found in stream
[2026-10-25 06:04:52,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:04:52,071.071 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 06:04:54,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:04:54,164.164 INFO    ] Checking for system updates...
[2026-10-25 06:04:54,200.200 INFO    ] 200
[2026-10-25 06:04:54,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:54,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:04:54,260.260 INFO    ] No update needed
[2026-10-25 06:04:54,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 06:04:54,298.298 INFO    ] 200
[2026-10-25 06:04:54,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:04:54,341.341 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:04:54,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:04:54,396.396 INFO    ] No camera update needed
[2026-10-25 06:04:54,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:04:54,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:04:54,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:04:54,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:04:56,453.453 INFO    ] ================================================
[2026-10-25 06:04:56,469.469 INFO    ] Launching Daemon at Sun Oct 25 06:04:56 IST 2026
[2026-10-25 06:04:56,481.481 INFO    ] ================================================
[2026-10-25 06:04:57,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:04:57
[2026-10-25 06:04:57,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:04:58,063.063 INFO    ] Initializing speech engine...
[2026-10-25 06:04:58,074.074 INFO    ] 2026-10-25 06:04:58
[2026-10-25 06:04:58,342.342 INFO    ] 2026-10-25 06:04:58
[2026-10-25 06:04:58,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:04:59,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:04:59,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:04:59,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:04:59,814.814 INFO    ] time= 25/10/2026 06:04:59
[2026-10-25 06:04:59,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:04:59,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:04:59,883.883 INFO    ] No existing commands found in stream
[2026-10-25 06:05:04,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:05:04,900.900 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 06:05:08,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:05:08,681.681 INFO    ] Checking for system updates...
[2026-10-25 06:05:08,718.718 INFO    ] 200
[2026-10-25 06:05:08,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:08,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:08,786.786 INFO    ] No update needed
[2026-10-25 06:05:08,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 06:05:08,829.829 INFO    ] 200
[2026-10-25 06:05:08,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:08,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:05:09,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:09,040.040 INFO    ] No camera update needed
[2026-10-25 06:05:09,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:05:09,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:05:09,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:05:09,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:05:11,102.102 INFO    ] ================================================
[2026-10-25 06:05:11,118.118 INFO    ] Launching Daemon at Sun Oct 25 06:05:11 IST 2026
[2026-10-25 06:05:11,129.129 INFO    ] ================================================
[2026-10-25 06:05:11,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:05:11
[2026-10-25 06:05:12,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:05:12,526.526 INFO    ] Initializing speech engine...
[2026-10-25 06:05:12,534.534 INFO    ] 2026-10-25 06:05:12
[2026-10-25 06:05:12,805.805 INFO    ] 2026-10-25 06:05:12
[2026-10-25 06:05:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:05:13,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:05:13,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:05:13,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:05:13,272.272 INFO    ] time= 25/10/2026 06:05:13
[2026-10-25 06:05:13,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:05:13,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:05:13,422.422 INFO    ] No existing commands found in stream
[2026-10-25 06:05:18,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:05:18,436.436 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 06:05:19,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:05:19,121.121 INFO    ] Checking for system updates...
[2026-10-25 06:05:19,163.163 INFO    ] 200
[2026-10-25 06:05:19,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:19,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:19,234.234 INFO    ] No update needed
[2026-10-25 06:05:19,237.237 INFO    ] Checking for camera pi updates...
[2026-10-25 06:05:19,276.276 INFO    ] 200
[2026-10-25 06:05:19,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:19,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:05:19,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:19,383.383 INFO    ] No camera update needed
[2026-10-25 06:05:19,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:05:19,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:05:19,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:05:19,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:05:21,451.451 INFO    ] ================================================
[2026-10-25 06:05:21,467.467 INFO    ] Launching Daemon at Sun Oct 25 06:05:21 IST 2026
[2026-10-25 06:05:21,479.479 INFO    ] ================================================
[2026-10-25 06:05:22,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:05:22
[2026-10-25 06:05:22,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:05:22,937.937 INFO    ] Initializing speech engine...
[2026-10-25 06:05:22,944.944 INFO    ] 2026-10-25 06:05:22
[2026-10-25 06:05:23,189.189 INFO    ] 2026-10-25 06:05:23
[2026-10-25 06:05:23,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:05:23,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:05:23,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:05:23,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:05:23,668.668 INFO    ] time= 25/10/2026 06:05:23
[2026-10-25 06:05:23,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:05:23,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:05:23,807.807 INFO    ] No existing commands found in stream
[2026-10-25 06:05:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:05:28,822.822 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 06:05:31,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:05:31,265.265 INFO    ] Checking for system updates...
[2026-10-25 06:05:31,302.302 INFO    ] 200
[2026-10-25 06:05:31,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:31,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:05:31,372.372 INFO    ] No update needed
[2026-10-25 06:05:31,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 06:05:31,411.411 INFO    ] 200
[2026-10-25 06:05:31,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:31,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:05:31,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:05:31,524.524 INFO    ] No camera update needed
[2026-10-25 06:05:31,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:05:31,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:05:31,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:05:31,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:05:33,582.582 INFO    ] ================================================
[2026-10-25 06:05:33,598.598 INFO    ] Launching Daemon at Sun Oct 25 06:05:33 IST 2026
[2026-10-25 06:05:33,609.609 INFO    ] ================================================
[2026-10-25 06:05:34,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:05:34
[2026-10-25 06:05:34,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:05:35,002.002 INFO    ] Initializing speech engine...
[2026-10-25 06:05:35,010.010 INFO    ] 2026-10-25 06:05:35
[2026-10-25 06:05:35,281.281 INFO    ] 2026-10-25 06:05:35
[2026-10-25 06:05:35,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:05:35,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:05:35,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:05:35,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:05:35,765.765 INFO    ] time= 25/10/2026 06:05:35
[2026-10-25 06:05:35,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:05:35,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:05:35,908.908 INFO    ] No existing commands found in stream
[2026-10-25 06:05:40,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:05:40,923.923 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 06:05:42,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:05:42,571.571 INFO    ] Checking for system updates...
[2026-10-25 06:05:42,607.607 INFO    ] 200
[2026-10-25 06:05:42,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:42,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:42,665.665 INFO    ] No update needed
[2026-10-25 06:05:42,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 06:05:42,701.701 INFO    ] 200
[2026-10-25 06:05:42,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:42,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:05:42,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:05:42,799.799 INFO    ] No camera update needed
[2026-10-25 06:05:42,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:05:42,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:05:42,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:05:42,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:05:44,860.860 INFO    ] ================================================
[2026-10-25 06:05:44,876.876 INFO    ] Launching Daemon at Sun Oct 25 06:05:44 IST 2026
[2026-10-25 06:05:44,888.888 INFO    ] ================================================
[2026-10-25 06:05:45,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:05:45
[2026-10-25 06:05:46,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:05:46,441.441 INFO    ] Initializing speech engine...
[2026-10-25 06:05:46,450.450 INFO    ] 2026-10-25 06:05:46
[2026-10-25 06:05:46,700.700 INFO    ] 2026-10-25 06:05:46
[2026-10-25 06:05:46,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:05:46,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:05:46,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:05:47,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:05:47,191.191 INFO    ] time= 25/10/2026 06:05:47
[2026-10-25 06:05:47,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:05:47,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:05:47,329.329 INFO    ] No existing commands found in stream
[2026-10-25 06:05:52,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:05:52,343.343 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 06:05:53,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:05:53,181.181 INFO    ] Checking for system updates...
[2026-10-25 06:05:53,218.218 INFO    ] 200
[2026-10-25 06:05:53,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:53,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:05:53,277.277 INFO    ] No update needed
[2026-10-25 06:05:53,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 06:05:53,313.313 INFO    ] 200
[2026-10-25 06:05:53,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:05:53,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:05:53,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:05:53,421.421 INFO    ] No camera update needed
[2026-10-25 06:05:53,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:05:53,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:05:53,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:05:53,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:05:55,479.479 INFO    ] ================================================
[2026-10-25 06:05:55,494.494 INFO    ] Launching Daemon at Sun Oct 25 06:05:55 IST 2026
[2026-10-25 06:05:55,505.505 INFO    ] ================================================
[2026-10-25 06:05:56,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:05:56
[2026-10-25 06:05:56,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:05:56,963.963 INFO    ] Initializing speech engine...
[2026-10-25 06:05:56,972.972 INFO    ] 2026-10-25 06:05:56
[2026-10-25 06:05:57,223.223 INFO    ] 2026-10-25 06:05:57
[2026-10-25 06:05:57,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:05:57,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:05:57,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:05:57,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:05:57,704.704 INFO    ] time= 25/10/2026 06:05:57
[2026-10-25 06:05:57,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:05:57,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:05:57,888.888 INFO    ] No existing commands found in stream
[2026-10-25 06:06:02,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:06:02,922.922 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 06:06:07,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:06:07,192.192 INFO    ] Checking for system updates...
[2026-10-25 06:06:07,232.232 INFO    ] 200
[2026-10-25 06:06:07,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:07,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:06:07,290.290 INFO    ] No update needed
[2026-10-25 06:06:07,292.292 INFO    ] Checking for camera pi updates...
[2026-10-25 06:06:07,334.334 INFO    ] 200
[2026-10-25 06:06:07,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:07,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:06:07,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:06:07,452.452 INFO    ] No camera update needed
[2026-10-25 06:06:07,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:06:07,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:06:07,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:06:07,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:06:09,512.512 INFO    ] ================================================
[2026-10-25 06:06:09,528.528 INFO    ] Launching Daemon at Sun Oct 25 06:06:09 IST 2026
[2026-10-25 06:06:09,539.539 INFO    ] ================================================
[2026-10-25 06:06:10,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:06:10
[2026-10-25 06:06:10,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:06:10,990.990 INFO    ] Initializing speech engine...
[2026-10-25 06:06:10,999.999 INFO    ] 2026-10-25 06:06:10
[2026-10-25 06:06:11,245.245 INFO    ] 2026-10-25 06:06:11
[2026-10-25 06:06:11,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:06:11,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:06:11,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:06:11,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:06:11,719.719 INFO    ] time= 25/10/2026 06:06:11
[2026-10-25 06:06:11,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:06:11,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:06:11,862.862 INFO    ] No existing commands found in stream
[2026-10-25 06:06:16,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:06:16,877.877 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 06:06:17,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:06:17,415.415 INFO    ] Checking for system updates...
[2026-10-25 06:06:17,452.452 INFO    ] 200
[2026-10-25 06:06:17,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:17,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:17,513.513 INFO    ] No update needed
[2026-10-25 06:06:17,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 06:06:17,551.551 INFO    ] 200
[2026-10-25 06:06:17,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:17,597.597 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:06:17,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:17,653.653 INFO    ] No camera update needed
[2026-10-25 06:06:17,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:06:17,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:06:17,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:06:17,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:06:19,712.712 INFO    ] ================================================
[2026-10-25 06:06:19,727.727 INFO    ] Launching Daemon at Sun Oct 25 06:06:19 IST 2026
[2026-10-25 06:06:19,738.738 INFO    ] ================================================
[2026-10-25 06:06:20,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:06:20
[2026-10-25 06:06:20,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:06:21,194.194 INFO    ] Initializing speech engine...
[2026-10-25 06:06:21,202.202 INFO    ] 2026-10-25 06:06:21
[2026-10-25 06:06:21,463.463 INFO    ] 2026-10-25 06:06:21
[2026-10-25 06:06:21,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:06:21,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:06:21,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:06:21,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:06:22,008.008 INFO    ] time= 25/10/2026 06:06:21
[2026-10-25 06:06:22,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:06:22,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:06:22,142.142 INFO    ] No existing commands found in stream
[2026-10-25 06:06:27,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:06:27,171.171 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 06:06:31,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:06:31,362.362 INFO    ] Checking for system updates...
[2026-10-25 06:06:31,399.399 INFO    ] 200
[2026-10-25 06:06:31,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:31,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:31,457.457 INFO    ] No update needed
[2026-10-25 06:06:31,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 06:06:31,494.494 INFO    ] 200
[2026-10-25 06:06:31,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:31,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:06:31,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:31,578.578 INFO    ] No camera update needed
[2026-10-25 06:06:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:06:31,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:06:31,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:06:31,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:06:33,639.639 INFO    ] ================================================
[2026-10-25 06:06:33,656.656 INFO    ] Launching Daemon at Sun Oct 25 06:06:33 IST 2026
[2026-10-25 06:06:33,667.667 INFO    ] ================================================
[2026-10-25 06:06:34,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:06:34
[2026-10-25 06:06:34,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:06:35,068.068 INFO    ] Initializing speech engine...
[2026-10-25 06:06:35,076.076 INFO    ] 2026-10-25 06:06:35
[2026-10-25 06:06:35,351.351 INFO    ] 2026-10-25 06:06:35
[2026-10-25 06:06:35,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:06:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:06:35,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:06:35,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:06:35,727.727 INFO    ] time= 25/10/2026 06:06:35
[2026-10-25 06:06:35,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:06:35,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:06:35,889.889 INFO    ] No existing commands found in stream
[2026-10-25 06:06:40,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:06:40,917.917 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 06:06:44,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:06:44,147.147 INFO    ] Checking for system updates...
[2026-10-25 06:06:44,183.183 INFO    ] 200
[2026-10-25 06:06:44,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:44,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:44,243.243 INFO    ] No update needed
[2026-10-25 06:06:44,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 06:06:44,279.279 INFO    ] 200
[2026-10-25 06:06:44,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:44,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:06:44,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:44,376.376 INFO    ] No camera update needed
[2026-10-25 06:06:44,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:06:44,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:06:44,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:06:44,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:06:46,431.431 INFO    ] ================================================
[2026-10-25 06:06:46,447.447 INFO    ] Launching Daemon at Sun Oct 25 06:06:46 IST 2026
[2026-10-25 06:06:46,459.459 INFO    ] ================================================
[2026-10-25 06:06:47,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:06:47
[2026-10-25 06:06:47,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:06:47,863.863 INFO    ] Initializing speech engine...
[2026-10-25 06:06:47,875.875 INFO    ] 2026-10-25 06:06:47
[2026-10-25 06:06:48,139.139 INFO    ] 2026-10-25 06:06:48
[2026-10-25 06:06:48,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:06:48,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:06:48,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:06:48,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:06:48,514.514 INFO    ] time= 25/10/2026 06:06:48
[2026-10-25 06:06:48,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:06:48,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:06:48,683.683 INFO    ] No existing commands found in stream
[2026-10-25 06:06:53,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:06:53,716.716 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 06:06:57,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:06:57,442.442 INFO    ] Checking for system updates...
[2026-10-25 06:06:57,479.479 INFO    ] 200
[2026-10-25 06:06:57,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:57,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:57,538.538 INFO    ] No update needed
[2026-10-25 06:06:57,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 06:06:57,575.575 INFO    ] 200
[2026-10-25 06:06:57,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:06:57,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:06:57,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:06:57,676.676 INFO    ] No camera update needed
[2026-10-25 06:06:57,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:06:57,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:06:57,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:06:57,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:06:59,733.733 INFO    ] ================================================
[2026-10-25 06:06:59,749.749 INFO    ] Launching Daemon at Sun Oct 25 06:06:59 IST 2026
[2026-10-25 06:06:59,760.760 INFO    ] ================================================
[2026-10-25 06:07:00,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:00
[2026-10-25 06:07:00,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:07:01,187.187 INFO    ] Initializing speech engine...
[2026-10-25 06:07:01,206.206 INFO    ] 2026-10-25 06:07:01
[2026-10-25 06:07:01,457.457 INFO    ] 2026-10-25 06:07:01
[2026-10-25 06:07:01,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:07:01,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:07:01,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:07:01,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:07:01,908.908 INFO    ] time= 25/10/2026 06:07:01
[2026-10-25 06:07:01,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:07:01,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:07:01,968.968 INFO    ] No existing commands found in stream
[2026-10-25 06:07:06,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:07:06,981.981 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 06:07:10,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:07:10,317.317 INFO    ] Checking for system updates...
[2026-10-25 06:07:10,352.352 INFO    ] 200
[2026-10-25 06:07:10,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:10,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:07:10,411.411 INFO    ] No update needed
[2026-10-25 06:07:10,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 06:07:10,452.452 INFO    ] 200
[2026-10-25 06:07:10,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:10,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:07:10,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:07:10,551.551 INFO    ] No camera update needed
[2026-10-25 06:07:10,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:07:10,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:07:10,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:07:10,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:07:12,606.606 INFO    ] ================================================
[2026-10-25 06:07:12,622.622 INFO    ] Launching Daemon at Sun Oct 25 06:07:12 IST 2026
[2026-10-25 06:07:12,634.634 INFO    ] ================================================
[2026-10-25 06:07:13,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:13
[2026-10-25 06:07:13,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:07:14,056.056 INFO    ] Initializing speech engine...
[2026-10-25 06:07:14,066.066 INFO    ] 2026-10-25 06:07:14
[2026-10-25 06:07:14,312.312 INFO    ] 2026-10-25 06:07:14
[2026-10-25 06:07:14,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:07:14,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:07:14,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:07:14,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:07:14,793.793 INFO    ] time= 25/10/2026 06:07:14
[2026-10-25 06:07:14,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:07:14,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:07:14,936.936 INFO    ] No existing commands found in stream
[2026-10-25 06:07:19,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:07:19,971.971 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 06:07:22,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:07:22,487.487 INFO    ] Checking for system updates...
[2026-10-25 06:07:22,523.523 INFO    ] 200
[2026-10-25 06:07:22,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:22,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:22,581.581 INFO    ] No update needed
[2026-10-25 06:07:22,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 06:07:22,617.617 INFO    ] 200
[2026-10-25 06:07:22,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:22,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:07:22,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:22,819.819 INFO    ] No camera update needed
[2026-10-25 06:07:22,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:07:22,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:07:22,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:07:22,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:07:24,874.874 INFO    ] ================================================
[2026-10-25 06:07:24,889.889 INFO    ] Launching Daemon at Sun Oct 25 06:07:24 IST 2026
[2026-10-25 06:07:24,900.900 INFO    ] ================================================
[2026-10-25 06:07:25,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:25
[2026-10-25 06:07:26,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:07:26,302.302 INFO    ] Initializing speech engine...
[2026-10-25 06:07:26,309.309 INFO    ] 2026-10-25 06:07:26
[2026-10-25 06:07:26,607.607 INFO    ] 2026-10-25 06:07:26
[2026-10-25 06:07:26,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:07:26,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:07:26,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:07:26,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:07:26,961.961 INFO    ] time= 25/10/2026 06:07:26
[2026-10-25 06:07:26,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:07:26,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:07:27,041.041 INFO    ] No existing commands found in stream
[2026-10-25 06:07:32,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:07:32,056.056 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 06:07:33,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:07:33,382.382 INFO    ] Checking for system updates...
[2026-10-25 06:07:33,419.419 INFO    ] 200
[2026-10-25 06:07:33,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:33,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:07:33,476.476 INFO    ] No update needed
[2026-10-25 06:07:33,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 06:07:33,516.516 INFO    ] 200
[2026-10-25 06:07:33,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:33,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:07:33,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:07:33,622.622 INFO    ] No camera update needed
[2026-10-25 06:07:33,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:07:33,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:07:33,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:07:33,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:07:35,677.677 INFO    ] ================================================
[2026-10-25 06:07:35,692.692 INFO    ] Launching Daemon at Sun Oct 25 06:07:35 IST 2026
[2026-10-25 06:07:35,703.703 INFO    ] ================================================
[2026-10-25 06:07:36,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:36
[2026-10-25 06:07:36,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:07:37,135.135 INFO    ] Initializing speech engine...
[2026-10-25 06:07:37,141.141 INFO    ] 2026-10-25 06:07:37
[2026-10-25 06:07:37,414.414 INFO    ] 2026-10-25 06:07:37
[2026-10-25 06:07:37,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:07:37,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:07:37,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:07:37,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:07:37,856.856 INFO    ] time= 25/10/2026 06:07:37
[2026-10-25 06:07:37,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:07:37,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:07:38,006.006 INFO    ] No existing commands found in stream
[2026-10-25 06:07:43,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:07:43,021.021 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 06:07:46,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:07:46,871.871 INFO    ] Checking for system updates...
[2026-10-25 06:07:46,907.907 INFO    ] 200
[2026-10-25 06:07:46,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:46,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:46,972.972 INFO    ] No update needed
[2026-10-25 06:07:46,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 06:07:47,012.012 INFO    ] 200
[2026-10-25 06:07:47,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:47,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:07:47,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:47,104.104 INFO    ] No camera update needed
[2026-10-25 06:07:47,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:07:47,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:07:47,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:07:47,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:07:49,161.161 INFO    ] ================================================
[2026-10-25 06:07:49,176.176 INFO    ] Launching Daemon at Sun Oct 25 06:07:49 IST 2026
[2026-10-25 06:07:49,193.193 INFO    ] ================================================
[2026-10-25 06:07:49,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:49
[2026-10-25 06:07:50,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:07:50,591.591 INFO    ] Initializing speech engine...
[2026-10-25 06:07:50,599.599 INFO    ] 2026-10-25 06:07:50
[2026-10-25 06:07:50,875.875 INFO    ] 2026-10-25 06:07:50
[2026-10-25 06:07:50,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:07:51,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:07:51,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:07:51,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:07:51,345.345 INFO    ] time= 25/10/2026 06:07:51
[2026-10-25 06:07:51,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:07:51,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:07:51,505.505 INFO    ] No existing commands found in stream
[2026-10-25 06:07:56,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:07:56,544.544 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 06:07:57,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:07:57,043.043 INFO    ] Checking for system updates...
[2026-10-25 06:07:57,079.079 INFO    ] 200
[2026-10-25 06:07:57,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:57,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:57,138.138 INFO    ] No update needed
[2026-10-25 06:07:57,140.140 INFO    ] Checking for camera pi updates...
[2026-10-25 06:07:57,175.175 INFO    ] 200
[2026-10-25 06:07:57,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:07:57,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:07:57,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:07:57,272.272 INFO    ] No camera update needed
[2026-10-25 06:07:57,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:07:57,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:07:57,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:07:57,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:07:59,328.328 INFO    ] ================================================
[2026-10-25 06:07:59,343.343 INFO    ] Launching Daemon at Sun Oct 25 06:07:59 IST 2026
[2026-10-25 06:07:59,355.355 INFO    ] ================================================
[2026-10-25 06:07:59,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:07:59
[2026-10-25 06:08:00,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:00,842.842 INFO    ] Initializing speech engine...
[2026-10-25 06:08:00,849.849 INFO    ] 2026-10-25 06:08:00
[2026-10-25 06:08:01,148.148 INFO    ] 2026-10-25 06:08:01
[2026-10-25 06:08:01,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:01,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:01,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:01,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:01,531.531 INFO    ] time= 25/10/2026 06:08:01
[2026-10-25 06:08:01,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:01,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:08:01,658.658 INFO    ] No existing commands found in stream
[2026-10-25 06:08:06,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:08:06,674.674 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 06:08:08,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:08:08,096.096 INFO    ] Checking for system updates...
[2026-10-25 06:08:08,132.132 INFO    ] 200
[2026-10-25 06:08:08,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:08,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:08,198.198 INFO    ] No update needed
[2026-10-25 06:08:08,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 06:08:08,233.233 INFO    ] 200
[2026-10-25 06:08:08,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:08,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:08:08,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:08,329.329 INFO    ] No camera update needed
[2026-10-25 06:08:08,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:08:08,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:08:08,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:08:08,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:08:10,386.386 INFO    ] ================================================
[2026-10-25 06:08:10,401.401 INFO    ] Launching Daemon at Sun Oct 25 06:08:10 IST 2026
[2026-10-25 06:08:10,412.412 INFO    ] ================================================
[2026-10-25 06:08:11,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:08:11
[2026-10-25 06:08:11,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:11,880.880 INFO    ] Initializing speech engine...
[2026-10-25 06:08:11,893.893 INFO    ] 2026-10-25 06:08:11
[2026-10-25 06:08:12,156.156 INFO    ] 2026-10-25 06:08:12
[2026-10-25 06:08:12,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:12,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:12,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:12,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:12,651.651 INFO    ] time= 25/10/2026 06:08:12
[2026-10-25 06:08:12,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:12,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:08:12,780.780 INFO    ] No existing commands found in stream
[2026-10-25 06:08:17,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:08:17,815.815 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 06:08:21,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:08:21,693.693 INFO    ] Checking for system updates...
[2026-10-25 06:08:21,736.736 INFO    ] 200
[2026-10-25 06:08:21,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:21,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:21,805.805 INFO    ] No update needed
[2026-10-25 06:08:21,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 06:08:21,843.843 INFO    ] 200
[2026-10-25 06:08:21,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:21,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:08:21,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:21,937.937 INFO    ] No camera update needed
[2026-10-25 06:08:21,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:08:21,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:08:21,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:08:21,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:08:23,993.993 INFO    ] ================================================
[2026-10-25 06:08:24,009.009 INFO    ] Launching Daemon at Sun Oct 25 06:08:24 IST 2026
[2026-10-25 06:08:24,021.021 INFO    ] ================================================
[2026-10-25 06:08:24,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:08:24
[2026-10-25 06:08:25,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:25,505.505 INFO    ] Initializing speech engine...
[2026-10-25 06:08:25,518.518 INFO    ] 2026-10-25 06:08:25
[2026-10-25 06:08:25,785.785 INFO    ] 2026-10-25 06:08:25
[2026-10-25 06:08:25,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:26,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:26,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:26,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:26,164.164 INFO    ] time= 25/10/2026 06:08:26
[2026-10-25 06:08:26,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:26,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:08:26,342.342 INFO    ] No existing commands found in stream
[2026-10-25 06:08:31,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:08:31,369.369 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 06:08:32,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:08:32,069.069 INFO    ] Checking for system updates...
[2026-10-25 06:08:32,112.112 INFO    ] 200
[2026-10-25 06:08:32,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:32,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:32,178.178 INFO    ] No update needed
[2026-10-25 06:08:32,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 06:08:32,218.218 INFO    ] 200
[2026-10-25 06:08:32,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:32,271.271 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:08:32,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:32,315.315 INFO    ] No camera update needed
[2026-10-25 06:08:32,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:08:32,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:08:32,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:08:32,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:08:34,372.372 INFO    ] ================================================
[2026-10-25 06:08:34,389.389 INFO    ] Launching Daemon at Sun Oct 25 06:08:34 IST 2026
[2026-10-25 06:08:34,400.400 INFO    ] ================================================
[2026-10-25 06:08:35,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:08:35
[2026-10-25 06:08:35,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:36,077.077 INFO    ] Initializing speech engine...
[2026-10-25 06:08:36,084.084 INFO    ] 2026-10-25 06:08:36
[2026-10-25 06:08:36,362.362 INFO    ] 2026-10-25 06:08:36
[2026-10-25 06:08:36,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:36,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:36,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:36,858.858 INFO    ] time= 25/10/2026 06:08:36
[2026-10-25 06:08:36,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:36,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:08:37,060.060 INFO    ] No existing commands found in stream
[2026-10-25 06:08:42,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:08:42,085.085 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 06:08:43,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:08:43,263.263 INFO    ] Checking for system updates...
[2026-10-25 06:08:43,300.300 INFO    ] 200
[2026-10-25 06:08:43,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:43,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:43,361.361 INFO    ] No update needed
[2026-10-25 06:08:43,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 06:08:43,404.404 INFO    ] 200
[2026-10-25 06:08:43,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:43,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:08:43,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:43,515.515 INFO    ] No camera update needed
[2026-10-25 06:08:43,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:08:43,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:08:43,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:08:43,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:08:45,574.574 INFO    ] ================================================
[2026-10-25 06:08:45,590.590 INFO    ] Launching Daemon at Sun Oct 25 06:08:45 IST 2026
[2026-10-25 06:08:45,602.602 INFO    ] ================================================
[2026-10-25 06:08:46,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:08:46
[2026-10-25 06:08:46,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:47,212.212 INFO    ] Initializing speech engine...
[2026-10-25 06:08:47,234.234 INFO    ] 2026-10-25 06:08:47
[2026-10-25 06:08:47,522.522 INFO    ] 2026-10-25 06:08:47
[2026-10-25 06:08:47,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:47,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:47,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:47,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:47,993.993 INFO    ] time= 25/10/2026 06:08:47
[2026-10-25 06:08:48,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:48,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:08:48,187.187 INFO    ] No existing commands found in stream
[2026-10-25 06:08:53,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:08:53,216.216 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 06:08:54,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:08:54,791.791 INFO    ] Checking for system updates...
[2026-10-25 06:08:54,829.829 INFO    ] 200
[2026-10-25 06:08:54,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:54,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:54,889.889 INFO    ] No update needed
[2026-10-25 06:08:54,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 06:08:54,926.926 INFO    ] 200
[2026-10-25 06:08:54,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:08:54,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:08:55,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:08:55,032.032 INFO    ] No camera update needed
[2026-10-25 06:08:55,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:08:55,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:08:55,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:08:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:08:57,086.086 INFO    ] ================================================
[2026-10-25 06:08:57,102.102 INFO    ] Launching Daemon at Sun Oct 25 06:08:57 IST 2026
[2026-10-25 06:08:57,114.114 INFO    ] ================================================
[2026-10-25 06:08:57,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:08:57
[2026-10-25 06:08:58,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:08:58,526.526 INFO    ] Initializing speech engine...
[2026-10-25 06:08:58,538.538 INFO    ] 2026-10-25 06:08:58
[2026-10-25 06:08:58,805.805 INFO    ] 2026-10-25 06:08:58
[2026-10-25 06:08:58,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:08:59,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:08:59,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:08:59,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:08:59,938.938 INFO    ] time= 25/10/2026 06:08:59
[2026-10-25 06:08:59,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:08:59,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:00,048.048 INFO    ] No existing commands found in stream
[2026-10-25 06:09:05,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:09:05,063.063 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 06:09:06,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:09:06,083.083 INFO    ] Checking for system updates...
[2026-10-25 06:09:06,121.121 INFO    ] 200
[2026-10-25 06:09:06,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:06,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:06,180.180 INFO    ] No update needed
[2026-10-25 06:09:06,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 06:09:06,221.221 INFO    ] 200
[2026-10-25 06:09:06,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:06,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:09:06,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:06,314.314 INFO    ] No camera update needed
[2026-10-25 06:09:06,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:09:06,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:09:06,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:09:06,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:09:08,369.369 INFO    ] ================================================
[2026-10-25 06:09:08,384.384 INFO    ] Launching Daemon at Sun Oct 25 06:09:08 IST 2026
[2026-10-25 06:09:08,395.395 INFO    ] ================================================
[2026-10-25 06:09:09,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:09:09
[2026-10-25 06:09:09,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:09:09,940.940 INFO    ] Initializing speech engine...
[2026-10-25 06:09:09,957.957 INFO    ] 2026-10-25 06:09:09
[2026-10-25 06:09:10,233.233 INFO    ] 2026-10-25 06:09:10
[2026-10-25 06:09:10,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:09:10,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:09:10,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:09:10,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:09:10,608.608 INFO    ] time= 25/10/2026 06:09:10
[2026-10-25 06:09:10,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:09:10,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:10,778.778 INFO    ] No existing commands found in stream
[2026-10-25 06:09:15,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:09:15,816.816 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 06:09:16,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:09:16,842.842 INFO    ] Checking for system updates...
[2026-10-25 06:09:16,878.878 INFO    ] 200
[2026-10-25 06:09:16,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:16,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:16,938.938 INFO    ] No update needed
[2026-10-25 06:09:16,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 06:09:16,974.974 INFO    ] 200
[2026-10-25 06:09:16,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:17,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:09:17,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:17,073.073 INFO    ] No camera update needed
[2026-10-25 06:09:17,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:09:17,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:09:17,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:09:17,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:09:19,128.128 INFO    ] ================================================
[2026-10-25 06:09:19,143.143 INFO    ] Launching Daemon at Sun Oct 25 06:09:19 IST 2026
[2026-10-25 06:09:19,154.154 INFO    ] ================================================
[2026-10-25 06:09:19,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:09:19
[2026-10-25 06:09:20,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:09:20,603.603 INFO    ] Initializing speech engine...
[2026-10-25 06:09:20,605.605 INFO    ] 2026-10-25 06:09:20
[2026-10-25 06:09:20,872.872 INFO    ] 2026-10-25 06:09:20
[2026-10-25 06:09:20,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:09:21,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:09:21,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:09:21,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:09:21,214.214 INFO    ] time= 25/10/2026 06:09:21
[2026-10-25 06:09:21,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:09:21,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:21,327.327 INFO    ] No existing commands found in stream
[2026-10-25 06:09:26,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:09:26,341.341 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 06:09:26,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:09:26,783.783 INFO    ] Checking for system updates...
[2026-10-25 06:09:26,819.819 INFO    ] 200
[2026-10-25 06:09:26,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:26,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:26,878.878 INFO    ] No update needed
[2026-10-25 06:09:26,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 06:09:26,914.914 INFO    ] 200
[2026-10-25 06:09:26,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:26,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:09:27,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:27,117.117 INFO    ] No camera update needed
[2026-10-25 06:09:27,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:09:27,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:09:27,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:09:27,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:09:29,173.173 INFO    ] ================================================
[2026-10-25 06:09:29,188.188 INFO    ] Launching Daemon at Sun Oct 25 06:09:29 IST 2026
[2026-10-25 06:09:29,199.199 INFO    ] ================================================
[2026-10-25 06:09:29,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:09:29
[2026-10-25 06:09:30,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:09:30,649.649 INFO    ] Initializing speech engine...
[2026-10-25 06:09:30,658.658 INFO    ] 2026-10-25 06:09:30
[2026-10-25 06:09:30,906.906 INFO    ] 2026-10-25 06:09:30
[2026-10-25 06:09:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:09:31,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:09:31,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:09:31,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:09:31,401.401 INFO    ] time= 25/10/2026 06:09:31
[2026-10-25 06:09:31,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:09:31,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:31,590.590 INFO    ] No existing commands found in stream
[2026-10-25 06:09:36,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:09:36,624.624 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 06:09:39,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:09:39,764.764 INFO    ] Checking for system updates...
[2026-10-25 06:09:39,800.800 INFO    ] 200
[2026-10-25 06:09:39,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:39,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:09:39,867.867 INFO    ] No update needed
[2026-10-25 06:09:39,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 06:09:39,904.904 INFO    ] 200
[2026-10-25 06:09:39,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:39,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:09:39,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:09:39,997.997 INFO    ] No camera update needed
[2026-10-25 06:09:39,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:09:40,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:09:40,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:09:40,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:09:42,054.054 INFO    ] ================================================
[2026-10-25 06:09:42,069.069 INFO    ] Launching Daemon at Sun Oct 25 06:09:42 IST 2026
[2026-10-25 06:09:42,080.080 INFO    ] ================================================
[2026-10-25 06:09:42,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:09:42
[2026-10-25 06:09:43,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:09:43,531.531 INFO    ] Initializing speech engine...
[2026-10-25 06:09:43,540.540 INFO    ] 2026-10-25 06:09:43
[2026-10-25 06:09:43,789.789 INFO    ] 2026-10-25 06:09:43
[2026-10-25 06:09:43,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:09:44,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:09:44,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:09:44,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:09:44,277.277 INFO    ] time= 25/10/2026 06:09:44
[2026-10-25 06:09:44,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:09:44,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:44,477.477 INFO    ] No existing commands found in stream
[2026-10-25 06:09:49,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:09:49,513.513 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 06:09:51,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:09:51,689.689 INFO    ] Checking for system updates...
[2026-10-25 06:09:51,729.729 INFO    ] 200
[2026-10-25 06:09:51,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:51,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:51,786.786 INFO    ] No update needed
[2026-10-25 06:09:51,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 06:09:51,823.823 INFO    ] 200
[2026-10-25 06:09:51,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:09:51,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:09:51,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:09:51,919.919 INFO    ] No camera update needed
[2026-10-25 06:09:51,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:09:51,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:09:51,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:09:51,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:09:53,977.977 INFO    ] ================================================
[2026-10-25 06:09:53,992.992 INFO    ] Launching Daemon at Sun Oct 25 06:09:53 IST 2026
[2026-10-25 06:09:54,003.003 INFO    ] ================================================
[2026-10-25 06:09:54,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:09:54
[2026-10-25 06:09:55,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:09:55,439.439 INFO    ] Initializing speech engine...
[2026-10-25 06:09:55,461.461 INFO    ] 2026-10-25 06:09:55
[2026-10-25 06:09:55,715.715 INFO    ] 2026-10-25 06:09:55
[2026-10-25 06:09:55,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:09:55,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:09:55,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:09:56,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:09:56,050.050 INFO    ] time= 25/10/2026 06:09:56
[2026-10-25 06:09:56,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:09:56,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:09:56,163.163 INFO    ] No existing commands found in stream
[2026-10-25 06:10:01,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:10:01,196.196 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 06:10:08,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:10:08,609.609 INFO    ] Checking for system updates...
[2026-10-25 06:10:08,645.645 INFO    ] 200
[2026-10-25 06:10:08,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:08,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:08,703.703 INFO    ] No update needed
[2026-10-25 06:10:08,705.705 INFO    ] Checking for camera pi updates...
[2026-10-25 06:10:08,751.751 INFO    ] 200
[2026-10-25 06:10:08,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:08,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:10:08,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:08,850.850 INFO    ] No camera update needed
[2026-10-25 06:10:08,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:10:08,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:10:08,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:10:08,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:10:10,904.904 INFO    ] ================================================
[2026-10-25 06:10:10,920.920 INFO    ] Launching Daemon at Sun Oct 25 06:10:10 IST 2026
[2026-10-25 06:10:10,930.930 INFO    ] ================================================
[2026-10-25 06:10:11,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:10:11
[2026-10-25 06:10:12,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:10:12,386.386 INFO    ] Initializing speech engine...
[2026-10-25 06:10:12,396.396 INFO    ] 2026-10-25 06:10:12
[2026-10-25 06:10:12,653.653 INFO    ] 2026-10-25 06:10:12
[2026-10-25 06:10:12,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:10:12,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:10:12,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:10:13,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:10:13,122.122 INFO    ] time= 25/10/2026 06:10:13
[2026-10-25 06:10:13,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:10:13,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:10:13,256.256 INFO    ] No existing commands found in stream
[2026-10-25 06:10:18,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:10:18,270.270 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 06:10:22,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:10:22,564.564 INFO    ] Checking for system updates...
[2026-10-25 06:10:22,602.602 INFO    ] 200
[2026-10-25 06:10:22,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:22,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:22,661.661 INFO    ] No update needed
[2026-10-25 06:10:22,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 06:10:22,703.703 INFO    ] 200
[2026-10-25 06:10:22,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:22,753.753 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:10:22,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:22,807.807 INFO    ] No camera update needed
[2026-10-25 06:10:22,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:10:22,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:10:22,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:10:22,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:10:24,865.865 INFO    ] ================================================
[2026-10-25 06:10:24,880.880 INFO    ] Launching Daemon at Sun Oct 25 06:10:24 IST 2026
[2026-10-25 06:10:24,891.891 INFO    ] ================================================
[2026-10-25 06:10:25,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:10:25
[2026-10-25 06:10:26,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:10:26,347.347 INFO    ] Initializing speech engine...
[2026-10-25 06:10:26,353.353 INFO    ] 2026-10-25 06:10:26
[2026-10-25 06:10:26,599.599 INFO    ] 2026-10-25 06:10:26
[2026-10-25 06:10:26,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:10:26,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:10:26,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:10:27,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:10:27,156.156 INFO    ] time= 25/10/2026 06:10:27
[2026-10-25 06:10:27,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:10:27,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:10:27,295.295 INFO    ] No existing commands found in stream
[2026-10-25 06:10:32,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:10:32,325.325 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 06:10:35,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:10:35,529.529 INFO    ] Checking for system updates...
[2026-10-25 06:10:35,565.565 INFO    ] 200
[2026-10-25 06:10:35,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:35,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:35,624.624 INFO    ] No update needed
[2026-10-25 06:10:35,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 06:10:35,662.662 INFO    ] 200
[2026-10-25 06:10:35,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:35,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:10:35,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:35,770.770 INFO    ] No camera update needed
[2026-10-25 06:10:35,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:10:35,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:10:35,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:10:35,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:10:37,824.824 INFO    ] ================================================
[2026-10-25 06:10:37,839.839 INFO    ] Launching Daemon at Sun Oct 25 06:10:37 IST 2026
[2026-10-25 06:10:37,849.849 INFO    ] ================================================
[2026-10-25 06:10:38,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:10:38
[2026-10-25 06:10:39,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:10:39,307.307 INFO    ] Initializing speech engine...
[2026-10-25 06:10:39,314.314 INFO    ] 2026-10-25 06:10:39
[2026-10-25 06:10:39,560.560 INFO    ] 2026-10-25 06:10:39
[2026-10-25 06:10:39,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:10:39,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:10:39,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:10:39,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:10:40,054.054 INFO    ] time= 25/10/2026 06:10:39
[2026-10-25 06:10:40,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:10:40,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:10:40,178.178 INFO    ] No existing commands found in stream
[2026-10-25 06:10:45,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:10:45,192.192 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 06:10:47,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:10:47,505.505 INFO    ] Checking for system updates...
[2026-10-25 06:10:47,546.546 INFO    ] 200
[2026-10-25 06:10:47,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:47,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:47,603.603 INFO    ] No update needed
[2026-10-25 06:10:47,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 06:10:47,642.642 INFO    ] 200
[2026-10-25 06:10:47,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:10:47,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:10:47,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:10:47,734.734 INFO    ] No camera update needed
[2026-10-25 06:10:47,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:10:47,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:10:47,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:10:47,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:10:49,788.788 INFO    ] ================================================
[2026-10-25 06:10:49,804.804 INFO    ] Launching Daemon at Sun Oct 25 06:10:49 IST 2026
[2026-10-25 06:10:49,815.815 INFO    ] ================================================
[2026-10-25 06:10:50,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:10:50
[2026-10-25 06:10:51,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:10:51,365.365 INFO    ] Initializing speech engine...
[2026-10-25 06:10:51,374.374 INFO    ] 2026-10-25 06:10:51
[2026-10-25 06:10:51,622.622 INFO    ] 2026-10-25 06:10:51
[2026-10-25 06:10:51,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:10:51,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:10:51,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:10:52,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:10:52,092.092 INFO    ] time= 25/10/2026 06:10:52
[2026-10-25 06:10:52,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:10:52,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:10:52,237.237 INFO    ] No existing commands found in stream
[2026-10-25 06:10:57,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:10:57,252.252 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 06:11:00,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:11:00,274.274 INFO    ] Checking for system updates...
[2026-10-25 06:11:00,310.310 INFO    ] 200
[2026-10-25 06:11:00,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:00,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:00,378.378 INFO    ] No update needed
[2026-10-25 06:11:00,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 06:11:00,414.414 INFO    ] 200
[2026-10-25 06:11:00,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:00,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:11:00,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:00,526.526 INFO    ] No camera update needed
[2026-10-25 06:11:00,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:11:00,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:11:00,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:11:00,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:11:02,591.591 INFO    ] ================================================
[2026-10-25 06:11:02,617.617 INFO    ] Launching Daemon at Sun Oct 25 06:11:02 IST 2026
[2026-10-25 06:11:02,631.631 INFO    ] ================================================
[2026-10-25 06:11:03,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:11:03
[2026-10-25 06:11:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:11:04,424.424 INFO    ] Initializing speech engine...
[2026-10-25 06:11:04,435.435 INFO    ] 2026-10-25 06:11:04
[2026-10-25 06:11:04,724.724 INFO    ] 2026-10-25 06:11:04
[2026-10-25 06:11:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:11:05,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:11:05,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:11:05,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:11:05,271.271 INFO    ] time= 25/10/2026 06:11:05
[2026-10-25 06:11:05,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:11:05,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:11:05,429.429 INFO    ] No existing commands found in stream
[2026-10-25 06:11:10,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:11:10,448.448 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 06:11:13,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:11:13,556.556 INFO    ] Checking for system updates...
[2026-10-25 06:11:13,595.595 INFO    ] 200
[2026-10-25 06:11:13,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:13,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:13,666.666 INFO    ] No update needed
[2026-10-25 06:11:13,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 06:11:13,709.709 INFO    ] 200
[2026-10-25 06:11:13,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:13,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:11:13,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:13,808.808 INFO    ] No camera update needed
[2026-10-25 06:11:13,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:11:13,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:11:13,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:11:13,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:11:15,862.862 INFO    ] ================================================
[2026-10-25 06:11:15,879.879 INFO    ] Launching Daemon at Sun Oct 25 06:11:15 IST 2026
[2026-10-25 06:11:15,890.890 INFO    ] ================================================
[2026-10-25 06:11:16,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:11:16
[2026-10-25 06:11:17,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:11:17,546.546 INFO    ] Initializing speech engine...
[2026-10-25 06:11:17,560.560 INFO    ] 2026-10-25 06:11:17
[2026-10-25 06:11:17,851.851 INFO    ] 2026-10-25 06:11:17
[2026-10-25 06:11:17,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:11:18,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:11:18,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:11:18,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:11:18,244.244 INFO    ] time= 25/10/2026 06:11:18
[2026-10-25 06:11:18,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:11:18,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:11:18,372.372 INFO    ] No existing commands found in stream
[2026-10-25 06:11:23,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:11:23,385.385 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 06:11:24,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:11:24,401.401 INFO    ] Checking for system updates...
[2026-10-25 06:11:24,443.443 INFO    ] 200
[2026-10-25 06:11:24,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:24,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:24,502.502 INFO    ] No update needed
[2026-10-25 06:11:24,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 06:11:24,544.544 INFO    ] 200
[2026-10-25 06:11:24,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:24,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:11:24,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:24,654.654 INFO    ] No camera update needed
[2026-10-25 06:11:24,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:11:24,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:11:24,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:11:24,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:11:26,710.710 INFO    ] ================================================
[2026-10-25 06:11:26,726.726 INFO    ] Launching Daemon at Sun Oct 25 06:11:26 IST 2026
[2026-10-25 06:11:26,738.738 INFO    ] ================================================
[2026-10-25 06:11:27,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:11:27
[2026-10-25 06:11:27,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:11:28,137.137 INFO    ] Initializing speech engine...
[2026-10-25 06:11:28,144.144 INFO    ] 2026-10-25 06:11:28
[2026-10-25 06:11:28,414.414 INFO    ] 2026-10-25 06:11:28
[2026-10-25 06:11:28,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:11:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:11:29,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:11:29,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:11:29,838.838 INFO    ] time= 25/10/2026 06:11:29
[2026-10-25 06:11:29,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:11:29,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:11:29,953.953 INFO    ] No existing commands found in stream
[2026-10-25 06:11:34,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:11:34,982.982 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 06:11:38,722.722 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:11:38,724.724 INFO    ] Checking for system updates...
[2026-10-25 06:11:38,766.766 INFO    ] 200
[2026-10-25 06:11:38,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:38,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:38,824.824 INFO    ] No update needed
[2026-10-25 06:11:38,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 06:11:38,862.862 INFO    ] 200
[2026-10-25 06:11:38,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:38,905.905 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:11:38,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:38,965.965 INFO    ] No camera update needed
[2026-10-25 06:11:38,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:11:38,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:11:38,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:11:38,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:11:41,021.021 INFO    ] ================================================
[2026-10-25 06:11:41,036.036 INFO    ] Launching Daemon at Sun Oct 25 06:11:41 IST 2026
[2026-10-25 06:11:41,047.047 INFO    ] ================================================
[2026-10-25 06:11:41,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:11:41
[2026-10-25 06:11:42,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:11:42,744.744 INFO    ] Initializing speech engine...
[2026-10-25 06:11:42,753.753 INFO    ] 2026-10-25 06:11:42
[2026-10-25 06:11:43,062.062 INFO    ] 2026-10-25 06:11:43
[2026-10-25 06:11:43,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:11:43,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:11:43,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:11:43,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:11:43,584.584 INFO    ] time= 25/10/2026 06:11:43
[2026-10-25 06:11:43,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:11:43,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:11:43,737.737 INFO    ] No existing commands found in stream
[2026-10-25 06:11:48,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:11:48,757.757 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 06:11:51,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:11:51,806.806 INFO    ] Checking for system updates...
[2026-10-25 06:11:51,843.843 INFO    ] 200
[2026-10-25 06:11:51,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:51,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:51,913.913 INFO    ] No update needed
[2026-10-25 06:11:51,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 06:11:51,954.954 INFO    ] 200
[2026-10-25 06:11:51,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:11:52,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:11:52,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:11:52,067.067 INFO    ] No camera update needed
[2026-10-25 06:11:52,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:11:52,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:11:52,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:11:52,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:11:54,121.121 INFO    ] ================================================
[2026-10-25 06:11:54,137.137 INFO    ] Launching Daemon at Sun Oct 25 06:11:54 IST 2026
[2026-10-25 06:11:54,148.148 INFO    ] ================================================
[2026-10-25 06:11:54,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:11:54
[2026-10-25 06:11:55,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:11:55,750.750 INFO    ] Initializing speech engine...
[2026-10-25 06:11:55,763.763 INFO    ] 2026-10-25 06:11:55
[2026-10-25 06:11:56,054.054 INFO    ] 2026-10-25 06:11:56
[2026-10-25 06:11:56,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:11:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:11:56,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:11:56,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:11:56,522.522 INFO    ] time= 25/10/2026 06:11:56
[2026-10-25 06:11:56,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:11:56,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:11:56,670.670 INFO    ] No existing commands found in stream
[2026-10-25 06:12:01,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:12:01,693.693 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 06:12:04,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:12:04,974.974 INFO    ] Checking for system updates...
[2026-10-25 06:12:05,009.009 INFO    ] 200
[2026-10-25 06:12:05,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:05,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:12:05,067.067 INFO    ] No update needed
[2026-10-25 06:12:05,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 06:12:05,108.108 INFO    ] 200
[2026-10-25 06:12:05,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:05,151.151 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:12:05,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:12:05,250.250 INFO    ] No camera update needed
[2026-10-25 06:12:05,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:12:05,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:12:05,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:12:05,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:12:07,306.306 INFO    ] ================================================
[2026-10-25 06:12:07,321.321 INFO    ] Launching Daemon at Sun Oct 25 06:12:07 IST 2026
[2026-10-25 06:12:07,331.331 INFO    ] ================================================
[2026-10-25 06:12:07,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:12:07
[2026-10-25 06:12:08,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:12:08,759.759 INFO    ] Initializing speech engine...
[2026-10-25 06:12:08,782.782 INFO    ] 2026-10-25 06:12:08
[2026-10-25 06:12:09,038.038 INFO    ] 2026-10-25 06:12:09
[2026-10-25 06:12:09,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:12:09,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:12:09,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:12:09,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:12:09,515.515 INFO    ] time= 25/10/2026 06:12:09
[2026-10-25 06:12:09,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:12:09,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:12:09,689.689 INFO    ] No existing commands found in stream
[2026-10-25 06:12:14,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:12:14,704.704 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 06:12:15,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:12:15,504.504 INFO    ] Checking for system updates...
[2026-10-25 06:12:15,542.542 INFO    ] 200
[2026-10-25 06:12:15,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:15,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:15,611.611 INFO    ] No update needed
[2026-10-25 06:12:15,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 06:12:15,650.650 INFO    ] 200
[2026-10-25 06:12:15,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:15,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:12:15,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:15,750.750 INFO    ] No camera update needed
[2026-10-25 06:12:15,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:12:15,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:12:15,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:12:15,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:12:17,810.810 INFO    ] ================================================
[2026-10-25 06:12:17,826.826 INFO    ] Launching Daemon at Sun Oct 25 06:12:17 IST 2026
[2026-10-25 06:12:17,837.837 INFO    ] ================================================
[2026-10-25 06:12:18,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:12:18
[2026-10-25 06:12:18,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:12:19,235.235 INFO    ] Initializing speech engine...
[2026-10-25 06:12:19,250.250 INFO    ] 2026-10-25 06:12:19
[2026-10-25 06:12:19,517.517 INFO    ] 2026-10-25 06:12:19
[2026-10-25 06:12:19,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:12:19,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:12:19,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:12:19,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:12:19,914.914 INFO    ] time= 25/10/2026 06:12:19
[2026-10-25 06:12:19,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:12:19,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:12:20,085.085 INFO    ] No existing commands found in stream
[2026-10-25 06:12:25,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:12:25,113.113 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 06:12:27,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:12:27,339.339 INFO    ] Checking for system updates...
[2026-10-25 06:12:27,380.380 INFO    ] 200
[2026-10-25 06:12:27,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:27,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:12:27,448.448 INFO    ] No update needed
[2026-10-25 06:12:27,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 06:12:27,485.485 INFO    ] 200
[2026-10-25 06:12:27,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:27,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:12:27,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:12:27,585.585 INFO    ] No camera update needed
[2026-10-25 06:12:27,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:12:27,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:12:27,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:12:27,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:12:29,642.642 INFO    ] ================================================
[2026-10-25 06:12:29,658.658 INFO    ] Launching Daemon at Sun Oct 25 06:12:29 IST 2026
[2026-10-25 06:12:29,669.669 INFO    ] ================================================
[2026-10-25 06:12:30,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:12:30
[2026-10-25 06:12:30,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:12:31,067.067 INFO    ] Initializing speech engine...
[2026-10-25 06:12:31,090.090 INFO    ] 2026-10-25 06:12:31
[2026-10-25 06:12:31,343.343 INFO    ] 2026-10-25 06:12:31
[2026-10-25 06:12:31,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:12:31,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:12:31,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:12:31,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:12:31,747.747 INFO    ] time= 25/10/2026 06:12:31
[2026-10-25 06:12:31,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:12:31,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:12:31,925.925 INFO    ] No existing commands found in stream
[2026-10-25 06:12:36,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:12:36,958.958 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 06:12:40,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:12:40,913.913 INFO    ] Checking for system updates...
[2026-10-25 06:12:40,949.949 INFO    ] 200
[2026-10-25 06:12:40,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:41,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:41,017.017 INFO    ] No update needed
[2026-10-25 06:12:41,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 06:12:41,066.066 INFO    ] 200
[2026-10-25 06:12:41,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:41,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:12:41,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:41,169.169 INFO    ] No camera update needed
[2026-10-25 06:12:41,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:12:41,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:12:41,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:12:41,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:12:43,226.226 INFO    ] ================================================
[2026-10-25 06:12:43,241.241 INFO    ] Launching Daemon at Sun Oct 25 06:12:43 IST 2026
[2026-10-25 06:12:43,252.252 INFO    ] ================================================
[2026-10-25 06:12:43,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:12:43
[2026-10-25 06:12:44,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:12:44,715.715 INFO    ] Initializing speech engine...
[2026-10-25 06:12:44,730.730 INFO    ] 2026-10-25 06:12:44
[2026-10-25 06:12:45,022.022 INFO    ] 2026-10-25 06:12:44
[2026-10-25 06:12:45,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:12:45,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:12:45,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:12:45,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:12:45,411.411 INFO    ] time= 25/10/2026 06:12:45
[2026-10-25 06:12:45,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:12:45,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:12:45,543.543 INFO    ] No existing commands found in stream
[2026-10-25 06:12:50,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:12:50,557.557 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 06:12:52,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:12:52,271.271 INFO    ] Checking for system updates...
[2026-10-25 06:12:52,313.313 INFO    ] 200
[2026-10-25 06:12:52,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:52,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:52,372.372 INFO    ] No update needed
[2026-10-25 06:12:52,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 06:12:52,409.409 INFO    ] 200
[2026-10-25 06:12:52,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:12:52,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:12:52,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:12:52,511.511 INFO    ] No camera update needed
[2026-10-25 06:12:52,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:12:52,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:12:52,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:12:52,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:12:54,567.567 INFO    ] ================================================
[2026-10-25 06:12:54,582.582 INFO    ] Launching Daemon at Sun Oct 25 06:12:54 IST 2026
[2026-10-25 06:12:54,593.593 INFO    ] ================================================
[2026-10-25 06:12:55,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:12:55
[2026-10-25 06:12:55,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:12:56,057.057 INFO    ] Initializing speech engine...
[2026-10-25 06:12:56,066.066 INFO    ] 2026-10-25 06:12:56
[2026-10-25 06:12:56,322.322 INFO    ] 2026-10-25 06:12:56
[2026-10-25 06:12:56,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:12:56,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:12:56,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:12:56,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:12:56,825.825 INFO    ] time= 25/10/2026 06:12:56
[2026-10-25 06:12:56,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:12:56,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:12:56,970.970 INFO    ] No existing commands found in stream
[2026-10-25 06:13:02,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:13:02,006.006 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 06:13:05,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:13:05,780.780 INFO    ] Checking for system updates...
[2026-10-25 06:13:05,819.819 INFO    ] 200
[2026-10-25 06:13:05,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:05,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:13:05,884.884 INFO    ] No update needed
[2026-10-25 06:13:05,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 06:13:05,924.924 INFO    ] 200
[2026-10-25 06:13:05,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:05,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:13:06,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:13:06,023.023 INFO    ] No camera update needed
[2026-10-25 06:13:06,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:13:06,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:13:06,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:13:06,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:13:08,081.081 INFO    ] ================================================
[2026-10-25 06:13:08,095.095 INFO    ] Launching Daemon at Sun Oct 25 06:13:08 IST 2026
[2026-10-25 06:13:08,106.106 INFO    ] ================================================
[2026-10-25 06:13:08,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:13:08
[2026-10-25 06:13:09,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:13:09,524.524 INFO    ] Initializing speech engine...
[2026-10-25 06:13:09,534.534 INFO    ] 2026-10-25 06:13:09
[2026-10-25 06:13:09,782.782 INFO    ] 2026-10-25 06:13:09
[2026-10-25 06:13:09,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:13:09,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:13:10,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:13:10,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:13:10,157.157 INFO    ] time= 25/10/2026 06:13:10
[2026-10-25 06:13:10,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:13:10,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:13:10,321.321 INFO    ] No existing commands found in stream
[2026-10-25 06:13:15,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:13:15,349.349 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 06:13:19,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:13:19,060.060 INFO    ] Checking for system updates...
[2026-10-25 06:13:19,102.102 INFO    ] 200
[2026-10-25 06:13:19,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:19,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:19,163.163 INFO    ] No update needed
[2026-10-25 06:13:19,165.165 INFO    ] Checking for camera pi updates...
[2026-10-25 06:13:19,205.205 INFO    ] 200
[2026-10-25 06:13:19,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:19,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:13:19,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:19,314.314 INFO    ] No camera update needed
[2026-10-25 06:13:19,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:13:19,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:13:19,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:13:19,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:13:21,376.376 INFO    ] ================================================
[2026-10-25 06:13:21,392.392 INFO    ] Launching Daemon at Sun Oct 25 06:13:21 IST 2026
[2026-10-25 06:13:21,402.402 INFO    ] ================================================
[2026-10-25 06:13:21,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:13:21
[2026-10-25 06:13:22,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:13:22,850.850 INFO    ] Initializing speech engine...
[2026-10-25 06:13:22,861.861 INFO    ] 2026-10-25 06:13:22
[2026-10-25 06:13:23,106.106 INFO    ] 2026-10-25 06:13:23
[2026-10-25 06:13:23,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:13:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:13:23,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:13:23,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:13:23,573.573 INFO    ] time= 25/10/2026 06:13:23
[2026-10-25 06:13:23,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:13:23,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:13:23,728.728 INFO    ] No existing commands found in stream
[2026-10-25 06:13:28,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:13:28,767.767 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 06:13:31,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:13:31,689.689 INFO    ] Checking for system updates...
[2026-10-25 06:13:31,729.729 INFO    ] 200
[2026-10-25 06:13:31,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:31,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:31,793.793 INFO    ] No update needed
[2026-10-25 06:13:31,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 06:13:31,833.833 INFO    ] 200
[2026-10-25 06:13:31,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:31,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:13:31,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:31,920.920 INFO    ] No camera update needed
[2026-10-25 06:13:31,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:13:31,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:13:31,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:13:31,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:13:33,984.984 INFO    ] ================================================
[2026-10-25 06:13:34,999.999 INFO    ] Launching Daemon at Sun Oct 25 06:13:33 IST 2026
[2026-10-25 06:13:34,009.009 INFO    ] ================================================
[2026-10-25 06:13:34,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:13:34
[2026-10-25 06:13:35,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:13:35,429.429 INFO    ] Initializing speech engine...
[2026-10-25 06:13:35,448.448 INFO    ] 2026-10-25 06:13:35
[2026-10-25 06:13:35,720.720 INFO    ] 2026-10-25 06:13:35
[2026-10-25 06:13:35,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:13:35,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:13:35,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:13:36,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:13:36,139.139 INFO    ] time= 25/10/2026 06:13:36
[2026-10-25 06:13:36,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:13:36,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:13:36,223.223 INFO    ] No existing commands found in stream
[2026-10-25 06:13:41,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:13:41,239.239 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 06:13:43,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:13:43,045.045 INFO    ] Checking for system updates...
[2026-10-25 06:13:43,085.085 INFO    ] 200
[2026-10-25 06:13:43,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:43,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:13:43,150.150 INFO    ] No update needed
[2026-10-25 06:13:43,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 06:13:43,191.191 INFO    ] 200
[2026-10-25 06:13:43,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:43,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:13:43,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:13:43,398.398 INFO    ] No camera update needed
[2026-10-25 06:13:43,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:13:43,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:13:43,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:13:43,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:13:45,453.453 INFO    ] ================================================
[2026-10-25 06:13:45,469.469 INFO    ] Launching Daemon at Sun Oct 25 06:13:45 IST 2026
[2026-10-25 06:13:45,480.480 INFO    ] ================================================
[2026-10-25 06:13:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:13:46
[2026-10-25 06:13:46,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:13:47,113.113 INFO    ] Initializing speech engine...
[2026-10-25 06:13:47,121.121 INFO    ] 2026-10-25 06:13:47
[2026-10-25 06:13:47,409.409 INFO    ] 2026-10-25 06:13:47
[2026-10-25 06:13:47,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:13:47,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:13:47,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:13:47,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:13:47,955.955 INFO    ] time= 25/10/2026 06:13:47
[2026-10-25 06:13:47,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:13:47,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:13:48,117.117 INFO    ] No existing commands found in stream
[2026-10-25 06:13:53,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:13:53,145.145 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 06:13:54,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:13:54,273.273 INFO    ] Checking for system updates...
[2026-10-25 06:13:54,312.312 INFO    ] 200
[2026-10-25 06:13:54,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:54,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:54,371.371 INFO    ] No update needed
[2026-10-25 06:13:54,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 06:13:54,408.408 INFO    ] 200
[2026-10-25 06:13:54,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:13:54,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:13:54,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:13:54,510.510 INFO    ] No camera update needed
[2026-10-25 06:13:54,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:13:54,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:13:54,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:13:54,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:13:56,567.567 INFO    ] ================================================
[2026-10-25 06:13:56,583.583 INFO    ] Launching Daemon at Sun Oct 25 06:13:56 IST 2026
[2026-10-25 06:13:56,594.594 INFO    ] ================================================
[2026-10-25 06:13:57,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:13:57
[2026-10-25 06:13:57,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:13:58,128.128 INFO    ] Initializing speech engine...
[2026-10-25 06:13:58,137.137 INFO    ] 2026-10-25 06:13:58
[2026-10-25 06:13:58,427.427 INFO    ] 2026-10-25 06:13:58
[2026-10-25 06:13:58,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:13:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:13:59,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:13:59,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:13:59,892.892 INFO    ] time= 25/10/2026 06:13:59
[2026-10-25 06:13:59,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:13:59,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:13:59,995.995 INFO    ] No existing commands found in stream
[2026-10-25 06:14:05,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:14:05,011.011 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 06:14:07,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:14:07,288.288 INFO    ] Checking for system updates...
[2026-10-25 06:14:07,326.326 INFO    ] 200
[2026-10-25 06:14:07,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:07,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:07,387.387 INFO    ] No update needed
[2026-10-25 06:14:07,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 06:14:07,425.425 INFO    ] 200
[2026-10-25 06:14:07,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:07,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:14:07,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:07,520.520 INFO    ] No camera update needed
[2026-10-25 06:14:07,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:14:07,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:14:07,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:14:07,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:14:09,578.578 INFO    ] ================================================
[2026-10-25 06:14:09,593.593 INFO    ] Launching Daemon at Sun Oct 25 06:14:09 IST 2026
[2026-10-25 06:14:09,603.603 INFO    ] ================================================
[2026-10-25 06:14:10,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:14:10
[2026-10-25 06:14:10,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:14:11,057.057 INFO    ] Initializing speech engine...
[2026-10-25 06:14:11,065.065 INFO    ] 2026-10-25 06:14:11
[2026-10-25 06:14:11,378.378 INFO    ] 2026-10-25 06:14:11
[2026-10-25 06:14:11,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:14:11,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:14:11,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:14:11,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:14:11,827.827 INFO    ] time= 25/10/2026 06:14:11
[2026-10-25 06:14:11,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:14:11,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:14:11,995.995 INFO    ] No existing commands found in stream
[2026-10-25 06:14:17,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:14:17,035.035 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 06:14:17,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:14:17,876.876 INFO    ] Checking for system updates...
[2026-10-25 06:14:17,919.919 INFO    ] 200
[2026-10-25 06:14:17,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:17,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:14:17,986.986 INFO    ] No update needed
[2026-10-25 06:14:17,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 06:14:18,027.027 INFO    ] 200
[2026-10-25 06:14:18,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:18,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:14:18,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:14:18,120.120 INFO    ] No camera update needed
[2026-10-25 06:14:18,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:14:18,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:14:18,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:14:18,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:14:20,176.176 INFO    ] ================================================
[2026-10-25 06:14:20,191.191 INFO    ] Launching Daemon at Sun Oct 25 06:14:20 IST 2026
[2026-10-25 06:14:20,202.202 INFO    ] ================================================
[2026-10-25 06:14:20,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:14:20
[2026-10-25 06:14:21,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:14:21,754.754 INFO    ] Initializing speech engine...
[2026-10-25 06:14:21,768.768 INFO    ] 2026-10-25 06:14:21
[2026-10-25 06:14:22,035.035 INFO    ] 2026-10-25 06:14:22
[2026-10-25 06:14:22,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:14:22,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:14:22,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:14:22,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:14:22,510.510 INFO    ] time= 25/10/2026 06:14:22
[2026-10-25 06:14:22,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:14:22,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:14:22,595.595 INFO    ] No existing commands found in stream
[2026-10-25 06:14:27,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:14:27,608.608 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 06:14:31,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:14:31,533.533 INFO    ] Checking for system updates...
[2026-10-25 06:14:31,576.576 INFO    ] 200
[2026-10-25 06:14:31,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:31,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:31,652.652 INFO    ] No update needed
[2026-10-25 06:14:31,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 06:14:31,692.692 INFO    ] 200
[2026-10-25 06:14:31,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:31,744.744 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:14:31,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:31,791.791 INFO    ] No camera update needed
[2026-10-25 06:14:31,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:14:31,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:14:31,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:14:31,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:14:33,848.848 INFO    ] ================================================
[2026-10-25 06:14:33,863.863 INFO    ] Launching Daemon at Sun Oct 25 06:14:33 IST 2026
[2026-10-25 06:14:33,873.873 INFO    ] ================================================
[2026-10-25 06:14:34,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:14:34
[2026-10-25 06:14:35,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:14:35,491.491 INFO    ] Initializing speech engine...
[2026-10-25 06:14:35,502.502 INFO    ] 2026-10-25 06:14:35
[2026-10-25 06:14:35,809.809 INFO    ] 2026-10-25 06:14:35
[2026-10-25 06:14:35,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:14:36,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:14:36,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:14:36,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:14:36,314.314 INFO    ] time= 25/10/2026 06:14:36
[2026-10-25 06:14:36,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:14:36,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:14:36,463.463 INFO    ] No existing commands found in stream
[2026-10-25 06:14:41,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:14:41,483.483 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 06:14:43,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:14:43,256.256 INFO    ] Checking for system updates...
[2026-10-25 06:14:43,293.293 INFO    ] 200
[2026-10-25 06:14:43,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:43,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:43,352.352 INFO    ] No update needed
[2026-10-25 06:14:43,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 06:14:43,391.391 INFO    ] 200
[2026-10-25 06:14:43,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:43,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:14:43,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:14:43,492.492 INFO    ] No camera update needed
[2026-10-25 06:14:43,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:14:43,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:14:43,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:14:43,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:14:45,549.549 INFO    ] ================================================
[2026-10-25 06:14:45,564.564 INFO    ] Launching Daemon at Sun Oct 25 06:14:45 IST 2026
[2026-10-25 06:14:45,575.575 INFO    ] ================================================
[2026-10-25 06:14:46,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:14:46
[2026-10-25 06:14:46,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:14:47,018.018 INFO    ] Initializing speech engine...
[2026-10-25 06:14:47,040.040 INFO    ] 2026-10-25 06:14:47
[2026-10-25 06:14:47,317.317 INFO    ] 2026-10-25 06:14:47
[2026-10-25 06:14:47,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:14:47,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:14:47,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:14:47,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:14:47,693.693 INFO    ] time= 25/10/2026 06:14:47
[2026-10-25 06:14:47,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:14:47,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:14:47,816.816 INFO    ] No existing commands found in stream
[2026-10-25 06:14:52,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:14:52,832.832 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 06:14:54,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:14:54,586.586 INFO    ] Checking for system updates...
[2026-10-25 06:14:54,627.627 INFO    ] 200
[2026-10-25 06:14:54,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:54,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:14:54,685.685 INFO    ] No update needed
[2026-10-25 06:14:54,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 06:14:54,724.724 INFO    ] 200
[2026-10-25 06:14:54,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:14:54,771.771 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:14:54,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:14:54,819.819 INFO    ] No camera update needed
[2026-10-25 06:14:54,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:14:54,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:14:54,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:14:54,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:14:56,874.874 INFO    ] ================================================
[2026-10-25 06:14:56,889.889 INFO    ] Launching Daemon at Sun Oct 25 06:14:56 IST 2026
[2026-10-25 06:14:56,900.900 INFO    ] ================================================
[2026-10-25 06:14:57,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:14:57
[2026-10-25 06:14:58,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:14:58,379.379 INFO    ] Initializing speech engine...
[2026-10-25 06:14:58,393.393 INFO    ] 2026-10-25 06:14:58
[2026-10-25 06:14:58,661.661 INFO    ] 2026-10-25 06:14:58
[2026-10-25 06:14:58,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:14:59,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:14:59,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:14:59,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:14:59,892.892 INFO    ] time= 25/10/2026 06:14:59
[2026-10-25 06:14:59,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:14:59,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:14:59,997.997 INFO    ] No existing commands found in stream
[2026-10-25 06:15:05,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:15:05,036.036 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 06:15:05,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:15:05,847.847 INFO    ] Checking for system updates...
[2026-10-25 06:15:05,889.889 INFO    ] 200
[2026-10-25 06:15:05,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:05,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:05,952.952 INFO    ] No update needed
[2026-10-25 06:15:05,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 06:15:05,988.988 INFO    ] 200
[2026-10-25 06:15:05,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:06,031.031 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:15:06,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:06,089.089 INFO    ] No camera update needed
[2026-10-25 06:15:06,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:15:06,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:15:06,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:15:06,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:15:08,144.144 INFO    ] ================================================
[2026-10-25 06:15:08,160.160 INFO    ] Launching Daemon at Sun Oct 25 06:15:08 IST 2026
[2026-10-25 06:15:08,170.170 INFO    ] ================================================
[2026-10-25 06:15:08,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:15:08
[2026-10-25 06:15:09,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:15:09,783.783 INFO    ] Initializing speech engine...
[2026-10-25 06:15:09,794.794 INFO    ] 2026-10-25 06:15:09
[2026-10-25 06:15:10,068.068 INFO    ] 2026-10-25 06:15:10
[2026-10-25 06:15:10,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:15:10,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:15:10,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:15:10,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:15:10,597.597 INFO    ] time= 25/10/2026 06:15:10
[2026-10-25 06:15:10,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:15:10,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:15:10,762.762 INFO    ] No existing commands found in stream
[2026-10-25 06:15:15,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:15:15,786.786 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 06:15:19,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:15:19,070.070 INFO    ] Checking for system updates...
[2026-10-25 06:15:19,108.108 INFO    ] 200
[2026-10-25 06:15:19,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:19,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:19,168.168 INFO    ] No update needed
[2026-10-25 06:15:19,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 06:15:19,210.210 INFO    ] 200
[2026-10-25 06:15:19,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:19,261.261 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:15:19,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:19,318.318 INFO    ] No camera update needed
[2026-10-25 06:15:19,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:15:19,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:15:19,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:15:19,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:15:21,379.379 INFO    ] ================================================
[2026-10-25 06:15:21,394.394 INFO    ] Launching Daemon at Sun Oct 25 06:15:21 IST 2026
[2026-10-25 06:15:21,405.405 INFO    ] ================================================
[2026-10-25 06:15:22,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:15:22
[2026-10-25 06:15:22,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:15:23,009.009 INFO    ] Initializing speech engine...
[2026-10-25 06:15:23,024.024 INFO    ] 2026-10-25 06:15:23
[2026-10-25 06:15:23,331.331 INFO    ] 2026-10-25 06:15:23
[2026-10-25 06:15:23,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:15:23,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:15:23,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:15:23,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:15:23,840.840 INFO    ] time= 25/10/2026 06:15:23
[2026-10-25 06:15:23,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:15:23,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:15:24,005.005 INFO    ] No existing commands found in stream
[2026-10-25 06:15:29,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:15:29,034.034 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 06:15:30,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:15:30,044.044 INFO    ] Checking for system updates...
[2026-10-25 06:15:30,086.086 INFO    ] 200
[2026-10-25 06:15:30,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:30,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:30,143.143 INFO    ] No update needed
[2026-10-25 06:15:30,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 06:15:30,178.178 INFO    ] 200
[2026-10-25 06:15:30,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:30,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:15:30,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:30,285.285 INFO    ] No camera update needed
[2026-10-25 06:15:30,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:15:30,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:15:30,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:15:30,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:15:32,348.348 INFO    ] ================================================
[2026-10-25 06:15:32,364.364 INFO    ] Launching Daemon at Sun Oct 25 06:15:32 IST 2026
[2026-10-25 06:15:32,376.376 INFO    ] ================================================
[2026-10-25 06:15:32,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:15:32
[2026-10-25 06:15:33,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:15:33,838.838 INFO    ] Initializing speech engine...
[2026-10-25 06:15:33,847.847 INFO    ] 2026-10-25 06:15:33
[2026-10-25 06:15:34,146.146 INFO    ] 2026-10-25 06:15:34
[2026-10-25 06:15:34,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:15:34,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:15:34,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:15:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:15:34,783.783 INFO    ] time= 25/10/2026 06:15:34
[2026-10-25 06:15:34,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:15:34,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:15:34,869.869 INFO    ] No existing commands found in stream
[2026-10-25 06:15:39,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:15:39,887.887 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 06:15:43,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:15:43,683.683 INFO    ] Checking for system updates...
[2026-10-25 06:15:43,719.719 INFO    ] 200
[2026-10-25 06:15:43,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:43,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:43,785.785 INFO    ] No update needed
[2026-10-25 06:15:43,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 06:15:43,826.826 INFO    ] 200
[2026-10-25 06:15:43,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:43,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:15:44,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:44,047.047 INFO    ] No camera update needed
[2026-10-25 06:15:44,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:15:44,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:15:44,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:15:44,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:15:46,104.104 INFO    ] ================================================
[2026-10-25 06:15:46,120.120 INFO    ] Launching Daemon at Sun Oct 25 06:15:46 IST 2026
[2026-10-25 06:15:46,132.132 INFO    ] ================================================
[2026-10-25 06:15:46,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:15:46
[2026-10-25 06:15:47,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:15:47,568.568 INFO    ] Initializing speech engine...
[2026-10-25 06:15:47,577.577 INFO    ] 2026-10-25 06:15:47
[2026-10-25 06:15:47,876.876 INFO    ] 2026-10-25 06:15:47
[2026-10-25 06:15:47,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:15:48,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:15:48,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:15:48,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:15:48,302.302 INFO    ] time= 25/10/2026 06:15:48
[2026-10-25 06:15:48,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:15:48,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:15:48,433.433 INFO    ] No existing commands found in stream
[2026-10-25 06:15:53,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:15:53,461.461 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 06:15:54,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:15:54,021.021 INFO    ] Checking for system updates...
[2026-10-25 06:15:54,058.058 INFO    ] 200
[2026-10-25 06:15:54,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:54,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:54,116.116 INFO    ] No update needed
[2026-10-25 06:15:54,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 06:15:54,152.152 INFO    ] 200
[2026-10-25 06:15:54,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:15:54,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:15:54,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:15:54,256.256 INFO    ] No camera update needed
[2026-10-25 06:15:54,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:15:54,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:15:54,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:15:54,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:15:56,311.311 INFO    ] ================================================
[2026-10-25 06:15:56,327.327 INFO    ] Launching Daemon at Sun Oct 25 06:15:56 IST 2026
[2026-10-25 06:15:56,338.338 INFO    ] ================================================
[2026-10-25 06:15:56,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:15:56
[2026-10-25 06:15:57,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:15:57,754.754 INFO    ] Initializing speech engine...
[2026-10-25 06:15:57,777.777 INFO    ] 2026-10-25 06:15:57
[2026-10-25 06:15:58,032.032 INFO    ] 2026-10-25 06:15:58
[2026-10-25 06:15:58,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:15:59,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:15:59,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:15:59,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:15:59,838.838 INFO    ] time= 25/10/2026 06:15:59
[2026-10-25 06:15:59,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:15:59,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:15:59,935.935 INFO    ] No existing commands found in stream
[2026-10-25 06:16:04,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:16:04,963.963 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 06:16:07,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:16:07,644.644 INFO    ] Checking for system updates...
[2026-10-25 06:16:07,681.681 INFO    ] 200
[2026-10-25 06:16:07,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:07,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:16:07,738.738 INFO    ] No update needed
[2026-10-25 06:16:07,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 06:16:07,775.775 INFO    ] 200
[2026-10-25 06:16:07,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:07,822.822 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:16:07,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:16:07,888.888 INFO    ] No camera update needed
[2026-10-25 06:16:07,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:16:07,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:16:07,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:16:07,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:16:09,943.943 INFO    ] ================================================
[2026-10-25 06:16:09,959.959 INFO    ] Launching Daemon at Sun Oct 25 06:16:09 IST 2026
[2026-10-25 06:16:09,970.970 INFO    ] ================================================
[2026-10-25 06:16:10,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:16:10
[2026-10-25 06:16:11,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:16:11,380.380 INFO    ] Initializing speech engine...
[2026-10-25 06:16:11,405.405 INFO    ] 2026-10-25 06:16:11
[2026-10-25 06:16:11,673.673 INFO    ] 2026-10-25 06:16:11
[2026-10-25 06:16:11,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:16:11,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:16:11,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:16:12,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:16:12,084.084 INFO    ] time= 25/10/2026 06:16:12
[2026-10-25 06:16:12,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:16:12,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:16:12,167.167 INFO    ] No existing commands found in stream
[2026-10-25 06:16:17,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:16:17,183.183 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 06:16:21,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:16:21,111.111 INFO    ] Checking for system updates...
[2026-10-25 06:16:21,147.147 INFO    ] 200
[2026-10-25 06:16:21,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:21,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:16:21,204.204 INFO    ] No update needed
[2026-10-25 06:16:21,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 06:16:21,241.241 INFO    ] 200
[2026-10-25 06:16:21,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:21,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:16:21,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:16:21,350.350 INFO    ] No camera update needed
[2026-10-25 06:16:21,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:16:21,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:16:21,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:16:21,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:16:23,410.410 INFO    ] ================================================
[2026-10-25 06:16:23,425.425 INFO    ] Launching Daemon at Sun Oct 25 06:16:23 IST 2026
[2026-10-25 06:16:23,436.436 INFO    ] ================================================
[2026-10-25 06:16:24,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:16:24
[2026-10-25 06:16:24,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:16:25,108.108 INFO    ] Initializing speech engine...
[2026-10-25 06:16:25,117.117 INFO    ] 2026-10-25 06:16:25
[2026-10-25 06:16:25,419.419 INFO    ] 2026-10-25 06:16:25
[2026-10-25 06:16:25,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:16:25,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:16:25,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:16:25,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:16:25,910.910 INFO    ] time= 25/10/2026 06:16:25
[2026-10-25 06:16:25,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:16:25,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:16:26,111.111 INFO    ] No existing commands found in stream
[2026-10-25 06:16:31,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:16:31,136.136 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 06:16:33,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:16:33,833.833 INFO    ] Checking for system updates...
[2026-10-25 06:16:33,874.874 INFO    ] 200
[2026-10-25 06:16:33,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:33,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:16:33,935.935 INFO    ] No update needed
[2026-10-25 06:16:33,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 06:16:33,976.976 INFO    ] 200
[2026-10-25 06:16:33,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:34,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:16:34,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:16:34,082.082 INFO    ] No camera update needed
[2026-10-25 06:16:34,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:16:34,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:16:34,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:16:34,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:16:36,137.137 INFO    ] ================================================
[2026-10-25 06:16:36,152.152 INFO    ] Launching Daemon at Sun Oct 25 06:16:36 IST 2026
[2026-10-25 06:16:36,164.164 INFO    ] ================================================
[2026-10-25 06:16:36,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:16:36
[2026-10-25 06:16:37,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:16:37,574.574 INFO    ] Initializing speech engine...
[2026-10-25 06:16:37,590.590 INFO    ] 2026-10-25 06:16:37
[2026-10-25 06:16:37,878.878 INFO    ] 2026-10-25 06:16:37
[2026-10-25 06:16:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:16:38,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:16:38,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:16:38,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:16:38,376.376 INFO    ] time= 25/10/2026 06:16:38
[2026-10-25 06:16:38,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:16:38,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:16:38,550.550 INFO    ] No existing commands found in stream
[2026-10-25 06:16:43,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:16:43,564.564 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 06:16:46,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:16:46,070.070 INFO    ] Checking for system updates...
[2026-10-25 06:16:46,112.112 INFO    ] 200
[2026-10-25 06:16:46,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:46,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:16:46,173.173 INFO    ] No update needed
[2026-10-25 06:16:46,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 06:16:46,210.210 INFO    ] 200
[2026-10-25 06:16:46,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:16:46,255.255 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:16:46,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:16:46,303.303 INFO    ] No camera update needed
[2026-10-25 06:16:46,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:16:46,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:16:46,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:16:46,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:16:48,363.363 INFO    ] ================================================
[2026-10-25 06:16:48,379.379 INFO    ] Launching Daemon at Sun Oct 25 06:16:48 IST 2026
[2026-10-25 06:16:48,390.390 INFO    ] ================================================
[2026-10-25 06:16:48,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:16:48
[2026-10-25 06:16:49,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:16:49,805.805 INFO    ] Initializing speech engine...
[2026-10-25 06:16:49,811.811 INFO    ] 2026-10-25 06:16:49
[2026-10-25 06:16:50,106.106 INFO    ] 2026-10-25 06:16:50
[2026-10-25 06:16:50,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:16:50,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:16:50,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:16:50,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:16:50,525.525 INFO    ] time= 25/10/2026 06:16:50
[2026-10-25 06:16:50,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:16:50,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:16:50,616.616 INFO    ] No existing commands found in stream
[2026-10-25 06:16:55,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:16:55,634.634 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 06:16:59,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:16:59,969.969 INFO    ] Checking for system updates...
[2026-10-25 06:17:00,011.011 INFO    ] 200
[2026-10-25 06:17:00,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:00,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:00,068.068 INFO    ] No update needed
[2026-10-25 06:17:00,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 06:17:00,104.104 INFO    ] 200
[2026-10-25 06:17:00,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:00,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:17:00,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:00,215.215 INFO    ] No camera update needed
[2026-10-25 06:17:00,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:17:00,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:17:00,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:17:00,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:17:02,278.278 INFO    ] ================================================
[2026-10-25 06:17:02,310.310 INFO    ] Launching Daemon at Sun Oct 25 06:17:02 IST 2026
[2026-10-25 06:17:02,329.329 INFO    ] ================================================
[2026-10-25 06:17:02,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:17:02
[2026-10-25 06:17:03,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:17:03,962.962 INFO    ] Initializing speech engine...
[2026-10-25 06:17:03,979.979 INFO    ] 2026-10-25 06:17:03
[2026-10-25 06:17:04,259.259 INFO    ] 2026-10-25 06:17:04
[2026-10-25 06:17:04,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:17:04,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:17:04,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:17:04,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:17:04,608.608 INFO    ] time= 25/10/2026 06:17:04
[2026-10-25 06:17:04,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:17:04,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:17:04,689.689 INFO    ] No existing commands found in stream
[2026-10-25 06:17:09,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:17:09,702.702 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 06:17:13,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:17:13,126.126 INFO    ] Checking for system updates...
[2026-10-25 06:17:13,163.163 INFO    ] 200
[2026-10-25 06:17:13,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:13,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:13,226.226 INFO    ] No update needed
[2026-10-25 06:17:13,229.229 INFO    ] Checking for camera pi updates...
[2026-10-25 06:17:13,265.265 INFO    ] 200
[2026-10-25 06:17:13,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:13,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:17:13,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:13,368.368 INFO    ] No camera update needed
[2026-10-25 06:17:13,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:17:13,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:17:13,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:17:13,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:17:15,423.423 INFO    ] ================================================
[2026-10-25 06:17:15,438.438 INFO    ] Launching Daemon at Sun Oct 25 06:17:15 IST 2026
[2026-10-25 06:17:15,449.449 INFO    ] ================================================
[2026-10-25 06:17:16,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:17:16
[2026-10-25 06:17:16,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:17:16,898.898 INFO    ] Initializing speech engine...
[2026-10-25 06:17:16,905.905 INFO    ] 2026-10-25 06:17:16
[2026-10-25 06:17:17,167.167 INFO    ] 2026-10-25 06:17:17
[2026-10-25 06:17:17,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:17:17,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:17:17,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:17:17,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:17:17,666.666 INFO    ] time= 25/10/2026 06:17:17
[2026-10-25 06:17:17,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:17:17,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:17:17,788.788 INFO    ] No existing commands found in stream
[2026-10-25 06:17:22,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:17:22,801.801 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 06:17:27,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:17:27,994.994 INFO    ] Checking for system updates...
[2026-10-25 06:17:28,030.030 INFO    ] 200
[2026-10-25 06:17:28,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:28,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:28,095.095 INFO    ] No update needed
[2026-10-25 06:17:28,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 06:17:28,134.134 INFO    ] 200
[2026-10-25 06:17:28,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:28,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:17:28,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:28,231.231 INFO    ] No camera update needed
[2026-10-25 06:17:28,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:17:28,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:17:28,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:17:28,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:17:30,288.288 INFO    ] ================================================
[2026-10-25 06:17:30,304.304 INFO    ] Launching Daemon at Sun Oct 25 06:17:30 IST 2026
[2026-10-25 06:17:30,314.314 INFO    ] ================================================
[2026-10-25 06:17:30,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:17:30
[2026-10-25 06:17:31,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:17:31,711.711 INFO    ] Initializing speech engine...
[2026-10-25 06:17:31,734.734 INFO    ] 2026-10-25 06:17:31
[2026-10-25 06:17:31,989.989 INFO    ] 2026-10-25 06:17:31
[2026-10-25 06:17:32,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:17:32,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:17:32,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:17:32,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:17:32,347.347 INFO    ] time= 25/10/2026 06:17:32
[2026-10-25 06:17:32,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:17:32,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:17:32,432.432 INFO    ] No existing commands found in stream
[2026-10-25 06:17:37,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:17:37,445.445 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 06:17:38,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:17:38,697.697 INFO    ] Checking for system updates...
[2026-10-25 06:17:38,734.734 INFO    ] 200
[2026-10-25 06:17:38,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:38,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:38,791.791 INFO    ] No update needed
[2026-10-25 06:17:38,794.794 INFO    ] Checking for camera pi updates...
[2026-10-25 06:17:38,828.828 INFO    ] 200
[2026-10-25 06:17:38,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:38,874.874 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:17:38,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:17:38,932.932 INFO    ] No camera update needed
[2026-10-25 06:17:38,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:17:38,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:17:38,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:17:38,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:17:40,988.988 INFO    ] ================================================
[2026-10-25 06:17:41,004.004 INFO    ] Launching Daemon at Sun Oct 25 06:17:40 IST 2026
[2026-10-25 06:17:41,015.015 INFO    ] ================================================
[2026-10-25 06:17:41,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:17:41
[2026-10-25 06:17:42,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:17:42,409.409 INFO    ] Initializing speech engine...
[2026-10-25 06:17:42,417.417 INFO    ] 2026-10-25 06:17:42
[2026-10-25 06:17:42,687.687 INFO    ] 2026-10-25 06:17:42
[2026-10-25 06:17:42,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:17:42,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:17:42,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:17:43,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:17:43,177.177 INFO    ] time= 25/10/2026 06:17:43
[2026-10-25 06:17:43,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:17:43,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:17:43,321.321 INFO    ] No existing commands found in stream
[2026-10-25 06:17:48,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:17:48,360.360 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 06:17:50,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:17:50,930.930 INFO    ] Checking for system updates...
[2026-10-25 06:17:50,970.970 INFO    ] 200
[2026-10-25 06:17:50,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:51,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:17:51,036.036 INFO    ] No update needed
[2026-10-25 06:17:51,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 06:17:51,072.072 INFO    ] 200
[2026-10-25 06:17:51,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:17:51,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:17:51,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:17:51,279.279 INFO    ] No camera update needed
[2026-10-25 06:17:51,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:17:51,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:17:51,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:17:51,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:17:53,334.334 INFO    ] ================================================
[2026-10-25 06:17:53,350.350 INFO    ] Launching Daemon at Sun Oct 25 06:17:53 IST 2026
[2026-10-25 06:17:53,360.360 INFO    ] ================================================
[2026-10-25 06:17:53,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:17:53
[2026-10-25 06:17:54,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:17:54,766.766 INFO    ] Initializing speech engine...
[2026-10-25 06:17:54,775.775 INFO    ] 2026-10-25 06:17:54
[2026-10-25 06:17:55,068.068 INFO    ] 2026-10-25 06:17:55
[2026-10-25 06:17:55,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:17:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:17:55,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:17:55,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:17:55,447.447 INFO    ] time= 25/10/2026 06:17:55
[2026-10-25 06:17:55,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:17:55,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:17:55,575.575 INFO    ] No existing commands found in stream
[2026-10-25 06:18:00,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:00,590.590 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 06:18:03,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:18:03,818.818 INFO    ] Checking for system updates...
[2026-10-25 06:18:03,856.856 INFO    ] 200
[2026-10-25 06:18:03,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:03,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:18:03,915.915 INFO    ] No update needed
[2026-10-25 06:18:03,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 06:18:03,951.951 INFO    ] 200
[2026-10-25 06:18:03,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:03,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:18:04,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:18:04,057.057 INFO    ] No camera update needed
[2026-10-25 06:18:04,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:18:04,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:18:04,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:18:04,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:18:06,111.111 INFO    ] ================================================
[2026-10-25 06:18:06,126.126 INFO    ] Launching Daemon at Sun Oct 25 06:18:06 IST 2026
[2026-10-25 06:18:06,136.136 INFO    ] ================================================
[2026-10-25 06:18:06,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:18:06
[2026-10-25 06:18:07,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:18:07,554.554 INFO    ] Initializing speech engine...
[2026-10-25 06:18:07,573.573 INFO    ] 2026-10-25 06:18:07
[2026-10-25 06:18:07,853.853 INFO    ] 2026-10-25 06:18:07
[2026-10-25 06:18:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:18:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:18:08,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:18:08,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:18:08,243.243 INFO    ] time= 25/10/2026 06:18:08
[2026-10-25 06:18:08,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:18:08,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:18:08,423.423 INFO    ] No existing commands found in stream
[2026-10-25 06:18:13,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:13,457.457 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 06:18:14,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:18:14,301.301 INFO    ] Checking for system updates...
[2026-10-25 06:18:14,340.340 INFO    ] 200
[2026-10-25 06:18:14,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:14,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:14,403.403 INFO    ] No update needed
[2026-10-25 06:18:14,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 06:18:14,439.439 INFO    ] 200
[2026-10-25 06:18:14,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:14,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:18:14,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:14,550.550 INFO    ] No camera update needed
[2026-10-25 06:18:14,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:18:14,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:18:14,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:18:14,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:18:16,604.604 INFO    ] ================================================
[2026-10-25 06:18:16,619.619 INFO    ] Launching Daemon at Sun Oct 25 06:18:16 IST 2026
[2026-10-25 06:18:16,630.630 INFO    ] ================================================
[2026-10-25 06:18:17,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:18:17
[2026-10-25 06:18:17,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:18:18,047.047 INFO    ] Initializing speech engine...
[2026-10-25 06:18:18,055.055 INFO    ] 2026-10-25 06:18:18
[2026-10-25 06:18:18,351.351 INFO    ] 2026-10-25 06:18:18
[2026-10-25 06:18:18,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:18:18,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:18:18,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:18:18,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:18:18,766.766 INFO    ] time= 25/10/2026 06:18:18
[2026-10-25 06:18:18,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:18:18,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:18:18,924.924 INFO    ] No existing commands found in stream
[2026-10-25 06:18:23,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:23,946.946 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 06:18:24,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:18:24,552.552 INFO    ] Checking for system updates...
[2026-10-25 06:18:24,588.588 INFO    ] 200
[2026-10-25 06:18:24,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:24,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:18:24,651.651 INFO    ] No update needed
[2026-10-25 06:18:24,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 06:18:24,691.691 INFO    ] 200
[2026-10-25 06:18:24,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:24,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:18:24,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:18:24,795.795 INFO    ] No camera update needed
[2026-10-25 06:18:24,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:18:24,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:18:24,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:18:24,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:18:26,849.849 INFO    ] ================================================
[2026-10-25 06:18:26,864.864 INFO    ] Launching Daemon at Sun Oct 25 06:18:26 IST 2026
[2026-10-25 06:18:26,875.875 INFO    ] ================================================
[2026-10-25 06:18:27,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:18:27
[2026-10-25 06:18:28,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:18:28,281.281 INFO    ] Initializing speech engine...
[2026-10-25 06:18:28,286.286 INFO    ] 2026-10-25 06:18:28
[2026-10-25 06:18:28,586.586 INFO    ] 2026-10-25 06:18:28
[2026-10-25 06:18:28,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:18:29,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:18:29,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:18:30,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:18:30,127.127 INFO    ] time= 25/10/2026 06:18:30
[2026-10-25 06:18:30,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:18:30,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:18:30,200.200 INFO    ] No existing commands found in stream
[2026-10-25 06:18:35,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:35,214.214 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 06:18:36,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:18:36,507.507 INFO    ] Checking for system updates...
[2026-10-25 06:18:36,543.543 INFO    ] 200
[2026-10-25 06:18:36,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:36,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:36,601.601 INFO    ] No update needed
[2026-10-25 06:18:36,604.604 INFO    ] Checking for camera pi updates...
[2026-10-25 06:18:36,638.638 INFO    ] 200
[2026-10-25 06:18:36,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:36,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:18:36,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:36,732.732 INFO    ] No camera update needed
[2026-10-25 06:18:36,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:18:36,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:18:36,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:18:36,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:18:38,788.788 INFO    ] ================================================
[2026-10-25 06:18:38,803.803 INFO    ] Launching Daemon at Sun Oct 25 06:18:38 IST 2026
[2026-10-25 06:18:38,814.814 INFO    ] ================================================
[2026-10-25 06:18:39,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:18:39
[2026-10-25 06:18:40,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:18:40,439.439 INFO    ] Initializing speech engine...
[2026-10-25 06:18:40,453.453 INFO    ] 2026-10-25 06:18:40
[2026-10-25 06:18:40,732.732 INFO    ] 2026-10-25 06:18:40
[2026-10-25 06:18:40,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:18:41,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:18:41,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:18:41,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:18:41,268.268 INFO    ] time= 25/10/2026 06:18:41
[2026-10-25 06:18:41,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:18:41,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:18:41,404.404 INFO    ] No existing commands found in stream
[2026-10-25 06:18:46,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:46,435.435 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 06:18:48,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:18:48,790.790 INFO    ] Checking for system updates...
[2026-10-25 06:18:48,828.828 INFO    ] 200
[2026-10-25 06:18:48,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:48,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:48,895.895 INFO    ] No update needed
[2026-10-25 06:18:48,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 06:18:48,936.936 INFO    ] 200
[2026-10-25 06:18:48,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:18:48,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:18:49,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:18:49,043.043 INFO    ] No camera update needed
[2026-10-25 06:18:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:18:49,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:18:49,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:18:49,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:18:51,102.102 INFO    ] ================================================
[2026-10-25 06:18:51,117.117 INFO    ] Launching Daemon at Sun Oct 25 06:18:51 IST 2026
[2026-10-25 06:18:51,128.128 INFO    ] ================================================
[2026-10-25 06:18:51,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:18:51
[2026-10-25 06:18:52,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:18:52,589.589 INFO    ] Initializing speech engine...
[2026-10-25 06:18:52,598.598 INFO    ] 2026-10-25 06:18:52
[2026-10-25 06:18:52,848.848 INFO    ] 2026-10-25 06:18:52
[2026-10-25 06:18:52,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:18:53,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:18:53,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:18:53,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:18:53,328.328 INFO    ] time= 25/10/2026 06:18:53
[2026-10-25 06:18:53,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:18:53,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:18:53,531.531 INFO    ] No existing commands found in stream
[2026-10-25 06:18:58,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:18:58,559.559 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 06:19:00,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:19:00,738.738 INFO    ] Checking for system updates...
[2026-10-25 06:19:00,773.773 INFO    ] 200
[2026-10-25 06:19:00,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:00,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:00,838.838 INFO    ] No update needed
[2026-10-25 06:19:00,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 06:19:00,878.878 INFO    ] 200
[2026-10-25 06:19:00,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:00,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:19:00,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:00,992.992 INFO    ] No camera update needed
[2026-10-25 06:19:00,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:19:00,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:19:01,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:19:01,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:19:03,052.052 INFO    ] ================================================
[2026-10-25 06:19:03,075.075 INFO    ] Launching Daemon at Sun Oct 25 06:19:03 IST 2026
[2026-10-25 06:19:03,088.088 INFO    ] ================================================
[2026-10-25 06:19:03,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:19:03
[2026-10-25 06:19:04,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:19:04,520.520 INFO    ] Initializing speech engine...
[2026-10-25 06:19:04,534.534 INFO    ] 2026-10-25 06:19:04
[2026-10-25 06:19:04,784.784 INFO    ] 2026-10-25 06:19:04
[2026-10-25 06:19:04,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:19:04,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:19:05,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:19:05,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:19:05,155.155 INFO    ] time= 25/10/2026 06:19:05
[2026-10-25 06:19:05,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:19:05,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:19:05,316.316 INFO    ] No existing commands found in stream
[2026-10-25 06:19:10,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:19:10,344.344 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 06:19:14,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:19:14,301.301 INFO    ] Checking for system updates...
[2026-10-25 06:19:14,337.337 INFO    ] 200
[2026-10-25 06:19:14,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:14,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:19:14,396.396 INFO    ] No update needed
[2026-10-25 06:19:14,398.398 INFO    ] Checking for camera pi updates...
[2026-10-25 06:19:14,432.432 INFO    ] 200
[2026-10-25 06:19:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:14,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:19:14,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:19:14,529.529 INFO    ] No camera update needed
[2026-10-25 06:19:14,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:19:14,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:19:14,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:19:14,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:19:16,586.586 INFO    ] ================================================
[2026-10-25 06:19:16,602.602 INFO    ] Launching Daemon at Sun Oct 25 06:19:16 IST 2026
[2026-10-25 06:19:16,612.612 INFO    ] ================================================
[2026-10-25 06:19:17,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:19:17
[2026-10-25 06:19:17,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:19:18,191.191 INFO    ] Initializing speech engine...
[2026-10-25 06:19:18,198.198 INFO    ] 2026-10-25 06:19:18
[2026-10-25 06:19:18,474.474 INFO    ] 2026-10-25 06:19:18
[2026-10-25 06:19:18,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:19:18,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:19:18,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:19:18,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:19:19,024.024 INFO    ] time= 25/10/2026 06:19:18
[2026-10-25 06:19:19,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:19:19,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:19:19,177.177 INFO    ] No existing commands found in stream
[2026-10-25 06:19:24,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:19:24,196.196 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 06:19:28,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:19:28,025.025 INFO    ] Checking for system updates...
[2026-10-25 06:19:28,063.063 INFO    ] 200
[2026-10-25 06:19:28,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:28,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:19:28,123.123 INFO    ] No update needed
[2026-10-25 06:19:28,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 06:19:28,161.161 INFO    ] 200
[2026-10-25 06:19:28,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:28,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:19:28,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:19:28,275.275 INFO    ] No camera update needed
[2026-10-25 06:19:28,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:19:28,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:19:28,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:19:28,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:19:30,332.332 INFO    ] ================================================
[2026-10-25 06:19:30,347.347 INFO    ] Launching Daemon at Sun Oct 25 06:19:30 IST 2026
[2026-10-25 06:19:30,358.358 INFO    ] ================================================
[2026-10-25 06:19:30,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:19:30
[2026-10-25 06:19:31,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:19:31,849.849 INFO    ] Initializing speech engine...
[2026-10-25 06:19:31,862.862 INFO    ] 2026-10-25 06:19:31
[2026-10-25 06:19:32,142.142 INFO    ] 2026-10-25 06:19:32
[2026-10-25 06:19:32,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:19:32,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:19:32,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:19:32,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:19:32,552.552 INFO    ] time= 25/10/2026 06:19:32
[2026-10-25 06:19:32,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:19:32,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:19:32,660.660 INFO    ] No existing commands found in stream
[2026-10-25 06:19:37,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:19:37,684.684 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 06:19:41,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:19:41,449.449 INFO    ] Checking for system updates...
[2026-10-25 06:19:41,485.485 INFO    ] 200
[2026-10-25 06:19:41,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:41,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:41,547.547 INFO    ] No update needed
[2026-10-25 06:19:41,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 06:19:41,586.586 INFO    ] 200
[2026-10-25 06:19:41,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:41,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:19:41,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:41,696.696 INFO    ] No camera update needed
[2026-10-25 06:19:41,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:19:41,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:19:41,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:19:41,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:19:43,751.751 INFO    ] ================================================
[2026-10-25 06:19:43,766.766 INFO    ] Launching Daemon at Sun Oct 25 06:19:43 IST 2026
[2026-10-25 06:19:43,777.777 INFO    ] ================================================
[2026-10-25 06:19:44,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:19:44
[2026-10-25 06:19:44,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:19:45,189.189 INFO    ] Initializing speech engine...
[2026-10-25 06:19:45,196.196 INFO    ] 2026-10-25 06:19:45
[2026-10-25 06:19:45,484.484 INFO    ] 2026-10-25 06:19:45
[2026-10-25 06:19:45,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:19:45,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:19:45,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:19:45,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:19:45,855.855 INFO    ] time= 25/10/2026 06:19:45
[2026-10-25 06:19:45,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:19:45,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:19:45,976.976 INFO    ] No existing commands found in stream
[2026-10-25 06:19:50,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:19:50,992.992 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 06:19:53,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:19:53,133.133 INFO    ] Checking for system updates...
[2026-10-25 06:19:53,169.169 INFO    ] 200
[2026-10-25 06:19:53,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:53,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:53,228.228 INFO    ] No update needed
[2026-10-25 06:19:53,230.230 INFO    ] Checking for camera pi updates...
[2026-10-25 06:19:53,264.264 INFO    ] 200
[2026-10-25 06:19:53,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:19:53,333.333 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:19:53,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:19:53,489.489 INFO    ] No camera update needed
[2026-10-25 06:19:53,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:19:53,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:19:53,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:19:53,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:19:55,544.544 INFO    ] ================================================
[2026-10-25 06:19:55,560.560 INFO    ] Launching Daemon at Sun Oct 25 06:19:55 IST 2026
[2026-10-25 06:19:55,571.571 INFO    ] ================================================
[2026-10-25 06:19:56,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:19:56
[2026-10-25 06:19:56,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:19:56,990.990 INFO    ] Initializing speech engine...
[2026-10-25 06:19:57,015.015 INFO    ] 2026-10-25 06:19:57
[2026-10-25 06:19:57,283.283 INFO    ] 2026-10-25 06:19:57
[2026-10-25 06:19:57,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:19:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:19:57,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:19:57,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:19:57,656.656 INFO    ] time= 25/10/2026 06:19:57
[2026-10-25 06:19:57,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:19:57,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:19:57,778.778 INFO    ] No existing commands found in stream
[2026-10-25 06:20:02,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:20:02,796.796 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 06:20:08,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:20:08,302.302 INFO    ] Checking for system updates...
[2026-10-25 06:20:08,337.337 INFO    ] 200
[2026-10-25 06:20:08,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:08,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:20:08,410.410 INFO    ] No update needed
[2026-10-25 06:20:08,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 06:20:08,447.447 INFO    ] 200
[2026-10-25 06:20:08,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:08,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:20:08,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:20:08,546.546 INFO    ] No camera update needed
[2026-10-25 06:20:08,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:20:08,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:20:08,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:20:08,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:20:10,602.602 INFO    ] ================================================
[2026-10-25 06:20:10,618.618 INFO    ] Launching Daemon at Sun Oct 25 06:20:10 IST 2026
[2026-10-25 06:20:10,629.629 INFO    ] ================================================
[2026-10-25 06:20:11,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:20:11
[2026-10-25 06:20:11,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:20:12,039.039 INFO    ] Initializing speech engine...
[2026-10-25 06:20:12,048.048 INFO    ] 2026-10-25 06:20:12
[2026-10-25 06:20:12,337.337 INFO    ] 2026-10-25 06:20:12
[2026-10-25 06:20:12,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:20:12,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:20:12,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:20:12,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:20:12,714.714 INFO    ] time= 25/10/2026 06:20:12
[2026-10-25 06:20:12,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:20:12,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:20:12,837.837 INFO    ] No existing commands found in stream
[2026-10-25 06:20:17,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:20:17,853.853 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 06:20:21,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:20:21,997.997 INFO    ] Checking for system updates...
[2026-10-25 06:20:22,033.033 INFO    ] 200
[2026-10-25 06:20:22,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:22,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:20:22,091.091 INFO    ] No update needed
[2026-10-25 06:20:22,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 06:20:22,127.127 INFO    ] 200
[2026-10-25 06:20:22,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:22,169.169 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:20:22,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:20:22,243.243 INFO    ] No camera update needed
[2026-10-25 06:20:22,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:20:22,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:20:22,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:20:22,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:20:24,299.299 INFO    ] ================================================
[2026-10-25 06:20:24,314.314 INFO    ] Launching Daemon at Sun Oct 25 06:20:24 IST 2026
[2026-10-25 06:20:24,325.325 INFO    ] ================================================
[2026-10-25 06:20:24,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:20:24
[2026-10-25 06:20:25,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:20:25,919.919 INFO    ] Initializing speech engine...
[2026-10-25 06:20:25,924.924 INFO    ] 2026-10-25 06:20:25
[2026-10-25 06:20:26,206.206 INFO    ] 2026-10-25 06:20:26
[2026-10-25 06:20:26,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:20:26,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:20:26,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:20:26,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:20:26,733.733 INFO    ] time= 25/10/2026 06:20:26
[2026-10-25 06:20:26,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:20:26,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:20:26,887.887 INFO    ] No existing commands found in stream
[2026-10-25 06:20:31,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:20:31,917.917 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 06:20:36,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:20:36,249.249 INFO    ] Checking for system updates...
[2026-10-25 06:20:36,285.285 INFO    ] 200
[2026-10-25 06:20:36,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:36,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:20:36,345.345 INFO    ] No update needed
[2026-10-25 06:20:36,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 06:20:36,383.383 INFO    ] 200
[2026-10-25 06:20:36,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:36,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:20:36,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:20:36,485.485 INFO    ] No camera update needed
[2026-10-25 06:20:36,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:20:36,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:20:36,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:20:36,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:20:38,542.542 INFO    ] ================================================
[2026-10-25 06:20:38,557.557 INFO    ] Launching Daemon at Sun Oct 25 06:20:38 IST 2026
[2026-10-25 06:20:38,567.567 INFO    ] ================================================
[2026-10-25 06:20:39,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:20:39
[2026-10-25 06:20:39,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:20:40,154.154 INFO    ] Initializing speech engine...
[2026-10-25 06:20:40,162.162 INFO    ] 2026-10-25 06:20:40
[2026-10-25 06:20:40,473.473 INFO    ] 2026-10-25 06:20:40
[2026-10-25 06:20:40,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:20:40,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:20:40,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:20:40,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:20:40,982.982 INFO    ] time= 25/10/2026 06:20:40
[2026-10-25 06:20:40,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:20:41,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:20:41,123.123 INFO    ] No existing commands found in stream
[2026-10-25 06:20:46,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:20:46,149.149 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 06:20:46,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:20:46,732.732 INFO    ] Checking for system updates...
[2026-10-25 06:20:46,770.770 INFO    ] 200
[2026-10-25 06:20:46,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:46,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:20:46,829.829 INFO    ] No update needed
[2026-10-25 06:20:46,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 06:20:46,870.870 INFO    ] 200
[2026-10-25 06:20:46,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:20:46,918.918 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:20:46,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:20:46,978.978 INFO    ] No camera update needed
[2026-10-25 06:20:46,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:20:46,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:20:46,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:20:46,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:20:49,036.036 INFO    ] ================================================
[2026-10-25 06:20:49,050.050 INFO    ] Launching Daemon at Sun Oct 25 06:20:49 IST 2026
[2026-10-25 06:20:49,064.064 INFO    ] ================================================
[2026-10-25 06:20:49,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:20:49
[2026-10-25 06:20:50,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:20:50,488.488 INFO    ] Initializing speech engine...
[2026-10-25 06:20:50,501.501 INFO    ] 2026-10-25 06:20:50
[2026-10-25 06:20:50,752.752 INFO    ] 2026-10-25 06:20:50
[2026-10-25 06:20:50,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:20:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:20:51,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:20:51,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:20:51,237.237 INFO    ] time= 25/10/2026 06:20:51
[2026-10-25 06:20:51,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:20:51,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:20:51,386.386 INFO    ] No existing commands found in stream
[2026-10-25 06:20:56,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:20:56,400.400 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 06:21:00,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:21:00,584.584 INFO    ] Checking for system updates...
[2026-10-25 06:21:00,620.620 INFO    ] 200
[2026-10-25 06:21:00,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:00,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:00,684.684 INFO    ] No update needed
[2026-10-25 06:21:00,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 06:21:00,720.720 INFO    ] 200
[2026-10-25 06:21:00,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:00,764.764 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:21:00,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:00,823.823 INFO    ] No camera update needed
[2026-10-25 06:21:00,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:21:00,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:21:00,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:21:00,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:21:02,882.882 INFO    ] ================================================
[2026-10-25 06:21:02,901.901 INFO    ] Launching Daemon at Sun Oct 25 06:21:02 IST 2026
[2026-10-25 06:21:02,912.912 INFO    ] ================================================
[2026-10-25 06:21:03,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:21:03
[2026-10-25 06:21:04,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:21:04,387.387 INFO    ] Initializing speech engine...
[2026-10-25 06:21:04,410.410 INFO    ] 2026-10-25 06:21:04
[2026-10-25 06:21:04,663.663 INFO    ] 2026-10-25 06:21:04
[2026-10-25 06:21:04,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:21:04,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:21:04,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:21:05,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:21:05,096.096 INFO    ] time= 25/10/2026 06:21:05
[2026-10-25 06:21:05,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:21:05,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:21:05,282.282 INFO    ] No existing commands found in stream
[2026-10-25 06:21:10,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:21:10,296.296 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 06:21:11,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:21:11,670.670 INFO    ] Checking for system updates...
[2026-10-25 06:21:11,707.707 INFO    ] 200
[2026-10-25 06:21:11,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:11,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:11,769.769 INFO    ] No update needed
[2026-10-25 06:21:11,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 06:21:11,806.806 INFO    ] 200
[2026-10-25 06:21:11,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:11,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:21:11,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:11,905.905 INFO    ] No camera update needed
[2026-10-25 06:21:11,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:21:11,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:21:11,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:21:11,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:21:13,963.963 INFO    ] ================================================
[2026-10-25 06:21:13,979.979 INFO    ] Launching Daemon at Sun Oct 25 06:21:13 IST 2026
[2026-10-25 06:21:13,990.990 INFO    ] ================================================
[2026-10-25 06:21:14,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:21:14
[2026-10-25 06:21:15,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:21:15,406.406 INFO    ] Initializing speech engine...
[2026-10-25 06:21:15,424.424 INFO    ] 2026-10-25 06:21:15
[2026-10-25 06:21:15,675.675 INFO    ] 2026-10-25 06:21:15
[2026-10-25 06:21:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:21:15,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:21:15,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:21:16,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:21:16,051.051 INFO    ] time= 25/10/2026 06:21:16
[2026-10-25 06:21:16,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:21:16,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:21:16,225.225 INFO    ] No existing commands found in stream
[2026-10-25 06:21:21,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:21:21,253.253 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 06:21:23,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:21:23,949.949 INFO    ] Checking for system updates...
[2026-10-25 06:21:23,985.985 INFO    ] 200
[2026-10-25 06:21:23,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:24,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:21:24,042.042 INFO    ] No update needed
[2026-10-25 06:21:24,044.044 INFO    ] Checking for camera pi updates...
[2026-10-25 06:21:24,078.078 INFO    ] 200
[2026-10-25 06:21:24,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:24,125.125 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:21:24,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:21:24,196.196 INFO    ] No camera update needed
[2026-10-25 06:21:24,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:21:24,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:21:24,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:21:24,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:21:26,252.252 INFO    ] ================================================
[2026-10-25 06:21:26,268.268 INFO    ] Launching Daemon at Sun Oct 25 06:21:26 IST 2026
[2026-10-25 06:21:26,279.279 INFO    ] ================================================
[2026-10-25 06:21:26,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:21:26
[2026-10-25 06:21:27,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:21:27,710.710 INFO    ] Initializing speech engine...
[2026-10-25 06:21:27,732.732 INFO    ] 2026-10-25 06:21:27
[2026-10-25 06:21:27,986.986 INFO    ] 2026-10-25 06:21:27
[2026-10-25 06:21:28,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:21:29,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:21:29,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:21:29,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:21:29,876.876 INFO    ] time= 25/10/2026 06:21:29
[2026-10-25 06:21:29,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:21:29,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:21:29,944.944 INFO    ] No existing commands found in stream
[2026-10-25 06:21:34,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:21:34,960.960 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 06:21:37,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:21:37,272.272 INFO    ] Checking for system updates...
[2026-10-25 06:21:37,312.312 INFO    ] 200
[2026-10-25 06:21:37,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:37,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:37,376.376 INFO    ] No update needed
[2026-10-25 06:21:37,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 06:21:37,414.414 INFO    ] 200
[2026-10-25 06:21:37,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:37,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:21:37,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:37,593.593 INFO    ] No camera update needed
[2026-10-25 06:21:37,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:21:37,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:21:37,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:21:37,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:21:39,652.652 INFO    ] ================================================
[2026-10-25 06:21:39,667.667 INFO    ] Launching Daemon at Sun Oct 25 06:21:39 IST 2026
[2026-10-25 06:21:39,677.677 INFO    ] ================================================
[2026-10-25 06:21:40,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:21:40
[2026-10-25 06:21:40,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:21:41,190.190 INFO    ] Initializing speech engine...
[2026-10-25 06:21:41,199.199 INFO    ] 2026-10-25 06:21:41
[2026-10-25 06:21:41,468.468 INFO    ] 2026-10-25 06:21:41
[2026-10-25 06:21:41,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:21:41,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:21:41,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:21:41,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:21:41,962.962 INFO    ] time= 25/10/2026 06:21:41
[2026-10-25 06:21:42,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:21:42,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:21:42,158.158 INFO    ] No existing commands found in stream
[2026-10-25 06:21:47,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:21:47,188.188 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 06:21:48,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:21:48,251.251 INFO    ] Checking for system updates...
[2026-10-25 06:21:48,288.288 INFO    ] 200
[2026-10-25 06:21:48,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:48,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:48,429.429 INFO    ] No update needed
[2026-10-25 06:21:48,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 06:21:48,466.466 INFO    ] 200
[2026-10-25 06:21:48,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:21:48,510.510 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:21:48,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:21:48,555.555 INFO    ] No camera update needed
[2026-10-25 06:21:48,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:21:48,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:21:48,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:21:48,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:21:50,609.609 INFO    ] ================================================
[2026-10-25 06:21:50,625.625 INFO    ] Launching Daemon at Sun Oct 25 06:21:50 IST 2026
[2026-10-25 06:21:50,636.636 INFO    ] ================================================
[2026-10-25 06:21:51,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:21:51
[2026-10-25 06:21:51,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:21:52,071.071 INFO    ] Initializing speech engine...
[2026-10-25 06:21:52,080.080 INFO    ] 2026-10-25 06:21:52
[2026-10-25 06:21:52,370.370 INFO    ] 2026-10-25 06:21:52
[2026-10-25 06:21:52,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:21:52,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:21:52,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:21:52,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:21:52,745.745 INFO    ] time= 25/10/2026 06:21:52
[2026-10-25 06:21:52,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:21:52,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:21:52,870.870 INFO    ] No existing commands found in stream
[2026-10-25 06:21:57,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:21:57,884.884 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 06:21:59,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:21:59,979.979 INFO    ] Checking for system updates...
[2026-10-25 06:22:00,016.016 INFO    ] 200
[2026-10-25 06:22:00,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:00,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:00,084.084 INFO    ] No update needed
[2026-10-25 06:22:00,087.087 INFO    ] Checking for camera pi updates...
[2026-10-25 06:22:00,128.128 INFO    ] 200
[2026-10-25 06:22:00,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:00,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:22:00,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:00,343.343 INFO    ] No camera update needed
[2026-10-25 06:22:00,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:22:00,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:22:00,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:22:00,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:22:02,401.401 INFO    ] ================================================
[2026-10-25 06:22:02,418.418 INFO    ] Launching Daemon at Sun Oct 25 06:22:02 IST 2026
[2026-10-25 06:22:02,439.439 INFO    ] ================================================
[2026-10-25 06:22:03,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:22:03
[2026-10-25 06:22:03,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:22:03,978.978 INFO    ] Initializing speech engine...
[2026-10-25 06:22:03,992.992 INFO    ] 2026-10-25 06:22:03
[2026-10-25 06:22:04,256.256 INFO    ] 2026-10-25 06:22:04
[2026-10-25 06:22:04,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:22:04,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:22:04,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:22:04,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:22:04,745.745 INFO    ] time= 25/10/2026 06:22:04
[2026-10-25 06:22:04,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:22:04,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:22:04,889.889 INFO    ] No existing commands found in stream
[2026-10-25 06:22:09,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:22:09,903.903 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 06:22:11,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:22:11,184.184 INFO    ] Checking for system updates...
[2026-10-25 06:22:11,220.220 INFO    ] 200
[2026-10-25 06:22:11,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:11,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:11,278.278 INFO    ] No update needed
[2026-10-25 06:22:11,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 06:22:11,314.314 INFO    ] 200
[2026-10-25 06:22:11,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:11,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:22:11,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:11,412.412 INFO    ] No camera update needed
[2026-10-25 06:22:11,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:22:11,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:22:11,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:22:11,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:22:13,467.467 INFO    ] ================================================
[2026-10-25 06:22:13,483.483 INFO    ] Launching Daemon at Sun Oct 25 06:22:13 IST 2026
[2026-10-25 06:22:13,495.495 INFO    ] ================================================
[2026-10-25 06:22:14,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:22:14
[2026-10-25 06:22:14,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:22:14,915.915 INFO    ] Initializing speech engine...
[2026-10-25 06:22:14,928.928 INFO    ] 2026-10-25 06:22:14
[2026-10-25 06:22:15,174.174 INFO    ] 2026-10-25 06:22:15
[2026-10-25 06:22:15,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:22:15,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:22:15,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:22:15,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:22:15,542.542 INFO    ] time= 25/10/2026 06:22:15
[2026-10-25 06:22:15,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:22:15,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:22:15,669.669 INFO    ] No existing commands found in stream
[2026-10-25 06:22:20,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:22:20,692.692 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 06:22:21,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:22:21,866.866 INFO    ] Checking for system updates...
[2026-10-25 06:22:21,902.902 INFO    ] 200
[2026-10-25 06:22:21,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:21,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:21,971.971 INFO    ] No update needed
[2026-10-25 06:22:21,974.974 INFO    ] Checking for camera pi updates...
[2026-10-25 06:22:22,013.013 INFO    ] 200
[2026-10-25 06:22:22,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:22,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:22:22,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:22:22,104.104 INFO    ] No camera update needed
[2026-10-25 06:22:22,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:22:22,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:22:22,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:22:22,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:22:24,161.161 INFO    ] ================================================
[2026-10-25 06:22:24,177.177 INFO    ] Launching Daemon at Sun Oct 25 06:22:24 IST 2026
[2026-10-25 06:22:24,188.188 INFO    ] ================================================
[2026-10-25 06:22:24,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:22:24
[2026-10-25 06:22:25,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:22:25,810.810 INFO    ] Initializing speech engine...
[2026-10-25 06:22:25,824.824 INFO    ] 2026-10-25 06:22:25
[2026-10-25 06:22:26,103.103 INFO    ] 2026-10-25 06:22:26
[2026-10-25 06:22:26,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:22:26,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:22:26,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:22:26,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:22:26,624.624 INFO    ] time= 25/10/2026 06:22:26
[2026-10-25 06:22:26,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:22:26,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:22:26,785.785 INFO    ] No existing commands found in stream
[2026-10-25 06:22:31,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:22:31,812.812 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 06:22:34,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:22:34,974.974 INFO    ] Checking for system updates...
[2026-10-25 06:22:35,010.010 INFO    ] 200
[2026-10-25 06:22:35,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:35,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:22:35,068.068 INFO    ] No update needed
[2026-10-25 06:22:35,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 06:22:35,104.104 INFO    ] 200
[2026-10-25 06:22:35,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:35,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:22:35,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:22:35,211.211 INFO    ] No camera update needed
[2026-10-25 06:22:35,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:22:35,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:22:35,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:22:35,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:22:37,266.266 INFO    ] ================================================
[2026-10-25 06:22:37,282.282 INFO    ] Launching Daemon at Sun Oct 25 06:22:37 IST 2026
[2026-10-25 06:22:37,292.292 INFO    ] ================================================
[2026-10-25 06:22:37,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:22:37
[2026-10-25 06:22:38,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:22:38,921.921 INFO    ] Initializing speech engine...
[2026-10-25 06:22:38,928.928 INFO    ] 2026-10-25 06:22:38
[2026-10-25 06:22:39,219.219 INFO    ] 2026-10-25 06:22:39
[2026-10-25 06:22:39,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:22:39,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:22:39,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:22:39,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:22:39,694.694 INFO    ] time= 25/10/2026 06:22:39
[2026-10-25 06:22:39,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:22:39,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:22:39,890.890 INFO    ] No existing commands found in stream
[2026-10-25 06:22:44,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:22:44,918.918 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 06:22:48,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:22:48,946.946 INFO    ] Checking for system updates...
[2026-10-25 06:22:48,984.984 INFO    ] 200
[2026-10-25 06:22:48,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:49,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:22:49,044.044 INFO    ] No update needed
[2026-10-25 06:22:49,047.047 INFO    ] Checking for camera pi updates...
[2026-10-25 06:22:49,083.083 INFO    ] 200
[2026-10-25 06:22:49,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:22:49,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:22:49,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:22:49,171.171 INFO    ] No camera update needed
[2026-10-25 06:22:49,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:22:49,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:22:49,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:22:49,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:22:51,229.229 INFO    ] ================================================
[2026-10-25 06:22:51,245.245 INFO    ] Launching Daemon at Sun Oct 25 06:22:51 IST 2026
[2026-10-25 06:22:51,256.256 INFO    ] ================================================
[2026-10-25 06:22:51,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:22:51
[2026-10-25 06:22:52,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:22:52,670.670 INFO    ] Initializing speech engine...
[2026-10-25 06:22:52,679.679 INFO    ] 2026-10-25 06:22:52
[2026-10-25 06:22:52,975.975 INFO    ] 2026-10-25 06:22:52
[2026-10-25 06:22:53,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:22:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:22:53,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:22:53,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:22:53,355.355 INFO    ] time= 25/10/2026 06:22:53
[2026-10-25 06:22:53,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:22:53,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:22:53,482.482 INFO    ] No existing commands found in stream
[2026-10-25 06:22:58,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:22:58,498.498 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 06:23:00,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:23:00,044.044 INFO    ] Checking for system updates...
[2026-10-25 06:23:00,080.080 INFO    ] 200
[2026-10-25 06:23:00,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:00,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:00,139.139 INFO    ] No update needed
[2026-10-25 06:23:00,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:00,185.185 INFO    ] 200
[2026-10-25 06:23:00,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:00,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:00,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:00,280.280 INFO    ] No camera update needed
[2026-10-25 06:23:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:00,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:00,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:00,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:23:02,343.343 INFO    ] ================================================
[2026-10-25 06:23:02,361.361 INFO    ] Launching Daemon at Sun Oct 25 06:23:02 IST 2026
[2026-10-25 06:23:02,375.375 INFO    ] ================================================
[2026-10-25 06:23:03,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:23:03
[2026-10-25 06:23:03,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:23:04,054.054 INFO    ] Initializing speech engine...
[2026-10-25 06:23:04,069.069 INFO    ] 2026-10-25 06:23:04
[2026-10-25 06:23:04,334.334 INFO    ] 2026-10-25 06:23:04
[2026-10-25 06:23:04,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:23:04,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:23:04,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:23:04,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:23:04,789.789 INFO    ] time= 25/10/2026 06:23:04
[2026-10-25 06:23:04,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:23:04,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:23:04,945.945 INFO    ] No existing commands found in stream
[2026-10-25 06:23:09,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:23:09,964.964 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 06:23:11,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:23:11,014.014 INFO    ] Checking for system updates...
[2026-10-25 06:23:11,051.051 INFO    ] 200
[2026-10-25 06:23:11,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:11,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:11,110.110 INFO    ] No update needed
[2026-10-25 06:23:11,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:11,148.148 INFO    ] 200
[2026-10-25 06:23:11,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:11,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:11,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:11,257.257 INFO    ] No camera update needed
[2026-10-25 06:23:11,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:11,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:11,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:11,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:23:13,316.316 INFO    ] ================================================
[2026-10-25 06:23:13,332.332 INFO    ] Launching Daemon at Sun Oct 25 06:23:13 IST 2026
[2026-10-25 06:23:13,343.343 INFO    ] ================================================
[2026-10-25 06:23:14,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:23:13
[2026-10-25 06:23:14,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:23:14,993.993 INFO    ] Initializing speech engine...
[2026-10-25 06:23:15,008.008 INFO    ] 2026-10-25 06:23:14
[2026-10-25 06:23:15,279.279 INFO    ] 2026-10-25 06:23:15
[2026-10-25 06:23:15,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:23:15,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:23:15,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:23:15,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:23:15,762.762 INFO    ] time= 25/10/2026 06:23:15
[2026-10-25 06:23:15,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:23:15,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:23:15,908.908 INFO    ] No existing commands found in stream
[2026-10-25 06:23:20,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:23:20,923.923 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 06:23:21,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:23:21,958.958 INFO    ] Checking for system updates...
[2026-10-25 06:23:21,994.994 INFO    ] 200
[2026-10-25 06:23:21,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:22,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:22,052.052 INFO    ] No update needed
[2026-10-25 06:23:22,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:22,088.088 INFO    ] 200
[2026-10-25 06:23:22,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:22,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:22,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:22,193.193 INFO    ] No camera update needed
[2026-10-25 06:23:22,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:22,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:22,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:22,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:23:24,249.249 INFO    ] ================================================
[2026-10-25 06:23:24,264.264 INFO    ] Launching Daemon at Sun Oct 25 06:23:24 IST 2026
[2026-10-25 06:23:24,275.275 INFO    ] ================================================
[2026-10-25 06:23:24,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:23:24
[2026-10-25 06:23:25,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:23:25,839.839 INFO    ] Initializing speech engine...
[2026-10-25 06:23:25,844.844 INFO    ] 2026-10-25 06:23:25
[2026-10-25 06:23:26,093.093 INFO    ] 2026-10-25 06:23:26
[2026-10-25 06:23:26,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:23:26,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:23:26,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:23:26,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:23:26,570.570 INFO    ] time= 25/10/2026 06:23:26
[2026-10-25 06:23:26,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:23:26,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:23:26,711.711 INFO    ] No existing commands found in stream
[2026-10-25 06:23:31,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:23:31,726.726 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 06:23:35,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:23:35,547.547 INFO    ] Checking for system updates...
[2026-10-25 06:23:35,583.583 INFO    ] 200
[2026-10-25 06:23:35,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:35,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:35,648.648 INFO    ] No update needed
[2026-10-25 06:23:35,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:35,684.684 INFO    ] 200
[2026-10-25 06:23:35,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:35,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:35,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:35,785.785 INFO    ] No camera update needed
[2026-10-25 06:23:35,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:35,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:35,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:35,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:23:37,842.842 INFO    ] ================================================
[2026-10-25 06:23:37,857.857 INFO    ] Launching Daemon at Sun Oct 25 06:23:37 IST 2026
[2026-10-25 06:23:37,868.868 INFO    ] ================================================
[2026-10-25 06:23:38,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:23:38
[2026-10-25 06:23:39,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:23:39,287.287 INFO    ] Initializing speech engine...
[2026-10-25 06:23:39,296.296 INFO    ] 2026-10-25 06:23:39
[2026-10-25 06:23:39,545.545 INFO    ] 2026-10-25 06:23:39
[2026-10-25 06:23:39,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:23:39,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:23:39,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:23:39,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:23:40,028.028 INFO    ] time= 25/10/2026 06:23:39
[2026-10-25 06:23:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:23:40,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:23:40,176.176 INFO    ] No existing commands found in stream
[2026-10-25 06:23:45,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:23:45,190.190 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 06:23:47,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:23:47,318.318 INFO    ] Checking for system updates...
[2026-10-25 06:23:47,354.354 INFO    ] 200
[2026-10-25 06:23:47,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:47,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:47,412.412 INFO    ] No update needed
[2026-10-25 06:23:47,415.415 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:47,449.449 INFO    ] 200
[2026-10-25 06:23:47,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:47,493.493 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:47,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:23:47,556.556 INFO    ] No camera update needed
[2026-10-25 06:23:47,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:47,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:47,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:47,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:23:49,612.612 INFO    ] ================================================
[2026-10-25 06:23:49,627.627 INFO    ] Launching Daemon at Sun Oct 25 06:23:49 IST 2026
[2026-10-25 06:23:49,638.638 INFO    ] ================================================
[2026-10-25 06:23:50,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:23:50
[2026-10-25 06:23:50,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:23:51,085.085 INFO    ] Initializing speech engine...
[2026-10-25 06:23:51,096.096 INFO    ] 2026-10-25 06:23:51
[2026-10-25 06:23:51,357.357 INFO    ] 2026-10-25 06:23:51
[2026-10-25 06:23:51,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:23:51,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:23:51,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:23:51,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:23:51,835.835 INFO    ] time= 25/10/2026 06:23:51
[2026-10-25 06:23:51,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:23:51,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:23:51,966.966 INFO    ] No existing commands found in stream
[2026-10-25 06:23:56,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:23:56,980.980 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 06:23:58,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:23:58,011.011 INFO    ] Checking for system updates...
[2026-10-25 06:23:58,047.047 INFO    ] 200
[2026-10-25 06:23:58,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:58,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:58,106.106 INFO    ] No update needed
[2026-10-25 06:23:58,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 06:23:58,142.142 INFO    ] 200
[2026-10-25 06:23:58,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:23:58,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:23:58,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:23:58,239.239 INFO    ] No camera update needed
[2026-10-25 06:23:58,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:23:58,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:23:58,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:23:58,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:24:00,294.294 INFO    ] ================================================
[2026-10-25 06:24:00,309.309 INFO    ] Launching Daemon at Sun Oct 25 06:24:00 IST 2026
[2026-10-25 06:24:00,320.320 INFO    ] ================================================
[2026-10-25 06:24:00,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:24:00
[2026-10-25 06:24:01,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:24:01,977.977 INFO    ] Initializing speech engine...
[2026-10-25 06:24:01,981.981 INFO    ] 2026-10-25 06:24:01
[2026-10-25 06:24:02,366.366 INFO    ] 2026-10-25 06:24:02
[2026-10-25 06:24:02,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:24:02,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:24:02,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:24:02,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:24:02,830.830 INFO    ] time= 25/10/2026 06:24:02
[2026-10-25 06:24:02,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:24:02,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:24:02,980.980 INFO    ] No existing commands found in stream
[2026-10-25 06:24:08,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:24:08,013.013 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 06:24:12,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:24:12,157.157 INFO    ] Checking for system updates...
[2026-10-25 06:24:12,195.195 INFO    ] 200
[2026-10-25 06:24:12,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:12,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:24:12,252.252 INFO    ] No update needed
[2026-10-25 06:24:12,255.255 INFO    ] Checking for camera pi updates...
[2026-10-25 06:24:12,288.288 INFO    ] 200
[2026-10-25 06:24:12,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:12,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:24:12,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:24:12,391.391 INFO    ] No camera update needed
[2026-10-25 06:24:12,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:24:12,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:24:12,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:24:12,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:24:14,445.445 INFO    ] ================================================
[2026-10-25 06:24:14,459.459 INFO    ] Launching Daemon at Sun Oct 25 06:24:14 IST 2026
[2026-10-25 06:24:14,470.470 INFO    ] ================================================
[2026-10-25 06:24:15,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:24:15
[2026-10-25 06:24:15,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:24:15,994.994 INFO    ] Initializing speech engine...
[2026-10-25 06:24:16,008.008 INFO    ] 2026-10-25 06:24:15
[2026-10-25 06:24:16,277.277 INFO    ] 2026-10-25 06:24:16
[2026-10-25 06:24:16,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:24:16,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:24:16,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:24:16,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:24:16,776.776 INFO    ] time= 25/10/2026 06:24:16
[2026-10-25 06:24:16,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:24:16,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:24:16,993.993 INFO    ] No existing commands found in stream
[2026-10-25 06:24:22,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:24:22,025.025 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 06:24:23,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:24:23,999.999 INFO    ] Checking for system updates...
[2026-10-25 06:24:24,039.039 INFO    ] 200
[2026-10-25 06:24:24,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:24,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:24:24,098.098 INFO    ] No update needed
[2026-10-25 06:24:24,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 06:24:24,138.138 INFO    ] 200
[2026-10-25 06:24:24,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:24,181.181 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:24:24,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:24:24,233.233 INFO    ] No camera update needed
[2026-10-25 06:24:24,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:24:24,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:24:24,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:24:24,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:24:26,288.288 INFO    ] ================================================
[2026-10-25 06:24:26,303.303 INFO    ] Launching Daemon at Sun Oct 25 06:24:26 IST 2026
[2026-10-25 06:24:26,314.314 INFO    ] ================================================
[2026-10-25 06:24:26,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:24:26
[2026-10-25 06:24:27,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:24:27,859.859 INFO    ] Initializing speech engine...
[2026-10-25 06:24:27,874.874 INFO    ] 2026-10-25 06:24:27
[2026-10-25 06:24:28,135.135 INFO    ] 2026-10-25 06:24:28
[2026-10-25 06:24:28,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:24:29,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:24:29,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:24:29,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:24:29,907.907 INFO    ] time= 25/10/2026 06:24:29
[2026-10-25 06:24:29,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:24:29,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:24:30,027.027 INFO    ] No existing commands found in stream
[2026-10-25 06:24:35,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:24:35,036.036 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 06:24:38,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:24:38,505.505 INFO    ] Checking for system updates...
[2026-10-25 06:24:38,541.541 INFO    ] 200
[2026-10-25 06:24:38,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:38,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:24:38,599.599 INFO    ] No update needed
[2026-10-25 06:24:38,601.601 INFO    ] Checking for camera pi updates...
[2026-10-25 06:24:38,635.635 INFO    ] 200
[2026-10-25 06:24:38,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:38,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:24:38,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:24:38,741.741 INFO    ] No camera update needed
[2026-10-25 06:24:38,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:24:38,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:24:38,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:24:38,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:24:40,795.795 INFO    ] ================================================
[2026-10-25 06:24:40,810.810 INFO    ] Launching Daemon at Sun Oct 25 06:24:40 IST 2026
[2026-10-25 06:24:40,821.821 INFO    ] ================================================
[2026-10-25 06:24:41,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:24:41
[2026-10-25 06:24:41,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:24:42,238.238 INFO    ] Initializing speech engine...
[2026-10-25 06:24:42,247.247 INFO    ] 2026-10-25 06:24:42
[2026-10-25 06:24:42,492.492 INFO    ] 2026-10-25 06:24:42
[2026-10-25 06:24:42,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:24:42,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:24:42,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:24:42,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:24:42,960.960 INFO    ] time= 25/10/2026 06:24:42
[2026-10-25 06:24:43,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:24:43,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:24:43,166.166 INFO    ] No existing commands found in stream
[2026-10-25 06:24:48,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:24:48,191.191 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 06:24:50,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:24:50,841.841 INFO    ] Checking for system updates...
[2026-10-25 06:24:50,882.882 INFO    ] 200
[2026-10-25 06:24:50,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:50,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:24:50,943.943 INFO    ] No update needed
[2026-10-25 06:24:50,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 06:24:50,979.979 INFO    ] 200
[2026-10-25 06:24:50,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:24:51,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:24:51,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:24:51,094.094 INFO    ] No camera update needed
[2026-10-25 06:24:51,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:24:51,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:24:51,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:24:51,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:24:53,151.151 INFO    ] ================================================
[2026-10-25 06:24:53,166.166 INFO    ] Launching Daemon at Sun Oct 25 06:24:53 IST 2026
[2026-10-25 06:24:53,176.176 INFO    ] ================================================
[2026-10-25 06:24:53,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:24:53
[2026-10-25 06:24:54,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:24:54,589.589 INFO    ] Initializing speech engine...
[2026-10-25 06:24:54,609.609 INFO    ] 2026-10-25 06:24:54
[2026-10-25 06:24:54,858.858 INFO    ] 2026-10-25 06:24:54
[2026-10-25 06:24:54,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:24:55,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:24:55,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:24:55,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:24:55,319.319 INFO    ] time= 25/10/2026 06:24:55
[2026-10-25 06:24:55,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:24:55,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:24:55,497.497 INFO    ] No existing commands found in stream
[2026-10-25 06:25:00,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:00,511.511 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 06:25:02,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:25:02,295.295 INFO    ] Checking for system updates...
[2026-10-25 06:25:02,453.453 INFO    ] 200
[2026-10-25 06:25:02,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:02,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:02,567.567 INFO    ] No update needed
[2026-10-25 06:25:02,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 06:25:02,615.615 INFO    ] 200
[2026-10-25 06:25:02,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:02,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:25:02,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:02,733.733 INFO    ] No camera update needed
[2026-10-25 06:25:02,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:25:02,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:25:02,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:25:02,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:25:04,803.803 INFO    ] ================================================
[2026-10-25 06:25:04,818.818 INFO    ] Launching Daemon at Sun Oct 25 06:25:04 IST 2026
[2026-10-25 06:25:04,828.828 INFO    ] ================================================
[2026-10-25 06:25:05,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:25:05
[2026-10-25 06:25:06,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:25:06,420.420 INFO    ] Initializing speech engine...
[2026-10-25 06:25:06,426.426 INFO    ] 2026-10-25 06:25:06
[2026-10-25 06:25:06,712.712 INFO    ] 2026-10-25 06:25:06
[2026-10-25 06:25:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:25:07,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:25:07,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:25:07,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:25:07,246.246 INFO    ] time= 25/10/2026 06:25:07
[2026-10-25 06:25:07,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:25:07,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:25:07,400.400 INFO    ] No existing commands found in stream
[2026-10-25 06:25:12,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:12,424.424 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 06:25:13,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:25:13,916.916 INFO    ] Checking for system updates...
[2026-10-25 06:25:13,953.953 INFO    ] 200
[2026-10-25 06:25:13,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:14,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:25:14,020.020 INFO    ] No update needed
[2026-10-25 06:25:14,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 06:25:14,057.057 INFO    ] 200
[2026-10-25 06:25:14,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:14,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:25:14,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:25:14,163.163 INFO    ] No camera update needed
[2026-10-25 06:25:14,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:25:14,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:25:14,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:25:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:25:16,221.221 INFO    ] ================================================
[2026-10-25 06:25:16,235.235 INFO    ] Launching Daemon at Sun Oct 25 06:25:16 IST 2026
[2026-10-25 06:25:16,246.246 INFO    ] ================================================
[2026-10-25 06:25:16,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:25:16
[2026-10-25 06:25:17,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:25:17,868.868 INFO    ] Initializing speech engine...
[2026-10-25 06:25:17,876.876 INFO    ] 2026-10-25 06:25:17
[2026-10-25 06:25:18,179.179 INFO    ] 2026-10-25 06:25:18
[2026-10-25 06:25:18,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:25:18,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:25:18,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:25:18,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:25:18,684.684 INFO    ] time= 25/10/2026 06:25:18
[2026-10-25 06:25:18,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:25:18,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:25:18,838.838 INFO    ] No existing commands found in stream
[2026-10-25 06:25:23,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:23,856.856 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 06:25:25,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:25:25,026.026 INFO    ] Checking for system updates...
[2026-10-25 06:25:25,065.065 INFO    ] 200
[2026-10-25 06:25:25,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:25,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:25,122.122 INFO    ] No update needed
[2026-10-25 06:25:25,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 06:25:25,158.158 INFO    ] 200
[2026-10-25 06:25:25,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:25,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:25:25,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:25,269.269 INFO    ] No camera update needed
[2026-10-25 06:25:25,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:25:25,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:25:25,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:25:25,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:25:27,324.324 INFO    ] ================================================
[2026-10-25 06:25:27,339.339 INFO    ] Launching Daemon at Sun Oct 25 06:25:27 IST 2026
[2026-10-25 06:25:27,350.350 INFO    ] ================================================
[2026-10-25 06:25:27,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:25:27
[2026-10-25 06:25:28,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:25:28,767.767 INFO    ] Initializing speech engine...
[2026-10-25 06:25:28,776.776 INFO    ] 2026-10-25 06:25:28
[2026-10-25 06:25:29,023.023 INFO    ] 2026-10-25 06:25:29
[2026-10-25 06:25:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:25:29,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:25:29,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:25:29,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:25:30,005.005 INFO    ] time= 25/10/2026 06:25:30
[2026-10-25 06:25:30,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:25:30,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:25:30,112.112 INFO    ] No existing commands found in stream
[2026-10-25 06:25:35,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:35,145.145 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 06:25:38,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:25:38,266.266 INFO    ] Checking for system updates...
[2026-10-25 06:25:38,302.302 INFO    ] 200
[2026-10-25 06:25:38,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:38,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:38,361.361 INFO    ] No update needed
[2026-10-25 06:25:38,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 06:25:38,397.397 INFO    ] 200
[2026-10-25 06:25:38,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:38,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:25:38,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:38,478.478 INFO    ] No camera update needed
[2026-10-25 06:25:38,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:25:38,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:25:38,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:25:38,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:25:40,535.535 INFO    ] ================================================
[2026-10-25 06:25:40,550.550 INFO    ] Launching Daemon at Sun Oct 25 06:25:40 IST 2026
[2026-10-25 06:25:40,561.561 INFO    ] ================================================
[2026-10-25 06:25:41,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:25:41
[2026-10-25 06:25:41,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:25:42,186.186 INFO    ] Initializing speech engine...
[2026-10-25 06:25:42,200.200 INFO    ] 2026-10-25 06:25:42
[2026-10-25 06:25:42,485.485 INFO    ] 2026-10-25 06:25:42
[2026-10-25 06:25:42,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:25:42,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:25:42,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:25:42,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:25:43,013.013 INFO    ] time= 25/10/2026 06:25:42
[2026-10-25 06:25:43,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:25:43,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:25:43,165.165 INFO    ] No existing commands found in stream
[2026-10-25 06:25:48,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:48,185.185 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 06:25:48,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:25:48,649.649 INFO    ] Checking for system updates...
[2026-10-25 06:25:48,686.686 INFO    ] 200
[2026-10-25 06:25:48,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:48,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:48,745.745 INFO    ] No update needed
[2026-10-25 06:25:48,748.748 INFO    ] Checking for camera pi updates...
[2026-10-25 06:25:48,784.784 INFO    ] 200
[2026-10-25 06:25:48,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:25:48,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:25:48,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:25:48,891.891 INFO    ] No camera update needed
[2026-10-25 06:25:48,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:25:48,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:25:48,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:25:48,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:25:50,951.951 INFO    ] ================================================
[2026-10-25 06:25:50,966.966 INFO    ] Launching Daemon at Sun Oct 25 06:25:50 IST 2026
[2026-10-25 06:25:50,977.977 INFO    ] ================================================
[2026-10-25 06:25:51,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:25:51
[2026-10-25 06:25:52,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:25:52,427.427 INFO    ] Initializing speech engine...
[2026-10-25 06:25:52,436.436 INFO    ] 2026-10-25 06:25:52
[2026-10-25 06:25:52,693.693 INFO    ] 2026-10-25 06:25:52
[2026-10-25 06:25:52,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:25:52,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:25:52,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:25:53,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:25:53,150.150 INFO    ] time= 25/10/2026 06:25:53
[2026-10-25 06:25:53,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:25:53,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:25:53,365.365 INFO    ] No existing commands found in stream
[2026-10-25 06:25:58,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:25:58,398.398 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 06:26:00,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:26:00,132.132 INFO    ] Checking for system updates...
[2026-10-25 06:26:00,170.170 INFO    ] 200
[2026-10-25 06:26:00,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:00,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:00,238.238 INFO    ] No update needed
[2026-10-25 06:26:00,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 06:26:00,275.275 INFO    ] 200
[2026-10-25 06:26:00,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:00,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:26:00,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:00,382.382 INFO    ] No camera update needed
[2026-10-25 06:26:00,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:26:00,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:26:00,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:26:00,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:26:02,443.443 INFO    ] ================================================
[2026-10-25 06:26:02,466.466 INFO    ] Launching Daemon at Sun Oct 25 06:26:02 IST 2026
[2026-10-25 06:26:02,485.485 INFO    ] ================================================
[2026-10-25 06:26:03,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:26:03
[2026-10-25 06:26:03,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:26:04,227.227 INFO    ] Initializing speech engine...
[2026-10-25 06:26:04,241.241 INFO    ] 2026-10-25 06:26:04
[2026-10-25 06:26:04,525.525 INFO    ] 2026-10-25 06:26:04
[2026-10-25 06:26:04,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:26:04,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:26:04,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:26:05,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:26:05,072.072 INFO    ] time= 25/10/2026 06:26:05
[2026-10-25 06:26:05,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:26:05,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:26:05,234.234 INFO    ] No existing commands found in stream
[2026-10-25 06:26:10,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:26:10,261.261 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 06:26:11,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:26:11,872.872 INFO    ] Checking for system updates...
[2026-10-25 06:26:11,908.908 INFO    ] 200
[2026-10-25 06:26:11,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:11,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:11,966.966 INFO    ] No update needed
[2026-10-25 06:26:11,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 06:26:12,002.002 INFO    ] 200
[2026-10-25 06:26:12,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:12,046.046 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:26:12,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:12,203.203 INFO    ] No camera update needed
[2026-10-25 06:26:12,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:26:12,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:26:12,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:26:12,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:26:14,258.258 INFO    ] ================================================
[2026-10-25 06:26:14,273.273 INFO    ] Launching Daemon at Sun Oct 25 06:26:14 IST 2026
[2026-10-25 06:26:14,284.284 INFO    ] ================================================
[2026-10-25 06:26:14,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:26:14
[2026-10-25 06:26:15,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:26:15,751.751 INFO    ] Initializing speech engine...
[2026-10-25 06:26:15,756.756 INFO    ] 2026-10-25 06:26:15
[2026-10-25 06:26:16,020.020 INFO    ] 2026-10-25 06:26:16
[2026-10-25 06:26:16,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:26:16,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:26:16,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:26:16,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:26:16,565.565 INFO    ] time= 25/10/2026 06:26:16
[2026-10-25 06:26:16,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:26:16,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:26:16,701.701 INFO    ] No existing commands found in stream
[2026-10-25 06:26:21,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:26:21,729.729 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 06:26:24,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:26:24,371.371 INFO    ] Checking for system updates...
[2026-10-25 06:26:24,406.406 INFO    ] 200
[2026-10-25 06:26:24,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:24,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:24,466.466 INFO    ] No update needed
[2026-10-25 06:26:24,469.469 INFO    ] Checking for camera pi updates...
[2026-10-25 06:26:24,503.503 INFO    ] 200
[2026-10-25 06:26:24,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:24,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:26:24,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:24,596.596 INFO    ] No camera update needed
[2026-10-25 06:26:24,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:26:24,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:26:24,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:26:24,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:26:26,653.653 INFO    ] ================================================
[2026-10-25 06:26:26,668.668 INFO    ] Launching Daemon at Sun Oct 25 06:26:26 IST 2026
[2026-10-25 06:26:26,678.678 INFO    ] ================================================
[2026-10-25 06:26:27,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:26:27
[2026-10-25 06:26:27,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:26:28,303.303 INFO    ] Initializing speech engine...
[2026-10-25 06:26:28,312.312 INFO    ] 2026-10-25 06:26:28
[2026-10-25 06:26:28,601.601 INFO    ] 2026-10-25 06:26:28
[2026-10-25 06:26:28,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:26:29,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:26:29,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:26:30,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:26:30,054.054 INFO    ] time= 25/10/2026 06:26:30
[2026-10-25 06:26:30,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:26:30,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:26:30,140.140 INFO    ] No existing commands found in stream
[2026-10-25 06:26:35,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:26:35,156.156 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 06:26:36,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:26:36,811.811 INFO    ] Checking for system updates...
[2026-10-25 06:26:36,849.849 INFO    ] 200
[2026-10-25 06:26:36,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:36,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:36,909.909 INFO    ] No update needed
[2026-10-25 06:26:36,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 06:26:36,945.945 INFO    ] 200
[2026-10-25 06:26:36,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:36,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:26:37,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:37,048.048 INFO    ] No camera update needed
[2026-10-25 06:26:37,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:26:37,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:26:37,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:26:37,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:26:39,103.103 INFO    ] ================================================
[2026-10-25 06:26:39,119.119 INFO    ] Launching Daemon at Sun Oct 25 06:26:39 IST 2026
[2026-10-25 06:26:39,134.134 INFO    ] ================================================
[2026-10-25 06:26:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:26:39
[2026-10-25 06:26:40,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:26:40,742.742 INFO    ] Initializing speech engine...
[2026-10-25 06:26:40,764.764 INFO    ] 2026-10-25 06:26:40
[2026-10-25 06:26:41,032.032 INFO    ] 2026-10-25 06:26:41
[2026-10-25 06:26:41,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:26:41,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:26:41,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:26:41,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:26:41,524.524 INFO    ] time= 25/10/2026 06:26:41
[2026-10-25 06:26:41,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:26:41,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:26:41,694.694 INFO    ] No existing commands found in stream
[2026-10-25 06:26:46,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:26:46,730.730 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 06:26:50,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:26:50,287.287 INFO    ] Checking for system updates...
[2026-10-25 06:26:50,325.325 INFO    ] 200
[2026-10-25 06:26:50,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:50,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:50,384.384 INFO    ] No update needed
[2026-10-25 06:26:50,386.386 INFO    ] Checking for camera pi updates...
[2026-10-25 06:26:50,424.424 INFO    ] 200
[2026-10-25 06:26:50,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:26:50,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:26:50,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:26:50,540.540 INFO    ] No camera update needed
[2026-10-25 06:26:50,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:26:50,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:26:50,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:26:50,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:26:52,594.594 INFO    ] ================================================
[2026-10-25 06:26:52,609.609 INFO    ] Launching Daemon at Sun Oct 25 06:26:52 IST 2026
[2026-10-25 06:26:52,619.619 INFO    ] ================================================
[2026-10-25 06:26:53,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:26:53
[2026-10-25 06:26:53,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:26:54,012.012 INFO    ] Initializing speech engine...
[2026-10-25 06:26:54,026.026 INFO    ] 2026-10-25 06:26:54
[2026-10-25 06:26:54,290.290 INFO    ] 2026-10-25 06:26:54
[2026-10-25 06:26:54,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:26:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:26:54,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:26:54,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:26:54,664.664 INFO    ] time= 25/10/2026 06:26:54
[2026-10-25 06:26:54,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:26:54,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:26:54,825.825 INFO    ] No existing commands found in stream
[2026-10-25 06:26:59,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:26:59,853.853 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 06:27:00,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:27:00,412.412 INFO    ] Checking for system updates...
[2026-10-25 06:27:00,448.448 INFO    ] 200
[2026-10-25 06:27:00,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:00,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:27:00,505.505 INFO    ] No update needed
[2026-10-25 06:27:00,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 06:27:00,546.546 INFO    ] 200
[2026-10-25 06:27:00,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:00,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:27:00,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:27:00,642.642 INFO    ] No camera update needed
[2026-10-25 06:27:00,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:27:00,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:27:00,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:27:00,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:27:02,707.707 INFO    ] ================================================
[2026-10-25 06:27:02,727.727 INFO    ] Launching Daemon at Sun Oct 25 06:27:02 IST 2026
[2026-10-25 06:27:02,743.743 INFO    ] ================================================
[2026-10-25 06:27:03,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:27:03
[2026-10-25 06:27:03,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:27:04,246.246 INFO    ] Initializing speech engine...
[2026-10-25 06:27:04,265.265 INFO    ] 2026-10-25 06:27:04
[2026-10-25 06:27:04,514.514 INFO    ] 2026-10-25 06:27:04
[2026-10-25 06:27:04,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:27:04,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:27:04,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:27:04,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:27:04,959.959 INFO    ] time= 25/10/2026 06:27:04
[2026-10-25 06:27:05,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:27:05,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:27:05,171.171 INFO    ] No existing commands found in stream
[2026-10-25 06:27:10,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:27:10,207.207 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 06:27:13,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:27:13,084.084 INFO    ] Checking for system updates...
[2026-10-25 06:27:13,120.120 INFO    ] 200
[2026-10-25 06:27:13,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:13,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:13,185.185 INFO    ] No update needed
[2026-10-25 06:27:13,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 06:27:13,225.225 INFO    ] 200
[2026-10-25 06:27:13,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:13,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:27:13,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:13,328.328 INFO    ] No camera update needed
[2026-10-25 06:27:13,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:27:13,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:27:13,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:27:13,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:27:15,385.385 INFO    ] ================================================
[2026-10-25 06:27:15,400.400 INFO    ] Launching Daemon at Sun Oct 25 06:27:15 IST 2026
[2026-10-25 06:27:15,411.411 INFO    ] ================================================
[2026-10-25 06:27:15,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:27:15
[2026-10-25 06:27:16,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:27:16,860.860 INFO    ] Initializing speech engine...
[2026-10-25 06:27:16,870.870 INFO    ] 2026-10-25 06:27:16
[2026-10-25 06:27:17,122.122 INFO    ] 2026-10-25 06:27:17
[2026-10-25 06:27:17,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:27:17,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:27:17,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:27:17,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:27:17,608.608 INFO    ] time= 25/10/2026 06:27:17
[2026-10-25 06:27:17,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:27:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:27:17,797.797 INFO    ] No existing commands found in stream
[2026-10-25 06:27:22,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:27:22,830.830 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 06:27:26,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:27:26,840.840 INFO    ] Checking for system updates...
[2026-10-25 06:27:26,884.884 INFO    ] 200
[2026-10-25 06:27:26,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:26,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:26,948.948 INFO    ] No update needed
[2026-10-25 06:27:26,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 06:27:26,988.988 INFO    ] 200
[2026-10-25 06:27:26,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:27,033.033 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:27:27,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:27,095.095 INFO    ] No camera update needed
[2026-10-25 06:27:27,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:27:27,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:27:27,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:27:27,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:27:29,153.153 INFO    ] ================================================
[2026-10-25 06:27:29,168.168 INFO    ] Launching Daemon at Sun Oct 25 06:27:29 IST 2026
[2026-10-25 06:27:29,179.179 INFO    ] ================================================
[2026-10-25 06:27:29,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:27:29
[2026-10-25 06:27:30,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:27:30,583.583 INFO    ] Initializing speech engine...
[2026-10-25 06:27:30,589.589 INFO    ] 2026-10-25 06:27:30
[2026-10-25 06:27:30,878.878 INFO    ] 2026-10-25 06:27:30
[2026-10-25 06:27:30,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:27:31,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:27:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:27:31,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:27:31,344.344 INFO    ] time= 25/10/2026 06:27:31
[2026-10-25 06:27:31,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:27:31,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:27:31,499.499 INFO    ] No existing commands found in stream
[2026-10-25 06:27:36,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:27:36,514.514 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 06:27:38,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:27:38,834.834 INFO    ] Checking for system updates...
[2026-10-25 06:27:38,870.870 INFO    ] 200
[2026-10-25 06:27:38,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:38,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:38,928.928 INFO    ] No update needed
[2026-10-25 06:27:38,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 06:27:38,965.965 INFO    ] 200
[2026-10-25 06:27:38,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:39,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:27:39,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:39,080.080 INFO    ] No camera update needed
[2026-10-25 06:27:39,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:27:39,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:27:39,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:27:39,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:27:41,138.138 INFO    ] ================================================
[2026-10-25 06:27:41,153.153 INFO    ] Launching Daemon at Sun Oct 25 06:27:41 IST 2026
[2026-10-25 06:27:41,164.164 INFO    ] ================================================
[2026-10-25 06:27:41,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:27:41
[2026-10-25 06:27:42,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:27:42,583.583 INFO    ] Initializing speech engine...
[2026-10-25 06:27:42,595.595 INFO    ] 2026-10-25 06:27:42
[2026-10-25 06:27:42,844.844 INFO    ] 2026-10-25 06:27:42
[2026-10-25 06:27:42,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:27:43,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:27:43,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:27:43,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:27:43,300.300 INFO    ] time= 25/10/2026 06:27:43
[2026-10-25 06:27:43,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:27:43,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:27:43,472.472 INFO    ] No existing commands found in stream
[2026-10-25 06:27:48,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:27:48,486.486 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 06:27:51,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:27:51,310.310 INFO    ] Checking for system updates...
[2026-10-25 06:27:51,350.350 INFO    ] 200
[2026-10-25 06:27:51,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:51,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:51,409.409 INFO    ] No update needed
[2026-10-25 06:27:51,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 06:27:51,449.449 INFO    ] 200
[2026-10-25 06:27:51,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:27:51,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:27:51,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:27:51,571.571 INFO    ] No camera update needed
[2026-10-25 06:27:51,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:27:51,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:27:51,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:27:51,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:27:53,626.626 INFO    ] ================================================
[2026-10-25 06:27:53,642.642 INFO    ] Launching Daemon at Sun Oct 25 06:27:53 IST 2026
[2026-10-25 06:27:53,653.653 INFO    ] ================================================
[2026-10-25 06:27:54,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:27:54
[2026-10-25 06:27:54,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:27:55,103.103 INFO    ] Initializing speech engine...
[2026-10-25 06:27:55,110.110 INFO    ] 2026-10-25 06:27:55
[2026-10-25 06:27:55,369.369 INFO    ] 2026-10-25 06:27:55
[2026-10-25 06:27:55,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:27:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:27:55,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:27:55,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:27:55,801.801 INFO    ] time= 25/10/2026 06:27:55
[2026-10-25 06:27:55,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:27:55,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:27:56,003.003 INFO    ] No existing commands found in stream
[2026-10-25 06:28:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:01,042.042 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 06:28:04,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:28:04,599.599 INFO    ] Checking for system updates...
[2026-10-25 06:28:04,635.635 INFO    ] 200
[2026-10-25 06:28:04,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:04,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:04,692.692 INFO    ] No update needed
[2026-10-25 06:28:04,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 06:28:04,728.728 INFO    ] 200
[2026-10-25 06:28:04,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:04,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:28:04,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:04,834.834 INFO    ] No camera update needed
[2026-10-25 06:28:04,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:28:04,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:28:04,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:28:04,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:28:06,891.891 INFO    ] ================================================
[2026-10-25 06:28:06,907.907 INFO    ] Launching Daemon at Sun Oct 25 06:28:06 IST 2026
[2026-10-25 06:28:06,919.919 INFO    ] ================================================
[2026-10-25 06:28:07,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:28:07
[2026-10-25 06:28:08,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:28:08,351.351 INFO    ] Initializing speech engine...
[2026-10-25 06:28:08,361.361 INFO    ] 2026-10-25 06:28:08
[2026-10-25 06:28:08,608.608 INFO    ] 2026-10-25 06:28:08
[2026-10-25 06:28:08,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:28:08,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:28:08,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:28:08,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:28:08,984.984 INFO    ] time= 25/10/2026 06:28:08
[2026-10-25 06:28:08,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:28:09,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:28:09,128.128 INFO    ] No existing commands found in stream
[2026-10-25 06:28:14,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:14,160.160 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 06:28:15,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:28:15,050.050 INFO    ] Checking for system updates...
[2026-10-25 06:28:15,086.086 INFO    ] 200
[2026-10-25 06:28:15,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:15,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:28:15,146.146 INFO    ] No update needed
[2026-10-25 06:28:15,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 06:28:15,185.185 INFO    ] 200
[2026-10-25 06:28:15,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:15,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:28:15,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:28:15,386.386 INFO    ] No camera update needed
[2026-10-25 06:28:15,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:28:15,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:28:15,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:28:15,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:28:17,440.440 INFO    ] ================================================
[2026-10-25 06:28:17,456.456 INFO    ] Launching Daemon at Sun Oct 25 06:28:17 IST 2026
[2026-10-25 06:28:17,467.467 INFO    ] ================================================
[2026-10-25 06:28:18,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:28:18
[2026-10-25 06:28:18,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:28:18,863.863 INFO    ] Initializing speech engine...
[2026-10-25 06:28:18,886.886 INFO    ] 2026-10-25 06:28:18
[2026-10-25 06:28:19,139.139 INFO    ] 2026-10-25 06:28:19
[2026-10-25 06:28:19,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:28:19,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:28:19,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:28:19,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:28:19,582.582 INFO    ] time= 25/10/2026 06:28:19
[2026-10-25 06:28:19,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:28:19,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:28:19,763.763 INFO    ] No existing commands found in stream
[2026-10-25 06:28:24,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:24,777.777 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 06:28:26,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:28:26,428.428 INFO    ] Checking for system updates...
[2026-10-25 06:28:26,464.464 INFO    ] 200
[2026-10-25 06:28:26,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:26,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:26,521.521 INFO    ] No update needed
[2026-10-25 06:28:26,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 06:28:26,561.561 INFO    ] 200
[2026-10-25 06:28:26,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:26,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:28:26,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:26,653.653 INFO    ] No camera update needed
[2026-10-25 06:28:26,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:28:26,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:28:26,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:28:26,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:28:28,708.708 INFO    ] ================================================
[2026-10-25 06:28:28,724.724 INFO    ] Launching Daemon at Sun Oct 25 06:28:28 IST 2026
[2026-10-25 06:28:28,734.734 INFO    ] ================================================
[2026-10-25 06:28:29,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:28:29
[2026-10-25 06:28:29,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:28:30,186.186 INFO    ] Initializing speech engine...
[2026-10-25 06:28:30,196.196 INFO    ] 2026-10-25 06:28:30
[2026-10-25 06:28:30,455.455 INFO    ] 2026-10-25 06:28:30
[2026-10-25 06:28:30,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:28:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:28:30,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:28:30,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:28:30,928.928 INFO    ] time= 25/10/2026 06:28:30
[2026-10-25 06:28:30,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:28:31,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:28:31,109.109 INFO    ] No existing commands found in stream
[2026-10-25 06:28:36,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:36,141.141 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 06:28:38,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:28:38,778.778 INFO    ] Checking for system updates...
[2026-10-25 06:28:38,815.815 INFO    ] 200
[2026-10-25 06:28:38,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:38,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:38,873.873 INFO    ] No update needed
[2026-10-25 06:28:38,876.876 INFO    ] Checking for camera pi updates...
[2026-10-25 06:28:38,909.909 INFO    ] 200
[2026-10-25 06:28:38,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:38,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:28:39,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:39,015.015 INFO    ] No camera update needed
[2026-10-25 06:28:39,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:28:39,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:28:39,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:28:39,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:28:41,073.073 INFO    ] ================================================
[2026-10-25 06:28:41,089.089 INFO    ] Launching Daemon at Sun Oct 25 06:28:41 IST 2026
[2026-10-25 06:28:41,099.099 INFO    ] ================================================
[2026-10-25 06:28:41,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:28:41
[2026-10-25 06:28:42,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:28:42,557.557 INFO    ] Initializing speech engine...
[2026-10-25 06:28:42,563.563 INFO    ] 2026-10-25 06:28:42
[2026-10-25 06:28:42,826.826 INFO    ] 2026-10-25 06:28:42
[2026-10-25 06:28:42,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:28:43,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:28:43,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:28:43,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:28:43,316.316 INFO    ] time= 25/10/2026 06:28:43
[2026-10-25 06:28:43,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:28:43,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:28:43,502.502 INFO    ] No existing commands found in stream
[2026-10-25 06:28:48,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:48,535.535 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 06:28:50,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:28:50,238.238 INFO    ] Checking for system updates...
[2026-10-25 06:28:50,284.284 INFO    ] 200
[2026-10-25 06:28:50,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:50,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:50,342.342 INFO    ] No update needed
[2026-10-25 06:28:50,344.344 INFO    ] Checking for camera pi updates...
[2026-10-25 06:28:50,378.378 INFO    ] 200
[2026-10-25 06:28:50,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:28:50,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:28:50,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:28:50,488.488 INFO    ] No camera update needed
[2026-10-25 06:28:50,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:28:50,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:28:50,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:28:50,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:28:52,543.543 INFO    ] ================================================
[2026-10-25 06:28:52,559.559 INFO    ] Launching Daemon at Sun Oct 25 06:28:52 IST 2026
[2026-10-25 06:28:52,570.570 INFO    ] ================================================
[2026-10-25 06:28:53,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:28:53
[2026-10-25 06:28:53,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:28:53,999.999 INFO    ] Initializing speech engine...
[2026-10-25 06:28:54,008.008 INFO    ] 2026-10-25 06:28:54
[2026-10-25 06:28:54,267.267 INFO    ] 2026-10-25 06:28:54
[2026-10-25 06:28:54,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:28:54,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:28:54,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:28:54,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:28:54,739.739 INFO    ] time= 25/10/2026 06:28:54
[2026-10-25 06:28:54,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:28:54,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:28:54,892.892 INFO    ] No existing commands found in stream
[2026-10-25 06:28:59,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:28:59,906.906 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 06:29:02,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:29:02,072.072 INFO    ] Checking for system updates...
[2026-10-25 06:29:02,124.124 INFO    ] 200
[2026-10-25 06:29:02,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:02,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:29:02,198.198 INFO    ] No update needed
[2026-10-25 06:29:02,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 06:29:02,249.249 INFO    ] 200
[2026-10-25 06:29:02,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:02,311.311 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:29:02,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:29:02,357.357 INFO    ] No camera update needed
[2026-10-25 06:29:02,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:29:02,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:29:02,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:29:02,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:29:04,429.429 INFO    ] ================================================
[2026-10-25 06:29:04,444.444 INFO    ] Launching Daemon at Sun Oct 25 06:29:04 IST 2026
[2026-10-25 06:29:04,455.455 INFO    ] ================================================
[2026-10-25 06:29:05,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:29:05
[2026-10-25 06:29:05,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:29:05,875.875 INFO    ] Initializing speech engine...
[2026-10-25 06:29:05,883.883 INFO    ] 2026-10-25 06:29:05
[2026-10-25 06:29:06,131.131 INFO    ] 2026-10-25 06:29:06
[2026-10-25 06:29:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:29:06,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:29:06,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:29:06,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:29:06,583.583 INFO    ] time= 25/10/2026 06:29:06
[2026-10-25 06:29:06,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:29:06,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:29:06,754.754 INFO    ] No existing commands found in stream
[2026-10-25 06:29:11,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:29:11,768.768 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 06:29:15,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:29:15,517.517 INFO    ] Checking for system updates...
[2026-10-25 06:29:15,559.559 INFO    ] 200
[2026-10-25 06:29:15,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:15,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:15,616.616 INFO    ] No update needed
[2026-10-25 06:29:15,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 06:29:15,657.657 INFO    ] 200
[2026-10-25 06:29:15,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:15,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:29:15,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:15,763.763 INFO    ] No camera update needed
[2026-10-25 06:29:15,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:29:15,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:29:15,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:29:15,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:29:17,818.818 INFO    ] ================================================
[2026-10-25 06:29:17,834.834 INFO    ] Launching Daemon at Sun Oct 25 06:29:17 IST 2026
[2026-10-25 06:29:17,845.845 INFO    ] ================================================
[2026-10-25 06:29:18,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:29:18
[2026-10-25 06:29:19,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:29:19,307.307 INFO    ] Initializing speech engine...
[2026-10-25 06:29:19,317.317 INFO    ] 2026-10-25 06:29:19
[2026-10-25 06:29:19,587.587 INFO    ] 2026-10-25 06:29:19
[2026-10-25 06:29:19,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:29:19,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:29:19,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:29:20,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:29:20,117.117 INFO    ] time= 25/10/2026 06:29:20
[2026-10-25 06:29:20,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:29:20,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:29:20,271.271 INFO    ] No existing commands found in stream
[2026-10-25 06:29:25,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:29:25,291.291 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 06:29:30,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:29:30,011.011 INFO    ] Checking for system updates...
[2026-10-25 06:29:30,047.047 INFO    ] 200
[2026-10-25 06:29:30,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:30,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:30,107.107 INFO    ] No update needed
[2026-10-25 06:29:30,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 06:29:30,143.143 INFO    ] 200
[2026-10-25 06:29:30,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:30,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:29:30,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:30,252.252 INFO    ] No camera update needed
[2026-10-25 06:29:30,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:29:30,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:29:30,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:29:30,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:29:32,309.309 INFO    ] ================================================
[2026-10-25 06:29:32,326.326 INFO    ] Launching Daemon at Sun Oct 25 06:29:32 IST 2026
[2026-10-25 06:29:32,338.338 INFO    ] ================================================
[2026-10-25 06:29:32,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:29:32
[2026-10-25 06:29:33,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:29:33,812.812 INFO    ] Initializing speech engine...
[2026-10-25 06:29:33,828.828 INFO    ] 2026-10-25 06:29:33
[2026-10-25 06:29:34,082.082 INFO    ] 2026-10-25 06:29:34
[2026-10-25 06:29:34,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:29:34,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:29:34,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:29:34,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:29:34,579.579 INFO    ] time= 25/10/2026 06:29:34
[2026-10-25 06:29:34,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:29:34,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:29:34,773.773 INFO    ] No existing commands found in stream
[2026-10-25 06:29:39,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:29:39,804.804 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 06:29:40,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:29:40,306.306 INFO    ] Checking for system updates...
[2026-10-25 06:29:40,343.343 INFO    ] 200
[2026-10-25 06:29:40,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:40,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:29:40,408.408 INFO    ] No update needed
[2026-10-25 06:29:40,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 06:29:40,445.445 INFO    ] 200
[2026-10-25 06:29:40,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:40,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:29:40,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:29:40,546.546 INFO    ] No camera update needed
[2026-10-25 06:29:40,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:29:40,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:29:40,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:29:40,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:29:42,613.613 INFO    ] ================================================
[2026-10-25 06:29:42,629.629 INFO    ] Launching Daemon at Sun Oct 25 06:29:42 IST 2026
[2026-10-25 06:29:42,640.640 INFO    ] ================================================
[2026-10-25 06:29:43,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:29:43
[2026-10-25 06:29:43,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:29:44,092.092 INFO    ] Initializing speech engine...
[2026-10-25 06:29:44,101.101 INFO    ] 2026-10-25 06:29:44
[2026-10-25 06:29:44,348.348 INFO    ] 2026-10-25 06:29:44
[2026-10-25 06:29:44,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:29:44,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:29:44,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:29:44,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:29:44,846.846 INFO    ] time= 25/10/2026 06:29:44
[2026-10-25 06:29:44,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:29:44,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:29:45,030.030 INFO    ] No existing commands found in stream
[2026-10-25 06:29:50,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:29:50,058.058 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 06:29:52,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:29:52,517.517 INFO    ] Checking for system updates...
[2026-10-25 06:29:52,555.555 INFO    ] 200
[2026-10-25 06:29:52,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:52,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:52,622.622 INFO    ] No update needed
[2026-10-25 06:29:52,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 06:29:52,660.660 INFO    ] 200
[2026-10-25 06:29:52,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:29:52,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:29:52,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:29:52,764.764 INFO    ] No camera update needed
[2026-10-25 06:29:52,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:29:52,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:29:52,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:29:52,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:29:54,827.827 INFO    ] ================================================
[2026-10-25 06:29:54,842.842 INFO    ] Launching Daemon at Sun Oct 25 06:29:54 IST 2026
[2026-10-25 06:29:54,854.854 INFO    ] ================================================
[2026-10-25 06:29:55,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:29:55
[2026-10-25 06:29:56,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:29:56,260.260 INFO    ] Initializing speech engine...
[2026-10-25 06:29:56,278.278 INFO    ] 2026-10-25 06:29:56
[2026-10-25 06:29:56,527.527 INFO    ] 2026-10-25 06:29:56
[2026-10-25 06:29:56,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:29:56,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:29:56,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:29:56,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:29:56,895.895 INFO    ] time= 25/10/2026 06:29:56
[2026-10-25 06:29:56,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:29:56,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:29:57,069.069 INFO    ] No existing commands found in stream
[2026-10-25 06:30:02,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:30:02,097.097 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 06:30:03,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:30:03,567.567 INFO    ] Checking for system updates...
[2026-10-25 06:30:03,630.630 INFO    ] 200
[2026-10-25 06:30:03,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:03,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:30:03,705.705 INFO    ] No update needed
[2026-10-25 06:30:03,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 06:30:03,750.750 INFO    ] 200
[2026-10-25 06:30:03,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:03,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:30:03,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:30:03,874.874 INFO    ] No camera update needed
[2026-10-25 06:30:03,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:30:03,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:30:03,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:30:03,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:30:05,934.934 INFO    ] ================================================
[2026-10-25 06:30:05,950.950 INFO    ] Launching Daemon at Sun Oct 25 06:30:05 IST 2026
[2026-10-25 06:30:05,962.962 INFO    ] ================================================
[2026-10-25 06:30:06,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:30:06
[2026-10-25 06:30:07,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:30:07,628.628 INFO    ] Initializing speech engine...
[2026-10-25 06:30:07,641.641 INFO    ] 2026-10-25 06:30:07
[2026-10-25 06:30:07,935.935 INFO    ] 2026-10-25 06:30:07
[2026-10-25 06:30:07,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:30:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:30:08,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:30:08,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:30:08,423.423 INFO    ] time= 25/10/2026 06:30:08
[2026-10-25 06:30:08,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:30:08,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:30:08,613.613 INFO    ] No existing commands found in stream
[2026-10-25 06:30:13,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:30:13,647.647 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 06:30:17,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:30:17,305.305 INFO    ] Checking for system updates...
[2026-10-25 06:30:17,343.343 INFO    ] 200
[2026-10-25 06:30:17,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:17,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:30:17,403.403 INFO    ] No update needed
[2026-10-25 06:30:17,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 06:30:17,442.442 INFO    ] 200
[2026-10-25 06:30:17,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:17,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:30:17,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:30:17,563.563 INFO    ] No camera update needed
[2026-10-25 06:30:17,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:30:17,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:30:17,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:30:17,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:30:19,625.625 INFO    ] ================================================
[2026-10-25 06:30:19,642.642 INFO    ] Launching Daemon at Sun Oct 25 06:30:19 IST 2026
[2026-10-25 06:30:19,653.653 INFO    ] ================================================
[2026-10-25 06:30:20,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:30:20
[2026-10-25 06:30:20,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:30:21,257.257 INFO    ] Initializing speech engine...
[2026-10-25 06:30:21,269.269 INFO    ] 2026-10-25 06:30:21
[2026-10-25 06:30:21,591.591 INFO    ] 2026-10-25 06:30:21
[2026-10-25 06:30:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:30:21,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:30:21,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:30:22,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:30:22,106.106 INFO    ] time= 25/10/2026 06:30:22
[2026-10-25 06:30:22,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:30:22,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:30:22,264.264 INFO    ] No existing commands found in stream
[2026-10-25 06:30:27,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:30:27,282.282 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 06:30:30,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:30:30,038.038 INFO    ] Checking for system updates...
[2026-10-25 06:30:30,073.073 INFO    ] 200
[2026-10-25 06:30:30,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:30,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:30,137.137 INFO    ] No update needed
[2026-10-25 06:30:30,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 06:30:30,178.178 INFO    ] 200
[2026-10-25 06:30:30,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:30,227.227 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:30:30,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:30,391.391 INFO    ] No camera update needed
[2026-10-25 06:30:30,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:30:30,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:30:30,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:30:30,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:30:32,450.450 INFO    ] ================================================
[2026-10-25 06:30:32,467.467 INFO    ] Launching Daemon at Sun Oct 25 06:30:32 IST 2026
[2026-10-25 06:30:32,479.479 INFO    ] ================================================
[2026-10-25 06:30:33,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:30:33
[2026-10-25 06:30:33,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:30:33,929.929 INFO    ] Initializing speech engine...
[2026-10-25 06:30:33,944.944 INFO    ] 2026-10-25 06:30:33
[2026-10-25 06:30:34,209.209 INFO    ] 2026-10-25 06:30:34
[2026-10-25 06:30:34,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:30:34,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:30:34,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:30:34,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:30:34,672.672 INFO    ] time= 25/10/2026 06:30:34
[2026-10-25 06:30:34,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:30:34,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:30:34,847.847 INFO    ] No existing commands found in stream
[2026-10-25 06:30:39,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:30:39,862.862 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 06:30:42,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:30:42,442.442 INFO    ] Checking for system updates...
[2026-10-25 06:30:42,485.485 INFO    ] 200
[2026-10-25 06:30:42,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:42,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:42,545.545 INFO    ] No update needed
[2026-10-25 06:30:42,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 06:30:42,586.586 INFO    ] 200
[2026-10-25 06:30:42,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:42,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:30:42,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:42,697.697 INFO    ] No camera update needed
[2026-10-25 06:30:42,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:30:42,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:30:42,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:30:42,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:30:44,756.756 INFO    ] ================================================
[2026-10-25 06:30:44,772.772 INFO    ] Launching Daemon at Sun Oct 25 06:30:44 IST 2026
[2026-10-25 06:30:44,782.782 INFO    ] ================================================
[2026-10-25 06:30:45,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:30:45
[2026-10-25 06:30:46,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:30:46,412.412 INFO    ] Initializing speech engine...
[2026-10-25 06:30:46,427.427 INFO    ] 2026-10-25 06:30:46
[2026-10-25 06:30:46,704.704 INFO    ] 2026-10-25 06:30:46
[2026-10-25 06:30:46,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:30:47,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:30:47,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:30:47,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:30:47,244.244 INFO    ] time= 25/10/2026 06:30:47
[2026-10-25 06:30:47,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:30:47,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:30:47,395.395 INFO    ] No existing commands found in stream
[2026-10-25 06:30:52,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:30:52,413.413 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 06:30:55,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:30:55,388.388 INFO    ] Checking for system updates...
[2026-10-25 06:30:55,425.425 INFO    ] 200
[2026-10-25 06:30:55,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:55,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:55,487.487 INFO    ] No update needed
[2026-10-25 06:30:55,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 06:30:55,529.529 INFO    ] 200
[2026-10-25 06:30:55,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:30:55,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:30:55,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:30:55,638.638 INFO    ] No camera update needed
[2026-10-25 06:30:55,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:30:55,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:30:55,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:30:55,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:30:57,697.697 INFO    ] ================================================
[2026-10-25 06:30:57,712.712 INFO    ] Launching Daemon at Sun Oct 25 06:30:57 IST 2026
[2026-10-25 06:30:57,722.722 INFO    ] ================================================
[2026-10-25 06:30:58,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:30:58
[2026-10-25 06:30:58,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:30:59,126.126 INFO    ] Initializing speech engine...
[2026-10-25 06:30:59,149.149 INFO    ] 2026-10-25 06:30:59
[2026-10-25 06:30:59,404.404 INFO    ] 2026-10-25 06:30:59
[2026-10-25 06:30:59,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:30:59,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:30:59,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:30:59,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:30:59,989.989 INFO    ] time= 25/10/2026 06:30:59
[2026-10-25 06:31:00,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:31:00,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:31:00,131.131 INFO    ] No existing commands found in stream
[2026-10-25 06:31:05,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:31:05,145.145 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 06:31:05,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:31:05,731.731 INFO    ] Checking for system updates...
[2026-10-25 06:31:05,772.772 INFO    ] 200
[2026-10-25 06:31:05,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:05,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:05,839.839 INFO    ] No update needed
[2026-10-25 06:31:05,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 06:31:05,879.879 INFO    ] 200
[2026-10-25 06:31:05,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:05,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:31:05,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:05,980.980 INFO    ] No camera update needed
[2026-10-25 06:31:05,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:31:05,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:31:05,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:31:05,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:31:08,035.035 INFO    ] ================================================
[2026-10-25 06:31:08,050.050 INFO    ] Launching Daemon at Sun Oct 25 06:31:08 IST 2026
[2026-10-25 06:31:08,062.062 INFO    ] ================================================
[2026-10-25 06:31:08,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:31:08
[2026-10-25 06:31:09,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:31:09,726.726 INFO    ] Initializing speech engine...
[2026-10-25 06:31:09,737.737 INFO    ] 2026-10-25 06:31:09
[2026-10-25 06:31:10,026.026 INFO    ] 2026-10-25 06:31:10
[2026-10-25 06:31:10,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:31:10,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:31:10,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:31:10,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:31:10,475.475 INFO    ] time= 25/10/2026 06:31:10
[2026-10-25 06:31:10,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:31:10,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:31:10,633.633 INFO    ] No existing commands found in stream
[2026-10-25 06:31:15,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:31:15,650.650 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 06:31:20,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:31:20,012.012 INFO    ] Checking for system updates...
[2026-10-25 06:31:20,052.052 INFO    ] 200
[2026-10-25 06:31:20,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:20,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:20,111.111 INFO    ] No update needed
[2026-10-25 06:31:20,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 06:31:20,147.147 INFO    ] 200
[2026-10-25 06:31:20,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:20,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:31:20,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:20,250.250 INFO    ] No camera update needed
[2026-10-25 06:31:20,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:31:20,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:31:20,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:31:20,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:31:22,304.304 INFO    ] ================================================
[2026-10-25 06:31:22,319.319 INFO    ] Launching Daemon at Sun Oct 25 06:31:22 IST 2026
[2026-10-25 06:31:22,329.329 INFO    ] ================================================
[2026-10-25 06:31:22,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:31:22
[2026-10-25 06:31:23,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:31:23,780.780 INFO    ] Initializing speech engine...
[2026-10-25 06:31:23,786.786 INFO    ] 2026-10-25 06:31:23
[2026-10-25 06:31:24,047.047 INFO    ] 2026-10-25 06:31:24
[2026-10-25 06:31:24,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:31:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:31:24,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:31:24,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:31:24,504.504 INFO    ] time= 25/10/2026 06:31:24
[2026-10-25 06:31:24,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:31:24,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:31:24,655.655 INFO    ] No existing commands found in stream
[2026-10-25 06:31:29,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:31:29,679.679 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 06:31:31,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:31:31,294.294 INFO    ] Checking for system updates...
[2026-10-25 06:31:31,332.332 INFO    ] 200
[2026-10-25 06:31:31,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:31,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:31:31,394.394 INFO    ] No update needed
[2026-10-25 06:31:31,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 06:31:31,430.430 INFO    ] 200
[2026-10-25 06:31:31,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:31,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:31:31,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:31:31,545.545 INFO    ] No camera update needed
[2026-10-25 06:31:31,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:31:31,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:31:31,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:31:31,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:31:33,605.605 INFO    ] ================================================
[2026-10-25 06:31:33,620.620 INFO    ] Launching Daemon at Sun Oct 25 06:31:33 IST 2026
[2026-10-25 06:31:33,630.630 INFO    ] ================================================
[2026-10-25 06:31:34,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:31:34
[2026-10-25 06:31:34,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:31:35,068.068 INFO    ] Initializing speech engine...
[2026-10-25 06:31:35,089.089 INFO    ] 2026-10-25 06:31:35
[2026-10-25 06:31:35,350.350 INFO    ] 2026-10-25 06:31:35
[2026-10-25 06:31:35,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:31:35,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:31:35,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:31:35,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:31:35,734.734 INFO    ] time= 25/10/2026 06:31:35
[2026-10-25 06:31:35,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:31:35,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:31:35,908.908 INFO    ] No existing commands found in stream
[2026-10-25 06:31:40,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:31:40,936.936 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 06:31:42,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:31:42,444.444 INFO    ] Checking for system updates...
[2026-10-25 06:31:42,481.481 INFO    ] 200
[2026-10-25 06:31:42,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:42,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:42,547.547 INFO    ] No update needed
[2026-10-25 06:31:42,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 06:31:42,588.588 INFO    ] 200
[2026-10-25 06:31:42,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:42,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:31:42,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:42,694.694 INFO    ] No camera update needed
[2026-10-25 06:31:42,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:31:42,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:31:42,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:31:42,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:31:44,751.751 INFO    ] ================================================
[2026-10-25 06:31:44,766.766 INFO    ] Launching Daemon at Sun Oct 25 06:31:44 IST 2026
[2026-10-25 06:31:44,777.777 INFO    ] ================================================
[2026-10-25 06:31:45,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:31:45
[2026-10-25 06:31:45,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:31:46,219.219 INFO    ] Initializing speech engine...
[2026-10-25 06:31:46,228.228 INFO    ] 2026-10-25 06:31:46
[2026-10-25 06:31:46,526.526 INFO    ] 2026-10-25 06:31:46
[2026-10-25 06:31:46,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:31:46,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:31:46,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:31:46,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:31:46,955.955 INFO    ] time= 25/10/2026 06:31:46
[2026-10-25 06:31:46,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:31:46,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:31:47,124.124 INFO    ] No existing commands found in stream
[2026-10-25 06:31:52,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:31:52,152.152 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 06:31:55,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:31:55,920.920 INFO    ] Checking for system updates...
[2026-10-25 06:31:55,956.956 INFO    ] 200
[2026-10-25 06:31:55,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:56,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:56,023.023 INFO    ] No update needed
[2026-10-25 06:31:56,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 06:31:56,060.060 INFO    ] 200
[2026-10-25 06:31:56,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:31:56,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:31:56,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:31:56,165.165 INFO    ] No camera update needed
[2026-10-25 06:31:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:31:56,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:31:56,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:31:56,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:31:58,221.221 INFO    ] ================================================
[2026-10-25 06:31:58,236.236 INFO    ] Launching Daemon at Sun Oct 25 06:31:58 IST 2026
[2026-10-25 06:31:58,247.247 INFO    ] ================================================
[2026-10-25 06:31:58,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:31:58
[2026-10-25 06:31:59,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:31:59,894.894 INFO    ] Initializing speech engine...
[2026-10-25 06:31:59,901.901 INFO    ] 2026-10-25 06:31:59
[2026-10-25 06:32:00,198.198 INFO    ] 2026-10-25 06:32:00
[2026-10-25 06:32:00,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:32:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:32:00,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:32:00,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:32:00,728.728 INFO    ] time= 25/10/2026 06:32:00
[2026-10-25 06:32:00,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:32:00,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:32:00,883.883 INFO    ] No existing commands found in stream
[2026-10-25 06:32:05,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:32:05,899.899 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 06:32:10,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:32:10,340.340 INFO    ] Checking for system updates...
[2026-10-25 06:32:10,378.378 INFO    ] 200
[2026-10-25 06:32:10,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:10,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:10,438.438 INFO    ] No update needed
[2026-10-25 06:32:10,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 06:32:10,475.475 INFO    ] 200
[2026-10-25 06:32:10,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:10,527.527 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:32:10,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:10,577.577 INFO    ] No camera update needed
[2026-10-25 06:32:10,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:32:10,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:32:10,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:32:10,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:32:12,634.634 INFO    ] ================================================
[2026-10-25 06:32:12,649.649 INFO    ] Launching Daemon at Sun Oct 25 06:32:12 IST 2026
[2026-10-25 06:32:12,660.660 INFO    ] ================================================
[2026-10-25 06:32:13,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:32:13
[2026-10-25 06:32:13,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:32:14,108.108 INFO    ] Initializing speech engine...
[2026-10-25 06:32:14,114.114 INFO    ] 2026-10-25 06:32:14
[2026-10-25 06:32:14,363.363 INFO    ] 2026-10-25 06:32:14
[2026-10-25 06:32:14,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:32:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:32:14,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:32:14,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:32:14,812.812 INFO    ] time= 25/10/2026 06:32:14
[2026-10-25 06:32:14,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:32:14,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:32:14,998.998 INFO    ] No existing commands found in stream
[2026-10-25 06:32:20,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:32:20,013.013 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 06:32:24,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:32:24,088.088 INFO    ] Checking for system updates...
[2026-10-25 06:32:24,135.135 INFO    ] 200
[2026-10-25 06:32:24,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:24,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:32:24,212.212 INFO    ] No update needed
[2026-10-25 06:32:24,214.214 INFO    ] Checking for camera pi updates...
[2026-10-25 06:32:24,253.253 INFO    ] 200
[2026-10-25 06:32:24,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:24,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:32:24,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:32:24,355.355 INFO    ] No camera update needed
[2026-10-25 06:32:24,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:32:24,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:32:24,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:32:24,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:32:26,415.415 INFO    ] ================================================
[2026-10-25 06:32:26,430.430 INFO    ] Launching Daemon at Sun Oct 25 06:32:26 IST 2026
[2026-10-25 06:32:26,441.441 INFO    ] ================================================
[2026-10-25 06:32:27,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:32:27
[2026-10-25 06:32:27,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:32:27,893.893 INFO    ] Initializing speech engine...
[2026-10-25 06:32:27,900.900 INFO    ] 2026-10-25 06:32:27
[2026-10-25 06:32:28,201.201 INFO    ] 2026-10-25 06:32:28
[2026-10-25 06:32:28,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:32:29,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:32:29,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:32:30,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:32:30,243.243 INFO    ] time= 25/10/2026 06:32:30
[2026-10-25 06:32:30,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:32:30,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:32:30,373.373 INFO    ] No existing commands found in stream
[2026-10-25 06:32:35,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:32:35,407.407 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 06:32:38,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:32:38,841.841 INFO    ] Checking for system updates...
[2026-10-25 06:32:38,877.877 INFO    ] 200
[2026-10-25 06:32:38,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:38,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:38,935.935 INFO    ] No update needed
[2026-10-25 06:32:38,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 06:32:38,971.971 INFO    ] 200
[2026-10-25 06:32:38,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:39,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:32:39,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:39,071.071 INFO    ] No camera update needed
[2026-10-25 06:32:39,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:32:39,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:32:39,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:32:39,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:32:41,127.127 INFO    ] ================================================
[2026-10-25 06:32:41,142.142 INFO    ] Launching Daemon at Sun Oct 25 06:32:41 IST 2026
[2026-10-25 06:32:41,153.153 INFO    ] ================================================
[2026-10-25 06:32:41,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:32:41
[2026-10-25 06:32:42,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:32:42,601.601 INFO    ] Initializing speech engine...
[2026-10-25 06:32:42,610.610 INFO    ] 2026-10-25 06:32:42
[2026-10-25 06:32:42,885.885 INFO    ] 2026-10-25 06:32:42
[2026-10-25 06:32:42,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:32:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:32:43,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:32:43,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:32:43,380.380 INFO    ] time= 25/10/2026 06:32:43
[2026-10-25 06:32:43,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:32:43,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:32:43,560.560 INFO    ] No existing commands found in stream
[2026-10-25 06:32:48,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:32:48,590.590 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 06:32:49,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:32:49,688.688 INFO    ] Checking for system updates...
[2026-10-25 06:32:49,724.724 INFO    ] 200
[2026-10-25 06:32:49,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:49,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:49,782.782 INFO    ] No update needed
[2026-10-25 06:32:49,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 06:32:49,823.823 INFO    ] 200
[2026-10-25 06:32:49,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:32:49,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:32:49,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:32:49,933.933 INFO    ] No camera update needed
[2026-10-25 06:32:49,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:32:49,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:32:49,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:32:49,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:32:51,989.989 INFO    ] ================================================
[2026-10-25 06:32:52,004.004 INFO    ] Launching Daemon at Sun Oct 25 06:32:51 IST 2026
[2026-10-25 06:32:52,015.015 INFO    ] ================================================
[2026-10-25 06:32:52,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:32:52
[2026-10-25 06:32:53,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:32:53,593.593 INFO    ] Initializing speech engine...
[2026-10-25 06:32:53,604.604 INFO    ] 2026-10-25 06:32:53
[2026-10-25 06:32:53,857.857 INFO    ] 2026-10-25 06:32:53
[2026-10-25 06:32:53,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:32:54,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:32:54,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:32:54,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:32:54,320.320 INFO    ] time= 25/10/2026 06:32:54
[2026-10-25 06:32:54,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:32:54,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:32:54,467.467 INFO    ] No existing commands found in stream
[2026-10-25 06:32:59,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:32:59,482.482 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 06:33:01,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:33:01,389.389 INFO    ] Checking for system updates...
[2026-10-25 06:33:01,438.438 INFO    ] 200
[2026-10-25 06:33:01,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:01,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:01,552.552 INFO    ] No update needed
[2026-10-25 06:33:01,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 06:33:01,612.612 INFO    ] 200
[2026-10-25 06:33:01,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:01,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:33:01,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:01,723.723 INFO    ] No camera update needed
[2026-10-25 06:33:01,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:33:01,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:33:01,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:33:01,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:33:03,785.785 INFO    ] ================================================
[2026-10-25 06:33:03,800.800 INFO    ] Launching Daemon at Sun Oct 25 06:33:03 IST 2026
[2026-10-25 06:33:03,811.811 INFO    ] ================================================
[2026-10-25 06:33:04,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:33:04
[2026-10-25 06:33:04,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:33:05,207.207 INFO    ] Initializing speech engine...
[2026-10-25 06:33:05,215.215 INFO    ] 2026-10-25 06:33:05
[2026-10-25 06:33:05,490.490 INFO    ] 2026-10-25 06:33:05
[2026-10-25 06:33:05,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:33:05,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:33:05,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:33:05,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:33:05,972.972 INFO    ] time= 25/10/2026 06:33:05
[2026-10-25 06:33:06,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:33:06,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:33:06,128.128 INFO    ] No existing commands found in stream
[2026-10-25 06:33:11,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:33:11,151.151 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 06:33:14,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:33:14,541.541 INFO    ] Checking for system updates...
[2026-10-25 06:33:14,576.576 INFO    ] 200
[2026-10-25 06:33:14,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:14,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:33:14,634.634 INFO    ] No update needed
[2026-10-25 06:33:14,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 06:33:14,671.671 INFO    ] 200
[2026-10-25 06:33:14,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:14,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:33:14,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:33:14,777.777 INFO    ] No camera update needed
[2026-10-25 06:33:14,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:33:14,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:33:14,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:33:14,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:33:16,835.835 INFO    ] ================================================
[2026-10-25 06:33:16,850.850 INFO    ] Launching Daemon at Sun Oct 25 06:33:16 IST 2026
[2026-10-25 06:33:16,861.861 INFO    ] ================================================
[2026-10-25 06:33:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:33:17
[2026-10-25 06:33:18,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:33:18,277.277 INFO    ] Initializing speech engine...
[2026-10-25 06:33:18,285.285 INFO    ] 2026-10-25 06:33:18
[2026-10-25 06:33:18,578.578 INFO    ] 2026-10-25 06:33:18
[2026-10-25 06:33:18,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:33:18,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:33:18,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:33:18,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:33:18,996.996 INFO    ] time= 25/10/2026 06:33:18
[2026-10-25 06:33:19,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:33:19,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:33:19,128.128 INFO    ] No existing commands found in stream
[2026-10-25 06:33:24,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:33:24,155.155 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 06:33:24,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:33:24,894.894 INFO    ] Checking for system updates...
[2026-10-25 06:33:24,934.934 INFO    ] 200
[2026-10-25 06:33:24,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:24,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:33:24,998.998 INFO    ] No update needed
[2026-10-25 06:33:25,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 06:33:25,035.035 INFO    ] 200
[2026-10-25 06:33:25,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:25,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:33:25,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:33:25,140.140 INFO    ] No camera update needed
[2026-10-25 06:33:25,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:33:25,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:33:25,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:33:25,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:33:27,196.196 INFO    ] ================================================
[2026-10-25 06:33:27,211.211 INFO    ] Launching Daemon at Sun Oct 25 06:33:27 IST 2026
[2026-10-25 06:33:27,221.221 INFO    ] ================================================
[2026-10-25 06:33:27,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:33:27
[2026-10-25 06:33:28,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:33:28,619.619 INFO    ] Initializing speech engine...
[2026-10-25 06:33:28,632.632 INFO    ] 2026-10-25 06:33:28
[2026-10-25 06:33:28,899.899 INFO    ] 2026-10-25 06:33:28
[2026-10-25 06:33:28,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:33:30,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:33:30,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:33:30,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:33:30,140.140 INFO    ] time= 25/10/2026 06:33:30
[2026-10-25 06:33:30,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:33:30,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:33:30,258.258 INFO    ] No existing commands found in stream
[2026-10-25 06:33:35,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:33:35,291.291 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 06:33:36,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:33:36,225.225 INFO    ] Checking for system updates...
[2026-10-25 06:33:36,261.261 INFO    ] 200
[2026-10-25 06:33:36,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:36,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:36,319.319 INFO    ] No update needed
[2026-10-25 06:33:36,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 06:33:36,355.355 INFO    ] 200
[2026-10-25 06:33:36,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:36,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:33:36,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:36,459.459 INFO    ] No camera update needed
[2026-10-25 06:33:36,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:33:36,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:33:36,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:33:36,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:33:38,518.518 INFO    ] ================================================
[2026-10-25 06:33:38,533.533 INFO    ] Launching Daemon at Sun Oct 25 06:33:38 IST 2026
[2026-10-25 06:33:38,543.543 INFO    ] ================================================
[2026-10-25 06:33:39,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:33:39
[2026-10-25 06:33:39,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:33:40,180.180 INFO    ] Initializing speech engine...
[2026-10-25 06:33:40,191.191 INFO    ] 2026-10-25 06:33:40
[2026-10-25 06:33:40,470.470 INFO    ] 2026-10-25 06:33:40
[2026-10-25 06:33:40,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:33:40,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:33:40,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:33:40,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:33:41,002.002 INFO    ] time= 25/10/2026 06:33:40
[2026-10-25 06:33:41,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:33:41,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:33:41,142.142 INFO    ] No existing commands found in stream
[2026-10-25 06:33:46,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:33:46,171.171 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 06:33:49,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:33:49,604.604 INFO    ] Checking for system updates...
[2026-10-25 06:33:49,642.642 INFO    ] 200
[2026-10-25 06:33:49,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:49,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:49,700.700 INFO    ] No update needed
[2026-10-25 06:33:49,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 06:33:49,741.741 INFO    ] 200
[2026-10-25 06:33:49,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:33:49,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:33:49,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:33:49,848.848 INFO    ] No camera update needed
[2026-10-25 06:33:49,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:33:49,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:33:49,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:33:49,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:33:51,903.903 INFO    ] ================================================
[2026-10-25 06:33:51,918.918 INFO    ] Launching Daemon at Sun Oct 25 06:33:51 IST 2026
[2026-10-25 06:33:51,929.929 INFO    ] ================================================
[2026-10-25 06:33:52,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:33:52
[2026-10-25 06:33:53,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:33:53,463.463 INFO    ] Initializing speech engine...
[2026-10-25 06:33:53,470.470 INFO    ] 2026-10-25 06:33:53
[2026-10-25 06:33:53,762.762 INFO    ] 2026-10-25 06:33:53
[2026-10-25 06:33:53,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:33:54,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:33:54,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:33:54,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:33:54,243.243 INFO    ] time= 25/10/2026 06:33:54
[2026-10-25 06:33:54,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:33:54,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:33:54,455.455 INFO    ] No existing commands found in stream
[2026-10-25 06:33:59,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:33:59,486.486 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 06:34:01,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:34:01,285.285 INFO    ] Checking for system updates...
[2026-10-25 06:34:01,360.360 INFO    ] 200
[2026-10-25 06:34:01,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:01,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:01,472.472 INFO    ] No update needed
[2026-10-25 06:34:01,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 06:34:01,550.550 INFO    ] 200
[2026-10-25 06:34:01,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:01,647.647 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:34:01,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:01,699.699 INFO    ] No camera update needed
[2026-10-25 06:34:01,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:34:01,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:34:01,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:34:01,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:34:03,759.759 INFO    ] ================================================
[2026-10-25 06:34:03,774.774 INFO    ] Launching Daemon at Sun Oct 25 06:34:03 IST 2026
[2026-10-25 06:34:03,785.785 INFO    ] ================================================
[2026-10-25 06:34:04,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:34:04
[2026-10-25 06:34:05,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:34:05,442.442 INFO    ] Initializing speech engine...
[2026-10-25 06:34:05,452.452 INFO    ] 2026-10-25 06:34:05
[2026-10-25 06:34:05,745.745 INFO    ] 2026-10-25 06:34:05
[2026-10-25 06:34:05,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:34:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:34:06,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:34:06,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:34:06,289.289 INFO    ] time= 25/10/2026 06:34:06
[2026-10-25 06:34:06,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:34:06,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:34:06,433.433 INFO    ] No existing commands found in stream
[2026-10-25 06:34:11,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:34:11,449.449 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 06:34:12,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:34:12,669.669 INFO    ] Checking for system updates...
[2026-10-25 06:34:12,711.711 INFO    ] 200
[2026-10-25 06:34:12,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:12,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:34:12,770.770 INFO    ] No update needed
[2026-10-25 06:34:12,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 06:34:12,810.810 INFO    ] 200
[2026-10-25 06:34:12,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:12,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:34:12,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:34:12,934.934 INFO    ] No camera update needed
[2026-10-25 06:34:12,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:34:12,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:34:12,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:34:12,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:34:14,989.989 INFO    ] ================================================
[2026-10-25 06:34:15,004.004 INFO    ] Launching Daemon at Sun Oct 25 06:34:14 IST 2026
[2026-10-25 06:34:15,015.015 INFO    ] ================================================
[2026-10-25 06:34:15,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:34:15
[2026-10-25 06:34:16,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:34:16,586.586 INFO    ] Initializing speech engine...
[2026-10-25 06:34:16,596.596 INFO    ] 2026-10-25 06:34:16
[2026-10-25 06:34:16,864.864 INFO    ] 2026-10-25 06:34:16
[2026-10-25 06:34:16,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:34:17,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:34:17,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:34:17,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:34:17,375.375 INFO    ] time= 25/10/2026 06:34:17
[2026-10-25 06:34:17,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:34:17,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:34:17,544.544 INFO    ] No existing commands found in stream
[2026-10-25 06:34:22,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:34:22,575.575 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 06:34:25,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:34:25,144.144 INFO    ] Checking for system updates...
[2026-10-25 06:34:25,181.181 INFO    ] 200
[2026-10-25 06:34:25,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:25,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:34:25,246.246 INFO    ] No update needed
[2026-10-25 06:34:25,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 06:34:25,288.288 INFO    ] 200
[2026-10-25 06:34:25,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:25,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:34:25,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:34:25,405.405 INFO    ] No camera update needed
[2026-10-25 06:34:25,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:34:25,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:34:25,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:34:25,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:34:27,459.459 INFO    ] ================================================
[2026-10-25 06:34:27,474.474 INFO    ] Launching Daemon at Sun Oct 25 06:34:27 IST 2026
[2026-10-25 06:34:27,486.486 INFO    ] ================================================
[2026-10-25 06:34:28,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:34:28
[2026-10-25 06:34:28,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:34:28,926.926 INFO    ] Initializing speech engine...
[2026-10-25 06:34:28,934.934 INFO    ] 2026-10-25 06:34:28
[2026-10-25 06:34:29,203.203 INFO    ] 2026-10-25 06:34:29
[2026-10-25 06:34:29,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:34:29,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:34:29,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:34:30,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:34:30,136.136 INFO    ] time= 25/10/2026 06:34:30
[2026-10-25 06:34:30,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:34:30,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:34:30,321.321 INFO    ] No existing commands found in stream
[2026-10-25 06:34:35,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:34:35,351.351 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 06:34:37,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:34:37,496.496 INFO    ] Checking for system updates...
[2026-10-25 06:34:37,534.534 INFO    ] 200
[2026-10-25 06:34:37,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:37,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:37,597.597 INFO    ] No update needed
[2026-10-25 06:34:37,600.600 INFO    ] Checking for camera pi updates...
[2026-10-25 06:34:37,637.637 INFO    ] 200
[2026-10-25 06:34:37,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:37,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:34:38,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:38,846.846 INFO    ] No camera update needed
[2026-10-25 06:34:38,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:34:38,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:34:38,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:34:38,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:34:40,902.902 INFO    ] ================================================
[2026-10-25 06:34:40,918.918 INFO    ] Launching Daemon at Sun Oct 25 06:34:40 IST 2026
[2026-10-25 06:34:40,929.929 INFO    ] ================================================
[2026-10-25 06:34:41,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:34:41
[2026-10-25 06:34:42,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:34:42,480.480 INFO    ] Initializing speech engine...
[2026-10-25 06:34:42,490.490 INFO    ] 2026-10-25 06:34:42
[2026-10-25 06:34:42,756.756 INFO    ] 2026-10-25 06:34:42
[2026-10-25 06:34:42,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:34:43,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:34:43,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:34:43,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:34:43,224.224 INFO    ] time= 25/10/2026 06:34:43
[2026-10-25 06:34:43,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:34:43,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:34:43,443.443 INFO    ] No existing commands found in stream
[2026-10-25 06:34:48,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:34:48,471.471 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 06:34:49,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:34:49,019.019 INFO    ] Checking for system updates...
[2026-10-25 06:34:49,056.056 INFO    ] 200
[2026-10-25 06:34:49,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:49,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:49,121.121 INFO    ] No update needed
[2026-10-25 06:34:49,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 06:34:49,161.161 INFO    ] 200
[2026-10-25 06:34:49,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:34:49,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:34:49,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:34:49,263.263 INFO    ] No camera update needed
[2026-10-25 06:34:49,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:34:49,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:34:49,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:34:49,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:34:51,323.323 INFO    ] ================================================
[2026-10-25 06:34:51,338.338 INFO    ] Launching Daemon at Sun Oct 25 06:34:51 IST 2026
[2026-10-25 06:34:51,349.349 INFO    ] ================================================
[2026-10-25 06:34:51,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:34:51
[2026-10-25 06:34:52,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:34:52,773.773 INFO    ] Initializing speech engine...
[2026-10-25 06:34:52,783.783 INFO    ] 2026-10-25 06:34:52
[2026-10-25 06:34:53,048.048 INFO    ] 2026-10-25 06:34:53
[2026-10-25 06:34:53,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:34:53,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:34:53,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:34:53,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:34:53,418.418 INFO    ] time= 25/10/2026 06:34:53
[2026-10-25 06:34:53,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:34:53,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:34:53,540.540 INFO    ] No existing commands found in stream
[2026-10-25 06:34:58,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:34:58,555.555 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 06:35:00,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:35:00,152.152 INFO    ] Checking for system updates...
[2026-10-25 06:35:00,192.192 INFO    ] 200
[2026-10-25 06:35:00,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:00,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:00,252.252 INFO    ] No update needed
[2026-10-25 06:35:00,255.255 INFO    ] Checking for camera pi updates...
[2026-10-25 06:35:00,292.292 INFO    ] 200
[2026-10-25 06:35:00,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:00,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:35:00,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:00,401.401 INFO    ] No camera update needed
[2026-10-25 06:35:00,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:35:00,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:35:00,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:35:00,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:35:02,473.473 INFO    ] ================================================
[2026-10-25 06:35:02,496.496 INFO    ] Launching Daemon at Sun Oct 25 06:35:02 IST 2026
[2026-10-25 06:35:02,512.512 INFO    ] ================================================
[2026-10-25 06:35:03,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:35:03
[2026-10-25 06:35:03,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:35:04,326.326 INFO    ] Initializing speech engine...
[2026-10-25 06:35:04,337.337 INFO    ] 2026-10-25 06:35:04
[2026-10-25 06:35:04,638.638 INFO    ] 2026-10-25 06:35:04
[2026-10-25 06:35:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:35:04,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:35:04,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:35:05,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:35:05,133.133 INFO    ] time= 25/10/2026 06:35:05
[2026-10-25 06:35:05,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:35:05,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:35:05,256.256 INFO    ] No existing commands found in stream
[2026-10-25 06:35:10,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:35:10,271.271 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 06:35:11,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:35:11,217.217 INFO    ] Checking for system updates...
[2026-10-25 06:35:11,256.256 INFO    ] 200
[2026-10-25 06:35:11,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:11,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:35:11,320.320 INFO    ] No update needed
[2026-10-25 06:35:11,323.323 INFO    ] Checking for camera pi updates...
[2026-10-25 06:35:11,365.365 INFO    ] 200
[2026-10-25 06:35:11,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:11,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:35:11,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:35:11,470.470 INFO    ] No camera update needed
[2026-10-25 06:35:11,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:35:11,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:35:11,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:35:11,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:35:13,531.531 INFO    ] ================================================
[2026-10-25 06:35:13,548.548 INFO    ] Launching Daemon at Sun Oct 25 06:35:13 IST 2026
[2026-10-25 06:35:13,560.560 INFO    ] ================================================
[2026-10-25 06:35:14,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:35:14
[2026-10-25 06:35:14,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:35:15,178.178 INFO    ] Initializing speech engine...
[2026-10-25 06:35:15,190.190 INFO    ] 2026-10-25 06:35:15
[2026-10-25 06:35:15,497.497 INFO    ] 2026-10-25 06:35:15
[2026-10-25 06:35:15,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:35:15,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:35:15,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:35:15,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:35:15,924.924 INFO    ] time= 25/10/2026 06:35:15
[2026-10-25 06:35:15,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:35:16,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:35:16,136.136 INFO    ] No existing commands found in stream
[2026-10-25 06:35:21,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:35:21,171.171 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 06:35:25,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:35:25,372.372 INFO    ] Checking for system updates...
[2026-10-25 06:35:25,410.410 INFO    ] 200
[2026-10-25 06:35:25,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:25,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:25,470.470 INFO    ] No update needed
[2026-10-25 06:35:25,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 06:35:25,511.511 INFO    ] 200
[2026-10-25 06:35:25,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:25,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:35:25,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:25,636.636 INFO    ] No camera update needed
[2026-10-25 06:35:25,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:35:25,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:35:25,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:35:25,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:35:27,696.696 INFO    ] ================================================
[2026-10-25 06:35:27,711.711 INFO    ] Launching Daemon at Sun Oct 25 06:35:27 IST 2026
[2026-10-25 06:35:27,722.722 INFO    ] ================================================
[2026-10-25 06:35:28,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:35:28
[2026-10-25 06:35:28,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:35:29,279.279 INFO    ] Initializing speech engine...
[2026-10-25 06:35:29,289.289 INFO    ] 2026-10-25 06:35:29
[2026-10-25 06:35:29,564.564 INFO    ] 2026-10-25 06:35:29
[2026-10-25 06:35:29,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:35:29,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:35:29,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:35:30,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:35:30,056.056 INFO    ] time= 25/10/2026 06:35:30
[2026-10-25 06:35:30,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:35:30,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:35:30,246.246 INFO    ] No existing commands found in stream
[2026-10-25 06:35:35,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:35:35,281.281 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 06:35:36,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:35:36,628.628 INFO    ] Checking for system updates...
[2026-10-25 06:35:36,665.665 INFO    ] 200
[2026-10-25 06:35:36,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:36,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:36,733.733 INFO    ] No update needed
[2026-10-25 06:35:36,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 06:35:36,775.775 INFO    ] 200
[2026-10-25 06:35:36,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:36,820.820 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:35:36,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:36,871.871 INFO    ] No camera update needed
[2026-10-25 06:35:36,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:35:36,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:35:36,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:35:36,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:35:38,933.933 INFO    ] ================================================
[2026-10-25 06:35:38,948.948 INFO    ] Launching Daemon at Sun Oct 25 06:35:38 IST 2026
[2026-10-25 06:35:38,960.960 INFO    ] ================================================
[2026-10-25 06:35:39,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:35:39
[2026-10-25 06:35:40,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:35:40,414.414 INFO    ] Initializing speech engine...
[2026-10-25 06:35:40,423.423 INFO    ] 2026-10-25 06:35:40
[2026-10-25 06:35:40,670.670 INFO    ] 2026-10-25 06:35:40
[2026-10-25 06:35:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:35:40,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:35:40,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:35:41,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:35:41,048.048 INFO    ] time= 25/10/2026 06:35:41
[2026-10-25 06:35:41,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:35:41,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:35:41,251.251 INFO    ] No existing commands found in stream
[2026-10-25 06:35:46,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:35:46,276.276 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 06:35:46,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:35:46,896.896 INFO    ] Checking for system updates...
[2026-10-25 06:35:46,933.933 INFO    ] 200
[2026-10-25 06:35:46,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:46,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:46,999.999 INFO    ] No update needed
[2026-10-25 06:35:47,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 06:35:47,037.037 INFO    ] 200
[2026-10-25 06:35:47,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:35:47,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:35:47,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:35:47,135.135 INFO    ] No camera update needed
[2026-10-25 06:35:47,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:35:47,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:35:47,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:35:47,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:35:49,194.194 INFO    ] ================================================
[2026-10-25 06:35:49,209.209 INFO    ] Launching Daemon at Sun Oct 25 06:35:49 IST 2026
[2026-10-25 06:35:49,221.221 INFO    ] ================================================
[2026-10-25 06:35:49,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:35:49
[2026-10-25 06:35:50,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:35:50,824.824 INFO    ] Initializing speech engine...
[2026-10-25 06:35:50,833.833 INFO    ] 2026-10-25 06:35:50
[2026-10-25 06:35:51,147.147 INFO    ] 2026-10-25 06:35:51
[2026-10-25 06:35:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:35:51,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:35:51,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:35:51,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:35:51,655.655 INFO    ] time= 25/10/2026 06:35:51
[2026-10-25 06:35:51,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:35:51,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:35:51,811.811 INFO    ] No existing commands found in stream
[2026-10-25 06:35:56,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:35:56,833.833 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 06:36:00,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:36:00,128.128 INFO    ] Checking for system updates...
[2026-10-25 06:36:00,165.165 INFO    ] 200
[2026-10-25 06:36:00,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:00,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:00,225.225 INFO    ] No update needed
[2026-10-25 06:36:00,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 06:36:00,261.261 INFO    ] 200
[2026-10-25 06:36:00,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:00,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:36:00,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:00,356.356 INFO    ] No camera update needed
[2026-10-25 06:36:00,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:36:00,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:36:00,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:36:00,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:36:02,415.415 INFO    ] ================================================
[2026-10-25 06:36:02,436.436 INFO    ] Launching Daemon at Sun Oct 25 06:36:02 IST 2026
[2026-10-25 06:36:02,453.453 INFO    ] ================================================
[2026-10-25 06:36:03,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:36:03
[2026-10-25 06:36:03,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:36:04,064.064 INFO    ] Initializing speech engine...
[2026-10-25 06:36:04,076.076 INFO    ] 2026-10-25 06:36:04
[2026-10-25 06:36:04,352.352 INFO    ] 2026-10-25 06:36:04
[2026-10-25 06:36:04,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:36:04,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:36:04,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:36:04,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:36:04,748.748 INFO    ] time= 25/10/2026 06:36:04
[2026-10-25 06:36:04,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:36:04,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:36:04,836.836 INFO    ] No existing commands found in stream
[2026-10-25 06:36:09,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:36:09,852.852 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 06:36:13,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:36:13,202.202 INFO    ] Checking for system updates...
[2026-10-25 06:36:13,239.239 INFO    ] 200
[2026-10-25 06:36:13,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:13,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:36:13,297.297 INFO    ] No update needed
[2026-10-25 06:36:13,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 06:36:13,333.333 INFO    ] 200
[2026-10-25 06:36:13,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:13,394.394 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:36:13,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:36:13,444.444 INFO    ] No camera update needed
[2026-10-25 06:36:13,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:36:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:36:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:36:13,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:36:15,499.499 INFO    ] ================================================
[2026-10-25 06:36:15,514.514 INFO    ] Launching Daemon at Sun Oct 25 06:36:15 IST 2026
[2026-10-25 06:36:15,525.525 INFO    ] ================================================
[2026-10-25 06:36:16,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:36:16
[2026-10-25 06:36:16,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:36:16,922.922 INFO    ] Initializing speech engine...
[2026-10-25 06:36:16,930.930 INFO    ] 2026-10-25 06:36:16
[2026-10-25 06:36:17,218.218 INFO    ] 2026-10-25 06:36:17
[2026-10-25 06:36:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:36:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:36:17,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:36:17,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:36:17,744.744 INFO    ] time= 25/10/2026 06:36:17
[2026-10-25 06:36:17,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:36:17,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:36:17,882.882 INFO    ] No existing commands found in stream
[2026-10-25 06:36:22,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:36:22,923.923 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 06:36:26,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:36:26,109.109 INFO    ] Checking for system updates...
[2026-10-25 06:36:26,145.145 INFO    ] 200
[2026-10-25 06:36:26,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:26,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:26,203.203 INFO    ] No update needed
[2026-10-25 06:36:26,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 06:36:26,242.242 INFO    ] 200
[2026-10-25 06:36:26,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:26,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:36:26,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:26,354.354 INFO    ] No camera update needed
[2026-10-25 06:36:26,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:36:26,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:36:26,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:36:26,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:36:28,409.409 INFO    ] ================================================
[2026-10-25 06:36:28,425.425 INFO    ] Launching Daemon at Sun Oct 25 06:36:28 IST 2026
[2026-10-25 06:36:28,436.436 INFO    ] ================================================
[2026-10-25 06:36:29,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:36:29
[2026-10-25 06:36:29,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:36:30,030.030 INFO    ] Initializing speech engine...
[2026-10-25 06:36:30,043.043 INFO    ] 2026-10-25 06:36:30
[2026-10-25 06:36:30,319.319 INFO    ] 2026-10-25 06:36:30
[2026-10-25 06:36:30,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:36:30,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:36:30,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:36:30,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:36:30,851.851 INFO    ] time= 25/10/2026 06:36:30
[2026-10-25 06:36:30,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:36:30,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:36:31,004.004 INFO    ] No existing commands found in stream
[2026-10-25 06:36:36,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:36:36,024.024 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 06:36:38,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:36:38,427.427 INFO    ] Checking for system updates...
[2026-10-25 06:36:38,464.464 INFO    ] 200
[2026-10-25 06:36:38,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:38,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:38,540.540 INFO    ] No update needed
[2026-10-25 06:36:38,542.542 INFO    ] Checking for camera pi updates...
[2026-10-25 06:36:38,581.581 INFO    ] 200
[2026-10-25 06:36:38,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:38,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:36:38,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:38,664.664 INFO    ] No camera update needed
[2026-10-25 06:36:38,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:36:38,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:36:38,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:36:38,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:36:40,723.723 INFO    ] ================================================
[2026-10-25 06:36:40,739.739 INFO    ] Launching Daemon at Sun Oct 25 06:36:40 IST 2026
[2026-10-25 06:36:40,749.749 INFO    ] ================================================
[2026-10-25 06:36:41,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:36:41
[2026-10-25 06:36:41,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:36:42,146.146 INFO    ] Initializing speech engine...
[2026-10-25 06:36:42,152.152 INFO    ] 2026-10-25 06:36:42
[2026-10-25 06:36:42,450.450 INFO    ] 2026-10-25 06:36:42
[2026-10-25 06:36:42,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:36:42,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:36:42,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:36:42,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:36:42,829.829 INFO    ] time= 25/10/2026 06:36:42
[2026-10-25 06:36:42,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:36:42,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:36:42,953.953 INFO    ] No existing commands found in stream
[2026-10-25 06:36:47,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:36:47,968.968 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 06:36:49,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:36:49,690.690 INFO    ] Checking for system updates...
[2026-10-25 06:36:49,727.727 INFO    ] 200
[2026-10-25 06:36:49,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:49,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:49,793.793 INFO    ] No update needed
[2026-10-25 06:36:49,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 06:36:49,836.836 INFO    ] 200
[2026-10-25 06:36:49,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:36:49,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:36:50,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:36:50,043.043 INFO    ] No camera update needed
[2026-10-25 06:36:50,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:36:50,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:36:50,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:36:50,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:36:52,099.099 INFO    ] ================================================
[2026-10-25 06:36:52,114.114 INFO    ] Launching Daemon at Sun Oct 25 06:36:52 IST 2026
[2026-10-25 06:36:52,125.125 INFO    ] ================================================
[2026-10-25 06:36:52,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:36:52
[2026-10-25 06:36:53,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:36:53,547.547 INFO    ] Initializing speech engine...
[2026-10-25 06:36:53,557.557 INFO    ] 2026-10-25 06:36:53
[2026-10-25 06:36:53,809.809 INFO    ] 2026-10-25 06:36:53
[2026-10-25 06:36:53,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:36:54,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:36:54,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:36:54,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:36:54,262.262 INFO    ] time= 25/10/2026 06:36:54
[2026-10-25 06:36:54,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:36:54,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:36:54,470.470 INFO    ] No existing commands found in stream
[2026-10-25 06:36:59,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:36:59,503.503 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 06:37:02,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:37:02,288.288 INFO    ] Checking for system updates...
[2026-10-25 06:37:02,332.332 INFO    ] 200
[2026-10-25 06:37:02,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:02,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:02,411.411 INFO    ] No update needed
[2026-10-25 06:37:02,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 06:37:02,449.449 INFO    ] 200
[2026-10-25 06:37:02,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:02,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:37:02,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:02,548.548 INFO    ] No camera update needed
[2026-10-25 06:37:02,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:37:02,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:37:02,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:37:02,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:37:04,610.610 INFO    ] ================================================
[2026-10-25 06:37:04,626.626 INFO    ] Launching Daemon at Sun Oct 25 06:37:04 IST 2026
[2026-10-25 06:37:04,637.637 INFO    ] ================================================
[2026-10-25 06:37:05,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:37:05
[2026-10-25 06:37:05,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:37:06,052.052 INFO    ] Initializing speech engine...
[2026-10-25 06:37:06,071.071 INFO    ] 2026-10-25 06:37:06
[2026-10-25 06:37:06,317.317 INFO    ] 2026-10-25 06:37:06
[2026-10-25 06:37:06,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:37:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:37:06,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:37:06,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:37:06,772.772 INFO    ] time= 25/10/2026 06:37:06
[2026-10-25 06:37:06,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:37:06,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:37:06,935.935 INFO    ] No existing commands found in stream
[2026-10-25 06:37:11,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:37:11,949.949 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 06:37:15,853.853 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:37:15,855.855 INFO    ] Checking for system updates...
[2026-10-25 06:37:15,892.892 INFO    ] 200
[2026-10-25 06:37:15,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:15,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:15,956.956 INFO    ] No update needed
[2026-10-25 06:37:15,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 06:37:15,993.993 INFO    ] 200
[2026-10-25 06:37:15,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:16,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:37:16,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:16,096.096 INFO    ] No camera update needed
[2026-10-25 06:37:16,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:37:16,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:37:16,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:37:16,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:37:18,152.152 INFO    ] ================================================
[2026-10-25 06:37:18,167.167 INFO    ] Launching Daemon at Sun Oct 25 06:37:18 IST 2026
[2026-10-25 06:37:18,178.178 INFO    ] ================================================
[2026-10-25 06:37:18,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:37:18
[2026-10-25 06:37:19,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:37:19,632.632 INFO    ] Initializing speech engine...
[2026-10-25 06:37:19,638.638 INFO    ] 2026-10-25 06:37:19
[2026-10-25 06:37:19,897.897 INFO    ] 2026-10-25 06:37:19
[2026-10-25 06:37:19,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:37:20,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:37:20,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:37:20,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:37:20,332.332 INFO    ] time= 25/10/2026 06:37:20
[2026-10-25 06:37:20,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:37:20,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:37:20,539.539 INFO    ] No existing commands found in stream
[2026-10-25 06:37:25,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:37:25,574.574 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 06:37:30,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:37:30,351.351 INFO    ] Checking for system updates...
[2026-10-25 06:37:30,387.387 INFO    ] 200
[2026-10-25 06:37:30,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:30,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:30,448.448 INFO    ] No update needed
[2026-10-25 06:37:30,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 06:37:30,485.485 INFO    ] 200
[2026-10-25 06:37:30,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:30,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:37:30,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:30,594.594 INFO    ] No camera update needed
[2026-10-25 06:37:30,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:37:30,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:37:30,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:37:30,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:37:32,651.651 INFO    ] ================================================
[2026-10-25 06:37:32,666.666 INFO    ] Launching Daemon at Sun Oct 25 06:37:32 IST 2026
[2026-10-25 06:37:32,677.677 INFO    ] ================================================
[2026-10-25 06:37:33,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:37:33
[2026-10-25 06:37:33,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:37:34,119.119 INFO    ] Initializing speech engine...
[2026-10-25 06:37:34,124.124 INFO    ] 2026-10-25 06:37:34
[2026-10-25 06:37:34,381.381 INFO    ] 2026-10-25 06:37:34
[2026-10-25 06:37:34,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:37:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:37:34,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:37:34,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:37:34,878.878 INFO    ] time= 25/10/2026 06:37:34
[2026-10-25 06:37:34,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:37:34,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:37:35,065.065 INFO    ] No existing commands found in stream
[2026-10-25 06:37:40,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:37:40,101.101 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 06:37:43,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:37:43,583.583 INFO    ] Checking for system updates...
[2026-10-25 06:37:43,620.620 INFO    ] 200
[2026-10-25 06:37:43,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:43,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:37:43,679.679 INFO    ] No update needed
[2026-10-25 06:37:43,682.682 INFO    ] Checking for camera pi updates...
[2026-10-25 06:37:43,717.717 INFO    ] 200
[2026-10-25 06:37:43,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:43,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:37:43,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:37:43,827.827 INFO    ] No camera update needed
[2026-10-25 06:37:43,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:37:43,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:37:43,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:37:43,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:37:45,884.884 INFO    ] ================================================
[2026-10-25 06:37:45,900.900 INFO    ] Launching Daemon at Sun Oct 25 06:37:45 IST 2026
[2026-10-25 06:37:45,910.910 INFO    ] ================================================
[2026-10-25 06:37:46,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:37:46
[2026-10-25 06:37:47,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:37:47,516.516 INFO    ] Initializing speech engine...
[2026-10-25 06:37:47,522.522 INFO    ] 2026-10-25 06:37:47
[2026-10-25 06:37:47,812.812 INFO    ] 2026-10-25 06:37:47
[2026-10-25 06:37:47,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:37:48,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:37:48,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:37:48,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:37:48,306.306 INFO    ] time= 25/10/2026 06:37:48
[2026-10-25 06:37:48,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:37:48,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:37:48,463.463 INFO    ] No existing commands found in stream
[2026-10-25 06:37:53,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:37:53,477.477 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 06:37:56,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:37:56,289.289 INFO    ] Checking for system updates...
[2026-10-25 06:37:56,331.331 INFO    ] 200
[2026-10-25 06:37:56,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:56,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:56,391.391 INFO    ] No update needed
[2026-10-25 06:37:56,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 06:37:56,433.433 INFO    ] 200
[2026-10-25 06:37:56,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:37:56,483.483 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:37:56,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:37:56,545.545 INFO    ] No camera update needed
[2026-10-25 06:37:56,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:37:56,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:37:56,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:37:56,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:37:58,604.604 INFO    ] ================================================
[2026-10-25 06:37:58,619.619 INFO    ] Launching Daemon at Sun Oct 25 06:37:58 IST 2026
[2026-10-25 06:37:58,630.630 INFO    ] ================================================
[2026-10-25 06:37:59,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:37:59
[2026-10-25 06:37:59,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:38:00,258.258 INFO    ] Initializing speech engine...
[2026-10-25 06:38:00,268.268 INFO    ] 2026-10-25 06:38:00
[2026-10-25 06:38:00,560.560 INFO    ] 2026-10-25 06:38:00
[2026-10-25 06:38:00,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:38:00,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:38:00,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:38:01,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:38:01,090.090 INFO    ] time= 25/10/2026 06:38:01
[2026-10-25 06:38:01,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:38:01,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:38:01,204.204 INFO    ] No existing commands found in stream
[2026-10-25 06:38:06,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:38:06,230.230 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 06:38:08,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:38:08,745.745 INFO    ] Checking for system updates...
[2026-10-25 06:38:08,787.787 INFO    ] 200
[2026-10-25 06:38:08,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 06:38:08,794.794 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 06:38:08,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 06:38:08,982.982 INFO    ] 200
[2026-10-25 06:38:08,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 06:38:08,988.988 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 06:38:08,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:38:08,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:38:09,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:38:09,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:38:11,050.050 INFO    ] ================================================
[2026-10-25 06:38:11,065.065 INFO    ] Launching Daemon at Sun Oct 25 06:38:11 IST 2026
[2026-10-25 06:38:11,077.077 INFO    ] ================================================
[2026-10-25 06:38:11,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:38:11
[2026-10-25 06:38:12,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:38:12,652.652 INFO    ] Initializing speech engine...
[2026-10-25 06:38:12,666.666 INFO    ] 2026-10-25 06:38:12
[2026-10-25 06:38:12,946.946 INFO    ] 2026-10-25 06:38:12
[2026-10-25 06:38:13,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:38:13,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:38:13,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:38:13,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:38:13,469.469 INFO    ] time= 25/10/2026 06:38:13
[2026-10-25 06:38:13,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:38:13,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:38:13,631.631 INFO    ] No existing commands found in stream
[2026-10-25 06:38:18,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:38:18,651.651 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 06:38:21,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:38:21,563.563 INFO    ] Checking for system updates...
[2026-10-25 06:38:21,600.600 INFO    ] 200
[2026-10-25 06:38:21,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:21,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:38:21,660.660 INFO    ] No update needed
[2026-10-25 06:38:21,663.663 INFO    ] Checking for camera pi updates...
[2026-10-25 06:38:21,702.702 INFO    ] 200
[2026-10-25 06:38:21,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:21,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:38:21,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:38:21,819.819 INFO    ] No camera update needed
[2026-10-25 06:38:21,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:38:21,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:38:21,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:38:21,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:38:23,878.878 INFO    ] ================================================
[2026-10-25 06:38:23,894.894 INFO    ] Launching Daemon at Sun Oct 25 06:38:23 IST 2026
[2026-10-25 06:38:23,906.906 INFO    ] ================================================
[2026-10-25 06:38:24,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:38:24
[2026-10-25 06:38:25,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:38:25,333.333 INFO    ] Initializing speech engine...
[2026-10-25 06:38:25,342.342 INFO    ] 2026-10-25 06:38:25
[2026-10-25 06:38:25,589.589 INFO    ] 2026-10-25 06:38:25
[2026-10-25 06:38:25,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:38:25,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:38:25,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:38:26,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:38:26,038.038 INFO    ] time= 25/10/2026 06:38:26
[2026-10-25 06:38:26,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:38:26,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:38:26,206.206 INFO    ] No existing commands found in stream
[2026-10-25 06:38:31,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:38:31,216.216 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 06:38:33,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:38:33,017.017 INFO    ] Checking for system updates...
[2026-10-25 06:38:33,058.058 INFO    ] 200
[2026-10-25 06:38:33,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:33,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:38:33,126.126 INFO    ] No update needed
[2026-10-25 06:38:33,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 06:38:33,165.165 INFO    ] 200
[2026-10-25 06:38:33,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:33,209.209 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:38:33,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:38:33,273.273 INFO    ] No camera update needed
[2026-10-25 06:38:33,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:38:33,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:38:33,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:38:33,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:38:35,330.330 INFO    ] ================================================
[2026-10-25 06:38:35,345.345 INFO    ] Launching Daemon at Sun Oct 25 06:38:35 IST 2026
[2026-10-25 06:38:35,357.357 INFO    ] ================================================
[2026-10-25 06:38:35,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:38:35
[2026-10-25 06:38:36,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:38:36,815.815 INFO    ] Initializing speech engine...
[2026-10-25 06:38:36,823.823 INFO    ] 2026-10-25 06:38:36
[2026-10-25 06:38:37,080.080 INFO    ] 2026-10-25 06:38:37
[2026-10-25 06:38:37,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:38:37,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:38:37,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:38:37,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:38:37,567.567 INFO    ] time= 25/10/2026 06:38:37
[2026-10-25 06:38:37,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:38:37,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:38:37,742.742 INFO    ] No existing commands found in stream
[2026-10-25 06:38:42,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:38:42,777.777 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 06:38:45,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:38:45,760.760 INFO    ] Checking for system updates...
[2026-10-25 06:38:45,801.801 INFO    ] 200
[2026-10-25 06:38:45,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:45,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:38:45,859.859 INFO    ] No update needed
[2026-10-25 06:38:45,861.861 INFO    ] Checking for camera pi updates...
[2026-10-25 06:38:45,895.895 INFO    ] 200
[2026-10-25 06:38:45,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:45,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:38:45,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:38:45,996.996 INFO    ] No camera update needed
[2026-10-25 06:38:45,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:38:46,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:38:46,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:38:46,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:38:48,052.052 INFO    ] ================================================
[2026-10-25 06:38:48,067.067 INFO    ] Launching Daemon at Sun Oct 25 06:38:48 IST 2026
[2026-10-25 06:38:48,079.079 INFO    ] ================================================
[2026-10-25 06:38:48,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:38:48
[2026-10-25 06:38:49,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:38:49,661.661 INFO    ] Initializing speech engine...
[2026-10-25 06:38:49,669.669 INFO    ] 2026-10-25 06:38:49
[2026-10-25 06:38:49,919.919 INFO    ] 2026-10-25 06:38:49
[2026-10-25 06:38:49,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:38:50,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:38:50,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:38:50,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:38:50,405.405 INFO    ] time= 25/10/2026 06:38:50
[2026-10-25 06:38:50,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:38:50,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:38:50,553.553 INFO    ] No existing commands found in stream
[2026-10-25 06:38:55,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:38:55,567.567 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 06:38:57,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:38:57,684.684 INFO    ] Checking for system updates...
[2026-10-25 06:38:57,719.719 INFO    ] 200
[2026-10-25 06:38:57,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:57,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:38:57,777.777 INFO    ] No update needed
[2026-10-25 06:38:57,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 06:38:57,814.814 INFO    ] 200
[2026-10-25 06:38:57,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:38:57,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:38:58,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:38:58,012.012 INFO    ] No camera update needed
[2026-10-25 06:38:58,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:38:58,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:38:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:38:58,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:39:00,070.070 INFO    ] ================================================
[2026-10-25 06:39:00,086.086 INFO    ] Launching Daemon at Sun Oct 25 06:39:00 IST 2026
[2026-10-25 06:39:00,096.096 INFO    ] ================================================
[2026-10-25 06:39:00,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:39:00
[2026-10-25 06:39:01,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:39:01,784.784 INFO    ] Initializing speech engine...
[2026-10-25 06:39:01,789.789 INFO    ] 2026-10-25 06:39:01
[2026-10-25 06:39:02,233.233 INFO    ] 2026-10-25 06:39:02
[2026-10-25 06:39:02,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:39:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:39:02,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:39:02,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:39:02,712.712 INFO    ] time= 25/10/2026 06:39:02
[2026-10-25 06:39:02,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:39:02,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:39:02,912.912 INFO    ] No existing commands found in stream
[2026-10-25 06:39:07,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:39:07,943.943 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 06:39:08,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:39:08,372.372 INFO    ] Checking for system updates...
[2026-10-25 06:39:08,409.409 INFO    ] 200
[2026-10-25 06:39:08,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:08,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:39:08,468.468 INFO    ] No update needed
[2026-10-25 06:39:08,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 06:39:08,506.506 INFO    ] 200
[2026-10-25 06:39:08,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:08,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:39:08,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:39:08,613.613 INFO    ] No camera update needed
[2026-10-25 06:39:08,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:39:08,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:39:08,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:39:08,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:39:10,671.671 INFO    ] ================================================
[2026-10-25 06:39:10,687.687 INFO    ] Launching Daemon at Sun Oct 25 06:39:10 IST 2026
[2026-10-25 06:39:10,698.698 INFO    ] ================================================
[2026-10-25 06:39:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:39:11
[2026-10-25 06:39:11,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:39:12,119.119 INFO    ] Initializing speech engine...
[2026-10-25 06:39:12,128.128 INFO    ] 2026-10-25 06:39:12
[2026-10-25 06:39:12,378.378 INFO    ] 2026-10-25 06:39:12
[2026-10-25 06:39:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:39:12,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:39:12,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:39:12,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:39:12,756.756 INFO    ] time= 25/10/2026 06:39:12
[2026-10-25 06:39:12,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:39:12,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:39:12,935.935 INFO    ] No existing commands found in stream
[2026-10-25 06:39:17,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:39:17,963.963 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 06:39:19,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:39:19,818.818 INFO    ] Checking for system updates...
[2026-10-25 06:39:19,860.860 INFO    ] 200
[2026-10-25 06:39:19,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:21,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:39:21,194.194 INFO    ] No update needed
[2026-10-25 06:39:21,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 06:39:21,234.234 INFO    ] 200
[2026-10-25 06:39:21,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:21,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:39:21,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:39:21,328.328 INFO    ] No camera update needed
[2026-10-25 06:39:21,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:39:21,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:39:21,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:39:21,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:39:23,382.382 INFO    ] ================================================
[2026-10-25 06:39:23,398.398 INFO    ] Launching Daemon at Sun Oct 25 06:39:23 IST 2026
[2026-10-25 06:39:23,409.409 INFO    ] ================================================
[2026-10-25 06:39:23,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:39:23
[2026-10-25 06:39:24,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:39:24,800.800 INFO    ] Initializing speech engine...
[2026-10-25 06:39:24,821.821 INFO    ] 2026-10-25 06:39:24
[2026-10-25 06:39:25,075.075 INFO    ] 2026-10-25 06:39:25
[2026-10-25 06:39:25,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:39:25,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:39:25,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:39:25,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:39:25,481.481 INFO    ] time= 25/10/2026 06:39:25
[2026-10-25 06:39:25,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:39:25,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:39:25,639.639 INFO    ] No existing commands found in stream
[2026-10-25 06:39:30,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:39:30,663.663 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 06:39:31,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:39:31,220.220 INFO    ] Checking for system updates...
[2026-10-25 06:39:31,255.255 INFO    ] 200
[2026-10-25 06:39:31,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:31,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:31,314.314 INFO    ] No update needed
[2026-10-25 06:39:31,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 06:39:31,353.353 INFO    ] 200
[2026-10-25 06:39:31,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:31,397.397 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:39:31,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:31,478.478 INFO    ] No camera update needed
[2026-10-25 06:39:31,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:39:31,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:39:31,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:39:31,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:39:33,540.540 INFO    ] ================================================
[2026-10-25 06:39:33,556.556 INFO    ] Launching Daemon at Sun Oct 25 06:39:33 IST 2026
[2026-10-25 06:39:33,567.567 INFO    ] ================================================
[2026-10-25 06:39:34,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:39:34
[2026-10-25 06:39:34,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:39:35,018.018 INFO    ] Initializing speech engine...
[2026-10-25 06:39:35,027.027 INFO    ] 2026-10-25 06:39:35
[2026-10-25 06:39:35,274.274 INFO    ] 2026-10-25 06:39:35
[2026-10-25 06:39:35,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:39:35,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:39:35,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:39:35,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:39:35,748.748 INFO    ] time= 25/10/2026 06:39:35
[2026-10-25 06:39:35,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:39:35,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:39:35,893.893 INFO    ] No existing commands found in stream
[2026-10-25 06:39:40,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:39:40,908.908 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 06:39:44,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:39:44,561.561 INFO    ] Checking for system updates...
[2026-10-25 06:39:44,597.597 INFO    ] 200
[2026-10-25 06:39:44,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:44,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:44,655.655 INFO    ] No update needed
[2026-10-25 06:39:44,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 06:39:44,691.691 INFO    ] 200
[2026-10-25 06:39:44,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:44,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:39:44,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:44,789.789 INFO    ] No camera update needed
[2026-10-25 06:39:44,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:39:44,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:39:44,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:39:44,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:39:46,845.845 INFO    ] ================================================
[2026-10-25 06:39:46,860.860 INFO    ] Launching Daemon at Sun Oct 25 06:39:46 IST 2026
[2026-10-25 06:39:46,871.871 INFO    ] ================================================
[2026-10-25 06:39:47,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:39:47
[2026-10-25 06:39:48,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:39:48,322.322 INFO    ] Initializing speech engine...
[2026-10-25 06:39:48,333.333 INFO    ] 2026-10-25 06:39:48
[2026-10-25 06:39:48,578.578 INFO    ] 2026-10-25 06:39:48
[2026-10-25 06:39:48,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:39:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:39:48,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:39:49,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:39:49,050.050 INFO    ] time= 25/10/2026 06:39:49
[2026-10-25 06:39:49,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:39:49,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:39:49,242.242 INFO    ] No existing commands found in stream
[2026-10-25 06:39:54,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:39:54,271.271 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 06:39:59,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:39:59,319.319 INFO    ] Checking for system updates...
[2026-10-25 06:39:59,359.359 INFO    ] 200
[2026-10-25 06:39:59,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:59,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:59,418.418 INFO    ] No update needed
[2026-10-25 06:39:59,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 06:39:59,454.454 INFO    ] 200
[2026-10-25 06:39:59,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:39:59,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:39:59,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:39:59,548.548 INFO    ] No camera update needed
[2026-10-25 06:39:59,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:39:59,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:39:59,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:39:59,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:01,625.625 INFO    ] ================================================
[2026-10-25 06:40:01,688.688 INFO    ] Launching Daemon at Sun Oct 25 06:40:01 IST 2026
[2026-10-25 06:40:01,755.755 INFO    ] ================================================
[2026-10-25 06:40:02,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:02
[2026-10-25 06:40:03,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:03,962.962 INFO    ] Initializing speech engine...
[2026-10-25 06:40:03,968.968 INFO    ] 2026-10-25 06:40:03
[2026-10-25 06:40:04,215.215 INFO    ] 2026-10-25 06:40:04
[2026-10-25 06:40:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:04,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:04,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:40:04,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:40:04,591.591 INFO    ] time= 25/10/2026 06:40:04
[2026-10-25 06:40:04,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:40:04,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:40:04,746.746 INFO    ] No existing commands found in stream
[2026-10-25 06:40:09,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:40:09,774.774 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 06:40:10,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:40:10,474.474 INFO    ] Checking for system updates...
[2026-10-25 06:40:10,510.510 INFO    ] 200
[2026-10-25 06:40:10,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:10,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:10,575.575 INFO    ] No update needed
[2026-10-25 06:40:10,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 06:40:10,612.612 INFO    ] 200
[2026-10-25 06:40:10,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:10,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:40:10,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:10,729.729 INFO    ] No camera update needed
[2026-10-25 06:40:10,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:40:10,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:40:10,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:40:10,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:12,785.785 INFO    ] ================================================
[2026-10-25 06:40:12,801.801 INFO    ] Launching Daemon at Sun Oct 25 06:40:12 IST 2026
[2026-10-25 06:40:12,812.812 INFO    ] ================================================
[2026-10-25 06:40:13,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:13
[2026-10-25 06:40:13,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:14,221.221 INFO    ] Initializing speech engine...
[2026-10-25 06:40:14,234.234 INFO    ] 2026-10-25 06:40:14
[2026-10-25 06:40:14,499.499 INFO    ] 2026-10-25 06:40:14
[2026-10-25 06:40:14,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:14,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:14,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:40:14,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:40:14,876.876 INFO    ] time= 25/10/2026 06:40:14
[2026-10-25 06:40:14,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:40:14,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:40:15,062.062 INFO    ] No existing commands found in stream
[2026-10-25 06:40:20,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:40:20,089.089 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 06:40:22,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:40:22,340.340 INFO    ] Checking for system updates...
[2026-10-25 06:40:22,380.380 INFO    ] 200
[2026-10-25 06:40:22,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:22,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:40:22,445.445 INFO    ] No update needed
[2026-10-25 06:40:22,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 06:40:22,485.485 INFO    ] 200
[2026-10-25 06:40:22,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:22,527.527 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:40:22,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:40:22,586.586 INFO    ] No camera update needed
[2026-10-25 06:40:22,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:40:22,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:40:22,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:40:22,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:24,642.642 INFO    ] ================================================
[2026-10-25 06:40:24,658.658 INFO    ] Launching Daemon at Sun Oct 25 06:40:24 IST 2026
[2026-10-25 06:40:24,670.670 INFO    ] ================================================
[2026-10-25 06:40:25,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:25
[2026-10-25 06:40:25,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:26,123.123 INFO    ] Initializing speech engine...
[2026-10-25 06:40:26,132.132 INFO    ] 2026-10-25 06:40:26
[2026-10-25 06:40:26,389.389 INFO    ] 2026-10-25 06:40:26
[2026-10-25 06:40:26,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:26,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:26,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:40:26,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:40:26,850.850 INFO    ] time= 25/10/2026 06:40:26
[2026-10-25 06:40:26,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:40:26,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:40:27,015.015 INFO    ] No existing commands found in stream
[2026-10-25 06:40:32,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:40:32,055.055 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 06:40:32,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:40:32,509.509 INFO    ] Checking for system updates...
[2026-10-25 06:40:32,552.552 INFO    ] 200
[2026-10-25 06:40:32,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:32,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:32,614.614 INFO    ] No update needed
[2026-10-25 06:40:32,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 06:40:32,652.652 INFO    ] 200
[2026-10-25 06:40:32,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:32,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:40:33,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:33,182.182 INFO    ] No camera update needed
[2026-10-25 06:40:33,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:40:33,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:40:33,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:40:33,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:35,237.237 INFO    ] ================================================
[2026-10-25 06:40:35,252.252 INFO    ] Launching Daemon at Sun Oct 25 06:40:35 IST 2026
[2026-10-25 06:40:35,263.263 INFO    ] ================================================
[2026-10-25 06:40:35,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:35
[2026-10-25 06:40:36,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:36,705.705 INFO    ] Initializing speech engine...
[2026-10-25 06:40:36,721.721 INFO    ] 2026-10-25 06:40:36
[2026-10-25 06:40:36,975.975 INFO    ] 2026-10-25 06:40:36
[2026-10-25 06:40:37,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:37,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:37,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:40:37,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:40:37,419.419 INFO    ] time= 25/10/2026 06:40:37
[2026-10-25 06:40:37,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:40:37,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:40:37,588.588 INFO    ] No existing commands found in stream
[2026-10-25 06:40:42,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:40:42,603.603 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 06:40:43,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:40:43,274.274 INFO    ] Checking for system updates...
[2026-10-25 06:40:43,311.311 INFO    ] 200
[2026-10-25 06:40:43,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:43,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:40:43,368.368 INFO    ] No update needed
[2026-10-25 06:40:43,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 06:40:43,409.409 INFO    ] 200
[2026-10-25 06:40:43,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:43,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:40:43,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:40:43,520.520 INFO    ] No camera update needed
[2026-10-25 06:40:43,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:40:43,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:40:43,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:40:43,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:45,574.574 INFO    ] ================================================
[2026-10-25 06:40:45,590.590 INFO    ] Launching Daemon at Sun Oct 25 06:40:45 IST 2026
[2026-10-25 06:40:45,601.601 INFO    ] ================================================
[2026-10-25 06:40:46,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:46
[2026-10-25 06:40:46,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:47,020.020 INFO    ] Initializing speech engine...
[2026-10-25 06:40:47,029.029 INFO    ] 2026-10-25 06:40:47
[2026-10-25 06:40:47,281.281 INFO    ] 2026-10-25 06:40:47
[2026-10-25 06:40:47,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:47,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:47,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:40:47,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:40:47,775.775 INFO    ] time= 25/10/2026 06:40:47
[2026-10-25 06:40:47,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:40:47,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:40:47,910.910 INFO    ] No existing commands found in stream
[2026-10-25 06:40:52,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:40:52,925.925 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 06:40:55,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:40:55,481.481 INFO    ] Checking for system updates...
[2026-10-25 06:40:55,518.518 INFO    ] 200
[2026-10-25 06:40:55,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:55,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:55,586.586 INFO    ] No update needed
[2026-10-25 06:40:55,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 06:40:55,626.626 INFO    ] 200
[2026-10-25 06:40:55,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:40:55,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:40:55,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:40:55,755.755 INFO    ] No camera update needed
[2026-10-25 06:40:55,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:40:55,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:40:55,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:40:55,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:40:57,809.809 INFO    ] ================================================
[2026-10-25 06:40:57,825.825 INFO    ] Launching Daemon at Sun Oct 25 06:40:57 IST 2026
[2026-10-25 06:40:57,836.836 INFO    ] ================================================
[2026-10-25 06:40:58,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:40:58
[2026-10-25 06:40:58,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:40:59,243.243 INFO    ] Initializing speech engine...
[2026-10-25 06:40:59,264.264 INFO    ] 2026-10-25 06:40:59
[2026-10-25 06:40:59,524.524 INFO    ] 2026-10-25 06:40:59
[2026-10-25 06:40:59,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:40:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:40:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:41:00,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:41:00,093.093 INFO    ] time= 25/10/2026 06:41:00
[2026-10-25 06:41:00,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:41:00,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:41:00,235.235 INFO    ] No existing commands found in stream
[2026-10-25 06:41:05,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:41:05,266.266 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 06:41:09,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:41:09,118.118 INFO    ] Checking for system updates...
[2026-10-25 06:41:09,158.158 INFO    ] 200
[2026-10-25 06:41:09,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:09,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:09,216.216 INFO    ] No update needed
[2026-10-25 06:41:09,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 06:41:09,255.255 INFO    ] 200
[2026-10-25 06:41:09,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:09,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:41:09,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:09,357.357 INFO    ] No camera update needed
[2026-10-25 06:41:09,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:41:09,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:41:09,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:41:09,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:41:11,413.413 INFO    ] ================================================
[2026-10-25 06:41:11,429.429 INFO    ] Launching Daemon at Sun Oct 25 06:41:11 IST 2026
[2026-10-25 06:41:11,439.439 INFO    ] ================================================
[2026-10-25 06:41:12,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:41:12
[2026-10-25 06:41:12,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:41:12,985.985 INFO    ] Initializing speech engine...
[2026-10-25 06:41:12,994.994 INFO    ] 2026-10-25 06:41:12
[2026-10-25 06:41:13,246.246 INFO    ] 2026-10-25 06:41:13
[2026-10-25 06:41:13,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:41:13,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:41:13,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:41:13,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:41:13,571.571 INFO    ] time= 25/10/2026 06:41:13
[2026-10-25 06:41:13,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:41:13,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:41:13,680.680 INFO    ] No existing commands found in stream
[2026-10-25 06:41:18,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:41:18,696.696 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 06:41:20,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:41:20,518.518 INFO    ] Checking for system updates...
[2026-10-25 06:41:20,554.554 INFO    ] 200
[2026-10-25 06:41:20,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:20,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:20,618.618 INFO    ] No update needed
[2026-10-25 06:41:20,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 06:41:20,654.654 INFO    ] 200
[2026-10-25 06:41:20,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:20,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:41:20,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:20,753.753 INFO    ] No camera update needed
[2026-10-25 06:41:20,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:41:20,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:41:20,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:41:20,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:41:22,812.812 INFO    ] ================================================
[2026-10-25 06:41:22,827.827 INFO    ] Launching Daemon at Sun Oct 25 06:41:22 IST 2026
[2026-10-25 06:41:22,838.838 INFO    ] ================================================
[2026-10-25 06:41:23,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:41:23
[2026-10-25 06:41:23,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:41:24,238.238 INFO    ] Initializing speech engine...
[2026-10-25 06:41:24,244.244 INFO    ] 2026-10-25 06:41:24
[2026-10-25 06:41:24,541.541 INFO    ] 2026-10-25 06:41:24
[2026-10-25 06:41:24,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:41:24,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:41:24,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:41:24,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:41:24,921.921 INFO    ] time= 25/10/2026 06:41:24
[2026-10-25 06:41:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:41:24,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:41:25,086.086 INFO    ] No existing commands found in stream
[2026-10-25 06:41:30,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:41:30,114.114 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 06:41:31,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:41:31,820.820 INFO    ] Checking for system updates...
[2026-10-25 06:41:31,860.860 INFO    ] 200
[2026-10-25 06:41:31,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:31,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:31,924.924 INFO    ] No update needed
[2026-10-25 06:41:31,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 06:41:31,963.963 INFO    ] 200
[2026-10-25 06:41:31,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:32,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:41:32,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:32,059.059 INFO    ] No camera update needed
[2026-10-25 06:41:32,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:41:32,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:41:32,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:41:32,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:41:34,119.119 INFO    ] ================================================
[2026-10-25 06:41:34,135.135 INFO    ] Launching Daemon at Sun Oct 25 06:41:34 IST 2026
[2026-10-25 06:41:34,147.147 INFO    ] ================================================
[2026-10-25 06:41:34,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:41:34
[2026-10-25 06:41:35,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:41:35,568.568 INFO    ] Initializing speech engine...
[2026-10-25 06:41:35,576.576 INFO    ] 2026-10-25 06:41:35
[2026-10-25 06:41:35,871.871 INFO    ] 2026-10-25 06:41:35
[2026-10-25 06:41:35,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:41:36,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:41:36,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:41:36,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:41:36,225.225 INFO    ] time= 25/10/2026 06:41:36
[2026-10-25 06:41:36,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:41:36,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:41:36,309.309 INFO    ] No existing commands found in stream
[2026-10-25 06:41:41,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:41:41,347.347 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 06:41:42,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:41:42,055.055 INFO    ] Checking for system updates...
[2026-10-25 06:41:42,091.091 INFO    ] 200
[2026-10-25 06:41:42,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:42,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:42,162.162 INFO    ] No update needed
[2026-10-25 06:41:42,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 06:41:42,198.198 INFO    ] 200
[2026-10-25 06:41:42,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:42,247.247 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:41:42,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:42,307.307 INFO    ] No camera update needed
[2026-10-25 06:41:42,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:41:42,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:41:42,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:41:42,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:41:44,362.362 INFO    ] ================================================
[2026-10-25 06:41:44,378.378 INFO    ] Launching Daemon at Sun Oct 25 06:41:44 IST 2026
[2026-10-25 06:41:44,389.389 INFO    ] ================================================
[2026-10-25 06:41:44,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:41:44
[2026-10-25 06:41:45,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:41:45,858.858 INFO    ] Initializing speech engine...
[2026-10-25 06:41:45,868.868 INFO    ] 2026-10-25 06:41:45
[2026-10-25 06:41:46,126.126 INFO    ] 2026-10-25 06:41:46
[2026-10-25 06:41:46,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:41:46,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:41:46,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:41:46,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:41:46,589.589 INFO    ] time= 25/10/2026 06:41:46
[2026-10-25 06:41:46,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:41:46,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:41:46,736.736 INFO    ] No existing commands found in stream
[2026-10-25 06:41:51,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:41:51,751.751 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 06:41:55,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:41:55,887.887 INFO    ] Checking for system updates...
[2026-10-25 06:41:55,927.927 INFO    ] 200
[2026-10-25 06:41:55,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:55,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:55,985.985 INFO    ] No update needed
[2026-10-25 06:41:55,987.987 INFO    ] Checking for camera pi updates...
[2026-10-25 06:41:56,025.025 INFO    ] 200
[2026-10-25 06:41:56,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:41:56,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:41:56,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:41:56,136.136 INFO    ] No camera update needed
[2026-10-25 06:41:56,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:41:56,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:41:56,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:41:56,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:41:58,196.196 INFO    ] ================================================
[2026-10-25 06:41:58,215.215 INFO    ] Launching Daemon at Sun Oct 25 06:41:58 IST 2026
[2026-10-25 06:41:58,227.227 INFO    ] ================================================
[2026-10-25 06:41:58,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:41:58
[2026-10-25 06:41:59,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:41:59,632.632 INFO    ] Initializing speech engine...
[2026-10-25 06:41:59,638.638 INFO    ] 2026-10-25 06:41:59
[2026-10-25 06:41:59,931.931 INFO    ] 2026-10-25 06:41:59
[2026-10-25 06:41:59,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:42:00,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:42:00,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:42:00,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:42:00,309.309 INFO    ] time= 25/10/2026 06:42:00
[2026-10-25 06:42:00,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:42:00,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:42:00,434.434 INFO    ] No existing commands found in stream
[2026-10-25 06:42:05,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:42:05,449.449 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 06:42:06,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:42:06,322.322 INFO    ] Checking for system updates...
[2026-10-25 06:42:06,362.362 INFO    ] 200
[2026-10-25 06:42:06,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:06,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:42:06,426.426 INFO    ] No update needed
[2026-10-25 06:42:06,428.428 INFO    ] Checking for camera pi updates...
[2026-10-25 06:42:06,461.461 INFO    ] 200
[2026-10-25 06:42:06,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:06,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:42:06,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:42:06,574.574 INFO    ] No camera update needed
[2026-10-25 06:42:06,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:42:06,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:42:06,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:42:06,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:42:08,635.635 INFO    ] ================================================
[2026-10-25 06:42:08,651.651 INFO    ] Launching Daemon at Sun Oct 25 06:42:08 IST 2026
[2026-10-25 06:42:08,662.662 INFO    ] ================================================
[2026-10-25 06:42:09,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:42:09
[2026-10-25 06:42:09,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:42:10,257.257 INFO    ] Initializing speech engine...
[2026-10-25 06:42:10,265.265 INFO    ] 2026-10-25 06:42:10
[2026-10-25 06:42:10,552.552 INFO    ] 2026-10-25 06:42:10
[2026-10-25 06:42:10,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:42:10,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:42:10,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:42:10,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:42:11,020.020 INFO    ] time= 25/10/2026 06:42:10
[2026-10-25 06:42:11,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:42:11,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:42:11,203.203 INFO    ] No existing commands found in stream
[2026-10-25 06:42:16,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:42:16,227.227 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 06:42:19,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:42:19,804.804 INFO    ] Checking for system updates...
[2026-10-25 06:42:19,845.845 INFO    ] 200
[2026-10-25 06:42:19,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:19,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:42:19,906.906 INFO    ] No update needed
[2026-10-25 06:42:19,908.908 INFO    ] Checking for camera pi updates...
[2026-10-25 06:42:19,946.946 INFO    ] 200
[2026-10-25 06:42:19,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:19,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:42:20,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:42:20,032.032 INFO    ] No camera update needed
[2026-10-25 06:42:20,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:42:20,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:42:20,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:42:20,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:42:22,088.088 INFO    ] ================================================
[2026-10-25 06:42:22,104.104 INFO    ] Launching Daemon at Sun Oct 25 06:42:22 IST 2026
[2026-10-25 06:42:22,115.115 INFO    ] ================================================
[2026-10-25 06:42:22,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:42:22
[2026-10-25 06:42:23,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:42:23,714.714 INFO    ] Initializing speech engine...
[2026-10-25 06:42:23,722.722 INFO    ] 2026-10-25 06:42:23
[2026-10-25 06:42:23,991.991 INFO    ] 2026-10-25 06:42:23
[2026-10-25 06:42:24,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:42:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:42:24,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:42:24,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:42:24,468.468 INFO    ] time= 25/10/2026 06:42:24
[2026-10-25 06:42:24,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:42:24,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:42:24,673.673 INFO    ] No existing commands found in stream
[2026-10-25 06:42:29,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:42:29,701.701 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 06:42:33,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:42:33,416.416 INFO    ] Checking for system updates...
[2026-10-25 06:42:33,452.452 INFO    ] 200
[2026-10-25 06:42:33,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:33,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:33,518.518 INFO    ] No update needed
[2026-10-25 06:42:33,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 06:42:33,556.556 INFO    ] 200
[2026-10-25 06:42:33,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:33,601.601 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:42:33,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:33,646.646 INFO    ] No camera update needed
[2026-10-25 06:42:33,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:42:33,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:42:33,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:42:33,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:42:35,701.701 INFO    ] ================================================
[2026-10-25 06:42:35,717.717 INFO    ] Launching Daemon at Sun Oct 25 06:42:35 IST 2026
[2026-10-25 06:42:35,728.728 INFO    ] ================================================
[2026-10-25 06:42:36,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:42:36
[2026-10-25 06:42:36,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:42:37,179.179 INFO    ] Initializing speech engine...
[2026-10-25 06:42:37,184.184 INFO    ] 2026-10-25 06:42:37
[2026-10-25 06:42:37,432.432 INFO    ] 2026-10-25 06:42:37
[2026-10-25 06:42:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:42:37,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:42:37,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:42:37,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:42:37,939.939 INFO    ] time= 25/10/2026 06:42:37
[2026-10-25 06:42:37,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:42:37,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:42:38,127.127 INFO    ] No existing commands found in stream
[2026-10-25 06:42:43,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:42:43,156.156 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 06:42:45,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:42:45,655.655 INFO    ] Checking for system updates...
[2026-10-25 06:42:45,695.695 INFO    ] 200
[2026-10-25 06:42:45,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:45,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:45,759.759 INFO    ] No update needed
[2026-10-25 06:42:45,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 06:42:45,799.799 INFO    ] 200
[2026-10-25 06:42:45,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:45,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:42:45,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:45,906.906 INFO    ] No camera update needed
[2026-10-25 06:42:45,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:42:45,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:42:45,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:42:45,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:42:47,962.962 INFO    ] ================================================
[2026-10-25 06:42:47,978.978 INFO    ] Launching Daemon at Sun Oct 25 06:42:47 IST 2026
[2026-10-25 06:42:47,988.988 INFO    ] ================================================
[2026-10-25 06:42:48,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:42:48
[2026-10-25 06:42:49,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:42:49,403.403 INFO    ] Initializing speech engine...
[2026-10-25 06:42:49,412.412 INFO    ] 2026-10-25 06:42:49
[2026-10-25 06:42:49,657.657 INFO    ] 2026-10-25 06:42:49
[2026-10-25 06:42:49,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:42:49,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:42:49,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:42:50,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:42:50,125.125 INFO    ] time= 25/10/2026 06:42:50
[2026-10-25 06:42:50,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:42:50,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:42:50,283.283 INFO    ] No existing commands found in stream
[2026-10-25 06:42:55,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:42:55,297.297 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 06:42:59,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:42:59,563.563 INFO    ] Checking for system updates...
[2026-10-25 06:42:59,599.599 INFO    ] 200
[2026-10-25 06:42:59,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:59,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:59,663.663 INFO    ] No update needed
[2026-10-25 06:42:59,666.666 INFO    ] Checking for camera pi updates...
[2026-10-25 06:42:59,700.700 INFO    ] 200
[2026-10-25 06:42:59,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:42:59,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:42:59,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:42:59,797.797 INFO    ] No camera update needed
[2026-10-25 06:42:59,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:42:59,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:42:59,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:42:59,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:43:01,856.856 INFO    ] ================================================
[2026-10-25 06:43:01,874.874 INFO    ] Launching Daemon at Sun Oct 25 06:43:01 IST 2026
[2026-10-25 06:43:01,886.886 INFO    ] ================================================
[2026-10-25 06:43:02,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:43:02
[2026-10-25 06:43:03,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:43:03,539.539 INFO    ] Initializing speech engine...
[2026-10-25 06:43:03,549.549 INFO    ] 2026-10-25 06:43:03
[2026-10-25 06:43:03,821.821 INFO    ] 2026-10-25 06:43:03
[2026-10-25 06:43:03,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:43:04,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:43:04,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:43:04,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:43:04,284.284 INFO    ] time= 25/10/2026 06:43:04
[2026-10-25 06:43:04,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:43:04,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:43:04,450.450 INFO    ] No existing commands found in stream
[2026-10-25 06:43:09,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:43:09,466.466 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 06:43:11,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:43:11,617.617 INFO    ] Checking for system updates...
[2026-10-25 06:43:11,654.654 INFO    ] 200
[2026-10-25 06:43:11,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:11,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:43:11,713.713 INFO    ] No update needed
[2026-10-25 06:43:11,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 06:43:11,751.751 INFO    ] 200
[2026-10-25 06:43:11,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:11,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:43:11,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:43:11,971.971 INFO    ] No camera update needed
[2026-10-25 06:43:11,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:43:11,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:43:11,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:43:11,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:43:14,029.029 INFO    ] ================================================
[2026-10-25 06:43:14,044.044 INFO    ] Launching Daemon at Sun Oct 25 06:43:14 IST 2026
[2026-10-25 06:43:14,054.054 INFO    ] ================================================
[2026-10-25 06:43:14,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:43:14
[2026-10-25 06:43:15,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:43:15,470.470 INFO    ] Initializing speech engine...
[2026-10-25 06:43:15,479.479 INFO    ] 2026-10-25 06:43:15
[2026-10-25 06:43:15,727.727 INFO    ] 2026-10-25 06:43:15
[2026-10-25 06:43:15,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:43:15,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:43:16,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:43:16,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:43:16,226.226 INFO    ] time= 25/10/2026 06:43:16
[2026-10-25 06:43:16,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:43:16,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:43:16,442.442 INFO    ] No existing commands found in stream
[2026-10-25 06:43:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:43:21,464.464 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 06:43:22,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:43:22,152.152 INFO    ] Checking for system updates...
[2026-10-25 06:43:22,193.193 INFO    ] 200
[2026-10-25 06:43:22,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:22,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:43:22,259.259 INFO    ] No update needed
[2026-10-25 06:43:22,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 06:43:22,297.297 INFO    ] 200
[2026-10-25 06:43:22,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:22,341.341 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:43:22,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:43:22,401.401 INFO    ] No camera update needed
[2026-10-25 06:43:22,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:43:22,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:43:22,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:43:22,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:43:24,459.459 INFO    ] ================================================
[2026-10-25 06:43:24,474.474 INFO    ] Launching Daemon at Sun Oct 25 06:43:24 IST 2026
[2026-10-25 06:43:24,485.485 INFO    ] ================================================
[2026-10-25 06:43:25,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:43:25
[2026-10-25 06:43:25,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:43:25,889.889 INFO    ] Initializing speech engine...
[2026-10-25 06:43:25,908.908 INFO    ] 2026-10-25 06:43:25
[2026-10-25 06:43:26,158.158 INFO    ] 2026-10-25 06:43:26
[2026-10-25 06:43:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:43:26,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:43:26,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:43:26,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:43:26,595.595 INFO    ] time= 25/10/2026 06:43:26
[2026-10-25 06:43:26,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:43:26,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:43:26,779.779 INFO    ] No existing commands found in stream
[2026-10-25 06:43:31,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:43:31,793.793 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 06:43:35,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:43:35,473.473 INFO    ] Checking for system updates...
[2026-10-25 06:43:35,512.512 INFO    ] 200
[2026-10-25 06:43:35,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:35,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:43:35,570.570 INFO    ] No update needed
[2026-10-25 06:43:35,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 06:43:35,610.610 INFO    ] 200
[2026-10-25 06:43:35,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:35,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:43:35,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:43:35,721.721 INFO    ] No camera update needed
[2026-10-25 06:43:35,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:43:35,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:43:35,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:43:35,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:43:37,777.777 INFO    ] ================================================
[2026-10-25 06:43:37,792.792 INFO    ] Launching Daemon at Sun Oct 25 06:43:37 IST 2026
[2026-10-25 06:43:37,802.802 INFO    ] ================================================
[2026-10-25 06:43:38,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:43:38
[2026-10-25 06:43:38,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:43:39,260.260 INFO    ] Initializing speech engine...
[2026-10-25 06:43:39,273.273 INFO    ] 2026-10-25 06:43:39
[2026-10-25 06:43:39,538.538 INFO    ] 2026-10-25 06:43:39
[2026-10-25 06:43:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:43:39,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:43:39,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:43:40,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:43:40,070.070 INFO    ] time= 25/10/2026 06:43:40
[2026-10-25 06:43:40,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:43:40,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:43:40,211.211 INFO    ] No existing commands found in stream
[2026-10-25 06:43:45,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:43:45,235.235 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 06:43:49,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:43:49,588.588 INFO    ] Checking for system updates...
[2026-10-25 06:43:49,624.624 INFO    ] 200
[2026-10-25 06:43:49,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:49,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:43:49,692.692 INFO    ] No update needed
[2026-10-25 06:43:49,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 06:43:49,728.728 INFO    ] 200
[2026-10-25 06:43:49,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:43:49,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:43:49,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:43:49,823.823 INFO    ] No camera update needed
[2026-10-25 06:43:49,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:43:49,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:43:49,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:43:49,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:43:51,880.880 INFO    ] ================================================
[2026-10-25 06:43:51,896.896 INFO    ] Launching Daemon at Sun Oct 25 06:43:51 IST 2026
[2026-10-25 06:43:51,906.906 INFO    ] ================================================
[2026-10-25 06:43:52,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:43:52
[2026-10-25 06:43:53,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:43:53,351.351 INFO    ] Initializing speech engine...
[2026-10-25 06:43:53,357.357 INFO    ] 2026-10-25 06:43:53
[2026-10-25 06:43:53,618.618 INFO    ] 2026-10-25 06:43:53
[2026-10-25 06:43:53,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:43:53,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:43:53,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:43:54,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:43:54,105.105 INFO    ] time= 25/10/2026 06:43:54
[2026-10-25 06:43:54,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:43:54,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:43:54,295.295 INFO    ] No existing commands found in stream
[2026-10-25 06:43:59,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:43:59,331.331 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 06:43:59,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:43:59,933.933 INFO    ] Checking for system updates...
[2026-10-25 06:43:59,973.973 INFO    ] 200
[2026-10-25 06:43:59,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:00,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:00,031.031 INFO    ] No update needed
[2026-10-25 06:44:00,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 06:44:00,066.066 INFO    ] 200
[2026-10-25 06:44:00,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:00,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:44:00,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:00,163.163 INFO    ] No camera update needed
[2026-10-25 06:44:00,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:44:00,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:44:00,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:44:00,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:44:02,234.234 INFO    ] ================================================
[2026-10-25 06:44:02,255.255 INFO    ] Launching Daemon at Sun Oct 25 06:44:02 IST 2026
[2026-10-25 06:44:02,271.271 INFO    ] ================================================
[2026-10-25 06:44:02,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:44:02
[2026-10-25 06:44:03,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:44:03,857.857 INFO    ] Initializing speech engine...
[2026-10-25 06:44:03,865.865 INFO    ] 2026-10-25 06:44:03
[2026-10-25 06:44:04,136.136 INFO    ] 2026-10-25 06:44:04
[2026-10-25 06:44:04,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:44:04,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:44:04,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:44:04,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:44:04,619.619 INFO    ] time= 25/10/2026 06:44:04
[2026-10-25 06:44:04,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:44:04,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:44:04,819.819 INFO    ] No existing commands found in stream
[2026-10-25 06:44:09,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:44:09,845.845 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 06:44:12,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:44:12,791.791 INFO    ] Checking for system updates...
[2026-10-25 06:44:12,828.828 INFO    ] 200
[2026-10-25 06:44:12,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:12,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:44:12,893.893 INFO    ] No update needed
[2026-10-25 06:44:12,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 06:44:12,935.935 INFO    ] 200
[2026-10-25 06:44:12,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:12,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:44:13,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:44:13,032.032 INFO    ] No camera update needed
[2026-10-25 06:44:13,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:44:13,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:44:13,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:44:13,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:44:15,092.092 INFO    ] ================================================
[2026-10-25 06:44:15,108.108 INFO    ] Launching Daemon at Sun Oct 25 06:44:15 IST 2026
[2026-10-25 06:44:15,124.124 INFO    ] ================================================
[2026-10-25 06:44:15,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:44:15
[2026-10-25 06:44:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:44:16,564.564 INFO    ] Initializing speech engine...
[2026-10-25 06:44:16,579.579 INFO    ] 2026-10-25 06:44:16
[2026-10-25 06:44:16,864.864 INFO    ] 2026-10-25 06:44:16
[2026-10-25 06:44:16,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:44:17,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:44:17,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:44:17,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:44:17,240.240 INFO    ] time= 25/10/2026 06:44:17
[2026-10-25 06:44:17,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:44:17,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:44:17,364.364 INFO    ] No existing commands found in stream
[2026-10-25 06:44:22,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:44:22,379.379 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 06:44:26,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:44:26,205.205 INFO    ] Checking for system updates...
[2026-10-25 06:44:26,245.245 INFO    ] 200
[2026-10-25 06:44:26,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:26,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:26,314.314 INFO    ] No update needed
[2026-10-25 06:44:26,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 06:44:26,350.350 INFO    ] 200
[2026-10-25 06:44:26,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:26,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:44:26,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:26,443.443 INFO    ] No camera update needed
[2026-10-25 06:44:26,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:44:26,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:44:26,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:44:26,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:44:28,498.498 INFO    ] ================================================
[2026-10-25 06:44:28,513.513 INFO    ] Launching Daemon at Sun Oct 25 06:44:28 IST 2026
[2026-10-25 06:44:28,523.523 INFO    ] ================================================
[2026-10-25 06:44:29,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:44:29
[2026-10-25 06:44:29,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:44:29,965.965 INFO    ] Initializing speech engine...
[2026-10-25 06:44:29,974.974 INFO    ] 2026-10-25 06:44:29
[2026-10-25 06:44:30,223.223 INFO    ] 2026-10-25 06:44:30
[2026-10-25 06:44:30,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:44:30,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:44:30,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:44:32,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:44:32,454.454 INFO    ] time= 25/10/2026 06:44:32
[2026-10-25 06:44:32,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:44:32,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:44:32,571.571 INFO    ] No existing commands found in stream
[2026-10-25 06:44:37,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:44:37,586.586 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 06:44:41,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:44:41,470.470 INFO    ] Checking for system updates...
[2026-10-25 06:44:41,507.507 INFO    ] 200
[2026-10-25 06:44:41,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:41,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:41,574.574 INFO    ] No update needed
[2026-10-25 06:44:41,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 06:44:41,612.612 INFO    ] 200
[2026-10-25 06:44:41,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:41,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:44:41,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:41,707.707 INFO    ] No camera update needed
[2026-10-25 06:44:41,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:44:41,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:44:41,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:44:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:44:43,766.766 INFO    ] ================================================
[2026-10-25 06:44:43,781.781 INFO    ] Launching Daemon at Sun Oct 25 06:44:43 IST 2026
[2026-10-25 06:44:43,795.795 INFO    ] ================================================
[2026-10-25 06:44:44,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:44:44
[2026-10-25 06:44:44,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:44:45,247.247 INFO    ] Initializing speech engine...
[2026-10-25 06:44:45,256.256 INFO    ] 2026-10-25 06:44:45
[2026-10-25 06:44:45,525.525 INFO    ] 2026-10-25 06:44:45
[2026-10-25 06:44:45,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:44:45,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:44:45,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:44:45,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:44:46,037.037 INFO    ] time= 25/10/2026 06:44:45
[2026-10-25 06:44:46,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:44:46,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:44:46,189.189 INFO    ] No existing commands found in stream
[2026-10-25 06:44:51,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:44:51,222.222 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 06:44:52,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:44:52,754.754 INFO    ] Checking for system updates...
[2026-10-25 06:44:52,791.791 INFO    ] 200
[2026-10-25 06:44:52,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:52,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:52,851.851 INFO    ] No update needed
[2026-10-25 06:44:52,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 06:44:52,892.892 INFO    ] 200
[2026-10-25 06:44:52,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:44:52,941.941 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:44:52,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:44:53,002.002 INFO    ] No camera update needed
[2026-10-25 06:44:53,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:44:53,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:44:53,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:44:53,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:44:55,061.061 INFO    ] ================================================
[2026-10-25 06:44:55,076.076 INFO    ] Launching Daemon at Sun Oct 25 06:44:55 IST 2026
[2026-10-25 06:44:55,086.086 INFO    ] ================================================
[2026-10-25 06:44:55,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:44:55
[2026-10-25 06:44:56,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:44:56,690.690 INFO    ] Initializing speech engine...
[2026-10-25 06:44:56,699.699 INFO    ] 2026-10-25 06:44:56
[2026-10-25 06:44:56,974.974 INFO    ] 2026-10-25 06:44:56
[2026-10-25 06:44:57,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:44:57,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:44:57,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:44:57,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:44:57,461.461 INFO    ] time= 25/10/2026 06:44:57
[2026-10-25 06:44:57,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:44:57,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:44:57,666.666 INFO    ] No existing commands found in stream
[2026-10-25 06:45:02,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:45:02,688.688 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 06:45:06,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:45:06,221.221 INFO    ] Checking for system updates...
[2026-10-25 06:45:06,259.259 INFO    ] 200
[2026-10-25 06:45:06,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:06,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:06,319.319 INFO    ] No update needed
[2026-10-25 06:45:06,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 06:45:06,357.357 INFO    ] 200
[2026-10-25 06:45:06,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:06,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:45:06,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:06,457.457 INFO    ] No camera update needed
[2026-10-25 06:45:06,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:45:06,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:45:06,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:45:06,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:45:08,518.518 INFO    ] ================================================
[2026-10-25 06:45:08,534.534 INFO    ] Launching Daemon at Sun Oct 25 06:45:08 IST 2026
[2026-10-25 06:45:08,544.544 INFO    ] ================================================
[2026-10-25 06:45:09,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:45:09
[2026-10-25 06:45:09,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:45:10,215.215 INFO    ] Initializing speech engine...
[2026-10-25 06:45:10,224.224 INFO    ] 2026-10-25 06:45:10
[2026-10-25 06:45:10,515.515 INFO    ] 2026-10-25 06:45:10
[2026-10-25 06:45:10,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:45:10,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:45:10,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:45:10,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:45:11,025.025 INFO    ] time= 25/10/2026 06:45:10
[2026-10-25 06:45:11,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:45:11,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:45:11,207.207 INFO    ] No existing commands found in stream
[2026-10-25 06:45:16,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:45:16,233.233 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 06:45:19,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:45:19,201.201 INFO    ] Checking for system updates...
[2026-10-25 06:45:19,239.239 INFO    ] 200
[2026-10-25 06:45:19,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:19,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:45:19,299.299 INFO    ] No update needed
[2026-10-25 06:45:19,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 06:45:19,337.337 INFO    ] 200
[2026-10-25 06:45:19,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:19,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:45:19,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:45:19,552.552 INFO    ] No camera update needed
[2026-10-25 06:45:19,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:45:19,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:45:19,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:45:19,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:45:21,612.612 INFO    ] ================================================
[2026-10-25 06:45:21,627.627 INFO    ] Launching Daemon at Sun Oct 25 06:45:21 IST 2026
[2026-10-25 06:45:21,638.638 INFO    ] ================================================
[2026-10-25 06:45:22,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:45:22
[2026-10-25 06:45:22,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:45:23,088.088 INFO    ] Initializing speech engine...
[2026-10-25 06:45:23,105.105 INFO    ] 2026-10-25 06:45:23
[2026-10-25 06:45:23,394.394 INFO    ] 2026-10-25 06:45:23
[2026-10-25 06:45:23,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:45:23,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:45:23,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:45:23,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:45:23,781.781 INFO    ] time= 25/10/2026 06:45:23
[2026-10-25 06:45:23,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:45:23,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:45:23,912.912 INFO    ] No existing commands found in stream
[2026-10-25 06:45:28,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:45:28,927.927 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 06:45:32,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:45:32,016.016 INFO    ] Checking for system updates...
[2026-10-25 06:45:32,055.055 INFO    ] 200
[2026-10-25 06:45:32,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:32,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:45:32,118.118 INFO    ] No update needed
[2026-10-25 06:45:32,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 06:45:32,159.159 INFO    ] 200
[2026-10-25 06:45:32,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:32,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:45:32,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:45:32,255.255 INFO    ] No camera update needed
[2026-10-25 06:45:32,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:45:32,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:45:32,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:45:32,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:45:34,318.318 INFO    ] ================================================
[2026-10-25 06:45:34,334.334 INFO    ] Launching Daemon at Sun Oct 25 06:45:34 IST 2026
[2026-10-25 06:45:34,345.345 INFO    ] ================================================
[2026-10-25 06:45:35,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:45:35
[2026-10-25 06:45:35,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:45:36,028.028 INFO    ] Initializing speech engine...
[2026-10-25 06:45:36,035.035 INFO    ] 2026-10-25 06:45:36
[2026-10-25 06:45:36,365.365 INFO    ] 2026-10-25 06:45:36
[2026-10-25 06:45:36,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:45:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:45:36,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:45:36,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:45:36,879.879 INFO    ] time= 25/10/2026 06:45:36
[2026-10-25 06:45:36,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:45:36,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:45:37,032.032 INFO    ] No existing commands found in stream
[2026-10-25 06:45:42,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:45:42,050.050 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 06:45:43,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:45:43,681.681 INFO    ] Checking for system updates...
[2026-10-25 06:45:43,718.718 INFO    ] 200
[2026-10-25 06:45:43,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:43,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:43,779.779 INFO    ] No update needed
[2026-10-25 06:45:43,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 06:45:43,816.816 INFO    ] 200
[2026-10-25 06:45:43,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:43,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:45:43,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:43,922.922 INFO    ] No camera update needed
[2026-10-25 06:45:43,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:45:43,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:45:43,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:45:43,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:45:45,984.984 INFO    ] ================================================
[2026-10-25 06:45:46,001.001 INFO    ] Launching Daemon at Sun Oct 25 06:45:45 IST 2026
[2026-10-25 06:45:46,013.013 INFO    ] ================================================
[2026-10-25 06:45:46,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:45:46
[2026-10-25 06:45:47,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:45:47,480.480 INFO    ] Initializing speech engine...
[2026-10-25 06:45:47,486.486 INFO    ] 2026-10-25 06:45:47
[2026-10-25 06:45:47,791.791 INFO    ] 2026-10-25 06:45:47
[2026-10-25 06:45:47,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:45:48,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:45:48,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:45:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:45:48,184.184 INFO    ] time= 25/10/2026 06:45:48
[2026-10-25 06:45:48,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:45:48,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:45:48,313.313 INFO    ] No existing commands found in stream
[2026-10-25 06:45:53,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:45:53,328.328 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 06:45:57,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:45:57,038.038 INFO    ] Checking for system updates...
[2026-10-25 06:45:57,074.074 INFO    ] 200
[2026-10-25 06:45:57,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:57,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:57,132.132 INFO    ] No update needed
[2026-10-25 06:45:57,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 06:45:57,170.170 INFO    ] 200
[2026-10-25 06:45:57,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:45:57,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:45:57,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:45:57,272.272 INFO    ] No camera update needed
[2026-10-25 06:45:57,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:45:57,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:45:57,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:45:57,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:45:59,328.328 INFO    ] ================================================
[2026-10-25 06:45:59,344.344 INFO    ] Launching Daemon at Sun Oct 25 06:45:59 IST 2026
[2026-10-25 06:45:59,356.356 INFO    ] ================================================
[2026-10-25 06:45:59,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:45:59
[2026-10-25 06:46:00,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:46:00,804.804 INFO    ] Initializing speech engine...
[2026-10-25 06:46:00,829.829 INFO    ] 2026-10-25 06:46:00
[2026-10-25 06:46:01,109.109 INFO    ] 2026-10-25 06:46:01
[2026-10-25 06:46:01,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:46:02,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:46:02,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:46:02,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:46:02,709.709 INFO    ] time= 25/10/2026 06:46:02
[2026-10-25 06:46:02,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:46:02,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:46:02,796.796 INFO    ] No existing commands found in stream
[2026-10-25 06:46:07,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:46:07,813.813 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 06:46:12,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:46:12,196.196 INFO    ] Checking for system updates...
[2026-10-25 06:46:12,239.239 INFO    ] 200
[2026-10-25 06:46:12,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:12,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:12,299.299 INFO    ] No update needed
[2026-10-25 06:46:12,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 06:46:12,337.337 INFO    ] 200
[2026-10-25 06:46:12,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:12,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:46:12,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:12,439.439 INFO    ] No camera update needed
[2026-10-25 06:46:12,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:46:12,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:46:12,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:46:12,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:46:14,502.502 INFO    ] ================================================
[2026-10-25 06:46:14,518.518 INFO    ] Launching Daemon at Sun Oct 25 06:46:14 IST 2026
[2026-10-25 06:46:14,529.529 INFO    ] ================================================
[2026-10-25 06:46:15,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:46:15
[2026-10-25 06:46:15,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:46:15,946.946 INFO    ] Initializing speech engine...
[2026-10-25 06:46:15,966.966 INFO    ] 2026-10-25 06:46:15
[2026-10-25 06:46:16,217.217 INFO    ] 2026-10-25 06:46:16
[2026-10-25 06:46:16,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:46:16,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:46:16,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:46:16,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:46:16,656.656 INFO    ] time= 25/10/2026 06:46:16
[2026-10-25 06:46:16,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:46:16,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:46:16,798.798 INFO    ] No existing commands found in stream
[2026-10-25 06:46:21,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:46:21,842.842 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 06:46:23,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:46:23,157.157 INFO    ] Checking for system updates...
[2026-10-25 06:46:23,193.193 INFO    ] 200
[2026-10-25 06:46:23,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:23,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:23,250.250 INFO    ] No update needed
[2026-10-25 06:46:23,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 06:46:23,287.287 INFO    ] 200
[2026-10-25 06:46:23,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:23,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:46:23,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:23,384.384 INFO    ] No camera update needed
[2026-10-25 06:46:23,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:46:23,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:46:23,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:46:23,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:46:25,442.442 INFO    ] ================================================
[2026-10-25 06:46:25,457.457 INFO    ] Launching Daemon at Sun Oct 25 06:46:25 IST 2026
[2026-10-25 06:46:25,467.467 INFO    ] ================================================
[2026-10-25 06:46:26,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:46:26
[2026-10-25 06:46:26,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:46:26,913.913 INFO    ] Initializing speech engine...
[2026-10-25 06:46:26,920.920 INFO    ] 2026-10-25 06:46:26
[2026-10-25 06:46:27,221.221 INFO    ] 2026-10-25 06:46:27
[2026-10-25 06:46:27,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:46:27,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:46:27,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:46:27,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:46:27,652.652 INFO    ] time= 25/10/2026 06:46:27
[2026-10-25 06:46:27,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:46:27,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:46:27,742.742 INFO    ] No existing commands found in stream
[2026-10-25 06:46:32,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:46:32,760.760 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 06:46:33,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:46:33,522.522 INFO    ] Checking for system updates...
[2026-10-25 06:46:33,558.558 INFO    ] 200
[2026-10-25 06:46:33,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:33,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:33,618.618 INFO    ] No update needed
[2026-10-25 06:46:33,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 06:46:33,661.661 INFO    ] 200
[2026-10-25 06:46:33,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:33,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:46:33,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:46:33,757.757 INFO    ] No camera update needed
[2026-10-25 06:46:33,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:46:33,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:46:33,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:46:33,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:46:35,813.813 INFO    ] ================================================
[2026-10-25 06:46:35,829.829 INFO    ] Launching Daemon at Sun Oct 25 06:46:35 IST 2026
[2026-10-25 06:46:35,839.839 INFO    ] ================================================
[2026-10-25 06:46:36,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:46:36
[2026-10-25 06:46:37,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:46:37,532.532 INFO    ] Initializing speech engine...
[2026-10-25 06:46:37,537.537 INFO    ] 2026-10-25 06:46:37
[2026-10-25 06:46:37,851.851 INFO    ] 2026-10-25 06:46:37
[2026-10-25 06:46:37,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:46:38,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:46:38,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:46:38,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:46:38,374.374 INFO    ] time= 25/10/2026 06:46:38
[2026-10-25 06:46:38,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:46:38,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:46:38,531.531 INFO    ] No existing commands found in stream
[2026-10-25 06:46:43,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:46:43,551.551 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 06:46:47,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:46:47,356.356 INFO    ] Checking for system updates...
[2026-10-25 06:46:47,393.393 INFO    ] 200
[2026-10-25 06:46:47,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:47,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:46:47,451.451 INFO    ] No update needed
[2026-10-25 06:46:47,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 06:46:47,488.488 INFO    ] 200
[2026-10-25 06:46:47,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:47,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:46:47,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:46:47,589.589 INFO    ] No camera update needed
[2026-10-25 06:46:47,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:46:47,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:46:47,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:46:47,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:46:49,646.646 INFO    ] ================================================
[2026-10-25 06:46:49,661.661 INFO    ] Launching Daemon at Sun Oct 25 06:46:49 IST 2026
[2026-10-25 06:46:49,672.672 INFO    ] ================================================
[2026-10-25 06:46:50,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:46:50
[2026-10-25 06:46:50,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:46:51,157.157 INFO    ] Initializing speech engine...
[2026-10-25 06:46:51,166.166 INFO    ] 2026-10-25 06:46:51
[2026-10-25 06:46:51,416.416 INFO    ] 2026-10-25 06:46:51
[2026-10-25 06:46:51,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:46:51,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:46:51,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:46:51,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:46:51,885.885 INFO    ] time= 25/10/2026 06:46:51
[2026-10-25 06:46:51,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:46:51,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:46:52,045.045 INFO    ] No existing commands found in stream
[2026-10-25 06:46:57,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:46:57,057.057 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 06:46:58,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:46:58,595.595 INFO    ] Checking for system updates...
[2026-10-25 06:46:58,631.631 INFO    ] 200
[2026-10-25 06:46:58,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:58,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:46:58,691.691 INFO    ] No update needed
[2026-10-25 06:46:58,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 06:46:58,727.727 INFO    ] 200
[2026-10-25 06:46:58,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:46:58,771.771 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:46:58,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:46:58,825.825 INFO    ] No camera update needed
[2026-10-25 06:46:58,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:46:58,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:46:58,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:46:58,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:47:00,881.881 INFO    ] ================================================
[2026-10-25 06:47:00,896.896 INFO    ] Launching Daemon at Sun Oct 25 06:47:00 IST 2026
[2026-10-25 06:47:00,908.908 INFO    ] ================================================
[2026-10-25 06:47:01,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:47:01
[2026-10-25 06:47:02,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:47:02,823.823 INFO    ] Initializing speech engine...
[2026-10-25 06:47:02,827.827 INFO    ] 2026-10-25 06:47:02
[2026-10-25 06:47:03,146.146 INFO    ] 2026-10-25 06:47:03
[2026-10-25 06:47:03,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:47:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:47:03,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:47:03,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:47:03,571.571 INFO    ] time= 25/10/2026 06:47:03
[2026-10-25 06:47:03,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:47:03,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:47:03,735.735 INFO    ] No existing commands found in stream
[2026-10-25 06:47:08,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:47:08,747.747 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 06:47:12,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:47:12,954.954 INFO    ] Checking for system updates...
[2026-10-25 06:47:12,989.989 INFO    ] 200
[2026-10-25 06:47:12,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:13,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:47:13,046.046 INFO    ] No update needed
[2026-10-25 06:47:13,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 06:47:13,086.086 INFO    ] 200
[2026-10-25 06:47:13,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:13,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:47:13,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:47:13,186.186 INFO    ] No camera update needed
[2026-10-25 06:47:13,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:47:13,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:47:13,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:47:13,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:47:15,241.241 INFO    ] ================================================
[2026-10-25 06:47:15,256.256 INFO    ] Launching Daemon at Sun Oct 25 06:47:15 IST 2026
[2026-10-25 06:47:15,267.267 INFO    ] ================================================
[2026-10-25 06:47:15,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:47:15
[2026-10-25 06:47:16,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:47:16,764.764 INFO    ] Initializing speech engine...
[2026-10-25 06:47:16,783.783 INFO    ] 2026-10-25 06:47:16
[2026-10-25 06:47:17,061.061 INFO    ] 2026-10-25 06:47:17
[2026-10-25 06:47:17,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:47:17,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:47:17,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:47:17,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:47:17,444.444 INFO    ] time= 25/10/2026 06:47:17
[2026-10-25 06:47:17,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:47:17,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:47:17,743.743 INFO    ] No existing commands found in stream
[2026-10-25 06:47:22,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:47:22,783.783 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 06:47:23,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:47:23,932.932 INFO    ] Checking for system updates...
[2026-10-25 06:47:23,969.969 INFO    ] 200
[2026-10-25 06:47:23,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:24,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:47:24,029.029 INFO    ] No update needed
[2026-10-25 06:47:24,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 06:47:24,070.070 INFO    ] 200
[2026-10-25 06:47:24,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:24,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:47:24,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:47:24,285.285 INFO    ] No camera update needed
[2026-10-25 06:47:24,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:47:24,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:47:24,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:47:24,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:47:26,344.344 INFO    ] ================================================
[2026-10-25 06:47:26,359.359 INFO    ] Launching Daemon at Sun Oct 25 06:47:26 IST 2026
[2026-10-25 06:47:26,370.370 INFO    ] ================================================
[2026-10-25 06:47:27,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:47:27
[2026-10-25 06:47:27,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:47:27,875.875 INFO    ] Initializing speech engine...
[2026-10-25 06:47:27,892.892 INFO    ] 2026-10-25 06:47:27
[2026-10-25 06:47:28,178.178 INFO    ] 2026-10-25 06:47:28
[2026-10-25 06:47:28,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:47:28,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:47:28,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:47:28,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:47:28,560.560 INFO    ] time= 25/10/2026 06:47:28
[2026-10-25 06:47:28,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:47:28,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:47:28,686.686 INFO    ] No existing commands found in stream
[2026-10-25 06:47:33,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:47:33,702.702 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 06:47:36,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:47:36,842.842 INFO    ] Checking for system updates...
[2026-10-25 06:47:36,879.879 INFO    ] 200
[2026-10-25 06:47:36,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:36,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:47:36,936.936 INFO    ] No update needed
[2026-10-25 06:47:36,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 06:47:36,972.972 INFO    ] 200
[2026-10-25 06:47:36,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:37,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:47:37,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:47:37,176.176 INFO    ] No camera update needed
[2026-10-25 06:47:37,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:47:37,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:47:37,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:47:37,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:47:39,231.231 INFO    ] ================================================
[2026-10-25 06:47:39,247.247 INFO    ] Launching Daemon at Sun Oct 25 06:47:39 IST 2026
[2026-10-25 06:47:39,257.257 INFO    ] ================================================
[2026-10-25 06:47:39,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:47:39
[2026-10-25 06:47:40,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:47:40,871.871 INFO    ] Initializing speech engine...
[2026-10-25 06:47:40,878.878 INFO    ] 2026-10-25 06:47:40
[2026-10-25 06:47:41,141.141 INFO    ] 2026-10-25 06:47:41
[2026-10-25 06:47:41,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:47:41,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:47:41,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:47:41,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:47:41,561.561 INFO    ] time= 25/10/2026 06:47:41
[2026-10-25 06:47:41,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:47:41,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:47:41,646.646 INFO    ] No existing commands found in stream
[2026-10-25 06:47:46,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:47:46,662.662 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 06:47:50,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:47:50,014.014 INFO    ] Checking for system updates...
[2026-10-25 06:47:50,050.050 INFO    ] 200
[2026-10-25 06:47:50,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:50,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:47:50,114.114 INFO    ] No update needed
[2026-10-25 06:47:50,116.116 INFO    ] Checking for camera pi updates...
[2026-10-25 06:47:50,150.150 INFO    ] 200
[2026-10-25 06:47:50,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:47:50,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:47:50,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:47:50,257.257 INFO    ] No camera update needed
[2026-10-25 06:47:50,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:47:50,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:47:50,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:47:50,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:47:52,314.314 INFO    ] ================================================
[2026-10-25 06:47:52,331.331 INFO    ] Launching Daemon at Sun Oct 25 06:47:52 IST 2026
[2026-10-25 06:47:52,343.343 INFO    ] ================================================
[2026-10-25 06:47:52,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:47:52
[2026-10-25 06:47:53,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:47:53,964.964 INFO    ] Initializing speech engine...
[2026-10-25 06:47:53,976.976 INFO    ] 2026-10-25 06:47:53
[2026-10-25 06:47:54,259.259 INFO    ] 2026-10-25 06:47:54
[2026-10-25 06:47:54,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:47:54,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:47:54,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:47:54,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:47:54,792.792 INFO    ] time= 25/10/2026 06:47:54
[2026-10-25 06:47:54,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:47:54,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:47:54,928.928 INFO    ] No existing commands found in stream
[2026-10-25 06:47:59,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:47:59,957.957 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 06:48:00,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:48:00,850.850 INFO    ] Checking for system updates...
[2026-10-25 06:48:00,887.887 INFO    ] 200
[2026-10-25 06:48:00,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:00,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:48:00,947.947 INFO    ] No update needed
[2026-10-25 06:48:00,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 06:48:00,984.984 INFO    ] 200
[2026-10-25 06:48:00,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:01,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:48:01,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:48:01,097.097 INFO    ] No camera update needed
[2026-10-25 06:48:01,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:48:01,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:48:01,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:48:01,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:48:03,157.157 INFO    ] ================================================
[2026-10-25 06:48:03,173.173 INFO    ] Launching Daemon at Sun Oct 25 06:48:03 IST 2026
[2026-10-25 06:48:03,184.184 INFO    ] ================================================
[2026-10-25 06:48:03,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:48:03
[2026-10-25 06:48:04,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:48:04,669.669 INFO    ] Initializing speech engine...
[2026-10-25 06:48:04,676.676 INFO    ] 2026-10-25 06:48:04
[2026-10-25 06:48:04,931.931 INFO    ] 2026-10-25 06:48:04
[2026-10-25 06:48:04,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:48:05,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:48:05,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:48:05,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:48:05,300.300 INFO    ] time= 25/10/2026 06:48:05
[2026-10-25 06:48:05,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:48:05,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:48:05,482.482 INFO    ] No existing commands found in stream
[2026-10-25 06:48:10,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:48:10,509.509 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 06:48:14,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:48:14,599.599 INFO    ] Checking for system updates...
[2026-10-25 06:48:14,636.636 INFO    ] 200
[2026-10-25 06:48:14,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:14,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:14,708.708 INFO    ] No update needed
[2026-10-25 06:48:14,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 06:48:14,751.751 INFO    ] 200
[2026-10-25 06:48:14,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:14,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:48:14,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:14,859.859 INFO    ] No camera update needed
[2026-10-25 06:48:14,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:48:14,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:48:14,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:48:14,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:48:16,918.918 INFO    ] ================================================
[2026-10-25 06:48:16,933.933 INFO    ] Launching Daemon at Sun Oct 25 06:48:16 IST 2026
[2026-10-25 06:48:16,944.944 INFO    ] ================================================
[2026-10-25 06:48:17,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:48:17
[2026-10-25 06:48:18,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:48:18,463.463 INFO    ] Initializing speech engine...
[2026-10-25 06:48:18,476.476 INFO    ] 2026-10-25 06:48:18
[2026-10-25 06:48:18,768.768 INFO    ] 2026-10-25 06:48:18
[2026-10-25 06:48:18,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:48:19,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:48:19,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:48:19,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:48:19,149.149 INFO    ] time= 25/10/2026 06:48:19
[2026-10-25 06:48:19,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:48:19,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:48:19,273.273 INFO    ] No existing commands found in stream
[2026-10-25 06:48:24,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:48:24,289.289 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 06:48:26,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:48:26,857.857 INFO    ] Checking for system updates...
[2026-10-25 06:48:26,897.897 INFO    ] 200
[2026-10-25 06:48:26,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:26,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:26,955.955 INFO    ] No update needed
[2026-10-25 06:48:26,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 06:48:26,992.992 INFO    ] 200
[2026-10-25 06:48:26,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:27,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:48:27,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:27,085.085 INFO    ] No camera update needed
[2026-10-25 06:48:27,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:48:27,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:48:27,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:48:27,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:48:29,141.141 INFO    ] ================================================
[2026-10-25 06:48:29,157.157 INFO    ] Launching Daemon at Sun Oct 25 06:48:29 IST 2026
[2026-10-25 06:48:29,168.168 INFO    ] ================================================
[2026-10-25 06:48:29,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:48:29
[2026-10-25 06:48:30,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:48:30,780.780 INFO    ] Initializing speech engine...
[2026-10-25 06:48:30,792.792 INFO    ] 2026-10-25 06:48:30
[2026-10-25 06:48:31,069.069 INFO    ] 2026-10-25 06:48:31
[2026-10-25 06:48:31,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:48:32,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:48:32,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:48:32,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:48:32,593.593 INFO    ] time= 25/10/2026 06:48:32
[2026-10-25 06:48:32,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:48:32,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:48:32,668.668 INFO    ] No existing commands found in stream
[2026-10-25 06:48:37,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:48:37,684.684 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 06:48:41,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:48:41,686.686 INFO    ] Checking for system updates...
[2026-10-25 06:48:41,722.722 INFO    ] 200
[2026-10-25 06:48:41,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:41,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:41,779.779 INFO    ] No update needed
[2026-10-25 06:48:41,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 06:48:41,819.819 INFO    ] 200
[2026-10-25 06:48:41,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:41,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:48:41,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:41,916.916 INFO    ] No camera update needed
[2026-10-25 06:48:41,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:48:41,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:48:41,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:48:41,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:48:43,971.971 INFO    ] ================================================
[2026-10-25 06:48:43,987.987 INFO    ] Launching Daemon at Sun Oct 25 06:48:43 IST 2026
[2026-10-25 06:48:44,998.998 INFO    ] ================================================
[2026-10-25 06:48:44,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:48:44
[2026-10-25 06:48:45,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:48:45,458.458 INFO    ] Initializing speech engine...
[2026-10-25 06:48:45,464.464 INFO    ] 2026-10-25 06:48:45
[2026-10-25 06:48:45,728.728 INFO    ] 2026-10-25 06:48:45
[2026-10-25 06:48:45,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:48:45,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:48:45,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:48:46,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:48:46,095.095 INFO    ] time= 25/10/2026 06:48:46
[2026-10-25 06:48:46,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:48:46,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:48:46,174.174 INFO    ] No existing commands found in stream
[2026-10-25 06:48:51,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:48:51,192.192 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 06:48:51,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:48:51,733.733 INFO    ] Checking for system updates...
[2026-10-25 06:48:51,770.770 INFO    ] 200
[2026-10-25 06:48:51,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:51,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:51,831.831 INFO    ] No update needed
[2026-10-25 06:48:51,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 06:48:51,872.872 INFO    ] 200
[2026-10-25 06:48:51,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:48:51,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:48:51,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:48:51,977.977 INFO    ] No camera update needed
[2026-10-25 06:48:51,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:48:51,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:48:51,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:48:51,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:48:54,036.036 INFO    ] ================================================
[2026-10-25 06:48:54,051.051 INFO    ] Launching Daemon at Sun Oct 25 06:48:54 IST 2026
[2026-10-25 06:48:54,061.061 INFO    ] ================================================
[2026-10-25 06:48:54,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:48:54
[2026-10-25 06:48:55,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:48:55,470.470 INFO    ] Initializing speech engine...
[2026-10-25 06:48:55,483.483 INFO    ] 2026-10-25 06:48:55
[2026-10-25 06:48:55,748.748 INFO    ] 2026-10-25 06:48:55
[2026-10-25 06:48:55,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:48:56,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:48:56,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:48:56,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:48:56,207.207 INFO    ] time= 25/10/2026 06:48:56
[2026-10-25 06:48:56,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:48:56,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:48:56,375.375 INFO    ] No existing commands found in stream
[2026-10-25 06:49:01,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:49:01,389.389 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 06:49:03,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:49:03,303.303 INFO    ] Checking for system updates...
[2026-10-25 06:49:03,350.350 INFO    ] 200
[2026-10-25 06:49:03,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:03,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:03,422.422 INFO    ] No update needed
[2026-10-25 06:49:03,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 06:49:03,475.475 INFO    ] 200
[2026-10-25 06:49:03,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:03,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:49:03,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:03,592.592 INFO    ] No camera update needed
[2026-10-25 06:49:03,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:49:03,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:49:03,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:49:03,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:49:05,648.648 INFO    ] ================================================
[2026-10-25 06:49:05,664.664 INFO    ] Launching Daemon at Sun Oct 25 06:49:05 IST 2026
[2026-10-25 06:49:05,674.674 INFO    ] ================================================
[2026-10-25 06:49:06,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:49:06
[2026-10-25 06:49:07,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:49:07,307.307 INFO    ] Initializing speech engine...
[2026-10-25 06:49:07,315.315 INFO    ] 2026-10-25 06:49:07
[2026-10-25 06:49:07,575.575 INFO    ] 2026-10-25 06:49:07
[2026-10-25 06:49:07,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:49:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:49:07,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:49:07,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:49:07,998.998 INFO    ] time= 25/10/2026 06:49:07
[2026-10-25 06:49:08,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:49:08,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:49:08,159.159 INFO    ] No existing commands found in stream
[2026-10-25 06:49:13,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:49:13,174.174 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 06:49:17,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:49:17,319.319 INFO    ] Checking for system updates...
[2026-10-25 06:49:17,359.359 INFO    ] 200
[2026-10-25 06:49:17,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:17,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:17,417.417 INFO    ] No update needed
[2026-10-25 06:49:17,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 06:49:17,454.454 INFO    ] 200
[2026-10-25 06:49:17,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:17,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:49:17,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:17,568.568 INFO    ] No camera update needed
[2026-10-25 06:49:17,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:49:17,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:49:17,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:49:17,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:49:19,624.624 INFO    ] ================================================
[2026-10-25 06:49:19,640.640 INFO    ] Launching Daemon at Sun Oct 25 06:49:19 IST 2026
[2026-10-25 06:49:19,651.651 INFO    ] ================================================
[2026-10-25 06:49:20,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:49:20
[2026-10-25 06:49:20,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:49:21,048.048 INFO    ] Initializing speech engine...
[2026-10-25 06:49:21,056.056 INFO    ] 2026-10-25 06:49:21
[2026-10-25 06:49:21,348.348 INFO    ] 2026-10-25 06:49:21
[2026-10-25 06:49:21,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:49:21,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:49:21,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:49:21,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:49:21,726.726 INFO    ] time= 25/10/2026 06:49:21
[2026-10-25 06:49:21,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:49:21,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:49:21,821.821 INFO    ] No existing commands found in stream
[2026-10-25 06:49:26,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:49:26,836.836 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 06:49:31,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:49:31,162.162 INFO    ] Checking for system updates...
[2026-10-25 06:49:31,200.200 INFO    ] 200
[2026-10-25 06:49:31,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:31,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:49:31,265.265 INFO    ] No update needed
[2026-10-25 06:49:31,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 06:49:31,302.302 INFO    ] 200
[2026-10-25 06:49:31,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:31,347.347 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:49:31,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:49:31,525.525 INFO    ] No camera update needed
[2026-10-25 06:49:31,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:49:31,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:49:31,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:49:31,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:49:33,584.584 INFO    ] ================================================
[2026-10-25 06:49:33,600.600 INFO    ] Launching Daemon at Sun Oct 25 06:49:33 IST 2026
[2026-10-25 06:49:33,611.611 INFO    ] ================================================
[2026-10-25 06:49:34,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:49:34
[2026-10-25 06:49:34,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:49:35,012.012 INFO    ] Initializing speech engine...
[2026-10-25 06:49:35,035.035 INFO    ] 2026-10-25 06:49:35
[2026-10-25 06:49:35,290.290 INFO    ] 2026-10-25 06:49:35
[2026-10-25 06:49:35,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:49:35,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:49:35,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:49:35,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:49:35,668.668 INFO    ] time= 25/10/2026 06:49:35
[2026-10-25 06:49:35,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:49:35,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:49:35,830.830 INFO    ] No existing commands found in stream
[2026-10-25 06:49:40,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:49:40,858.858 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 06:49:42,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:49:42,024.024 INFO    ] Checking for system updates...
[2026-10-25 06:49:42,059.059 INFO    ] 200
[2026-10-25 06:49:42,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:42,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:42,131.131 INFO    ] No update needed
[2026-10-25 06:49:42,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 06:49:42,171.171 INFO    ] 200
[2026-10-25 06:49:42,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:42,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:49:42,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:49:42,267.267 INFO    ] No camera update needed
[2026-10-25 06:49:42,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:49:42,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:49:42,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:49:42,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:49:44,326.326 INFO    ] ================================================
[2026-10-25 06:49:44,341.341 INFO    ] Launching Daemon at Sun Oct 25 06:49:44 IST 2026
[2026-10-25 06:49:44,353.353 INFO    ] ================================================
[2026-10-25 06:49:44,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:49:44
[2026-10-25 06:49:45,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:49:45,755.755 INFO    ] Initializing speech engine...
[2026-10-25 06:49:45,770.770 INFO    ] 2026-10-25 06:49:45
[2026-10-25 06:49:46,036.036 INFO    ] 2026-10-25 06:49:46
[2026-10-25 06:49:46,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:49:46,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:49:46,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:49:46,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:49:46,412.412 INFO    ] time= 25/10/2026 06:49:46
[2026-10-25 06:49:46,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:49:46,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:49:46,581.581 INFO    ] No existing commands found in stream
[2026-10-25 06:49:51,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:49:51,604.604 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 06:49:53,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:49:53,303.303 INFO    ] Checking for system updates...
[2026-10-25 06:49:53,340.340 INFO    ] 200
[2026-10-25 06:49:53,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:53,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:49:53,406.406 INFO    ] No update needed
[2026-10-25 06:49:53,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 06:49:53,443.443 INFO    ] 200
[2026-10-25 06:49:53,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:49:53,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:49:53,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:49:53,550.550 INFO    ] No camera update needed
[2026-10-25 06:49:53,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:49:53,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:49:53,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:49:53,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:49:55,605.605 INFO    ] ================================================
[2026-10-25 06:49:55,620.620 INFO    ] Launching Daemon at Sun Oct 25 06:49:55 IST 2026
[2026-10-25 06:49:55,631.631 INFO    ] ================================================
[2026-10-25 06:49:56,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:49:56
[2026-10-25 06:49:56,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:49:57,048.048 INFO    ] Initializing speech engine...
[2026-10-25 06:49:57,057.057 INFO    ] 2026-10-25 06:49:57
[2026-10-25 06:49:57,315.315 INFO    ] 2026-10-25 06:49:57
[2026-10-25 06:49:57,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:49:57,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:49:57,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:49:57,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:49:57,737.737 INFO    ] time= 25/10/2026 06:49:57
[2026-10-25 06:49:57,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:49:57,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:49:57,919.919 INFO    ] No existing commands found in stream
[2026-10-25 06:50:02,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:50:02,935.935 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 06:50:06,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:50:06,039.039 INFO    ] Checking for system updates...
[2026-10-25 06:50:06,075.075 INFO    ] 200
[2026-10-25 06:50:06,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:06,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:50:06,134.134 INFO    ] No update needed
[2026-10-25 06:50:06,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 06:50:06,176.176 INFO    ] 200
[2026-10-25 06:50:06,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:06,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:50:06,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:50:06,279.279 INFO    ] No camera update needed
[2026-10-25 06:50:06,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:50:06,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:50:06,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:50:06,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:50:08,333.333 INFO    ] ================================================
[2026-10-25 06:50:08,348.348 INFO    ] Launching Daemon at Sun Oct 25 06:50:08 IST 2026
[2026-10-25 06:50:08,359.359 INFO    ] ================================================
[2026-10-25 06:50:08,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:50:08
[2026-10-25 06:50:09,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:50:09,798.798 INFO    ] Initializing speech engine...
[2026-10-25 06:50:09,813.813 INFO    ] 2026-10-25 06:50:09
[2026-10-25 06:50:10,095.095 INFO    ] 2026-10-25 06:50:10
[2026-10-25 06:50:10,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:50:10,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:50:10,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:50:10,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:50:10,513.513 INFO    ] time= 25/10/2026 06:50:10
[2026-10-25 06:50:10,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:50:10,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:50:10,596.596 INFO    ] No existing commands found in stream
[2026-10-25 06:50:15,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:50:15,612.612 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 06:50:16,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:50:16,703.703 INFO    ] Checking for system updates...
[2026-10-25 06:50:16,746.746 INFO    ] 200
[2026-10-25 06:50:16,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:16,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:16,816.816 INFO    ] No update needed
[2026-10-25 06:50:16,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 06:50:16,855.855 INFO    ] 200
[2026-10-25 06:50:16,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:16,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:50:16,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:16,962.962 INFO    ] No camera update needed
[2026-10-25 06:50:16,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:50:16,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:50:16,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:50:16,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:50:19,027.027 INFO    ] ================================================
[2026-10-25 06:50:19,043.043 INFO    ] Launching Daemon at Sun Oct 25 06:50:19 IST 2026
[2026-10-25 06:50:19,054.054 INFO    ] ================================================
[2026-10-25 06:50:19,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:50:19
[2026-10-25 06:50:20,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:50:20,648.648 INFO    ] Initializing speech engine...
[2026-10-25 06:50:20,671.671 INFO    ] 2026-10-25 06:50:20
[2026-10-25 06:50:20,946.946 INFO    ] 2026-10-25 06:50:20
[2026-10-25 06:50:20,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:50:21,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:50:21,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:50:21,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:50:21,334.334 INFO    ] time= 25/10/2026 06:50:21
[2026-10-25 06:50:21,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:50:21,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:50:21,521.521 INFO    ] No existing commands found in stream
[2026-10-25 06:50:26,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:50:26,554.554 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 06:50:29,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:50:29,791.791 INFO    ] Checking for system updates...
[2026-10-25 06:50:29,828.828 INFO    ] 200
[2026-10-25 06:50:29,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:29,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:29,892.892 INFO    ] No update needed
[2026-10-25 06:50:29,895.895 INFO    ] Checking for camera pi updates...
[2026-10-25 06:50:29,930.930 INFO    ] 200
[2026-10-25 06:50:29,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:29,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:50:30,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:30,039.039 INFO    ] No camera update needed
[2026-10-25 06:50:30,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:50:30,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:50:30,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:50:30,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:50:32,098.098 INFO    ] ================================================
[2026-10-25 06:50:32,114.114 INFO    ] Launching Daemon at Sun Oct 25 06:50:32 IST 2026
[2026-10-25 06:50:32,126.126 INFO    ] ================================================
[2026-10-25 06:50:32,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:50:32
[2026-10-25 06:50:33,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:50:33,656.656 INFO    ] Initializing speech engine...
[2026-10-25 06:50:33,662.662 INFO    ] 2026-10-25 06:50:33
[2026-10-25 06:50:33,931.931 INFO    ] 2026-10-25 06:50:33
[2026-10-25 06:50:33,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:50:34,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:50:34,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:50:34,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:50:34,358.358 INFO    ] time= 25/10/2026 06:50:34
[2026-10-25 06:50:34,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:50:34,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:50:34,525.525 INFO    ] No existing commands found in stream
[2026-10-25 06:50:39,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:50:39,548.548 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 06:50:40,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:50:40,260.260 INFO    ] Checking for system updates...
[2026-10-25 06:50:40,301.301 INFO    ] 200
[2026-10-25 06:50:40,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:40,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:40,367.367 INFO    ] No update needed
[2026-10-25 06:50:40,369.369 INFO    ] Checking for camera pi updates...
[2026-10-25 06:50:40,403.403 INFO    ] 200
[2026-10-25 06:50:40,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:40,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:50:40,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:40,515.515 INFO    ] No camera update needed
[2026-10-25 06:50:40,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:50:40,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:50:40,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:50:40,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:50:42,572.572 INFO    ] ================================================
[2026-10-25 06:50:42,587.587 INFO    ] Launching Daemon at Sun Oct 25 06:50:42 IST 2026
[2026-10-25 06:50:42,598.598 INFO    ] ================================================
[2026-10-25 06:50:43,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:50:43
[2026-10-25 06:50:43,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:50:44,315.315 INFO    ] Initializing speech engine...
[2026-10-25 06:50:44,328.328 INFO    ] 2026-10-25 06:50:44
[2026-10-25 06:50:44,629.629 INFO    ] 2026-10-25 06:50:44
[2026-10-25 06:50:44,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:50:44,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:50:44,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:50:45,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:50:45,081.081 INFO    ] time= 25/10/2026 06:50:45
[2026-10-25 06:50:45,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:50:45,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:50:45,275.275 INFO    ] No existing commands found in stream
[2026-10-25 06:50:50,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:50:50,289.289 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 06:50:54,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:50:54,563.563 INFO    ] Checking for system updates...
[2026-10-25 06:50:54,600.600 INFO    ] 200
[2026-10-25 06:50:54,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:54,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:54,669.669 INFO    ] No update needed
[2026-10-25 06:50:54,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 06:50:54,705.705 INFO    ] 200
[2026-10-25 06:50:54,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:50:54,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:50:54,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:50:54,824.824 INFO    ] No camera update needed
[2026-10-25 06:50:54,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:50:54,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:50:54,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:50:54,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:50:56,885.885 INFO    ] ================================================
[2026-10-25 06:50:56,901.901 INFO    ] Launching Daemon at Sun Oct 25 06:50:56 IST 2026
[2026-10-25 06:50:56,912.912 INFO    ] ================================================
[2026-10-25 06:50:57,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:50:57
[2026-10-25 06:50:58,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:50:58,597.597 INFO    ] Initializing speech engine...
[2026-10-25 06:50:58,607.607 INFO    ] 2026-10-25 06:50:58
[2026-10-25 06:50:58,881.881 INFO    ] 2026-10-25 06:50:58
[2026-10-25 06:50:58,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:50:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:50:59,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:50:59,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:50:59,424.424 INFO    ] time= 25/10/2026 06:50:59
[2026-10-25 06:50:59,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:50:59,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:50:59,583.583 INFO    ] No existing commands found in stream
[2026-10-25 06:51:04,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:51:04,611.611 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 06:51:05,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:51:05,813.813 INFO    ] Checking for system updates...
[2026-10-25 06:51:05,849.849 INFO    ] 200
[2026-10-25 06:51:05,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:05,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:05,915.915 INFO    ] No update needed
[2026-10-25 06:51:05,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 06:51:05,953.953 INFO    ] 200
[2026-10-25 06:51:05,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:06,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:51:06,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:06,036.036 INFO    ] No camera update needed
[2026-10-25 06:51:06,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:51:06,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:51:06,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:51:06,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:51:08,091.091 INFO    ] ================================================
[2026-10-25 06:51:08,107.107 INFO    ] Launching Daemon at Sun Oct 25 06:51:08 IST 2026
[2026-10-25 06:51:08,117.117 INFO    ] ================================================
[2026-10-25 06:51:08,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:51:08
[2026-10-25 06:51:09,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:51:09,596.596 INFO    ] Initializing speech engine...
[2026-10-25 06:51:09,618.618 INFO    ] 2026-10-25 06:51:09
[2026-10-25 06:51:09,876.876 INFO    ] 2026-10-25 06:51:09
[2026-10-25 06:51:09,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:51:10,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:51:10,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:51:10,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:51:10,244.244 INFO    ] time= 25/10/2026 06:51:10
[2026-10-25 06:51:10,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:51:10,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:51:10,406.406 INFO    ] No existing commands found in stream
[2026-10-25 06:51:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:51:15,439.439 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 06:51:17,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:51:17,488.488 INFO    ] Checking for system updates...
[2026-10-25 06:51:17,531.531 INFO    ] 200
[2026-10-25 06:51:17,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:17,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:51:17,595.595 INFO    ] No update needed
[2026-10-25 06:51:17,597.597 INFO    ] Checking for camera pi updates...
[2026-10-25 06:51:17,631.631 INFO    ] 200
[2026-10-25 06:51:17,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:17,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:51:17,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:51:17,735.735 INFO    ] No camera update needed
[2026-10-25 06:51:17,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:51:17,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:51:17,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:51:17,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:51:19,789.789 INFO    ] ================================================
[2026-10-25 06:51:19,804.804 INFO    ] Launching Daemon at Sun Oct 25 06:51:19 IST 2026
[2026-10-25 06:51:19,815.815 INFO    ] ================================================
[2026-10-25 06:51:20,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:51:20
[2026-10-25 06:51:20,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:51:21,229.229 INFO    ] Initializing speech engine...
[2026-10-25 06:51:21,244.244 INFO    ] 2026-10-25 06:51:21
[2026-10-25 06:51:21,525.525 INFO    ] 2026-10-25 06:51:21
[2026-10-25 06:51:21,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:51:21,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:51:21,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:51:21,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:51:21,918.918 INFO    ] time= 25/10/2026 06:51:21
[2026-10-25 06:51:21,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:51:21,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:51:21,987.987 INFO    ] No existing commands found in stream
[2026-10-25 06:51:27,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:51:27,031.031 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 06:51:30,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:51:30,204.204 INFO    ] Checking for system updates...
[2026-10-25 06:51:30,245.245 INFO    ] 200
[2026-10-25 06:51:30,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:30,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:30,308.308 INFO    ] No update needed
[2026-10-25 06:51:30,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 06:51:30,345.345 INFO    ] 200
[2026-10-25 06:51:30,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:30,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:51:30,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:30,452.452 INFO    ] No camera update needed
[2026-10-25 06:51:30,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:51:30,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:51:30,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:51:30,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:51:32,511.511 INFO    ] ================================================
[2026-10-25 06:51:32,527.527 INFO    ] Launching Daemon at Sun Oct 25 06:51:32 IST 2026
[2026-10-25 06:51:32,541.541 INFO    ] ================================================
[2026-10-25 06:51:33,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:51:33
[2026-10-25 06:51:33,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:51:33,979.979 INFO    ] Initializing speech engine...
[2026-10-25 06:51:33,994.994 INFO    ] 2026-10-25 06:51:33
[2026-10-25 06:51:34,260.260 INFO    ] 2026-10-25 06:51:34
[2026-10-25 06:51:34,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:51:34,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:51:34,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:51:34,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:51:34,613.613 INFO    ] time= 25/10/2026 06:51:34
[2026-10-25 06:51:34,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:51:34,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:51:34,738.738 INFO    ] No existing commands found in stream
[2026-10-25 06:51:39,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:51:39,752.752 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 06:51:41,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:51:41,634.634 INFO    ] Checking for system updates...
[2026-10-25 06:51:41,673.673 INFO    ] 200
[2026-10-25 06:51:41,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:41,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:41,732.732 INFO    ] No update needed
[2026-10-25 06:51:41,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 06:51:41,771.771 INFO    ] 200
[2026-10-25 06:51:41,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:41,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:51:41,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:51:41,875.875 INFO    ] No camera update needed
[2026-10-25 06:51:41,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:51:41,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:51:41,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:51:41,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:51:43,931.931 INFO    ] ================================================
[2026-10-25 06:51:43,947.947 INFO    ] Launching Daemon at Sun Oct 25 06:51:43 IST 2026
[2026-10-25 06:51:43,958.958 INFO    ] ================================================
[2026-10-25 06:51:44,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:51:44
[2026-10-25 06:51:45,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:51:45,362.362 INFO    ] Initializing speech engine...
[2026-10-25 06:51:45,386.386 INFO    ] 2026-10-25 06:51:45
[2026-10-25 06:51:45,657.657 INFO    ] 2026-10-25 06:51:45
[2026-10-25 06:51:45,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:51:45,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:51:45,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:51:46,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:51:46,071.071 INFO    ] time= 25/10/2026 06:51:46
[2026-10-25 06:51:46,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:51:46,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:51:46,230.230 INFO    ] No existing commands found in stream
[2026-10-25 06:51:51,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:51:51,258.258 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 06:51:55,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:51:55,135.135 INFO    ] Checking for system updates...
[2026-10-25 06:51:55,172.172 INFO    ] 200
[2026-10-25 06:51:55,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:55,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:51:55,231.231 INFO    ] No update needed
[2026-10-25 06:51:55,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 06:51:55,268.268 INFO    ] 200
[2026-10-25 06:51:55,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:51:55,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:51:55,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:51:55,384.384 INFO    ] No camera update needed
[2026-10-25 06:51:55,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:51:55,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:51:55,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:51:55,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:51:57,442.442 INFO    ] ================================================
[2026-10-25 06:51:57,457.457 INFO    ] Launching Daemon at Sun Oct 25 06:51:57 IST 2026
[2026-10-25 06:51:57,468.468 INFO    ] ================================================
[2026-10-25 06:51:58,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:51:58
[2026-10-25 06:51:58,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:51:59,071.071 INFO    ] Initializing speech engine...
[2026-10-25 06:51:59,079.079 INFO    ] 2026-10-25 06:51:59
[2026-10-25 06:51:59,361.361 INFO    ] 2026-10-25 06:51:59
[2026-10-25 06:51:59,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:51:59,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:51:59,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:51:59,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:51:59,896.896 INFO    ] time= 25/10/2026 06:51:59
[2026-10-25 06:51:59,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:51:59,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:00,049.049 INFO    ] No existing commands found in stream
[2026-10-25 06:52:05,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:52:05,068.068 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 06:52:06,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:52:06,287.287 INFO    ] Checking for system updates...
[2026-10-25 06:52:06,324.324 INFO    ] 200
[2026-10-25 06:52:06,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:06,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:06,384.384 INFO    ] No update needed
[2026-10-25 06:52:06,387.387 INFO    ] Checking for camera pi updates...
[2026-10-25 06:52:06,421.421 INFO    ] 200
[2026-10-25 06:52:06,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:06,467.467 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:52:06,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:06,519.519 INFO    ] No camera update needed
[2026-10-25 06:52:06,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:52:06,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:52:06,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:52:06,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:52:08,577.577 INFO    ] ================================================
[2026-10-25 06:52:08,594.594 INFO    ] Launching Daemon at Sun Oct 25 06:52:08 IST 2026
[2026-10-25 06:52:08,605.605 INFO    ] ================================================
[2026-10-25 06:52:09,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:52:09
[2026-10-25 06:52:09,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:52:10,069.069 INFO    ] Initializing speech engine...
[2026-10-25 06:52:10,078.078 INFO    ] 2026-10-25 06:52:10
[2026-10-25 06:52:10,330.330 INFO    ] 2026-10-25 06:52:10
[2026-10-25 06:52:10,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:52:10,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:52:10,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:52:10,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:52:10,798.798 INFO    ] time= 25/10/2026 06:52:10
[2026-10-25 06:52:10,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:52:10,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:10,969.969 INFO    ] No existing commands found in stream
[2026-10-25 06:52:16,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:52:16,005.005 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 06:52:17,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:52:17,129.129 INFO    ] Checking for system updates...
[2026-10-25 06:52:17,170.170 INFO    ] 200
[2026-10-25 06:52:17,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:17,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:52:17,234.234 INFO    ] No update needed
[2026-10-25 06:52:17,237.237 INFO    ] Checking for camera pi updates...
[2026-10-25 06:52:17,277.277 INFO    ] 200
[2026-10-25 06:52:17,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:17,320.320 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:52:17,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:52:17,383.383 INFO    ] No camera update needed
[2026-10-25 06:52:17,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:52:17,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:52:17,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:52:17,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:52:19,439.439 INFO    ] ================================================
[2026-10-25 06:52:19,455.455 INFO    ] Launching Daemon at Sun Oct 25 06:52:19 IST 2026
[2026-10-25 06:52:19,465.465 INFO    ] ================================================
[2026-10-25 06:52:20,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:52:20
[2026-10-25 06:52:20,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:52:20,920.920 INFO    ] Initializing speech engine...
[2026-10-25 06:52:20,929.929 INFO    ] 2026-10-25 06:52:20
[2026-10-25 06:52:21,182.182 INFO    ] 2026-10-25 06:52:21
[2026-10-25 06:52:21,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:52:21,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:52:21,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:52:21,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:52:21,643.643 INFO    ] time= 25/10/2026 06:52:21
[2026-10-25 06:52:21,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:52:21,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:21,791.791 INFO    ] No existing commands found in stream
[2026-10-25 06:52:26,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:52:26,805.805 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 06:52:30,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:52:30,039.039 INFO    ] Checking for system updates...
[2026-10-25 06:52:30,076.076 INFO    ] 200
[2026-10-25 06:52:30,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:30,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:52:30,134.134 INFO    ] No update needed
[2026-10-25 06:52:30,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 06:52:30,169.169 INFO    ] 200
[2026-10-25 06:52:30,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:30,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:52:30,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:52:30,264.264 INFO    ] No camera update needed
[2026-10-25 06:52:30,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:52:30,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:52:30,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:52:30,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:52:32,320.320 INFO    ] ================================================
[2026-10-25 06:52:32,336.336 INFO    ] Launching Daemon at Sun Oct 25 06:52:32 IST 2026
[2026-10-25 06:52:32,348.348 INFO    ] ================================================
[2026-10-25 06:52:33,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:52:33
[2026-10-25 06:52:33,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:52:34,060.060 INFO    ] Initializing speech engine...
[2026-10-25 06:52:34,072.072 INFO    ] 2026-10-25 06:52:34
[2026-10-25 06:52:34,336.336 INFO    ] 2026-10-25 06:52:34
[2026-10-25 06:52:34,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:52:34,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:52:34,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:52:34,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:52:34,741.741 INFO    ] time= 25/10/2026 06:52:34
[2026-10-25 06:52:34,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:52:34,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:34,825.825 INFO    ] No existing commands found in stream
[2026-10-25 06:52:39,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:52:39,841.841 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 06:52:41,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:52:41,870.870 INFO    ] Checking for system updates...
[2026-10-25 06:52:41,906.906 INFO    ] 200
[2026-10-25 06:52:41,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:41,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:41,970.970 INFO    ] No update needed
[2026-10-25 06:52:41,973.973 INFO    ] Checking for camera pi updates...
[2026-10-25 06:52:42,007.007 INFO    ] 200
[2026-10-25 06:52:42,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:42,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:52:42,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:42,107.107 INFO    ] No camera update needed
[2026-10-25 06:52:42,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:52:42,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:52:42,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:52:42,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:52:44,163.163 INFO    ] ================================================
[2026-10-25 06:52:44,178.178 INFO    ] Launching Daemon at Sun Oct 25 06:52:44 IST 2026
[2026-10-25 06:52:44,189.189 INFO    ] ================================================
[2026-10-25 06:52:44,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:52:44
[2026-10-25 06:52:45,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:52:45,608.608 INFO    ] Initializing speech engine...
[2026-10-25 06:52:45,617.617 INFO    ] 2026-10-25 06:52:45
[2026-10-25 06:52:45,877.877 INFO    ] 2026-10-25 06:52:45
[2026-10-25 06:52:45,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:52:46,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:52:46,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:52:46,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:52:46,350.350 INFO    ] time= 25/10/2026 06:52:46
[2026-10-25 06:52:46,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:52:46,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:46,544.544 INFO    ] No existing commands found in stream
[2026-10-25 06:52:51,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:52:51,574.574 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 06:52:53,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:52:53,863.863 INFO    ] Checking for system updates...
[2026-10-25 06:52:53,900.900 INFO    ] 200
[2026-10-25 06:52:53,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:53,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:53,958.958 INFO    ] No update needed
[2026-10-25 06:52:53,960.960 INFO    ] Checking for camera pi updates...
[2026-10-25 06:52:53,994.994 INFO    ] 200
[2026-10-25 06:52:53,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:52:54,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:52:54,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:52:54,086.086 INFO    ] No camera update needed
[2026-10-25 06:52:54,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:52:54,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:52:54,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:52:54,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:52:56,140.140 INFO    ] ================================================
[2026-10-25 06:52:56,155.155 INFO    ] Launching Daemon at Sun Oct 25 06:52:56 IST 2026
[2026-10-25 06:52:56,172.172 INFO    ] ================================================
[2026-10-25 06:52:56,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:52:56
[2026-10-25 06:52:57,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:52:57,596.596 INFO    ] Initializing speech engine...
[2026-10-25 06:52:57,609.609 INFO    ] 2026-10-25 06:52:57
[2026-10-25 06:52:57,887.887 INFO    ] 2026-10-25 06:52:57
[2026-10-25 06:52:57,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:52:58,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:52:58,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:52:58,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:52:58,301.301 INFO    ] time= 25/10/2026 06:52:58
[2026-10-25 06:52:58,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:52:58,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:52:58,465.465 INFO    ] No existing commands found in stream
[2026-10-25 06:53:03,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:53:03,493.493 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 06:53:07,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:53:07,869.869 INFO    ] Checking for system updates...
[2026-10-25 06:53:07,906.906 INFO    ] 200
[2026-10-25 06:53:07,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:07,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:53:07,963.963 INFO    ] No update needed
[2026-10-25 06:53:07,966.966 INFO    ] Checking for camera pi updates...
[2026-10-25 06:53:08,004.004 INFO    ] 200
[2026-10-25 06:53:08,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:08,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:53:08,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:53:08,107.107 INFO    ] No camera update needed
[2026-10-25 06:53:08,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:53:08,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:53:08,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:53:08,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:53:10,163.163 INFO    ] ================================================
[2026-10-25 06:53:10,179.179 INFO    ] Launching Daemon at Sun Oct 25 06:53:10 IST 2026
[2026-10-25 06:53:10,191.191 INFO    ] ================================================
[2026-10-25 06:53:10,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:53:10
[2026-10-25 06:53:11,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:53:11,792.792 INFO    ] Initializing speech engine...
[2026-10-25 06:53:11,803.803 INFO    ] 2026-10-25 06:53:11
[2026-10-25 06:53:12,087.087 INFO    ] 2026-10-25 06:53:12
[2026-10-25 06:53:12,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:53:12,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:53:12,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:53:12,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:53:12,618.618 INFO    ] time= 25/10/2026 06:53:12
[2026-10-25 06:53:12,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:53:12,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:53:12,773.773 INFO    ] No existing commands found in stream
[2026-10-25 06:53:17,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:53:17,791.791 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 06:53:19,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:53:19,369.369 INFO    ] Checking for system updates...
[2026-10-25 06:53:19,410.410 INFO    ] 200
[2026-10-25 06:53:19,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:19,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:19,467.467 INFO    ] No update needed
[2026-10-25 06:53:19,469.469 INFO    ] Checking for camera pi updates...
[2026-10-25 06:53:19,506.506 INFO    ] 200
[2026-10-25 06:53:19,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:19,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:53:19,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:19,612.612 INFO    ] No camera update needed
[2026-10-25 06:53:19,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:53:19,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:53:19,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:53:19,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:53:21,668.668 INFO    ] ================================================
[2026-10-25 06:53:21,684.684 INFO    ] Launching Daemon at Sun Oct 25 06:53:21 IST 2026
[2026-10-25 06:53:21,695.695 INFO    ] ================================================
[2026-10-25 06:53:22,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:53:22
[2026-10-25 06:53:22,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:53:23,106.106 INFO    ] Initializing speech engine...
[2026-10-25 06:53:23,125.125 INFO    ] 2026-10-25 06:53:23
[2026-10-25 06:53:23,372.372 INFO    ] 2026-10-25 06:53:23
[2026-10-25 06:53:23,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:53:23,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:53:23,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:53:23,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:53:23,833.833 INFO    ] time= 25/10/2026 06:53:23
[2026-10-25 06:53:23,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:53:23,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:53:24,026.026 INFO    ] No existing commands found in stream
[2026-10-25 06:53:29,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:53:29,061.061 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 06:53:32,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:53:32,751.751 INFO    ] Checking for system updates...
[2026-10-25 06:53:32,788.788 INFO    ] 200
[2026-10-25 06:53:32,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:32,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:53:32,846.846 INFO    ] No update needed
[2026-10-25 06:53:32,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 06:53:32,882.882 INFO    ] 200
[2026-10-25 06:53:32,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:32,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:53:32,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:53:32,959.959 INFO    ] No camera update needed
[2026-10-25 06:53:32,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:53:32,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:53:32,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:53:32,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:53:35,016.016 INFO    ] ================================================
[2026-10-25 06:53:35,032.032 INFO    ] Launching Daemon at Sun Oct 25 06:53:35 IST 2026
[2026-10-25 06:53:35,043.043 INFO    ] ================================================
[2026-10-25 06:53:35,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:53:35
[2026-10-25 06:53:36,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:53:36,537.537 INFO    ] Initializing speech engine...
[2026-10-25 06:53:36,546.546 INFO    ] 2026-10-25 06:53:36
[2026-10-25 06:53:36,839.839 INFO    ] 2026-10-25 06:53:36
[2026-10-25 06:53:36,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:53:37,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:53:37,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:53:37,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:53:37,261.261 INFO    ] time= 25/10/2026 06:53:37
[2026-10-25 06:53:37,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:53:37,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:53:37,344.344 INFO    ] No existing commands found in stream
[2026-10-25 06:53:42,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:53:42,359.359 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 06:53:46,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:53:46,114.114 INFO    ] Checking for system updates...
[2026-10-25 06:53:46,150.150 INFO    ] 200
[2026-10-25 06:53:46,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:46,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:46,209.209 INFO    ] No update needed
[2026-10-25 06:53:46,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 06:53:46,249.249 INFO    ] 200
[2026-10-25 06:53:46,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:46,299.299 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:53:46,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:46,472.472 INFO    ] No camera update needed
[2026-10-25 06:53:46,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:53:46,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:53:46,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:53:46,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:53:48,528.528 INFO    ] ================================================
[2026-10-25 06:53:48,543.543 INFO    ] Launching Daemon at Sun Oct 25 06:53:48 IST 2026
[2026-10-25 06:53:48,554.554 INFO    ] ================================================
[2026-10-25 06:53:49,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:53:49
[2026-10-25 06:53:49,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:53:50,029.029 INFO    ] Initializing speech engine...
[2026-10-25 06:53:50,035.035 INFO    ] 2026-10-25 06:53:50
[2026-10-25 06:53:50,282.282 INFO    ] 2026-10-25 06:53:50
[2026-10-25 06:53:50,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:53:50,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:53:50,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:53:50,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:53:50,758.758 INFO    ] time= 25/10/2026 06:53:50
[2026-10-25 06:53:50,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:53:50,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:53:50,900.900 INFO    ] No existing commands found in stream
[2026-10-25 06:53:55,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:53:55,915.915 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 06:53:59,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:53:59,070.070 INFO    ] Checking for system updates...
[2026-10-25 06:53:59,116.116 INFO    ] 200
[2026-10-25 06:53:59,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:59,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:59,183.183 INFO    ] No update needed
[2026-10-25 06:53:59,186.186 INFO    ] Checking for camera pi updates...
[2026-10-25 06:53:59,226.226 INFO    ] 200
[2026-10-25 06:53:59,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:53:59,278.278 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:53:59,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:53:59,333.333 INFO    ] No camera update needed
[2026-10-25 06:53:59,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:53:59,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:53:59,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:53:59,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:54:01,409.409 INFO    ] ================================================
[2026-10-25 06:54:01,451.451 INFO    ] Launching Daemon at Sun Oct 25 06:54:01 IST 2026
[2026-10-25 06:54:01,475.475 INFO    ] ================================================
[2026-10-25 06:54:02,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:54:02
[2026-10-25 06:54:02,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:54:03,008.008 INFO    ] Initializing speech engine...
[2026-10-25 06:54:03,015.015 INFO    ] 2026-10-25 06:54:03
[2026-10-25 06:54:03,316.316 INFO    ] 2026-10-25 06:54:03
[2026-10-25 06:54:03,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:54:03,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:54:03,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:54:03,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:54:03,694.694 INFO    ] time= 25/10/2026 06:54:03
[2026-10-25 06:54:03,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:54:03,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:54:03,879.879 INFO    ] No existing commands found in stream
[2026-10-25 06:54:08,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:54:08,903.903 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 06:54:11,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:54:11,817.817 INFO    ] Checking for system updates...
[2026-10-25 06:54:11,854.854 INFO    ] 200
[2026-10-25 06:54:11,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:11,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:54:11,912.912 INFO    ] No update needed
[2026-10-25 06:54:11,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 06:54:11,954.954 INFO    ] 200
[2026-10-25 06:54:11,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:11,998.998 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:54:12,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:54:12,072.072 INFO    ] No camera update needed
[2026-10-25 06:54:12,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:54:12,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:54:12,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:54:12,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:54:14,126.126 INFO    ] ================================================
[2026-10-25 06:54:14,142.142 INFO    ] Launching Daemon at Sun Oct 25 06:54:14 IST 2026
[2026-10-25 06:54:14,157.157 INFO    ] ================================================
[2026-10-25 06:54:14,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:54:14
[2026-10-25 06:54:15,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:54:15,554.554 INFO    ] Initializing speech engine...
[2026-10-25 06:54:15,572.572 INFO    ] 2026-10-25 06:54:15
[2026-10-25 06:54:15,828.828 INFO    ] 2026-10-25 06:54:15
[2026-10-25 06:54:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:54:16,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:54:16,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:54:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:54:16,320.320 INFO    ] time= 25/10/2026 06:54:16
[2026-10-25 06:54:16,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:54:16,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:54:16,518.518 INFO    ] No existing commands found in stream
[2026-10-25 06:54:21,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:54:21,547.547 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 06:54:25,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:54:25,969.969 INFO    ] Checking for system updates...
[2026-10-25 06:54:26,006.006 INFO    ] 200
[2026-10-25 06:54:26,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:26,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:54:26,071.071 INFO    ] No update needed
[2026-10-25 06:54:26,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 06:54:26,107.107 INFO    ] 200
[2026-10-25 06:54:26,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:26,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:54:26,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:54:26,213.213 INFO    ] No camera update needed
[2026-10-25 06:54:26,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:54:26,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:54:26,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:54:26,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:54:28,270.270 INFO    ] ================================================
[2026-10-25 06:54:28,285.285 INFO    ] Launching Daemon at Sun Oct 25 06:54:28 IST 2026
[2026-10-25 06:54:28,296.296 INFO    ] ================================================
[2026-10-25 06:54:28,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:54:28
[2026-10-25 06:54:29,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:54:29,797.797 INFO    ] Initializing speech engine...
[2026-10-25 06:54:29,807.807 INFO    ] 2026-10-25 06:54:29
[2026-10-25 06:54:30,079.079 INFO    ] 2026-10-25 06:54:30
[2026-10-25 06:54:30,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:54:30,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:54:30,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:54:30,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:54:30,593.593 INFO    ] time= 25/10/2026 06:54:30
[2026-10-25 06:54:30,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:54:30,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:54:30,789.789 INFO    ] No existing commands found in stream
[2026-10-25 06:54:35,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:54:35,819.819 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 06:54:40,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:54:40,206.206 INFO    ] Checking for system updates...
[2026-10-25 06:54:40,244.244 INFO    ] 200
[2026-10-25 06:54:40,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:40,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:54:40,313.313 INFO    ] No update needed
[2026-10-25 06:54:40,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 06:54:40,350.350 INFO    ] 200
[2026-10-25 06:54:40,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:40,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:54:40,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:54:40,452.452 INFO    ] No camera update needed
[2026-10-25 06:54:40,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:54:40,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:54:40,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:54:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:54:42,508.508 INFO    ] ================================================
[2026-10-25 06:54:42,523.523 INFO    ] Launching Daemon at Sun Oct 25 06:54:42 IST 2026
[2026-10-25 06:54:42,533.533 INFO    ] ================================================
[2026-10-25 06:54:43,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:54:43
[2026-10-25 06:54:43,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:54:44,171.171 INFO    ] Initializing speech engine...
[2026-10-25 06:54:44,180.180 INFO    ] 2026-10-25 06:54:44
[2026-10-25 06:54:44,456.456 INFO    ] 2026-10-25 06:54:44
[2026-10-25 06:54:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:54:44,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:54:44,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:54:44,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:54:44,951.951 INFO    ] time= 25/10/2026 06:54:44
[2026-10-25 06:54:45,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:54:45,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:54:45,142.142 INFO    ] No existing commands found in stream
[2026-10-25 06:54:50,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:54:50,176.176 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 06:54:54,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:54:54,498.498 INFO    ] Checking for system updates...
[2026-10-25 06:54:54,538.538 INFO    ] 200
[2026-10-25 06:54:54,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:54,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:54:54,603.603 INFO    ] No update needed
[2026-10-25 06:54:54,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 06:54:54,639.639 INFO    ] 200
[2026-10-25 06:54:54,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:54:54,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:54:54,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:54:54,742.742 INFO    ] No camera update needed
[2026-10-25 06:54:54,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:54:54,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:54:54,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:54:54,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:54:56,796.796 INFO    ] ================================================
[2026-10-25 06:54:56,811.811 INFO    ] Launching Daemon at Sun Oct 25 06:54:56 IST 2026
[2026-10-25 06:54:56,822.822 INFO    ] ================================================
[2026-10-25 06:54:57,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:54:57
[2026-10-25 06:54:58,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:54:58,400.400 INFO    ] Initializing speech engine...
[2026-10-25 06:54:58,415.415 INFO    ] 2026-10-25 06:54:58
[2026-10-25 06:54:58,725.725 INFO    ] 2026-10-25 06:54:58
[2026-10-25 06:54:58,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:54:59,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:54:59,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:54:59,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:54:59,232.232 INFO    ] time= 25/10/2026 06:54:59
[2026-10-25 06:54:59,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:54:59,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:54:59,403.403 INFO    ] No existing commands found in stream
[2026-10-25 06:55:04,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:55:04,434.434 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 06:55:07,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:55:07,714.714 INFO    ] Checking for system updates...
[2026-10-25 06:55:07,755.755 INFO    ] 200
[2026-10-25 06:55:07,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:07,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:07,815.815 INFO    ] No update needed
[2026-10-25 06:55:07,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 06:55:07,852.852 INFO    ] 200
[2026-10-25 06:55:07,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:07,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:55:07,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:07,953.953 INFO    ] No camera update needed
[2026-10-25 06:55:07,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:55:07,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:55:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:55:07,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:55:10,010.010 INFO    ] ================================================
[2026-10-25 06:55:10,025.025 INFO    ] Launching Daemon at Sun Oct 25 06:55:10 IST 2026
[2026-10-25 06:55:10,036.036 INFO    ] ================================================
[2026-10-25 06:55:10,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:55:10
[2026-10-25 06:55:11,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:55:11,451.451 INFO    ] Initializing speech engine...
[2026-10-25 06:55:11,460.460 INFO    ] 2026-10-25 06:55:11
[2026-10-25 06:55:11,705.705 INFO    ] 2026-10-25 06:55:11
[2026-10-25 06:55:11,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:55:11,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:55:11,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:55:12,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:55:12,071.071 INFO    ] time= 25/10/2026 06:55:12
[2026-10-25 06:55:12,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:55:12,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:55:12,252.252 INFO    ] No existing commands found in stream
[2026-10-25 06:55:17,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:55:17,279.279 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 06:55:19,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 06:55:19,931.931 INFO    ] Checking for system updates...
[2026-10-25 06:55:19,971.971 INFO    ] 200
[2026-10-25 06:55:19,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:20,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:20,028.028 INFO    ] No update needed
[2026-10-25 06:55:20,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 06:55:20,068.068 INFO    ] 200
[2026-10-25 06:55:20,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:20,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:55:20,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:20,172.172 INFO    ] No camera update needed
[2026-10-25 06:55:20,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:55:20,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:55:20,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:55:20,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:55:22,228.228 INFO    ] ================================================
[2026-10-25 06:55:22,243.243 INFO    ] Launching Daemon at Sun Oct 25 06:55:22 IST 2026
[2026-10-25 06:55:22,253.253 INFO    ] ================================================
[2026-10-25 06:55:22,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:55:22
[2026-10-25 06:55:23,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:55:23,732.732 INFO    ] Initializing speech engine...
[2026-10-25 06:55:23,740.740 INFO    ] 2026-10-25 06:55:23
[2026-10-25 06:55:23,999.999 INFO    ] 2026-10-25 06:55:23
[2026-10-25 06:55:24,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:55:24,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:55:24,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:55:24,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:55:24,471.471 INFO    ] time= 25/10/2026 06:55:24
[2026-10-25 06:55:24,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:55:24,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:55:24,666.666 INFO    ] No existing commands found in stream
[2026-10-25 06:55:29,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:55:29,705.705 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 06:55:32,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:55:32,739.739 INFO    ] Checking for system updates...
[2026-10-25 06:55:32,779.779 INFO    ] 200
[2026-10-25 06:55:32,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:32,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:55:32,844.844 INFO    ] No update needed
[2026-10-25 06:55:32,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 06:55:32,880.880 INFO    ] 200
[2026-10-25 06:55:32,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:32,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:55:32,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:55:32,971.971 INFO    ] No camera update needed
[2026-10-25 06:55:32,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:55:32,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:55:32,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:55:32,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:55:35,026.026 INFO    ] ================================================
[2026-10-25 06:55:35,041.041 INFO    ] Launching Daemon at Sun Oct 25 06:55:35 IST 2026
[2026-10-25 06:55:35,052.052 INFO    ] ================================================
[2026-10-25 06:55:35,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:55:35
[2026-10-25 06:55:36,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:55:36,524.524 INFO    ] Initializing speech engine...
[2026-10-25 06:55:36,532.532 INFO    ] 2026-10-25 06:55:36
[2026-10-25 06:55:36,792.792 INFO    ] 2026-10-25 06:55:36
[2026-10-25 06:55:36,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:55:37,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:55:37,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:55:37,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:55:37,254.254 INFO    ] time= 25/10/2026 06:55:37
[2026-10-25 06:55:37,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:55:37,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:55:37,398.398 INFO    ] No existing commands found in stream
[2026-10-25 06:55:42,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:55:42,413.413 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 06:55:44,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:55:44,288.288 INFO    ] Checking for system updates...
[2026-10-25 06:55:44,325.325 INFO    ] 200
[2026-10-25 06:55:44,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:44,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:44,386.386 INFO    ] No update needed
[2026-10-25 06:55:44,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 06:55:44,423.423 INFO    ] 200
[2026-10-25 06:55:44,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:44,467.467 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:55:44,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:44,519.519 INFO    ] No camera update needed
[2026-10-25 06:55:44,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:55:44,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:55:44,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:55:44,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:55:46,588.588 INFO    ] ================================================
[2026-10-25 06:55:46,603.603 INFO    ] Launching Daemon at Sun Oct 25 06:55:46 IST 2026
[2026-10-25 06:55:46,613.613 INFO    ] ================================================
[2026-10-25 06:55:47,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:55:47
[2026-10-25 06:55:47,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:55:48,028.028 INFO    ] Initializing speech engine...
[2026-10-25 06:55:48,037.037 INFO    ] 2026-10-25 06:55:48
[2026-10-25 06:55:48,282.282 INFO    ] 2026-10-25 06:55:48
[2026-10-25 06:55:48,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:55:48,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:55:48,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:55:48,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:55:48,744.744 INFO    ] time= 25/10/2026 06:55:48
[2026-10-25 06:55:48,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:55:48,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:55:48,958.958 INFO    ] No existing commands found in stream
[2026-10-25 06:55:53,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:55:53,991.991 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 06:55:55,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:55:55,296.296 INFO    ] Checking for system updates...
[2026-10-25 06:55:55,334.334 INFO    ] 200
[2026-10-25 06:55:55,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:55,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:55,401.401 INFO    ] No update needed
[2026-10-25 06:55:55,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 06:55:55,439.439 INFO    ] 200
[2026-10-25 06:55:55,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:55:55,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:55:55,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:55:55,656.656 INFO    ] No camera update needed
[2026-10-25 06:55:55,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:55:55,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:55:55,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:55:55,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:55:57,715.715 INFO    ] ================================================
[2026-10-25 06:55:57,729.729 INFO    ] Launching Daemon at Sun Oct 25 06:55:57 IST 2026
[2026-10-25 06:55:57,740.740 INFO    ] ================================================
[2026-10-25 06:55:58,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:55:58
[2026-10-25 06:55:58,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:55:59,158.158 INFO    ] Initializing speech engine...
[2026-10-25 06:55:59,173.173 INFO    ] 2026-10-25 06:55:59
[2026-10-25 06:55:59,434.434 INFO    ] 2026-10-25 06:55:59
[2026-10-25 06:55:59,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:55:59,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:55:59,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:55:59,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:55:59,914.914 INFO    ] time= 25/10/2026 06:55:59
[2026-10-25 06:55:59,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:55:59,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:56:00,052.052 INFO    ] No existing commands found in stream
[2026-10-25 06:56:05,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:56:05,066.066 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 06:56:06,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:56:06,736.736 INFO    ] Checking for system updates...
[2026-10-25 06:56:06,777.777 INFO    ] 200
[2026-10-25 06:56:06,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:06,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:06,840.840 INFO    ] No update needed
[2026-10-25 06:56:06,843.843 INFO    ] Checking for camera pi updates...
[2026-10-25 06:56:06,877.877 INFO    ] 200
[2026-10-25 06:56:06,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:06,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:56:06,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:06,972.972 INFO    ] No camera update needed
[2026-10-25 06:56:06,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:56:06,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:56:06,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:56:06,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:56:09,028.028 INFO    ] ================================================
[2026-10-25 06:56:09,043.043 INFO    ] Launching Daemon at Sun Oct 25 06:56:09 IST 2026
[2026-10-25 06:56:09,054.054 INFO    ] ================================================
[2026-10-25 06:56:09,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:56:09
[2026-10-25 06:56:10,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:56:10,557.557 INFO    ] Initializing speech engine...
[2026-10-25 06:56:10,568.568 INFO    ] 2026-10-25 06:56:10
[2026-10-25 06:56:10,840.840 INFO    ] 2026-10-25 06:56:10
[2026-10-25 06:56:10,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:56:11,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:56:11,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:56:11,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:56:11,323.323 INFO    ] time= 25/10/2026 06:56:11
[2026-10-25 06:56:11,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:56:11,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:56:11,460.460 INFO    ] No existing commands found in stream
[2026-10-25 06:56:16,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:56:16,475.475 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 06:56:18,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:56:18,071.071 INFO    ] Checking for system updates...
[2026-10-25 06:56:18,107.107 INFO    ] 200
[2026-10-25 06:56:18,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:18,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:18,170.170 INFO    ] No update needed
[2026-10-25 06:56:18,172.172 INFO    ] Checking for camera pi updates...
[2026-10-25 06:56:18,207.207 INFO    ] 200
[2026-10-25 06:56:18,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:18,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:56:18,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:18,306.306 INFO    ] No camera update needed
[2026-10-25 06:56:18,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:56:18,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:56:18,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:56:18,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:56:20,362.362 INFO    ] ================================================
[2026-10-25 06:56:20,377.377 INFO    ] Launching Daemon at Sun Oct 25 06:56:20 IST 2026
[2026-10-25 06:56:20,388.388 INFO    ] ================================================
[2026-10-25 06:56:20,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:56:20
[2026-10-25 06:56:21,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:56:21,850.850 INFO    ] Initializing speech engine...
[2026-10-25 06:56:21,866.866 INFO    ] 2026-10-25 06:56:21
[2026-10-25 06:56:22,170.170 INFO    ] 2026-10-25 06:56:22
[2026-10-25 06:56:22,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:56:22,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:56:22,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:56:22,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:56:22,590.590 INFO    ] time= 25/10/2026 06:56:22
[2026-10-25 06:56:22,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:56:22,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:56:22,737.737 INFO    ] No existing commands found in stream
[2026-10-25 06:56:27,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:56:27,754.754 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 06:56:32,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:56:32,785.785 INFO    ] Checking for system updates...
[2026-10-25 06:56:32,829.829 INFO    ] 200
[2026-10-25 06:56:32,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:32,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:32,904.904 INFO    ] No update needed
[2026-10-25 06:56:32,906.906 INFO    ] Checking for camera pi updates...
[2026-10-25 06:56:32,941.941 INFO    ] 200
[2026-10-25 06:56:32,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:32,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:56:33,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:56:33,034.034 INFO    ] No camera update needed
[2026-10-25 06:56:33,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:56:33,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:56:33,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:56:33,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:56:35,088.088 INFO    ] ================================================
[2026-10-25 06:56:35,105.105 INFO    ] Launching Daemon at Sun Oct 25 06:56:35 IST 2026
[2026-10-25 06:56:35,115.115 INFO    ] ================================================
[2026-10-25 06:56:35,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:56:35
[2026-10-25 06:56:36,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:56:36,574.574 INFO    ] Initializing speech engine...
[2026-10-25 06:56:36,584.584 INFO    ] 2026-10-25 06:56:36
[2026-10-25 06:56:36,833.833 INFO    ] 2026-10-25 06:56:36
[2026-10-25 06:56:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:56:37,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:56:37,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:56:37,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:56:37,318.318 INFO    ] time= 25/10/2026 06:56:37
[2026-10-25 06:56:37,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:56:37,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:56:37,500.500 INFO    ] No existing commands found in stream
[2026-10-25 06:56:42,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:56:42,525.525 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 06:56:46,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:56:46,340.340 INFO    ] Checking for system updates...
[2026-10-25 06:56:46,376.376 INFO    ] 200
[2026-10-25 06:56:46,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:46,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:56:46,443.443 INFO    ] No update needed
[2026-10-25 06:56:46,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 06:56:46,482.482 INFO    ] 200
[2026-10-25 06:56:46,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:46,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:56:46,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:56:46,584.584 INFO    ] No camera update needed
[2026-10-25 06:56:46,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:56:46,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:56:46,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:56:46,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:56:48,637.637 INFO    ] ================================================
[2026-10-25 06:56:48,652.652 INFO    ] Launching Daemon at Sun Oct 25 06:56:48 IST 2026
[2026-10-25 06:56:48,663.663 INFO    ] ================================================
[2026-10-25 06:56:49,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:56:49
[2026-10-25 06:56:49,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:56:50,074.074 INFO    ] Initializing speech engine...
[2026-10-25 06:56:50,083.083 INFO    ] 2026-10-25 06:56:50
[2026-10-25 06:56:50,329.329 INFO    ] 2026-10-25 06:56:50
[2026-10-25 06:56:50,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:56:50,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:56:50,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:56:50,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:56:50,796.796 INFO    ] time= 25/10/2026 06:56:50
[2026-10-25 06:56:50,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:56:50,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:56:50,938.938 INFO    ] No existing commands found in stream
[2026-10-25 06:56:55,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:56:55,953.953 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 06:56:59,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:56:59,795.795 INFO    ] Checking for system updates...
[2026-10-25 06:56:59,831.831 INFO    ] 200
[2026-10-25 06:56:59,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:59,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:56:59,903.903 INFO    ] No update needed
[2026-10-25 06:56:59,906.906 INFO    ] Checking for camera pi updates...
[2026-10-25 06:56:59,940.940 INFO    ] 200
[2026-10-25 06:56:59,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:56:59,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:57:00,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:00,046.046 INFO    ] No camera update needed
[2026-10-25 06:57:00,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:57:00,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:57:00,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:57:00,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:57:02,104.104 INFO    ] ================================================
[2026-10-25 06:57:02,125.125 INFO    ] Launching Daemon at Sun Oct 25 06:57:02 IST 2026
[2026-10-25 06:57:02,136.136 INFO    ] ================================================
[2026-10-25 06:57:02,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:57:02
[2026-10-25 06:57:03,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:57:03,760.760 INFO    ] Initializing speech engine...
[2026-10-25 06:57:03,770.770 INFO    ] 2026-10-25 06:57:03
[2026-10-25 06:57:04,057.057 INFO    ] 2026-10-25 06:57:04
[2026-10-25 06:57:04,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:57:04,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:57:04,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:57:04,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:57:04,557.557 INFO    ] time= 25/10/2026 06:57:04
[2026-10-25 06:57:04,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:57:04,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:57:04,752.752 INFO    ] No existing commands found in stream
[2026-10-25 06:57:09,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:57:09,777.777 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 06:57:13,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:57:13,614.614 INFO    ] Checking for system updates...
[2026-10-25 06:57:13,655.655 INFO    ] 200
[2026-10-25 06:57:13,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:13,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:13,716.716 INFO    ] No update needed
[2026-10-25 06:57:13,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 06:57:13,756.756 INFO    ] 200
[2026-10-25 06:57:13,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:13,810.810 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:57:13,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:13,883.883 INFO    ] No camera update needed
[2026-10-25 06:57:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:57:13,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:57:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:57:13,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:57:15,941.941 INFO    ] ================================================
[2026-10-25 06:57:15,956.956 INFO    ] Launching Daemon at Sun Oct 25 06:57:15 IST 2026
[2026-10-25 06:57:15,967.967 INFO    ] ================================================
[2026-10-25 06:57:16,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:57:16
[2026-10-25 06:57:17,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:57:17,417.417 INFO    ] Initializing speech engine...
[2026-10-25 06:57:17,426.426 INFO    ] 2026-10-25 06:57:17
[2026-10-25 06:57:17,670.670 INFO    ] 2026-10-25 06:57:17
[2026-10-25 06:57:17,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:57:17,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:57:17,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:57:18,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:57:18,141.141 INFO    ] time= 25/10/2026 06:57:18
[2026-10-25 06:57:18,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:57:18,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:57:18,290.290 INFO    ] No existing commands found in stream
[2026-10-25 06:57:23,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:57:23,317.317 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 06:57:25,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:57:25,805.805 INFO    ] Checking for system updates...
[2026-10-25 06:57:25,844.844 INFO    ] 200
[2026-10-25 06:57:25,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:25,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:25,913.913 INFO    ] No update needed
[2026-10-25 06:57:25,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 06:57:25,952.952 INFO    ] 200
[2026-10-25 06:57:25,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:25,997.997 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:57:26,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:26,065.065 INFO    ] No camera update needed
[2026-10-25 06:57:26,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:57:26,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:57:26,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:57:26,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:57:28,124.124 INFO    ] ================================================
[2026-10-25 06:57:28,139.139 INFO    ] Launching Daemon at Sun Oct 25 06:57:28 IST 2026
[2026-10-25 06:57:28,149.149 INFO    ] ================================================
[2026-10-25 06:57:28,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:57:28
[2026-10-25 06:57:29,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:57:29,553.553 INFO    ] Initializing speech engine...
[2026-10-25 06:57:29,571.571 INFO    ] 2026-10-25 06:57:29
[2026-10-25 06:57:29,817.817 INFO    ] 2026-10-25 06:57:29
[2026-10-25 06:57:29,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:57:30,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:57:30,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:57:30,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:57:30,185.185 INFO    ] time= 25/10/2026 06:57:30
[2026-10-25 06:57:30,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:57:30,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:57:30,347.347 INFO    ] No existing commands found in stream
[2026-10-25 06:57:35,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:57:35,375.375 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 06:57:39,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:57:39,481.481 INFO    ] Checking for system updates...
[2026-10-25 06:57:39,516.516 INFO    ] 200
[2026-10-25 06:57:39,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:39,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:39,575.575 INFO    ] No update needed
[2026-10-25 06:57:39,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 06:57:39,614.614 INFO    ] 200
[2026-10-25 06:57:39,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:39,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:57:39,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:57:39,721.721 INFO    ] No camera update needed
[2026-10-25 06:57:39,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:57:39,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:57:39,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:57:39,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:57:41,774.774 INFO    ] ================================================
[2026-10-25 06:57:41,789.789 INFO    ] Launching Daemon at Sun Oct 25 06:57:41 IST 2026
[2026-10-25 06:57:41,800.800 INFO    ] ================================================
[2026-10-25 06:57:42,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:57:42
[2026-10-25 06:57:43,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:57:43,381.381 INFO    ] Initializing speech engine...
[2026-10-25 06:57:43,388.388 INFO    ] 2026-10-25 06:57:43
[2026-10-25 06:57:43,674.674 INFO    ] 2026-10-25 06:57:43
[2026-10-25 06:57:43,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:57:43,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:57:43,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:57:44,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:57:44,116.116 INFO    ] time= 25/10/2026 06:57:44
[2026-10-25 06:57:44,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:57:44,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:57:44,265.265 INFO    ] No existing commands found in stream
[2026-10-25 06:57:49,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:57:49,282.282 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 06:57:50,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:57:50,753.753 INFO    ] Checking for system updates...
[2026-10-25 06:57:50,789.789 INFO    ] 200
[2026-10-25 06:57:50,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:50,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:57:50,847.847 INFO    ] No update needed
[2026-10-25 06:57:50,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 06:57:50,890.890 INFO    ] 200
[2026-10-25 06:57:50,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:57:50,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:57:50,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:57:50,996.996 INFO    ] No camera update needed
[2026-10-25 06:57:50,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:57:51,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:57:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:57:51,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:57:53,050.050 INFO    ] ================================================
[2026-10-25 06:57:53,065.065 INFO    ] Launching Daemon at Sun Oct 25 06:57:53 IST 2026
[2026-10-25 06:57:53,076.076 INFO    ] ================================================
[2026-10-25 06:57:53,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:57:53
[2026-10-25 06:57:54,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:57:54,468.468 INFO    ] Initializing speech engine...
[2026-10-25 06:57:54,491.491 INFO    ] 2026-10-25 06:57:54
[2026-10-25 06:57:54,740.740 INFO    ] 2026-10-25 06:57:54
[2026-10-25 06:57:54,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:57:55,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:57:55,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:57:55,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:57:55,228.228 INFO    ] time= 25/10/2026 06:57:55
[2026-10-25 06:57:55,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:57:55,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:57:55,356.356 INFO    ] No existing commands found in stream
[2026-10-25 06:58:00,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:58:00,371.371 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 06:58:02,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:58:02,817.817 INFO    ] Checking for system updates...
[2026-10-25 06:58:02,861.861 INFO    ] 200
[2026-10-25 06:58:02,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:02,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:02,936.936 INFO    ] No update needed
[2026-10-25 06:58:02,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 06:58:02,984.984 INFO    ] 200
[2026-10-25 06:58:02,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:03,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:58:03,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:03,112.112 INFO    ] No camera update needed
[2026-10-25 06:58:03,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:58:03,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:58:03,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:58:03,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:58:05,177.177 INFO    ] ================================================
[2026-10-25 06:58:05,194.194 INFO    ] Launching Daemon at Sun Oct 25 06:58:05 IST 2026
[2026-10-25 06:58:05,204.204 INFO    ] ================================================
[2026-10-25 06:58:05,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:58:05
[2026-10-25 06:58:06,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:58:06,616.616 INFO    ] Initializing speech engine...
[2026-10-25 06:58:06,623.623 INFO    ] 2026-10-25 06:58:06
[2026-10-25 06:58:06,878.878 INFO    ] 2026-10-25 06:58:06
[2026-10-25 06:58:06,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:58:07,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:58:07,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:58:07,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:58:07,339.339 INFO    ] time= 25/10/2026 06:58:07
[2026-10-25 06:58:07,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:58:07,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:58:07,486.486 INFO    ] No existing commands found in stream
[2026-10-25 06:58:12,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:58:12,501.501 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 06:58:16,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 06:58:16,626.626 INFO    ] Checking for system updates...
[2026-10-25 06:58:16,664.664 INFO    ] 200
[2026-10-25 06:58:16,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:16,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:16,730.730 INFO    ] No update needed
[2026-10-25 06:58:16,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 06:58:16,773.773 INFO    ] 200
[2026-10-25 06:58:16,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:16,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:58:16,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:16,883.883 INFO    ] No camera update needed
[2026-10-25 06:58:16,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:58:16,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:58:16,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:58:16,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:58:18,944.944 INFO    ] ================================================
[2026-10-25 06:58:18,959.959 INFO    ] Launching Daemon at Sun Oct 25 06:58:18 IST 2026
[2026-10-25 06:58:18,971.971 INFO    ] ================================================
[2026-10-25 06:58:19,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:58:19
[2026-10-25 06:58:20,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:58:20,409.409 INFO    ] Initializing speech engine...
[2026-10-25 06:58:20,418.418 INFO    ] 2026-10-25 06:58:20
[2026-10-25 06:58:20,686.686 INFO    ] 2026-10-25 06:58:20
[2026-10-25 06:58:20,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:58:20,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:58:20,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:58:21,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:58:21,067.067 INFO    ] time= 25/10/2026 06:58:21
[2026-10-25 06:58:21,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:58:21,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:58:21,192.192 INFO    ] No existing commands found in stream
[2026-10-25 06:58:26,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:58:26,208.208 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 06:58:27,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:58:27,823.823 INFO    ] Checking for system updates...
[2026-10-25 06:58:27,860.860 INFO    ] 200
[2026-10-25 06:58:27,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:27,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:27,927.927 INFO    ] No update needed
[2026-10-25 06:58:27,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 06:58:27,968.968 INFO    ] 200
[2026-10-25 06:58:27,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:28,012.012 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:58:28,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:58:28,070.070 INFO    ] No camera update needed
[2026-10-25 06:58:28,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:58:28,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:58:28,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:58:28,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:58:30,129.129 INFO    ] ================================================
[2026-10-25 06:58:30,145.145 INFO    ] Launching Daemon at Sun Oct 25 06:58:30 IST 2026
[2026-10-25 06:58:30,157.157 INFO    ] ================================================
[2026-10-25 06:58:30,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:58:30
[2026-10-25 06:58:31,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:58:31,578.578 INFO    ] Initializing speech engine...
[2026-10-25 06:58:31,584.584 INFO    ] 2026-10-25 06:58:31
[2026-10-25 06:58:31,839.839 INFO    ] 2026-10-25 06:58:31
[2026-10-25 06:58:31,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:58:32,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:58:32,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:58:32,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:58:32,719.719 INFO    ] time= 25/10/2026 06:58:32
[2026-10-25 06:58:32,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:58:32,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:58:32,891.891 INFO    ] No existing commands found in stream
[2026-10-25 06:58:37,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:58:37,907.907 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 06:58:39,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:58:39,940.940 INFO    ] Checking for system updates...
[2026-10-25 06:58:39,976.976 INFO    ] 200
[2026-10-25 06:58:39,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:40,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:58:40,035.035 INFO    ] No update needed
[2026-10-25 06:58:40,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 06:58:40,071.071 INFO    ] 200
[2026-10-25 06:58:40,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:40,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:58:40,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:58:40,185.185 INFO    ] No camera update needed
[2026-10-25 06:58:40,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:58:40,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:58:40,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:58:40,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:58:42,241.241 INFO    ] ================================================
[2026-10-25 06:58:42,257.257 INFO    ] Launching Daemon at Sun Oct 25 06:58:42 IST 2026
[2026-10-25 06:58:42,268.268 INFO    ] ================================================
[2026-10-25 06:58:42,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:58:42
[2026-10-25 06:58:43,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:58:43,766.766 INFO    ] Initializing speech engine...
[2026-10-25 06:58:43,774.774 INFO    ] 2026-10-25 06:58:43
[2026-10-25 06:58:44,070.070 INFO    ] 2026-10-25 06:58:44
[2026-10-25 06:58:44,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:58:44,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:58:44,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:58:44,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:58:44,572.572 INFO    ] time= 25/10/2026 06:58:44
[2026-10-25 06:58:44,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:58:44,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:58:44,718.718 INFO    ] No existing commands found in stream
[2026-10-25 06:58:49,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:58:49,742.742 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 06:58:51,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:58:51,335.335 INFO    ] Checking for system updates...
[2026-10-25 06:58:51,372.372 INFO    ] 200
[2026-10-25 06:58:51,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:51,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:58:51,433.433 INFO    ] No update needed
[2026-10-25 06:58:51,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 06:58:51,470.470 INFO    ] 200
[2026-10-25 06:58:51,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:58:51,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:58:51,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:58:51,573.573 INFO    ] No camera update needed
[2026-10-25 06:58:51,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:58:51,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:58:51,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:58:51,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:58:53,631.631 INFO    ] ================================================
[2026-10-25 06:58:53,646.646 INFO    ] Launching Daemon at Sun Oct 25 06:58:53 IST 2026
[2026-10-25 06:58:53,657.657 INFO    ] ================================================
[2026-10-25 06:58:54,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:58:54
[2026-10-25 06:58:54,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:58:55,071.071 INFO    ] Initializing speech engine...
[2026-10-25 06:58:55,088.088 INFO    ] 2026-10-25 06:58:55
[2026-10-25 06:58:55,362.362 INFO    ] 2026-10-25 06:58:55
[2026-10-25 06:58:55,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:58:55,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:58:55,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:58:55,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:58:55,786.786 INFO    ] time= 25/10/2026 06:58:55
[2026-10-25 06:58:55,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:58:55,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:58:55,967.967 INFO    ] No existing commands found in stream
[2026-10-25 06:59:00,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:59:00,985.985 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 06:59:03,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:59:03,717.717 INFO    ] Checking for system updates...
[2026-10-25 06:59:03,753.753 INFO    ] 200
[2026-10-25 06:59:03,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:03,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:59:03,810.810 INFO    ] No update needed
[2026-10-25 06:59:03,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 06:59:03,847.847 INFO    ] 200
[2026-10-25 06:59:03,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:03,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:59:03,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:59:03,949.949 INFO    ] No camera update needed
[2026-10-25 06:59:03,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:59:03,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:59:03,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:59:03,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:59:06,006.006 INFO    ] ================================================
[2026-10-25 06:59:06,022.022 INFO    ] Launching Daemon at Sun Oct 25 06:59:06 IST 2026
[2026-10-25 06:59:06,033.033 INFO    ] ================================================
[2026-10-25 06:59:06,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:59:06
[2026-10-25 06:59:07,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:59:07,453.453 INFO    ] Initializing speech engine...
[2026-10-25 06:59:07,458.458 INFO    ] 2026-10-25 06:59:07
[2026-10-25 06:59:07,758.758 INFO    ] 2026-10-25 06:59:07
[2026-10-25 06:59:07,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:59:08,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:59:08,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:59:08,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:59:08,147.147 INFO    ] time= 25/10/2026 06:59:08
[2026-10-25 06:59:08,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:59:08,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:59:08,276.276 INFO    ] No existing commands found in stream
[2026-10-25 06:59:13,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:59:13,291.291 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 06:59:17,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 06:59:17,654.654 INFO    ] Checking for system updates...
[2026-10-25 06:59:17,690.690 INFO    ] 200
[2026-10-25 06:59:17,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:17,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:59:17,748.748 INFO    ] No update needed
[2026-10-25 06:59:17,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 06:59:17,784.784 INFO    ] 200
[2026-10-25 06:59:17,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:17,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:59:17,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 06:59:17,886.886 INFO    ] No camera update needed
[2026-10-25 06:59:17,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:59:17,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:59:17,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:59:17,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:59:19,944.944 INFO    ] ================================================
[2026-10-25 06:59:19,959.959 INFO    ] Launching Daemon at Sun Oct 25 06:59:19 IST 2026
[2026-10-25 06:59:19,971.971 INFO    ] ================================================
[2026-10-25 06:59:20,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:59:20
[2026-10-25 06:59:21,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:59:21,541.541 INFO    ] Initializing speech engine...
[2026-10-25 06:59:21,550.550 INFO    ] 2026-10-25 06:59:21
[2026-10-25 06:59:21,867.867 INFO    ] 2026-10-25 06:59:21
[2026-10-25 06:59:21,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:59:22,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:59:22,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:59:22,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:59:22,378.378 INFO    ] time= 25/10/2026 06:59:22
[2026-10-25 06:59:22,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:59:22,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:59:22,529.529 INFO    ] No existing commands found in stream
[2026-10-25 06:59:27,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:59:27,553.553 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 06:59:30,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 06:59:30,197.197 INFO    ] Checking for system updates...
[2026-10-25 06:59:30,233.233 INFO    ] 200
[2026-10-25 06:59:30,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:30,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:30,291.291 INFO    ] No update needed
[2026-10-25 06:59:30,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 06:59:30,335.335 INFO    ] 200
[2026-10-25 06:59:30,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:30,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:59:30,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:30,427.427 INFO    ] No camera update needed
[2026-10-25 06:59:30,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:59:30,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:59:30,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:59:30,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:59:32,483.483 INFO    ] ================================================
[2026-10-25 06:59:32,499.499 INFO    ] Launching Daemon at Sun Oct 25 06:59:32 IST 2026
[2026-10-25 06:59:32,510.510 INFO    ] ================================================
[2026-10-25 06:59:33,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:59:33
[2026-10-25 06:59:33,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:59:33,984.984 INFO    ] Initializing speech engine...
[2026-10-25 06:59:33,994.994 INFO    ] 2026-10-25 06:59:33
[2026-10-25 06:59:34,243.243 INFO    ] 2026-10-25 06:59:34
[2026-10-25 06:59:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:59:34,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:59:34,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:59:34,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:59:34,585.585 INFO    ] time= 25/10/2026 06:59:34
[2026-10-25 06:59:34,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:59:34,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:59:34,696.696 INFO    ] No existing commands found in stream
[2026-10-25 06:59:39,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:59:39,710.710 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 06:59:41,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 06:59:41,604.604 INFO    ] Checking for system updates...
[2026-10-25 06:59:41,640.640 INFO    ] 200
[2026-10-25 06:59:41,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:41,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:41,698.698 INFO    ] No update needed
[2026-10-25 06:59:41,700.700 INFO    ] Checking for camera pi updates...
[2026-10-25 06:59:41,734.734 INFO    ] 200
[2026-10-25 06:59:41,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:41,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:59:41,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:41,827.827 INFO    ] No camera update needed
[2026-10-25 06:59:41,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:59:41,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:59:41,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:59:41,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:59:43,883.883 INFO    ] ================================================
[2026-10-25 06:59:43,899.899 INFO    ] Launching Daemon at Sun Oct 25 06:59:43 IST 2026
[2026-10-25 06:59:43,910.910 INFO    ] ================================================
[2026-10-25 06:59:44,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:59:44
[2026-10-25 06:59:45,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:59:45,329.329 INFO    ] Initializing speech engine...
[2026-10-25 06:59:45,335.335 INFO    ] 2026-10-25 06:59:45
[2026-10-25 06:59:45,611.611 INFO    ] 2026-10-25 06:59:45
[2026-10-25 06:59:45,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:59:45,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:59:45,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:59:46,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:59:46,061.061 INFO    ] time= 25/10/2026 06:59:46
[2026-10-25 06:59:46,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:59:46,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:59:46,242.242 INFO    ] No existing commands found in stream
[2026-10-25 06:59:51,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 06:59:51,256.256 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 06:59:53,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 06:59:53,932.932 INFO    ] Checking for system updates...
[2026-10-25 06:59:53,968.968 INFO    ] 200
[2026-10-25 06:59:53,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:54,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:54,028.028 INFO    ] No update needed
[2026-10-25 06:59:54,030.030 INFO    ] Checking for camera pi updates...
[2026-10-25 06:59:54,064.064 INFO    ] 200
[2026-10-25 06:59:54,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 06:59:54,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 06:59:54,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 06:59:54,153.153 INFO    ] No camera update needed
[2026-10-25 06:59:54,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 06:59:54,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 06:59:54,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 06:59:54,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 06:59:56,212.212 INFO    ] ================================================
[2026-10-25 06:59:56,228.228 INFO    ] Launching Daemon at Sun Oct 25 06:59:56 IST 2026
[2026-10-25 06:59:56,239.239 INFO    ] ================================================
[2026-10-25 06:59:56,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 06:59:56
[2026-10-25 06:59:57,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 06:59:57,657.657 INFO    ] Initializing speech engine...
[2026-10-25 06:59:57,666.666 INFO    ] 2026-10-25 06:59:57
[2026-10-25 06:59:57,915.915 INFO    ] 2026-10-25 06:59:57
[2026-10-25 06:59:57,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 06:59:58,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 06:59:58,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 06:59:58,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 06:59:58,396.396 INFO    ] time= 25/10/2026 06:59:58
[2026-10-25 06:59:58,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 06:59:58,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 06:59:58,534.534 INFO    ] No existing commands found in stream
[2026-10-25 07:00:03,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:00:03,547.547 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 07:00:08,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:00:08,612.612 INFO    ] Checking for system updates...
[2026-10-25 07:00:08,649.649 INFO    ] 200
[2026-10-25 07:00:08,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:08,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:08,715.715 INFO    ] No update needed
[2026-10-25 07:00:08,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 07:00:08,753.753 INFO    ] 200
[2026-10-25 07:00:08,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:08,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:00:08,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:08,856.856 INFO    ] No camera update needed
[2026-10-25 07:00:08,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:00:08,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:00:08,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:00:08,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:00:10,916.916 INFO    ] ================================================
[2026-10-25 07:00:10,932.932 INFO    ] Launching Daemon at Sun Oct 25 07:00:10 IST 2026
[2026-10-25 07:00:10,944.944 INFO    ] ================================================
[2026-10-25 07:00:11,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:00:11
[2026-10-25 07:00:12,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:00:12,589.589 INFO    ] Initializing speech engine...
[2026-10-25 07:00:12,598.598 INFO    ] 2026-10-25 07:00:12
[2026-10-25 07:00:12,885.885 INFO    ] 2026-10-25 07:00:12
[2026-10-25 07:00:12,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:00:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:00:13,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:00:13,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:00:13,307.307 INFO    ] time= 25/10/2026 07:00:13
[2026-10-25 07:00:13,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:00:13,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:00:13,397.397 INFO    ] No existing commands found in stream
[2026-10-25 07:00:18,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:00:18,415.415 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 07:00:22,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:00:22,025.025 INFO    ] Checking for system updates...
[2026-10-25 07:00:22,072.072 INFO    ] 200
[2026-10-25 07:00:22,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:22,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:22,142.142 INFO    ] No update needed
[2026-10-25 07:00:22,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 07:00:22,182.182 INFO    ] 200
[2026-10-25 07:00:22,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:22,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:00:22,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:22,292.292 INFO    ] No camera update needed
[2026-10-25 07:00:22,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:00:22,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:00:22,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:00:22,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:00:24,351.351 INFO    ] ================================================
[2026-10-25 07:00:24,366.366 INFO    ] Launching Daemon at Sun Oct 25 07:00:24 IST 2026
[2026-10-25 07:00:24,378.378 INFO    ] ================================================
[2026-10-25 07:00:24,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:00:24
[2026-10-25 07:00:25,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:00:25,820.820 INFO    ] Initializing speech engine...
[2026-10-25 07:00:25,833.833 INFO    ] 2026-10-25 07:00:25
[2026-10-25 07:00:26,127.127 INFO    ] 2026-10-25 07:00:26
[2026-10-25 07:00:26,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:00:26,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:00:26,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:00:26,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:00:26,491.491 INFO    ] time= 25/10/2026 07:00:26
[2026-10-25 07:00:26,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:00:26,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:00:26,575.575 INFO    ] No existing commands found in stream
[2026-10-25 07:00:31,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:00:31,589.589 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 07:00:35,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:00:35,639.639 INFO    ] Checking for system updates...
[2026-10-25 07:00:35,676.676 INFO    ] 200
[2026-10-25 07:00:35,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:35,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:35,735.735 INFO    ] No update needed
[2026-10-25 07:00:35,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 07:00:35,771.771 INFO    ] 200
[2026-10-25 07:00:35,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:35,820.820 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:00:35,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:00:35,887.887 INFO    ] No camera update needed
[2026-10-25 07:00:35,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:00:35,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:00:35,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:00:35,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:00:37,948.948 INFO    ] ================================================
[2026-10-25 07:00:37,964.964 INFO    ] Launching Daemon at Sun Oct 25 07:00:37 IST 2026
[2026-10-25 07:00:37,976.976 INFO    ] ================================================
[2026-10-25 07:00:38,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:00:38
[2026-10-25 07:00:39,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:00:39,414.414 INFO    ] Initializing speech engine...
[2026-10-25 07:00:39,419.419 INFO    ] 2026-10-25 07:00:39
[2026-10-25 07:00:39,669.669 INFO    ] 2026-10-25 07:00:39
[2026-10-25 07:00:39,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:00:39,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:00:39,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:00:40,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:00:40,162.162 INFO    ] time= 25/10/2026 07:00:40
[2026-10-25 07:00:40,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:00:40,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:00:40,371.371 INFO    ] No existing commands found in stream
[2026-10-25 07:00:45,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:00:45,401.401 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 07:00:48,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:00:48,962.962 INFO    ] Checking for system updates...
[2026-10-25 07:00:48,998.998 INFO    ] 200
[2026-10-25 07:00:49,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:49,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:00:49,057.057 INFO    ] No update needed
[2026-10-25 07:00:49,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 07:00:49,093.093 INFO    ] 200
[2026-10-25 07:00:49,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:00:49,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:00:49,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:00:49,193.193 INFO    ] No camera update needed
[2026-10-25 07:00:49,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:00:49,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:00:49,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:00:49,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:00:51,250.250 INFO    ] ================================================
[2026-10-25 07:00:51,267.267 INFO    ] Launching Daemon at Sun Oct 25 07:00:51 IST 2026
[2026-10-25 07:00:51,279.279 INFO    ] ================================================
[2026-10-25 07:00:51,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:00:51
[2026-10-25 07:00:52,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:00:52,693.693 INFO    ] Initializing speech engine...
[2026-10-25 07:00:52,701.701 INFO    ] 2026-10-25 07:00:52
[2026-10-25 07:00:52,972.972 INFO    ] 2026-10-25 07:00:52
[2026-10-25 07:00:53,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:00:53,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:00:53,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:00:53,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:00:53,474.474 INFO    ] time= 25/10/2026 07:00:53
[2026-10-25 07:00:53,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:00:53,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:00:53,653.653 INFO    ] No existing commands found in stream
[2026-10-25 07:00:58,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:00:58,683.683 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 07:01:02,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:01:02,898.898 INFO    ] Checking for system updates...
[2026-10-25 07:01:02,948.948 INFO    ] 200
[2026-10-25 07:01:02,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:03,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:03,029.029 INFO    ] No update needed
[2026-10-25 07:01:03,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 07:01:03,085.085 INFO    ] 200
[2026-10-25 07:01:03,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:03,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:01:03,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:03,175.175 INFO    ] No camera update needed
[2026-10-25 07:01:03,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:01:03,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:01:03,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:01:03,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:01:05,231.231 INFO    ] ================================================
[2026-10-25 07:01:05,246.246 INFO    ] Launching Daemon at Sun Oct 25 07:01:05 IST 2026
[2026-10-25 07:01:05,256.256 INFO    ] ================================================
[2026-10-25 07:01:05,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:01:05
[2026-10-25 07:01:06,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:01:06,652.652 INFO    ] Initializing speech engine...
[2026-10-25 07:01:06,658.658 INFO    ] 2026-10-25 07:01:06
[2026-10-25 07:01:06,935.935 INFO    ] 2026-10-25 07:01:06
[2026-10-25 07:01:06,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:01:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:01:07,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:01:07,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:01:07,404.404 INFO    ] time= 25/10/2026 07:01:07
[2026-10-25 07:01:07,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:01:07,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:01:07,560.560 INFO    ] No existing commands found in stream
[2026-10-25 07:01:12,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:01:12,583.583 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 07:01:17,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:01:17,163.163 INFO    ] Checking for system updates...
[2026-10-25 07:01:17,200.200 INFO    ] 200
[2026-10-25 07:01:17,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:17,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:17,265.265 INFO    ] No update needed
[2026-10-25 07:01:17,267.267 INFO    ] Checking for camera pi updates...
[2026-10-25 07:01:17,305.305 INFO    ] 200
[2026-10-25 07:01:17,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:17,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:01:17,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:17,406.406 INFO    ] No camera update needed
[2026-10-25 07:01:17,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:01:17,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:01:17,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:01:17,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:01:19,462.462 INFO    ] ================================================
[2026-10-25 07:01:19,478.478 INFO    ] Launching Daemon at Sun Oct 25 07:01:19 IST 2026
[2026-10-25 07:01:19,488.488 INFO    ] ================================================
[2026-10-25 07:01:20,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:01:20
[2026-10-25 07:01:20,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:01:20,901.901 INFO    ] Initializing speech engine...
[2026-10-25 07:01:20,913.913 INFO    ] 2026-10-25 07:01:20
[2026-10-25 07:01:21,161.161 INFO    ] 2026-10-25 07:01:21
[2026-10-25 07:01:21,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:01:21,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:01:21,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:01:21,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:01:21,619.619 INFO    ] time= 25/10/2026 07:01:21
[2026-10-25 07:01:21,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:01:21,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:01:21,843.843 INFO    ] No existing commands found in stream
[2026-10-25 07:01:26,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:01:26,876.876 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 07:01:30,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:01:30,746.746 INFO    ] Checking for system updates...
[2026-10-25 07:01:30,781.781 INFO    ] 200
[2026-10-25 07:01:30,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:30,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:30,839.839 INFO    ] No update needed
[2026-10-25 07:01:30,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 07:01:30,874.874 INFO    ] 200
[2026-10-25 07:01:30,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:30,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:01:30,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:01:30,993.993 INFO    ] No camera update needed
[2026-10-25 07:01:30,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:01:30,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:01:31,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:01:31,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:01:33,052.052 INFO    ] ================================================
[2026-10-25 07:01:33,067.067 INFO    ] Launching Daemon at Sun Oct 25 07:01:33 IST 2026
[2026-10-25 07:01:33,079.079 INFO    ] ================================================
[2026-10-25 07:01:33,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:01:33
[2026-10-25 07:01:34,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:01:34,506.506 INFO    ] Initializing speech engine...
[2026-10-25 07:01:34,515.515 INFO    ] 2026-10-25 07:01:34
[2026-10-25 07:01:34,771.771 INFO    ] 2026-10-25 07:01:34
[2026-10-25 07:01:34,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:01:35,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:01:35,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:01:35,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:01:35,558.558 INFO    ] time= 25/10/2026 07:01:35
[2026-10-25 07:01:35,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:01:35,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:01:35,749.749 INFO    ] No existing commands found in stream
[2026-10-25 07:01:40,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:01:40,766.766 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 07:01:45,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:01:45,219.219 INFO    ] Checking for system updates...
[2026-10-25 07:01:45,256.256 INFO    ] 200
[2026-10-25 07:01:45,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:45,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:01:45,316.316 INFO    ] No update needed
[2026-10-25 07:01:45,319.319 INFO    ] Checking for camera pi updates...
[2026-10-25 07:01:45,354.354 INFO    ] 200
[2026-10-25 07:01:45,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:45,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:01:45,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:01:45,457.457 INFO    ] No camera update needed
[2026-10-25 07:01:45,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:01:45,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:01:45,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:01:45,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:01:47,514.514 INFO    ] ================================================
[2026-10-25 07:01:47,530.530 INFO    ] Launching Daemon at Sun Oct 25 07:01:47 IST 2026
[2026-10-25 07:01:47,541.541 INFO    ] ================================================
[2026-10-25 07:01:48,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:01:48
[2026-10-25 07:01:48,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:01:49,193.193 INFO    ] Initializing speech engine...
[2026-10-25 07:01:49,207.207 INFO    ] 2026-10-25 07:01:49
[2026-10-25 07:01:49,493.493 INFO    ] 2026-10-25 07:01:49
[2026-10-25 07:01:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:01:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:01:49,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:01:50,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:01:50,025.025 INFO    ] time= 25/10/2026 07:01:50
[2026-10-25 07:01:50,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:01:50,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:01:50,179.179 INFO    ] No existing commands found in stream
[2026-10-25 07:01:55,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:01:55,205.205 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 07:01:58,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:01:58,190.190 INFO    ] Checking for system updates...
[2026-10-25 07:01:58,228.228 INFO    ] 200
[2026-10-25 07:01:58,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:58,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:01:58,296.296 INFO    ] No update needed
[2026-10-25 07:01:58,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 07:01:58,334.334 INFO    ] 200
[2026-10-25 07:01:58,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:01:58,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:01:58,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:01:58,461.461 INFO    ] No camera update needed
[2026-10-25 07:01:58,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:01:58,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:01:58,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:01:58,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:00,520.520 INFO    ] ================================================
[2026-10-25 07:02:00,535.535 INFO    ] Launching Daemon at Sun Oct 25 07:02:00 IST 2026
[2026-10-25 07:02:00,546.546 INFO    ] ================================================
[2026-10-25 07:02:01,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:01
[2026-10-25 07:02:01,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:02:02,201.201 INFO    ] Initializing speech engine...
[2026-10-25 07:02:02,208.208 INFO    ] 2026-10-25 07:02:02
[2026-10-25 07:02:02,533.533 INFO    ] 2026-10-25 07:02:02
[2026-10-25 07:02:02,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:02:02,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:02:02,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:02:03,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:02:03,067.067 INFO    ] time= 25/10/2026 07:02:03
[2026-10-25 07:02:03,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:02:03,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:02:03,250.250 INFO    ] No existing commands found in stream
[2026-10-25 07:02:08,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:02:08,285.285 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 07:02:09,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:02:09,123.123 INFO    ] Checking for system updates...
[2026-10-25 07:02:09,159.159 INFO    ] 200
[2026-10-25 07:02:09,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:09,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:09,221.221 INFO    ] No update needed
[2026-10-25 07:02:09,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 07:02:09,263.263 INFO    ] 200
[2026-10-25 07:02:09,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:09,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:02:09,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:09,477.477 INFO    ] No camera update needed
[2026-10-25 07:02:09,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:02:09,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:02:09,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:02:09,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:11,534.534 INFO    ] ================================================
[2026-10-25 07:02:11,549.549 INFO    ] Launching Daemon at Sun Oct 25 07:02:11 IST 2026
[2026-10-25 07:02:11,560.560 INFO    ] ================================================
[2026-10-25 07:02:12,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:12
[2026-10-25 07:02:12,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:02:13,208.208 INFO    ] Initializing speech engine...
[2026-10-25 07:02:13,214.214 INFO    ] 2026-10-25 07:02:13
[2026-10-25 07:02:13,503.503 INFO    ] 2026-10-25 07:02:13
[2026-10-25 07:02:13,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:02:13,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:02:13,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:02:13,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:02:14,040.040 INFO    ] time= 25/10/2026 07:02:14
[2026-10-25 07:02:14,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:02:14,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:02:14,190.190 INFO    ] No existing commands found in stream
[2026-10-25 07:02:19,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:02:19,210.210 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 07:02:19,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:02:19,829.829 INFO    ] Checking for system updates...
[2026-10-25 07:02:19,866.866 INFO    ] 200
[2026-10-25 07:02:19,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:19,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:19,926.926 INFO    ] No update needed
[2026-10-25 07:02:19,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 07:02:19,969.969 INFO    ] 200
[2026-10-25 07:02:19,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:20,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:02:20,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:20,064.064 INFO    ] No camera update needed
[2026-10-25 07:02:20,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:02:20,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:02:20,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:02:20,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:22,123.123 INFO    ] ================================================
[2026-10-25 07:02:22,139.139 INFO    ] Launching Daemon at Sun Oct 25 07:02:22 IST 2026
[2026-10-25 07:02:22,150.150 INFO    ] ================================================
[2026-10-25 07:02:22,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:22
[2026-10-25 07:02:23,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:02:23,808.808 INFO    ] Initializing speech engine...
[2026-10-25 07:02:23,821.821 INFO    ] 2026-10-25 07:02:23
[2026-10-25 07:02:24,109.109 INFO    ] 2026-10-25 07:02:24
[2026-10-25 07:02:24,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:02:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:02:24,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:02:24,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:02:24,645.645 INFO    ] time= 25/10/2026 07:02:24
[2026-10-25 07:02:24,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:02:24,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:02:24,783.783 INFO    ] No existing commands found in stream
[2026-10-25 07:02:29,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:02:29,812.812 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 07:02:32,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:02:32,953.953 INFO    ] Checking for system updates...
[2026-10-25 07:02:32,990.990 INFO    ] 200
[2026-10-25 07:02:32,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:33,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:33,047.047 INFO    ] No update needed
[2026-10-25 07:02:33,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 07:02:33,083.083 INFO    ] 200
[2026-10-25 07:02:33,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:33,126.126 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:02:33,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:02:33,160.160 INFO    ] No camera update needed
[2026-10-25 07:02:33,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:02:33,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:02:33,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:02:33,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:35,220.220 INFO    ] ================================================
[2026-10-25 07:02:35,236.236 INFO    ] Launching Daemon at Sun Oct 25 07:02:35 IST 2026
[2026-10-25 07:02:35,248.248 INFO    ] ================================================
[2026-10-25 07:02:35,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:35
[2026-10-25 07:02:36,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:02:36,904.904 INFO    ] Initializing speech engine...
[2026-10-25 07:02:36,910.910 INFO    ] 2026-10-25 07:02:36
[2026-10-25 07:02:37,194.194 INFO    ] 2026-10-25 07:02:37
[2026-10-25 07:02:37,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:02:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:02:37,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:02:37,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:02:37,723.723 INFO    ] time= 25/10/2026 07:02:37
[2026-10-25 07:02:37,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:02:37,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:02:37,878.878 INFO    ] No existing commands found in stream
[2026-10-25 07:02:42,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:02:42,907.907 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 07:02:45,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:02:45,281.281 INFO    ] Checking for system updates...
[2026-10-25 07:02:45,323.323 INFO    ] 200
[2026-10-25 07:02:45,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:45,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:02:45,383.383 INFO    ] No update needed
[2026-10-25 07:02:45,385.385 INFO    ] Checking for camera pi updates...
[2026-10-25 07:02:45,420.420 INFO    ] 200
[2026-10-25 07:02:45,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:45,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:02:45,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:02:45,524.524 INFO    ] No camera update needed
[2026-10-25 07:02:45,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:02:45,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:02:45,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:02:45,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:47,584.584 INFO    ] ================================================
[2026-10-25 07:02:47,606.606 INFO    ] Launching Daemon at Sun Oct 25 07:02:47 IST 2026
[2026-10-25 07:02:47,618.618 INFO    ] ================================================
[2026-10-25 07:02:48,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:48
[2026-10-25 07:02:48,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:02:49,037.037 INFO    ] Initializing speech engine...
[2026-10-25 07:02:49,045.045 INFO    ] 2026-10-25 07:02:49
[2026-10-25 07:02:49,315.315 INFO    ] 2026-10-25 07:02:49
[2026-10-25 07:02:49,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:02:49,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:02:49,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:02:49,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:02:49,746.746 INFO    ] time= 25/10/2026 07:02:49
[2026-10-25 07:02:49,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:02:49,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:02:49,898.898 INFO    ] No existing commands found in stream
[2026-10-25 07:02:54,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:02:54,926.926 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 07:02:56,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:02:56,572.572 INFO    ] Checking for system updates...
[2026-10-25 07:02:56,608.608 INFO    ] 200
[2026-10-25 07:02:56,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:56,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:02:56,671.671 INFO    ] No update needed
[2026-10-25 07:02:56,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 07:02:56,708.708 INFO    ] 200
[2026-10-25 07:02:56,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:02:56,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:02:56,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:02:56,817.817 INFO    ] No camera update needed
[2026-10-25 07:02:56,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:02:56,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:02:56,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:02:56,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:02:58,872.872 INFO    ] ================================================
[2026-10-25 07:02:58,887.887 INFO    ] Launching Daemon at Sun Oct 25 07:02:58 IST 2026
[2026-10-25 07:02:58,898.898 INFO    ] ================================================
[2026-10-25 07:02:59,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:02:59
[2026-10-25 07:03:00,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:03:00,359.359 INFO    ] Initializing speech engine...
[2026-10-25 07:03:00,369.369 INFO    ] 2026-10-25 07:03:00
[2026-10-25 07:03:00,629.629 INFO    ] 2026-10-25 07:03:00
[2026-10-25 07:03:00,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:03:02,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:03:02,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:03:02,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:03:02,769.769 INFO    ] time= 25/10/2026 07:03:02
[2026-10-25 07:03:02,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:03:02,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:03:02,848.848 INFO    ] No existing commands found in stream
[2026-10-25 07:03:07,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:03:07,862.862 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 07:03:10,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:03:10,404.404 INFO    ] Checking for system updates...
[2026-10-25 07:03:10,440.440 INFO    ] 200
[2026-10-25 07:03:10,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:10,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:03:10,499.499 INFO    ] No update needed
[2026-10-25 07:03:10,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 07:03:10,535.535 INFO    ] 200
[2026-10-25 07:03:10,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:10,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:03:10,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:03:10,644.644 INFO    ] No camera update needed
[2026-10-25 07:03:10,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:03:10,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:03:10,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:03:10,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:03:12,701.701 INFO    ] ================================================
[2026-10-25 07:03:12,716.716 INFO    ] Launching Daemon at Sun Oct 25 07:03:12 IST 2026
[2026-10-25 07:03:12,726.726 INFO    ] ================================================
[2026-10-25 07:03:13,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:03:13
[2026-10-25 07:03:13,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:03:14,160.160 INFO    ] Initializing speech engine...
[2026-10-25 07:03:14,171.171 INFO    ] 2026-10-25 07:03:14
[2026-10-25 07:03:14,415.415 INFO    ] 2026-10-25 07:03:14
[2026-10-25 07:03:14,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:03:14,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:03:14,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:03:14,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:03:14,855.855 INFO    ] time= 25/10/2026 07:03:14
[2026-10-25 07:03:14,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:03:14,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:03:15,041.041 INFO    ] No existing commands found in stream
[2026-10-25 07:03:20,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:03:20,057.057 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 07:03:22,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:03:22,135.135 INFO    ] Checking for system updates...
[2026-10-25 07:03:22,172.172 INFO    ] 200
[2026-10-25 07:03:22,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:22,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:03:22,232.232 INFO    ] No update needed
[2026-10-25 07:03:22,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 07:03:22,269.269 INFO    ] 200
[2026-10-25 07:03:22,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:22,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:03:22,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:03:22,389.389 INFO    ] No camera update needed
[2026-10-25 07:03:22,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:03:22,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:03:22,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:03:22,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:03:24,448.448 INFO    ] ================================================
[2026-10-25 07:03:24,464.464 INFO    ] Launching Daemon at Sun Oct 25 07:03:24 IST 2026
[2026-10-25 07:03:24,475.475 INFO    ] ================================================
[2026-10-25 07:03:25,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:03:25
[2026-10-25 07:03:25,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:03:25,912.912 INFO    ] Initializing speech engine...
[2026-10-25 07:03:25,921.921 INFO    ] 2026-10-25 07:03:25
[2026-10-25 07:03:26,167.167 INFO    ] 2026-10-25 07:03:26
[2026-10-25 07:03:26,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:03:26,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:03:26,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:03:26,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:03:26,655.655 INFO    ] time= 25/10/2026 07:03:26
[2026-10-25 07:03:26,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:03:26,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:03:26,857.857 INFO    ] No existing commands found in stream
[2026-10-25 07:03:31,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:03:31,886.886 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 07:03:33,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:03:33,611.611 INFO    ] Checking for system updates...
[2026-10-25 07:03:33,648.648 INFO    ] 200
[2026-10-25 07:03:33,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:33,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:03:33,712.712 INFO    ] No update needed
[2026-10-25 07:03:33,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 07:03:33,753.753 INFO    ] 200
[2026-10-25 07:03:33,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:33,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:03:33,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:03:33,857.857 INFO    ] No camera update needed
[2026-10-25 07:03:33,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:03:33,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:03:33,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:03:33,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:03:35,913.913 INFO    ] ================================================
[2026-10-25 07:03:35,929.929 INFO    ] Launching Daemon at Sun Oct 25 07:03:35 IST 2026
[2026-10-25 07:03:35,939.939 INFO    ] ================================================
[2026-10-25 07:03:36,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:03:36
[2026-10-25 07:03:37,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:03:37,576.576 INFO    ] Initializing speech engine...
[2026-10-25 07:03:37,587.587 INFO    ] 2026-10-25 07:03:37
[2026-10-25 07:03:37,854.854 INFO    ] 2026-10-25 07:03:37
[2026-10-25 07:03:37,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:03:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:03:38,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:03:38,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:03:38,361.361 INFO    ] time= 25/10/2026 07:03:38
[2026-10-25 07:03:38,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:03:38,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:03:38,545.545 INFO    ] No existing commands found in stream
[2026-10-25 07:03:43,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:03:43,571.571 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 07:03:48,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:03:48,041.041 INFO    ] Checking for system updates...
[2026-10-25 07:03:48,078.078 INFO    ] 200
[2026-10-25 07:03:48,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:48,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:03:48,138.138 INFO    ] No update needed
[2026-10-25 07:03:48,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 07:03:48,181.181 INFO    ] 200
[2026-10-25 07:03:48,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:03:48,226.226 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:03:48,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:03:48,278.278 INFO    ] No camera update needed
[2026-10-25 07:03:48,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:03:48,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:03:48,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:03:48,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:03:50,337.337 INFO    ] ================================================
[2026-10-25 07:03:50,353.353 INFO    ] Launching Daemon at Sun Oct 25 07:03:50 IST 2026
[2026-10-25 07:03:50,364.364 INFO    ] ================================================
[2026-10-25 07:03:50,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:03:50
[2026-10-25 07:03:51,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:03:51,841.841 INFO    ] Initializing speech engine...
[2026-10-25 07:03:51,848.848 INFO    ] 2026-10-25 07:03:51
[2026-10-25 07:03:52,109.109 INFO    ] 2026-10-25 07:03:52
[2026-10-25 07:03:52,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:03:52,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:03:52,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:03:52,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:03:52,574.574 INFO    ] time= 25/10/2026 07:03:52
[2026-10-25 07:03:52,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:03:52,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:03:52,726.726 INFO    ] No existing commands found in stream
[2026-10-25 07:03:57,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:03:57,764.764 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 07:04:03,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:04:03,028.028 INFO    ] Checking for system updates...
[2026-10-25 07:04:03,074.074 INFO    ] 200
[2026-10-25 07:04:03,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:03,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:04:03,156.156 INFO    ] No update needed
[2026-10-25 07:04:03,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 07:04:03,216.216 INFO    ] 200
[2026-10-25 07:04:03,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:03,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:04:03,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:04:03,348.348 INFO    ] No camera update needed
[2026-10-25 07:04:03,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:04:03,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:04:03,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:04:03,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:04:05,410.410 INFO    ] ================================================
[2026-10-25 07:04:05,425.425 INFO    ] Launching Daemon at Sun Oct 25 07:04:05 IST 2026
[2026-10-25 07:04:05,436.436 INFO    ] ================================================
[2026-10-25 07:04:06,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:04:05
[2026-10-25 07:04:06,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:04:06,837.837 INFO    ] Initializing speech engine...
[2026-10-25 07:04:06,845.845 INFO    ] 2026-10-25 07:04:06
[2026-10-25 07:04:07,119.119 INFO    ] 2026-10-25 07:04:07
[2026-10-25 07:04:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:04:07,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:04:07,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:04:07,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:04:07,609.609 INFO    ] time= 25/10/2026 07:04:07
[2026-10-25 07:04:07,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:04:07,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:04:07,759.759 INFO    ] No existing commands found in stream
[2026-10-25 07:04:12,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:04:12,783.783 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 07:04:14,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:04:14,798.798 INFO    ] Checking for system updates...
[2026-10-25 07:04:14,834.834 INFO    ] 200
[2026-10-25 07:04:14,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:14,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:04:14,899.899 INFO    ] No update needed
[2026-10-25 07:04:14,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 07:04:14,936.936 INFO    ] 200
[2026-10-25 07:04:14,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:14,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:04:15,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:04:15,151.151 INFO    ] No camera update needed
[2026-10-25 07:04:15,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:04:15,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:04:15,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:04:15,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:04:17,207.207 INFO    ] ================================================
[2026-10-25 07:04:17,222.222 INFO    ] Launching Daemon at Sun Oct 25 07:04:17 IST 2026
[2026-10-25 07:04:17,232.232 INFO    ] ================================================
[2026-10-25 07:04:17,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:04:17
[2026-10-25 07:04:18,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:04:18,661.661 INFO    ] Initializing speech engine...
[2026-10-25 07:04:18,670.670 INFO    ] 2026-10-25 07:04:18
[2026-10-25 07:04:18,934.934 INFO    ] 2026-10-25 07:04:18
[2026-10-25 07:04:18,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:04:19,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:04:19,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:04:19,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:04:19,393.393 INFO    ] time= 25/10/2026 07:04:19
[2026-10-25 07:04:19,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:04:19,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:04:19,550.550 INFO    ] No existing commands found in stream
[2026-10-25 07:04:24,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:04:24,564.564 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 07:04:28,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:04:28,809.809 INFO    ] Checking for system updates...
[2026-10-25 07:04:28,845.845 INFO    ] 200
[2026-10-25 07:04:28,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:28,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:04:28,909.909 INFO    ] No update needed
[2026-10-25 07:04:28,912.912 INFO    ] Checking for camera pi updates...
[2026-10-25 07:04:28,946.946 INFO    ] 200
[2026-10-25 07:04:28,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:28,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:04:29,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:04:29,066.066 INFO    ] No camera update needed
[2026-10-25 07:04:29,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:04:29,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:04:29,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:04:29,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:04:31,122.122 INFO    ] ================================================
[2026-10-25 07:04:31,137.137 INFO    ] Launching Daemon at Sun Oct 25 07:04:31 IST 2026
[2026-10-25 07:04:31,147.147 INFO    ] ================================================
[2026-10-25 07:04:31,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:04:31
[2026-10-25 07:04:32,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:04:32,854.854 INFO    ] Initializing speech engine...
[2026-10-25 07:04:32,866.866 INFO    ] 2026-10-25 07:04:32
[2026-10-25 07:04:33,154.154 INFO    ] 2026-10-25 07:04:33
[2026-10-25 07:04:33,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:04:33,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:04:33,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:04:33,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:04:33,620.620 INFO    ] time= 25/10/2026 07:04:33
[2026-10-25 07:04:33,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:04:33,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:04:33,826.826 INFO    ] No existing commands found in stream
[2026-10-25 07:04:38,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:04:38,856.856 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 07:04:42,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:04:42,062.062 INFO    ] Checking for system updates...
[2026-10-25 07:04:42,099.099 INFO    ] 200
[2026-10-25 07:04:42,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:42,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:04:42,158.158 INFO    ] No update needed
[2026-10-25 07:04:42,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 07:04:42,194.194 INFO    ] 200
[2026-10-25 07:04:42,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:04:42,241.241 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:04:42,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:04:42,311.311 INFO    ] No camera update needed
[2026-10-25 07:04:42,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:04:42,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:04:42,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:04:42,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:04:44,367.367 INFO    ] ================================================
[2026-10-25 07:04:44,382.382 INFO    ] Launching Daemon at Sun Oct 25 07:04:44 IST 2026
[2026-10-25 07:04:44,392.392 INFO    ] ================================================
[2026-10-25 07:04:44,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:04:44
[2026-10-25 07:04:45,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:04:45,790.790 INFO    ] Initializing speech engine...
[2026-10-25 07:04:45,796.796 INFO    ] 2026-10-25 07:04:45
[2026-10-25 07:04:46,070.070 INFO    ] 2026-10-25 07:04:46
[2026-10-25 07:04:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:04:46,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:04:46,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:04:46,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:04:46,444.444 INFO    ] time= 25/10/2026 07:04:46
[2026-10-25 07:04:46,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:04:46,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:04:46,586.586 INFO    ] No existing commands found in stream
[2026-10-25 07:04:51,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:04:51,614.614 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 07:04:54,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:04:54,199.199 INFO    ] Checking for system updates...
[2026-10-25 07:04:54,242.242 INFO    ] 200
[2026-10-25 07:04:54,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:04:54,248.248 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 07:04:54,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 07:04:54,296.296 INFO    ] 200
[2026-10-25 07:04:54,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:04:54,303.303 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 07:04:54,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:04:54,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:04:54,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:04:54,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:04:56,362.362 INFO    ] ================================================
[2026-10-25 07:04:56,377.377 INFO    ] Launching Daemon at Sun Oct 25 07:04:56 IST 2026
[2026-10-25 07:04:56,388.388 INFO    ] ================================================
[2026-10-25 07:04:56,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:04:56
[2026-10-25 07:04:57,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:04:57,861.861 INFO    ] Initializing speech engine...
[2026-10-25 07:04:57,883.883 INFO    ] 2026-10-25 07:04:57
[2026-10-25 07:04:58,157.157 INFO    ] 2026-10-25 07:04:58
[2026-10-25 07:04:58,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:04:58,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:04:58,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:04:58,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:04:58,535.535 INFO    ] time= 25/10/2026 07:04:58
[2026-10-25 07:04:58,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:04:58,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:04:58,659.659 INFO    ] No existing commands found in stream
[2026-10-25 07:05:03,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:05:03,674.674 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 07:05:07,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:05:07,235.235 INFO    ] Checking for system updates...
[2026-10-25 07:05:07,271.271 INFO    ] 200
[2026-10-25 07:05:07,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:07,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:07,337.337 INFO    ] No update needed
[2026-10-25 07:05:07,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 07:05:07,373.373 INFO    ] 200
[2026-10-25 07:05:07,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:07,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:05:07,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:07,485.485 INFO    ] No camera update needed
[2026-10-25 07:05:07,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:05:07,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:05:07,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:05:07,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:05:09,540.540 INFO    ] ================================================
[2026-10-25 07:05:09,559.559 INFO    ] Launching Daemon at Sun Oct 25 07:05:09 IST 2026
[2026-10-25 07:05:09,569.569 INFO    ] ================================================
[2026-10-25 07:05:10,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:05:10
[2026-10-25 07:05:10,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:05:10,972.972 INFO    ] Initializing speech engine...
[2026-10-25 07:05:10,985.985 INFO    ] 2026-10-25 07:05:10
[2026-10-25 07:05:11,250.250 INFO    ] 2026-10-25 07:05:11
[2026-10-25 07:05:11,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:05:11,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:05:11,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:05:11,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:05:11,704.704 INFO    ] time= 25/10/2026 07:05:11
[2026-10-25 07:05:11,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:05:11,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:05:11,904.904 INFO    ] No existing commands found in stream
[2026-10-25 07:05:16,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:05:16,944.944 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 07:05:18,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:05:18,719.719 INFO    ] Checking for system updates...
[2026-10-25 07:05:18,755.755 INFO    ] 200
[2026-10-25 07:05:18,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:18,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:05:18,817.817 INFO    ] No update needed
[2026-10-25 07:05:18,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 07:05:18,853.853 INFO    ] 200
[2026-10-25 07:05:18,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:18,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:05:18,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:05:18,957.957 INFO    ] No camera update needed
[2026-10-25 07:05:18,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:05:18,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:05:18,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:05:18,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:05:21,012.012 INFO    ] ================================================
[2026-10-25 07:05:21,026.026 INFO    ] Launching Daemon at Sun Oct 25 07:05:21 IST 2026
[2026-10-25 07:05:21,037.037 INFO    ] ================================================
[2026-10-25 07:05:21,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:05:21
[2026-10-25 07:05:22,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:05:22,462.462 INFO    ] Initializing speech engine...
[2026-10-25 07:05:22,473.473 INFO    ] 2026-10-25 07:05:22
[2026-10-25 07:05:22,721.721 INFO    ] 2026-10-25 07:05:22
[2026-10-25 07:05:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:05:22,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:05:22,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:05:23,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:05:23,098.098 INFO    ] time= 25/10/2026 07:05:23
[2026-10-25 07:05:23,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:05:23,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:05:23,270.270 INFO    ] No existing commands found in stream
[2026-10-25 07:05:28,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:05:28,298.298 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 07:05:32,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:05:32,966.966 INFO    ] Checking for system updates...
[2026-10-25 07:05:33,007.007 INFO    ] 200
[2026-10-25 07:05:33,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:33,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:33,069.069 INFO    ] No update needed
[2026-10-25 07:05:33,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 07:05:33,109.109 INFO    ] 200
[2026-10-25 07:05:33,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:33,168.168 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:05:33,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:33,214.214 INFO    ] No camera update needed
[2026-10-25 07:05:33,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:05:33,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:05:33,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:05:33,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:05:35,276.276 INFO    ] ================================================
[2026-10-25 07:05:35,291.291 INFO    ] Launching Daemon at Sun Oct 25 07:05:35 IST 2026
[2026-10-25 07:05:35,301.301 INFO    ] ================================================
[2026-10-25 07:05:35,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:05:35
[2026-10-25 07:05:36,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:05:36,746.746 INFO    ] Initializing speech engine...
[2026-10-25 07:05:36,753.753 INFO    ] 2026-10-25 07:05:36
[2026-10-25 07:05:37,010.010 INFO    ] 2026-10-25 07:05:37
[2026-10-25 07:05:37,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:05:37,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:05:37,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:05:37,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:05:37,497.497 INFO    ] time= 25/10/2026 07:05:37
[2026-10-25 07:05:37,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:05:37,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:05:37,692.692 INFO    ] No existing commands found in stream
[2026-10-25 07:05:42,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:05:42,725.725 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 07:05:47,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:05:47,016.016 INFO    ] Checking for system updates...
[2026-10-25 07:05:47,053.053 INFO    ] 200
[2026-10-25 07:05:47,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:47,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:47,110.110 INFO    ] No update needed
[2026-10-25 07:05:47,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 07:05:47,157.157 INFO    ] 200
[2026-10-25 07:05:47,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:05:47,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:05:47,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:05:47,267.267 INFO    ] No camera update needed
[2026-10-25 07:05:47,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:05:47,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:05:47,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:05:47,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:05:49,325.325 INFO    ] ================================================
[2026-10-25 07:05:49,340.340 INFO    ] Launching Daemon at Sun Oct 25 07:05:49 IST 2026
[2026-10-25 07:05:49,351.351 INFO    ] ================================================
[2026-10-25 07:05:49,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:05:49
[2026-10-25 07:05:50,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:05:50,788.788 INFO    ] Initializing speech engine...
[2026-10-25 07:05:50,797.797 INFO    ] 2026-10-25 07:05:50
[2026-10-25 07:05:51,074.074 INFO    ] 2026-10-25 07:05:51
[2026-10-25 07:05:51,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:05:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:05:51,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:05:51,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:05:51,523.523 INFO    ] time= 25/10/2026 07:05:51
[2026-10-25 07:05:51,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:05:51,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:05:51,676.676 INFO    ] No existing commands found in stream
[2026-10-25 07:05:56,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:05:56,690.690 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 07:06:00,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:06:00,153.153 INFO    ] Checking for system updates...
[2026-10-25 07:06:00,189.189 INFO    ] 200
[2026-10-25 07:06:00,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:00,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:00,248.248 INFO    ] No update needed
[2026-10-25 07:06:00,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 07:06:00,290.290 INFO    ] 200
[2026-10-25 07:06:00,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:00,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:06:00,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:00,394.394 INFO    ] No camera update needed
[2026-10-25 07:06:00,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:06:00,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:06:00,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:06:00,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:06:02,456.456 INFO    ] ================================================
[2026-10-25 07:06:02,484.484 INFO    ] Launching Daemon at Sun Oct 25 07:06:02 IST 2026
[2026-10-25 07:06:02,495.495 INFO    ] ================================================
[2026-10-25 07:06:03,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:06:03
[2026-10-25 07:06:03,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:06:03,949.949 INFO    ] Initializing speech engine...
[2026-10-25 07:06:03,958.958 INFO    ] 2026-10-25 07:06:03
[2026-10-25 07:06:04,247.247 INFO    ] 2026-10-25 07:06:04
[2026-10-25 07:06:04,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:06:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:06:04,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:06:04,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:06:04,656.656 INFO    ] time= 25/10/2026 07:06:04
[2026-10-25 07:06:04,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:06:04,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:06:04,739.739 INFO    ] No existing commands found in stream
[2026-10-25 07:06:09,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:06:09,753.753 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 07:06:12,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:06:12,246.246 INFO    ] Checking for system updates...
[2026-10-25 07:06:12,285.285 INFO    ] 200
[2026-10-25 07:06:12,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:12,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:12,342.342 INFO    ] No update needed
[2026-10-25 07:06:12,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 07:06:12,382.382 INFO    ] 200
[2026-10-25 07:06:12,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:12,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:06:12,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:12,546.546 INFO    ] No camera update needed
[2026-10-25 07:06:12,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:06:12,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:06:12,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:06:12,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:06:14,603.603 INFO    ] ================================================
[2026-10-25 07:06:14,617.617 INFO    ] Launching Daemon at Sun Oct 25 07:06:14 IST 2026
[2026-10-25 07:06:14,628.628 INFO    ] ================================================
[2026-10-25 07:06:15,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:06:15
[2026-10-25 07:06:15,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:06:16,206.206 INFO    ] Initializing speech engine...
[2026-10-25 07:06:16,214.214 INFO    ] 2026-10-25 07:06:16
[2026-10-25 07:06:16,482.482 INFO    ] 2026-10-25 07:06:16
[2026-10-25 07:06:16,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:06:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:06:16,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:06:16,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:06:16,973.973 INFO    ] time= 25/10/2026 07:06:16
[2026-10-25 07:06:17,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:06:17,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:06:17,115.115 INFO    ] No existing commands found in stream
[2026-10-25 07:06:22,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:06:22,144.144 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 07:06:24,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:06:24,354.354 INFO    ] Checking for system updates...
[2026-10-25 07:06:24,394.394 INFO    ] 200
[2026-10-25 07:06:24,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:24,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:24,452.452 INFO    ] No update needed
[2026-10-25 07:06:24,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 07:06:24,491.491 INFO    ] 200
[2026-10-25 07:06:24,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:24,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:06:24,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:24,699.699 INFO    ] No camera update needed
[2026-10-25 07:06:24,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:06:24,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:06:24,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:06:24,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:06:26,754.754 INFO    ] ================================================
[2026-10-25 07:06:26,769.769 INFO    ] Launching Daemon at Sun Oct 25 07:06:26 IST 2026
[2026-10-25 07:06:26,779.779 INFO    ] ================================================
[2026-10-25 07:06:27,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:06:27
[2026-10-25 07:06:27,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:06:28,189.189 INFO    ] Initializing speech engine...
[2026-10-25 07:06:28,212.212 INFO    ] 2026-10-25 07:06:28
[2026-10-25 07:06:28,467.467 INFO    ] 2026-10-25 07:06:28
[2026-10-25 07:06:28,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:06:28,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:06:28,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:06:28,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:06:28,945.945 INFO    ] time= 25/10/2026 07:06:28
[2026-10-25 07:06:28,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:06:29,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:06:29,101.101 INFO    ] No existing commands found in stream
[2026-10-25 07:06:34,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:06:34,119.119 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 07:06:36,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:06:36,507.507 INFO    ] Checking for system updates...
[2026-10-25 07:06:36,546.546 INFO    ] 200
[2026-10-25 07:06:36,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:36,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:36,608.608 INFO    ] No update needed
[2026-10-25 07:06:36,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 07:06:36,645.645 INFO    ] 200
[2026-10-25 07:06:36,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:36,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:06:36,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:36,747.747 INFO    ] No camera update needed
[2026-10-25 07:06:36,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:06:36,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:06:36,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:06:36,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:06:38,802.802 INFO    ] ================================================
[2026-10-25 07:06:38,817.817 INFO    ] Launching Daemon at Sun Oct 25 07:06:38 IST 2026
[2026-10-25 07:06:38,828.828 INFO    ] ================================================
[2026-10-25 07:06:39,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:06:39
[2026-10-25 07:06:40,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:06:40,405.405 INFO    ] Initializing speech engine...
[2026-10-25 07:06:40,414.414 INFO    ] 2026-10-25 07:06:40
[2026-10-25 07:06:40,683.683 INFO    ] 2026-10-25 07:06:40
[2026-10-25 07:06:40,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:06:40,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:06:40,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:06:41,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:06:41,203.203 INFO    ] time= 25/10/2026 07:06:41
[2026-10-25 07:06:41,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:06:41,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:06:41,389.389 INFO    ] No existing commands found in stream
[2026-10-25 07:06:46,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:06:46,421.421 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 07:06:50,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:06:50,646.646 INFO    ] Checking for system updates...
[2026-10-25 07:06:50,682.682 INFO    ] 200
[2026-10-25 07:06:50,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:50,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:50,747.747 INFO    ] No update needed
[2026-10-25 07:06:50,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 07:06:50,783.783 INFO    ] 200
[2026-10-25 07:06:50,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:06:50,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:06:50,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:06:50,879.879 INFO    ] No camera update needed
[2026-10-25 07:06:50,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:06:50,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:06:50,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:06:50,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:06:52,933.933 INFO    ] ================================================
[2026-10-25 07:06:52,948.948 INFO    ] Launching Daemon at Sun Oct 25 07:06:52 IST 2026
[2026-10-25 07:06:52,958.958 INFO    ] ================================================
[2026-10-25 07:06:53,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:06:53
[2026-10-25 07:06:54,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:06:54,383.383 INFO    ] Initializing speech engine...
[2026-10-25 07:06:54,392.392 INFO    ] 2026-10-25 07:06:54
[2026-10-25 07:06:54,651.651 INFO    ] 2026-10-25 07:06:54
[2026-10-25 07:06:54,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:06:54,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:06:54,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:06:55,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:06:55,131.131 INFO    ] time= 25/10/2026 07:06:55
[2026-10-25 07:06:55,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:06:55,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:06:55,255.255 INFO    ] No existing commands found in stream
[2026-10-25 07:07:00,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:07:00,278.278 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 07:07:02,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:07:03,003.003 INFO    ] Checking for system updates...
[2026-10-25 07:07:03,044.044 INFO    ] 200
[2026-10-25 07:07:03,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:03,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:03,121.121 INFO    ] No update needed
[2026-10-25 07:07:03,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 07:07:03,167.167 INFO    ] 200
[2026-10-25 07:07:03,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:03,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:07:03,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:03,273.273 INFO    ] No camera update needed
[2026-10-25 07:07:03,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:07:03,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:07:03,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:07:03,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:07:05,332.332 INFO    ] ================================================
[2026-10-25 07:07:05,347.347 INFO    ] Launching Daemon at Sun Oct 25 07:07:05 IST 2026
[2026-10-25 07:07:05,358.358 INFO    ] ================================================
[2026-10-25 07:07:05,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:07:05
[2026-10-25 07:07:06,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:07:06,763.763 INFO    ] Initializing speech engine...
[2026-10-25 07:07:06,772.772 INFO    ] 2026-10-25 07:07:06
[2026-10-25 07:07:07,045.045 INFO    ] 2026-10-25 07:07:07
[2026-10-25 07:07:07,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:07:07,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:07:07,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:07:07,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:07:07,428.428 INFO    ] time= 25/10/2026 07:07:07
[2026-10-25 07:07:07,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:07:07,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:07:07,593.593 INFO    ] No existing commands found in stream
[2026-10-25 07:07:12,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:07:12,621.621 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 07:07:15,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:07:15,841.841 INFO    ] Checking for system updates...
[2026-10-25 07:07:15,880.880 INFO    ] 200
[2026-10-25 07:07:15,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:15,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:07:15,938.938 INFO    ] No update needed
[2026-10-25 07:07:15,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 07:07:15,978.978 INFO    ] 200
[2026-10-25 07:07:15,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:16,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:07:16,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:07:16,088.088 INFO    ] No camera update needed
[2026-10-25 07:07:16,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:07:16,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:07:16,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:07:16,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:07:18,144.144 INFO    ] ================================================
[2026-10-25 07:07:18,159.159 INFO    ] Launching Daemon at Sun Oct 25 07:07:18 IST 2026
[2026-10-25 07:07:18,170.170 INFO    ] ================================================
[2026-10-25 07:07:18,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:07:18
[2026-10-25 07:07:19,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:07:19,597.597 INFO    ] Initializing speech engine...
[2026-10-25 07:07:19,606.606 INFO    ] 2026-10-25 07:07:19
[2026-10-25 07:07:19,857.857 INFO    ] 2026-10-25 07:07:19
[2026-10-25 07:07:19,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:07:20,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:07:20,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:07:20,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:07:20,274.274 INFO    ] time= 25/10/2026 07:07:20
[2026-10-25 07:07:20,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:07:20,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:07:20,360.360 INFO    ] No existing commands found in stream
[2026-10-25 07:07:25,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:07:25,375.375 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 07:07:27,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:07:27,884.884 INFO    ] Checking for system updates...
[2026-10-25 07:07:27,934.934 INFO    ] 200
[2026-10-25 07:07:27,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:27,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:27,998.998 INFO    ] No update needed
[2026-10-25 07:07:28,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 07:07:28,035.035 INFO    ] 200
[2026-10-25 07:07:28,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:28,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:07:28,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:28,129.129 INFO    ] No camera update needed
[2026-10-25 07:07:28,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:07:28,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:07:28,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:07:28,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:07:30,185.185 INFO    ] ================================================
[2026-10-25 07:07:30,201.201 INFO    ] Launching Daemon at Sun Oct 25 07:07:30 IST 2026
[2026-10-25 07:07:30,212.212 INFO    ] ================================================
[2026-10-25 07:07:30,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:07:30
[2026-10-25 07:07:31,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:07:31,687.687 INFO    ] Initializing speech engine...
[2026-10-25 07:07:31,694.694 INFO    ] 2026-10-25 07:07:31
[2026-10-25 07:07:31,966.966 INFO    ] 2026-10-25 07:07:31
[2026-10-25 07:07:32,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:07:32,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:07:32,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:07:32,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:07:32,980.980 INFO    ] time= 25/10/2026 07:07:32
[2026-10-25 07:07:32,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:07:33,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:07:33,077.077 INFO    ] No existing commands found in stream
[2026-10-25 07:07:38,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:07:38,090.090 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 07:07:41,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:07:41,357.357 INFO    ] Checking for system updates...
[2026-10-25 07:07:41,398.398 INFO    ] 200
[2026-10-25 07:07:41,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:41,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:07:41,456.456 INFO    ] No update needed
[2026-10-25 07:07:41,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 07:07:41,492.492 INFO    ] 200
[2026-10-25 07:07:41,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:41,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:07:41,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:07:41,613.613 INFO    ] No camera update needed
[2026-10-25 07:07:41,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:07:41,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:07:41,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:07:41,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:07:43,669.669 INFO    ] ================================================
[2026-10-25 07:07:43,686.686 INFO    ] Launching Daemon at Sun Oct 25 07:07:43 IST 2026
[2026-10-25 07:07:43,697.697 INFO    ] ================================================
[2026-10-25 07:07:44,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:07:44
[2026-10-25 07:07:44,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:07:45,090.090 INFO    ] Initializing speech engine...
[2026-10-25 07:07:45,095.095 INFO    ] 2026-10-25 07:07:45
[2026-10-25 07:07:45,368.368 INFO    ] 2026-10-25 07:07:45
[2026-10-25 07:07:45,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:07:45,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:07:45,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:07:45,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:07:45,848.848 INFO    ] time= 25/10/2026 07:07:45
[2026-10-25 07:07:45,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:07:45,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:07:46,056.056 INFO    ] No existing commands found in stream
[2026-10-25 07:07:51,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:07:51,081.081 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 07:07:54,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:07:54,602.602 INFO    ] Checking for system updates...
[2026-10-25 07:07:54,638.638 INFO    ] 200
[2026-10-25 07:07:54,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:54,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:54,704.704 INFO    ] No update needed
[2026-10-25 07:07:54,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 07:07:54,742.742 INFO    ] 200
[2026-10-25 07:07:54,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:07:54,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:07:54,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:07:54,854.854 INFO    ] No camera update needed
[2026-10-25 07:07:54,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:07:54,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:07:54,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:07:54,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:07:56,912.912 INFO    ] ================================================
[2026-10-25 07:07:56,928.928 INFO    ] Launching Daemon at Sun Oct 25 07:07:56 IST 2026
[2026-10-25 07:07:56,940.940 INFO    ] ================================================
[2026-10-25 07:07:57,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:07:57
[2026-10-25 07:07:58,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:07:58,557.557 INFO    ] Initializing speech engine...
[2026-10-25 07:07:58,567.567 INFO    ] 2026-10-25 07:07:58
[2026-10-25 07:07:58,881.881 INFO    ] 2026-10-25 07:07:58
[2026-10-25 07:07:58,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:07:59,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:07:59,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:07:59,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:07:59,398.398 INFO    ] time= 25/10/2026 07:07:59
[2026-10-25 07:07:59,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:07:59,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:07:59,536.536 INFO    ] No existing commands found in stream
[2026-10-25 07:08:04,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:08:04,550.550 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 07:08:06,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:08:06,684.684 INFO    ] Checking for system updates...
[2026-10-25 07:08:06,721.721 INFO    ] 200
[2026-10-25 07:08:06,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:06,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:08:06,790.790 INFO    ] No update needed
[2026-10-25 07:08:06,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 07:08:06,828.828 INFO    ] 200
[2026-10-25 07:08:06,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:06,875.875 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:08:06,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:08:06,928.928 INFO    ] No camera update needed
[2026-10-25 07:08:06,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:08:06,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:08:06,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:08:06,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:08:08,987.987 INFO    ] ================================================
[2026-10-25 07:08:09,002.002 INFO    ] Launching Daemon at Sun Oct 25 07:08:08 IST 2026
[2026-10-25 07:08:09,012.012 INFO    ] ================================================
[2026-10-25 07:08:09,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:08:09
[2026-10-25 07:08:10,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:08:10,458.458 INFO    ] Initializing speech engine...
[2026-10-25 07:08:10,480.480 INFO    ] 2026-10-25 07:08:10
[2026-10-25 07:08:10,734.734 INFO    ] 2026-10-25 07:08:10
[2026-10-25 07:08:10,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:08:11,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:08:11,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:08:11,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:08:11,215.215 INFO    ] time= 25/10/2026 07:08:11
[2026-10-25 07:08:11,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:08:11,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:08:11,385.385 INFO    ] No existing commands found in stream
[2026-10-25 07:08:16,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:08:16,419.419 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 07:08:19,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:08:19,061.061 INFO    ] Checking for system updates...
[2026-10-25 07:08:19,102.102 INFO    ] 200
[2026-10-25 07:08:19,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:19,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:19,167.167 INFO    ] No update needed
[2026-10-25 07:08:19,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 07:08:19,207.207 INFO    ] 200
[2026-10-25 07:08:19,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:19,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:08:19,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:19,307.307 INFO    ] No camera update needed
[2026-10-25 07:08:19,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:08:19,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:08:19,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:08:19,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:08:21,363.363 INFO    ] ================================================
[2026-10-25 07:08:21,378.378 INFO    ] Launching Daemon at Sun Oct 25 07:08:21 IST 2026
[2026-10-25 07:08:21,389.389 INFO    ] ================================================
[2026-10-25 07:08:21,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:08:21
[2026-10-25 07:08:22,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:08:22,831.831 INFO    ] Initializing speech engine...
[2026-10-25 07:08:22,840.840 INFO    ] 2026-10-25 07:08:22
[2026-10-25 07:08:23,140.140 INFO    ] 2026-10-25 07:08:23
[2026-10-25 07:08:23,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:08:23,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:08:23,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:08:23,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:08:23,556.556 INFO    ] time= 25/10/2026 07:08:23
[2026-10-25 07:08:23,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:08:23,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:08:23,655.655 INFO    ] No existing commands found in stream
[2026-10-25 07:08:28,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:08:28,671.671 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 07:08:32,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:08:32,960.960 INFO    ] Checking for system updates...
[2026-10-25 07:08:33,001.001 INFO    ] 200
[2026-10-25 07:08:33,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:33,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:33,060.060 INFO    ] No update needed
[2026-10-25 07:08:33,062.062 INFO    ] Checking for camera pi updates...
[2026-10-25 07:08:33,096.096 INFO    ] 200
[2026-10-25 07:08:33,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:33,143.143 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:08:33,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:33,204.204 INFO    ] No camera update needed
[2026-10-25 07:08:33,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:08:33,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:08:33,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:08:33,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:08:35,265.265 INFO    ] ================================================
[2026-10-25 07:08:35,280.280 INFO    ] Launching Daemon at Sun Oct 25 07:08:35 IST 2026
[2026-10-25 07:08:35,291.291 INFO    ] ================================================
[2026-10-25 07:08:35,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:08:35
[2026-10-25 07:08:36,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:08:36,747.747 INFO    ] Initializing speech engine...
[2026-10-25 07:08:36,753.753 INFO    ] 2026-10-25 07:08:36
[2026-10-25 07:08:37,053.053 INFO    ] 2026-10-25 07:08:37
[2026-10-25 07:08:37,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:08:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:08:37,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:08:37,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:08:37,479.479 INFO    ] time= 25/10/2026 07:08:37
[2026-10-25 07:08:37,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:08:37,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:08:37,564.564 INFO    ] No existing commands found in stream
[2026-10-25 07:08:42,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:08:42,580.580 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 07:08:45,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:08:45,007.007 INFO    ] Checking for system updates...
[2026-10-25 07:08:45,044.044 INFO    ] 200
[2026-10-25 07:08:45,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:45,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:45,110.110 INFO    ] No update needed
[2026-10-25 07:08:45,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 07:08:45,146.146 INFO    ] 200
[2026-10-25 07:08:45,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:45,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:08:45,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:45,259.259 INFO    ] No camera update needed
[2026-10-25 07:08:45,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:08:45,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:08:45,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:08:45,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:08:47,315.315 INFO    ] ================================================
[2026-10-25 07:08:47,331.331 INFO    ] Launching Daemon at Sun Oct 25 07:08:47 IST 2026
[2026-10-25 07:08:47,342.342 INFO    ] ================================================
[2026-10-25 07:08:47,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:08:47
[2026-10-25 07:08:48,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:08:48,815.815 INFO    ] Initializing speech engine...
[2026-10-25 07:08:48,822.822 INFO    ] 2026-10-25 07:08:48
[2026-10-25 07:08:49,086.086 INFO    ] 2026-10-25 07:08:49
[2026-10-25 07:08:49,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:08:49,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:08:49,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:08:49,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:08:49,496.496 INFO    ] time= 25/10/2026 07:08:49
[2026-10-25 07:08:49,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:08:49,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:08:49,664.664 INFO    ] No existing commands found in stream
[2026-10-25 07:08:54,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:08:54,703.703 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 07:08:55,530.530 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:08:55,532.532 INFO    ] Checking for system updates...
[2026-10-25 07:08:55,569.569 INFO    ] 200
[2026-10-25 07:08:55,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:55,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:55,634.634 INFO    ] No update needed
[2026-10-25 07:08:55,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 07:08:55,677.677 INFO    ] 200
[2026-10-25 07:08:55,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:08:55,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:08:55,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:08:55,783.783 INFO    ] No camera update needed
[2026-10-25 07:08:55,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:08:55,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:08:55,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:08:55,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:08:57,838.838 INFO    ] ================================================
[2026-10-25 07:08:57,853.853 INFO    ] Launching Daemon at Sun Oct 25 07:08:57 IST 2026
[2026-10-25 07:08:57,863.863 INFO    ] ================================================
[2026-10-25 07:08:58,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:08:58
[2026-10-25 07:08:59,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:08:59,310.310 INFO    ] Initializing speech engine...
[2026-10-25 07:08:59,334.334 INFO    ] 2026-10-25 07:08:59
[2026-10-25 07:08:59,618.618 INFO    ] 2026-10-25 07:08:59
[2026-10-25 07:08:59,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:08:59,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:08:59,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:09:00,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:09:00,115.115 INFO    ] time= 25/10/2026 07:09:00
[2026-10-25 07:09:00,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:09:00,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:09:00,270.270 INFO    ] No existing commands found in stream
[2026-10-25 07:09:05,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:09:05,304.304 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 07:09:08,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:09:08,070.070 INFO    ] Checking for system updates...
[2026-10-25 07:09:08,113.113 INFO    ] 200
[2026-10-25 07:09:08,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:08,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:09:08,170.170 INFO    ] No update needed
[2026-10-25 07:09:08,173.173 INFO    ] Checking for camera pi updates...
[2026-10-25 07:09:08,211.211 INFO    ] 200
[2026-10-25 07:09:08,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:08,260.260 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:09:08,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:09:08,320.320 INFO    ] No camera update needed
[2026-10-25 07:09:08,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:09:08,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:09:08,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:09:08,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:09:10,382.382 INFO    ] ================================================
[2026-10-25 07:09:10,397.397 INFO    ] Launching Daemon at Sun Oct 25 07:09:10 IST 2026
[2026-10-25 07:09:10,407.407 INFO    ] ================================================
[2026-10-25 07:09:10,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:09:10
[2026-10-25 07:09:11,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:09:11,811.811 INFO    ] Initializing speech engine...
[2026-10-25 07:09:11,817.817 INFO    ] 2026-10-25 07:09:11
[2026-10-25 07:09:12,115.115 INFO    ] 2026-10-25 07:09:12
[2026-10-25 07:09:12,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:09:12,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:09:12,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:09:12,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:09:12,535.535 INFO    ] time= 25/10/2026 07:09:12
[2026-10-25 07:09:12,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:09:12,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:09:12,625.625 INFO    ] No existing commands found in stream
[2026-10-25 07:09:17,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:09:17,641.641 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 07:09:18,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:09:18,867.867 INFO    ] Checking for system updates...
[2026-10-25 07:09:18,904.904 INFO    ] 200
[2026-10-25 07:09:18,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:18,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:18,974.974 INFO    ] No update needed
[2026-10-25 07:09:18,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 07:09:19,016.016 INFO    ] 200
[2026-10-25 07:09:19,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:19,062.062 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:09:19,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:19,118.118 INFO    ] No camera update needed
[2026-10-25 07:09:19,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:09:19,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:09:19,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:09:19,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:09:21,176.176 INFO    ] ================================================
[2026-10-25 07:09:21,191.191 INFO    ] Launching Daemon at Sun Oct 25 07:09:21 IST 2026
[2026-10-25 07:09:21,202.202 INFO    ] ================================================
[2026-10-25 07:09:21,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:09:21
[2026-10-25 07:09:22,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:09:22,848.848 INFO    ] Initializing speech engine...
[2026-10-25 07:09:22,855.855 INFO    ] 2026-10-25 07:09:22
[2026-10-25 07:09:23,134.134 INFO    ] 2026-10-25 07:09:23
[2026-10-25 07:09:23,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:09:23,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:09:23,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:09:23,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:09:23,686.686 INFO    ] time= 25/10/2026 07:09:23
[2026-10-25 07:09:23,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:09:23,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:09:23,842.842 INFO    ] No existing commands found in stream
[2026-10-25 07:09:28,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:09:28,869.869 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 07:09:33,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:09:33,037.037 INFO    ] Checking for system updates...
[2026-10-25 07:09:33,075.075 INFO    ] 200
[2026-10-25 07:09:33,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:33,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:33,135.135 INFO    ] No update needed
[2026-10-25 07:09:33,138.138 INFO    ] Checking for camera pi updates...
[2026-10-25 07:09:33,177.177 INFO    ] 200
[2026-10-25 07:09:33,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:33,228.228 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:09:33,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:33,263.263 INFO    ] No camera update needed
[2026-10-25 07:09:33,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:09:33,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:09:33,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:09:33,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:09:35,321.321 INFO    ] ================================================
[2026-10-25 07:09:35,336.336 INFO    ] Launching Daemon at Sun Oct 25 07:09:35 IST 2026
[2026-10-25 07:09:35,347.347 INFO    ] ================================================
[2026-10-25 07:09:36,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:09:35
[2026-10-25 07:09:36,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:09:36,984.984 INFO    ] Initializing speech engine...
[2026-10-25 07:09:36,990.990 INFO    ] 2026-10-25 07:09:36
[2026-10-25 07:09:37,283.283 INFO    ] 2026-10-25 07:09:37
[2026-10-25 07:09:37,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:09:37,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:09:37,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:09:37,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:09:37,833.833 INFO    ] time= 25/10/2026 07:09:37
[2026-10-25 07:09:37,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:09:37,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:09:37,972.972 INFO    ] No existing commands found in stream
[2026-10-25 07:09:43,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:09:43,005.005 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 07:09:44,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:09:44,096.096 INFO    ] Checking for system updates...
[2026-10-25 07:09:44,133.133 INFO    ] 200
[2026-10-25 07:09:44,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:44,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:09:44,202.202 INFO    ] No update needed
[2026-10-25 07:09:44,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 07:09:44,244.244 INFO    ] 200
[2026-10-25 07:09:44,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:44,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:09:44,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:09:44,335.335 INFO    ] No camera update needed
[2026-10-25 07:09:44,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:09:44,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:09:44,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:09:44,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:09:46,394.394 INFO    ] ================================================
[2026-10-25 07:09:46,409.409 INFO    ] Launching Daemon at Sun Oct 25 07:09:46 IST 2026
[2026-10-25 07:09:46,420.420 INFO    ] ================================================
[2026-10-25 07:09:47,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:09:47
[2026-10-25 07:09:47,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:09:47,876.876 INFO    ] Initializing speech engine...
[2026-10-25 07:09:47,893.893 INFO    ] 2026-10-25 07:09:47
[2026-10-25 07:09:48,185.185 INFO    ] 2026-10-25 07:09:48
[2026-10-25 07:09:48,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:09:48,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:09:48,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:09:48,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:09:48,615.615 INFO    ] time= 25/10/2026 07:09:48
[2026-10-25 07:09:48,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:09:48,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:09:48,778.778 INFO    ] No existing commands found in stream
[2026-10-25 07:09:53,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:09:53,807.807 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 07:09:56,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:09:56,131.131 INFO    ] Checking for system updates...
[2026-10-25 07:09:56,168.168 INFO    ] 200
[2026-10-25 07:09:56,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:56,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:56,228.228 INFO    ] No update needed
[2026-10-25 07:09:56,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 07:09:56,267.267 INFO    ] 200
[2026-10-25 07:09:56,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:09:56,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:09:56,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:09:56,379.379 INFO    ] No camera update needed
[2026-10-25 07:09:56,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:09:56,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:09:56,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:09:56,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:09:58,439.439 INFO    ] ================================================
[2026-10-25 07:09:58,454.454 INFO    ] Launching Daemon at Sun Oct 25 07:09:58 IST 2026
[2026-10-25 07:09:58,466.466 INFO    ] ================================================
[2026-10-25 07:09:59,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:09:59
[2026-10-25 07:09:59,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:09:59,922.922 INFO    ] Initializing speech engine...
[2026-10-25 07:09:59,944.944 INFO    ] 2026-10-25 07:09:59
[2026-10-25 07:10:00,224.224 INFO    ] 2026-10-25 07:10:00
[2026-10-25 07:10:00,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:10:00,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:10:00,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:10:00,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:10:00,609.609 INFO    ] time= 25/10/2026 07:10:00
[2026-10-25 07:10:00,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:10:00,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:10:00,738.738 INFO    ] No existing commands found in stream
[2026-10-25 07:10:05,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:10:05,756.756 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 07:10:08,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:10:08,488.488 INFO    ] Checking for system updates...
[2026-10-25 07:10:08,524.524 INFO    ] 200
[2026-10-25 07:10:08,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:08,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:08,590.590 INFO    ] No update needed
[2026-10-25 07:10:08,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 07:10:08,630.630 INFO    ] 200
[2026-10-25 07:10:08,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:08,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:10:08,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:08,730.730 INFO    ] No camera update needed
[2026-10-25 07:10:08,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:10:08,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:10:08,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:10:08,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:10:10,785.785 INFO    ] ================================================
[2026-10-25 07:10:10,801.801 INFO    ] Launching Daemon at Sun Oct 25 07:10:10 IST 2026
[2026-10-25 07:10:10,811.811 INFO    ] ================================================
[2026-10-25 07:10:11,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:10:11
[2026-10-25 07:10:11,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:10:12,255.255 INFO    ] Initializing speech engine...
[2026-10-25 07:10:12,260.260 INFO    ] 2026-10-25 07:10:12
[2026-10-25 07:10:12,509.509 INFO    ] 2026-10-25 07:10:12
[2026-10-25 07:10:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:10:12,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:10:12,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:10:12,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:10:13,003.003 INFO    ] time= 25/10/2026 07:10:12
[2026-10-25 07:10:13,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:10:13,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:10:13,198.198 INFO    ] No existing commands found in stream
[2026-10-25 07:10:18,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:10:18,226.226 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 07:10:20,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:10:20,294.294 INFO    ] Checking for system updates...
[2026-10-25 07:10:20,331.331 INFO    ] 200
[2026-10-25 07:10:20,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:20,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:20,389.389 INFO    ] No update needed
[2026-10-25 07:10:20,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 07:10:20,425.425 INFO    ] 200
[2026-10-25 07:10:20,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:20,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:10:20,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:20,526.526 INFO    ] No camera update needed
[2026-10-25 07:10:20,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:10:20,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:10:20,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:10:20,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:10:22,583.583 INFO    ] ================================================
[2026-10-25 07:10:22,598.598 INFO    ] Launching Daemon at Sun Oct 25 07:10:22 IST 2026
[2026-10-25 07:10:22,608.608 INFO    ] ================================================
[2026-10-25 07:10:23,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:10:23
[2026-10-25 07:10:23,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:10:24,255.255 INFO    ] Initializing speech engine...
[2026-10-25 07:10:24,262.262 INFO    ] 2026-10-25 07:10:24
[2026-10-25 07:10:24,584.584 INFO    ] 2026-10-25 07:10:24
[2026-10-25 07:10:24,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:10:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:10:24,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:10:25,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:10:25,111.111 INFO    ] time= 25/10/2026 07:10:25
[2026-10-25 07:10:25,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:10:25,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:10:25,266.266 INFO    ] No existing commands found in stream
[2026-10-25 07:10:30,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:10:30,285.285 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 07:10:33,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:10:33,631.631 INFO    ] Checking for system updates...
[2026-10-25 07:10:33,668.668 INFO    ] 200
[2026-10-25 07:10:33,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:33,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:33,753.753 INFO    ] No update needed
[2026-10-25 07:10:33,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 07:10:33,792.792 INFO    ] 200
[2026-10-25 07:10:33,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:33,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:10:33,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:10:33,995.995 INFO    ] No camera update needed
[2026-10-25 07:10:33,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:10:34,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:10:34,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:10:34,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:10:36,054.054 INFO    ] ================================================
[2026-10-25 07:10:36,069.069 INFO    ] Launching Daemon at Sun Oct 25 07:10:36 IST 2026
[2026-10-25 07:10:36,081.081 INFO    ] ================================================
[2026-10-25 07:10:36,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:10:36
[2026-10-25 07:10:37,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:10:37,526.526 INFO    ] Initializing speech engine...
[2026-10-25 07:10:37,533.533 INFO    ] 2026-10-25 07:10:37
[2026-10-25 07:10:37,832.832 INFO    ] 2026-10-25 07:10:37
[2026-10-25 07:10:37,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:10:38,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:10:38,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:10:38,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:10:38,257.257 INFO    ] time= 25/10/2026 07:10:38
[2026-10-25 07:10:38,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:10:38,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:10:38,350.350 INFO    ] No existing commands found in stream
[2026-10-25 07:10:43,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:10:43,383.383 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 07:10:46,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:10:46,758.758 INFO    ] Checking for system updates...
[2026-10-25 07:10:46,795.795 INFO    ] 200
[2026-10-25 07:10:46,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:46,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:10:46,853.853 INFO    ] No update needed
[2026-10-25 07:10:46,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 07:10:46,889.889 INFO    ] 200
[2026-10-25 07:10:46,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:46,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:10:46,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:10:46,993.993 INFO    ] No camera update needed
[2026-10-25 07:10:46,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:10:46,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:10:47,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:10:47,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:10:49,048.048 INFO    ] ================================================
[2026-10-25 07:10:49,063.063 INFO    ] Launching Daemon at Sun Oct 25 07:10:49 IST 2026
[2026-10-25 07:10:49,075.075 INFO    ] ================================================
[2026-10-25 07:10:49,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:10:49
[2026-10-25 07:10:50,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:10:50,522.522 INFO    ] Initializing speech engine...
[2026-10-25 07:10:50,529.529 INFO    ] 2026-10-25 07:10:50
[2026-10-25 07:10:50,829.829 INFO    ] 2026-10-25 07:10:50
[2026-10-25 07:10:50,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:10:51,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:10:51,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:10:51,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:10:51,227.227 INFO    ] time= 25/10/2026 07:10:51
[2026-10-25 07:10:51,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:10:51,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:10:51,342.342 INFO    ] No existing commands found in stream
[2026-10-25 07:10:56,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:10:56,358.358 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 07:10:59,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:10:59,694.694 INFO    ] Checking for system updates...
[2026-10-25 07:10:59,731.731 INFO    ] 200
[2026-10-25 07:10:59,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:59,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:10:59,789.789 INFO    ] No update needed
[2026-10-25 07:10:59,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 07:10:59,826.826 INFO    ] 200
[2026-10-25 07:10:59,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:10:59,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:10:59,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:10:59,925.925 INFO    ] No camera update needed
[2026-10-25 07:10:59,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:10:59,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:10:59,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:10:59,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:11:02,998.998 INFO    ] ================================================
[2026-10-25 07:11:02,028.028 INFO    ] Launching Daemon at Sun Oct 25 07:11:02 IST 2026
[2026-10-25 07:11:02,052.052 INFO    ] ================================================
[2026-10-25 07:11:02,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:11:02
[2026-10-25 07:11:03,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:11:03,923.923 INFO    ] Initializing speech engine...
[2026-10-25 07:11:03,934.934 INFO    ] 2026-10-25 07:11:03
[2026-10-25 07:11:04,204.204 INFO    ] 2026-10-25 07:11:04
[2026-10-25 07:11:04,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:11:04,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:11:04,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:11:04,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:11:04,630.630 INFO    ] time= 25/10/2026 07:11:04
[2026-10-25 07:11:04,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:11:04,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:11:04,714.714 INFO    ] No existing commands found in stream
[2026-10-25 07:11:09,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:11:09,730.730 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 07:11:12,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:11:12,400.400 INFO    ] Checking for system updates...
[2026-10-25 07:11:12,437.437 INFO    ] 200
[2026-10-25 07:11:12,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:12,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:11:12,495.495 INFO    ] No update needed
[2026-10-25 07:11:12,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 07:11:12,531.531 INFO    ] 200
[2026-10-25 07:11:12,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:12,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:11:12,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:11:12,633.633 INFO    ] No camera update needed
[2026-10-25 07:11:12,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:11:12,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:11:12,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:11:12,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:11:14,691.691 INFO    ] ================================================
[2026-10-25 07:11:14,706.706 INFO    ] Launching Daemon at Sun Oct 25 07:11:14 IST 2026
[2026-10-25 07:11:14,717.717 INFO    ] ================================================
[2026-10-25 07:11:15,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:11:15
[2026-10-25 07:11:15,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:11:16,168.168 INFO    ] Initializing speech engine...
[2026-10-25 07:11:16,175.175 INFO    ] 2026-10-25 07:11:16
[2026-10-25 07:11:16,435.435 INFO    ] 2026-10-25 07:11:16
[2026-10-25 07:11:16,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:11:16,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:11:16,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:11:16,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:11:16,903.903 INFO    ] time= 25/10/2026 07:11:16
[2026-10-25 07:11:16,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:11:16,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:11:17,046.046 INFO    ] No existing commands found in stream
[2026-10-25 07:11:22,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:11:22,081.081 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 07:11:26,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:11:26,328.328 INFO    ] Checking for system updates...
[2026-10-25 07:11:26,364.364 INFO    ] 200
[2026-10-25 07:11:26,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:26,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:11:26,423.423 INFO    ] No update needed
[2026-10-25 07:11:26,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 07:11:26,459.459 INFO    ] 200
[2026-10-25 07:11:26,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:26,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:11:26,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:11:26,555.555 INFO    ] No camera update needed
[2026-10-25 07:11:26,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:11:26,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:11:26,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:11:26,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:11:28,611.611 INFO    ] ================================================
[2026-10-25 07:11:28,627.627 INFO    ] Launching Daemon at Sun Oct 25 07:11:28 IST 2026
[2026-10-25 07:11:28,638.638 INFO    ] ================================================
[2026-10-25 07:11:29,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:11:29
[2026-10-25 07:11:29,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:11:30,093.093 INFO    ] Initializing speech engine...
[2026-10-25 07:11:30,102.102 INFO    ] 2026-10-25 07:11:30
[2026-10-25 07:11:30,350.350 INFO    ] 2026-10-25 07:11:30
[2026-10-25 07:11:30,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:11:30,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:11:30,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:11:32,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:11:32,808.808 INFO    ] time= 25/10/2026 07:11:32
[2026-10-25 07:11:32,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:11:32,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:11:32,932.932 INFO    ] No existing commands found in stream
[2026-10-25 07:11:37,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:11:37,962.962 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 07:11:40,547.547 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:11:40,549.549 INFO    ] Checking for system updates...
[2026-10-25 07:11:40,585.585 INFO    ] 200
[2026-10-25 07:11:40,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:40,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:11:40,645.645 INFO    ] No update needed
[2026-10-25 07:11:40,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 07:11:40,681.681 INFO    ] 200
[2026-10-25 07:11:40,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:40,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:11:40,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:11:40,780.780 INFO    ] No camera update needed
[2026-10-25 07:11:40,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:11:40,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:11:40,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:11:40,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:11:42,836.836 INFO    ] ================================================
[2026-10-25 07:11:42,852.852 INFO    ] Launching Daemon at Sun Oct 25 07:11:42 IST 2026
[2026-10-25 07:11:42,869.869 INFO    ] ================================================
[2026-10-25 07:11:43,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:11:43
[2026-10-25 07:11:44,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:11:44,287.287 INFO    ] Initializing speech engine...
[2026-10-25 07:11:44,295.295 INFO    ] 2026-10-25 07:11:44
[2026-10-25 07:11:44,547.547 INFO    ] 2026-10-25 07:11:44
[2026-10-25 07:11:44,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:11:44,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:11:44,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:11:44,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:11:44,924.924 INFO    ] time= 25/10/2026 07:11:44
[2026-10-25 07:11:44,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:11:44,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:11:45,092.092 INFO    ] No existing commands found in stream
[2026-10-25 07:11:50,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:11:50,120.120 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 07:11:52,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:11:52,454.454 INFO    ] Checking for system updates...
[2026-10-25 07:11:52,491.491 INFO    ] 200
[2026-10-25 07:11:52,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:52,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:11:52,548.548 INFO    ] No update needed
[2026-10-25 07:11:52,551.551 INFO    ] Checking for camera pi updates...
[2026-10-25 07:11:52,584.584 INFO    ] 200
[2026-10-25 07:11:52,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:11:52,627.627 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:11:52,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:11:52,690.690 INFO    ] No camera update needed
[2026-10-25 07:11:52,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:11:52,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:11:52,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:11:52,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:11:54,744.744 INFO    ] ================================================
[2026-10-25 07:11:54,759.759 INFO    ] Launching Daemon at Sun Oct 25 07:11:54 IST 2026
[2026-10-25 07:11:54,771.771 INFO    ] ================================================
[2026-10-25 07:11:55,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:11:55
[2026-10-25 07:11:56,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:11:56,387.387 INFO    ] Initializing speech engine...
[2026-10-25 07:11:56,397.397 INFO    ] 2026-10-25 07:11:56
[2026-10-25 07:11:56,662.662 INFO    ] 2026-10-25 07:11:56
[2026-10-25 07:11:56,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:11:56,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:11:56,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:11:57,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:11:57,122.122 INFO    ] time= 25/10/2026 07:11:57
[2026-10-25 07:11:57,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:11:57,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:11:57,292.292 INFO    ] No existing commands found in stream
[2026-10-25 07:12:02,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:12:02,307.307 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 07:12:04,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:12:04,576.576 INFO    ] Checking for system updates...
[2026-10-25 07:12:04,612.612 INFO    ] 200
[2026-10-25 07:12:04,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:04,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:12:04,669.669 INFO    ] No update needed
[2026-10-25 07:12:04,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 07:12:04,705.705 INFO    ] 200
[2026-10-25 07:12:04,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:04,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:12:04,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:12:04,813.813 INFO    ] No camera update needed
[2026-10-25 07:12:04,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:12:04,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:12:04,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:12:04,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:12:06,871.871 INFO    ] ================================================
[2026-10-25 07:12:06,887.887 INFO    ] Launching Daemon at Sun Oct 25 07:12:06 IST 2026
[2026-10-25 07:12:06,898.898 INFO    ] ================================================
[2026-10-25 07:12:07,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:12:07
[2026-10-25 07:12:08,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:12:08,341.341 INFO    ] Initializing speech engine...
[2026-10-25 07:12:08,348.348 INFO    ] 2026-10-25 07:12:08
[2026-10-25 07:12:08,644.644 INFO    ] 2026-10-25 07:12:08
[2026-10-25 07:12:08,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:12:08,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:12:08,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:12:09,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:12:09,057.057 INFO    ] time= 25/10/2026 07:12:09
[2026-10-25 07:12:09,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:12:09,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:12:09,141.141 INFO    ] No existing commands found in stream
[2026-10-25 07:12:14,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:12:14,157.157 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 07:12:18,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:12:18,371.371 INFO    ] Checking for system updates...
[2026-10-25 07:12:18,406.406 INFO    ] 200
[2026-10-25 07:12:18,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:18,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:18,464.464 INFO    ] No update needed
[2026-10-25 07:12:18,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 07:12:18,501.501 INFO    ] 200
[2026-10-25 07:12:18,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:18,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:12:18,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:18,601.601 INFO    ] No camera update needed
[2026-10-25 07:12:18,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:12:18,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:12:18,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:12:18,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:12:20,657.657 INFO    ] ================================================
[2026-10-25 07:12:20,673.673 INFO    ] Launching Daemon at Sun Oct 25 07:12:20 IST 2026
[2026-10-25 07:12:20,683.683 INFO    ] ================================================
[2026-10-25 07:12:21,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:12:21
[2026-10-25 07:12:21,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:12:22,097.097 INFO    ] Initializing speech engine...
[2026-10-25 07:12:22,115.115 INFO    ] 2026-10-25 07:12:22
[2026-10-25 07:12:22,364.364 INFO    ] 2026-10-25 07:12:22
[2026-10-25 07:12:22,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:12:22,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:12:22,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:12:22,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:12:22,763.763 INFO    ] time= 25/10/2026 07:12:22
[2026-10-25 07:12:22,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:12:22,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:12:22,958.958 INFO    ] No existing commands found in stream
[2026-10-25 07:12:27,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:12:27,977.977 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 07:12:29,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:12:29,171.171 INFO    ] Checking for system updates...
[2026-10-25 07:12:29,216.216 INFO    ] 200
[2026-10-25 07:12:29,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:29,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:12:29,276.276 INFO    ] No update needed
[2026-10-25 07:12:29,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 07:12:29,316.316 INFO    ] 200
[2026-10-25 07:12:29,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:29,360.360 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:12:29,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:12:29,419.419 INFO    ] No camera update needed
[2026-10-25 07:12:29,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:12:29,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:12:29,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:12:29,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:12:31,478.478 INFO    ] ================================================
[2026-10-25 07:12:31,493.493 INFO    ] Launching Daemon at Sun Oct 25 07:12:31 IST 2026
[2026-10-25 07:12:31,505.505 INFO    ] ================================================
[2026-10-25 07:12:32,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:12:32
[2026-10-25 07:12:32,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:12:33,098.098 INFO    ] Initializing speech engine...
[2026-10-25 07:12:33,105.105 INFO    ] 2026-10-25 07:12:33
[2026-10-25 07:12:33,405.405 INFO    ] 2026-10-25 07:12:33
[2026-10-25 07:12:33,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:12:33,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:12:33,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:12:33,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:12:33,866.866 INFO    ] time= 25/10/2026 07:12:33
[2026-10-25 07:12:33,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:12:33,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:12:34,008.008 INFO    ] No existing commands found in stream
[2026-10-25 07:12:39,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:12:39,023.023 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 07:12:39,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:12:39,752.752 INFO    ] Checking for system updates...
[2026-10-25 07:12:39,788.788 INFO    ] 200
[2026-10-25 07:12:39,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:39,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:39,850.850 INFO    ] No update needed
[2026-10-25 07:12:39,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 07:12:39,886.886 INFO    ] 200
[2026-10-25 07:12:39,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:39,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:12:40,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:40,095.095 INFO    ] No camera update needed
[2026-10-25 07:12:40,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:12:40,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:12:40,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:12:40,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:12:42,152.152 INFO    ] ================================================
[2026-10-25 07:12:42,167.167 INFO    ] Launching Daemon at Sun Oct 25 07:12:42 IST 2026
[2026-10-25 07:12:42,178.178 INFO    ] ================================================
[2026-10-25 07:12:42,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:12:42
[2026-10-25 07:12:43,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:12:43,619.619 INFO    ] Initializing speech engine...
[2026-10-25 07:12:43,632.632 INFO    ] 2026-10-25 07:12:43
[2026-10-25 07:12:43,913.913 INFO    ] 2026-10-25 07:12:43
[2026-10-25 07:12:43,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:12:44,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:12:44,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:12:44,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:12:44,399.399 INFO    ] time= 25/10/2026 07:12:44
[2026-10-25 07:12:44,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:12:44,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:12:44,572.572 INFO    ] No existing commands found in stream
[2026-10-25 07:12:49,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:12:49,590.590 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 07:12:53,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:12:53,542.542 INFO    ] Checking for system updates...
[2026-10-25 07:12:53,581.581 INFO    ] 200
[2026-10-25 07:12:53,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:53,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:53,639.639 INFO    ] No update needed
[2026-10-25 07:12:53,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 07:12:53,674.674 INFO    ] 200
[2026-10-25 07:12:53,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:12:53,720.720 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:12:53,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:12:53,771.771 INFO    ] No camera update needed
[2026-10-25 07:12:53,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:12:53,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:12:53,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:12:53,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:12:55,825.825 INFO    ] ================================================
[2026-10-25 07:12:55,839.839 INFO    ] Launching Daemon at Sun Oct 25 07:12:55 IST 2026
[2026-10-25 07:12:55,850.850 INFO    ] ================================================
[2026-10-25 07:12:56,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:12:56
[2026-10-25 07:12:57,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:12:57,283.283 INFO    ] Initializing speech engine...
[2026-10-25 07:12:57,289.289 INFO    ] 2026-10-25 07:12:57
[2026-10-25 07:12:57,582.582 INFO    ] 2026-10-25 07:12:57
[2026-10-25 07:12:57,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:12:57,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:12:57,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:12:57,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:12:57,995.995 INFO    ] time= 25/10/2026 07:12:57
[2026-10-25 07:12:57,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:12:58,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:12:58,078.078 INFO    ] No existing commands found in stream
[2026-10-25 07:13:03,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:13:03,094.094 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 07:13:06,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:13:06,093.093 INFO    ] Checking for system updates...
[2026-10-25 07:13:06,130.130 INFO    ] 200
[2026-10-25 07:13:06,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:06,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:06,188.188 INFO    ] No update needed
[2026-10-25 07:13:06,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 07:13:06,223.223 INFO    ] 200
[2026-10-25 07:13:06,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:06,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:13:06,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:06,319.319 INFO    ] No camera update needed
[2026-10-25 07:13:06,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:13:06,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:13:06,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:13:06,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:13:08,374.374 INFO    ] ================================================
[2026-10-25 07:13:08,389.389 INFO    ] Launching Daemon at Sun Oct 25 07:13:08 IST 2026
[2026-10-25 07:13:08,401.401 INFO    ] ================================================
[2026-10-25 07:13:09,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:13:09
[2026-10-25 07:13:09,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:13:09,991.991 INFO    ] Initializing speech engine...
[2026-10-25 07:13:09,999.999 INFO    ] 2026-10-25 07:13:09
[2026-10-25 07:13:10,267.267 INFO    ] 2026-10-25 07:13:10
[2026-10-25 07:13:10,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:13:10,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:13:10,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:13:10,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:13:10,744.744 INFO    ] time= 25/10/2026 07:13:10
[2026-10-25 07:13:10,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:13:10,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:13:10,958.958 INFO    ] No existing commands found in stream
[2026-10-25 07:13:15,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:13:15,989.989 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 07:13:19,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:13:19,070.070 INFO    ] Checking for system updates...
[2026-10-25 07:13:19,119.119 INFO    ] 200
[2026-10-25 07:13:19,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:19,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:19,201.201 INFO    ] No update needed
[2026-10-25 07:13:19,204.204 INFO    ] Checking for camera pi updates...
[2026-10-25 07:13:19,242.242 INFO    ] 200
[2026-10-25 07:13:19,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:19,287.287 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:13:19,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:19,338.338 INFO    ] No camera update needed
[2026-10-25 07:13:19,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:13:19,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:13:19,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:13:19,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:13:21,396.396 INFO    ] ================================================
[2026-10-25 07:13:21,411.411 INFO    ] Launching Daemon at Sun Oct 25 07:13:21 IST 2026
[2026-10-25 07:13:21,423.423 INFO    ] ================================================
[2026-10-25 07:13:21,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:13:21
[2026-10-25 07:13:22,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:13:22,833.833 INFO    ] Initializing speech engine...
[2026-10-25 07:13:22,841.841 INFO    ] 2026-10-25 07:13:22
[2026-10-25 07:13:23,131.131 INFO    ] 2026-10-25 07:13:23
[2026-10-25 07:13:23,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:13:23,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:13:23,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:13:23,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:13:23,543.543 INFO    ] time= 25/10/2026 07:13:23
[2026-10-25 07:13:23,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:13:23,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:13:23,626.626 INFO    ] No existing commands found in stream
[2026-10-25 07:13:28,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:13:28,641.641 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 07:13:30,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:13:30,750.750 INFO    ] Checking for system updates...
[2026-10-25 07:13:30,786.786 INFO    ] 200
[2026-10-25 07:13:30,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:30,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:30,847.847 INFO    ] No update needed
[2026-10-25 07:13:30,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 07:13:30,883.883 INFO    ] 200
[2026-10-25 07:13:30,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:30,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:13:30,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:30,995.995 INFO    ] No camera update needed
[2026-10-25 07:13:30,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:13:30,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:13:31,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:13:31,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:13:33,055.055 INFO    ] ================================================
[2026-10-25 07:13:33,071.071 INFO    ] Launching Daemon at Sun Oct 25 07:13:33 IST 2026
[2026-10-25 07:13:33,084.084 INFO    ] ================================================
[2026-10-25 07:13:33,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:13:33
[2026-10-25 07:13:34,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:13:34,527.527 INFO    ] Initializing speech engine...
[2026-10-25 07:13:34,552.552 INFO    ] 2026-10-25 07:13:34
[2026-10-25 07:13:34,823.823 INFO    ] 2026-10-25 07:13:34
[2026-10-25 07:13:34,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:13:35,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:13:35,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:13:35,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:13:35,635.635 INFO    ] time= 25/10/2026 07:13:35
[2026-10-25 07:13:35,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:13:35,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:13:35,831.831 INFO    ] No existing commands found in stream
[2026-10-25 07:13:40,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:13:40,859.859 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 07:13:44,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:13:44,028.028 INFO    ] Checking for system updates...
[2026-10-25 07:13:44,064.064 INFO    ] 200
[2026-10-25 07:13:44,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:44,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:13:44,121.121 INFO    ] No update needed
[2026-10-25 07:13:44,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 07:13:44,161.161 INFO    ] 200
[2026-10-25 07:13:44,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:44,204.204 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:13:44,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:13:44,251.251 INFO    ] No camera update needed
[2026-10-25 07:13:44,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:13:44,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:13:44,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:13:44,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:13:46,307.307 INFO    ] ================================================
[2026-10-25 07:13:46,323.323 INFO    ] Launching Daemon at Sun Oct 25 07:13:46 IST 2026
[2026-10-25 07:13:46,334.334 INFO    ] ================================================
[2026-10-25 07:13:46,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:13:46
[2026-10-25 07:13:47,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:13:47,736.736 INFO    ] Initializing speech engine...
[2026-10-25 07:13:47,741.741 INFO    ] 2026-10-25 07:13:47
[2026-10-25 07:13:48,031.031 INFO    ] 2026-10-25 07:13:48
[2026-10-25 07:13:48,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:13:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:13:48,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:13:48,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:13:48,404.404 INFO    ] time= 25/10/2026 07:13:48
[2026-10-25 07:13:48,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:13:48,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:13:48,527.527 INFO    ] No existing commands found in stream
[2026-10-25 07:13:53,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:13:53,543.543 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 07:13:54,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:13:54,641.641 INFO    ] Checking for system updates...
[2026-10-25 07:13:54,678.678 INFO    ] 200
[2026-10-25 07:13:54,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:54,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:54,748.748 INFO    ] No update needed
[2026-10-25 07:13:54,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 07:13:54,784.784 INFO    ] 200
[2026-10-25 07:13:54,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:13:54,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:13:54,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:13:54,877.877 INFO    ] No camera update needed
[2026-10-25 07:13:54,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:13:54,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:13:54,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:13:54,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:13:56,932.932 INFO    ] ================================================
[2026-10-25 07:13:56,948.948 INFO    ] Launching Daemon at Sun Oct 25 07:13:56 IST 2026
[2026-10-25 07:13:56,959.959 INFO    ] ================================================
[2026-10-25 07:13:57,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:13:57
[2026-10-25 07:13:58,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:13:58,558.558 INFO    ] Initializing speech engine...
[2026-10-25 07:13:58,568.568 INFO    ] 2026-10-25 07:13:58
[2026-10-25 07:13:58,847.847 INFO    ] 2026-10-25 07:13:58
[2026-10-25 07:13:58,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:13:59,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:13:59,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:13:59,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:13:59,320.320 INFO    ] time= 25/10/2026 07:13:59
[2026-10-25 07:13:59,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:13:59,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:13:59,494.494 INFO    ] No existing commands found in stream
[2026-10-25 07:14:04,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:14:04,534.534 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 07:14:05,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:14:05,482.482 INFO    ] Checking for system updates...
[2026-10-25 07:14:05,518.518 INFO    ] 200
[2026-10-25 07:14:05,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:05,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:14:05,581.581 INFO    ] No update needed
[2026-10-25 07:14:05,584.584 INFO    ] Checking for camera pi updates...
[2026-10-25 07:14:05,618.618 INFO    ] 200
[2026-10-25 07:14:05,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:05,661.661 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:14:05,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:14:05,715.715 INFO    ] No camera update needed
[2026-10-25 07:14:05,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:14:05,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:14:05,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:14:05,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:14:07,770.770 INFO    ] ================================================
[2026-10-25 07:14:07,785.785 INFO    ] Launching Daemon at Sun Oct 25 07:14:07 IST 2026
[2026-10-25 07:14:07,796.796 INFO    ] ================================================
[2026-10-25 07:14:08,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:14:08
[2026-10-25 07:14:09,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:14:09,431.431 INFO    ] Initializing speech engine...
[2026-10-25 07:14:09,443.443 INFO    ] 2026-10-25 07:14:09
[2026-10-25 07:14:09,715.715 INFO    ] 2026-10-25 07:14:09
[2026-10-25 07:14:09,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:14:10,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:14:10,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:14:10,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:14:10,204.204 INFO    ] time= 25/10/2026 07:14:10
[2026-10-25 07:14:10,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:14:10,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:14:10,419.419 INFO    ] No existing commands found in stream
[2026-10-25 07:14:15,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:14:15,449.449 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 07:14:16,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:14:16,122.122 INFO    ] Checking for system updates...
[2026-10-25 07:14:16,159.159 INFO    ] 200
[2026-10-25 07:14:16,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:16,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:16,224.224 INFO    ] No update needed
[2026-10-25 07:14:16,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 07:14:16,260.260 INFO    ] 200
[2026-10-25 07:14:16,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:16,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:14:16,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:16,352.352 INFO    ] No camera update needed
[2026-10-25 07:14:16,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:14:16,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:14:16,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:14:16,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:14:18,407.407 INFO    ] ================================================
[2026-10-25 07:14:18,422.422 INFO    ] Launching Daemon at Sun Oct 25 07:14:18 IST 2026
[2026-10-25 07:14:18,434.434 INFO    ] ================================================
[2026-10-25 07:14:19,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:14:19
[2026-10-25 07:14:19,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:14:19,890.890 INFO    ] Initializing speech engine...
[2026-10-25 07:14:19,899.899 INFO    ] 2026-10-25 07:14:19
[2026-10-25 07:14:20,148.148 INFO    ] 2026-10-25 07:14:20
[2026-10-25 07:14:20,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:14:20,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:14:20,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:14:20,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:14:20,578.578 INFO    ] time= 25/10/2026 07:14:20
[2026-10-25 07:14:20,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:14:20,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:14:20,749.749 INFO    ] No existing commands found in stream
[2026-10-25 07:14:25,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:14:25,767.767 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 07:14:26,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:14:26,990.990 INFO    ] Checking for system updates...
[2026-10-25 07:14:27,027.027 INFO    ] 200
[2026-10-25 07:14:27,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:27,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:27,094.094 INFO    ] No update needed
[2026-10-25 07:14:27,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 07:14:27,130.130 INFO    ] 200
[2026-10-25 07:14:27,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:27,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:14:27,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:27,226.226 INFO    ] No camera update needed
[2026-10-25 07:14:27,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:14:27,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:14:27,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:14:27,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:14:29,281.281 INFO    ] ================================================
[2026-10-25 07:14:29,296.296 INFO    ] Launching Daemon at Sun Oct 25 07:14:29 IST 2026
[2026-10-25 07:14:29,307.307 INFO    ] ================================================
[2026-10-25 07:14:29,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:14:29
[2026-10-25 07:14:30,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:14:30,765.765 INFO    ] Initializing speech engine...
[2026-10-25 07:14:30,772.772 INFO    ] 2026-10-25 07:14:30
[2026-10-25 07:14:31,017.017 INFO    ] 2026-10-25 07:14:31
[2026-10-25 07:14:31,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:14:32,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:14:32,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:14:32,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:14:32,849.849 INFO    ] time= 25/10/2026 07:14:32
[2026-10-25 07:14:32,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:14:32,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:14:32,989.989 INFO    ] No existing commands found in stream
[2026-10-25 07:14:38,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:14:38,003.003 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 07:14:41,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:14:41,057.057 INFO    ] Checking for system updates...
[2026-10-25 07:14:41,093.093 INFO    ] 200
[2026-10-25 07:14:41,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:41,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:14:41,151.151 INFO    ] No update needed
[2026-10-25 07:14:41,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 07:14:41,188.188 INFO    ] 200
[2026-10-25 07:14:41,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:41,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:14:41,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:14:41,392.392 INFO    ] No camera update needed
[2026-10-25 07:14:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:14:41,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:14:41,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:14:41,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:14:43,450.450 INFO    ] ================================================
[2026-10-25 07:14:43,465.465 INFO    ] Launching Daemon at Sun Oct 25 07:14:43 IST 2026
[2026-10-25 07:14:43,476.476 INFO    ] ================================================
[2026-10-25 07:14:44,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:14:44
[2026-10-25 07:14:44,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:14:44,916.916 INFO    ] Initializing speech engine...
[2026-10-25 07:14:44,926.926 INFO    ] 2026-10-25 07:14:44
[2026-10-25 07:14:45,233.233 INFO    ] 2026-10-25 07:14:45
[2026-10-25 07:14:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:14:45,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:14:45,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:14:45,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:14:45,626.626 INFO    ] time= 25/10/2026 07:14:45
[2026-10-25 07:14:45,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:14:45,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:14:45,756.756 INFO    ] No existing commands found in stream
[2026-10-25 07:14:50,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:14:50,772.772 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 07:14:54,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:14:54,326.326 INFO    ] Checking for system updates...
[2026-10-25 07:14:54,363.363 INFO    ] 200
[2026-10-25 07:14:54,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:54,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:54,430.430 INFO    ] No update needed
[2026-10-25 07:14:54,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 07:14:54,471.471 INFO    ] 200
[2026-10-25 07:14:54,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:14:54,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:14:54,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:14:54,574.574 INFO    ] No camera update needed
[2026-10-25 07:14:54,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:14:54,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:14:54,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:14:54,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:14:56,630.630 INFO    ] ================================================
[2026-10-25 07:14:56,645.645 INFO    ] Launching Daemon at Sun Oct 25 07:14:56 IST 2026
[2026-10-25 07:14:56,656.656 INFO    ] ================================================
[2026-10-25 07:14:57,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:14:57
[2026-10-25 07:14:57,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:14:58,099.099 INFO    ] Initializing speech engine...
[2026-10-25 07:14:58,108.108 INFO    ] 2026-10-25 07:14:58
[2026-10-25 07:14:58,410.410 INFO    ] 2026-10-25 07:14:58
[2026-10-25 07:14:58,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:14:58,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:14:58,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:14:58,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:14:58,800.800 INFO    ] time= 25/10/2026 07:14:58
[2026-10-25 07:14:58,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:14:58,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:14:58,929.929 INFO    ] No existing commands found in stream
[2026-10-25 07:15:03,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:15:03,944.944 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 07:15:06,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:15:06,005.005 INFO    ] Checking for system updates...
[2026-10-25 07:15:06,041.041 INFO    ] 200
[2026-10-25 07:15:06,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:06,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:06,104.104 INFO    ] No update needed
[2026-10-25 07:15:06,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 07:15:06,139.139 INFO    ] 200
[2026-10-25 07:15:06,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:06,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:15:06,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:06,232.232 INFO    ] No camera update needed
[2026-10-25 07:15:06,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:15:06,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:15:06,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:15:06,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:15:08,288.288 INFO    ] ================================================
[2026-10-25 07:15:08,304.304 INFO    ] Launching Daemon at Sun Oct 25 07:15:08 IST 2026
[2026-10-25 07:15:08,314.314 INFO    ] ================================================
[2026-10-25 07:15:08,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:15:08
[2026-10-25 07:15:09,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:15:09,761.761 INFO    ] Initializing speech engine...
[2026-10-25 07:15:09,786.786 INFO    ] 2026-10-25 07:15:09
[2026-10-25 07:15:10,058.058 INFO    ] 2026-10-25 07:15:10
[2026-10-25 07:15:10,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:15:10,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:15:10,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:15:10,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:15:10,465.465 INFO    ] time= 25/10/2026 07:15:10
[2026-10-25 07:15:10,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:15:10,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:15:10,621.621 INFO    ] No existing commands found in stream
[2026-10-25 07:15:15,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:15:15,648.648 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 07:15:19,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:15:19,307.307 INFO    ] Checking for system updates...
[2026-10-25 07:15:19,346.346 INFO    ] 200
[2026-10-25 07:15:19,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:19,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:19,410.410 INFO    ] No update needed
[2026-10-25 07:15:19,412.412 INFO    ] Checking for camera pi updates...
[2026-10-25 07:15:19,446.446 INFO    ] 200
[2026-10-25 07:15:19,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:19,493.493 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:15:19,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:19,555.555 INFO    ] No camera update needed
[2026-10-25 07:15:19,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:15:19,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:15:19,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:15:19,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:15:21,610.610 INFO    ] ================================================
[2026-10-25 07:15:21,626.626 INFO    ] Launching Daemon at Sun Oct 25 07:15:21 IST 2026
[2026-10-25 07:15:21,636.636 INFO    ] ================================================
[2026-10-25 07:15:22,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:15:22
[2026-10-25 07:15:22,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:15:23,076.076 INFO    ] Initializing speech engine...
[2026-10-25 07:15:23,085.085 INFO    ] 2026-10-25 07:15:23
[2026-10-25 07:15:23,373.373 INFO    ] 2026-10-25 07:15:23
[2026-10-25 07:15:23,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:15:23,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:15:23,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:15:23,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:15:23,779.779 INFO    ] time= 25/10/2026 07:15:23
[2026-10-25 07:15:23,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:15:23,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:15:23,944.944 INFO    ] No existing commands found in stream
[2026-10-25 07:15:28,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:15:28,972.972 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 07:15:33,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:15:33,244.244 INFO    ] Checking for system updates...
[2026-10-25 07:15:33,282.282 INFO    ] 200
[2026-10-25 07:15:33,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:33,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:33,345.345 INFO    ] No update needed
[2026-10-25 07:15:33,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 07:15:33,392.392 INFO    ] 200
[2026-10-25 07:15:33,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:33,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:15:33,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:33,504.504 INFO    ] No camera update needed
[2026-10-25 07:15:33,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:15:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:15:33,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:15:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:15:35,571.571 INFO    ] ================================================
[2026-10-25 07:15:35,586.586 INFO    ] Launching Daemon at Sun Oct 25 07:15:35 IST 2026
[2026-10-25 07:15:35,597.597 INFO    ] ================================================
[2026-10-25 07:15:36,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:15:36
[2026-10-25 07:15:36,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:15:37,025.025 INFO    ] Initializing speech engine...
[2026-10-25 07:15:37,034.034 INFO    ] 2026-10-25 07:15:37
[2026-10-25 07:15:37,326.326 INFO    ] 2026-10-25 07:15:37
[2026-10-25 07:15:37,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:15:37,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:15:37,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:15:38,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:15:38,130.130 INFO    ] time= 25/10/2026 07:15:38
[2026-10-25 07:15:38,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:15:38,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:15:38,328.328 INFO    ] No existing commands found in stream
[2026-10-25 07:15:43,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:15:43,356.356 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 07:15:45,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:15:45,092.092 INFO    ] Checking for system updates...
[2026-10-25 07:15:45,132.132 INFO    ] 200
[2026-10-25 07:15:45,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:45,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:45,199.199 INFO    ] No update needed
[2026-10-25 07:15:45,201.201 INFO    ] Checking for camera pi updates...
[2026-10-25 07:15:45,235.235 INFO    ] 200
[2026-10-25 07:15:45,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:45,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:15:45,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:15:45,334.334 INFO    ] No camera update needed
[2026-10-25 07:15:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:15:45,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:15:45,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:15:45,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:15:47,389.389 INFO    ] ================================================
[2026-10-25 07:15:47,404.404 INFO    ] Launching Daemon at Sun Oct 25 07:15:47 IST 2026
[2026-10-25 07:15:47,415.415 INFO    ] ================================================
[2026-10-25 07:15:47,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:15:47
[2026-10-25 07:15:48,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:15:48,863.863 INFO    ] Initializing speech engine...
[2026-10-25 07:15:48,871.871 INFO    ] 2026-10-25 07:15:48
[2026-10-25 07:15:49,119.119 INFO    ] 2026-10-25 07:15:49
[2026-10-25 07:15:49,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:15:49,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:15:49,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:15:49,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:15:49,662.662 INFO    ] time= 25/10/2026 07:15:49
[2026-10-25 07:15:49,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:15:49,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:15:49,810.810 INFO    ] No existing commands found in stream
[2026-10-25 07:15:54,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:15:54,837.837 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 07:15:57,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:15:57,668.668 INFO    ] Checking for system updates...
[2026-10-25 07:15:57,707.707 INFO    ] 200
[2026-10-25 07:15:57,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:57,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:15:57,771.771 INFO    ] No update needed
[2026-10-25 07:15:57,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 07:15:57,808.808 INFO    ] 200
[2026-10-25 07:15:57,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:15:57,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:15:57,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:15:57,914.914 INFO    ] No camera update needed
[2026-10-25 07:15:57,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:15:57,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:15:57,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:15:57,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:15:59,970.970 INFO    ] ================================================
[2026-10-25 07:15:59,985.985 INFO    ] Launching Daemon at Sun Oct 25 07:15:59 IST 2026
[2026-10-25 07:16:00,995.995 INFO    ] ================================================
[2026-10-25 07:16:00,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:00
[2026-10-25 07:16:01,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:01,814.814 INFO    ] Initializing speech engine...
[2026-10-25 07:16:01,842.842 INFO    ] 2026-10-25 07:16:01
[2026-10-25 07:16:02,195.195 INFO    ] 2026-10-25 07:16:02
[2026-10-25 07:16:02,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:02,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:02,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:16:03,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:16:03,080.080 INFO    ] time= 25/10/2026 07:16:03
[2026-10-25 07:16:03,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:16:03,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:16:03,261.261 INFO    ] No existing commands found in stream
[2026-10-25 07:16:08,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:16:08,289.289 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 07:16:10,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:16:10,012.012 INFO    ] Checking for system updates...
[2026-10-25 07:16:10,048.048 INFO    ] 200
[2026-10-25 07:16:10,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:10,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:10,106.106 INFO    ] No update needed
[2026-10-25 07:16:10,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 07:16:10,146.146 INFO    ] 200
[2026-10-25 07:16:10,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:10,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:16:10,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:10,255.255 INFO    ] No camera update needed
[2026-10-25 07:16:10,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:16:10,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:16:10,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:16:10,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:16:12,319.319 INFO    ] ================================================
[2026-10-25 07:16:12,335.335 INFO    ] Launching Daemon at Sun Oct 25 07:16:12 IST 2026
[2026-10-25 07:16:12,345.345 INFO    ] ================================================
[2026-10-25 07:16:12,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:12
[2026-10-25 07:16:13,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:13,784.784 INFO    ] Initializing speech engine...
[2026-10-25 07:16:13,798.798 INFO    ] 2026-10-25 07:16:13
[2026-10-25 07:16:14,083.083 INFO    ] 2026-10-25 07:16:14
[2026-10-25 07:16:14,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:14,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:14,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:16:14,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:16:14,492.492 INFO    ] time= 25/10/2026 07:16:14
[2026-10-25 07:16:14,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:16:14,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:16:14,578.578 INFO    ] No existing commands found in stream
[2026-10-25 07:16:19,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:16:19,601.601 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 07:16:21,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:16:21,682.682 INFO    ] Checking for system updates...
[2026-10-25 07:16:21,722.722 INFO    ] 200
[2026-10-25 07:16:21,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:21,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:16:21,785.785 INFO    ] No update needed
[2026-10-25 07:16:21,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 07:16:21,821.821 INFO    ] 200
[2026-10-25 07:16:21,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:21,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:16:21,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:16:21,914.914 INFO    ] No camera update needed
[2026-10-25 07:16:21,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:16:21,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:16:21,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:16:21,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:16:23,972.972 INFO    ] ================================================
[2026-10-25 07:16:23,987.987 INFO    ] Launching Daemon at Sun Oct 25 07:16:23 IST 2026
[2026-10-25 07:16:24,998.998 INFO    ] ================================================
[2026-10-25 07:16:24,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:24
[2026-10-25 07:16:25,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:25,444.444 INFO    ] Initializing speech engine...
[2026-10-25 07:16:25,469.469 INFO    ] 2026-10-25 07:16:25
[2026-10-25 07:16:25,741.741 INFO    ] 2026-10-25 07:16:25
[2026-10-25 07:16:25,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:25,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:25,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:16:26,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:16:26,149.149 INFO    ] time= 25/10/2026 07:16:26
[2026-10-25 07:16:26,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:16:26,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:16:26,237.237 INFO    ] No existing commands found in stream
[2026-10-25 07:16:31,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:16:31,253.253 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 07:16:35,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:16:35,088.088 INFO    ] Checking for system updates...
[2026-10-25 07:16:35,128.128 INFO    ] 200
[2026-10-25 07:16:35,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:35,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:35,193.193 INFO    ] No update needed
[2026-10-25 07:16:35,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 07:16:35,229.229 INFO    ] 200
[2026-10-25 07:16:35,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:35,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:16:35,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:35,327.327 INFO    ] No camera update needed
[2026-10-25 07:16:35,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:16:35,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:16:35,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:16:35,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:16:37,382.382 INFO    ] ================================================
[2026-10-25 07:16:37,397.397 INFO    ] Launching Daemon at Sun Oct 25 07:16:37 IST 2026
[2026-10-25 07:16:37,408.408 INFO    ] ================================================
[2026-10-25 07:16:37,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:37
[2026-10-25 07:16:38,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:38,827.827 INFO    ] Initializing speech engine...
[2026-10-25 07:16:38,844.844 INFO    ] 2026-10-25 07:16:38
[2026-10-25 07:16:39,115.115 INFO    ] 2026-10-25 07:16:39
[2026-10-25 07:16:39,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:39,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:39,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:16:39,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:16:39,522.522 INFO    ] time= 25/10/2026 07:16:39
[2026-10-25 07:16:39,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:16:39,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:16:39,609.609 INFO    ] No existing commands found in stream
[2026-10-25 07:16:44,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:16:44,624.624 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 07:16:45,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:16:45,056.056 INFO    ] Checking for system updates...
[2026-10-25 07:16:45,095.095 INFO    ] 200
[2026-10-25 07:16:45,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:45,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:45,153.153 INFO    ] No update needed
[2026-10-25 07:16:45,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 07:16:45,196.196 INFO    ] 200
[2026-10-25 07:16:45,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:45,248.248 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:16:45,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:45,408.408 INFO    ] No camera update needed
[2026-10-25 07:16:45,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:16:45,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:16:45,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:16:45,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:16:47,474.474 INFO    ] ================================================
[2026-10-25 07:16:47,489.489 INFO    ] Launching Daemon at Sun Oct 25 07:16:47 IST 2026
[2026-10-25 07:16:47,501.501 INFO    ] ================================================
[2026-10-25 07:16:48,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:48
[2026-10-25 07:16:48,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:48,954.954 INFO    ] Initializing speech engine...
[2026-10-25 07:16:48,961.961 INFO    ] 2026-10-25 07:16:48
[2026-10-25 07:16:49,221.221 INFO    ] 2026-10-25 07:16:49
[2026-10-25 07:16:49,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:49,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:49,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:16:49,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:16:49,684.684 INFO    ] time= 25/10/2026 07:16:49
[2026-10-25 07:16:49,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:16:49,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:16:49,826.826 INFO    ] No existing commands found in stream
[2026-10-25 07:16:54,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:16:54,841.841 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 07:16:55,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:16:55,564.564 INFO    ] Checking for system updates...
[2026-10-25 07:16:55,600.600 INFO    ] 200
[2026-10-25 07:16:55,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:55,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:55,664.664 INFO    ] No update needed
[2026-10-25 07:16:55,666.666 INFO    ] Checking for camera pi updates...
[2026-10-25 07:16:55,703.703 INFO    ] 200
[2026-10-25 07:16:55,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:16:55,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:16:55,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:16:55,809.809 INFO    ] No camera update needed
[2026-10-25 07:16:55,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:16:55,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:16:55,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:16:55,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:16:57,866.866 INFO    ] ================================================
[2026-10-25 07:16:57,881.881 INFO    ] Launching Daemon at Sun Oct 25 07:16:57 IST 2026
[2026-10-25 07:16:57,893.893 INFO    ] ================================================
[2026-10-25 07:16:58,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:16:58
[2026-10-25 07:16:59,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:16:59,334.334 INFO    ] Initializing speech engine...
[2026-10-25 07:16:59,354.354 INFO    ] 2026-10-25 07:16:59
[2026-10-25 07:16:59,619.619 INFO    ] 2026-10-25 07:16:59
[2026-10-25 07:16:59,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:16:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:16:59,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:17:00,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:17:00,033.033 INFO    ] time= 25/10/2026 07:17:00
[2026-10-25 07:17:00,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:17:00,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:17:00,202.202 INFO    ] No existing commands found in stream
[2026-10-25 07:17:05,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:17:05,230.230 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 07:17:08,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:17:08,760.760 INFO    ] Checking for system updates...
[2026-10-25 07:17:08,796.796 INFO    ] 200
[2026-10-25 07:17:08,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:08,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:08,854.854 INFO    ] No update needed
[2026-10-25 07:17:08,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 07:17:08,894.894 INFO    ] 200
[2026-10-25 07:17:08,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:08,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:17:08,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:08,994.994 INFO    ] No camera update needed
[2026-10-25 07:17:08,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:17:08,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:17:09,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:17:09,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:17:11,058.058 INFO    ] ================================================
[2026-10-25 07:17:11,074.074 INFO    ] Launching Daemon at Sun Oct 25 07:17:11 IST 2026
[2026-10-25 07:17:11,085.085 INFO    ] ================================================
[2026-10-25 07:17:11,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:17:11
[2026-10-25 07:17:12,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:17:12,678.678 INFO    ] Initializing speech engine...
[2026-10-25 07:17:12,684.684 INFO    ] 2026-10-25 07:17:12
[2026-10-25 07:17:13,002.002 INFO    ] 2026-10-25 07:17:12
[2026-10-25 07:17:13,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:17:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:17:13,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:17:13,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:17:13,513.513 INFO    ] time= 25/10/2026 07:17:13
[2026-10-25 07:17:13,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:17:13,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:17:13,652.652 INFO    ] No existing commands found in stream
[2026-10-25 07:17:18,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:17:18,684.684 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 07:17:21,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:17:21,351.351 INFO    ] Checking for system updates...
[2026-10-25 07:17:21,392.392 INFO    ] 200
[2026-10-25 07:17:21,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:21,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:21,451.451 INFO    ] No update needed
[2026-10-25 07:17:21,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 07:17:21,488.488 INFO    ] 200
[2026-10-25 07:17:21,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:21,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:17:21,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:21,592.592 INFO    ] No camera update needed
[2026-10-25 07:17:21,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:17:21,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:17:21,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:17:21,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:17:23,647.647 INFO    ] ================================================
[2026-10-25 07:17:23,670.670 INFO    ] Launching Daemon at Sun Oct 25 07:17:23 IST 2026
[2026-10-25 07:17:23,682.682 INFO    ] ================================================
[2026-10-25 07:17:24,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:17:24
[2026-10-25 07:17:25,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:17:25,324.324 INFO    ] Initializing speech engine...
[2026-10-25 07:17:25,334.334 INFO    ] 2026-10-25 07:17:25
[2026-10-25 07:17:25,605.605 INFO    ] 2026-10-25 07:17:25
[2026-10-25 07:17:25,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:17:25,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:17:25,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:17:26,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:17:26,087.087 INFO    ] time= 25/10/2026 07:17:26
[2026-10-25 07:17:26,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:17:26,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:17:26,243.243 INFO    ] No existing commands found in stream
[2026-10-25 07:17:31,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:17:31,259.259 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 07:17:35,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:17:35,735.735 INFO    ] Checking for system updates...
[2026-10-25 07:17:35,777.777 INFO    ] 200
[2026-10-25 07:17:35,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:35,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:35,845.845 INFO    ] No update needed
[2026-10-25 07:17:35,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 07:17:35,887.887 INFO    ] 200
[2026-10-25 07:17:35,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:35,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:17:36,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:36,003.003 INFO    ] No camera update needed
[2026-10-25 07:17:36,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:17:36,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:17:36,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:17:36,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:17:38,062.062 INFO    ] ================================================
[2026-10-25 07:17:38,078.078 INFO    ] Launching Daemon at Sun Oct 25 07:17:38 IST 2026
[2026-10-25 07:17:38,089.089 INFO    ] ================================================
[2026-10-25 07:17:38,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:17:38
[2026-10-25 07:17:39,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:17:39,495.495 INFO    ] Initializing speech engine...
[2026-10-25 07:17:39,503.503 INFO    ] 2026-10-25 07:17:39
[2026-10-25 07:17:39,804.804 INFO    ] 2026-10-25 07:17:39
[2026-10-25 07:17:39,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:17:40,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:17:40,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:17:40,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:17:40,188.188 INFO    ] time= 25/10/2026 07:17:40
[2026-10-25 07:17:40,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:17:40,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:17:40,314.314 INFO    ] No existing commands found in stream
[2026-10-25 07:17:45,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:17:45,330.330 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 07:17:45,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:17:45,944.944 INFO    ] Checking for system updates...
[2026-10-25 07:17:45,980.980 INFO    ] 200
[2026-10-25 07:17:45,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:46,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:46,037.037 INFO    ] No update needed
[2026-10-25 07:17:46,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 07:17:46,073.073 INFO    ] 200
[2026-10-25 07:17:46,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:46,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:17:46,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:46,180.180 INFO    ] No camera update needed
[2026-10-25 07:17:46,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:17:46,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:17:46,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:17:46,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:17:48,235.235 INFO    ] ================================================
[2026-10-25 07:17:48,251.251 INFO    ] Launching Daemon at Sun Oct 25 07:17:48 IST 2026
[2026-10-25 07:17:48,263.263 INFO    ] ================================================
[2026-10-25 07:17:48,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:17:48
[2026-10-25 07:17:49,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:17:49,719.719 INFO    ] Initializing speech engine...
[2026-10-25 07:17:49,736.736 INFO    ] 2026-10-25 07:17:49
[2026-10-25 07:17:50,027.027 INFO    ] 2026-10-25 07:17:49
[2026-10-25 07:17:50,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:17:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:17:50,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:17:50,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:17:50,449.449 INFO    ] time= 25/10/2026 07:17:50
[2026-10-25 07:17:50,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:17:50,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:17:50,539.539 INFO    ] No existing commands found in stream
[2026-10-25 07:17:55,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:17:55,555.555 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 07:17:56,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:17:56,397.397 INFO    ] Checking for system updates...
[2026-10-25 07:17:56,433.433 INFO    ] 200
[2026-10-25 07:17:56,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:56,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:56,490.490 INFO    ] No update needed
[2026-10-25 07:17:56,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 07:17:56,527.527 INFO    ] 200
[2026-10-25 07:17:56,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:17:56,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:17:56,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:17:56,627.627 INFO    ] No camera update needed
[2026-10-25 07:17:56,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:17:56,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:17:56,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:17:56,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:17:58,682.682 INFO    ] ================================================
[2026-10-25 07:17:58,698.698 INFO    ] Launching Daemon at Sun Oct 25 07:17:58 IST 2026
[2026-10-25 07:17:58,709.709 INFO    ] ================================================
[2026-10-25 07:17:59,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:17:59
[2026-10-25 07:17:59,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:18:00,147.147 INFO    ] Initializing speech engine...
[2026-10-25 07:18:00,160.160 INFO    ] 2026-10-25 07:18:00
[2026-10-25 07:18:00,408.408 INFO    ] 2026-10-25 07:18:00
[2026-10-25 07:18:00,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:18:00,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:18:00,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:18:02,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:18:02,669.669 INFO    ] time= 25/10/2026 07:18:02
[2026-10-25 07:18:02,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:18:02,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:18:02,741.741 INFO    ] No existing commands found in stream
[2026-10-25 07:18:07,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:18:07,755.755 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 07:18:12,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:18:12,206.206 INFO    ] Checking for system updates...
[2026-10-25 07:18:12,242.242 INFO    ] 200
[2026-10-25 07:18:12,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:12,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:18:12,306.306 INFO    ] No update needed
[2026-10-25 07:18:12,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 07:18:12,342.342 INFO    ] 200
[2026-10-25 07:18:12,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:12,385.385 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:18:12,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:18:12,435.435 INFO    ] No camera update needed
[2026-10-25 07:18:12,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:18:12,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:18:12,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:18:12,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:18:14,491.491 INFO    ] ================================================
[2026-10-25 07:18:14,507.507 INFO    ] Launching Daemon at Sun Oct 25 07:18:14 IST 2026
[2026-10-25 07:18:14,519.519 INFO    ] ================================================
[2026-10-25 07:18:15,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:18:15
[2026-10-25 07:18:15,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:18:15,979.979 INFO    ] Initializing speech engine...
[2026-10-25 07:18:15,989.989 INFO    ] 2026-10-25 07:18:15
[2026-10-25 07:18:16,251.251 INFO    ] 2026-10-25 07:18:16
[2026-10-25 07:18:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:18:16,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:18:16,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:18:16,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:18:16,794.794 INFO    ] time= 25/10/2026 07:18:16
[2026-10-25 07:18:16,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:18:16,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:18:16,944.944 INFO    ] No existing commands found in stream
[2026-10-25 07:18:21,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:18:21,965.965 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 07:18:25,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:18:25,479.479 INFO    ] Checking for system updates...
[2026-10-25 07:18:25,519.519 INFO    ] 200
[2026-10-25 07:18:25,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:25,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:18:25,584.584 INFO    ] No update needed
[2026-10-25 07:18:25,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 07:18:25,622.622 INFO    ] 200
[2026-10-25 07:18:25,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:25,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:18:25,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:18:25,718.718 INFO    ] No camera update needed
[2026-10-25 07:18:25,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:18:25,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:18:25,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:18:25,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:18:27,778.778 INFO    ] ================================================
[2026-10-25 07:18:27,793.793 INFO    ] Launching Daemon at Sun Oct 25 07:18:27 IST 2026
[2026-10-25 07:18:27,804.804 INFO    ] ================================================
[2026-10-25 07:18:28,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:18:28
[2026-10-25 07:18:29,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:18:29,363.363 INFO    ] Initializing speech engine...
[2026-10-25 07:18:29,376.376 INFO    ] 2026-10-25 07:18:29
[2026-10-25 07:18:29,659.659 INFO    ] 2026-10-25 07:18:29
[2026-10-25 07:18:29,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:18:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:18:29,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:18:30,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:18:30,131.131 INFO    ] time= 25/10/2026 07:18:30
[2026-10-25 07:18:30,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:18:30,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:18:30,332.332 INFO    ] No existing commands found in stream
[2026-10-25 07:18:35,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:18:35,368.368 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 07:18:35,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:18:35,896.896 INFO    ] Checking for system updates...
[2026-10-25 07:18:35,938.938 INFO    ] 200
[2026-10-25 07:18:35,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:36,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:18:36,015.015 INFO    ] No update needed
[2026-10-25 07:18:36,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 07:18:36,057.057 INFO    ] 200
[2026-10-25 07:18:36,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:36,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:18:36,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:18:36,170.170 INFO    ] No camera update needed
[2026-10-25 07:18:36,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:18:36,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:18:36,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:18:36,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:18:38,228.228 INFO    ] ================================================
[2026-10-25 07:18:38,244.244 INFO    ] Launching Daemon at Sun Oct 25 07:18:38 IST 2026
[2026-10-25 07:18:38,255.255 INFO    ] ================================================
[2026-10-25 07:18:38,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:18:38
[2026-10-25 07:18:39,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:18:39,648.648 INFO    ] Initializing speech engine...
[2026-10-25 07:18:39,672.672 INFO    ] 2026-10-25 07:18:39
[2026-10-25 07:18:39,928.928 INFO    ] 2026-10-25 07:18:39
[2026-10-25 07:18:39,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:18:40,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:18:40,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:18:40,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:18:40,303.303 INFO    ] time= 25/10/2026 07:18:40
[2026-10-25 07:18:40,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:18:40,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:18:40,481.481 INFO    ] No existing commands found in stream
[2026-10-25 07:18:45,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:18:45,509.509 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 07:18:46,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:18:46,825.825 INFO    ] Checking for system updates...
[2026-10-25 07:18:46,865.865 INFO    ] 200
[2026-10-25 07:18:46,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:46,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:18:46,923.923 INFO    ] No update needed
[2026-10-25 07:18:46,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 07:18:46,959.959 INFO    ] 200
[2026-10-25 07:18:46,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:18:47,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:18:47,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:18:47,061.061 INFO    ] No camera update needed
[2026-10-25 07:18:47,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:18:47,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:18:47,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:18:47,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:18:49,115.115 INFO    ] ================================================
[2026-10-25 07:18:49,132.132 INFO    ] Launching Daemon at Sun Oct 25 07:18:49 IST 2026
[2026-10-25 07:18:49,142.142 INFO    ] ================================================
[2026-10-25 07:18:49,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:18:49
[2026-10-25 07:18:50,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:18:50,711.711 INFO    ] Initializing speech engine...
[2026-10-25 07:18:50,732.732 INFO    ] 2026-10-25 07:18:50
[2026-10-25 07:18:50,991.991 INFO    ] 2026-10-25 07:18:50
[2026-10-25 07:18:51,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:18:51,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:18:51,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:18:51,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:18:51,478.478 INFO    ] time= 25/10/2026 07:18:51
[2026-10-25 07:18:51,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:18:51,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:18:51,628.628 INFO    ] No existing commands found in stream
[2026-10-25 07:18:56,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:18:56,645.645 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 07:18:59,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:18:59,911.911 INFO    ] Checking for system updates...
[2026-10-25 07:18:59,947.947 INFO    ] 200
[2026-10-25 07:18:59,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:00,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:00,013.013 INFO    ] No update needed
[2026-10-25 07:19:00,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 07:19:00,053.053 INFO    ] 200
[2026-10-25 07:19:00,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:00,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:19:00,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:00,266.266 INFO    ] No camera update needed
[2026-10-25 07:19:00,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:19:00,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:19:00,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:19:00,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:19:02,327.327 INFO    ] ================================================
[2026-10-25 07:19:02,352.352 INFO    ] Launching Daemon at Sun Oct 25 07:19:02 IST 2026
[2026-10-25 07:19:02,366.366 INFO    ] ================================================
[2026-10-25 07:19:02,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:19:02
[2026-10-25 07:19:03,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:19:03,994.994 INFO    ] Initializing speech engine...
[2026-10-25 07:19:04,003.003 INFO    ] 2026-10-25 07:19:03
[2026-10-25 07:19:04,274.274 INFO    ] 2026-10-25 07:19:04
[2026-10-25 07:19:04,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:19:04,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:19:04,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:19:04,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:19:04,776.776 INFO    ] time= 25/10/2026 07:19:04
[2026-10-25 07:19:04,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:19:04,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:19:04,982.982 INFO    ] No existing commands found in stream
[2026-10-25 07:19:10,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:19:10,012.012 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 07:19:13,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:19:13,436.436 INFO    ] Checking for system updates...
[2026-10-25 07:19:13,478.478 INFO    ] 200
[2026-10-25 07:19:13,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:13,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:13,538.538 INFO    ] No update needed
[2026-10-25 07:19:13,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 07:19:13,576.576 INFO    ] 200
[2026-10-25 07:19:13,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:13,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:19:13,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:13,678.678 INFO    ] No camera update needed
[2026-10-25 07:19:13,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:19:13,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:19:13,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:19:13,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:19:15,736.736 INFO    ] ================================================
[2026-10-25 07:19:15,752.752 INFO    ] Launching Daemon at Sun Oct 25 07:19:15 IST 2026
[2026-10-25 07:19:15,763.763 INFO    ] ================================================
[2026-10-25 07:19:16,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:19:16
[2026-10-25 07:19:16,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:19:17,224.224 INFO    ] Initializing speech engine...
[2026-10-25 07:19:17,230.230 INFO    ] 2026-10-25 07:19:17
[2026-10-25 07:19:17,490.490 INFO    ] 2026-10-25 07:19:17
[2026-10-25 07:19:17,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:19:17,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:19:17,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:19:17,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:19:17,959.959 INFO    ] time= 25/10/2026 07:19:17
[2026-10-25 07:19:18,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:19:18,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:19:18,096.096 INFO    ] No existing commands found in stream
[2026-10-25 07:19:23,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:19:23,111.111 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 07:19:23,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:19:23,695.695 INFO    ] Checking for system updates...
[2026-10-25 07:19:23,734.734 INFO    ] 200
[2026-10-25 07:19:23,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:23,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:19:23,801.801 INFO    ] No update needed
[2026-10-25 07:19:23,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 07:19:23,839.839 INFO    ] 200
[2026-10-25 07:19:23,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:23,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:19:23,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:19:23,956.956 INFO    ] No camera update needed
[2026-10-25 07:19:23,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:19:23,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:19:23,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:19:23,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:19:26,017.017 INFO    ] ================================================
[2026-10-25 07:19:26,033.033 INFO    ] Launching Daemon at Sun Oct 25 07:19:26 IST 2026
[2026-10-25 07:19:26,043.043 INFO    ] ================================================
[2026-10-25 07:19:26,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:19:26
[2026-10-25 07:19:27,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:19:27,499.499 INFO    ] Initializing speech engine...
[2026-10-25 07:19:27,507.507 INFO    ] 2026-10-25 07:19:27
[2026-10-25 07:19:27,779.779 INFO    ] 2026-10-25 07:19:27
[2026-10-25 07:19:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:19:28,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:19:28,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:19:28,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:19:28,302.302 INFO    ] time= 25/10/2026 07:19:28
[2026-10-25 07:19:28,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:19:28,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:19:28,459.459 INFO    ] No existing commands found in stream
[2026-10-25 07:19:33,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:19:33,478.478 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 07:19:36,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:19:36,646.646 INFO    ] Checking for system updates...
[2026-10-25 07:19:36,683.683 INFO    ] 200
[2026-10-25 07:19:36,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:36,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:36,750.750 INFO    ] No update needed
[2026-10-25 07:19:36,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 07:19:36,788.788 INFO    ] 200
[2026-10-25 07:19:36,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:36,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:19:36,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:36,884.884 INFO    ] No camera update needed
[2026-10-25 07:19:36,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:19:36,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:19:36,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:19:36,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:19:38,944.944 INFO    ] ================================================
[2026-10-25 07:19:38,960.960 INFO    ] Launching Daemon at Sun Oct 25 07:19:38 IST 2026
[2026-10-25 07:19:38,971.971 INFO    ] ================================================
[2026-10-25 07:19:39,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:19:39
[2026-10-25 07:19:40,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:19:40,427.427 INFO    ] Initializing speech engine...
[2026-10-25 07:19:40,437.437 INFO    ] 2026-10-25 07:19:40
[2026-10-25 07:19:40,699.699 INFO    ] 2026-10-25 07:19:40
[2026-10-25 07:19:40,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:19:40,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:19:40,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:19:41,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:19:41,240.240 INFO    ] time= 25/10/2026 07:19:41
[2026-10-25 07:19:41,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:19:41,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:19:41,381.381 INFO    ] No existing commands found in stream
[2026-10-25 07:19:46,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:19:46,409.409 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 07:19:49,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:19:49,791.791 INFO    ] Checking for system updates...
[2026-10-25 07:19:49,830.830 INFO    ] 200
[2026-10-25 07:19:49,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:49,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:49,898.898 INFO    ] No update needed
[2026-10-25 07:19:49,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 07:19:49,937.937 INFO    ] 200
[2026-10-25 07:19:49,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:19:49,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:19:50,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:19:50,039.039 INFO    ] No camera update needed
[2026-10-25 07:19:50,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:19:50,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:19:50,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:19:50,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:19:52,100.100 INFO    ] ================================================
[2026-10-25 07:19:52,116.116 INFO    ] Launching Daemon at Sun Oct 25 07:19:52 IST 2026
[2026-10-25 07:19:52,127.127 INFO    ] ================================================
[2026-10-25 07:19:52,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:19:52
[2026-10-25 07:19:53,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:19:53,580.580 INFO    ] Initializing speech engine...
[2026-10-25 07:19:53,588.588 INFO    ] 2026-10-25 07:19:53
[2026-10-25 07:19:53,889.889 INFO    ] 2026-10-25 07:19:53
[2026-10-25 07:19:53,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:19:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:19:54,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:19:54,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:19:54,277.277 INFO    ] time= 25/10/2026 07:19:54
[2026-10-25 07:19:54,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:19:54,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:19:54,407.407 INFO    ] No existing commands found in stream
[2026-10-25 07:19:59,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:19:59,423.423 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 07:20:00,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:20:00,918.918 INFO    ] Checking for system updates...
[2026-10-25 07:20:00,955.955 INFO    ] 200
[2026-10-25 07:20:00,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:01,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:20:01,014.014 INFO    ] No update needed
[2026-10-25 07:20:01,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 07:20:01,053.053 INFO    ] 200
[2026-10-25 07:20:01,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:01,103.103 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:20:01,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:20:01,173.173 INFO    ] No camera update needed
[2026-10-25 07:20:01,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:20:01,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:20:01,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:20:01,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:20:03,263.263 INFO    ] ================================================
[2026-10-25 07:20:03,278.278 INFO    ] Launching Daemon at Sun Oct 25 07:20:03 IST 2026
[2026-10-25 07:20:03,289.289 INFO    ] ================================================
[2026-10-25 07:20:03,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:20:03
[2026-10-25 07:20:04,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:20:04,727.727 INFO    ] Initializing speech engine...
[2026-10-25 07:20:04,735.735 INFO    ] 2026-10-25 07:20:04
[2026-10-25 07:20:05,032.032 INFO    ] 2026-10-25 07:20:05
[2026-10-25 07:20:05,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:20:05,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:20:05,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:20:05,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:20:05,521.521 INFO    ] time= 25/10/2026 07:20:05
[2026-10-25 07:20:05,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:20:05,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:20:05,691.691 INFO    ] No existing commands found in stream
[2026-10-25 07:20:10,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:20:10,710.710 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 07:20:11,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:20:11,154.154 INFO    ] Checking for system updates...
[2026-10-25 07:20:11,190.190 INFO    ] 200
[2026-10-25 07:20:11,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:11,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:11,248.248 INFO    ] No update needed
[2026-10-25 07:20:11,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 07:20:11,284.284 INFO    ] 200
[2026-10-25 07:20:11,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:11,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:20:11,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:11,389.389 INFO    ] No camera update needed
[2026-10-25 07:20:11,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:20:11,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:20:11,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:20:11,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:20:13,445.445 INFO    ] ================================================
[2026-10-25 07:20:13,461.461 INFO    ] Launching Daemon at Sun Oct 25 07:20:13 IST 2026
[2026-10-25 07:20:13,472.472 INFO    ] ================================================
[2026-10-25 07:20:14,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:20:14
[2026-10-25 07:20:14,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:20:14,892.892 INFO    ] Initializing speech engine...
[2026-10-25 07:20:14,900.900 INFO    ] 2026-10-25 07:20:14
[2026-10-25 07:20:15,193.193 INFO    ] 2026-10-25 07:20:15
[2026-10-25 07:20:15,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:20:15,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:20:15,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:20:15,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:20:15,574.574 INFO    ] time= 25/10/2026 07:20:15
[2026-10-25 07:20:15,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:20:15,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:20:15,695.695 INFO    ] No existing commands found in stream
[2026-10-25 07:20:20,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:20:20,713.713 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 07:20:23,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:20:23,312.312 INFO    ] Checking for system updates...
[2026-10-25 07:20:23,349.349 INFO    ] 200
[2026-10-25 07:20:23,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:23,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:23,407.407 INFO    ] No update needed
[2026-10-25 07:20:23,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 07:20:23,443.443 INFO    ] 200
[2026-10-25 07:20:23,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:23,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:20:23,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:23,546.546 INFO    ] No camera update needed
[2026-10-25 07:20:23,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:20:23,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:20:23,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:20:23,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:20:25,602.602 INFO    ] ================================================
[2026-10-25 07:20:25,618.618 INFO    ] Launching Daemon at Sun Oct 25 07:20:25 IST 2026
[2026-10-25 07:20:25,629.629 INFO    ] ================================================
[2026-10-25 07:20:26,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:20:26
[2026-10-25 07:20:26,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:20:27,081.081 INFO    ] Initializing speech engine...
[2026-10-25 07:20:27,090.090 INFO    ] 2026-10-25 07:20:27
[2026-10-25 07:20:27,353.353 INFO    ] 2026-10-25 07:20:27
[2026-10-25 07:20:27,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:20:27,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:20:27,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:20:27,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:20:27,839.839 INFO    ] time= 25/10/2026 07:20:27
[2026-10-25 07:20:27,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:20:27,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:20:28,032.032 INFO    ] No existing commands found in stream
[2026-10-25 07:20:33,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:20:33,059.059 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 07:20:35,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:20:35,894.894 INFO    ] Checking for system updates...
[2026-10-25 07:20:35,930.930 INFO    ] 200
[2026-10-25 07:20:35,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:35,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:20:35,988.988 INFO    ] No update needed
[2026-10-25 07:20:35,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 07:20:36,024.024 INFO    ] 200
[2026-10-25 07:20:36,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:36,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:20:36,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:20:36,137.137 INFO    ] No camera update needed
[2026-10-25 07:20:36,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:20:36,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:20:36,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:20:36,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:20:38,193.193 INFO    ] ================================================
[2026-10-25 07:20:38,209.209 INFO    ] Launching Daemon at Sun Oct 25 07:20:38 IST 2026
[2026-10-25 07:20:38,220.220 INFO    ] ================================================
[2026-10-25 07:20:38,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:20:38
[2026-10-25 07:20:39,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:20:39,809.809 INFO    ] Initializing speech engine...
[2026-10-25 07:20:39,819.819 INFO    ] 2026-10-25 07:20:39
[2026-10-25 07:20:40,077.077 INFO    ] 2026-10-25 07:20:40
[2026-10-25 07:20:40,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:20:40,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:20:40,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:20:40,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:20:40,534.534 INFO    ] time= 25/10/2026 07:20:40
[2026-10-25 07:20:40,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:20:40,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:20:40,726.726 INFO    ] No existing commands found in stream
[2026-10-25 07:20:45,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:20:45,755.755 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 07:20:46,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:20:46,929.929 INFO    ] Checking for system updates...
[2026-10-25 07:20:46,966.966 INFO    ] 200
[2026-10-25 07:20:46,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:47,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:47,024.024 INFO    ] No update needed
[2026-10-25 07:20:47,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 07:20:47,060.060 INFO    ] 200
[2026-10-25 07:20:47,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:20:47,103.103 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:20:47,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:20:47,166.166 INFO    ] No camera update needed
[2026-10-25 07:20:47,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:20:47,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:20:47,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:20:47,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:20:49,222.222 INFO    ] ================================================
[2026-10-25 07:20:49,238.238 INFO    ] Launching Daemon at Sun Oct 25 07:20:49 IST 2026
[2026-10-25 07:20:49,249.249 INFO    ] ================================================
[2026-10-25 07:20:49,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:20:49
[2026-10-25 07:20:50,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:20:50,694.694 INFO    ] Initializing speech engine...
[2026-10-25 07:20:50,713.713 INFO    ] 2026-10-25 07:20:50
[2026-10-25 07:20:50,969.969 INFO    ] 2026-10-25 07:20:50
[2026-10-25 07:20:51,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:20:51,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:20:51,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:20:51,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:20:51,465.465 INFO    ] time= 25/10/2026 07:20:51
[2026-10-25 07:20:51,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:20:51,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:20:51,668.668 INFO    ] No existing commands found in stream
[2026-10-25 07:20:56,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:20:56,705.705 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 07:20:59,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:20:59,968.968 INFO    ] Checking for system updates...
[2026-10-25 07:21:00,005.005 INFO    ] 200
[2026-10-25 07:21:00,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:00,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:00,064.064 INFO    ] No update needed
[2026-10-25 07:21:00,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 07:21:00,103.103 INFO    ] 200
[2026-10-25 07:21:00,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:00,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:21:00,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:00,199.199 INFO    ] No camera update needed
[2026-10-25 07:21:00,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:21:00,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:21:00,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:21:00,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:21:02,256.256 INFO    ] ================================================
[2026-10-25 07:21:02,272.272 INFO    ] Launching Daemon at Sun Oct 25 07:21:02 IST 2026
[2026-10-25 07:21:02,283.283 INFO    ] ================================================
[2026-10-25 07:21:02,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:21:02
[2026-10-25 07:21:03,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:21:03,834.834 INFO    ] Initializing speech engine...
[2026-10-25 07:21:03,840.840 INFO    ] 2026-10-25 07:21:03
[2026-10-25 07:21:04,103.103 INFO    ] 2026-10-25 07:21:04
[2026-10-25 07:21:04,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:21:04,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:21:04,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:21:04,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:21:04,570.570 INFO    ] time= 25/10/2026 07:21:04
[2026-10-25 07:21:04,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:21:04,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:21:04,726.726 INFO    ] No existing commands found in stream
[2026-10-25 07:21:09,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:21:09,766.766 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 07:21:12,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:21:12,145.145 INFO    ] Checking for system updates...
[2026-10-25 07:21:12,181.181 INFO    ] 200
[2026-10-25 07:21:12,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:12,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:12,240.240 INFO    ] No update needed
[2026-10-25 07:21:12,243.243 INFO    ] Checking for camera pi updates...
[2026-10-25 07:21:12,276.276 INFO    ] 200
[2026-10-25 07:21:12,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:12,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:21:12,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:12,489.489 INFO    ] No camera update needed
[2026-10-25 07:21:12,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:21:12,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:21:12,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:21:12,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:21:14,545.545 INFO    ] ================================================
[2026-10-25 07:21:14,560.560 INFO    ] Launching Daemon at Sun Oct 25 07:21:14 IST 2026
[2026-10-25 07:21:14,571.571 INFO    ] ================================================
[2026-10-25 07:21:15,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:21:15
[2026-10-25 07:21:15,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:21:15,990.990 INFO    ] Initializing speech engine...
[2026-10-25 07:21:15,999.999 INFO    ] 2026-10-25 07:21:15
[2026-10-25 07:21:16,246.246 INFO    ] 2026-10-25 07:21:16
[2026-10-25 07:21:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:21:16,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:21:16,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:21:16,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:21:16,713.713 INFO    ] time= 25/10/2026 07:21:16
[2026-10-25 07:21:16,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:21:16,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:21:16,867.867 INFO    ] No existing commands found in stream
[2026-10-25 07:21:21,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:21:21,885.885 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 07:21:26,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:21:26,184.184 INFO    ] Checking for system updates...
[2026-10-25 07:21:26,222.222 INFO    ] 200
[2026-10-25 07:21:26,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:26,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:26,293.293 INFO    ] No update needed
[2026-10-25 07:21:26,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 07:21:26,345.345 INFO    ] 200
[2026-10-25 07:21:26,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:26,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:21:26,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:26,484.484 INFO    ] No camera update needed
[2026-10-25 07:21:26,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:21:26,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:21:26,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:21:26,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:21:28,544.544 INFO    ] ================================================
[2026-10-25 07:21:28,559.559 INFO    ] Launching Daemon at Sun Oct 25 07:21:28 IST 2026
[2026-10-25 07:21:28,571.571 INFO    ] ================================================
[2026-10-25 07:21:29,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:21:29
[2026-10-25 07:21:29,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:21:30,218.218 INFO    ] Initializing speech engine...
[2026-10-25 07:21:30,230.230 INFO    ] 2026-10-25 07:21:30
[2026-10-25 07:21:30,543.543 INFO    ] 2026-10-25 07:21:30
[2026-10-25 07:21:30,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:21:30,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:21:30,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:21:31,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:21:31,064.064 INFO    ] time= 25/10/2026 07:21:31
[2026-10-25 07:21:31,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:21:31,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:21:31,227.227 INFO    ] No existing commands found in stream
[2026-10-25 07:21:36,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:21:36,247.247 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 07:21:39,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:21:39,755.755 INFO    ] Checking for system updates...
[2026-10-25 07:21:39,792.792 INFO    ] 200
[2026-10-25 07:21:39,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:39,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:21:39,859.859 INFO    ] No update needed
[2026-10-25 07:21:39,863.863 INFO    ] Checking for camera pi updates...
[2026-10-25 07:21:39,899.899 INFO    ] 200
[2026-10-25 07:21:39,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:39,944.944 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:21:40,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:21:40,014.014 INFO    ] No camera update needed
[2026-10-25 07:21:40,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:21:40,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:21:40,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:21:40,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:21:42,073.073 INFO    ] ================================================
[2026-10-25 07:21:42,088.088 INFO    ] Launching Daemon at Sun Oct 25 07:21:42 IST 2026
[2026-10-25 07:21:42,099.099 INFO    ] ================================================
[2026-10-25 07:21:42,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:21:42
[2026-10-25 07:21:43,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:21:43,550.550 INFO    ] Initializing speech engine...
[2026-10-25 07:21:43,555.555 INFO    ] 2026-10-25 07:21:43
[2026-10-25 07:21:43,808.808 INFO    ] 2026-10-25 07:21:43
[2026-10-25 07:21:43,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:21:44,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:21:44,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:21:44,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:21:44,314.314 INFO    ] time= 25/10/2026 07:21:44
[2026-10-25 07:21:44,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:21:44,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:21:44,501.501 INFO    ] No existing commands found in stream
[2026-10-25 07:21:49,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:21:49,536.536 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 07:21:50,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:21:50,077.077 INFO    ] Checking for system updates...
[2026-10-25 07:21:50,114.114 INFO    ] 200
[2026-10-25 07:21:50,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:50,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:50,172.172 INFO    ] No update needed
[2026-10-25 07:21:50,174.174 INFO    ] Checking for camera pi updates...
[2026-10-25 07:21:50,208.208 INFO    ] 200
[2026-10-25 07:21:50,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:21:50,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:21:50,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:21:50,319.319 INFO    ] No camera update needed
[2026-10-25 07:21:50,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:21:50,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:21:50,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:21:50,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:21:52,377.377 INFO    ] ================================================
[2026-10-25 07:21:52,392.392 INFO    ] Launching Daemon at Sun Oct 25 07:21:52 IST 2026
[2026-10-25 07:21:52,403.403 INFO    ] ================================================
[2026-10-25 07:21:52,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:21:52
[2026-10-25 07:21:53,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:21:53,842.842 INFO    ] Initializing speech engine...
[2026-10-25 07:21:53,849.849 INFO    ] 2026-10-25 07:21:53
[2026-10-25 07:21:54,149.149 INFO    ] 2026-10-25 07:21:54
[2026-10-25 07:21:54,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:21:54,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:21:54,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:21:54,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:21:54,596.596 INFO    ] time= 25/10/2026 07:21:54
[2026-10-25 07:21:54,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:21:54,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:21:54,801.801 INFO    ] No existing commands found in stream
[2026-10-25 07:21:59,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:21:59,835.835 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 07:22:03,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:22:03,947.947 INFO    ] Checking for system updates...
[2026-10-25 07:22:03,983.983 INFO    ] 200
[2026-10-25 07:22:03,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:04,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:22:04,047.047 INFO    ] No update needed
[2026-10-25 07:22:04,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 07:22:04,086.086 INFO    ] 200
[2026-10-25 07:22:04,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:04,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:22:04,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:22:04,172.172 INFO    ] No camera update needed
[2026-10-25 07:22:04,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:22:04,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:22:04,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:22:04,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:22:06,228.228 INFO    ] ================================================
[2026-10-25 07:22:06,245.245 INFO    ] Launching Daemon at Sun Oct 25 07:22:06 IST 2026
[2026-10-25 07:22:06,257.257 INFO    ] ================================================
[2026-10-25 07:22:06,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:22:06
[2026-10-25 07:22:07,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:22:07,730.730 INFO    ] Initializing speech engine...
[2026-10-25 07:22:07,739.739 INFO    ] 2026-10-25 07:22:07
[2026-10-25 07:22:08,023.023 INFO    ] 2026-10-25 07:22:08
[2026-10-25 07:22:08,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:22:08,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:22:08,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:22:08,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:22:08,474.474 INFO    ] time= 25/10/2026 07:22:08
[2026-10-25 07:22:08,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:22:08,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:22:08,635.635 INFO    ] No existing commands found in stream
[2026-10-25 07:22:13,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:22:13,650.650 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 07:22:16,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:22:16,855.855 INFO    ] Checking for system updates...
[2026-10-25 07:22:16,897.897 INFO    ] 200
[2026-10-25 07:22:16,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:16,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:16,956.956 INFO    ] No update needed
[2026-10-25 07:22:16,959.959 INFO    ] Checking for camera pi updates...
[2026-10-25 07:22:16,992.992 INFO    ] 200
[2026-10-25 07:22:16,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:17,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:22:17,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:17,112.112 INFO    ] No camera update needed
[2026-10-25 07:22:17,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:22:17,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:22:17,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:22:17,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:22:19,168.168 INFO    ] ================================================
[2026-10-25 07:22:19,186.186 INFO    ] Launching Daemon at Sun Oct 25 07:22:19 IST 2026
[2026-10-25 07:22:19,200.200 INFO    ] ================================================
[2026-10-25 07:22:19,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:22:19
[2026-10-25 07:22:20,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:22:20,781.781 INFO    ] Initializing speech engine...
[2026-10-25 07:22:20,794.794 INFO    ] 2026-10-25 07:22:20
[2026-10-25 07:22:21,066.066 INFO    ] 2026-10-25 07:22:21
[2026-10-25 07:22:21,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:22:21,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:22:21,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:22:21,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:22:21,624.624 INFO    ] time= 25/10/2026 07:22:21
[2026-10-25 07:22:21,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:22:21,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:22:21,780.780 INFO    ] No existing commands found in stream
[2026-10-25 07:22:26,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:22:26,799.799 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 07:22:28,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:22:28,411.411 INFO    ] Checking for system updates...
[2026-10-25 07:22:28,449.449 INFO    ] 200
[2026-10-25 07:22:28,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:28,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:22:28,515.515 INFO    ] No update needed
[2026-10-25 07:22:28,518.518 INFO    ] Checking for camera pi updates...
[2026-10-25 07:22:28,557.557 INFO    ] 200
[2026-10-25 07:22:28,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:28,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:22:28,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:22:28,676.676 INFO    ] No camera update needed
[2026-10-25 07:22:28,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:22:28,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:22:28,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:22:28,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:22:30,737.737 INFO    ] ================================================
[2026-10-25 07:22:30,753.753 INFO    ] Launching Daemon at Sun Oct 25 07:22:30 IST 2026
[2026-10-25 07:22:30,763.763 INFO    ] ================================================
[2026-10-25 07:22:31,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:22:31
[2026-10-25 07:22:32,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:22:32,487.487 INFO    ] Initializing speech engine...
[2026-10-25 07:22:32,498.498 INFO    ] 2026-10-25 07:22:32
[2026-10-25 07:22:32,818.818 INFO    ] 2026-10-25 07:22:32
[2026-10-25 07:22:32,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:22:33,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:22:33,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:22:33,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:22:33,755.755 INFO    ] time= 25/10/2026 07:22:33
[2026-10-25 07:22:33,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:22:33,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:22:33,874.874 INFO    ] No existing commands found in stream
[2026-10-25 07:22:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:22:38,902.902 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 07:22:42,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:22:42,850.850 INFO    ] Checking for system updates...
[2026-10-25 07:22:42,888.888 INFO    ] 200
[2026-10-25 07:22:42,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:42,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:42,956.956 INFO    ] No update needed
[2026-10-25 07:22:42,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 07:22:42,993.993 INFO    ] 200
[2026-10-25 07:22:42,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:43,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:22:43,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:43,098.098 INFO    ] No camera update needed
[2026-10-25 07:22:43,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:22:43,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:22:43,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:22:43,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:22:45,156.156 INFO    ] ================================================
[2026-10-25 07:22:45,172.172 INFO    ] Launching Daemon at Sun Oct 25 07:22:45 IST 2026
[2026-10-25 07:22:45,183.183 INFO    ] ================================================
[2026-10-25 07:22:45,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:22:45
[2026-10-25 07:22:46,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:22:46,712.712 INFO    ] Initializing speech engine...
[2026-10-25 07:22:46,725.725 INFO    ] 2026-10-25 07:22:46
[2026-10-25 07:22:46,988.988 INFO    ] 2026-10-25 07:22:46
[2026-10-25 07:22:47,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:22:47,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:22:47,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:22:47,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:22:47,362.362 INFO    ] time= 25/10/2026 07:22:47
[2026-10-25 07:22:47,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:22:47,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:22:47,535.535 INFO    ] No existing commands found in stream
[2026-10-25 07:22:52,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:22:52,563.563 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 07:22:56,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:22:56,135.135 INFO    ] Checking for system updates...
[2026-10-25 07:22:56,171.171 INFO    ] 200
[2026-10-25 07:22:56,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:56,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:56,228.228 INFO    ] No update needed
[2026-10-25 07:22:56,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 07:22:56,269.269 INFO    ] 200
[2026-10-25 07:22:56,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:22:56,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:22:56,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:22:56,367.367 INFO    ] No camera update needed
[2026-10-25 07:22:56,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:22:56,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:22:56,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:22:56,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:22:58,421.421 INFO    ] ================================================
[2026-10-25 07:22:58,437.437 INFO    ] Launching Daemon at Sun Oct 25 07:22:58 IST 2026
[2026-10-25 07:22:58,448.448 INFO    ] ================================================
[2026-10-25 07:22:59,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:22:59
[2026-10-25 07:22:59,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:22:59,867.867 INFO    ] Initializing speech engine...
[2026-10-25 07:22:59,876.876 INFO    ] 2026-10-25 07:22:59
[2026-10-25 07:23:00,121.121 INFO    ] 2026-10-25 07:23:00
[2026-10-25 07:23:00,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:23:00,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:23:00,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:23:00,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:23:00,604.604 INFO    ] time= 25/10/2026 07:23:00
[2026-10-25 07:23:00,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:23:00,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:23:00,737.737 INFO    ] No existing commands found in stream
[2026-10-25 07:23:05,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:23:05,752.752 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 07:23:09,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:23:09,873.873 INFO    ] Checking for system updates...
[2026-10-25 07:23:09,909.909 INFO    ] 200
[2026-10-25 07:23:09,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:09,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:09,967.967 INFO    ] No update needed
[2026-10-25 07:23:09,969.969 INFO    ] Checking for camera pi updates...
[2026-10-25 07:23:10,002.002 INFO    ] 200
[2026-10-25 07:23:10,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:10,045.045 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:23:10,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:10,103.103 INFO    ] No camera update needed
[2026-10-25 07:23:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:23:10,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:23:10,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:23:10,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:23:12,162.162 INFO    ] ================================================
[2026-10-25 07:23:12,178.178 INFO    ] Launching Daemon at Sun Oct 25 07:23:12 IST 2026
[2026-10-25 07:23:12,189.189 INFO    ] ================================================
[2026-10-25 07:23:12,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:23:12
[2026-10-25 07:23:13,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:23:13,772.772 INFO    ] Initializing speech engine...
[2026-10-25 07:23:13,778.778 INFO    ] 2026-10-25 07:23:13
[2026-10-25 07:23:14,049.049 INFO    ] 2026-10-25 07:23:14
[2026-10-25 07:23:14,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:23:14,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:23:14,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:23:14,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:23:14,597.597 INFO    ] time= 25/10/2026 07:23:14
[2026-10-25 07:23:14,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:23:14,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:23:14,752.752 INFO    ] No existing commands found in stream
[2026-10-25 07:23:19,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:23:19,779.779 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 07:23:24,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:23:24,021.021 INFO    ] Checking for system updates...
[2026-10-25 07:23:24,057.057 INFO    ] 200
[2026-10-25 07:23:24,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:24,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:24,117.117 INFO    ] No update needed
[2026-10-25 07:23:24,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 07:23:24,155.155 INFO    ] 200
[2026-10-25 07:23:24,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:24,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:23:24,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:24,347.347 INFO    ] No camera update needed
[2026-10-25 07:23:24,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:23:24,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:23:24,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:23:24,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:23:26,407.407 INFO    ] ================================================
[2026-10-25 07:23:26,423.423 INFO    ] Launching Daemon at Sun Oct 25 07:23:26 IST 2026
[2026-10-25 07:23:26,434.434 INFO    ] ================================================
[2026-10-25 07:23:27,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:23:27
[2026-10-25 07:23:27,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:23:27,870.870 INFO    ] Initializing speech engine...
[2026-10-25 07:23:27,894.894 INFO    ] 2026-10-25 07:23:27
[2026-10-25 07:23:28,169.169 INFO    ] 2026-10-25 07:23:28
[2026-10-25 07:23:28,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:23:28,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:23:28,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:23:28,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:23:28,566.566 INFO    ] time= 25/10/2026 07:23:28
[2026-10-25 07:23:28,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:23:28,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:23:28,675.675 INFO    ] No existing commands found in stream
[2026-10-25 07:23:33,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:23:33,694.694 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 07:23:34,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:23:34,284.284 INFO    ] Checking for system updates...
[2026-10-25 07:23:34,320.320 INFO    ] 200
[2026-10-25 07:23:34,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:34,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:34,385.385 INFO    ] No update needed
[2026-10-25 07:23:34,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 07:23:34,421.421 INFO    ] 200
[2026-10-25 07:23:34,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:34,464.464 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:23:34,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:34,528.528 INFO    ] No camera update needed
[2026-10-25 07:23:34,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:23:34,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:23:34,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:23:34,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:23:36,589.589 INFO    ] ================================================
[2026-10-25 07:23:36,604.604 INFO    ] Launching Daemon at Sun Oct 25 07:23:36 IST 2026
[2026-10-25 07:23:36,615.615 INFO    ] ================================================
[2026-10-25 07:23:37,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:23:37
[2026-10-25 07:23:37,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:23:38,098.098 INFO    ] Initializing speech engine...
[2026-10-25 07:23:38,111.111 INFO    ] 2026-10-25 07:23:38
[2026-10-25 07:23:38,376.376 INFO    ] 2026-10-25 07:23:38
[2026-10-25 07:23:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:23:38,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:23:38,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:23:38,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:23:38,815.815 INFO    ] time= 25/10/2026 07:23:38
[2026-10-25 07:23:38,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:23:38,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:23:39,028.028 INFO    ] No existing commands found in stream
[2026-10-25 07:23:44,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:23:44,058.058 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 07:23:48,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:23:48,341.341 INFO    ] Checking for system updates...
[2026-10-25 07:23:48,377.377 INFO    ] 200
[2026-10-25 07:23:48,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:48,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:48,436.436 INFO    ] No update needed
[2026-10-25 07:23:48,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 07:23:48,473.473 INFO    ] 200
[2026-10-25 07:23:48,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:23:48,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:23:48,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:23:48,593.593 INFO    ] No camera update needed
[2026-10-25 07:23:48,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:23:48,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:23:48,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:23:48,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:23:50,650.650 INFO    ] ================================================
[2026-10-25 07:23:50,665.665 INFO    ] Launching Daemon at Sun Oct 25 07:23:50 IST 2026
[2026-10-25 07:23:50,676.676 INFO    ] ================================================
[2026-10-25 07:23:51,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:23:51
[2026-10-25 07:23:51,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:23:52,094.094 INFO    ] Initializing speech engine...
[2026-10-25 07:23:52,104.104 INFO    ] 2026-10-25 07:23:52
[2026-10-25 07:23:52,353.353 INFO    ] 2026-10-25 07:23:52
[2026-10-25 07:23:52,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:23:52,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:23:52,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:23:52,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:23:52,733.733 INFO    ] time= 25/10/2026 07:23:52
[2026-10-25 07:23:52,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:23:52,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:23:52,914.914 INFO    ] No existing commands found in stream
[2026-10-25 07:23:57,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:23:57,939.939 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 07:24:03,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:24:03,692.692 INFO    ] Checking for system updates...
[2026-10-25 07:24:03,728.728 INFO    ] 200
[2026-10-25 07:24:03,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:24:03,733.733 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 07:24:03,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 07:24:03,792.792 INFO    ] 200
[2026-10-25 07:24:03,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:24:03,797.797 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 07:24:03,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:24:03,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:24:03,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:24:03,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:24:05,857.857 INFO    ] ================================================
[2026-10-25 07:24:05,873.873 INFO    ] Launching Daemon at Sun Oct 25 07:24:05 IST 2026
[2026-10-25 07:24:05,884.884 INFO    ] ================================================
[2026-10-25 07:24:06,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:24:06
[2026-10-25 07:24:07,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:24:07,295.295 INFO    ] Initializing speech engine...
[2026-10-25 07:24:07,302.302 INFO    ] 2026-10-25 07:24:07
[2026-10-25 07:24:07,601.601 INFO    ] 2026-10-25 07:24:07
[2026-10-25 07:24:07,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:24:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:24:07,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:24:08,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:24:08,008.008 INFO    ] time= 25/10/2026 07:24:08
[2026-10-25 07:24:08,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:24:08,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:24:08,180.180 INFO    ] No existing commands found in stream
[2026-10-25 07:24:13,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:24:13,214.214 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 07:24:15,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:24:15,441.441 INFO    ] Checking for system updates...
[2026-10-25 07:24:15,482.482 INFO    ] 200
[2026-10-25 07:24:15,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:15,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:24:15,539.539 INFO    ] No update needed
[2026-10-25 07:24:15,542.542 INFO    ] Checking for camera pi updates...
[2026-10-25 07:24:15,576.576 INFO    ] 200
[2026-10-25 07:24:15,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:15,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:24:15,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:24:15,684.684 INFO    ] No camera update needed
[2026-10-25 07:24:15,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:24:15,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:24:15,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:24:15,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:24:17,739.739 INFO    ] ================================================
[2026-10-25 07:24:17,755.755 INFO    ] Launching Daemon at Sun Oct 25 07:24:17 IST 2026
[2026-10-25 07:24:17,766.766 INFO    ] ================================================
[2026-10-25 07:24:18,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:24:18
[2026-10-25 07:24:18,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:24:19,185.185 INFO    ] Initializing speech engine...
[2026-10-25 07:24:19,195.195 INFO    ] 2026-10-25 07:24:19
[2026-10-25 07:24:19,441.441 INFO    ] 2026-10-25 07:24:19
[2026-10-25 07:24:19,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:24:19,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:24:19,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:24:19,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:24:19,910.910 INFO    ] time= 25/10/2026 07:24:19
[2026-10-25 07:24:19,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:24:20,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:24:20,087.087 INFO    ] No existing commands found in stream
[2026-10-25 07:24:25,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:24:25,125.125 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 07:24:28,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:24:28,550.550 INFO    ] Checking for system updates...
[2026-10-25 07:24:28,591.591 INFO    ] 200
[2026-10-25 07:24:28,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:28,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:28,650.650 INFO    ] No update needed
[2026-10-25 07:24:28,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 07:24:28,686.686 INFO    ] 200
[2026-10-25 07:24:28,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:28,729.729 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:24:28,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:28,786.786 INFO    ] No camera update needed
[2026-10-25 07:24:28,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:24:28,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:24:28,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:24:28,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:24:30,841.841 INFO    ] ================================================
[2026-10-25 07:24:30,857.857 INFO    ] Launching Daemon at Sun Oct 25 07:24:30 IST 2026
[2026-10-25 07:24:30,867.867 INFO    ] ================================================
[2026-10-25 07:24:31,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:24:31
[2026-10-25 07:24:32,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:24:32,436.436 INFO    ] Initializing speech engine...
[2026-10-25 07:24:32,440.440 INFO    ] 2026-10-25 07:24:32
[2026-10-25 07:24:32,743.743 INFO    ] 2026-10-25 07:24:32
[2026-10-25 07:24:32,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:24:33,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:24:33,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:24:33,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:24:33,783.783 INFO    ] time= 25/10/2026 07:24:33
[2026-10-25 07:24:33,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:24:33,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:24:33,938.938 INFO    ] No existing commands found in stream
[2026-10-25 07:24:38,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:24:38,960.960 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 07:24:42,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:24:42,167.167 INFO    ] Checking for system updates...
[2026-10-25 07:24:42,204.204 INFO    ] 200
[2026-10-25 07:24:42,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:42,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:42,261.261 INFO    ] No update needed
[2026-10-25 07:24:42,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 07:24:42,298.298 INFO    ] 200
[2026-10-25 07:24:42,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:42,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:24:42,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:42,390.390 INFO    ] No camera update needed
[2026-10-25 07:24:42,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:24:42,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:24:42,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:24:42,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:24:44,446.446 INFO    ] ================================================
[2026-10-25 07:24:44,461.461 INFO    ] Launching Daemon at Sun Oct 25 07:24:44 IST 2026
[2026-10-25 07:24:44,471.471 INFO    ] ================================================
[2026-10-25 07:24:45,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:24:45
[2026-10-25 07:24:45,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:24:45,932.932 INFO    ] Initializing speech engine...
[2026-10-25 07:24:45,942.942 INFO    ] 2026-10-25 07:24:45
[2026-10-25 07:24:46,199.199 INFO    ] 2026-10-25 07:24:46
[2026-10-25 07:24:46,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:24:46,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:24:46,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:24:46,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:24:46,662.662 INFO    ] time= 25/10/2026 07:24:46
[2026-10-25 07:24:46,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:24:46,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:24:46,827.827 INFO    ] No existing commands found in stream
[2026-10-25 07:24:51,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:24:51,866.866 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 07:24:53,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:24:53,701.701 INFO    ] Checking for system updates...
[2026-10-25 07:24:53,737.737 INFO    ] 200
[2026-10-25 07:24:53,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:53,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:53,806.806 INFO    ] No update needed
[2026-10-25 07:24:53,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 07:24:53,842.842 INFO    ] 200
[2026-10-25 07:24:53,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:24:53,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:24:53,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:24:53,941.941 INFO    ] No camera update needed
[2026-10-25 07:24:53,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:24:53,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:24:53,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:24:53,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:24:56,995.995 INFO    ] ================================================
[2026-10-25 07:24:56,011.011 INFO    ] Launching Daemon at Sun Oct 25 07:24:56 IST 2026
[2026-10-25 07:24:56,022.022 INFO    ] ================================================
[2026-10-25 07:24:56,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:24:56
[2026-10-25 07:24:57,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:24:57,477.477 INFO    ] Initializing speech engine...
[2026-10-25 07:24:57,486.486 INFO    ] 2026-10-25 07:24:57
[2026-10-25 07:24:57,741.741 INFO    ] 2026-10-25 07:24:57
[2026-10-25 07:24:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:24:58,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:24:58,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:24:58,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:24:58,205.205 INFO    ] time= 25/10/2026 07:24:58
[2026-10-25 07:24:58,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:24:58,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:24:58,350.350 INFO    ] No existing commands found in stream
[2026-10-25 07:25:03,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:25:03,365.365 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 07:25:06,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:25:06,588.588 INFO    ] Checking for system updates...
[2026-10-25 07:25:06,628.628 INFO    ] 200
[2026-10-25 07:25:06,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:06,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:25:06,688.688 INFO    ] No update needed
[2026-10-25 07:25:06,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 07:25:06,730.730 INFO    ] 200
[2026-10-25 07:25:06,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:06,785.785 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:25:06,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:25:06,850.850 INFO    ] No camera update needed
[2026-10-25 07:25:06,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:25:06,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:25:06,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:25:06,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:25:08,910.910 INFO    ] ================================================
[2026-10-25 07:25:08,925.925 INFO    ] Launching Daemon at Sun Oct 25 07:25:08 IST 2026
[2026-10-25 07:25:08,936.936 INFO    ] ================================================
[2026-10-25 07:25:09,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:25:09
[2026-10-25 07:25:10,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:25:10,365.365 INFO    ] Initializing speech engine...
[2026-10-25 07:25:10,375.375 INFO    ] 2026-10-25 07:25:10
[2026-10-25 07:25:10,621.621 INFO    ] 2026-10-25 07:25:10
[2026-10-25 07:25:10,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:25:10,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:25:10,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:25:11,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:25:11,084.084 INFO    ] time= 25/10/2026 07:25:11
[2026-10-25 07:25:11,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:25:11,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:25:11,245.245 INFO    ] No existing commands found in stream
[2026-10-25 07:25:16,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:25:16,283.283 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 07:25:16,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:25:16,894.894 INFO    ] Checking for system updates...
[2026-10-25 07:25:16,930.930 INFO    ] 200
[2026-10-25 07:25:16,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:16,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:16,988.988 INFO    ] No update needed
[2026-10-25 07:25:16,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 07:25:17,025.025 INFO    ] 200
[2026-10-25 07:25:17,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:17,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:25:17,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:17,127.127 INFO    ] No camera update needed
[2026-10-25 07:25:17,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:25:17,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:25:17,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:25:17,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:25:19,185.185 INFO    ] ================================================
[2026-10-25 07:25:19,200.200 INFO    ] Launching Daemon at Sun Oct 25 07:25:19 IST 2026
[2026-10-25 07:25:19,211.211 INFO    ] ================================================
[2026-10-25 07:25:19,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:25:19
[2026-10-25 07:25:20,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:25:20,626.626 INFO    ] Initializing speech engine...
[2026-10-25 07:25:20,634.634 INFO    ] 2026-10-25 07:25:20
[2026-10-25 07:25:20,955.955 INFO    ] 2026-10-25 07:25:20
[2026-10-25 07:25:20,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:25:21,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:25:21,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:25:21,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:25:21,371.371 INFO    ] time= 25/10/2026 07:25:21
[2026-10-25 07:25:21,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:25:21,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:25:21,460.460 INFO    ] No existing commands found in stream
[2026-10-25 07:25:26,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:25:26,476.476 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 07:25:30,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:25:30,299.299 INFO    ] Checking for system updates...
[2026-10-25 07:25:30,335.335 INFO    ] 200
[2026-10-25 07:25:30,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:30,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:30,393.393 INFO    ] No update needed
[2026-10-25 07:25:30,395.395 INFO    ] Checking for camera pi updates...
[2026-10-25 07:25:30,429.429 INFO    ] 200
[2026-10-25 07:25:30,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:30,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:25:30,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:30,647.647 INFO    ] No camera update needed
[2026-10-25 07:25:30,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:25:30,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:25:30,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:25:30,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:25:32,703.703 INFO    ] ================================================
[2026-10-25 07:25:32,719.719 INFO    ] Launching Daemon at Sun Oct 25 07:25:32 IST 2026
[2026-10-25 07:25:32,729.729 INFO    ] ================================================
[2026-10-25 07:25:33,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:25:33
[2026-10-25 07:25:33,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:25:34,173.173 INFO    ] Initializing speech engine...
[2026-10-25 07:25:34,183.183 INFO    ] 2026-10-25 07:25:34
[2026-10-25 07:25:34,428.428 INFO    ] 2026-10-25 07:25:34
[2026-10-25 07:25:34,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:25:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:25:34,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:25:34,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:25:34,921.921 INFO    ] time= 25/10/2026 07:25:34
[2026-10-25 07:25:34,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:25:34,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:25:35,097.097 INFO    ] No existing commands found in stream
[2026-10-25 07:25:40,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:25:40,127.127 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 07:25:42,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:25:42,281.281 INFO    ] Checking for system updates...
[2026-10-25 07:25:42,322.322 INFO    ] 200
[2026-10-25 07:25:42,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:42,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:42,386.386 INFO    ] No update needed
[2026-10-25 07:25:42,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 07:25:42,423.423 INFO    ] 200
[2026-10-25 07:25:42,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:42,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:25:42,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:42,534.534 INFO    ] No camera update needed
[2026-10-25 07:25:42,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:25:42,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:25:42,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:25:42,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:25:44,594.594 INFO    ] ================================================
[2026-10-25 07:25:44,609.609 INFO    ] Launching Daemon at Sun Oct 25 07:25:44 IST 2026
[2026-10-25 07:25:44,620.620 INFO    ] ================================================
[2026-10-25 07:25:45,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:25:45
[2026-10-25 07:25:45,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:25:46,035.035 INFO    ] Initializing speech engine...
[2026-10-25 07:25:46,044.044 INFO    ] 2026-10-25 07:25:46
[2026-10-25 07:25:46,289.289 INFO    ] 2026-10-25 07:25:46
[2026-10-25 07:25:46,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:25:46,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:25:46,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:25:46,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:25:46,775.775 INFO    ] time= 25/10/2026 07:25:46
[2026-10-25 07:25:46,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:25:46,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:25:46,905.905 INFO    ] No existing commands found in stream
[2026-10-25 07:25:51,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:25:51,918.918 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 07:25:52,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:25:52,896.896 INFO    ] Checking for system updates...
[2026-10-25 07:25:52,932.932 INFO    ] 200
[2026-10-25 07:25:52,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:52,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:52,989.989 INFO    ] No update needed
[2026-10-25 07:25:52,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 07:25:53,025.025 INFO    ] 200
[2026-10-25 07:25:53,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:25:53,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:25:53,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:25:53,127.127 INFO    ] No camera update needed
[2026-10-25 07:25:53,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:25:53,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:25:53,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:25:53,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:25:55,183.183 INFO    ] ================================================
[2026-10-25 07:25:55,198.198 INFO    ] Launching Daemon at Sun Oct 25 07:25:55 IST 2026
[2026-10-25 07:25:55,209.209 INFO    ] ================================================
[2026-10-25 07:25:55,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:25:55
[2026-10-25 07:25:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:25:56,616.616 INFO    ] Initializing speech engine...
[2026-10-25 07:25:56,631.631 INFO    ] 2026-10-25 07:25:56
[2026-10-25 07:25:56,917.917 INFO    ] 2026-10-25 07:25:56
[2026-10-25 07:25:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:25:57,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:25:57,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:25:57,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:25:57,308.308 INFO    ] time= 25/10/2026 07:25:57
[2026-10-25 07:25:57,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:25:57,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:25:57,503.503 INFO    ] No existing commands found in stream
[2026-10-25 07:26:02,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:26:02,517.517 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 07:26:04,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:26:04,363.363 INFO    ] Checking for system updates...
[2026-10-25 07:26:04,399.399 INFO    ] 200
[2026-10-25 07:26:04,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:04,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:04,459.459 INFO    ] No update needed
[2026-10-25 07:26:04,462.462 INFO    ] Checking for camera pi updates...
[2026-10-25 07:26:04,499.499 INFO    ] 200
[2026-10-25 07:26:04,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:04,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:26:04,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:04,605.605 INFO    ] No camera update needed
[2026-10-25 07:26:04,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:26:04,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:26:04,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:26:04,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:26:06,664.664 INFO    ] ================================================
[2026-10-25 07:26:06,679.679 INFO    ] Launching Daemon at Sun Oct 25 07:26:06 IST 2026
[2026-10-25 07:26:06,690.690 INFO    ] ================================================
[2026-10-25 07:26:07,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:26:07
[2026-10-25 07:26:07,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:26:08,293.293 INFO    ] Initializing speech engine...
[2026-10-25 07:26:08,306.306 INFO    ] 2026-10-25 07:26:08
[2026-10-25 07:26:08,612.612 INFO    ] 2026-10-25 07:26:08
[2026-10-25 07:26:08,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:26:08,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:26:08,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:26:09,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:26:09,119.119 INFO    ] time= 25/10/2026 07:26:09
[2026-10-25 07:26:09,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:26:09,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:26:09,275.275 INFO    ] No existing commands found in stream
[2026-10-25 07:26:14,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:26:14,303.303 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 07:26:17,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:26:17,896.896 INFO    ] Checking for system updates...
[2026-10-25 07:26:17,937.937 INFO    ] 200
[2026-10-25 07:26:17,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:17,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:17,998.998 INFO    ] No update needed
[2026-10-25 07:26:18,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 07:26:18,038.038 INFO    ] 200
[2026-10-25 07:26:18,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:18,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:26:18,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:18,155.155 INFO    ] No camera update needed
[2026-10-25 07:26:18,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:26:18,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:26:18,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:26:18,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:26:20,213.213 INFO    ] ================================================
[2026-10-25 07:26:20,228.228 INFO    ] Launching Daemon at Sun Oct 25 07:26:20 IST 2026
[2026-10-25 07:26:20,239.239 INFO    ] ================================================
[2026-10-25 07:26:20,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:26:20
[2026-10-25 07:26:21,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:26:21,842.842 INFO    ] Initializing speech engine...
[2026-10-25 07:26:21,856.856 INFO    ] 2026-10-25 07:26:21
[2026-10-25 07:26:22,132.132 INFO    ] 2026-10-25 07:26:22
[2026-10-25 07:26:22,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:26:22,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:26:22,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:26:22,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:26:22,669.669 INFO    ] time= 25/10/2026 07:26:22
[2026-10-25 07:26:22,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:26:22,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:26:22,821.821 INFO    ] No existing commands found in stream
[2026-10-25 07:26:27,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:26:27,837.837 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 07:26:29,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:26:29,473.473 INFO    ] Checking for system updates...
[2026-10-25 07:26:29,510.510 INFO    ] 200
[2026-10-25 07:26:29,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:29,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:26:29,569.569 INFO    ] No update needed
[2026-10-25 07:26:29,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 07:26:29,606.606 INFO    ] 200
[2026-10-25 07:26:29,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:29,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:26:29,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:26:29,709.709 INFO    ] No camera update needed
[2026-10-25 07:26:29,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:26:29,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:26:29,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:26:29,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:26:31,769.769 INFO    ] ================================================
[2026-10-25 07:26:31,785.785 INFO    ] Launching Daemon at Sun Oct 25 07:26:31 IST 2026
[2026-10-25 07:26:31,796.796 INFO    ] ================================================
[2026-10-25 07:26:32,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:26:32
[2026-10-25 07:26:33,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:26:33,297.297 INFO    ] Initializing speech engine...
[2026-10-25 07:26:33,319.319 INFO    ] 2026-10-25 07:26:33
[2026-10-25 07:26:33,569.569 INFO    ] 2026-10-25 07:26:33
[2026-10-25 07:26:33,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:26:33,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:26:33,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:26:33,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:26:33,937.937 INFO    ] time= 25/10/2026 07:26:33
[2026-10-25 07:26:33,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:26:33,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:26:34,099.099 INFO    ] No existing commands found in stream
[2026-10-25 07:26:39,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:26:39,133.133 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 07:26:40,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:26:40,528.528 INFO    ] Checking for system updates...
[2026-10-25 07:26:40,563.563 INFO    ] 200
[2026-10-25 07:26:40,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:40,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:26:40,621.621 INFO    ] No update needed
[2026-10-25 07:26:40,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 07:26:40,658.658 INFO    ] 200
[2026-10-25 07:26:40,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:40,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:26:40,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:26:40,762.762 INFO    ] No camera update needed
[2026-10-25 07:26:40,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:26:40,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:26:40,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:26:40,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:26:42,818.818 INFO    ] ================================================
[2026-10-25 07:26:42,834.834 INFO    ] Launching Daemon at Sun Oct 25 07:26:42 IST 2026
[2026-10-25 07:26:42,845.845 INFO    ] ================================================
[2026-10-25 07:26:43,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:26:43
[2026-10-25 07:26:43,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:26:44,257.257 INFO    ] Initializing speech engine...
[2026-10-25 07:26:44,265.265 INFO    ] 2026-10-25 07:26:44
[2026-10-25 07:26:44,511.511 INFO    ] 2026-10-25 07:26:44
[2026-10-25 07:26:44,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:26:44,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:26:44,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:26:44,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:26:45,008.008 INFO    ] time= 25/10/2026 07:26:44
[2026-10-25 07:26:45,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:26:45,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:26:45,195.195 INFO    ] No existing commands found in stream
[2026-10-25 07:26:50,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:26:50,225.225 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 07:26:53,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:26:53,310.310 INFO    ] Checking for system updates...
[2026-10-25 07:26:53,352.352 INFO    ] 200
[2026-10-25 07:26:53,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:53,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:53,417.417 INFO    ] No update needed
[2026-10-25 07:26:53,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 07:26:53,453.453 INFO    ] 200
[2026-10-25 07:26:53,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:26:53,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:26:53,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:26:53,560.560 INFO    ] No camera update needed
[2026-10-25 07:26:53,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:26:53,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:26:53,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:26:53,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:26:55,616.616 INFO    ] ================================================
[2026-10-25 07:26:55,632.632 INFO    ] Launching Daemon at Sun Oct 25 07:26:55 IST 2026
[2026-10-25 07:26:55,643.643 INFO    ] ================================================
[2026-10-25 07:26:56,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:26:56
[2026-10-25 07:26:56,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:26:57,248.248 INFO    ] Initializing speech engine...
[2026-10-25 07:26:57,260.260 INFO    ] 2026-10-25 07:26:57
[2026-10-25 07:26:57,569.569 INFO    ] 2026-10-25 07:26:57
[2026-10-25 07:26:57,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:26:57,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:26:57,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:26:58,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:26:58,074.074 INFO    ] time= 25/10/2026 07:26:58
[2026-10-25 07:26:58,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:26:58,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:26:58,211.211 INFO    ] No existing commands found in stream
[2026-10-25 07:27:03,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:27:03,239.239 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 07:27:07,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:27:07,506.506 INFO    ] Checking for system updates...
[2026-10-25 07:27:07,543.543 INFO    ] 200
[2026-10-25 07:27:07,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:07,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:07,602.602 INFO    ] No update needed
[2026-10-25 07:27:07,604.604 INFO    ] Checking for camera pi updates...
[2026-10-25 07:27:07,638.638 INFO    ] 200
[2026-10-25 07:27:07,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:07,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:27:07,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:07,741.741 INFO    ] No camera update needed
[2026-10-25 07:27:07,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:27:07,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:27:07,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:27:07,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:27:09,795.795 INFO    ] ================================================
[2026-10-25 07:27:09,810.810 INFO    ] Launching Daemon at Sun Oct 25 07:27:09 IST 2026
[2026-10-25 07:27:09,822.822 INFO    ] ================================================
[2026-10-25 07:27:10,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:27:10
[2026-10-25 07:27:11,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:27:11,352.352 INFO    ] Initializing speech engine...
[2026-10-25 07:27:11,361.361 INFO    ] 2026-10-25 07:27:11
[2026-10-25 07:27:11,606.606 INFO    ] 2026-10-25 07:27:11
[2026-10-25 07:27:11,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:27:11,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:27:11,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:27:12,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:27:12,078.078 INFO    ] time= 25/10/2026 07:27:12
[2026-10-25 07:27:12,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:27:12,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:27:12,237.237 INFO    ] No existing commands found in stream
[2026-10-25 07:27:17,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:27:17,276.276 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 07:27:19,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:27:19,502.502 INFO    ] Checking for system updates...
[2026-10-25 07:27:19,543.543 INFO    ] 200
[2026-10-25 07:27:19,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:19,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:19,600.600 INFO    ] No update needed
[2026-10-25 07:27:19,602.602 INFO    ] Checking for camera pi updates...
[2026-10-25 07:27:19,641.641 INFO    ] 200
[2026-10-25 07:27:19,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:19,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:27:19,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:19,736.736 INFO    ] No camera update needed
[2026-10-25 07:27:19,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:27:19,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:27:19,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:27:19,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:27:21,795.795 INFO    ] ================================================
[2026-10-25 07:27:21,810.810 INFO    ] Launching Daemon at Sun Oct 25 07:27:21 IST 2026
[2026-10-25 07:27:21,821.821 INFO    ] ================================================
[2026-10-25 07:27:22,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:27:22
[2026-10-25 07:27:23,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:27:23,293.293 INFO    ] Initializing speech engine...
[2026-10-25 07:27:23,301.301 INFO    ] 2026-10-25 07:27:23
[2026-10-25 07:27:23,565.565 INFO    ] 2026-10-25 07:27:23
[2026-10-25 07:27:23,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:27:23,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:27:23,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:27:24,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:27:24,113.113 INFO    ] time= 25/10/2026 07:27:24
[2026-10-25 07:27:24,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:27:24,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:27:24,248.248 INFO    ] No existing commands found in stream
[2026-10-25 07:27:29,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:27:29,277.277 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 07:27:30,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:27:30,683.683 INFO    ] Checking for system updates...
[2026-10-25 07:27:30,724.724 INFO    ] 200
[2026-10-25 07:27:30,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:30,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:27:30,783.783 INFO    ] No update needed
[2026-10-25 07:27:30,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 07:27:30,819.819 INFO    ] 200
[2026-10-25 07:27:30,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:30,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:27:30,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:27:30,912.912 INFO    ] No camera update needed
[2026-10-25 07:27:30,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:27:30,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:27:30,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:27:30,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:27:32,973.973 INFO    ] ================================================
[2026-10-25 07:27:32,988.988 INFO    ] Launching Daemon at Sun Oct 25 07:27:32 IST 2026
[2026-10-25 07:27:33,999.999 INFO    ] ================================================
[2026-10-25 07:27:33,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:27:33
[2026-10-25 07:27:34,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:27:34,431.431 INFO    ] Initializing speech engine...
[2026-10-25 07:27:34,438.438 INFO    ] 2026-10-25 07:27:34
[2026-10-25 07:27:34,688.688 INFO    ] 2026-10-25 07:27:34
[2026-10-25 07:27:34,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:27:34,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:27:34,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:27:35,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:27:35,336.336 INFO    ] time= 25/10/2026 07:27:35
[2026-10-25 07:27:35,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:27:35,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:27:35,478.478 INFO    ] No existing commands found in stream
[2026-10-25 07:27:40,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:27:40,505.505 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 07:27:41,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:27:41,233.233 INFO    ] Checking for system updates...
[2026-10-25 07:27:41,270.270 INFO    ] 200
[2026-10-25 07:27:41,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:41,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:41,327.327 INFO    ] No update needed
[2026-10-25 07:27:41,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 07:27:41,364.364 INFO    ] 200
[2026-10-25 07:27:41,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:41,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:27:41,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:41,483.483 INFO    ] No camera update needed
[2026-10-25 07:27:41,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:27:41,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:27:41,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:27:41,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:27:43,538.538 INFO    ] ================================================
[2026-10-25 07:27:43,554.554 INFO    ] Launching Daemon at Sun Oct 25 07:27:43 IST 2026
[2026-10-25 07:27:43,566.566 INFO    ] ================================================
[2026-10-25 07:27:44,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:27:44
[2026-10-25 07:27:44,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:27:45,201.201 INFO    ] Initializing speech engine...
[2026-10-25 07:27:45,210.210 INFO    ] 2026-10-25 07:27:45
[2026-10-25 07:27:45,493.493 INFO    ] 2026-10-25 07:27:45
[2026-10-25 07:27:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:27:45,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:27:45,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:27:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:27:46,024.024 INFO    ] time= 25/10/2026 07:27:45
[2026-10-25 07:27:46,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:27:46,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:27:46,183.183 INFO    ] No existing commands found in stream
[2026-10-25 07:27:51,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:27:51,215.215 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 07:27:54,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:27:54,781.781 INFO    ] Checking for system updates...
[2026-10-25 07:27:54,819.819 INFO    ] 200
[2026-10-25 07:27:54,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:54,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:54,885.885 INFO    ] No update needed
[2026-10-25 07:27:54,888.888 INFO    ] Checking for camera pi updates...
[2026-10-25 07:27:54,923.923 INFO    ] 200
[2026-10-25 07:27:54,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:27:54,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:27:55,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:27:55,033.033 INFO    ] No camera update needed
[2026-10-25 07:27:55,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:27:55,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:27:55,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:27:55,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:27:57,092.092 INFO    ] ================================================
[2026-10-25 07:27:57,107.107 INFO    ] Launching Daemon at Sun Oct 25 07:27:57 IST 2026
[2026-10-25 07:27:57,119.119 INFO    ] ================================================
[2026-10-25 07:27:57,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:27:57
[2026-10-25 07:27:58,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:27:58,510.510 INFO    ] Initializing speech engine...
[2026-10-25 07:27:58,534.534 INFO    ] 2026-10-25 07:27:58
[2026-10-25 07:27:58,787.787 INFO    ] 2026-10-25 07:27:58
[2026-10-25 07:27:58,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:27:59,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:27:59,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:27:59,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:27:59,275.275 INFO    ] time= 25/10/2026 07:27:59
[2026-10-25 07:27:59,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:27:59,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:27:59,458.458 INFO    ] No existing commands found in stream
[2026-10-25 07:28:04,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:28:04,483.483 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 07:28:07,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:28:07,351.351 INFO    ] Checking for system updates...
[2026-10-25 07:28:07,387.387 INFO    ] 200
[2026-10-25 07:28:07,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:07,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:07,454.454 INFO    ] No update needed
[2026-10-25 07:28:07,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 07:28:07,489.489 INFO    ] 200
[2026-10-25 07:28:07,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:07,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:28:07,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:07,602.602 INFO    ] No camera update needed
[2026-10-25 07:28:07,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:28:07,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:28:07,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:28:07,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:28:09,660.660 INFO    ] ================================================
[2026-10-25 07:28:09,676.676 INFO    ] Launching Daemon at Sun Oct 25 07:28:09 IST 2026
[2026-10-25 07:28:09,687.687 INFO    ] ================================================
[2026-10-25 07:28:10,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:28:10
[2026-10-25 07:28:10,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:28:11,124.124 INFO    ] Initializing speech engine...
[2026-10-25 07:28:11,133.133 INFO    ] 2026-10-25 07:28:11
[2026-10-25 07:28:11,397.397 INFO    ] 2026-10-25 07:28:11
[2026-10-25 07:28:11,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:28:11,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:28:11,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:28:11,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:28:11,917.917 INFO    ] time= 25/10/2026 07:28:11
[2026-10-25 07:28:11,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:28:11,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:28:12,116.116 INFO    ] No existing commands found in stream
[2026-10-25 07:28:17,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:28:17,145.145 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 07:28:19,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:28:19,926.926 INFO    ] Checking for system updates...
[2026-10-25 07:28:19,963.963 INFO    ] 200
[2026-10-25 07:28:19,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:20,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:20,024.024 INFO    ] No update needed
[2026-10-25 07:28:20,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 07:28:20,062.062 INFO    ] 200
[2026-10-25 07:28:20,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:20,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:28:20,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:20,165.165 INFO    ] No camera update needed
[2026-10-25 07:28:20,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:28:20,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:28:20,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:28:20,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:28:22,224.224 INFO    ] ================================================
[2026-10-25 07:28:22,239.239 INFO    ] Launching Daemon at Sun Oct 25 07:28:22 IST 2026
[2026-10-25 07:28:22,252.252 INFO    ] ================================================
[2026-10-25 07:28:22,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:28:22
[2026-10-25 07:28:23,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:28:23,650.650 INFO    ] Initializing speech engine...
[2026-10-25 07:28:23,668.668 INFO    ] 2026-10-25 07:28:23
[2026-10-25 07:28:23,961.961 INFO    ] 2026-10-25 07:28:23
[2026-10-25 07:28:23,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:28:24,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:28:24,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:28:24,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:28:24,353.353 INFO    ] time= 25/10/2026 07:28:24
[2026-10-25 07:28:24,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:28:24,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:28:24,481.481 INFO    ] No existing commands found in stream
[2026-10-25 07:28:29,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:28:29,496.496 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 07:28:29,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:28:29,950.950 INFO    ] Checking for system updates...
[2026-10-25 07:28:29,991.991 INFO    ] 200
[2026-10-25 07:28:29,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:30,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:28:30,048.048 INFO    ] No update needed
[2026-10-25 07:28:30,051.051 INFO    ] Checking for camera pi updates...
[2026-10-25 07:28:30,089.089 INFO    ] 200
[2026-10-25 07:28:30,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:30,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:28:30,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:28:30,192.192 INFO    ] No camera update needed
[2026-10-25 07:28:30,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:28:30,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:28:30,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:28:30,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:28:32,252.252 INFO    ] ================================================
[2026-10-25 07:28:32,269.269 INFO    ] Launching Daemon at Sun Oct 25 07:28:32 IST 2026
[2026-10-25 07:28:32,281.281 INFO    ] ================================================
[2026-10-25 07:28:32,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:28:32
[2026-10-25 07:28:33,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:28:33,738.738 INFO    ] Initializing speech engine...
[2026-10-25 07:28:33,747.747 INFO    ] 2026-10-25 07:28:33
[2026-10-25 07:28:33,993.993 INFO    ] 2026-10-25 07:28:33
[2026-10-25 07:28:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:28:34,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:28:34,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:28:34,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:28:34,361.361 INFO    ] time= 25/10/2026 07:28:34
[2026-10-25 07:28:34,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:28:34,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:28:34,541.541 INFO    ] No existing commands found in stream
[2026-10-25 07:28:39,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:28:39,569.569 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 07:28:42,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:28:42,098.098 INFO    ] Checking for system updates...
[2026-10-25 07:28:42,140.140 INFO    ] 200
[2026-10-25 07:28:42,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:42,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:42,198.198 INFO    ] No update needed
[2026-10-25 07:28:42,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 07:28:42,234.234 INFO    ] 200
[2026-10-25 07:28:42,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:42,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:28:42,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:42,334.334 INFO    ] No camera update needed
[2026-10-25 07:28:42,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:28:42,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:28:42,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:28:42,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:28:44,391.391 INFO    ] ================================================
[2026-10-25 07:28:44,407.407 INFO    ] Launching Daemon at Sun Oct 25 07:28:44 IST 2026
[2026-10-25 07:28:44,419.419 INFO    ] ================================================
[2026-10-25 07:28:45,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:28:45
[2026-10-25 07:28:45,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:28:45,950.950 INFO    ] Initializing speech engine...
[2026-10-25 07:28:45,962.962 INFO    ] 2026-10-25 07:28:45
[2026-10-25 07:28:46,243.243 INFO    ] 2026-10-25 07:28:46
[2026-10-25 07:28:46,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:28:46,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:28:46,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:28:46,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:28:46,735.735 INFO    ] time= 25/10/2026 07:28:46
[2026-10-25 07:28:46,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:28:46,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:28:46,920.920 INFO    ] No existing commands found in stream
[2026-10-25 07:28:51,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:28:51,952.952 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 07:28:53,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:28:53,925.925 INFO    ] Checking for system updates...
[2026-10-25 07:28:53,976.976 INFO    ] 200
[2026-10-25 07:28:53,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:54,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:54,036.036 INFO    ] No update needed
[2026-10-25 07:28:54,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 07:28:54,074.074 INFO    ] 200
[2026-10-25 07:28:54,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:28:54,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:28:54,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:28:54,170.170 INFO    ] No camera update needed
[2026-10-25 07:28:54,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:28:54,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:28:54,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:28:54,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:28:56,229.229 INFO    ] ================================================
[2026-10-25 07:28:56,244.244 INFO    ] Launching Daemon at Sun Oct 25 07:28:56 IST 2026
[2026-10-25 07:28:56,255.255 INFO    ] ================================================
[2026-10-25 07:28:56,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:28:56
[2026-10-25 07:28:57,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:28:57,655.655 INFO    ] Initializing speech engine...
[2026-10-25 07:28:57,661.661 INFO    ] 2026-10-25 07:28:57
[2026-10-25 07:28:57,967.967 INFO    ] 2026-10-25 07:28:57
[2026-10-25 07:28:58,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:28:58,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:28:58,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:28:58,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:28:58,373.373 INFO    ] time= 25/10/2026 07:28:58
[2026-10-25 07:28:58,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:28:58,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:28:58,541.541 INFO    ] No existing commands found in stream
[2026-10-25 07:29:03,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:29:03,559.559 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 07:29:07,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:29:07,165.165 INFO    ] Checking for system updates...
[2026-10-25 07:29:07,200.200 INFO    ] 200
[2026-10-25 07:29:07,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:07,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:07,257.257 INFO    ] No update needed
[2026-10-25 07:29:07,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 07:29:07,313.313 INFO    ] 200
[2026-10-25 07:29:07,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:07,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:29:07,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:07,423.423 INFO    ] No camera update needed
[2026-10-25 07:29:07,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:29:07,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:29:07,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:29:07,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:29:09,486.486 INFO    ] ================================================
[2026-10-25 07:29:09,502.502 INFO    ] Launching Daemon at Sun Oct 25 07:29:09 IST 2026
[2026-10-25 07:29:09,514.514 INFO    ] ================================================
[2026-10-25 07:29:10,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:29:10
[2026-10-25 07:29:10,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:29:10,971.971 INFO    ] Initializing speech engine...
[2026-10-25 07:29:10,991.991 INFO    ] 2026-10-25 07:29:10
[2026-10-25 07:29:11,288.288 INFO    ] 2026-10-25 07:29:11
[2026-10-25 07:29:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:29:11,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:29:11,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:29:11,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:29:11,689.689 INFO    ] time= 25/10/2026 07:29:11
[2026-10-25 07:29:11,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:29:11,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:29:11,830.830 INFO    ] No existing commands found in stream
[2026-10-25 07:29:16,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:29:16,844.844 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 07:29:17,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:29:17,741.741 INFO    ] Checking for system updates...
[2026-10-25 07:29:17,778.778 INFO    ] 200
[2026-10-25 07:29:17,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:17,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:29:17,844.844 INFO    ] No update needed
[2026-10-25 07:29:17,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 07:29:17,883.883 INFO    ] 200
[2026-10-25 07:29:17,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:17,934.934 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:29:17,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:29:17,983.983 INFO    ] No camera update needed
[2026-10-25 07:29:17,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:29:17,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:29:17,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:29:17,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:29:20,044.044 INFO    ] ================================================
[2026-10-25 07:29:20,061.061 INFO    ] Launching Daemon at Sun Oct 25 07:29:20 IST 2026
[2026-10-25 07:29:20,072.072 INFO    ] ================================================
[2026-10-25 07:29:20,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:29:20
[2026-10-25 07:29:21,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:29:21,575.575 INFO    ] Initializing speech engine...
[2026-10-25 07:29:21,584.584 INFO    ] 2026-10-25 07:29:21
[2026-10-25 07:29:21,870.870 INFO    ] 2026-10-25 07:29:21
[2026-10-25 07:29:21,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:29:22,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:29:22,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:29:22,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:29:22,253.253 INFO    ] time= 25/10/2026 07:29:22
[2026-10-25 07:29:22,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:29:22,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:29:22,447.447 INFO    ] No existing commands found in stream
[2026-10-25 07:29:27,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:29:27,470.470 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 07:29:30,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:29:30,225.225 INFO    ] Checking for system updates...
[2026-10-25 07:29:30,270.270 INFO    ] 200
[2026-10-25 07:29:30,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:30,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:30,331.331 INFO    ] No update needed
[2026-10-25 07:29:30,333.333 INFO    ] Checking for camera pi updates...
[2026-10-25 07:29:30,369.369 INFO    ] 200
[2026-10-25 07:29:30,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:30,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:29:30,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:30,468.468 INFO    ] No camera update needed
[2026-10-25 07:29:30,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:29:30,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:29:30,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:29:30,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:29:32,529.529 INFO    ] ================================================
[2026-10-25 07:29:32,545.545 INFO    ] Launching Daemon at Sun Oct 25 07:29:32 IST 2026
[2026-10-25 07:29:32,557.557 INFO    ] ================================================
[2026-10-25 07:29:33,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:29:33
[2026-10-25 07:29:33,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:29:34,251.251 INFO    ] Initializing speech engine...
[2026-10-25 07:29:34,258.258 INFO    ] 2026-10-25 07:29:34
[2026-10-25 07:29:34,577.577 INFO    ] 2026-10-25 07:29:34
[2026-10-25 07:29:34,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:29:34,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:29:34,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:29:35,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:29:35,090.090 INFO    ] time= 25/10/2026 07:29:35
[2026-10-25 07:29:35,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:29:35,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:29:35,249.249 INFO    ] No existing commands found in stream
[2026-10-25 07:29:40,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:29:40,269.269 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 07:29:44,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:29:44,123.123 INFO    ] Checking for system updates...
[2026-10-25 07:29:44,167.167 INFO    ] 200
[2026-10-25 07:29:44,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:44,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:29:44,249.249 INFO    ] No update needed
[2026-10-25 07:29:44,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 07:29:44,289.289 INFO    ] 200
[2026-10-25 07:29:44,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:44,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:29:44,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:29:44,504.504 INFO    ] No camera update needed
[2026-10-25 07:29:44,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:29:44,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:29:44,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:29:44,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:29:46,567.567 INFO    ] ================================================
[2026-10-25 07:29:46,584.584 INFO    ] Launching Daemon at Sun Oct 25 07:29:46 IST 2026
[2026-10-25 07:29:46,596.596 INFO    ] ================================================
[2026-10-25 07:29:47,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:29:47
[2026-10-25 07:29:47,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:29:48,037.037 INFO    ] Initializing speech engine...
[2026-10-25 07:29:48,046.046 INFO    ] 2026-10-25 07:29:48
[2026-10-25 07:29:48,349.349 INFO    ] 2026-10-25 07:29:48
[2026-10-25 07:29:48,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:29:48,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:29:48,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:29:48,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:29:48,762.762 INFO    ] time= 25/10/2026 07:29:48
[2026-10-25 07:29:48,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:29:48,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:29:48,874.874 INFO    ] No existing commands found in stream
[2026-10-25 07:29:53,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:29:53,889.889 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 07:29:54,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:29:54,787.787 INFO    ] Checking for system updates...
[2026-10-25 07:29:54,830.830 INFO    ] 200
[2026-10-25 07:29:54,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:54,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:54,898.898 INFO    ] No update needed
[2026-10-25 07:29:54,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 07:29:54,938.938 INFO    ] 200
[2026-10-25 07:29:54,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:29:54,985.985 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:29:55,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:29:55,042.042 INFO    ] No camera update needed
[2026-10-25 07:29:55,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:29:55,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:29:55,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:29:55,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:29:57,105.105 INFO    ] ================================================
[2026-10-25 07:29:57,121.121 INFO    ] Launching Daemon at Sun Oct 25 07:29:57 IST 2026
[2026-10-25 07:29:57,133.133 INFO    ] ================================================
[2026-10-25 07:29:57,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:29:57
[2026-10-25 07:29:58,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:29:58,820.820 INFO    ] Initializing speech engine...
[2026-10-25 07:29:58,829.829 INFO    ] 2026-10-25 07:29:58
[2026-10-25 07:29:59,111.111 INFO    ] 2026-10-25 07:29:59
[2026-10-25 07:29:59,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:29:59,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:29:59,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:29:59,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:29:59,671.671 INFO    ] time= 25/10/2026 07:29:59
[2026-10-25 07:29:59,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:29:59,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:29:59,814.814 INFO    ] No existing commands found in stream
[2026-10-25 07:30:04,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:30:04,841.841 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 07:30:08,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:30:08,005.005 INFO    ] Checking for system updates...
[2026-10-25 07:30:08,045.045 INFO    ] 200
[2026-10-25 07:30:08,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:08,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:30:08,107.107 INFO    ] No update needed
[2026-10-25 07:30:08,110.110 INFO    ] Checking for camera pi updates...
[2026-10-25 07:30:08,151.151 INFO    ] 200
[2026-10-25 07:30:08,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:08,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:30:08,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:30:08,249.249 INFO    ] No camera update needed
[2026-10-25 07:30:08,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:30:08,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:30:08,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:30:08,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:30:10,311.311 INFO    ] ================================================
[2026-10-25 07:30:10,366.366 INFO    ] Launching Daemon at Sun Oct 25 07:30:10 IST 2026
[2026-10-25 07:30:10,377.377 INFO    ] ================================================
[2026-10-25 07:30:10,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:30:10
[2026-10-25 07:30:11,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:30:11,816.816 INFO    ] Initializing speech engine...
[2026-10-25 07:30:11,836.836 INFO    ] 2026-10-25 07:30:11
[2026-10-25 07:30:12,093.093 INFO    ] 2026-10-25 07:30:12
[2026-10-25 07:30:12,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:30:12,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:30:12,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:30:12,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:30:12,500.500 INFO    ] time= 25/10/2026 07:30:12
[2026-10-25 07:30:12,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:30:12,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:30:12,589.589 INFO    ] No existing commands found in stream
[2026-10-25 07:30:17,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:30:17,607.607 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 07:30:19,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:30:19,765.765 INFO    ] Checking for system updates...
[2026-10-25 07:30:19,806.806 INFO    ] 200
[2026-10-25 07:30:19,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:19,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:19,867.867 INFO    ] No update needed
[2026-10-25 07:30:19,870.870 INFO    ] Checking for camera pi updates...
[2026-10-25 07:30:19,909.909 INFO    ] 200
[2026-10-25 07:30:19,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:19,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:30:20,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:20,003.003 INFO    ] No camera update needed
[2026-10-25 07:30:20,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:30:20,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:30:20,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:30:20,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:30:22,062.062 INFO    ] ================================================
[2026-10-25 07:30:22,078.078 INFO    ] Launching Daemon at Sun Oct 25 07:30:22 IST 2026
[2026-10-25 07:30:22,089.089 INFO    ] ================================================
[2026-10-25 07:30:22,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:30:22
[2026-10-25 07:30:23,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:30:23,521.521 INFO    ] Initializing speech engine...
[2026-10-25 07:30:23,528.528 INFO    ] 2026-10-25 07:30:23
[2026-10-25 07:30:23,836.836 INFO    ] 2026-10-25 07:30:23
[2026-10-25 07:30:23,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:30:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:30:24,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:30:24,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:30:24,226.226 INFO    ] time= 25/10/2026 07:30:24
[2026-10-25 07:30:24,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:30:24,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:30:24,353.353 INFO    ] No existing commands found in stream
[2026-10-25 07:30:29,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:30:29,369.369 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 07:30:31,295.295 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:30:31,298.298 INFO    ] Checking for system updates...
[2026-10-25 07:30:31,337.337 INFO    ] 200
[2026-10-25 07:30:31,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:31,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:31,407.407 INFO    ] No update needed
[2026-10-25 07:30:31,410.410 INFO    ] Checking for camera pi updates...
[2026-10-25 07:30:31,447.447 INFO    ] 200
[2026-10-25 07:30:31,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:31,493.493 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:30:31,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:31,552.552 INFO    ] No camera update needed
[2026-10-25 07:30:31,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:30:31,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:30:31,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:30:31,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:30:33,615.615 INFO    ] ================================================
[2026-10-25 07:30:33,631.631 INFO    ] Launching Daemon at Sun Oct 25 07:30:33 IST 2026
[2026-10-25 07:30:33,642.642 INFO    ] ================================================
[2026-10-25 07:30:34,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:30:34
[2026-10-25 07:30:34,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:30:35,094.094 INFO    ] Initializing speech engine...
[2026-10-25 07:30:35,102.102 INFO    ] 2026-10-25 07:30:35
[2026-10-25 07:30:35,410.410 INFO    ] 2026-10-25 07:30:35
[2026-10-25 07:30:35,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:30:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:30:35,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:30:35,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:30:35,815.815 INFO    ] time= 25/10/2026 07:30:35
[2026-10-25 07:30:35,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:30:35,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:30:35,937.937 INFO    ] No existing commands found in stream
[2026-10-25 07:30:40,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:30:40,954.954 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 07:30:41,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:30:41,953.953 INFO    ] Checking for system updates...
[2026-10-25 07:30:41,993.993 INFO    ] 200
[2026-10-25 07:30:41,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:42,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:42,064.064 INFO    ] No update needed
[2026-10-25 07:30:42,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 07:30:42,104.104 INFO    ] 200
[2026-10-25 07:30:42,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:42,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:30:42,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:30:42,210.210 INFO    ] No camera update needed
[2026-10-25 07:30:42,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:30:42,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:30:42,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:30:42,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:30:44,273.273 INFO    ] ================================================
[2026-10-25 07:30:44,290.290 INFO    ] Launching Daemon at Sun Oct 25 07:30:44 IST 2026
[2026-10-25 07:30:44,301.301 INFO    ] ================================================
[2026-10-25 07:30:44,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:30:44
[2026-10-25 07:30:45,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:30:45,979.979 INFO    ] Initializing speech engine...
[2026-10-25 07:30:45,992.992 INFO    ] 2026-10-25 07:30:45
[2026-10-25 07:30:46,278.278 INFO    ] 2026-10-25 07:30:46
[2026-10-25 07:30:46,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:30:46,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:30:46,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:30:46,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:30:46,772.772 INFO    ] time= 25/10/2026 07:30:46
[2026-10-25 07:30:46,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:30:46,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:30:46,944.944 INFO    ] No existing commands found in stream
[2026-10-25 07:30:51,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:30:51,976.976 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 07:30:52,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:30:52,750.750 INFO    ] Checking for system updates...
[2026-10-25 07:30:52,789.789 INFO    ] 200
[2026-10-25 07:30:52,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:52,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:30:52,859.859 INFO    ] No update needed
[2026-10-25 07:30:52,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 07:30:52,898.898 INFO    ] 200
[2026-10-25 07:30:52,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:30:52,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:30:53,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:30:53,003.003 INFO    ] No camera update needed
[2026-10-25 07:30:53,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:30:53,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:30:53,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:30:53,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:30:55,072.072 INFO    ] ================================================
[2026-10-25 07:30:55,088.088 INFO    ] Launching Daemon at Sun Oct 25 07:30:55 IST 2026
[2026-10-25 07:30:55,100.100 INFO    ] ================================================
[2026-10-25 07:30:55,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:30:55
[2026-10-25 07:30:56,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:30:56,769.769 INFO    ] Initializing speech engine...
[2026-10-25 07:30:56,778.778 INFO    ] 2026-10-25 07:30:56
[2026-10-25 07:30:57,057.057 INFO    ] 2026-10-25 07:30:57
[2026-10-25 07:30:57,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:30:57,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:30:57,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:30:57,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:30:57,615.615 INFO    ] time= 25/10/2026 07:30:57
[2026-10-25 07:30:57,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:30:57,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:30:57,762.762 INFO    ] No existing commands found in stream
[2026-10-25 07:31:02,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:31:02,787.787 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 07:31:03,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:31:03,884.884 INFO    ] Checking for system updates...
[2026-10-25 07:31:03,925.925 INFO    ] 200
[2026-10-25 07:31:03,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:03,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:31:03,986.986 INFO    ] No update needed
[2026-10-25 07:31:03,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 07:31:04,024.024 INFO    ] 200
[2026-10-25 07:31:04,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:04,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:31:04,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:31:04,117.117 INFO    ] No camera update needed
[2026-10-25 07:31:04,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:31:04,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:31:04,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:31:04,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:31:06,175.175 INFO    ] ================================================
[2026-10-25 07:31:06,191.191 INFO    ] Launching Daemon at Sun Oct 25 07:31:06 IST 2026
[2026-10-25 07:31:06,202.202 INFO    ] ================================================
[2026-10-25 07:31:06,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:31:06
[2026-10-25 07:31:07,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:31:07,638.638 INFO    ] Initializing speech engine...
[2026-10-25 07:31:07,661.661 INFO    ] 2026-10-25 07:31:07
[2026-10-25 07:31:07,935.935 INFO    ] 2026-10-25 07:31:07
[2026-10-25 07:31:07,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:31:08,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:31:08,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:31:08,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:31:08,387.387 INFO    ] time= 25/10/2026 07:31:08
[2026-10-25 07:31:08,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:31:08,495.495 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:31:08,548.548 INFO    ] No existing commands found in stream
[2026-10-25 07:31:13,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:31:13,563.563 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 07:31:17,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:31:17,885.885 INFO    ] Checking for system updates...
[2026-10-25 07:31:17,922.922 INFO    ] 200
[2026-10-25 07:31:17,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:17,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:17,988.988 INFO    ] No update needed
[2026-10-25 07:31:17,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 07:31:18,025.025 INFO    ] 200
[2026-10-25 07:31:18,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:18,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:31:18,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:18,120.120 INFO    ] No camera update needed
[2026-10-25 07:31:18,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:31:18,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:31:18,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:31:18,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:31:20,178.178 INFO    ] ================================================
[2026-10-25 07:31:20,194.194 INFO    ] Launching Daemon at Sun Oct 25 07:31:20 IST 2026
[2026-10-25 07:31:20,205.205 INFO    ] ================================================
[2026-10-25 07:31:20,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:31:20
[2026-10-25 07:31:21,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:31:21,645.645 INFO    ] Initializing speech engine...
[2026-10-25 07:31:21,664.664 INFO    ] 2026-10-25 07:31:21
[2026-10-25 07:31:21,925.925 INFO    ] 2026-10-25 07:31:21
[2026-10-25 07:31:21,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:31:22,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:31:22,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:31:22,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:31:22,412.412 INFO    ] time= 25/10/2026 07:31:22
[2026-10-25 07:31:22,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:31:22,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:31:22,613.613 INFO    ] No existing commands found in stream
[2026-10-25 07:31:27,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:31:27,643.643 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 07:31:28,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:31:28,299.299 INFO    ] Checking for system updates...
[2026-10-25 07:31:28,337.337 INFO    ] 200
[2026-10-25 07:31:28,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:28,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:28,403.403 INFO    ] No update needed
[2026-10-25 07:31:28,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 07:31:28,441.441 INFO    ] 200
[2026-10-25 07:31:28,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:28,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:31:28,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:28,543.543 INFO    ] No camera update needed
[2026-10-25 07:31:28,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:31:28,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:31:28,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:31:28,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:31:30,612.612 INFO    ] ================================================
[2026-10-25 07:31:30,636.636 INFO    ] Launching Daemon at Sun Oct 25 07:31:30 IST 2026
[2026-10-25 07:31:30,648.648 INFO    ] ================================================
[2026-10-25 07:31:31,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:31:31
[2026-10-25 07:31:32,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:31:32,445.445 INFO    ] Initializing speech engine...
[2026-10-25 07:31:32,450.450 INFO    ] 2026-10-25 07:31:32
[2026-10-25 07:31:32,831.831 INFO    ] 2026-10-25 07:31:32
[2026-10-25 07:31:32,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:31:33,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:31:33,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:31:33,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:31:33,958.958 INFO    ] time= 25/10/2026 07:31:33
[2026-10-25 07:31:33,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:31:33,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:31:34,091.091 INFO    ] No existing commands found in stream
[2026-10-25 07:31:39,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:31:39,113.113 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 07:31:40,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:31:40,990.990 INFO    ] Checking for system updates...
[2026-10-25 07:31:41,028.028 INFO    ] 200
[2026-10-25 07:31:41,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:41,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:41,092.092 INFO    ] No update needed
[2026-10-25 07:31:41,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 07:31:41,129.129 INFO    ] 200
[2026-10-25 07:31:41,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:41,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:31:41,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:31:41,230.230 INFO    ] No camera update needed
[2026-10-25 07:31:41,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:31:41,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:31:41,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:31:41,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:31:43,288.288 INFO    ] ================================================
[2026-10-25 07:31:43,304.304 INFO    ] Launching Daemon at Sun Oct 25 07:31:43 IST 2026
[2026-10-25 07:31:43,315.315 INFO    ] ================================================
[2026-10-25 07:31:43,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:31:43
[2026-10-25 07:31:44,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:31:44,825.825 INFO    ] Initializing speech engine...
[2026-10-25 07:31:44,838.838 INFO    ] 2026-10-25 07:31:44
[2026-10-25 07:31:45,154.154 INFO    ] 2026-10-25 07:31:45
[2026-10-25 07:31:45,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:31:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:31:45,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:31:45,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:31:45,665.665 INFO    ] time= 25/10/2026 07:31:45
[2026-10-25 07:31:45,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:31:45,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:31:45,778.778 INFO    ] No existing commands found in stream
[2026-10-25 07:31:50,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:31:50,807.807 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 07:31:54,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:31:54,327.327 INFO    ] Checking for system updates...
[2026-10-25 07:31:54,368.368 INFO    ] 200
[2026-10-25 07:31:54,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:54,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:31:54,428.428 INFO    ] No update needed
[2026-10-25 07:31:54,430.430 INFO    ] Checking for camera pi updates...
[2026-10-25 07:31:54,466.466 INFO    ] 200
[2026-10-25 07:31:54,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:31:54,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:31:54,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:31:54,675.675 INFO    ] No camera update needed
[2026-10-25 07:31:54,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:31:54,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:31:54,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:31:54,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:31:56,733.733 INFO    ] ================================================
[2026-10-25 07:31:56,749.749 INFO    ] Launching Daemon at Sun Oct 25 07:31:56 IST 2026
[2026-10-25 07:31:56,760.760 INFO    ] ================================================
[2026-10-25 07:31:57,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:31:57
[2026-10-25 07:31:58,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:31:58,379.379 INFO    ] Initializing speech engine...
[2026-10-25 07:31:58,388.388 INFO    ] 2026-10-25 07:31:58
[2026-10-25 07:31:58,665.665 INFO    ] 2026-10-25 07:31:58
[2026-10-25 07:31:58,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:31:58,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:31:58,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:31:59,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:31:59,185.185 INFO    ] time= 25/10/2026 07:31:59
[2026-10-25 07:31:59,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:31:59,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:31:59,375.375 INFO    ] No existing commands found in stream
[2026-10-25 07:32:04,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:32:04,412.412 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 07:32:08,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:32:08,045.045 INFO    ] Checking for system updates...
[2026-10-25 07:32:08,084.084 INFO    ] 200
[2026-10-25 07:32:08,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:08,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:08,146.146 INFO    ] No update needed
[2026-10-25 07:32:08,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 07:32:08,185.185 INFO    ] 200
[2026-10-25 07:32:08,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:08,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:32:08,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:08,293.293 INFO    ] No camera update needed
[2026-10-25 07:32:08,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:32:08,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:32:08,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:32:08,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:32:10,351.351 INFO    ] ================================================
[2026-10-25 07:32:10,366.366 INFO    ] Launching Daemon at Sun Oct 25 07:32:10 IST 2026
[2026-10-25 07:32:10,377.377 INFO    ] ================================================
[2026-10-25 07:32:10,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:32:10
[2026-10-25 07:32:11,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:32:11,853.853 INFO    ] Initializing speech engine...
[2026-10-25 07:32:11,858.858 INFO    ] 2026-10-25 07:32:11
[2026-10-25 07:32:12,125.125 INFO    ] 2026-10-25 07:32:12
[2026-10-25 07:32:12,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:32:12,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:32:12,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:32:12,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:32:12,600.600 INFO    ] time= 25/10/2026 07:32:12
[2026-10-25 07:32:12,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:32:12,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:32:12,825.825 INFO    ] No existing commands found in stream
[2026-10-25 07:32:17,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:32:17,854.854 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 07:32:20,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:32:20,318.318 INFO    ] Checking for system updates...
[2026-10-25 07:32:20,355.355 INFO    ] 200
[2026-10-25 07:32:20,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:20,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:32:20,422.422 INFO    ] No update needed
[2026-10-25 07:32:20,428.428 INFO    ] Checking for camera pi updates...
[2026-10-25 07:32:20,472.472 INFO    ] 200
[2026-10-25 07:32:20,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:20,524.524 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:32:20,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:32:20,572.572 INFO    ] No camera update needed
[2026-10-25 07:32:20,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:32:20,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:32:20,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:32:20,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:32:22,629.629 INFO    ] ================================================
[2026-10-25 07:32:22,645.645 INFO    ] Launching Daemon at Sun Oct 25 07:32:22 IST 2026
[2026-10-25 07:32:22,656.656 INFO    ] ================================================
[2026-10-25 07:32:23,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:32:23
[2026-10-25 07:32:23,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:32:24,117.117 INFO    ] Initializing speech engine...
[2026-10-25 07:32:24,127.127 INFO    ] 2026-10-25 07:32:24
[2026-10-25 07:32:24,395.395 INFO    ] 2026-10-25 07:32:24
[2026-10-25 07:32:24,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:32:24,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:32:24,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:32:24,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:32:24,878.878 INFO    ] time= 25/10/2026 07:32:24
[2026-10-25 07:32:24,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:32:24,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:32:24,983.983 INFO    ] No existing commands found in stream
[2026-10-25 07:32:29,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:32:29,995.995 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 07:32:30,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:32:30,603.603 INFO    ] Checking for system updates...
[2026-10-25 07:32:30,646.646 INFO    ] 200
[2026-10-25 07:32:30,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:30,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:30,708.708 INFO    ] No update needed
[2026-10-25 07:32:30,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 07:32:30,754.754 INFO    ] 200
[2026-10-25 07:32:30,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:30,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:32:30,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:30,850.850 INFO    ] No camera update needed
[2026-10-25 07:32:30,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:32:30,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:32:30,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:32:30,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:32:32,907.907 INFO    ] ================================================
[2026-10-25 07:32:32,923.923 INFO    ] Launching Daemon at Sun Oct 25 07:32:32 IST 2026
[2026-10-25 07:32:32,934.934 INFO    ] ================================================
[2026-10-25 07:32:33,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:32:33
[2026-10-25 07:32:34,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:32:34,390.390 INFO    ] Initializing speech engine...
[2026-10-25 07:32:34,398.398 INFO    ] 2026-10-25 07:32:34
[2026-10-25 07:32:34,692.692 INFO    ] 2026-10-25 07:32:34
[2026-10-25 07:32:34,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:32:34,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:32:34,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:32:35,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:32:35,408.408 INFO    ] time= 25/10/2026 07:32:35
[2026-10-25 07:32:35,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:32:35,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:32:35,553.553 INFO    ] No existing commands found in stream
[2026-10-25 07:32:40,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:32:40,566.566 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 07:32:44,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:32:44,408.408 INFO    ] Checking for system updates...
[2026-10-25 07:32:44,447.447 INFO    ] 200
[2026-10-25 07:32:44,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:44,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:44,510.510 INFO    ] No update needed
[2026-10-25 07:32:44,513.513 INFO    ] Checking for camera pi updates...
[2026-10-25 07:32:44,550.550 INFO    ] 200
[2026-10-25 07:32:44,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:44,597.597 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:32:44,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:32:44,661.661 INFO    ] No camera update needed
[2026-10-25 07:32:44,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:32:44,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:32:44,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:32:44,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:32:46,721.721 INFO    ] ================================================
[2026-10-25 07:32:46,737.737 INFO    ] Launching Daemon at Sun Oct 25 07:32:46 IST 2026
[2026-10-25 07:32:46,748.748 INFO    ] ================================================
[2026-10-25 07:32:47,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:32:47
[2026-10-25 07:32:47,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:32:48,190.190 INFO    ] Initializing speech engine...
[2026-10-25 07:32:48,198.198 INFO    ] 2026-10-25 07:32:48
[2026-10-25 07:32:48,510.510 INFO    ] 2026-10-25 07:32:48
[2026-10-25 07:32:48,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:32:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:32:48,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:32:48,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:32:48,903.903 INFO    ] time= 25/10/2026 07:32:48
[2026-10-25 07:32:48,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:32:48,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:32:49,032.032 INFO    ] No existing commands found in stream
[2026-10-25 07:32:54,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:32:54,046.046 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 07:32:56,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:32:56,500.500 INFO    ] Checking for system updates...
[2026-10-25 07:32:56,542.542 INFO    ] 200
[2026-10-25 07:32:56,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:56,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:32:56,610.610 INFO    ] No update needed
[2026-10-25 07:32:56,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 07:32:56,648.648 INFO    ] 200
[2026-10-25 07:32:56,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:32:56,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:32:56,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:32:56,750.750 INFO    ] No camera update needed
[2026-10-25 07:32:56,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:32:56,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:32:56,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:32:56,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:32:58,813.813 INFO    ] ================================================
[2026-10-25 07:32:58,829.829 INFO    ] Launching Daemon at Sun Oct 25 07:32:58 IST 2026
[2026-10-25 07:32:58,841.841 INFO    ] ================================================
[2026-10-25 07:32:59,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:32:59
[2026-10-25 07:33:00,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:00,335.335 INFO    ] Initializing speech engine...
[2026-10-25 07:33:00,352.352 INFO    ] 2026-10-25 07:33:00
[2026-10-25 07:33:00,647.647 INFO    ] 2026-10-25 07:33:00
[2026-10-25 07:33:00,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:33:00,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:33:00,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:33:01,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:33:01,037.037 INFO    ] time= 25/10/2026 07:33:01
[2026-10-25 07:33:01,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:33:01,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:33:01,158.158 INFO    ] No existing commands found in stream
[2026-10-25 07:33:06,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:33:06,181.181 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 07:33:07,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:33:07,969.969 INFO    ] Checking for system updates...
[2026-10-25 07:33:08,010.010 INFO    ] 200
[2026-10-25 07:33:08,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:08,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:08,081.081 INFO    ] No update needed
[2026-10-25 07:33:08,084.084 INFO    ] Checking for camera pi updates...
[2026-10-25 07:33:08,122.122 INFO    ] 200
[2026-10-25 07:33:08,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:08,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:33:08,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:08,220.220 INFO    ] No camera update needed
[2026-10-25 07:33:08,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:33:08,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:33:08,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:33:08,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:33:10,279.279 INFO    ] ================================================
[2026-10-25 07:33:10,294.294 INFO    ] Launching Daemon at Sun Oct 25 07:33:10 IST 2026
[2026-10-25 07:33:10,305.305 INFO    ] ================================================
[2026-10-25 07:33:10,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:33:10
[2026-10-25 07:33:11,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:11,748.748 INFO    ] Initializing speech engine...
[2026-10-25 07:33:11,756.756 INFO    ] 2026-10-25 07:33:11
[2026-10-25 07:33:12,067.067 INFO    ] 2026-10-25 07:33:12
[2026-10-25 07:33:12,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:33:12,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:33:12,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:33:12,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:33:12,500.500 INFO    ] time= 25/10/2026 07:33:12
[2026-10-25 07:33:12,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:33:12,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:33:12,587.587 INFO    ] No existing commands found in stream
[2026-10-25 07:33:17,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:33:17,603.603 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 07:33:18,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:33:18,895.895 INFO    ] Checking for system updates...
[2026-10-25 07:33:18,936.936 INFO    ] 200
[2026-10-25 07:33:18,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:18,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:33:18,996.996 INFO    ] No update needed
[2026-10-25 07:33:18,999.999 INFO    ] Checking for camera pi updates...
[2026-10-25 07:33:19,034.034 INFO    ] 200
[2026-10-25 07:33:19,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:19,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:33:19,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:33:19,144.144 INFO    ] No camera update needed
[2026-10-25 07:33:19,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:33:19,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:33:19,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:33:19,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:33:21,202.202 INFO    ] ================================================
[2026-10-25 07:33:21,228.228 INFO    ] Launching Daemon at Sun Oct 25 07:33:21 IST 2026
[2026-10-25 07:33:21,239.239 INFO    ] ================================================
[2026-10-25 07:33:21,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:33:21
[2026-10-25 07:33:22,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:22,951.951 INFO    ] Initializing speech engine...
[2026-10-25 07:33:22,963.963 INFO    ] 2026-10-25 07:33:22
[2026-10-25 07:33:23,250.250 INFO    ] 2026-10-25 07:33:23
[2026-10-25 07:33:23,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:33:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:33:23,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:33:23,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:33:23,733.733 INFO    ] time= 25/10/2026 07:33:23
[2026-10-25 07:33:23,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:33:23,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:33:23,923.923 INFO    ] No existing commands found in stream
[2026-10-25 07:33:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:33:28,958.958 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 07:33:30,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:33:30,199.199 INFO    ] Checking for system updates...
[2026-10-25 07:33:30,260.260 INFO    ] 200
[2026-10-25 07:33:30,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:30,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:30,324.324 INFO    ] No update needed
[2026-10-25 07:33:30,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 07:33:30,369.369 INFO    ] 200
[2026-10-25 07:33:30,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:30,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:33:30,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:30,485.485 INFO    ] No camera update needed
[2026-10-25 07:33:30,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:33:30,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:33:30,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:33:30,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:33:32,544.544 INFO    ] ================================================
[2026-10-25 07:33:32,569.569 INFO    ] Launching Daemon at Sun Oct 25 07:33:32 IST 2026
[2026-10-25 07:33:32,590.590 INFO    ] ================================================
[2026-10-25 07:33:33,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:33:33
[2026-10-25 07:33:34,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:34,326.326 INFO    ] Initializing speech engine...
[2026-10-25 07:33:34,339.339 INFO    ] 2026-10-25 07:33:34
[2026-10-25 07:33:34,637.637 INFO    ] 2026-10-25 07:33:34
[2026-10-25 07:33:34,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:33:34,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:33:34,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:33:35,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:33:35,487.487 INFO    ] time= 25/10/2026 07:33:35
[2026-10-25 07:33:35,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:33:35,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:33:35,748.748 INFO    ] No existing commands found in stream
[2026-10-25 07:33:40,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:33:40,778.778 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 07:33:42,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:33:42,121.121 INFO    ] Checking for system updates...
[2026-10-25 07:33:42,167.167 INFO    ] 200
[2026-10-25 07:33:42,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:42,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:33:42,234.234 INFO    ] No update needed
[2026-10-25 07:33:42,237.237 INFO    ] Checking for camera pi updates...
[2026-10-25 07:33:42,274.274 INFO    ] 200
[2026-10-25 07:33:42,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:42,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:33:42,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:33:42,375.375 INFO    ] No camera update needed
[2026-10-25 07:33:42,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:33:42,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:33:42,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:33:42,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:33:44,440.440 INFO    ] ================================================
[2026-10-25 07:33:44,457.457 INFO    ] Launching Daemon at Sun Oct 25 07:33:44 IST 2026
[2026-10-25 07:33:44,469.469 INFO    ] ================================================
[2026-10-25 07:33:45,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:33:45
[2026-10-25 07:33:45,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:45,940.940 INFO    ] Initializing speech engine...
[2026-10-25 07:33:45,949.949 INFO    ] 2026-10-25 07:33:45
[2026-10-25 07:33:46,233.233 INFO    ] 2026-10-25 07:33:46
[2026-10-25 07:33:46,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:33:46,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:33:46,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:33:46,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:33:46,699.699 INFO    ] time= 25/10/2026 07:33:46
[2026-10-25 07:33:46,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:33:46,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:33:46,851.851 INFO    ] No existing commands found in stream
[2026-10-25 07:33:51,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:33:51,880.880 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 07:33:55,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:33:55,838.838 INFO    ] Checking for system updates...
[2026-10-25 07:33:55,877.877 INFO    ] 200
[2026-10-25 07:33:55,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:55,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:55,941.941 INFO    ] No update needed
[2026-10-25 07:33:55,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 07:33:55,983.983 INFO    ] 200
[2026-10-25 07:33:55,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:33:56,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:33:56,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:33:56,085.085 INFO    ] No camera update needed
[2026-10-25 07:33:56,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:33:56,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:33:56,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:33:56,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:33:58,145.145 INFO    ] ================================================
[2026-10-25 07:33:58,161.161 INFO    ] Launching Daemon at Sun Oct 25 07:33:58 IST 2026
[2026-10-25 07:33:58,172.172 INFO    ] ================================================
[2026-10-25 07:33:58,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:33:58
[2026-10-25 07:33:59,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:33:59,753.753 INFO    ] Initializing speech engine...
[2026-10-25 07:33:59,759.759 INFO    ] 2026-10-25 07:33:59
[2026-10-25 07:34:00,032.032 INFO    ] 2026-10-25 07:34:00
[2026-10-25 07:34:00,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:34:00,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:34:00,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:34:00,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:34:00,409.409 INFO    ] time= 25/10/2026 07:34:00
[2026-10-25 07:34:00,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:34:00,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:34:00,542.542 INFO    ] No existing commands found in stream
[2026-10-25 07:34:05,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:34:05,555.555 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 07:34:08,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:34:08,454.454 INFO    ] Checking for system updates...
[2026-10-25 07:34:08,492.492 INFO    ] 200
[2026-10-25 07:34:08,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:34:08,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:34:08,556.556 INFO    ] No update needed
[2026-10-25 07:34:08,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 07:34:08,600.600 INFO    ] 200
[2026-10-25 07:34:08,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:34:08,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:34:08,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:34:08,714.714 INFO    ] No camera update needed
[2026-10-25 07:34:08,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:34:08,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:34:08,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:34:08,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:34:10,778.778 INFO    ] ================================================
[2026-10-25 07:34:10,793.793 INFO    ] Launching Daemon at Sun Oct 25 07:34:10 IST 2026
[2026-10-25 07:34:10,804.804 INFO    ] ================================================
[2026-10-25 07:34:11,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:34:11
[2026-10-25 07:34:11,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:34:12,261.261 INFO    ] Initializing speech engine...
[2026-10-25 07:34:12,271.271 INFO    ] 2026-10-25 07:34:12
[2026-10-25 07:34:12,524.524 INFO    ] 2026-10-25 07:34:12
[2026-10-25 07:34:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:34:12,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:34:12,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:34:12,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:34:12,939.939 INFO    ] time= 25/10/2026 07:34:12
[2026-10-25 07:34:12,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:34:12,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:34:13,051.051 INFO    ] No existing commands found in stream
[2026-10-25 07:34:18,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:34:18,066.066 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 07:34:27,042.042 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 07:34:27,071.071 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x73d51770>, 'Connection to neuustore.com timed out. (connect timeout=5)'))",)
[2026-10-25 07:34:27,081.081 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x73d51770>, 'Connection to neuustore.com timed out. (connect timeout=5)'))
[2026-10-25 07:34:27,091.091 INFO    ] None
[2026-10-25 07:34:27,094.094 INFO    ] Checking for system updates...
[2026-10-25 07:34:27,138.138 INFO    ] 200
[2026-10-25 07:34:27,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:34:27,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:34:27,205.205 INFO    ] No update needed
[2026-10-25 07:34:27,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 07:34:27,241.241 INFO    ] 200
[2026-10-25 07:34:27,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:34:27,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:34:37,303.303 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202502.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d00450>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-25 07:34:37,324.324 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-25 07:34:37,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:34:37,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:34:37,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:34:37,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:34:39,387.387 INFO    ] ================================================
[2026-10-25 07:34:39,402.402 INFO    ] Launching Daemon at Sun Oct 25 07:34:39 IST 2026
[2026-10-25 07:34:39,414.414 INFO    ] ================================================
[2026-10-25 07:34:39,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:34:39
[2026-10-25 07:34:40,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:34:40,839.839 INFO    ] Initializing speech engine...
[2026-10-25 07:34:40,848.848 INFO    ] 2026-10-25 07:34:40
[2026-10-25 07:34:41,149.149 INFO    ] 2026-10-25 07:34:41
[2026-10-25 07:34:41,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:34:46,221.221 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 07:34:46,248.248 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 07:34:46,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:34:46,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:34:46,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:34:48,299.299 INFO    ] ================================================
[2026-10-25 07:34:48,314.314 INFO    ] Launching Daemon at Sun Oct 25 07:34:48 IST 2026
[2026-10-25 07:34:48,325.325 INFO    ] ================================================
[2026-10-25 07:34:48,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:34:48
[2026-10-25 07:34:49,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:34:49,787.787 INFO    ] Initializing speech engine...
[2026-10-25 07:34:49,792.792 INFO    ] 2026-10-25 07:34:49
[2026-10-25 07:34:50,042.042 INFO    ] 2026-10-25 07:34:50
[2026-10-25 07:34:50,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:34:50,201.201 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 07:34:50,308.308 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 07:34:50,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:34:50,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:34:50,409.409 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 07:34:50,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:34:52,496.496 INFO    ] ================================================
[2026-10-25 07:34:52,511.511 INFO    ] Launching Daemon at Sun Oct 25 07:34:52 IST 2026
[2026-10-25 07:34:52,522.522 INFO    ] ================================================
[2026-10-25 07:34:53,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:34:53
[2026-10-25 07:34:53,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:34:53,987.987 INFO    ] Initializing speech engine...
[2026-10-25 07:34:53,995.995 INFO    ] 2026-10-25 07:34:53
[2026-10-25 07:34:54,269.269 INFO    ] 2026-10-25 07:34:54
[2026-10-25 07:34:54,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:34:54,405.405 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 07:34:54,564.564 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 07:34:54,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:34:54,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:34:54,627.627 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 07:34:54,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:34:56,709.709 INFO    ] ================================================
[2026-10-25 07:34:56,724.724 INFO    ] Launching Daemon at Sun Oct 25 07:34:56 IST 2026
[2026-10-25 07:34:56,734.734 INFO    ] ================================================
[2026-10-25 07:34:57,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:34:57
[2026-10-25 07:34:57,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:34:58,169.169 INFO    ] Initializing speech engine...
[2026-10-25 07:34:58,175.175 INFO    ] 2026-10-25 07:34:58
[2026-10-25 07:34:58,487.487 INFO    ] 2026-10-25 07:34:58
[2026-10-25 07:34:58,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:03,608.608 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 07:35:03,636.636 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 07:35:03,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:35:03,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:35:03,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:35:05,688.688 INFO    ] ================================================
[2026-10-25 07:35:05,704.704 INFO    ] Launching Daemon at Sun Oct 25 07:35:05 IST 2026
[2026-10-25 07:35:05,716.716 INFO    ] ================================================
[2026-10-25 07:35:06,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:35:06
[2026-10-25 07:35:07,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:35:07,373.373 INFO    ] Initializing speech engine...
[2026-10-25 07:35:07,384.384 INFO    ] 2026-10-25 07:35:07
[2026-10-25 07:35:07,679.679 INFO    ] 2026-10-25 07:35:07
[2026-10-25 07:35:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:07,839.839 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 07:35:08,002.002 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 07:35:08,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:35:08,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:35:08,073.073 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 07:35:08,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:35:10,197.197 INFO    ] ================================================
[2026-10-25 07:35:10,212.212 INFO    ] Launching Daemon at Sun Oct 25 07:35:10 IST 2026
[2026-10-25 07:35:10,223.223 INFO    ] ================================================
[2026-10-25 07:35:10,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:35:10
[2026-10-25 07:35:11,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:35:11,642.642 INFO    ] Initializing speech engine...
[2026-10-25 07:35:11,661.661 INFO    ] 2026-10-25 07:35:11
[2026-10-25 07:35:11,913.913 INFO    ] 2026-10-25 07:35:11
[2026-10-25 07:35:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:12,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:35:12,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:35:12,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:35:12,398.398 INFO    ] time= 25/10/2026 07:35:12
[2026-10-25 07:35:12,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:35:12,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:35:12,546.546 INFO    ] No existing commands found in stream
[2026-10-25 07:35:17,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:35:17,560.560 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 07:35:20,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:35:20,133.133 INFO    ] Checking for system updates...
[2026-10-25 07:35:20,169.169 INFO    ] 200
[2026-10-25 07:35:20,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:20,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:20,230.230 INFO    ] No update needed
[2026-10-25 07:35:20,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 07:35:20,270.270 INFO    ] 200
[2026-10-25 07:35:20,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:20,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:35:20,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:20,385.385 INFO    ] No camera update needed
[2026-10-25 07:35:20,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:35:20,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:35:20,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:35:20,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:35:22,442.442 INFO    ] ================================================
[2026-10-25 07:35:22,457.457 INFO    ] Launching Daemon at Sun Oct 25 07:35:22 IST 2026
[2026-10-25 07:35:22,468.468 INFO    ] ================================================
[2026-10-25 07:35:23,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:35:23
[2026-10-25 07:35:23,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:35:23,889.889 INFO    ] Initializing speech engine...
[2026-10-25 07:35:23,897.897 INFO    ] 2026-10-25 07:35:23
[2026-10-25 07:35:24,149.149 INFO    ] 2026-10-25 07:35:24
[2026-10-25 07:35:24,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:24,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:35:24,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:35:24,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:35:24,655.655 INFO    ] time= 25/10/2026 07:35:24
[2026-10-25 07:35:24,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:35:24,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:35:24,799.799 INFO    ] No existing commands found in stream
[2026-10-25 07:35:29,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:35:29,839.839 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 07:35:34,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:35:34,286.286 INFO    ] Checking for system updates...
[2026-10-25 07:35:34,325.325 INFO    ] 200
[2026-10-25 07:35:34,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:34,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:34,391.391 INFO    ] No update needed
[2026-10-25 07:35:34,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 07:35:34,430.430 INFO    ] 200
[2026-10-25 07:35:34,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:34,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:35:34,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:34,522.522 INFO    ] No camera update needed
[2026-10-25 07:35:34,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:35:34,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:35:34,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:35:34,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:35:36,579.579 INFO    ] ================================================
[2026-10-25 07:35:36,594.594 INFO    ] Launching Daemon at Sun Oct 25 07:35:36 IST 2026
[2026-10-25 07:35:36,605.605 INFO    ] ================================================
[2026-10-25 07:35:37,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:35:37
[2026-10-25 07:35:37,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:35:38,035.035 INFO    ] Initializing speech engine...
[2026-10-25 07:35:38,044.044 INFO    ] 2026-10-25 07:35:38
[2026-10-25 07:35:38,290.290 INFO    ] 2026-10-25 07:35:38
[2026-10-25 07:35:38,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:38,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:35:38,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:35:38,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:35:38,738.738 INFO    ] time= 25/10/2026 07:35:38
[2026-10-25 07:35:38,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:35:38,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:35:38,922.922 INFO    ] No existing commands found in stream
[2026-10-25 07:35:43,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:35:43,936.936 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 07:35:46,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:35:46,909.909 INFO    ] Checking for system updates...
[2026-10-25 07:35:46,945.945 INFO    ] 200
[2026-10-25 07:35:46,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:47,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:47,004.004 INFO    ] No update needed
[2026-10-25 07:35:47,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 07:35:47,040.040 INFO    ] 200
[2026-10-25 07:35:47,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:35:47,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:35:47,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:35:47,136.136 INFO    ] No camera update needed
[2026-10-25 07:35:47,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:35:47,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:35:47,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:35:47,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:35:49,193.193 INFO    ] ================================================
[2026-10-25 07:35:49,208.208 INFO    ] Launching Daemon at Sun Oct 25 07:35:49 IST 2026
[2026-10-25 07:35:49,219.219 INFO    ] ================================================
[2026-10-25 07:35:49,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:35:49
[2026-10-25 07:35:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:35:50,666.666 INFO    ] Initializing speech engine...
[2026-10-25 07:35:50,675.675 INFO    ] 2026-10-25 07:35:50
[2026-10-25 07:35:50,940.940 INFO    ] 2026-10-25 07:35:50
[2026-10-25 07:35:50,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:35:51,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:35:51,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:35:51,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:35:51,314.314 INFO    ] time= 25/10/2026 07:35:51
[2026-10-25 07:35:51,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:35:51,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:35:51,494.494 INFO    ] No existing commands found in stream
[2026-10-25 07:35:56,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:35:56,522.522 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 07:35:59,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:35:59,937.937 INFO    ] Checking for system updates...
[2026-10-25 07:35:59,973.973 INFO    ] 200
[2026-10-25 07:35:59,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:00,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:36:00,033.033 INFO    ] No update needed
[2026-10-25 07:36:00,036.036 INFO    ] Checking for camera pi updates...
[2026-10-25 07:36:00,073.073 INFO    ] 200
[2026-10-25 07:36:00,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:00,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:36:00,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:36:00,174.174 INFO    ] No camera update needed
[2026-10-25 07:36:00,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:36:00,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:36:00,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:36:00,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:36:02,241.241 INFO    ] ================================================
[2026-10-25 07:36:02,264.264 INFO    ] Launching Daemon at Sun Oct 25 07:36:02 IST 2026
[2026-10-25 07:36:02,284.284 INFO    ] ================================================
[2026-10-25 07:36:02,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:36:02
[2026-10-25 07:36:03,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:36:03,803.803 INFO    ] Initializing speech engine...
[2026-10-25 07:36:03,815.815 INFO    ] 2026-10-25 07:36:03
[2026-10-25 07:36:04,090.090 INFO    ] 2026-10-25 07:36:04
[2026-10-25 07:36:04,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:36:04,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:36:04,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:36:04,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:36:04,506.506 INFO    ] time= 25/10/2026 07:36:04
[2026-10-25 07:36:04,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:36:04,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:36:04,606.606 INFO    ] No existing commands found in stream
[2026-10-25 07:36:09,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:36:09,645.645 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 07:36:11,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:36:11,673.673 INFO    ] Checking for system updates...
[2026-10-25 07:36:11,709.709 INFO    ] 200
[2026-10-25 07:36:11,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:11,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:11,767.767 INFO    ] No update needed
[2026-10-25 07:36:11,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 07:36:11,803.803 INFO    ] 200
[2026-10-25 07:36:11,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:11,846.846 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:36:11,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:11,897.897 INFO    ] No camera update needed
[2026-10-25 07:36:11,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:36:11,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:36:11,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:36:11,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:36:13,954.954 INFO    ] ================================================
[2026-10-25 07:36:13,968.968 INFO    ] Launching Daemon at Sun Oct 25 07:36:13 IST 2026
[2026-10-25 07:36:13,979.979 INFO    ] ================================================
[2026-10-25 07:36:14,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:36:14
[2026-10-25 07:36:15,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:36:15,390.390 INFO    ] Initializing speech engine...
[2026-10-25 07:36:15,396.396 INFO    ] 2026-10-25 07:36:15
[2026-10-25 07:36:15,707.707 INFO    ] 2026-10-25 07:36:15
[2026-10-25 07:36:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:36:15,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:36:15,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:36:16,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:36:16,137.137 INFO    ] time= 25/10/2026 07:36:16
[2026-10-25 07:36:16,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:36:16,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:36:16,263.263 INFO    ] No existing commands found in stream
[2026-10-25 07:36:21,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:36:21,279.279 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 07:36:24,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:36:24,375.375 INFO    ] Checking for system updates...
[2026-10-25 07:36:24,415.415 INFO    ] 200
[2026-10-25 07:36:24,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:24,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:24,473.473 INFO    ] No update needed
[2026-10-25 07:36:24,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 07:36:24,509.509 INFO    ] 200
[2026-10-25 07:36:24,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:24,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:36:24,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:24,606.606 INFO    ] No camera update needed
[2026-10-25 07:36:24,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:36:24,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:36:24,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:36:24,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:36:26,663.663 INFO    ] ================================================
[2026-10-25 07:36:26,678.678 INFO    ] Launching Daemon at Sun Oct 25 07:36:26 IST 2026
[2026-10-25 07:36:26,689.689 INFO    ] ================================================
[2026-10-25 07:36:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:36:27
[2026-10-25 07:36:27,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:36:28,162.162 INFO    ] Initializing speech engine...
[2026-10-25 07:36:28,168.168 INFO    ] 2026-10-25 07:36:28
[2026-10-25 07:36:28,474.474 INFO    ] 2026-10-25 07:36:28
[2026-10-25 07:36:28,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:36:28,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:36:28,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:36:28,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:36:28,866.866 INFO    ] time= 25/10/2026 07:36:28
[2026-10-25 07:36:28,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:36:28,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:36:28,996.996 INFO    ] No existing commands found in stream
[2026-10-25 07:36:34,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:36:34,011.011 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 07:36:36,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:36:36,269.269 INFO    ] Checking for system updates...
[2026-10-25 07:36:36,306.306 INFO    ] 200
[2026-10-25 07:36:36,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:36,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:36,372.372 INFO    ] No update needed
[2026-10-25 07:36:36,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 07:36:36,413.413 INFO    ] 200
[2026-10-25 07:36:36,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:36,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:36:36,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:36:36,522.522 INFO    ] No camera update needed
[2026-10-25 07:36:36,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:36:36,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:36:36,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:36:36,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:36:38,578.578 INFO    ] ================================================
[2026-10-25 07:36:38,594.594 INFO    ] Launching Daemon at Sun Oct 25 07:36:38 IST 2026
[2026-10-25 07:36:38,604.604 INFO    ] ================================================
[2026-10-25 07:36:39,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:36:39
[2026-10-25 07:36:39,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:36:40,086.086 INFO    ] Initializing speech engine...
[2026-10-25 07:36:40,095.095 INFO    ] 2026-10-25 07:36:40
[2026-10-25 07:36:40,400.400 INFO    ] 2026-10-25 07:36:40
[2026-10-25 07:36:40,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:36:40,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:36:40,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:36:40,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:36:40,791.791 INFO    ] time= 25/10/2026 07:36:40
[2026-10-25 07:36:40,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:36:40,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:36:40,919.919 INFO    ] No existing commands found in stream
[2026-10-25 07:36:45,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:36:45,934.934 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 07:36:49,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:36:49,245.245 INFO    ] Checking for system updates...
[2026-10-25 07:36:49,283.283 INFO    ] 200
[2026-10-25 07:36:49,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:49,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:36:49,347.347 INFO    ] No update needed
[2026-10-25 07:36:49,349.349 INFO    ] Checking for camera pi updates...
[2026-10-25 07:36:49,383.383 INFO    ] 200
[2026-10-25 07:36:49,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:36:49,427.427 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:36:49,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:36:49,492.492 INFO    ] No camera update needed
[2026-10-25 07:36:49,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:36:49,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:36:49,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:36:49,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:36:51,549.549 INFO    ] ================================================
[2026-10-25 07:36:51,566.566 INFO    ] Launching Daemon at Sun Oct 25 07:36:51 IST 2026
[2026-10-25 07:36:51,577.577 INFO    ] ================================================
[2026-10-25 07:36:52,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:36:52
[2026-10-25 07:36:52,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:36:53,037.037 INFO    ] Initializing speech engine...
[2026-10-25 07:36:53,045.045 INFO    ] 2026-10-25 07:36:53
[2026-10-25 07:36:53,323.323 INFO    ] 2026-10-25 07:36:53
[2026-10-25 07:36:53,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:36:53,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:36:53,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:36:53,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:36:53,847.847 INFO    ] time= 25/10/2026 07:36:53
[2026-10-25 07:36:53,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:36:53,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:36:53,987.987 INFO    ] No existing commands found in stream
[2026-10-25 07:36:59,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:36:59,012.012 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 07:37:00,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:37:00,255.255 INFO    ] Checking for system updates...
[2026-10-25 07:37:00,292.292 INFO    ] 200
[2026-10-25 07:37:00,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:00,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:00,352.352 INFO    ] No update needed
[2026-10-25 07:37:00,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:00,388.388 INFO    ] 200
[2026-10-25 07:37:00,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:00,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:00,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:00,498.498 INFO    ] No camera update needed
[2026-10-25 07:37:00,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:00,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:00,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:00,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:02,564.564 INFO    ] ================================================
[2026-10-25 07:37:02,584.584 INFO    ] Launching Daemon at Sun Oct 25 07:37:02 IST 2026
[2026-10-25 07:37:02,599.599 INFO    ] ================================================
[2026-10-25 07:37:03,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:03
[2026-10-25 07:37:03,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:04,108.108 INFO    ] Initializing speech engine...
[2026-10-25 07:37:04,117.117 INFO    ] 2026-10-25 07:37:04
[2026-10-25 07:37:04,430.430 INFO    ] 2026-10-25 07:37:04
[2026-10-25 07:37:04,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:04,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:04,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:04,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:04,830.830 INFO    ] time= 25/10/2026 07:37:04
[2026-10-25 07:37:04,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:04,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:04,912.912 INFO    ] No existing commands found in stream
[2026-10-25 07:37:09,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:37:09,926.926 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 07:37:10,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:37:10,479.479 INFO    ] Checking for system updates...
[2026-10-25 07:37:10,516.516 INFO    ] 200
[2026-10-25 07:37:10,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:10,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:10,583.583 INFO    ] No update needed
[2026-10-25 07:37:10,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:10,654.654 INFO    ] 200
[2026-10-25 07:37:10,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:10,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:10,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:10,744.744 INFO    ] No camera update needed
[2026-10-25 07:37:10,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:10,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:10,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:10,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:12,801.801 INFO    ] ================================================
[2026-10-25 07:37:12,817.817 INFO    ] Launching Daemon at Sun Oct 25 07:37:12 IST 2026
[2026-10-25 07:37:12,828.828 INFO    ] ================================================
[2026-10-25 07:37:13,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:13
[2026-10-25 07:37:13,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:14,258.258 INFO    ] Initializing speech engine...
[2026-10-25 07:37:14,268.268 INFO    ] 2026-10-25 07:37:14
[2026-10-25 07:37:14,518.518 INFO    ] 2026-10-25 07:37:14
[2026-10-25 07:37:14,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:14,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:14,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:14,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:14,964.964 INFO    ] time= 25/10/2026 07:37:14
[2026-10-25 07:37:15,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:15,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:15,165.165 INFO    ] No existing commands found in stream
[2026-10-25 07:37:20,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:37:20,205.205 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 07:37:20,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:37:20,754.754 INFO    ] Checking for system updates...
[2026-10-25 07:37:20,790.790 INFO    ] 200
[2026-10-25 07:37:20,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:20,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:20,847.847 INFO    ] No update needed
[2026-10-25 07:37:20,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:20,884.884 INFO    ] 200
[2026-10-25 07:37:20,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:20,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:21,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:21,093.093 INFO    ] No camera update needed
[2026-10-25 07:37:21,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:21,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:21,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:21,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:23,152.152 INFO    ] ================================================
[2026-10-25 07:37:23,168.168 INFO    ] Launching Daemon at Sun Oct 25 07:37:23 IST 2026
[2026-10-25 07:37:23,180.180 INFO    ] ================================================
[2026-10-25 07:37:23,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:23
[2026-10-25 07:37:24,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:24,634.634 INFO    ] Initializing speech engine...
[2026-10-25 07:37:24,647.647 INFO    ] 2026-10-25 07:37:24
[2026-10-25 07:37:24,902.902 INFO    ] 2026-10-25 07:37:24
[2026-10-25 07:37:24,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:25,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:25,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:25,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:25,404.404 INFO    ] time= 25/10/2026 07:37:25
[2026-10-25 07:37:25,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:25,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:25,578.578 INFO    ] No existing commands found in stream
[2026-10-25 07:37:30,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:37:30,611.611 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 07:37:31,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:37:31,137.137 INFO    ] Checking for system updates...
[2026-10-25 07:37:31,177.177 INFO    ] 200
[2026-10-25 07:37:31,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:31,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:31,236.236 INFO    ] No update needed
[2026-10-25 07:37:31,238.238 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:31,272.272 INFO    ] 200
[2026-10-25 07:37:31,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:31,320.320 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:31,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:37:31,363.363 INFO    ] No camera update needed
[2026-10-25 07:37:31,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:31,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:31,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:31,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:33,422.422 INFO    ] ================================================
[2026-10-25 07:37:33,438.438 INFO    ] Launching Daemon at Sun Oct 25 07:37:33 IST 2026
[2026-10-25 07:37:33,449.449 INFO    ] ================================================
[2026-10-25 07:37:34,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:34
[2026-10-25 07:37:34,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:34,904.904 INFO    ] Initializing speech engine...
[2026-10-25 07:37:34,913.913 INFO    ] 2026-10-25 07:37:34
[2026-10-25 07:37:35,173.173 INFO    ] 2026-10-25 07:37:35
[2026-10-25 07:37:35,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:35,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:35,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:35,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:35,625.625 INFO    ] time= 25/10/2026 07:37:35
[2026-10-25 07:37:35,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:35,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:35,838.838 INFO    ] No existing commands found in stream
[2026-10-25 07:37:40,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:37:40,866.866 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 07:37:42,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:37:42,176.176 INFO    ] Checking for system updates...
[2026-10-25 07:37:42,218.218 INFO    ] 200
[2026-10-25 07:37:42,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:42,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:42,280.280 INFO    ] No update needed
[2026-10-25 07:37:42,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:42,317.317 INFO    ] 200
[2026-10-25 07:37:42,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:42,362.362 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:42,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:42,415.415 INFO    ] No camera update needed
[2026-10-25 07:37:42,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:42,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:42,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:42,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:44,475.475 INFO    ] ================================================
[2026-10-25 07:37:44,491.491 INFO    ] Launching Daemon at Sun Oct 25 07:37:44 IST 2026
[2026-10-25 07:37:44,502.502 INFO    ] ================================================
[2026-10-25 07:37:45,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:45
[2026-10-25 07:37:45,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:46,162.162 INFO    ] Initializing speech engine...
[2026-10-25 07:37:46,174.174 INFO    ] 2026-10-25 07:37:46
[2026-10-25 07:37:46,456.456 INFO    ] 2026-10-25 07:37:46
[2026-10-25 07:37:46,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:46,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:46,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:46,914.914 INFO    ] time= 25/10/2026 07:37:46
[2026-10-25 07:37:46,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:47,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:47,117.117 INFO    ] No existing commands found in stream
[2026-10-25 07:37:52,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:37:52,142.142 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 07:37:54,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:37:54,635.635 INFO    ] Checking for system updates...
[2026-10-25 07:37:54,675.675 INFO    ] 200
[2026-10-25 07:37:54,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:54,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:54,740.740 INFO    ] No update needed
[2026-10-25 07:37:54,742.742 INFO    ] Checking for camera pi updates...
[2026-10-25 07:37:54,781.781 INFO    ] 200
[2026-10-25 07:37:54,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:37:54,829.829 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:37:54,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:37:54,886.886 INFO    ] No camera update needed
[2026-10-25 07:37:54,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:37:54,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:37:54,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:37:54,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:37:56,941.941 INFO    ] ================================================
[2026-10-25 07:37:56,957.957 INFO    ] Launching Daemon at Sun Oct 25 07:37:56 IST 2026
[2026-10-25 07:37:56,968.968 INFO    ] ================================================
[2026-10-25 07:37:57,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:37:57
[2026-10-25 07:37:58,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:37:58,502.502 INFO    ] Initializing speech engine...
[2026-10-25 07:37:58,510.510 INFO    ] 2026-10-25 07:37:58
[2026-10-25 07:37:58,801.801 INFO    ] 2026-10-25 07:37:58
[2026-10-25 07:37:58,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:37:59,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:37:59,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:37:59,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:37:59,358.358 INFO    ] time= 25/10/2026 07:37:59
[2026-10-25 07:37:59,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:37:59,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:37:59,515.515 INFO    ] No existing commands found in stream
[2026-10-25 07:38:04,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:38:04,541.541 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 07:38:08,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:38:08,836.836 INFO    ] Checking for system updates...
[2026-10-25 07:38:08,877.877 INFO    ] 200
[2026-10-25 07:38:08,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:08,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:08,944.944 INFO    ] No update needed
[2026-10-25 07:38:08,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 07:38:08,982.982 INFO    ] 200
[2026-10-25 07:38:08,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:09,026.026 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:38:09,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:09,086.086 INFO    ] No camera update needed
[2026-10-25 07:38:09,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:38:09,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:38:09,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:38:09,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:38:11,152.152 INFO    ] ================================================
[2026-10-25 07:38:11,167.167 INFO    ] Launching Daemon at Sun Oct 25 07:38:11 IST 2026
[2026-10-25 07:38:11,179.179 INFO    ] ================================================
[2026-10-25 07:38:11,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:38:11
[2026-10-25 07:38:12,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:38:12,611.611 INFO    ] Initializing speech engine...
[2026-10-25 07:38:12,619.619 INFO    ] 2026-10-25 07:38:12
[2026-10-25 07:38:12,870.870 INFO    ] 2026-10-25 07:38:12
[2026-10-25 07:38:12,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:38:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:38:13,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:38:13,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:38:13,361.361 INFO    ] time= 25/10/2026 07:38:13
[2026-10-25 07:38:13,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:38:13,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:38:13,532.532 INFO    ] No existing commands found in stream
[2026-10-25 07:38:18,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:38:18,572.572 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 07:38:19,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:38:19,540.540 INFO    ] Checking for system updates...
[2026-10-25 07:38:19,576.576 INFO    ] 200
[2026-10-25 07:38:19,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:19,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:38:19,635.635 INFO    ] No update needed
[2026-10-25 07:38:19,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 07:38:19,675.675 INFO    ] 200
[2026-10-25 07:38:19,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:19,724.724 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:38:19,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:38:19,783.783 INFO    ] No camera update needed
[2026-10-25 07:38:19,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:38:19,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:38:19,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:38:19,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:38:21,837.837 INFO    ] ================================================
[2026-10-25 07:38:21,854.854 INFO    ] Launching Daemon at Sun Oct 25 07:38:21 IST 2026
[2026-10-25 07:38:21,865.865 INFO    ] ================================================
[2026-10-25 07:38:22,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:38:22
[2026-10-25 07:38:23,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:38:23,293.293 INFO    ] Initializing speech engine...
[2026-10-25 07:38:23,301.301 INFO    ] 2026-10-25 07:38:23
[2026-10-25 07:38:23,548.548 INFO    ] 2026-10-25 07:38:23
[2026-10-25 07:38:23,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:38:23,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:38:23,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:38:23,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:38:24,002.002 INFO    ] time= 25/10/2026 07:38:23
[2026-10-25 07:38:24,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:38:24,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:38:24,195.195 INFO    ] No existing commands found in stream
[2026-10-25 07:38:29,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:38:29,209.209 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 07:38:34,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:38:34,731.731 INFO    ] Checking for system updates...
[2026-10-25 07:38:34,773.773 INFO    ] 200
[2026-10-25 07:38:34,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:34,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:34,838.838 INFO    ] No update needed
[2026-10-25 07:38:34,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 07:38:34,874.874 INFO    ] 200
[2026-10-25 07:38:34,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:34,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:38:34,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:34,966.966 INFO    ] No camera update needed
[2026-10-25 07:38:34,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:38:34,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:38:34,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:38:34,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:38:37,023.023 INFO    ] ================================================
[2026-10-25 07:38:37,039.039 INFO    ] Launching Daemon at Sun Oct 25 07:38:37 IST 2026
[2026-10-25 07:38:37,051.051 INFO    ] ================================================
[2026-10-25 07:38:37,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:38:37
[2026-10-25 07:38:38,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:38:38,707.707 INFO    ] Initializing speech engine...
[2026-10-25 07:38:38,721.721 INFO    ] 2026-10-25 07:38:38
[2026-10-25 07:38:39,033.033 INFO    ] 2026-10-25 07:38:38
[2026-10-25 07:38:39,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:38:39,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:38:39,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:38:39,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:38:39,456.456 INFO    ] time= 25/10/2026 07:38:39
[2026-10-25 07:38:39,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:38:39,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:38:39,627.627 INFO    ] No existing commands found in stream
[2026-10-25 07:38:44,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:38:44,656.656 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 07:38:47,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:38:47,016.016 INFO    ] Checking for system updates...
[2026-10-25 07:38:47,054.054 INFO    ] 200
[2026-10-25 07:38:47,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:47,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:47,117.117 INFO    ] No update needed
[2026-10-25 07:38:47,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 07:38:47,154.154 INFO    ] 200
[2026-10-25 07:38:47,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:47,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:38:47,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:38:47,252.252 INFO    ] No camera update needed
[2026-10-25 07:38:47,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:38:47,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:38:47,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:38:47,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:38:49,307.307 INFO    ] ================================================
[2026-10-25 07:38:49,322.322 INFO    ] Launching Daemon at Sun Oct 25 07:38:49 IST 2026
[2026-10-25 07:38:49,333.333 INFO    ] ================================================
[2026-10-25 07:38:49,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:38:49
[2026-10-25 07:38:50,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:38:50,754.754 INFO    ] Initializing speech engine...
[2026-10-25 07:38:50,763.763 INFO    ] 2026-10-25 07:38:50
[2026-10-25 07:38:51,026.026 INFO    ] 2026-10-25 07:38:51
[2026-10-25 07:38:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:38:51,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:38:51,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:38:51,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:38:51,528.528 INFO    ] time= 25/10/2026 07:38:51
[2026-10-25 07:38:51,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:38:51,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:38:51,718.718 INFO    ] No existing commands found in stream
[2026-10-25 07:38:56,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:38:56,746.746 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 07:38:57,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:38:57,611.611 INFO    ] Checking for system updates...
[2026-10-25 07:38:57,648.648 INFO    ] 200
[2026-10-25 07:38:57,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:57,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:38:57,707.707 INFO    ] No update needed
[2026-10-25 07:38:57,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 07:38:57,744.744 INFO    ] 200
[2026-10-25 07:38:57,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:38:57,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:38:57,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:38:57,847.847 INFO    ] No camera update needed
[2026-10-25 07:38:57,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:38:57,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:38:57,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:38:57,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:38:59,902.902 INFO    ] ================================================
[2026-10-25 07:38:59,919.919 INFO    ] Launching Daemon at Sun Oct 25 07:38:59 IST 2026
[2026-10-25 07:38:59,930.930 INFO    ] ================================================
[2026-10-25 07:39:00,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:39:00
[2026-10-25 07:39:01,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:39:01,567.567 INFO    ] Initializing speech engine...
[2026-10-25 07:39:01,578.578 INFO    ] 2026-10-25 07:39:01
[2026-10-25 07:39:01,867.867 INFO    ] 2026-10-25 07:39:01
[2026-10-25 07:39:01,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:39:04,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:39:04,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:39:04,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:39:04,739.739 INFO    ] time= 25/10/2026 07:39:04
[2026-10-25 07:39:04,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:39:04,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:39:04,841.841 INFO    ] No existing commands found in stream
[2026-10-25 07:39:09,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:39:09,856.856 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 07:39:14,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:39:14,053.053 INFO    ] Checking for system updates...
[2026-10-25 07:39:14,095.095 INFO    ] 200
[2026-10-25 07:39:14,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:14,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:14,159.159 INFO    ] No update needed
[2026-10-25 07:39:14,162.162 INFO    ] Checking for camera pi updates...
[2026-10-25 07:39:14,197.197 INFO    ] 200
[2026-10-25 07:39:14,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:14,242.242 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:39:14,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:14,301.301 INFO    ] No camera update needed
[2026-10-25 07:39:14,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:39:14,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:39:14,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:39:14,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:39:16,357.357 INFO    ] ================================================
[2026-10-25 07:39:16,375.375 INFO    ] Launching Daemon at Sun Oct 25 07:39:16 IST 2026
[2026-10-25 07:39:16,387.387 INFO    ] ================================================
[2026-10-25 07:39:17,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:39:17
[2026-10-25 07:39:17,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:39:17,872.872 INFO    ] Initializing speech engine...
[2026-10-25 07:39:17,884.884 INFO    ] 2026-10-25 07:39:17
[2026-10-25 07:39:18,149.149 INFO    ] 2026-10-25 07:39:18
[2026-10-25 07:39:18,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:39:18,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:39:18,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:39:18,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:39:18,619.619 INFO    ] time= 25/10/2026 07:39:18
[2026-10-25 07:39:18,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:39:18,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:39:18,782.782 INFO    ] No existing commands found in stream
[2026-10-25 07:39:23,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:39:23,796.796 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 07:39:26,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:39:26,877.877 INFO    ] Checking for system updates...
[2026-10-25 07:39:26,915.915 INFO    ] 200
[2026-10-25 07:39:26,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:26,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:26,978.978 INFO    ] No update needed
[2026-10-25 07:39:26,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 07:39:27,027.027 INFO    ] 200
[2026-10-25 07:39:27,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:27,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:39:27,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:27,242.242 INFO    ] No camera update needed
[2026-10-25 07:39:27,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:39:27,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:39:27,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:39:27,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:39:29,301.301 INFO    ] ================================================
[2026-10-25 07:39:29,317.317 INFO    ] Launching Daemon at Sun Oct 25 07:39:29 IST 2026
[2026-10-25 07:39:29,329.329 INFO    ] ================================================
[2026-10-25 07:39:29,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:39:29
[2026-10-25 07:39:30,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:39:30,776.776 INFO    ] Initializing speech engine...
[2026-10-25 07:39:30,785.785 INFO    ] 2026-10-25 07:39:30
[2026-10-25 07:39:31,029.029 INFO    ] 2026-10-25 07:39:31
[2026-10-25 07:39:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:39:31,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:39:31,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:39:31,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:39:31,569.569 INFO    ] time= 25/10/2026 07:39:31
[2026-10-25 07:39:31,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:39:31,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:39:31,716.716 INFO    ] No existing commands found in stream
[2026-10-25 07:39:36,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:39:36,747.747 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 07:39:38,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:39:38,708.708 INFO    ] Checking for system updates...
[2026-10-25 07:39:38,757.757 INFO    ] 200
[2026-10-25 07:39:38,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:38,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:39:38,826.826 INFO    ] No update needed
[2026-10-25 07:39:38,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 07:39:38,868.868 INFO    ] 200
[2026-10-25 07:39:38,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:38,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:39:38,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:39:38,972.972 INFO    ] No camera update needed
[2026-10-25 07:39:38,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:39:38,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:39:38,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:39:38,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:39:41,026.026 INFO    ] ================================================
[2026-10-25 07:39:41,042.042 INFO    ] Launching Daemon at Sun Oct 25 07:39:41 IST 2026
[2026-10-25 07:39:41,054.054 INFO    ] ================================================
[2026-10-25 07:39:41,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:39:41
[2026-10-25 07:39:42,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:39:42,467.467 INFO    ] Initializing speech engine...
[2026-10-25 07:39:42,482.482 INFO    ] 2026-10-25 07:39:42
[2026-10-25 07:39:42,737.737 INFO    ] 2026-10-25 07:39:42
[2026-10-25 07:39:42,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:39:43,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:39:43,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:39:43,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:39:43,229.229 INFO    ] time= 25/10/2026 07:39:43
[2026-10-25 07:39:43,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:39:43,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:39:43,412.412 INFO    ] No existing commands found in stream
[2026-10-25 07:39:48,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:39:48,441.441 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 07:39:50,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:39:50,651.651 INFO    ] Checking for system updates...
[2026-10-25 07:39:50,688.688 INFO    ] 200
[2026-10-25 07:39:50,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:50,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:50,758.758 INFO    ] No update needed
[2026-10-25 07:39:50,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 07:39:50,795.795 INFO    ] 200
[2026-10-25 07:39:50,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:39:50,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:39:50,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:39:50,906.906 INFO    ] No camera update needed
[2026-10-25 07:39:50,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:39:50,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:39:50,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:39:50,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:39:52,969.969 INFO    ] ================================================
[2026-10-25 07:39:52,984.984 INFO    ] Launching Daemon at Sun Oct 25 07:39:52 IST 2026
[2026-10-25 07:39:52,995.995 INFO    ] ================================================
[2026-10-25 07:39:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:39:53
[2026-10-25 07:39:54,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:39:54,455.455 INFO    ] Initializing speech engine...
[2026-10-25 07:39:54,466.466 INFO    ] 2026-10-25 07:39:54
[2026-10-25 07:39:54,727.727 INFO    ] 2026-10-25 07:39:54
[2026-10-25 07:39:54,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:39:55,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:39:55,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:39:55,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:39:55,181.181 INFO    ] time= 25/10/2026 07:39:55
[2026-10-25 07:39:55,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:39:55,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:39:55,348.348 INFO    ] No existing commands found in stream
[2026-10-25 07:40:00,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:40:00,387.387 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 07:40:08,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:40:08,330.330 INFO    ] Checking for system updates...
[2026-10-25 07:40:08,369.369 INFO    ] 200
[2026-10-25 07:40:08,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:08,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:08,433.433 INFO    ] No update needed
[2026-10-25 07:40:08,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 07:40:08,473.473 INFO    ] 200
[2026-10-25 07:40:08,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:08,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:40:08,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:08,553.553 INFO    ] No camera update needed
[2026-10-25 07:40:08,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:40:08,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:40:08,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:40:08,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:40:10,609.609 INFO    ] ================================================
[2026-10-25 07:40:10,624.624 INFO    ] Launching Daemon at Sun Oct 25 07:40:10 IST 2026
[2026-10-25 07:40:10,635.635 INFO    ] ================================================
[2026-10-25 07:40:11,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:40:11
[2026-10-25 07:40:11,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:40:12,260.260 INFO    ] Initializing speech engine...
[2026-10-25 07:40:12,265.265 INFO    ] 2026-10-25 07:40:12
[2026-10-25 07:40:12,553.553 INFO    ] 2026-10-25 07:40:12
[2026-10-25 07:40:12,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:40:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:40:12,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:40:13,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:40:13,098.098 INFO    ] time= 25/10/2026 07:40:13
[2026-10-25 07:40:13,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:40:13,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:40:13,239.239 INFO    ] No existing commands found in stream
[2026-10-25 07:40:18,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:40:18,270.270 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 07:40:21,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:40:21,553.553 INFO    ] Checking for system updates...
[2026-10-25 07:40:21,590.590 INFO    ] 200
[2026-10-25 07:40:21,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:21,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:21,655.655 INFO    ] No update needed
[2026-10-25 07:40:21,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 07:40:21,691.691 INFO    ] 200
[2026-10-25 07:40:21,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:21,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:40:21,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:21,807.807 INFO    ] No camera update needed
[2026-10-25 07:40:21,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:40:21,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:40:21,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:40:21,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:40:23,863.863 INFO    ] ================================================
[2026-10-25 07:40:23,879.879 INFO    ] Launching Daemon at Sun Oct 25 07:40:23 IST 2026
[2026-10-25 07:40:23,889.889 INFO    ] ================================================
[2026-10-25 07:40:24,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:40:24
[2026-10-25 07:40:25,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:40:25,298.298 INFO    ] Initializing speech engine...
[2026-10-25 07:40:25,307.307 INFO    ] 2026-10-25 07:40:25
[2026-10-25 07:40:25,597.597 INFO    ] 2026-10-25 07:40:25
[2026-10-25 07:40:25,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:40:25,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:40:25,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:40:25,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:40:25,989.989 INFO    ] time= 25/10/2026 07:40:25
[2026-10-25 07:40:26,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:40:26,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:40:26,096.096 INFO    ] No existing commands found in stream
[2026-10-25 07:40:31,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:40:31,112.112 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 07:40:32,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:40:32,512.512 INFO    ] Checking for system updates...
[2026-10-25 07:40:32,551.551 INFO    ] 200
[2026-10-25 07:40:32,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:32,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:32,610.610 INFO    ] No update needed
[2026-10-25 07:40:32,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 07:40:32,649.649 INFO    ] 200
[2026-10-25 07:40:32,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:32,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:40:32,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:32,731.731 INFO    ] No camera update needed
[2026-10-25 07:40:32,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:40:32,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:40:32,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:40:32,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:40:34,786.786 INFO    ] ================================================
[2026-10-25 07:40:34,801.801 INFO    ] Launching Daemon at Sun Oct 25 07:40:34 IST 2026
[2026-10-25 07:40:34,812.812 INFO    ] ================================================
[2026-10-25 07:40:35,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:40:35
[2026-10-25 07:40:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:40:36,217.217 INFO    ] Initializing speech engine...
[2026-10-25 07:40:36,231.231 INFO    ] 2026-10-25 07:40:36
[2026-10-25 07:40:36,507.507 INFO    ] 2026-10-25 07:40:36
[2026-10-25 07:40:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:40:36,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:40:36,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:40:36,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:40:37,002.002 INFO    ] time= 25/10/2026 07:40:36
[2026-10-25 07:40:37,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:40:37,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:40:37,196.196 INFO    ] No existing commands found in stream
[2026-10-25 07:40:42,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:40:42,225.225 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 07:40:44,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:40:44,767.767 INFO    ] Checking for system updates...
[2026-10-25 07:40:44,805.805 INFO    ] 200
[2026-10-25 07:40:44,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:44,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:40:44,870.870 INFO    ] No update needed
[2026-10-25 07:40:44,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 07:40:44,912.912 INFO    ] 200
[2026-10-25 07:40:44,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:44,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:40:45,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:40:45,028.028 INFO    ] No camera update needed
[2026-10-25 07:40:45,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:40:45,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:40:45,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:40:45,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:40:47,089.089 INFO    ] ================================================
[2026-10-25 07:40:47,104.104 INFO    ] Launching Daemon at Sun Oct 25 07:40:47 IST 2026
[2026-10-25 07:40:47,114.114 INFO    ] ================================================
[2026-10-25 07:40:47,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:40:47
[2026-10-25 07:40:48,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:40:48,532.532 INFO    ] Initializing speech engine...
[2026-10-25 07:40:48,541.541 INFO    ] 2026-10-25 07:40:48
[2026-10-25 07:40:48,790.790 INFO    ] 2026-10-25 07:40:48
[2026-10-25 07:40:48,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:40:49,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:40:49,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:40:49,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:40:49,257.257 INFO    ] time= 25/10/2026 07:40:49
[2026-10-25 07:40:49,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:40:49,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:40:49,433.433 INFO    ] No existing commands found in stream
[2026-10-25 07:40:54,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:40:54,474.474 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 07:40:57,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:40:57,709.709 INFO    ] Checking for system updates...
[2026-10-25 07:40:57,749.749 INFO    ] 200
[2026-10-25 07:40:57,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:57,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:57,806.806 INFO    ] No update needed
[2026-10-25 07:40:57,809.809 INFO    ] Checking for camera pi updates...
[2026-10-25 07:40:57,845.845 INFO    ] 200
[2026-10-25 07:40:57,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:40:57,888.888 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:40:57,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:40:57,935.935 INFO    ] No camera update needed
[2026-10-25 07:40:57,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:40:57,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:40:57,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:40:57,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:40:59,990.990 INFO    ] ================================================
[2026-10-25 07:41:00,005.005 INFO    ] Launching Daemon at Sun Oct 25 07:40:59 IST 2026
[2026-10-25 07:41:00,016.016 INFO    ] ================================================
[2026-10-25 07:41:00,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:41:00
[2026-10-25 07:41:01,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:41:01,710.710 INFO    ] Initializing speech engine...
[2026-10-25 07:41:01,716.716 INFO    ] 2026-10-25 07:41:01
[2026-10-25 07:41:01,996.996 INFO    ] 2026-10-25 07:41:01
[2026-10-25 07:41:02,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:41:02,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:41:02,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:41:04,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:41:04,876.876 INFO    ] time= 25/10/2026 07:41:04
[2026-10-25 07:41:04,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:41:04,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:41:05,016.016 INFO    ] No existing commands found in stream
[2026-10-25 07:41:10,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:41:10,032.032 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 07:41:11,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:41:11,586.586 INFO    ] Checking for system updates...
[2026-10-25 07:41:11,625.625 INFO    ] 200
[2026-10-25 07:41:11,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:11,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:41:11,691.691 INFO    ] No update needed
[2026-10-25 07:41:11,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 07:41:11,729.729 INFO    ] 200
[2026-10-25 07:41:11,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:11,773.773 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:41:11,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:41:11,823.823 INFO    ] No camera update needed
[2026-10-25 07:41:11,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:41:11,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:41:11,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:41:11,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:41:13,879.879 INFO    ] ================================================
[2026-10-25 07:41:13,895.895 INFO    ] Launching Daemon at Sun Oct 25 07:41:13 IST 2026
[2026-10-25 07:41:13,906.906 INFO    ] ================================================
[2026-10-25 07:41:14,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:41:14
[2026-10-25 07:41:15,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:41:15,356.356 INFO    ] Initializing speech engine...
[2026-10-25 07:41:15,361.361 INFO    ] 2026-10-25 07:41:15
[2026-10-25 07:41:15,608.608 INFO    ] 2026-10-25 07:41:15
[2026-10-25 07:41:15,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:41:15,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:41:15,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:41:16,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:41:16,097.097 INFO    ] time= 25/10/2026 07:41:16
[2026-10-25 07:41:16,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:41:16,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:41:16,295.295 INFO    ] No existing commands found in stream
[2026-10-25 07:41:21,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:41:21,328.328 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 07:41:24,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:41:24,798.798 INFO    ] Checking for system updates...
[2026-10-25 07:41:24,835.835 INFO    ] 200
[2026-10-25 07:41:24,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:24,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:41:24,900.900 INFO    ] No update needed
[2026-10-25 07:41:24,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 07:41:24,936.936 INFO    ] 200
[2026-10-25 07:41:24,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:24,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:41:25,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:41:25,033.033 INFO    ] No camera update needed
[2026-10-25 07:41:25,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:41:25,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:41:25,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:41:25,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:41:27,090.090 INFO    ] ================================================
[2026-10-25 07:41:27,105.105 INFO    ] Launching Daemon at Sun Oct 25 07:41:27 IST 2026
[2026-10-25 07:41:27,117.117 INFO    ] ================================================
[2026-10-25 07:41:27,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:41:27
[2026-10-25 07:41:28,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:41:28,589.589 INFO    ] Initializing speech engine...
[2026-10-25 07:41:28,605.605 INFO    ] 2026-10-25 07:41:28
[2026-10-25 07:41:28,894.894 INFO    ] 2026-10-25 07:41:28
[2026-10-25 07:41:28,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:41:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:41:29,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:41:29,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:41:29,277.277 INFO    ] time= 25/10/2026 07:41:29
[2026-10-25 07:41:29,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:41:29,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:41:29,407.407 INFO    ] No existing commands found in stream
[2026-10-25 07:41:34,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:41:34,422.422 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 07:41:35,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:41:35,814.814 INFO    ] Checking for system updates...
[2026-10-25 07:41:35,850.850 INFO    ] 200
[2026-10-25 07:41:35,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:35,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:41:35,914.914 INFO    ] No update needed
[2026-10-25 07:41:35,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 07:41:35,950.950 INFO    ] 200
[2026-10-25 07:41:35,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:35,998.998 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:41:36,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:41:36,062.062 INFO    ] No camera update needed
[2026-10-25 07:41:36,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:41:36,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:41:36,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:41:36,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:41:38,118.118 INFO    ] ================================================
[2026-10-25 07:41:38,134.134 INFO    ] Launching Daemon at Sun Oct 25 07:41:38 IST 2026
[2026-10-25 07:41:38,145.145 INFO    ] ================================================
[2026-10-25 07:41:38,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:41:38
[2026-10-25 07:41:39,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:41:39,629.629 INFO    ] Initializing speech engine...
[2026-10-25 07:41:39,636.636 INFO    ] 2026-10-25 07:41:39
[2026-10-25 07:41:39,901.901 INFO    ] 2026-10-25 07:41:39
[2026-10-25 07:41:39,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:41:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:41:40,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:41:40,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:41:40,382.382 INFO    ] time= 25/10/2026 07:41:40
[2026-10-25 07:41:40,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:41:40,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:41:40,588.588 INFO    ] No existing commands found in stream
[2026-10-25 07:41:45,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:41:45,613.613 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 07:41:48,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:41:48,488.488 INFO    ] Checking for system updates...
[2026-10-25 07:41:48,530.530 INFO    ] 200
[2026-10-25 07:41:48,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:48,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:41:48,592.592 INFO    ] No update needed
[2026-10-25 07:41:48,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 07:41:48,629.629 INFO    ] 200
[2026-10-25 07:41:48,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:41:48,676.676 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:41:48,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:41:48,735.735 INFO    ] No camera update needed
[2026-10-25 07:41:48,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:41:48,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:41:48,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:41:48,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:41:50,793.793 INFO    ] ================================================
[2026-10-25 07:41:50,810.810 INFO    ] Launching Daemon at Sun Oct 25 07:41:50 IST 2026
[2026-10-25 07:41:50,821.821 INFO    ] ================================================
[2026-10-25 07:41:51,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:41:51
[2026-10-25 07:41:52,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:41:52,319.319 INFO    ] Initializing speech engine...
[2026-10-25 07:41:52,329.329 INFO    ] 2026-10-25 07:41:52
[2026-10-25 07:41:52,590.590 INFO    ] 2026-10-25 07:41:52
[2026-10-25 07:41:52,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:41:52,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:41:52,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:41:53,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:41:53,029.029 INFO    ] time= 25/10/2026 07:41:53
[2026-10-25 07:41:53,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:41:53,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:41:53,196.196 INFO    ] No existing commands found in stream
[2026-10-25 07:41:58,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:41:58,211.211 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 07:42:02,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:42:02,484.484 INFO    ] Checking for system updates...
[2026-10-25 07:42:02,543.543 INFO    ] 200
[2026-10-25 07:42:02,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:02,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:42:02,614.614 INFO    ] No update needed
[2026-10-25 07:42:02,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 07:42:02,683.683 INFO    ] 200
[2026-10-25 07:42:02,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:02,802.802 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:42:02,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:42:02,850.850 INFO    ] No camera update needed
[2026-10-25 07:42:02,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:42:02,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:42:02,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:42:02,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:42:04,915.915 INFO    ] ================================================
[2026-10-25 07:42:04,936.936 INFO    ] Launching Daemon at Sun Oct 25 07:42:04 IST 2026
[2026-10-25 07:42:04,960.960 INFO    ] ================================================
[2026-10-25 07:42:05,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:42:05
[2026-10-25 07:42:06,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:42:06,464.464 INFO    ] Initializing speech engine...
[2026-10-25 07:42:06,468.468 INFO    ] 2026-10-25 07:42:06
[2026-10-25 07:42:06,717.717 INFO    ] 2026-10-25 07:42:06
[2026-10-25 07:42:06,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:42:06,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:42:06,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:42:07,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:42:07,094.094 INFO    ] time= 25/10/2026 07:42:07
[2026-10-25 07:42:07,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:42:07,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:42:07,255.255 INFO    ] No existing commands found in stream
[2026-10-25 07:42:12,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:42:12,288.288 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 07:42:14,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:42:14,466.466 INFO    ] Checking for system updates...
[2026-10-25 07:42:14,505.505 INFO    ] 200
[2026-10-25 07:42:14,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:14,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:42:14,563.563 INFO    ] No update needed
[2026-10-25 07:42:14,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 07:42:14,602.602 INFO    ] 200
[2026-10-25 07:42:14,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:14,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:42:14,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:42:14,699.699 INFO    ] No camera update needed
[2026-10-25 07:42:14,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:42:14,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:42:14,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:42:14,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:42:16,756.756 INFO    ] ================================================
[2026-10-25 07:42:16,771.771 INFO    ] Launching Daemon at Sun Oct 25 07:42:16 IST 2026
[2026-10-25 07:42:16,781.781 INFO    ] ================================================
[2026-10-25 07:42:17,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:42:17
[2026-10-25 07:42:17,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:42:18,190.190 INFO    ] Initializing speech engine...
[2026-10-25 07:42:18,196.196 INFO    ] 2026-10-25 07:42:18
[2026-10-25 07:42:18,490.490 INFO    ] 2026-10-25 07:42:18
[2026-10-25 07:42:18,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:42:18,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:42:18,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:42:18,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:42:18,899.899 INFO    ] time= 25/10/2026 07:42:18
[2026-10-25 07:42:18,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:42:18,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:42:18,986.986 INFO    ] No existing commands found in stream
[2026-10-25 07:42:23,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:42:24,002.002 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 07:42:28,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:42:28,301.301 INFO    ] Checking for system updates...
[2026-10-25 07:42:28,342.342 INFO    ] 200
[2026-10-25 07:42:28,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:28,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:28,400.400 INFO    ] No update needed
[2026-10-25 07:42:28,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 07:42:28,437.437 INFO    ] 200
[2026-10-25 07:42:28,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:28,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:42:28,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:28,516.516 INFO    ] No camera update needed
[2026-10-25 07:42:28,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:42:28,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:42:28,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:42:28,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:42:30,572.572 INFO    ] ================================================
[2026-10-25 07:42:30,588.588 INFO    ] Launching Daemon at Sun Oct 25 07:42:30 IST 2026
[2026-10-25 07:42:30,599.599 INFO    ] ================================================
[2026-10-25 07:42:31,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:42:31
[2026-10-25 07:42:31,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:42:32,135.135 INFO    ] Initializing speech engine...
[2026-10-25 07:42:32,154.154 INFO    ] 2026-10-25 07:42:32
[2026-10-25 07:42:32,454.454 INFO    ] 2026-10-25 07:42:32
[2026-10-25 07:42:32,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:42:34,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:42:34,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:42:34,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:42:34,977.977 INFO    ] time= 25/10/2026 07:42:34
[2026-10-25 07:42:34,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:42:34,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:42:35,094.094 INFO    ] No existing commands found in stream
[2026-10-25 07:42:40,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:42:40,111.111 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 07:42:42,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:42:42,015.015 INFO    ] Checking for system updates...
[2026-10-25 07:42:42,051.051 INFO    ] 200
[2026-10-25 07:42:42,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:42,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:42,116.116 INFO    ] No update needed
[2026-10-25 07:42:42,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 07:42:42,156.156 INFO    ] 200
[2026-10-25 07:42:42,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:42,200.200 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:42:42,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:42,255.255 INFO    ] No camera update needed
[2026-10-25 07:42:42,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:42:42,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:42:42,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:42:42,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:42:44,313.313 INFO    ] ================================================
[2026-10-25 07:42:44,327.327 INFO    ] Launching Daemon at Sun Oct 25 07:42:44 IST 2026
[2026-10-25 07:42:44,338.338 INFO    ] ================================================
[2026-10-25 07:42:44,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:42:44
[2026-10-25 07:42:45,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:42:45,850.850 INFO    ] Initializing speech engine...
[2026-10-25 07:42:45,863.863 INFO    ] 2026-10-25 07:42:45
[2026-10-25 07:42:46,126.126 INFO    ] 2026-10-25 07:42:46
[2026-10-25 07:42:46,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:42:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:42:46,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:42:46,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:42:46,631.631 INFO    ] time= 25/10/2026 07:42:46
[2026-10-25 07:42:46,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:42:46,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:42:46,813.813 INFO    ] No existing commands found in stream
[2026-10-25 07:42:51,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:42:51,837.837 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 07:42:58,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:42:58,584.584 INFO    ] Checking for system updates...
[2026-10-25 07:42:58,622.622 INFO    ] 200
[2026-10-25 07:42:58,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:58,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:58,690.690 INFO    ] No update needed
[2026-10-25 07:42:58,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 07:42:58,728.728 INFO    ] 200
[2026-10-25 07:42:58,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:42:58,779.779 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:42:58,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:42:58,834.834 INFO    ] No camera update needed
[2026-10-25 07:42:58,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:42:58,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:42:58,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:42:58,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:43:00,891.891 INFO    ] ================================================
[2026-10-25 07:43:00,906.906 INFO    ] Launching Daemon at Sun Oct 25 07:43:00 IST 2026
[2026-10-25 07:43:00,917.917 INFO    ] ================================================
[2026-10-25 07:43:01,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:43:01
[2026-10-25 07:43:02,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:43:02,624.624 INFO    ] Initializing speech engine...
[2026-10-25 07:43:02,628.628 INFO    ] 2026-10-25 07:43:02
[2026-10-25 07:43:02,959.959 INFO    ] 2026-10-25 07:43:02
[2026-10-25 07:43:03,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:43:05,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:43:05,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:43:05,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:43:05,378.378 INFO    ] time= 25/10/2026 07:43:05
[2026-10-25 07:43:05,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:43:05,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:43:05,534.534 INFO    ] No existing commands found in stream
[2026-10-25 07:43:10,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:43:10,551.551 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 07:43:14,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:43:14,439.439 INFO    ] Checking for system updates...
[2026-10-25 07:43:14,476.476 INFO    ] 200
[2026-10-25 07:43:14,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:14,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:14,545.545 INFO    ] No update needed
[2026-10-25 07:43:14,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 07:43:14,585.585 INFO    ] 200
[2026-10-25 07:43:14,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:14,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:43:14,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:14,687.687 INFO    ] No camera update needed
[2026-10-25 07:43:14,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:43:14,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:43:14,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:43:14,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:43:16,743.743 INFO    ] ================================================
[2026-10-25 07:43:16,758.758 INFO    ] Launching Daemon at Sun Oct 25 07:43:16 IST 2026
[2026-10-25 07:43:16,769.769 INFO    ] ================================================
[2026-10-25 07:43:17,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:43:17
[2026-10-25 07:43:18,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:43:18,270.270 INFO    ] Initializing speech engine...
[2026-10-25 07:43:18,278.278 INFO    ] 2026-10-25 07:43:18
[2026-10-25 07:43:18,570.570 INFO    ] 2026-10-25 07:43:18
[2026-10-25 07:43:18,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:43:18,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:43:18,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:43:18,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:43:18,947.947 INFO    ] time= 25/10/2026 07:43:18
[2026-10-25 07:43:18,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:43:19,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:43:19,119.119 INFO    ] No existing commands found in stream
[2026-10-25 07:43:24,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:43:24,152.152 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 07:43:25,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:43:25,488.488 INFO    ] Checking for system updates...
[2026-10-25 07:43:25,531.531 INFO    ] 200
[2026-10-25 07:43:25,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:25,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:43:25,603.603 INFO    ] No update needed
[2026-10-25 07:43:25,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 07:43:25,642.642 INFO    ] 200
[2026-10-25 07:43:25,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:25,686.686 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:43:25,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:43:25,743.743 INFO    ] No camera update needed
[2026-10-25 07:43:25,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:43:25,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:43:25,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:43:25,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:43:27,802.802 INFO    ] ================================================
[2026-10-25 07:43:27,817.817 INFO    ] Launching Daemon at Sun Oct 25 07:43:27 IST 2026
[2026-10-25 07:43:27,828.828 INFO    ] ================================================
[2026-10-25 07:43:28,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:43:28
[2026-10-25 07:43:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:43:29,317.317 INFO    ] Initializing speech engine...
[2026-10-25 07:43:29,340.340 INFO    ] 2026-10-25 07:43:29
[2026-10-25 07:43:29,596.596 INFO    ] 2026-10-25 07:43:29
[2026-10-25 07:43:29,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:43:29,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:43:29,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:43:29,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:43:29,976.976 INFO    ] time= 25/10/2026 07:43:29
[2026-10-25 07:43:29,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:43:30,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:43:30,131.131 INFO    ] No existing commands found in stream
[2026-10-25 07:43:35,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:43:35,164.164 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 07:43:36,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:43:36,357.357 INFO    ] Checking for system updates...
[2026-10-25 07:43:36,394.394 INFO    ] 200
[2026-10-25 07:43:36,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:36,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:36,454.454 INFO    ] No update needed
[2026-10-25 07:43:36,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 07:43:36,496.496 INFO    ] 200
[2026-10-25 07:43:36,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:36,547.547 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:43:36,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:36,719.719 INFO    ] No camera update needed
[2026-10-25 07:43:36,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:43:36,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:43:36,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:43:36,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:43:38,779.779 INFO    ] ================================================
[2026-10-25 07:43:38,794.794 INFO    ] Launching Daemon at Sun Oct 25 07:43:38 IST 2026
[2026-10-25 07:43:38,805.805 INFO    ] ================================================
[2026-10-25 07:43:39,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:43:39
[2026-10-25 07:43:39,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:43:40,247.247 INFO    ] Initializing speech engine...
[2026-10-25 07:43:40,256.256 INFO    ] 2026-10-25 07:43:40
[2026-10-25 07:43:40,545.545 INFO    ] 2026-10-25 07:43:40
[2026-10-25 07:43:40,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:43:40,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:43:40,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:43:40,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:43:41,019.019 INFO    ] time= 25/10/2026 07:43:40
[2026-10-25 07:43:41,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:43:41,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:43:41,170.170 INFO    ] No existing commands found in stream
[2026-10-25 07:43:46,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:43:46,192.192 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 07:43:50,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:43:50,242.242 INFO    ] Checking for system updates...
[2026-10-25 07:43:50,279.279 INFO    ] 200
[2026-10-25 07:43:50,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:50,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:50,338.338 INFO    ] No update needed
[2026-10-25 07:43:50,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 07:43:50,379.379 INFO    ] 200
[2026-10-25 07:43:50,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:43:50,429.429 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:43:50,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:43:50,481.481 INFO    ] No camera update needed
[2026-10-25 07:43:50,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:43:50,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:43:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:43:50,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:43:52,541.541 INFO    ] ================================================
[2026-10-25 07:43:52,556.556 INFO    ] Launching Daemon at Sun Oct 25 07:43:52 IST 2026
[2026-10-25 07:43:52,567.567 INFO    ] ================================================
[2026-10-25 07:43:53,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:43:53
[2026-10-25 07:43:53,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:43:53,975.975 INFO    ] Initializing speech engine...
[2026-10-25 07:43:53,981.981 INFO    ] 2026-10-25 07:43:53
[2026-10-25 07:43:54,276.276 INFO    ] 2026-10-25 07:43:54
[2026-10-25 07:43:54,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:43:54,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:43:54,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:43:54,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:43:54,696.696 INFO    ] time= 25/10/2026 07:43:54
[2026-10-25 07:43:54,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:43:54,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:43:54,786.786 INFO    ] No existing commands found in stream
[2026-10-25 07:43:59,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:43:59,802.802 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 07:44:05,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:44:05,285.285 INFO    ] Checking for system updates...
[2026-10-25 07:44:05,333.333 INFO    ] 200
[2026-10-25 07:44:05,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:05,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:05,403.403 INFO    ] No update needed
[2026-10-25 07:44:05,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 07:44:05,457.457 INFO    ] 200
[2026-10-25 07:44:05,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:05,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:44:05,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:05,549.549 INFO    ] No camera update needed
[2026-10-25 07:44:05,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:44:05,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:44:05,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:44:05,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:44:07,606.606 INFO    ] ================================================
[2026-10-25 07:44:07,621.621 INFO    ] Launching Daemon at Sun Oct 25 07:44:07 IST 2026
[2026-10-25 07:44:07,632.632 INFO    ] ================================================
[2026-10-25 07:44:08,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:44:08
[2026-10-25 07:44:08,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:44:09,072.072 INFO    ] Initializing speech engine...
[2026-10-25 07:44:09,081.081 INFO    ] 2026-10-25 07:44:09
[2026-10-25 07:44:09,331.331 INFO    ] 2026-10-25 07:44:09
[2026-10-25 07:44:09,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:44:09,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:44:09,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:44:09,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:44:09,805.805 INFO    ] time= 25/10/2026 07:44:09
[2026-10-25 07:44:09,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:44:09,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:44:09,961.961 INFO    ] No existing commands found in stream
[2026-10-25 07:44:14,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:44:14,975.975 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 07:44:16,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:44:16,120.120 INFO    ] Checking for system updates...
[2026-10-25 07:44:16,157.157 INFO    ] 200
[2026-10-25 07:44:16,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:16,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:16,217.217 INFO    ] No update needed
[2026-10-25 07:44:16,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 07:44:16,255.255 INFO    ] 200
[2026-10-25 07:44:16,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:16,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:44:16,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:16,358.358 INFO    ] No camera update needed
[2026-10-25 07:44:16,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:44:16,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:44:16,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:44:16,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:44:18,423.423 INFO    ] ================================================
[2026-10-25 07:44:18,438.438 INFO    ] Launching Daemon at Sun Oct 25 07:44:18 IST 2026
[2026-10-25 07:44:18,449.449 INFO    ] ================================================
[2026-10-25 07:44:19,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:44:19
[2026-10-25 07:44:19,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:44:19,918.918 INFO    ] Initializing speech engine...
[2026-10-25 07:44:19,926.926 INFO    ] 2026-10-25 07:44:19
[2026-10-25 07:44:20,174.174 INFO    ] 2026-10-25 07:44:20
[2026-10-25 07:44:20,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:44:20,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:44:20,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:44:20,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:44:20,672.672 INFO    ] time= 25/10/2026 07:44:20
[2026-10-25 07:44:20,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:44:20,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:44:20,855.855 INFO    ] No existing commands found in stream
[2026-10-25 07:44:25,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:44:25,883.883 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 07:44:26,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:44:26,784.784 INFO    ] Checking for system updates...
[2026-10-25 07:44:26,821.821 INFO    ] 200
[2026-10-25 07:44:26,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:26,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:44:26,887.887 INFO    ] No update needed
[2026-10-25 07:44:26,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 07:44:26,926.926 INFO    ] 200
[2026-10-25 07:44:26,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:26,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:44:27,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:44:27,020.020 INFO    ] No camera update needed
[2026-10-25 07:44:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:44:27,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:44:27,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:44:27,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:44:29,076.076 INFO    ] ================================================
[2026-10-25 07:44:29,091.091 INFO    ] Launching Daemon at Sun Oct 25 07:44:29 IST 2026
[2026-10-25 07:44:29,102.102 INFO    ] ================================================
[2026-10-25 07:44:29,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:44:29
[2026-10-25 07:44:30,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:44:30,529.529 INFO    ] Initializing speech engine...
[2026-10-25 07:44:30,547.547 INFO    ] 2026-10-25 07:44:30
[2026-10-25 07:44:30,798.798 INFO    ] 2026-10-25 07:44:30
[2026-10-25 07:44:30,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:44:31,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:44:31,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:44:31,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:44:31,212.212 INFO    ] time= 25/10/2026 07:44:31
[2026-10-25 07:44:31,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:44:31,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:44:31,379.379 INFO    ] No existing commands found in stream
[2026-10-25 07:44:36,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:44:36,393.393 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 07:44:38,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:44:38,876.876 INFO    ] Checking for system updates...
[2026-10-25 07:44:38,916.916 INFO    ] 200
[2026-10-25 07:44:38,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:38,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:44:38,973.973 INFO    ] No update needed
[2026-10-25 07:44:38,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 07:44:39,010.010 INFO    ] 200
[2026-10-25 07:44:39,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:39,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:44:39,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:44:39,108.108 INFO    ] No camera update needed
[2026-10-25 07:44:39,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:44:39,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:44:39,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:44:39,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:44:41,164.164 INFO    ] ================================================
[2026-10-25 07:44:41,179.179 INFO    ] Launching Daemon at Sun Oct 25 07:44:41 IST 2026
[2026-10-25 07:44:41,190.190 INFO    ] ================================================
[2026-10-25 07:44:41,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:44:41
[2026-10-25 07:44:42,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:44:42,659.659 INFO    ] Initializing speech engine...
[2026-10-25 07:44:42,668.668 INFO    ] 2026-10-25 07:44:42
[2026-10-25 07:44:42,919.919 INFO    ] 2026-10-25 07:44:42
[2026-10-25 07:44:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:44:43,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:44:43,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:44:43,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:44:43,411.411 INFO    ] time= 25/10/2026 07:44:43
[2026-10-25 07:44:43,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:44:43,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:44:43,612.612 INFO    ] No existing commands found in stream
[2026-10-25 07:44:48,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:44:48,642.642 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 07:44:52,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:44:52,875.875 INFO    ] Checking for system updates...
[2026-10-25 07:44:52,911.911 INFO    ] 200
[2026-10-25 07:44:52,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:52,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:52,969.969 INFO    ] No update needed
[2026-10-25 07:44:52,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 07:44:53,004.004 INFO    ] 200
[2026-10-25 07:44:53,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:44:53,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:44:53,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:44:53,099.099 INFO    ] No camera update needed
[2026-10-25 07:44:53,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:44:53,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:44:53,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:44:53,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:44:55,155.155 INFO    ] ================================================
[2026-10-25 07:44:55,170.170 INFO    ] Launching Daemon at Sun Oct 25 07:44:55 IST 2026
[2026-10-25 07:44:55,181.181 INFO    ] ================================================
[2026-10-25 07:44:55,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:44:55
[2026-10-25 07:44:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:44:56,636.636 INFO    ] Initializing speech engine...
[2026-10-25 07:44:56,645.645 INFO    ] 2026-10-25 07:44:56
[2026-10-25 07:44:56,902.902 INFO    ] 2026-10-25 07:44:56
[2026-10-25 07:44:56,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:44:57,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:44:57,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:44:57,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:44:57,359.359 INFO    ] time= 25/10/2026 07:44:57
[2026-10-25 07:44:57,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:44:57,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:44:57,509.509 INFO    ] No existing commands found in stream
[2026-10-25 07:45:02,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:45:02,536.536 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 07:45:05,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:45:05,626.626 INFO    ] Checking for system updates...
[2026-10-25 07:45:05,663.663 INFO    ] 200
[2026-10-25 07:45:05,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:05,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:05,722.722 INFO    ] No update needed
[2026-10-25 07:45:05,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 07:45:05,764.764 INFO    ] 200
[2026-10-25 07:45:05,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:05,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:45:05,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:05,839.839 INFO    ] No camera update needed
[2026-10-25 07:45:05,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:45:05,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:45:05,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:45:05,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:45:07,895.895 INFO    ] ================================================
[2026-10-25 07:45:07,910.910 INFO    ] Launching Daemon at Sun Oct 25 07:45:07 IST 2026
[2026-10-25 07:45:07,920.920 INFO    ] ================================================
[2026-10-25 07:45:08,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:45:08
[2026-10-25 07:45:09,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:45:09,355.355 INFO    ] Initializing speech engine...
[2026-10-25 07:45:09,365.365 INFO    ] 2026-10-25 07:45:09
[2026-10-25 07:45:09,610.610 INFO    ] 2026-10-25 07:45:09
[2026-10-25 07:45:09,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:45:09,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:45:09,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:45:10,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:45:10,101.101 INFO    ] time= 25/10/2026 07:45:10
[2026-10-25 07:45:10,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:45:10,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:45:10,227.227 INFO    ] No existing commands found in stream
[2026-10-25 07:45:15,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:45:15,241.241 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 07:45:19,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:45:19,637.637 INFO    ] Checking for system updates...
[2026-10-25 07:45:19,678.678 INFO    ] 200
[2026-10-25 07:45:19,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:19,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:19,736.736 INFO    ] No update needed
[2026-10-25 07:45:19,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 07:45:19,772.772 INFO    ] 200
[2026-10-25 07:45:19,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:19,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:45:19,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:19,873.873 INFO    ] No camera update needed
[2026-10-25 07:45:19,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:45:19,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:45:19,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:45:19,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:45:21,928.928 INFO    ] ================================================
[2026-10-25 07:45:21,944.944 INFO    ] Launching Daemon at Sun Oct 25 07:45:21 IST 2026
[2026-10-25 07:45:21,956.956 INFO    ] ================================================
[2026-10-25 07:45:22,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:45:22
[2026-10-25 07:45:23,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:45:23,369.369 INFO    ] Initializing speech engine...
[2026-10-25 07:45:23,378.378 INFO    ] 2026-10-25 07:45:23
[2026-10-25 07:45:23,625.625 INFO    ] 2026-10-25 07:45:23
[2026-10-25 07:45:23,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:45:23,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:45:23,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:45:24,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:45:24,083.083 INFO    ] time= 25/10/2026 07:45:24
[2026-10-25 07:45:24,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:45:24,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:45:24,237.237 INFO    ] No existing commands found in stream
[2026-10-25 07:45:29,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:45:29,251.251 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 07:45:35,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:45:35,496.496 INFO    ] Checking for system updates...
[2026-10-25 07:45:35,532.532 INFO    ] 200
[2026-10-25 07:45:35,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:35,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:45:35,589.589 INFO    ] No update needed
[2026-10-25 07:45:35,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 07:45:35,629.629 INFO    ] 200
[2026-10-25 07:45:35,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:35,672.672 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:45:35,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:45:35,713.713 INFO    ] No camera update needed
[2026-10-25 07:45:35,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:45:35,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:45:35,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:45:35,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:45:37,770.770 INFO    ] ================================================
[2026-10-25 07:45:37,786.786 INFO    ] Launching Daemon at Sun Oct 25 07:45:37 IST 2026
[2026-10-25 07:45:37,798.798 INFO    ] ================================================
[2026-10-25 07:45:38,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:45:38
[2026-10-25 07:45:38,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:45:39,199.199 INFO    ] Initializing speech engine...
[2026-10-25 07:45:39,214.214 INFO    ] 2026-10-25 07:45:39
[2026-10-25 07:45:39,477.477 INFO    ] 2026-10-25 07:45:39
[2026-10-25 07:45:39,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:45:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:45:39,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:45:39,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:45:39,963.963 INFO    ] time= 25/10/2026 07:45:39
[2026-10-25 07:45:40,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:45:40,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:45:40,167.167 INFO    ] No existing commands found in stream
[2026-10-25 07:45:45,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:45:45,202.202 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 07:45:47,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:45:47,870.870 INFO    ] Checking for system updates...
[2026-10-25 07:45:47,907.907 INFO    ] 200
[2026-10-25 07:45:47,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:47,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:47,966.966 INFO    ] No update needed
[2026-10-25 07:45:47,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 07:45:48,007.007 INFO    ] 200
[2026-10-25 07:45:48,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:45:48,052.052 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:45:48,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:45:48,206.206 INFO    ] No camera update needed
[2026-10-25 07:45:48,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:45:48,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:45:48,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:45:48,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:45:50,262.262 INFO    ] ================================================
[2026-10-25 07:45:50,278.278 INFO    ] Launching Daemon at Sun Oct 25 07:45:50 IST 2026
[2026-10-25 07:45:50,289.289 INFO    ] ================================================
[2026-10-25 07:45:50,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:45:50
[2026-10-25 07:45:51,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:45:51,779.779 INFO    ] Initializing speech engine...
[2026-10-25 07:45:51,787.787 INFO    ] 2026-10-25 07:45:51
[2026-10-25 07:45:52,052.052 INFO    ] 2026-10-25 07:45:52
[2026-10-25 07:45:52,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:45:52,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:45:52,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:45:52,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:45:52,511.511 INFO    ] time= 25/10/2026 07:45:52
[2026-10-25 07:45:52,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:45:52,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:45:52,733.733 INFO    ] No existing commands found in stream
[2026-10-25 07:45:57,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:45:57,761.761 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 07:46:01,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:46:01,555.555 INFO    ] Checking for system updates...
[2026-10-25 07:46:01,592.592 INFO    ] 200
[2026-10-25 07:46:01,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:01,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:01,703.703 INFO    ] No update needed
[2026-10-25 07:46:01,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 07:46:01,793.793 INFO    ] 200
[2026-10-25 07:46:01,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:01,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:46:01,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:01,916.916 INFO    ] No camera update needed
[2026-10-25 07:46:01,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:46:01,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:46:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:46:01,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:46:04,002.002 INFO    ] ================================================
[2026-10-25 07:46:04,017.017 INFO    ] Launching Daemon at Sun Oct 25 07:46:04 IST 2026
[2026-10-25 07:46:04,028.028 INFO    ] ================================================
[2026-10-25 07:46:04,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:46:04
[2026-10-25 07:46:05,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:46:05,546.546 INFO    ] Initializing speech engine...
[2026-10-25 07:46:05,563.563 INFO    ] 2026-10-25 07:46:05
[2026-10-25 07:46:05,886.886 INFO    ] 2026-10-25 07:46:05
[2026-10-25 07:46:05,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:46:06,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:46:06,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:46:06,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:46:06,276.276 INFO    ] time= 25/10/2026 07:46:06
[2026-10-25 07:46:06,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:46:06,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:46:06,407.407 INFO    ] No existing commands found in stream
[2026-10-25 07:46:11,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:46:11,428.428 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 07:46:15,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:46:15,225.225 INFO    ] Checking for system updates...
[2026-10-25 07:46:15,266.266 INFO    ] 200
[2026-10-25 07:46:15,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:15,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:46:15,332.332 INFO    ] No update needed
[2026-10-25 07:46:15,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 07:46:15,372.372 INFO    ] 200
[2026-10-25 07:46:15,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:15,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:46:15,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:46:15,475.475 INFO    ] No camera update needed
[2026-10-25 07:46:15,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:46:15,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:46:15,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:46:15,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:46:17,532.532 INFO    ] ================================================
[2026-10-25 07:46:17,547.547 INFO    ] Launching Daemon at Sun Oct 25 07:46:17 IST 2026
[2026-10-25 07:46:17,558.558 INFO    ] ================================================
[2026-10-25 07:46:18,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:46:18
[2026-10-25 07:46:18,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:46:19,223.223 INFO    ] Initializing speech engine...
[2026-10-25 07:46:19,237.237 INFO    ] 2026-10-25 07:46:19
[2026-10-25 07:46:19,512.512 INFO    ] 2026-10-25 07:46:19
[2026-10-25 07:46:19,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:46:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:46:19,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:46:20,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:46:20,065.065 INFO    ] time= 25/10/2026 07:46:20
[2026-10-25 07:46:20,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:46:20,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:46:20,222.222 INFO    ] No existing commands found in stream
[2026-10-25 07:46:25,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:46:25,241.241 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 07:46:27,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:46:27,266.266 INFO    ] Checking for system updates...
[2026-10-25 07:46:27,304.304 INFO    ] 200
[2026-10-25 07:46:27,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:27,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:27,364.364 INFO    ] No update needed
[2026-10-25 07:46:27,367.367 INFO    ] Checking for camera pi updates...
[2026-10-25 07:46:27,402.402 INFO    ] 200
[2026-10-25 07:46:27,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:27,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:46:27,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:27,504.504 INFO    ] No camera update needed
[2026-10-25 07:46:27,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:46:27,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:46:27,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:46:27,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:46:29,563.563 INFO    ] ================================================
[2026-10-25 07:46:29,579.579 INFO    ] Launching Daemon at Sun Oct 25 07:46:29 IST 2026
[2026-10-25 07:46:29,591.591 INFO    ] ================================================
[2026-10-25 07:46:30,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:46:30
[2026-10-25 07:46:30,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:46:31,247.247 INFO    ] Initializing speech engine...
[2026-10-25 07:46:31,255.255 INFO    ] 2026-10-25 07:46:31
[2026-10-25 07:46:31,542.542 INFO    ] 2026-10-25 07:46:31
[2026-10-25 07:46:31,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:46:31,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:46:31,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:46:31,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:46:32,059.059 INFO    ] time= 25/10/2026 07:46:31
[2026-10-25 07:46:32,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:46:32,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:46:32,253.253 INFO    ] No existing commands found in stream
[2026-10-25 07:46:37,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:46:37,277.277 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 07:46:40,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:46:40,202.202 INFO    ] Checking for system updates...
[2026-10-25 07:46:40,240.240 INFO    ] 200
[2026-10-25 07:46:40,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:40,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:40,311.311 INFO    ] No update needed
[2026-10-25 07:46:40,314.314 INFO    ] Checking for camera pi updates...
[2026-10-25 07:46:40,349.349 INFO    ] 200
[2026-10-25 07:46:40,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:40,396.396 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:46:40,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:40,485.485 INFO    ] No camera update needed
[2026-10-25 07:46:40,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:46:40,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:46:40,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:46:40,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:46:42,551.551 INFO    ] ================================================
[2026-10-25 07:46:42,567.567 INFO    ] Launching Daemon at Sun Oct 25 07:46:42 IST 2026
[2026-10-25 07:46:42,578.578 INFO    ] ================================================
[2026-10-25 07:46:43,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:46:43
[2026-10-25 07:46:43,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:46:44,039.039 INFO    ] Initializing speech engine...
[2026-10-25 07:46:44,047.047 INFO    ] 2026-10-25 07:46:44
[2026-10-25 07:46:44,315.315 INFO    ] 2026-10-25 07:46:44
[2026-10-25 07:46:44,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:46:44,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:46:44,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:46:44,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:46:44,764.764 INFO    ] time= 25/10/2026 07:46:44
[2026-10-25 07:46:44,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:46:44,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:46:44,909.909 INFO    ] No existing commands found in stream
[2026-10-25 07:46:49,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:46:49,937.937 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 07:46:53,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:46:53,413.413 INFO    ] Checking for system updates...
[2026-10-25 07:46:53,454.454 INFO    ] 200
[2026-10-25 07:46:53,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:53,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:53,519.519 INFO    ] No update needed
[2026-10-25 07:46:53,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 07:46:53,560.560 INFO    ] 200
[2026-10-25 07:46:53,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:46:53,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:46:53,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:46:53,638.638 INFO    ] No camera update needed
[2026-10-25 07:46:53,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:46:53,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:46:53,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:46:53,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:46:55,694.694 INFO    ] ================================================
[2026-10-25 07:46:55,709.709 INFO    ] Launching Daemon at Sun Oct 25 07:46:55 IST 2026
[2026-10-25 07:46:55,721.721 INFO    ] ================================================
[2026-10-25 07:46:56,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:46:56
[2026-10-25 07:46:56,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:46:57,241.241 INFO    ] Initializing speech engine...
[2026-10-25 07:46:57,250.250 INFO    ] 2026-10-25 07:46:57
[2026-10-25 07:46:57,498.498 INFO    ] 2026-10-25 07:46:57
[2026-10-25 07:46:57,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:46:57,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:46:57,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:46:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:46:57,957.957 INFO    ] time= 25/10/2026 07:46:57
[2026-10-25 07:46:58,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:46:58,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:46:58,126.126 INFO    ] No existing commands found in stream
[2026-10-25 07:47:03,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:47:03,142.142 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 07:47:05,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:47:05,768.768 INFO    ] Checking for system updates...
[2026-10-25 07:47:05,819.819 INFO    ] 200
[2026-10-25 07:47:05,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:05,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:05,891.891 INFO    ] No update needed
[2026-10-25 07:47:05,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 07:47:05,938.938 INFO    ] 200
[2026-10-25 07:47:05,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:05,987.987 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:47:06,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:06,037.037 INFO    ] No camera update needed
[2026-10-25 07:47:06,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:47:06,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:47:06,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:47:06,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:47:08,094.094 INFO    ] ================================================
[2026-10-25 07:47:08,111.111 INFO    ] Launching Daemon at Sun Oct 25 07:47:08 IST 2026
[2026-10-25 07:47:08,123.123 INFO    ] ================================================
[2026-10-25 07:47:08,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:47:08
[2026-10-25 07:47:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:47:09,727.727 INFO    ] Initializing speech engine...
[2026-10-25 07:47:09,735.735 INFO    ] 2026-10-25 07:47:09
[2026-10-25 07:47:10,010.010 INFO    ] 2026-10-25 07:47:10
[2026-10-25 07:47:10,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:47:10,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:47:10,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:47:10,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:47:10,505.505 INFO    ] time= 25/10/2026 07:47:10
[2026-10-25 07:47:10,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:47:10,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:47:10,688.688 INFO    ] No existing commands found in stream
[2026-10-25 07:47:15,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:47:15,730.730 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 07:47:16,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:47:16,989.989 INFO    ] Checking for system updates...
[2026-10-25 07:47:17,027.027 INFO    ] 200
[2026-10-25 07:47:17,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:17,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:17,087.087 INFO    ] No update needed
[2026-10-25 07:47:17,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 07:47:17,126.126 INFO    ] 200
[2026-10-25 07:47:17,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:17,187.187 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:47:17,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:17,241.241 INFO    ] No camera update needed
[2026-10-25 07:47:17,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:47:17,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:47:17,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:47:17,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:47:19,308.308 INFO    ] ================================================
[2026-10-25 07:47:19,323.323 INFO    ] Launching Daemon at Sun Oct 25 07:47:19 IST 2026
[2026-10-25 07:47:19,334.334 INFO    ] ================================================
[2026-10-25 07:47:19,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:47:19
[2026-10-25 07:47:20,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:47:20,937.937 INFO    ] Initializing speech engine...
[2026-10-25 07:47:20,952.952 INFO    ] 2026-10-25 07:47:20
[2026-10-25 07:47:21,220.220 INFO    ] 2026-10-25 07:47:21
[2026-10-25 07:47:21,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:47:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:47:21,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:47:21,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:47:21,693.693 INFO    ] time= 25/10/2026 07:47:21
[2026-10-25 07:47:21,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:47:21,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:47:21,847.847 INFO    ] No existing commands found in stream
[2026-10-25 07:47:26,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:47:26,863.863 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 07:47:29,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:47:29,331.331 INFO    ] Checking for system updates...
[2026-10-25 07:47:29,368.368 INFO    ] 200
[2026-10-25 07:47:29,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:29,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:29,435.435 INFO    ] No update needed
[2026-10-25 07:47:29,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 07:47:29,473.473 INFO    ] 200
[2026-10-25 07:47:29,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:29,523.523 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:47:29,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:29,561.561 INFO    ] No camera update needed
[2026-10-25 07:47:29,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:47:29,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:47:29,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:47:29,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:47:31,619.619 INFO    ] ================================================
[2026-10-25 07:47:31,634.634 INFO    ] Launching Daemon at Sun Oct 25 07:47:31 IST 2026
[2026-10-25 07:47:31,645.645 INFO    ] ================================================
[2026-10-25 07:47:32,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:47:32
[2026-10-25 07:47:32,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:47:33,193.193 INFO    ] Initializing speech engine...
[2026-10-25 07:47:33,201.201 INFO    ] 2026-10-25 07:47:33
[2026-10-25 07:47:33,458.458 INFO    ] 2026-10-25 07:47:33
[2026-10-25 07:47:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:47:35,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:47:35,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:47:36,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:47:36,082.082 INFO    ] time= 25/10/2026 07:47:36
[2026-10-25 07:47:36,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:47:36,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:47:36,257.257 INFO    ] No existing commands found in stream
[2026-10-25 07:47:41,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:47:41,272.272 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 07:47:44,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:47:44,439.439 INFO    ] Checking for system updates...
[2026-10-25 07:47:44,478.478 INFO    ] 200
[2026-10-25 07:47:44,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:44,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:44,538.538 INFO    ] No update needed
[2026-10-25 07:47:44,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 07:47:44,574.574 INFO    ] 200
[2026-10-25 07:47:44,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:44,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:47:44,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:44,666.666 INFO    ] No camera update needed
[2026-10-25 07:47:44,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:47:44,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:47:44,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:47:44,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:47:46,721.721 INFO    ] ================================================
[2026-10-25 07:47:46,736.736 INFO    ] Launching Daemon at Sun Oct 25 07:47:46 IST 2026
[2026-10-25 07:47:46,747.747 INFO    ] ================================================
[2026-10-25 07:47:47,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:47:47
[2026-10-25 07:47:47,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:47:48,144.144 INFO    ] Initializing speech engine...
[2026-10-25 07:47:48,152.152 INFO    ] 2026-10-25 07:47:48
[2026-10-25 07:47:48,447.447 INFO    ] 2026-10-25 07:47:48
[2026-10-25 07:47:48,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:47:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:47:48,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:47:48,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:47:48,836.836 INFO    ] time= 25/10/2026 07:47:48
[2026-10-25 07:47:48,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:47:48,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:47:48,942.942 INFO    ] No existing commands found in stream
[2026-10-25 07:47:53,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:47:53,957.957 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 07:47:55,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:47:55,969.969 INFO    ] Checking for system updates...
[2026-10-25 07:47:56,004.004 INFO    ] 200
[2026-10-25 07:47:56,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:56,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:56,062.062 INFO    ] No update needed
[2026-10-25 07:47:56,064.064 INFO    ] Checking for camera pi updates...
[2026-10-25 07:47:56,098.098 INFO    ] 200
[2026-10-25 07:47:56,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:47:56,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:47:56,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:47:56,314.314 INFO    ] No camera update needed
[2026-10-25 07:47:56,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:47:56,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:47:56,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:47:56,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:47:58,369.369 INFO    ] ================================================
[2026-10-25 07:47:58,384.384 INFO    ] Launching Daemon at Sun Oct 25 07:47:58 IST 2026
[2026-10-25 07:47:58,394.394 INFO    ] ================================================
[2026-10-25 07:47:58,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:47:58
[2026-10-25 07:47:59,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:47:59,882.882 INFO    ] Initializing speech engine...
[2026-10-25 07:47:59,892.892 INFO    ] 2026-10-25 07:47:59
[2026-10-25 07:48:00,152.152 INFO    ] 2026-10-25 07:48:00
[2026-10-25 07:48:00,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:48:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:48:00,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:48:00,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:48:00,655.655 INFO    ] time= 25/10/2026 07:48:00
[2026-10-25 07:48:00,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:48:00,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:48:00,857.857 INFO    ] No existing commands found in stream
[2026-10-25 07:48:05,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:48:05,887.887 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 07:48:09,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:48:09,789.789 INFO    ] Checking for system updates...
[2026-10-25 07:48:09,826.826 INFO    ] 200
[2026-10-25 07:48:09,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:09,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:09,883.883 INFO    ] No update needed
[2026-10-25 07:48:09,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 07:48:09,924.924 INFO    ] 200
[2026-10-25 07:48:09,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:09,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:48:10,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:10,023.023 INFO    ] No camera update needed
[2026-10-25 07:48:10,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:48:10,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:48:10,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:48:10,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:48:12,078.078 INFO    ] ================================================
[2026-10-25 07:48:12,094.094 INFO    ] Launching Daemon at Sun Oct 25 07:48:12 IST 2026
[2026-10-25 07:48:12,105.105 INFO    ] ================================================
[2026-10-25 07:48:12,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:48:12
[2026-10-25 07:48:13,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:48:13,519.519 INFO    ] Initializing speech engine...
[2026-10-25 07:48:13,543.543 INFO    ] 2026-10-25 07:48:13
[2026-10-25 07:48:13,837.837 INFO    ] 2026-10-25 07:48:13
[2026-10-25 07:48:13,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:48:14,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:48:14,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:48:14,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:48:14,193.193 INFO    ] time= 25/10/2026 07:48:14
[2026-10-25 07:48:14,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:48:14,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:48:14,280.280 INFO    ] No existing commands found in stream
[2026-10-25 07:48:19,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:48:19,295.295 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 07:48:23,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:48:23,404.404 INFO    ] Checking for system updates...
[2026-10-25 07:48:23,445.445 INFO    ] 200
[2026-10-25 07:48:23,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:23,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:23,502.502 INFO    ] No update needed
[2026-10-25 07:48:23,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 07:48:23,538.538 INFO    ] 200
[2026-10-25 07:48:23,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:23,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:48:23,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:23,637.637 INFO    ] No camera update needed
[2026-10-25 07:48:23,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:48:23,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:48:23,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:48:23,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:48:25,693.693 INFO    ] ================================================
[2026-10-25 07:48:25,709.709 INFO    ] Launching Daemon at Sun Oct 25 07:48:25 IST 2026
[2026-10-25 07:48:25,720.720 INFO    ] ================================================
[2026-10-25 07:48:26,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:48:26
[2026-10-25 07:48:26,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:48:27,151.151 INFO    ] Initializing speech engine...
[2026-10-25 07:48:27,161.161 INFO    ] 2026-10-25 07:48:27
[2026-10-25 07:48:27,407.407 INFO    ] 2026-10-25 07:48:27
[2026-10-25 07:48:27,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:48:27,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:48:27,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:48:27,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:48:27,910.910 INFO    ] time= 25/10/2026 07:48:27
[2026-10-25 07:48:27,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:48:27,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:48:28,095.095 INFO    ] No existing commands found in stream
[2026-10-25 07:48:33,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:48:33,126.126 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 07:48:36,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:48:36,320.320 INFO    ] Checking for system updates...
[2026-10-25 07:48:36,356.356 INFO    ] 200
[2026-10-25 07:48:36,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:36,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:48:36,415.415 INFO    ] No update needed
[2026-10-25 07:48:36,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 07:48:36,451.451 INFO    ] 200
[2026-10-25 07:48:36,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:36,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:48:36,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:48:36,564.564 INFO    ] No camera update needed
[2026-10-25 07:48:36,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:48:36,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:48:36,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:48:36,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:48:38,628.628 INFO    ] ================================================
[2026-10-25 07:48:38,644.644 INFO    ] Launching Daemon at Sun Oct 25 07:48:38 IST 2026
[2026-10-25 07:48:38,656.656 INFO    ] ================================================
[2026-10-25 07:48:39,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:48:39
[2026-10-25 07:48:39,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:48:40,078.078 INFO    ] Initializing speech engine...
[2026-10-25 07:48:40,093.093 INFO    ] 2026-10-25 07:48:40
[2026-10-25 07:48:40,378.378 INFO    ] 2026-10-25 07:48:40
[2026-10-25 07:48:40,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:48:40,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:48:40,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:48:40,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:48:40,797.797 INFO    ] time= 25/10/2026 07:48:40
[2026-10-25 07:48:40,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:48:40,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:48:40,881.881 INFO    ] No existing commands found in stream
[2026-10-25 07:48:45,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:48:45,892.892 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 07:48:47,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:48:47,820.820 INFO    ] Checking for system updates...
[2026-10-25 07:48:47,856.856 INFO    ] 200
[2026-10-25 07:48:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:47,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:47,921.921 INFO    ] No update needed
[2026-10-25 07:48:47,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 07:48:47,957.957 INFO    ] 200
[2026-10-25 07:48:47,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:48:48,000.000 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:48:48,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:48:48,048.048 INFO    ] No camera update needed
[2026-10-25 07:48:48,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:48:48,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:48:48,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:48:48,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:48:50,103.103 INFO    ] ================================================
[2026-10-25 07:48:50,118.118 INFO    ] Launching Daemon at Sun Oct 25 07:48:50 IST 2026
[2026-10-25 07:48:50,128.128 INFO    ] ================================================
[2026-10-25 07:48:50,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:48:50
[2026-10-25 07:48:51,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:48:51,573.573 INFO    ] Initializing speech engine...
[2026-10-25 07:48:51,580.580 INFO    ] 2026-10-25 07:48:51
[2026-10-25 07:48:51,876.876 INFO    ] 2026-10-25 07:48:51
[2026-10-25 07:48:51,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:48:52,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:48:52,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:48:52,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:48:52,301.301 INFO    ] time= 25/10/2026 07:48:52
[2026-10-25 07:48:52,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:48:52,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:48:52,469.469 INFO    ] No existing commands found in stream
[2026-10-25 07:48:57,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:48:57,492.492 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 07:49:00,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:49:00,990.990 INFO    ] Checking for system updates...
[2026-10-25 07:49:01,026.026 INFO    ] 200
[2026-10-25 07:49:01,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:01,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:01,091.091 INFO    ] No update needed
[2026-10-25 07:49:01,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 07:49:01,128.128 INFO    ] 200
[2026-10-25 07:49:01,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:01,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:49:01,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:01,206.206 INFO    ] No camera update needed
[2026-10-25 07:49:01,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:49:01,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:49:01,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:49:01,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:49:03,268.268 INFO    ] ================================================
[2026-10-25 07:49:03,285.285 INFO    ] Launching Daemon at Sun Oct 25 07:49:03 IST 2026
[2026-10-25 07:49:03,296.296 INFO    ] ================================================
[2026-10-25 07:49:03,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:49:03
[2026-10-25 07:49:04,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:49:04,926.926 INFO    ] Initializing speech engine...
[2026-10-25 07:49:04,940.940 INFO    ] 2026-10-25 07:49:04
[2026-10-25 07:49:05,252.252 INFO    ] 2026-10-25 07:49:05
[2026-10-25 07:49:05,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:49:05,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:49:05,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:49:05,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:49:05,822.822 INFO    ] time= 25/10/2026 07:49:05
[2026-10-25 07:49:05,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:49:05,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:49:05,979.979 INFO    ] No existing commands found in stream
[2026-10-25 07:49:11,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:49:11,005.005 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 07:49:13,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:49:13,049.049 INFO    ] Checking for system updates...
[2026-10-25 07:49:13,085.085 INFO    ] 200
[2026-10-25 07:49:13,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:13,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:49:13,144.144 INFO    ] No update needed
[2026-10-25 07:49:13,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 07:49:13,188.188 INFO    ] 200
[2026-10-25 07:49:13,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:13,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:49:13,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:49:13,293.293 INFO    ] No camera update needed
[2026-10-25 07:49:13,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:49:13,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:49:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:49:13,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:49:15,348.348 INFO    ] ================================================
[2026-10-25 07:49:15,364.364 INFO    ] Launching Daemon at Sun Oct 25 07:49:15 IST 2026
[2026-10-25 07:49:15,406.406 INFO    ] ================================================
[2026-10-25 07:49:16,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:49:16
[2026-10-25 07:49:16,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:49:17,035.035 INFO    ] Initializing speech engine...
[2026-10-25 07:49:17,047.047 INFO    ] 2026-10-25 07:49:17
[2026-10-25 07:49:17,327.327 INFO    ] 2026-10-25 07:49:17
[2026-10-25 07:49:17,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:49:17,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:49:17,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:49:17,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:49:17,718.718 INFO    ] time= 25/10/2026 07:49:17
[2026-10-25 07:49:17,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:49:17,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:49:17,858.858 INFO    ] No existing commands found in stream
[2026-10-25 07:49:22,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:49:22,872.872 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 07:49:26,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:49:26,452.452 INFO    ] Checking for system updates...
[2026-10-25 07:49:26,491.491 INFO    ] 200
[2026-10-25 07:49:26,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:26,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:26,551.551 INFO    ] No update needed
[2026-10-25 07:49:26,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 07:49:26,587.587 INFO    ] 200
[2026-10-25 07:49:26,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:26,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:49:26,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:26,687.687 INFO    ] No camera update needed
[2026-10-25 07:49:26,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:49:26,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:49:26,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:49:26,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:49:28,742.742 INFO    ] ================================================
[2026-10-25 07:49:28,757.757 INFO    ] Launching Daemon at Sun Oct 25 07:49:28 IST 2026
[2026-10-25 07:49:28,768.768 INFO    ] ================================================
[2026-10-25 07:49:29,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:49:29
[2026-10-25 07:49:30,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:49:30,432.432 INFO    ] Initializing speech engine...
[2026-10-25 07:49:30,440.440 INFO    ] 2026-10-25 07:49:30
[2026-10-25 07:49:30,735.735 INFO    ] 2026-10-25 07:49:30
[2026-10-25 07:49:30,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:49:31,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:49:31,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:49:31,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:49:31,186.186 INFO    ] time= 25/10/2026 07:49:31
[2026-10-25 07:49:31,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:49:31,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:49:31,338.338 INFO    ] No existing commands found in stream
[2026-10-25 07:49:36,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:49:36,367.367 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 07:49:37,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:49:37,998.998 INFO    ] Checking for system updates...
[2026-10-25 07:49:38,040.040 INFO    ] 200
[2026-10-25 07:49:38,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:38,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:49:38,105.105 INFO    ] No update needed
[2026-10-25 07:49:38,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 07:49:38,143.143 INFO    ] 200
[2026-10-25 07:49:38,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:38,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:49:38,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:49:38,223.223 INFO    ] No camera update needed
[2026-10-25 07:49:38,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:49:38,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:49:38,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:49:38,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:49:40,278.278 INFO    ] ================================================
[2026-10-25 07:49:40,294.294 INFO    ] Launching Daemon at Sun Oct 25 07:49:40 IST 2026
[2026-10-25 07:49:40,305.305 INFO    ] ================================================
[2026-10-25 07:49:40,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:49:40
[2026-10-25 07:49:41,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:49:41,764.764 INFO    ] Initializing speech engine...
[2026-10-25 07:49:41,787.787 INFO    ] 2026-10-25 07:49:41
[2026-10-25 07:49:42,037.037 INFO    ] 2026-10-25 07:49:42
[2026-10-25 07:49:42,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:49:42,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:49:42,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:49:42,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:49:42,411.411 INFO    ] time= 25/10/2026 07:49:42
[2026-10-25 07:49:42,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:49:42,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:49:42,490.490 INFO    ] No existing commands found in stream
[2026-10-25 07:49:47,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:49:47,507.507 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 07:49:49,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:49:49,261.261 INFO    ] Checking for system updates...
[2026-10-25 07:49:49,296.296 INFO    ] 200
[2026-10-25 07:49:49,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:49,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:49,355.355 INFO    ] No update needed
[2026-10-25 07:49:49,358.358 INFO    ] Checking for camera pi updates...
[2026-10-25 07:49:49,391.391 INFO    ] 200
[2026-10-25 07:49:49,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:49:49,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:49:49,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:49:49,488.488 INFO    ] No camera update needed
[2026-10-25 07:49:49,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:49:49,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:49:49,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:49:49,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:49:51,543.543 INFO    ] ================================================
[2026-10-25 07:49:51,559.559 INFO    ] Launching Daemon at Sun Oct 25 07:49:51 IST 2026
[2026-10-25 07:49:51,570.570 INFO    ] ================================================
[2026-10-25 07:49:52,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:49:52
[2026-10-25 07:49:52,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:49:53,103.103 INFO    ] Initializing speech engine...
[2026-10-25 07:49:53,109.109 INFO    ] 2026-10-25 07:49:53
[2026-10-25 07:49:53,368.368 INFO    ] 2026-10-25 07:49:53
[2026-10-25 07:49:53,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:49:53,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:49:53,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:49:53,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:49:53,730.730 INFO    ] time= 25/10/2026 07:49:53
[2026-10-25 07:49:53,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:49:53,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:49:53,917.917 INFO    ] No existing commands found in stream
[2026-10-25 07:49:58,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:49:58,936.936 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 07:50:01,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:50:01,751.751 INFO    ] Checking for system updates...
[2026-10-25 07:50:01,842.842 INFO    ] 200
[2026-10-25 07:50:01,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:01,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:50:01,946.946 INFO    ] No update needed
[2026-10-25 07:50:01,950.950 INFO    ] Checking for camera pi updates...
[2026-10-25 07:50:01,993.993 INFO    ] 200
[2026-10-25 07:50:01,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:02,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:50:02,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:50:02,203.203 INFO    ] No camera update needed
[2026-10-25 07:50:02,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:50:02,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:50:02,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:50:02,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:50:04,271.271 INFO    ] ================================================
[2026-10-25 07:50:04,286.286 INFO    ] Launching Daemon at Sun Oct 25 07:50:04 IST 2026
[2026-10-25 07:50:04,297.297 INFO    ] ================================================
[2026-10-25 07:50:04,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:50:04
[2026-10-25 07:50:05,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:50:05,913.913 INFO    ] Initializing speech engine...
[2026-10-25 07:50:05,921.921 INFO    ] 2026-10-25 07:50:05
[2026-10-25 07:50:06,180.180 INFO    ] 2026-10-25 07:50:06
[2026-10-25 07:50:06,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:50:06,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:50:06,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:50:06,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:50:06,677.677 INFO    ] time= 25/10/2026 07:50:06
[2026-10-25 07:50:06,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:50:06,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:50:06,860.860 INFO    ] No existing commands found in stream
[2026-10-25 07:50:11,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:50:11,885.885 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 07:50:14,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:50:14,281.281 INFO    ] Checking for system updates...
[2026-10-25 07:50:14,317.317 INFO    ] 200
[2026-10-25 07:50:14,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:14,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:14,377.377 INFO    ] No update needed
[2026-10-25 07:50:14,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 07:50:14,413.413 INFO    ] 200
[2026-10-25 07:50:14,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:14,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:50:14,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:14,513.513 INFO    ] No camera update needed
[2026-10-25 07:50:14,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:50:14,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:50:14,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:50:14,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:50:16,568.568 INFO    ] ================================================
[2026-10-25 07:50:16,584.584 INFO    ] Launching Daemon at Sun Oct 25 07:50:16 IST 2026
[2026-10-25 07:50:16,595.595 INFO    ] ================================================
[2026-10-25 07:50:17,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:50:17
[2026-10-25 07:50:17,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:50:18,072.072 INFO    ] Initializing speech engine...
[2026-10-25 07:50:18,083.083 INFO    ] 2026-10-25 07:50:18
[2026-10-25 07:50:18,366.366 INFO    ] 2026-10-25 07:50:18
[2026-10-25 07:50:18,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:50:18,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:50:18,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:50:18,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:50:18,827.827 INFO    ] time= 25/10/2026 07:50:18
[2026-10-25 07:50:18,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:50:18,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:50:18,979.979 INFO    ] No existing commands found in stream
[2026-10-25 07:50:23,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:50:23,994.994 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 07:50:27,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:50:27,197.197 INFO    ] Checking for system updates...
[2026-10-25 07:50:27,233.233 INFO    ] 200
[2026-10-25 07:50:27,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:27,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:50:27,303.303 INFO    ] No update needed
[2026-10-25 07:50:27,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 07:50:27,340.340 INFO    ] 200
[2026-10-25 07:50:27,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:27,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:50:27,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:50:27,435.435 INFO    ] No camera update needed
[2026-10-25 07:50:27,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:50:27,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:50:27,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:50:27,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:50:29,491.491 INFO    ] ================================================
[2026-10-25 07:50:29,507.507 INFO    ] Launching Daemon at Sun Oct 25 07:50:29 IST 2026
[2026-10-25 07:50:29,518.518 INFO    ] ================================================
[2026-10-25 07:50:30,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:50:30
[2026-10-25 07:50:30,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:50:31,150.150 INFO    ] Initializing speech engine...
[2026-10-25 07:50:31,168.168 INFO    ] 2026-10-25 07:50:31
[2026-10-25 07:50:31,449.449 INFO    ] 2026-10-25 07:50:31
[2026-10-25 07:50:31,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:50:31,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:50:31,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:50:31,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:50:31,953.953 INFO    ] time= 25/10/2026 07:50:31
[2026-10-25 07:50:32,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:50:32,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:50:32,124.124 INFO    ] No existing commands found in stream
[2026-10-25 07:50:37,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:50:37,139.139 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 07:50:37,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:50:37,748.748 INFO    ] Checking for system updates...
[2026-10-25 07:50:37,787.787 INFO    ] 200
[2026-10-25 07:50:37,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:37,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:37,846.846 INFO    ] No update needed
[2026-10-25 07:50:37,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 07:50:37,882.882 INFO    ] 200
[2026-10-25 07:50:37,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:37,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:50:37,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:37,976.976 INFO    ] No camera update needed
[2026-10-25 07:50:37,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:50:37,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:50:37,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:50:37,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:50:40,033.033 INFO    ] ================================================
[2026-10-25 07:50:40,048.048 INFO    ] Launching Daemon at Sun Oct 25 07:50:40 IST 2026
[2026-10-25 07:50:40,058.058 INFO    ] ================================================
[2026-10-25 07:50:40,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:50:40
[2026-10-25 07:50:41,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:50:41,460.460 INFO    ] Initializing speech engine...
[2026-10-25 07:50:41,469.469 INFO    ] 2026-10-25 07:50:41
[2026-10-25 07:50:41,762.762 INFO    ] 2026-10-25 07:50:41
[2026-10-25 07:50:41,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:50:42,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:50:42,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:50:42,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:50:42,174.174 INFO    ] time= 25/10/2026 07:50:42
[2026-10-25 07:50:42,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:50:42,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:50:42,258.258 INFO    ] No existing commands found in stream
[2026-10-25 07:50:47,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:50:47,273.273 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 07:50:49,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:50:49,488.488 INFO    ] Checking for system updates...
[2026-10-25 07:50:49,525.525 INFO    ] 200
[2026-10-25 07:50:49,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:49,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:49,583.583 INFO    ] No update needed
[2026-10-25 07:50:49,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 07:50:49,623.623 INFO    ] 200
[2026-10-25 07:50:49,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:50:49,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:50:49,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:50:49,719.719 INFO    ] No camera update needed
[2026-10-25 07:50:49,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:50:49,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:50:49,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:50:49,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:50:51,778.778 INFO    ] ================================================
[2026-10-25 07:50:51,794.794 INFO    ] Launching Daemon at Sun Oct 25 07:50:51 IST 2026
[2026-10-25 07:50:51,804.804 INFO    ] ================================================
[2026-10-25 07:50:52,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:50:52
[2026-10-25 07:50:52,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:50:53,219.219 INFO    ] Initializing speech engine...
[2026-10-25 07:50:53,228.228 INFO    ] 2026-10-25 07:50:53
[2026-10-25 07:50:53,476.476 INFO    ] 2026-10-25 07:50:53
[2026-10-25 07:50:53,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:50:53,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:50:53,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:50:53,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:50:53,942.942 INFO    ] time= 25/10/2026 07:50:53
[2026-10-25 07:50:53,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:50:54,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:50:54,102.102 INFO    ] No existing commands found in stream
[2026-10-25 07:50:59,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:50:59,117.117 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 07:51:00,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:51:00,228.228 INFO    ] Checking for system updates...
[2026-10-25 07:51:00,265.265 INFO    ] 200
[2026-10-25 07:51:00,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:00,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:00,323.323 INFO    ] No update needed
[2026-10-25 07:51:00,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 07:51:00,363.363 INFO    ] 200
[2026-10-25 07:51:00,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:00,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:51:00,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:00,471.471 INFO    ] No camera update needed
[2026-10-25 07:51:00,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:51:00,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:51:00,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:51:00,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:51:02,532.532 INFO    ] ================================================
[2026-10-25 07:51:02,554.554 INFO    ] Launching Daemon at Sun Oct 25 07:51:02 IST 2026
[2026-10-25 07:51:02,566.566 INFO    ] ================================================
[2026-10-25 07:51:03,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:51:03
[2026-10-25 07:51:03,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:51:04,247.247 INFO    ] Initializing speech engine...
[2026-10-25 07:51:04,254.254 INFO    ] 2026-10-25 07:51:04
[2026-10-25 07:51:04,526.526 INFO    ] 2026-10-25 07:51:04
[2026-10-25 07:51:04,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:51:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:51:05,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:51:05,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:51:05,927.927 INFO    ] time= 25/10/2026 07:51:05
[2026-10-25 07:51:05,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:51:05,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:51:05,994.994 INFO    ] No existing commands found in stream
[2026-10-25 07:51:11,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:51:11,008.008 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 07:51:14,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:51:14,131.131 INFO    ] Checking for system updates...
[2026-10-25 07:51:14,168.168 INFO    ] 200
[2026-10-25 07:51:14,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:14,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:51:14,237.237 INFO    ] No update needed
[2026-10-25 07:51:14,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 07:51:14,279.279 INFO    ] 200
[2026-10-25 07:51:14,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:14,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:51:14,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:51:14,393.393 INFO    ] No camera update needed
[2026-10-25 07:51:14,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:51:14,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:51:14,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:51:14,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:51:16,450.450 INFO    ] ================================================
[2026-10-25 07:51:16,465.465 INFO    ] Launching Daemon at Sun Oct 25 07:51:16 IST 2026
[2026-10-25 07:51:16,475.475 INFO    ] ================================================
[2026-10-25 07:51:17,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:51:17
[2026-10-25 07:51:17,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:51:17,915.915 INFO    ] Initializing speech engine...
[2026-10-25 07:51:17,923.923 INFO    ] 2026-10-25 07:51:17
[2026-10-25 07:51:18,183.183 INFO    ] 2026-10-25 07:51:18
[2026-10-25 07:51:18,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:51:18,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:51:18,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:51:18,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:51:18,575.575 INFO    ] time= 25/10/2026 07:51:18
[2026-10-25 07:51:18,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:51:18,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:51:18,674.674 INFO    ] No existing commands found in stream
[2026-10-25 07:51:23,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:51:23,686.686 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 07:51:25,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:51:25,413.413 INFO    ] Checking for system updates...
[2026-10-25 07:51:25,452.452 INFO    ] 200
[2026-10-25 07:51:25,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:25,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:25,511.511 INFO    ] No update needed
[2026-10-25 07:51:25,513.513 INFO    ] Checking for camera pi updates...
[2026-10-25 07:51:25,552.552 INFO    ] 200
[2026-10-25 07:51:25,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:25,594.594 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:51:25,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:25,643.643 INFO    ] No camera update needed
[2026-10-25 07:51:25,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:51:25,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:51:25,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:51:25,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:51:27,697.697 INFO    ] ================================================
[2026-10-25 07:51:27,712.712 INFO    ] Launching Daemon at Sun Oct 25 07:51:27 IST 2026
[2026-10-25 07:51:27,723.723 INFO    ] ================================================
[2026-10-25 07:51:28,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:51:28
[2026-10-25 07:51:28,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:51:29,158.158 INFO    ] Initializing speech engine...
[2026-10-25 07:51:29,179.179 INFO    ] 2026-10-25 07:51:29
[2026-10-25 07:51:29,441.441 INFO    ] 2026-10-25 07:51:29
[2026-10-25 07:51:29,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:51:29,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:51:29,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:51:29,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:51:29,842.842 INFO    ] time= 25/10/2026 07:51:29
[2026-10-25 07:51:29,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:51:29,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:51:29,923.923 INFO    ] No existing commands found in stream
[2026-10-25 07:51:34,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:51:34,936.936 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 07:51:39,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:51:39,194.194 INFO    ] Checking for system updates...
[2026-10-25 07:51:39,229.229 INFO    ] 200
[2026-10-25 07:51:39,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:39,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:51:39,287.287 INFO    ] No update needed
[2026-10-25 07:51:39,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 07:51:39,323.323 INFO    ] 200
[2026-10-25 07:51:39,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:39,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:51:39,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:51:39,418.418 INFO    ] No camera update needed
[2026-10-25 07:51:39,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:51:39,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:51:39,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:51:39,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:51:41,472.472 INFO    ] ================================================
[2026-10-25 07:51:41,486.486 INFO    ] Launching Daemon at Sun Oct 25 07:51:41 IST 2026
[2026-10-25 07:51:41,497.497 INFO    ] ================================================
[2026-10-25 07:51:42,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:51:42
[2026-10-25 07:51:42,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:51:43,092.092 INFO    ] Initializing speech engine...
[2026-10-25 07:51:43,105.105 INFO    ] 2026-10-25 07:51:43
[2026-10-25 07:51:43,377.377 INFO    ] 2026-10-25 07:51:43
[2026-10-25 07:51:43,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:51:43,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:51:43,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:51:43,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:51:43,863.863 INFO    ] time= 25/10/2026 07:51:43
[2026-10-25 07:51:43,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:51:43,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:51:44,053.053 INFO    ] No existing commands found in stream
[2026-10-25 07:51:49,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:51:49,078.078 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 07:51:50,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:51:50,517.517 INFO    ] Checking for system updates...
[2026-10-25 07:51:50,553.553 INFO    ] 200
[2026-10-25 07:51:50,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:50,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:50,616.616 INFO    ] No update needed
[2026-10-25 07:51:50,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 07:51:50,652.652 INFO    ] 200
[2026-10-25 07:51:50,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:51:50,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:51:50,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:51:50,747.747 INFO    ] No camera update needed
[2026-10-25 07:51:50,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:51:50,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:51:50,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:51:50,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:51:52,801.801 INFO    ] ================================================
[2026-10-25 07:51:52,816.816 INFO    ] Launching Daemon at Sun Oct 25 07:51:52 IST 2026
[2026-10-25 07:51:52,827.827 INFO    ] ================================================
[2026-10-25 07:51:53,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:51:53
[2026-10-25 07:51:54,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:51:54,414.414 INFO    ] Initializing speech engine...
[2026-10-25 07:51:54,421.421 INFO    ] 2026-10-25 07:51:54
[2026-10-25 07:51:54,686.686 INFO    ] 2026-10-25 07:51:54
[2026-10-25 07:51:54,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:51:54,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:51:54,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:51:55,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:51:55,128.128 INFO    ] time= 25/10/2026 07:51:55
[2026-10-25 07:51:55,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:51:55,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:51:55,315.315 INFO    ] No existing commands found in stream
[2026-10-25 07:52:00,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:52:00,330.330 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 07:52:01,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:52:01,442.442 INFO    ] Checking for system updates...
[2026-10-25 07:52:01,481.481 INFO    ] 200
[2026-10-25 07:52:01,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:01,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:01,540.540 INFO    ] No update needed
[2026-10-25 07:52:01,543.543 INFO    ] Checking for camera pi updates...
[2026-10-25 07:52:01,577.577 INFO    ] 200
[2026-10-25 07:52:01,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:01,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:52:01,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:01,674.674 INFO    ] No camera update needed
[2026-10-25 07:52:01,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:52:01,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:52:01,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:52:01,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:52:03,732.732 INFO    ] ================================================
[2026-10-25 07:52:03,746.746 INFO    ] Launching Daemon at Sun Oct 25 07:52:03 IST 2026
[2026-10-25 07:52:03,757.757 INFO    ] ================================================
[2026-10-25 07:52:04,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:52:04
[2026-10-25 07:52:05,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:52:05,314.314 INFO    ] Initializing speech engine...
[2026-10-25 07:52:05,323.323 INFO    ] 2026-10-25 07:52:05
[2026-10-25 07:52:05,584.584 INFO    ] 2026-10-25 07:52:05
[2026-10-25 07:52:05,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:52:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:52:06,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:52:06,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:52:06,297.297 INFO    ] time= 25/10/2026 07:52:06
[2026-10-25 07:52:06,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:52:06,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:52:06,483.483 INFO    ] No existing commands found in stream
[2026-10-25 07:52:11,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:52:11,510.510 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 07:52:14,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:52:14,461.461 INFO    ] Checking for system updates...
[2026-10-25 07:52:14,501.501 INFO    ] 200
[2026-10-25 07:52:14,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:52:14,506.506 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 07:52:14,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 07:52:14,550.550 INFO    ] 200
[2026-10-25 07:52:14,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 07:52:14,555.555 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 07:52:14,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:52:14,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:52:14,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:52:14,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:52:16,612.612 INFO    ] ================================================
[2026-10-25 07:52:16,626.626 INFO    ] Launching Daemon at Sun Oct 25 07:52:16 IST 2026
[2026-10-25 07:52:16,637.637 INFO    ] ================================================
[2026-10-25 07:52:17,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:52:17
[2026-10-25 07:52:17,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:52:18,271.271 INFO    ] Initializing speech engine...
[2026-10-25 07:52:18,280.280 INFO    ] 2026-10-25 07:52:18
[2026-10-25 07:52:18,560.560 INFO    ] 2026-10-25 07:52:18
[2026-10-25 07:52:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:52:19,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:52:19,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:52:20,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:52:20,024.024 INFO    ] time= 25/10/2026 07:52:20
[2026-10-25 07:52:20,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:52:20,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:52:20,098.098 INFO    ] No existing commands found in stream
[2026-10-25 07:52:25,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:52:25,114.114 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 07:52:25,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:52:25,736.736 INFO    ] Checking for system updates...
[2026-10-25 07:52:25,777.777 INFO    ] 200
[2026-10-25 07:52:25,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:25,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:25,838.838 INFO    ] No update needed
[2026-10-25 07:52:25,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 07:52:25,876.876 INFO    ] 200
[2026-10-25 07:52:25,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:25,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:52:26,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:26,079.079 INFO    ] No camera update needed
[2026-10-25 07:52:26,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:52:26,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:52:26,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:52:26,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:52:28,136.136 INFO    ] ================================================
[2026-10-25 07:52:28,151.151 INFO    ] Launching Daemon at Sun Oct 25 07:52:28 IST 2026
[2026-10-25 07:52:28,162.162 INFO    ] ================================================
[2026-10-25 07:52:28,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:52:28
[2026-10-25 07:52:29,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:52:29,636.636 INFO    ] Initializing speech engine...
[2026-10-25 07:52:29,644.644 INFO    ] 2026-10-25 07:52:29
[2026-10-25 07:52:29,948.948 INFO    ] 2026-10-25 07:52:29
[2026-10-25 07:52:29,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:52:30,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:52:30,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:52:30,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:52:30,337.337 INFO    ] time= 25/10/2026 07:52:30
[2026-10-25 07:52:30,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:52:30,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:52:30,465.465 INFO    ] No existing commands found in stream
[2026-10-25 07:52:35,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:52:35,478.478 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 07:52:36,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:52:36,891.891 INFO    ] Checking for system updates...
[2026-10-25 07:52:36,932.932 INFO    ] 200
[2026-10-25 07:52:36,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:36,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:52:36,997.997 INFO    ] No update needed
[2026-10-25 07:52:37,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 07:52:37,034.034 INFO    ] 200
[2026-10-25 07:52:37,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:37,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:52:37,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:52:37,306.306 INFO    ] No camera update needed
[2026-10-25 07:52:37,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:52:37,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:52:37,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:52:37,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:52:39,366.366 INFO    ] ================================================
[2026-10-25 07:52:39,381.381 INFO    ] Launching Daemon at Sun Oct 25 07:52:39 IST 2026
[2026-10-25 07:52:39,392.392 INFO    ] ================================================
[2026-10-25 07:52:39,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:52:39
[2026-10-25 07:52:40,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:52:40,835.835 INFO    ] Initializing speech engine...
[2026-10-25 07:52:40,842.842 INFO    ] 2026-10-25 07:52:40
[2026-10-25 07:52:41,137.137 INFO    ] 2026-10-25 07:52:41
[2026-10-25 07:52:41,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:52:41,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:52:41,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:52:41,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:52:41,509.509 INFO    ] time= 25/10/2026 07:52:41
[2026-10-25 07:52:41,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:52:41,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:52:41,594.594 INFO    ] No existing commands found in stream
[2026-10-25 07:52:46,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:52:46,608.608 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 07:52:50,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:52:50,790.790 INFO    ] Checking for system updates...
[2026-10-25 07:52:50,827.827 INFO    ] 200
[2026-10-25 07:52:50,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:50,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:50,885.885 INFO    ] No update needed
[2026-10-25 07:52:50,888.888 INFO    ] Checking for camera pi updates...
[2026-10-25 07:52:50,921.921 INFO    ] 200
[2026-10-25 07:52:50,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:52:50,965.965 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:52:51,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:52:51,015.015 INFO    ] No camera update needed
[2026-10-25 07:52:51,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:52:51,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:52:51,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:52:51,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:52:53,069.069 INFO    ] ================================================
[2026-10-25 07:52:53,085.085 INFO    ] Launching Daemon at Sun Oct 25 07:52:53 IST 2026
[2026-10-25 07:52:53,097.097 INFO    ] ================================================
[2026-10-25 07:52:53,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:52:53
[2026-10-25 07:52:54,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:52:54,572.572 INFO    ] Initializing speech engine...
[2026-10-25 07:52:54,581.581 INFO    ] 2026-10-25 07:52:54
[2026-10-25 07:52:54,886.886 INFO    ] 2026-10-25 07:52:54
[2026-10-25 07:52:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:52:55,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:52:55,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:52:55,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:52:55,274.274 INFO    ] time= 25/10/2026 07:52:55
[2026-10-25 07:52:55,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:52:55,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:52:55,401.401 INFO    ] No existing commands found in stream
[2026-10-25 07:53:00,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:53:00,417.417 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 07:53:01,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:53:01,287.287 INFO    ] Checking for system updates...
[2026-10-25 07:53:01,324.324 INFO    ] 200
[2026-10-25 07:53:01,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:01,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:01,389.389 INFO    ] No update needed
[2026-10-25 07:53:01,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 07:53:01,441.441 INFO    ] 200
[2026-10-25 07:53:01,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:01,555.555 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:53:01,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:01,603.603 INFO    ] No camera update needed
[2026-10-25 07:53:01,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:53:01,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:53:01,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:53:01,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:53:03,668.668 INFO    ] ================================================
[2026-10-25 07:53:03,684.684 INFO    ] Launching Daemon at Sun Oct 25 07:53:03 IST 2026
[2026-10-25 07:53:03,695.695 INFO    ] ================================================
[2026-10-25 07:53:04,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:53:04
[2026-10-25 07:53:04,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:53:05,213.213 INFO    ] Initializing speech engine...
[2026-10-25 07:53:05,228.228 INFO    ] 2026-10-25 07:53:05
[2026-10-25 07:53:05,480.480 INFO    ] 2026-10-25 07:53:05
[2026-10-25 07:53:05,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:53:06,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:53:06,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:53:06,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:53:06,944.944 INFO    ] time= 25/10/2026 07:53:06
[2026-10-25 07:53:06,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:53:06,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:53:07,032.032 INFO    ] No existing commands found in stream
[2026-10-25 07:53:12,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:53:12,054.054 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 07:53:14,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:53:14,331.331 INFO    ] Checking for system updates...
[2026-10-25 07:53:14,366.366 INFO    ] 200
[2026-10-25 07:53:14,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:14,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:14,425.425 INFO    ] No update needed
[2026-10-25 07:53:14,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 07:53:14,465.465 INFO    ] 200
[2026-10-25 07:53:14,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:14,509.509 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:53:14,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:14,563.563 INFO    ] No camera update needed
[2026-10-25 07:53:14,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:53:14,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:53:14,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:53:14,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:53:16,620.620 INFO    ] ================================================
[2026-10-25 07:53:16,635.635 INFO    ] Launching Daemon at Sun Oct 25 07:53:16 IST 2026
[2026-10-25 07:53:16,646.646 INFO    ] ================================================
[2026-10-25 07:53:17,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:53:17
[2026-10-25 07:53:17,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:53:18,187.187 INFO    ] Initializing speech engine...
[2026-10-25 07:53:18,201.201 INFO    ] 2026-10-25 07:53:18
[2026-10-25 07:53:18,468.468 INFO    ] 2026-10-25 07:53:18
[2026-10-25 07:53:18,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:53:18,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:53:18,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:53:18,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:53:18,945.945 INFO    ] time= 25/10/2026 07:53:18
[2026-10-25 07:53:19,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:53:19,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:53:19,094.094 INFO    ] No existing commands found in stream
[2026-10-25 07:53:24,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:53:24,109.109 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 07:53:25,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:53:25,114.114 INFO    ] Checking for system updates...
[2026-10-25 07:53:25,150.150 INFO    ] 200
[2026-10-25 07:53:25,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:25,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:53:25,208.208 INFO    ] No update needed
[2026-10-25 07:53:25,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 07:53:25,246.246 INFO    ] 200
[2026-10-25 07:53:25,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:25,290.290 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:53:25,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:53:25,342.342 INFO    ] No camera update needed
[2026-10-25 07:53:25,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:53:25,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:53:25,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:53:25,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:53:27,396.396 INFO    ] ================================================
[2026-10-25 07:53:27,412.412 INFO    ] Launching Daemon at Sun Oct 25 07:53:27 IST 2026
[2026-10-25 07:53:27,423.423 INFO    ] ================================================
[2026-10-25 07:53:28,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:53:28
[2026-10-25 07:53:28,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:53:28,877.877 INFO    ] Initializing speech engine...
[2026-10-25 07:53:28,892.892 INFO    ] 2026-10-25 07:53:28
[2026-10-25 07:53:29,178.178 INFO    ] 2026-10-25 07:53:29
[2026-10-25 07:53:29,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:53:29,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:53:29,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:53:29,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:53:29,550.550 INFO    ] time= 25/10/2026 07:53:29
[2026-10-25 07:53:29,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:53:29,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:53:29,680.680 INFO    ] No existing commands found in stream
[2026-10-25 07:53:34,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:53:34,695.695 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 07:53:38,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:53:38,910.910 INFO    ] Checking for system updates...
[2026-10-25 07:53:38,949.949 INFO    ] 200
[2026-10-25 07:53:38,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:39,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:53:39,013.013 INFO    ] No update needed
[2026-10-25 07:53:39,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 07:53:39,050.050 INFO    ] 200
[2026-10-25 07:53:39,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:39,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:53:39,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:53:39,144.144 INFO    ] No camera update needed
[2026-10-25 07:53:39,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:53:39,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:53:39,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:53:39,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:53:41,199.199 INFO    ] ================================================
[2026-10-25 07:53:41,219.219 INFO    ] Launching Daemon at Sun Oct 25 07:53:41 IST 2026
[2026-10-25 07:53:41,236.236 INFO    ] ================================================
[2026-10-25 07:53:41,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:53:41
[2026-10-25 07:53:42,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:53:42,714.714 INFO    ] Initializing speech engine...
[2026-10-25 07:53:42,730.730 INFO    ] 2026-10-25 07:53:42
[2026-10-25 07:53:43,017.017 INFO    ] 2026-10-25 07:53:42
[2026-10-25 07:53:43,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:53:43,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:53:43,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:53:43,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:53:43,433.433 INFO    ] time= 25/10/2026 07:53:43
[2026-10-25 07:53:43,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:53:43,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:53:43,615.615 INFO    ] No existing commands found in stream
[2026-10-25 07:53:48,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:53:48,638.638 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 07:53:51,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:53:51,531.531 INFO    ] Checking for system updates...
[2026-10-25 07:53:51,567.567 INFO    ] 200
[2026-10-25 07:53:51,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:51,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:51,624.624 INFO    ] No update needed
[2026-10-25 07:53:51,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 07:53:51,661.661 INFO    ] 200
[2026-10-25 07:53:51,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:53:51,708.708 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:53:51,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:53:51,759.759 INFO    ] No camera update needed
[2026-10-25 07:53:51,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:53:51,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:53:51,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:53:51,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:53:53,815.815 INFO    ] ================================================
[2026-10-25 07:53:53,831.831 INFO    ] Launching Daemon at Sun Oct 25 07:53:53 IST 2026
[2026-10-25 07:53:53,841.841 INFO    ] ================================================
[2026-10-25 07:53:54,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:53:54
[2026-10-25 07:53:55,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:53:55,444.444 INFO    ] Initializing speech engine...
[2026-10-25 07:53:55,457.457 INFO    ] 2026-10-25 07:53:55
[2026-10-25 07:53:55,735.735 INFO    ] 2026-10-25 07:53:55
[2026-10-25 07:53:55,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:53:56,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:53:56,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:53:56,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:53:56,216.216 INFO    ] time= 25/10/2026 07:53:56
[2026-10-25 07:53:56,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:53:56,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:53:56,406.406 INFO    ] No existing commands found in stream
[2026-10-25 07:54:01,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:54:01,437.437 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 07:54:03,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:54:03,595.595 INFO    ] Checking for system updates...
[2026-10-25 07:54:03,633.633 INFO    ] 200
[2026-10-25 07:54:03,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:03,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:54:03,694.694 INFO    ] No update needed
[2026-10-25 07:54:03,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 07:54:03,737.737 INFO    ] 200
[2026-10-25 07:54:03,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:03,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:54:03,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:54:03,848.848 INFO    ] No camera update needed
[2026-10-25 07:54:03,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:54:03,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:54:03,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:54:03,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:54:05,903.903 INFO    ] ================================================
[2026-10-25 07:54:05,918.918 INFO    ] Launching Daemon at Sun Oct 25 07:54:05 IST 2026
[2026-10-25 07:54:05,929.929 INFO    ] ================================================
[2026-10-25 07:54:06,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:54:06
[2026-10-25 07:54:07,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:54:07,336.336 INFO    ] Initializing speech engine...
[2026-10-25 07:54:07,345.345 INFO    ] 2026-10-25 07:54:07
[2026-10-25 07:54:07,662.662 INFO    ] 2026-10-25 07:54:07
[2026-10-25 07:54:07,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:54:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:54:07,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:54:08,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:54:08,037.037 INFO    ] time= 25/10/2026 07:54:08
[2026-10-25 07:54:08,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:54:08,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:54:08,228.228 INFO    ] No existing commands found in stream
[2026-10-25 07:54:13,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:54:13,248.248 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 07:54:16,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:54:16,402.402 INFO    ] Checking for system updates...
[2026-10-25 07:54:16,442.442 INFO    ] 200
[2026-10-25 07:54:16,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:16,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:16,501.501 INFO    ] No update needed
[2026-10-25 07:54:16,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 07:54:16,539.539 INFO    ] 200
[2026-10-25 07:54:16,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:16,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:54:16,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:16,640.640 INFO    ] No camera update needed
[2026-10-25 07:54:16,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:54:16,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:54:16,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:54:16,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:54:18,699.699 INFO    ] ================================================
[2026-10-25 07:54:18,714.714 INFO    ] Launching Daemon at Sun Oct 25 07:54:18 IST 2026
[2026-10-25 07:54:18,725.725 INFO    ] ================================================
[2026-10-25 07:54:19,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:54:19
[2026-10-25 07:54:19,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:54:20,171.171 INFO    ] Initializing speech engine...
[2026-10-25 07:54:20,180.180 INFO    ] 2026-10-25 07:54:20
[2026-10-25 07:54:20,427.427 INFO    ] 2026-10-25 07:54:20
[2026-10-25 07:54:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:54:20,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:54:20,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:54:20,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:54:20,805.805 INFO    ] time= 25/10/2026 07:54:20
[2026-10-25 07:54:20,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:54:20,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:54:21,000.000 INFO    ] No existing commands found in stream
[2026-10-25 07:54:26,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:54:26,016.016 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 07:54:29,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:54:29,549.549 INFO    ] Checking for system updates...
[2026-10-25 07:54:29,595.595 INFO    ] 200
[2026-10-25 07:54:29,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:29,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:29,663.663 INFO    ] No update needed
[2026-10-25 07:54:29,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 07:54:29,706.706 INFO    ] 200
[2026-10-25 07:54:29,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:29,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:54:29,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:29,917.917 INFO    ] No camera update needed
[2026-10-25 07:54:29,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:54:29,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:54:29,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:54:29,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:54:31,986.986 INFO    ] ================================================
[2026-10-25 07:54:32,002.002 INFO    ] Launching Daemon at Sun Oct 25 07:54:31 IST 2026
[2026-10-25 07:54:32,014.014 INFO    ] ================================================
[2026-10-25 07:54:32,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:54:32
[2026-10-25 07:54:33,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:54:33,509.509 INFO    ] Initializing speech engine...
[2026-10-25 07:54:33,516.516 INFO    ] 2026-10-25 07:54:33
[2026-10-25 07:54:33,759.759 INFO    ] 2026-10-25 07:54:33
[2026-10-25 07:54:33,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:54:33,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:54:34,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:54:34,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:54:34,228.228 INFO    ] time= 25/10/2026 07:54:34
[2026-10-25 07:54:34,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:54:34,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:54:34,399.399 INFO    ] No existing commands found in stream
[2026-10-25 07:54:39,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:54:39,415.415 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 07:54:41,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:54:41,469.469 INFO    ] Checking for system updates...
[2026-10-25 07:54:41,505.505 INFO    ] 200
[2026-10-25 07:54:41,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:41,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:41,564.564 INFO    ] No update needed
[2026-10-25 07:54:41,566.566 INFO    ] Checking for camera pi updates...
[2026-10-25 07:54:41,604.604 INFO    ] 200
[2026-10-25 07:54:41,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:41,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:54:41,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:41,709.709 INFO    ] No camera update needed
[2026-10-25 07:54:41,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:54:41,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:54:41,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:54:41,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:54:43,772.772 INFO    ] ================================================
[2026-10-25 07:54:43,787.787 INFO    ] Launching Daemon at Sun Oct 25 07:54:43 IST 2026
[2026-10-25 07:54:43,798.798 INFO    ] ================================================
[2026-10-25 07:54:44,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:54:44
[2026-10-25 07:54:45,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:54:45,465.465 INFO    ] Initializing speech engine...
[2026-10-25 07:54:45,471.471 INFO    ] 2026-10-25 07:54:45
[2026-10-25 07:54:45,782.782 INFO    ] 2026-10-25 07:54:45
[2026-10-25 07:54:45,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:54:46,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:54:46,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:54:46,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:54:46,289.289 INFO    ] time= 25/10/2026 07:54:46
[2026-10-25 07:54:46,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:54:46,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:54:46,440.440 INFO    ] No existing commands found in stream
[2026-10-25 07:54:51,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:54:51,457.457 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 07:54:53,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:54:53,116.116 INFO    ] Checking for system updates...
[2026-10-25 07:54:53,154.154 INFO    ] 200
[2026-10-25 07:54:53,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:53,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:53,213.213 INFO    ] No update needed
[2026-10-25 07:54:53,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 07:54:53,251.251 INFO    ] 200
[2026-10-25 07:54:53,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:54:53,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:54:53,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:54:53,335.335 INFO    ] No camera update needed
[2026-10-25 07:54:53,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:54:53,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:54:53,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:54:53,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:54:55,393.393 INFO    ] ================================================
[2026-10-25 07:54:55,408.408 INFO    ] Launching Daemon at Sun Oct 25 07:54:55 IST 2026
[2026-10-25 07:54:55,419.419 INFO    ] ================================================
[2026-10-25 07:54:56,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:54:56
[2026-10-25 07:54:56,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:54:57,062.062 INFO    ] Initializing speech engine...
[2026-10-25 07:54:57,073.073 INFO    ] 2026-10-25 07:54:57
[2026-10-25 07:54:57,350.350 INFO    ] 2026-10-25 07:54:57
[2026-10-25 07:54:57,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:54:57,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:54:57,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:54:57,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:54:57,801.801 INFO    ] time= 25/10/2026 07:54:57
[2026-10-25 07:54:57,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:54:57,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:54:57,958.958 INFO    ] No existing commands found in stream
[2026-10-25 07:55:02,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:55:02,975.975 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 07:55:07,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:55:07,749.749 INFO    ] Checking for system updates...
[2026-10-25 07:55:07,805.805 INFO    ] 200
[2026-10-25 07:55:07,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:07,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:07,865.865 INFO    ] No update needed
[2026-10-25 07:55:07,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 07:55:07,905.905 INFO    ] 200
[2026-10-25 07:55:07,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:07,958.958 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:55:08,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:08,017.017 INFO    ] No camera update needed
[2026-10-25 07:55:08,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:55:08,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:55:08,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:55:08,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:55:10,073.073 INFO    ] ================================================
[2026-10-25 07:55:10,088.088 INFO    ] Launching Daemon at Sun Oct 25 07:55:10 IST 2026
[2026-10-25 07:55:10,099.099 INFO    ] ================================================
[2026-10-25 07:55:10,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:55:10
[2026-10-25 07:55:11,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:55:11,729.729 INFO    ] Initializing speech engine...
[2026-10-25 07:55:11,743.743 INFO    ] 2026-10-25 07:55:11
[2026-10-25 07:55:12,059.059 INFO    ] 2026-10-25 07:55:12
[2026-10-25 07:55:12,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:55:12,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:55:12,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:55:12,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:55:12,578.578 INFO    ] time= 25/10/2026 07:55:12
[2026-10-25 07:55:12,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:55:12,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:55:12,729.729 INFO    ] No existing commands found in stream
[2026-10-25 07:55:17,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:55:17,752.752 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 07:55:20,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:55:20,839.839 INFO    ] Checking for system updates...
[2026-10-25 07:55:20,877.877 INFO    ] 200
[2026-10-25 07:55:20,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:20,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:55:20,936.936 INFO    ] No update needed
[2026-10-25 07:55:20,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 07:55:20,972.972 INFO    ] 200
[2026-10-25 07:55:20,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:21,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:55:21,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:55:21,073.073 INFO    ] No camera update needed
[2026-10-25 07:55:21,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:55:21,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:55:21,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:55:21,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:55:23,128.128 INFO    ] ================================================
[2026-10-25 07:55:23,143.143 INFO    ] Launching Daemon at Sun Oct 25 07:55:23 IST 2026
[2026-10-25 07:55:23,154.154 INFO    ] ================================================
[2026-10-25 07:55:23,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:55:23
[2026-10-25 07:55:24,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:55:24,579.579 INFO    ] Initializing speech engine...
[2026-10-25 07:55:24,586.586 INFO    ] 2026-10-25 07:55:24
[2026-10-25 07:55:24,886.886 INFO    ] 2026-10-25 07:55:24
[2026-10-25 07:55:24,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:55:25,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:55:25,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:55:25,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:55:25,272.272 INFO    ] time= 25/10/2026 07:55:25
[2026-10-25 07:55:25,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:55:25,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:55:25,399.399 INFO    ] No existing commands found in stream
[2026-10-25 07:55:30,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:55:30,415.415 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 07:55:31,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:55:31,013.013 INFO    ] Checking for system updates...
[2026-10-25 07:55:31,050.050 INFO    ] 200
[2026-10-25 07:55:31,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:31,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:31,113.113 INFO    ] No update needed
[2026-10-25 07:55:31,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 07:55:31,149.149 INFO    ] 200
[2026-10-25 07:55:31,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:31,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:55:31,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:31,246.246 INFO    ] No camera update needed
[2026-10-25 07:55:31,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:55:31,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:55:31,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:55:31,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:55:33,301.301 INFO    ] ================================================
[2026-10-25 07:55:33,316.316 INFO    ] Launching Daemon at Sun Oct 25 07:55:33 IST 2026
[2026-10-25 07:55:33,327.327 INFO    ] ================================================
[2026-10-25 07:55:33,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:55:33
[2026-10-25 07:55:34,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:55:34,781.781 INFO    ] Initializing speech engine...
[2026-10-25 07:55:34,800.800 INFO    ] 2026-10-25 07:55:34
[2026-10-25 07:55:35,080.080 INFO    ] 2026-10-25 07:55:35
[2026-10-25 07:55:35,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:55:37,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:55:37,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:55:37,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:55:37,909.909 INFO    ] time= 25/10/2026 07:55:37
[2026-10-25 07:55:37,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:55:37,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:55:38,066.066 INFO    ] No existing commands found in stream
[2026-10-25 07:55:43,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:55:43,084.084 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 07:55:45,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:55:45,144.144 INFO    ] Checking for system updates...
[2026-10-25 07:55:45,186.186 INFO    ] 200
[2026-10-25 07:55:45,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:45,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:45,245.245 INFO    ] No update needed
[2026-10-25 07:55:45,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 07:55:45,282.282 INFO    ] 200
[2026-10-25 07:55:45,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:45,331.331 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:55:45,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:45,380.380 INFO    ] No camera update needed
[2026-10-25 07:55:45,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:55:45,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:55:45,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:55:45,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:55:47,434.434 INFO    ] ================================================
[2026-10-25 07:55:47,449.449 INFO    ] Launching Daemon at Sun Oct 25 07:55:47 IST 2026
[2026-10-25 07:55:47,461.461 INFO    ] ================================================
[2026-10-25 07:55:48,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:55:48
[2026-10-25 07:55:48,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:55:48,859.859 INFO    ] Initializing speech engine...
[2026-10-25 07:55:48,873.873 INFO    ] 2026-10-25 07:55:48
[2026-10-25 07:55:49,134.134 INFO    ] 2026-10-25 07:55:49
[2026-10-25 07:55:49,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:55:49,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:55:49,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:55:49,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:55:49,501.501 INFO    ] time= 25/10/2026 07:55:49
[2026-10-25 07:55:49,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:55:49,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:55:49,680.680 INFO    ] No existing commands found in stream
[2026-10-25 07:55:54,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:55:54,707.707 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 07:55:58,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:55:58,568.568 INFO    ] Checking for system updates...
[2026-10-25 07:55:58,608.608 INFO    ] 200
[2026-10-25 07:55:58,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:58,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:58,666.666 INFO    ] No update needed
[2026-10-25 07:55:58,672.672 INFO    ] Checking for camera pi updates...
[2026-10-25 07:55:58,709.709 INFO    ] 200
[2026-10-25 07:55:58,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:55:58,757.757 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:55:58,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:55:58,807.807 INFO    ] No camera update needed
[2026-10-25 07:55:58,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:55:58,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:55:58,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:55:58,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:56:00,863.863 INFO    ] ================================================
[2026-10-25 07:56:00,879.879 INFO    ] Launching Daemon at Sun Oct 25 07:56:00 IST 2026
[2026-10-25 07:56:00,889.889 INFO    ] ================================================
[2026-10-25 07:56:01,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:56:01
[2026-10-25 07:56:02,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:56:02,534.534 INFO    ] Initializing speech engine...
[2026-10-25 07:56:02,545.545 INFO    ] 2026-10-25 07:56:02
[2026-10-25 07:56:02,844.844 INFO    ] 2026-10-25 07:56:02
[2026-10-25 07:56:02,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:56:03,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:56:03,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:56:03,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:56:03,393.393 INFO    ] time= 25/10/2026 07:56:03
[2026-10-25 07:56:03,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:56:03,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:56:03,567.567 INFO    ] No existing commands found in stream
[2026-10-25 07:56:08,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:56:08,582.582 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 07:56:11,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:56:11,713.713 INFO    ] Checking for system updates...
[2026-10-25 07:56:11,753.753 INFO    ] 200
[2026-10-25 07:56:11,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:11,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:56:11,813.813 INFO    ] No update needed
[2026-10-25 07:56:11,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 07:56:11,851.851 INFO    ] 200
[2026-10-25 07:56:11,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:11,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:56:11,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:56:11,962.962 INFO    ] No camera update needed
[2026-10-25 07:56:11,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:56:11,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:56:11,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:56:11,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:56:14,017.017 INFO    ] ================================================
[2026-10-25 07:56:14,033.033 INFO    ] Launching Daemon at Sun Oct 25 07:56:14 IST 2026
[2026-10-25 07:56:14,045.045 INFO    ] ================================================
[2026-10-25 07:56:14,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:56:14
[2026-10-25 07:56:15,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:56:15,449.449 INFO    ] Initializing speech engine...
[2026-10-25 07:56:15,455.455 INFO    ] 2026-10-25 07:56:15
[2026-10-25 07:56:15,754.754 INFO    ] 2026-10-25 07:56:15
[2026-10-25 07:56:15,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:56:15,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:56:16,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:56:16,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:56:16,179.179 INFO    ] time= 25/10/2026 07:56:16
[2026-10-25 07:56:16,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:56:16,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:56:16,344.344 INFO    ] No existing commands found in stream
[2026-10-25 07:56:21,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:56:21,366.366 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 07:56:23,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:56:23,642.642 INFO    ] Checking for system updates...
[2026-10-25 07:56:23,683.683 INFO    ] 200
[2026-10-25 07:56:23,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:23,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:23,748.748 INFO    ] No update needed
[2026-10-25 07:56:23,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 07:56:23,788.788 INFO    ] 200
[2026-10-25 07:56:23,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:23,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:56:23,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:23,880.880 INFO    ] No camera update needed
[2026-10-25 07:56:23,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:56:23,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:56:23,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:56:23,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:56:25,935.935 INFO    ] ================================================
[2026-10-25 07:56:25,951.951 INFO    ] Launching Daemon at Sun Oct 25 07:56:25 IST 2026
[2026-10-25 07:56:25,962.962 INFO    ] ================================================
[2026-10-25 07:56:26,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:56:26
[2026-10-25 07:56:27,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:56:27,360.360 INFO    ] Initializing speech engine...
[2026-10-25 07:56:27,383.383 INFO    ] 2026-10-25 07:56:27
[2026-10-25 07:56:27,637.637 INFO    ] 2026-10-25 07:56:27
[2026-10-25 07:56:27,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:56:27,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:56:27,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:56:28,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:56:28,014.014 INFO    ] time= 25/10/2026 07:56:28
[2026-10-25 07:56:28,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:56:28,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:56:28,181.181 INFO    ] No existing commands found in stream
[2026-10-25 07:56:33,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:56:33,205.205 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 07:56:34,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:56:34,853.853 INFO    ] Checking for system updates...
[2026-10-25 07:56:34,888.888 INFO    ] 200
[2026-10-25 07:56:34,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:34,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:34,954.954 INFO    ] No update needed
[2026-10-25 07:56:34,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 07:56:34,995.995 INFO    ] 200
[2026-10-25 07:56:34,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:35,043.043 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:56:35,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:35,101.101 INFO    ] No camera update needed
[2026-10-25 07:56:35,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:56:35,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:56:35,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:56:35,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:56:37,157.157 INFO    ] ================================================
[2026-10-25 07:56:37,173.173 INFO    ] Launching Daemon at Sun Oct 25 07:56:37 IST 2026
[2026-10-25 07:56:37,184.184 INFO    ] ================================================
[2026-10-25 07:56:37,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:56:37
[2026-10-25 07:56:38,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:56:38,640.640 INFO    ] Initializing speech engine...
[2026-10-25 07:56:38,654.654 INFO    ] 2026-10-25 07:56:38
[2026-10-25 07:56:38,965.965 INFO    ] 2026-10-25 07:56:38
[2026-10-25 07:56:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:56:39,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:56:39,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:56:39,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:56:39,470.470 INFO    ] time= 25/10/2026 07:56:39
[2026-10-25 07:56:39,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:56:39,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:56:39,625.625 INFO    ] No existing commands found in stream
[2026-10-25 07:56:44,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:56:44,644.644 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 07:56:46,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:56:46,095.095 INFO    ] Checking for system updates...
[2026-10-25 07:56:46,136.136 INFO    ] 200
[2026-10-25 07:56:46,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:46,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:46,202.202 INFO    ] No update needed
[2026-10-25 07:56:46,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 07:56:46,238.238 INFO    ] 200
[2026-10-25 07:56:46,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:46,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:56:46,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:56:46,332.332 INFO    ] No camera update needed
[2026-10-25 07:56:46,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:56:46,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:56:46,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:56:46,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:56:48,388.388 INFO    ] ================================================
[2026-10-25 07:56:48,404.404 INFO    ] Launching Daemon at Sun Oct 25 07:56:48 IST 2026
[2026-10-25 07:56:48,415.415 INFO    ] ================================================
[2026-10-25 07:56:48,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:56:48
[2026-10-25 07:56:49,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:56:49,842.842 INFO    ] Initializing speech engine...
[2026-10-25 07:56:49,847.847 INFO    ] 2026-10-25 07:56:49
[2026-10-25 07:56:50,092.092 INFO    ] 2026-10-25 07:56:50
[2026-10-25 07:56:50,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:56:50,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:56:50,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:56:50,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:56:50,531.531 INFO    ] time= 25/10/2026 07:56:50
[2026-10-25 07:56:50,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:56:50,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:56:50,704.704 INFO    ] No existing commands found in stream
[2026-10-25 07:56:55,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:56:55,719.719 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 07:56:59,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:56:59,601.601 INFO    ] Checking for system updates...
[2026-10-25 07:56:59,642.642 INFO    ] 200
[2026-10-25 07:56:59,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:59,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:56:59,707.707 INFO    ] No update needed
[2026-10-25 07:56:59,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 07:56:59,747.747 INFO    ] 200
[2026-10-25 07:56:59,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:56:59,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:56:59,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:56:59,856.856 INFO    ] No camera update needed
[2026-10-25 07:56:59,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:56:59,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:56:59,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:56:59,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:57:01,918.918 INFO    ] ================================================
[2026-10-25 07:57:01,944.944 INFO    ] Launching Daemon at Sun Oct 25 07:57:01 IST 2026
[2026-10-25 07:57:01,966.966 INFO    ] ================================================
[2026-10-25 07:57:02,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:57:02
[2026-10-25 07:57:03,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:57:03,636.636 INFO    ] Initializing speech engine...
[2026-10-25 07:57:03,661.661 INFO    ] 2026-10-25 07:57:03
[2026-10-25 07:57:03,938.938 INFO    ] 2026-10-25 07:57:03
[2026-10-25 07:57:03,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:57:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:57:04,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:57:04,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:57:04,312.312 INFO    ] time= 25/10/2026 07:57:04
[2026-10-25 07:57:04,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:57:04,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:57:04,389.389 INFO    ] No existing commands found in stream
[2026-10-25 07:57:09,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:57:09,404.404 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 07:57:11,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:57:11,836.836 INFO    ] Checking for system updates...
[2026-10-25 07:57:11,873.873 INFO    ] 200
[2026-10-25 07:57:11,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:11,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:57:11,938.938 INFO    ] No update needed
[2026-10-25 07:57:11,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 07:57:11,978.978 INFO    ] 200
[2026-10-25 07:57:11,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:12,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:57:12,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:57:12,071.071 INFO    ] No camera update needed
[2026-10-25 07:57:12,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:57:12,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:57:12,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:57:12,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:57:14,128.128 INFO    ] ================================================
[2026-10-25 07:57:14,144.144 INFO    ] Launching Daemon at Sun Oct 25 07:57:14 IST 2026
[2026-10-25 07:57:14,155.155 INFO    ] ================================================
[2026-10-25 07:57:14,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:57:14
[2026-10-25 07:57:15,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:57:15,793.793 INFO    ] Initializing speech engine...
[2026-10-25 07:57:15,809.809 INFO    ] 2026-10-25 07:57:15
[2026-10-25 07:57:16,119.119 INFO    ] 2026-10-25 07:57:16
[2026-10-25 07:57:16,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:57:16,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:57:16,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:57:16,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:57:16,626.626 INFO    ] time= 25/10/2026 07:57:16
[2026-10-25 07:57:16,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:57:16,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:57:16,768.768 INFO    ] No existing commands found in stream
[2026-10-25 07:57:21,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:57:21,795.795 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 07:57:26,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:57:26,034.034 INFO    ] Checking for system updates...
[2026-10-25 07:57:26,075.075 INFO    ] 200
[2026-10-25 07:57:26,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:26,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:57:26,133.133 INFO    ] No update needed
[2026-10-25 07:57:26,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 07:57:26,169.169 INFO    ] 200
[2026-10-25 07:57:26,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:26,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:57:26,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:57:26,265.265 INFO    ] No camera update needed
[2026-10-25 07:57:26,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:57:26,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:57:26,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:57:26,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:57:28,321.321 INFO    ] ================================================
[2026-10-25 07:57:28,337.337 INFO    ] Launching Daemon at Sun Oct 25 07:57:28 IST 2026
[2026-10-25 07:57:28,348.348 INFO    ] ================================================
[2026-10-25 07:57:28,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:57:28
[2026-10-25 07:57:29,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:57:29,781.781 INFO    ] Initializing speech engine...
[2026-10-25 07:57:29,801.801 INFO    ] 2026-10-25 07:57:29
[2026-10-25 07:57:30,063.063 INFO    ] 2026-10-25 07:57:30
[2026-10-25 07:57:30,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:57:30,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:57:30,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:57:30,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:57:30,528.528 INFO    ] time= 25/10/2026 07:57:30
[2026-10-25 07:57:30,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:57:30,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:57:30,668.668 INFO    ] No existing commands found in stream
[2026-10-25 07:57:35,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:57:35,683.683 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 07:57:38,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:57:38,826.826 INFO    ] Checking for system updates...
[2026-10-25 07:57:38,868.868 INFO    ] 200
[2026-10-25 07:57:38,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:38,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:57:38,940.940 INFO    ] No update needed
[2026-10-25 07:57:38,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 07:57:38,983.983 INFO    ] 200
[2026-10-25 07:57:38,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:39,033.033 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:57:39,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:57:39,093.093 INFO    ] No camera update needed
[2026-10-25 07:57:39,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:57:39,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:57:39,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:57:39,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:57:41,156.156 INFO    ] ================================================
[2026-10-25 07:57:41,171.171 INFO    ] Launching Daemon at Sun Oct 25 07:57:41 IST 2026
[2026-10-25 07:57:41,182.182 INFO    ] ================================================
[2026-10-25 07:57:41,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:57:41
[2026-10-25 07:57:42,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:57:42,832.832 INFO    ] Initializing speech engine...
[2026-10-25 07:57:42,842.842 INFO    ] 2026-10-25 07:57:42
[2026-10-25 07:57:43,123.123 INFO    ] 2026-10-25 07:57:43
[2026-10-25 07:57:43,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:57:43,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:57:43,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:57:43,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:57:43,504.504 INFO    ] time= 25/10/2026 07:57:43
[2026-10-25 07:57:43,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:57:43,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:57:43,685.685 INFO    ] No existing commands found in stream
[2026-10-25 07:57:48,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:57:48,717.717 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 07:57:50,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:57:50,240.240 INFO    ] Checking for system updates...
[2026-10-25 07:57:50,281.281 INFO    ] 200
[2026-10-25 07:57:50,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:50,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:57:50,340.340 INFO    ] No update needed
[2026-10-25 07:57:50,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 07:57:50,380.380 INFO    ] 200
[2026-10-25 07:57:50,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:57:50,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:57:50,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:57:50,479.479 INFO    ] No camera update needed
[2026-10-25 07:57:50,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:57:50,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:57:50,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:57:50,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:57:52,535.535 INFO    ] ================================================
[2026-10-25 07:57:52,552.552 INFO    ] Launching Daemon at Sun Oct 25 07:57:52 IST 2026
[2026-10-25 07:57:52,562.562 INFO    ] ================================================
[2026-10-25 07:57:53,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:57:53
[2026-10-25 07:57:53,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:57:54,062.062 INFO    ] Initializing speech engine...
[2026-10-25 07:57:54,071.071 INFO    ] 2026-10-25 07:57:54
[2026-10-25 07:57:54,320.320 INFO    ] 2026-10-25 07:57:54
[2026-10-25 07:57:54,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:57:54,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:57:54,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:57:54,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:57:54,798.798 INFO    ] time= 25/10/2026 07:57:54
[2026-10-25 07:57:54,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:57:54,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:57:54,940.940 INFO    ] No existing commands found in stream
[2026-10-25 07:57:59,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:57:59,955.955 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 07:58:02,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:58:02,950.950 INFO    ] Checking for system updates...
[2026-10-25 07:58:02,997.997 INFO    ] 200
[2026-10-25 07:58:02,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:03,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:58:03,073.073 INFO    ] No update needed
[2026-10-25 07:58:03,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 07:58:03,120.120 INFO    ] 200
[2026-10-25 07:58:03,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:03,181.181 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:58:03,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:58:03,242.242 INFO    ] No camera update needed
[2026-10-25 07:58:03,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:58:03,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:58:03,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:58:03,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:58:05,305.305 INFO    ] ================================================
[2026-10-25 07:58:05,320.320 INFO    ] Launching Daemon at Sun Oct 25 07:58:05 IST 2026
[2026-10-25 07:58:05,331.331 INFO    ] ================================================
[2026-10-25 07:58:05,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:58:05
[2026-10-25 07:58:06,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:58:06,959.959 INFO    ] Initializing speech engine...
[2026-10-25 07:58:06,974.974 INFO    ] 2026-10-25 07:58:06
[2026-10-25 07:58:07,250.250 INFO    ] 2026-10-25 07:58:07
[2026-10-25 07:58:07,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:58:08,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:58:08,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:58:08,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:58:08,846.846 INFO    ] time= 25/10/2026 07:58:08
[2026-10-25 07:58:08,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:58:08,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:58:08,913.913 INFO    ] No existing commands found in stream
[2026-10-25 07:58:13,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:58:13,926.926 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 07:58:15,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:58:15,684.684 INFO    ] Checking for system updates...
[2026-10-25 07:58:15,721.721 INFO    ] 200
[2026-10-25 07:58:15,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:15,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:15,782.782 INFO    ] No update needed
[2026-10-25 07:58:15,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 07:58:15,822.822 INFO    ] 200
[2026-10-25 07:58:15,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:15,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:58:15,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:15,931.931 INFO    ] No camera update needed
[2026-10-25 07:58:15,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:58:15,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:58:15,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:58:15,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:58:17,988.988 INFO    ] ================================================
[2026-10-25 07:58:18,004.004 INFO    ] Launching Daemon at Sun Oct 25 07:58:17 IST 2026
[2026-10-25 07:58:18,014.014 INFO    ] ================================================
[2026-10-25 07:58:18,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:58:18
[2026-10-25 07:58:19,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:58:19,464.464 INFO    ] Initializing speech engine...
[2026-10-25 07:58:19,471.471 INFO    ] 2026-10-25 07:58:19
[2026-10-25 07:58:19,733.733 INFO    ] 2026-10-25 07:58:19
[2026-10-25 07:58:19,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:58:20,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:58:20,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:58:20,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:58:20,200.200 INFO    ] time= 25/10/2026 07:58:20
[2026-10-25 07:58:20,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:58:20,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:58:20,377.377 INFO    ] No existing commands found in stream
[2026-10-25 07:58:25,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:58:25,392.392 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 07:58:27,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:58:27,742.742 INFO    ] Checking for system updates...
[2026-10-25 07:58:27,783.783 INFO    ] 200
[2026-10-25 07:58:27,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:27,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:27,873.873 INFO    ] No update needed
[2026-10-25 07:58:27,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 07:58:27,909.909 INFO    ] 200
[2026-10-25 07:58:27,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:27,958.958 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:58:28,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:28,009.009 INFO    ] No camera update needed
[2026-10-25 07:58:28,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:58:28,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:58:28,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:58:28,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:58:30,066.066 INFO    ] ================================================
[2026-10-25 07:58:30,082.082 INFO    ] Launching Daemon at Sun Oct 25 07:58:30 IST 2026
[2026-10-25 07:58:30,093.093 INFO    ] ================================================
[2026-10-25 07:58:30,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:58:30
[2026-10-25 07:58:31,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:58:31,712.712 INFO    ] Initializing speech engine...
[2026-10-25 07:58:31,732.732 INFO    ] 2026-10-25 07:58:31
[2026-10-25 07:58:31,989.989 INFO    ] 2026-10-25 07:58:31
[2026-10-25 07:58:32,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:58:32,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:58:32,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:58:32,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:58:32,375.375 INFO    ] time= 25/10/2026 07:58:32
[2026-10-25 07:58:32,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:58:32,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:58:32,451.451 INFO    ] No existing commands found in stream
[2026-10-25 07:58:37,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:58:37,465.465 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 07:58:39,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 07:58:39,935.935 INFO    ] Checking for system updates...
[2026-10-25 07:58:39,972.972 INFO    ] 200
[2026-10-25 07:58:39,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:40,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:40,039.039 INFO    ] No update needed
[2026-10-25 07:58:40,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 07:58:40,082.082 INFO    ] 200
[2026-10-25 07:58:40,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:40,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:58:40,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:40,292.292 INFO    ] No camera update needed
[2026-10-25 07:58:40,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:58:40,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:58:40,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:58:40,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:58:42,351.351 INFO    ] ================================================
[2026-10-25 07:58:42,366.366 INFO    ] Launching Daemon at Sun Oct 25 07:58:42 IST 2026
[2026-10-25 07:58:42,377.377 INFO    ] ================================================
[2026-10-25 07:58:42,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:58:42
[2026-10-25 07:58:43,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:58:43,855.855 INFO    ] Initializing speech engine...
[2026-10-25 07:58:43,869.869 INFO    ] 2026-10-25 07:58:43
[2026-10-25 07:58:44,130.130 INFO    ] 2026-10-25 07:58:44
[2026-10-25 07:58:44,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:58:44,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:58:44,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:58:44,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:58:44,609.609 INFO    ] time= 25/10/2026 07:58:44
[2026-10-25 07:58:44,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:58:44,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:58:44,759.759 INFO    ] No existing commands found in stream
[2026-10-25 07:58:49,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:58:49,775.775 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 07:58:52,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:58:52,787.787 INFO    ] Checking for system updates...
[2026-10-25 07:58:52,828.828 INFO    ] 200
[2026-10-25 07:58:52,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:52,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:52,889.889 INFO    ] No update needed
[2026-10-25 07:58:52,892.892 INFO    ] Checking for camera pi updates...
[2026-10-25 07:58:52,927.927 INFO    ] 200
[2026-10-25 07:58:52,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:58:52,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:58:53,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:58:53,030.030 INFO    ] No camera update needed
[2026-10-25 07:58:53,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:58:53,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:58:53,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:58:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:58:55,086.086 INFO    ] ================================================
[2026-10-25 07:58:55,105.105 INFO    ] Launching Daemon at Sun Oct 25 07:58:55 IST 2026
[2026-10-25 07:58:55,117.117 INFO    ] ================================================
[2026-10-25 07:58:55,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:58:55
[2026-10-25 07:58:56,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:58:56,742.742 INFO    ] Initializing speech engine...
[2026-10-25 07:58:56,749.749 INFO    ] 2026-10-25 07:58:56
[2026-10-25 07:58:57,037.037 INFO    ] 2026-10-25 07:58:57
[2026-10-25 07:58:57,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:58:57,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:58:57,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:58:57,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:58:57,502.502 INFO    ] time= 25/10/2026 07:58:57
[2026-10-25 07:58:57,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:58:57,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:58:57,663.663 INFO    ] No existing commands found in stream
[2026-10-25 07:59:02,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:59:02,695.695 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 07:59:04,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 07:59:04,129.129 INFO    ] Checking for system updates...
[2026-10-25 07:59:04,172.172 INFO    ] 200
[2026-10-25 07:59:04,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:04,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:59:04,240.240 INFO    ] No update needed
[2026-10-25 07:59:04,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 07:59:04,279.279 INFO    ] 200
[2026-10-25 07:59:04,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:04,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:59:04,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:59:04,380.380 INFO    ] No camera update needed
[2026-10-25 07:59:04,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:59:04,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:59:04,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:59:04,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:59:06,439.439 INFO    ] ================================================
[2026-10-25 07:59:06,454.454 INFO    ] Launching Daemon at Sun Oct 25 07:59:06 IST 2026
[2026-10-25 07:59:06,465.465 INFO    ] ================================================
[2026-10-25 07:59:07,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:59:07
[2026-10-25 07:59:07,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:59:08,148.148 INFO    ] Initializing speech engine...
[2026-10-25 07:59:08,159.159 INFO    ] 2026-10-25 07:59:08
[2026-10-25 07:59:08,446.446 INFO    ] 2026-10-25 07:59:08
[2026-10-25 07:59:08,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:59:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:59:09,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:59:09,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:59:09,550.550 INFO    ] time= 25/10/2026 07:59:09
[2026-10-25 07:59:09,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:59:09,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:59:09,665.665 INFO    ] No existing commands found in stream
[2026-10-25 07:59:14,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:59:14,677.677 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 07:59:15,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 07:59:15,741.741 INFO    ] Checking for system updates...
[2026-10-25 07:59:15,779.779 INFO    ] 200
[2026-10-25 07:59:15,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:15,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:59:15,840.840 INFO    ] No update needed
[2026-10-25 07:59:15,843.843 INFO    ] Checking for camera pi updates...
[2026-10-25 07:59:15,878.878 INFO    ] 200
[2026-10-25 07:59:15,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:15,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:59:15,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 07:59:15,978.978 INFO    ] No camera update needed
[2026-10-25 07:59:15,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:59:15,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:59:15,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:59:15,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:59:18,037.037 INFO    ] ================================================
[2026-10-25 07:59:18,053.053 INFO    ] Launching Daemon at Sun Oct 25 07:59:18 IST 2026
[2026-10-25 07:59:18,063.063 INFO    ] ================================================
[2026-10-25 07:59:18,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:59:18
[2026-10-25 07:59:19,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:59:19,656.656 INFO    ] Initializing speech engine...
[2026-10-25 07:59:19,664.664 INFO    ] 2026-10-25 07:59:19
[2026-10-25 07:59:19,958.958 INFO    ] 2026-10-25 07:59:19
[2026-10-25 07:59:20,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:59:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:59:20,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:59:20,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:59:20,428.428 INFO    ] time= 25/10/2026 07:59:20
[2026-10-25 07:59:20,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:59:20,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:59:20,585.585 INFO    ] No existing commands found in stream
[2026-10-25 07:59:25,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:59:25,603.603 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 07:59:29,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 07:59:29,600.600 INFO    ] Checking for system updates...
[2026-10-25 07:59:29,643.643 INFO    ] 200
[2026-10-25 07:59:29,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:29,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:29,709.709 INFO    ] No update needed
[2026-10-25 07:59:29,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 07:59:29,752.752 INFO    ] 200
[2026-10-25 07:59:29,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:29,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:59:29,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:29,862.862 INFO    ] No camera update needed
[2026-10-25 07:59:29,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:59:29,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:59:29,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:59:29,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:59:31,921.921 INFO    ] ================================================
[2026-10-25 07:59:31,938.938 INFO    ] Launching Daemon at Sun Oct 25 07:59:31 IST 2026
[2026-10-25 07:59:31,951.951 INFO    ] ================================================
[2026-10-25 07:59:32,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:59:32
[2026-10-25 07:59:33,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:59:33,603.603 INFO    ] Initializing speech engine...
[2026-10-25 07:59:33,618.618 INFO    ] 2026-10-25 07:59:33
[2026-10-25 07:59:33,885.885 INFO    ] 2026-10-25 07:59:33
[2026-10-25 07:59:33,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:59:34,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:59:34,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:59:34,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:59:34,249.249 INFO    ] time= 25/10/2026 07:59:34
[2026-10-25 07:59:34,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:59:34,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:59:34,333.333 INFO    ] No existing commands found in stream
[2026-10-25 07:59:39,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:59:39,347.347 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 07:59:40,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 07:59:40,860.860 INFO    ] Checking for system updates...
[2026-10-25 07:59:40,896.896 INFO    ] 200
[2026-10-25 07:59:40,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:40,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:40,953.953 INFO    ] No update needed
[2026-10-25 07:59:40,956.956 INFO    ] Checking for camera pi updates...
[2026-10-25 07:59:40,989.989 INFO    ] 200
[2026-10-25 07:59:40,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:41,033.033 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:59:41,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:41,089.089 INFO    ] No camera update needed
[2026-10-25 07:59:41,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:59:41,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:59:41,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:59:41,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:59:43,144.144 INFO    ] ================================================
[2026-10-25 07:59:43,159.159 INFO    ] Launching Daemon at Sun Oct 25 07:59:43 IST 2026
[2026-10-25 07:59:43,171.171 INFO    ] ================================================
[2026-10-25 07:59:43,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:59:43
[2026-10-25 07:59:44,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:59:44,918.918 INFO    ] Initializing speech engine...
[2026-10-25 07:59:44,924.924 INFO    ] 2026-10-25 07:59:44
[2026-10-25 07:59:45,239.239 INFO    ] 2026-10-25 07:59:45
[2026-10-25 07:59:45,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:59:45,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:59:45,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:59:45,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:59:45,713.713 INFO    ] time= 25/10/2026 07:59:45
[2026-10-25 07:59:45,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:59:45,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:59:45,899.899 INFO    ] No existing commands found in stream
[2026-10-25 07:59:50,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 07:59:50,936.936 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 07:59:53,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 07:59:53,872.872 INFO    ] Checking for system updates...
[2026-10-25 07:59:53,910.910 INFO    ] 200
[2026-10-25 07:59:53,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:53,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:53,973.973 INFO    ] No update needed
[2026-10-25 07:59:53,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 07:59:54,012.012 INFO    ] 200
[2026-10-25 07:59:54,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 07:59:54,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 07:59:54,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 07:59:54,130.130 INFO    ] No camera update needed
[2026-10-25 07:59:54,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 07:59:54,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 07:59:54,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 07:59:54,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 07:59:56,191.191 INFO    ] ================================================
[2026-10-25 07:59:56,206.206 INFO    ] Launching Daemon at Sun Oct 25 07:59:56 IST 2026
[2026-10-25 07:59:56,218.218 INFO    ] ================================================
[2026-10-25 07:59:56,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 07:59:56
[2026-10-25 07:59:57,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 07:59:57,620.620 INFO    ] Initializing speech engine...
[2026-10-25 07:59:57,633.633 INFO    ] 2026-10-25 07:59:57
[2026-10-25 07:59:57,894.894 INFO    ] 2026-10-25 07:59:57
[2026-10-25 07:59:57,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 07:59:58,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 07:59:58,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 07:59:58,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 07:59:58,350.350 INFO    ] time= 25/10/2026 07:59:58
[2026-10-25 07:59:58,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 07:59:58,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 07:59:58,507.507 INFO    ] No existing commands found in stream
[2026-10-25 08:00:03,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:00:03,516.516 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 08:00:10,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:00:10,423.423 INFO    ] Checking for system updates...
[2026-10-25 08:00:10,463.463 INFO    ] 200
[2026-10-25 08:00:10,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:10,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:10,527.527 INFO    ] No update needed
[2026-10-25 08:00:10,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 08:00:10,562.562 INFO    ] 200
[2026-10-25 08:00:10,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:10,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:00:10,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:10,657.657 INFO    ] No camera update needed
[2026-10-25 08:00:10,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:00:10,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:00:10,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:00:10,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:00:12,715.715 INFO    ] ================================================
[2026-10-25 08:00:12,731.731 INFO    ] Launching Daemon at Sun Oct 25 08:00:12 IST 2026
[2026-10-25 08:00:12,742.742 INFO    ] ================================================
[2026-10-25 08:00:13,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:00:13
[2026-10-25 08:00:13,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:00:14,138.138 INFO    ] Initializing speech engine...
[2026-10-25 08:00:14,154.154 INFO    ] 2026-10-25 08:00:14
[2026-10-25 08:00:14,422.422 INFO    ] 2026-10-25 08:00:14
[2026-10-25 08:00:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:00:14,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:00:14,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:00:14,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:00:14,802.802 INFO    ] time= 25/10/2026 08:00:14
[2026-10-25 08:00:14,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:00:14,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:00:14,969.969 INFO    ] No existing commands found in stream
[2026-10-25 08:00:19,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:00:19,997.997 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 08:00:23,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:00:23,608.608 INFO    ] Checking for system updates...
[2026-10-25 08:00:23,645.645 INFO    ] 200
[2026-10-25 08:00:23,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:23,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:23,703.703 INFO    ] No update needed
[2026-10-25 08:00:23,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 08:00:23,740.740 INFO    ] 200
[2026-10-25 08:00:23,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:23,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:00:23,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:23,860.860 INFO    ] No camera update needed
[2026-10-25 08:00:23,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:00:23,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:00:23,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:00:23,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:00:25,917.917 INFO    ] ================================================
[2026-10-25 08:00:25,933.933 INFO    ] Launching Daemon at Sun Oct 25 08:00:25 IST 2026
[2026-10-25 08:00:25,945.945 INFO    ] ================================================
[2026-10-25 08:00:26,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:00:26
[2026-10-25 08:00:27,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:00:27,539.539 INFO    ] Initializing speech engine...
[2026-10-25 08:00:27,554.554 INFO    ] 2026-10-25 08:00:27
[2026-10-25 08:00:27,834.834 INFO    ] 2026-10-25 08:00:27
[2026-10-25 08:00:27,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:00:28,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:00:28,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:00:28,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:00:28,383.383 INFO    ] time= 25/10/2026 08:00:28
[2026-10-25 08:00:28,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:00:28,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:00:28,523.523 INFO    ] No existing commands found in stream
[2026-10-25 08:00:33,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:00:33,555.555 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 08:00:36,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:00:36,169.169 INFO    ] Checking for system updates...
[2026-10-25 08:00:36,206.206 INFO    ] 200
[2026-10-25 08:00:36,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:36,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:36,269.269 INFO    ] No update needed
[2026-10-25 08:00:36,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 08:00:36,307.307 INFO    ] 200
[2026-10-25 08:00:36,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:36,355.355 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:00:36,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:36,404.404 INFO    ] No camera update needed
[2026-10-25 08:00:36,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:00:36,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:00:36,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:00:36,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:00:38,461.461 INFO    ] ================================================
[2026-10-25 08:00:38,476.476 INFO    ] Launching Daemon at Sun Oct 25 08:00:38 IST 2026
[2026-10-25 08:00:38,488.488 INFO    ] ================================================
[2026-10-25 08:00:39,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:00:39
[2026-10-25 08:00:39,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:00:39,892.892 INFO    ] Initializing speech engine...
[2026-10-25 08:00:39,905.905 INFO    ] 2026-10-25 08:00:39
[2026-10-25 08:00:40,167.167 INFO    ] 2026-10-25 08:00:40
[2026-10-25 08:00:40,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:00:40,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:00:40,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:00:40,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:00:40,543.543 INFO    ] time= 25/10/2026 08:00:40
[2026-10-25 08:00:40,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:00:40,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:00:40,703.703 INFO    ] No existing commands found in stream
[2026-10-25 08:00:45,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:00:45,736.736 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 08:00:50,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:00:50,040.040 INFO    ] Checking for system updates...
[2026-10-25 08:00:50,076.076 INFO    ] 200
[2026-10-25 08:00:50,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:50,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:50,134.134 INFO    ] No update needed
[2026-10-25 08:00:50,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 08:00:50,172.172 INFO    ] 200
[2026-10-25 08:00:50,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:00:50,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:00:50,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:00:50,373.373 INFO    ] No camera update needed
[2026-10-25 08:00:50,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:00:50,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:00:50,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:00:50,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:00:52,428.428 INFO    ] ================================================
[2026-10-25 08:00:52,444.444 INFO    ] Launching Daemon at Sun Oct 25 08:00:52 IST 2026
[2026-10-25 08:00:52,455.455 INFO    ] ================================================
[2026-10-25 08:00:53,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:00:53
[2026-10-25 08:00:53,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:00:54,003.003 INFO    ] Initializing speech engine...
[2026-10-25 08:00:54,011.011 INFO    ] 2026-10-25 08:00:54
[2026-10-25 08:00:54,281.281 INFO    ] 2026-10-25 08:00:54
[2026-10-25 08:00:54,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:00:54,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:00:54,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:00:54,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:00:54,738.738 INFO    ] time= 25/10/2026 08:00:54
[2026-10-25 08:00:54,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:00:54,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:00:54,893.893 INFO    ] No existing commands found in stream
[2026-10-25 08:00:59,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:00:59,924.924 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 08:01:03,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:01:03,665.665 INFO    ] Checking for system updates...
[2026-10-25 08:01:03,702.702 INFO    ] 200
[2026-10-25 08:01:03,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:03,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:01:03,760.760 INFO    ] No update needed
[2026-10-25 08:01:03,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 08:01:03,795.795 INFO    ] 200
[2026-10-25 08:01:03,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:03,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:01:03,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:01:03,899.899 INFO    ] No camera update needed
[2026-10-25 08:01:03,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:01:03,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:01:03,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:01:03,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:01:05,955.955 INFO    ] ================================================
[2026-10-25 08:01:05,969.969 INFO    ] Launching Daemon at Sun Oct 25 08:01:05 IST 2026
[2026-10-25 08:01:05,980.980 INFO    ] ================================================
[2026-10-25 08:01:06,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:01:06
[2026-10-25 08:01:07,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:01:07,526.526 INFO    ] Initializing speech engine...
[2026-10-25 08:01:07,539.539 INFO    ] 2026-10-25 08:01:07
[2026-10-25 08:01:07,812.812 INFO    ] 2026-10-25 08:01:07
[2026-10-25 08:01:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:01:10,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:01:10,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:01:10,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:01:10,426.426 INFO    ] time= 25/10/2026 08:01:10
[2026-10-25 08:01:10,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:01:10,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:01:10,588.588 INFO    ] No existing commands found in stream
[2026-10-25 08:01:15,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:01:15,605.605 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 08:01:19,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:01:19,607.607 INFO    ] Checking for system updates...
[2026-10-25 08:01:19,644.644 INFO    ] 200
[2026-10-25 08:01:19,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:19,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:01:19,704.704 INFO    ] No update needed
[2026-10-25 08:01:19,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 08:01:19,741.741 INFO    ] 200
[2026-10-25 08:01:19,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:19,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:01:19,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:01:19,835.835 INFO    ] No camera update needed
[2026-10-25 08:01:19,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:01:19,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:01:19,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:01:19,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:01:21,889.889 INFO    ] ================================================
[2026-10-25 08:01:21,905.905 INFO    ] Launching Daemon at Sun Oct 25 08:01:21 IST 2026
[2026-10-25 08:01:21,916.916 INFO    ] ================================================
[2026-10-25 08:01:22,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:01:22
[2026-10-25 08:01:23,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:01:23,374.374 INFO    ] Initializing speech engine...
[2026-10-25 08:01:23,380.380 INFO    ] 2026-10-25 08:01:23
[2026-10-25 08:01:23,640.640 INFO    ] 2026-10-25 08:01:23
[2026-10-25 08:01:23,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:01:23,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:01:23,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:01:23,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:01:24,010.010 INFO    ] time= 25/10/2026 08:01:23
[2026-10-25 08:01:24,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:01:24,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:01:24,113.113 INFO    ] No existing commands found in stream
[2026-10-25 08:01:29,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:01:29,128.128 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 08:01:32,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:01:32,146.146 INFO    ] Checking for system updates...
[2026-10-25 08:01:32,187.187 INFO    ] 200
[2026-10-25 08:01:32,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:32,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:01:32,257.257 INFO    ] No update needed
[2026-10-25 08:01:32,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 08:01:32,299.299 INFO    ] 200
[2026-10-25 08:01:32,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:32,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:01:32,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:01:32,384.384 INFO    ] No camera update needed
[2026-10-25 08:01:32,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:01:32,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:01:32,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:01:32,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:01:34,442.442 INFO    ] ================================================
[2026-10-25 08:01:34,457.457 INFO    ] Launching Daemon at Sun Oct 25 08:01:34 IST 2026
[2026-10-25 08:01:34,468.468 INFO    ] ================================================
[2026-10-25 08:01:35,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:01:35
[2026-10-25 08:01:35,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:01:36,030.030 INFO    ] Initializing speech engine...
[2026-10-25 08:01:36,044.044 INFO    ] 2026-10-25 08:01:36
[2026-10-25 08:01:36,318.318 INFO    ] 2026-10-25 08:01:36
[2026-10-25 08:01:36,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:01:36,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:01:36,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:01:36,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:01:36,778.778 INFO    ] time= 25/10/2026 08:01:36
[2026-10-25 08:01:36,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:01:36,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:01:36,916.916 INFO    ] No existing commands found in stream
[2026-10-25 08:01:41,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:01:41,929.929 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 08:01:46,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:01:46,034.034 INFO    ] Checking for system updates...
[2026-10-25 08:01:46,070.070 INFO    ] 200
[2026-10-25 08:01:46,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:46,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:01:46,131.131 INFO    ] No update needed
[2026-10-25 08:01:46,134.134 INFO    ] Checking for camera pi updates...
[2026-10-25 08:01:46,168.168 INFO    ] 200
[2026-10-25 08:01:46,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:46,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:01:46,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:01:46,265.265 INFO    ] No camera update needed
[2026-10-25 08:01:46,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:01:46,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:01:46,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:01:46,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:01:48,323.323 INFO    ] ================================================
[2026-10-25 08:01:48,338.338 INFO    ] Launching Daemon at Sun Oct 25 08:01:48 IST 2026
[2026-10-25 08:01:48,348.348 INFO    ] ================================================
[2026-10-25 08:01:48,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:01:48
[2026-10-25 08:01:49,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:01:49,750.750 INFO    ] Initializing speech engine...
[2026-10-25 08:01:49,765.765 INFO    ] 2026-10-25 08:01:49
[2026-10-25 08:01:50,042.042 INFO    ] 2026-10-25 08:01:50
[2026-10-25 08:01:50,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:01:50,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:01:50,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:01:50,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:01:50,444.444 INFO    ] time= 25/10/2026 08:01:50
[2026-10-25 08:01:50,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:01:50,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:01:50,529.529 INFO    ] No existing commands found in stream
[2026-10-25 08:01:55,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:01:55,544.544 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 08:01:59,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:01:59,793.793 INFO    ] Checking for system updates...
[2026-10-25 08:01:59,829.829 INFO    ] 200
[2026-10-25 08:01:59,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:59,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:01:59,888.888 INFO    ] No update needed
[2026-10-25 08:01:59,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 08:01:59,929.929 INFO    ] 200
[2026-10-25 08:01:59,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:01:59,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:02:00,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:02:00,021.021 INFO    ] No camera update needed
[2026-10-25 08:02:00,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:02:00,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:02:00,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:02:00,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:02:02,078.078 INFO    ] ================================================
[2026-10-25 08:02:02,098.098 INFO    ] Launching Daemon at Sun Oct 25 08:02:02 IST 2026
[2026-10-25 08:02:02,113.113 INFO    ] ================================================
[2026-10-25 08:02:02,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:02:02
[2026-10-25 08:02:03,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:02:03,843.843 INFO    ] Initializing speech engine...
[2026-10-25 08:02:03,855.855 INFO    ] 2026-10-25 08:02:03
[2026-10-25 08:02:04,125.125 INFO    ] 2026-10-25 08:02:04
[2026-10-25 08:02:04,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:02:04,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:02:04,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:02:04,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:02:04,592.592 INFO    ] time= 25/10/2026 08:02:04
[2026-10-25 08:02:04,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:02:04,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:02:04,744.744 INFO    ] No existing commands found in stream
[2026-10-25 08:02:09,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:02:09,759.759 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 08:02:14,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:02:14,175.175 INFO    ] Checking for system updates...
[2026-10-25 08:02:14,212.212 INFO    ] 200
[2026-10-25 08:02:14,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:14,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:02:14,272.272 INFO    ] No update needed
[2026-10-25 08:02:14,275.275 INFO    ] Checking for camera pi updates...
[2026-10-25 08:02:14,310.310 INFO    ] 200
[2026-10-25 08:02:14,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:14,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:02:14,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:02:14,404.404 INFO    ] No camera update needed
[2026-10-25 08:02:14,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:02:14,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:02:14,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:02:14,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:02:16,461.461 INFO    ] ================================================
[2026-10-25 08:02:16,476.476 INFO    ] Launching Daemon at Sun Oct 25 08:02:16 IST 2026
[2026-10-25 08:02:16,487.487 INFO    ] ================================================
[2026-10-25 08:02:17,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:02:17
[2026-10-25 08:02:17,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:02:18,072.072 INFO    ] Initializing speech engine...
[2026-10-25 08:02:18,084.084 INFO    ] 2026-10-25 08:02:18
[2026-10-25 08:02:18,368.368 INFO    ] 2026-10-25 08:02:18
[2026-10-25 08:02:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:02:18,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:02:18,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:02:18,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:02:18,902.902 INFO    ] time= 25/10/2026 08:02:18
[2026-10-25 08:02:18,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:02:18,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:02:19,045.045 INFO    ] No existing commands found in stream
[2026-10-25 08:02:24,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:02:24,075.075 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 08:02:25,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:02:25,736.736 INFO    ] Checking for system updates...
[2026-10-25 08:02:25,773.773 INFO    ] 200
[2026-10-25 08:02:25,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:25,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:02:25,834.834 INFO    ] No update needed
[2026-10-25 08:02:25,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 08:02:25,872.872 INFO    ] 200
[2026-10-25 08:02:25,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:25,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:02:25,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:02:25,968.968 INFO    ] No camera update needed
[2026-10-25 08:02:25,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:02:25,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:02:25,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:02:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:02:28,026.026 INFO    ] ================================================
[2026-10-25 08:02:28,041.041 INFO    ] Launching Daemon at Sun Oct 25 08:02:28 IST 2026
[2026-10-25 08:02:28,052.052 INFO    ] ================================================
[2026-10-25 08:02:28,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:02:28
[2026-10-25 08:02:29,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:02:29,572.572 INFO    ] Initializing speech engine...
[2026-10-25 08:02:29,584.584 INFO    ] 2026-10-25 08:02:29
[2026-10-25 08:02:29,846.846 INFO    ] 2026-10-25 08:02:29
[2026-10-25 08:02:29,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:02:30,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:02:30,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:02:30,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:02:30,302.302 INFO    ] time= 25/10/2026 08:02:30
[2026-10-25 08:02:30,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:02:30,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:02:30,460.460 INFO    ] No existing commands found in stream
[2026-10-25 08:02:35,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:02:35,474.474 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 08:02:40,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:02:40,793.793 INFO    ] Checking for system updates...
[2026-10-25 08:02:40,828.828 INFO    ] 200
[2026-10-25 08:02:40,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:40,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:02:40,885.885 INFO    ] No update needed
[2026-10-25 08:02:40,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 08:02:40,921.921 INFO    ] 200
[2026-10-25 08:02:40,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:40,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:02:41,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:02:41,014.014 INFO    ] No camera update needed
[2026-10-25 08:02:41,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:02:41,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:02:41,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:02:41,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:02:43,070.070 INFO    ] ================================================
[2026-10-25 08:02:43,085.085 INFO    ] Launching Daemon at Sun Oct 25 08:02:43 IST 2026
[2026-10-25 08:02:43,095.095 INFO    ] ================================================
[2026-10-25 08:02:43,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:02:43
[2026-10-25 08:02:44,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:02:44,661.661 INFO    ] Initializing speech engine...
[2026-10-25 08:02:44,667.667 INFO    ] 2026-10-25 08:02:44
[2026-10-25 08:02:44,930.930 INFO    ] 2026-10-25 08:02:44
[2026-10-25 08:02:44,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:02:45,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:02:45,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:02:45,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:02:45,381.381 INFO    ] time= 25/10/2026 08:02:45
[2026-10-25 08:02:45,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:02:45,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:02:45,554.554 INFO    ] No existing commands found in stream
[2026-10-25 08:02:50,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:02:50,566.566 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 08:02:52,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:02:52,609.609 INFO    ] Checking for system updates...
[2026-10-25 08:02:52,649.649 INFO    ] 200
[2026-10-25 08:02:52,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:52,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:02:52,707.707 INFO    ] No update needed
[2026-10-25 08:02:52,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 08:02:52,743.743 INFO    ] 200
[2026-10-25 08:02:52,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:02:52,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:02:52,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:02:52,939.939 INFO    ] No camera update needed
[2026-10-25 08:02:52,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:02:52,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:02:52,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:02:52,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:02:54,994.994 INFO    ] ================================================
[2026-10-25 08:02:55,014.014 INFO    ] Launching Daemon at Sun Oct 25 08:02:55 IST 2026
[2026-10-25 08:02:55,030.030 INFO    ] ================================================
[2026-10-25 08:02:55,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:02:55
[2026-10-25 08:02:56,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:02:56,684.684 INFO    ] Initializing speech engine...
[2026-10-25 08:02:56,693.693 INFO    ] 2026-10-25 08:02:56
[2026-10-25 08:02:56,976.976 INFO    ] 2026-10-25 08:02:56
[2026-10-25 08:02:57,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:02:57,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:02:57,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:02:57,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:02:57,403.403 INFO    ] time= 25/10/2026 08:02:57
[2026-10-25 08:02:57,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:02:57,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:02:57,591.591 INFO    ] No existing commands found in stream
[2026-10-25 08:03:02,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:03:02,607.607 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 08:03:04,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:03:04,024.024 INFO    ] Checking for system updates...
[2026-10-25 08:03:04,060.060 INFO    ] 200
[2026-10-25 08:03:04,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:04,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:04,118.118 INFO    ] No update needed
[2026-10-25 08:03:04,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 08:03:04,154.154 INFO    ] 200
[2026-10-25 08:03:04,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:04,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:03:04,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:04,244.244 INFO    ] No camera update needed
[2026-10-25 08:03:04,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:03:04,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:03:04,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:03:04,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:03:06,299.299 INFO    ] ================================================
[2026-10-25 08:03:06,314.314 INFO    ] Launching Daemon at Sun Oct 25 08:03:06 IST 2026
[2026-10-25 08:03:06,326.326 INFO    ] ================================================
[2026-10-25 08:03:06,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:03:06
[2026-10-25 08:03:07,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:03:07,936.936 INFO    ] Initializing speech engine...
[2026-10-25 08:03:07,943.943 INFO    ] 2026-10-25 08:03:07
[2026-10-25 08:03:08,211.211 INFO    ] 2026-10-25 08:03:08
[2026-10-25 08:03:08,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:03:08,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:03:08,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:03:08,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:03:08,712.712 INFO    ] time= 25/10/2026 08:03:08
[2026-10-25 08:03:08,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:03:08,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:03:08,845.845 INFO    ] No existing commands found in stream
[2026-10-25 08:03:13,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:03:13,860.860 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 08:03:16,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:03:16,549.549 INFO    ] Checking for system updates...
[2026-10-25 08:03:16,586.586 INFO    ] 200
[2026-10-25 08:03:16,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:16,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:16,649.649 INFO    ] No update needed
[2026-10-25 08:03:16,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 08:03:16,694.694 INFO    ] 200
[2026-10-25 08:03:16,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:16,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:03:16,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:16,808.808 INFO    ] No camera update needed
[2026-10-25 08:03:16,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:03:16,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:03:16,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:03:16,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:03:18,870.870 INFO    ] ================================================
[2026-10-25 08:03:18,886.886 INFO    ] Launching Daemon at Sun Oct 25 08:03:18 IST 2026
[2026-10-25 08:03:18,897.897 INFO    ] ================================================
[2026-10-25 08:03:19,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:03:19
[2026-10-25 08:03:20,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:03:20,331.331 INFO    ] Initializing speech engine...
[2026-10-25 08:03:20,347.347 INFO    ] 2026-10-25 08:03:20
[2026-10-25 08:03:20,625.625 INFO    ] 2026-10-25 08:03:20
[2026-10-25 08:03:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:03:20,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:03:20,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:03:21,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:03:21,129.129 INFO    ] time= 25/10/2026 08:03:21
[2026-10-25 08:03:21,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:03:21,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:03:21,264.264 INFO    ] No existing commands found in stream
[2026-10-25 08:03:26,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:03:26,288.288 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 08:03:28,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:03:28,850.850 INFO    ] Checking for system updates...
[2026-10-25 08:03:28,887.887 INFO    ] 200
[2026-10-25 08:03:28,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:28,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:28,944.944 INFO    ] No update needed
[2026-10-25 08:03:28,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 08:03:28,984.984 INFO    ] 200
[2026-10-25 08:03:28,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:29,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:03:29,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:29,075.075 INFO    ] No camera update needed
[2026-10-25 08:03:29,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:03:29,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:03:29,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:03:29,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:03:31,135.135 INFO    ] ================================================
[2026-10-25 08:03:31,151.151 INFO    ] Launching Daemon at Sun Oct 25 08:03:31 IST 2026
[2026-10-25 08:03:31,162.162 INFO    ] ================================================
[2026-10-25 08:03:31,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:03:31
[2026-10-25 08:03:32,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:03:32,713.713 INFO    ] Initializing speech engine...
[2026-10-25 08:03:32,725.725 INFO    ] 2026-10-25 08:03:32
[2026-10-25 08:03:33,017.017 INFO    ] 2026-10-25 08:03:33
[2026-10-25 08:03:33,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:03:33,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:03:33,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:03:33,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:03:33,398.398 INFO    ] time= 25/10/2026 08:03:33
[2026-10-25 08:03:33,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:03:33,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:03:33,581.581 INFO    ] No existing commands found in stream
[2026-10-25 08:03:38,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:03:38,613.613 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 08:03:42,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:03:42,775.775 INFO    ] Checking for system updates...
[2026-10-25 08:03:42,812.812 INFO    ] 200
[2026-10-25 08:03:42,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:42,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:42,872.872 INFO    ] No update needed
[2026-10-25 08:03:42,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 08:03:42,910.910 INFO    ] 200
[2026-10-25 08:03:42,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:42,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:03:43,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:03:43,008.008 INFO    ] No camera update needed
[2026-10-25 08:03:43,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:03:43,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:03:43,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:03:43,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:03:45,068.068 INFO    ] ================================================
[2026-10-25 08:03:45,083.083 INFO    ] Launching Daemon at Sun Oct 25 08:03:45 IST 2026
[2026-10-25 08:03:45,094.094 INFO    ] ================================================
[2026-10-25 08:03:45,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:03:45
[2026-10-25 08:03:46,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:03:46,533.533 INFO    ] Initializing speech engine...
[2026-10-25 08:03:46,539.539 INFO    ] 2026-10-25 08:03:46
[2026-10-25 08:03:46,832.832 INFO    ] 2026-10-25 08:03:46
[2026-10-25 08:03:46,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:03:47,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:03:47,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:03:47,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:03:47,206.206 INFO    ] time= 25/10/2026 08:03:47
[2026-10-25 08:03:47,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:03:47,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:03:47,328.328 INFO    ] No existing commands found in stream
[2026-10-25 08:03:52,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:03:52,344.344 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 08:03:55,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:03:55,614.614 INFO    ] Checking for system updates...
[2026-10-25 08:03:55,653.653 INFO    ] 200
[2026-10-25 08:03:55,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:55,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:03:55,713.713 INFO    ] No update needed
[2026-10-25 08:03:55,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 08:03:55,750.750 INFO    ] 200
[2026-10-25 08:03:55,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:03:55,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:03:55,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:03:55,854.854 INFO    ] No camera update needed
[2026-10-25 08:03:55,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:03:55,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:03:55,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:03:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:03:57,912.912 INFO    ] ================================================
[2026-10-25 08:03:57,927.927 INFO    ] Launching Daemon at Sun Oct 25 08:03:57 IST 2026
[2026-10-25 08:03:57,938.938 INFO    ] ================================================
[2026-10-25 08:03:58,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:03:58
[2026-10-25 08:03:59,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:03:59,372.372 INFO    ] Initializing speech engine...
[2026-10-25 08:03:59,395.395 INFO    ] 2026-10-25 08:03:59
[2026-10-25 08:03:59,650.650 INFO    ] 2026-10-25 08:03:59
[2026-10-25 08:03:59,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:03:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:03:59,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:00,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:00,022.022 INFO    ] time= 25/10/2026 08:04:00
[2026-10-25 08:04:00,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:00,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:00,111.111 INFO    ] No existing commands found in stream
[2026-10-25 08:04:05,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:04:05,125.125 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 08:04:05,652.652 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:04:05,655.655 INFO    ] Checking for system updates...
[2026-10-25 08:04:05,690.690 INFO    ] 200
[2026-10-25 08:04:05,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:05,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:04:05,748.748 INFO    ] No update needed
[2026-10-25 08:04:05,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 08:04:05,785.785 INFO    ] 200
[2026-10-25 08:04:05,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:05,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:04:05,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:04:05,884.884 INFO    ] No camera update needed
[2026-10-25 08:04:05,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:04:05,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:04:05,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:04:05,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:04:07,941.941 INFO    ] ================================================
[2026-10-25 08:04:07,956.956 INFO    ] Launching Daemon at Sun Oct 25 08:04:07 IST 2026
[2026-10-25 08:04:07,968.968 INFO    ] ================================================
[2026-10-25 08:04:08,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:04:08
[2026-10-25 08:04:09,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:04:09,570.570 INFO    ] Initializing speech engine...
[2026-10-25 08:04:09,584.584 INFO    ] 2026-10-25 08:04:09
[2026-10-25 08:04:09,863.863 INFO    ] 2026-10-25 08:04:09
[2026-10-25 08:04:09,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:04:12,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:04:12,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:12,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:12,522.522 INFO    ] time= 25/10/2026 08:04:12
[2026-10-25 08:04:12,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:12,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:12,684.684 INFO    ] No existing commands found in stream
[2026-10-25 08:04:17,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:04:17,701.701 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 08:04:20,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:04:20,892.892 INFO    ] Checking for system updates...
[2026-10-25 08:04:20,928.928 INFO    ] 200
[2026-10-25 08:04:20,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:20,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:20,990.990 INFO    ] No update needed
[2026-10-25 08:04:20,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 08:04:21,026.026 INFO    ] 200
[2026-10-25 08:04:21,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:21,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:04:21,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:21,119.119 INFO    ] No camera update needed
[2026-10-25 08:04:21,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:04:21,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:04:21,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:04:21,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:04:23,174.174 INFO    ] ================================================
[2026-10-25 08:04:23,190.190 INFO    ] Launching Daemon at Sun Oct 25 08:04:23 IST 2026
[2026-10-25 08:04:23,202.202 INFO    ] ================================================
[2026-10-25 08:04:23,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:04:23
[2026-10-25 08:04:24,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:04:24,642.642 INFO    ] Initializing speech engine...
[2026-10-25 08:04:24,655.655 INFO    ] 2026-10-25 08:04:24
[2026-10-25 08:04:24,936.936 INFO    ] 2026-10-25 08:04:24
[2026-10-25 08:04:24,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:04:25,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:04:25,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:25,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:25,311.311 INFO    ] time= 25/10/2026 08:04:25
[2026-10-25 08:04:25,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:25,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:25,434.434 INFO    ] No existing commands found in stream
[2026-10-25 08:04:30,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:04:30,451.451 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 08:04:31,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:04:31,561.561 INFO    ] Checking for system updates...
[2026-10-25 08:04:31,597.597 INFO    ] 200
[2026-10-25 08:04:31,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:31,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:04:31,701.701 INFO    ] No update needed
[2026-10-25 08:04:31,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 08:04:31,737.737 INFO    ] 200
[2026-10-25 08:04:31,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:31,780.780 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:04:31,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:04:31,827.827 INFO    ] No camera update needed
[2026-10-25 08:04:31,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:04:31,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:04:31,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:04:31,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:04:33,891.891 INFO    ] ================================================
[2026-10-25 08:04:33,907.907 INFO    ] Launching Daemon at Sun Oct 25 08:04:33 IST 2026
[2026-10-25 08:04:33,918.918 INFO    ] ================================================
[2026-10-25 08:04:34,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:04:34
[2026-10-25 08:04:35,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:04:35,362.362 INFO    ] Initializing speech engine...
[2026-10-25 08:04:35,372.372 INFO    ] 2026-10-25 08:04:35
[2026-10-25 08:04:35,620.620 INFO    ] 2026-10-25 08:04:35
[2026-10-25 08:04:35,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:04:35,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:04:35,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:36,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:36,107.107 INFO    ] time= 25/10/2026 08:04:36
[2026-10-25 08:04:36,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:36,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:36,236.236 INFO    ] No existing commands found in stream
[2026-10-25 08:04:41,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:04:41,250.250 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 08:04:43,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:04:43,562.562 INFO    ] Checking for system updates...
[2026-10-25 08:04:43,602.602 INFO    ] 200
[2026-10-25 08:04:43,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:43,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:43,662.662 INFO    ] No update needed
[2026-10-25 08:04:43,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 08:04:43,700.700 INFO    ] 200
[2026-10-25 08:04:43,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:43,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:04:43,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:43,796.796 INFO    ] No camera update needed
[2026-10-25 08:04:43,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:04:43,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:04:43,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:04:43,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:04:45,855.855 INFO    ] ================================================
[2026-10-25 08:04:45,871.871 INFO    ] Launching Daemon at Sun Oct 25 08:04:45 IST 2026
[2026-10-25 08:04:45,882.882 INFO    ] ================================================
[2026-10-25 08:04:46,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:04:46
[2026-10-25 08:04:47,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:04:47,312.312 INFO    ] Initializing speech engine...
[2026-10-25 08:04:47,322.322 INFO    ] 2026-10-25 08:04:47
[2026-10-25 08:04:47,587.587 INFO    ] 2026-10-25 08:04:47
[2026-10-25 08:04:47,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:04:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:04:47,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:48,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:48,061.061 INFO    ] time= 25/10/2026 08:04:48
[2026-10-25 08:04:48,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:48,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:48,213.213 INFO    ] No existing commands found in stream
[2026-10-25 08:04:53,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:04:53,243.243 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 08:04:54,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:04:54,131.131 INFO    ] Checking for system updates...
[2026-10-25 08:04:54,172.172 INFO    ] 200
[2026-10-25 08:04:54,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:54,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:54,235.235 INFO    ] No update needed
[2026-10-25 08:04:54,237.237 INFO    ] Checking for camera pi updates...
[2026-10-25 08:04:54,272.272 INFO    ] 200
[2026-10-25 08:04:54,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:04:54,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:04:54,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:04:54,474.474 INFO    ] No camera update needed
[2026-10-25 08:04:54,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:04:54,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:04:54,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:04:54,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:04:56,530.530 INFO    ] ================================================
[2026-10-25 08:04:56,547.547 INFO    ] Launching Daemon at Sun Oct 25 08:04:56 IST 2026
[2026-10-25 08:04:56,558.558 INFO    ] ================================================
[2026-10-25 08:04:57,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:04:57
[2026-10-25 08:04:57,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:04:58,157.157 INFO    ] Initializing speech engine...
[2026-10-25 08:04:58,163.163 INFO    ] 2026-10-25 08:04:58
[2026-10-25 08:04:58,433.433 INFO    ] 2026-10-25 08:04:58
[2026-10-25 08:04:58,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:04:58,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:04:58,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:04:58,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:04:59,000.000 INFO    ] time= 25/10/2026 08:04:58
[2026-10-25 08:04:59,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:04:59,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:04:59,128.128 INFO    ] No existing commands found in stream
[2026-10-25 08:05:04,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:05:04,159.159 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 08:05:07,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:05:07,889.889 INFO    ] Checking for system updates...
[2026-10-25 08:05:07,926.926 INFO    ] 200
[2026-10-25 08:05:07,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:07,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:07,986.986 INFO    ] No update needed
[2026-10-25 08:05:07,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 08:05:08,025.025 INFO    ] 200
[2026-10-25 08:05:08,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:08,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:05:08,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:08,140.140 INFO    ] No camera update needed
[2026-10-25 08:05:08,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:05:08,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:05:08,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:05:08,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:05:10,200.200 INFO    ] ================================================
[2026-10-25 08:05:10,216.216 INFO    ] Launching Daemon at Sun Oct 25 08:05:10 IST 2026
[2026-10-25 08:05:10,227.227 INFO    ] ================================================
[2026-10-25 08:05:10,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:05:10
[2026-10-25 08:05:11,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:05:11,828.828 INFO    ] Initializing speech engine...
[2026-10-25 08:05:11,839.839 INFO    ] 2026-10-25 08:05:11
[2026-10-25 08:05:12,101.101 INFO    ] 2026-10-25 08:05:12
[2026-10-25 08:05:12,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:05:12,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:05:12,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:05:12,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:05:12,731.731 INFO    ] time= 25/10/2026 08:05:12
[2026-10-25 08:05:12,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:05:12,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:05:12,916.916 INFO    ] No existing commands found in stream
[2026-10-25 08:05:17,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:05:17,954.954 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 08:05:20,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:05:20,622.622 INFO    ] Checking for system updates...
[2026-10-25 08:05:20,661.661 INFO    ] 200
[2026-10-25 08:05:20,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:20,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:05:20,733.733 INFO    ] No update needed
[2026-10-25 08:05:20,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 08:05:20,770.770 INFO    ] 200
[2026-10-25 08:05:20,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:20,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:05:20,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:05:20,869.869 INFO    ] No camera update needed
[2026-10-25 08:05:20,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:05:20,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:05:20,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:05:20,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:05:22,923.923 INFO    ] ================================================
[2026-10-25 08:05:22,939.939 INFO    ] Launching Daemon at Sun Oct 25 08:05:22 IST 2026
[2026-10-25 08:05:22,951.951 INFO    ] ================================================
[2026-10-25 08:05:23,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:05:23
[2026-10-25 08:05:24,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:05:24,382.382 INFO    ] Initializing speech engine...
[2026-10-25 08:05:24,401.401 INFO    ] 2026-10-25 08:05:24
[2026-10-25 08:05:24,652.652 INFO    ] 2026-10-25 08:05:24
[2026-10-25 08:05:24,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:05:24,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:05:24,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:05:25,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:05:25,028.028 INFO    ] time= 25/10/2026 08:05:25
[2026-10-25 08:05:25,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:05:25,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:05:25,213.213 INFO    ] No existing commands found in stream
[2026-10-25 08:05:30,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:05:30,241.241 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 08:05:32,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:05:32,044.044 INFO    ] Checking for system updates...
[2026-10-25 08:05:32,081.081 INFO    ] 200
[2026-10-25 08:05:32,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:32,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:32,139.139 INFO    ] No update needed
[2026-10-25 08:05:32,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 08:05:32,189.189 INFO    ] 200
[2026-10-25 08:05:32,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:32,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:05:32,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:32,284.284 INFO    ] No camera update needed
[2026-10-25 08:05:32,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:05:32,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:05:32,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:05:32,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:05:34,355.355 INFO    ] ================================================
[2026-10-25 08:05:34,372.372 INFO    ] Launching Daemon at Sun Oct 25 08:05:34 IST 2026
[2026-10-25 08:05:34,384.384 INFO    ] ================================================
[2026-10-25 08:05:35,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:05:35
[2026-10-25 08:05:35,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:05:36,089.089 INFO    ] Initializing speech engine...
[2026-10-25 08:05:36,096.096 INFO    ] 2026-10-25 08:05:36
[2026-10-25 08:05:36,369.369 INFO    ] 2026-10-25 08:05:36
[2026-10-25 08:05:36,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:05:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:05:36,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:05:36,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:05:36,875.875 INFO    ] time= 25/10/2026 08:05:36
[2026-10-25 08:05:36,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:05:36,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:05:37,068.068 INFO    ] No existing commands found in stream
[2026-10-25 08:05:42,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:05:42,103.103 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 08:05:43,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:05:43,979.979 INFO    ] Checking for system updates...
[2026-10-25 08:05:44,015.015 INFO    ] 200
[2026-10-25 08:05:44,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:44,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:44,073.073 INFO    ] No update needed
[2026-10-25 08:05:44,075.075 INFO    ] Checking for camera pi updates...
[2026-10-25 08:05:44,113.113 INFO    ] 200
[2026-10-25 08:05:44,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:44,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:05:44,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:05:44,208.208 INFO    ] No camera update needed
[2026-10-25 08:05:44,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:05:44,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:05:44,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:05:44,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:05:46,265.265 INFO    ] ================================================
[2026-10-25 08:05:46,281.281 INFO    ] Launching Daemon at Sun Oct 25 08:05:46 IST 2026
[2026-10-25 08:05:46,292.292 INFO    ] ================================================
[2026-10-25 08:05:46,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:05:46
[2026-10-25 08:05:47,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:05:47,752.752 INFO    ] Initializing speech engine...
[2026-10-25 08:05:47,759.759 INFO    ] 2026-10-25 08:05:47
[2026-10-25 08:05:48,021.021 INFO    ] 2026-10-25 08:05:48
[2026-10-25 08:05:48,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:05:48,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:05:48,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:05:48,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:05:48,475.475 INFO    ] time= 25/10/2026 08:05:48
[2026-10-25 08:05:48,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:05:48,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:05:48,629.629 INFO    ] No existing commands found in stream
[2026-10-25 08:05:53,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:05:53,644.644 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 08:05:54,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:05:54,255.255 INFO    ] Checking for system updates...
[2026-10-25 08:05:54,297.297 INFO    ] 200
[2026-10-25 08:05:54,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:54,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:05:54,357.357 INFO    ] No update needed
[2026-10-25 08:05:54,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 08:05:54,393.393 INFO    ] 200
[2026-10-25 08:05:54,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:05:54,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:05:54,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:05:54,501.501 INFO    ] No camera update needed
[2026-10-25 08:05:54,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:05:54,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:05:54,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:05:54,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:05:56,556.556 INFO    ] ================================================
[2026-10-25 08:05:56,573.573 INFO    ] Launching Daemon at Sun Oct 25 08:05:56 IST 2026
[2026-10-25 08:05:56,583.583 INFO    ] ================================================
[2026-10-25 08:05:57,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:05:57
[2026-10-25 08:05:57,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:05:57,997.997 INFO    ] Initializing speech engine...
[2026-10-25 08:05:58,012.012 INFO    ] 2026-10-25 08:05:57
[2026-10-25 08:05:58,268.268 INFO    ] 2026-10-25 08:05:58
[2026-10-25 08:05:58,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:05:58,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:05:58,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:05:58,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:05:58,745.745 INFO    ] time= 25/10/2026 08:05:58
[2026-10-25 08:05:58,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:05:58,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:05:58,896.896 INFO    ] No existing commands found in stream
[2026-10-25 08:06:03,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:06:03,911.911 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 08:06:08,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:06:08,094.094 INFO    ] Checking for system updates...
[2026-10-25 08:06:08,134.134 INFO    ] 200
[2026-10-25 08:06:08,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:08,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:08,197.197 INFO    ] No update needed
[2026-10-25 08:06:08,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 08:06:08,234.234 INFO    ] 200
[2026-10-25 08:06:08,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:08,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:06:08,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:08,336.336 INFO    ] No camera update needed
[2026-10-25 08:06:08,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:06:08,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:06:08,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:06:08,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:06:10,393.393 INFO    ] ================================================
[2026-10-25 08:06:10,409.409 INFO    ] Launching Daemon at Sun Oct 25 08:06:10 IST 2026
[2026-10-25 08:06:10,420.420 INFO    ] ================================================
[2026-10-25 08:06:11,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:06:11
[2026-10-25 08:06:11,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:06:12,032.032 INFO    ] Initializing speech engine...
[2026-10-25 08:06:12,046.046 INFO    ] 2026-10-25 08:06:12
[2026-10-25 08:06:12,329.329 INFO    ] 2026-10-25 08:06:12
[2026-10-25 08:06:12,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:06:12,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:06:12,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:06:12,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:06:12,888.888 INFO    ] time= 25/10/2026 08:06:12
[2026-10-25 08:06:12,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:06:12,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:06:13,028.028 INFO    ] No existing commands found in stream
[2026-10-25 08:06:18,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:06:18,047.047 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 08:06:19,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:06:19,516.516 INFO    ] Checking for system updates...
[2026-10-25 08:06:19,556.556 INFO    ] 200
[2026-10-25 08:06:19,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:19,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:19,622.622 INFO    ] No update needed
[2026-10-25 08:06:19,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 08:06:19,660.660 INFO    ] 200
[2026-10-25 08:06:19,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:19,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:06:19,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:19,772.772 INFO    ] No camera update needed
[2026-10-25 08:06:19,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:06:19,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:06:19,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:06:19,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:06:21,835.835 INFO    ] ================================================
[2026-10-25 08:06:21,850.850 INFO    ] Launching Daemon at Sun Oct 25 08:06:21 IST 2026
[2026-10-25 08:06:21,860.860 INFO    ] ================================================
[2026-10-25 08:06:22,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:06:22
[2026-10-25 08:06:23,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:06:23,281.281 INFO    ] Initializing speech engine...
[2026-10-25 08:06:23,294.294 INFO    ] 2026-10-25 08:06:23
[2026-10-25 08:06:23,542.542 INFO    ] 2026-10-25 08:06:23
[2026-10-25 08:06:23,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:06:23,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:06:23,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:06:23,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:06:23,985.985 INFO    ] time= 25/10/2026 08:06:23
[2026-10-25 08:06:24,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:06:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:06:24,159.159 INFO    ] No existing commands found in stream
[2026-10-25 08:06:29,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:06:29,173.173 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 08:06:29,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:06:29,744.744 INFO    ] Checking for system updates...
[2026-10-25 08:06:29,780.780 INFO    ] 200
[2026-10-25 08:06:29,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:29,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:06:29,839.839 INFO    ] No update needed
[2026-10-25 08:06:29,842.842 INFO    ] Checking for camera pi updates...
[2026-10-25 08:06:29,879.879 INFO    ] 200
[2026-10-25 08:06:29,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:29,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:06:29,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:06:29,984.984 INFO    ] No camera update needed
[2026-10-25 08:06:29,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:06:29,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:06:29,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:06:30,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:06:32,042.042 INFO    ] ================================================
[2026-10-25 08:06:32,059.059 INFO    ] Launching Daemon at Sun Oct 25 08:06:32 IST 2026
[2026-10-25 08:06:32,071.071 INFO    ] ================================================
[2026-10-25 08:06:32,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:06:32
[2026-10-25 08:06:33,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:06:33,747.747 INFO    ] Initializing speech engine...
[2026-10-25 08:06:33,754.754 INFO    ] 2026-10-25 08:06:33
[2026-10-25 08:06:34,037.037 INFO    ] 2026-10-25 08:06:34
[2026-10-25 08:06:34,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:06:34,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:06:34,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:06:34,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:06:34,572.572 INFO    ] time= 25/10/2026 08:06:34
[2026-10-25 08:06:34,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:06:34,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:06:34,726.726 INFO    ] No existing commands found in stream
[2026-10-25 08:06:39,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:06:39,749.749 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 08:06:43,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:06:43,069.069 INFO    ] Checking for system updates...
[2026-10-25 08:06:43,111.111 INFO    ] 200
[2026-10-25 08:06:43,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:43,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:43,178.178 INFO    ] No update needed
[2026-10-25 08:06:43,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 08:06:43,216.216 INFO    ] 200
[2026-10-25 08:06:43,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:43,260.260 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:06:43,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:43,310.310 INFO    ] No camera update needed
[2026-10-25 08:06:43,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:06:43,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:06:43,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:06:43,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:06:45,371.371 INFO    ] ================================================
[2026-10-25 08:06:45,387.387 INFO    ] Launching Daemon at Sun Oct 25 08:06:45 IST 2026
[2026-10-25 08:06:45,397.397 INFO    ] ================================================
[2026-10-25 08:06:45,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:06:45
[2026-10-25 08:06:46,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:06:46,857.857 INFO    ] Initializing speech engine...
[2026-10-25 08:06:46,864.864 INFO    ] 2026-10-25 08:06:46
[2026-10-25 08:06:47,160.160 INFO    ] 2026-10-25 08:06:47
[2026-10-25 08:06:47,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:06:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:06:47,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:06:47,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:06:47,540.540 INFO    ] time= 25/10/2026 08:06:47
[2026-10-25 08:06:47,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:06:47,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:06:47,668.668 INFO    ] No existing commands found in stream
[2026-10-25 08:06:52,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:06:52,682.682 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 08:06:55,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:06:55,716.716 INFO    ] Checking for system updates...
[2026-10-25 08:06:55,754.754 INFO    ] 200
[2026-10-25 08:06:55,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:55,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:55,824.824 INFO    ] No update needed
[2026-10-25 08:06:55,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 08:06:55,866.866 INFO    ] 200
[2026-10-25 08:06:55,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:06:55,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:06:56,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:06:56,070.070 INFO    ] No camera update needed
[2026-10-25 08:06:56,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:06:56,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:06:56,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:06:56,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:06:58,130.130 INFO    ] ================================================
[2026-10-25 08:06:58,145.145 INFO    ] Launching Daemon at Sun Oct 25 08:06:58 IST 2026
[2026-10-25 08:06:58,157.157 INFO    ] ================================================
[2026-10-25 08:06:58,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:06:58
[2026-10-25 08:06:59,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:06:59,615.615 INFO    ] Initializing speech engine...
[2026-10-25 08:06:59,620.620 INFO    ] 2026-10-25 08:06:59
[2026-10-25 08:06:59,870.870 INFO    ] 2026-10-25 08:06:59
[2026-10-25 08:06:59,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:07:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:07:00,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:07:00,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:07:00,341.341 INFO    ] time= 25/10/2026 08:07:00
[2026-10-25 08:07:00,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:07:00,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:07:00,485.485 INFO    ] No existing commands found in stream
[2026-10-25 08:07:05,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:07:05,504.504 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 08:07:08,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:07:08,343.343 INFO    ] Checking for system updates...
[2026-10-25 08:07:08,378.378 INFO    ] 200
[2026-10-25 08:07:08,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:08,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:08,437.437 INFO    ] No update needed
[2026-10-25 08:07:08,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 08:07:08,473.473 INFO    ] 200
[2026-10-25 08:07:08,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:08,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:07:08,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:08,576.576 INFO    ] No camera update needed
[2026-10-25 08:07:08,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:07:08,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:07:08,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:07:08,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:07:10,633.633 INFO    ] ================================================
[2026-10-25 08:07:10,648.648 INFO    ] Launching Daemon at Sun Oct 25 08:07:10 IST 2026
[2026-10-25 08:07:10,659.659 INFO    ] ================================================
[2026-10-25 08:07:11,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:07:11
[2026-10-25 08:07:11,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:07:12,220.220 INFO    ] Initializing speech engine...
[2026-10-25 08:07:12,242.242 INFO    ] 2026-10-25 08:07:12
[2026-10-25 08:07:12,496.496 INFO    ] 2026-10-25 08:07:12
[2026-10-25 08:07:12,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:07:12,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:07:12,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:07:13,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:07:13,050.050 INFO    ] time= 25/10/2026 08:07:13
[2026-10-25 08:07:13,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:07:13,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:07:13,184.184 INFO    ] No existing commands found in stream
[2026-10-25 08:07:18,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:07:18,213.213 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 08:07:21,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:07:21,464.464 INFO    ] Checking for system updates...
[2026-10-25 08:07:21,502.502 INFO    ] 200
[2026-10-25 08:07:21,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:21,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:07:21,569.569 INFO    ] No update needed
[2026-10-25 08:07:21,572.572 INFO    ] Checking for camera pi updates...
[2026-10-25 08:07:21,611.611 INFO    ] 200
[2026-10-25 08:07:21,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:21,660.660 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:07:21,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:07:21,710.710 INFO    ] No camera update needed
[2026-10-25 08:07:21,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:07:21,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:07:21,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:07:21,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:07:23,771.771 INFO    ] ================================================
[2026-10-25 08:07:23,785.785 INFO    ] Launching Daemon at Sun Oct 25 08:07:23 IST 2026
[2026-10-25 08:07:23,796.796 INFO    ] ================================================
[2026-10-25 08:07:24,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:07:24
[2026-10-25 08:07:25,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:07:25,425.425 INFO    ] Initializing speech engine...
[2026-10-25 08:07:25,439.439 INFO    ] 2026-10-25 08:07:25
[2026-10-25 08:07:25,747.747 INFO    ] 2026-10-25 08:07:25
[2026-10-25 08:07:25,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:07:25,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:07:25,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:07:26,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:07:26,166.166 INFO    ] time= 25/10/2026 08:07:26
[2026-10-25 08:07:26,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:07:26,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:07:26,318.318 INFO    ] No existing commands found in stream
[2026-10-25 08:07:31,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:07:31,353.353 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 08:07:32,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:07:32,592.592 INFO    ] Checking for system updates...
[2026-10-25 08:07:32,631.631 INFO    ] 200
[2026-10-25 08:07:32,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:32,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:32,699.699 INFO    ] No update needed
[2026-10-25 08:07:32,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 08:07:32,742.742 INFO    ] 200
[2026-10-25 08:07:32,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:32,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:07:32,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:32,832.832 INFO    ] No camera update needed
[2026-10-25 08:07:32,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:07:32,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:07:32,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:07:32,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:07:34,893.893 INFO    ] ================================================
[2026-10-25 08:07:34,908.908 INFO    ] Launching Daemon at Sun Oct 25 08:07:34 IST 2026
[2026-10-25 08:07:34,919.919 INFO    ] ================================================
[2026-10-25 08:07:35,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:07:35
[2026-10-25 08:07:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:07:36,350.350 INFO    ] Initializing speech engine...
[2026-10-25 08:07:36,359.359 INFO    ] 2026-10-25 08:07:36
[2026-10-25 08:07:36,606.606 INFO    ] 2026-10-25 08:07:36
[2026-10-25 08:07:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:07:36,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:07:36,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:07:36,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:07:36,974.974 INFO    ] time= 25/10/2026 08:07:36
[2026-10-25 08:07:36,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:07:37,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:07:37,137.137 INFO    ] No existing commands found in stream
[2026-10-25 08:07:42,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:07:42,165.165 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 08:07:44,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:07:44,215.215 INFO    ] Checking for system updates...
[2026-10-25 08:07:44,252.252 INFO    ] 200
[2026-10-25 08:07:44,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:44,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:44,309.309 INFO    ] No update needed
[2026-10-25 08:07:44,312.312 INFO    ] Checking for camera pi updates...
[2026-10-25 08:07:44,345.345 INFO    ] 200
[2026-10-25 08:07:44,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:44,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:07:44,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:44,438.438 INFO    ] No camera update needed
[2026-10-25 08:07:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:07:44,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:07:44,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:07:44,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:07:46,493.493 INFO    ] ================================================
[2026-10-25 08:07:46,509.509 INFO    ] Launching Daemon at Sun Oct 25 08:07:46 IST 2026
[2026-10-25 08:07:46,520.520 INFO    ] ================================================
[2026-10-25 08:07:47,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:07:47
[2026-10-25 08:07:47,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:07:48,189.189 INFO    ] Initializing speech engine...
[2026-10-25 08:07:48,202.202 INFO    ] 2026-10-25 08:07:48
[2026-10-25 08:07:48,513.513 INFO    ] 2026-10-25 08:07:48
[2026-10-25 08:07:48,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:07:48,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:07:48,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:07:48,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:07:48,985.985 INFO    ] time= 25/10/2026 08:07:48
[2026-10-25 08:07:49,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:07:49,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:07:49,166.166 INFO    ] No existing commands found in stream
[2026-10-25 08:07:54,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:07:54,197.197 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 08:07:56,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:07:56,224.224 INFO    ] Checking for system updates...
[2026-10-25 08:07:56,262.262 INFO    ] 200
[2026-10-25 08:07:56,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:56,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:56,331.331 INFO    ] No update needed
[2026-10-25 08:07:56,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 08:07:56,369.369 INFO    ] 200
[2026-10-25 08:07:56,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:07:56,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:07:56,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:07:56,467.467 INFO    ] No camera update needed
[2026-10-25 08:07:56,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:07:56,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:07:56,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:07:56,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:07:58,526.526 INFO    ] ================================================
[2026-10-25 08:07:58,541.541 INFO    ] Launching Daemon at Sun Oct 25 08:07:58 IST 2026
[2026-10-25 08:07:58,552.552 INFO    ] ================================================
[2026-10-25 08:07:59,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:07:59
[2026-10-25 08:07:59,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:07:59,995.995 INFO    ] Initializing speech engine...
[2026-10-25 08:08:00,002.002 INFO    ] 2026-10-25 08:07:59
[2026-10-25 08:08:00,301.301 INFO    ] 2026-10-25 08:08:00
[2026-10-25 08:08:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:08:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:08:00,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:08:00,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:08:00,661.661 INFO    ] time= 25/10/2026 08:08:00
[2026-10-25 08:08:00,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:08:00,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:08:00,738.738 INFO    ] No existing commands found in stream
[2026-10-25 08:08:05,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:08:05,757.757 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 08:08:07,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:08:07,019.019 INFO    ] Checking for system updates...
[2026-10-25 08:08:07,056.056 INFO    ] 200
[2026-10-25 08:08:07,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:07,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:07,116.116 INFO    ] No update needed
[2026-10-25 08:08:07,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 08:08:07,155.155 INFO    ] 200
[2026-10-25 08:08:07,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:07,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:08:07,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:07,249.249 INFO    ] No camera update needed
[2026-10-25 08:08:07,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:08:07,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:08:07,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:08:07,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:08:09,309.309 INFO    ] ================================================
[2026-10-25 08:08:09,324.324 INFO    ] Launching Daemon at Sun Oct 25 08:08:09 IST 2026
[2026-10-25 08:08:09,335.335 INFO    ] ================================================
[2026-10-25 08:08:09,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:08:09
[2026-10-25 08:08:10,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:08:10,758.758 INFO    ] Initializing speech engine...
[2026-10-25 08:08:10,764.764 INFO    ] 2026-10-25 08:08:10
[2026-10-25 08:08:11,062.062 INFO    ] 2026-10-25 08:08:11
[2026-10-25 08:08:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:08:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:08:13,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:08:13,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:08:13,289.289 INFO    ] time= 25/10/2026 08:08:13
[2026-10-25 08:08:13,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:08:13,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:08:13,361.361 INFO    ] No existing commands found in stream
[2026-10-25 08:08:18,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:08:18,374.374 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 08:08:20,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:08:20,831.831 INFO    ] Checking for system updates...
[2026-10-25 08:08:20,867.867 INFO    ] 200
[2026-10-25 08:08:20,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:20,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:08:20,925.925 INFO    ] No update needed
[2026-10-25 08:08:20,927.927 INFO    ] Checking for camera pi updates...
[2026-10-25 08:08:20,965.965 INFO    ] 200
[2026-10-25 08:08:20,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:21,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:08:21,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:08:21,073.073 INFO    ] No camera update needed
[2026-10-25 08:08:21,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:08:21,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:08:21,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:08:21,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:08:23,128.128 INFO    ] ================================================
[2026-10-25 08:08:23,143.143 INFO    ] Launching Daemon at Sun Oct 25 08:08:23 IST 2026
[2026-10-25 08:08:23,154.154 INFO    ] ================================================
[2026-10-25 08:08:23,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:08:23
[2026-10-25 08:08:24,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:08:24,607.607 INFO    ] Initializing speech engine...
[2026-10-25 08:08:24,618.618 INFO    ] 2026-10-25 08:08:24
[2026-10-25 08:08:24,865.865 INFO    ] 2026-10-25 08:08:24
[2026-10-25 08:08:24,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:08:25,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:08:25,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:08:25,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:08:25,232.232 INFO    ] time= 25/10/2026 08:08:25
[2026-10-25 08:08:25,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:08:25,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:08:25,386.386 INFO    ] No existing commands found in stream
[2026-10-25 08:08:30,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:08:30,424.424 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 08:08:31,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:08:31,898.898 INFO    ] Checking for system updates...
[2026-10-25 08:08:31,942.942 INFO    ] 200
[2026-10-25 08:08:31,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:32,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:32,018.018 INFO    ] No update needed
[2026-10-25 08:08:32,021.021 INFO    ] Checking for camera pi updates...
[2026-10-25 08:08:32,060.060 INFO    ] 200
[2026-10-25 08:08:32,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:32,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:08:32,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:32,159.159 INFO    ] No camera update needed
[2026-10-25 08:08:32,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:08:32,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:08:32,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:08:32,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:08:34,219.219 INFO    ] ================================================
[2026-10-25 08:08:34,234.234 INFO    ] Launching Daemon at Sun Oct 25 08:08:34 IST 2026
[2026-10-25 08:08:34,245.245 INFO    ] ================================================
[2026-10-25 08:08:34,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:08:34
[2026-10-25 08:08:35,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:08:35,906.906 INFO    ] Initializing speech engine...
[2026-10-25 08:08:35,914.914 INFO    ] 2026-10-25 08:08:35
[2026-10-25 08:08:36,241.241 INFO    ] 2026-10-25 08:08:36
[2026-10-25 08:08:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:08:36,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:08:36,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:08:36,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:08:36,693.693 INFO    ] time= 25/10/2026 08:08:36
[2026-10-25 08:08:36,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:08:36,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:08:36,885.885 INFO    ] No existing commands found in stream
[2026-10-25 08:08:41,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:08:41,911.911 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 08:08:45,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:08:45,310.310 INFO    ] Checking for system updates...
[2026-10-25 08:08:45,348.348 INFO    ] 200
[2026-10-25 08:08:45,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:45,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:08:45,408.408 INFO    ] No update needed
[2026-10-25 08:08:45,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 08:08:45,446.446 INFO    ] 200
[2026-10-25 08:08:45,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:45,493.493 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:08:45,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:08:45,545.545 INFO    ] No camera update needed
[2026-10-25 08:08:45,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:08:45,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:08:45,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:08:45,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:08:47,604.604 INFO    ] ================================================
[2026-10-25 08:08:47,619.619 INFO    ] Launching Daemon at Sun Oct 25 08:08:47 IST 2026
[2026-10-25 08:08:47,631.631 INFO    ] ================================================
[2026-10-25 08:08:48,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:08:48
[2026-10-25 08:08:48,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:08:49,258.258 INFO    ] Initializing speech engine...
[2026-10-25 08:08:49,272.272 INFO    ] 2026-10-25 08:08:49
[2026-10-25 08:08:49,592.592 INFO    ] 2026-10-25 08:08:49
[2026-10-25 08:08:49,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:08:49,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:08:49,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:08:49,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:08:50,027.027 INFO    ] time= 25/10/2026 08:08:49
[2026-10-25 08:08:50,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:08:50,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:08:50,250.250 INFO    ] No existing commands found in stream
[2026-10-25 08:08:55,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:08:55,282.282 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 08:08:56,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:08:56,965.965 INFO    ] Checking for system updates...
[2026-10-25 08:08:57,004.004 INFO    ] 200
[2026-10-25 08:08:57,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:57,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:57,064.064 INFO    ] No update needed
[2026-10-25 08:08:57,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 08:08:57,102.102 INFO    ] 200
[2026-10-25 08:08:57,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:08:57,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:08:57,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:08:57,307.307 INFO    ] No camera update needed
[2026-10-25 08:08:57,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:08:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:08:57,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:08:57,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:08:59,362.362 INFO    ] ================================================
[2026-10-25 08:08:59,377.377 INFO    ] Launching Daemon at Sun Oct 25 08:08:59 IST 2026
[2026-10-25 08:08:59,388.388 INFO    ] ================================================
[2026-10-25 08:08:59,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:08:59
[2026-10-25 08:09:00,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:09:00,808.808 INFO    ] Initializing speech engine...
[2026-10-25 08:09:00,817.817 INFO    ] 2026-10-25 08:09:00
[2026-10-25 08:09:01,076.076 INFO    ] 2026-10-25 08:09:01
[2026-10-25 08:09:01,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:09:01,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:09:01,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:09:01,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:09:01,467.467 INFO    ] time= 25/10/2026 08:09:01
[2026-10-25 08:09:01,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:09:01,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:09:01,528.528 INFO    ] No existing commands found in stream
[2026-10-25 08:09:06,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:09:06,541.541 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 08:09:07,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:09:07,662.662 INFO    ] Checking for system updates...
[2026-10-25 08:09:07,698.698 INFO    ] 200
[2026-10-25 08:09:07,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:07,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:07,759.759 INFO    ] No update needed
[2026-10-25 08:09:07,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 08:09:07,801.801 INFO    ] 200
[2026-10-25 08:09:07,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:07,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:09:07,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:07,909.909 INFO    ] No camera update needed
[2026-10-25 08:09:07,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:09:07,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:09:07,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:09:07,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:09:09,969.969 INFO    ] ================================================
[2026-10-25 08:09:09,985.985 INFO    ] Launching Daemon at Sun Oct 25 08:09:09 IST 2026
[2026-10-25 08:09:10,996.996 INFO    ] ================================================
[2026-10-25 08:09:10,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:09:10
[2026-10-25 08:09:11,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:09:11,428.428 INFO    ] Initializing speech engine...
[2026-10-25 08:09:11,437.437 INFO    ] 2026-10-25 08:09:11
[2026-10-25 08:09:11,699.699 INFO    ] 2026-10-25 08:09:11
[2026-10-25 08:09:11,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:09:13,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:09:13,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:09:13,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:09:13,673.673 INFO    ] time= 25/10/2026 08:09:13
[2026-10-25 08:09:13,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:09:13,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:09:13,778.778 INFO    ] No existing commands found in stream
[2026-10-25 08:09:18,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:09:18,801.801 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 08:09:21,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:09:21,520.520 INFO    ] Checking for system updates...
[2026-10-25 08:09:21,556.556 INFO    ] 200
[2026-10-25 08:09:21,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:21,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:09:21,621.621 INFO    ] No update needed
[2026-10-25 08:09:21,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 08:09:21,658.658 INFO    ] 200
[2026-10-25 08:09:21,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:21,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:09:21,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:09:21,749.749 INFO    ] No camera update needed
[2026-10-25 08:09:21,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:09:21,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:09:21,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:09:21,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:09:23,804.804 INFO    ] ================================================
[2026-10-25 08:09:23,820.820 INFO    ] Launching Daemon at Sun Oct 25 08:09:23 IST 2026
[2026-10-25 08:09:23,832.832 INFO    ] ================================================
[2026-10-25 08:09:24,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:09:24
[2026-10-25 08:09:25,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:09:25,276.276 INFO    ] Initializing speech engine...
[2026-10-25 08:09:25,291.291 INFO    ] 2026-10-25 08:09:25
[2026-10-25 08:09:25,578.578 INFO    ] 2026-10-25 08:09:25
[2026-10-25 08:09:25,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:09:25,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:09:25,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:09:25,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:09:25,944.944 INFO    ] time= 25/10/2026 08:09:25
[2026-10-25 08:09:25,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:09:25,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:09:26,030.030 INFO    ] No existing commands found in stream
[2026-10-25 08:09:31,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:09:31,044.044 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 08:09:33,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:09:33,932.932 INFO    ] Checking for system updates...
[2026-10-25 08:09:33,968.968 INFO    ] 200
[2026-10-25 08:09:33,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:34,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:34,026.026 INFO    ] No update needed
[2026-10-25 08:09:34,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 08:09:34,066.066 INFO    ] 200
[2026-10-25 08:09:34,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:34,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:09:34,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:34,157.157 INFO    ] No camera update needed
[2026-10-25 08:09:34,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:09:34,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:09:34,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:09:34,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:09:36,212.212 INFO    ] ================================================
[2026-10-25 08:09:36,228.228 INFO    ] Launching Daemon at Sun Oct 25 08:09:36 IST 2026
[2026-10-25 08:09:36,238.238 INFO    ] ================================================
[2026-10-25 08:09:36,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:09:36
[2026-10-25 08:09:37,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:09:37,687.687 INFO    ] Initializing speech engine...
[2026-10-25 08:09:37,702.702 INFO    ] 2026-10-25 08:09:37
[2026-10-25 08:09:37,956.956 INFO    ] 2026-10-25 08:09:37
[2026-10-25 08:09:37,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:09:38,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:09:38,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:09:38,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:09:38,472.472 INFO    ] time= 25/10/2026 08:09:38
[2026-10-25 08:09:38,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:09:38,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:09:38,623.623 INFO    ] No existing commands found in stream
[2026-10-25 08:09:43,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:09:43,654.654 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 08:09:47,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:09:47,744.744 INFO    ] Checking for system updates...
[2026-10-25 08:09:47,781.781 INFO    ] 200
[2026-10-25 08:09:47,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:47,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:47,843.843 INFO    ] No update needed
[2026-10-25 08:09:47,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 08:09:47,880.880 INFO    ] 200
[2026-10-25 08:09:47,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:47,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:09:47,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:47,980.980 INFO    ] No camera update needed
[2026-10-25 08:09:47,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:09:47,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:09:47,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:09:47,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:09:50,041.041 INFO    ] ================================================
[2026-10-25 08:09:50,058.058 INFO    ] Launching Daemon at Sun Oct 25 08:09:50 IST 2026
[2026-10-25 08:09:50,069.069 INFO    ] ================================================
[2026-10-25 08:09:50,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:09:50
[2026-10-25 08:09:51,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:09:51,576.576 INFO    ] Initializing speech engine...
[2026-10-25 08:09:51,590.590 INFO    ] 2026-10-25 08:09:51
[2026-10-25 08:09:51,875.875 INFO    ] 2026-10-25 08:09:51
[2026-10-25 08:09:51,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:09:52,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:09:52,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:09:52,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:09:52,385.385 INFO    ] time= 25/10/2026 08:09:52
[2026-10-25 08:09:52,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:09:52,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:09:52,521.521 INFO    ] No existing commands found in stream
[2026-10-25 08:09:57,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:09:57,536.536 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 08:09:59,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:09:59,419.419 INFO    ] Checking for system updates...
[2026-10-25 08:09:59,456.456 INFO    ] 200
[2026-10-25 08:09:59,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:59,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:59,513.513 INFO    ] No update needed
[2026-10-25 08:09:59,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 08:09:59,550.550 INFO    ] 200
[2026-10-25 08:09:59,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:09:59,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:09:59,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:09:59,643.643 INFO    ] No camera update needed
[2026-10-25 08:09:59,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:09:59,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:09:59,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:09:59,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:10:01,729.729 INFO    ] ================================================
[2026-10-25 08:10:01,787.787 INFO    ] Launching Daemon at Sun Oct 25 08:10:01 IST 2026
[2026-10-25 08:10:01,894.894 INFO    ] ================================================
[2026-10-25 08:10:02,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:10:02
[2026-10-25 08:10:03,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:10:03,840.840 INFO    ] Initializing speech engine...
[2026-10-25 08:10:03,856.856 INFO    ] 2026-10-25 08:10:03
[2026-10-25 08:10:04,127.127 INFO    ] 2026-10-25 08:10:04
[2026-10-25 08:10:04,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:10:04,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:10:04,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:10:04,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:10:04,517.517 INFO    ] time= 25/10/2026 08:10:04
[2026-10-25 08:10:04,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:10:04,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:10:04,702.702 INFO    ] No existing commands found in stream
[2026-10-25 08:10:09,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:10:09,729.729 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 08:10:14,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:10:14,283.283 INFO    ] Checking for system updates...
[2026-10-25 08:10:14,333.333 INFO    ] 200
[2026-10-25 08:10:14,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:14,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:14,402.402 INFO    ] No update needed
[2026-10-25 08:10:14,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 08:10:14,451.451 INFO    ] 200
[2026-10-25 08:10:14,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:14,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:10:14,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:14,563.563 INFO    ] No camera update needed
[2026-10-25 08:10:14,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:10:14,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:10:14,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:10:14,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:10:16,626.626 INFO    ] ================================================
[2026-10-25 08:10:16,642.642 INFO    ] Launching Daemon at Sun Oct 25 08:10:16 IST 2026
[2026-10-25 08:10:16,653.653 INFO    ] ================================================
[2026-10-25 08:10:17,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:10:17
[2026-10-25 08:10:18,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:10:18,319.319 INFO    ] Initializing speech engine...
[2026-10-25 08:10:18,326.326 INFO    ] 2026-10-25 08:10:18
[2026-10-25 08:10:18,634.634 INFO    ] 2026-10-25 08:10:18
[2026-10-25 08:10:18,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:10:18,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:10:18,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:10:19,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:10:19,149.149 INFO    ] time= 25/10/2026 08:10:19
[2026-10-25 08:10:19,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:10:19,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:10:19,296.296 INFO    ] No existing commands found in stream
[2026-10-25 08:10:24,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:10:24,320.320 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 08:10:28,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:10:28,240.240 INFO    ] Checking for system updates...
[2026-10-25 08:10:28,277.277 INFO    ] 200
[2026-10-25 08:10:28,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:28,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:10:28,338.338 INFO    ] No update needed
[2026-10-25 08:10:28,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 08:10:28,381.381 INFO    ] 200
[2026-10-25 08:10:28,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:28,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:10:28,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:10:28,485.485 INFO    ] No camera update needed
[2026-10-25 08:10:28,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:10:28,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:10:28,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:10:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:10:30,545.545 INFO    ] ================================================
[2026-10-25 08:10:30,560.560 INFO    ] Launching Daemon at Sun Oct 25 08:10:30 IST 2026
[2026-10-25 08:10:30,572.572 INFO    ] ================================================
[2026-10-25 08:10:31,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:10:31
[2026-10-25 08:10:31,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:10:32,294.294 INFO    ] Initializing speech engine...
[2026-10-25 08:10:32,310.310 INFO    ] 2026-10-25 08:10:32
[2026-10-25 08:10:32,623.623 INFO    ] 2026-10-25 08:10:32
[2026-10-25 08:10:32,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:10:32,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:10:32,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:10:33,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:10:33,172.172 INFO    ] time= 25/10/2026 08:10:33
[2026-10-25 08:10:33,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:10:33,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:10:33,335.335 INFO    ] No existing commands found in stream
[2026-10-25 08:10:38,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:10:38,364.364 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 08:10:40,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:10:40,137.137 INFO    ] Checking for system updates...
[2026-10-25 08:10:40,173.173 INFO    ] 200
[2026-10-25 08:10:40,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:40,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:40,231.231 INFO    ] No update needed
[2026-10-25 08:10:40,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 08:10:40,268.268 INFO    ] 200
[2026-10-25 08:10:40,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:40,311.311 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:10:40,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:40,364.364 INFO    ] No camera update needed
[2026-10-25 08:10:40,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:10:40,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:10:40,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:10:40,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:10:42,419.419 INFO    ] ================================================
[2026-10-25 08:10:42,435.435 INFO    ] Launching Daemon at Sun Oct 25 08:10:42 IST 2026
[2026-10-25 08:10:42,446.446 INFO    ] ================================================
[2026-10-25 08:10:43,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:10:43
[2026-10-25 08:10:43,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:10:44,109.109 INFO    ] Initializing speech engine...
[2026-10-25 08:10:44,117.117 INFO    ] 2026-10-25 08:10:44
[2026-10-25 08:10:44,436.436 INFO    ] 2026-10-25 08:10:44
[2026-10-25 08:10:44,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:10:44,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:10:44,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:10:44,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:10:44,941.941 INFO    ] time= 25/10/2026 08:10:44
[2026-10-25 08:10:44,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:10:44,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:10:45,090.090 INFO    ] No existing commands found in stream
[2026-10-25 08:10:50,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:10:50,110.110 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 08:10:51,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:10:51,500.500 INFO    ] Checking for system updates...
[2026-10-25 08:10:51,542.542 INFO    ] 200
[2026-10-25 08:10:51,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:51,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:51,609.609 INFO    ] No update needed
[2026-10-25 08:10:51,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 08:10:51,645.645 INFO    ] 200
[2026-10-25 08:10:51,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:10:51,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:10:51,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:10:51,754.754 INFO    ] No camera update needed
[2026-10-25 08:10:51,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:10:51,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:10:51,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:10:51,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:10:53,813.813 INFO    ] ================================================
[2026-10-25 08:10:53,829.829 INFO    ] Launching Daemon at Sun Oct 25 08:10:53 IST 2026
[2026-10-25 08:10:53,840.840 INFO    ] ================================================
[2026-10-25 08:10:54,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:10:54
[2026-10-25 08:10:55,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:10:55,515.515 INFO    ] Initializing speech engine...
[2026-10-25 08:10:55,525.525 INFO    ] 2026-10-25 08:10:55
[2026-10-25 08:10:55,820.820 INFO    ] 2026-10-25 08:10:55
[2026-10-25 08:10:55,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:10:56,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:10:56,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:10:56,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:10:56,357.357 INFO    ] time= 25/10/2026 08:10:56
[2026-10-25 08:10:56,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:10:56,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:10:56,494.494 INFO    ] No existing commands found in stream
[2026-10-25 08:11:01,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:11:01,528.528 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 08:11:05,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:11:05,431.431 INFO    ] Checking for system updates...
[2026-10-25 08:11:05,468.468 INFO    ] 200
[2026-10-25 08:11:05,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:05,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:05,536.536 INFO    ] No update needed
[2026-10-25 08:11:05,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 08:11:05,573.573 INFO    ] 200
[2026-10-25 08:11:05,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:05,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:11:05,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:05,670.670 INFO    ] No camera update needed
[2026-10-25 08:11:05,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:11:05,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:11:05,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:11:05,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:11:07,731.731 INFO    ] ================================================
[2026-10-25 08:11:07,747.747 INFO    ] Launching Daemon at Sun Oct 25 08:11:07 IST 2026
[2026-10-25 08:11:07,759.759 INFO    ] ================================================
[2026-10-25 08:11:08,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:11:08
[2026-10-25 08:11:09,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:11:09,378.378 INFO    ] Initializing speech engine...
[2026-10-25 08:11:09,393.393 INFO    ] 2026-10-25 08:11:09
[2026-10-25 08:11:09,701.701 INFO    ] 2026-10-25 08:11:09
[2026-10-25 08:11:09,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:11:09,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:11:10,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:11:10,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:11:10,210.210 INFO    ] time= 25/10/2026 08:11:10
[2026-10-25 08:11:10,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:11:10,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:11:10,365.365 INFO    ] No existing commands found in stream
[2026-10-25 08:11:15,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:11:15,389.389 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 08:11:19,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:11:19,325.325 INFO    ] Checking for system updates...
[2026-10-25 08:11:19,363.363 INFO    ] 200
[2026-10-25 08:11:19,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:19,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:11:19,429.429 INFO    ] No update needed
[2026-10-25 08:11:19,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 08:11:19,471.471 INFO    ] 200
[2026-10-25 08:11:19,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:19,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:11:19,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:11:19,565.565 INFO    ] No camera update needed
[2026-10-25 08:11:19,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:11:19,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:11:19,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:11:19,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:11:21,620.620 INFO    ] ================================================
[2026-10-25 08:11:21,636.636 INFO    ] Launching Daemon at Sun Oct 25 08:11:21 IST 2026
[2026-10-25 08:11:21,647.647 INFO    ] ================================================
[2026-10-25 08:11:22,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:11:22
[2026-10-25 08:11:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:11:23,281.281 INFO    ] Initializing speech engine...
[2026-10-25 08:11:23,286.286 INFO    ] 2026-10-25 08:11:23
[2026-10-25 08:11:23,560.560 INFO    ] 2026-10-25 08:11:23
[2026-10-25 08:11:23,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:11:23,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:11:23,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:11:23,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:11:24,044.044 INFO    ] time= 25/10/2026 08:11:24
[2026-10-25 08:11:24,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:11:24,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:11:24,192.192 INFO    ] No existing commands found in stream
[2026-10-25 08:11:29,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:11:29,208.208 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 08:11:30,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:11:30,470.470 INFO    ] Checking for system updates...
[2026-10-25 08:11:30,511.511 INFO    ] 200
[2026-10-25 08:11:30,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:30,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:11:30,570.570 INFO    ] No update needed
[2026-10-25 08:11:30,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 08:11:30,609.609 INFO    ] 200
[2026-10-25 08:11:30,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:30,654.654 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:11:30,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:11:30,706.706 INFO    ] No camera update needed
[2026-10-25 08:11:30,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:11:30,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:11:30,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:11:30,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:11:32,766.766 INFO    ] ================================================
[2026-10-25 08:11:32,784.784 INFO    ] Launching Daemon at Sun Oct 25 08:11:32 IST 2026
[2026-10-25 08:11:32,796.796 INFO    ] ================================================
[2026-10-25 08:11:33,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:11:33
[2026-10-25 08:11:34,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:11:34,294.294 INFO    ] Initializing speech engine...
[2026-10-25 08:11:34,317.317 INFO    ] 2026-10-25 08:11:34
[2026-10-25 08:11:34,573.573 INFO    ] 2026-10-25 08:11:34
[2026-10-25 08:11:34,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:11:34,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:11:34,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:11:35,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:11:35,022.022 INFO    ] time= 25/10/2026 08:11:35
[2026-10-25 08:11:35,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:11:35,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:11:35,201.201 INFO    ] No existing commands found in stream
[2026-10-25 08:11:40,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:11:40,215.215 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 08:11:44,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:11:44,779.779 INFO    ] Checking for system updates...
[2026-10-25 08:11:44,816.816 INFO    ] 200
[2026-10-25 08:11:44,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:44,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:44,876.876 INFO    ] No update needed
[2026-10-25 08:11:44,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 08:11:44,914.914 INFO    ] 200
[2026-10-25 08:11:44,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:44,963.963 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:11:45,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:45,014.014 INFO    ] No camera update needed
[2026-10-25 08:11:45,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:11:45,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:11:45,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:11:45,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:11:47,074.074 INFO    ] ================================================
[2026-10-25 08:11:47,089.089 INFO    ] Launching Daemon at Sun Oct 25 08:11:47 IST 2026
[2026-10-25 08:11:47,099.099 INFO    ] ================================================
[2026-10-25 08:11:47,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:11:47
[2026-10-25 08:11:48,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:11:48,739.739 INFO    ] Initializing speech engine...
[2026-10-25 08:11:48,753.753 INFO    ] 2026-10-25 08:11:48
[2026-10-25 08:11:49,031.031 INFO    ] 2026-10-25 08:11:49
[2026-10-25 08:11:49,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:11:49,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:11:49,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:11:49,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:11:49,528.528 INFO    ] time= 25/10/2026 08:11:49
[2026-10-25 08:11:49,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:11:49,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:11:49,667.667 INFO    ] No existing commands found in stream
[2026-10-25 08:11:54,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:11:54,681.681 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 08:11:57,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:11:57,354.354 INFO    ] Checking for system updates...
[2026-10-25 08:11:57,390.390 INFO    ] 200
[2026-10-25 08:11:57,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:57,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:57,455.455 INFO    ] No update needed
[2026-10-25 08:11:57,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 08:11:57,494.494 INFO    ] 200
[2026-10-25 08:11:57,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:11:57,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:11:57,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:11:57,587.587 INFO    ] No camera update needed
[2026-10-25 08:11:57,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:11:57,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:11:57,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:11:57,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:11:59,641.641 INFO    ] ================================================
[2026-10-25 08:11:59,656.656 INFO    ] Launching Daemon at Sun Oct 25 08:11:59 IST 2026
[2026-10-25 08:11:59,668.668 INFO    ] ================================================
[2026-10-25 08:12:00,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:12:00
[2026-10-25 08:12:00,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:12:01,108.108 INFO    ] Initializing speech engine...
[2026-10-25 08:12:01,132.132 INFO    ] 2026-10-25 08:12:01
[2026-10-25 08:12:01,388.388 INFO    ] 2026-10-25 08:12:01
[2026-10-25 08:12:01,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:12:01,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:12:01,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:12:01,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:12:01,768.768 INFO    ] time= 25/10/2026 08:12:01
[2026-10-25 08:12:01,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:12:01,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:12:01,846.846 INFO    ] No existing commands found in stream
[2026-10-25 08:12:06,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:12:06,884.884 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 08:12:08,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:12:08,155.155 INFO    ] Checking for system updates...
[2026-10-25 08:12:08,192.192 INFO    ] 200
[2026-10-25 08:12:08,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:08,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:12:08,251.251 INFO    ] No update needed
[2026-10-25 08:12:08,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 08:12:08,287.287 INFO    ] 200
[2026-10-25 08:12:08,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:08,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:12:08,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:12:08,393.393 INFO    ] No camera update needed
[2026-10-25 08:12:08,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:12:08,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:12:08,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:12:08,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:12:10,448.448 INFO    ] ================================================
[2026-10-25 08:12:10,464.464 INFO    ] Launching Daemon at Sun Oct 25 08:12:10 IST 2026
[2026-10-25 08:12:10,474.474 INFO    ] ================================================
[2026-10-25 08:12:11,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:12:11
[2026-10-25 08:12:11,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:12:11,933.933 INFO    ] Initializing speech engine...
[2026-10-25 08:12:11,940.940 INFO    ] 2026-10-25 08:12:11
[2026-10-25 08:12:12,242.242 INFO    ] 2026-10-25 08:12:12
[2026-10-25 08:12:12,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:12:14,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:12:14,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:12:14,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:12:14,799.799 INFO    ] time= 25/10/2026 08:12:14
[2026-10-25 08:12:14,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:12:14,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:12:14,870.870 INFO    ] No existing commands found in stream
[2026-10-25 08:12:19,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:12:19,895.895 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 08:12:23,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:12:23,051.051 INFO    ] Checking for system updates...
[2026-10-25 08:12:23,089.089 INFO    ] 200
[2026-10-25 08:12:23,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:23,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:23,148.148 INFO    ] No update needed
[2026-10-25 08:12:23,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 08:12:23,189.189 INFO    ] 200
[2026-10-25 08:12:23,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:23,241.241 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:12:23,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:23,304.304 INFO    ] No camera update needed
[2026-10-25 08:12:23,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:12:23,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:12:23,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:12:23,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:12:25,365.365 INFO    ] ================================================
[2026-10-25 08:12:25,382.382 INFO    ] Launching Daemon at Sun Oct 25 08:12:25 IST 2026
[2026-10-25 08:12:25,394.394 INFO    ] ================================================
[2026-10-25 08:12:26,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:12:26
[2026-10-25 08:12:26,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:12:26,882.882 INFO    ] Initializing speech engine...
[2026-10-25 08:12:26,889.889 INFO    ] 2026-10-25 08:12:26
[2026-10-25 08:12:27,191.191 INFO    ] 2026-10-25 08:12:27
[2026-10-25 08:12:27,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:12:27,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:12:27,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:12:27,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:12:27,555.555 INFO    ] time= 25/10/2026 08:12:27
[2026-10-25 08:12:27,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:12:27,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:12:27,635.635 INFO    ] No existing commands found in stream
[2026-10-25 08:12:32,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:12:32,646.646 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 08:12:33,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:12:33,811.811 INFO    ] Checking for system updates...
[2026-10-25 08:12:33,853.853 INFO    ] 200
[2026-10-25 08:12:33,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:33,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:33,919.919 INFO    ] No update needed
[2026-10-25 08:12:33,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 08:12:33,955.955 INFO    ] 200
[2026-10-25 08:12:33,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:33,998.998 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:12:34,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:34,050.050 INFO    ] No camera update needed
[2026-10-25 08:12:34,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:12:34,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:12:34,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:12:34,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:12:36,104.104 INFO    ] ================================================
[2026-10-25 08:12:36,120.120 INFO    ] Launching Daemon at Sun Oct 25 08:12:36 IST 2026
[2026-10-25 08:12:36,131.131 INFO    ] ================================================
[2026-10-25 08:12:36,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:12:36
[2026-10-25 08:12:37,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:12:37,865.865 INFO    ] Initializing speech engine...
[2026-10-25 08:12:37,876.876 INFO    ] 2026-10-25 08:12:37
[2026-10-25 08:12:38,201.201 INFO    ] 2026-10-25 08:12:38
[2026-10-25 08:12:38,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:12:38,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:12:38,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:12:38,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:12:38,648.648 INFO    ] time= 25/10/2026 08:12:38
[2026-10-25 08:12:38,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:12:38,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:12:38,809.809 INFO    ] No existing commands found in stream
[2026-10-25 08:12:43,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:12:43,829.829 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 08:12:45,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:12:45,266.266 INFO    ] Checking for system updates...
[2026-10-25 08:12:45,302.302 INFO    ] 200
[2026-10-25 08:12:45,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:45,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:45,362.362 INFO    ] No update needed
[2026-10-25 08:12:45,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 08:12:45,399.399 INFO    ] 200
[2026-10-25 08:12:45,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:45,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:12:45,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:45,491.491 INFO    ] No camera update needed
[2026-10-25 08:12:45,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:12:45,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:12:45,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:12:45,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:12:47,548.548 INFO    ] ================================================
[2026-10-25 08:12:47,564.564 INFO    ] Launching Daemon at Sun Oct 25 08:12:47 IST 2026
[2026-10-25 08:12:47,575.575 INFO    ] ================================================
[2026-10-25 08:12:48,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:12:48
[2026-10-25 08:12:48,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:12:49,081.081 INFO    ] Initializing speech engine...
[2026-10-25 08:12:49,094.094 INFO    ] 2026-10-25 08:12:49
[2026-10-25 08:12:49,355.355 INFO    ] 2026-10-25 08:12:49
[2026-10-25 08:12:49,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:12:49,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:12:49,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:12:49,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:12:49,782.782 INFO    ] time= 25/10/2026 08:12:49
[2026-10-25 08:12:49,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:12:49,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:12:49,969.969 INFO    ] No existing commands found in stream
[2026-10-25 08:12:54,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:12:54,986.986 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 08:12:58,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:12:58,579.579 INFO    ] Checking for system updates...
[2026-10-25 08:12:58,615.615 INFO    ] 200
[2026-10-25 08:12:58,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:58,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:58,674.674 INFO    ] No update needed
[2026-10-25 08:12:58,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 08:12:58,711.711 INFO    ] 200
[2026-10-25 08:12:58,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:12:58,754.754 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:12:58,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:12:58,804.804 INFO    ] No camera update needed
[2026-10-25 08:12:58,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:12:58,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:12:58,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:12:58,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:13:00,862.862 INFO    ] ================================================
[2026-10-25 08:13:00,882.882 INFO    ] Launching Daemon at Sun Oct 25 08:13:00 IST 2026
[2026-10-25 08:13:00,893.893 INFO    ] ================================================
[2026-10-25 08:13:01,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:13:01
[2026-10-25 08:13:02,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:13:02,592.592 INFO    ] Initializing speech engine...
[2026-10-25 08:13:02,600.600 INFO    ] 2026-10-25 08:13:02
[2026-10-25 08:13:02,898.898 INFO    ] 2026-10-25 08:13:02
[2026-10-25 08:13:02,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:13:03,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:13:03,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:13:03,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:13:03,451.451 INFO    ] time= 25/10/2026 08:13:03
[2026-10-25 08:13:03,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:13:03,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:13:03,602.602 INFO    ] No existing commands found in stream
[2026-10-25 08:13:08,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:13:08,636.636 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 08:13:11,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:13:11,530.530 INFO    ] Checking for system updates...
[2026-10-25 08:13:11,575.575 INFO    ] 200
[2026-10-25 08:13:11,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:11,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:13:11,641.641 INFO    ] No update needed
[2026-10-25 08:13:11,644.644 INFO    ] Checking for camera pi updates...
[2026-10-25 08:13:11,678.678 INFO    ] 200
[2026-10-25 08:13:11,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:11,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:13:11,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:13:11,881.881 INFO    ] No camera update needed
[2026-10-25 08:13:11,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:13:11,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:13:11,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:13:11,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:13:13,938.938 INFO    ] ================================================
[2026-10-25 08:13:13,954.954 INFO    ] Launching Daemon at Sun Oct 25 08:13:13 IST 2026
[2026-10-25 08:13:13,965.965 INFO    ] ================================================
[2026-10-25 08:13:14,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:13:14
[2026-10-25 08:13:15,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:13:15,470.470 INFO    ] Initializing speech engine...
[2026-10-25 08:13:15,488.488 INFO    ] 2026-10-25 08:13:15
[2026-10-25 08:13:15,738.738 INFO    ] 2026-10-25 08:13:15
[2026-10-25 08:13:15,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:13:17,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:13:17,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:13:17,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:13:17,764.764 INFO    ] time= 25/10/2026 08:13:17
[2026-10-25 08:13:17,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:13:17,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:13:17,877.877 INFO    ] No existing commands found in stream
[2026-10-25 08:13:22,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:13:22,891.891 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 08:13:24,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:13:24,917.917 INFO    ] Checking for system updates...
[2026-10-25 08:13:24,954.954 INFO    ] 200
[2026-10-25 08:13:24,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:25,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:25,011.011 INFO    ] No update needed
[2026-10-25 08:13:25,014.014 INFO    ] Checking for camera pi updates...
[2026-10-25 08:13:25,047.047 INFO    ] 200
[2026-10-25 08:13:25,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:25,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:13:25,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:25,144.144 INFO    ] No camera update needed
[2026-10-25 08:13:25,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:13:25,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:13:25,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:13:25,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:13:27,198.198 INFO    ] ================================================
[2026-10-25 08:13:27,213.213 INFO    ] Launching Daemon at Sun Oct 25 08:13:27 IST 2026
[2026-10-25 08:13:27,224.224 INFO    ] ================================================
[2026-10-25 08:13:27,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:13:27
[2026-10-25 08:13:28,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:13:28,735.735 INFO    ] Initializing speech engine...
[2026-10-25 08:13:28,744.744 INFO    ] 2026-10-25 08:13:28
[2026-10-25 08:13:28,996.996 INFO    ] 2026-10-25 08:13:28
[2026-10-25 08:13:29,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:13:29,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:13:29,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:13:29,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:13:29,369.369 INFO    ] time= 25/10/2026 08:13:29
[2026-10-25 08:13:29,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:13:29,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:13:29,545.545 INFO    ] No existing commands found in stream
[2026-10-25 08:13:34,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:13:34,573.573 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 08:13:38,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:13:38,192.192 INFO    ] Checking for system updates...
[2026-10-25 08:13:38,231.231 INFO    ] 200
[2026-10-25 08:13:38,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:38,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:38,291.291 INFO    ] No update needed
[2026-10-25 08:13:38,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 08:13:38,329.329 INFO    ] 200
[2026-10-25 08:13:38,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:38,372.372 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:13:38,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:38,408.408 INFO    ] No camera update needed
[2026-10-25 08:13:38,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:13:38,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:13:38,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:13:38,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:13:40,463.463 INFO    ] ================================================
[2026-10-25 08:13:40,478.478 INFO    ] Launching Daemon at Sun Oct 25 08:13:40 IST 2026
[2026-10-25 08:13:40,489.489 INFO    ] ================================================
[2026-10-25 08:13:41,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:13:41
[2026-10-25 08:13:41,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:13:41,943.943 INFO    ] Initializing speech engine...
[2026-10-25 08:13:41,952.952 INFO    ] 2026-10-25 08:13:41
[2026-10-25 08:13:42,199.199 INFO    ] 2026-10-25 08:13:42
[2026-10-25 08:13:42,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:13:42,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:13:42,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:13:42,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:13:42,569.569 INFO    ] time= 25/10/2026 08:13:42
[2026-10-25 08:13:42,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:13:42,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:13:42,740.740 INFO    ] No existing commands found in stream
[2026-10-25 08:13:47,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:13:47,768.768 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 08:13:51,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:13:51,806.806 INFO    ] Checking for system updates...
[2026-10-25 08:13:51,848.848 INFO    ] 200
[2026-10-25 08:13:51,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:51,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:51,916.916 INFO    ] No update needed
[2026-10-25 08:13:51,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 08:13:51,952.952 INFO    ] 200
[2026-10-25 08:13:51,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:13:52,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:13:52,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:13:52,058.058 INFO    ] No camera update needed
[2026-10-25 08:13:52,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:13:52,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:13:52,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:13:52,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:13:54,112.112 INFO    ] ================================================
[2026-10-25 08:13:54,127.127 INFO    ] Launching Daemon at Sun Oct 25 08:13:54 IST 2026
[2026-10-25 08:13:54,138.138 INFO    ] ================================================
[2026-10-25 08:13:54,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:13:54
[2026-10-25 08:13:55,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:13:55,775.775 INFO    ] Initializing speech engine...
[2026-10-25 08:13:55,785.785 INFO    ] 2026-10-25 08:13:55
[2026-10-25 08:13:56,034.034 INFO    ] 2026-10-25 08:13:56
[2026-10-25 08:13:56,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:13:56,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:13:56,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:13:56,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:13:56,586.586 INFO    ] time= 25/10/2026 08:13:56
[2026-10-25 08:13:56,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:13:56,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:13:56,721.721 INFO    ] No existing commands found in stream
[2026-10-25 08:14:01,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:14:01,752.752 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 08:14:02,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:14:02,764.764 INFO    ] Checking for system updates...
[2026-10-25 08:14:02,801.801 INFO    ] 200
[2026-10-25 08:14:02,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:02,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:02,880.880 INFO    ] No update needed
[2026-10-25 08:14:02,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 08:14:02,918.918 INFO    ] 200
[2026-10-25 08:14:02,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:02,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:14:03,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:03,033.033 INFO    ] No camera update needed
[2026-10-25 08:14:03,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:14:03,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:14:03,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:14:03,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:14:05,087.087 INFO    ] ================================================
[2026-10-25 08:14:05,103.103 INFO    ] Launching Daemon at Sun Oct 25 08:14:05 IST 2026
[2026-10-25 08:14:05,114.114 INFO    ] ================================================
[2026-10-25 08:14:05,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:14:05
[2026-10-25 08:14:06,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:14:06,729.729 INFO    ] Initializing speech engine...
[2026-10-25 08:14:06,737.737 INFO    ] 2026-10-25 08:14:06
[2026-10-25 08:14:07,024.024 INFO    ] 2026-10-25 08:14:07
[2026-10-25 08:14:07,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:14:07,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:14:07,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:14:07,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:14:07,559.559 INFO    ] time= 25/10/2026 08:14:07
[2026-10-25 08:14:07,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:14:07,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:14:07,712.712 INFO    ] No existing commands found in stream
[2026-10-25 08:14:12,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:14:12,733.733 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 08:14:18,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:14:18,430.430 INFO    ] Checking for system updates...
[2026-10-25 08:14:18,467.467 INFO    ] 200
[2026-10-25 08:14:18,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:18,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:18,524.524 INFO    ] No update needed
[2026-10-25 08:14:18,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 08:14:18,561.561 INFO    ] 200
[2026-10-25 08:14:18,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:18,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:14:18,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:18,658.658 INFO    ] No camera update needed
[2026-10-25 08:14:18,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:14:18,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:14:18,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:14:18,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:14:20,713.713 INFO    ] ================================================
[2026-10-25 08:14:20,728.728 INFO    ] Launching Daemon at Sun Oct 25 08:14:20 IST 2026
[2026-10-25 08:14:20,739.739 INFO    ] ================================================
[2026-10-25 08:14:21,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:14:21
[2026-10-25 08:14:22,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:14:22,431.431 INFO    ] Initializing speech engine...
[2026-10-25 08:14:22,444.444 INFO    ] 2026-10-25 08:14:22
[2026-10-25 08:14:22,734.734 INFO    ] 2026-10-25 08:14:22
[2026-10-25 08:14:22,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:14:23,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:14:23,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:14:23,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:14:23,207.207 INFO    ] time= 25/10/2026 08:14:23
[2026-10-25 08:14:23,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:14:23,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:14:23,353.353 INFO    ] No existing commands found in stream
[2026-10-25 08:14:28,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:14:28,378.378 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 08:14:28,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:14:28,895.895 INFO    ] Checking for system updates...
[2026-10-25 08:14:28,936.936 INFO    ] 200
[2026-10-25 08:14:28,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:28,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:28,994.994 INFO    ] No update needed
[2026-10-25 08:14:28,996.996 INFO    ] Checking for camera pi updates...
[2026-10-25 08:14:29,035.035 INFO    ] 200
[2026-10-25 08:14:29,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:29,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:14:29,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:29,143.143 INFO    ] No camera update needed
[2026-10-25 08:14:29,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:14:29,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:14:29,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:14:29,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:14:31,202.202 INFO    ] ================================================
[2026-10-25 08:14:31,220.220 INFO    ] Launching Daemon at Sun Oct 25 08:14:31 IST 2026
[2026-10-25 08:14:31,232.232 INFO    ] ================================================
[2026-10-25 08:14:31,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:14:31
[2026-10-25 08:14:32,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:14:32,980.980 INFO    ] Initializing speech engine...
[2026-10-25 08:14:32,994.994 INFO    ] 2026-10-25 08:14:32
[2026-10-25 08:14:33,311.311 INFO    ] 2026-10-25 08:14:33
[2026-10-25 08:14:33,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:14:33,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:14:33,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:14:33,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:14:33,819.819 INFO    ] time= 25/10/2026 08:14:33
[2026-10-25 08:14:33,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:14:33,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:14:33,962.962 INFO    ] No existing commands found in stream
[2026-10-25 08:14:38,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:14:38,993.993 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 08:14:39,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:14:39,469.469 INFO    ] Checking for system updates...
[2026-10-25 08:14:39,506.506 INFO    ] 200
[2026-10-25 08:14:39,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:39,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:39,564.564 INFO    ] No update needed
[2026-10-25 08:14:39,566.566 INFO    ] Checking for camera pi updates...
[2026-10-25 08:14:39,605.605 INFO    ] 200
[2026-10-25 08:14:39,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:39,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:14:39,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:14:39,706.706 INFO    ] No camera update needed
[2026-10-25 08:14:39,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:14:39,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:14:39,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:14:39,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:14:41,761.761 INFO    ] ================================================
[2026-10-25 08:14:41,776.776 INFO    ] Launching Daemon at Sun Oct 25 08:14:41 IST 2026
[2026-10-25 08:14:41,786.786 INFO    ] ================================================
[2026-10-25 08:14:42,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:14:42
[2026-10-25 08:14:43,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:14:43,461.461 INFO    ] Initializing speech engine...
[2026-10-25 08:14:43,470.470 INFO    ] 2026-10-25 08:14:43
[2026-10-25 08:14:43,751.751 INFO    ] 2026-10-25 08:14:43
[2026-10-25 08:14:43,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:14:44,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:14:44,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:14:44,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:14:44,318.318 INFO    ] time= 25/10/2026 08:14:44
[2026-10-25 08:14:44,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:14:44,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:14:44,482.482 INFO    ] No existing commands found in stream
[2026-10-25 08:14:49,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:14:49,522.522 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 08:14:53,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:14:53,977.977 INFO    ] Checking for system updates...
[2026-10-25 08:14:54,015.015 INFO    ] 200
[2026-10-25 08:14:54,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:54,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:14:54,082.082 INFO    ] No update needed
[2026-10-25 08:14:54,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 08:14:54,124.124 INFO    ] 200
[2026-10-25 08:14:54,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:14:54,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:14:54,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:14:54,225.225 INFO    ] No camera update needed
[2026-10-25 08:14:54,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:14:54,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:14:54,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:14:54,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:14:56,279.279 INFO    ] ================================================
[2026-10-25 08:14:56,295.295 INFO    ] Launching Daemon at Sun Oct 25 08:14:56 IST 2026
[2026-10-25 08:14:56,305.305 INFO    ] ================================================
[2026-10-25 08:14:56,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:14:56
[2026-10-25 08:14:57,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:14:57,812.812 INFO    ] Initializing speech engine...
[2026-10-25 08:14:57,827.827 INFO    ] 2026-10-25 08:14:57
[2026-10-25 08:14:58,092.092 INFO    ] 2026-10-25 08:14:58
[2026-10-25 08:14:58,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:14:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:14:58,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:14:58,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:14:58,573.573 INFO    ] time= 25/10/2026 08:14:58
[2026-10-25 08:14:58,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:14:58,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:14:58,729.729 INFO    ] No existing commands found in stream
[2026-10-25 08:15:03,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:15:03,756.756 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 08:15:05,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:15:05,546.546 INFO    ] Checking for system updates...
[2026-10-25 08:15:05,589.589 INFO    ] 200
[2026-10-25 08:15:05,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:05,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:05,654.654 INFO    ] No update needed
[2026-10-25 08:15:05,656.656 INFO    ] Checking for camera pi updates...
[2026-10-25 08:15:05,695.695 INFO    ] 200
[2026-10-25 08:15:05,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:05,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:15:05,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:05,804.804 INFO    ] No camera update needed
[2026-10-25 08:15:05,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:15:05,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:15:05,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:15:05,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:15:07,860.860 INFO    ] ================================================
[2026-10-25 08:15:07,876.876 INFO    ] Launching Daemon at Sun Oct 25 08:15:07 IST 2026
[2026-10-25 08:15:07,887.887 INFO    ] ================================================
[2026-10-25 08:15:08,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:15:08
[2026-10-25 08:15:09,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:15:09,556.556 INFO    ] Initializing speech engine...
[2026-10-25 08:15:09,564.564 INFO    ] 2026-10-25 08:15:09
[2026-10-25 08:15:09,856.856 INFO    ] 2026-10-25 08:15:09
[2026-10-25 08:15:09,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:15:10,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:15:10,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:15:10,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:15:10,408.408 INFO    ] time= 25/10/2026 08:15:10
[2026-10-25 08:15:10,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:15:10,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:15:10,558.558 INFO    ] No existing commands found in stream
[2026-10-25 08:15:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:15:15,584.584 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 08:15:18,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:15:18,597.597 INFO    ] Checking for system updates...
[2026-10-25 08:15:18,645.645 INFO    ] 200
[2026-10-25 08:15:18,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:18,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:15:18,710.710 INFO    ] No update needed
[2026-10-25 08:15:18,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 08:15:18,752.752 INFO    ] 200
[2026-10-25 08:15:18,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:18,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:15:18,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:15:18,963.963 INFO    ] No camera update needed
[2026-10-25 08:15:18,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:15:18,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:15:18,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:15:18,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:15:21,022.022 INFO    ] ================================================
[2026-10-25 08:15:21,037.037 INFO    ] Launching Daemon at Sun Oct 25 08:15:21 IST 2026
[2026-10-25 08:15:21,048.048 INFO    ] ================================================
[2026-10-25 08:15:21,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:15:21
[2026-10-25 08:15:22,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:15:22,625.625 INFO    ] Initializing speech engine...
[2026-10-25 08:15:22,632.632 INFO    ] 2026-10-25 08:15:22
[2026-10-25 08:15:22,914.914 INFO    ] 2026-10-25 08:15:22
[2026-10-25 08:15:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:15:23,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:15:23,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:15:23,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:15:23,283.283 INFO    ] time= 25/10/2026 08:15:23
[2026-10-25 08:15:23,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:15:23,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:15:23,455.455 INFO    ] No existing commands found in stream
[2026-10-25 08:15:28,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:15:28,488.488 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 08:15:32,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:15:32,949.949 INFO    ] Checking for system updates...
[2026-10-25 08:15:32,985.985 INFO    ] 200
[2026-10-25 08:15:32,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:33,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:33,051.051 INFO    ] No update needed
[2026-10-25 08:15:33,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 08:15:33,087.087 INFO    ] 200
[2026-10-25 08:15:33,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:33,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:15:33,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:33,169.169 INFO    ] No camera update needed
[2026-10-25 08:15:33,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:15:33,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:15:33,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:15:33,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:15:35,226.226 INFO    ] ================================================
[2026-10-25 08:15:35,242.242 INFO    ] Launching Daemon at Sun Oct 25 08:15:35 IST 2026
[2026-10-25 08:15:35,253.253 INFO    ] ================================================
[2026-10-25 08:15:35,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:15:35
[2026-10-25 08:15:36,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:15:36,720.720 INFO    ] Initializing speech engine...
[2026-10-25 08:15:36,744.744 INFO    ] 2026-10-25 08:15:36
[2026-10-25 08:15:37,006.006 INFO    ] 2026-10-25 08:15:36
[2026-10-25 08:15:37,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:15:37,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:15:37,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:15:37,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:15:37,496.496 INFO    ] time= 25/10/2026 08:15:37
[2026-10-25 08:15:37,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:15:37,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:15:37,635.635 INFO    ] No existing commands found in stream
[2026-10-25 08:15:42,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:15:42,658.658 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 08:15:43,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:15:43,748.748 INFO    ] Checking for system updates...
[2026-10-25 08:15:43,790.790 INFO    ] 200
[2026-10-25 08:15:43,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:43,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:15:43,864.864 INFO    ] No update needed
[2026-10-25 08:15:43,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 08:15:43,907.907 INFO    ] 200
[2026-10-25 08:15:43,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:43,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:15:44,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:15:44,016.016 INFO    ] No camera update needed
[2026-10-25 08:15:44,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:15:44,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:15:44,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:15:44,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:15:46,077.077 INFO    ] ================================================
[2026-10-25 08:15:46,093.093 INFO    ] Launching Daemon at Sun Oct 25 08:15:46 IST 2026
[2026-10-25 08:15:46,103.103 INFO    ] ================================================
[2026-10-25 08:15:46,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:15:46
[2026-10-25 08:15:47,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:15:47,558.558 INFO    ] Initializing speech engine...
[2026-10-25 08:15:47,566.566 INFO    ] 2026-10-25 08:15:47
[2026-10-25 08:15:47,826.826 INFO    ] 2026-10-25 08:15:47
[2026-10-25 08:15:47,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:15:48,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:15:48,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:15:48,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:15:48,972.972 INFO    ] time= 25/10/2026 08:15:48
[2026-10-25 08:15:48,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:15:48,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:15:49,048.048 INFO    ] No existing commands found in stream
[2026-10-25 08:15:54,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:15:54,060.060 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 08:15:57,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:15:57,113.113 INFO    ] Checking for system updates...
[2026-10-25 08:15:57,150.150 INFO    ] 200
[2026-10-25 08:15:57,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:57,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:57,207.207 INFO    ] No update needed
[2026-10-25 08:15:57,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 08:15:57,248.248 INFO    ] 200
[2026-10-25 08:15:57,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:15:57,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:15:57,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:15:57,346.346 INFO    ] No camera update needed
[2026-10-25 08:15:57,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:15:57,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:15:57,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:15:57,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:15:59,403.403 INFO    ] ================================================
[2026-10-25 08:15:59,418.418 INFO    ] Launching Daemon at Sun Oct 25 08:15:59 IST 2026
[2026-10-25 08:15:59,429.429 INFO    ] ================================================
[2026-10-25 08:16:00,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:16:00
[2026-10-25 08:16:00,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:16:01,134.134 INFO    ] Initializing speech engine...
[2026-10-25 08:16:01,148.148 INFO    ] 2026-10-25 08:16:01
[2026-10-25 08:16:01,439.439 INFO    ] 2026-10-25 08:16:01
[2026-10-25 08:16:01,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:16:01,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:16:01,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:16:01,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:16:01,867.867 INFO    ] time= 25/10/2026 08:16:01
[2026-10-25 08:16:01,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:16:01,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:16:01,935.935 INFO    ] No existing commands found in stream
[2026-10-25 08:16:06,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:16:06,948.948 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 08:16:10,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:16:10,897.897 INFO    ] Checking for system updates...
[2026-10-25 08:16:10,940.940 INFO    ] 200
[2026-10-25 08:16:10,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:11,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:11,006.006 INFO    ] No update needed
[2026-10-25 08:16:11,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 08:16:11,046.046 INFO    ] 200
[2026-10-25 08:16:11,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:11,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:16:11,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:11,139.139 INFO    ] No camera update needed
[2026-10-25 08:16:11,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:16:11,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:16:11,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:16:11,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:16:13,194.194 INFO    ] ================================================
[2026-10-25 08:16:13,210.210 INFO    ] Launching Daemon at Sun Oct 25 08:16:13 IST 2026
[2026-10-25 08:16:13,221.221 INFO    ] ================================================
[2026-10-25 08:16:13,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:16:13
[2026-10-25 08:16:14,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:16:14,805.805 INFO    ] Initializing speech engine...
[2026-10-25 08:16:14,818.818 INFO    ] 2026-10-25 08:16:14
[2026-10-25 08:16:15,100.100 INFO    ] 2026-10-25 08:16:15
[2026-10-25 08:16:15,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:16:15,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:16:15,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:16:15,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:16:15,591.591 INFO    ] time= 25/10/2026 08:16:15
[2026-10-25 08:16:15,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:16:15,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:16:15,777.777 INFO    ] No existing commands found in stream
[2026-10-25 08:16:20,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:16:20,805.805 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 08:16:22,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:16:22,345.345 INFO    ] Checking for system updates...
[2026-10-25 08:16:22,383.383 INFO    ] 200
[2026-10-25 08:16:22,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:22,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:22,444.444 INFO    ] No update needed
[2026-10-25 08:16:22,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 08:16:22,482.482 INFO    ] 200
[2026-10-25 08:16:22,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:22,527.527 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:16:22,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:22,578.578 INFO    ] No camera update needed
[2026-10-25 08:16:22,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:16:22,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:16:22,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:16:22,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:16:24,635.635 INFO    ] ================================================
[2026-10-25 08:16:24,651.651 INFO    ] Launching Daemon at Sun Oct 25 08:16:24 IST 2026
[2026-10-25 08:16:24,670.670 INFO    ] ================================================
[2026-10-25 08:16:25,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:16:25
[2026-10-25 08:16:25,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:16:26,090.090 INFO    ] Initializing speech engine...
[2026-10-25 08:16:26,098.098 INFO    ] 2026-10-25 08:16:26
[2026-10-25 08:16:26,393.393 INFO    ] 2026-10-25 08:16:26
[2026-10-25 08:16:26,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:16:26,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:16:26,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:16:26,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:16:26,774.774 INFO    ] time= 25/10/2026 08:16:26
[2026-10-25 08:16:26,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:16:26,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:16:26,898.898 INFO    ] No existing commands found in stream
[2026-10-25 08:16:31,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:16:31,914.914 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 08:16:33,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:16:33,469.469 INFO    ] Checking for system updates...
[2026-10-25 08:16:33,509.509 INFO    ] 200
[2026-10-25 08:16:33,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:33,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:16:33,574.574 INFO    ] No update needed
[2026-10-25 08:16:33,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 08:16:33,615.615 INFO    ] 200
[2026-10-25 08:16:33,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:33,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:16:33,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:16:33,717.717 INFO    ] No camera update needed
[2026-10-25 08:16:33,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:16:33,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:16:33,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:16:33,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:16:35,772.772 INFO    ] ================================================
[2026-10-25 08:16:35,789.789 INFO    ] Launching Daemon at Sun Oct 25 08:16:35 IST 2026
[2026-10-25 08:16:35,802.802 INFO    ] ================================================
[2026-10-25 08:16:36,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:16:36
[2026-10-25 08:16:37,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:16:37,318.318 INFO    ] Initializing speech engine...
[2026-10-25 08:16:37,338.338 INFO    ] 2026-10-25 08:16:37
[2026-10-25 08:16:37,604.604 INFO    ] 2026-10-25 08:16:37
[2026-10-25 08:16:37,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:16:37,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:16:37,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:16:38,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:16:38,055.055 INFO    ] time= 25/10/2026 08:16:38
[2026-10-25 08:16:38,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:16:38,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:16:38,144.144 INFO    ] No existing commands found in stream
[2026-10-25 08:16:43,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:16:43,163.163 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 08:16:45,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:16:45,832.832 INFO    ] Checking for system updates...
[2026-10-25 08:16:45,873.873 INFO    ] 200
[2026-10-25 08:16:45,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:45,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:45,937.937 INFO    ] No update needed
[2026-10-25 08:16:45,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 08:16:45,973.973 INFO    ] 200
[2026-10-25 08:16:45,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:46,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:16:46,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:46,067.067 INFO    ] No camera update needed
[2026-10-25 08:16:46,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:16:46,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:16:46,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:16:46,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:16:48,123.123 INFO    ] ================================================
[2026-10-25 08:16:48,138.138 INFO    ] Launching Daemon at Sun Oct 25 08:16:48 IST 2026
[2026-10-25 08:16:48,149.149 INFO    ] ================================================
[2026-10-25 08:16:48,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:16:48
[2026-10-25 08:16:49,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:16:49,842.842 INFO    ] Initializing speech engine...
[2026-10-25 08:16:49,856.856 INFO    ] 2026-10-25 08:16:49
[2026-10-25 08:16:50,170.170 INFO    ] 2026-10-25 08:16:50
[2026-10-25 08:16:50,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:16:50,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:16:50,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:16:50,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:16:50,708.708 INFO    ] time= 25/10/2026 08:16:50
[2026-10-25 08:16:50,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:16:50,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:16:50,853.853 INFO    ] No existing commands found in stream
[2026-10-25 08:16:55,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:16:55,878.878 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 08:16:58,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:16:58,679.679 INFO    ] Checking for system updates...
[2026-10-25 08:16:58,717.717 INFO    ] 200
[2026-10-25 08:16:58,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:58,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:58,778.778 INFO    ] No update needed
[2026-10-25 08:16:58,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 08:16:58,816.816 INFO    ] 200
[2026-10-25 08:16:58,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:16:58,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:16:58,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:16:58,920.920 INFO    ] No camera update needed
[2026-10-25 08:16:58,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:16:58,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:16:58,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:16:58,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:17:00,981.981 INFO    ] ================================================
[2026-10-25 08:17:01,997.997 INFO    ] Launching Daemon at Sun Oct 25 08:17:00 IST 2026
[2026-10-25 08:17:01,009.009 INFO    ] ================================================
[2026-10-25 08:17:01,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:17:01
[2026-10-25 08:17:02,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:17:02,697.697 INFO    ] Initializing speech engine...
[2026-10-25 08:17:02,707.707 INFO    ] 2026-10-25 08:17:02
[2026-10-25 08:17:02,998.998 INFO    ] 2026-10-25 08:17:02
[2026-10-25 08:17:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:17:03,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:17:03,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:17:03,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:17:03,496.496 INFO    ] time= 25/10/2026 08:17:03
[2026-10-25 08:17:03,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:17:03,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:17:03,671.671 INFO    ] No existing commands found in stream
[2026-10-25 08:17:08,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:17:08,694.694 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 08:17:10,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:17:10,842.842 INFO    ] Checking for system updates...
[2026-10-25 08:17:10,882.882 INFO    ] 200
[2026-10-25 08:17:10,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:10,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:10,948.948 INFO    ] No update needed
[2026-10-25 08:17:10,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 08:17:10,989.989 INFO    ] 200
[2026-10-25 08:17:10,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:11,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:17:11,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:11,089.089 INFO    ] No camera update needed
[2026-10-25 08:17:11,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:17:11,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:17:11,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:17:11,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:17:13,145.145 INFO    ] ================================================
[2026-10-25 08:17:13,161.161 INFO    ] Launching Daemon at Sun Oct 25 08:17:13 IST 2026
[2026-10-25 08:17:13,172.172 INFO    ] ================================================
[2026-10-25 08:17:13,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:17:13
[2026-10-25 08:17:14,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:17:14,800.800 INFO    ] Initializing speech engine...
[2026-10-25 08:17:14,815.815 INFO    ] 2026-10-25 08:17:14
[2026-10-25 08:17:15,104.104 INFO    ] 2026-10-25 08:17:15
[2026-10-25 08:17:15,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:17:15,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:17:15,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:17:15,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:17:15,545.545 INFO    ] time= 25/10/2026 08:17:15
[2026-10-25 08:17:15,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:17:15,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:17:15,704.704 INFO    ] No existing commands found in stream
[2026-10-25 08:17:20,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:17:20,720.720 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 08:17:23,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:17:23,749.749 INFO    ] Checking for system updates...
[2026-10-25 08:17:23,792.792 INFO    ] 200
[2026-10-25 08:17:23,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:23,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:23,860.860 INFO    ] No update needed
[2026-10-25 08:17:23,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 08:17:23,898.898 INFO    ] 200
[2026-10-25 08:17:23,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:23,943.943 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:17:24,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:24,099.099 INFO    ] No camera update needed
[2026-10-25 08:17:24,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:17:24,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:17:24,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:17:24,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:17:26,156.156 INFO    ] ================================================
[2026-10-25 08:17:26,171.171 INFO    ] Launching Daemon at Sun Oct 25 08:17:26 IST 2026
[2026-10-25 08:17:26,181.181 INFO    ] ================================================
[2026-10-25 08:17:26,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:17:26
[2026-10-25 08:17:27,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:17:27,617.617 INFO    ] Initializing speech engine...
[2026-10-25 08:17:27,624.624 INFO    ] 2026-10-25 08:17:27
[2026-10-25 08:17:27,924.924 INFO    ] 2026-10-25 08:17:27
[2026-10-25 08:17:27,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:17:28,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:17:28,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:17:28,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:17:28,305.305 INFO    ] time= 25/10/2026 08:17:28
[2026-10-25 08:17:28,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:17:28,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:17:28,431.431 INFO    ] No existing commands found in stream
[2026-10-25 08:17:33,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:17:33,446.446 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 08:17:35,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:17:35,237.237 INFO    ] Checking for system updates...
[2026-10-25 08:17:35,273.273 INFO    ] 200
[2026-10-25 08:17:35,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:35,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:17:35,338.338 INFO    ] No update needed
[2026-10-25 08:17:35,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 08:17:35,381.381 INFO    ] 200
[2026-10-25 08:17:35,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:35,432.432 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:17:35,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:17:35,478.478 INFO    ] No camera update needed
[2026-10-25 08:17:35,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:17:35,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:17:35,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:17:35,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:17:37,535.535 INFO    ] ================================================
[2026-10-25 08:17:37,550.550 INFO    ] Launching Daemon at Sun Oct 25 08:17:37 IST 2026
[2026-10-25 08:17:37,560.560 INFO    ] ================================================
[2026-10-25 08:17:38,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:17:38
[2026-10-25 08:17:38,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:17:39,016.016 INFO    ] Initializing speech engine...
[2026-10-25 08:17:39,025.025 INFO    ] 2026-10-25 08:17:39
[2026-10-25 08:17:39,283.283 INFO    ] 2026-10-25 08:17:39
[2026-10-25 08:17:39,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:17:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:17:39,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:17:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:17:39,743.743 INFO    ] time= 25/10/2026 08:17:39
[2026-10-25 08:17:39,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:17:39,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:17:39,892.892 INFO    ] No existing commands found in stream
[2026-10-25 08:17:44,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:17:44,906.906 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 08:17:45,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:17:45,613.613 INFO    ] Checking for system updates...
[2026-10-25 08:17:45,649.649 INFO    ] 200
[2026-10-25 08:17:45,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:45,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:17:45,714.714 INFO    ] No update needed
[2026-10-25 08:17:45,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 08:17:45,754.754 INFO    ] 200
[2026-10-25 08:17:45,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:45,802.802 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:17:45,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:17:45,852.852 INFO    ] No camera update needed
[2026-10-25 08:17:45,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:17:45,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:17:45,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:17:45,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:17:47,908.908 INFO    ] ================================================
[2026-10-25 08:17:47,924.924 INFO    ] Launching Daemon at Sun Oct 25 08:17:47 IST 2026
[2026-10-25 08:17:47,934.934 INFO    ] ================================================
[2026-10-25 08:17:48,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:17:48
[2026-10-25 08:17:49,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:17:49,464.464 INFO    ] Initializing speech engine...
[2026-10-25 08:17:49,472.472 INFO    ] 2026-10-25 08:17:49
[2026-10-25 08:17:49,759.759 INFO    ] 2026-10-25 08:17:49
[2026-10-25 08:17:49,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:17:49,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:17:49,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:17:50,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:17:50,129.129 INFO    ] time= 25/10/2026 08:17:50
[2026-10-25 08:17:50,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:17:50,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:17:50,208.208 INFO    ] No existing commands found in stream
[2026-10-25 08:17:55,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:17:55,226.226 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 08:17:58,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:17:58,763.763 INFO    ] Checking for system updates...
[2026-10-25 08:17:58,806.806 INFO    ] 200
[2026-10-25 08:17:58,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:58,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:58,866.866 INFO    ] No update needed
[2026-10-25 08:17:58,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 08:17:58,904.904 INFO    ] 200
[2026-10-25 08:17:58,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:17:58,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:17:58,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:17:59,001.001 INFO    ] No camera update needed
[2026-10-25 08:17:59,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:17:59,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:17:59,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:17:59,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:18:01,061.061 INFO    ] ================================================
[2026-10-25 08:18:01,076.076 INFO    ] Launching Daemon at Sun Oct 25 08:18:01 IST 2026
[2026-10-25 08:18:01,086.086 INFO    ] ================================================
[2026-10-25 08:18:01,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:18:01
[2026-10-25 08:18:02,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:18:02,897.897 INFO    ] Initializing speech engine...
[2026-10-25 08:18:02,905.905 INFO    ] 2026-10-25 08:18:02
[2026-10-25 08:18:03,255.255 INFO    ] 2026-10-25 08:18:03
[2026-10-25 08:18:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:18:03,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:18:03,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:18:03,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:18:03,720.720 INFO    ] time= 25/10/2026 08:18:03
[2026-10-25 08:18:03,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:18:03,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:18:03,901.901 INFO    ] No existing commands found in stream
[2026-10-25 08:18:08,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:18:08,917.917 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 08:18:12,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:18:12,057.057 INFO    ] Checking for system updates...
[2026-10-25 08:18:12,097.097 INFO    ] 200
[2026-10-25 08:18:12,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:12,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:18:12,171.171 INFO    ] No update needed
[2026-10-25 08:18:12,174.174 INFO    ] Checking for camera pi updates...
[2026-10-25 08:18:12,214.214 INFO    ] 200
[2026-10-25 08:18:12,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:12,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:18:12,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:18:12,321.321 INFO    ] No camera update needed
[2026-10-25 08:18:12,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:18:12,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:18:12,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:18:12,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:18:14,380.380 INFO    ] ================================================
[2026-10-25 08:18:14,395.395 INFO    ] Launching Daemon at Sun Oct 25 08:18:14 IST 2026
[2026-10-25 08:18:14,406.406 INFO    ] ================================================
[2026-10-25 08:18:15,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:18:15
[2026-10-25 08:18:15,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:18:16,052.052 INFO    ] Initializing speech engine...
[2026-10-25 08:18:16,059.059 INFO    ] 2026-10-25 08:18:16
[2026-10-25 08:18:16,364.364 INFO    ] 2026-10-25 08:18:16
[2026-10-25 08:18:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:18:19,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:18:19,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:18:19,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:18:19,425.425 INFO    ] time= 25/10/2026 08:18:19
[2026-10-25 08:18:19,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:18:19,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:18:19,483.483 INFO    ] No existing commands found in stream
[2026-10-25 08:18:24,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:18:24,496.496 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 08:18:26,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:18:26,525.525 INFO    ] Checking for system updates...
[2026-10-25 08:18:26,567.567 INFO    ] 200
[2026-10-25 08:18:26,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:26,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:18:26,636.636 INFO    ] No update needed
[2026-10-25 08:18:26,639.639 INFO    ] Checking for camera pi updates...
[2026-10-25 08:18:26,680.680 INFO    ] 200
[2026-10-25 08:18:26,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:26,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:18:26,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:18:26,782.782 INFO    ] No camera update needed
[2026-10-25 08:18:26,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:18:26,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:18:26,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:18:26,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:18:28,852.852 INFO    ] ================================================
[2026-10-25 08:18:28,867.867 INFO    ] Launching Daemon at Sun Oct 25 08:18:28 IST 2026
[2026-10-25 08:18:28,878.878 INFO    ] ================================================
[2026-10-25 08:18:29,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:18:29
[2026-10-25 08:18:30,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:18:30,304.304 INFO    ] Initializing speech engine...
[2026-10-25 08:18:30,322.322 INFO    ] 2026-10-25 08:18:30
[2026-10-25 08:18:30,598.598 INFO    ] 2026-10-25 08:18:30
[2026-10-25 08:18:30,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:18:30,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:18:30,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:18:31,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:18:31,027.027 INFO    ] time= 25/10/2026 08:18:31
[2026-10-25 08:18:31,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:18:31,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:18:31,115.115 INFO    ] No existing commands found in stream
[2026-10-25 08:18:36,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:18:36,131.131 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 08:18:36,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:18:36,914.914 INFO    ] Checking for system updates...
[2026-10-25 08:18:36,951.951 INFO    ] 200
[2026-10-25 08:18:36,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:37,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:18:37,020.020 INFO    ] No update needed
[2026-10-25 08:18:37,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 08:18:37,064.064 INFO    ] 200
[2026-10-25 08:18:37,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:37,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:18:37,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:18:37,328.328 INFO    ] No camera update needed
[2026-10-25 08:18:37,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:18:37,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:18:37,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:18:37,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:18:39,389.389 INFO    ] ================================================
[2026-10-25 08:18:39,405.405 INFO    ] Launching Daemon at Sun Oct 25 08:18:39 IST 2026
[2026-10-25 08:18:39,416.416 INFO    ] ================================================
[2026-10-25 08:18:40,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:18:40
[2026-10-25 08:18:40,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:18:41,078.078 INFO    ] Initializing speech engine...
[2026-10-25 08:18:41,091.091 INFO    ] 2026-10-25 08:18:41
[2026-10-25 08:18:41,379.379 INFO    ] 2026-10-25 08:18:41
[2026-10-25 08:18:41,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:18:41,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:18:41,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:18:41,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:18:41,911.911 INFO    ] time= 25/10/2026 08:18:41
[2026-10-25 08:18:41,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:18:41,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:18:42,064.064 INFO    ] No existing commands found in stream
[2026-10-25 08:18:47,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:18:47,082.082 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 08:18:51,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:18:51,014.014 INFO    ] Checking for system updates...
[2026-10-25 08:18:51,056.056 INFO    ] 200
[2026-10-25 08:18:51,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:51,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:18:51,125.125 INFO    ] No update needed
[2026-10-25 08:18:51,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 08:18:51,164.164 INFO    ] 200
[2026-10-25 08:18:51,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:18:51,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:18:51,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:18:51,261.261 INFO    ] No camera update needed
[2026-10-25 08:18:51,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:18:51,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:18:51,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:18:51,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:18:53,322.322 INFO    ] ================================================
[2026-10-25 08:18:53,337.337 INFO    ] Launching Daemon at Sun Oct 25 08:18:53 IST 2026
[2026-10-25 08:18:53,348.348 INFO    ] ================================================
[2026-10-25 08:18:53,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:18:53
[2026-10-25 08:18:54,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:18:54,757.757 INFO    ] Initializing speech engine...
[2026-10-25 08:18:54,779.779 INFO    ] 2026-10-25 08:18:54
[2026-10-25 08:18:55,040.040 INFO    ] 2026-10-25 08:18:55
[2026-10-25 08:18:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:18:55,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:18:55,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:18:55,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:18:55,518.518 INFO    ] time= 25/10/2026 08:18:55
[2026-10-25 08:18:55,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:18:55,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:18:55,675.675 INFO    ] No existing commands found in stream
[2026-10-25 08:19:00,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:19:00,715.715 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 08:19:04,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:19:04,081.081 INFO    ] Checking for system updates...
[2026-10-25 08:19:04,116.116 INFO    ] 200
[2026-10-25 08:19:04,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:04,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:04,175.175 INFO    ] No update needed
[2026-10-25 08:19:04,177.177 INFO    ] Checking for camera pi updates...
[2026-10-25 08:19:04,211.211 INFO    ] 200
[2026-10-25 08:19:04,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:04,255.255 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:19:04,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:04,308.308 INFO    ] No camera update needed
[2026-10-25 08:19:04,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:19:04,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:19:04,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:19:04,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:19:06,365.365 INFO    ] ================================================
[2026-10-25 08:19:06,380.380 INFO    ] Launching Daemon at Sun Oct 25 08:19:06 IST 2026
[2026-10-25 08:19:06,390.390 INFO    ] ================================================
[2026-10-25 08:19:06,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:19:06
[2026-10-25 08:19:07,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:19:07,839.839 INFO    ] Initializing speech engine...
[2026-10-25 08:19:07,864.864 INFO    ] 2026-10-25 08:19:07
[2026-10-25 08:19:08,136.136 INFO    ] 2026-10-25 08:19:08
[2026-10-25 08:19:08,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:19:08,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:19:08,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:19:08,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:19:08,509.509 INFO    ] time= 25/10/2026 08:19:08
[2026-10-25 08:19:08,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:19:08,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:19:08,633.633 INFO    ] No existing commands found in stream
[2026-10-25 08:19:13,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:19:13,648.648 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 08:19:16,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:19:16,380.380 INFO    ] Checking for system updates...
[2026-10-25 08:19:16,417.417 INFO    ] 200
[2026-10-25 08:19:16,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:16,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:16,481.481 INFO    ] No update needed
[2026-10-25 08:19:16,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 08:19:16,519.519 INFO    ] 200
[2026-10-25 08:19:16,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:16,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:19:16,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:16,624.624 INFO    ] No camera update needed
[2026-10-25 08:19:16,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:19:16,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:19:16,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:19:16,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:19:18,681.681 INFO    ] ================================================
[2026-10-25 08:19:18,696.696 INFO    ] Launching Daemon at Sun Oct 25 08:19:18 IST 2026
[2026-10-25 08:19:18,706.706 INFO    ] ================================================
[2026-10-25 08:19:19,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:19:19
[2026-10-25 08:19:19,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:19:20,115.115 INFO    ] Initializing speech engine...
[2026-10-25 08:19:20,131.131 INFO    ] 2026-10-25 08:19:20
[2026-10-25 08:19:20,409.409 INFO    ] 2026-10-25 08:19:20
[2026-10-25 08:19:20,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:19:20,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:19:20,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:19:20,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:19:20,817.817 INFO    ] time= 25/10/2026 08:19:20
[2026-10-25 08:19:20,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:19:20,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:19:20,899.899 INFO    ] No existing commands found in stream
[2026-10-25 08:19:25,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:19:25,916.916 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 08:19:28,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:19:28,985.985 INFO    ] Checking for system updates...
[2026-10-25 08:19:29,022.022 INFO    ] 200
[2026-10-25 08:19:29,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:29,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:19:29,081.081 INFO    ] No update needed
[2026-10-25 08:19:29,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 08:19:29,117.117 INFO    ] 200
[2026-10-25 08:19:29,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:29,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:19:29,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:19:29,317.317 INFO    ] No camera update needed
[2026-10-25 08:19:29,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:19:29,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:19:29,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:19:29,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:19:31,373.373 INFO    ] ================================================
[2026-10-25 08:19:31,388.388 INFO    ] Launching Daemon at Sun Oct 25 08:19:31 IST 2026
[2026-10-25 08:19:31,400.400 INFO    ] ================================================
[2026-10-25 08:19:31,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:19:31
[2026-10-25 08:19:32,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:19:32,900.900 INFO    ] Initializing speech engine...
[2026-10-25 08:19:32,925.925 INFO    ] 2026-10-25 08:19:32
[2026-10-25 08:19:33,215.215 INFO    ] 2026-10-25 08:19:33
[2026-10-25 08:19:33,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:19:33,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:19:33,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:19:33,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:19:33,633.633 INFO    ] time= 25/10/2026 08:19:33
[2026-10-25 08:19:33,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:19:33,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:19:33,728.728 INFO    ] No existing commands found in stream
[2026-10-25 08:19:38,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:19:38,744.744 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 08:19:41,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:19:41,808.808 INFO    ] Checking for system updates...
[2026-10-25 08:19:41,845.845 INFO    ] 200
[2026-10-25 08:19:41,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:41,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:41,902.902 INFO    ] No update needed
[2026-10-25 08:19:41,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 08:19:41,939.939 INFO    ] 200
[2026-10-25 08:19:41,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:41,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:19:42,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:19:42,032.032 INFO    ] No camera update needed
[2026-10-25 08:19:42,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:19:42,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:19:42,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:19:42,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:19:44,089.089 INFO    ] ================================================
[2026-10-25 08:19:44,105.105 INFO    ] Launching Daemon at Sun Oct 25 08:19:44 IST 2026
[2026-10-25 08:19:44,115.115 INFO    ] ================================================
[2026-10-25 08:19:44,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:19:44
[2026-10-25 08:19:45,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:19:45,533.533 INFO    ] Initializing speech engine...
[2026-10-25 08:19:45,555.555 INFO    ] 2026-10-25 08:19:45
[2026-10-25 08:19:45,810.810 INFO    ] 2026-10-25 08:19:45
[2026-10-25 08:19:45,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:19:46,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:19:46,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:19:46,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:19:46,285.285 INFO    ] time= 25/10/2026 08:19:46
[2026-10-25 08:19:46,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:19:46,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:19:46,437.437 INFO    ] No existing commands found in stream
[2026-10-25 08:19:51,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:19:51,452.452 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 08:19:52,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:19:52,437.437 INFO    ] Checking for system updates...
[2026-10-25 08:19:52,474.474 INFO    ] 200
[2026-10-25 08:19:52,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:52,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:19:52,533.533 INFO    ] No update needed
[2026-10-25 08:19:52,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 08:19:52,569.569 INFO    ] 200
[2026-10-25 08:19:52,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:19:52,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:19:52,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:19:52,677.677 INFO    ] No camera update needed
[2026-10-25 08:19:52,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:19:52,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:19:52,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:19:52,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:19:54,733.733 INFO    ] ================================================
[2026-10-25 08:19:54,749.749 INFO    ] Launching Daemon at Sun Oct 25 08:19:54 IST 2026
[2026-10-25 08:19:54,760.760 INFO    ] ================================================
[2026-10-25 08:19:55,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:19:55
[2026-10-25 08:19:55,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:19:56,197.197 INFO    ] Initializing speech engine...
[2026-10-25 08:19:56,213.213 INFO    ] 2026-10-25 08:19:56
[2026-10-25 08:19:56,501.501 INFO    ] 2026-10-25 08:19:56
[2026-10-25 08:19:56,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:19:56,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:19:56,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:19:56,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:19:56,875.875 INFO    ] time= 25/10/2026 08:19:56
[2026-10-25 08:19:56,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:19:56,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:19:57,000.000 INFO    ] No existing commands found in stream
[2026-10-25 08:20:02,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:20:02,018.018 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 08:20:08,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:20:08,012.012 INFO    ] Checking for system updates...
[2026-10-25 08:20:08,049.049 INFO    ] 200
[2026-10-25 08:20:08,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:08,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:08,106.106 INFO    ] No update needed
[2026-10-25 08:20:08,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 08:20:08,143.143 INFO    ] 200
[2026-10-25 08:20:08,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:08,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:20:08,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:08,236.236 INFO    ] No camera update needed
[2026-10-25 08:20:08,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:20:08,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:20:08,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:20:08,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:20:10,291.291 INFO    ] ================================================
[2026-10-25 08:20:10,307.307 INFO    ] Launching Daemon at Sun Oct 25 08:20:10 IST 2026
[2026-10-25 08:20:10,318.318 INFO    ] ================================================
[2026-10-25 08:20:10,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:20:10
[2026-10-25 08:20:11,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:20:11,713.713 INFO    ] Initializing speech engine...
[2026-10-25 08:20:11,727.727 INFO    ] 2026-10-25 08:20:11
[2026-10-25 08:20:11,993.993 INFO    ] 2026-10-25 08:20:11
[2026-10-25 08:20:12,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:20:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:20:12,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:20:12,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:20:12,367.367 INFO    ] time= 25/10/2026 08:20:12
[2026-10-25 08:20:12,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:20:12,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:20:12,538.538 INFO    ] No existing commands found in stream
[2026-10-25 08:20:17,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:20:17,572.572 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 08:20:22,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:20:22,435.435 INFO    ] Checking for system updates...
[2026-10-25 08:20:22,473.473 INFO    ] 200
[2026-10-25 08:20:22,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:22,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:22,556.556 INFO    ] No update needed
[2026-10-25 08:20:22,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 08:20:22,596.596 INFO    ] 200
[2026-10-25 08:20:22,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:22,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:20:22,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:22,687.687 INFO    ] No camera update needed
[2026-10-25 08:20:22,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:20:22,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:20:22,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:20:22,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:20:24,743.743 INFO    ] ================================================
[2026-10-25 08:20:24,759.759 INFO    ] Launching Daemon at Sun Oct 25 08:20:24 IST 2026
[2026-10-25 08:20:24,770.770 INFO    ] ================================================
[2026-10-25 08:20:25,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:20:25
[2026-10-25 08:20:25,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:20:26,229.229 INFO    ] Initializing speech engine...
[2026-10-25 08:20:26,239.239 INFO    ] 2026-10-25 08:20:26
[2026-10-25 08:20:26,537.537 INFO    ] 2026-10-25 08:20:26
[2026-10-25 08:20:26,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:20:26,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:20:26,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:20:26,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:20:27,005.005 INFO    ] time= 25/10/2026 08:20:26
[2026-10-25 08:20:27,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:20:27,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:20:27,196.196 INFO    ] No existing commands found in stream
[2026-10-25 08:20:32,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:20:32,228.228 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 08:20:35,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:20:35,769.769 INFO    ] Checking for system updates...
[2026-10-25 08:20:35,806.806 INFO    ] 200
[2026-10-25 08:20:35,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:35,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:35,869.869 INFO    ] No update needed
[2026-10-25 08:20:35,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 08:20:35,906.906 INFO    ] 200
[2026-10-25 08:20:35,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:35,959.959 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:20:36,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:20:36,010.010 INFO    ] No camera update needed
[2026-10-25 08:20:36,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:20:36,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:20:36,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:20:36,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:20:38,070.070 INFO    ] ================================================
[2026-10-25 08:20:38,086.086 INFO    ] Launching Daemon at Sun Oct 25 08:20:38 IST 2026
[2026-10-25 08:20:38,098.098 INFO    ] ================================================
[2026-10-25 08:20:38,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:20:38
[2026-10-25 08:20:39,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:20:39,686.686 INFO    ] Initializing speech engine...
[2026-10-25 08:20:39,694.694 INFO    ] 2026-10-25 08:20:39
[2026-10-25 08:20:39,967.967 INFO    ] 2026-10-25 08:20:39
[2026-10-25 08:20:40,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:20:40,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:20:40,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:20:40,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:20:40,445.445 INFO    ] time= 25/10/2026 08:20:40
[2026-10-25 08:20:40,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:20:40,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:20:40,591.591 INFO    ] No existing commands found in stream
[2026-10-25 08:20:45,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:20:45,606.606 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 08:20:47,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:20:47,735.735 INFO    ] Checking for system updates...
[2026-10-25 08:20:47,772.772 INFO    ] 200
[2026-10-25 08:20:47,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:47,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:20:47,831.831 INFO    ] No update needed
[2026-10-25 08:20:47,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 08:20:47,869.869 INFO    ] 200
[2026-10-25 08:20:47,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:20:47,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:20:47,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:20:47,985.985 INFO    ] No camera update needed
[2026-10-25 08:20:47,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:20:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:20:47,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:20:48,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:20:50,042.042 INFO    ] ================================================
[2026-10-25 08:20:50,057.057 INFO    ] Launching Daemon at Sun Oct 25 08:20:50 IST 2026
[2026-10-25 08:20:50,068.068 INFO    ] ================================================
[2026-10-25 08:20:50,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:20:50
[2026-10-25 08:20:51,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:20:51,619.619 INFO    ] Initializing speech engine...
[2026-10-25 08:20:51,633.633 INFO    ] 2026-10-25 08:20:51
[2026-10-25 08:20:51,912.912 INFO    ] 2026-10-25 08:20:51
[2026-10-25 08:20:51,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:20:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:20:52,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:20:52,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:20:52,403.403 INFO    ] time= 25/10/2026 08:20:52
[2026-10-25 08:20:52,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:20:52,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:20:52,606.606 INFO    ] No existing commands found in stream
[2026-10-25 08:20:57,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:20:57,635.635 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 08:21:01,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:21:01,182.182 INFO    ] Checking for system updates...
[2026-10-25 08:21:01,224.224 INFO    ] 200
[2026-10-25 08:21:01,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:01,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:01,281.281 INFO    ] No update needed
[2026-10-25 08:21:01,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:01,318.318 INFO    ] 200
[2026-10-25 08:21:01,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:01,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:21:01,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:01,394.394 INFO    ] No camera update needed
[2026-10-25 08:21:01,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:21:01,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:21:01,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:21:01,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:21:03,453.453 INFO    ] ================================================
[2026-10-25 08:21:03,474.474 INFO    ] Launching Daemon at Sun Oct 25 08:21:03 IST 2026
[2026-10-25 08:21:03,489.489 INFO    ] ================================================
[2026-10-25 08:21:04,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:21:04
[2026-10-25 08:21:04,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:21:04,940.940 INFO    ] Initializing speech engine...
[2026-10-25 08:21:04,951.951 INFO    ] 2026-10-25 08:21:04
[2026-10-25 08:21:05,212.212 INFO    ] 2026-10-25 08:21:05
[2026-10-25 08:21:05,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:21:05,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:21:05,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:21:05,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:21:05,665.665 INFO    ] time= 25/10/2026 08:21:05
[2026-10-25 08:21:05,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:21:05,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:21:05,812.812 INFO    ] No existing commands found in stream
[2026-10-25 08:21:10,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:21:10,827.827 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 08:21:11,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:21:11,455.455 INFO    ] Checking for system updates...
[2026-10-25 08:21:11,495.495 INFO    ] 200
[2026-10-25 08:21:11,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:11,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:21:11,553.553 INFO    ] No update needed
[2026-10-25 08:21:11,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:11,589.589 INFO    ] 200
[2026-10-25 08:21:11,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:11,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:21:11,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:21:11,693.693 INFO    ] No camera update needed
[2026-10-25 08:21:11,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:21:11,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:21:11,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:21:11,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:21:13,751.751 INFO    ] ================================================
[2026-10-25 08:21:13,766.766 INFO    ] Launching Daemon at Sun Oct 25 08:21:13 IST 2026
[2026-10-25 08:21:13,776.776 INFO    ] ================================================
[2026-10-25 08:21:14,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:21:14
[2026-10-25 08:21:14,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:21:15,222.222 INFO    ] Initializing speech engine...
[2026-10-25 08:21:15,230.230 INFO    ] 2026-10-25 08:21:15
[2026-10-25 08:21:15,486.486 INFO    ] 2026-10-25 08:21:15
[2026-10-25 08:21:15,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:21:15,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:21:15,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:21:15,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:21:15,952.952 INFO    ] time= 25/10/2026 08:21:15
[2026-10-25 08:21:16,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:21:16,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:21:16,124.124 INFO    ] No existing commands found in stream
[2026-10-25 08:21:21,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:21:21,147.147 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 08:21:23,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:21:23,540.540 INFO    ] Checking for system updates...
[2026-10-25 08:21:23,576.576 INFO    ] 200
[2026-10-25 08:21:23,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:23,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:21:23,634.634 INFO    ] No update needed
[2026-10-25 08:21:23,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:23,670.670 INFO    ] 200
[2026-10-25 08:21:23,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:23,714.714 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:21:23,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:21:23,768.768 INFO    ] No camera update needed
[2026-10-25 08:21:23,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:21:23,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:21:23,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:21:23,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:21:25,826.826 INFO    ] ================================================
[2026-10-25 08:21:25,841.841 INFO    ] Launching Daemon at Sun Oct 25 08:21:25 IST 2026
[2026-10-25 08:21:25,852.852 INFO    ] ================================================
[2026-10-25 08:21:26,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:21:26
[2026-10-25 08:21:27,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:21:27,320.320 INFO    ] Initializing speech engine...
[2026-10-25 08:21:27,335.335 INFO    ] 2026-10-25 08:21:27
[2026-10-25 08:21:27,623.623 INFO    ] 2026-10-25 08:21:27
[2026-10-25 08:21:27,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:21:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:21:27,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:21:28,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:21:28,008.008 INFO    ] time= 25/10/2026 08:21:28
[2026-10-25 08:21:28,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:21:28,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:21:28,137.137 INFO    ] No existing commands found in stream
[2026-10-25 08:21:33,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:21:33,151.151 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 08:21:34,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:21:34,826.826 INFO    ] Checking for system updates...
[2026-10-25 08:21:34,862.862 INFO    ] 200
[2026-10-25 08:21:34,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:34,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:34,924.924 INFO    ] No update needed
[2026-10-25 08:21:34,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:34,969.969 INFO    ] 200
[2026-10-25 08:21:34,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:35,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:21:35,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:35,068.068 INFO    ] No camera update needed
[2026-10-25 08:21:35,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:21:35,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:21:35,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:21:35,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:21:37,124.124 INFO    ] ================================================
[2026-10-25 08:21:37,139.139 INFO    ] Launching Daemon at Sun Oct 25 08:21:37 IST 2026
[2026-10-25 08:21:37,150.150 INFO    ] ================================================
[2026-10-25 08:21:37,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:21:37
[2026-10-25 08:21:38,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:21:38,558.558 INFO    ] Initializing speech engine...
[2026-10-25 08:21:38,566.566 INFO    ] 2026-10-25 08:21:38
[2026-10-25 08:21:38,834.834 INFO    ] 2026-10-25 08:21:38
[2026-10-25 08:21:38,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:21:39,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:21:39,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:21:39,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:21:39,250.250 INFO    ] time= 25/10/2026 08:21:39
[2026-10-25 08:21:39,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:21:39,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:21:39,335.335 INFO    ] No existing commands found in stream
[2026-10-25 08:21:44,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:21:44,351.351 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 08:21:46,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:21:46,088.088 INFO    ] Checking for system updates...
[2026-10-25 08:21:46,126.126 INFO    ] 200
[2026-10-25 08:21:46,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:46,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:46,192.192 INFO    ] No update needed
[2026-10-25 08:21:46,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:46,227.227 INFO    ] 200
[2026-10-25 08:21:46,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:46,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:21:46,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:46,323.323 INFO    ] No camera update needed
[2026-10-25 08:21:46,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:21:46,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:21:46,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:21:46,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:21:48,379.379 INFO    ] ================================================
[2026-10-25 08:21:48,393.393 INFO    ] Launching Daemon at Sun Oct 25 08:21:48 IST 2026
[2026-10-25 08:21:48,404.404 INFO    ] ================================================
[2026-10-25 08:21:49,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:21:49
[2026-10-25 08:21:49,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:21:50,042.042 INFO    ] Initializing speech engine...
[2026-10-25 08:21:50,050.050 INFO    ] 2026-10-25 08:21:50
[2026-10-25 08:21:50,341.341 INFO    ] 2026-10-25 08:21:50
[2026-10-25 08:21:50,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:21:51,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:21:51,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:21:51,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:21:51,665.665 INFO    ] time= 25/10/2026 08:21:51
[2026-10-25 08:21:51,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:21:51,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:21:51,731.731 INFO    ] No existing commands found in stream
[2026-10-25 08:21:56,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:21:56,745.745 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 08:21:59,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:21:59,823.823 INFO    ] Checking for system updates...
[2026-10-25 08:21:59,859.859 INFO    ] 200
[2026-10-25 08:21:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:59,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:21:59,917.917 INFO    ] No update needed
[2026-10-25 08:21:59,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 08:21:59,954.954 INFO    ] 200
[2026-10-25 08:21:59,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:21:59,998.998 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:22:00,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:22:00,059.059 INFO    ] No camera update needed
[2026-10-25 08:22:00,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:22:00,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:22:00,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:22:00,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:22:02,115.115 INFO    ] ================================================
[2026-10-25 08:22:02,137.137 INFO    ] Launching Daemon at Sun Oct 25 08:22:02 IST 2026
[2026-10-25 08:22:02,155.155 INFO    ] ================================================
[2026-10-25 08:22:02,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:22:02
[2026-10-25 08:22:03,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:22:03,773.773 INFO    ] Initializing speech engine...
[2026-10-25 08:22:03,782.782 INFO    ] 2026-10-25 08:22:03
[2026-10-25 08:22:04,053.053 INFO    ] 2026-10-25 08:22:04
[2026-10-25 08:22:04,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:22:04,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:22:04,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:22:04,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:22:04,417.417 INFO    ] time= 25/10/2026 08:22:04
[2026-10-25 08:22:04,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:22:04,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:22:04,538.538 INFO    ] No existing commands found in stream
[2026-10-25 08:22:09,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:22:09,557.557 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 08:22:13,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:22:13,932.932 INFO    ] Checking for system updates...
[2026-10-25 08:22:13,976.976 INFO    ] 200
[2026-10-25 08:22:13,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:14,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:22:14,044.044 INFO    ] No update needed
[2026-10-25 08:22:14,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 08:22:14,091.091 INFO    ] 200
[2026-10-25 08:22:14,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:14,141.141 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:22:14,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:22:14,192.192 INFO    ] No camera update needed
[2026-10-25 08:22:14,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:22:14,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:22:14,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:22:14,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:22:16,248.248 INFO    ] ================================================
[2026-10-25 08:22:16,263.263 INFO    ] Launching Daemon at Sun Oct 25 08:22:16 IST 2026
[2026-10-25 08:22:16,273.273 INFO    ] ================================================
[2026-10-25 08:22:16,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:22:16
[2026-10-25 08:22:17,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:22:17,761.761 INFO    ] Initializing speech engine...
[2026-10-25 08:22:17,773.773 INFO    ] 2026-10-25 08:22:17
[2026-10-25 08:22:18,045.045 INFO    ] 2026-10-25 08:22:18
[2026-10-25 08:22:18,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:22:18,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:22:18,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:22:18,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:22:18,510.510 INFO    ] time= 25/10/2026 08:22:18
[2026-10-25 08:22:18,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:22:18,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:22:18,643.643 INFO    ] No existing commands found in stream
[2026-10-25 08:22:23,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:22:23,659.659 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 08:22:27,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:22:27,253.253 INFO    ] Checking for system updates...
[2026-10-25 08:22:27,293.293 INFO    ] 200
[2026-10-25 08:22:27,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:27,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:22:27,358.358 INFO    ] No update needed
[2026-10-25 08:22:27,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 08:22:27,398.398 INFO    ] 200
[2026-10-25 08:22:27,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:27,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:22:27,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:22:27,505.505 INFO    ] No camera update needed
[2026-10-25 08:22:27,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:22:27,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:22:27,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:22:27,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:22:29,562.562 INFO    ] ================================================
[2026-10-25 08:22:29,578.578 INFO    ] Launching Daemon at Sun Oct 25 08:22:29 IST 2026
[2026-10-25 08:22:29,589.589 INFO    ] ================================================
[2026-10-25 08:22:30,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:22:30
[2026-10-25 08:22:30,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:22:31,176.176 INFO    ] Initializing speech engine...
[2026-10-25 08:22:31,183.183 INFO    ] 2026-10-25 08:22:31
[2026-10-25 08:22:31,497.497 INFO    ] 2026-10-25 08:22:31
[2026-10-25 08:22:31,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:22:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:22:31,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:22:31,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:22:31,951.951 INFO    ] time= 25/10/2026 08:22:31
[2026-10-25 08:22:31,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:22:32,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:22:32,112.112 INFO    ] No existing commands found in stream
[2026-10-25 08:22:37,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:22:37,126.126 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 08:22:40,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:22:40,264.264 INFO    ] Checking for system updates...
[2026-10-25 08:22:40,304.304 INFO    ] 200
[2026-10-25 08:22:40,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:40,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:22:40,373.373 INFO    ] No update needed
[2026-10-25 08:22:40,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 08:22:40,414.414 INFO    ] 200
[2026-10-25 08:22:40,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:40,464.464 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:22:40,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:22:40,521.521 INFO    ] No camera update needed
[2026-10-25 08:22:40,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:22:40,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:22:40,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:22:40,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:22:42,578.578 INFO    ] ================================================
[2026-10-25 08:22:42,594.594 INFO    ] Launching Daemon at Sun Oct 25 08:22:42 IST 2026
[2026-10-25 08:22:42,606.606 INFO    ] ================================================
[2026-10-25 08:22:43,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:22:43
[2026-10-25 08:22:43,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:22:44,025.025 INFO    ] Initializing speech engine...
[2026-10-25 08:22:44,034.034 INFO    ] 2026-10-25 08:22:44
[2026-10-25 08:22:44,279.279 INFO    ] 2026-10-25 08:22:44
[2026-10-25 08:22:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:22:44,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:22:44,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:22:44,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:22:44,649.649 INFO    ] time= 25/10/2026 08:22:44
[2026-10-25 08:22:44,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:22:44,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:22:44,728.728 INFO    ] No existing commands found in stream
[2026-10-25 08:22:49,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:22:49,745.745 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 08:22:53,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:22:53,377.377 INFO    ] Checking for system updates...
[2026-10-25 08:22:53,413.413 INFO    ] 200
[2026-10-25 08:22:53,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:53,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:22:53,471.471 INFO    ] No update needed
[2026-10-25 08:22:53,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 08:22:53,512.512 INFO    ] 200
[2026-10-25 08:22:53,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:22:53,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:22:53,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:22:53,605.605 INFO    ] No camera update needed
[2026-10-25 08:22:53,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:22:53,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:22:53,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:22:53,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:22:55,661.661 INFO    ] ================================================
[2026-10-25 08:22:55,676.676 INFO    ] Launching Daemon at Sun Oct 25 08:22:55 IST 2026
[2026-10-25 08:22:55,688.688 INFO    ] ================================================
[2026-10-25 08:22:56,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:22:56
[2026-10-25 08:22:56,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:22:57,150.150 INFO    ] Initializing speech engine...
[2026-10-25 08:22:57,159.159 INFO    ] 2026-10-25 08:22:57
[2026-10-25 08:22:57,421.421 INFO    ] 2026-10-25 08:22:57
[2026-10-25 08:22:57,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:22:57,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:22:57,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:22:57,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:22:57,959.959 INFO    ] time= 25/10/2026 08:22:57
[2026-10-25 08:22:57,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:22:57,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:22:58,098.098 INFO    ] No existing commands found in stream
[2026-10-25 08:23:03,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:23:03,126.126 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 08:23:05,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:23:05,912.912 INFO    ] Checking for system updates...
[2026-10-25 08:23:05,949.949 INFO    ] 200
[2026-10-25 08:23:05,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:06,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:06,015.015 INFO    ] No update needed
[2026-10-25 08:23:06,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 08:23:06,053.053 INFO    ] 200
[2026-10-25 08:23:06,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:06,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:23:06,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:06,147.147 INFO    ] No camera update needed
[2026-10-25 08:23:06,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:23:06,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:23:06,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:23:06,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:23:08,206.206 INFO    ] ================================================
[2026-10-25 08:23:08,222.222 INFO    ] Launching Daemon at Sun Oct 25 08:23:08 IST 2026
[2026-10-25 08:23:08,233.233 INFO    ] ================================================
[2026-10-25 08:23:08,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:23:08
[2026-10-25 08:23:09,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:23:09,644.644 INFO    ] Initializing speech engine...
[2026-10-25 08:23:09,653.653 INFO    ] 2026-10-25 08:23:09
[2026-10-25 08:23:09,910.910 INFO    ] 2026-10-25 08:23:09
[2026-10-25 08:23:09,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:23:10,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:23:10,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:23:10,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:23:10,334.334 INFO    ] time= 25/10/2026 08:23:10
[2026-10-25 08:23:10,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:23:10,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:23:10,486.486 INFO    ] No existing commands found in stream
[2026-10-25 08:23:15,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:23:15,499.499 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 08:23:18,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:23:18,561.561 INFO    ] Checking for system updates...
[2026-10-25 08:23:18,596.596 INFO    ] 200
[2026-10-25 08:23:18,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:18,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:18,659.659 INFO    ] No update needed
[2026-10-25 08:23:18,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 08:23:18,696.696 INFO    ] 200
[2026-10-25 08:23:18,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:18,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:23:18,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:18,811.811 INFO    ] No camera update needed
[2026-10-25 08:23:18,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:23:18,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:23:18,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:23:18,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:23:20,875.875 INFO    ] ================================================
[2026-10-25 08:23:20,891.891 INFO    ] Launching Daemon at Sun Oct 25 08:23:20 IST 2026
[2026-10-25 08:23:20,903.903 INFO    ] ================================================
[2026-10-25 08:23:21,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:23:21
[2026-10-25 08:23:22,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:23:22,531.531 INFO    ] Initializing speech engine...
[2026-10-25 08:23:22,544.544 INFO    ] 2026-10-25 08:23:22
[2026-10-25 08:23:22,808.808 INFO    ] 2026-10-25 08:23:22
[2026-10-25 08:23:22,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:23:24,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:23:24,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:23:24,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:23:24,535.535 INFO    ] time= 25/10/2026 08:23:24
[2026-10-25 08:23:24,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:23:24,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:23:24,659.659 INFO    ] No existing commands found in stream
[2026-10-25 08:23:29,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:23:29,686.686 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 08:23:31,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:23:31,010.010 INFO    ] Checking for system updates...
[2026-10-25 08:23:31,045.045 INFO    ] 200
[2026-10-25 08:23:31,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:31,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:31,111.111 INFO    ] No update needed
[2026-10-25 08:23:31,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 08:23:31,148.148 INFO    ] 200
[2026-10-25 08:23:31,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:31,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:23:31,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:31,248.248 INFO    ] No camera update needed
[2026-10-25 08:23:31,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:23:31,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:23:31,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:23:31,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:23:33,306.306 INFO    ] ================================================
[2026-10-25 08:23:33,322.322 INFO    ] Launching Daemon at Sun Oct 25 08:23:33 IST 2026
[2026-10-25 08:23:33,332.332 INFO    ] ================================================
[2026-10-25 08:23:33,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:23:33
[2026-10-25 08:23:34,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:23:34,734.734 INFO    ] Initializing speech engine...
[2026-10-25 08:23:34,749.749 INFO    ] 2026-10-25 08:23:34
[2026-10-25 08:23:35,016.016 INFO    ] 2026-10-25 08:23:35
[2026-10-25 08:23:35,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:23:35,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:23:35,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:23:35,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:23:35,775.775 INFO    ] time= 25/10/2026 08:23:35
[2026-10-25 08:23:35,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:23:35,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:23:35,914.914 INFO    ] No existing commands found in stream
[2026-10-25 08:23:40,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:23:40,936.936 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 08:23:43,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:23:43,069.069 INFO    ] Checking for system updates...
[2026-10-25 08:23:43,106.106 INFO    ] 200
[2026-10-25 08:23:43,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:43,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:43,164.164 INFO    ] No update needed
[2026-10-25 08:23:43,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 08:23:43,200.200 INFO    ] 200
[2026-10-25 08:23:43,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:43,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:23:43,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:23:43,404.404 INFO    ] No camera update needed
[2026-10-25 08:23:43,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:23:43,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:23:43,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:23:43,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:23:45,460.460 INFO    ] ================================================
[2026-10-25 08:23:45,476.476 INFO    ] Launching Daemon at Sun Oct 25 08:23:45 IST 2026
[2026-10-25 08:23:45,487.487 INFO    ] ================================================
[2026-10-25 08:23:46,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:23:46
[2026-10-25 08:23:46,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:23:46,894.894 INFO    ] Initializing speech engine...
[2026-10-25 08:23:46,912.912 INFO    ] 2026-10-25 08:23:46
[2026-10-25 08:23:47,158.158 INFO    ] 2026-10-25 08:23:47
[2026-10-25 08:23:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:23:47,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:23:47,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:23:47,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:23:47,638.638 INFO    ] time= 25/10/2026 08:23:47
[2026-10-25 08:23:47,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:23:47,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:23:47,772.772 INFO    ] No existing commands found in stream
[2026-10-25 08:23:52,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:23:52,786.786 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 08:23:56,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:23:56,746.746 INFO    ] Checking for system updates...
[2026-10-25 08:23:56,786.786 INFO    ] 200
[2026-10-25 08:23:56,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:56,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:23:56,846.846 INFO    ] No update needed
[2026-10-25 08:23:56,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 08:23:56,887.887 INFO    ] 200
[2026-10-25 08:23:56,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:23:56,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:23:56,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:23:56,983.983 INFO    ] No camera update needed
[2026-10-25 08:23:56,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:23:56,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:23:56,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:23:56,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:23:59,039.039 INFO    ] ================================================
[2026-10-25 08:23:59,055.055 INFO    ] Launching Daemon at Sun Oct 25 08:23:59 IST 2026
[2026-10-25 08:23:59,066.066 INFO    ] ================================================
[2026-10-25 08:23:59,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:23:59
[2026-10-25 08:24:00,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:24:00,540.540 INFO    ] Initializing speech engine...
[2026-10-25 08:24:00,548.548 INFO    ] 2026-10-25 08:24:00
[2026-10-25 08:24:00,813.813 INFO    ] 2026-10-25 08:24:00
[2026-10-25 08:24:00,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:24:01,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:24:01,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:24:01,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:24:01,272.272 INFO    ] time= 25/10/2026 08:24:01
[2026-10-25 08:24:01,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:24:01,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:24:01,432.432 INFO    ] No existing commands found in stream
[2026-10-25 08:24:06,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:24:06,447.447 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 08:24:07,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:24:07,414.414 INFO    ] Checking for system updates...
[2026-10-25 08:24:07,451.451 INFO    ] 200
[2026-10-25 08:24:07,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:07,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:24:07,519.519 INFO    ] No update needed
[2026-10-25 08:24:07,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 08:24:07,561.561 INFO    ] 200
[2026-10-25 08:24:07,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:07,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:24:07,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:24:07,656.656 INFO    ] No camera update needed
[2026-10-25 08:24:07,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:24:07,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:24:07,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:24:07,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:24:09,716.716 INFO    ] ================================================
[2026-10-25 08:24:09,732.732 INFO    ] Launching Daemon at Sun Oct 25 08:24:09 IST 2026
[2026-10-25 08:24:09,744.744 INFO    ] ================================================
[2026-10-25 08:24:10,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:24:10
[2026-10-25 08:24:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:24:11,155.155 INFO    ] Initializing speech engine...
[2026-10-25 08:24:11,177.177 INFO    ] 2026-10-25 08:24:11
[2026-10-25 08:24:11,427.427 INFO    ] 2026-10-25 08:24:11
[2026-10-25 08:24:11,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:24:11,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:24:11,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:24:11,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:24:11,794.794 INFO    ] time= 25/10/2026 08:24:11
[2026-10-25 08:24:11,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:24:11,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:24:11,955.955 INFO    ] No existing commands found in stream
[2026-10-25 08:24:16,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:24:16,987.987 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 08:24:20,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:24:20,512.512 INFO    ] Checking for system updates...
[2026-10-25 08:24:20,552.552 INFO    ] 200
[2026-10-25 08:24:20,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:20,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:20,611.611 INFO    ] No update needed
[2026-10-25 08:24:20,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 08:24:20,653.653 INFO    ] 200
[2026-10-25 08:24:20,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:20,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:24:20,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:20,754.754 INFO    ] No camera update needed
[2026-10-25 08:24:20,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:24:20,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:24:20,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:24:20,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:24:22,814.814 INFO    ] ================================================
[2026-10-25 08:24:22,830.830 INFO    ] Launching Daemon at Sun Oct 25 08:24:22 IST 2026
[2026-10-25 08:24:22,842.842 INFO    ] ================================================
[2026-10-25 08:24:23,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:24:23
[2026-10-25 08:24:24,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:24:24,509.509 INFO    ] Initializing speech engine...
[2026-10-25 08:24:24,522.522 INFO    ] 2026-10-25 08:24:24
[2026-10-25 08:24:24,803.803 INFO    ] 2026-10-25 08:24:24
[2026-10-25 08:24:24,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:24:25,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:24:25,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:24:25,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:24:25,369.369 INFO    ] time= 25/10/2026 08:24:25
[2026-10-25 08:24:25,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:24:25,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:24:25,514.514 INFO    ] No existing commands found in stream
[2026-10-25 08:24:30,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:24:30,541.541 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 08:24:32,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:24:32,558.558 INFO    ] Checking for system updates...
[2026-10-25 08:24:32,599.599 INFO    ] 200
[2026-10-25 08:24:32,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:32,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:24:32,664.664 INFO    ] No update needed
[2026-10-25 08:24:32,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 08:24:32,710.710 INFO    ] 200
[2026-10-25 08:24:32,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:32,763.763 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:24:32,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:24:32,816.816 INFO    ] No camera update needed
[2026-10-25 08:24:32,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:24:32,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:24:32,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:24:32,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:24:34,881.881 INFO    ] ================================================
[2026-10-25 08:24:34,896.896 INFO    ] Launching Daemon at Sun Oct 25 08:24:34 IST 2026
[2026-10-25 08:24:34,907.907 INFO    ] ================================================
[2026-10-25 08:24:35,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:24:35
[2026-10-25 08:24:36,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:24:36,415.415 INFO    ] Initializing speech engine...
[2026-10-25 08:24:36,424.424 INFO    ] 2026-10-25 08:24:36
[2026-10-25 08:24:36,689.689 INFO    ] 2026-10-25 08:24:36
[2026-10-25 08:24:36,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:24:36,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:24:36,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:24:37,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:24:37,223.223 INFO    ] time= 25/10/2026 08:24:37
[2026-10-25 08:24:37,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:24:37,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:24:37,373.373 INFO    ] No existing commands found in stream
[2026-10-25 08:24:42,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:24:42,396.396 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 08:24:46,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:24:46,041.041 INFO    ] Checking for system updates...
[2026-10-25 08:24:46,076.076 INFO    ] 200
[2026-10-25 08:24:46,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:46,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:46,134.134 INFO    ] No update needed
[2026-10-25 08:24:46,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 08:24:46,172.172 INFO    ] 200
[2026-10-25 08:24:46,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:46,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:24:46,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:46,265.265 INFO    ] No camera update needed
[2026-10-25 08:24:46,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:24:46,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:24:46,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:24:46,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:24:48,324.324 INFO    ] ================================================
[2026-10-25 08:24:48,340.340 INFO    ] Launching Daemon at Sun Oct 25 08:24:48 IST 2026
[2026-10-25 08:24:48,352.352 INFO    ] ================================================
[2026-10-25 08:24:48,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:24:48
[2026-10-25 08:24:49,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:24:49,855.855 INFO    ] Initializing speech engine...
[2026-10-25 08:24:49,876.876 INFO    ] 2026-10-25 08:24:49
[2026-10-25 08:24:50,164.164 INFO    ] 2026-10-25 08:24:50
[2026-10-25 08:24:50,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:24:50,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:24:50,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:24:50,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:24:50,546.546 INFO    ] time= 25/10/2026 08:24:50
[2026-10-25 08:24:50,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:24:50,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:24:50,719.719 INFO    ] No existing commands found in stream
[2026-10-25 08:24:55,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:24:55,753.753 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 08:24:58,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:24:58,718.718 INFO    ] Checking for system updates...
[2026-10-25 08:24:58,754.754 INFO    ] 200
[2026-10-25 08:24:58,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:58,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:58,817.817 INFO    ] No update needed
[2026-10-25 08:24:58,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 08:24:58,853.853 INFO    ] 200
[2026-10-25 08:24:58,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:24:58,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:24:58,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:24:58,951.951 INFO    ] No camera update needed
[2026-10-25 08:24:58,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:24:58,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:24:58,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:24:58,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:01,007.007 INFO    ] ================================================
[2026-10-25 08:25:01,030.030 INFO    ] Launching Daemon at Sun Oct 25 08:25:01 IST 2026
[2026-10-25 08:25:01,045.045 INFO    ] ================================================
[2026-10-25 08:25:01,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:01
[2026-10-25 08:25:02,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:02,871.871 INFO    ] Initializing speech engine...
[2026-10-25 08:25:02,899.899 INFO    ] 2026-10-25 08:25:02
[2026-10-25 08:25:03,180.180 INFO    ] 2026-10-25 08:25:03
[2026-10-25 08:25:03,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:25:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:25:03,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:25:03,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:25:03,591.591 INFO    ] time= 25/10/2026 08:25:03
[2026-10-25 08:25:03,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:25:03,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:25:03,691.691 INFO    ] No existing commands found in stream
[2026-10-25 08:25:08,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:25:08,726.726 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 08:25:10,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:25:10,813.813 INFO    ] Checking for system updates...
[2026-10-25 08:25:10,849.849 INFO    ] 200
[2026-10-25 08:25:10,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:10,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:10,907.907 INFO    ] No update needed
[2026-10-25 08:25:10,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 08:25:10,943.943 INFO    ] 200
[2026-10-25 08:25:10,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:10,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:25:11,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:11,041.041 INFO    ] No camera update needed
[2026-10-25 08:25:11,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:25:11,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:25:11,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:25:11,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:13,097.097 INFO    ] ================================================
[2026-10-25 08:25:13,113.113 INFO    ] Launching Daemon at Sun Oct 25 08:25:13 IST 2026
[2026-10-25 08:25:13,123.123 INFO    ] ================================================
[2026-10-25 08:25:13,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:13
[2026-10-25 08:25:14,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:14,725.725 INFO    ] Initializing speech engine...
[2026-10-25 08:25:14,738.738 INFO    ] 2026-10-25 08:25:14
[2026-10-25 08:25:15,043.043 INFO    ] 2026-10-25 08:25:15
[2026-10-25 08:25:15,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:25:15,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:25:15,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:25:15,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:25:15,553.553 INFO    ] time= 25/10/2026 08:25:15
[2026-10-25 08:25:15,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:25:15,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:25:15,697.697 INFO    ] No existing commands found in stream
[2026-10-25 08:25:20,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:25:20,721.721 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 08:25:21,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:25:21,204.204 INFO    ] Checking for system updates...
[2026-10-25 08:25:21,242.242 INFO    ] 200
[2026-10-25 08:25:21,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:21,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:21,308.308 INFO    ] No update needed
[2026-10-25 08:25:21,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 08:25:21,346.346 INFO    ] 200
[2026-10-25 08:25:21,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:21,398.398 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:25:21,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:21,449.449 INFO    ] No camera update needed
[2026-10-25 08:25:21,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:25:21,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:25:21,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:25:21,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:23,509.509 INFO    ] ================================================
[2026-10-25 08:25:23,524.524 INFO    ] Launching Daemon at Sun Oct 25 08:25:23 IST 2026
[2026-10-25 08:25:23,535.535 INFO    ] ================================================
[2026-10-25 08:25:24,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:24
[2026-10-25 08:25:24,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:25,002.002 INFO    ] Initializing speech engine...
[2026-10-25 08:25:25,009.009 INFO    ] 2026-10-25 08:25:25
[2026-10-25 08:25:25,271.271 INFO    ] 2026-10-25 08:25:25
[2026-10-25 08:25:25,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:25:25,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:25:25,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:25:25,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:25:26,060.060 INFO    ] time= 25/10/2026 08:25:26
[2026-10-25 08:25:26,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:25:26,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:25:26,270.270 INFO    ] No existing commands found in stream
[2026-10-25 08:25:31,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:25:31,291.291 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 08:25:32,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:25:32,202.202 INFO    ] Checking for system updates...
[2026-10-25 08:25:32,247.247 INFO    ] 200
[2026-10-25 08:25:32,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:32,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:32,313.313 INFO    ] No update needed
[2026-10-25 08:25:32,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 08:25:32,353.353 INFO    ] 200
[2026-10-25 08:25:32,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:32,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:25:32,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:32,441.441 INFO    ] No camera update needed
[2026-10-25 08:25:32,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:25:32,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:25:32,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:25:32,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:34,501.501 INFO    ] ================================================
[2026-10-25 08:25:34,516.516 INFO    ] Launching Daemon at Sun Oct 25 08:25:34 IST 2026
[2026-10-25 08:25:34,528.528 INFO    ] ================================================
[2026-10-25 08:25:35,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:35
[2026-10-25 08:25:35,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:36,167.167 INFO    ] Initializing speech engine...
[2026-10-25 08:25:36,179.179 INFO    ] 2026-10-25 08:25:36
[2026-10-25 08:25:36,448.448 INFO    ] 2026-10-25 08:25:36
[2026-10-25 08:25:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:25:36,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:25:36,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:25:36,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:25:36,954.954 INFO    ] time= 25/10/2026 08:25:36
[2026-10-25 08:25:37,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:25:37,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:25:37,138.138 INFO    ] No existing commands found in stream
[2026-10-25 08:25:42,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:25:42,172.172 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 08:25:43,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:25:43,722.722 INFO    ] Checking for system updates...
[2026-10-25 08:25:43,758.758 INFO    ] 200
[2026-10-25 08:25:43,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:43,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:25:43,816.816 INFO    ] No update needed
[2026-10-25 08:25:43,818.818 INFO    ] Checking for camera pi updates...
[2026-10-25 08:25:43,852.852 INFO    ] 200
[2026-10-25 08:25:43,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:43,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:25:43,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:25:43,944.944 INFO    ] No camera update needed
[2026-10-25 08:25:43,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:25:43,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:25:43,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:25:43,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:46,999.999 INFO    ] ================================================
[2026-10-25 08:25:46,015.015 INFO    ] Launching Daemon at Sun Oct 25 08:25:46 IST 2026
[2026-10-25 08:25:46,026.026 INFO    ] ================================================
[2026-10-25 08:25:46,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:46
[2026-10-25 08:25:47,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:47,433.433 INFO    ] Initializing speech engine...
[2026-10-25 08:25:47,448.448 INFO    ] 2026-10-25 08:25:47
[2026-10-25 08:25:47,714.714 INFO    ] 2026-10-25 08:25:47
[2026-10-25 08:25:47,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:25:47,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:25:47,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:25:48,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:25:48,109.109 INFO    ] time= 25/10/2026 08:25:48
[2026-10-25 08:25:48,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:25:48,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:25:48,270.270 INFO    ] No existing commands found in stream
[2026-10-25 08:25:53,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:25:53,295.295 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 08:25:56,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:25:56,083.083 INFO    ] Checking for system updates...
[2026-10-25 08:25:56,125.125 INFO    ] 200
[2026-10-25 08:25:56,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:56,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:56,185.185 INFO    ] No update needed
[2026-10-25 08:25:56,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 08:25:56,222.222 INFO    ] 200
[2026-10-25 08:25:56,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:25:56,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:25:56,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:25:56,415.415 INFO    ] No camera update needed
[2026-10-25 08:25:56,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:25:56,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:25:56,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:25:56,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:25:58,471.471 INFO    ] ================================================
[2026-10-25 08:25:58,487.487 INFO    ] Launching Daemon at Sun Oct 25 08:25:58 IST 2026
[2026-10-25 08:25:58,499.499 INFO    ] ================================================
[2026-10-25 08:25:59,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:25:59
[2026-10-25 08:25:59,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:25:59,906.906 INFO    ] Initializing speech engine...
[2026-10-25 08:25:59,929.929 INFO    ] 2026-10-25 08:25:59
[2026-10-25 08:26:00,185.185 INFO    ] 2026-10-25 08:26:00
[2026-10-25 08:26:00,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:00,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:00,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:00,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:00,561.561 INFO    ] time= 25/10/2026 08:26:00
[2026-10-25 08:26:00,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:00,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:00,741.741 INFO    ] No existing commands found in stream
[2026-10-25 08:26:05,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:26:05,769.769 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 08:26:06,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:26:06,868.868 INFO    ] Checking for system updates...
[2026-10-25 08:26:06,904.904 INFO    ] 200
[2026-10-25 08:26:06,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:06,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:06,965.965 INFO    ] No update needed
[2026-10-25 08:26:06,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 08:26:07,001.001 INFO    ] 200
[2026-10-25 08:26:07,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:07,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:26:07,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:07,090.090 INFO    ] No camera update needed
[2026-10-25 08:26:07,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:26:07,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:26:07,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:26:07,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:26:09,152.152 INFO    ] ================================================
[2026-10-25 08:26:09,168.168 INFO    ] Launching Daemon at Sun Oct 25 08:26:09 IST 2026
[2026-10-25 08:26:09,179.179 INFO    ] ================================================
[2026-10-25 08:26:09,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:26:09
[2026-10-25 08:26:10,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:26:10,627.627 INFO    ] Initializing speech engine...
[2026-10-25 08:26:10,637.637 INFO    ] 2026-10-25 08:26:10
[2026-10-25 08:26:10,908.908 INFO    ] 2026-10-25 08:26:10
[2026-10-25 08:26:10,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:11,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:11,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:11,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:11,402.402 INFO    ] time= 25/10/2026 08:26:11
[2026-10-25 08:26:11,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:11,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:11,593.593 INFO    ] No existing commands found in stream
[2026-10-25 08:26:16,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:26:16,623.623 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 08:26:18,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:26:18,094.094 INFO    ] Checking for system updates...
[2026-10-25 08:26:18,131.131 INFO    ] 200
[2026-10-25 08:26:18,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:18,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:26:18,188.188 INFO    ] No update needed
[2026-10-25 08:26:18,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 08:26:18,225.225 INFO    ] 200
[2026-10-25 08:26:18,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:18,271.271 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:26:18,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:26:18,323.323 INFO    ] No camera update needed
[2026-10-25 08:26:18,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:26:18,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:26:18,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:26:18,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:26:20,378.378 INFO    ] ================================================
[2026-10-25 08:26:20,393.393 INFO    ] Launching Daemon at Sun Oct 25 08:26:20 IST 2026
[2026-10-25 08:26:20,404.404 INFO    ] ================================================
[2026-10-25 08:26:20,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:26:20
[2026-10-25 08:26:21,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:26:21,853.853 INFO    ] Initializing speech engine...
[2026-10-25 08:26:21,861.861 INFO    ] 2026-10-25 08:26:21
[2026-10-25 08:26:22,111.111 INFO    ] 2026-10-25 08:26:22
[2026-10-25 08:26:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:22,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:22,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:22,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:22,569.569 INFO    ] time= 25/10/2026 08:26:22
[2026-10-25 08:26:22,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:22,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:22,740.740 INFO    ] No existing commands found in stream
[2026-10-25 08:26:27,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:26:27,755.755 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 08:26:28,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:26:28,224.224 INFO    ] Checking for system updates...
[2026-10-25 08:26:28,260.260 INFO    ] 200
[2026-10-25 08:26:28,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:28,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:28,317.317 INFO    ] No update needed
[2026-10-25 08:26:28,320.320 INFO    ] Checking for camera pi updates...
[2026-10-25 08:26:28,353.353 INFO    ] 200
[2026-10-25 08:26:28,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:28,397.397 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:26:28,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:28,447.447 INFO    ] No camera update needed
[2026-10-25 08:26:28,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:26:28,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:26:28,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:26:28,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:26:30,501.501 INFO    ] ================================================
[2026-10-25 08:26:30,516.516 INFO    ] Launching Daemon at Sun Oct 25 08:26:30 IST 2026
[2026-10-25 08:26:30,527.527 INFO    ] ================================================
[2026-10-25 08:26:31,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:26:31
[2026-10-25 08:26:31,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:26:32,147.147 INFO    ] Initializing speech engine...
[2026-10-25 08:26:32,156.156 INFO    ] 2026-10-25 08:26:32
[2026-10-25 08:26:32,419.419 INFO    ] 2026-10-25 08:26:32
[2026-10-25 08:26:32,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:32,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:32,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:32,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:32,816.816 INFO    ] time= 25/10/2026 08:26:32
[2026-10-25 08:26:32,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:32,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:32,979.979 INFO    ] No existing commands found in stream
[2026-10-25 08:26:38,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:26:38,013.013 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 08:26:41,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:26:41,106.106 INFO    ] Checking for system updates...
[2026-10-25 08:26:41,146.146 INFO    ] 200
[2026-10-25 08:26:41,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:41,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:26:41,204.204 INFO    ] No update needed
[2026-10-25 08:26:41,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 08:26:41,240.240 INFO    ] 200
[2026-10-25 08:26:41,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:41,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:26:41,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:26:41,335.335 INFO    ] No camera update needed
[2026-10-25 08:26:41,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:26:41,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:26:41,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:26:41,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:26:43,389.389 INFO    ] ================================================
[2026-10-25 08:26:43,404.404 INFO    ] Launching Daemon at Sun Oct 25 08:26:43 IST 2026
[2026-10-25 08:26:43,415.415 INFO    ] ================================================
[2026-10-25 08:26:43,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:26:43
[2026-10-25 08:26:44,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:26:44,851.851 INFO    ] Initializing speech engine...
[2026-10-25 08:26:44,857.857 INFO    ] 2026-10-25 08:26:44
[2026-10-25 08:26:45,147.147 INFO    ] 2026-10-25 08:26:45
[2026-10-25 08:26:45,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:45,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:45,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:45,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:45,530.530 INFO    ] time= 25/10/2026 08:26:45
[2026-10-25 08:26:45,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:45,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:45,642.642 INFO    ] No existing commands found in stream
[2026-10-25 08:26:50,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:26:50,657.657 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 08:26:52,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:26:52,389.389 INFO    ] Checking for system updates...
[2026-10-25 08:26:52,425.425 INFO    ] 200
[2026-10-25 08:26:52,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:52,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:52,485.485 INFO    ] No update needed
[2026-10-25 08:26:52,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 08:26:52,522.522 INFO    ] 200
[2026-10-25 08:26:52,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:26:52,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:26:52,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:26:52,617.617 INFO    ] No camera update needed
[2026-10-25 08:26:52,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:26:52,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:26:52,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:26:52,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:26:54,672.672 INFO    ] ================================================
[2026-10-25 08:26:54,687.687 INFO    ] Launching Daemon at Sun Oct 25 08:26:54 IST 2026
[2026-10-25 08:26:54,699.699 INFO    ] ================================================
[2026-10-25 08:26:55,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:26:55
[2026-10-25 08:26:55,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:26:56,203.203 INFO    ] Initializing speech engine...
[2026-10-25 08:26:56,210.210 INFO    ] 2026-10-25 08:26:56
[2026-10-25 08:26:56,478.478 INFO    ] 2026-10-25 08:26:56
[2026-10-25 08:26:56,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:26:56,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:26:56,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:26:56,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:26:56,970.970 INFO    ] time= 25/10/2026 08:26:56
[2026-10-25 08:26:57,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:26:57,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:26:57,106.106 INFO    ] No existing commands found in stream
[2026-10-25 08:27:02,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:27:02,147.147 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 08:27:04,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:27:04,683.683 INFO    ] Checking for system updates...
[2026-10-25 08:27:04,720.720 INFO    ] 200
[2026-10-25 08:27:04,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:04,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:04,779.779 INFO    ] No update needed
[2026-10-25 08:27:04,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 08:27:04,815.815 INFO    ] 200
[2026-10-25 08:27:04,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:04,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:27:04,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:04,913.913 INFO    ] No camera update needed
[2026-10-25 08:27:04,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:27:04,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:27:04,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:27:04,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:27:06,967.967 INFO    ] ================================================
[2026-10-25 08:27:06,983.983 INFO    ] Launching Daemon at Sun Oct 25 08:27:06 IST 2026
[2026-10-25 08:27:07,995.995 INFO    ] ================================================
[2026-10-25 08:27:07,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:27:07
[2026-10-25 08:27:08,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:27:08,391.391 INFO    ] Initializing speech engine...
[2026-10-25 08:27:08,397.397 INFO    ] 2026-10-25 08:27:08
[2026-10-25 08:27:08,670.670 INFO    ] 2026-10-25 08:27:08
[2026-10-25 08:27:08,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:27:08,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:27:08,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:27:09,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:27:09,130.130 INFO    ] time= 25/10/2026 08:27:09
[2026-10-25 08:27:09,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:27:09,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:27:09,299.299 INFO    ] No existing commands found in stream
[2026-10-25 08:27:14,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:27:14,314.314 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 08:27:16,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:27:16,300.300 INFO    ] Checking for system updates...
[2026-10-25 08:27:16,336.336 INFO    ] 200
[2026-10-25 08:27:16,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:16,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:27:16,394.394 INFO    ] No update needed
[2026-10-25 08:27:16,396.396 INFO    ] Checking for camera pi updates...
[2026-10-25 08:27:16,431.431 INFO    ] 200
[2026-10-25 08:27:16,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:16,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:27:16,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:27:16,522.522 INFO    ] No camera update needed
[2026-10-25 08:27:16,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:27:16,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:27:16,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:27:16,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:27:18,576.576 INFO    ] ================================================
[2026-10-25 08:27:18,592.592 INFO    ] Launching Daemon at Sun Oct 25 08:27:18 IST 2026
[2026-10-25 08:27:18,604.604 INFO    ] ================================================
[2026-10-25 08:27:19,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:27:19
[2026-10-25 08:27:19,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:27:20,053.053 INFO    ] Initializing speech engine...
[2026-10-25 08:27:20,062.062 INFO    ] 2026-10-25 08:27:20
[2026-10-25 08:27:20,309.309 INFO    ] 2026-10-25 08:27:20
[2026-10-25 08:27:20,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:27:20,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:27:20,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:27:20,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:27:20,807.807 INFO    ] time= 25/10/2026 08:27:20
[2026-10-25 08:27:20,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:27:20,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:27:21,005.005 INFO    ] No existing commands found in stream
[2026-10-25 08:27:26,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:27:26,032.032 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 08:27:30,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:27:30,422.422 INFO    ] Checking for system updates...
[2026-10-25 08:27:30,462.462 INFO    ] 200
[2026-10-25 08:27:30,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:30,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:30,526.526 INFO    ] No update needed
[2026-10-25 08:27:30,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 08:27:30,564.564 INFO    ] 200
[2026-10-25 08:27:30,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:30,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:27:30,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:30,663.663 INFO    ] No camera update needed
[2026-10-25 08:27:30,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:27:30,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:27:30,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:27:30,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:27:32,722.722 INFO    ] ================================================
[2026-10-25 08:27:32,738.738 INFO    ] Launching Daemon at Sun Oct 25 08:27:32 IST 2026
[2026-10-25 08:27:32,749.749 INFO    ] ================================================
[2026-10-25 08:27:33,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:27:33
[2026-10-25 08:27:33,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:27:34,323.323 INFO    ] Initializing speech engine...
[2026-10-25 08:27:34,334.334 INFO    ] 2026-10-25 08:27:34
[2026-10-25 08:27:34,621.621 INFO    ] 2026-10-25 08:27:34
[2026-10-25 08:27:34,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:27:34,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:27:34,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:27:35,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:27:35,084.084 INFO    ] time= 25/10/2026 08:27:35
[2026-10-25 08:27:35,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:27:35,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:27:35,289.289 INFO    ] No existing commands found in stream
[2026-10-25 08:27:40,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:27:40,318.318 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 08:27:42,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:27:42,583.583 INFO    ] Checking for system updates...
[2026-10-25 08:27:42,624.624 INFO    ] 200
[2026-10-25 08:27:42,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:42,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:42,689.689 INFO    ] No update needed
[2026-10-25 08:27:42,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 08:27:42,735.735 INFO    ] 200
[2026-10-25 08:27:42,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:42,779.779 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:27:42,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:42,829.829 INFO    ] No camera update needed
[2026-10-25 08:27:42,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:27:42,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:27:42,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:27:42,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:27:44,888.888 INFO    ] ================================================
[2026-10-25 08:27:44,904.904 INFO    ] Launching Daemon at Sun Oct 25 08:27:44 IST 2026
[2026-10-25 08:27:44,916.916 INFO    ] ================================================
[2026-10-25 08:27:45,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:27:45
[2026-10-25 08:27:46,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:27:46,311.311 INFO    ] Initializing speech engine...
[2026-10-25 08:27:46,324.324 INFO    ] 2026-10-25 08:27:46
[2026-10-25 08:27:46,586.586 INFO    ] 2026-10-25 08:27:46
[2026-10-25 08:27:46,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:27:46,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:27:46,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:27:46,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:27:46,953.953 INFO    ] time= 25/10/2026 08:27:46
[2026-10-25 08:27:46,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:27:47,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:27:47,107.107 INFO    ] No existing commands found in stream
[2026-10-25 08:27:52,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:27:52,143.143 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 08:27:56,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:27:56,937.937 INFO    ] Checking for system updates...
[2026-10-25 08:27:56,972.972 INFO    ] 200
[2026-10-25 08:27:56,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:57,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:57,031.031 INFO    ] No update needed
[2026-10-25 08:27:57,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 08:27:57,068.068 INFO    ] 200
[2026-10-25 08:27:57,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:27:57,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:27:57,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:27:57,165.165 INFO    ] No camera update needed
[2026-10-25 08:27:57,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:27:57,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:27:57,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:27:57,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:27:59,222.222 INFO    ] ================================================
[2026-10-25 08:27:59,238.238 INFO    ] Launching Daemon at Sun Oct 25 08:27:59 IST 2026
[2026-10-25 08:27:59,249.249 INFO    ] ================================================
[2026-10-25 08:27:59,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:27:59
[2026-10-25 08:28:00,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:28:00,668.668 INFO    ] Initializing speech engine...
[2026-10-25 08:28:00,674.674 INFO    ] 2026-10-25 08:28:00
[2026-10-25 08:28:00,931.931 INFO    ] 2026-10-25 08:28:00
[2026-10-25 08:28:00,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:28:01,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:28:01,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:28:01,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:28:01,307.307 INFO    ] time= 25/10/2026 08:28:01
[2026-10-25 08:28:01,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:28:01,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:28:01,440.440 INFO    ] No existing commands found in stream
[2026-10-25 08:28:06,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:28:06,459.459 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 08:28:07,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:28:07,987.987 INFO    ] Checking for system updates...
[2026-10-25 08:28:08,023.023 INFO    ] 200
[2026-10-25 08:28:08,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:08,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:08,088.088 INFO    ] No update needed
[2026-10-25 08:28:08,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 08:28:08,127.127 INFO    ] 200
[2026-10-25 08:28:08,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:08,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:28:08,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:08,223.223 INFO    ] No camera update needed
[2026-10-25 08:28:08,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:28:08,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:28:08,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:28:08,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:28:10,280.280 INFO    ] ================================================
[2026-10-25 08:28:10,295.295 INFO    ] Launching Daemon at Sun Oct 25 08:28:10 IST 2026
[2026-10-25 08:28:10,305.305 INFO    ] ================================================
[2026-10-25 08:28:10,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:28:10
[2026-10-25 08:28:11,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:28:11,721.721 INFO    ] Initializing speech engine...
[2026-10-25 08:28:11,726.726 INFO    ] 2026-10-25 08:28:11
[2026-10-25 08:28:12,028.028 INFO    ] 2026-10-25 08:28:11
[2026-10-25 08:28:12,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:28:12,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:28:12,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:28:12,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:28:12,408.408 INFO    ] time= 25/10/2026 08:28:12
[2026-10-25 08:28:12,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:28:12,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:28:12,531.531 INFO    ] No existing commands found in stream
[2026-10-25 08:28:17,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:28:17,546.546 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 08:28:18,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:28:18,876.876 INFO    ] Checking for system updates...
[2026-10-25 08:28:18,912.912 INFO    ] 200
[2026-10-25 08:28:18,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:18,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:18,969.969 INFO    ] No update needed
[2026-10-25 08:28:18,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 08:28:19,005.005 INFO    ] 200
[2026-10-25 08:28:19,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:19,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:28:19,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:19,104.104 INFO    ] No camera update needed
[2026-10-25 08:28:19,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:28:19,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:28:19,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:28:19,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:28:21,160.160 INFO    ] ================================================
[2026-10-25 08:28:21,175.175 INFO    ] Launching Daemon at Sun Oct 25 08:28:21 IST 2026
[2026-10-25 08:28:21,186.186 INFO    ] ================================================
[2026-10-25 08:28:21,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:28:21
[2026-10-25 08:28:22,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:28:22,801.801 INFO    ] Initializing speech engine...
[2026-10-25 08:28:22,810.810 INFO    ] 2026-10-25 08:28:22
[2026-10-25 08:28:23,092.092 INFO    ] 2026-10-25 08:28:23
[2026-10-25 08:28:23,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:28:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:28:23,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:28:23,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:28:23,623.623 INFO    ] time= 25/10/2026 08:28:23
[2026-10-25 08:28:23,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:28:23,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:28:23,763.763 INFO    ] No existing commands found in stream
[2026-10-25 08:28:28,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:28:28,794.794 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 08:28:29,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:28:29,426.426 INFO    ] Checking for system updates...
[2026-10-25 08:28:29,463.463 INFO    ] 200
[2026-10-25 08:28:29,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:29,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:29,530.530 INFO    ] No update needed
[2026-10-25 08:28:29,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 08:28:29,568.568 INFO    ] 200
[2026-10-25 08:28:29,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:29,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:28:29,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:29,667.667 INFO    ] No camera update needed
[2026-10-25 08:28:29,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:28:29,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:28:29,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:28:29,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:28:31,726.726 INFO    ] ================================================
[2026-10-25 08:28:31,742.742 INFO    ] Launching Daemon at Sun Oct 25 08:28:31 IST 2026
[2026-10-25 08:28:31,754.754 INFO    ] ================================================
[2026-10-25 08:28:32,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:28:32
[2026-10-25 08:28:33,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:28:33,434.434 INFO    ] Initializing speech engine...
[2026-10-25 08:28:33,442.442 INFO    ] 2026-10-25 08:28:33
[2026-10-25 08:28:33,732.732 INFO    ] 2026-10-25 08:28:33
[2026-10-25 08:28:33,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:28:33,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:28:34,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:28:34,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:28:34,194.194 INFO    ] time= 25/10/2026 08:28:34
[2026-10-25 08:28:34,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:28:34,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:28:34,389.389 INFO    ] No existing commands found in stream
[2026-10-25 08:28:39,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:28:39,424.424 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 08:28:41,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:28:41,436.436 INFO    ] Checking for system updates...
[2026-10-25 08:28:41,478.478 INFO    ] 200
[2026-10-25 08:28:41,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:41,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:41,546.546 INFO    ] No update needed
[2026-10-25 08:28:41,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 08:28:41,585.585 INFO    ] 200
[2026-10-25 08:28:41,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:41,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:28:41,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:41,679.679 INFO    ] No camera update needed
[2026-10-25 08:28:41,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:28:41,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:28:41,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:28:41,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:28:43,738.738 INFO    ] ================================================
[2026-10-25 08:28:43,754.754 INFO    ] Launching Daemon at Sun Oct 25 08:28:43 IST 2026
[2026-10-25 08:28:43,764.764 INFO    ] ================================================
[2026-10-25 08:28:44,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:28:44
[2026-10-25 08:28:45,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:28:45,395.395 INFO    ] Initializing speech engine...
[2026-10-25 08:28:45,406.406 INFO    ] 2026-10-25 08:28:45
[2026-10-25 08:28:45,715.715 INFO    ] 2026-10-25 08:28:45
[2026-10-25 08:28:45,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:28:45,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:28:45,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:28:46,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:28:46,218.218 INFO    ] time= 25/10/2026 08:28:46
[2026-10-25 08:28:46,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:28:46,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:28:46,373.373 INFO    ] No existing commands found in stream
[2026-10-25 08:28:51,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:28:51,386.386 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 08:28:57,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:28:57,164.164 INFO    ] Checking for system updates...
[2026-10-25 08:28:57,202.202 INFO    ] 200
[2026-10-25 08:28:57,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:57,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:57,261.261 INFO    ] No update needed
[2026-10-25 08:28:57,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 08:28:57,299.299 INFO    ] 200
[2026-10-25 08:28:57,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:28:57,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:28:57,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:28:57,395.395 INFO    ] No camera update needed
[2026-10-25 08:28:57,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:28:57,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:28:57,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:28:57,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:28:59,453.453 INFO    ] ================================================
[2026-10-25 08:28:59,469.469 INFO    ] Launching Daemon at Sun Oct 25 08:28:59 IST 2026
[2026-10-25 08:28:59,481.481 INFO    ] ================================================
[2026-10-25 08:29:00,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:29:00
[2026-10-25 08:29:00,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:29:01,051.051 INFO    ] Initializing speech engine...
[2026-10-25 08:29:01,060.060 INFO    ] 2026-10-25 08:29:01
[2026-10-25 08:29:01,337.337 INFO    ] 2026-10-25 08:29:01
[2026-10-25 08:29:01,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:29:01,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:29:01,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:29:01,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:29:01,761.761 INFO    ] time= 25/10/2026 08:29:01
[2026-10-25 08:29:01,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:29:01,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:29:01,841.841 INFO    ] No existing commands found in stream
[2026-10-25 08:29:06,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:29:06,856.856 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 08:29:07,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:29:07,931.931 INFO    ] Checking for system updates...
[2026-10-25 08:29:07,968.968 INFO    ] 200
[2026-10-25 08:29:07,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:08,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:08,034.034 INFO    ] No update needed
[2026-10-25 08:29:08,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 08:29:08,072.072 INFO    ] 200
[2026-10-25 08:29:08,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:08,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:29:08,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:08,165.165 INFO    ] No camera update needed
[2026-10-25 08:29:08,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:29:08,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:29:08,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:29:08,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:29:10,223.223 INFO    ] ================================================
[2026-10-25 08:29:10,238.238 INFO    ] Launching Daemon at Sun Oct 25 08:29:10 IST 2026
[2026-10-25 08:29:10,250.250 INFO    ] ================================================
[2026-10-25 08:29:10,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:29:10
[2026-10-25 08:29:11,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:29:11,653.653 INFO    ] Initializing speech engine...
[2026-10-25 08:29:11,666.666 INFO    ] 2026-10-25 08:29:11
[2026-10-25 08:29:11,951.951 INFO    ] 2026-10-25 08:29:11
[2026-10-25 08:29:11,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:29:12,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:29:12,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:29:12,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:29:12,322.322 INFO    ] time= 25/10/2026 08:29:12
[2026-10-25 08:29:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:29:12,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:29:12,446.446 INFO    ] No existing commands found in stream
[2026-10-25 08:29:17,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:29:17,461.461 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 08:29:18,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:29:18,373.373 INFO    ] Checking for system updates...
[2026-10-25 08:29:18,416.416 INFO    ] 200
[2026-10-25 08:29:18,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:18,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:18,474.474 INFO    ] No update needed
[2026-10-25 08:29:18,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 08:29:18,511.511 INFO    ] 200
[2026-10-25 08:29:18,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:18,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:29:18,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:18,610.610 INFO    ] No camera update needed
[2026-10-25 08:29:18,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:29:18,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:29:18,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:29:18,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:29:20,664.664 INFO    ] ================================================
[2026-10-25 08:29:20,680.680 INFO    ] Launching Daemon at Sun Oct 25 08:29:20 IST 2026
[2026-10-25 08:29:20,691.691 INFO    ] ================================================
[2026-10-25 08:29:21,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:29:21
[2026-10-25 08:29:21,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:29:22,107.107 INFO    ] Initializing speech engine...
[2026-10-25 08:29:22,132.132 INFO    ] 2026-10-25 08:29:22
[2026-10-25 08:29:22,404.404 INFO    ] 2026-10-25 08:29:22
[2026-10-25 08:29:22,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:29:22,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:29:22,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:29:22,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:29:22,803.803 INFO    ] time= 25/10/2026 08:29:22
[2026-10-25 08:29:22,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:29:22,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:29:22,912.912 INFO    ] No existing commands found in stream
[2026-10-25 08:29:27,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:29:27,926.926 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 08:29:31,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:29:31,588.588 INFO    ] Checking for system updates...
[2026-10-25 08:29:31,635.635 INFO    ] 200
[2026-10-25 08:29:31,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:31,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:31,701.701 INFO    ] No update needed
[2026-10-25 08:29:31,705.705 INFO    ] Checking for camera pi updates...
[2026-10-25 08:29:31,743.743 INFO    ] 200
[2026-10-25 08:29:31,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:31,791.791 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:29:31,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:29:31,830.830 INFO    ] No camera update needed
[2026-10-25 08:29:31,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:29:31,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:29:31,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:29:31,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:29:33,893.893 INFO    ] ================================================
[2026-10-25 08:29:33,908.908 INFO    ] Launching Daemon at Sun Oct 25 08:29:33 IST 2026
[2026-10-25 08:29:33,920.920 INFO    ] ================================================
[2026-10-25 08:29:34,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:29:34
[2026-10-25 08:29:35,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:29:35,424.424 INFO    ] Initializing speech engine...
[2026-10-25 08:29:35,443.443 INFO    ] 2026-10-25 08:29:35
[2026-10-25 08:29:35,720.720 INFO    ] 2026-10-25 08:29:35
[2026-10-25 08:29:35,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:29:36,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:29:36,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:29:36,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:29:36,200.200 INFO    ] time= 25/10/2026 08:29:36
[2026-10-25 08:29:36,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:29:36,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:29:36,362.362 INFO    ] No existing commands found in stream
[2026-10-25 08:29:41,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:29:41,402.402 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 08:29:44,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:29:44,317.317 INFO    ] Checking for system updates...
[2026-10-25 08:29:44,358.358 INFO    ] 200
[2026-10-25 08:29:44,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:44,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:29:44,419.419 INFO    ] No update needed
[2026-10-25 08:29:44,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 08:29:44,458.458 INFO    ] 200
[2026-10-25 08:29:44,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:44,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:29:44,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:29:44,555.555 INFO    ] No camera update needed
[2026-10-25 08:29:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:29:44,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:29:44,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:29:44,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:29:46,613.613 INFO    ] ================================================
[2026-10-25 08:29:46,628.628 INFO    ] Launching Daemon at Sun Oct 25 08:29:46 IST 2026
[2026-10-25 08:29:46,639.639 INFO    ] ================================================
[2026-10-25 08:29:47,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:29:47
[2026-10-25 08:29:47,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:29:48,058.058 INFO    ] Initializing speech engine...
[2026-10-25 08:29:48,067.067 INFO    ] 2026-10-25 08:29:48
[2026-10-25 08:29:48,319.319 INFO    ] 2026-10-25 08:29:48
[2026-10-25 08:29:48,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:29:48,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:29:48,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:29:48,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:29:48,807.807 INFO    ] time= 25/10/2026 08:29:48
[2026-10-25 08:29:48,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:29:48,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:29:48,928.928 INFO    ] No existing commands found in stream
[2026-10-25 08:29:53,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:29:53,943.943 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 08:29:57,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:29:57,814.814 INFO    ] Checking for system updates...
[2026-10-25 08:29:57,854.854 INFO    ] 200
[2026-10-25 08:29:57,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:57,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:29:57,912.912 INFO    ] No update needed
[2026-10-25 08:29:57,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 08:29:57,952.952 INFO    ] 200
[2026-10-25 08:29:57,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:29:57,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:29:58,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:29:58,049.049 INFO    ] No camera update needed
[2026-10-25 08:29:58,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:29:58,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:29:58,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:29:58,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:30:00,110.110 INFO    ] ================================================
[2026-10-25 08:30:00,126.126 INFO    ] Launching Daemon at Sun Oct 25 08:30:00 IST 2026
[2026-10-25 08:30:00,137.137 INFO    ] ================================================
[2026-10-25 08:30:00,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:30:00
[2026-10-25 08:30:01,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:30:01,577.577 INFO    ] Initializing speech engine...
[2026-10-25 08:30:01,586.586 INFO    ] 2026-10-25 08:30:01
[2026-10-25 08:30:01,917.917 INFO    ] 2026-10-25 08:30:01
[2026-10-25 08:30:01,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:30:02,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:30:02,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:30:02,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:30:02,555.555 INFO    ] time= 25/10/2026 08:30:02
[2026-10-25 08:30:02,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:30:02,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:30:02,706.706 INFO    ] No existing commands found in stream
[2026-10-25 08:30:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:30:07,719.719 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 08:30:11,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:30:11,566.566 INFO    ] Checking for system updates...
[2026-10-25 08:30:11,603.603 INFO    ] 200
[2026-10-25 08:30:11,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:11,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:30:11,669.669 INFO    ] No update needed
[2026-10-25 08:30:11,672.672 INFO    ] Checking for camera pi updates...
[2026-10-25 08:30:11,707.707 INFO    ] 200
[2026-10-25 08:30:11,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:11,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:30:11,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:30:11,907.907 INFO    ] No camera update needed
[2026-10-25 08:30:11,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:30:11,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:30:11,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:30:11,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:30:13,966.966 INFO    ] ================================================
[2026-10-25 08:30:13,982.982 INFO    ] Launching Daemon at Sun Oct 25 08:30:13 IST 2026
[2026-10-25 08:30:13,994.994 INFO    ] ================================================
[2026-10-25 08:30:14,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:30:14
[2026-10-25 08:30:15,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:30:15,466.466 INFO    ] Initializing speech engine...
[2026-10-25 08:30:15,473.473 INFO    ] 2026-10-25 08:30:15
[2026-10-25 08:30:15,720.720 INFO    ] 2026-10-25 08:30:15
[2026-10-25 08:30:15,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:30:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:30:16,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:30:16,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:30:16,201.201 INFO    ] time= 25/10/2026 08:30:16
[2026-10-25 08:30:16,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:30:16,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:30:16,341.341 INFO    ] No existing commands found in stream
[2026-10-25 08:30:21,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:30:21,370.370 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 08:30:23,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:30:23,319.319 INFO    ] Checking for system updates...
[2026-10-25 08:30:23,361.361 INFO    ] 200
[2026-10-25 08:30:23,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:23,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:23,421.421 INFO    ] No update needed
[2026-10-25 08:30:23,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 08:30:23,463.463 INFO    ] 200
[2026-10-25 08:30:23,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:23,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:30:23,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:23,567.567 INFO    ] No camera update needed
[2026-10-25 08:30:23,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:30:23,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:30:23,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:30:23,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:30:25,626.626 INFO    ] ================================================
[2026-10-25 08:30:25,642.642 INFO    ] Launching Daemon at Sun Oct 25 08:30:25 IST 2026
[2026-10-25 08:30:25,652.652 INFO    ] ================================================
[2026-10-25 08:30:26,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:30:26
[2026-10-25 08:30:26,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:30:27,196.196 INFO    ] Initializing speech engine...
[2026-10-25 08:30:27,206.206 INFO    ] 2026-10-25 08:30:27
[2026-10-25 08:30:27,454.454 INFO    ] 2026-10-25 08:30:27
[2026-10-25 08:30:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:30:27,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:30:27,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:30:27,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:30:27,903.903 INFO    ] time= 25/10/2026 08:30:27
[2026-10-25 08:30:27,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:30:27,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:30:28,054.054 INFO    ] No existing commands found in stream
[2026-10-25 08:30:33,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:30:33,068.068 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 08:30:35,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:30:35,764.764 INFO    ] Checking for system updates...
[2026-10-25 08:30:35,801.801 INFO    ] 200
[2026-10-25 08:30:35,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:35,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:35,863.863 INFO    ] No update needed
[2026-10-25 08:30:35,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 08:30:35,901.901 INFO    ] 200
[2026-10-25 08:30:35,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:35,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:30:35,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:35,997.997 INFO    ] No camera update needed
[2026-10-25 08:30:35,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:30:36,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:30:36,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:30:36,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:30:38,055.055 INFO    ] ================================================
[2026-10-25 08:30:38,069.069 INFO    ] Launching Daemon at Sun Oct 25 08:30:38 IST 2026
[2026-10-25 08:30:38,080.080 INFO    ] ================================================
[2026-10-25 08:30:38,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:30:38
[2026-10-25 08:30:39,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:30:39,514.514 INFO    ] Initializing speech engine...
[2026-10-25 08:30:39,537.537 INFO    ] 2026-10-25 08:30:39
[2026-10-25 08:30:39,801.801 INFO    ] 2026-10-25 08:30:39
[2026-10-25 08:30:39,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:30:40,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:30:40,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:30:40,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:30:40,177.177 INFO    ] time= 25/10/2026 08:30:40
[2026-10-25 08:30:40,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:30:40,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:30:40,352.352 INFO    ] No existing commands found in stream
[2026-10-25 08:30:45,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:30:45,385.385 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 08:30:48,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:30:48,366.366 INFO    ] Checking for system updates...
[2026-10-25 08:30:48,405.405 INFO    ] 200
[2026-10-25 08:30:48,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:48,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:48,465.465 INFO    ] No update needed
[2026-10-25 08:30:48,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 08:30:48,504.504 INFO    ] 200
[2026-10-25 08:30:48,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:48,548.548 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:30:48,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:30:48,602.602 INFO    ] No camera update needed
[2026-10-25 08:30:48,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:30:48,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:30:48,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:30:48,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:30:50,662.662 INFO    ] ================================================
[2026-10-25 08:30:50,678.678 INFO    ] Launching Daemon at Sun Oct 25 08:30:50 IST 2026
[2026-10-25 08:30:50,689.689 INFO    ] ================================================
[2026-10-25 08:30:51,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:30:51
[2026-10-25 08:30:52,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:30:52,371.371 INFO    ] Initializing speech engine...
[2026-10-25 08:30:52,382.382 INFO    ] 2026-10-25 08:30:52
[2026-10-25 08:30:52,696.696 INFO    ] 2026-10-25 08:30:52
[2026-10-25 08:30:52,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:30:52,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:30:52,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:30:53,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:30:53,100.100 INFO    ] time= 25/10/2026 08:30:53
[2026-10-25 08:30:53,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:30:53,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:30:53,286.286 INFO    ] No existing commands found in stream
[2026-10-25 08:30:58,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:30:58,303.303 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 08:30:59,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:30:59,559.559 INFO    ] Checking for system updates...
[2026-10-25 08:30:59,597.597 INFO    ] 200
[2026-10-25 08:30:59,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:59,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:30:59,665.665 INFO    ] No update needed
[2026-10-25 08:30:59,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 08:30:59,704.704 INFO    ] 200
[2026-10-25 08:30:59,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:30:59,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:30:59,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:30:59,801.801 INFO    ] No camera update needed
[2026-10-25 08:30:59,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:30:59,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:30:59,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:30:59,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:31:01,866.866 INFO    ] ================================================
[2026-10-25 08:31:01,883.883 INFO    ] Launching Daemon at Sun Oct 25 08:31:01 IST 2026
[2026-10-25 08:31:01,895.895 INFO    ] ================================================
[2026-10-25 08:31:02,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:31:02
[2026-10-25 08:31:03,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:31:03,569.569 INFO    ] Initializing speech engine...
[2026-10-25 08:31:03,583.583 INFO    ] 2026-10-25 08:31:03
[2026-10-25 08:31:03,845.845 INFO    ] 2026-10-25 08:31:03
[2026-10-25 08:31:03,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:31:04,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:31:04,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:31:04,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:31:04,249.249 INFO    ] time= 25/10/2026 08:31:04
[2026-10-25 08:31:04,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:31:04,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:31:04,377.377 INFO    ] No existing commands found in stream
[2026-10-25 08:31:09,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:31:09,392.392 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 08:31:11,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:31:11,753.753 INFO    ] Checking for system updates...
[2026-10-25 08:31:11,789.789 INFO    ] 200
[2026-10-25 08:31:11,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:11,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:11,854.854 INFO    ] No update needed
[2026-10-25 08:31:11,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 08:31:11,890.890 INFO    ] 200
[2026-10-25 08:31:11,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:11,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:31:11,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:11,994.994 INFO    ] No camera update needed
[2026-10-25 08:31:11,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:31:11,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:31:12,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:31:12,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:31:14,052.052 INFO    ] ================================================
[2026-10-25 08:31:14,066.066 INFO    ] Launching Daemon at Sun Oct 25 08:31:14 IST 2026
[2026-10-25 08:31:14,077.077 INFO    ] ================================================
[2026-10-25 08:31:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:31:14
[2026-10-25 08:31:15,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:31:15,573.573 INFO    ] Initializing speech engine...
[2026-10-25 08:31:15,585.585 INFO    ] 2026-10-25 08:31:15
[2026-10-25 08:31:15,888.888 INFO    ] 2026-10-25 08:31:15
[2026-10-25 08:31:15,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:31:16,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:31:16,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:31:16,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:31:16,323.323 INFO    ] time= 25/10/2026 08:31:16
[2026-10-25 08:31:16,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:31:16,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:31:16,515.515 INFO    ] No existing commands found in stream
[2026-10-25 08:31:21,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:31:21,548.548 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 08:31:28,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:31:28,174.174 INFO    ] Checking for system updates...
[2026-10-25 08:31:28,230.230 INFO    ] 200
[2026-10-25 08:31:28,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:28,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:28,299.299 INFO    ] No update needed
[2026-10-25 08:31:28,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 08:31:28,338.338 INFO    ] 200
[2026-10-25 08:31:28,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:28,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:31:28,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:28,430.430 INFO    ] No camera update needed
[2026-10-25 08:31:28,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:31:28,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:31:28,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:31:28,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:31:30,490.490 INFO    ] ================================================
[2026-10-25 08:31:30,505.505 INFO    ] Launching Daemon at Sun Oct 25 08:31:30 IST 2026
[2026-10-25 08:31:30,516.516 INFO    ] ================================================
[2026-10-25 08:31:31,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:31:31
[2026-10-25 08:31:31,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:31:32,009.009 INFO    ] Initializing speech engine...
[2026-10-25 08:31:32,017.017 INFO    ] 2026-10-25 08:31:32
[2026-10-25 08:31:32,293.293 INFO    ] 2026-10-25 08:31:32
[2026-10-25 08:31:32,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:31:32,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:31:32,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:31:32,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:31:32,831.831 INFO    ] time= 25/10/2026 08:31:32
[2026-10-25 08:31:32,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:31:32,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:31:32,895.895 INFO    ] No existing commands found in stream
[2026-10-25 08:31:37,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:31:37,910.910 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 08:31:40,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:31:40,662.662 INFO    ] Checking for system updates...
[2026-10-25 08:31:40,698.698 INFO    ] 200
[2026-10-25 08:31:40,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:40,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:40,761.761 INFO    ] No update needed
[2026-10-25 08:31:40,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 08:31:40,797.797 INFO    ] 200
[2026-10-25 08:31:40,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:40,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:31:40,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:31:40,893.893 INFO    ] No camera update needed
[2026-10-25 08:31:40,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:31:40,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:31:40,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:31:40,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:31:42,948.948 INFO    ] ================================================
[2026-10-25 08:31:42,963.963 INFO    ] Launching Daemon at Sun Oct 25 08:31:42 IST 2026
[2026-10-25 08:31:42,974.974 INFO    ] ================================================
[2026-10-25 08:31:43,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:31:43
[2026-10-25 08:31:44,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:31:44,412.412 INFO    ] Initializing speech engine...
[2026-10-25 08:31:44,437.437 INFO    ] 2026-10-25 08:31:44
[2026-10-25 08:31:44,710.710 INFO    ] 2026-10-25 08:31:44
[2026-10-25 08:31:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:31:44,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:31:44,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:31:45,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:31:45,127.127 INFO    ] time= 25/10/2026 08:31:45
[2026-10-25 08:31:45,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:31:45,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:31:45,278.278 INFO    ] No existing commands found in stream
[2026-10-25 08:31:50,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:31:50,316.316 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 08:31:50,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:31:50,784.784 INFO    ] Checking for system updates...
[2026-10-25 08:31:50,835.835 INFO    ] 200
[2026-10-25 08:31:50,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:50,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:31:50,902.902 INFO    ] No update needed
[2026-10-25 08:31:50,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 08:31:50,956.956 INFO    ] 200
[2026-10-25 08:31:50,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:31:51,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:31:51,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:31:51,060.060 INFO    ] No camera update needed
[2026-10-25 08:31:51,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:31:51,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:31:51,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:31:51,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:31:53,122.122 INFO    ] ================================================
[2026-10-25 08:31:53,137.137 INFO    ] Launching Daemon at Sun Oct 25 08:31:53 IST 2026
[2026-10-25 08:31:53,147.147 INFO    ] ================================================
[2026-10-25 08:31:53,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:31:53
[2026-10-25 08:31:54,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:31:54,584.584 INFO    ] Initializing speech engine...
[2026-10-25 08:31:54,593.593 INFO    ] 2026-10-25 08:31:54
[2026-10-25 08:31:54,886.886 INFO    ] 2026-10-25 08:31:54
[2026-10-25 08:31:54,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:31:55,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:31:55,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:31:57,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:31:57,670.670 INFO    ] time= 25/10/2026 08:31:57
[2026-10-25 08:31:57,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:31:57,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:31:57,791.791 INFO    ] No existing commands found in stream
[2026-10-25 08:32:02,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:32:02,807.807 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 08:32:05,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:32:05,439.439 INFO    ] Checking for system updates...
[2026-10-25 08:32:05,475.475 INFO    ] 200
[2026-10-25 08:32:05,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:05,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:05,534.534 INFO    ] No update needed
[2026-10-25 08:32:05,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 08:32:05,574.574 INFO    ] 200
[2026-10-25 08:32:05,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:05,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:32:05,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:05,667.667 INFO    ] No camera update needed
[2026-10-25 08:32:05,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:32:05,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:32:05,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:32:05,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:32:07,724.724 INFO    ] ================================================
[2026-10-25 08:32:07,740.740 INFO    ] Launching Daemon at Sun Oct 25 08:32:07 IST 2026
[2026-10-25 08:32:07,751.751 INFO    ] ================================================
[2026-10-25 08:32:08,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:32:08
[2026-10-25 08:32:08,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:32:09,192.192 INFO    ] Initializing speech engine...
[2026-10-25 08:32:09,207.207 INFO    ] 2026-10-25 08:32:09
[2026-10-25 08:32:09,494.494 INFO    ] 2026-10-25 08:32:09
[2026-10-25 08:32:09,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:32:09,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:32:09,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:32:09,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:32:09,886.886 INFO    ] time= 25/10/2026 08:32:09
[2026-10-25 08:32:09,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:32:09,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:32:09,992.992 INFO    ] No existing commands found in stream
[2026-10-25 08:32:15,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:32:15,008.008 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 08:32:16,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:32:16,714.714 INFO    ] Checking for system updates...
[2026-10-25 08:32:16,754.754 INFO    ] 200
[2026-10-25 08:32:16,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:16,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:32:16,812.812 INFO    ] No update needed
[2026-10-25 08:32:16,814.814 INFO    ] Checking for camera pi updates...
[2026-10-25 08:32:16,852.852 INFO    ] 200
[2026-10-25 08:32:16,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:16,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:32:17,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:32:17,049.049 INFO    ] No camera update needed
[2026-10-25 08:32:17,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:32:17,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:32:17,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:32:17,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:32:19,105.105 INFO    ] ================================================
[2026-10-25 08:32:19,121.121 INFO    ] Launching Daemon at Sun Oct 25 08:32:19 IST 2026
[2026-10-25 08:32:19,133.133 INFO    ] ================================================
[2026-10-25 08:32:19,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:32:19
[2026-10-25 08:32:20,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:32:20,607.607 INFO    ] Initializing speech engine...
[2026-10-25 08:32:20,616.616 INFO    ] 2026-10-25 08:32:20
[2026-10-25 08:32:20,915.915 INFO    ] 2026-10-25 08:32:20
[2026-10-25 08:32:21,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:32:21,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:32:21,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:32:21,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:32:21,311.311 INFO    ] time= 25/10/2026 08:32:21
[2026-10-25 08:32:21,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:32:21,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:32:21,435.435 INFO    ] No existing commands found in stream
[2026-10-25 08:32:26,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:32:26,451.451 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 08:32:28,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:32:28,783.783 INFO    ] Checking for system updates...
[2026-10-25 08:32:28,820.820 INFO    ] 200
[2026-10-25 08:32:28,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:28,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:32:28,877.877 INFO    ] No update needed
[2026-10-25 08:32:28,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 08:32:28,918.918 INFO    ] 200
[2026-10-25 08:32:28,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:28,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:32:29,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:32:29,018.018 INFO    ] No camera update needed
[2026-10-25 08:32:29,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:32:29,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:32:29,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:32:29,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:32:31,074.074 INFO    ] ================================================
[2026-10-25 08:32:31,090.090 INFO    ] Launching Daemon at Sun Oct 25 08:32:31 IST 2026
[2026-10-25 08:32:31,101.101 INFO    ] ================================================
[2026-10-25 08:32:31,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:32:31
[2026-10-25 08:32:32,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:32:32,589.589 INFO    ] Initializing speech engine...
[2026-10-25 08:32:32,599.599 INFO    ] 2026-10-25 08:32:32
[2026-10-25 08:32:32,869.869 INFO    ] 2026-10-25 08:32:32
[2026-10-25 08:32:32,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:32:33,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:32:33,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:32:33,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:32:33,341.341 INFO    ] time= 25/10/2026 08:32:33
[2026-10-25 08:32:33,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:32:33,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:32:33,569.569 INFO    ] No existing commands found in stream
[2026-10-25 08:32:38,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:32:38,599.599 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 08:32:40,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:32:40,021.021 INFO    ] Checking for system updates...
[2026-10-25 08:32:40,056.056 INFO    ] 200
[2026-10-25 08:32:40,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:40,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:40,115.115 INFO    ] No update needed
[2026-10-25 08:32:40,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 08:32:40,153.153 INFO    ] 200
[2026-10-25 08:32:40,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:40,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:32:40,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:40,251.251 INFO    ] No camera update needed
[2026-10-25 08:32:40,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:32:40,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:32:40,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:32:40,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:32:42,306.306 INFO    ] ================================================
[2026-10-25 08:32:42,322.322 INFO    ] Launching Daemon at Sun Oct 25 08:32:42 IST 2026
[2026-10-25 08:32:42,333.333 INFO    ] ================================================
[2026-10-25 08:32:42,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:32:42
[2026-10-25 08:32:43,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:32:43,900.900 INFO    ] Initializing speech engine...
[2026-10-25 08:32:43,909.909 INFO    ] 2026-10-25 08:32:43
[2026-10-25 08:32:44,159.159 INFO    ] 2026-10-25 08:32:44
[2026-10-25 08:32:44,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:32:44,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:32:44,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:32:44,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:32:44,535.535 INFO    ] time= 25/10/2026 08:32:44
[2026-10-25 08:32:44,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:32:44,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:32:44,690.690 INFO    ] No existing commands found in stream
[2026-10-25 08:32:49,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:32:49,718.718 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 08:32:53,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:32:53,472.472 INFO    ] Checking for system updates...
[2026-10-25 08:32:53,511.511 INFO    ] 200
[2026-10-25 08:32:53,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:53,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:53,582.582 INFO    ] No update needed
[2026-10-25 08:32:53,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 08:32:53,622.622 INFO    ] 200
[2026-10-25 08:32:53,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:32:53,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:32:53,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:32:53,723.723 INFO    ] No camera update needed
[2026-10-25 08:32:53,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:32:53,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:32:53,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:32:53,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:32:55,782.782 INFO    ] ================================================
[2026-10-25 08:32:55,797.797 INFO    ] Launching Daemon at Sun Oct 25 08:32:55 IST 2026
[2026-10-25 08:32:55,809.809 INFO    ] ================================================
[2026-10-25 08:32:56,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:32:56
[2026-10-25 08:32:57,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:32:57,415.415 INFO    ] Initializing speech engine...
[2026-10-25 08:32:57,428.428 INFO    ] 2026-10-25 08:32:57
[2026-10-25 08:32:57,709.709 INFO    ] 2026-10-25 08:32:57
[2026-10-25 08:32:57,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:32:58,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:32:58,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:32:58,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:32:58,928.928 INFO    ] time= 25/10/2026 08:32:58
[2026-10-25 08:32:58,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:32:58,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:32:59,039.039 INFO    ] No existing commands found in stream
[2026-10-25 08:33:04,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:33:04,068.068 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 08:33:08,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:33:08,051.051 INFO    ] Checking for system updates...
[2026-10-25 08:33:08,091.091 INFO    ] 200
[2026-10-25 08:33:08,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:08,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:08,158.158 INFO    ] No update needed
[2026-10-25 08:33:08,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 08:33:08,200.200 INFO    ] 200
[2026-10-25 08:33:08,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:08,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:33:08,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:08,302.302 INFO    ] No camera update needed
[2026-10-25 08:33:08,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:33:08,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:33:08,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:33:08,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:33:10,360.360 INFO    ] ================================================
[2026-10-25 08:33:10,375.375 INFO    ] Launching Daemon at Sun Oct 25 08:33:10 IST 2026
[2026-10-25 08:33:10,386.386 INFO    ] ================================================
[2026-10-25 08:33:11,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:33:11
[2026-10-25 08:33:11,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:33:12,001.001 INFO    ] Initializing speech engine...
[2026-10-25 08:33:12,015.015 INFO    ] 2026-10-25 08:33:12
[2026-10-25 08:33:12,325.325 INFO    ] 2026-10-25 08:33:12
[2026-10-25 08:33:12,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:33:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:33:12,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:33:12,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:33:12,845.845 INFO    ] time= 25/10/2026 08:33:12
[2026-10-25 08:33:12,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:33:12,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:33:12,973.973 INFO    ] No existing commands found in stream
[2026-10-25 08:33:17,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:33:18,003.003 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 08:33:21,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:33:21,129.129 INFO    ] Checking for system updates...
[2026-10-25 08:33:21,167.167 INFO    ] 200
[2026-10-25 08:33:21,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:21,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:21,225.225 INFO    ] No update needed
[2026-10-25 08:33:21,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 08:33:21,265.265 INFO    ] 200
[2026-10-25 08:33:21,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:21,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:33:21,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:21,372.372 INFO    ] No camera update needed
[2026-10-25 08:33:21,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:33:21,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:33:21,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:33:21,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:33:23,428.428 INFO    ] ================================================
[2026-10-25 08:33:23,444.444 INFO    ] Launching Daemon at Sun Oct 25 08:33:23 IST 2026
[2026-10-25 08:33:23,456.456 INFO    ] ================================================
[2026-10-25 08:33:24,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:33:24
[2026-10-25 08:33:24,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:33:24,894.894 INFO    ] Initializing speech engine...
[2026-10-25 08:33:24,903.903 INFO    ] 2026-10-25 08:33:24
[2026-10-25 08:33:25,194.194 INFO    ] 2026-10-25 08:33:25
[2026-10-25 08:33:25,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:33:25,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:33:25,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:33:25,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:33:25,590.590 INFO    ] time= 25/10/2026 08:33:25
[2026-10-25 08:33:25,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:33:25,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:33:25,706.706 INFO    ] No existing commands found in stream
[2026-10-25 08:33:30,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:33:30,721.721 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 08:33:33,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:33:33,907.907 INFO    ] Checking for system updates...
[2026-10-25 08:33:33,943.943 INFO    ] 200
[2026-10-25 08:33:33,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:34,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:34,009.009 INFO    ] No update needed
[2026-10-25 08:33:34,011.011 INFO    ] Checking for camera pi updates...
[2026-10-25 08:33:34,045.045 INFO    ] 200
[2026-10-25 08:33:34,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:34,088.088 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:33:34,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:33:34,139.139 INFO    ] No camera update needed
[2026-10-25 08:33:34,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:33:34,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:33:34,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:33:34,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:33:36,196.196 INFO    ] ================================================
[2026-10-25 08:33:36,212.212 INFO    ] Launching Daemon at Sun Oct 25 08:33:36 IST 2026
[2026-10-25 08:33:36,223.223 INFO    ] ================================================
[2026-10-25 08:33:36,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:33:36
[2026-10-25 08:33:37,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:33:37,817.817 INFO    ] Initializing speech engine...
[2026-10-25 08:33:37,839.839 INFO    ] 2026-10-25 08:33:37
[2026-10-25 08:33:38,114.114 INFO    ] 2026-10-25 08:33:38
[2026-10-25 08:33:38,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:33:38,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:33:38,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:33:38,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:33:38,463.463 INFO    ] time= 25/10/2026 08:33:38
[2026-10-25 08:33:38,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:33:38,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:33:38,541.541 INFO    ] No existing commands found in stream
[2026-10-25 08:33:43,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:33:43,555.555 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 08:33:47,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:33:47,812.812 INFO    ] Checking for system updates...
[2026-10-25 08:33:47,848.848 INFO    ] 200
[2026-10-25 08:33:47,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:47,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:33:47,918.918 INFO    ] No update needed
[2026-10-25 08:33:47,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 08:33:47,956.956 INFO    ] 200
[2026-10-25 08:33:47,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:33:48,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:33:48,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:33:48,057.057 INFO    ] No camera update needed
[2026-10-25 08:33:48,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:33:48,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:33:48,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:33:48,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:33:50,123.123 INFO    ] ================================================
[2026-10-25 08:33:50,139.139 INFO    ] Launching Daemon at Sun Oct 25 08:33:50 IST 2026
[2026-10-25 08:33:50,151.151 INFO    ] ================================================
[2026-10-25 08:33:50,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:33:50
[2026-10-25 08:33:51,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:33:51,581.581 INFO    ] Initializing speech engine...
[2026-10-25 08:33:51,593.593 INFO    ] 2026-10-25 08:33:51
[2026-10-25 08:33:51,839.839 INFO    ] 2026-10-25 08:33:51
[2026-10-25 08:33:51,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:33:52,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:33:52,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:33:52,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:33:52,385.385 INFO    ] time= 25/10/2026 08:33:52
[2026-10-25 08:33:52,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:33:52,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:33:52,519.519 INFO    ] No existing commands found in stream
[2026-10-25 08:33:57,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:33:57,553.553 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 08:34:00,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:34:00,720.720 INFO    ] Checking for system updates...
[2026-10-25 08:34:00,759.759 INFO    ] 200
[2026-10-25 08:34:00,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:00,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:00,821.821 INFO    ] No update needed
[2026-10-25 08:34:00,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 08:34:00,867.867 INFO    ] 200
[2026-10-25 08:34:00,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:00,915.915 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:34:00,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:00,964.964 INFO    ] No camera update needed
[2026-10-25 08:34:00,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:34:00,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:34:00,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:34:00,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:34:03,031.031 INFO    ] ================================================
[2026-10-25 08:34:03,052.052 INFO    ] Launching Daemon at Sun Oct 25 08:34:03 IST 2026
[2026-10-25 08:34:03,064.064 INFO    ] ================================================
[2026-10-25 08:34:03,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:34:03
[2026-10-25 08:34:04,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:34:04,550.550 INFO    ] Initializing speech engine...
[2026-10-25 08:34:04,566.566 INFO    ] 2026-10-25 08:34:04
[2026-10-25 08:34:04,825.825 INFO    ] 2026-10-25 08:34:04
[2026-10-25 08:34:04,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:34:05,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:34:05,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:34:05,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:34:05,193.193 INFO    ] time= 25/10/2026 08:34:05
[2026-10-25 08:34:05,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:34:05,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:34:05,354.354 INFO    ] No existing commands found in stream
[2026-10-25 08:34:10,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:34:10,387.387 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 08:34:13,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:34:13,402.402 INFO    ] Checking for system updates...
[2026-10-25 08:34:13,439.439 INFO    ] 200
[2026-10-25 08:34:13,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:13,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:13,505.505 INFO    ] No update needed
[2026-10-25 08:34:13,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 08:34:13,541.541 INFO    ] 200
[2026-10-25 08:34:13,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:13,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:34:13,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:13,633.633 INFO    ] No camera update needed
[2026-10-25 08:34:13,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:34:13,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:34:13,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:34:13,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:34:15,691.691 INFO    ] ================================================
[2026-10-25 08:34:15,707.707 INFO    ] Launching Daemon at Sun Oct 25 08:34:15 IST 2026
[2026-10-25 08:34:15,718.718 INFO    ] ================================================
[2026-10-25 08:34:16,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:34:16
[2026-10-25 08:34:16,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:34:17,131.131 INFO    ] Initializing speech engine...
[2026-10-25 08:34:17,144.144 INFO    ] 2026-10-25 08:34:17
[2026-10-25 08:34:17,409.409 INFO    ] 2026-10-25 08:34:17
[2026-10-25 08:34:17,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:34:17,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:34:17,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:34:17,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:34:17,883.883 INFO    ] time= 25/10/2026 08:34:17
[2026-10-25 08:34:17,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:34:17,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:34:18,036.036 INFO    ] No existing commands found in stream
[2026-10-25 08:34:23,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:34:23,055.055 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 08:34:23,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:34:23,798.798 INFO    ] Checking for system updates...
[2026-10-25 08:34:23,841.841 INFO    ] 200
[2026-10-25 08:34:23,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:23,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:34:23,915.915 INFO    ] No update needed
[2026-10-25 08:34:23,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 08:34:23,962.962 INFO    ] 200
[2026-10-25 08:34:23,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:24,020.020 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:34:24,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:34:24,177.177 INFO    ] No camera update needed
[2026-10-25 08:34:24,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:34:24,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:34:24,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:34:24,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:34:26,232.232 INFO    ] ================================================
[2026-10-25 08:34:26,248.248 INFO    ] Launching Daemon at Sun Oct 25 08:34:26 IST 2026
[2026-10-25 08:34:26,259.259 INFO    ] ================================================
[2026-10-25 08:34:26,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:34:26
[2026-10-25 08:34:27,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:34:27,712.712 INFO    ] Initializing speech engine...
[2026-10-25 08:34:27,723.723 INFO    ] 2026-10-25 08:34:27
[2026-10-25 08:34:27,974.974 INFO    ] 2026-10-25 08:34:27
[2026-10-25 08:34:28,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:34:30,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:34:30,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:34:30,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:34:30,998.998 INFO    ] time= 25/10/2026 08:34:30
[2026-10-25 08:34:31,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:34:31,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:34:31,051.051 INFO    ] No existing commands found in stream
[2026-10-25 08:34:36,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:34:36,064.064 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 08:34:37,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:34:37,396.396 INFO    ] Checking for system updates...
[2026-10-25 08:34:37,432.432 INFO    ] 200
[2026-10-25 08:34:37,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:37,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:37,497.497 INFO    ] No update needed
[2026-10-25 08:34:37,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 08:34:37,533.533 INFO    ] 200
[2026-10-25 08:34:37,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:37,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:34:37,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:34:37,742.742 INFO    ] No camera update needed
[2026-10-25 08:34:37,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:34:37,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:34:37,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:34:37,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:34:39,797.797 INFO    ] ================================================
[2026-10-25 08:34:39,813.813 INFO    ] Launching Daemon at Sun Oct 25 08:34:39 IST 2026
[2026-10-25 08:34:39,824.824 INFO    ] ================================================
[2026-10-25 08:34:40,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:34:40
[2026-10-25 08:34:41,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:34:41,266.266 INFO    ] Initializing speech engine...
[2026-10-25 08:34:41,275.275 INFO    ] 2026-10-25 08:34:41
[2026-10-25 08:34:41,571.571 INFO    ] 2026-10-25 08:34:41
[2026-10-25 08:34:41,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:34:41,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:34:41,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:34:41,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:34:41,966.966 INFO    ] time= 25/10/2026 08:34:41
[2026-10-25 08:34:41,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:34:42,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:34:42,082.082 INFO    ] No existing commands found in stream
[2026-10-25 08:34:47,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:34:47,096.096 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 08:34:50,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:34:50,980.980 INFO    ] Checking for system updates...
[2026-10-25 08:34:51,017.017 INFO    ] 200
[2026-10-25 08:34:51,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:51,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:34:51,074.074 INFO    ] No update needed
[2026-10-25 08:34:51,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 08:34:51,114.114 INFO    ] 200
[2026-10-25 08:34:51,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:34:51,158.158 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:34:51,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:34:51,206.206 INFO    ] No camera update needed
[2026-10-25 08:34:51,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:34:51,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:34:51,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:34:51,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:34:53,263.263 INFO    ] ================================================
[2026-10-25 08:34:53,278.278 INFO    ] Launching Daemon at Sun Oct 25 08:34:53 IST 2026
[2026-10-25 08:34:53,290.290 INFO    ] ================================================
[2026-10-25 08:34:53,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:34:53
[2026-10-25 08:34:54,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:34:54,735.735 INFO    ] Initializing speech engine...
[2026-10-25 08:34:54,744.744 INFO    ] 2026-10-25 08:34:54
[2026-10-25 08:34:55,008.008 INFO    ] 2026-10-25 08:34:55
[2026-10-25 08:34:55,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:34:55,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:34:55,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:34:55,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:34:55,496.496 INFO    ] time= 25/10/2026 08:34:55
[2026-10-25 08:34:55,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:34:55,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:34:55,681.681 INFO    ] No existing commands found in stream
[2026-10-25 08:35:00,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:35:00,709.709 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 08:35:04,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:35:04,888.888 INFO    ] Checking for system updates...
[2026-10-25 08:35:04,924.924 INFO    ] 200
[2026-10-25 08:35:04,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:04,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:04,984.984 INFO    ] No update needed
[2026-10-25 08:35:04,986.986 INFO    ] Checking for camera pi updates...
[2026-10-25 08:35:05,020.020 INFO    ] 200
[2026-10-25 08:35:05,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:05,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:35:05,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:05,125.125 INFO    ] No camera update needed
[2026-10-25 08:35:05,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:35:05,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:35:05,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:35:05,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:35:07,184.184 INFO    ] ================================================
[2026-10-25 08:35:07,200.200 INFO    ] Launching Daemon at Sun Oct 25 08:35:07 IST 2026
[2026-10-25 08:35:07,211.211 INFO    ] ================================================
[2026-10-25 08:35:07,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:35:07
[2026-10-25 08:35:08,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:35:08,641.641 INFO    ] Initializing speech engine...
[2026-10-25 08:35:08,661.661 INFO    ] 2026-10-25 08:35:08
[2026-10-25 08:35:08,938.938 INFO    ] 2026-10-25 08:35:08
[2026-10-25 08:35:08,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:35:09,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:35:09,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:35:09,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:35:09,348.348 INFO    ] time= 25/10/2026 08:35:09
[2026-10-25 08:35:09,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:35:09,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:35:09,435.435 INFO    ] No existing commands found in stream
[2026-10-25 08:35:14,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:35:14,452.452 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 08:35:18,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:35:18,898.898 INFO    ] Checking for system updates...
[2026-10-25 08:35:18,939.939 INFO    ] 200
[2026-10-25 08:35:18,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:18,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:18,998.998 INFO    ] No update needed
[2026-10-25 08:35:19,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 08:35:19,034.034 INFO    ] 200
[2026-10-25 08:35:19,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:19,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:35:19,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:19,126.126 INFO    ] No camera update needed
[2026-10-25 08:35:19,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:35:19,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:35:19,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:35:19,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:35:21,181.181 INFO    ] ================================================
[2026-10-25 08:35:21,197.197 INFO    ] Launching Daemon at Sun Oct 25 08:35:21 IST 2026
[2026-10-25 08:35:21,208.208 INFO    ] ================================================
[2026-10-25 08:35:21,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:35:21
[2026-10-25 08:35:22,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:35:22,662.662 INFO    ] Initializing speech engine...
[2026-10-25 08:35:22,672.672 INFO    ] 2026-10-25 08:35:22
[2026-10-25 08:35:22,920.920 INFO    ] 2026-10-25 08:35:22
[2026-10-25 08:35:22,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:35:23,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:35:23,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:35:23,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:35:23,422.422 INFO    ] time= 25/10/2026 08:35:23
[2026-10-25 08:35:23,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:35:23,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:35:23,620.620 INFO    ] No existing commands found in stream
[2026-10-25 08:35:28,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:35:28,644.644 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 08:35:32,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:35:32,054.054 INFO    ] Checking for system updates...
[2026-10-25 08:35:32,094.094 INFO    ] 200
[2026-10-25 08:35:32,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:32,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:35:32,160.160 INFO    ] No update needed
[2026-10-25 08:35:32,163.163 INFO    ] Checking for camera pi updates...
[2026-10-25 08:35:32,204.204 INFO    ] 200
[2026-10-25 08:35:32,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:32,255.255 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:35:32,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:35:32,290.290 INFO    ] No camera update needed
[2026-10-25 08:35:32,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:35:32,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:35:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:35:32,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:35:34,351.351 INFO    ] ================================================
[2026-10-25 08:35:34,366.366 INFO    ] Launching Daemon at Sun Oct 25 08:35:34 IST 2026
[2026-10-25 08:35:34,378.378 INFO    ] ================================================
[2026-10-25 08:35:34,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:35:34
[2026-10-25 08:35:35,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:35:35,830.830 INFO    ] Initializing speech engine...
[2026-10-25 08:35:35,848.848 INFO    ] 2026-10-25 08:35:35
[2026-10-25 08:35:36,101.101 INFO    ] 2026-10-25 08:35:36
[2026-10-25 08:35:36,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:35:36,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:35:36,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:35:36,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:35:36,491.491 INFO    ] time= 25/10/2026 08:35:36
[2026-10-25 08:35:36,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:35:36,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:35:36,668.668 INFO    ] No existing commands found in stream
[2026-10-25 08:35:41,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:35:41,700.700 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 08:35:42,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:35:42,756.756 INFO    ] Checking for system updates...
[2026-10-25 08:35:42,792.792 INFO    ] 200
[2026-10-25 08:35:42,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:42,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:42,849.849 INFO    ] No update needed
[2026-10-25 08:35:42,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 08:35:42,889.889 INFO    ] 200
[2026-10-25 08:35:42,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:42,937.937 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:35:42,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:42,987.987 INFO    ] No camera update needed
[2026-10-25 08:35:42,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:35:42,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:35:42,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:35:43,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:35:45,043.043 INFO    ] ================================================
[2026-10-25 08:35:45,058.058 INFO    ] Launching Daemon at Sun Oct 25 08:35:45 IST 2026
[2026-10-25 08:35:45,069.069 INFO    ] ================================================
[2026-10-25 08:35:45,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:35:45
[2026-10-25 08:35:46,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:35:46,635.635 INFO    ] Initializing speech engine...
[2026-10-25 08:35:46,647.647 INFO    ] 2026-10-25 08:35:46
[2026-10-25 08:35:46,929.929 INFO    ] 2026-10-25 08:35:46
[2026-10-25 08:35:46,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:35:47,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:35:47,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:35:47,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:35:47,463.463 INFO    ] time= 25/10/2026 08:35:47
[2026-10-25 08:35:47,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:35:47,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:35:47,618.618 INFO    ] No existing commands found in stream
[2026-10-25 08:35:52,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:35:52,640.640 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 08:35:54,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:35:54,924.924 INFO    ] Checking for system updates...
[2026-10-25 08:35:54,962.962 INFO    ] 200
[2026-10-25 08:35:54,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:55,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:55,020.020 INFO    ] No update needed
[2026-10-25 08:35:55,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 08:35:55,056.056 INFO    ] 200
[2026-10-25 08:35:55,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:35:55,106.106 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:35:55,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:35:55,156.156 INFO    ] No camera update needed
[2026-10-25 08:35:55,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:35:55,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:35:55,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:35:55,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:35:57,211.211 INFO    ] ================================================
[2026-10-25 08:35:57,227.227 INFO    ] Launching Daemon at Sun Oct 25 08:35:57 IST 2026
[2026-10-25 08:35:57,238.238 INFO    ] ================================================
[2026-10-25 08:35:57,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:35:57
[2026-10-25 08:35:58,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:35:58,675.675 INFO    ] Initializing speech engine...
[2026-10-25 08:35:58,688.688 INFO    ] 2026-10-25 08:35:58
[2026-10-25 08:35:58,953.953 INFO    ] 2026-10-25 08:35:58
[2026-10-25 08:35:58,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:01,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:01,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:01,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:01,863.863 INFO    ] time= 25/10/2026 08:36:01
[2026-10-25 08:36:01,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:01,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:01,917.917 INFO    ] No existing commands found in stream
[2026-10-25 08:36:06,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:36:06,929.929 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 08:36:07,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:36:07,778.778 INFO    ] Checking for system updates...
[2026-10-25 08:36:07,814.814 INFO    ] 200
[2026-10-25 08:36:07,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:07,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:07,876.876 INFO    ] No update needed
[2026-10-25 08:36:07,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 08:36:07,914.914 INFO    ] 200
[2026-10-25 08:36:07,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:07,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:36:08,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:08,014.014 INFO    ] No camera update needed
[2026-10-25 08:36:08,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:36:08,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:36:08,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:36:08,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:36:10,069.069 INFO    ] ================================================
[2026-10-25 08:36:10,085.085 INFO    ] Launching Daemon at Sun Oct 25 08:36:10 IST 2026
[2026-10-25 08:36:10,096.096 INFO    ] ================================================
[2026-10-25 08:36:10,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:36:10
[2026-10-25 08:36:11,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:36:11,490.490 INFO    ] Initializing speech engine...
[2026-10-25 08:36:11,503.503 INFO    ] 2026-10-25 08:36:11
[2026-10-25 08:36:11,767.767 INFO    ] 2026-10-25 08:36:11
[2026-10-25 08:36:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:12,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:12,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:12,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:12,253.253 INFO    ] time= 25/10/2026 08:36:12
[2026-10-25 08:36:12,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:12,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:12,395.395 INFO    ] No existing commands found in stream
[2026-10-25 08:36:17,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:36:17,409.409 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 08:36:21,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:36:21,462.462 INFO    ] Checking for system updates...
[2026-10-25 08:36:21,497.497 INFO    ] 200
[2026-10-25 08:36:21,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:21,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:21,561.561 INFO    ] No update needed
[2026-10-25 08:36:21,564.564 INFO    ] Checking for camera pi updates...
[2026-10-25 08:36:21,600.600 INFO    ] 200
[2026-10-25 08:36:21,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:21,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:36:21,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:21,695.695 INFO    ] No camera update needed
[2026-10-25 08:36:21,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:36:21,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:36:21,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:36:21,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:36:23,750.750 INFO    ] ================================================
[2026-10-25 08:36:23,766.766 INFO    ] Launching Daemon at Sun Oct 25 08:36:23 IST 2026
[2026-10-25 08:36:23,777.777 INFO    ] ================================================
[2026-10-25 08:36:24,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:36:24
[2026-10-25 08:36:24,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:36:25,192.192 INFO    ] Initializing speech engine...
[2026-10-25 08:36:25,207.207 INFO    ] 2026-10-25 08:36:25
[2026-10-25 08:36:25,495.495 INFO    ] 2026-10-25 08:36:25
[2026-10-25 08:36:25,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:25,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:25,919.919 INFO    ] time= 25/10/2026 08:36:25
[2026-10-25 08:36:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:25,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:26,022.022 INFO    ] No existing commands found in stream
[2026-10-25 08:36:31,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:36:31,060.060 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 08:36:32,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:36:32,655.655 INFO    ] Checking for system updates...
[2026-10-25 08:36:32,694.694 INFO    ] 200
[2026-10-25 08:36:32,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:32,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:36:32,759.759 INFO    ] No update needed
[2026-10-25 08:36:32,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 08:36:32,802.802 INFO    ] 200
[2026-10-25 08:36:32,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:32,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:36:32,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:36:32,906.906 INFO    ] No camera update needed
[2026-10-25 08:36:32,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:36:32,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:36:32,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:36:32,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:36:34,963.963 INFO    ] ================================================
[2026-10-25 08:36:34,979.979 INFO    ] Launching Daemon at Sun Oct 25 08:36:34 IST 2026
[2026-10-25 08:36:34,990.990 INFO    ] ================================================
[2026-10-25 08:36:35,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:36:35
[2026-10-25 08:36:36,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:36:36,449.449 INFO    ] Initializing speech engine...
[2026-10-25 08:36:36,457.457 INFO    ] 2026-10-25 08:36:36
[2026-10-25 08:36:36,764.764 INFO    ] 2026-10-25 08:36:36
[2026-10-25 08:36:36,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:36,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:37,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:37,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:37,163.163 INFO    ] time= 25/10/2026 08:36:37
[2026-10-25 08:36:37,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:37,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:37,337.337 INFO    ] No existing commands found in stream
[2026-10-25 08:36:42,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:36:42,353.353 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 08:36:43,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:36:43,108.108 INFO    ] Checking for system updates...
[2026-10-25 08:36:43,148.148 INFO    ] 200
[2026-10-25 08:36:43,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:43,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:43,219.219 INFO    ] No update needed
[2026-10-25 08:36:43,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 08:36:43,260.260 INFO    ] 200
[2026-10-25 08:36:43,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:43,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:36:43,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:43,358.358 INFO    ] No camera update needed
[2026-10-25 08:36:43,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:36:43,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:36:43,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:36:43,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:36:45,416.416 INFO    ] ================================================
[2026-10-25 08:36:45,431.431 INFO    ] Launching Daemon at Sun Oct 25 08:36:45 IST 2026
[2026-10-25 08:36:45,443.443 INFO    ] ================================================
[2026-10-25 08:36:46,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:36:46
[2026-10-25 08:36:46,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:36:46,870.870 INFO    ] Initializing speech engine...
[2026-10-25 08:36:46,881.881 INFO    ] 2026-10-25 08:36:46
[2026-10-25 08:36:47,127.127 INFO    ] 2026-10-25 08:36:47
[2026-10-25 08:36:47,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:47,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:47,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:47,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:47,601.601 INFO    ] time= 25/10/2026 08:36:47
[2026-10-25 08:36:47,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:47,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:47,814.814 INFO    ] No existing commands found in stream
[2026-10-25 08:36:52,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:36:52,842.842 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 08:36:53,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:36:53,986.986 INFO    ] Checking for system updates...
[2026-10-25 08:36:54,025.025 INFO    ] 200
[2026-10-25 08:36:54,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:54,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:54,089.089 INFO    ] No update needed
[2026-10-25 08:36:54,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 08:36:54,126.126 INFO    ] 200
[2026-10-25 08:36:54,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:36:54,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:36:54,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:36:54,216.216 INFO    ] No camera update needed
[2026-10-25 08:36:54,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:36:54,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:36:54,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:36:54,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:36:56,274.274 INFO    ] ================================================
[2026-10-25 08:36:56,294.294 INFO    ] Launching Daemon at Sun Oct 25 08:36:56 IST 2026
[2026-10-25 08:36:56,315.315 INFO    ] ================================================
[2026-10-25 08:36:56,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:36:56
[2026-10-25 08:36:57,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:36:57,741.741 INFO    ] Initializing speech engine...
[2026-10-25 08:36:57,759.759 INFO    ] 2026-10-25 08:36:57
[2026-10-25 08:36:58,008.008 INFO    ] 2026-10-25 08:36:58
[2026-10-25 08:36:58,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:36:58,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:36:58,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:36:58,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:36:58,382.382 INFO    ] time= 25/10/2026 08:36:58
[2026-10-25 08:36:58,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:36:58,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:36:58,460.460 INFO    ] No existing commands found in stream
[2026-10-25 08:37:03,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:37:03,477.477 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 08:37:04,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:37:04,048.048 INFO    ] Checking for system updates...
[2026-10-25 08:37:04,084.084 INFO    ] 200
[2026-10-25 08:37:04,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:04,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:37:04,149.149 INFO    ] No update needed
[2026-10-25 08:37:04,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 08:37:04,185.185 INFO    ] 200
[2026-10-25 08:37:04,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:04,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:37:04,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:37:04,283.283 INFO    ] No camera update needed
[2026-10-25 08:37:04,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:37:04,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:37:04,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:37:04,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:37:06,338.338 INFO    ] ================================================
[2026-10-25 08:37:06,353.353 INFO    ] Launching Daemon at Sun Oct 25 08:37:06 IST 2026
[2026-10-25 08:37:06,364.364 INFO    ] ================================================
[2026-10-25 08:37:07,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:37:07
[2026-10-25 08:37:07,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:37:08,010.010 INFO    ] Initializing speech engine...
[2026-10-25 08:37:08,024.024 INFO    ] 2026-10-25 08:37:08
[2026-10-25 08:37:08,337.337 INFO    ] 2026-10-25 08:37:08
[2026-10-25 08:37:08,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:37:08,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:37:08,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:37:08,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:37:08,843.843 INFO    ] time= 25/10/2026 08:37:08
[2026-10-25 08:37:08,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:37:08,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:37:08,996.996 INFO    ] No existing commands found in stream
[2026-10-25 08:37:14,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:37:14,021.021 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 08:37:17,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:37:17,953.953 INFO    ] Checking for system updates...
[2026-10-25 08:37:17,998.998 INFO    ] 200
[2026-10-25 08:37:18,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:18,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:18,066.066 INFO    ] No update needed
[2026-10-25 08:37:18,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 08:37:18,103.103 INFO    ] 200
[2026-10-25 08:37:18,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:18,146.146 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:37:18,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:18,176.176 INFO    ] No camera update needed
[2026-10-25 08:37:18,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:37:18,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:37:18,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:37:18,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:37:20,231.231 INFO    ] ================================================
[2026-10-25 08:37:20,246.246 INFO    ] Launching Daemon at Sun Oct 25 08:37:20 IST 2026
[2026-10-25 08:37:20,256.256 INFO    ] ================================================
[2026-10-25 08:37:20,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:37:20
[2026-10-25 08:37:21,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:37:21,667.667 INFO    ] Initializing speech engine...
[2026-10-25 08:37:21,686.686 INFO    ] 2026-10-25 08:37:21
[2026-10-25 08:37:21,936.936 INFO    ] 2026-10-25 08:37:21
[2026-10-25 08:37:21,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:37:22,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:37:22,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:37:22,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:37:22,311.311 INFO    ] time= 25/10/2026 08:37:22
[2026-10-25 08:37:22,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:37:22,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:37:22,486.486 INFO    ] No existing commands found in stream
[2026-10-25 08:37:27,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:37:27,519.519 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 08:37:32,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:37:32,976.976 INFO    ] Checking for system updates...
[2026-10-25 08:37:33,021.021 INFO    ] 200
[2026-10-25 08:37:33,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:33,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:37:33,093.093 INFO    ] No update needed
[2026-10-25 08:37:33,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 08:37:33,132.132 INFO    ] 200
[2026-10-25 08:37:33,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:33,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:37:33,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:37:33,250.250 INFO    ] No camera update needed
[2026-10-25 08:37:33,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:37:33,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:37:33,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:37:33,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:37:35,311.311 INFO    ] ================================================
[2026-10-25 08:37:35,326.326 INFO    ] Launching Daemon at Sun Oct 25 08:37:35 IST 2026
[2026-10-25 08:37:35,336.336 INFO    ] ================================================
[2026-10-25 08:37:35,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:37:35
[2026-10-25 08:37:36,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:37:36,811.811 INFO    ] Initializing speech engine...
[2026-10-25 08:37:36,827.827 INFO    ] 2026-10-25 08:37:36
[2026-10-25 08:37:37,105.105 INFO    ] 2026-10-25 08:37:37
[2026-10-25 08:37:37,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:37:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:37:37,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:37:37,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:37:37,489.489 INFO    ] time= 25/10/2026 08:37:37
[2026-10-25 08:37:37,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:37:37,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:37:37,669.669 INFO    ] No existing commands found in stream
[2026-10-25 08:37:42,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:37:42,698.698 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 08:37:43,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:37:43,213.213 INFO    ] Checking for system updates...
[2026-10-25 08:37:43,252.252 INFO    ] 200
[2026-10-25 08:37:43,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:43,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:43,318.318 INFO    ] No update needed
[2026-10-25 08:37:43,320.320 INFO    ] Checking for camera pi updates...
[2026-10-25 08:37:43,354.354 INFO    ] 200
[2026-10-25 08:37:43,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:43,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:37:43,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:43,455.455 INFO    ] No camera update needed
[2026-10-25 08:37:43,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:37:43,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:37:43,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:37:43,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:37:45,510.510 INFO    ] ================================================
[2026-10-25 08:37:45,525.525 INFO    ] Launching Daemon at Sun Oct 25 08:37:45 IST 2026
[2026-10-25 08:37:45,536.536 INFO    ] ================================================
[2026-10-25 08:37:46,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:37:46
[2026-10-25 08:37:46,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:37:46,991.991 INFO    ] Initializing speech engine...
[2026-10-25 08:37:47,011.011 INFO    ] 2026-10-25 08:37:47
[2026-10-25 08:37:47,286.286 INFO    ] 2026-10-25 08:37:47
[2026-10-25 08:37:47,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:37:47,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:37:47,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:37:47,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:37:47,707.707 INFO    ] time= 25/10/2026 08:37:47
[2026-10-25 08:37:47,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:37:47,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:37:47,798.798 INFO    ] No existing commands found in stream
[2026-10-25 08:37:52,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:37:52,814.814 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 08:37:55,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:37:55,801.801 INFO    ] Checking for system updates...
[2026-10-25 08:37:55,838.838 INFO    ] 200
[2026-10-25 08:37:55,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:55,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:55,906.906 INFO    ] No update needed
[2026-10-25 08:37:55,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 08:37:55,948.948 INFO    ] 200
[2026-10-25 08:37:55,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:37:55,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:37:56,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:37:56,053.053 INFO    ] No camera update needed
[2026-10-25 08:37:56,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:37:56,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:37:56,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:37:56,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:37:58,111.111 INFO    ] ================================================
[2026-10-25 08:37:58,126.126 INFO    ] Launching Daemon at Sun Oct 25 08:37:58 IST 2026
[2026-10-25 08:37:58,137.137 INFO    ] ================================================
[2026-10-25 08:37:58,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:37:58
[2026-10-25 08:37:59,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:37:59,573.573 INFO    ] Initializing speech engine...
[2026-10-25 08:37:59,595.595 INFO    ] 2026-10-25 08:37:59
[2026-10-25 08:37:59,857.857 INFO    ] 2026-10-25 08:37:59
[2026-10-25 08:37:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:38:02,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:38:02,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:38:02,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:38:02,841.841 INFO    ] time= 25/10/2026 08:38:02
[2026-10-25 08:38:02,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:38:02,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:38:02,995.995 INFO    ] No existing commands found in stream
[2026-10-25 08:38:08,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:38:08,014.014 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 08:38:09,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:38:09,135.135 INFO    ] Checking for system updates...
[2026-10-25 08:38:09,177.177 INFO    ] 200
[2026-10-25 08:38:09,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:09,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:38:09,247.247 INFO    ] No update needed
[2026-10-25 08:38:09,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 08:38:09,291.291 INFO    ] 200
[2026-10-25 08:38:09,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:09,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:38:09,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:38:09,402.402 INFO    ] No camera update needed
[2026-10-25 08:38:09,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:38:09,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:38:09,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:38:09,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:38:11,462.462 INFO    ] ================================================
[2026-10-25 08:38:11,477.477 INFO    ] Launching Daemon at Sun Oct 25 08:38:11 IST 2026
[2026-10-25 08:38:11,487.487 INFO    ] ================================================
[2026-10-25 08:38:12,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:38:12
[2026-10-25 08:38:12,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:38:12,948.948 INFO    ] Initializing speech engine...
[2026-10-25 08:38:12,957.957 INFO    ] 2026-10-25 08:38:12
[2026-10-25 08:38:13,208.208 INFO    ] 2026-10-25 08:38:13
[2026-10-25 08:38:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:38:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:38:13,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:38:13,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:38:13,678.678 INFO    ] time= 25/10/2026 08:38:13
[2026-10-25 08:38:13,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:38:13,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:38:13,839.839 INFO    ] No existing commands found in stream
[2026-10-25 08:38:18,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:38:18,879.879 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 08:38:21,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:38:21,740.740 INFO    ] Checking for system updates...
[2026-10-25 08:38:21,780.780 INFO    ] 200
[2026-10-25 08:38:21,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:21,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:38:21,838.838 INFO    ] No update needed
[2026-10-25 08:38:21,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 08:38:21,881.881 INFO    ] 200
[2026-10-25 08:38:21,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:21,931.931 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:38:21,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:38:21,987.987 INFO    ] No camera update needed
[2026-10-25 08:38:21,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:38:21,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:38:21,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:38:22,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:38:24,045.045 INFO    ] ================================================
[2026-10-25 08:38:24,061.061 INFO    ] Launching Daemon at Sun Oct 25 08:38:24 IST 2026
[2026-10-25 08:38:24,071.071 INFO    ] ================================================
[2026-10-25 08:38:24,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:38:24
[2026-10-25 08:38:25,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:38:25,705.705 INFO    ] Initializing speech engine...
[2026-10-25 08:38:25,717.717 INFO    ] 2026-10-25 08:38:25
[2026-10-25 08:38:25,988.988 INFO    ] 2026-10-25 08:38:25
[2026-10-25 08:38:26,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:38:26,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:38:26,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:38:26,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:38:26,341.341 INFO    ] time= 25/10/2026 08:38:26
[2026-10-25 08:38:26,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:38:26,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:38:26,456.456 INFO    ] No existing commands found in stream
[2026-10-25 08:38:31,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:38:31,472.472 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 08:38:34,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:38:34,115.115 INFO    ] Checking for system updates...
[2026-10-25 08:38:34,152.152 INFO    ] 200
[2026-10-25 08:38:34,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:34,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:38:34,209.209 INFO    ] No update needed
[2026-10-25 08:38:34,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 08:38:34,245.245 INFO    ] 200
[2026-10-25 08:38:34,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:34,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:38:34,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:38:34,454.454 INFO    ] No camera update needed
[2026-10-25 08:38:34,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:38:34,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:38:34,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:38:34,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:38:36,512.512 INFO    ] ================================================
[2026-10-25 08:38:36,527.527 INFO    ] Launching Daemon at Sun Oct 25 08:38:36 IST 2026
[2026-10-25 08:38:36,538.538 INFO    ] ================================================
[2026-10-25 08:38:37,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:38:37
[2026-10-25 08:38:37,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:38:38,200.200 INFO    ] Initializing speech engine...
[2026-10-25 08:38:38,214.214 INFO    ] 2026-10-25 08:38:38
[2026-10-25 08:38:38,493.493 INFO    ] 2026-10-25 08:38:38
[2026-10-25 08:38:38,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:38:38,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:38:38,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:38:38,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:38:38,972.972 INFO    ] time= 25/10/2026 08:38:38
[2026-10-25 08:38:39,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:38:39,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:38:39,154.154 INFO    ] No existing commands found in stream
[2026-10-25 08:38:44,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:38:44,183.183 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 08:38:47,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:38:47,965.965 INFO    ] Checking for system updates...
[2026-10-25 08:38:48,002.002 INFO    ] 200
[2026-10-25 08:38:48,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:48,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:38:48,062.062 INFO    ] No update needed
[2026-10-25 08:38:48,065.065 INFO    ] Checking for camera pi updates...
[2026-10-25 08:38:48,100.100 INFO    ] 200
[2026-10-25 08:38:48,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:38:48,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:38:48,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:38:48,197.197 INFO    ] No camera update needed
[2026-10-25 08:38:48,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:38:48,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:38:48,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:38:48,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:38:50,254.254 INFO    ] ================================================
[2026-10-25 08:38:50,269.269 INFO    ] Launching Daemon at Sun Oct 25 08:38:50 IST 2026
[2026-10-25 08:38:50,280.280 INFO    ] ================================================
[2026-10-25 08:38:50,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:38:50
[2026-10-25 08:38:51,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:38:51,691.691 INFO    ] Initializing speech engine...
[2026-10-25 08:38:51,699.699 INFO    ] 2026-10-25 08:38:51
[2026-10-25 08:38:52,003.003 INFO    ] 2026-10-25 08:38:51
[2026-10-25 08:38:52,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:38:52,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:38:52,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:38:52,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:38:52,383.383 INFO    ] time= 25/10/2026 08:38:52
[2026-10-25 08:38:52,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:38:52,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:38:52,507.507 INFO    ] No existing commands found in stream
[2026-10-25 08:38:57,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:38:57,528.528 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 08:39:03,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:39:03,827.827 INFO    ] Checking for system updates...
[2026-10-25 08:39:03,886.886 INFO    ] 200
[2026-10-25 08:39:03,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:03,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:03,968.968 INFO    ] No update needed
[2026-10-25 08:39:03,970.970 INFO    ] Checking for camera pi updates...
[2026-10-25 08:39:04,026.026 INFO    ] 200
[2026-10-25 08:39:04,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:04,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:39:04,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:04,119.119 INFO    ] No camera update needed
[2026-10-25 08:39:04,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:39:04,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:39:04,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:39:04,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:39:06,174.174 INFO    ] ================================================
[2026-10-25 08:39:06,189.189 INFO    ] Launching Daemon at Sun Oct 25 08:39:06 IST 2026
[2026-10-25 08:39:06,200.200 INFO    ] ================================================
[2026-10-25 08:39:06,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:39:06
[2026-10-25 08:39:07,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:39:07,614.614 INFO    ] Initializing speech engine...
[2026-10-25 08:39:07,624.624 INFO    ] 2026-10-25 08:39:07
[2026-10-25 08:39:07,871.871 INFO    ] 2026-10-25 08:39:07
[2026-10-25 08:39:07,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:39:08,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:39:08,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:39:08,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:39:08,241.241 INFO    ] time= 25/10/2026 08:39:08
[2026-10-25 08:39:08,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:39:08,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:39:08,324.324 INFO    ] No existing commands found in stream
[2026-10-25 08:39:13,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:39:13,342.342 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 08:39:15,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:39:15,594.594 INFO    ] Checking for system updates...
[2026-10-25 08:39:15,638.638 INFO    ] 200
[2026-10-25 08:39:15,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:15,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:15,703.703 INFO    ] No update needed
[2026-10-25 08:39:15,705.705 INFO    ] Checking for camera pi updates...
[2026-10-25 08:39:15,748.748 INFO    ] 200
[2026-10-25 08:39:15,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:15,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:39:15,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:15,859.859 INFO    ] No camera update needed
[2026-10-25 08:39:15,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:39:15,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:39:15,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:39:15,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:39:17,916.916 INFO    ] ================================================
[2026-10-25 08:39:17,931.931 INFO    ] Launching Daemon at Sun Oct 25 08:39:17 IST 2026
[2026-10-25 08:39:17,941.941 INFO    ] ================================================
[2026-10-25 08:39:18,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:39:18
[2026-10-25 08:39:19,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:39:19,445.445 INFO    ] Initializing speech engine...
[2026-10-25 08:39:19,455.455 INFO    ] 2026-10-25 08:39:19
[2026-10-25 08:39:19,704.704 INFO    ] 2026-10-25 08:39:19
[2026-10-25 08:39:19,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:39:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:39:19,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:39:20,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:39:20,080.080 INFO    ] time= 25/10/2026 08:39:20
[2026-10-25 08:39:20,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:39:20,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:39:20,236.236 INFO    ] No existing commands found in stream
[2026-10-25 08:39:25,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:39:25,262.262 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 08:39:29,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:39:29,282.282 INFO    ] Checking for system updates...
[2026-10-25 08:39:30,306.306 INFO    ] 200
[2026-10-25 08:39:30,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 08:39:30,312.312 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 08:39:30,315.315 INFO    ] Checking for camera pi updates...
[2026-10-25 08:39:30,523.523 INFO    ] 200
[2026-10-25 08:39:30,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 08:39:30,542.542 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 08:39:30,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:39:30,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:39:30,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:39:30,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:39:32,623.623 INFO    ] ================================================
[2026-10-25 08:39:32,638.638 INFO    ] Launching Daemon at Sun Oct 25 08:39:32 IST 2026
[2026-10-25 08:39:32,649.649 INFO    ] ================================================
[2026-10-25 08:39:33,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:39:33
[2026-10-25 08:39:33,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:39:34,111.111 INFO    ] Initializing speech engine...
[2026-10-25 08:39:34,120.120 INFO    ] 2026-10-25 08:39:34
[2026-10-25 08:39:34,376.376 INFO    ] 2026-10-25 08:39:34
[2026-10-25 08:39:34,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:39:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:39:34,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:39:34,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:39:34,875.875 INFO    ] time= 25/10/2026 08:39:34
[2026-10-25 08:39:34,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:39:34,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:39:35,054.054 INFO    ] No existing commands found in stream
[2026-10-25 08:39:40,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:39:40,102.102 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 08:39:43,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:39:43,022.022 INFO    ] Checking for system updates...
[2026-10-25 08:39:43,063.063 INFO    ] 200
[2026-10-25 08:39:43,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:43,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:39:43,120.120 INFO    ] No update needed
[2026-10-25 08:39:43,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 08:39:43,157.157 INFO    ] 200
[2026-10-25 08:39:43,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:43,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:39:43,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:39:43,266.266 INFO    ] No camera update needed
[2026-10-25 08:39:43,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:39:43,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:39:43,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:39:43,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:39:45,322.322 INFO    ] ================================================
[2026-10-25 08:39:45,337.337 INFO    ] Launching Daemon at Sun Oct 25 08:39:45 IST 2026
[2026-10-25 08:39:45,347.347 INFO    ] ================================================
[2026-10-25 08:39:45,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:39:45
[2026-10-25 08:39:46,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:39:46,799.799 INFO    ] Initializing speech engine...
[2026-10-25 08:39:46,806.806 INFO    ] 2026-10-25 08:39:46
[2026-10-25 08:39:47,102.102 INFO    ] 2026-10-25 08:39:47
[2026-10-25 08:39:47,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:39:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:39:47,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:39:47,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:39:47,484.484 INFO    ] time= 25/10/2026 08:39:47
[2026-10-25 08:39:47,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:39:47,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:39:47,611.611 INFO    ] No existing commands found in stream
[2026-10-25 08:39:52,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:39:52,627.627 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 08:39:53,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:39:53,370.370 INFO    ] Checking for system updates...
[2026-10-25 08:39:53,406.406 INFO    ] 200
[2026-10-25 08:39:53,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:53,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:53,471.471 INFO    ] No update needed
[2026-10-25 08:39:53,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 08:39:53,511.511 INFO    ] 200
[2026-10-25 08:39:53,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:39:53,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:39:53,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:39:53,622.622 INFO    ] No camera update needed
[2026-10-25 08:39:53,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:39:53,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:39:53,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:39:53,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:39:55,678.678 INFO    ] ================================================
[2026-10-25 08:39:55,694.694 INFO    ] Launching Daemon at Sun Oct 25 08:39:55 IST 2026
[2026-10-25 08:39:55,705.705 INFO    ] ================================================
[2026-10-25 08:39:56,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:39:56
[2026-10-25 08:39:56,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:39:57,111.111 INFO    ] Initializing speech engine...
[2026-10-25 08:39:57,127.127 INFO    ] 2026-10-25 08:39:57
[2026-10-25 08:39:57,380.380 INFO    ] 2026-10-25 08:39:57
[2026-10-25 08:39:57,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:39:57,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:39:57,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:39:57,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:39:57,756.756 INFO    ] time= 25/10/2026 08:39:57
[2026-10-25 08:39:57,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:39:57,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:39:57,931.931 INFO    ] No existing commands found in stream
[2026-10-25 08:40:02,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:40:02,957.957 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 08:40:08,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:40:08,004.004 INFO    ] Checking for system updates...
[2026-10-25 08:40:08,042.042 INFO    ] 200
[2026-10-25 08:40:08,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:08,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:40:08,106.106 INFO    ] No update needed
[2026-10-25 08:40:08,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 08:40:08,145.145 INFO    ] 200
[2026-10-25 08:40:08,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:08,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:40:08,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:40:08,237.237 INFO    ] No camera update needed
[2026-10-25 08:40:08,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:40:08,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:40:08,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:40:08,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:40:10,294.294 INFO    ] ================================================
[2026-10-25 08:40:10,309.309 INFO    ] Launching Daemon at Sun Oct 25 08:40:10 IST 2026
[2026-10-25 08:40:10,319.319 INFO    ] ================================================
[2026-10-25 08:40:10,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:40:10
[2026-10-25 08:40:11,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:40:11,727.727 INFO    ] Initializing speech engine...
[2026-10-25 08:40:11,750.750 INFO    ] 2026-10-25 08:40:11
[2026-10-25 08:40:12,006.006 INFO    ] 2026-10-25 08:40:11
[2026-10-25 08:40:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:40:12,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:40:12,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:40:12,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:40:12,463.463 INFO    ] time= 25/10/2026 08:40:12
[2026-10-25 08:40:12,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:40:12,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:40:12,634.634 INFO    ] No existing commands found in stream
[2026-10-25 08:40:17,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:40:17,648.648 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 08:40:18,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:40:18,970.970 INFO    ] Checking for system updates...
[2026-10-25 08:40:19,009.009 INFO    ] 200
[2026-10-25 08:40:19,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:19,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:40:19,066.066 INFO    ] No update needed
[2026-10-25 08:40:19,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 08:40:19,102.102 INFO    ] 200
[2026-10-25 08:40:19,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:19,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:40:19,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:40:19,203.203 INFO    ] No camera update needed
[2026-10-25 08:40:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:40:19,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:40:19,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:40:19,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:40:21,258.258 INFO    ] ================================================
[2026-10-25 08:40:21,273.273 INFO    ] Launching Daemon at Sun Oct 25 08:40:21 IST 2026
[2026-10-25 08:40:21,284.284 INFO    ] ================================================
[2026-10-25 08:40:21,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:40:21
[2026-10-25 08:40:22,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:40:22,727.727 INFO    ] Initializing speech engine...
[2026-10-25 08:40:22,735.735 INFO    ] 2026-10-25 08:40:22
[2026-10-25 08:40:22,982.982 INFO    ] 2026-10-25 08:40:22
[2026-10-25 08:40:23,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:40:23,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:40:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:40:23,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:40:23,462.462 INFO    ] time= 25/10/2026 08:40:23
[2026-10-25 08:40:23,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:40:23,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:40:23,600.600 INFO    ] No existing commands found in stream
[2026-10-25 08:40:28,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:40:28,615.615 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 08:40:31,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:40:31,771.771 INFO    ] Checking for system updates...
[2026-10-25 08:40:31,813.813 INFO    ] 200
[2026-10-25 08:40:31,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:31,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:31,876.876 INFO    ] No update needed
[2026-10-25 08:40:31,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 08:40:31,917.917 INFO    ] 200
[2026-10-25 08:40:31,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:31,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:40:32,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:32,017.017 INFO    ] No camera update needed
[2026-10-25 08:40:32,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:40:32,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:40:32,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:40:32,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:40:34,076.076 INFO    ] ================================================
[2026-10-25 08:40:34,092.092 INFO    ] Launching Daemon at Sun Oct 25 08:40:34 IST 2026
[2026-10-25 08:40:34,103.103 INFO    ] ================================================
[2026-10-25 08:40:34,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:40:34
[2026-10-25 08:40:35,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:40:35,701.701 INFO    ] Initializing speech engine...
[2026-10-25 08:40:35,708.708 INFO    ] 2026-10-25 08:40:35
[2026-10-25 08:40:35,994.994 INFO    ] 2026-10-25 08:40:35
[2026-10-25 08:40:36,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:40:36,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:40:36,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:40:36,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:40:36,511.511 INFO    ] time= 25/10/2026 08:40:36
[2026-10-25 08:40:36,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:40:36,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:40:36,676.676 INFO    ] No existing commands found in stream
[2026-10-25 08:40:41,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:40:41,705.705 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 08:40:43,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:40:43,710.710 INFO    ] Checking for system updates...
[2026-10-25 08:40:43,747.747 INFO    ] 200
[2026-10-25 08:40:43,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:43,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:43,812.812 INFO    ] No update needed
[2026-10-25 08:40:43,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 08:40:43,853.853 INFO    ] 200
[2026-10-25 08:40:43,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:43,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:40:44,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:44,062.062 INFO    ] No camera update needed
[2026-10-25 08:40:44,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:40:44,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:40:44,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:40:44,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:40:46,119.119 INFO    ] ================================================
[2026-10-25 08:40:46,134.134 INFO    ] Launching Daemon at Sun Oct 25 08:40:46 IST 2026
[2026-10-25 08:40:46,144.144 INFO    ] ================================================
[2026-10-25 08:40:46,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:40:46
[2026-10-25 08:40:47,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:40:47,558.558 INFO    ] Initializing speech engine...
[2026-10-25 08:40:47,576.576 INFO    ] 2026-10-25 08:40:47
[2026-10-25 08:40:47,833.833 INFO    ] 2026-10-25 08:40:47
[2026-10-25 08:40:47,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:40:48,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:40:48,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:40:48,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:40:48,287.287 INFO    ] time= 25/10/2026 08:40:48
[2026-10-25 08:40:48,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:40:48,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:40:48,462.462 INFO    ] No existing commands found in stream
[2026-10-25 08:40:53,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:40:53,476.476 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 08:40:56,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:40:56,339.339 INFO    ] Checking for system updates...
[2026-10-25 08:40:56,375.375 INFO    ] 200
[2026-10-25 08:40:56,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:56,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:56,438.438 INFO    ] No update needed
[2026-10-25 08:40:56,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 08:40:56,474.474 INFO    ] 200
[2026-10-25 08:40:56,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:40:56,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:40:56,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:40:56,580.580 INFO    ] No camera update needed
[2026-10-25 08:40:56,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:40:56,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:40:56,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:40:56,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:40:58,636.636 INFO    ] ================================================
[2026-10-25 08:40:58,652.652 INFO    ] Launching Daemon at Sun Oct 25 08:40:58 IST 2026
[2026-10-25 08:40:58,662.662 INFO    ] ================================================
[2026-10-25 08:40:59,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:40:59
[2026-10-25 08:40:59,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:00,123.123 INFO    ] Initializing speech engine...
[2026-10-25 08:41:00,143.143 INFO    ] 2026-10-25 08:41:00
[2026-10-25 08:41:00,408.408 INFO    ] 2026-10-25 08:41:00
[2026-10-25 08:41:00,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:00,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:00,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:00,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:00,784.784 INFO    ] time= 25/10/2026 08:41:00
[2026-10-25 08:41:00,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:00,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:00,907.907 INFO    ] No existing commands found in stream
[2026-10-25 08:41:05,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:41:05,923.923 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 08:41:09,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:41:09,557.557 INFO    ] Checking for system updates...
[2026-10-25 08:41:09,593.593 INFO    ] 200
[2026-10-25 08:41:09,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:09,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:41:09,651.651 INFO    ] No update needed
[2026-10-25 08:41:09,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 08:41:09,687.687 INFO    ] 200
[2026-10-25 08:41:09,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:09,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:41:09,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:41:09,781.781 INFO    ] No camera update needed
[2026-10-25 08:41:09,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:41:09,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:41:09,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:41:09,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:41:11,837.837 INFO    ] ================================================
[2026-10-25 08:41:11,853.853 INFO    ] Launching Daemon at Sun Oct 25 08:41:11 IST 2026
[2026-10-25 08:41:11,865.865 INFO    ] ================================================
[2026-10-25 08:41:12,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:41:12
[2026-10-25 08:41:13,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:13,302.302 INFO    ] Initializing speech engine...
[2026-10-25 08:41:13,317.317 INFO    ] 2026-10-25 08:41:13
[2026-10-25 08:41:13,603.603 INFO    ] 2026-10-25 08:41:13
[2026-10-25 08:41:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:13,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:13,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:13,983.983 INFO    ] time= 25/10/2026 08:41:13
[2026-10-25 08:41:14,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:14,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:14,107.107 INFO    ] No existing commands found in stream
[2026-10-25 08:41:19,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:41:19,124.124 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 08:41:20,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:41:20,033.033 INFO    ] Checking for system updates...
[2026-10-25 08:41:20,069.069 INFO    ] 200
[2026-10-25 08:41:20,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:20,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:20,135.135 INFO    ] No update needed
[2026-10-25 08:41:20,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 08:41:20,171.171 INFO    ] 200
[2026-10-25 08:41:20,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:20,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:41:20,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:20,263.263 INFO    ] No camera update needed
[2026-10-25 08:41:20,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:41:20,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:41:20,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:41:20,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:41:22,319.319 INFO    ] ================================================
[2026-10-25 08:41:22,334.334 INFO    ] Launching Daemon at Sun Oct 25 08:41:22 IST 2026
[2026-10-25 08:41:22,344.344 INFO    ] ================================================
[2026-10-25 08:41:22,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:41:22
[2026-10-25 08:41:23,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:23,966.966 INFO    ] Initializing speech engine...
[2026-10-25 08:41:23,972.972 INFO    ] 2026-10-25 08:41:23
[2026-10-25 08:41:24,264.264 INFO    ] 2026-10-25 08:41:24
[2026-10-25 08:41:24,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:24,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:24,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:24,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:24,735.735 INFO    ] time= 25/10/2026 08:41:24
[2026-10-25 08:41:24,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:24,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:24,941.941 INFO    ] No existing commands found in stream
[2026-10-25 08:41:29,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:41:29,966.966 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 08:41:31,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:41:31,192.192 INFO    ] Checking for system updates...
[2026-10-25 08:41:31,233.233 INFO    ] 200
[2026-10-25 08:41:31,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:31,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:31,294.294 INFO    ] No update needed
[2026-10-25 08:41:31,296.296 INFO    ] Checking for camera pi updates...
[2026-10-25 08:41:31,332.332 INFO    ] 200
[2026-10-25 08:41:31,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:31,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:41:31,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:31,433.433 INFO    ] No camera update needed
[2026-10-25 08:41:31,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:41:31,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:41:31,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:41:31,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:41:33,492.492 INFO    ] ================================================
[2026-10-25 08:41:33,508.508 INFO    ] Launching Daemon at Sun Oct 25 08:41:33 IST 2026
[2026-10-25 08:41:33,520.520 INFO    ] ================================================
[2026-10-25 08:41:34,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:41:34
[2026-10-25 08:41:34,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:34,936.936 INFO    ] Initializing speech engine...
[2026-10-25 08:41:34,945.945 INFO    ] 2026-10-25 08:41:34
[2026-10-25 08:41:35,238.238 INFO    ] 2026-10-25 08:41:35
[2026-10-25 08:41:35,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:35,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:35,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:35,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:35,875.875 INFO    ] time= 25/10/2026 08:41:35
[2026-10-25 08:41:35,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:35,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:36,003.003 INFO    ] No existing commands found in stream
[2026-10-25 08:41:41,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:41:41,025.025 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 08:41:43,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:41:43,362.362 INFO    ] Checking for system updates...
[2026-10-25 08:41:43,402.402 INFO    ] 200
[2026-10-25 08:41:43,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:43,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:43,459.459 INFO    ] No update needed
[2026-10-25 08:41:43,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 08:41:43,495.495 INFO    ] 200
[2026-10-25 08:41:43,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:43,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:41:43,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:43,589.589 INFO    ] No camera update needed
[2026-10-25 08:41:43,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:41:43,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:41:43,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:41:43,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:41:45,648.648 INFO    ] ================================================
[2026-10-25 08:41:45,663.663 INFO    ] Launching Daemon at Sun Oct 25 08:41:45 IST 2026
[2026-10-25 08:41:45,674.674 INFO    ] ================================================
[2026-10-25 08:41:46,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:41:46
[2026-10-25 08:41:46,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:47,084.084 INFO    ] Initializing speech engine...
[2026-10-25 08:41:47,097.097 INFO    ] 2026-10-25 08:41:47
[2026-10-25 08:41:47,362.362 INFO    ] 2026-10-25 08:41:47
[2026-10-25 08:41:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:47,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:47,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:47,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:47,737.737 INFO    ] time= 25/10/2026 08:41:47
[2026-10-25 08:41:47,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:47,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:47,892.892 INFO    ] No existing commands found in stream
[2026-10-25 08:41:52,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:41:52,916.916 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 08:41:55,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:41:55,049.049 INFO    ] Checking for system updates...
[2026-10-25 08:41:55,085.085 INFO    ] 200
[2026-10-25 08:41:55,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:55,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:55,143.143 INFO    ] No update needed
[2026-10-25 08:41:55,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 08:41:55,183.183 INFO    ] 200
[2026-10-25 08:41:55,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:41:55,226.226 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:41:55,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:41:55,278.278 INFO    ] No camera update needed
[2026-10-25 08:41:55,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:41:55,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:41:55,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:41:55,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:41:57,333.333 INFO    ] ================================================
[2026-10-25 08:41:57,349.349 INFO    ] Launching Daemon at Sun Oct 25 08:41:57 IST 2026
[2026-10-25 08:41:57,360.360 INFO    ] ================================================
[2026-10-25 08:41:58,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:41:58
[2026-10-25 08:41:58,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:41:58,989.989 INFO    ] Initializing speech engine...
[2026-10-25 08:41:58,998.998 INFO    ] 2026-10-25 08:41:58
[2026-10-25 08:41:59,283.283 INFO    ] 2026-10-25 08:41:59
[2026-10-25 08:41:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:41:59,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:41:59,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:41:59,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:41:59,752.752 INFO    ] time= 25/10/2026 08:41:59
[2026-10-25 08:41:59,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:41:59,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:41:59,880.880 INFO    ] No existing commands found in stream
[2026-10-25 08:42:04,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:42:04,896.896 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 08:42:08,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:42:08,168.168 INFO    ] Checking for system updates...
[2026-10-25 08:42:08,206.206 INFO    ] 200
[2026-10-25 08:42:08,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:08,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:08,268.268 INFO    ] No update needed
[2026-10-25 08:42:08,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 08:42:08,306.306 INFO    ] 200
[2026-10-25 08:42:08,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:08,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:42:08,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:08,422.422 INFO    ] No camera update needed
[2026-10-25 08:42:08,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:42:08,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:42:08,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:42:08,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:42:10,481.481 INFO    ] ================================================
[2026-10-25 08:42:10,497.497 INFO    ] Launching Daemon at Sun Oct 25 08:42:10 IST 2026
[2026-10-25 08:42:10,509.509 INFO    ] ================================================
[2026-10-25 08:42:11,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:42:11
[2026-10-25 08:42:11,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:42:11,909.909 INFO    ] Initializing speech engine...
[2026-10-25 08:42:11,917.917 INFO    ] 2026-10-25 08:42:11
[2026-10-25 08:42:12,190.190 INFO    ] 2026-10-25 08:42:12
[2026-10-25 08:42:12,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:42:12,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:42:12,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:42:12,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:42:12,569.569 INFO    ] time= 25/10/2026 08:42:12
[2026-10-25 08:42:12,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:42:12,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:42:12,734.734 INFO    ] No existing commands found in stream
[2026-10-25 08:42:17,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:42:17,762.762 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 08:42:20,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:42:20,533.533 INFO    ] Checking for system updates...
[2026-10-25 08:42:20,569.569 INFO    ] 200
[2026-10-25 08:42:20,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:20,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:20,627.627 INFO    ] No update needed
[2026-10-25 08:42:20,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 08:42:20,663.663 INFO    ] 200
[2026-10-25 08:42:20,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:20,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:42:20,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:20,755.755 INFO    ] No camera update needed
[2026-10-25 08:42:20,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:42:20,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:42:20,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:42:20,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:42:22,809.809 INFO    ] ================================================
[2026-10-25 08:42:22,825.825 INFO    ] Launching Daemon at Sun Oct 25 08:42:22 IST 2026
[2026-10-25 08:42:22,837.837 INFO    ] ================================================
[2026-10-25 08:42:23,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:42:23
[2026-10-25 08:42:24,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:42:24,303.303 INFO    ] Initializing speech engine...
[2026-10-25 08:42:24,312.312 INFO    ] 2026-10-25 08:42:24
[2026-10-25 08:42:24,561.561 INFO    ] 2026-10-25 08:42:24
[2026-10-25 08:42:24,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:42:24,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:42:24,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:42:24,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:42:25,053.053 INFO    ] time= 25/10/2026 08:42:25
[2026-10-25 08:42:25,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:42:25,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:42:25,181.181 INFO    ] No existing commands found in stream
[2026-10-25 08:42:30,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:42:30,195.195 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 08:42:31,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:42:31,818.818 INFO    ] Checking for system updates...
[2026-10-25 08:42:31,857.857 INFO    ] 200
[2026-10-25 08:42:31,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:31,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:31,931.931 INFO    ] No update needed
[2026-10-25 08:42:31,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 08:42:31,970.970 INFO    ] 200
[2026-10-25 08:42:31,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:32,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:42:32,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:32,057.057 INFO    ] No camera update needed
[2026-10-25 08:42:32,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:42:32,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:42:32,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:42:32,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:42:34,120.120 INFO    ] ================================================
[2026-10-25 08:42:34,135.135 INFO    ] Launching Daemon at Sun Oct 25 08:42:34 IST 2026
[2026-10-25 08:42:34,145.145 INFO    ] ================================================
[2026-10-25 08:42:34,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:42:34
[2026-10-25 08:42:35,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:42:35,539.539 INFO    ] Initializing speech engine...
[2026-10-25 08:42:35,548.548 INFO    ] 2026-10-25 08:42:35
[2026-10-25 08:42:35,817.817 INFO    ] 2026-10-25 08:42:35
[2026-10-25 08:42:35,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:42:36,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:42:36,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:42:36,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:42:36,629.629 INFO    ] time= 25/10/2026 08:42:36
[2026-10-25 08:42:36,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:42:36,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:42:36,768.768 INFO    ] No existing commands found in stream
[2026-10-25 08:42:41,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:42:41,795.795 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 08:42:43,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:42:43,284.284 INFO    ] Checking for system updates...
[2026-10-25 08:42:43,320.320 INFO    ] 200
[2026-10-25 08:42:43,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:43,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:43,377.377 INFO    ] No update needed
[2026-10-25 08:42:43,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 08:42:43,414.414 INFO    ] 200
[2026-10-25 08:42:43,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:43,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:42:43,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:42:43,510.510 INFO    ] No camera update needed
[2026-10-25 08:42:43,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:42:43,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:42:43,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:42:43,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:42:45,565.565 INFO    ] ================================================
[2026-10-25 08:42:45,580.580 INFO    ] Launching Daemon at Sun Oct 25 08:42:45 IST 2026
[2026-10-25 08:42:45,591.591 INFO    ] ================================================
[2026-10-25 08:42:46,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:42:46
[2026-10-25 08:42:46,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:42:47,015.015 INFO    ] Initializing speech engine...
[2026-10-25 08:42:47,030.030 INFO    ] 2026-10-25 08:42:47
[2026-10-25 08:42:47,313.313 INFO    ] 2026-10-25 08:42:47
[2026-10-25 08:42:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:42:47,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:42:47,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:42:47,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:42:47,684.684 INFO    ] time= 25/10/2026 08:42:47
[2026-10-25 08:42:47,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:42:47,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:42:47,765.765 INFO    ] No existing commands found in stream
[2026-10-25 08:42:52,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:42:52,778.778 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 08:42:54,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:42:54,515.515 INFO    ] Checking for system updates...
[2026-10-25 08:42:54,552.552 INFO    ] 200
[2026-10-25 08:42:54,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:54,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:42:54,611.611 INFO    ] No update needed
[2026-10-25 08:42:54,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 08:42:54,647.647 INFO    ] 200
[2026-10-25 08:42:54,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:42:54,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:42:54,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:42:54,852.852 INFO    ] No camera update needed
[2026-10-25 08:42:54,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:42:54,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:42:54,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:42:54,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:42:56,908.908 INFO    ] ================================================
[2026-10-25 08:42:56,923.923 INFO    ] Launching Daemon at Sun Oct 25 08:42:56 IST 2026
[2026-10-25 08:42:56,933.933 INFO    ] ================================================
[2026-10-25 08:42:57,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:42:57
[2026-10-25 08:42:58,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:42:58,363.363 INFO    ] Initializing speech engine...
[2026-10-25 08:42:58,372.372 INFO    ] 2026-10-25 08:42:58
[2026-10-25 08:42:58,616.616 INFO    ] 2026-10-25 08:42:58
[2026-10-25 08:42:58,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:42:58,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:42:58,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:42:58,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:42:58,987.987 INFO    ] time= 25/10/2026 08:42:58
[2026-10-25 08:42:58,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:42:59,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:42:59,155.155 INFO    ] No existing commands found in stream
[2026-10-25 08:43:04,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:43:04,188.188 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 08:43:06,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:43:06,474.474 INFO    ] Checking for system updates...
[2026-10-25 08:43:06,510.510 INFO    ] 200
[2026-10-25 08:43:06,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:06,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:06,580.580 INFO    ] No update needed
[2026-10-25 08:43:06,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 08:43:06,619.619 INFO    ] 200
[2026-10-25 08:43:06,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:06,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:43:06,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:06,724.724 INFO    ] No camera update needed
[2026-10-25 08:43:06,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:43:06,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:43:06,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:43:06,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:43:08,786.786 INFO    ] ================================================
[2026-10-25 08:43:08,801.801 INFO    ] Launching Daemon at Sun Oct 25 08:43:08 IST 2026
[2026-10-25 08:43:08,812.812 INFO    ] ================================================
[2026-10-25 08:43:09,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:43:09
[2026-10-25 08:43:09,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:43:10,213.213 INFO    ] Initializing speech engine...
[2026-10-25 08:43:10,222.222 INFO    ] 2026-10-25 08:43:10
[2026-10-25 08:43:10,512.512 INFO    ] 2026-10-25 08:43:10
[2026-10-25 08:43:10,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:43:10,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:43:10,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:43:10,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:43:10,994.994 INFO    ] time= 25/10/2026 08:43:10
[2026-10-25 08:43:11,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:43:11,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:43:11,190.190 INFO    ] No existing commands found in stream
[2026-10-25 08:43:16,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:43:16,205.205 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 08:43:18,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:43:18,432.432 INFO    ] Checking for system updates...
[2026-10-25 08:43:18,467.467 INFO    ] 200
[2026-10-25 08:43:18,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:18,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:43:18,525.525 INFO    ] No update needed
[2026-10-25 08:43:18,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 08:43:18,560.560 INFO    ] 200
[2026-10-25 08:43:18,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:18,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:43:18,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:43:18,653.653 INFO    ] No camera update needed
[2026-10-25 08:43:18,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:43:18,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:43:18,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:43:18,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:43:20,708.708 INFO    ] ================================================
[2026-10-25 08:43:20,723.723 INFO    ] Launching Daemon at Sun Oct 25 08:43:20 IST 2026
[2026-10-25 08:43:20,734.734 INFO    ] ================================================
[2026-10-25 08:43:21,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:43:21
[2026-10-25 08:43:21,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:43:22,129.129 INFO    ] Initializing speech engine...
[2026-10-25 08:43:22,137.137 INFO    ] 2026-10-25 08:43:22
[2026-10-25 08:43:22,421.421 INFO    ] 2026-10-25 08:43:22
[2026-10-25 08:43:22,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:43:22,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:43:22,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:43:22,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:43:22,895.895 INFO    ] time= 25/10/2026 08:43:22
[2026-10-25 08:43:22,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:43:22,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:43:23,048.048 INFO    ] No existing commands found in stream
[2026-10-25 08:43:28,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:43:28,063.063 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 08:43:30,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:43:30,700.700 INFO    ] Checking for system updates...
[2026-10-25 08:43:30,737.737 INFO    ] 200
[2026-10-25 08:43:30,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:30,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:30,796.796 INFO    ] No update needed
[2026-10-25 08:43:30,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 08:43:30,837.837 INFO    ] 200
[2026-10-25 08:43:30,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:30,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:43:30,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:30,939.939 INFO    ] No camera update needed
[2026-10-25 08:43:30,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:43:30,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:43:30,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:43:30,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:43:33,997.997 INFO    ] ================================================
[2026-10-25 08:43:33,013.013 INFO    ] Launching Daemon at Sun Oct 25 08:43:33 IST 2026
[2026-10-25 08:43:33,025.025 INFO    ] ================================================
[2026-10-25 08:43:33,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:43:33
[2026-10-25 08:43:34,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:43:34,650.650 INFO    ] Initializing speech engine...
[2026-10-25 08:43:34,657.657 INFO    ] 2026-10-25 08:43:34
[2026-10-25 08:43:34,928.928 INFO    ] 2026-10-25 08:43:34
[2026-10-25 08:43:34,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:43:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:43:37,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:43:37,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:43:37,315.315 INFO    ] time= 25/10/2026 08:43:37
[2026-10-25 08:43:37,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:43:37,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:43:37,402.402 INFO    ] No existing commands found in stream
[2026-10-25 08:43:42,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:43:42,424.424 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 08:43:46,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:43:46,439.439 INFO    ] Checking for system updates...
[2026-10-25 08:43:46,477.477 INFO    ] 200
[2026-10-25 08:43:46,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:46,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:46,537.537 INFO    ] No update needed
[2026-10-25 08:43:46,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 08:43:46,575.575 INFO    ] 200
[2026-10-25 08:43:46,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:46,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:43:46,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:43:46,675.675 INFO    ] No camera update needed
[2026-10-25 08:43:46,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:43:46,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:43:46,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:43:46,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:43:48,729.729 INFO    ] ================================================
[2026-10-25 08:43:48,744.744 INFO    ] Launching Daemon at Sun Oct 25 08:43:48 IST 2026
[2026-10-25 08:43:48,755.755 INFO    ] ================================================
[2026-10-25 08:43:49,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:43:49
[2026-10-25 08:43:50,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:43:50,346.346 INFO    ] Initializing speech engine...
[2026-10-25 08:43:50,355.355 INFO    ] 2026-10-25 08:43:50
[2026-10-25 08:43:50,642.642 INFO    ] 2026-10-25 08:43:50
[2026-10-25 08:43:50,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:43:50,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:43:50,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:43:51,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:43:51,188.188 INFO    ] time= 25/10/2026 08:43:51
[2026-10-25 08:43:51,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:43:51,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:43:51,328.328 INFO    ] No existing commands found in stream
[2026-10-25 08:43:56,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:43:56,357.357 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 08:43:57,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:43:57,722.722 INFO    ] Checking for system updates...
[2026-10-25 08:43:57,759.759 INFO    ] 200
[2026-10-25 08:43:57,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:57,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:43:57,819.819 INFO    ] No update needed
[2026-10-25 08:43:57,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 08:43:57,856.856 INFO    ] 200
[2026-10-25 08:43:57,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:43:57,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:43:57,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:43:57,960.960 INFO    ] No camera update needed
[2026-10-25 08:43:57,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:43:57,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:43:57,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:43:57,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:44:00,017.017 INFO    ] ================================================
[2026-10-25 08:44:00,032.032 INFO    ] Launching Daemon at Sun Oct 25 08:44:00 IST 2026
[2026-10-25 08:44:00,043.043 INFO    ] ================================================
[2026-10-25 08:44:00,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:44:00
[2026-10-25 08:44:01,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:44:01,445.445 INFO    ] Initializing speech engine...
[2026-10-25 08:44:01,454.454 INFO    ] 2026-10-25 08:44:01
[2026-10-25 08:44:01,747.747 INFO    ] 2026-10-25 08:44:01
[2026-10-25 08:44:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:44:02,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:44:02,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:44:02,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:44:02,236.236 INFO    ] time= 25/10/2026 08:44:02
[2026-10-25 08:44:02,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:44:02,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:44:02,344.344 INFO    ] No existing commands found in stream
[2026-10-25 08:44:08,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:44:08,366.366 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 08:44:09,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:44:09,982.982 INFO    ] Checking for system updates...
[2026-10-25 08:44:10,017.017 INFO    ] 200
[2026-10-25 08:44:10,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:10,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:10,082.082 INFO    ] No update needed
[2026-10-25 08:44:10,084.084 INFO    ] Checking for camera pi updates...
[2026-10-25 08:44:10,118.118 INFO    ] 200
[2026-10-25 08:44:10,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:10,165.165 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:44:10,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:10,217.217 INFO    ] No camera update needed
[2026-10-25 08:44:10,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:44:10,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:44:10,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:44:10,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:44:12,271.271 INFO    ] ================================================
[2026-10-25 08:44:12,286.286 INFO    ] Launching Daemon at Sun Oct 25 08:44:12 IST 2026
[2026-10-25 08:44:12,297.297 INFO    ] ================================================
[2026-10-25 08:44:12,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:44:12
[2026-10-25 08:44:13,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:44:13,891.891 INFO    ] Initializing speech engine...
[2026-10-25 08:44:13,896.896 INFO    ] 2026-10-25 08:44:13
[2026-10-25 08:44:14,168.168 INFO    ] 2026-10-25 08:44:14
[2026-10-25 08:44:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:44:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:44:14,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:44:14,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:44:14,698.698 INFO    ] time= 25/10/2026 08:44:14
[2026-10-25 08:44:14,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:44:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:44:14,869.869 INFO    ] No existing commands found in stream
[2026-10-25 08:44:19,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:44:19,906.906 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 08:44:23,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:44:23,317.317 INFO    ] Checking for system updates...
[2026-10-25 08:44:23,355.355 INFO    ] 200
[2026-10-25 08:44:23,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:23,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:23,416.416 INFO    ] No update needed
[2026-10-25 08:44:23,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 08:44:23,466.466 INFO    ] 200
[2026-10-25 08:44:23,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:23,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:44:23,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:23,569.569 INFO    ] No camera update needed
[2026-10-25 08:44:23,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:44:23,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:44:23,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:44:23,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:44:25,628.628 INFO    ] ================================================
[2026-10-25 08:44:25,643.643 INFO    ] Launching Daemon at Sun Oct 25 08:44:25 IST 2026
[2026-10-25 08:44:25,654.654 INFO    ] ================================================
[2026-10-25 08:44:26,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:44:26
[2026-10-25 08:44:27,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:44:27,277.277 INFO    ] Initializing speech engine...
[2026-10-25 08:44:27,285.285 INFO    ] 2026-10-25 08:44:27
[2026-10-25 08:44:27,569.569 INFO    ] 2026-10-25 08:44:27
[2026-10-25 08:44:27,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:44:27,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:44:27,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:44:27,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:44:28,024.024 INFO    ] time= 25/10/2026 08:44:27
[2026-10-25 08:44:28,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:44:28,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:44:28,183.183 INFO    ] No existing commands found in stream
[2026-10-25 08:44:33,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:44:33,198.198 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 08:44:38,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:44:38,243.243 INFO    ] Checking for system updates...
[2026-10-25 08:44:38,284.284 INFO    ] 200
[2026-10-25 08:44:38,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:38,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:38,357.357 INFO    ] No update needed
[2026-10-25 08:44:38,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 08:44:38,396.396 INFO    ] 200
[2026-10-25 08:44:38,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:38,446.446 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:44:38,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:44:38,479.479 INFO    ] No camera update needed
[2026-10-25 08:44:38,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:44:38,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:44:38,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:44:38,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:44:40,551.551 INFO    ] ================================================
[2026-10-25 08:44:40,566.566 INFO    ] Launching Daemon at Sun Oct 25 08:44:40 IST 2026
[2026-10-25 08:44:40,577.577 INFO    ] ================================================
[2026-10-25 08:44:41,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:44:41
[2026-10-25 08:44:41,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:44:41,999.999 INFO    ] Initializing speech engine...
[2026-10-25 08:44:42,017.017 INFO    ] 2026-10-25 08:44:42
[2026-10-25 08:44:42,284.284 INFO    ] 2026-10-25 08:44:42
[2026-10-25 08:44:42,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:44:42,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:44:42,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:44:42,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:44:42,698.698 INFO    ] time= 25/10/2026 08:44:42
[2026-10-25 08:44:42,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:44:42,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:44:42,866.866 INFO    ] No existing commands found in stream
[2026-10-25 08:44:47,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:44:47,894.894 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 08:44:51,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:44:51,032.032 INFO    ] Checking for system updates...
[2026-10-25 08:44:51,072.072 INFO    ] 200
[2026-10-25 08:44:51,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:51,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:44:51,136.136 INFO    ] No update needed
[2026-10-25 08:44:51,138.138 INFO    ] Checking for camera pi updates...
[2026-10-25 08:44:51,175.175 INFO    ] 200
[2026-10-25 08:44:51,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:44:51,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:44:51,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:44:51,275.275 INFO    ] No camera update needed
[2026-10-25 08:44:51,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:44:51,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:44:51,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:44:51,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:44:53,329.329 INFO    ] ================================================
[2026-10-25 08:44:53,345.345 INFO    ] Launching Daemon at Sun Oct 25 08:44:53 IST 2026
[2026-10-25 08:44:53,356.356 INFO    ] ================================================
[2026-10-25 08:44:53,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:44:53
[2026-10-25 08:44:54,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:44:54,768.768 INFO    ] Initializing speech engine...
[2026-10-25 08:44:54,787.787 INFO    ] 2026-10-25 08:44:54
[2026-10-25 08:44:55,037.037 INFO    ] 2026-10-25 08:44:55
[2026-10-25 08:44:55,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:44:55,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:44:55,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:44:55,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:44:55,411.411 INFO    ] time= 25/10/2026 08:44:55
[2026-10-25 08:44:55,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:44:55,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:44:55,576.576 INFO    ] No existing commands found in stream
[2026-10-25 08:45:00,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:45:00,604.604 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 08:45:01,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:45:01,550.550 INFO    ] Checking for system updates...
[2026-10-25 08:45:01,591.591 INFO    ] 200
[2026-10-25 08:45:01,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:01,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:45:01,655.655 INFO    ] No update needed
[2026-10-25 08:45:01,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 08:45:01,697.697 INFO    ] 200
[2026-10-25 08:45:01,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:01,753.753 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:45:01,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:45:01,914.914 INFO    ] No camera update needed
[2026-10-25 08:45:01,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:45:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:45:01,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:45:01,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:45:03,977.977 INFO    ] ================================================
[2026-10-25 08:45:03,994.994 INFO    ] Launching Daemon at Sun Oct 25 08:45:03 IST 2026
[2026-10-25 08:45:04,005.005 INFO    ] ================================================
[2026-10-25 08:45:04,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:45:04
[2026-10-25 08:45:05,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:45:05,474.474 INFO    ] Initializing speech engine...
[2026-10-25 08:45:05,483.483 INFO    ] 2026-10-25 08:45:05
[2026-10-25 08:45:05,730.730 INFO    ] 2026-10-25 08:45:05
[2026-10-25 08:45:05,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:45:08,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:45:08,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:45:08,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:45:08,231.231 INFO    ] time= 25/10/2026 08:45:08
[2026-10-25 08:45:08,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:45:08,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:45:08,313.313 INFO    ] No existing commands found in stream
[2026-10-25 08:45:13,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:45:13,326.326 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 08:45:14,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:45:14,141.141 INFO    ] Checking for system updates...
[2026-10-25 08:45:14,176.176 INFO    ] 200
[2026-10-25 08:45:14,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:14,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:14,238.238 INFO    ] No update needed
[2026-10-25 08:45:14,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 08:45:14,280.280 INFO    ] 200
[2026-10-25 08:45:14,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:14,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:45:14,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:14,378.378 INFO    ] No camera update needed
[2026-10-25 08:45:14,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:45:14,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:45:14,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:45:14,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:45:16,433.433 INFO    ] ================================================
[2026-10-25 08:45:16,448.448 INFO    ] Launching Daemon at Sun Oct 25 08:45:16 IST 2026
[2026-10-25 08:45:16,459.459 INFO    ] ================================================
[2026-10-25 08:45:17,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:45:17
[2026-10-25 08:45:17,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:45:17,921.921 INFO    ] Initializing speech engine...
[2026-10-25 08:45:17,930.930 INFO    ] 2026-10-25 08:45:17
[2026-10-25 08:45:18,192.192 INFO    ] 2026-10-25 08:45:18
[2026-10-25 08:45:18,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:45:18,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:45:18,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:45:18,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:45:18,598.598 INFO    ] time= 25/10/2026 08:45:18
[2026-10-25 08:45:18,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:45:18,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:45:18,768.768 INFO    ] No existing commands found in stream
[2026-10-25 08:45:23,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:45:23,796.796 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 08:45:24,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:45:24,264.264 INFO    ] Checking for system updates...
[2026-10-25 08:45:24,303.303 INFO    ] 200
[2026-10-25 08:45:24,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:24,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:24,364.364 INFO    ] No update needed
[2026-10-25 08:45:24,367.367 INFO    ] Checking for camera pi updates...
[2026-10-25 08:45:24,404.404 INFO    ] 200
[2026-10-25 08:45:24,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:24,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:45:24,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:24,501.501 INFO    ] No camera update needed
[2026-10-25 08:45:24,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:45:24,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:45:24,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:45:24,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:45:26,556.556 INFO    ] ================================================
[2026-10-25 08:45:26,571.571 INFO    ] Launching Daemon at Sun Oct 25 08:45:26 IST 2026
[2026-10-25 08:45:26,582.582 INFO    ] ================================================
[2026-10-25 08:45:27,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:45:27
[2026-10-25 08:45:27,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:45:27,999.999 INFO    ] Initializing speech engine...
[2026-10-25 08:45:28,008.008 INFO    ] 2026-10-25 08:45:28
[2026-10-25 08:45:28,259.259 INFO    ] 2026-10-25 08:45:28
[2026-10-25 08:45:28,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:45:28,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:45:28,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:45:28,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:45:28,630.630 INFO    ] time= 25/10/2026 08:45:28
[2026-10-25 08:45:28,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:45:28,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:45:28,797.797 INFO    ] No existing commands found in stream
[2026-10-25 08:45:33,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:45:33,825.825 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 08:45:38,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:45:38,701.701 INFO    ] Checking for system updates...
[2026-10-25 08:45:38,759.759 INFO    ] 200
[2026-10-25 08:45:38,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:38,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:38,854.854 INFO    ] No update needed
[2026-10-25 08:45:38,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 08:45:38,919.919 INFO    ] 200
[2026-10-25 08:45:38,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:38,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:45:38,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:45:38,998.998 INFO    ] No camera update needed
[2026-10-25 08:45:39,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:45:39,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:45:39,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:45:39,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:45:41,053.053 INFO    ] ================================================
[2026-10-25 08:45:41,069.069 INFO    ] Launching Daemon at Sun Oct 25 08:45:41 IST 2026
[2026-10-25 08:45:41,081.081 INFO    ] ================================================
[2026-10-25 08:45:41,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:45:41
[2026-10-25 08:45:42,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:45:42,496.496 INFO    ] Initializing speech engine...
[2026-10-25 08:45:42,505.505 INFO    ] 2026-10-25 08:45:42
[2026-10-25 08:45:42,754.754 INFO    ] 2026-10-25 08:45:42
[2026-10-25 08:45:42,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:45:43,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:45:43,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:45:43,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:45:43,231.231 INFO    ] time= 25/10/2026 08:45:43
[2026-10-25 08:45:43,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:45:43,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:45:43,382.382 INFO    ] No existing commands found in stream
[2026-10-25 08:45:48,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:45:48,396.396 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 08:45:51,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:45:51,112.112 INFO    ] Checking for system updates...
[2026-10-25 08:45:51,147.147 INFO    ] 200
[2026-10-25 08:45:51,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:51,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:45:51,209.209 INFO    ] No update needed
[2026-10-25 08:45:51,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 08:45:51,246.246 INFO    ] 200
[2026-10-25 08:45:51,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:45:51,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:45:51,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:45:51,346.346 INFO    ] No camera update needed
[2026-10-25 08:45:51,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:45:51,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:45:51,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:45:51,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:45:53,401.401 INFO    ] ================================================
[2026-10-25 08:45:53,417.417 INFO    ] Launching Daemon at Sun Oct 25 08:45:53 IST 2026
[2026-10-25 08:45:53,428.428 INFO    ] ================================================
[2026-10-25 08:45:54,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:45:54
[2026-10-25 08:45:54,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:45:54,859.859 INFO    ] Initializing speech engine...
[2026-10-25 08:45:54,875.875 INFO    ] 2026-10-25 08:45:54
[2026-10-25 08:45:55,148.148 INFO    ] 2026-10-25 08:45:55
[2026-10-25 08:45:55,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:45:55,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:45:55,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:45:55,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:45:55,547.547 INFO    ] time= 25/10/2026 08:45:55
[2026-10-25 08:45:55,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:45:55,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:45:55,713.713 INFO    ] No existing commands found in stream
[2026-10-25 08:46:00,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:46:00,741.741 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 08:46:01,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:46:01,751.751 INFO    ] Checking for system updates...
[2026-10-25 08:46:01,835.835 INFO    ] 200
[2026-10-25 08:46:01,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:01,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:01,928.928 INFO    ] No update needed
[2026-10-25 08:46:01,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 08:46:01,985.985 INFO    ] 200
[2026-10-25 08:46:01,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:02,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:46:02,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:02,112.112 INFO    ] No camera update needed
[2026-10-25 08:46:02,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:46:02,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:46:02,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:46:02,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:46:04,180.180 INFO    ] ================================================
[2026-10-25 08:46:04,196.196 INFO    ] Launching Daemon at Sun Oct 25 08:46:04 IST 2026
[2026-10-25 08:46:04,207.207 INFO    ] ================================================
[2026-10-25 08:46:04,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:46:04
[2026-10-25 08:46:05,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:46:05,606.606 INFO    ] Initializing speech engine...
[2026-10-25 08:46:05,621.621 INFO    ] 2026-10-25 08:46:05
[2026-10-25 08:46:05,887.887 INFO    ] 2026-10-25 08:46:05
[2026-10-25 08:46:05,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:46:08,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:46:08,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:46:08,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:46:08,898.898 INFO    ] time= 25/10/2026 08:46:08
[2026-10-25 08:46:08,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:46:08,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:46:08,956.956 INFO    ] No existing commands found in stream
[2026-10-25 08:46:13,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:46:13,968.968 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 08:46:17,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:46:17,146.146 INFO    ] Checking for system updates...
[2026-10-25 08:46:17,182.182 INFO    ] 200
[2026-10-25 08:46:17,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:17,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:17,249.249 INFO    ] No update needed
[2026-10-25 08:46:17,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 08:46:17,285.285 INFO    ] 200
[2026-10-25 08:46:17,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:17,333.333 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:46:17,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:17,385.385 INFO    ] No camera update needed
[2026-10-25 08:46:17,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:46:17,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:46:17,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:46:17,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:46:19,442.442 INFO    ] ================================================
[2026-10-25 08:46:19,457.457 INFO    ] Launching Daemon at Sun Oct 25 08:46:19 IST 2026
[2026-10-25 08:46:19,469.469 INFO    ] ================================================
[2026-10-25 08:46:20,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:46:20
[2026-10-25 08:46:20,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:46:20,887.887 INFO    ] Initializing speech engine...
[2026-10-25 08:46:20,896.896 INFO    ] 2026-10-25 08:46:20
[2026-10-25 08:46:21,145.145 INFO    ] 2026-10-25 08:46:21
[2026-10-25 08:46:21,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:46:21,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:46:21,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:46:21,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:46:21,623.623 INFO    ] time= 25/10/2026 08:46:21
[2026-10-25 08:46:21,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:46:21,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:46:21,775.775 INFO    ] No existing commands found in stream
[2026-10-25 08:46:26,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:46:26,789.789 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 08:46:29,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:46:29,086.086 INFO    ] Checking for system updates...
[2026-10-25 08:46:29,123.123 INFO    ] 200
[2026-10-25 08:46:29,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:29,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:46:29,180.180 INFO    ] No update needed
[2026-10-25 08:46:29,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 08:46:29,217.217 INFO    ] 200
[2026-10-25 08:46:29,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:29,268.268 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:46:29,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:46:29,318.318 INFO    ] No camera update needed
[2026-10-25 08:46:29,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:46:29,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:46:29,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:46:29,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:46:31,373.373 INFO    ] ================================================
[2026-10-25 08:46:31,389.389 INFO    ] Launching Daemon at Sun Oct 25 08:46:31 IST 2026
[2026-10-25 08:46:31,399.399 INFO    ] ================================================
[2026-10-25 08:46:31,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:46:31
[2026-10-25 08:46:32,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:46:32,916.916 INFO    ] Initializing speech engine...
[2026-10-25 08:46:32,931.931 INFO    ] 2026-10-25 08:46:32
[2026-10-25 08:46:33,210.210 INFO    ] 2026-10-25 08:46:33
[2026-10-25 08:46:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:46:33,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:46:33,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:46:33,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:46:33,621.621 INFO    ] time= 25/10/2026 08:46:33
[2026-10-25 08:46:33,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:46:33,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:46:33,784.784 INFO    ] No existing commands found in stream
[2026-10-25 08:46:38,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:46:38,812.812 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 08:46:39,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:46:39,632.632 INFO    ] Checking for system updates...
[2026-10-25 08:46:39,668.668 INFO    ] 200
[2026-10-25 08:46:39,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:39,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:39,730.730 INFO    ] No update needed
[2026-10-25 08:46:39,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 08:46:39,766.766 INFO    ] 200
[2026-10-25 08:46:39,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:39,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:46:39,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:46:39,855.855 INFO    ] No camera update needed
[2026-10-25 08:46:39,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:46:39,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:46:39,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:46:39,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:46:41,910.910 INFO    ] ================================================
[2026-10-25 08:46:41,925.925 INFO    ] Launching Daemon at Sun Oct 25 08:46:41 IST 2026
[2026-10-25 08:46:41,936.936 INFO    ] ================================================
[2026-10-25 08:46:42,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:46:42
[2026-10-25 08:46:43,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:46:43,361.361 INFO    ] Initializing speech engine...
[2026-10-25 08:46:43,382.382 INFO    ] 2026-10-25 08:46:43
[2026-10-25 08:46:43,639.639 INFO    ] 2026-10-25 08:46:43
[2026-10-25 08:46:43,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:46:43,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:46:43,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:46:44,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:46:44,009.009 INFO    ] time= 25/10/2026 08:46:44
[2026-10-25 08:46:44,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:46:44,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:46:44,173.173 INFO    ] No existing commands found in stream
[2026-10-25 08:46:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:46:49,206.206 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 08:46:53,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:46:53,305.305 INFO    ] Checking for system updates...
[2026-10-25 08:46:53,341.341 INFO    ] 200
[2026-10-25 08:46:53,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:53,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:46:53,399.399 INFO    ] No update needed
[2026-10-25 08:46:53,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 08:46:53,438.438 INFO    ] 200
[2026-10-25 08:46:53,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:46:53,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:46:53,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:46:53,528.528 INFO    ] No camera update needed
[2026-10-25 08:46:53,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:46:53,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:46:53,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:46:53,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:46:55,584.584 INFO    ] ================================================
[2026-10-25 08:46:55,599.599 INFO    ] Launching Daemon at Sun Oct 25 08:46:55 IST 2026
[2026-10-25 08:46:55,610.610 INFO    ] ================================================
[2026-10-25 08:46:56,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:46:56
[2026-10-25 08:46:56,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:46:57,050.050 INFO    ] Initializing speech engine...
[2026-10-25 08:46:57,059.059 INFO    ] 2026-10-25 08:46:57
[2026-10-25 08:46:57,352.352 INFO    ] 2026-10-25 08:46:57
[2026-10-25 08:46:57,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:46:57,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:46:57,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:46:57,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:46:57,763.763 INFO    ] time= 25/10/2026 08:46:57
[2026-10-25 08:46:57,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:46:57,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:46:57,852.852 INFO    ] No existing commands found in stream
[2026-10-25 08:47:02,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:47:02,868.868 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 08:47:10,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:47:10,419.419 INFO    ] Checking for system updates...
[2026-10-25 08:47:10,455.455 INFO    ] 200
[2026-10-25 08:47:10,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:10,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:10,513.513 INFO    ] No update needed
[2026-10-25 08:47:10,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 08:47:10,552.552 INFO    ] 200
[2026-10-25 08:47:10,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:10,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:47:10,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:10,643.643 INFO    ] No camera update needed
[2026-10-25 08:47:10,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:47:10,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:47:10,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:47:10,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:47:12,699.699 INFO    ] ================================================
[2026-10-25 08:47:12,715.715 INFO    ] Launching Daemon at Sun Oct 25 08:47:12 IST 2026
[2026-10-25 08:47:12,726.726 INFO    ] ================================================
[2026-10-25 08:47:13,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:47:13
[2026-10-25 08:47:13,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:47:14,197.197 INFO    ] Initializing speech engine...
[2026-10-25 08:47:14,207.207 INFO    ] 2026-10-25 08:47:14
[2026-10-25 08:47:14,466.466 INFO    ] 2026-10-25 08:47:14
[2026-10-25 08:47:14,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:47:14,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:47:14,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:47:14,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:47:14,850.850 INFO    ] time= 25/10/2026 08:47:14
[2026-10-25 08:47:14,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:47:14,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:47:15,014.014 INFO    ] No existing commands found in stream
[2026-10-25 08:47:20,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:47:20,041.041 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 08:47:22,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:47:22,302.302 INFO    ] Checking for system updates...
[2026-10-25 08:47:22,337.337 INFO    ] 200
[2026-10-25 08:47:22,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:22,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:22,395.395 INFO    ] No update needed
[2026-10-25 08:47:22,398.398 INFO    ] Checking for camera pi updates...
[2026-10-25 08:47:22,431.431 INFO    ] 200
[2026-10-25 08:47:22,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:22,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:47:22,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:22,522.522 INFO    ] No camera update needed
[2026-10-25 08:47:22,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:47:22,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:47:22,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:47:22,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:47:24,577.577 INFO    ] ================================================
[2026-10-25 08:47:24,595.595 INFO    ] Launching Daemon at Sun Oct 25 08:47:24 IST 2026
[2026-10-25 08:47:24,606.606 INFO    ] ================================================
[2026-10-25 08:47:25,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:47:25
[2026-10-25 08:47:25,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:47:26,228.228 INFO    ] Initializing speech engine...
[2026-10-25 08:47:26,242.242 INFO    ] 2026-10-25 08:47:26
[2026-10-25 08:47:26,516.516 INFO    ] 2026-10-25 08:47:26
[2026-10-25 08:47:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:47:26,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:47:26,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:47:26,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:47:26,998.998 INFO    ] time= 25/10/2026 08:47:26
[2026-10-25 08:47:27,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:47:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:47:27,192.192 INFO    ] No existing commands found in stream
[2026-10-25 08:47:32,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:47:32,217.217 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 08:47:34,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:47:34,380.380 INFO    ] Checking for system updates...
[2026-10-25 08:47:34,417.417 INFO    ] 200
[2026-10-25 08:47:34,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:34,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:34,481.481 INFO    ] No update needed
[2026-10-25 08:47:34,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 08:47:34,519.519 INFO    ] 200
[2026-10-25 08:47:34,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:34,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:47:34,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:34,621.621 INFO    ] No camera update needed
[2026-10-25 08:47:34,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:47:34,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:47:34,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:47:34,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:47:36,680.680 INFO    ] ================================================
[2026-10-25 08:47:36,696.696 INFO    ] Launching Daemon at Sun Oct 25 08:47:36 IST 2026
[2026-10-25 08:47:36,707.707 INFO    ] ================================================
[2026-10-25 08:47:37,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:47:37
[2026-10-25 08:47:38,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:47:38,294.294 INFO    ] Initializing speech engine...
[2026-10-25 08:47:38,300.300 INFO    ] 2026-10-25 08:47:38
[2026-10-25 08:47:38,570.570 INFO    ] 2026-10-25 08:47:38
[2026-10-25 08:47:38,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:47:39,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:47:39,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:47:39,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:47:39,992.992 INFO    ] time= 25/10/2026 08:47:39
[2026-10-25 08:47:39,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:47:40,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:47:40,086.086 INFO    ] No existing commands found in stream
[2026-10-25 08:47:45,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:47:45,100.100 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 08:47:46,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:47:46,638.638 INFO    ] Checking for system updates...
[2026-10-25 08:47:46,674.674 INFO    ] 200
[2026-10-25 08:47:46,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:46,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:46,736.736 INFO    ] No update needed
[2026-10-25 08:47:46,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 08:47:46,772.772 INFO    ] 200
[2026-10-25 08:47:46,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:46,814.814 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:47:46,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:47:46,868.868 INFO    ] No camera update needed
[2026-10-25 08:47:46,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:47:46,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:47:46,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:47:46,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:47:48,924.924 INFO    ] ================================================
[2026-10-25 08:47:48,939.939 INFO    ] Launching Daemon at Sun Oct 25 08:47:48 IST 2026
[2026-10-25 08:47:48,951.951 INFO    ] ================================================
[2026-10-25 08:47:49,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:47:49
[2026-10-25 08:47:50,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:47:50,395.395 INFO    ] Initializing speech engine...
[2026-10-25 08:47:50,418.418 INFO    ] 2026-10-25 08:47:50
[2026-10-25 08:47:50,666.666 INFO    ] 2026-10-25 08:47:50
[2026-10-25 08:47:50,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:47:50,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:47:50,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:47:51,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:47:51,062.062 INFO    ] time= 25/10/2026 08:47:51
[2026-10-25 08:47:51,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:47:51,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:47:51,159.159 INFO    ] No existing commands found in stream
[2026-10-25 08:47:56,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:47:56,174.174 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 08:47:59,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:47:59,581.581 INFO    ] Checking for system updates...
[2026-10-25 08:47:59,616.616 INFO    ] 200
[2026-10-25 08:47:59,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:59,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:47:59,673.673 INFO    ] No update needed
[2026-10-25 08:47:59,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 08:47:59,709.709 INFO    ] 200
[2026-10-25 08:47:59,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:47:59,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:47:59,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:47:59,804.804 INFO    ] No camera update needed
[2026-10-25 08:47:59,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:47:59,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:47:59,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:47:59,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:48:01,864.864 INFO    ] ================================================
[2026-10-25 08:48:01,887.887 INFO    ] Launching Daemon at Sun Oct 25 08:48:01 IST 2026
[2026-10-25 08:48:01,903.903 INFO    ] ================================================
[2026-10-25 08:48:02,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:48:02
[2026-10-25 08:48:03,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:48:03,515.515 INFO    ] Initializing speech engine...
[2026-10-25 08:48:03,532.532 INFO    ] 2026-10-25 08:48:03
[2026-10-25 08:48:03,806.806 INFO    ] 2026-10-25 08:48:03
[2026-10-25 08:48:03,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:48:04,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:48:04,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:48:04,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:48:04,192.192 INFO    ] time= 25/10/2026 08:48:04
[2026-10-25 08:48:04,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:48:04,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:48:04,368.368 INFO    ] No existing commands found in stream
[2026-10-25 08:48:09,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:48:09,396.396 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 08:48:10,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:48:10,521.521 INFO    ] Checking for system updates...
[2026-10-25 08:48:10,558.558 INFO    ] 200
[2026-10-25 08:48:10,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:10,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:48:10,616.616 INFO    ] No update needed
[2026-10-25 08:48:10,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 08:48:10,652.652 INFO    ] 200
[2026-10-25 08:48:10,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:10,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:48:10,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:48:10,752.752 INFO    ] No camera update needed
[2026-10-25 08:48:10,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:48:10,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:48:10,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:48:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:48:12,808.808 INFO    ] ================================================
[2026-10-25 08:48:12,825.825 INFO    ] Launching Daemon at Sun Oct 25 08:48:12 IST 2026
[2026-10-25 08:48:12,836.836 INFO    ] ================================================
[2026-10-25 08:48:13,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:48:13
[2026-10-25 08:48:14,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:48:14,327.327 INFO    ] Initializing speech engine...
[2026-10-25 08:48:14,349.349 INFO    ] 2026-10-25 08:48:14
[2026-10-25 08:48:14,628.628 INFO    ] 2026-10-25 08:48:14
[2026-10-25 08:48:14,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:48:14,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:48:14,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:48:15,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:48:15,174.174 INFO    ] time= 25/10/2026 08:48:15
[2026-10-25 08:48:15,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:48:15,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:48:15,361.361 INFO    ] No existing commands found in stream
[2026-10-25 08:48:20,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:48:20,390.390 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 08:48:24,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:48:24,708.708 INFO    ] Checking for system updates...
[2026-10-25 08:48:24,745.745 INFO    ] 200
[2026-10-25 08:48:24,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:24,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:24,803.803 INFO    ] No update needed
[2026-10-25 08:48:24,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 08:48:24,840.840 INFO    ] 200
[2026-10-25 08:48:24,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:24,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:48:24,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:24,937.937 INFO    ] No camera update needed
[2026-10-25 08:48:24,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:48:24,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:48:24,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:48:24,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:48:26,993.993 INFO    ] ================================================
[2026-10-25 08:48:27,008.008 INFO    ] Launching Daemon at Sun Oct 25 08:48:27 IST 2026
[2026-10-25 08:48:27,019.019 INFO    ] ================================================
[2026-10-25 08:48:27,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:48:27
[2026-10-25 08:48:28,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:48:28,659.659 INFO    ] Initializing speech engine...
[2026-10-25 08:48:28,674.674 INFO    ] 2026-10-25 08:48:28
[2026-10-25 08:48:28,964.964 INFO    ] 2026-10-25 08:48:28
[2026-10-25 08:48:29,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:48:29,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:48:29,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:48:29,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:48:29,485.485 INFO    ] time= 25/10/2026 08:48:29
[2026-10-25 08:48:29,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:48:29,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:48:29,695.695 INFO    ] No existing commands found in stream
[2026-10-25 08:48:34,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:48:34,733.733 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 08:48:37,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:48:37,406.406 INFO    ] Checking for system updates...
[2026-10-25 08:48:37,447.447 INFO    ] 200
[2026-10-25 08:48:37,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:37,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:37,514.514 INFO    ] No update needed
[2026-10-25 08:48:37,517.517 INFO    ] Checking for camera pi updates...
[2026-10-25 08:48:37,555.555 INFO    ] 200
[2026-10-25 08:48:37,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:37,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:48:37,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:37,759.759 INFO    ] No camera update needed
[2026-10-25 08:48:37,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:48:37,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:48:37,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:48:37,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:48:39,827.827 INFO    ] ================================================
[2026-10-25 08:48:39,843.843 INFO    ] Launching Daemon at Sun Oct 25 08:48:39 IST 2026
[2026-10-25 08:48:39,856.856 INFO    ] ================================================
[2026-10-25 08:48:40,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:48:40
[2026-10-25 08:48:41,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:48:41,441.441 INFO    ] Initializing speech engine...
[2026-10-25 08:48:41,450.450 INFO    ] 2026-10-25 08:48:41
[2026-10-25 08:48:41,731.731 INFO    ] 2026-10-25 08:48:41
[2026-10-25 08:48:41,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:48:42,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:48:42,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:48:42,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:48:42,279.279 INFO    ] time= 25/10/2026 08:48:42
[2026-10-25 08:48:42,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:48:42,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:48:42,372.372 INFO    ] No existing commands found in stream
[2026-10-25 08:48:47,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:48:47,386.386 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 08:48:48,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:48:48,739.739 INFO    ] Checking for system updates...
[2026-10-25 08:48:48,776.776 INFO    ] 200
[2026-10-25 08:48:48,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:48,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:48,835.835 INFO    ] No update needed
[2026-10-25 08:48:48,838.838 INFO    ] Checking for camera pi updates...
[2026-10-25 08:48:48,876.876 INFO    ] 200
[2026-10-25 08:48:48,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:48:48,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:48:48,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:48:48,986.986 INFO    ] No camera update needed
[2026-10-25 08:48:48,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:48:48,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:48:48,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:48:49,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:48:51,045.045 INFO    ] ================================================
[2026-10-25 08:48:51,060.060 INFO    ] Launching Daemon at Sun Oct 25 08:48:51 IST 2026
[2026-10-25 08:48:51,072.072 INFO    ] ================================================
[2026-10-25 08:48:51,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:48:51
[2026-10-25 08:48:52,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:48:52,657.657 INFO    ] Initializing speech engine...
[2026-10-25 08:48:52,666.666 INFO    ] 2026-10-25 08:48:52
[2026-10-25 08:48:52,928.928 INFO    ] 2026-10-25 08:48:52
[2026-10-25 08:48:52,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:48:53,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:48:53,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:48:53,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:48:53,362.362 INFO    ] time= 25/10/2026 08:48:53
[2026-10-25 08:48:53,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:48:53,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:48:53,536.536 INFO    ] No existing commands found in stream
[2026-10-25 08:48:58,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:48:58,552.552 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 08:49:02,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:49:02,102.102 INFO    ] Checking for system updates...
[2026-10-25 08:49:02,143.143 INFO    ] 200
[2026-10-25 08:49:02,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:02,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:02,208.208 INFO    ] No update needed
[2026-10-25 08:49:02,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 08:49:02,249.249 INFO    ] 200
[2026-10-25 08:49:02,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:02,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:49:02,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:02,347.347 INFO    ] No camera update needed
[2026-10-25 08:49:02,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:49:02,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:49:02,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:49:02,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:49:04,410.410 INFO    ] ================================================
[2026-10-25 08:49:04,426.426 INFO    ] Launching Daemon at Sun Oct 25 08:49:04 IST 2026
[2026-10-25 08:49:04,438.438 INFO    ] ================================================
[2026-10-25 08:49:05,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:49:05
[2026-10-25 08:49:05,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:49:05,973.973 INFO    ] Initializing speech engine...
[2026-10-25 08:49:05,980.980 INFO    ] 2026-10-25 08:49:05
[2026-10-25 08:49:06,260.260 INFO    ] 2026-10-25 08:49:06
[2026-10-25 08:49:06,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:49:06,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:49:06,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:49:06,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:49:06,726.726 INFO    ] time= 25/10/2026 08:49:06
[2026-10-25 08:49:06,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:49:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:49:06,921.921 INFO    ] No existing commands found in stream
[2026-10-25 08:49:11,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:49:11,950.950 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 08:49:16,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:49:16,052.052 INFO    ] Checking for system updates...
[2026-10-25 08:49:16,090.090 INFO    ] 200
[2026-10-25 08:49:16,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:16,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:16,156.156 INFO    ] No update needed
[2026-10-25 08:49:16,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 08:49:16,193.193 INFO    ] 200
[2026-10-25 08:49:16,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:16,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:49:16,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:16,415.415 INFO    ] No camera update needed
[2026-10-25 08:49:16,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:49:16,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:49:16,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:49:16,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:49:18,480.480 INFO    ] ================================================
[2026-10-25 08:49:18,495.495 INFO    ] Launching Daemon at Sun Oct 25 08:49:18 IST 2026
[2026-10-25 08:49:18,507.507 INFO    ] ================================================
[2026-10-25 08:49:19,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:49:19
[2026-10-25 08:49:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:49:19,924.924 INFO    ] Initializing speech engine...
[2026-10-25 08:49:19,934.934 INFO    ] 2026-10-25 08:49:19
[2026-10-25 08:49:20,205.205 INFO    ] 2026-10-25 08:49:20
[2026-10-25 08:49:20,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:49:20,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:49:20,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:49:20,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:49:20,578.578 INFO    ] time= 25/10/2026 08:49:20
[2026-10-25 08:49:20,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:49:20,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:49:20,703.703 INFO    ] No existing commands found in stream
[2026-10-25 08:49:25,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:49:25,716.716 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 08:49:27,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:49:27,072.072 INFO    ] Checking for system updates...
[2026-10-25 08:49:27,108.108 INFO    ] 200
[2026-10-25 08:49:27,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:27,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:49:27,173.173 INFO    ] No update needed
[2026-10-25 08:49:27,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 08:49:27,210.210 INFO    ] 200
[2026-10-25 08:49:27,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:27,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:49:27,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:49:27,317.317 INFO    ] No camera update needed
[2026-10-25 08:49:27,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:49:27,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:49:27,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:49:27,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:49:29,376.376 INFO    ] ================================================
[2026-10-25 08:49:29,391.391 INFO    ] Launching Daemon at Sun Oct 25 08:49:29 IST 2026
[2026-10-25 08:49:29,402.402 INFO    ] ================================================
[2026-10-25 08:49:29,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:49:29
[2026-10-25 08:49:30,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:49:30,829.829 INFO    ] Initializing speech engine...
[2026-10-25 08:49:30,837.837 INFO    ] 2026-10-25 08:49:30
[2026-10-25 08:49:31,085.085 INFO    ] 2026-10-25 08:49:31
[2026-10-25 08:49:31,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:49:31,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:49:31,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:49:31,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:49:31,555.555 INFO    ] time= 25/10/2026 08:49:31
[2026-10-25 08:49:31,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:49:31,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:49:31,704.704 INFO    ] No existing commands found in stream
[2026-10-25 08:49:36,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:49:36,717.717 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 08:49:37,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:49:37,389.389 INFO    ] Checking for system updates...
[2026-10-25 08:49:37,425.425 INFO    ] 200
[2026-10-25 08:49:37,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:37,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:37,482.482 INFO    ] No update needed
[2026-10-25 08:49:37,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 08:49:37,518.518 INFO    ] 200
[2026-10-25 08:49:37,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:37,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:49:37,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:49:37,764.764 INFO    ] No camera update needed
[2026-10-25 08:49:37,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:49:37,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:49:37,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:49:37,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:49:39,821.821 INFO    ] ================================================
[2026-10-25 08:49:39,837.837 INFO    ] Launching Daemon at Sun Oct 25 08:49:39 IST 2026
[2026-10-25 08:49:39,847.847 INFO    ] ================================================
[2026-10-25 08:49:40,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:49:40
[2026-10-25 08:49:41,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:49:41,272.272 INFO    ] Initializing speech engine...
[2026-10-25 08:49:41,281.281 INFO    ] 2026-10-25 08:49:41
[2026-10-25 08:49:41,529.529 INFO    ] 2026-10-25 08:49:41
[2026-10-25 08:49:41,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:49:41,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:49:41,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:49:41,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:49:41,906.906 INFO    ] time= 25/10/2026 08:49:41
[2026-10-25 08:49:41,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:49:41,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:49:42,085.085 INFO    ] No existing commands found in stream
[2026-10-25 08:49:47,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:49:47,113.113 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 08:49:49,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:49:49,130.130 INFO    ] Checking for system updates...
[2026-10-25 08:49:49,166.166 INFO    ] 200
[2026-10-25 08:49:49,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:49,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:49:49,225.225 INFO    ] No update needed
[2026-10-25 08:49:49,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 08:49:49,261.261 INFO    ] 200
[2026-10-25 08:49:49,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:49:49,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:49:49,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:49:49,372.372 INFO    ] No camera update needed
[2026-10-25 08:49:49,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:49:49,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:49:49,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:49:49,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:49:51,429.429 INFO    ] ================================================
[2026-10-25 08:49:51,443.443 INFO    ] Launching Daemon at Sun Oct 25 08:49:51 IST 2026
[2026-10-25 08:49:51,454.454 INFO    ] ================================================
[2026-10-25 08:49:52,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:49:52
[2026-10-25 08:49:52,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:49:53,089.089 INFO    ] Initializing speech engine...
[2026-10-25 08:49:53,101.101 INFO    ] 2026-10-25 08:49:53
[2026-10-25 08:49:53,386.386 INFO    ] 2026-10-25 08:49:53
[2026-10-25 08:49:53,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:49:53,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:49:53,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:49:53,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:49:53,850.850 INFO    ] time= 25/10/2026 08:49:53
[2026-10-25 08:49:53,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:49:53,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:49:53,989.989 INFO    ] No existing commands found in stream
[2026-10-25 08:49:59,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:49:59,005.005 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 08:50:01,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:50:01,607.607 INFO    ] Checking for system updates...
[2026-10-25 08:50:01,687.687 INFO    ] 200
[2026-10-25 08:50:01,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:01,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:50:01,858.858 INFO    ] No update needed
[2026-10-25 08:50:01,884.884 INFO    ] Checking for camera pi updates...
[2026-10-25 08:50:02,028.028 INFO    ] 200
[2026-10-25 08:50:02,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:02,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:50:02,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:50:02,281.281 INFO    ] No camera update needed
[2026-10-25 08:50:02,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:50:02,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:50:02,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:50:02,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:50:04,360.360 INFO    ] ================================================
[2026-10-25 08:50:04,375.375 INFO    ] Launching Daemon at Sun Oct 25 08:50:04 IST 2026
[2026-10-25 08:50:04,386.386 INFO    ] ================================================
[2026-10-25 08:50:05,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:50:05
[2026-10-25 08:50:05,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:50:05,982.982 INFO    ] Initializing speech engine...
[2026-10-25 08:50:05,990.990 INFO    ] 2026-10-25 08:50:05
[2026-10-25 08:50:06,283.283 INFO    ] 2026-10-25 08:50:06
[2026-10-25 08:50:06,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:50:06,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:50:06,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:50:06,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:50:06,824.824 INFO    ] time= 25/10/2026 08:50:06
[2026-10-25 08:50:06,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:50:06,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:50:06,970.970 INFO    ] No existing commands found in stream
[2026-10-25 08:50:11,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:50:11,992.992 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 08:50:14,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:50:14,811.811 INFO    ] Checking for system updates...
[2026-10-25 08:50:14,847.847 INFO    ] 200
[2026-10-25 08:50:14,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:14,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:14,906.906 INFO    ] No update needed
[2026-10-25 08:50:14,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 08:50:14,943.943 INFO    ] 200
[2026-10-25 08:50:14,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:14,987.987 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:50:15,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:15,036.036 INFO    ] No camera update needed
[2026-10-25 08:50:15,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:50:15,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:50:15,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:50:15,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:50:17,092.092 INFO    ] ================================================
[2026-10-25 08:50:17,107.107 INFO    ] Launching Daemon at Sun Oct 25 08:50:17 IST 2026
[2026-10-25 08:50:17,118.118 INFO    ] ================================================
[2026-10-25 08:50:17,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:50:17
[2026-10-25 08:50:18,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:50:18,589.589 INFO    ] Initializing speech engine...
[2026-10-25 08:50:18,615.615 INFO    ] 2026-10-25 08:50:18
[2026-10-25 08:50:18,889.889 INFO    ] 2026-10-25 08:50:18
[2026-10-25 08:50:18,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:50:19,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:50:19,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:50:19,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:50:19,240.240 INFO    ] time= 25/10/2026 08:50:19
[2026-10-25 08:50:19,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:50:19,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:50:19,360.360 INFO    ] No existing commands found in stream
[2026-10-25 08:50:24,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:50:24,398.398 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 08:50:25,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:50:25,027.027 INFO    ] Checking for system updates...
[2026-10-25 08:50:25,063.063 INFO    ] 200
[2026-10-25 08:50:25,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:25,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:25,120.120 INFO    ] No update needed
[2026-10-25 08:50:25,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 08:50:25,157.157 INFO    ] 200
[2026-10-25 08:50:25,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:25,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:50:25,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:25,251.251 INFO    ] No camera update needed
[2026-10-25 08:50:25,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:50:25,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:50:25,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:50:25,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:50:27,308.308 INFO    ] ================================================
[2026-10-25 08:50:27,324.324 INFO    ] Launching Daemon at Sun Oct 25 08:50:27 IST 2026
[2026-10-25 08:50:27,335.335 INFO    ] ================================================
[2026-10-25 08:50:27,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:50:27
[2026-10-25 08:50:28,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:50:28,854.854 INFO    ] Initializing speech engine...
[2026-10-25 08:50:28,861.861 INFO    ] 2026-10-25 08:50:28
[2026-10-25 08:50:29,178.178 INFO    ] 2026-10-25 08:50:29
[2026-10-25 08:50:29,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:50:29,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:50:29,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:50:29,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:50:29,566.566 INFO    ] time= 25/10/2026 08:50:29
[2026-10-25 08:50:29,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:50:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:50:29,646.646 INFO    ] No existing commands found in stream
[2026-10-25 08:50:34,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:50:34,661.661 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 08:50:38,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:50:38,309.309 INFO    ] Checking for system updates...
[2026-10-25 08:50:38,346.346 INFO    ] 200
[2026-10-25 08:50:38,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:38,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:38,407.407 INFO    ] No update needed
[2026-10-25 08:50:38,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 08:50:38,443.443 INFO    ] 200
[2026-10-25 08:50:38,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:38,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:50:38,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:38,523.523 INFO    ] No camera update needed
[2026-10-25 08:50:38,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:50:38,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:50:38,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:50:38,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:50:40,579.579 INFO    ] ================================================
[2026-10-25 08:50:40,595.595 INFO    ] Launching Daemon at Sun Oct 25 08:50:40 IST 2026
[2026-10-25 08:50:40,606.606 INFO    ] ================================================
[2026-10-25 08:50:41,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:50:41
[2026-10-25 08:50:41,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:50:42,061.061 INFO    ] Initializing speech engine...
[2026-10-25 08:50:42,084.084 INFO    ] 2026-10-25 08:50:42
[2026-10-25 08:50:42,342.342 INFO    ] 2026-10-25 08:50:42
[2026-10-25 08:50:42,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:50:42,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:50:42,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:50:42,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:50:42,699.699 INFO    ] time= 25/10/2026 08:50:42
[2026-10-25 08:50:42,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:50:42,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:50:42,800.800 INFO    ] No existing commands found in stream
[2026-10-25 08:50:47,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:50:47,818.818 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 08:50:50,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:50:50,083.083 INFO    ] Checking for system updates...
[2026-10-25 08:50:50,121.121 INFO    ] 200
[2026-10-25 08:50:50,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:50,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:50,180.180 INFO    ] No update needed
[2026-10-25 08:50:50,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 08:50:50,216.216 INFO    ] 200
[2026-10-25 08:50:50,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:50:50,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:50:50,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:50:50,314.314 INFO    ] No camera update needed
[2026-10-25 08:50:50,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:50:50,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:50:50,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:50:50,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:50:52,370.370 INFO    ] ================================================
[2026-10-25 08:50:52,385.385 INFO    ] Launching Daemon at Sun Oct 25 08:50:52 IST 2026
[2026-10-25 08:50:52,396.396 INFO    ] ================================================
[2026-10-25 08:50:52,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:50:52
[2026-10-25 08:50:53,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:50:53,852.852 INFO    ] Initializing speech engine...
[2026-10-25 08:50:53,855.855 INFO    ] 2026-10-25 08:50:53
[2026-10-25 08:50:54,141.141 INFO    ] 2026-10-25 08:50:54
[2026-10-25 08:50:54,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:50:54,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:50:54,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:50:54,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:50:54,526.526 INFO    ] time= 25/10/2026 08:50:54
[2026-10-25 08:50:54,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:50:54,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:50:54,717.717 INFO    ] No existing commands found in stream
[2026-10-25 08:50:59,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:50:59,739.739 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 08:51:02,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:51:02,084.084 INFO    ] Checking for system updates...
[2026-10-25 08:51:02,136.136 INFO    ] 200
[2026-10-25 08:51:02,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:02,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:02,205.205 INFO    ] No update needed
[2026-10-25 08:51:02,209.209 INFO    ] Checking for camera pi updates...
[2026-10-25 08:51:02,250.250 INFO    ] 200
[2026-10-25 08:51:02,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:02,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:51:02,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:02,351.351 INFO    ] No camera update needed
[2026-10-25 08:51:02,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:51:02,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:51:02,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:51:02,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:51:04,414.414 INFO    ] ================================================
[2026-10-25 08:51:04,429.429 INFO    ] Launching Daemon at Sun Oct 25 08:51:04 IST 2026
[2026-10-25 08:51:04,440.440 INFO    ] ================================================
[2026-10-25 08:51:05,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:51:05
[2026-10-25 08:51:05,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:51:06,024.024 INFO    ] Initializing speech engine...
[2026-10-25 08:51:06,039.039 INFO    ] 2026-10-25 08:51:06
[2026-10-25 08:51:06,304.304 INFO    ] 2026-10-25 08:51:06
[2026-10-25 08:51:06,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:51:06,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:51:06,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:51:06,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:51:06,832.832 INFO    ] time= 25/10/2026 08:51:06
[2026-10-25 08:51:06,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:51:06,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:51:07,000.000 INFO    ] No existing commands found in stream
[2026-10-25 08:51:12,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:51:12,036.036 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 08:51:14,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:51:14,806.806 INFO    ] Checking for system updates...
[2026-10-25 08:51:14,843.843 INFO    ] 200
[2026-10-25 08:51:14,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:14,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:51:14,902.902 INFO    ] No update needed
[2026-10-25 08:51:14,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 08:51:14,939.939 INFO    ] 200
[2026-10-25 08:51:14,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:14,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:51:15,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:51:15,030.030 INFO    ] No camera update needed
[2026-10-25 08:51:15,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:51:15,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:51:15,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:51:15,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:51:17,089.089 INFO    ] ================================================
[2026-10-25 08:51:17,104.104 INFO    ] Launching Daemon at Sun Oct 25 08:51:17 IST 2026
[2026-10-25 08:51:17,116.116 INFO    ] ================================================
[2026-10-25 08:51:17,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:51:17
[2026-10-25 08:51:18,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:51:18,574.574 INFO    ] Initializing speech engine...
[2026-10-25 08:51:18,583.583 INFO    ] 2026-10-25 08:51:18
[2026-10-25 08:51:18,835.835 INFO    ] 2026-10-25 08:51:18
[2026-10-25 08:51:18,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:51:19,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:51:19,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:51:19,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:51:19,233.233 INFO    ] time= 25/10/2026 08:51:19
[2026-10-25 08:51:19,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:51:19,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:51:19,422.422 INFO    ] No existing commands found in stream
[2026-10-25 08:51:24,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:51:24,445.445 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 08:51:25,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:51:25,632.632 INFO    ] Checking for system updates...
[2026-10-25 08:51:25,668.668 INFO    ] 200
[2026-10-25 08:51:25,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:25,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:51:25,727.727 INFO    ] No update needed
[2026-10-25 08:51:25,730.730 INFO    ] Checking for camera pi updates...
[2026-10-25 08:51:25,764.764 INFO    ] 200
[2026-10-25 08:51:25,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:25,811.811 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:51:25,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:51:25,986.986 INFO    ] No camera update needed
[2026-10-25 08:51:25,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:51:25,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:51:25,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:51:26,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:51:28,047.047 INFO    ] ================================================
[2026-10-25 08:51:28,063.063 INFO    ] Launching Daemon at Sun Oct 25 08:51:28 IST 2026
[2026-10-25 08:51:28,073.073 INFO    ] ================================================
[2026-10-25 08:51:28,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:51:28
[2026-10-25 08:51:29,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:51:29,491.491 INFO    ] Initializing speech engine...
[2026-10-25 08:51:29,504.504 INFO    ] 2026-10-25 08:51:29
[2026-10-25 08:51:29,771.771 INFO    ] 2026-10-25 08:51:29
[2026-10-25 08:51:29,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:51:29,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:51:29,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:51:30,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:51:30,145.145 INFO    ] time= 25/10/2026 08:51:30
[2026-10-25 08:51:30,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:51:30,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:51:30,295.295 INFO    ] No existing commands found in stream
[2026-10-25 08:51:35,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:51:35,323.323 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 08:51:37,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:51:37,876.876 INFO    ] Checking for system updates...
[2026-10-25 08:51:37,911.911 INFO    ] 200
[2026-10-25 08:51:37,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:37,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:37,970.970 INFO    ] No update needed
[2026-10-25 08:51:37,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 08:51:38,012.012 INFO    ] 200
[2026-10-25 08:51:38,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:38,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:51:38,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:38,118.118 INFO    ] No camera update needed
[2026-10-25 08:51:38,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:51:38,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:51:38,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:51:38,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:51:40,175.175 INFO    ] ================================================
[2026-10-25 08:51:40,189.189 INFO    ] Launching Daemon at Sun Oct 25 08:51:40 IST 2026
[2026-10-25 08:51:40,200.200 INFO    ] ================================================
[2026-10-25 08:51:40,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:51:40
[2026-10-25 08:51:41,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:51:41,733.733 INFO    ] Initializing speech engine...
[2026-10-25 08:51:41,741.741 INFO    ] 2026-10-25 08:51:41
[2026-10-25 08:51:42,026.026 INFO    ] 2026-10-25 08:51:42
[2026-10-25 08:51:42,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:51:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:51:42,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:51:42,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:51:42,564.564 INFO    ] time= 25/10/2026 08:51:42
[2026-10-25 08:51:42,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:51:42,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:51:42,699.699 INFO    ] No existing commands found in stream
[2026-10-25 08:51:47,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:51:47,729.729 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 08:51:51,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:51:51,190.190 INFO    ] Checking for system updates...
[2026-10-25 08:51:51,228.228 INFO    ] 200
[2026-10-25 08:51:51,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:51,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:51,287.287 INFO    ] No update needed
[2026-10-25 08:51:51,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 08:51:51,325.325 INFO    ] 200
[2026-10-25 08:51:51,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:51:51,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:51:51,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:51:51,432.432 INFO    ] No camera update needed
[2026-10-25 08:51:51,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:51:51,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:51:51,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:51:51,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:51:53,487.487 INFO    ] ================================================
[2026-10-25 08:51:53,503.503 INFO    ] Launching Daemon at Sun Oct 25 08:51:53 IST 2026
[2026-10-25 08:51:53,514.514 INFO    ] ================================================
[2026-10-25 08:51:54,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:51:54
[2026-10-25 08:51:54,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:51:55,095.095 INFO    ] Initializing speech engine...
[2026-10-25 08:51:55,101.101 INFO    ] 2026-10-25 08:51:55
[2026-10-25 08:51:55,371.371 INFO    ] 2026-10-25 08:51:55
[2026-10-25 08:51:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:51:55,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:51:55,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:51:55,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:51:55,851.851 INFO    ] time= 25/10/2026 08:51:55
[2026-10-25 08:51:55,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:51:55,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:51:55,999.999 INFO    ] No existing commands found in stream
[2026-10-25 08:52:01,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:52:01,015.015 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 08:52:05,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:52:05,172.172 INFO    ] Checking for system updates...
[2026-10-25 08:52:05,209.209 INFO    ] 200
[2026-10-25 08:52:05,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:05,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:52:05,268.268 INFO    ] No update needed
[2026-10-25 08:52:05,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 08:52:05,304.304 INFO    ] 200
[2026-10-25 08:52:05,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:05,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:52:05,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:52:05,388.388 INFO    ] No camera update needed
[2026-10-25 08:52:05,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:52:05,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:52:05,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:52:05,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:52:07,442.442 INFO    ] ================================================
[2026-10-25 08:52:07,457.457 INFO    ] Launching Daemon at Sun Oct 25 08:52:07 IST 2026
[2026-10-25 08:52:07,468.468 INFO    ] ================================================
[2026-10-25 08:52:08,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:52:08
[2026-10-25 08:52:08,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:52:08,901.901 INFO    ] Initializing speech engine...
[2026-10-25 08:52:08,908.908 INFO    ] 2026-10-25 08:52:08
[2026-10-25 08:52:09,201.201 INFO    ] 2026-10-25 08:52:09
[2026-10-25 08:52:09,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:52:09,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:52:09,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:52:09,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:52:09,577.577 INFO    ] time= 25/10/2026 08:52:09
[2026-10-25 08:52:09,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:52:09,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:52:09,701.701 INFO    ] No existing commands found in stream
[2026-10-25 08:52:14,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:52:14,716.716 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 08:52:17,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:52:17,616.616 INFO    ] Checking for system updates...
[2026-10-25 08:52:17,652.652 INFO    ] 200
[2026-10-25 08:52:17,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:17,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:17,716.716 INFO    ] No update needed
[2026-10-25 08:52:17,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 08:52:17,752.752 INFO    ] 200
[2026-10-25 08:52:17,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:17,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:52:17,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:17,861.861 INFO    ] No camera update needed
[2026-10-25 08:52:17,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:52:17,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:52:17,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:52:17,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:52:19,921.921 INFO    ] ================================================
[2026-10-25 08:52:19,936.936 INFO    ] Launching Daemon at Sun Oct 25 08:52:19 IST 2026
[2026-10-25 08:52:19,946.946 INFO    ] ================================================
[2026-10-25 08:52:20,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:52:20
[2026-10-25 08:52:21,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:52:21,415.415 INFO    ] Initializing speech engine...
[2026-10-25 08:52:21,422.422 INFO    ] 2026-10-25 08:52:21
[2026-10-25 08:52:21,684.684 INFO    ] 2026-10-25 08:52:21
[2026-10-25 08:52:21,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:52:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:52:21,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:52:22,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:52:22,148.148 INFO    ] time= 25/10/2026 08:52:22
[2026-10-25 08:52:22,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:52:22,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:52:22,298.298 INFO    ] No existing commands found in stream
[2026-10-25 08:52:27,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:52:27,337.337 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 08:52:30,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:52:30,409.409 INFO    ] Checking for system updates...
[2026-10-25 08:52:30,445.445 INFO    ] 200
[2026-10-25 08:52:30,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:30,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:30,503.503 INFO    ] No update needed
[2026-10-25 08:52:30,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 08:52:30,539.539 INFO    ] 200
[2026-10-25 08:52:30,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:30,582.582 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:52:30,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:30,615.615 INFO    ] No camera update needed
[2026-10-25 08:52:30,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:52:30,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:52:30,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:52:30,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:52:32,673.673 INFO    ] ================================================
[2026-10-25 08:52:32,688.688 INFO    ] Launching Daemon at Sun Oct 25 08:52:32 IST 2026
[2026-10-25 08:52:32,698.698 INFO    ] ================================================
[2026-10-25 08:52:33,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:52:33
[2026-10-25 08:52:33,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:52:34,295.295 INFO    ] Initializing speech engine...
[2026-10-25 08:52:34,303.303 INFO    ] 2026-10-25 08:52:34
[2026-10-25 08:52:34,622.622 INFO    ] 2026-10-25 08:52:34
[2026-10-25 08:52:34,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:52:34,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:52:34,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:52:35,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:52:35,135.135 INFO    ] time= 25/10/2026 08:52:35
[2026-10-25 08:52:35,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:52:35,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:52:35,269.269 INFO    ] No existing commands found in stream
[2026-10-25 08:52:40,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:52:40,298.298 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 08:52:42,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:52:42,913.913 INFO    ] Checking for system updates...
[2026-10-25 08:52:42,954.954 INFO    ] 200
[2026-10-25 08:52:42,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:43,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:43,015.015 INFO    ] No update needed
[2026-10-25 08:52:43,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 08:52:43,052.052 INFO    ] 200
[2026-10-25 08:52:43,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:43,096.096 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:52:43,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:43,164.164 INFO    ] No camera update needed
[2026-10-25 08:52:43,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:52:43,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:52:43,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:52:43,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:52:45,223.223 INFO    ] ================================================
[2026-10-25 08:52:45,238.238 INFO    ] Launching Daemon at Sun Oct 25 08:52:45 IST 2026
[2026-10-25 08:52:45,248.248 INFO    ] ================================================
[2026-10-25 08:52:45,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:52:45
[2026-10-25 08:52:46,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:52:46,690.690 INFO    ] Initializing speech engine...
[2026-10-25 08:52:46,715.715 INFO    ] 2026-10-25 08:52:46
[2026-10-25 08:52:46,989.989 INFO    ] 2026-10-25 08:52:46
[2026-10-25 08:52:47,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:52:47,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:52:47,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:52:47,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:52:47,361.361 INFO    ] time= 25/10/2026 08:52:47
[2026-10-25 08:52:47,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:52:47,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:52:47,484.484 INFO    ] No existing commands found in stream
[2026-10-25 08:52:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:52:52,500.500 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 08:52:53,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:52:53,962.962 INFO    ] Checking for system updates...
[2026-10-25 08:52:53,998.998 INFO    ] 200
[2026-10-25 08:52:54,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:54,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:54,057.057 INFO    ] No update needed
[2026-10-25 08:52:54,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 08:52:54,096.096 INFO    ] 200
[2026-10-25 08:52:54,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:52:54,139.139 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:52:54,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:52:54,199.199 INFO    ] No camera update needed
[2026-10-25 08:52:54,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:52:54,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:52:54,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:52:54,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:52:56,257.257 INFO    ] ================================================
[2026-10-25 08:52:56,272.272 INFO    ] Launching Daemon at Sun Oct 25 08:52:56 IST 2026
[2026-10-25 08:52:56,283.283 INFO    ] ================================================
[2026-10-25 08:52:56,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:52:56
[2026-10-25 08:52:57,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:52:57,698.698 INFO    ] Initializing speech engine...
[2026-10-25 08:52:57,707.707 INFO    ] 2026-10-25 08:52:57
[2026-10-25 08:52:57,997.997 INFO    ] 2026-10-25 08:52:57
[2026-10-25 08:52:58,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:52:58,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:52:58,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:52:58,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:52:58,370.370 INFO    ] time= 25/10/2026 08:52:58
[2026-10-25 08:52:58,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:52:58,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:52:58,492.492 INFO    ] No existing commands found in stream
[2026-10-25 08:53:03,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:53:03,507.507 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 08:53:05,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:53:05,670.670 INFO    ] Checking for system updates...
[2026-10-25 08:53:05,710.710 INFO    ] 200
[2026-10-25 08:53:05,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:05,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:05,782.782 INFO    ] No update needed
[2026-10-25 08:53:05,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 08:53:05,834.834 INFO    ] 200
[2026-10-25 08:53:05,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:05,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:53:05,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:05,946.946 INFO    ] No camera update needed
[2026-10-25 08:53:05,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:53:05,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:53:05,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:53:05,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:53:08,002.002 INFO    ] ================================================
[2026-10-25 08:53:08,017.017 INFO    ] Launching Daemon at Sun Oct 25 08:53:08 IST 2026
[2026-10-25 08:53:08,028.028 INFO    ] ================================================
[2026-10-25 08:53:08,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:53:08
[2026-10-25 08:53:09,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:53:09,623.623 INFO    ] Initializing speech engine...
[2026-10-25 08:53:09,635.635 INFO    ] 2026-10-25 08:53:09
[2026-10-25 08:53:09,908.908 INFO    ] 2026-10-25 08:53:09
[2026-10-25 08:53:09,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:53:12,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:53:12,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:53:12,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:53:12,987.987 INFO    ] time= 25/10/2026 08:53:12
[2026-10-25 08:53:12,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:53:12,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:53:13,041.041 INFO    ] No existing commands found in stream
[2026-10-25 08:53:18,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:53:18,055.055 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 08:53:19,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:53:19,485.485 INFO    ] Checking for system updates...
[2026-10-25 08:53:19,527.527 INFO    ] 200
[2026-10-25 08:53:19,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:19,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:53:19,586.586 INFO    ] No update needed
[2026-10-25 08:53:19,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 08:53:19,626.626 INFO    ] 200
[2026-10-25 08:53:19,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:19,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:53:19,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:53:19,754.754 INFO    ] No camera update needed
[2026-10-25 08:53:19,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:53:19,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:53:19,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:53:19,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:53:21,808.808 INFO    ] ================================================
[2026-10-25 08:53:21,824.824 INFO    ] Launching Daemon at Sun Oct 25 08:53:21 IST 2026
[2026-10-25 08:53:21,835.835 INFO    ] ================================================
[2026-10-25 08:53:22,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:53:22
[2026-10-25 08:53:23,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:53:23,461.461 INFO    ] Initializing speech engine...
[2026-10-25 08:53:23,467.467 INFO    ] 2026-10-25 08:53:23
[2026-10-25 08:53:23,740.740 INFO    ] 2026-10-25 08:53:23
[2026-10-25 08:53:23,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:53:24,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:53:24,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:53:24,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:53:24,251.251 INFO    ] time= 25/10/2026 08:53:24
[2026-10-25 08:53:24,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:53:24,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:53:24,448.448 INFO    ] No existing commands found in stream
[2026-10-25 08:53:29,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:53:29,483.483 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 08:53:31,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:53:31,030.030 INFO    ] Checking for system updates...
[2026-10-25 08:53:31,067.067 INFO    ] 200
[2026-10-25 08:53:31,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:31,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:53:31,125.125 INFO    ] No update needed
[2026-10-25 08:53:31,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 08:53:31,165.165 INFO    ] 200
[2026-10-25 08:53:31,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:31,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:53:31,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:53:31,389.389 INFO    ] No camera update needed
[2026-10-25 08:53:31,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:53:31,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:53:31,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:53:31,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:53:33,449.449 INFO    ] ================================================
[2026-10-25 08:53:33,464.464 INFO    ] Launching Daemon at Sun Oct 25 08:53:33 IST 2026
[2026-10-25 08:53:33,478.478 INFO    ] ================================================
[2026-10-25 08:53:34,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:53:34
[2026-10-25 08:53:34,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:53:34,945.945 INFO    ] Initializing speech engine...
[2026-10-25 08:53:34,956.956 INFO    ] 2026-10-25 08:53:34
[2026-10-25 08:53:35,226.226 INFO    ] 2026-10-25 08:53:35
[2026-10-25 08:53:35,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:53:35,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:53:35,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:53:35,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:53:35,733.733 INFO    ] time= 25/10/2026 08:53:35
[2026-10-25 08:53:35,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:53:35,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:53:35,916.916 INFO    ] No existing commands found in stream
[2026-10-25 08:53:40,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:53:40,931.931 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 08:53:44,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:53:44,363.363 INFO    ] Checking for system updates...
[2026-10-25 08:53:44,399.399 INFO    ] 200
[2026-10-25 08:53:44,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:44,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:44,457.457 INFO    ] No update needed
[2026-10-25 08:53:44,460.460 INFO    ] Checking for camera pi updates...
[2026-10-25 08:53:44,494.494 INFO    ] 200
[2026-10-25 08:53:44,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:44,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:53:44,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:44,588.588 INFO    ] No camera update needed
[2026-10-25 08:53:44,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:53:44,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:53:44,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:53:44,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:53:46,642.642 INFO    ] ================================================
[2026-10-25 08:53:46,657.657 INFO    ] Launching Daemon at Sun Oct 25 08:53:46 IST 2026
[2026-10-25 08:53:46,668.668 INFO    ] ================================================
[2026-10-25 08:53:47,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:53:47
[2026-10-25 08:53:47,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:53:48,065.065 INFO    ] Initializing speech engine...
[2026-10-25 08:53:48,088.088 INFO    ] 2026-10-25 08:53:48
[2026-10-25 08:53:48,342.342 INFO    ] 2026-10-25 08:53:48
[2026-10-25 08:53:48,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:53:48,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:53:48,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:53:48,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:53:48,730.730 INFO    ] time= 25/10/2026 08:53:48
[2026-10-25 08:53:48,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:53:48,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:53:48,885.885 INFO    ] No existing commands found in stream
[2026-10-25 08:53:53,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:53:53,913.913 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 08:53:55,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:53:55,385.385 INFO    ] Checking for system updates...
[2026-10-25 08:53:55,424.424 INFO    ] 200
[2026-10-25 08:53:55,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:55,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:55,482.482 INFO    ] No update needed
[2026-10-25 08:53:55,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 08:53:55,519.519 INFO    ] 200
[2026-10-25 08:53:55,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:53:55,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:53:55,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:53:55,641.641 INFO    ] No camera update needed
[2026-10-25 08:53:55,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:53:55,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:53:55,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:53:55,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:53:57,699.699 INFO    ] ================================================
[2026-10-25 08:53:57,714.714 INFO    ] Launching Daemon at Sun Oct 25 08:53:57 IST 2026
[2026-10-25 08:53:57,724.724 INFO    ] ================================================
[2026-10-25 08:53:58,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:53:58
[2026-10-25 08:53:58,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:53:59,120.120 INFO    ] Initializing speech engine...
[2026-10-25 08:53:59,128.128 INFO    ] 2026-10-25 08:53:59
[2026-10-25 08:53:59,422.422 INFO    ] 2026-10-25 08:53:59
[2026-10-25 08:53:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:53:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:53:59,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:53:59,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:53:59,759.759 INFO    ] time= 25/10/2026 08:53:59
[2026-10-25 08:53:59,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:53:59,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:53:59,892.892 INFO    ] No existing commands found in stream
[2026-10-25 08:54:04,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:54:04,905.905 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 08:54:09,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:54:09,325.325 INFO    ] Checking for system updates...
[2026-10-25 08:54:09,361.361 INFO    ] 200
[2026-10-25 08:54:09,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:09,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:54:09,420.420 INFO    ] No update needed
[2026-10-25 08:54:09,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 08:54:09,457.457 INFO    ] 200
[2026-10-25 08:54:09,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:09,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:54:09,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:54:09,563.563 INFO    ] No camera update needed
[2026-10-25 08:54:09,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:54:09,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:54:09,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:54:09,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:54:11,621.621 INFO    ] ================================================
[2026-10-25 08:54:11,636.636 INFO    ] Launching Daemon at Sun Oct 25 08:54:11 IST 2026
[2026-10-25 08:54:11,647.647 INFO    ] ================================================
[2026-10-25 08:54:12,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:54:12
[2026-10-25 08:54:12,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:54:13,067.067 INFO    ] Initializing speech engine...
[2026-10-25 08:54:13,085.085 INFO    ] 2026-10-25 08:54:13
[2026-10-25 08:54:13,369.369 INFO    ] 2026-10-25 08:54:13
[2026-10-25 08:54:13,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:54:13,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:54:13,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:54:13,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:54:13,979.979 INFO    ] time= 25/10/2026 08:54:13
[2026-10-25 08:54:13,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:54:14,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:54:14,140.140 INFO    ] No existing commands found in stream
[2026-10-25 08:54:19,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:54:19,163.163 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 08:54:20,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:54:20,522.522 INFO    ] Checking for system updates...
[2026-10-25 08:54:20,559.559 INFO    ] 200
[2026-10-25 08:54:20,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:20,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:54:20,618.618 INFO    ] No update needed
[2026-10-25 08:54:20,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 08:54:20,654.654 INFO    ] 200
[2026-10-25 08:54:20,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:20,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:54:20,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:54:20,746.746 INFO    ] No camera update needed
[2026-10-25 08:54:20,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:54:20,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:54:20,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:54:20,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:54:22,800.800 INFO    ] ================================================
[2026-10-25 08:54:22,815.815 INFO    ] Launching Daemon at Sun Oct 25 08:54:22 IST 2026
[2026-10-25 08:54:22,825.825 INFO    ] ================================================
[2026-10-25 08:54:23,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:54:23
[2026-10-25 08:54:23,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:54:24,223.223 INFO    ] Initializing speech engine...
[2026-10-25 08:54:24,230.230 INFO    ] 2026-10-25 08:54:24
[2026-10-25 08:54:24,504.504 INFO    ] 2026-10-25 08:54:24
[2026-10-25 08:54:24,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:54:24,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:54:24,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:54:24,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:54:24,885.885 INFO    ] time= 25/10/2026 08:54:24
[2026-10-25 08:54:24,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:54:24,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:54:24,976.976 INFO    ] No existing commands found in stream
[2026-10-25 08:54:29,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:54:29,992.992 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 08:54:33,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:54:33,458.458 INFO    ] Checking for system updates...
[2026-10-25 08:54:33,495.495 INFO    ] 200
[2026-10-25 08:54:33,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:33,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:33,555.555 INFO    ] No update needed
[2026-10-25 08:54:33,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 08:54:33,591.591 INFO    ] 200
[2026-10-25 08:54:33,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:33,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:54:33,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:33,699.699 INFO    ] No camera update needed
[2026-10-25 08:54:33,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:54:33,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:54:33,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:54:33,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:54:35,756.756 INFO    ] ================================================
[2026-10-25 08:54:35,771.771 INFO    ] Launching Daemon at Sun Oct 25 08:54:35 IST 2026
[2026-10-25 08:54:35,782.782 INFO    ] ================================================
[2026-10-25 08:54:36,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:54:36
[2026-10-25 08:54:37,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:54:37,327.327 INFO    ] Initializing speech engine...
[2026-10-25 08:54:37,351.351 INFO    ] 2026-10-25 08:54:37
[2026-10-25 08:54:37,606.606 INFO    ] 2026-10-25 08:54:37
[2026-10-25 08:54:37,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:54:37,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:54:37,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:54:37,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:54:37,983.983 INFO    ] time= 25/10/2026 08:54:37
[2026-10-25 08:54:37,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:54:38,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:54:38,147.147 INFO    ] No existing commands found in stream
[2026-10-25 08:54:43,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:54:43,175.175 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 08:54:44,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:54:44,395.395 INFO    ] Checking for system updates...
[2026-10-25 08:54:44,437.437 INFO    ] 200
[2026-10-25 08:54:44,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:44,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:44,495.495 INFO    ] No update needed
[2026-10-25 08:54:44,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 08:54:44,532.532 INFO    ] 200
[2026-10-25 08:54:44,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:44,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:54:44,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:44,639.639 INFO    ] No camera update needed
[2026-10-25 08:54:44,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:54:44,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:54:44,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:54:44,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:54:46,697.697 INFO    ] ================================================
[2026-10-25 08:54:46,713.713 INFO    ] Launching Daemon at Sun Oct 25 08:54:46 IST 2026
[2026-10-25 08:54:46,723.723 INFO    ] ================================================
[2026-10-25 08:54:47,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:54:47
[2026-10-25 08:54:48,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:54:48,403.403 INFO    ] Initializing speech engine...
[2026-10-25 08:54:48,411.411 INFO    ] 2026-10-25 08:54:48
[2026-10-25 08:54:48,742.742 INFO    ] 2026-10-25 08:54:48
[2026-10-25 08:54:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:54:48,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:54:48,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:54:49,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:54:49,186.186 INFO    ] time= 25/10/2026 08:54:49
[2026-10-25 08:54:49,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:54:49,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:54:49,333.333 INFO    ] No existing commands found in stream
[2026-10-25 08:54:54,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:54:54,370.370 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 08:54:55,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:54:55,464.464 INFO    ] Checking for system updates...
[2026-10-25 08:54:55,518.518 INFO    ] 200
[2026-10-25 08:54:55,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:55,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:55,605.605 INFO    ] No update needed
[2026-10-25 08:54:55,608.608 INFO    ] Checking for camera pi updates...
[2026-10-25 08:54:55,641.641 INFO    ] 200
[2026-10-25 08:54:55,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:54:55,689.689 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:54:55,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:54:55,736.736 INFO    ] No camera update needed
[2026-10-25 08:54:55,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:54:55,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:54:55,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:54:55,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:54:57,793.793 INFO    ] ================================================
[2026-10-25 08:54:57,808.808 INFO    ] Launching Daemon at Sun Oct 25 08:54:57 IST 2026
[2026-10-25 08:54:57,819.819 INFO    ] ================================================
[2026-10-25 08:54:58,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:54:58
[2026-10-25 08:54:59,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:54:59,479.479 INFO    ] Initializing speech engine...
[2026-10-25 08:54:59,493.493 INFO    ] 2026-10-25 08:54:59
[2026-10-25 08:54:59,818.818 INFO    ] 2026-10-25 08:54:59
[2026-10-25 08:54:59,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:55:00,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:55:00,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:55:00,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:55:00,267.267 INFO    ] time= 25/10/2026 08:55:00
[2026-10-25 08:55:00,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:55:00,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:55:00,409.409 INFO    ] No existing commands found in stream
[2026-10-25 08:55:05,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:55:05,433.433 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 08:55:09,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:55:09,814.814 INFO    ] Checking for system updates...
[2026-10-25 08:55:09,856.856 INFO    ] 200
[2026-10-25 08:55:09,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:09,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:09,916.916 INFO    ] No update needed
[2026-10-25 08:55:09,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 08:55:09,957.957 INFO    ] 200
[2026-10-25 08:55:09,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:10,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:55:10,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:10,066.066 INFO    ] No camera update needed
[2026-10-25 08:55:10,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:55:10,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:55:10,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:55:10,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:55:12,126.126 INFO    ] ================================================
[2026-10-25 08:55:12,141.141 INFO    ] Launching Daemon at Sun Oct 25 08:55:12 IST 2026
[2026-10-25 08:55:12,152.152 INFO    ] ================================================
[2026-10-25 08:55:12,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:55:12
[2026-10-25 08:55:13,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:55:13,594.594 INFO    ] Initializing speech engine...
[2026-10-25 08:55:13,602.602 INFO    ] 2026-10-25 08:55:13
[2026-10-25 08:55:13,898.898 INFO    ] 2026-10-25 08:55:13
[2026-10-25 08:55:13,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:55:14,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:55:14,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:55:14,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:55:14,812.812 INFO    ] time= 25/10/2026 08:55:14
[2026-10-25 08:55:14,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:55:14,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:55:15,009.009 INFO    ] No existing commands found in stream
[2026-10-25 08:55:20,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:55:20,025.025 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 08:55:21,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:55:21,194.194 INFO    ] Checking for system updates...
[2026-10-25 08:55:21,230.230 INFO    ] 200
[2026-10-25 08:55:21,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:21,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:55:21,288.288 INFO    ] No update needed
[2026-10-25 08:55:21,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 08:55:21,325.325 INFO    ] 200
[2026-10-25 08:55:21,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:21,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:55:21,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:55:21,428.428 INFO    ] No camera update needed
[2026-10-25 08:55:21,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:55:21,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:55:21,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:55:21,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:55:23,483.483 INFO    ] ================================================
[2026-10-25 08:55:23,498.498 INFO    ] Launching Daemon at Sun Oct 25 08:55:23 IST 2026
[2026-10-25 08:55:23,508.508 INFO    ] ================================================
[2026-10-25 08:55:24,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:55:24
[2026-10-25 08:55:24,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:55:24,942.942 INFO    ] Initializing speech engine...
[2026-10-25 08:55:24,951.951 INFO    ] 2026-10-25 08:55:24
[2026-10-25 08:55:25,197.197 INFO    ] 2026-10-25 08:55:25
[2026-10-25 08:55:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:55:25,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:55:25,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:55:25,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:55:25,671.671 INFO    ] time= 25/10/2026 08:55:25
[2026-10-25 08:55:25,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:55:25,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:55:25,816.816 INFO    ] No existing commands found in stream
[2026-10-25 08:55:30,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:55:30,830.830 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 08:55:34,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:55:34,157.157 INFO    ] Checking for system updates...
[2026-10-25 08:55:34,196.196 INFO    ] 200
[2026-10-25 08:55:34,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:34,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:34,253.253 INFO    ] No update needed
[2026-10-25 08:55:34,256.256 INFO    ] Checking for camera pi updates...
[2026-10-25 08:55:34,289.289 INFO    ] 200
[2026-10-25 08:55:34,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:34,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:55:34,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:34,381.381 INFO    ] No camera update needed
[2026-10-25 08:55:34,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:55:34,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:55:34,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:55:34,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:55:36,437.437 INFO    ] ================================================
[2026-10-25 08:55:36,452.452 INFO    ] Launching Daemon at Sun Oct 25 08:55:36 IST 2026
[2026-10-25 08:55:36,462.462 INFO    ] ================================================
[2026-10-25 08:55:37,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:55:37
[2026-10-25 08:55:37,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:55:37,972.972 INFO    ] Initializing speech engine...
[2026-10-25 08:55:37,980.980 INFO    ] 2026-10-25 08:55:37
[2026-10-25 08:55:38,287.287 INFO    ] 2026-10-25 08:55:38
[2026-10-25 08:55:38,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:55:38,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:55:38,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:55:38,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:55:38,654.654 INFO    ] time= 25/10/2026 08:55:38
[2026-10-25 08:55:38,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:55:38,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:55:38,740.740 INFO    ] No existing commands found in stream
[2026-10-25 08:55:43,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:55:43,789.789 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 08:55:48,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 08:55:48,195.195 INFO    ] Checking for system updates...
[2026-10-25 08:55:48,235.235 INFO    ] 200
[2026-10-25 08:55:48,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:48,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:48,299.299 INFO    ] No update needed
[2026-10-25 08:55:48,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 08:55:48,336.336 INFO    ] 200
[2026-10-25 08:55:48,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:55:48,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:55:48,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:55:48,441.441 INFO    ] No camera update needed
[2026-10-25 08:55:48,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:55:48,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:55:48,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:55:48,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:55:50,499.499 INFO    ] ================================================
[2026-10-25 08:55:50,515.515 INFO    ] Launching Daemon at Sun Oct 25 08:55:50 IST 2026
[2026-10-25 08:55:50,525.525 INFO    ] ================================================
[2026-10-25 08:55:51,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:55:51
[2026-10-25 08:55:51,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:55:52,009.009 INFO    ] Initializing speech engine...
[2026-10-25 08:55:52,017.017 INFO    ] 2026-10-25 08:55:52
[2026-10-25 08:55:52,269.269 INFO    ] 2026-10-25 08:55:52
[2026-10-25 08:55:52,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:55:52,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:55:52,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:55:52,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:55:52,732.732 INFO    ] time= 25/10/2026 08:55:52
[2026-10-25 08:55:52,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:55:52,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:55:52,924.924 INFO    ] No existing commands found in stream
[2026-10-25 08:55:57,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:55:57,952.952 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 08:56:02,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:56:02,272.272 INFO    ] Checking for system updates...
[2026-10-25 08:56:02,313.313 INFO    ] 200
[2026-10-25 08:56:02,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:02,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:02,381.381 INFO    ] No update needed
[2026-10-25 08:56:02,384.384 INFO    ] Checking for camera pi updates...
[2026-10-25 08:56:02,423.423 INFO    ] 200
[2026-10-25 08:56:02,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:02,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:56:02,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:02,508.508 INFO    ] No camera update needed
[2026-10-25 08:56:02,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:56:02,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:56:02,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:56:02,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:56:04,571.571 INFO    ] ================================================
[2026-10-25 08:56:04,586.586 INFO    ] Launching Daemon at Sun Oct 25 08:56:04 IST 2026
[2026-10-25 08:56:04,597.597 INFO    ] ================================================
[2026-10-25 08:56:05,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:56:05
[2026-10-25 08:56:05,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:56:06,049.049 INFO    ] Initializing speech engine...
[2026-10-25 08:56:06,059.059 INFO    ] 2026-10-25 08:56:06
[2026-10-25 08:56:06,321.321 INFO    ] 2026-10-25 08:56:06
[2026-10-25 08:56:06,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:56:06,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:56:06,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:56:06,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:56:06,807.807 INFO    ] time= 25/10/2026 08:56:06
[2026-10-25 08:56:06,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:56:06,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:56:06,930.930 INFO    ] No existing commands found in stream
[2026-10-25 08:56:11,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:56:11,963.963 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 08:56:15,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:56:15,388.388 INFO    ] Checking for system updates...
[2026-10-25 08:56:15,429.429 INFO    ] 200
[2026-10-25 08:56:15,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:15,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:15,497.497 INFO    ] No update needed
[2026-10-25 08:56:15,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 08:56:15,534.534 INFO    ] 200
[2026-10-25 08:56:15,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:15,577.577 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:56:15,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:15,631.631 INFO    ] No camera update needed
[2026-10-25 08:56:15,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:56:15,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:56:15,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:56:15,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:56:17,690.690 INFO    ] ================================================
[2026-10-25 08:56:17,705.705 INFO    ] Launching Daemon at Sun Oct 25 08:56:17 IST 2026
[2026-10-25 08:56:17,715.715 INFO    ] ================================================
[2026-10-25 08:56:18,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:56:18
[2026-10-25 08:56:18,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:56:19,132.132 INFO    ] Initializing speech engine...
[2026-10-25 08:56:19,144.144 INFO    ] 2026-10-25 08:56:19
[2026-10-25 08:56:19,390.390 INFO    ] 2026-10-25 08:56:19
[2026-10-25 08:56:19,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:56:19,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:56:19,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:56:19,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:56:19,858.858 INFO    ] time= 25/10/2026 08:56:19
[2026-10-25 08:56:19,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:56:19,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:56:20,012.012 INFO    ] No existing commands found in stream
[2026-10-25 08:56:25,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:56:25,047.047 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 08:56:27,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 08:56:27,917.917 INFO    ] Checking for system updates...
[2026-10-25 08:56:27,958.958 INFO    ] 200
[2026-10-25 08:56:27,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:28,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:56:28,025.025 INFO    ] No update needed
[2026-10-25 08:56:28,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 08:56:28,066.066 INFO    ] 200
[2026-10-25 08:56:28,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:28,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:56:28,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:56:28,170.170 INFO    ] No camera update needed
[2026-10-25 08:56:28,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:56:28,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:56:28,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:56:28,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:56:30,229.229 INFO    ] ================================================
[2026-10-25 08:56:30,244.244 INFO    ] Launching Daemon at Sun Oct 25 08:56:30 IST 2026
[2026-10-25 08:56:30,255.255 INFO    ] ================================================
[2026-10-25 08:56:30,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:56:30
[2026-10-25 08:56:31,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:56:31,712.712 INFO    ] Initializing speech engine...
[2026-10-25 08:56:31,721.721 INFO    ] 2026-10-25 08:56:31
[2026-10-25 08:56:31,989.989 INFO    ] 2026-10-25 08:56:31
[2026-10-25 08:56:32,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:56:32,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:56:32,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:56:32,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:56:32,374.374 INFO    ] time= 25/10/2026 08:56:32
[2026-10-25 08:56:32,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:56:32,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:56:32,564.564 INFO    ] No existing commands found in stream
[2026-10-25 08:56:37,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:56:37,593.593 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 08:56:39,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:56:39,855.855 INFO    ] Checking for system updates...
[2026-10-25 08:56:39,891.891 INFO    ] 200
[2026-10-25 08:56:39,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:39,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:39,952.952 INFO    ] No update needed
[2026-10-25 08:56:39,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 08:56:39,989.989 INFO    ] 200
[2026-10-25 08:56:39,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:40,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:56:40,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:56:40,088.088 INFO    ] No camera update needed
[2026-10-25 08:56:40,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:56:40,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:56:40,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:56:40,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:56:42,143.143 INFO    ] ================================================
[2026-10-25 08:56:42,158.158 INFO    ] Launching Daemon at Sun Oct 25 08:56:42 IST 2026
[2026-10-25 08:56:42,169.169 INFO    ] ================================================
[2026-10-25 08:56:42,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:56:42
[2026-10-25 08:56:43,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:56:43,579.579 INFO    ] Initializing speech engine...
[2026-10-25 08:56:43,585.585 INFO    ] 2026-10-25 08:56:43
[2026-10-25 08:56:43,855.855 INFO    ] 2026-10-25 08:56:43
[2026-10-25 08:56:43,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:56:45,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:56:45,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:56:45,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:56:45,731.731 INFO    ] time= 25/10/2026 08:56:45
[2026-10-25 08:56:45,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:56:45,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:56:45,804.804 INFO    ] No existing commands found in stream
[2026-10-25 08:56:50,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:56:50,817.817 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 08:56:51,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:56:51,843.843 INFO    ] Checking for system updates...
[2026-10-25 08:56:51,878.878 INFO    ] 200
[2026-10-25 08:56:51,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:51,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:56:51,937.937 INFO    ] No update needed
[2026-10-25 08:56:51,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 08:56:51,974.974 INFO    ] 200
[2026-10-25 08:56:51,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:56:52,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:56:52,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:56:52,078.078 INFO    ] No camera update needed
[2026-10-25 08:56:52,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:56:52,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:56:52,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:56:52,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:56:54,134.134 INFO    ] ================================================
[2026-10-25 08:56:54,149.149 INFO    ] Launching Daemon at Sun Oct 25 08:56:54 IST 2026
[2026-10-25 08:56:54,161.161 INFO    ] ================================================
[2026-10-25 08:56:54,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:56:54
[2026-10-25 08:56:55,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:56:55,645.645 INFO    ] Initializing speech engine...
[2026-10-25 08:56:55,661.661 INFO    ] 2026-10-25 08:56:55
[2026-10-25 08:56:55,943.943 INFO    ] 2026-10-25 08:56:55
[2026-10-25 08:56:55,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:56:56,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:56:56,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:56:56,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:56:56,351.351 INFO    ] time= 25/10/2026 08:56:56
[2026-10-25 08:56:56,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:56:56,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:56:56,513.513 INFO    ] No existing commands found in stream
[2026-10-25 08:57:01,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:57:01,528.528 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 08:57:02,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:57:02,410.410 INFO    ] Checking for system updates...
[2026-10-25 08:57:02,454.454 INFO    ] 200
[2026-10-25 08:57:02,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:02,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:57:02,528.528 INFO    ] No update needed
[2026-10-25 08:57:02,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 08:57:02,575.575 INFO    ] 200
[2026-10-25 08:57:02,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:02,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:57:02,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:57:02,670.670 INFO    ] No camera update needed
[2026-10-25 08:57:02,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:57:02,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:57:02,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:57:02,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:57:04,738.738 INFO    ] ================================================
[2026-10-25 08:57:04,754.754 INFO    ] Launching Daemon at Sun Oct 25 08:57:04 IST 2026
[2026-10-25 08:57:04,764.764 INFO    ] ================================================
[2026-10-25 08:57:05,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:57:05
[2026-10-25 08:57:05,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:57:06,167.167 INFO    ] Initializing speech engine...
[2026-10-25 08:57:06,187.187 INFO    ] 2026-10-25 08:57:06
[2026-10-25 08:57:06,442.442 INFO    ] 2026-10-25 08:57:06
[2026-10-25 08:57:06,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:57:06,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:57:06,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:57:06,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:57:06,936.936 INFO    ] time= 25/10/2026 08:57:06
[2026-10-25 08:57:06,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:57:07,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:57:07,087.087 INFO    ] No existing commands found in stream
[2026-10-25 08:57:12,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:57:12,125.125 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 08:57:16,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:57:16,050.050 INFO    ] Checking for system updates...
[2026-10-25 08:57:16,087.087 INFO    ] 200
[2026-10-25 08:57:16,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:16,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:57:16,148.148 INFO    ] No update needed
[2026-10-25 08:57:16,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 08:57:16,188.188 INFO    ] 200
[2026-10-25 08:57:16,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:16,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:57:16,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:57:16,286.286 INFO    ] No camera update needed
[2026-10-25 08:57:16,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:57:16,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:57:16,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:57:16,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:57:18,351.351 INFO    ] ================================================
[2026-10-25 08:57:18,367.367 INFO    ] Launching Daemon at Sun Oct 25 08:57:18 IST 2026
[2026-10-25 08:57:18,378.378 INFO    ] ================================================
[2026-10-25 08:57:18,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:57:18
[2026-10-25 08:57:19,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:57:19,827.827 INFO    ] Initializing speech engine...
[2026-10-25 08:57:19,837.837 INFO    ] 2026-10-25 08:57:19
[2026-10-25 08:57:20,084.084 INFO    ] 2026-10-25 08:57:20
[2026-10-25 08:57:20,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:57:20,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:57:20,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:57:20,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:57:20,573.573 INFO    ] time= 25/10/2026 08:57:20
[2026-10-25 08:57:20,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:57:20,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:57:20,701.701 INFO    ] No existing commands found in stream
[2026-10-25 08:57:25,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:57:25,715.715 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 08:57:29,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:57:29,014.014 INFO    ] Checking for system updates...
[2026-10-25 08:57:29,050.050 INFO    ] 200
[2026-10-25 08:57:29,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:29,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:29,108.108 INFO    ] No update needed
[2026-10-25 08:57:29,110.110 INFO    ] Checking for camera pi updates...
[2026-10-25 08:57:29,147.147 INFO    ] 200
[2026-10-25 08:57:29,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:29,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:57:29,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:29,241.241 INFO    ] No camera update needed
[2026-10-25 08:57:29,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:57:29,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:57:29,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:57:29,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:57:31,296.296 INFO    ] ================================================
[2026-10-25 08:57:31,312.312 INFO    ] Launching Daemon at Sun Oct 25 08:57:31 IST 2026
[2026-10-25 08:57:31,324.324 INFO    ] ================================================
[2026-10-25 08:57:31,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:57:31
[2026-10-25 08:57:32,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:57:32,837.837 INFO    ] Initializing speech engine...
[2026-10-25 08:57:32,842.842 INFO    ] 2026-10-25 08:57:32
[2026-10-25 08:57:33,127.127 INFO    ] 2026-10-25 08:57:33
[2026-10-25 08:57:33,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:57:33,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:57:33,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:57:33,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:57:33,537.537 INFO    ] time= 25/10/2026 08:57:33
[2026-10-25 08:57:33,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:57:33,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:57:33,692.692 INFO    ] No existing commands found in stream
[2026-10-25 08:57:38,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:57:38,725.725 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 08:57:39,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:57:39,304.304 INFO    ] Checking for system updates...
[2026-10-25 08:57:39,341.341 INFO    ] 200
[2026-10-25 08:57:39,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:39,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:39,398.398 INFO    ] No update needed
[2026-10-25 08:57:39,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 08:57:39,434.434 INFO    ] 200
[2026-10-25 08:57:39,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:39,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:57:39,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:39,533.533 INFO    ] No camera update needed
[2026-10-25 08:57:39,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:57:39,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:57:39,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:57:39,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:57:41,588.588 INFO    ] ================================================
[2026-10-25 08:57:41,604.604 INFO    ] Launching Daemon at Sun Oct 25 08:57:41 IST 2026
[2026-10-25 08:57:41,615.615 INFO    ] ================================================
[2026-10-25 08:57:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:57:42
[2026-10-25 08:57:42,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:57:43,056.056 INFO    ] Initializing speech engine...
[2026-10-25 08:57:43,064.064 INFO    ] 2026-10-25 08:57:43
[2026-10-25 08:57:43,335.335 INFO    ] 2026-10-25 08:57:43
[2026-10-25 08:57:43,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:57:45,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:57:45,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:57:46,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:57:46,127.127 INFO    ] time= 25/10/2026 08:57:46
[2026-10-25 08:57:46,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:57:46,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:57:46,185.185 INFO    ] No existing commands found in stream
[2026-10-25 08:57:51,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:57:51,198.198 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 08:57:51,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:57:51,993.993 INFO    ] Checking for system updates...
[2026-10-25 08:57:52,034.034 INFO    ] 200
[2026-10-25 08:57:52,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:52,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:52,095.095 INFO    ] No update needed
[2026-10-25 08:57:52,098.098 INFO    ] Checking for camera pi updates...
[2026-10-25 08:57:52,133.133 INFO    ] 200
[2026-10-25 08:57:52,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:57:52,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:57:52,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:57:52,233.233 INFO    ] No camera update needed
[2026-10-25 08:57:52,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:57:52,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:57:52,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:57:52,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:57:54,293.293 INFO    ] ================================================
[2026-10-25 08:57:54,308.308 INFO    ] Launching Daemon at Sun Oct 25 08:57:54 IST 2026
[2026-10-25 08:57:54,320.320 INFO    ] ================================================
[2026-10-25 08:57:54,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:57:54
[2026-10-25 08:57:55,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:57:55,776.776 INFO    ] Initializing speech engine...
[2026-10-25 08:57:55,796.796 INFO    ] 2026-10-25 08:57:55
[2026-10-25 08:57:56,048.048 INFO    ] 2026-10-25 08:57:56
[2026-10-25 08:57:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:57:56,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:57:56,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:57:56,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:57:56,441.441 INFO    ] time= 25/10/2026 08:57:56
[2026-10-25 08:57:56,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:57:56,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:57:56,548.548 INFO    ] No existing commands found in stream
[2026-10-25 08:58:01,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:58:01,569.569 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 08:58:03,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:58:03,638.638 INFO    ] Checking for system updates...
[2026-10-25 08:58:03,682.682 INFO    ] 200
[2026-10-25 08:58:03,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:03,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:58:03,758.758 INFO    ] No update needed
[2026-10-25 08:58:03,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 08:58:03,813.813 INFO    ] 200
[2026-10-25 08:58:03,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:03,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:58:03,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:58:03,920.920 INFO    ] No camera update needed
[2026-10-25 08:58:03,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:58:03,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:58:03,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:58:03,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:58:05,979.979 INFO    ] ================================================
[2026-10-25 08:58:06,995.995 INFO    ] Launching Daemon at Sun Oct 25 08:58:05 IST 2026
[2026-10-25 08:58:06,007.007 INFO    ] ================================================
[2026-10-25 08:58:06,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:58:06
[2026-10-25 08:58:07,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:58:07,438.438 INFO    ] Initializing speech engine...
[2026-10-25 08:58:07,447.447 INFO    ] 2026-10-25 08:58:07
[2026-10-25 08:58:07,696.696 INFO    ] 2026-10-25 08:58:07
[2026-10-25 08:58:07,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:58:07,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:58:07,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:58:08,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:58:08,047.047 INFO    ] time= 25/10/2026 08:58:08
[2026-10-25 08:58:08,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:58:08,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:58:08,146.146 INFO    ] No existing commands found in stream
[2026-10-25 08:58:13,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:58:13,161.161 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 08:58:16,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:58:16,457.457 INFO    ] Checking for system updates...
[2026-10-25 08:58:16,496.496 INFO    ] 200
[2026-10-25 08:58:16,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:16,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:16,561.561 INFO    ] No update needed
[2026-10-25 08:58:16,564.564 INFO    ] Checking for camera pi updates...
[2026-10-25 08:58:16,600.600 INFO    ] 200
[2026-10-25 08:58:16,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:16,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:58:16,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:16,697.697 INFO    ] No camera update needed
[2026-10-25 08:58:16,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:58:16,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:58:16,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:58:16,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:58:18,757.757 INFO    ] ================================================
[2026-10-25 08:58:18,773.773 INFO    ] Launching Daemon at Sun Oct 25 08:58:18 IST 2026
[2026-10-25 08:58:18,784.784 INFO    ] ================================================
[2026-10-25 08:58:19,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:58:19
[2026-10-25 08:58:19,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:58:20,205.205 INFO    ] Initializing speech engine...
[2026-10-25 08:58:20,218.218 INFO    ] 2026-10-25 08:58:20
[2026-10-25 08:58:20,500.500 INFO    ] 2026-10-25 08:58:20
[2026-10-25 08:58:20,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:58:20,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:58:20,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:58:20,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:58:20,915.915 INFO    ] time= 25/10/2026 08:58:20
[2026-10-25 08:58:20,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:58:20,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:58:21,086.086 INFO    ] No existing commands found in stream
[2026-10-25 08:58:26,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:58:26,108.108 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 08:58:30,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:58:30,022.022 INFO    ] Checking for system updates...
[2026-10-25 08:58:30,058.058 INFO    ] 200
[2026-10-25 08:58:30,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:30,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:58:30,117.117 INFO    ] No update needed
[2026-10-25 08:58:30,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 08:58:30,154.154 INFO    ] 200
[2026-10-25 08:58:30,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:30,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:58:30,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:58:30,253.253 INFO    ] No camera update needed
[2026-10-25 08:58:30,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:58:30,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:58:30,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:58:30,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:58:32,312.312 INFO    ] ================================================
[2026-10-25 08:58:32,328.328 INFO    ] Launching Daemon at Sun Oct 25 08:58:32 IST 2026
[2026-10-25 08:58:32,339.339 INFO    ] ================================================
[2026-10-25 08:58:32,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:58:32
[2026-10-25 08:58:33,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:58:33,890.890 INFO    ] Initializing speech engine...
[2026-10-25 08:58:33,899.899 INFO    ] 2026-10-25 08:58:33
[2026-10-25 08:58:34,157.157 INFO    ] 2026-10-25 08:58:34
[2026-10-25 08:58:34,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:58:34,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:58:34,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:58:34,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:58:34,593.593 INFO    ] time= 25/10/2026 08:58:34
[2026-10-25 08:58:34,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:58:34,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:58:34,774.774 INFO    ] No existing commands found in stream
[2026-10-25 08:58:39,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:58:39,814.814 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 08:58:46,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:58:46,678.678 INFO    ] Checking for system updates...
[2026-10-25 08:58:46,714.714 INFO    ] 200
[2026-10-25 08:58:46,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:46,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:46,773.773 INFO    ] No update needed
[2026-10-25 08:58:46,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 08:58:46,810.810 INFO    ] 200
[2026-10-25 08:58:46,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:46,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:58:46,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:46,910.910 INFO    ] No camera update needed
[2026-10-25 08:58:46,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:58:46,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:58:46,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:58:46,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:58:48,965.965 INFO    ] ================================================
[2026-10-25 08:58:48,980.980 INFO    ] Launching Daemon at Sun Oct 25 08:58:48 IST 2026
[2026-10-25 08:58:48,991.991 INFO    ] ================================================
[2026-10-25 08:58:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:58:49
[2026-10-25 08:58:50,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:58:50,402.402 INFO    ] Initializing speech engine...
[2026-10-25 08:58:50,414.414 INFO    ] 2026-10-25 08:58:50
[2026-10-25 08:58:50,659.659 INFO    ] 2026-10-25 08:58:50
[2026-10-25 08:58:50,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:58:50,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:58:50,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:58:51,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:58:51,121.121 INFO    ] time= 25/10/2026 08:58:51
[2026-10-25 08:58:51,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:58:51,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:58:51,273.273 INFO    ] No existing commands found in stream
[2026-10-25 08:58:56,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:58:56,287.287 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 08:58:59,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 08:58:59,722.722 INFO    ] Checking for system updates...
[2026-10-25 08:58:59,758.758 INFO    ] 200
[2026-10-25 08:58:59,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:59,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:59,823.823 INFO    ] No update needed
[2026-10-25 08:58:59,825.825 INFO    ] Checking for camera pi updates...
[2026-10-25 08:58:59,863.863 INFO    ] 200
[2026-10-25 08:58:59,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:58:59,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:58:59,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:58:59,964.964 INFO    ] No camera update needed
[2026-10-25 08:58:59,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:58:59,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:58:59,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:58:59,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:59:02,034.034 INFO    ] ================================================
[2026-10-25 08:59:02,078.078 INFO    ] Launching Daemon at Sun Oct 25 08:59:02 IST 2026
[2026-10-25 08:59:02,093.093 INFO    ] ================================================
[2026-10-25 08:59:02,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:59:02
[2026-10-25 08:59:03,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:59:03,668.668 INFO    ] Initializing speech engine...
[2026-10-25 08:59:03,689.689 INFO    ] 2026-10-25 08:59:03
[2026-10-25 08:59:03,985.985 INFO    ] 2026-10-25 08:59:03
[2026-10-25 08:59:04,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:59:04,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:59:04,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:59:04,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:59:04,328.328 INFO    ] time= 25/10/2026 08:59:04
[2026-10-25 08:59:04,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:59:04,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:59:04,442.442 INFO    ] No existing commands found in stream
[2026-10-25 08:59:09,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:59:09,459.459 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 08:59:11,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:59:11,217.217 INFO    ] Checking for system updates...
[2026-10-25 08:59:11,253.253 INFO    ] 200
[2026-10-25 08:59:11,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:11,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:11,312.312 INFO    ] No update needed
[2026-10-25 08:59:11,315.315 INFO    ] Checking for camera pi updates...
[2026-10-25 08:59:11,350.350 INFO    ] 200
[2026-10-25 08:59:11,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:11,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:59:11,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:11,445.445 INFO    ] No camera update needed
[2026-10-25 08:59:11,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:59:11,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:59:11,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:59:11,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:59:13,499.499 INFO    ] ================================================
[2026-10-25 08:59:13,514.514 INFO    ] Launching Daemon at Sun Oct 25 08:59:13 IST 2026
[2026-10-25 08:59:13,525.525 INFO    ] ================================================
[2026-10-25 08:59:14,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:59:14
[2026-10-25 08:59:14,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:59:15,116.116 INFO    ] Initializing speech engine...
[2026-10-25 08:59:15,125.125 INFO    ] 2026-10-25 08:59:15
[2026-10-25 08:59:15,411.411 INFO    ] 2026-10-25 08:59:15
[2026-10-25 08:59:15,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:59:16,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:59:16,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:59:16,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:59:16,855.855 INFO    ] time= 25/10/2026 08:59:16
[2026-10-25 08:59:16,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:59:16,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:59:16,971.971 INFO    ] No existing commands found in stream
[2026-10-25 08:59:21,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:59:21,986.986 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 08:59:25,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 08:59:25,673.673 INFO    ] Checking for system updates...
[2026-10-25 08:59:25,713.713 INFO    ] 200
[2026-10-25 08:59:25,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:25,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:25,773.773 INFO    ] No update needed
[2026-10-25 08:59:25,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 08:59:25,810.810 INFO    ] 200
[2026-10-25 08:59:25,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:25,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:59:25,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:25,906.906 INFO    ] No camera update needed
[2026-10-25 08:59:25,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:59:25,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:59:25,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:59:25,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:59:27,964.964 INFO    ] ================================================
[2026-10-25 08:59:27,993.993 INFO    ] Launching Daemon at Sun Oct 25 08:59:27 IST 2026
[2026-10-25 08:59:28,004.004 INFO    ] ================================================
[2026-10-25 08:59:28,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:59:28
[2026-10-25 08:59:29,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:59:29,402.402 INFO    ] Initializing speech engine...
[2026-10-25 08:59:29,410.410 INFO    ] 2026-10-25 08:59:29
[2026-10-25 08:59:29,700.700 INFO    ] 2026-10-25 08:59:29
[2026-10-25 08:59:29,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:59:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:59:29,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:59:30,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:59:30,084.084 INFO    ] time= 25/10/2026 08:59:30
[2026-10-25 08:59:30,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:59:30,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:59:30,195.195 INFO    ] No existing commands found in stream
[2026-10-25 08:59:35,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:59:35,210.210 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 08:59:38,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 08:59:38,906.906 INFO    ] Checking for system updates...
[2026-10-25 08:59:38,945.945 INFO    ] 200
[2026-10-25 08:59:38,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:39,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:59:39,003.003 INFO    ] No update needed
[2026-10-25 08:59:39,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 08:59:39,041.041 INFO    ] 200
[2026-10-25 08:59:39,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:39,086.086 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:59:39,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 08:59:39,224.224 INFO    ] No camera update needed
[2026-10-25 08:59:39,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:59:39,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:59:39,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:59:39,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:59:41,282.282 INFO    ] ================================================
[2026-10-25 08:59:41,298.298 INFO    ] Launching Daemon at Sun Oct 25 08:59:41 IST 2026
[2026-10-25 08:59:41,309.309 INFO    ] ================================================
[2026-10-25 08:59:41,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:59:41
[2026-10-25 08:59:42,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:59:42,759.759 INFO    ] Initializing speech engine...
[2026-10-25 08:59:42,766.766 INFO    ] 2026-10-25 08:59:42
[2026-10-25 08:59:43,038.038 INFO    ] 2026-10-25 08:59:43
[2026-10-25 08:59:43,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:59:43,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:59:43,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:59:43,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:59:43,568.568 INFO    ] time= 25/10/2026 08:59:43
[2026-10-25 08:59:43,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:59:43,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:59:43,707.707 INFO    ] No existing commands found in stream
[2026-10-25 08:59:48,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 08:59:48,736.736 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 08:59:51,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 08:59:51,877.877 INFO    ] Checking for system updates...
[2026-10-25 08:59:51,927.927 INFO    ] 200
[2026-10-25 08:59:51,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:51,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:51,985.985 INFO    ] No update needed
[2026-10-25 08:59:51,987.987 INFO    ] Checking for camera pi updates...
[2026-10-25 08:59:52,021.021 INFO    ] 200
[2026-10-25 08:59:52,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 08:59:52,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 08:59:52,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 08:59:52,118.118 INFO    ] No camera update needed
[2026-10-25 08:59:52,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 08:59:52,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 08:59:52,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 08:59:52,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 08:59:54,174.174 INFO    ] ================================================
[2026-10-25 08:59:54,190.190 INFO    ] Launching Daemon at Sun Oct 25 08:59:54 IST 2026
[2026-10-25 08:59:54,201.201 INFO    ] ================================================
[2026-10-25 08:59:54,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 08:59:54
[2026-10-25 08:59:55,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 08:59:55,648.648 INFO    ] Initializing speech engine...
[2026-10-25 08:59:55,659.659 INFO    ] 2026-10-25 08:59:55
[2026-10-25 08:59:55,918.918 INFO    ] 2026-10-25 08:59:55
[2026-10-25 08:59:55,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 08:59:56,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 08:59:56,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 08:59:56,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 08:59:56,376.376 INFO    ] time= 25/10/2026 08:59:56
[2026-10-25 08:59:56,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 08:59:56,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 08:59:56,521.521 INFO    ] No existing commands found in stream
[2026-10-25 09:00:01,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:01,536.536 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 09:00:02,207.207 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 09:00:02,428.428 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d91770>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-10-25 09:00:02,483.483 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d91770>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-10-25 09:00:02,517.517 INFO    ] None
[2026-10-25 09:00:02,523.523 INFO    ] Checking for system updates...
[2026-10-25 09:00:02,972.972 INFO    ] 200
[2026-10-25 09:00:02,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:03,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:03,302.302 INFO    ] No update needed
[2026-10-25 09:00:03,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 09:00:03,559.559 INFO    ] 200
[2026-10-25 09:00:03,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:03,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:00:04,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:04,154.154 INFO    ] No camera update needed
[2026-10-25 09:00:04,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:00:04,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:00:04,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:00:04,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:00:06,337.337 INFO    ] ================================================
[2026-10-25 09:00:06,373.373 INFO    ] Launching Daemon at Sun Oct 25 09:00:06 IST 2026
[2026-10-25 09:00:06,388.388 INFO    ] ================================================
[2026-10-25 09:00:07,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:00:07
[2026-10-25 09:00:07,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:00:07,890.890 INFO    ] Initializing speech engine...
[2026-10-25 09:00:07,910.910 INFO    ] 2026-10-25 09:00:07
[2026-10-25 09:00:08,176.176 INFO    ] 2026-10-25 09:00:08
[2026-10-25 09:00:08,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:00:08,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:00:08,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:00:08,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:00:08,561.561 INFO    ] time= 25/10/2026 09:00:08
[2026-10-25 09:00:08,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:00:08,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:00:08,732.732 INFO    ] No existing commands found in stream
[2026-10-25 09:00:13,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:13,765.765 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 09:00:17,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:00:17,674.674 INFO    ] Checking for system updates...
[2026-10-25 09:00:17,711.711 INFO    ] 200
[2026-10-25 09:00:17,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:17,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:00:17,770.770 INFO    ] No update needed
[2026-10-25 09:00:17,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 09:00:17,807.807 INFO    ] 200
[2026-10-25 09:00:17,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:17,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:00:17,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:00:17,902.902 INFO    ] No camera update needed
[2026-10-25 09:00:17,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:00:17,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:00:17,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:00:17,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:00:19,958.958 INFO    ] ================================================
[2026-10-25 09:00:19,973.973 INFO    ] Launching Daemon at Sun Oct 25 09:00:19 IST 2026
[2026-10-25 09:00:19,983.983 INFO    ] ================================================
[2026-10-25 09:00:20,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:00:20
[2026-10-25 09:00:21,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:00:21,478.478 INFO    ] Initializing speech engine...
[2026-10-25 09:00:21,487.487 INFO    ] 2026-10-25 09:00:21
[2026-10-25 09:00:21,734.734 INFO    ] 2026-10-25 09:00:21
[2026-10-25 09:00:21,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:00:22,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:00:22,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:00:22,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:00:22,199.199 INFO    ] time= 25/10/2026 09:00:22
[2026-10-25 09:00:22,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:00:22,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:00:22,356.356 INFO    ] No existing commands found in stream
[2026-10-25 09:00:27,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:27,371.371 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 09:00:28,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:00:28,104.104 INFO    ] Checking for system updates...
[2026-10-25 09:00:28,141.141 INFO    ] 200
[2026-10-25 09:00:28,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:28,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:00:28,199.199 INFO    ] No update needed
[2026-10-25 09:00:28,201.201 INFO    ] Checking for camera pi updates...
[2026-10-25 09:00:28,236.236 INFO    ] 200
[2026-10-25 09:00:28,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:28,278.278 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:00:28,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:00:28,334.334 INFO    ] No camera update needed
[2026-10-25 09:00:28,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:00:28,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:00:28,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:00:28,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:00:30,443.443 INFO    ] ================================================
[2026-10-25 09:00:30,458.458 INFO    ] Launching Daemon at Sun Oct 25 09:00:30 IST 2026
[2026-10-25 09:00:30,468.468 INFO    ] ================================================
[2026-10-25 09:00:31,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:00:31
[2026-10-25 09:00:31,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:00:32,073.073 INFO    ] Initializing speech engine...
[2026-10-25 09:00:32,087.087 INFO    ] 2026-10-25 09:00:32
[2026-10-25 09:00:32,393.393 INFO    ] 2026-10-25 09:00:32
[2026-10-25 09:00:32,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:00:32,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:00:32,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:00:32,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:00:32,918.918 INFO    ] time= 25/10/2026 09:00:32
[2026-10-25 09:00:32,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:00:32,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:00:33,077.077 INFO    ] No existing commands found in stream
[2026-10-25 09:00:38,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:38,120.120 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 09:00:38,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:00:38,684.684 INFO    ] Checking for system updates...
[2026-10-25 09:00:38,721.721 INFO    ] 200
[2026-10-25 09:00:38,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:38,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:38,779.779 INFO    ] No update needed
[2026-10-25 09:00:38,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 09:00:38,820.820 INFO    ] 200
[2026-10-25 09:00:38,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:38,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:00:38,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:38,926.926 INFO    ] No camera update needed
[2026-10-25 09:00:38,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:00:38,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:00:38,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:00:38,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:00:40,981.981 INFO    ] ================================================
[2026-10-25 09:00:41,996.996 INFO    ] Launching Daemon at Sun Oct 25 09:00:40 IST 2026
[2026-10-25 09:00:41,006.006 INFO    ] ================================================
[2026-10-25 09:00:41,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:00:41
[2026-10-25 09:00:42,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:00:42,458.458 INFO    ] Initializing speech engine...
[2026-10-25 09:00:42,466.466 INFO    ] 2026-10-25 09:00:42
[2026-10-25 09:00:42,728.728 INFO    ] 2026-10-25 09:00:42
[2026-10-25 09:00:42,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:00:43,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:00:43,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:00:43,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:00:43,192.192 INFO    ] time= 25/10/2026 09:00:43
[2026-10-25 09:00:43,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:00:43,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:00:43,334.334 INFO    ] No existing commands found in stream
[2026-10-25 09:00:48,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:48,346.346 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 09:00:49,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:00:49,362.362 INFO    ] Checking for system updates...
[2026-10-25 09:00:49,402.402 INFO    ] 200
[2026-10-25 09:00:49,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:49,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:49,460.460 INFO    ] No update needed
[2026-10-25 09:00:49,462.462 INFO    ] Checking for camera pi updates...
[2026-10-25 09:00:49,501.501 INFO    ] 200
[2026-10-25 09:00:49,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:00:49,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:00:49,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:00:49,594.594 INFO    ] No camera update needed
[2026-10-25 09:00:49,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:00:49,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:00:49,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:00:49,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:00:51,651.651 INFO    ] ================================================
[2026-10-25 09:00:51,666.666 INFO    ] Launching Daemon at Sun Oct 25 09:00:51 IST 2026
[2026-10-25 09:00:51,677.677 INFO    ] ================================================
[2026-10-25 09:00:52,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:00:52
[2026-10-25 09:00:52,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:00:53,112.112 INFO    ] Initializing speech engine...
[2026-10-25 09:00:53,120.120 INFO    ] 2026-10-25 09:00:53
[2026-10-25 09:00:53,370.370 INFO    ] 2026-10-25 09:00:53
[2026-10-25 09:00:53,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:00:53,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:00:53,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:00:53,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:00:53,748.748 INFO    ] time= 25/10/2026 09:00:53
[2026-10-25 09:00:53,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:00:53,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:00:53,921.921 INFO    ] No existing commands found in stream
[2026-10-25 09:00:58,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:00:58,955.955 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 09:01:01,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:01:01,569.569 INFO    ] Checking for system updates...
[2026-10-25 09:01:01,609.609 INFO    ] 200
[2026-10-25 09:01:01,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:01,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:01,667.667 INFO    ] No update needed
[2026-10-25 09:01:01,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 09:01:01,708.708 INFO    ] 200
[2026-10-25 09:01:01,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:01,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:01:01,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:01,794.794 INFO    ] No camera update needed
[2026-10-25 09:01:01,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:01:01,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:01:01,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:01:01,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:01:03,853.853 INFO    ] ================================================
[2026-10-25 09:01:03,869.869 INFO    ] Launching Daemon at Sun Oct 25 09:01:03 IST 2026
[2026-10-25 09:01:03,882.882 INFO    ] ================================================
[2026-10-25 09:01:04,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:01:04
[2026-10-25 09:01:05,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:01:05,304.304 INFO    ] Initializing speech engine...
[2026-10-25 09:01:05,326.326 INFO    ] 2026-10-25 09:01:05
[2026-10-25 09:01:05,586.586 INFO    ] 2026-10-25 09:01:05
[2026-10-25 09:01:05,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:01:05,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:01:05,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:01:05,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:01:05,963.963 INFO    ] time= 25/10/2026 09:01:05
[2026-10-25 09:01:05,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:01:06,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:01:06,131.131 INFO    ] No existing commands found in stream
[2026-10-25 09:01:11,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:01:11,158.158 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 09:01:13,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:01:13,712.712 INFO    ] Checking for system updates...
[2026-10-25 09:01:13,753.753 INFO    ] 200
[2026-10-25 09:01:13,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:13,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:13,818.818 INFO    ] No update needed
[2026-10-25 09:01:13,820.820 INFO    ] Checking for camera pi updates...
[2026-10-25 09:01:13,858.858 INFO    ] 200
[2026-10-25 09:01:13,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:13,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:01:13,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:13,955.955 INFO    ] No camera update needed
[2026-10-25 09:01:13,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:01:13,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:01:13,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:01:13,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:01:16,012.012 INFO    ] ================================================
[2026-10-25 09:01:16,027.027 INFO    ] Launching Daemon at Sun Oct 25 09:01:16 IST 2026
[2026-10-25 09:01:16,038.038 INFO    ] ================================================
[2026-10-25 09:01:16,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:01:16
[2026-10-25 09:01:17,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:01:17,482.482 INFO    ] Initializing speech engine...
[2026-10-25 09:01:17,488.488 INFO    ] 2026-10-25 09:01:17
[2026-10-25 09:01:17,788.788 INFO    ] 2026-10-25 09:01:17
[2026-10-25 09:01:17,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:01:18,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:01:18,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:01:18,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:01:18,597.597 INFO    ] time= 25/10/2026 09:01:18
[2026-10-25 09:01:18,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:01:18,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:01:18,789.789 INFO    ] No existing commands found in stream
[2026-10-25 09:01:23,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:01:23,812.812 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 09:01:24,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:01:24,387.387 INFO    ] Checking for system updates...
[2026-10-25 09:01:24,423.423 INFO    ] 200
[2026-10-25 09:01:24,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:24,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:24,483.483 INFO    ] No update needed
[2026-10-25 09:01:24,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 09:01:24,526.526 INFO    ] 200
[2026-10-25 09:01:24,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:24,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:01:24,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:01:24,633.633 INFO    ] No camera update needed
[2026-10-25 09:01:24,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:01:24,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:01:24,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:01:24,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:01:26,699.699 INFO    ] ================================================
[2026-10-25 09:01:26,714.714 INFO    ] Launching Daemon at Sun Oct 25 09:01:26 IST 2026
[2026-10-25 09:01:26,725.725 INFO    ] ================================================
[2026-10-25 09:01:27,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:01:27
[2026-10-25 09:01:27,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:01:28,193.193 INFO    ] Initializing speech engine...
[2026-10-25 09:01:28,204.204 INFO    ] 2026-10-25 09:01:28
[2026-10-25 09:01:28,458.458 INFO    ] 2026-10-25 09:01:28
[2026-10-25 09:01:28,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:01:28,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:01:28,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:01:28,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:01:28,907.907 INFO    ] time= 25/10/2026 09:01:28
[2026-10-25 09:01:28,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:01:29,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:01:29,076.076 INFO    ] No existing commands found in stream
[2026-10-25 09:01:34,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:01:34,091.091 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 09:01:38,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:01:38,278.278 INFO    ] Checking for system updates...
[2026-10-25 09:01:38,319.319 INFO    ] 200
[2026-10-25 09:01:38,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:38,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:01:38,386.386 INFO    ] No update needed
[2026-10-25 09:01:38,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 09:01:38,422.422 INFO    ] 200
[2026-10-25 09:01:38,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:38,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:01:38,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:01:38,508.508 INFO    ] No camera update needed
[2026-10-25 09:01:38,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:01:38,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:01:38,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:01:38,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:01:40,566.566 INFO    ] ================================================
[2026-10-25 09:01:40,582.582 INFO    ] Launching Daemon at Sun Oct 25 09:01:40 IST 2026
[2026-10-25 09:01:40,593.593 INFO    ] ================================================
[2026-10-25 09:01:41,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:01:41
[2026-10-25 09:01:41,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:01:42,258.258 INFO    ] Initializing speech engine...
[2026-10-25 09:01:42,270.270 INFO    ] 2026-10-25 09:01:42
[2026-10-25 09:01:42,539.539 INFO    ] 2026-10-25 09:01:42
[2026-10-25 09:01:42,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:01:42,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:01:42,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:01:43,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:01:43,089.089 INFO    ] time= 25/10/2026 09:01:43
[2026-10-25 09:01:43,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:01:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:01:43,241.241 INFO    ] No existing commands found in stream
[2026-10-25 09:01:48,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:01:48,261.261 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 09:01:52,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:01:52,350.350 INFO    ] Checking for system updates...
[2026-10-25 09:01:52,387.387 INFO    ] 200
[2026-10-25 09:01:52,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:52,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:01:52,456.456 INFO    ] No update needed
[2026-10-25 09:01:52,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 09:01:52,498.498 INFO    ] 200
[2026-10-25 09:01:52,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:01:52,548.548 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:01:52,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:01:52,705.705 INFO    ] No camera update needed
[2026-10-25 09:01:52,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:01:52,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:01:52,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:01:52,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:01:54,765.765 INFO    ] ================================================
[2026-10-25 09:01:54,780.780 INFO    ] Launching Daemon at Sun Oct 25 09:01:54 IST 2026
[2026-10-25 09:01:54,791.791 INFO    ] ================================================
[2026-10-25 09:01:55,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:01:55
[2026-10-25 09:01:56,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:01:56,435.435 INFO    ] Initializing speech engine...
[2026-10-25 09:01:56,449.449 INFO    ] 2026-10-25 09:01:56
[2026-10-25 09:01:56,726.726 INFO    ] 2026-10-25 09:01:56
[2026-10-25 09:01:56,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:01:57,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:01:57,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:01:57,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:01:57,265.265 INFO    ] time= 25/10/2026 09:01:57
[2026-10-25 09:01:57,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:01:57,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:01:57,419.419 INFO    ] No existing commands found in stream
[2026-10-25 09:02:02,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:02:02,436.436 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 09:02:06,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:02:06,767.767 INFO    ] Checking for system updates...
[2026-10-25 09:02:06,803.803 INFO    ] 200
[2026-10-25 09:02:06,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:06,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:02:06,863.863 INFO    ] No update needed
[2026-10-25 09:02:06,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 09:02:06,903.903 INFO    ] 200
[2026-10-25 09:02:06,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:06,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:02:07,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:02:07,007.007 INFO    ] No camera update needed
[2026-10-25 09:02:07,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:02:07,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:02:07,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:02:07,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:02:09,064.064 INFO    ] ================================================
[2026-10-25 09:02:09,079.079 INFO    ] Launching Daemon at Sun Oct 25 09:02:09 IST 2026
[2026-10-25 09:02:09,090.090 INFO    ] ================================================
[2026-10-25 09:02:09,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:02:09
[2026-10-25 09:02:10,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:02:10,673.673 INFO    ] Initializing speech engine...
[2026-10-25 09:02:10,686.686 INFO    ] 2026-10-25 09:02:10
[2026-10-25 09:02:10,968.968 INFO    ] 2026-10-25 09:02:10
[2026-10-25 09:02:11,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:02:11,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:02:11,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:02:11,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:02:11,473.473 INFO    ] time= 25/10/2026 09:02:11
[2026-10-25 09:02:11,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:02:11,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:02:11,655.655 INFO    ] No existing commands found in stream
[2026-10-25 09:02:16,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:02:16,700.700 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 09:02:19,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:02:19,228.228 INFO    ] Checking for system updates...
[2026-10-25 09:02:19,267.267 INFO    ] 200
[2026-10-25 09:02:19,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:19,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:19,328.328 INFO    ] No update needed
[2026-10-25 09:02:19,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 09:02:19,368.368 INFO    ] 200
[2026-10-25 09:02:19,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:19,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:02:19,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:19,474.474 INFO    ] No camera update needed
[2026-10-25 09:02:19,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:02:19,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:02:19,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:02:19,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:02:21,533.533 INFO    ] ================================================
[2026-10-25 09:02:21,548.548 INFO    ] Launching Daemon at Sun Oct 25 09:02:21 IST 2026
[2026-10-25 09:02:21,559.559 INFO    ] ================================================
[2026-10-25 09:02:22,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:02:22
[2026-10-25 09:02:22,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:02:23,179.179 INFO    ] Initializing speech engine...
[2026-10-25 09:02:23,185.185 INFO    ] 2026-10-25 09:02:23
[2026-10-25 09:02:23,510.510 INFO    ] 2026-10-25 09:02:23
[2026-10-25 09:02:23,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:02:23,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:02:23,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:02:23,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:02:23,951.951 INFO    ] time= 25/10/2026 09:02:23
[2026-10-25 09:02:24,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:02:24,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:02:24,088.088 INFO    ] No existing commands found in stream
[2026-10-25 09:02:29,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:02:29,103.103 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 09:02:33,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:02:33,266.266 INFO    ] Checking for system updates...
[2026-10-25 09:02:33,311.311 INFO    ] 200
[2026-10-25 09:02:33,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:33,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:33,374.374 INFO    ] No update needed
[2026-10-25 09:02:33,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 09:02:33,412.412 INFO    ] 200
[2026-10-25 09:02:33,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:33,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:02:33,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:33,494.494 INFO    ] No camera update needed
[2026-10-25 09:02:33,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:02:33,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:02:33,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:02:33,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:02:35,552.552 INFO    ] ================================================
[2026-10-25 09:02:35,567.567 INFO    ] Launching Daemon at Sun Oct 25 09:02:35 IST 2026
[2026-10-25 09:02:35,578.578 INFO    ] ================================================
[2026-10-25 09:02:36,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:02:36
[2026-10-25 09:02:36,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:02:36,978.978 INFO    ] Initializing speech engine...
[2026-10-25 09:02:36,993.993 INFO    ] 2026-10-25 09:02:36
[2026-10-25 09:02:37,260.260 INFO    ] 2026-10-25 09:02:37
[2026-10-25 09:02:37,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:02:37,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:02:37,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:02:37,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:02:37,712.712 INFO    ] time= 25/10/2026 09:02:37
[2026-10-25 09:02:37,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:02:37,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:02:37,888.888 INFO    ] No existing commands found in stream
[2026-10-25 09:02:42,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:02:42,902.902 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 09:02:45,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:02:45,912.912 INFO    ] Checking for system updates...
[2026-10-25 09:02:45,949.949 INFO    ] 200
[2026-10-25 09:02:45,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:46,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:46,016.016 INFO    ] No update needed
[2026-10-25 09:02:46,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 09:02:46,051.051 INFO    ] 200
[2026-10-25 09:02:46,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:46,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:02:46,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:46,143.143 INFO    ] No camera update needed
[2026-10-25 09:02:46,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:02:46,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:02:46,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:02:46,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:02:48,200.200 INFO    ] ================================================
[2026-10-25 09:02:48,218.218 INFO    ] Launching Daemon at Sun Oct 25 09:02:48 IST 2026
[2026-10-25 09:02:48,229.229 INFO    ] ================================================
[2026-10-25 09:02:48,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:02:48
[2026-10-25 09:02:49,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:02:49,733.733 INFO    ] Initializing speech engine...
[2026-10-25 09:02:49,746.746 INFO    ] 2026-10-25 09:02:49
[2026-10-25 09:02:50,050.050 INFO    ] 2026-10-25 09:02:50
[2026-10-25 09:02:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:02:50,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:02:50,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:02:50,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:02:50,416.416 INFO    ] time= 25/10/2026 09:02:50
[2026-10-25 09:02:50,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:02:50,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:02:50,570.570 INFO    ] No existing commands found in stream
[2026-10-25 09:02:55,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:02:55,593.593 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 09:02:56,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:02:56,045.045 INFO    ] Checking for system updates...
[2026-10-25 09:02:56,086.086 INFO    ] 200
[2026-10-25 09:02:56,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:56,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:56,143.143 INFO    ] No update needed
[2026-10-25 09:02:56,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 09:02:56,182.182 INFO    ] 200
[2026-10-25 09:02:56,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:02:56,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:02:56,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:02:56,283.283 INFO    ] No camera update needed
[2026-10-25 09:02:56,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:02:56,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:02:56,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:02:56,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:02:58,339.339 INFO    ] ================================================
[2026-10-25 09:02:58,354.354 INFO    ] Launching Daemon at Sun Oct 25 09:02:58 IST 2026
[2026-10-25 09:02:58,365.365 INFO    ] ================================================
[2026-10-25 09:02:58,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:02:58
[2026-10-25 09:02:59,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:02:59,789.789 INFO    ] Initializing speech engine...
[2026-10-25 09:02:59,798.798 INFO    ] 2026-10-25 09:02:59
[2026-10-25 09:03:00,048.048 INFO    ] 2026-10-25 09:03:00
[2026-10-25 09:03:00,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:03:00,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:03:00,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:03:00,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:03:00,542.542 INFO    ] time= 25/10/2026 09:03:00
[2026-10-25 09:03:00,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:03:00,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:03:00,679.679 INFO    ] No existing commands found in stream
[2026-10-25 09:03:05,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:03:05,693.693 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 09:03:10,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:03:10,084.084 INFO    ] Checking for system updates...
[2026-10-25 09:03:10,120.120 INFO    ] 200
[2026-10-25 09:03:10,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:10,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:10,178.178 INFO    ] No update needed
[2026-10-25 09:03:10,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 09:03:10,215.215 INFO    ] 200
[2026-10-25 09:03:10,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:10,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:03:10,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:10,318.318 INFO    ] No camera update needed
[2026-10-25 09:03:10,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:03:10,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:03:10,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:03:10,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:03:12,376.376 INFO    ] ================================================
[2026-10-25 09:03:12,391.391 INFO    ] Launching Daemon at Sun Oct 25 09:03:12 IST 2026
[2026-10-25 09:03:12,405.405 INFO    ] ================================================
[2026-10-25 09:03:12,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:03:12
[2026-10-25 09:03:13,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:03:13,826.826 INFO    ] Initializing speech engine...
[2026-10-25 09:03:13,841.841 INFO    ] 2026-10-25 09:03:13
[2026-10-25 09:03:14,108.108 INFO    ] 2026-10-25 09:03:14
[2026-10-25 09:03:14,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:03:14,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:03:14,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:03:14,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:03:14,465.465 INFO    ] time= 25/10/2026 09:03:14
[2026-10-25 09:03:14,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:03:14,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:03:14,564.564 INFO    ] No existing commands found in stream
[2026-10-25 09:03:19,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:03:19,582.582 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 09:03:21,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:03:21,567.567 INFO    ] Checking for system updates...
[2026-10-25 09:03:21,622.622 INFO    ] 200
[2026-10-25 09:03:21,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 09:03:21,628.628 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 09:03:21,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 09:03:21,673.673 INFO    ] 200
[2026-10-25 09:03:21,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 09:03:21,679.679 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 09:03:21,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:03:21,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:03:21,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:03:21,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:03:23,735.735 INFO    ] ================================================
[2026-10-25 09:03:23,751.751 INFO    ] Launching Daemon at Sun Oct 25 09:03:23 IST 2026
[2026-10-25 09:03:23,762.762 INFO    ] ================================================
[2026-10-25 09:03:24,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:03:24
[2026-10-25 09:03:24,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:03:25,173.173 INFO    ] Initializing speech engine...
[2026-10-25 09:03:25,186.186 INFO    ] 2026-10-25 09:03:25
[2026-10-25 09:03:25,467.467 INFO    ] 2026-10-25 09:03:25
[2026-10-25 09:03:25,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:03:25,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:03:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:03:25,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:03:25,956.956 INFO    ] time= 25/10/2026 09:03:25
[2026-10-25 09:03:26,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:03:26,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:03:26,071.071 INFO    ] No existing commands found in stream
[2026-10-25 09:03:31,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:03:31,085.085 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 09:03:31,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:03:31,996.996 INFO    ] Checking for system updates...
[2026-10-25 09:03:32,036.036 INFO    ] 200
[2026-10-25 09:03:32,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:32,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:32,101.101 INFO    ] No update needed
[2026-10-25 09:03:32,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 09:03:32,146.146 INFO    ] 200
[2026-10-25 09:03:32,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:32,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:03:32,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:32,249.249 INFO    ] No camera update needed
[2026-10-25 09:03:32,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:03:32,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:03:32,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:03:32,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:03:34,313.313 INFO    ] ================================================
[2026-10-25 09:03:34,328.328 INFO    ] Launching Daemon at Sun Oct 25 09:03:34 IST 2026
[2026-10-25 09:03:34,339.339 INFO    ] ================================================
[2026-10-25 09:03:34,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:03:34
[2026-10-25 09:03:35,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:03:35,775.775 INFO    ] Initializing speech engine...
[2026-10-25 09:03:35,784.784 INFO    ] 2026-10-25 09:03:35
[2026-10-25 09:03:36,040.040 INFO    ] 2026-10-25 09:03:36
[2026-10-25 09:03:36,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:03:36,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:03:36,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:03:36,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:03:36,496.496 INFO    ] time= 25/10/2026 09:03:36
[2026-10-25 09:03:36,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:03:36,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:03:36,682.682 INFO    ] No existing commands found in stream
[2026-10-25 09:03:41,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:03:41,715.715 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 09:03:43,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:03:43,256.256 INFO    ] Checking for system updates...
[2026-10-25 09:03:43,293.293 INFO    ] 200
[2026-10-25 09:03:43,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:43,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:43,365.365 INFO    ] No update needed
[2026-10-25 09:03:43,368.368 INFO    ] Checking for camera pi updates...
[2026-10-25 09:03:43,410.410 INFO    ] 200
[2026-10-25 09:03:43,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:43,467.467 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:03:43,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:03:43,515.515 INFO    ] No camera update needed
[2026-10-25 09:03:43,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:03:43,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:03:43,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:03:43,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:03:45,573.573 INFO    ] ================================================
[2026-10-25 09:03:45,589.589 INFO    ] Launching Daemon at Sun Oct 25 09:03:45 IST 2026
[2026-10-25 09:03:45,600.600 INFO    ] ================================================
[2026-10-25 09:03:46,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:03:46
[2026-10-25 09:03:46,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:03:47,198.198 INFO    ] Initializing speech engine...
[2026-10-25 09:03:47,212.212 INFO    ] 2026-10-25 09:03:47
[2026-10-25 09:03:47,500.500 INFO    ] 2026-10-25 09:03:47
[2026-10-25 09:03:47,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:03:50,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:03:50,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:03:50,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:03:50,606.606 INFO    ] time= 25/10/2026 09:03:50
[2026-10-25 09:03:50,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:03:50,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:03:50,662.662 INFO    ] No existing commands found in stream
[2026-10-25 09:03:55,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:03:55,675.675 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 09:03:59,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:03:59,424.424 INFO    ] Checking for system updates...
[2026-10-25 09:03:59,464.464 INFO    ] 200
[2026-10-25 09:03:59,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:59,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:03:59,521.521 INFO    ] No update needed
[2026-10-25 09:03:59,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 09:03:59,561.561 INFO    ] 200
[2026-10-25 09:03:59,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:03:59,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:03:59,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:03:59,767.767 INFO    ] No camera update needed
[2026-10-25 09:03:59,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:03:59,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:03:59,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:03:59,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:04:01,828.828 INFO    ] ================================================
[2026-10-25 09:04:01,846.846 INFO    ] Launching Daemon at Sun Oct 25 09:04:01 IST 2026
[2026-10-25 09:04:01,864.864 INFO    ] ================================================
[2026-10-25 09:04:02,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:04:02
[2026-10-25 09:04:03,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:04:03,554.554 INFO    ] Initializing speech engine...
[2026-10-25 09:04:03,564.564 INFO    ] 2026-10-25 09:04:03
[2026-10-25 09:04:03,841.841 INFO    ] 2026-10-25 09:04:03
[2026-10-25 09:04:03,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:04:04,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:04:04,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:04:04,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:04:04,351.351 INFO    ] time= 25/10/2026 09:04:04
[2026-10-25 09:04:04,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:04:04,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:04:04,533.533 INFO    ] No existing commands found in stream
[2026-10-25 09:04:09,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:04:09,562.562 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 09:04:12,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:04:12,635.635 INFO    ] Checking for system updates...
[2026-10-25 09:04:12,674.674 INFO    ] 200
[2026-10-25 09:04:12,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:12,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:04:12,732.732 INFO    ] No update needed
[2026-10-25 09:04:12,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 09:04:12,768.768 INFO    ] 200
[2026-10-25 09:04:12,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:12,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:04:12,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:04:12,868.868 INFO    ] No camera update needed
[2026-10-25 09:04:12,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:04:12,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:04:12,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:04:12,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:04:14,923.923 INFO    ] ================================================
[2026-10-25 09:04:14,938.938 INFO    ] Launching Daemon at Sun Oct 25 09:04:14 IST 2026
[2026-10-25 09:04:14,949.949 INFO    ] ================================================
[2026-10-25 09:04:15,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:04:15
[2026-10-25 09:04:16,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:04:16,546.546 INFO    ] Initializing speech engine...
[2026-10-25 09:04:16,553.553 INFO    ] 2026-10-25 09:04:16
[2026-10-25 09:04:16,823.823 INFO    ] 2026-10-25 09:04:16
[2026-10-25 09:04:16,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:04:17,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:04:17,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:04:17,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:04:17,329.329 INFO    ] time= 25/10/2026 09:04:17
[2026-10-25 09:04:17,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:04:17,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:04:17,529.529 INFO    ] No existing commands found in stream
[2026-10-25 09:04:22,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:04:22,564.564 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 09:04:24,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:04:24,804.804 INFO    ] Checking for system updates...
[2026-10-25 09:04:24,841.841 INFO    ] 200
[2026-10-25 09:04:24,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:24,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:04:24,899.899 INFO    ] No update needed
[2026-10-25 09:04:24,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 09:04:24,939.939 INFO    ] 200
[2026-10-25 09:04:24,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:24,987.987 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:04:25,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:04:25,049.049 INFO    ] No camera update needed
[2026-10-25 09:04:25,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:04:25,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:04:25,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:04:25,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:04:27,104.104 INFO    ] ================================================
[2026-10-25 09:04:27,119.119 INFO    ] Launching Daemon at Sun Oct 25 09:04:27 IST 2026
[2026-10-25 09:04:27,130.130 INFO    ] ================================================
[2026-10-25 09:04:27,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:04:27
[2026-10-25 09:04:28,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:04:28,580.580 INFO    ] Initializing speech engine...
[2026-10-25 09:04:28,585.585 INFO    ] 2026-10-25 09:04:28
[2026-10-25 09:04:28,846.846 INFO    ] 2026-10-25 09:04:28
[2026-10-25 09:04:28,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:04:29,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:04:29,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:04:29,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:04:29,317.317 INFO    ] time= 25/10/2026 09:04:29
[2026-10-25 09:04:29,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:04:29,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:04:29,521.521 INFO    ] No existing commands found in stream
[2026-10-25 09:04:34,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:04:34,551.551 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 09:04:38,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:04:38,033.033 INFO    ] Checking for system updates...
[2026-10-25 09:04:38,069.069 INFO    ] 200
[2026-10-25 09:04:38,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:38,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:04:38,134.134 INFO    ] No update needed
[2026-10-25 09:04:38,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 09:04:38,171.171 INFO    ] 200
[2026-10-25 09:04:38,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:38,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:04:38,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:04:38,250.250 INFO    ] No camera update needed
[2026-10-25 09:04:38,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:04:38,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:04:38,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:04:38,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:04:40,307.307 INFO    ] ================================================
[2026-10-25 09:04:40,322.322 INFO    ] Launching Daemon at Sun Oct 25 09:04:40 IST 2026
[2026-10-25 09:04:40,333.333 INFO    ] ================================================
[2026-10-25 09:04:40,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:04:40
[2026-10-25 09:04:41,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:04:41,796.796 INFO    ] Initializing speech engine...
[2026-10-25 09:04:41,803.803 INFO    ] 2026-10-25 09:04:41
[2026-10-25 09:04:42,063.063 INFO    ] 2026-10-25 09:04:42
[2026-10-25 09:04:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:04:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:04:42,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:04:42,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:04:42,546.546 INFO    ] time= 25/10/2026 09:04:42
[2026-10-25 09:04:42,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:04:42,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:04:42,667.667 INFO    ] No existing commands found in stream
[2026-10-25 09:04:47,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:04:47,682.682 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 09:04:51,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:04:51,481.481 INFO    ] Checking for system updates...
[2026-10-25 09:04:51,521.521 INFO    ] 200
[2026-10-25 09:04:51,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:51,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:04:51,587.587 INFO    ] No update needed
[2026-10-25 09:04:51,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 09:04:51,624.624 INFO    ] 200
[2026-10-25 09:04:51,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:04:51,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:04:51,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:04:51,728.728 INFO    ] No camera update needed
[2026-10-25 09:04:51,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:04:51,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:04:51,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:04:51,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:04:53,785.785 INFO    ] ================================================
[2026-10-25 09:04:53,801.801 INFO    ] Launching Daemon at Sun Oct 25 09:04:53 IST 2026
[2026-10-25 09:04:53,812.812 INFO    ] ================================================
[2026-10-25 09:04:54,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:04:54
[2026-10-25 09:04:54,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:04:55,244.244 INFO    ] Initializing speech engine...
[2026-10-25 09:04:55,262.262 INFO    ] 2026-10-25 09:04:55
[2026-10-25 09:04:55,546.546 INFO    ] 2026-10-25 09:04:55
[2026-10-25 09:04:55,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:04:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:04:55,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:04:55,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:04:55,932.932 INFO    ] time= 25/10/2026 09:04:55
[2026-10-25 09:04:55,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:04:56,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:04:56,126.126 INFO    ] No existing commands found in stream
[2026-10-25 09:05:01,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:05:01,162.162 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 09:05:04,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:05:04,054.054 INFO    ] Checking for system updates...
[2026-10-25 09:05:04,096.096 INFO    ] 200
[2026-10-25 09:05:04,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:04,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:04,161.161 INFO    ] No update needed
[2026-10-25 09:05:04,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 09:05:04,197.197 INFO    ] 200
[2026-10-25 09:05:04,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:04,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:05:04,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:04,298.298 INFO    ] No camera update needed
[2026-10-25 09:05:04,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:05:04,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:05:04,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:05:04,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:05:06,354.354 INFO    ] ================================================
[2026-10-25 09:05:06,369.369 INFO    ] Launching Daemon at Sun Oct 25 09:05:06 IST 2026
[2026-10-25 09:05:06,381.381 INFO    ] ================================================
[2026-10-25 09:05:07,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:05:07
[2026-10-25 09:05:07,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:05:08,005.005 INFO    ] Initializing speech engine...
[2026-10-25 09:05:08,014.014 INFO    ] 2026-10-25 09:05:08
[2026-10-25 09:05:08,259.259 INFO    ] 2026-10-25 09:05:08
[2026-10-25 09:05:08,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:05:08,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:05:08,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:05:08,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:05:08,707.707 INFO    ] time= 25/10/2026 09:05:08
[2026-10-25 09:05:08,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:05:08,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:05:08,875.875 INFO    ] No existing commands found in stream
[2026-10-25 09:05:13,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:05:13,890.890 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 09:05:14,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:05:14,455.455 INFO    ] Checking for system updates...
[2026-10-25 09:05:14,491.491 INFO    ] 200
[2026-10-25 09:05:14,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:14,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:14,549.549 INFO    ] No update needed
[2026-10-25 09:05:14,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 09:05:14,589.589 INFO    ] 200
[2026-10-25 09:05:14,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:14,636.636 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:05:14,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:14,688.688 INFO    ] No camera update needed
[2026-10-25 09:05:14,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:05:14,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:05:14,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:05:14,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:05:16,744.744 INFO    ] ================================================
[2026-10-25 09:05:16,760.760 INFO    ] Launching Daemon at Sun Oct 25 09:05:16 IST 2026
[2026-10-25 09:05:16,771.771 INFO    ] ================================================
[2026-10-25 09:05:17,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:05:17
[2026-10-25 09:05:17,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:05:18,299.299 INFO    ] Initializing speech engine...
[2026-10-25 09:05:18,307.307 INFO    ] 2026-10-25 09:05:18
[2026-10-25 09:05:18,603.603 INFO    ] 2026-10-25 09:05:18
[2026-10-25 09:05:18,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:05:21,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:05:21,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:05:21,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:05:21,574.574 INFO    ] time= 25/10/2026 09:05:21
[2026-10-25 09:05:21,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:05:21,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:05:21,627.627 INFO    ] No existing commands found in stream
[2026-10-25 09:05:26,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:05:26,640.640 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 09:05:27,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:05:27,327.327 INFO    ] Checking for system updates...
[2026-10-25 09:05:27,388.388 INFO    ] 200
[2026-10-25 09:05:27,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:27,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:05:27,454.454 INFO    ] No update needed
[2026-10-25 09:05:27,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 09:05:27,496.496 INFO    ] 200
[2026-10-25 09:05:27,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:27,543.543 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:05:27,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:05:27,595.595 INFO    ] No camera update needed
[2026-10-25 09:05:27,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:05:27,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:05:27,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:05:27,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:05:29,656.656 INFO    ] ================================================
[2026-10-25 09:05:29,672.672 INFO    ] Launching Daemon at Sun Oct 25 09:05:29 IST 2026
[2026-10-25 09:05:29,683.683 INFO    ] ================================================
[2026-10-25 09:05:30,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:05:30
[2026-10-25 09:05:30,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:05:31,104.104 INFO    ] Initializing speech engine...
[2026-10-25 09:05:31,113.113 INFO    ] 2026-10-25 09:05:31
[2026-10-25 09:05:31,423.423 INFO    ] 2026-10-25 09:05:31
[2026-10-25 09:05:31,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:05:31,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:05:31,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:05:31,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:05:31,922.922 INFO    ] time= 25/10/2026 09:05:31
[2026-10-25 09:05:31,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:05:32,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:05:32,078.078 INFO    ] No existing commands found in stream
[2026-10-25 09:05:37,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:05:37,093.093 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 09:05:39,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:05:39,182.182 INFO    ] Checking for system updates...
[2026-10-25 09:05:39,223.223 INFO    ] 200
[2026-10-25 09:05:39,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:39,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:05:39,288.288 INFO    ] No update needed
[2026-10-25 09:05:39,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 09:05:39,324.324 INFO    ] 200
[2026-10-25 09:05:39,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:39,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:05:39,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:05:39,424.424 INFO    ] No camera update needed
[2026-10-25 09:05:39,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:05:39,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:05:39,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:05:39,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:05:41,481.481 INFO    ] ================================================
[2026-10-25 09:05:41,498.498 INFO    ] Launching Daemon at Sun Oct 25 09:05:41 IST 2026
[2026-10-25 09:05:41,510.510 INFO    ] ================================================
[2026-10-25 09:05:42,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:05:42
[2026-10-25 09:05:42,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:05:42,931.931 INFO    ] Initializing speech engine...
[2026-10-25 09:05:42,952.952 INFO    ] 2026-10-25 09:05:42
[2026-10-25 09:05:43,213.213 INFO    ] 2026-10-25 09:05:43
[2026-10-25 09:05:43,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:05:43,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:05:43,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:05:43,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:05:43,588.588 INFO    ] time= 25/10/2026 09:05:43
[2026-10-25 09:05:43,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:05:43,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:05:43,666.666 INFO    ] No existing commands found in stream
[2026-10-25 09:05:48,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:05:48,681.681 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 09:05:52,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:05:52,064.064 INFO    ] Checking for system updates...
[2026-10-25 09:05:52,101.101 INFO    ] 200
[2026-10-25 09:05:52,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:52,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:52,166.166 INFO    ] No update needed
[2026-10-25 09:05:52,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 09:05:52,207.207 INFO    ] 200
[2026-10-25 09:05:52,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:05:52,255.255 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:05:52,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:05:52,310.310 INFO    ] No camera update needed
[2026-10-25 09:05:52,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:05:52,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:05:52,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:05:52,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:05:54,368.368 INFO    ] ================================================
[2026-10-25 09:05:54,385.385 INFO    ] Launching Daemon at Sun Oct 25 09:05:54 IST 2026
[2026-10-25 09:05:54,396.396 INFO    ] ================================================
[2026-10-25 09:05:54,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:05:54
[2026-10-25 09:05:55,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:05:55,843.843 INFO    ] Initializing speech engine...
[2026-10-25 09:05:55,852.852 INFO    ] 2026-10-25 09:05:55
[2026-10-25 09:05:56,152.152 INFO    ] 2026-10-25 09:05:56
[2026-10-25 09:05:56,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:05:56,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:05:56,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:05:56,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:05:56,539.539 INFO    ] time= 25/10/2026 09:05:56
[2026-10-25 09:05:56,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:05:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:05:56,666.666 INFO    ] No existing commands found in stream
[2026-10-25 09:06:01,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:06:01,683.683 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 09:06:04,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:06:04,632.632 INFO    ] Checking for system updates...
[2026-10-25 09:06:04,668.668 INFO    ] 200
[2026-10-25 09:06:04,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:04,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:06:04,727.727 INFO    ] No update needed
[2026-10-25 09:06:04,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 09:06:04,763.763 INFO    ] 200
[2026-10-25 09:06:04,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:04,807.807 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:06:04,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:06:04,868.868 INFO    ] No camera update needed
[2026-10-25 09:06:04,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:06:04,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:06:04,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:06:04,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:06:06,928.928 INFO    ] ================================================
[2026-10-25 09:06:06,944.944 INFO    ] Launching Daemon at Sun Oct 25 09:06:06 IST 2026
[2026-10-25 09:06:06,955.955 INFO    ] ================================================
[2026-10-25 09:06:07,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:06:07
[2026-10-25 09:06:08,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:06:08,383.383 INFO    ] Initializing speech engine...
[2026-10-25 09:06:08,396.396 INFO    ] 2026-10-25 09:06:08
[2026-10-25 09:06:08,680.680 INFO    ] 2026-10-25 09:06:08
[2026-10-25 09:06:08,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:06:08,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:06:08,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:06:09,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:06:09,072.072 INFO    ] time= 25/10/2026 09:06:09
[2026-10-25 09:06:09,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:06:09,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:06:09,185.185 INFO    ] No existing commands found in stream
[2026-10-25 09:06:14,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:06:14,201.201 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 09:06:16,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:06:16,796.796 INFO    ] Checking for system updates...
[2026-10-25 09:06:16,836.836 INFO    ] 200
[2026-10-25 09:06:16,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:16,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:16,895.895 INFO    ] No update needed
[2026-10-25 09:06:16,897.897 INFO    ] Checking for camera pi updates...
[2026-10-25 09:06:16,931.931 INFO    ] 200
[2026-10-25 09:06:16,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:16,975.975 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:06:17,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:17,028.028 INFO    ] No camera update needed
[2026-10-25 09:06:17,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:06:17,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:06:17,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:06:17,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:06:19,084.084 INFO    ] ================================================
[2026-10-25 09:06:19,100.100 INFO    ] Launching Daemon at Sun Oct 25 09:06:19 IST 2026
[2026-10-25 09:06:19,111.111 INFO    ] ================================================
[2026-10-25 09:06:19,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:06:19
[2026-10-25 09:06:20,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:06:20,746.746 INFO    ] Initializing speech engine...
[2026-10-25 09:06:20,757.757 INFO    ] 2026-10-25 09:06:20
[2026-10-25 09:06:21,038.038 INFO    ] 2026-10-25 09:06:21
[2026-10-25 09:06:21,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:06:22,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:06:22,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:06:22,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:06:22,393.393 INFO    ] time= 25/10/2026 09:06:22
[2026-10-25 09:06:22,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:06:22,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:06:22,464.464 INFO    ] No existing commands found in stream
[2026-10-25 09:06:27,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:06:27,475.475 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 09:06:27,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:06:28,000.000 INFO    ] Checking for system updates...
[2026-10-25 09:06:28,040.040 INFO    ] 200
[2026-10-25 09:06:28,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:28,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:28,112.112 INFO    ] No update needed
[2026-10-25 09:06:28,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 09:06:28,153.153 INFO    ] 200
[2026-10-25 09:06:28,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:28,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:06:28,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:28,260.260 INFO    ] No camera update needed
[2026-10-25 09:06:28,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:06:28,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:06:28,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:06:28,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:06:30,321.321 INFO    ] ================================================
[2026-10-25 09:06:30,336.336 INFO    ] Launching Daemon at Sun Oct 25 09:06:30 IST 2026
[2026-10-25 09:06:30,348.348 INFO    ] ================================================
[2026-10-25 09:06:30,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:06:30
[2026-10-25 09:06:31,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:06:31,907.907 INFO    ] Initializing speech engine...
[2026-10-25 09:06:31,918.918 INFO    ] 2026-10-25 09:06:31
[2026-10-25 09:06:32,211.211 INFO    ] 2026-10-25 09:06:32
[2026-10-25 09:06:32,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:06:32,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:06:32,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:06:32,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:06:32,637.637 INFO    ] time= 25/10/2026 09:06:32
[2026-10-25 09:06:32,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:06:32,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:06:32,792.792 INFO    ] No existing commands found in stream
[2026-10-25 09:06:37,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:06:37,826.826 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 09:06:39,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:06:39,138.138 INFO    ] Checking for system updates...
[2026-10-25 09:06:39,175.175 INFO    ] 200
[2026-10-25 09:06:39,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:39,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:06:39,235.235 INFO    ] No update needed
[2026-10-25 09:06:39,238.238 INFO    ] Checking for camera pi updates...
[2026-10-25 09:06:39,274.274 INFO    ] 200
[2026-10-25 09:06:39,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:39,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:06:39,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:06:39,379.379 INFO    ] No camera update needed
[2026-10-25 09:06:39,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:06:39,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:06:39,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:06:39,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:06:41,438.438 INFO    ] ================================================
[2026-10-25 09:06:41,453.453 INFO    ] Launching Daemon at Sun Oct 25 09:06:41 IST 2026
[2026-10-25 09:06:41,463.463 INFO    ] ================================================
[2026-10-25 09:06:42,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:06:42
[2026-10-25 09:06:42,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:06:42,900.900 INFO    ] Initializing speech engine...
[2026-10-25 09:06:42,906.906 INFO    ] 2026-10-25 09:06:42
[2026-10-25 09:06:43,205.205 INFO    ] 2026-10-25 09:06:43
[2026-10-25 09:06:43,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:06:43,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:06:43,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:06:43,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:06:43,623.623 INFO    ] time= 25/10/2026 09:06:43
[2026-10-25 09:06:43,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:06:43,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:06:43,708.708 INFO    ] No existing commands found in stream
[2026-10-25 09:06:48,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:06:48,729.729 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 09:06:52,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:06:52,813.813 INFO    ] Checking for system updates...
[2026-10-25 09:06:52,851.851 INFO    ] 200
[2026-10-25 09:06:52,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:52,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:52,909.909 INFO    ] No update needed
[2026-10-25 09:06:52,912.912 INFO    ] Checking for camera pi updates...
[2026-10-25 09:06:52,946.946 INFO    ] 200
[2026-10-25 09:06:52,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:06:52,990.990 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:06:53,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:06:53,047.047 INFO    ] No camera update needed
[2026-10-25 09:06:53,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:06:53,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:06:53,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:06:53,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:06:55,103.103 INFO    ] ================================================
[2026-10-25 09:06:55,118.118 INFO    ] Launching Daemon at Sun Oct 25 09:06:55 IST 2026
[2026-10-25 09:06:55,129.129 INFO    ] ================================================
[2026-10-25 09:06:55,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:06:55
[2026-10-25 09:06:56,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:06:56,569.569 INFO    ] Initializing speech engine...
[2026-10-25 09:06:56,578.578 INFO    ] 2026-10-25 09:06:56
[2026-10-25 09:06:56,874.874 INFO    ] 2026-10-25 09:06:56
[2026-10-25 09:06:56,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:06:57,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:06:57,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:06:57,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:06:57,273.273 INFO    ] time= 25/10/2026 09:06:57
[2026-10-25 09:06:57,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:06:57,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:06:57,382.382 INFO    ] No existing commands found in stream
[2026-10-25 09:07:02,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:07:02,397.397 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 09:07:04,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:07:04,648.648 INFO    ] Checking for system updates...
[2026-10-25 09:07:04,695.695 INFO    ] 200
[2026-10-25 09:07:04,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:04,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:04,785.785 INFO    ] No update needed
[2026-10-25 09:07:04,787.787 INFO    ] Checking for camera pi updates...
[2026-10-25 09:07:04,822.822 INFO    ] 200
[2026-10-25 09:07:04,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:04,870.870 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:07:04,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:04,919.919 INFO    ] No camera update needed
[2026-10-25 09:07:04,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:07:04,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:07:04,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:07:04,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:07:06,976.976 INFO    ] ================================================
[2026-10-25 09:07:07,991.991 INFO    ] Launching Daemon at Sun Oct 25 09:07:06 IST 2026
[2026-10-25 09:07:07,008.008 INFO    ] ================================================
[2026-10-25 09:07:07,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:07:07
[2026-10-25 09:07:08,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:07:08,612.612 INFO    ] Initializing speech engine...
[2026-10-25 09:07:08,625.625 INFO    ] 2026-10-25 09:07:08
[2026-10-25 09:07:08,902.902 INFO    ] 2026-10-25 09:07:08
[2026-10-25 09:07:08,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:07:09,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:07:09,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:07:09,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:07:09,435.435 INFO    ] time= 25/10/2026 09:07:09
[2026-10-25 09:07:09,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:07:09,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:07:09,572.572 INFO    ] No existing commands found in stream
[2026-10-25 09:07:14,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:07:14,603.603 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 09:07:17,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:07:17,835.835 INFO    ] Checking for system updates...
[2026-10-25 09:07:17,872.872 INFO    ] 200
[2026-10-25 09:07:17,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:17,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:07:17,938.938 INFO    ] No update needed
[2026-10-25 09:07:17,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 09:07:17,975.975 INFO    ] 200
[2026-10-25 09:07:17,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:18,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:07:18,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:07:18,070.070 INFO    ] No camera update needed
[2026-10-25 09:07:18,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:07:18,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:07:18,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:07:18,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:07:20,124.124 INFO    ] ================================================
[2026-10-25 09:07:20,139.139 INFO    ] Launching Daemon at Sun Oct 25 09:07:20 IST 2026
[2026-10-25 09:07:20,149.149 INFO    ] ================================================
[2026-10-25 09:07:20,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:07:20
[2026-10-25 09:07:21,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:07:21,547.547 INFO    ] Initializing speech engine...
[2026-10-25 09:07:21,563.563 INFO    ] 2026-10-25 09:07:21
[2026-10-25 09:07:21,828.828 INFO    ] 2026-10-25 09:07:21
[2026-10-25 09:07:21,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:07:22,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:07:22,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:07:23,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:07:23,070.070 INFO    ] time= 25/10/2026 09:07:23
[2026-10-25 09:07:23,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:07:23,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:07:23,197.197 INFO    ] No existing commands found in stream
[2026-10-25 09:07:28,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:07:28,217.217 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 09:07:30,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:07:30,916.916 INFO    ] Checking for system updates...
[2026-10-25 09:07:30,953.953 INFO    ] 200
[2026-10-25 09:07:30,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:31,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:31,017.017 INFO    ] No update needed
[2026-10-25 09:07:31,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 09:07:31,057.057 INFO    ] 200
[2026-10-25 09:07:31,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:31,100.100 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:07:31,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:31,161.161 INFO    ] No camera update needed
[2026-10-25 09:07:31,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:07:31,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:07:31,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:07:31,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:07:33,219.219 INFO    ] ================================================
[2026-10-25 09:07:33,234.234 INFO    ] Launching Daemon at Sun Oct 25 09:07:33 IST 2026
[2026-10-25 09:07:33,244.244 INFO    ] ================================================
[2026-10-25 09:07:33,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:07:33
[2026-10-25 09:07:34,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:07:34,845.845 INFO    ] Initializing speech engine...
[2026-10-25 09:07:34,852.852 INFO    ] 2026-10-25 09:07:34
[2026-10-25 09:07:35,114.114 INFO    ] 2026-10-25 09:07:35
[2026-10-25 09:07:35,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:07:35,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:07:35,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:07:35,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:07:35,753.753 INFO    ] time= 25/10/2026 09:07:35
[2026-10-25 09:07:35,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:07:35,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:07:35,878.878 INFO    ] No existing commands found in stream
[2026-10-25 09:07:40,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:07:40,907.907 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 09:07:42,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:07:42,391.391 INFO    ] Checking for system updates...
[2026-10-25 09:07:42,426.426 INFO    ] 200
[2026-10-25 09:07:42,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:42,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:42,483.483 INFO    ] No update needed
[2026-10-25 09:07:42,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 09:07:42,519.519 INFO    ] 200
[2026-10-25 09:07:42,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:42,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:07:42,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:07:42,618.618 INFO    ] No camera update needed
[2026-10-25 09:07:42,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:07:42,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:07:42,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:07:42,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:07:44,674.674 INFO    ] ================================================
[2026-10-25 09:07:44,690.690 INFO    ] Launching Daemon at Sun Oct 25 09:07:44 IST 2026
[2026-10-25 09:07:44,701.701 INFO    ] ================================================
[2026-10-25 09:07:45,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:07:45
[2026-10-25 09:07:45,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:07:46,155.155 INFO    ] Initializing speech engine...
[2026-10-25 09:07:46,164.164 INFO    ] 2026-10-25 09:07:46
[2026-10-25 09:07:46,428.428 INFO    ] 2026-10-25 09:07:46
[2026-10-25 09:07:46,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:07:46,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:07:46,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:07:46,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:07:46,893.893 INFO    ] time= 25/10/2026 09:07:46
[2026-10-25 09:07:46,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:07:46,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:07:47,042.042 INFO    ] No existing commands found in stream
[2026-10-25 09:07:52,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:07:52,056.056 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 09:07:55,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:07:55,917.917 INFO    ] Checking for system updates...
[2026-10-25 09:07:55,953.953 INFO    ] 200
[2026-10-25 09:07:55,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:56,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:07:56,011.011 INFO    ] No update needed
[2026-10-25 09:07:56,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 09:07:56,048.048 INFO    ] 200
[2026-10-25 09:07:56,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:07:56,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:07:56,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:07:56,144.144 INFO    ] No camera update needed
[2026-10-25 09:07:56,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:07:56,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:07:56,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:07:56,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:07:58,202.202 INFO    ] ================================================
[2026-10-25 09:07:58,218.218 INFO    ] Launching Daemon at Sun Oct 25 09:07:58 IST 2026
[2026-10-25 09:07:58,229.229 INFO    ] ================================================
[2026-10-25 09:07:58,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:07:58
[2026-10-25 09:07:59,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:07:59,669.669 INFO    ] Initializing speech engine...
[2026-10-25 09:07:59,683.683 INFO    ] 2026-10-25 09:07:59
[2026-10-25 09:07:59,953.953 INFO    ] 2026-10-25 09:07:59
[2026-10-25 09:07:59,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:08:00,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:08:00,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:08:00,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:08:00,422.422 INFO    ] time= 25/10/2026 09:08:00
[2026-10-25 09:08:00,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:08:00,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:08:00,589.589 INFO    ] No existing commands found in stream
[2026-10-25 09:08:05,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:08:05,628.628 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 09:08:08,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:08:08,926.926 INFO    ] Checking for system updates...
[2026-10-25 09:08:08,966.966 INFO    ] 200
[2026-10-25 09:08:08,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:09,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:09,030.030 INFO    ] No update needed
[2026-10-25 09:08:09,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 09:08:09,066.066 INFO    ] 200
[2026-10-25 09:08:09,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:09,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:08:09,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:09,263.263 INFO    ] No camera update needed
[2026-10-25 09:08:09,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:08:09,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:08:09,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:08:09,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:08:11,319.319 INFO    ] ================================================
[2026-10-25 09:08:11,334.334 INFO    ] Launching Daemon at Sun Oct 25 09:08:11 IST 2026
[2026-10-25 09:08:11,345.345 INFO    ] ================================================
[2026-10-25 09:08:11,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:08:11
[2026-10-25 09:08:12,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:08:12,745.745 INFO    ] Initializing speech engine...
[2026-10-25 09:08:12,752.752 INFO    ] 2026-10-25 09:08:12
[2026-10-25 09:08:13,063.063 INFO    ] 2026-10-25 09:08:13
[2026-10-25 09:08:13,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:08:13,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:08:13,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:08:13,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:08:13,421.421 INFO    ] time= 25/10/2026 09:08:13
[2026-10-25 09:08:13,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:08:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:08:13,509.509 INFO    ] No existing commands found in stream
[2026-10-25 09:08:18,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:08:18,522.522 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 09:08:19,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:08:19,617.617 INFO    ] Checking for system updates...
[2026-10-25 09:08:19,652.652 INFO    ] 200
[2026-10-25 09:08:19,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:19,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:08:19,710.710 INFO    ] No update needed
[2026-10-25 09:08:19,713.713 INFO    ] Checking for camera pi updates...
[2026-10-25 09:08:19,750.750 INFO    ] 200
[2026-10-25 09:08:19,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:19,793.793 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:08:19,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:08:19,844.844 INFO    ] No camera update needed
[2026-10-25 09:08:19,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:08:19,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:08:19,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:08:19,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:08:21,899.899 INFO    ] ================================================
[2026-10-25 09:08:21,915.915 INFO    ] Launching Daemon at Sun Oct 25 09:08:21 IST 2026
[2026-10-25 09:08:21,927.927 INFO    ] ================================================
[2026-10-25 09:08:22,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:08:22
[2026-10-25 09:08:23,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:08:23,330.330 INFO    ] Initializing speech engine...
[2026-10-25 09:08:23,337.337 INFO    ] 2026-10-25 09:08:23
[2026-10-25 09:08:23,628.628 INFO    ] 2026-10-25 09:08:23
[2026-10-25 09:08:23,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:08:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:08:23,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:08:24,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:08:24,140.140 INFO    ] time= 25/10/2026 09:08:24
[2026-10-25 09:08:24,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:08:24,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:08:24,320.320 INFO    ] No existing commands found in stream
[2026-10-25 09:08:29,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:08:29,334.334 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 09:08:32,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:08:32,666.666 INFO    ] Checking for system updates...
[2026-10-25 09:08:32,702.702 INFO    ] 200
[2026-10-25 09:08:32,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:32,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:08:32,765.765 INFO    ] No update needed
[2026-10-25 09:08:32,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 09:08:32,802.802 INFO    ] 200
[2026-10-25 09:08:32,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:32,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:08:32,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:08:32,890.890 INFO    ] No camera update needed
[2026-10-25 09:08:32,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:08:32,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:08:32,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:08:32,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:08:34,948.948 INFO    ] ================================================
[2026-10-25 09:08:34,964.964 INFO    ] Launching Daemon at Sun Oct 25 09:08:34 IST 2026
[2026-10-25 09:08:34,975.975 INFO    ] ================================================
[2026-10-25 09:08:35,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:08:35
[2026-10-25 09:08:36,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:08:36,438.438 INFO    ] Initializing speech engine...
[2026-10-25 09:08:36,447.447 INFO    ] 2026-10-25 09:08:36
[2026-10-25 09:08:36,728.728 INFO    ] 2026-10-25 09:08:36
[2026-10-25 09:08:36,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:08:37,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:08:37,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:08:37,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:08:37,196.196 INFO    ] time= 25/10/2026 09:08:37
[2026-10-25 09:08:37,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:08:37,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:08:37,389.389 INFO    ] No existing commands found in stream
[2026-10-25 09:08:42,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:08:42,423.423 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 09:08:44,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:08:44,097.097 INFO    ] Checking for system updates...
[2026-10-25 09:08:44,134.134 INFO    ] 200
[2026-10-25 09:08:44,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:44,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:44,200.200 INFO    ] No update needed
[2026-10-25 09:08:44,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 09:08:44,241.241 INFO    ] 200
[2026-10-25 09:08:44,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:44,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:08:44,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:44,350.350 INFO    ] No camera update needed
[2026-10-25 09:08:44,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:08:44,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:08:44,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:08:44,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:08:46,408.408 INFO    ] ================================================
[2026-10-25 09:08:46,424.424 INFO    ] Launching Daemon at Sun Oct 25 09:08:46 IST 2026
[2026-10-25 09:08:46,435.435 INFO    ] ================================================
[2026-10-25 09:08:47,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:08:47
[2026-10-25 09:08:47,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:08:48,053.053 INFO    ] Initializing speech engine...
[2026-10-25 09:08:48,065.065 INFO    ] 2026-10-25 09:08:48
[2026-10-25 09:08:48,353.353 INFO    ] 2026-10-25 09:08:48
[2026-10-25 09:08:48,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:08:48,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:08:48,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:08:48,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:08:48,824.824 INFO    ] time= 25/10/2026 09:08:48
[2026-10-25 09:08:48,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:08:48,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:08:48,955.955 INFO    ] No existing commands found in stream
[2026-10-25 09:08:53,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:08:53,977.977 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 09:08:56,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:08:56,116.116 INFO    ] Checking for system updates...
[2026-10-25 09:08:56,152.152 INFO    ] 200
[2026-10-25 09:08:56,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:56,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:56,215.215 INFO    ] No update needed
[2026-10-25 09:08:56,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 09:08:56,251.251 INFO    ] 200
[2026-10-25 09:08:56,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:08:56,299.299 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:08:56,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:08:56,356.356 INFO    ] No camera update needed
[2026-10-25 09:08:56,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:08:56,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:08:56,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:08:56,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:08:58,412.412 INFO    ] ================================================
[2026-10-25 09:08:58,428.428 INFO    ] Launching Daemon at Sun Oct 25 09:08:58 IST 2026
[2026-10-25 09:08:58,440.440 INFO    ] ================================================
[2026-10-25 09:08:59,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:08:59
[2026-10-25 09:08:59,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:08:59,901.901 INFO    ] Initializing speech engine...
[2026-10-25 09:08:59,909.909 INFO    ] 2026-10-25 09:08:59
[2026-10-25 09:09:00,156.156 INFO    ] 2026-10-25 09:09:00
[2026-10-25 09:09:00,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:09:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:09:00,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:09:00,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:09:00,525.525 INFO    ] time= 25/10/2026 09:09:00
[2026-10-25 09:09:00,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:09:00,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:09:00,695.695 INFO    ] No existing commands found in stream
[2026-10-25 09:09:05,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:09:05,730.730 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 09:09:07,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:09:07,828.828 INFO    ] Checking for system updates...
[2026-10-25 09:09:07,864.864 INFO    ] 200
[2026-10-25 09:09:07,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:07,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:09:07,924.924 INFO    ] No update needed
[2026-10-25 09:09:07,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 09:09:07,960.960 INFO    ] 200
[2026-10-25 09:09:07,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:08,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:09:08,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:09:08,055.055 INFO    ] No camera update needed
[2026-10-25 09:09:08,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:09:08,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:09:08,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:09:08,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:09:10,110.110 INFO    ] ================================================
[2026-10-25 09:09:10,126.126 INFO    ] Launching Daemon at Sun Oct 25 09:09:10 IST 2026
[2026-10-25 09:09:10,137.137 INFO    ] ================================================
[2026-10-25 09:09:10,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:09:10
[2026-10-25 09:09:11,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:09:11,734.734 INFO    ] Initializing speech engine...
[2026-10-25 09:09:11,747.747 INFO    ] 2026-10-25 09:09:11
[2026-10-25 09:09:12,036.036 INFO    ] 2026-10-25 09:09:12
[2026-10-25 09:09:12,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:09:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:09:12,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:09:12,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:09:12,502.502 INFO    ] time= 25/10/2026 09:09:12
[2026-10-25 09:09:12,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:09:12,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:09:12,707.707 INFO    ] No existing commands found in stream
[2026-10-25 09:09:17,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:09:17,743.743 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 09:09:18,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:09:18,447.447 INFO    ] Checking for system updates...
[2026-10-25 09:09:18,483.483 INFO    ] 200
[2026-10-25 09:09:18,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:18,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:18,541.541 INFO    ] No update needed
[2026-10-25 09:09:18,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 09:09:18,578.578 INFO    ] 200
[2026-10-25 09:09:18,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:18,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:09:18,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:18,678.678 INFO    ] No camera update needed
[2026-10-25 09:09:18,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:09:18,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:09:18,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:09:18,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:09:20,733.733 INFO    ] ================================================
[2026-10-25 09:09:20,749.749 INFO    ] Launching Daemon at Sun Oct 25 09:09:20 IST 2026
[2026-10-25 09:09:20,760.760 INFO    ] ================================================
[2026-10-25 09:09:21,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:09:21
[2026-10-25 09:09:21,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:09:22,218.218 INFO    ] Initializing speech engine...
[2026-10-25 09:09:22,224.224 INFO    ] 2026-10-25 09:09:22
[2026-10-25 09:09:22,521.521 INFO    ] 2026-10-25 09:09:22
[2026-10-25 09:09:22,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:09:24,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:09:24,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:09:24,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:09:24,909.909 INFO    ] time= 25/10/2026 09:09:24
[2026-10-25 09:09:24,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:09:24,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:09:25,037.037 INFO    ] No existing commands found in stream
[2026-10-25 09:09:30,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:09:30,059.059 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 09:09:33,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:09:33,073.073 INFO    ] Checking for system updates...
[2026-10-25 09:09:33,109.109 INFO    ] 200
[2026-10-25 09:09:33,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:33,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:09:33,167.167 INFO    ] No update needed
[2026-10-25 09:09:33,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 09:09:33,208.208 INFO    ] 200
[2026-10-25 09:09:33,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:33,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:09:33,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:09:33,301.301 INFO    ] No camera update needed
[2026-10-25 09:09:33,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:09:33,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:09:33,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:09:33,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:09:35,356.356 INFO    ] ================================================
[2026-10-25 09:09:35,372.372 INFO    ] Launching Daemon at Sun Oct 25 09:09:35 IST 2026
[2026-10-25 09:09:35,383.383 INFO    ] ================================================
[2026-10-25 09:09:36,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:09:36
[2026-10-25 09:09:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:09:37,087.087 INFO    ] Initializing speech engine...
[2026-10-25 09:09:37,096.096 INFO    ] 2026-10-25 09:09:37
[2026-10-25 09:09:37,376.376 INFO    ] 2026-10-25 09:09:37
[2026-10-25 09:09:37,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:09:37,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:09:37,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:09:37,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:09:37,846.846 INFO    ] time= 25/10/2026 09:09:37
[2026-10-25 09:09:37,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:09:37,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:09:38,002.002 INFO    ] No existing commands found in stream
[2026-10-25 09:09:43,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:09:43,034.034 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 09:09:45,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:09:45,883.883 INFO    ] Checking for system updates...
[2026-10-25 09:09:45,922.922 INFO    ] 200
[2026-10-25 09:09:45,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:46,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:46,005.005 INFO    ] No update needed
[2026-10-25 09:09:46,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 09:09:46,043.043 INFO    ] 200
[2026-10-25 09:09:46,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:46,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:09:46,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:46,139.139 INFO    ] No camera update needed
[2026-10-25 09:09:46,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:09:46,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:09:46,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:09:46,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:09:48,200.200 INFO    ] ================================================
[2026-10-25 09:09:48,216.216 INFO    ] Launching Daemon at Sun Oct 25 09:09:48 IST 2026
[2026-10-25 09:09:48,228.228 INFO    ] ================================================
[2026-10-25 09:09:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:09:48
[2026-10-25 09:09:49,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:09:49,679.679 INFO    ] Initializing speech engine...
[2026-10-25 09:09:49,688.688 INFO    ] 2026-10-25 09:09:49
[2026-10-25 09:09:49,937.937 INFO    ] 2026-10-25 09:09:49
[2026-10-25 09:09:49,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:09:50,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:09:50,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:09:50,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:09:50,316.316 INFO    ] time= 25/10/2026 09:09:50
[2026-10-25 09:09:50,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:09:50,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:09:50,483.483 INFO    ] No existing commands found in stream
[2026-10-25 09:09:55,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:09:55,516.516 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 09:09:58,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:09:58,950.950 INFO    ] Checking for system updates...
[2026-10-25 09:09:58,987.987 INFO    ] 200
[2026-10-25 09:09:58,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:59,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:59,049.049 INFO    ] No update needed
[2026-10-25 09:09:59,052.052 INFO    ] Checking for camera pi updates...
[2026-10-25 09:09:59,091.091 INFO    ] 200
[2026-10-25 09:09:59,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:09:59,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:09:59,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:09:59,185.185 INFO    ] No camera update needed
[2026-10-25 09:09:59,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:09:59,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:09:59,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:09:59,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:10:01,242.242 INFO    ] ================================================
[2026-10-25 09:10:01,257.257 INFO    ] Launching Daemon at Sun Oct 25 09:10:01 IST 2026
[2026-10-25 09:10:01,269.269 INFO    ] ================================================
[2026-10-25 09:10:02,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:10:02
[2026-10-25 09:10:02,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:10:03,318.318 INFO    ] Initializing speech engine...
[2026-10-25 09:10:03,325.325 INFO    ] 2026-10-25 09:10:03
[2026-10-25 09:10:03,675.675 INFO    ] 2026-10-25 09:10:03
[2026-10-25 09:10:03,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:10:03,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:10:03,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:10:04,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:10:04,120.120 INFO    ] time= 25/10/2026 09:10:04
[2026-10-25 09:10:04,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:10:04,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:10:04,312.312 INFO    ] No existing commands found in stream
[2026-10-25 09:10:09,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:10:09,326.326 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 09:10:09,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:10:09,905.905 INFO    ] Checking for system updates...
[2026-10-25 09:10:09,943.943 INFO    ] 200
[2026-10-25 09:10:09,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:09,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:10,001.001 INFO    ] No update needed
[2026-10-25 09:10:10,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 09:10:10,039.039 INFO    ] 200
[2026-10-25 09:10:10,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:10,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:10:10,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:10,133.133 INFO    ] No camera update needed
[2026-10-25 09:10:10,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:10:10,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:10:10,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:10:10,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:10:12,189.189 INFO    ] ================================================
[2026-10-25 09:10:12,205.205 INFO    ] Launching Daemon at Sun Oct 25 09:10:12 IST 2026
[2026-10-25 09:10:12,215.215 INFO    ] ================================================
[2026-10-25 09:10:12,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:10:12
[2026-10-25 09:10:13,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:10:13,832.832 INFO    ] Initializing speech engine...
[2026-10-25 09:10:13,844.844 INFO    ] 2026-10-25 09:10:13
[2026-10-25 09:10:14,124.124 INFO    ] 2026-10-25 09:10:14
[2026-10-25 09:10:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:10:14,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:10:14,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:10:14,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:10:14,616.616 INFO    ] time= 25/10/2026 09:10:14
[2026-10-25 09:10:14,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:10:14,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:10:14,786.786 INFO    ] No existing commands found in stream
[2026-10-25 09:10:19,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:10:19,821.821 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 09:10:21,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:10:21,283.283 INFO    ] Checking for system updates...
[2026-10-25 09:10:21,320.320 INFO    ] 200
[2026-10-25 09:10:21,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:21,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:21,378.378 INFO    ] No update needed
[2026-10-25 09:10:21,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 09:10:21,416.416 INFO    ] 200
[2026-10-25 09:10:21,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:21,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:10:21,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:21,641.641 INFO    ] No camera update needed
[2026-10-25 09:10:21,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:10:21,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:10:21,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:10:21,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:10:23,696.696 INFO    ] ================================================
[2026-10-25 09:10:23,712.712 INFO    ] Launching Daemon at Sun Oct 25 09:10:23 IST 2026
[2026-10-25 09:10:23,722.722 INFO    ] ================================================
[2026-10-25 09:10:24,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:10:24
[2026-10-25 09:10:24,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:10:25,285.285 INFO    ] Initializing speech engine...
[2026-10-25 09:10:25,297.297 INFO    ] 2026-10-25 09:10:25
[2026-10-25 09:10:25,575.575 INFO    ] 2026-10-25 09:10:25
[2026-10-25 09:10:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:10:25,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:10:25,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:10:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:10:26,108.108 INFO    ] time= 25/10/2026 09:10:26
[2026-10-25 09:10:26,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:10:26,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:10:26,266.266 INFO    ] No existing commands found in stream
[2026-10-25 09:10:31,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:10:31,300.300 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 09:10:33,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:10:33,555.555 INFO    ] Checking for system updates...
[2026-10-25 09:10:33,592.592 INFO    ] 200
[2026-10-25 09:10:33,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:33,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:33,656.656 INFO    ] No update needed
[2026-10-25 09:10:33,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 09:10:33,693.693 INFO    ] 200
[2026-10-25 09:10:33,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:33,740.740 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:10:33,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:10:33,789.789 INFO    ] No camera update needed
[2026-10-25 09:10:33,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:10:33,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:10:33,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:10:33,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:10:35,843.843 INFO    ] ================================================
[2026-10-25 09:10:35,858.858 INFO    ] Launching Daemon at Sun Oct 25 09:10:35 IST 2026
[2026-10-25 09:10:35,868.868 INFO    ] ================================================
[2026-10-25 09:10:36,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:10:36
[2026-10-25 09:10:37,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:10:37,288.288 INFO    ] Initializing speech engine...
[2026-10-25 09:10:37,298.298 INFO    ] 2026-10-25 09:10:37
[2026-10-25 09:10:37,558.558 INFO    ] 2026-10-25 09:10:37
[2026-10-25 09:10:37,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:10:37,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:10:37,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:10:37,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:10:38,016.016 INFO    ] time= 25/10/2026 09:10:37
[2026-10-25 09:10:38,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:10:38,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:10:38,161.161 INFO    ] No existing commands found in stream
[2026-10-25 09:10:43,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:10:43,175.175 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 09:10:46,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:10:46,644.644 INFO    ] Checking for system updates...
[2026-10-25 09:10:46,681.681 INFO    ] 200
[2026-10-25 09:10:46,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:46,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:10:46,740.740 INFO    ] No update needed
[2026-10-25 09:10:46,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 09:10:46,777.777 INFO    ] 200
[2026-10-25 09:10:46,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:10:46,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:10:46,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:10:46,870.870 INFO    ] No camera update needed
[2026-10-25 09:10:46,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:10:46,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:10:46,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:10:46,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:10:48,925.925 INFO    ] ================================================
[2026-10-25 09:10:48,940.940 INFO    ] Launching Daemon at Sun Oct 25 09:10:48 IST 2026
[2026-10-25 09:10:48,950.950 INFO    ] ================================================
[2026-10-25 09:10:49,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:10:49
[2026-10-25 09:10:50,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:10:50,581.581 INFO    ] Initializing speech engine...
[2026-10-25 09:10:50,592.592 INFO    ] 2026-10-25 09:10:50
[2026-10-25 09:10:50,902.902 INFO    ] 2026-10-25 09:10:50
[2026-10-25 09:10:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:10:51,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:10:51,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:10:51,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:10:51,396.396 INFO    ] time= 25/10/2026 09:10:51
[2026-10-25 09:10:51,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:10:51,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:10:51,553.553 INFO    ] No existing commands found in stream
[2026-10-25 09:10:56,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:10:56,578.578 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 09:11:00,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:11:00,250.250 INFO    ] Checking for system updates...
[2026-10-25 09:11:00,287.287 INFO    ] 200
[2026-10-25 09:11:00,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:00,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:00,356.356 INFO    ] No update needed
[2026-10-25 09:11:00,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:00,394.394 INFO    ] 200
[2026-10-25 09:11:00,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:00,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:00,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:00,496.496 INFO    ] No camera update needed
[2026-10-25 09:11:00,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:00,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:00,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:00,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:11:02,555.555 INFO    ] ================================================
[2026-10-25 09:11:02,571.571 INFO    ] Launching Daemon at Sun Oct 25 09:11:02 IST 2026
[2026-10-25 09:11:02,583.583 INFO    ] ================================================
[2026-10-25 09:11:03,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:11:03
[2026-10-25 09:11:03,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:11:04,060.060 INFO    ] Initializing speech engine...
[2026-10-25 09:11:04,066.066 INFO    ] 2026-10-25 09:11:04
[2026-10-25 09:11:04,337.337 INFO    ] 2026-10-25 09:11:04
[2026-10-25 09:11:04,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:11:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:11:04,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:11:04,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:11:04,759.759 INFO    ] time= 25/10/2026 09:11:04
[2026-10-25 09:11:04,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:11:04,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:11:04,956.956 INFO    ] No existing commands found in stream
[2026-10-25 09:11:09,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:11:09,997.997 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 09:11:10,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:11:10,991.991 INFO    ] Checking for system updates...
[2026-10-25 09:11:11,031.031 INFO    ] 200
[2026-10-25 09:11:11,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:11,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:11,088.088 INFO    ] No update needed
[2026-10-25 09:11:11,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:11,124.124 INFO    ] 200
[2026-10-25 09:11:11,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:11,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:11,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:11,229.229 INFO    ] No camera update needed
[2026-10-25 09:11:11,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:11,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:11,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:11,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:11:13,285.285 INFO    ] ================================================
[2026-10-25 09:11:13,300.300 INFO    ] Launching Daemon at Sun Oct 25 09:11:13 IST 2026
[2026-10-25 09:11:13,311.311 INFO    ] ================================================
[2026-10-25 09:11:13,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:11:13
[2026-10-25 09:11:14,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:11:14,727.727 INFO    ] Initializing speech engine...
[2026-10-25 09:11:14,736.736 INFO    ] 2026-10-25 09:11:14
[2026-10-25 09:11:15,026.026 INFO    ] 2026-10-25 09:11:14
[2026-10-25 09:11:15,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:11:15,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:11:15,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:11:15,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:11:15,399.399 INFO    ] time= 25/10/2026 09:11:15
[2026-10-25 09:11:15,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:11:15,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:11:15,521.521 INFO    ] No existing commands found in stream
[2026-10-25 09:11:20,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:11:20,536.536 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 09:11:21,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:11:21,346.346 INFO    ] Checking for system updates...
[2026-10-25 09:11:21,402.402 INFO    ] 200
[2026-10-25 09:11:21,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:21,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:21,461.461 INFO    ] No update needed
[2026-10-25 09:11:21,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:21,497.497 INFO    ] 200
[2026-10-25 09:11:21,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:21,541.541 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:21,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:21,589.589 INFO    ] No camera update needed
[2026-10-25 09:11:21,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:21,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:21,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:21,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:11:23,646.646 INFO    ] ================================================
[2026-10-25 09:11:23,661.661 INFO    ] Launching Daemon at Sun Oct 25 09:11:23 IST 2026
[2026-10-25 09:11:23,671.671 INFO    ] ================================================
[2026-10-25 09:11:24,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:11:24
[2026-10-25 09:11:24,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:11:25,069.069 INFO    ] Initializing speech engine...
[2026-10-25 09:11:25,089.089 INFO    ] 2026-10-25 09:11:25
[2026-10-25 09:11:25,344.344 INFO    ] 2026-10-25 09:11:25
[2026-10-25 09:11:25,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:11:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:11:26,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:11:26,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:11:26,718.718 INFO    ] time= 25/10/2026 09:11:26
[2026-10-25 09:11:26,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:11:26,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:11:26,783.783 INFO    ] No existing commands found in stream
[2026-10-25 09:11:31,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:11:31,797.797 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 09:11:32,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:11:32,893.893 INFO    ] Checking for system updates...
[2026-10-25 09:11:32,929.929 INFO    ] 200
[2026-10-25 09:11:32,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:32,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:11:32,987.987 INFO    ] No update needed
[2026-10-25 09:11:32,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:33,026.026 INFO    ] 200
[2026-10-25 09:11:33,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:33,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:33,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:11:33,107.107 INFO    ] No camera update needed
[2026-10-25 09:11:33,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:33,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:33,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:33,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:11:35,163.163 INFO    ] ================================================
[2026-10-25 09:11:35,178.178 INFO    ] Launching Daemon at Sun Oct 25 09:11:35 IST 2026
[2026-10-25 09:11:35,189.189 INFO    ] ================================================
[2026-10-25 09:11:35,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:11:35
[2026-10-25 09:11:36,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:11:36,593.593 INFO    ] Initializing speech engine...
[2026-10-25 09:11:36,605.605 INFO    ] 2026-10-25 09:11:36
[2026-10-25 09:11:36,869.869 INFO    ] 2026-10-25 09:11:36
[2026-10-25 09:11:36,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:11:37,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:11:37,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:11:37,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:11:37,246.246 INFO    ] time= 25/10/2026 09:11:37
[2026-10-25 09:11:37,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:11:37,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:11:37,415.415 INFO    ] No existing commands found in stream
[2026-10-25 09:11:42,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:11:42,453.453 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 09:11:43,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:11:43,932.932 INFO    ] Checking for system updates...
[2026-10-25 09:11:43,973.973 INFO    ] 200
[2026-10-25 09:11:43,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:44,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:44,037.037 INFO    ] No update needed
[2026-10-25 09:11:44,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:44,074.074 INFO    ] 200
[2026-10-25 09:11:44,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:44,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:44,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:11:44,174.174 INFO    ] No camera update needed
[2026-10-25 09:11:44,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:44,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:44,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:44,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:11:46,232.232 INFO    ] ================================================
[2026-10-25 09:11:46,247.247 INFO    ] Launching Daemon at Sun Oct 25 09:11:46 IST 2026
[2026-10-25 09:11:46,258.258 INFO    ] ================================================
[2026-10-25 09:11:46,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:11:46
[2026-10-25 09:11:47,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:11:47,706.706 INFO    ] Initializing speech engine...
[2026-10-25 09:11:47,715.715 INFO    ] 2026-10-25 09:11:47
[2026-10-25 09:11:47,962.962 INFO    ] 2026-10-25 09:11:47
[2026-10-25 09:11:47,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:11:48,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:11:48,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:11:49,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:11:49,467.467 INFO    ] time= 25/10/2026 09:11:49
[2026-10-25 09:11:49,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:11:49,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:11:49,594.594 INFO    ] No existing commands found in stream
[2026-10-25 09:11:54,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:11:54,623.623 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 09:11:58,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:11:58,380.380 INFO    ] Checking for system updates...
[2026-10-25 09:11:58,416.416 INFO    ] 200
[2026-10-25 09:11:58,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:58,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:11:58,475.475 INFO    ] No update needed
[2026-10-25 09:11:58,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 09:11:58,513.513 INFO    ] 200
[2026-10-25 09:11:58,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:11:58,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:11:58,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:11:58,610.610 INFO    ] No camera update needed
[2026-10-25 09:11:58,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:11:58,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:11:58,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:11:58,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:12:00,666.666 INFO    ] ================================================
[2026-10-25 09:12:00,681.681 INFO    ] Launching Daemon at Sun Oct 25 09:12:00 IST 2026
[2026-10-25 09:12:00,691.691 INFO    ] ================================================
[2026-10-25 09:12:01,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:12:01
[2026-10-25 09:12:02,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:12:02,317.317 INFO    ] Initializing speech engine...
[2026-10-25 09:12:02,332.332 INFO    ] 2026-10-25 09:12:02
[2026-10-25 09:12:02,644.644 INFO    ] 2026-10-25 09:12:02
[2026-10-25 09:12:02,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:12:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:12:02,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:12:03,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:12:03,027.027 INFO    ] time= 25/10/2026 09:12:03
[2026-10-25 09:12:03,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:12:03,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:12:03,122.122 INFO    ] No existing commands found in stream
[2026-10-25 09:12:08,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:12:08,136.136 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 09:12:10,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:12:10,589.589 INFO    ] Checking for system updates...
[2026-10-25 09:12:10,625.625 INFO    ] 200
[2026-10-25 09:12:10,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:10,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:10,684.684 INFO    ] No update needed
[2026-10-25 09:12:10,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 09:12:10,724.724 INFO    ] 200
[2026-10-25 09:12:10,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:10,767.767 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:12:10,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:10,818.818 INFO    ] No camera update needed
[2026-10-25 09:12:10,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:12:10,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:12:10,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:12:10,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:12:12,873.873 INFO    ] ================================================
[2026-10-25 09:12:12,890.890 INFO    ] Launching Daemon at Sun Oct 25 09:12:12 IST 2026
[2026-10-25 09:12:12,901.901 INFO    ] ================================================
[2026-10-25 09:12:13,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:12:13
[2026-10-25 09:12:14,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:12:14,316.316 INFO    ] Initializing speech engine...
[2026-10-25 09:12:14,322.322 INFO    ] 2026-10-25 09:12:14
[2026-10-25 09:12:14,618.618 INFO    ] 2026-10-25 09:12:14
[2026-10-25 09:12:14,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:12:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:12:14,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:12:14,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:12:14,977.977 INFO    ] time= 25/10/2026 09:12:14
[2026-10-25 09:12:14,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:12:14,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:12:15,038.038 INFO    ] No existing commands found in stream
[2026-10-25 09:12:20,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:12:20,085.085 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 09:12:22,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:12:22,607.607 INFO    ] Checking for system updates...
[2026-10-25 09:12:22,645.645 INFO    ] 200
[2026-10-25 09:12:22,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:22,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:12:22,708.708 INFO    ] No update needed
[2026-10-25 09:12:22,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 09:12:22,744.744 INFO    ] 200
[2026-10-25 09:12:22,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:22,786.786 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:12:22,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:12:22,833.833 INFO    ] No camera update needed
[2026-10-25 09:12:22,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:12:22,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:12:22,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:12:22,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:12:24,888.888 INFO    ] ================================================
[2026-10-25 09:12:24,903.903 INFO    ] Launching Daemon at Sun Oct 25 09:12:24 IST 2026
[2026-10-25 09:12:24,914.914 INFO    ] ================================================
[2026-10-25 09:12:25,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:12:25
[2026-10-25 09:12:26,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:12:26,334.334 INFO    ] Initializing speech engine...
[2026-10-25 09:12:26,339.339 INFO    ] 2026-10-25 09:12:26
[2026-10-25 09:12:26,587.587 INFO    ] 2026-10-25 09:12:26
[2026-10-25 09:12:26,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:12:27,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:12:27,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:12:27,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:12:27,703.703 INFO    ] time= 25/10/2026 09:12:27
[2026-10-25 09:12:27,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:12:27,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:12:27,814.814 INFO    ] No existing commands found in stream
[2026-10-25 09:12:32,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:12:32,829.829 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 09:12:36,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:12:36,352.352 INFO    ] Checking for system updates...
[2026-10-25 09:12:36,387.387 INFO    ] 200
[2026-10-25 09:12:36,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:36,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:12:36,446.446 INFO    ] No update needed
[2026-10-25 09:12:36,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 09:12:36,482.482 INFO    ] 200
[2026-10-25 09:12:36,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:36,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:12:36,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:12:36,588.588 INFO    ] No camera update needed
[2026-10-25 09:12:36,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:12:36,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:12:36,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:12:36,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:12:38,645.645 INFO    ] ================================================
[2026-10-25 09:12:38,661.661 INFO    ] Launching Daemon at Sun Oct 25 09:12:38 IST 2026
[2026-10-25 09:12:38,672.672 INFO    ] ================================================
[2026-10-25 09:12:39,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:12:39
[2026-10-25 09:12:39,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:12:40,106.106 INFO    ] Initializing speech engine...
[2026-10-25 09:12:40,129.129 INFO    ] 2026-10-25 09:12:40
[2026-10-25 09:12:40,383.383 INFO    ] 2026-10-25 09:12:40
[2026-10-25 09:12:40,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:12:40,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:12:40,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:12:40,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:12:40,882.882 INFO    ] time= 25/10/2026 09:12:40
[2026-10-25 09:12:40,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:12:40,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:12:41,065.065 INFO    ] No existing commands found in stream
[2026-10-25 09:12:46,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:12:46,098.098 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 09:12:47,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:12:47,322.322 INFO    ] Checking for system updates...
[2026-10-25 09:12:47,359.359 INFO    ] 200
[2026-10-25 09:12:47,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:47,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:47,430.430 INFO    ] No update needed
[2026-10-25 09:12:47,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 09:12:47,467.467 INFO    ] 200
[2026-10-25 09:12:47,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:47,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:12:47,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:47,564.564 INFO    ] No camera update needed
[2026-10-25 09:12:47,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:12:47,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:12:47,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:12:47,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:12:49,619.619 INFO    ] ================================================
[2026-10-25 09:12:49,635.635 INFO    ] Launching Daemon at Sun Oct 25 09:12:49 IST 2026
[2026-10-25 09:12:49,646.646 INFO    ] ================================================
[2026-10-25 09:12:50,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:12:50
[2026-10-25 09:12:50,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:12:51,073.073 INFO    ] Initializing speech engine...
[2026-10-25 09:12:51,081.081 INFO    ] 2026-10-25 09:12:51
[2026-10-25 09:12:51,332.332 INFO    ] 2026-10-25 09:12:51
[2026-10-25 09:12:51,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:12:51,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:12:51,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:12:51,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:12:51,815.815 INFO    ] time= 25/10/2026 09:12:51
[2026-10-25 09:12:51,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:12:51,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:12:51,921.921 INFO    ] No existing commands found in stream
[2026-10-25 09:12:56,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:12:56,945.945 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 09:12:58,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:12:58,161.161 INFO    ] Checking for system updates...
[2026-10-25 09:12:58,197.197 INFO    ] 200
[2026-10-25 09:12:58,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:58,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:58,269.269 INFO    ] No update needed
[2026-10-25 09:12:58,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 09:12:58,311.311 INFO    ] 200
[2026-10-25 09:12:58,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:12:58,359.359 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:12:58,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:12:58,416.416 INFO    ] No camera update needed
[2026-10-25 09:12:58,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:12:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:12:58,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:12:58,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:13:00,474.474 INFO    ] ================================================
[2026-10-25 09:13:00,489.489 INFO    ] Launching Daemon at Sun Oct 25 09:13:00 IST 2026
[2026-10-25 09:13:00,501.501 INFO    ] ================================================
[2026-10-25 09:13:01,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:13:01
[2026-10-25 09:13:01,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:13:02,163.163 INFO    ] Initializing speech engine...
[2026-10-25 09:13:02,175.175 INFO    ] 2026-10-25 09:13:02
[2026-10-25 09:13:02,466.466 INFO    ] 2026-10-25 09:13:02
[2026-10-25 09:13:02,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:13:02,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:13:02,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:13:02,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:13:02,881.881 INFO    ] time= 25/10/2026 09:13:02
[2026-10-25 09:13:02,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:13:02,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:13:03,002.002 INFO    ] No existing commands found in stream
[2026-10-25 09:13:08,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:13:08,041.041 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 09:13:11,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:13:11,825.825 INFO    ] Checking for system updates...
[2026-10-25 09:13:11,867.867 INFO    ] 200
[2026-10-25 09:13:11,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:11,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:13:11,940.940 INFO    ] No update needed
[2026-10-25 09:13:11,943.943 INFO    ] Checking for camera pi updates...
[2026-10-25 09:13:11,980.980 INFO    ] 200
[2026-10-25 09:13:11,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:12,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:13:12,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:13:12,078.078 INFO    ] No camera update needed
[2026-10-25 09:13:12,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:13:12,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:13:12,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:13:12,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:13:14,133.133 INFO    ] ================================================
[2026-10-25 09:13:14,149.149 INFO    ] Launching Daemon at Sun Oct 25 09:13:14 IST 2026
[2026-10-25 09:13:14,161.161 INFO    ] ================================================
[2026-10-25 09:13:14,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:13:14
[2026-10-25 09:13:15,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:13:15,576.576 INFO    ] Initializing speech engine...
[2026-10-25 09:13:15,586.586 INFO    ] 2026-10-25 09:13:15
[2026-10-25 09:13:15,834.834 INFO    ] 2026-10-25 09:13:15
[2026-10-25 09:13:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:13:16,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:13:16,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:13:16,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:13:16,205.205 INFO    ] time= 25/10/2026 09:13:16
[2026-10-25 09:13:16,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:13:16,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:13:16,288.288 INFO    ] No existing commands found in stream
[2026-10-25 09:13:21,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:13:21,301.301 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 09:13:28,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:13:28,194.194 INFO    ] Checking for system updates...
[2026-10-25 09:13:28,230.230 INFO    ] 200
[2026-10-25 09:13:28,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:28,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:28,289.289 INFO    ] No update needed
[2026-10-25 09:13:28,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 09:13:28,336.336 INFO    ] 200
[2026-10-25 09:13:28,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:28,379.379 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:13:28,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:28,425.425 INFO    ] No camera update needed
[2026-10-25 09:13:28,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:13:28,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:13:28,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:13:28,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:13:30,481.481 INFO    ] ================================================
[2026-10-25 09:13:30,497.497 INFO    ] Launching Daemon at Sun Oct 25 09:13:30 IST 2026
[2026-10-25 09:13:30,508.508 INFO    ] ================================================
[2026-10-25 09:13:31,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:13:31
[2026-10-25 09:13:31,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:13:31,998.998 INFO    ] Initializing speech engine...
[2026-10-25 09:13:32,019.019 INFO    ] 2026-10-25 09:13:31
[2026-10-25 09:13:32,320.320 INFO    ] 2026-10-25 09:13:32
[2026-10-25 09:13:32,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:13:32,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:13:32,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:13:32,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:13:32,690.690 INFO    ] time= 25/10/2026 09:13:32
[2026-10-25 09:13:32,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:13:32,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:13:32,757.757 INFO    ] No existing commands found in stream
[2026-10-25 09:13:37,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:13:37,770.770 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 09:13:38,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:13:38,316.316 INFO    ] Checking for system updates...
[2026-10-25 09:13:38,355.355 INFO    ] 200
[2026-10-25 09:13:38,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:38,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:38,412.412 INFO    ] No update needed
[2026-10-25 09:13:38,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 09:13:38,454.454 INFO    ] 200
[2026-10-25 09:13:38,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:38,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:13:38,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:38,534.534 INFO    ] No camera update needed
[2026-10-25 09:13:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:13:38,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:13:38,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:13:38,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:13:40,591.591 INFO    ] ================================================
[2026-10-25 09:13:40,606.606 INFO    ] Launching Daemon at Sun Oct 25 09:13:40 IST 2026
[2026-10-25 09:13:40,617.617 INFO    ] ================================================
[2026-10-25 09:13:41,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:13:41
[2026-10-25 09:13:41,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:13:42,188.188 INFO    ] Initializing speech engine...
[2026-10-25 09:13:42,200.200 INFO    ] 2026-10-25 09:13:42
[2026-10-25 09:13:42,483.483 INFO    ] 2026-10-25 09:13:42
[2026-10-25 09:13:42,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:13:42,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:13:42,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:13:42,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:13:42,939.939 INFO    ] time= 25/10/2026 09:13:42
[2026-10-25 09:13:42,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:13:43,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:13:43,136.136 INFO    ] No existing commands found in stream
[2026-10-25 09:13:48,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:13:48,164.164 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 09:13:52,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:13:52,645.645 INFO    ] Checking for system updates...
[2026-10-25 09:13:52,685.685 INFO    ] 200
[2026-10-25 09:13:52,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:52,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:52,743.743 INFO    ] No update needed
[2026-10-25 09:13:52,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 09:13:52,779.779 INFO    ] 200
[2026-10-25 09:13:52,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:13:52,822.822 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:13:52,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:13:52,878.878 INFO    ] No camera update needed
[2026-10-25 09:13:52,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:13:52,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:13:52,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:13:52,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:13:54,934.934 INFO    ] ================================================
[2026-10-25 09:13:54,950.950 INFO    ] Launching Daemon at Sun Oct 25 09:13:54 IST 2026
[2026-10-25 09:13:54,960.960 INFO    ] ================================================
[2026-10-25 09:13:55,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:13:55
[2026-10-25 09:13:56,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:13:56,397.397 INFO    ] Initializing speech engine...
[2026-10-25 09:13:56,406.406 INFO    ] 2026-10-25 09:13:56
[2026-10-25 09:13:56,652.652 INFO    ] 2026-10-25 09:13:56
[2026-10-25 09:13:56,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:13:58,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:13:58,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:13:58,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:13:58,777.777 INFO    ] time= 25/10/2026 09:13:58
[2026-10-25 09:13:58,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:13:58,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:13:58,845.845 INFO    ] No existing commands found in stream
[2026-10-25 09:14:03,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:14:03,864.864 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 09:14:04,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:14:04,675.675 INFO    ] Checking for system updates...
[2026-10-25 09:14:04,711.711 INFO    ] 200
[2026-10-25 09:14:04,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:04,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:14:04,780.780 INFO    ] No update needed
[2026-10-25 09:14:04,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 09:14:04,816.816 INFO    ] 200
[2026-10-25 09:14:04,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:04,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:14:04,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:14:04,908.908 INFO    ] No camera update needed
[2026-10-25 09:14:04,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:14:04,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:14:04,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:14:04,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:14:06,964.964 INFO    ] ================================================
[2026-10-25 09:14:06,978.978 INFO    ] Launching Daemon at Sun Oct 25 09:14:06 IST 2026
[2026-10-25 09:14:06,989.989 INFO    ] ================================================
[2026-10-25 09:14:07,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:14:07
[2026-10-25 09:14:08,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:14:08,414.414 INFO    ] Initializing speech engine...
[2026-10-25 09:14:08,424.424 INFO    ] 2026-10-25 09:14:08
[2026-10-25 09:14:08,675.675 INFO    ] 2026-10-25 09:14:08
[2026-10-25 09:14:08,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:14:08,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:14:08,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:14:09,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:14:09,145.145 INFO    ] time= 25/10/2026 09:14:09
[2026-10-25 09:14:09,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:14:09,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:14:09,283.283 INFO    ] No existing commands found in stream
[2026-10-25 09:14:14,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:14:14,297.297 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 09:14:17,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:14:17,215.215 INFO    ] Checking for system updates...
[2026-10-25 09:14:17,261.261 INFO    ] 200
[2026-10-25 09:14:17,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:17,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:17,325.325 INFO    ] No update needed
[2026-10-25 09:14:17,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 09:14:17,361.361 INFO    ] 200
[2026-10-25 09:14:17,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:17,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:14:17,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:17,461.461 INFO    ] No camera update needed
[2026-10-25 09:14:17,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:14:17,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:14:17,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:14:17,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:14:19,516.516 INFO    ] ================================================
[2026-10-25 09:14:19,531.531 INFO    ] Launching Daemon at Sun Oct 25 09:14:19 IST 2026
[2026-10-25 09:14:19,541.541 INFO    ] ================================================
[2026-10-25 09:14:20,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:14:20
[2026-10-25 09:14:20,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:14:20,955.955 INFO    ] Initializing speech engine...
[2026-10-25 09:14:20,964.964 INFO    ] 2026-10-25 09:14:20
[2026-10-25 09:14:21,212.212 INFO    ] 2026-10-25 09:14:21
[2026-10-25 09:14:21,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:14:21,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:14:21,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:14:21,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:14:21,592.592 INFO    ] time= 25/10/2026 09:14:21
[2026-10-25 09:14:21,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:14:21,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:14:21,751.751 INFO    ] No existing commands found in stream
[2026-10-25 09:14:26,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:14:26,784.784 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 09:14:29,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:14:29,451.451 INFO    ] Checking for system updates...
[2026-10-25 09:14:29,494.494 INFO    ] 200
[2026-10-25 09:14:29,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:29,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:14:29,561.561 INFO    ] No update needed
[2026-10-25 09:14:29,564.564 INFO    ] Checking for camera pi updates...
[2026-10-25 09:14:29,600.600 INFO    ] 200
[2026-10-25 09:14:29,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:29,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:14:29,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:14:29,696.696 INFO    ] No camera update needed
[2026-10-25 09:14:29,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:14:29,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:14:29,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:14:29,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:14:31,756.756 INFO    ] ================================================
[2026-10-25 09:14:31,772.772 INFO    ] Launching Daemon at Sun Oct 25 09:14:31 IST 2026
[2026-10-25 09:14:31,784.784 INFO    ] ================================================
[2026-10-25 09:14:32,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:14:32
[2026-10-25 09:14:33,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:14:33,350.350 INFO    ] Initializing speech engine...
[2026-10-25 09:14:33,363.363 INFO    ] 2026-10-25 09:14:33
[2026-10-25 09:14:33,669.669 INFO    ] 2026-10-25 09:14:33
[2026-10-25 09:14:33,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:14:33,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:14:33,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:14:34,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:14:34,173.173 INFO    ] time= 25/10/2026 09:14:34
[2026-10-25 09:14:34,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:14:34,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:14:34,316.316 INFO    ] No existing commands found in stream
[2026-10-25 09:14:39,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:14:39,341.341 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 09:14:40,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:14:40,470.470 INFO    ] Checking for system updates...
[2026-10-25 09:14:40,508.508 INFO    ] 200
[2026-10-25 09:14:40,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:40,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:40,568.568 INFO    ] No update needed
[2026-10-25 09:14:40,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 09:14:40,609.609 INFO    ] 200
[2026-10-25 09:14:40,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:40,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:14:40,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:40,824.824 INFO    ] No camera update needed
[2026-10-25 09:14:40,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:14:40,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:14:40,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:14:40,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:14:42,884.884 INFO    ] ================================================
[2026-10-25 09:14:42,900.900 INFO    ] Launching Daemon at Sun Oct 25 09:14:42 IST 2026
[2026-10-25 09:14:42,911.911 INFO    ] ================================================
[2026-10-25 09:14:43,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:14:43
[2026-10-25 09:14:44,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:14:44,488.488 INFO    ] Initializing speech engine...
[2026-10-25 09:14:44,494.494 INFO    ] 2026-10-25 09:14:44
[2026-10-25 09:14:44,776.776 INFO    ] 2026-10-25 09:14:44
[2026-10-25 09:14:44,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:14:45,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:14:45,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:14:45,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:14:45,280.280 INFO    ] time= 25/10/2026 09:14:45
[2026-10-25 09:14:45,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:14:45,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:14:45,368.368 INFO    ] No existing commands found in stream
[2026-10-25 09:14:50,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:14:50,381.381 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 09:14:51,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:14:51,824.824 INFO    ] Checking for system updates...
[2026-10-25 09:14:51,864.864 INFO    ] 200
[2026-10-25 09:14:51,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:51,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:51,928.928 INFO    ] No update needed
[2026-10-25 09:14:51,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 09:14:51,967.967 INFO    ] 200
[2026-10-25 09:14:51,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:14:52,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:14:52,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:14:52,067.067 INFO    ] No camera update needed
[2026-10-25 09:14:52,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:14:52,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:14:52,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:14:52,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:14:54,123.123 INFO    ] ================================================
[2026-10-25 09:14:54,139.139 INFO    ] Launching Daemon at Sun Oct 25 09:14:54 IST 2026
[2026-10-25 09:14:54,151.151 INFO    ] ================================================
[2026-10-25 09:14:54,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:14:54
[2026-10-25 09:14:55,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:14:55,547.547 INFO    ] Initializing speech engine...
[2026-10-25 09:14:55,556.556 INFO    ] 2026-10-25 09:14:55
[2026-10-25 09:14:55,843.843 INFO    ] 2026-10-25 09:14:55
[2026-10-25 09:14:55,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:14:56,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:14:56,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:14:56,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:14:56,211.211 INFO    ] time= 25/10/2026 09:14:56
[2026-10-25 09:14:56,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:14:56,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:14:56,332.332 INFO    ] No existing commands found in stream
[2026-10-25 09:15:01,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:15:01,348.348 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 09:15:04,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:15:04,774.774 INFO    ] Checking for system updates...
[2026-10-25 09:15:04,810.810 INFO    ] 200
[2026-10-25 09:15:04,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:04,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:04,875.875 INFO    ] No update needed
[2026-10-25 09:15:04,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 09:15:04,912.912 INFO    ] 200
[2026-10-25 09:15:04,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:04,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:15:05,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:05,017.017 INFO    ] No camera update needed
[2026-10-25 09:15:05,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:15:05,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:15:05,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:15:05,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:15:07,072.072 INFO    ] ================================================
[2026-10-25 09:15:07,087.087 INFO    ] Launching Daemon at Sun Oct 25 09:15:07 IST 2026
[2026-10-25 09:15:07,099.099 INFO    ] ================================================
[2026-10-25 09:15:07,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:15:07
[2026-10-25 09:15:08,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:15:08,624.624 INFO    ] Initializing speech engine...
[2026-10-25 09:15:08,630.630 INFO    ] 2026-10-25 09:15:08
[2026-10-25 09:15:08,898.898 INFO    ] 2026-10-25 09:15:08
[2026-10-25 09:15:08,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:15:09,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:15:09,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:15:09,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:15:09,363.363 INFO    ] time= 25/10/2026 09:15:09
[2026-10-25 09:15:09,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:15:09,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:15:09,595.595 INFO    ] No existing commands found in stream
[2026-10-25 09:15:14,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:15:14,619.619 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 09:15:16,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:15:16,096.096 INFO    ] Checking for system updates...
[2026-10-25 09:15:16,132.132 INFO    ] 200
[2026-10-25 09:15:16,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:16,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:16,201.201 INFO    ] No update needed
[2026-10-25 09:15:16,204.204 INFO    ] Checking for camera pi updates...
[2026-10-25 09:15:16,241.241 INFO    ] 200
[2026-10-25 09:15:16,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:16,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:15:16,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:16,342.342 INFO    ] No camera update needed
[2026-10-25 09:15:16,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:15:16,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:15:16,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:15:16,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:15:18,403.403 INFO    ] ================================================
[2026-10-25 09:15:18,420.420 INFO    ] Launching Daemon at Sun Oct 25 09:15:18 IST 2026
[2026-10-25 09:15:18,431.431 INFO    ] ================================================
[2026-10-25 09:15:19,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:15:18
[2026-10-25 09:15:19,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:15:19,831.831 INFO    ] Initializing speech engine...
[2026-10-25 09:15:19,839.839 INFO    ] 2026-10-25 09:15:19
[2026-10-25 09:15:20,113.113 INFO    ] 2026-10-25 09:15:20
[2026-10-25 09:15:20,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:15:20,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:15:20,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:15:20,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:15:20,575.575 INFO    ] time= 25/10/2026 09:15:20
[2026-10-25 09:15:20,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:15:20,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:15:20,750.750 INFO    ] No existing commands found in stream
[2026-10-25 09:15:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:15:25,765.765 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 09:15:26,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:15:26,526.526 INFO    ] Checking for system updates...
[2026-10-25 09:15:26,562.562 INFO    ] 200
[2026-10-25 09:15:26,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:26,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:15:26,621.621 INFO    ] No update needed
[2026-10-25 09:15:26,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 09:15:26,657.657 INFO    ] 200
[2026-10-25 09:15:26,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:26,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:15:26,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:15:26,761.761 INFO    ] No camera update needed
[2026-10-25 09:15:26,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:15:26,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:15:26,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:15:26,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:15:28,823.823 INFO    ] ================================================
[2026-10-25 09:15:28,838.838 INFO    ] Launching Daemon at Sun Oct 25 09:15:28 IST 2026
[2026-10-25 09:15:28,849.849 INFO    ] ================================================
[2026-10-25 09:15:29,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:15:29
[2026-10-25 09:15:30,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:15:30,259.259 INFO    ] Initializing speech engine...
[2026-10-25 09:15:30,266.266 INFO    ] 2026-10-25 09:15:30
[2026-10-25 09:15:30,566.566 INFO    ] 2026-10-25 09:15:30
[2026-10-25 09:15:30,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:15:30,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:15:30,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:15:30,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:15:30,979.979 INFO    ] time= 25/10/2026 09:15:30
[2026-10-25 09:15:30,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:15:31,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:15:31,138.138 INFO    ] No existing commands found in stream
[2026-10-25 09:15:36,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:15:36,165.165 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 09:15:38,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:15:38,594.594 INFO    ] Checking for system updates...
[2026-10-25 09:15:38,631.631 INFO    ] 200
[2026-10-25 09:15:38,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:38,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:15:38,693.693 INFO    ] No update needed
[2026-10-25 09:15:38,696.696 INFO    ] Checking for camera pi updates...
[2026-10-25 09:15:38,729.729 INFO    ] 200
[2026-10-25 09:15:38,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:38,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:15:38,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:15:38,820.820 INFO    ] No camera update needed
[2026-10-25 09:15:38,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:15:38,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:15:38,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:15:38,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:15:40,876.876 INFO    ] ================================================
[2026-10-25 09:15:40,892.892 INFO    ] Launching Daemon at Sun Oct 25 09:15:40 IST 2026
[2026-10-25 09:15:40,903.903 INFO    ] ================================================
[2026-10-25 09:15:41,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:15:41
[2026-10-25 09:15:42,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:15:42,398.398 INFO    ] Initializing speech engine...
[2026-10-25 09:15:42,407.407 INFO    ] 2026-10-25 09:15:42
[2026-10-25 09:15:42,668.668 INFO    ] 2026-10-25 09:15:42
[2026-10-25 09:15:42,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:15:43,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:15:43,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:15:43,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:15:43,210.210 INFO    ] time= 25/10/2026 09:15:43
[2026-10-25 09:15:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:15:43,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:15:43,345.345 INFO    ] No existing commands found in stream
[2026-10-25 09:15:48,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:15:48,373.373 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 09:15:50,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:15:50,285.285 INFO    ] Checking for system updates...
[2026-10-25 09:15:50,324.324 INFO    ] 200
[2026-10-25 09:15:50,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:50,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:50,388.388 INFO    ] No update needed
[2026-10-25 09:15:50,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 09:15:50,427.427 INFO    ] 200
[2026-10-25 09:15:50,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:15:50,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:15:50,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:15:50,526.526 INFO    ] No camera update needed
[2026-10-25 09:15:50,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:15:50,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:15:50,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:15:50,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:15:52,583.583 INFO    ] ================================================
[2026-10-25 09:15:52,599.599 INFO    ] Launching Daemon at Sun Oct 25 09:15:52 IST 2026
[2026-10-25 09:15:52,612.612 INFO    ] ================================================
[2026-10-25 09:15:53,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:15:53
[2026-10-25 09:15:53,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:15:54,233.233 INFO    ] Initializing speech engine...
[2026-10-25 09:15:54,242.242 INFO    ] 2026-10-25 09:15:54
[2026-10-25 09:15:54,523.523 INFO    ] 2026-10-25 09:15:54
[2026-10-25 09:15:54,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:15:54,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:15:54,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:15:54,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:15:54,972.972 INFO    ] time= 25/10/2026 09:15:54
[2026-10-25 09:15:55,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:15:55,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:15:55,121.121 INFO    ] No existing commands found in stream
[2026-10-25 09:16:00,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:16:00,136.136 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 09:16:02,917.917 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:16:02,922.922 INFO    ] Checking for system updates...
[2026-10-25 09:16:02,975.975 INFO    ] 200
[2026-10-25 09:16:02,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:03,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:03,046.046 INFO    ] No update needed
[2026-10-25 09:16:03,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 09:16:03,091.091 INFO    ] 200
[2026-10-25 09:16:03,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:03,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:16:03,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:03,214.214 INFO    ] No camera update needed
[2026-10-25 09:16:03,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:16:03,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:16:03,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:16:03,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:16:05,273.273 INFO    ] ================================================
[2026-10-25 09:16:05,288.288 INFO    ] Launching Daemon at Sun Oct 25 09:16:05 IST 2026
[2026-10-25 09:16:05,299.299 INFO    ] ================================================
[2026-10-25 09:16:05,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:16:05
[2026-10-25 09:16:06,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:16:06,702.702 INFO    ] Initializing speech engine...
[2026-10-25 09:16:06,711.711 INFO    ] 2026-10-25 09:16:06
[2026-10-25 09:16:06,986.986 INFO    ] 2026-10-25 09:16:06
[2026-10-25 09:16:07,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:16:07,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:16:07,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:16:07,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:16:07,363.363 INFO    ] time= 25/10/2026 09:16:07
[2026-10-25 09:16:07,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:16:07,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:16:07,546.546 INFO    ] No existing commands found in stream
[2026-10-25 09:16:12,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:16:12,574.574 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 09:16:15,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:16:15,090.090 INFO    ] Checking for system updates...
[2026-10-25 09:16:15,139.139 INFO    ] 200
[2026-10-25 09:16:15,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:15,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:15,201.201 INFO    ] No update needed
[2026-10-25 09:16:15,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 09:16:15,243.243 INFO    ] 200
[2026-10-25 09:16:15,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:15,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:16:15,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:15,338.338 INFO    ] No camera update needed
[2026-10-25 09:16:15,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:16:15,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:16:15,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:16:15,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:16:17,396.396 INFO    ] ================================================
[2026-10-25 09:16:17,412.412 INFO    ] Launching Daemon at Sun Oct 25 09:16:17 IST 2026
[2026-10-25 09:16:17,422.422 INFO    ] ================================================
[2026-10-25 09:16:18,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:16:18
[2026-10-25 09:16:18,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:16:19,062.062 INFO    ] Initializing speech engine...
[2026-10-25 09:16:19,076.076 INFO    ] 2026-10-25 09:16:19
[2026-10-25 09:16:19,385.385 INFO    ] 2026-10-25 09:16:19
[2026-10-25 09:16:19,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:16:19,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:16:19,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:16:19,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:16:19,827.827 INFO    ] time= 25/10/2026 09:16:19
[2026-10-25 09:16:19,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:16:19,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:16:19,960.960 INFO    ] No existing commands found in stream
[2026-10-25 09:16:24,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:16:24,984.984 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 09:16:31,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:16:31,125.125 INFO    ] Checking for system updates...
[2026-10-25 09:16:31,170.170 INFO    ] 200
[2026-10-25 09:16:31,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:31,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:16:31,243.243 INFO    ] No update needed
[2026-10-25 09:16:31,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 09:16:31,282.282 INFO    ] 200
[2026-10-25 09:16:31,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:31,326.326 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:16:31,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:16:31,375.375 INFO    ] No camera update needed
[2026-10-25 09:16:31,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:16:31,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:16:31,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:16:31,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:16:33,431.431 INFO    ] ================================================
[2026-10-25 09:16:33,446.446 INFO    ] Launching Daemon at Sun Oct 25 09:16:33 IST 2026
[2026-10-25 09:16:33,457.457 INFO    ] ================================================
[2026-10-25 09:16:34,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:16:34
[2026-10-25 09:16:34,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:16:35,220.220 INFO    ] Initializing speech engine...
[2026-10-25 09:16:35,232.232 INFO    ] 2026-10-25 09:16:35
[2026-10-25 09:16:35,516.516 INFO    ] 2026-10-25 09:16:35
[2026-10-25 09:16:35,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:16:35,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:16:35,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:16:35,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:16:36,023.023 INFO    ] time= 25/10/2026 09:16:35
[2026-10-25 09:16:36,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:16:36,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:16:36,189.189 INFO    ] No existing commands found in stream
[2026-10-25 09:16:41,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:16:41,226.226 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 09:16:43,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:16:43,821.821 INFO    ] Checking for system updates...
[2026-10-25 09:16:43,862.862 INFO    ] 200
[2026-10-25 09:16:43,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:43,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:43,928.928 INFO    ] No update needed
[2026-10-25 09:16:43,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 09:16:43,965.965 INFO    ] 200
[2026-10-25 09:16:43,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:44,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:16:44,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:44,178.178 INFO    ] No camera update needed
[2026-10-25 09:16:44,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:16:44,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:16:44,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:16:44,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:16:46,233.233 INFO    ] ================================================
[2026-10-25 09:16:46,248.248 INFO    ] Launching Daemon at Sun Oct 25 09:16:46 IST 2026
[2026-10-25 09:16:46,258.258 INFO    ] ================================================
[2026-10-25 09:16:46,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:16:46
[2026-10-25 09:16:47,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:16:47,871.871 INFO    ] Initializing speech engine...
[2026-10-25 09:16:47,878.878 INFO    ] 2026-10-25 09:16:47
[2026-10-25 09:16:48,170.170 INFO    ] 2026-10-25 09:16:48
[2026-10-25 09:16:48,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:16:48,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:16:48,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:16:48,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:16:48,654.654 INFO    ] time= 25/10/2026 09:16:48
[2026-10-25 09:16:48,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:16:48,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:16:48,834.834 INFO    ] No existing commands found in stream
[2026-10-25 09:16:53,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:16:53,875.875 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 09:16:56,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:16:56,913.913 INFO    ] Checking for system updates...
[2026-10-25 09:16:56,949.949 INFO    ] 200
[2026-10-25 09:16:56,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:57,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:57,015.015 INFO    ] No update needed
[2026-10-25 09:16:57,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 09:16:57,051.051 INFO    ] 200
[2026-10-25 09:16:57,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:16:57,100.100 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:16:57,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:16:57,159.159 INFO    ] No camera update needed
[2026-10-25 09:16:57,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:16:57,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:16:57,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:16:57,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:16:59,215.215 INFO    ] ================================================
[2026-10-25 09:16:59,230.230 INFO    ] Launching Daemon at Sun Oct 25 09:16:59 IST 2026
[2026-10-25 09:16:59,241.241 INFO    ] ================================================
[2026-10-25 09:16:59,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:16:59
[2026-10-25 09:17:00,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:17:00,717.717 INFO    ] Initializing speech engine...
[2026-10-25 09:17:00,726.726 INFO    ] 2026-10-25 09:17:00
[2026-10-25 09:17:00,986.986 INFO    ] 2026-10-25 09:17:00
[2026-10-25 09:17:01,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:17:01,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:17:01,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:17:01,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:17:01,722.722 INFO    ] time= 25/10/2026 09:17:01
[2026-10-25 09:17:01,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:17:01,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:17:01,824.824 INFO    ] No existing commands found in stream
[2026-10-25 09:17:06,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:17:06,837.837 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 09:17:09,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:17:09,514.514 INFO    ] Checking for system updates...
[2026-10-25 09:17:09,554.554 INFO    ] 200
[2026-10-25 09:17:09,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:09,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:09,619.619 INFO    ] No update needed
[2026-10-25 09:17:09,621.621 INFO    ] Checking for camera pi updates...
[2026-10-25 09:17:09,661.661 INFO    ] 200
[2026-10-25 09:17:09,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:09,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:17:09,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:09,755.755 INFO    ] No camera update needed
[2026-10-25 09:17:09,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:17:09,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:17:09,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:17:09,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:17:11,812.812 INFO    ] ================================================
[2026-10-25 09:17:11,828.828 INFO    ] Launching Daemon at Sun Oct 25 09:17:11 IST 2026
[2026-10-25 09:17:11,839.839 INFO    ] ================================================
[2026-10-25 09:17:12,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:17:12
[2026-10-25 09:17:13,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:17:13,261.261 INFO    ] Initializing speech engine...
[2026-10-25 09:17:13,285.285 INFO    ] 2026-10-25 09:17:13
[2026-10-25 09:17:13,547.547 INFO    ] 2026-10-25 09:17:13
[2026-10-25 09:17:13,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:17:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:17:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:17:13,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:17:13,935.935 INFO    ] time= 25/10/2026 09:17:13
[2026-10-25 09:17:13,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:17:13,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:17:14,100.100 INFO    ] No existing commands found in stream
[2026-10-25 09:17:19,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:17:19,134.134 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 09:17:21,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:17:21,530.530 INFO    ] Checking for system updates...
[2026-10-25 09:17:21,572.572 INFO    ] 200
[2026-10-25 09:17:21,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:21,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:21,632.632 INFO    ] No update needed
[2026-10-25 09:17:21,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 09:17:21,674.674 INFO    ] 200
[2026-10-25 09:17:21,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:21,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:17:21,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:21,778.778 INFO    ] No camera update needed
[2026-10-25 09:17:21,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:17:21,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:17:21,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:17:21,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:17:23,838.838 INFO    ] ================================================
[2026-10-25 09:17:23,854.854 INFO    ] Launching Daemon at Sun Oct 25 09:17:23 IST 2026
[2026-10-25 09:17:23,864.864 INFO    ] ================================================
[2026-10-25 09:17:24,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:17:24
[2026-10-25 09:17:25,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:17:25,384.384 INFO    ] Initializing speech engine...
[2026-10-25 09:17:25,393.393 INFO    ] 2026-10-25 09:17:25
[2026-10-25 09:17:25,685.685 INFO    ] 2026-10-25 09:17:25
[2026-10-25 09:17:25,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:17:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:17:25,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:17:26,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:17:26,160.160 INFO    ] time= 25/10/2026 09:17:26
[2026-10-25 09:17:26,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:17:26,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:17:26,293.293 INFO    ] No existing commands found in stream
[2026-10-25 09:17:31,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:17:31,311.311 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 09:17:32,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:17:32,962.962 INFO    ] Checking for system updates...
[2026-10-25 09:17:33,020.020 INFO    ] 200
[2026-10-25 09:17:33,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:33,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:33,083.083 INFO    ] No update needed
[2026-10-25 09:17:33,086.086 INFO    ] Checking for camera pi updates...
[2026-10-25 09:17:33,124.124 INFO    ] 200
[2026-10-25 09:17:33,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:33,168.168 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:17:33,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:33,235.235 INFO    ] No camera update needed
[2026-10-25 09:17:33,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:17:33,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:17:33,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:17:33,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:17:35,290.290 INFO    ] ================================================
[2026-10-25 09:17:35,306.306 INFO    ] Launching Daemon at Sun Oct 25 09:17:35 IST 2026
[2026-10-25 09:17:35,317.317 INFO    ] ================================================
[2026-10-25 09:17:35,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:17:35
[2026-10-25 09:17:36,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:17:36,827.827 INFO    ] Initializing speech engine...
[2026-10-25 09:17:36,836.836 INFO    ] 2026-10-25 09:17:36
[2026-10-25 09:17:37,138.138 INFO    ] 2026-10-25 09:17:37
[2026-10-25 09:17:37,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:17:37,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:17:37,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:17:37,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:17:37,555.555 INFO    ] time= 25/10/2026 09:17:37
[2026-10-25 09:17:37,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:17:37,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:17:37,695.695 INFO    ] No existing commands found in stream
[2026-10-25 09:17:42,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:17:42,710.710 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 09:17:43,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:17:43,886.886 INFO    ] Checking for system updates...
[2026-10-25 09:17:43,922.922 INFO    ] 200
[2026-10-25 09:17:43,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:44,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:44,016.016 INFO    ] No update needed
[2026-10-25 09:17:44,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 09:17:44,056.056 INFO    ] 200
[2026-10-25 09:17:44,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:44,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:17:44,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:44,154.154 INFO    ] No camera update needed
[2026-10-25 09:17:44,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:17:44,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:17:44,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:17:44,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:17:46,210.210 INFO    ] ================================================
[2026-10-25 09:17:46,225.225 INFO    ] Launching Daemon at Sun Oct 25 09:17:46 IST 2026
[2026-10-25 09:17:46,236.236 INFO    ] ================================================
[2026-10-25 09:17:46,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:17:46
[2026-10-25 09:17:47,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:17:47,640.640 INFO    ] Initializing speech engine...
[2026-10-25 09:17:47,649.649 INFO    ] 2026-10-25 09:17:47
[2026-10-25 09:17:47,944.944 INFO    ] 2026-10-25 09:17:47
[2026-10-25 09:17:47,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:17:48,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:17:48,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:17:48,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:17:48,338.338 INFO    ] time= 25/10/2026 09:17:48
[2026-10-25 09:17:48,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:17:48,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:17:48,523.523 INFO    ] No existing commands found in stream
[2026-10-25 09:17:53,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:17:53,551.551 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 09:17:57,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:17:58,001.001 INFO    ] Checking for system updates...
[2026-10-25 09:17:58,042.042 INFO    ] 200
[2026-10-25 09:17:58,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:58,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:58,100.100 INFO    ] No update needed
[2026-10-25 09:17:58,103.103 INFO    ] Checking for camera pi updates...
[2026-10-25 09:17:58,136.136 INFO    ] 200
[2026-10-25 09:17:58,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:17:58,180.180 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:17:58,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:17:58,229.229 INFO    ] No camera update needed
[2026-10-25 09:17:58,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:17:58,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:17:58,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:17:58,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:00,286.286 INFO    ] ================================================
[2026-10-25 09:18:00,301.301 INFO    ] Launching Daemon at Sun Oct 25 09:18:00 IST 2026
[2026-10-25 09:18:00,312.312 INFO    ] ================================================
[2026-10-25 09:18:00,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:00
[2026-10-25 09:18:01,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:18:01,719.719 INFO    ] Initializing speech engine...
[2026-10-25 09:18:01,725.725 INFO    ] 2026-10-25 09:18:01
[2026-10-25 09:18:02,009.009 INFO    ] 2026-10-25 09:18:01
[2026-10-25 09:18:02,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:18:02,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:18:02,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:18:02,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:18:02,589.589 INFO    ] time= 25/10/2026 09:18:02
[2026-10-25 09:18:02,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:18:02,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:18:02,679.679 INFO    ] No existing commands found in stream
[2026-10-25 09:18:07,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:18:07,709.709 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 09:18:12,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:18:12,143.143 INFO    ] Checking for system updates...
[2026-10-25 09:18:12,184.184 INFO    ] 200
[2026-10-25 09:18:12,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:12,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:12,255.255 INFO    ] No update needed
[2026-10-25 09:18:12,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 09:18:12,296.296 INFO    ] 200
[2026-10-25 09:18:12,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:12,345.345 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:18:12,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:12,413.413 INFO    ] No camera update needed
[2026-10-25 09:18:12,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:18:12,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:18:12,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:18:12,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:14,481.481 INFO    ] ================================================
[2026-10-25 09:18:14,496.496 INFO    ] Launching Daemon at Sun Oct 25 09:18:14 IST 2026
[2026-10-25 09:18:14,507.507 INFO    ] ================================================
[2026-10-25 09:18:15,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:15
[2026-10-25 09:18:15,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:18:16,120.120 INFO    ] Initializing speech engine...
[2026-10-25 09:18:16,132.132 INFO    ] 2026-10-25 09:18:16
[2026-10-25 09:18:16,445.445 INFO    ] 2026-10-25 09:18:16
[2026-10-25 09:18:16,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:18:16,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:18:16,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:18:16,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:18:16,884.884 INFO    ] time= 25/10/2026 09:18:16
[2026-10-25 09:18:16,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:18:16,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:18:17,102.102 INFO    ] No existing commands found in stream
[2026-10-25 09:18:22,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:18:22,126.126 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 09:18:24,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:18:24,254.254 INFO    ] Checking for system updates...
[2026-10-25 09:18:24,294.294 INFO    ] 200
[2026-10-25 09:18:24,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:24,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:24,358.358 INFO    ] No update needed
[2026-10-25 09:18:24,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 09:18:24,397.397 INFO    ] 200
[2026-10-25 09:18:24,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:24,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:18:24,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:24,497.497 INFO    ] No camera update needed
[2026-10-25 09:18:24,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:18:24,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:18:24,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:18:24,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:26,552.552 INFO    ] ================================================
[2026-10-25 09:18:26,568.568 INFO    ] Launching Daemon at Sun Oct 25 09:18:26 IST 2026
[2026-10-25 09:18:26,578.578 INFO    ] ================================================
[2026-10-25 09:18:27,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:27
[2026-10-25 09:18:27,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:18:28,199.199 INFO    ] Initializing speech engine...
[2026-10-25 09:18:28,206.206 INFO    ] 2026-10-25 09:18:28
[2026-10-25 09:18:28,486.486 INFO    ] 2026-10-25 09:18:28
[2026-10-25 09:18:28,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:18:28,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:18:28,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:18:28,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:18:28,946.946 INFO    ] time= 25/10/2026 09:18:28
[2026-10-25 09:18:29,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:18:29,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:18:29,162.162 INFO    ] No existing commands found in stream
[2026-10-25 09:18:34,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:18:34,186.186 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 09:18:35,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:18:35,240.240 INFO    ] Checking for system updates...
[2026-10-25 09:18:35,280.280 INFO    ] 200
[2026-10-25 09:18:35,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:35,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:35,344.344 INFO    ] No update needed
[2026-10-25 09:18:35,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 09:18:35,383.383 INFO    ] 200
[2026-10-25 09:18:35,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:35,426.426 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:18:35,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:35,473.473 INFO    ] No camera update needed
[2026-10-25 09:18:35,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:18:35,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:18:35,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:18:35,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:37,527.527 INFO    ] ================================================
[2026-10-25 09:18:37,543.543 INFO    ] Launching Daemon at Sun Oct 25 09:18:37 IST 2026
[2026-10-25 09:18:37,553.553 INFO    ] ================================================
[2026-10-25 09:18:38,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:38
[2026-10-25 09:18:38,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:18:39,204.204 INFO    ] Initializing speech engine...
[2026-10-25 09:18:39,213.213 INFO    ] 2026-10-25 09:18:39
[2026-10-25 09:18:39,486.486 INFO    ] 2026-10-25 09:18:39
[2026-10-25 09:18:39,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:18:39,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:18:39,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:18:39,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:18:39,864.864 INFO    ] time= 25/10/2026 09:18:39
[2026-10-25 09:18:39,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:18:39,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:18:40,057.057 INFO    ] No existing commands found in stream
[2026-10-25 09:18:45,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:18:45,072.072 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 09:18:45,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:18:45,703.703 INFO    ] Checking for system updates...
[2026-10-25 09:18:45,741.741 INFO    ] 200
[2026-10-25 09:18:45,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:45,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:45,799.799 INFO    ] No update needed
[2026-10-25 09:18:45,802.802 INFO    ] Checking for camera pi updates...
[2026-10-25 09:18:45,836.836 INFO    ] 200
[2026-10-25 09:18:45,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:45,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:18:46,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:18:46,021.021 INFO    ] No camera update needed
[2026-10-25 09:18:46,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:18:46,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:18:46,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:18:46,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:48,079.079 INFO    ] ================================================
[2026-10-25 09:18:48,094.094 INFO    ] Launching Daemon at Sun Oct 25 09:18:48 IST 2026
[2026-10-25 09:18:48,105.105 INFO    ] ================================================
[2026-10-25 09:18:48,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:48
[2026-10-25 09:18:49,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:18:49,743.743 INFO    ] Initializing speech engine...
[2026-10-25 09:18:49,754.754 INFO    ] 2026-10-25 09:18:49
[2026-10-25 09:18:50,043.043 INFO    ] 2026-10-25 09:18:50
[2026-10-25 09:18:50,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:18:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:18:50,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:18:50,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:18:50,493.493 INFO    ] time= 25/10/2026 09:18:50
[2026-10-25 09:18:50,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:18:50,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:18:50,703.703 INFO    ] No existing commands found in stream
[2026-10-25 09:18:55,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:18:55,735.735 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 09:18:56,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:18:56,613.613 INFO    ] Checking for system updates...
[2026-10-25 09:18:56,654.654 INFO    ] 200
[2026-10-25 09:18:56,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:56,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:18:56,720.720 INFO    ] No update needed
[2026-10-25 09:18:56,722.722 INFO    ] Checking for camera pi updates...
[2026-10-25 09:18:56,756.756 INFO    ] 200
[2026-10-25 09:18:56,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:18:56,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:18:56,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:18:56,871.871 INFO    ] No camera update needed
[2026-10-25 09:18:56,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:18:56,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:18:56,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:18:56,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:18:58,925.925 INFO    ] ================================================
[2026-10-25 09:18:58,940.940 INFO    ] Launching Daemon at Sun Oct 25 09:18:58 IST 2026
[2026-10-25 09:18:58,951.951 INFO    ] ================================================
[2026-10-25 09:18:59,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:18:59
[2026-10-25 09:19:00,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:19:00,349.349 INFO    ] Initializing speech engine...
[2026-10-25 09:19:00,363.363 INFO    ] 2026-10-25 09:19:00
[2026-10-25 09:19:00,649.649 INFO    ] 2026-10-25 09:19:00
[2026-10-25 09:19:00,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:19:03,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:19:03,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:19:03,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:19:03,476.476 INFO    ] time= 25/10/2026 09:19:03
[2026-10-25 09:19:03,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:19:03,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:19:03,653.653 INFO    ] No existing commands found in stream
[2026-10-25 09:19:08,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:19:08,669.669 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 09:19:10,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:19:10,128.128 INFO    ] Checking for system updates...
[2026-10-25 09:19:10,165.165 INFO    ] 200
[2026-10-25 09:19:10,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:10,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:10,224.224 INFO    ] No update needed
[2026-10-25 09:19:10,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 09:19:10,261.261 INFO    ] 200
[2026-10-25 09:19:10,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:10,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:19:10,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:10,365.365 INFO    ] No camera update needed
[2026-10-25 09:19:10,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:19:10,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:19:10,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:19:10,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:19:12,419.419 INFO    ] ================================================
[2026-10-25 09:19:12,434.434 INFO    ] Launching Daemon at Sun Oct 25 09:19:12 IST 2026
[2026-10-25 09:19:12,445.445 INFO    ] ================================================
[2026-10-25 09:19:13,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:19:13
[2026-10-25 09:19:13,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:19:13,914.914 INFO    ] Initializing speech engine...
[2026-10-25 09:19:13,924.924 INFO    ] 2026-10-25 09:19:13
[2026-10-25 09:19:14,242.242 INFO    ] 2026-10-25 09:19:14
[2026-10-25 09:19:14,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:19:14,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:19:14,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:19:14,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:19:14,759.759 INFO    ] time= 25/10/2026 09:19:14
[2026-10-25 09:19:14,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:19:14,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:19:14,895.895 INFO    ] No existing commands found in stream
[2026-10-25 09:19:19,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:19:19,923.923 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 09:19:22,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:19:22,467.467 INFO    ] Checking for system updates...
[2026-10-25 09:19:22,503.503 INFO    ] 200
[2026-10-25 09:19:22,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:22,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:19:22,568.568 INFO    ] No update needed
[2026-10-25 09:19:22,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 09:19:22,609.609 INFO    ] 200
[2026-10-25 09:19:22,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:22,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:19:22,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:19:22,707.707 INFO    ] No camera update needed
[2026-10-25 09:19:22,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:19:22,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:19:22,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:19:22,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:19:24,763.763 INFO    ] ================================================
[2026-10-25 09:19:24,778.778 INFO    ] Launching Daemon at Sun Oct 25 09:19:24 IST 2026
[2026-10-25 09:19:24,789.789 INFO    ] ================================================
[2026-10-25 09:19:25,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:19:25
[2026-10-25 09:19:26,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:19:26,445.445 INFO    ] Initializing speech engine...
[2026-10-25 09:19:26,453.453 INFO    ] 2026-10-25 09:19:26
[2026-10-25 09:19:26,739.739 INFO    ] 2026-10-25 09:19:26
[2026-10-25 09:19:26,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:19:27,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:19:27,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:19:27,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:19:27,213.213 INFO    ] time= 25/10/2026 09:19:27
[2026-10-25 09:19:27,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:19:27,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:19:27,417.417 INFO    ] No existing commands found in stream
[2026-10-25 09:19:32,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:19:32,445.445 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 09:19:34,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:19:34,134.134 INFO    ] Checking for system updates...
[2026-10-25 09:19:34,173.173 INFO    ] 200
[2026-10-25 09:19:34,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:34,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:34,238.238 INFO    ] No update needed
[2026-10-25 09:19:34,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 09:19:34,278.278 INFO    ] 200
[2026-10-25 09:19:34,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:34,326.326 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:19:34,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:34,392.392 INFO    ] No camera update needed
[2026-10-25 09:19:34,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:19:34,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:19:34,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:19:34,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:19:36,447.447 INFO    ] ================================================
[2026-10-25 09:19:36,462.462 INFO    ] Launching Daemon at Sun Oct 25 09:19:36 IST 2026
[2026-10-25 09:19:36,473.473 INFO    ] ================================================
[2026-10-25 09:19:37,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:19:37
[2026-10-25 09:19:37,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:19:37,880.880 INFO    ] Initializing speech engine...
[2026-10-25 09:19:37,889.889 INFO    ] 2026-10-25 09:19:37
[2026-10-25 09:19:38,166.166 INFO    ] 2026-10-25 09:19:38
[2026-10-25 09:19:38,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:19:38,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:19:38,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:19:38,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:19:38,523.523 INFO    ] time= 25/10/2026 09:19:38
[2026-10-25 09:19:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:19:38,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:19:38,660.660 INFO    ] No existing commands found in stream
[2026-10-25 09:19:43,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:19:43,706.706 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 09:19:47,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:19:47,654.654 INFO    ] Checking for system updates...
[2026-10-25 09:19:47,692.692 INFO    ] 200
[2026-10-25 09:19:47,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:47,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:47,753.753 INFO    ] No update needed
[2026-10-25 09:19:47,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 09:19:47,791.791 INFO    ] 200
[2026-10-25 09:19:47,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:47,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:19:47,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:47,887.887 INFO    ] No camera update needed
[2026-10-25 09:19:47,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:19:47,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:19:47,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:19:47,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:19:49,946.946 INFO    ] ================================================
[2026-10-25 09:19:49,962.962 INFO    ] Launching Daemon at Sun Oct 25 09:19:49 IST 2026
[2026-10-25 09:19:49,973.973 INFO    ] ================================================
[2026-10-25 09:19:50,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:19:50
[2026-10-25 09:19:51,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:19:51,427.427 INFO    ] Initializing speech engine...
[2026-10-25 09:19:51,434.434 INFO    ] 2026-10-25 09:19:51
[2026-10-25 09:19:51,735.735 INFO    ] 2026-10-25 09:19:51
[2026-10-25 09:19:51,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:19:51,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:19:51,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:19:52,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:19:52,156.156 INFO    ] time= 25/10/2026 09:19:52
[2026-10-25 09:19:52,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:19:52,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:19:52,297.297 INFO    ] No existing commands found in stream
[2026-10-25 09:19:57,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:19:57,325.325 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 09:19:59,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:19:59,624.624 INFO    ] Checking for system updates...
[2026-10-25 09:19:59,660.660 INFO    ] 200
[2026-10-25 09:19:59,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:59,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:59,719.719 INFO    ] No update needed
[2026-10-25 09:19:59,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 09:19:59,759.759 INFO    ] 200
[2026-10-25 09:19:59,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:19:59,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:19:59,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:19:59,843.843 INFO    ] No camera update needed
[2026-10-25 09:19:59,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:19:59,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:19:59,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:19:59,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:20:01,924.924 INFO    ] ================================================
[2026-10-25 09:20:01,958.958 INFO    ] Launching Daemon at Sun Oct 25 09:20:01 IST 2026
[2026-10-25 09:20:01,983.983 INFO    ] ================================================
[2026-10-25 09:20:02,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:20:02
[2026-10-25 09:20:03,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:20:03,709.709 INFO    ] Initializing speech engine...
[2026-10-25 09:20:03,719.719 INFO    ] 2026-10-25 09:20:03
[2026-10-25 09:20:03,972.972 INFO    ] 2026-10-25 09:20:03
[2026-10-25 09:20:04,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:20:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:20:04,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:20:04,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:20:04,498.498 INFO    ] time= 25/10/2026 09:20:04
[2026-10-25 09:20:04,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:20:04,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:20:04,691.691 INFO    ] No existing commands found in stream
[2026-10-25 09:20:09,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:20:09,725.725 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 09:20:10,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:20:10,431.431 INFO    ] Checking for system updates...
[2026-10-25 09:20:10,471.471 INFO    ] 200
[2026-10-25 09:20:10,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:10,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:20:10,531.531 INFO    ] No update needed
[2026-10-25 09:20:10,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 09:20:10,567.567 INFO    ] 200
[2026-10-25 09:20:10,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:10,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:20:10,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:20:10,670.670 INFO    ] No camera update needed
[2026-10-25 09:20:10,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:20:10,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:20:10,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:20:10,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:20:12,729.729 INFO    ] ================================================
[2026-10-25 09:20:12,746.746 INFO    ] Launching Daemon at Sun Oct 25 09:20:12 IST 2026
[2026-10-25 09:20:12,757.757 INFO    ] ================================================
[2026-10-25 09:20:13,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:20:13
[2026-10-25 09:20:13,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:20:14,295.295 INFO    ] Initializing speech engine...
[2026-10-25 09:20:14,308.308 INFO    ] 2026-10-25 09:20:14
[2026-10-25 09:20:14,580.580 INFO    ] 2026-10-25 09:20:14
[2026-10-25 09:20:14,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:20:14,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:20:14,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:20:14,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:20:14,990.990 INFO    ] time= 25/10/2026 09:20:14
[2026-10-25 09:20:15,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:20:15,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:20:15,169.169 INFO    ] No existing commands found in stream
[2026-10-25 09:20:20,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:20:20,194.194 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 09:20:20,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:20:20,997.997 INFO    ] Checking for system updates...
[2026-10-25 09:20:21,037.037 INFO    ] 200
[2026-10-25 09:20:21,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:21,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:20:21,101.101 INFO    ] No update needed
[2026-10-25 09:20:21,103.103 INFO    ] Checking for camera pi updates...
[2026-10-25 09:20:21,140.140 INFO    ] 200
[2026-10-25 09:20:21,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:21,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:20:21,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:20:21,245.245 INFO    ] No camera update needed
[2026-10-25 09:20:21,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:20:21,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:20:21,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:20:21,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:20:23,302.302 INFO    ] ================================================
[2026-10-25 09:20:23,318.318 INFO    ] Launching Daemon at Sun Oct 25 09:20:23 IST 2026
[2026-10-25 09:20:23,331.331 INFO    ] ================================================
[2026-10-25 09:20:23,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:20:23
[2026-10-25 09:20:24,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:20:24,744.744 INFO    ] Initializing speech engine...
[2026-10-25 09:20:24,757.757 INFO    ] 2026-10-25 09:20:24
[2026-10-25 09:20:25,019.019 INFO    ] 2026-10-25 09:20:25
[2026-10-25 09:20:25,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:20:25,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:20:25,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:20:25,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:20:25,469.469 INFO    ] time= 25/10/2026 09:20:25
[2026-10-25 09:20:25,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:20:25,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:20:25,640.640 INFO    ] No existing commands found in stream
[2026-10-25 09:20:30,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:20:30,658.658 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 09:20:34,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:20:34,722.722 INFO    ] Checking for system updates...
[2026-10-25 09:20:34,758.758 INFO    ] 200
[2026-10-25 09:20:34,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:34,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:20:34,824.824 INFO    ] No update needed
[2026-10-25 09:20:34,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 09:20:34,865.865 INFO    ] 200
[2026-10-25 09:20:34,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:34,914.914 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:20:34,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:20:34,961.961 INFO    ] No camera update needed
[2026-10-25 09:20:34,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:20:34,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:20:34,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:20:34,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:20:37,016.016 INFO    ] ================================================
[2026-10-25 09:20:37,033.033 INFO    ] Launching Daemon at Sun Oct 25 09:20:37 IST 2026
[2026-10-25 09:20:37,044.044 INFO    ] ================================================
[2026-10-25 09:20:37,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:20:37
[2026-10-25 09:20:38,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:20:38,524.524 INFO    ] Initializing speech engine...
[2026-10-25 09:20:38,531.531 INFO    ] 2026-10-25 09:20:38
[2026-10-25 09:20:38,795.795 INFO    ] 2026-10-25 09:20:38
[2026-10-25 09:20:38,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:20:39,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:20:39,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:20:39,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:20:39,258.258 INFO    ] time= 25/10/2026 09:20:39
[2026-10-25 09:20:39,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:20:39,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:20:39,400.400 INFO    ] No existing commands found in stream
[2026-10-25 09:20:44,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:20:44,415.415 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 09:20:47,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:20:47,148.148 INFO    ] Checking for system updates...
[2026-10-25 09:20:47,189.189 INFO    ] 200
[2026-10-25 09:20:47,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:47,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:20:47,254.254 INFO    ] No update needed
[2026-10-25 09:20:47,257.257 INFO    ] Checking for camera pi updates...
[2026-10-25 09:20:47,291.291 INFO    ] 200
[2026-10-25 09:20:47,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:47,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:20:47,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:20:47,388.388 INFO    ] No camera update needed
[2026-10-25 09:20:47,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:20:47,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:20:47,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:20:47,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:20:49,444.444 INFO    ] ================================================
[2026-10-25 09:20:49,461.461 INFO    ] Launching Daemon at Sun Oct 25 09:20:49 IST 2026
[2026-10-25 09:20:49,471.471 INFO    ] ================================================
[2026-10-25 09:20:50,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:20:50
[2026-10-25 09:20:50,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:20:50,892.892 INFO    ] Initializing speech engine...
[2026-10-25 09:20:50,910.910 INFO    ] 2026-10-25 09:20:50
[2026-10-25 09:20:51,181.181 INFO    ] 2026-10-25 09:20:51
[2026-10-25 09:20:51,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:20:51,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:20:51,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:20:51,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:20:51,618.618 INFO    ] time= 25/10/2026 09:20:51
[2026-10-25 09:20:51,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:20:51,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:20:51,801.801 INFO    ] No existing commands found in stream
[2026-10-25 09:20:56,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:20:56,816.816 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 09:20:59,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:20:59,787.787 INFO    ] Checking for system updates...
[2026-10-25 09:20:59,829.829 INFO    ] 200
[2026-10-25 09:20:59,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:59,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:20:59,894.894 INFO    ] No update needed
[2026-10-25 09:20:59,897.897 INFO    ] Checking for camera pi updates...
[2026-10-25 09:20:59,936.936 INFO    ] 200
[2026-10-25 09:20:59,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:20:59,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:21:00,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:21:00,162.162 INFO    ] No camera update needed
[2026-10-25 09:21:00,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:21:00,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:21:00,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:21:00,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:21:02,222.222 INFO    ] ================================================
[2026-10-25 09:21:02,242.242 INFO    ] Launching Daemon at Sun Oct 25 09:21:02 IST 2026
[2026-10-25 09:21:02,258.258 INFO    ] ================================================
[2026-10-25 09:21:02,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:21:02
[2026-10-25 09:21:03,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:21:03,860.860 INFO    ] Initializing speech engine...
[2026-10-25 09:21:03,876.876 INFO    ] 2026-10-25 09:21:03
[2026-10-25 09:21:04,153.153 INFO    ] 2026-10-25 09:21:04
[2026-10-25 09:21:04,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:21:05,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:21:05,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:21:05,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:21:05,432.432 INFO    ] time= 25/10/2026 09:21:05
[2026-10-25 09:21:05,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:21:05,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:21:05,517.517 INFO    ] No existing commands found in stream
[2026-10-25 09:21:10,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:21:10,535.535 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 09:21:14,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:21:14,722.722 INFO    ] Checking for system updates...
[2026-10-25 09:21:14,763.763 INFO    ] 200
[2026-10-25 09:21:14,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:14,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:14,828.828 INFO    ] No update needed
[2026-10-25 09:21:14,830.830 INFO    ] Checking for camera pi updates...
[2026-10-25 09:21:14,864.864 INFO    ] 200
[2026-10-25 09:21:14,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:14,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:21:14,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:14,965.965 INFO    ] No camera update needed
[2026-10-25 09:21:14,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:21:14,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:21:14,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:21:14,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:21:17,026.026 INFO    ] ================================================
[2026-10-25 09:21:17,043.043 INFO    ] Launching Daemon at Sun Oct 25 09:21:17 IST 2026
[2026-10-25 09:21:17,057.057 INFO    ] ================================================
[2026-10-25 09:21:17,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:21:17
[2026-10-25 09:21:18,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:21:18,459.459 INFO    ] Initializing speech engine...
[2026-10-25 09:21:18,482.482 INFO    ] 2026-10-25 09:21:18
[2026-10-25 09:21:18,734.734 INFO    ] 2026-10-25 09:21:18
[2026-10-25 09:21:18,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:21:19,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:21:19,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:21:19,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:21:19,260.260 INFO    ] time= 25/10/2026 09:21:19
[2026-10-25 09:21:19,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:21:19,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:21:19,408.408 INFO    ] No existing commands found in stream
[2026-10-25 09:21:24,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:21:24,432.432 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 09:21:28,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:21:28,440.440 INFO    ] Checking for system updates...
[2026-10-25 09:21:28,481.481 INFO    ] 200
[2026-10-25 09:21:28,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:28,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:28,549.549 INFO    ] No update needed
[2026-10-25 09:21:28,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 09:21:28,597.597 INFO    ] 200
[2026-10-25 09:21:28,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:28,647.647 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:21:28,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:28,709.709 INFO    ] No camera update needed
[2026-10-25 09:21:28,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:21:28,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:21:28,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:21:28,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:21:30,765.765 INFO    ] ================================================
[2026-10-25 09:21:30,780.780 INFO    ] Launching Daemon at Sun Oct 25 09:21:30 IST 2026
[2026-10-25 09:21:30,792.792 INFO    ] ================================================
[2026-10-25 09:21:31,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:21:31
[2026-10-25 09:21:32,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:21:32,517.517 INFO    ] Initializing speech engine...
[2026-10-25 09:21:32,527.527 INFO    ] 2026-10-25 09:21:32
[2026-10-25 09:21:32,827.827 INFO    ] 2026-10-25 09:21:32
[2026-10-25 09:21:32,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:21:35,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:21:35,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:21:35,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:21:35,901.901 INFO    ] time= 25/10/2026 09:21:35
[2026-10-25 09:21:35,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:21:35,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:21:35,963.963 INFO    ] No existing commands found in stream
[2026-10-25 09:21:40,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:21:40,976.976 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 09:21:45,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:21:45,255.255 INFO    ] Checking for system updates...
[2026-10-25 09:21:45,292.292 INFO    ] 200
[2026-10-25 09:21:45,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:45,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:45,351.351 INFO    ] No update needed
[2026-10-25 09:21:45,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 09:21:45,387.387 INFO    ] 200
[2026-10-25 09:21:45,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:45,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:21:45,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:45,493.493 INFO    ] No camera update needed
[2026-10-25 09:21:45,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:21:45,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:21:45,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:21:45,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:21:47,548.548 INFO    ] ================================================
[2026-10-25 09:21:47,563.563 INFO    ] Launching Daemon at Sun Oct 25 09:21:47 IST 2026
[2026-10-25 09:21:47,574.574 INFO    ] ================================================
[2026-10-25 09:21:48,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:21:48
[2026-10-25 09:21:48,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:21:49,204.204 INFO    ] Initializing speech engine...
[2026-10-25 09:21:49,216.216 INFO    ] 2026-10-25 09:21:49
[2026-10-25 09:21:49,506.506 INFO    ] 2026-10-25 09:21:49
[2026-10-25 09:21:49,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:21:49,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:21:49,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:21:49,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:21:49,982.982 INFO    ] time= 25/10/2026 09:21:49
[2026-10-25 09:21:50,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:21:50,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:21:50,169.169 INFO    ] No existing commands found in stream
[2026-10-25 09:21:55,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:21:55,184.184 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 09:21:57,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:21:57,897.897 INFO    ] Checking for system updates...
[2026-10-25 09:21:57,933.933 INFO    ] 200
[2026-10-25 09:21:57,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:57,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:57,999.999 INFO    ] No update needed
[2026-10-25 09:21:58,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 09:21:58,039.039 INFO    ] 200
[2026-10-25 09:21:58,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:21:58,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:21:58,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:21:58,134.134 INFO    ] No camera update needed
[2026-10-25 09:21:58,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:21:58,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:21:58,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:21:58,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:22:00,190.190 INFO    ] ================================================
[2026-10-25 09:22:00,204.204 INFO    ] Launching Daemon at Sun Oct 25 09:22:00 IST 2026
[2026-10-25 09:22:00,215.215 INFO    ] ================================================
[2026-10-25 09:22:00,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:22:00
[2026-10-25 09:22:01,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:22:01,689.689 INFO    ] Initializing speech engine...
[2026-10-25 09:22:01,718.718 INFO    ] 2026-10-25 09:22:01
[2026-10-25 09:22:02,147.147 INFO    ] 2026-10-25 09:22:02
[2026-10-25 09:22:02,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:22:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:22:02,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:22:02,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:22:02,677.677 INFO    ] time= 25/10/2026 09:22:02
[2026-10-25 09:22:02,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:22:02,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:22:02,859.859 INFO    ] No existing commands found in stream
[2026-10-25 09:22:07,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:22:07,873.873 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 09:22:10,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:22:10,996.996 INFO    ] Checking for system updates...
[2026-10-25 09:22:11,033.033 INFO    ] 200
[2026-10-25 09:22:11,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:11,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:11,098.098 INFO    ] No update needed
[2026-10-25 09:22:11,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 09:22:11,137.137 INFO    ] 200
[2026-10-25 09:22:11,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:11,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:22:11,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:11,242.242 INFO    ] No camera update needed
[2026-10-25 09:22:11,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:22:11,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:22:11,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:22:11,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:22:13,300.300 INFO    ] ================================================
[2026-10-25 09:22:13,315.315 INFO    ] Launching Daemon at Sun Oct 25 09:22:13 IST 2026
[2026-10-25 09:22:13,326.326 INFO    ] ================================================
[2026-10-25 09:22:13,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:22:13
[2026-10-25 09:22:14,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:22:14,909.909 INFO    ] Initializing speech engine...
[2026-10-25 09:22:14,923.923 INFO    ] 2026-10-25 09:22:14
[2026-10-25 09:22:15,200.200 INFO    ] 2026-10-25 09:22:15
[2026-10-25 09:22:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:22:15,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:22:15,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:22:15,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:22:15,651.651 INFO    ] time= 25/10/2026 09:22:15
[2026-10-25 09:22:15,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:22:15,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:22:15,794.794 INFO    ] No existing commands found in stream
[2026-10-25 09:22:20,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:22:20,812.812 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 09:22:24,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:22:24,355.355 INFO    ] Checking for system updates...
[2026-10-25 09:22:24,395.395 INFO    ] 200
[2026-10-25 09:22:24,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:24,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:24,472.472 INFO    ] No update needed
[2026-10-25 09:22:24,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 09:22:24,509.509 INFO    ] 200
[2026-10-25 09:22:24,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:24,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:22:24,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:24,613.613 INFO    ] No camera update needed
[2026-10-25 09:22:24,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:22:24,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:22:24,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:22:24,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:22:26,672.672 INFO    ] ================================================
[2026-10-25 09:22:26,687.687 INFO    ] Launching Daemon at Sun Oct 25 09:22:26 IST 2026
[2026-10-25 09:22:26,697.697 INFO    ] ================================================
[2026-10-25 09:22:27,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:22:27
[2026-10-25 09:22:27,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:22:28,255.255 INFO    ] Initializing speech engine...
[2026-10-25 09:22:28,270.270 INFO    ] 2026-10-25 09:22:28
[2026-10-25 09:22:28,540.540 INFO    ] 2026-10-25 09:22:28
[2026-10-25 09:22:28,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:22:28,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:22:28,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:22:28,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:22:28,966.966 INFO    ] time= 25/10/2026 09:22:28
[2026-10-25 09:22:28,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:22:28,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:22:29,116.116 INFO    ] No existing commands found in stream
[2026-10-25 09:22:34,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:22:34,144.144 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 09:22:37,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:22:37,029.029 INFO    ] Checking for system updates...
[2026-10-25 09:22:37,065.065 INFO    ] 200
[2026-10-25 09:22:37,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:37,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:37,123.123 INFO    ] No update needed
[2026-10-25 09:22:37,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 09:22:37,159.159 INFO    ] 200
[2026-10-25 09:22:37,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:37,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:22:37,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:37,386.386 INFO    ] No camera update needed
[2026-10-25 09:22:37,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:22:37,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:22:37,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:22:37,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:22:39,441.441 INFO    ] ================================================
[2026-10-25 09:22:39,456.456 INFO    ] Launching Daemon at Sun Oct 25 09:22:39 IST 2026
[2026-10-25 09:22:39,466.466 INFO    ] ================================================
[2026-10-25 09:22:40,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:22:40
[2026-10-25 09:22:40,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:22:41,063.063 INFO    ] Initializing speech engine...
[2026-10-25 09:22:41,074.074 INFO    ] 2026-10-25 09:22:41
[2026-10-25 09:22:41,348.348 INFO    ] 2026-10-25 09:22:41
[2026-10-25 09:22:41,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:22:41,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:22:41,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:22:41,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:22:41,829.829 INFO    ] time= 25/10/2026 09:22:41
[2026-10-25 09:22:41,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:22:41,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:22:41,988.988 INFO    ] No existing commands found in stream
[2026-10-25 09:22:47,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:22:47,021.021 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 09:22:48,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:22:48,008.008 INFO    ] Checking for system updates...
[2026-10-25 09:22:48,046.046 INFO    ] 200
[2026-10-25 09:22:48,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:48,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:48,106.106 INFO    ] No update needed
[2026-10-25 09:22:48,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 09:22:48,143.143 INFO    ] 200
[2026-10-25 09:22:48,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:48,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:22:48,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:22:48,246.246 INFO    ] No camera update needed
[2026-10-25 09:22:48,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:22:48,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:22:48,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:22:48,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:22:50,304.304 INFO    ] ================================================
[2026-10-25 09:22:50,319.319 INFO    ] Launching Daemon at Sun Oct 25 09:22:50 IST 2026
[2026-10-25 09:22:50,329.329 INFO    ] ================================================
[2026-10-25 09:22:50,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:22:50
[2026-10-25 09:22:51,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:22:51,875.875 INFO    ] Initializing speech engine...
[2026-10-25 09:22:51,883.883 INFO    ] 2026-10-25 09:22:51
[2026-10-25 09:22:52,163.163 INFO    ] 2026-10-25 09:22:52
[2026-10-25 09:22:52,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:22:52,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:22:52,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:22:52,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:22:52,613.613 INFO    ] time= 25/10/2026 09:22:52
[2026-10-25 09:22:52,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:22:52,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:22:52,793.793 INFO    ] No existing commands found in stream
[2026-10-25 09:22:57,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:22:57,808.808 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 09:22:58,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:22:58,679.679 INFO    ] Checking for system updates...
[2026-10-25 09:22:58,719.719 INFO    ] 200
[2026-10-25 09:22:58,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:58,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:22:58,779.779 INFO    ] No update needed
[2026-10-25 09:22:58,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 09:22:58,816.816 INFO    ] 200
[2026-10-25 09:22:58,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:22:58,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:22:58,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:22:58,912.912 INFO    ] No camera update needed
[2026-10-25 09:22:58,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:22:58,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:22:58,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:22:58,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:23:00,970.970 INFO    ] ================================================
[2026-10-25 09:23:00,985.985 INFO    ] Launching Daemon at Sun Oct 25 09:23:00 IST 2026
[2026-10-25 09:23:01,996.996 INFO    ] ================================================
[2026-10-25 09:23:01,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:23:01
[2026-10-25 09:23:02,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:23:02,719.719 INFO    ] Initializing speech engine...
[2026-10-25 09:23:02,732.732 INFO    ] 2026-10-25 09:23:02
[2026-10-25 09:23:03,053.053 INFO    ] 2026-10-25 09:23:03
[2026-10-25 09:23:03,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:23:03,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:23:03,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:23:03,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:23:03,543.543 INFO    ] time= 25/10/2026 09:23:03
[2026-10-25 09:23:03,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:23:03,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:23:03,833.833 INFO    ] No existing commands found in stream
[2026-10-25 09:23:08,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:23:08,856.856 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 09:23:11,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:23:11,144.144 INFO    ] Checking for system updates...
[2026-10-25 09:23:11,182.182 INFO    ] 200
[2026-10-25 09:23:11,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:11,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:11,251.251 INFO    ] No update needed
[2026-10-25 09:23:11,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 09:23:11,294.294 INFO    ] 200
[2026-10-25 09:23:11,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:11,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:23:11,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:11,397.397 INFO    ] No camera update needed
[2026-10-25 09:23:11,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:23:11,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:23:11,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:23:11,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:23:13,458.458 INFO    ] ================================================
[2026-10-25 09:23:13,473.473 INFO    ] Launching Daemon at Sun Oct 25 09:23:13 IST 2026
[2026-10-25 09:23:13,483.483 INFO    ] ================================================
[2026-10-25 09:23:14,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:23:14
[2026-10-25 09:23:14,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:23:15,064.064 INFO    ] Initializing speech engine...
[2026-10-25 09:23:15,073.073 INFO    ] 2026-10-25 09:23:15
[2026-10-25 09:23:15,323.323 INFO    ] 2026-10-25 09:23:15
[2026-10-25 09:23:15,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:23:15,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:23:15,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:23:15,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:23:15,771.771 INFO    ] time= 25/10/2026 09:23:15
[2026-10-25 09:23:15,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:23:15,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:23:15,949.949 INFO    ] No existing commands found in stream
[2026-10-25 09:23:20,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:23:20,964.964 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 09:23:23,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:23:23,325.325 INFO    ] Checking for system updates...
[2026-10-25 09:23:23,362.362 INFO    ] 200
[2026-10-25 09:23:23,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:23,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:23,422.422 INFO    ] No update needed
[2026-10-25 09:23:23,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 09:23:23,459.459 INFO    ] 200
[2026-10-25 09:23:23,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:23,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:23:23,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:23,549.549 INFO    ] No camera update needed
[2026-10-25 09:23:23,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:23:23,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:23:23,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:23:23,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:23:25,605.605 INFO    ] ================================================
[2026-10-25 09:23:25,621.621 INFO    ] Launching Daemon at Sun Oct 25 09:23:25 IST 2026
[2026-10-25 09:23:25,632.632 INFO    ] ================================================
[2026-10-25 09:23:26,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:23:26
[2026-10-25 09:23:26,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:23:27,054.054 INFO    ] Initializing speech engine...
[2026-10-25 09:23:27,063.063 INFO    ] 2026-10-25 09:23:27
[2026-10-25 09:23:27,308.308 INFO    ] 2026-10-25 09:23:27
[2026-10-25 09:23:27,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:23:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:23:27,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:23:27,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:23:27,757.757 INFO    ] time= 25/10/2026 09:23:27
[2026-10-25 09:23:27,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:23:27,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:23:27,923.923 INFO    ] No existing commands found in stream
[2026-10-25 09:23:32,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:23:32,938.938 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 09:23:37,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:23:37,748.748 INFO    ] Checking for system updates...
[2026-10-25 09:23:37,790.790 INFO    ] 200
[2026-10-25 09:23:37,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:37,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:37,856.856 INFO    ] No update needed
[2026-10-25 09:23:37,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 09:23:37,893.893 INFO    ] 200
[2026-10-25 09:23:37,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:37,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:23:38,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:38,027.027 INFO    ] No camera update needed
[2026-10-25 09:23:38,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:23:38,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:23:38,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:23:38,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:23:40,088.088 INFO    ] ================================================
[2026-10-25 09:23:40,103.103 INFO    ] Launching Daemon at Sun Oct 25 09:23:40 IST 2026
[2026-10-25 09:23:40,114.114 INFO    ] ================================================
[2026-10-25 09:23:40,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:23:40
[2026-10-25 09:23:41,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:23:41,572.572 INFO    ] Initializing speech engine...
[2026-10-25 09:23:41,582.582 INFO    ] 2026-10-25 09:23:41
[2026-10-25 09:23:41,860.860 INFO    ] 2026-10-25 09:23:41
[2026-10-25 09:23:41,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:23:42,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:23:42,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:23:42,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:23:42,313.313 INFO    ] time= 25/10/2026 09:23:42
[2026-10-25 09:23:42,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:23:42,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:23:42,459.459 INFO    ] No existing commands found in stream
[2026-10-25 09:23:47,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:23:47,474.474 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 09:23:51,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:23:51,100.100 INFO    ] Checking for system updates...
[2026-10-25 09:23:51,136.136 INFO    ] 200
[2026-10-25 09:23:51,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:51,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:51,194.194 INFO    ] No update needed
[2026-10-25 09:23:51,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 09:23:51,235.235 INFO    ] 200
[2026-10-25 09:23:51,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:23:51,278.278 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:23:51,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:23:51,328.328 INFO    ] No camera update needed
[2026-10-25 09:23:51,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:23:51,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:23:51,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:23:51,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:23:53,386.386 INFO    ] ================================================
[2026-10-25 09:23:53,401.401 INFO    ] Launching Daemon at Sun Oct 25 09:23:53 IST 2026
[2026-10-25 09:23:53,412.412 INFO    ] ================================================
[2026-10-25 09:23:53,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:23:53
[2026-10-25 09:23:54,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:23:54,834.834 INFO    ] Initializing speech engine...
[2026-10-25 09:23:54,836.836 INFO    ] 2026-10-25 09:23:54
[2026-10-25 09:23:55,102.102 INFO    ] 2026-10-25 09:23:55
[2026-10-25 09:23:55,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:23:55,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:23:55,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:23:55,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:23:55,585.585 INFO    ] time= 25/10/2026 09:23:55
[2026-10-25 09:23:55,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:23:55,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:23:55,732.732 INFO    ] No existing commands found in stream
[2026-10-25 09:24:00,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:24:00,746.746 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 09:24:04,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:24:04,510.510 INFO    ] Checking for system updates...
[2026-10-25 09:24:04,552.552 INFO    ] 200
[2026-10-25 09:24:04,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:04,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:04,614.614 INFO    ] No update needed
[2026-10-25 09:24:04,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 09:24:04,651.651 INFO    ] 200
[2026-10-25 09:24:04,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:04,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:24:04,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:04,754.754 INFO    ] No camera update needed
[2026-10-25 09:24:04,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:24:04,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:24:04,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:24:04,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:24:06,808.808 INFO    ] ================================================
[2026-10-25 09:24:06,823.823 INFO    ] Launching Daemon at Sun Oct 25 09:24:06 IST 2026
[2026-10-25 09:24:06,834.834 INFO    ] ================================================
[2026-10-25 09:24:07,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:24:07
[2026-10-25 09:24:07,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:24:08,266.266 INFO    ] Initializing speech engine...
[2026-10-25 09:24:08,283.283 INFO    ] 2026-10-25 09:24:08
[2026-10-25 09:24:08,556.556 INFO    ] 2026-10-25 09:24:08
[2026-10-25 09:24:08,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:24:08,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:24:08,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:24:08,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:24:08,936.936 INFO    ] time= 25/10/2026 09:24:08
[2026-10-25 09:24:08,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:24:08,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:24:09,065.065 INFO    ] No existing commands found in stream
[2026-10-25 09:24:14,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:24:14,078.078 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 09:24:14,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:24:14,866.866 INFO    ] Checking for system updates...
[2026-10-25 09:24:14,908.908 INFO    ] 200
[2026-10-25 09:24:14,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:14,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:24:14,979.979 INFO    ] No update needed
[2026-10-25 09:24:14,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 09:24:15,018.018 INFO    ] 200
[2026-10-25 09:24:15,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:15,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:24:15,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:24:15,116.116 INFO    ] No camera update needed
[2026-10-25 09:24:15,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:24:15,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:24:15,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:24:15,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:24:17,173.173 INFO    ] ================================================
[2026-10-25 09:24:17,189.189 INFO    ] Launching Daemon at Sun Oct 25 09:24:17 IST 2026
[2026-10-25 09:24:17,199.199 INFO    ] ================================================
[2026-10-25 09:24:17,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:24:17
[2026-10-25 09:24:18,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:24:18,604.604 INFO    ] Initializing speech engine...
[2026-10-25 09:24:18,610.610 INFO    ] 2026-10-25 09:24:18
[2026-10-25 09:24:18,904.904 INFO    ] 2026-10-25 09:24:18
[2026-10-25 09:24:18,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:24:19,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:24:19,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:24:19,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:24:19,285.285 INFO    ] time= 25/10/2026 09:24:19
[2026-10-25 09:24:19,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:24:19,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:24:19,413.413 INFO    ] No existing commands found in stream
[2026-10-25 09:24:24,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:24:24,426.426 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 09:24:25,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:24:25,897.897 INFO    ] Checking for system updates...
[2026-10-25 09:24:25,940.940 INFO    ] 200
[2026-10-25 09:24:25,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:26,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:24:26,006.006 INFO    ] No update needed
[2026-10-25 09:24:26,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 09:24:26,046.046 INFO    ] 200
[2026-10-25 09:24:26,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:26,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:24:26,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:24:26,126.126 INFO    ] No camera update needed
[2026-10-25 09:24:26,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:24:26,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:24:26,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:24:26,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:24:28,181.181 INFO    ] ================================================
[2026-10-25 09:24:28,196.196 INFO    ] Launching Daemon at Sun Oct 25 09:24:28 IST 2026
[2026-10-25 09:24:28,206.206 INFO    ] ================================================
[2026-10-25 09:24:28,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:24:28
[2026-10-25 09:24:29,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:24:29,763.763 INFO    ] Initializing speech engine...
[2026-10-25 09:24:29,775.775 INFO    ] 2026-10-25 09:24:29
[2026-10-25 09:24:30,065.065 INFO    ] 2026-10-25 09:24:30
[2026-10-25 09:24:30,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:24:30,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:24:30,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:24:30,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:24:30,597.597 INFO    ] time= 25/10/2026 09:24:30
[2026-10-25 09:24:30,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:24:30,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:24:30,754.754 INFO    ] No existing commands found in stream
[2026-10-25 09:24:35,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:24:35,787.787 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 09:24:39,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:24:39,115.115 INFO    ] Checking for system updates...
[2026-10-25 09:24:39,165.165 INFO    ] 200
[2026-10-25 09:24:39,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:39,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:39,239.239 INFO    ] No update needed
[2026-10-25 09:24:39,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 09:24:39,275.275 INFO    ] 200
[2026-10-25 09:24:39,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:39,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:24:39,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:39,375.375 INFO    ] No camera update needed
[2026-10-25 09:24:39,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:24:39,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:24:39,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:24:39,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:24:41,429.429 INFO    ] ================================================
[2026-10-25 09:24:41,444.444 INFO    ] Launching Daemon at Sun Oct 25 09:24:41 IST 2026
[2026-10-25 09:24:41,455.455 INFO    ] ================================================
[2026-10-25 09:24:42,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:24:42
[2026-10-25 09:24:42,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:24:42,905.905 INFO    ] Initializing speech engine...
[2026-10-25 09:24:42,918.918 INFO    ] 2026-10-25 09:24:42
[2026-10-25 09:24:43,174.174 INFO    ] 2026-10-25 09:24:43
[2026-10-25 09:24:43,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:24:43,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:24:43,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:24:43,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:24:43,668.668 INFO    ] time= 25/10/2026 09:24:43
[2026-10-25 09:24:43,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:24:43,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:24:43,826.826 INFO    ] No existing commands found in stream
[2026-10-25 09:24:48,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:24:48,861.861 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 09:24:51,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:24:51,869.869 INFO    ] Checking for system updates...
[2026-10-25 09:24:51,909.909 INFO    ] 200
[2026-10-25 09:24:51,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:51,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:51,976.976 INFO    ] No update needed
[2026-10-25 09:24:51,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 09:24:52,012.012 INFO    ] 200
[2026-10-25 09:24:52,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:24:52,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:24:52,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:24:52,121.121 INFO    ] No camera update needed
[2026-10-25 09:24:52,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:24:52,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:24:52,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:24:52,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:24:54,178.178 INFO    ] ================================================
[2026-10-25 09:24:54,193.193 INFO    ] Launching Daemon at Sun Oct 25 09:24:54 IST 2026
[2026-10-25 09:24:54,204.204 INFO    ] ================================================
[2026-10-25 09:24:54,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:24:54
[2026-10-25 09:24:55,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:24:55,658.658 INFO    ] Initializing speech engine...
[2026-10-25 09:24:55,667.667 INFO    ] 2026-10-25 09:24:55
[2026-10-25 09:24:55,928.928 INFO    ] 2026-10-25 09:24:55
[2026-10-25 09:24:55,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:24:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:24:56,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:24:56,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:24:56,469.469 INFO    ] time= 25/10/2026 09:24:56
[2026-10-25 09:24:56,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:24:56,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:24:56,599.599 INFO    ] No existing commands found in stream
[2026-10-25 09:25:01,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:25:01,635.635 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 09:25:05,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:25:05,864.864 INFO    ] Checking for system updates...
[2026-10-25 09:25:05,901.901 INFO    ] 200
[2026-10-25 09:25:05,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:05,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:25:05,958.958 INFO    ] No update needed
[2026-10-25 09:25:05,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 09:25:05,999.999 INFO    ] 200
[2026-10-25 09:25:06,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:06,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:25:06,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:25:06,203.203 INFO    ] No camera update needed
[2026-10-25 09:25:06,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:25:06,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:25:06,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:25:06,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:25:08,260.260 INFO    ] ================================================
[2026-10-25 09:25:08,275.275 INFO    ] Launching Daemon at Sun Oct 25 09:25:08 IST 2026
[2026-10-25 09:25:08,285.285 INFO    ] ================================================
[2026-10-25 09:25:08,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:25:08
[2026-10-25 09:25:09,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:25:09,909.909 INFO    ] Initializing speech engine...
[2026-10-25 09:25:09,923.923 INFO    ] 2026-10-25 09:25:09
[2026-10-25 09:25:10,231.231 INFO    ] 2026-10-25 09:25:10
[2026-10-25 09:25:10,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:25:10,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:25:10,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:25:10,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:25:10,735.735 INFO    ] time= 25/10/2026 09:25:10
[2026-10-25 09:25:10,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:25:10,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:25:10,876.876 INFO    ] No existing commands found in stream
[2026-10-25 09:25:15,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:25:15,902.902 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 09:25:17,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:25:17,431.431 INFO    ] Checking for system updates...
[2026-10-25 09:25:17,469.469 INFO    ] 200
[2026-10-25 09:25:17,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:17,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:25:17,536.536 INFO    ] No update needed
[2026-10-25 09:25:17,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 09:25:17,580.580 INFO    ] 200
[2026-10-25 09:25:17,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:17,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:25:17,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:25:17,695.695 INFO    ] No camera update needed
[2026-10-25 09:25:17,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:25:17,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:25:17,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:25:17,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:25:19,755.755 INFO    ] ================================================
[2026-10-25 09:25:19,770.770 INFO    ] Launching Daemon at Sun Oct 25 09:25:19 IST 2026
[2026-10-25 09:25:19,781.781 INFO    ] ================================================
[2026-10-25 09:25:20,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:25:20
[2026-10-25 09:25:20,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:25:21,257.257 INFO    ] Initializing speech engine...
[2026-10-25 09:25:21,264.264 INFO    ] 2026-10-25 09:25:21
[2026-10-25 09:25:21,524.524 INFO    ] 2026-10-25 09:25:21
[2026-10-25 09:25:21,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:25:21,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:25:21,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:25:22,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:25:22,072.072 INFO    ] time= 25/10/2026 09:25:22
[2026-10-25 09:25:22,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:25:22,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:25:22,204.204 INFO    ] No existing commands found in stream
[2026-10-25 09:25:27,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:25:27,234.234 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 09:25:28,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:25:28,832.832 INFO    ] Checking for system updates...
[2026-10-25 09:25:28,874.874 INFO    ] 200
[2026-10-25 09:25:28,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:28,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:28,932.932 INFO    ] No update needed
[2026-10-25 09:25:28,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 09:25:28,971.971 INFO    ] 200
[2026-10-25 09:25:28,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:29,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:25:29,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:29,070.070 INFO    ] No camera update needed
[2026-10-25 09:25:29,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:25:29,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:25:29,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:25:29,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:25:31,126.126 INFO    ] ================================================
[2026-10-25 09:25:31,142.142 INFO    ] Launching Daemon at Sun Oct 25 09:25:31 IST 2026
[2026-10-25 09:25:31,153.153 INFO    ] ================================================
[2026-10-25 09:25:31,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:25:31
[2026-10-25 09:25:32,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:25:32,781.781 INFO    ] Initializing speech engine...
[2026-10-25 09:25:32,788.788 INFO    ] 2026-10-25 09:25:32
[2026-10-25 09:25:33,088.088 INFO    ] 2026-10-25 09:25:33
[2026-10-25 09:25:33,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:25:33,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:25:33,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:25:33,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:25:33,626.626 INFO    ] time= 25/10/2026 09:25:33
[2026-10-25 09:25:33,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:25:33,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:25:33,782.782 INFO    ] No existing commands found in stream
[2026-10-25 09:25:38,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:25:38,801.801 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 09:25:40,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:25:40,709.709 INFO    ] Checking for system updates...
[2026-10-25 09:25:40,750.750 INFO    ] 200
[2026-10-25 09:25:40,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:40,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:40,809.809 INFO    ] No update needed
[2026-10-25 09:25:40,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 09:25:40,852.852 INFO    ] 200
[2026-10-25 09:25:40,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:40,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:25:40,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:40,953.953 INFO    ] No camera update needed
[2026-10-25 09:25:40,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:25:40,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:25:40,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:25:40,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:25:43,012.012 INFO    ] ================================================
[2026-10-25 09:25:43,027.027 INFO    ] Launching Daemon at Sun Oct 25 09:25:43 IST 2026
[2026-10-25 09:25:43,039.039 INFO    ] ================================================
[2026-10-25 09:25:43,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:25:43
[2026-10-25 09:25:44,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:25:44,450.450 INFO    ] Initializing speech engine...
[2026-10-25 09:25:44,468.468 INFO    ] 2026-10-25 09:25:44
[2026-10-25 09:25:44,720.720 INFO    ] 2026-10-25 09:25:44
[2026-10-25 09:25:44,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:25:44,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:25:44,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:25:45,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:25:45,096.096 INFO    ] time= 25/10/2026 09:25:45
[2026-10-25 09:25:45,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:25:45,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:25:45,282.282 INFO    ] No existing commands found in stream
[2026-10-25 09:25:50,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:25:50,311.311 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 09:25:51,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:25:51,535.535 INFO    ] Checking for system updates...
[2026-10-25 09:25:51,573.573 INFO    ] 200
[2026-10-25 09:25:51,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:51,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:51,636.636 INFO    ] No update needed
[2026-10-25 09:25:51,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 09:25:51,672.672 INFO    ] 200
[2026-10-25 09:25:51,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:25:51,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:25:51,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:25:51,763.763 INFO    ] No camera update needed
[2026-10-25 09:25:51,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:25:51,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:25:51,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:25:51,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:25:53,818.818 INFO    ] ================================================
[2026-10-25 09:25:53,834.834 INFO    ] Launching Daemon at Sun Oct 25 09:25:53 IST 2026
[2026-10-25 09:25:53,845.845 INFO    ] ================================================
[2026-10-25 09:25:54,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:25:54
[2026-10-25 09:25:54,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:25:55,242.242 INFO    ] Initializing speech engine...
[2026-10-25 09:25:55,250.250 INFO    ] 2026-10-25 09:25:55
[2026-10-25 09:25:55,526.526 INFO    ] 2026-10-25 09:25:55
[2026-10-25 09:25:55,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:25:55,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:25:55,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:25:55,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:25:55,901.901 INFO    ] time= 25/10/2026 09:25:55
[2026-10-25 09:25:55,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:25:55,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:25:56,069.069 INFO    ] No existing commands found in stream
[2026-10-25 09:26:01,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:26:01,097.097 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 09:26:05,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:26:05,129.129 INFO    ] Checking for system updates...
[2026-10-25 09:26:05,170.170 INFO    ] 200
[2026-10-25 09:26:05,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:05,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:26:05,231.231 INFO    ] No update needed
[2026-10-25 09:26:05,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 09:26:05,272.272 INFO    ] 200
[2026-10-25 09:26:05,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:05,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:26:05,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:26:05,380.380 INFO    ] No camera update needed
[2026-10-25 09:26:05,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:26:05,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:26:05,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:26:05,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:26:07,438.438 INFO    ] ================================================
[2026-10-25 09:26:07,453.453 INFO    ] Launching Daemon at Sun Oct 25 09:26:07 IST 2026
[2026-10-25 09:26:07,465.465 INFO    ] ================================================
[2026-10-25 09:26:08,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:26:08
[2026-10-25 09:26:08,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:26:08,861.861 INFO    ] Initializing speech engine...
[2026-10-25 09:26:08,875.875 INFO    ] 2026-10-25 09:26:08
[2026-10-25 09:26:09,138.138 INFO    ] 2026-10-25 09:26:09
[2026-10-25 09:26:09,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:26:10,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:26:10,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:26:10,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:26:10,249.249 INFO    ] time= 25/10/2026 09:26:10
[2026-10-25 09:26:10,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:26:10,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:26:10,360.360 INFO    ] No existing commands found in stream
[2026-10-25 09:26:15,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:26:15,376.376 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 09:26:17,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:26:17,219.219 INFO    ] Checking for system updates...
[2026-10-25 09:26:17,256.256 INFO    ] 200
[2026-10-25 09:26:17,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:17,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:17,319.319 INFO    ] No update needed
[2026-10-25 09:26:17,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 09:26:17,358.358 INFO    ] 200
[2026-10-25 09:26:17,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:17,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:26:17,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:17,451.451 INFO    ] No camera update needed
[2026-10-25 09:26:17,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:26:17,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:26:17,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:26:17,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:26:19,506.506 INFO    ] ================================================
[2026-10-25 09:26:19,522.522 INFO    ] Launching Daemon at Sun Oct 25 09:26:19 IST 2026
[2026-10-25 09:26:19,533.533 INFO    ] ================================================
[2026-10-25 09:26:20,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:26:20
[2026-10-25 09:26:20,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:26:20,981.981 INFO    ] Initializing speech engine...
[2026-10-25 09:26:20,992.992 INFO    ] 2026-10-25 09:26:20
[2026-10-25 09:26:21,250.250 INFO    ] 2026-10-25 09:26:21
[2026-10-25 09:26:21,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:26:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:26:21,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:26:21,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:26:21,792.792 INFO    ] time= 25/10/2026 09:26:21
[2026-10-25 09:26:21,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:26:21,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:26:21,931.931 INFO    ] No existing commands found in stream
[2026-10-25 09:26:26,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:26:26,958.958 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 09:26:29,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:26:29,888.888 INFO    ] Checking for system updates...
[2026-10-25 09:26:29,928.928 INFO    ] 200
[2026-10-25 09:26:29,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:29,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:26:29,988.988 INFO    ] No update needed
[2026-10-25 09:26:29,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 09:26:30,025.025 INFO    ] 200
[2026-10-25 09:26:30,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:30,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:26:30,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:26:30,129.129 INFO    ] No camera update needed
[2026-10-25 09:26:30,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:26:30,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:26:30,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:26:30,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:26:32,189.189 INFO    ] ================================================
[2026-10-25 09:26:32,206.206 INFO    ] Launching Daemon at Sun Oct 25 09:26:32 IST 2026
[2026-10-25 09:26:32,225.225 INFO    ] ================================================
[2026-10-25 09:26:32,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:26:32
[2026-10-25 09:26:33,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:26:33,736.736 INFO    ] Initializing speech engine...
[2026-10-25 09:26:33,745.745 INFO    ] 2026-10-25 09:26:33
[2026-10-25 09:26:34,009.009 INFO    ] 2026-10-25 09:26:34
[2026-10-25 09:26:34,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:26:34,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:26:34,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:26:34,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:26:34,452.452 INFO    ] time= 25/10/2026 09:26:34
[2026-10-25 09:26:34,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:26:34,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:26:34,617.617 INFO    ] No existing commands found in stream
[2026-10-25 09:26:39,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:26:39,633.633 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 09:26:43,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:26:43,512.512 INFO    ] Checking for system updates...
[2026-10-25 09:26:43,552.552 INFO    ] 200
[2026-10-25 09:26:43,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:43,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:43,609.609 INFO    ] No update needed
[2026-10-25 09:26:43,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 09:26:43,646.646 INFO    ] 200
[2026-10-25 09:26:43,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:43,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:26:43,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:43,738.738 INFO    ] No camera update needed
[2026-10-25 09:26:43,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:26:43,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:26:43,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:26:43,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:26:45,794.794 INFO    ] ================================================
[2026-10-25 09:26:45,810.810 INFO    ] Launching Daemon at Sun Oct 25 09:26:45 IST 2026
[2026-10-25 09:26:45,821.821 INFO    ] ================================================
[2026-10-25 09:26:46,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:26:46
[2026-10-25 09:26:46,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:26:47,246.246 INFO    ] Initializing speech engine...
[2026-10-25 09:26:47,269.269 INFO    ] 2026-10-25 09:26:47
[2026-10-25 09:26:47,524.524 INFO    ] 2026-10-25 09:26:47
[2026-10-25 09:26:47,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:26:47,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:26:47,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:26:47,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:26:47,968.968 INFO    ] time= 25/10/2026 09:26:47
[2026-10-25 09:26:47,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:26:48,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:26:48,118.118 INFO    ] No existing commands found in stream
[2026-10-25 09:26:53,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:26:53,133.133 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 09:26:55,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:26:55,553.553 INFO    ] Checking for system updates...
[2026-10-25 09:26:55,589.589 INFO    ] 200
[2026-10-25 09:26:55,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:55,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:55,648.648 INFO    ] No update needed
[2026-10-25 09:26:55,650.650 INFO    ] Checking for camera pi updates...
[2026-10-25 09:26:55,688.688 INFO    ] 200
[2026-10-25 09:26:55,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:26:55,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:26:55,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:26:55,803.803 INFO    ] No camera update needed
[2026-10-25 09:26:55,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:26:55,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:26:55,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:26:55,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:26:57,858.858 INFO    ] ================================================
[2026-10-25 09:26:57,881.881 INFO    ] Launching Daemon at Sun Oct 25 09:26:57 IST 2026
[2026-10-25 09:26:57,892.892 INFO    ] ================================================
[2026-10-25 09:26:58,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:26:58
[2026-10-25 09:26:59,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:26:59,346.346 INFO    ] Initializing speech engine...
[2026-10-25 09:26:59,355.355 INFO    ] 2026-10-25 09:26:59
[2026-10-25 09:26:59,613.613 INFO    ] 2026-10-25 09:26:59
[2026-10-25 09:26:59,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:26:59,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:26:59,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:27:00,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:27:00,095.095 INFO    ] time= 25/10/2026 09:27:00
[2026-10-25 09:27:00,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:27:00,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:27:00,298.298 INFO    ] No existing commands found in stream
[2026-10-25 09:27:05,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:27:05,322.322 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 09:27:11,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:27:11,177.177 INFO    ] Checking for system updates...
[2026-10-25 09:27:11,213.213 INFO    ] 200
[2026-10-25 09:27:11,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:11,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:11,282.282 INFO    ] No update needed
[2026-10-25 09:27:11,285.285 INFO    ] Checking for camera pi updates...
[2026-10-25 09:27:11,335.335 INFO    ] 200
[2026-10-25 09:27:11,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:11,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:27:11,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:11,549.549 INFO    ] No camera update needed
[2026-10-25 09:27:11,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:27:11,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:27:11,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:27:11,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:27:13,612.612 INFO    ] ================================================
[2026-10-25 09:27:13,628.628 INFO    ] Launching Daemon at Sun Oct 25 09:27:13 IST 2026
[2026-10-25 09:27:13,638.638 INFO    ] ================================================
[2026-10-25 09:27:14,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:27:14
[2026-10-25 09:27:14,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:27:15,074.074 INFO    ] Initializing speech engine...
[2026-10-25 09:27:15,094.094 INFO    ] 2026-10-25 09:27:15
[2026-10-25 09:27:15,354.354 INFO    ] 2026-10-25 09:27:15
[2026-10-25 09:27:15,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:27:15,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:27:15,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:27:15,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:27:15,730.730 INFO    ] time= 25/10/2026 09:27:15
[2026-10-25 09:27:15,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:27:15,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:27:15,900.900 INFO    ] No existing commands found in stream
[2026-10-25 09:27:20,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:27:20,928.928 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 09:27:23,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:27:23,753.753 INFO    ] Checking for system updates...
[2026-10-25 09:27:23,788.788 INFO    ] 200
[2026-10-25 09:27:23,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:23,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:23,846.846 INFO    ] No update needed
[2026-10-25 09:27:23,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 09:27:23,885.885 INFO    ] 200
[2026-10-25 09:27:23,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:23,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:27:23,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:23,981.981 INFO    ] No camera update needed
[2026-10-25 09:27:23,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:27:23,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:27:23,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:27:23,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:27:26,036.036 INFO    ] ================================================
[2026-10-25 09:27:26,051.051 INFO    ] Launching Daemon at Sun Oct 25 09:27:26 IST 2026
[2026-10-25 09:27:26,062.062 INFO    ] ================================================
[2026-10-25 09:27:26,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:27:26
[2026-10-25 09:27:27,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:27:27,536.536 INFO    ] Initializing speech engine...
[2026-10-25 09:27:27,547.547 INFO    ] 2026-10-25 09:27:27
[2026-10-25 09:27:27,798.798 INFO    ] 2026-10-25 09:27:27
[2026-10-25 09:27:27,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:27:28,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:27:28,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:27:28,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:27:28,263.263 INFO    ] time= 25/10/2026 09:27:28
[2026-10-25 09:27:28,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:27:28,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:27:28,416.416 INFO    ] No existing commands found in stream
[2026-10-25 09:27:33,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:27:33,431.431 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 09:27:36,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:27:36,432.432 INFO    ] Checking for system updates...
[2026-10-25 09:27:36,469.469 INFO    ] 200
[2026-10-25 09:27:36,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:36,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:36,532.532 INFO    ] No update needed
[2026-10-25 09:27:36,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 09:27:36,568.568 INFO    ] 200
[2026-10-25 09:27:36,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:36,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:27:36,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:36,660.660 INFO    ] No camera update needed
[2026-10-25 09:27:36,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:27:36,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:27:36,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:27:36,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:27:38,715.715 INFO    ] ================================================
[2026-10-25 09:27:38,730.730 INFO    ] Launching Daemon at Sun Oct 25 09:27:38 IST 2026
[2026-10-25 09:27:38,741.741 INFO    ] ================================================
[2026-10-25 09:27:39,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:27:39
[2026-10-25 09:27:39,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:27:40,187.187 INFO    ] Initializing speech engine...
[2026-10-25 09:27:40,196.196 INFO    ] 2026-10-25 09:27:40
[2026-10-25 09:27:40,444.444 INFO    ] 2026-10-25 09:27:40
[2026-10-25 09:27:40,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:27:41,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:27:41,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:27:41,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:27:41,574.574 INFO    ] time= 25/10/2026 09:27:41
[2026-10-25 09:27:41,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:27:41,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:27:41,683.683 INFO    ] No existing commands found in stream
[2026-10-25 09:27:46,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:27:46,698.698 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 09:27:50,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:27:50,589.589 INFO    ] Checking for system updates...
[2026-10-25 09:27:50,626.626 INFO    ] 200
[2026-10-25 09:27:50,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:50,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:50,685.685 INFO    ] No update needed
[2026-10-25 09:27:50,688.688 INFO    ] Checking for camera pi updates...
[2026-10-25 09:27:50,721.721 INFO    ] 200
[2026-10-25 09:27:50,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:27:50,764.764 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:27:50,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:27:50,812.812 INFO    ] No camera update needed
[2026-10-25 09:27:50,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:27:50,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:27:50,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:27:50,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:27:52,868.868 INFO    ] ================================================
[2026-10-25 09:27:52,884.884 INFO    ] Launching Daemon at Sun Oct 25 09:27:52 IST 2026
[2026-10-25 09:27:52,894.894 INFO    ] ================================================
[2026-10-25 09:27:53,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:27:53
[2026-10-25 09:27:54,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:27:54,290.290 INFO    ] Initializing speech engine...
[2026-10-25 09:27:54,296.296 INFO    ] 2026-10-25 09:27:54
[2026-10-25 09:27:54,587.587 INFO    ] 2026-10-25 09:27:54
[2026-10-25 09:27:54,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:27:54,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:27:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:27:54,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:27:54,958.958 INFO    ] time= 25/10/2026 09:27:54
[2026-10-25 09:27:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:27:54,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:27:55,081.081 INFO    ] No existing commands found in stream
[2026-10-25 09:28:00,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:28:00,099.099 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 09:28:02,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:28:02,353.353 INFO    ] Checking for system updates...
[2026-10-25 09:28:02,394.394 INFO    ] 200
[2026-10-25 09:28:02,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:02,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:02,476.476 INFO    ] No update needed
[2026-10-25 09:28:02,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 09:28:02,529.529 INFO    ] 200
[2026-10-25 09:28:02,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:02,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:28:02,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:02,622.622 INFO    ] No camera update needed
[2026-10-25 09:28:02,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:28:02,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:28:02,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:28:02,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:28:04,684.684 INFO    ] ================================================
[2026-10-25 09:28:04,699.699 INFO    ] Launching Daemon at Sun Oct 25 09:28:04 IST 2026
[2026-10-25 09:28:04,709.709 INFO    ] ================================================
[2026-10-25 09:28:05,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:28:05
[2026-10-25 09:28:05,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:28:06,124.124 INFO    ] Initializing speech engine...
[2026-10-25 09:28:06,147.147 INFO    ] 2026-10-25 09:28:06
[2026-10-25 09:28:06,403.403 INFO    ] 2026-10-25 09:28:06
[2026-10-25 09:28:06,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:28:06,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:28:06,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:28:06,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:28:06,779.779 INFO    ] time= 25/10/2026 09:28:06
[2026-10-25 09:28:06,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:28:06,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:28:06,961.961 INFO    ] No existing commands found in stream
[2026-10-25 09:28:11,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:28:11,988.988 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 09:28:16,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:28:16,007.007 INFO    ] Checking for system updates...
[2026-10-25 09:28:16,045.045 INFO    ] 200
[2026-10-25 09:28:16,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:16,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:16,111.111 INFO    ] No update needed
[2026-10-25 09:28:16,114.114 INFO    ] Checking for camera pi updates...
[2026-10-25 09:28:16,150.150 INFO    ] 200
[2026-10-25 09:28:16,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:16,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:28:16,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:16,249.249 INFO    ] No camera update needed
[2026-10-25 09:28:16,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:28:16,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:28:16,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:28:16,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:28:18,305.305 INFO    ] ================================================
[2026-10-25 09:28:18,321.321 INFO    ] Launching Daemon at Sun Oct 25 09:28:18 IST 2026
[2026-10-25 09:28:18,331.331 INFO    ] ================================================
[2026-10-25 09:28:18,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:28:18
[2026-10-25 09:28:19,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:28:19,877.877 INFO    ] Initializing speech engine...
[2026-10-25 09:28:19,886.886 INFO    ] 2026-10-25 09:28:19
[2026-10-25 09:28:20,153.153 INFO    ] 2026-10-25 09:28:20
[2026-10-25 09:28:20,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:28:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:28:20,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:28:20,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:28:20,628.628 INFO    ] time= 25/10/2026 09:28:20
[2026-10-25 09:28:20,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:28:20,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:28:20,778.778 INFO    ] No existing commands found in stream
[2026-10-25 09:28:25,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:28:25,795.795 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 09:28:28,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:28:28,468.468 INFO    ] Checking for system updates...
[2026-10-25 09:28:28,505.505 INFO    ] 200
[2026-10-25 09:28:28,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:28,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:28:28,563.563 INFO    ] No update needed
[2026-10-25 09:28:28,566.566 INFO    ] Checking for camera pi updates...
[2026-10-25 09:28:28,600.600 INFO    ] 200
[2026-10-25 09:28:28,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:28,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:28:28,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:28:28,701.701 INFO    ] No camera update needed
[2026-10-25 09:28:28,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:28:28,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:28:28,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:28:28,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:28:30,757.757 INFO    ] ================================================
[2026-10-25 09:28:30,773.773 INFO    ] Launching Daemon at Sun Oct 25 09:28:30 IST 2026
[2026-10-25 09:28:30,783.783 INFO    ] ================================================
[2026-10-25 09:28:31,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:28:31
[2026-10-25 09:28:31,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:28:32,263.263 INFO    ] Initializing speech engine...
[2026-10-25 09:28:32,271.271 INFO    ] 2026-10-25 09:28:32
[2026-10-25 09:28:32,572.572 INFO    ] 2026-10-25 09:28:32
[2026-10-25 09:28:32,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:28:32,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:28:32,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:28:32,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:28:32,956.956 INFO    ] time= 25/10/2026 09:28:32
[2026-10-25 09:28:32,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:28:32,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:28:33,043.043 INFO    ] No existing commands found in stream
[2026-10-25 09:28:38,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:28:38,061.061 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 09:28:42,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:28:42,358.358 INFO    ] Checking for system updates...
[2026-10-25 09:28:42,394.394 INFO    ] 200
[2026-10-25 09:28:42,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:42,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:42,451.451 INFO    ] No update needed
[2026-10-25 09:28:42,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 09:28:42,487.487 INFO    ] 200
[2026-10-25 09:28:42,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:42,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:28:42,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:28:42,581.581 INFO    ] No camera update needed
[2026-10-25 09:28:42,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:28:42,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:28:42,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:28:42,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:28:44,636.636 INFO    ] ================================================
[2026-10-25 09:28:44,651.651 INFO    ] Launching Daemon at Sun Oct 25 09:28:44 IST 2026
[2026-10-25 09:28:44,662.662 INFO    ] ================================================
[2026-10-25 09:28:45,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:28:45
[2026-10-25 09:28:45,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:28:46,105.105 INFO    ] Initializing speech engine...
[2026-10-25 09:28:46,121.121 INFO    ] 2026-10-25 09:28:46
[2026-10-25 09:28:46,388.388 INFO    ] 2026-10-25 09:28:46
[2026-10-25 09:28:46,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:28:46,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:28:46,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:28:46,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:28:46,966.966 INFO    ] time= 25/10/2026 09:28:46
[2026-10-25 09:28:46,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:28:47,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:28:47,059.059 INFO    ] No existing commands found in stream
[2026-10-25 09:28:52,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:28:52,269.269 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 09:28:55,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:28:55,804.804 INFO    ] Checking for system updates...
[2026-10-25 09:28:55,843.843 INFO    ] 200
[2026-10-25 09:28:55,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:55,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:28:55,905.905 INFO    ] No update needed
[2026-10-25 09:28:55,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 09:28:55,941.941 INFO    ] 200
[2026-10-25 09:28:55,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:28:55,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:28:56,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:28:56,032.032 INFO    ] No camera update needed
[2026-10-25 09:28:56,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:28:56,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:28:56,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:28:56,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:28:58,087.087 INFO    ] ================================================
[2026-10-25 09:28:58,102.102 INFO    ] Launching Daemon at Sun Oct 25 09:28:58 IST 2026
[2026-10-25 09:28:58,113.113 INFO    ] ================================================
[2026-10-25 09:28:58,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:28:58
[2026-10-25 09:28:59,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:28:59,698.698 INFO    ] Initializing speech engine...
[2026-10-25 09:28:59,706.706 INFO    ] 2026-10-25 09:28:59
[2026-10-25 09:28:59,976.976 INFO    ] 2026-10-25 09:28:59
[2026-10-25 09:29:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:29:00,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:29:00,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:29:00,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:29:00,453.453 INFO    ] time= 25/10/2026 09:29:00
[2026-10-25 09:29:00,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:29:00,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:29:00,606.606 INFO    ] No existing commands found in stream
[2026-10-25 09:29:05,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:29:05,622.622 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 09:29:09,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:29:09,652.652 INFO    ] Checking for system updates...
[2026-10-25 09:29:09,688.688 INFO    ] 200
[2026-10-25 09:29:09,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:10,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:29:10,202.202 INFO    ] No update needed
[2026-10-25 09:29:10,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 09:29:10,247.247 INFO    ] 200
[2026-10-25 09:29:10,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:10,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:29:10,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:29:10,349.349 INFO    ] No camera update needed
[2026-10-25 09:29:10,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:29:10,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:29:10,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:29:10,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:29:12,408.408 INFO    ] ================================================
[2026-10-25 09:29:12,423.423 INFO    ] Launching Daemon at Sun Oct 25 09:29:12 IST 2026
[2026-10-25 09:29:12,460.460 INFO    ] ================================================
[2026-10-25 09:29:13,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:29:13
[2026-10-25 09:29:13,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:29:13,957.957 INFO    ] Initializing speech engine...
[2026-10-25 09:29:13,966.966 INFO    ] 2026-10-25 09:29:13
[2026-10-25 09:29:14,263.263 INFO    ] 2026-10-25 09:29:14
[2026-10-25 09:29:14,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:29:14,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:29:14,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:29:14,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:29:14,639.639 INFO    ] time= 25/10/2026 09:29:14
[2026-10-25 09:29:14,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:29:14,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:29:14,762.762 INFO    ] No existing commands found in stream
[2026-10-25 09:29:19,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:29:19,778.778 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 09:29:20,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:29:20,544.544 INFO    ] Checking for system updates...
[2026-10-25 09:29:20,580.580 INFO    ] 200
[2026-10-25 09:29:20,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:20,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:29:20,641.641 INFO    ] No update needed
[2026-10-25 09:29:20,644.644 INFO    ] Checking for camera pi updates...
[2026-10-25 09:29:20,678.678 INFO    ] 200
[2026-10-25 09:29:20,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:20,720.720 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:29:20,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:29:20,882.882 INFO    ] No camera update needed
[2026-10-25 09:29:20,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:29:20,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:29:20,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:29:20,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:29:22,937.937 INFO    ] ================================================
[2026-10-25 09:29:22,952.952 INFO    ] Launching Daemon at Sun Oct 25 09:29:22 IST 2026
[2026-10-25 09:29:22,962.962 INFO    ] ================================================
[2026-10-25 09:29:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:29:23
[2026-10-25 09:29:24,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:29:24,417.417 INFO    ] Initializing speech engine...
[2026-10-25 09:29:24,428.428 INFO    ] 2026-10-25 09:29:24
[2026-10-25 09:29:24,710.710 INFO    ] 2026-10-25 09:29:24
[2026-10-25 09:29:24,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:29:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:29:24,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:29:25,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:29:25,085.085 INFO    ] time= 25/10/2026 09:29:25
[2026-10-25 09:29:25,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:29:25,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:29:25,211.211 INFO    ] No existing commands found in stream
[2026-10-25 09:29:30,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:29:30,224.224 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 09:29:34,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:29:34,590.590 INFO    ] Checking for system updates...
[2026-10-25 09:29:34,629.629 INFO    ] 200
[2026-10-25 09:29:34,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:34,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:34,688.688 INFO    ] No update needed
[2026-10-25 09:29:34,690.690 INFO    ] Checking for camera pi updates...
[2026-10-25 09:29:34,724.724 INFO    ] 200
[2026-10-25 09:29:34,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:34,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:29:34,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:34,814.814 INFO    ] No camera update needed
[2026-10-25 09:29:34,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:29:34,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:29:34,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:29:34,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:29:36,869.869 INFO    ] ================================================
[2026-10-25 09:29:36,884.884 INFO    ] Launching Daemon at Sun Oct 25 09:29:36 IST 2026
[2026-10-25 09:29:36,895.895 INFO    ] ================================================
[2026-10-25 09:29:37,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:29:37
[2026-10-25 09:29:38,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:29:38,291.291 INFO    ] Initializing speech engine...
[2026-10-25 09:29:38,300.300 INFO    ] 2026-10-25 09:29:38
[2026-10-25 09:29:38,574.574 INFO    ] 2026-10-25 09:29:38
[2026-10-25 09:29:38,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:29:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:29:38,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:29:39,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:29:39,089.089 INFO    ] time= 25/10/2026 09:29:39
[2026-10-25 09:29:39,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:29:39,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:29:39,268.268 INFO    ] No existing commands found in stream
[2026-10-25 09:29:44,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:29:44,306.306 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 09:29:47,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:29:47,272.272 INFO    ] Checking for system updates...
[2026-10-25 09:29:47,308.308 INFO    ] 200
[2026-10-25 09:29:47,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:47,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:47,368.368 INFO    ] No update needed
[2026-10-25 09:29:47,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 09:29:47,404.404 INFO    ] 200
[2026-10-25 09:29:47,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:47,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:29:47,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:47,510.510 INFO    ] No camera update needed
[2026-10-25 09:29:47,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:29:47,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:29:47,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:29:47,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:29:49,575.575 INFO    ] ================================================
[2026-10-25 09:29:49,589.589 INFO    ] Launching Daemon at Sun Oct 25 09:29:49 IST 2026
[2026-10-25 09:29:49,600.600 INFO    ] ================================================
[2026-10-25 09:29:50,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:29:50
[2026-10-25 09:29:50,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:29:51,064.064 INFO    ] Initializing speech engine...
[2026-10-25 09:29:51,074.074 INFO    ] 2026-10-25 09:29:51
[2026-10-25 09:29:51,342.342 INFO    ] 2026-10-25 09:29:51
[2026-10-25 09:29:51,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:29:51,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:29:51,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:29:51,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:29:51,741.741 INFO    ] time= 25/10/2026 09:29:51
[2026-10-25 09:29:51,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:29:51,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:29:51,883.883 INFO    ] No existing commands found in stream
[2026-10-25 09:29:56,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:29:56,911.911 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 09:29:57,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:29:57,492.492 INFO    ] Checking for system updates...
[2026-10-25 09:29:57,528.528 INFO    ] 200
[2026-10-25 09:29:57,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:57,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:57,586.586 INFO    ] No update needed
[2026-10-25 09:29:57,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 09:29:57,623.623 INFO    ] 200
[2026-10-25 09:29:57,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:29:57,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:29:57,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:29:57,719.719 INFO    ] No camera update needed
[2026-10-25 09:29:57,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:29:57,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:29:57,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:29:57,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:29:59,775.775 INFO    ] ================================================
[2026-10-25 09:29:59,790.790 INFO    ] Launching Daemon at Sun Oct 25 09:29:59 IST 2026
[2026-10-25 09:29:59,801.801 INFO    ] ================================================
[2026-10-25 09:30:00,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:30:00
[2026-10-25 09:30:00,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:30:01,247.247 INFO    ] Initializing speech engine...
[2026-10-25 09:30:01,254.254 INFO    ] 2026-10-25 09:30:01
[2026-10-25 09:30:01,515.515 INFO    ] 2026-10-25 09:30:01
[2026-10-25 09:30:01,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:30:01,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:30:01,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:30:01,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:30:01,981.981 INFO    ] time= 25/10/2026 09:30:01
[2026-10-25 09:30:01,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:30:01,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:30:02,076.076 INFO    ] No existing commands found in stream
[2026-10-25 09:30:07,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:30:07,089.089 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 09:30:10,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:30:10,374.374 INFO    ] Checking for system updates...
[2026-10-25 09:30:10,416.416 INFO    ] 200
[2026-10-25 09:30:10,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:10,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:10,480.480 INFO    ] No update needed
[2026-10-25 09:30:10,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 09:30:10,520.520 INFO    ] 200
[2026-10-25 09:30:10,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:10,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:30:10,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:10,629.629 INFO    ] No camera update needed
[2026-10-25 09:30:10,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:30:10,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:30:10,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:30:10,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:30:12,690.690 INFO    ] ================================================
[2026-10-25 09:30:12,705.705 INFO    ] Launching Daemon at Sun Oct 25 09:30:12 IST 2026
[2026-10-25 09:30:12,716.716 INFO    ] ================================================
[2026-10-25 09:30:13,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:30:13
[2026-10-25 09:30:13,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:30:14,120.120 INFO    ] Initializing speech engine...
[2026-10-25 09:30:14,141.141 INFO    ] 2026-10-25 09:30:14
[2026-10-25 09:30:14,402.402 INFO    ] 2026-10-25 09:30:14
[2026-10-25 09:30:14,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:30:14,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:30:14,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:30:14,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:30:14,852.852 INFO    ] time= 25/10/2026 09:30:14
[2026-10-25 09:30:14,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:30:14,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:30:15,006.006 INFO    ] No existing commands found in stream
[2026-10-25 09:30:20,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:30:20,033.033 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 09:30:23,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:30:23,488.488 INFO    ] Checking for system updates...
[2026-10-25 09:30:23,525.525 INFO    ] 200
[2026-10-25 09:30:23,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:23,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:23,587.587 INFO    ] No update needed
[2026-10-25 09:30:23,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 09:30:23,624.624 INFO    ] 200
[2026-10-25 09:30:23,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:23,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:30:23,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:23,730.730 INFO    ] No camera update needed
[2026-10-25 09:30:23,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:30:23,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:30:23,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:30:23,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:30:25,795.795 INFO    ] ================================================
[2026-10-25 09:30:25,809.809 INFO    ] Launching Daemon at Sun Oct 25 09:30:25 IST 2026
[2026-10-25 09:30:25,820.820 INFO    ] ================================================
[2026-10-25 09:30:26,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:30:26
[2026-10-25 09:30:27,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:30:27,458.458 INFO    ] Initializing speech engine...
[2026-10-25 09:30:27,464.464 INFO    ] 2026-10-25 09:30:27
[2026-10-25 09:30:27,779.779 INFO    ] 2026-10-25 09:30:27
[2026-10-25 09:30:27,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:30:28,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:30:28,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:30:28,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:30:28,307.307 INFO    ] time= 25/10/2026 09:30:28
[2026-10-25 09:30:28,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:30:28,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:30:28,451.451 INFO    ] No existing commands found in stream
[2026-10-25 09:30:33,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:30:33,485.485 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 09:30:36,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:30:36,332.332 INFO    ] Checking for system updates...
[2026-10-25 09:30:36,374.374 INFO    ] 200
[2026-10-25 09:30:36,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:36,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:36,436.436 INFO    ] No update needed
[2026-10-25 09:30:36,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 09:30:36,475.475 INFO    ] 200
[2026-10-25 09:30:36,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:36,527.527 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:30:36,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:36,583.583 INFO    ] No camera update needed
[2026-10-25 09:30:36,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:30:36,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:30:36,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:30:36,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:30:38,645.645 INFO    ] ================================================
[2026-10-25 09:30:38,660.660 INFO    ] Launching Daemon at Sun Oct 25 09:30:38 IST 2026
[2026-10-25 09:30:38,670.670 INFO    ] ================================================
[2026-10-25 09:30:39,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:30:39
[2026-10-25 09:30:40,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:30:40,305.305 INFO    ] Initializing speech engine...
[2026-10-25 09:30:40,316.316 INFO    ] 2026-10-25 09:30:40
[2026-10-25 09:30:40,589.589 INFO    ] 2026-10-25 09:30:40
[2026-10-25 09:30:40,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:30:40,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:30:40,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:30:43,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:30:43,836.836 INFO    ] time= 25/10/2026 09:30:43
[2026-10-25 09:30:43,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:30:43,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:30:43,893.893 INFO    ] No existing commands found in stream
[2026-10-25 09:30:48,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:30:48,906.906 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 09:30:52,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:30:52,321.321 INFO    ] Checking for system updates...
[2026-10-25 09:30:52,362.362 INFO    ] 200
[2026-10-25 09:30:52,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:52,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:52,430.430 INFO    ] No update needed
[2026-10-25 09:30:52,434.434 INFO    ] Checking for camera pi updates...
[2026-10-25 09:30:52,469.469 INFO    ] 200
[2026-10-25 09:30:52,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:30:52,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:30:52,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:30:52,568.568 INFO    ] No camera update needed
[2026-10-25 09:30:52,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:30:52,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:30:52,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:30:52,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:30:54,628.628 INFO    ] ================================================
[2026-10-25 09:30:54,643.643 INFO    ] Launching Daemon at Sun Oct 25 09:30:54 IST 2026
[2026-10-25 09:30:54,654.654 INFO    ] ================================================
[2026-10-25 09:30:55,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:30:55
[2026-10-25 09:30:55,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:30:56,055.055 INFO    ] Initializing speech engine...
[2026-10-25 09:30:56,061.061 INFO    ] 2026-10-25 09:30:56
[2026-10-25 09:30:56,354.354 INFO    ] 2026-10-25 09:30:56
[2026-10-25 09:30:56,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:30:56,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:30:56,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:30:56,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:30:56,741.741 INFO    ] time= 25/10/2026 09:30:56
[2026-10-25 09:30:56,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:30:56,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:30:56,869.869 INFO    ] No existing commands found in stream
[2026-10-25 09:31:01,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:31:01,886.886 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 09:31:03,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:31:03,514.514 INFO    ] Checking for system updates...
[2026-10-25 09:31:03,550.550 INFO    ] 200
[2026-10-25 09:31:03,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:03,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:31:03,625.625 INFO    ] No update needed
[2026-10-25 09:31:03,628.628 INFO    ] Checking for camera pi updates...
[2026-10-25 09:31:03,664.664 INFO    ] 200
[2026-10-25 09:31:03,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:03,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:31:03,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:31:03,780.780 INFO    ] No camera update needed
[2026-10-25 09:31:03,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:31:03,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:31:03,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:31:03,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:31:05,842.842 INFO    ] ================================================
[2026-10-25 09:31:05,858.858 INFO    ] Launching Daemon at Sun Oct 25 09:31:05 IST 2026
[2026-10-25 09:31:05,868.868 INFO    ] ================================================
[2026-10-25 09:31:06,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:31:06
[2026-10-25 09:31:07,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:31:07,276.276 INFO    ] Initializing speech engine...
[2026-10-25 09:31:07,294.294 INFO    ] 2026-10-25 09:31:07
[2026-10-25 09:31:07,555.555 INFO    ] 2026-10-25 09:31:07
[2026-10-25 09:31:07,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:31:07,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:31:07,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:31:07,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:31:07,964.964 INFO    ] time= 25/10/2026 09:31:07
[2026-10-25 09:31:07,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:31:07,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:31:08,060.060 INFO    ] No existing commands found in stream
[2026-10-25 09:31:13,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:31:13,081.081 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 09:31:15,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:31:15,684.684 INFO    ] Checking for system updates...
[2026-10-25 09:31:15,720.720 INFO    ] 200
[2026-10-25 09:31:15,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:15,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:31:15,778.778 INFO    ] No update needed
[2026-10-25 09:31:15,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 09:31:15,814.814 INFO    ] 200
[2026-10-25 09:31:15,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:15,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:31:15,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:31:15,914.914 INFO    ] No camera update needed
[2026-10-25 09:31:15,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:31:15,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:31:15,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:31:15,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:31:17,969.969 INFO    ] ================================================
[2026-10-25 09:31:17,984.984 INFO    ] Launching Daemon at Sun Oct 25 09:31:17 IST 2026
[2026-10-25 09:31:17,994.994 INFO    ] ================================================
[2026-10-25 09:31:18,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:31:18
[2026-10-25 09:31:19,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:31:19,401.401 INFO    ] Initializing speech engine...
[2026-10-25 09:31:19,424.424 INFO    ] 2026-10-25 09:31:19
[2026-10-25 09:31:19,677.677 INFO    ] 2026-10-25 09:31:19
[2026-10-25 09:31:19,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:31:19,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:31:19,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:31:20,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:31:20,122.122 INFO    ] time= 25/10/2026 09:31:20
[2026-10-25 09:31:20,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:31:20,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:31:20,310.310 INFO    ] No existing commands found in stream
[2026-10-25 09:31:25,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:31:25,346.346 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 09:31:27,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:31:27,906.906 INFO    ] Checking for system updates...
[2026-10-25 09:31:27,947.947 INFO    ] 200
[2026-10-25 09:31:27,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:28,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:28,007.007 INFO    ] No update needed
[2026-10-25 09:31:28,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 09:31:28,046.046 INFO    ] 200
[2026-10-25 09:31:28,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:28,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:31:28,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:28,253.253 INFO    ] No camera update needed
[2026-10-25 09:31:28,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:31:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:31:28,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:31:28,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:31:30,313.313 INFO    ] ================================================
[2026-10-25 09:31:30,328.328 INFO    ] Launching Daemon at Sun Oct 25 09:31:30 IST 2026
[2026-10-25 09:31:30,339.339 INFO    ] ================================================
[2026-10-25 09:31:30,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:31:30
[2026-10-25 09:31:31,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:31:31,749.749 INFO    ] Initializing speech engine...
[2026-10-25 09:31:31,765.765 INFO    ] 2026-10-25 09:31:31
[2026-10-25 09:31:32,061.061 INFO    ] 2026-10-25 09:31:32
[2026-10-25 09:31:32,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:31:32,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:31:32,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:31:32,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:31:32,490.490 INFO    ] time= 25/10/2026 09:31:32
[2026-10-25 09:31:32,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:31:32,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:31:32,622.622 INFO    ] No existing commands found in stream
[2026-10-25 09:31:37,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:31:37,663.663 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 09:31:39,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:31:39,895.895 INFO    ] Checking for system updates...
[2026-10-25 09:31:39,933.933 INFO    ] 200
[2026-10-25 09:31:39,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:39,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:39,992.992 INFO    ] No update needed
[2026-10-25 09:31:39,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 09:31:40,028.028 INFO    ] 200
[2026-10-25 09:31:40,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:40,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:31:40,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:40,124.124 INFO    ] No camera update needed
[2026-10-25 09:31:40,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:31:40,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:31:40,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:31:40,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:31:42,179.179 INFO    ] ================================================
[2026-10-25 09:31:42,194.194 INFO    ] Launching Daemon at Sun Oct 25 09:31:42 IST 2026
[2026-10-25 09:31:42,205.205 INFO    ] ================================================
[2026-10-25 09:31:42,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:31:42
[2026-10-25 09:31:43,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:31:43,606.606 INFO    ] Initializing speech engine...
[2026-10-25 09:31:43,621.621 INFO    ] 2026-10-25 09:31:43
[2026-10-25 09:31:43,910.910 INFO    ] 2026-10-25 09:31:43
[2026-10-25 09:31:43,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:31:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:31:45,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:31:45,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:31:45,223.223 INFO    ] time= 25/10/2026 09:31:45
[2026-10-25 09:31:45,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:31:45,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:31:45,338.338 INFO    ] No existing commands found in stream
[2026-10-25 09:31:50,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:31:50,361.361 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 09:31:52,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:31:52,715.715 INFO    ] Checking for system updates...
[2026-10-25 09:31:52,752.752 INFO    ] 200
[2026-10-25 09:31:52,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:52,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:52,809.809 INFO    ] No update needed
[2026-10-25 09:31:52,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 09:31:52,846.846 INFO    ] 200
[2026-10-25 09:31:52,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:31:52,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:31:52,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:31:52,954.954 INFO    ] No camera update needed
[2026-10-25 09:31:52,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:31:52,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:31:52,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:31:52,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:31:55,013.013 INFO    ] ================================================
[2026-10-25 09:31:55,028.028 INFO    ] Launching Daemon at Sun Oct 25 09:31:55 IST 2026
[2026-10-25 09:31:55,039.039 INFO    ] ================================================
[2026-10-25 09:31:55,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:31:55
[2026-10-25 09:31:56,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:31:56,546.546 INFO    ] Initializing speech engine...
[2026-10-25 09:31:56,557.557 INFO    ] 2026-10-25 09:31:56
[2026-10-25 09:31:56,873.873 INFO    ] 2026-10-25 09:31:56
[2026-10-25 09:31:56,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:31:57,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:31:57,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:31:57,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:31:57,380.380 INFO    ] time= 25/10/2026 09:31:57
[2026-10-25 09:31:57,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:31:57,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:31:57,533.533 INFO    ] No existing commands found in stream
[2026-10-25 09:32:02,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:32:02,547.547 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 09:32:05,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:32:05,192.192 INFO    ] Checking for system updates...
[2026-10-25 09:32:05,229.229 INFO    ] 200
[2026-10-25 09:32:05,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:05,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:05,288.288 INFO    ] No update needed
[2026-10-25 09:32:05,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 09:32:05,328.328 INFO    ] 200
[2026-10-25 09:32:05,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:05,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:32:05,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:05,425.425 INFO    ] No camera update needed
[2026-10-25 09:32:05,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:32:05,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:32:05,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:32:05,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:32:07,484.484 INFO    ] ================================================
[2026-10-25 09:32:07,499.499 INFO    ] Launching Daemon at Sun Oct 25 09:32:07 IST 2026
[2026-10-25 09:32:07,509.509 INFO    ] ================================================
[2026-10-25 09:32:08,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:32:08
[2026-10-25 09:32:08,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:32:09,065.065 INFO    ] Initializing speech engine...
[2026-10-25 09:32:09,074.074 INFO    ] 2026-10-25 09:32:09
[2026-10-25 09:32:09,320.320 INFO    ] 2026-10-25 09:32:09
[2026-10-25 09:32:09,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:32:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:32:09,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:32:09,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:32:09,805.805 INFO    ] time= 25/10/2026 09:32:09
[2026-10-25 09:32:09,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:32:09,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:32:09,945.945 INFO    ] No existing commands found in stream
[2026-10-25 09:32:14,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:32:14,979.979 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 09:32:16,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:32:16,082.082 INFO    ] Checking for system updates...
[2026-10-25 09:32:16,119.119 INFO    ] 200
[2026-10-25 09:32:16,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:16,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:16,185.185 INFO    ] No update needed
[2026-10-25 09:32:16,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 09:32:16,225.225 INFO    ] 200
[2026-10-25 09:32:16,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:16,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:32:16,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:16,343.343 INFO    ] No camera update needed
[2026-10-25 09:32:16,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:32:16,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:32:16,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:32:16,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:32:18,400.400 INFO    ] ================================================
[2026-10-25 09:32:18,418.418 INFO    ] Launching Daemon at Sun Oct 25 09:32:18 IST 2026
[2026-10-25 09:32:18,430.430 INFO    ] ================================================
[2026-10-25 09:32:18,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:32:18
[2026-10-25 09:32:19,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:32:19,849.849 INFO    ] Initializing speech engine...
[2026-10-25 09:32:19,867.867 INFO    ] 2026-10-25 09:32:19
[2026-10-25 09:32:20,180.180 INFO    ] 2026-10-25 09:32:20
[2026-10-25 09:32:20,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:32:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:32:20,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:32:20,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:32:20,688.688 INFO    ] time= 25/10/2026 09:32:20
[2026-10-25 09:32:20,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:32:20,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:32:20,842.842 INFO    ] No existing commands found in stream
[2026-10-25 09:32:25,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:32:25,863.863 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 09:32:26,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:32:26,410.410 INFO    ] Checking for system updates...
[2026-10-25 09:32:26,455.455 INFO    ] 200
[2026-10-25 09:32:26,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:26,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:32:26,522.522 INFO    ] No update needed
[2026-10-25 09:32:26,525.525 INFO    ] Checking for camera pi updates...
[2026-10-25 09:32:26,563.563 INFO    ] 200
[2026-10-25 09:32:26,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:26,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:32:26,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:32:26,669.669 INFO    ] No camera update needed
[2026-10-25 09:32:26,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:32:26,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:32:26,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:32:26,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:32:28,729.729 INFO    ] ================================================
[2026-10-25 09:32:28,744.744 INFO    ] Launching Daemon at Sun Oct 25 09:32:28 IST 2026
[2026-10-25 09:32:28,755.755 INFO    ] ================================================
[2026-10-25 09:32:29,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:32:29
[2026-10-25 09:32:29,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:32:30,147.147 INFO    ] Initializing speech engine...
[2026-10-25 09:32:30,155.155 INFO    ] 2026-10-25 09:32:30
[2026-10-25 09:32:30,424.424 INFO    ] 2026-10-25 09:32:30
[2026-10-25 09:32:30,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:32:30,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:32:30,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:32:30,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:32:30,791.791 INFO    ] time= 25/10/2026 09:32:30
[2026-10-25 09:32:30,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:32:30,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:32:30,866.866 INFO    ] No existing commands found in stream
[2026-10-25 09:32:35,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:32:35,881.881 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 09:32:39,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:32:39,508.508 INFO    ] Checking for system updates...
[2026-10-25 09:32:39,545.545 INFO    ] 200
[2026-10-25 09:32:39,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:39,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:39,611.611 INFO    ] No update needed
[2026-10-25 09:32:39,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 09:32:39,647.647 INFO    ] 200
[2026-10-25 09:32:39,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:39,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:32:39,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:32:39,745.745 INFO    ] No camera update needed
[2026-10-25 09:32:39,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:32:39,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:32:39,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:32:39,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:32:41,800.800 INFO    ] ================================================
[2026-10-25 09:32:41,815.815 INFO    ] Launching Daemon at Sun Oct 25 09:32:41 IST 2026
[2026-10-25 09:32:41,826.826 INFO    ] ================================================
[2026-10-25 09:32:42,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:32:42
[2026-10-25 09:32:43,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:32:43,284.284 INFO    ] Initializing speech engine...
[2026-10-25 09:32:43,293.293 INFO    ] 2026-10-25 09:32:43
[2026-10-25 09:32:43,551.551 INFO    ] 2026-10-25 09:32:43
[2026-10-25 09:32:43,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:32:46,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:32:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:32:46,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:32:46,301.301 INFO    ] time= 25/10/2026 09:32:46
[2026-10-25 09:32:46,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:32:46,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:32:46,391.391 INFO    ] No existing commands found in stream
[2026-10-25 09:32:51,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:32:51,403.403 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 09:32:53,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:32:53,993.993 INFO    ] Checking for system updates...
[2026-10-25 09:32:54,030.030 INFO    ] 200
[2026-10-25 09:32:54,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:54,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:32:54,089.089 INFO    ] No update needed
[2026-10-25 09:32:54,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 09:32:54,130.130 INFO    ] 200
[2026-10-25 09:32:54,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:32:54,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:32:54,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:32:54,225.225 INFO    ] No camera update needed
[2026-10-25 09:32:54,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:32:54,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:32:54,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:32:54,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:32:56,282.282 INFO    ] ================================================
[2026-10-25 09:32:56,298.298 INFO    ] Launching Daemon at Sun Oct 25 09:32:56 IST 2026
[2026-10-25 09:32:56,309.309 INFO    ] ================================================
[2026-10-25 09:32:56,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:32:56
[2026-10-25 09:32:57,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:32:57,729.729 INFO    ] Initializing speech engine...
[2026-10-25 09:32:57,736.736 INFO    ] 2026-10-25 09:32:57
[2026-10-25 09:32:57,987.987 INFO    ] 2026-10-25 09:32:57
[2026-10-25 09:32:58,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:32:58,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:32:58,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:32:58,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:32:58,492.492 INFO    ] time= 25/10/2026 09:32:58
[2026-10-25 09:32:58,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:32:58,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:32:58,622.622 INFO    ] No existing commands found in stream
[2026-10-25 09:33:03,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:33:03,646.646 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 09:33:06,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:33:06,287.287 INFO    ] Checking for system updates...
[2026-10-25 09:33:06,324.324 INFO    ] 200
[2026-10-25 09:33:06,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:06,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:33:06,390.390 INFO    ] No update needed
[2026-10-25 09:33:06,392.392 INFO    ] Checking for camera pi updates...
[2026-10-25 09:33:06,426.426 INFO    ] 200
[2026-10-25 09:33:06,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:06,470.470 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:33:06,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:33:06,521.521 INFO    ] No camera update needed
[2026-10-25 09:33:06,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:33:06,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:33:06,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:33:06,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:33:08,576.576 INFO    ] ================================================
[2026-10-25 09:33:08,591.591 INFO    ] Launching Daemon at Sun Oct 25 09:33:08 IST 2026
[2026-10-25 09:33:08,602.602 INFO    ] ================================================
[2026-10-25 09:33:09,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:33:09
[2026-10-25 09:33:09,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:33:10,053.053 INFO    ] Initializing speech engine...
[2026-10-25 09:33:10,063.063 INFO    ] 2026-10-25 09:33:10
[2026-10-25 09:33:10,312.312 INFO    ] 2026-10-25 09:33:10
[2026-10-25 09:33:10,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:33:10,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:33:10,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:33:10,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:33:10,794.794 INFO    ] time= 25/10/2026 09:33:10
[2026-10-25 09:33:10,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:33:10,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:33:10,946.946 INFO    ] No existing commands found in stream
[2026-10-25 09:33:15,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:33:15,961.961 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 09:33:19,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:33:19,661.661 INFO    ] Checking for system updates...
[2026-10-25 09:33:19,702.702 INFO    ] 200
[2026-10-25 09:33:19,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:19,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:19,768.768 INFO    ] No update needed
[2026-10-25 09:33:19,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 09:33:19,804.804 INFO    ] 200
[2026-10-25 09:33:19,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:19,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:33:19,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:19,902.902 INFO    ] No camera update needed
[2026-10-25 09:33:19,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:33:19,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:33:19,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:33:19,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:33:21,957.957 INFO    ] ================================================
[2026-10-25 09:33:21,973.973 INFO    ] Launching Daemon at Sun Oct 25 09:33:21 IST 2026
[2026-10-25 09:33:21,984.984 INFO    ] ================================================
[2026-10-25 09:33:22,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:33:22
[2026-10-25 09:33:23,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:33:23,413.413 INFO    ] Initializing speech engine...
[2026-10-25 09:33:23,422.422 INFO    ] 2026-10-25 09:33:23
[2026-10-25 09:33:23,671.671 INFO    ] 2026-10-25 09:33:23
[2026-10-25 09:33:23,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:33:23,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:33:23,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:33:24,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:33:24,081.081 INFO    ] time= 25/10/2026 09:33:24
[2026-10-25 09:33:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:33:24,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:33:24,228.228 INFO    ] No existing commands found in stream
[2026-10-25 09:33:29,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:33:29,236.236 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 09:33:31,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:33:31,064.064 INFO    ] Checking for system updates...
[2026-10-25 09:33:31,104.104 INFO    ] 200
[2026-10-25 09:33:31,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:31,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:31,161.161 INFO    ] No update needed
[2026-10-25 09:33:31,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 09:33:31,202.202 INFO    ] 200
[2026-10-25 09:33:31,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:31,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:33:31,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:31,416.416 INFO    ] No camera update needed
[2026-10-25 09:33:31,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:33:31,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:33:31,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:33:31,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:33:33,473.473 INFO    ] ================================================
[2026-10-25 09:33:33,489.489 INFO    ] Launching Daemon at Sun Oct 25 09:33:33 IST 2026
[2026-10-25 09:33:33,499.499 INFO    ] ================================================
[2026-10-25 09:33:34,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:33:34
[2026-10-25 09:33:34,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:33:34,913.913 INFO    ] Initializing speech engine...
[2026-10-25 09:33:34,920.920 INFO    ] 2026-10-25 09:33:34
[2026-10-25 09:33:35,223.223 INFO    ] 2026-10-25 09:33:35
[2026-10-25 09:33:35,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:33:35,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:33:35,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:33:35,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:33:35,752.752 INFO    ] time= 25/10/2026 09:33:35
[2026-10-25 09:33:35,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:33:35,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:33:35,918.918 INFO    ] No existing commands found in stream
[2026-10-25 09:33:40,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:33:40,933.933 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 09:33:41,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:33:41,964.964 INFO    ] Checking for system updates...
[2026-10-25 09:33:42,001.001 INFO    ] 200
[2026-10-25 09:33:42,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:42,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:33:42,059.059 INFO    ] No update needed
[2026-10-25 09:33:42,062.062 INFO    ] Checking for camera pi updates...
[2026-10-25 09:33:42,104.104 INFO    ] 200
[2026-10-25 09:33:42,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:42,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:33:42,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:33:42,205.205 INFO    ] No camera update needed
[2026-10-25 09:33:42,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:33:42,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:33:42,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:33:42,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:33:44,261.261 INFO    ] ================================================
[2026-10-25 09:33:44,277.277 INFO    ] Launching Daemon at Sun Oct 25 09:33:44 IST 2026
[2026-10-25 09:33:44,288.288 INFO    ] ================================================
[2026-10-25 09:33:44,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:33:44
[2026-10-25 09:33:45,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:33:45,710.710 INFO    ] Initializing speech engine...
[2026-10-25 09:33:45,719.719 INFO    ] 2026-10-25 09:33:45
[2026-10-25 09:33:45,966.966 INFO    ] 2026-10-25 09:33:45
[2026-10-25 09:33:46,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:33:47,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:33:47,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:33:47,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:33:47,319.319 INFO    ] time= 25/10/2026 09:33:47
[2026-10-25 09:33:47,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:33:47,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:33:47,401.401 INFO    ] No existing commands found in stream
[2026-10-25 09:33:52,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:33:52,416.416 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 09:33:56,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:33:56,252.252 INFO    ] Checking for system updates...
[2026-10-25 09:33:56,293.293 INFO    ] 200
[2026-10-25 09:33:56,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:56,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:56,358.358 INFO    ] No update needed
[2026-10-25 09:33:56,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 09:33:56,399.399 INFO    ] 200
[2026-10-25 09:33:56,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:33:56,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:33:56,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:33:56,495.495 INFO    ] No camera update needed
[2026-10-25 09:33:56,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:33:56,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:33:56,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:33:56,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:33:58,555.555 INFO    ] ================================================
[2026-10-25 09:33:58,571.571 INFO    ] Launching Daemon at Sun Oct 25 09:33:58 IST 2026
[2026-10-25 09:33:58,582.582 INFO    ] ================================================
[2026-10-25 09:33:59,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:33:59
[2026-10-25 09:33:59,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:34:00,241.241 INFO    ] Initializing speech engine...
[2026-10-25 09:34:00,249.249 INFO    ] 2026-10-25 09:34:00
[2026-10-25 09:34:00,531.531 INFO    ] 2026-10-25 09:34:00
[2026-10-25 09:34:00,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:34:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:34:00,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:34:01,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:34:01,063.063 INFO    ] time= 25/10/2026 09:34:01
[2026-10-25 09:34:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:34:01,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:34:01,216.216 INFO    ] No existing commands found in stream
[2026-10-25 09:34:06,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:34:06,236.236 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 09:34:07,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:34:07,182.182 INFO    ] Checking for system updates...
[2026-10-25 09:34:07,220.220 INFO    ] 200
[2026-10-25 09:34:07,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:07,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:34:07,285.285 INFO    ] No update needed
[2026-10-25 09:34:07,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 09:34:07,325.325 INFO    ] 200
[2026-10-25 09:34:07,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:07,370.370 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:34:07,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:34:07,424.424 INFO    ] No camera update needed
[2026-10-25 09:34:07,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:34:07,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:34:07,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:34:07,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:34:09,482.482 INFO    ] ================================================
[2026-10-25 09:34:09,497.497 INFO    ] Launching Daemon at Sun Oct 25 09:34:09 IST 2026
[2026-10-25 09:34:09,508.508 INFO    ] ================================================
[2026-10-25 09:34:10,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:34:10
[2026-10-25 09:34:10,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:34:11,027.027 INFO    ] Initializing speech engine...
[2026-10-25 09:34:11,035.035 INFO    ] 2026-10-25 09:34:11
[2026-10-25 09:34:11,294.294 INFO    ] 2026-10-25 09:34:11
[2026-10-25 09:34:11,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:34:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:34:11,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:34:11,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:34:11,753.753 INFO    ] time= 25/10/2026 09:34:11
[2026-10-25 09:34:11,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:34:11,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:34:11,907.907 INFO    ] No existing commands found in stream
[2026-10-25 09:34:16,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:34:16,922.922 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 09:34:18,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:34:18,680.680 INFO    ] Checking for system updates...
[2026-10-25 09:34:18,716.716 INFO    ] 200
[2026-10-25 09:34:18,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:18,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:18,782.782 INFO    ] No update needed
[2026-10-25 09:34:18,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 09:34:18,818.818 INFO    ] 200
[2026-10-25 09:34:18,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:18,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:34:18,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:18,917.917 INFO    ] No camera update needed
[2026-10-25 09:34:18,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:34:18,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:34:18,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:34:18,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:34:20,976.976 INFO    ] ================================================
[2026-10-25 09:34:20,991.991 INFO    ] Launching Daemon at Sun Oct 25 09:34:20 IST 2026
[2026-10-25 09:34:21,002.002 INFO    ] ================================================
[2026-10-25 09:34:21,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:34:21
[2026-10-25 09:34:22,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:34:22,492.492 INFO    ] Initializing speech engine...
[2026-10-25 09:34:22,495.495 INFO    ] 2026-10-25 09:34:22
[2026-10-25 09:34:22,760.760 INFO    ] 2026-10-25 09:34:22
[2026-10-25 09:34:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:34:22,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:34:22,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:34:23,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:34:23,132.132 INFO    ] time= 25/10/2026 09:34:23
[2026-10-25 09:34:23,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:34:23,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:34:23,301.301 INFO    ] No existing commands found in stream
[2026-10-25 09:34:28,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:34:28,335.335 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 09:34:29,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:34:29,432.432 INFO    ] Checking for system updates...
[2026-10-25 09:34:29,472.472 INFO    ] 200
[2026-10-25 09:34:29,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:29,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:29,537.537 INFO    ] No update needed
[2026-10-25 09:34:29,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 09:34:29,573.573 INFO    ] 200
[2026-10-25 09:34:29,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:29,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:34:29,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:29,675.675 INFO    ] No camera update needed
[2026-10-25 09:34:29,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:34:29,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:34:29,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:34:29,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:34:31,732.732 INFO    ] ================================================
[2026-10-25 09:34:31,748.748 INFO    ] Launching Daemon at Sun Oct 25 09:34:31 IST 2026
[2026-10-25 09:34:31,758.758 INFO    ] ================================================
[2026-10-25 09:34:32,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:34:32
[2026-10-25 09:34:33,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:34:33,320.320 INFO    ] Initializing speech engine...
[2026-10-25 09:34:33,329.329 INFO    ] 2026-10-25 09:34:33
[2026-10-25 09:34:33,588.588 INFO    ] 2026-10-25 09:34:33
[2026-10-25 09:34:33,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:34:33,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:34:33,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:34:33,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:34:33,962.962 INFO    ] time= 25/10/2026 09:34:33
[2026-10-25 09:34:33,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:34:34,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:34:34,143.143 INFO    ] No existing commands found in stream
[2026-10-25 09:34:39,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:34:39,190.190 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 09:34:43,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:34:43,217.217 INFO    ] Checking for system updates...
[2026-10-25 09:34:43,258.258 INFO    ] 200
[2026-10-25 09:34:43,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:43,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:43,316.316 INFO    ] No update needed
[2026-10-25 09:34:43,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 09:34:43,356.356 INFO    ] 200
[2026-10-25 09:34:43,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:43,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:34:43,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:43,458.458 INFO    ] No camera update needed
[2026-10-25 09:34:43,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:34:43,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:34:43,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:34:43,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:34:45,515.515 INFO    ] ================================================
[2026-10-25 09:34:45,530.530 INFO    ] Launching Daemon at Sun Oct 25 09:34:45 IST 2026
[2026-10-25 09:34:45,541.541 INFO    ] ================================================
[2026-10-25 09:34:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:34:46
[2026-10-25 09:34:46,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:34:47,005.005 INFO    ] Initializing speech engine...
[2026-10-25 09:34:47,011.011 INFO    ] 2026-10-25 09:34:47
[2026-10-25 09:34:47,314.314 INFO    ] 2026-10-25 09:34:47
[2026-10-25 09:34:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:34:49,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:34:49,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:34:49,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:34:49,596.596 INFO    ] time= 25/10/2026 09:34:49
[2026-10-25 09:34:49,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:34:49,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:34:49,663.663 INFO    ] No existing commands found in stream
[2026-10-25 09:34:54,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:34:54,681.681 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 09:34:57,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:34:57,254.254 INFO    ] Checking for system updates...
[2026-10-25 09:34:57,291.291 INFO    ] 200
[2026-10-25 09:34:57,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:57,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:57,349.349 INFO    ] No update needed
[2026-10-25 09:34:57,352.352 INFO    ] Checking for camera pi updates...
[2026-10-25 09:34:57,389.389 INFO    ] 200
[2026-10-25 09:34:57,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:34:57,433.433 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:34:57,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:34:57,492.492 INFO    ] No camera update needed
[2026-10-25 09:34:57,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:34:57,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:34:57,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:34:57,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:34:59,548.548 INFO    ] ================================================
[2026-10-25 09:34:59,563.563 INFO    ] Launching Daemon at Sun Oct 25 09:34:59 IST 2026
[2026-10-25 09:34:59,573.573 INFO    ] ================================================
[2026-10-25 09:35:00,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:35:00
[2026-10-25 09:35:00,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:35:01,079.079 INFO    ] Initializing speech engine...
[2026-10-25 09:35:01,088.088 INFO    ] 2026-10-25 09:35:01
[2026-10-25 09:35:01,334.334 INFO    ] 2026-10-25 09:35:01
[2026-10-25 09:35:01,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:35:01,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:35:01,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:35:01,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:35:01,702.702 INFO    ] time= 25/10/2026 09:35:01
[2026-10-25 09:35:01,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:35:01,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:35:01,884.884 INFO    ] No existing commands found in stream
[2026-10-25 09:35:06,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:35:06,909.909 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 09:35:08,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:35:08,770.770 INFO    ] Checking for system updates...
[2026-10-25 09:35:08,810.810 INFO    ] 200
[2026-10-25 09:35:08,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:08,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:08,875.875 INFO    ] No update needed
[2026-10-25 09:35:08,877.877 INFO    ] Checking for camera pi updates...
[2026-10-25 09:35:08,914.914 INFO    ] 200
[2026-10-25 09:35:08,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:08,958.958 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:35:09,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:09,014.014 INFO    ] No camera update needed
[2026-10-25 09:35:09,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:35:09,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:35:09,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:35:09,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:35:11,070.070 INFO    ] ================================================
[2026-10-25 09:35:11,086.086 INFO    ] Launching Daemon at Sun Oct 25 09:35:11 IST 2026
[2026-10-25 09:35:11,097.097 INFO    ] ================================================
[2026-10-25 09:35:11,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:35:11
[2026-10-25 09:35:12,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:35:12,561.561 INFO    ] Initializing speech engine...
[2026-10-25 09:35:12,568.568 INFO    ] 2026-10-25 09:35:12
[2026-10-25 09:35:12,861.861 INFO    ] 2026-10-25 09:35:12
[2026-10-25 09:35:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:35:13,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:35:13,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:35:13,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:35:13,236.236 INFO    ] time= 25/10/2026 09:35:13
[2026-10-25 09:35:13,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:35:13,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:35:13,421.421 INFO    ] No existing commands found in stream
[2026-10-25 09:35:18,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:35:18,447.447 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 09:35:20,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:35:20,475.475 INFO    ] Checking for system updates...
[2026-10-25 09:35:20,515.515 INFO    ] 200
[2026-10-25 09:35:20,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:20,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:20,573.573 INFO    ] No update needed
[2026-10-25 09:35:20,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 09:35:20,610.610 INFO    ] 200
[2026-10-25 09:35:20,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:20,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:35:20,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:20,709.709 INFO    ] No camera update needed
[2026-10-25 09:35:20,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:35:20,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:35:20,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:35:20,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:35:22,767.767 INFO    ] ================================================
[2026-10-25 09:35:22,782.782 INFO    ] Launching Daemon at Sun Oct 25 09:35:22 IST 2026
[2026-10-25 09:35:22,794.794 INFO    ] ================================================
[2026-10-25 09:35:23,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:35:23
[2026-10-25 09:35:24,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:35:24,307.307 INFO    ] Initializing speech engine...
[2026-10-25 09:35:24,331.331 INFO    ] 2026-10-25 09:35:24
[2026-10-25 09:35:24,590.590 INFO    ] 2026-10-25 09:35:24
[2026-10-25 09:35:24,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:35:24,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:35:24,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:35:24,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:35:24,934.934 INFO    ] time= 25/10/2026 09:35:24
[2026-10-25 09:35:24,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:35:24,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:35:25,050.050 INFO    ] No existing commands found in stream
[2026-10-25 09:35:30,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:35:30,068.068 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 09:35:33,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:35:33,675.675 INFO    ] Checking for system updates...
[2026-10-25 09:35:33,716.716 INFO    ] 200
[2026-10-25 09:35:33,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:33,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:33,780.780 INFO    ] No update needed
[2026-10-25 09:35:33,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 09:35:33,817.817 INFO    ] 200
[2026-10-25 09:35:33,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:33,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:35:34,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:34,013.013 INFO    ] No camera update needed
[2026-10-25 09:35:34,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:35:34,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:35:34,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:35:34,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:35:36,072.072 INFO    ] ================================================
[2026-10-25 09:35:36,089.089 INFO    ] Launching Daemon at Sun Oct 25 09:35:36 IST 2026
[2026-10-25 09:35:36,102.102 INFO    ] ================================================
[2026-10-25 09:35:36,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:35:36
[2026-10-25 09:35:37,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:35:37,734.734 INFO    ] Initializing speech engine...
[2026-10-25 09:35:37,748.748 INFO    ] 2026-10-25 09:35:37
[2026-10-25 09:35:38,016.016 INFO    ] 2026-10-25 09:35:38
[2026-10-25 09:35:38,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:35:38,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:35:38,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:35:38,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:35:38,513.513 INFO    ] time= 25/10/2026 09:35:38
[2026-10-25 09:35:38,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:35:38,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:35:38,692.692 INFO    ] No existing commands found in stream
[2026-10-25 09:35:43,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:35:43,722.722 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 09:35:44,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:35:44,412.412 INFO    ] Checking for system updates...
[2026-10-25 09:35:44,455.455 INFO    ] 200
[2026-10-25 09:35:44,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:44,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:44,537.537 INFO    ] No update needed
[2026-10-25 09:35:44,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 09:35:44,575.575 INFO    ] 200
[2026-10-25 09:35:44,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:35:44,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:35:44,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:35:44,666.666 INFO    ] No camera update needed
[2026-10-25 09:35:44,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:35:44,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:35:44,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:35:44,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:35:46,724.724 INFO    ] ================================================
[2026-10-25 09:35:46,739.739 INFO    ] Launching Daemon at Sun Oct 25 09:35:46 IST 2026
[2026-10-25 09:35:46,750.750 INFO    ] ================================================
[2026-10-25 09:35:47,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:35:47
[2026-10-25 09:35:48,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:35:48,440.440 INFO    ] Initializing speech engine...
[2026-10-25 09:35:48,454.454 INFO    ] 2026-10-25 09:35:48
[2026-10-25 09:35:48,741.741 INFO    ] 2026-10-25 09:35:48
[2026-10-25 09:35:48,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:35:50,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:35:50,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:35:50,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:35:50,731.731 INFO    ] time= 25/10/2026 09:35:50
[2026-10-25 09:35:50,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:35:50,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:35:50,803.803 INFO    ] No existing commands found in stream
[2026-10-25 09:35:55,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:35:55,817.817 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 09:36:00,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:36:00,072.072 INFO    ] Checking for system updates...
[2026-10-25 09:36:00,108.108 INFO    ] 200
[2026-10-25 09:36:00,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:00,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:36:00,168.168 INFO    ] No update needed
[2026-10-25 09:36:00,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 09:36:00,204.204 INFO    ] 200
[2026-10-25 09:36:00,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:00,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:36:00,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:36:00,309.309 INFO    ] No camera update needed
[2026-10-25 09:36:00,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:36:00,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:36:00,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:36:00,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:36:02,377.377 INFO    ] ================================================
[2026-10-25 09:36:02,399.399 INFO    ] Launching Daemon at Sun Oct 25 09:36:02 IST 2026
[2026-10-25 09:36:02,421.421 INFO    ] ================================================
[2026-10-25 09:36:03,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:36:03
[2026-10-25 09:36:03,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:36:03,976.976 INFO    ] Initializing speech engine...
[2026-10-25 09:36:03,983.983 INFO    ] 2026-10-25 09:36:03
[2026-10-25 09:36:04,278.278 INFO    ] 2026-10-25 09:36:04
[2026-10-25 09:36:04,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:36:04,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:36:04,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:36:04,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:36:04,658.658 INFO    ] time= 25/10/2026 09:36:04
[2026-10-25 09:36:04,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:36:04,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:36:04,783.783 INFO    ] No existing commands found in stream
[2026-10-25 09:36:09,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:36:09,797.797 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 09:36:11,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:36:11,548.548 INFO    ] Checking for system updates...
[2026-10-25 09:36:11,591.591 INFO    ] 200
[2026-10-25 09:36:11,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:11,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:11,651.651 INFO    ] No update needed
[2026-10-25 09:36:11,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 09:36:11,689.689 INFO    ] 200
[2026-10-25 09:36:11,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:11,738.738 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:36:11,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:11,796.796 INFO    ] No camera update needed
[2026-10-25 09:36:11,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:36:11,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:36:11,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:36:11,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:36:13,854.854 INFO    ] ================================================
[2026-10-25 09:36:13,871.871 INFO    ] Launching Daemon at Sun Oct 25 09:36:13 IST 2026
[2026-10-25 09:36:13,882.882 INFO    ] ================================================
[2026-10-25 09:36:14,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:36:14
[2026-10-25 09:36:15,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:36:15,332.332 INFO    ] Initializing speech engine...
[2026-10-25 09:36:15,341.341 INFO    ] 2026-10-25 09:36:15
[2026-10-25 09:36:15,587.587 INFO    ] 2026-10-25 09:36:15
[2026-10-25 09:36:15,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:36:15,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:36:15,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:36:16,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:36:16,036.036 INFO    ] time= 25/10/2026 09:36:16
[2026-10-25 09:36:16,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:36:16,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:36:16,162.162 INFO    ] No existing commands found in stream
[2026-10-25 09:36:21,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:36:21,177.177 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 09:36:21,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:36:21,791.791 INFO    ] Checking for system updates...
[2026-10-25 09:36:21,827.827 INFO    ] 200
[2026-10-25 09:36:21,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:21,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:36:21,885.885 INFO    ] No update needed
[2026-10-25 09:36:21,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 09:36:21,929.929 INFO    ] 200
[2026-10-25 09:36:21,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:21,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:36:22,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:36:22,041.041 INFO    ] No camera update needed
[2026-10-25 09:36:22,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:36:22,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:36:22,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:36:22,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:36:24,103.103 INFO    ] ================================================
[2026-10-25 09:36:24,118.118 INFO    ] Launching Daemon at Sun Oct 25 09:36:24 IST 2026
[2026-10-25 09:36:24,130.130 INFO    ] ================================================
[2026-10-25 09:36:24,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:36:24
[2026-10-25 09:36:25,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:36:25,592.592 INFO    ] Initializing speech engine...
[2026-10-25 09:36:25,613.613 INFO    ] 2026-10-25 09:36:25
[2026-10-25 09:36:25,884.884 INFO    ] 2026-10-25 09:36:25
[2026-10-25 09:36:25,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:36:26,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:36:26,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:36:26,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:36:26,343.343 INFO    ] time= 25/10/2026 09:36:26
[2026-10-25 09:36:26,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:36:26,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:36:26,490.490 INFO    ] No existing commands found in stream
[2026-10-25 09:36:31,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:36:31,505.505 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 09:36:34,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:36:34,663.663 INFO    ] Checking for system updates...
[2026-10-25 09:36:34,699.699 INFO    ] 200
[2026-10-25 09:36:34,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:34,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:34,771.771 INFO    ] No update needed
[2026-10-25 09:36:34,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 09:36:34,812.812 INFO    ] 200
[2026-10-25 09:36:34,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:34,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:36:34,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:34,919.919 INFO    ] No camera update needed
[2026-10-25 09:36:34,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:36:34,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:36:34,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:36:34,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:36:36,973.973 INFO    ] ================================================
[2026-10-25 09:36:36,988.988 INFO    ] Launching Daemon at Sun Oct 25 09:36:36 IST 2026
[2026-10-25 09:36:37,999.999 INFO    ] ================================================
[2026-10-25 09:36:37,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:36:37
[2026-10-25 09:36:38,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:36:38,609.609 INFO    ] Initializing speech engine...
[2026-10-25 09:36:38,621.621 INFO    ] 2026-10-25 09:36:38
[2026-10-25 09:36:38,906.906 INFO    ] 2026-10-25 09:36:38
[2026-10-25 09:36:38,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:36:39,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:36:39,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:36:39,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:36:39,370.370 INFO    ] time= 25/10/2026 09:36:39
[2026-10-25 09:36:39,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:36:39,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:36:39,573.573 INFO    ] No existing commands found in stream
[2026-10-25 09:36:44,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:36:44,587.587 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 09:36:46,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:36:46,492.492 INFO    ] Checking for system updates...
[2026-10-25 09:36:46,532.532 INFO    ] 200
[2026-10-25 09:36:46,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:46,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:46,589.589 INFO    ] No update needed
[2026-10-25 09:36:46,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 09:36:46,626.626 INFO    ] 200
[2026-10-25 09:36:46,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:36:46,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:36:46,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:36:46,723.723 INFO    ] No camera update needed
[2026-10-25 09:36:46,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:36:46,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:36:46,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:36:46,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:36:48,782.782 INFO    ] ================================================
[2026-10-25 09:36:48,797.797 INFO    ] Launching Daemon at Sun Oct 25 09:36:48 IST 2026
[2026-10-25 09:36:48,812.812 INFO    ] ================================================
[2026-10-25 09:36:49,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:36:49
[2026-10-25 09:36:50,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:36:50,304.304 INFO    ] Initializing speech engine...
[2026-10-25 09:36:50,310.310 INFO    ] 2026-10-25 09:36:50
[2026-10-25 09:36:50,589.589 INFO    ] 2026-10-25 09:36:50
[2026-10-25 09:36:50,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:36:51,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:36:51,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:36:51,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:36:51,730.730 INFO    ] time= 25/10/2026 09:36:51
[2026-10-25 09:36:51,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:36:51,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:36:51,835.835 INFO    ] No existing commands found in stream
[2026-10-25 09:36:56,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:36:56,849.849 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 09:37:00,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:37:00,538.538 INFO    ] Checking for system updates...
[2026-10-25 09:37:00,576.576 INFO    ] 200
[2026-10-25 09:37:00,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:00,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:37:00,635.635 INFO    ] No update needed
[2026-10-25 09:37:00,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 09:37:00,676.676 INFO    ] 200
[2026-10-25 09:37:00,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:00,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:37:00,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:37:00,774.774 INFO    ] No camera update needed
[2026-10-25 09:37:00,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:37:00,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:37:00,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:37:00,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:37:02,841.841 INFO    ] ================================================
[2026-10-25 09:37:02,859.859 INFO    ] Launching Daemon at Sun Oct 25 09:37:02 IST 2026
[2026-10-25 09:37:02,872.872 INFO    ] ================================================
[2026-10-25 09:37:03,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:37:03
[2026-10-25 09:37:04,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:37:04,352.352 INFO    ] Initializing speech engine...
[2026-10-25 09:37:04,359.359 INFO    ] 2026-10-25 09:37:04
[2026-10-25 09:37:04,656.656 INFO    ] 2026-10-25 09:37:04
[2026-10-25 09:37:04,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:37:04,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:37:04,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:37:05,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:37:05,053.053 INFO    ] time= 25/10/2026 09:37:05
[2026-10-25 09:37:05,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:37:05,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:37:05,239.239 INFO    ] No existing commands found in stream
[2026-10-25 09:37:10,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:37:10,267.267 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 09:37:13,135.135 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:37:13,138.138 INFO    ] Checking for system updates...
[2026-10-25 09:37:13,177.177 INFO    ] 200
[2026-10-25 09:37:13,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:13,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:13,242.242 INFO    ] No update needed
[2026-10-25 09:37:13,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 09:37:13,279.279 INFO    ] 200
[2026-10-25 09:37:13,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:13,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:37:13,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:13,372.372 INFO    ] No camera update needed
[2026-10-25 09:37:13,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:37:13,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:37:13,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:37:13,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:37:15,428.428 INFO    ] ================================================
[2026-10-25 09:37:15,445.445 INFO    ] Launching Daemon at Sun Oct 25 09:37:15 IST 2026
[2026-10-25 09:37:15,456.456 INFO    ] ================================================
[2026-10-25 09:37:16,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:37:16
[2026-10-25 09:37:16,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:37:16,901.901 INFO    ] Initializing speech engine...
[2026-10-25 09:37:16,927.927 INFO    ] 2026-10-25 09:37:16
[2026-10-25 09:37:17,204.204 INFO    ] 2026-10-25 09:37:17
[2026-10-25 09:37:17,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:37:17,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:37:17,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:37:17,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:37:17,597.597 INFO    ] time= 25/10/2026 09:37:17
[2026-10-25 09:37:17,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:37:17,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:37:17,765.765 INFO    ] No existing commands found in stream
[2026-10-25 09:37:22,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:37:22,798.798 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 09:37:25,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:37:25,581.581 INFO    ] Checking for system updates...
[2026-10-25 09:37:25,617.617 INFO    ] 200
[2026-10-25 09:37:25,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:25,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:37:25,677.677 INFO    ] No update needed
[2026-10-25 09:37:25,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 09:37:25,718.718 INFO    ] 200
[2026-10-25 09:37:25,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:25,762.762 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:37:25,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:37:25,824.824 INFO    ] No camera update needed
[2026-10-25 09:37:25,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:37:25,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:37:25,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:37:25,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:37:27,882.882 INFO    ] ================================================
[2026-10-25 09:37:27,900.900 INFO    ] Launching Daemon at Sun Oct 25 09:37:27 IST 2026
[2026-10-25 09:37:27,914.914 INFO    ] ================================================
[2026-10-25 09:37:28,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:37:28
[2026-10-25 09:37:29,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:37:29,470.470 INFO    ] Initializing speech engine...
[2026-10-25 09:37:29,484.484 INFO    ] 2026-10-25 09:37:29
[2026-10-25 09:37:29,771.771 INFO    ] 2026-10-25 09:37:29
[2026-10-25 09:37:29,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:37:30,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:37:30,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:37:30,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:37:30,167.167 INFO    ] time= 25/10/2026 09:37:30
[2026-10-25 09:37:30,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:37:30,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:37:30,323.323 INFO    ] No existing commands found in stream
[2026-10-25 09:37:35,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:37:35,351.351 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 09:37:36,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:37:36,483.483 INFO    ] Checking for system updates...
[2026-10-25 09:37:36,523.523 INFO    ] 200
[2026-10-25 09:37:36,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:36,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:36,589.589 INFO    ] No update needed
[2026-10-25 09:37:36,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 09:37:36,625.625 INFO    ] 200
[2026-10-25 09:37:36,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:36,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:37:36,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:36,831.831 INFO    ] No camera update needed
[2026-10-25 09:37:36,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:37:36,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:37:36,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:37:36,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:37:38,887.887 INFO    ] ================================================
[2026-10-25 09:37:38,902.902 INFO    ] Launching Daemon at Sun Oct 25 09:37:38 IST 2026
[2026-10-25 09:37:38,913.913 INFO    ] ================================================
[2026-10-25 09:37:39,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:37:39
[2026-10-25 09:37:40,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:37:40,500.500 INFO    ] Initializing speech engine...
[2026-10-25 09:37:40,508.508 INFO    ] 2026-10-25 09:37:40
[2026-10-25 09:37:40,775.775 INFO    ] 2026-10-25 09:37:40
[2026-10-25 09:37:40,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:37:41,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:37:41,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:37:41,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:37:41,225.225 INFO    ] time= 25/10/2026 09:37:41
[2026-10-25 09:37:41,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:37:41,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:37:41,372.372 INFO    ] No existing commands found in stream
[2026-10-25 09:37:46,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:37:46,407.407 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 09:37:48,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:37:48,083.083 INFO    ] Checking for system updates...
[2026-10-25 09:37:48,119.119 INFO    ] 200
[2026-10-25 09:37:48,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:48,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:48,184.184 INFO    ] No update needed
[2026-10-25 09:37:48,186.186 INFO    ] Checking for camera pi updates...
[2026-10-25 09:37:48,219.219 INFO    ] 200
[2026-10-25 09:37:48,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:37:48,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:37:48,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:37:48,312.312 INFO    ] No camera update needed
[2026-10-25 09:37:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:37:48,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:37:48,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:37:48,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:37:50,368.368 INFO    ] ================================================
[2026-10-25 09:37:50,383.383 INFO    ] Launching Daemon at Sun Oct 25 09:37:50 IST 2026
[2026-10-25 09:37:50,394.394 INFO    ] ================================================
[2026-10-25 09:37:50,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:37:50
[2026-10-25 09:37:51,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:37:51,893.893 INFO    ] Initializing speech engine...
[2026-10-25 09:37:51,906.906 INFO    ] 2026-10-25 09:37:51
[2026-10-25 09:37:52,177.177 INFO    ] 2026-10-25 09:37:52
[2026-10-25 09:37:52,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:37:52,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:37:52,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:37:52,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:37:52,728.728 INFO    ] time= 25/10/2026 09:37:52
[2026-10-25 09:37:52,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:37:52,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:37:52,912.912 INFO    ] No existing commands found in stream
[2026-10-25 09:37:57,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:37:57,947.947 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 09:38:01,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:38:01,468.468 INFO    ] Checking for system updates...
[2026-10-25 09:38:01,547.547 INFO    ] 200
[2026-10-25 09:38:01,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:01,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:01,650.650 INFO    ] No update needed
[2026-10-25 09:38:01,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 09:38:01,743.743 INFO    ] 200
[2026-10-25 09:38:01,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:01,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:38:01,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:01,885.885 INFO    ] No camera update needed
[2026-10-25 09:38:01,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:38:01,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:38:01,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:38:01,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:38:03,966.966 INFO    ] ================================================
[2026-10-25 09:38:03,983.983 INFO    ] Launching Daemon at Sun Oct 25 09:38:03 IST 2026
[2026-10-25 09:38:04,995.995 INFO    ] ================================================
[2026-10-25 09:38:04,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:38:04
[2026-10-25 09:38:05,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:38:05,478.478 INFO    ] Initializing speech engine...
[2026-10-25 09:38:05,485.485 INFO    ] 2026-10-25 09:38:05
[2026-10-25 09:38:05,757.757 INFO    ] 2026-10-25 09:38:05
[2026-10-25 09:38:05,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:38:06,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:38:06,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:38:06,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:38:06,284.284 INFO    ] time= 25/10/2026 09:38:06
[2026-10-25 09:38:06,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:38:06,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:38:06,419.419 INFO    ] No existing commands found in stream
[2026-10-25 09:38:11,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:38:11,447.447 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 09:38:11,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:38:11,985.985 INFO    ] Checking for system updates...
[2026-10-25 09:38:12,026.026 INFO    ] 200
[2026-10-25 09:38:12,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:12,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:12,090.090 INFO    ] No update needed
[2026-10-25 09:38:12,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 09:38:12,129.129 INFO    ] 200
[2026-10-25 09:38:12,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:12,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:38:12,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:12,231.231 INFO    ] No camera update needed
[2026-10-25 09:38:12,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:38:12,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:38:12,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:38:12,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:38:14,292.292 INFO    ] ================================================
[2026-10-25 09:38:14,307.307 INFO    ] Launching Daemon at Sun Oct 25 09:38:14 IST 2026
[2026-10-25 09:38:14,318.318 INFO    ] ================================================
[2026-10-25 09:38:14,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:38:14
[2026-10-25 09:38:15,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:38:15,822.822 INFO    ] Initializing speech engine...
[2026-10-25 09:38:15,829.829 INFO    ] 2026-10-25 09:38:15
[2026-10-25 09:38:16,149.149 INFO    ] 2026-10-25 09:38:16
[2026-10-25 09:38:16,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:38:16,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:38:16,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:38:16,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:38:16,569.569 INFO    ] time= 25/10/2026 09:38:16
[2026-10-25 09:38:16,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:38:16,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:38:16,741.741 INFO    ] No existing commands found in stream
[2026-10-25 09:38:21,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:38:21,757.757 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 09:38:24,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:38:24,684.684 INFO    ] Checking for system updates...
[2026-10-25 09:38:24,722.722 INFO    ] 200
[2026-10-25 09:38:24,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:24,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:38:24,782.782 INFO    ] No update needed
[2026-10-25 09:38:24,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 09:38:24,818.818 INFO    ] 200
[2026-10-25 09:38:24,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:24,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:38:24,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:38:24,928.928 INFO    ] No camera update needed
[2026-10-25 09:38:24,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:38:24,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:38:24,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:38:24,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:38:26,984.984 INFO    ] ================================================
[2026-10-25 09:38:27,001.001 INFO    ] Launching Daemon at Sun Oct 25 09:38:26 IST 2026
[2026-10-25 09:38:27,012.012 INFO    ] ================================================
[2026-10-25 09:38:27,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:38:27
[2026-10-25 09:38:28,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:38:28,487.487 INFO    ] Initializing speech engine...
[2026-10-25 09:38:28,495.495 INFO    ] 2026-10-25 09:38:28
[2026-10-25 09:38:28,750.750 INFO    ] 2026-10-25 09:38:28
[2026-10-25 09:38:28,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:38:29,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:38:29,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:38:29,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:38:29,247.247 INFO    ] time= 25/10/2026 09:38:29
[2026-10-25 09:38:29,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:38:29,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:38:29,419.419 INFO    ] No existing commands found in stream
[2026-10-25 09:38:34,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:38:34,452.452 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 09:38:37,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:38:37,344.344 INFO    ] Checking for system updates...
[2026-10-25 09:38:37,380.380 INFO    ] 200
[2026-10-25 09:38:37,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:37,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:37,447.447 INFO    ] No update needed
[2026-10-25 09:38:37,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 09:38:37,484.484 INFO    ] 200
[2026-10-25 09:38:37,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:38:37,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:38:37,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:38:37,663.663 INFO    ] No camera update needed
[2026-10-25 09:38:37,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:38:37,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:38:37,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:38:37,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:38:39,718.718 INFO    ] ================================================
[2026-10-25 09:38:39,734.734 INFO    ] Launching Daemon at Sun Oct 25 09:38:39 IST 2026
[2026-10-25 09:38:39,745.745 INFO    ] ================================================
[2026-10-25 09:38:40,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:38:40
[2026-10-25 09:38:40,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:38:41,164.164 INFO    ] Initializing speech engine...
[2026-10-25 09:38:41,174.174 INFO    ] 2026-10-25 09:38:41
[2026-10-25 09:38:41,426.426 INFO    ] 2026-10-25 09:38:41
[2026-10-25 09:38:41,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:38:41,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:38:41,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:38:41,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:38:41,803.803 INFO    ] time= 25/10/2026 09:38:41
[2026-10-25 09:38:41,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:38:41,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:38:41,962.962 INFO    ] No existing commands found in stream
[2026-10-25 09:38:46,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:38:46,995.995 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 09:38:48,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:38:48,598.598 INFO    ] Checking for system updates...
[2026-10-25 09:38:48,649.649 INFO    ] 200
[2026-10-25 09:38:48,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 09:38:48,654.654 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 09:38:48,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 09:38:48,701.701 INFO    ] 200
[2026-10-25 09:38:48,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 09:38:48,706.706 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 09:38:48,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:38:48,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:38:48,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:38:48,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:38:50,767.767 INFO    ] ================================================
[2026-10-25 09:38:50,781.781 INFO    ] Launching Daemon at Sun Oct 25 09:38:50 IST 2026
[2026-10-25 09:38:50,793.793 INFO    ] ================================================
[2026-10-25 09:38:51,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:38:51
[2026-10-25 09:38:51,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:38:52,249.249 INFO    ] Initializing speech engine...
[2026-10-25 09:38:52,256.256 INFO    ] 2026-10-25 09:38:52
[2026-10-25 09:38:52,510.510 INFO    ] 2026-10-25 09:38:52
[2026-10-25 09:38:52,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:38:53,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:38:53,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:38:53,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:38:53,856.856 INFO    ] time= 25/10/2026 09:38:53
[2026-10-25 09:38:53,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:38:53,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:38:53,927.927 INFO    ] No existing commands found in stream
[2026-10-25 09:38:58,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:38:58,942.942 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 09:39:01,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:39:01,374.374 INFO    ] Checking for system updates...
[2026-10-25 09:39:01,411.411 INFO    ] 200
[2026-10-25 09:39:01,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:01,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:01,469.469 INFO    ] No update needed
[2026-10-25 09:39:01,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 09:39:01,539.539 INFO    ] 200
[2026-10-25 09:39:01,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:01,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:39:01,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:01,723.723 INFO    ] No camera update needed
[2026-10-25 09:39:01,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:39:01,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:39:01,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:39:01,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:39:03,806.806 INFO    ] ================================================
[2026-10-25 09:39:03,821.821 INFO    ] Launching Daemon at Sun Oct 25 09:39:03 IST 2026
[2026-10-25 09:39:03,832.832 INFO    ] ================================================
[2026-10-25 09:39:04,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:39:04
[2026-10-25 09:39:05,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:39:05,320.320 INFO    ] Initializing speech engine...
[2026-10-25 09:39:05,330.330 INFO    ] 2026-10-25 09:39:05
[2026-10-25 09:39:05,600.600 INFO    ] 2026-10-25 09:39:05
[2026-10-25 09:39:05,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:39:05,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:39:05,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:39:06,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:39:06,058.058 INFO    ] time= 25/10/2026 09:39:06
[2026-10-25 09:39:06,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:39:06,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:39:06,208.208 INFO    ] No existing commands found in stream
[2026-10-25 09:39:11,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:39:11,236.236 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 09:39:12,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:39:12,474.474 INFO    ] Checking for system updates...
[2026-10-25 09:39:12,515.515 INFO    ] 200
[2026-10-25 09:39:12,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:12,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:39:12,581.581 INFO    ] No update needed
[2026-10-25 09:39:12,584.584 INFO    ] Checking for camera pi updates...
[2026-10-25 09:39:12,622.622 INFO    ] 200
[2026-10-25 09:39:12,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:12,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:39:12,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:39:12,719.719 INFO    ] No camera update needed
[2026-10-25 09:39:12,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:39:12,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:39:12,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:39:12,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:39:14,774.774 INFO    ] ================================================
[2026-10-25 09:39:14,789.789 INFO    ] Launching Daemon at Sun Oct 25 09:39:14 IST 2026
[2026-10-25 09:39:14,800.800 INFO    ] ================================================
[2026-10-25 09:39:15,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:39:15
[2026-10-25 09:39:15,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:39:16,257.257 INFO    ] Initializing speech engine...
[2026-10-25 09:39:16,275.275 INFO    ] 2026-10-25 09:39:16
[2026-10-25 09:39:16,523.523 INFO    ] 2026-10-25 09:39:16
[2026-10-25 09:39:16,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:39:16,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:39:16,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:39:16,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:39:16,899.899 INFO    ] time= 25/10/2026 09:39:16
[2026-10-25 09:39:16,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:39:16,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:39:16,970.970 INFO    ] No existing commands found in stream
[2026-10-25 09:39:21,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:39:21,995.995 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 09:39:24,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:39:24,606.606 INFO    ] Checking for system updates...
[2026-10-25 09:39:24,647.647 INFO    ] 200
[2026-10-25 09:39:24,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:24,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:39:24,712.712 INFO    ] No update needed
[2026-10-25 09:39:24,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 09:39:24,748.748 INFO    ] 200
[2026-10-25 09:39:24,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:24,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:39:24,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:39:24,841.841 INFO    ] No camera update needed
[2026-10-25 09:39:24,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:39:24,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:39:24,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:39:24,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:39:26,897.897 INFO    ] ================================================
[2026-10-25 09:39:26,916.916 INFO    ] Launching Daemon at Sun Oct 25 09:39:26 IST 2026
[2026-10-25 09:39:26,927.927 INFO    ] ================================================
[2026-10-25 09:39:27,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:39:27
[2026-10-25 09:39:28,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:39:28,368.368 INFO    ] Initializing speech engine...
[2026-10-25 09:39:28,378.378 INFO    ] 2026-10-25 09:39:28
[2026-10-25 09:39:28,653.653 INFO    ] 2026-10-25 09:39:28
[2026-10-25 09:39:28,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:39:28,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:39:28,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:39:29,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:39:29,035.035 INFO    ] time= 25/10/2026 09:39:29
[2026-10-25 09:39:29,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:39:29,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:39:29,162.162 INFO    ] No existing commands found in stream
[2026-10-25 09:39:34,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:39:34,177.177 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 09:39:34,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:39:34,873.873 INFO    ] Checking for system updates...
[2026-10-25 09:39:34,909.909 INFO    ] 200
[2026-10-25 09:39:34,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:34,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:34,973.973 INFO    ] No update needed
[2026-10-25 09:39:34,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 09:39:35,013.013 INFO    ] 200
[2026-10-25 09:39:35,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:35,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:39:35,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:35,118.118 INFO    ] No camera update needed
[2026-10-25 09:39:35,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:39:35,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:39:35,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:39:35,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:39:37,172.172 INFO    ] ================================================
[2026-10-25 09:39:37,187.187 INFO    ] Launching Daemon at Sun Oct 25 09:39:37 IST 2026
[2026-10-25 09:39:37,198.198 INFO    ] ================================================
[2026-10-25 09:39:37,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:39:37
[2026-10-25 09:39:38,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:39:38,667.667 INFO    ] Initializing speech engine...
[2026-10-25 09:39:38,676.676 INFO    ] 2026-10-25 09:39:38
[2026-10-25 09:39:38,936.936 INFO    ] 2026-10-25 09:39:38
[2026-10-25 09:39:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:39:39,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:39:39,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:39:39,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:39:39,444.444 INFO    ] time= 25/10/2026 09:39:39
[2026-10-25 09:39:39,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:39:39,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:39:39,566.566 INFO    ] No existing commands found in stream
[2026-10-25 09:39:44,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:39:44,581.581 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 09:39:48,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:39:48,798.798 INFO    ] Checking for system updates...
[2026-10-25 09:39:48,839.839 INFO    ] 200
[2026-10-25 09:39:48,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:48,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:48,904.904 INFO    ] No update needed
[2026-10-25 09:39:48,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 09:39:48,941.941 INFO    ] 200
[2026-10-25 09:39:48,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:39:48,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:39:49,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:39:49,138.138 INFO    ] No camera update needed
[2026-10-25 09:39:49,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:39:49,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:39:49,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:39:49,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:39:51,195.195 INFO    ] ================================================
[2026-10-25 09:39:51,211.211 INFO    ] Launching Daemon at Sun Oct 25 09:39:51 IST 2026
[2026-10-25 09:39:51,222.222 INFO    ] ================================================
[2026-10-25 09:39:51,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:39:51
[2026-10-25 09:39:52,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:39:52,853.853 INFO    ] Initializing speech engine...
[2026-10-25 09:39:52,861.861 INFO    ] 2026-10-25 09:39:52
[2026-10-25 09:39:53,146.146 INFO    ] 2026-10-25 09:39:53
[2026-10-25 09:39:53,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:39:54,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:39:54,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:39:55,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:39:55,014.014 INFO    ] time= 25/10/2026 09:39:55
[2026-10-25 09:39:55,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:39:55,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:39:55,077.077 INFO    ] No existing commands found in stream
[2026-10-25 09:40:00,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:40:00,092.092 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 09:40:01,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:40:01,125.125 INFO    ] Checking for system updates...
[2026-10-25 09:40:01,165.165 INFO    ] 200
[2026-10-25 09:40:01,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:01,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:01,231.231 INFO    ] No update needed
[2026-10-25 09:40:01,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 09:40:01,273.273 INFO    ] 200
[2026-10-25 09:40:01,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:01,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:40:01,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:01,384.384 INFO    ] No camera update needed
[2026-10-25 09:40:01,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:40:01,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:40:01,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:40:01,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:40:03,456.456 INFO    ] ================================================
[2026-10-25 09:40:03,474.474 INFO    ] Launching Daemon at Sun Oct 25 09:40:03 IST 2026
[2026-10-25 09:40:03,489.489 INFO    ] ================================================
[2026-10-25 09:40:04,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:40:04
[2026-10-25 09:40:04,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:40:04,935.935 INFO    ] Initializing speech engine...
[2026-10-25 09:40:04,944.944 INFO    ] 2026-10-25 09:40:04
[2026-10-25 09:40:05,221.221 INFO    ] 2026-10-25 09:40:05
[2026-10-25 09:40:05,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:40:05,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:40:05,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:40:05,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:40:05,592.592 INFO    ] time= 25/10/2026 09:40:05
[2026-10-25 09:40:05,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:40:05,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:40:05,710.710 INFO    ] No existing commands found in stream
[2026-10-25 09:40:10,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:40:10,731.731 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 09:40:13,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:40:13,035.035 INFO    ] Checking for system updates...
[2026-10-25 09:40:13,075.075 INFO    ] 200
[2026-10-25 09:40:13,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:13,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:13,141.141 INFO    ] No update needed
[2026-10-25 09:40:13,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 09:40:13,181.181 INFO    ] 200
[2026-10-25 09:40:13,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:13,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:40:13,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:13,282.282 INFO    ] No camera update needed
[2026-10-25 09:40:13,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:40:13,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:40:13,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:40:13,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:40:15,337.337 INFO    ] ================================================
[2026-10-25 09:40:15,353.353 INFO    ] Launching Daemon at Sun Oct 25 09:40:15 IST 2026
[2026-10-25 09:40:15,364.364 INFO    ] ================================================
[2026-10-25 09:40:15,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:40:15
[2026-10-25 09:40:16,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:40:16,770.770 INFO    ] Initializing speech engine...
[2026-10-25 09:40:16,793.793 INFO    ] 2026-10-25 09:40:16
[2026-10-25 09:40:17,048.048 INFO    ] 2026-10-25 09:40:17
[2026-10-25 09:40:17,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:40:17,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:40:17,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:40:17,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:40:17,520.520 INFO    ] time= 25/10/2026 09:40:17
[2026-10-25 09:40:17,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:40:17,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:40:17,708.708 INFO    ] No existing commands found in stream
[2026-10-25 09:40:22,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:40:22,722.722 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 09:40:25,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:40:25,989.989 INFO    ] Checking for system updates...
[2026-10-25 09:40:26,029.029 INFO    ] 200
[2026-10-25 09:40:26,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:26,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:40:26,087.087 INFO    ] No update needed
[2026-10-25 09:40:26,089.089 INFO    ] Checking for camera pi updates...
[2026-10-25 09:40:26,127.127 INFO    ] 200
[2026-10-25 09:40:26,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:26,176.176 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:40:26,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:40:26,232.232 INFO    ] No camera update needed
[2026-10-25 09:40:26,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:40:26,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:40:26,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:40:26,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:40:28,293.293 INFO    ] ================================================
[2026-10-25 09:40:28,308.308 INFO    ] Launching Daemon at Sun Oct 25 09:40:28 IST 2026
[2026-10-25 09:40:28,319.319 INFO    ] ================================================
[2026-10-25 09:40:28,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:40:28
[2026-10-25 09:40:29,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:40:29,960.960 INFO    ] Initializing speech engine...
[2026-10-25 09:40:29,967.967 INFO    ] 2026-10-25 09:40:29
[2026-10-25 09:40:30,255.255 INFO    ] 2026-10-25 09:40:30
[2026-10-25 09:40:30,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:40:30,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:40:30,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:40:30,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:40:30,735.735 INFO    ] time= 25/10/2026 09:40:30
[2026-10-25 09:40:30,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:40:30,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:40:30,859.859 INFO    ] No existing commands found in stream
[2026-10-25 09:40:35,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:40:35,895.895 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 09:40:39,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:40:39,720.720 INFO    ] Checking for system updates...
[2026-10-25 09:40:39,764.764 INFO    ] 200
[2026-10-25 09:40:39,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:39,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:39,831.831 INFO    ] No update needed
[2026-10-25 09:40:39,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 09:40:39,874.874 INFO    ] 200
[2026-10-25 09:40:39,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:39,918.918 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:40:39,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:39,978.978 INFO    ] No camera update needed
[2026-10-25 09:40:39,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:40:39,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:40:39,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:40:39,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:40:42,036.036 INFO    ] ================================================
[2026-10-25 09:40:42,051.051 INFO    ] Launching Daemon at Sun Oct 25 09:40:42 IST 2026
[2026-10-25 09:40:42,062.062 INFO    ] ================================================
[2026-10-25 09:40:42,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:40:42
[2026-10-25 09:40:43,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:40:43,555.555 INFO    ] Initializing speech engine...
[2026-10-25 09:40:43,563.563 INFO    ] 2026-10-25 09:40:43
[2026-10-25 09:40:43,833.833 INFO    ] 2026-10-25 09:40:43
[2026-10-25 09:40:43,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:40:44,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:40:44,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:40:44,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:40:44,282.282 INFO    ] time= 25/10/2026 09:40:44
[2026-10-25 09:40:44,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:40:44,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:40:44,426.426 INFO    ] No existing commands found in stream
[2026-10-25 09:40:49,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:40:49,441.441 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 09:40:51,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:40:51,413.413 INFO    ] Checking for system updates...
[2026-10-25 09:40:51,463.463 INFO    ] 200
[2026-10-25 09:40:51,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:51,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:51,527.527 INFO    ] No update needed
[2026-10-25 09:40:51,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 09:40:51,568.568 INFO    ] 200
[2026-10-25 09:40:51,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:40:51,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:40:51,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:40:51,673.673 INFO    ] No camera update needed
[2026-10-25 09:40:51,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:40:51,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:40:51,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:40:51,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:40:53,730.730 INFO    ] ================================================
[2026-10-25 09:40:53,745.745 INFO    ] Launching Daemon at Sun Oct 25 09:40:53 IST 2026
[2026-10-25 09:40:53,756.756 INFO    ] ================================================
[2026-10-25 09:40:54,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:40:54
[2026-10-25 09:40:54,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:40:55,158.158 INFO    ] Initializing speech engine...
[2026-10-25 09:40:55,170.170 INFO    ] 2026-10-25 09:40:55
[2026-10-25 09:40:55,431.431 INFO    ] 2026-10-25 09:40:55
[2026-10-25 09:40:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:40:56,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:40:56,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:40:56,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:40:56,410.410 INFO    ] time= 25/10/2026 09:40:56
[2026-10-25 09:40:56,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:40:56,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:40:56,538.538 INFO    ] No existing commands found in stream
[2026-10-25 09:41:01,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:41:01,553.553 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 09:41:04,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:41:04,586.586 INFO    ] Checking for system updates...
[2026-10-25 09:41:04,626.626 INFO    ] 200
[2026-10-25 09:41:04,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:04,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:41:04,691.691 INFO    ] No update needed
[2026-10-25 09:41:04,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 09:41:04,731.731 INFO    ] 200
[2026-10-25 09:41:04,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:04,786.786 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:41:04,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:41:04,838.838 INFO    ] No camera update needed
[2026-10-25 09:41:04,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:41:04,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:41:04,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:41:04,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:41:06,893.893 INFO    ] ================================================
[2026-10-25 09:41:06,909.909 INFO    ] Launching Daemon at Sun Oct 25 09:41:06 IST 2026
[2026-10-25 09:41:06,920.920 INFO    ] ================================================
[2026-10-25 09:41:07,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:41:07
[2026-10-25 09:41:08,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:41:08,345.345 INFO    ] Initializing speech engine...
[2026-10-25 09:41:08,350.350 INFO    ] 2026-10-25 09:41:08
[2026-10-25 09:41:08,601.601 INFO    ] 2026-10-25 09:41:08
[2026-10-25 09:41:08,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:41:08,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:41:08,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:41:08,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:41:08,979.979 INFO    ] time= 25/10/2026 09:41:08
[2026-10-25 09:41:08,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:41:09,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:41:09,154.154 INFO    ] No existing commands found in stream
[2026-10-25 09:41:14,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:41:14,192.192 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 09:41:14,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:41:14,731.731 INFO    ] Checking for system updates...
[2026-10-25 09:41:14,768.768 INFO    ] 200
[2026-10-25 09:41:14,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:14,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:14,835.835 INFO    ] No update needed
[2026-10-25 09:41:14,837.837 INFO    ] Checking for camera pi updates...
[2026-10-25 09:41:14,874.874 INFO    ] 200
[2026-10-25 09:41:14,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:14,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:41:14,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:14,987.987 INFO    ] No camera update needed
[2026-10-25 09:41:14,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:41:14,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:41:14,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:41:15,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:41:17,044.044 INFO    ] ================================================
[2026-10-25 09:41:17,061.061 INFO    ] Launching Daemon at Sun Oct 25 09:41:17 IST 2026
[2026-10-25 09:41:17,072.072 INFO    ] ================================================
[2026-10-25 09:41:17,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:41:17
[2026-10-25 09:41:18,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:41:18,566.566 INFO    ] Initializing speech engine...
[2026-10-25 09:41:18,575.575 INFO    ] 2026-10-25 09:41:18
[2026-10-25 09:41:18,834.834 INFO    ] 2026-10-25 09:41:18
[2026-10-25 09:41:18,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:41:19,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:41:19,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:41:19,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:41:19,288.288 INFO    ] time= 25/10/2026 09:41:19
[2026-10-25 09:41:19,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:41:19,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:41:19,445.445 INFO    ] No existing commands found in stream
[2026-10-25 09:41:24,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:41:24,477.477 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 09:41:26,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:41:26,733.733 INFO    ] Checking for system updates...
[2026-10-25 09:41:26,769.769 INFO    ] 200
[2026-10-25 09:41:26,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:26,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:41:26,837.837 INFO    ] No update needed
[2026-10-25 09:41:26,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 09:41:26,879.879 INFO    ] 200
[2026-10-25 09:41:26,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:26,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:41:26,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:41:26,993.993 INFO    ] No camera update needed
[2026-10-25 09:41:26,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:41:26,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:41:27,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:41:27,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:41:29,062.062 INFO    ] ================================================
[2026-10-25 09:41:29,078.078 INFO    ] Launching Daemon at Sun Oct 25 09:41:29 IST 2026
[2026-10-25 09:41:29,089.089 INFO    ] ================================================
[2026-10-25 09:41:29,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:41:29
[2026-10-25 09:41:30,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:41:30,514.514 INFO    ] Initializing speech engine...
[2026-10-25 09:41:30,527.527 INFO    ] 2026-10-25 09:41:30
[2026-10-25 09:41:30,780.780 INFO    ] 2026-10-25 09:41:30
[2026-10-25 09:41:30,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:41:31,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:41:31,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:41:31,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:41:31,230.230 INFO    ] time= 25/10/2026 09:41:31
[2026-10-25 09:41:31,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:41:31,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:41:31,400.400 INFO    ] No existing commands found in stream
[2026-10-25 09:41:36,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:41:36,435.435 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 09:41:38,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:41:38,196.196 INFO    ] Checking for system updates...
[2026-10-25 09:41:38,237.237 INFO    ] 200
[2026-10-25 09:41:38,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:38,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:38,307.307 INFO    ] No update needed
[2026-10-25 09:41:38,309.309 INFO    ] Checking for camera pi updates...
[2026-10-25 09:41:38,347.347 INFO    ] 200
[2026-10-25 09:41:38,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:38,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:41:38,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:38,434.434 INFO    ] No camera update needed
[2026-10-25 09:41:38,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:41:38,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:41:38,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:41:38,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:41:40,490.490 INFO    ] ================================================
[2026-10-25 09:41:40,505.505 INFO    ] Launching Daemon at Sun Oct 25 09:41:40 IST 2026
[2026-10-25 09:41:40,516.516 INFO    ] ================================================
[2026-10-25 09:41:41,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:41:41
[2026-10-25 09:41:41,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:41:42,011.011 INFO    ] Initializing speech engine...
[2026-10-25 09:41:42,019.019 INFO    ] 2026-10-25 09:41:42
[2026-10-25 09:41:42,292.292 INFO    ] 2026-10-25 09:41:42
[2026-10-25 09:41:42,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:41:42,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:41:42,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:41:42,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:41:42,775.775 INFO    ] time= 25/10/2026 09:41:42
[2026-10-25 09:41:42,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:41:42,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:41:42,965.965 INFO    ] No existing commands found in stream
[2026-10-25 09:41:47,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:41:47,993.993 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 09:41:50,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:41:50,882.882 INFO    ] Checking for system updates...
[2026-10-25 09:41:50,919.919 INFO    ] 200
[2026-10-25 09:41:50,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:50,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:50,979.979 INFO    ] No update needed
[2026-10-25 09:41:50,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 09:41:51,015.015 INFO    ] 200
[2026-10-25 09:41:51,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:41:51,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:41:51,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:41:51,214.214 INFO    ] No camera update needed
[2026-10-25 09:41:51,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:41:51,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:41:51,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:41:51,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:41:53,272.272 INFO    ] ================================================
[2026-10-25 09:41:53,287.287 INFO    ] Launching Daemon at Sun Oct 25 09:41:53 IST 2026
[2026-10-25 09:41:53,298.298 INFO    ] ================================================
[2026-10-25 09:41:53,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:41:53
[2026-10-25 09:41:54,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:41:54,755.755 INFO    ] Initializing speech engine...
[2026-10-25 09:41:54,760.760 INFO    ] 2026-10-25 09:41:54
[2026-10-25 09:41:55,008.008 INFO    ] 2026-10-25 09:41:55
[2026-10-25 09:41:55,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:41:56,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:41:56,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:41:57,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:41:57,019.019 INFO    ] time= 25/10/2026 09:41:57
[2026-10-25 09:41:57,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:41:57,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:41:57,109.109 INFO    ] No existing commands found in stream
[2026-10-25 09:42:02,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:42:02,127.127 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 09:42:03,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:42:03,189.189 INFO    ] Checking for system updates...
[2026-10-25 09:42:03,234.234 INFO    ] 200
[2026-10-25 09:42:03,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:03,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:42:03,308.308 INFO    ] No update needed
[2026-10-25 09:42:03,312.312 INFO    ] Checking for camera pi updates...
[2026-10-25 09:42:03,370.370 INFO    ] 200
[2026-10-25 09:42:03,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:03,438.438 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:42:03,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:42:03,502.502 INFO    ] No camera update needed
[2026-10-25 09:42:03,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:42:03,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:42:03,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:42:03,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:42:05,564.564 INFO    ] ================================================
[2026-10-25 09:42:05,578.578 INFO    ] Launching Daemon at Sun Oct 25 09:42:05 IST 2026
[2026-10-25 09:42:05,589.589 INFO    ] ================================================
[2026-10-25 09:42:06,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:42:06
[2026-10-25 09:42:06,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:42:07,002.002 INFO    ] Initializing speech engine...
[2026-10-25 09:42:07,015.015 INFO    ] 2026-10-25 09:42:07
[2026-10-25 09:42:07,296.296 INFO    ] 2026-10-25 09:42:07
[2026-10-25 09:42:07,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:42:07,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:42:07,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:42:07,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:42:07,672.672 INFO    ] time= 25/10/2026 09:42:07
[2026-10-25 09:42:07,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:42:07,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:42:07,796.796 INFO    ] No existing commands found in stream
[2026-10-25 09:42:12,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:42:12,811.811 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 09:42:16,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:42:16,829.829 INFO    ] Checking for system updates...
[2026-10-25 09:42:16,868.868 INFO    ] 200
[2026-10-25 09:42:16,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:16,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:16,932.932 INFO    ] No update needed
[2026-10-25 09:42:16,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 09:42:16,969.969 INFO    ] 200
[2026-10-25 09:42:16,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:17,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:42:17,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:17,067.067 INFO    ] No camera update needed
[2026-10-25 09:42:17,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:42:17,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:42:17,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:42:17,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:42:19,124.124 INFO    ] ================================================
[2026-10-25 09:42:19,138.138 INFO    ] Launching Daemon at Sun Oct 25 09:42:19 IST 2026
[2026-10-25 09:42:19,149.149 INFO    ] ================================================
[2026-10-25 09:42:19,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:42:19
[2026-10-25 09:42:20,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:42:20,587.587 INFO    ] Initializing speech engine...
[2026-10-25 09:42:20,596.596 INFO    ] 2026-10-25 09:42:20
[2026-10-25 09:42:20,843.843 INFO    ] 2026-10-25 09:42:20
[2026-10-25 09:42:20,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:42:21,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:42:21,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:42:21,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:42:21,285.285 INFO    ] time= 25/10/2026 09:42:21
[2026-10-25 09:42:21,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:42:21,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:42:21,481.481 INFO    ] No existing commands found in stream
[2026-10-25 09:42:26,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:42:26,515.515 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 09:42:28,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:42:28,111.111 INFO    ] Checking for system updates...
[2026-10-25 09:42:28,151.151 INFO    ] 200
[2026-10-25 09:42:28,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:28,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:28,209.209 INFO    ] No update needed
[2026-10-25 09:42:28,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 09:42:28,245.245 INFO    ] 200
[2026-10-25 09:42:28,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:28,293.293 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:42:28,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:28,341.341 INFO    ] No camera update needed
[2026-10-25 09:42:28,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:42:28,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:42:28,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:42:28,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:42:30,399.399 INFO    ] ================================================
[2026-10-25 09:42:30,414.414 INFO    ] Launching Daemon at Sun Oct 25 09:42:30 IST 2026
[2026-10-25 09:42:30,425.425 INFO    ] ================================================
[2026-10-25 09:42:30,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:42:30
[2026-10-25 09:42:31,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:42:31,827.827 INFO    ] Initializing speech engine...
[2026-10-25 09:42:31,841.841 INFO    ] 2026-10-25 09:42:31
[2026-10-25 09:42:32,112.112 INFO    ] 2026-10-25 09:42:32
[2026-10-25 09:42:32,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:42:32,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:42:32,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:42:32,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:42:32,602.602 INFO    ] time= 25/10/2026 09:42:32
[2026-10-25 09:42:32,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:42:32,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:42:32,761.761 INFO    ] No existing commands found in stream
[2026-10-25 09:42:37,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:42:37,775.775 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 09:42:38,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:42:38,922.922 INFO    ] Checking for system updates...
[2026-10-25 09:42:38,958.958 INFO    ] 200
[2026-10-25 09:42:38,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:39,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:39,026.026 INFO    ] No update needed
[2026-10-25 09:42:39,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 09:42:39,066.066 INFO    ] 200
[2026-10-25 09:42:39,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:39,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:42:39,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:42:39,186.186 INFO    ] No camera update needed
[2026-10-25 09:42:39,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:42:39,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:42:39,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:42:39,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:42:41,245.245 INFO    ] ================================================
[2026-10-25 09:42:41,260.260 INFO    ] Launching Daemon at Sun Oct 25 09:42:41 IST 2026
[2026-10-25 09:42:41,271.271 INFO    ] ================================================
[2026-10-25 09:42:41,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:42:41
[2026-10-25 09:42:42,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:42:42,860.860 INFO    ] Initializing speech engine...
[2026-10-25 09:42:42,866.866 INFO    ] 2026-10-25 09:42:42
[2026-10-25 09:42:43,158.158 INFO    ] 2026-10-25 09:42:43
[2026-10-25 09:42:43,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:42:43,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:42:43,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:42:43,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:42:43,632.632 INFO    ] time= 25/10/2026 09:42:43
[2026-10-25 09:42:43,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:42:43,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:42:43,780.780 INFO    ] No existing commands found in stream
[2026-10-25 09:42:48,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:42:48,796.796 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 09:42:51,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:42:51,055.055 INFO    ] Checking for system updates...
[2026-10-25 09:42:51,099.099 INFO    ] 200
[2026-10-25 09:42:51,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:51,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:42:51,164.164 INFO    ] No update needed
[2026-10-25 09:42:51,167.167 INFO    ] Checking for camera pi updates...
[2026-10-25 09:42:51,205.205 INFO    ] 200
[2026-10-25 09:42:51,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:42:51,248.248 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:42:51,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:42:51,297.297 INFO    ] No camera update needed
[2026-10-25 09:42:51,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:42:51,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:42:51,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:42:51,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:42:53,352.352 INFO    ] ================================================
[2026-10-25 09:42:53,367.367 INFO    ] Launching Daemon at Sun Oct 25 09:42:53 IST 2026
[2026-10-25 09:42:53,379.379 INFO    ] ================================================
[2026-10-25 09:42:53,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:42:53
[2026-10-25 09:42:54,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:42:54,785.785 INFO    ] Initializing speech engine...
[2026-10-25 09:42:54,799.799 INFO    ] 2026-10-25 09:42:54
[2026-10-25 09:42:55,082.082 INFO    ] 2026-10-25 09:42:55
[2026-10-25 09:42:55,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:42:57,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:42:57,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:42:58,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:42:58,422.422 INFO    ] time= 25/10/2026 09:42:58
[2026-10-25 09:42:58,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:42:58,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:42:58,478.478 INFO    ] No existing commands found in stream
[2026-10-25 09:43:03,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:43:03,485.485 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 09:43:07,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:43:07,391.391 INFO    ] Checking for system updates...
[2026-10-25 09:43:07,427.427 INFO    ] 200
[2026-10-25 09:43:07,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:07,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:07,488.488 INFO    ] No update needed
[2026-10-25 09:43:07,492.492 INFO    ] Checking for camera pi updates...
[2026-10-25 09:43:07,529.529 INFO    ] 200
[2026-10-25 09:43:07,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:07,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:43:07,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:07,625.625 INFO    ] No camera update needed
[2026-10-25 09:43:07,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:43:07,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:43:07,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:43:07,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:43:09,687.687 INFO    ] ================================================
[2026-10-25 09:43:09,702.702 INFO    ] Launching Daemon at Sun Oct 25 09:43:09 IST 2026
[2026-10-25 09:43:09,713.713 INFO    ] ================================================
[2026-10-25 09:43:10,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:43:10
[2026-10-25 09:43:10,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:43:11,286.286 INFO    ] Initializing speech engine...
[2026-10-25 09:43:11,293.293 INFO    ] 2026-10-25 09:43:11
[2026-10-25 09:43:11,581.581 INFO    ] 2026-10-25 09:43:11
[2026-10-25 09:43:11,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:43:11,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:43:11,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:43:12,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:43:12,113.113 INFO    ] time= 25/10/2026 09:43:12
[2026-10-25 09:43:12,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:43:12,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:43:12,253.253 INFO    ] No existing commands found in stream
[2026-10-25 09:43:17,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:43:17,284.284 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 09:43:21,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:43:21,173.173 INFO    ] Checking for system updates...
[2026-10-25 09:43:21,210.210 INFO    ] 200
[2026-10-25 09:43:21,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:21,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:43:21,268.268 INFO    ] No update needed
[2026-10-25 09:43:21,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 09:43:21,307.307 INFO    ] 200
[2026-10-25 09:43:21,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:21,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:43:21,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:43:21,401.401 INFO    ] No camera update needed
[2026-10-25 09:43:21,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:43:21,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:43:21,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:43:21,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:43:23,458.458 INFO    ] ================================================
[2026-10-25 09:43:23,474.474 INFO    ] Launching Daemon at Sun Oct 25 09:43:23 IST 2026
[2026-10-25 09:43:23,485.485 INFO    ] ================================================
[2026-10-25 09:43:24,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:43:24
[2026-10-25 09:43:24,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:43:24,892.892 INFO    ] Initializing speech engine...
[2026-10-25 09:43:24,915.915 INFO    ] 2026-10-25 09:43:24
[2026-10-25 09:43:25,183.183 INFO    ] 2026-10-25 09:43:25
[2026-10-25 09:43:25,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:43:28,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:43:28,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:43:28,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:43:28,755.755 INFO    ] time= 25/10/2026 09:43:28
[2026-10-25 09:43:28,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:43:28,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:43:28,804.804 INFO    ] No existing commands found in stream
[2026-10-25 09:43:33,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:43:33,816.816 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 09:43:36,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:43:36,340.340 INFO    ] Checking for system updates...
[2026-10-25 09:43:36,377.377 INFO    ] 200
[2026-10-25 09:43:36,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:36,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:36,442.442 INFO    ] No update needed
[2026-10-25 09:43:36,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 09:43:36,478.478 INFO    ] 200
[2026-10-25 09:43:36,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:36,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:43:36,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:36,588.588 INFO    ] No camera update needed
[2026-10-25 09:43:36,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:43:36,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:43:36,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:43:36,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:43:38,644.644 INFO    ] ================================================
[2026-10-25 09:43:38,660.660 INFO    ] Launching Daemon at Sun Oct 25 09:43:38 IST 2026
[2026-10-25 09:43:38,671.671 INFO    ] ================================================
[2026-10-25 09:43:39,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:43:39
[2026-10-25 09:43:39,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:43:40,105.105 INFO    ] Initializing speech engine...
[2026-10-25 09:43:40,126.126 INFO    ] 2026-10-25 09:43:40
[2026-10-25 09:43:40,381.381 INFO    ] 2026-10-25 09:43:40
[2026-10-25 09:43:40,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:43:40,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:43:40,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:43:40,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:43:40,822.822 INFO    ] time= 25/10/2026 09:43:40
[2026-10-25 09:43:40,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:43:40,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:43:41,002.002 INFO    ] No existing commands found in stream
[2026-10-25 09:43:46,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:43:46,016.016 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 09:43:47,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:43:47,363.363 INFO    ] Checking for system updates...
[2026-10-25 09:43:47,402.402 INFO    ] 200
[2026-10-25 09:43:47,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:47,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:47,460.460 INFO    ] No update needed
[2026-10-25 09:43:47,462.462 INFO    ] Checking for camera pi updates...
[2026-10-25 09:43:47,496.496 INFO    ] 200
[2026-10-25 09:43:47,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:43:47,543.543 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:43:47,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:43:47,595.595 INFO    ] No camera update needed
[2026-10-25 09:43:47,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:43:47,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:43:47,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:43:47,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:43:49,652.652 INFO    ] ================================================
[2026-10-25 09:43:49,667.667 INFO    ] Launching Daemon at Sun Oct 25 09:43:49 IST 2026
[2026-10-25 09:43:49,678.678 INFO    ] ================================================
[2026-10-25 09:43:50,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:43:50
[2026-10-25 09:43:50,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:43:51,096.096 INFO    ] Initializing speech engine...
[2026-10-25 09:43:51,109.109 INFO    ] 2026-10-25 09:43:51
[2026-10-25 09:43:51,394.394 INFO    ] 2026-10-25 09:43:51
[2026-10-25 09:43:51,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:43:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:43:51,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:43:51,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:43:51,786.786 INFO    ] time= 25/10/2026 09:43:51
[2026-10-25 09:43:51,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:43:51,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:43:51,909.909 INFO    ] No existing commands found in stream
[2026-10-25 09:43:56,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:43:56,925.925 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 09:44:01,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:44:01,037.037 INFO    ] Checking for system updates...
[2026-10-25 09:44:01,073.073 INFO    ] 200
[2026-10-25 09:44:01,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:01,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:01,132.132 INFO    ] No update needed
[2026-10-25 09:44:01,134.134 INFO    ] Checking for camera pi updates...
[2026-10-25 09:44:01,168.168 INFO    ] 200
[2026-10-25 09:44:01,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:01,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:44:01,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:01,371.371 INFO    ] No camera update needed
[2026-10-25 09:44:01,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:44:01,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:44:01,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:44:01,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:44:03,431.431 INFO    ] ================================================
[2026-10-25 09:44:03,448.448 INFO    ] Launching Daemon at Sun Oct 25 09:44:03 IST 2026
[2026-10-25 09:44:03,469.469 INFO    ] ================================================
[2026-10-25 09:44:04,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:44:04
[2026-10-25 09:44:04,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:44:05,145.145 INFO    ] Initializing speech engine...
[2026-10-25 09:44:05,152.152 INFO    ] 2026-10-25 09:44:05
[2026-10-25 09:44:05,434.434 INFO    ] 2026-10-25 09:44:05
[2026-10-25 09:44:05,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:44:05,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:44:05,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:44:05,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:44:05,967.967 INFO    ] time= 25/10/2026 09:44:05
[2026-10-25 09:44:05,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:44:05,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:44:06,104.104 INFO    ] No existing commands found in stream
[2026-10-25 09:44:11,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:44:11,133.133 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 09:44:13,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:44:13,695.695 INFO    ] Checking for system updates...
[2026-10-25 09:44:13,732.732 INFO    ] 200
[2026-10-25 09:44:13,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:13,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:13,796.796 INFO    ] No update needed
[2026-10-25 09:44:13,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 09:44:13,837.837 INFO    ] 200
[2026-10-25 09:44:13,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:13,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:44:13,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:13,936.936 INFO    ] No camera update needed
[2026-10-25 09:44:13,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:44:13,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:44:13,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:44:13,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:44:16,994.994 INFO    ] ================================================
[2026-10-25 09:44:16,010.010 INFO    ] Launching Daemon at Sun Oct 25 09:44:16 IST 2026
[2026-10-25 09:44:16,027.027 INFO    ] ================================================
[2026-10-25 09:44:16,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:44:16
[2026-10-25 09:44:17,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:44:17,456.456 INFO    ] Initializing speech engine...
[2026-10-25 09:44:17,477.477 INFO    ] 2026-10-25 09:44:17
[2026-10-25 09:44:17,742.742 INFO    ] 2026-10-25 09:44:17
[2026-10-25 09:44:17,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:44:17,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:44:18,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:44:18,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:44:18,133.133 INFO    ] time= 25/10/2026 09:44:18
[2026-10-25 09:44:18,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:44:18,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:44:18,242.242 INFO    ] No existing commands found in stream
[2026-10-25 09:44:23,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:44:23,260.260 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 09:44:29,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:44:29,777.777 INFO    ] Checking for system updates...
[2026-10-25 09:44:29,817.817 INFO    ] 200
[2026-10-25 09:44:29,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:29,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:44:29,882.882 INFO    ] No update needed
[2026-10-25 09:44:29,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 09:44:29,919.919 INFO    ] 200
[2026-10-25 09:44:29,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:29,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:44:30,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:44:30,014.014 INFO    ] No camera update needed
[2026-10-25 09:44:30,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:44:30,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:44:30,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:44:30,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:44:32,077.077 INFO    ] ================================================
[2026-10-25 09:44:32,098.098 INFO    ] Launching Daemon at Sun Oct 25 09:44:32 IST 2026
[2026-10-25 09:44:32,109.109 INFO    ] ================================================
[2026-10-25 09:44:32,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:44:32
[2026-10-25 09:44:33,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:44:33,589.589 INFO    ] Initializing speech engine...
[2026-10-25 09:44:33,614.614 INFO    ] 2026-10-25 09:44:33
[2026-10-25 09:44:33,884.884 INFO    ] 2026-10-25 09:44:33
[2026-10-25 09:44:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:44:34,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:44:34,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:44:34,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:44:34,279.279 INFO    ] time= 25/10/2026 09:44:34
[2026-10-25 09:44:34,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:44:34,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:44:34,385.385 INFO    ] No existing commands found in stream
[2026-10-25 09:44:39,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:44:39,398.398 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 09:44:41,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:44:41,799.799 INFO    ] Checking for system updates...
[2026-10-25 09:44:41,835.835 INFO    ] 200
[2026-10-25 09:44:41,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:41,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:44:41,899.899 INFO    ] No update needed
[2026-10-25 09:44:41,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 09:44:41,939.939 INFO    ] 200
[2026-10-25 09:44:41,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:41,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:44:42,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:44:42,055.055 INFO    ] No camera update needed
[2026-10-25 09:44:42,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:44:42,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:44:42,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:44:42,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:44:44,111.111 INFO    ] ================================================
[2026-10-25 09:44:44,126.126 INFO    ] Launching Daemon at Sun Oct 25 09:44:44 IST 2026
[2026-10-25 09:44:44,136.136 INFO    ] ================================================
[2026-10-25 09:44:44,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:44:44
[2026-10-25 09:44:45,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:44:45,562.562 INFO    ] Initializing speech engine...
[2026-10-25 09:44:45,571.571 INFO    ] 2026-10-25 09:44:45
[2026-10-25 09:44:45,816.816 INFO    ] 2026-10-25 09:44:45
[2026-10-25 09:44:45,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:44:46,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:44:46,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:44:46,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:44:46,183.183 INFO    ] time= 25/10/2026 09:44:46
[2026-10-25 09:44:46,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:44:46,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:44:46,356.356 INFO    ] No existing commands found in stream
[2026-10-25 09:44:51,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:44:51,386.386 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 09:44:53,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:44:53,724.724 INFO    ] Checking for system updates...
[2026-10-25 09:44:53,767.767 INFO    ] 200
[2026-10-25 09:44:53,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:53,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:53,828.828 INFO    ] No update needed
[2026-10-25 09:44:53,831.831 INFO    ] Checking for camera pi updates...
[2026-10-25 09:44:53,869.869 INFO    ] 200
[2026-10-25 09:44:53,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:44:53,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:44:53,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:44:53,965.965 INFO    ] No camera update needed
[2026-10-25 09:44:53,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:44:53,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:44:53,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:44:53,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:44:56,023.023 INFO    ] ================================================
[2026-10-25 09:44:56,038.038 INFO    ] Launching Daemon at Sun Oct 25 09:44:56 IST 2026
[2026-10-25 09:44:56,048.048 INFO    ] ================================================
[2026-10-25 09:44:56,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:44:56
[2026-10-25 09:44:57,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:44:57,467.467 INFO    ] Initializing speech engine...
[2026-10-25 09:44:57,489.489 INFO    ] 2026-10-25 09:44:57
[2026-10-25 09:44:57,745.745 INFO    ] 2026-10-25 09:44:57
[2026-10-25 09:44:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:45:00,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:45:00,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:45:00,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:45:00,502.502 INFO    ] time= 25/10/2026 09:45:00
[2026-10-25 09:45:00,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:45:00,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:45:00,587.587 INFO    ] No existing commands found in stream
[2026-10-25 09:45:05,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:45:05,599.599 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 09:45:08,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:45:08,714.714 INFO    ] Checking for system updates...
[2026-10-25 09:45:08,750.750 INFO    ] 200
[2026-10-25 09:45:08,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:08,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:45:08,816.816 INFO    ] No update needed
[2026-10-25 09:45:08,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 09:45:08,853.853 INFO    ] 200
[2026-10-25 09:45:08,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:08,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:45:08,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:45:08,946.946 INFO    ] No camera update needed
[2026-10-25 09:45:08,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:45:08,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:45:08,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:45:08,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:45:11,003.003 INFO    ] ================================================
[2026-10-25 09:45:11,019.019 INFO    ] Launching Daemon at Sun Oct 25 09:45:11 IST 2026
[2026-10-25 09:45:11,029.029 INFO    ] ================================================
[2026-10-25 09:45:11,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:45:11
[2026-10-25 09:45:12,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:45:12,618.618 INFO    ] Initializing speech engine...
[2026-10-25 09:45:12,625.625 INFO    ] 2026-10-25 09:45:12
[2026-10-25 09:45:12,917.917 INFO    ] 2026-10-25 09:45:12
[2026-10-25 09:45:13,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:45:13,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:45:13,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:45:13,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:45:13,446.446 INFO    ] time= 25/10/2026 09:45:13
[2026-10-25 09:45:13,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:45:13,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:45:13,601.601 INFO    ] No existing commands found in stream
[2026-10-25 09:45:18,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:45:18,620.620 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 09:45:20,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:45:20,381.381 INFO    ] Checking for system updates...
[2026-10-25 09:45:20,419.419 INFO    ] 200
[2026-10-25 09:45:20,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:20,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:20,479.479 INFO    ] No update needed
[2026-10-25 09:45:20,482.482 INFO    ] Checking for camera pi updates...
[2026-10-25 09:45:20,517.517 INFO    ] 200
[2026-10-25 09:45:20,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:20,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:45:20,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:20,613.613 INFO    ] No camera update needed
[2026-10-25 09:45:20,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:45:20,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:45:20,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:45:20,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:45:22,672.672 INFO    ] ================================================
[2026-10-25 09:45:22,688.688 INFO    ] Launching Daemon at Sun Oct 25 09:45:22 IST 2026
[2026-10-25 09:45:22,698.698 INFO    ] ================================================
[2026-10-25 09:45:23,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:45:23
[2026-10-25 09:45:23,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:45:24,115.115 INFO    ] Initializing speech engine...
[2026-10-25 09:45:24,128.128 INFO    ] 2026-10-25 09:45:24
[2026-10-25 09:45:24,378.378 INFO    ] 2026-10-25 09:45:24
[2026-10-25 09:45:24,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:45:24,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:45:24,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:45:24,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:45:24,746.746 INFO    ] time= 25/10/2026 09:45:24
[2026-10-25 09:45:24,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:45:24,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:45:24,920.920 INFO    ] No existing commands found in stream
[2026-10-25 09:45:29,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:45:29,953.953 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 09:45:34,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:45:34,038.038 INFO    ] Checking for system updates...
[2026-10-25 09:45:34,078.078 INFO    ] 200
[2026-10-25 09:45:34,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:34,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:34,143.143 INFO    ] No update needed
[2026-10-25 09:45:34,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 09:45:34,178.178 INFO    ] 200
[2026-10-25 09:45:34,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:34,231.231 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:45:34,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:34,298.298 INFO    ] No camera update needed
[2026-10-25 09:45:34,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:45:34,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:45:34,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:45:34,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:45:36,357.357 INFO    ] ================================================
[2026-10-25 09:45:36,373.373 INFO    ] Launching Daemon at Sun Oct 25 09:45:36 IST 2026
[2026-10-25 09:45:36,384.384 INFO    ] ================================================
[2026-10-25 09:45:36,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:45:36
[2026-10-25 09:45:37,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:45:37,852.852 INFO    ] Initializing speech engine...
[2026-10-25 09:45:37,866.866 INFO    ] 2026-10-25 09:45:37
[2026-10-25 09:45:38,130.130 INFO    ] 2026-10-25 09:45:38
[2026-10-25 09:45:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:45:38,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:45:38,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:45:38,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:45:38,507.507 INFO    ] time= 25/10/2026 09:45:38
[2026-10-25 09:45:38,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:45:38,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:45:38,629.629 INFO    ] No existing commands found in stream
[2026-10-25 09:45:43,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:45:43,652.652 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 09:45:45,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:45:45,620.620 INFO    ] Checking for system updates...
[2026-10-25 09:45:45,658.658 INFO    ] 200
[2026-10-25 09:45:45,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:45,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:45:45,717.717 INFO    ] No update needed
[2026-10-25 09:45:45,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 09:45:45,755.755 INFO    ] 200
[2026-10-25 09:45:45,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:45,804.804 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:45:45,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:45:45,853.853 INFO    ] No camera update needed
[2026-10-25 09:45:45,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:45:45,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:45:45,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:45:45,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:45:47,907.907 INFO    ] ================================================
[2026-10-25 09:45:47,922.922 INFO    ] Launching Daemon at Sun Oct 25 09:45:47 IST 2026
[2026-10-25 09:45:47,933.933 INFO    ] ================================================
[2026-10-25 09:45:48,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:45:48
[2026-10-25 09:45:49,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:45:49,387.387 INFO    ] Initializing speech engine...
[2026-10-25 09:45:49,405.405 INFO    ] 2026-10-25 09:45:49
[2026-10-25 09:45:49,652.652 INFO    ] 2026-10-25 09:45:49
[2026-10-25 09:45:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:45:49,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:45:49,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:45:50,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:45:50,115.115 INFO    ] time= 25/10/2026 09:45:50
[2026-10-25 09:45:50,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:45:50,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:45:50,267.267 INFO    ] No existing commands found in stream
[2026-10-25 09:45:55,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:45:55,282.282 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 09:45:59,719.719 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:45:59,722.722 INFO    ] Checking for system updates...
[2026-10-25 09:45:59,759.759 INFO    ] 200
[2026-10-25 09:45:59,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:59,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:59,818.818 INFO    ] No update needed
[2026-10-25 09:45:59,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 09:45:59,859.859 INFO    ] 200
[2026-10-25 09:45:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:45:59,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:45:59,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:45:59,965.965 INFO    ] No camera update needed
[2026-10-25 09:45:59,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:45:59,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:45:59,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:45:59,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:46:02,023.023 INFO    ] ================================================
[2026-10-25 09:46:02,045.045 INFO    ] Launching Daemon at Sun Oct 25 09:46:02 IST 2026
[2026-10-25 09:46:02,062.062 INFO    ] ================================================
[2026-10-25 09:46:02,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:46:02
[2026-10-25 09:46:03,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:46:03,730.730 INFO    ] Initializing speech engine...
[2026-10-25 09:46:03,744.744 INFO    ] 2026-10-25 09:46:03
[2026-10-25 09:46:04,008.008 INFO    ] 2026-10-25 09:46:04
[2026-10-25 09:46:04,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:46:04,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:46:04,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:46:04,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:46:04,383.383 INFO    ] time= 25/10/2026 09:46:04
[2026-10-25 09:46:04,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:46:04,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:46:04,553.553 INFO    ] No existing commands found in stream
[2026-10-25 09:46:09,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:46:09,581.581 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 09:46:10,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:46:10,118.118 INFO    ] Checking for system updates...
[2026-10-25 09:46:10,158.158 INFO    ] 200
[2026-10-25 09:46:10,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:10,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:46:10,217.217 INFO    ] No update needed
[2026-10-25 09:46:10,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 09:46:10,253.253 INFO    ] 200
[2026-10-25 09:46:10,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:10,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:46:10,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:46:10,452.452 INFO    ] No camera update needed
[2026-10-25 09:46:10,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:46:10,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:46:10,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:46:10,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:46:12,506.506 INFO    ] ================================================
[2026-10-25 09:46:12,521.521 INFO    ] Launching Daemon at Sun Oct 25 09:46:12 IST 2026
[2026-10-25 09:46:12,531.531 INFO    ] ================================================
[2026-10-25 09:46:13,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:46:13
[2026-10-25 09:46:13,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:46:14,077.077 INFO    ] Initializing speech engine...
[2026-10-25 09:46:14,084.084 INFO    ] 2026-10-25 09:46:14
[2026-10-25 09:46:14,327.327 INFO    ] 2026-10-25 09:46:14
[2026-10-25 09:46:14,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:46:14,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:46:14,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:46:14,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:46:14,794.794 INFO    ] time= 25/10/2026 09:46:14
[2026-10-25 09:46:14,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:46:14,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:46:14,944.944 INFO    ] No existing commands found in stream
[2026-10-25 09:46:19,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:46:19,958.958 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 09:46:22,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:46:22,708.708 INFO    ] Checking for system updates...
[2026-10-25 09:46:22,748.748 INFO    ] 200
[2026-10-25 09:46:22,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:22,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:46:22,809.809 INFO    ] No update needed
[2026-10-25 09:46:22,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 09:46:22,846.846 INFO    ] 200
[2026-10-25 09:46:22,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:22,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:46:22,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:46:22,943.943 INFO    ] No camera update needed
[2026-10-25 09:46:22,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:46:22,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:46:22,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:46:22,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:46:25,998.998 INFO    ] ================================================
[2026-10-25 09:46:25,013.013 INFO    ] Launching Daemon at Sun Oct 25 09:46:25 IST 2026
[2026-10-25 09:46:25,024.024 INFO    ] ================================================
[2026-10-25 09:46:25,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:46:25
[2026-10-25 09:46:26,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:46:26,440.440 INFO    ] Initializing speech engine...
[2026-10-25 09:46:26,449.449 INFO    ] 2026-10-25 09:46:26
[2026-10-25 09:46:26,708.708 INFO    ] 2026-10-25 09:46:26
[2026-10-25 09:46:26,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:46:26,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:46:26,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:46:27,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:46:27,094.094 INFO    ] time= 25/10/2026 09:46:27
[2026-10-25 09:46:27,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:46:27,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:46:27,200.200 INFO    ] No existing commands found in stream
[2026-10-25 09:46:32,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:46:32,226.226 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 09:46:33,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:46:33,676.676 INFO    ] Checking for system updates...
[2026-10-25 09:46:33,712.712 INFO    ] 200
[2026-10-25 09:46:33,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:33,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:46:33,776.776 INFO    ] No update needed
[2026-10-25 09:46:33,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 09:46:33,817.817 INFO    ] 200
[2026-10-25 09:46:33,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:33,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:46:33,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:46:33,910.910 INFO    ] No camera update needed
[2026-10-25 09:46:33,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:46:33,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:46:33,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:46:33,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:46:35,965.965 INFO    ] ================================================
[2026-10-25 09:46:35,980.980 INFO    ] Launching Daemon at Sun Oct 25 09:46:35 IST 2026
[2026-10-25 09:46:35,992.992 INFO    ] ================================================
[2026-10-25 09:46:36,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:46:36
[2026-10-25 09:46:37,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:46:37,598.598 INFO    ] Initializing speech engine...
[2026-10-25 09:46:37,612.612 INFO    ] 2026-10-25 09:46:37
[2026-10-25 09:46:37,892.892 INFO    ] 2026-10-25 09:46:37
[2026-10-25 09:46:37,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:46:38,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:46:38,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:46:38,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:46:38,382.382 INFO    ] time= 25/10/2026 09:46:38
[2026-10-25 09:46:38,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:46:38,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:46:38,552.552 INFO    ] No existing commands found in stream
[2026-10-25 09:46:43,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:46:43,566.566 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 09:46:47,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:46:47,872.872 INFO    ] Checking for system updates...
[2026-10-25 09:46:47,907.907 INFO    ] 200
[2026-10-25 09:46:47,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:47,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:46:47,966.966 INFO    ] No update needed
[2026-10-25 09:46:47,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 09:46:48,002.002 INFO    ] 200
[2026-10-25 09:46:48,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:46:48,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:46:48,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:46:48,096.096 INFO    ] No camera update needed
[2026-10-25 09:46:48,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:46:48,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:46:48,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:46:48,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:46:50,152.152 INFO    ] ================================================
[2026-10-25 09:46:50,167.167 INFO    ] Launching Daemon at Sun Oct 25 09:46:50 IST 2026
[2026-10-25 09:46:50,178.178 INFO    ] ================================================
[2026-10-25 09:46:50,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:46:50
[2026-10-25 09:46:51,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:46:51,595.595 INFO    ] Initializing speech engine...
[2026-10-25 09:46:51,604.604 INFO    ] 2026-10-25 09:46:51
[2026-10-25 09:46:51,848.848 INFO    ] 2026-10-25 09:46:51
[2026-10-25 09:46:51,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:46:52,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:46:52,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:46:52,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:46:52,327.327 INFO    ] time= 25/10/2026 09:46:52
[2026-10-25 09:46:52,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:46:52,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:46:52,464.464 INFO    ] No existing commands found in stream
[2026-10-25 09:46:57,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:46:57,478.478 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 09:47:02,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:47:02,272.272 INFO    ] Checking for system updates...
[2026-10-25 09:47:02,314.314 INFO    ] 200
[2026-10-25 09:47:02,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:02,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:02,385.385 INFO    ] No update needed
[2026-10-25 09:47:02,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 09:47:02,434.434 INFO    ] 200
[2026-10-25 09:47:02,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:02,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:47:02,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:02,600.600 INFO    ] No camera update needed
[2026-10-25 09:47:02,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:47:02,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:47:02,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:47:02,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:47:04,660.660 INFO    ] ================================================
[2026-10-25 09:47:04,676.676 INFO    ] Launching Daemon at Sun Oct 25 09:47:04 IST 2026
[2026-10-25 09:47:04,686.686 INFO    ] ================================================
[2026-10-25 09:47:05,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:47:05
[2026-10-25 09:47:05,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:47:06,208.208 INFO    ] Initializing speech engine...
[2026-10-25 09:47:06,222.222 INFO    ] 2026-10-25 09:47:06
[2026-10-25 09:47:06,496.496 INFO    ] 2026-10-25 09:47:06
[2026-10-25 09:47:06,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:47:06,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:47:06,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:47:06,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:47:06,949.949 INFO    ] time= 25/10/2026 09:47:06
[2026-10-25 09:47:07,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:47:07,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:47:07,096.096 INFO    ] No existing commands found in stream
[2026-10-25 09:47:12,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:47:12,120.120 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 09:47:15,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:47:15,979.979 INFO    ] Checking for system updates...
[2026-10-25 09:47:16,016.016 INFO    ] 200
[2026-10-25 09:47:16,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:16,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:16,078.078 INFO    ] No update needed
[2026-10-25 09:47:16,081.081 INFO    ] Checking for camera pi updates...
[2026-10-25 09:47:16,119.119 INFO    ] 200
[2026-10-25 09:47:16,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:16,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:47:16,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:16,211.211 INFO    ] No camera update needed
[2026-10-25 09:47:16,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:47:16,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:47:16,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:47:16,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:47:18,266.266 INFO    ] ================================================
[2026-10-25 09:47:18,281.281 INFO    ] Launching Daemon at Sun Oct 25 09:47:18 IST 2026
[2026-10-25 09:47:18,293.293 INFO    ] ================================================
[2026-10-25 09:47:18,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:47:18
[2026-10-25 09:47:19,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:47:19,962.962 INFO    ] Initializing speech engine...
[2026-10-25 09:47:19,975.975 INFO    ] 2026-10-25 09:47:19
[2026-10-25 09:47:20,287.287 INFO    ] 2026-10-25 09:47:20
[2026-10-25 09:47:20,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:47:20,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:47:20,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:47:20,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:47:20,712.712 INFO    ] time= 25/10/2026 09:47:20
[2026-10-25 09:47:20,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:47:20,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:47:20,857.857 INFO    ] No existing commands found in stream
[2026-10-25 09:47:25,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:47:25,874.874 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 09:47:32,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:47:32,781.781 INFO    ] Checking for system updates...
[2026-10-25 09:47:32,828.828 INFO    ] 200
[2026-10-25 09:47:32,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:32,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:32,894.894 INFO    ] No update needed
[2026-10-25 09:47:32,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 09:47:32,931.931 INFO    ] 200
[2026-10-25 09:47:32,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:32,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:47:33,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:33,019.019 INFO    ] No camera update needed
[2026-10-25 09:47:33,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:47:33,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:47:33,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:47:33,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:47:35,075.075 INFO    ] ================================================
[2026-10-25 09:47:35,090.090 INFO    ] Launching Daemon at Sun Oct 25 09:47:35 IST 2026
[2026-10-25 09:47:35,102.102 INFO    ] ================================================
[2026-10-25 09:47:35,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:47:35
[2026-10-25 09:47:36,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:47:36,560.560 INFO    ] Initializing speech engine...
[2026-10-25 09:47:36,568.568 INFO    ] 2026-10-25 09:47:36
[2026-10-25 09:47:36,819.819 INFO    ] 2026-10-25 09:47:36
[2026-10-25 09:47:36,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:47:37,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:47:37,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:47:37,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:47:37,300.300 INFO    ] time= 25/10/2026 09:47:37
[2026-10-25 09:47:37,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:47:37,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:47:37,455.455 INFO    ] No existing commands found in stream
[2026-10-25 09:47:42,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:47:42,472.472 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 09:47:44,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:47:44,432.432 INFO    ] Checking for system updates...
[2026-10-25 09:47:44,468.468 INFO    ] 200
[2026-10-25 09:47:44,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:44,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:44,527.527 INFO    ] No update needed
[2026-10-25 09:47:44,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 09:47:44,563.563 INFO    ] 200
[2026-10-25 09:47:44,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:44,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:47:44,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:47:44,664.664 INFO    ] No camera update needed
[2026-10-25 09:47:44,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:47:44,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:47:44,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:47:44,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:47:46,720.720 INFO    ] ================================================
[2026-10-25 09:47:46,736.736 INFO    ] Launching Daemon at Sun Oct 25 09:47:46 IST 2026
[2026-10-25 09:47:46,747.747 INFO    ] ================================================
[2026-10-25 09:47:47,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:47:47
[2026-10-25 09:47:47,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:47:48,257.257 INFO    ] Initializing speech engine...
[2026-10-25 09:47:48,270.270 INFO    ] 2026-10-25 09:47:48
[2026-10-25 09:47:48,553.553 INFO    ] 2026-10-25 09:47:48
[2026-10-25 09:47:48,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:47:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:47:48,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:47:48,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:47:49,021.021 INFO    ] time= 25/10/2026 09:47:48
[2026-10-25 09:47:49,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:47:49,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:47:49,227.227 INFO    ] No existing commands found in stream
[2026-10-25 09:47:54,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:47:54,261.261 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 09:47:58,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:47:58,649.649 INFO    ] Checking for system updates...
[2026-10-25 09:47:58,691.691 INFO    ] 200
[2026-10-25 09:47:58,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:58,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:47:58,759.759 INFO    ] No update needed
[2026-10-25 09:47:58,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 09:47:58,802.802 INFO    ] 200
[2026-10-25 09:47:58,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:47:58,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:47:58,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:47:58,906.906 INFO    ] No camera update needed
[2026-10-25 09:47:58,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:47:58,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:47:58,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:47:58,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:48:00,964.964 INFO    ] ================================================
[2026-10-25 09:48:00,981.981 INFO    ] Launching Daemon at Sun Oct 25 09:48:00 IST 2026
[2026-10-25 09:48:01,996.996 INFO    ] ================================================
[2026-10-25 09:48:01,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:48:01
[2026-10-25 09:48:02,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:48:02,618.618 INFO    ] Initializing speech engine...
[2026-10-25 09:48:02,647.647 INFO    ] 2026-10-25 09:48:02
[2026-10-25 09:48:02,929.929 INFO    ] 2026-10-25 09:48:02
[2026-10-25 09:48:02,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:48:03,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:48:03,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:48:03,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:48:03,748.748 INFO    ] time= 25/10/2026 09:48:03
[2026-10-25 09:48:03,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:48:03,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:48:03,952.952 INFO    ] No existing commands found in stream
[2026-10-25 09:48:08,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:48:08,990.990 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 09:48:09,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:48:09,906.906 INFO    ] Checking for system updates...
[2026-10-25 09:48:09,945.945 INFO    ] 200
[2026-10-25 09:48:09,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:10,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:10,003.003 INFO    ] No update needed
[2026-10-25 09:48:10,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 09:48:10,042.042 INFO    ] 200
[2026-10-25 09:48:10,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:10,085.085 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:48:10,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:10,137.137 INFO    ] No camera update needed
[2026-10-25 09:48:10,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:48:10,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:48:10,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:48:10,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:48:12,193.193 INFO    ] ================================================
[2026-10-25 09:48:12,208.208 INFO    ] Launching Daemon at Sun Oct 25 09:48:12 IST 2026
[2026-10-25 09:48:12,219.219 INFO    ] ================================================
[2026-10-25 09:48:12,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:48:12
[2026-10-25 09:48:13,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:48:13,818.818 INFO    ] Initializing speech engine...
[2026-10-25 09:48:13,826.826 INFO    ] 2026-10-25 09:48:13
[2026-10-25 09:48:14,084.084 INFO    ] 2026-10-25 09:48:14
[2026-10-25 09:48:14,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:48:14,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:48:14,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:48:14,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:48:14,501.501 INFO    ] time= 25/10/2026 09:48:14
[2026-10-25 09:48:14,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:48:14,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:48:14,661.661 INFO    ] No existing commands found in stream
[2026-10-25 09:48:19,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:48:19,688.688 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 09:48:20,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:48:20,348.348 INFO    ] Checking for system updates...
[2026-10-25 09:48:20,385.385 INFO    ] 200
[2026-10-25 09:48:20,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:20,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:20,444.444 INFO    ] No update needed
[2026-10-25 09:48:20,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 09:48:20,485.485 INFO    ] 200
[2026-10-25 09:48:20,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:20,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:48:20,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:20,688.688 INFO    ] No camera update needed
[2026-10-25 09:48:20,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:48:20,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:48:20,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:48:20,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:48:22,745.745 INFO    ] ================================================
[2026-10-25 09:48:22,760.760 INFO    ] Launching Daemon at Sun Oct 25 09:48:22 IST 2026
[2026-10-25 09:48:22,771.771 INFO    ] ================================================
[2026-10-25 09:48:23,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:48:23
[2026-10-25 09:48:24,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:48:24,374.374 INFO    ] Initializing speech engine...
[2026-10-25 09:48:24,386.386 INFO    ] 2026-10-25 09:48:24
[2026-10-25 09:48:24,658.658 INFO    ] 2026-10-25 09:48:24
[2026-10-25 09:48:24,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:48:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:48:24,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:48:25,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:48:25,034.034 INFO    ] time= 25/10/2026 09:48:25
[2026-10-25 09:48:25,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:48:25,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:48:25,233.233 INFO    ] No existing commands found in stream
[2026-10-25 09:48:30,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:48:30,248.248 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 09:48:34,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:48:34,186.186 INFO    ] Checking for system updates...
[2026-10-25 09:48:34,223.223 INFO    ] 200
[2026-10-25 09:48:34,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:34,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:34,291.291 INFO    ] No update needed
[2026-10-25 09:48:34,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 09:48:34,330.330 INFO    ] 200
[2026-10-25 09:48:34,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:34,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:48:34,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:48:34,419.419 INFO    ] No camera update needed
[2026-10-25 09:48:34,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:48:34,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:48:34,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:48:34,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:48:36,474.474 INFO    ] ================================================
[2026-10-25 09:48:36,489.489 INFO    ] Launching Daemon at Sun Oct 25 09:48:36 IST 2026
[2026-10-25 09:48:36,500.500 INFO    ] ================================================
[2026-10-25 09:48:37,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:48:37
[2026-10-25 09:48:37,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:48:38,072.072 INFO    ] Initializing speech engine...
[2026-10-25 09:48:38,077.077 INFO    ] 2026-10-25 09:48:38
[2026-10-25 09:48:38,342.342 INFO    ] 2026-10-25 09:48:38
[2026-10-25 09:48:38,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:48:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:48:38,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:48:38,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:48:38,750.750 INFO    ] time= 25/10/2026 09:48:38
[2026-10-25 09:48:38,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:48:38,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:48:38,921.921 INFO    ] No existing commands found in stream
[2026-10-25 09:48:43,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:48:43,949.949 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 09:48:48,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:48:48,027.027 INFO    ] Checking for system updates...
[2026-10-25 09:48:48,063.063 INFO    ] 200
[2026-10-25 09:48:48,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:48,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:48:48,141.141 INFO    ] No update needed
[2026-10-25 09:48:48,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 09:48:48,177.177 INFO    ] 200
[2026-10-25 09:48:48,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:48,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:48:48,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:48:48,276.276 INFO    ] No camera update needed
[2026-10-25 09:48:48,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:48:48,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:48:48,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:48:48,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:48:50,332.332 INFO    ] ================================================
[2026-10-25 09:48:50,347.347 INFO    ] Launching Daemon at Sun Oct 25 09:48:50 IST 2026
[2026-10-25 09:48:50,358.358 INFO    ] ================================================
[2026-10-25 09:48:50,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:48:50
[2026-10-25 09:48:51,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:48:51,772.772 INFO    ] Initializing speech engine...
[2026-10-25 09:48:51,781.781 INFO    ] 2026-10-25 09:48:51
[2026-10-25 09:48:52,026.026 INFO    ] 2026-10-25 09:48:52
[2026-10-25 09:48:52,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:48:52,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:48:52,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:48:52,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:48:52,483.483 INFO    ] time= 25/10/2026 09:48:52
[2026-10-25 09:48:52,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:48:52,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:48:52,643.643 INFO    ] No existing commands found in stream
[2026-10-25 09:48:57,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:48:57,658.658 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 09:48:58,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:48:58,717.717 INFO    ] Checking for system updates...
[2026-10-25 09:48:58,756.756 INFO    ] 200
[2026-10-25 09:48:58,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:58,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:48:58,813.813 INFO    ] No update needed
[2026-10-25 09:48:58,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 09:48:58,850.850 INFO    ] 200
[2026-10-25 09:48:58,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:48:58,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:48:58,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:48:58,945.945 INFO    ] No camera update needed
[2026-10-25 09:48:58,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:48:58,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:48:58,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:48:58,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:49:01,000.000 INFO    ] ================================================
[2026-10-25 09:49:01,015.015 INFO    ] Launching Daemon at Sun Oct 25 09:49:01 IST 2026
[2026-10-25 09:49:01,026.026 INFO    ] ================================================
[2026-10-25 09:49:01,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:49:01
[2026-10-25 09:49:02,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:49:02,652.652 INFO    ] Initializing speech engine...
[2026-10-25 09:49:02,679.679 INFO    ] 2026-10-25 09:49:02
[2026-10-25 09:49:02,994.994 INFO    ] 2026-10-25 09:49:02
[2026-10-25 09:49:03,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:49:04,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:49:04,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:49:04,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:49:04,577.577 INFO    ] time= 25/10/2026 09:49:04
[2026-10-25 09:49:04,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:49:04,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:49:04,643.643 INFO    ] No existing commands found in stream
[2026-10-25 09:49:09,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:49:09,656.656 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 09:49:14,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:49:14,046.046 INFO    ] Checking for system updates...
[2026-10-25 09:49:14,083.083 INFO    ] 200
[2026-10-25 09:49:14,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:14,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:49:14,144.144 INFO    ] No update needed
[2026-10-25 09:49:14,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 09:49:14,183.183 INFO    ] 200
[2026-10-25 09:49:14,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:14,230.230 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:49:14,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:49:14,285.285 INFO    ] No camera update needed
[2026-10-25 09:49:14,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:49:14,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:49:14,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:49:14,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:49:16,341.341 INFO    ] ================================================
[2026-10-25 09:49:16,363.363 INFO    ] Launching Daemon at Sun Oct 25 09:49:16 IST 2026
[2026-10-25 09:49:16,374.374 INFO    ] ================================================
[2026-10-25 09:49:16,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:49:16
[2026-10-25 09:49:17,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:49:17,912.912 INFO    ] Initializing speech engine...
[2026-10-25 09:49:17,922.922 INFO    ] 2026-10-25 09:49:17
[2026-10-25 09:49:18,191.191 INFO    ] 2026-10-25 09:49:18
[2026-10-25 09:49:18,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:49:18,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:49:18,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:49:18,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:49:18,680.680 INFO    ] time= 25/10/2026 09:49:18
[2026-10-25 09:49:18,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:49:18,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:49:18,873.873 INFO    ] No existing commands found in stream
[2026-10-25 09:49:23,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:49:23,903.903 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 09:49:25,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:49:25,788.788 INFO    ] Checking for system updates...
[2026-10-25 09:49:25,827.827 INFO    ] 200
[2026-10-25 09:49:25,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:25,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:49:25,886.886 INFO    ] No update needed
[2026-10-25 09:49:25,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 09:49:25,926.926 INFO    ] 200
[2026-10-25 09:49:25,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:25,973.973 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:49:26,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:49:26,028.028 INFO    ] No camera update needed
[2026-10-25 09:49:26,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:49:26,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:49:26,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:49:26,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:49:28,086.086 INFO    ] ================================================
[2026-10-25 09:49:28,101.101 INFO    ] Launching Daemon at Sun Oct 25 09:49:28 IST 2026
[2026-10-25 09:49:28,111.111 INFO    ] ================================================
[2026-10-25 09:49:28,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:49:28
[2026-10-25 09:49:29,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:49:29,672.672 INFO    ] Initializing speech engine...
[2026-10-25 09:49:29,679.679 INFO    ] 2026-10-25 09:49:29
[2026-10-25 09:49:29,948.948 INFO    ] 2026-10-25 09:49:29
[2026-10-25 09:49:30,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:49:30,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:49:30,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:49:30,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:49:30,434.434 INFO    ] time= 25/10/2026 09:49:30
[2026-10-25 09:49:30,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:49:30,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:49:30,636.636 INFO    ] No existing commands found in stream
[2026-10-25 09:49:35,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:49:35,669.669 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 09:49:38,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:49:38,364.364 INFO    ] Checking for system updates...
[2026-10-25 09:49:38,406.406 INFO    ] 200
[2026-10-25 09:49:38,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:38,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:49:38,469.469 INFO    ] No update needed
[2026-10-25 09:49:38,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 09:49:38,508.508 INFO    ] 200
[2026-10-25 09:49:38,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:38,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:49:38,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:49:38,587.587 INFO    ] No camera update needed
[2026-10-25 09:49:38,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:49:38,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:49:38,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:49:38,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:49:40,645.645 INFO    ] ================================================
[2026-10-25 09:49:40,661.661 INFO    ] Launching Daemon at Sun Oct 25 09:49:40 IST 2026
[2026-10-25 09:49:40,672.672 INFO    ] ================================================
[2026-10-25 09:49:41,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:49:41
[2026-10-25 09:49:41,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:49:42,166.166 INFO    ] Initializing speech engine...
[2026-10-25 09:49:42,174.174 INFO    ] 2026-10-25 09:49:42
[2026-10-25 09:49:42,455.455 INFO    ] 2026-10-25 09:49:42
[2026-10-25 09:49:42,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:49:42,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:49:42,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:49:42,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:49:43,000.000 INFO    ] time= 25/10/2026 09:49:42
[2026-10-25 09:49:43,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:49:43,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:49:43,142.142 INFO    ] No existing commands found in stream
[2026-10-25 09:49:48,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:49:48,171.171 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 09:49:50,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:49:50,606.606 INFO    ] Checking for system updates...
[2026-10-25 09:49:50,645.645 INFO    ] 200
[2026-10-25 09:49:50,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:50,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:49:50,707.707 INFO    ] No update needed
[2026-10-25 09:49:50,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 09:49:50,747.747 INFO    ] 200
[2026-10-25 09:49:50,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:49:50,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:49:50,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:49:50,848.848 INFO    ] No camera update needed
[2026-10-25 09:49:50,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:49:50,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:49:50,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:49:50,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:49:52,904.904 INFO    ] ================================================
[2026-10-25 09:49:52,919.919 INFO    ] Launching Daemon at Sun Oct 25 09:49:52 IST 2026
[2026-10-25 09:49:52,929.929 INFO    ] ================================================
[2026-10-25 09:49:53,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:49:53
[2026-10-25 09:49:54,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:49:54,338.338 INFO    ] Initializing speech engine...
[2026-10-25 09:49:54,358.358 INFO    ] 2026-10-25 09:49:54
[2026-10-25 09:49:54,605.605 INFO    ] 2026-10-25 09:49:54
[2026-10-25 09:49:54,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:49:54,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:49:54,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:49:54,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:49:54,980.980 INFO    ] time= 25/10/2026 09:49:54
[2026-10-25 09:49:54,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:49:55,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:49:55,134.134 INFO    ] No existing commands found in stream
[2026-10-25 09:50:00,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:50:00,162.162 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 09:50:07,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:50:07,685.685 INFO    ] Checking for system updates...
[2026-10-25 09:50:07,723.723 INFO    ] 200
[2026-10-25 09:50:07,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:07,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:07,781.781 INFO    ] No update needed
[2026-10-25 09:50:07,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 09:50:07,818.818 INFO    ] 200
[2026-10-25 09:50:07,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:07,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:50:07,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:07,920.920 INFO    ] No camera update needed
[2026-10-25 09:50:07,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:50:07,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:50:07,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:50:07,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:50:09,978.978 INFO    ] ================================================
[2026-10-25 09:50:09,993.993 INFO    ] Launching Daemon at Sun Oct 25 09:50:09 IST 2026
[2026-10-25 09:50:10,004.004 INFO    ] ================================================
[2026-10-25 09:50:11,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:50:10
[2026-10-25 09:50:11,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:50:12,233.233 INFO    ] Initializing speech engine...
[2026-10-25 09:50:12,246.246 INFO    ] 2026-10-25 09:50:12
[2026-10-25 09:50:12,497.497 INFO    ] 2026-10-25 09:50:12
[2026-10-25 09:50:12,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:50:12,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:50:12,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:50:12,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:50:12,977.977 INFO    ] time= 25/10/2026 09:50:12
[2026-10-25 09:50:13,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:50:13,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:50:13,127.127 INFO    ] No existing commands found in stream
[2026-10-25 09:50:18,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:50:18,142.142 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 09:50:20,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:50:20,235.235 INFO    ] Checking for system updates...
[2026-10-25 09:50:20,270.270 INFO    ] 200
[2026-10-25 09:50:20,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:20,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:20,336.336 INFO    ] No update needed
[2026-10-25 09:50:20,339.339 INFO    ] Checking for camera pi updates...
[2026-10-25 09:50:20,372.372 INFO    ] 200
[2026-10-25 09:50:20,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:20,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:50:20,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:20,461.461 INFO    ] No camera update needed
[2026-10-25 09:50:20,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:50:20,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:50:20,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:50:20,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:50:22,517.517 INFO    ] ================================================
[2026-10-25 09:50:22,531.531 INFO    ] Launching Daemon at Sun Oct 25 09:50:22 IST 2026
[2026-10-25 09:50:22,542.542 INFO    ] ================================================
[2026-10-25 09:50:23,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:50:23
[2026-10-25 09:50:23,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:50:23,965.965 INFO    ] Initializing speech engine...
[2026-10-25 09:50:23,973.973 INFO    ] 2026-10-25 09:50:23
[2026-10-25 09:50:24,229.229 INFO    ] 2026-10-25 09:50:24
[2026-10-25 09:50:24,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:50:24,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:50:24,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:50:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:50:24,692.692 INFO    ] time= 25/10/2026 09:50:24
[2026-10-25 09:50:24,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:50:24,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:50:24,834.834 INFO    ] No existing commands found in stream
[2026-10-25 09:50:29,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:50:29,848.848 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 09:50:36,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:50:36,647.647 INFO    ] Checking for system updates...
[2026-10-25 09:50:36,684.684 INFO    ] 200
[2026-10-25 09:50:36,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:36,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:36,743.743 INFO    ] No update needed
[2026-10-25 09:50:36,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 09:50:36,780.780 INFO    ] 200
[2026-10-25 09:50:36,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:36,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:50:36,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:36,886.886 INFO    ] No camera update needed
[2026-10-25 09:50:36,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:50:36,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:50:36,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:50:36,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:50:38,944.944 INFO    ] ================================================
[2026-10-25 09:50:38,992.992 INFO    ] Launching Daemon at Sun Oct 25 09:50:38 IST 2026
[2026-10-25 09:50:39,003.003 INFO    ] ================================================
[2026-10-25 09:50:39,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:50:39
[2026-10-25 09:50:40,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:50:40,477.477 INFO    ] Initializing speech engine...
[2026-10-25 09:50:40,487.487 INFO    ] 2026-10-25 09:50:40
[2026-10-25 09:50:40,732.732 INFO    ] 2026-10-25 09:50:40
[2026-10-25 09:50:40,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:50:40,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:50:40,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:50:41,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:50:41,099.099 INFO    ] time= 25/10/2026 09:50:41
[2026-10-25 09:50:41,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:50:41,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:50:41,275.275 INFO    ] No existing commands found in stream
[2026-10-25 09:50:46,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:50:46,303.303 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 09:50:48,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:50:48,797.797 INFO    ] Checking for system updates...
[2026-10-25 09:50:48,832.832 INFO    ] 200
[2026-10-25 09:50:48,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:48,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:48,891.891 INFO    ] No update needed
[2026-10-25 09:50:48,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 09:50:48,927.927 INFO    ] 200
[2026-10-25 09:50:48,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:48,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:50:49,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:49,020.020 INFO    ] No camera update needed
[2026-10-25 09:50:49,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:50:49,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:50:49,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:50:49,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:50:51,132.132 INFO    ] ================================================
[2026-10-25 09:50:51,147.147 INFO    ] Launching Daemon at Sun Oct 25 09:50:51 IST 2026
[2026-10-25 09:50:51,157.157 INFO    ] ================================================
[2026-10-25 09:50:51,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:50:51
[2026-10-25 09:50:52,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:50:52,567.567 INFO    ] Initializing speech engine...
[2026-10-25 09:50:52,582.582 INFO    ] 2026-10-25 09:50:52
[2026-10-25 09:50:52,847.847 INFO    ] 2026-10-25 09:50:52
[2026-10-25 09:50:52,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:50:53,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:50:53,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:50:53,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:50:53,295.295 INFO    ] time= 25/10/2026 09:50:53
[2026-10-25 09:50:53,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:50:53,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:50:53,476.476 INFO    ] No existing commands found in stream
[2026-10-25 09:50:58,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:50:58,490.490 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 09:50:59,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:50:59,560.560 INFO    ] Checking for system updates...
[2026-10-25 09:50:59,595.595 INFO    ] 200
[2026-10-25 09:50:59,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:59,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:59,659.659 INFO    ] No update needed
[2026-10-25 09:50:59,661.661 INFO    ] Checking for camera pi updates...
[2026-10-25 09:50:59,698.698 INFO    ] 200
[2026-10-25 09:50:59,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:50:59,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:50:59,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:50:59,795.795 INFO    ] No camera update needed
[2026-10-25 09:50:59,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:50:59,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:50:59,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:50:59,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:51:01,855.855 INFO    ] ================================================
[2026-10-25 09:51:01,876.876 INFO    ] Launching Daemon at Sun Oct 25 09:51:01 IST 2026
[2026-10-25 09:51:01,895.895 INFO    ] ================================================
[2026-10-25 09:51:02,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:51:02
[2026-10-25 09:51:03,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:51:03,461.461 INFO    ] Initializing speech engine...
[2026-10-25 09:51:03,486.486 INFO    ] 2026-10-25 09:51:03
[2026-10-25 09:51:03,759.759 INFO    ] 2026-10-25 09:51:03
[2026-10-25 09:51:03,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:51:06,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:51:06,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:51:06,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:51:06,670.670 INFO    ] time= 25/10/2026 09:51:06
[2026-10-25 09:51:06,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:51:06,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:51:06,724.724 INFO    ] No existing commands found in stream
[2026-10-25 09:51:11,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:51:11,736.736 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 09:51:14,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:51:14,775.775 INFO    ] Checking for system updates...
[2026-10-25 09:51:14,811.811 INFO    ] 200
[2026-10-25 09:51:14,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:14,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:51:14,869.869 INFO    ] No update needed
[2026-10-25 09:51:14,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 09:51:14,904.904 INFO    ] 200
[2026-10-25 09:51:14,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:14,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:51:14,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:51:14,995.995 INFO    ] No camera update needed
[2026-10-25 09:51:14,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:51:15,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:51:15,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:51:15,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:51:17,050.050 INFO    ] ================================================
[2026-10-25 09:51:17,065.065 INFO    ] Launching Daemon at Sun Oct 25 09:51:17 IST 2026
[2026-10-25 09:51:17,076.076 INFO    ] ================================================
[2026-10-25 09:51:17,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:51:17
[2026-10-25 09:51:18,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:51:18,482.482 INFO    ] Initializing speech engine...
[2026-10-25 09:51:18,507.507 INFO    ] 2026-10-25 09:51:18
[2026-10-25 09:51:18,776.776 INFO    ] 2026-10-25 09:51:18
[2026-10-25 09:51:18,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:51:19,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:51:19,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:51:19,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:51:19,196.196 INFO    ] time= 25/10/2026 09:51:19
[2026-10-25 09:51:19,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:51:19,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:51:19,370.370 INFO    ] No existing commands found in stream
[2026-10-25 09:51:24,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:51:24,395.395 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 09:51:27,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:51:27,932.932 INFO    ] Checking for system updates...
[2026-10-25 09:51:27,968.968 INFO    ] 200
[2026-10-25 09:51:27,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:28,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:51:28,026.026 INFO    ] No update needed
[2026-10-25 09:51:28,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 09:51:28,061.061 INFO    ] 200
[2026-10-25 09:51:28,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:28,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:51:28,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:51:28,166.166 INFO    ] No camera update needed
[2026-10-25 09:51:28,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:51:28,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:51:28,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:51:28,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:51:30,222.222 INFO    ] ================================================
[2026-10-25 09:51:30,236.236 INFO    ] Launching Daemon at Sun Oct 25 09:51:30 IST 2026
[2026-10-25 09:51:30,247.247 INFO    ] ================================================
[2026-10-25 09:51:30,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:51:30
[2026-10-25 09:51:31,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:51:31,716.716 INFO    ] Initializing speech engine...
[2026-10-25 09:51:31,728.728 INFO    ] 2026-10-25 09:51:31
[2026-10-25 09:51:31,995.995 INFO    ] 2026-10-25 09:51:31
[2026-10-25 09:51:32,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:51:32,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:51:32,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:51:32,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:51:32,507.507 INFO    ] time= 25/10/2026 09:51:32
[2026-10-25 09:51:32,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:51:32,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:51:32,724.724 INFO    ] No existing commands found in stream
[2026-10-25 09:51:37,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:51:37,752.752 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 09:51:39,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:51:39,075.075 INFO    ] Checking for system updates...
[2026-10-25 09:51:39,111.111 INFO    ] 200
[2026-10-25 09:51:39,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:39,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:51:39,173.173 INFO    ] No update needed
[2026-10-25 09:51:39,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 09:51:39,213.213 INFO    ] 200
[2026-10-25 09:51:39,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:39,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:51:39,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:51:39,317.317 INFO    ] No camera update needed
[2026-10-25 09:51:39,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:51:39,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:51:39,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:51:39,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:51:41,373.373 INFO    ] ================================================
[2026-10-25 09:51:41,388.388 INFO    ] Launching Daemon at Sun Oct 25 09:51:41 IST 2026
[2026-10-25 09:51:41,398.398 INFO    ] ================================================
[2026-10-25 09:51:41,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:51:41
[2026-10-25 09:51:42,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:51:42,845.845 INFO    ] Initializing speech engine...
[2026-10-25 09:51:42,851.851 INFO    ] 2026-10-25 09:51:42
[2026-10-25 09:51:43,095.095 INFO    ] 2026-10-25 09:51:43
[2026-10-25 09:51:43,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:51:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:51:43,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:51:43,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:51:43,582.582 INFO    ] time= 25/10/2026 09:51:43
[2026-10-25 09:51:43,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:51:43,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:51:43,732.732 INFO    ] No existing commands found in stream
[2026-10-25 09:51:48,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:51:48,771.771 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 09:51:53,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:51:53,120.120 INFO    ] Checking for system updates...
[2026-10-25 09:51:53,157.157 INFO    ] 200
[2026-10-25 09:51:53,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:53,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:51:53,214.214 INFO    ] No update needed
[2026-10-25 09:51:53,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 09:51:53,250.250 INFO    ] 200
[2026-10-25 09:51:53,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:51:53,293.293 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:51:53,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:51:53,346.346 INFO    ] No camera update needed
[2026-10-25 09:51:53,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:51:53,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:51:53,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:51:53,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:51:55,400.400 INFO    ] ================================================
[2026-10-25 09:51:55,416.416 INFO    ] Launching Daemon at Sun Oct 25 09:51:55 IST 2026
[2026-10-25 09:51:55,426.426 INFO    ] ================================================
[2026-10-25 09:51:55,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:51:55
[2026-10-25 09:51:56,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:51:56,847.847 INFO    ] Initializing speech engine...
[2026-10-25 09:51:56,859.859 INFO    ] 2026-10-25 09:51:56
[2026-10-25 09:51:57,105.105 INFO    ] 2026-10-25 09:51:57
[2026-10-25 09:51:57,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:51:57,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:51:57,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:51:57,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:51:57,552.552 INFO    ] time= 25/10/2026 09:51:57
[2026-10-25 09:51:57,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:51:57,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:51:57,719.719 INFO    ] No existing commands found in stream
[2026-10-25 09:52:02,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:52:02,735.735 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 09:52:03,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:52:03,313.313 INFO    ] Checking for system updates...
[2026-10-25 09:52:03,351.351 INFO    ] 200
[2026-10-25 09:52:03,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:03,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:03,414.414 INFO    ] No update needed
[2026-10-25 09:52:03,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 09:52:03,450.450 INFO    ] 200
[2026-10-25 09:52:03,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:03,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:52:03,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:03,545.545 INFO    ] No camera update needed
[2026-10-25 09:52:03,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:52:03,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:52:03,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:52:03,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:52:05,601.601 INFO    ] ================================================
[2026-10-25 09:52:05,616.616 INFO    ] Launching Daemon at Sun Oct 25 09:52:05 IST 2026
[2026-10-25 09:52:05,627.627 INFO    ] ================================================
[2026-10-25 09:52:06,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:52:06
[2026-10-25 09:52:06,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:52:07,036.036 INFO    ] Initializing speech engine...
[2026-10-25 09:52:07,049.049 INFO    ] 2026-10-25 09:52:07
[2026-10-25 09:52:07,329.329 INFO    ] 2026-10-25 09:52:07
[2026-10-25 09:52:07,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:52:08,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:52:08,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:52:08,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:52:08,419.419 INFO    ] time= 25/10/2026 09:52:08
[2026-10-25 09:52:08,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:52:08,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:52:08,543.543 INFO    ] No existing commands found in stream
[2026-10-25 09:52:13,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:52:13,575.575 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 09:52:17,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:52:17,365.365 INFO    ] Checking for system updates...
[2026-10-25 09:52:17,402.402 INFO    ] 200
[2026-10-25 09:52:17,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:17,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:17,459.459 INFO    ] No update needed
[2026-10-25 09:52:17,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 09:52:17,495.495 INFO    ] 200
[2026-10-25 09:52:17,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:17,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:52:17,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:17,588.588 INFO    ] No camera update needed
[2026-10-25 09:52:17,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:52:17,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:52:17,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:52:17,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:52:19,643.643 INFO    ] ================================================
[2026-10-25 09:52:19,658.658 INFO    ] Launching Daemon at Sun Oct 25 09:52:19 IST 2026
[2026-10-25 09:52:19,668.668 INFO    ] ================================================
[2026-10-25 09:52:20,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:52:20
[2026-10-25 09:52:20,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:52:21,245.245 INFO    ] Initializing speech engine...
[2026-10-25 09:52:21,255.255 INFO    ] 2026-10-25 09:52:21
[2026-10-25 09:52:21,541.541 INFO    ] 2026-10-25 09:52:21
[2026-10-25 09:52:21,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:52:21,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:52:21,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:52:21,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:52:21,995.995 INFO    ] time= 25/10/2026 09:52:21
[2026-10-25 09:52:22,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:52:22,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:52:22,143.143 INFO    ] No existing commands found in stream
[2026-10-25 09:52:27,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:52:27,167.167 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 09:52:28,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:52:28,267.267 INFO    ] Checking for system updates...
[2026-10-25 09:52:28,303.303 INFO    ] 200
[2026-10-25 09:52:28,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:28,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:28,361.361 INFO    ] No update needed
[2026-10-25 09:52:28,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 09:52:28,397.397 INFO    ] 200
[2026-10-25 09:52:28,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:28,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:52:28,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:52:28,492.492 INFO    ] No camera update needed
[2026-10-25 09:52:28,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:52:28,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:52:28,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:52:28,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:52:30,546.546 INFO    ] ================================================
[2026-10-25 09:52:30,561.561 INFO    ] Launching Daemon at Sun Oct 25 09:52:30 IST 2026
[2026-10-25 09:52:30,572.572 INFO    ] ================================================
[2026-10-25 09:52:31,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:52:31
[2026-10-25 09:52:31,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:52:32,232.232 INFO    ] Initializing speech engine...
[2026-10-25 09:52:32,244.244 INFO    ] 2026-10-25 09:52:32
[2026-10-25 09:52:32,525.525 INFO    ] 2026-10-25 09:52:32
[2026-10-25 09:52:32,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:52:32,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:52:32,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:52:32,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:52:32,997.997 INFO    ] time= 25/10/2026 09:52:32
[2026-10-25 09:52:33,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:52:33,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:52:33,191.191 INFO    ] No existing commands found in stream
[2026-10-25 09:52:38,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:52:38,204.204 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 09:52:39,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:52:39,469.469 INFO    ] Checking for system updates...
[2026-10-25 09:52:39,506.506 INFO    ] 200
[2026-10-25 09:52:39,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:39,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:52:39,571.571 INFO    ] No update needed
[2026-10-25 09:52:39,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 09:52:39,615.615 INFO    ] 200
[2026-10-25 09:52:39,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:39,661.661 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:52:39,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:52:39,815.815 INFO    ] No camera update needed
[2026-10-25 09:52:39,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:52:39,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:52:39,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:52:39,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:52:41,872.872 INFO    ] ================================================
[2026-10-25 09:52:41,887.887 INFO    ] Launching Daemon at Sun Oct 25 09:52:41 IST 2026
[2026-10-25 09:52:41,898.898 INFO    ] ================================================
[2026-10-25 09:52:42,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:52:42
[2026-10-25 09:52:43,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:52:43,315.315 INFO    ] Initializing speech engine...
[2026-10-25 09:52:43,325.325 INFO    ] 2026-10-25 09:52:43
[2026-10-25 09:52:43,570.570 INFO    ] 2026-10-25 09:52:43
[2026-10-25 09:52:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:52:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:52:43,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:52:43,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:52:44,044.044 INFO    ] time= 25/10/2026 09:52:44
[2026-10-25 09:52:44,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:52:44,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:52:44,187.187 INFO    ] No existing commands found in stream
[2026-10-25 09:52:49,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:52:49,201.201 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 09:52:51,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:52:51,358.358 INFO    ] Checking for system updates...
[2026-10-25 09:52:51,396.396 INFO    ] 200
[2026-10-25 09:52:51,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:51,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:52:51,454.454 INFO    ] No update needed
[2026-10-25 09:52:51,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 09:52:51,490.490 INFO    ] 200
[2026-10-25 09:52:51,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:52:51,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:52:51,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:52:51,592.592 INFO    ] No camera update needed
[2026-10-25 09:52:51,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:52:51,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:52:51,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:52:51,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:52:53,646.646 INFO    ] ================================================
[2026-10-25 09:52:53,662.662 INFO    ] Launching Daemon at Sun Oct 25 09:52:53 IST 2026
[2026-10-25 09:52:53,673.673 INFO    ] ================================================
[2026-10-25 09:52:54,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:52:54
[2026-10-25 09:52:54,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:52:55,068.068 INFO    ] Initializing speech engine...
[2026-10-25 09:52:55,083.083 INFO    ] 2026-10-25 09:52:55
[2026-10-25 09:52:55,343.343 INFO    ] 2026-10-25 09:52:55
[2026-10-25 09:52:55,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:52:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:52:55,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:52:55,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:52:55,811.811 INFO    ] time= 25/10/2026 09:52:55
[2026-10-25 09:52:55,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:52:55,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:52:55,957.957 INFO    ] No existing commands found in stream
[2026-10-25 09:53:00,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:53:00,971.971 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 09:53:02,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:53:02,786.786 INFO    ] Checking for system updates...
[2026-10-25 09:53:02,824.824 INFO    ] 200
[2026-10-25 09:53:02,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:02,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:02,900.900 INFO    ] No update needed
[2026-10-25 09:53:02,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 09:53:02,950.950 INFO    ] 200
[2026-10-25 09:53:02,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:02,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:53:03,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:03,057.057 INFO    ] No camera update needed
[2026-10-25 09:53:03,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:53:03,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:53:03,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:53:03,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:53:05,111.111 INFO    ] ================================================
[2026-10-25 09:53:05,126.126 INFO    ] Launching Daemon at Sun Oct 25 09:53:05 IST 2026
[2026-10-25 09:53:05,136.136 INFO    ] ================================================
[2026-10-25 09:53:05,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:53:05
[2026-10-25 09:53:06,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:53:06,529.529 INFO    ] Initializing speech engine...
[2026-10-25 09:53:06,544.544 INFO    ] 2026-10-25 09:53:06
[2026-10-25 09:53:06,806.806 INFO    ] 2026-10-25 09:53:06
[2026-10-25 09:53:06,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:53:09,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:53:09,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:53:09,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:53:09,355.355 INFO    ] time= 25/10/2026 09:53:09
[2026-10-25 09:53:09,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:53:09,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:53:09,494.494 INFO    ] No existing commands found in stream
[2026-10-25 09:53:14,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:53:14,527.527 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 09:53:15,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:53:15,457.457 INFO    ] Checking for system updates...
[2026-10-25 09:53:15,499.499 INFO    ] 200
[2026-10-25 09:53:15,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:15,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:15,557.557 INFO    ] No update needed
[2026-10-25 09:53:15,560.560 INFO    ] Checking for camera pi updates...
[2026-10-25 09:53:15,594.594 INFO    ] 200
[2026-10-25 09:53:15,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:15,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:53:15,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:15,697.697 INFO    ] No camera update needed
[2026-10-25 09:53:15,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:53:15,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:53:15,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:53:15,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:53:17,756.756 INFO    ] ================================================
[2026-10-25 09:53:17,771.771 INFO    ] Launching Daemon at Sun Oct 25 09:53:17 IST 2026
[2026-10-25 09:53:17,782.782 INFO    ] ================================================
[2026-10-25 09:53:18,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:53:18
[2026-10-25 09:53:18,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:53:19,196.196 INFO    ] Initializing speech engine...
[2026-10-25 09:53:19,205.205 INFO    ] 2026-10-25 09:53:19
[2026-10-25 09:53:19,457.457 INFO    ] 2026-10-25 09:53:19
[2026-10-25 09:53:19,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:53:19,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:53:19,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:53:19,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:53:19,818.818 INFO    ] time= 25/10/2026 09:53:19
[2026-10-25 09:53:19,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:53:19,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:53:19,989.989 INFO    ] No existing commands found in stream
[2026-10-25 09:53:25,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:53:25,022.022 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 09:53:28,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:53:28,238.238 INFO    ] Checking for system updates...
[2026-10-25 09:53:28,275.275 INFO    ] 200
[2026-10-25 09:53:28,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:28,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:28,333.333 INFO    ] No update needed
[2026-10-25 09:53:28,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 09:53:28,369.369 INFO    ] 200
[2026-10-25 09:53:28,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:28,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:53:28,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:28,467.467 INFO    ] No camera update needed
[2026-10-25 09:53:28,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:53:28,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:53:28,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:53:28,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:53:30,522.522 INFO    ] ================================================
[2026-10-25 09:53:30,537.537 INFO    ] Launching Daemon at Sun Oct 25 09:53:30 IST 2026
[2026-10-25 09:53:30,547.547 INFO    ] ================================================
[2026-10-25 09:53:31,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:53:31
[2026-10-25 09:53:31,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:53:32,011.011 INFO    ] Initializing speech engine...
[2026-10-25 09:53:32,027.027 INFO    ] 2026-10-25 09:53:32
[2026-10-25 09:53:32,324.324 INFO    ] 2026-10-25 09:53:32
[2026-10-25 09:53:32,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:53:32,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:53:32,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:53:32,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:53:32,694.694 INFO    ] time= 25/10/2026 09:53:32
[2026-10-25 09:53:32,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:53:32,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:53:32,810.810 INFO    ] No existing commands found in stream
[2026-10-25 09:53:37,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:53:37,829.829 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 09:53:40,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:53:40,143.143 INFO    ] Checking for system updates...
[2026-10-25 09:53:40,179.179 INFO    ] 200
[2026-10-25 09:53:40,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:40,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:40,240.240 INFO    ] No update needed
[2026-10-25 09:53:40,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 09:53:40,280.280 INFO    ] 200
[2026-10-25 09:53:40,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:40,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:53:40,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:53:40,378.378 INFO    ] No camera update needed
[2026-10-25 09:53:40,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:53:40,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:53:40,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:53:40,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:53:42,441.441 INFO    ] ================================================
[2026-10-25 09:53:42,455.455 INFO    ] Launching Daemon at Sun Oct 25 09:53:42 IST 2026
[2026-10-25 09:53:42,466.466 INFO    ] ================================================
[2026-10-25 09:53:43,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:53:43
[2026-10-25 09:53:43,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:53:44,152.152 INFO    ] Initializing speech engine...
[2026-10-25 09:53:44,160.160 INFO    ] 2026-10-25 09:53:44
[2026-10-25 09:53:44,472.472 INFO    ] 2026-10-25 09:53:44
[2026-10-25 09:53:44,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:53:44,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:53:44,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:53:44,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:53:44,972.972 INFO    ] time= 25/10/2026 09:53:44
[2026-10-25 09:53:44,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:53:45,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:53:45,118.118 INFO    ] No existing commands found in stream
[2026-10-25 09:53:50,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:53:50,143.143 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 09:53:51,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:53:51,009.009 INFO    ] Checking for system updates...
[2026-10-25 09:53:51,054.054 INFO    ] 200
[2026-10-25 09:53:51,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:51,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:53:51,122.122 INFO    ] No update needed
[2026-10-25 09:53:51,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 09:53:51,158.158 INFO    ] 200
[2026-10-25 09:53:51,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:53:51,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:53:51,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:53:51,261.261 INFO    ] No camera update needed
[2026-10-25 09:53:51,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:53:51,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:53:51,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:53:51,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:53:53,315.315 INFO    ] ================================================
[2026-10-25 09:53:53,330.330 INFO    ] Launching Daemon at Sun Oct 25 09:53:53 IST 2026
[2026-10-25 09:53:53,341.341 INFO    ] ================================================
[2026-10-25 09:53:54,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:53:53
[2026-10-25 09:53:54,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:53:54,995.995 INFO    ] Initializing speech engine...
[2026-10-25 09:53:55,003.003 INFO    ] 2026-10-25 09:53:54
[2026-10-25 09:53:55,323.323 INFO    ] 2026-10-25 09:53:55
[2026-10-25 09:53:55,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:53:55,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:53:55,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:53:55,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:53:55,827.827 INFO    ] time= 25/10/2026 09:53:55
[2026-10-25 09:53:55,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:53:55,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:53:55,972.972 INFO    ] No existing commands found in stream
[2026-10-25 09:54:00,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:54:00,997.997 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 09:54:03,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:54:03,356.356 INFO    ] Checking for system updates...
[2026-10-25 09:54:03,394.394 INFO    ] 200
[2026-10-25 09:54:03,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:03,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:03,454.454 INFO    ] No update needed
[2026-10-25 09:54:03,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 09:54:03,490.490 INFO    ] 200
[2026-10-25 09:54:03,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:03,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:54:03,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:03,587.587 INFO    ] No camera update needed
[2026-10-25 09:54:03,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:54:03,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:54:03,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:54:03,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:54:05,643.643 INFO    ] ================================================
[2026-10-25 09:54:05,658.658 INFO    ] Launching Daemon at Sun Oct 25 09:54:05 IST 2026
[2026-10-25 09:54:05,669.669 INFO    ] ================================================
[2026-10-25 09:54:06,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:54:06
[2026-10-25 09:54:07,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:54:07,354.354 INFO    ] Initializing speech engine...
[2026-10-25 09:54:07,366.366 INFO    ] 2026-10-25 09:54:07
[2026-10-25 09:54:07,655.655 INFO    ] 2026-10-25 09:54:07
[2026-10-25 09:54:07,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:54:07,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:54:07,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:54:08,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:54:08,188.188 INFO    ] time= 25/10/2026 09:54:08
[2026-10-25 09:54:08,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:54:08,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:54:08,344.344 INFO    ] No existing commands found in stream
[2026-10-25 09:54:13,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:54:13,382.382 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 09:54:17,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:54:17,187.187 INFO    ] Checking for system updates...
[2026-10-25 09:54:17,229.229 INFO    ] 200
[2026-10-25 09:54:17,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:17,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:17,296.296 INFO    ] No update needed
[2026-10-25 09:54:17,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 09:54:17,337.337 INFO    ] 200
[2026-10-25 09:54:17,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:17,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:54:17,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:17,452.452 INFO    ] No camera update needed
[2026-10-25 09:54:17,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:54:17,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:54:17,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:54:17,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:54:19,508.508 INFO    ] ================================================
[2026-10-25 09:54:19,523.523 INFO    ] Launching Daemon at Sun Oct 25 09:54:19 IST 2026
[2026-10-25 09:54:19,534.534 INFO    ] ================================================
[2026-10-25 09:54:20,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:54:20
[2026-10-25 09:54:20,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:54:21,079.079 INFO    ] Initializing speech engine...
[2026-10-25 09:54:21,088.088 INFO    ] 2026-10-25 09:54:21
[2026-10-25 09:54:21,385.385 INFO    ] 2026-10-25 09:54:21
[2026-10-25 09:54:21,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:54:21,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:54:21,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:54:21,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:54:21,766.766 INFO    ] time= 25/10/2026 09:54:21
[2026-10-25 09:54:21,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:54:21,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:54:21,889.889 INFO    ] No existing commands found in stream
[2026-10-25 09:54:26,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:54:26,910.910 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 09:54:30,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:54:30,694.694 INFO    ] Checking for system updates...
[2026-10-25 09:54:30,731.731 INFO    ] 200
[2026-10-25 09:54:30,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:30,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:30,798.798 INFO    ] No update needed
[2026-10-25 09:54:30,800.800 INFO    ] Checking for camera pi updates...
[2026-10-25 09:54:30,838.838 INFO    ] 200
[2026-10-25 09:54:30,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:30,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:54:30,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:30,929.929 INFO    ] No camera update needed
[2026-10-25 09:54:30,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:54:30,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:54:30,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:54:30,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:54:32,986.986 INFO    ] ================================================
[2026-10-25 09:54:33,001.001 INFO    ] Launching Daemon at Sun Oct 25 09:54:32 IST 2026
[2026-10-25 09:54:33,011.011 INFO    ] ================================================
[2026-10-25 09:54:33,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:54:33
[2026-10-25 09:54:34,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:54:34,416.416 INFO    ] Initializing speech engine...
[2026-10-25 09:54:34,425.425 INFO    ] 2026-10-25 09:54:34
[2026-10-25 09:54:34,716.716 INFO    ] 2026-10-25 09:54:34
[2026-10-25 09:54:34,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:54:34,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:54:34,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:54:35,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:54:35,774.774 INFO    ] time= 25/10/2026 09:54:35
[2026-10-25 09:54:35,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:54:35,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:54:35,951.951 INFO    ] No existing commands found in stream
[2026-10-25 09:54:40,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:54:40,980.980 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 09:54:41,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:54:41,659.659 INFO    ] Checking for system updates...
[2026-10-25 09:54:41,695.695 INFO    ] 200
[2026-10-25 09:54:41,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:41,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:41,753.753 INFO    ] No update needed
[2026-10-25 09:54:41,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 09:54:41,789.789 INFO    ] 200
[2026-10-25 09:54:41,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:41,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:54:41,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:54:41,998.998 INFO    ] No camera update needed
[2026-10-25 09:54:42,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:54:42,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:54:42,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:54:42,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:54:44,053.053 INFO    ] ================================================
[2026-10-25 09:54:44,068.068 INFO    ] Launching Daemon at Sun Oct 25 09:54:44 IST 2026
[2026-10-25 09:54:44,079.079 INFO    ] ================================================
[2026-10-25 09:54:44,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:54:44
[2026-10-25 09:54:45,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:54:45,501.501 INFO    ] Initializing speech engine...
[2026-10-25 09:54:45,525.525 INFO    ] 2026-10-25 09:54:45
[2026-10-25 09:54:45,778.778 INFO    ] 2026-10-25 09:54:45
[2026-10-25 09:54:45,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:54:46,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:54:46,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:54:46,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:54:46,237.237 INFO    ] time= 25/10/2026 09:54:46
[2026-10-25 09:54:46,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:54:46,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:54:46,399.399 INFO    ] No existing commands found in stream
[2026-10-25 09:54:51,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:54:51,426.426 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 09:54:54,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:54:54,020.020 INFO    ] Checking for system updates...
[2026-10-25 09:54:54,062.062 INFO    ] 200
[2026-10-25 09:54:54,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:54,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:54:54,129.129 INFO    ] No update needed
[2026-10-25 09:54:54,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 09:54:54,171.171 INFO    ] 200
[2026-10-25 09:54:54,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:54:54,217.217 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:54:54,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:54:54,276.276 INFO    ] No camera update needed
[2026-10-25 09:54:54,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:54:54,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:54:54,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:54:54,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:54:56,337.337 INFO    ] ================================================
[2026-10-25 09:54:56,352.352 INFO    ] Launching Daemon at Sun Oct 25 09:54:56 IST 2026
[2026-10-25 09:54:56,363.363 INFO    ] ================================================
[2026-10-25 09:54:57,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:54:57
[2026-10-25 09:54:57,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:54:57,983.983 INFO    ] Initializing speech engine...
[2026-10-25 09:54:57,997.997 INFO    ] 2026-10-25 09:54:57
[2026-10-25 09:54:58,259.259 INFO    ] 2026-10-25 09:54:58
[2026-10-25 09:54:58,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:54:58,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:54:58,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:54:58,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:54:58,639.639 INFO    ] time= 25/10/2026 09:54:58
[2026-10-25 09:54:58,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:54:58,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:54:58,763.763 INFO    ] No existing commands found in stream
[2026-10-25 09:55:03,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:55:03,776.776 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 09:55:06,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:55:06,798.798 INFO    ] Checking for system updates...
[2026-10-25 09:55:06,835.835 INFO    ] 200
[2026-10-25 09:55:06,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:06,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:55:06,893.893 INFO    ] No update needed
[2026-10-25 09:55:06,895.895 INFO    ] Checking for camera pi updates...
[2026-10-25 09:55:06,929.929 INFO    ] 200
[2026-10-25 09:55:06,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:06,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:55:07,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:55:07,022.022 INFO    ] No camera update needed
[2026-10-25 09:55:07,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:55:07,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:55:07,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:55:07,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:55:09,077.077 INFO    ] ================================================
[2026-10-25 09:55:09,093.093 INFO    ] Launching Daemon at Sun Oct 25 09:55:09 IST 2026
[2026-10-25 09:55:09,103.103 INFO    ] ================================================
[2026-10-25 09:55:09,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:55:09
[2026-10-25 09:55:10,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:55:10,544.544 INFO    ] Initializing speech engine...
[2026-10-25 09:55:10,563.563 INFO    ] 2026-10-25 09:55:10
[2026-10-25 09:55:10,809.809 INFO    ] 2026-10-25 09:55:10
[2026-10-25 09:55:10,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:55:11,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:55:11,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:55:11,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:55:11,281.281 INFO    ] time= 25/10/2026 09:55:11
[2026-10-25 09:55:11,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:55:11,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:55:11,434.434 INFO    ] No existing commands found in stream
[2026-10-25 09:55:16,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:55:16,449.449 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 09:55:20,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:55:20,476.476 INFO    ] Checking for system updates...
[2026-10-25 09:55:20,512.512 INFO    ] 200
[2026-10-25 09:55:20,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:20,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:55:20,578.578 INFO    ] No update needed
[2026-10-25 09:55:20,581.581 INFO    ] Checking for camera pi updates...
[2026-10-25 09:55:20,615.615 INFO    ] 200
[2026-10-25 09:55:20,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:20,659.659 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:55:20,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:55:20,720.720 INFO    ] No camera update needed
[2026-10-25 09:55:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:55:20,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:55:20,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:55:20,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:55:22,779.779 INFO    ] ================================================
[2026-10-25 09:55:22,795.795 INFO    ] Launching Daemon at Sun Oct 25 09:55:22 IST 2026
[2026-10-25 09:55:22,806.806 INFO    ] ================================================
[2026-10-25 09:55:23,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:55:23
[2026-10-25 09:55:23,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:55:24,231.231 INFO    ] Initializing speech engine...
[2026-10-25 09:55:24,240.240 INFO    ] 2026-10-25 09:55:24
[2026-10-25 09:55:24,491.491 INFO    ] 2026-10-25 09:55:24
[2026-10-25 09:55:24,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:55:24,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:55:24,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:55:24,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:55:24,867.867 INFO    ] time= 25/10/2026 09:55:24
[2026-10-25 09:55:24,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:55:24,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:55:25,028.028 INFO    ] No existing commands found in stream
[2026-10-25 09:55:30,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:55:30,056.056 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 09:55:32,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:55:32,402.402 INFO    ] Checking for system updates...
[2026-10-25 09:55:32,446.446 INFO    ] 200
[2026-10-25 09:55:32,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:32,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:55:32,516.516 INFO    ] No update needed
[2026-10-25 09:55:32,519.519 INFO    ] Checking for camera pi updates...
[2026-10-25 09:55:32,556.556 INFO    ] 200
[2026-10-25 09:55:32,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:32,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:55:32,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:55:32,648.648 INFO    ] No camera update needed
[2026-10-25 09:55:32,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:55:32,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:55:32,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:55:32,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:55:34,712.712 INFO    ] ================================================
[2026-10-25 09:55:34,728.728 INFO    ] Launching Daemon at Sun Oct 25 09:55:34 IST 2026
[2026-10-25 09:55:34,740.740 INFO    ] ================================================
[2026-10-25 09:55:35,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:55:35
[2026-10-25 09:55:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:55:36,383.383 INFO    ] Initializing speech engine...
[2026-10-25 09:55:36,390.390 INFO    ] 2026-10-25 09:55:36
[2026-10-25 09:55:36,677.677 INFO    ] 2026-10-25 09:55:36
[2026-10-25 09:55:36,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:55:36,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:55:36,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:55:37,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:55:37,143.143 INFO    ] time= 25/10/2026 09:55:37
[2026-10-25 09:55:37,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:55:37,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:55:37,357.357 INFO    ] No existing commands found in stream
[2026-10-25 09:55:42,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:55:42,382.382 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 09:55:46,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:55:46,642.642 INFO    ] Checking for system updates...
[2026-10-25 09:55:46,684.684 INFO    ] 200
[2026-10-25 09:55:46,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:46,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:55:46,752.752 INFO    ] No update needed
[2026-10-25 09:55:46,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 09:55:46,791.791 INFO    ] 200
[2026-10-25 09:55:46,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:55:46,840.840 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:55:46,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:55:46,907.907 INFO    ] No camera update needed
[2026-10-25 09:55:46,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:55:46,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:55:46,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:55:46,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:55:48,963.963 INFO    ] ================================================
[2026-10-25 09:55:48,979.979 INFO    ] Launching Daemon at Sun Oct 25 09:55:48 IST 2026
[2026-10-25 09:55:48,990.990 INFO    ] ================================================
[2026-10-25 09:55:49,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:55:49
[2026-10-25 09:55:50,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:55:50,647.647 INFO    ] Initializing speech engine...
[2026-10-25 09:55:50,661.661 INFO    ] 2026-10-25 09:55:50
[2026-10-25 09:55:50,947.947 INFO    ] 2026-10-25 09:55:50
[2026-10-25 09:55:50,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:55:51,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:55:51,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:55:51,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:55:51,404.404 INFO    ] time= 25/10/2026 09:55:51
[2026-10-25 09:55:51,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:55:51,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:55:51,566.566 INFO    ] No existing commands found in stream
[2026-10-25 09:55:56,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:55:56,582.582 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 09:55:59,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:56:00,000.000 INFO    ] Checking for system updates...
[2026-10-25 09:56:00,037.037 INFO    ] 200
[2026-10-25 09:56:00,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:00,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:00,096.096 INFO    ] No update needed
[2026-10-25 09:56:00,099.099 INFO    ] Checking for camera pi updates...
[2026-10-25 09:56:00,137.137 INFO    ] 200
[2026-10-25 09:56:00,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:00,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:56:00,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:00,232.232 INFO    ] No camera update needed
[2026-10-25 09:56:00,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:56:00,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:56:00,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:56:00,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:56:02,288.288 INFO    ] ================================================
[2026-10-25 09:56:02,310.310 INFO    ] Launching Daemon at Sun Oct 25 09:56:02 IST 2026
[2026-10-25 09:56:02,332.332 INFO    ] ================================================
[2026-10-25 09:56:03,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:56:03
[2026-10-25 09:56:03,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:56:04,148.148 INFO    ] Initializing speech engine...
[2026-10-25 09:56:04,157.157 INFO    ] 2026-10-25 09:56:04
[2026-10-25 09:56:04,446.446 INFO    ] 2026-10-25 09:56:04
[2026-10-25 09:56:04,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:56:04,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:56:04,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:56:04,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:56:04,982.982 INFO    ] time= 25/10/2026 09:56:04
[2026-10-25 09:56:05,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:56:05,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:56:05,139.139 INFO    ] No existing commands found in stream
[2026-10-25 09:56:10,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:56:10,157.157 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 09:56:13,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:56:13,545.545 INFO    ] Checking for system updates...
[2026-10-25 09:56:13,587.587 INFO    ] 200
[2026-10-25 09:56:13,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:13,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:13,648.648 INFO    ] No update needed
[2026-10-25 09:56:13,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 09:56:13,685.685 INFO    ] 200
[2026-10-25 09:56:13,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:13,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:56:13,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:13,786.786 INFO    ] No camera update needed
[2026-10-25 09:56:13,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:56:13,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:56:13,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:56:13,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:56:15,842.842 INFO    ] ================================================
[2026-10-25 09:56:15,858.858 INFO    ] Launching Daemon at Sun Oct 25 09:56:15 IST 2026
[2026-10-25 09:56:15,868.868 INFO    ] ================================================
[2026-10-25 09:56:16,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:56:16
[2026-10-25 09:56:17,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:56:17,310.310 INFO    ] Initializing speech engine...
[2026-10-25 09:56:17,319.319 INFO    ] 2026-10-25 09:56:17
[2026-10-25 09:56:17,581.581 INFO    ] 2026-10-25 09:56:17
[2026-10-25 09:56:17,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:56:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:56:17,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:56:18,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:56:18,050.050 INFO    ] time= 25/10/2026 09:56:18
[2026-10-25 09:56:18,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:56:18,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:56:18,189.189 INFO    ] No existing commands found in stream
[2026-10-25 09:56:23,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:56:23,204.204 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 09:56:24,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:56:24,933.933 INFO    ] Checking for system updates...
[2026-10-25 09:56:24,969.969 INFO    ] 200
[2026-10-25 09:56:24,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:25,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:56:25,035.035 INFO    ] No update needed
[2026-10-25 09:56:25,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 09:56:25,075.075 INFO    ] 200
[2026-10-25 09:56:25,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:25,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:56:25,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:56:25,186.186 INFO    ] No camera update needed
[2026-10-25 09:56:25,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:56:25,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:56:25,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:56:25,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:56:27,245.245 INFO    ] ================================================
[2026-10-25 09:56:27,261.261 INFO    ] Launching Daemon at Sun Oct 25 09:56:27 IST 2026
[2026-10-25 09:56:27,272.272 INFO    ] ================================================
[2026-10-25 09:56:27,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:56:27
[2026-10-25 09:56:28,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:56:28,731.731 INFO    ] Initializing speech engine...
[2026-10-25 09:56:28,739.739 INFO    ] 2026-10-25 09:56:28
[2026-10-25 09:56:28,996.996 INFO    ] 2026-10-25 09:56:28
[2026-10-25 09:56:29,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:56:29,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:56:29,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:56:29,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:56:29,463.463 INFO    ] time= 25/10/2026 09:56:29
[2026-10-25 09:56:29,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:56:29,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:56:29,622.622 INFO    ] No existing commands found in stream
[2026-10-25 09:56:34,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:56:34,637.637 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 09:56:36,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:56:36,101.101 INFO    ] Checking for system updates...
[2026-10-25 09:56:36,138.138 INFO    ] 200
[2026-10-25 09:56:36,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:36,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:36,203.203 INFO    ] No update needed
[2026-10-25 09:56:36,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 09:56:36,243.243 INFO    ] 200
[2026-10-25 09:56:36,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:36,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:56:36,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:56:36,338.338 INFO    ] No camera update needed
[2026-10-25 09:56:36,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:56:36,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:56:36,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:56:36,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:56:38,397.397 INFO    ] ================================================
[2026-10-25 09:56:38,413.413 INFO    ] Launching Daemon at Sun Oct 25 09:56:38 IST 2026
[2026-10-25 09:56:38,424.424 INFO    ] ================================================
[2026-10-25 09:56:38,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:56:38
[2026-10-25 09:56:39,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:56:39,972.972 INFO    ] Initializing speech engine...
[2026-10-25 09:56:39,979.979 INFO    ] 2026-10-25 09:56:39
[2026-10-25 09:56:40,264.264 INFO    ] 2026-10-25 09:56:40
[2026-10-25 09:56:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:56:40,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:56:40,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:56:40,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:56:40,737.737 INFO    ] time= 25/10/2026 09:56:40
[2026-10-25 09:56:40,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:56:40,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:56:40,869.869 INFO    ] No existing commands found in stream
[2026-10-25 09:56:45,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:56:45,888.888 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 09:56:50,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:56:50,075.075 INFO    ] Checking for system updates...
[2026-10-25 09:56:50,113.113 INFO    ] 200
[2026-10-25 09:56:50,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:50,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:56:50,173.173 INFO    ] No update needed
[2026-10-25 09:56:50,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 09:56:50,210.210 INFO    ] 200
[2026-10-25 09:56:50,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:56:50,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:56:50,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:56:50,416.416 INFO    ] No camera update needed
[2026-10-25 09:56:50,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:56:50,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:56:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:56:50,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:56:52,472.472 INFO    ] ================================================
[2026-10-25 09:56:52,488.488 INFO    ] Launching Daemon at Sun Oct 25 09:56:52 IST 2026
[2026-10-25 09:56:52,499.499 INFO    ] ================================================
[2026-10-25 09:56:53,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:56:53
[2026-10-25 09:56:53,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:56:53,900.900 INFO    ] Initializing speech engine...
[2026-10-25 09:56:53,914.914 INFO    ] 2026-10-25 09:56:53
[2026-10-25 09:56:54,179.179 INFO    ] 2026-10-25 09:56:54
[2026-10-25 09:56:54,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:56:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:56:54,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:56:54,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:56:54,560.560 INFO    ] time= 25/10/2026 09:56:54
[2026-10-25 09:56:54,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:56:54,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:56:54,687.687 INFO    ] No existing commands found in stream
[2026-10-25 09:56:59,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:56:59,699.699 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 09:57:01,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:57:01,648.648 INFO    ] Checking for system updates...
[2026-10-25 09:57:01,685.685 INFO    ] 200
[2026-10-25 09:57:01,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:01,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:57:01,860.860 INFO    ] No update needed
[2026-10-25 09:57:01,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 09:57:01,950.950 INFO    ] 200
[2026-10-25 09:57:01,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:02,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:57:02,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:57:02,053.053 INFO    ] No camera update needed
[2026-10-25 09:57:02,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:57:02,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:57:02,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:57:02,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:57:04,126.126 INFO    ] ================================================
[2026-10-25 09:57:04,142.142 INFO    ] Launching Daemon at Sun Oct 25 09:57:04 IST 2026
[2026-10-25 09:57:04,153.153 INFO    ] ================================================
[2026-10-25 09:57:04,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:57:04
[2026-10-25 09:57:05,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:57:05,745.745 INFO    ] Initializing speech engine...
[2026-10-25 09:57:05,778.778 INFO    ] 2026-10-25 09:57:05
[2026-10-25 09:57:06,069.069 INFO    ] 2026-10-25 09:57:06
[2026-10-25 09:57:06,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:57:06,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:57:06,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:57:06,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:57:06,571.571 INFO    ] time= 25/10/2026 09:57:06
[2026-10-25 09:57:06,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:57:06,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:57:06,717.717 INFO    ] No existing commands found in stream
[2026-10-25 09:57:11,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:57:11,740.740 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 09:57:13,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:57:13,453.453 INFO    ] Checking for system updates...
[2026-10-25 09:57:13,495.495 INFO    ] 200
[2026-10-25 09:57:13,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:13,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:13,560.560 INFO    ] No update needed
[2026-10-25 09:57:13,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 09:57:13,601.601 INFO    ] 200
[2026-10-25 09:57:13,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:13,649.649 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:57:13,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:13,703.703 INFO    ] No camera update needed
[2026-10-25 09:57:13,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:57:13,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:57:13,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:57:13,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:57:15,760.760 INFO    ] ================================================
[2026-10-25 09:57:15,775.775 INFO    ] Launching Daemon at Sun Oct 25 09:57:15 IST 2026
[2026-10-25 09:57:15,786.786 INFO    ] ================================================
[2026-10-25 09:57:16,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:57:16
[2026-10-25 09:57:16,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:57:17,233.233 INFO    ] Initializing speech engine...
[2026-10-25 09:57:17,238.238 INFO    ] 2026-10-25 09:57:17
[2026-10-25 09:57:17,486.486 INFO    ] 2026-10-25 09:57:17
[2026-10-25 09:57:17,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:57:17,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:57:17,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:57:17,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:57:18,022.022 INFO    ] time= 25/10/2026 09:57:17
[2026-10-25 09:57:18,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:57:18,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:57:18,192.192 INFO    ] No existing commands found in stream
[2026-10-25 09:57:23,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:57:23,215.215 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 09:57:27,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:57:27,504.504 INFO    ] Checking for system updates...
[2026-10-25 09:57:27,545.545 INFO    ] 200
[2026-10-25 09:57:27,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:27,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:27,603.603 INFO    ] No update needed
[2026-10-25 09:57:27,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 09:57:27,644.644 INFO    ] 200
[2026-10-25 09:57:27,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:27,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:57:27,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:27,747.747 INFO    ] No camera update needed
[2026-10-25 09:57:27,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:57:27,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:57:27,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:57:27,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:57:29,802.802 INFO    ] ================================================
[2026-10-25 09:57:29,817.817 INFO    ] Launching Daemon at Sun Oct 25 09:57:29 IST 2026
[2026-10-25 09:57:29,828.828 INFO    ] ================================================
[2026-10-25 09:57:30,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:57:30
[2026-10-25 09:57:31,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:57:31,400.400 INFO    ] Initializing speech engine...
[2026-10-25 09:57:31,407.407 INFO    ] 2026-10-25 09:57:31
[2026-10-25 09:57:31,660.660 INFO    ] 2026-10-25 09:57:31
[2026-10-25 09:57:31,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:57:31,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:57:31,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:57:32,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:57:32,171.171 INFO    ] time= 25/10/2026 09:57:32
[2026-10-25 09:57:32,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:57:32,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:57:32,364.364 INFO    ] No existing commands found in stream
[2026-10-25 09:57:37,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:57:37,399.399 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 09:57:41,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:57:41,724.724 INFO    ] Checking for system updates...
[2026-10-25 09:57:41,762.762 INFO    ] 200
[2026-10-25 09:57:41,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:41,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:41,820.820 INFO    ] No update needed
[2026-10-25 09:57:41,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 09:57:41,857.857 INFO    ] 200
[2026-10-25 09:57:41,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:41,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:57:41,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:57:41,953.953 INFO    ] No camera update needed
[2026-10-25 09:57:41,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:57:41,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:57:41,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:57:41,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:57:44,013.013 INFO    ] ================================================
[2026-10-25 09:57:44,028.028 INFO    ] Launching Daemon at Sun Oct 25 09:57:44 IST 2026
[2026-10-25 09:57:44,039.039 INFO    ] ================================================
[2026-10-25 09:57:44,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:57:44
[2026-10-25 09:57:45,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:57:45,448.448 INFO    ] Initializing speech engine...
[2026-10-25 09:57:45,468.468 INFO    ] 2026-10-25 09:57:45
[2026-10-25 09:57:45,719.719 INFO    ] 2026-10-25 09:57:45
[2026-10-25 09:57:45,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:57:48,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:57:48,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:57:48,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:57:48,576.576 INFO    ] time= 25/10/2026 09:57:48
[2026-10-25 09:57:48,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:57:48,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:57:48,662.662 INFO    ] No existing commands found in stream
[2026-10-25 09:57:53,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:57:53,674.674 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 09:57:56,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:57:56,519.519 INFO    ] Checking for system updates...
[2026-10-25 09:57:56,556.556 INFO    ] 200
[2026-10-25 09:57:56,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:56,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:57:56,623.623 INFO    ] No update needed
[2026-10-25 09:57:56,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 09:57:56,663.663 INFO    ] 200
[2026-10-25 09:57:56,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:57:56,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:57:56,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:57:56,772.772 INFO    ] No camera update needed
[2026-10-25 09:57:56,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:57:56,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:57:56,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:57:56,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:57:58,833.833 INFO    ] ================================================
[2026-10-25 09:57:58,848.848 INFO    ] Launching Daemon at Sun Oct 25 09:57:58 IST 2026
[2026-10-25 09:57:58,859.859 INFO    ] ================================================
[2026-10-25 09:57:59,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:57:59
[2026-10-25 09:58:00,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:58:00,537.537 INFO    ] Initializing speech engine...
[2026-10-25 09:58:00,548.548 INFO    ] 2026-10-25 09:58:00
[2026-10-25 09:58:00,838.838 INFO    ] 2026-10-25 09:58:00
[2026-10-25 09:58:00,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:58:01,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:58:01,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:58:01,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:58:01,368.368 INFO    ] time= 25/10/2026 09:58:01
[2026-10-25 09:58:01,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:58:01,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:58:01,505.505 INFO    ] No existing commands found in stream
[2026-10-25 09:58:06,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:58:06,537.537 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 09:58:08,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:58:08,495.495 INFO    ] Checking for system updates...
[2026-10-25 09:58:08,533.533 INFO    ] 200
[2026-10-25 09:58:08,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:08,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:08,604.604 INFO    ] No update needed
[2026-10-25 09:58:08,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 09:58:08,641.641 INFO    ] 200
[2026-10-25 09:58:08,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:08,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:58:08,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:08,732.732 INFO    ] No camera update needed
[2026-10-25 09:58:08,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:58:08,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:58:08,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:58:08,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:58:10,786.786 INFO    ] ================================================
[2026-10-25 09:58:10,801.801 INFO    ] Launching Daemon at Sun Oct 25 09:58:10 IST 2026
[2026-10-25 09:58:10,812.812 INFO    ] ================================================
[2026-10-25 09:58:11,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:58:11
[2026-10-25 09:58:11,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:58:12,234.234 INFO    ] Initializing speech engine...
[2026-10-25 09:58:12,243.243 INFO    ] 2026-10-25 09:58:12
[2026-10-25 09:58:12,493.493 INFO    ] 2026-10-25 09:58:12
[2026-10-25 09:58:12,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:58:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:58:12,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:58:12,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:58:12,870.870 INFO    ] time= 25/10/2026 09:58:12
[2026-10-25 09:58:12,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:58:12,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:58:13,056.056 INFO    ] No existing commands found in stream
[2026-10-25 09:58:18,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:58:18,084.084 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 09:58:19,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:58:19,665.665 INFO    ] Checking for system updates...
[2026-10-25 09:58:19,702.702 INFO    ] 200
[2026-10-25 09:58:19,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:19,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:19,759.759 INFO    ] No update needed
[2026-10-25 09:58:19,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 09:58:19,795.795 INFO    ] 200
[2026-10-25 09:58:19,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:19,846.846 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:58:19,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:19,908.908 INFO    ] No camera update needed
[2026-10-25 09:58:19,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:58:19,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:58:19,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:58:19,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:58:21,963.963 INFO    ] ================================================
[2026-10-25 09:58:21,978.978 INFO    ] Launching Daemon at Sun Oct 25 09:58:21 IST 2026
[2026-10-25 09:58:21,989.989 INFO    ] ================================================
[2026-10-25 09:58:22,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:58:22
[2026-10-25 09:58:23,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:58:23,393.393 INFO    ] Initializing speech engine...
[2026-10-25 09:58:23,399.399 INFO    ] 2026-10-25 09:58:23
[2026-10-25 09:58:23,699.699 INFO    ] 2026-10-25 09:58:23
[2026-10-25 09:58:23,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:58:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:58:23,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:58:24,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:58:24,057.057 INFO    ] time= 25/10/2026 09:58:24
[2026-10-25 09:58:24,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:58:24,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:58:24,142.142 INFO    ] No existing commands found in stream
[2026-10-25 09:58:29,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:58:29,155.155 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 09:58:32,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:58:32,622.622 INFO    ] Checking for system updates...
[2026-10-25 09:58:32,667.667 INFO    ] 200
[2026-10-25 09:58:32,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:32,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:32,739.739 INFO    ] No update needed
[2026-10-25 09:58:32,742.742 INFO    ] Checking for camera pi updates...
[2026-10-25 09:58:32,783.783 INFO    ] 200
[2026-10-25 09:58:32,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:32,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:58:32,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:32,887.887 INFO    ] No camera update needed
[2026-10-25 09:58:32,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:58:32,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:58:32,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:58:32,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:58:34,945.945 INFO    ] ================================================
[2026-10-25 09:58:34,959.959 INFO    ] Launching Daemon at Sun Oct 25 09:58:34 IST 2026
[2026-10-25 09:58:34,970.970 INFO    ] ================================================
[2026-10-25 09:58:35,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:58:35
[2026-10-25 09:58:36,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:58:36,388.388 INFO    ] Initializing speech engine...
[2026-10-25 09:58:36,397.397 INFO    ] 2026-10-25 09:58:36
[2026-10-25 09:58:36,692.692 INFO    ] 2026-10-25 09:58:36
[2026-10-25 09:58:36,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:58:36,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:58:36,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:58:37,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:58:37,092.092 INFO    ] time= 25/10/2026 09:58:37
[2026-10-25 09:58:37,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:58:37,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:58:37,200.200 INFO    ] No existing commands found in stream
[2026-10-25 09:58:42,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:58:42,215.215 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 09:58:45,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 09:58:45,647.647 INFO    ] Checking for system updates...
[2026-10-25 09:58:45,684.684 INFO    ] 200
[2026-10-25 09:58:45,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:45,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:58:45,750.750 INFO    ] No update needed
[2026-10-25 09:58:45,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 09:58:45,787.787 INFO    ] 200
[2026-10-25 09:58:45,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:45,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:58:45,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:58:45,879.879 INFO    ] No camera update needed
[2026-10-25 09:58:45,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:58:45,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:58:45,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:58:45,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:58:47,934.934 INFO    ] ================================================
[2026-10-25 09:58:47,949.949 INFO    ] Launching Daemon at Sun Oct 25 09:58:47 IST 2026
[2026-10-25 09:58:47,960.960 INFO    ] ================================================
[2026-10-25 09:58:48,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:58:48
[2026-10-25 09:58:49,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:58:49,394.394 INFO    ] Initializing speech engine...
[2026-10-25 09:58:49,419.419 INFO    ] 2026-10-25 09:58:49
[2026-10-25 09:58:49,695.695 INFO    ] 2026-10-25 09:58:49
[2026-10-25 09:58:49,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:58:49,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:58:49,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:58:50,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:58:50,074.074 INFO    ] time= 25/10/2026 09:58:50
[2026-10-25 09:58:50,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:58:50,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:58:50,201.201 INFO    ] No existing commands found in stream
[2026-10-25 09:58:55,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:58:55,216.216 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 09:58:57,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 09:58:57,629.629 INFO    ] Checking for system updates...
[2026-10-25 09:58:57,665.665 INFO    ] 200
[2026-10-25 09:58:57,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:57,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:57,733.733 INFO    ] No update needed
[2026-10-25 09:58:57,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 09:58:57,777.777 INFO    ] 200
[2026-10-25 09:58:57,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:58:57,829.829 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:58:57,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:58:57,986.986 INFO    ] No camera update needed
[2026-10-25 09:58:57,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:58:57,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:58:57,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:58:58,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:59:00,045.045 INFO    ] ================================================
[2026-10-25 09:59:00,061.061 INFO    ] Launching Daemon at Sun Oct 25 09:59:00 IST 2026
[2026-10-25 09:59:00,071.071 INFO    ] ================================================
[2026-10-25 09:59:00,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:59:00
[2026-10-25 09:59:01,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:59:01,471.471 INFO    ] Initializing speech engine...
[2026-10-25 09:59:01,477.477 INFO    ] 2026-10-25 09:59:01
[2026-10-25 09:59:01,755.755 INFO    ] 2026-10-25 09:59:01
[2026-10-25 09:59:01,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:59:01,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:59:01,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:59:02,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:59:02,145.145 INFO    ] time= 25/10/2026 09:59:02
[2026-10-25 09:59:02,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:59:02,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:59:02,234.234 INFO    ] No existing commands found in stream
[2026-10-25 09:59:07,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:59:07,248.248 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 09:59:10,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 09:59:10,803.803 INFO    ] Checking for system updates...
[2026-10-25 09:59:10,839.839 INFO    ] 200
[2026-10-25 09:59:10,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:10,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:59:10,900.900 INFO    ] No update needed
[2026-10-25 09:59:10,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 09:59:10,936.936 INFO    ] 200
[2026-10-25 09:59:10,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:10,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:59:11,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:59:11,032.032 INFO    ] No camera update needed
[2026-10-25 09:59:11,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:59:11,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:59:11,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:59:11,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:59:13,086.086 INFO    ] ================================================
[2026-10-25 09:59:13,102.102 INFO    ] Launching Daemon at Sun Oct 25 09:59:13 IST 2026
[2026-10-25 09:59:13,112.112 INFO    ] ================================================
[2026-10-25 09:59:13,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:59:13
[2026-10-25 09:59:14,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:59:14,572.572 INFO    ] Initializing speech engine...
[2026-10-25 09:59:14,578.578 INFO    ] 2026-10-25 09:59:14
[2026-10-25 09:59:14,839.839 INFO    ] 2026-10-25 09:59:14
[2026-10-25 09:59:14,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:59:15,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:59:15,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:59:15,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:59:15,326.326 INFO    ] time= 25/10/2026 09:59:15
[2026-10-25 09:59:15,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:59:15,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:59:15,515.515 INFO    ] No existing commands found in stream
[2026-10-25 09:59:20,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:59:20,545.545 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 09:59:23,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 09:59:23,073.073 INFO    ] Checking for system updates...
[2026-10-25 09:59:23,110.110 INFO    ] 200
[2026-10-25 09:59:23,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:23,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:59:23,177.177 INFO    ] No update needed
[2026-10-25 09:59:23,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 09:59:23,217.217 INFO    ] 200
[2026-10-25 09:59:23,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:23,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:59:23,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 09:59:23,316.316 INFO    ] No camera update needed
[2026-10-25 09:59:23,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:59:23,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:59:23,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:59:23,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:59:25,371.371 INFO    ] ================================================
[2026-10-25 09:59:25,386.386 INFO    ] Launching Daemon at Sun Oct 25 09:59:25 IST 2026
[2026-10-25 09:59:25,397.397 INFO    ] ================================================
[2026-10-25 09:59:25,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:59:25
[2026-10-25 09:59:26,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:59:26,823.823 INFO    ] Initializing speech engine...
[2026-10-25 09:59:26,831.831 INFO    ] 2026-10-25 09:59:26
[2026-10-25 09:59:27,128.128 INFO    ] 2026-10-25 09:59:27
[2026-10-25 09:59:27,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:59:27,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:59:27,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:59:27,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:59:27,554.554 INFO    ] time= 25/10/2026 09:59:27
[2026-10-25 09:59:27,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:59:27,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:59:27,641.641 INFO    ] No existing commands found in stream
[2026-10-25 09:59:32,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:59:32,656.656 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 09:59:36,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 09:59:36,328.328 INFO    ] Checking for system updates...
[2026-10-25 09:59:36,370.370 INFO    ] 200
[2026-10-25 09:59:36,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:36,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:59:36,432.432 INFO    ] No update needed
[2026-10-25 09:59:36,434.434 INFO    ] Checking for camera pi updates...
[2026-10-25 09:59:36,468.468 INFO    ] 200
[2026-10-25 09:59:36,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:36,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:59:36,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:59:36,561.561 INFO    ] No camera update needed
[2026-10-25 09:59:36,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:59:36,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:59:36,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:59:36,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:59:38,616.616 INFO    ] ================================================
[2026-10-25 09:59:38,631.631 INFO    ] Launching Daemon at Sun Oct 25 09:59:38 IST 2026
[2026-10-25 09:59:38,641.641 INFO    ] ================================================
[2026-10-25 09:59:39,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:59:39
[2026-10-25 09:59:39,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:59:40,168.168 INFO    ] Initializing speech engine...
[2026-10-25 09:59:40,183.183 INFO    ] 2026-10-25 09:59:40
[2026-10-25 09:59:40,449.449 INFO    ] 2026-10-25 09:59:40
[2026-10-25 09:59:40,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:59:40,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:59:40,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:59:40,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:59:40,911.911 INFO    ] time= 25/10/2026 09:59:40
[2026-10-25 09:59:40,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:59:41,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:59:41,079.079 INFO    ] No existing commands found in stream
[2026-10-25 09:59:46,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 09:59:46,093.093 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 09:59:51,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 09:59:51,192.192 INFO    ] Checking for system updates...
[2026-10-25 09:59:51,228.228 INFO    ] 200
[2026-10-25 09:59:51,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:51,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:59:51,287.287 INFO    ] No update needed
[2026-10-25 09:59:51,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 09:59:51,327.327 INFO    ] 200
[2026-10-25 09:59:51,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 09:59:51,370.370 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 09:59:51,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 09:59:51,434.434 INFO    ] No camera update needed
[2026-10-25 09:59:51,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 09:59:51,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 09:59:51,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 09:59:51,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 09:59:53,488.488 INFO    ] ================================================
[2026-10-25 09:59:53,503.503 INFO    ] Launching Daemon at Sun Oct 25 09:59:53 IST 2026
[2026-10-25 09:59:53,513.513 INFO    ] ================================================
[2026-10-25 09:59:54,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 09:59:54
[2026-10-25 09:59:54,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 09:59:54,989.989 INFO    ] Initializing speech engine...
[2026-10-25 09:59:54,997.997 INFO    ] 2026-10-25 09:59:54
[2026-10-25 09:59:55,248.248 INFO    ] 2026-10-25 09:59:55
[2026-10-25 09:59:55,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 09:59:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 09:59:55,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 09:59:55,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 09:59:55,705.705 INFO    ] time= 25/10/2026 09:59:55
[2026-10-25 09:59:55,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 09:59:55,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 09:59:55,880.880 INFO    ] No existing commands found in stream
[2026-10-25 10:00:00,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:00:00,903.903 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 10:00:07,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:00:07,020.020 INFO    ] Checking for system updates...
[2026-10-25 10:00:07,061.061 INFO    ] 200
[2026-10-25 10:00:07,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:07,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:07,120.120 INFO    ] No update needed
[2026-10-25 10:00:07,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 10:00:07,168.168 INFO    ] 200
[2026-10-25 10:00:07,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:07,217.217 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:00:07,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:07,256.256 INFO    ] No camera update needed
[2026-10-25 10:00:07,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:00:07,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:00:07,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:00:07,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:00:09,314.314 INFO    ] ================================================
[2026-10-25 10:00:09,328.328 INFO    ] Launching Daemon at Sun Oct 25 10:00:09 IST 2026
[2026-10-25 10:00:09,339.339 INFO    ] ================================================
[2026-10-25 10:00:09,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:00:09
[2026-10-25 10:00:10,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:00:10,743.743 INFO    ] Initializing speech engine...
[2026-10-25 10:00:10,756.756 INFO    ] 2026-10-25 10:00:10
[2026-10-25 10:00:11,026.026 INFO    ] 2026-10-25 10:00:11
[2026-10-25 10:00:11,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:00:11,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:00:11,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:00:11,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:00:11,403.403 INFO    ] time= 25/10/2026 10:00:11
[2026-10-25 10:00:11,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:00:11,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:00:11,479.479 INFO    ] No existing commands found in stream
[2026-10-25 10:00:16,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:00:16,494.494 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 10:00:21,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:00:21,584.584 INFO    ] Checking for system updates...
[2026-10-25 10:00:21,625.625 INFO    ] 200
[2026-10-25 10:00:21,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:21,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:00:21,696.696 INFO    ] No update needed
[2026-10-25 10:00:21,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 10:00:21,737.737 INFO    ] 200
[2026-10-25 10:00:21,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:21,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:00:21,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:00:21,839.839 INFO    ] No camera update needed
[2026-10-25 10:00:21,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:00:21,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:00:21,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:00:21,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:00:23,898.898 INFO    ] ================================================
[2026-10-25 10:00:23,913.913 INFO    ] Launching Daemon at Sun Oct 25 10:00:23 IST 2026
[2026-10-25 10:00:23,923.923 INFO    ] ================================================
[2026-10-25 10:00:24,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:00:24
[2026-10-25 10:00:25,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:00:25,337.337 INFO    ] Initializing speech engine...
[2026-10-25 10:00:25,349.349 INFO    ] 2026-10-25 10:00:25
[2026-10-25 10:00:25,595.595 INFO    ] 2026-10-25 10:00:25
[2026-10-25 10:00:25,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:00:25,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:00:25,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:00:25,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:00:25,966.966 INFO    ] time= 25/10/2026 10:00:25
[2026-10-25 10:00:26,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:00:26,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:00:26,149.149 INFO    ] No existing commands found in stream
[2026-10-25 10:00:31,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:00:31,172.172 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 10:00:33,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:00:33,320.320 INFO    ] Checking for system updates...
[2026-10-25 10:00:33,356.356 INFO    ] 200
[2026-10-25 10:00:33,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:33,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:00:33,417.417 INFO    ] No update needed
[2026-10-25 10:00:33,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 10:00:33,456.456 INFO    ] 200
[2026-10-25 10:00:33,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:33,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:00:33,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:00:33,564.564 INFO    ] No camera update needed
[2026-10-25 10:00:33,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:00:33,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:00:33,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:00:33,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:00:35,619.619 INFO    ] ================================================
[2026-10-25 10:00:35,634.634 INFO    ] Launching Daemon at Sun Oct 25 10:00:35 IST 2026
[2026-10-25 10:00:35,645.645 INFO    ] ================================================
[2026-10-25 10:00:36,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:00:36
[2026-10-25 10:00:36,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:00:37,216.216 INFO    ] Initializing speech engine...
[2026-10-25 10:00:37,223.223 INFO    ] 2026-10-25 10:00:37
[2026-10-25 10:00:37,537.537 INFO    ] 2026-10-25 10:00:37
[2026-10-25 10:00:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:00:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:00:37,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:00:37,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:00:37,946.946 INFO    ] time= 25/10/2026 10:00:37
[2026-10-25 10:00:37,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:00:37,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:00:38,086.086 INFO    ] No existing commands found in stream
[2026-10-25 10:00:43,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:00:43,098.098 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 10:00:43,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:00:43,866.866 INFO    ] Checking for system updates...
[2026-10-25 10:00:43,905.905 INFO    ] 200
[2026-10-25 10:00:43,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:43,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:43,965.965 INFO    ] No update needed
[2026-10-25 10:00:43,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 10:00:44,002.002 INFO    ] 200
[2026-10-25 10:00:44,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:44,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:00:44,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:44,099.099 INFO    ] No camera update needed
[2026-10-25 10:00:44,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:00:44,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:00:44,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:00:44,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:00:46,158.158 INFO    ] ================================================
[2026-10-25 10:00:46,173.173 INFO    ] Launching Daemon at Sun Oct 25 10:00:46 IST 2026
[2026-10-25 10:00:46,184.184 INFO    ] ================================================
[2026-10-25 10:00:46,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:00:46
[2026-10-25 10:00:47,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:00:47,784.784 INFO    ] Initializing speech engine...
[2026-10-25 10:00:47,791.791 INFO    ] 2026-10-25 10:00:47
[2026-10-25 10:00:48,073.073 INFO    ] 2026-10-25 10:00:48
[2026-10-25 10:00:48,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:00:48,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:00:48,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:00:48,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:00:48,610.610 INFO    ] time= 25/10/2026 10:00:48
[2026-10-25 10:00:48,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:00:48,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:00:48,757.757 INFO    ] No existing commands found in stream
[2026-10-25 10:00:53,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:00:53,779.779 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 10:00:55,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:00:55,482.482 INFO    ] Checking for system updates...
[2026-10-25 10:00:55,523.523 INFO    ] 200
[2026-10-25 10:00:55,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:55,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:55,591.591 INFO    ] No update needed
[2026-10-25 10:00:55,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 10:00:55,628.628 INFO    ] 200
[2026-10-25 10:00:55,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:00:55,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:00:55,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:00:55,728.728 INFO    ] No camera update needed
[2026-10-25 10:00:55,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:00:55,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:00:55,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:00:55,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:00:57,785.785 INFO    ] ================================================
[2026-10-25 10:00:57,799.799 INFO    ] Launching Daemon at Sun Oct 25 10:00:57 IST 2026
[2026-10-25 10:00:57,810.810 INFO    ] ================================================
[2026-10-25 10:00:58,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:00:58
[2026-10-25 10:00:58,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:00:59,267.267 INFO    ] Initializing speech engine...
[2026-10-25 10:00:59,276.276 INFO    ] 2026-10-25 10:00:59
[2026-10-25 10:00:59,525.525 INFO    ] 2026-10-25 10:00:59
[2026-10-25 10:00:59,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:00:59,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:00:59,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:00:59,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:01:00,068.068 INFO    ] time= 25/10/2026 10:01:00
[2026-10-25 10:01:00,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:01:00,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:01:00,222.222 INFO    ] No existing commands found in stream
[2026-10-25 10:01:05,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:01:05,258.258 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 10:01:08,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:01:08,021.021 INFO    ] Checking for system updates...
[2026-10-25 10:01:08,062.062 INFO    ] 200
[2026-10-25 10:01:08,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:08,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:01:08,127.127 INFO    ] No update needed
[2026-10-25 10:01:08,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 10:01:08,163.163 INFO    ] 200
[2026-10-25 10:01:08,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:08,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:01:08,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:01:08,257.257 INFO    ] No camera update needed
[2026-10-25 10:01:08,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:01:08,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:01:08,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:01:08,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:01:10,315.315 INFO    ] ================================================
[2026-10-25 10:01:10,330.330 INFO    ] Launching Daemon at Sun Oct 25 10:01:10 IST 2026
[2026-10-25 10:01:10,341.341 INFO    ] ================================================
[2026-10-25 10:01:10,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:01:10
[2026-10-25 10:01:11,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:01:11,972.972 INFO    ] Initializing speech engine...
[2026-10-25 10:01:11,984.984 INFO    ] 2026-10-25 10:01:11
[2026-10-25 10:01:12,269.269 INFO    ] 2026-10-25 10:01:12
[2026-10-25 10:01:12,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:01:12,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:01:12,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:01:12,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:01:12,760.760 INFO    ] time= 25/10/2026 10:01:12
[2026-10-25 10:01:12,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:01:12,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:01:12,929.929 INFO    ] No existing commands found in stream
[2026-10-25 10:01:17,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:01:17,945.945 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 10:01:23,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:01:23,298.298 INFO    ] Checking for system updates...
[2026-10-25 10:01:23,336.336 INFO    ] 200
[2026-10-25 10:01:23,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:23,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:01:23,395.395 INFO    ] No update needed
[2026-10-25 10:01:23,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 10:01:23,431.431 INFO    ] 200
[2026-10-25 10:01:23,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:23,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:01:23,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:01:23,534.534 INFO    ] No camera update needed
[2026-10-25 10:01:23,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:01:23,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:01:23,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:01:23,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:01:25,588.588 INFO    ] ================================================
[2026-10-25 10:01:25,604.604 INFO    ] Launching Daemon at Sun Oct 25 10:01:25 IST 2026
[2026-10-25 10:01:25,615.615 INFO    ] ================================================
[2026-10-25 10:01:26,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:01:26
[2026-10-25 10:01:26,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:01:27,074.074 INFO    ] Initializing speech engine...
[2026-10-25 10:01:27,080.080 INFO    ] 2026-10-25 10:01:27
[2026-10-25 10:01:27,406.406 INFO    ] 2026-10-25 10:01:27
[2026-10-25 10:01:27,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:01:27,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:01:27,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:01:27,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:01:27,911.911 INFO    ] time= 25/10/2026 10:01:27
[2026-10-25 10:01:27,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:01:27,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:01:28,061.061 INFO    ] No existing commands found in stream
[2026-10-25 10:01:33,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:01:33,077.077 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 10:01:35,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:01:35,262.262 INFO    ] Checking for system updates...
[2026-10-25 10:01:35,300.300 INFO    ] 200
[2026-10-25 10:01:35,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:35,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:01:35,359.359 INFO    ] No update needed
[2026-10-25 10:01:35,362.362 INFO    ] Checking for camera pi updates...
[2026-10-25 10:01:35,396.396 INFO    ] 200
[2026-10-25 10:01:35,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:35,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:01:35,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:01:35,508.508 INFO    ] No camera update needed
[2026-10-25 10:01:35,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:01:35,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:01:35,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:01:35,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:01:37,562.562 INFO    ] ================================================
[2026-10-25 10:01:37,578.578 INFO    ] Launching Daemon at Sun Oct 25 10:01:37 IST 2026
[2026-10-25 10:01:37,588.588 INFO    ] ================================================
[2026-10-25 10:01:38,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:01:38
[2026-10-25 10:01:38,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:01:39,205.205 INFO    ] Initializing speech engine...
[2026-10-25 10:01:39,219.219 INFO    ] 2026-10-25 10:01:39
[2026-10-25 10:01:39,500.500 INFO    ] 2026-10-25 10:01:39
[2026-10-25 10:01:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:01:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:01:39,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:01:39,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:01:39,986.986 INFO    ] time= 25/10/2026 10:01:39
[2026-10-25 10:01:40,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:01:40,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:01:40,179.179 INFO    ] No existing commands found in stream
[2026-10-25 10:01:45,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:01:45,209.209 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 10:01:46,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:01:46,848.848 INFO    ] Checking for system updates...
[2026-10-25 10:01:46,891.891 INFO    ] 200
[2026-10-25 10:01:46,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:46,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:01:46,952.952 INFO    ] No update needed
[2026-10-25 10:01:46,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 10:01:46,993.993 INFO    ] 200
[2026-10-25 10:01:46,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:01:47,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:01:47,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:01:47,083.083 INFO    ] No camera update needed
[2026-10-25 10:01:47,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:01:47,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:01:47,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:01:47,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:01:49,137.137 INFO    ] ================================================
[2026-10-25 10:01:49,152.152 INFO    ] Launching Daemon at Sun Oct 25 10:01:49 IST 2026
[2026-10-25 10:01:49,163.163 INFO    ] ================================================
[2026-10-25 10:01:49,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:01:49
[2026-10-25 10:01:50,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:01:50,892.892 INFO    ] Initializing speech engine...
[2026-10-25 10:01:50,899.899 INFO    ] 2026-10-25 10:01:50
[2026-10-25 10:01:51,220.220 INFO    ] 2026-10-25 10:01:51
[2026-10-25 10:01:51,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:01:53,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:01:53,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:01:53,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:01:53,893.893 INFO    ] time= 25/10/2026 10:01:53
[2026-10-25 10:01:53,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:01:53,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:01:54,022.022 INFO    ] No existing commands found in stream
[2026-10-25 10:01:59,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:01:59,036.036 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 10:02:01,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:02:01,927.927 INFO    ] Checking for system updates...
[2026-10-25 10:02:02,002.002 INFO    ] 200
[2026-10-25 10:02:02,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:02,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:02,123.123 INFO    ] No update needed
[2026-10-25 10:02:02,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 10:02:02,185.185 INFO    ] 200
[2026-10-25 10:02:02,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:02,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:02:02,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:02,302.302 INFO    ] No camera update needed
[2026-10-25 10:02:02,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:02:02,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:02:02,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:02:02,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:02:04,373.373 INFO    ] ================================================
[2026-10-25 10:02:04,387.387 INFO    ] Launching Daemon at Sun Oct 25 10:02:04 IST 2026
[2026-10-25 10:02:04,398.398 INFO    ] ================================================
[2026-10-25 10:02:05,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:02:05
[2026-10-25 10:02:05,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:02:05,915.915 INFO    ] Initializing speech engine...
[2026-10-25 10:02:05,924.924 INFO    ] 2026-10-25 10:02:05
[2026-10-25 10:02:06,171.171 INFO    ] 2026-10-25 10:02:06
[2026-10-25 10:02:06,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:02:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:02:06,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:02:06,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:02:06,624.624 INFO    ] time= 25/10/2026 10:02:06
[2026-10-25 10:02:06,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:02:06,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:02:06,788.788 INFO    ] No existing commands found in stream
[2026-10-25 10:02:11,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:02:11,802.802 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 10:02:15,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:02:15,839.839 INFO    ] Checking for system updates...
[2026-10-25 10:02:15,875.875 INFO    ] 200
[2026-10-25 10:02:15,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:15,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:15,933.933 INFO    ] No update needed
[2026-10-25 10:02:15,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 10:02:15,971.971 INFO    ] 200
[2026-10-25 10:02:15,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:16,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:02:16,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:16,063.063 INFO    ] No camera update needed
[2026-10-25 10:02:16,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:02:16,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:02:16,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:02:16,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:02:18,118.118 INFO    ] ================================================
[2026-10-25 10:02:18,133.133 INFO    ] Launching Daemon at Sun Oct 25 10:02:18 IST 2026
[2026-10-25 10:02:18,144.144 INFO    ] ================================================
[2026-10-25 10:02:18,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:02:18
[2026-10-25 10:02:19,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:02:19,589.589 INFO    ] Initializing speech engine...
[2026-10-25 10:02:19,598.598 INFO    ] 2026-10-25 10:02:19
[2026-10-25 10:02:19,845.845 INFO    ] 2026-10-25 10:02:19
[2026-10-25 10:02:19,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:02:20,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:02:20,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:02:20,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:02:20,339.339 INFO    ] time= 25/10/2026 10:02:20
[2026-10-25 10:02:20,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:02:20,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:02:20,528.528 INFO    ] No existing commands found in stream
[2026-10-25 10:02:25,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:02:25,561.561 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 10:02:29,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:02:29,122.122 INFO    ] Checking for system updates...
[2026-10-25 10:02:29,158.158 INFO    ] 200
[2026-10-25 10:02:29,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:29,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:29,215.215 INFO    ] No update needed
[2026-10-25 10:02:29,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 10:02:29,251.251 INFO    ] 200
[2026-10-25 10:02:29,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:29,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:02:29,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:29,356.356 INFO    ] No camera update needed
[2026-10-25 10:02:29,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:02:29,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:02:29,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:02:29,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:02:31,411.411 INFO    ] ================================================
[2026-10-25 10:02:31,426.426 INFO    ] Launching Daemon at Sun Oct 25 10:02:31 IST 2026
[2026-10-25 10:02:31,437.437 INFO    ] ================================================
[2026-10-25 10:02:32,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:02:32
[2026-10-25 10:02:32,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:02:32,939.939 INFO    ] Initializing speech engine...
[2026-10-25 10:02:32,954.954 INFO    ] 2026-10-25 10:02:32
[2026-10-25 10:02:33,236.236 INFO    ] 2026-10-25 10:02:33
[2026-10-25 10:02:33,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:02:33,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:02:33,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:02:33,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:02:33,712.712 INFO    ] time= 25/10/2026 10:02:33
[2026-10-25 10:02:33,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:02:33,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:02:33,898.898 INFO    ] No existing commands found in stream
[2026-10-25 10:02:38,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:02:38,912.912 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 10:02:43,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:02:43,091.091 INFO    ] Checking for system updates...
[2026-10-25 10:02:43,127.127 INFO    ] 200
[2026-10-25 10:02:43,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:43,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:43,191.191 INFO    ] No update needed
[2026-10-25 10:02:43,193.193 INFO    ] Checking for camera pi updates...
[2026-10-25 10:02:43,228.228 INFO    ] 200
[2026-10-25 10:02:43,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:43,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:02:43,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:43,321.321 INFO    ] No camera update needed
[2026-10-25 10:02:43,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:02:43,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:02:43,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:02:43,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:02:45,375.375 INFO    ] ================================================
[2026-10-25 10:02:45,391.391 INFO    ] Launching Daemon at Sun Oct 25 10:02:45 IST 2026
[2026-10-25 10:02:45,402.402 INFO    ] ================================================
[2026-10-25 10:02:46,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:02:46
[2026-10-25 10:02:46,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:02:46,893.893 INFO    ] Initializing speech engine...
[2026-10-25 10:02:46,899.899 INFO    ] 2026-10-25 10:02:46
[2026-10-25 10:02:47,191.191 INFO    ] 2026-10-25 10:02:47
[2026-10-25 10:02:47,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:02:47,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:02:47,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:02:47,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:02:47,572.572 INFO    ] time= 25/10/2026 10:02:47
[2026-10-25 10:02:47,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:02:47,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:02:47,655.655 INFO    ] No existing commands found in stream
[2026-10-25 10:02:52,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:02:52,667.667 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 10:02:55,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:02:55,317.317 INFO    ] Checking for system updates...
[2026-10-25 10:02:55,353.353 INFO    ] 200
[2026-10-25 10:02:55,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:55,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:55,415.415 INFO    ] No update needed
[2026-10-25 10:02:55,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 10:02:55,453.453 INFO    ] 200
[2026-10-25 10:02:55,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:02:55,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:02:55,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:02:55,560.560 INFO    ] No camera update needed
[2026-10-25 10:02:55,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:02:55,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:02:55,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:02:55,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:02:57,616.616 INFO    ] ================================================
[2026-10-25 10:02:57,631.631 INFO    ] Launching Daemon at Sun Oct 25 10:02:57 IST 2026
[2026-10-25 10:02:57,642.642 INFO    ] ================================================
[2026-10-25 10:02:58,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:02:58
[2026-10-25 10:02:58,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:02:59,057.057 INFO    ] Initializing speech engine...
[2026-10-25 10:02:59,066.066 INFO    ] 2026-10-25 10:02:59
[2026-10-25 10:02:59,312.312 INFO    ] 2026-10-25 10:02:59
[2026-10-25 10:02:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:02:59,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:02:59,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:02:59,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:02:59,784.784 INFO    ] time= 25/10/2026 10:02:59
[2026-10-25 10:02:59,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:02:59,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:02:59,928.928 INFO    ] No existing commands found in stream
[2026-10-25 10:03:04,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:03:04,946.946 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 10:03:07,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:03:07,574.574 INFO    ] Checking for system updates...
[2026-10-25 10:03:07,623.623 INFO    ] 200
[2026-10-25 10:03:07,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:07,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:07,681.681 INFO    ] No update needed
[2026-10-25 10:03:07,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 10:03:07,718.718 INFO    ] 200
[2026-10-25 10:03:07,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:07,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:03:07,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:07,919.919 INFO    ] No camera update needed
[2026-10-25 10:03:07,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:03:07,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:03:07,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:03:07,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:03:09,976.976 INFO    ] ================================================
[2026-10-25 10:03:09,994.994 INFO    ] Launching Daemon at Sun Oct 25 10:03:09 IST 2026
[2026-10-25 10:03:10,005.005 INFO    ] ================================================
[2026-10-25 10:03:10,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:03:10
[2026-10-25 10:03:11,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:03:11,428.428 INFO    ] Initializing speech engine...
[2026-10-25 10:03:11,437.437 INFO    ] 2026-10-25 10:03:11
[2026-10-25 10:03:11,687.687 INFO    ] 2026-10-25 10:03:11
[2026-10-25 10:03:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:03:11,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:03:11,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:03:12,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:03:12,060.060 INFO    ] time= 25/10/2026 10:03:12
[2026-10-25 10:03:12,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:03:12,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:03:12,139.139 INFO    ] No existing commands found in stream
[2026-10-25 10:03:17,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:03:17,177.177 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 10:03:20,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:03:20,314.314 INFO    ] Checking for system updates...
[2026-10-25 10:03:20,354.354 INFO    ] 200
[2026-10-25 10:03:20,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:20,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:20,418.418 INFO    ] No update needed
[2026-10-25 10:03:20,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 10:03:20,453.453 INFO    ] 200
[2026-10-25 10:03:20,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:20,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:03:20,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:20,551.551 INFO    ] No camera update needed
[2026-10-25 10:03:20,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:03:20,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:03:20,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:03:20,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:03:22,607.607 INFO    ] ================================================
[2026-10-25 10:03:22,622.622 INFO    ] Launching Daemon at Sun Oct 25 10:03:22 IST 2026
[2026-10-25 10:03:22,632.632 INFO    ] ================================================
[2026-10-25 10:03:23,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:03:23
[2026-10-25 10:03:23,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:03:24,025.025 INFO    ] Initializing speech engine...
[2026-10-25 10:03:24,033.033 INFO    ] 2026-10-25 10:03:24
[2026-10-25 10:03:24,305.305 INFO    ] 2026-10-25 10:03:24
[2026-10-25 10:03:24,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:03:25,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:03:25,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:03:25,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:03:25,842.842 INFO    ] time= 25/10/2026 10:03:25
[2026-10-25 10:03:25,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:03:25,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:03:25,910.910 INFO    ] No existing commands found in stream
[2026-10-25 10:03:30,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:03:30,923.923 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 10:03:32,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:03:32,665.665 INFO    ] Checking for system updates...
[2026-10-25 10:03:32,778.778 INFO    ] 200
[2026-10-25 10:03:32,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:32,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:32,854.854 INFO    ] No update needed
[2026-10-25 10:03:32,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 10:03:32,896.896 INFO    ] 200
[2026-10-25 10:03:32,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:32,943.943 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:03:32,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:32,980.980 INFO    ] No camera update needed
[2026-10-25 10:03:32,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:03:32,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:03:32,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:03:32,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:03:35,037.037 INFO    ] ================================================
[2026-10-25 10:03:35,052.052 INFO    ] Launching Daemon at Sun Oct 25 10:03:35 IST 2026
[2026-10-25 10:03:35,062.062 INFO    ] ================================================
[2026-10-25 10:03:35,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:03:35
[2026-10-25 10:03:36,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:03:36,486.486 INFO    ] Initializing speech engine...
[2026-10-25 10:03:36,496.496 INFO    ] 2026-10-25 10:03:36
[2026-10-25 10:03:36,746.746 INFO    ] 2026-10-25 10:03:36
[2026-10-25 10:03:36,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:03:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:03:36,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:03:37,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:03:37,182.182 INFO    ] time= 25/10/2026 10:03:37
[2026-10-25 10:03:37,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:03:37,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:03:37,364.364 INFO    ] No existing commands found in stream
[2026-10-25 10:03:42,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:03:42,378.378 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 10:03:46,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:03:46,396.396 INFO    ] Checking for system updates...
[2026-10-25 10:03:46,432.432 INFO    ] 200
[2026-10-25 10:03:46,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:46,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:03:46,492.492 INFO    ] No update needed
[2026-10-25 10:03:46,495.495 INFO    ] Checking for camera pi updates...
[2026-10-25 10:03:46,529.529 INFO    ] 200
[2026-10-25 10:03:46,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:46,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:03:46,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:03:46,624.624 INFO    ] No camera update needed
[2026-10-25 10:03:46,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:03:46,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:03:46,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:03:46,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:03:48,680.680 INFO    ] ================================================
[2026-10-25 10:03:48,695.695 INFO    ] Launching Daemon at Sun Oct 25 10:03:48 IST 2026
[2026-10-25 10:03:48,706.706 INFO    ] ================================================
[2026-10-25 10:03:49,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:03:49
[2026-10-25 10:03:49,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:03:50,115.115 INFO    ] Initializing speech engine...
[2026-10-25 10:03:50,131.131 INFO    ] 2026-10-25 10:03:50
[2026-10-25 10:03:50,411.411 INFO    ] 2026-10-25 10:03:50
[2026-10-25 10:03:50,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:03:50,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:03:50,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:03:50,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:03:50,825.825 INFO    ] time= 25/10/2026 10:03:50
[2026-10-25 10:03:50,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:03:50,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:03:50,909.909 INFO    ] No existing commands found in stream
[2026-10-25 10:03:55,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:03:55,924.924 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 10:03:59,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:03:59,618.618 INFO    ] Checking for system updates...
[2026-10-25 10:03:59,655.655 INFO    ] 200
[2026-10-25 10:03:59,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:59,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:59,723.723 INFO    ] No update needed
[2026-10-25 10:03:59,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 10:03:59,764.764 INFO    ] 200
[2026-10-25 10:03:59,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:03:59,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:03:59,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:03:59,862.862 INFO    ] No camera update needed
[2026-10-25 10:03:59,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:03:59,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:03:59,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:03:59,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:04:01,932.932 INFO    ] ================================================
[2026-10-25 10:04:01,959.959 INFO    ] Launching Daemon at Sun Oct 25 10:04:01 IST 2026
[2026-10-25 10:04:02,002.002 INFO    ] ================================================
[2026-10-25 10:04:02,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:04:02
[2026-10-25 10:04:03,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:04:03,716.716 INFO    ] Initializing speech engine...
[2026-10-25 10:04:03,731.731 INFO    ] 2026-10-25 10:04:03
[2026-10-25 10:04:04,006.006 INFO    ] 2026-10-25 10:04:03
[2026-10-25 10:04:04,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:04:04,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:04:04,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:04:04,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:04:04,384.384 INFO    ] time= 25/10/2026 10:04:04
[2026-10-25 10:04:04,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:04:04,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:04:04,460.460 INFO    ] No existing commands found in stream
[2026-10-25 10:04:09,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:04:09,475.475 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 10:04:11,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:04:11,232.232 INFO    ] Checking for system updates...
[2026-10-25 10:04:11,268.268 INFO    ] 200
[2026-10-25 10:04:11,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:11,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:04:11,327.327 INFO    ] No update needed
[2026-10-25 10:04:11,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 10:04:11,364.364 INFO    ] 200
[2026-10-25 10:04:11,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:11,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:04:11,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:04:11,472.472 INFO    ] No camera update needed
[2026-10-25 10:04:11,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:04:11,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:04:11,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:04:11,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:04:13,528.528 INFO    ] ================================================
[2026-10-25 10:04:13,544.544 INFO    ] Launching Daemon at Sun Oct 25 10:04:13 IST 2026
[2026-10-25 10:04:13,554.554 INFO    ] ================================================
[2026-10-25 10:04:14,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:04:14
[2026-10-25 10:04:14,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:04:14,980.980 INFO    ] Initializing speech engine...
[2026-10-25 10:04:14,994.994 INFO    ] 2026-10-25 10:04:14
[2026-10-25 10:04:15,265.265 INFO    ] 2026-10-25 10:04:15
[2026-10-25 10:04:15,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:04:15,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:04:15,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:04:15,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:04:15,633.633 INFO    ] time= 25/10/2026 10:04:15
[2026-10-25 10:04:15,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:04:15,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:04:15,758.758 INFO    ] No existing commands found in stream
[2026-10-25 10:04:20,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:04:20,773.773 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 10:04:27,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:04:27,022.022 INFO    ] Checking for system updates...
[2026-10-25 10:04:27,058.058 INFO    ] 200
[2026-10-25 10:04:27,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:27,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:04:27,117.117 INFO    ] No update needed
[2026-10-25 10:04:27,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 10:04:27,153.153 INFO    ] 200
[2026-10-25 10:04:27,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:27,204.204 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:04:27,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:04:27,257.257 INFO    ] No camera update needed
[2026-10-25 10:04:27,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:04:27,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:04:27,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:04:27,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:04:29,312.312 INFO    ] ================================================
[2026-10-25 10:04:29,327.327 INFO    ] Launching Daemon at Sun Oct 25 10:04:29 IST 2026
[2026-10-25 10:04:29,337.337 INFO    ] ================================================
[2026-10-25 10:04:29,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:04:29
[2026-10-25 10:04:30,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:04:30,751.751 INFO    ] Initializing speech engine...
[2026-10-25 10:04:30,759.759 INFO    ] 2026-10-25 10:04:30
[2026-10-25 10:04:31,049.049 INFO    ] 2026-10-25 10:04:31
[2026-10-25 10:04:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:04:31,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:04:31,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:04:31,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:04:31,423.423 INFO    ] time= 25/10/2026 10:04:31
[2026-10-25 10:04:31,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:04:31,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:04:31,547.547 INFO    ] No existing commands found in stream
[2026-10-25 10:04:36,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:04:36,562.562 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 10:04:38,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:04:38,525.525 INFO    ] Checking for system updates...
[2026-10-25 10:04:38,561.561 INFO    ] 200
[2026-10-25 10:04:38,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:38,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:04:38,626.626 INFO    ] No update needed
[2026-10-25 10:04:38,628.628 INFO    ] Checking for camera pi updates...
[2026-10-25 10:04:38,662.662 INFO    ] 200
[2026-10-25 10:04:38,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:38,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:04:38,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:04:38,744.744 INFO    ] No camera update needed
[2026-10-25 10:04:38,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:04:38,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:04:38,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:04:38,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:04:40,798.798 INFO    ] ================================================
[2026-10-25 10:04:40,813.813 INFO    ] Launching Daemon at Sun Oct 25 10:04:40 IST 2026
[2026-10-25 10:04:40,824.824 INFO    ] ================================================
[2026-10-25 10:04:41,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:04:41
[2026-10-25 10:04:42,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:04:42,275.275 INFO    ] Initializing speech engine...
[2026-10-25 10:04:42,281.281 INFO    ] 2026-10-25 10:04:42
[2026-10-25 10:04:42,542.542 INFO    ] 2026-10-25 10:04:42
[2026-10-25 10:04:42,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:04:42,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:04:42,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:04:42,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:04:43,023.023 INFO    ] time= 25/10/2026 10:04:42
[2026-10-25 10:04:43,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:04:43,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:04:43,148.148 INFO    ] No existing commands found in stream
[2026-10-25 10:04:48,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:04:48,176.176 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 10:04:49,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:04:49,249.249 INFO    ] Checking for system updates...
[2026-10-25 10:04:49,287.287 INFO    ] 200
[2026-10-25 10:04:49,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:49,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:04:49,348.348 INFO    ] No update needed
[2026-10-25 10:04:49,350.350 INFO    ] Checking for camera pi updates...
[2026-10-25 10:04:49,385.385 INFO    ] 200
[2026-10-25 10:04:49,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:04:49,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:04:49,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:04:49,480.480 INFO    ] No camera update needed
[2026-10-25 10:04:49,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:04:49,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:04:49,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:04:49,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:04:51,539.539 INFO    ] ================================================
[2026-10-25 10:04:51,555.555 INFO    ] Launching Daemon at Sun Oct 25 10:04:51 IST 2026
[2026-10-25 10:04:51,566.566 INFO    ] ================================================
[2026-10-25 10:04:52,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:04:52
[2026-10-25 10:04:52,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:04:53,009.009 INFO    ] Initializing speech engine...
[2026-10-25 10:04:53,015.015 INFO    ] 2026-10-25 10:04:53
[2026-10-25 10:04:53,272.272 INFO    ] 2026-10-25 10:04:53
[2026-10-25 10:04:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:04:53,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:04:53,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:04:53,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:04:53,740.740 INFO    ] time= 25/10/2026 10:04:53
[2026-10-25 10:04:53,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:04:53,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:04:53,888.888 INFO    ] No existing commands found in stream
[2026-10-25 10:04:58,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:04:58,923.923 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 10:05:03,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:05:03,373.373 INFO    ] Checking for system updates...
[2026-10-25 10:05:03,415.415 INFO    ] 200
[2026-10-25 10:05:03,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:03,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:05:03,485.485 INFO    ] No update needed
[2026-10-25 10:05:03,488.488 INFO    ] Checking for camera pi updates...
[2026-10-25 10:05:03,523.523 INFO    ] 200
[2026-10-25 10:05:03,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:03,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:05:03,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:05:03,633.633 INFO    ] No camera update needed
[2026-10-25 10:05:03,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:05:03,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:05:03,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:05:03,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:05:05,688.688 INFO    ] ================================================
[2026-10-25 10:05:05,704.704 INFO    ] Launching Daemon at Sun Oct 25 10:05:05 IST 2026
[2026-10-25 10:05:05,715.715 INFO    ] ================================================
[2026-10-25 10:05:06,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:05:06
[2026-10-25 10:05:06,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:05:07,123.123 INFO    ] Initializing speech engine...
[2026-10-25 10:05:07,130.130 INFO    ] 2026-10-25 10:05:07
[2026-10-25 10:05:07,428.428 INFO    ] 2026-10-25 10:05:07
[2026-10-25 10:05:07,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:05:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:05:07,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:05:07,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:05:07,808.808 INFO    ] time= 25/10/2026 10:05:07
[2026-10-25 10:05:07,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:05:07,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:05:07,934.934 INFO    ] No existing commands found in stream
[2026-10-25 10:05:12,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:05:12,949.949 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 10:05:15,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:05:15,221.221 INFO    ] Checking for system updates...
[2026-10-25 10:05:15,261.261 INFO    ] 200
[2026-10-25 10:05:15,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:15,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:15,325.325 INFO    ] No update needed
[2026-10-25 10:05:15,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 10:05:15,362.362 INFO    ] 200
[2026-10-25 10:05:15,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:15,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:05:15,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:15,557.557 INFO    ] No camera update needed
[2026-10-25 10:05:15,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:05:15,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:05:15,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:05:15,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:05:17,612.612 INFO    ] ================================================
[2026-10-25 10:05:17,627.627 INFO    ] Launching Daemon at Sun Oct 25 10:05:17 IST 2026
[2026-10-25 10:05:17,638.638 INFO    ] ================================================
[2026-10-25 10:05:18,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:05:18
[2026-10-25 10:05:18,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:05:19,063.063 INFO    ] Initializing speech engine...
[2026-10-25 10:05:19,072.072 INFO    ] 2026-10-25 10:05:19
[2026-10-25 10:05:19,319.319 INFO    ] 2026-10-25 10:05:19
[2026-10-25 10:05:19,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:05:19,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:05:19,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:05:19,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:05:19,786.786 INFO    ] time= 25/10/2026 10:05:19
[2026-10-25 10:05:19,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:05:19,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:05:19,937.937 INFO    ] No existing commands found in stream
[2026-10-25 10:05:24,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:05:24,952.952 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 10:05:28,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:05:28,791.791 INFO    ] Checking for system updates...
[2026-10-25 10:05:28,831.831 INFO    ] 200
[2026-10-25 10:05:28,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:28,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:28,891.891 INFO    ] No update needed
[2026-10-25 10:05:28,893.893 INFO    ] Checking for camera pi updates...
[2026-10-25 10:05:28,927.927 INFO    ] 200
[2026-10-25 10:05:28,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:28,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:05:29,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:29,021.021 INFO    ] No camera update needed
[2026-10-25 10:05:29,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:05:29,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:05:29,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:05:29,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:05:31,078.078 INFO    ] ================================================
[2026-10-25 10:05:31,094.094 INFO    ] Launching Daemon at Sun Oct 25 10:05:31 IST 2026
[2026-10-25 10:05:31,105.105 INFO    ] ================================================
[2026-10-25 10:05:31,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:05:31
[2026-10-25 10:05:32,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:05:32,810.810 INFO    ] Initializing speech engine...
[2026-10-25 10:05:32,817.817 INFO    ] 2026-10-25 10:05:32
[2026-10-25 10:05:33,088.088 INFO    ] 2026-10-25 10:05:33
[2026-10-25 10:05:33,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:05:33,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:05:33,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:05:33,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:05:33,637.637 INFO    ] time= 25/10/2026 10:05:33
[2026-10-25 10:05:33,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:05:33,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:05:33,773.773 INFO    ] No existing commands found in stream
[2026-10-25 10:05:38,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:05:38,808.808 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 10:05:40,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:05:40,590.590 INFO    ] Checking for system updates...
[2026-10-25 10:05:40,628.628 INFO    ] 200
[2026-10-25 10:05:40,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:40,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:05:40,687.687 INFO    ] No update needed
[2026-10-25 10:05:40,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 10:05:40,727.727 INFO    ] 200
[2026-10-25 10:05:40,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:40,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:05:40,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:05:40,834.834 INFO    ] No camera update needed
[2026-10-25 10:05:40,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:05:40,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:05:40,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:05:40,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:05:42,894.894 INFO    ] ================================================
[2026-10-25 10:05:42,911.911 INFO    ] Launching Daemon at Sun Oct 25 10:05:42 IST 2026
[2026-10-25 10:05:42,924.924 INFO    ] ================================================
[2026-10-25 10:05:43,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:05:43
[2026-10-25 10:05:44,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:05:44,450.450 INFO    ] Initializing speech engine...
[2026-10-25 10:05:44,474.474 INFO    ] 2026-10-25 10:05:44
[2026-10-25 10:05:44,747.747 INFO    ] 2026-10-25 10:05:44
[2026-10-25 10:05:44,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:05:45,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:05:45,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:05:45,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:05:45,166.166 INFO    ] time= 25/10/2026 10:05:45
[2026-10-25 10:05:45,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:05:45,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:05:45,334.334 INFO    ] No existing commands found in stream
[2026-10-25 10:05:50,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:05:50,362.362 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 10:05:52,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:05:52,796.796 INFO    ] Checking for system updates...
[2026-10-25 10:05:52,834.834 INFO    ] 200
[2026-10-25 10:05:52,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:52,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:52,893.893 INFO    ] No update needed
[2026-10-25 10:05:52,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 10:05:52,933.933 INFO    ] 200
[2026-10-25 10:05:52,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:05:52,977.977 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:05:53,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:05:53,028.028 INFO    ] No camera update needed
[2026-10-25 10:05:53,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:05:53,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:05:53,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:05:53,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:05:55,088.088 INFO    ] ================================================
[2026-10-25 10:05:55,103.103 INFO    ] Launching Daemon at Sun Oct 25 10:05:55 IST 2026
[2026-10-25 10:05:55,114.114 INFO    ] ================================================
[2026-10-25 10:05:55,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:05:55
[2026-10-25 10:05:56,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:05:56,577.577 INFO    ] Initializing speech engine...
[2026-10-25 10:05:56,584.584 INFO    ] 2026-10-25 10:05:56
[2026-10-25 10:05:56,846.846 INFO    ] 2026-10-25 10:05:56
[2026-10-25 10:05:56,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:05:59,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:05:59,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:05:59,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:05:59,362.362 INFO    ] time= 25/10/2026 10:05:59
[2026-10-25 10:05:59,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:05:59,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:05:59,474.474 INFO    ] No existing commands found in stream
[2026-10-25 10:06:04,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:06:04,489.489 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 10:06:05,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:06:05,861.861 INFO    ] Checking for system updates...
[2026-10-25 10:06:05,896.896 INFO    ] 200
[2026-10-25 10:06:05,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:05,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:05,960.960 INFO    ] No update needed
[2026-10-25 10:06:05,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 10:06:05,997.997 INFO    ] 200
[2026-10-25 10:06:05,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:06,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:06:06,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:06,089.089 INFO    ] No camera update needed
[2026-10-25 10:06:06,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:06:06,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:06:06,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:06:06,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:06:08,144.144 INFO    ] ================================================
[2026-10-25 10:06:08,159.159 INFO    ] Launching Daemon at Sun Oct 25 10:06:08 IST 2026
[2026-10-25 10:06:08,171.171 INFO    ] ================================================
[2026-10-25 10:06:08,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:06:08
[2026-10-25 10:06:09,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:06:09,785.785 INFO    ] Initializing speech engine...
[2026-10-25 10:06:09,794.794 INFO    ] 2026-10-25 10:06:09
[2026-10-25 10:06:10,078.078 INFO    ] 2026-10-25 10:06:10
[2026-10-25 10:06:10,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:06:10,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:06:10,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:06:10,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:06:10,511.511 INFO    ] time= 25/10/2026 10:06:10
[2026-10-25 10:06:10,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:06:10,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:06:10,683.683 INFO    ] No existing commands found in stream
[2026-10-25 10:06:15,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:06:15,697.697 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 10:06:19,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:06:19,006.006 INFO    ] Checking for system updates...
[2026-10-25 10:06:19,042.042 INFO    ] 200
[2026-10-25 10:06:19,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:19,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:19,106.106 INFO    ] No update needed
[2026-10-25 10:06:19,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 10:06:19,145.145 INFO    ] 200
[2026-10-25 10:06:19,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:19,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:06:19,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:19,254.254 INFO    ] No camera update needed
[2026-10-25 10:06:19,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:06:19,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:06:19,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:06:19,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:06:21,312.312 INFO    ] ================================================
[2026-10-25 10:06:21,328.328 INFO    ] Launching Daemon at Sun Oct 25 10:06:21 IST 2026
[2026-10-25 10:06:21,340.340 INFO    ] ================================================
[2026-10-25 10:06:21,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:06:21
[2026-10-25 10:06:22,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:06:22,953.953 INFO    ] Initializing speech engine...
[2026-10-25 10:06:22,964.964 INFO    ] 2026-10-25 10:06:22
[2026-10-25 10:06:23,270.270 INFO    ] 2026-10-25 10:06:23
[2026-10-25 10:06:23,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:06:23,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:06:23,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:06:23,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:06:23,712.712 INFO    ] time= 25/10/2026 10:06:23
[2026-10-25 10:06:23,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:06:23,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:06:23,926.926 INFO    ] No existing commands found in stream
[2026-10-25 10:06:28,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:06:28,954.954 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 10:06:32,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:06:32,552.552 INFO    ] Checking for system updates...
[2026-10-25 10:06:32,589.589 INFO    ] 200
[2026-10-25 10:06:32,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:32,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:06:32,649.649 INFO    ] No update needed
[2026-10-25 10:06:32,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 10:06:32,685.685 INFO    ] 200
[2026-10-25 10:06:32,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:32,734.734 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:06:32,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:06:32,773.773 INFO    ] No camera update needed
[2026-10-25 10:06:32,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:06:32,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:06:32,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:06:32,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:06:34,829.829 INFO    ] ================================================
[2026-10-25 10:06:34,845.845 INFO    ] Launching Daemon at Sun Oct 25 10:06:34 IST 2026
[2026-10-25 10:06:34,856.856 INFO    ] ================================================
[2026-10-25 10:06:35,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:06:35
[2026-10-25 10:06:36,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:06:36,375.375 INFO    ] Initializing speech engine...
[2026-10-25 10:06:36,389.389 INFO    ] 2026-10-25 10:06:36
[2026-10-25 10:06:36,662.662 INFO    ] 2026-10-25 10:06:36
[2026-10-25 10:06:36,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:06:36,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:06:36,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:06:37,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:06:37,146.146 INFO    ] time= 25/10/2026 10:06:37
[2026-10-25 10:06:37,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:06:37,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:06:37,374.374 INFO    ] No existing commands found in stream
[2026-10-25 10:06:42,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:06:42,400.400 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 10:06:44,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:06:44,805.805 INFO    ] Checking for system updates...
[2026-10-25 10:06:44,842.842 INFO    ] 200
[2026-10-25 10:06:44,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:44,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:44,902.902 INFO    ] No update needed
[2026-10-25 10:06:44,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 10:06:44,942.942 INFO    ] 200
[2026-10-25 10:06:44,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:44,985.985 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:06:45,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:45,036.036 INFO    ] No camera update needed
[2026-10-25 10:06:45,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:06:45,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:06:45,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:06:45,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:06:47,090.090 INFO    ] ================================================
[2026-10-25 10:06:47,106.106 INFO    ] Launching Daemon at Sun Oct 25 10:06:47 IST 2026
[2026-10-25 10:06:47,117.117 INFO    ] ================================================
[2026-10-25 10:06:47,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:06:47
[2026-10-25 10:06:48,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:06:48,747.747 INFO    ] Initializing speech engine...
[2026-10-25 10:06:48,761.761 INFO    ] 2026-10-25 10:06:48
[2026-10-25 10:06:49,052.052 INFO    ] 2026-10-25 10:06:49
[2026-10-25 10:06:49,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:06:49,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:06:49,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:06:49,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:06:49,586.586 INFO    ] time= 25/10/2026 10:06:49
[2026-10-25 10:06:49,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:06:49,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:06:49,746.746 INFO    ] No existing commands found in stream
[2026-10-25 10:06:54,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:06:54,767.767 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 10:06:56,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:06:56,506.506 INFO    ] Checking for system updates...
[2026-10-25 10:06:56,548.548 INFO    ] 200
[2026-10-25 10:06:56,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:56,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:56,613.613 INFO    ] No update needed
[2026-10-25 10:06:56,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 10:06:56,653.653 INFO    ] 200
[2026-10-25 10:06:56,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:06:56,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:06:56,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:06:56,746.746 INFO    ] No camera update needed
[2026-10-25 10:06:56,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:06:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:06:56,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:06:56,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:06:58,802.802 INFO    ] ================================================
[2026-10-25 10:06:58,819.819 INFO    ] Launching Daemon at Sun Oct 25 10:06:58 IST 2026
[2026-10-25 10:06:58,830.830 INFO    ] ================================================
[2026-10-25 10:06:59,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:06:59
[2026-10-25 10:07:00,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:07:00,292.292 INFO    ] Initializing speech engine...
[2026-10-25 10:07:00,307.307 INFO    ] 2026-10-25 10:07:00
[2026-10-25 10:07:00,576.576 INFO    ] 2026-10-25 10:07:00
[2026-10-25 10:07:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:07:00,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:07:00,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:07:00,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:07:00,956.956 INFO    ] time= 25/10/2026 10:07:00
[2026-10-25 10:07:00,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:07:01,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:07:01,084.084 INFO    ] No existing commands found in stream
[2026-10-25 10:07:06,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:07:06,102.102 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 10:07:08,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:07:08,722.722 INFO    ] Checking for system updates...
[2026-10-25 10:07:08,758.758 INFO    ] 200
[2026-10-25 10:07:08,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:08,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:07:08,816.816 INFO    ] No update needed
[2026-10-25 10:07:08,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 10:07:08,872.872 INFO    ] 200
[2026-10-25 10:07:08,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:08,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:07:08,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:07:08,972.972 INFO    ] No camera update needed
[2026-10-25 10:07:08,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:07:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:07:08,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:07:08,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:07:11,028.028 INFO    ] ================================================
[2026-10-25 10:07:11,043.043 INFO    ] Launching Daemon at Sun Oct 25 10:07:11 IST 2026
[2026-10-25 10:07:11,054.054 INFO    ] ================================================
[2026-10-25 10:07:11,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:07:11
[2026-10-25 10:07:12,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:07:12,472.472 INFO    ] Initializing speech engine...
[2026-10-25 10:07:12,481.481 INFO    ] 2026-10-25 10:07:12
[2026-10-25 10:07:12,730.730 INFO    ] 2026-10-25 10:07:12
[2026-10-25 10:07:12,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:07:12,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:07:12,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:07:13,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:07:13,188.188 INFO    ] time= 25/10/2026 10:07:13
[2026-10-25 10:07:13,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:07:13,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:07:13,356.356 INFO    ] No existing commands found in stream
[2026-10-25 10:07:18,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:07:18,371.371 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 10:07:23,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:07:23,092.092 INFO    ] Checking for system updates...
[2026-10-25 10:07:23,133.133 INFO    ] 200
[2026-10-25 10:07:23,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:23,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:07:23,197.197 INFO    ] No update needed
[2026-10-25 10:07:23,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 10:07:23,234.234 INFO    ] 200
[2026-10-25 10:07:23,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:23,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:07:23,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:07:23,445.445 INFO    ] No camera update needed
[2026-10-25 10:07:23,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:07:23,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:07:23,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:07:23,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:07:25,503.503 INFO    ] ================================================
[2026-10-25 10:07:25,519.519 INFO    ] Launching Daemon at Sun Oct 25 10:07:25 IST 2026
[2026-10-25 10:07:25,530.530 INFO    ] ================================================
[2026-10-25 10:07:26,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:07:26
[2026-10-25 10:07:26,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:07:26,974.974 INFO    ] Initializing speech engine...
[2026-10-25 10:07:26,983.983 INFO    ] 2026-10-25 10:07:26
[2026-10-25 10:07:27,230.230 INFO    ] 2026-10-25 10:07:27
[2026-10-25 10:07:27,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:07:27,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:07:27,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:07:27,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:07:27,696.696 INFO    ] time= 25/10/2026 10:07:27
[2026-10-25 10:07:27,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:07:27,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:07:27,848.848 INFO    ] No existing commands found in stream
[2026-10-25 10:07:32,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:07:32,863.863 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 10:07:35,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:07:35,895.895 INFO    ] Checking for system updates...
[2026-10-25 10:07:35,935.935 INFO    ] 200
[2026-10-25 10:07:35,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:35,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:07:36,000.000 INFO    ] No update needed
[2026-10-25 10:07:36,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 10:07:36,040.040 INFO    ] 200
[2026-10-25 10:07:36,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:36,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:07:36,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:07:36,145.145 INFO    ] No camera update needed
[2026-10-25 10:07:36,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:07:36,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:07:36,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:07:36,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:07:38,201.201 INFO    ] ================================================
[2026-10-25 10:07:38,217.217 INFO    ] Launching Daemon at Sun Oct 25 10:07:38 IST 2026
[2026-10-25 10:07:38,231.231 INFO    ] ================================================
[2026-10-25 10:07:38,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:07:38
[2026-10-25 10:07:39,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:07:39,866.866 INFO    ] Initializing speech engine...
[2026-10-25 10:07:39,878.878 INFO    ] 2026-10-25 10:07:39
[2026-10-25 10:07:40,159.159 INFO    ] 2026-10-25 10:07:40
[2026-10-25 10:07:40,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:07:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:07:40,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:07:40,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:07:40,636.636 INFO    ] time= 25/10/2026 10:07:40
[2026-10-25 10:07:40,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:07:40,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:07:40,836.836 INFO    ] No existing commands found in stream
[2026-10-25 10:07:45,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:07:45,865.865 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 10:07:46,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:07:46,935.935 INFO    ] Checking for system updates...
[2026-10-25 10:07:46,973.973 INFO    ] 200
[2026-10-25 10:07:46,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:47,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:07:47,033.033 INFO    ] No update needed
[2026-10-25 10:07:47,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 10:07:47,070.070 INFO    ] 200
[2026-10-25 10:07:47,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:07:47,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:07:47,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:07:47,179.179 INFO    ] No camera update needed
[2026-10-25 10:07:47,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:07:47,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:07:47,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:07:47,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:07:49,235.235 INFO    ] ================================================
[2026-10-25 10:07:49,251.251 INFO    ] Launching Daemon at Sun Oct 25 10:07:49 IST 2026
[2026-10-25 10:07:49,261.261 INFO    ] ================================================
[2026-10-25 10:07:49,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:07:49
[2026-10-25 10:07:50,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:07:50,894.894 INFO    ] Initializing speech engine...
[2026-10-25 10:07:50,908.908 INFO    ] 2026-10-25 10:07:50
[2026-10-25 10:07:51,191.191 INFO    ] 2026-10-25 10:07:51
[2026-10-25 10:07:51,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:07:51,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:07:51,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:07:51,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:07:51,657.657 INFO    ] time= 25/10/2026 10:07:51
[2026-10-25 10:07:51,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:07:51,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:07:51,846.846 INFO    ] No existing commands found in stream
[2026-10-25 10:07:56,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:07:56,871.871 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 10:08:02,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:08:02,027.027 INFO    ] Checking for system updates...
[2026-10-25 10:08:02,089.089 INFO    ] 200
[2026-10-25 10:08:02,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:02,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:08:02,166.166 INFO    ] No update needed
[2026-10-25 10:08:02,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 10:08:02,210.210 INFO    ] 200
[2026-10-25 10:08:02,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:02,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:08:02,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:08:02,324.324 INFO    ] No camera update needed
[2026-10-25 10:08:02,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:08:02,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:08:02,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:08:02,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:08:04,384.384 INFO    ] ================================================
[2026-10-25 10:08:04,400.400 INFO    ] Launching Daemon at Sun Oct 25 10:08:04 IST 2026
[2026-10-25 10:08:04,411.411 INFO    ] ================================================
[2026-10-25 10:08:04,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:08:04
[2026-10-25 10:08:05,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:08:05,876.876 INFO    ] Initializing speech engine...
[2026-10-25 10:08:05,882.882 INFO    ] 2026-10-25 10:08:05
[2026-10-25 10:08:06,143.143 INFO    ] 2026-10-25 10:08:06
[2026-10-25 10:08:06,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:08:06,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:08:06,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:08:06,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:08:06,632.632 INFO    ] time= 25/10/2026 10:08:06
[2026-10-25 10:08:06,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:08:06,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:08:06,830.830 INFO    ] No existing commands found in stream
[2026-10-25 10:08:11,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:08:11,855.855 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 10:08:14,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:08:14,618.618 INFO    ] Checking for system updates...
[2026-10-25 10:08:14,659.659 INFO    ] 200
[2026-10-25 10:08:14,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:14,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:14,724.724 INFO    ] No update needed
[2026-10-25 10:08:14,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 10:08:14,760.760 INFO    ] 200
[2026-10-25 10:08:14,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:14,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:08:14,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:14,859.859 INFO    ] No camera update needed
[2026-10-25 10:08:14,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:08:14,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:08:14,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:08:14,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:08:16,919.919 INFO    ] ================================================
[2026-10-25 10:08:16,935.935 INFO    ] Launching Daemon at Sun Oct 25 10:08:16 IST 2026
[2026-10-25 10:08:16,947.947 INFO    ] ================================================
[2026-10-25 10:08:17,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:08:17
[2026-10-25 10:08:18,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:08:18,437.437 INFO    ] Initializing speech engine...
[2026-10-25 10:08:18,450.450 INFO    ] 2026-10-25 10:08:18
[2026-10-25 10:08:18,757.757 INFO    ] 2026-10-25 10:08:18
[2026-10-25 10:08:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:08:19,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:08:19,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:08:19,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:08:19,263.263 INFO    ] time= 25/10/2026 10:08:19
[2026-10-25 10:08:19,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:08:19,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:08:19,424.424 INFO    ] No existing commands found in stream
[2026-10-25 10:08:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:08:24,452.452 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 10:08:28,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:08:28,252.252 INFO    ] Checking for system updates...
[2026-10-25 10:08:28,294.294 INFO    ] 200
[2026-10-25 10:08:28,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:28,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:28,351.351 INFO    ] No update needed
[2026-10-25 10:08:28,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 10:08:28,392.392 INFO    ] 200
[2026-10-25 10:08:28,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:28,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:08:28,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:28,489.489 INFO    ] No camera update needed
[2026-10-25 10:08:28,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:08:28,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:08:28,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:08:28,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:08:30,544.544 INFO    ] ================================================
[2026-10-25 10:08:30,560.560 INFO    ] Launching Daemon at Sun Oct 25 10:08:30 IST 2026
[2026-10-25 10:08:30,572.572 INFO    ] ================================================
[2026-10-25 10:08:31,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:08:31
[2026-10-25 10:08:31,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:08:32,050.050 INFO    ] Initializing speech engine...
[2026-10-25 10:08:32,062.062 INFO    ] 2026-10-25 10:08:32
[2026-10-25 10:08:32,340.340 INFO    ] 2026-10-25 10:08:32
[2026-10-25 10:08:32,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:08:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:08:32,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:08:32,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:08:32,819.819 INFO    ] time= 25/10/2026 10:08:32
[2026-10-25 10:08:32,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:08:32,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:08:33,017.017 INFO    ] No existing commands found in stream
[2026-10-25 10:08:38,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:08:38,033.033 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 10:08:42,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:08:42,045.045 INFO    ] Checking for system updates...
[2026-10-25 10:08:42,082.082 INFO    ] 200
[2026-10-25 10:08:42,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:42,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:42,147.147 INFO    ] No update needed
[2026-10-25 10:08:42,150.150 INFO    ] Checking for camera pi updates...
[2026-10-25 10:08:42,187.187 INFO    ] 200
[2026-10-25 10:08:42,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:42,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:08:42,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:42,286.286 INFO    ] No camera update needed
[2026-10-25 10:08:42,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:08:42,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:08:42,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:08:42,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:08:44,344.344 INFO    ] ================================================
[2026-10-25 10:08:44,360.360 INFO    ] Launching Daemon at Sun Oct 25 10:08:44 IST 2026
[2026-10-25 10:08:44,370.370 INFO    ] ================================================
[2026-10-25 10:08:45,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:08:45
[2026-10-25 10:08:45,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:08:46,002.002 INFO    ] Initializing speech engine...
[2026-10-25 10:08:46,015.015 INFO    ] 2026-10-25 10:08:46
[2026-10-25 10:08:46,285.285 INFO    ] 2026-10-25 10:08:46
[2026-10-25 10:08:46,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:08:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:08:46,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:08:46,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:08:46,746.746 INFO    ] time= 25/10/2026 10:08:46
[2026-10-25 10:08:46,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:08:46,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:08:46,914.914 INFO    ] No existing commands found in stream
[2026-10-25 10:08:51,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:08:51,938.938 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 10:08:53,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:08:53,591.591 INFO    ] Checking for system updates...
[2026-10-25 10:08:53,629.629 INFO    ] 200
[2026-10-25 10:08:53,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:53,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:53,689.689 INFO    ] No update needed
[2026-10-25 10:08:53,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 10:08:53,727.727 INFO    ] 200
[2026-10-25 10:08:53,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:08:53,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:08:53,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:08:53,841.841 INFO    ] No camera update needed
[2026-10-25 10:08:53,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:08:53,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:08:53,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:08:53,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:08:55,899.899 INFO    ] ================================================
[2026-10-25 10:08:55,914.914 INFO    ] Launching Daemon at Sun Oct 25 10:08:55 IST 2026
[2026-10-25 10:08:55,925.925 INFO    ] ================================================
[2026-10-25 10:08:56,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:08:56
[2026-10-25 10:08:57,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:08:57,391.391 INFO    ] Initializing speech engine...
[2026-10-25 10:08:57,399.399 INFO    ] 2026-10-25 10:08:57
[2026-10-25 10:08:57,658.658 INFO    ] 2026-10-25 10:08:57
[2026-10-25 10:08:57,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:08:57,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:08:57,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:08:58,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:08:58,148.148 INFO    ] time= 25/10/2026 10:08:58
[2026-10-25 10:08:58,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:08:58,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:08:58,341.341 INFO    ] No existing commands found in stream
[2026-10-25 10:09:03,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:09:03,371.371 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 10:09:04,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:09:04,307.307 INFO    ] Checking for system updates...
[2026-10-25 10:09:04,354.354 INFO    ] 200
[2026-10-25 10:09:04,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:04,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:09:04,419.419 INFO    ] No update needed
[2026-10-25 10:09:04,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 10:09:04,456.456 INFO    ] 200
[2026-10-25 10:09:04,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:04,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:09:04,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:09:04,558.558 INFO    ] No camera update needed
[2026-10-25 10:09:04,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:09:04,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:09:04,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:09:04,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:09:06,613.613 INFO    ] ================================================
[2026-10-25 10:09:06,628.628 INFO    ] Launching Daemon at Sun Oct 25 10:09:06 IST 2026
[2026-10-25 10:09:06,638.638 INFO    ] ================================================
[2026-10-25 10:09:07,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:09:07
[2026-10-25 10:09:07,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:09:08,078.078 INFO    ] Initializing speech engine...
[2026-10-25 10:09:08,087.087 INFO    ] 2026-10-25 10:09:08
[2026-10-25 10:09:08,385.385 INFO    ] 2026-10-25 10:09:08
[2026-10-25 10:09:08,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:09:08,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:09:08,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:09:08,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:09:08,764.764 INFO    ] time= 25/10/2026 10:09:08
[2026-10-25 10:09:08,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:09:08,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:09:08,960.960 INFO    ] No existing commands found in stream
[2026-10-25 10:09:13,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:09:13,973.973 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 10:09:17,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:09:17,304.304 INFO    ] Checking for system updates...
[2026-10-25 10:09:17,341.341 INFO    ] 200
[2026-10-25 10:09:17,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:17,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:17,401.401 INFO    ] No update needed
[2026-10-25 10:09:17,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 10:09:17,438.438 INFO    ] 200
[2026-10-25 10:09:17,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:17,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:09:17,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:17,550.550 INFO    ] No camera update needed
[2026-10-25 10:09:17,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:09:17,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:09:17,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:09:17,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:09:19,605.605 INFO    ] ================================================
[2026-10-25 10:09:19,620.620 INFO    ] Launching Daemon at Sun Oct 25 10:09:19 IST 2026
[2026-10-25 10:09:19,631.631 INFO    ] ================================================
[2026-10-25 10:09:20,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:09:20
[2026-10-25 10:09:20,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:09:21,177.177 INFO    ] Initializing speech engine...
[2026-10-25 10:09:21,185.185 INFO    ] 2026-10-25 10:09:21
[2026-10-25 10:09:21,430.430 INFO    ] 2026-10-25 10:09:21
[2026-10-25 10:09:21,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:09:21,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:09:21,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:09:21,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:09:21,797.797 INFO    ] time= 25/10/2026 10:09:21
[2026-10-25 10:09:21,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:09:21,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:09:21,974.974 INFO    ] No existing commands found in stream
[2026-10-25 10:09:26,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:09:27,002.002 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 10:09:28,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:09:28,418.418 INFO    ] Checking for system updates...
[2026-10-25 10:09:28,454.454 INFO    ] 200
[2026-10-25 10:09:28,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:28,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:28,512.512 INFO    ] No update needed
[2026-10-25 10:09:28,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 10:09:28,553.553 INFO    ] 200
[2026-10-25 10:09:28,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:28,596.596 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:09:28,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:28,753.753 INFO    ] No camera update needed
[2026-10-25 10:09:28,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:09:28,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:09:28,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:09:28,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:09:30,810.810 INFO    ] ================================================
[2026-10-25 10:09:30,825.825 INFO    ] Launching Daemon at Sun Oct 25 10:09:30 IST 2026
[2026-10-25 10:09:30,835.835 INFO    ] ================================================
[2026-10-25 10:09:31,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:09:31
[2026-10-25 10:09:32,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:09:32,341.341 INFO    ] Initializing speech engine...
[2026-10-25 10:09:32,346.346 INFO    ] 2026-10-25 10:09:32
[2026-10-25 10:09:32,624.624 INFO    ] 2026-10-25 10:09:32
[2026-10-25 10:09:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:09:33,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:09:33,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:09:34,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:09:34,123.123 INFO    ] time= 25/10/2026 10:09:34
[2026-10-25 10:09:34,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:09:34,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:09:34,185.185 INFO    ] No existing commands found in stream
[2026-10-25 10:09:39,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:09:39,199.199 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 10:09:40,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:09:40,275.275 INFO    ] Checking for system updates...
[2026-10-25 10:09:40,312.312 INFO    ] 200
[2026-10-25 10:09:40,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:40,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:09:40,371.371 INFO    ] No update needed
[2026-10-25 10:09:40,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 10:09:40,413.413 INFO    ] 200
[2026-10-25 10:09:40,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:40,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:09:40,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:09:40,521.521 INFO    ] No camera update needed
[2026-10-25 10:09:40,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:09:40,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:09:40,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:09:40,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:09:42,575.575 INFO    ] ================================================
[2026-10-25 10:09:42,591.591 INFO    ] Launching Daemon at Sun Oct 25 10:09:42 IST 2026
[2026-10-25 10:09:42,602.602 INFO    ] ================================================
[2026-10-25 10:09:43,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:09:43
[2026-10-25 10:09:43,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:09:44,123.123 INFO    ] Initializing speech engine...
[2026-10-25 10:09:44,132.132 INFO    ] 2026-10-25 10:09:44
[2026-10-25 10:09:44,376.376 INFO    ] 2026-10-25 10:09:44
[2026-10-25 10:09:44,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:09:44,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:09:44,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:09:44,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:09:44,745.745 INFO    ] time= 25/10/2026 10:09:44
[2026-10-25 10:09:44,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:09:44,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:09:44,921.921 INFO    ] No existing commands found in stream
[2026-10-25 10:09:49,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:09:49,954.954 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 10:09:51,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:09:51,158.158 INFO    ] Checking for system updates...
[2026-10-25 10:09:51,194.194 INFO    ] 200
[2026-10-25 10:09:51,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:51,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:51,256.256 INFO    ] No update needed
[2026-10-25 10:09:51,258.258 INFO    ] Checking for camera pi updates...
[2026-10-25 10:09:51,291.291 INFO    ] 200
[2026-10-25 10:09:51,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:09:51,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:09:51,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:09:51,532.532 INFO    ] No camera update needed
[2026-10-25 10:09:51,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:09:51,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:09:51,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:09:51,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:09:53,589.589 INFO    ] ================================================
[2026-10-25 10:09:53,605.605 INFO    ] Launching Daemon at Sun Oct 25 10:09:53 IST 2026
[2026-10-25 10:09:53,615.615 INFO    ] ================================================
[2026-10-25 10:09:54,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:09:54
[2026-10-25 10:09:54,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:09:55,032.032 INFO    ] Initializing speech engine...
[2026-10-25 10:09:55,041.041 INFO    ] 2026-10-25 10:09:55
[2026-10-25 10:09:55,286.286 INFO    ] 2026-10-25 10:09:55
[2026-10-25 10:09:55,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:09:55,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:09:55,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:09:55,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:09:55,717.717 INFO    ] time= 25/10/2026 10:09:55
[2026-10-25 10:09:55,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:09:55,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:09:55,872.872 INFO    ] No existing commands found in stream
[2026-10-25 10:10:00,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:10:00,891.891 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 10:10:08,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:10:08,652.652 INFO    ] Checking for system updates...
[2026-10-25 10:10:08,688.688 INFO    ] 200
[2026-10-25 10:10:08,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:08,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:08,747.747 INFO    ] No update needed
[2026-10-25 10:10:08,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 10:10:08,784.784 INFO    ] 200
[2026-10-25 10:10:08,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:08,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:10:08,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:08,863.863 INFO    ] No camera update needed
[2026-10-25 10:10:08,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:10:08,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:10:08,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:10:08,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:10:10,922.922 INFO    ] ================================================
[2026-10-25 10:10:10,937.937 INFO    ] Launching Daemon at Sun Oct 25 10:10:10 IST 2026
[2026-10-25 10:10:10,949.949 INFO    ] ================================================
[2026-10-25 10:10:11,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:10:11
[2026-10-25 10:10:12,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:10:12,355.355 INFO    ] Initializing speech engine...
[2026-10-25 10:10:12,376.376 INFO    ] 2026-10-25 10:10:12
[2026-10-25 10:10:12,637.637 INFO    ] 2026-10-25 10:10:12
[2026-10-25 10:10:12,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:10:12,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:10:12,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:10:13,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:10:13,112.112 INFO    ] time= 25/10/2026 10:10:13
[2026-10-25 10:10:13,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:10:13,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:10:13,256.256 INFO    ] No existing commands found in stream
[2026-10-25 10:10:18,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:10:18,273.273 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 10:10:20,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:10:20,023.023 INFO    ] Checking for system updates...
[2026-10-25 10:10:20,063.063 INFO    ] 200
[2026-10-25 10:10:20,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:20,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:20,128.128 INFO    ] No update needed
[2026-10-25 10:10:20,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 10:10:20,168.168 INFO    ] 200
[2026-10-25 10:10:20,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:20,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:10:20,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:20,261.261 INFO    ] No camera update needed
[2026-10-25 10:10:20,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:10:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:10:20,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:10:20,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:10:22,320.320 INFO    ] ================================================
[2026-10-25 10:10:22,335.335 INFO    ] Launching Daemon at Sun Oct 25 10:10:22 IST 2026
[2026-10-25 10:10:22,347.347 INFO    ] ================================================
[2026-10-25 10:10:22,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:10:22
[2026-10-25 10:10:23,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:10:23,747.747 INFO    ] Initializing speech engine...
[2026-10-25 10:10:23,770.770 INFO    ] 2026-10-25 10:10:23
[2026-10-25 10:10:24,025.025 INFO    ] 2026-10-25 10:10:24
[2026-10-25 10:10:24,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:10:24,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:10:24,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:10:24,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:10:24,402.402 INFO    ] time= 25/10/2026 10:10:24
[2026-10-25 10:10:24,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:10:24,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:10:24,580.580 INFO    ] No existing commands found in stream
[2026-10-25 10:10:29,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:10:29,608.608 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 10:10:30,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:10:30,812.812 INFO    ] Checking for system updates...
[2026-10-25 10:10:30,848.848 INFO    ] 200
[2026-10-25 10:10:30,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:30,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:30,914.914 INFO    ] No update needed
[2026-10-25 10:10:30,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 10:10:30,951.951 INFO    ] 200
[2026-10-25 10:10:30,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:30,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:10:31,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:31,053.053 INFO    ] No camera update needed
[2026-10-25 10:10:31,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:10:31,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:10:31,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:10:31,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:10:33,115.115 INFO    ] ================================================
[2026-10-25 10:10:33,134.134 INFO    ] Launching Daemon at Sun Oct 25 10:10:33 IST 2026
[2026-10-25 10:10:33,145.145 INFO    ] ================================================
[2026-10-25 10:10:33,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:10:33
[2026-10-25 10:10:34,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:10:34,862.862 INFO    ] Initializing speech engine...
[2026-10-25 10:10:34,869.869 INFO    ] 2026-10-25 10:10:34
[2026-10-25 10:10:35,175.175 INFO    ] 2026-10-25 10:10:35
[2026-10-25 10:10:35,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:10:35,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:10:35,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:10:36,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:10:36,111.111 INFO    ] time= 25/10/2026 10:10:36
[2026-10-25 10:10:36,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:10:36,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:10:36,226.226 INFO    ] No existing commands found in stream
[2026-10-25 10:10:41,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:10:41,257.257 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 10:10:43,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:10:43,376.376 INFO    ] Checking for system updates...
[2026-10-25 10:10:43,417.417 INFO    ] 200
[2026-10-25 10:10:43,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:43,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:10:43,475.475 INFO    ] No update needed
[2026-10-25 10:10:43,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 10:10:43,512.512 INFO    ] 200
[2026-10-25 10:10:43,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:43,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:10:43,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:10:43,613.613 INFO    ] No camera update needed
[2026-10-25 10:10:43,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:10:43,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:10:43,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:10:43,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:10:45,668.668 INFO    ] ================================================
[2026-10-25 10:10:45,683.683 INFO    ] Launching Daemon at Sun Oct 25 10:10:45 IST 2026
[2026-10-25 10:10:45,694.694 INFO    ] ================================================
[2026-10-25 10:10:46,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:10:46
[2026-10-25 10:10:46,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:10:47,144.144 INFO    ] Initializing speech engine...
[2026-10-25 10:10:47,155.155 INFO    ] 2026-10-25 10:10:47
[2026-10-25 10:10:47,414.414 INFO    ] 2026-10-25 10:10:47
[2026-10-25 10:10:47,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:10:47,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:10:47,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:10:47,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:10:47,878.878 INFO    ] time= 25/10/2026 10:10:47
[2026-10-25 10:10:47,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:10:47,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:10:48,024.024 INFO    ] No existing commands found in stream
[2026-10-25 10:10:53,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:10:53,039.039 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 10:10:55,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:10:55,438.438 INFO    ] Checking for system updates...
[2026-10-25 10:10:55,479.479 INFO    ] 200
[2026-10-25 10:10:55,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:55,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:55,547.547 INFO    ] No update needed
[2026-10-25 10:10:55,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 10:10:55,588.588 INFO    ] 200
[2026-10-25 10:10:55,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:10:55,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:10:55,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:10:55,687.687 INFO    ] No camera update needed
[2026-10-25 10:10:55,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:10:55,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:10:55,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:10:55,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:10:57,746.746 INFO    ] ================================================
[2026-10-25 10:10:57,762.762 INFO    ] Launching Daemon at Sun Oct 25 10:10:57 IST 2026
[2026-10-25 10:10:57,772.772 INFO    ] ================================================
[2026-10-25 10:10:58,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:10:58
[2026-10-25 10:10:58,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:10:59,235.235 INFO    ] Initializing speech engine...
[2026-10-25 10:10:59,245.245 INFO    ] 2026-10-25 10:10:59
[2026-10-25 10:10:59,501.501 INFO    ] 2026-10-25 10:10:59
[2026-10-25 10:10:59,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:10:59,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:10:59,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:10:59,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:10:59,963.963 INFO    ] time= 25/10/2026 10:10:59
[2026-10-25 10:11:00,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:00,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:11:00,118.118 INFO    ] No existing commands found in stream
[2026-10-25 10:11:05,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:11:05,153.153 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 10:11:07,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:11:07,711.711 INFO    ] Checking for system updates...
[2026-10-25 10:11:07,752.752 INFO    ] 200
[2026-10-25 10:11:07,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:07,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:11:07,818.818 INFO    ] No update needed
[2026-10-25 10:11:07,820.820 INFO    ] Checking for camera pi updates...
[2026-10-25 10:11:07,855.855 INFO    ] 200
[2026-10-25 10:11:07,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:07,898.898 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:11:07,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:11:07,948.948 INFO    ] No camera update needed
[2026-10-25 10:11:07,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:11:07,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:11:07,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:11:07,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:11:10,005.005 INFO    ] ================================================
[2026-10-25 10:11:10,021.021 INFO    ] Launching Daemon at Sun Oct 25 10:11:10 IST 2026
[2026-10-25 10:11:10,031.031 INFO    ] ================================================
[2026-10-25 10:11:10,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:11:10
[2026-10-25 10:11:11,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:11:11,487.487 INFO    ] Initializing speech engine...
[2026-10-25 10:11:11,496.496 INFO    ] 2026-10-25 10:11:11
[2026-10-25 10:11:11,745.745 INFO    ] 2026-10-25 10:11:11
[2026-10-25 10:11:11,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:11:11,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:11:12,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:11:12,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:11:12,197.197 INFO    ] time= 25/10/2026 10:11:12
[2026-10-25 10:11:12,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:12,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:11:12,370.370 INFO    ] No existing commands found in stream
[2026-10-25 10:11:17,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:11:17,398.398 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 10:11:18,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:11:18,665.665 INFO    ] Checking for system updates...
[2026-10-25 10:11:18,701.701 INFO    ] 200
[2026-10-25 10:11:18,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:18,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:11:18,768.768 INFO    ] No update needed
[2026-10-25 10:11:18,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 10:11:18,809.809 INFO    ] 200
[2026-10-25 10:11:18,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:18,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:11:18,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:11:18,920.920 INFO    ] No camera update needed
[2026-10-25 10:11:18,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:11:18,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:11:18,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:11:18,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:11:20,980.980 INFO    ] ================================================
[2026-10-25 10:11:21,996.996 INFO    ] Launching Daemon at Sun Oct 25 10:11:20 IST 2026
[2026-10-25 10:11:21,006.006 INFO    ] ================================================
[2026-10-25 10:11:21,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:11:21
[2026-10-25 10:11:22,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:11:22,428.428 INFO    ] Initializing speech engine...
[2026-10-25 10:11:22,438.438 INFO    ] 2026-10-25 10:11:22
[2026-10-25 10:11:22,686.686 INFO    ] 2026-10-25 10:11:22
[2026-10-25 10:11:22,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:11:22,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:11:22,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:11:23,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:11:23,063.063 INFO    ] time= 25/10/2026 10:11:23
[2026-10-25 10:11:23,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:23,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:11:23,235.235 INFO    ] No existing commands found in stream
[2026-10-25 10:11:28,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:11:28,263.263 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 10:11:29,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:11:29,588.588 INFO    ] Checking for system updates...
[2026-10-25 10:11:29,629.629 INFO    ] 200
[2026-10-25 10:11:29,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:29,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:29,696.696 INFO    ] No update needed
[2026-10-25 10:11:29,698.698 INFO    ] Checking for camera pi updates...
[2026-10-25 10:11:29,736.736 INFO    ] 200
[2026-10-25 10:11:29,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:29,780.780 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:11:29,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:29,831.831 INFO    ] No camera update needed
[2026-10-25 10:11:29,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:11:29,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:11:29,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:11:29,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:11:31,889.889 INFO    ] ================================================
[2026-10-25 10:11:31,905.905 INFO    ] Launching Daemon at Sun Oct 25 10:11:31 IST 2026
[2026-10-25 10:11:31,917.917 INFO    ] ================================================
[2026-10-25 10:11:32,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:11:32
[2026-10-25 10:11:33,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:11:33,435.435 INFO    ] Initializing speech engine...
[2026-10-25 10:11:33,441.441 INFO    ] 2026-10-25 10:11:33
[2026-10-25 10:11:33,742.742 INFO    ] 2026-10-25 10:11:33
[2026-10-25 10:11:33,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:11:36,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:11:36,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:11:37,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:11:37,014.014 INFO    ] time= 25/10/2026 10:11:37
[2026-10-25 10:11:37,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:37,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:11:37,078.078 INFO    ] No existing commands found in stream
[2026-10-25 10:11:42,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:11:42,091.091 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 10:11:43,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:11:43,291.291 INFO    ] Checking for system updates...
[2026-10-25 10:11:43,326.326 INFO    ] 200
[2026-10-25 10:11:43,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:43,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:43,391.391 INFO    ] No update needed
[2026-10-25 10:11:43,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 10:11:43,431.431 INFO    ] 200
[2026-10-25 10:11:43,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:43,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:11:43,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:43,530.530 INFO    ] No camera update needed
[2026-10-25 10:11:43,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:11:43,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:11:43,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:11:43,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:11:45,585.585 INFO    ] ================================================
[2026-10-25 10:11:45,599.599 INFO    ] Launching Daemon at Sun Oct 25 10:11:45 IST 2026
[2026-10-25 10:11:45,610.610 INFO    ] ================================================
[2026-10-25 10:11:46,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:11:46
[2026-10-25 10:11:46,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:11:47,060.060 INFO    ] Initializing speech engine...
[2026-10-25 10:11:47,066.066 INFO    ] 2026-10-25 10:11:47
[2026-10-25 10:11:47,325.325 INFO    ] 2026-10-25 10:11:47
[2026-10-25 10:11:47,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:11:47,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:11:47,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:11:47,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:11:47,789.789 INFO    ] time= 25/10/2026 10:11:47
[2026-10-25 10:11:47,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:47,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:11:47,936.936 INFO    ] No existing commands found in stream
[2026-10-25 10:11:52,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:11:52,951.951 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 10:11:55,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:11:55,501.501 INFO    ] Checking for system updates...
[2026-10-25 10:11:55,538.538 INFO    ] 200
[2026-10-25 10:11:55,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:55,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:55,596.596 INFO    ] No update needed
[2026-10-25 10:11:55,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 10:11:55,637.637 INFO    ] 200
[2026-10-25 10:11:55,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:11:55,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:11:55,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:11:55,748.748 INFO    ] No camera update needed
[2026-10-25 10:11:55,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:11:55,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:11:55,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:11:55,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:11:57,804.804 INFO    ] ================================================
[2026-10-25 10:11:57,820.820 INFO    ] Launching Daemon at Sun Oct 25 10:11:57 IST 2026
[2026-10-25 10:11:57,831.831 INFO    ] ================================================
[2026-10-25 10:11:58,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:11:58
[2026-10-25 10:11:59,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:11:59,267.267 INFO    ] Initializing speech engine...
[2026-10-25 10:11:59,270.270 INFO    ] 2026-10-25 10:11:59
[2026-10-25 10:11:59,535.535 INFO    ] 2026-10-25 10:11:59
[2026-10-25 10:11:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:11:59,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:11:59,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:11:59,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:11:59,895.895 INFO    ] time= 25/10/2026 10:11:59
[2026-10-25 10:11:59,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:11:59,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:12:00,021.021 INFO    ] No existing commands found in stream
[2026-10-25 10:12:05,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:12:05,036.036 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 10:12:08,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:12:08,474.474 INFO    ] Checking for system updates...
[2026-10-25 10:12:08,514.514 INFO    ] 200
[2026-10-25 10:12:08,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:08,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:08,579.579 INFO    ] No update needed
[2026-10-25 10:12:08,582.582 INFO    ] Checking for camera pi updates...
[2026-10-25 10:12:08,616.616 INFO    ] 200
[2026-10-25 10:12:08,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:08,660.660 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:12:08,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:08,710.710 INFO    ] No camera update needed
[2026-10-25 10:12:08,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:12:08,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:12:08,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:12:08,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:12:10,766.766 INFO    ] ================================================
[2026-10-25 10:12:10,781.781 INFO    ] Launching Daemon at Sun Oct 25 10:12:10 IST 2026
[2026-10-25 10:12:10,792.792 INFO    ] ================================================
[2026-10-25 10:12:11,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:12:11
[2026-10-25 10:12:11,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:12:12,301.301 INFO    ] Initializing speech engine...
[2026-10-25 10:12:12,313.313 INFO    ] 2026-10-25 10:12:12
[2026-10-25 10:12:12,584.584 INFO    ] 2026-10-25 10:12:12
[2026-10-25 10:12:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:12:12,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:12:12,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:12:13,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:12:13,079.079 INFO    ] time= 25/10/2026 10:12:13
[2026-10-25 10:12:13,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:12:13,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:12:13,261.261 INFO    ] No existing commands found in stream
[2026-10-25 10:12:18,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:12:18,292.292 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 10:12:19,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:12:19,989.989 INFO    ] Checking for system updates...
[2026-10-25 10:12:20,031.031 INFO    ] 200
[2026-10-25 10:12:20,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:20,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:20,101.101 INFO    ] No update needed
[2026-10-25 10:12:20,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 10:12:20,138.138 INFO    ] 200
[2026-10-25 10:12:20,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:20,187.187 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:12:20,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:20,240.240 INFO    ] No camera update needed
[2026-10-25 10:12:20,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:12:20,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:12:20,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:12:20,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:12:22,295.295 INFO    ] ================================================
[2026-10-25 10:12:22,310.310 INFO    ] Launching Daemon at Sun Oct 25 10:12:22 IST 2026
[2026-10-25 10:12:22,322.322 INFO    ] ================================================
[2026-10-25 10:12:22,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:12:22
[2026-10-25 10:12:23,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:12:23,760.760 INFO    ] Initializing speech engine...
[2026-10-25 10:12:23,769.769 INFO    ] 2026-10-25 10:12:23
[2026-10-25 10:12:24,066.066 INFO    ] 2026-10-25 10:12:24
[2026-10-25 10:12:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:12:24,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:12:24,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:12:24,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:12:24,491.491 INFO    ] time= 25/10/2026 10:12:24
[2026-10-25 10:12:24,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:12:24,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:12:24,657.657 INFO    ] No existing commands found in stream
[2026-10-25 10:12:29,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:12:29,680.680 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 10:12:32,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:12:32,876.876 INFO    ] Checking for system updates...
[2026-10-25 10:12:32,919.919 INFO    ] 200
[2026-10-25 10:12:32,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:32,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:32,992.992 INFO    ] No update needed
[2026-10-25 10:12:32,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 10:12:33,032.032 INFO    ] 200
[2026-10-25 10:12:33,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:33,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:12:33,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:33,115.115 INFO    ] No camera update needed
[2026-10-25 10:12:33,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:12:33,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:12:33,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:12:33,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:12:35,171.171 INFO    ] ================================================
[2026-10-25 10:12:35,186.186 INFO    ] Launching Daemon at Sun Oct 25 10:12:35 IST 2026
[2026-10-25 10:12:35,197.197 INFO    ] ================================================
[2026-10-25 10:12:35,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:12:35
[2026-10-25 10:12:36,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:12:36,653.653 INFO    ] Initializing speech engine...
[2026-10-25 10:12:36,662.662 INFO    ] 2026-10-25 10:12:36
[2026-10-25 10:12:36,959.959 INFO    ] 2026-10-25 10:12:36
[2026-10-25 10:12:36,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:12:39,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:12:39,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:12:39,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:12:39,398.398 INFO    ] time= 25/10/2026 10:12:39
[2026-10-25 10:12:39,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:12:39,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:12:39,480.480 INFO    ] No existing commands found in stream
[2026-10-25 10:12:44,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:12:44,499.499 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 10:12:48,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:12:48,961.961 INFO    ] Checking for system updates...
[2026-10-25 10:12:49,002.002 INFO    ] 200
[2026-10-25 10:12:49,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:49,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:49,068.068 INFO    ] No update needed
[2026-10-25 10:12:49,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 10:12:49,108.108 INFO    ] 200
[2026-10-25 10:12:49,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:12:49,152.152 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:12:49,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:12:49,211.211 INFO    ] No camera update needed
[2026-10-25 10:12:49,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:12:49,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:12:49,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:12:49,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:12:51,266.266 INFO    ] ================================================
[2026-10-25 10:12:51,281.281 INFO    ] Launching Daemon at Sun Oct 25 10:12:51 IST 2026
[2026-10-25 10:12:51,292.292 INFO    ] ================================================
[2026-10-25 10:12:51,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:12:51
[2026-10-25 10:12:52,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:12:52,691.691 INFO    ] Initializing speech engine...
[2026-10-25 10:12:52,715.715 INFO    ] 2026-10-25 10:12:52
[2026-10-25 10:12:52,966.966 INFO    ] 2026-10-25 10:12:52
[2026-10-25 10:12:53,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:12:53,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:12:53,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:12:53,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:12:53,397.397 INFO    ] time= 25/10/2026 10:12:53
[2026-10-25 10:12:53,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:12:53,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:12:53,577.577 INFO    ] No existing commands found in stream
[2026-10-25 10:12:58,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:12:58,589.589 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 10:13:02,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:13:02,120.120 INFO    ] Checking for system updates...
[2026-10-25 10:13:02,166.166 INFO    ] 200
[2026-10-25 10:13:02,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:02,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:13:02,240.240 INFO    ] No update needed
[2026-10-25 10:13:02,243.243 INFO    ] Checking for camera pi updates...
[2026-10-25 10:13:02,287.287 INFO    ] 200
[2026-10-25 10:13:02,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:02,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:13:02,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:13:02,388.388 INFO    ] No camera update needed
[2026-10-25 10:13:02,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:13:02,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:13:02,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:13:02,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:13:04,463.463 INFO    ] ================================================
[2026-10-25 10:13:04,478.478 INFO    ] Launching Daemon at Sun Oct 25 10:13:04 IST 2026
[2026-10-25 10:13:04,488.488 INFO    ] ================================================
[2026-10-25 10:13:05,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:13:05
[2026-10-25 10:13:05,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:13:05,920.920 INFO    ] Initializing speech engine...
[2026-10-25 10:13:05,929.929 INFO    ] 2026-10-25 10:13:05
[2026-10-25 10:13:06,179.179 INFO    ] 2026-10-25 10:13:06
[2026-10-25 10:13:06,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:13:09,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:13:09,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:13:09,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:13:09,730.730 INFO    ] time= 25/10/2026 10:13:09
[2026-10-25 10:13:09,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:13:09,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:13:09,787.787 INFO    ] No existing commands found in stream
[2026-10-25 10:13:14,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:13:14,799.799 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:13:19,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:13:19,142.142 INFO    ] Checking for system updates...
[2026-10-25 10:13:19,182.182 INFO    ] 200
[2026-10-25 10:13:19,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:19,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:19,247.247 INFO    ] No update needed
[2026-10-25 10:13:19,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 10:13:19,287.287 INFO    ] 200
[2026-10-25 10:13:19,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:19,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:13:19,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:19,395.395 INFO    ] No camera update needed
[2026-10-25 10:13:19,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:13:19,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:13:19,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:13:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:13:21,458.458 INFO    ] ================================================
[2026-10-25 10:13:21,474.474 INFO    ] Launching Daemon at Sun Oct 25 10:13:21 IST 2026
[2026-10-25 10:13:21,485.485 INFO    ] ================================================
[2026-10-25 10:13:22,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:13:22
[2026-10-25 10:13:22,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:13:22,893.893 INFO    ] Initializing speech engine...
[2026-10-25 10:13:22,909.909 INFO    ] 2026-10-25 10:13:22
[2026-10-25 10:13:23,194.194 INFO    ] 2026-10-25 10:13:23
[2026-10-25 10:13:23,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:13:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:13:23,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:13:23,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:13:23,692.692 INFO    ] time= 25/10/2026 10:13:23
[2026-10-25 10:13:23,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:13:23,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:13:23,896.896 INFO    ] No existing commands found in stream
[2026-10-25 10:13:28,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:13:28,911.911 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 10:13:29,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:13:29,631.631 INFO    ] Checking for system updates...
[2026-10-25 10:13:29,671.671 INFO    ] 200
[2026-10-25 10:13:29,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:29,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:29,736.736 INFO    ] No update needed
[2026-10-25 10:13:29,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 10:13:29,772.772 INFO    ] 200
[2026-10-25 10:13:29,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:29,815.815 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:13:29,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:29,884.884 INFO    ] No camera update needed
[2026-10-25 10:13:29,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:13:29,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:13:29,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:13:29,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:13:31,940.940 INFO    ] ================================================
[2026-10-25 10:13:31,957.957 INFO    ] Launching Daemon at Sun Oct 25 10:13:31 IST 2026
[2026-10-25 10:13:31,970.970 INFO    ] ================================================
[2026-10-25 10:13:32,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:13:32
[2026-10-25 10:13:33,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:13:33,600.600 INFO    ] Initializing speech engine...
[2026-10-25 10:13:33,607.607 INFO    ] 2026-10-25 10:13:33
[2026-10-25 10:13:33,867.867 INFO    ] 2026-10-25 10:13:33
[2026-10-25 10:13:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:13:34,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:13:34,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:13:34,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:13:34,329.329 INFO    ] time= 25/10/2026 10:13:34
[2026-10-25 10:13:34,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:13:34,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:13:34,526.526 INFO    ] No existing commands found in stream
[2026-10-25 10:13:39,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:13:39,555.555 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 10:13:43,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:13:43,048.048 INFO    ] Checking for system updates...
[2026-10-25 10:13:43,083.083 INFO    ] 200
[2026-10-25 10:13:43,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:43,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:13:43,149.149 INFO    ] No update needed
[2026-10-25 10:13:43,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 10:13:43,189.189 INFO    ] 200
[2026-10-25 10:13:43,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:43,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:13:43,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:13:43,403.403 INFO    ] No camera update needed
[2026-10-25 10:13:43,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:13:43,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:13:43,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:13:43,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:13:45,459.459 INFO    ] ================================================
[2026-10-25 10:13:45,474.474 INFO    ] Launching Daemon at Sun Oct 25 10:13:45 IST 2026
[2026-10-25 10:13:45,484.484 INFO    ] ================================================
[2026-10-25 10:13:46,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:13:46
[2026-10-25 10:13:46,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:13:46,886.886 INFO    ] Initializing speech engine...
[2026-10-25 10:13:46,902.902 INFO    ] 2026-10-25 10:13:46
[2026-10-25 10:13:47,157.157 INFO    ] 2026-10-25 10:13:47
[2026-10-25 10:13:47,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:13:47,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:13:47,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:13:47,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:13:47,531.531 INFO    ] time= 25/10/2026 10:13:47
[2026-10-25 10:13:47,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:13:47,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:13:47,609.609 INFO    ] No existing commands found in stream
[2026-10-25 10:13:52,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:13:52,627.627 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 10:13:53,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:13:53,650.650 INFO    ] Checking for system updates...
[2026-10-25 10:13:53,686.686 INFO    ] 200
[2026-10-25 10:13:53,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:53,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:53,751.751 INFO    ] No update needed
[2026-10-25 10:13:53,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 10:13:53,791.791 INFO    ] 200
[2026-10-25 10:13:53,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:13:53,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:13:53,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:13:53,889.889 INFO    ] No camera update needed
[2026-10-25 10:13:53,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:13:53,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:13:53,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:13:53,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:13:55,945.945 INFO    ] ================================================
[2026-10-25 10:13:55,960.960 INFO    ] Launching Daemon at Sun Oct 25 10:13:55 IST 2026
[2026-10-25 10:13:55,971.971 INFO    ] ================================================
[2026-10-25 10:13:56,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:13:56
[2026-10-25 10:13:57,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:13:57,604.604 INFO    ] Initializing speech engine...
[2026-10-25 10:13:57,619.619 INFO    ] 2026-10-25 10:13:57
[2026-10-25 10:13:57,906.906 INFO    ] 2026-10-25 10:13:57
[2026-10-25 10:13:58,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:13:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:13:58,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:13:58,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:13:58,445.445 INFO    ] time= 25/10/2026 10:13:58
[2026-10-25 10:13:58,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:13:58,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:13:58,597.597 INFO    ] No existing commands found in stream
[2026-10-25 10:14:03,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:14:03,618.618 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 10:14:07,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:14:07,495.495 INFO    ] Checking for system updates...
[2026-10-25 10:14:07,533.533 INFO    ] 200
[2026-10-25 10:14:07,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:07,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:07,594.594 INFO    ] No update needed
[2026-10-25 10:14:07,597.597 INFO    ] Checking for camera pi updates...
[2026-10-25 10:14:07,632.632 INFO    ] 200
[2026-10-25 10:14:07,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:07,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:14:07,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:07,732.732 INFO    ] No camera update needed
[2026-10-25 10:14:07,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:14:07,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:14:07,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:14:07,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:14:09,788.788 INFO    ] ================================================
[2026-10-25 10:14:09,803.803 INFO    ] Launching Daemon at Sun Oct 25 10:14:09 IST 2026
[2026-10-25 10:14:09,814.814 INFO    ] ================================================
[2026-10-25 10:14:10,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:14:10
[2026-10-25 10:14:10,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:14:11,262.262 INFO    ] Initializing speech engine...
[2026-10-25 10:14:11,272.272 INFO    ] 2026-10-25 10:14:11
[2026-10-25 10:14:11,519.519 INFO    ] 2026-10-25 10:14:11
[2026-10-25 10:14:11,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:14:11,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:14:11,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:14:11,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:14:11,995.995 INFO    ] time= 25/10/2026 10:14:11
[2026-10-25 10:14:12,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:14:12,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:14:12,139.139 INFO    ] No existing commands found in stream
[2026-10-25 10:14:17,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:14:17,154.154 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 10:14:19,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:14:19,758.758 INFO    ] Checking for system updates...
[2026-10-25 10:14:19,798.798 INFO    ] 200
[2026-10-25 10:14:19,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:19,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:14:19,863.863 INFO    ] No update needed
[2026-10-25 10:14:19,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 10:14:19,903.903 INFO    ] 200
[2026-10-25 10:14:19,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:19,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:14:19,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:14:20,002.002 INFO    ] No camera update needed
[2026-10-25 10:14:20,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:14:20,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:14:20,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:14:20,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:14:22,058.058 INFO    ] ================================================
[2026-10-25 10:14:22,073.073 INFO    ] Launching Daemon at Sun Oct 25 10:14:22 IST 2026
[2026-10-25 10:14:22,084.084 INFO    ] ================================================
[2026-10-25 10:14:22,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:14:22
[2026-10-25 10:14:23,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:14:23,534.534 INFO    ] Initializing speech engine...
[2026-10-25 10:14:23,543.543 INFO    ] 2026-10-25 10:14:23
[2026-10-25 10:14:23,793.793 INFO    ] 2026-10-25 10:14:23
[2026-10-25 10:14:23,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:14:24,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:14:24,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:14:24,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:14:24,201.201 INFO    ] time= 25/10/2026 10:14:24
[2026-10-25 10:14:24,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:14:24,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:14:24,288.288 INFO    ] No existing commands found in stream
[2026-10-25 10:14:29,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:14:29,307.307 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 10:14:31,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:14:31,698.698 INFO    ] Checking for system updates...
[2026-10-25 10:14:31,741.741 INFO    ] 200
[2026-10-25 10:14:31,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:31,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:31,822.822 INFO    ] No update needed
[2026-10-25 10:14:31,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 10:14:31,865.865 INFO    ] 200
[2026-10-25 10:14:31,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:31,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:14:31,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:31,965.965 INFO    ] No camera update needed
[2026-10-25 10:14:31,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:14:31,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:14:31,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:14:31,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:14:34,027.027 INFO    ] ================================================
[2026-10-25 10:14:34,042.042 INFO    ] Launching Daemon at Sun Oct 25 10:14:34 IST 2026
[2026-10-25 10:14:34,053.053 INFO    ] ================================================
[2026-10-25 10:14:34,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:14:34
[2026-10-25 10:14:35,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:14:35,487.487 INFO    ] Initializing speech engine...
[2026-10-25 10:14:35,495.495 INFO    ] 2026-10-25 10:14:35
[2026-10-25 10:14:35,755.755 INFO    ] 2026-10-25 10:14:35
[2026-10-25 10:14:35,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:14:36,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:14:36,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:14:36,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:14:36,218.218 INFO    ] time= 25/10/2026 10:14:36
[2026-10-25 10:14:36,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:14:36,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:14:36,368.368 INFO    ] No existing commands found in stream
[2026-10-25 10:14:41,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:14:41,396.396 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 10:14:43,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:14:43,671.671 INFO    ] Checking for system updates...
[2026-10-25 10:14:43,712.712 INFO    ] 200
[2026-10-25 10:14:43,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:43,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:14:43,778.778 INFO    ] No update needed
[2026-10-25 10:14:43,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 10:14:43,815.815 INFO    ] 200
[2026-10-25 10:14:43,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:43,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:14:43,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:14:43,916.916 INFO    ] No camera update needed
[2026-10-25 10:14:43,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:14:43,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:14:43,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:14:43,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:14:45,976.976 INFO    ] ================================================
[2026-10-25 10:14:45,991.991 INFO    ] Launching Daemon at Sun Oct 25 10:14:45 IST 2026
[2026-10-25 10:14:46,003.003 INFO    ] ================================================
[2026-10-25 10:14:46,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:14:46
[2026-10-25 10:14:47,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:14:47,404.404 INFO    ] Initializing speech engine...
[2026-10-25 10:14:47,412.412 INFO    ] 2026-10-25 10:14:47
[2026-10-25 10:14:47,703.703 INFO    ] 2026-10-25 10:14:47
[2026-10-25 10:14:47,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:14:47,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:14:47,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:14:48,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:14:48,073.073 INFO    ] time= 25/10/2026 10:14:48
[2026-10-25 10:14:48,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:14:48,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:14:48,202.202 INFO    ] No existing commands found in stream
[2026-10-25 10:14:53,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:14:53,216.216 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 10:14:57,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:14:57,145.145 INFO    ] Checking for system updates...
[2026-10-25 10:14:57,180.180 INFO    ] 200
[2026-10-25 10:14:57,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:57,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:57,244.244 INFO    ] No update needed
[2026-10-25 10:14:57,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 10:14:57,284.284 INFO    ] 200
[2026-10-25 10:14:57,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:14:57,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:14:57,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:14:57,394.394 INFO    ] No camera update needed
[2026-10-25 10:14:57,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:14:57,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:14:57,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:14:57,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:14:59,448.448 INFO    ] ================================================
[2026-10-25 10:14:59,462.462 INFO    ] Launching Daemon at Sun Oct 25 10:14:59 IST 2026
[2026-10-25 10:14:59,473.473 INFO    ] ================================================
[2026-10-25 10:15:00,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:00
[2026-10-25 10:15:00,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:00,884.884 INFO    ] Initializing speech engine...
[2026-10-25 10:15:00,904.904 INFO    ] 2026-10-25 10:15:00
[2026-10-25 10:15:01,181.181 INFO    ] 2026-10-25 10:15:01
[2026-10-25 10:15:01,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:15:01,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:15:01,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:15:01,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:15:01,596.596 INFO    ] time= 25/10/2026 10:15:01
[2026-10-25 10:15:01,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:15:01,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:15:01,672.672 INFO    ] No existing commands found in stream
[2026-10-25 10:15:06,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:15:06,685.685 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 10:15:08,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:15:08,338.338 INFO    ] Checking for system updates...
[2026-10-25 10:15:08,374.374 INFO    ] 200
[2026-10-25 10:15:08,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:08,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:08,440.440 INFO    ] No update needed
[2026-10-25 10:15:08,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 10:15:08,476.476 INFO    ] 200
[2026-10-25 10:15:08,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:08,526.526 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:15:08,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:08,572.572 INFO    ] No camera update needed
[2026-10-25 10:15:08,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:15:08,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:15:08,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:15:08,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:15:10,627.627 INFO    ] ================================================
[2026-10-25 10:15:10,643.643 INFO    ] Launching Daemon at Sun Oct 25 10:15:10 IST 2026
[2026-10-25 10:15:10,654.654 INFO    ] ================================================
[2026-10-25 10:15:11,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:11
[2026-10-25 10:15:11,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:12,078.078 INFO    ] Initializing speech engine...
[2026-10-25 10:15:12,084.084 INFO    ] 2026-10-25 10:15:12
[2026-10-25 10:15:12,336.336 INFO    ] 2026-10-25 10:15:12
[2026-10-25 10:15:12,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:15:12,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:15:12,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:15:12,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:15:12,799.799 INFO    ] time= 25/10/2026 10:15:12
[2026-10-25 10:15:12,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:15:12,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:15:12,957.957 INFO    ] No existing commands found in stream
[2026-10-25 10:15:17,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:15:17,970.970 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 10:15:20,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:15:20,008.008 INFO    ] Checking for system updates...
[2026-10-25 10:15:20,046.046 INFO    ] 200
[2026-10-25 10:15:20,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:20,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:20,105.105 INFO    ] No update needed
[2026-10-25 10:15:20,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 10:15:20,144.144 INFO    ] 200
[2026-10-25 10:15:20,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:20,195.195 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:15:20,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:20,254.254 INFO    ] No camera update needed
[2026-10-25 10:15:20,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:15:20,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:15:20,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:15:20,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:15:22,310.310 INFO    ] ================================================
[2026-10-25 10:15:22,326.326 INFO    ] Launching Daemon at Sun Oct 25 10:15:22 IST 2026
[2026-10-25 10:15:22,337.337 INFO    ] ================================================
[2026-10-25 10:15:22,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:22
[2026-10-25 10:15:23,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:23,794.794 INFO    ] Initializing speech engine...
[2026-10-25 10:15:23,803.803 INFO    ] 2026-10-25 10:15:23
[2026-10-25 10:15:24,065.065 INFO    ] 2026-10-25 10:15:24
[2026-10-25 10:15:24,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:15:24,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:15:24,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:15:24,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:15:24,530.530 INFO    ] time= 25/10/2026 10:15:24
[2026-10-25 10:15:24,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:15:24,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:15:24,674.674 INFO    ] No existing commands found in stream
[2026-10-25 10:15:29,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:15:29,691.691 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 10:15:30,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:15:30,608.608 INFO    ] Checking for system updates...
[2026-10-25 10:15:30,644.644 INFO    ] 200
[2026-10-25 10:15:30,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:30,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:30,710.710 INFO    ] No update needed
[2026-10-25 10:15:30,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 10:15:30,751.751 INFO    ] 200
[2026-10-25 10:15:30,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:30,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:15:30,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:30,856.856 INFO    ] No camera update needed
[2026-10-25 10:15:30,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:15:30,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:15:30,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:15:30,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:15:32,914.914 INFO    ] ================================================
[2026-10-25 10:15:32,931.931 INFO    ] Launching Daemon at Sun Oct 25 10:15:32 IST 2026
[2026-10-25 10:15:32,943.943 INFO    ] ================================================
[2026-10-25 10:15:33,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:33
[2026-10-25 10:15:34,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:34,390.390 INFO    ] Initializing speech engine...
[2026-10-25 10:15:34,399.399 INFO    ] 2026-10-25 10:15:34
[2026-10-25 10:15:34,649.649 INFO    ] 2026-10-25 10:15:34
[2026-10-25 10:15:34,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:15:34,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:15:34,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:15:35,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:15:35,026.026 INFO    ] time= 25/10/2026 10:15:35
[2026-10-25 10:15:35,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:15:35,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:15:35,188.188 INFO    ] No existing commands found in stream
[2026-10-25 10:15:40,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:15:40,215.215 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 10:15:42,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:15:42,879.879 INFO    ] Checking for system updates...
[2026-10-25 10:15:42,923.923 INFO    ] 200
[2026-10-25 10:15:42,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:42,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:15:42,987.987 INFO    ] No update needed
[2026-10-25 10:15:42,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 10:15:43,029.029 INFO    ] 200
[2026-10-25 10:15:43,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:43,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:15:43,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:15:43,119.119 INFO    ] No camera update needed
[2026-10-25 10:15:43,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:15:43,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:15:43,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:15:43,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:15:45,175.175 INFO    ] ================================================
[2026-10-25 10:15:45,191.191 INFO    ] Launching Daemon at Sun Oct 25 10:15:45 IST 2026
[2026-10-25 10:15:45,202.202 INFO    ] ================================================
[2026-10-25 10:15:45,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:45
[2026-10-25 10:15:46,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:46,604.604 INFO    ] Initializing speech engine...
[2026-10-25 10:15:46,612.612 INFO    ] 2026-10-25 10:15:46
[2026-10-25 10:15:46,908.908 INFO    ] 2026-10-25 10:15:46
[2026-10-25 10:15:46,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:15:47,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:15:47,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:15:47,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:15:47,633.633 INFO    ] time= 25/10/2026 10:15:47
[2026-10-25 10:15:47,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:15:47,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:15:47,830.830 INFO    ] No existing commands found in stream
[2026-10-25 10:15:52,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:15:52,858.858 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 10:15:55,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:15:55,889.889 INFO    ] Checking for system updates...
[2026-10-25 10:15:55,927.927 INFO    ] 200
[2026-10-25 10:15:55,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:55,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:55,986.986 INFO    ] No update needed
[2026-10-25 10:15:55,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 10:15:56,026.026 INFO    ] 200
[2026-10-25 10:15:56,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:15:56,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:15:56,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:15:56,247.247 INFO    ] No camera update needed
[2026-10-25 10:15:56,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:15:56,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:15:56,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:15:56,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:15:58,302.302 INFO    ] ================================================
[2026-10-25 10:15:58,317.317 INFO    ] Launching Daemon at Sun Oct 25 10:15:58 IST 2026
[2026-10-25 10:15:58,328.328 INFO    ] ================================================
[2026-10-25 10:15:58,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:15:58
[2026-10-25 10:15:59,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:15:59,783.783 INFO    ] Initializing speech engine...
[2026-10-25 10:15:59,793.793 INFO    ] 2026-10-25 10:15:59
[2026-10-25 10:16:00,056.056 INFO    ] 2026-10-25 10:16:00
[2026-10-25 10:16:00,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:00,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:00,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:00,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:16:00,526.526 INFO    ] time= 25/10/2026 10:16:00
[2026-10-25 10:16:00,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:16:00,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:16:00,709.709 INFO    ] No existing commands found in stream
[2026-10-25 10:16:05,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:16:05,737.737 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 10:16:07,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:16:07,714.714 INFO    ] Checking for system updates...
[2026-10-25 10:16:07,755.755 INFO    ] 200
[2026-10-25 10:16:07,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:07,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:07,822.822 INFO    ] No update needed
[2026-10-25 10:16:07,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 10:16:07,858.858 INFO    ] 200
[2026-10-25 10:16:07,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:07,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:16:07,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:07,953.953 INFO    ] No camera update needed
[2026-10-25 10:16:07,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:16:07,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:16:07,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:16:07,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:16:10,013.013 INFO    ] ================================================
[2026-10-25 10:16:10,028.028 INFO    ] Launching Daemon at Sun Oct 25 10:16:10 IST 2026
[2026-10-25 10:16:10,039.039 INFO    ] ================================================
[2026-10-25 10:16:10,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:16:10
[2026-10-25 10:16:11,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:16:11,593.593 INFO    ] Initializing speech engine...
[2026-10-25 10:16:11,608.608 INFO    ] 2026-10-25 10:16:11
[2026-10-25 10:16:11,927.927 INFO    ] 2026-10-25 10:16:11
[2026-10-25 10:16:12,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:13,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:13,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:13,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:16:13,699.699 INFO    ] time= 25/10/2026 10:16:13
[2026-10-25 10:16:13,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:16:13,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:16:13,809.809 INFO    ] No existing commands found in stream
[2026-10-25 10:16:18,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:16:18,836.836 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 10:16:19,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:16:19,907.907 INFO    ] Checking for system updates...
[2026-10-25 10:16:19,949.949 INFO    ] 200
[2026-10-25 10:16:19,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:20,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:20,016.016 INFO    ] No update needed
[2026-10-25 10:16:20,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 10:16:20,057.057 INFO    ] 200
[2026-10-25 10:16:20,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:20,101.101 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:16:20,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:20,153.153 INFO    ] No camera update needed
[2026-10-25 10:16:20,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:16:20,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:16:20,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:16:20,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:16:22,209.209 INFO    ] ================================================
[2026-10-25 10:16:22,224.224 INFO    ] Launching Daemon at Sun Oct 25 10:16:22 IST 2026
[2026-10-25 10:16:22,235.235 INFO    ] ================================================
[2026-10-25 10:16:22,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:16:22
[2026-10-25 10:16:23,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:16:23,625.625 INFO    ] Initializing speech engine...
[2026-10-25 10:16:23,633.633 INFO    ] 2026-10-25 10:16:23
[2026-10-25 10:16:23,905.905 INFO    ] 2026-10-25 10:16:23
[2026-10-25 10:16:23,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:24,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:24,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:24,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:16:24,283.283 INFO    ] time= 25/10/2026 10:16:24
[2026-10-25 10:16:24,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:16:24,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:16:24,463.463 INFO    ] No existing commands found in stream
[2026-10-25 10:16:29,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:16:29,495.495 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:16:33,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:16:33,847.847 INFO    ] Checking for system updates...
[2026-10-25 10:16:33,883.883 INFO    ] 200
[2026-10-25 10:16:33,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:33,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:33,948.948 INFO    ] No update needed
[2026-10-25 10:16:33,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 10:16:33,988.988 INFO    ] 200
[2026-10-25 10:16:33,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:34,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:16:34,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:16:34,086.086 INFO    ] No camera update needed
[2026-10-25 10:16:34,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:16:34,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:16:34,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:16:34,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:16:36,141.141 INFO    ] ================================================
[2026-10-25 10:16:36,156.156 INFO    ] Launching Daemon at Sun Oct 25 10:16:36 IST 2026
[2026-10-25 10:16:36,167.167 INFO    ] ================================================
[2026-10-25 10:16:36,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:16:36
[2026-10-25 10:16:37,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:16:37,636.636 INFO    ] Initializing speech engine...
[2026-10-25 10:16:37,643.643 INFO    ] 2026-10-25 10:16:37
[2026-10-25 10:16:37,889.889 INFO    ] 2026-10-25 10:16:37
[2026-10-25 10:16:37,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:38,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:38,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:38,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:16:38,393.393 INFO    ] time= 25/10/2026 10:16:38
[2026-10-25 10:16:38,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:16:38,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:16:38,591.591 INFO    ] No existing commands found in stream
[2026-10-25 10:16:43,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:16:43,613.613 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 10:16:44,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:16:44,620.620 INFO    ] Checking for system updates...
[2026-10-25 10:16:44,656.656 INFO    ] 200
[2026-10-25 10:16:44,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:44,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:16:44,722.722 INFO    ] No update needed
[2026-10-25 10:16:44,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 10:16:44,763.763 INFO    ] 200
[2026-10-25 10:16:44,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:44,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:16:44,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:16:44,858.858 INFO    ] No camera update needed
[2026-10-25 10:16:44,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:16:44,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:16:44,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:16:44,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:16:46,913.913 INFO    ] ================================================
[2026-10-25 10:16:46,929.929 INFO    ] Launching Daemon at Sun Oct 25 10:16:46 IST 2026
[2026-10-25 10:16:46,940.940 INFO    ] ================================================
[2026-10-25 10:16:47,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:16:47
[2026-10-25 10:16:48,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:16:48,373.373 INFO    ] Initializing speech engine...
[2026-10-25 10:16:48,386.386 INFO    ] 2026-10-25 10:16:48
[2026-10-25 10:16:48,647.647 INFO    ] 2026-10-25 10:16:48
[2026-10-25 10:16:48,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:48,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:49,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:16:49,014.014 INFO    ] time= 25/10/2026 10:16:49
[2026-10-25 10:16:49,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:16:49,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:16:49,193.193 INFO    ] No existing commands found in stream
[2026-10-25 10:16:54,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:16:54,222.222 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 10:16:55,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:16:55,563.563 INFO    ] Checking for system updates...
[2026-10-25 10:16:55,603.603 INFO    ] 200
[2026-10-25 10:16:55,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:55,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:16:55,669.669 INFO    ] No update needed
[2026-10-25 10:16:55,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 10:16:55,709.709 INFO    ] 200
[2026-10-25 10:16:55,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:16:55,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:16:55,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:16:55,806.806 INFO    ] No camera update needed
[2026-10-25 10:16:55,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:16:55,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:16:55,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:16:55,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:16:57,863.863 INFO    ] ================================================
[2026-10-25 10:16:57,879.879 INFO    ] Launching Daemon at Sun Oct 25 10:16:57 IST 2026
[2026-10-25 10:16:57,891.891 INFO    ] ================================================
[2026-10-25 10:16:58,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:16:58
[2026-10-25 10:16:59,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:16:59,303.303 INFO    ] Initializing speech engine...
[2026-10-25 10:16:59,317.317 INFO    ] 2026-10-25 10:16:59
[2026-10-25 10:16:59,569.569 INFO    ] 2026-10-25 10:16:59
[2026-10-25 10:16:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:16:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:16:59,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:16:59,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:17:00,011.011 INFO    ] time= 25/10/2026 10:17:00
[2026-10-25 10:17:00,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:17:00,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:17:00,184.184 INFO    ] No existing commands found in stream
[2026-10-25 10:17:05,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:17:05,199.199 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 10:17:07,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:17:07,178.178 INFO    ] Checking for system updates...
[2026-10-25 10:17:07,220.220 INFO    ] 200
[2026-10-25 10:17:07,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:07,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:07,286.286 INFO    ] No update needed
[2026-10-25 10:17:07,288.288 INFO    ] Checking for camera pi updates...
[2026-10-25 10:17:07,326.326 INFO    ] 200
[2026-10-25 10:17:07,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:07,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:17:07,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:07,423.423 INFO    ] No camera update needed
[2026-10-25 10:17:07,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:17:07,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:17:07,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:17:07,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:17:09,480.480 INFO    ] ================================================
[2026-10-25 10:17:09,496.496 INFO    ] Launching Daemon at Sun Oct 25 10:17:09 IST 2026
[2026-10-25 10:17:09,507.507 INFO    ] ================================================
[2026-10-25 10:17:10,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:17:10
[2026-10-25 10:17:10,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:17:10,902.902 INFO    ] Initializing speech engine...
[2026-10-25 10:17:10,911.911 INFO    ] 2026-10-25 10:17:10
[2026-10-25 10:17:11,185.185 INFO    ] 2026-10-25 10:17:11
[2026-10-25 10:17:11,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:17:15,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:17:15,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:17:15,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:17:15,391.391 INFO    ] time= 25/10/2026 10:17:15
[2026-10-25 10:17:15,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:17:15,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:17:15,444.444 INFO    ] No existing commands found in stream
[2026-10-25 10:17:20,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:17:20,456.456 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 10:17:23,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:17:23,340.340 INFO    ] Checking for system updates...
[2026-10-25 10:17:23,382.382 INFO    ] 200
[2026-10-25 10:17:23,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:23,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:17:23,452.452 INFO    ] No update needed
[2026-10-25 10:17:23,455.455 INFO    ] Checking for camera pi updates...
[2026-10-25 10:17:23,491.491 INFO    ] 200
[2026-10-25 10:17:23,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:23,547.547 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:17:23,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:17:23,604.604 INFO    ] No camera update needed
[2026-10-25 10:17:23,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:17:23,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:17:23,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:17:23,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:17:25,663.663 INFO    ] ================================================
[2026-10-25 10:17:25,680.680 INFO    ] Launching Daemon at Sun Oct 25 10:17:25 IST 2026
[2026-10-25 10:17:25,692.692 INFO    ] ================================================
[2026-10-25 10:17:26,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:17:26
[2026-10-25 10:17:27,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:17:27,335.335 INFO    ] Initializing speech engine...
[2026-10-25 10:17:27,348.348 INFO    ] 2026-10-25 10:17:27
[2026-10-25 10:17:27,633.633 INFO    ] 2026-10-25 10:17:27
[2026-10-25 10:17:27,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:17:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:17:27,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:17:28,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:17:28,111.111 INFO    ] time= 25/10/2026 10:17:28
[2026-10-25 10:17:28,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:17:28,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:17:28,326.326 INFO    ] No existing commands found in stream
[2026-10-25 10:17:33,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:17:33,353.353 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 10:17:34,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:17:34,889.889 INFO    ] Checking for system updates...
[2026-10-25 10:17:34,931.931 INFO    ] 200
[2026-10-25 10:17:34,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:35,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:35,003.003 INFO    ] No update needed
[2026-10-25 10:17:35,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 10:17:35,041.041 INFO    ] 200
[2026-10-25 10:17:35,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:35,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:17:35,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:35,150.150 INFO    ] No camera update needed
[2026-10-25 10:17:35,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:17:35,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:17:35,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:17:35,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:17:37,210.210 INFO    ] ================================================
[2026-10-25 10:17:37,226.226 INFO    ] Launching Daemon at Sun Oct 25 10:17:37 IST 2026
[2026-10-25 10:17:37,237.237 INFO    ] ================================================
[2026-10-25 10:17:37,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:17:37
[2026-10-25 10:17:38,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:17:38,874.874 INFO    ] Initializing speech engine...
[2026-10-25 10:17:38,884.884 INFO    ] 2026-10-25 10:17:38
[2026-10-25 10:17:39,189.189 INFO    ] 2026-10-25 10:17:39
[2026-10-25 10:17:39,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:17:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:17:39,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:17:39,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:17:39,693.693 INFO    ] time= 25/10/2026 10:17:39
[2026-10-25 10:17:39,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:17:39,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:17:39,846.846 INFO    ] No existing commands found in stream
[2026-10-25 10:17:44,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:17:44,871.871 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 10:17:48,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:17:48,794.794 INFO    ] Checking for system updates...
[2026-10-25 10:17:48,836.836 INFO    ] 200
[2026-10-25 10:17:48,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:48,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:48,904.904 INFO    ] No update needed
[2026-10-25 10:17:48,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 10:17:48,946.946 INFO    ] 200
[2026-10-25 10:17:48,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:17:48,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:17:49,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:17:49,070.070 INFO    ] No camera update needed
[2026-10-25 10:17:49,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:17:49,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:17:49,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:17:49,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:17:51,128.128 INFO    ] ================================================
[2026-10-25 10:17:51,144.144 INFO    ] Launching Daemon at Sun Oct 25 10:17:51 IST 2026
[2026-10-25 10:17:51,155.155 INFO    ] ================================================
[2026-10-25 10:17:51,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:17:51
[2026-10-25 10:17:52,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:17:52,565.565 INFO    ] Initializing speech engine...
[2026-10-25 10:17:52,584.584 INFO    ] 2026-10-25 10:17:52
[2026-10-25 10:17:52,830.830 INFO    ] 2026-10-25 10:17:52
[2026-10-25 10:17:52,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:17:53,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:17:53,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:17:53,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:17:53,305.305 INFO    ] time= 25/10/2026 10:17:53
[2026-10-25 10:17:53,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:17:53,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:17:53,447.447 INFO    ] No existing commands found in stream
[2026-10-25 10:17:58,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:17:58,462.462 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 10:18:03,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:18:03,438.438 INFO    ] Checking for system updates...
[2026-10-25 10:18:03,478.478 INFO    ] 200
[2026-10-25 10:18:03,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:03,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:18:03,536.536 INFO    ] No update needed
[2026-10-25 10:18:03,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 10:18:03,590.590 INFO    ] 200
[2026-10-25 10:18:03,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:03,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:18:03,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:18:03,693.693 INFO    ] No camera update needed
[2026-10-25 10:18:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:18:03,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:18:03,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:18:03,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:18:05,756.756 INFO    ] ================================================
[2026-10-25 10:18:05,772.772 INFO    ] Launching Daemon at Sun Oct 25 10:18:05 IST 2026
[2026-10-25 10:18:05,783.783 INFO    ] ================================================
[2026-10-25 10:18:06,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:18:06
[2026-10-25 10:18:07,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:18:07,440.440 INFO    ] Initializing speech engine...
[2026-10-25 10:18:07,455.455 INFO    ] 2026-10-25 10:18:07
[2026-10-25 10:18:07,746.746 INFO    ] 2026-10-25 10:18:07
[2026-10-25 10:18:07,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:18:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:18:08,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:18:08,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:18:08,288.288 INFO    ] time= 25/10/2026 10:18:08
[2026-10-25 10:18:08,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:18:08,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:18:08,449.449 INFO    ] No existing commands found in stream
[2026-10-25 10:18:13,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:18:13,474.474 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 10:18:16,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:18:16,801.801 INFO    ] Checking for system updates...
[2026-10-25 10:18:16,839.839 INFO    ] 200
[2026-10-25 10:18:16,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:16,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:16,898.898 INFO    ] No update needed
[2026-10-25 10:18:16,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 10:18:16,941.941 INFO    ] 200
[2026-10-25 10:18:16,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:17,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:18:17,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:17,060.060 INFO    ] No camera update needed
[2026-10-25 10:18:17,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:18:17,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:18:17,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:18:17,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:18:19,121.121 INFO    ] ================================================
[2026-10-25 10:18:19,137.137 INFO    ] Launching Daemon at Sun Oct 25 10:18:19 IST 2026
[2026-10-25 10:18:19,148.148 INFO    ] ================================================
[2026-10-25 10:18:19,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:18:19
[2026-10-25 10:18:20,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:18:20,567.567 INFO    ] Initializing speech engine...
[2026-10-25 10:18:20,574.574 INFO    ] 2026-10-25 10:18:20
[2026-10-25 10:18:20,848.848 INFO    ] 2026-10-25 10:18:20
[2026-10-25 10:18:20,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:18:21,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:18:21,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:18:21,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:18:21,273.273 INFO    ] time= 25/10/2026 10:18:21
[2026-10-25 10:18:21,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:18:21,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:18:21,358.358 INFO    ] No existing commands found in stream
[2026-10-25 10:18:26,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:18:26,374.374 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 10:18:27,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:18:27,829.829 INFO    ] Checking for system updates...
[2026-10-25 10:18:27,867.867 INFO    ] 200
[2026-10-25 10:18:27,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:27,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:27,928.928 INFO    ] No update needed
[2026-10-25 10:18:27,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 10:18:27,970.970 INFO    ] 200
[2026-10-25 10:18:27,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:28,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:18:28,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:28,083.083 INFO    ] No camera update needed
[2026-10-25 10:18:28,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:18:28,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:18:28,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:18:28,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:18:30,146.146 INFO    ] ================================================
[2026-10-25 10:18:30,161.161 INFO    ] Launching Daemon at Sun Oct 25 10:18:30 IST 2026
[2026-10-25 10:18:30,173.173 INFO    ] ================================================
[2026-10-25 10:18:30,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:18:30
[2026-10-25 10:18:31,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:18:31,621.621 INFO    ] Initializing speech engine...
[2026-10-25 10:18:31,630.630 INFO    ] 2026-10-25 10:18:31
[2026-10-25 10:18:31,949.949 INFO    ] 2026-10-25 10:18:31
[2026-10-25 10:18:31,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:18:32,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:18:32,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:18:32,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:18:32,337.337 INFO    ] time= 25/10/2026 10:18:32
[2026-10-25 10:18:32,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:18:32,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:18:32,428.428 INFO    ] No existing commands found in stream
[2026-10-25 10:18:37,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:18:37,442.442 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 10:18:38,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:18:38,387.387 INFO    ] Checking for system updates...
[2026-10-25 10:18:38,424.424 INFO    ] 200
[2026-10-25 10:18:38,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:38,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:38,489.489 INFO    ] No update needed
[2026-10-25 10:18:38,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 10:18:38,525.525 INFO    ] 200
[2026-10-25 10:18:38,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:38,568.568 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:18:38,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:18:38,604.604 INFO    ] No camera update needed
[2026-10-25 10:18:38,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:18:38,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:18:38,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:18:38,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:18:40,661.661 INFO    ] ================================================
[2026-10-25 10:18:40,677.677 INFO    ] Launching Daemon at Sun Oct 25 10:18:40 IST 2026
[2026-10-25 10:18:40,688.688 INFO    ] ================================================
[2026-10-25 10:18:41,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:18:41
[2026-10-25 10:18:41,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:18:42,131.131 INFO    ] Initializing speech engine...
[2026-10-25 10:18:42,146.146 INFO    ] 2026-10-25 10:18:42
[2026-10-25 10:18:42,435.435 INFO    ] 2026-10-25 10:18:42
[2026-10-25 10:18:42,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:18:42,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:18:42,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:18:42,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:18:42,816.816 INFO    ] time= 25/10/2026 10:18:42
[2026-10-25 10:18:42,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:18:42,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:18:42,882.882 INFO    ] No existing commands found in stream
[2026-10-25 10:18:47,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:18:47,920.920 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 10:18:50,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:18:50,471.471 INFO    ] Checking for system updates...
[2026-10-25 10:18:50,511.511 INFO    ] 200
[2026-10-25 10:18:50,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:50,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:18:50,570.570 INFO    ] No update needed
[2026-10-25 10:18:50,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 10:18:50,607.607 INFO    ] 200
[2026-10-25 10:18:50,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:18:50,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:18:50,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:18:50,707.707 INFO    ] No camera update needed
[2026-10-25 10:18:50,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:18:50,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:18:50,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:18:50,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:18:52,763.763 INFO    ] ================================================
[2026-10-25 10:18:52,779.779 INFO    ] Launching Daemon at Sun Oct 25 10:18:52 IST 2026
[2026-10-25 10:18:52,790.790 INFO    ] ================================================
[2026-10-25 10:18:53,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:18:53
[2026-10-25 10:18:53,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:18:54,242.242 INFO    ] Initializing speech engine...
[2026-10-25 10:18:54,258.258 INFO    ] 2026-10-25 10:18:54
[2026-10-25 10:18:54,548.548 INFO    ] 2026-10-25 10:18:54
[2026-10-25 10:18:54,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:18:54,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:18:54,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:18:54,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:18:54,934.934 INFO    ] time= 25/10/2026 10:18:54
[2026-10-25 10:18:54,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:18:54,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:18:55,060.060 INFO    ] No existing commands found in stream
[2026-10-25 10:19:00,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:19:00,075.075 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 10:19:02,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:19:02,293.293 INFO    ] Checking for system updates...
[2026-10-25 10:19:02,333.333 INFO    ] 200
[2026-10-25 10:19:02,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:02,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:02,406.406 INFO    ] No update needed
[2026-10-25 10:19:02,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 10:19:02,453.453 INFO    ] 200
[2026-10-25 10:19:02,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:02,511.511 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:19:02,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:02,579.579 INFO    ] No camera update needed
[2026-10-25 10:19:02,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:19:02,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:19:02,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:19:02,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:19:04,643.643 INFO    ] ================================================
[2026-10-25 10:19:04,659.659 INFO    ] Launching Daemon at Sun Oct 25 10:19:04 IST 2026
[2026-10-25 10:19:04,671.671 INFO    ] ================================================
[2026-10-25 10:19:05,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:19:05
[2026-10-25 10:19:05,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:19:06,106.106 INFO    ] Initializing speech engine...
[2026-10-25 10:19:06,120.120 INFO    ] 2026-10-25 10:19:06
[2026-10-25 10:19:06,388.388 INFO    ] 2026-10-25 10:19:06
[2026-10-25 10:19:06,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:19:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:19:06,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:19:06,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:19:06,834.834 INFO    ] time= 25/10/2026 10:19:06
[2026-10-25 10:19:06,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:19:06,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:19:07,007.007 INFO    ] No existing commands found in stream
[2026-10-25 10:19:12,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:19:12,022.022 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 10:19:17,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:19:17,904.904 INFO    ] Checking for system updates...
[2026-10-25 10:19:17,941.941 INFO    ] 200
[2026-10-25 10:19:17,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:17,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:19:18,001.001 INFO    ] No update needed
[2026-10-25 10:19:18,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 10:19:18,041.041 INFO    ] 200
[2026-10-25 10:19:18,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:18,085.085 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:19:18,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:19:18,134.134 INFO    ] No camera update needed
[2026-10-25 10:19:18,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:19:18,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:19:18,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:19:18,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:19:20,191.191 INFO    ] ================================================
[2026-10-25 10:19:20,206.206 INFO    ] Launching Daemon at Sun Oct 25 10:19:20 IST 2026
[2026-10-25 10:19:20,217.217 INFO    ] ================================================
[2026-10-25 10:19:20,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:19:20
[2026-10-25 10:19:21,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:19:21,638.638 INFO    ] Initializing speech engine...
[2026-10-25 10:19:21,654.654 INFO    ] 2026-10-25 10:19:21
[2026-10-25 10:19:21,929.929 INFO    ] 2026-10-25 10:19:21
[2026-10-25 10:19:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:19:22,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:19:22,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:19:22,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:19:22,351.351 INFO    ] time= 25/10/2026 10:19:22
[2026-10-25 10:19:22,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:19:22,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:19:22,430.430 INFO    ] No existing commands found in stream
[2026-10-25 10:19:27,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:19:27,448.448 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 10:19:30,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:19:30,177.177 INFO    ] Checking for system updates...
[2026-10-25 10:19:30,215.215 INFO    ] 200
[2026-10-25 10:19:30,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:30,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:19:30,276.276 INFO    ] No update needed
[2026-10-25 10:19:30,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 10:19:30,314.314 INFO    ] 200
[2026-10-25 10:19:30,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:30,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:19:30,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:19:30,422.422 INFO    ] No camera update needed
[2026-10-25 10:19:30,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:19:30,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:19:30,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:19:30,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:19:32,482.482 INFO    ] ================================================
[2026-10-25 10:19:32,499.499 INFO    ] Launching Daemon at Sun Oct 25 10:19:32 IST 2026
[2026-10-25 10:19:32,511.511 INFO    ] ================================================
[2026-10-25 10:19:33,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:19:33
[2026-10-25 10:19:33,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:19:34,103.103 INFO    ] Initializing speech engine...
[2026-10-25 10:19:34,111.111 INFO    ] 2026-10-25 10:19:34
[2026-10-25 10:19:34,403.403 INFO    ] 2026-10-25 10:19:34
[2026-10-25 10:19:34,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:19:34,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:19:34,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:19:34,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:19:34,863.863 INFO    ] time= 25/10/2026 10:19:34
[2026-10-25 10:19:34,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:19:34,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:19:34,997.997 INFO    ] No existing commands found in stream
[2026-10-25 10:19:40,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:19:40,012.012 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 10:19:40,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:19:40,701.701 INFO    ] Checking for system updates...
[2026-10-25 10:19:40,742.742 INFO    ] 200
[2026-10-25 10:19:40,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:40,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:40,810.810 INFO    ] No update needed
[2026-10-25 10:19:40,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 10:19:40,852.852 INFO    ] 200
[2026-10-25 10:19:40,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:40,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:19:40,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:40,958.958 INFO    ] No camera update needed
[2026-10-25 10:19:40,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:19:40,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:19:40,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:19:40,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:19:43,018.018 INFO    ] ================================================
[2026-10-25 10:19:43,034.034 INFO    ] Launching Daemon at Sun Oct 25 10:19:43 IST 2026
[2026-10-25 10:19:43,045.045 INFO    ] ================================================
[2026-10-25 10:19:43,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:19:43
[2026-10-25 10:19:44,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:19:44,454.454 INFO    ] Initializing speech engine...
[2026-10-25 10:19:44,466.466 INFO    ] 2026-10-25 10:19:44
[2026-10-25 10:19:44,715.715 INFO    ] 2026-10-25 10:19:44
[2026-10-25 10:19:44,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:19:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:19:44,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:19:47,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:19:47,946.946 INFO    ] time= 25/10/2026 10:19:47
[2026-10-25 10:19:47,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:19:47,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:19:48,003.003 INFO    ] No existing commands found in stream
[2026-10-25 10:19:53,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:19:53,015.015 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 10:19:55,670.670 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:19:55,672.672 INFO    ] Checking for system updates...
[2026-10-25 10:19:55,709.709 INFO    ] 200
[2026-10-25 10:19:55,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:55,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:55,768.768 INFO    ] No update needed
[2026-10-25 10:19:55,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 10:19:55,804.804 INFO    ] 200
[2026-10-25 10:19:55,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:19:55,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:19:55,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:19:55,900.900 INFO    ] No camera update needed
[2026-10-25 10:19:55,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:19:55,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:19:55,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:19:55,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:19:57,955.955 INFO    ] ================================================
[2026-10-25 10:19:57,970.970 INFO    ] Launching Daemon at Sun Oct 25 10:19:57 IST 2026
[2026-10-25 10:19:57,981.981 INFO    ] ================================================
[2026-10-25 10:19:58,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:19:58
[2026-10-25 10:19:59,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:19:59,620.620 INFO    ] Initializing speech engine...
[2026-10-25 10:19:59,632.632 INFO    ] 2026-10-25 10:19:59
[2026-10-25 10:19:59,918.918 INFO    ] 2026-10-25 10:19:59
[2026-10-25 10:20:00,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:20:00,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:20:00,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:20:00,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:20:00,394.394 INFO    ] time= 25/10/2026 10:20:00
[2026-10-25 10:20:00,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:20:00,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:20:00,592.592 INFO    ] No existing commands found in stream
[2026-10-25 10:20:05,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:20:05,622.622 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 10:20:10,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:20:10,034.034 INFO    ] Checking for system updates...
[2026-10-25 10:20:10,073.073 INFO    ] 200
[2026-10-25 10:20:10,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:10,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:10,131.131 INFO    ] No update needed
[2026-10-25 10:20:10,134.134 INFO    ] Checking for camera pi updates...
[2026-10-25 10:20:10,168.168 INFO    ] 200
[2026-10-25 10:20:10,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:10,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:20:10,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:10,275.275 INFO    ] No camera update needed
[2026-10-25 10:20:10,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:20:10,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:20:10,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:20:10,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:20:12,329.329 INFO    ] ================================================
[2026-10-25 10:20:12,344.344 INFO    ] Launching Daemon at Sun Oct 25 10:20:12 IST 2026
[2026-10-25 10:20:12,356.356 INFO    ] ================================================
[2026-10-25 10:20:12,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:20:12
[2026-10-25 10:20:13,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:20:13,821.821 INFO    ] Initializing speech engine...
[2026-10-25 10:20:13,826.826 INFO    ] 2026-10-25 10:20:13
[2026-10-25 10:20:14,087.087 INFO    ] 2026-10-25 10:20:14
[2026-10-25 10:20:14,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:20:14,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:20:14,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:20:14,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:20:14,550.550 INFO    ] time= 25/10/2026 10:20:14
[2026-10-25 10:20:14,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:20:14,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:20:14,696.696 INFO    ] No existing commands found in stream
[2026-10-25 10:20:19,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:20:19,714.714 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 10:20:20,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:20:20,202.202 INFO    ] Checking for system updates...
[2026-10-25 10:20:20,239.239 INFO    ] 200
[2026-10-25 10:20:20,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:20,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:20,306.306 INFO    ] No update needed
[2026-10-25 10:20:20,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 10:20:20,343.343 INFO    ] 200
[2026-10-25 10:20:20,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:20,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:20:20,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:20,436.436 INFO    ] No camera update needed
[2026-10-25 10:20:20,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:20:20,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:20:20,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:20:20,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:20:22,493.493 INFO    ] ================================================
[2026-10-25 10:20:22,508.508 INFO    ] Launching Daemon at Sun Oct 25 10:20:22 IST 2026
[2026-10-25 10:20:22,519.519 INFO    ] ================================================
[2026-10-25 10:20:23,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:20:23
[2026-10-25 10:20:23,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:20:23,982.982 INFO    ] Initializing speech engine...
[2026-10-25 10:20:23,989.989 INFO    ] 2026-10-25 10:20:23
[2026-10-25 10:20:24,286.286 INFO    ] 2026-10-25 10:20:24
[2026-10-25 10:20:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:20:24,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:20:24,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:20:24,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:20:24,711.711 INFO    ] time= 25/10/2026 10:20:24
[2026-10-25 10:20:24,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:20:24,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:20:24,800.800 INFO    ] No existing commands found in stream
[2026-10-25 10:20:29,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:20:29,813.813 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 10:20:32,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:20:32,135.135 INFO    ] Checking for system updates...
[2026-10-25 10:20:32,186.186 INFO    ] 200
[2026-10-25 10:20:32,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:32,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:20:32,251.251 INFO    ] No update needed
[2026-10-25 10:20:32,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 10:20:32,291.291 INFO    ] 200
[2026-10-25 10:20:32,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:32,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:20:32,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:20:32,377.377 INFO    ] No camera update needed
[2026-10-25 10:20:32,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:20:32,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:20:32,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:20:32,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:20:34,434.434 INFO    ] ================================================
[2026-10-25 10:20:34,449.449 INFO    ] Launching Daemon at Sun Oct 25 10:20:34 IST 2026
[2026-10-25 10:20:34,460.460 INFO    ] ================================================
[2026-10-25 10:20:35,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:20:35
[2026-10-25 10:20:35,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:20:35,892.892 INFO    ] Initializing speech engine...
[2026-10-25 10:20:35,901.901 INFO    ] 2026-10-25 10:20:35
[2026-10-25 10:20:36,198.198 INFO    ] 2026-10-25 10:20:36
[2026-10-25 10:20:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:20:36,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:20:36,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:20:36,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:20:36,580.580 INFO    ] time= 25/10/2026 10:20:36
[2026-10-25 10:20:36,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:20:36,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:20:36,678.678 INFO    ] No existing commands found in stream
[2026-10-25 10:20:41,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:20:41,716.716 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 10:20:45,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:20:45,633.633 INFO    ] Checking for system updates...
[2026-10-25 10:20:45,674.674 INFO    ] 200
[2026-10-25 10:20:45,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:45,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:45,734.734 INFO    ] No update needed
[2026-10-25 10:20:45,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 10:20:45,771.771 INFO    ] 200
[2026-10-25 10:20:45,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:45,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:20:45,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:45,868.868 INFO    ] No camera update needed
[2026-10-25 10:20:45,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:20:45,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:20:45,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:20:45,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:20:47,923.923 INFO    ] ================================================
[2026-10-25 10:20:47,939.939 INFO    ] Launching Daemon at Sun Oct 25 10:20:47 IST 2026
[2026-10-25 10:20:47,950.950 INFO    ] ================================================
[2026-10-25 10:20:48,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:20:48
[2026-10-25 10:20:49,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:20:49,444.444 INFO    ] Initializing speech engine...
[2026-10-25 10:20:49,450.450 INFO    ] 2026-10-25 10:20:49
[2026-10-25 10:20:49,738.738 INFO    ] 2026-10-25 10:20:49
[2026-10-25 10:20:49,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:20:50,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:20:50,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:20:50,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:20:50,218.218 INFO    ] time= 25/10/2026 10:20:50
[2026-10-25 10:20:50,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:20:50,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:20:50,376.376 INFO    ] No existing commands found in stream
[2026-10-25 10:20:55,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:20:55,411.411 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:20:59,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:20:59,769.769 INFO    ] Checking for system updates...
[2026-10-25 10:20:59,807.807 INFO    ] 200
[2026-10-25 10:20:59,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:59,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:59,867.867 INFO    ] No update needed
[2026-10-25 10:20:59,870.870 INFO    ] Checking for camera pi updates...
[2026-10-25 10:20:59,908.908 INFO    ] 200
[2026-10-25 10:20:59,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:20:59,952.952 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:20:59,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:20:59,999.999 INFO    ] No camera update needed
[2026-10-25 10:21:00,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:21:00,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:21:00,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:21:00,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:21:02,057.057 INFO    ] ================================================
[2026-10-25 10:21:02,075.075 INFO    ] Launching Daemon at Sun Oct 25 10:21:02 IST 2026
[2026-10-25 10:21:02,088.088 INFO    ] ================================================
[2026-10-25 10:21:02,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:21:02
[2026-10-25 10:21:03,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:21:03,661.661 INFO    ] Initializing speech engine...
[2026-10-25 10:21:03,686.686 INFO    ] 2026-10-25 10:21:03
[2026-10-25 10:21:03,958.958 INFO    ] 2026-10-25 10:21:03
[2026-10-25 10:21:03,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:21:04,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:21:04,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:21:04,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:21:04,358.358 INFO    ] time= 25/10/2026 10:21:04
[2026-10-25 10:21:04,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:21:04,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:21:04,454.454 INFO    ] No existing commands found in stream
[2026-10-25 10:21:09,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:21:09,469.469 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 10:21:12,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:21:12,642.642 INFO    ] Checking for system updates...
[2026-10-25 10:21:12,679.679 INFO    ] 200
[2026-10-25 10:21:12,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:12,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:12,737.737 INFO    ] No update needed
[2026-10-25 10:21:12,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 10:21:12,773.773 INFO    ] 200
[2026-10-25 10:21:12,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:12,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:21:12,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:12,872.872 INFO    ] No camera update needed
[2026-10-25 10:21:12,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:21:12,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:21:12,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:21:12,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:21:14,928.928 INFO    ] ================================================
[2026-10-25 10:21:14,943.943 INFO    ] Launching Daemon at Sun Oct 25 10:21:14 IST 2026
[2026-10-25 10:21:14,955.955 INFO    ] ================================================
[2026-10-25 10:21:15,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:21:15
[2026-10-25 10:21:16,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:21:16,383.383 INFO    ] Initializing speech engine...
[2026-10-25 10:21:16,391.391 INFO    ] 2026-10-25 10:21:16
[2026-10-25 10:21:16,650.650 INFO    ] 2026-10-25 10:21:16
[2026-10-25 10:21:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:21:19,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:21:19,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:21:20,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:21:20,626.626 INFO    ] time= 25/10/2026 10:21:20
[2026-10-25 10:21:20,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:21:20,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:21:20,688.688 INFO    ] No existing commands found in stream
[2026-10-25 10:21:25,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:21:25,700.700 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 10:21:29,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:21:29,945.945 INFO    ] Checking for system updates...
[2026-10-25 10:21:29,983.983 INFO    ] 200
[2026-10-25 10:21:29,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:30,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:30,041.041 INFO    ] No update needed
[2026-10-25 10:21:30,044.044 INFO    ] Checking for camera pi updates...
[2026-10-25 10:21:30,082.082 INFO    ] 200
[2026-10-25 10:21:30,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:30,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:21:30,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:30,182.182 INFO    ] No camera update needed
[2026-10-25 10:21:30,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:21:30,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:21:30,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:21:30,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:21:32,241.241 INFO    ] ================================================
[2026-10-25 10:21:32,257.257 INFO    ] Launching Daemon at Sun Oct 25 10:21:32 IST 2026
[2026-10-25 10:21:32,268.268 INFO    ] ================================================
[2026-10-25 10:21:32,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:21:32
[2026-10-25 10:21:33,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:21:33,751.751 INFO    ] Initializing speech engine...
[2026-10-25 10:21:33,761.761 INFO    ] 2026-10-25 10:21:33
[2026-10-25 10:21:34,021.021 INFO    ] 2026-10-25 10:21:34
[2026-10-25 10:21:34,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:21:34,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:21:34,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:21:34,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:21:34,483.483 INFO    ] time= 25/10/2026 10:21:34
[2026-10-25 10:21:34,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:21:34,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:21:34,684.684 INFO    ] No existing commands found in stream
[2026-10-25 10:21:39,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:21:39,715.715 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 10:21:40,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:21:40,519.519 INFO    ] Checking for system updates...
[2026-10-25 10:21:40,557.557 INFO    ] 200
[2026-10-25 10:21:40,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:40,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:40,623.623 INFO    ] No update needed
[2026-10-25 10:21:40,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 10:21:40,661.661 INFO    ] 200
[2026-10-25 10:21:40,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:40,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:21:40,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:21:40,759.759 INFO    ] No camera update needed
[2026-10-25 10:21:40,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:21:40,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:21:40,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:21:40,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:21:42,815.815 INFO    ] ================================================
[2026-10-25 10:21:42,831.831 INFO    ] Launching Daemon at Sun Oct 25 10:21:42 IST 2026
[2026-10-25 10:21:42,842.842 INFO    ] ================================================
[2026-10-25 10:21:43,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:21:43
[2026-10-25 10:21:44,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:21:44,271.271 INFO    ] Initializing speech engine...
[2026-10-25 10:21:44,283.283 INFO    ] 2026-10-25 10:21:44
[2026-10-25 10:21:44,549.549 INFO    ] 2026-10-25 10:21:44
[2026-10-25 10:21:44,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:21:44,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:21:44,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:21:44,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:21:44,925.925 INFO    ] time= 25/10/2026 10:21:44
[2026-10-25 10:21:44,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:21:44,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:21:45,093.093 INFO    ] No existing commands found in stream
[2026-10-25 10:21:50,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:21:50,121.121 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 10:21:52,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:21:52,036.036 INFO    ] Checking for system updates...
[2026-10-25 10:21:52,072.072 INFO    ] 200
[2026-10-25 10:21:52,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:52,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:21:52,129.129 INFO    ] No update needed
[2026-10-25 10:21:52,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 10:21:52,165.165 INFO    ] 200
[2026-10-25 10:21:52,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:21:52,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:21:52,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:21:52,265.265 INFO    ] No camera update needed
[2026-10-25 10:21:52,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:21:52,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:21:52,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:21:52,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:21:54,321.321 INFO    ] ================================================
[2026-10-25 10:21:54,337.337 INFO    ] Launching Daemon at Sun Oct 25 10:21:54 IST 2026
[2026-10-25 10:21:54,349.349 INFO    ] ================================================
[2026-10-25 10:21:54,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:21:54
[2026-10-25 10:21:55,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:21:55,770.770 INFO    ] Initializing speech engine...
[2026-10-25 10:21:55,775.775 INFO    ] 2026-10-25 10:21:55
[2026-10-25 10:21:56,022.022 INFO    ] 2026-10-25 10:21:56
[2026-10-25 10:21:56,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:21:56,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:21:56,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:21:56,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:21:56,469.469 INFO    ] time= 25/10/2026 10:21:56
[2026-10-25 10:21:56,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:21:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:21:56,638.638 INFO    ] No existing commands found in stream
[2026-10-25 10:22:01,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:22:01,656.656 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 10:22:05,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:22:05,900.900 INFO    ] Checking for system updates...
[2026-10-25 10:22:05,938.938 INFO    ] 200
[2026-10-25 10:22:05,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:06,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:06,003.003 INFO    ] No update needed
[2026-10-25 10:22:06,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 10:22:06,043.043 INFO    ] 200
[2026-10-25 10:22:06,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:06,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:22:06,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:06,249.249 INFO    ] No camera update needed
[2026-10-25 10:22:06,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:22:06,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:22:06,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:22:06,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:22:08,305.305 INFO    ] ================================================
[2026-10-25 10:22:08,322.322 INFO    ] Launching Daemon at Sun Oct 25 10:22:08 IST 2026
[2026-10-25 10:22:08,333.333 INFO    ] ================================================
[2026-10-25 10:22:08,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:22:08
[2026-10-25 10:22:09,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:22:09,749.749 INFO    ] Initializing speech engine...
[2026-10-25 10:22:09,758.758 INFO    ] 2026-10-25 10:22:09
[2026-10-25 10:22:10,002.002 INFO    ] 2026-10-25 10:22:09
[2026-10-25 10:22:10,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:22:10,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:22:10,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:22:10,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:22:10,483.483 INFO    ] time= 25/10/2026 10:22:10
[2026-10-25 10:22:10,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:22:10,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:22:10,681.681 INFO    ] No existing commands found in stream
[2026-10-25 10:22:15,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:22:15,716.716 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 10:22:16,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:22:16,378.378 INFO    ] Checking for system updates...
[2026-10-25 10:22:16,418.418 INFO    ] 200
[2026-10-25 10:22:16,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:16,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:22:16,476.476 INFO    ] No update needed
[2026-10-25 10:22:16,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 10:22:16,513.513 INFO    ] 200
[2026-10-25 10:22:16,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:16,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:22:16,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:22:16,612.612 INFO    ] No camera update needed
[2026-10-25 10:22:16,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:22:16,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:22:16,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:22:16,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:22:18,666.666 INFO    ] ================================================
[2026-10-25 10:22:18,682.682 INFO    ] Launching Daemon at Sun Oct 25 10:22:18 IST 2026
[2026-10-25 10:22:18,694.694 INFO    ] ================================================
[2026-10-25 10:22:19,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:22:19
[2026-10-25 10:22:19,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:22:20,110.110 INFO    ] Initializing speech engine...
[2026-10-25 10:22:20,119.119 INFO    ] 2026-10-25 10:22:20
[2026-10-25 10:22:20,364.364 INFO    ] 2026-10-25 10:22:20
[2026-10-25 10:22:20,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:22:21,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:22:21,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:22:21,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:22:22,013.013 INFO    ] time= 25/10/2026 10:22:21
[2026-10-25 10:22:22,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:22:22,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:22:22,123.123 INFO    ] No existing commands found in stream
[2026-10-25 10:22:27,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:22:27,137.137 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 10:22:30,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:22:30,448.448 INFO    ] Checking for system updates...
[2026-10-25 10:22:30,484.484 INFO    ] 200
[2026-10-25 10:22:30,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:30,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:22:30,541.541 INFO    ] No update needed
[2026-10-25 10:22:30,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 10:22:30,582.582 INFO    ] 200
[2026-10-25 10:22:30,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:30,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:22:30,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:22:30,677.677 INFO    ] No camera update needed
[2026-10-25 10:22:30,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:22:30,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:22:30,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:22:30,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:22:32,733.733 INFO    ] ================================================
[2026-10-25 10:22:32,749.749 INFO    ] Launching Daemon at Sun Oct 25 10:22:32 IST 2026
[2026-10-25 10:22:32,761.761 INFO    ] ================================================
[2026-10-25 10:22:33,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:22:33
[2026-10-25 10:22:33,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:22:34,225.225 INFO    ] Initializing speech engine...
[2026-10-25 10:22:34,232.232 INFO    ] 2026-10-25 10:22:34
[2026-10-25 10:22:34,517.517 INFO    ] 2026-10-25 10:22:34
[2026-10-25 10:22:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:22:34,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:22:34,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:22:34,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:22:34,898.898 INFO    ] time= 25/10/2026 10:22:34
[2026-10-25 10:22:34,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:22:34,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:22:34,974.974 INFO    ] No existing commands found in stream
[2026-10-25 10:22:39,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:22:39,989.989 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 10:22:42,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:22:42,911.911 INFO    ] Checking for system updates...
[2026-10-25 10:22:42,947.947 INFO    ] 200
[2026-10-25 10:22:42,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:43,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:43,005.005 INFO    ] No update needed
[2026-10-25 10:22:43,007.007 INFO    ] Checking for camera pi updates...
[2026-10-25 10:22:43,045.045 INFO    ] 200
[2026-10-25 10:22:43,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:43,093.093 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:22:43,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:43,144.144 INFO    ] No camera update needed
[2026-10-25 10:22:43,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:22:43,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:22:43,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:22:43,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:22:45,199.199 INFO    ] ================================================
[2026-10-25 10:22:45,217.217 INFO    ] Launching Daemon at Sun Oct 25 10:22:45 IST 2026
[2026-10-25 10:22:45,229.229 INFO    ] ================================================
[2026-10-25 10:22:45,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:22:45
[2026-10-25 10:22:46,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:22:46,635.635 INFO    ] Initializing speech engine...
[2026-10-25 10:22:46,649.649 INFO    ] 2026-10-25 10:22:46
[2026-10-25 10:22:46,934.934 INFO    ] 2026-10-25 10:22:46
[2026-10-25 10:22:46,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:22:47,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:22:47,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:22:47,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:22:47,331.331 INFO    ] time= 25/10/2026 10:22:47
[2026-10-25 10:22:47,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:22:47,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:22:47,438.438 INFO    ] No existing commands found in stream
[2026-10-25 10:22:52,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:22:52,454.454 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 10:22:55,688.688 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:22:55,691.691 INFO    ] Checking for system updates...
[2026-10-25 10:22:55,731.731 INFO    ] 200
[2026-10-25 10:22:55,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:55,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:55,796.796 INFO    ] No update needed
[2026-10-25 10:22:55,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 10:22:55,832.832 INFO    ] 200
[2026-10-25 10:22:55,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:22:55,875.875 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:22:55,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:22:55,924.924 INFO    ] No camera update needed
[2026-10-25 10:22:55,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:22:55,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:22:55,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:22:55,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:22:57,981.981 INFO    ] ================================================
[2026-10-25 10:22:58,996.996 INFO    ] Launching Daemon at Sun Oct 25 10:22:57 IST 2026
[2026-10-25 10:22:58,007.007 INFO    ] ================================================
[2026-10-25 10:22:58,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:22:58
[2026-10-25 10:22:59,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:22:59,424.424 INFO    ] Initializing speech engine...
[2026-10-25 10:22:59,433.433 INFO    ] 2026-10-25 10:22:59
[2026-10-25 10:22:59,678.678 INFO    ] 2026-10-25 10:22:59
[2026-10-25 10:22:59,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:22:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:22:59,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:23:00,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:23:00,142.142 INFO    ] time= 25/10/2026 10:23:00
[2026-10-25 10:23:00,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:23:00,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:23:00,291.291 INFO    ] No existing commands found in stream
[2026-10-25 10:23:05,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:23:05,305.305 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 10:23:08,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:23:08,702.702 INFO    ] Checking for system updates...
[2026-10-25 10:23:08,738.738 INFO    ] 200
[2026-10-25 10:23:08,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:08,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:23:08,795.795 INFO    ] No update needed
[2026-10-25 10:23:08,798.798 INFO    ] Checking for camera pi updates...
[2026-10-25 10:23:08,832.832 INFO    ] 200
[2026-10-25 10:23:08,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:08,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:23:08,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:23:08,927.927 INFO    ] No camera update needed
[2026-10-25 10:23:08,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:23:08,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:23:08,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:23:08,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:23:10,985.985 INFO    ] ================================================
[2026-10-25 10:23:11,001.001 INFO    ] Launching Daemon at Sun Oct 25 10:23:10 IST 2026
[2026-10-25 10:23:11,012.012 INFO    ] ================================================
[2026-10-25 10:23:11,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:23:11
[2026-10-25 10:23:12,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:23:12,477.477 INFO    ] Initializing speech engine...
[2026-10-25 10:23:12,496.496 INFO    ] 2026-10-25 10:23:12
[2026-10-25 10:23:12,745.745 INFO    ] 2026-10-25 10:23:12
[2026-10-25 10:23:12,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:23:12,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:23:13,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:23:13,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:23:13,248.248 INFO    ] time= 25/10/2026 10:23:13
[2026-10-25 10:23:13,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:23:13,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:23:13,429.429 INFO    ] No existing commands found in stream
[2026-10-25 10:23:18,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:23:18,462.462 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 10:23:24,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:23:24,196.196 INFO    ] Checking for system updates...
[2026-10-25 10:23:24,235.235 INFO    ] 200
[2026-10-25 10:23:24,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:24,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:23:24,300.300 INFO    ] No update needed
[2026-10-25 10:23:24,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 10:23:24,340.340 INFO    ] 200
[2026-10-25 10:23:24,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:24,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:23:24,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:23:24,443.443 INFO    ] No camera update needed
[2026-10-25 10:23:24,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:23:24,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:23:24,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:23:24,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:23:26,499.499 INFO    ] ================================================
[2026-10-25 10:23:26,515.515 INFO    ] Launching Daemon at Sun Oct 25 10:23:26 IST 2026
[2026-10-25 10:23:26,526.526 INFO    ] ================================================
[2026-10-25 10:23:27,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:23:27
[2026-10-25 10:23:27,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:23:27,923.923 INFO    ] Initializing speech engine...
[2026-10-25 10:23:27,931.931 INFO    ] 2026-10-25 10:23:27
[2026-10-25 10:23:28,225.225 INFO    ] 2026-10-25 10:23:28
[2026-10-25 10:23:28,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:23:28,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:23:28,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:23:28,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:23:28,606.606 INFO    ] time= 25/10/2026 10:23:28
[2026-10-25 10:23:28,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:23:28,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:23:28,729.729 INFO    ] No existing commands found in stream
[2026-10-25 10:23:33,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:23:33,744.744 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 10:23:34,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:23:34,539.539 INFO    ] Checking for system updates...
[2026-10-25 10:23:34,576.576 INFO    ] 200
[2026-10-25 10:23:34,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:34,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:23:34,640.640 INFO    ] No update needed
[2026-10-25 10:23:34,643.643 INFO    ] Checking for camera pi updates...
[2026-10-25 10:23:34,680.680 INFO    ] 200
[2026-10-25 10:23:34,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:34,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:23:34,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:23:34,776.776 INFO    ] No camera update needed
[2026-10-25 10:23:34,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:23:34,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:23:34,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:23:34,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:23:36,832.832 INFO    ] ================================================
[2026-10-25 10:23:36,848.848 INFO    ] Launching Daemon at Sun Oct 25 10:23:36 IST 2026
[2026-10-25 10:23:36,859.859 INFO    ] ================================================
[2026-10-25 10:23:37,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:23:37
[2026-10-25 10:23:38,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:23:38,477.477 INFO    ] Initializing speech engine...
[2026-10-25 10:23:38,484.484 INFO    ] 2026-10-25 10:23:38
[2026-10-25 10:23:38,769.769 INFO    ] 2026-10-25 10:23:38
[2026-10-25 10:23:38,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:23:39,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:23:39,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:23:39,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:23:39,234.234 INFO    ] time= 25/10/2026 10:23:39
[2026-10-25 10:23:39,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:23:39,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:23:39,411.411 INFO    ] No existing commands found in stream
[2026-10-25 10:23:44,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:23:44,442.442 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 10:23:47,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:23:47,478.478 INFO    ] Checking for system updates...
[2026-10-25 10:23:47,514.514 INFO    ] 200
[2026-10-25 10:23:47,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:47,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:23:47,573.573 INFO    ] No update needed
[2026-10-25 10:23:47,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 10:23:47,609.609 INFO    ] 200
[2026-10-25 10:23:47,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:23:47,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:23:47,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:23:47,706.706 INFO    ] No camera update needed
[2026-10-25 10:23:47,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:23:47,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:23:47,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:23:47,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:23:49,763.763 INFO    ] ================================================
[2026-10-25 10:23:49,778.778 INFO    ] Launching Daemon at Sun Oct 25 10:23:49 IST 2026
[2026-10-25 10:23:49,789.789 INFO    ] ================================================
[2026-10-25 10:23:50,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:23:50
[2026-10-25 10:23:50,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:23:51,185.185 INFO    ] Initializing speech engine...
[2026-10-25 10:23:51,207.207 INFO    ] 2026-10-25 10:23:51
[2026-10-25 10:23:51,463.463 INFO    ] 2026-10-25 10:23:51
[2026-10-25 10:23:51,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:23:54,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:23:54,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:23:54,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:23:54,269.269 INFO    ] time= 25/10/2026 10:23:54
[2026-10-25 10:23:54,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:23:54,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:23:54,365.365 INFO    ] No existing commands found in stream
[2026-10-25 10:23:59,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:23:59,377.377 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 10:24:03,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:24:03,744.744 INFO    ] Checking for system updates...
[2026-10-25 10:24:03,788.788 INFO    ] 200
[2026-10-25 10:24:03,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:03,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:03,856.856 INFO    ] No update needed
[2026-10-25 10:24:03,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 10:24:03,896.896 INFO    ] 200
[2026-10-25 10:24:03,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:03,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:24:03,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:04,008.008 INFO    ] No camera update needed
[2026-10-25 10:24:04,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:24:04,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:24:04,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:24:04,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:24:06,066.066 INFO    ] ================================================
[2026-10-25 10:24:06,082.082 INFO    ] Launching Daemon at Sun Oct 25 10:24:06 IST 2026
[2026-10-25 10:24:06,094.094 INFO    ] ================================================
[2026-10-25 10:24:06,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:24:06
[2026-10-25 10:24:07,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:24:07,697.697 INFO    ] Initializing speech engine...
[2026-10-25 10:24:07,703.703 INFO    ] 2026-10-25 10:24:07
[2026-10-25 10:24:07,975.975 INFO    ] 2026-10-25 10:24:07
[2026-10-25 10:24:08,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:24:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:24:08,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:24:08,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:24:08,479.479 INFO    ] time= 25/10/2026 10:24:08
[2026-10-25 10:24:08,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:24:08,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:24:08,632.632 INFO    ] No existing commands found in stream
[2026-10-25 10:24:13,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:24:13,673.673 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 10:24:16,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:24:16,996.996 INFO    ] Checking for system updates...
[2026-10-25 10:24:17,038.038 INFO    ] 200
[2026-10-25 10:24:17,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:17,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:24:17,105.105 INFO    ] No update needed
[2026-10-25 10:24:17,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 10:24:17,146.146 INFO    ] 200
[2026-10-25 10:24:17,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:17,190.190 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:24:17,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:24:17,344.344 INFO    ] No camera update needed
[2026-10-25 10:24:17,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:24:17,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:24:17,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:24:17,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:24:19,402.402 INFO    ] ================================================
[2026-10-25 10:24:19,418.418 INFO    ] Launching Daemon at Sun Oct 25 10:24:19 IST 2026
[2026-10-25 10:24:19,429.429 INFO    ] ================================================
[2026-10-25 10:24:19,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:24:19
[2026-10-25 10:24:20,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:24:20,851.851 INFO    ] Initializing speech engine...
[2026-10-25 10:24:20,860.860 INFO    ] 2026-10-25 10:24:20
[2026-10-25 10:24:21,108.108 INFO    ] 2026-10-25 10:24:21
[2026-10-25 10:24:21,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:24:21,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:24:21,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:24:21,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:24:21,483.483 INFO    ] time= 25/10/2026 10:24:21
[2026-10-25 10:24:21,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:24:21,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:24:21,651.651 INFO    ] No existing commands found in stream
[2026-10-25 10:24:26,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:24:26,678.678 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 10:24:27,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:24:27,562.562 INFO    ] Checking for system updates...
[2026-10-25 10:24:27,597.597 INFO    ] 200
[2026-10-25 10:24:27,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:27,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:27,657.657 INFO    ] No update needed
[2026-10-25 10:24:27,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 10:24:27,697.697 INFO    ] 200
[2026-10-25 10:24:27,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:27,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:24:27,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:27,804.804 INFO    ] No camera update needed
[2026-10-25 10:24:27,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:24:27,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:24:27,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:24:27,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:24:29,860.860 INFO    ] ================================================
[2026-10-25 10:24:29,876.876 INFO    ] Launching Daemon at Sun Oct 25 10:24:29 IST 2026
[2026-10-25 10:24:29,887.887 INFO    ] ================================================
[2026-10-25 10:24:30,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:24:30
[2026-10-25 10:24:31,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:24:31,353.353 INFO    ] Initializing speech engine...
[2026-10-25 10:24:31,362.362 INFO    ] 2026-10-25 10:24:31
[2026-10-25 10:24:31,631.631 INFO    ] 2026-10-25 10:24:31
[2026-10-25 10:24:31,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:24:31,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:24:31,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:24:32,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:24:32,148.148 INFO    ] time= 25/10/2026 10:24:32
[2026-10-25 10:24:32,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:24:32,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:24:32,301.301 INFO    ] No existing commands found in stream
[2026-10-25 10:24:37,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:24:37,317.317 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 10:24:39,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:24:39,318.318 INFO    ] Checking for system updates...
[2026-10-25 10:24:39,359.359 INFO    ] 200
[2026-10-25 10:24:39,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:39,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:39,424.424 INFO    ] No update needed
[2026-10-25 10:24:39,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 10:24:39,462.462 INFO    ] 200
[2026-10-25 10:24:39,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:39,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:24:39,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:24:39,555.555 INFO    ] No camera update needed
[2026-10-25 10:24:39,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:24:39,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:24:39,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:24:39,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:24:41,608.608 INFO    ] ================================================
[2026-10-25 10:24:41,624.624 INFO    ] Launching Daemon at Sun Oct 25 10:24:41 IST 2026
[2026-10-25 10:24:41,635.635 INFO    ] ================================================
[2026-10-25 10:24:42,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:24:42
[2026-10-25 10:24:42,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:24:43,091.091 INFO    ] Initializing speech engine...
[2026-10-25 10:24:43,105.105 INFO    ] 2026-10-25 10:24:43
[2026-10-25 10:24:43,375.375 INFO    ] 2026-10-25 10:24:43
[2026-10-25 10:24:43,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:24:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:24:43,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:24:43,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:24:43,757.757 INFO    ] time= 25/10/2026 10:24:43
[2026-10-25 10:24:43,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:24:43,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:24:43,859.859 INFO    ] No existing commands found in stream
[2026-10-25 10:24:48,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:24:48,882.882 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 10:24:52,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:24:52,190.190 INFO    ] Checking for system updates...
[2026-10-25 10:24:52,226.226 INFO    ] 200
[2026-10-25 10:24:52,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:52,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:24:52,283.283 INFO    ] No update needed
[2026-10-25 10:24:52,285.285 INFO    ] Checking for camera pi updates...
[2026-10-25 10:24:52,319.319 INFO    ] 200
[2026-10-25 10:24:52,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:24:52,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:24:52,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:24:52,410.410 INFO    ] No camera update needed
[2026-10-25 10:24:52,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:24:52,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:24:52,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:24:52,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:24:54,466.466 INFO    ] ================================================
[2026-10-25 10:24:54,481.481 INFO    ] Launching Daemon at Sun Oct 25 10:24:54 IST 2026
[2026-10-25 10:24:54,492.492 INFO    ] ================================================
[2026-10-25 10:24:55,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:24:55
[2026-10-25 10:24:55,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:24:55,959.959 INFO    ] Initializing speech engine...
[2026-10-25 10:24:55,965.965 INFO    ] 2026-10-25 10:24:55
[2026-10-25 10:24:56,225.225 INFO    ] 2026-10-25 10:24:56
[2026-10-25 10:24:56,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:24:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:24:57,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:24:57,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:24:57,319.319 INFO    ] time= 25/10/2026 10:24:57
[2026-10-25 10:24:57,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:24:57,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:24:57,426.426 INFO    ] No existing commands found in stream
[2026-10-25 10:25:02,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:25:02,437.437 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 10:25:04,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:25:04,342.342 INFO    ] Checking for system updates...
[2026-10-25 10:25:04,379.379 INFO    ] 200
[2026-10-25 10:25:04,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:04,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:04,438.438 INFO    ] No update needed
[2026-10-25 10:25:04,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 10:25:04,475.475 INFO    ] 200
[2026-10-25 10:25:04,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:04,519.519 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:25:04,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:04,566.566 INFO    ] No camera update needed
[2026-10-25 10:25:04,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:25:04,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:25:04,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:25:04,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:25:06,621.621 INFO    ] ================================================
[2026-10-25 10:25:06,637.637 INFO    ] Launching Daemon at Sun Oct 25 10:25:06 IST 2026
[2026-10-25 10:25:06,649.649 INFO    ] ================================================
[2026-10-25 10:25:07,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:25:07
[2026-10-25 10:25:08,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:25:08,320.320 INFO    ] Initializing speech engine...
[2026-10-25 10:25:08,328.328 INFO    ] 2026-10-25 10:25:08
[2026-10-25 10:25:08,612.612 INFO    ] 2026-10-25 10:25:08
[2026-10-25 10:25:08,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:25:08,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:25:08,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:25:09,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:25:09,176.176 INFO    ] time= 25/10/2026 10:25:09
[2026-10-25 10:25:09,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:25:09,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:25:09,333.333 INFO    ] No existing commands found in stream
[2026-10-25 10:25:14,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:25:14,353.353 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 10:25:15,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:25:15,038.038 INFO    ] Checking for system updates...
[2026-10-25 10:25:15,074.074 INFO    ] 200
[2026-10-25 10:25:15,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:15,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:25:15,131.131 INFO    ] No update needed
[2026-10-25 10:25:15,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 10:25:15,169.169 INFO    ] 200
[2026-10-25 10:25:15,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:15,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:25:15,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:25:15,260.260 INFO    ] No camera update needed
[2026-10-25 10:25:15,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:25:15,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:25:15,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:25:15,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:25:17,315.315 INFO    ] ================================================
[2026-10-25 10:25:17,331.331 INFO    ] Launching Daemon at Sun Oct 25 10:25:17 IST 2026
[2026-10-25 10:25:17,342.342 INFO    ] ================================================
[2026-10-25 10:25:17,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:25:17
[2026-10-25 10:25:18,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:25:18,789.789 INFO    ] Initializing speech engine...
[2026-10-25 10:25:18,796.796 INFO    ] 2026-10-25 10:25:18
[2026-10-25 10:25:19,045.045 INFO    ] 2026-10-25 10:25:19
[2026-10-25 10:25:19,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:25:19,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:25:19,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:25:19,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:25:19,487.487 INFO    ] time= 25/10/2026 10:25:19
[2026-10-25 10:25:19,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:25:19,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:25:19,629.629 INFO    ] No existing commands found in stream
[2026-10-25 10:25:24,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:25:24,653.653 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 10:25:28,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:25:28,680.680 INFO    ] Checking for system updates...
[2026-10-25 10:25:28,718.718 INFO    ] 200
[2026-10-25 10:25:28,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:28,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:28,786.786 INFO    ] No update needed
[2026-10-25 10:25:28,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 10:25:28,830.830 INFO    ] 200
[2026-10-25 10:25:28,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:28,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:25:28,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:28,944.944 INFO    ] No camera update needed
[2026-10-25 10:25:28,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:25:28,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:25:28,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:25:28,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:25:31,006.006 INFO    ] ================================================
[2026-10-25 10:25:31,022.022 INFO    ] Launching Daemon at Sun Oct 25 10:25:31 IST 2026
[2026-10-25 10:25:31,034.034 INFO    ] ================================================
[2026-10-25 10:25:31,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:25:31
[2026-10-25 10:25:32,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:25:32,672.672 INFO    ] Initializing speech engine...
[2026-10-25 10:25:32,686.686 INFO    ] 2026-10-25 10:25:32
[2026-10-25 10:25:32,967.967 INFO    ] 2026-10-25 10:25:32
[2026-10-25 10:25:33,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:25:33,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:25:33,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:25:33,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:25:33,435.435 INFO    ] time= 25/10/2026 10:25:33
[2026-10-25 10:25:33,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:25:33,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:25:33,623.623 INFO    ] No existing commands found in stream
[2026-10-25 10:25:38,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:25:38,637.637 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 10:25:39,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:25:39,155.155 INFO    ] Checking for system updates...
[2026-10-25 10:25:39,198.198 INFO    ] 200
[2026-10-25 10:25:39,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:39,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:25:39,258.258 INFO    ] No update needed
[2026-10-25 10:25:39,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 10:25:39,301.301 INFO    ] 200
[2026-10-25 10:25:39,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:39,349.349 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:25:39,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:25:39,402.402 INFO    ] No camera update needed
[2026-10-25 10:25:39,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:25:39,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:25:39,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:25:39,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:25:41,456.456 INFO    ] ================================================
[2026-10-25 10:25:41,473.473 INFO    ] Launching Daemon at Sun Oct 25 10:25:41 IST 2026
[2026-10-25 10:25:41,484.484 INFO    ] ================================================
[2026-10-25 10:25:42,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:25:42
[2026-10-25 10:25:42,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:25:42,893.893 INFO    ] Initializing speech engine...
[2026-10-25 10:25:42,912.912 INFO    ] 2026-10-25 10:25:42
[2026-10-25 10:25:43,163.163 INFO    ] 2026-10-25 10:25:43
[2026-10-25 10:25:43,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:25:43,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:25:43,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:25:43,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:25:43,605.605 INFO    ] time= 25/10/2026 10:25:43
[2026-10-25 10:25:43,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:25:43,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:25:43,791.791 INFO    ] No existing commands found in stream
[2026-10-25 10:25:48,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:25:48,805.805 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 10:25:50,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:25:50,840.840 INFO    ] Checking for system updates...
[2026-10-25 10:25:50,878.878 INFO    ] 200
[2026-10-25 10:25:50,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:50,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:50,936.936 INFO    ] No update needed
[2026-10-25 10:25:50,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 10:25:50,973.973 INFO    ] 200
[2026-10-25 10:25:50,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:25:51,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:25:51,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:25:51,072.072 INFO    ] No camera update needed
[2026-10-25 10:25:51,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:25:51,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:25:51,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:25:51,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:25:53,128.128 INFO    ] ================================================
[2026-10-25 10:25:53,144.144 INFO    ] Launching Daemon at Sun Oct 25 10:25:53 IST 2026
[2026-10-25 10:25:53,155.155 INFO    ] ================================================
[2026-10-25 10:25:53,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:25:53
[2026-10-25 10:25:54,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:25:54,575.575 INFO    ] Initializing speech engine...
[2026-10-25 10:25:54,583.583 INFO    ] 2026-10-25 10:25:54
[2026-10-25 10:25:54,833.833 INFO    ] 2026-10-25 10:25:54
[2026-10-25 10:25:54,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:25:58,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:25:58,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:25:58,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:25:58,559.559 INFO    ] time= 25/10/2026 10:25:58
[2026-10-25 10:25:58,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:25:58,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:25:58,615.615 INFO    ] No existing commands found in stream
[2026-10-25 10:26:03,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:26:03,626.626 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 10:26:07,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:26:07,021.021 INFO    ] Checking for system updates...
[2026-10-25 10:26:07,057.057 INFO    ] 200
[2026-10-25 10:26:07,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:07,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:26:07,125.125 INFO    ] No update needed
[2026-10-25 10:26:07,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 10:26:07,161.161 INFO    ] 200
[2026-10-25 10:26:07,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:07,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:26:07,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:26:07,260.260 INFO    ] No camera update needed
[2026-10-25 10:26:07,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:26:07,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:26:07,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:26:07,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:26:09,314.314 INFO    ] ================================================
[2026-10-25 10:26:09,330.330 INFO    ] Launching Daemon at Sun Oct 25 10:26:09 IST 2026
[2026-10-25 10:26:09,341.341 INFO    ] ================================================
[2026-10-25 10:26:09,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:26:09
[2026-10-25 10:26:10,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:26:10,764.764 INFO    ] Initializing speech engine...
[2026-10-25 10:26:10,777.777 INFO    ] 2026-10-25 10:26:10
[2026-10-25 10:26:11,028.028 INFO    ] 2026-10-25 10:26:11
[2026-10-25 10:26:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:26:11,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:26:11,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:26:11,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:26:11,515.515 INFO    ] time= 25/10/2026 10:26:11
[2026-10-25 10:26:11,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:26:11,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:26:11,663.663 INFO    ] No existing commands found in stream
[2026-10-25 10:26:16,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:26:16,677.677 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 10:26:20,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:26:20,560.560 INFO    ] Checking for system updates...
[2026-10-25 10:26:20,596.596 INFO    ] 200
[2026-10-25 10:26:20,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:20,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:26:20,662.662 INFO    ] No update needed
[2026-10-25 10:26:20,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 10:26:20,702.702 INFO    ] 200
[2026-10-25 10:26:20,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:20,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:26:20,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:26:20,903.903 INFO    ] No camera update needed
[2026-10-25 10:26:20,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:26:20,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:26:20,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:26:20,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:26:22,961.961 INFO    ] ================================================
[2026-10-25 10:26:22,976.976 INFO    ] Launching Daemon at Sun Oct 25 10:26:22 IST 2026
[2026-10-25 10:26:22,987.987 INFO    ] ================================================
[2026-10-25 10:26:23,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:26:23
[2026-10-25 10:26:24,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:26:24,614.614 INFO    ] Initializing speech engine...
[2026-10-25 10:26:24,622.622 INFO    ] 2026-10-25 10:26:24
[2026-10-25 10:26:24,879.879 INFO    ] 2026-10-25 10:26:24
[2026-10-25 10:26:24,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:26:25,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:26:25,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:26:25,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:26:25,348.348 INFO    ] time= 25/10/2026 10:26:25
[2026-10-25 10:26:25,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:26:25,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:26:25,494.494 INFO    ] No existing commands found in stream
[2026-10-25 10:26:30,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:26:30,532.532 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 10:26:33,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:26:33,108.108 INFO    ] Checking for system updates...
[2026-10-25 10:26:33,149.149 INFO    ] 200
[2026-10-25 10:26:33,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:33,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:26:33,215.215 INFO    ] No update needed
[2026-10-25 10:26:33,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 10:26:33,256.256 INFO    ] 200
[2026-10-25 10:26:33,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:33,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:26:33,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:26:33,348.348 INFO    ] No camera update needed
[2026-10-25 10:26:33,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:26:33,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:26:33,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:26:33,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:26:35,408.408 INFO    ] ================================================
[2026-10-25 10:26:35,424.424 INFO    ] Launching Daemon at Sun Oct 25 10:26:35 IST 2026
[2026-10-25 10:26:35,436.436 INFO    ] ================================================
[2026-10-25 10:26:36,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:26:36
[2026-10-25 10:26:36,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:26:37,103.103 INFO    ] Initializing speech engine...
[2026-10-25 10:26:37,117.117 INFO    ] 2026-10-25 10:26:37
[2026-10-25 10:26:37,429.429 INFO    ] 2026-10-25 10:26:37
[2026-10-25 10:26:37,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:26:37,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:26:37,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:26:37,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:26:37,950.950 INFO    ] time= 25/10/2026 10:26:37
[2026-10-25 10:26:37,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:26:37,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:26:38,091.091 INFO    ] No existing commands found in stream
[2026-10-25 10:26:43,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:26:43,119.119 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 10:26:45,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:26:45,224.224 INFO    ] Checking for system updates...
[2026-10-25 10:26:45,262.262 INFO    ] 200
[2026-10-25 10:26:45,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:45,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:26:45,323.323 INFO    ] No update needed
[2026-10-25 10:26:45,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 10:26:45,365.365 INFO    ] 200
[2026-10-25 10:26:45,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:26:45,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:26:45,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:26:45,466.466 INFO    ] No camera update needed
[2026-10-25 10:26:45,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:26:45,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:26:45,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:26:45,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:26:47,524.524 INFO    ] ================================================
[2026-10-25 10:26:47,540.540 INFO    ] Launching Daemon at Sun Oct 25 10:26:47 IST 2026
[2026-10-25 10:26:47,551.551 INFO    ] ================================================
[2026-10-25 10:26:48,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:26:48
[2026-10-25 10:26:48,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:26:48,961.961 INFO    ] Initializing speech engine...
[2026-10-25 10:26:48,983.983 INFO    ] 2026-10-25 10:26:48
[2026-10-25 10:26:49,237.237 INFO    ] 2026-10-25 10:26:49
[2026-10-25 10:26:49,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:26:49,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:26:49,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:26:49,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:26:49,605.605 INFO    ] time= 25/10/2026 10:26:49
[2026-10-25 10:26:49,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:26:49,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:26:49,771.771 INFO    ] No existing commands found in stream
[2026-10-25 10:26:54,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:26:54,798.798 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 10:26:59,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:26:59,973.973 INFO    ] Checking for system updates...
[2026-10-25 10:27:00,009.009 INFO    ] 200
[2026-10-25 10:27:00,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:00,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:27:00,076.076 INFO    ] No update needed
[2026-10-25 10:27:00,078.078 INFO    ] Checking for camera pi updates...
[2026-10-25 10:27:00,117.117 INFO    ] 200
[2026-10-25 10:27:00,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:00,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:27:00,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:27:00,229.229 INFO    ] No camera update needed
[2026-10-25 10:27:00,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:27:00,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:27:00,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:27:00,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:27:02,301.301 INFO    ] ================================================
[2026-10-25 10:27:02,323.323 INFO    ] Launching Daemon at Sun Oct 25 10:27:02 IST 2026
[2026-10-25 10:27:02,340.340 INFO    ] ================================================
[2026-10-25 10:27:03,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:27:03
[2026-10-25 10:27:03,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:27:03,882.882 INFO    ] Initializing speech engine...
[2026-10-25 10:27:03,890.890 INFO    ] 2026-10-25 10:27:03
[2026-10-25 10:27:04,137.137 INFO    ] 2026-10-25 10:27:04
[2026-10-25 10:27:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:27:04,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:27:04,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:27:04,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:27:04,630.630 INFO    ] time= 25/10/2026 10:27:04
[2026-10-25 10:27:04,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:27:04,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:27:04,791.791 INFO    ] No existing commands found in stream
[2026-10-25 10:27:09,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:27:09,809.809 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 10:27:13,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:27:13,631.631 INFO    ] Checking for system updates...
[2026-10-25 10:27:13,671.671 INFO    ] 200
[2026-10-25 10:27:13,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:13,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:27:13,734.734 INFO    ] No update needed
[2026-10-25 10:27:13,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 10:27:13,770.770 INFO    ] 200
[2026-10-25 10:27:13,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:13,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:27:13,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:27:13,867.867 INFO    ] No camera update needed
[2026-10-25 10:27:13,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:27:13,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:27:13,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:27:13,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:27:15,922.922 INFO    ] ================================================
[2026-10-25 10:27:15,937.937 INFO    ] Launching Daemon at Sun Oct 25 10:27:15 IST 2026
[2026-10-25 10:27:15,949.949 INFO    ] ================================================
[2026-10-25 10:27:16,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:27:16
[2026-10-25 10:27:17,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:27:17,359.359 INFO    ] Initializing speech engine...
[2026-10-25 10:27:17,376.376 INFO    ] 2026-10-25 10:27:17
[2026-10-25 10:27:17,658.658 INFO    ] 2026-10-25 10:27:17
[2026-10-25 10:27:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:27:17,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:27:17,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:27:18,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:27:18,026.026 INFO    ] time= 25/10/2026 10:27:18
[2026-10-25 10:27:18,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:27:18,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:27:18,137.137 INFO    ] No existing commands found in stream
[2026-10-25 10:27:23,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:27:23,165.165 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 10:27:25,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:27:25,840.840 INFO    ] Checking for system updates...
[2026-10-25 10:27:25,877.877 INFO    ] 200
[2026-10-25 10:27:25,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:25,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:25,937.937 INFO    ] No update needed
[2026-10-25 10:27:25,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 10:27:25,974.974 INFO    ] 200
[2026-10-25 10:27:25,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:26,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:27:26,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:26,069.069 INFO    ] No camera update needed
[2026-10-25 10:27:26,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:27:26,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:27:26,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:27:26,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:27:28,128.128 INFO    ] ================================================
[2026-10-25 10:27:28,143.143 INFO    ] Launching Daemon at Sun Oct 25 10:27:28 IST 2026
[2026-10-25 10:27:28,155.155 INFO    ] ================================================
[2026-10-25 10:27:28,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:27:28
[2026-10-25 10:27:29,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:27:29,561.561 INFO    ] Initializing speech engine...
[2026-10-25 10:27:29,580.580 INFO    ] 2026-10-25 10:27:29
[2026-10-25 10:27:29,831.831 INFO    ] 2026-10-25 10:27:29
[2026-10-25 10:27:29,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:27:30,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:27:30,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:27:30,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:27:30,965.965 INFO    ] time= 25/10/2026 10:27:30
[2026-10-25 10:27:31,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:27:31,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:27:31,074.074 INFO    ] No existing commands found in stream
[2026-10-25 10:27:36,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:27:36,088.088 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 10:27:40,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:27:40,289.289 INFO    ] Checking for system updates...
[2026-10-25 10:27:40,332.332 INFO    ] 200
[2026-10-25 10:27:40,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:40,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:40,399.399 INFO    ] No update needed
[2026-10-25 10:27:40,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 10:27:40,440.440 INFO    ] 200
[2026-10-25 10:27:40,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:40,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:27:40,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:40,546.546 INFO    ] No camera update needed
[2026-10-25 10:27:40,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:27:40,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:27:40,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:27:40,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:27:42,604.604 INFO    ] ================================================
[2026-10-25 10:27:42,620.620 INFO    ] Launching Daemon at Sun Oct 25 10:27:42 IST 2026
[2026-10-25 10:27:42,630.630 INFO    ] ================================================
[2026-10-25 10:27:43,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:27:43
[2026-10-25 10:27:43,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:27:44,069.069 INFO    ] Initializing speech engine...
[2026-10-25 10:27:44,075.075 INFO    ] 2026-10-25 10:27:44
[2026-10-25 10:27:44,372.372 INFO    ] 2026-10-25 10:27:44
[2026-10-25 10:27:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:27:44,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:27:44,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:27:44,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:27:44,765.765 INFO    ] time= 25/10/2026 10:27:44
[2026-10-25 10:27:44,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:27:44,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:27:44,879.879 INFO    ] No existing commands found in stream
[2026-10-25 10:27:49,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:27:49,893.893 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 10:27:52,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:27:52,683.683 INFO    ] Checking for system updates...
[2026-10-25 10:27:52,723.723 INFO    ] 200
[2026-10-25 10:27:52,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:52,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:52,786.786 INFO    ] No update needed
[2026-10-25 10:27:52,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 10:27:52,826.826 INFO    ] 200
[2026-10-25 10:27:52,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:27:52,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:27:52,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:27:52,917.917 INFO    ] No camera update needed
[2026-10-25 10:27:52,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:27:52,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:27:52,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:27:52,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:27:54,972.972 INFO    ] ================================================
[2026-10-25 10:27:54,988.988 INFO    ] Launching Daemon at Sun Oct 25 10:27:54 IST 2026
[2026-10-25 10:27:55,999.999 INFO    ] ================================================
[2026-10-25 10:27:55,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:27:55
[2026-10-25 10:27:56,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:27:56,406.406 INFO    ] Initializing speech engine...
[2026-10-25 10:27:56,419.419 INFO    ] 2026-10-25 10:27:56
[2026-10-25 10:27:56,700.700 INFO    ] 2026-10-25 10:27:56
[2026-10-25 10:27:56,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:27:56,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:27:56,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:27:57,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:27:57,071.071 INFO    ] time= 25/10/2026 10:27:57
[2026-10-25 10:27:57,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:27:57,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:27:57,192.192 INFO    ] No existing commands found in stream
[2026-10-25 10:28:02,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:28:02,206.206 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 10:28:06,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:28:06,452.452 INFO    ] Checking for system updates...
[2026-10-25 10:28:06,488.488 INFO    ] 200
[2026-10-25 10:28:06,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:06,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:06,545.545 INFO    ] No update needed
[2026-10-25 10:28:06,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 10:28:06,582.582 INFO    ] 200
[2026-10-25 10:28:06,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:06,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:28:06,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:06,676.676 INFO    ] No camera update needed
[2026-10-25 10:28:06,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:28:06,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:28:06,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:28:06,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:28:08,732.732 INFO    ] ================================================
[2026-10-25 10:28:08,748.748 INFO    ] Launching Daemon at Sun Oct 25 10:28:08 IST 2026
[2026-10-25 10:28:08,759.759 INFO    ] ================================================
[2026-10-25 10:28:09,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:28:09
[2026-10-25 10:28:09,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:28:10,210.210 INFO    ] Initializing speech engine...
[2026-10-25 10:28:10,219.219 INFO    ] 2026-10-25 10:28:10
[2026-10-25 10:28:10,515.515 INFO    ] 2026-10-25 10:28:10
[2026-10-25 10:28:10,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:28:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:28:10,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:28:10,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:28:10,867.867 INFO    ] time= 25/10/2026 10:28:10
[2026-10-25 10:28:10,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:28:10,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:28:10,953.953 INFO    ] No existing commands found in stream
[2026-10-25 10:28:15,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:28:15,968.968 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 10:28:18,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:28:18,709.709 INFO    ] Checking for system updates...
[2026-10-25 10:28:18,745.745 INFO    ] 200
[2026-10-25 10:28:18,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:18,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:28:18,803.803 INFO    ] No update needed
[2026-10-25 10:28:18,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 10:28:18,844.844 INFO    ] 200
[2026-10-25 10:28:18,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:18,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:28:18,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:28:18,947.947 INFO    ] No camera update needed
[2026-10-25 10:28:18,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:28:18,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:28:18,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:28:18,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:28:21,004.004 INFO    ] ================================================
[2026-10-25 10:28:21,020.020 INFO    ] Launching Daemon at Sun Oct 25 10:28:21 IST 2026
[2026-10-25 10:28:21,031.031 INFO    ] ================================================
[2026-10-25 10:28:21,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:28:21
[2026-10-25 10:28:22,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:28:22,481.481 INFO    ] Initializing speech engine...
[2026-10-25 10:28:22,490.490 INFO    ] 2026-10-25 10:28:22
[2026-10-25 10:28:22,739.739 INFO    ] 2026-10-25 10:28:22
[2026-10-25 10:28:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:28:22,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:28:22,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:28:23,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:28:23,116.116 INFO    ] time= 25/10/2026 10:28:23
[2026-10-25 10:28:23,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:28:23,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:28:23,279.279 INFO    ] No existing commands found in stream
[2026-10-25 10:28:28,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:28:28,312.312 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 10:28:32,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:28:32,347.347 INFO    ] Checking for system updates...
[2026-10-25 10:28:32,396.396 INFO    ] 200
[2026-10-25 10:28:32,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:32,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:28:32,473.473 INFO    ] No update needed
[2026-10-25 10:28:32,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 10:28:32,509.509 INFO    ] 200
[2026-10-25 10:28:32,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:32,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:28:32,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:28:32,589.589 INFO    ] No camera update needed
[2026-10-25 10:28:32,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:28:32,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:28:32,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:28:32,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:28:34,646.646 INFO    ] ================================================
[2026-10-25 10:28:34,661.661 INFO    ] Launching Daemon at Sun Oct 25 10:28:34 IST 2026
[2026-10-25 10:28:34,672.672 INFO    ] ================================================
[2026-10-25 10:28:35,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:28:35
[2026-10-25 10:28:35,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:28:36,295.295 INFO    ] Initializing speech engine...
[2026-10-25 10:28:36,303.303 INFO    ] 2026-10-25 10:28:36
[2026-10-25 10:28:36,618.618 INFO    ] 2026-10-25 10:28:36
[2026-10-25 10:28:36,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:28:36,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:28:36,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:28:37,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:28:37,126.126 INFO    ] time= 25/10/2026 10:28:37
[2026-10-25 10:28:37,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:28:37,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:28:37,281.281 INFO    ] No existing commands found in stream
[2026-10-25 10:28:42,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:28:42,309.309 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 10:28:45,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:28:45,440.440 INFO    ] Checking for system updates...
[2026-10-25 10:28:45,478.478 INFO    ] 200
[2026-10-25 10:28:45,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:45,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:45,537.537 INFO    ] No update needed
[2026-10-25 10:28:45,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 10:28:45,574.574 INFO    ] 200
[2026-10-25 10:28:45,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:45,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:28:45,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:45,670.670 INFO    ] No camera update needed
[2026-10-25 10:28:45,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:28:45,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:28:45,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:28:45,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:28:47,731.731 INFO    ] ================================================
[2026-10-25 10:28:47,747.747 INFO    ] Launching Daemon at Sun Oct 25 10:28:47 IST 2026
[2026-10-25 10:28:47,758.758 INFO    ] ================================================
[2026-10-25 10:28:48,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:28:48
[2026-10-25 10:28:48,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:28:49,205.205 INFO    ] Initializing speech engine...
[2026-10-25 10:28:49,210.210 INFO    ] 2026-10-25 10:28:49
[2026-10-25 10:28:49,473.473 INFO    ] 2026-10-25 10:28:49
[2026-10-25 10:28:49,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:28:49,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:28:49,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:28:49,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:28:49,916.916 INFO    ] time= 25/10/2026 10:28:49
[2026-10-25 10:28:49,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:28:50,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:28:50,154.154 INFO    ] No existing commands found in stream
[2026-10-25 10:28:55,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:28:55,184.184 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 10:28:55,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:28:55,781.781 INFO    ] Checking for system updates...
[2026-10-25 10:28:55,817.817 INFO    ] 200
[2026-10-25 10:28:55,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:55,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:55,876.876 INFO    ] No update needed
[2026-10-25 10:28:55,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 10:28:55,912.912 INFO    ] 200
[2026-10-25 10:28:55,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:28:55,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:28:56,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:28:56,021.021 INFO    ] No camera update needed
[2026-10-25 10:28:56,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:28:56,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:28:56,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:28:56,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:28:58,075.075 INFO    ] ================================================
[2026-10-25 10:28:58,091.091 INFO    ] Launching Daemon at Sun Oct 25 10:28:58 IST 2026
[2026-10-25 10:28:58,102.102 INFO    ] ================================================
[2026-10-25 10:28:58,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:28:58
[2026-10-25 10:28:59,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:28:59,553.553 INFO    ] Initializing speech engine...
[2026-10-25 10:28:59,563.563 INFO    ] 2026-10-25 10:28:59
[2026-10-25 10:28:59,809.809 INFO    ] 2026-10-25 10:28:59
[2026-10-25 10:28:59,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:29:02,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:29:02,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:29:02,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:29:02,945.945 INFO    ] time= 25/10/2026 10:29:02
[2026-10-25 10:29:02,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:29:02,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:29:03,013.013 INFO    ] No existing commands found in stream
[2026-10-25 10:29:08,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:29:08,025.025 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 10:29:08,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:29:08,987.987 INFO    ] Checking for system updates...
[2026-10-25 10:29:09,027.027 INFO    ] 200
[2026-10-25 10:29:09,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:09,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:29:09,085.085 INFO    ] No update needed
[2026-10-25 10:29:09,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 10:29:09,122.122 INFO    ] 200
[2026-10-25 10:29:09,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:09,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:29:09,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:29:09,221.221 INFO    ] No camera update needed
[2026-10-25 10:29:09,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:29:09,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:29:09,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:29:09,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:29:11,278.278 INFO    ] ================================================
[2026-10-25 10:29:11,294.294 INFO    ] Launching Daemon at Sun Oct 25 10:29:11 IST 2026
[2026-10-25 10:29:11,305.305 INFO    ] ================================================
[2026-10-25 10:29:11,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:29:11
[2026-10-25 10:29:12,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:29:12,743.743 INFO    ] Initializing speech engine...
[2026-10-25 10:29:12,766.766 INFO    ] 2026-10-25 10:29:12
[2026-10-25 10:29:13,022.022 INFO    ] 2026-10-25 10:29:13
[2026-10-25 10:29:13,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:29:13,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:29:13,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:29:13,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:29:13,466.466 INFO    ] time= 25/10/2026 10:29:13
[2026-10-25 10:29:13,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:29:13,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:29:13,639.639 INFO    ] No existing commands found in stream
[2026-10-25 10:29:18,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:29:18,654.654 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 10:29:19,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:29:19,107.107 INFO    ] Checking for system updates...
[2026-10-25 10:29:19,143.143 INFO    ] 200
[2026-10-25 10:29:19,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:19,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:29:19,201.201 INFO    ] No update needed
[2026-10-25 10:29:19,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 10:29:19,238.238 INFO    ] 200
[2026-10-25 10:29:19,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:19,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:29:19,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:29:19,328.328 INFO    ] No camera update needed
[2026-10-25 10:29:19,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:29:19,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:29:19,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:29:19,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:29:21,384.384 INFO    ] ================================================
[2026-10-25 10:29:21,399.399 INFO    ] Launching Daemon at Sun Oct 25 10:29:21 IST 2026
[2026-10-25 10:29:21,411.411 INFO    ] ================================================
[2026-10-25 10:29:22,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:29:22
[2026-10-25 10:29:22,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:29:23,048.048 INFO    ] Initializing speech engine...
[2026-10-25 10:29:23,060.060 INFO    ] 2026-10-25 10:29:23
[2026-10-25 10:29:23,366.366 INFO    ] 2026-10-25 10:29:23
[2026-10-25 10:29:23,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:29:23,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:29:23,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:29:23,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:29:23,923.923 INFO    ] time= 25/10/2026 10:29:23
[2026-10-25 10:29:23,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:29:24,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:29:24,125.125 INFO    ] No existing commands found in stream
[2026-10-25 10:29:29,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:29:29,145.145 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 10:29:34,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:29:34,243.243 INFO    ] Checking for system updates...
[2026-10-25 10:29:34,282.282 INFO    ] 200
[2026-10-25 10:29:34,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:34,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:34,341.341 INFO    ] No update needed
[2026-10-25 10:29:34,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 10:29:34,382.382 INFO    ] 200
[2026-10-25 10:29:34,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:34,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:29:34,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:34,478.478 INFO    ] No camera update needed
[2026-10-25 10:29:34,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:29:34,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:29:34,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:29:34,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:29:36,533.533 INFO    ] ================================================
[2026-10-25 10:29:36,549.549 INFO    ] Launching Daemon at Sun Oct 25 10:29:36 IST 2026
[2026-10-25 10:29:36,559.559 INFO    ] ================================================
[2026-10-25 10:29:37,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:29:37
[2026-10-25 10:29:37,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:29:38,230.230 INFO    ] Initializing speech engine...
[2026-10-25 10:29:38,244.244 INFO    ] 2026-10-25 10:29:38
[2026-10-25 10:29:38,530.530 INFO    ] 2026-10-25 10:29:38
[2026-10-25 10:29:38,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:29:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:29:38,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:29:39,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:29:39,071.071 INFO    ] time= 25/10/2026 10:29:39
[2026-10-25 10:29:39,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:29:39,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:29:39,211.211 INFO    ] No existing commands found in stream
[2026-10-25 10:29:44,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:29:44,229.229 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 10:29:48,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:29:48,318.318 INFO    ] Checking for system updates...
[2026-10-25 10:29:48,362.362 INFO    ] 200
[2026-10-25 10:29:48,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:48,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:48,436.436 INFO    ] No update needed
[2026-10-25 10:29:48,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 10:29:48,473.473 INFO    ] 200
[2026-10-25 10:29:48,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:48,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:29:48,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:48,568.568 INFO    ] No camera update needed
[2026-10-25 10:29:48,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:29:48,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:29:48,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:29:48,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:29:50,625.625 INFO    ] ================================================
[2026-10-25 10:29:50,640.640 INFO    ] Launching Daemon at Sun Oct 25 10:29:50 IST 2026
[2026-10-25 10:29:50,651.651 INFO    ] ================================================
[2026-10-25 10:29:51,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:29:51
[2026-10-25 10:29:51,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:29:52,073.073 INFO    ] Initializing speech engine...
[2026-10-25 10:29:52,082.082 INFO    ] 2026-10-25 10:29:52
[2026-10-25 10:29:52,328.328 INFO    ] 2026-10-25 10:29:52
[2026-10-25 10:29:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:29:52,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:29:52,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:29:52,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:29:52,800.800 INFO    ] time= 25/10/2026 10:29:52
[2026-10-25 10:29:52,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:29:52,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:29:52,955.955 INFO    ] No existing commands found in stream
[2026-10-25 10:29:57,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:29:57,994.994 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 10:29:58,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:29:58,957.957 INFO    ] Checking for system updates...
[2026-10-25 10:29:58,995.995 INFO    ] 200
[2026-10-25 10:29:58,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:59,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:59,053.053 INFO    ] No update needed
[2026-10-25 10:29:59,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 10:29:59,090.090 INFO    ] 200
[2026-10-25 10:29:59,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:29:59,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:29:59,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:29:59,188.188 INFO    ] No camera update needed
[2026-10-25 10:29:59,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:29:59,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:29:59,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:29:59,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:30:01,244.244 INFO    ] ================================================
[2026-10-25 10:30:01,259.259 INFO    ] Launching Daemon at Sun Oct 25 10:30:01 IST 2026
[2026-10-25 10:30:01,270.270 INFO    ] ================================================
[2026-10-25 10:30:02,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:30:02
[2026-10-25 10:30:03,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:30:03,640.640 INFO    ] Initializing speech engine...
[2026-10-25 10:30:03,648.648 INFO    ] 2026-10-25 10:30:03
[2026-10-25 10:30:04,023.023 INFO    ] 2026-10-25 10:30:04
[2026-10-25 10:30:04,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:30:04,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:30:04,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:30:04,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:30:04,954.954 INFO    ] time= 25/10/2026 10:30:04
[2026-10-25 10:30:04,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:30:04,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:30:05,073.073 INFO    ] No existing commands found in stream
[2026-10-25 10:30:10,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:30:10,107.107 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 10:30:13,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:30:13,167.167 INFO    ] Checking for system updates...
[2026-10-25 10:30:13,207.207 INFO    ] 200
[2026-10-25 10:30:13,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:13,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:13,272.272 INFO    ] No update needed
[2026-10-25 10:30:13,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 10:30:13,307.307 INFO    ] 200
[2026-10-25 10:30:13,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:13,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:30:13,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:13,406.406 INFO    ] No camera update needed
[2026-10-25 10:30:13,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:30:13,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:30:13,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:30:13,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:30:15,463.463 INFO    ] ================================================
[2026-10-25 10:30:15,479.479 INFO    ] Launching Daemon at Sun Oct 25 10:30:15 IST 2026
[2026-10-25 10:30:15,493.493 INFO    ] ================================================
[2026-10-25 10:30:16,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:30:16
[2026-10-25 10:30:16,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:30:16,957.957 INFO    ] Initializing speech engine...
[2026-10-25 10:30:16,972.972 INFO    ] 2026-10-25 10:30:16
[2026-10-25 10:30:17,257.257 INFO    ] 2026-10-25 10:30:17
[2026-10-25 10:30:17,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:30:17,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:30:17,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:30:17,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:30:17,644.644 INFO    ] time= 25/10/2026 10:30:17
[2026-10-25 10:30:17,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:30:17,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:30:17,808.808 INFO    ] No existing commands found in stream
[2026-10-25 10:30:22,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:30:22,836.836 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 10:30:26,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:30:26,453.453 INFO    ] Checking for system updates...
[2026-10-25 10:30:26,489.489 INFO    ] 200
[2026-10-25 10:30:26,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:26,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:30:26,546.546 INFO    ] No update needed
[2026-10-25 10:30:26,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 10:30:26,583.583 INFO    ] 200
[2026-10-25 10:30:26,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:26,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:30:26,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:30:26,682.682 INFO    ] No camera update needed
[2026-10-25 10:30:26,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:30:26,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:30:26,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:30:26,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:30:28,739.739 INFO    ] ================================================
[2026-10-25 10:30:28,754.754 INFO    ] Launching Daemon at Sun Oct 25 10:30:28 IST 2026
[2026-10-25 10:30:28,765.765 INFO    ] ================================================
[2026-10-25 10:30:29,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:30:29
[2026-10-25 10:30:29,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:30:30,275.275 INFO    ] Initializing speech engine...
[2026-10-25 10:30:30,286.286 INFO    ] 2026-10-25 10:30:30
[2026-10-25 10:30:30,557.557 INFO    ] 2026-10-25 10:30:30
[2026-10-25 10:30:30,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:30:30,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:30:30,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:30:30,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:30:30,918.918 INFO    ] time= 25/10/2026 10:30:30
[2026-10-25 10:30:30,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:30:30,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:30:31,069.069 INFO    ] No existing commands found in stream
[2026-10-25 10:30:36,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:30:36,105.105 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 10:30:37,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:30:37,520.520 INFO    ] Checking for system updates...
[2026-10-25 10:30:37,560.560 INFO    ] 200
[2026-10-25 10:30:37,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:37,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:37,626.626 INFO    ] No update needed
[2026-10-25 10:30:37,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 10:30:37,667.667 INFO    ] 200
[2026-10-25 10:30:37,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:37,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:30:38,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:38,860.860 INFO    ] No camera update needed
[2026-10-25 10:30:38,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:30:38,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:30:38,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:30:38,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:30:40,919.919 INFO    ] ================================================
[2026-10-25 10:30:40,934.934 INFO    ] Launching Daemon at Sun Oct 25 10:30:40 IST 2026
[2026-10-25 10:30:40,944.944 INFO    ] ================================================
[2026-10-25 10:30:41,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:30:41
[2026-10-25 10:30:42,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:30:42,341.341 INFO    ] Initializing speech engine...
[2026-10-25 10:30:42,349.349 INFO    ] 2026-10-25 10:30:42
[2026-10-25 10:30:42,622.622 INFO    ] 2026-10-25 10:30:42
[2026-10-25 10:30:42,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:30:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:30:42,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:30:43,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:30:43,069.069 INFO    ] time= 25/10/2026 10:30:43
[2026-10-25 10:30:43,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:30:43,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:30:43,253.253 INFO    ] No existing commands found in stream
[2026-10-25 10:30:48,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:30:48,268.268 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 10:30:50,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:30:50,501.501 INFO    ] Checking for system updates...
[2026-10-25 10:30:50,538.538 INFO    ] 200
[2026-10-25 10:30:50,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:50,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:50,615.615 INFO    ] No update needed
[2026-10-25 10:30:50,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 10:30:50,651.651 INFO    ] 200
[2026-10-25 10:30:50,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:30:50,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:30:50,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:30:50,747.747 INFO    ] No camera update needed
[2026-10-25 10:30:50,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:30:50,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:30:50,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:30:50,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:30:52,802.802 INFO    ] ================================================
[2026-10-25 10:30:52,818.818 INFO    ] Launching Daemon at Sun Oct 25 10:30:52 IST 2026
[2026-10-25 10:30:52,829.829 INFO    ] ================================================
[2026-10-25 10:30:53,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:30:53
[2026-10-25 10:30:53,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:30:54,221.221 INFO    ] Initializing speech engine...
[2026-10-25 10:30:54,228.228 INFO    ] 2026-10-25 10:30:54
[2026-10-25 10:30:54,526.526 INFO    ] 2026-10-25 10:30:54
[2026-10-25 10:30:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:30:54,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:30:54,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:30:54,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:30:54,901.901 INFO    ] time= 25/10/2026 10:30:54
[2026-10-25 10:30:54,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:30:54,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:30:54,998.998 INFO    ] No existing commands found in stream
[2026-10-25 10:31:00,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:00,036.036 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 10:31:00,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:31:00,473.473 INFO    ] Checking for system updates...
[2026-10-25 10:31:00,509.509 INFO    ] 200
[2026-10-25 10:31:00,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:00,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:00,566.566 INFO    ] No update needed
[2026-10-25 10:31:00,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 10:31:00,602.602 INFO    ] 200
[2026-10-25 10:31:00,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:00,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:31:00,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:00,714.714 INFO    ] No camera update needed
[2026-10-25 10:31:00,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:31:00,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:31:00,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:31:00,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:31:02,770.770 INFO    ] ================================================
[2026-10-25 10:31:02,785.785 INFO    ] Launching Daemon at Sun Oct 25 10:31:02 IST 2026
[2026-10-25 10:31:02,796.796 INFO    ] ================================================
[2026-10-25 10:31:03,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:31:03
[2026-10-25 10:31:04,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:31:04,288.288 INFO    ] Initializing speech engine...
[2026-10-25 10:31:04,302.302 INFO    ] 2026-10-25 10:31:04
[2026-10-25 10:31:04,599.599 INFO    ] 2026-10-25 10:31:04
[2026-10-25 10:31:04,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:31:06,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:31:06,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:31:06,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:31:06,870.870 INFO    ] time= 25/10/2026 10:31:06
[2026-10-25 10:31:06,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:31:06,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:31:06,950.950 INFO    ] No existing commands found in stream
[2026-10-25 10:31:11,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:11,967.967 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 10:31:14,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:31:14,128.128 INFO    ] Checking for system updates...
[2026-10-25 10:31:14,165.165 INFO    ] 200
[2026-10-25 10:31:14,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:14,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:14,224.224 INFO    ] No update needed
[2026-10-25 10:31:14,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 10:31:14,264.264 INFO    ] 200
[2026-10-25 10:31:14,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:14,307.307 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:31:14,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:14,356.356 INFO    ] No camera update needed
[2026-10-25 10:31:14,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:31:14,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:31:14,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:31:14,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:31:16,411.411 INFO    ] ================================================
[2026-10-25 10:31:16,426.426 INFO    ] Launching Daemon at Sun Oct 25 10:31:16 IST 2026
[2026-10-25 10:31:16,440.440 INFO    ] ================================================
[2026-10-25 10:31:17,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:31:17
[2026-10-25 10:31:17,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:31:17,873.873 INFO    ] Initializing speech engine...
[2026-10-25 10:31:17,882.882 INFO    ] 2026-10-25 10:31:17
[2026-10-25 10:31:18,130.130 INFO    ] 2026-10-25 10:31:18
[2026-10-25 10:31:18,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:31:18,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:31:18,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:31:18,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:31:18,602.602 INFO    ] time= 25/10/2026 10:31:18
[2026-10-25 10:31:18,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:31:18,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:31:18,750.750 INFO    ] No existing commands found in stream
[2026-10-25 10:31:23,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:23,765.765 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 10:31:24,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:31:24,494.494 INFO    ] Checking for system updates...
[2026-10-25 10:31:24,530.530 INFO    ] 200
[2026-10-25 10:31:24,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:24,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:24,588.588 INFO    ] No update needed
[2026-10-25 10:31:24,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 10:31:24,625.625 INFO    ] 200
[2026-10-25 10:31:24,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:24,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:31:24,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:24,716.716 INFO    ] No camera update needed
[2026-10-25 10:31:24,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:31:24,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:31:24,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:31:24,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:31:26,773.773 INFO    ] ================================================
[2026-10-25 10:31:26,788.788 INFO    ] Launching Daemon at Sun Oct 25 10:31:26 IST 2026
[2026-10-25 10:31:26,799.799 INFO    ] ================================================
[2026-10-25 10:31:27,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:31:27
[2026-10-25 10:31:27,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:31:28,222.222 INFO    ] Initializing speech engine...
[2026-10-25 10:31:28,231.231 INFO    ] 2026-10-25 10:31:28
[2026-10-25 10:31:28,483.483 INFO    ] 2026-10-25 10:31:28
[2026-10-25 10:31:28,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:31:28,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:31:28,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:31:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:31:28,849.849 INFO    ] time= 25/10/2026 10:31:28
[2026-10-25 10:31:28,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:31:28,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:31:28,931.931 INFO    ] No existing commands found in stream
[2026-10-25 10:31:33,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:33,969.969 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 10:31:37,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:31:37,749.749 INFO    ] Checking for system updates...
[2026-10-25 10:31:37,785.785 INFO    ] 200
[2026-10-25 10:31:37,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:37,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:37,843.843 INFO    ] No update needed
[2026-10-25 10:31:37,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 10:31:37,879.879 INFO    ] 200
[2026-10-25 10:31:37,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:37,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:31:38,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:31:38,106.106 INFO    ] No camera update needed
[2026-10-25 10:31:38,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:31:38,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:31:38,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:31:38,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:31:40,161.161 INFO    ] ================================================
[2026-10-25 10:31:40,176.176 INFO    ] Launching Daemon at Sun Oct 25 10:31:40 IST 2026
[2026-10-25 10:31:40,186.186 INFO    ] ================================================
[2026-10-25 10:31:40,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:31:40
[2026-10-25 10:31:41,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:31:41,648.648 INFO    ] Initializing speech engine...
[2026-10-25 10:31:41,657.657 INFO    ] 2026-10-25 10:31:41
[2026-10-25 10:31:41,922.922 INFO    ] 2026-10-25 10:31:41
[2026-10-25 10:31:41,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:31:42,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:31:42,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:31:42,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:31:42,374.374 INFO    ] time= 25/10/2026 10:31:42
[2026-10-25 10:31:42,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:31:42,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:31:42,522.522 INFO    ] No existing commands found in stream
[2026-10-25 10:31:47,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:47,537.537 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 10:31:49,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:31:49,283.283 INFO    ] Checking for system updates...
[2026-10-25 10:31:49,319.319 INFO    ] 200
[2026-10-25 10:31:49,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:49,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:31:49,377.377 INFO    ] No update needed
[2026-10-25 10:31:49,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 10:31:49,414.414 INFO    ] 200
[2026-10-25 10:31:49,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:31:49,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:31:49,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:31:49,506.506 INFO    ] No camera update needed
[2026-10-25 10:31:49,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:31:49,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:31:49,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:31:49,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:31:51,562.562 INFO    ] ================================================
[2026-10-25 10:31:51,578.578 INFO    ] Launching Daemon at Sun Oct 25 10:31:51 IST 2026
[2026-10-25 10:31:51,589.589 INFO    ] ================================================
[2026-10-25 10:31:52,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:31:52
[2026-10-25 10:31:52,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:31:52,987.987 INFO    ] Initializing speech engine...
[2026-10-25 10:31:52,995.995 INFO    ] 2026-10-25 10:31:52
[2026-10-25 10:31:53,284.284 INFO    ] 2026-10-25 10:31:53
[2026-10-25 10:31:53,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:31:53,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:31:53,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:31:53,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:31:53,693.693 INFO    ] time= 25/10/2026 10:31:53
[2026-10-25 10:31:53,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:31:53,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:31:53,780.780 INFO    ] No existing commands found in stream
[2026-10-25 10:31:58,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:31:58,818.818 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 10:32:00,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:32:00,404.404 INFO    ] Checking for system updates...
[2026-10-25 10:32:00,440.440 INFO    ] 200
[2026-10-25 10:32:00,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:00,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:32:00,502.502 INFO    ] No update needed
[2026-10-25 10:32:00,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 10:32:00,538.538 INFO    ] 200
[2026-10-25 10:32:00,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:00,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:32:00,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:32:00,632.632 INFO    ] No camera update needed
[2026-10-25 10:32:00,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:32:00,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:32:00,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:32:00,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:32:02,693.693 INFO    ] ================================================
[2026-10-25 10:32:02,715.715 INFO    ] Launching Daemon at Sun Oct 25 10:32:02 IST 2026
[2026-10-25 10:32:02,726.726 INFO    ] ================================================
[2026-10-25 10:32:03,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:32:03
[2026-10-25 10:32:03,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:32:04,165.165 INFO    ] Initializing speech engine...
[2026-10-25 10:32:04,172.172 INFO    ] 2026-10-25 10:32:04
[2026-10-25 10:32:04,461.461 INFO    ] 2026-10-25 10:32:04
[2026-10-25 10:32:04,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:32:07,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:32:07,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:32:07,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:32:07,738.738 INFO    ] time= 25/10/2026 10:32:07
[2026-10-25 10:32:07,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:32:07,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:32:07,795.795 INFO    ] No existing commands found in stream
[2026-10-25 10:32:12,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:32:12,807.807 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 10:32:13,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:32:13,451.451 INFO    ] Checking for system updates...
[2026-10-25 10:32:13,487.487 INFO    ] 200
[2026-10-25 10:32:13,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:13,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:13,546.546 INFO    ] No update needed
[2026-10-25 10:32:13,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 10:32:13,582.582 INFO    ] 200
[2026-10-25 10:32:13,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:13,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:32:13,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:13,675.675 INFO    ] No camera update needed
[2026-10-25 10:32:13,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:32:13,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:32:13,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:32:13,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:32:15,731.731 INFO    ] ================================================
[2026-10-25 10:32:15,745.745 INFO    ] Launching Daemon at Sun Oct 25 10:32:15 IST 2026
[2026-10-25 10:32:15,756.756 INFO    ] ================================================
[2026-10-25 10:32:16,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:32:16
[2026-10-25 10:32:16,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:32:17,202.202 INFO    ] Initializing speech engine...
[2026-10-25 10:32:17,208.208 INFO    ] 2026-10-25 10:32:17
[2026-10-25 10:32:17,499.499 INFO    ] 2026-10-25 10:32:17
[2026-10-25 10:32:17,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:32:17,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:32:17,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:32:17,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:32:17,883.883 INFO    ] time= 25/10/2026 10:32:17
[2026-10-25 10:32:17,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:32:17,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:32:18,007.007 INFO    ] No existing commands found in stream
[2026-10-25 10:32:23,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:32:23,023.023 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 10:32:26,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:32:26,669.669 INFO    ] Checking for system updates...
[2026-10-25 10:32:26,706.706 INFO    ] 200
[2026-10-25 10:32:26,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:26,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:26,767.767 INFO    ] No update needed
[2026-10-25 10:32:26,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 10:32:26,804.804 INFO    ] 200
[2026-10-25 10:32:26,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:26,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:32:26,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:26,904.904 INFO    ] No camera update needed
[2026-10-25 10:32:26,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:32:26,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:32:26,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:32:26,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:32:28,963.963 INFO    ] ================================================
[2026-10-25 10:32:28,978.978 INFO    ] Launching Daemon at Sun Oct 25 10:32:28 IST 2026
[2026-10-25 10:32:28,989.989 INFO    ] ================================================
[2026-10-25 10:32:29,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:32:29
[2026-10-25 10:32:30,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:32:30,523.523 INFO    ] Initializing speech engine...
[2026-10-25 10:32:30,534.534 INFO    ] 2026-10-25 10:32:30
[2026-10-25 10:32:30,812.812 INFO    ] 2026-10-25 10:32:30
[2026-10-25 10:32:30,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:32:31,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:32:31,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:32:31,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:32:31,349.349 INFO    ] time= 25/10/2026 10:32:31
[2026-10-25 10:32:31,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:32:31,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:32:31,544.544 INFO    ] No existing commands found in stream
[2026-10-25 10:32:36,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:32:36,578.578 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 10:32:39,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:32:39,482.482 INFO    ] Checking for system updates...
[2026-10-25 10:32:39,527.527 INFO    ] 200
[2026-10-25 10:32:39,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:39,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:32:39,596.596 INFO    ] No update needed
[2026-10-25 10:32:39,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 10:32:39,636.636 INFO    ] 200
[2026-10-25 10:32:39,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:39,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:32:39,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:32:39,741.741 INFO    ] No camera update needed
[2026-10-25 10:32:39,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:32:39,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:32:39,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:32:39,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:32:41,795.795 INFO    ] ================================================
[2026-10-25 10:32:41,810.810 INFO    ] Launching Daemon at Sun Oct 25 10:32:41 IST 2026
[2026-10-25 10:32:41,820.820 INFO    ] ================================================
[2026-10-25 10:32:42,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:32:42
[2026-10-25 10:32:42,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:32:43,240.240 INFO    ] Initializing speech engine...
[2026-10-25 10:32:43,254.254 INFO    ] 2026-10-25 10:32:43
[2026-10-25 10:32:43,501.501 INFO    ] 2026-10-25 10:32:43
[2026-10-25 10:32:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:32:43,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:32:43,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:32:43,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:32:43,871.871 INFO    ] time= 25/10/2026 10:32:43
[2026-10-25 10:32:43,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:32:43,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:32:44,054.054 INFO    ] No existing commands found in stream
[2026-10-25 10:32:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:32:49,082.082 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 10:32:52,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:32:52,868.868 INFO    ] Checking for system updates...
[2026-10-25 10:32:52,904.904 INFO    ] 200
[2026-10-25 10:32:52,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:52,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:52,963.963 INFO    ] No update needed
[2026-10-25 10:32:52,966.966 INFO    ] Checking for camera pi updates...
[2026-10-25 10:32:53,000.000 INFO    ] 200
[2026-10-25 10:32:53,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:32:53,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:32:53,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:32:53,223.223 INFO    ] No camera update needed
[2026-10-25 10:32:53,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:32:53,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:32:53,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:32:53,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:32:55,277.277 INFO    ] ================================================
[2026-10-25 10:32:55,292.292 INFO    ] Launching Daemon at Sun Oct 25 10:32:55 IST 2026
[2026-10-25 10:32:55,303.303 INFO    ] ================================================
[2026-10-25 10:32:55,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:32:55
[2026-10-25 10:32:56,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:32:56,726.726 INFO    ] Initializing speech engine...
[2026-10-25 10:32:56,736.736 INFO    ] 2026-10-25 10:32:56
[2026-10-25 10:32:56,980.980 INFO    ] 2026-10-25 10:32:56
[2026-10-25 10:32:57,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:32:57,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:32:57,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:32:57,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:32:57,444.444 INFO    ] time= 25/10/2026 10:32:57
[2026-10-25 10:32:57,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:32:57,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:32:57,600.600 INFO    ] No existing commands found in stream
[2026-10-25 10:33:02,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:33:02,616.616 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 10:33:03,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:33:03,491.491 INFO    ] Checking for system updates...
[2026-10-25 10:33:03,528.528 INFO    ] 200
[2026-10-25 10:33:03,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:03,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:03,591.591 INFO    ] No update needed
[2026-10-25 10:33:03,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 10:33:03,631.631 INFO    ] 200
[2026-10-25 10:33:03,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:03,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:33:03,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:03,723.723 INFO    ] No camera update needed
[2026-10-25 10:33:03,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:33:03,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:33:03,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:33:03,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:33:05,779.779 INFO    ] ================================================
[2026-10-25 10:33:05,794.794 INFO    ] Launching Daemon at Sun Oct 25 10:33:05 IST 2026
[2026-10-25 10:33:05,806.806 INFO    ] ================================================
[2026-10-25 10:33:06,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:33:06
[2026-10-25 10:33:06,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:33:07,211.211 INFO    ] Initializing speech engine...
[2026-10-25 10:33:07,226.226 INFO    ] 2026-10-25 10:33:07
[2026-10-25 10:33:07,491.491 INFO    ] 2026-10-25 10:33:07
[2026-10-25 10:33:07,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:33:09,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:33:09,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:33:09,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:33:09,882.882 INFO    ] time= 25/10/2026 10:33:09
[2026-10-25 10:33:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:33:09,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:33:09,955.955 INFO    ] No existing commands found in stream
[2026-10-25 10:33:14,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:33:14,966.966 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 10:33:18,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:33:18,284.284 INFO    ] Checking for system updates...
[2026-10-25 10:33:18,321.321 INFO    ] 200
[2026-10-25 10:33:18,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:18,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:33:18,387.387 INFO    ] No update needed
[2026-10-25 10:33:18,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 10:33:18,423.423 INFO    ] 200
[2026-10-25 10:33:18,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:18,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:33:18,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:33:18,529.529 INFO    ] No camera update needed
[2026-10-25 10:33:18,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:33:18,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:33:18,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:33:18,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:33:20,585.585 INFO    ] ================================================
[2026-10-25 10:33:20,600.600 INFO    ] Launching Daemon at Sun Oct 25 10:33:20 IST 2026
[2026-10-25 10:33:20,611.611 INFO    ] ================================================
[2026-10-25 10:33:21,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:33:21
[2026-10-25 10:33:21,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:33:22,259.259 INFO    ] Initializing speech engine...
[2026-10-25 10:33:22,266.266 INFO    ] 2026-10-25 10:33:22
[2026-10-25 10:33:22,547.547 INFO    ] 2026-10-25 10:33:22
[2026-10-25 10:33:22,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:33:22,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:33:22,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:33:23,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:33:23,048.048 INFO    ] time= 25/10/2026 10:33:23
[2026-10-25 10:33:23,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:33:23,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:33:23,222.222 INFO    ] No existing commands found in stream
[2026-10-25 10:33:28,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:33:28,236.236 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 10:33:30,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:33:30,412.412 INFO    ] Checking for system updates...
[2026-10-25 10:33:30,449.449 INFO    ] 200
[2026-10-25 10:33:30,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:30,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:30,507.507 INFO    ] No update needed
[2026-10-25 10:33:30,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 10:33:30,542.542 INFO    ] 200
[2026-10-25 10:33:30,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:30,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:33:30,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:30,633.633 INFO    ] No camera update needed
[2026-10-25 10:33:30,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:33:30,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:33:30,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:33:30,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:33:32,693.693 INFO    ] ================================================
[2026-10-25 10:33:32,709.709 INFO    ] Launching Daemon at Sun Oct 25 10:33:32 IST 2026
[2026-10-25 10:33:32,720.720 INFO    ] ================================================
[2026-10-25 10:33:33,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:33:33
[2026-10-25 10:33:33,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:33:34,148.148 INFO    ] Initializing speech engine...
[2026-10-25 10:33:34,156.156 INFO    ] 2026-10-25 10:33:34
[2026-10-25 10:33:34,410.410 INFO    ] 2026-10-25 10:33:34
[2026-10-25 10:33:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:33:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:33:34,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:33:34,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:33:34,867.867 INFO    ] time= 25/10/2026 10:33:34
[2026-10-25 10:33:34,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:33:34,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:33:35,026.026 INFO    ] No existing commands found in stream
[2026-10-25 10:33:40,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:33:40,064.064 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 10:33:41,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:33:41,877.877 INFO    ] Checking for system updates...
[2026-10-25 10:33:41,914.914 INFO    ] 200
[2026-10-25 10:33:41,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:41,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:41,979.979 INFO    ] No update needed
[2026-10-25 10:33:41,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 10:33:42,022.022 INFO    ] 200
[2026-10-25 10:33:42,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:42,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:33:42,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:33:42,131.131 INFO    ] No camera update needed
[2026-10-25 10:33:42,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:33:42,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:33:42,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:33:42,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:33:44,186.186 INFO    ] ================================================
[2026-10-25 10:33:44,202.202 INFO    ] Launching Daemon at Sun Oct 25 10:33:44 IST 2026
[2026-10-25 10:33:44,213.213 INFO    ] ================================================
[2026-10-25 10:33:44,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:33:44
[2026-10-25 10:33:45,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:33:45,852.852 INFO    ] Initializing speech engine...
[2026-10-25 10:33:45,865.865 INFO    ] 2026-10-25 10:33:45
[2026-10-25 10:33:46,144.144 INFO    ] 2026-10-25 10:33:46
[2026-10-25 10:33:46,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:33:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:33:46,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:33:46,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:33:46,517.517 INFO    ] time= 25/10/2026 10:33:46
[2026-10-25 10:33:46,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:33:46,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:33:46,643.643 INFO    ] No existing commands found in stream
[2026-10-25 10:33:51,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:33:51,659.659 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 10:33:53,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:33:53,259.259 INFO    ] Checking for system updates...
[2026-10-25 10:33:53,296.296 INFO    ] 200
[2026-10-25 10:33:53,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:53,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:33:53,363.363 INFO    ] No update needed
[2026-10-25 10:33:53,365.365 INFO    ] Checking for camera pi updates...
[2026-10-25 10:33:53,399.399 INFO    ] 200
[2026-10-25 10:33:53,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:33:53,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:33:53,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:33:53,491.491 INFO    ] No camera update needed
[2026-10-25 10:33:53,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:33:53,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:33:53,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:33:53,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:33:55,546.546 INFO    ] ================================================
[2026-10-25 10:33:55,562.562 INFO    ] Launching Daemon at Sun Oct 25 10:33:55 IST 2026
[2026-10-25 10:33:55,573.573 INFO    ] ================================================
[2026-10-25 10:33:56,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:33:56
[2026-10-25 10:33:56,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:33:56,994.994 INFO    ] Initializing speech engine...
[2026-10-25 10:33:57,003.003 INFO    ] 2026-10-25 10:33:56
[2026-10-25 10:33:57,247.247 INFO    ] 2026-10-25 10:33:57
[2026-10-25 10:33:57,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:33:57,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:33:57,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:33:57,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:33:57,696.696 INFO    ] time= 25/10/2026 10:33:57
[2026-10-25 10:33:57,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:33:57,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:33:57,868.868 INFO    ] No existing commands found in stream
[2026-10-25 10:34:02,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:34:02,886.886 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:34:07,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:34:07,232.232 INFO    ] Checking for system updates...
[2026-10-25 10:34:07,268.268 INFO    ] 200
[2026-10-25 10:34:07,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:07,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:07,326.326 INFO    ] No update needed
[2026-10-25 10:34:07,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 10:34:07,365.365 INFO    ] 200
[2026-10-25 10:34:07,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:07,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:34:07,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:07,466.466 INFO    ] No camera update needed
[2026-10-25 10:34:07,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:34:07,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:34:07,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:34:07,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:34:09,521.521 INFO    ] ================================================
[2026-10-25 10:34:09,537.537 INFO    ] Launching Daemon at Sun Oct 25 10:34:09 IST 2026
[2026-10-25 10:34:09,548.548 INFO    ] ================================================
[2026-10-25 10:34:10,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:34:10
[2026-10-25 10:34:10,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:34:10,969.969 INFO    ] Initializing speech engine...
[2026-10-25 10:34:10,978.978 INFO    ] 2026-10-25 10:34:10
[2026-10-25 10:34:11,226.226 INFO    ] 2026-10-25 10:34:11
[2026-10-25 10:34:11,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:34:11,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:34:11,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:34:11,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:34:11,714.714 INFO    ] time= 25/10/2026 10:34:11
[2026-10-25 10:34:11,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:34:11,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:34:11,865.865 INFO    ] No existing commands found in stream
[2026-10-25 10:34:16,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:34:16,891.891 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 10:34:21,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:34:21,007.007 INFO    ] Checking for system updates...
[2026-10-25 10:34:21,046.046 INFO    ] 200
[2026-10-25 10:34:21,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:21,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:34:21,105.105 INFO    ] No update needed
[2026-10-25 10:34:21,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 10:34:21,145.145 INFO    ] 200
[2026-10-25 10:34:21,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:21,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:34:21,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:34:21,238.238 INFO    ] No camera update needed
[2026-10-25 10:34:21,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:34:21,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:34:21,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:34:21,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:34:23,294.294 INFO    ] ================================================
[2026-10-25 10:34:23,309.309 INFO    ] Launching Daemon at Sun Oct 25 10:34:23 IST 2026
[2026-10-25 10:34:23,320.320 INFO    ] ================================================
[2026-10-25 10:34:23,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:34:23
[2026-10-25 10:34:24,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:34:24,923.923 INFO    ] Initializing speech engine...
[2026-10-25 10:34:24,929.929 INFO    ] 2026-10-25 10:34:24
[2026-10-25 10:34:25,214.214 INFO    ] 2026-10-25 10:34:25
[2026-10-25 10:34:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:34:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:34:25,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:34:25,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:34:25,749.749 INFO    ] time= 25/10/2026 10:34:25
[2026-10-25 10:34:25,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:34:25,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:34:25,900.900 INFO    ] No existing commands found in stream
[2026-10-25 10:34:30,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:34:30,918.918 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 10:34:33,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:34:33,059.059 INFO    ] Checking for system updates...
[2026-10-25 10:34:33,105.105 INFO    ] 200
[2026-10-25 10:34:33,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:33,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:33,179.179 INFO    ] No update needed
[2026-10-25 10:34:33,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 10:34:33,226.226 INFO    ] 200
[2026-10-25 10:34:33,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:33,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:34:33,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:33,331.331 INFO    ] No camera update needed
[2026-10-25 10:34:33,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:34:33,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:34:33,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:34:33,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:34:35,389.389 INFO    ] ================================================
[2026-10-25 10:34:35,405.405 INFO    ] Launching Daemon at Sun Oct 25 10:34:35 IST 2026
[2026-10-25 10:34:35,415.415 INFO    ] ================================================
[2026-10-25 10:34:35,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:34:35
[2026-10-25 10:34:36,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:34:36,837.837 INFO    ] Initializing speech engine...
[2026-10-25 10:34:36,853.853 INFO    ] 2026-10-25 10:34:36
[2026-10-25 10:34:37,122.122 INFO    ] 2026-10-25 10:34:37
[2026-10-25 10:34:37,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:34:37,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:34:37,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:34:37,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:34:37,540.540 INFO    ] time= 25/10/2026 10:34:37
[2026-10-25 10:34:37,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:34:37,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:34:37,694.694 INFO    ] No existing commands found in stream
[2026-10-25 10:34:42,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:34:42,723.723 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 10:34:46,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:34:46,830.830 INFO    ] Checking for system updates...
[2026-10-25 10:34:46,870.870 INFO    ] 200
[2026-10-25 10:34:46,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:46,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:46,934.934 INFO    ] No update needed
[2026-10-25 10:34:46,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 10:34:46,974.974 INFO    ] 200
[2026-10-25 10:34:46,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:47,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:34:47,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:47,074.074 INFO    ] No camera update needed
[2026-10-25 10:34:47,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:34:47,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:34:47,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:34:47,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:34:49,130.130 INFO    ] ================================================
[2026-10-25 10:34:49,145.145 INFO    ] Launching Daemon at Sun Oct 25 10:34:49 IST 2026
[2026-10-25 10:34:49,156.156 INFO    ] ================================================
[2026-10-25 10:34:49,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:34:49
[2026-10-25 10:34:50,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:34:50,565.565 INFO    ] Initializing speech engine...
[2026-10-25 10:34:50,577.577 INFO    ] 2026-10-25 10:34:50
[2026-10-25 10:34:50,860.860 INFO    ] 2026-10-25 10:34:50
[2026-10-25 10:34:50,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:34:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:34:51,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:34:51,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:34:51,275.275 INFO    ] time= 25/10/2026 10:34:51
[2026-10-25 10:34:51,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:34:51,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:34:51,362.362 INFO    ] No existing commands found in stream
[2026-10-25 10:34:56,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:34:56,380.380 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 10:34:57,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:34:57,288.288 INFO    ] Checking for system updates...
[2026-10-25 10:34:57,326.326 INFO    ] 200
[2026-10-25 10:34:57,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:57,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:57,391.391 INFO    ] No update needed
[2026-10-25 10:34:57,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 10:34:57,429.429 INFO    ] 200
[2026-10-25 10:34:57,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:34:57,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:34:57,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:34:57,636.636 INFO    ] No camera update needed
[2026-10-25 10:34:57,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:34:57,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:34:57,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:34:57,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:34:59,692.692 INFO    ] ================================================
[2026-10-25 10:34:59,707.707 INFO    ] Launching Daemon at Sun Oct 25 10:34:59 IST 2026
[2026-10-25 10:34:59,719.719 INFO    ] ================================================
[2026-10-25 10:35:00,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:35:00
[2026-10-25 10:35:00,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:35:01,354.354 INFO    ] Initializing speech engine...
[2026-10-25 10:35:01,358.358 INFO    ] 2026-10-25 10:35:01
[2026-10-25 10:35:01,758.758 INFO    ] 2026-10-25 10:35:01
[2026-10-25 10:35:01,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:35:01,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:35:02,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:35:02,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:35:02,184.184 INFO    ] time= 25/10/2026 10:35:02
[2026-10-25 10:35:02,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:35:02,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:35:02,386.386 INFO    ] No existing commands found in stream
[2026-10-25 10:35:07,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:35:07,398.398 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 10:35:12,819.819 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:35:12,822.822 INFO    ] Checking for system updates...
[2026-10-25 10:35:12,858.858 INFO    ] 200
[2026-10-25 10:35:12,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:12,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:35:12,922.922 INFO    ] No update needed
[2026-10-25 10:35:12,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 10:35:12,961.961 INFO    ] 200
[2026-10-25 10:35:12,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:13,008.008 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:35:13,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:35:13,057.057 INFO    ] No camera update needed
[2026-10-25 10:35:13,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:35:13,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:35:13,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:35:13,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:35:15,112.112 INFO    ] ================================================
[2026-10-25 10:35:15,128.128 INFO    ] Launching Daemon at Sun Oct 25 10:35:15 IST 2026
[2026-10-25 10:35:15,139.139 INFO    ] ================================================
[2026-10-25 10:35:15,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:35:15
[2026-10-25 10:35:16,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:35:16,567.567 INFO    ] Initializing speech engine...
[2026-10-25 10:35:16,574.574 INFO    ] 2026-10-25 10:35:16
[2026-10-25 10:35:16,870.870 INFO    ] 2026-10-25 10:35:16
[2026-10-25 10:35:16,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:35:17,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:35:17,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:35:17,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:35:17,288.288 INFO    ] time= 25/10/2026 10:35:17
[2026-10-25 10:35:17,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:35:17,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:35:17,461.461 INFO    ] No existing commands found in stream
[2026-10-25 10:35:22,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:35:22,484.484 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 10:35:26,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:35:26,353.353 INFO    ] Checking for system updates...
[2026-10-25 10:35:26,389.389 INFO    ] 200
[2026-10-25 10:35:26,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:26,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:35:26,453.453 INFO    ] No update needed
[2026-10-25 10:35:26,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 10:35:26,490.490 INFO    ] 200
[2026-10-25 10:35:26,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:26,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:35:26,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:35:26,586.586 INFO    ] No camera update needed
[2026-10-25 10:35:26,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:35:26,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:35:26,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:35:26,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:35:28,643.643 INFO    ] ================================================
[2026-10-25 10:35:28,658.658 INFO    ] Launching Daemon at Sun Oct 25 10:35:28 IST 2026
[2026-10-25 10:35:28,669.669 INFO    ] ================================================
[2026-10-25 10:35:29,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:35:29
[2026-10-25 10:35:29,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:35:30,089.089 INFO    ] Initializing speech engine...
[2026-10-25 10:35:30,098.098 INFO    ] 2026-10-25 10:35:30
[2026-10-25 10:35:30,354.354 INFO    ] 2026-10-25 10:35:30
[2026-10-25 10:35:30,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:35:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:35:30,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:35:30,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:35:30,741.741 INFO    ] time= 25/10/2026 10:35:30
[2026-10-25 10:35:30,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:35:30,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:35:30,825.825 INFO    ] No existing commands found in stream
[2026-10-25 10:35:35,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:35:35,839.839 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 10:35:38,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:35:38,409.409 INFO    ] Checking for system updates...
[2026-10-25 10:35:38,448.448 INFO    ] 200
[2026-10-25 10:35:38,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:38,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:35:38,513.513 INFO    ] No update needed
[2026-10-25 10:35:38,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 10:35:38,552.552 INFO    ] 200
[2026-10-25 10:35:38,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:38,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:35:38,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:35:38,629.629 INFO    ] No camera update needed
[2026-10-25 10:35:38,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:35:38,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:35:38,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:35:38,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:35:40,686.686 INFO    ] ================================================
[2026-10-25 10:35:40,701.701 INFO    ] Launching Daemon at Sun Oct 25 10:35:40 IST 2026
[2026-10-25 10:35:40,712.712 INFO    ] ================================================
[2026-10-25 10:35:41,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:35:41
[2026-10-25 10:35:42,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:35:42,338.338 INFO    ] Initializing speech engine...
[2026-10-25 10:35:42,353.353 INFO    ] 2026-10-25 10:35:42
[2026-10-25 10:35:42,659.659 INFO    ] 2026-10-25 10:35:42
[2026-10-25 10:35:42,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:35:43,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:35:43,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:35:44,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:35:44,049.049 INFO    ] time= 25/10/2026 10:35:44
[2026-10-25 10:35:44,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:35:44,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:35:44,123.123 INFO    ] No existing commands found in stream
[2026-10-25 10:35:49,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:35:49,142.142 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 10:35:51,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:35:51,451.451 INFO    ] Checking for system updates...
[2026-10-25 10:35:51,489.489 INFO    ] 200
[2026-10-25 10:35:51,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:51,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:35:51,548.548 INFO    ] No update needed
[2026-10-25 10:35:51,551.551 INFO    ] Checking for camera pi updates...
[2026-10-25 10:35:51,585.585 INFO    ] 200
[2026-10-25 10:35:51,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:35:51,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:35:51,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:35:51,688.688 INFO    ] No camera update needed
[2026-10-25 10:35:51,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:35:51,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:35:51,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:35:51,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:35:53,742.742 INFO    ] ================================================
[2026-10-25 10:35:53,757.757 INFO    ] Launching Daemon at Sun Oct 25 10:35:53 IST 2026
[2026-10-25 10:35:53,767.767 INFO    ] ================================================
[2026-10-25 10:35:54,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:35:54
[2026-10-25 10:35:55,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:35:55,386.386 INFO    ] Initializing speech engine...
[2026-10-25 10:35:55,394.394 INFO    ] 2026-10-25 10:35:55
[2026-10-25 10:35:55,680.680 INFO    ] 2026-10-25 10:35:55
[2026-10-25 10:35:55,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:35:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:35:55,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:35:56,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:35:56,217.217 INFO    ] time= 25/10/2026 10:35:56
[2026-10-25 10:35:56,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:35:56,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:35:56,372.372 INFO    ] No existing commands found in stream
[2026-10-25 10:36:01,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:36:01,400.400 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 10:36:04,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:36:04,698.698 INFO    ] Checking for system updates...
[2026-10-25 10:36:04,735.735 INFO    ] 200
[2026-10-25 10:36:04,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:04,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:04,802.802 INFO    ] No update needed
[2026-10-25 10:36:04,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 10:36:04,843.843 INFO    ] 200
[2026-10-25 10:36:04,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:04,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:36:04,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:04,943.943 INFO    ] No camera update needed
[2026-10-25 10:36:04,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:36:04,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:36:04,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:36:04,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:36:07,999.999 INFO    ] ================================================
[2026-10-25 10:36:07,014.014 INFO    ] Launching Daemon at Sun Oct 25 10:36:07 IST 2026
[2026-10-25 10:36:07,025.025 INFO    ] ================================================
[2026-10-25 10:36:07,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:36:07
[2026-10-25 10:36:08,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:36:08,439.439 INFO    ] Initializing speech engine...
[2026-10-25 10:36:08,463.463 INFO    ] 2026-10-25 10:36:08
[2026-10-25 10:36:08,736.736 INFO    ] 2026-10-25 10:36:08
[2026-10-25 10:36:08,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:36:08,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:36:08,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:36:09,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:36:09,152.152 INFO    ] time= 25/10/2026 10:36:09
[2026-10-25 10:36:09,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:36:09,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:36:09,303.303 INFO    ] No existing commands found in stream
[2026-10-25 10:36:14,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:36:14,336.336 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 10:36:17,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:36:17,372.372 INFO    ] Checking for system updates...
[2026-10-25 10:36:17,409.409 INFO    ] 200
[2026-10-25 10:36:17,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:17,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:36:17,469.469 INFO    ] No update needed
[2026-10-25 10:36:17,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 10:36:17,507.507 INFO    ] 200
[2026-10-25 10:36:17,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:17,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:36:17,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:36:17,605.605 INFO    ] No camera update needed
[2026-10-25 10:36:17,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:36:17,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:36:17,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:36:17,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:36:19,662.662 INFO    ] ================================================
[2026-10-25 10:36:19,677.677 INFO    ] Launching Daemon at Sun Oct 25 10:36:19 IST 2026
[2026-10-25 10:36:19,688.688 INFO    ] ================================================
[2026-10-25 10:36:20,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:36:20
[2026-10-25 10:36:20,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:36:21,130.130 INFO    ] Initializing speech engine...
[2026-10-25 10:36:21,137.137 INFO    ] 2026-10-25 10:36:21
[2026-10-25 10:36:21,407.407 INFO    ] 2026-10-25 10:36:21
[2026-10-25 10:36:21,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:36:21,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:36:21,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:36:21,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:36:21,776.776 INFO    ] time= 25/10/2026 10:36:21
[2026-10-25 10:36:21,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:36:21,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:36:21,951.951 INFO    ] No existing commands found in stream
[2026-10-25 10:36:26,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:36:26,984.984 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 10:36:28,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:36:28,049.049 INFO    ] Checking for system updates...
[2026-10-25 10:36:28,090.090 INFO    ] 200
[2026-10-25 10:36:28,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:28,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:36:28,151.151 INFO    ] No update needed
[2026-10-25 10:36:28,154.154 INFO    ] Checking for camera pi updates...
[2026-10-25 10:36:28,192.192 INFO    ] 200
[2026-10-25 10:36:28,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:28,242.242 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:36:28,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:36:28,297.297 INFO    ] No camera update needed
[2026-10-25 10:36:28,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:36:28,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:36:28,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:36:28,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:36:30,355.355 INFO    ] ================================================
[2026-10-25 10:36:30,371.371 INFO    ] Launching Daemon at Sun Oct 25 10:36:30 IST 2026
[2026-10-25 10:36:30,381.381 INFO    ] ================================================
[2026-10-25 10:36:30,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:36:30
[2026-10-25 10:36:31,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:36:31,803.803 INFO    ] Initializing speech engine...
[2026-10-25 10:36:31,834.834 INFO    ] 2026-10-25 10:36:31
[2026-10-25 10:36:32,112.112 INFO    ] 2026-10-25 10:36:32
[2026-10-25 10:36:32,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:36:32,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:36:32,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:36:32,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:36:32,515.515 INFO    ] time= 25/10/2026 10:36:32
[2026-10-25 10:36:32,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:36:32,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:36:32,596.596 INFO    ] No existing commands found in stream
[2026-10-25 10:36:37,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:36:37,624.624 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 10:36:39,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:36:39,401.401 INFO    ] Checking for system updates...
[2026-10-25 10:36:39,438.438 INFO    ] 200
[2026-10-25 10:36:39,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:39,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:39,497.497 INFO    ] No update needed
[2026-10-25 10:36:39,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 10:36:39,534.534 INFO    ] 200
[2026-10-25 10:36:39,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:39,581.581 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:36:39,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:39,644.644 INFO    ] No camera update needed
[2026-10-25 10:36:39,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:36:39,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:36:39,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:36:39,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:36:41,699.699 INFO    ] ================================================
[2026-10-25 10:36:41,715.715 INFO    ] Launching Daemon at Sun Oct 25 10:36:41 IST 2026
[2026-10-25 10:36:41,727.727 INFO    ] ================================================
[2026-10-25 10:36:42,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:36:42
[2026-10-25 10:36:42,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:36:43,181.181 INFO    ] Initializing speech engine...
[2026-10-25 10:36:43,190.190 INFO    ] 2026-10-25 10:36:43
[2026-10-25 10:36:43,438.438 INFO    ] 2026-10-25 10:36:43
[2026-10-25 10:36:43,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:36:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:36:45,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:36:45,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:36:45,530.530 INFO    ] time= 25/10/2026 10:36:45
[2026-10-25 10:36:45,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:36:45,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:36:45,615.615 INFO    ] No existing commands found in stream
[2026-10-25 10:36:50,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:36:50,628.628 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 10:36:53,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:36:53,916.916 INFO    ] Checking for system updates...
[2026-10-25 10:36:53,953.953 INFO    ] 200
[2026-10-25 10:36:53,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:54,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:54,014.014 INFO    ] No update needed
[2026-10-25 10:36:54,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 10:36:54,051.051 INFO    ] 200
[2026-10-25 10:36:54,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:36:54,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:36:54,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:36:54,151.151 INFO    ] No camera update needed
[2026-10-25 10:36:54,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:36:54,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:36:54,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:36:54,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:36:56,206.206 INFO    ] ================================================
[2026-10-25 10:36:56,222.222 INFO    ] Launching Daemon at Sun Oct 25 10:36:56 IST 2026
[2026-10-25 10:36:56,232.232 INFO    ] ================================================
[2026-10-25 10:36:56,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:36:56
[2026-10-25 10:36:57,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:36:57,641.641 INFO    ] Initializing speech engine...
[2026-10-25 10:36:57,649.649 INFO    ] 2026-10-25 10:36:57
[2026-10-25 10:36:57,922.922 INFO    ] 2026-10-25 10:36:57
[2026-10-25 10:36:57,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:36:58,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:36:58,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:36:58,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:36:58,262.262 INFO    ] time= 25/10/2026 10:36:58
[2026-10-25 10:36:58,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:36:58,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:36:58,374.374 INFO    ] No existing commands found in stream
[2026-10-25 10:37:03,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:37:03,386.386 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 10:37:05,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:37:05,627.627 INFO    ] Checking for system updates...
[2026-10-25 10:37:05,663.663 INFO    ] 200
[2026-10-25 10:37:05,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:05,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:37:05,728.728 INFO    ] No update needed
[2026-10-25 10:37:05,731.731 INFO    ] Checking for camera pi updates...
[2026-10-25 10:37:05,765.765 INFO    ] 200
[2026-10-25 10:37:05,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:05,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:37:05,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:37:05,861.861 INFO    ] No camera update needed
[2026-10-25 10:37:05,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:37:05,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:37:05,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:37:05,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:37:07,917.917 INFO    ] ================================================
[2026-10-25 10:37:07,933.933 INFO    ] Launching Daemon at Sun Oct 25 10:37:07 IST 2026
[2026-10-25 10:37:07,945.945 INFO    ] ================================================
[2026-10-25 10:37:08,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:37:08
[2026-10-25 10:37:09,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:37:09,355.355 INFO    ] Initializing speech engine...
[2026-10-25 10:37:09,380.380 INFO    ] 2026-10-25 10:37:09
[2026-10-25 10:37:09,649.649 INFO    ] 2026-10-25 10:37:09
[2026-10-25 10:37:09,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:37:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:37:09,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:37:10,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:37:10,020.020 INFO    ] time= 25/10/2026 10:37:10
[2026-10-25 10:37:10,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:37:10,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:37:10,143.143 INFO    ] No existing commands found in stream
[2026-10-25 10:37:15,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:37:15,158.158 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 10:37:16,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:37:16,817.817 INFO    ] Checking for system updates...
[2026-10-25 10:37:16,853.853 INFO    ] 200
[2026-10-25 10:37:16,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:16,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:16,912.912 INFO    ] No update needed
[2026-10-25 10:37:16,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 10:37:16,951.951 INFO    ] 200
[2026-10-25 10:37:16,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:16,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:37:17,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:17,043.043 INFO    ] No camera update needed
[2026-10-25 10:37:17,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:37:17,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:37:17,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:37:17,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:37:19,099.099 INFO    ] ================================================
[2026-10-25 10:37:19,115.115 INFO    ] Launching Daemon at Sun Oct 25 10:37:19 IST 2026
[2026-10-25 10:37:19,126.126 INFO    ] ================================================
[2026-10-25 10:37:19,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:37:19
[2026-10-25 10:37:20,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:37:20,537.537 INFO    ] Initializing speech engine...
[2026-10-25 10:37:20,546.546 INFO    ] 2026-10-25 10:37:20
[2026-10-25 10:37:20,839.839 INFO    ] 2026-10-25 10:37:20
[2026-10-25 10:37:20,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:37:21,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:37:21,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:37:21,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:37:21,231.231 INFO    ] time= 25/10/2026 10:37:21
[2026-10-25 10:37:21,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:37:21,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:37:21,363.363 INFO    ] No existing commands found in stream
[2026-10-25 10:37:26,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:37:26,378.378 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 10:37:26,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:37:26,928.928 INFO    ] Checking for system updates...
[2026-10-25 10:37:26,970.970 INFO    ] 200
[2026-10-25 10:37:26,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:27,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:37:27,031.031 INFO    ] No update needed
[2026-10-25 10:37:27,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 10:37:27,071.071 INFO    ] 200
[2026-10-25 10:37:27,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:27,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:37:27,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:37:27,165.165 INFO    ] No camera update needed
[2026-10-25 10:37:27,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:37:27,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:37:27,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:37:27,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:37:29,223.223 INFO    ] ================================================
[2026-10-25 10:37:29,239.239 INFO    ] Launching Daemon at Sun Oct 25 10:37:29 IST 2026
[2026-10-25 10:37:29,250.250 INFO    ] ================================================
[2026-10-25 10:37:29,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:37:29
[2026-10-25 10:37:30,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:37:30,870.870 INFO    ] Initializing speech engine...
[2026-10-25 10:37:30,883.883 INFO    ] 2026-10-25 10:37:30
[2026-10-25 10:37:31,168.168 INFO    ] 2026-10-25 10:37:31
[2026-10-25 10:37:31,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:37:31,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:37:31,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:37:31,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:37:31,669.669 INFO    ] time= 25/10/2026 10:37:31
[2026-10-25 10:37:31,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:37:31,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:37:31,864.864 INFO    ] No existing commands found in stream
[2026-10-25 10:37:36,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:37:36,899.899 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 10:37:40,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:37:40,273.273 INFO    ] Checking for system updates...
[2026-10-25 10:37:40,313.313 INFO    ] 200
[2026-10-25 10:37:40,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:40,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:40,371.371 INFO    ] No update needed
[2026-10-25 10:37:40,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 10:37:40,407.407 INFO    ] 200
[2026-10-25 10:37:40,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:40,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:37:40,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:40,501.501 INFO    ] No camera update needed
[2026-10-25 10:37:40,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:37:40,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:37:40,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:37:40,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:37:42,559.559 INFO    ] ================================================
[2026-10-25 10:37:42,575.575 INFO    ] Launching Daemon at Sun Oct 25 10:37:42 IST 2026
[2026-10-25 10:37:42,587.587 INFO    ] ================================================
[2026-10-25 10:37:43,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:37:43
[2026-10-25 10:37:43,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:37:43,984.984 INFO    ] Initializing speech engine...
[2026-10-25 10:37:43,989.989 INFO    ] 2026-10-25 10:37:43
[2026-10-25 10:37:44,290.290 INFO    ] 2026-10-25 10:37:44
[2026-10-25 10:37:44,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:37:46,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:37:46,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:37:46,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:37:46,932.932 INFO    ] time= 25/10/2026 10:37:46
[2026-10-25 10:37:46,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:37:46,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:37:47,011.011 INFO    ] No existing commands found in stream
[2026-10-25 10:37:52,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:37:52,026.026 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 10:37:52,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:37:52,698.698 INFO    ] Checking for system updates...
[2026-10-25 10:37:52,734.734 INFO    ] 200
[2026-10-25 10:37:52,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:52,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:52,799.799 INFO    ] No update needed
[2026-10-25 10:37:52,801.801 INFO    ] Checking for camera pi updates...
[2026-10-25 10:37:52,834.834 INFO    ] 200
[2026-10-25 10:37:52,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:37:52,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:37:52,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:37:52,927.927 INFO    ] No camera update needed
[2026-10-25 10:37:52,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:37:52,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:37:52,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:37:52,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:37:54,983.983 INFO    ] ================================================
[2026-10-25 10:37:55,998.998 INFO    ] Launching Daemon at Sun Oct 25 10:37:54 IST 2026
[2026-10-25 10:37:55,009.009 INFO    ] ================================================
[2026-10-25 10:37:55,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:37:55
[2026-10-25 10:37:56,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:37:56,455.455 INFO    ] Initializing speech engine...
[2026-10-25 10:37:56,464.464 INFO    ] 2026-10-25 10:37:56
[2026-10-25 10:37:56,761.761 INFO    ] 2026-10-25 10:37:56
[2026-10-25 10:37:56,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:37:57,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:37:57,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:37:57,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:37:57,262.262 INFO    ] time= 25/10/2026 10:37:57
[2026-10-25 10:37:57,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:37:57,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:37:57,434.434 INFO    ] No existing commands found in stream
[2026-10-25 10:38:02,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:38:02,447.447 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 10:38:06,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:38:06,217.217 INFO    ] Checking for system updates...
[2026-10-25 10:38:06,253.253 INFO    ] 200
[2026-10-25 10:38:06,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:06,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:38:06,311.311 INFO    ] No update needed
[2026-10-25 10:38:06,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 10:38:06,347.347 INFO    ] 200
[2026-10-25 10:38:06,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:06,391.391 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:38:06,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:38:06,440.440 INFO    ] No camera update needed
[2026-10-25 10:38:06,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:38:06,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:38:06,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:38:06,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:38:08,496.496 INFO    ] ================================================
[2026-10-25 10:38:08,511.511 INFO    ] Launching Daemon at Sun Oct 25 10:38:08 IST 2026
[2026-10-25 10:38:08,522.522 INFO    ] ================================================
[2026-10-25 10:38:09,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:38:09
[2026-10-25 10:38:09,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:38:10,095.095 INFO    ] Initializing speech engine...
[2026-10-25 10:38:10,104.104 INFO    ] 2026-10-25 10:38:10
[2026-10-25 10:38:10,384.384 INFO    ] 2026-10-25 10:38:10
[2026-10-25 10:38:10,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:38:10,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:38:10,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:38:10,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:38:10,813.813 INFO    ] time= 25/10/2026 10:38:10
[2026-10-25 10:38:10,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:38:10,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:38:11,009.009 INFO    ] No existing commands found in stream
[2026-10-25 10:38:16,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:38:16,024.024 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 10:38:18,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:38:18,210.210 INFO    ] Checking for system updates...
[2026-10-25 10:38:18,247.247 INFO    ] 200
[2026-10-25 10:38:18,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:18,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:18,306.306 INFO    ] No update needed
[2026-10-25 10:38:18,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 10:38:18,343.343 INFO    ] 200
[2026-10-25 10:38:18,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:18,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:38:18,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:18,437.437 INFO    ] No camera update needed
[2026-10-25 10:38:18,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:38:18,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:38:18,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:38:18,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:38:20,491.491 INFO    ] ================================================
[2026-10-25 10:38:20,507.507 INFO    ] Launching Daemon at Sun Oct 25 10:38:20 IST 2026
[2026-10-25 10:38:20,517.517 INFO    ] ================================================
[2026-10-25 10:38:21,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:38:21
[2026-10-25 10:38:21,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:38:21,955.955 INFO    ] Initializing speech engine...
[2026-10-25 10:38:21,961.961 INFO    ] 2026-10-25 10:38:21
[2026-10-25 10:38:22,208.208 INFO    ] 2026-10-25 10:38:22
[2026-10-25 10:38:22,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:38:22,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:38:22,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:38:22,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:38:22,576.576 INFO    ] time= 25/10/2026 10:38:22
[2026-10-25 10:38:22,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:38:22,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:38:22,740.740 INFO    ] No existing commands found in stream
[2026-10-25 10:38:27,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:38:27,773.773 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 10:38:28,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:38:28,552.552 INFO    ] Checking for system updates...
[2026-10-25 10:38:28,593.593 INFO    ] 200
[2026-10-25 10:38:28,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:28,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:38:28,652.652 INFO    ] No update needed
[2026-10-25 10:38:28,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 10:38:28,692.692 INFO    ] 200
[2026-10-25 10:38:28,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:28,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:38:28,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:38:28,790.790 INFO    ] No camera update needed
[2026-10-25 10:38:28,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:38:28,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:38:28,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:38:28,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:38:30,847.847 INFO    ] ================================================
[2026-10-25 10:38:30,863.863 INFO    ] Launching Daemon at Sun Oct 25 10:38:30 IST 2026
[2026-10-25 10:38:30,873.873 INFO    ] ================================================
[2026-10-25 10:38:31,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:38:31
[2026-10-25 10:38:32,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:38:32,358.358 INFO    ] Initializing speech engine...
[2026-10-25 10:38:32,373.373 INFO    ] 2026-10-25 10:38:32
[2026-10-25 10:38:32,668.668 INFO    ] 2026-10-25 10:38:32
[2026-10-25 10:38:32,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:38:32,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:38:32,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:38:33,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:38:33,132.132 INFO    ] time= 25/10/2026 10:38:33
[2026-10-25 10:38:33,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:38:33,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:38:33,315.315 INFO    ] No existing commands found in stream
[2026-10-25 10:38:38,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:38:38,330.330 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 10:38:40,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:38:40,144.144 INFO    ] Checking for system updates...
[2026-10-25 10:38:40,183.183 INFO    ] 200
[2026-10-25 10:38:40,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:40,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:40,243.243 INFO    ] No update needed
[2026-10-25 10:38:40,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 10:38:40,281.281 INFO    ] 200
[2026-10-25 10:38:40,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:40,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:38:40,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:40,385.385 INFO    ] No camera update needed
[2026-10-25 10:38:40,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:38:40,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:38:40,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:38:40,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:38:42,442.442 INFO    ] ================================================
[2026-10-25 10:38:42,458.458 INFO    ] Launching Daemon at Sun Oct 25 10:38:42 IST 2026
[2026-10-25 10:38:42,469.469 INFO    ] ================================================
[2026-10-25 10:38:43,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:38:43
[2026-10-25 10:38:43,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:38:43,990.990 INFO    ] Initializing speech engine...
[2026-10-25 10:38:43,997.997 INFO    ] 2026-10-25 10:38:43
[2026-10-25 10:38:44,257.257 INFO    ] 2026-10-25 10:38:44
[2026-10-25 10:38:44,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:38:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:38:44,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:38:44,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:38:44,726.726 INFO    ] time= 25/10/2026 10:38:44
[2026-10-25 10:38:44,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:38:44,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:38:44,865.865 INFO    ] No existing commands found in stream
[2026-10-25 10:38:49,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:38:49,880.880 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 10:38:53,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:38:53,498.498 INFO    ] Checking for system updates...
[2026-10-25 10:38:53,535.535 INFO    ] 200
[2026-10-25 10:38:53,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:53,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:53,594.594 INFO    ] No update needed
[2026-10-25 10:38:53,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 10:38:53,631.631 INFO    ] 200
[2026-10-25 10:38:53,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:38:53,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:38:53,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:38:53,724.724 INFO    ] No camera update needed
[2026-10-25 10:38:53,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:38:53,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:38:53,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:38:53,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:38:55,782.782 INFO    ] ================================================
[2026-10-25 10:38:55,798.798 INFO    ] Launching Daemon at Sun Oct 25 10:38:55 IST 2026
[2026-10-25 10:38:55,808.808 INFO    ] ================================================
[2026-10-25 10:38:56,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:38:56
[2026-10-25 10:38:56,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:38:57,259.259 INFO    ] Initializing speech engine...
[2026-10-25 10:38:57,265.265 INFO    ] 2026-10-25 10:38:57
[2026-10-25 10:38:57,518.518 INFO    ] 2026-10-25 10:38:57
[2026-10-25 10:38:57,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:38:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:38:57,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:38:57,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:38:57,988.988 INFO    ] time= 25/10/2026 10:38:57
[2026-10-25 10:38:58,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:38:58,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:38:58,130.130 INFO    ] No existing commands found in stream
[2026-10-25 10:39:03,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:39:03,146.146 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 10:39:05,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:39:05,610.610 INFO    ] Checking for system updates...
[2026-10-25 10:39:05,646.646 INFO    ] 200
[2026-10-25 10:39:05,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:05,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:05,705.705 INFO    ] No update needed
[2026-10-25 10:39:05,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 10:39:05,742.742 INFO    ] 200
[2026-10-25 10:39:05,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:05,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:39:05,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:05,937.937 INFO    ] No camera update needed
[2026-10-25 10:39:05,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:39:05,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:39:05,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:39:05,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:39:08,995.995 INFO    ] ================================================
[2026-10-25 10:39:08,010.010 INFO    ] Launching Daemon at Sun Oct 25 10:39:08 IST 2026
[2026-10-25 10:39:08,021.021 INFO    ] ================================================
[2026-10-25 10:39:08,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:39:08
[2026-10-25 10:39:09,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:39:09,569.569 INFO    ] Initializing speech engine...
[2026-10-25 10:39:09,582.582 INFO    ] 2026-10-25 10:39:09
[2026-10-25 10:39:09,843.843 INFO    ] 2026-10-25 10:39:09
[2026-10-25 10:39:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:39:10,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:39:10,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:39:10,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:39:10,209.209 INFO    ] time= 25/10/2026 10:39:10
[2026-10-25 10:39:10,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:39:10,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:39:10,395.395 INFO    ] No existing commands found in stream
[2026-10-25 10:39:15,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:39:15,419.419 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 10:39:19,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:39:19,763.763 INFO    ] Checking for system updates...
[2026-10-25 10:39:19,800.800 INFO    ] 200
[2026-10-25 10:39:19,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:19,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:19,858.858 INFO    ] No update needed
[2026-10-25 10:39:19,861.861 INFO    ] Checking for camera pi updates...
[2026-10-25 10:39:19,895.895 INFO    ] 200
[2026-10-25 10:39:19,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:19,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:39:19,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:20,001.001 INFO    ] No camera update needed
[2026-10-25 10:39:20,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:39:20,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:39:20,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:39:20,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:39:22,058.058 INFO    ] ================================================
[2026-10-25 10:39:22,074.074 INFO    ] Launching Daemon at Sun Oct 25 10:39:22 IST 2026
[2026-10-25 10:39:22,085.085 INFO    ] ================================================
[2026-10-25 10:39:22,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:39:22
[2026-10-25 10:39:23,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:39:23,494.494 INFO    ] Initializing speech engine...
[2026-10-25 10:39:23,507.507 INFO    ] 2026-10-25 10:39:23
[2026-10-25 10:39:23,774.774 INFO    ] 2026-10-25 10:39:23
[2026-10-25 10:39:23,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:39:24,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:39:24,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:39:24,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:39:24,195.195 INFO    ] time= 25/10/2026 10:39:24
[2026-10-25 10:39:24,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:39:24,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:39:24,361.361 INFO    ] No existing commands found in stream
[2026-10-25 10:39:29,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:39:29,376.376 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 10:39:31,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:39:31,066.066 INFO    ] Checking for system updates...
[2026-10-25 10:39:31,102.102 INFO    ] 200
[2026-10-25 10:39:31,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:31,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:31,160.160 INFO    ] No update needed
[2026-10-25 10:39:31,163.163 INFO    ] Checking for camera pi updates...
[2026-10-25 10:39:31,197.197 INFO    ] 200
[2026-10-25 10:39:31,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:31,248.248 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:39:31,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:31,298.298 INFO    ] No camera update needed
[2026-10-25 10:39:31,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:39:31,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:39:31,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:39:31,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:39:33,354.354 INFO    ] ================================================
[2026-10-25 10:39:33,368.368 INFO    ] Launching Daemon at Sun Oct 25 10:39:33 IST 2026
[2026-10-25 10:39:33,380.380 INFO    ] ================================================
[2026-10-25 10:39:33,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:39:33
[2026-10-25 10:39:34,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:39:34,784.784 INFO    ] Initializing speech engine...
[2026-10-25 10:39:34,806.806 INFO    ] 2026-10-25 10:39:34
[2026-10-25 10:39:35,080.080 INFO    ] 2026-10-25 10:39:35
[2026-10-25 10:39:35,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:39:35,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:39:35,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:39:35,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:39:35,948.948 INFO    ] time= 25/10/2026 10:39:35
[2026-10-25 10:39:35,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:39:36,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:39:36,119.119 INFO    ] No existing commands found in stream
[2026-10-25 10:39:41,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:39:41,142.142 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 10:39:42,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:39:42,474.474 INFO    ] Checking for system updates...
[2026-10-25 10:39:42,513.513 INFO    ] 200
[2026-10-25 10:39:42,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:42,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:42,576.576 INFO    ] No update needed
[2026-10-25 10:39:42,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 10:39:42,612.612 INFO    ] 200
[2026-10-25 10:39:42,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:42,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:39:42,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:39:42,702.702 INFO    ] No camera update needed
[2026-10-25 10:39:42,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:39:42,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:39:42,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:39:42,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:39:44,758.758 INFO    ] ================================================
[2026-10-25 10:39:44,773.773 INFO    ] Launching Daemon at Sun Oct 25 10:39:44 IST 2026
[2026-10-25 10:39:44,784.784 INFO    ] ================================================
[2026-10-25 10:39:45,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:39:45
[2026-10-25 10:39:45,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:39:46,188.188 INFO    ] Initializing speech engine...
[2026-10-25 10:39:46,194.194 INFO    ] 2026-10-25 10:39:46
[2026-10-25 10:39:46,480.480 INFO    ] 2026-10-25 10:39:46
[2026-10-25 10:39:46,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:39:49,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:39:49,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:39:50,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:39:50,317.317 INFO    ] time= 25/10/2026 10:39:50
[2026-10-25 10:39:50,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:39:50,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:39:50,372.372 INFO    ] No existing commands found in stream
[2026-10-25 10:39:55,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:39:55,384.384 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 10:39:59,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:39:59,022.022 INFO    ] Checking for system updates...
[2026-10-25 10:39:59,061.061 INFO    ] 200
[2026-10-25 10:39:59,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:59,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:39:59,119.119 INFO    ] No update needed
[2026-10-25 10:39:59,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 10:39:59,156.156 INFO    ] 200
[2026-10-25 10:39:59,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:39:59,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:39:59,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:39:59,252.252 INFO    ] No camera update needed
[2026-10-25 10:39:59,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:39:59,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:39:59,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:39:59,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:40:01,306.306 INFO    ] ================================================
[2026-10-25 10:40:01,322.322 INFO    ] Launching Daemon at Sun Oct 25 10:40:01 IST 2026
[2026-10-25 10:40:01,333.333 INFO    ] ================================================
[2026-10-25 10:40:02,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:40:02
[2026-10-25 10:40:03,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:40:03,622.622 INFO    ] Initializing speech engine...
[2026-10-25 10:40:03,635.635 INFO    ] 2026-10-25 10:40:03
[2026-10-25 10:40:03,903.903 INFO    ] 2026-10-25 10:40:03
[2026-10-25 10:40:03,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:40:04,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:40:04,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:40:04,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:40:04,274.274 INFO    ] time= 25/10/2026 10:40:04
[2026-10-25 10:40:04,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:40:04,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:40:04,354.354 INFO    ] No existing commands found in stream
[2026-10-25 10:40:09,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:40:09,367.367 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 10:40:11,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:40:11,564.564 INFO    ] Checking for system updates...
[2026-10-25 10:40:11,600.600 INFO    ] 200
[2026-10-25 10:40:11,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:11,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:11,659.659 INFO    ] No update needed
[2026-10-25 10:40:11,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 10:40:11,699.699 INFO    ] 200
[2026-10-25 10:40:11,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:11,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:40:11,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:11,795.795 INFO    ] No camera update needed
[2026-10-25 10:40:11,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:40:11,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:40:11,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:40:11,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:40:13,852.852 INFO    ] ================================================
[2026-10-25 10:40:13,868.868 INFO    ] Launching Daemon at Sun Oct 25 10:40:13 IST 2026
[2026-10-25 10:40:13,879.879 INFO    ] ================================================
[2026-10-25 10:40:14,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:40:14
[2026-10-25 10:40:15,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:40:15,306.306 INFO    ] Initializing speech engine...
[2026-10-25 10:40:15,315.315 INFO    ] 2026-10-25 10:40:15
[2026-10-25 10:40:15,571.571 INFO    ] 2026-10-25 10:40:15
[2026-10-25 10:40:15,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:40:15,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:40:15,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:40:15,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:40:16,023.023 INFO    ] time= 25/10/2026 10:40:15
[2026-10-25 10:40:16,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:40:16,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:40:16,175.175 INFO    ] No existing commands found in stream
[2026-10-25 10:40:21,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:40:21,189.189 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 10:40:23,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:40:23,735.735 INFO    ] Checking for system updates...
[2026-10-25 10:40:23,777.777 INFO    ] 200
[2026-10-25 10:40:23,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:23,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:23,836.836 INFO    ] No update needed
[2026-10-25 10:40:23,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 10:40:23,878.878 INFO    ] 200
[2026-10-25 10:40:23,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:23,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:40:23,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:23,978.978 INFO    ] No camera update needed
[2026-10-25 10:40:23,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:40:23,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:40:23,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:40:23,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:40:26,036.036 INFO    ] ================================================
[2026-10-25 10:40:26,052.052 INFO    ] Launching Daemon at Sun Oct 25 10:40:26 IST 2026
[2026-10-25 10:40:26,063.063 INFO    ] ================================================
[2026-10-25 10:40:26,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:40:26
[2026-10-25 10:40:27,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:40:27,476.476 INFO    ] Initializing speech engine...
[2026-10-25 10:40:27,485.485 INFO    ] 2026-10-25 10:40:27
[2026-10-25 10:40:27,779.779 INFO    ] 2026-10-25 10:40:27
[2026-10-25 10:40:27,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:40:28,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:40:28,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:40:28,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:40:28,153.153 INFO    ] time= 25/10/2026 10:40:28
[2026-10-25 10:40:28,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:40:28,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:40:28,318.318 INFO    ] No existing commands found in stream
[2026-10-25 10:40:33,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:40:33,352.352 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 10:40:37,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:40:37,049.049 INFO    ] Checking for system updates...
[2026-10-25 10:40:37,086.086 INFO    ] 200
[2026-10-25 10:40:37,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:37,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:37,144.144 INFO    ] No update needed
[2026-10-25 10:40:37,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 10:40:37,181.181 INFO    ] 200
[2026-10-25 10:40:37,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:37,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:40:37,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:37,340.340 INFO    ] No camera update needed
[2026-10-25 10:40:37,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:40:37,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:40:37,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:40:37,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:40:39,397.397 INFO    ] ================================================
[2026-10-25 10:40:39,414.414 INFO    ] Launching Daemon at Sun Oct 25 10:40:39 IST 2026
[2026-10-25 10:40:39,425.425 INFO    ] ================================================
[2026-10-25 10:40:40,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:40:40
[2026-10-25 10:40:40,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:40:41,061.061 INFO    ] Initializing speech engine...
[2026-10-25 10:40:41,075.075 INFO    ] 2026-10-25 10:40:41
[2026-10-25 10:40:41,361.361 INFO    ] 2026-10-25 10:40:41
[2026-10-25 10:40:41,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:40:41,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:40:41,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:40:41,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:40:41,893.893 INFO    ] time= 25/10/2026 10:40:41
[2026-10-25 10:40:41,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:40:41,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:40:42,049.049 INFO    ] No existing commands found in stream
[2026-10-25 10:40:47,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:40:47,071.071 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 10:40:47,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:40:47,581.581 INFO    ] Checking for system updates...
[2026-10-25 10:40:47,617.617 INFO    ] 200
[2026-10-25 10:40:47,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:47,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:47,682.682 INFO    ] No update needed
[2026-10-25 10:40:47,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 10:40:47,718.718 INFO    ] 200
[2026-10-25 10:40:47,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:40:47,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:40:47,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:40:47,819.819 INFO    ] No camera update needed
[2026-10-25 10:40:47,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:40:47,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:40:47,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:40:47,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:40:49,875.875 INFO    ] ================================================
[2026-10-25 10:40:49,890.890 INFO    ] Launching Daemon at Sun Oct 25 10:40:49 IST 2026
[2026-10-25 10:40:49,900.900 INFO    ] ================================================
[2026-10-25 10:40:50,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:40:50
[2026-10-25 10:40:51,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:40:51,521.521 INFO    ] Initializing speech engine...
[2026-10-25 10:40:51,535.535 INFO    ] 2026-10-25 10:40:51
[2026-10-25 10:40:51,841.841 INFO    ] 2026-10-25 10:40:51
[2026-10-25 10:40:51,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:40:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:40:52,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:40:52,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:40:52,349.349 INFO    ] time= 25/10/2026 10:40:52
[2026-10-25 10:40:52,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:40:52,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:40:52,501.501 INFO    ] No existing commands found in stream
[2026-10-25 10:40:57,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:40:57,515.515 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 10:41:00,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:41:00,318.318 INFO    ] Checking for system updates...
[2026-10-25 10:41:00,362.362 INFO    ] 200
[2026-10-25 10:41:00,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:00,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:41:00,429.429 INFO    ] No update needed
[2026-10-25 10:41:00,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 10:41:00,466.466 INFO    ] 200
[2026-10-25 10:41:00,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:00,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:41:00,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:41:00,563.563 INFO    ] No camera update needed
[2026-10-25 10:41:00,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:41:00,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:41:00,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:41:00,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:41:02,625.625 INFO    ] ================================================
[2026-10-25 10:41:02,649.649 INFO    ] Launching Daemon at Sun Oct 25 10:41:02 IST 2026
[2026-10-25 10:41:02,667.667 INFO    ] ================================================
[2026-10-25 10:41:03,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:41:03
[2026-10-25 10:41:03,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:41:04,109.109 INFO    ] Initializing speech engine...
[2026-10-25 10:41:04,118.118 INFO    ] 2026-10-25 10:41:04
[2026-10-25 10:41:04,412.412 INFO    ] 2026-10-25 10:41:04
[2026-10-25 10:41:04,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:41:04,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:41:04,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:41:04,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:41:04,834.834 INFO    ] time= 25/10/2026 10:41:04
[2026-10-25 10:41:04,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:41:04,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:41:04,919.919 INFO    ] No existing commands found in stream
[2026-10-25 10:41:09,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:41:09,940.940 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 10:41:12,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:41:12,127.127 INFO    ] Checking for system updates...
[2026-10-25 10:41:12,167.167 INFO    ] 200
[2026-10-25 10:41:12,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:12,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:12,232.232 INFO    ] No update needed
[2026-10-25 10:41:12,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 10:41:12,268.268 INFO    ] 200
[2026-10-25 10:41:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:12,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:41:12,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:12,477.477 INFO    ] No camera update needed
[2026-10-25 10:41:12,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:41:12,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:41:12,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:41:12,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:41:14,539.539 INFO    ] ================================================
[2026-10-25 10:41:14,554.554 INFO    ] Launching Daemon at Sun Oct 25 10:41:14 IST 2026
[2026-10-25 10:41:14,565.565 INFO    ] ================================================
[2026-10-25 10:41:15,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:41:15
[2026-10-25 10:41:15,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:41:16,198.198 INFO    ] Initializing speech engine...
[2026-10-25 10:41:16,210.210 INFO    ] 2026-10-25 10:41:16
[2026-10-25 10:41:16,519.519 INFO    ] 2026-10-25 10:41:16
[2026-10-25 10:41:16,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:41:16,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:41:16,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:41:17,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:41:17,023.023 INFO    ] time= 25/10/2026 10:41:17
[2026-10-25 10:41:17,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:41:17,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:41:17,176.176 INFO    ] No existing commands found in stream
[2026-10-25 10:41:22,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:41:22,196.196 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 10:41:24,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:41:24,026.026 INFO    ] Checking for system updates...
[2026-10-25 10:41:24,068.068 INFO    ] 200
[2026-10-25 10:41:24,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:24,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:24,136.136 INFO    ] No update needed
[2026-10-25 10:41:24,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 10:41:24,173.173 INFO    ] 200
[2026-10-25 10:41:24,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:24,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:41:24,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:24,280.280 INFO    ] No camera update needed
[2026-10-25 10:41:24,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:41:24,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:41:24,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:41:24,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:41:26,336.336 INFO    ] ================================================
[2026-10-25 10:41:26,351.351 INFO    ] Launching Daemon at Sun Oct 25 10:41:26 IST 2026
[2026-10-25 10:41:26,362.362 INFO    ] ================================================
[2026-10-25 10:41:26,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:41:26
[2026-10-25 10:41:27,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:41:27,753.753 INFO    ] Initializing speech engine...
[2026-10-25 10:41:27,759.759 INFO    ] 2026-10-25 10:41:27
[2026-10-25 10:41:28,027.027 INFO    ] 2026-10-25 10:41:28
[2026-10-25 10:41:28,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:41:28,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:41:28,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:41:28,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:41:28,525.525 INFO    ] time= 25/10/2026 10:41:28
[2026-10-25 10:41:28,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:41:28,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:41:28,715.715 INFO    ] No existing commands found in stream
[2026-10-25 10:41:33,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:41:33,743.743 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 10:41:37,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:41:37,488.488 INFO    ] Checking for system updates...
[2026-10-25 10:41:37,530.530 INFO    ] 200
[2026-10-25 10:41:37,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:37,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:41:37,591.591 INFO    ] No update needed
[2026-10-25 10:41:37,594.594 INFO    ] Checking for camera pi updates...
[2026-10-25 10:41:37,630.630 INFO    ] 200
[2026-10-25 10:41:37,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:37,676.676 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:41:37,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:41:37,880.880 INFO    ] No camera update needed
[2026-10-25 10:41:37,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:41:37,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:41:37,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:41:37,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:41:39,939.939 INFO    ] ================================================
[2026-10-25 10:41:39,954.954 INFO    ] Launching Daemon at Sun Oct 25 10:41:39 IST 2026
[2026-10-25 10:41:39,965.965 INFO    ] ================================================
[2026-10-25 10:41:40,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:41:40
[2026-10-25 10:41:41,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:41:41,380.380 INFO    ] Initializing speech engine...
[2026-10-25 10:41:41,389.389 INFO    ] 2026-10-25 10:41:41
[2026-10-25 10:41:41,638.638 INFO    ] 2026-10-25 10:41:41
[2026-10-25 10:41:41,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:41:41,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:41:41,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:41:42,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:41:42,083.083 INFO    ] time= 25/10/2026 10:41:42
[2026-10-25 10:41:42,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:41:42,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:41:42,268.268 INFO    ] No existing commands found in stream
[2026-10-25 10:41:47,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:41:47,282.282 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 10:41:54,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:41:54,050.050 INFO    ] Checking for system updates...
[2026-10-25 10:41:54,086.086 INFO    ] 200
[2026-10-25 10:41:54,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:54,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:54,150.150 INFO    ] No update needed
[2026-10-25 10:41:54,152.152 INFO    ] Checking for camera pi updates...
[2026-10-25 10:41:54,189.189 INFO    ] 200
[2026-10-25 10:41:54,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:41:54,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:41:54,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:41:54,290.290 INFO    ] No camera update needed
[2026-10-25 10:41:54,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:41:54,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:41:54,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:41:54,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:41:56,348.348 INFO    ] ================================================
[2026-10-25 10:41:56,364.364 INFO    ] Launching Daemon at Sun Oct 25 10:41:56 IST 2026
[2026-10-25 10:41:56,375.375 INFO    ] ================================================
[2026-10-25 10:41:56,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:41:56
[2026-10-25 10:41:57,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:41:57,824.824 INFO    ] Initializing speech engine...
[2026-10-25 10:41:57,835.835 INFO    ] 2026-10-25 10:41:57
[2026-10-25 10:41:58,092.092 INFO    ] 2026-10-25 10:41:58
[2026-10-25 10:41:58,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:41:58,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:41:58,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:41:58,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:41:58,583.583 INFO    ] time= 25/10/2026 10:41:58
[2026-10-25 10:41:58,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:41:58,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:41:58,749.749 INFO    ] No existing commands found in stream
[2026-10-25 10:42:03,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:42:03,784.784 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 10:42:07,416.416 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:42:07,419.419 INFO    ] Checking for system updates...
[2026-10-25 10:42:07,456.456 INFO    ] 200
[2026-10-25 10:42:07,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:07,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:07,515.515 INFO    ] No update needed
[2026-10-25 10:42:07,518.518 INFO    ] Checking for camera pi updates...
[2026-10-25 10:42:07,557.557 INFO    ] 200
[2026-10-25 10:42:07,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:07,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:42:07,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:07,656.656 INFO    ] No camera update needed
[2026-10-25 10:42:07,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:42:07,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:42:07,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:42:07,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:42:09,711.711 INFO    ] ================================================
[2026-10-25 10:42:09,727.727 INFO    ] Launching Daemon at Sun Oct 25 10:42:09 IST 2026
[2026-10-25 10:42:09,739.739 INFO    ] ================================================
[2026-10-25 10:42:10,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:42:10
[2026-10-25 10:42:10,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:42:11,130.130 INFO    ] Initializing speech engine...
[2026-10-25 10:42:11,152.152 INFO    ] 2026-10-25 10:42:11
[2026-10-25 10:42:11,404.404 INFO    ] 2026-10-25 10:42:11
[2026-10-25 10:42:11,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:42:11,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:42:11,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:42:11,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:42:11,861.861 INFO    ] time= 25/10/2026 10:42:11
[2026-10-25 10:42:11,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:42:11,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:42:12,078.078 INFO    ] No existing commands found in stream
[2026-10-25 10:42:17,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:42:17,113.113 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 10:42:20,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:42:20,967.967 INFO    ] Checking for system updates...
[2026-10-25 10:42:21,005.005 INFO    ] 200
[2026-10-25 10:42:21,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:21,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:42:21,066.066 INFO    ] No update needed
[2026-10-25 10:42:21,068.068 INFO    ] Checking for camera pi updates...
[2026-10-25 10:42:21,103.103 INFO    ] 200
[2026-10-25 10:42:21,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:21,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:42:21,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:42:21,202.202 INFO    ] No camera update needed
[2026-10-25 10:42:21,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:42:21,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:42:21,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:42:21,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:42:23,257.257 INFO    ] ================================================
[2026-10-25 10:42:23,273.273 INFO    ] Launching Daemon at Sun Oct 25 10:42:23 IST 2026
[2026-10-25 10:42:23,288.288 INFO    ] ================================================
[2026-10-25 10:42:23,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:42:23
[2026-10-25 10:42:24,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:42:24,740.740 INFO    ] Initializing speech engine...
[2026-10-25 10:42:24,748.748 INFO    ] 2026-10-25 10:42:24
[2026-10-25 10:42:24,999.999 INFO    ] 2026-10-25 10:42:24
[2026-10-25 10:42:25,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:42:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:42:25,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:42:25,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:42:25,338.338 INFO    ] time= 25/10/2026 10:42:25
[2026-10-25 10:42:25,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:42:25,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:42:25,450.450 INFO    ] No existing commands found in stream
[2026-10-25 10:42:30,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:42:30,465.465 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 10:42:32,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:42:32,499.499 INFO    ] Checking for system updates...
[2026-10-25 10:42:32,545.545 INFO    ] 200
[2026-10-25 10:42:32,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:32,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:32,610.610 INFO    ] No update needed
[2026-10-25 10:42:32,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 10:42:32,646.646 INFO    ] 200
[2026-10-25 10:42:32,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:32,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:42:32,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:32,728.728 INFO    ] No camera update needed
[2026-10-25 10:42:32,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:42:32,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:42:32,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:42:32,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:42:34,784.784 INFO    ] ================================================
[2026-10-25 10:42:34,799.799 INFO    ] Launching Daemon at Sun Oct 25 10:42:34 IST 2026
[2026-10-25 10:42:34,810.810 INFO    ] ================================================
[2026-10-25 10:42:35,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:42:35
[2026-10-25 10:42:36,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:42:36,472.472 INFO    ] Initializing speech engine...
[2026-10-25 10:42:36,488.488 INFO    ] 2026-10-25 10:42:36
[2026-10-25 10:42:36,776.776 INFO    ] 2026-10-25 10:42:36
[2026-10-25 10:42:36,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:42:37,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:42:37,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:42:37,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:42:37,272.272 INFO    ] time= 25/10/2026 10:42:37
[2026-10-25 10:42:37,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:42:37,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:42:37,460.460 INFO    ] No existing commands found in stream
[2026-10-25 10:42:42,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:42:42,474.474 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 10:42:46,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:42:46,368.368 INFO    ] Checking for system updates...
[2026-10-25 10:42:46,404.404 INFO    ] 200
[2026-10-25 10:42:46,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:46,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:46,462.462 INFO    ] No update needed
[2026-10-25 10:42:46,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 10:42:46,498.498 INFO    ] 200
[2026-10-25 10:42:46,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:46,547.547 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:42:46,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:46,612.612 INFO    ] No camera update needed
[2026-10-25 10:42:46,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:42:46,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:42:46,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:42:46,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:42:48,669.669 INFO    ] ================================================
[2026-10-25 10:42:48,684.684 INFO    ] Launching Daemon at Sun Oct 25 10:42:48 IST 2026
[2026-10-25 10:42:48,695.695 INFO    ] ================================================
[2026-10-25 10:42:49,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:42:49
[2026-10-25 10:42:49,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:42:50,231.231 INFO    ] Initializing speech engine...
[2026-10-25 10:42:50,244.244 INFO    ] 2026-10-25 10:42:50
[2026-10-25 10:42:50,559.559 INFO    ] 2026-10-25 10:42:50
[2026-10-25 10:42:50,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:42:50,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:42:50,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:42:51,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:42:51,082.082 INFO    ] time= 25/10/2026 10:42:51
[2026-10-25 10:42:51,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:42:51,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:42:51,242.242 INFO    ] No existing commands found in stream
[2026-10-25 10:42:56,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:42:56,260.260 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 10:42:56,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:42:56,999.999 INFO    ] Checking for system updates...
[2026-10-25 10:42:57,035.035 INFO    ] 200
[2026-10-25 10:42:57,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:57,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:57,093.093 INFO    ] No update needed
[2026-10-25 10:42:57,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 10:42:57,130.130 INFO    ] 200
[2026-10-25 10:42:57,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:42:57,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:42:57,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:42:57,222.222 INFO    ] No camera update needed
[2026-10-25 10:42:57,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:42:57,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:42:57,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:42:57,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:42:59,277.277 INFO    ] ================================================
[2026-10-25 10:42:59,293.293 INFO    ] Launching Daemon at Sun Oct 25 10:42:59 IST 2026
[2026-10-25 10:42:59,304.304 INFO    ] ================================================
[2026-10-25 10:42:59,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:42:59
[2026-10-25 10:43:00,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:43:00,943.943 INFO    ] Initializing speech engine...
[2026-10-25 10:43:00,957.957 INFO    ] 2026-10-25 10:43:00
[2026-10-25 10:43:01,241.241 INFO    ] 2026-10-25 10:43:01
[2026-10-25 10:43:01,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:43:01,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:43:01,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:43:01,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:43:01,852.852 INFO    ] time= 25/10/2026 10:43:01
[2026-10-25 10:43:01,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:43:01,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:43:02,052.052 INFO    ] No existing commands found in stream
[2026-10-25 10:43:07,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:43:07,067.067 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 10:43:07,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:43:07,525.525 INFO    ] Checking for system updates...
[2026-10-25 10:43:07,565.565 INFO    ] 200
[2026-10-25 10:43:07,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:07,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:07,623.623 INFO    ] No update needed
[2026-10-25 10:43:07,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 10:43:07,663.663 INFO    ] 200
[2026-10-25 10:43:07,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:07,711.711 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:43:07,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:07,758.758 INFO    ] No camera update needed
[2026-10-25 10:43:07,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:43:07,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:43:07,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:43:07,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:43:09,816.816 INFO    ] ================================================
[2026-10-25 10:43:09,831.831 INFO    ] Launching Daemon at Sun Oct 25 10:43:09 IST 2026
[2026-10-25 10:43:09,842.842 INFO    ] ================================================
[2026-10-25 10:43:10,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:43:10
[2026-10-25 10:43:11,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:43:11,445.445 INFO    ] Initializing speech engine...
[2026-10-25 10:43:11,454.454 INFO    ] 2026-10-25 10:43:11
[2026-10-25 10:43:11,740.740 INFO    ] 2026-10-25 10:43:11
[2026-10-25 10:43:11,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:43:12,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:43:12,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:43:12,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:43:12,288.288 INFO    ] time= 25/10/2026 10:43:12
[2026-10-25 10:43:12,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:43:12,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:43:12,447.447 INFO    ] No existing commands found in stream
[2026-10-25 10:43:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:43:17,465.465 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 10:43:19,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:43:19,392.392 INFO    ] Checking for system updates...
[2026-10-25 10:43:19,436.436 INFO    ] 200
[2026-10-25 10:43:19,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:19,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:19,496.496 INFO    ] No update needed
[2026-10-25 10:43:19,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 10:43:19,537.537 INFO    ] 200
[2026-10-25 10:43:19,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:19,581.581 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:43:19,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:19,741.741 INFO    ] No camera update needed
[2026-10-25 10:43:19,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:43:19,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:43:19,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:43:19,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:43:21,799.799 INFO    ] ================================================
[2026-10-25 10:43:21,818.818 INFO    ] Launching Daemon at Sun Oct 25 10:43:21 IST 2026
[2026-10-25 10:43:21,829.829 INFO    ] ================================================
[2026-10-25 10:43:22,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:43:22
[2026-10-25 10:43:23,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:43:23,323.323 INFO    ] Initializing speech engine...
[2026-10-25 10:43:23,346.346 INFO    ] 2026-10-25 10:43:23
[2026-10-25 10:43:23,599.599 INFO    ] 2026-10-25 10:43:23
[2026-10-25 10:43:23,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:43:26,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:43:26,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:43:26,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:43:26,678.678 INFO    ] time= 25/10/2026 10:43:26
[2026-10-25 10:43:26,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:43:26,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:43:26,732.732 INFO    ] No existing commands found in stream
[2026-10-25 10:43:31,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:43:31,744.744 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 10:43:35,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:43:35,064.064 INFO    ] Checking for system updates...
[2026-10-25 10:43:35,099.099 INFO    ] 200
[2026-10-25 10:43:35,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:35,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:43:35,158.158 INFO    ] No update needed
[2026-10-25 10:43:35,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 10:43:35,194.194 INFO    ] 200
[2026-10-25 10:43:35,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:35,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:43:35,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:43:35,318.318 INFO    ] No camera update needed
[2026-10-25 10:43:35,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:43:35,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:43:35,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:43:35,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:43:37,373.373 INFO    ] ================================================
[2026-10-25 10:43:37,388.388 INFO    ] Launching Daemon at Sun Oct 25 10:43:37 IST 2026
[2026-10-25 10:43:37,399.399 INFO    ] ================================================
[2026-10-25 10:43:38,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:43:38
[2026-10-25 10:43:38,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:43:39,013.013 INFO    ] Initializing speech engine...
[2026-10-25 10:43:39,025.025 INFO    ] 2026-10-25 10:43:39
[2026-10-25 10:43:39,338.338 INFO    ] 2026-10-25 10:43:39
[2026-10-25 10:43:39,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:43:39,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:43:39,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:43:39,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:43:39,858.858 INFO    ] time= 25/10/2026 10:43:39
[2026-10-25 10:43:39,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:43:39,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:43:40,014.014 INFO    ] No existing commands found in stream
[2026-10-25 10:43:45,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:43:45,031.031 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 10:43:46,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:43:46,668.668 INFO    ] Checking for system updates...
[2026-10-25 10:43:46,708.708 INFO    ] 200
[2026-10-25 10:43:46,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:46,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:46,775.775 INFO    ] No update needed
[2026-10-25 10:43:46,778.778 INFO    ] Checking for camera pi updates...
[2026-10-25 10:43:46,813.813 INFO    ] 200
[2026-10-25 10:43:46,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:46,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:43:46,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:43:46,911.911 INFO    ] No camera update needed
[2026-10-25 10:43:46,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:43:46,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:43:46,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:43:46,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:43:48,968.968 INFO    ] ================================================
[2026-10-25 10:43:48,984.984 INFO    ] Launching Daemon at Sun Oct 25 10:43:48 IST 2026
[2026-10-25 10:43:49,994.994 INFO    ] ================================================
[2026-10-25 10:43:49,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:43:49
[2026-10-25 10:43:50,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:43:50,402.402 INFO    ] Initializing speech engine...
[2026-10-25 10:43:50,421.421 INFO    ] 2026-10-25 10:43:50
[2026-10-25 10:43:50,669.669 INFO    ] 2026-10-25 10:43:50
[2026-10-25 10:43:50,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:43:50,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:43:50,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:43:51,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:43:51,131.131 INFO    ] time= 25/10/2026 10:43:51
[2026-10-25 10:43:51,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:43:51,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:43:51,295.295 INFO    ] No existing commands found in stream
[2026-10-25 10:43:56,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:43:56,310.310 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 10:43:59,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:43:59,831.831 INFO    ] Checking for system updates...
[2026-10-25 10:43:59,869.869 INFO    ] 200
[2026-10-25 10:43:59,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:43:59,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:43:59,928.928 INFO    ] No update needed
[2026-10-25 10:43:59,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 10:43:59,966.966 INFO    ] 200
[2026-10-25 10:43:59,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:00,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:44:00,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:44:00,067.067 INFO    ] No camera update needed
[2026-10-25 10:44:00,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:44:00,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:44:00,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:44:00,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:44:02,127.127 INFO    ] ================================================
[2026-10-25 10:44:02,147.147 INFO    ] Launching Daemon at Sun Oct 25 10:44:02 IST 2026
[2026-10-25 10:44:02,163.163 INFO    ] ================================================
[2026-10-25 10:44:02,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:44:02
[2026-10-25 10:44:03,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:44:03,731.731 INFO    ] Initializing speech engine...
[2026-10-25 10:44:03,754.754 INFO    ] 2026-10-25 10:44:03
[2026-10-25 10:44:04,023.023 INFO    ] 2026-10-25 10:44:04
[2026-10-25 10:44:04,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:44:04,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:44:04,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:44:04,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:44:04,497.497 INFO    ] time= 25/10/2026 10:44:04
[2026-10-25 10:44:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:44:04,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:44:04,648.648 INFO    ] No existing commands found in stream
[2026-10-25 10:44:09,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:44:09,665.665 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 10:44:11,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:44:11,873.873 INFO    ] Checking for system updates...
[2026-10-25 10:44:11,909.909 INFO    ] 200
[2026-10-25 10:44:11,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:11,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:44:11,967.967 INFO    ] No update needed
[2026-10-25 10:44:11,970.970 INFO    ] Checking for camera pi updates...
[2026-10-25 10:44:12,005.005 INFO    ] 200
[2026-10-25 10:44:12,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:12,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:44:12,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:44:12,101.101 INFO    ] No camera update needed
[2026-10-25 10:44:12,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:44:12,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:44:12,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:44:12,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:44:14,159.159 INFO    ] ================================================
[2026-10-25 10:44:14,174.174 INFO    ] Launching Daemon at Sun Oct 25 10:44:14 IST 2026
[2026-10-25 10:44:14,185.185 INFO    ] ================================================
[2026-10-25 10:44:14,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:44:14
[2026-10-25 10:44:15,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:44:15,735.735 INFO    ] Initializing speech engine...
[2026-10-25 10:44:15,743.743 INFO    ] 2026-10-25 10:44:15
[2026-10-25 10:44:16,009.009 INFO    ] 2026-10-25 10:44:16
[2026-10-25 10:44:16,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:44:16,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:44:16,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:44:16,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:44:16,506.506 INFO    ] time= 25/10/2026 10:44:16
[2026-10-25 10:44:16,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:44:16,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:44:16,694.694 INFO    ] No existing commands found in stream
[2026-10-25 10:44:21,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:44:21,716.716 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 10:44:24,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:44:24,170.170 INFO    ] Checking for system updates...
[2026-10-25 10:44:24,207.207 INFO    ] 200
[2026-10-25 10:44:24,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:24,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:24,267.267 INFO    ] No update needed
[2026-10-25 10:44:24,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 10:44:24,304.304 INFO    ] 200
[2026-10-25 10:44:24,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:24,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:44:24,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:24,410.410 INFO    ] No camera update needed
[2026-10-25 10:44:24,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:44:24,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:44:24,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:44:24,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:44:26,468.468 INFO    ] ================================================
[2026-10-25 10:44:26,483.483 INFO    ] Launching Daemon at Sun Oct 25 10:44:26 IST 2026
[2026-10-25 10:44:26,494.494 INFO    ] ================================================
[2026-10-25 10:44:27,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:44:27
[2026-10-25 10:44:27,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:44:27,939.939 INFO    ] Initializing speech engine...
[2026-10-25 10:44:27,948.948 INFO    ] 2026-10-25 10:44:27
[2026-10-25 10:44:28,196.196 INFO    ] 2026-10-25 10:44:28
[2026-10-25 10:44:28,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:44:28,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:44:28,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:44:28,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:44:28,696.696 INFO    ] time= 25/10/2026 10:44:28
[2026-10-25 10:44:28,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:44:28,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:44:28,816.816 INFO    ] No existing commands found in stream
[2026-10-25 10:44:33,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:44:33,834.834 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 10:44:34,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:44:34,513.513 INFO    ] Checking for system updates...
[2026-10-25 10:44:34,550.550 INFO    ] 200
[2026-10-25 10:44:34,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:34,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:34,618.618 INFO    ] No update needed
[2026-10-25 10:44:34,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 10:44:34,655.655 INFO    ] 200
[2026-10-25 10:44:34,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:34,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:44:34,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:34,750.750 INFO    ] No camera update needed
[2026-10-25 10:44:34,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:44:34,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:44:34,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:44:34,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:44:36,807.807 INFO    ] ================================================
[2026-10-25 10:44:36,822.822 INFO    ] Launching Daemon at Sun Oct 25 10:44:36 IST 2026
[2026-10-25 10:44:36,832.832 INFO    ] ================================================
[2026-10-25 10:44:37,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:44:37
[2026-10-25 10:44:38,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:44:38,267.267 INFO    ] Initializing speech engine...
[2026-10-25 10:44:38,273.273 INFO    ] 2026-10-25 10:44:38
[2026-10-25 10:44:38,566.566 INFO    ] 2026-10-25 10:44:38
[2026-10-25 10:44:38,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:44:38,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:44:38,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:44:38,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:44:38,975.975 INFO    ] time= 25/10/2026 10:44:38
[2026-10-25 10:44:38,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:44:39,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:44:39,138.138 INFO    ] No existing commands found in stream
[2026-10-25 10:44:44,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:44:44,166.166 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 10:44:46,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:44:46,408.408 INFO    ] Checking for system updates...
[2026-10-25 10:44:46,444.444 INFO    ] 200
[2026-10-25 10:44:46,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:46,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:46,504.504 INFO    ] No update needed
[2026-10-25 10:44:46,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 10:44:46,540.540 INFO    ] 200
[2026-10-25 10:44:46,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:44:46,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:44:46,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:44:46,638.638 INFO    ] No camera update needed
[2026-10-25 10:44:46,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:44:46,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:44:46,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:44:46,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:44:48,696.696 INFO    ] ================================================
[2026-10-25 10:44:48,711.711 INFO    ] Launching Daemon at Sun Oct 25 10:44:48 IST 2026
[2026-10-25 10:44:48,722.722 INFO    ] ================================================
[2026-10-25 10:44:49,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:44:49
[2026-10-25 10:44:49,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:44:50,173.173 INFO    ] Initializing speech engine...
[2026-10-25 10:44:50,182.182 INFO    ] 2026-10-25 10:44:50
[2026-10-25 10:44:50,435.435 INFO    ] 2026-10-25 10:44:50
[2026-10-25 10:44:50,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:44:50,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:44:50,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:44:50,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:44:50,894.894 INFO    ] time= 25/10/2026 10:44:50
[2026-10-25 10:44:50,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:44:50,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:44:51,046.046 INFO    ] No existing commands found in stream
[2026-10-25 10:44:56,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:44:56,062.062 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 10:45:00,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:45:00,254.254 INFO    ] Checking for system updates...
[2026-10-25 10:45:00,290.290 INFO    ] 200
[2026-10-25 10:45:00,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:00,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:00,348.348 INFO    ] No update needed
[2026-10-25 10:45:00,351.351 INFO    ] Checking for camera pi updates...
[2026-10-25 10:45:00,386.386 INFO    ] 200
[2026-10-25 10:45:00,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:00,429.429 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:45:00,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:00,492.492 INFO    ] No camera update needed
[2026-10-25 10:45:00,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:45:00,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:45:00,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:45:00,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:45:02,579.579 INFO    ] ================================================
[2026-10-25 10:45:02,615.615 INFO    ] Launching Daemon at Sun Oct 25 10:45:02 IST 2026
[2026-10-25 10:45:02,652.652 INFO    ] ================================================
[2026-10-25 10:45:03,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:45:03
[2026-10-25 10:45:03,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:45:04,270.270 INFO    ] Initializing speech engine...
[2026-10-25 10:45:04,283.283 INFO    ] 2026-10-25 10:45:04
[2026-10-25 10:45:04,550.550 INFO    ] 2026-10-25 10:45:04
[2026-10-25 10:45:04,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:45:04,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:45:04,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:45:04,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:45:04,919.919 INFO    ] time= 25/10/2026 10:45:04
[2026-10-25 10:45:04,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:45:04,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:45:05,109.109 INFO    ] No existing commands found in stream
[2026-10-25 10:45:10,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:45:10,127.127 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 10:45:12,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:45:12,821.821 INFO    ] Checking for system updates...
[2026-10-25 10:45:12,858.858 INFO    ] 200
[2026-10-25 10:45:12,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:12,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:12,930.930 INFO    ] No update needed
[2026-10-25 10:45:12,933.933 INFO    ] Checking for camera pi updates...
[2026-10-25 10:45:12,967.967 INFO    ] 200
[2026-10-25 10:45:12,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:13,012.012 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:45:13,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:13,067.067 INFO    ] No camera update needed
[2026-10-25 10:45:13,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:45:13,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:45:13,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:45:13,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:45:15,126.126 INFO    ] ================================================
[2026-10-25 10:45:15,141.141 INFO    ] Launching Daemon at Sun Oct 25 10:45:15 IST 2026
[2026-10-25 10:45:15,152.152 INFO    ] ================================================
[2026-10-25 10:45:15,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:45:15
[2026-10-25 10:45:16,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:45:16,607.607 INFO    ] Initializing speech engine...
[2026-10-25 10:45:16,617.617 INFO    ] 2026-10-25 10:45:16
[2026-10-25 10:45:16,867.867 INFO    ] 2026-10-25 10:45:16
[2026-10-25 10:45:16,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:45:17,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:45:17,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:45:17,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:45:17,338.338 INFO    ] time= 25/10/2026 10:45:17
[2026-10-25 10:45:17,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:45:17,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:45:17,486.486 INFO    ] No existing commands found in stream
[2026-10-25 10:45:22,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:45:22,501.501 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:45:26,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:45:26,823.823 INFO    ] Checking for system updates...
[2026-10-25 10:45:26,864.864 INFO    ] 200
[2026-10-25 10:45:26,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:26,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:26,927.927 INFO    ] No update needed
[2026-10-25 10:45:26,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 10:45:26,964.964 INFO    ] 200
[2026-10-25 10:45:26,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:27,008.008 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:45:27,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:27,157.157 INFO    ] No camera update needed
[2026-10-25 10:45:27,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:45:27,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:45:27,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:45:27,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:45:29,212.212 INFO    ] ================================================
[2026-10-25 10:45:29,227.227 INFO    ] Launching Daemon at Sun Oct 25 10:45:29 IST 2026
[2026-10-25 10:45:29,238.238 INFO    ] ================================================
[2026-10-25 10:45:29,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:45:29
[2026-10-25 10:45:30,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:45:30,662.662 INFO    ] Initializing speech engine...
[2026-10-25 10:45:30,671.671 INFO    ] 2026-10-25 10:45:30
[2026-10-25 10:45:30,921.921 INFO    ] 2026-10-25 10:45:30
[2026-10-25 10:45:30,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:45:31,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:45:31,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:45:31,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:45:31,394.394 INFO    ] time= 25/10/2026 10:45:31
[2026-10-25 10:45:31,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:45:31,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:45:31,552.552 INFO    ] No existing commands found in stream
[2026-10-25 10:45:36,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:45:36,566.566 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 10:45:39,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:45:39,267.267 INFO    ] Checking for system updates...
[2026-10-25 10:45:39,303.303 INFO    ] 200
[2026-10-25 10:45:39,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:39,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:39,370.370 INFO    ] No update needed
[2026-10-25 10:45:39,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 10:45:39,406.406 INFO    ] 200
[2026-10-25 10:45:39,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:39,451.451 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:45:39,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:45:39,505.505 INFO    ] No camera update needed
[2026-10-25 10:45:39,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:45:39,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:45:39,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:45:39,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:45:41,561.561 INFO    ] ================================================
[2026-10-25 10:45:41,576.576 INFO    ] Launching Daemon at Sun Oct 25 10:45:41 IST 2026
[2026-10-25 10:45:41,587.587 INFO    ] ================================================
[2026-10-25 10:45:42,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:45:42
[2026-10-25 10:45:42,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:45:43,258.258 INFO    ] Initializing speech engine...
[2026-10-25 10:45:43,271.271 INFO    ] 2026-10-25 10:45:43
[2026-10-25 10:45:43,566.566 INFO    ] 2026-10-25 10:45:43
[2026-10-25 10:45:43,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:45:43,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:45:43,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:45:44,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:45:44,104.104 INFO    ] time= 25/10/2026 10:45:44
[2026-10-25 10:45:44,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:45:44,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:45:44,264.264 INFO    ] No existing commands found in stream
[2026-10-25 10:45:49,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:45:49,294.294 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 10:45:51,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:45:51,599.599 INFO    ] Checking for system updates...
[2026-10-25 10:45:51,637.637 INFO    ] 200
[2026-10-25 10:45:51,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:51,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:45:51,697.697 INFO    ] No update needed
[2026-10-25 10:45:51,700.700 INFO    ] Checking for camera pi updates...
[2026-10-25 10:45:51,735.735 INFO    ] 200
[2026-10-25 10:45:51,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:45:51,780.780 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:45:51,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:45:51,828.828 INFO    ] No camera update needed
[2026-10-25 10:45:51,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:45:51,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:45:51,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:45:51,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:45:53,883.883 INFO    ] ================================================
[2026-10-25 10:45:53,898.898 INFO    ] Launching Daemon at Sun Oct 25 10:45:53 IST 2026
[2026-10-25 10:45:53,909.909 INFO    ] ================================================
[2026-10-25 10:45:54,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:45:54
[2026-10-25 10:45:55,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:45:55,380.380 INFO    ] Initializing speech engine...
[2026-10-25 10:45:55,393.393 INFO    ] 2026-10-25 10:45:55
[2026-10-25 10:45:55,661.661 INFO    ] 2026-10-25 10:45:55
[2026-10-25 10:45:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:45:55,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:45:55,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:45:56,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:45:56,193.193 INFO    ] time= 25/10/2026 10:45:56
[2026-10-25 10:45:56,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:45:56,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:45:56,329.329 INFO    ] No existing commands found in stream
[2026-10-25 10:46:01,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:46:01,359.359 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 10:46:02,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:46:02,974.974 INFO    ] Checking for system updates...
[2026-10-25 10:46:03,025.025 INFO    ] 200
[2026-10-25 10:46:03,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:03,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:03,093.093 INFO    ] No update needed
[2026-10-25 10:46:03,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 10:46:03,140.140 INFO    ] 200
[2026-10-25 10:46:03,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:03,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:46:03,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:03,236.236 INFO    ] No camera update needed
[2026-10-25 10:46:03,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:46:03,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:46:03,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:46:03,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:46:05,294.294 INFO    ] ================================================
[2026-10-25 10:46:05,310.310 INFO    ] Launching Daemon at Sun Oct 25 10:46:05 IST 2026
[2026-10-25 10:46:05,322.322 INFO    ] ================================================
[2026-10-25 10:46:05,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:46:05
[2026-10-25 10:46:06,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:46:06,720.720 INFO    ] Initializing speech engine...
[2026-10-25 10:46:06,728.728 INFO    ] 2026-10-25 10:46:06
[2026-10-25 10:46:07,001.001 INFO    ] 2026-10-25 10:46:06
[2026-10-25 10:46:07,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:46:07,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:46:07,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:46:07,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:46:07,426.426 INFO    ] time= 25/10/2026 10:46:07
[2026-10-25 10:46:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:46:07,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:46:07,584.584 INFO    ] No existing commands found in stream
[2026-10-25 10:46:12,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:46:12,598.598 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 10:46:16,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:46:16,447.447 INFO    ] Checking for system updates...
[2026-10-25 10:46:16,488.488 INFO    ] 200
[2026-10-25 10:46:16,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:16,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:16,546.546 INFO    ] No update needed
[2026-10-25 10:46:16,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 10:46:16,587.587 INFO    ] 200
[2026-10-25 10:46:16,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:16,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:46:16,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:16,682.682 INFO    ] No camera update needed
[2026-10-25 10:46:16,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:46:16,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:46:16,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:46:16,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:46:18,741.741 INFO    ] ================================================
[2026-10-25 10:46:18,757.757 INFO    ] Launching Daemon at Sun Oct 25 10:46:18 IST 2026
[2026-10-25 10:46:18,768.768 INFO    ] ================================================
[2026-10-25 10:46:19,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:46:19
[2026-10-25 10:46:19,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:46:20,234.234 INFO    ] Initializing speech engine...
[2026-10-25 10:46:20,242.242 INFO    ] 2026-10-25 10:46:20
[2026-10-25 10:46:20,515.515 INFO    ] 2026-10-25 10:46:20
[2026-10-25 10:46:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:46:20,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:46:20,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:46:20,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:46:20,986.986 INFO    ] time= 25/10/2026 10:46:20
[2026-10-25 10:46:21,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:46:21,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:46:21,122.122 INFO    ] No existing commands found in stream
[2026-10-25 10:46:26,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:46:26,136.136 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 10:46:32,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:46:32,524.524 INFO    ] Checking for system updates...
[2026-10-25 10:46:32,564.564 INFO    ] 200
[2026-10-25 10:46:32,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:32,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:32,639.639 INFO    ] No update needed
[2026-10-25 10:46:32,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 10:46:32,692.692 INFO    ] 200
[2026-10-25 10:46:32,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:32,744.744 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:46:32,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:32,777.777 INFO    ] No camera update needed
[2026-10-25 10:46:32,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:46:32,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:46:32,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:46:32,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:46:34,834.834 INFO    ] ================================================
[2026-10-25 10:46:34,851.851 INFO    ] Launching Daemon at Sun Oct 25 10:46:34 IST 2026
[2026-10-25 10:46:34,862.862 INFO    ] ================================================
[2026-10-25 10:46:35,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:46:35
[2026-10-25 10:46:36,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:46:36,518.518 INFO    ] Initializing speech engine...
[2026-10-25 10:46:36,524.524 INFO    ] 2026-10-25 10:46:36
[2026-10-25 10:46:36,811.811 INFO    ] 2026-10-25 10:46:36
[2026-10-25 10:46:36,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:46:37,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:46:37,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:46:37,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:46:37,368.368 INFO    ] time= 25/10/2026 10:46:37
[2026-10-25 10:46:37,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:46:37,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:46:37,522.522 INFO    ] No existing commands found in stream
[2026-10-25 10:46:42,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:46:42,551.551 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 10:46:46,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:46:46,589.589 INFO    ] Checking for system updates...
[2026-10-25 10:46:46,625.625 INFO    ] 200
[2026-10-25 10:46:46,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:46,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:46,692.692 INFO    ] No update needed
[2026-10-25 10:46:46,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 10:46:46,734.734 INFO    ] 200
[2026-10-25 10:46:46,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:46,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:46:46,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:46,827.827 INFO    ] No camera update needed
[2026-10-25 10:46:46,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:46:46,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:46:46,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:46:46,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:46:48,883.883 INFO    ] ================================================
[2026-10-25 10:46:48,898.898 INFO    ] Launching Daemon at Sun Oct 25 10:46:48 IST 2026
[2026-10-25 10:46:48,910.910 INFO    ] ================================================
[2026-10-25 10:46:49,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:46:49
[2026-10-25 10:46:50,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:46:50,353.353 INFO    ] Initializing speech engine...
[2026-10-25 10:46:50,361.361 INFO    ] 2026-10-25 10:46:50
[2026-10-25 10:46:50,617.617 INFO    ] 2026-10-25 10:46:50
[2026-10-25 10:46:50,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:46:50,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:46:50,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:46:51,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:46:51,108.108 INFO    ] time= 25/10/2026 10:46:51
[2026-10-25 10:46:51,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:46:51,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:46:51,296.296 INFO    ] No existing commands found in stream
[2026-10-25 10:46:56,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:46:56,324.324 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 10:46:57,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:46:57,128.128 INFO    ] Checking for system updates...
[2026-10-25 10:46:57,164.164 INFO    ] 200
[2026-10-25 10:46:57,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:57,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:57,223.223 INFO    ] No update needed
[2026-10-25 10:46:57,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 10:46:57,264.264 INFO    ] 200
[2026-10-25 10:46:57,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:46:57,313.313 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:46:57,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:46:57,368.368 INFO    ] No camera update needed
[2026-10-25 10:46:57,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:46:57,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:46:57,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:46:57,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:46:59,426.426 INFO    ] ================================================
[2026-10-25 10:46:59,443.443 INFO    ] Launching Daemon at Sun Oct 25 10:46:59 IST 2026
[2026-10-25 10:46:59,454.454 INFO    ] ================================================
[2026-10-25 10:47:00,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:47:00
[2026-10-25 10:47:00,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:47:00,895.895 INFO    ] Initializing speech engine...
[2026-10-25 10:47:00,910.910 INFO    ] 2026-10-25 10:47:00
[2026-10-25 10:47:01,179.179 INFO    ] 2026-10-25 10:47:01
[2026-10-25 10:47:01,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:47:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:47:03,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:47:03,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:47:03,675.675 INFO    ] time= 25/10/2026 10:47:03
[2026-10-25 10:47:03,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:47:03,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:47:03,756.756 INFO    ] No existing commands found in stream
[2026-10-25 10:47:08,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:47:08,769.769 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 10:47:12,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:47:12,845.845 INFO    ] Checking for system updates...
[2026-10-25 10:47:12,881.881 INFO    ] 200
[2026-10-25 10:47:12,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:12,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:47:12,939.939 INFO    ] No update needed
[2026-10-25 10:47:12,942.942 INFO    ] Checking for camera pi updates...
[2026-10-25 10:47:12,980.980 INFO    ] 200
[2026-10-25 10:47:12,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:13,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:47:13,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:47:13,088.088 INFO    ] No camera update needed
[2026-10-25 10:47:13,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:47:13,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:47:13,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:47:13,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:47:15,148.148 INFO    ] ================================================
[2026-10-25 10:47:15,165.165 INFO    ] Launching Daemon at Sun Oct 25 10:47:15 IST 2026
[2026-10-25 10:47:15,176.176 INFO    ] ================================================
[2026-10-25 10:47:15,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:47:15
[2026-10-25 10:47:16,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:47:16,812.812 INFO    ] Initializing speech engine...
[2026-10-25 10:47:16,827.827 INFO    ] 2026-10-25 10:47:16
[2026-10-25 10:47:17,108.108 INFO    ] 2026-10-25 10:47:17
[2026-10-25 10:47:17,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:47:17,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:47:17,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:47:17,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:47:17,594.594 INFO    ] time= 25/10/2026 10:47:17
[2026-10-25 10:47:17,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:47:17,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:47:17,780.780 INFO    ] No existing commands found in stream
[2026-10-25 10:47:22,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:47:22,816.816 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 10:47:26,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:47:26,180.180 INFO    ] Checking for system updates...
[2026-10-25 10:47:26,218.218 INFO    ] 200
[2026-10-25 10:47:26,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:26,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:47:26,285.285 INFO    ] No update needed
[2026-10-25 10:47:26,288.288 INFO    ] Checking for camera pi updates...
[2026-10-25 10:47:26,323.323 INFO    ] 200
[2026-10-25 10:47:26,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:26,369.369 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:47:26,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:47:26,429.429 INFO    ] No camera update needed
[2026-10-25 10:47:26,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:47:26,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:47:26,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:47:26,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:47:28,488.488 INFO    ] ================================================
[2026-10-25 10:47:28,504.504 INFO    ] Launching Daemon at Sun Oct 25 10:47:28 IST 2026
[2026-10-25 10:47:28,515.515 INFO    ] ================================================
[2026-10-25 10:47:29,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:47:29
[2026-10-25 10:47:29,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:47:29,909.909 INFO    ] Initializing speech engine...
[2026-10-25 10:47:29,916.916 INFO    ] 2026-10-25 10:47:29
[2026-10-25 10:47:30,189.189 INFO    ] 2026-10-25 10:47:30
[2026-10-25 10:47:30,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:47:31,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:47:31,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:47:34,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:47:34,248.248 INFO    ] time= 25/10/2026 10:47:34
[2026-10-25 10:47:34,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:47:34,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:47:34,302.302 INFO    ] No existing commands found in stream
[2026-10-25 10:47:39,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:47:39,314.314 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 10:47:41,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:47:41,646.646 INFO    ] Checking for system updates...
[2026-10-25 10:47:41,683.683 INFO    ] 200
[2026-10-25 10:47:41,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:41,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:47:41,741.741 INFO    ] No update needed
[2026-10-25 10:47:41,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 10:47:41,777.777 INFO    ] 200
[2026-10-25 10:47:41,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:41,826.826 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:47:41,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:47:41,887.887 INFO    ] No camera update needed
[2026-10-25 10:47:41,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:47:41,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:47:41,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:47:41,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:47:43,943.943 INFO    ] ================================================
[2026-10-25 10:47:43,959.959 INFO    ] Launching Daemon at Sun Oct 25 10:47:43 IST 2026
[2026-10-25 10:47:43,969.969 INFO    ] ================================================
[2026-10-25 10:47:44,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:47:44
[2026-10-25 10:47:45,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:47:45,632.632 INFO    ] Initializing speech engine...
[2026-10-25 10:47:45,644.644 INFO    ] 2026-10-25 10:47:45
[2026-10-25 10:47:45,962.962 INFO    ] 2026-10-25 10:47:45
[2026-10-25 10:47:46,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:47:46,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:47:46,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:47:46,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:47:46,501.501 INFO    ] time= 25/10/2026 10:47:46
[2026-10-25 10:47:46,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:47:46,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:47:46,650.650 INFO    ] No existing commands found in stream
[2026-10-25 10:47:51,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:47:51,678.678 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 10:47:53,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:47:53,487.487 INFO    ] Checking for system updates...
[2026-10-25 10:47:53,527.527 INFO    ] 200
[2026-10-25 10:47:53,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:53,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:47:53,585.585 INFO    ] No update needed
[2026-10-25 10:47:53,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 10:47:53,625.625 INFO    ] 200
[2026-10-25 10:47:53,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:47:53,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:47:53,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:47:53,723.723 INFO    ] No camera update needed
[2026-10-25 10:47:53,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:47:53,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:47:53,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:47:53,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:47:55,778.778 INFO    ] ================================================
[2026-10-25 10:47:55,794.794 INFO    ] Launching Daemon at Sun Oct 25 10:47:55 IST 2026
[2026-10-25 10:47:55,804.804 INFO    ] ================================================
[2026-10-25 10:47:56,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:47:56
[2026-10-25 10:47:56,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:47:57,219.219 INFO    ] Initializing speech engine...
[2026-10-25 10:47:57,247.247 INFO    ] 2026-10-25 10:47:57
[2026-10-25 10:47:57,523.523 INFO    ] 2026-10-25 10:47:57
[2026-10-25 10:47:57,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:47:57,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:47:57,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:47:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:47:57,946.946 INFO    ] time= 25/10/2026 10:47:57
[2026-10-25 10:47:57,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:47:57,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:47:58,034.034 INFO    ] No existing commands found in stream
[2026-10-25 10:48:03,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:48:03,052.052 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 10:48:06,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:48:06,724.724 INFO    ] Checking for system updates...
[2026-10-25 10:48:06,761.761 INFO    ] 200
[2026-10-25 10:48:06,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:06,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:06,825.825 INFO    ] No update needed
[2026-10-25 10:48:06,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 10:48:06,865.865 INFO    ] 200
[2026-10-25 10:48:06,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:06,909.909 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:48:06,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:06,964.964 INFO    ] No camera update needed
[2026-10-25 10:48:06,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:48:06,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:48:06,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:48:06,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:48:09,020.020 INFO    ] ================================================
[2026-10-25 10:48:09,034.034 INFO    ] Launching Daemon at Sun Oct 25 10:48:09 IST 2026
[2026-10-25 10:48:09,045.045 INFO    ] ================================================
[2026-10-25 10:48:09,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:48:09
[2026-10-25 10:48:10,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:48:10,455.455 INFO    ] Initializing speech engine...
[2026-10-25 10:48:10,463.463 INFO    ] 2026-10-25 10:48:10
[2026-10-25 10:48:10,759.759 INFO    ] 2026-10-25 10:48:10
[2026-10-25 10:48:10,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:48:10,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:48:11,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:48:11,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:48:11,156.156 INFO    ] time= 25/10/2026 10:48:11
[2026-10-25 10:48:11,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:48:11,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:48:11,263.263 INFO    ] No existing commands found in stream
[2026-10-25 10:48:16,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:48:16,278.278 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 10:48:19,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:48:19,428.428 INFO    ] Checking for system updates...
[2026-10-25 10:48:19,464.464 INFO    ] 200
[2026-10-25 10:48:19,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:19,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:19,522.522 INFO    ] No update needed
[2026-10-25 10:48:19,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 10:48:19,562.562 INFO    ] 200
[2026-10-25 10:48:19,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:19,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:48:19,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:19,660.660 INFO    ] No camera update needed
[2026-10-25 10:48:19,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:48:19,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:48:19,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:48:19,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:48:21,714.714 INFO    ] ================================================
[2026-10-25 10:48:21,733.733 INFO    ] Launching Daemon at Sun Oct 25 10:48:21 IST 2026
[2026-10-25 10:48:21,744.744 INFO    ] ================================================
[2026-10-25 10:48:22,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:48:22
[2026-10-25 10:48:22,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:48:23,205.205 INFO    ] Initializing speech engine...
[2026-10-25 10:48:23,214.214 INFO    ] 2026-10-25 10:48:23
[2026-10-25 10:48:23,462.462 INFO    ] 2026-10-25 10:48:23
[2026-10-25 10:48:23,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:48:23,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:48:23,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:48:23,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:48:23,931.931 INFO    ] time= 25/10/2026 10:48:23
[2026-10-25 10:48:23,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:48:24,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:48:24,082.082 INFO    ] No existing commands found in stream
[2026-10-25 10:48:29,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:48:29,104.104 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 10:48:32,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:48:32,155.155 INFO    ] Checking for system updates...
[2026-10-25 10:48:32,197.197 INFO    ] 200
[2026-10-25 10:48:32,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:32,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:48:32,261.261 INFO    ] No update needed
[2026-10-25 10:48:32,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 10:48:32,305.305 INFO    ] 200
[2026-10-25 10:48:32,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:32,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:48:32,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:48:32,404.404 INFO    ] No camera update needed
[2026-10-25 10:48:32,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:48:32,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:48:32,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:48:32,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:48:34,466.466 INFO    ] ================================================
[2026-10-25 10:48:34,482.482 INFO    ] Launching Daemon at Sun Oct 25 10:48:34 IST 2026
[2026-10-25 10:48:34,492.492 INFO    ] ================================================
[2026-10-25 10:48:35,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:48:35
[2026-10-25 10:48:35,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:48:35,918.918 INFO    ] Initializing speech engine...
[2026-10-25 10:48:35,927.927 INFO    ] 2026-10-25 10:48:35
[2026-10-25 10:48:36,173.173 INFO    ] 2026-10-25 10:48:36
[2026-10-25 10:48:36,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:48:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:48:36,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:48:37,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:48:37,148.148 INFO    ] time= 25/10/2026 10:48:37
[2026-10-25 10:48:37,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:48:37,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:48:37,263.263 INFO    ] No existing commands found in stream
[2026-10-25 10:48:42,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:48:42,296.296 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 10:48:43,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:48:43,644.644 INFO    ] Checking for system updates...
[2026-10-25 10:48:43,685.685 INFO    ] 200
[2026-10-25 10:48:43,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:43,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:48:43,750.750 INFO    ] No update needed
[2026-10-25 10:48:43,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 10:48:43,786.786 INFO    ] 200
[2026-10-25 10:48:43,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:43,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:48:43,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:48:43,886.886 INFO    ] No camera update needed
[2026-10-25 10:48:43,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:48:43,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:48:43,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:48:43,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:48:45,942.942 INFO    ] ================================================
[2026-10-25 10:48:45,957.957 INFO    ] Launching Daemon at Sun Oct 25 10:48:45 IST 2026
[2026-10-25 10:48:45,968.968 INFO    ] ================================================
[2026-10-25 10:48:46,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:48:46
[2026-10-25 10:48:47,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:48:47,530.530 INFO    ] Initializing speech engine...
[2026-10-25 10:48:47,538.538 INFO    ] 2026-10-25 10:48:47
[2026-10-25 10:48:47,824.824 INFO    ] 2026-10-25 10:48:47
[2026-10-25 10:48:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:48:48,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:48:48,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:48:48,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:48:48,358.358 INFO    ] time= 25/10/2026 10:48:48
[2026-10-25 10:48:48,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:48:48,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:48:48,514.514 INFO    ] No existing commands found in stream
[2026-10-25 10:48:53,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:48:53,530.530 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 10:48:57,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:48:57,250.250 INFO    ] Checking for system updates...
[2026-10-25 10:48:57,287.287 INFO    ] 200
[2026-10-25 10:48:57,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:57,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:57,352.352 INFO    ] No update needed
[2026-10-25 10:48:57,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 10:48:57,393.393 INFO    ] 200
[2026-10-25 10:48:57,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:48:57,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:48:57,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:48:57,494.494 INFO    ] No camera update needed
[2026-10-25 10:48:57,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:48:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:48:57,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:48:57,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:48:59,549.549 INFO    ] ================================================
[2026-10-25 10:48:59,564.564 INFO    ] Launching Daemon at Sun Oct 25 10:48:59 IST 2026
[2026-10-25 10:48:59,575.575 INFO    ] ================================================
[2026-10-25 10:49:00,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:49:00
[2026-10-25 10:49:00,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:49:00,974.974 INFO    ] Initializing speech engine...
[2026-10-25 10:49:00,981.981 INFO    ] 2026-10-25 10:49:00
[2026-10-25 10:49:01,263.263 INFO    ] 2026-10-25 10:49:01
[2026-10-25 10:49:01,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:49:01,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:49:01,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:49:01,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:49:01,705.705 INFO    ] time= 25/10/2026 10:49:01
[2026-10-25 10:49:01,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:49:01,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:49:01,929.929 INFO    ] No existing commands found in stream
[2026-10-25 10:49:06,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:49:06,942.942 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 10:49:10,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:49:10,674.674 INFO    ] Checking for system updates...
[2026-10-25 10:49:10,727.727 INFO    ] 200
[2026-10-25 10:49:10,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:10,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:49:10,787.787 INFO    ] No update needed
[2026-10-25 10:49:10,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 10:49:10,827.827 INFO    ] 200
[2026-10-25 10:49:10,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:10,875.875 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:49:10,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:49:10,920.920 INFO    ] No camera update needed
[2026-10-25 10:49:10,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:49:10,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:49:10,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:49:10,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:49:12,977.977 INFO    ] ================================================
[2026-10-25 10:49:12,993.993 INFO    ] Launching Daemon at Sun Oct 25 10:49:12 IST 2026
[2026-10-25 10:49:13,005.005 INFO    ] ================================================
[2026-10-25 10:49:13,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:49:13
[2026-10-25 10:49:14,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:49:14,492.492 INFO    ] Initializing speech engine...
[2026-10-25 10:49:14,505.505 INFO    ] 2026-10-25 10:49:14
[2026-10-25 10:49:14,792.792 INFO    ] 2026-10-25 10:49:14
[2026-10-25 10:49:14,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:49:15,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:49:15,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:49:15,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:49:15,325.325 INFO    ] time= 25/10/2026 10:49:15
[2026-10-25 10:49:15,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:49:15,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:49:15,484.484 INFO    ] No existing commands found in stream
[2026-10-25 10:49:20,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:49:20,507.507 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 10:49:21,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:49:21,814.814 INFO    ] Checking for system updates...
[2026-10-25 10:49:21,854.854 INFO    ] 200
[2026-10-25 10:49:21,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:21,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:21,914.914 INFO    ] No update needed
[2026-10-25 10:49:21,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 10:49:21,951.951 INFO    ] 200
[2026-10-25 10:49:21,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:22,000.000 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:49:22,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:22,060.060 INFO    ] No camera update needed
[2026-10-25 10:49:22,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:49:22,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:49:22,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:49:22,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:49:24,116.116 INFO    ] ================================================
[2026-10-25 10:49:24,132.132 INFO    ] Launching Daemon at Sun Oct 25 10:49:24 IST 2026
[2026-10-25 10:49:24,144.144 INFO    ] ================================================
[2026-10-25 10:49:24,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:49:24
[2026-10-25 10:49:25,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:49:25,772.772 INFO    ] Initializing speech engine...
[2026-10-25 10:49:25,781.781 INFO    ] 2026-10-25 10:49:25
[2026-10-25 10:49:26,053.053 INFO    ] 2026-10-25 10:49:26
[2026-10-25 10:49:26,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:49:26,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:49:26,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:49:26,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:49:26,581.581 INFO    ] time= 25/10/2026 10:49:26
[2026-10-25 10:49:26,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:49:26,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:49:26,732.732 INFO    ] No existing commands found in stream
[2026-10-25 10:49:31,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:49:31,749.749 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 10:49:38,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:49:38,049.049 INFO    ] Checking for system updates...
[2026-10-25 10:49:38,086.086 INFO    ] 200
[2026-10-25 10:49:38,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:38,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:38,147.147 INFO    ] No update needed
[2026-10-25 10:49:38,150.150 INFO    ] Checking for camera pi updates...
[2026-10-25 10:49:38,184.184 INFO    ] 200
[2026-10-25 10:49:38,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:38,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:49:38,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:38,431.431 INFO    ] No camera update needed
[2026-10-25 10:49:38,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:49:38,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:49:38,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:49:38,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:49:40,486.486 INFO    ] ================================================
[2026-10-25 10:49:40,502.502 INFO    ] Launching Daemon at Sun Oct 25 10:49:40 IST 2026
[2026-10-25 10:49:40,513.513 INFO    ] ================================================
[2026-10-25 10:49:41,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:49:41
[2026-10-25 10:49:41,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:49:42,024.024 INFO    ] Initializing speech engine...
[2026-10-25 10:49:42,031.031 INFO    ] 2026-10-25 10:49:42
[2026-10-25 10:49:42,293.293 INFO    ] 2026-10-25 10:49:42
[2026-10-25 10:49:42,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:49:42,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:49:42,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:49:42,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:49:42,755.755 INFO    ] time= 25/10/2026 10:49:42
[2026-10-25 10:49:42,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:49:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:49:42,904.904 INFO    ] No existing commands found in stream
[2026-10-25 10:49:47,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:49:47,919.919 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 10:49:48,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:49:48,798.798 INFO    ] Checking for system updates...
[2026-10-25 10:49:48,846.846 INFO    ] 200
[2026-10-25 10:49:48,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:48,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:48,918.918 INFO    ] No update needed
[2026-10-25 10:49:48,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 10:49:48,962.962 INFO    ] 200
[2026-10-25 10:49:48,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:49:49,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:49:49,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:49:49,062.062 INFO    ] No camera update needed
[2026-10-25 10:49:49,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:49:49,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:49:49,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:49:49,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:49:51,119.119 INFO    ] ================================================
[2026-10-25 10:49:51,135.135 INFO    ] Launching Daemon at Sun Oct 25 10:49:51 IST 2026
[2026-10-25 10:49:51,146.146 INFO    ] ================================================
[2026-10-25 10:49:51,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:49:51
[2026-10-25 10:49:52,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:49:52,661.661 INFO    ] Initializing speech engine...
[2026-10-25 10:49:52,668.668 INFO    ] 2026-10-25 10:49:52
[2026-10-25 10:49:52,968.968 INFO    ] 2026-10-25 10:49:52
[2026-10-25 10:49:53,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:49:53,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:49:53,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:49:53,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:49:53,359.359 INFO    ] time= 25/10/2026 10:49:53
[2026-10-25 10:49:53,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:49:53,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:49:53,544.544 INFO    ] No existing commands found in stream
[2026-10-25 10:49:58,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:49:58,565.565 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 10:50:05,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:50:05,447.447 INFO    ] Checking for system updates...
[2026-10-25 10:50:05,487.487 INFO    ] 200
[2026-10-25 10:50:05,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:05,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:05,553.553 INFO    ] No update needed
[2026-10-25 10:50:05,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 10:50:05,589.589 INFO    ] 200
[2026-10-25 10:50:05,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:05,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:50:05,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:05,685.685 INFO    ] No camera update needed
[2026-10-25 10:50:05,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:50:05,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:50:05,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:50:05,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:50:07,741.741 INFO    ] ================================================
[2026-10-25 10:50:07,756.756 INFO    ] Launching Daemon at Sun Oct 25 10:50:07 IST 2026
[2026-10-25 10:50:07,768.768 INFO    ] ================================================
[2026-10-25 10:50:08,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:50:08
[2026-10-25 10:50:08,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:50:09,208.208 INFO    ] Initializing speech engine...
[2026-10-25 10:50:09,215.215 INFO    ] 2026-10-25 10:50:09
[2026-10-25 10:50:09,458.458 INFO    ] 2026-10-25 10:50:09
[2026-10-25 10:50:09,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:50:09,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:50:09,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:50:09,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:50:09,825.825 INFO    ] time= 25/10/2026 10:50:09
[2026-10-25 10:50:09,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:50:09,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:50:10,007.007 INFO    ] No existing commands found in stream
[2026-10-25 10:50:15,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:50:15,034.034 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 10:50:16,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:50:16,222.222 INFO    ] Checking for system updates...
[2026-10-25 10:50:16,262.262 INFO    ] 200
[2026-10-25 10:50:16,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:16,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:16,327.327 INFO    ] No update needed
[2026-10-25 10:50:16,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 10:50:16,367.367 INFO    ] 200
[2026-10-25 10:50:16,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:16,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:50:16,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:16,468.468 INFO    ] No camera update needed
[2026-10-25 10:50:16,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:50:16,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:50:16,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:50:16,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:50:18,526.526 INFO    ] ================================================
[2026-10-25 10:50:18,542.542 INFO    ] Launching Daemon at Sun Oct 25 10:50:18 IST 2026
[2026-10-25 10:50:18,554.554 INFO    ] ================================================
[2026-10-25 10:50:19,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:50:19
[2026-10-25 10:50:19,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:50:20,179.179 INFO    ] Initializing speech engine...
[2026-10-25 10:50:20,191.191 INFO    ] 2026-10-25 10:50:20
[2026-10-25 10:50:20,503.503 INFO    ] 2026-10-25 10:50:20
[2026-10-25 10:50:20,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:50:20,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:50:20,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:50:20,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:50:21,006.006 INFO    ] time= 25/10/2026 10:50:20
[2026-10-25 10:50:21,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:50:21,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:50:21,167.167 INFO    ] No existing commands found in stream
[2026-10-25 10:50:26,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:50:26,189.189 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 10:50:29,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:50:29,189.189 INFO    ] Checking for system updates...
[2026-10-25 10:50:29,234.234 INFO    ] 200
[2026-10-25 10:50:29,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:29,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:29,294.294 INFO    ] No update needed
[2026-10-25 10:50:29,296.296 INFO    ] Checking for camera pi updates...
[2026-10-25 10:50:29,334.334 INFO    ] 200
[2026-10-25 10:50:29,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:29,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:50:29,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:29,435.435 INFO    ] No camera update needed
[2026-10-25 10:50:29,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:50:29,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:50:29,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:50:29,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:50:31,491.491 INFO    ] ================================================
[2026-10-25 10:50:31,507.507 INFO    ] Launching Daemon at Sun Oct 25 10:50:31 IST 2026
[2026-10-25 10:50:31,518.518 INFO    ] ================================================
[2026-10-25 10:50:32,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:50:32
[2026-10-25 10:50:32,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:50:33,032.032 INFO    ] Initializing speech engine...
[2026-10-25 10:50:33,041.041 INFO    ] 2026-10-25 10:50:33
[2026-10-25 10:50:33,288.288 INFO    ] 2026-10-25 10:50:33
[2026-10-25 10:50:33,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:50:33,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:50:33,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:50:33,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:50:33,666.666 INFO    ] time= 25/10/2026 10:50:33
[2026-10-25 10:50:33,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:50:33,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:50:33,844.844 INFO    ] No existing commands found in stream
[2026-10-25 10:50:38,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:50:38,873.873 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 10:50:42,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:50:42,344.344 INFO    ] Checking for system updates...
[2026-10-25 10:50:42,382.382 INFO    ] 200
[2026-10-25 10:50:42,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:42,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:42,448.448 INFO    ] No update needed
[2026-10-25 10:50:42,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 10:50:42,492.492 INFO    ] 200
[2026-10-25 10:50:42,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:42,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:50:42,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:42,580.580 INFO    ] No camera update needed
[2026-10-25 10:50:42,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:50:42,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:50:42,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:50:42,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:50:44,634.634 INFO    ] ================================================
[2026-10-25 10:50:44,650.650 INFO    ] Launching Daemon at Sun Oct 25 10:50:44 IST 2026
[2026-10-25 10:50:44,662.662 INFO    ] ================================================
[2026-10-25 10:50:45,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:50:45
[2026-10-25 10:50:46,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:50:46,322.322 INFO    ] Initializing speech engine...
[2026-10-25 10:50:46,334.334 INFO    ] 2026-10-25 10:50:46
[2026-10-25 10:50:46,615.615 INFO    ] 2026-10-25 10:50:46
[2026-10-25 10:50:46,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:50:46,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:50:46,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:50:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:50:47,151.151 INFO    ] time= 25/10/2026 10:50:47
[2026-10-25 10:50:47,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:50:47,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:50:47,310.310 INFO    ] No existing commands found in stream
[2026-10-25 10:50:52,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:50:52,334.334 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 10:50:54,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:50:54,565.565 INFO    ] Checking for system updates...
[2026-10-25 10:50:54,601.601 INFO    ] 200
[2026-10-25 10:50:54,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:54,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:54,671.671 INFO    ] No update needed
[2026-10-25 10:50:54,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 10:50:54,712.712 INFO    ] 200
[2026-10-25 10:50:54,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:50:54,761.761 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:50:54,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:50:54,811.811 INFO    ] No camera update needed
[2026-10-25 10:50:54,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:50:54,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:50:54,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:50:54,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:50:56,865.865 INFO    ] ================================================
[2026-10-25 10:50:56,882.882 INFO    ] Launching Daemon at Sun Oct 25 10:50:56 IST 2026
[2026-10-25 10:50:56,896.896 INFO    ] ================================================
[2026-10-25 10:50:57,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:50:57
[2026-10-25 10:50:58,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:50:58,318.318 INFO    ] Initializing speech engine...
[2026-10-25 10:50:58,327.327 INFO    ] 2026-10-25 10:50:58
[2026-10-25 10:50:58,573.573 INFO    ] 2026-10-25 10:50:58
[2026-10-25 10:50:58,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:50:58,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:50:58,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:50:59,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:50:59,044.044 INFO    ] time= 25/10/2026 10:50:59
[2026-10-25 10:50:59,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:50:59,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:50:59,191.191 INFO    ] No existing commands found in stream
[2026-10-25 10:51:04,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:51:04,206.206 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 10:51:05,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:51:05,311.311 INFO    ] Checking for system updates...
[2026-10-25 10:51:05,347.347 INFO    ] 200
[2026-10-25 10:51:05,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:05,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:51:05,414.414 INFO    ] No update needed
[2026-10-25 10:51:05,416.416 INFO    ] Checking for camera pi updates...
[2026-10-25 10:51:05,449.449 INFO    ] 200
[2026-10-25 10:51:05,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:05,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:51:05,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:51:05,547.547 INFO    ] No camera update needed
[2026-10-25 10:51:05,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:51:05,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:51:05,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:51:05,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:51:07,602.602 INFO    ] ================================================
[2026-10-25 10:51:07,618.618 INFO    ] Launching Daemon at Sun Oct 25 10:51:07 IST 2026
[2026-10-25 10:51:07,629.629 INFO    ] ================================================
[2026-10-25 10:51:08,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:51:08
[2026-10-25 10:51:08,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:51:09,056.056 INFO    ] Initializing speech engine...
[2026-10-25 10:51:09,065.065 INFO    ] 2026-10-25 10:51:09
[2026-10-25 10:51:09,309.309 INFO    ] 2026-10-25 10:51:09
[2026-10-25 10:51:09,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:51:10,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:51:10,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:51:10,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:51:10,740.740 INFO    ] time= 25/10/2026 10:51:10
[2026-10-25 10:51:10,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:51:10,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:51:10,816.816 INFO    ] No existing commands found in stream
[2026-10-25 10:51:15,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:51:15,829.829 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 10:51:19,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:51:19,886.886 INFO    ] Checking for system updates...
[2026-10-25 10:51:19,922.922 INFO    ] 200
[2026-10-25 10:51:19,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:19,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:19,987.987 INFO    ] No update needed
[2026-10-25 10:51:19,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 10:51:20,027.027 INFO    ] 200
[2026-10-25 10:51:20,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:20,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:51:20,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:20,126.126 INFO    ] No camera update needed
[2026-10-25 10:51:20,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:51:20,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:51:20,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:51:20,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:51:22,183.183 INFO    ] ================================================
[2026-10-25 10:51:22,199.199 INFO    ] Launching Daemon at Sun Oct 25 10:51:22 IST 2026
[2026-10-25 10:51:22,210.210 INFO    ] ================================================
[2026-10-25 10:51:22,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:51:22
[2026-10-25 10:51:23,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:51:23,630.630 INFO    ] Initializing speech engine...
[2026-10-25 10:51:23,638.638 INFO    ] 2026-10-25 10:51:23
[2026-10-25 10:51:23,934.934 INFO    ] 2026-10-25 10:51:23
[2026-10-25 10:51:23,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:51:24,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:51:24,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:51:24,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:51:24,351.351 INFO    ] time= 25/10/2026 10:51:24
[2026-10-25 10:51:24,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:51:24,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:51:24,443.443 INFO    ] No existing commands found in stream
[2026-10-25 10:51:29,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:51:29,458.458 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 10:51:31,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:51:31,650.650 INFO    ] Checking for system updates...
[2026-10-25 10:51:31,686.686 INFO    ] 200
[2026-10-25 10:51:31,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:31,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:31,752.752 INFO    ] No update needed
[2026-10-25 10:51:31,754.754 INFO    ] Checking for camera pi updates...
[2026-10-25 10:51:31,789.789 INFO    ] 200
[2026-10-25 10:51:31,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:31,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:51:31,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:31,876.876 INFO    ] No camera update needed
[2026-10-25 10:51:31,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:51:31,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:51:31,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:51:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:51:33,932.932 INFO    ] ================================================
[2026-10-25 10:51:33,947.947 INFO    ] Launching Daemon at Sun Oct 25 10:51:33 IST 2026
[2026-10-25 10:51:33,957.957 INFO    ] ================================================
[2026-10-25 10:51:34,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:51:34
[2026-10-25 10:51:35,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:51:35,408.408 INFO    ] Initializing speech engine...
[2026-10-25 10:51:35,434.434 INFO    ] 2026-10-25 10:51:35
[2026-10-25 10:51:35,707.707 INFO    ] 2026-10-25 10:51:35
[2026-10-25 10:51:35,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:51:35,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:51:35,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:51:36,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:51:36,064.064 INFO    ] time= 25/10/2026 10:51:36
[2026-10-25 10:51:36,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:51:36,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:51:36,146.146 INFO    ] No existing commands found in stream
[2026-10-25 10:51:41,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:51:41,160.160 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 10:51:42,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:51:42,325.325 INFO    ] Checking for system updates...
[2026-10-25 10:51:42,366.366 INFO    ] 200
[2026-10-25 10:51:42,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:42,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:42,433.433 INFO    ] No update needed
[2026-10-25 10:51:42,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 10:51:42,473.473 INFO    ] 200
[2026-10-25 10:51:42,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:42,522.522 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:51:42,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:42,686.686 INFO    ] No camera update needed
[2026-10-25 10:51:42,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:51:42,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:51:42,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:51:42,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:51:44,741.741 INFO    ] ================================================
[2026-10-25 10:51:44,756.756 INFO    ] Launching Daemon at Sun Oct 25 10:51:44 IST 2026
[2026-10-25 10:51:44,767.767 INFO    ] ================================================
[2026-10-25 10:51:45,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:51:45
[2026-10-25 10:51:45,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:51:46,217.217 INFO    ] Initializing speech engine...
[2026-10-25 10:51:46,226.226 INFO    ] 2026-10-25 10:51:46
[2026-10-25 10:51:46,486.486 INFO    ] 2026-10-25 10:51:46
[2026-10-25 10:51:46,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:51:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:51:46,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:51:46,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:51:46,969.969 INFO    ] time= 25/10/2026 10:51:46
[2026-10-25 10:51:47,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:51:47,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:51:47,178.178 INFO    ] No existing commands found in stream
[2026-10-25 10:51:52,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:51:52,197.197 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 10:51:55,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:51:55,869.869 INFO    ] Checking for system updates...
[2026-10-25 10:51:55,910.910 INFO    ] 200
[2026-10-25 10:51:55,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:55,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:55,968.968 INFO    ] No update needed
[2026-10-25 10:51:55,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 10:51:56,009.009 INFO    ] 200
[2026-10-25 10:51:56,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:51:56,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:51:56,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:51:56,109.109 INFO    ] No camera update needed
[2026-10-25 10:51:56,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:51:56,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:51:56,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:51:56,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:51:58,163.163 INFO    ] ================================================
[2026-10-25 10:51:58,178.178 INFO    ] Launching Daemon at Sun Oct 25 10:51:58 IST 2026
[2026-10-25 10:51:58,189.189 INFO    ] ================================================
[2026-10-25 10:51:58,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:51:58
[2026-10-25 10:51:59,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:51:59,603.603 INFO    ] Initializing speech engine...
[2026-10-25 10:51:59,618.618 INFO    ] 2026-10-25 10:51:59
[2026-10-25 10:51:59,886.886 INFO    ] 2026-10-25 10:51:59
[2026-10-25 10:51:59,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:52:00,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:52:00,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:52:00,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:52:00,262.262 INFO    ] time= 25/10/2026 10:52:00
[2026-10-25 10:52:00,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:52:00,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:52:00,432.432 INFO    ] No existing commands found in stream
[2026-10-25 10:52:05,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:52:05,461.461 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 10:52:07,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:52:07,169.169 INFO    ] Checking for system updates...
[2026-10-25 10:52:07,208.208 INFO    ] 200
[2026-10-25 10:52:07,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:07,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:07,266.266 INFO    ] No update needed
[2026-10-25 10:52:07,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 10:52:07,309.309 INFO    ] 200
[2026-10-25 10:52:07,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:07,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:52:07,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:07,403.403 INFO    ] No camera update needed
[2026-10-25 10:52:07,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:52:07,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:52:07,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:52:07,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:52:09,459.459 INFO    ] ================================================
[2026-10-25 10:52:09,475.475 INFO    ] Launching Daemon at Sun Oct 25 10:52:09 IST 2026
[2026-10-25 10:52:09,486.486 INFO    ] ================================================
[2026-10-25 10:52:10,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:52:10
[2026-10-25 10:52:10,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:52:10,935.935 INFO    ] Initializing speech engine...
[2026-10-25 10:52:10,945.945 INFO    ] 2026-10-25 10:52:10
[2026-10-25 10:52:11,204.204 INFO    ] 2026-10-25 10:52:11
[2026-10-25 10:52:11,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:52:12,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:52:12,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:52:12,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:52:12,545.545 INFO    ] time= 25/10/2026 10:52:12
[2026-10-25 10:52:12,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:52:12,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:52:12,607.607 INFO    ] No existing commands found in stream
[2026-10-25 10:52:17,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:52:17,622.622 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 10:52:19,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:52:19,805.805 INFO    ] Checking for system updates...
[2026-10-25 10:52:19,844.844 INFO    ] 200
[2026-10-25 10:52:19,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:19,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:19,908.908 INFO    ] No update needed
[2026-10-25 10:52:19,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 10:52:19,947.947 INFO    ] 200
[2026-10-25 10:52:19,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:19,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:52:20,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:20,042.042 INFO    ] No camera update needed
[2026-10-25 10:52:20,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:52:20,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:52:20,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:52:20,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:52:22,098.098 INFO    ] ================================================
[2026-10-25 10:52:22,114.114 INFO    ] Launching Daemon at Sun Oct 25 10:52:22 IST 2026
[2026-10-25 10:52:22,125.125 INFO    ] ================================================
[2026-10-25 10:52:22,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:52:22
[2026-10-25 10:52:23,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:52:23,545.545 INFO    ] Initializing speech engine...
[2026-10-25 10:52:23,554.554 INFO    ] 2026-10-25 10:52:23
[2026-10-25 10:52:23,810.810 INFO    ] 2026-10-25 10:52:23
[2026-10-25 10:52:23,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:52:24,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:52:24,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:52:24,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:52:24,274.274 INFO    ] time= 25/10/2026 10:52:24
[2026-10-25 10:52:24,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:52:24,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:52:24,420.420 INFO    ] No existing commands found in stream
[2026-10-25 10:52:29,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:52:29,434.434 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 10:52:31,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:52:31,341.341 INFO    ] Checking for system updates...
[2026-10-25 10:52:31,377.377 INFO    ] 200
[2026-10-25 10:52:31,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:31,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:31,443.443 INFO    ] No update needed
[2026-10-25 10:52:31,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 10:52:31,482.482 INFO    ] 200
[2026-10-25 10:52:31,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:31,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:52:31,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:31,568.568 INFO    ] No camera update needed
[2026-10-25 10:52:31,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:52:31,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:52:31,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:52:31,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:52:33,624.624 INFO    ] ================================================
[2026-10-25 10:52:33,640.640 INFO    ] Launching Daemon at Sun Oct 25 10:52:33 IST 2026
[2026-10-25 10:52:33,650.650 INFO    ] ================================================
[2026-10-25 10:52:34,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:52:34
[2026-10-25 10:52:34,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:52:35,155.155 INFO    ] Initializing speech engine...
[2026-10-25 10:52:35,168.168 INFO    ] 2026-10-25 10:52:35
[2026-10-25 10:52:35,445.445 INFO    ] 2026-10-25 10:52:35
[2026-10-25 10:52:35,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:52:35,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:52:35,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:52:35,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:52:35,813.813 INFO    ] time= 25/10/2026 10:52:35
[2026-10-25 10:52:35,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:52:35,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:52:35,932.932 INFO    ] No existing commands found in stream
[2026-10-25 10:52:40,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:52:40,947.947 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 10:52:43,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:52:43,829.829 INFO    ] Checking for system updates...
[2026-10-25 10:52:43,865.865 INFO    ] 200
[2026-10-25 10:52:43,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:43,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:52:43,927.927 INFO    ] No update needed
[2026-10-25 10:52:43,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 10:52:43,963.963 INFO    ] 200
[2026-10-25 10:52:43,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:44,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:52:44,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:52:44,061.061 INFO    ] No camera update needed
[2026-10-25 10:52:44,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:52:44,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:52:44,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:52:44,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:52:46,116.116 INFO    ] ================================================
[2026-10-25 10:52:46,131.131 INFO    ] Launching Daemon at Sun Oct 25 10:52:46 IST 2026
[2026-10-25 10:52:46,143.143 INFO    ] ================================================
[2026-10-25 10:52:46,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:52:46
[2026-10-25 10:52:47,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:52:47,559.559 INFO    ] Initializing speech engine...
[2026-10-25 10:52:47,583.583 INFO    ] 2026-10-25 10:52:47
[2026-10-25 10:52:47,837.837 INFO    ] 2026-10-25 10:52:47
[2026-10-25 10:52:47,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:52:48,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:52:48,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:52:48,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:52:48,332.332 INFO    ] time= 25/10/2026 10:52:48
[2026-10-25 10:52:48,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:52:48,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:52:48,522.522 INFO    ] No existing commands found in stream
[2026-10-25 10:52:53,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:52:53,547.547 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 10:52:57,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:52:57,843.843 INFO    ] Checking for system updates...
[2026-10-25 10:52:57,882.882 INFO    ] 200
[2026-10-25 10:52:57,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:57,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:57,944.944 INFO    ] No update needed
[2026-10-25 10:52:57,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 10:52:57,982.982 INFO    ] 200
[2026-10-25 10:52:57,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:52:58,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:52:58,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:52:58,086.086 INFO    ] No camera update needed
[2026-10-25 10:52:58,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:52:58,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:52:58,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:52:58,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:53:00,142.142 INFO    ] ================================================
[2026-10-25 10:53:00,157.157 INFO    ] Launching Daemon at Sun Oct 25 10:53:00 IST 2026
[2026-10-25 10:53:00,168.168 INFO    ] ================================================
[2026-10-25 10:53:00,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:53:00
[2026-10-25 10:53:01,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:53:01,947.947 INFO    ] Initializing speech engine...
[2026-10-25 10:53:01,962.962 INFO    ] 2026-10-25 10:53:01
[2026-10-25 10:53:02,246.246 INFO    ] 2026-10-25 10:53:02
[2026-10-25 10:53:02,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:53:02,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:53:02,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:53:02,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:53:02,774.774 INFO    ] time= 25/10/2026 10:53:02
[2026-10-25 10:53:02,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:53:02,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:53:02,881.881 INFO    ] No existing commands found in stream
[2026-10-25 10:53:07,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:53:07,906.906 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 10:53:10,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:53:10,135.135 INFO    ] Checking for system updates...
[2026-10-25 10:53:10,176.176 INFO    ] 200
[2026-10-25 10:53:10,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:10,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:53:10,241.241 INFO    ] No update needed
[2026-10-25 10:53:10,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 10:53:10,282.282 INFO    ] 200
[2026-10-25 10:53:10,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:10,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:53:10,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:53:10,378.378 INFO    ] No camera update needed
[2026-10-25 10:53:10,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:53:10,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:53:10,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:53:10,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:53:12,433.433 INFO    ] ================================================
[2026-10-25 10:53:12,451.451 INFO    ] Launching Daemon at Sun Oct 25 10:53:12 IST 2026
[2026-10-25 10:53:12,462.462 INFO    ] ================================================
[2026-10-25 10:53:13,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:53:13
[2026-10-25 10:53:13,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:53:13,924.924 INFO    ] Initializing speech engine...
[2026-10-25 10:53:13,935.935 INFO    ] 2026-10-25 10:53:13
[2026-10-25 10:53:14,196.196 INFO    ] 2026-10-25 10:53:14
[2026-10-25 10:53:14,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:53:14,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:53:14,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:53:14,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:53:14,690.690 INFO    ] time= 25/10/2026 10:53:14
[2026-10-25 10:53:14,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:53:14,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:53:14,814.814 INFO    ] No existing commands found in stream
[2026-10-25 10:53:19,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:53:19,829.829 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 10:53:23,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:53:23,499.499 INFO    ] Checking for system updates...
[2026-10-25 10:53:23,544.544 INFO    ] 200
[2026-10-25 10:53:23,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 10:53:23,549.549 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 10:53:23,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 10:53:23,606.606 INFO    ] 200
[2026-10-25 10:53:23,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 10:53:23,612.612 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 10:53:23,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:53:23,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:53:23,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:53:23,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:53:25,674.674 INFO    ] ================================================
[2026-10-25 10:53:25,689.689 INFO    ] Launching Daemon at Sun Oct 25 10:53:25 IST 2026
[2026-10-25 10:53:25,700.700 INFO    ] ================================================
[2026-10-25 10:53:26,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:53:26
[2026-10-25 10:53:26,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:53:27,175.175 INFO    ] Initializing speech engine...
[2026-10-25 10:53:27,191.191 INFO    ] 2026-10-25 10:53:27
[2026-10-25 10:53:27,454.454 INFO    ] 2026-10-25 10:53:27
[2026-10-25 10:53:27,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:53:27,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:53:27,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:53:27,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:53:27,812.812 INFO    ] time= 25/10/2026 10:53:27
[2026-10-25 10:53:27,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:53:27,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:53:27,909.909 INFO    ] No existing commands found in stream
[2026-10-25 10:53:32,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:53:32,924.924 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 10:53:34,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:53:34,264.264 INFO    ] Checking for system updates...
[2026-10-25 10:53:34,304.304 INFO    ] 200
[2026-10-25 10:53:34,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:34,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:53:34,363.363 INFO    ] No update needed
[2026-10-25 10:53:34,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 10:53:34,404.404 INFO    ] 200
[2026-10-25 10:53:34,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:34,446.446 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:53:34,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:53:34,495.495 INFO    ] No camera update needed
[2026-10-25 10:53:34,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:53:34,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:53:34,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:53:34,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:53:36,552.552 INFO    ] ================================================
[2026-10-25 10:53:36,567.567 INFO    ] Launching Daemon at Sun Oct 25 10:53:36 IST 2026
[2026-10-25 10:53:36,578.578 INFO    ] ================================================
[2026-10-25 10:53:37,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:53:37
[2026-10-25 10:53:37,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:53:38,035.035 INFO    ] Initializing speech engine...
[2026-10-25 10:53:38,044.044 INFO    ] 2026-10-25 10:53:38
[2026-10-25 10:53:38,294.294 INFO    ] 2026-10-25 10:53:38
[2026-10-25 10:53:38,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:53:38,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:53:38,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:53:38,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:53:38,763.763 INFO    ] time= 25/10/2026 10:53:38
[2026-10-25 10:53:38,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:53:38,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:53:38,911.911 INFO    ] No existing commands found in stream
[2026-10-25 10:53:43,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:53:43,925.925 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 10:53:45,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:53:45,982.982 INFO    ] Checking for system updates...
[2026-10-25 10:53:46,019.019 INFO    ] 200
[2026-10-25 10:53:46,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:46,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:53:46,077.077 INFO    ] No update needed
[2026-10-25 10:53:46,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 10:53:46,119.119 INFO    ] 200
[2026-10-25 10:53:46,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:53:46,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:53:46,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:53:46,316.316 INFO    ] No camera update needed
[2026-10-25 10:53:46,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:53:46,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:53:46,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:53:46,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:53:48,376.376 INFO    ] ================================================
[2026-10-25 10:53:48,391.391 INFO    ] Launching Daemon at Sun Oct 25 10:53:48 IST 2026
[2026-10-25 10:53:48,402.402 INFO    ] ================================================
[2026-10-25 10:53:48,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:53:48
[2026-10-25 10:53:49,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:53:49,846.846 INFO    ] Initializing speech engine...
[2026-10-25 10:53:49,869.869 INFO    ] 2026-10-25 10:53:49
[2026-10-25 10:53:50,126.126 INFO    ] 2026-10-25 10:53:50
[2026-10-25 10:53:50,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:53:50,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:53:50,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:53:50,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:53:50,619.619 INFO    ] time= 25/10/2026 10:53:50
[2026-10-25 10:53:50,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:53:50,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:53:50,808.808 INFO    ] No existing commands found in stream
[2026-10-25 10:53:55,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:53:55,841.841 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 10:54:00,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:54:00,103.103 INFO    ] Checking for system updates...
[2026-10-25 10:54:00,141.141 INFO    ] 200
[2026-10-25 10:54:00,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:00,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:54:00,210.210 INFO    ] No update needed
[2026-10-25 10:54:00,213.213 INFO    ] Checking for camera pi updates...
[2026-10-25 10:54:00,252.252 INFO    ] 200
[2026-10-25 10:54:00,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:00,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:54:00,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:54:00,355.355 INFO    ] No camera update needed
[2026-10-25 10:54:00,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:54:00,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:54:00,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:54:00,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:54:02,434.434 INFO    ] ================================================
[2026-10-25 10:54:02,454.454 INFO    ] Launching Daemon at Sun Oct 25 10:54:02 IST 2026
[2026-10-25 10:54:02,465.465 INFO    ] ================================================
[2026-10-25 10:54:03,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:54:03
[2026-10-25 10:54:03,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:54:03,952.952 INFO    ] Initializing speech engine...
[2026-10-25 10:54:03,965.965 INFO    ] 2026-10-25 10:54:03
[2026-10-25 10:54:04,229.229 INFO    ] 2026-10-25 10:54:04
[2026-10-25 10:54:04,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:54:04,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:54:04,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:54:04,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:54:04,727.727 INFO    ] time= 25/10/2026 10:54:04
[2026-10-25 10:54:04,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:54:04,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:54:04,913.913 INFO    ] No existing commands found in stream
[2026-10-25 10:54:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:54:09,937.937 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 10:54:10,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:54:10,442.442 INFO    ] Checking for system updates...
[2026-10-25 10:54:10,481.481 INFO    ] 200
[2026-10-25 10:54:10,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:10,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:10,545.545 INFO    ] No update needed
[2026-10-25 10:54:10,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 10:54:10,582.582 INFO    ] 200
[2026-10-25 10:54:10,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:10,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:54:10,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:10,677.677 INFO    ] No camera update needed
[2026-10-25 10:54:10,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:54:10,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:54:10,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:54:10,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:54:12,735.735 INFO    ] ================================================
[2026-10-25 10:54:12,750.750 INFO    ] Launching Daemon at Sun Oct 25 10:54:12 IST 2026
[2026-10-25 10:54:12,761.761 INFO    ] ================================================
[2026-10-25 10:54:13,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:54:13
[2026-10-25 10:54:14,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:54:14,310.310 INFO    ] Initializing speech engine...
[2026-10-25 10:54:14,319.319 INFO    ] 2026-10-25 10:54:14
[2026-10-25 10:54:14,566.566 INFO    ] 2026-10-25 10:54:14
[2026-10-25 10:54:14,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:54:15,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:54:15,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:54:16,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:54:16,258.258 INFO    ] time= 25/10/2026 10:54:16
[2026-10-25 10:54:16,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:54:16,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:54:16,365.365 INFO    ] No existing commands found in stream
[2026-10-25 10:54:21,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:54:21,379.379 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 10:54:24,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:54:24,899.899 INFO    ] Checking for system updates...
[2026-10-25 10:54:24,935.935 INFO    ] 200
[2026-10-25 10:54:24,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:24,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:54:24,993.993 INFO    ] No update needed
[2026-10-25 10:54:24,995.995 INFO    ] Checking for camera pi updates...
[2026-10-25 10:54:25,040.040 INFO    ] 200
[2026-10-25 10:54:25,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:25,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:54:25,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:54:25,136.136 INFO    ] No camera update needed
[2026-10-25 10:54:25,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:54:25,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:54:25,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:54:25,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:54:27,191.191 INFO    ] ================================================
[2026-10-25 10:54:27,206.206 INFO    ] Launching Daemon at Sun Oct 25 10:54:27 IST 2026
[2026-10-25 10:54:27,217.217 INFO    ] ================================================
[2026-10-25 10:54:27,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:54:27
[2026-10-25 10:54:28,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:54:28,611.611 INFO    ] Initializing speech engine...
[2026-10-25 10:54:28,626.626 INFO    ] 2026-10-25 10:54:28
[2026-10-25 10:54:28,891.891 INFO    ] 2026-10-25 10:54:28
[2026-10-25 10:54:28,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:54:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:54:29,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:54:29,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:54:29,363.363 INFO    ] time= 25/10/2026 10:54:29
[2026-10-25 10:54:29,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:54:29,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:54:29,578.578 INFO    ] No existing commands found in stream
[2026-10-25 10:54:34,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:54:34,613.613 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 10:54:36,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:54:36,006.006 INFO    ] Checking for system updates...
[2026-10-25 10:54:36,047.047 INFO    ] 200
[2026-10-25 10:54:36,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:36,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:36,115.115 INFO    ] No update needed
[2026-10-25 10:54:36,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 10:54:36,153.153 INFO    ] 200
[2026-10-25 10:54:36,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:36,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:54:36,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:36,266.266 INFO    ] No camera update needed
[2026-10-25 10:54:36,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:54:36,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:54:36,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:54:36,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:54:38,322.322 INFO    ] ================================================
[2026-10-25 10:54:38,337.337 INFO    ] Launching Daemon at Sun Oct 25 10:54:38 IST 2026
[2026-10-25 10:54:38,347.347 INFO    ] ================================================
[2026-10-25 10:54:38,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:54:38
[2026-10-25 10:54:39,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:54:39,773.773 INFO    ] Initializing speech engine...
[2026-10-25 10:54:39,779.779 INFO    ] 2026-10-25 10:54:39
[2026-10-25 10:54:40,028.028 INFO    ] 2026-10-25 10:54:40
[2026-10-25 10:54:40,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:54:40,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:54:40,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:54:40,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:54:40,517.517 INFO    ] time= 25/10/2026 10:54:40
[2026-10-25 10:54:40,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:54:40,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:54:40,657.657 INFO    ] No existing commands found in stream
[2026-10-25 10:54:45,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:54:45,672.672 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 10:54:50,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:54:50,102.102 INFO    ] Checking for system updates...
[2026-10-25 10:54:50,142.142 INFO    ] 200
[2026-10-25 10:54:50,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:50,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:50,207.207 INFO    ] No update needed
[2026-10-25 10:54:50,209.209 INFO    ] Checking for camera pi updates...
[2026-10-25 10:54:50,247.247 INFO    ] 200
[2026-10-25 10:54:50,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:54:50,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:54:50,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:54:50,343.343 INFO    ] No camera update needed
[2026-10-25 10:54:50,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:54:50,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:54:50,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:54:50,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:54:52,398.398 INFO    ] ================================================
[2026-10-25 10:54:52,413.413 INFO    ] Launching Daemon at Sun Oct 25 10:54:52 IST 2026
[2026-10-25 10:54:52,424.424 INFO    ] ================================================
[2026-10-25 10:54:53,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:54:53
[2026-10-25 10:54:53,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:54:53,992.992 INFO    ] Initializing speech engine...
[2026-10-25 10:54:54,001.001 INFO    ] 2026-10-25 10:54:53
[2026-10-25 10:54:54,246.246 INFO    ] 2026-10-25 10:54:54
[2026-10-25 10:54:54,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:54:54,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:54:54,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:54:54,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:54:54,755.755 INFO    ] time= 25/10/2026 10:54:54
[2026-10-25 10:54:54,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:54:54,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:54:54,944.944 INFO    ] No existing commands found in stream
[2026-10-25 10:54:59,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:54:59,966.966 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 10:55:03,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:55:03,641.641 INFO    ] Checking for system updates...
[2026-10-25 10:55:03,682.682 INFO    ] 200
[2026-10-25 10:55:03,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:03,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:03,742.742 INFO    ] No update needed
[2026-10-25 10:55:03,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 10:55:03,780.780 INFO    ] 200
[2026-10-25 10:55:03,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:03,826.826 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:55:03,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:03,878.878 INFO    ] No camera update needed
[2026-10-25 10:55:03,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:55:03,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:55:03,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:55:03,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:55:05,935.935 INFO    ] ================================================
[2026-10-25 10:55:05,950.950 INFO    ] Launching Daemon at Sun Oct 25 10:55:05 IST 2026
[2026-10-25 10:55:05,961.961 INFO    ] ================================================
[2026-10-25 10:55:06,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:55:06
[2026-10-25 10:55:07,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:55:07,610.610 INFO    ] Initializing speech engine...
[2026-10-25 10:55:07,624.624 INFO    ] 2026-10-25 10:55:07
[2026-10-25 10:55:07,899.899 INFO    ] 2026-10-25 10:55:07
[2026-10-25 10:55:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:55:08,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:55:08,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:55:08,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:55:08,368.368 INFO    ] time= 25/10/2026 10:55:08
[2026-10-25 10:55:08,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:55:08,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:55:08,519.519 INFO    ] No existing commands found in stream
[2026-10-25 10:55:13,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:55:13,555.555 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 10:55:18,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 10:55:18,024.024 INFO    ] Checking for system updates...
[2026-10-25 10:55:18,062.062 INFO    ] 200
[2026-10-25 10:55:18,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:18,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:18,121.121 INFO    ] No update needed
[2026-10-25 10:55:18,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 10:55:18,162.162 INFO    ] 200
[2026-10-25 10:55:18,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:18,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:55:18,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:18,262.262 INFO    ] No camera update needed
[2026-10-25 10:55:18,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:55:18,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:55:18,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:55:18,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:55:20,321.321 INFO    ] ================================================
[2026-10-25 10:55:20,335.335 INFO    ] Launching Daemon at Sun Oct 25 10:55:20 IST 2026
[2026-10-25 10:55:20,346.346 INFO    ] ================================================
[2026-10-25 10:55:20,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:55:20
[2026-10-25 10:55:21,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:55:21,741.741 INFO    ] Initializing speech engine...
[2026-10-25 10:55:21,763.763 INFO    ] 2026-10-25 10:55:21
[2026-10-25 10:55:22,013.013 INFO    ] 2026-10-25 10:55:22
[2026-10-25 10:55:22,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:55:22,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:55:22,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:55:22,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:55:22,478.478 INFO    ] time= 25/10/2026 10:55:22
[2026-10-25 10:55:22,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:55:22,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:55:22,686.686 INFO    ] No existing commands found in stream
[2026-10-25 10:55:27,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:55:27,719.719 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 10:55:30,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:55:30,585.585 INFO    ] Checking for system updates...
[2026-10-25 10:55:30,621.621 INFO    ] 200
[2026-10-25 10:55:30,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:30,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:30,683.683 INFO    ] No update needed
[2026-10-25 10:55:30,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 10:55:30,720.720 INFO    ] 200
[2026-10-25 10:55:30,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:30,763.763 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:55:30,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:30,810.810 INFO    ] No camera update needed
[2026-10-25 10:55:30,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:55:30,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:55:30,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:55:30,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:55:32,866.866 INFO    ] ================================================
[2026-10-25 10:55:32,881.881 INFO    ] Launching Daemon at Sun Oct 25 10:55:32 IST 2026
[2026-10-25 10:55:32,892.892 INFO    ] ================================================
[2026-10-25 10:55:33,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:55:33
[2026-10-25 10:55:34,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:55:34,328.328 INFO    ] Initializing speech engine...
[2026-10-25 10:55:34,338.338 INFO    ] 2026-10-25 10:55:34
[2026-10-25 10:55:34,595.595 INFO    ] 2026-10-25 10:55:34
[2026-10-25 10:55:34,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:55:34,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:55:34,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:55:35,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:55:35,071.071 INFO    ] time= 25/10/2026 10:55:35
[2026-10-25 10:55:35,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:55:35,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:55:35,226.226 INFO    ] No existing commands found in stream
[2026-10-25 10:55:40,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:55:40,241.241 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 10:55:42,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:55:42,364.364 INFO    ] Checking for system updates...
[2026-10-25 10:55:42,404.404 INFO    ] 200
[2026-10-25 10:55:42,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:42,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:42,468.468 INFO    ] No update needed
[2026-10-25 10:55:42,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 10:55:42,506.506 INFO    ] 200
[2026-10-25 10:55:42,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:42,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:55:42,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:55:42,598.598 INFO    ] No camera update needed
[2026-10-25 10:55:42,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:55:42,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:55:42,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:55:42,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:55:44,656.656 INFO    ] ================================================
[2026-10-25 10:55:44,671.671 INFO    ] Launching Daemon at Sun Oct 25 10:55:44 IST 2026
[2026-10-25 10:55:44,681.681 INFO    ] ================================================
[2026-10-25 10:55:45,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:55:45
[2026-10-25 10:55:45,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:55:46,107.107 INFO    ] Initializing speech engine...
[2026-10-25 10:55:46,116.116 INFO    ] 2026-10-25 10:55:46
[2026-10-25 10:55:46,361.361 INFO    ] 2026-10-25 10:55:46
[2026-10-25 10:55:46,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:55:48,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:55:49,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:55:49,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:55:49,165.165 INFO    ] time= 25/10/2026 10:55:49
[2026-10-25 10:55:49,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:55:49,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:55:49,256.256 INFO    ] No existing commands found in stream
[2026-10-25 10:55:54,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:55:54,268.268 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 10:55:58,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:55:58,083.083 INFO    ] Checking for system updates...
[2026-10-25 10:55:58,133.133 INFO    ] 200
[2026-10-25 10:55:58,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:58,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:55:58,193.193 INFO    ] No update needed
[2026-10-25 10:55:58,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 10:55:58,234.234 INFO    ] 200
[2026-10-25 10:55:58,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:55:58,280.280 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:55:58,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:55:58,438.438 INFO    ] No camera update needed
[2026-10-25 10:55:58,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:55:58,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:55:58,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:55:58,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:56:00,498.498 INFO    ] ================================================
[2026-10-25 10:56:00,513.513 INFO    ] Launching Daemon at Sun Oct 25 10:56:00 IST 2026
[2026-10-25 10:56:00,524.524 INFO    ] ================================================
[2026-10-25 10:56:01,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:56:01
[2026-10-25 10:56:01,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:56:02,175.175 INFO    ] Initializing speech engine...
[2026-10-25 10:56:02,182.182 INFO    ] 2026-10-25 10:56:02
[2026-10-25 10:56:02,496.496 INFO    ] 2026-10-25 10:56:02
[2026-10-25 10:56:02,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:56:02,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:56:02,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:56:02,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:56:02,945.945 INFO    ] time= 25/10/2026 10:56:02
[2026-10-25 10:56:02,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:56:03,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:56:03,107.107 INFO    ] No existing commands found in stream
[2026-10-25 10:56:08,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:56:08,136.136 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 10:56:11,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:56:11,245.245 INFO    ] Checking for system updates...
[2026-10-25 10:56:11,286.286 INFO    ] 200
[2026-10-25 10:56:11,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:11,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:11,345.345 INFO    ] No update needed
[2026-10-25 10:56:11,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 10:56:11,382.382 INFO    ] 200
[2026-10-25 10:56:11,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:11,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:56:11,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:11,478.478 INFO    ] No camera update needed
[2026-10-25 10:56:11,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:56:11,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:56:11,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:56:11,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:56:13,533.533 INFO    ] ================================================
[2026-10-25 10:56:13,548.548 INFO    ] Launching Daemon at Sun Oct 25 10:56:13 IST 2026
[2026-10-25 10:56:13,559.559 INFO    ] ================================================
[2026-10-25 10:56:14,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:56:14
[2026-10-25 10:56:14,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:56:14,999.999 INFO    ] Initializing speech engine...
[2026-10-25 10:56:15,005.005 INFO    ] 2026-10-25 10:56:15
[2026-10-25 10:56:15,305.305 INFO    ] 2026-10-25 10:56:15
[2026-10-25 10:56:15,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:56:15,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:56:15,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:56:15,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:56:15,704.704 INFO    ] time= 25/10/2026 10:56:15
[2026-10-25 10:56:15,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:56:15,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:56:15,814.814 INFO    ] No existing commands found in stream
[2026-10-25 10:56:20,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:56:20,829.829 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 10:56:24,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:56:24,816.816 INFO    ] Checking for system updates...
[2026-10-25 10:56:24,856.856 INFO    ] 200
[2026-10-25 10:56:24,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:24,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:56:24,916.916 INFO    ] No update needed
[2026-10-25 10:56:24,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 10:56:24,953.953 INFO    ] 200
[2026-10-25 10:56:24,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:24,997.997 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:56:25,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:56:25,061.061 INFO    ] No camera update needed
[2026-10-25 10:56:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:56:25,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:56:25,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:56:25,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:56:27,115.115 INFO    ] ================================================
[2026-10-25 10:56:27,131.131 INFO    ] Launching Daemon at Sun Oct 25 10:56:27 IST 2026
[2026-10-25 10:56:27,141.141 INFO    ] ================================================
[2026-10-25 10:56:27,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:56:27
[2026-10-25 10:56:28,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:56:28,575.575 INFO    ] Initializing speech engine...
[2026-10-25 10:56:28,583.583 INFO    ] 2026-10-25 10:56:28
[2026-10-25 10:56:28,833.833 INFO    ] 2026-10-25 10:56:28
[2026-10-25 10:56:28,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:56:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:56:29,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:56:29,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:56:29,210.210 INFO    ] time= 25/10/2026 10:56:29
[2026-10-25 10:56:29,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:56:29,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:56:29,392.392 INFO    ] No existing commands found in stream
[2026-10-25 10:56:34,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:56:34,420.420 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 10:56:37,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:56:37,283.283 INFO    ] Checking for system updates...
[2026-10-25 10:56:37,320.320 INFO    ] 200
[2026-10-25 10:56:37,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:37,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:37,379.379 INFO    ] No update needed
[2026-10-25 10:56:37,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 10:56:37,416.416 INFO    ] 200
[2026-10-25 10:56:37,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:37,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:56:37,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:37,522.522 INFO    ] No camera update needed
[2026-10-25 10:56:37,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:56:37,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:56:37,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:56:37,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:56:39,579.579 INFO    ] ================================================
[2026-10-25 10:56:39,594.594 INFO    ] Launching Daemon at Sun Oct 25 10:56:39 IST 2026
[2026-10-25 10:56:39,605.605 INFO    ] ================================================
[2026-10-25 10:56:40,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:56:40
[2026-10-25 10:56:40,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:56:41,059.059 INFO    ] Initializing speech engine...
[2026-10-25 10:56:41,066.066 INFO    ] 2026-10-25 10:56:41
[2026-10-25 10:56:41,363.363 INFO    ] 2026-10-25 10:56:41
[2026-10-25 10:56:41,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:56:41,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:56:41,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:56:41,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:56:41,796.796 INFO    ] time= 25/10/2026 10:56:41
[2026-10-25 10:56:41,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:56:41,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:56:42,008.008 INFO    ] No existing commands found in stream
[2026-10-25 10:56:47,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:56:47,029.029 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 10:56:51,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:56:51,384.384 INFO    ] Checking for system updates...
[2026-10-25 10:56:51,419.419 INFO    ] 200
[2026-10-25 10:56:51,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:51,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:51,479.479 INFO    ] No update needed
[2026-10-25 10:56:51,482.482 INFO    ] Checking for camera pi updates...
[2026-10-25 10:56:51,520.520 INFO    ] 200
[2026-10-25 10:56:51,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:56:51,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:56:51,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:56:51,608.608 INFO    ] No camera update needed
[2026-10-25 10:56:51,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:56:51,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:56:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:56:51,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:56:53,663.663 INFO    ] ================================================
[2026-10-25 10:56:53,679.679 INFO    ] Launching Daemon at Sun Oct 25 10:56:53 IST 2026
[2026-10-25 10:56:53,690.690 INFO    ] ================================================
[2026-10-25 10:56:54,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:56:54
[2026-10-25 10:56:54,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:56:55,098.098 INFO    ] Initializing speech engine...
[2026-10-25 10:56:55,104.104 INFO    ] 2026-10-25 10:56:55
[2026-10-25 10:56:55,403.403 INFO    ] 2026-10-25 10:56:55
[2026-10-25 10:56:55,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:56:55,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:56:55,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:56:55,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:56:55,788.788 INFO    ] time= 25/10/2026 10:56:55
[2026-10-25 10:56:55,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:56:55,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:56:55,916.916 INFO    ] No existing commands found in stream
[2026-10-25 10:57:00,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:57:00,937.937 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 10:57:05,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:57:05,150.150 INFO    ] Checking for system updates...
[2026-10-25 10:57:05,186.186 INFO    ] 200
[2026-10-25 10:57:05,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:05,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:05,244.244 INFO    ] No update needed
[2026-10-25 10:57:05,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 10:57:05,280.280 INFO    ] 200
[2026-10-25 10:57:05,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:05,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:57:05,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:05,383.383 INFO    ] No camera update needed
[2026-10-25 10:57:05,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:57:05,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:57:05,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:57:05,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:57:07,437.437 INFO    ] ================================================
[2026-10-25 10:57:07,452.452 INFO    ] Launching Daemon at Sun Oct 25 10:57:07 IST 2026
[2026-10-25 10:57:07,463.463 INFO    ] ================================================
[2026-10-25 10:57:08,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:57:08
[2026-10-25 10:57:08,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:57:08,900.900 INFO    ] Initializing speech engine...
[2026-10-25 10:57:08,925.925 INFO    ] 2026-10-25 10:57:08
[2026-10-25 10:57:09,201.201 INFO    ] 2026-10-25 10:57:09
[2026-10-25 10:57:09,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:57:09,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:57:09,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:57:09,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:57:09,653.653 INFO    ] time= 25/10/2026 10:57:09
[2026-10-25 10:57:09,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:57:09,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:57:09,824.824 INFO    ] No existing commands found in stream
[2026-10-25 10:57:14,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:57:14,853.853 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 10:57:17,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:57:17,058.058 INFO    ] Checking for system updates...
[2026-10-25 10:57:17,093.093 INFO    ] 200
[2026-10-25 10:57:17,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:17,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:17,151.151 INFO    ] No update needed
[2026-10-25 10:57:17,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 10:57:17,187.187 INFO    ] 200
[2026-10-25 10:57:17,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:17,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:57:17,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:17,277.277 INFO    ] No camera update needed
[2026-10-25 10:57:17,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:57:17,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:57:17,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:57:17,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:57:19,332.332 INFO    ] ================================================
[2026-10-25 10:57:19,347.347 INFO    ] Launching Daemon at Sun Oct 25 10:57:19 IST 2026
[2026-10-25 10:57:19,358.358 INFO    ] ================================================
[2026-10-25 10:57:19,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:57:19
[2026-10-25 10:57:20,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:57:20,759.759 INFO    ] Initializing speech engine...
[2026-10-25 10:57:20,782.782 INFO    ] 2026-10-25 10:57:20
[2026-10-25 10:57:21,036.036 INFO    ] 2026-10-25 10:57:21
[2026-10-25 10:57:21,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:57:21,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:57:21,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:57:21,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:57:22,039.039 INFO    ] time= 25/10/2026 10:57:21
[2026-10-25 10:57:22,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:57:22,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:57:22,161.161 INFO    ] No existing commands found in stream
[2026-10-25 10:57:27,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:57:27,194.194 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 10:57:31,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 10:57:31,346.346 INFO    ] Checking for system updates...
[2026-10-25 10:57:31,382.382 INFO    ] 200
[2026-10-25 10:57:31,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:31,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:57:31,446.446 INFO    ] No update needed
[2026-10-25 10:57:31,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 10:57:31,483.483 INFO    ] 200
[2026-10-25 10:57:31,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:31,530.530 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:57:31,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:57:31,582.582 INFO    ] No camera update needed
[2026-10-25 10:57:31,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:57:31,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:57:31,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:57:31,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:57:33,640.640 INFO    ] ================================================
[2026-10-25 10:57:33,655.655 INFO    ] Launching Daemon at Sun Oct 25 10:57:33 IST 2026
[2026-10-25 10:57:33,666.666 INFO    ] ================================================
[2026-10-25 10:57:34,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:57:34
[2026-10-25 10:57:34,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:57:35,286.286 INFO    ] Initializing speech engine...
[2026-10-25 10:57:35,296.296 INFO    ] 2026-10-25 10:57:35
[2026-10-25 10:57:35,584.584 INFO    ] 2026-10-25 10:57:35
[2026-10-25 10:57:35,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:57:35,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:57:35,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:57:36,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:57:36,132.132 INFO    ] time= 25/10/2026 10:57:36
[2026-10-25 10:57:36,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:57:36,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:57:36,277.277 INFO    ] No existing commands found in stream
[2026-10-25 10:57:41,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:57:41,307.307 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 10:57:45,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:57:45,105.105 INFO    ] Checking for system updates...
[2026-10-25 10:57:45,143.143 INFO    ] 200
[2026-10-25 10:57:45,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:45,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:45,203.203 INFO    ] No update needed
[2026-10-25 10:57:45,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 10:57:45,240.240 INFO    ] 200
[2026-10-25 10:57:45,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:57:45,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:57:45,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:57:45,334.334 INFO    ] No camera update needed
[2026-10-25 10:57:45,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:57:45,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:57:45,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:57:45,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:57:47,392.392 INFO    ] ================================================
[2026-10-25 10:57:47,407.407 INFO    ] Launching Daemon at Sun Oct 25 10:57:47 IST 2026
[2026-10-25 10:57:47,418.418 INFO    ] ================================================
[2026-10-25 10:57:47,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:57:47
[2026-10-25 10:57:48,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:57:48,827.827 INFO    ] Initializing speech engine...
[2026-10-25 10:57:48,836.836 INFO    ] 2026-10-25 10:57:48
[2026-10-25 10:57:49,130.130 INFO    ] 2026-10-25 10:57:49
[2026-10-25 10:57:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:57:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:57:51,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:57:52,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:57:52,342.342 INFO    ] time= 25/10/2026 10:57:52
[2026-10-25 10:57:52,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:57:52,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:57:52,411.411 INFO    ] No existing commands found in stream
[2026-10-25 10:57:57,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:57:57,423.423 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 10:58:00,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:58:00,395.395 INFO    ] Checking for system updates...
[2026-10-25 10:58:00,431.431 INFO    ] 200
[2026-10-25 10:58:00,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:00,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:00,493.493 INFO    ] No update needed
[2026-10-25 10:58:00,496.496 INFO    ] Checking for camera pi updates...
[2026-10-25 10:58:00,530.530 INFO    ] 200
[2026-10-25 10:58:00,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:00,577.577 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:58:00,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:00,738.738 INFO    ] No camera update needed
[2026-10-25 10:58:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:58:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:58:00,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:58:00,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:58:02,797.797 INFO    ] ================================================
[2026-10-25 10:58:02,816.816 INFO    ] Launching Daemon at Sun Oct 25 10:58:02 IST 2026
[2026-10-25 10:58:02,831.831 INFO    ] ================================================
[2026-10-25 10:58:03,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:58:03
[2026-10-25 10:58:04,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:58:04,536.536 INFO    ] Initializing speech engine...
[2026-10-25 10:58:04,549.549 INFO    ] 2026-10-25 10:58:04
[2026-10-25 10:58:04,834.834 INFO    ] 2026-10-25 10:58:04
[2026-10-25 10:58:04,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:58:05,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:58:05,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:58:05,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:58:05,363.363 INFO    ] time= 25/10/2026 10:58:05
[2026-10-25 10:58:05,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:58:05,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:58:05,519.519 INFO    ] No existing commands found in stream
[2026-10-25 10:58:10,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:58:10,535.535 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 10:58:11,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:58:11,118.118 INFO    ] Checking for system updates...
[2026-10-25 10:58:11,161.161 INFO    ] 200
[2026-10-25 10:58:11,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:11,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:11,220.220 INFO    ] No update needed
[2026-10-25 10:58:11,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 10:58:11,257.257 INFO    ] 200
[2026-10-25 10:58:11,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:11,306.306 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:58:11,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:11,365.365 INFO    ] No camera update needed
[2026-10-25 10:58:11,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:58:11,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:58:11,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:58:11,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:58:13,422.422 INFO    ] ================================================
[2026-10-25 10:58:13,438.438 INFO    ] Launching Daemon at Sun Oct 25 10:58:13 IST 2026
[2026-10-25 10:58:13,449.449 INFO    ] ================================================
[2026-10-25 10:58:14,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:58:14
[2026-10-25 10:58:14,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:58:14,852.852 INFO    ] Initializing speech engine...
[2026-10-25 10:58:14,861.861 INFO    ] 2026-10-25 10:58:14
[2026-10-25 10:58:15,153.153 INFO    ] 2026-10-25 10:58:15
[2026-10-25 10:58:15,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:58:15,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:58:15,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:58:15,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:58:15,572.572 INFO    ] time= 25/10/2026 10:58:15
[2026-10-25 10:58:15,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:58:15,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:58:15,738.738 INFO    ] No existing commands found in stream
[2026-10-25 10:58:20,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:58:20,766.766 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 10:58:25,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:58:25,088.088 INFO    ] Checking for system updates...
[2026-10-25 10:58:25,123.123 INFO    ] 200
[2026-10-25 10:58:25,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:25,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:58:25,181.181 INFO    ] No update needed
[2026-10-25 10:58:25,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 10:58:25,222.222 INFO    ] 200
[2026-10-25 10:58:25,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:25,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:58:25,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:58:25,318.318 INFO    ] No camera update needed
[2026-10-25 10:58:25,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:58:25,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:58:25,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:58:25,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:58:27,373.373 INFO    ] ================================================
[2026-10-25 10:58:27,388.388 INFO    ] Launching Daemon at Sun Oct 25 10:58:27 IST 2026
[2026-10-25 10:58:27,398.398 INFO    ] ================================================
[2026-10-25 10:58:27,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:58:27
[2026-10-25 10:58:28,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:58:28,839.839 INFO    ] Initializing speech engine...
[2026-10-25 10:58:28,848.848 INFO    ] 2026-10-25 10:58:28
[2026-10-25 10:58:29,139.139 INFO    ] 2026-10-25 10:58:29
[2026-10-25 10:58:29,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:58:29,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:58:29,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:58:29,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:58:29,556.556 INFO    ] time= 25/10/2026 10:58:29
[2026-10-25 10:58:29,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:58:29,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:58:29,648.648 INFO    ] No existing commands found in stream
[2026-10-25 10:58:34,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:58:34,680.680 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 10:58:37,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:58:37,404.404 INFO    ] Checking for system updates...
[2026-10-25 10:58:37,440.440 INFO    ] 200
[2026-10-25 10:58:37,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:37,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:58:37,504.504 INFO    ] No update needed
[2026-10-25 10:58:37,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 10:58:37,540.540 INFO    ] 200
[2026-10-25 10:58:37,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:37,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:58:37,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:58:37,656.656 INFO    ] No camera update needed
[2026-10-25 10:58:37,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:58:37,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:58:37,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:58:37,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:58:39,710.710 INFO    ] ================================================
[2026-10-25 10:58:39,726.726 INFO    ] Launching Daemon at Sun Oct 25 10:58:39 IST 2026
[2026-10-25 10:58:39,737.737 INFO    ] ================================================
[2026-10-25 10:58:40,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:58:40
[2026-10-25 10:58:40,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:58:41,137.137 INFO    ] Initializing speech engine...
[2026-10-25 10:58:41,143.143 INFO    ] 2026-10-25 10:58:41
[2026-10-25 10:58:41,437.437 INFO    ] 2026-10-25 10:58:41
[2026-10-25 10:58:41,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:58:41,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:58:41,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:58:41,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:58:41,832.832 INFO    ] time= 25/10/2026 10:58:41
[2026-10-25 10:58:41,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:58:41,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:58:41,938.938 INFO    ] No existing commands found in stream
[2026-10-25 10:58:46,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:58:46,954.954 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 10:58:50,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:58:50,636.636 INFO    ] Checking for system updates...
[2026-10-25 10:58:50,672.672 INFO    ] 200
[2026-10-25 10:58:50,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:50,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:50,729.729 INFO    ] No update needed
[2026-10-25 10:58:50,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 10:58:50,766.766 INFO    ] 200
[2026-10-25 10:58:50,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:58:50,810.810 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:58:50,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:58:50,858.858 INFO    ] No camera update needed
[2026-10-25 10:58:50,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:58:50,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:58:50,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:58:50,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:58:52,915.915 INFO    ] ================================================
[2026-10-25 10:58:52,931.931 INFO    ] Launching Daemon at Sun Oct 25 10:58:52 IST 2026
[2026-10-25 10:58:52,941.941 INFO    ] ================================================
[2026-10-25 10:58:53,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:58:53
[2026-10-25 10:58:54,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:58:54,567.567 INFO    ] Initializing speech engine...
[2026-10-25 10:58:54,578.578 INFO    ] 2026-10-25 10:58:54
[2026-10-25 10:58:54,884.884 INFO    ] 2026-10-25 10:58:54
[2026-10-25 10:58:54,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:58:55,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:58:55,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:58:55,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:58:55,393.393 INFO    ] time= 25/10/2026 10:58:55
[2026-10-25 10:58:55,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:58:55,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:58:55,547.547 INFO    ] No existing commands found in stream
[2026-10-25 10:59:00,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:59:00,581.581 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 10:59:03,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 10:59:03,240.240 INFO    ] Checking for system updates...
[2026-10-25 10:59:03,281.281 INFO    ] 200
[2026-10-25 10:59:03,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:03,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:59:03,338.338 INFO    ] No update needed
[2026-10-25 10:59:03,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 10:59:03,375.375 INFO    ] 200
[2026-10-25 10:59:03,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:03,417.417 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:59:03,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:59:03,463.463 INFO    ] No camera update needed
[2026-10-25 10:59:03,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:59:03,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:59:03,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:59:03,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:59:05,520.520 INFO    ] ================================================
[2026-10-25 10:59:05,535.535 INFO    ] Launching Daemon at Sun Oct 25 10:59:05 IST 2026
[2026-10-25 10:59:05,546.546 INFO    ] ================================================
[2026-10-25 10:59:06,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:59:06
[2026-10-25 10:59:06,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:59:06,954.954 INFO    ] Initializing speech engine...
[2026-10-25 10:59:06,972.972 INFO    ] 2026-10-25 10:59:06
[2026-10-25 10:59:07,218.218 INFO    ] 2026-10-25 10:59:07
[2026-10-25 10:59:07,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:59:07,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:59:07,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:59:07,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:59:07,709.709 INFO    ] time= 25/10/2026 10:59:07
[2026-10-25 10:59:07,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:59:07,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:59:07,841.841 INFO    ] No existing commands found in stream
[2026-10-25 10:59:12,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:59:12,863.863 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 10:59:13,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:59:13,702.702 INFO    ] Checking for system updates...
[2026-10-25 10:59:13,743.743 INFO    ] 200
[2026-10-25 10:59:13,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:13,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:13,801.801 INFO    ] No update needed
[2026-10-25 10:59:13,803.803 INFO    ] Checking for camera pi updates...
[2026-10-25 10:59:13,838.838 INFO    ] 200
[2026-10-25 10:59:13,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:13,881.881 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:59:13,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:13,938.938 INFO    ] No camera update needed
[2026-10-25 10:59:13,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:59:13,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:59:13,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:59:13,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:59:16,997.997 INFO    ] ================================================
[2026-10-25 10:59:16,012.012 INFO    ] Launching Daemon at Sun Oct 25 10:59:16 IST 2026
[2026-10-25 10:59:16,023.023 INFO    ] ================================================
[2026-10-25 10:59:16,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:59:16
[2026-10-25 10:59:17,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:59:17,653.653 INFO    ] Initializing speech engine...
[2026-10-25 10:59:17,663.663 INFO    ] 2026-10-25 10:59:17
[2026-10-25 10:59:17,935.935 INFO    ] 2026-10-25 10:59:17
[2026-10-25 10:59:17,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:59:18,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:59:18,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:59:18,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:59:18,435.435 INFO    ] time= 25/10/2026 10:59:18
[2026-10-25 10:59:18,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:59:18,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:59:18,630.630 INFO    ] No existing commands found in stream
[2026-10-25 10:59:23,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:59:23,655.655 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 10:59:27,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 10:59:27,914.914 INFO    ] Checking for system updates...
[2026-10-25 10:59:27,952.952 INFO    ] 200
[2026-10-25 10:59:27,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:28,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:28,012.012 INFO    ] No update needed
[2026-10-25 10:59:28,014.014 INFO    ] Checking for camera pi updates...
[2026-10-25 10:59:28,049.049 INFO    ] 200
[2026-10-25 10:59:28,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:28,093.093 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:59:28,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:28,155.155 INFO    ] No camera update needed
[2026-10-25 10:59:28,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:59:28,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:59:28,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:59:28,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:59:30,212.212 INFO    ] ================================================
[2026-10-25 10:59:30,226.226 INFO    ] Launching Daemon at Sun Oct 25 10:59:30 IST 2026
[2026-10-25 10:59:30,237.237 INFO    ] ================================================
[2026-10-25 10:59:30,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:59:30
[2026-10-25 10:59:31,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:59:31,683.683 INFO    ] Initializing speech engine...
[2026-10-25 10:59:31,692.692 INFO    ] 2026-10-25 10:59:31
[2026-10-25 10:59:32,010.010 INFO    ] 2026-10-25 10:59:31
[2026-10-25 10:59:32,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:59:32,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:59:32,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:59:32,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:59:32,374.374 INFO    ] time= 25/10/2026 10:59:32
[2026-10-25 10:59:32,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:59:32,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:59:32,502.502 INFO    ] No existing commands found in stream
[2026-10-25 10:59:37,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:59:37,517.517 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 10:59:41,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 10:59:41,171.171 INFO    ] Checking for system updates...
[2026-10-25 10:59:41,207.207 INFO    ] 200
[2026-10-25 10:59:41,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:41,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:59:41,271.271 INFO    ] No update needed
[2026-10-25 10:59:41,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 10:59:41,310.310 INFO    ] 200
[2026-10-25 10:59:41,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:41,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:59:41,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 10:59:41,415.415 INFO    ] No camera update needed
[2026-10-25 10:59:41,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:59:41,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:59:41,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:59:41,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:59:43,471.471 INFO    ] ================================================
[2026-10-25 10:59:43,486.486 INFO    ] Launching Daemon at Sun Oct 25 10:59:43 IST 2026
[2026-10-25 10:59:43,497.497 INFO    ] ================================================
[2026-10-25 10:59:44,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:59:44
[2026-10-25 10:59:44,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:59:44,934.934 INFO    ] Initializing speech engine...
[2026-10-25 10:59:44,943.943 INFO    ] 2026-10-25 10:59:44
[2026-10-25 10:59:45,196.196 INFO    ] 2026-10-25 10:59:45
[2026-10-25 10:59:45,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 10:59:45,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 10:59:45,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 10:59:45,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 10:59:45,658.658 INFO    ] time= 25/10/2026 10:59:45
[2026-10-25 10:59:45,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 10:59:45,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 10:59:45,872.872 INFO    ] No existing commands found in stream
[2026-10-25 10:59:50,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 10:59:50,900.900 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 10:59:55,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 10:59:55,944.944 INFO    ] Checking for system updates...
[2026-10-25 10:59:55,981.981 INFO    ] 200
[2026-10-25 10:59:55,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:56,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:56,047.047 INFO    ] No update needed
[2026-10-25 10:59:56,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 10:59:56,084.084 INFO    ] 200
[2026-10-25 10:59:56,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 10:59:56,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 10:59:56,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 10:59:56,179.179 INFO    ] No camera update needed
[2026-10-25 10:59:56,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 10:59:56,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 10:59:56,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 10:59:56,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 10:59:58,238.238 INFO    ] ================================================
[2026-10-25 10:59:58,252.252 INFO    ] Launching Daemon at Sun Oct 25 10:59:58 IST 2026
[2026-10-25 10:59:58,263.263 INFO    ] ================================================
[2026-10-25 10:59:58,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 10:59:58
[2026-10-25 10:59:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 10:59:59,763.763 INFO    ] Initializing speech engine...
[2026-10-25 10:59:59,785.785 INFO    ] 2026-10-25 10:59:59
[2026-10-25 11:00:00,037.037 INFO    ] 2026-10-25 11:00:00
[2026-10-25 11:00:00,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:00:00,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:00:00,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:00:00,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:00:00,534.534 INFO    ] time= 25/10/2026 11:00:00
[2026-10-25 11:00:00,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:00:00,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:00:00,665.665 INFO    ] No existing commands found in stream
[2026-10-25 11:00:05,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:00:05,812.812 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 11:00:09,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:00:09,382.382 INFO    ] Checking for system updates...
[2026-10-25 11:00:09,418.418 INFO    ] 200
[2026-10-25 11:00:09,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:09,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:00:09,476.476 INFO    ] No update needed
[2026-10-25 11:00:09,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 11:00:09,512.512 INFO    ] 200
[2026-10-25 11:00:09,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:09,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:00:09,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:00:09,610.610 INFO    ] No camera update needed
[2026-10-25 11:00:09,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:00:09,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:00:09,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:00:09,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:00:11,665.665 INFO    ] ================================================
[2026-10-25 11:00:11,680.680 INFO    ] Launching Daemon at Sun Oct 25 11:00:11 IST 2026
[2026-10-25 11:00:11,690.690 INFO    ] ================================================
[2026-10-25 11:00:12,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:00:12
[2026-10-25 11:00:12,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:00:13,125.125 INFO    ] Initializing speech engine...
[2026-10-25 11:00:13,140.140 INFO    ] 2026-10-25 11:00:13
[2026-10-25 11:00:13,405.405 INFO    ] 2026-10-25 11:00:13
[2026-10-25 11:00:13,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:00:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:00:13,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:00:13,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:00:13,903.903 INFO    ] time= 25/10/2026 11:00:13
[2026-10-25 11:00:13,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:00:13,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:00:14,104.104 INFO    ] No existing commands found in stream
[2026-10-25 11:00:19,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:00:19,131.131 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 11:00:20,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:00:20,078.078 INFO    ] Checking for system updates...
[2026-10-25 11:00:20,115.115 INFO    ] 200
[2026-10-25 11:00:20,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:20,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:20,179.179 INFO    ] No update needed
[2026-10-25 11:00:20,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 11:00:20,216.216 INFO    ] 200
[2026-10-25 11:00:20,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:20,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:00:20,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:20,308.308 INFO    ] No camera update needed
[2026-10-25 11:00:20,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:00:20,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:00:20,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:00:20,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:00:22,362.362 INFO    ] ================================================
[2026-10-25 11:00:22,377.377 INFO    ] Launching Daemon at Sun Oct 25 11:00:22 IST 2026
[2026-10-25 11:00:22,388.388 INFO    ] ================================================
[2026-10-25 11:00:23,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:00:23
[2026-10-25 11:00:23,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:00:23,864.864 INFO    ] Initializing speech engine...
[2026-10-25 11:00:23,879.879 INFO    ] 2026-10-25 11:00:23
[2026-10-25 11:00:24,145.145 INFO    ] 2026-10-25 11:00:24
[2026-10-25 11:00:24,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:00:26,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:00:26,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:00:26,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:00:26,935.935 INFO    ] time= 25/10/2026 11:00:26
[2026-10-25 11:00:26,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:00:27,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:00:27,099.099 INFO    ] No existing commands found in stream
[2026-10-25 11:00:32,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:00:32,115.115 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 11:00:33,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:00:33,091.091 INFO    ] Checking for system updates...
[2026-10-25 11:00:33,135.135 INFO    ] 200
[2026-10-25 11:00:33,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:33,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:33,200.200 INFO    ] No update needed
[2026-10-25 11:00:33,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 11:00:33,236.236 INFO    ] 200
[2026-10-25 11:00:33,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:33,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:00:33,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:33,344.344 INFO    ] No camera update needed
[2026-10-25 11:00:33,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:00:33,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:00:33,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:00:33,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:00:35,399.399 INFO    ] ================================================
[2026-10-25 11:00:35,414.414 INFO    ] Launching Daemon at Sun Oct 25 11:00:35 IST 2026
[2026-10-25 11:00:35,425.425 INFO    ] ================================================
[2026-10-25 11:00:35,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:00:35
[2026-10-25 11:00:36,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:00:36,825.825 INFO    ] Initializing speech engine...
[2026-10-25 11:00:36,830.830 INFO    ] 2026-10-25 11:00:36
[2026-10-25 11:00:37,104.104 INFO    ] 2026-10-25 11:00:37
[2026-10-25 11:00:37,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:00:37,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:00:37,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:00:37,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:00:37,583.583 INFO    ] time= 25/10/2026 11:00:37
[2026-10-25 11:00:37,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:00:37,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:00:37,749.749 INFO    ] No existing commands found in stream
[2026-10-25 11:00:42,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:00:42,789.789 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 11:00:46,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:00:46,716.716 INFO    ] Checking for system updates...
[2026-10-25 11:00:46,752.752 INFO    ] 200
[2026-10-25 11:00:46,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:46,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:46,810.810 INFO    ] No update needed
[2026-10-25 11:00:46,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 11:00:46,851.851 INFO    ] 200
[2026-10-25 11:00:46,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:46,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:00:46,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:46,959.959 INFO    ] No camera update needed
[2026-10-25 11:00:46,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:00:46,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:00:46,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:00:46,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:00:49,017.017 INFO    ] ================================================
[2026-10-25 11:00:49,033.033 INFO    ] Launching Daemon at Sun Oct 25 11:00:49 IST 2026
[2026-10-25 11:00:49,045.045 INFO    ] ================================================
[2026-10-25 11:00:49,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:00:49
[2026-10-25 11:00:50,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:00:50,467.467 INFO    ] Initializing speech engine...
[2026-10-25 11:00:50,480.480 INFO    ] 2026-10-25 11:00:50
[2026-10-25 11:00:50,745.745 INFO    ] 2026-10-25 11:00:50
[2026-10-25 11:00:50,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:00:51,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:00:51,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:00:51,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:00:51,234.234 INFO    ] time= 25/10/2026 11:00:51
[2026-10-25 11:00:51,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:00:51,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:00:51,368.368 INFO    ] No existing commands found in stream
[2026-10-25 11:00:56,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:00:56,385.385 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 11:00:57,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:00:58,002.002 INFO    ] Checking for system updates...
[2026-10-25 11:00:58,042.042 INFO    ] 200
[2026-10-25 11:00:58,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:58,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:58,100.100 INFO    ] No update needed
[2026-10-25 11:00:58,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 11:00:58,136.136 INFO    ] 200
[2026-10-25 11:00:58,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:00:58,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:00:58,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:00:58,243.243 INFO    ] No camera update needed
[2026-10-25 11:00:58,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:00:58,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:00:58,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:00:58,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:01:00,301.301 INFO    ] ================================================
[2026-10-25 11:01:00,317.317 INFO    ] Launching Daemon at Sun Oct 25 11:01:00 IST 2026
[2026-10-25 11:01:00,328.328 INFO    ] ================================================
[2026-10-25 11:01:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:01:00
[2026-10-25 11:01:01,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:01:02,108.108 INFO    ] Initializing speech engine...
[2026-10-25 11:01:02,134.134 INFO    ] 2026-10-25 11:01:02
[2026-10-25 11:01:02,473.473 INFO    ] 2026-10-25 11:01:02
[2026-10-25 11:01:02,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:01:02,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:01:02,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:01:02,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:01:02,960.960 INFO    ] time= 25/10/2026 11:01:02
[2026-10-25 11:01:02,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:01:02,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:01:03,109.109 INFO    ] No existing commands found in stream
[2026-10-25 11:01:08,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:01:08,142.142 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 11:01:09,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:01:09,183.183 INFO    ] Checking for system updates...
[2026-10-25 11:01:09,223.223 INFO    ] 200
[2026-10-25 11:01:09,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:09,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:01:09,280.280 INFO    ] No update needed
[2026-10-25 11:01:09,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 11:01:09,320.320 INFO    ] 200
[2026-10-25 11:01:09,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:09,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:01:09,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:01:09,412.412 INFO    ] No camera update needed
[2026-10-25 11:01:09,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:01:09,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:01:09,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:01:09,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:01:11,468.468 INFO    ] ================================================
[2026-10-25 11:01:11,484.484 INFO    ] Launching Daemon at Sun Oct 25 11:01:11 IST 2026
[2026-10-25 11:01:11,495.495 INFO    ] ================================================
[2026-10-25 11:01:12,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:01:12
[2026-10-25 11:01:12,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:01:12,949.949 INFO    ] Initializing speech engine...
[2026-10-25 11:01:12,955.955 INFO    ] 2026-10-25 11:01:12
[2026-10-25 11:01:13,216.216 INFO    ] 2026-10-25 11:01:13
[2026-10-25 11:01:13,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:01:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:01:13,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:01:13,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:01:13,677.677 INFO    ] time= 25/10/2026 11:01:13
[2026-10-25 11:01:13,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:01:13,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:01:13,821.821 INFO    ] No existing commands found in stream
[2026-10-25 11:01:18,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:01:18,845.845 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 11:01:23,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:01:23,148.148 INFO    ] Checking for system updates...
[2026-10-25 11:01:23,184.184 INFO    ] 200
[2026-10-25 11:01:23,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:23,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:01:23,249.249 INFO    ] No update needed
[2026-10-25 11:01:23,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 11:01:23,289.289 INFO    ] 200
[2026-10-25 11:01:23,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:23,332.332 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:01:23,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:01:23,384.384 INFO    ] No camera update needed
[2026-10-25 11:01:23,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:01:23,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:01:23,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:01:23,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:01:25,441.441 INFO    ] ================================================
[2026-10-25 11:01:25,457.457 INFO    ] Launching Daemon at Sun Oct 25 11:01:25 IST 2026
[2026-10-25 11:01:25,468.468 INFO    ] ================================================
[2026-10-25 11:01:26,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:01:26
[2026-10-25 11:01:26,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:01:26,927.927 INFO    ] Initializing speech engine...
[2026-10-25 11:01:26,934.934 INFO    ] 2026-10-25 11:01:26
[2026-10-25 11:01:27,187.187 INFO    ] 2026-10-25 11:01:27
[2026-10-25 11:01:27,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:01:28,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:01:28,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:01:28,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:01:28,528.528 INFO    ] time= 25/10/2026 11:01:28
[2026-10-25 11:01:28,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:01:28,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:01:28,599.599 INFO    ] No existing commands found in stream
[2026-10-25 11:01:33,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:01:33,613.613 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 11:01:36,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:01:36,284.284 INFO    ] Checking for system updates...
[2026-10-25 11:01:36,320.320 INFO    ] 200
[2026-10-25 11:01:36,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:36,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:01:36,378.378 INFO    ] No update needed
[2026-10-25 11:01:36,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 11:01:36,414.414 INFO    ] 200
[2026-10-25 11:01:36,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:36,464.464 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:01:36,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:01:36,517.517 INFO    ] No camera update needed
[2026-10-25 11:01:36,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:01:36,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:01:36,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:01:36,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:01:38,574.574 INFO    ] ================================================
[2026-10-25 11:01:38,589.589 INFO    ] Launching Daemon at Sun Oct 25 11:01:38 IST 2026
[2026-10-25 11:01:38,600.600 INFO    ] ================================================
[2026-10-25 11:01:39,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:01:39
[2026-10-25 11:01:39,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:01:40,171.171 INFO    ] Initializing speech engine...
[2026-10-25 11:01:40,190.190 INFO    ] 2026-10-25 11:01:40
[2026-10-25 11:01:40,449.449 INFO    ] 2026-10-25 11:01:40
[2026-10-25 11:01:40,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:01:40,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:01:40,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:01:40,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:01:40,911.911 INFO    ] time= 25/10/2026 11:01:40
[2026-10-25 11:01:40,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:01:41,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:01:41,053.053 INFO    ] No existing commands found in stream
[2026-10-25 11:01:46,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:01:46,068.068 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 11:01:50,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:01:50,127.127 INFO    ] Checking for system updates...
[2026-10-25 11:01:50,163.163 INFO    ] 200
[2026-10-25 11:01:50,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:50,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:01:50,228.228 INFO    ] No update needed
[2026-10-25 11:01:50,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 11:01:50,269.269 INFO    ] 200
[2026-10-25 11:01:50,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:01:50,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:01:50,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:01:50,377.377 INFO    ] No camera update needed
[2026-10-25 11:01:50,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:01:50,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:01:50,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:01:50,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:01:52,434.434 INFO    ] ================================================
[2026-10-25 11:01:52,449.449 INFO    ] Launching Daemon at Sun Oct 25 11:01:52 IST 2026
[2026-10-25 11:01:52,460.460 INFO    ] ================================================
[2026-10-25 11:01:53,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:01:53
[2026-10-25 11:01:53,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:01:54,084.084 INFO    ] Initializing speech engine...
[2026-10-25 11:01:54,097.097 INFO    ] 2026-10-25 11:01:54
[2026-10-25 11:01:54,383.383 INFO    ] 2026-10-25 11:01:54
[2026-10-25 11:01:54,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:01:54,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:01:54,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:01:54,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:01:54,926.926 INFO    ] time= 25/10/2026 11:01:54
[2026-10-25 11:01:54,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:01:54,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:01:55,082.082 INFO    ] No existing commands found in stream
[2026-10-25 11:02:00,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:02:00,100.100 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 11:02:03,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:02:03,872.872 INFO    ] Checking for system updates...
[2026-10-25 11:02:03,913.913 INFO    ] 200
[2026-10-25 11:02:03,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:03,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:03,979.979 INFO    ] No update needed
[2026-10-25 11:02:03,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 11:02:04,017.017 INFO    ] 200
[2026-10-25 11:02:04,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:04,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:02:04,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:04,118.118 INFO    ] No camera update needed
[2026-10-25 11:02:04,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:02:04,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:02:04,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:02:04,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:02:06,177.177 INFO    ] ================================================
[2026-10-25 11:02:06,192.192 INFO    ] Launching Daemon at Sun Oct 25 11:02:06 IST 2026
[2026-10-25 11:02:06,203.203 INFO    ] ================================================
[2026-10-25 11:02:06,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:02:06
[2026-10-25 11:02:07,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:02:07,657.657 INFO    ] Initializing speech engine...
[2026-10-25 11:02:07,666.666 INFO    ] 2026-10-25 11:02:07
[2026-10-25 11:02:07,908.908 INFO    ] 2026-10-25 11:02:07
[2026-10-25 11:02:07,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:02:08,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:02:08,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:02:08,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:02:08,401.401 INFO    ] time= 25/10/2026 11:02:08
[2026-10-25 11:02:08,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:02:08,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:02:08,573.573 INFO    ] No existing commands found in stream
[2026-10-25 11:02:13,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:02:13,588.588 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 11:02:15,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:02:15,247.247 INFO    ] Checking for system updates...
[2026-10-25 11:02:15,282.282 INFO    ] 200
[2026-10-25 11:02:15,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:15,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:15,341.341 INFO    ] No update needed
[2026-10-25 11:02:15,344.344 INFO    ] Checking for camera pi updates...
[2026-10-25 11:02:15,382.382 INFO    ] 200
[2026-10-25 11:02:15,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:15,429.429 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:02:15,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:15,581.581 INFO    ] No camera update needed
[2026-10-25 11:02:15,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:02:15,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:02:15,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:02:15,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:02:17,636.636 INFO    ] ================================================
[2026-10-25 11:02:17,652.652 INFO    ] Launching Daemon at Sun Oct 25 11:02:17 IST 2026
[2026-10-25 11:02:17,664.664 INFO    ] ================================================
[2026-10-25 11:02:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:02:18
[2026-10-25 11:02:18,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:02:19,067.067 INFO    ] Initializing speech engine...
[2026-10-25 11:02:19,080.080 INFO    ] 2026-10-25 11:02:19
[2026-10-25 11:02:19,362.362 INFO    ] 2026-10-25 11:02:19
[2026-10-25 11:02:19,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:02:19,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:02:19,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:02:19,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:02:19,776.776 INFO    ] time= 25/10/2026 11:02:19
[2026-10-25 11:02:19,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:02:19,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:02:19,866.866 INFO    ] No existing commands found in stream
[2026-10-25 11:02:24,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:02:24,904.904 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 11:02:30,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:02:30,234.234 INFO    ] Checking for system updates...
[2026-10-25 11:02:30,275.275 INFO    ] 200
[2026-10-25 11:02:30,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:30,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:30,338.338 INFO    ] No update needed
[2026-10-25 11:02:30,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 11:02:30,376.376 INFO    ] 200
[2026-10-25 11:02:30,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:30,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:02:30,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:30,475.475 INFO    ] No camera update needed
[2026-10-25 11:02:30,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:02:30,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:02:30,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:02:30,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:02:32,535.535 INFO    ] ================================================
[2026-10-25 11:02:32,551.551 INFO    ] Launching Daemon at Sun Oct 25 11:02:32 IST 2026
[2026-10-25 11:02:32,563.563 INFO    ] ================================================
[2026-10-25 11:02:33,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:02:33
[2026-10-25 11:02:33,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:02:34,006.006 INFO    ] Initializing speech engine...
[2026-10-25 11:02:34,012.012 INFO    ] 2026-10-25 11:02:34
[2026-10-25 11:02:34,306.306 INFO    ] 2026-10-25 11:02:34
[2026-10-25 11:02:34,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:02:34,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:02:34,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:02:34,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:02:34,719.719 INFO    ] time= 25/10/2026 11:02:34
[2026-10-25 11:02:34,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:02:34,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:02:34,805.805 INFO    ] No existing commands found in stream
[2026-10-25 11:02:39,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:02:39,824.824 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 11:02:42,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:02:42,735.735 INFO    ] Checking for system updates...
[2026-10-25 11:02:42,772.772 INFO    ] 200
[2026-10-25 11:02:42,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:42,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:42,830.830 INFO    ] No update needed
[2026-10-25 11:02:42,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 11:02:42,867.867 INFO    ] 200
[2026-10-25 11:02:42,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:42,914.914 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:02:42,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:02:42,963.963 INFO    ] No camera update needed
[2026-10-25 11:02:42,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:02:42,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:02:42,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:02:42,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:02:45,018.018 INFO    ] ================================================
[2026-10-25 11:02:45,036.036 INFO    ] Launching Daemon at Sun Oct 25 11:02:45 IST 2026
[2026-10-25 11:02:45,046.046 INFO    ] ================================================
[2026-10-25 11:02:45,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:02:45
[2026-10-25 11:02:46,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:02:46,683.683 INFO    ] Initializing speech engine...
[2026-10-25 11:02:46,693.693 INFO    ] 2026-10-25 11:02:46
[2026-10-25 11:02:46,968.968 INFO    ] 2026-10-25 11:02:46
[2026-10-25 11:02:47,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:02:47,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:02:47,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:02:47,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:02:47,541.541 INFO    ] time= 25/10/2026 11:02:47
[2026-10-25 11:02:47,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:02:47,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:02:47,703.703 INFO    ] No existing commands found in stream
[2026-10-25 11:02:52,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:02:52,734.734 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 11:02:54,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:02:54,945.945 INFO    ] Checking for system updates...
[2026-10-25 11:02:54,981.981 INFO    ] 200
[2026-10-25 11:02:54,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:55,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:02:55,048.048 INFO    ] No update needed
[2026-10-25 11:02:55,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 11:02:55,101.101 INFO    ] 200
[2026-10-25 11:02:55,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:02:55,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:02:55,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:02:55,193.193 INFO    ] No camera update needed
[2026-10-25 11:02:55,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:02:55,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:02:55,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:02:55,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:02:57,247.247 INFO    ] ================================================
[2026-10-25 11:02:57,262.262 INFO    ] Launching Daemon at Sun Oct 25 11:02:57 IST 2026
[2026-10-25 11:02:57,273.273 INFO    ] ================================================
[2026-10-25 11:02:57,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:02:57
[2026-10-25 11:02:58,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:02:58,676.676 INFO    ] Initializing speech engine...
[2026-10-25 11:02:58,682.682 INFO    ] 2026-10-25 11:02:58
[2026-10-25 11:02:58,955.955 INFO    ] 2026-10-25 11:02:58
[2026-10-25 11:02:58,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:03:00,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:03:00,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:03:01,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:03:01,138.138 INFO    ] time= 25/10/2026 11:03:01
[2026-10-25 11:03:01,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:03:01,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:03:01,221.221 INFO    ] No existing commands found in stream
[2026-10-25 11:03:06,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:03:06,240.240 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 11:03:07,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:03:07,333.333 INFO    ] Checking for system updates...
[2026-10-25 11:03:07,370.370 INFO    ] 200
[2026-10-25 11:03:07,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:07,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:07,429.429 INFO    ] No update needed
[2026-10-25 11:03:07,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 11:03:07,467.467 INFO    ] 200
[2026-10-25 11:03:07,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:07,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:03:07,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:07,577.577 INFO    ] No camera update needed
[2026-10-25 11:03:07,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:03:07,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:03:07,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:03:07,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:03:09,636.636 INFO    ] ================================================
[2026-10-25 11:03:09,651.651 INFO    ] Launching Daemon at Sun Oct 25 11:03:09 IST 2026
[2026-10-25 11:03:09,662.662 INFO    ] ================================================
[2026-10-25 11:03:10,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:03:10
[2026-10-25 11:03:11,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:03:11,315.315 INFO    ] Initializing speech engine...
[2026-10-25 11:03:11,322.322 INFO    ] 2026-10-25 11:03:11
[2026-10-25 11:03:11,615.615 INFO    ] 2026-10-25 11:03:11
[2026-10-25 11:03:11,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:03:11,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:03:11,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:03:12,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:03:12,167.167 INFO    ] time= 25/10/2026 11:03:12
[2026-10-25 11:03:12,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:03:12,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:03:12,329.329 INFO    ] No existing commands found in stream
[2026-10-25 11:03:17,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:03:17,363.363 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 11:03:18,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:03:18,473.473 INFO    ] Checking for system updates...
[2026-10-25 11:03:18,511.511 INFO    ] 200
[2026-10-25 11:03:18,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:18,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:18,572.572 INFO    ] No update needed
[2026-10-25 11:03:18,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 11:03:18,610.610 INFO    ] 200
[2026-10-25 11:03:18,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:18,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:03:18,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:18,722.722 INFO    ] No camera update needed
[2026-10-25 11:03:18,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:03:18,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:03:18,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:03:18,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:03:20,781.781 INFO    ] ================================================
[2026-10-25 11:03:20,796.796 INFO    ] Launching Daemon at Sun Oct 25 11:03:20 IST 2026
[2026-10-25 11:03:20,807.807 INFO    ] ================================================
[2026-10-25 11:03:21,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:03:21
[2026-10-25 11:03:21,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:03:22,215.215 INFO    ] Initializing speech engine...
[2026-10-25 11:03:22,236.236 INFO    ] 2026-10-25 11:03:22
[2026-10-25 11:03:22,509.509 INFO    ] 2026-10-25 11:03:22
[2026-10-25 11:03:22,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:03:22,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:03:22,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:03:22,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:03:23,026.026 INFO    ] time= 25/10/2026 11:03:22
[2026-10-25 11:03:23,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:03:23,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:03:23,223.223 INFO    ] No existing commands found in stream
[2026-10-25 11:03:28,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:03:28,255.255 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 11:03:32,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:03:32,286.286 INFO    ] Checking for system updates...
[2026-10-25 11:03:32,326.326 INFO    ] 200
[2026-10-25 11:03:32,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:32,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:32,388.388 INFO    ] No update needed
[2026-10-25 11:03:32,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 11:03:32,428.428 INFO    ] 200
[2026-10-25 11:03:32,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:32,476.476 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:03:32,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:32,515.515 INFO    ] No camera update needed
[2026-10-25 11:03:32,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:03:32,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:03:32,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:03:32,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:03:34,577.577 INFO    ] ================================================
[2026-10-25 11:03:34,592.592 INFO    ] Launching Daemon at Sun Oct 25 11:03:34 IST 2026
[2026-10-25 11:03:34,602.602 INFO    ] ================================================
[2026-10-25 11:03:35,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:03:35
[2026-10-25 11:03:35,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:03:36,241.241 INFO    ] Initializing speech engine...
[2026-10-25 11:03:36,252.252 INFO    ] 2026-10-25 11:03:36
[2026-10-25 11:03:36,531.531 INFO    ] 2026-10-25 11:03:36
[2026-10-25 11:03:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:03:36,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:03:36,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:03:37,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:03:37,071.071 INFO    ] time= 25/10/2026 11:03:37
[2026-10-25 11:03:37,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:03:37,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:03:37,227.227 INFO    ] No existing commands found in stream
[2026-10-25 11:03:42,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:03:42,254.254 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 11:03:44,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:03:44,070.070 INFO    ] Checking for system updates...
[2026-10-25 11:03:44,108.108 INFO    ] 200
[2026-10-25 11:03:44,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:44,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:44,168.168 INFO    ] No update needed
[2026-10-25 11:03:44,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 11:03:44,207.207 INFO    ] 200
[2026-10-25 11:03:44,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:44,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:03:44,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:03:44,306.306 INFO    ] No camera update needed
[2026-10-25 11:03:44,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:03:44,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:03:44,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:03:44,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:03:46,366.366 INFO    ] ================================================
[2026-10-25 11:03:46,381.381 INFO    ] Launching Daemon at Sun Oct 25 11:03:46 IST 2026
[2026-10-25 11:03:46,392.392 INFO    ] ================================================
[2026-10-25 11:03:47,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:03:47
[2026-10-25 11:03:47,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:03:47,967.967 INFO    ] Initializing speech engine...
[2026-10-25 11:03:47,989.989 INFO    ] 2026-10-25 11:03:47
[2026-10-25 11:03:48,244.244 INFO    ] 2026-10-25 11:03:48
[2026-10-25 11:03:48,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:03:48,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:03:48,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:03:48,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:03:48,719.719 INFO    ] time= 25/10/2026 11:03:48
[2026-10-25 11:03:48,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:03:48,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:03:48,868.868 INFO    ] No existing commands found in stream
[2026-10-25 11:03:53,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:03:53,903.903 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 11:03:56,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:03:56,703.703 INFO    ] Checking for system updates...
[2026-10-25 11:03:56,739.739 INFO    ] 200
[2026-10-25 11:03:56,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:56,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:03:56,804.804 INFO    ] No update needed
[2026-10-25 11:03:56,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 11:03:56,841.841 INFO    ] 200
[2026-10-25 11:03:56,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:03:56,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:03:56,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:03:56,934.934 INFO    ] No camera update needed
[2026-10-25 11:03:56,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:03:56,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:03:56,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:03:56,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:03:58,988.988 INFO    ] ================================================
[2026-10-25 11:03:59,004.004 INFO    ] Launching Daemon at Sun Oct 25 11:03:58 IST 2026
[2026-10-25 11:03:59,015.015 INFO    ] ================================================
[2026-10-25 11:03:59,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:03:59
[2026-10-25 11:04:00,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:04:00,536.536 INFO    ] Initializing speech engine...
[2026-10-25 11:04:00,546.546 INFO    ] 2026-10-25 11:04:00
[2026-10-25 11:04:00,808.808 INFO    ] 2026-10-25 11:04:00
[2026-10-25 11:04:00,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:04:02,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:04:02,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:04:02,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:04:02,668.668 INFO    ] time= 25/10/2026 11:04:02
[2026-10-25 11:04:02,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:04:02,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:04:02,795.795 INFO    ] No existing commands found in stream
[2026-10-25 11:04:07,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:04:07,809.809 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 11:04:10,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:04:10,187.187 INFO    ] Checking for system updates...
[2026-10-25 11:04:10,227.227 INFO    ] 200
[2026-10-25 11:04:10,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:10,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:04:10,285.285 INFO    ] No update needed
[2026-10-25 11:04:10,288.288 INFO    ] Checking for camera pi updates...
[2026-10-25 11:04:10,322.322 INFO    ] 200
[2026-10-25 11:04:10,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:10,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:04:10,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:04:10,423.423 INFO    ] No camera update needed
[2026-10-25 11:04:10,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:04:10,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:04:10,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:04:10,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:04:12,480.480 INFO    ] ================================================
[2026-10-25 11:04:12,495.495 INFO    ] Launching Daemon at Sun Oct 25 11:04:12 IST 2026
[2026-10-25 11:04:12,507.507 INFO    ] ================================================
[2026-10-25 11:04:13,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:04:13
[2026-10-25 11:04:13,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:04:13,957.957 INFO    ] Initializing speech engine...
[2026-10-25 11:04:13,964.964 INFO    ] 2026-10-25 11:04:13
[2026-10-25 11:04:14,209.209 INFO    ] 2026-10-25 11:04:14
[2026-10-25 11:04:14,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:04:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:04:14,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:04:14,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:04:14,706.706 INFO    ] time= 25/10/2026 11:04:14
[2026-10-25 11:04:14,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:04:14,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:04:14,907.907 INFO    ] No existing commands found in stream
[2026-10-25 11:04:19,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:04:19,935.935 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 11:04:23,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:04:23,391.391 INFO    ] Checking for system updates...
[2026-10-25 11:04:23,427.427 INFO    ] 200
[2026-10-25 11:04:23,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:23,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:04:23,487.487 INFO    ] No update needed
[2026-10-25 11:04:23,490.490 INFO    ] Checking for camera pi updates...
[2026-10-25 11:04:23,524.524 INFO    ] 200
[2026-10-25 11:04:23,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:23,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:04:23,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:04:23,727.727 INFO    ] No camera update needed
[2026-10-25 11:04:23,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:04:23,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:04:23,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:04:23,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:04:25,785.785 INFO    ] ================================================
[2026-10-25 11:04:25,801.801 INFO    ] Launching Daemon at Sun Oct 25 11:04:25 IST 2026
[2026-10-25 11:04:25,813.813 INFO    ] ================================================
[2026-10-25 11:04:26,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:04:26
[2026-10-25 11:04:26,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:04:27,262.262 INFO    ] Initializing speech engine...
[2026-10-25 11:04:27,271.271 INFO    ] 2026-10-25 11:04:27
[2026-10-25 11:04:27,534.534 INFO    ] 2026-10-25 11:04:27
[2026-10-25 11:04:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:04:27,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:04:27,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:04:27,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:04:28,012.012 INFO    ] time= 25/10/2026 11:04:27
[2026-10-25 11:04:28,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:04:28,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:04:28,145.145 INFO    ] No existing commands found in stream
[2026-10-25 11:04:33,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:04:33,177.177 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 11:04:35,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:04:35,934.934 INFO    ] Checking for system updates...
[2026-10-25 11:04:35,974.974 INFO    ] 200
[2026-10-25 11:04:35,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:36,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:04:36,032.032 INFO    ] No update needed
[2026-10-25 11:04:36,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 11:04:36,068.068 INFO    ] 200
[2026-10-25 11:04:36,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:36,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:04:36,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:04:36,179.179 INFO    ] No camera update needed
[2026-10-25 11:04:36,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:04:36,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:04:36,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:04:36,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:04:38,234.234 INFO    ] ================================================
[2026-10-25 11:04:38,250.250 INFO    ] Launching Daemon at Sun Oct 25 11:04:38 IST 2026
[2026-10-25 11:04:38,261.261 INFO    ] ================================================
[2026-10-25 11:04:38,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:04:38
[2026-10-25 11:04:39,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:04:39,705.705 INFO    ] Initializing speech engine...
[2026-10-25 11:04:39,721.721 INFO    ] 2026-10-25 11:04:39
[2026-10-25 11:04:40,003.003 INFO    ] 2026-10-25 11:04:39
[2026-10-25 11:04:40,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:04:40,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:04:40,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:04:40,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:04:40,414.414 INFO    ] time= 25/10/2026 11:04:40
[2026-10-25 11:04:40,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:04:40,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:04:40,504.504 INFO    ] No existing commands found in stream
[2026-10-25 11:04:45,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:04:45,517.517 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 11:04:47,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:04:47,216.216 INFO    ] Checking for system updates...
[2026-10-25 11:04:47,252.252 INFO    ] 200
[2026-10-25 11:04:47,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:47,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:04:47,310.310 INFO    ] No update needed
[2026-10-25 11:04:47,312.312 INFO    ] Checking for camera pi updates...
[2026-10-25 11:04:47,346.346 INFO    ] 200
[2026-10-25 11:04:47,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:04:47,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:04:47,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:04:47,447.447 INFO    ] No camera update needed
[2026-10-25 11:04:47,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:04:47,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:04:47,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:04:47,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:04:49,502.502 INFO    ] ================================================
[2026-10-25 11:04:49,517.517 INFO    ] Launching Daemon at Sun Oct 25 11:04:49 IST 2026
[2026-10-25 11:04:49,528.528 INFO    ] ================================================
[2026-10-25 11:04:50,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:04:50
[2026-10-25 11:04:50,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:04:51,131.131 INFO    ] Initializing speech engine...
[2026-10-25 11:04:51,139.139 INFO    ] 2026-10-25 11:04:51
[2026-10-25 11:04:51,425.425 INFO    ] 2026-10-25 11:04:51
[2026-10-25 11:04:51,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:04:51,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:04:51,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:04:51,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:04:51,892.892 INFO    ] time= 25/10/2026 11:04:51
[2026-10-25 11:04:51,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:04:51,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:04:52,044.044 INFO    ] No existing commands found in stream
[2026-10-25 11:04:57,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:04:57,061.061 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 11:05:00,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:05:00,548.548 INFO    ] Checking for system updates...
[2026-10-25 11:05:00,584.584 INFO    ] 200
[2026-10-25 11:05:00,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:00,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:00,650.650 INFO    ] No update needed
[2026-10-25 11:05:00,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:00,687.687 INFO    ] 200
[2026-10-25 11:05:00,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:00,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:00,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:00,781.781 INFO    ] No camera update needed
[2026-10-25 11:05:00,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:00,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:00,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:00,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:05:02,837.837 INFO    ] ================================================
[2026-10-25 11:05:02,853.853 INFO    ] Launching Daemon at Sun Oct 25 11:05:02 IST 2026
[2026-10-25 11:05:02,864.864 INFO    ] ================================================
[2026-10-25 11:05:03,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:05:03
[2026-10-25 11:05:04,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:05:04,459.459 INFO    ] Initializing speech engine...
[2026-10-25 11:05:04,471.471 INFO    ] 2026-10-25 11:05:04
[2026-10-25 11:05:04,735.735 INFO    ] 2026-10-25 11:05:04
[2026-10-25 11:05:04,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:05:05,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:05:05,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:05:05,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:05:05,303.303 INFO    ] time= 25/10/2026 11:05:05
[2026-10-25 11:05:05,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:05:05,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:05:05,429.429 INFO    ] No existing commands found in stream
[2026-10-25 11:05:10,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:05:10,461.461 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 11:05:12,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:05:12,137.137 INFO    ] Checking for system updates...
[2026-10-25 11:05:12,180.180 INFO    ] 200
[2026-10-25 11:05:12,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:12,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:05:12,247.247 INFO    ] No update needed
[2026-10-25 11:05:12,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:12,287.287 INFO    ] 200
[2026-10-25 11:05:12,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:12,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:12,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:05:12,380.380 INFO    ] No camera update needed
[2026-10-25 11:05:12,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:12,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:12,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:12,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:05:14,438.438 INFO    ] ================================================
[2026-10-25 11:05:14,454.454 INFO    ] Launching Daemon at Sun Oct 25 11:05:14 IST 2026
[2026-10-25 11:05:14,465.465 INFO    ] ================================================
[2026-10-25 11:05:15,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:05:15
[2026-10-25 11:05:15,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:05:15,876.876 INFO    ] Initializing speech engine...
[2026-10-25 11:05:15,884.884 INFO    ] 2026-10-25 11:05:15
[2026-10-25 11:05:16,175.175 INFO    ] 2026-10-25 11:05:16
[2026-10-25 11:05:16,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:05:16,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:05:16,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:05:16,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:05:16,591.591 INFO    ] time= 25/10/2026 11:05:16
[2026-10-25 11:05:16,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:05:16,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:05:16,746.746 INFO    ] No existing commands found in stream
[2026-10-25 11:05:21,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:05:21,773.773 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 11:05:24,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:05:24,684.684 INFO    ] Checking for system updates...
[2026-10-25 11:05:24,721.721 INFO    ] 200
[2026-10-25 11:05:24,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:24,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:24,779.779 INFO    ] No update needed
[2026-10-25 11:05:24,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:24,815.815 INFO    ] 200
[2026-10-25 11:05:24,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:24,857.857 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:24,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:24,918.918 INFO    ] No camera update needed
[2026-10-25 11:05:24,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:24,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:24,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:24,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:05:26,974.974 INFO    ] ================================================
[2026-10-25 11:05:26,989.989 INFO    ] Launching Daemon at Sun Oct 25 11:05:26 IST 2026
[2026-10-25 11:05:27,000.000 INFO    ] ================================================
[2026-10-25 11:05:27,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:05:27
[2026-10-25 11:05:28,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:05:28,596.596 INFO    ] Initializing speech engine...
[2026-10-25 11:05:28,610.610 INFO    ] 2026-10-25 11:05:28
[2026-10-25 11:05:28,891.891 INFO    ] 2026-10-25 11:05:28
[2026-10-25 11:05:28,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:05:29,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:05:29,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:05:29,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:05:29,360.360 INFO    ] time= 25/10/2026 11:05:29
[2026-10-25 11:05:29,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:05:29,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:05:29,503.503 INFO    ] No existing commands found in stream
[2026-10-25 11:05:34,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:05:34,519.519 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 11:05:36,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:05:36,705.705 INFO    ] Checking for system updates...
[2026-10-25 11:05:36,742.742 INFO    ] 200
[2026-10-25 11:05:36,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:36,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:36,801.801 INFO    ] No update needed
[2026-10-25 11:05:36,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:36,839.839 INFO    ] 200
[2026-10-25 11:05:36,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:36,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:36,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:36,940.940 INFO    ] No camera update needed
[2026-10-25 11:05:36,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:36,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:36,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:36,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:05:39,997.997 INFO    ] ================================================
[2026-10-25 11:05:39,013.013 INFO    ] Launching Daemon at Sun Oct 25 11:05:39 IST 2026
[2026-10-25 11:05:39,023.023 INFO    ] ================================================
[2026-10-25 11:05:39,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:05:39
[2026-10-25 11:05:40,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:05:40,473.473 INFO    ] Initializing speech engine...
[2026-10-25 11:05:40,484.484 INFO    ] 2026-10-25 11:05:40
[2026-10-25 11:05:40,745.745 INFO    ] 2026-10-25 11:05:40
[2026-10-25 11:05:40,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:05:41,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:05:41,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:05:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:05:41,234.234 INFO    ] time= 25/10/2026 11:05:41
[2026-10-25 11:05:41,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:05:41,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:05:41,427.427 INFO    ] No existing commands found in stream
[2026-10-25 11:05:46,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:05:46,455.455 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 11:05:48,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:05:48,984.984 INFO    ] Checking for system updates...
[2026-10-25 11:05:49,024.024 INFO    ] 200
[2026-10-25 11:05:49,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:49,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:05:49,089.089 INFO    ] No update needed
[2026-10-25 11:05:49,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:49,125.125 INFO    ] 200
[2026-10-25 11:05:49,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:49,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:49,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:05:49,228.228 INFO    ] No camera update needed
[2026-10-25 11:05:49,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:49,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:49,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:49,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:05:51,284.284 INFO    ] ================================================
[2026-10-25 11:05:51,299.299 INFO    ] Launching Daemon at Sun Oct 25 11:05:51 IST 2026
[2026-10-25 11:05:51,310.310 INFO    ] ================================================
[2026-10-25 11:05:51,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:05:51
[2026-10-25 11:05:52,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:05:52,763.763 INFO    ] Initializing speech engine...
[2026-10-25 11:05:52,773.773 INFO    ] 2026-10-25 11:05:52
[2026-10-25 11:05:53,034.034 INFO    ] 2026-10-25 11:05:53
[2026-10-25 11:05:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:05:53,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:05:53,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:05:53,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:05:53,524.524 INFO    ] time= 25/10/2026 11:05:53
[2026-10-25 11:05:53,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:05:53,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:05:53,700.700 INFO    ] No existing commands found in stream
[2026-10-25 11:05:58,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:05:58,742.742 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 11:05:59,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:05:59,232.232 INFO    ] Checking for system updates...
[2026-10-25 11:05:59,268.268 INFO    ] 200
[2026-10-25 11:05:59,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:59,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:59,327.327 INFO    ] No update needed
[2026-10-25 11:05:59,329.329 INFO    ] Checking for camera pi updates...
[2026-10-25 11:05:59,364.364 INFO    ] 200
[2026-10-25 11:05:59,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:05:59,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:05:59,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:05:59,471.471 INFO    ] No camera update needed
[2026-10-25 11:05:59,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:05:59,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:05:59,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:05:59,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:06:01,554.554 INFO    ] ================================================
[2026-10-25 11:06:01,600.600 INFO    ] Launching Daemon at Sun Oct 25 11:06:01 IST 2026
[2026-10-25 11:06:01,623.623 INFO    ] ================================================
[2026-10-25 11:06:02,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:06:02
[2026-10-25 11:06:02,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:06:03,267.267 INFO    ] Initializing speech engine...
[2026-10-25 11:06:03,281.281 INFO    ] 2026-10-25 11:06:03
[2026-10-25 11:06:03,559.559 INFO    ] 2026-10-25 11:06:03
[2026-10-25 11:06:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:06:06,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:06:06,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:06:06,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:06:06,751.751 INFO    ] time= 25/10/2026 11:06:06
[2026-10-25 11:06:06,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:06:06,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:06:06,817.817 INFO    ] No existing commands found in stream
[2026-10-25 11:06:11,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:06:11,831.831 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 11:06:12,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:06:12,749.749 INFO    ] Checking for system updates...
[2026-10-25 11:06:12,790.790 INFO    ] 200
[2026-10-25 11:06:12,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:12,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:06:12,855.855 INFO    ] No update needed
[2026-10-25 11:06:12,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 11:06:12,892.892 INFO    ] 200
[2026-10-25 11:06:12,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:12,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:06:12,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:06:12,998.998 INFO    ] No camera update needed
[2026-10-25 11:06:13,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:06:13,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:06:13,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:06:13,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:06:15,053.053 INFO    ] ================================================
[2026-10-25 11:06:15,073.073 INFO    ] Launching Daemon at Sun Oct 25 11:06:15 IST 2026
[2026-10-25 11:06:15,083.083 INFO    ] ================================================
[2026-10-25 11:06:15,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:06:15
[2026-10-25 11:06:16,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:06:16,577.577 INFO    ] Initializing speech engine...
[2026-10-25 11:06:16,584.584 INFO    ] 2026-10-25 11:06:16
[2026-10-25 11:06:16,884.884 INFO    ] 2026-10-25 11:06:16
[2026-10-25 11:06:16,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:06:17,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:06:17,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:06:17,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:06:17,289.289 INFO    ] time= 25/10/2026 11:06:17
[2026-10-25 11:06:17,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:06:17,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:06:17,445.445 INFO    ] No existing commands found in stream
[2026-10-25 11:06:22,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:06:22,484.484 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 11:06:24,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:06:24,743.743 INFO    ] Checking for system updates...
[2026-10-25 11:06:24,779.779 INFO    ] 200
[2026-10-25 11:06:24,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:24,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:06:24,837.837 INFO    ] No update needed
[2026-10-25 11:06:24,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 11:06:24,873.873 INFO    ] 200
[2026-10-25 11:06:24,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:24,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:06:25,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:06:25,072.072 INFO    ] No camera update needed
[2026-10-25 11:06:25,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:06:25,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:06:25,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:06:25,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:06:27,128.128 INFO    ] ================================================
[2026-10-25 11:06:27,143.143 INFO    ] Launching Daemon at Sun Oct 25 11:06:27 IST 2026
[2026-10-25 11:06:27,154.154 INFO    ] ================================================
[2026-10-25 11:06:27,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:06:27
[2026-10-25 11:06:28,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:06:28,574.574 INFO    ] Initializing speech engine...
[2026-10-25 11:06:28,584.584 INFO    ] 2026-10-25 11:06:28
[2026-10-25 11:06:28,832.832 INFO    ] 2026-10-25 11:06:28
[2026-10-25 11:06:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:06:29,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:06:29,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:06:29,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:06:29,301.301 INFO    ] time= 25/10/2026 11:06:29
[2026-10-25 11:06:29,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:06:29,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:06:29,455.455 INFO    ] No existing commands found in stream
[2026-10-25 11:06:34,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:06:34,490.490 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 11:06:38,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:06:38,244.244 INFO    ] Checking for system updates...
[2026-10-25 11:06:38,281.281 INFO    ] 200
[2026-10-25 11:06:38,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:38,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:06:38,338.338 INFO    ] No update needed
[2026-10-25 11:06:38,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 11:06:38,375.375 INFO    ] 200
[2026-10-25 11:06:38,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:38,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:06:38,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:06:38,463.463 INFO    ] No camera update needed
[2026-10-25 11:06:38,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:06:38,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:06:38,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:06:38,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:06:40,520.520 INFO    ] ================================================
[2026-10-25 11:06:40,535.535 INFO    ] Launching Daemon at Sun Oct 25 11:06:40 IST 2026
[2026-10-25 11:06:40,545.545 INFO    ] ================================================
[2026-10-25 11:06:41,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:06:41
[2026-10-25 11:06:41,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:06:42,149.149 INFO    ] Initializing speech engine...
[2026-10-25 11:06:42,155.155 INFO    ] 2026-10-25 11:06:42
[2026-10-25 11:06:42,415.415 INFO    ] 2026-10-25 11:06:42
[2026-10-25 11:06:42,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:06:42,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:06:42,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:06:42,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:06:42,865.865 INFO    ] time= 25/10/2026 11:06:42
[2026-10-25 11:06:42,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:06:42,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:06:43,008.008 INFO    ] No existing commands found in stream
[2026-10-25 11:06:48,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:06:48,022.022 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 11:06:49,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:06:49,385.385 INFO    ] Checking for system updates...
[2026-10-25 11:06:49,428.428 INFO    ] 200
[2026-10-25 11:06:49,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:49,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:06:49,490.490 INFO    ] No update needed
[2026-10-25 11:06:49,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 11:06:49,533.533 INFO    ] 200
[2026-10-25 11:06:49,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:06:49,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:06:49,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:06:49,636.636 INFO    ] No camera update needed
[2026-10-25 11:06:49,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:06:49,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:06:49,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:06:49,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:06:51,694.694 INFO    ] ================================================
[2026-10-25 11:06:51,709.709 INFO    ] Launching Daemon at Sun Oct 25 11:06:51 IST 2026
[2026-10-25 11:06:51,719.719 INFO    ] ================================================
[2026-10-25 11:06:52,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:06:52
[2026-10-25 11:06:52,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:06:53,190.190 INFO    ] Initializing speech engine...
[2026-10-25 11:06:53,199.199 INFO    ] 2026-10-25 11:06:53
[2026-10-25 11:06:53,449.449 INFO    ] 2026-10-25 11:06:53
[2026-10-25 11:06:53,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:06:53,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:06:53,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:06:53,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:06:53,923.923 INFO    ] time= 25/10/2026 11:06:53
[2026-10-25 11:06:53,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:06:54,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:06:54,115.115 INFO    ] No existing commands found in stream
[2026-10-25 11:06:59,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:06:59,150.150 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 11:07:03,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:07:03,224.224 INFO    ] Checking for system updates...
[2026-10-25 11:07:03,261.261 INFO    ] 200
[2026-10-25 11:07:03,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:03,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:03,321.321 INFO    ] No update needed
[2026-10-25 11:07:03,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 11:07:03,364.364 INFO    ] 200
[2026-10-25 11:07:03,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:03,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:07:03,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:03,464.464 INFO    ] No camera update needed
[2026-10-25 11:07:03,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:07:03,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:07:03,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:07:03,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:07:05,522.522 INFO    ] ================================================
[2026-10-25 11:07:05,538.538 INFO    ] Launching Daemon at Sun Oct 25 11:07:05 IST 2026
[2026-10-25 11:07:05,549.549 INFO    ] ================================================
[2026-10-25 11:07:06,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:07:06
[2026-10-25 11:07:06,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:07:07,103.103 INFO    ] Initializing speech engine...
[2026-10-25 11:07:07,114.114 INFO    ] 2026-10-25 11:07:07
[2026-10-25 11:07:07,425.425 INFO    ] 2026-10-25 11:07:07
[2026-10-25 11:07:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:07:09,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:07:09,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:07:09,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:07:09,461.461 INFO    ] time= 25/10/2026 11:07:09
[2026-10-25 11:07:09,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:07:09,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:07:09,570.570 INFO    ] No existing commands found in stream
[2026-10-25 11:07:14,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:07:14,597.597 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 11:07:18,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:07:18,544.544 INFO    ] Checking for system updates...
[2026-10-25 11:07:18,580.580 INFO    ] 200
[2026-10-25 11:07:18,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:18,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:18,640.640 INFO    ] No update needed
[2026-10-25 11:07:18,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 11:07:18,681.681 INFO    ] 200
[2026-10-25 11:07:18,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:18,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:07:18,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:18,785.785 INFO    ] No camera update needed
[2026-10-25 11:07:18,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:07:18,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:07:18,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:07:18,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:07:20,840.840 INFO    ] ================================================
[2026-10-25 11:07:20,855.855 INFO    ] Launching Daemon at Sun Oct 25 11:07:20 IST 2026
[2026-10-25 11:07:20,866.866 INFO    ] ================================================
[2026-10-25 11:07:21,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:07:21
[2026-10-25 11:07:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:07:22,365.365 INFO    ] Initializing speech engine...
[2026-10-25 11:07:22,377.377 INFO    ] 2026-10-25 11:07:22
[2026-10-25 11:07:22,686.686 INFO    ] 2026-10-25 11:07:22
[2026-10-25 11:07:22,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:07:22,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:07:22,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:07:23,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:07:23,194.194 INFO    ] time= 25/10/2026 11:07:23
[2026-10-25 11:07:23,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:07:23,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:07:23,351.351 INFO    ] No existing commands found in stream
[2026-10-25 11:07:28,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:07:28,375.375 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 11:07:30,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:07:30,695.695 INFO    ] Checking for system updates...
[2026-10-25 11:07:30,733.733 INFO    ] 200
[2026-10-25 11:07:30,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:30,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:07:30,802.802 INFO    ] No update needed
[2026-10-25 11:07:30,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 11:07:30,840.840 INFO    ] 200
[2026-10-25 11:07:30,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:30,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:07:30,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:07:30,936.936 INFO    ] No camera update needed
[2026-10-25 11:07:30,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:07:30,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:07:30,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:07:30,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:07:33,996.996 INFO    ] ================================================
[2026-10-25 11:07:33,011.011 INFO    ] Launching Daemon at Sun Oct 25 11:07:33 IST 2026
[2026-10-25 11:07:33,021.021 INFO    ] ================================================
[2026-10-25 11:07:33,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:07:33
[2026-10-25 11:07:34,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:07:34,481.481 INFO    ] Initializing speech engine...
[2026-10-25 11:07:34,494.494 INFO    ] 2026-10-25 11:07:34
[2026-10-25 11:07:34,741.741 INFO    ] 2026-10-25 11:07:34
[2026-10-25 11:07:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:07:35,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:07:35,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:07:35,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:07:35,895.895 INFO    ] time= 25/10/2026 11:07:35
[2026-10-25 11:07:35,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:07:35,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:07:36,075.075 INFO    ] No existing commands found in stream
[2026-10-25 11:07:41,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:07:41,104.104 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 11:07:45,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:07:45,445.445 INFO    ] Checking for system updates...
[2026-10-25 11:07:45,482.482 INFO    ] 200
[2026-10-25 11:07:45,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:45,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:45,548.548 INFO    ] No update needed
[2026-10-25 11:07:45,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 11:07:45,584.584 INFO    ] 200
[2026-10-25 11:07:45,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:45,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:07:45,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:45,678.678 INFO    ] No camera update needed
[2026-10-25 11:07:45,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:07:45,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:07:45,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:07:45,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:07:47,735.735 INFO    ] ================================================
[2026-10-25 11:07:47,751.751 INFO    ] Launching Daemon at Sun Oct 25 11:07:47 IST 2026
[2026-10-25 11:07:47,762.762 INFO    ] ================================================
[2026-10-25 11:07:48,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:07:48
[2026-10-25 11:07:48,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:07:49,177.177 INFO    ] Initializing speech engine...
[2026-10-25 11:07:49,186.186 INFO    ] 2026-10-25 11:07:49
[2026-10-25 11:07:49,482.482 INFO    ] 2026-10-25 11:07:49
[2026-10-25 11:07:49,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:07:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:07:49,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:07:49,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:07:49,907.907 INFO    ] time= 25/10/2026 11:07:49
[2026-10-25 11:07:49,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:07:49,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:07:49,994.994 INFO    ] No existing commands found in stream
[2026-10-25 11:07:55,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:07:55,009.009 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 11:07:57,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:07:57,165.165 INFO    ] Checking for system updates...
[2026-10-25 11:07:57,203.203 INFO    ] 200
[2026-10-25 11:07:57,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:57,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:57,272.272 INFO    ] No update needed
[2026-10-25 11:07:57,275.275 INFO    ] Checking for camera pi updates...
[2026-10-25 11:07:57,313.313 INFO    ] 200
[2026-10-25 11:07:57,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:07:57,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:07:57,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:07:57,405.405 INFO    ] No camera update needed
[2026-10-25 11:07:57,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:07:57,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:07:57,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:07:57,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:07:59,459.459 INFO    ] ================================================
[2026-10-25 11:07:59,474.474 INFO    ] Launching Daemon at Sun Oct 25 11:07:59 IST 2026
[2026-10-25 11:07:59,485.485 INFO    ] ================================================
[2026-10-25 11:08:00,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:08:00
[2026-10-25 11:08:00,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:08:01,143.143 INFO    ] Initializing speech engine...
[2026-10-25 11:08:01,148.148 INFO    ] 2026-10-25 11:08:01
[2026-10-25 11:08:01,563.563 INFO    ] 2026-10-25 11:08:01
[2026-10-25 11:08:01,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:08:01,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:08:01,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:08:01,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:08:01,928.928 INFO    ] time= 25/10/2026 11:08:01
[2026-10-25 11:08:01,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:08:01,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:08:02,061.061 INFO    ] No existing commands found in stream
[2026-10-25 11:08:07,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:08:07,085.085 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 11:08:11,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:08:11,344.344 INFO    ] Checking for system updates...
[2026-10-25 11:08:11,391.391 INFO    ] 200
[2026-10-25 11:08:11,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:11,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:08:11,461.461 INFO    ] No update needed
[2026-10-25 11:08:11,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 11:08:11,502.502 INFO    ] 200
[2026-10-25 11:08:11,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:11,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:08:11,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:08:11,618.618 INFO    ] No camera update needed
[2026-10-25 11:08:11,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:08:11,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:08:11,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:08:11,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:08:13,681.681 INFO    ] ================================================
[2026-10-25 11:08:13,696.696 INFO    ] Launching Daemon at Sun Oct 25 11:08:13 IST 2026
[2026-10-25 11:08:13,707.707 INFO    ] ================================================
[2026-10-25 11:08:14,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:08:14
[2026-10-25 11:08:14,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:08:15,107.107 INFO    ] Initializing speech engine...
[2026-10-25 11:08:15,115.115 INFO    ] 2026-10-25 11:08:15
[2026-10-25 11:08:15,388.388 INFO    ] 2026-10-25 11:08:15
[2026-10-25 11:08:15,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:08:15,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:08:15,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:08:15,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:08:15,876.876 INFO    ] time= 25/10/2026 11:08:15
[2026-10-25 11:08:15,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:08:15,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:08:16,029.029 INFO    ] No existing commands found in stream
[2026-10-25 11:08:21,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:08:21,057.057 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 11:08:23,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:08:23,728.728 INFO    ] Checking for system updates...
[2026-10-25 11:08:23,764.764 INFO    ] 200
[2026-10-25 11:08:23,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:23,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:08:23,822.822 INFO    ] No update needed
[2026-10-25 11:08:23,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 11:08:23,858.858 INFO    ] 200
[2026-10-25 11:08:23,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:23,908.908 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:08:23,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:08:23,956.956 INFO    ] No camera update needed
[2026-10-25 11:08:23,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:08:23,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:08:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:08:23,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:08:26,012.012 INFO    ] ================================================
[2026-10-25 11:08:26,028.028 INFO    ] Launching Daemon at Sun Oct 25 11:08:26 IST 2026
[2026-10-25 11:08:26,039.039 INFO    ] ================================================
[2026-10-25 11:08:26,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:08:26
[2026-10-25 11:08:27,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:08:27,443.443 INFO    ] Initializing speech engine...
[2026-10-25 11:08:27,465.465 INFO    ] 2026-10-25 11:08:27
[2026-10-25 11:08:27,719.719 INFO    ] 2026-10-25 11:08:27
[2026-10-25 11:08:27,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:08:28,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:08:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:08:28,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:08:28,192.192 INFO    ] time= 25/10/2026 11:08:28
[2026-10-25 11:08:28,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:08:28,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:08:28,335.335 INFO    ] No existing commands found in stream
[2026-10-25 11:08:33,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:08:33,350.350 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 11:08:34,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:08:34,505.505 INFO    ] Checking for system updates...
[2026-10-25 11:08:34,543.543 INFO    ] 200
[2026-10-25 11:08:34,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:34,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:08:34,613.613 INFO    ] No update needed
[2026-10-25 11:08:34,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 11:08:34,652.652 INFO    ] 200
[2026-10-25 11:08:34,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:34,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:08:34,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:08:34,756.756 INFO    ] No camera update needed
[2026-10-25 11:08:34,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:08:34,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:08:34,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:08:34,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:08:36,818.818 INFO    ] ================================================
[2026-10-25 11:08:36,833.833 INFO    ] Launching Daemon at Sun Oct 25 11:08:36 IST 2026
[2026-10-25 11:08:36,844.844 INFO    ] ================================================
[2026-10-25 11:08:37,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:08:37
[2026-10-25 11:08:38,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:08:38,440.440 INFO    ] Initializing speech engine...
[2026-10-25 11:08:38,445.445 INFO    ] 2026-10-25 11:08:38
[2026-10-25 11:08:38,758.758 INFO    ] 2026-10-25 11:08:38
[2026-10-25 11:08:38,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:08:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:08:41,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:08:42,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:08:42,192.192 INFO    ] time= 25/10/2026 11:08:42
[2026-10-25 11:08:42,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:08:42,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:08:42,251.251 INFO    ] No existing commands found in stream
[2026-10-25 11:08:47,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:08:47,265.265 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 11:08:49,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:08:49,833.833 INFO    ] Checking for system updates...
[2026-10-25 11:08:49,871.871 INFO    ] 200
[2026-10-25 11:08:49,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:49,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:08:49,934.934 INFO    ] No update needed
[2026-10-25 11:08:49,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 11:08:49,972.972 INFO    ] 200
[2026-10-25 11:08:49,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:08:50,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:08:50,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:08:50,070.070 INFO    ] No camera update needed
[2026-10-25 11:08:50,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:08:50,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:08:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:08:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:08:52,126.126 INFO    ] ================================================
[2026-10-25 11:08:52,141.141 INFO    ] Launching Daemon at Sun Oct 25 11:08:52 IST 2026
[2026-10-25 11:08:52,152.152 INFO    ] ================================================
[2026-10-25 11:08:52,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:08:52
[2026-10-25 11:08:53,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:08:53,634.634 INFO    ] Initializing speech engine...
[2026-10-25 11:08:53,644.644 INFO    ] 2026-10-25 11:08:53
[2026-10-25 11:08:53,965.965 INFO    ] 2026-10-25 11:08:53
[2026-10-25 11:08:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:08:54,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:08:54,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:08:54,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:08:54,333.333 INFO    ] time= 25/10/2026 11:08:54
[2026-10-25 11:08:54,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:08:54,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:08:54,416.416 INFO    ] No existing commands found in stream
[2026-10-25 11:08:59,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:08:59,430.430 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 11:09:02,165.165 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:09:02,168.168 INFO    ] Checking for system updates...
[2026-10-25 11:09:02,213.213 INFO    ] 200
[2026-10-25 11:09:02,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:02,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:09:02,285.285 INFO    ] No update needed
[2026-10-25 11:09:02,288.288 INFO    ] Checking for camera pi updates...
[2026-10-25 11:09:02,336.336 INFO    ] 200
[2026-10-25 11:09:02,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:02,394.394 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:09:02,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:09:02,433.433 INFO    ] No camera update needed
[2026-10-25 11:09:02,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:09:02,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:09:02,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:09:02,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:09:04,494.494 INFO    ] ================================================
[2026-10-25 11:09:04,509.509 INFO    ] Launching Daemon at Sun Oct 25 11:09:04 IST 2026
[2026-10-25 11:09:04,520.520 INFO    ] ================================================
[2026-10-25 11:09:05,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:09:05
[2026-10-25 11:09:05,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:09:05,938.938 INFO    ] Initializing speech engine...
[2026-10-25 11:09:05,948.948 INFO    ] 2026-10-25 11:09:05
[2026-10-25 11:09:06,211.211 INFO    ] 2026-10-25 11:09:06
[2026-10-25 11:09:06,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:09:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:09:06,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:09:06,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:09:06,667.667 INFO    ] time= 25/10/2026 11:09:06
[2026-10-25 11:09:06,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:09:06,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:09:06,825.825 INFO    ] No existing commands found in stream
[2026-10-25 11:09:11,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:09:11,837.837 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 11:09:13,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:09:13,773.773 INFO    ] Checking for system updates...
[2026-10-25 11:09:13,809.809 INFO    ] 200
[2026-10-25 11:09:13,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:13,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:13,867.867 INFO    ] No update needed
[2026-10-25 11:09:13,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 11:09:13,903.903 INFO    ] 200
[2026-10-25 11:09:13,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:13,946.946 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:09:14,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:14,004.004 INFO    ] No camera update needed
[2026-10-25 11:09:14,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:09:14,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:09:14,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:09:14,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:09:16,060.060 INFO    ] ================================================
[2026-10-25 11:09:16,075.075 INFO    ] Launching Daemon at Sun Oct 25 11:09:16 IST 2026
[2026-10-25 11:09:16,086.086 INFO    ] ================================================
[2026-10-25 11:09:16,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:09:16
[2026-10-25 11:09:17,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:09:17,506.506 INFO    ] Initializing speech engine...
[2026-10-25 11:09:17,515.515 INFO    ] 2026-10-25 11:09:17
[2026-10-25 11:09:17,806.806 INFO    ] 2026-10-25 11:09:17
[2026-10-25 11:09:17,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:09:18,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:09:18,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:09:18,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:09:18,192.192 INFO    ] time= 25/10/2026 11:09:18
[2026-10-25 11:09:18,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:09:18,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:09:18,379.379 INFO    ] No existing commands found in stream
[2026-10-25 11:09:23,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:09:23,408.408 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 11:09:25,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:09:25,596.596 INFO    ] Checking for system updates...
[2026-10-25 11:09:25,633.633 INFO    ] 200
[2026-10-25 11:09:25,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:25,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:25,698.698 INFO    ] No update needed
[2026-10-25 11:09:25,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 11:09:25,739.739 INFO    ] 200
[2026-10-25 11:09:25,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:25,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:09:25,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:25,836.836 INFO    ] No camera update needed
[2026-10-25 11:09:25,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:09:25,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:09:25,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:09:25,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:09:27,893.893 INFO    ] ================================================
[2026-10-25 11:09:27,908.908 INFO    ] Launching Daemon at Sun Oct 25 11:09:27 IST 2026
[2026-10-25 11:09:27,919.919 INFO    ] ================================================
[2026-10-25 11:09:28,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:09:28
[2026-10-25 11:09:29,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:09:29,573.573 INFO    ] Initializing speech engine...
[2026-10-25 11:09:29,585.585 INFO    ] 2026-10-25 11:09:29
[2026-10-25 11:09:29,865.865 INFO    ] 2026-10-25 11:09:29
[2026-10-25 11:09:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:09:30,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:09:30,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:09:30,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:09:30,355.355 INFO    ] time= 25/10/2026 11:09:30
[2026-10-25 11:09:30,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:09:30,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:09:30,539.539 INFO    ] No existing commands found in stream
[2026-10-25 11:09:35,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:09:35,567.567 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 11:09:36,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:09:36,563.563 INFO    ] Checking for system updates...
[2026-10-25 11:09:36,603.603 INFO    ] 200
[2026-10-25 11:09:36,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:36,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:36,662.662 INFO    ] No update needed
[2026-10-25 11:09:36,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 11:09:36,698.698 INFO    ] 200
[2026-10-25 11:09:36,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:36,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:09:36,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:09:36,800.800 INFO    ] No camera update needed
[2026-10-25 11:09:36,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:09:36,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:09:36,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:09:36,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:09:38,855.855 INFO    ] ================================================
[2026-10-25 11:09:38,870.870 INFO    ] Launching Daemon at Sun Oct 25 11:09:38 IST 2026
[2026-10-25 11:09:38,881.881 INFO    ] ================================================
[2026-10-25 11:09:39,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:09:39
[2026-10-25 11:09:40,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:09:40,300.300 INFO    ] Initializing speech engine...
[2026-10-25 11:09:40,309.309 INFO    ] 2026-10-25 11:09:40
[2026-10-25 11:09:40,568.568 INFO    ] 2026-10-25 11:09:40
[2026-10-25 11:09:40,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:09:43,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:09:43,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:09:44,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:09:44,328.328 INFO    ] time= 25/10/2026 11:09:44
[2026-10-25 11:09:44,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:09:44,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:09:44,382.382 INFO    ] No existing commands found in stream
[2026-10-25 11:09:49,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:09:49,394.394 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 11:09:49,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:09:49,857.857 INFO    ] Checking for system updates...
[2026-10-25 11:09:49,893.893 INFO    ] 200
[2026-10-25 11:09:49,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:49,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:09:49,951.951 INFO    ] No update needed
[2026-10-25 11:09:49,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 11:09:49,991.991 INFO    ] 200
[2026-10-25 11:09:49,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:09:50,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:09:50,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:09:50,082.082 INFO    ] No camera update needed
[2026-10-25 11:09:50,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:09:50,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:09:50,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:09:50,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:09:52,140.140 INFO    ] ================================================
[2026-10-25 11:09:52,155.155 INFO    ] Launching Daemon at Sun Oct 25 11:09:52 IST 2026
[2026-10-25 11:09:52,166.166 INFO    ] ================================================
[2026-10-25 11:09:52,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:09:52
[2026-10-25 11:09:53,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:09:53,578.578 INFO    ] Initializing speech engine...
[2026-10-25 11:09:53,587.587 INFO    ] 2026-10-25 11:09:53
[2026-10-25 11:09:53,832.832 INFO    ] 2026-10-25 11:09:53
[2026-10-25 11:09:53,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:09:54,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:09:54,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:09:54,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:09:54,305.305 INFO    ] time= 25/10/2026 11:09:54
[2026-10-25 11:09:54,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:09:54,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:09:54,508.508 INFO    ] No existing commands found in stream
[2026-10-25 11:09:59,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:09:59,546.546 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 11:10:01,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:10:01,777.777 INFO    ] Checking for system updates...
[2026-10-25 11:10:01,904.904 INFO    ] 200
[2026-10-25 11:10:01,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:02,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:02,169.169 INFO    ] No update needed
[2026-10-25 11:10:02,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 11:10:02,296.296 INFO    ] 200
[2026-10-25 11:10:02,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:02,409.409 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:10:02,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:02,470.470 INFO    ] No camera update needed
[2026-10-25 11:10:02,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:10:02,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:10:02,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:10:02,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:10:04,553.553 INFO    ] ================================================
[2026-10-25 11:10:04,568.568 INFO    ] Launching Daemon at Sun Oct 25 11:10:04 IST 2026
[2026-10-25 11:10:04,578.578 INFO    ] ================================================
[2026-10-25 11:10:05,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:10:05
[2026-10-25 11:10:05,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:10:05,985.985 INFO    ] Initializing speech engine...
[2026-10-25 11:10:06,003.003 INFO    ] 2026-10-25 11:10:05
[2026-10-25 11:10:06,250.250 INFO    ] 2026-10-25 11:10:06
[2026-10-25 11:10:06,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:10:06,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:10:06,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:10:06,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:10:06,727.727 INFO    ] time= 25/10/2026 11:10:06
[2026-10-25 11:10:06,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:10:06,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:10:06,869.869 INFO    ] No existing commands found in stream
[2026-10-25 11:10:11,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:10:11,883.883 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 11:10:15,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:10:15,235.235 INFO    ] Checking for system updates...
[2026-10-25 11:10:15,276.276 INFO    ] 200
[2026-10-25 11:10:15,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:15,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:15,335.335 INFO    ] No update needed
[2026-10-25 11:10:15,338.338 INFO    ] Checking for camera pi updates...
[2026-10-25 11:10:15,376.376 INFO    ] 200
[2026-10-25 11:10:15,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:15,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:10:15,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:15,471.471 INFO    ] No camera update needed
[2026-10-25 11:10:15,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:10:15,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:10:15,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:10:15,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:10:17,525.525 INFO    ] ================================================
[2026-10-25 11:10:17,540.540 INFO    ] Launching Daemon at Sun Oct 25 11:10:17 IST 2026
[2026-10-25 11:10:17,551.551 INFO    ] ================================================
[2026-10-25 11:10:18,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:10:18
[2026-10-25 11:10:18,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:10:18,950.950 INFO    ] Initializing speech engine...
[2026-10-25 11:10:18,973.973 INFO    ] 2026-10-25 11:10:18
[2026-10-25 11:10:19,227.227 INFO    ] 2026-10-25 11:10:19
[2026-10-25 11:10:19,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:10:19,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:10:19,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:10:19,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:10:19,704.704 INFO    ] time= 25/10/2026 11:10:19
[2026-10-25 11:10:19,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:10:19,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:10:19,864.864 INFO    ] No existing commands found in stream
[2026-10-25 11:10:24,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:10:24,903.903 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 11:10:29,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:10:29,139.139 INFO    ] Checking for system updates...
[2026-10-25 11:10:29,176.176 INFO    ] 200
[2026-10-25 11:10:29,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:29,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:10:29,242.242 INFO    ] No update needed
[2026-10-25 11:10:29,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 11:10:29,279.279 INFO    ] 200
[2026-10-25 11:10:29,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:29,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:10:29,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:10:29,384.384 INFO    ] No camera update needed
[2026-10-25 11:10:29,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:10:29,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:10:29,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:10:29,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:10:31,438.438 INFO    ] ================================================
[2026-10-25 11:10:31,453.453 INFO    ] Launching Daemon at Sun Oct 25 11:10:31 IST 2026
[2026-10-25 11:10:31,464.464 INFO    ] ================================================
[2026-10-25 11:10:32,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:10:32
[2026-10-25 11:10:32,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:10:33,019.019 INFO    ] Initializing speech engine...
[2026-10-25 11:10:33,025.025 INFO    ] 2026-10-25 11:10:33
[2026-10-25 11:10:33,293.293 INFO    ] 2026-10-25 11:10:33
[2026-10-25 11:10:33,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:10:33,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:10:33,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:10:33,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:10:33,720.720 INFO    ] time= 25/10/2026 11:10:33
[2026-10-25 11:10:33,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:10:33,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:10:33,813.813 INFO    ] No existing commands found in stream
[2026-10-25 11:10:38,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:10:38,831.831 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 11:10:40,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:10:40,122.122 INFO    ] Checking for system updates...
[2026-10-25 11:10:40,159.159 INFO    ] 200
[2026-10-25 11:10:40,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:40,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:40,219.219 INFO    ] No update needed
[2026-10-25 11:10:40,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 11:10:40,256.256 INFO    ] 200
[2026-10-25 11:10:40,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:40,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:10:40,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:10:40,459.459 INFO    ] No camera update needed
[2026-10-25 11:10:40,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:10:40,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:10:40,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:10:40,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:10:42,514.514 INFO    ] ================================================
[2026-10-25 11:10:42,529.529 INFO    ] Launching Daemon at Sun Oct 25 11:10:42 IST 2026
[2026-10-25 11:10:42,540.540 INFO    ] ================================================
[2026-10-25 11:10:43,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:10:43
[2026-10-25 11:10:43,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:10:43,935.935 INFO    ] Initializing speech engine...
[2026-10-25 11:10:43,957.957 INFO    ] 2026-10-25 11:10:43
[2026-10-25 11:10:44,208.208 INFO    ] 2026-10-25 11:10:44
[2026-10-25 11:10:44,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:10:45,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:10:45,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:10:46,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:10:46,093.093 INFO    ] time= 25/10/2026 11:10:46
[2026-10-25 11:10:46,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:10:46,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:10:46,163.163 INFO    ] No existing commands found in stream
[2026-10-25 11:10:51,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:10:51,177.177 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 11:10:55,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:10:55,039.039 INFO    ] Checking for system updates...
[2026-10-25 11:10:55,076.076 INFO    ] 200
[2026-10-25 11:10:55,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:55,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:10:55,141.141 INFO    ] No update needed
[2026-10-25 11:10:55,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 11:10:55,178.178 INFO    ] 200
[2026-10-25 11:10:55,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:10:55,227.227 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:10:55,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:10:55,276.276 INFO    ] No camera update needed
[2026-10-25 11:10:55,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:10:55,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:10:55,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:10:55,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:10:57,333.333 INFO    ] ================================================
[2026-10-25 11:10:57,347.347 INFO    ] Launching Daemon at Sun Oct 25 11:10:57 IST 2026
[2026-10-25 11:10:57,358.358 INFO    ] ================================================
[2026-10-25 11:10:57,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:10:57
[2026-10-25 11:10:58,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:10:58,809.809 INFO    ] Initializing speech engine...
[2026-10-25 11:10:58,818.818 INFO    ] 2026-10-25 11:10:58
[2026-10-25 11:10:59,067.067 INFO    ] 2026-10-25 11:10:59
[2026-10-25 11:10:59,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:10:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:10:59,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:10:59,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:10:59,516.516 INFO    ] time= 25/10/2026 11:10:59
[2026-10-25 11:10:59,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:10:59,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:10:59,730.730 INFO    ] No existing commands found in stream
[2026-10-25 11:11:04,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:11:04,759.759 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 11:11:09,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:11:09,197.197 INFO    ] Checking for system updates...
[2026-10-25 11:11:09,238.238 INFO    ] 200
[2026-10-25 11:11:09,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:09,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:09,298.298 INFO    ] No update needed
[2026-10-25 11:11:09,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 11:11:09,338.338 INFO    ] 200
[2026-10-25 11:11:09,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:09,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:11:09,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:09,443.443 INFO    ] No camera update needed
[2026-10-25 11:11:09,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:11:09,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:11:09,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:11:09,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:11:11,497.497 INFO    ] ================================================
[2026-10-25 11:11:11,512.512 INFO    ] Launching Daemon at Sun Oct 25 11:11:11 IST 2026
[2026-10-25 11:11:11,523.523 INFO    ] ================================================
[2026-10-25 11:11:12,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:11:12
[2026-10-25 11:11:12,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:11:12,991.991 INFO    ] Initializing speech engine...
[2026-10-25 11:11:13,000.000 INFO    ] 2026-10-25 11:11:12
[2026-10-25 11:11:13,250.250 INFO    ] 2026-10-25 11:11:13
[2026-10-25 11:11:13,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:11:16,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:11:16,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:11:16,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:11:16,730.730 INFO    ] time= 25/10/2026 11:11:16
[2026-10-25 11:11:16,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:11:16,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:11:16,789.789 INFO    ] No existing commands found in stream
[2026-10-25 11:11:21,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:11:21,801.801 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 11:11:22,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:11:22,265.265 INFO    ] Checking for system updates...
[2026-10-25 11:11:22,306.306 INFO    ] 200
[2026-10-25 11:11:22,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:22,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:11:22,370.370 INFO    ] No update needed
[2026-10-25 11:11:22,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 11:11:22,410.410 INFO    ] 200
[2026-10-25 11:11:22,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:22,459.459 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:11:22,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:11:22,508.508 INFO    ] No camera update needed
[2026-10-25 11:11:22,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:11:22,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:11:22,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:11:22,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:11:24,563.563 INFO    ] ================================================
[2026-10-25 11:11:24,578.578 INFO    ] Launching Daemon at Sun Oct 25 11:11:24 IST 2026
[2026-10-25 11:11:24,589.589 INFO    ] ================================================
[2026-10-25 11:11:25,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:11:25
[2026-10-25 11:11:25,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:11:26,021.021 INFO    ] Initializing speech engine...
[2026-10-25 11:11:26,030.030 INFO    ] 2026-10-25 11:11:26
[2026-10-25 11:11:26,290.290 INFO    ] 2026-10-25 11:11:26
[2026-10-25 11:11:26,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:11:26,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:11:26,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:11:26,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:11:26,751.751 INFO    ] time= 25/10/2026 11:11:26
[2026-10-25 11:11:26,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:11:26,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:11:26,893.893 INFO    ] No existing commands found in stream
[2026-10-25 11:11:31,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:11:31,907.907 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 11:11:34,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:11:34,239.239 INFO    ] Checking for system updates...
[2026-10-25 11:11:34,280.280 INFO    ] 200
[2026-10-25 11:11:34,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:34,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:34,353.353 INFO    ] No update needed
[2026-10-25 11:11:34,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 11:11:34,395.395 INFO    ] 200
[2026-10-25 11:11:34,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:34,450.450 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:11:34,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:34,504.504 INFO    ] No camera update needed
[2026-10-25 11:11:34,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:11:34,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:11:34,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:11:34,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:11:36,564.564 INFO    ] ================================================
[2026-10-25 11:11:36,579.579 INFO    ] Launching Daemon at Sun Oct 25 11:11:36 IST 2026
[2026-10-25 11:11:36,590.590 INFO    ] ================================================
[2026-10-25 11:11:37,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:11:37
[2026-10-25 11:11:37,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:11:38,027.027 INFO    ] Initializing speech engine...
[2026-10-25 11:11:38,036.036 INFO    ] 2026-10-25 11:11:38
[2026-10-25 11:11:38,300.300 INFO    ] 2026-10-25 11:11:38
[2026-10-25 11:11:38,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:11:38,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:11:38,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:11:38,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:11:38,761.761 INFO    ] time= 25/10/2026 11:11:38
[2026-10-25 11:11:38,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:11:38,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:11:38,923.923 INFO    ] No existing commands found in stream
[2026-10-25 11:11:43,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:11:43,945.945 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 11:11:47,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:11:47,527.527 INFO    ] Checking for system updates...
[2026-10-25 11:11:47,567.567 INFO    ] 200
[2026-10-25 11:11:47,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:47,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:47,632.632 INFO    ] No update needed
[2026-10-25 11:11:47,634.634 INFO    ] Checking for camera pi updates...
[2026-10-25 11:11:47,684.684 INFO    ] 200
[2026-10-25 11:11:47,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:47,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:11:47,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:47,781.781 INFO    ] No camera update needed
[2026-10-25 11:11:47,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:11:47,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:11:47,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:11:47,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:11:49,837.837 INFO    ] ================================================
[2026-10-25 11:11:49,852.852 INFO    ] Launching Daemon at Sun Oct 25 11:11:49 IST 2026
[2026-10-25 11:11:49,863.863 INFO    ] ================================================
[2026-10-25 11:11:50,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:11:50
[2026-10-25 11:11:51,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:11:51,304.304 INFO    ] Initializing speech engine...
[2026-10-25 11:11:51,318.318 INFO    ] 2026-10-25 11:11:51
[2026-10-25 11:11:51,582.582 INFO    ] 2026-10-25 11:11:51
[2026-10-25 11:11:51,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:11:51,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:11:51,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:11:51,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:11:51,959.959 INFO    ] time= 25/10/2026 11:11:51
[2026-10-25 11:11:51,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:11:52,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:11:52,114.114 INFO    ] No existing commands found in stream
[2026-10-25 11:11:57,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:11:57,148.148 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 11:11:57,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:11:57,590.590 INFO    ] Checking for system updates...
[2026-10-25 11:11:57,626.626 INFO    ] 200
[2026-10-25 11:11:57,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:57,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:57,691.691 INFO    ] No update needed
[2026-10-25 11:11:57,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 11:11:57,745.745 INFO    ] 200
[2026-10-25 11:11:57,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:11:57,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:11:57,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:11:57,851.851 INFO    ] No camera update needed
[2026-10-25 11:11:57,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:11:57,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:11:57,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:11:57,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:11:59,907.907 INFO    ] ================================================
[2026-10-25 11:11:59,921.921 INFO    ] Launching Daemon at Sun Oct 25 11:11:59 IST 2026
[2026-10-25 11:11:59,932.932 INFO    ] ================================================
[2026-10-25 11:12:00,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:12:00
[2026-10-25 11:12:01,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:12:01,329.329 INFO    ] Initializing speech engine...
[2026-10-25 11:12:01,351.351 INFO    ] 2026-10-25 11:12:01
[2026-10-25 11:12:01,610.610 INFO    ] 2026-10-25 11:12:01
[2026-10-25 11:12:01,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:12:01,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:12:01,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:12:01,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:12:01,987.987 INFO    ] time= 25/10/2026 11:12:01
[2026-10-25 11:12:02,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:12:02,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:12:02,093.093 INFO    ] No existing commands found in stream
[2026-10-25 11:12:07,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:12:07,107.107 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 11:12:09,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:12:09,876.876 INFO    ] Checking for system updates...
[2026-10-25 11:12:09,912.912 INFO    ] 200
[2026-10-25 11:12:09,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:09,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:09,977.977 INFO    ] No update needed
[2026-10-25 11:12:09,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 11:12:10,013.013 INFO    ] 200
[2026-10-25 11:12:10,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:10,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:12:10,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:10,114.114 INFO    ] No camera update needed
[2026-10-25 11:12:10,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:12:10,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:12:10,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:12:10,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:12:12,170.170 INFO    ] ================================================
[2026-10-25 11:12:12,185.185 INFO    ] Launching Daemon at Sun Oct 25 11:12:12 IST 2026
[2026-10-25 11:12:12,196.196 INFO    ] ================================================
[2026-10-25 11:12:12,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:12:12
[2026-10-25 11:12:13,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:12:13,824.824 INFO    ] Initializing speech engine...
[2026-10-25 11:12:13,832.832 INFO    ] 2026-10-25 11:12:13
[2026-10-25 11:12:14,111.111 INFO    ] 2026-10-25 11:12:14
[2026-10-25 11:12:14,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:12:14,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:12:14,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:12:17,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:12:17,844.844 INFO    ] time= 25/10/2026 11:12:17
[2026-10-25 11:12:17,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:12:17,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:12:17,901.901 INFO    ] No existing commands found in stream
[2026-10-25 11:12:22,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:12:22,914.914 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 11:12:23,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:12:23,651.651 INFO    ] Checking for system updates...
[2026-10-25 11:12:23,693.693 INFO    ] 200
[2026-10-25 11:12:23,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:23,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:12:23,764.764 INFO    ] No update needed
[2026-10-25 11:12:23,767.767 INFO    ] Checking for camera pi updates...
[2026-10-25 11:12:23,806.806 INFO    ] 200
[2026-10-25 11:12:23,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:23,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:12:23,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:12:23,908.908 INFO    ] No camera update needed
[2026-10-25 11:12:23,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:12:23,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:12:23,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:12:23,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:12:25,964.964 INFO    ] ================================================
[2026-10-25 11:12:25,980.980 INFO    ] Launching Daemon at Sun Oct 25 11:12:25 IST 2026
[2026-10-25 11:12:25,992.992 INFO    ] ================================================
[2026-10-25 11:12:26,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:12:26
[2026-10-25 11:12:27,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:12:27,424.424 INFO    ] Initializing speech engine...
[2026-10-25 11:12:27,447.447 INFO    ] 2026-10-25 11:12:27
[2026-10-25 11:12:27,700.700 INFO    ] 2026-10-25 11:12:27
[2026-10-25 11:12:27,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:12:27,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:12:27,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:12:28,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:12:28,181.181 INFO    ] time= 25/10/2026 11:12:28
[2026-10-25 11:12:28,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:12:28,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:12:28,352.352 INFO    ] No existing commands found in stream
[2026-10-25 11:12:33,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:12:33,386.386 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 11:12:35,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:12:35,236.236 INFO    ] Checking for system updates...
[2026-10-25 11:12:35,277.277 INFO    ] 200
[2026-10-25 11:12:35,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:35,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:35,335.335 INFO    ] No update needed
[2026-10-25 11:12:35,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 11:12:35,375.375 INFO    ] 200
[2026-10-25 11:12:35,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:35,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:12:35,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:35,485.485 INFO    ] No camera update needed
[2026-10-25 11:12:35,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:12:35,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:12:35,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:12:35,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:12:37,541.541 INFO    ] ================================================
[2026-10-25 11:12:37,557.557 INFO    ] Launching Daemon at Sun Oct 25 11:12:37 IST 2026
[2026-10-25 11:12:37,569.569 INFO    ] ================================================
[2026-10-25 11:12:38,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:12:38
[2026-10-25 11:12:38,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:12:39,194.194 INFO    ] Initializing speech engine...
[2026-10-25 11:12:39,203.203 INFO    ] 2026-10-25 11:12:39
[2026-10-25 11:12:39,474.474 INFO    ] 2026-10-25 11:12:39
[2026-10-25 11:12:39,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:12:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:12:39,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:12:39,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:12:39,984.984 INFO    ] time= 25/10/2026 11:12:39
[2026-10-25 11:12:40,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:12:40,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:12:40,181.181 INFO    ] No existing commands found in stream
[2026-10-25 11:12:45,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:12:45,216.216 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 11:12:49,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:12:49,597.597 INFO    ] Checking for system updates...
[2026-10-25 11:12:49,638.638 INFO    ] 200
[2026-10-25 11:12:49,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:49,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:49,700.700 INFO    ] No update needed
[2026-10-25 11:12:49,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 11:12:49,742.742 INFO    ] 200
[2026-10-25 11:12:49,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:12:49,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:12:49,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:12:49,946.946 INFO    ] No camera update needed
[2026-10-25 11:12:49,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:12:49,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:12:49,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:12:49,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:12:52,003.003 INFO    ] ================================================
[2026-10-25 11:12:52,019.019 INFO    ] Launching Daemon at Sun Oct 25 11:12:52 IST 2026
[2026-10-25 11:12:52,029.029 INFO    ] ================================================
[2026-10-25 11:12:52,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:12:52
[2026-10-25 11:12:53,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:12:53,652.652 INFO    ] Initializing speech engine...
[2026-10-25 11:12:53,661.661 INFO    ] 2026-10-25 11:12:53
[2026-10-25 11:12:53,952.952 INFO    ] 2026-10-25 11:12:53
[2026-10-25 11:12:53,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:12:54,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:12:54,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:12:54,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:12:54,406.406 INFO    ] time= 25/10/2026 11:12:54
[2026-10-25 11:12:54,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:12:54,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:12:54,554.554 INFO    ] No existing commands found in stream
[2026-10-25 11:12:59,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:12:59,587.587 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 11:13:02,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:13:02,229.229 INFO    ] Checking for system updates...
[2026-10-25 11:13:02,271.271 INFO    ] 200
[2026-10-25 11:13:02,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:02,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:02,343.343 INFO    ] No update needed
[2026-10-25 11:13:02,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 11:13:02,403.403 INFO    ] 200
[2026-10-25 11:13:02,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:02,479.479 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:13:02,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:02,521.521 INFO    ] No camera update needed
[2026-10-25 11:13:02,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:13:02,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:13:02,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:13:02,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:13:04,581.581 INFO    ] ================================================
[2026-10-25 11:13:04,597.597 INFO    ] Launching Daemon at Sun Oct 25 11:13:04 IST 2026
[2026-10-25 11:13:04,607.607 INFO    ] ================================================
[2026-10-25 11:13:05,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:13:05
[2026-10-25 11:13:05,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:13:06,243.243 INFO    ] Initializing speech engine...
[2026-10-25 11:13:06,252.252 INFO    ] 2026-10-25 11:13:06
[2026-10-25 11:13:06,544.544 INFO    ] 2026-10-25 11:13:06
[2026-10-25 11:13:06,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:13:06,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:13:06,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:13:07,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:13:07,085.085 INFO    ] time= 25/10/2026 11:13:07
[2026-10-25 11:13:07,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:13:07,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:13:07,224.224 INFO    ] No existing commands found in stream
[2026-10-25 11:13:12,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:13:12,242.242 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 11:13:14,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:13:14,675.675 INFO    ] Checking for system updates...
[2026-10-25 11:13:14,711.711 INFO    ] 200
[2026-10-25 11:13:14,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:14,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:13:14,778.778 INFO    ] No update needed
[2026-10-25 11:13:14,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 11:13:14,819.819 INFO    ] 200
[2026-10-25 11:13:14,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:14,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:13:14,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:13:14,915.915 INFO    ] No camera update needed
[2026-10-25 11:13:14,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:13:14,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:13:14,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:13:14,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:13:16,970.970 INFO    ] ================================================
[2026-10-25 11:13:16,985.985 INFO    ] Launching Daemon at Sun Oct 25 11:13:16 IST 2026
[2026-10-25 11:13:17,996.996 INFO    ] ================================================
[2026-10-25 11:13:17,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:13:17
[2026-10-25 11:13:18,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:13:18,393.393 INFO    ] Initializing speech engine...
[2026-10-25 11:13:18,398.398 INFO    ] 2026-10-25 11:13:18
[2026-10-25 11:13:18,701.701 INFO    ] 2026-10-25 11:13:18
[2026-10-25 11:13:18,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:13:20,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:13:20,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:13:20,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:13:20,307.307 INFO    ] time= 25/10/2026 11:13:20
[2026-10-25 11:13:20,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:13:20,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:13:20,371.371 INFO    ] No existing commands found in stream
[2026-10-25 11:13:25,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:13:25,385.385 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 11:13:26,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:13:26,033.033 INFO    ] Checking for system updates...
[2026-10-25 11:13:26,070.070 INFO    ] 200
[2026-10-25 11:13:26,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:26,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:13:26,128.128 INFO    ] No update needed
[2026-10-25 11:13:26,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 11:13:26,169.169 INFO    ] 200
[2026-10-25 11:13:26,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:26,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:13:26,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:13:26,275.275 INFO    ] No camera update needed
[2026-10-25 11:13:26,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:13:26,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:13:26,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:13:26,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:13:28,330.330 INFO    ] ================================================
[2026-10-25 11:13:28,345.345 INFO    ] Launching Daemon at Sun Oct 25 11:13:28 IST 2026
[2026-10-25 11:13:28,356.356 INFO    ] ================================================
[2026-10-25 11:13:28,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:13:28
[2026-10-25 11:13:29,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:13:29,796.796 INFO    ] Initializing speech engine...
[2026-10-25 11:13:29,805.805 INFO    ] 2026-10-25 11:13:29
[2026-10-25 11:13:30,054.054 INFO    ] 2026-10-25 11:13:30
[2026-10-25 11:13:30,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:13:30,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:13:30,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:13:30,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:13:30,421.421 INFO    ] time= 25/10/2026 11:13:30
[2026-10-25 11:13:30,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:13:30,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:13:30,602.602 INFO    ] No existing commands found in stream
[2026-10-25 11:13:35,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:13:35,629.629 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 11:13:36,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:13:36,528.528 INFO    ] Checking for system updates...
[2026-10-25 11:13:36,564.564 INFO    ] 200
[2026-10-25 11:13:36,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:36,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:36,621.621 INFO    ] No update needed
[2026-10-25 11:13:36,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 11:13:36,657.657 INFO    ] 200
[2026-10-25 11:13:36,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:36,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:13:36,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:36,756.756 INFO    ] No camera update needed
[2026-10-25 11:13:36,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:13:36,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:13:36,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:13:36,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:13:38,812.812 INFO    ] ================================================
[2026-10-25 11:13:38,827.827 INFO    ] Launching Daemon at Sun Oct 25 11:13:38 IST 2026
[2026-10-25 11:13:38,837.837 INFO    ] ================================================
[2026-10-25 11:13:39,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:13:39
[2026-10-25 11:13:40,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:13:40,475.475 INFO    ] Initializing speech engine...
[2026-10-25 11:13:40,488.488 INFO    ] 2026-10-25 11:13:40
[2026-10-25 11:13:40,798.798 INFO    ] 2026-10-25 11:13:40
[2026-10-25 11:13:40,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:13:41,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:13:41,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:13:41,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:13:41,307.307 INFO    ] time= 25/10/2026 11:13:41
[2026-10-25 11:13:41,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:13:41,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:13:41,457.457 INFO    ] No existing commands found in stream
[2026-10-25 11:13:46,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:13:46,477.477 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 11:13:51,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:13:51,357.357 INFO    ] Checking for system updates...
[2026-10-25 11:13:51,398.398 INFO    ] 200
[2026-10-25 11:13:51,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:51,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:51,464.464 INFO    ] No update needed
[2026-10-25 11:13:51,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 11:13:51,506.506 INFO    ] 200
[2026-10-25 11:13:51,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:13:51,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:13:51,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:13:51,613.613 INFO    ] No camera update needed
[2026-10-25 11:13:51,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:13:51,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:13:51,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:13:51,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:13:53,673.673 INFO    ] ================================================
[2026-10-25 11:13:53,688.688 INFO    ] Launching Daemon at Sun Oct 25 11:13:53 IST 2026
[2026-10-25 11:13:53,699.699 INFO    ] ================================================
[2026-10-25 11:13:54,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:13:54
[2026-10-25 11:13:55,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:13:55,332.332 INFO    ] Initializing speech engine...
[2026-10-25 11:13:55,346.346 INFO    ] 2026-10-25 11:13:55
[2026-10-25 11:13:55,634.634 INFO    ] 2026-10-25 11:13:55
[2026-10-25 11:13:55,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:13:55,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:13:55,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:13:56,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:13:56,161.161 INFO    ] time= 25/10/2026 11:13:56
[2026-10-25 11:13:56,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:13:56,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:13:56,314.314 INFO    ] No existing commands found in stream
[2026-10-25 11:14:01,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:14:01,336.336 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 11:14:05,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:14:05,510.510 INFO    ] Checking for system updates...
[2026-10-25 11:14:05,546.546 INFO    ] 200
[2026-10-25 11:14:05,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:05,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:14:05,605.605 INFO    ] No update needed
[2026-10-25 11:14:05,608.608 INFO    ] Checking for camera pi updates...
[2026-10-25 11:14:05,646.646 INFO    ] 200
[2026-10-25 11:14:05,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:05,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:14:05,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:14:05,750.750 INFO    ] No camera update needed
[2026-10-25 11:14:05,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:14:05,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:14:05,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:14:05,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:14:07,806.806 INFO    ] ================================================
[2026-10-25 11:14:07,821.821 INFO    ] Launching Daemon at Sun Oct 25 11:14:07 IST 2026
[2026-10-25 11:14:07,831.831 INFO    ] ================================================
[2026-10-25 11:14:08,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:14:08
[2026-10-25 11:14:09,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:14:09,281.281 INFO    ] Initializing speech engine...
[2026-10-25 11:14:09,302.302 INFO    ] 2026-10-25 11:14:09
[2026-10-25 11:14:09,584.584 INFO    ] 2026-10-25 11:14:09
[2026-10-25 11:14:09,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:14:09,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:14:09,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:14:09,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:14:09,974.974 INFO    ] time= 25/10/2026 11:14:09
[2026-10-25 11:14:09,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:14:10,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:14:10,101.101 INFO    ] No existing commands found in stream
[2026-10-25 11:14:15,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:14:15,116.116 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 11:14:16,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:14:16,402.402 INFO    ] Checking for system updates...
[2026-10-25 11:14:16,438.438 INFO    ] 200
[2026-10-25 11:14:16,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:16,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:16,496.496 INFO    ] No update needed
[2026-10-25 11:14:16,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 11:14:16,533.533 INFO    ] 200
[2026-10-25 11:14:16,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:16,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:14:16,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:16,624.624 INFO    ] No camera update needed
[2026-10-25 11:14:16,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:14:16,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:14:16,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:14:16,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:14:18,681.681 INFO    ] ================================================
[2026-10-25 11:14:18,697.697 INFO    ] Launching Daemon at Sun Oct 25 11:14:18 IST 2026
[2026-10-25 11:14:18,707.707 INFO    ] ================================================
[2026-10-25 11:14:19,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:14:19
[2026-10-25 11:14:20,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:14:20,383.383 INFO    ] Initializing speech engine...
[2026-10-25 11:14:20,389.389 INFO    ] 2026-10-25 11:14:20
[2026-10-25 11:14:20,704.704 INFO    ] 2026-10-25 11:14:20
[2026-10-25 11:14:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:14:22,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:14:22,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:14:22,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:14:22,154.154 INFO    ] time= 25/10/2026 11:14:22
[2026-10-25 11:14:22,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:14:22,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:14:22,223.223 INFO    ] No existing commands found in stream
[2026-10-25 11:14:27,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:14:27,237.237 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 11:14:29,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:14:29,111.111 INFO    ] Checking for system updates...
[2026-10-25 11:14:29,147.147 INFO    ] 200
[2026-10-25 11:14:29,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:29,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:29,213.213 INFO    ] No update needed
[2026-10-25 11:14:29,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 11:14:29,249.249 INFO    ] 200
[2026-10-25 11:14:29,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:29,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:14:29,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:29,352.352 INFO    ] No camera update needed
[2026-10-25 11:14:29,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:14:29,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:14:29,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:14:29,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:14:31,409.409 INFO    ] ================================================
[2026-10-25 11:14:31,426.426 INFO    ] Launching Daemon at Sun Oct 25 11:14:31 IST 2026
[2026-10-25 11:14:31,437.437 INFO    ] ================================================
[2026-10-25 11:14:32,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:14:32
[2026-10-25 11:14:32,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:14:33,174.174 INFO    ] Initializing speech engine...
[2026-10-25 11:14:33,186.186 INFO    ] 2026-10-25 11:14:33
[2026-10-25 11:14:33,474.474 INFO    ] 2026-10-25 11:14:33
[2026-10-25 11:14:33,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:14:33,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:14:33,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:14:33,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:14:34,005.005 INFO    ] time= 25/10/2026 11:14:33
[2026-10-25 11:14:34,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:14:34,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:14:34,148.148 INFO    ] No existing commands found in stream
[2026-10-25 11:14:39,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:14:39,174.174 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 11:14:41,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:14:41,782.782 INFO    ] Checking for system updates...
[2026-10-25 11:14:41,819.819 INFO    ] 200
[2026-10-25 11:14:41,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:41,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:14:41,877.877 INFO    ] No update needed
[2026-10-25 11:14:41,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 11:14:41,916.916 INFO    ] 200
[2026-10-25 11:14:41,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:41,967.967 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:14:42,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:14:42,024.024 INFO    ] No camera update needed
[2026-10-25 11:14:42,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:14:42,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:14:42,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:14:42,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:14:44,081.081 INFO    ] ================================================
[2026-10-25 11:14:44,096.096 INFO    ] Launching Daemon at Sun Oct 25 11:14:44 IST 2026
[2026-10-25 11:14:44,107.107 INFO    ] ================================================
[2026-10-25 11:14:44,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:14:44
[2026-10-25 11:14:45,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:14:45,778.778 INFO    ] Initializing speech engine...
[2026-10-25 11:14:45,790.790 INFO    ] 2026-10-25 11:14:45
[2026-10-25 11:14:46,068.068 INFO    ] 2026-10-25 11:14:46
[2026-10-25 11:14:46,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:14:46,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:14:46,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:14:46,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:14:46,634.634 INFO    ] time= 25/10/2026 11:14:46
[2026-10-25 11:14:46,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:14:46,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:14:46,794.794 INFO    ] No existing commands found in stream
[2026-10-25 11:14:51,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:14:51,814.814 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 11:14:54,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:14:54,388.388 INFO    ] Checking for system updates...
[2026-10-25 11:14:54,425.425 INFO    ] 200
[2026-10-25 11:14:54,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:54,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:54,485.485 INFO    ] No update needed
[2026-10-25 11:14:54,488.488 INFO    ] Checking for camera pi updates...
[2026-10-25 11:14:54,523.523 INFO    ] 200
[2026-10-25 11:14:54,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:14:54,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:14:54,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:14:54,729.729 INFO    ] No camera update needed
[2026-10-25 11:14:54,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:14:54,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:14:54,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:14:54,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:14:56,788.788 INFO    ] ================================================
[2026-10-25 11:14:56,803.803 INFO    ] Launching Daemon at Sun Oct 25 11:14:56 IST 2026
[2026-10-25 11:14:56,814.814 INFO    ] ================================================
[2026-10-25 11:14:57,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:14:57
[2026-10-25 11:14:57,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:14:58,218.218 INFO    ] Initializing speech engine...
[2026-10-25 11:14:58,223.223 INFO    ] 2026-10-25 11:14:58
[2026-10-25 11:14:58,531.531 INFO    ] 2026-10-25 11:14:58
[2026-10-25 11:14:58,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:14:58,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:14:58,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:14:58,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:14:58,934.934 INFO    ] time= 25/10/2026 11:14:58
[2026-10-25 11:14:58,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:14:58,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:14:59,096.096 INFO    ] No existing commands found in stream
[2026-10-25 11:15:04,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:15:04,124.124 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 11:15:06,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:15:06,353.353 INFO    ] Checking for system updates...
[2026-10-25 11:15:06,389.389 INFO    ] 200
[2026-10-25 11:15:06,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:06,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:15:06,448.448 INFO    ] No update needed
[2026-10-25 11:15:06,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 11:15:06,485.485 INFO    ] 200
[2026-10-25 11:15:06,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:06,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:15:06,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:15:06,583.583 INFO    ] No camera update needed
[2026-10-25 11:15:06,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:15:06,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:15:06,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:15:06,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:15:08,638.638 INFO    ] ================================================
[2026-10-25 11:15:08,654.654 INFO    ] Launching Daemon at Sun Oct 25 11:15:08 IST 2026
[2026-10-25 11:15:08,665.665 INFO    ] ================================================
[2026-10-25 11:15:09,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:15:09
[2026-10-25 11:15:09,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:15:10,103.103 INFO    ] Initializing speech engine...
[2026-10-25 11:15:10,110.110 INFO    ] 2026-10-25 11:15:10
[2026-10-25 11:15:10,373.373 INFO    ] 2026-10-25 11:15:10
[2026-10-25 11:15:10,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:15:10,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:15:10,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:15:10,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:15:10,848.848 INFO    ] time= 25/10/2026 11:15:10
[2026-10-25 11:15:10,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:15:10,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:15:11,009.009 INFO    ] No existing commands found in stream
[2026-10-25 11:15:16,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:15:16,049.049 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 11:15:16,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:15:16,844.844 INFO    ] Checking for system updates...
[2026-10-25 11:15:16,884.884 INFO    ] 200
[2026-10-25 11:15:16,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:16,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:16,948.948 INFO    ] No update needed
[2026-10-25 11:15:16,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 11:15:16,985.985 INFO    ] 200
[2026-10-25 11:15:16,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:17,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:15:17,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:17,087.087 INFO    ] No camera update needed
[2026-10-25 11:15:17,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:15:17,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:15:17,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:15:17,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:15:19,145.145 INFO    ] ================================================
[2026-10-25 11:15:19,160.160 INFO    ] Launching Daemon at Sun Oct 25 11:15:19 IST 2026
[2026-10-25 11:15:19,170.170 INFO    ] ================================================
[2026-10-25 11:15:19,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:15:19
[2026-10-25 11:15:20,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:15:20,629.629 INFO    ] Initializing speech engine...
[2026-10-25 11:15:20,648.648 INFO    ] 2026-10-25 11:15:20
[2026-10-25 11:15:20,902.902 INFO    ] 2026-10-25 11:15:20
[2026-10-25 11:15:20,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:15:23,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:15:23,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:15:23,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:15:23,887.887 INFO    ] time= 25/10/2026 11:15:23
[2026-10-25 11:15:23,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:15:23,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:15:23,946.946 INFO    ] No existing commands found in stream
[2026-10-25 11:15:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:15:28,958.958 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 11:15:32,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:15:32,455.455 INFO    ] Checking for system updates...
[2026-10-25 11:15:32,496.496 INFO    ] 200
[2026-10-25 11:15:32,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:32,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:32,565.565 INFO    ] No update needed
[2026-10-25 11:15:32,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 11:15:32,610.610 INFO    ] 200
[2026-10-25 11:15:32,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:32,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:15:32,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:32,708.708 INFO    ] No camera update needed
[2026-10-25 11:15:32,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:15:32,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:15:32,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:15:32,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:15:34,764.764 INFO    ] ================================================
[2026-10-25 11:15:34,779.779 INFO    ] Launching Daemon at Sun Oct 25 11:15:34 IST 2026
[2026-10-25 11:15:34,789.789 INFO    ] ================================================
[2026-10-25 11:15:35,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:15:35
[2026-10-25 11:15:36,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:15:36,424.424 INFO    ] Initializing speech engine...
[2026-10-25 11:15:36,438.438 INFO    ] 2026-10-25 11:15:36
[2026-10-25 11:15:36,720.720 INFO    ] 2026-10-25 11:15:36
[2026-10-25 11:15:36,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:15:37,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:15:37,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:15:37,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:15:37,269.269 INFO    ] time= 25/10/2026 11:15:37
[2026-10-25 11:15:37,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:15:37,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:15:37,418.418 INFO    ] No existing commands found in stream
[2026-10-25 11:15:42,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:15:42,445.445 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 11:15:46,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:15:46,224.224 INFO    ] Checking for system updates...
[2026-10-25 11:15:46,262.262 INFO    ] 200
[2026-10-25 11:15:46,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:46,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:46,322.322 INFO    ] No update needed
[2026-10-25 11:15:46,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 11:15:46,359.359 INFO    ] 200
[2026-10-25 11:15:46,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:15:46,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:15:46,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:15:46,454.454 INFO    ] No camera update needed
[2026-10-25 11:15:46,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:15:46,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:15:46,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:15:46,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:15:48,511.511 INFO    ] ================================================
[2026-10-25 11:15:48,526.526 INFO    ] Launching Daemon at Sun Oct 25 11:15:48 IST 2026
[2026-10-25 11:15:48,536.536 INFO    ] ================================================
[2026-10-25 11:15:49,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:15:49
[2026-10-25 11:15:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:15:49,986.986 INFO    ] Initializing speech engine...
[2026-10-25 11:15:49,993.993 INFO    ] 2026-10-25 11:15:49
[2026-10-25 11:15:50,284.284 INFO    ] 2026-10-25 11:15:50
[2026-10-25 11:15:50,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:15:50,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:15:50,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:15:54,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:15:54,356.356 INFO    ] time= 25/10/2026 11:15:54
[2026-10-25 11:15:54,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:15:54,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:15:54,419.419 INFO    ] No existing commands found in stream
[2026-10-25 11:15:59,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:15:59,431.431 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 11:16:00,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:16:00,018.018 INFO    ] Checking for system updates...
[2026-10-25 11:16:00,056.056 INFO    ] 200
[2026-10-25 11:16:00,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:00,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:16:00,124.124 INFO    ] No update needed
[2026-10-25 11:16:00,126.126 INFO    ] Checking for camera pi updates...
[2026-10-25 11:16:00,164.164 INFO    ] 200
[2026-10-25 11:16:00,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:00,207.207 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:16:00,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:16:00,258.258 INFO    ] No camera update needed
[2026-10-25 11:16:00,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:16:00,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:16:00,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:16:00,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:16:02,316.316 INFO    ] ================================================
[2026-10-25 11:16:02,338.338 INFO    ] Launching Daemon at Sun Oct 25 11:16:02 IST 2026
[2026-10-25 11:16:02,353.353 INFO    ] ================================================
[2026-10-25 11:16:02,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:16:02
[2026-10-25 11:16:03,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:16:03,980.980 INFO    ] Initializing speech engine...
[2026-10-25 11:16:03,985.985 INFO    ] 2026-10-25 11:16:03
[2026-10-25 11:16:04,238.238 INFO    ] 2026-10-25 11:16:04
[2026-10-25 11:16:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:16:04,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:16:04,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:16:04,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:16:04,723.723 INFO    ] time= 25/10/2026 11:16:04
[2026-10-25 11:16:04,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:16:04,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:16:04,926.926 INFO    ] No existing commands found in stream
[2026-10-25 11:16:09,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:16:09,944.944 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 11:16:11,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:16:11,265.265 INFO    ] Checking for system updates...
[2026-10-25 11:16:11,302.302 INFO    ] 200
[2026-10-25 11:16:11,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:11,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:11,367.367 INFO    ] No update needed
[2026-10-25 11:16:11,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 11:16:11,404.404 INFO    ] 200
[2026-10-25 11:16:11,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:11,451.451 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:16:11,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:11,503.503 INFO    ] No camera update needed
[2026-10-25 11:16:11,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:16:11,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:16:11,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:16:11,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:16:13,561.561 INFO    ] ================================================
[2026-10-25 11:16:13,576.576 INFO    ] Launching Daemon at Sun Oct 25 11:16:13 IST 2026
[2026-10-25 11:16:13,587.587 INFO    ] ================================================
[2026-10-25 11:16:14,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:16:14
[2026-10-25 11:16:14,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:16:15,041.041 INFO    ] Initializing speech engine...
[2026-10-25 11:16:15,054.054 INFO    ] 2026-10-25 11:16:15
[2026-10-25 11:16:15,335.335 INFO    ] 2026-10-25 11:16:15
[2026-10-25 11:16:15,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:16:15,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:16:15,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:16:15,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:16:15,814.814 INFO    ] time= 25/10/2026 11:16:15
[2026-10-25 11:16:15,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:16:15,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:16:16,028.028 INFO    ] No existing commands found in stream
[2026-10-25 11:16:21,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:16:21,056.056 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 11:16:25,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:16:25,990.990 INFO    ] Checking for system updates...
[2026-10-25 11:16:26,033.033 INFO    ] 200
[2026-10-25 11:16:26,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:26,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:26,101.101 INFO    ] No update needed
[2026-10-25 11:16:26,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 11:16:26,151.151 INFO    ] 200
[2026-10-25 11:16:26,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:26,200.200 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:16:26,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:26,253.253 INFO    ] No camera update needed
[2026-10-25 11:16:26,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:16:26,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:16:26,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:16:26,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:16:28,308.308 INFO    ] ================================================
[2026-10-25 11:16:28,325.325 INFO    ] Launching Daemon at Sun Oct 25 11:16:28 IST 2026
[2026-10-25 11:16:28,336.336 INFO    ] ================================================
[2026-10-25 11:16:28,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:16:28
[2026-10-25 11:16:29,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:16:29,819.819 INFO    ] Initializing speech engine...
[2026-10-25 11:16:29,835.835 INFO    ] 2026-10-25 11:16:29
[2026-10-25 11:16:30,136.136 INFO    ] 2026-10-25 11:16:30
[2026-10-25 11:16:30,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:16:30,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:16:30,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:16:30,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:16:30,528.528 INFO    ] time= 25/10/2026 11:16:30
[2026-10-25 11:16:30,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:16:30,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:16:30,664.664 INFO    ] No existing commands found in stream
[2026-10-25 11:16:35,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:16:35,697.697 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 11:16:40,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:16:40,142.142 INFO    ] Checking for system updates...
[2026-10-25 11:16:40,179.179 INFO    ] 200
[2026-10-25 11:16:40,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:40,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:40,245.245 INFO    ] No update needed
[2026-10-25 11:16:40,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 11:16:40,282.282 INFO    ] 200
[2026-10-25 11:16:40,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:40,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:16:40,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:16:40,389.389 INFO    ] No camera update needed
[2026-10-25 11:16:40,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:16:40,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:16:40,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:16:40,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:16:42,444.444 INFO    ] ================================================
[2026-10-25 11:16:42,459.459 INFO    ] Launching Daemon at Sun Oct 25 11:16:42 IST 2026
[2026-10-25 11:16:42,470.470 INFO    ] ================================================
[2026-10-25 11:16:43,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:16:43
[2026-10-25 11:16:43,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:16:44,112.112 INFO    ] Initializing speech engine...
[2026-10-25 11:16:44,120.120 INFO    ] 2026-10-25 11:16:44
[2026-10-25 11:16:44,418.418 INFO    ] 2026-10-25 11:16:44
[2026-10-25 11:16:44,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:16:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:16:44,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:16:44,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:16:44,964.964 INFO    ] time= 25/10/2026 11:16:44
[2026-10-25 11:16:44,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:16:45,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:16:45,108.108 INFO    ] No existing commands found in stream
[2026-10-25 11:16:50,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:16:50,136.136 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 11:16:56,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:16:56,858.858 INFO    ] Checking for system updates...
[2026-10-25 11:16:56,895.895 INFO    ] 200
[2026-10-25 11:16:56,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:56,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:16:56,955.955 INFO    ] No update needed
[2026-10-25 11:16:56,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 11:16:56,993.993 INFO    ] 200
[2026-10-25 11:16:56,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:16:57,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:16:57,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:16:57,208.208 INFO    ] No camera update needed
[2026-10-25 11:16:57,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:16:57,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:16:57,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:16:57,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:16:59,275.275 INFO    ] ================================================
[2026-10-25 11:16:59,291.291 INFO    ] Launching Daemon at Sun Oct 25 11:16:59 IST 2026
[2026-10-25 11:16:59,302.302 INFO    ] ================================================
[2026-10-25 11:16:59,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:16:59
[2026-10-25 11:17:00,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:17:00,855.855 INFO    ] Initializing speech engine...
[2026-10-25 11:17:00,864.864 INFO    ] 2026-10-25 11:17:00
[2026-10-25 11:17:01,155.155 INFO    ] 2026-10-25 11:17:01
[2026-10-25 11:17:01,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:17:01,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:17:01,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:17:01,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:17:01,710.710 INFO    ] time= 25/10/2026 11:17:01
[2026-10-25 11:17:01,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:17:01,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:17:01,866.866 INFO    ] No existing commands found in stream
[2026-10-25 11:17:06,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:17:06,885.885 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 11:17:08,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:17:08,198.198 INFO    ] Checking for system updates...
[2026-10-25 11:17:08,239.239 INFO    ] 200
[2026-10-25 11:17:08,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:08,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:17:08,306.306 INFO    ] No update needed
[2026-10-25 11:17:08,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 11:17:08,346.346 INFO    ] 200
[2026-10-25 11:17:08,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:08,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:17:08,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:17:08,444.444 INFO    ] No camera update needed
[2026-10-25 11:17:08,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:17:08,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:17:08,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:17:08,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:17:10,504.504 INFO    ] ================================================
[2026-10-25 11:17:10,519.519 INFO    ] Launching Daemon at Sun Oct 25 11:17:10 IST 2026
[2026-10-25 11:17:10,530.530 INFO    ] ================================================
[2026-10-25 11:17:11,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:17:11
[2026-10-25 11:17:11,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:17:11,940.940 INFO    ] Initializing speech engine...
[2026-10-25 11:17:11,946.946 INFO    ] 2026-10-25 11:17:11
[2026-10-25 11:17:12,238.238 INFO    ] 2026-10-25 11:17:12
[2026-10-25 11:17:12,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:17:12,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:17:12,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:17:12,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:17:12,648.648 INFO    ] time= 25/10/2026 11:17:12
[2026-10-25 11:17:12,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:17:12,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:17:12,736.736 INFO    ] No existing commands found in stream
[2026-10-25 11:17:17,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:17:17,751.751 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 11:17:20,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:17:20,493.493 INFO    ] Checking for system updates...
[2026-10-25 11:17:20,529.529 INFO    ] 200
[2026-10-25 11:17:20,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:20,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:17:20,588.588 INFO    ] No update needed
[2026-10-25 11:17:20,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 11:17:20,627.627 INFO    ] 200
[2026-10-25 11:17:20,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:20,671.671 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:17:20,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:17:20,724.724 INFO    ] No camera update needed
[2026-10-25 11:17:20,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:17:20,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:17:20,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:17:20,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:17:22,780.780 INFO    ] ================================================
[2026-10-25 11:17:22,795.795 INFO    ] Launching Daemon at Sun Oct 25 11:17:22 IST 2026
[2026-10-25 11:17:22,806.806 INFO    ] ================================================
[2026-10-25 11:17:23,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:17:23
[2026-10-25 11:17:23,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:17:24,224.224 INFO    ] Initializing speech engine...
[2026-10-25 11:17:24,236.236 INFO    ] 2026-10-25 11:17:24
[2026-10-25 11:17:24,492.492 INFO    ] 2026-10-25 11:17:24
[2026-10-25 11:17:24,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:17:27,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:17:27,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:17:27,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:17:27,878.878 INFO    ] time= 25/10/2026 11:17:27
[2026-10-25 11:17:27,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:17:27,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:17:27,940.940 INFO    ] No existing commands found in stream
[2026-10-25 11:17:32,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:17:32,952.952 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 11:17:37,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:17:37,224.224 INFO    ] Checking for system updates...
[2026-10-25 11:17:37,261.261 INFO    ] 200
[2026-10-25 11:17:37,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:37,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:17:37,326.326 INFO    ] No update needed
[2026-10-25 11:17:37,329.329 INFO    ] Checking for camera pi updates...
[2026-10-25 11:17:37,364.364 INFO    ] 200
[2026-10-25 11:17:37,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:37,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:17:37,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:17:37,548.548 INFO    ] No camera update needed
[2026-10-25 11:17:37,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:17:37,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:17:37,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:17:37,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:17:39,610.610 INFO    ] ================================================
[2026-10-25 11:17:39,626.626 INFO    ] Launching Daemon at Sun Oct 25 11:17:39 IST 2026
[2026-10-25 11:17:39,637.637 INFO    ] ================================================
[2026-10-25 11:17:40,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:17:40
[2026-10-25 11:17:40,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:17:41,099.099 INFO    ] Initializing speech engine...
[2026-10-25 11:17:41,106.106 INFO    ] 2026-10-25 11:17:41
[2026-10-25 11:17:41,390.390 INFO    ] 2026-10-25 11:17:41
[2026-10-25 11:17:41,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:17:41,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:17:41,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:17:41,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:17:41,879.879 INFO    ] time= 25/10/2026 11:17:41
[2026-10-25 11:17:41,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:17:41,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:17:42,071.071 INFO    ] No existing commands found in stream
[2026-10-25 11:17:47,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:17:47,105.105 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 11:17:50,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:17:50,989.989 INFO    ] Checking for system updates...
[2026-10-25 11:17:51,025.025 INFO    ] 200
[2026-10-25 11:17:51,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:51,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:17:51,084.084 INFO    ] No update needed
[2026-10-25 11:17:51,087.087 INFO    ] Checking for camera pi updates...
[2026-10-25 11:17:51,124.124 INFO    ] 200
[2026-10-25 11:17:51,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:17:51,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:17:51,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:17:51,220.220 INFO    ] No camera update needed
[2026-10-25 11:17:51,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:17:51,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:17:51,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:17:51,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:17:53,277.277 INFO    ] ================================================
[2026-10-25 11:17:53,293.293 INFO    ] Launching Daemon at Sun Oct 25 11:17:53 IST 2026
[2026-10-25 11:17:53,304.304 INFO    ] ================================================
[2026-10-25 11:17:53,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:17:53
[2026-10-25 11:17:54,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:17:54,712.712 INFO    ] Initializing speech engine...
[2026-10-25 11:17:54,726.726 INFO    ] 2026-10-25 11:17:54
[2026-10-25 11:17:54,995.995 INFO    ] 2026-10-25 11:17:54
[2026-10-25 11:17:55,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:17:58,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:17:58,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:17:58,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:17:58,886.886 INFO    ] time= 25/10/2026 11:17:58
[2026-10-25 11:17:58,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:17:58,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:17:58,943.943 INFO    ] No existing commands found in stream
[2026-10-25 11:18:03,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:18:03,956.956 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 11:18:07,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:18:07,594.594 INFO    ] Checking for system updates...
[2026-10-25 11:18:07,633.633 INFO    ] 200
[2026-10-25 11:18:07,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:07,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:07,697.697 INFO    ] No update needed
[2026-10-25 11:18:07,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 11:18:07,736.736 INFO    ] 200
[2026-10-25 11:18:07,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:07,779.779 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:18:07,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:07,823.823 INFO    ] No camera update needed
[2026-10-25 11:18:07,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:18:07,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:18:07,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:18:07,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:18:09,879.879 INFO    ] ================================================
[2026-10-25 11:18:09,894.894 INFO    ] Launching Daemon at Sun Oct 25 11:18:09 IST 2026
[2026-10-25 11:18:09,904.904 INFO    ] ================================================
[2026-10-25 11:18:10,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:18:10
[2026-10-25 11:18:11,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:18:11,307.307 INFO    ] Initializing speech engine...
[2026-10-25 11:18:11,326.326 INFO    ] 2026-10-25 11:18:11
[2026-10-25 11:18:11,575.575 INFO    ] 2026-10-25 11:18:11
[2026-10-25 11:18:11,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:18:11,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:18:11,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:18:12,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:18:12,073.073 INFO    ] time= 25/10/2026 11:18:12
[2026-10-25 11:18:12,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:18:12,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:18:12,211.211 INFO    ] No existing commands found in stream
[2026-10-25 11:18:17,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:18:17,249.249 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 11:18:18,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:18:18,687.687 INFO    ] Checking for system updates...
[2026-10-25 11:18:18,725.725 INFO    ] 200
[2026-10-25 11:18:18,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:18,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:18,783.783 INFO    ] No update needed
[2026-10-25 11:18:18,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 11:18:18,822.822 INFO    ] 200
[2026-10-25 11:18:18,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:18,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:18:18,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:18,920.920 INFO    ] No camera update needed
[2026-10-25 11:18:18,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:18:18,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:18:18,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:18:18,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:18:20,978.978 INFO    ] ================================================
[2026-10-25 11:18:20,993.993 INFO    ] Launching Daemon at Sun Oct 25 11:18:20 IST 2026
[2026-10-25 11:18:21,005.005 INFO    ] ================================================
[2026-10-25 11:18:21,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:18:21
[2026-10-25 11:18:22,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:18:22,420.420 INFO    ] Initializing speech engine...
[2026-10-25 11:18:22,428.428 INFO    ] 2026-10-25 11:18:22
[2026-10-25 11:18:22,679.679 INFO    ] 2026-10-25 11:18:22
[2026-10-25 11:18:22,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:18:22,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:18:22,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:18:23,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:18:23,185.185 INFO    ] time= 25/10/2026 11:18:23
[2026-10-25 11:18:23,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:18:23,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:18:23,384.384 INFO    ] No existing commands found in stream
[2026-10-25 11:18:28,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:18:28,412.412 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 11:18:29,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:18:29,903.903 INFO    ] Checking for system updates...
[2026-10-25 11:18:29,939.939 INFO    ] 200
[2026-10-25 11:18:29,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:29,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:29,998.998 INFO    ] No update needed
[2026-10-25 11:18:30,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 11:18:30,036.036 INFO    ] 200
[2026-10-25 11:18:30,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:30,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:18:30,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:30,126.126 INFO    ] No camera update needed
[2026-10-25 11:18:30,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:18:30,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:18:30,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:18:30,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:18:32,187.187 INFO    ] ================================================
[2026-10-25 11:18:32,203.203 INFO    ] Launching Daemon at Sun Oct 25 11:18:32 IST 2026
[2026-10-25 11:18:32,214.214 INFO    ] ================================================
[2026-10-25 11:18:32,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:18:32
[2026-10-25 11:18:33,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:18:33,702.702 INFO    ] Initializing speech engine...
[2026-10-25 11:18:33,713.713 INFO    ] 2026-10-25 11:18:33
[2026-10-25 11:18:33,973.973 INFO    ] 2026-10-25 11:18:33
[2026-10-25 11:18:34,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:18:34,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:18:34,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:18:34,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:18:34,347.347 INFO    ] time= 25/10/2026 11:18:34
[2026-10-25 11:18:34,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:18:34,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:18:34,521.521 INFO    ] No existing commands found in stream
[2026-10-25 11:18:39,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:18:39,554.554 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 11:18:41,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:18:41,167.167 INFO    ] Checking for system updates...
[2026-10-25 11:18:41,203.203 INFO    ] 200
[2026-10-25 11:18:41,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:41,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:41,260.260 INFO    ] No update needed
[2026-10-25 11:18:41,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 11:18:41,298.298 INFO    ] 200
[2026-10-25 11:18:41,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:41,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:18:41,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:18:41,393.393 INFO    ] No camera update needed
[2026-10-25 11:18:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:18:41,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:18:41,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:18:41,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:18:43,449.449 INFO    ] ================================================
[2026-10-25 11:18:43,468.468 INFO    ] Launching Daemon at Sun Oct 25 11:18:43 IST 2026
[2026-10-25 11:18:43,480.480 INFO    ] ================================================
[2026-10-25 11:18:44,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:18:44
[2026-10-25 11:18:44,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:18:44,909.909 INFO    ] Initializing speech engine...
[2026-10-25 11:18:44,917.917 INFO    ] 2026-10-25 11:18:44
[2026-10-25 11:18:45,212.212 INFO    ] 2026-10-25 11:18:45
[2026-10-25 11:18:45,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:18:45,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:18:45,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:18:45,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:18:45,627.627 INFO    ] time= 25/10/2026 11:18:45
[2026-10-25 11:18:45,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:18:45,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:18:45,789.789 INFO    ] No existing commands found in stream
[2026-10-25 11:18:50,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:18:50,817.817 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 11:18:52,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:18:52,483.483 INFO    ] Checking for system updates...
[2026-10-25 11:18:52,521.521 INFO    ] 200
[2026-10-25 11:18:52,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:52,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:18:52,587.587 INFO    ] No update needed
[2026-10-25 11:18:52,590.590 INFO    ] Checking for camera pi updates...
[2026-10-25 11:18:52,625.625 INFO    ] 200
[2026-10-25 11:18:52,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:18:52,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:18:52,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:18:52,724.724 INFO    ] No camera update needed
[2026-10-25 11:18:52,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:18:52,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:18:52,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:18:52,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:18:54,781.781 INFO    ] ================================================
[2026-10-25 11:18:54,796.796 INFO    ] Launching Daemon at Sun Oct 25 11:18:54 IST 2026
[2026-10-25 11:18:54,899.899 INFO    ] ================================================
[2026-10-25 11:18:55,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:18:55
[2026-10-25 11:18:56,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:18:56,496.496 INFO    ] Initializing speech engine...
[2026-10-25 11:18:56,515.515 INFO    ] 2026-10-25 11:18:56
[2026-10-25 11:18:56,779.779 INFO    ] 2026-10-25 11:18:56
[2026-10-25 11:18:56,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:19:00,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:19:00,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:19:00,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:19:00,644.644 INFO    ] time= 25/10/2026 11:19:00
[2026-10-25 11:19:00,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:19:00,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:19:00,701.701 INFO    ] No existing commands found in stream
[2026-10-25 11:19:05,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:19:05,714.714 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 11:19:07,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:19:07,433.433 INFO    ] Checking for system updates...
[2026-10-25 11:19:07,473.473 INFO    ] 200
[2026-10-25 11:19:07,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:07,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:07,534.534 INFO    ] No update needed
[2026-10-25 11:19:07,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 11:19:07,572.572 INFO    ] 200
[2026-10-25 11:19:07,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:07,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:19:07,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:07,672.672 INFO    ] No camera update needed
[2026-10-25 11:19:07,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:19:07,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:19:07,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:19:07,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:19:09,730.730 INFO    ] ================================================
[2026-10-25 11:19:09,745.745 INFO    ] Launching Daemon at Sun Oct 25 11:19:09 IST 2026
[2026-10-25 11:19:09,756.756 INFO    ] ================================================
[2026-10-25 11:19:10,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:19:10
[2026-10-25 11:19:11,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:19:11,346.346 INFO    ] Initializing speech engine...
[2026-10-25 11:19:11,355.355 INFO    ] 2026-10-25 11:19:11
[2026-10-25 11:19:11,628.628 INFO    ] 2026-10-25 11:19:11
[2026-10-25 11:19:11,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:19:11,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:19:11,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:19:12,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:19:12,085.085 INFO    ] time= 25/10/2026 11:19:12
[2026-10-25 11:19:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:19:12,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:19:12,270.270 INFO    ] No existing commands found in stream
[2026-10-25 11:19:17,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:19:17,284.284 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 11:19:17,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:19:17,887.887 INFO    ] Checking for system updates...
[2026-10-25 11:19:17,922.922 INFO    ] 200
[2026-10-25 11:19:17,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:17,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:19:17,980.980 INFO    ] No update needed
[2026-10-25 11:19:17,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 11:19:18,021.021 INFO    ] 200
[2026-10-25 11:19:18,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:18,068.068 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:19:18,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:19:18,121.121 INFO    ] No camera update needed
[2026-10-25 11:19:18,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:19:18,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:19:18,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:19:18,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:19:20,176.176 INFO    ] ================================================
[2026-10-25 11:19:20,191.191 INFO    ] Launching Daemon at Sun Oct 25 11:19:20 IST 2026
[2026-10-25 11:19:20,202.202 INFO    ] ================================================
[2026-10-25 11:19:20,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:19:20
[2026-10-25 11:19:21,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:19:21,642.642 INFO    ] Initializing speech engine...
[2026-10-25 11:19:21,652.652 INFO    ] 2026-10-25 11:19:21
[2026-10-25 11:19:21,914.914 INFO    ] 2026-10-25 11:19:21
[2026-10-25 11:19:21,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:19:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:19:22,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:19:22,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:19:22,325.325 INFO    ] time= 25/10/2026 11:19:22
[2026-10-25 11:19:22,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:19:22,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:19:22,408.408 INFO    ] No existing commands found in stream
[2026-10-25 11:19:27,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:19:27,424.424 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 11:19:31,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:19:31,846.846 INFO    ] Checking for system updates...
[2026-10-25 11:19:31,894.894 INFO    ] 200
[2026-10-25 11:19:31,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:31,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:19:31,962.962 INFO    ] No update needed
[2026-10-25 11:19:31,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 11:19:32,005.005 INFO    ] 200
[2026-10-25 11:19:32,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:32,053.053 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:19:32,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:19:32,099.099 INFO    ] No camera update needed
[2026-10-25 11:19:32,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:19:32,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:19:32,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:19:32,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:19:34,157.157 INFO    ] ================================================
[2026-10-25 11:19:34,172.172 INFO    ] Launching Daemon at Sun Oct 25 11:19:34 IST 2026
[2026-10-25 11:19:34,183.183 INFO    ] ================================================
[2026-10-25 11:19:34,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:19:34
[2026-10-25 11:19:35,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:19:35,583.583 INFO    ] Initializing speech engine...
[2026-10-25 11:19:35,592.592 INFO    ] 2026-10-25 11:19:35
[2026-10-25 11:19:35,887.887 INFO    ] 2026-10-25 11:19:35
[2026-10-25 11:19:35,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:19:36,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:19:36,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:19:36,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:19:36,373.373 INFO    ] time= 25/10/2026 11:19:36
[2026-10-25 11:19:36,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:19:36,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:19:36,526.526 INFO    ] No existing commands found in stream
[2026-10-25 11:19:41,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:19:41,539.539 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 11:19:43,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:19:43,552.552 INFO    ] Checking for system updates...
[2026-10-25 11:19:43,588.588 INFO    ] 200
[2026-10-25 11:19:43,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:43,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:43,645.645 INFO    ] No update needed
[2026-10-25 11:19:43,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 11:19:43,682.682 INFO    ] 200
[2026-10-25 11:19:43,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:43,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:19:43,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:43,775.775 INFO    ] No camera update needed
[2026-10-25 11:19:43,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:19:43,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:19:43,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:19:43,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:19:45,834.834 INFO    ] ================================================
[2026-10-25 11:19:45,849.849 INFO    ] Launching Daemon at Sun Oct 25 11:19:45 IST 2026
[2026-10-25 11:19:45,861.861 INFO    ] ================================================
[2026-10-25 11:19:46,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:19:46
[2026-10-25 11:19:47,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:19:47,267.267 INFO    ] Initializing speech engine...
[2026-10-25 11:19:47,288.288 INFO    ] 2026-10-25 11:19:47
[2026-10-25 11:19:47,551.551 INFO    ] 2026-10-25 11:19:47
[2026-10-25 11:19:47,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:19:47,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:19:47,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:19:48,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:19:48,106.106 INFO    ] time= 25/10/2026 11:19:48
[2026-10-25 11:19:48,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:19:48,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:19:48,240.240 INFO    ] No existing commands found in stream
[2026-10-25 11:19:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:19:53,268.268 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 11:19:56,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:19:56,254.254 INFO    ] Checking for system updates...
[2026-10-25 11:19:56,298.298 INFO    ] 200
[2026-10-25 11:19:56,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:56,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:56,362.362 INFO    ] No update needed
[2026-10-25 11:19:56,364.364 INFO    ] Checking for camera pi updates...
[2026-10-25 11:19:56,402.402 INFO    ] 200
[2026-10-25 11:19:56,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:19:56,445.445 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:19:56,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:19:56,500.500 INFO    ] No camera update needed
[2026-10-25 11:19:56,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:19:56,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:19:56,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:19:56,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:19:58,557.557 INFO    ] ================================================
[2026-10-25 11:19:58,573.573 INFO    ] Launching Daemon at Sun Oct 25 11:19:58 IST 2026
[2026-10-25 11:19:58,584.584 INFO    ] ================================================
[2026-10-25 11:19:59,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:19:59
[2026-10-25 11:19:59,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:20:00,013.013 INFO    ] Initializing speech engine...
[2026-10-25 11:20:00,028.028 INFO    ] 2026-10-25 11:20:00
[2026-10-25 11:20:00,292.292 INFO    ] 2026-10-25 11:20:00
[2026-10-25 11:20:00,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:20:01,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:20:01,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:20:02,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:20:02,220.220 INFO    ] time= 25/10/2026 11:20:02
[2026-10-25 11:20:02,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:20:02,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:20:02,363.363 INFO    ] No existing commands found in stream
[2026-10-25 11:20:07,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:20:07,375.375 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 11:20:09,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:20:09,212.212 INFO    ] Checking for system updates...
[2026-10-25 11:20:09,247.247 INFO    ] 200
[2026-10-25 11:20:09,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:09,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:09,305.305 INFO    ] No update needed
[2026-10-25 11:20:09,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 11:20:09,342.342 INFO    ] 200
[2026-10-25 11:20:09,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:09,385.385 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:20:09,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:09,435.435 INFO    ] No camera update needed
[2026-10-25 11:20:09,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:20:09,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:20:09,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:20:09,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:20:11,490.490 INFO    ] ================================================
[2026-10-25 11:20:11,505.505 INFO    ] Launching Daemon at Sun Oct 25 11:20:11 IST 2026
[2026-10-25 11:20:11,522.522 INFO    ] ================================================
[2026-10-25 11:20:12,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:20:12
[2026-10-25 11:20:12,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:20:13,153.153 INFO    ] Initializing speech engine...
[2026-10-25 11:20:13,161.161 INFO    ] 2026-10-25 11:20:13
[2026-10-25 11:20:13,451.451 INFO    ] 2026-10-25 11:20:13
[2026-10-25 11:20:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:20:13,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:20:13,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:20:13,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:20:14,006.006 INFO    ] time= 25/10/2026 11:20:13
[2026-10-25 11:20:14,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:20:14,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:20:14,148.148 INFO    ] No existing commands found in stream
[2026-10-25 11:20:19,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:20:19,175.175 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 11:20:21,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:20:21,726.726 INFO    ] Checking for system updates...
[2026-10-25 11:20:21,764.764 INFO    ] 200
[2026-10-25 11:20:21,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:21,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:21,822.822 INFO    ] No update needed
[2026-10-25 11:20:21,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 11:20:21,862.862 INFO    ] 200
[2026-10-25 11:20:21,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:21,910.910 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:20:21,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:21,957.957 INFO    ] No camera update needed
[2026-10-25 11:20:21,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:20:21,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:20:21,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:20:21,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:20:24,012.012 INFO    ] ================================================
[2026-10-25 11:20:24,028.028 INFO    ] Launching Daemon at Sun Oct 25 11:20:24 IST 2026
[2026-10-25 11:20:24,039.039 INFO    ] ================================================
[2026-10-25 11:20:24,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:20:24
[2026-10-25 11:20:25,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:20:25,498.498 INFO    ] Initializing speech engine...
[2026-10-25 11:20:25,514.514 INFO    ] 2026-10-25 11:20:25
[2026-10-25 11:20:25,803.803 INFO    ] 2026-10-25 11:20:25
[2026-10-25 11:20:25,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:20:26,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:20:26,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:20:26,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:20:26,225.225 INFO    ] time= 25/10/2026 11:20:26
[2026-10-25 11:20:26,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:20:26,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:20:26,389.389 INFO    ] No existing commands found in stream
[2026-10-25 11:20:31,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:20:31,417.417 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 11:20:34,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:20:34,953.953 INFO    ] Checking for system updates...
[2026-10-25 11:20:34,989.989 INFO    ] 200
[2026-10-25 11:20:34,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:35,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:20:35,048.048 INFO    ] No update needed
[2026-10-25 11:20:35,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 11:20:35,086.086 INFO    ] 200
[2026-10-25 11:20:35,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:35,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:20:35,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:20:35,181.181 INFO    ] No camera update needed
[2026-10-25 11:20:35,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:20:35,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:20:35,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:20:35,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:20:37,236.236 INFO    ] ================================================
[2026-10-25 11:20:37,250.250 INFO    ] Launching Daemon at Sun Oct 25 11:20:37 IST 2026
[2026-10-25 11:20:37,261.261 INFO    ] ================================================
[2026-10-25 11:20:37,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:20:37
[2026-10-25 11:20:38,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:20:38,881.881 INFO    ] Initializing speech engine...
[2026-10-25 11:20:38,887.887 INFO    ] 2026-10-25 11:20:38
[2026-10-25 11:20:39,161.161 INFO    ] 2026-10-25 11:20:39
[2026-10-25 11:20:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:20:39,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:20:39,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:20:39,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:20:39,642.642 INFO    ] time= 25/10/2026 11:20:39
[2026-10-25 11:20:39,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:20:39,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:20:39,854.854 INFO    ] No existing commands found in stream
[2026-10-25 11:20:44,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:20:44,883.883 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 11:20:46,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:20:46,669.669 INFO    ] Checking for system updates...
[2026-10-25 11:20:46,706.706 INFO    ] 200
[2026-10-25 11:20:46,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:46,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:46,766.766 INFO    ] No update needed
[2026-10-25 11:20:46,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 11:20:46,805.805 INFO    ] 200
[2026-10-25 11:20:46,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:46,850.850 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:20:46,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:20:46,905.905 INFO    ] No camera update needed
[2026-10-25 11:20:46,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:20:46,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:20:46,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:20:46,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:20:48,963.963 INFO    ] ================================================
[2026-10-25 11:20:48,978.978 INFO    ] Launching Daemon at Sun Oct 25 11:20:48 IST 2026
[2026-10-25 11:20:48,989.989 INFO    ] ================================================
[2026-10-25 11:20:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:20:49
[2026-10-25 11:20:50,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:20:50,394.394 INFO    ] Initializing speech engine...
[2026-10-25 11:20:50,403.403 INFO    ] 2026-10-25 11:20:50
[2026-10-25 11:20:50,696.696 INFO    ] 2026-10-25 11:20:50
[2026-10-25 11:20:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:20:50,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:20:50,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:20:51,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:20:51,169.169 INFO    ] time= 25/10/2026 11:20:51
[2026-10-25 11:20:51,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:20:51,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:20:51,344.344 INFO    ] No existing commands found in stream
[2026-10-25 11:20:56,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:20:56,358.358 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 11:20:59,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:20:59,396.396 INFO    ] Checking for system updates...
[2026-10-25 11:20:59,434.434 INFO    ] 200
[2026-10-25 11:20:59,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:59,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:20:59,493.493 INFO    ] No update needed
[2026-10-25 11:20:59,495.495 INFO    ] Checking for camera pi updates...
[2026-10-25 11:20:59,529.529 INFO    ] 200
[2026-10-25 11:20:59,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:20:59,577.577 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:20:59,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:20:59,629.629 INFO    ] No camera update needed
[2026-10-25 11:20:59,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:20:59,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:20:59,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:20:59,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:21:01,695.695 INFO    ] ================================================
[2026-10-25 11:21:01,720.720 INFO    ] Launching Daemon at Sun Oct 25 11:21:01 IST 2026
[2026-10-25 11:21:01,738.738 INFO    ] ================================================
[2026-10-25 11:21:02,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:21:02
[2026-10-25 11:21:03,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:21:03,280.280 INFO    ] Initializing speech engine...
[2026-10-25 11:21:03,286.286 INFO    ] 2026-10-25 11:21:03
[2026-10-25 11:21:03,585.585 INFO    ] 2026-10-25 11:21:03
[2026-10-25 11:21:03,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:21:04,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:21:04,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:21:04,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:21:04,406.406 INFO    ] time= 25/10/2026 11:21:04
[2026-10-25 11:21:04,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:21:04,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:21:04,631.631 INFO    ] No existing commands found in stream
[2026-10-25 11:21:09,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:21:09,664.664 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 11:21:12,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:21:12,183.183 INFO    ] Checking for system updates...
[2026-10-25 11:21:12,219.219 INFO    ] 200
[2026-10-25 11:21:12,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:12,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:12,278.278 INFO    ] No update needed
[2026-10-25 11:21:12,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 11:21:12,314.314 INFO    ] 200
[2026-10-25 11:21:12,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:12,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:21:12,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:12,514.514 INFO    ] No camera update needed
[2026-10-25 11:21:12,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:21:12,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:21:12,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:21:12,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:21:14,571.571 INFO    ] ================================================
[2026-10-25 11:21:14,586.586 INFO    ] Launching Daemon at Sun Oct 25 11:21:14 IST 2026
[2026-10-25 11:21:14,597.597 INFO    ] ================================================
[2026-10-25 11:21:15,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:21:15
[2026-10-25 11:21:15,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:21:16,198.198 INFO    ] Initializing speech engine...
[2026-10-25 11:21:16,207.207 INFO    ] 2026-10-25 11:21:16
[2026-10-25 11:21:16,470.470 INFO    ] 2026-10-25 11:21:16
[2026-10-25 11:21:16,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:21:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:21:16,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:21:16,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:21:16,975.975 INFO    ] time= 25/10/2026 11:21:16
[2026-10-25 11:21:17,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:21:17,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:21:17,161.161 INFO    ] No existing commands found in stream
[2026-10-25 11:21:22,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:21:22,192.192 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 11:21:24,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:21:24,088.088 INFO    ] Checking for system updates...
[2026-10-25 11:21:24,125.125 INFO    ] 200
[2026-10-25 11:21:24,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:24,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:21:24,185.185 INFO    ] No update needed
[2026-10-25 11:21:24,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 11:21:24,223.223 INFO    ] 200
[2026-10-25 11:21:24,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:24,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:21:24,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:21:24,320.320 INFO    ] No camera update needed
[2026-10-25 11:21:24,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:21:24,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:21:24,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:21:24,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:21:26,375.375 INFO    ] ================================================
[2026-10-25 11:21:26,390.390 INFO    ] Launching Daemon at Sun Oct 25 11:21:26 IST 2026
[2026-10-25 11:21:26,400.400 INFO    ] ================================================
[2026-10-25 11:21:26,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:21:26
[2026-10-25 11:21:27,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:21:27,858.858 INFO    ] Initializing speech engine...
[2026-10-25 11:21:27,864.864 INFO    ] 2026-10-25 11:21:27
[2026-10-25 11:21:28,126.126 INFO    ] 2026-10-25 11:21:28
[2026-10-25 11:21:28,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:21:28,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:21:28,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:21:28,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:21:28,590.590 INFO    ] time= 25/10/2026 11:21:28
[2026-10-25 11:21:28,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:21:28,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:21:28,781.781 INFO    ] No existing commands found in stream
[2026-10-25 11:21:33,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:21:33,811.811 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 11:21:36,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:21:36,741.741 INFO    ] Checking for system updates...
[2026-10-25 11:21:36,778.778 INFO    ] 200
[2026-10-25 11:21:36,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:36,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:21:36,837.837 INFO    ] No update needed
[2026-10-25 11:21:36,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 11:21:36,877.877 INFO    ] 200
[2026-10-25 11:21:36,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:36,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:21:36,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:21:36,978.978 INFO    ] No camera update needed
[2026-10-25 11:21:36,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:21:36,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:21:36,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:21:36,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:21:39,034.034 INFO    ] ================================================
[2026-10-25 11:21:39,049.049 INFO    ] Launching Daemon at Sun Oct 25 11:21:39 IST 2026
[2026-10-25 11:21:39,059.059 INFO    ] ================================================
[2026-10-25 11:21:39,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:21:39
[2026-10-25 11:21:40,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:21:40,457.457 INFO    ] Initializing speech engine...
[2026-10-25 11:21:40,472.472 INFO    ] 2026-10-25 11:21:40
[2026-10-25 11:21:40,739.739 INFO    ] 2026-10-25 11:21:40
[2026-10-25 11:21:40,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:21:40,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:21:41,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:21:41,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:21:41,248.248 INFO    ] time= 25/10/2026 11:21:41
[2026-10-25 11:21:41,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:21:41,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:21:41,449.449 INFO    ] No existing commands found in stream
[2026-10-25 11:21:46,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:21:46,483.483 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 11:21:48,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:21:48,263.263 INFO    ] Checking for system updates...
[2026-10-25 11:21:48,300.300 INFO    ] 200
[2026-10-25 11:21:48,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:48,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:48,360.360 INFO    ] No update needed
[2026-10-25 11:21:48,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 11:21:48,397.397 INFO    ] 200
[2026-10-25 11:21:48,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:48,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:21:48,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:48,491.491 INFO    ] No camera update needed
[2026-10-25 11:21:48,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:21:48,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:21:48,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:21:48,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:21:50,551.551 INFO    ] ================================================
[2026-10-25 11:21:50,566.566 INFO    ] Launching Daemon at Sun Oct 25 11:21:50 IST 2026
[2026-10-25 11:21:50,577.577 INFO    ] ================================================
[2026-10-25 11:21:51,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:21:51
[2026-10-25 11:21:51,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:21:52,173.173 INFO    ] Initializing speech engine...
[2026-10-25 11:21:52,182.182 INFO    ] 2026-10-25 11:21:52
[2026-10-25 11:21:52,465.465 INFO    ] 2026-10-25 11:21:52
[2026-10-25 11:21:52,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:21:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:21:52,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:21:52,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:21:53,004.004 INFO    ] time= 25/10/2026 11:21:52
[2026-10-25 11:21:53,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:21:53,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:21:53,158.158 INFO    ] No existing commands found in stream
[2026-10-25 11:21:58,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:21:58,176.176 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 11:21:59,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:21:59,613.613 INFO    ] Checking for system updates...
[2026-10-25 11:21:59,650.650 INFO    ] 200
[2026-10-25 11:21:59,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:59,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:59,708.708 INFO    ] No update needed
[2026-10-25 11:21:59,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 11:21:59,748.748 INFO    ] 200
[2026-10-25 11:21:59,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:21:59,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:21:59,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:21:59,851.851 INFO    ] No camera update needed
[2026-10-25 11:21:59,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:21:59,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:21:59,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:21:59,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:22:01,938.938 INFO    ] ================================================
[2026-10-25 11:22:01,964.964 INFO    ] Launching Daemon at Sun Oct 25 11:22:01 IST 2026
[2026-10-25 11:22:01,982.982 INFO    ] ================================================
[2026-10-25 11:22:02,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:22:02
[2026-10-25 11:22:03,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:22:03,531.531 INFO    ] Initializing speech engine...
[2026-10-25 11:22:03,544.544 INFO    ] 2026-10-25 11:22:03
[2026-10-25 11:22:03,813.813 INFO    ] 2026-10-25 11:22:03
[2026-10-25 11:22:03,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:22:05,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:22:05,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:22:05,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:22:05,989.989 INFO    ] time= 25/10/2026 11:22:05
[2026-10-25 11:22:05,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:22:06,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:22:06,088.088 INFO    ] No existing commands found in stream
[2026-10-25 11:22:11,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:22:11,107.107 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 11:22:14,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:22:14,748.748 INFO    ] Checking for system updates...
[2026-10-25 11:22:14,787.787 INFO    ] 200
[2026-10-25 11:22:14,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:14,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:22:14,846.846 INFO    ] No update needed
[2026-10-25 11:22:14,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 11:22:14,882.882 INFO    ] 200
[2026-10-25 11:22:14,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:14,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:22:14,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:22:14,976.976 INFO    ] No camera update needed
[2026-10-25 11:22:14,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:22:14,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:22:14,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:22:14,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:22:17,031.031 INFO    ] ================================================
[2026-10-25 11:22:17,046.046 INFO    ] Launching Daemon at Sun Oct 25 11:22:17 IST 2026
[2026-10-25 11:22:17,056.056 INFO    ] ================================================
[2026-10-25 11:22:17,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:22:17
[2026-10-25 11:22:18,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:22:18,631.631 INFO    ] Initializing speech engine...
[2026-10-25 11:22:18,638.638 INFO    ] 2026-10-25 11:22:18
[2026-10-25 11:22:18,927.927 INFO    ] 2026-10-25 11:22:18
[2026-10-25 11:22:18,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:22:19,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:22:19,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:22:19,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:22:19,476.476 INFO    ] time= 25/10/2026 11:22:19
[2026-10-25 11:22:19,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:22:19,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:22:19,633.633 INFO    ] No existing commands found in stream
[2026-10-25 11:22:24,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:22:24,657.657 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 11:22:26,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:22:26,714.714 INFO    ] Checking for system updates...
[2026-10-25 11:22:26,751.751 INFO    ] 200
[2026-10-25 11:22:26,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:26,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:22:26,817.817 INFO    ] No update needed
[2026-10-25 11:22:26,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 11:22:26,855.855 INFO    ] 200
[2026-10-25 11:22:26,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:26,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:22:26,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:22:26,968.968 INFO    ] No camera update needed
[2026-10-25 11:22:26,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:22:26,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:22:26,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:22:26,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:22:29,025.025 INFO    ] ================================================
[2026-10-25 11:22:29,041.041 INFO    ] Launching Daemon at Sun Oct 25 11:22:29 IST 2026
[2026-10-25 11:22:29,052.052 INFO    ] ================================================
[2026-10-25 11:22:29,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:22:29
[2026-10-25 11:22:30,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:22:30,466.466 INFO    ] Initializing speech engine...
[2026-10-25 11:22:30,476.476 INFO    ] 2026-10-25 11:22:30
[2026-10-25 11:22:30,721.721 INFO    ] 2026-10-25 11:22:30
[2026-10-25 11:22:30,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:22:30,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:22:30,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:22:31,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:22:31,095.095 INFO    ] time= 25/10/2026 11:22:31
[2026-10-25 11:22:31,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:22:31,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:22:31,160.160 INFO    ] No existing commands found in stream
[2026-10-25 11:22:36,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:22:36,174.174 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 11:22:37,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:22:37,889.889 INFO    ] Checking for system updates...
[2026-10-25 11:22:37,925.925 INFO    ] 200
[2026-10-25 11:22:37,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:37,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:22:37,989.989 INFO    ] No update needed
[2026-10-25 11:22:37,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 11:22:38,026.026 INFO    ] 200
[2026-10-25 11:22:38,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:38,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:22:38,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:22:38,195.195 INFO    ] No camera update needed
[2026-10-25 11:22:38,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:22:38,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:22:38,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:22:38,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:22:40,251.251 INFO    ] ================================================
[2026-10-25 11:22:40,266.266 INFO    ] Launching Daemon at Sun Oct 25 11:22:40 IST 2026
[2026-10-25 11:22:40,276.276 INFO    ] ================================================
[2026-10-25 11:22:40,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:22:40
[2026-10-25 11:22:41,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:22:41,700.700 INFO    ] Initializing speech engine...
[2026-10-25 11:22:41,707.707 INFO    ] 2026-10-25 11:22:41
[2026-10-25 11:22:42,001.001 INFO    ] 2026-10-25 11:22:41
[2026-10-25 11:22:42,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:22:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:22:42,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:22:42,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:22:42,487.487 INFO    ] time= 25/10/2026 11:22:42
[2026-10-25 11:22:42,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:22:42,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:22:42,683.683 INFO    ] No existing commands found in stream
[2026-10-25 11:22:47,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:22:47,698.698 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 11:22:48,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:22:48,634.634 INFO    ] Checking for system updates...
[2026-10-25 11:22:48,673.673 INFO    ] 200
[2026-10-25 11:22:48,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:48,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:22:48,737.737 INFO    ] No update needed
[2026-10-25 11:22:48,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 11:22:48,773.773 INFO    ] 200
[2026-10-25 11:22:48,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:22:48,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:22:48,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:22:48,863.863 INFO    ] No camera update needed
[2026-10-25 11:22:48,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:22:48,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:22:48,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:22:48,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:22:50,917.917 INFO    ] ================================================
[2026-10-25 11:22:50,933.933 INFO    ] Launching Daemon at Sun Oct 25 11:22:50 IST 2026
[2026-10-25 11:22:50,943.943 INFO    ] ================================================
[2026-10-25 11:22:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:22:51
[2026-10-25 11:22:52,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:22:52,523.523 INFO    ] Initializing speech engine...
[2026-10-25 11:22:52,529.529 INFO    ] 2026-10-25 11:22:52
[2026-10-25 11:22:52,801.801 INFO    ] 2026-10-25 11:22:52
[2026-10-25 11:22:52,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:22:53,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:22:53,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:22:53,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:22:53,291.291 INFO    ] time= 25/10/2026 11:22:53
[2026-10-25 11:22:53,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:22:53,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:22:53,492.492 INFO    ] No existing commands found in stream
[2026-10-25 11:22:58,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:22:58,524.524 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 11:23:00,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:23:00,154.154 INFO    ] Checking for system updates...
[2026-10-25 11:23:00,191.191 INFO    ] 200
[2026-10-25 11:23:00,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:00,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:23:00,250.250 INFO    ] No update needed
[2026-10-25 11:23:00,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 11:23:00,287.287 INFO    ] 200
[2026-10-25 11:23:00,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:00,334.334 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:23:00,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:23:00,378.378 INFO    ] No camera update needed
[2026-10-25 11:23:00,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:23:00,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:23:00,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:23:00,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:23:02,462.462 INFO    ] ================================================
[2026-10-25 11:23:02,484.484 INFO    ] Launching Daemon at Sun Oct 25 11:23:02 IST 2026
[2026-10-25 11:23:02,500.500 INFO    ] ================================================
[2026-10-25 11:23:03,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:23:03
[2026-10-25 11:23:03,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:23:04,031.031 INFO    ] Initializing speech engine...
[2026-10-25 11:23:04,040.040 INFO    ] 2026-10-25 11:23:04
[2026-10-25 11:23:04,301.301 INFO    ] 2026-10-25 11:23:04
[2026-10-25 11:23:04,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:23:07,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:23:07,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:23:07,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:23:07,641.641 INFO    ] time= 25/10/2026 11:23:07
[2026-10-25 11:23:07,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:23:07,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:23:07,699.699 INFO    ] No existing commands found in stream
[2026-10-25 11:23:12,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:23:12,711.711 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 11:23:16,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:23:16,309.309 INFO    ] Checking for system updates...
[2026-10-25 11:23:16,350.350 INFO    ] 200
[2026-10-25 11:23:16,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:16,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:16,415.415 INFO    ] No update needed
[2026-10-25 11:23:16,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 11:23:16,452.452 INFO    ] 200
[2026-10-25 11:23:16,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:16,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:23:16,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:16,655.655 INFO    ] No camera update needed
[2026-10-25 11:23:16,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:23:16,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:23:16,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:23:16,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:23:18,713.713 INFO    ] ================================================
[2026-10-25 11:23:18,727.727 INFO    ] Launching Daemon at Sun Oct 25 11:23:18 IST 2026
[2026-10-25 11:23:18,738.738 INFO    ] ================================================
[2026-10-25 11:23:19,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:23:19
[2026-10-25 11:23:20,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:23:20,340.340 INFO    ] Initializing speech engine...
[2026-10-25 11:23:20,349.349 INFO    ] 2026-10-25 11:23:20
[2026-10-25 11:23:20,632.632 INFO    ] 2026-10-25 11:23:20
[2026-10-25 11:23:20,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:23:20,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:23:20,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:23:21,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:23:21,114.114 INFO    ] time= 25/10/2026 11:23:21
[2026-10-25 11:23:21,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:23:21,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:23:21,308.308 INFO    ] No existing commands found in stream
[2026-10-25 11:23:26,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:23:26,330.330 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 11:23:30,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:23:30,587.587 INFO    ] Checking for system updates...
[2026-10-25 11:23:30,629.629 INFO    ] 200
[2026-10-25 11:23:30,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:30,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:23:30,689.689 INFO    ] No update needed
[2026-10-25 11:23:30,692.692 INFO    ] Checking for camera pi updates...
[2026-10-25 11:23:30,731.731 INFO    ] 200
[2026-10-25 11:23:30,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:30,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:23:30,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:23:30,826.826 INFO    ] No camera update needed
[2026-10-25 11:23:30,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:23:30,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:23:30,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:23:30,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:23:32,883.883 INFO    ] ================================================
[2026-10-25 11:23:32,898.898 INFO    ] Launching Daemon at Sun Oct 25 11:23:32 IST 2026
[2026-10-25 11:23:32,909.909 INFO    ] ================================================
[2026-10-25 11:23:33,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:23:33
[2026-10-25 11:23:34,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:23:34,421.421 INFO    ] Initializing speech engine...
[2026-10-25 11:23:34,428.428 INFO    ] 2026-10-25 11:23:34
[2026-10-25 11:23:34,744.744 INFO    ] 2026-10-25 11:23:34
[2026-10-25 11:23:34,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:23:38,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:23:38,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:23:39,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:23:39,197.197 INFO    ] time= 25/10/2026 11:23:39
[2026-10-25 11:23:39,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:23:39,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:23:39,258.258 INFO    ] No existing commands found in stream
[2026-10-25 11:23:44,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:23:44,272.272 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 11:23:46,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:23:46,232.232 INFO    ] Checking for system updates...
[2026-10-25 11:23:46,270.270 INFO    ] 200
[2026-10-25 11:23:46,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:46,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:46,331.331 INFO    ] No update needed
[2026-10-25 11:23:46,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 11:23:46,368.368 INFO    ] 200
[2026-10-25 11:23:46,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:46,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:23:46,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:46,466.466 INFO    ] No camera update needed
[2026-10-25 11:23:46,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:23:46,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:23:46,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:23:46,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:23:48,524.524 INFO    ] ================================================
[2026-10-25 11:23:48,539.539 INFO    ] Launching Daemon at Sun Oct 25 11:23:48 IST 2026
[2026-10-25 11:23:48,549.549 INFO    ] ================================================
[2026-10-25 11:23:49,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:23:49
[2026-10-25 11:23:49,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:23:50,165.165 INFO    ] Initializing speech engine...
[2026-10-25 11:23:50,177.177 INFO    ] 2026-10-25 11:23:50
[2026-10-25 11:23:50,461.461 INFO    ] 2026-10-25 11:23:50
[2026-10-25 11:23:50,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:23:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:23:50,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:23:50,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:23:50,987.987 INFO    ] time= 25/10/2026 11:23:50
[2026-10-25 11:23:50,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:23:51,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:23:51,143.143 INFO    ] No existing commands found in stream
[2026-10-25 11:23:56,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:23:56,166.166 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 11:23:57,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:23:57,758.758 INFO    ] Checking for system updates...
[2026-10-25 11:23:57,800.800 INFO    ] 200
[2026-10-25 11:23:57,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:57,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:57,866.866 INFO    ] No update needed
[2026-10-25 11:23:57,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 11:23:57,907.907 INFO    ] 200
[2026-10-25 11:23:57,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:23:57,961.961 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:23:58,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:23:58,014.014 INFO    ] No camera update needed
[2026-10-25 11:23:58,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:23:58,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:23:58,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:23:58,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:24:00,068.068 INFO    ] ================================================
[2026-10-25 11:24:00,084.084 INFO    ] Launching Daemon at Sun Oct 25 11:24:00 IST 2026
[2026-10-25 11:24:00,095.095 INFO    ] ================================================
[2026-10-25 11:24:00,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:24:00
[2026-10-25 11:24:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:24:01,500.500 INFO    ] Initializing speech engine...
[2026-10-25 11:24:01,506.506 INFO    ] 2026-10-25 11:24:01
[2026-10-25 11:24:01,892.892 INFO    ] 2026-10-25 11:24:01
[2026-10-25 11:24:01,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:24:02,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:24:02,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:24:02,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:24:02,371.371 INFO    ] time= 25/10/2026 11:24:02
[2026-10-25 11:24:02,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:24:02,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:24:02,538.538 INFO    ] No existing commands found in stream
[2026-10-25 11:24:07,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:24:07,572.572 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 11:24:10,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:24:10,022.022 INFO    ] Checking for system updates...
[2026-10-25 11:24:10,059.059 INFO    ] 200
[2026-10-25 11:24:10,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:10,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:10,125.125 INFO    ] No update needed
[2026-10-25 11:24:10,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 11:24:10,163.163 INFO    ] 200
[2026-10-25 11:24:10,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:10,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:24:10,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:10,260.260 INFO    ] No camera update needed
[2026-10-25 11:24:10,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:24:10,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:24:10,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:24:10,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:24:12,317.317 INFO    ] ================================================
[2026-10-25 11:24:12,332.332 INFO    ] Launching Daemon at Sun Oct 25 11:24:12 IST 2026
[2026-10-25 11:24:12,342.342 INFO    ] ================================================
[2026-10-25 11:24:12,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:24:12
[2026-10-25 11:24:13,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:24:13,792.792 INFO    ] Initializing speech engine...
[2026-10-25 11:24:13,798.798 INFO    ] 2026-10-25 11:24:13
[2026-10-25 11:24:14,058.058 INFO    ] 2026-10-25 11:24:14
[2026-10-25 11:24:14,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:24:14,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:24:14,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:24:14,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:24:14,556.556 INFO    ] time= 25/10/2026 11:24:14
[2026-10-25 11:24:14,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:24:14,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:24:14,728.728 INFO    ] No existing commands found in stream
[2026-10-25 11:24:19,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:24:19,762.762 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 11:24:23,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:24:23,612.612 INFO    ] Checking for system updates...
[2026-10-25 11:24:23,649.649 INFO    ] 200
[2026-10-25 11:24:23,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 11:24:23,654.654 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 11:24:23,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 11:24:23,691.691 INFO    ] 200
[2026-10-25 11:24:23,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 11:24:23,696.696 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 11:24:23,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:24:23,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:24:23,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:24:23,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:24:25,751.751 INFO    ] ================================================
[2026-10-25 11:24:25,767.767 INFO    ] Launching Daemon at Sun Oct 25 11:24:25 IST 2026
[2026-10-25 11:24:25,777.777 INFO    ] ================================================
[2026-10-25 11:24:26,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:24:26
[2026-10-25 11:24:27,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:24:27,358.358 INFO    ] Initializing speech engine...
[2026-10-25 11:24:27,378.378 INFO    ] 2026-10-25 11:24:27
[2026-10-25 11:24:27,625.625 INFO    ] 2026-10-25 11:24:27
[2026-10-25 11:24:27,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:24:27,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:24:27,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:24:27,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:24:27,994.994 INFO    ] time= 25/10/2026 11:24:27
[2026-10-25 11:24:28,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:24:28,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:24:28,174.174 INFO    ] No existing commands found in stream
[2026-10-25 11:24:33,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:24:33,203.203 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 11:24:34,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:24:34,519.519 INFO    ] Checking for system updates...
[2026-10-25 11:24:34,556.556 INFO    ] 200
[2026-10-25 11:24:34,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:34,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:34,620.620 INFO    ] No update needed
[2026-10-25 11:24:34,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 11:24:34,660.660 INFO    ] 200
[2026-10-25 11:24:34,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:34,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:24:34,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:34,768.768 INFO    ] No camera update needed
[2026-10-25 11:24:34,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:24:34,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:24:34,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:24:34,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:24:36,823.823 INFO    ] ================================================
[2026-10-25 11:24:36,839.839 INFO    ] Launching Daemon at Sun Oct 25 11:24:36 IST 2026
[2026-10-25 11:24:36,849.849 INFO    ] ================================================
[2026-10-25 11:24:37,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:24:37
[2026-10-25 11:24:38,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:24:38,269.269 INFO    ] Initializing speech engine...
[2026-10-25 11:24:38,278.278 INFO    ] 2026-10-25 11:24:38
[2026-10-25 11:24:38,525.525 INFO    ] 2026-10-25 11:24:38
[2026-10-25 11:24:38,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:24:38,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:24:38,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:24:38,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:24:39,013.013 INFO    ] time= 25/10/2026 11:24:38
[2026-10-25 11:24:39,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:24:39,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:24:39,219.219 INFO    ] No existing commands found in stream
[2026-10-25 11:24:44,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:24:44,246.246 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 11:24:46,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:24:46,066.066 INFO    ] Checking for system updates...
[2026-10-25 11:24:46,103.103 INFO    ] 200
[2026-10-25 11:24:46,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:46,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:24:46,168.168 INFO    ] No update needed
[2026-10-25 11:24:46,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 11:24:46,204.204 INFO    ] 200
[2026-10-25 11:24:46,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:46,247.247 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:24:46,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:24:46,297.297 INFO    ] No camera update needed
[2026-10-25 11:24:46,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:24:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:24:46,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:24:46,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:24:48,354.354 INFO    ] ================================================
[2026-10-25 11:24:48,371.371 INFO    ] Launching Daemon at Sun Oct 25 11:24:48 IST 2026
[2026-10-25 11:24:48,383.383 INFO    ] ================================================
[2026-10-25 11:24:48,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:24:48
[2026-10-25 11:24:49,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:24:49,880.880 INFO    ] Initializing speech engine...
[2026-10-25 11:24:49,886.886 INFO    ] 2026-10-25 11:24:49
[2026-10-25 11:24:50,177.177 INFO    ] 2026-10-25 11:24:50
[2026-10-25 11:24:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:24:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:24:50,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:24:50,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:24:50,565.565 INFO    ] time= 25/10/2026 11:24:50
[2026-10-25 11:24:50,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:24:50,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:24:50,679.679 INFO    ] No existing commands found in stream
[2026-10-25 11:24:55,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:24:55,694.694 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 11:24:59,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:24:59,079.079 INFO    ] Checking for system updates...
[2026-10-25 11:24:59,115.115 INFO    ] 200
[2026-10-25 11:24:59,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:59,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:59,174.174 INFO    ] No update needed
[2026-10-25 11:24:59,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 11:24:59,210.210 INFO    ] 200
[2026-10-25 11:24:59,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:24:59,259.259 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:24:59,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:24:59,309.309 INFO    ] No camera update needed
[2026-10-25 11:24:59,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:24:59,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:24:59,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:24:59,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:25:01,364.364 INFO    ] ================================================
[2026-10-25 11:25:01,384.384 INFO    ] Launching Daemon at Sun Oct 25 11:25:01 IST 2026
[2026-10-25 11:25:01,395.395 INFO    ] ================================================
[2026-10-25 11:25:02,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:25:02
[2026-10-25 11:25:02,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:25:03,173.173 INFO    ] Initializing speech engine...
[2026-10-25 11:25:03,179.179 INFO    ] 2026-10-25 11:25:03
[2026-10-25 11:25:03,491.491 INFO    ] 2026-10-25 11:25:03
[2026-10-25 11:25:03,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:25:03,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:25:03,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:25:03,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:25:03,960.960 INFO    ] time= 25/10/2026 11:25:03
[2026-10-25 11:25:03,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:25:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:25:04,111.111 INFO    ] No existing commands found in stream
[2026-10-25 11:25:09,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:25:09,141.141 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 11:25:10,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:25:10,395.395 INFO    ] Checking for system updates...
[2026-10-25 11:25:10,431.431 INFO    ] 200
[2026-10-25 11:25:10,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:10,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:25:10,488.488 INFO    ] No update needed
[2026-10-25 11:25:10,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 11:25:10,524.524 INFO    ] 200
[2026-10-25 11:25:10,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:10,568.568 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:25:10,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:25:10,621.621 INFO    ] No camera update needed
[2026-10-25 11:25:10,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:25:10,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:25:10,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:25:10,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:25:12,677.677 INFO    ] ================================================
[2026-10-25 11:25:12,692.692 INFO    ] Launching Daemon at Sun Oct 25 11:25:12 IST 2026
[2026-10-25 11:25:12,702.702 INFO    ] ================================================
[2026-10-25 11:25:13,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:25:13
[2026-10-25 11:25:13,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:25:14,129.129 INFO    ] Initializing speech engine...
[2026-10-25 11:25:14,138.138 INFO    ] 2026-10-25 11:25:14
[2026-10-25 11:25:14,398.398 INFO    ] 2026-10-25 11:25:14
[2026-10-25 11:25:14,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:25:16,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:25:16,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:25:16,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:25:16,600.600 INFO    ] time= 25/10/2026 11:25:16
[2026-10-25 11:25:16,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:25:16,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:25:16,719.719 INFO    ] No existing commands found in stream
[2026-10-25 11:25:21,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:25:21,746.746 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 11:25:25,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:25:25,535.535 INFO    ] Checking for system updates...
[2026-10-25 11:25:25,571.571 INFO    ] 200
[2026-10-25 11:25:25,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:25,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:25,635.635 INFO    ] No update needed
[2026-10-25 11:25:25,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 11:25:25,674.674 INFO    ] 200
[2026-10-25 11:25:25,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:25,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:25:25,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:25,884.884 INFO    ] No camera update needed
[2026-10-25 11:25:25,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:25:25,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:25:25,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:25:25,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:25:27,940.940 INFO    ] ================================================
[2026-10-25 11:25:27,955.955 INFO    ] Launching Daemon at Sun Oct 25 11:25:27 IST 2026
[2026-10-25 11:25:27,966.966 INFO    ] ================================================
[2026-10-25 11:25:28,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:25:28
[2026-10-25 11:25:29,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:25:29,565.565 INFO    ] Initializing speech engine...
[2026-10-25 11:25:29,573.573 INFO    ] 2026-10-25 11:25:29
[2026-10-25 11:25:29,862.862 INFO    ] 2026-10-25 11:25:29
[2026-10-25 11:25:29,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:25:30,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:25:30,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:25:30,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:25:30,325.325 INFO    ] time= 25/10/2026 11:25:30
[2026-10-25 11:25:30,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:25:30,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:25:30,520.520 INFO    ] No existing commands found in stream
[2026-10-25 11:25:35,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:25:35,545.545 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 11:25:36,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:25:36,053.053 INFO    ] Checking for system updates...
[2026-10-25 11:25:36,093.093 INFO    ] 200
[2026-10-25 11:25:36,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:36,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:36,159.159 INFO    ] No update needed
[2026-10-25 11:25:36,162.162 INFO    ] Checking for camera pi updates...
[2026-10-25 11:25:36,197.197 INFO    ] 200
[2026-10-25 11:25:36,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:36,241.241 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:25:36,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:36,294.294 INFO    ] No camera update needed
[2026-10-25 11:25:36,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:25:36,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:25:36,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:25:36,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:25:38,351.351 INFO    ] ================================================
[2026-10-25 11:25:38,366.366 INFO    ] Launching Daemon at Sun Oct 25 11:25:38 IST 2026
[2026-10-25 11:25:38,376.376 INFO    ] ================================================
[2026-10-25 11:25:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:25:39
[2026-10-25 11:25:39,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:25:39,976.976 INFO    ] Initializing speech engine...
[2026-10-25 11:25:39,988.988 INFO    ] 2026-10-25 11:25:39
[2026-10-25 11:25:40,296.296 INFO    ] 2026-10-25 11:25:40
[2026-10-25 11:25:40,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:25:40,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:25:40,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:25:40,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:25:40,804.804 INFO    ] time= 25/10/2026 11:25:40
[2026-10-25 11:25:40,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:25:40,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:25:40,958.958 INFO    ] No existing commands found in stream
[2026-10-25 11:25:45,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:25:45,974.974 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 11:25:48,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:25:48,192.192 INFO    ] Checking for system updates...
[2026-10-25 11:25:48,229.229 INFO    ] 200
[2026-10-25 11:25:48,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:48,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:25:48,288.288 INFO    ] No update needed
[2026-10-25 11:25:48,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 11:25:48,326.326 INFO    ] 200
[2026-10-25 11:25:48,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:48,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:25:48,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:25:48,425.425 INFO    ] No camera update needed
[2026-10-25 11:25:48,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:25:48,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:25:48,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:25:48,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:25:50,482.482 INFO    ] ================================================
[2026-10-25 11:25:50,497.497 INFO    ] Launching Daemon at Sun Oct 25 11:25:50 IST 2026
[2026-10-25 11:25:50,508.508 INFO    ] ================================================
[2026-10-25 11:25:51,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:25:51
[2026-10-25 11:25:51,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:25:52,051.051 INFO    ] Initializing speech engine...
[2026-10-25 11:25:52,060.060 INFO    ] 2026-10-25 11:25:52
[2026-10-25 11:25:52,342.342 INFO    ] 2026-10-25 11:25:52
[2026-10-25 11:25:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:25:52,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:25:52,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:25:52,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:25:52,876.876 INFO    ] time= 25/10/2026 11:25:52
[2026-10-25 11:25:52,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:25:52,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:25:53,017.017 INFO    ] No existing commands found in stream
[2026-10-25 11:25:58,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:25:58,045.045 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 11:25:59,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:25:59,625.625 INFO    ] Checking for system updates...
[2026-10-25 11:25:59,662.662 INFO    ] 200
[2026-10-25 11:25:59,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:59,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:59,721.721 INFO    ] No update needed
[2026-10-25 11:25:59,724.724 INFO    ] Checking for camera pi updates...
[2026-10-25 11:25:59,762.762 INFO    ] 200
[2026-10-25 11:25:59,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:25:59,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:25:59,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:25:59,873.873 INFO    ] No camera update needed
[2026-10-25 11:25:59,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:25:59,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:25:59,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:25:59,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:26:01,932.932 INFO    ] ================================================
[2026-10-25 11:26:01,958.958 INFO    ] Launching Daemon at Sun Oct 25 11:26:01 IST 2026
[2026-10-25 11:26:01,970.970 INFO    ] ================================================
[2026-10-25 11:26:02,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:26:02
[2026-10-25 11:26:03,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:26:03,571.571 INFO    ] Initializing speech engine...
[2026-10-25 11:26:03,576.576 INFO    ] 2026-10-25 11:26:03
[2026-10-25 11:26:03,836.836 INFO    ] 2026-10-25 11:26:03
[2026-10-25 11:26:03,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:26:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:26:04,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:26:04,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:26:04,351.351 INFO    ] time= 25/10/2026 11:26:04
[2026-10-25 11:26:04,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:26:04,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:26:04,420.420 INFO    ] No existing commands found in stream
[2026-10-25 11:26:09,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:26:09,436.436 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 11:26:12,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:26:12,183.183 INFO    ] Checking for system updates...
[2026-10-25 11:26:12,220.220 INFO    ] 200
[2026-10-25 11:26:12,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:12,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:26:12,278.278 INFO    ] No update needed
[2026-10-25 11:26:12,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 11:26:12,315.315 INFO    ] 200
[2026-10-25 11:26:12,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:12,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:26:12,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:26:12,429.429 INFO    ] No camera update needed
[2026-10-25 11:26:12,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:26:12,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:26:12,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:26:12,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:26:14,485.485 INFO    ] ================================================
[2026-10-25 11:26:14,500.500 INFO    ] Launching Daemon at Sun Oct 25 11:26:14 IST 2026
[2026-10-25 11:26:14,510.510 INFO    ] ================================================
[2026-10-25 11:26:15,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:26:15
[2026-10-25 11:26:15,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:26:15,962.962 INFO    ] Initializing speech engine...
[2026-10-25 11:26:15,971.971 INFO    ] 2026-10-25 11:26:15
[2026-10-25 11:26:16,221.221 INFO    ] 2026-10-25 11:26:16
[2026-10-25 11:26:16,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:26:17,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:26:17,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:26:17,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:26:18,040.040 INFO    ] time= 25/10/2026 11:26:17
[2026-10-25 11:26:18,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:26:18,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:26:18,163.163 INFO    ] No existing commands found in stream
[2026-10-25 11:26:23,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:26:23,178.178 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 11:26:25,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:26:25,332.332 INFO    ] Checking for system updates...
[2026-10-25 11:26:25,369.369 INFO    ] 200
[2026-10-25 11:26:25,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:25,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:26:25,426.426 INFO    ] No update needed
[2026-10-25 11:26:25,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 11:26:25,466.466 INFO    ] 200
[2026-10-25 11:26:25,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:25,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:26:25,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:26:25,577.577 INFO    ] No camera update needed
[2026-10-25 11:26:25,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:26:25,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:26:25,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:26:25,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:26:27,632.632 INFO    ] ================================================
[2026-10-25 11:26:27,647.647 INFO    ] Launching Daemon at Sun Oct 25 11:26:27 IST 2026
[2026-10-25 11:26:27,667.667 INFO    ] ================================================
[2026-10-25 11:26:28,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:26:28
[2026-10-25 11:26:28,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:26:29,094.094 INFO    ] Initializing speech engine...
[2026-10-25 11:26:29,101.101 INFO    ] 2026-10-25 11:26:29
[2026-10-25 11:26:29,345.345 INFO    ] 2026-10-25 11:26:29
[2026-10-25 11:26:29,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:26:29,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:26:29,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:26:29,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:26:29,808.808 INFO    ] time= 25/10/2026 11:26:29
[2026-10-25 11:26:29,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:26:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:26:29,974.974 INFO    ] No existing commands found in stream
[2026-10-25 11:26:34,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:26:34,990.990 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 11:26:38,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:26:38,903.903 INFO    ] Checking for system updates...
[2026-10-25 11:26:38,939.939 INFO    ] 200
[2026-10-25 11:26:38,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:38,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:26:39,001.001 INFO    ] No update needed
[2026-10-25 11:26:39,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 11:26:39,040.040 INFO    ] 200
[2026-10-25 11:26:39,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:39,088.088 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:26:39,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:26:39,142.142 INFO    ] No camera update needed
[2026-10-25 11:26:39,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:26:39,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:26:39,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:26:39,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:26:41,198.198 INFO    ] ================================================
[2026-10-25 11:26:41,214.214 INFO    ] Launching Daemon at Sun Oct 25 11:26:41 IST 2026
[2026-10-25 11:26:41,224.224 INFO    ] ================================================
[2026-10-25 11:26:41,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:26:41
[2026-10-25 11:26:42,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:26:42,829.829 INFO    ] Initializing speech engine...
[2026-10-25 11:26:42,839.839 INFO    ] 2026-10-25 11:26:42
[2026-10-25 11:26:43,107.107 INFO    ] 2026-10-25 11:26:43
[2026-10-25 11:26:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:26:43,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:26:43,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:26:43,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:26:43,592.592 INFO    ] time= 25/10/2026 11:26:43
[2026-10-25 11:26:43,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:26:43,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:26:43,739.739 INFO    ] No existing commands found in stream
[2026-10-25 11:26:48,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:26:48,772.772 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 11:26:52,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:26:52,791.791 INFO    ] Checking for system updates...
[2026-10-25 11:26:52,828.828 INFO    ] 200
[2026-10-25 11:26:52,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:52,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:26:52,887.887 INFO    ] No update needed
[2026-10-25 11:26:52,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 11:26:52,925.925 INFO    ] 200
[2026-10-25 11:26:52,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:26:52,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:26:53,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:26:53,031.031 INFO    ] No camera update needed
[2026-10-25 11:26:53,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:26:53,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:26:53,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:26:53,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:26:55,089.089 INFO    ] ================================================
[2026-10-25 11:26:55,106.106 INFO    ] Launching Daemon at Sun Oct 25 11:26:55 IST 2026
[2026-10-25 11:26:55,117.117 INFO    ] ================================================
[2026-10-25 11:26:55,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:26:55
[2026-10-25 11:26:56,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:26:56,549.549 INFO    ] Initializing speech engine...
[2026-10-25 11:26:56,558.558 INFO    ] 2026-10-25 11:26:56
[2026-10-25 11:26:56,851.851 INFO    ] 2026-10-25 11:26:56
[2026-10-25 11:26:56,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:26:57,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:26:57,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:26:57,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:26:57,314.314 INFO    ] time= 25/10/2026 11:26:57
[2026-10-25 11:26:57,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:26:57,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:26:57,487.487 INFO    ] No existing commands found in stream
[2026-10-25 11:27:02,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:27:02,501.501 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 11:27:03,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:27:03,781.781 INFO    ] Checking for system updates...
[2026-10-25 11:27:03,821.821 INFO    ] 200
[2026-10-25 11:27:03,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:03,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:27:03,885.885 INFO    ] No update needed
[2026-10-25 11:27:03,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 11:27:03,925.925 INFO    ] 200
[2026-10-25 11:27:03,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:03,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:27:04,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:27:04,020.020 INFO    ] No camera update needed
[2026-10-25 11:27:04,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:27:04,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:27:04,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:27:04,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:27:06,077.077 INFO    ] ================================================
[2026-10-25 11:27:06,092.092 INFO    ] Launching Daemon at Sun Oct 25 11:27:06 IST 2026
[2026-10-25 11:27:06,103.103 INFO    ] ================================================
[2026-10-25 11:27:06,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:27:06
[2026-10-25 11:27:07,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:27:07,700.700 INFO    ] Initializing speech engine...
[2026-10-25 11:27:07,708.708 INFO    ] 2026-10-25 11:27:07
[2026-10-25 11:27:08,000.000 INFO    ] 2026-10-25 11:27:07
[2026-10-25 11:27:08,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:27:08,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:27:08,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:27:08,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:27:08,530.530 INFO    ] time= 25/10/2026 11:27:08
[2026-10-25 11:27:08,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:27:08,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:27:08,685.685 INFO    ] No existing commands found in stream
[2026-10-25 11:27:13,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:27:13,718.718 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 11:27:14,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:27:14,321.321 INFO    ] Checking for system updates...
[2026-10-25 11:27:14,359.359 INFO    ] 200
[2026-10-25 11:27:14,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:14,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:14,425.425 INFO    ] No update needed
[2026-10-25 11:27:14,428.428 INFO    ] Checking for camera pi updates...
[2026-10-25 11:27:14,466.466 INFO    ] 200
[2026-10-25 11:27:14,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:14,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:27:14,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:14,565.565 INFO    ] No camera update needed
[2026-10-25 11:27:14,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:27:14,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:27:14,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:27:14,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:27:16,623.623 INFO    ] ================================================
[2026-10-25 11:27:16,638.638 INFO    ] Launching Daemon at Sun Oct 25 11:27:16 IST 2026
[2026-10-25 11:27:16,649.649 INFO    ] ================================================
[2026-10-25 11:27:17,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:27:17
[2026-10-25 11:27:17,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:27:18,066.066 INFO    ] Initializing speech engine...
[2026-10-25 11:27:18,092.092 INFO    ] 2026-10-25 11:27:18
[2026-10-25 11:27:18,360.360 INFO    ] 2026-10-25 11:27:18
[2026-10-25 11:27:18,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:27:19,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:27:19,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:27:19,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:27:19,874.874 INFO    ] time= 25/10/2026 11:27:19
[2026-10-25 11:27:19,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:27:19,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:27:19,941.941 INFO    ] No existing commands found in stream
[2026-10-25 11:27:24,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:27:24,956.956 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 11:27:29,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:27:29,217.217 INFO    ] Checking for system updates...
[2026-10-25 11:27:29,254.254 INFO    ] 200
[2026-10-25 11:27:29,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:29,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:29,313.313 INFO    ] No update needed
[2026-10-25 11:27:29,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 11:27:29,354.354 INFO    ] 200
[2026-10-25 11:27:29,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:29,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:27:29,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:29,557.557 INFO    ] No camera update needed
[2026-10-25 11:27:29,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:27:29,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:27:29,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:27:29,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:27:31,618.618 INFO    ] ================================================
[2026-10-25 11:27:31,635.635 INFO    ] Launching Daemon at Sun Oct 25 11:27:31 IST 2026
[2026-10-25 11:27:31,647.647 INFO    ] ================================================
[2026-10-25 11:27:32,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:27:32
[2026-10-25 11:27:33,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:27:33,312.312 INFO    ] Initializing speech engine...
[2026-10-25 11:27:33,320.320 INFO    ] 2026-10-25 11:27:33
[2026-10-25 11:27:33,608.608 INFO    ] 2026-10-25 11:27:33
[2026-10-25 11:27:33,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:27:33,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:27:33,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:27:34,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:27:34,154.154 INFO    ] time= 25/10/2026 11:27:34
[2026-10-25 11:27:34,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:27:34,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:27:34,305.305 INFO    ] No existing commands found in stream
[2026-10-25 11:27:39,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:27:39,325.325 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 11:27:42,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:27:42,339.339 INFO    ] Checking for system updates...
[2026-10-25 11:27:42,380.380 INFO    ] 200
[2026-10-25 11:27:42,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:42,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:42,447.447 INFO    ] No update needed
[2026-10-25 11:27:42,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 11:27:42,487.487 INFO    ] 200
[2026-10-25 11:27:42,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:42,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:27:42,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:42,593.593 INFO    ] No camera update needed
[2026-10-25 11:27:42,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:27:42,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:27:42,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:27:42,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:27:44,651.651 INFO    ] ================================================
[2026-10-25 11:27:44,667.667 INFO    ] Launching Daemon at Sun Oct 25 11:27:44 IST 2026
[2026-10-25 11:27:44,677.677 INFO    ] ================================================
[2026-10-25 11:27:45,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:27:45
[2026-10-25 11:27:45,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:27:46,126.126 INFO    ] Initializing speech engine...
[2026-10-25 11:27:46,135.135 INFO    ] 2026-10-25 11:27:46
[2026-10-25 11:27:46,391.391 INFO    ] 2026-10-25 11:27:46
[2026-10-25 11:27:46,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:27:50,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:27:50,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:27:50,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:27:50,887.887 INFO    ] time= 25/10/2026 11:27:50
[2026-10-25 11:27:50,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:27:50,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:27:50,940.940 INFO    ] No existing commands found in stream
[2026-10-25 11:27:55,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:27:55,952.952 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 11:27:57,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:27:57,259.259 INFO    ] Checking for system updates...
[2026-10-25 11:27:57,298.298 INFO    ] 200
[2026-10-25 11:27:57,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:57,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:57,357.357 INFO    ] No update needed
[2026-10-25 11:27:57,360.360 INFO    ] Checking for camera pi updates...
[2026-10-25 11:27:57,395.395 INFO    ] 200
[2026-10-25 11:27:57,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:27:57,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:27:57,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:27:57,496.496 INFO    ] No camera update needed
[2026-10-25 11:27:57,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:27:57,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:27:57,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:27:57,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:27:59,551.551 INFO    ] ================================================
[2026-10-25 11:27:59,567.567 INFO    ] Launching Daemon at Sun Oct 25 11:27:59 IST 2026
[2026-10-25 11:27:59,577.577 INFO    ] ================================================
[2026-10-25 11:28:00,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:28:00
[2026-10-25 11:28:00,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:28:00,974.974 INFO    ] Initializing speech engine...
[2026-10-25 11:28:00,997.997 INFO    ] 2026-10-25 11:28:00
[2026-10-25 11:28:01,253.253 INFO    ] 2026-10-25 11:28:01
[2026-10-25 11:28:01,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:28:01,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:28:01,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:28:01,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:28:01,707.707 INFO    ] time= 25/10/2026 11:28:01
[2026-10-25 11:28:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:28:01,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:28:01,886.886 INFO    ] No existing commands found in stream
[2026-10-25 11:28:06,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:28:06,902.902 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 11:28:10,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:28:10,515.515 INFO    ] Checking for system updates...
[2026-10-25 11:28:10,552.552 INFO    ] 200
[2026-10-25 11:28:10,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:10,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:28:10,612.612 INFO    ] No update needed
[2026-10-25 11:28:10,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 11:28:10,651.651 INFO    ] 200
[2026-10-25 11:28:10,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:10,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:28:10,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:28:10,760.760 INFO    ] No camera update needed
[2026-10-25 11:28:10,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:28:10,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:28:10,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:28:10,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:28:12,817.817 INFO    ] ================================================
[2026-10-25 11:28:12,832.832 INFO    ] Launching Daemon at Sun Oct 25 11:28:12 IST 2026
[2026-10-25 11:28:12,843.843 INFO    ] ================================================
[2026-10-25 11:28:13,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:28:13
[2026-10-25 11:28:14,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:28:14,438.438 INFO    ] Initializing speech engine...
[2026-10-25 11:28:14,452.452 INFO    ] 2026-10-25 11:28:14
[2026-10-25 11:28:14,756.756 INFO    ] 2026-10-25 11:28:14
[2026-10-25 11:28:14,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:28:15,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:28:15,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:28:15,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:28:15,267.267 INFO    ] time= 25/10/2026 11:28:15
[2026-10-25 11:28:15,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:28:15,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:28:15,418.418 INFO    ] No existing commands found in stream
[2026-10-25 11:28:20,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:28:20,437.437 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 11:28:22,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:28:22,842.842 INFO    ] Checking for system updates...
[2026-10-25 11:28:22,879.879 INFO    ] 200
[2026-10-25 11:28:22,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:22,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:28:22,938.938 INFO    ] No update needed
[2026-10-25 11:28:22,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 11:28:22,974.974 INFO    ] 200
[2026-10-25 11:28:22,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:23,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:28:23,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:28:23,066.066 INFO    ] No camera update needed
[2026-10-25 11:28:23,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:28:23,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:28:23,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:28:23,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:28:25,120.120 INFO    ] ================================================
[2026-10-25 11:28:25,135.135 INFO    ] Launching Daemon at Sun Oct 25 11:28:25 IST 2026
[2026-10-25 11:28:25,145.145 INFO    ] ================================================
[2026-10-25 11:28:25,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:28:25
[2026-10-25 11:28:26,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:28:26,565.565 INFO    ] Initializing speech engine...
[2026-10-25 11:28:26,571.571 INFO    ] 2026-10-25 11:28:26
[2026-10-25 11:28:26,865.865 INFO    ] 2026-10-25 11:28:26
[2026-10-25 11:28:26,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:28:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:28:27,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:28:27,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:28:27,277.277 INFO    ] time= 25/10/2026 11:28:27
[2026-10-25 11:28:27,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:28:27,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:28:27,363.363 INFO    ] No existing commands found in stream
[2026-10-25 11:28:32,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:28:32,396.396 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 11:28:35,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:28:35,271.271 INFO    ] Checking for system updates...
[2026-10-25 11:28:35,311.311 INFO    ] 200
[2026-10-25 11:28:35,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:35,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:28:35,370.370 INFO    ] No update needed
[2026-10-25 11:28:35,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 11:28:35,406.406 INFO    ] 200
[2026-10-25 11:28:35,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:35,450.450 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:28:35,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:28:35,505.505 INFO    ] No camera update needed
[2026-10-25 11:28:35,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:28:35,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:28:35,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:28:35,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:28:37,559.559 INFO    ] ================================================
[2026-10-25 11:28:37,575.575 INFO    ] Launching Daemon at Sun Oct 25 11:28:37 IST 2026
[2026-10-25 11:28:37,585.585 INFO    ] ================================================
[2026-10-25 11:28:38,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:28:38
[2026-10-25 11:28:38,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:28:39,030.030 INFO    ] Initializing speech engine...
[2026-10-25 11:28:39,039.039 INFO    ] 2026-10-25 11:28:39
[2026-10-25 11:28:39,287.287 INFO    ] 2026-10-25 11:28:39
[2026-10-25 11:28:39,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:28:39,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:28:39,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:28:39,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:28:39,757.757 INFO    ] time= 25/10/2026 11:28:39
[2026-10-25 11:28:39,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:28:39,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:28:39,982.982 INFO    ] No existing commands found in stream
[2026-10-25 11:28:45,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:28:45,008.008 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 11:28:48,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:28:48,192.192 INFO    ] Checking for system updates...
[2026-10-25 11:28:48,228.228 INFO    ] 200
[2026-10-25 11:28:48,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:48,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:28:48,301.301 INFO    ] No update needed
[2026-10-25 11:28:48,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 11:28:48,338.338 INFO    ] 200
[2026-10-25 11:28:48,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:28:48,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:28:48,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:28:48,430.430 INFO    ] No camera update needed
[2026-10-25 11:28:48,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:28:48,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:28:48,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:28:48,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:28:50,485.485 INFO    ] ================================================
[2026-10-25 11:28:50,500.500 INFO    ] Launching Daemon at Sun Oct 25 11:28:50 IST 2026
[2026-10-25 11:28:50,511.511 INFO    ] ================================================
[2026-10-25 11:28:51,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:28:51
[2026-10-25 11:28:51,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:28:52,113.113 INFO    ] Initializing speech engine...
[2026-10-25 11:28:52,128.128 INFO    ] 2026-10-25 11:28:52
[2026-10-25 11:28:52,397.397 INFO    ] 2026-10-25 11:28:52
[2026-10-25 11:28:52,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:28:52,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:28:52,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:28:52,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:28:52,954.954 INFO    ] time= 25/10/2026 11:28:52
[2026-10-25 11:28:52,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:28:52,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:28:53,087.087 INFO    ] No existing commands found in stream
[2026-10-25 11:28:58,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:28:58,116.116 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 11:29:00,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:29:00,801.801 INFO    ] Checking for system updates...
[2026-10-25 11:29:00,838.838 INFO    ] 200
[2026-10-25 11:29:00,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:00,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:00,896.896 INFO    ] No update needed
[2026-10-25 11:29:00,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 11:29:00,932.932 INFO    ] 200
[2026-10-25 11:29:00,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:00,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:29:01,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:01,032.032 INFO    ] No camera update needed
[2026-10-25 11:29:01,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:29:01,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:29:01,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:29:01,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:29:03,088.088 INFO    ] ================================================
[2026-10-25 11:29:03,102.102 INFO    ] Launching Daemon at Sun Oct 25 11:29:03 IST 2026
[2026-10-25 11:29:03,113.113 INFO    ] ================================================
[2026-10-25 11:29:03,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:29:03
[2026-10-25 11:29:04,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:29:04,685.685 INFO    ] Initializing speech engine...
[2026-10-25 11:29:04,694.694 INFO    ] 2026-10-25 11:29:04
[2026-10-25 11:29:04,948.948 INFO    ] 2026-10-25 11:29:04
[2026-10-25 11:29:04,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:29:05,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:29:05,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:29:05,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:29:05,457.457 INFO    ] time= 25/10/2026 11:29:05
[2026-10-25 11:29:05,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:29:05,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:29:05,653.653 INFO    ] No existing commands found in stream
[2026-10-25 11:29:10,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:29:10,687.687 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 11:29:13,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:29:13,146.146 INFO    ] Checking for system updates...
[2026-10-25 11:29:13,184.184 INFO    ] 200
[2026-10-25 11:29:13,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:13,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:13,246.246 INFO    ] No update needed
[2026-10-25 11:29:13,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 11:29:13,283.283 INFO    ] 200
[2026-10-25 11:29:13,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:13,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:29:13,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:13,374.374 INFO    ] No camera update needed
[2026-10-25 11:29:13,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:29:13,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:29:13,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:29:13,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:29:15,432.432 INFO    ] ================================================
[2026-10-25 11:29:15,448.448 INFO    ] Launching Daemon at Sun Oct 25 11:29:15 IST 2026
[2026-10-25 11:29:15,459.459 INFO    ] ================================================
[2026-10-25 11:29:16,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:29:16
[2026-10-25 11:29:16,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:29:16,882.882 INFO    ] Initializing speech engine...
[2026-10-25 11:29:16,905.905 INFO    ] 2026-10-25 11:29:16
[2026-10-25 11:29:17,171.171 INFO    ] 2026-10-25 11:29:17
[2026-10-25 11:29:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:29:17,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:29:17,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:29:17,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:29:17,664.664 INFO    ] time= 25/10/2026 11:29:17
[2026-10-25 11:29:17,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:29:17,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:29:17,820.820 INFO    ] No existing commands found in stream
[2026-10-25 11:29:22,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:29:22,862.862 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 11:29:24,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:29:24,587.587 INFO    ] Checking for system updates...
[2026-10-25 11:29:24,625.625 INFO    ] 200
[2026-10-25 11:29:24,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:24,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:29:24,683.683 INFO    ] No update needed
[2026-10-25 11:29:24,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 11:29:24,719.719 INFO    ] 200
[2026-10-25 11:29:24,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:24,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:29:24,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:29:24,818.818 INFO    ] No camera update needed
[2026-10-25 11:29:24,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:29:24,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:29:24,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:29:24,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:29:26,873.873 INFO    ] ================================================
[2026-10-25 11:29:26,889.889 INFO    ] Launching Daemon at Sun Oct 25 11:29:26 IST 2026
[2026-10-25 11:29:26,900.900 INFO    ] ================================================
[2026-10-25 11:29:27,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:29:27
[2026-10-25 11:29:28,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:29:28,314.314 INFO    ] Initializing speech engine...
[2026-10-25 11:29:28,323.323 INFO    ] 2026-10-25 11:29:28
[2026-10-25 11:29:28,571.571 INFO    ] 2026-10-25 11:29:28
[2026-10-25 11:29:28,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:29:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:29:28,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:29:29,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:29:29,047.047 INFO    ] time= 25/10/2026 11:29:29
[2026-10-25 11:29:29,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:29:29,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:29:29,220.220 INFO    ] No existing commands found in stream
[2026-10-25 11:29:34,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:29:34,235.235 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 11:29:36,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:29:36,025.025 INFO    ] Checking for system updates...
[2026-10-25 11:29:36,062.062 INFO    ] 200
[2026-10-25 11:29:36,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:36,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:36,125.125 INFO    ] No update needed
[2026-10-25 11:29:36,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 11:29:36,161.161 INFO    ] 200
[2026-10-25 11:29:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:36,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:29:36,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:36,272.272 INFO    ] No camera update needed
[2026-10-25 11:29:36,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:29:36,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:29:36,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:29:36,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:29:38,327.327 INFO    ] ================================================
[2026-10-25 11:29:38,343.343 INFO    ] Launching Daemon at Sun Oct 25 11:29:38 IST 2026
[2026-10-25 11:29:38,354.354 INFO    ] ================================================
[2026-10-25 11:29:38,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:29:38
[2026-10-25 11:29:39,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:29:39,903.903 INFO    ] Initializing speech engine...
[2026-10-25 11:29:39,915.915 INFO    ] 2026-10-25 11:29:39
[2026-10-25 11:29:40,184.184 INFO    ] 2026-10-25 11:29:40
[2026-10-25 11:29:40,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:29:40,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:29:40,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:29:40,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:29:40,692.692 INFO    ] time= 25/10/2026 11:29:40
[2026-10-25 11:29:40,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:29:40,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:29:40,890.890 INFO    ] No existing commands found in stream
[2026-10-25 11:29:45,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:29:45,919.919 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 11:29:47,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:29:47,649.649 INFO    ] Checking for system updates...
[2026-10-25 11:29:47,690.690 INFO    ] 200
[2026-10-25 11:29:47,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:47,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:47,750.750 INFO    ] No update needed
[2026-10-25 11:29:47,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 11:29:47,787.787 INFO    ] 200
[2026-10-25 11:29:47,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:29:47,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:29:47,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:29:47,892.892 INFO    ] No camera update needed
[2026-10-25 11:29:47,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:29:47,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:29:47,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:29:47,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:29:49,948.948 INFO    ] ================================================
[2026-10-25 11:29:49,964.964 INFO    ] Launching Daemon at Sun Oct 25 11:29:49 IST 2026
[2026-10-25 11:29:49,975.975 INFO    ] ================================================
[2026-10-25 11:29:50,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:29:50
[2026-10-25 11:29:51,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:29:51,528.528 INFO    ] Initializing speech engine...
[2026-10-25 11:29:51,537.537 INFO    ] 2026-10-25 11:29:51
[2026-10-25 11:29:51,803.803 INFO    ] 2026-10-25 11:29:51
[2026-10-25 11:29:51,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:29:53,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:29:53,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:29:53,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:29:53,934.934 INFO    ] time= 25/10/2026 11:29:53
[2026-10-25 11:29:53,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:29:53,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:29:54,027.027 INFO    ] No existing commands found in stream
[2026-10-25 11:29:59,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:29:59,046.046 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 11:30:05,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:30:05,769.769 INFO    ] Checking for system updates...
[2026-10-25 11:30:05,809.809 INFO    ] 200
[2026-10-25 11:30:05,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:05,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:05,868.868 INFO    ] No update needed
[2026-10-25 11:30:05,870.870 INFO    ] Checking for camera pi updates...
[2026-10-25 11:30:05,906.906 INFO    ] 200
[2026-10-25 11:30:05,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:05,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:30:05,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:05,988.988 INFO    ] No camera update needed
[2026-10-25 11:30:05,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:30:05,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:30:05,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:30:06,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:30:08,046.046 INFO    ] ================================================
[2026-10-25 11:30:08,062.062 INFO    ] Launching Daemon at Sun Oct 25 11:30:08 IST 2026
[2026-10-25 11:30:08,073.073 INFO    ] ================================================
[2026-10-25 11:30:08,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:30:08
[2026-10-25 11:30:09,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:30:09,504.504 INFO    ] Initializing speech engine...
[2026-10-25 11:30:09,523.523 INFO    ] 2026-10-25 11:30:09
[2026-10-25 11:30:09,771.771 INFO    ] 2026-10-25 11:30:09
[2026-10-25 11:30:09,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:30:10,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:30:10,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:30:10,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:30:10,246.246 INFO    ] time= 25/10/2026 11:30:10
[2026-10-25 11:30:10,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:30:10,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:30:10,391.391 INFO    ] No existing commands found in stream
[2026-10-25 11:30:15,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:30:15,418.418 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 11:30:17,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:30:17,873.873 INFO    ] Checking for system updates...
[2026-10-25 11:30:17,911.911 INFO    ] 200
[2026-10-25 11:30:17,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:17,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:17,968.968 INFO    ] No update needed
[2026-10-25 11:30:17,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 11:30:18,009.009 INFO    ] 200
[2026-10-25 11:30:18,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:18,053.053 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:30:18,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:18,114.114 INFO    ] No camera update needed
[2026-10-25 11:30:18,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:30:18,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:30:18,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:30:18,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:30:20,169.169 INFO    ] ================================================
[2026-10-25 11:30:20,185.185 INFO    ] Launching Daemon at Sun Oct 25 11:30:20 IST 2026
[2026-10-25 11:30:20,196.196 INFO    ] ================================================
[2026-10-25 11:30:20,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:30:20
[2026-10-25 11:30:21,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:30:21,602.602 INFO    ] Initializing speech engine...
[2026-10-25 11:30:21,610.610 INFO    ] 2026-10-25 11:30:21
[2026-10-25 11:30:21,885.885 INFO    ] 2026-10-25 11:30:21
[2026-10-25 11:30:21,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:30:24,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:30:24,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:30:24,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:30:24,760.760 INFO    ] time= 25/10/2026 11:30:24
[2026-10-25 11:30:24,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:30:24,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:30:24,820.820 INFO    ] No existing commands found in stream
[2026-10-25 11:30:29,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:30:29,832.832 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 11:30:33,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:30:33,258.258 INFO    ] Checking for system updates...
[2026-10-25 11:30:33,298.298 INFO    ] 200
[2026-10-25 11:30:33,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:33,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:30:33,374.374 INFO    ] No update needed
[2026-10-25 11:30:33,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 11:30:33,422.422 INFO    ] 200
[2026-10-25 11:30:33,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:33,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:30:33,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:30:33,499.499 INFO    ] No camera update needed
[2026-10-25 11:30:33,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:30:33,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:30:33,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:30:33,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:30:35,555.555 INFO    ] ================================================
[2026-10-25 11:30:35,571.571 INFO    ] Launching Daemon at Sun Oct 25 11:30:35 IST 2026
[2026-10-25 11:30:35,582.582 INFO    ] ================================================
[2026-10-25 11:30:36,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:30:36
[2026-10-25 11:30:36,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:30:36,990.990 INFO    ] Initializing speech engine...
[2026-10-25 11:30:37,002.002 INFO    ] 2026-10-25 11:30:36
[2026-10-25 11:30:37,267.267 INFO    ] 2026-10-25 11:30:37
[2026-10-25 11:30:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:30:37,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:30:37,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:30:37,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:30:37,745.745 INFO    ] time= 25/10/2026 11:30:37
[2026-10-25 11:30:37,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:30:37,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:30:37,905.905 INFO    ] No existing commands found in stream
[2026-10-25 11:30:42,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:30:42,939.939 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 11:30:44,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:30:44,280.280 INFO    ] Checking for system updates...
[2026-10-25 11:30:44,316.316 INFO    ] 200
[2026-10-25 11:30:44,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:44,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:30:44,377.377 INFO    ] No update needed
[2026-10-25 11:30:44,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 11:30:44,414.414 INFO    ] 200
[2026-10-25 11:30:44,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:44,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:30:44,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:30:44,510.510 INFO    ] No camera update needed
[2026-10-25 11:30:44,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:30:44,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:30:44,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:30:44,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:30:46,569.569 INFO    ] ================================================
[2026-10-25 11:30:46,585.585 INFO    ] Launching Daemon at Sun Oct 25 11:30:46 IST 2026
[2026-10-25 11:30:46,596.596 INFO    ] ================================================
[2026-10-25 11:30:47,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:30:47
[2026-10-25 11:30:47,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:30:48,004.004 INFO    ] Initializing speech engine...
[2026-10-25 11:30:48,012.012 INFO    ] 2026-10-25 11:30:48
[2026-10-25 11:30:48,303.303 INFO    ] 2026-10-25 11:30:48
[2026-10-25 11:30:48,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:30:48,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:30:48,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:30:48,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:30:48,702.702 INFO    ] time= 25/10/2026 11:30:48
[2026-10-25 11:30:48,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:30:48,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:30:48,780.780 INFO    ] No existing commands found in stream
[2026-10-25 11:30:53,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:30:53,819.819 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 11:30:56,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:30:56,049.049 INFO    ] Checking for system updates...
[2026-10-25 11:30:56,085.085 INFO    ] 200
[2026-10-25 11:30:56,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:56,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:56,143.143 INFO    ] No update needed
[2026-10-25 11:30:56,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 11:30:56,180.180 INFO    ] 200
[2026-10-25 11:30:56,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:30:56,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:30:56,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:30:56,279.279 INFO    ] No camera update needed
[2026-10-25 11:30:56,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:30:56,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:30:56,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:30:56,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:30:58,334.334 INFO    ] ================================================
[2026-10-25 11:30:58,350.350 INFO    ] Launching Daemon at Sun Oct 25 11:30:58 IST 2026
[2026-10-25 11:30:58,361.361 INFO    ] ================================================
[2026-10-25 11:30:58,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:30:58
[2026-10-25 11:30:59,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:30:59,904.904 INFO    ] Initializing speech engine...
[2026-10-25 11:30:59,918.918 INFO    ] 2026-10-25 11:30:59
[2026-10-25 11:31:00,196.196 INFO    ] 2026-10-25 11:31:00
[2026-10-25 11:31:00,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:00,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:00,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:00,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:00,733.733 INFO    ] time= 25/10/2026 11:31:00
[2026-10-25 11:31:00,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:00,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:00,864.864 INFO    ] No existing commands found in stream
[2026-10-25 11:31:05,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:31:05,900.900 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 11:31:06,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:31:06,513.513 INFO    ] Checking for system updates...
[2026-10-25 11:31:06,553.553 INFO    ] 200
[2026-10-25 11:31:06,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:06,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:06,617.617 INFO    ] No update needed
[2026-10-25 11:31:06,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 11:31:06,655.655 INFO    ] 200
[2026-10-25 11:31:06,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:06,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:31:06,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:06,755.755 INFO    ] No camera update needed
[2026-10-25 11:31:06,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:31:06,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:31:06,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:31:06,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:31:08,814.814 INFO    ] ================================================
[2026-10-25 11:31:08,829.829 INFO    ] Launching Daemon at Sun Oct 25 11:31:08 IST 2026
[2026-10-25 11:31:08,841.841 INFO    ] ================================================
[2026-10-25 11:31:09,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:31:09
[2026-10-25 11:31:10,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:31:10,414.414 INFO    ] Initializing speech engine...
[2026-10-25 11:31:10,421.421 INFO    ] 2026-10-25 11:31:10
[2026-10-25 11:31:10,688.688 INFO    ] 2026-10-25 11:31:10
[2026-10-25 11:31:10,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:10,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:10,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:11,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:11,173.173 INFO    ] time= 25/10/2026 11:31:11
[2026-10-25 11:31:11,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:11,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:11,364.364 INFO    ] No existing commands found in stream
[2026-10-25 11:31:16,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:31:16,398.398 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 11:31:18,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:31:18,086.086 INFO    ] Checking for system updates...
[2026-10-25 11:31:18,123.123 INFO    ] 200
[2026-10-25 11:31:18,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:18,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:18,182.182 INFO    ] No update needed
[2026-10-25 11:31:18,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 11:31:18,218.218 INFO    ] 200
[2026-10-25 11:31:18,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:18,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:31:18,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:18,317.317 INFO    ] No camera update needed
[2026-10-25 11:31:18,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:31:18,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:31:18,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:31:18,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:31:20,372.372 INFO    ] ================================================
[2026-10-25 11:31:20,387.387 INFO    ] Launching Daemon at Sun Oct 25 11:31:20 IST 2026
[2026-10-25 11:31:20,398.398 INFO    ] ================================================
[2026-10-25 11:31:20,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:31:20
[2026-10-25 11:31:21,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:31:21,805.805 INFO    ] Initializing speech engine...
[2026-10-25 11:31:21,816.816 INFO    ] 2026-10-25 11:31:21
[2026-10-25 11:31:22,099.099 INFO    ] 2026-10-25 11:31:22
[2026-10-25 11:31:22,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:22,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:22,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:22,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:22,614.614 INFO    ] time= 25/10/2026 11:31:22
[2026-10-25 11:31:22,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:22,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:22,778.778 INFO    ] No existing commands found in stream
[2026-10-25 11:31:27,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:31:27,793.793 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 11:31:28,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:31:28,446.446 INFO    ] Checking for system updates...
[2026-10-25 11:31:28,483.483 INFO    ] 200
[2026-10-25 11:31:28,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:28,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:28,542.542 INFO    ] No update needed
[2026-10-25 11:31:28,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 11:31:28,578.578 INFO    ] 200
[2026-10-25 11:31:28,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:28,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:31:28,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:28,693.693 INFO    ] No camera update needed
[2026-10-25 11:31:28,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:31:28,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:31:28,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:31:28,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:31:30,749.749 INFO    ] ================================================
[2026-10-25 11:31:30,765.765 INFO    ] Launching Daemon at Sun Oct 25 11:31:30 IST 2026
[2026-10-25 11:31:30,775.775 INFO    ] ================================================
[2026-10-25 11:31:31,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:31:31
[2026-10-25 11:31:32,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:31:32,393.393 INFO    ] Initializing speech engine...
[2026-10-25 11:31:32,406.406 INFO    ] 2026-10-25 11:31:32
[2026-10-25 11:31:32,670.670 INFO    ] 2026-10-25 11:31:32
[2026-10-25 11:31:32,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:32,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:32,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:33,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:33,071.071 INFO    ] time= 25/10/2026 11:31:33
[2026-10-25 11:31:33,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:33,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:33,243.243 INFO    ] No existing commands found in stream
[2026-10-25 11:31:38,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:31:38,271.271 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 11:31:42,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:31:42,591.591 INFO    ] Checking for system updates...
[2026-10-25 11:31:42,627.627 INFO    ] 200
[2026-10-25 11:31:42,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:42,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:42,687.687 INFO    ] No update needed
[2026-10-25 11:31:42,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 11:31:42,724.724 INFO    ] 200
[2026-10-25 11:31:42,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:42,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:31:42,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:31:42,919.919 INFO    ] No camera update needed
[2026-10-25 11:31:42,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:31:42,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:31:42,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:31:42,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:31:44,973.973 INFO    ] ================================================
[2026-10-25 11:31:44,987.987 INFO    ] Launching Daemon at Sun Oct 25 11:31:44 IST 2026
[2026-10-25 11:31:45,998.998 INFO    ] ================================================
[2026-10-25 11:31:45,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:31:45
[2026-10-25 11:31:46,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:31:46,406.406 INFO    ] Initializing speech engine...
[2026-10-25 11:31:46,430.430 INFO    ] 2026-10-25 11:31:46
[2026-10-25 11:31:46,695.695 INFO    ] 2026-10-25 11:31:46
[2026-10-25 11:31:46,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:46,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:46,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:47,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:47,104.104 INFO    ] time= 25/10/2026 11:31:47
[2026-10-25 11:31:47,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:47,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:47,282.282 INFO    ] No existing commands found in stream
[2026-10-25 11:31:52,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:31:52,310.310 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 11:31:53,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:31:53,814.814 INFO    ] Checking for system updates...
[2026-10-25 11:31:53,851.851 INFO    ] 200
[2026-10-25 11:31:53,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:53,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:31:53,908.908 INFO    ] No update needed
[2026-10-25 11:31:53,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 11:31:53,948.948 INFO    ] 200
[2026-10-25 11:31:53,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:31:53,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:31:54,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:31:54,041.041 INFO    ] No camera update needed
[2026-10-25 11:31:54,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:31:54,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:31:54,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:31:54,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:31:56,098.098 INFO    ] ================================================
[2026-10-25 11:31:56,114.114 INFO    ] Launching Daemon at Sun Oct 25 11:31:56 IST 2026
[2026-10-25 11:31:56,125.125 INFO    ] ================================================
[2026-10-25 11:31:56,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:31:56
[2026-10-25 11:31:57,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:31:57,577.577 INFO    ] Initializing speech engine...
[2026-10-25 11:31:57,587.587 INFO    ] 2026-10-25 11:31:57
[2026-10-25 11:31:57,843.843 INFO    ] 2026-10-25 11:31:57
[2026-10-25 11:31:57,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:31:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:31:58,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:31:58,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:31:58,321.321 INFO    ] time= 25/10/2026 11:31:58
[2026-10-25 11:31:58,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:31:58,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:31:58,526.526 INFO    ] No existing commands found in stream
[2026-10-25 11:32:03,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:32:03,551.551 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 11:32:07,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:32:07,878.878 INFO    ] Checking for system updates...
[2026-10-25 11:32:07,915.915 INFO    ] 200
[2026-10-25 11:32:07,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:07,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:07,975.975 INFO    ] No update needed
[2026-10-25 11:32:07,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 11:32:08,013.013 INFO    ] 200
[2026-10-25 11:32:08,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:08,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:32:08,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:08,113.113 INFO    ] No camera update needed
[2026-10-25 11:32:08,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:32:08,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:32:08,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:32:08,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:32:10,172.172 INFO    ] ================================================
[2026-10-25 11:32:10,187.187 INFO    ] Launching Daemon at Sun Oct 25 11:32:10 IST 2026
[2026-10-25 11:32:10,198.198 INFO    ] ================================================
[2026-10-25 11:32:10,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:32:10
[2026-10-25 11:32:11,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:32:11,619.619 INFO    ] Initializing speech engine...
[2026-10-25 11:32:11,628.628 INFO    ] 2026-10-25 11:32:11
[2026-10-25 11:32:11,887.887 INFO    ] 2026-10-25 11:32:11
[2026-10-25 11:32:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:32:12,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:32:12,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:32:12,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:32:12,363.363 INFO    ] time= 25/10/2026 11:32:12
[2026-10-25 11:32:12,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:32:12,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:32:12,560.560 INFO    ] No existing commands found in stream
[2026-10-25 11:32:17,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:32:17,590.590 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 11:32:21,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:32:21,683.683 INFO    ] Checking for system updates...
[2026-10-25 11:32:21,723.723 INFO    ] 200
[2026-10-25 11:32:21,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:21,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:21,781.781 INFO    ] No update needed
[2026-10-25 11:32:21,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 11:32:21,818.818 INFO    ] 200
[2026-10-25 11:32:21,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:21,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:32:21,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:21,920.920 INFO    ] No camera update needed
[2026-10-25 11:32:21,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:32:21,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:32:21,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:32:21,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:32:23,985.985 INFO    ] ================================================
[2026-10-25 11:32:24,000.000 INFO    ] Launching Daemon at Sun Oct 25 11:32:23 IST 2026
[2026-10-25 11:32:24,010.010 INFO    ] ================================================
[2026-10-25 11:32:24,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:32:24
[2026-10-25 11:32:25,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:32:25,548.548 INFO    ] Initializing speech engine...
[2026-10-25 11:32:25,563.563 INFO    ] 2026-10-25 11:32:25
[2026-10-25 11:32:25,832.832 INFO    ] 2026-10-25 11:32:25
[2026-10-25 11:32:25,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:32:27,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:32:27,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:32:27,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:32:27,978.978 INFO    ] time= 25/10/2026 11:32:27
[2026-10-25 11:32:27,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:32:27,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:32:28,061.061 INFO    ] No existing commands found in stream
[2026-10-25 11:32:33,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:32:33,074.074 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 11:32:33,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:32:33,737.737 INFO    ] Checking for system updates...
[2026-10-25 11:32:33,773.773 INFO    ] 200
[2026-10-25 11:32:33,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:33,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:33,835.835 INFO    ] No update needed
[2026-10-25 11:32:33,837.837 INFO    ] Checking for camera pi updates...
[2026-10-25 11:32:33,876.876 INFO    ] 200
[2026-10-25 11:32:33,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:33,920.920 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:32:33,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:33,966.966 INFO    ] No camera update needed
[2026-10-25 11:32:33,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:32:33,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:32:33,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:32:33,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:32:36,021.021 INFO    ] ================================================
[2026-10-25 11:32:36,036.036 INFO    ] Launching Daemon at Sun Oct 25 11:32:36 IST 2026
[2026-10-25 11:32:36,046.046 INFO    ] ================================================
[2026-10-25 11:32:36,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:32:36
[2026-10-25 11:32:37,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:32:37,462.462 INFO    ] Initializing speech engine...
[2026-10-25 11:32:37,471.471 INFO    ] 2026-10-25 11:32:37
[2026-10-25 11:32:37,716.716 INFO    ] 2026-10-25 11:32:37
[2026-10-25 11:32:37,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:32:37,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:32:38,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:32:38,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:32:38,215.215 INFO    ] time= 25/10/2026 11:32:38
[2026-10-25 11:32:38,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:32:38,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:32:38,401.401 INFO    ] No existing commands found in stream
[2026-10-25 11:32:43,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:32:43,429.429 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 11:32:46,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:32:46,090.090 INFO    ] Checking for system updates...
[2026-10-25 11:32:46,127.127 INFO    ] 200
[2026-10-25 11:32:46,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:46,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:46,186.186 INFO    ] No update needed
[2026-10-25 11:32:46,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 11:32:46,222.222 INFO    ] 200
[2026-10-25 11:32:46,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:46,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:32:46,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:32:46,321.321 INFO    ] No camera update needed
[2026-10-25 11:32:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:32:46,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:32:46,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:32:46,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:32:48,375.375 INFO    ] ================================================
[2026-10-25 11:32:48,389.389 INFO    ] Launching Daemon at Sun Oct 25 11:32:48 IST 2026
[2026-10-25 11:32:48,400.400 INFO    ] ================================================
[2026-10-25 11:32:48,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:32:48
[2026-10-25 11:32:49,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:32:49,824.824 INFO    ] Initializing speech engine...
[2026-10-25 11:32:49,833.833 INFO    ] 2026-10-25 11:32:49
[2026-10-25 11:32:50,082.082 INFO    ] 2026-10-25 11:32:50
[2026-10-25 11:32:50,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:32:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:32:50,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:32:50,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:32:50,567.567 INFO    ] time= 25/10/2026 11:32:50
[2026-10-25 11:32:50,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:32:50,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:32:50,717.717 INFO    ] No existing commands found in stream
[2026-10-25 11:32:55,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:32:55,739.739 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 11:32:59,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:32:59,677.677 INFO    ] Checking for system updates...
[2026-10-25 11:32:59,713.713 INFO    ] 200
[2026-10-25 11:32:59,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:59,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:32:59,776.776 INFO    ] No update needed
[2026-10-25 11:32:59,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 11:32:59,813.813 INFO    ] 200
[2026-10-25 11:32:59,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:32:59,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:32:59,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:32:59,916.916 INFO    ] No camera update needed
[2026-10-25 11:32:59,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:32:59,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:32:59,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:32:59,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:33:01,972.972 INFO    ] ================================================
[2026-10-25 11:33:01,989.989 INFO    ] Launching Daemon at Sun Oct 25 11:33:01 IST 2026
[2026-10-25 11:33:02,005.005 INFO    ] ================================================
[2026-10-25 11:33:02,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:33:02
[2026-10-25 11:33:03,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:33:03,641.641 INFO    ] Initializing speech engine...
[2026-10-25 11:33:03,651.651 INFO    ] 2026-10-25 11:33:03
[2026-10-25 11:33:03,919.919 INFO    ] 2026-10-25 11:33:03
[2026-10-25 11:33:03,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:33:04,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:33:04,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:33:04,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:33:04,313.313 INFO    ] time= 25/10/2026 11:33:04
[2026-10-25 11:33:04,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:33:04,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:33:04,504.504 INFO    ] No existing commands found in stream
[2026-10-25 11:33:09,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:33:09,523.523 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 11:33:12,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:33:12,041.041 INFO    ] Checking for system updates...
[2026-10-25 11:33:12,077.077 INFO    ] 200
[2026-10-25 11:33:12,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:12,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:33:12,141.141 INFO    ] No update needed
[2026-10-25 11:33:12,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 11:33:12,181.181 INFO    ] 200
[2026-10-25 11:33:12,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:12,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:33:12,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:33:12,273.273 INFO    ] No camera update needed
[2026-10-25 11:33:12,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:33:12,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:33:12,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:33:12,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:33:14,327.327 INFO    ] ================================================
[2026-10-25 11:33:14,342.342 INFO    ] Launching Daemon at Sun Oct 25 11:33:14 IST 2026
[2026-10-25 11:33:14,353.353 INFO    ] ================================================
[2026-10-25 11:33:14,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:33:14
[2026-10-25 11:33:15,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:33:15,883.883 INFO    ] Initializing speech engine...
[2026-10-25 11:33:15,891.891 INFO    ] 2026-10-25 11:33:15
[2026-10-25 11:33:16,160.160 INFO    ] 2026-10-25 11:33:16
[2026-10-25 11:33:16,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:33:16,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:33:16,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:33:16,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:33:16,693.693 INFO    ] time= 25/10/2026 11:33:16
[2026-10-25 11:33:16,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:33:16,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:33:16,877.877 INFO    ] No existing commands found in stream
[2026-10-25 11:33:21,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:33:21,910.910 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 11:33:22,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:33:22,807.807 INFO    ] Checking for system updates...
[2026-10-25 11:33:22,845.845 INFO    ] 200
[2026-10-25 11:33:22,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:22,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:33:22,908.908 INFO    ] No update needed
[2026-10-25 11:33:22,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 11:33:22,944.944 INFO    ] 200
[2026-10-25 11:33:22,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:22,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:33:23,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:33:23,046.046 INFO    ] No camera update needed
[2026-10-25 11:33:23,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:33:23,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:33:23,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:33:23,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:33:25,100.100 INFO    ] ================================================
[2026-10-25 11:33:25,115.115 INFO    ] Launching Daemon at Sun Oct 25 11:33:25 IST 2026
[2026-10-25 11:33:25,125.125 INFO    ] ================================================
[2026-10-25 11:33:25,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:33:25
[2026-10-25 11:33:26,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:33:26,627.627 INFO    ] Initializing speech engine...
[2026-10-25 11:33:26,637.637 INFO    ] 2026-10-25 11:33:26
[2026-10-25 11:33:26,899.899 INFO    ] 2026-10-25 11:33:26
[2026-10-25 11:33:26,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:33:30,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:33:30,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:33:30,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:33:30,228.228 INFO    ] time= 25/10/2026 11:33:30
[2026-10-25 11:33:30,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:33:30,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:33:30,292.292 INFO    ] No existing commands found in stream
[2026-10-25 11:33:35,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:33:35,305.305 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 11:33:39,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:33:39,007.007 INFO    ] Checking for system updates...
[2026-10-25 11:33:39,049.049 INFO    ] 200
[2026-10-25 11:33:39,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:39,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:33:39,109.109 INFO    ] No update needed
[2026-10-25 11:33:39,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 11:33:39,147.147 INFO    ] 200
[2026-10-25 11:33:39,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:39,196.196 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:33:39,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:33:39,247.247 INFO    ] No camera update needed
[2026-10-25 11:33:39,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:33:39,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:33:39,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:33:39,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:33:41,304.304 INFO    ] ================================================
[2026-10-25 11:33:41,319.319 INFO    ] Launching Daemon at Sun Oct 25 11:33:41 IST 2026
[2026-10-25 11:33:41,331.331 INFO    ] ================================================
[2026-10-25 11:33:41,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:33:41
[2026-10-25 11:33:42,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:33:42,776.776 INFO    ] Initializing speech engine...
[2026-10-25 11:33:42,786.786 INFO    ] 2026-10-25 11:33:42
[2026-10-25 11:33:43,038.038 INFO    ] 2026-10-25 11:33:43
[2026-10-25 11:33:43,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:33:43,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:33:43,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:33:43,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:33:43,542.542 INFO    ] time= 25/10/2026 11:33:43
[2026-10-25 11:33:43,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:33:43,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:33:43,725.725 INFO    ] No existing commands found in stream
[2026-10-25 11:33:48,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:33:48,753.753 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 11:33:52,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:33:52,711.711 INFO    ] Checking for system updates...
[2026-10-25 11:33:52,748.748 INFO    ] 200
[2026-10-25 11:33:52,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:52,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:33:52,807.807 INFO    ] No update needed
[2026-10-25 11:33:52,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 11:33:52,845.845 INFO    ] 200
[2026-10-25 11:33:52,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:33:52,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:33:53,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:33:53,049.049 INFO    ] No camera update needed
[2026-10-25 11:33:53,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:33:53,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:33:53,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:33:53,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:33:55,109.109 INFO    ] ================================================
[2026-10-25 11:33:55,125.125 INFO    ] Launching Daemon at Sun Oct 25 11:33:55 IST 2026
[2026-10-25 11:33:55,136.136 INFO    ] ================================================
[2026-10-25 11:33:55,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:33:55
[2026-10-25 11:33:56,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:33:56,590.590 INFO    ] Initializing speech engine...
[2026-10-25 11:33:56,606.606 INFO    ] 2026-10-25 11:33:56
[2026-10-25 11:33:56,877.877 INFO    ] 2026-10-25 11:33:56
[2026-10-25 11:33:56,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:34:00,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:34:00,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:34:01,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:34:01,130.130 INFO    ] time= 25/10/2026 11:34:01
[2026-10-25 11:34:01,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:34:01,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:34:01,191.191 INFO    ] No existing commands found in stream
[2026-10-25 11:34:06,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:34:06,204.204 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 11:34:09,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:34:09,746.746 INFO    ] Checking for system updates...
[2026-10-25 11:34:09,782.782 INFO    ] 200
[2026-10-25 11:34:09,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:09,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:34:09,846.846 INFO    ] No update needed
[2026-10-25 11:34:09,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 11:34:09,882.882 INFO    ] 200
[2026-10-25 11:34:09,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:09,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:34:09,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:34:09,985.985 INFO    ] No camera update needed
[2026-10-25 11:34:09,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:34:09,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:34:09,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:34:10,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:34:12,042.042 INFO    ] ================================================
[2026-10-25 11:34:12,057.057 INFO    ] Launching Daemon at Sun Oct 25 11:34:12 IST 2026
[2026-10-25 11:34:12,067.067 INFO    ] ================================================
[2026-10-25 11:34:12,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:34:12
[2026-10-25 11:34:13,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:34:13,504.504 INFO    ] Initializing speech engine...
[2026-10-25 11:34:13,521.521 INFO    ] 2026-10-25 11:34:13
[2026-10-25 11:34:13,805.805 INFO    ] 2026-10-25 11:34:13
[2026-10-25 11:34:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:34:14,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:34:14,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:34:14,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:34:14,225.225 INFO    ] time= 25/10/2026 11:34:14
[2026-10-25 11:34:14,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:34:14,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:34:14,393.393 INFO    ] No existing commands found in stream
[2026-10-25 11:34:19,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:34:19,415.415 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 11:34:22,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:34:22,544.544 INFO    ] Checking for system updates...
[2026-10-25 11:34:22,581.581 INFO    ] 200
[2026-10-25 11:34:22,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:22,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:22,646.646 INFO    ] No update needed
[2026-10-25 11:34:22,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 11:34:22,683.683 INFO    ] 200
[2026-10-25 11:34:22,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:22,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:34:22,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:22,790.790 INFO    ] No camera update needed
[2026-10-25 11:34:22,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:34:22,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:34:22,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:34:22,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:34:24,847.847 INFO    ] ================================================
[2026-10-25 11:34:24,862.862 INFO    ] Launching Daemon at Sun Oct 25 11:34:24 IST 2026
[2026-10-25 11:34:24,873.873 INFO    ] ================================================
[2026-10-25 11:34:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:34:25
[2026-10-25 11:34:26,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:34:26,488.488 INFO    ] Initializing speech engine...
[2026-10-25 11:34:26,495.495 INFO    ] 2026-10-25 11:34:26
[2026-10-25 11:34:26,783.783 INFO    ] 2026-10-25 11:34:26
[2026-10-25 11:34:26,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:34:27,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:34:27,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:34:27,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:34:27,319.319 INFO    ] time= 25/10/2026 11:34:27
[2026-10-25 11:34:27,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:34:27,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:34:27,471.471 INFO    ] No existing commands found in stream
[2026-10-25 11:34:32,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:34:32,491.491 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 11:34:34,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:34:34,685.685 INFO    ] Checking for system updates...
[2026-10-25 11:34:34,723.723 INFO    ] 200
[2026-10-25 11:34:34,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:34,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:34,788.788 INFO    ] No update needed
[2026-10-25 11:34:34,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 11:34:34,832.832 INFO    ] 200
[2026-10-25 11:34:34,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:34,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:34:34,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:34,928.928 INFO    ] No camera update needed
[2026-10-25 11:34:34,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:34:34,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:34:34,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:34:34,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:34:36,985.985 INFO    ] ================================================
[2026-10-25 11:34:37,000.000 INFO    ] Launching Daemon at Sun Oct 25 11:34:36 IST 2026
[2026-10-25 11:34:37,011.011 INFO    ] ================================================
[2026-10-25 11:34:37,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:34:37
[2026-10-25 11:34:38,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:34:38,615.615 INFO    ] Initializing speech engine...
[2026-10-25 11:34:38,623.623 INFO    ] 2026-10-25 11:34:38
[2026-10-25 11:34:38,920.920 INFO    ] 2026-10-25 11:34:38
[2026-10-25 11:34:38,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:34:39,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:34:39,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:34:39,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:34:39,453.453 INFO    ] time= 25/10/2026 11:34:39
[2026-10-25 11:34:39,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:34:39,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:34:39,616.616 INFO    ] No existing commands found in stream
[2026-10-25 11:34:44,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:34:44,650.650 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 11:34:45,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:34:45,737.737 INFO    ] Checking for system updates...
[2026-10-25 11:34:45,779.779 INFO    ] 200
[2026-10-25 11:34:45,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:45,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:45,838.838 INFO    ] No update needed
[2026-10-25 11:34:45,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 11:34:45,876.876 INFO    ] 200
[2026-10-25 11:34:45,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:45,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:34:45,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:45,975.975 INFO    ] No camera update needed
[2026-10-25 11:34:45,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:34:45,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:34:45,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:34:45,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:34:48,036.036 INFO    ] ================================================
[2026-10-25 11:34:48,051.051 INFO    ] Launching Daemon at Sun Oct 25 11:34:48 IST 2026
[2026-10-25 11:34:48,062.062 INFO    ] ================================================
[2026-10-25 11:34:48,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:34:48
[2026-10-25 11:34:49,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:34:49,533.533 INFO    ] Initializing speech engine...
[2026-10-25 11:34:49,554.554 INFO    ] 2026-10-25 11:34:49
[2026-10-25 11:34:49,826.826 INFO    ] 2026-10-25 11:34:49
[2026-10-25 11:34:49,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:34:50,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:34:50,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:34:50,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:34:50,327.327 INFO    ] time= 25/10/2026 11:34:50
[2026-10-25 11:34:50,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:34:50,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:34:50,502.502 INFO    ] No existing commands found in stream
[2026-10-25 11:34:55,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:34:55,540.540 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 11:34:56,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:34:56,022.022 INFO    ] Checking for system updates...
[2026-10-25 11:34:56,062.062 INFO    ] 200
[2026-10-25 11:34:56,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:56,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:56,120.120 INFO    ] No update needed
[2026-10-25 11:34:56,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 11:34:56,156.156 INFO    ] 200
[2026-10-25 11:34:56,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:34:56,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:34:56,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:34:56,264.264 INFO    ] No camera update needed
[2026-10-25 11:34:56,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:34:56,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:34:56,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:34:56,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:34:58,319.319 INFO    ] ================================================
[2026-10-25 11:34:58,334.334 INFO    ] Launching Daemon at Sun Oct 25 11:34:58 IST 2026
[2026-10-25 11:34:58,345.345 INFO    ] ================================================
[2026-10-25 11:34:58,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:34:58
[2026-10-25 11:34:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:34:59,791.791 INFO    ] Initializing speech engine...
[2026-10-25 11:34:59,800.800 INFO    ] 2026-10-25 11:34:59
[2026-10-25 11:35:00,108.108 INFO    ] 2026-10-25 11:35:00
[2026-10-25 11:35:00,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:02,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:02,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:02,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:02,836.836 INFO    ] time= 25/10/2026 11:35:02
[2026-10-25 11:35:02,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:02,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:02,907.907 INFO    ] No existing commands found in stream
[2026-10-25 11:35:07,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:35:07,924.924 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 11:35:08,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:35:08,398.398 INFO    ] Checking for system updates...
[2026-10-25 11:35:08,436.436 INFO    ] 200
[2026-10-25 11:35:08,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:08,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:35:08,496.496 INFO    ] No update needed
[2026-10-25 11:35:08,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 11:35:08,533.533 INFO    ] 200
[2026-10-25 11:35:08,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:08,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:35:08,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:35:08,629.629 INFO    ] No camera update needed
[2026-10-25 11:35:08,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:35:08,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:35:08,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:35:08,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:35:10,684.684 INFO    ] ================================================
[2026-10-25 11:35:10,699.699 INFO    ] Launching Daemon at Sun Oct 25 11:35:10 IST 2026
[2026-10-25 11:35:10,709.709 INFO    ] ================================================
[2026-10-25 11:35:11,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:35:11
[2026-10-25 11:35:11,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:35:12,167.167 INFO    ] Initializing speech engine...
[2026-10-25 11:35:12,172.172 INFO    ] 2026-10-25 11:35:12
[2026-10-25 11:35:12,433.433 INFO    ] 2026-10-25 11:35:12
[2026-10-25 11:35:12,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:12,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:12,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:12,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:12,926.926 INFO    ] time= 25/10/2026 11:35:12
[2026-10-25 11:35:12,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:12,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:13,108.108 INFO    ] No existing commands found in stream
[2026-10-25 11:35:18,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:35:18,136.136 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 11:35:18,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:35:18,648.648 INFO    ] Checking for system updates...
[2026-10-25 11:35:18,684.684 INFO    ] 200
[2026-10-25 11:35:18,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 11:35:18,690.690 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 11:35:18,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 11:35:18,732.732 INFO    ] 200
[2026-10-25 11:35:18,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 11:35:18,737.737 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 11:35:18,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:35:18,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:35:18,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:35:18,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:35:20,793.793 INFO    ] ================================================
[2026-10-25 11:35:20,808.808 INFO    ] Launching Daemon at Sun Oct 25 11:35:20 IST 2026
[2026-10-25 11:35:20,818.818 INFO    ] ================================================
[2026-10-25 11:35:21,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:35:21
[2026-10-25 11:35:22,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:35:22,296.296 INFO    ] Initializing speech engine...
[2026-10-25 11:35:22,309.309 INFO    ] 2026-10-25 11:35:22
[2026-10-25 11:35:22,562.562 INFO    ] 2026-10-25 11:35:22
[2026-10-25 11:35:22,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:22,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:22,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:23,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:23,055.055 INFO    ] time= 25/10/2026 11:35:23
[2026-10-25 11:35:23,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:23,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:23,205.205 INFO    ] No existing commands found in stream
[2026-10-25 11:35:28,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:35:28,239.239 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 11:35:29,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:35:29,039.039 INFO    ] Checking for system updates...
[2026-10-25 11:35:29,083.083 INFO    ] 200
[2026-10-25 11:35:29,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:29,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:35:29,149.149 INFO    ] No update needed
[2026-10-25 11:35:29,152.152 INFO    ] Checking for camera pi updates...
[2026-10-25 11:35:29,194.194 INFO    ] 200
[2026-10-25 11:35:29,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:29,242.242 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:35:29,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:35:29,312.312 INFO    ] No camera update needed
[2026-10-25 11:35:29,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:35:29,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:35:29,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:35:29,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:35:31,373.373 INFO    ] ================================================
[2026-10-25 11:35:31,388.388 INFO    ] Launching Daemon at Sun Oct 25 11:35:31 IST 2026
[2026-10-25 11:35:31,399.399 INFO    ] ================================================
[2026-10-25 11:35:32,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:35:32
[2026-10-25 11:35:32,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:35:33,105.105 INFO    ] Initializing speech engine...
[2026-10-25 11:35:33,131.131 INFO    ] 2026-10-25 11:35:33
[2026-10-25 11:35:33,420.420 INFO    ] 2026-10-25 11:35:33
[2026-10-25 11:35:33,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:33,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:33,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:34,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:34,056.056 INFO    ] time= 25/10/2026 11:35:34
[2026-10-25 11:35:34,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:34,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:34,267.267 INFO    ] No existing commands found in stream
[2026-10-25 11:35:39,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:35:39,282.282 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 11:35:40,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:35:40,469.469 INFO    ] Checking for system updates...
[2026-10-25 11:35:40,505.505 INFO    ] 200
[2026-10-25 11:35:40,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:40,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:35:40,564.564 INFO    ] No update needed
[2026-10-25 11:35:40,567.567 INFO    ] Checking for camera pi updates...
[2026-10-25 11:35:40,605.605 INFO    ] 200
[2026-10-25 11:35:40,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:40,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:35:40,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:35:40,715.715 INFO    ] No camera update needed
[2026-10-25 11:35:40,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:35:40,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:35:40,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:35:40,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:35:42,773.773 INFO    ] ================================================
[2026-10-25 11:35:42,787.787 INFO    ] Launching Daemon at Sun Oct 25 11:35:42 IST 2026
[2026-10-25 11:35:42,798.798 INFO    ] ================================================
[2026-10-25 11:35:43,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:35:43
[2026-10-25 11:35:43,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:35:44,209.209 INFO    ] Initializing speech engine...
[2026-10-25 11:35:44,228.228 INFO    ] 2026-10-25 11:35:44
[2026-10-25 11:35:44,478.478 INFO    ] 2026-10-25 11:35:44
[2026-10-25 11:35:44,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:44,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:44,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:44,952.952 INFO    ] time= 25/10/2026 11:35:44
[2026-10-25 11:35:44,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:45,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:45,113.113 INFO    ] No existing commands found in stream
[2026-10-25 11:35:50,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:35:50,131.131 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 11:35:53,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:35:53,645.645 INFO    ] Checking for system updates...
[2026-10-25 11:35:53,681.681 INFO    ] 200
[2026-10-25 11:35:53,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:53,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:35:53,739.739 INFO    ] No update needed
[2026-10-25 11:35:53,741.741 INFO    ] Checking for camera pi updates...
[2026-10-25 11:35:53,777.777 INFO    ] 200
[2026-10-25 11:35:53,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:35:53,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:35:53,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:35:53,977.977 INFO    ] No camera update needed
[2026-10-25 11:35:53,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:35:53,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:35:53,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:35:53,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:35:56,033.033 INFO    ] ================================================
[2026-10-25 11:35:56,048.048 INFO    ] Launching Daemon at Sun Oct 25 11:35:56 IST 2026
[2026-10-25 11:35:56,059.059 INFO    ] ================================================
[2026-10-25 11:35:56,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:35:56
[2026-10-25 11:35:57,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:35:57,726.726 INFO    ] Initializing speech engine...
[2026-10-25 11:35:57,740.740 INFO    ] 2026-10-25 11:35:57
[2026-10-25 11:35:58,035.035 INFO    ] 2026-10-25 11:35:58
[2026-10-25 11:35:58,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:35:58,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:35:58,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:35:58,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:35:58,580.580 INFO    ] time= 25/10/2026 11:35:58
[2026-10-25 11:35:58,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:35:58,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:35:58,734.734 INFO    ] No existing commands found in stream
[2026-10-25 11:36:03,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:36:03,756.756 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 11:36:05,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:36:05,207.207 INFO    ] Checking for system updates...
[2026-10-25 11:36:05,246.246 INFO    ] 200
[2026-10-25 11:36:05,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:05,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:05,310.310 INFO    ] No update needed
[2026-10-25 11:36:05,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 11:36:05,349.349 INFO    ] 200
[2026-10-25 11:36:05,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:05,395.395 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:36:05,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:05,447.447 INFO    ] No camera update needed
[2026-10-25 11:36:05,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:36:05,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:36:05,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:36:05,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:36:07,506.506 INFO    ] ================================================
[2026-10-25 11:36:07,521.521 INFO    ] Launching Daemon at Sun Oct 25 11:36:07 IST 2026
[2026-10-25 11:36:07,532.532 INFO    ] ================================================
[2026-10-25 11:36:08,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:36:08
[2026-10-25 11:36:08,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:36:08,998.998 INFO    ] Initializing speech engine...
[2026-10-25 11:36:09,007.007 INFO    ] 2026-10-25 11:36:08
[2026-10-25 11:36:09,253.253 INFO    ] 2026-10-25 11:36:09
[2026-10-25 11:36:09,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:36:09,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:36:09,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:36:09,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:36:09,747.747 INFO    ] time= 25/10/2026 11:36:09
[2026-10-25 11:36:09,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:36:09,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:36:09,930.930 INFO    ] No existing commands found in stream
[2026-10-25 11:36:14,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:36:14,964.964 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 11:36:16,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:36:16,274.274 INFO    ] Checking for system updates...
[2026-10-25 11:36:16,311.311 INFO    ] 200
[2026-10-25 11:36:16,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:16,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:36:16,369.369 INFO    ] No update needed
[2026-10-25 11:36:16,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 11:36:16,410.410 INFO    ] 200
[2026-10-25 11:36:16,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:16,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:36:16,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:36:16,504.504 INFO    ] No camera update needed
[2026-10-25 11:36:16,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:36:16,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:36:16,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:36:16,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:36:18,560.560 INFO    ] ================================================
[2026-10-25 11:36:18,575.575 INFO    ] Launching Daemon at Sun Oct 25 11:36:18 IST 2026
[2026-10-25 11:36:18,586.586 INFO    ] ================================================
[2026-10-25 11:36:19,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:36:19
[2026-10-25 11:36:19,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:36:20,071.071 INFO    ] Initializing speech engine...
[2026-10-25 11:36:20,080.080 INFO    ] 2026-10-25 11:36:20
[2026-10-25 11:36:20,339.339 INFO    ] 2026-10-25 11:36:20
[2026-10-25 11:36:20,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:36:20,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:36:20,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:36:20,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:36:20,833.833 INFO    ] time= 25/10/2026 11:36:20
[2026-10-25 11:36:20,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:36:20,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:36:21,028.028 INFO    ] No existing commands found in stream
[2026-10-25 11:36:26,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:36:26,057.057 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 11:36:28,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:36:28,453.453 INFO    ] Checking for system updates...
[2026-10-25 11:36:28,490.490 INFO    ] 200
[2026-10-25 11:36:28,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:28,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:28,549.549 INFO    ] No update needed
[2026-10-25 11:36:28,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 11:36:28,586.586 INFO    ] 200
[2026-10-25 11:36:28,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:28,630.630 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:36:28,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:28,679.679 INFO    ] No camera update needed
[2026-10-25 11:36:28,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:36:28,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:36:28,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:36:28,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:36:30,736.736 INFO    ] ================================================
[2026-10-25 11:36:30,751.751 INFO    ] Launching Daemon at Sun Oct 25 11:36:30 IST 2026
[2026-10-25 11:36:30,761.761 INFO    ] ================================================
[2026-10-25 11:36:31,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:36:31
[2026-10-25 11:36:32,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:36:32,538.538 INFO    ] Initializing speech engine...
[2026-10-25 11:36:32,547.547 INFO    ] 2026-10-25 11:36:32
[2026-10-25 11:36:32,832.832 INFO    ] 2026-10-25 11:36:32
[2026-10-25 11:36:32,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:36:36,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:36:36,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:36:36,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:36:36,346.346 INFO    ] time= 25/10/2026 11:36:36
[2026-10-25 11:36:36,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:36:36,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:36:36,411.411 INFO    ] No existing commands found in stream
[2026-10-25 11:36:41,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:36:41,424.424 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 11:36:42,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:36:42,610.610 INFO    ] Checking for system updates...
[2026-10-25 11:36:42,654.654 INFO    ] 200
[2026-10-25 11:36:42,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:42,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:36:42,730.730 INFO    ] No update needed
[2026-10-25 11:36:42,733.733 INFO    ] Checking for camera pi updates...
[2026-10-25 11:36:42,769.769 INFO    ] 200
[2026-10-25 11:36:42,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:42,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:36:42,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:36:42,871.871 INFO    ] No camera update needed
[2026-10-25 11:36:42,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:36:42,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:36:42,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:36:42,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:36:44,925.925 INFO    ] ================================================
[2026-10-25 11:36:44,940.940 INFO    ] Launching Daemon at Sun Oct 25 11:36:44 IST 2026
[2026-10-25 11:36:44,951.951 INFO    ] ================================================
[2026-10-25 11:36:45,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:36:45
[2026-10-25 11:36:46,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:36:46,363.363 INFO    ] Initializing speech engine...
[2026-10-25 11:36:46,382.382 INFO    ] 2026-10-25 11:36:46
[2026-10-25 11:36:46,631.631 INFO    ] 2026-10-25 11:36:46
[2026-10-25 11:36:46,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:36:46,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:36:46,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:36:47,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:36:47,006.006 INFO    ] time= 25/10/2026 11:36:47
[2026-10-25 11:36:47,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:36:47,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:36:47,174.174 INFO    ] No existing commands found in stream
[2026-10-25 11:36:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:36:52,212.212 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 11:36:54,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:36:54,361.361 INFO    ] Checking for system updates...
[2026-10-25 11:36:54,401.401 INFO    ] 200
[2026-10-25 11:36:54,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:54,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:54,460.460 INFO    ] No update needed
[2026-10-25 11:36:54,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 11:36:54,497.497 INFO    ] 200
[2026-10-25 11:36:54,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:36:54,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:36:54,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:36:54,613.613 INFO    ] No camera update needed
[2026-10-25 11:36:54,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:36:54,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:36:54,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:36:54,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:36:56,667.667 INFO    ] ================================================
[2026-10-25 11:36:56,682.682 INFO    ] Launching Daemon at Sun Oct 25 11:36:56 IST 2026
[2026-10-25 11:36:56,693.693 INFO    ] ================================================
[2026-10-25 11:36:57,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:36:57
[2026-10-25 11:36:57,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:36:58,096.096 INFO    ] Initializing speech engine...
[2026-10-25 11:36:58,104.104 INFO    ] 2026-10-25 11:36:58
[2026-10-25 11:36:58,397.397 INFO    ] 2026-10-25 11:36:58
[2026-10-25 11:36:58,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:36:58,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:36:58,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:36:58,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:36:58,779.779 INFO    ] time= 25/10/2026 11:36:58
[2026-10-25 11:36:58,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:36:58,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:36:58,904.904 INFO    ] No existing commands found in stream
[2026-10-25 11:37:03,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:37:03,919.919 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 11:37:07,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:37:07,050.050 INFO    ] Checking for system updates...
[2026-10-25 11:37:07,100.100 INFO    ] 200
[2026-10-25 11:37:07,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:07,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:37:07,173.173 INFO    ] No update needed
[2026-10-25 11:37:07,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 11:37:07,210.210 INFO    ] 200
[2026-10-25 11:37:07,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:07,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:37:07,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:37:07,310.310 INFO    ] No camera update needed
[2026-10-25 11:37:07,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:37:07,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:37:07,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:37:07,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:37:09,369.369 INFO    ] ================================================
[2026-10-25 11:37:09,385.385 INFO    ] Launching Daemon at Sun Oct 25 11:37:09 IST 2026
[2026-10-25 11:37:09,396.396 INFO    ] ================================================
[2026-10-25 11:37:10,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:37:10
[2026-10-25 11:37:10,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:37:11,006.006 INFO    ] Initializing speech engine...
[2026-10-25 11:37:11,016.016 INFO    ] 2026-10-25 11:37:11
[2026-10-25 11:37:11,290.290 INFO    ] 2026-10-25 11:37:11
[2026-10-25 11:37:11,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:37:11,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:37:11,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:37:11,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:37:11,844.844 INFO    ] time= 25/10/2026 11:37:11
[2026-10-25 11:37:11,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:37:11,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:37:11,999.999 INFO    ] No existing commands found in stream
[2026-10-25 11:37:17,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:37:17,028.028 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 11:37:20,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:37:20,562.562 INFO    ] Checking for system updates...
[2026-10-25 11:37:20,600.600 INFO    ] 200
[2026-10-25 11:37:20,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:20,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:20,673.673 INFO    ] No update needed
[2026-10-25 11:37:20,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 11:37:20,714.714 INFO    ] 200
[2026-10-25 11:37:20,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:20,757.757 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:37:20,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:20,807.807 INFO    ] No camera update needed
[2026-10-25 11:37:20,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:37:20,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:37:20,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:37:20,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:37:22,862.862 INFO    ] ================================================
[2026-10-25 11:37:22,878.878 INFO    ] Launching Daemon at Sun Oct 25 11:37:22 IST 2026
[2026-10-25 11:37:22,889.889 INFO    ] ================================================
[2026-10-25 11:37:23,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:37:23
[2026-10-25 11:37:24,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:37:24,310.310 INFO    ] Initializing speech engine...
[2026-10-25 11:37:24,319.319 INFO    ] 2026-10-25 11:37:24
[2026-10-25 11:37:24,565.565 INFO    ] 2026-10-25 11:37:24
[2026-10-25 11:37:24,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:37:24,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:37:24,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:37:24,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:37:25,014.014 INFO    ] time= 25/10/2026 11:37:24
[2026-10-25 11:37:25,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:37:25,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:37:25,183.183 INFO    ] No existing commands found in stream
[2026-10-25 11:37:30,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:37:30,195.195 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 11:37:32,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:37:32,594.594 INFO    ] Checking for system updates...
[2026-10-25 11:37:32,635.635 INFO    ] 200
[2026-10-25 11:37:32,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:32,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:32,699.699 INFO    ] No update needed
[2026-10-25 11:37:32,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 11:37:32,739.739 INFO    ] 200
[2026-10-25 11:37:32,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:32,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:37:32,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:32,818.818 INFO    ] No camera update needed
[2026-10-25 11:37:32,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:37:32,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:37:32,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:37:32,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:37:34,872.872 INFO    ] ================================================
[2026-10-25 11:37:34,888.888 INFO    ] Launching Daemon at Sun Oct 25 11:37:34 IST 2026
[2026-10-25 11:37:34,899.899 INFO    ] ================================================
[2026-10-25 11:37:35,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:37:35
[2026-10-25 11:37:36,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:37:36,330.330 INFO    ] Initializing speech engine...
[2026-10-25 11:37:36,343.343 INFO    ] 2026-10-25 11:37:36
[2026-10-25 11:37:36,628.628 INFO    ] 2026-10-25 11:37:36
[2026-10-25 11:37:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:37:37,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:37:37,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:37:38,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:37:38,022.022 INFO    ] time= 25/10/2026 11:37:38
[2026-10-25 11:37:38,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:37:38,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:37:38,128.128 INFO    ] No existing commands found in stream
[2026-10-25 11:37:43,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:37:43,161.161 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 11:37:45,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:37:45,288.288 INFO    ] Checking for system updates...
[2026-10-25 11:37:45,329.329 INFO    ] 200
[2026-10-25 11:37:45,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:45,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:45,390.390 INFO    ] No update needed
[2026-10-25 11:37:45,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 11:37:45,429.429 INFO    ] 200
[2026-10-25 11:37:45,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:45,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:37:45,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:45,527.527 INFO    ] No camera update needed
[2026-10-25 11:37:45,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:37:45,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:37:45,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:37:45,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:37:47,585.585 INFO    ] ================================================
[2026-10-25 11:37:47,600.600 INFO    ] Launching Daemon at Sun Oct 25 11:37:47 IST 2026
[2026-10-25 11:37:47,612.612 INFO    ] ================================================
[2026-10-25 11:37:48,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:37:48
[2026-10-25 11:37:48,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:37:49,030.030 INFO    ] Initializing speech engine...
[2026-10-25 11:37:49,039.039 INFO    ] 2026-10-25 11:37:49
[2026-10-25 11:37:49,284.284 INFO    ] 2026-10-25 11:37:49
[2026-10-25 11:37:49,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:37:49,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:37:49,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:37:49,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:37:49,731.731 INFO    ] time= 25/10/2026 11:37:49
[2026-10-25 11:37:49,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:37:49,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:37:49,902.902 INFO    ] No existing commands found in stream
[2026-10-25 11:37:54,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:37:54,930.930 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 11:37:56,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:37:56,757.757 INFO    ] Checking for system updates...
[2026-10-25 11:37:56,796.796 INFO    ] 200
[2026-10-25 11:37:56,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:56,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:56,861.861 INFO    ] No update needed
[2026-10-25 11:37:56,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 11:37:56,902.902 INFO    ] 200
[2026-10-25 11:37:56,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:37:56,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:37:57,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:37:57,110.110 INFO    ] No camera update needed
[2026-10-25 11:37:57,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:37:57,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:37:57,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:37:57,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:37:59,165.165 INFO    ] ================================================
[2026-10-25 11:37:59,180.180 INFO    ] Launching Daemon at Sun Oct 25 11:37:59 IST 2026
[2026-10-25 11:37:59,191.191 INFO    ] ================================================
[2026-10-25 11:37:59,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:37:59
[2026-10-25 11:38:00,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:38:00,590.590 INFO    ] Initializing speech engine...
[2026-10-25 11:38:00,603.603 INFO    ] 2026-10-25 11:38:00
[2026-10-25 11:38:00,867.867 INFO    ] 2026-10-25 11:38:00
[2026-10-25 11:38:00,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:38:01,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:38:01,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:38:01,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:38:01,454.454 INFO    ] time= 25/10/2026 11:38:01
[2026-10-25 11:38:01,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:38:01,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:38:01,590.590 INFO    ] No existing commands found in stream
[2026-10-25 11:38:06,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:38:06,603.603 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 11:38:09,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:38:09,135.135 INFO    ] Checking for system updates...
[2026-10-25 11:38:09,174.174 INFO    ] 200
[2026-10-25 11:38:09,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:09,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:38:09,239.239 INFO    ] No update needed
[2026-10-25 11:38:09,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 11:38:09,275.275 INFO    ] 200
[2026-10-25 11:38:09,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:09,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:38:09,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:38:09,360.360 INFO    ] No camera update needed
[2026-10-25 11:38:09,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:38:09,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:38:09,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:38:09,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:38:11,416.416 INFO    ] ================================================
[2026-10-25 11:38:11,432.432 INFO    ] Launching Daemon at Sun Oct 25 11:38:11 IST 2026
[2026-10-25 11:38:11,443.443 INFO    ] ================================================
[2026-10-25 11:38:12,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:38:12
[2026-10-25 11:38:12,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:38:13,082.082 INFO    ] Initializing speech engine...
[2026-10-25 11:38:13,090.090 INFO    ] 2026-10-25 11:38:13
[2026-10-25 11:38:13,388.388 INFO    ] 2026-10-25 11:38:13
[2026-10-25 11:38:13,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:38:13,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:38:13,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:38:13,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:38:13,882.882 INFO    ] time= 25/10/2026 11:38:13
[2026-10-25 11:38:13,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:38:13,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:38:14,075.075 INFO    ] No existing commands found in stream
[2026-10-25 11:38:19,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:38:19,110.110 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 11:38:22,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:38:22,259.259 INFO    ] Checking for system updates...
[2026-10-25 11:38:22,297.297 INFO    ] 200
[2026-10-25 11:38:22,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:22,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:22,358.358 INFO    ] No update needed
[2026-10-25 11:38:22,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 11:38:22,397.397 INFO    ] 200
[2026-10-25 11:38:22,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:22,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:38:22,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:22,504.504 INFO    ] No camera update needed
[2026-10-25 11:38:22,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:38:22,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:38:22,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:38:22,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:38:24,565.565 INFO    ] ================================================
[2026-10-25 11:38:24,581.581 INFO    ] Launching Daemon at Sun Oct 25 11:38:24 IST 2026
[2026-10-25 11:38:24,593.593 INFO    ] ================================================
[2026-10-25 11:38:25,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:38:25
[2026-10-25 11:38:25,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:38:26,020.020 INFO    ] Initializing speech engine...
[2026-10-25 11:38:26,039.039 INFO    ] 2026-10-25 11:38:26
[2026-10-25 11:38:26,315.315 INFO    ] 2026-10-25 11:38:26
[2026-10-25 11:38:26,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:38:26,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:38:26,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:38:26,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:38:26,870.870 INFO    ] time= 25/10/2026 11:38:26
[2026-10-25 11:38:26,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:38:26,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:38:27,025.025 INFO    ] No existing commands found in stream
[2026-10-25 11:38:32,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:38:32,043.043 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 11:38:33,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:38:33,590.590 INFO    ] Checking for system updates...
[2026-10-25 11:38:33,632.632 INFO    ] 200
[2026-10-25 11:38:33,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:33,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:33,701.701 INFO    ] No update needed
[2026-10-25 11:38:33,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 11:38:33,745.745 INFO    ] 200
[2026-10-25 11:38:33,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:33,791.791 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:38:33,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:33,829.829 INFO    ] No camera update needed
[2026-10-25 11:38:33,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:38:33,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:38:33,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:38:33,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:38:35,891.891 INFO    ] ================================================
[2026-10-25 11:38:35,905.905 INFO    ] Launching Daemon at Sun Oct 25 11:38:35 IST 2026
[2026-10-25 11:38:35,917.917 INFO    ] ================================================
[2026-10-25 11:38:36,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:38:36
[2026-10-25 11:38:37,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:38:37,575.575 INFO    ] Initializing speech engine...
[2026-10-25 11:38:37,587.587 INFO    ] 2026-10-25 11:38:37
[2026-10-25 11:38:37,903.903 INFO    ] 2026-10-25 11:38:37
[2026-10-25 11:38:37,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:38:39,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:38:39,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:38:39,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:38:39,927.927 INFO    ] time= 25/10/2026 11:38:39
[2026-10-25 11:38:39,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:38:39,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:38:40,006.006 INFO    ] No existing commands found in stream
[2026-10-25 11:38:45,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:38:45,022.022 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 11:38:48,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:38:48,437.437 INFO    ] Checking for system updates...
[2026-10-25 11:38:48,477.477 INFO    ] 200
[2026-10-25 11:38:48,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:48,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:38:48,536.536 INFO    ] No update needed
[2026-10-25 11:38:48,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 11:38:48,577.577 INFO    ] 200
[2026-10-25 11:38:48,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:48,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:38:48,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:38:48,677.677 INFO    ] No camera update needed
[2026-10-25 11:38:48,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:38:48,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:38:48,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:38:48,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:38:50,733.733 INFO    ] ================================================
[2026-10-25 11:38:50,748.748 INFO    ] Launching Daemon at Sun Oct 25 11:38:50 IST 2026
[2026-10-25 11:38:50,758.758 INFO    ] ================================================
[2026-10-25 11:38:51,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:38:51
[2026-10-25 11:38:51,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:38:52,169.169 INFO    ] Initializing speech engine...
[2026-10-25 11:38:52,175.175 INFO    ] 2026-10-25 11:38:52
[2026-10-25 11:38:52,477.477 INFO    ] 2026-10-25 11:38:52
[2026-10-25 11:38:52,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:38:52,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:38:52,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:38:52,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:38:52,911.911 INFO    ] time= 25/10/2026 11:38:52
[2026-10-25 11:38:52,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:38:52,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:38:53,076.076 INFO    ] No existing commands found in stream
[2026-10-25 11:38:58,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:38:58,104.104 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 11:38:59,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:38:59,167.167 INFO    ] Checking for system updates...
[2026-10-25 11:38:59,203.203 INFO    ] 200
[2026-10-25 11:38:59,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:59,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:59,263.263 INFO    ] No update needed
[2026-10-25 11:38:59,265.265 INFO    ] Checking for camera pi updates...
[2026-10-25 11:38:59,300.300 INFO    ] 200
[2026-10-25 11:38:59,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:38:59,349.349 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:38:59,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:38:59,400.400 INFO    ] No camera update needed
[2026-10-25 11:38:59,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:38:59,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:38:59,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:38:59,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:39:01,487.487 INFO    ] ================================================
[2026-10-25 11:39:01,529.529 INFO    ] Launching Daemon at Sun Oct 25 11:39:01 IST 2026
[2026-10-25 11:39:01,557.557 INFO    ] ================================================
[2026-10-25 11:39:02,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:39:02
[2026-10-25 11:39:02,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:39:03,236.236 INFO    ] Initializing speech engine...
[2026-10-25 11:39:03,250.250 INFO    ] 2026-10-25 11:39:03
[2026-10-25 11:39:03,541.541 INFO    ] 2026-10-25 11:39:03
[2026-10-25 11:39:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:39:03,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:39:03,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:39:03,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:39:03,937.937 INFO    ] time= 25/10/2026 11:39:03
[2026-10-25 11:39:03,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:39:03,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:39:04,093.093 INFO    ] No existing commands found in stream
[2026-10-25 11:39:09,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:39:09,107.107 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 11:39:11,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:39:11,202.202 INFO    ] Checking for system updates...
[2026-10-25 11:39:11,238.238 INFO    ] 200
[2026-10-25 11:39:11,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:11,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:39:11,296.296 INFO    ] No update needed
[2026-10-25 11:39:11,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 11:39:11,333.333 INFO    ] 200
[2026-10-25 11:39:11,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:11,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:39:11,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:39:11,439.439 INFO    ] No camera update needed
[2026-10-25 11:39:11,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:39:11,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:39:11,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:39:11,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:39:13,499.499 INFO    ] ================================================
[2026-10-25 11:39:13,515.515 INFO    ] Launching Daemon at Sun Oct 25 11:39:13 IST 2026
[2026-10-25 11:39:13,525.525 INFO    ] ================================================
[2026-10-25 11:39:14,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:39:14
[2026-10-25 11:39:14,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:39:15,210.210 INFO    ] Initializing speech engine...
[2026-10-25 11:39:15,222.222 INFO    ] 2026-10-25 11:39:15
[2026-10-25 11:39:15,541.541 INFO    ] 2026-10-25 11:39:15
[2026-10-25 11:39:15,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:39:15,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:39:15,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:39:15,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:39:15,961.961 INFO    ] time= 25/10/2026 11:39:15
[2026-10-25 11:39:16,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:39:16,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:39:16,120.120 INFO    ] No existing commands found in stream
[2026-10-25 11:39:21,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:39:21,135.135 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 11:39:24,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:39:24,734.734 INFO    ] Checking for system updates...
[2026-10-25 11:39:24,771.771 INFO    ] 200
[2026-10-25 11:39:24,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:24,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:39:24,837.837 INFO    ] No update needed
[2026-10-25 11:39:24,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 11:39:24,873.873 INFO    ] 200
[2026-10-25 11:39:24,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:24,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:39:24,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:39:24,969.969 INFO    ] No camera update needed
[2026-10-25 11:39:24,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:39:24,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:39:24,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:39:24,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:39:27,025.025 INFO    ] ================================================
[2026-10-25 11:39:27,040.040 INFO    ] Launching Daemon at Sun Oct 25 11:39:27 IST 2026
[2026-10-25 11:39:27,051.051 INFO    ] ================================================
[2026-10-25 11:39:27,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:39:27
[2026-10-25 11:39:28,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:39:28,508.508 INFO    ] Initializing speech engine...
[2026-10-25 11:39:28,525.525 INFO    ] 2026-10-25 11:39:28
[2026-10-25 11:39:28,806.806 INFO    ] 2026-10-25 11:39:28
[2026-10-25 11:39:28,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:39:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:39:29,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:39:29,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:39:29,196.196 INFO    ] time= 25/10/2026 11:39:29
[2026-10-25 11:39:29,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:39:29,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:39:29,323.323 INFO    ] No existing commands found in stream
[2026-10-25 11:39:34,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:39:34,339.339 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 11:39:36,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:39:36,834.834 INFO    ] Checking for system updates...
[2026-10-25 11:39:36,871.871 INFO    ] 200
[2026-10-25 11:39:36,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:36,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:39:36,934.934 INFO    ] No update needed
[2026-10-25 11:39:36,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 11:39:36,975.975 INFO    ] 200
[2026-10-25 11:39:36,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:37,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:39:37,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:39:37,080.080 INFO    ] No camera update needed
[2026-10-25 11:39:37,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:39:37,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:39:37,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:39:37,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:39:39,137.137 INFO    ] ================================================
[2026-10-25 11:39:39,152.152 INFO    ] Launching Daemon at Sun Oct 25 11:39:39 IST 2026
[2026-10-25 11:39:39,162.162 INFO    ] ================================================
[2026-10-25 11:39:39,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:39:39
[2026-10-25 11:39:40,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:39:40,567.567 INFO    ] Initializing speech engine...
[2026-10-25 11:39:40,575.575 INFO    ] 2026-10-25 11:39:40
[2026-10-25 11:39:40,874.874 INFO    ] 2026-10-25 11:39:40
[2026-10-25 11:39:40,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:39:41,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:39:41,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:39:41,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:39:41,857.857 INFO    ] time= 25/10/2026 11:39:41
[2026-10-25 11:39:41,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:39:41,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:39:42,039.039 INFO    ] No existing commands found in stream
[2026-10-25 11:39:47,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:39:47,057.057 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 11:39:49,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:39:49,054.054 INFO    ] Checking for system updates...
[2026-10-25 11:39:49,090.090 INFO    ] 200
[2026-10-25 11:39:49,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:49,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:39:49,157.157 INFO    ] No update needed
[2026-10-25 11:39:49,159.159 INFO    ] Checking for camera pi updates...
[2026-10-25 11:39:49,193.193 INFO    ] 200
[2026-10-25 11:39:49,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:39:49,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:39:49,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:39:49,286.286 INFO    ] No camera update needed
[2026-10-25 11:39:49,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:39:49,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:39:49,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:39:49,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:39:51,340.340 INFO    ] ================================================
[2026-10-25 11:39:51,355.355 INFO    ] Launching Daemon at Sun Oct 25 11:39:51 IST 2026
[2026-10-25 11:39:51,366.366 INFO    ] ================================================
[2026-10-25 11:39:52,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:39:52
[2026-10-25 11:39:52,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:39:52,989.989 INFO    ] Initializing speech engine...
[2026-10-25 11:39:53,004.004 INFO    ] 2026-10-25 11:39:52
[2026-10-25 11:39:53,270.270 INFO    ] 2026-10-25 11:39:53
[2026-10-25 11:39:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:39:53,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:39:53,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:39:53,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:39:53,766.766 INFO    ] time= 25/10/2026 11:39:53
[2026-10-25 11:39:53,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:39:53,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:39:53,915.915 INFO    ] No existing commands found in stream
[2026-10-25 11:39:58,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:39:58,948.948 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 11:40:02,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:40:02,908.908 INFO    ] Checking for system updates...
[2026-10-25 11:40:02,955.955 INFO    ] 200
[2026-10-25 11:40:02,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:03,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:03,033.033 INFO    ] No update needed
[2026-10-25 11:40:03,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 11:40:03,086.086 INFO    ] 200
[2026-10-25 11:40:03,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:03,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:40:03,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:03,197.197 INFO    ] No camera update needed
[2026-10-25 11:40:03,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:40:03,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:40:03,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:40:03,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:40:05,259.259 INFO    ] ================================================
[2026-10-25 11:40:05,274.274 INFO    ] Launching Daemon at Sun Oct 25 11:40:05 IST 2026
[2026-10-25 11:40:05,284.284 INFO    ] ================================================
[2026-10-25 11:40:05,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:40:05
[2026-10-25 11:40:06,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:40:06,818.818 INFO    ] Initializing speech engine...
[2026-10-25 11:40:06,830.830 INFO    ] 2026-10-25 11:40:06
[2026-10-25 11:40:07,137.137 INFO    ] 2026-10-25 11:40:07
[2026-10-25 11:40:07,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:40:07,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:40:07,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:40:07,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:40:07,757.757 INFO    ] time= 25/10/2026 11:40:07
[2026-10-25 11:40:07,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:40:07,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:40:07,948.948 INFO    ] No existing commands found in stream
[2026-10-25 11:40:12,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:40:12,977.977 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 11:40:13,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:40:13,867.867 INFO    ] Checking for system updates...
[2026-10-25 11:40:13,902.902 INFO    ] 200
[2026-10-25 11:40:13,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:13,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:40:13,959.959 INFO    ] No update needed
[2026-10-25 11:40:13,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 11:40:13,997.997 INFO    ] 200
[2026-10-25 11:40:13,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:14,045.045 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:40:14,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:40:14,098.098 INFO    ] No camera update needed
[2026-10-25 11:40:14,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:40:14,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:40:14,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:40:14,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:40:16,152.152 INFO    ] ================================================
[2026-10-25 11:40:16,167.167 INFO    ] Launching Daemon at Sun Oct 25 11:40:16 IST 2026
[2026-10-25 11:40:16,178.178 INFO    ] ================================================
[2026-10-25 11:40:16,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:40:16
[2026-10-25 11:40:17,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:40:17,601.601 INFO    ] Initializing speech engine...
[2026-10-25 11:40:17,607.607 INFO    ] 2026-10-25 11:40:17
[2026-10-25 11:40:17,865.865 INFO    ] 2026-10-25 11:40:17
[2026-10-25 11:40:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:40:18,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:40:18,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:40:18,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:40:18,342.342 INFO    ] time= 25/10/2026 11:40:18
[2026-10-25 11:40:18,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:40:18,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:40:18,536.536 INFO    ] No existing commands found in stream
[2026-10-25 11:40:23,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:40:23,569.569 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 11:40:25,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:40:25,768.768 INFO    ] Checking for system updates...
[2026-10-25 11:40:25,804.804 INFO    ] 200
[2026-10-25 11:40:25,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:25,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:25,871.871 INFO    ] No update needed
[2026-10-25 11:40:25,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 11:40:25,911.911 INFO    ] 200
[2026-10-25 11:40:25,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:25,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:40:26,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:26,033.033 INFO    ] No camera update needed
[2026-10-25 11:40:26,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:40:26,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:40:26,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:40:26,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:40:28,090.090 INFO    ] ================================================
[2026-10-25 11:40:28,105.105 INFO    ] Launching Daemon at Sun Oct 25 11:40:28 IST 2026
[2026-10-25 11:40:28,115.115 INFO    ] ================================================
[2026-10-25 11:40:28,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:40:28
[2026-10-25 11:40:29,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:40:29,640.640 INFO    ] Initializing speech engine...
[2026-10-25 11:40:29,649.649 INFO    ] 2026-10-25 11:40:29
[2026-10-25 11:40:29,897.897 INFO    ] 2026-10-25 11:40:29
[2026-10-25 11:40:29,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:40:30,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:40:30,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:40:30,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:40:30,340.340 INFO    ] time= 25/10/2026 11:40:30
[2026-10-25 11:40:30,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:40:30,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:40:30,524.524 INFO    ] No existing commands found in stream
[2026-10-25 11:40:35,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:40:35,537.537 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 11:40:38,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:40:38,984.984 INFO    ] Checking for system updates...
[2026-10-25 11:40:39,019.019 INFO    ] 200
[2026-10-25 11:40:39,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:39,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:39,078.078 INFO    ] No update needed
[2026-10-25 11:40:39,081.081 INFO    ] Checking for camera pi updates...
[2026-10-25 11:40:39,115.115 INFO    ] 200
[2026-10-25 11:40:39,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:39,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:40:39,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:40:39,209.209 INFO    ] No camera update needed
[2026-10-25 11:40:39,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:40:39,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:40:39,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:40:39,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:40:41,265.265 INFO    ] ================================================
[2026-10-25 11:40:41,280.280 INFO    ] Launching Daemon at Sun Oct 25 11:40:41 IST 2026
[2026-10-25 11:40:41,291.291 INFO    ] ================================================
[2026-10-25 11:40:41,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:40:41
[2026-10-25 11:40:42,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:40:42,698.698 INFO    ] Initializing speech engine...
[2026-10-25 11:40:42,712.712 INFO    ] 2026-10-25 11:40:42
[2026-10-25 11:40:42,976.976 INFO    ] 2026-10-25 11:40:42
[2026-10-25 11:40:43,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:40:43,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:40:43,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:40:43,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:40:43,594.594 INFO    ] time= 25/10/2026 11:40:43
[2026-10-25 11:40:43,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:40:43,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:40:43,775.775 INFO    ] No existing commands found in stream
[2026-10-25 11:40:48,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:40:48,803.803 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 11:40:52,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:40:52,540.540 INFO    ] Checking for system updates...
[2026-10-25 11:40:52,580.580 INFO    ] 200
[2026-10-25 11:40:52,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:52,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:40:52,638.638 INFO    ] No update needed
[2026-10-25 11:40:52,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 11:40:52,678.678 INFO    ] 200
[2026-10-25 11:40:52,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:40:52,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:40:52,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:40:52,774.774 INFO    ] No camera update needed
[2026-10-25 11:40:52,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:40:52,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:40:52,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:40:52,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:40:54,828.828 INFO    ] ================================================
[2026-10-25 11:40:54,843.843 INFO    ] Launching Daemon at Sun Oct 25 11:40:54 IST 2026
[2026-10-25 11:40:54,854.854 INFO    ] ================================================
[2026-10-25 11:40:55,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:40:55
[2026-10-25 11:40:56,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:40:56,477.477 INFO    ] Initializing speech engine...
[2026-10-25 11:40:56,491.491 INFO    ] 2026-10-25 11:40:56
[2026-10-25 11:40:56,773.773 INFO    ] 2026-10-25 11:40:56
[2026-10-25 11:40:56,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:40:57,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:40:57,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:40:57,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:40:57,332.332 INFO    ] time= 25/10/2026 11:40:57
[2026-10-25 11:40:57,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:40:57,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:40:57,469.469 INFO    ] No existing commands found in stream
[2026-10-25 11:41:02,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:41:02,496.496 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 11:41:03,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:41:03,334.334 INFO    ] Checking for system updates...
[2026-10-25 11:41:03,377.377 INFO    ] 200
[2026-10-25 11:41:03,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:03,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:03,447.447 INFO    ] No update needed
[2026-10-25 11:41:03,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 11:41:03,486.486 INFO    ] 200
[2026-10-25 11:41:03,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:03,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:41:03,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:03,587.587 INFO    ] No camera update needed
[2026-10-25 11:41:03,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:41:03,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:41:03,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:41:03,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:41:05,642.642 INFO    ] ================================================
[2026-10-25 11:41:05,657.657 INFO    ] Launching Daemon at Sun Oct 25 11:41:05 IST 2026
[2026-10-25 11:41:05,669.669 INFO    ] ================================================
[2026-10-25 11:41:06,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:41:06
[2026-10-25 11:41:06,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:41:07,078.078 INFO    ] Initializing speech engine...
[2026-10-25 11:41:07,094.094 INFO    ] 2026-10-25 11:41:07
[2026-10-25 11:41:07,373.373 INFO    ] 2026-10-25 11:41:07
[2026-10-25 11:41:07,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:41:07,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:41:07,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:41:07,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:41:07,782.782 INFO    ] time= 25/10/2026 11:41:07
[2026-10-25 11:41:07,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:41:07,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:41:07,938.938 INFO    ] No existing commands found in stream
[2026-10-25 11:41:12,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:41:12,966.966 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 11:41:14,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:41:14,598.598 INFO    ] Checking for system updates...
[2026-10-25 11:41:14,635.635 INFO    ] 200
[2026-10-25 11:41:14,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:14,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:41:14,692.692 INFO    ] No update needed
[2026-10-25 11:41:14,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 11:41:14,729.729 INFO    ] 200
[2026-10-25 11:41:14,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:14,773.773 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:41:14,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:41:14,831.831 INFO    ] No camera update needed
[2026-10-25 11:41:14,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:41:14,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:41:14,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:41:14,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:41:16,886.886 INFO    ] ================================================
[2026-10-25 11:41:16,902.902 INFO    ] Launching Daemon at Sun Oct 25 11:41:16 IST 2026
[2026-10-25 11:41:16,913.913 INFO    ] ================================================
[2026-10-25 11:41:17,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:41:17
[2026-10-25 11:41:18,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:41:18,324.324 INFO    ] Initializing speech engine...
[2026-10-25 11:41:18,330.330 INFO    ] 2026-10-25 11:41:18
[2026-10-25 11:41:18,620.620 INFO    ] 2026-10-25 11:41:18
[2026-10-25 11:41:18,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:41:18,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:41:18,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:41:19,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:41:19,022.022 INFO    ] time= 25/10/2026 11:41:19
[2026-10-25 11:41:19,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:41:19,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:41:19,108.108 INFO    ] No existing commands found in stream
[2026-10-25 11:41:24,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:41:24,123.123 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 11:41:26,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:41:26,954.954 INFO    ] Checking for system updates...
[2026-10-25 11:41:26,998.998 INFO    ] 200
[2026-10-25 11:41:27,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:27,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:27,068.068 INFO    ] No update needed
[2026-10-25 11:41:27,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 11:41:27,104.104 INFO    ] 200
[2026-10-25 11:41:27,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:27,151.151 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:41:27,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:27,209.209 INFO    ] No camera update needed
[2026-10-25 11:41:27,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:41:27,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:41:27,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:41:27,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:41:29,263.263 INFO    ] ================================================
[2026-10-25 11:41:29,279.279 INFO    ] Launching Daemon at Sun Oct 25 11:41:29 IST 2026
[2026-10-25 11:41:29,289.289 INFO    ] ================================================
[2026-10-25 11:41:29,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:41:29
[2026-10-25 11:41:30,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:41:30,699.699 INFO    ] Initializing speech engine...
[2026-10-25 11:41:30,708.708 INFO    ] 2026-10-25 11:41:30
[2026-10-25 11:41:30,996.996 INFO    ] 2026-10-25 11:41:30
[2026-10-25 11:41:31,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:41:31,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:41:31,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:41:31,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:41:31,405.405 INFO    ] time= 25/10/2026 11:41:31
[2026-10-25 11:41:31,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:41:31,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:41:31,490.490 INFO    ] No existing commands found in stream
[2026-10-25 11:41:36,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:41:36,518.518 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 11:41:39,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:41:39,273.273 INFO    ] Checking for system updates...
[2026-10-25 11:41:39,308.308 INFO    ] 200
[2026-10-25 11:41:39,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:39,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:39,371.371 INFO    ] No update needed
[2026-10-25 11:41:39,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 11:41:39,411.411 INFO    ] 200
[2026-10-25 11:41:39,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:39,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:41:39,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:39,503.503 INFO    ] No camera update needed
[2026-10-25 11:41:39,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:41:39,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:41:39,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:41:39,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:41:41,559.559 INFO    ] ================================================
[2026-10-25 11:41:41,574.574 INFO    ] Launching Daemon at Sun Oct 25 11:41:41 IST 2026
[2026-10-25 11:41:41,585.585 INFO    ] ================================================
[2026-10-25 11:41:42,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:41:42
[2026-10-25 11:41:42,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:41:43,111.111 INFO    ] Initializing speech engine...
[2026-10-25 11:41:43,133.133 INFO    ] 2026-10-25 11:41:43
[2026-10-25 11:41:43,393.393 INFO    ] 2026-10-25 11:41:43
[2026-10-25 11:41:43,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:41:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:41:45,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:41:45,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:41:45,653.653 INFO    ] time= 25/10/2026 11:41:45
[2026-10-25 11:41:45,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:41:45,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:41:45,741.741 INFO    ] No existing commands found in stream
[2026-10-25 11:41:50,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:41:50,755.755 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 11:41:51,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:41:51,921.921 INFO    ] Checking for system updates...
[2026-10-25 11:41:51,957.957 INFO    ] 200
[2026-10-25 11:41:51,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:52,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:52,016.016 INFO    ] No update needed
[2026-10-25 11:41:52,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 11:41:52,053.053 INFO    ] 200
[2026-10-25 11:41:52,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:41:52,096.096 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:41:52,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:41:52,161.161 INFO    ] No camera update needed
[2026-10-25 11:41:52,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:41:52,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:41:52,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:41:52,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:41:54,217.217 INFO    ] ================================================
[2026-10-25 11:41:54,233.233 INFO    ] Launching Daemon at Sun Oct 25 11:41:54 IST 2026
[2026-10-25 11:41:54,245.245 INFO    ] ================================================
[2026-10-25 11:41:54,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:41:54
[2026-10-25 11:41:55,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:41:55,824.824 INFO    ] Initializing speech engine...
[2026-10-25 11:41:55,835.835 INFO    ] 2026-10-25 11:41:55
[2026-10-25 11:41:56,114.114 INFO    ] 2026-10-25 11:41:56
[2026-10-25 11:41:56,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:41:56,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:41:56,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:41:56,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:41:56,577.577 INFO    ] time= 25/10/2026 11:41:56
[2026-10-25 11:41:56,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:41:56,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:41:56,728.728 INFO    ] No existing commands found in stream
[2026-10-25 11:42:01,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:42:01,747.747 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 11:42:03,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:42:03,644.644 INFO    ] Checking for system updates...
[2026-10-25 11:42:03,689.689 INFO    ] 200
[2026-10-25 11:42:03,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:03,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:42:03,758.758 INFO    ] No update needed
[2026-10-25 11:42:03,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 11:42:03,811.811 INFO    ] 200
[2026-10-25 11:42:03,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:03,870.870 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:42:03,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:42:03,931.931 INFO    ] No camera update needed
[2026-10-25 11:42:03,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:42:03,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:42:03,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:42:03,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:42:05,986.986 INFO    ] ================================================
[2026-10-25 11:42:06,002.002 INFO    ] Launching Daemon at Sun Oct 25 11:42:05 IST 2026
[2026-10-25 11:42:06,014.014 INFO    ] ================================================
[2026-10-25 11:42:06,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:42:06
[2026-10-25 11:42:07,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:42:07,474.474 INFO    ] Initializing speech engine...
[2026-10-25 11:42:07,480.480 INFO    ] 2026-10-25 11:42:07
[2026-10-25 11:42:07,742.742 INFO    ] 2026-10-25 11:42:07
[2026-10-25 11:42:07,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:42:08,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:42:08,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:42:08,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:42:08,231.231 INFO    ] time= 25/10/2026 11:42:08
[2026-10-25 11:42:08,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:42:08,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:42:08,425.425 INFO    ] No existing commands found in stream
[2026-10-25 11:42:13,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:42:13,454.454 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 11:42:16,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:42:16,793.793 INFO    ] Checking for system updates...
[2026-10-25 11:42:16,833.833 INFO    ] 200
[2026-10-25 11:42:16,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:16,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:16,899.899 INFO    ] No update needed
[2026-10-25 11:42:16,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 11:42:16,936.936 INFO    ] 200
[2026-10-25 11:42:16,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:16,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:42:17,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:17,134.134 INFO    ] No camera update needed
[2026-10-25 11:42:17,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:42:17,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:42:17,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:42:17,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:42:19,191.191 INFO    ] ================================================
[2026-10-25 11:42:19,207.207 INFO    ] Launching Daemon at Sun Oct 25 11:42:19 IST 2026
[2026-10-25 11:42:19,218.218 INFO    ] ================================================
[2026-10-25 11:42:19,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:42:19
[2026-10-25 11:42:20,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:42:20,851.851 INFO    ] Initializing speech engine...
[2026-10-25 11:42:20,864.864 INFO    ] 2026-10-25 11:42:20
[2026-10-25 11:42:21,156.156 INFO    ] 2026-10-25 11:42:21
[2026-10-25 11:42:21,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:42:21,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:42:21,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:42:21,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:42:21,698.698 INFO    ] time= 25/10/2026 11:42:21
[2026-10-25 11:42:21,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:42:21,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:42:21,853.853 INFO    ] No existing commands found in stream
[2026-10-25 11:42:26,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:42:26,875.875 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 11:42:28,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:42:28,420.420 INFO    ] Checking for system updates...
[2026-10-25 11:42:28,457.457 INFO    ] 200
[2026-10-25 11:42:28,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:28,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:42:28,518.518 INFO    ] No update needed
[2026-10-25 11:42:28,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 11:42:28,555.555 INFO    ] 200
[2026-10-25 11:42:28,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:28,600.600 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:42:28,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:42:28,649.649 INFO    ] No camera update needed
[2026-10-25 11:42:28,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:42:28,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:42:28,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:42:28,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:42:30,705.705 INFO    ] ================================================
[2026-10-25 11:42:30,720.720 INFO    ] Launching Daemon at Sun Oct 25 11:42:30 IST 2026
[2026-10-25 11:42:30,731.731 INFO    ] ================================================
[2026-10-25 11:42:31,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:42:31
[2026-10-25 11:42:31,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:42:32,197.197 INFO    ] Initializing speech engine...
[2026-10-25 11:42:32,205.205 INFO    ] 2026-10-25 11:42:32
[2026-10-25 11:42:32,502.502 INFO    ] 2026-10-25 11:42:32
[2026-10-25 11:42:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:42:32,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:42:32,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:42:32,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:42:33,044.044 INFO    ] time= 25/10/2026 11:42:33
[2026-10-25 11:42:33,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:42:33,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:42:33,199.199 INFO    ] No existing commands found in stream
[2026-10-25 11:42:38,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:42:38,233.233 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 11:42:39,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:42:39,881.881 INFO    ] Checking for system updates...
[2026-10-25 11:42:39,918.918 INFO    ] 200
[2026-10-25 11:42:39,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:39,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:39,984.984 INFO    ] No update needed
[2026-10-25 11:42:39,986.986 INFO    ] Checking for camera pi updates...
[2026-10-25 11:42:40,020.020 INFO    ] 200
[2026-10-25 11:42:40,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:40,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:42:40,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:40,117.117 INFO    ] No camera update needed
[2026-10-25 11:42:40,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:42:40,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:42:40,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:42:40,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:42:42,173.173 INFO    ] ================================================
[2026-10-25 11:42:42,188.188 INFO    ] Launching Daemon at Sun Oct 25 11:42:42 IST 2026
[2026-10-25 11:42:42,200.200 INFO    ] ================================================
[2026-10-25 11:42:42,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:42:42
[2026-10-25 11:42:43,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:42:43,649.649 INFO    ] Initializing speech engine...
[2026-10-25 11:42:43,658.658 INFO    ] 2026-10-25 11:42:43
[2026-10-25 11:42:43,918.918 INFO    ] 2026-10-25 11:42:43
[2026-10-25 11:42:43,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:42:46,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:42:46,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:42:47,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:42:47,216.216 INFO    ] time= 25/10/2026 11:42:47
[2026-10-25 11:42:47,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:42:47,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:42:47,273.273 INFO    ] No existing commands found in stream
[2026-10-25 11:42:52,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:42:52,285.285 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 11:42:54,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:42:54,945.945 INFO    ] Checking for system updates...
[2026-10-25 11:42:54,992.992 INFO    ] 200
[2026-10-25 11:42:54,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:55,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:55,099.099 INFO    ] No update needed
[2026-10-25 11:42:55,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 11:42:55,141.141 INFO    ] 200
[2026-10-25 11:42:55,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:42:55,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:42:55,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:42:55,249.249 INFO    ] No camera update needed
[2026-10-25 11:42:55,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:42:55,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:42:55,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:42:55,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:42:57,307.307 INFO    ] ================================================
[2026-10-25 11:42:57,323.323 INFO    ] Launching Daemon at Sun Oct 25 11:42:57 IST 2026
[2026-10-25 11:42:57,333.333 INFO    ] ================================================
[2026-10-25 11:42:57,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:42:57
[2026-10-25 11:42:58,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:42:58,749.749 INFO    ] Initializing speech engine...
[2026-10-25 11:42:58,772.772 INFO    ] 2026-10-25 11:42:58
[2026-10-25 11:42:59,027.027 INFO    ] 2026-10-25 11:42:59
[2026-10-25 11:42:59,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:42:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:42:59,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:42:59,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:42:59,475.475 INFO    ] time= 25/10/2026 11:42:59
[2026-10-25 11:42:59,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:42:59,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:42:59,657.657 INFO    ] No existing commands found in stream
[2026-10-25 11:43:04,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:43:04,672.672 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 11:43:05,390.390 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:43:05,393.393 INFO    ] Checking for system updates...
[2026-10-25 11:43:05,430.430 INFO    ] 200
[2026-10-25 11:43:05,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:05,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:43:05,495.495 INFO    ] No update needed
[2026-10-25 11:43:05,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 11:43:05,534.534 INFO    ] 200
[2026-10-25 11:43:05,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:05,578.578 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:43:05,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:43:05,630.630 INFO    ] No camera update needed
[2026-10-25 11:43:05,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:43:05,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:43:05,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:43:05,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:43:07,688.688 INFO    ] ================================================
[2026-10-25 11:43:07,703.703 INFO    ] Launching Daemon at Sun Oct 25 11:43:07 IST 2026
[2026-10-25 11:43:07,714.714 INFO    ] ================================================
[2026-10-25 11:43:08,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:43:08
[2026-10-25 11:43:09,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:43:09,325.325 INFO    ] Initializing speech engine...
[2026-10-25 11:43:09,334.334 INFO    ] 2026-10-25 11:43:09
[2026-10-25 11:43:09,608.608 INFO    ] 2026-10-25 11:43:09
[2026-10-25 11:43:09,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:43:09,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:43:09,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:43:10,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:43:10,082.082 INFO    ] time= 25/10/2026 11:43:10
[2026-10-25 11:43:10,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:43:10,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:43:10,243.243 INFO    ] No existing commands found in stream
[2026-10-25 11:43:15,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:43:15,278.278 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 11:43:18,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:43:18,569.569 INFO    ] Checking for system updates...
[2026-10-25 11:43:18,606.606 INFO    ] 200
[2026-10-25 11:43:18,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:18,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:18,674.674 INFO    ] No update needed
[2026-10-25 11:43:18,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 11:43:18,711.711 INFO    ] 200
[2026-10-25 11:43:18,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:18,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:43:18,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:18,809.809 INFO    ] No camera update needed
[2026-10-25 11:43:18,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:43:18,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:43:18,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:43:18,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:43:20,871.871 INFO    ] ================================================
[2026-10-25 11:43:20,886.886 INFO    ] Launching Daemon at Sun Oct 25 11:43:20 IST 2026
[2026-10-25 11:43:20,896.896 INFO    ] ================================================
[2026-10-25 11:43:21,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:43:21
[2026-10-25 11:43:22,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:43:22,335.335 INFO    ] Initializing speech engine...
[2026-10-25 11:43:22,352.352 INFO    ] 2026-10-25 11:43:22
[2026-10-25 11:43:22,639.639 INFO    ] 2026-10-25 11:43:22
[2026-10-25 11:43:22,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:43:22,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:43:22,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:43:23,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:43:23,059.059 INFO    ] time= 25/10/2026 11:43:23
[2026-10-25 11:43:23,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:43:23,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:43:23,229.229 INFO    ] No existing commands found in stream
[2026-10-25 11:43:28,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:43:28,262.262 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 11:43:32,535.535 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:43:32,538.538 INFO    ] Checking for system updates...
[2026-10-25 11:43:32,584.584 INFO    ] 200
[2026-10-25 11:43:32,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:32,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:32,662.662 INFO    ] No update needed
[2026-10-25 11:43:32,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 11:43:32,702.702 INFO    ] 200
[2026-10-25 11:43:32,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:32,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:43:32,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:32,785.785 INFO    ] No camera update needed
[2026-10-25 11:43:32,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:43:32,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:43:32,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:43:32,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:43:34,844.844 INFO    ] ================================================
[2026-10-25 11:43:34,859.859 INFO    ] Launching Daemon at Sun Oct 25 11:43:34 IST 2026
[2026-10-25 11:43:34,871.871 INFO    ] ================================================
[2026-10-25 11:43:35,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:43:35
[2026-10-25 11:43:36,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:43:36,301.301 INFO    ] Initializing speech engine...
[2026-10-25 11:43:36,307.307 INFO    ] 2026-10-25 11:43:36
[2026-10-25 11:43:36,598.598 INFO    ] 2026-10-25 11:43:36
[2026-10-25 11:43:36,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:43:36,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:43:36,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:43:36,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:43:37,015.015 INFO    ] time= 25/10/2026 11:43:37
[2026-10-25 11:43:37,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:43:37,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:43:37,099.099 INFO    ] No existing commands found in stream
[2026-10-25 11:43:42,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:43:42,121.121 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 11:43:44,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:43:44,612.612 INFO    ] Checking for system updates...
[2026-10-25 11:43:44,648.648 INFO    ] 200
[2026-10-25 11:43:44,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:44,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:44,707.707 INFO    ] No update needed
[2026-10-25 11:43:44,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 11:43:44,748.748 INFO    ] 200
[2026-10-25 11:43:44,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:44,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:43:44,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:43:44,847.847 INFO    ] No camera update needed
[2026-10-25 11:43:44,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:43:44,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:43:44,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:43:44,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:43:46,903.903 INFO    ] ================================================
[2026-10-25 11:43:46,917.917 INFO    ] Launching Daemon at Sun Oct 25 11:43:46 IST 2026
[2026-10-25 11:43:46,928.928 INFO    ] ================================================
[2026-10-25 11:43:47,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:43:47
[2026-10-25 11:43:48,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:43:48,548.548 INFO    ] Initializing speech engine...
[2026-10-25 11:43:48,556.556 INFO    ] 2026-10-25 11:43:48
[2026-10-25 11:43:48,842.842 INFO    ] 2026-10-25 11:43:48
[2026-10-25 11:43:48,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:43:49,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:43:49,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:43:49,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:43:49,607.607 INFO    ] time= 25/10/2026 11:43:49
[2026-10-25 11:43:49,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:43:49,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:43:49,761.761 INFO    ] No existing commands found in stream
[2026-10-25 11:43:54,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:43:54,800.800 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 11:43:55,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:43:55,490.490 INFO    ] Checking for system updates...
[2026-10-25 11:43:55,531.531 INFO    ] 200
[2026-10-25 11:43:55,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:55,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:43:55,591.591 INFO    ] No update needed
[2026-10-25 11:43:55,594.594 INFO    ] Checking for camera pi updates...
[2026-10-25 11:43:55,628.628 INFO    ] 200
[2026-10-25 11:43:55,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:43:55,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:43:55,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:43:55,727.727 INFO    ] No camera update needed
[2026-10-25 11:43:55,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:43:55,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:43:55,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:43:55,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:43:57,789.789 INFO    ] ================================================
[2026-10-25 11:43:57,804.804 INFO    ] Launching Daemon at Sun Oct 25 11:43:57 IST 2026
[2026-10-25 11:43:57,814.814 INFO    ] ================================================
[2026-10-25 11:43:58,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:43:58
[2026-10-25 11:43:58,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:43:59,265.265 INFO    ] Initializing speech engine...
[2026-10-25 11:43:59,274.274 INFO    ] 2026-10-25 11:43:59
[2026-10-25 11:43:59,536.536 INFO    ] 2026-10-25 11:43:59
[2026-10-25 11:43:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:43:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:43:59,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:43:59,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:44:00,011.011 INFO    ] time= 25/10/2026 11:43:59
[2026-10-25 11:44:00,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:44:00,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:44:00,213.213 INFO    ] No existing commands found in stream
[2026-10-25 11:44:05,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:44:05,236.236 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 11:44:08,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:44:09,001.001 INFO    ] Checking for system updates...
[2026-10-25 11:44:09,037.037 INFO    ] 200
[2026-10-25 11:44:09,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:09,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:09,102.102 INFO    ] No update needed
[2026-10-25 11:44:09,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 11:44:09,138.138 INFO    ] 200
[2026-10-25 11:44:09,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:09,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:44:09,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:09,247.247 INFO    ] No camera update needed
[2026-10-25 11:44:09,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:44:09,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:44:09,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:44:09,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:44:11,303.303 INFO    ] ================================================
[2026-10-25 11:44:11,318.318 INFO    ] Launching Daemon at Sun Oct 25 11:44:11 IST 2026
[2026-10-25 11:44:11,329.329 INFO    ] ================================================
[2026-10-25 11:44:11,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:44:11
[2026-10-25 11:44:12,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:44:12,775.775 INFO    ] Initializing speech engine...
[2026-10-25 11:44:12,796.796 INFO    ] 2026-10-25 11:44:12
[2026-10-25 11:44:13,079.079 INFO    ] 2026-10-25 11:44:13
[2026-10-25 11:44:13,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:44:13,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:44:13,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:44:13,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:44:13,456.456 INFO    ] time= 25/10/2026 11:44:13
[2026-10-25 11:44:13,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:44:13,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:44:13,581.581 INFO    ] No existing commands found in stream
[2026-10-25 11:44:18,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:44:18,596.596 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 11:44:20,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:44:20,189.189 INFO    ] Checking for system updates...
[2026-10-25 11:44:20,229.229 INFO    ] 200
[2026-10-25 11:44:20,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:20,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:20,288.288 INFO    ] No update needed
[2026-10-25 11:44:20,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 11:44:20,324.324 INFO    ] 200
[2026-10-25 11:44:20,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:20,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:44:20,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:20,523.523 INFO    ] No camera update needed
[2026-10-25 11:44:20,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:44:20,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:44:20,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:44:20,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:44:22,581.581 INFO    ] ================================================
[2026-10-25 11:44:22,596.596 INFO    ] Launching Daemon at Sun Oct 25 11:44:22 IST 2026
[2026-10-25 11:44:22,607.607 INFO    ] ================================================
[2026-10-25 11:44:23,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:44:23
[2026-10-25 11:44:23,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:44:24,008.008 INFO    ] Initializing speech engine...
[2026-10-25 11:44:24,020.020 INFO    ] 2026-10-25 11:44:24
[2026-10-25 11:44:24,286.286 INFO    ] 2026-10-25 11:44:24
[2026-10-25 11:44:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:44:24,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:44:24,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:44:24,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:44:24,762.762 INFO    ] time= 25/10/2026 11:44:24
[2026-10-25 11:44:24,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:44:24,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:44:24,983.983 INFO    ] No existing commands found in stream
[2026-10-25 11:44:30,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:44:30,003.003 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 11:44:30,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:44:30,821.821 INFO    ] Checking for system updates...
[2026-10-25 11:44:30,857.857 INFO    ] 200
[2026-10-25 11:44:30,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:30,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:30,923.923 INFO    ] No update needed
[2026-10-25 11:44:30,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 11:44:30,959.959 INFO    ] 200
[2026-10-25 11:44:30,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:31,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:44:31,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:31,054.054 INFO    ] No camera update needed
[2026-10-25 11:44:31,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:44:31,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:44:31,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:44:31,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:44:33,110.110 INFO    ] ================================================
[2026-10-25 11:44:33,125.125 INFO    ] Launching Daemon at Sun Oct 25 11:44:33 IST 2026
[2026-10-25 11:44:33,136.136 INFO    ] ================================================
[2026-10-25 11:44:33,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:44:33
[2026-10-25 11:44:34,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:44:34,547.547 INFO    ] Initializing speech engine...
[2026-10-25 11:44:34,561.561 INFO    ] 2026-10-25 11:44:34
[2026-10-25 11:44:34,846.846 INFO    ] 2026-10-25 11:44:34
[2026-10-25 11:44:34,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:44:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:44:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:44:35,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:44:35,749.749 INFO    ] time= 25/10/2026 11:44:35
[2026-10-25 11:44:35,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:44:35,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:44:35,940.940 INFO    ] No existing commands found in stream
[2026-10-25 11:44:40,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:44:40,966.966 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 11:44:44,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:44:44,284.284 INFO    ] Checking for system updates...
[2026-10-25 11:44:44,320.320 INFO    ] 200
[2026-10-25 11:44:44,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:44,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:44:44,382.382 INFO    ] No update needed
[2026-10-25 11:44:44,385.385 INFO    ] Checking for camera pi updates...
[2026-10-25 11:44:44,423.423 INFO    ] 200
[2026-10-25 11:44:44,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:44,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:44:44,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:44:44,516.516 INFO    ] No camera update needed
[2026-10-25 11:44:44,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:44:44,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:44:44,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:44:44,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:44:46,572.572 INFO    ] ================================================
[2026-10-25 11:44:46,586.586 INFO    ] Launching Daemon at Sun Oct 25 11:44:46 IST 2026
[2026-10-25 11:44:46,597.597 INFO    ] ================================================
[2026-10-25 11:44:47,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:44:47
[2026-10-25 11:44:47,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:44:48,214.214 INFO    ] Initializing speech engine...
[2026-10-25 11:44:48,222.222 INFO    ] 2026-10-25 11:44:48
[2026-10-25 11:44:48,540.540 INFO    ] 2026-10-25 11:44:48
[2026-10-25 11:44:48,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:44:51,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:44:51,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:44:51,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:44:51,306.306 INFO    ] time= 25/10/2026 11:44:51
[2026-10-25 11:44:51,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:44:51,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:44:51,407.407 INFO    ] No existing commands found in stream
[2026-10-25 11:44:56,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:44:56,419.419 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 11:44:57,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:44:57,939.939 INFO    ] Checking for system updates...
[2026-10-25 11:44:57,975.975 INFO    ] 200
[2026-10-25 11:44:57,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:58,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:58,034.034 INFO    ] No update needed
[2026-10-25 11:44:58,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 11:44:58,087.087 INFO    ] 200
[2026-10-25 11:44:58,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:44:58,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:44:58,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:44:58,183.183 INFO    ] No camera update needed
[2026-10-25 11:44:58,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:44:58,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:44:58,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:44:58,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:45:00,238.238 INFO    ] ================================================
[2026-10-25 11:45:00,253.253 INFO    ] Launching Daemon at Sun Oct 25 11:45:00 IST 2026
[2026-10-25 11:45:00,264.264 INFO    ] ================================================
[2026-10-25 11:45:00,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:45:00
[2026-10-25 11:45:01,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:45:02,379.379 INFO    ] Initializing speech engine...
[2026-10-25 11:45:02,388.388 INFO    ] 2026-10-25 11:45:02
[2026-10-25 11:45:02,728.728 INFO    ] 2026-10-25 11:45:02
[2026-10-25 11:45:02,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:45:03,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:45:03,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:45:03,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:45:03,266.266 INFO    ] time= 25/10/2026 11:45:03
[2026-10-25 11:45:03,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:45:03,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:45:03,410.410 INFO    ] No existing commands found in stream
[2026-10-25 11:45:08,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:45:08,435.435 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 11:45:11,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:45:11,540.540 INFO    ] Checking for system updates...
[2026-10-25 11:45:11,575.575 INFO    ] 200
[2026-10-25 11:45:11,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:11,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:45:11,634.634 INFO    ] No update needed
[2026-10-25 11:45:11,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 11:45:11,673.673 INFO    ] 200
[2026-10-25 11:45:11,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:11,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:45:11,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:45:11,765.765 INFO    ] No camera update needed
[2026-10-25 11:45:11,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:45:11,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:45:11,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:45:11,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:45:13,819.819 INFO    ] ================================================
[2026-10-25 11:45:13,834.834 INFO    ] Launching Daemon at Sun Oct 25 11:45:13 IST 2026
[2026-10-25 11:45:13,845.845 INFO    ] ================================================
[2026-10-25 11:45:14,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:45:14
[2026-10-25 11:45:15,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:45:15,396.396 INFO    ] Initializing speech engine...
[2026-10-25 11:45:15,403.403 INFO    ] 2026-10-25 11:45:15
[2026-10-25 11:45:15,719.719 INFO    ] 2026-10-25 11:45:15
[2026-10-25 11:45:15,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:45:15,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:45:15,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:45:16,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:45:16,235.235 INFO    ] time= 25/10/2026 11:45:16
[2026-10-25 11:45:16,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:45:16,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:45:16,373.373 INFO    ] No existing commands found in stream
[2026-10-25 11:45:21,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:45:21,402.402 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 11:45:23,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:45:23,521.521 INFO    ] Checking for system updates...
[2026-10-25 11:45:23,561.561 INFO    ] 200
[2026-10-25 11:45:23,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:23,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:23,618.618 INFO    ] No update needed
[2026-10-25 11:45:23,621.621 INFO    ] Checking for camera pi updates...
[2026-10-25 11:45:23,655.655 INFO    ] 200
[2026-10-25 11:45:23,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:23,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:45:23,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:23,764.764 INFO    ] No camera update needed
[2026-10-25 11:45:23,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:45:23,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:45:23,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:45:23,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:45:25,818.818 INFO    ] ================================================
[2026-10-25 11:45:25,834.834 INFO    ] Launching Daemon at Sun Oct 25 11:45:25 IST 2026
[2026-10-25 11:45:25,844.844 INFO    ] ================================================
[2026-10-25 11:45:26,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:45:26
[2026-10-25 11:45:27,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:45:27,429.429 INFO    ] Initializing speech engine...
[2026-10-25 11:45:27,442.442 INFO    ] 2026-10-25 11:45:27
[2026-10-25 11:45:27,727.727 INFO    ] 2026-10-25 11:45:27
[2026-10-25 11:45:27,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:45:28,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:45:28,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:45:28,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:45:28,256.256 INFO    ] time= 25/10/2026 11:45:28
[2026-10-25 11:45:28,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:45:28,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:45:28,416.416 INFO    ] No existing commands found in stream
[2026-10-25 11:45:33,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:45:33,438.438 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 11:45:36,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:45:36,116.116 INFO    ] Checking for system updates...
[2026-10-25 11:45:36,156.156 INFO    ] 200
[2026-10-25 11:45:36,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:36,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:36,224.224 INFO    ] No update needed
[2026-10-25 11:45:36,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 11:45:36,262.262 INFO    ] 200
[2026-10-25 11:45:36,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:36,306.306 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:45:36,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:36,366.366 INFO    ] No camera update needed
[2026-10-25 11:45:36,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:45:36,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:45:36,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:45:36,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:45:38,421.421 INFO    ] ================================================
[2026-10-25 11:45:38,437.437 INFO    ] Launching Daemon at Sun Oct 25 11:45:38 IST 2026
[2026-10-25 11:45:38,448.448 INFO    ] ================================================
[2026-10-25 11:45:39,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:45:39
[2026-10-25 11:45:39,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:45:39,940.940 INFO    ] Initializing speech engine...
[2026-10-25 11:45:39,948.948 INFO    ] 2026-10-25 11:45:39
[2026-10-25 11:45:40,232.232 INFO    ] 2026-10-25 11:45:40
[2026-10-25 11:45:40,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:45:40,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:45:40,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:45:40,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:45:40,784.784 INFO    ] time= 25/10/2026 11:45:40
[2026-10-25 11:45:40,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:45:40,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:45:40,942.942 INFO    ] No existing commands found in stream
[2026-10-25 11:45:45,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:45:45,957.957 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 11:45:48,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:45:48,709.709 INFO    ] Checking for system updates...
[2026-10-25 11:45:48,744.744 INFO    ] 200
[2026-10-25 11:45:48,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:48,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:48,808.808 INFO    ] No update needed
[2026-10-25 11:45:48,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 11:45:48,844.844 INFO    ] 200
[2026-10-25 11:45:48,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:45:48,888.888 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:45:48,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:45:48,937.937 INFO    ] No camera update needed
[2026-10-25 11:45:48,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:45:48,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:45:48,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:45:48,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:45:50,992.992 INFO    ] ================================================
[2026-10-25 11:45:51,007.007 INFO    ] Launching Daemon at Sun Oct 25 11:45:51 IST 2026
[2026-10-25 11:45:51,018.018 INFO    ] ================================================
[2026-10-25 11:45:51,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:45:51
[2026-10-25 11:45:52,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:45:52,600.600 INFO    ] Initializing speech engine...
[2026-10-25 11:45:52,609.609 INFO    ] 2026-10-25 11:45:52
[2026-10-25 11:45:52,876.876 INFO    ] 2026-10-25 11:45:52
[2026-10-25 11:45:52,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:45:53,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:45:53,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:45:53,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:45:53,351.351 INFO    ] time= 25/10/2026 11:45:53
[2026-10-25 11:45:53,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:45:53,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:45:53,546.546 INFO    ] No existing commands found in stream
[2026-10-25 11:45:58,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:45:58,575.575 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 11:46:02,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:46:02,114.114 INFO    ] Checking for system updates...
[2026-10-25 11:46:02,166.166 INFO    ] 200
[2026-10-25 11:46:02,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:02,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:46:02,266.266 INFO    ] No update needed
[2026-10-25 11:46:02,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 11:46:02,332.332 INFO    ] 200
[2026-10-25 11:46:02,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:02,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:46:02,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:46:02,480.480 INFO    ] No camera update needed
[2026-10-25 11:46:02,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:46:02,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:46:02,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:46:02,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:46:04,550.550 INFO    ] ================================================
[2026-10-25 11:46:04,565.565 INFO    ] Launching Daemon at Sun Oct 25 11:46:04 IST 2026
[2026-10-25 11:46:04,577.577 INFO    ] ================================================
[2026-10-25 11:46:05,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:46:05
[2026-10-25 11:46:05,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:46:06,143.143 INFO    ] Initializing speech engine...
[2026-10-25 11:46:06,149.149 INFO    ] 2026-10-25 11:46:06
[2026-10-25 11:46:06,449.449 INFO    ] 2026-10-25 11:46:06
[2026-10-25 11:46:06,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:46:06,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:46:06,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:46:06,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:46:06,954.954 INFO    ] time= 25/10/2026 11:46:06
[2026-10-25 11:46:06,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:46:06,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:46:07,092.092 INFO    ] No existing commands found in stream
[2026-10-25 11:46:12,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:46:12,117.117 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 11:46:12,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:46:12,818.818 INFO    ] Checking for system updates...
[2026-10-25 11:46:12,858.858 INFO    ] 200
[2026-10-25 11:46:12,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:12,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:46:12,921.921 INFO    ] No update needed
[2026-10-25 11:46:12,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 11:46:12,959.959 INFO    ] 200
[2026-10-25 11:46:12,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:13,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:46:13,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:46:13,063.063 INFO    ] No camera update needed
[2026-10-25 11:46:13,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:46:13,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:46:13,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:46:13,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:46:15,117.117 INFO    ] ================================================
[2026-10-25 11:46:15,132.132 INFO    ] Launching Daemon at Sun Oct 25 11:46:15 IST 2026
[2026-10-25 11:46:15,144.144 INFO    ] ================================================
[2026-10-25 11:46:15,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:46:15
[2026-10-25 11:46:16,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:46:16,592.592 INFO    ] Initializing speech engine...
[2026-10-25 11:46:16,598.598 INFO    ] 2026-10-25 11:46:16
[2026-10-25 11:46:16,859.859 INFO    ] 2026-10-25 11:46:16
[2026-10-25 11:46:16,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:46:17,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:46:17,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:46:17,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:46:17,259.259 INFO    ] time= 25/10/2026 11:46:17
[2026-10-25 11:46:17,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:46:17,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:46:17,431.431 INFO    ] No existing commands found in stream
[2026-10-25 11:46:22,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:46:22,454.454 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 11:46:23,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:46:23,903.903 INFO    ] Checking for system updates...
[2026-10-25 11:46:23,943.943 INFO    ] 200
[2026-10-25 11:46:23,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:24,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:24,006.006 INFO    ] No update needed
[2026-10-25 11:46:24,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 11:46:24,043.043 INFO    ] 200
[2026-10-25 11:46:24,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:24,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:46:24,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:24,244.244 INFO    ] No camera update needed
[2026-10-25 11:46:24,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:46:24,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:46:24,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:46:24,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:46:26,301.301 INFO    ] ================================================
[2026-10-25 11:46:26,316.316 INFO    ] Launching Daemon at Sun Oct 25 11:46:26 IST 2026
[2026-10-25 11:46:26,327.327 INFO    ] ================================================
[2026-10-25 11:46:26,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:46:26
[2026-10-25 11:46:27,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:46:27,727.727 INFO    ] Initializing speech engine...
[2026-10-25 11:46:27,735.735 INFO    ] 2026-10-25 11:46:27
[2026-10-25 11:46:28,022.022 INFO    ] 2026-10-25 11:46:28
[2026-10-25 11:46:28,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:46:28,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:46:28,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:46:28,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:46:28,423.423 INFO    ] time= 25/10/2026 11:46:28
[2026-10-25 11:46:28,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:46:28,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:46:28,584.584 INFO    ] No existing commands found in stream
[2026-10-25 11:46:33,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:46:33,612.612 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 11:46:36,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:46:36,787.787 INFO    ] Checking for system updates...
[2026-10-25 11:46:36,825.825 INFO    ] 200
[2026-10-25 11:46:36,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:36,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:36,884.884 INFO    ] No update needed
[2026-10-25 11:46:36,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 11:46:36,921.921 INFO    ] 200
[2026-10-25 11:46:36,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:36,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:46:37,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:37,014.014 INFO    ] No camera update needed
[2026-10-25 11:46:37,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:46:37,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:46:37,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:46:37,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:46:39,068.068 INFO    ] ================================================
[2026-10-25 11:46:39,084.084 INFO    ] Launching Daemon at Sun Oct 25 11:46:39 IST 2026
[2026-10-25 11:46:39,095.095 INFO    ] ================================================
[2026-10-25 11:46:39,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:46:39
[2026-10-25 11:46:40,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:46:40,662.662 INFO    ] Initializing speech engine...
[2026-10-25 11:46:40,672.672 INFO    ] 2026-10-25 11:46:40
[2026-10-25 11:46:40,938.938 INFO    ] 2026-10-25 11:46:40
[2026-10-25 11:46:40,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:46:41,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:46:41,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:46:41,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:46:41,418.418 INFO    ] time= 25/10/2026 11:46:41
[2026-10-25 11:46:41,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:46:41,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:46:41,627.627 INFO    ] No existing commands found in stream
[2026-10-25 11:46:46,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:46:46,653.653 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 11:46:50,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:46:50,724.724 INFO    ] Checking for system updates...
[2026-10-25 11:46:50,764.764 INFO    ] 200
[2026-10-25 11:46:50,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:50,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:50,823.823 INFO    ] No update needed
[2026-10-25 11:46:50,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 11:46:50,861.861 INFO    ] 200
[2026-10-25 11:46:50,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:46:50,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:46:50,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:46:50,956.956 INFO    ] No camera update needed
[2026-10-25 11:46:50,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:46:50,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:46:50,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:46:50,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:46:53,013.013 INFO    ] ================================================
[2026-10-25 11:46:53,028.028 INFO    ] Launching Daemon at Sun Oct 25 11:46:53 IST 2026
[2026-10-25 11:46:53,039.039 INFO    ] ================================================
[2026-10-25 11:46:53,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:46:53
[2026-10-25 11:46:54,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:46:54,503.503 INFO    ] Initializing speech engine...
[2026-10-25 11:46:54,511.511 INFO    ] 2026-10-25 11:46:54
[2026-10-25 11:46:54,779.779 INFO    ] 2026-10-25 11:46:54
[2026-10-25 11:46:54,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:46:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:46:55,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:46:55,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:46:55,275.275 INFO    ] time= 25/10/2026 11:46:55
[2026-10-25 11:46:55,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:46:55,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:46:55,491.491 INFO    ] No existing commands found in stream
[2026-10-25 11:47:00,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:00,515.515 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 11:47:01,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:47:01,637.637 INFO    ] Checking for system updates...
[2026-10-25 11:47:01,679.679 INFO    ] 200
[2026-10-25 11:47:01,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:01,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:47:01,777.777 INFO    ] No update needed
[2026-10-25 11:47:01,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 11:47:01,836.836 INFO    ] 200
[2026-10-25 11:47:01,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:01,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:47:01,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:47:01,931.931 INFO    ] No camera update needed
[2026-10-25 11:47:01,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:47:01,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:47:01,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:47:01,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:47:03,993.993 INFO    ] ================================================
[2026-10-25 11:47:04,007.007 INFO    ] Launching Daemon at Sun Oct 25 11:47:04 IST 2026
[2026-10-25 11:47:04,018.018 INFO    ] ================================================
[2026-10-25 11:47:04,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:47:04
[2026-10-25 11:47:05,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:47:05,466.466 INFO    ] Initializing speech engine...
[2026-10-25 11:47:05,475.475 INFO    ] 2026-10-25 11:47:05
[2026-10-25 11:47:05,736.736 INFO    ] 2026-10-25 11:47:05
[2026-10-25 11:47:05,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:47:06,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:47:06,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:47:06,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:47:06,223.223 INFO    ] time= 25/10/2026 11:47:06
[2026-10-25 11:47:06,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:47:06,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:47:06,405.405 INFO    ] No existing commands found in stream
[2026-10-25 11:47:11,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:11,436.436 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 11:47:12,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:47:12,021.021 INFO    ] Checking for system updates...
[2026-10-25 11:47:12,057.057 INFO    ] 200
[2026-10-25 11:47:12,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:12,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:12,115.115 INFO    ] No update needed
[2026-10-25 11:47:12,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 11:47:12,153.153 INFO    ] 200
[2026-10-25 11:47:12,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:12,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:47:12,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:12,253.253 INFO    ] No camera update needed
[2026-10-25 11:47:12,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:47:12,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:47:12,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:47:12,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:47:14,309.309 INFO    ] ================================================
[2026-10-25 11:47:14,324.324 INFO    ] Launching Daemon at Sun Oct 25 11:47:14 IST 2026
[2026-10-25 11:47:14,335.335 INFO    ] ================================================
[2026-10-25 11:47:14,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:47:14
[2026-10-25 11:47:15,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:47:15,781.781 INFO    ] Initializing speech engine...
[2026-10-25 11:47:15,786.786 INFO    ] 2026-10-25 11:47:15
[2026-10-25 11:47:16,047.047 INFO    ] 2026-10-25 11:47:16
[2026-10-25 11:47:16,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:47:16,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:47:16,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:47:16,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:47:16,576.576 INFO    ] time= 25/10/2026 11:47:16
[2026-10-25 11:47:16,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:47:16,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:47:16,722.722 INFO    ] No existing commands found in stream
[2026-10-25 11:47:21,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:21,749.749 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 11:47:25,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:47:25,374.374 INFO    ] Checking for system updates...
[2026-10-25 11:47:25,412.412 INFO    ] 200
[2026-10-25 11:47:25,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:25,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:25,470.470 INFO    ] No update needed
[2026-10-25 11:47:25,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 11:47:25,507.507 INFO    ] 200
[2026-10-25 11:47:25,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:25,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:47:25,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:25,594.594 INFO    ] No camera update needed
[2026-10-25 11:47:25,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:47:25,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:47:25,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:47:25,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:47:27,650.650 INFO    ] ================================================
[2026-10-25 11:47:27,665.665 INFO    ] Launching Daemon at Sun Oct 25 11:47:27 IST 2026
[2026-10-25 11:47:27,675.675 INFO    ] ================================================
[2026-10-25 11:47:28,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:47:28
[2026-10-25 11:47:28,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:47:29,224.224 INFO    ] Initializing speech engine...
[2026-10-25 11:47:29,232.232 INFO    ] 2026-10-25 11:47:29
[2026-10-25 11:47:29,512.512 INFO    ] 2026-10-25 11:47:29
[2026-10-25 11:47:29,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:47:29,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:47:29,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:47:29,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:47:29,994.994 INFO    ] time= 25/10/2026 11:47:29
[2026-10-25 11:47:30,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:47:30,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:47:30,198.198 INFO    ] No existing commands found in stream
[2026-10-25 11:47:35,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:35,225.225 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 11:47:36,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:47:36,030.030 INFO    ] Checking for system updates...
[2026-10-25 11:47:36,070.070 INFO    ] 200
[2026-10-25 11:47:36,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:36,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:47:36,133.133 INFO    ] No update needed
[2026-10-25 11:47:36,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 11:47:36,169.169 INFO    ] 200
[2026-10-25 11:47:36,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:36,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:47:36,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:47:36,268.268 INFO    ] No camera update needed
[2026-10-25 11:47:36,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:47:36,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:47:36,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:47:36,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:47:38,322.322 INFO    ] ================================================
[2026-10-25 11:47:38,337.337 INFO    ] Launching Daemon at Sun Oct 25 11:47:38 IST 2026
[2026-10-25 11:47:38,347.347 INFO    ] ================================================
[2026-10-25 11:47:38,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:47:38
[2026-10-25 11:47:39,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:47:39,799.799 INFO    ] Initializing speech engine...
[2026-10-25 11:47:39,809.809 INFO    ] 2026-10-25 11:47:39
[2026-10-25 11:47:40,055.055 INFO    ] 2026-10-25 11:47:40
[2026-10-25 11:47:40,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:47:40,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:47:40,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:47:40,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:47:40,536.536 INFO    ] time= 25/10/2026 11:47:40
[2026-10-25 11:47:40,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:47:40,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:47:40,692.692 INFO    ] No existing commands found in stream
[2026-10-25 11:47:45,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:45,731.731 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 11:47:47,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:47:47,812.812 INFO    ] Checking for system updates...
[2026-10-25 11:47:47,848.848 INFO    ] 200
[2026-10-25 11:47:47,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:47,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:47,912.912 INFO    ] No update needed
[2026-10-25 11:47:47,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 11:47:47,952.952 INFO    ] 200
[2026-10-25 11:47:47,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:47:47,996.996 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:47:48,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:47:48,045.045 INFO    ] No camera update needed
[2026-10-25 11:47:48,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:47:48,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:47:48,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:47:48,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:47:50,104.104 INFO    ] ================================================
[2026-10-25 11:47:50,119.119 INFO    ] Launching Daemon at Sun Oct 25 11:47:50 IST 2026
[2026-10-25 11:47:50,129.129 INFO    ] ================================================
[2026-10-25 11:47:50,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:47:50
[2026-10-25 11:47:51,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:47:51,528.528 INFO    ] Initializing speech engine...
[2026-10-25 11:47:51,552.552 INFO    ] 2026-10-25 11:47:51
[2026-10-25 11:47:51,807.807 INFO    ] 2026-10-25 11:47:51
[2026-10-25 11:47:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:47:52,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:47:52,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:47:54,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:47:54,736.736 INFO    ] time= 25/10/2026 11:47:54
[2026-10-25 11:47:54,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:47:54,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:47:54,807.807 INFO    ] No existing commands found in stream
[2026-10-25 11:47:59,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:47:59,819.819 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 11:48:00,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:48:00,575.575 INFO    ] Checking for system updates...
[2026-10-25 11:48:00,613.613 INFO    ] 200
[2026-10-25 11:48:00,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:00,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:48:00,671.671 INFO    ] No update needed
[2026-10-25 11:48:00,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 11:48:00,707.707 INFO    ] 200
[2026-10-25 11:48:00,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:00,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:48:00,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:48:00,803.803 INFO    ] No camera update needed
[2026-10-25 11:48:00,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:48:00,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:48:00,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:48:00,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:48:02,865.865 INFO    ] ================================================
[2026-10-25 11:48:02,882.882 INFO    ] Launching Daemon at Sun Oct 25 11:48:02 IST 2026
[2026-10-25 11:48:02,895.895 INFO    ] ================================================
[2026-10-25 11:48:03,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:48:03
[2026-10-25 11:48:04,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:48:04,370.370 INFO    ] Initializing speech engine...
[2026-10-25 11:48:04,396.396 INFO    ] 2026-10-25 11:48:04
[2026-10-25 11:48:04,663.663 INFO    ] 2026-10-25 11:48:04
[2026-10-25 11:48:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:48:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:48:04,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:48:05,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:48:05,151.151 INFO    ] time= 25/10/2026 11:48:05
[2026-10-25 11:48:05,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:48:05,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:48:05,349.349 INFO    ] No existing commands found in stream
[2026-10-25 11:48:10,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:48:10,388.388 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 11:48:11,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:48:11,004.004 INFO    ] Checking for system updates...
[2026-10-25 11:48:11,043.043 INFO    ] 200
[2026-10-25 11:48:11,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:11,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:11,100.100 INFO    ] No update needed
[2026-10-25 11:48:11,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 11:48:11,144.144 INFO    ] 200
[2026-10-25 11:48:11,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:11,190.190 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:48:11,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:11,245.245 INFO    ] No camera update needed
[2026-10-25 11:48:11,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:48:11,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:48:11,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:48:11,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:48:13,300.300 INFO    ] ================================================
[2026-10-25 11:48:13,315.315 INFO    ] Launching Daemon at Sun Oct 25 11:48:13 IST 2026
[2026-10-25 11:48:13,325.325 INFO    ] ================================================
[2026-10-25 11:48:13,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:48:13
[2026-10-25 11:48:14,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:48:14,879.879 INFO    ] Initializing speech engine...
[2026-10-25 11:48:14,887.887 INFO    ] 2026-10-25 11:48:14
[2026-10-25 11:48:15,174.174 INFO    ] 2026-10-25 11:48:15
[2026-10-25 11:48:15,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:48:15,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:48:15,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:48:15,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:48:15,701.701 INFO    ] time= 25/10/2026 11:48:15
[2026-10-25 11:48:15,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:48:15,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:48:15,856.856 INFO    ] No existing commands found in stream
[2026-10-25 11:48:20,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:48:20,888.888 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 11:48:21,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:48:21,519.519 INFO    ] Checking for system updates...
[2026-10-25 11:48:21,559.559 INFO    ] 200
[2026-10-25 11:48:21,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:21,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:48:21,619.619 INFO    ] No update needed
[2026-10-25 11:48:21,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 11:48:21,659.659 INFO    ] 200
[2026-10-25 11:48:21,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:21,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:48:21,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:48:21,753.753 INFO    ] No camera update needed
[2026-10-25 11:48:21,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:48:21,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:48:21,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:48:21,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:48:23,810.810 INFO    ] ================================================
[2026-10-25 11:48:23,825.825 INFO    ] Launching Daemon at Sun Oct 25 11:48:23 IST 2026
[2026-10-25 11:48:23,836.836 INFO    ] ================================================
[2026-10-25 11:48:24,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:48:24
[2026-10-25 11:48:25,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:48:25,374.374 INFO    ] Initializing speech engine...
[2026-10-25 11:48:25,388.388 INFO    ] 2026-10-25 11:48:25
[2026-10-25 11:48:25,657.657 INFO    ] 2026-10-25 11:48:25
[2026-10-25 11:48:25,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:48:27,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:48:27,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:48:27,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:48:27,556.556 INFO    ] time= 25/10/2026 11:48:27
[2026-10-25 11:48:27,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:48:27,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:48:27,633.633 INFO    ] No existing commands found in stream
[2026-10-25 11:48:32,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:48:32,646.646 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 11:48:36,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:48:36,705.705 INFO    ] Checking for system updates...
[2026-10-25 11:48:36,741.741 INFO    ] 200
[2026-10-25 11:48:36,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:36,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:36,801.801 INFO    ] No update needed
[2026-10-25 11:48:36,803.803 INFO    ] Checking for camera pi updates...
[2026-10-25 11:48:36,840.840 INFO    ] 200
[2026-10-25 11:48:36,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:36,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:48:36,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:36,934.934 INFO    ] No camera update needed
[2026-10-25 11:48:36,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:48:36,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:48:36,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:48:36,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:48:38,991.991 INFO    ] ================================================
[2026-10-25 11:48:39,006.006 INFO    ] Launching Daemon at Sun Oct 25 11:48:39 IST 2026
[2026-10-25 11:48:39,016.016 INFO    ] ================================================
[2026-10-25 11:48:39,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:48:39
[2026-10-25 11:48:40,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:48:40,457.457 INFO    ] Initializing speech engine...
[2026-10-25 11:48:40,466.466 INFO    ] 2026-10-25 11:48:40
[2026-10-25 11:48:40,725.725 INFO    ] 2026-10-25 11:48:40
[2026-10-25 11:48:40,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:48:40,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:48:41,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:48:41,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:48:41,263.263 INFO    ] time= 25/10/2026 11:48:41
[2026-10-25 11:48:41,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:48:41,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:48:41,402.402 INFO    ] No existing commands found in stream
[2026-10-25 11:48:46,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:48:46,429.429 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 11:48:49,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:48:49,423.423 INFO    ] Checking for system updates...
[2026-10-25 11:48:49,462.462 INFO    ] 200
[2026-10-25 11:48:49,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:49,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:49,528.528 INFO    ] No update needed
[2026-10-25 11:48:49,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 11:48:49,570.570 INFO    ] 200
[2026-10-25 11:48:49,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:48:49,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:48:49,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:48:49,671.671 INFO    ] No camera update needed
[2026-10-25 11:48:49,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:48:49,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:48:49,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:48:49,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:48:51,732.732 INFO    ] ================================================
[2026-10-25 11:48:51,747.747 INFO    ] Launching Daemon at Sun Oct 25 11:48:51 IST 2026
[2026-10-25 11:48:51,757.757 INFO    ] ================================================
[2026-10-25 11:48:52,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:48:52
[2026-10-25 11:48:53,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:48:53,375.375 INFO    ] Initializing speech engine...
[2026-10-25 11:48:53,388.388 INFO    ] 2026-10-25 11:48:53
[2026-10-25 11:48:53,671.671 INFO    ] 2026-10-25 11:48:53
[2026-10-25 11:48:53,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:48:53,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:48:53,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:48:54,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:48:54,179.179 INFO    ] time= 25/10/2026 11:48:54
[2026-10-25 11:48:54,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:48:54,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:48:54,369.369 INFO    ] No existing commands found in stream
[2026-10-25 11:48:59,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:48:59,388.388 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 11:49:02,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:49:02,414.414 INFO    ] Checking for system updates...
[2026-10-25 11:49:02,470.470 INFO    ] 200
[2026-10-25 11:49:02,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:02,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:02,559.559 INFO    ] No update needed
[2026-10-25 11:49:02,562.562 INFO    ] Checking for camera pi updates...
[2026-10-25 11:49:02,602.602 INFO    ] 200
[2026-10-25 11:49:02,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:02,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:49:02,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:02,715.715 INFO    ] No camera update needed
[2026-10-25 11:49:02,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:49:02,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:49:02,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:49:02,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:49:04,777.777 INFO    ] ================================================
[2026-10-25 11:49:04,792.792 INFO    ] Launching Daemon at Sun Oct 25 11:49:04 IST 2026
[2026-10-25 11:49:04,803.803 INFO    ] ================================================
[2026-10-25 11:49:05,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:49:05
[2026-10-25 11:49:05,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:49:06,207.207 INFO    ] Initializing speech engine...
[2026-10-25 11:49:06,213.213 INFO    ] 2026-10-25 11:49:06
[2026-10-25 11:49:06,505.505 INFO    ] 2026-10-25 11:49:06
[2026-10-25 11:49:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:49:06,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:49:06,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:49:06,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:49:07,002.002 INFO    ] time= 25/10/2026 11:49:06
[2026-10-25 11:49:07,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:49:07,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:49:07,199.199 INFO    ] No existing commands found in stream
[2026-10-25 11:49:12,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:49:12,232.232 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 11:49:15,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:49:15,729.729 INFO    ] Checking for system updates...
[2026-10-25 11:49:15,766.766 INFO    ] 200
[2026-10-25 11:49:15,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:15,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:15,831.831 INFO    ] No update needed
[2026-10-25 11:49:15,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 11:49:15,867.867 INFO    ] 200
[2026-10-25 11:49:15,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:15,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:49:15,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:15,961.961 INFO    ] No camera update needed
[2026-10-25 11:49:15,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:49:15,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:49:15,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:49:15,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:49:18,015.015 INFO    ] ================================================
[2026-10-25 11:49:18,030.030 INFO    ] Launching Daemon at Sun Oct 25 11:49:18 IST 2026
[2026-10-25 11:49:18,041.041 INFO    ] ================================================
[2026-10-25 11:49:18,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:49:18
[2026-10-25 11:49:19,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:49:19,678.678 INFO    ] Initializing speech engine...
[2026-10-25 11:49:19,687.687 INFO    ] 2026-10-25 11:49:19
[2026-10-25 11:49:19,978.978 INFO    ] 2026-10-25 11:49:19
[2026-10-25 11:49:20,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:49:20,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:49:20,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:49:20,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:49:20,535.535 INFO    ] time= 25/10/2026 11:49:20
[2026-10-25 11:49:20,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:49:20,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:49:20,695.695 INFO    ] No existing commands found in stream
[2026-10-25 11:49:25,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:49:25,712.712 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 11:49:30,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:49:30,059.059 INFO    ] Checking for system updates...
[2026-10-25 11:49:30,097.097 INFO    ] 200
[2026-10-25 11:49:30,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:30,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:30,156.156 INFO    ] No update needed
[2026-10-25 11:49:30,159.159 INFO    ] Checking for camera pi updates...
[2026-10-25 11:49:30,193.193 INFO    ] 200
[2026-10-25 11:49:30,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:30,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:49:30,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:49:30,296.296 INFO    ] No camera update needed
[2026-10-25 11:49:30,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:49:30,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:49:30,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:49:30,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:49:32,355.355 INFO    ] ================================================
[2026-10-25 11:49:32,370.370 INFO    ] Launching Daemon at Sun Oct 25 11:49:32 IST 2026
[2026-10-25 11:49:32,382.382 INFO    ] ================================================
[2026-10-25 11:49:33,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:49:33
[2026-10-25 11:49:33,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:49:33,896.896 INFO    ] Initializing speech engine...
[2026-10-25 11:49:33,904.904 INFO    ] 2026-10-25 11:49:33
[2026-10-25 11:49:34,165.165 INFO    ] 2026-10-25 11:49:34
[2026-10-25 11:49:34,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:49:34,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:49:34,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:49:34,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:49:34,724.724 INFO    ] time= 25/10/2026 11:49:34
[2026-10-25 11:49:34,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:49:34,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:49:34,878.878 INFO    ] No existing commands found in stream
[2026-10-25 11:49:39,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:49:39,893.893 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 11:49:42,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:49:42,646.646 INFO    ] Checking for system updates...
[2026-10-25 11:49:42,683.683 INFO    ] 200
[2026-10-25 11:49:42,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:42,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:49:42,749.749 INFO    ] No update needed
[2026-10-25 11:49:42,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 11:49:42,790.790 INFO    ] 200
[2026-10-25 11:49:42,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:42,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:49:42,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:49:42,886.886 INFO    ] No camera update needed
[2026-10-25 11:49:42,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:49:42,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:49:42,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:49:42,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:49:44,944.944 INFO    ] ================================================
[2026-10-25 11:49:44,959.959 INFO    ] Launching Daemon at Sun Oct 25 11:49:44 IST 2026
[2026-10-25 11:49:44,969.969 INFO    ] ================================================
[2026-10-25 11:49:45,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:49:45
[2026-10-25 11:49:46,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:49:46,375.375 INFO    ] Initializing speech engine...
[2026-10-25 11:49:46,381.381 INFO    ] 2026-10-25 11:49:46
[2026-10-25 11:49:46,680.680 INFO    ] 2026-10-25 11:49:46
[2026-10-25 11:49:46,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:49:46,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:49:46,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:49:47,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:49:47,101.101 INFO    ] time= 25/10/2026 11:49:47
[2026-10-25 11:49:47,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:49:47,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:49:47,194.194 INFO    ] No existing commands found in stream
[2026-10-25 11:49:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:49:52,212.212 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 11:49:53,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:49:53,244.244 INFO    ] Checking for system updates...
[2026-10-25 11:49:53,284.284 INFO    ] 200
[2026-10-25 11:49:53,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:53,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:49:53,343.343 INFO    ] No update needed
[2026-10-25 11:49:53,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 11:49:53,384.384 INFO    ] 200
[2026-10-25 11:49:53,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:49:53,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:49:53,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:49:53,480.480 INFO    ] No camera update needed
[2026-10-25 11:49:53,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:49:53,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:49:53,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:49:53,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:49:55,538.538 INFO    ] ================================================
[2026-10-25 11:49:55,554.554 INFO    ] Launching Daemon at Sun Oct 25 11:49:55 IST 2026
[2026-10-25 11:49:55,565.565 INFO    ] ================================================
[2026-10-25 11:49:56,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:49:56
[2026-10-25 11:49:56,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:49:57,019.019 INFO    ] Initializing speech engine...
[2026-10-25 11:49:57,030.030 INFO    ] 2026-10-25 11:49:57
[2026-10-25 11:49:57,278.278 INFO    ] 2026-10-25 11:49:57
[2026-10-25 11:49:57,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:49:59,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:49:59,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:50:00,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:50:00,138.138 INFO    ] time= 25/10/2026 11:50:00
[2026-10-25 11:50:00,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:50:00,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:50:00,211.211 INFO    ] No existing commands found in stream
[2026-10-25 11:50:05,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:50:05,223.223 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 11:50:08,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:50:08,337.337 INFO    ] Checking for system updates...
[2026-10-25 11:50:08,375.375 INFO    ] 200
[2026-10-25 11:50:08,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:08,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:08,436.436 INFO    ] No update needed
[2026-10-25 11:50:08,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 11:50:08,478.478 INFO    ] 200
[2026-10-25 11:50:08,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:08,532.532 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:50:08,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:08,582.582 INFO    ] No camera update needed
[2026-10-25 11:50:08,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:50:08,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:50:08,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:50:08,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:50:10,642.642 INFO    ] ================================================
[2026-10-25 11:50:10,657.657 INFO    ] Launching Daemon at Sun Oct 25 11:50:10 IST 2026
[2026-10-25 11:50:10,668.668 INFO    ] ================================================
[2026-10-25 11:50:11,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:50:11
[2026-10-25 11:50:11,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:50:12,096.096 INFO    ] Initializing speech engine...
[2026-10-25 11:50:12,105.105 INFO    ] 2026-10-25 11:50:12
[2026-10-25 11:50:12,368.368 INFO    ] 2026-10-25 11:50:12
[2026-10-25 11:50:12,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:50:12,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:50:12,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:50:12,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:50:12,909.909 INFO    ] time= 25/10/2026 11:50:12
[2026-10-25 11:50:12,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:50:12,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:50:13,064.064 INFO    ] No existing commands found in stream
[2026-10-25 11:50:18,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:50:18,078.078 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 11:50:19,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:50:19,883.883 INFO    ] Checking for system updates...
[2026-10-25 11:50:19,924.924 INFO    ] 200
[2026-10-25 11:50:19,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:19,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:19,986.986 INFO    ] No update needed
[2026-10-25 11:50:19,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 11:50:20,028.028 INFO    ] 200
[2026-10-25 11:50:20,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:20,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:50:20,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:20,143.143 INFO    ] No camera update needed
[2026-10-25 11:50:20,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:50:20,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:50:20,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:50:20,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:50:22,203.203 INFO    ] ================================================
[2026-10-25 11:50:22,220.220 INFO    ] Launching Daemon at Sun Oct 25 11:50:22 IST 2026
[2026-10-25 11:50:22,231.231 INFO    ] ================================================
[2026-10-25 11:50:22,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:50:22
[2026-10-25 11:50:23,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:50:23,656.656 INFO    ] Initializing speech engine...
[2026-10-25 11:50:23,665.665 INFO    ] 2026-10-25 11:50:23
[2026-10-25 11:50:23,920.920 INFO    ] 2026-10-25 11:50:23
[2026-10-25 11:50:23,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:50:24,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:50:24,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:50:24,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:50:24,383.383 INFO    ] time= 25/10/2026 11:50:24
[2026-10-25 11:50:24,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:50:24,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:50:24,554.554 INFO    ] No existing commands found in stream
[2026-10-25 11:50:29,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:50:29,594.594 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 11:50:33,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:50:33,122.122 INFO    ] Checking for system updates...
[2026-10-25 11:50:33,161.161 INFO    ] 200
[2026-10-25 11:50:33,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:33,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:33,219.219 INFO    ] No update needed
[2026-10-25 11:50:33,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 11:50:33,256.256 INFO    ] 200
[2026-10-25 11:50:33,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:33,299.299 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:50:33,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:33,372.372 INFO    ] No camera update needed
[2026-10-25 11:50:33,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:50:33,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:50:33,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:50:33,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:50:35,431.431 INFO    ] ================================================
[2026-10-25 11:50:35,447.447 INFO    ] Launching Daemon at Sun Oct 25 11:50:35 IST 2026
[2026-10-25 11:50:35,458.458 INFO    ] ================================================
[2026-10-25 11:50:36,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:50:36
[2026-10-25 11:50:36,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:50:36,851.851 INFO    ] Initializing speech engine...
[2026-10-25 11:50:36,873.873 INFO    ] 2026-10-25 11:50:36
[2026-10-25 11:50:37,124.124 INFO    ] 2026-10-25 11:50:37
[2026-10-25 11:50:37,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:50:37,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:50:37,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:50:37,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:50:37,612.612 INFO    ] time= 25/10/2026 11:50:37
[2026-10-25 11:50:37,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:50:37,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:50:37,797.797 INFO    ] No existing commands found in stream
[2026-10-25 11:50:42,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:50:42,833.833 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 11:50:46,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:50:46,294.294 INFO    ] Checking for system updates...
[2026-10-25 11:50:46,336.336 INFO    ] 200
[2026-10-25 11:50:46,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:46,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:50:46,403.403 INFO    ] No update needed
[2026-10-25 11:50:46,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 11:50:46,454.454 INFO    ] 200
[2026-10-25 11:50:46,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:46,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:50:46,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:50:46,667.667 INFO    ] No camera update needed
[2026-10-25 11:50:46,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:50:46,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:50:46,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:50:46,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:50:48,728.728 INFO    ] ================================================
[2026-10-25 11:50:48,744.744 INFO    ] Launching Daemon at Sun Oct 25 11:50:48 IST 2026
[2026-10-25 11:50:48,754.754 INFO    ] ================================================
[2026-10-25 11:50:49,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:50:49
[2026-10-25 11:50:49,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:50:50,200.200 INFO    ] Initializing speech engine...
[2026-10-25 11:50:50,206.206 INFO    ] 2026-10-25 11:50:50
[2026-10-25 11:50:50,504.504 INFO    ] 2026-10-25 11:50:50
[2026-10-25 11:50:50,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:50:50,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:50:50,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:50:50,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:50:50,936.936 INFO    ] time= 25/10/2026 11:50:50
[2026-10-25 11:50:50,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:50:50,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:50:51,118.118 INFO    ] No existing commands found in stream
[2026-10-25 11:50:56,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:50:56,145.145 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 11:50:57,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:50:57,649.649 INFO    ] Checking for system updates...
[2026-10-25 11:50:57,686.686 INFO    ] 200
[2026-10-25 11:50:57,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:57,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:57,745.745 INFO    ] No update needed
[2026-10-25 11:50:57,747.747 INFO    ] Checking for camera pi updates...
[2026-10-25 11:50:57,782.782 INFO    ] 200
[2026-10-25 11:50:57,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:50:57,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:50:57,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:50:57,888.888 INFO    ] No camera update needed
[2026-10-25 11:50:57,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:50:57,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:50:57,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:50:57,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:50:59,943.943 INFO    ] ================================================
[2026-10-25 11:50:59,958.958 INFO    ] Launching Daemon at Sun Oct 25 11:50:59 IST 2026
[2026-10-25 11:50:59,969.969 INFO    ] ================================================
[2026-10-25 11:51:00,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:51:00
[2026-10-25 11:51:01,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:51:01,386.386 INFO    ] Initializing speech engine...
[2026-10-25 11:51:01,395.395 INFO    ] 2026-10-25 11:51:01
[2026-10-25 11:51:01,661.661 INFO    ] 2026-10-25 11:51:01
[2026-10-25 11:51:01,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:51:02,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:51:02,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:51:02,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:51:02,377.377 INFO    ] time= 25/10/2026 11:51:02
[2026-10-25 11:51:02,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:51:02,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:51:02,526.526 INFO    ] No existing commands found in stream
[2026-10-25 11:51:07,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:51:07,557.557 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 11:51:08,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:51:08,936.936 INFO    ] Checking for system updates...
[2026-10-25 11:51:08,976.976 INFO    ] 200
[2026-10-25 11:51:08,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:09,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:51:09,041.041 INFO    ] No update needed
[2026-10-25 11:51:09,044.044 INFO    ] Checking for camera pi updates...
[2026-10-25 11:51:09,082.082 INFO    ] 200
[2026-10-25 11:51:09,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:09,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:51:09,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:51:09,183.183 INFO    ] No camera update needed
[2026-10-25 11:51:09,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:51:09,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:51:09,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:51:09,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:51:11,240.240 INFO    ] ================================================
[2026-10-25 11:51:11,256.256 INFO    ] Launching Daemon at Sun Oct 25 11:51:11 IST 2026
[2026-10-25 11:51:11,266.266 INFO    ] ================================================
[2026-10-25 11:51:11,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:51:11
[2026-10-25 11:51:12,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:51:12,692.692 INFO    ] Initializing speech engine...
[2026-10-25 11:51:12,700.700 INFO    ] 2026-10-25 11:51:12
[2026-10-25 11:51:13,001.001 INFO    ] 2026-10-25 11:51:12
[2026-10-25 11:51:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:51:13,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:51:13,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:51:13,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:51:13,509.509 INFO    ] time= 25/10/2026 11:51:13
[2026-10-25 11:51:13,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:51:13,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:51:13,786.786 INFO    ] No existing commands found in stream
[2026-10-25 11:51:18,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:51:18,812.812 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 11:51:22,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:51:22,557.557 INFO    ] Checking for system updates...
[2026-10-25 11:51:22,593.593 INFO    ] 200
[2026-10-25 11:51:22,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:22,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:51:22,659.659 INFO    ] No update needed
[2026-10-25 11:51:22,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 11:51:22,696.696 INFO    ] 200
[2026-10-25 11:51:22,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:22,744.744 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:51:22,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:51:22,798.798 INFO    ] No camera update needed
[2026-10-25 11:51:22,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:51:22,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:51:22,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:51:22,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:51:24,853.853 INFO    ] ================================================
[2026-10-25 11:51:24,868.868 INFO    ] Launching Daemon at Sun Oct 25 11:51:24 IST 2026
[2026-10-25 11:51:24,879.879 INFO    ] ================================================
[2026-10-25 11:51:25,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:51:25
[2026-10-25 11:51:26,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:51:26,420.420 INFO    ] Initializing speech engine...
[2026-10-25 11:51:26,434.434 INFO    ] 2026-10-25 11:51:26
[2026-10-25 11:51:26,700.700 INFO    ] 2026-10-25 11:51:26
[2026-10-25 11:51:26,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:51:26,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:51:26,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:51:27,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:51:27,175.175 INFO    ] time= 25/10/2026 11:51:27
[2026-10-25 11:51:27,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:51:27,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:51:27,376.376 INFO    ] No existing commands found in stream
[2026-10-25 11:51:32,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:51:32,404.404 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 11:51:36,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:51:36,135.135 INFO    ] Checking for system updates...
[2026-10-25 11:51:36,171.171 INFO    ] 200
[2026-10-25 11:51:36,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:36,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:51:36,231.231 INFO    ] No update needed
[2026-10-25 11:51:36,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 11:51:36,272.272 INFO    ] 200
[2026-10-25 11:51:36,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:36,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:51:36,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:51:36,367.367 INFO    ] No camera update needed
[2026-10-25 11:51:36,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:51:36,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:51:36,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:51:36,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:51:38,421.421 INFO    ] ================================================
[2026-10-25 11:51:38,436.436 INFO    ] Launching Daemon at Sun Oct 25 11:51:38 IST 2026
[2026-10-25 11:51:38,447.447 INFO    ] ================================================
[2026-10-25 11:51:39,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:51:39
[2026-10-25 11:51:39,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:51:39,892.892 INFO    ] Initializing speech engine...
[2026-10-25 11:51:39,901.901 INFO    ] 2026-10-25 11:51:39
[2026-10-25 11:51:40,158.158 INFO    ] 2026-10-25 11:51:40
[2026-10-25 11:51:40,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:51:40,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:51:40,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:51:40,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:51:40,635.635 INFO    ] time= 25/10/2026 11:51:40
[2026-10-25 11:51:40,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:51:40,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:51:40,827.827 INFO    ] No existing commands found in stream
[2026-10-25 11:51:45,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:51:45,852.852 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 11:51:47,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:51:47,804.804 INFO    ] Checking for system updates...
[2026-10-25 11:51:47,845.845 INFO    ] 200
[2026-10-25 11:51:47,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:47,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:51:47,911.911 INFO    ] No update needed
[2026-10-25 11:51:47,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 11:51:47,952.952 INFO    ] 200
[2026-10-25 11:51:47,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:51:48,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:51:48,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:51:48,065.065 INFO    ] No camera update needed
[2026-10-25 11:51:48,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:51:48,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:51:48,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:51:48,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:51:50,122.122 INFO    ] ================================================
[2026-10-25 11:51:50,138.138 INFO    ] Launching Daemon at Sun Oct 25 11:51:50 IST 2026
[2026-10-25 11:51:50,148.148 INFO    ] ================================================
[2026-10-25 11:51:50,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:51:50
[2026-10-25 11:51:51,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:51:51,820.820 INFO    ] Initializing speech engine...
[2026-10-25 11:51:51,829.829 INFO    ] 2026-10-25 11:51:51
[2026-10-25 11:51:52,135.135 INFO    ] 2026-10-25 11:51:52
[2026-10-25 11:51:52,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:51:52,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:51:52,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:51:52,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:51:52,645.645 INFO    ] time= 25/10/2026 11:51:52
[2026-10-25 11:51:52,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:51:52,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:51:52,801.801 INFO    ] No existing commands found in stream
[2026-10-25 11:51:57,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:51:57,834.834 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 11:52:04,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:52:04,200.200 INFO    ] Checking for system updates...
[2026-10-25 11:52:04,241.241 INFO    ] 200
[2026-10-25 11:52:04,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:04,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:04,303.303 INFO    ] No update needed
[2026-10-25 11:52:04,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 11:52:04,345.345 INFO    ] 200
[2026-10-25 11:52:04,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:04,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:52:04,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:04,428.428 INFO    ] No camera update needed
[2026-10-25 11:52:04,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:52:04,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:52:04,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:52:04,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:52:06,492.492 INFO    ] ================================================
[2026-10-25 11:52:06,506.506 INFO    ] Launching Daemon at Sun Oct 25 11:52:06 IST 2026
[2026-10-25 11:52:06,517.517 INFO    ] ================================================
[2026-10-25 11:52:07,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:52:07
[2026-10-25 11:52:07,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:52:07,981.981 INFO    ] Initializing speech engine...
[2026-10-25 11:52:07,995.995 INFO    ] 2026-10-25 11:52:07
[2026-10-25 11:52:08,250.250 INFO    ] 2026-10-25 11:52:08
[2026-10-25 11:52:08,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:52:08,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:52:08,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:52:08,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:52:08,746.746 INFO    ] time= 25/10/2026 11:52:08
[2026-10-25 11:52:08,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:52:08,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:52:08,941.941 INFO    ] No existing commands found in stream
[2026-10-25 11:52:13,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:52:13,969.969 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 11:52:17,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:52:17,378.378 INFO    ] Checking for system updates...
[2026-10-25 11:52:17,417.417 INFO    ] 200
[2026-10-25 11:52:17,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:17,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:17,483.483 INFO    ] No update needed
[2026-10-25 11:52:17,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 11:52:17,523.523 INFO    ] 200
[2026-10-25 11:52:17,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:17,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:52:17,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:17,624.624 INFO    ] No camera update needed
[2026-10-25 11:52:17,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:52:17,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:52:17,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:52:17,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:52:19,679.679 INFO    ] ================================================
[2026-10-25 11:52:19,694.694 INFO    ] Launching Daemon at Sun Oct 25 11:52:19 IST 2026
[2026-10-25 11:52:19,705.705 INFO    ] ================================================
[2026-10-25 11:52:20,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:52:20
[2026-10-25 11:52:20,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:52:21,126.126 INFO    ] Initializing speech engine...
[2026-10-25 11:52:21,135.135 INFO    ] 2026-10-25 11:52:21
[2026-10-25 11:52:21,379.379 INFO    ] 2026-10-25 11:52:21
[2026-10-25 11:52:21,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:52:21,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:52:21,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:52:21,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:52:21,858.858 INFO    ] time= 25/10/2026 11:52:21
[2026-10-25 11:52:21,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:52:21,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:52:22,062.062 INFO    ] No existing commands found in stream
[2026-10-25 11:52:27,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:52:27,102.102 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 11:52:30,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:52:30,965.965 INFO    ] Checking for system updates...
[2026-10-25 11:52:31,002.002 INFO    ] 200
[2026-10-25 11:52:31,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:31,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:31,064.064 INFO    ] No update needed
[2026-10-25 11:52:31,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 11:52:31,101.101 INFO    ] 200
[2026-10-25 11:52:31,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:31,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:52:31,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:31,202.202 INFO    ] No camera update needed
[2026-10-25 11:52:31,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:52:31,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:52:31,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:52:31,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:52:33,258.258 INFO    ] ================================================
[2026-10-25 11:52:33,272.272 INFO    ] Launching Daemon at Sun Oct 25 11:52:33 IST 2026
[2026-10-25 11:52:33,283.283 INFO    ] ================================================
[2026-10-25 11:52:33,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:52:33
[2026-10-25 11:52:34,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:52:34,687.687 INFO    ] Initializing speech engine...
[2026-10-25 11:52:34,701.701 INFO    ] 2026-10-25 11:52:34
[2026-10-25 11:52:34,971.971 INFO    ] 2026-10-25 11:52:34
[2026-10-25 11:52:35,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:52:35,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:52:35,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:52:35,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:52:35,997.997 INFO    ] time= 25/10/2026 11:52:35
[2026-10-25 11:52:36,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:52:36,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:52:36,114.114 INFO    ] No existing commands found in stream
[2026-10-25 11:52:41,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:52:41,136.136 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 11:52:43,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:52:43,364.364 INFO    ] Checking for system updates...
[2026-10-25 11:52:43,400.400 INFO    ] 200
[2026-10-25 11:52:43,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:43,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:43,458.458 INFO    ] No update needed
[2026-10-25 11:52:43,460.460 INFO    ] Checking for camera pi updates...
[2026-10-25 11:52:43,494.494 INFO    ] 200
[2026-10-25 11:52:43,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:43,541.541 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:52:43,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:52:43,593.593 INFO    ] No camera update needed
[2026-10-25 11:52:43,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:52:43,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:52:43,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:52:43,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:52:45,647.647 INFO    ] ================================================
[2026-10-25 11:52:45,662.662 INFO    ] Launching Daemon at Sun Oct 25 11:52:45 IST 2026
[2026-10-25 11:52:45,673.673 INFO    ] ================================================
[2026-10-25 11:52:46,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:52:46
[2026-10-25 11:52:46,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:52:47,075.075 INFO    ] Initializing speech engine...
[2026-10-25 11:52:47,083.083 INFO    ] 2026-10-25 11:52:47
[2026-10-25 11:52:47,375.375 INFO    ] 2026-10-25 11:52:47
[2026-10-25 11:52:47,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:52:47,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:52:47,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:52:47,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:52:47,793.793 INFO    ] time= 25/10/2026 11:52:47
[2026-10-25 11:52:47,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:52:47,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:52:47,942.942 INFO    ] No existing commands found in stream
[2026-10-25 11:52:52,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:52:52,964.964 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 11:52:55,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:52:55,999.999 INFO    ] Checking for system updates...
[2026-10-25 11:52:56,035.035 INFO    ] 200
[2026-10-25 11:52:56,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:56,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:52:56,100.100 INFO    ] No update needed
[2026-10-25 11:52:56,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 11:52:56,139.139 INFO    ] 200
[2026-10-25 11:52:56,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:52:56,187.187 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:52:56,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:52:56,342.342 INFO    ] No camera update needed
[2026-10-25 11:52:56,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:52:56,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:52:56,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:52:56,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:52:58,396.396 INFO    ] ================================================
[2026-10-25 11:52:58,411.411 INFO    ] Launching Daemon at Sun Oct 25 11:52:58 IST 2026
[2026-10-25 11:52:58,422.422 INFO    ] ================================================
[2026-10-25 11:52:59,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:52:59
[2026-10-25 11:52:59,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:53:00,030.030 INFO    ] Initializing speech engine...
[2026-10-25 11:53:00,044.044 INFO    ] 2026-10-25 11:53:00
[2026-10-25 11:53:00,322.322 INFO    ] 2026-10-25 11:53:00
[2026-10-25 11:53:00,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:53:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:53:00,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:53:00,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:53:00,865.865 INFO    ] time= 25/10/2026 11:53:00
[2026-10-25 11:53:00,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:53:00,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:53:01,018.018 INFO    ] No existing commands found in stream
[2026-10-25 11:53:06,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:53:06,035.035 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 11:53:08,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:53:08,321.321 INFO    ] Checking for system updates...
[2026-10-25 11:53:08,358.358 INFO    ] 200
[2026-10-25 11:53:08,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:08,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:53:08,417.417 INFO    ] No update needed
[2026-10-25 11:53:08,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 11:53:08,454.454 INFO    ] 200
[2026-10-25 11:53:08,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:08,498.498 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:53:08,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:53:08,557.557 INFO    ] No camera update needed
[2026-10-25 11:53:08,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:53:08,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:53:08,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:53:08,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:53:10,614.614 INFO    ] ================================================
[2026-10-25 11:53:10,629.629 INFO    ] Launching Daemon at Sun Oct 25 11:53:10 IST 2026
[2026-10-25 11:53:10,640.640 INFO    ] ================================================
[2026-10-25 11:53:11,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:53:11
[2026-10-25 11:53:11,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:53:12,043.043 INFO    ] Initializing speech engine...
[2026-10-25 11:53:12,057.057 INFO    ] 2026-10-25 11:53:12
[2026-10-25 11:53:12,333.333 INFO    ] 2026-10-25 11:53:12
[2026-10-25 11:53:12,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:53:12,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:53:12,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:53:12,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:53:12,804.804 INFO    ] time= 25/10/2026 11:53:12
[2026-10-25 11:53:12,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:53:12,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:53:12,968.968 INFO    ] No existing commands found in stream
[2026-10-25 11:53:17,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:53:17,987.987 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 11:53:22,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:53:22,221.221 INFO    ] Checking for system updates...
[2026-10-25 11:53:22,257.257 INFO    ] 200
[2026-10-25 11:53:22,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:22,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:22,316.316 INFO    ] No update needed
[2026-10-25 11:53:22,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 11:53:22,354.354 INFO    ] 200
[2026-10-25 11:53:22,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:22,397.397 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:53:22,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:22,452.452 INFO    ] No camera update needed
[2026-10-25 11:53:22,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:53:22,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:53:22,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:53:22,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:53:24,509.509 INFO    ] ================================================
[2026-10-25 11:53:24,524.524 INFO    ] Launching Daemon at Sun Oct 25 11:53:24 IST 2026
[2026-10-25 11:53:24,534.534 INFO    ] ================================================
[2026-10-25 11:53:25,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:53:25
[2026-10-25 11:53:25,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:53:26,073.073 INFO    ] Initializing speech engine...
[2026-10-25 11:53:26,081.081 INFO    ] 2026-10-25 11:53:26
[2026-10-25 11:53:26,341.341 INFO    ] 2026-10-25 11:53:26
[2026-10-25 11:53:26,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:53:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:53:26,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:53:26,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:53:26,741.741 INFO    ] time= 25/10/2026 11:53:26
[2026-10-25 11:53:26,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:53:26,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:53:26,901.901 INFO    ] No existing commands found in stream
[2026-10-25 11:53:31,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:53:31,929.929 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 11:53:37,182.182 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:53:37,185.185 INFO    ] Checking for system updates...
[2026-10-25 11:53:37,228.228 INFO    ] 200
[2026-10-25 11:53:37,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:37,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:37,299.299 INFO    ] No update needed
[2026-10-25 11:53:37,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 11:53:37,343.343 INFO    ] 200
[2026-10-25 11:53:37,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:37,395.395 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:53:37,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:37,472.472 INFO    ] No camera update needed
[2026-10-25 11:53:37,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:53:37,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:53:37,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:53:37,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:53:39,528.528 INFO    ] ================================================
[2026-10-25 11:53:39,543.543 INFO    ] Launching Daemon at Sun Oct 25 11:53:39 IST 2026
[2026-10-25 11:53:39,554.554 INFO    ] ================================================
[2026-10-25 11:53:40,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:53:40
[2026-10-25 11:53:40,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:53:41,150.150 INFO    ] Initializing speech engine...
[2026-10-25 11:53:41,155.155 INFO    ] 2026-10-25 11:53:41
[2026-10-25 11:53:41,443.443 INFO    ] 2026-10-25 11:53:41
[2026-10-25 11:53:41,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:53:41,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:53:41,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:53:41,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:53:41,991.991 INFO    ] time= 25/10/2026 11:53:41
[2026-10-25 11:53:41,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:53:42,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:53:42,145.145 INFO    ] No existing commands found in stream
[2026-10-25 11:53:47,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:53:47,164.164 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 11:53:47,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:53:47,966.966 INFO    ] Checking for system updates...
[2026-10-25 11:53:48,003.003 INFO    ] 200
[2026-10-25 11:53:48,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:48,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:48,063.063 INFO    ] No update needed
[2026-10-25 11:53:48,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 11:53:48,100.100 INFO    ] 200
[2026-10-25 11:53:48,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:53:48,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:53:48,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:53:48,195.195 INFO    ] No camera update needed
[2026-10-25 11:53:48,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:53:48,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:53:48,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:53:48,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:53:50,249.249 INFO    ] ================================================
[2026-10-25 11:53:50,264.264 INFO    ] Launching Daemon at Sun Oct 25 11:53:50 IST 2026
[2026-10-25 11:53:50,275.275 INFO    ] ================================================
[2026-10-25 11:53:50,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:53:50
[2026-10-25 11:53:51,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:53:51,711.711 INFO    ] Initializing speech engine...
[2026-10-25 11:53:51,724.724 INFO    ] 2026-10-25 11:53:51
[2026-10-25 11:53:52,007.007 INFO    ] 2026-10-25 11:53:51
[2026-10-25 11:53:52,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:53:52,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:53:52,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:53:52,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:53:52,512.512 INFO    ] time= 25/10/2026 11:53:52
[2026-10-25 11:53:52,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:53:52,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:53:52,756.756 INFO    ] No existing commands found in stream
[2026-10-25 11:53:57,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:53:57,777.777 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 11:54:01,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:54:01,396.396 INFO    ] Checking for system updates...
[2026-10-25 11:54:01,463.463 INFO    ] 200
[2026-10-25 11:54:01,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:01,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:54:01,607.607 INFO    ] No update needed
[2026-10-25 11:54:01,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 11:54:01,681.681 INFO    ] 200
[2026-10-25 11:54:01,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:01,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:54:01,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:54:01,809.809 INFO    ] No camera update needed
[2026-10-25 11:54:01,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:54:01,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:54:01,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:54:01,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:54:03,883.883 INFO    ] ================================================
[2026-10-25 11:54:03,898.898 INFO    ] Launching Daemon at Sun Oct 25 11:54:03 IST 2026
[2026-10-25 11:54:03,908.908 INFO    ] ================================================
[2026-10-25 11:54:04,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:54:04
[2026-10-25 11:54:05,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:54:05,354.354 INFO    ] Initializing speech engine...
[2026-10-25 11:54:05,360.360 INFO    ] 2026-10-25 11:54:05
[2026-10-25 11:54:05,619.619 INFO    ] 2026-10-25 11:54:05
[2026-10-25 11:54:05,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:54:07,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:54:07,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:54:07,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:54:08,017.017 INFO    ] time= 25/10/2026 11:54:07
[2026-10-25 11:54:08,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:54:08,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:54:08,108.108 INFO    ] No existing commands found in stream
[2026-10-25 11:54:13,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:54:13,122.122 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 11:54:16,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:54:16,669.669 INFO    ] Checking for system updates...
[2026-10-25 11:54:16,709.709 INFO    ] 200
[2026-10-25 11:54:16,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:16,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:54:16,766.766 INFO    ] No update needed
[2026-10-25 11:54:16,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 11:54:16,804.804 INFO    ] 200
[2026-10-25 11:54:16,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:16,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:54:16,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:54:16,899.899 INFO    ] No camera update needed
[2026-10-25 11:54:16,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:54:16,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:54:16,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:54:16,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:54:18,955.955 INFO    ] ================================================
[2026-10-25 11:54:18,969.969 INFO    ] Launching Daemon at Sun Oct 25 11:54:18 IST 2026
[2026-10-25 11:54:18,981.981 INFO    ] ================================================
[2026-10-25 11:54:19,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:54:19
[2026-10-25 11:54:20,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:54:20,526.526 INFO    ] Initializing speech engine...
[2026-10-25 11:54:20,542.542 INFO    ] 2026-10-25 11:54:20
[2026-10-25 11:54:20,823.823 INFO    ] 2026-10-25 11:54:20
[2026-10-25 11:54:20,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:54:21,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:54:21,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:54:21,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:54:21,423.423 INFO    ] time= 25/10/2026 11:54:21
[2026-10-25 11:54:21,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:54:21,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:54:21,591.591 INFO    ] No existing commands found in stream
[2026-10-25 11:54:26,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:54:26,614.614 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 11:54:27,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:54:27,276.276 INFO    ] Checking for system updates...
[2026-10-25 11:54:27,312.312 INFO    ] 200
[2026-10-25 11:54:27,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:27,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:27,375.375 INFO    ] No update needed
[2026-10-25 11:54:27,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 11:54:27,412.412 INFO    ] 200
[2026-10-25 11:54:27,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:27,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:54:27,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:27,504.504 INFO    ] No camera update needed
[2026-10-25 11:54:27,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:54:27,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:54:27,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:54:27,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:54:29,558.558 INFO    ] ================================================
[2026-10-25 11:54:29,573.573 INFO    ] Launching Daemon at Sun Oct 25 11:54:29 IST 2026
[2026-10-25 11:54:29,583.583 INFO    ] ================================================
[2026-10-25 11:54:30,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:54:30
[2026-10-25 11:54:30,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:54:31,205.205 INFO    ] Initializing speech engine...
[2026-10-25 11:54:31,219.219 INFO    ] 2026-10-25 11:54:31
[2026-10-25 11:54:31,510.510 INFO    ] 2026-10-25 11:54:31
[2026-10-25 11:54:31,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:54:31,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:54:31,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:54:31,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:54:32,020.020 INFO    ] time= 25/10/2026 11:54:31
[2026-10-25 11:54:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:54:32,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:54:32,219.219 INFO    ] No existing commands found in stream
[2026-10-25 11:54:37,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:54:37,246.246 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 11:54:41,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:54:41,078.078 INFO    ] Checking for system updates...
[2026-10-25 11:54:41,115.115 INFO    ] 200
[2026-10-25 11:54:41,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:41,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:41,173.173 INFO    ] No update needed
[2026-10-25 11:54:41,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 11:54:41,212.212 INFO    ] 200
[2026-10-25 11:54:41,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:41,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:54:41,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:41,340.340 INFO    ] No camera update needed
[2026-10-25 11:54:41,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:54:41,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:54:41,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:54:41,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:54:43,395.395 INFO    ] ================================================
[2026-10-25 11:54:43,410.410 INFO    ] Launching Daemon at Sun Oct 25 11:54:43 IST 2026
[2026-10-25 11:54:43,421.421 INFO    ] ================================================
[2026-10-25 11:54:43,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:54:43
[2026-10-25 11:54:44,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:54:44,821.821 INFO    ] Initializing speech engine...
[2026-10-25 11:54:44,830.830 INFO    ] 2026-10-25 11:54:44
[2026-10-25 11:54:45,103.103 INFO    ] 2026-10-25 11:54:45
[2026-10-25 11:54:45,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:54:45,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:54:45,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:54:45,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:54:45,602.602 INFO    ] time= 25/10/2026 11:54:45
[2026-10-25 11:54:45,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:54:45,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:54:45,808.808 INFO    ] No existing commands found in stream
[2026-10-25 11:54:50,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:54:50,836.836 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 11:54:51,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:54:51,382.382 INFO    ] Checking for system updates...
[2026-10-25 11:54:51,418.418 INFO    ] 200
[2026-10-25 11:54:51,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:51,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:51,482.482 INFO    ] No update needed
[2026-10-25 11:54:51,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 11:54:51,519.519 INFO    ] 200
[2026-10-25 11:54:51,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:54:51,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:54:51,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:54:51,619.619 INFO    ] No camera update needed
[2026-10-25 11:54:51,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:54:51,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:54:51,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:54:51,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:54:53,675.675 INFO    ] ================================================
[2026-10-25 11:54:53,693.693 INFO    ] Launching Daemon at Sun Oct 25 11:54:53 IST 2026
[2026-10-25 11:54:53,704.704 INFO    ] ================================================
[2026-10-25 11:54:54,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:54:54
[2026-10-25 11:54:55,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:54:55,310.310 INFO    ] Initializing speech engine...
[2026-10-25 11:54:55,319.319 INFO    ] 2026-10-25 11:54:55
[2026-10-25 11:54:55,588.588 INFO    ] 2026-10-25 11:54:55
[2026-10-25 11:54:55,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:54:55,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:54:55,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:54:56,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:54:56,102.102 INFO    ] time= 25/10/2026 11:54:56
[2026-10-25 11:54:56,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:54:56,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:54:56,294.294 INFO    ] No existing commands found in stream
[2026-10-25 11:55:01,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:55:01,342.342 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 11:55:03,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:55:03,404.404 INFO    ] Checking for system updates...
[2026-10-25 11:55:03,442.442 INFO    ] 200
[2026-10-25 11:55:03,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:03,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:03,501.501 INFO    ] No update needed
[2026-10-25 11:55:03,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 11:55:03,542.542 INFO    ] 200
[2026-10-25 11:55:03,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:03,596.596 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:55:03,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:03,648.648 INFO    ] No camera update needed
[2026-10-25 11:55:03,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:55:03,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:55:03,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:55:03,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:55:05,707.707 INFO    ] ================================================
[2026-10-25 11:55:05,725.725 INFO    ] Launching Daemon at Sun Oct 25 11:55:05 IST 2026
[2026-10-25 11:55:05,735.735 INFO    ] ================================================
[2026-10-25 11:55:06,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:55:06
[2026-10-25 11:55:06,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:55:07,182.182 INFO    ] Initializing speech engine...
[2026-10-25 11:55:07,195.195 INFO    ] 2026-10-25 11:55:07
[2026-10-25 11:55:07,449.449 INFO    ] 2026-10-25 11:55:07
[2026-10-25 11:55:07,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:55:09,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:55:09,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:55:09,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:55:09,937.937 INFO    ] time= 25/10/2026 11:55:09
[2026-10-25 11:55:09,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:55:09,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:55:10,027.027 INFO    ] No existing commands found in stream
[2026-10-25 11:55:15,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:55:15,041.041 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 11:55:16,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:55:16,393.393 INFO    ] Checking for system updates...
[2026-10-25 11:55:16,440.440 INFO    ] 200
[2026-10-25 11:55:16,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:16,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:16,505.505 INFO    ] No update needed
[2026-10-25 11:55:16,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 11:55:16,541.541 INFO    ] 200
[2026-10-25 11:55:16,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:16,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:55:16,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:16,643.643 INFO    ] No camera update needed
[2026-10-25 11:55:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:55:16,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:55:16,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:55:16,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:55:18,701.701 INFO    ] ================================================
[2026-10-25 11:55:18,716.716 INFO    ] Launching Daemon at Sun Oct 25 11:55:18 IST 2026
[2026-10-25 11:55:18,727.727 INFO    ] ================================================
[2026-10-25 11:55:19,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:55:19
[2026-10-25 11:55:20,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:55:20,264.264 INFO    ] Initializing speech engine...
[2026-10-25 11:55:20,287.287 INFO    ] 2026-10-25 11:55:20
[2026-10-25 11:55:20,542.542 INFO    ] 2026-10-25 11:55:20
[2026-10-25 11:55:20,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:55:20,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:55:20,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:55:20,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:55:21,001.001 INFO    ] time= 25/10/2026 11:55:20
[2026-10-25 11:55:21,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:55:21,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:55:21,175.175 INFO    ] No existing commands found in stream
[2026-10-25 11:55:26,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:55:26,190.190 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 11:55:26,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:55:26,706.706 INFO    ] Checking for system updates...
[2026-10-25 11:55:26,743.743 INFO    ] 200
[2026-10-25 11:55:26,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:26,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:26,801.801 INFO    ] No update needed
[2026-10-25 11:55:26,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 11:55:26,841.841 INFO    ] 200
[2026-10-25 11:55:26,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:26,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:55:26,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:26,936.936 INFO    ] No camera update needed
[2026-10-25 11:55:26,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:55:26,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:55:26,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:55:26,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:55:28,994.994 INFO    ] ================================================
[2026-10-25 11:55:29,009.009 INFO    ] Launching Daemon at Sun Oct 25 11:55:29 IST 2026
[2026-10-25 11:55:29,021.021 INFO    ] ================================================
[2026-10-25 11:55:29,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:55:29
[2026-10-25 11:55:30,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:55:30,618.618 INFO    ] Initializing speech engine...
[2026-10-25 11:55:30,629.629 INFO    ] 2026-10-25 11:55:30
[2026-10-25 11:55:30,933.933 INFO    ] 2026-10-25 11:55:30
[2026-10-25 11:55:31,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:55:31,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:55:31,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:55:31,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:55:31,440.440 INFO    ] time= 25/10/2026 11:55:31
[2026-10-25 11:55:31,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:55:31,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:55:31,600.600 INFO    ] No existing commands found in stream
[2026-10-25 11:55:36,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:55:36,638.638 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 11:55:40,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:55:40,976.976 INFO    ] Checking for system updates...
[2026-10-25 11:55:41,016.016 INFO    ] 200
[2026-10-25 11:55:41,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:41,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:41,075.075 INFO    ] No update needed
[2026-10-25 11:55:41,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 11:55:41,111.111 INFO    ] 200
[2026-10-25 11:55:41,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:41,158.158 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:55:41,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:55:41,209.209 INFO    ] No camera update needed
[2026-10-25 11:55:41,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:55:41,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:55:41,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:55:41,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:55:43,264.264 INFO    ] ================================================
[2026-10-25 11:55:43,279.279 INFO    ] Launching Daemon at Sun Oct 25 11:55:43 IST 2026
[2026-10-25 11:55:43,289.289 INFO    ] ================================================
[2026-10-25 11:55:43,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:55:43
[2026-10-25 11:55:44,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:55:44,734.734 INFO    ] Initializing speech engine...
[2026-10-25 11:55:44,749.749 INFO    ] 2026-10-25 11:55:44
[2026-10-25 11:55:45,034.034 INFO    ] 2026-10-25 11:55:45
[2026-10-25 11:55:45,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:55:45,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:55:45,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:55:45,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:55:45,444.444 INFO    ] time= 25/10/2026 11:55:45
[2026-10-25 11:55:45,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:55:45,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:55:45,595.595 INFO    ] No existing commands found in stream
[2026-10-25 11:55:50,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:55:50,623.623 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 11:55:52,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:55:52,669.669 INFO    ] Checking for system updates...
[2026-10-25 11:55:52,709.709 INFO    ] 200
[2026-10-25 11:55:52,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:52,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:55:52,773.773 INFO    ] No update needed
[2026-10-25 11:55:52,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 11:55:52,812.812 INFO    ] 200
[2026-10-25 11:55:52,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:55:52,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:55:52,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:55:52,907.907 INFO    ] No camera update needed
[2026-10-25 11:55:52,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:55:52,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:55:52,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:55:52,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:55:54,961.961 INFO    ] ================================================
[2026-10-25 11:55:54,976.976 INFO    ] Launching Daemon at Sun Oct 25 11:55:54 IST 2026
[2026-10-25 11:55:54,987.987 INFO    ] ================================================
[2026-10-25 11:55:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:55:55
[2026-10-25 11:55:56,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:55:56,443.443 INFO    ] Initializing speech engine...
[2026-10-25 11:55:56,468.468 INFO    ] 2026-10-25 11:55:56
[2026-10-25 11:55:56,746.746 INFO    ] 2026-10-25 11:55:56
[2026-10-25 11:55:56,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:55:56,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:55:57,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:55:57,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:55:57,159.159 INFO    ] time= 25/10/2026 11:55:57
[2026-10-25 11:55:57,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:55:57,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:55:57,260.260 INFO    ] No existing commands found in stream
[2026-10-25 11:56:02,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:56:02,300.300 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 11:56:06,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:56:06,402.402 INFO    ] Checking for system updates...
[2026-10-25 11:56:06,440.440 INFO    ] 200
[2026-10-25 11:56:06,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:06,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:56:06,505.505 INFO    ] No update needed
[2026-10-25 11:56:06,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 11:56:06,542.542 INFO    ] 200
[2026-10-25 11:56:06,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:06,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:56:06,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:56:06,634.634 INFO    ] No camera update needed
[2026-10-25 11:56:06,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:56:06,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:56:06,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:56:06,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:56:08,694.694 INFO    ] ================================================
[2026-10-25 11:56:08,711.711 INFO    ] Launching Daemon at Sun Oct 25 11:56:08 IST 2026
[2026-10-25 11:56:08,722.722 INFO    ] ================================================
[2026-10-25 11:56:09,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:56:09
[2026-10-25 11:56:09,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:56:10,270.270 INFO    ] Initializing speech engine...
[2026-10-25 11:56:10,278.278 INFO    ] 2026-10-25 11:56:10
[2026-10-25 11:56:10,560.560 INFO    ] 2026-10-25 11:56:10
[2026-10-25 11:56:10,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:56:11,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:56:11,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:56:11,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:56:11,885.885 INFO    ] time= 25/10/2026 11:56:11
[2026-10-25 11:56:11,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:56:11,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:56:11,963.963 INFO    ] No existing commands found in stream
[2026-10-25 11:56:16,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:56:16,977.977 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 11:56:19,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:56:19,562.562 INFO    ] Checking for system updates...
[2026-10-25 11:56:19,628.628 INFO    ] 200
[2026-10-25 11:56:19,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:19,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:19,694.694 INFO    ] No update needed
[2026-10-25 11:56:19,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 11:56:19,736.736 INFO    ] 200
[2026-10-25 11:56:19,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:19,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:56:19,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:19,863.863 INFO    ] No camera update needed
[2026-10-25 11:56:19,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:56:19,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:56:19,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:56:19,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:56:21,921.921 INFO    ] ================================================
[2026-10-25 11:56:21,937.937 INFO    ] Launching Daemon at Sun Oct 25 11:56:21 IST 2026
[2026-10-25 11:56:21,948.948 INFO    ] ================================================
[2026-10-25 11:56:22,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:56:22
[2026-10-25 11:56:23,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:56:23,568.568 INFO    ] Initializing speech engine...
[2026-10-25 11:56:23,579.579 INFO    ] 2026-10-25 11:56:23
[2026-10-25 11:56:23,855.855 INFO    ] 2026-10-25 11:56:23
[2026-10-25 11:56:23,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:56:24,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:56:24,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:56:24,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:56:24,393.393 INFO    ] time= 25/10/2026 11:56:24
[2026-10-25 11:56:24,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:56:24,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:56:24,548.548 INFO    ] No existing commands found in stream
[2026-10-25 11:56:29,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:56:29,576.576 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 11:56:31,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:56:31,649.649 INFO    ] Checking for system updates...
[2026-10-25 11:56:31,694.694 INFO    ] 200
[2026-10-25 11:56:31,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:31,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:31,789.789 INFO    ] No update needed
[2026-10-25 11:56:31,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 11:56:31,847.847 INFO    ] 200
[2026-10-25 11:56:31,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:31,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:56:31,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:31,938.938 INFO    ] No camera update needed
[2026-10-25 11:56:31,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:56:31,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:56:31,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:56:31,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:56:34,998.998 INFO    ] ================================================
[2026-10-25 11:56:34,013.013 INFO    ] Launching Daemon at Sun Oct 25 11:56:34 IST 2026
[2026-10-25 11:56:34,024.024 INFO    ] ================================================
[2026-10-25 11:56:34,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:56:34
[2026-10-25 11:56:35,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:56:35,480.480 INFO    ] Initializing speech engine...
[2026-10-25 11:56:35,489.489 INFO    ] 2026-10-25 11:56:35
[2026-10-25 11:56:35,785.785 INFO    ] 2026-10-25 11:56:35
[2026-10-25 11:56:35,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:56:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:56:36,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:56:36,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:56:36,171.171 INFO    ] time= 25/10/2026 11:56:36
[2026-10-25 11:56:36,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:56:36,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:56:36,351.351 INFO    ] No existing commands found in stream
[2026-10-25 11:56:41,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:56:41,376.376 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 11:56:42,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:56:42,744.744 INFO    ] Checking for system updates...
[2026-10-25 11:56:42,780.780 INFO    ] 200
[2026-10-25 11:56:42,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:42,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:42,846.846 INFO    ] No update needed
[2026-10-25 11:56:42,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 11:56:42,886.886 INFO    ] 200
[2026-10-25 11:56:42,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:56:42,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:56:42,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:56:42,983.983 INFO    ] No camera update needed
[2026-10-25 11:56:42,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:56:42,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:56:42,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:56:42,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:56:45,038.038 INFO    ] ================================================
[2026-10-25 11:56:45,054.054 INFO    ] Launching Daemon at Sun Oct 25 11:56:45 IST 2026
[2026-10-25 11:56:45,064.064 INFO    ] ================================================
[2026-10-25 11:56:45,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:56:45
[2026-10-25 11:56:46,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:56:46,496.496 INFO    ] Initializing speech engine...
[2026-10-25 11:56:46,510.510 INFO    ] 2026-10-25 11:56:46
[2026-10-25 11:56:46,775.775 INFO    ] 2026-10-25 11:56:46
[2026-10-25 11:56:46,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:56:47,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:56:47,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:56:47,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:56:47,284.284 INFO    ] time= 25/10/2026 11:56:47
[2026-10-25 11:56:47,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:56:47,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:56:47,442.442 INFO    ] No existing commands found in stream
[2026-10-25 11:56:52,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:56:52,458.458 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 11:56:56,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:56:56,737.737 INFO    ] Checking for system updates...
[2026-10-25 11:56:56,777.777 INFO    ] 200
[2026-10-25 11:56:56,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 11:56:56,783.783 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-10-25 11:56:56,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 11:56:56,833.833 INFO    ] 200
[2026-10-25 11:56:56,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 11:56:56,838.838 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-10-25 11:56:56,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:56:56,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:56:56,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:56:56,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:56:58,893.893 INFO    ] ================================================
[2026-10-25 11:56:58,908.908 INFO    ] Launching Daemon at Sun Oct 25 11:56:58 IST 2026
[2026-10-25 11:56:58,919.919 INFO    ] ================================================
[2026-10-25 11:56:59,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:56:59
[2026-10-25 11:57:00,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:57:00,377.377 INFO    ] Initializing speech engine...
[2026-10-25 11:57:00,385.385 INFO    ] 2026-10-25 11:57:00
[2026-10-25 11:57:00,646.646 INFO    ] 2026-10-25 11:57:00
[2026-10-25 11:57:00,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:57:00,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:57:00,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:57:01,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:57:01,129.129 INFO    ] time= 25/10/2026 11:57:01
[2026-10-25 11:57:01,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:57:01,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:57:01,329.329 INFO    ] No existing commands found in stream
[2026-10-25 11:57:06,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:57:06,354.354 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 11:57:08,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:57:08,161.161 INFO    ] Checking for system updates...
[2026-10-25 11:57:08,199.199 INFO    ] 200
[2026-10-25 11:57:08,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 11:57:08,205.205 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-10-25 11:57:08,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 11:57:08,248.248 INFO    ] 200
[2026-10-25 11:57:08,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 11:57:08,255.255 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-10-25 11:57:08,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:57:08,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:57:08,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:57:08,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:57:10,313.313 INFO    ] ================================================
[2026-10-25 11:57:10,328.328 INFO    ] Launching Daemon at Sun Oct 25 11:57:10 IST 2026
[2026-10-25 11:57:10,339.339 INFO    ] ================================================
[2026-10-25 11:57:10,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:57:10
[2026-10-25 11:57:11,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:57:11,798.798 INFO    ] Initializing speech engine...
[2026-10-25 11:57:11,805.805 INFO    ] 2026-10-25 11:57:11
[2026-10-25 11:57:12,064.064 INFO    ] 2026-10-25 11:57:12
[2026-10-25 11:57:12,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:57:13,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:57:13,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:57:13,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:57:13,843.843 INFO    ] time= 25/10/2026 11:57:13
[2026-10-25 11:57:13,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:57:13,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:57:13,965.965 INFO    ] No existing commands found in stream
[2026-10-25 11:57:18,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:57:18,980.980 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 11:57:23,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:57:23,437.437 INFO    ] Checking for system updates...
[2026-10-25 11:57:23,481.481 INFO    ] 200
[2026-10-25 11:57:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:23,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:57:23,545.545 INFO    ] No update needed
[2026-10-25 11:57:23,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 11:57:23,599.599 INFO    ] 200
[2026-10-25 11:57:23,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:23,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:57:23,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:57:23,805.805 INFO    ] No camera update needed
[2026-10-25 11:57:23,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:57:23,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:57:23,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:57:23,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:57:25,863.863 INFO    ] ================================================
[2026-10-25 11:57:25,878.878 INFO    ] Launching Daemon at Sun Oct 25 11:57:25 IST 2026
[2026-10-25 11:57:25,890.890 INFO    ] ================================================
[2026-10-25 11:57:26,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:57:26
[2026-10-25 11:57:27,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:57:27,349.349 INFO    ] Initializing speech engine...
[2026-10-25 11:57:27,356.356 INFO    ] 2026-10-25 11:57:27
[2026-10-25 11:57:27,614.614 INFO    ] 2026-10-25 11:57:27
[2026-10-25 11:57:27,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:57:27,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:57:27,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:57:28,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:57:28,091.091 INFO    ] time= 25/10/2026 11:57:28
[2026-10-25 11:57:28,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:57:28,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:57:28,271.271 INFO    ] No existing commands found in stream
[2026-10-25 11:57:33,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:57:33,286.286 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 11:57:37,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 11:57:37,378.378 INFO    ] Checking for system updates...
[2026-10-25 11:57:37,420.420 INFO    ] 200
[2026-10-25 11:57:37,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:37,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:57:37,481.481 INFO    ] No update needed
[2026-10-25 11:57:37,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 11:57:37,527.527 INFO    ] 200
[2026-10-25 11:57:37,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:37,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:57:37,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:57:37,709.709 INFO    ] No camera update needed
[2026-10-25 11:57:37,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:57:37,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:57:37,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:57:37,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:57:39,768.768 INFO    ] ================================================
[2026-10-25 11:57:39,784.784 INFO    ] Launching Daemon at Sun Oct 25 11:57:39 IST 2026
[2026-10-25 11:57:39,795.795 INFO    ] ================================================
[2026-10-25 11:57:40,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:57:40
[2026-10-25 11:57:40,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:57:41,275.275 INFO    ] Initializing speech engine...
[2026-10-25 11:57:41,281.281 INFO    ] 2026-10-25 11:57:41
[2026-10-25 11:57:41,571.571 INFO    ] 2026-10-25 11:57:41
[2026-10-25 11:57:41,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:57:44,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:57:44,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:57:44,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:57:44,643.643 INFO    ] time= 25/10/2026 11:57:44
[2026-10-25 11:57:44,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:57:44,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:57:44,704.704 INFO    ] No existing commands found in stream
[2026-10-25 11:57:49,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:57:49,716.716 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 11:57:51,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:57:51,266.266 INFO    ] Checking for system updates...
[2026-10-25 11:57:51,304.304 INFO    ] 200
[2026-10-25 11:57:51,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:51,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:57:51,366.366 INFO    ] No update needed
[2026-10-25 11:57:51,368.368 INFO    ] Checking for camera pi updates...
[2026-10-25 11:57:51,408.408 INFO    ] 200
[2026-10-25 11:57:51,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:57:51,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:57:51,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:57:51,507.507 INFO    ] No camera update needed
[2026-10-25 11:57:51,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:57:51,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:57:51,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:57:51,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:57:53,567.567 INFO    ] ================================================
[2026-10-25 11:57:53,583.583 INFO    ] Launching Daemon at Sun Oct 25 11:57:53 IST 2026
[2026-10-25 11:57:53,594.594 INFO    ] ================================================
[2026-10-25 11:57:54,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:57:54
[2026-10-25 11:57:54,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:57:55,247.247 INFO    ] Initializing speech engine...
[2026-10-25 11:57:55,259.259 INFO    ] 2026-10-25 11:57:55
[2026-10-25 11:57:55,552.552 INFO    ] 2026-10-25 11:57:55
[2026-10-25 11:57:55,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:57:55,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:57:55,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:57:56,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:57:56,106.106 INFO    ] time= 25/10/2026 11:57:56
[2026-10-25 11:57:56,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:57:56,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:57:56,268.268 INFO    ] No existing commands found in stream
[2026-10-25 11:58:01,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:58:01,289.289 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 11:58:01,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 11:58:01,953.953 INFO    ] Checking for system updates...
[2026-10-25 11:58:01,996.996 INFO    ] 200
[2026-10-25 11:58:01,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:02,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:02,068.068 INFO    ] No update needed
[2026-10-25 11:58:02,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 11:58:02,108.108 INFO    ] 200
[2026-10-25 11:58:02,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:02,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:58:02,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:02,205.205 INFO    ] No camera update needed
[2026-10-25 11:58:02,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:58:02,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:58:02,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:58:02,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:58:04,262.262 INFO    ] ================================================
[2026-10-25 11:58:04,278.278 INFO    ] Launching Daemon at Sun Oct 25 11:58:04 IST 2026
[2026-10-25 11:58:04,289.289 INFO    ] ================================================
[2026-10-25 11:58:04,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:58:04
[2026-10-25 11:58:05,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:58:05,963.963 INFO    ] Initializing speech engine...
[2026-10-25 11:58:05,977.977 INFO    ] 2026-10-25 11:58:05
[2026-10-25 11:58:06,254.254 INFO    ] 2026-10-25 11:58:06
[2026-10-25 11:58:06,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:58:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:58:06,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:58:06,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:58:06,828.828 INFO    ] time= 25/10/2026 11:58:06
[2026-10-25 11:58:06,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:58:06,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:58:06,991.991 INFO    ] No existing commands found in stream
[2026-10-25 11:58:12,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:58:12,017.017 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 11:58:15,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:58:15,322.322 INFO    ] Checking for system updates...
[2026-10-25 11:58:15,360.360 INFO    ] 200
[2026-10-25 11:58:15,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:15,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:58:15,422.422 INFO    ] No update needed
[2026-10-25 11:58:15,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 11:58:15,460.460 INFO    ] 200
[2026-10-25 11:58:15,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:15,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:58:15,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:58:15,564.564 INFO    ] No camera update needed
[2026-10-25 11:58:15,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:58:15,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:58:15,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:58:15,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:58:17,620.620 INFO    ] ================================================
[2026-10-25 11:58:17,636.636 INFO    ] Launching Daemon at Sun Oct 25 11:58:17 IST 2026
[2026-10-25 11:58:17,647.647 INFO    ] ================================================
[2026-10-25 11:58:18,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:58:18
[2026-10-25 11:58:18,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:58:19,141.141 INFO    ] Initializing speech engine...
[2026-10-25 11:58:19,151.151 INFO    ] 2026-10-25 11:58:19
[2026-10-25 11:58:19,406.406 INFO    ] 2026-10-25 11:58:19
[2026-10-25 11:58:19,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:58:19,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:58:19,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:58:19,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:58:19,950.950 INFO    ] time= 25/10/2026 11:58:19
[2026-10-25 11:58:19,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:58:19,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:58:20,104.104 INFO    ] No existing commands found in stream
[2026-10-25 11:58:25,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:58:25,125.125 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 11:58:29,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:58:29,560.560 INFO    ] Checking for system updates...
[2026-10-25 11:58:29,600.600 INFO    ] 200
[2026-10-25 11:58:29,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:29,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:29,662.662 INFO    ] No update needed
[2026-10-25 11:58:29,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 11:58:29,699.699 INFO    ] 200
[2026-10-25 11:58:29,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:29,747.747 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:58:29,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:29,798.798 INFO    ] No camera update needed
[2026-10-25 11:58:29,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:58:29,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:58:29,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:58:29,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:58:31,853.853 INFO    ] ================================================
[2026-10-25 11:58:31,869.869 INFO    ] Launching Daemon at Sun Oct 25 11:58:31 IST 2026
[2026-10-25 11:58:31,881.881 INFO    ] ================================================
[2026-10-25 11:58:32,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:58:32
[2026-10-25 11:58:33,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:58:33,361.361 INFO    ] Initializing speech engine...
[2026-10-25 11:58:33,371.371 INFO    ] 2026-10-25 11:58:33
[2026-10-25 11:58:33,616.616 INFO    ] 2026-10-25 11:58:33
[2026-10-25 11:58:33,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:58:33,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:58:33,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:58:34,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:58:34,171.171 INFO    ] time= 25/10/2026 11:58:34
[2026-10-25 11:58:34,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:58:34,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:58:34,309.309 INFO    ] No existing commands found in stream
[2026-10-25 11:58:39,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:58:39,338.338 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 11:58:46,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:58:46,235.235 INFO    ] Checking for system updates...
[2026-10-25 11:58:46,273.273 INFO    ] 200
[2026-10-25 11:58:46,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:46,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:58:46,333.333 INFO    ] No update needed
[2026-10-25 11:58:46,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 11:58:46,374.374 INFO    ] 200
[2026-10-25 11:58:46,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:46,418.418 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:58:46,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:58:46,468.468 INFO    ] No camera update needed
[2026-10-25 11:58:46,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:58:46,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:58:46,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:58:46,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:58:48,526.526 INFO    ] ================================================
[2026-10-25 11:58:48,541.541 INFO    ] Launching Daemon at Sun Oct 25 11:58:48 IST 2026
[2026-10-25 11:58:48,552.552 INFO    ] ================================================
[2026-10-25 11:58:49,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:58:49
[2026-10-25 11:58:49,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:58:50,201.201 INFO    ] Initializing speech engine...
[2026-10-25 11:58:50,213.213 INFO    ] 2026-10-25 11:58:50
[2026-10-25 11:58:50,528.528 INFO    ] 2026-10-25 11:58:50
[2026-10-25 11:58:50,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:58:50,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:58:50,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:58:51,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:58:51,032.032 INFO    ] time= 25/10/2026 11:58:51
[2026-10-25 11:58:51,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:58:51,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:58:51,181.181 INFO    ] No existing commands found in stream
[2026-10-25 11:58:56,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:58:56,213.213 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 11:58:58,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 11:58:58,724.724 INFO    ] Checking for system updates...
[2026-10-25 11:58:58,766.766 INFO    ] 200
[2026-10-25 11:58:58,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:58,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:58,836.836 INFO    ] No update needed
[2026-10-25 11:58:58,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 11:58:58,878.878 INFO    ] 200
[2026-10-25 11:58:58,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:58:58,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:58:58,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 11:58:58,975.975 INFO    ] No camera update needed
[2026-10-25 11:58:58,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:58:58,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:58:58,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:58:58,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:59:01,036.036 INFO    ] ================================================
[2026-10-25 11:59:01,053.053 INFO    ] Launching Daemon at Sun Oct 25 11:59:01 IST 2026
[2026-10-25 11:59:01,064.064 INFO    ] ================================================
[2026-10-25 11:59:01,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:59:01
[2026-10-25 11:59:02,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:59:02,920.920 INFO    ] Initializing speech engine...
[2026-10-25 11:59:02,931.931 INFO    ] 2026-10-25 11:59:02
[2026-10-25 11:59:03,212.212 INFO    ] 2026-10-25 11:59:03
[2026-10-25 11:59:03,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:59:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:59:03,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:59:03,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:59:03,716.716 INFO    ] time= 25/10/2026 11:59:03
[2026-10-25 11:59:03,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:59:03,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:59:03,921.921 INFO    ] No existing commands found in stream
[2026-10-25 11:59:08,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:59:08,936.936 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 11:59:12,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:59:12,166.166 INFO    ] Checking for system updates...
[2026-10-25 11:59:12,202.202 INFO    ] 200
[2026-10-25 11:59:12,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:12,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:12,261.261 INFO    ] No update needed
[2026-10-25 11:59:12,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 11:59:12,297.297 INFO    ] 200
[2026-10-25 11:59:12,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:12,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:59:12,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:12,392.392 INFO    ] No camera update needed
[2026-10-25 11:59:12,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:59:12,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:59:12,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:59:12,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:59:14,446.446 INFO    ] ================================================
[2026-10-25 11:59:14,462.462 INFO    ] Launching Daemon at Sun Oct 25 11:59:14 IST 2026
[2026-10-25 11:59:14,473.473 INFO    ] ================================================
[2026-10-25 11:59:15,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:59:15
[2026-10-25 11:59:15,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:59:15,886.886 INFO    ] Initializing speech engine...
[2026-10-25 11:59:15,909.909 INFO    ] 2026-10-25 11:59:15
[2026-10-25 11:59:16,165.165 INFO    ] 2026-10-25 11:59:16
[2026-10-25 11:59:16,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:59:17,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:59:17,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:59:17,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:59:17,519.519 INFO    ] time= 25/10/2026 11:59:17
[2026-10-25 11:59:17,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:59:17,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:59:17,595.595 INFO    ] No existing commands found in stream
[2026-10-25 11:59:22,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:59:22,609.609 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 11:59:27,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 11:59:27,375.375 INFO    ] Checking for system updates...
[2026-10-25 11:59:27,412.412 INFO    ] 200
[2026-10-25 11:59:27,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:27,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:27,481.481 INFO    ] No update needed
[2026-10-25 11:59:27,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 11:59:27,517.517 INFO    ] 200
[2026-10-25 11:59:27,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:27,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:59:27,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:27,728.728 INFO    ] No camera update needed
[2026-10-25 11:59:27,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:59:27,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:59:27,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:59:27,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:59:29,787.787 INFO    ] ================================================
[2026-10-25 11:59:29,803.803 INFO    ] Launching Daemon at Sun Oct 25 11:59:29 IST 2026
[2026-10-25 11:59:29,814.814 INFO    ] ================================================
[2026-10-25 11:59:30,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:59:30
[2026-10-25 11:59:30,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:59:31,209.209 INFO    ] Initializing speech engine...
[2026-10-25 11:59:31,222.222 INFO    ] 2026-10-25 11:59:31
[2026-10-25 11:59:31,484.484 INFO    ] 2026-10-25 11:59:31
[2026-10-25 11:59:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:59:31,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:59:31,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:59:31,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:59:31,941.941 INFO    ] time= 25/10/2026 11:59:31
[2026-10-25 11:59:32,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:59:32,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:59:32,129.129 INFO    ] No existing commands found in stream
[2026-10-25 11:59:37,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:59:37,145.145 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 11:59:38,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 11:59:38,271.271 INFO    ] Checking for system updates...
[2026-10-25 11:59:38,308.308 INFO    ] 200
[2026-10-25 11:59:38,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:38,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:38,370.370 INFO    ] No update needed
[2026-10-25 11:59:38,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 11:59:38,413.413 INFO    ] 200
[2026-10-25 11:59:38,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:38,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:59:38,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:38,504.504 INFO    ] No camera update needed
[2026-10-25 11:59:38,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:59:38,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:59:38,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:59:38,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:59:40,563.563 INFO    ] ================================================
[2026-10-25 11:59:40,578.578 INFO    ] Launching Daemon at Sun Oct 25 11:59:40 IST 2026
[2026-10-25 11:59:40,589.589 INFO    ] ================================================
[2026-10-25 11:59:41,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:59:41
[2026-10-25 11:59:41,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:59:42,010.010 INFO    ] Initializing speech engine...
[2026-10-25 11:59:42,019.019 INFO    ] 2026-10-25 11:59:42
[2026-10-25 11:59:42,263.263 INFO    ] 2026-10-25 11:59:42
[2026-10-25 11:59:42,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:59:42,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:59:42,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:59:42,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:59:42,753.753 INFO    ] time= 25/10/2026 11:59:42
[2026-10-25 11:59:42,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:59:42,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:59:42,961.961 INFO    ] No existing commands found in stream
[2026-10-25 11:59:47,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:59:47,995.995 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 11:59:49,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 11:59:49,603.603 INFO    ] Checking for system updates...
[2026-10-25 11:59:49,642.642 INFO    ] 200
[2026-10-25 11:59:49,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:49,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:49,704.704 INFO    ] No update needed
[2026-10-25 11:59:49,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 11:59:49,746.746 INFO    ] 200
[2026-10-25 11:59:49,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 11:59:49,797.797 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 11:59:49,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 11:59:49,848.848 INFO    ] No camera update needed
[2026-10-25 11:59:49,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 11:59:49,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 11:59:49,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 11:59:49,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 11:59:51,906.906 INFO    ] ================================================
[2026-10-25 11:59:51,922.922 INFO    ] Launching Daemon at Sun Oct 25 11:59:51 IST 2026
[2026-10-25 11:59:51,933.933 INFO    ] ================================================
[2026-10-25 11:59:52,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 11:59:52
[2026-10-25 11:59:53,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 11:59:53,374.374 INFO    ] Initializing speech engine...
[2026-10-25 11:59:53,382.382 INFO    ] 2026-10-25 11:59:53
[2026-10-25 11:59:53,631.631 INFO    ] 2026-10-25 11:59:53
[2026-10-25 11:59:53,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 11:59:53,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 11:59:53,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 11:59:54,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 11:59:54,164.164 INFO    ] time= 25/10/2026 11:59:54
[2026-10-25 11:59:54,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 11:59:54,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 11:59:54,321.321 INFO    ] No existing commands found in stream
[2026-10-25 11:59:59,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 11:59:59,348.348 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 12:00:03,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:00:03,508.508 INFO    ] Checking for system updates...
[2026-10-25 12:00:03,686.686 INFO    ] 200
[2026-10-25 12:00:03,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:04,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:00:04,027.027 INFO    ] No update needed
[2026-10-25 12:00:04,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 12:00:04,138.138 INFO    ] 200
[2026-10-25 12:00:04,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:04,379.379 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:00:04,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:00:04,471.471 INFO    ] No camera update needed
[2026-10-25 12:00:04,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:00:04,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:00:04,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:00:04,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:00:06,595.595 INFO    ] ================================================
[2026-10-25 12:00:06,610.610 INFO    ] Launching Daemon at Sun Oct 25 12:00:06 IST 2026
[2026-10-25 12:00:06,621.621 INFO    ] ================================================
[2026-10-25 12:00:07,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:00:07
[2026-10-25 12:00:07,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:00:08,202.202 INFO    ] Initializing speech engine...
[2026-10-25 12:00:08,210.210 INFO    ] 2026-10-25 12:00:08
[2026-10-25 12:00:08,487.487 INFO    ] 2026-10-25 12:00:08
[2026-10-25 12:00:08,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:00:08,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:00:08,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:00:08,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:00:08,878.878 INFO    ] time= 25/10/2026 12:00:08
[2026-10-25 12:00:08,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:00:08,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:00:09,051.051 INFO    ] No existing commands found in stream
[2026-10-25 12:00:14,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:00:14,075.075 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 12:00:19,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:00:19,424.424 INFO    ] Checking for system updates...
[2026-10-25 12:00:19,461.461 INFO    ] 200
[2026-10-25 12:00:19,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:19,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:19,523.523 INFO    ] No update needed
[2026-10-25 12:00:19,525.525 INFO    ] Checking for camera pi updates...
[2026-10-25 12:00:19,559.559 INFO    ] 200
[2026-10-25 12:00:19,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:19,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:00:19,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:19,654.654 INFO    ] No camera update needed
[2026-10-25 12:00:19,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:00:19,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:00:19,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:00:19,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:00:21,715.715 INFO    ] ================================================
[2026-10-25 12:00:21,733.733 INFO    ] Launching Daemon at Sun Oct 25 12:00:21 IST 2026
[2026-10-25 12:00:21,745.745 INFO    ] ================================================
[2026-10-25 12:00:22,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:00:22
[2026-10-25 12:00:22,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:00:23,145.145 INFO    ] Initializing speech engine...
[2026-10-25 12:00:23,158.158 INFO    ] 2026-10-25 12:00:23
[2026-10-25 12:00:23,419.419 INFO    ] 2026-10-25 12:00:23
[2026-10-25 12:00:23,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:00:23,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:00:23,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:00:23,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:00:23,788.788 INFO    ] time= 25/10/2026 12:00:23
[2026-10-25 12:00:23,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:00:23,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:00:23,970.970 INFO    ] No existing commands found in stream
[2026-10-25 12:00:28,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:00:28,997.997 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 12:00:29,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:00:29,937.937 INFO    ] Checking for system updates...
[2026-10-25 12:00:29,974.974 INFO    ] 200
[2026-10-25 12:00:29,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:30,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:30,032.032 INFO    ] No update needed
[2026-10-25 12:00:30,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 12:00:30,068.068 INFO    ] 200
[2026-10-25 12:00:30,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:30,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:00:30,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:30,166.166 INFO    ] No camera update needed
[2026-10-25 12:00:30,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:00:30,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:00:30,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:00:30,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:00:32,223.223 INFO    ] ================================================
[2026-10-25 12:00:32,240.240 INFO    ] Launching Daemon at Sun Oct 25 12:00:32 IST 2026
[2026-10-25 12:00:32,253.253 INFO    ] ================================================
[2026-10-25 12:00:32,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:00:32
[2026-10-25 12:00:33,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:00:33,853.853 INFO    ] Initializing speech engine...
[2026-10-25 12:00:33,865.865 INFO    ] 2026-10-25 12:00:33
[2026-10-25 12:00:34,145.145 INFO    ] 2026-10-25 12:00:34
[2026-10-25 12:00:34,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:00:34,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:00:34,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:00:34,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:00:34,693.693 INFO    ] time= 25/10/2026 12:00:34
[2026-10-25 12:00:34,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:00:34,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:00:34,833.833 INFO    ] No existing commands found in stream
[2026-10-25 12:00:39,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:00:39,859.859 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 12:00:43,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:00:43,253.253 INFO    ] Checking for system updates...
[2026-10-25 12:00:43,290.290 INFO    ] 200
[2026-10-25 12:00:43,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:43,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:43,353.353 INFO    ] No update needed
[2026-10-25 12:00:43,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 12:00:43,391.391 INFO    ] 200
[2026-10-25 12:00:43,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:43,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:00:43,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:43,473.473 INFO    ] No camera update needed
[2026-10-25 12:00:43,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:00:43,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:00:43,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:00:43,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:00:45,531.531 INFO    ] ================================================
[2026-10-25 12:00:45,546.546 INFO    ] Launching Daemon at Sun Oct 25 12:00:45 IST 2026
[2026-10-25 12:00:45,557.557 INFO    ] ================================================
[2026-10-25 12:00:46,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:00:46
[2026-10-25 12:00:46,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:00:46,978.978 INFO    ] Initializing speech engine...
[2026-10-25 12:00:46,984.984 INFO    ] 2026-10-25 12:00:46
[2026-10-25 12:00:47,229.229 INFO    ] 2026-10-25 12:00:47
[2026-10-25 12:00:47,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:00:49,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:00:49,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:00:50,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:00:50,124.124 INFO    ] time= 25/10/2026 12:00:50
[2026-10-25 12:00:50,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:00:50,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:00:50,184.184 INFO    ] No existing commands found in stream
[2026-10-25 12:00:55,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:00:55,195.195 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 12:00:56,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:00:56,514.514 INFO    ] Checking for system updates...
[2026-10-25 12:00:56,550.550 INFO    ] 200
[2026-10-25 12:00:56,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:56,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:56,608.608 INFO    ] No update needed
[2026-10-25 12:00:56,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 12:00:56,645.645 INFO    ] 200
[2026-10-25 12:00:56,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:00:56,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:00:56,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:00:56,746.746 INFO    ] No camera update needed
[2026-10-25 12:00:56,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:00:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:00:56,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:00:56,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:00:58,804.804 INFO    ] ================================================
[2026-10-25 12:00:58,819.819 INFO    ] Launching Daemon at Sun Oct 25 12:00:58 IST 2026
[2026-10-25 12:00:58,830.830 INFO    ] ================================================
[2026-10-25 12:00:59,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:00:59
[2026-10-25 12:01:00,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:01:00,474.474 INFO    ] Initializing speech engine...
[2026-10-25 12:01:00,488.488 INFO    ] 2026-10-25 12:01:00
[2026-10-25 12:01:00,774.774 INFO    ] 2026-10-25 12:01:00
[2026-10-25 12:01:00,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:01:01,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:01:01,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:01:01,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:01:01,304.304 INFO    ] time= 25/10/2026 12:01:01
[2026-10-25 12:01:01,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:01:01,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:01:01,455.455 INFO    ] No existing commands found in stream
[2026-10-25 12:01:06,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:01:06,472.472 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 12:01:08,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:01:08,904.904 INFO    ] Checking for system updates...
[2026-10-25 12:01:08,945.945 INFO    ] 200
[2026-10-25 12:01:08,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:09,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:01:09,012.012 INFO    ] No update needed
[2026-10-25 12:01:09,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 12:01:09,049.049 INFO    ] 200
[2026-10-25 12:01:09,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:09,099.099 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:01:09,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:01:09,149.149 INFO    ] No camera update needed
[2026-10-25 12:01:09,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:01:09,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:01:09,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:01:09,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:01:11,209.209 INFO    ] ================================================
[2026-10-25 12:01:11,224.224 INFO    ] Launching Daemon at Sun Oct 25 12:01:11 IST 2026
[2026-10-25 12:01:11,235.235 INFO    ] ================================================
[2026-10-25 12:01:11,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:01:11
[2026-10-25 12:01:12,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:01:12,662.662 INFO    ] Initializing speech engine...
[2026-10-25 12:01:12,671.671 INFO    ] 2026-10-25 12:01:12
[2026-10-25 12:01:12,917.917 INFO    ] 2026-10-25 12:01:12
[2026-10-25 12:01:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:01:13,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:01:13,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:01:13,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:01:13,369.369 INFO    ] time= 25/10/2026 12:01:13
[2026-10-25 12:01:13,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:01:13,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:01:13,588.588 INFO    ] No existing commands found in stream
[2026-10-25 12:01:18,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:01:18,603.603 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 12:01:21,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:01:21,866.866 INFO    ] Checking for system updates...
[2026-10-25 12:01:21,903.903 INFO    ] 200
[2026-10-25 12:01:21,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:21,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:21,970.970 INFO    ] No update needed
[2026-10-25 12:01:21,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 12:01:22,007.007 INFO    ] 200
[2026-10-25 12:01:22,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:22,053.053 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:01:22,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:22,114.114 INFO    ] No camera update needed
[2026-10-25 12:01:22,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:01:22,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:01:22,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:01:22,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:01:24,172.172 INFO    ] ================================================
[2026-10-25 12:01:24,188.188 INFO    ] Launching Daemon at Sun Oct 25 12:01:24 IST 2026
[2026-10-25 12:01:24,200.200 INFO    ] ================================================
[2026-10-25 12:01:24,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:01:24
[2026-10-25 12:01:25,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:01:25,609.609 INFO    ] Initializing speech engine...
[2026-10-25 12:01:25,615.615 INFO    ] 2026-10-25 12:01:25
[2026-10-25 12:01:25,912.912 INFO    ] 2026-10-25 12:01:25
[2026-10-25 12:01:25,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:01:26,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:01:26,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:01:26,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:01:26,334.334 INFO    ] time= 25/10/2026 12:01:26
[2026-10-25 12:01:26,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:01:26,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:01:26,510.510 INFO    ] No existing commands found in stream
[2026-10-25 12:01:31,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:01:31,538.538 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 12:01:32,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:01:32,448.448 INFO    ] Checking for system updates...
[2026-10-25 12:01:32,489.489 INFO    ] 200
[2026-10-25 12:01:32,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:32,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:32,556.556 INFO    ] No update needed
[2026-10-25 12:01:32,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 12:01:32,597.597 INFO    ] 200
[2026-10-25 12:01:32,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:32,646.646 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:01:32,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:32,701.701 INFO    ] No camera update needed
[2026-10-25 12:01:32,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:01:32,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:01:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:01:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:01:34,763.763 INFO    ] ================================================
[2026-10-25 12:01:34,779.779 INFO    ] Launching Daemon at Sun Oct 25 12:01:34 IST 2026
[2026-10-25 12:01:34,790.790 INFO    ] ================================================
[2026-10-25 12:01:35,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:01:35
[2026-10-25 12:01:36,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:01:36,380.380 INFO    ] Initializing speech engine...
[2026-10-25 12:01:36,387.387 INFO    ] 2026-10-25 12:01:36
[2026-10-25 12:01:36,646.646 INFO    ] 2026-10-25 12:01:36
[2026-10-25 12:01:36,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:01:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:01:36,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:01:37,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:01:37,134.134 INFO    ] time= 25/10/2026 12:01:37
[2026-10-25 12:01:37,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:01:37,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:01:37,326.326 INFO    ] No existing commands found in stream
[2026-10-25 12:01:42,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:01:42,354.354 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 12:01:43,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:01:43,994.994 INFO    ] Checking for system updates...
[2026-10-25 12:01:44,031.031 INFO    ] 200
[2026-10-25 12:01:44,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:44,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:44,092.092 INFO    ] No update needed
[2026-10-25 12:01:44,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 12:01:44,129.129 INFO    ] 200
[2026-10-25 12:01:44,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:01:44,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:01:44,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:01:44,221.221 INFO    ] No camera update needed
[2026-10-25 12:01:44,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:01:44,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:01:44,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:01:44,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:01:46,278.278 INFO    ] ================================================
[2026-10-25 12:01:46,294.294 INFO    ] Launching Daemon at Sun Oct 25 12:01:46 IST 2026
[2026-10-25 12:01:46,305.305 INFO    ] ================================================
[2026-10-25 12:01:46,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:01:46
[2026-10-25 12:01:47,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:01:47,757.757 INFO    ] Initializing speech engine...
[2026-10-25 12:01:47,766.766 INFO    ] 2026-10-25 12:01:47
[2026-10-25 12:01:48,016.016 INFO    ] 2026-10-25 12:01:48
[2026-10-25 12:01:48,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:01:48,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:01:48,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:01:52,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:01:52,176.176 INFO    ] time= 25/10/2026 12:01:52
[2026-10-25 12:01:52,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:01:52,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:01:52,244.244 INFO    ] No existing commands found in stream
[2026-10-25 12:01:57,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:01:57,256.256 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 12:02:00,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:02:00,818.818 INFO    ] Checking for system updates...
[2026-10-25 12:02:00,858.858 INFO    ] 200
[2026-10-25 12:02:00,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:00,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:00,918.918 INFO    ] No update needed
[2026-10-25 12:02:00,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 12:02:00,958.958 INFO    ] 200
[2026-10-25 12:02:00,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:01,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:02:01,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:01,065.065 INFO    ] No camera update needed
[2026-10-25 12:02:01,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:02:01,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:02:01,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:02:01,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:02:03,124.124 INFO    ] ================================================
[2026-10-25 12:02:03,140.140 INFO    ] Launching Daemon at Sun Oct 25 12:02:03 IST 2026
[2026-10-25 12:02:03,152.152 INFO    ] ================================================
[2026-10-25 12:02:03,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:02:03
[2026-10-25 12:02:04,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:02:04,615.615 INFO    ] Initializing speech engine...
[2026-10-25 12:02:04,622.622 INFO    ] 2026-10-25 12:02:04
[2026-10-25 12:02:04,884.884 INFO    ] 2026-10-25 12:02:04
[2026-10-25 12:02:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:02:05,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:02:05,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:02:05,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:02:05,365.365 INFO    ] time= 25/10/2026 12:02:05
[2026-10-25 12:02:05,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:02:05,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:02:05,559.559 INFO    ] No existing commands found in stream
[2026-10-25 12:02:10,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:02:10,592.592 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 12:02:14,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:02:14,590.590 INFO    ] Checking for system updates...
[2026-10-25 12:02:14,627.627 INFO    ] 200
[2026-10-25 12:02:14,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:14,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:14,695.695 INFO    ] No update needed
[2026-10-25 12:02:14,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 12:02:14,732.732 INFO    ] 200
[2026-10-25 12:02:14,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:14,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:02:14,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:14,836.836 INFO    ] No camera update needed
[2026-10-25 12:02:14,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:02:14,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:02:14,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:02:14,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:02:16,898.898 INFO    ] ================================================
[2026-10-25 12:02:16,915.915 INFO    ] Launching Daemon at Sun Oct 25 12:02:16 IST 2026
[2026-10-25 12:02:16,927.927 INFO    ] ================================================
[2026-10-25 12:02:17,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:02:17
[2026-10-25 12:02:18,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:02:18,401.401 INFO    ] Initializing speech engine...
[2026-10-25 12:02:18,408.408 INFO    ] 2026-10-25 12:02:18
[2026-10-25 12:02:18,689.689 INFO    ] 2026-10-25 12:02:18
[2026-10-25 12:02:18,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:02:18,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:02:18,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:02:19,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:02:19,139.139 INFO    ] time= 25/10/2026 12:02:19
[2026-10-25 12:02:19,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:02:19,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:02:19,231.231 INFO    ] No existing commands found in stream
[2026-10-25 12:02:24,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:02:24,246.246 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 12:02:25,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:02:25,949.949 INFO    ] Checking for system updates...
[2026-10-25 12:02:25,986.986 INFO    ] 200
[2026-10-25 12:02:25,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:26,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:02:26,054.054 INFO    ] No update needed
[2026-10-25 12:02:26,056.056 INFO    ] Checking for camera pi updates...
[2026-10-25 12:02:26,092.092 INFO    ] 200
[2026-10-25 12:02:26,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:26,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:02:26,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:02:26,198.198 INFO    ] No camera update needed
[2026-10-25 12:02:26,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:02:26,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:02:26,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:02:26,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:02:28,256.256 INFO    ] ================================================
[2026-10-25 12:02:28,272.272 INFO    ] Launching Daemon at Sun Oct 25 12:02:28 IST 2026
[2026-10-25 12:02:28,284.284 INFO    ] ================================================
[2026-10-25 12:02:28,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:02:28
[2026-10-25 12:02:29,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:02:29,746.746 INFO    ] Initializing speech engine...
[2026-10-25 12:02:29,755.755 INFO    ] 2026-10-25 12:02:29
[2026-10-25 12:02:30,009.009 INFO    ] 2026-10-25 12:02:30
[2026-10-25 12:02:30,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:02:30,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:02:30,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:02:30,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:02:30,511.511 INFO    ] time= 25/10/2026 12:02:30
[2026-10-25 12:02:30,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:02:30,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:02:30,721.721 INFO    ] No existing commands found in stream
[2026-10-25 12:02:35,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:02:35,749.749 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 12:02:36,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:02:36,401.401 INFO    ] Checking for system updates...
[2026-10-25 12:02:36,445.445 INFO    ] 200
[2026-10-25 12:02:36,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:36,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:36,529.529 INFO    ] No update needed
[2026-10-25 12:02:36,532.532 INFO    ] Checking for camera pi updates...
[2026-10-25 12:02:36,591.591 INFO    ] 200
[2026-10-25 12:02:36,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:36,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:02:36,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:02:36,701.701 INFO    ] No camera update needed
[2026-10-25 12:02:36,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:02:36,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:02:36,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:02:36,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:02:38,765.765 INFO    ] ================================================
[2026-10-25 12:02:38,795.795 INFO    ] Launching Daemon at Sun Oct 25 12:02:38 IST 2026
[2026-10-25 12:02:38,813.813 INFO    ] ================================================
[2026-10-25 12:02:39,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:02:39
[2026-10-25 12:02:39,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:02:40,267.267 INFO    ] Initializing speech engine...
[2026-10-25 12:02:40,274.274 INFO    ] 2026-10-25 12:02:40
[2026-10-25 12:02:40,533.533 INFO    ] 2026-10-25 12:02:40
[2026-10-25 12:02:40,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:02:40,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:02:40,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:02:40,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:02:40,996.996 INFO    ] time= 25/10/2026 12:02:40
[2026-10-25 12:02:41,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:02:41,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:02:41,194.194 INFO    ] No existing commands found in stream
[2026-10-25 12:02:46,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:02:46,211.211 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 12:02:49,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:02:49,761.761 INFO    ] Checking for system updates...
[2026-10-25 12:02:49,799.799 INFO    ] 200
[2026-10-25 12:02:49,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:49,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:02:49,860.860 INFO    ] No update needed
[2026-10-25 12:02:49,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 12:02:49,905.905 INFO    ] 200
[2026-10-25 12:02:49,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:02:49,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:02:49,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:02:50,000.000 INFO    ] No camera update needed
[2026-10-25 12:02:50,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:02:50,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:02:50,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:02:50,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:02:52,059.059 INFO    ] ================================================
[2026-10-25 12:02:52,076.076 INFO    ] Launching Daemon at Sun Oct 25 12:02:52 IST 2026
[2026-10-25 12:02:52,088.088 INFO    ] ================================================
[2026-10-25 12:02:52,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:02:52
[2026-10-25 12:02:53,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:02:53,543.543 INFO    ] Initializing speech engine...
[2026-10-25 12:02:53,552.552 INFO    ] 2026-10-25 12:02:53
[2026-10-25 12:02:53,805.805 INFO    ] 2026-10-25 12:02:53
[2026-10-25 12:02:53,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:02:54,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:02:54,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:02:54,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:02:54,946.946 INFO    ] time= 25/10/2026 12:02:54
[2026-10-25 12:02:54,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:02:54,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:02:55,065.065 INFO    ] No existing commands found in stream
[2026-10-25 12:03:00,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:03:00,080.080 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 12:03:04,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:03:04,054.054 INFO    ] Checking for system updates...
[2026-10-25 12:03:04,095.095 INFO    ] 200
[2026-10-25 12:03:04,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:04,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:04,157.157 INFO    ] No update needed
[2026-10-25 12:03:04,159.159 INFO    ] Checking for camera pi updates...
[2026-10-25 12:03:04,194.194 INFO    ] 200
[2026-10-25 12:03:04,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:04,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:03:04,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:04,295.295 INFO    ] No camera update needed
[2026-10-25 12:03:04,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:03:04,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:03:04,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:03:04,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:03:06,354.354 INFO    ] ================================================
[2026-10-25 12:03:06,370.370 INFO    ] Launching Daemon at Sun Oct 25 12:03:06 IST 2026
[2026-10-25 12:03:06,381.381 INFO    ] ================================================
[2026-10-25 12:03:06,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:03:06
[2026-10-25 12:03:07,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:03:07,881.881 INFO    ] Initializing speech engine...
[2026-10-25 12:03:07,891.891 INFO    ] 2026-10-25 12:03:07
[2026-10-25 12:03:08,160.160 INFO    ] 2026-10-25 12:03:08
[2026-10-25 12:03:08,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:03:08,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:03:08,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:03:08,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:03:08,714.714 INFO    ] time= 25/10/2026 12:03:08
[2026-10-25 12:03:08,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:03:08,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:03:08,861.861 INFO    ] No existing commands found in stream
[2026-10-25 12:03:13,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:03:13,893.893 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 12:03:14,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:03:14,356.356 INFO    ] Checking for system updates...
[2026-10-25 12:03:14,396.396 INFO    ] 200
[2026-10-25 12:03:14,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:14,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:14,461.461 INFO    ] No update needed
[2026-10-25 12:03:14,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 12:03:14,502.502 INFO    ] 200
[2026-10-25 12:03:14,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:14,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:03:14,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:14,616.616 INFO    ] No camera update needed
[2026-10-25 12:03:14,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:03:14,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:03:14,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:03:14,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:03:16,674.674 INFO    ] ================================================
[2026-10-25 12:03:16,690.690 INFO    ] Launching Daemon at Sun Oct 25 12:03:16 IST 2026
[2026-10-25 12:03:16,702.702 INFO    ] ================================================
[2026-10-25 12:03:17,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:03:17
[2026-10-25 12:03:18,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:03:18,377.377 INFO    ] Initializing speech engine...
[2026-10-25 12:03:18,389.389 INFO    ] 2026-10-25 12:03:18
[2026-10-25 12:03:18,658.658 INFO    ] 2026-10-25 12:03:18
[2026-10-25 12:03:18,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:03:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:03:19,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:03:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:03:19,236.236 INFO    ] time= 25/10/2026 12:03:19
[2026-10-25 12:03:19,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:03:19,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:03:19,400.400 INFO    ] No existing commands found in stream
[2026-10-25 12:03:24,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:03:24,425.425 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 12:03:27,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:03:27,197.197 INFO    ] Checking for system updates...
[2026-10-25 12:03:27,236.236 INFO    ] 200
[2026-10-25 12:03:27,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:27,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:27,313.313 INFO    ] No update needed
[2026-10-25 12:03:27,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 12:03:27,357.357 INFO    ] 200
[2026-10-25 12:03:27,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:27,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:03:27,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:03:27,454.454 INFO    ] No camera update needed
[2026-10-25 12:03:27,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:03:27,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:03:27,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:03:27,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:03:29,514.514 INFO    ] ================================================
[2026-10-25 12:03:29,534.534 INFO    ] Launching Daemon at Sun Oct 25 12:03:29 IST 2026
[2026-10-25 12:03:29,545.545 INFO    ] ================================================
[2026-10-25 12:03:30,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:03:30
[2026-10-25 12:03:30,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:03:31,264.264 INFO    ] Initializing speech engine...
[2026-10-25 12:03:31,282.282 INFO    ] 2026-10-25 12:03:31
[2026-10-25 12:03:31,615.615 INFO    ] 2026-10-25 12:03:31
[2026-10-25 12:03:31,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:03:31,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:03:31,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:03:31,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:03:32,001.001 INFO    ] time= 25/10/2026 12:03:31
[2026-10-25 12:03:32,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:03:32,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:03:32,091.091 INFO    ] No existing commands found in stream
[2026-10-25 12:03:37,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:03:37,104.104 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 12:03:39,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:03:39,295.295 INFO    ] Checking for system updates...
[2026-10-25 12:03:39,334.334 INFO    ] 200
[2026-10-25 12:03:39,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:39,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:03:39,397.397 INFO    ] No update needed
[2026-10-25 12:03:39,399.399 INFO    ] Checking for camera pi updates...
[2026-10-25 12:03:39,437.437 INFO    ] 200
[2026-10-25 12:03:39,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:39,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:03:39,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:03:39,535.535 INFO    ] No camera update needed
[2026-10-25 12:03:39,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:03:39,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:03:39,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:03:39,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:03:41,597.597 INFO    ] ================================================
[2026-10-25 12:03:41,614.614 INFO    ] Launching Daemon at Sun Oct 25 12:03:41 IST 2026
[2026-10-25 12:03:41,626.626 INFO    ] ================================================
[2026-10-25 12:03:42,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:03:42
[2026-10-25 12:03:42,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:03:43,276.276 INFO    ] Initializing speech engine...
[2026-10-25 12:03:43,290.290 INFO    ] 2026-10-25 12:03:43
[2026-10-25 12:03:43,576.576 INFO    ] 2026-10-25 12:03:43
[2026-10-25 12:03:43,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:03:43,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:03:43,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:03:44,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:03:44,121.121 INFO    ] time= 25/10/2026 12:03:44
[2026-10-25 12:03:44,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:03:44,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:03:44,285.285 INFO    ] No existing commands found in stream
[2026-10-25 12:03:49,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:03:49,315.315 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 12:03:56,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:03:56,561.561 INFO    ] Checking for system updates...
[2026-10-25 12:03:56,600.600 INFO    ] 200
[2026-10-25 12:03:56,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:56,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:03:56,664.664 INFO    ] No update needed
[2026-10-25 12:03:56,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 12:03:56,705.705 INFO    ] 200
[2026-10-25 12:03:56,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:03:56,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:03:56,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:03:56,822.822 INFO    ] No camera update needed
[2026-10-25 12:03:56,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:03:56,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:03:56,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:03:56,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:03:58,884.884 INFO    ] ================================================
[2026-10-25 12:03:58,901.901 INFO    ] Launching Daemon at Sun Oct 25 12:03:58 IST 2026
[2026-10-25 12:03:58,912.912 INFO    ] ================================================
[2026-10-25 12:03:59,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:03:59
[2026-10-25 12:04:00,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:04:00,377.377 INFO    ] Initializing speech engine...
[2026-10-25 12:04:00,387.387 INFO    ] 2026-10-25 12:04:00
[2026-10-25 12:04:00,687.687 INFO    ] 2026-10-25 12:04:00
[2026-10-25 12:04:00,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:04:00,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:04:00,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:04:01,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:04:01,044.044 INFO    ] time= 25/10/2026 12:04:01
[2026-10-25 12:04:01,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:04:01,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:04:01,130.130 INFO    ] No existing commands found in stream
[2026-10-25 12:04:06,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:04:06,146.146 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 12:04:08,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:04:08,935.935 INFO    ] Checking for system updates...
[2026-10-25 12:04:08,983.983 INFO    ] 200
[2026-10-25 12:04:08,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:09,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:09,047.047 INFO    ] No update needed
[2026-10-25 12:04:09,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 12:04:09,085.085 INFO    ] 200
[2026-10-25 12:04:09,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:09,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:04:09,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:09,187.187 INFO    ] No camera update needed
[2026-10-25 12:04:09,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:04:09,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:04:09,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:04:09,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:04:11,247.247 INFO    ] ================================================
[2026-10-25 12:04:11,263.263 INFO    ] Launching Daemon at Sun Oct 25 12:04:11 IST 2026
[2026-10-25 12:04:11,275.275 INFO    ] ================================================
[2026-10-25 12:04:11,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:04:11
[2026-10-25 12:04:12,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:04:12,776.776 INFO    ] Initializing speech engine...
[2026-10-25 12:04:12,782.782 INFO    ] 2026-10-25 12:04:12
[2026-10-25 12:04:13,046.046 INFO    ] 2026-10-25 12:04:13
[2026-10-25 12:04:13,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:04:13,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:04:13,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:04:13,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:04:13,595.595 INFO    ] time= 25/10/2026 12:04:13
[2026-10-25 12:04:13,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:04:13,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:04:13,771.771 INFO    ] No existing commands found in stream
[2026-10-25 12:04:18,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:04:18,799.799 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 12:04:22,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:04:22,474.474 INFO    ] Checking for system updates...
[2026-10-25 12:04:22,512.512 INFO    ] 200
[2026-10-25 12:04:22,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:22,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:22,574.574 INFO    ] No update needed
[2026-10-25 12:04:22,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 12:04:22,616.616 INFO    ] 200
[2026-10-25 12:04:22,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:22,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:04:22,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:22,715.715 INFO    ] No camera update needed
[2026-10-25 12:04:22,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:04:22,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:04:22,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:04:22,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:04:24,776.776 INFO    ] ================================================
[2026-10-25 12:04:24,799.799 INFO    ] Launching Daemon at Sun Oct 25 12:04:24 IST 2026
[2026-10-25 12:04:24,813.813 INFO    ] ================================================
[2026-10-25 12:04:25,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:04:25
[2026-10-25 12:04:26,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:04:26,319.319 INFO    ] Initializing speech engine...
[2026-10-25 12:04:26,326.326 INFO    ] 2026-10-25 12:04:26
[2026-10-25 12:04:26,626.626 INFO    ] 2026-10-25 12:04:26
[2026-10-25 12:04:26,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:04:27,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:04:27,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:04:27,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:04:27,674.674 INFO    ] time= 25/10/2026 12:04:27
[2026-10-25 12:04:27,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:04:27,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:04:27,870.870 INFO    ] No existing commands found in stream
[2026-10-25 12:04:32,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:04:32,883.883 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 12:04:37,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:04:37,223.223 INFO    ] Checking for system updates...
[2026-10-25 12:04:37,266.266 INFO    ] 200
[2026-10-25 12:04:37,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:37,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:37,333.333 INFO    ] No update needed
[2026-10-25 12:04:37,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 12:04:37,371.371 INFO    ] 200
[2026-10-25 12:04:37,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:37,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:04:37,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:04:37,488.488 INFO    ] No camera update needed
[2026-10-25 12:04:37,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:04:37,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:04:37,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:04:37,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:04:39,553.553 INFO    ] ================================================
[2026-10-25 12:04:39,569.569 INFO    ] Launching Daemon at Sun Oct 25 12:04:39 IST 2026
[2026-10-25 12:04:39,582.582 INFO    ] ================================================
[2026-10-25 12:04:40,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:04:40
[2026-10-25 12:04:40,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:04:41,062.062 INFO    ] Initializing speech engine...
[2026-10-25 12:04:41,071.071 INFO    ] 2026-10-25 12:04:41
[2026-10-25 12:04:41,382.382 INFO    ] 2026-10-25 12:04:41
[2026-10-25 12:04:41,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:04:41,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:04:41,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:04:41,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:04:41,829.829 INFO    ] time= 25/10/2026 12:04:41
[2026-10-25 12:04:41,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:04:41,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:04:41,921.921 INFO    ] No existing commands found in stream
[2026-10-25 12:04:46,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:04:46,936.936 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 12:04:51,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:04:51,229.229 INFO    ] Checking for system updates...
[2026-10-25 12:04:51,267.267 INFO    ] 200
[2026-10-25 12:04:51,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:51,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:04:51,329.329 INFO    ] No update needed
[2026-10-25 12:04:51,332.332 INFO    ] Checking for camera pi updates...
[2026-10-25 12:04:51,367.367 INFO    ] 200
[2026-10-25 12:04:51,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:04:51,417.417 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:04:51,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:04:51,484.484 INFO    ] No camera update needed
[2026-10-25 12:04:51,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:04:51,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:04:51,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:04:51,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:04:53,540.540 INFO    ] ================================================
[2026-10-25 12:04:53,557.557 INFO    ] Launching Daemon at Sun Oct 25 12:04:53 IST 2026
[2026-10-25 12:04:53,569.569 INFO    ] ================================================
[2026-10-25 12:04:54,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:04:54
[2026-10-25 12:04:54,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:04:55,255.255 INFO    ] Initializing speech engine...
[2026-10-25 12:04:55,269.269 INFO    ] 2026-10-25 12:04:55
[2026-10-25 12:04:55,560.560 INFO    ] 2026-10-25 12:04:55
[2026-10-25 12:04:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:04:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:04:58,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:04:58,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:04:58,665.665 INFO    ] time= 25/10/2026 12:04:58
[2026-10-25 12:04:58,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:04:58,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:04:58,729.729 INFO    ] No existing commands found in stream
[2026-10-25 12:05:03,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:05:03,743.743 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 12:05:07,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:05:07,358.358 INFO    ] Checking for system updates...
[2026-10-25 12:05:07,397.397 INFO    ] 200
[2026-10-25 12:05:07,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:07,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:07,459.459 INFO    ] No update needed
[2026-10-25 12:05:07,462.462 INFO    ] Checking for camera pi updates...
[2026-10-25 12:05:07,499.499 INFO    ] 200
[2026-10-25 12:05:07,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:07,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:05:07,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:07,597.597 INFO    ] No camera update needed
[2026-10-25 12:05:07,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:05:07,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:05:07,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:05:07,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:05:09,661.661 INFO    ] ================================================
[2026-10-25 12:05:09,678.678 INFO    ] Launching Daemon at Sun Oct 25 12:05:09 IST 2026
[2026-10-25 12:05:09,689.689 INFO    ] ================================================
[2026-10-25 12:05:10,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:05:10
[2026-10-25 12:05:10,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:05:11,195.195 INFO    ] Initializing speech engine...
[2026-10-25 12:05:11,205.205 INFO    ] 2026-10-25 12:05:11
[2026-10-25 12:05:11,494.494 INFO    ] 2026-10-25 12:05:11
[2026-10-25 12:05:11,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:05:11,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:05:11,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:05:11,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:05:11,991.991 INFO    ] time= 25/10/2026 12:05:11
[2026-10-25 12:05:12,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:05:12,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:05:12,198.198 INFO    ] No existing commands found in stream
[2026-10-25 12:05:17,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:05:17,214.214 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 12:05:19,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:05:19,893.893 INFO    ] Checking for system updates...
[2026-10-25 12:05:19,931.931 INFO    ] 200
[2026-10-25 12:05:19,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:19,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:19,995.995 INFO    ] No update needed
[2026-10-25 12:05:19,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 12:05:20,034.034 INFO    ] 200
[2026-10-25 12:05:20,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:20,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:05:20,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:20,151.151 INFO    ] No camera update needed
[2026-10-25 12:05:20,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:05:20,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:05:20,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:05:20,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:05:22,213.213 INFO    ] ================================================
[2026-10-25 12:05:22,230.230 INFO    ] Launching Daemon at Sun Oct 25 12:05:22 IST 2026
[2026-10-25 12:05:22,242.242 INFO    ] ================================================
[2026-10-25 12:05:22,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:05:22
[2026-10-25 12:05:23,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:05:23,802.802 INFO    ] Initializing speech engine...
[2026-10-25 12:05:23,812.812 INFO    ] 2026-10-25 12:05:23
[2026-10-25 12:05:24,093.093 INFO    ] 2026-10-25 12:05:24
[2026-10-25 12:05:24,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:05:24,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:05:24,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:05:24,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:05:24,664.664 INFO    ] time= 25/10/2026 12:05:24
[2026-10-25 12:05:24,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:05:24,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:05:24,828.828 INFO    ] No existing commands found in stream
[2026-10-25 12:05:29,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:05:29,846.846 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 12:05:32,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:05:32,029.029 INFO    ] Checking for system updates...
[2026-10-25 12:05:32,072.072 INFO    ] 200
[2026-10-25 12:05:32,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:32,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:32,138.138 INFO    ] No update needed
[2026-10-25 12:05:32,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 12:05:32,179.179 INFO    ] 200
[2026-10-25 12:05:32,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:32,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:05:32,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:05:32,275.275 INFO    ] No camera update needed
[2026-10-25 12:05:32,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:05:32,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:05:32,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:05:32,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:05:34,337.337 INFO    ] ================================================
[2026-10-25 12:05:34,353.353 INFO    ] Launching Daemon at Sun Oct 25 12:05:34 IST 2026
[2026-10-25 12:05:34,365.365 INFO    ] ================================================
[2026-10-25 12:05:34,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:05:34
[2026-10-25 12:05:35,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:05:35,822.822 INFO    ] Initializing speech engine...
[2026-10-25 12:05:35,845.845 INFO    ] 2026-10-25 12:05:35
[2026-10-25 12:05:36,099.099 INFO    ] 2026-10-25 12:05:36
[2026-10-25 12:05:36,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:05:36,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:05:36,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:05:36,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:05:36,503.503 INFO    ] time= 25/10/2026 12:05:36
[2026-10-25 12:05:36,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:05:36,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:05:36,685.685 INFO    ] No existing commands found in stream
[2026-10-25 12:05:41,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:05:41,716.716 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 12:05:43,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:05:43,469.469 INFO    ] Checking for system updates...
[2026-10-25 12:05:43,506.506 INFO    ] 200
[2026-10-25 12:05:43,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:43,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:05:43,569.569 INFO    ] No update needed
[2026-10-25 12:05:43,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 12:05:43,611.611 INFO    ] 200
[2026-10-25 12:05:43,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:43,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:05:43,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:05:43,812.812 INFO    ] No camera update needed
[2026-10-25 12:05:43,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:05:43,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:05:43,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:05:43,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:05:45,873.873 INFO    ] ================================================
[2026-10-25 12:05:45,890.890 INFO    ] Launching Daemon at Sun Oct 25 12:05:45 IST 2026
[2026-10-25 12:05:45,901.901 INFO    ] ================================================
[2026-10-25 12:05:46,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:05:46
[2026-10-25 12:05:47,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:05:47,567.567 INFO    ] Initializing speech engine...
[2026-10-25 12:05:47,582.582 INFO    ] 2026-10-25 12:05:47
[2026-10-25 12:05:47,874.874 INFO    ] 2026-10-25 12:05:47
[2026-10-25 12:05:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:05:48,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:05:48,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:05:48,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:05:48,411.411 INFO    ] time= 25/10/2026 12:05:48
[2026-10-25 12:05:48,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:05:48,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:05:48,564.564 INFO    ] No existing commands found in stream
[2026-10-25 12:05:53,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:05:53,584.584 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 12:05:55,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:05:55,593.593 INFO    ] Checking for system updates...
[2026-10-25 12:05:55,633.633 INFO    ] 200
[2026-10-25 12:05:55,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:55,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:05:55,695.695 INFO    ] No update needed
[2026-10-25 12:05:55,698.698 INFO    ] Checking for camera pi updates...
[2026-10-25 12:05:55,742.742 INFO    ] 200
[2026-10-25 12:05:55,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:05:55,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:05:55,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:05:55,844.844 INFO    ] No camera update needed
[2026-10-25 12:05:55,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:05:55,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:05:55,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:05:55,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:05:57,907.907 INFO    ] ================================================
[2026-10-25 12:05:57,924.924 INFO    ] Launching Daemon at Sun Oct 25 12:05:57 IST 2026
[2026-10-25 12:05:57,936.936 INFO    ] ================================================
[2026-10-25 12:05:58,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:05:58
[2026-10-25 12:05:59,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:05:59,725.725 INFO    ] Initializing speech engine...
[2026-10-25 12:05:59,736.736 INFO    ] 2026-10-25 12:05:59
[2026-10-25 12:05:59,998.998 INFO    ] 2026-10-25 12:05:59
[2026-10-25 12:06:00,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:06:01,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:06:01,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:06:01,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:06:01,350.350 INFO    ] time= 25/10/2026 12:06:01
[2026-10-25 12:06:01,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:06:01,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:06:01,436.436 INFO    ] No existing commands found in stream
[2026-10-25 12:06:06,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:06:06,449.449 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 12:06:08,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:06:08,819.819 INFO    ] Checking for system updates...
[2026-10-25 12:06:08,859.859 INFO    ] 200
[2026-10-25 12:06:08,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:08,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:06:08,925.925 INFO    ] No update needed
[2026-10-25 12:06:08,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 12:06:08,976.976 INFO    ] 200
[2026-10-25 12:06:08,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:09,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:06:09,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:06:09,067.067 INFO    ] No camera update needed
[2026-10-25 12:06:09,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:06:09,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:06:09,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:06:09,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:06:11,130.130 INFO    ] ================================================
[2026-10-25 12:06:11,146.146 INFO    ] Launching Daemon at Sun Oct 25 12:06:11 IST 2026
[2026-10-25 12:06:11,157.157 INFO    ] ================================================
[2026-10-25 12:06:11,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:06:11
[2026-10-25 12:06:12,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:06:12,771.771 INFO    ] Initializing speech engine...
[2026-10-25 12:06:12,778.778 INFO    ] 2026-10-25 12:06:12
[2026-10-25 12:06:13,076.076 INFO    ] 2026-10-25 12:06:13
[2026-10-25 12:06:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:06:13,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:06:13,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:06:13,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:06:13,583.583 INFO    ] time= 25/10/2026 12:06:13
[2026-10-25 12:06:13,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:06:13,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:06:13,772.772 INFO    ] No existing commands found in stream
[2026-10-25 12:06:18,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:06:18,808.808 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 12:06:20,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:06:20,885.885 INFO    ] Checking for system updates...
[2026-10-25 12:06:20,926.926 INFO    ] 200
[2026-10-25 12:06:20,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:20,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:20,987.987 INFO    ] No update needed
[2026-10-25 12:06:20,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 12:06:21,028.028 INFO    ] 200
[2026-10-25 12:06:21,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:21,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:06:21,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:21,130.130 INFO    ] No camera update needed
[2026-10-25 12:06:21,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:06:21,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:06:21,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:06:21,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:06:23,189.189 INFO    ] ================================================
[2026-10-25 12:06:23,206.206 INFO    ] Launching Daemon at Sun Oct 25 12:06:23 IST 2026
[2026-10-25 12:06:23,218.218 INFO    ] ================================================
[2026-10-25 12:06:23,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:06:23
[2026-10-25 12:06:24,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:06:24,828.828 INFO    ] Initializing speech engine...
[2026-10-25 12:06:24,851.851 INFO    ] 2026-10-25 12:06:24
[2026-10-25 12:06:25,104.104 INFO    ] 2026-10-25 12:06:25
[2026-10-25 12:06:25,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:06:25,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:06:25,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:06:25,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:06:25,676.676 INFO    ] time= 25/10/2026 12:06:25
[2026-10-25 12:06:25,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:06:25,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:06:25,838.838 INFO    ] No existing commands found in stream
[2026-10-25 12:06:30,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:06:30,857.857 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 12:06:32,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:06:32,198.198 INFO    ] Checking for system updates...
[2026-10-25 12:06:32,243.243 INFO    ] 200
[2026-10-25 12:06:32,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:32,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:32,321.321 INFO    ] No update needed
[2026-10-25 12:06:32,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 12:06:32,366.366 INFO    ] 200
[2026-10-25 12:06:32,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:32,417.417 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:06:32,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:32,479.479 INFO    ] No camera update needed
[2026-10-25 12:06:32,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:06:32,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:06:32,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:06:32,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:06:34,543.543 INFO    ] ================================================
[2026-10-25 12:06:34,559.559 INFO    ] Launching Daemon at Sun Oct 25 12:06:34 IST 2026
[2026-10-25 12:06:34,570.570 INFO    ] ================================================
[2026-10-25 12:06:35,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:06:35
[2026-10-25 12:06:35,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:06:36,206.206 INFO    ] Initializing speech engine...
[2026-10-25 12:06:36,221.221 INFO    ] 2026-10-25 12:06:36
[2026-10-25 12:06:36,491.491 INFO    ] 2026-10-25 12:06:36
[2026-10-25 12:06:36,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:06:36,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:06:36,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:06:36,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:06:36,984.984 INFO    ] time= 25/10/2026 12:06:36
[2026-10-25 12:06:37,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:06:37,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:06:37,172.172 INFO    ] No existing commands found in stream
[2026-10-25 12:06:42,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:06:42,186.186 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 12:06:43,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:06:43,341.341 INFO    ] Checking for system updates...
[2026-10-25 12:06:43,379.379 INFO    ] 200
[2026-10-25 12:06:43,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:43,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:43,443.443 INFO    ] No update needed
[2026-10-25 12:06:43,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 12:06:43,487.487 INFO    ] 200
[2026-10-25 12:06:43,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:43,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:06:43,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:06:43,602.602 INFO    ] No camera update needed
[2026-10-25 12:06:43,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:06:43,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:06:43,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:06:43,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:06:45,662.662 INFO    ] ================================================
[2026-10-25 12:06:45,678.678 INFO    ] Launching Daemon at Sun Oct 25 12:06:45 IST 2026
[2026-10-25 12:06:45,690.690 INFO    ] ================================================
[2026-10-25 12:06:46,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:06:46
[2026-10-25 12:06:46,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:06:47,138.138 INFO    ] Initializing speech engine...
[2026-10-25 12:06:47,147.147 INFO    ] 2026-10-25 12:06:47
[2026-10-25 12:06:47,398.398 INFO    ] 2026-10-25 12:06:47
[2026-10-25 12:06:47,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:06:47,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:06:47,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:06:47,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:06:47,968.968 INFO    ] time= 25/10/2026 12:06:47
[2026-10-25 12:06:47,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:06:47,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:06:48,104.104 INFO    ] No existing commands found in stream
[2026-10-25 12:06:53,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:06:53,135.135 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 12:06:55,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:06:55,898.898 INFO    ] Checking for system updates...
[2026-10-25 12:06:55,936.936 INFO    ] 200
[2026-10-25 12:06:55,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:55,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:06:55,998.998 INFO    ] No update needed
[2026-10-25 12:06:56,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 12:06:56,038.038 INFO    ] 200
[2026-10-25 12:06:56,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:06:56,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:06:56,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:06:56,147.147 INFO    ] No camera update needed
[2026-10-25 12:06:56,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:06:56,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:06:56,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:06:56,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:06:58,207.207 INFO    ] ================================================
[2026-10-25 12:06:58,222.222 INFO    ] Launching Daemon at Sun Oct 25 12:06:58 IST 2026
[2026-10-25 12:06:58,234.234 INFO    ] ================================================
[2026-10-25 12:06:58,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:06:58
[2026-10-25 12:06:59,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:06:59,658.658 INFO    ] Initializing speech engine...
[2026-10-25 12:06:59,682.682 INFO    ] 2026-10-25 12:06:59
[2026-10-25 12:06:59,941.941 INFO    ] 2026-10-25 12:06:59
[2026-10-25 12:06:59,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:02,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:07:02,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:07:02,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:07:02,862.862 INFO    ] time= 25/10/2026 12:07:02
[2026-10-25 12:07:02,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:07:02,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:07:02,942.942 INFO    ] No existing commands found in stream
[2026-10-25 12:07:07,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:07:07,955.955 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 12:07:11,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:07:11,223.223 INFO    ] Checking for system updates...
[2026-10-25 12:07:11,260.260 INFO    ] 200
[2026-10-25 12:07:11,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:07:11,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:07:11,322.322 INFO    ] No update needed
[2026-10-25 12:07:11,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 12:07:11,363.363 INFO    ] 200
[2026-10-25 12:07:11,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:07:11,408.408 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:07:11,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:07:11,462.462 INFO    ] No camera update needed
[2026-10-25 12:07:11,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:07:11,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:11,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:11,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:07:13,521.521 INFO    ] ================================================
[2026-10-25 12:07:13,537.537 INFO    ] Launching Daemon at Sun Oct 25 12:07:13 IST 2026
[2026-10-25 12:07:13,549.549 INFO    ] ================================================
[2026-10-25 12:07:14,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:07:14
[2026-10-25 12:07:14,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:07:15,135.135 INFO    ] Initializing speech engine...
[2026-10-25 12:07:15,156.156 INFO    ] 2026-10-25 12:07:15
[2026-10-25 12:07:15,408.408 INFO    ] 2026-10-25 12:07:15
[2026-10-25 12:07:15,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:15,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:07:15,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:07:15,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:07:15,911.911 INFO    ] time= 25/10/2026 12:07:15
[2026-10-25 12:07:15,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:07:15,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:07:16,116.116 INFO    ] No existing commands found in stream
[2026-10-25 12:07:21,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:07:21,143.143 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 12:07:23,395.395 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 12:07:23,420.420 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4e770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-10-25 12:07:23,429.429 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d4e770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-10-25 12:07:23,438.438 INFO    ] None
[2026-10-25 12:07:23,441.441 INFO    ] Checking for system updates...
[2026-10-25 12:07:23,487.487 INFO    ] 200
[2026-10-25 12:07:23,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:07:23,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:07:23,546.546 INFO    ] No update needed
[2026-10-25 12:07:23,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 12:07:23,583.583 INFO    ] 200
[2026-10-25 12:07:23,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:07:23,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:07:33,643.643 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202502.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d01450>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-25 12:07:33,667.667 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-25 12:07:33,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:07:33,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:33,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:33,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:07:35,733.733 INFO    ] ================================================
[2026-10-25 12:07:35,749.749 INFO    ] Launching Daemon at Sun Oct 25 12:07:35 IST 2026
[2026-10-25 12:07:35,760.760 INFO    ] ================================================
[2026-10-25 12:07:36,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:07:36
[2026-10-25 12:07:37,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:07:37,337.337 INFO    ] Initializing speech engine...
[2026-10-25 12:07:37,351.351 INFO    ] 2026-10-25 12:07:37
[2026-10-25 12:07:37,623.623 INFO    ] 2026-10-25 12:07:37
[2026-10-25 12:07:37,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:42,763.763 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 12:07:42,793.793 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:07:42,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:42,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:42,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:07:44,846.846 INFO    ] ================================================
[2026-10-25 12:07:44,861.861 INFO    ] Launching Daemon at Sun Oct 25 12:07:44 IST 2026
[2026-10-25 12:07:44,872.872 INFO    ] ================================================
[2026-10-25 12:07:45,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:07:45
[2026-10-25 12:07:46,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:07:46,452.452 INFO    ] Initializing speech engine...
[2026-10-25 12:07:46,460.460 INFO    ] 2026-10-25 12:07:46
[2026-10-25 12:07:46,727.727 INFO    ] 2026-10-25 12:07:46
[2026-10-25 12:07:46,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:46,880.880 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 12:07:47,039.039 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:07:47,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:47,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:47,088.088 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 12:07:47,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:07:49,171.171 INFO    ] ================================================
[2026-10-25 12:07:49,186.186 INFO    ] Launching Daemon at Sun Oct 25 12:07:49 IST 2026
[2026-10-25 12:07:49,197.197 INFO    ] ================================================
[2026-10-25 12:07:49,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:07:49
[2026-10-25 12:07:50,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:07:50,653.653 INFO    ] Initializing speech engine...
[2026-10-25 12:07:50,668.668 INFO    ] 2026-10-25 12:07:50
[2026-10-25 12:07:50,953.953 INFO    ] 2026-10-25 12:07:50
[2026-10-25 12:07:50,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:51,048.048 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 12:07:51,229.229 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:07:51,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:51,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:51,335.335 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 12:07:51,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:07:53,406.406 INFO    ] ================================================
[2026-10-25 12:07:53,422.422 INFO    ] Launching Daemon at Sun Oct 25 12:07:53 IST 2026
[2026-10-25 12:07:53,432.432 INFO    ] ================================================
[2026-10-25 12:07:54,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:07:54
[2026-10-25 12:07:54,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:07:54,898.898 INFO    ] Initializing speech engine...
[2026-10-25 12:07:54,908.908 INFO    ] 2026-10-25 12:07:54
[2026-10-25 12:07:55,167.167 INFO    ] 2026-10-25 12:07:55
[2026-10-25 12:07:55,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:07:58,433.433 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 113 connecting to live.vendingbuddy.in:23294. No route to host.
[2026-10-25 12:07:58,461.461 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:07:58,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:07:58,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:07:58,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:00,514.514 INFO    ] ================================================
[2026-10-25 12:08:00,529.529 INFO    ] Launching Daemon at Sun Oct 25 12:08:00 IST 2026
[2026-10-25 12:08:00,540.540 INFO    ] ================================================
[2026-10-25 12:08:01,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:01
[2026-10-25 12:08:01,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:02,187.187 INFO    ] Initializing speech engine...
[2026-10-25 12:08:02,199.199 INFO    ] 2026-10-25 12:08:02
[2026-10-25 12:08:02,478.478 INFO    ] 2026-10-25 12:08:02
[2026-10-25 12:08:02,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:02,576.576 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 12:08:02,736.736 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:08:02,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:08:02,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:08:02,843.843 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 12:08:02,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:04,916.916 INFO    ] ================================================
[2026-10-25 12:08:04,932.932 INFO    ] Launching Daemon at Sun Oct 25 12:08:04 IST 2026
[2026-10-25 12:08:04,943.943 INFO    ] ================================================
[2026-10-25 12:08:05,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:05
[2026-10-25 12:08:06,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:06,605.605 INFO    ] Initializing speech engine...
[2026-10-25 12:08:06,619.619 INFO    ] 2026-10-25 12:08:06
[2026-10-25 12:08:06,945.945 INFO    ] 2026-10-25 12:08:06
[2026-10-25 12:08:07,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:12,088.088 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 12:08:12,119.119 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 12:08:12,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:08:12,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:08:12,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:14,174.174 INFO    ] ================================================
[2026-10-25 12:08:14,190.190 INFO    ] Launching Daemon at Sun Oct 25 12:08:14 IST 2026
[2026-10-25 12:08:14,201.201 INFO    ] ================================================
[2026-10-25 12:08:14,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:14
[2026-10-25 12:08:15,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:15,856.856 INFO    ] Initializing speech engine...
[2026-10-25 12:08:15,868.868 INFO    ] 2026-10-25 12:08:15
[2026-10-25 12:08:16,179.179 INFO    ] 2026-10-25 12:08:16
[2026-10-25 12:08:16,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:16,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:08:16,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:08:16,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:08:16,685.685 INFO    ] time= 25/10/2026 12:08:16
[2026-10-25 12:08:16,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:08:16,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:08:16,836.836 INFO    ] No existing commands found in stream
[2026-10-25 12:08:21,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:08:21,855.855 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 12:08:24,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:08:24,313.313 INFO    ] Checking for system updates...
[2026-10-25 12:08:24,350.350 INFO    ] 200
[2026-10-25 12:08:24,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:24,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:08:24,411.411 INFO    ] No update needed
[2026-10-25 12:08:24,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 12:08:24,449.449 INFO    ] 200
[2026-10-25 12:08:24,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:24,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:08:24,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:08:24,569.569 INFO    ] No camera update needed
[2026-10-25 12:08:24,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:08:24,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:08:24,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:08:24,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:26,624.624 INFO    ] ================================================
[2026-10-25 12:08:26,640.640 INFO    ] Launching Daemon at Sun Oct 25 12:08:26 IST 2026
[2026-10-25 12:08:26,651.651 INFO    ] ================================================
[2026-10-25 12:08:27,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:27
[2026-10-25 12:08:28,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:28,332.332 INFO    ] Initializing speech engine...
[2026-10-25 12:08:28,341.341 INFO    ] 2026-10-25 12:08:28
[2026-10-25 12:08:28,636.636 INFO    ] 2026-10-25 12:08:28
[2026-10-25 12:08:28,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:28,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:08:28,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:08:29,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:08:29,113.113 INFO    ] time= 25/10/2026 12:08:29
[2026-10-25 12:08:29,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:08:29,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:08:29,331.331 INFO    ] No existing commands found in stream
[2026-10-25 12:08:34,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:08:34,361.361 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 12:08:38,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:08:38,177.177 INFO    ] Checking for system updates...
[2026-10-25 12:08:38,216.216 INFO    ] 200
[2026-10-25 12:08:38,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:38,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:08:38,275.275 INFO    ] No update needed
[2026-10-25 12:08:38,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 12:08:38,313.313 INFO    ] 200
[2026-10-25 12:08:38,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:38,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:08:38,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:08:38,404.404 INFO    ] No camera update needed
[2026-10-25 12:08:38,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:08:38,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:08:38,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:08:38,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:40,463.463 INFO    ] ================================================
[2026-10-25 12:08:40,479.479 INFO    ] Launching Daemon at Sun Oct 25 12:08:40 IST 2026
[2026-10-25 12:08:40,489.489 INFO    ] ================================================
[2026-10-25 12:08:41,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:41
[2026-10-25 12:08:41,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:41,944.944 INFO    ] Initializing speech engine...
[2026-10-25 12:08:41,950.950 INFO    ] 2026-10-25 12:08:41
[2026-10-25 12:08:42,199.199 INFO    ] 2026-10-25 12:08:42
[2026-10-25 12:08:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:42,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:08:42,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:08:42,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:08:42,682.682 INFO    ] time= 25/10/2026 12:08:42
[2026-10-25 12:08:42,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:08:42,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:08:42,824.824 INFO    ] No existing commands found in stream
[2026-10-25 12:08:47,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:08:47,842.842 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 12:08:50,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:08:50,035.035 INFO    ] Checking for system updates...
[2026-10-25 12:08:50,071.071 INFO    ] 200
[2026-10-25 12:08:50,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:50,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:08:50,129.129 INFO    ] No update needed
[2026-10-25 12:08:50,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 12:08:50,172.172 INFO    ] 200
[2026-10-25 12:08:50,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:08:50,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:08:50,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:08:50,267.267 INFO    ] No camera update needed
[2026-10-25 12:08:50,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:08:50,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:08:50,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:08:50,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:08:52,323.323 INFO    ] ================================================
[2026-10-25 12:08:52,338.338 INFO    ] Launching Daemon at Sun Oct 25 12:08:52 IST 2026
[2026-10-25 12:08:52,349.349 INFO    ] ================================================
[2026-10-25 12:08:53,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:08:53
[2026-10-25 12:08:53,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:08:54,032.032 INFO    ] Initializing speech engine...
[2026-10-25 12:08:54,046.046 INFO    ] 2026-10-25 12:08:54
[2026-10-25 12:08:54,354.354 INFO    ] 2026-10-25 12:08:54
[2026-10-25 12:08:54,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:08:54,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:08:54,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:08:54,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:08:54,865.865 INFO    ] time= 25/10/2026 12:08:54
[2026-10-25 12:08:54,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:08:54,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:08:55,016.016 INFO    ] No existing commands found in stream
[2026-10-25 12:09:00,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:09:00,035.035 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 12:09:01,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:09:01,805.805 INFO    ] Checking for system updates...
[2026-10-25 12:09:01,851.851 INFO    ] 200
[2026-10-25 12:09:01,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:01,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:01,968.968 INFO    ] No update needed
[2026-10-25 12:09:01,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 12:09:02,024.024 INFO    ] 200
[2026-10-25 12:09:02,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:02,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:09:02,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:02,111.111 INFO    ] No camera update needed
[2026-10-25 12:09:02,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:09:02,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:09:02,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:09:02,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:09:04,172.172 INFO    ] ================================================
[2026-10-25 12:09:04,189.189 INFO    ] Launching Daemon at Sun Oct 25 12:09:04 IST 2026
[2026-10-25 12:09:04,200.200 INFO    ] ================================================
[2026-10-25 12:09:04,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:09:04
[2026-10-25 12:09:05,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:09:05,881.881 INFO    ] Initializing speech engine...
[2026-10-25 12:09:05,893.893 INFO    ] 2026-10-25 12:09:05
[2026-10-25 12:09:06,189.189 INFO    ] 2026-10-25 12:09:06
[2026-10-25 12:09:06,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:09:07,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:09:07,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:09:07,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:09:07,564.564 INFO    ] time= 25/10/2026 12:09:07
[2026-10-25 12:09:07,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:09:07,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:09:07,638.638 INFO    ] No existing commands found in stream
[2026-10-25 12:09:12,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:09:12,654.654 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 12:09:16,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:09:16,892.892 INFO    ] Checking for system updates...
[2026-10-25 12:09:16,930.930 INFO    ] 200
[2026-10-25 12:09:16,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:16,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:09:16,999.999 INFO    ] No update needed
[2026-10-25 12:09:17,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 12:09:17,037.037 INFO    ] 200
[2026-10-25 12:09:17,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:17,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:09:17,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:09:17,132.132 INFO    ] No camera update needed
[2026-10-25 12:09:17,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:09:17,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:09:17,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:09:17,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:09:19,192.192 INFO    ] ================================================
[2026-10-25 12:09:19,208.208 INFO    ] Launching Daemon at Sun Oct 25 12:09:19 IST 2026
[2026-10-25 12:09:19,220.220 INFO    ] ================================================
[2026-10-25 12:09:19,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:09:19
[2026-10-25 12:09:20,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:09:20,904.904 INFO    ] Initializing speech engine...
[2026-10-25 12:09:20,915.915 INFO    ] 2026-10-25 12:09:20
[2026-10-25 12:09:21,200.200 INFO    ] 2026-10-25 12:09:21
[2026-10-25 12:09:21,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:09:21,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:09:21,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:09:21,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:09:21,756.756 INFO    ] time= 25/10/2026 12:09:21
[2026-10-25 12:09:21,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:09:21,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:09:21,908.908 INFO    ] No existing commands found in stream
[2026-10-25 12:09:26,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:09:26,930.930 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 12:09:30,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:09:30,252.252 INFO    ] Checking for system updates...
[2026-10-25 12:09:30,293.293 INFO    ] 200
[2026-10-25 12:09:30,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:30,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:30,351.351 INFO    ] No update needed
[2026-10-25 12:09:30,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 12:09:30,388.388 INFO    ] 200
[2026-10-25 12:09:30,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:30,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:09:30,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:30,464.464 INFO    ] No camera update needed
[2026-10-25 12:09:30,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:09:30,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:09:30,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:09:30,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:09:32,522.522 INFO    ] ================================================
[2026-10-25 12:09:32,538.538 INFO    ] Launching Daemon at Sun Oct 25 12:09:32 IST 2026
[2026-10-25 12:09:32,550.550 INFO    ] ================================================
[2026-10-25 12:09:33,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:09:33
[2026-10-25 12:09:33,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:09:34,006.006 INFO    ] Initializing speech engine...
[2026-10-25 12:09:34,015.015 INFO    ] 2026-10-25 12:09:34
[2026-10-25 12:09:34,293.293 INFO    ] 2026-10-25 12:09:34
[2026-10-25 12:09:34,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:09:38,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:09:38,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:09:38,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:09:38,698.698 INFO    ] time= 25/10/2026 12:09:38
[2026-10-25 12:09:38,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:09:38,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:09:38,755.755 INFO    ] No existing commands found in stream
[2026-10-25 12:09:43,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:09:43,766.766 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 12:09:47,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:09:47,170.170 INFO    ] Checking for system updates...
[2026-10-25 12:09:47,206.206 INFO    ] 200
[2026-10-25 12:09:47,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:47,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:09:47,266.266 INFO    ] No update needed
[2026-10-25 12:09:47,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 12:09:47,301.301 INFO    ] 200
[2026-10-25 12:09:47,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:47,345.345 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:09:47,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:09:47,402.402 INFO    ] No camera update needed
[2026-10-25 12:09:47,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:09:47,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:09:47,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:09:47,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:09:49,456.456 INFO    ] ================================================
[2026-10-25 12:09:49,472.472 INFO    ] Launching Daemon at Sun Oct 25 12:09:49 IST 2026
[2026-10-25 12:09:49,510.510 INFO    ] ================================================
[2026-10-25 12:09:50,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:09:50
[2026-10-25 12:09:50,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:09:51,235.235 INFO    ] Initializing speech engine...
[2026-10-25 12:09:51,242.242 INFO    ] 2026-10-25 12:09:51
[2026-10-25 12:09:51,540.540 INFO    ] 2026-10-25 12:09:51
[2026-10-25 12:09:51,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:09:51,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:09:51,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:09:52,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:09:52,089.089 INFO    ] time= 25/10/2026 12:09:52
[2026-10-25 12:09:52,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:09:52,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:09:52,251.251 INFO    ] No existing commands found in stream
[2026-10-25 12:09:57,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:09:57,275.275 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 12:09:59,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:09:59,366.366 INFO    ] Checking for system updates...
[2026-10-25 12:09:59,404.404 INFO    ] 200
[2026-10-25 12:09:59,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:59,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:59,464.464 INFO    ] No update needed
[2026-10-25 12:09:59,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 12:09:59,503.503 INFO    ] 200
[2026-10-25 12:09:59,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:09:59,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:09:59,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:09:59,615.615 INFO    ] No camera update needed
[2026-10-25 12:09:59,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:09:59,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:09:59,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:09:59,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:10:01,674.674 INFO    ] ================================================
[2026-10-25 12:10:01,689.689 INFO    ] Launching Daemon at Sun Oct 25 12:10:01 IST 2026
[2026-10-25 12:10:01,701.701 INFO    ] ================================================
[2026-10-25 12:10:02,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:10:02
[2026-10-25 12:10:03,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:10:03,972.972 INFO    ] Initializing speech engine...
[2026-10-25 12:10:03,980.980 INFO    ] 2026-10-25 12:10:03
[2026-10-25 12:10:04,256.256 INFO    ] 2026-10-25 12:10:04
[2026-10-25 12:10:04,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:10:04,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:10:04,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:10:04,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:10:04,725.725 INFO    ] time= 25/10/2026 12:10:04
[2026-10-25 12:10:04,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:10:04,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:10:04,855.855 INFO    ] No existing commands found in stream
[2026-10-25 12:10:09,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:10:09,879.879 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 12:10:14,932.932 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:10:14,935.935 INFO    ] Checking for system updates...
[2026-10-25 12:10:14,970.970 INFO    ] 200
[2026-10-25 12:10:14,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:15,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:10:15,030.030 INFO    ] No update needed
[2026-10-25 12:10:15,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 12:10:15,066.066 INFO    ] 200
[2026-10-25 12:10:15,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:15,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:10:15,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:10:15,268.268 INFO    ] No camera update needed
[2026-10-25 12:10:15,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:10:15,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:10:15,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:10:15,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:10:17,325.325 INFO    ] ================================================
[2026-10-25 12:10:17,340.340 INFO    ] Launching Daemon at Sun Oct 25 12:10:17 IST 2026
[2026-10-25 12:10:17,351.351 INFO    ] ================================================
[2026-10-25 12:10:17,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:10:17
[2026-10-25 12:10:18,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:10:18,765.765 INFO    ] Initializing speech engine...
[2026-10-25 12:10:18,771.771 INFO    ] 2026-10-25 12:10:18
[2026-10-25 12:10:19,061.061 INFO    ] 2026-10-25 12:10:19
[2026-10-25 12:10:19,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:10:19,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:10:19,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:10:19,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:10:19,478.478 INFO    ] time= 25/10/2026 12:10:19
[2026-10-25 12:10:19,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:10:19,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:10:19,646.646 INFO    ] No existing commands found in stream
[2026-10-25 12:10:24,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:10:24,674.674 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 12:10:26,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:10:26,338.338 INFO    ] Checking for system updates...
[2026-10-25 12:10:26,375.375 INFO    ] 200
[2026-10-25 12:10:26,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:26,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:26,435.435 INFO    ] No update needed
[2026-10-25 12:10:26,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 12:10:26,473.473 INFO    ] 200
[2026-10-25 12:10:26,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:26,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:10:26,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:26,568.568 INFO    ] No camera update needed
[2026-10-25 12:10:26,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:10:26,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:10:26,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:10:26,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:10:28,622.622 INFO    ] ================================================
[2026-10-25 12:10:28,637.637 INFO    ] Launching Daemon at Sun Oct 25 12:10:28 IST 2026
[2026-10-25 12:10:28,649.649 INFO    ] ================================================
[2026-10-25 12:10:29,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:10:29
[2026-10-25 12:10:29,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:10:30,111.111 INFO    ] Initializing speech engine...
[2026-10-25 12:10:30,119.119 INFO    ] 2026-10-25 12:10:30
[2026-10-25 12:10:30,379.379 INFO    ] 2026-10-25 12:10:30
[2026-10-25 12:10:30,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:10:30,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:10:30,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:10:30,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:10:30,867.867 INFO    ] time= 25/10/2026 12:10:30
[2026-10-25 12:10:30,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:10:30,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:10:30,985.985 INFO    ] No existing commands found in stream
[2026-10-25 12:10:35,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:10:35,996.996 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 12:10:39,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:10:39,344.344 INFO    ] Checking for system updates...
[2026-10-25 12:10:39,381.381 INFO    ] 200
[2026-10-25 12:10:39,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:39,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:39,448.448 INFO    ] No update needed
[2026-10-25 12:10:39,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 12:10:39,486.486 INFO    ] 200
[2026-10-25 12:10:39,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:39,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:10:39,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:39,594.594 INFO    ] No camera update needed
[2026-10-25 12:10:39,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:10:39,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:10:39,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:10:39,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:10:41,655.655 INFO    ] ================================================
[2026-10-25 12:10:41,672.672 INFO    ] Launching Daemon at Sun Oct 25 12:10:41 IST 2026
[2026-10-25 12:10:41,683.683 INFO    ] ================================================
[2026-10-25 12:10:42,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:10:42
[2026-10-25 12:10:42,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:10:43,096.096 INFO    ] Initializing speech engine...
[2026-10-25 12:10:43,112.112 INFO    ] 2026-10-25 12:10:43
[2026-10-25 12:10:43,368.368 INFO    ] 2026-10-25 12:10:43
[2026-10-25 12:10:43,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:10:44,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:10:44,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:10:44,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:10:44,734.734 INFO    ] time= 25/10/2026 12:10:44
[2026-10-25 12:10:44,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:10:44,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:10:44,801.801 INFO    ] No existing commands found in stream
[2026-10-25 12:10:49,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:10:49,815.815 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 12:10:53,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:10:53,627.627 INFO    ] Checking for system updates...
[2026-10-25 12:10:53,664.664 INFO    ] 200
[2026-10-25 12:10:53,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:53,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:53,722.722 INFO    ] No update needed
[2026-10-25 12:10:53,724.724 INFO    ] Checking for camera pi updates...
[2026-10-25 12:10:53,758.758 INFO    ] 200
[2026-10-25 12:10:53,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:10:53,802.802 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:10:53,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:10:53,850.850 INFO    ] No camera update needed
[2026-10-25 12:10:53,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:10:53,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:10:53,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:10:53,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:10:55,907.907 INFO    ] ================================================
[2026-10-25 12:10:55,922.922 INFO    ] Launching Daemon at Sun Oct 25 12:10:55 IST 2026
[2026-10-25 12:10:55,934.934 INFO    ] ================================================
[2026-10-25 12:10:56,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:10:56
[2026-10-25 12:10:57,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:10:57,362.362 INFO    ] Initializing speech engine...
[2026-10-25 12:10:57,370.370 INFO    ] 2026-10-25 12:10:57
[2026-10-25 12:10:57,638.638 INFO    ] 2026-10-25 12:10:57
[2026-10-25 12:10:57,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:10:57,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:10:57,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:10:58,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:10:58,064.064 INFO    ] time= 25/10/2026 12:10:58
[2026-10-25 12:10:58,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:10:58,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:10:58,148.148 INFO    ] No existing commands found in stream
[2026-10-25 12:11:03,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:11:03,164.164 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 12:11:05,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:11:05,004.004 INFO    ] Checking for system updates...
[2026-10-25 12:11:05,039.039 INFO    ] 200
[2026-10-25 12:11:05,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:05,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:05,097.097 INFO    ] No update needed
[2026-10-25 12:11:05,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 12:11:05,135.135 INFO    ] 200
[2026-10-25 12:11:05,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:05,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:11:05,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:05,233.233 INFO    ] No camera update needed
[2026-10-25 12:11:05,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:11:05,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:11:05,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:11:05,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:11:07,289.289 INFO    ] ================================================
[2026-10-25 12:11:07,305.305 INFO    ] Launching Daemon at Sun Oct 25 12:11:07 IST 2026
[2026-10-25 12:11:07,316.316 INFO    ] ================================================
[2026-10-25 12:11:07,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:11:07
[2026-10-25 12:11:08,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:11:08,775.775 INFO    ] Initializing speech engine...
[2026-10-25 12:11:08,781.781 INFO    ] 2026-10-25 12:11:08
[2026-10-25 12:11:09,031.031 INFO    ] 2026-10-25 12:11:09
[2026-10-25 12:11:09,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:11:09,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:11:09,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:11:09,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:11:09,478.478 INFO    ] time= 25/10/2026 12:11:09
[2026-10-25 12:11:09,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:11:09,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:11:09,656.656 INFO    ] No existing commands found in stream
[2026-10-25 12:11:14,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:11:14,678.678 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 12:11:16,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:11:16,380.380 INFO    ] Checking for system updates...
[2026-10-25 12:11:16,416.416 INFO    ] 200
[2026-10-25 12:11:16,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:16,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:16,475.475 INFO    ] No update needed
[2026-10-25 12:11:16,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 12:11:16,517.517 INFO    ] 200
[2026-10-25 12:11:16,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:16,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:11:16,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:16,608.608 INFO    ] No camera update needed
[2026-10-25 12:11:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:11:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:11:16,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:11:16,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:11:18,664.664 INFO    ] ================================================
[2026-10-25 12:11:18,680.680 INFO    ] Launching Daemon at Sun Oct 25 12:11:18 IST 2026
[2026-10-25 12:11:18,691.691 INFO    ] ================================================
[2026-10-25 12:11:19,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:11:19
[2026-10-25 12:11:19,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:11:20,145.145 INFO    ] Initializing speech engine...
[2026-10-25 12:11:20,154.154 INFO    ] 2026-10-25 12:11:20
[2026-10-25 12:11:20,403.403 INFO    ] 2026-10-25 12:11:20
[2026-10-25 12:11:20,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:11:20,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:11:20,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:11:20,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:11:20,885.885 INFO    ] time= 25/10/2026 12:11:20
[2026-10-25 12:11:20,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:11:20,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:11:21,082.082 INFO    ] No existing commands found in stream
[2026-10-25 12:11:26,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:11:26,113.113 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 12:11:29,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:11:29,215.215 INFO    ] Checking for system updates...
[2026-10-25 12:11:29,251.251 INFO    ] 200
[2026-10-25 12:11:29,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:29,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:29,310.310 INFO    ] No update needed
[2026-10-25 12:11:29,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 12:11:29,346.346 INFO    ] 200
[2026-10-25 12:11:29,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:29,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:11:29,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:29,446.446 INFO    ] No camera update needed
[2026-10-25 12:11:29,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:11:29,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:11:29,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:11:29,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:11:31,502.502 INFO    ] ================================================
[2026-10-25 12:11:31,518.518 INFO    ] Launching Daemon at Sun Oct 25 12:11:31 IST 2026
[2026-10-25 12:11:31,530.530 INFO    ] ================================================
[2026-10-25 12:11:32,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:11:32
[2026-10-25 12:11:32,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:11:33,064.064 INFO    ] Initializing speech engine...
[2026-10-25 12:11:33,071.071 INFO    ] 2026-10-25 12:11:33
[2026-10-25 12:11:33,355.355 INFO    ] 2026-10-25 12:11:33
[2026-10-25 12:11:33,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:11:33,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:11:33,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:11:33,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:11:33,895.895 INFO    ] time= 25/10/2026 12:11:33
[2026-10-25 12:11:33,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:11:33,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:11:34,029.029 INFO    ] No existing commands found in stream
[2026-10-25 12:11:39,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:11:39,064.064 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 12:11:41,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:11:41,332.332 INFO    ] Checking for system updates...
[2026-10-25 12:11:41,369.369 INFO    ] 200
[2026-10-25 12:11:41,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:41,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:41,430.430 INFO    ] No update needed
[2026-10-25 12:11:41,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 12:11:41,467.467 INFO    ] 200
[2026-10-25 12:11:41,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:41,510.510 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:11:41,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:41,560.560 INFO    ] No camera update needed
[2026-10-25 12:11:41,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:11:41,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:11:41,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:11:41,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:11:43,616.616 INFO    ] ================================================
[2026-10-25 12:11:43,633.633 INFO    ] Launching Daemon at Sun Oct 25 12:11:43 IST 2026
[2026-10-25 12:11:43,643.643 INFO    ] ================================================
[2026-10-25 12:11:44,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:11:44
[2026-10-25 12:11:44,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:11:45,200.200 INFO    ] Initializing speech engine...
[2026-10-25 12:11:45,211.211 INFO    ] 2026-10-25 12:11:45
[2026-10-25 12:11:45,487.487 INFO    ] 2026-10-25 12:11:45
[2026-10-25 12:11:45,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:11:46,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:11:46,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:11:46,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:11:46,732.732 INFO    ] time= 25/10/2026 12:11:46
[2026-10-25 12:11:46,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:11:46,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:11:46,840.840 INFO    ] No existing commands found in stream
[2026-10-25 12:11:51,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:11:51,853.853 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 12:11:52,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:11:52,495.495 INFO    ] Checking for system updates...
[2026-10-25 12:11:52,531.531 INFO    ] 200
[2026-10-25 12:11:52,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:52,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:52,595.595 INFO    ] No update needed
[2026-10-25 12:11:52,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 12:11:52,632.632 INFO    ] 200
[2026-10-25 12:11:52,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:11:52,676.676 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:11:52,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:11:52,728.728 INFO    ] No camera update needed
[2026-10-25 12:11:52,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:11:52,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:11:52,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:11:52,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:11:54,783.783 INFO    ] ================================================
[2026-10-25 12:11:54,798.798 INFO    ] Launching Daemon at Sun Oct 25 12:11:54 IST 2026
[2026-10-25 12:11:54,808.808 INFO    ] ================================================
[2026-10-25 12:11:55,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:11:55
[2026-10-25 12:11:55,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:11:56,252.252 INFO    ] Initializing speech engine...
[2026-10-25 12:11:56,261.261 INFO    ] 2026-10-25 12:11:56
[2026-10-25 12:11:56,557.557 INFO    ] 2026-10-25 12:11:56
[2026-10-25 12:11:56,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:11:56,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:11:56,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:11:56,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:11:56,987.987 INFO    ] time= 25/10/2026 12:11:56
[2026-10-25 12:11:57,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:11:57,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:11:57,167.167 INFO    ] No existing commands found in stream
[2026-10-25 12:12:02,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:12:02,196.196 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 12:12:04,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:12:04,235.235 INFO    ] Checking for system updates...
[2026-10-25 12:12:04,276.276 INFO    ] 200
[2026-10-25 12:12:04,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:04,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:04,333.333 INFO    ] No update needed
[2026-10-25 12:12:04,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 12:12:04,368.368 INFO    ] 200
[2026-10-25 12:12:04,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:04,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:12:04,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:04,452.452 INFO    ] No camera update needed
[2026-10-25 12:12:04,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:12:04,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:12:04,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:12:04,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:12:06,509.509 INFO    ] ================================================
[2026-10-25 12:12:06,524.524 INFO    ] Launching Daemon at Sun Oct 25 12:12:06 IST 2026
[2026-10-25 12:12:06,535.535 INFO    ] ================================================
[2026-10-25 12:12:07,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:12:07
[2026-10-25 12:12:07,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:12:07,989.989 INFO    ] Initializing speech engine...
[2026-10-25 12:12:07,998.998 INFO    ] 2026-10-25 12:12:07
[2026-10-25 12:12:08,248.248 INFO    ] 2026-10-25 12:12:08
[2026-10-25 12:12:08,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:12:08,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:12:08,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:12:08,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:12:08,726.726 INFO    ] time= 25/10/2026 12:12:08
[2026-10-25 12:12:08,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:12:08,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:12:08,869.869 INFO    ] No existing commands found in stream
[2026-10-25 12:12:13,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:12:13,883.883 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 12:12:17,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:12:17,613.613 INFO    ] Checking for system updates...
[2026-10-25 12:12:17,650.650 INFO    ] 200
[2026-10-25 12:12:17,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:17,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:17,716.716 INFO    ] No update needed
[2026-10-25 12:12:17,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 12:12:17,753.753 INFO    ] 200
[2026-10-25 12:12:17,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:17,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:12:17,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:17,954.954 INFO    ] No camera update needed
[2026-10-25 12:12:17,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:12:17,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:12:17,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:12:17,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:12:20,011.011 INFO    ] ================================================
[2026-10-25 12:12:20,026.026 INFO    ] Launching Daemon at Sun Oct 25 12:12:20 IST 2026
[2026-10-25 12:12:20,038.038 INFO    ] ================================================
[2026-10-25 12:12:20,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:12:20
[2026-10-25 12:12:21,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:12:21,571.571 INFO    ] Initializing speech engine...
[2026-10-25 12:12:21,595.595 INFO    ] 2026-10-25 12:12:21
[2026-10-25 12:12:21,869.869 INFO    ] 2026-10-25 12:12:21
[2026-10-25 12:12:21,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:12:22,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:12:22,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:12:22,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:12:22,371.371 INFO    ] time= 25/10/2026 12:12:22
[2026-10-25 12:12:22,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:12:22,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:12:22,588.588 INFO    ] No existing commands found in stream
[2026-10-25 12:12:27,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:12:27,625.625 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 12:12:30,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:12:30,715.715 INFO    ] Checking for system updates...
[2026-10-25 12:12:30,752.752 INFO    ] 200
[2026-10-25 12:12:30,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:30,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:30,815.815 INFO    ] No update needed
[2026-10-25 12:12:30,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 12:12:30,853.853 INFO    ] 200
[2026-10-25 12:12:30,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:30,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:12:30,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:12:30,962.962 INFO    ] No camera update needed
[2026-10-25 12:12:30,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:12:30,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:12:30,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:12:30,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:12:33,023.023 INFO    ] ================================================
[2026-10-25 12:12:33,038.038 INFO    ] Launching Daemon at Sun Oct 25 12:12:33 IST 2026
[2026-10-25 12:12:33,049.049 INFO    ] ================================================
[2026-10-25 12:12:33,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:12:33
[2026-10-25 12:12:34,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:12:34,471.471 INFO    ] Initializing speech engine...
[2026-10-25 12:12:34,477.477 INFO    ] 2026-10-25 12:12:34
[2026-10-25 12:12:34,778.778 INFO    ] 2026-10-25 12:12:34
[2026-10-25 12:12:34,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:12:35,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:12:35,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:12:35,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:12:35,895.895 INFO    ] time= 25/10/2026 12:12:35
[2026-10-25 12:12:35,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:12:36,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:12:36,127.127 INFO    ] No existing commands found in stream
[2026-10-25 12:12:41,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:12:41,169.169 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 12:12:47,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:12:47,987.987 INFO    ] Checking for system updates...
[2026-10-25 12:12:48,030.030 INFO    ] 200
[2026-10-25 12:12:48,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:48,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:12:48,099.099 INFO    ] No update needed
[2026-10-25 12:12:48,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 12:12:48,136.136 INFO    ] 200
[2026-10-25 12:12:48,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:12:48,181.181 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:12:48,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:12:48,237.237 INFO    ] No camera update needed
[2026-10-25 12:12:48,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:12:48,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:12:48,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:12:48,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:12:50,294.294 INFO    ] ================================================
[2026-10-25 12:12:50,309.309 INFO    ] Launching Daemon at Sun Oct 25 12:12:50 IST 2026
[2026-10-25 12:12:50,321.321 INFO    ] ================================================
[2026-10-25 12:12:50,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:12:50
[2026-10-25 12:12:51,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:12:51,774.774 INFO    ] Initializing speech engine...
[2026-10-25 12:12:51,789.789 INFO    ] 2026-10-25 12:12:51
[2026-10-25 12:12:52,079.079 INFO    ] 2026-10-25 12:12:52
[2026-10-25 12:12:52,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:12:52,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:12:52,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:12:52,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:12:52,588.588 INFO    ] time= 25/10/2026 12:12:52
[2026-10-25 12:12:52,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:12:52,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:12:52,797.797 INFO    ] No existing commands found in stream
[2026-10-25 12:12:57,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:12:57,812.812 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 12:13:01,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:13:01,668.668 INFO    ] Checking for system updates...
[2026-10-25 12:13:01,736.736 INFO    ] 200
[2026-10-25 12:13:01,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:01,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:01,849.849 INFO    ] No update needed
[2026-10-25 12:13:01,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 12:13:01,896.896 INFO    ] 200
[2026-10-25 12:13:01,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:02,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:13:02,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:02,055.055 INFO    ] No camera update needed
[2026-10-25 12:13:02,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:13:02,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:13:02,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:13:02,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:13:04,116.116 INFO    ] ================================================
[2026-10-25 12:13:04,131.131 INFO    ] Launching Daemon at Sun Oct 25 12:13:04 IST 2026
[2026-10-25 12:13:04,142.142 INFO    ] ================================================
[2026-10-25 12:13:04,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:13:04
[2026-10-25 12:13:05,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:13:05,793.793 INFO    ] Initializing speech engine...
[2026-10-25 12:13:05,805.805 INFO    ] 2026-10-25 12:13:05
[2026-10-25 12:13:06,118.118 INFO    ] 2026-10-25 12:13:06
[2026-10-25 12:13:06,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:13:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:13:06,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:13:06,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:13:06,629.629 INFO    ] time= 25/10/2026 12:13:06
[2026-10-25 12:13:06,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:13:06,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:13:06,792.792 INFO    ] No existing commands found in stream
[2026-10-25 12:13:11,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:13:11,817.817 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 12:13:15,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:13:15,084.084 INFO    ] Checking for system updates...
[2026-10-25 12:13:15,122.122 INFO    ] 200
[2026-10-25 12:13:15,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:15,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:15,197.197 INFO    ] No update needed
[2026-10-25 12:13:15,200.200 INFO    ] Checking for camera pi updates...
[2026-10-25 12:13:15,246.246 INFO    ] 200
[2026-10-25 12:13:15,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:15,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:13:15,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:15,356.356 INFO    ] No camera update needed
[2026-10-25 12:13:15,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:13:15,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:13:15,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:13:15,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:13:17,413.413 INFO    ] ================================================
[2026-10-25 12:13:17,428.428 INFO    ] Launching Daemon at Sun Oct 25 12:13:17 IST 2026
[2026-10-25 12:13:17,439.439 INFO    ] ================================================
[2026-10-25 12:13:18,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:13:18
[2026-10-25 12:13:18,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:13:19,141.141 INFO    ] Initializing speech engine...
[2026-10-25 12:13:19,155.155 INFO    ] 2026-10-25 12:13:19
[2026-10-25 12:13:19,472.472 INFO    ] 2026-10-25 12:13:19
[2026-10-25 12:13:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:13:19,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:13:19,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:13:19,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:13:19,976.976 INFO    ] time= 25/10/2026 12:13:19
[2026-10-25 12:13:19,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:13:20,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:13:20,117.117 INFO    ] No existing commands found in stream
[2026-10-25 12:13:25,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:13:25,144.144 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 12:13:26,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:13:26,476.476 INFO    ] Checking for system updates...
[2026-10-25 12:13:26,513.513 INFO    ] 200
[2026-10-25 12:13:26,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:26,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:26,573.573 INFO    ] No update needed
[2026-10-25 12:13:26,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 12:13:26,611.611 INFO    ] 200
[2026-10-25 12:13:26,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:26,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:13:26,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:26,715.715 INFO    ] No camera update needed
[2026-10-25 12:13:26,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:13:26,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:13:26,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:13:26,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:13:28,772.772 INFO    ] ================================================
[2026-10-25 12:13:28,787.787 INFO    ] Launching Daemon at Sun Oct 25 12:13:28 IST 2026
[2026-10-25 12:13:28,798.798 INFO    ] ================================================
[2026-10-25 12:13:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:13:29
[2026-10-25 12:13:29,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:13:30,199.199 INFO    ] Initializing speech engine...
[2026-10-25 12:13:30,222.222 INFO    ] 2026-10-25 12:13:30
[2026-10-25 12:13:30,477.477 INFO    ] 2026-10-25 12:13:30
[2026-10-25 12:13:30,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:13:30,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:13:30,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:13:30,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:13:30,854.854 INFO    ] time= 25/10/2026 12:13:30
[2026-10-25 12:13:30,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:13:30,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:13:31,026.026 INFO    ] No existing commands found in stream
[2026-10-25 12:13:36,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:13:36,054.054 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 12:13:38,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:13:38,694.694 INFO    ] Checking for system updates...
[2026-10-25 12:13:38,731.731 INFO    ] 200
[2026-10-25 12:13:38,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:38,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:13:38,791.791 INFO    ] No update needed
[2026-10-25 12:13:38,794.794 INFO    ] Checking for camera pi updates...
[2026-10-25 12:13:38,828.828 INFO    ] 200
[2026-10-25 12:13:38,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:38,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:13:38,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:13:38,918.918 INFO    ] No camera update needed
[2026-10-25 12:13:38,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:13:38,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:13:38,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:13:38,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:13:40,974.974 INFO    ] ================================================
[2026-10-25 12:13:40,989.989 INFO    ] Launching Daemon at Sun Oct 25 12:13:40 IST 2026
[2026-10-25 12:13:41,999.999 INFO    ] ================================================
[2026-10-25 12:13:41,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:13:41
[2026-10-25 12:13:42,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:13:42,547.547 INFO    ] Initializing speech engine...
[2026-10-25 12:13:42,557.557 INFO    ] 2026-10-25 12:13:42
[2026-10-25 12:13:42,803.803 INFO    ] 2026-10-25 12:13:42
[2026-10-25 12:13:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:13:43,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:13:43,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:13:43,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:13:43,299.299 INFO    ] time= 25/10/2026 12:13:43
[2026-10-25 12:13:43,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:13:43,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:13:43,428.428 INFO    ] No existing commands found in stream
[2026-10-25 12:13:48,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:13:48,463.463 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 12:13:51,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:13:51,186.186 INFO    ] Checking for system updates...
[2026-10-25 12:13:51,228.228 INFO    ] 200
[2026-10-25 12:13:51,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:51,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:51,305.305 INFO    ] No update needed
[2026-10-25 12:13:51,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 12:13:51,350.350 INFO    ] 200
[2026-10-25 12:13:51,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:13:51,406.406 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:13:51,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:13:51,456.456 INFO    ] No camera update needed
[2026-10-25 12:13:51,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:13:51,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:13:51,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:13:51,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:13:53,514.514 INFO    ] ================================================
[2026-10-25 12:13:53,530.530 INFO    ] Launching Daemon at Sun Oct 25 12:13:53 IST 2026
[2026-10-25 12:13:53,540.540 INFO    ] ================================================
[2026-10-25 12:13:54,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:13:54
[2026-10-25 12:13:54,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:13:54,994.994 INFO    ] Initializing speech engine...
[2026-10-25 12:13:55,004.004 INFO    ] 2026-10-25 12:13:54
[2026-10-25 12:13:55,250.250 INFO    ] 2026-10-25 12:13:55
[2026-10-25 12:13:55,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:13:55,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:13:55,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:13:55,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:13:55,726.726 INFO    ] time= 25/10/2026 12:13:55
[2026-10-25 12:13:55,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:13:55,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:13:55,881.881 INFO    ] No existing commands found in stream
[2026-10-25 12:14:00,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:14:00,921.921 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 12:14:03,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:14:03,448.448 INFO    ] Checking for system updates...
[2026-10-25 12:14:03,490.490 INFO    ] 200
[2026-10-25 12:14:03,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:03,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:03,573.573 INFO    ] No update needed
[2026-10-25 12:14:03,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 12:14:03,621.621 INFO    ] 200
[2026-10-25 12:14:03,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:03,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:14:03,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:03,735.735 INFO    ] No camera update needed
[2026-10-25 12:14:03,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:14:03,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:14:03,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:14:03,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:14:05,792.792 INFO    ] ================================================
[2026-10-25 12:14:05,807.807 INFO    ] Launching Daemon at Sun Oct 25 12:14:05 IST 2026
[2026-10-25 12:14:05,818.818 INFO    ] ================================================
[2026-10-25 12:14:06,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:14:06
[2026-10-25 12:14:06,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:14:07,237.237 INFO    ] Initializing speech engine...
[2026-10-25 12:14:07,245.245 INFO    ] 2026-10-25 12:14:07
[2026-10-25 12:14:07,492.492 INFO    ] 2026-10-25 12:14:07
[2026-10-25 12:14:07,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:14:07,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:14:07,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:14:07,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:14:07,974.974 INFO    ] time= 25/10/2026 12:14:07
[2026-10-25 12:14:08,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:14:08,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:14:08,134.134 INFO    ] No existing commands found in stream
[2026-10-25 12:14:13,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:14:13,174.174 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 12:14:14,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:14:14,767.767 INFO    ] Checking for system updates...
[2026-10-25 12:14:14,804.804 INFO    ] 200
[2026-10-25 12:14:14,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:14,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:14,862.862 INFO    ] No update needed
[2026-10-25 12:14:14,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 12:14:14,904.904 INFO    ] 200
[2026-10-25 12:14:14,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:14,955.955 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:14:15,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:15,021.021 INFO    ] No camera update needed
[2026-10-25 12:14:15,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:14:15,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:14:15,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:14:15,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:14:17,078.078 INFO    ] ================================================
[2026-10-25 12:14:17,093.093 INFO    ] Launching Daemon at Sun Oct 25 12:14:17 IST 2026
[2026-10-25 12:14:17,103.103 INFO    ] ================================================
[2026-10-25 12:14:17,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:14:17
[2026-10-25 12:14:18,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:14:18,517.517 INFO    ] Initializing speech engine...
[2026-10-25 12:14:18,526.526 INFO    ] 2026-10-25 12:14:18
[2026-10-25 12:14:18,829.829 INFO    ] 2026-10-25 12:14:18
[2026-10-25 12:14:18,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:14:20,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:14:20,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:14:21,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:14:21,195.195 INFO    ] time= 25/10/2026 12:14:21
[2026-10-25 12:14:21,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:14:21,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:14:21,298.298 INFO    ] No existing commands found in stream
[2026-10-25 12:14:26,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:14:26,318.318 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 12:14:30,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:14:30,321.321 INFO    ] Checking for system updates...
[2026-10-25 12:14:30,357.357 INFO    ] 200
[2026-10-25 12:14:30,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:30,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:14:30,415.415 INFO    ] No update needed
[2026-10-25 12:14:30,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 12:14:30,456.456 INFO    ] 200
[2026-10-25 12:14:30,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:30,505.505 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:14:30,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:14:30,660.660 INFO    ] No camera update needed
[2026-10-25 12:14:30,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:14:30,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:14:30,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:14:30,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:14:32,717.717 INFO    ] ================================================
[2026-10-25 12:14:32,733.733 INFO    ] Launching Daemon at Sun Oct 25 12:14:32 IST 2026
[2026-10-25 12:14:32,745.745 INFO    ] ================================================
[2026-10-25 12:14:33,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:14:33
[2026-10-25 12:14:33,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:14:34,238.238 INFO    ] Initializing speech engine...
[2026-10-25 12:14:34,245.245 INFO    ] 2026-10-25 12:14:34
[2026-10-25 12:14:34,546.546 INFO    ] 2026-10-25 12:14:34
[2026-10-25 12:14:34,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:14:34,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:14:34,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:14:34,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:14:34,978.978 INFO    ] time= 25/10/2026 12:14:34
[2026-10-25 12:14:34,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:14:34,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:14:35,065.065 INFO    ] No existing commands found in stream
[2026-10-25 12:14:40,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:14:40,080.080 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 12:14:41,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:14:41,780.780 INFO    ] Checking for system updates...
[2026-10-25 12:14:41,816.816 INFO    ] 200
[2026-10-25 12:14:41,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:41,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:41,875.875 INFO    ] No update needed
[2026-10-25 12:14:41,877.877 INFO    ] Checking for camera pi updates...
[2026-10-25 12:14:41,911.911 INFO    ] 200
[2026-10-25 12:14:41,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:41,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:14:42,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:14:42,002.002 INFO    ] No camera update needed
[2026-10-25 12:14:42,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:14:42,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:14:42,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:14:42,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:14:44,058.058 INFO    ] ================================================
[2026-10-25 12:14:44,073.073 INFO    ] Launching Daemon at Sun Oct 25 12:14:44 IST 2026
[2026-10-25 12:14:44,084.084 INFO    ] ================================================
[2026-10-25 12:14:44,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:14:44
[2026-10-25 12:14:45,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:14:45,519.519 INFO    ] Initializing speech engine...
[2026-10-25 12:14:45,526.526 INFO    ] 2026-10-25 12:14:45
[2026-10-25 12:14:45,772.772 INFO    ] 2026-10-25 12:14:45
[2026-10-25 12:14:45,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:14:46,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:14:46,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:14:46,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:14:46,273.273 INFO    ] time= 25/10/2026 12:14:46
[2026-10-25 12:14:46,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:14:46,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:14:46,464.464 INFO    ] No existing commands found in stream
[2026-10-25 12:14:51,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:14:51,494.494 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 12:14:55,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:14:55,778.778 INFO    ] Checking for system updates...
[2026-10-25 12:14:55,817.817 INFO    ] 200
[2026-10-25 12:14:55,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:55,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:14:55,878.878 INFO    ] No update needed
[2026-10-25 12:14:55,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 12:14:55,916.916 INFO    ] 200
[2026-10-25 12:14:55,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:14:55,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:14:56,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:14:56,017.017 INFO    ] No camera update needed
[2026-10-25 12:14:56,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:14:56,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:14:56,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:14:56,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:14:58,074.074 INFO    ] ================================================
[2026-10-25 12:14:58,089.089 INFO    ] Launching Daemon at Sun Oct 25 12:14:58 IST 2026
[2026-10-25 12:14:58,100.100 INFO    ] ================================================
[2026-10-25 12:14:58,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:14:58
[2026-10-25 12:14:59,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:14:59,776.776 INFO    ] Initializing speech engine...
[2026-10-25 12:14:59,784.784 INFO    ] 2026-10-25 12:14:59
[2026-10-25 12:15:00,101.101 INFO    ] 2026-10-25 12:15:00
[2026-10-25 12:15:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:15:00,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:15:00,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:15:00,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:15:00,606.606 INFO    ] time= 25/10/2026 12:15:00
[2026-10-25 12:15:00,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:15:00,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:15:00,758.758 INFO    ] No existing commands found in stream
[2026-10-25 12:15:05,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:15:05,777.777 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 12:15:08,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:15:08,801.801 INFO    ] Checking for system updates...
[2026-10-25 12:15:08,842.842 INFO    ] 200
[2026-10-25 12:15:08,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:08,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:15:08,907.907 INFO    ] No update needed
[2026-10-25 12:15:08,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 12:15:08,943.943 INFO    ] 200
[2026-10-25 12:15:08,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:08,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:15:09,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:15:09,042.042 INFO    ] No camera update needed
[2026-10-25 12:15:09,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:15:09,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:15:09,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:15:09,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:15:11,098.098 INFO    ] ================================================
[2026-10-25 12:15:11,114.114 INFO    ] Launching Daemon at Sun Oct 25 12:15:11 IST 2026
[2026-10-25 12:15:11,126.126 INFO    ] ================================================
[2026-10-25 12:15:11,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:15:11
[2026-10-25 12:15:12,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:15:12,548.548 INFO    ] Initializing speech engine...
[2026-10-25 12:15:12,560.560 INFO    ] 2026-10-25 12:15:12
[2026-10-25 12:15:12,812.812 INFO    ] 2026-10-25 12:15:12
[2026-10-25 12:15:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:15:13,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:15:13,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:15:13,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:15:13,189.189 INFO    ] time= 25/10/2026 12:15:13
[2026-10-25 12:15:13,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:15:13,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:15:13,365.365 INFO    ] No existing commands found in stream
[2026-10-25 12:15:18,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:15:18,393.393 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 12:15:22,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:15:22,807.807 INFO    ] Checking for system updates...
[2026-10-25 12:15:22,842.842 INFO    ] 200
[2026-10-25 12:15:22,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:22,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:15:22,900.900 INFO    ] No update needed
[2026-10-25 12:15:22,903.903 INFO    ] Checking for camera pi updates...
[2026-10-25 12:15:22,938.938 INFO    ] 200
[2026-10-25 12:15:22,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:22,981.981 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:15:23,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:15:23,039.039 INFO    ] No camera update needed
[2026-10-25 12:15:23,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:15:23,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:15:23,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:15:23,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:15:25,095.095 INFO    ] ================================================
[2026-10-25 12:15:25,111.111 INFO    ] Launching Daemon at Sun Oct 25 12:15:25 IST 2026
[2026-10-25 12:15:25,122.122 INFO    ] ================================================
[2026-10-25 12:15:25,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:15:25
[2026-10-25 12:15:26,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:15:26,696.696 INFO    ] Initializing speech engine...
[2026-10-25 12:15:26,705.705 INFO    ] 2026-10-25 12:15:26
[2026-10-25 12:15:26,971.971 INFO    ] 2026-10-25 12:15:26
[2026-10-25 12:15:27,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:15:27,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:15:27,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:15:27,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:15:27,336.336 INFO    ] time= 25/10/2026 12:15:27
[2026-10-25 12:15:27,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:15:27,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:15:27,415.415 INFO    ] No existing commands found in stream
[2026-10-25 12:15:32,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:15:32,426.426 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 12:15:38,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:15:38,388.388 INFO    ] Checking for system updates...
[2026-10-25 12:15:38,428.428 INFO    ] 200
[2026-10-25 12:15:38,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:38,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:15:38,494.494 INFO    ] No update needed
[2026-10-25 12:15:38,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 12:15:38,531.531 INFO    ] 200
[2026-10-25 12:15:38,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:38,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:15:38,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:15:38,612.612 INFO    ] No camera update needed
[2026-10-25 12:15:38,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:15:38,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:15:38,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:15:38,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:15:40,667.667 INFO    ] ================================================
[2026-10-25 12:15:40,683.683 INFO    ] Launching Daemon at Sun Oct 25 12:15:40 IST 2026
[2026-10-25 12:15:40,693.693 INFO    ] ================================================
[2026-10-25 12:15:41,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:15:41
[2026-10-25 12:15:41,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:15:42,101.101 INFO    ] Initializing speech engine...
[2026-10-25 12:15:42,117.117 INFO    ] 2026-10-25 12:15:42
[2026-10-25 12:15:42,370.370 INFO    ] 2026-10-25 12:15:42
[2026-10-25 12:15:42,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:15:42,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:15:42,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:15:42,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:15:42,945.945 INFO    ] time= 25/10/2026 12:15:42
[2026-10-25 12:15:42,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:15:42,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:15:43,104.104 INFO    ] No existing commands found in stream
[2026-10-25 12:15:48,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:15:48,125.125 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 12:15:53,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:15:53,980.980 INFO    ] Checking for system updates...
[2026-10-25 12:15:54,027.027 INFO    ] 200
[2026-10-25 12:15:54,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:54,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:15:54,094.094 INFO    ] No update needed
[2026-10-25 12:15:54,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 12:15:54,135.135 INFO    ] 200
[2026-10-25 12:15:54,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:15:54,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:15:54,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:15:54,243.243 INFO    ] No camera update needed
[2026-10-25 12:15:54,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:15:54,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:15:54,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:15:54,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:15:56,299.299 INFO    ] ================================================
[2026-10-25 12:15:56,314.314 INFO    ] Launching Daemon at Sun Oct 25 12:15:56 IST 2026
[2026-10-25 12:15:56,325.325 INFO    ] ================================================
[2026-10-25 12:15:56,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:15:56
[2026-10-25 12:15:57,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:15:57,907.907 INFO    ] Initializing speech engine...
[2026-10-25 12:15:57,915.915 INFO    ] 2026-10-25 12:15:57
[2026-10-25 12:15:58,210.210 INFO    ] 2026-10-25 12:15:58
[2026-10-25 12:15:58,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:15:58,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:15:58,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:15:58,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:15:58,759.759 INFO    ] time= 25/10/2026 12:15:58
[2026-10-25 12:15:58,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:15:58,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:15:58,924.924 INFO    ] No existing commands found in stream
[2026-10-25 12:16:03,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:16:03,958.958 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 12:16:07,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:16:07,135.135 INFO    ] Checking for system updates...
[2026-10-25 12:16:07,178.178 INFO    ] 200
[2026-10-25 12:16:07,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:07,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:07,238.238 INFO    ] No update needed
[2026-10-25 12:16:07,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 12:16:07,274.274 INFO    ] 200
[2026-10-25 12:16:07,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:07,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:16:07,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:07,368.368 INFO    ] No camera update needed
[2026-10-25 12:16:07,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:16:07,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:16:07,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:16:07,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:16:09,422.422 INFO    ] ================================================
[2026-10-25 12:16:09,437.437 INFO    ] Launching Daemon at Sun Oct 25 12:16:09 IST 2026
[2026-10-25 12:16:09,448.448 INFO    ] ================================================
[2026-10-25 12:16:10,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:16:10
[2026-10-25 12:16:10,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:16:10,888.888 INFO    ] Initializing speech engine...
[2026-10-25 12:16:10,894.894 INFO    ] 2026-10-25 12:16:10
[2026-10-25 12:16:11,197.197 INFO    ] 2026-10-25 12:16:11
[2026-10-25 12:16:11,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:16:11,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:16:11,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:16:11,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:16:11,607.607 INFO    ] time= 25/10/2026 12:16:11
[2026-10-25 12:16:11,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:16:11,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:16:11,705.705 INFO    ] No existing commands found in stream
[2026-10-25 12:16:16,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:16:16,738.738 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 12:16:19,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:16:19,346.346 INFO    ] Checking for system updates...
[2026-10-25 12:16:19,387.387 INFO    ] 200
[2026-10-25 12:16:19,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:19,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:19,454.454 INFO    ] No update needed
[2026-10-25 12:16:19,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 12:16:19,495.495 INFO    ] 200
[2026-10-25 12:16:19,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:19,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:16:19,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:19,593.593 INFO    ] No camera update needed
[2026-10-25 12:16:19,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:16:19,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:16:19,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:16:19,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:16:21,651.651 INFO    ] ================================================
[2026-10-25 12:16:21,666.666 INFO    ] Launching Daemon at Sun Oct 25 12:16:21 IST 2026
[2026-10-25 12:16:21,677.677 INFO    ] ================================================
[2026-10-25 12:16:22,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:16:22
[2026-10-25 12:16:22,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:16:23,094.094 INFO    ] Initializing speech engine...
[2026-10-25 12:16:23,102.102 INFO    ] 2026-10-25 12:16:23
[2026-10-25 12:16:23,402.402 INFO    ] 2026-10-25 12:16:23
[2026-10-25 12:16:23,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:16:24,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:16:24,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:16:24,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:16:24,984.984 INFO    ] time= 25/10/2026 12:16:24
[2026-10-25 12:16:24,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:16:24,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:16:25,047.047 INFO    ] No existing commands found in stream
[2026-10-25 12:16:30,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:16:30,062.062 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 12:16:31,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:16:31,736.736 INFO    ] Checking for system updates...
[2026-10-25 12:16:31,786.786 INFO    ] 200
[2026-10-25 12:16:31,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:31,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:31,848.848 INFO    ] No update needed
[2026-10-25 12:16:31,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 12:16:31,900.900 INFO    ] 200
[2026-10-25 12:16:31,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:31,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:16:31,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:31,990.990 INFO    ] No camera update needed
[2026-10-25 12:16:31,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:16:31,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:16:32,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:16:32,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:16:34,048.048 INFO    ] ================================================
[2026-10-25 12:16:34,065.065 INFO    ] Launching Daemon at Sun Oct 25 12:16:34 IST 2026
[2026-10-25 12:16:34,076.076 INFO    ] ================================================
[2026-10-25 12:16:34,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:16:34
[2026-10-25 12:16:35,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:16:35,473.473 INFO    ] Initializing speech engine...
[2026-10-25 12:16:35,487.487 INFO    ] 2026-10-25 12:16:35
[2026-10-25 12:16:35,765.765 INFO    ] 2026-10-25 12:16:35
[2026-10-25 12:16:35,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:16:36,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:16:36,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:16:36,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:16:36,179.179 INFO    ] time= 25/10/2026 12:16:36
[2026-10-25 12:16:36,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:16:36,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:16:36,289.289 INFO    ] No existing commands found in stream
[2026-10-25 12:16:41,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:16:41,305.305 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 12:16:42,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:16:42,816.816 INFO    ] Checking for system updates...
[2026-10-25 12:16:42,852.852 INFO    ] 200
[2026-10-25 12:16:42,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:42,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:42,923.923 INFO    ] No update needed
[2026-10-25 12:16:42,925.925 INFO    ] Checking for camera pi updates...
[2026-10-25 12:16:42,961.961 INFO    ] 200
[2026-10-25 12:16:42,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:43,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:16:43,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:16:43,079.079 INFO    ] No camera update needed
[2026-10-25 12:16:43,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:16:43,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:16:43,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:16:43,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:16:45,139.139 INFO    ] ================================================
[2026-10-25 12:16:45,156.156 INFO    ] Launching Daemon at Sun Oct 25 12:16:45 IST 2026
[2026-10-25 12:16:45,167.167 INFO    ] ================================================
[2026-10-25 12:16:45,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:16:45
[2026-10-25 12:16:46,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:16:46,592.592 INFO    ] Initializing speech engine...
[2026-10-25 12:16:46,596.596 INFO    ] 2026-10-25 12:16:46
[2026-10-25 12:16:46,848.848 INFO    ] 2026-10-25 12:16:46
[2026-10-25 12:16:46,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:16:47,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:16:47,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:16:47,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:16:47,300.300 INFO    ] time= 25/10/2026 12:16:47
[2026-10-25 12:16:47,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:16:47,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:16:47,456.456 INFO    ] No existing commands found in stream
[2026-10-25 12:16:52,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:16:52,471.471 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 12:16:55,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:16:55,905.905 INFO    ] Checking for system updates...
[2026-10-25 12:16:55,946.946 INFO    ] 200
[2026-10-25 12:16:55,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:56,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:16:56,015.015 INFO    ] No update needed
[2026-10-25 12:16:56,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 12:16:56,056.056 INFO    ] 200
[2026-10-25 12:16:56,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:16:56,106.106 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:16:56,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:16:56,172.172 INFO    ] No camera update needed
[2026-10-25 12:16:56,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:16:56,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:16:56,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:16:56,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:16:58,227.227 INFO    ] ================================================
[2026-10-25 12:16:58,243.243 INFO    ] Launching Daemon at Sun Oct 25 12:16:58 IST 2026
[2026-10-25 12:16:58,254.254 INFO    ] ================================================
[2026-10-25 12:16:58,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:16:58
[2026-10-25 12:16:59,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:16:59,899.899 INFO    ] Initializing speech engine...
[2026-10-25 12:16:59,906.906 INFO    ] 2026-10-25 12:16:59
[2026-10-25 12:17:00,181.181 INFO    ] 2026-10-25 12:17:00
[2026-10-25 12:17:00,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:17:00,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:17:00,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:17:00,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:17:00,624.624 INFO    ] time= 25/10/2026 12:17:00
[2026-10-25 12:17:00,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:17:00,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:17:00,778.778 INFO    ] No existing commands found in stream
[2026-10-25 12:17:05,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:17:05,792.792 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 12:17:08,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:17:08,796.796 INFO    ] Checking for system updates...
[2026-10-25 12:17:08,833.833 INFO    ] 200
[2026-10-25 12:17:08,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:08,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:08,902.902 INFO    ] No update needed
[2026-10-25 12:17:08,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 12:17:08,939.939 INFO    ] 200
[2026-10-25 12:17:08,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:08,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:17:09,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:09,044.044 INFO    ] No camera update needed
[2026-10-25 12:17:09,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:17:09,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:17:09,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:17:09,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:17:11,098.098 INFO    ] ================================================
[2026-10-25 12:17:11,114.114 INFO    ] Launching Daemon at Sun Oct 25 12:17:11 IST 2026
[2026-10-25 12:17:11,124.124 INFO    ] ================================================
[2026-10-25 12:17:11,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:17:11
[2026-10-25 12:17:12,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:17:12,540.540 INFO    ] Initializing speech engine...
[2026-10-25 12:17:12,562.562 INFO    ] 2026-10-25 12:17:12
[2026-10-25 12:17:12,809.809 INFO    ] 2026-10-25 12:17:12
[2026-10-25 12:17:12,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:17:13,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:17:13,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:17:13,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:17:13,182.182 INFO    ] time= 25/10/2026 12:17:13
[2026-10-25 12:17:13,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:17:13,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:17:13,357.357 INFO    ] No existing commands found in stream
[2026-10-25 12:17:18,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:17:18,385.385 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 12:17:22,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:17:22,493.493 INFO    ] Checking for system updates...
[2026-10-25 12:17:22,530.530 INFO    ] 200
[2026-10-25 12:17:22,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:22,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:17:22,595.595 INFO    ] No update needed
[2026-10-25 12:17:22,597.597 INFO    ] Checking for camera pi updates...
[2026-10-25 12:17:22,635.635 INFO    ] 200
[2026-10-25 12:17:22,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:22,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:17:22,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:17:22,734.734 INFO    ] No camera update needed
[2026-10-25 12:17:22,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:17:22,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:17:22,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:17:22,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:17:24,793.793 INFO    ] ================================================
[2026-10-25 12:17:24,809.809 INFO    ] Launching Daemon at Sun Oct 25 12:17:24 IST 2026
[2026-10-25 12:17:24,820.820 INFO    ] ================================================
[2026-10-25 12:17:25,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:17:25
[2026-10-25 12:17:26,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:17:26,389.389 INFO    ] Initializing speech engine...
[2026-10-25 12:17:26,409.409 INFO    ] 2026-10-25 12:17:26
[2026-10-25 12:17:26,673.673 INFO    ] 2026-10-25 12:17:26
[2026-10-25 12:17:26,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:17:26,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:17:26,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:17:27,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:17:27,184.184 INFO    ] time= 25/10/2026 12:17:27
[2026-10-25 12:17:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:17:27,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:17:27,370.370 INFO    ] No existing commands found in stream
[2026-10-25 12:17:32,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:17:32,401.401 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 12:17:35,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:17:35,113.113 INFO    ] Checking for system updates...
[2026-10-25 12:17:35,153.153 INFO    ] 200
[2026-10-25 12:17:35,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:35,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:35,214.214 INFO    ] No update needed
[2026-10-25 12:17:35,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 12:17:35,255.255 INFO    ] 200
[2026-10-25 12:17:35,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:35,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:17:35,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:35,372.372 INFO    ] No camera update needed
[2026-10-25 12:17:35,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:17:35,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:17:35,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:17:35,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:17:37,432.432 INFO    ] ================================================
[2026-10-25 12:17:37,448.448 INFO    ] Launching Daemon at Sun Oct 25 12:17:37 IST 2026
[2026-10-25 12:17:37,458.458 INFO    ] ================================================
[2026-10-25 12:17:38,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:17:38
[2026-10-25 12:17:38,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:17:39,041.041 INFO    ] Initializing speech engine...
[2026-10-25 12:17:39,055.055 INFO    ] 2026-10-25 12:17:39
[2026-10-25 12:17:39,367.367 INFO    ] 2026-10-25 12:17:39
[2026-10-25 12:17:39,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:17:39,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:17:39,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:17:39,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:17:39,808.808 INFO    ] time= 25/10/2026 12:17:39
[2026-10-25 12:17:39,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:17:39,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:17:39,964.964 INFO    ] No existing commands found in stream
[2026-10-25 12:17:44,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:17:44,976.976 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 12:17:46,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:17:46,523.523 INFO    ] Checking for system updates...
[2026-10-25 12:17:46,564.564 INFO    ] 200
[2026-10-25 12:17:46,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:46,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:46,624.624 INFO    ] No update needed
[2026-10-25 12:17:46,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 12:17:46,667.667 INFO    ] 200
[2026-10-25 12:17:46,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:46,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:17:46,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:46,769.769 INFO    ] No camera update needed
[2026-10-25 12:17:46,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:17:46,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:17:46,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:17:46,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:17:48,828.828 INFO    ] ================================================
[2026-10-25 12:17:48,843.843 INFO    ] Launching Daemon at Sun Oct 25 12:17:48 IST 2026
[2026-10-25 12:17:48,854.854 INFO    ] ================================================
[2026-10-25 12:17:49,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:17:49
[2026-10-25 12:17:50,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:17:50,482.482 INFO    ] Initializing speech engine...
[2026-10-25 12:17:50,494.494 INFO    ] 2026-10-25 12:17:50
[2026-10-25 12:17:50,791.791 INFO    ] 2026-10-25 12:17:50
[2026-10-25 12:17:50,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:17:51,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:17:51,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:17:51,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:17:51,266.266 INFO    ] time= 25/10/2026 12:17:51
[2026-10-25 12:17:51,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:17:51,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:17:51,398.398 INFO    ] No existing commands found in stream
[2026-10-25 12:17:56,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:17:56,414.414 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 12:17:58,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:17:58,836.836 INFO    ] Checking for system updates...
[2026-10-25 12:17:58,874.874 INFO    ] 200
[2026-10-25 12:17:58,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:58,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:58,942.942 INFO    ] No update needed
[2026-10-25 12:17:58,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 12:17:58,980.980 INFO    ] 200
[2026-10-25 12:17:58,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:17:59,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:17:59,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:17:59,079.079 INFO    ] No camera update needed
[2026-10-25 12:17:59,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:17:59,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:17:59,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:17:59,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:18:01,139.139 INFO    ] ================================================
[2026-10-25 12:18:01,155.155 INFO    ] Launching Daemon at Sun Oct 25 12:18:01 IST 2026
[2026-10-25 12:18:01,166.166 INFO    ] ================================================
[2026-10-25 12:18:01,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:18:01
[2026-10-25 12:18:02,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:18:02,726.726 INFO    ] Initializing speech engine...
[2026-10-25 12:18:02,741.741 INFO    ] 2026-10-25 12:18:02
[2026-10-25 12:18:03,079.079 INFO    ] 2026-10-25 12:18:03
[2026-10-25 12:18:03,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:18:03,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:18:03,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:18:03,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:18:03,567.567 INFO    ] time= 25/10/2026 12:18:03
[2026-10-25 12:18:03,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:18:03,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:18:03,724.724 INFO    ] No existing commands found in stream
[2026-10-25 12:18:08,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:18:08,758.758 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 12:18:10,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:18:10,454.454 INFO    ] Checking for system updates...
[2026-10-25 12:18:10,492.492 INFO    ] 200
[2026-10-25 12:18:10,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:10,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:10,550.550 INFO    ] No update needed
[2026-10-25 12:18:10,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 12:18:10,587.587 INFO    ] 200
[2026-10-25 12:18:10,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:10,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:18:10,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:10,682.682 INFO    ] No camera update needed
[2026-10-25 12:18:10,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:18:10,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:18:10,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:18:10,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:18:12,738.738 INFO    ] ================================================
[2026-10-25 12:18:12,754.754 INFO    ] Launching Daemon at Sun Oct 25 12:18:12 IST 2026
[2026-10-25 12:18:12,765.765 INFO    ] ================================================
[2026-10-25 12:18:13,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:18:13
[2026-10-25 12:18:13,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:18:14,185.185 INFO    ] Initializing speech engine...
[2026-10-25 12:18:14,194.194 INFO    ] 2026-10-25 12:18:14
[2026-10-25 12:18:14,446.446 INFO    ] 2026-10-25 12:18:14
[2026-10-25 12:18:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:18:14,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:18:14,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:18:14,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:18:14,938.938 INFO    ] time= 25/10/2026 12:18:14
[2026-10-25 12:18:14,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:18:15,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:18:15,115.115 INFO    ] No existing commands found in stream
[2026-10-25 12:18:20,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:18:20,136.136 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 12:18:22,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:18:22,442.442 INFO    ] Checking for system updates...
[2026-10-25 12:18:22,479.479 INFO    ] 200
[2026-10-25 12:18:22,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:22,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:18:22,537.537 INFO    ] No update needed
[2026-10-25 12:18:22,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 12:18:22,574.574 INFO    ] 200
[2026-10-25 12:18:22,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:22,621.621 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:18:22,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:18:22,682.682 INFO    ] No camera update needed
[2026-10-25 12:18:22,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:18:22,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:18:22,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:18:22,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:18:24,741.741 INFO    ] ================================================
[2026-10-25 12:18:24,756.756 INFO    ] Launching Daemon at Sun Oct 25 12:18:24 IST 2026
[2026-10-25 12:18:24,767.767 INFO    ] ================================================
[2026-10-25 12:18:25,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:18:25
[2026-10-25 12:18:25,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:18:26,212.212 INFO    ] Initializing speech engine...
[2026-10-25 12:18:26,221.221 INFO    ] 2026-10-25 12:18:26
[2026-10-25 12:18:26,513.513 INFO    ] 2026-10-25 12:18:26
[2026-10-25 12:18:26,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:18:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:18:28,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:18:28,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:18:28,750.750 INFO    ] time= 25/10/2026 12:18:28
[2026-10-25 12:18:28,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:18:28,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:18:28,873.873 INFO    ] No existing commands found in stream
[2026-10-25 12:18:33,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:18:33,890.890 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 12:18:36,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:18:36,467.467 INFO    ] Checking for system updates...
[2026-10-25 12:18:36,503.503 INFO    ] 200
[2026-10-25 12:18:36,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:36,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:36,561.561 INFO    ] No update needed
[2026-10-25 12:18:36,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 12:18:36,601.601 INFO    ] 200
[2026-10-25 12:18:36,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:36,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:18:36,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:36,803.803 INFO    ] No camera update needed
[2026-10-25 12:18:36,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:18:36,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:18:36,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:18:36,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:18:38,857.857 INFO    ] ================================================
[2026-10-25 12:18:38,872.872 INFO    ] Launching Daemon at Sun Oct 25 12:18:38 IST 2026
[2026-10-25 12:18:38,883.883 INFO    ] ================================================
[2026-10-25 12:18:39,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:18:39
[2026-10-25 12:18:40,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:18:40,344.344 INFO    ] Initializing speech engine...
[2026-10-25 12:18:40,355.355 INFO    ] 2026-10-25 12:18:40
[2026-10-25 12:18:40,603.603 INFO    ] 2026-10-25 12:18:40
[2026-10-25 12:18:40,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:18:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:18:40,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:18:41,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:18:41,084.084 INFO    ] time= 25/10/2026 12:18:41
[2026-10-25 12:18:41,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:18:41,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:18:41,223.223 INFO    ] No existing commands found in stream
[2026-10-25 12:18:46,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:18:46,237.237 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 12:18:47,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:18:47,376.376 INFO    ] Checking for system updates...
[2026-10-25 12:18:47,412.412 INFO    ] 200
[2026-10-25 12:18:47,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:47,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:47,476.476 INFO    ] No update needed
[2026-10-25 12:18:47,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 12:18:47,516.516 INFO    ] 200
[2026-10-25 12:18:47,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:18:47,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:18:47,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:18:47,619.619 INFO    ] No camera update needed
[2026-10-25 12:18:47,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:18:47,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:18:47,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:18:47,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:18:49,676.676 INFO    ] ================================================
[2026-10-25 12:18:49,691.691 INFO    ] Launching Daemon at Sun Oct 25 12:18:49 IST 2026
[2026-10-25 12:18:49,702.702 INFO    ] ================================================
[2026-10-25 12:18:50,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:18:50
[2026-10-25 12:18:50,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:18:51,156.156 INFO    ] Initializing speech engine...
[2026-10-25 12:18:51,165.165 INFO    ] 2026-10-25 12:18:51
[2026-10-25 12:18:51,426.426 INFO    ] 2026-10-25 12:18:51
[2026-10-25 12:18:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:18:51,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:18:51,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:18:51,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:18:51,889.889 INFO    ] time= 25/10/2026 12:18:51
[2026-10-25 12:18:51,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:18:51,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:18:52,036.036 INFO    ] No existing commands found in stream
[2026-10-25 12:18:57,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:18:57,059.059 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 12:19:01,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:19:01,419.419 INFO    ] Checking for system updates...
[2026-10-25 12:19:01,492.492 INFO    ] 200
[2026-10-25 12:19:01,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:01,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:01,568.568 INFO    ] No update needed
[2026-10-25 12:19:01,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 12:19:01,613.613 INFO    ] 200
[2026-10-25 12:19:01,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:01,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:19:01,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:01,729.729 INFO    ] No camera update needed
[2026-10-25 12:19:01,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:19:01,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:19:01,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:19:01,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:19:03,790.790 INFO    ] ================================================
[2026-10-25 12:19:03,805.805 INFO    ] Launching Daemon at Sun Oct 25 12:19:03 IST 2026
[2026-10-25 12:19:03,816.816 INFO    ] ================================================
[2026-10-25 12:19:04,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:19:04
[2026-10-25 12:19:04,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:19:05,219.219 INFO    ] Initializing speech engine...
[2026-10-25 12:19:05,233.233 INFO    ] 2026-10-25 12:19:05
[2026-10-25 12:19:05,496.496 INFO    ] 2026-10-25 12:19:05
[2026-10-25 12:19:05,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:19:05,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:19:05,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:19:05,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:19:06,002.002 INFO    ] time= 25/10/2026 12:19:05
[2026-10-25 12:19:06,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:19:06,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:19:06,129.129 INFO    ] No existing commands found in stream
[2026-10-25 12:19:11,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:19:11,152.152 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 12:19:12,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:19:12,233.233 INFO    ] Checking for system updates...
[2026-10-25 12:19:12,268.268 INFO    ] 200
[2026-10-25 12:19:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:12,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:12,329.329 INFO    ] No update needed
[2026-10-25 12:19:12,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 12:19:12,368.368 INFO    ] 200
[2026-10-25 12:19:12,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:12,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:19:12,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:12,470.470 INFO    ] No camera update needed
[2026-10-25 12:19:12,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:19:12,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:19:12,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:19:12,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:19:14,526.526 INFO    ] ================================================
[2026-10-25 12:19:14,541.541 INFO    ] Launching Daemon at Sun Oct 25 12:19:14 IST 2026
[2026-10-25 12:19:14,552.552 INFO    ] ================================================
[2026-10-25 12:19:15,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:19:15
[2026-10-25 12:19:15,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:19:16,041.041 INFO    ] Initializing speech engine...
[2026-10-25 12:19:16,053.053 INFO    ] 2026-10-25 12:19:16
[2026-10-25 12:19:16,298.298 INFO    ] 2026-10-25 12:19:16
[2026-10-25 12:19:16,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:19:16,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:19:16,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:19:16,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:19:16,771.771 INFO    ] time= 25/10/2026 12:19:16
[2026-10-25 12:19:16,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:19:16,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:19:16,921.921 INFO    ] No existing commands found in stream
[2026-10-25 12:19:21,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:19:21,959.959 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 12:19:25,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:19:25,300.300 INFO    ] Checking for system updates...
[2026-10-25 12:19:25,340.340 INFO    ] 200
[2026-10-25 12:19:25,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:25,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:19:25,405.405 INFO    ] No update needed
[2026-10-25 12:19:25,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 12:19:25,445.445 INFO    ] 200
[2026-10-25 12:19:25,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:25,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:19:25,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:19:25,541.541 INFO    ] No camera update needed
[2026-10-25 12:19:25,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:19:25,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:19:25,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:19:25,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:19:27,600.600 INFO    ] ================================================
[2026-10-25 12:19:27,616.616 INFO    ] Launching Daemon at Sun Oct 25 12:19:27 IST 2026
[2026-10-25 12:19:27,627.627 INFO    ] ================================================
[2026-10-25 12:19:28,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:19:28
[2026-10-25 12:19:28,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:19:29,057.057 INFO    ] Initializing speech engine...
[2026-10-25 12:19:29,067.067 INFO    ] 2026-10-25 12:19:29
[2026-10-25 12:19:29,312.312 INFO    ] 2026-10-25 12:19:29
[2026-10-25 12:19:29,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:19:30,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:19:30,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:19:30,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:19:30,984.984 INFO    ] time= 25/10/2026 12:19:30
[2026-10-25 12:19:30,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:19:31,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:19:31,100.100 INFO    ] No existing commands found in stream
[2026-10-25 12:19:36,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:19:36,114.114 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 12:19:37,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:19:37,395.395 INFO    ] Checking for system updates...
[2026-10-25 12:19:37,433.433 INFO    ] 200
[2026-10-25 12:19:37,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:37,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:19:37,501.501 INFO    ] No update needed
[2026-10-25 12:19:37,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 12:19:37,540.540 INFO    ] 200
[2026-10-25 12:19:37,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:37,591.591 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:19:37,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:19:37,729.729 INFO    ] No camera update needed
[2026-10-25 12:19:37,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:19:37,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:19:37,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:19:37,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:19:39,790.790 INFO    ] ================================================
[2026-10-25 12:19:39,805.805 INFO    ] Launching Daemon at Sun Oct 25 12:19:39 IST 2026
[2026-10-25 12:19:39,816.816 INFO    ] ================================================
[2026-10-25 12:19:40,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:19:40
[2026-10-25 12:19:40,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:19:41,228.228 INFO    ] Initializing speech engine...
[2026-10-25 12:19:41,237.237 INFO    ] 2026-10-25 12:19:41
[2026-10-25 12:19:41,488.488 INFO    ] 2026-10-25 12:19:41
[2026-10-25 12:19:41,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:19:41,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:19:41,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:19:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:19:41,959.959 INFO    ] time= 25/10/2026 12:19:41
[2026-10-25 12:19:42,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:19:42,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:19:42,105.105 INFO    ] No existing commands found in stream
[2026-10-25 12:19:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:19:47,119.119 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 12:19:51,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:19:51,322.322 INFO    ] Checking for system updates...
[2026-10-25 12:19:51,359.359 INFO    ] 200
[2026-10-25 12:19:51,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:51,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:51,425.425 INFO    ] No update needed
[2026-10-25 12:19:51,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 12:19:51,462.462 INFO    ] 200
[2026-10-25 12:19:51,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:19:51,511.511 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:19:51,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:19:51,571.571 INFO    ] No camera update needed
[2026-10-25 12:19:51,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:19:51,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:19:51,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:19:51,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:19:53,626.626 INFO    ] ================================================
[2026-10-25 12:19:53,642.642 INFO    ] Launching Daemon at Sun Oct 25 12:19:53 IST 2026
[2026-10-25 12:19:53,653.653 INFO    ] ================================================
[2026-10-25 12:19:54,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:19:54
[2026-10-25 12:19:54,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:19:55,088.088 INFO    ] Initializing speech engine...
[2026-10-25 12:19:55,097.097 INFO    ] 2026-10-25 12:19:55
[2026-10-25 12:19:55,349.349 INFO    ] 2026-10-25 12:19:55
[2026-10-25 12:19:55,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:19:55,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:19:55,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:19:55,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:19:55,835.835 INFO    ] time= 25/10/2026 12:19:55
[2026-10-25 12:19:55,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:19:55,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:19:56,018.018 INFO    ] No existing commands found in stream
[2026-10-25 12:20:01,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:20:01,043.043 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 12:20:08,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:20:08,182.182 INFO    ] Checking for system updates...
[2026-10-25 12:20:08,223.223 INFO    ] 200
[2026-10-25 12:20:08,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:08,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:08,304.304 INFO    ] No update needed
[2026-10-25 12:20:08,307.307 INFO    ] Checking for camera pi updates...
[2026-10-25 12:20:08,342.342 INFO    ] 200
[2026-10-25 12:20:08,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:08,385.385 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:20:08,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:08,422.422 INFO    ] No camera update needed
[2026-10-25 12:20:08,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:20:08,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:20:08,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:20:08,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:20:10,478.478 INFO    ] ================================================
[2026-10-25 12:20:10,493.493 INFO    ] Launching Daemon at Sun Oct 25 12:20:10 IST 2026
[2026-10-25 12:20:10,504.504 INFO    ] ================================================
[2026-10-25 12:20:11,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:20:11
[2026-10-25 12:20:11,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:20:11,908.908 INFO    ] Initializing speech engine...
[2026-10-25 12:20:11,932.932 INFO    ] 2026-10-25 12:20:11
[2026-10-25 12:20:12,185.185 INFO    ] 2026-10-25 12:20:12
[2026-10-25 12:20:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:20:12,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:20:12,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:20:12,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:20:12,665.665 INFO    ] time= 25/10/2026 12:20:12
[2026-10-25 12:20:12,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:20:12,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:20:12,810.810 INFO    ] No existing commands found in stream
[2026-10-25 12:20:17,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:20:17,845.845 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 12:20:20,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:20:20,959.959 INFO    ] Checking for system updates...
[2026-10-25 12:20:21,000.000 INFO    ] 200
[2026-10-25 12:20:21,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:21,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:21,058.058 INFO    ] No update needed
[2026-10-25 12:20:21,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 12:20:21,098.098 INFO    ] 200
[2026-10-25 12:20:21,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:21,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:20:21,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:21,196.196 INFO    ] No camera update needed
[2026-10-25 12:20:21,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:20:21,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:20:21,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:20:21,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:20:23,252.252 INFO    ] ================================================
[2026-10-25 12:20:23,267.267 INFO    ] Launching Daemon at Sun Oct 25 12:20:23 IST 2026
[2026-10-25 12:20:23,278.278 INFO    ] ================================================
[2026-10-25 12:20:23,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:20:23
[2026-10-25 12:20:24,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:20:24,914.914 INFO    ] Initializing speech engine...
[2026-10-25 12:20:24,920.920 INFO    ] 2026-10-25 12:20:24
[2026-10-25 12:20:25,206.206 INFO    ] 2026-10-25 12:20:25
[2026-10-25 12:20:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:20:25,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:20:25,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:20:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:20:25,739.739 INFO    ] time= 25/10/2026 12:20:25
[2026-10-25 12:20:25,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:20:25,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:20:25,889.889 INFO    ] No existing commands found in stream
[2026-10-25 12:20:30,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:20:30,909.909 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 12:20:32,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:20:32,619.619 INFO    ] Checking for system updates...
[2026-10-25 12:20:32,672.672 INFO    ] 200
[2026-10-25 12:20:32,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:32,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:32,731.731 INFO    ] No update needed
[2026-10-25 12:20:32,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 12:20:32,768.768 INFO    ] 200
[2026-10-25 12:20:32,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:32,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:20:32,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:20:32,864.864 INFO    ] No camera update needed
[2026-10-25 12:20:32,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:20:32,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:20:32,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:20:32,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:20:34,921.921 INFO    ] ================================================
[2026-10-25 12:20:34,937.937 INFO    ] Launching Daemon at Sun Oct 25 12:20:34 IST 2026
[2026-10-25 12:20:34,949.949 INFO    ] ================================================
[2026-10-25 12:20:35,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:20:35
[2026-10-25 12:20:36,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:20:36,355.355 INFO    ] Initializing speech engine...
[2026-10-25 12:20:36,362.362 INFO    ] 2026-10-25 12:20:36
[2026-10-25 12:20:36,657.657 INFO    ] 2026-10-25 12:20:36
[2026-10-25 12:20:36,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:20:36,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:20:36,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:20:37,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:20:37,080.080 INFO    ] time= 25/10/2026 12:20:37
[2026-10-25 12:20:37,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:20:37,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:20:37,164.164 INFO    ] No existing commands found in stream
[2026-10-25 12:20:42,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:20:42,178.178 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 12:20:45,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:20:45,584.584 INFO    ] Checking for system updates...
[2026-10-25 12:20:45,623.623 INFO    ] 200
[2026-10-25 12:20:45,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:45,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:20:45,681.681 INFO    ] No update needed
[2026-10-25 12:20:45,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 12:20:45,722.722 INFO    ] 200
[2026-10-25 12:20:45,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:20:45,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:20:45,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:20:45,919.919 INFO    ] No camera update needed
[2026-10-25 12:20:45,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:20:45,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:20:45,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:20:45,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:20:47,974.974 INFO    ] ================================================
[2026-10-25 12:20:47,990.990 INFO    ] Launching Daemon at Sun Oct 25 12:20:47 IST 2026
[2026-10-25 12:20:48,001.001 INFO    ] ================================================
[2026-10-25 12:20:48,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:20:48
[2026-10-25 12:20:49,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:20:49,646.646 INFO    ] Initializing speech engine...
[2026-10-25 12:20:49,653.653 INFO    ] 2026-10-25 12:20:49
[2026-10-25 12:20:49,936.936 INFO    ] 2026-10-25 12:20:49
[2026-10-25 12:20:49,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:20:50,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:20:50,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:20:50,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:20:50,467.467 INFO    ] time= 25/10/2026 12:20:50
[2026-10-25 12:20:50,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:20:50,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:20:50,622.622 INFO    ] No existing commands found in stream
[2026-10-25 12:20:55,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:20:55,642.642 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 12:21:03,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:21:03,439.439 INFO    ] Checking for system updates...
[2026-10-25 12:21:03,481.481 INFO    ] 200
[2026-10-25 12:21:03,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:03,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:03,556.556 INFO    ] No update needed
[2026-10-25 12:21:03,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 12:21:03,597.597 INFO    ] 200
[2026-10-25 12:21:03,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:03,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:21:03,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:03,693.693 INFO    ] No camera update needed
[2026-10-25 12:21:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:21:03,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:21:03,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:21:03,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:21:05,751.751 INFO    ] ================================================
[2026-10-25 12:21:05,767.767 INFO    ] Launching Daemon at Sun Oct 25 12:21:05 IST 2026
[2026-10-25 12:21:05,778.778 INFO    ] ================================================
[2026-10-25 12:21:06,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:21:06
[2026-10-25 12:21:06,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:21:07,234.234 INFO    ] Initializing speech engine...
[2026-10-25 12:21:07,244.244 INFO    ] 2026-10-25 12:21:07
[2026-10-25 12:21:07,506.506 INFO    ] 2026-10-25 12:21:07
[2026-10-25 12:21:07,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:21:07,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:21:07,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:21:07,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:21:07,971.971 INFO    ] time= 25/10/2026 12:21:07
[2026-10-25 12:21:08,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:21:08,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:21:08,154.154 INFO    ] No existing commands found in stream
[2026-10-25 12:21:13,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:21:13,186.186 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 12:21:16,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:21:16,835.835 INFO    ] Checking for system updates...
[2026-10-25 12:21:16,872.872 INFO    ] 200
[2026-10-25 12:21:16,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:16,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:21:16,934.934 INFO    ] No update needed
[2026-10-25 12:21:16,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 12:21:16,975.975 INFO    ] 200
[2026-10-25 12:21:16,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:17,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:21:17,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:21:17,076.076 INFO    ] No camera update needed
[2026-10-25 12:21:17,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:21:17,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:21:17,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:21:17,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:21:19,133.133 INFO    ] ================================================
[2026-10-25 12:21:19,152.152 INFO    ] Launching Daemon at Sun Oct 25 12:21:19 IST 2026
[2026-10-25 12:21:19,164.164 INFO    ] ================================================
[2026-10-25 12:21:19,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:21:19
[2026-10-25 12:21:20,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:21:20,564.564 INFO    ] Initializing speech engine...
[2026-10-25 12:21:20,579.579 INFO    ] 2026-10-25 12:21:20
[2026-10-25 12:21:20,846.846 INFO    ] 2026-10-25 12:21:20
[2026-10-25 12:21:20,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:21:21,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:21:21,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:21:21,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:21:21,294.294 INFO    ] time= 25/10/2026 12:21:21
[2026-10-25 12:21:21,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:21:21,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:21:21,462.462 INFO    ] No existing commands found in stream
[2026-10-25 12:21:26,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:21:26,475.475 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 12:21:29,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:21:29,847.847 INFO    ] Checking for system updates...
[2026-10-25 12:21:29,884.884 INFO    ] 200
[2026-10-25 12:21:29,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:29,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:29,941.941 INFO    ] No update needed
[2026-10-25 12:21:29,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 12:21:29,978.978 INFO    ] 200
[2026-10-25 12:21:29,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:30,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:21:30,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:30,090.090 INFO    ] No camera update needed
[2026-10-25 12:21:30,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:21:30,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:21:30,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:21:30,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:21:32,147.147 INFO    ] ================================================
[2026-10-25 12:21:32,163.163 INFO    ] Launching Daemon at Sun Oct 25 12:21:32 IST 2026
[2026-10-25 12:21:32,175.175 INFO    ] ================================================
[2026-10-25 12:21:32,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:21:32
[2026-10-25 12:21:33,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:21:33,675.675 INFO    ] Initializing speech engine...
[2026-10-25 12:21:33,683.683 INFO    ] 2026-10-25 12:21:33
[2026-10-25 12:21:33,958.958 INFO    ] 2026-10-25 12:21:33
[2026-10-25 12:21:34,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:21:34,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:21:34,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:21:34,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:21:34,774.774 INFO    ] time= 25/10/2026 12:21:34
[2026-10-25 12:21:34,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:21:34,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:21:34,965.965 INFO    ] No existing commands found in stream
[2026-10-25 12:21:39,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:21:39,998.998 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 12:21:40,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:21:40,504.504 INFO    ] Checking for system updates...
[2026-10-25 12:21:40,544.544 INFO    ] 200
[2026-10-25 12:21:40,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:40,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:21:40,610.610 INFO    ] No update needed
[2026-10-25 12:21:40,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 12:21:40,651.651 INFO    ] 200
[2026-10-25 12:21:40,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:40,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:21:40,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:21:40,748.748 INFO    ] No camera update needed
[2026-10-25 12:21:40,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:21:40,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:21:40,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:21:40,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:21:42,804.804 INFO    ] ================================================
[2026-10-25 12:21:42,820.820 INFO    ] Launching Daemon at Sun Oct 25 12:21:42 IST 2026
[2026-10-25 12:21:42,832.832 INFO    ] ================================================
[2026-10-25 12:21:43,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:21:43
[2026-10-25 12:21:44,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:21:44,375.375 INFO    ] Initializing speech engine...
[2026-10-25 12:21:44,382.382 INFO    ] 2026-10-25 12:21:44
[2026-10-25 12:21:44,709.709 INFO    ] 2026-10-25 12:21:44
[2026-10-25 12:21:44,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:21:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:21:44,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:21:45,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:21:45,090.090 INFO    ] time= 25/10/2026 12:21:45
[2026-10-25 12:21:45,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:21:45,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:21:45,175.175 INFO    ] No existing commands found in stream
[2026-10-25 12:21:50,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:21:50,190.190 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 12:21:52,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:21:52,432.432 INFO    ] Checking for system updates...
[2026-10-25 12:21:52,475.475 INFO    ] 200
[2026-10-25 12:21:52,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:52,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:52,544.544 INFO    ] No update needed
[2026-10-25 12:21:52,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 12:21:52,583.583 INFO    ] 200
[2026-10-25 12:21:52,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:21:52,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:21:52,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:21:52,681.681 INFO    ] No camera update needed
[2026-10-25 12:21:52,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:21:52,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:21:52,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:21:52,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:21:54,741.741 INFO    ] ================================================
[2026-10-25 12:21:54,757.757 INFO    ] Launching Daemon at Sun Oct 25 12:21:54 IST 2026
[2026-10-25 12:21:54,768.768 INFO    ] ================================================
[2026-10-25 12:21:55,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:21:55
[2026-10-25 12:21:55,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:21:56,174.174 INFO    ] Initializing speech engine...
[2026-10-25 12:21:56,181.181 INFO    ] 2026-10-25 12:21:56
[2026-10-25 12:21:56,479.479 INFO    ] 2026-10-25 12:21:56
[2026-10-25 12:21:56,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:21:56,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:21:56,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:21:56,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:21:56,864.864 INFO    ] time= 25/10/2026 12:21:56
[2026-10-25 12:21:56,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:21:56,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:21:56,991.991 INFO    ] No existing commands found in stream
[2026-10-25 12:22:02,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:22:02,006.006 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 12:22:05,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:22:05,758.758 INFO    ] Checking for system updates...
[2026-10-25 12:22:05,808.808 INFO    ] 200
[2026-10-25 12:22:05,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:05,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:22:05,875.875 INFO    ] No update needed
[2026-10-25 12:22:05,877.877 INFO    ] Checking for camera pi updates...
[2026-10-25 12:22:05,916.916 INFO    ] 200
[2026-10-25 12:22:05,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:05,965.965 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:22:06,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:22:06,015.015 INFO    ] No camera update needed
[2026-10-25 12:22:06,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:22:06,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:22:06,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:22:06,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:22:08,074.074 INFO    ] ================================================
[2026-10-25 12:22:08,090.090 INFO    ] Launching Daemon at Sun Oct 25 12:22:08 IST 2026
[2026-10-25 12:22:08,101.101 INFO    ] ================================================
[2026-10-25 12:22:08,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:22:08
[2026-10-25 12:22:09,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:22:09,781.781 INFO    ] Initializing speech engine...
[2026-10-25 12:22:09,787.787 INFO    ] 2026-10-25 12:22:09
[2026-10-25 12:22:10,053.053 INFO    ] 2026-10-25 12:22:10
[2026-10-25 12:22:10,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:22:10,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:22:10,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:22:10,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:22:10,435.435 INFO    ] time= 25/10/2026 12:22:10
[2026-10-25 12:22:10,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:22:10,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:22:10,563.563 INFO    ] No existing commands found in stream
[2026-10-25 12:22:15,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:22:15,576.576 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 12:22:16,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:22:16,457.457 INFO    ] Checking for system updates...
[2026-10-25 12:22:16,497.497 INFO    ] 200
[2026-10-25 12:22:16,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:16,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:16,562.562 INFO    ] No update needed
[2026-10-25 12:22:16,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 12:22:16,598.598 INFO    ] 200
[2026-10-25 12:22:16,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:16,646.646 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:22:16,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:16,680.680 INFO    ] No camera update needed
[2026-10-25 12:22:16,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:22:16,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:22:16,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:22:16,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:22:18,736.736 INFO    ] ================================================
[2026-10-25 12:22:18,752.752 INFO    ] Launching Daemon at Sun Oct 25 12:22:18 IST 2026
[2026-10-25 12:22:18,764.764 INFO    ] ================================================
[2026-10-25 12:22:19,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:22:19
[2026-10-25 12:22:19,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:22:20,164.164 INFO    ] Initializing speech engine...
[2026-10-25 12:22:20,169.169 INFO    ] 2026-10-25 12:22:20
[2026-10-25 12:22:20,437.437 INFO    ] 2026-10-25 12:22:20
[2026-10-25 12:22:20,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:22:20,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:22:20,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:22:20,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:22:20,791.791 INFO    ] time= 25/10/2026 12:22:20
[2026-10-25 12:22:20,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:22:20,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:22:20,925.925 INFO    ] No existing commands found in stream
[2026-10-25 12:22:25,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:22:25,939.939 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 12:22:27,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:22:27,174.174 INFO    ] Checking for system updates...
[2026-10-25 12:22:27,210.210 INFO    ] 200
[2026-10-25 12:22:27,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:27,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:22:27,267.267 INFO    ] No update needed
[2026-10-25 12:22:27,269.269 INFO    ] Checking for camera pi updates...
[2026-10-25 12:22:27,304.304 INFO    ] 200
[2026-10-25 12:22:27,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:27,347.347 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:22:27,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:22:27,399.399 INFO    ] No camera update needed
[2026-10-25 12:22:27,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:22:27,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:22:27,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:22:27,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:22:29,455.455 INFO    ] ================================================
[2026-10-25 12:22:29,471.471 INFO    ] Launching Daemon at Sun Oct 25 12:22:29 IST 2026
[2026-10-25 12:22:29,482.482 INFO    ] ================================================
[2026-10-25 12:22:30,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:22:30
[2026-10-25 12:22:30,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:22:31,107.107 INFO    ] Initializing speech engine...
[2026-10-25 12:22:31,118.118 INFO    ] 2026-10-25 12:22:31
[2026-10-25 12:22:31,408.408 INFO    ] 2026-10-25 12:22:31
[2026-10-25 12:22:31,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:22:31,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:22:31,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:22:31,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:22:31,986.986 INFO    ] time= 25/10/2026 12:22:31
[2026-10-25 12:22:31,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:22:32,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:22:32,131.131 INFO    ] No existing commands found in stream
[2026-10-25 12:22:37,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:22:37,157.157 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 12:22:40,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:22:40,264.264 INFO    ] Checking for system updates...
[2026-10-25 12:22:40,300.300 INFO    ] 200
[2026-10-25 12:22:40,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:40,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:40,365.365 INFO    ] No update needed
[2026-10-25 12:22:40,367.367 INFO    ] Checking for camera pi updates...
[2026-10-25 12:22:40,405.405 INFO    ] 200
[2026-10-25 12:22:40,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:40,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:22:40,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:40,510.510 INFO    ] No camera update needed
[2026-10-25 12:22:40,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:22:40,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:22:40,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:22:40,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:22:42,565.565 INFO    ] ================================================
[2026-10-25 12:22:42,581.581 INFO    ] Launching Daemon at Sun Oct 25 12:22:42 IST 2026
[2026-10-25 12:22:42,592.592 INFO    ] ================================================
[2026-10-25 12:22:43,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:22:43
[2026-10-25 12:22:43,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:22:43,992.992 INFO    ] Initializing speech engine...
[2026-10-25 12:22:43,997.997 INFO    ] 2026-10-25 12:22:43
[2026-10-25 12:22:44,297.297 INFO    ] 2026-10-25 12:22:44
[2026-10-25 12:22:44,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:22:44,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:22:44,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:22:44,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:22:44,680.680 INFO    ] time= 25/10/2026 12:22:44
[2026-10-25 12:22:44,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:22:44,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:22:44,808.808 INFO    ] No existing commands found in stream
[2026-10-25 12:22:49,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:22:49,826.826 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 12:22:50,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:22:50,584.584 INFO    ] Checking for system updates...
[2026-10-25 12:22:50,625.625 INFO    ] 200
[2026-10-25 12:22:50,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:50,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:50,683.683 INFO    ] No update needed
[2026-10-25 12:22:50,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 12:22:50,723.723 INFO    ] 200
[2026-10-25 12:22:50,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:22:50,767.767 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:22:50,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:22:50,929.929 INFO    ] No camera update needed
[2026-10-25 12:22:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:22:50,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:22:50,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:22:50,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:22:52,984.984 INFO    ] ================================================
[2026-10-25 12:22:53,000.000 INFO    ] Launching Daemon at Sun Oct 25 12:22:52 IST 2026
[2026-10-25 12:22:53,011.011 INFO    ] ================================================
[2026-10-25 12:22:53,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:22:53
[2026-10-25 12:22:54,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:22:54,470.470 INFO    ] Initializing speech engine...
[2026-10-25 12:22:54,481.481 INFO    ] 2026-10-25 12:22:54
[2026-10-25 12:22:54,735.735 INFO    ] 2026-10-25 12:22:54
[2026-10-25 12:22:54,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:22:55,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:22:55,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:22:55,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:22:55,284.284 INFO    ] time= 25/10/2026 12:22:55
[2026-10-25 12:22:55,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:22:55,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:22:55,436.436 INFO    ] No existing commands found in stream
[2026-10-25 12:23:00,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:23:00,453.453 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 12:23:03,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:23:03,762.762 INFO    ] Checking for system updates...
[2026-10-25 12:23:03,803.803 INFO    ] 200
[2026-10-25 12:23:03,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:03,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:03,870.870 INFO    ] No update needed
[2026-10-25 12:23:03,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 12:23:03,911.911 INFO    ] 200
[2026-10-25 12:23:03,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:03,960.960 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:23:04,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:04,009.009 INFO    ] No camera update needed
[2026-10-25 12:23:04,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:23:04,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:23:04,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:23:04,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:23:06,066.066 INFO    ] ================================================
[2026-10-25 12:23:06,082.082 INFO    ] Launching Daemon at Sun Oct 25 12:23:06 IST 2026
[2026-10-25 12:23:06,093.093 INFO    ] ================================================
[2026-10-25 12:23:06,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:23:06
[2026-10-25 12:23:07,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:23:07,765.765 INFO    ] Initializing speech engine...
[2026-10-25 12:23:07,779.779 INFO    ] 2026-10-25 12:23:07
[2026-10-25 12:23:08,072.072 INFO    ] 2026-10-25 12:23:08
[2026-10-25 12:23:08,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:23:08,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:23:08,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:23:08,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:23:08,614.614 INFO    ] time= 25/10/2026 12:23:08
[2026-10-25 12:23:08,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:23:08,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:23:08,749.749 INFO    ] No existing commands found in stream
[2026-10-25 12:23:13,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:23:13,784.784 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 12:23:14,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:23:14,814.814 INFO    ] Checking for system updates...
[2026-10-25 12:23:14,856.856 INFO    ] 200
[2026-10-25 12:23:14,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:14,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:23:14,917.917 INFO    ] No update needed
[2026-10-25 12:23:14,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 12:23:14,959.959 INFO    ] 200
[2026-10-25 12:23:14,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:15,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:23:15,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:23:15,061.061 INFO    ] No camera update needed
[2026-10-25 12:23:15,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:23:15,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:23:15,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:23:15,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:23:17,122.122 INFO    ] ================================================
[2026-10-25 12:23:17,138.138 INFO    ] Launching Daemon at Sun Oct 25 12:23:17 IST 2026
[2026-10-25 12:23:17,149.149 INFO    ] ================================================
[2026-10-25 12:23:17,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:23:17
[2026-10-25 12:23:18,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:23:18,560.560 INFO    ] Initializing speech engine...
[2026-10-25 12:23:18,585.585 INFO    ] 2026-10-25 12:23:18
[2026-10-25 12:23:18,844.844 INFO    ] 2026-10-25 12:23:18
[2026-10-25 12:23:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:23:19,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:23:19,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:23:19,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:23:19,221.221 INFO    ] time= 25/10/2026 12:23:19
[2026-10-25 12:23:19,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:23:19,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:23:19,382.382 INFO    ] No existing commands found in stream
[2026-10-25 12:23:24,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:23:24,409.409 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 12:23:28,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:23:28,611.611 INFO    ] Checking for system updates...
[2026-10-25 12:23:28,647.647 INFO    ] 200
[2026-10-25 12:23:28,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:28,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:23:28,706.706 INFO    ] No update needed
[2026-10-25 12:23:28,708.708 INFO    ] Checking for camera pi updates...
[2026-10-25 12:23:28,747.747 INFO    ] 200
[2026-10-25 12:23:28,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:28,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:23:28,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:23:28,838.838 INFO    ] No camera update needed
[2026-10-25 12:23:28,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:23:28,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:23:28,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:23:28,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:23:30,895.895 INFO    ] ================================================
[2026-10-25 12:23:30,911.911 INFO    ] Launching Daemon at Sun Oct 25 12:23:30 IST 2026
[2026-10-25 12:23:30,922.922 INFO    ] ================================================
[2026-10-25 12:23:31,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:23:31
[2026-10-25 12:23:32,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:23:32,494.494 INFO    ] Initializing speech engine...
[2026-10-25 12:23:32,517.517 INFO    ] 2026-10-25 12:23:32
[2026-10-25 12:23:32,806.806 INFO    ] 2026-10-25 12:23:32
[2026-10-25 12:23:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:23:33,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:23:33,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:23:33,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:23:33,305.305 INFO    ] time= 25/10/2026 12:23:33
[2026-10-25 12:23:33,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:23:33,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:23:33,509.509 INFO    ] No existing commands found in stream
[2026-10-25 12:23:38,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:23:38,537.537 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 12:23:39,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:23:39,550.550 INFO    ] Checking for system updates...
[2026-10-25 12:23:39,588.588 INFO    ] 200
[2026-10-25 12:23:39,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:39,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:39,655.655 INFO    ] No update needed
[2026-10-25 12:23:39,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 12:23:39,696.696 INFO    ] 200
[2026-10-25 12:23:39,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:39,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:23:39,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:39,807.807 INFO    ] No camera update needed
[2026-10-25 12:23:39,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:23:39,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:23:39,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:23:39,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:23:41,863.863 INFO    ] ================================================
[2026-10-25 12:23:41,879.879 INFO    ] Launching Daemon at Sun Oct 25 12:23:41 IST 2026
[2026-10-25 12:23:41,890.890 INFO    ] ================================================
[2026-10-25 12:23:42,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:23:42
[2026-10-25 12:23:43,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:23:43,557.557 INFO    ] Initializing speech engine...
[2026-10-25 12:23:43,569.569 INFO    ] 2026-10-25 12:23:43
[2026-10-25 12:23:43,881.881 INFO    ] 2026-10-25 12:23:43
[2026-10-25 12:23:43,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:23:44,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:23:44,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:23:44,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:23:44,390.390 INFO    ] time= 25/10/2026 12:23:44
[2026-10-25 12:23:44,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:23:44,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:23:44,543.543 INFO    ] No existing commands found in stream
[2026-10-25 12:23:49,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:23:49,564.564 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 12:23:53,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:23:53,516.516 INFO    ] Checking for system updates...
[2026-10-25 12:23:53,559.559 INFO    ] 200
[2026-10-25 12:23:53,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:53,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:53,617.617 INFO    ] No update needed
[2026-10-25 12:23:53,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 12:23:53,656.656 INFO    ] 200
[2026-10-25 12:23:53,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:23:53,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:23:53,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:23:53,747.747 INFO    ] No camera update needed
[2026-10-25 12:23:53,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:23:53,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:23:53,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:23:53,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:23:55,801.801 INFO    ] ================================================
[2026-10-25 12:23:55,816.816 INFO    ] Launching Daemon at Sun Oct 25 12:23:55 IST 2026
[2026-10-25 12:23:55,827.827 INFO    ] ================================================
[2026-10-25 12:23:56,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:23:56
[2026-10-25 12:23:56,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:23:57,226.226 INFO    ] Initializing speech engine...
[2026-10-25 12:23:57,231.231 INFO    ] 2026-10-25 12:23:57
[2026-10-25 12:23:57,536.536 INFO    ] 2026-10-25 12:23:57
[2026-10-25 12:23:57,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:23:57,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:23:57,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:23:57,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:23:57,921.921 INFO    ] time= 25/10/2026 12:23:57
[2026-10-25 12:23:57,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:23:57,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:23:58,042.042 INFO    ] No existing commands found in stream
[2026-10-25 12:24:03,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:24:03,064.064 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 12:24:05,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:24:05,634.634 INFO    ] Checking for system updates...
[2026-10-25 12:24:05,670.670 INFO    ] 200
[2026-10-25 12:24:05,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:05,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:24:05,735.735 INFO    ] No update needed
[2026-10-25 12:24:05,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 12:24:05,771.771 INFO    ] 200
[2026-10-25 12:24:05,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:05,815.815 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:24:05,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:24:05,879.879 INFO    ] No camera update needed
[2026-10-25 12:24:05,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:24:05,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:24:05,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:24:05,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:24:07,934.934 INFO    ] ================================================
[2026-10-25 12:24:07,950.950 INFO    ] Launching Daemon at Sun Oct 25 12:24:07 IST 2026
[2026-10-25 12:24:07,964.964 INFO    ] ================================================
[2026-10-25 12:24:08,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:24:08
[2026-10-25 12:24:09,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:24:09,363.363 INFO    ] Initializing speech engine...
[2026-10-25 12:24:09,386.386 INFO    ] 2026-10-25 12:24:09
[2026-10-25 12:24:09,636.636 INFO    ] 2026-10-25 12:24:09
[2026-10-25 12:24:09,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:24:10,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:24:10,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:24:10,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:24:10,366.366 INFO    ] time= 25/10/2026 12:24:10
[2026-10-25 12:24:10,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:24:10,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:24:10,496.496 INFO    ] No existing commands found in stream
[2026-10-25 12:24:15,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:24:15,515.515 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 12:24:17,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:24:17,785.785 INFO    ] Checking for system updates...
[2026-10-25 12:24:17,823.823 INFO    ] 200
[2026-10-25 12:24:17,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:17,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:17,882.882 INFO    ] No update needed
[2026-10-25 12:24:17,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 12:24:17,923.923 INFO    ] 200
[2026-10-25 12:24:17,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:17,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:24:18,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:18,018.018 INFO    ] No camera update needed
[2026-10-25 12:24:18,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:24:18,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:24:18,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:24:18,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:24:20,076.076 INFO    ] ================================================
[2026-10-25 12:24:20,092.092 INFO    ] Launching Daemon at Sun Oct 25 12:24:20 IST 2026
[2026-10-25 12:24:20,103.103 INFO    ] ================================================
[2026-10-25 12:24:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:24:20
[2026-10-25 12:24:21,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:24:21,566.566 INFO    ] Initializing speech engine...
[2026-10-25 12:24:21,572.572 INFO    ] 2026-10-25 12:24:21
[2026-10-25 12:24:21,833.833 INFO    ] 2026-10-25 12:24:21
[2026-10-25 12:24:21,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:24:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:24:22,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:24:22,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:24:22,337.337 INFO    ] time= 25/10/2026 12:24:22
[2026-10-25 12:24:22,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:24:22,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:24:22,516.516 INFO    ] No existing commands found in stream
[2026-10-25 12:24:27,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:24:27,543.543 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 12:24:28,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:24:28,409.409 INFO    ] Checking for system updates...
[2026-10-25 12:24:28,446.446 INFO    ] 200
[2026-10-25 12:24:28,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:28,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:28,506.506 INFO    ] No update needed
[2026-10-25 12:24:28,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 12:24:28,545.545 INFO    ] 200
[2026-10-25 12:24:28,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:28,588.588 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:24:28,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:28,637.637 INFO    ] No camera update needed
[2026-10-25 12:24:28,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:24:28,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:24:28,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:24:28,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:24:30,694.694 INFO    ] ================================================
[2026-10-25 12:24:30,710.710 INFO    ] Launching Daemon at Sun Oct 25 12:24:30 IST 2026
[2026-10-25 12:24:30,721.721 INFO    ] ================================================
[2026-10-25 12:24:31,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:24:31
[2026-10-25 12:24:31,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:24:32,255.255 INFO    ] Initializing speech engine...
[2026-10-25 12:24:32,263.263 INFO    ] 2026-10-25 12:24:32
[2026-10-25 12:24:32,533.533 INFO    ] 2026-10-25 12:24:32
[2026-10-25 12:24:32,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:24:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:24:32,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:24:32,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:24:33,033.033 INFO    ] time= 25/10/2026 12:24:32
[2026-10-25 12:24:33,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:24:33,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:24:33,160.160 INFO    ] No existing commands found in stream
[2026-10-25 12:24:38,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:24:38,182.182 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 12:24:41,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:24:41,552.552 INFO    ] Checking for system updates...
[2026-10-25 12:24:41,592.592 INFO    ] 200
[2026-10-25 12:24:41,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:41,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:41,651.651 INFO    ] No update needed
[2026-10-25 12:24:41,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 12:24:41,689.689 INFO    ] 200
[2026-10-25 12:24:41,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:41,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:24:41,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:41,790.790 INFO    ] No camera update needed
[2026-10-25 12:24:41,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:24:41,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:24:41,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:24:41,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:24:43,848.848 INFO    ] ================================================
[2026-10-25 12:24:43,863.863 INFO    ] Launching Daemon at Sun Oct 25 12:24:43 IST 2026
[2026-10-25 12:24:43,874.874 INFO    ] ================================================
[2026-10-25 12:24:44,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:24:44
[2026-10-25 12:24:45,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:24:45,344.344 INFO    ] Initializing speech engine...
[2026-10-25 12:24:45,353.353 INFO    ] 2026-10-25 12:24:45
[2026-10-25 12:24:45,602.602 INFO    ] 2026-10-25 12:24:45
[2026-10-25 12:24:45,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:24:45,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:24:45,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:24:45,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:24:46,036.036 INFO    ] time= 25/10/2026 12:24:46
[2026-10-25 12:24:46,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:24:46,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:24:46,220.220 INFO    ] No existing commands found in stream
[2026-10-25 12:24:51,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:24:51,234.234 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 12:24:55,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:24:55,138.138 INFO    ] Checking for system updates...
[2026-10-25 12:24:55,174.174 INFO    ] 200
[2026-10-25 12:24:55,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:55,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:55,233.233 INFO    ] No update needed
[2026-10-25 12:24:55,235.235 INFO    ] Checking for camera pi updates...
[2026-10-25 12:24:55,269.269 INFO    ] 200
[2026-10-25 12:24:55,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:24:55,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:24:55,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:24:55,468.468 INFO    ] No camera update needed
[2026-10-25 12:24:55,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:24:55,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:24:55,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:24:55,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:24:57,523.523 INFO    ] ================================================
[2026-10-25 12:24:57,539.539 INFO    ] Launching Daemon at Sun Oct 25 12:24:57 IST 2026
[2026-10-25 12:24:57,550.550 INFO    ] ================================================
[2026-10-25 12:24:58,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:24:58
[2026-10-25 12:24:58,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:24:59,044.044 INFO    ] Initializing speech engine...
[2026-10-25 12:24:59,052.052 INFO    ] 2026-10-25 12:24:59
[2026-10-25 12:24:59,354.354 INFO    ] 2026-10-25 12:24:59
[2026-10-25 12:24:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:24:59,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:24:59,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:24:59,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:24:59,921.921 INFO    ] time= 25/10/2026 12:24:59
[2026-10-25 12:24:59,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:24:59,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:25:00,072.072 INFO    ] No existing commands found in stream
[2026-10-25 12:25:05,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:25:05,103.103 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 12:25:12,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:25:12,345.345 INFO    ] Checking for system updates...
[2026-10-25 12:25:12,383.383 INFO    ] 200
[2026-10-25 12:25:12,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:12,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:12,441.441 INFO    ] No update needed
[2026-10-25 12:25:12,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 12:25:12,485.485 INFO    ] 200
[2026-10-25 12:25:12,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:12,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:25:12,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:12,586.586 INFO    ] No camera update needed
[2026-10-25 12:25:12,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:25:12,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:25:12,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:25:12,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:25:14,641.641 INFO    ] ================================================
[2026-10-25 12:25:14,657.657 INFO    ] Launching Daemon at Sun Oct 25 12:25:14 IST 2026
[2026-10-25 12:25:14,668.668 INFO    ] ================================================
[2026-10-25 12:25:15,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:25:15
[2026-10-25 12:25:15,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:25:16,210.210 INFO    ] Initializing speech engine...
[2026-10-25 12:25:16,233.233 INFO    ] 2026-10-25 12:25:16
[2026-10-25 12:25:16,488.488 INFO    ] 2026-10-25 12:25:16
[2026-10-25 12:25:16,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:25:16,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:25:16,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:25:16,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:25:16,896.896 INFO    ] time= 25/10/2026 12:25:16
[2026-10-25 12:25:16,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:25:16,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:25:16,982.982 INFO    ] No existing commands found in stream
[2026-10-25 12:25:21,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:25:21,999.999 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 12:25:23,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:25:23,687.687 INFO    ] Checking for system updates...
[2026-10-25 12:25:23,729.729 INFO    ] 200
[2026-10-25 12:25:23,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:23,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:23,796.796 INFO    ] No update needed
[2026-10-25 12:25:23,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 12:25:23,832.832 INFO    ] 200
[2026-10-25 12:25:23,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:23,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:25:23,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:23,936.936 INFO    ] No camera update needed
[2026-10-25 12:25:23,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:25:23,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:25:23,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:25:23,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:25:25,992.992 INFO    ] ================================================
[2026-10-25 12:25:26,007.007 INFO    ] Launching Daemon at Sun Oct 25 12:25:26 IST 2026
[2026-10-25 12:25:26,019.019 INFO    ] ================================================
[2026-10-25 12:25:26,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:25:26
[2026-10-25 12:25:27,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:25:27,436.436 INFO    ] Initializing speech engine...
[2026-10-25 12:25:27,444.444 INFO    ] 2026-10-25 12:25:27
[2026-10-25 12:25:27,691.691 INFO    ] 2026-10-25 12:25:27
[2026-10-25 12:25:27,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:25:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:25:27,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:25:28,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:25:28,055.055 INFO    ] time= 25/10/2026 12:25:28
[2026-10-25 12:25:28,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:25:28,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:25:28,219.219 INFO    ] No existing commands found in stream
[2026-10-25 12:25:33,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:25:33,253.253 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 12:25:34,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:25:34,943.943 INFO    ] Checking for system updates...
[2026-10-25 12:25:34,979.979 INFO    ] 200
[2026-10-25 12:25:34,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:35,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:25:35,038.038 INFO    ] No update needed
[2026-10-25 12:25:35,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 12:25:35,074.074 INFO    ] 200
[2026-10-25 12:25:35,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:35,121.121 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:25:35,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:25:35,178.178 INFO    ] No camera update needed
[2026-10-25 12:25:35,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:25:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:25:35,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:25:35,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:25:37,234.234 INFO    ] ================================================
[2026-10-25 12:25:37,252.252 INFO    ] Launching Daemon at Sun Oct 25 12:25:37 IST 2026
[2026-10-25 12:25:37,263.263 INFO    ] ================================================
[2026-10-25 12:25:37,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:25:37
[2026-10-25 12:25:38,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:25:38,681.681 INFO    ] Initializing speech engine...
[2026-10-25 12:25:38,689.689 INFO    ] 2026-10-25 12:25:38
[2026-10-25 12:25:38,948.948 INFO    ] 2026-10-25 12:25:38
[2026-10-25 12:25:39,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:25:39,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:25:39,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:25:39,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:25:39,398.398 INFO    ] time= 25/10/2026 12:25:39
[2026-10-25 12:25:39,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:25:39,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:25:39,612.612 INFO    ] No existing commands found in stream
[2026-10-25 12:25:44,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:25:44,645.645 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 12:25:47,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:25:47,722.722 INFO    ] Checking for system updates...
[2026-10-25 12:25:47,766.766 INFO    ] 200
[2026-10-25 12:25:47,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:47,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:47,833.833 INFO    ] No update needed
[2026-10-25 12:25:47,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 12:25:47,874.874 INFO    ] 200
[2026-10-25 12:25:47,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:47,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:25:47,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:25:47,980.980 INFO    ] No camera update needed
[2026-10-25 12:25:47,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:25:47,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:25:47,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:25:47,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:25:50,036.036 INFO    ] ================================================
[2026-10-25 12:25:50,053.053 INFO    ] Launching Daemon at Sun Oct 25 12:25:50 IST 2026
[2026-10-25 12:25:50,064.064 INFO    ] ================================================
[2026-10-25 12:25:50,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:25:50
[2026-10-25 12:25:51,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:25:51,481.481 INFO    ] Initializing speech engine...
[2026-10-25 12:25:51,490.490 INFO    ] 2026-10-25 12:25:51
[2026-10-25 12:25:51,748.748 INFO    ] 2026-10-25 12:25:51
[2026-10-25 12:25:51,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:25:52,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:25:52,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:25:52,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:25:52,200.200 INFO    ] time= 25/10/2026 12:25:52
[2026-10-25 12:25:52,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:25:52,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:25:52,376.376 INFO    ] No existing commands found in stream
[2026-10-25 12:25:57,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:25:57,416.416 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 12:25:59,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:25:59,261.261 INFO    ] Checking for system updates...
[2026-10-25 12:25:59,303.303 INFO    ] 200
[2026-10-25 12:25:59,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:59,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:25:59,362.362 INFO    ] No update needed
[2026-10-25 12:25:59,365.365 INFO    ] Checking for camera pi updates...
[2026-10-25 12:25:59,398.398 INFO    ] 200
[2026-10-25 12:25:59,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:25:59,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:25:59,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:25:59,491.491 INFO    ] No camera update needed
[2026-10-25 12:25:59,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:25:59,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:25:59,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:25:59,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:26:01,547.547 INFO    ] ================================================
[2026-10-25 12:26:01,562.562 INFO    ] Launching Daemon at Sun Oct 25 12:26:01 IST 2026
[2026-10-25 12:26:01,573.573 INFO    ] ================================================
[2026-10-25 12:26:02,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:26:02
[2026-10-25 12:26:02,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:26:03,366.366 INFO    ] Initializing speech engine...
[2026-10-25 12:26:03,375.375 INFO    ] 2026-10-25 12:26:03
[2026-10-25 12:26:03,699.699 INFO    ] 2026-10-25 12:26:03
[2026-10-25 12:26:03,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:26:03,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:26:03,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:26:04,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:26:04,171.171 INFO    ] time= 25/10/2026 12:26:04
[2026-10-25 12:26:04,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:26:04,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:26:04,348.348 INFO    ] No existing commands found in stream
[2026-10-25 12:26:09,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:26:09,373.373 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 12:26:14,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:26:14,461.461 INFO    ] Checking for system updates...
[2026-10-25 12:26:14,502.502 INFO    ] 200
[2026-10-25 12:26:14,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:14,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:26:14,571.571 INFO    ] No update needed
[2026-10-25 12:26:14,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 12:26:14,609.609 INFO    ] 200
[2026-10-25 12:26:14,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:14,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:26:14,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:26:14,704.704 INFO    ] No camera update needed
[2026-10-25 12:26:14,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:26:14,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:26:14,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:26:14,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:26:16,760.760 INFO    ] ================================================
[2026-10-25 12:26:16,775.775 INFO    ] Launching Daemon at Sun Oct 25 12:26:16 IST 2026
[2026-10-25 12:26:16,786.786 INFO    ] ================================================
[2026-10-25 12:26:17,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:26:17
[2026-10-25 12:26:17,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:26:18,202.202 INFO    ] Initializing speech engine...
[2026-10-25 12:26:18,211.211 INFO    ] 2026-10-25 12:26:18
[2026-10-25 12:26:18,470.470 INFO    ] 2026-10-25 12:26:18
[2026-10-25 12:26:18,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:26:18,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:26:18,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:26:18,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:26:18,945.945 INFO    ] time= 25/10/2026 12:26:18
[2026-10-25 12:26:18,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:26:19,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:26:19,131.131 INFO    ] No existing commands found in stream
[2026-10-25 12:26:24,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:26:24,156.156 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 12:26:28,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:26:28,117.117 INFO    ] Checking for system updates...
[2026-10-25 12:26:28,154.154 INFO    ] 200
[2026-10-25 12:26:28,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:28,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:26:28,216.216 INFO    ] No update needed
[2026-10-25 12:26:28,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 12:26:28,258.258 INFO    ] 200
[2026-10-25 12:26:28,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:28,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:26:28,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:26:28,369.369 INFO    ] No camera update needed
[2026-10-25 12:26:28,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:26:28,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:26:28,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:26:28,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:26:30,428.428 INFO    ] ================================================
[2026-10-25 12:26:30,444.444 INFO    ] Launching Daemon at Sun Oct 25 12:26:30 IST 2026
[2026-10-25 12:26:30,456.456 INFO    ] ================================================
[2026-10-25 12:26:31,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:26:31
[2026-10-25 12:26:31,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:26:32,163.163 INFO    ] Initializing speech engine...
[2026-10-25 12:26:32,175.175 INFO    ] 2026-10-25 12:26:32
[2026-10-25 12:26:32,477.477 INFO    ] 2026-10-25 12:26:32
[2026-10-25 12:26:32,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:26:32,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:26:32,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:26:32,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:26:32,974.974 INFO    ] time= 25/10/2026 12:26:32
[2026-10-25 12:26:33,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:26:33,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:26:33,129.129 INFO    ] No existing commands found in stream
[2026-10-25 12:26:38,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:26:38,143.143 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 12:26:38,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:26:38,792.792 INFO    ] Checking for system updates...
[2026-10-25 12:26:38,828.828 INFO    ] 200
[2026-10-25 12:26:38,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:38,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:26:38,886.886 INFO    ] No update needed
[2026-10-25 12:26:38,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 12:26:38,922.922 INFO    ] 200
[2026-10-25 12:26:38,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:38,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:26:39,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:26:39,007.007 INFO    ] No camera update needed
[2026-10-25 12:26:39,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:26:39,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:26:39,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:26:39,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:26:41,063.063 INFO    ] ================================================
[2026-10-25 12:26:41,079.079 INFO    ] Launching Daemon at Sun Oct 25 12:26:41 IST 2026
[2026-10-25 12:26:41,090.090 INFO    ] ================================================
[2026-10-25 12:26:41,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:26:41
[2026-10-25 12:26:42,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:26:42,738.738 INFO    ] Initializing speech engine...
[2026-10-25 12:26:42,750.750 INFO    ] 2026-10-25 12:26:42
[2026-10-25 12:26:43,037.037 INFO    ] 2026-10-25 12:26:43
[2026-10-25 12:26:43,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:26:45,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:26:45,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:26:45,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:26:45,642.642 INFO    ] time= 25/10/2026 12:26:45
[2026-10-25 12:26:45,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:26:45,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:26:45,818.818 INFO    ] No existing commands found in stream
[2026-10-25 12:26:50,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:26:50,836.836 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 12:26:52,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:26:52,907.907 INFO    ] Checking for system updates...
[2026-10-25 12:26:52,955.955 INFO    ] 200
[2026-10-25 12:26:52,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:53,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:26:53,026.026 INFO    ] No update needed
[2026-10-25 12:26:53,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 12:26:53,067.067 INFO    ] 200
[2026-10-25 12:26:53,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:26:53,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:26:53,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:26:53,170.170 INFO    ] No camera update needed
[2026-10-25 12:26:53,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:26:53,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:26:53,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:26:53,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:26:55,233.233 INFO    ] ================================================
[2026-10-25 12:26:55,249.249 INFO    ] Launching Daemon at Sun Oct 25 12:26:55 IST 2026
[2026-10-25 12:26:55,260.260 INFO    ] ================================================
[2026-10-25 12:26:55,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:26:55
[2026-10-25 12:26:56,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:26:56,903.903 INFO    ] Initializing speech engine...
[2026-10-25 12:26:56,916.916 INFO    ] 2026-10-25 12:26:56
[2026-10-25 12:26:57,230.230 INFO    ] 2026-10-25 12:26:57
[2026-10-25 12:26:57,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:26:57,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:26:57,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:26:57,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:26:57,742.742 INFO    ] time= 25/10/2026 12:26:57
[2026-10-25 12:26:57,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:26:57,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:26:57,885.885 INFO    ] No existing commands found in stream
[2026-10-25 12:27:02,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:27:02,920.920 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 12:27:04,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:27:04,874.874 INFO    ] Checking for system updates...
[2026-10-25 12:27:04,912.912 INFO    ] 200
[2026-10-25 12:27:04,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:04,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:04,972.972 INFO    ] No update needed
[2026-10-25 12:27:04,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 12:27:05,010.010 INFO    ] 200
[2026-10-25 12:27:05,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:05,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:27:05,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:05,115.115 INFO    ] No camera update needed
[2026-10-25 12:27:05,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:27:05,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:27:05,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:27:05,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:27:07,171.171 INFO    ] ================================================
[2026-10-25 12:27:07,186.186 INFO    ] Launching Daemon at Sun Oct 25 12:27:07 IST 2026
[2026-10-25 12:27:07,199.199 INFO    ] ================================================
[2026-10-25 12:27:07,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:27:07
[2026-10-25 12:27:08,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:27:08,851.851 INFO    ] Initializing speech engine...
[2026-10-25 12:27:08,857.857 INFO    ] 2026-10-25 12:27:08
[2026-10-25 12:27:09,149.149 INFO    ] 2026-10-25 12:27:09
[2026-10-25 12:27:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:27:09,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:27:09,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:27:09,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:27:09,627.627 INFO    ] time= 25/10/2026 12:27:09
[2026-10-25 12:27:09,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:27:09,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:27:09,761.761 INFO    ] No existing commands found in stream
[2026-10-25 12:27:14,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:27:14,778.778 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 12:27:17,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:27:17,783.783 INFO    ] Checking for system updates...
[2026-10-25 12:27:17,820.820 INFO    ] 200
[2026-10-25 12:27:17,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:17,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:27:17,883.883 INFO    ] No update needed
[2026-10-25 12:27:17,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 12:27:17,920.920 INFO    ] 200
[2026-10-25 12:27:17,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:17,964.964 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:27:18,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:27:18,014.014 INFO    ] No camera update needed
[2026-10-25 12:27:18,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:27:18,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:27:18,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:27:18,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:27:20,069.069 INFO    ] ================================================
[2026-10-25 12:27:20,085.085 INFO    ] Launching Daemon at Sun Oct 25 12:27:20 IST 2026
[2026-10-25 12:27:20,096.096 INFO    ] ================================================
[2026-10-25 12:27:20,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:27:20
[2026-10-25 12:27:21,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:27:21,490.490 INFO    ] Initializing speech engine...
[2026-10-25 12:27:21,505.505 INFO    ] 2026-10-25 12:27:21
[2026-10-25 12:27:21,780.780 INFO    ] 2026-10-25 12:27:21
[2026-10-25 12:27:21,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:27:22,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:27:22,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:27:22,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:27:22,279.279 INFO    ] time= 25/10/2026 12:27:22
[2026-10-25 12:27:22,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:27:22,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:27:22,474.474 INFO    ] No existing commands found in stream
[2026-10-25 12:27:27,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:27:27,498.498 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 12:27:29,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:27:29,819.819 INFO    ] Checking for system updates...
[2026-10-25 12:27:29,855.855 INFO    ] 200
[2026-10-25 12:27:29,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:29,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:27:29,913.913 INFO    ] No update needed
[2026-10-25 12:27:29,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 12:27:29,950.950 INFO    ] 200
[2026-10-25 12:27:29,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:29,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:27:30,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:27:30,051.051 INFO    ] No camera update needed
[2026-10-25 12:27:30,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:27:30,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:27:30,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:27:30,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:27:32,107.107 INFO    ] ================================================
[2026-10-25 12:27:32,125.125 INFO    ] Launching Daemon at Sun Oct 25 12:27:32 IST 2026
[2026-10-25 12:27:32,136.136 INFO    ] ================================================
[2026-10-25 12:27:32,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:27:32
[2026-10-25 12:27:33,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:27:33,797.797 INFO    ] Initializing speech engine...
[2026-10-25 12:27:33,804.804 INFO    ] 2026-10-25 12:27:33
[2026-10-25 12:27:34,063.063 INFO    ] 2026-10-25 12:27:34
[2026-10-25 12:27:34,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:27:34,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:27:34,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:27:34,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:27:34,539.539 INFO    ] time= 25/10/2026 12:27:34
[2026-10-25 12:27:34,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:27:34,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:27:34,689.689 INFO    ] No existing commands found in stream
[2026-10-25 12:27:39,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:27:39,703.703 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 12:27:41,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:27:41,885.885 INFO    ] Checking for system updates...
[2026-10-25 12:27:41,922.922 INFO    ] 200
[2026-10-25 12:27:41,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:41,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:41,980.980 INFO    ] No update needed
[2026-10-25 12:27:41,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 12:27:42,016.016 INFO    ] 200
[2026-10-25 12:27:42,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:42,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:27:42,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:42,114.114 INFO    ] No camera update needed
[2026-10-25 12:27:42,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:27:42,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:27:42,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:27:42,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:27:44,173.173 INFO    ] ================================================
[2026-10-25 12:27:44,188.188 INFO    ] Launching Daemon at Sun Oct 25 12:27:44 IST 2026
[2026-10-25 12:27:44,199.199 INFO    ] ================================================
[2026-10-25 12:27:44,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:27:44
[2026-10-25 12:27:45,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:27:45,825.825 INFO    ] Initializing speech engine...
[2026-10-25 12:27:45,836.836 INFO    ] 2026-10-25 12:27:45
[2026-10-25 12:27:46,145.145 INFO    ] 2026-10-25 12:27:46
[2026-10-25 12:27:46,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:27:47,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:27:47,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:27:47,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:27:47,757.757 INFO    ] time= 25/10/2026 12:27:47
[2026-10-25 12:27:47,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:27:47,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:27:47,878.878 INFO    ] No existing commands found in stream
[2026-10-25 12:27:52,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:27:52,894.894 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 12:27:54,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:27:54,022.022 INFO    ] Checking for system updates...
[2026-10-25 12:27:54,063.063 INFO    ] 200
[2026-10-25 12:27:54,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:54,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:54,122.122 INFO    ] No update needed
[2026-10-25 12:27:54,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 12:27:54,159.159 INFO    ] 200
[2026-10-25 12:27:54,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:27:54,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:27:54,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:27:54,253.253 INFO    ] No camera update needed
[2026-10-25 12:27:54,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:27:54,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:27:54,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:27:54,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:27:56,308.308 INFO    ] ================================================
[2026-10-25 12:27:56,323.323 INFO    ] Launching Daemon at Sun Oct 25 12:27:56 IST 2026
[2026-10-25 12:27:56,333.333 INFO    ] ================================================
[2026-10-25 12:27:56,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:27:56
[2026-10-25 12:27:57,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:27:57,787.787 INFO    ] Initializing speech engine...
[2026-10-25 12:27:57,795.795 INFO    ] 2026-10-25 12:27:57
[2026-10-25 12:27:58,062.062 INFO    ] 2026-10-25 12:27:58
[2026-10-25 12:27:58,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:27:58,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:27:58,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:27:58,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:27:58,536.536 INFO    ] time= 25/10/2026 12:27:58
[2026-10-25 12:27:58,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:27:58,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:27:58,708.708 INFO    ] No existing commands found in stream
[2026-10-25 12:28:03,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:28:03,736.736 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 12:28:08,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:28:08,004.004 INFO    ] Checking for system updates...
[2026-10-25 12:28:08,040.040 INFO    ] 200
[2026-10-25 12:28:08,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:08,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:08,099.099 INFO    ] No update needed
[2026-10-25 12:28:08,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 12:28:08,139.139 INFO    ] 200
[2026-10-25 12:28:08,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:08,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:28:08,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:08,233.233 INFO    ] No camera update needed
[2026-10-25 12:28:08,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:28:08,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:28:08,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:28:08,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:28:10,288.288 INFO    ] ================================================
[2026-10-25 12:28:10,303.303 INFO    ] Launching Daemon at Sun Oct 25 12:28:10 IST 2026
[2026-10-25 12:28:10,314.314 INFO    ] ================================================
[2026-10-25 12:28:10,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:28:10
[2026-10-25 12:28:11,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:28:11,740.740 INFO    ] Initializing speech engine...
[2026-10-25 12:28:11,748.748 INFO    ] 2026-10-25 12:28:11
[2026-10-25 12:28:11,998.998 INFO    ] 2026-10-25 12:28:11
[2026-10-25 12:28:12,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:28:12,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:28:12,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:28:12,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:28:12,367.367 INFO    ] time= 25/10/2026 12:28:12
[2026-10-25 12:28:12,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:28:12,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:28:12,541.541 INFO    ] No existing commands found in stream
[2026-10-25 12:28:17,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:28:17,575.575 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 12:28:20,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:28:20,560.560 INFO    ] Checking for system updates...
[2026-10-25 12:28:20,601.601 INFO    ] 200
[2026-10-25 12:28:20,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:20,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:20,666.666 INFO    ] No update needed
[2026-10-25 12:28:20,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 12:28:20,705.705 INFO    ] 200
[2026-10-25 12:28:20,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:20,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:28:20,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:20,805.805 INFO    ] No camera update needed
[2026-10-25 12:28:20,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:28:20,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:28:20,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:28:20,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:28:22,865.865 INFO    ] ================================================
[2026-10-25 12:28:22,880.880 INFO    ] Launching Daemon at Sun Oct 25 12:28:22 IST 2026
[2026-10-25 12:28:22,891.891 INFO    ] ================================================
[2026-10-25 12:28:23,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:28:23
[2026-10-25 12:28:24,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:28:24,292.292 INFO    ] Initializing speech engine...
[2026-10-25 12:28:24,307.307 INFO    ] 2026-10-25 12:28:24
[2026-10-25 12:28:24,572.572 INFO    ] 2026-10-25 12:28:24
[2026-10-25 12:28:24,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:28:24,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:28:24,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:28:25,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:28:25,055.055 INFO    ] time= 25/10/2026 12:28:25
[2026-10-25 12:28:25,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:28:25,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:28:25,205.205 INFO    ] No existing commands found in stream
[2026-10-25 12:28:30,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:28:30,216.216 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 12:28:32,346.346 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:28:32,349.349 INFO    ] Checking for system updates...
[2026-10-25 12:28:32,392.392 INFO    ] 200
[2026-10-25 12:28:32,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:32,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:28:32,456.456 INFO    ] No update needed
[2026-10-25 12:28:32,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 12:28:32,496.496 INFO    ] 200
[2026-10-25 12:28:32,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:32,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:28:32,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:28:32,579.579 INFO    ] No camera update needed
[2026-10-25 12:28:32,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:28:32,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:28:32,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:28:32,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:28:34,639.639 INFO    ] ================================================
[2026-10-25 12:28:34,653.653 INFO    ] Launching Daemon at Sun Oct 25 12:28:34 IST 2026
[2026-10-25 12:28:34,664.664 INFO    ] ================================================
[2026-10-25 12:28:35,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:28:35
[2026-10-25 12:28:35,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:28:36,094.094 INFO    ] Initializing speech engine...
[2026-10-25 12:28:36,110.110 INFO    ] 2026-10-25 12:28:36
[2026-10-25 12:28:36,382.382 INFO    ] 2026-10-25 12:28:36
[2026-10-25 12:28:36,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:28:36,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:28:36,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:28:36,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:28:36,794.794 INFO    ] time= 25/10/2026 12:28:36
[2026-10-25 12:28:36,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:28:36,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:28:36,878.878 INFO    ] No existing commands found in stream
[2026-10-25 12:28:41,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:28:41,932.932 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 12:28:42,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:28:42,567.567 INFO    ] Checking for system updates...
[2026-10-25 12:28:42,603.603 INFO    ] 200
[2026-10-25 12:28:42,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:42,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:42,660.660 INFO    ] No update needed
[2026-10-25 12:28:42,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 12:28:42,697.697 INFO    ] 200
[2026-10-25 12:28:42,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:42,744.744 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:28:42,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:42,791.791 INFO    ] No camera update needed
[2026-10-25 12:28:42,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:28:42,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:28:42,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:28:42,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:28:44,847.847 INFO    ] ================================================
[2026-10-25 12:28:44,863.863 INFO    ] Launching Daemon at Sun Oct 25 12:28:44 IST 2026
[2026-10-25 12:28:44,874.874 INFO    ] ================================================
[2026-10-25 12:28:45,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:28:45
[2026-10-25 12:28:46,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:28:46,485.485 INFO    ] Initializing speech engine...
[2026-10-25 12:28:46,493.493 INFO    ] 2026-10-25 12:28:46
[2026-10-25 12:28:46,776.776 INFO    ] 2026-10-25 12:28:46
[2026-10-25 12:28:46,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:28:49,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:28:49,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:28:49,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:28:49,832.832 INFO    ] time= 25/10/2026 12:28:49
[2026-10-25 12:28:49,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:28:49,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:28:49,924.924 INFO    ] No existing commands found in stream
[2026-10-25 12:28:54,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:28:54,937.937 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 12:28:59,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:28:59,121.121 INFO    ] Checking for system updates...
[2026-10-25 12:28:59,159.159 INFO    ] 200
[2026-10-25 12:28:59,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:59,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:59,219.219 INFO    ] No update needed
[2026-10-25 12:28:59,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 12:28:59,259.259 INFO    ] 200
[2026-10-25 12:28:59,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:28:59,307.307 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:28:59,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:28:59,358.358 INFO    ] No camera update needed
[2026-10-25 12:28:59,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:28:59,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:28:59,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:28:59,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:29:01,415.415 INFO    ] ================================================
[2026-10-25 12:29:01,430.430 INFO    ] Launching Daemon at Sun Oct 25 12:29:01 IST 2026
[2026-10-25 12:29:01,441.441 INFO    ] ================================================
[2026-10-25 12:29:02,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:29:02
[2026-10-25 12:29:02,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:29:03,171.171 INFO    ] Initializing speech engine...
[2026-10-25 12:29:03,183.183 INFO    ] 2026-10-25 12:29:03
[2026-10-25 12:29:03,484.484 INFO    ] 2026-10-25 12:29:03
[2026-10-25 12:29:03,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:29:03,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:29:03,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:29:03,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:29:03,911.911 INFO    ] time= 25/10/2026 12:29:03
[2026-10-25 12:29:03,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:29:03,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:29:04,085.085 INFO    ] No existing commands found in stream
[2026-10-25 12:29:09,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:29:09,124.124 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 12:29:10,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:29:10,929.929 INFO    ] Checking for system updates...
[2026-10-25 12:29:10,966.966 INFO    ] 200
[2026-10-25 12:29:10,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:11,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:11,025.025 INFO    ] No update needed
[2026-10-25 12:29:11,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 12:29:11,061.061 INFO    ] 200
[2026-10-25 12:29:11,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:11,111.111 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:29:11,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:11,264.264 INFO    ] No camera update needed
[2026-10-25 12:29:11,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:29:11,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:29:11,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:29:11,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:29:13,326.326 INFO    ] ================================================
[2026-10-25 12:29:13,342.342 INFO    ] Launching Daemon at Sun Oct 25 12:29:13 IST 2026
[2026-10-25 12:29:13,352.352 INFO    ] ================================================
[2026-10-25 12:29:13,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:29:13
[2026-10-25 12:29:14,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:29:14,770.770 INFO    ] Initializing speech engine...
[2026-10-25 12:29:14,779.779 INFO    ] 2026-10-25 12:29:14
[2026-10-25 12:29:15,025.025 INFO    ] 2026-10-25 12:29:15
[2026-10-25 12:29:15,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:29:15,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:29:15,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:29:15,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:29:15,470.470 INFO    ] time= 25/10/2026 12:29:15
[2026-10-25 12:29:15,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:29:15,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:29:15,657.657 INFO    ] No existing commands found in stream
[2026-10-25 12:29:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:29:20,674.674 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 12:29:21,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:29:21,458.458 INFO    ] Checking for system updates...
[2026-10-25 12:29:21,495.495 INFO    ] 200
[2026-10-25 12:29:21,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:21,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:21,561.561 INFO    ] No update needed
[2026-10-25 12:29:21,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 12:29:21,601.601 INFO    ] 200
[2026-10-25 12:29:21,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:21,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:29:21,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:21,695.695 INFO    ] No camera update needed
[2026-10-25 12:29:21,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:29:21,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:29:21,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:29:21,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:29:23,751.751 INFO    ] ================================================
[2026-10-25 12:29:23,766.766 INFO    ] Launching Daemon at Sun Oct 25 12:29:23 IST 2026
[2026-10-25 12:29:23,777.777 INFO    ] ================================================
[2026-10-25 12:29:24,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:29:24
[2026-10-25 12:29:24,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:29:25,194.194 INFO    ] Initializing speech engine...
[2026-10-25 12:29:25,204.204 INFO    ] 2026-10-25 12:29:25
[2026-10-25 12:29:25,448.448 INFO    ] 2026-10-25 12:29:25
[2026-10-25 12:29:25,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:29:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:29:25,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:29:25,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:29:25,922.922 INFO    ] time= 25/10/2026 12:29:25
[2026-10-25 12:29:25,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:29:26,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:29:26,065.065 INFO    ] No existing commands found in stream
[2026-10-25 12:29:31,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:29:31,079.079 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 12:29:32,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:29:32,439.439 INFO    ] Checking for system updates...
[2026-10-25 12:29:32,486.486 INFO    ] 200
[2026-10-25 12:29:32,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:32,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:29:32,547.547 INFO    ] No update needed
[2026-10-25 12:29:32,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 12:29:32,590.590 INFO    ] 200
[2026-10-25 12:29:32,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:32,636.636 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:29:32,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:29:32,673.673 INFO    ] No camera update needed
[2026-10-25 12:29:32,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:29:32,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:29:32,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:29:32,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:29:34,731.731 INFO    ] ================================================
[2026-10-25 12:29:34,746.746 INFO    ] Launching Daemon at Sun Oct 25 12:29:34 IST 2026
[2026-10-25 12:29:34,758.758 INFO    ] ================================================
[2026-10-25 12:29:35,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:29:35
[2026-10-25 12:29:35,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:29:36,158.158 INFO    ] Initializing speech engine...
[2026-10-25 12:29:36,165.165 INFO    ] 2026-10-25 12:29:36
[2026-10-25 12:29:36,456.456 INFO    ] 2026-10-25 12:29:36
[2026-10-25 12:29:36,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:29:36,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:29:36,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:29:36,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:29:36,829.829 INFO    ] time= 25/10/2026 12:29:36
[2026-10-25 12:29:36,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:29:36,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:29:36,951.951 INFO    ] No existing commands found in stream
[2026-10-25 12:29:41,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:29:41,967.967 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 12:29:44,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:29:44,063.063 INFO    ] Checking for system updates...
[2026-10-25 12:29:44,100.100 INFO    ] 200
[2026-10-25 12:29:44,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:44,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:44,160.160 INFO    ] No update needed
[2026-10-25 12:29:44,163.163 INFO    ] Checking for camera pi updates...
[2026-10-25 12:29:44,201.201 INFO    ] 200
[2026-10-25 12:29:44,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:44,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:29:44,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:44,305.305 INFO    ] No camera update needed
[2026-10-25 12:29:44,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:29:44,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:29:44,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:29:44,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:29:46,361.361 INFO    ] ================================================
[2026-10-25 12:29:46,376.376 INFO    ] Launching Daemon at Sun Oct 25 12:29:46 IST 2026
[2026-10-25 12:29:46,387.387 INFO    ] ================================================
[2026-10-25 12:29:46,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:29:46
[2026-10-25 12:29:47,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:29:47,802.802 INFO    ] Initializing speech engine...
[2026-10-25 12:29:47,810.810 INFO    ] 2026-10-25 12:29:47
[2026-10-25 12:29:48,100.100 INFO    ] 2026-10-25 12:29:48
[2026-10-25 12:29:48,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:29:51,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:29:51,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:29:52,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:29:52,052.052 INFO    ] time= 25/10/2026 12:29:52
[2026-10-25 12:29:52,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:29:52,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:29:52,103.103 INFO    ] No existing commands found in stream
[2026-10-25 12:29:57,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:29:57,115.115 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 12:29:58,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:29:58,427.427 INFO    ] Checking for system updates...
[2026-10-25 12:29:58,464.464 INFO    ] 200
[2026-10-25 12:29:58,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:58,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:58,533.533 INFO    ] No update needed
[2026-10-25 12:29:58,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 12:29:58,569.569 INFO    ] 200
[2026-10-25 12:29:58,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:29:58,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:29:58,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:29:58,664.664 INFO    ] No camera update needed
[2026-10-25 12:29:58,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:29:58,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:29:58,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:29:58,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:00,718.718 INFO    ] ================================================
[2026-10-25 12:30:00,733.733 INFO    ] Launching Daemon at Sun Oct 25 12:30:00 IST 2026
[2026-10-25 12:30:00,744.744 INFO    ] ================================================
[2026-10-25 12:30:01,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:01
[2026-10-25 12:30:02,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:30:03,276.276 INFO    ] Initializing speech engine...
[2026-10-25 12:30:03,280.280 INFO    ] 2026-10-25 12:30:03
[2026-10-25 12:30:03,751.751 INFO    ] 2026-10-25 12:30:03
[2026-10-25 12:30:03,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:30:04,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:30:04,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:30:04,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:30:04,218.218 INFO    ] time= 25/10/2026 12:30:04
[2026-10-25 12:30:04,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:30:04,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:30:04,442.442 INFO    ] No existing commands found in stream
[2026-10-25 12:30:09,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:30:09,462.462 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 12:30:12,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:30:12,180.180 INFO    ] Checking for system updates...
[2026-10-25 12:30:12,217.217 INFO    ] 200
[2026-10-25 12:30:12,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:12,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:12,279.279 INFO    ] No update needed
[2026-10-25 12:30:12,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 12:30:12,316.316 INFO    ] 200
[2026-10-25 12:30:12,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:12,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:30:12,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:12,415.415 INFO    ] No camera update needed
[2026-10-25 12:30:12,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:30:12,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:30:12,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:30:12,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:14,474.474 INFO    ] ================================================
[2026-10-25 12:30:14,490.490 INFO    ] Launching Daemon at Sun Oct 25 12:30:14 IST 2026
[2026-10-25 12:30:14,501.501 INFO    ] ================================================
[2026-10-25 12:30:15,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:15
[2026-10-25 12:30:15,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:30:15,922.922 INFO    ] Initializing speech engine...
[2026-10-25 12:30:15,938.938 INFO    ] 2026-10-25 12:30:15
[2026-10-25 12:30:16,220.220 INFO    ] 2026-10-25 12:30:16
[2026-10-25 12:30:16,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:30:16,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:30:16,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:30:16,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:30:16,594.594 INFO    ] time= 25/10/2026 12:30:16
[2026-10-25 12:30:16,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:30:16,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:30:16,717.717 INFO    ] No existing commands found in stream
[2026-10-25 12:30:21,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:30:21,733.733 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 12:30:23,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:30:23,138.138 INFO    ] Checking for system updates...
[2026-10-25 12:30:23,175.175 INFO    ] 200
[2026-10-25 12:30:23,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:23,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:30:23,238.238 INFO    ] No update needed
[2026-10-25 12:30:23,241.241 INFO    ] Checking for camera pi updates...
[2026-10-25 12:30:23,275.275 INFO    ] 200
[2026-10-25 12:30:23,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:23,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:30:23,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:30:23,367.367 INFO    ] No camera update needed
[2026-10-25 12:30:23,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:30:23,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:30:23,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:30:23,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:25,422.422 INFO    ] ================================================
[2026-10-25 12:30:25,438.438 INFO    ] Launching Daemon at Sun Oct 25 12:30:25 IST 2026
[2026-10-25 12:30:25,449.449 INFO    ] ================================================
[2026-10-25 12:30:26,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:26
[2026-10-25 12:30:26,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:30:26,855.855 INFO    ] Initializing speech engine...
[2026-10-25 12:30:26,873.873 INFO    ] 2026-10-25 12:30:26
[2026-10-25 12:30:27,120.120 INFO    ] 2026-10-25 12:30:27
[2026-10-25 12:30:27,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:30:27,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:30:27,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:30:27,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:30:27,676.676 INFO    ] time= 25/10/2026 12:30:27
[2026-10-25 12:30:27,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:30:27,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:30:27,812.812 INFO    ] No existing commands found in stream
[2026-10-25 12:30:32,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:30:32,843.843 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 12:30:34,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:30:34,085.085 INFO    ] Checking for system updates...
[2026-10-25 12:30:34,125.125 INFO    ] 200
[2026-10-25 12:30:34,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:34,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:34,182.182 INFO    ] No update needed
[2026-10-25 12:30:34,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 12:30:34,224.224 INFO    ] 200
[2026-10-25 12:30:34,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:34,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:30:34,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:34,327.327 INFO    ] No camera update needed
[2026-10-25 12:30:34,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:30:34,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:30:34,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:30:34,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:36,382.382 INFO    ] ================================================
[2026-10-25 12:30:36,398.398 INFO    ] Launching Daemon at Sun Oct 25 12:30:36 IST 2026
[2026-10-25 12:30:36,410.410 INFO    ] ================================================
[2026-10-25 12:30:37,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:37
[2026-10-25 12:30:37,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:30:38,011.011 INFO    ] Initializing speech engine...
[2026-10-25 12:30:38,019.019 INFO    ] 2026-10-25 12:30:38
[2026-10-25 12:30:38,288.288 INFO    ] 2026-10-25 12:30:38
[2026-10-25 12:30:38,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:30:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:30:38,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:30:38,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:30:38,784.784 INFO    ] time= 25/10/2026 12:30:38
[2026-10-25 12:30:38,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:30:38,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:30:38,963.963 INFO    ] No existing commands found in stream
[2026-10-25 12:30:43,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:30:43,998.998 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 12:30:44,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:30:44,807.807 INFO    ] Checking for system updates...
[2026-10-25 12:30:44,846.846 INFO    ] 200
[2026-10-25 12:30:44,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:44,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:44,907.907 INFO    ] No update needed
[2026-10-25 12:30:44,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 12:30:44,947.947 INFO    ] 200
[2026-10-25 12:30:44,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:44,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:30:45,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:45,050.050 INFO    ] No camera update needed
[2026-10-25 12:30:45,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:30:45,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:30:45,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:30:45,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:47,109.109 INFO    ] ================================================
[2026-10-25 12:30:47,125.125 INFO    ] Launching Daemon at Sun Oct 25 12:30:47 IST 2026
[2026-10-25 12:30:47,137.137 INFO    ] ================================================
[2026-10-25 12:30:47,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:47
[2026-10-25 12:30:48,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:30:48,591.591 INFO    ] Initializing speech engine...
[2026-10-25 12:30:48,598.598 INFO    ] 2026-10-25 12:30:48
[2026-10-25 12:30:48,858.858 INFO    ] 2026-10-25 12:30:48
[2026-10-25 12:30:48,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:30:49,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:30:49,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:30:49,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:30:49,314.314 INFO    ] time= 25/10/2026 12:30:49
[2026-10-25 12:30:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:30:49,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:30:49,464.464 INFO    ] No existing commands found in stream
[2026-10-25 12:30:54,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:30:54,478.478 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 12:30:56,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:30:56,887.887 INFO    ] Checking for system updates...
[2026-10-25 12:30:56,928.928 INFO    ] 200
[2026-10-25 12:30:56,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:56,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:56,989.989 INFO    ] No update needed
[2026-10-25 12:30:56,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 12:30:57,033.033 INFO    ] 200
[2026-10-25 12:30:57,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:30:57,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:30:57,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:30:57,134.134 INFO    ] No camera update needed
[2026-10-25 12:30:57,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:30:57,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:30:57,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:30:57,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:30:59,192.192 INFO    ] ================================================
[2026-10-25 12:30:59,208.208 INFO    ] Launching Daemon at Sun Oct 25 12:30:59 IST 2026
[2026-10-25 12:30:59,219.219 INFO    ] ================================================
[2026-10-25 12:30:59,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:30:59
[2026-10-25 12:31:00,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:31:00,701.701 INFO    ] Initializing speech engine...
[2026-10-25 12:31:00,711.711 INFO    ] 2026-10-25 12:31:00
[2026-10-25 12:31:00,995.995 INFO    ] 2026-10-25 12:31:00
[2026-10-25 12:31:01,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:31:01,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:31:01,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:31:01,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:31:01,501.501 INFO    ] time= 25/10/2026 12:31:01
[2026-10-25 12:31:01,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:31:01,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:31:01,637.637 INFO    ] No existing commands found in stream
[2026-10-25 12:31:06,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:31:06,649.649 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 12:31:07,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:31:07,935.935 INFO    ] Checking for system updates...
[2026-10-25 12:31:07,971.971 INFO    ] 200
[2026-10-25 12:31:07,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:08,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:08,035.035 INFO    ] No update needed
[2026-10-25 12:31:08,037.037 INFO    ] Checking for camera pi updates...
[2026-10-25 12:31:08,072.072 INFO    ] 200
[2026-10-25 12:31:08,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:08,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:31:08,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:08,170.170 INFO    ] No camera update needed
[2026-10-25 12:31:08,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:31:08,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:31:08,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:31:08,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:31:10,225.225 INFO    ] ================================================
[2026-10-25 12:31:10,241.241 INFO    ] Launching Daemon at Sun Oct 25 12:31:10 IST 2026
[2026-10-25 12:31:10,253.253 INFO    ] ================================================
[2026-10-25 12:31:10,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:31:10
[2026-10-25 12:31:11,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:31:11,684.684 INFO    ] Initializing speech engine...
[2026-10-25 12:31:11,693.693 INFO    ] 2026-10-25 12:31:11
[2026-10-25 12:31:11,961.961 INFO    ] 2026-10-25 12:31:11
[2026-10-25 12:31:11,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:31:12,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:31:12,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:31:12,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:31:12,373.373 INFO    ] time= 25/10/2026 12:31:12
[2026-10-25 12:31:12,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:31:12,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:31:12,456.456 INFO    ] No existing commands found in stream
[2026-10-25 12:31:17,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:31:17,472.472 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 12:31:18,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:31:18,050.050 INFO    ] Checking for system updates...
[2026-10-25 12:31:18,087.087 INFO    ] 200
[2026-10-25 12:31:18,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:18,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:31:18,150.150 INFO    ] No update needed
[2026-10-25 12:31:18,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 12:31:18,193.193 INFO    ] 200
[2026-10-25 12:31:18,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:18,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:31:18,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:31:18,394.394 INFO    ] No camera update needed
[2026-10-25 12:31:18,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:31:18,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:31:18,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:31:18,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:31:20,449.449 INFO    ] ================================================
[2026-10-25 12:31:20,465.465 INFO    ] Launching Daemon at Sun Oct 25 12:31:20 IST 2026
[2026-10-25 12:31:20,476.476 INFO    ] ================================================
[2026-10-25 12:31:21,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:31:21
[2026-10-25 12:31:21,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:31:22,078.078 INFO    ] Initializing speech engine...
[2026-10-25 12:31:22,091.091 INFO    ] 2026-10-25 12:31:22
[2026-10-25 12:31:22,376.376 INFO    ] 2026-10-25 12:31:22
[2026-10-25 12:31:22,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:31:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:31:24,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:31:24,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:31:24,955.955 INFO    ] time= 25/10/2026 12:31:24
[2026-10-25 12:31:24,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:31:24,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:31:25,050.050 INFO    ] No existing commands found in stream
[2026-10-25 12:31:30,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:31:30,065.065 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 12:31:34,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:31:34,567.567 INFO    ] Checking for system updates...
[2026-10-25 12:31:34,605.605 INFO    ] 200
[2026-10-25 12:31:34,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:34,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:31:34,665.665 INFO    ] No update needed
[2026-10-25 12:31:34,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 12:31:34,707.707 INFO    ] 200
[2026-10-25 12:31:34,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:34,762.762 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:31:34,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:31:34,819.819 INFO    ] No camera update needed
[2026-10-25 12:31:34,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:31:34,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:31:34,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:31:34,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:31:36,878.878 INFO    ] ================================================
[2026-10-25 12:31:36,894.894 INFO    ] Launching Daemon at Sun Oct 25 12:31:36 IST 2026
[2026-10-25 12:31:36,905.905 INFO    ] ================================================
[2026-10-25 12:31:37,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:31:37
[2026-10-25 12:31:38,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:31:38,325.325 INFO    ] Initializing speech engine...
[2026-10-25 12:31:38,333.333 INFO    ] 2026-10-25 12:31:38
[2026-10-25 12:31:38,580.580 INFO    ] 2026-10-25 12:31:38
[2026-10-25 12:31:38,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:31:38,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:31:38,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:31:38,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:31:38,957.957 INFO    ] time= 25/10/2026 12:31:38
[2026-10-25 12:31:38,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:31:39,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:31:39,127.127 INFO    ] No existing commands found in stream
[2026-10-25 12:31:44,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:31:44,155.155 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 12:31:46,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:31:46,714.714 INFO    ] Checking for system updates...
[2026-10-25 12:31:46,754.754 INFO    ] 200
[2026-10-25 12:31:46,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:46,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:46,813.813 INFO    ] No update needed
[2026-10-25 12:31:46,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 12:31:46,853.853 INFO    ] 200
[2026-10-25 12:31:46,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:46,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:31:46,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:46,952.952 INFO    ] No camera update needed
[2026-10-25 12:31:46,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:31:46,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:31:46,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:31:46,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:31:49,006.006 INFO    ] ================================================
[2026-10-25 12:31:49,021.021 INFO    ] Launching Daemon at Sun Oct 25 12:31:49 IST 2026
[2026-10-25 12:31:49,032.032 INFO    ] ================================================
[2026-10-25 12:31:49,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:31:49
[2026-10-25 12:31:50,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:31:50,554.554 INFO    ] Initializing speech engine...
[2026-10-25 12:31:50,577.577 INFO    ] 2026-10-25 12:31:50
[2026-10-25 12:31:50,838.838 INFO    ] 2026-10-25 12:31:50
[2026-10-25 12:31:50,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:31:51,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:31:51,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:31:51,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:31:51,285.285 INFO    ] time= 25/10/2026 12:31:51
[2026-10-25 12:31:51,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:31:51,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:31:51,462.462 INFO    ] No existing commands found in stream
[2026-10-25 12:31:56,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:31:56,477.477 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 12:31:57,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:31:57,101.101 INFO    ] Checking for system updates...
[2026-10-25 12:31:57,140.140 INFO    ] 200
[2026-10-25 12:31:57,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:57,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:57,200.200 INFO    ] No update needed
[2026-10-25 12:31:57,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 12:31:57,238.238 INFO    ] 200
[2026-10-25 12:31:57,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:31:57,286.286 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:31:57,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:31:57,341.341 INFO    ] No camera update needed
[2026-10-25 12:31:57,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:31:57,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:31:57,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:31:57,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:31:59,396.396 INFO    ] ================================================
[2026-10-25 12:31:59,412.412 INFO    ] Launching Daemon at Sun Oct 25 12:31:59 IST 2026
[2026-10-25 12:31:59,424.424 INFO    ] ================================================
[2026-10-25 12:32:00,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:31:59
[2026-10-25 12:32:00,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:32:00,849.849 INFO    ] Initializing speech engine...
[2026-10-25 12:32:00,859.859 INFO    ] 2026-10-25 12:32:00
[2026-10-25 12:32:01,104.104 INFO    ] 2026-10-25 12:32:01
[2026-10-25 12:32:01,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:32:01,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:32:01,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:32:01,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:32:01,577.577 INFO    ] time= 25/10/2026 12:32:01
[2026-10-25 12:32:01,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:32:01,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:32:01,786.786 INFO    ] No existing commands found in stream
[2026-10-25 12:32:06,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:32:06,814.814 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 12:32:10,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:32:10,128.128 INFO    ] Checking for system updates...
[2026-10-25 12:32:10,164.164 INFO    ] 200
[2026-10-25 12:32:10,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:10,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:10,230.230 INFO    ] No update needed
[2026-10-25 12:32:10,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 12:32:10,268.268 INFO    ] 200
[2026-10-25 12:32:10,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:10,313.313 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:32:10,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:10,376.376 INFO    ] No camera update needed
[2026-10-25 12:32:10,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:32:10,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:32:10,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:32:10,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:32:12,435.435 INFO    ] ================================================
[2026-10-25 12:32:12,451.451 INFO    ] Launching Daemon at Sun Oct 25 12:32:12 IST 2026
[2026-10-25 12:32:12,463.463 INFO    ] ================================================
[2026-10-25 12:32:13,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:32:13
[2026-10-25 12:32:13,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:32:13,861.861 INFO    ] Initializing speech engine...
[2026-10-25 12:32:13,876.876 INFO    ] 2026-10-25 12:32:13
[2026-10-25 12:32:14,141.141 INFO    ] 2026-10-25 12:32:14
[2026-10-25 12:32:14,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:32:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:32:14,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:32:14,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:32:14,608.608 INFO    ] time= 25/10/2026 12:32:14
[2026-10-25 12:32:14,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:32:14,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:32:14,776.776 INFO    ] No existing commands found in stream
[2026-10-25 12:32:19,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:32:19,790.790 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 12:32:27,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:32:27,218.218 INFO    ] Checking for system updates...
[2026-10-25 12:32:27,259.259 INFO    ] 200
[2026-10-25 12:32:27,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:27,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:27,326.326 INFO    ] No update needed
[2026-10-25 12:32:27,329.329 INFO    ] Checking for camera pi updates...
[2026-10-25 12:32:27,364.364 INFO    ] 200
[2026-10-25 12:32:27,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:27,409.409 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:32:27,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:27,461.461 INFO    ] No camera update needed
[2026-10-25 12:32:27,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:32:27,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:32:27,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:32:27,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:32:29,529.529 INFO    ] ================================================
[2026-10-25 12:32:29,550.550 INFO    ] Launching Daemon at Sun Oct 25 12:32:29 IST 2026
[2026-10-25 12:32:29,562.562 INFO    ] ================================================
[2026-10-25 12:32:30,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:32:30
[2026-10-25 12:32:30,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:32:31,010.010 INFO    ] Initializing speech engine...
[2026-10-25 12:32:31,033.033 INFO    ] 2026-10-25 12:32:31
[2026-10-25 12:32:31,292.292 INFO    ] 2026-10-25 12:32:31
[2026-10-25 12:32:31,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:32:31,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:32:31,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:32:31,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:32:31,670.670 INFO    ] time= 25/10/2026 12:32:31
[2026-10-25 12:32:31,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:32:31,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:32:31,835.835 INFO    ] No existing commands found in stream
[2026-10-25 12:32:36,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:32:36,863.863 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 12:32:37,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:32:37,322.322 INFO    ] Checking for system updates...
[2026-10-25 12:32:37,362.362 INFO    ] 200
[2026-10-25 12:32:37,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:37,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:37,421.421 INFO    ] No update needed
[2026-10-25 12:32:37,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 12:32:37,458.458 INFO    ] 200
[2026-10-25 12:32:37,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:37,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:32:37,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:37,627.627 INFO    ] No camera update needed
[2026-10-25 12:32:37,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:32:37,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:32:37,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:32:37,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:32:39,682.682 INFO    ] ================================================
[2026-10-25 12:32:39,697.697 INFO    ] Launching Daemon at Sun Oct 25 12:32:39 IST 2026
[2026-10-25 12:32:39,709.709 INFO    ] ================================================
[2026-10-25 12:32:40,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:32:40
[2026-10-25 12:32:40,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:32:41,126.126 INFO    ] Initializing speech engine...
[2026-10-25 12:32:41,135.135 INFO    ] 2026-10-25 12:32:41
[2026-10-25 12:32:41,396.396 INFO    ] 2026-10-25 12:32:41
[2026-10-25 12:32:41,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:32:41,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:32:41,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:32:41,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:32:41,884.884 INFO    ] time= 25/10/2026 12:32:41
[2026-10-25 12:32:41,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:32:41,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:32:42,072.072 INFO    ] No existing commands found in stream
[2026-10-25 12:32:47,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:32:47,105.105 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 12:32:49,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:32:49,830.830 INFO    ] Checking for system updates...
[2026-10-25 12:32:49,866.866 INFO    ] 200
[2026-10-25 12:32:49,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:49,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:49,924.924 INFO    ] No update needed
[2026-10-25 12:32:49,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 12:32:49,960.960 INFO    ] 200
[2026-10-25 12:32:49,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:32:50,008.008 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:32:50,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:32:50,063.063 INFO    ] No camera update needed
[2026-10-25 12:32:50,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:32:50,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:32:50,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:32:50,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:32:52,117.117 INFO    ] ================================================
[2026-10-25 12:32:52,133.133 INFO    ] Launching Daemon at Sun Oct 25 12:32:52 IST 2026
[2026-10-25 12:32:52,144.144 INFO    ] ================================================
[2026-10-25 12:32:52,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:32:52
[2026-10-25 12:32:53,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:32:53,568.568 INFO    ] Initializing speech engine...
[2026-10-25 12:32:53,583.583 INFO    ] 2026-10-25 12:32:53
[2026-10-25 12:32:53,839.839 INFO    ] 2026-10-25 12:32:53
[2026-10-25 12:32:53,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:32:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:32:57,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:32:57,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:32:57,969.969 INFO    ] time= 25/10/2026 12:32:57
[2026-10-25 12:32:57,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:32:57,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:32:58,034.034 INFO    ] No existing commands found in stream
[2026-10-25 12:33:03,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:33:03,046.046 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 12:33:04,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:33:04,299.299 INFO    ] Checking for system updates...
[2026-10-25 12:33:04,336.336 INFO    ] 200
[2026-10-25 12:33:04,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:04,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:33:04,395.395 INFO    ] No update needed
[2026-10-25 12:33:04,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 12:33:04,432.432 INFO    ] 200
[2026-10-25 12:33:04,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:04,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:33:04,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:33:04,531.531 INFO    ] No camera update needed
[2026-10-25 12:33:04,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:33:04,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:33:04,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:33:04,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:33:06,590.590 INFO    ] ================================================
[2026-10-25 12:33:06,605.605 INFO    ] Launching Daemon at Sun Oct 25 12:33:06 IST 2026
[2026-10-25 12:33:06,616.616 INFO    ] ================================================
[2026-10-25 12:33:07,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:33:07
[2026-10-25 12:33:07,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:33:08,071.071 INFO    ] Initializing speech engine...
[2026-10-25 12:33:08,081.081 INFO    ] 2026-10-25 12:33:08
[2026-10-25 12:33:08,346.346 INFO    ] 2026-10-25 12:33:08
[2026-10-25 12:33:08,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:33:08,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:33:08,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:33:08,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:33:08,773.773 INFO    ] time= 25/10/2026 12:33:08
[2026-10-25 12:33:08,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:33:08,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:33:08,880.880 INFO    ] No existing commands found in stream
[2026-10-25 12:33:13,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:33:13,919.919 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 12:33:16,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:33:16,385.385 INFO    ] Checking for system updates...
[2026-10-25 12:33:16,426.426 INFO    ] 200
[2026-10-25 12:33:16,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:16,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:33:16,484.484 INFO    ] No update needed
[2026-10-25 12:33:16,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 12:33:16,522.522 INFO    ] 200
[2026-10-25 12:33:16,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:16,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:33:16,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:33:16,631.631 INFO    ] No camera update needed
[2026-10-25 12:33:16,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:33:16,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:33:16,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:33:16,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:33:18,687.687 INFO    ] ================================================
[2026-10-25 12:33:18,702.702 INFO    ] Launching Daemon at Sun Oct 25 12:33:18 IST 2026
[2026-10-25 12:33:18,714.714 INFO    ] ================================================
[2026-10-25 12:33:19,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:33:19
[2026-10-25 12:33:19,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:33:20,166.166 INFO    ] Initializing speech engine...
[2026-10-25 12:33:20,176.176 INFO    ] 2026-10-25 12:33:20
[2026-10-25 12:33:20,438.438 INFO    ] 2026-10-25 12:33:20
[2026-10-25 12:33:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:33:20,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:33:20,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:33:20,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:33:20,905.905 INFO    ] time= 25/10/2026 12:33:20
[2026-10-25 12:33:20,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:33:20,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:33:21,049.049 INFO    ] No existing commands found in stream
[2026-10-25 12:33:26,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:33:26,064.064 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 12:33:29,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:33:29,585.585 INFO    ] Checking for system updates...
[2026-10-25 12:33:29,621.621 INFO    ] 200
[2026-10-25 12:33:29,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:29,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:33:29,680.680 INFO    ] No update needed
[2026-10-25 12:33:29,683.683 INFO    ] Checking for camera pi updates...
[2026-10-25 12:33:29,722.722 INFO    ] 200
[2026-10-25 12:33:29,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:29,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:33:29,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:33:29,918.918 INFO    ] No camera update needed
[2026-10-25 12:33:29,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:33:29,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:33:29,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:33:29,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:33:31,978.978 INFO    ] ================================================
[2026-10-25 12:33:31,994.994 INFO    ] Launching Daemon at Sun Oct 25 12:33:31 IST 2026
[2026-10-25 12:33:32,005.005 INFO    ] ================================================
[2026-10-25 12:33:32,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:33:32
[2026-10-25 12:33:33,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:33:33,485.485 INFO    ] Initializing speech engine...
[2026-10-25 12:33:33,502.502 INFO    ] 2026-10-25 12:33:33
[2026-10-25 12:33:33,766.766 INFO    ] 2026-10-25 12:33:33
[2026-10-25 12:33:33,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:33:33,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:33:33,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:33:34,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:33:34,122.122 INFO    ] time= 25/10/2026 12:33:34
[2026-10-25 12:33:34,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:33:34,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:33:34,227.227 INFO    ] No existing commands found in stream
[2026-10-25 12:33:39,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:33:39,260.260 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 12:33:43,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:33:43,100.100 INFO    ] Checking for system updates...
[2026-10-25 12:33:43,136.136 INFO    ] 200
[2026-10-25 12:33:43,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:43,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:33:43,194.194 INFO    ] No update needed
[2026-10-25 12:33:43,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 12:33:43,230.230 INFO    ] 200
[2026-10-25 12:33:43,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:33:43,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:33:43,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:33:43,330.330 INFO    ] No camera update needed
[2026-10-25 12:33:43,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:33:43,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:33:43,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:33:43,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:33:45,386.386 INFO    ] ================================================
[2026-10-25 12:33:45,402.402 INFO    ] Launching Daemon at Sun Oct 25 12:33:45 IST 2026
[2026-10-25 12:33:45,413.413 INFO    ] ================================================
[2026-10-25 12:33:45,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:33:45
[2026-10-25 12:33:46,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:33:46,839.839 INFO    ] Initializing speech engine...
[2026-10-25 12:33:46,864.864 INFO    ] 2026-10-25 12:33:46
[2026-10-25 12:33:47,120.120 INFO    ] 2026-10-25 12:33:47
[2026-10-25 12:33:47,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:33:47,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:33:47,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:33:47,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:33:47,580.580 INFO    ] time= 25/10/2026 12:33:47
[2026-10-25 12:33:47,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:33:47,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:33:47,748.748 INFO    ] No existing commands found in stream
[2026-10-25 12:33:52,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:33:52,763.763 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 12:33:54,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:33:54,581.581 INFO    ] Checking for system updates...
[2026-10-25 12:33:54,625.625 INFO    ] 200
[2026-10-25 12:33:54,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 12:33:54,631.631 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 12:33:54,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 12:33:54,675.675 INFO    ] 200
[2026-10-25 12:33:54,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 12:33:54,681.681 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 12:33:54,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:33:54,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:33:54,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:33:54,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:33:56,738.738 INFO    ] ================================================
[2026-10-25 12:33:56,753.753 INFO    ] Launching Daemon at Sun Oct 25 12:33:56 IST 2026
[2026-10-25 12:33:56,763.763 INFO    ] ================================================
[2026-10-25 12:33:57,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:33:57
[2026-10-25 12:33:58,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:33:58,403.403 INFO    ] Initializing speech engine...
[2026-10-25 12:33:58,415.415 INFO    ] 2026-10-25 12:33:58
[2026-10-25 12:33:58,683.683 INFO    ] 2026-10-25 12:33:58
[2026-10-25 12:33:58,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:34:00,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:34:00,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:34:00,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:34:00,670.670 INFO    ] time= 25/10/2026 12:34:00
[2026-10-25 12:34:00,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:34:00,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:34:00,736.736 INFO    ] No existing commands found in stream
[2026-10-25 12:34:05,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:34:05,750.750 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 12:34:08,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:34:08,579.579 INFO    ] Checking for system updates...
[2026-10-25 12:34:08,616.616 INFO    ] 200
[2026-10-25 12:34:08,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:08,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:08,680.680 INFO    ] No update needed
[2026-10-25 12:34:08,683.683 INFO    ] Checking for camera pi updates...
[2026-10-25 12:34:08,721.721 INFO    ] 200
[2026-10-25 12:34:08,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:08,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:34:08,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:08,827.827 INFO    ] No camera update needed
[2026-10-25 12:34:08,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:34:08,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:34:08,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:34:08,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:34:10,882.882 INFO    ] ================================================
[2026-10-25 12:34:10,897.897 INFO    ] Launching Daemon at Sun Oct 25 12:34:10 IST 2026
[2026-10-25 12:34:10,908.908 INFO    ] ================================================
[2026-10-25 12:34:11,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:34:11
[2026-10-25 12:34:12,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:34:12,579.579 INFO    ] Initializing speech engine...
[2026-10-25 12:34:12,591.591 INFO    ] 2026-10-25 12:34:12
[2026-10-25 12:34:12,870.870 INFO    ] 2026-10-25 12:34:12
[2026-10-25 12:34:12,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:34:13,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:34:13,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:34:13,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:34:13,334.334 INFO    ] time= 25/10/2026 12:34:13
[2026-10-25 12:34:13,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:34:13,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:34:13,500.500 INFO    ] No existing commands found in stream
[2026-10-25 12:34:18,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:34:18,554.554 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 12:34:21,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:34:21,860.860 INFO    ] Checking for system updates...
[2026-10-25 12:34:21,897.897 INFO    ] 200
[2026-10-25 12:34:21,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:21,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:34:21,965.965 INFO    ] No update needed
[2026-10-25 12:34:21,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 12:34:22,007.007 INFO    ] 200
[2026-10-25 12:34:22,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:22,062.062 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:34:22,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:34:22,113.113 INFO    ] No camera update needed
[2026-10-25 12:34:22,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:34:22,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:34:22,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:34:22,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:34:24,170.170 INFO    ] ================================================
[2026-10-25 12:34:24,185.185 INFO    ] Launching Daemon at Sun Oct 25 12:34:24 IST 2026
[2026-10-25 12:34:24,196.196 INFO    ] ================================================
[2026-10-25 12:34:24,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:34:24
[2026-10-25 12:34:25,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:34:25,655.655 INFO    ] Initializing speech engine...
[2026-10-25 12:34:25,665.665 INFO    ] 2026-10-25 12:34:25
[2026-10-25 12:34:25,936.936 INFO    ] 2026-10-25 12:34:25
[2026-10-25 12:34:25,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:34:26,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:34:26,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:34:26,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:34:26,381.381 INFO    ] time= 25/10/2026 12:34:26
[2026-10-25 12:34:26,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:34:26,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:34:26,522.522 INFO    ] No existing commands found in stream
[2026-10-25 12:34:31,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:34:31,537.537 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 12:34:34,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:34:34,854.854 INFO    ] Checking for system updates...
[2026-10-25 12:34:34,890.890 INFO    ] 200
[2026-10-25 12:34:34,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:34,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:34,948.948 INFO    ] No update needed
[2026-10-25 12:34:34,950.950 INFO    ] Checking for camera pi updates...
[2026-10-25 12:34:34,984.984 INFO    ] 200
[2026-10-25 12:34:34,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:35,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:34:35,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:35,077.077 INFO    ] No camera update needed
[2026-10-25 12:34:35,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:34:35,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:34:35,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:34:35,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:34:37,133.133 INFO    ] ================================================
[2026-10-25 12:34:37,149.149 INFO    ] Launching Daemon at Sun Oct 25 12:34:37 IST 2026
[2026-10-25 12:34:37,159.159 INFO    ] ================================================
[2026-10-25 12:34:37,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:34:37
[2026-10-25 12:34:38,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:34:38,578.578 INFO    ] Initializing speech engine...
[2026-10-25 12:34:38,584.584 INFO    ] 2026-10-25 12:34:38
[2026-10-25 12:34:38,862.862 INFO    ] 2026-10-25 12:34:38
[2026-10-25 12:34:38,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:34:39,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:34:39,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:34:39,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:34:39,220.220 INFO    ] time= 25/10/2026 12:34:39
[2026-10-25 12:34:39,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:34:39,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:34:39,306.306 INFO    ] No existing commands found in stream
[2026-10-25 12:34:44,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:34:44,322.322 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 12:34:47,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:34:47,498.498 INFO    ] Checking for system updates...
[2026-10-25 12:34:47,535.535 INFO    ] 200
[2026-10-25 12:34:47,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:47,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:47,593.593 INFO    ] No update needed
[2026-10-25 12:34:47,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 12:34:47,633.633 INFO    ] 200
[2026-10-25 12:34:47,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:34:47,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:34:47,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:34:47,748.748 INFO    ] No camera update needed
[2026-10-25 12:34:47,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:34:47,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:34:47,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:34:47,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:34:49,804.804 INFO    ] ================================================
[2026-10-25 12:34:49,819.819 INFO    ] Launching Daemon at Sun Oct 25 12:34:49 IST 2026
[2026-10-25 12:34:49,829.829 INFO    ] ================================================
[2026-10-25 12:34:50,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:34:50
[2026-10-25 12:34:50,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:34:51,229.229 INFO    ] Initializing speech engine...
[2026-10-25 12:34:51,238.238 INFO    ] 2026-10-25 12:34:51
[2026-10-25 12:34:51,512.512 INFO    ] 2026-10-25 12:34:51
[2026-10-25 12:34:51,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:34:51,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:34:51,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:34:51,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:34:51,887.887 INFO    ] time= 25/10/2026 12:34:51
[2026-10-25 12:34:51,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:34:51,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:34:51,966.966 INFO    ] No existing commands found in stream
[2026-10-25 12:34:57,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:34:57,004.004 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 12:35:02,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:35:02,569.569 INFO    ] Checking for system updates...
[2026-10-25 12:35:02,612.612 INFO    ] 200
[2026-10-25 12:35:02,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:02,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:02,697.697 INFO    ] No update needed
[2026-10-25 12:35:02,700.700 INFO    ] Checking for camera pi updates...
[2026-10-25 12:35:02,743.743 INFO    ] 200
[2026-10-25 12:35:02,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:02,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:35:02,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:02,835.835 INFO    ] No camera update needed
[2026-10-25 12:35:02,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:35:02,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:35:02,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:35:02,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:35:04,897.897 INFO    ] ================================================
[2026-10-25 12:35:04,912.912 INFO    ] Launching Daemon at Sun Oct 25 12:35:04 IST 2026
[2026-10-25 12:35:04,923.923 INFO    ] ================================================
[2026-10-25 12:35:05,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:35:05
[2026-10-25 12:35:06,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:35:06,326.326 INFO    ] Initializing speech engine...
[2026-10-25 12:35:06,342.342 INFO    ] 2026-10-25 12:35:06
[2026-10-25 12:35:06,619.619 INFO    ] 2026-10-25 12:35:06
[2026-10-25 12:35:06,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:35:06,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:35:06,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:35:06,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:35:07,007.007 INFO    ] time= 25/10/2026 12:35:06
[2026-10-25 12:35:07,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:35:07,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:35:07,111.111 INFO    ] No existing commands found in stream
[2026-10-25 12:35:12,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:35:12,127.127 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 12:35:15,927.927 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:35:15,930.930 INFO    ] Checking for system updates...
[2026-10-25 12:35:15,966.966 INFO    ] 200
[2026-10-25 12:35:15,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:16,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:35:16,023.023 INFO    ] No update needed
[2026-10-25 12:35:16,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 12:35:16,060.060 INFO    ] 200
[2026-10-25 12:35:16,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:16,103.103 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:35:16,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:35:16,157.157 INFO    ] No camera update needed
[2026-10-25 12:35:16,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:35:16,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:35:16,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:35:16,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:35:18,211.211 INFO    ] ================================================
[2026-10-25 12:35:18,226.226 INFO    ] Launching Daemon at Sun Oct 25 12:35:18 IST 2026
[2026-10-25 12:35:18,237.237 INFO    ] ================================================
[2026-10-25 12:35:18,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:35:18
[2026-10-25 12:35:19,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:35:19,761.761 INFO    ] Initializing speech engine...
[2026-10-25 12:35:19,769.769 INFO    ] 2026-10-25 12:35:19
[2026-10-25 12:35:20,065.065 INFO    ] 2026-10-25 12:35:20
[2026-10-25 12:35:20,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:35:20,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:35:20,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:35:20,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:35:20,523.523 INFO    ] time= 25/10/2026 12:35:20
[2026-10-25 12:35:20,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:35:20,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:35:20,767.767 INFO    ] No existing commands found in stream
[2026-10-25 12:35:25,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:35:25,798.798 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 12:35:28,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:35:28,529.529 INFO    ] Checking for system updates...
[2026-10-25 12:35:28,569.569 INFO    ] 200
[2026-10-25 12:35:28,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:28,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:28,627.627 INFO    ] No update needed
[2026-10-25 12:35:28,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 12:35:28,664.664 INFO    ] 200
[2026-10-25 12:35:28,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:28,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:35:28,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:28,761.761 INFO    ] No camera update needed
[2026-10-25 12:35:28,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:35:28,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:35:28,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:35:28,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:35:30,817.817 INFO    ] ================================================
[2026-10-25 12:35:30,836.836 INFO    ] Launching Daemon at Sun Oct 25 12:35:30 IST 2026
[2026-10-25 12:35:30,847.847 INFO    ] ================================================
[2026-10-25 12:35:31,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:35:31
[2026-10-25 12:35:32,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:35:32,650.650 INFO    ] Initializing speech engine...
[2026-10-25 12:35:32,662.662 INFO    ] 2026-10-25 12:35:32
[2026-10-25 12:35:32,945.945 INFO    ] 2026-10-25 12:35:32
[2026-10-25 12:35:32,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:35:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:35:33,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:35:33,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:35:33,990.990 INFO    ] time= 25/10/2026 12:35:33
[2026-10-25 12:35:34,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:35:34,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:35:34,188.188 INFO    ] No existing commands found in stream
[2026-10-25 12:35:39,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:35:39,227.227 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 12:35:40,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:35:40,163.163 INFO    ] Checking for system updates...
[2026-10-25 12:35:40,206.206 INFO    ] 200
[2026-10-25 12:35:40,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:40,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:35:40,266.266 INFO    ] No update needed
[2026-10-25 12:35:40,269.269 INFO    ] Checking for camera pi updates...
[2026-10-25 12:35:40,304.304 INFO    ] 200
[2026-10-25 12:35:40,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:40,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:35:40,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:35:40,411.411 INFO    ] No camera update needed
[2026-10-25 12:35:40,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:35:40,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:35:40,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:35:40,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:35:42,467.467 INFO    ] ================================================
[2026-10-25 12:35:42,482.482 INFO    ] Launching Daemon at Sun Oct 25 12:35:42 IST 2026
[2026-10-25 12:35:42,493.493 INFO    ] ================================================
[2026-10-25 12:35:43,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:35:43
[2026-10-25 12:35:43,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:35:44,172.172 INFO    ] Initializing speech engine...
[2026-10-25 12:35:44,179.179 INFO    ] 2026-10-25 12:35:44
[2026-10-25 12:35:44,463.463 INFO    ] 2026-10-25 12:35:44
[2026-10-25 12:35:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:35:44,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:35:44,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:35:44,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:35:45,020.020 INFO    ] time= 25/10/2026 12:35:44
[2026-10-25 12:35:45,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:35:45,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:35:45,168.168 INFO    ] No existing commands found in stream
[2026-10-25 12:35:50,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:35:50,208.208 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 12:35:52,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:35:52,318.318 INFO    ] Checking for system updates...
[2026-10-25 12:35:52,355.355 INFO    ] 200
[2026-10-25 12:35:52,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:52,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:52,416.416 INFO    ] No update needed
[2026-10-25 12:35:52,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 12:35:52,454.454 INFO    ] 200
[2026-10-25 12:35:52,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:35:52,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:35:52,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:35:52,556.556 INFO    ] No camera update needed
[2026-10-25 12:35:52,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:35:52,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:35:52,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:35:52,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:35:54,613.613 INFO    ] ================================================
[2026-10-25 12:35:54,628.628 INFO    ] Launching Daemon at Sun Oct 25 12:35:54 IST 2026
[2026-10-25 12:35:54,639.639 INFO    ] ================================================
[2026-10-25 12:35:55,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:35:55
[2026-10-25 12:35:56,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:35:56,320.320 INFO    ] Initializing speech engine...
[2026-10-25 12:35:56,334.334 INFO    ] 2026-10-25 12:35:56
[2026-10-25 12:35:56,627.627 INFO    ] 2026-10-25 12:35:56
[2026-10-25 12:35:56,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:35:56,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:35:56,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:35:57,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:35:57,088.088 INFO    ] time= 25/10/2026 12:35:57
[2026-10-25 12:35:57,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:35:57,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:35:57,277.277 INFO    ] No existing commands found in stream
[2026-10-25 12:36:02,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:02,287.287 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 12:36:05,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:36:05,456.456 INFO    ] Checking for system updates...
[2026-10-25 12:36:05,494.494 INFO    ] 200
[2026-10-25 12:36:05,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:05,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:05,553.553 INFO    ] No update needed
[2026-10-25 12:36:05,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 12:36:05,594.594 INFO    ] 200
[2026-10-25 12:36:05,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:05,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:36:05,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:05,688.688 INFO    ] No camera update needed
[2026-10-25 12:36:05,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:36:05,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:36:05,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:36:05,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:36:07,748.748 INFO    ] ================================================
[2026-10-25 12:36:07,764.764 INFO    ] Launching Daemon at Sun Oct 25 12:36:07 IST 2026
[2026-10-25 12:36:07,775.775 INFO    ] ================================================
[2026-10-25 12:36:08,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:36:08
[2026-10-25 12:36:08,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:36:09,258.258 INFO    ] Initializing speech engine...
[2026-10-25 12:36:09,277.277 INFO    ] 2026-10-25 12:36:09
[2026-10-25 12:36:09,529.529 INFO    ] 2026-10-25 12:36:09
[2026-10-25 12:36:09,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:36:09,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:36:09,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:36:09,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:36:09,901.901 INFO    ] time= 25/10/2026 12:36:09
[2026-10-25 12:36:09,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:36:09,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:36:10,069.069 INFO    ] No existing commands found in stream
[2026-10-25 12:36:15,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:15,103.103 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 12:36:15,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:36:15,633.633 INFO    ] Checking for system updates...
[2026-10-25 12:36:15,671.671 INFO    ] 200
[2026-10-25 12:36:15,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:15,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:15,732.732 INFO    ] No update needed
[2026-10-25 12:36:15,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 12:36:15,774.774 INFO    ] 200
[2026-10-25 12:36:15,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:15,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:36:15,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:15,879.879 INFO    ] No camera update needed
[2026-10-25 12:36:15,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:36:15,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:36:15,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:36:15,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:36:17,940.940 INFO    ] ================================================
[2026-10-25 12:36:17,959.959 INFO    ] Launching Daemon at Sun Oct 25 12:36:17 IST 2026
[2026-10-25 12:36:17,970.970 INFO    ] ================================================
[2026-10-25 12:36:18,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:36:18
[2026-10-25 12:36:19,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:36:19,758.758 INFO    ] Initializing speech engine...
[2026-10-25 12:36:19,766.766 INFO    ] 2026-10-25 12:36:19
[2026-10-25 12:36:20,073.073 INFO    ] 2026-10-25 12:36:20
[2026-10-25 12:36:20,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:36:20,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:36:20,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:36:20,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:36:20,511.511 INFO    ] time= 25/10/2026 12:36:20
[2026-10-25 12:36:20,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:36:20,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:36:20,666.666 INFO    ] No existing commands found in stream
[2026-10-25 12:36:25,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:25,694.694 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 12:36:26,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:36:26,124.124 INFO    ] Checking for system updates...
[2026-10-25 12:36:26,165.165 INFO    ] 200
[2026-10-25 12:36:26,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:26,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:26,231.231 INFO    ] No update needed
[2026-10-25 12:36:26,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 12:36:26,267.267 INFO    ] 200
[2026-10-25 12:36:26,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:26,310.310 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:36:26,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:26,357.357 INFO    ] No camera update needed
[2026-10-25 12:36:26,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:36:26,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:36:26,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:36:26,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:36:28,411.411 INFO    ] ================================================
[2026-10-25 12:36:28,427.427 INFO    ] Launching Daemon at Sun Oct 25 12:36:28 IST 2026
[2026-10-25 12:36:28,438.438 INFO    ] ================================================
[2026-10-25 12:36:29,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:36:29
[2026-10-25 12:36:29,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:36:30,113.113 INFO    ] Initializing speech engine...
[2026-10-25 12:36:30,135.135 INFO    ] 2026-10-25 12:36:30
[2026-10-25 12:36:30,409.409 INFO    ] 2026-10-25 12:36:30
[2026-10-25 12:36:30,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:36:30,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:36:30,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:36:30,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:36:30,841.841 INFO    ] time= 25/10/2026 12:36:30
[2026-10-25 12:36:30,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:36:30,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:36:30,927.927 INFO    ] No existing commands found in stream
[2026-10-25 12:36:35,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:35,943.943 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 12:36:39,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:36:39,023.023 INFO    ] Checking for system updates...
[2026-10-25 12:36:39,064.064 INFO    ] 200
[2026-10-25 12:36:39,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:39,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:39,122.122 INFO    ] No update needed
[2026-10-25 12:36:39,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 12:36:39,158.158 INFO    ] 200
[2026-10-25 12:36:39,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:39,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:36:39,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:36:39,271.271 INFO    ] No camera update needed
[2026-10-25 12:36:39,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:36:39,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:36:39,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:36:39,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:36:41,326.326 INFO    ] ================================================
[2026-10-25 12:36:41,342.342 INFO    ] Launching Daemon at Sun Oct 25 12:36:41 IST 2026
[2026-10-25 12:36:41,354.354 INFO    ] ================================================
[2026-10-25 12:36:41,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:36:41
[2026-10-25 12:36:42,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:36:42,764.764 INFO    ] Initializing speech engine...
[2026-10-25 12:36:42,780.780 INFO    ] 2026-10-25 12:36:42
[2026-10-25 12:36:43,069.069 INFO    ] 2026-10-25 12:36:43
[2026-10-25 12:36:43,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:36:43,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:36:43,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:36:43,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:36:43,464.464 INFO    ] time= 25/10/2026 12:36:43
[2026-10-25 12:36:43,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:36:43,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:36:43,593.593 INFO    ] No existing commands found in stream
[2026-10-25 12:36:48,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:48,607.607 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 12:36:49,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:36:49,942.942 INFO    ] Checking for system updates...
[2026-10-25 12:36:49,978.978 INFO    ] 200
[2026-10-25 12:36:49,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:50,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:36:50,046.046 INFO    ] No update needed
[2026-10-25 12:36:50,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 12:36:50,089.089 INFO    ] 200
[2026-10-25 12:36:50,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:36:50,133.133 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:36:50,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:36:50,197.197 INFO    ] No camera update needed
[2026-10-25 12:36:50,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:36:50,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:36:50,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:36:50,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:36:52,260.260 INFO    ] ================================================
[2026-10-25 12:36:52,276.276 INFO    ] Launching Daemon at Sun Oct 25 12:36:52 IST 2026
[2026-10-25 12:36:52,288.288 INFO    ] ================================================
[2026-10-25 12:36:52,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:36:52
[2026-10-25 12:36:53,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:36:53,694.694 INFO    ] Initializing speech engine...
[2026-10-25 12:36:53,713.713 INFO    ] 2026-10-25 12:36:53
[2026-10-25 12:36:53,959.959 INFO    ] 2026-10-25 12:36:53
[2026-10-25 12:36:53,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:36:54,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:36:54,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:36:54,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:36:54,437.437 INFO    ] time= 25/10/2026 12:36:54
[2026-10-25 12:36:54,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:36:54,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:36:54,585.585 INFO    ] No existing commands found in stream
[2026-10-25 12:36:59,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:36:59,600.600 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 12:37:00,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:37:00,581.581 INFO    ] Checking for system updates...
[2026-10-25 12:37:00,624.624 INFO    ] 200
[2026-10-25 12:37:00,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:00,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:00,686.686 INFO    ] No update needed
[2026-10-25 12:37:00,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 12:37:00,725.725 INFO    ] 200
[2026-10-25 12:37:00,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:00,771.771 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:37:00,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:00,839.839 INFO    ] No camera update needed
[2026-10-25 12:37:00,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:37:00,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:37:00,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:37:00,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:37:02,899.899 INFO    ] ================================================
[2026-10-25 12:37:02,914.914 INFO    ] Launching Daemon at Sun Oct 25 12:37:02 IST 2026
[2026-10-25 12:37:02,925.925 INFO    ] ================================================
[2026-10-25 12:37:03,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:37:03
[2026-10-25 12:37:04,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:37:04,386.386 INFO    ] Initializing speech engine...
[2026-10-25 12:37:04,401.401 INFO    ] 2026-10-25 12:37:04
[2026-10-25 12:37:04,681.681 INFO    ] 2026-10-25 12:37:04
[2026-10-25 12:37:04,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:37:06,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:37:06,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:37:07,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:37:07,154.154 INFO    ] time= 25/10/2026 12:37:07
[2026-10-25 12:37:07,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:37:07,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:37:07,246.246 INFO    ] No existing commands found in stream
[2026-10-25 12:37:12,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:37:12,256.256 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 12:37:13,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:37:13,894.894 INFO    ] Checking for system updates...
[2026-10-25 12:37:13,931.931 INFO    ] 200
[2026-10-25 12:37:13,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:13,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:13,988.988 INFO    ] No update needed
[2026-10-25 12:37:13,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 12:37:14,030.030 INFO    ] 200
[2026-10-25 12:37:14,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:14,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:37:14,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:14,121.121 INFO    ] No camera update needed
[2026-10-25 12:37:14,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:37:14,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:37:14,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:37:14,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:37:16,179.179 INFO    ] ================================================
[2026-10-25 12:37:16,194.194 INFO    ] Launching Daemon at Sun Oct 25 12:37:16 IST 2026
[2026-10-25 12:37:16,205.205 INFO    ] ================================================
[2026-10-25 12:37:16,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:37:16
[2026-10-25 12:37:17,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:37:17,635.635 INFO    ] Initializing speech engine...
[2026-10-25 12:37:17,642.642 INFO    ] 2026-10-25 12:37:17
[2026-10-25 12:37:17,889.889 INFO    ] 2026-10-25 12:37:17
[2026-10-25 12:37:17,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:37:18,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:37:18,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:37:18,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:37:18,372.372 INFO    ] time= 25/10/2026 12:37:18
[2026-10-25 12:37:18,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:37:18,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:37:18,519.519 INFO    ] No existing commands found in stream
[2026-10-25 12:37:23,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:37:23,533.533 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 12:37:27,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:37:27,415.415 INFO    ] Checking for system updates...
[2026-10-25 12:37:27,453.453 INFO    ] 200
[2026-10-25 12:37:27,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:27,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:37:27,519.519 INFO    ] No update needed
[2026-10-25 12:37:27,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 12:37:27,556.556 INFO    ] 200
[2026-10-25 12:37:27,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:27,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:37:27,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:37:27,659.659 INFO    ] No camera update needed
[2026-10-25 12:37:27,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:37:27,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:37:27,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:37:27,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:37:29,719.719 INFO    ] ================================================
[2026-10-25 12:37:29,734.734 INFO    ] Launching Daemon at Sun Oct 25 12:37:29 IST 2026
[2026-10-25 12:37:29,745.745 INFO    ] ================================================
[2026-10-25 12:37:30,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:37:30
[2026-10-25 12:37:30,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:37:31,197.197 INFO    ] Initializing speech engine...
[2026-10-25 12:37:31,208.208 INFO    ] 2026-10-25 12:37:31
[2026-10-25 12:37:31,483.483 INFO    ] 2026-10-25 12:37:31
[2026-10-25 12:37:31,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:37:31,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:37:31,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:37:31,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:37:31,937.937 INFO    ] time= 25/10/2026 12:37:31
[2026-10-25 12:37:32,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:37:32,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:37:32,157.157 INFO    ] No existing commands found in stream
[2026-10-25 12:37:37,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:37:37,192.192 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 12:37:39,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:37:39,241.241 INFO    ] Checking for system updates...
[2026-10-25 12:37:39,279.279 INFO    ] 200
[2026-10-25 12:37:39,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:39,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:39,338.338 INFO    ] No update needed
[2026-10-25 12:37:39,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 12:37:39,379.379 INFO    ] 200
[2026-10-25 12:37:39,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:39,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:37:39,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:39,580.580 INFO    ] No camera update needed
[2026-10-25 12:37:39,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:37:39,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:37:39,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:37:39,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:37:41,636.636 INFO    ] ================================================
[2026-10-25 12:37:41,651.651 INFO    ] Launching Daemon at Sun Oct 25 12:37:41 IST 2026
[2026-10-25 12:37:41,662.662 INFO    ] ================================================
[2026-10-25 12:37:42,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:37:42
[2026-10-25 12:37:42,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:37:43,072.072 INFO    ] Initializing speech engine...
[2026-10-25 12:37:43,089.089 INFO    ] 2026-10-25 12:37:43
[2026-10-25 12:37:43,346.346 INFO    ] 2026-10-25 12:37:43
[2026-10-25 12:37:43,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:37:43,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:37:43,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:37:43,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:37:43,724.724 INFO    ] time= 25/10/2026 12:37:43
[2026-10-25 12:37:43,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:37:43,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:37:43,890.890 INFO    ] No existing commands found in stream
[2026-10-25 12:37:48,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:37:48,918.918 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 12:37:49,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:37:49,876.876 INFO    ] Checking for system updates...
[2026-10-25 12:37:49,916.916 INFO    ] 200
[2026-10-25 12:37:49,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:49,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:49,984.984 INFO    ] No update needed
[2026-10-25 12:37:49,987.987 INFO    ] Checking for camera pi updates...
[2026-10-25 12:37:50,022.022 INFO    ] 200
[2026-10-25 12:37:50,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:37:50,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:37:50,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:37:50,133.133 INFO    ] No camera update needed
[2026-10-25 12:37:50,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:37:50,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:37:50,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:37:50,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:37:52,190.190 INFO    ] ================================================
[2026-10-25 12:37:52,204.204 INFO    ] Launching Daemon at Sun Oct 25 12:37:52 IST 2026
[2026-10-25 12:37:52,215.215 INFO    ] ================================================
[2026-10-25 12:37:52,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:37:52
[2026-10-25 12:37:53,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:37:53,648.648 INFO    ] Initializing speech engine...
[2026-10-25 12:37:53,657.657 INFO    ] 2026-10-25 12:37:53
[2026-10-25 12:37:53,918.918 INFO    ] 2026-10-25 12:37:53
[2026-10-25 12:37:53,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:37:54,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:37:54,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:37:54,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:37:54,387.387 INFO    ] time= 25/10/2026 12:37:54
[2026-10-25 12:37:54,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:37:54,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:37:54,530.530 INFO    ] No existing commands found in stream
[2026-10-25 12:37:59,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:37:59,544.544 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 12:38:00,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:38:00,767.767 INFO    ] Checking for system updates...
[2026-10-25 12:38:00,807.807 INFO    ] 200
[2026-10-25 12:38:00,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:00,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:38:00,866.866 INFO    ] No update needed
[2026-10-25 12:38:00,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 12:38:00,902.902 INFO    ] 200
[2026-10-25 12:38:00,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:00,946.946 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:38:00,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:38:00,986.986 INFO    ] No camera update needed
[2026-10-25 12:38:00,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:38:00,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:38:00,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:38:01,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:38:03,047.047 INFO    ] ================================================
[2026-10-25 12:38:03,065.065 INFO    ] Launching Daemon at Sun Oct 25 12:38:03 IST 2026
[2026-10-25 12:38:03,076.076 INFO    ] ================================================
[2026-10-25 12:38:03,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:38:03
[2026-10-25 12:38:04,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:38:04,553.553 INFO    ] Initializing speech engine...
[2026-10-25 12:38:04,566.566 INFO    ] 2026-10-25 12:38:04
[2026-10-25 12:38:04,826.826 INFO    ] 2026-10-25 12:38:04
[2026-10-25 12:38:04,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:38:08,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:38:08,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:38:09,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:38:09,088.088 INFO    ] time= 25/10/2026 12:38:09
[2026-10-25 12:38:09,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:38:09,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:38:09,149.149 INFO    ] No existing commands found in stream
[2026-10-25 12:38:14,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:38:14,161.161 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 12:38:15,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:38:15,098.098 INFO    ] Checking for system updates...
[2026-10-25 12:38:15,134.134 INFO    ] 200
[2026-10-25 12:38:15,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:15,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:15,200.200 INFO    ] No update needed
[2026-10-25 12:38:15,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 12:38:15,236.236 INFO    ] 200
[2026-10-25 12:38:15,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:15,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:38:15,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:15,336.336 INFO    ] No camera update needed
[2026-10-25 12:38:15,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:38:15,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:38:15,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:38:15,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:38:17,392.392 INFO    ] ================================================
[2026-10-25 12:38:17,407.407 INFO    ] Launching Daemon at Sun Oct 25 12:38:17 IST 2026
[2026-10-25 12:38:17,418.418 INFO    ] ================================================
[2026-10-25 12:38:18,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:38:17
[2026-10-25 12:38:18,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:38:18,871.871 INFO    ] Initializing speech engine...
[2026-10-25 12:38:18,891.891 INFO    ] 2026-10-25 12:38:18
[2026-10-25 12:38:19,172.172 INFO    ] 2026-10-25 12:38:19
[2026-10-25 12:38:19,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:38:19,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:38:19,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:38:19,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:38:19,556.556 INFO    ] time= 25/10/2026 12:38:19
[2026-10-25 12:38:19,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:38:19,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:38:19,684.684 INFO    ] No existing commands found in stream
[2026-10-25 12:38:24,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:38:24,696.696 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 12:38:25,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:38:25,196.196 INFO    ] Checking for system updates...
[2026-10-25 12:38:25,232.232 INFO    ] 200
[2026-10-25 12:38:25,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:25,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:25,292.292 INFO    ] No update needed
[2026-10-25 12:38:25,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 12:38:25,337.337 INFO    ] 200
[2026-10-25 12:38:25,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:25,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:38:25,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:25,434.434 INFO    ] No camera update needed
[2026-10-25 12:38:25,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:38:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:38:25,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:38:25,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:38:27,489.489 INFO    ] ================================================
[2026-10-25 12:38:27,505.505 INFO    ] Launching Daemon at Sun Oct 25 12:38:27 IST 2026
[2026-10-25 12:38:27,515.515 INFO    ] ================================================
[2026-10-25 12:38:28,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:38:28
[2026-10-25 12:38:28,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:38:29,159.159 INFO    ] Initializing speech engine...
[2026-10-25 12:38:29,166.166 INFO    ] 2026-10-25 12:38:29
[2026-10-25 12:38:29,480.480 INFO    ] 2026-10-25 12:38:29
[2026-10-25 12:38:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:38:29,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:38:29,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:38:29,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:38:29,999.999 INFO    ] time= 25/10/2026 12:38:29
[2026-10-25 12:38:30,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:38:30,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:38:30,152.152 INFO    ] No existing commands found in stream
[2026-10-25 12:38:35,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:38:35,173.173 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 12:38:39,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:38:39,888.888 INFO    ] Checking for system updates...
[2026-10-25 12:38:39,927.927 INFO    ] 200
[2026-10-25 12:38:39,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:39,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:38:39,988.988 INFO    ] No update needed
[2026-10-25 12:38:39,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 12:38:40,030.030 INFO    ] 200
[2026-10-25 12:38:40,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:40,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:38:40,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:38:40,137.137 INFO    ] No camera update needed
[2026-10-25 12:38:40,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:38:40,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:38:40,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:38:40,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:38:42,193.193 INFO    ] ================================================
[2026-10-25 12:38:42,208.208 INFO    ] Launching Daemon at Sun Oct 25 12:38:42 IST 2026
[2026-10-25 12:38:42,218.218 INFO    ] ================================================
[2026-10-25 12:38:42,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:38:42
[2026-10-25 12:38:43,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:38:43,862.862 INFO    ] Initializing speech engine...
[2026-10-25 12:38:43,874.874 INFO    ] 2026-10-25 12:38:43
[2026-10-25 12:38:44,158.158 INFO    ] 2026-10-25 12:38:44
[2026-10-25 12:38:44,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:38:44,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:38:44,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:38:44,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:38:44,648.648 INFO    ] time= 25/10/2026 12:38:44
[2026-10-25 12:38:44,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:38:44,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:38:44,836.836 INFO    ] No existing commands found in stream
[2026-10-25 12:38:49,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:38:49,867.867 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 12:38:50,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:38:50,810.810 INFO    ] Checking for system updates...
[2026-10-25 12:38:50,849.849 INFO    ] 200
[2026-10-25 12:38:50,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:50,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:50,921.921 INFO    ] No update needed
[2026-10-25 12:38:50,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 12:38:50,964.964 INFO    ] 200
[2026-10-25 12:38:50,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:38:51,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:38:51,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:38:51,068.068 INFO    ] No camera update needed
[2026-10-25 12:38:51,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:38:51,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:38:51,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:38:51,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:38:53,135.135 INFO    ] ================================================
[2026-10-25 12:38:53,152.152 INFO    ] Launching Daemon at Sun Oct 25 12:38:53 IST 2026
[2026-10-25 12:38:53,164.164 INFO    ] ================================================
[2026-10-25 12:38:53,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:38:53
[2026-10-25 12:38:54,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:38:54,816.816 INFO    ] Initializing speech engine...
[2026-10-25 12:38:54,826.826 INFO    ] 2026-10-25 12:38:54
[2026-10-25 12:38:55,125.125 INFO    ] 2026-10-25 12:38:55
[2026-10-25 12:38:55,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:38:55,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:38:55,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:38:55,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:38:55,668.668 INFO    ] time= 25/10/2026 12:38:55
[2026-10-25 12:38:55,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:38:55,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:38:55,825.825 INFO    ] No existing commands found in stream
[2026-10-25 12:39:00,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:39:00,842.842 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 12:39:03,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:39:03,441.441 INFO    ] Checking for system updates...
[2026-10-25 12:39:03,483.483 INFO    ] 200
[2026-10-25 12:39:03,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:03,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:03,552.552 INFO    ] No update needed
[2026-10-25 12:39:03,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 12:39:03,589.589 INFO    ] 200
[2026-10-25 12:39:03,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:03,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:39:03,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:03,693.693 INFO    ] No camera update needed
[2026-10-25 12:39:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:39:03,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:39:03,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:39:03,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:39:05,753.753 INFO    ] ================================================
[2026-10-25 12:39:05,768.768 INFO    ] Launching Daemon at Sun Oct 25 12:39:05 IST 2026
[2026-10-25 12:39:05,780.780 INFO    ] ================================================
[2026-10-25 12:39:06,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:39:06
[2026-10-25 12:39:06,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:39:07,202.202 INFO    ] Initializing speech engine...
[2026-10-25 12:39:07,211.211 INFO    ] 2026-10-25 12:39:07
[2026-10-25 12:39:07,459.459 INFO    ] 2026-10-25 12:39:07
[2026-10-25 12:39:07,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:39:10,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:39:10,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:39:10,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:39:10,837.837 INFO    ] time= 25/10/2026 12:39:10
[2026-10-25 12:39:10,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:39:10,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:39:10,894.894 INFO    ] No existing commands found in stream
[2026-10-25 12:39:15,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:39:15,906.906 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 12:39:19,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:39:19,957.957 INFO    ] Checking for system updates...
[2026-10-25 12:39:19,997.997 INFO    ] 200
[2026-10-25 12:39:20,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:20,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:39:20,055.055 INFO    ] No update needed
[2026-10-25 12:39:20,058.058 INFO    ] Checking for camera pi updates...
[2026-10-25 12:39:20,091.091 INFO    ] 200
[2026-10-25 12:39:20,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:20,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:39:20,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:39:20,196.196 INFO    ] No camera update needed
[2026-10-25 12:39:20,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:39:20,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:39:20,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:39:20,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:39:22,252.252 INFO    ] ================================================
[2026-10-25 12:39:22,268.268 INFO    ] Launching Daemon at Sun Oct 25 12:39:22 IST 2026
[2026-10-25 12:39:22,280.280 INFO    ] ================================================
[2026-10-25 12:39:22,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:39:22
[2026-10-25 12:39:23,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:39:23,743.743 INFO    ] Initializing speech engine...
[2026-10-25 12:39:23,754.754 INFO    ] 2026-10-25 12:39:23
[2026-10-25 12:39:24,024.024 INFO    ] 2026-10-25 12:39:24
[2026-10-25 12:39:24,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:39:24,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:39:24,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:39:24,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:39:24,484.484 INFO    ] time= 25/10/2026 12:39:24
[2026-10-25 12:39:24,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:39:24,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:39:24,689.689 INFO    ] No existing commands found in stream
[2026-10-25 12:39:29,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:39:29,704.704 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 12:39:33,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:39:33,932.932 INFO    ] Checking for system updates...
[2026-10-25 12:39:33,969.969 INFO    ] 200
[2026-10-25 12:39:33,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:34,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:34,029.029 INFO    ] No update needed
[2026-10-25 12:39:34,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 12:39:34,068.068 INFO    ] 200
[2026-10-25 12:39:34,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:34,114.114 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:39:34,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:34,167.167 INFO    ] No camera update needed
[2026-10-25 12:39:34,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:39:34,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:39:34,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:39:34,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:39:36,233.233 INFO    ] ================================================
[2026-10-25 12:39:36,249.249 INFO    ] Launching Daemon at Sun Oct 25 12:39:36 IST 2026
[2026-10-25 12:39:36,260.260 INFO    ] ================================================
[2026-10-25 12:39:36,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:39:36
[2026-10-25 12:39:37,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:39:37,832.832 INFO    ] Initializing speech engine...
[2026-10-25 12:39:37,841.841 INFO    ] 2026-10-25 12:39:37
[2026-10-25 12:39:38,138.138 INFO    ] 2026-10-25 12:39:38
[2026-10-25 12:39:38,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:39:41,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:39:41,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:39:41,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:39:41,629.629 INFO    ] time= 25/10/2026 12:39:41
[2026-10-25 12:39:41,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:39:41,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:39:41,680.680 INFO    ] No existing commands found in stream
[2026-10-25 12:39:46,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:39:46,692.692 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 12:39:47,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:39:47,162.162 INFO    ] Checking for system updates...
[2026-10-25 12:39:47,200.200 INFO    ] 200
[2026-10-25 12:39:47,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:47,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:47,265.265 INFO    ] No update needed
[2026-10-25 12:39:47,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 12:39:47,305.305 INFO    ] 200
[2026-10-25 12:39:47,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:39:47,354.354 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:39:47,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:39:47,515.515 INFO    ] No camera update needed
[2026-10-25 12:39:47,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:39:47,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:39:47,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:39:47,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:39:49,571.571 INFO    ] ================================================
[2026-10-25 12:39:49,586.586 INFO    ] Launching Daemon at Sun Oct 25 12:39:49 IST 2026
[2026-10-25 12:39:49,598.598 INFO    ] ================================================
[2026-10-25 12:39:50,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:39:50
[2026-10-25 12:39:50,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:39:51,236.236 INFO    ] Initializing speech engine...
[2026-10-25 12:39:51,249.249 INFO    ] 2026-10-25 12:39:51
[2026-10-25 12:39:51,536.536 INFO    ] 2026-10-25 12:39:51
[2026-10-25 12:39:51,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:39:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:39:51,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:39:52,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:39:52,069.069 INFO    ] time= 25/10/2026 12:39:52
[2026-10-25 12:39:52,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:39:52,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:39:52,200.200 INFO    ] No existing commands found in stream
[2026-10-25 12:39:57,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:39:57,241.241 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 12:40:00,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:40:00,491.491 INFO    ] Checking for system updates...
[2026-10-25 12:40:00,529.529 INFO    ] 200
[2026-10-25 12:40:00,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:00,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:00,590.590 INFO    ] No update needed
[2026-10-25 12:40:00,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 12:40:00,630.630 INFO    ] 200
[2026-10-25 12:40:00,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:00,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:40:00,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:00,739.739 INFO    ] No camera update needed
[2026-10-25 12:40:00,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:40:00,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:40:00,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:40:00,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:40:02,803.803 INFO    ] ================================================
[2026-10-25 12:40:02,826.826 INFO    ] Launching Daemon at Sun Oct 25 12:40:02 IST 2026
[2026-10-25 12:40:02,845.845 INFO    ] ================================================
[2026-10-25 12:40:03,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:40:03
[2026-10-25 12:40:04,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:40:04,565.565 INFO    ] Initializing speech engine...
[2026-10-25 12:40:04,573.573 INFO    ] 2026-10-25 12:40:04
[2026-10-25 12:40:04,821.821 INFO    ] 2026-10-25 12:40:04
[2026-10-25 12:40:04,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:40:05,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:40:05,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:40:05,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:40:05,264.264 INFO    ] time= 25/10/2026 12:40:05
[2026-10-25 12:40:05,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:40:05,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:40:05,433.433 INFO    ] No existing commands found in stream
[2026-10-25 12:40:10,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:40:10,447.447 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 12:40:12,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:40:12,868.868 INFO    ] Checking for system updates...
[2026-10-25 12:40:12,911.911 INFO    ] 200
[2026-10-25 12:40:12,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:12,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:12,982.982 INFO    ] No update needed
[2026-10-25 12:40:12,985.985 INFO    ] Checking for camera pi updates...
[2026-10-25 12:40:13,021.021 INFO    ] 200
[2026-10-25 12:40:13,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:13,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:40:13,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:13,123.123 INFO    ] No camera update needed
[2026-10-25 12:40:13,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:40:13,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:40:13,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:40:13,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:40:15,181.181 INFO    ] ================================================
[2026-10-25 12:40:15,197.197 INFO    ] Launching Daemon at Sun Oct 25 12:40:15 IST 2026
[2026-10-25 12:40:15,208.208 INFO    ] ================================================
[2026-10-25 12:40:15,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:40:15
[2026-10-25 12:40:16,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:40:16,639.639 INFO    ] Initializing speech engine...
[2026-10-25 12:40:16,648.648 INFO    ] 2026-10-25 12:40:16
[2026-10-25 12:40:16,895.895 INFO    ] 2026-10-25 12:40:16
[2026-10-25 12:40:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:40:17,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:40:17,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:40:17,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:40:17,369.369 INFO    ] time= 25/10/2026 12:40:17
[2026-10-25 12:40:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:40:17,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:40:17,514.514 INFO    ] No existing commands found in stream
[2026-10-25 12:40:22,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:40:22,528.528 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 12:40:25,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:40:25,331.331 INFO    ] Checking for system updates...
[2026-10-25 12:40:25,372.372 INFO    ] 200
[2026-10-25 12:40:25,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:25,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:40:25,430.430 INFO    ] No update needed
[2026-10-25 12:40:25,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 12:40:25,466.466 INFO    ] 200
[2026-10-25 12:40:25,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:25,510.510 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:40:25,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:40:25,560.560 INFO    ] No camera update needed
[2026-10-25 12:40:25,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:40:25,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:40:25,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:40:25,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:40:27,617.617 INFO    ] ================================================
[2026-10-25 12:40:27,633.633 INFO    ] Launching Daemon at Sun Oct 25 12:40:27 IST 2026
[2026-10-25 12:40:27,644.644 INFO    ] ================================================
[2026-10-25 12:40:28,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:40:28
[2026-10-25 12:40:28,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:40:29,041.041 INFO    ] Initializing speech engine...
[2026-10-25 12:40:29,065.065 INFO    ] 2026-10-25 12:40:29
[2026-10-25 12:40:29,323.323 INFO    ] 2026-10-25 12:40:29
[2026-10-25 12:40:29,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:40:29,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:40:29,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:40:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:40:29,790.790 INFO    ] time= 25/10/2026 12:40:29
[2026-10-25 12:40:29,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:40:29,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:40:29,948.948 INFO    ] No existing commands found in stream
[2026-10-25 12:40:34,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:40:34,970.970 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 12:40:37,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:40:37,187.187 INFO    ] Checking for system updates...
[2026-10-25 12:40:37,227.227 INFO    ] 200
[2026-10-25 12:40:37,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:37,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:40:37,288.288 INFO    ] No update needed
[2026-10-25 12:40:37,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 12:40:37,325.325 INFO    ] 200
[2026-10-25 12:40:37,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:37,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:40:37,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:40:37,590.590 INFO    ] No camera update needed
[2026-10-25 12:40:37,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:40:37,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:40:37,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:40:37,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:40:39,647.647 INFO    ] ================================================
[2026-10-25 12:40:39,663.663 INFO    ] Launching Daemon at Sun Oct 25 12:40:39 IST 2026
[2026-10-25 12:40:39,674.674 INFO    ] ================================================
[2026-10-25 12:40:40,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:40:40
[2026-10-25 12:40:40,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:40:41,094.094 INFO    ] Initializing speech engine...
[2026-10-25 12:40:41,103.103 INFO    ] 2026-10-25 12:40:41
[2026-10-25 12:40:41,399.399 INFO    ] 2026-10-25 12:40:41
[2026-10-25 12:40:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:40:41,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:40:41,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:40:41,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:40:41,783.783 INFO    ] time= 25/10/2026 12:40:41
[2026-10-25 12:40:41,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:40:41,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:40:41,911.911 INFO    ] No existing commands found in stream
[2026-10-25 12:40:46,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:40:46,926.926 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 12:40:49,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:40:49,785.785 INFO    ] Checking for system updates...
[2026-10-25 12:40:49,821.821 INFO    ] 200
[2026-10-25 12:40:49,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:49,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:49,887.887 INFO    ] No update needed
[2026-10-25 12:40:49,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 12:40:49,927.927 INFO    ] 200
[2026-10-25 12:40:49,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:40:49,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:40:50,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:40:50,027.027 INFO    ] No camera update needed
[2026-10-25 12:40:50,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:40:50,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:40:50,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:40:50,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:40:52,082.082 INFO    ] ================================================
[2026-10-25 12:40:52,098.098 INFO    ] Launching Daemon at Sun Oct 25 12:40:52 IST 2026
[2026-10-25 12:40:52,109.109 INFO    ] ================================================
[2026-10-25 12:40:52,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:40:52
[2026-10-25 12:40:53,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:40:53,525.525 INFO    ] Initializing speech engine...
[2026-10-25 12:40:53,533.533 INFO    ] 2026-10-25 12:40:53
[2026-10-25 12:40:53,780.780 INFO    ] 2026-10-25 12:40:53
[2026-10-25 12:40:53,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:40:54,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:40:54,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:40:54,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:40:54,256.256 INFO    ] time= 25/10/2026 12:40:54
[2026-10-25 12:40:54,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:40:54,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:40:54,402.402 INFO    ] No existing commands found in stream
[2026-10-25 12:40:59,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:40:59,425.425 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 12:41:03,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:41:03,598.598 INFO    ] Checking for system updates...
[2026-10-25 12:41:03,634.634 INFO    ] 200
[2026-10-25 12:41:03,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:03,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:03,691.691 INFO    ] No update needed
[2026-10-25 12:41:03,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 12:41:03,728.728 INFO    ] 200
[2026-10-25 12:41:03,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:03,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:41:03,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:03,828.828 INFO    ] No camera update needed
[2026-10-25 12:41:03,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:41:03,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:41:03,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:41:03,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:41:05,885.885 INFO    ] ================================================
[2026-10-25 12:41:05,900.900 INFO    ] Launching Daemon at Sun Oct 25 12:41:05 IST 2026
[2026-10-25 12:41:05,912.912 INFO    ] ================================================
[2026-10-25 12:41:06,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:41:06
[2026-10-25 12:41:07,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:41:07,450.450 INFO    ] Initializing speech engine...
[2026-10-25 12:41:07,466.466 INFO    ] 2026-10-25 12:41:07
[2026-10-25 12:41:07,731.731 INFO    ] 2026-10-25 12:41:07
[2026-10-25 12:41:07,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:41:07,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:41:07,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:41:08,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:41:08,098.098 INFO    ] time= 25/10/2026 12:41:08
[2026-10-25 12:41:08,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:41:08,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:41:08,184.184 INFO    ] No existing commands found in stream
[2026-10-25 12:41:13,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:41:13,197.197 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 12:41:16,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:41:16,912.912 INFO    ] Checking for system updates...
[2026-10-25 12:41:16,948.948 INFO    ] 200
[2026-10-25 12:41:16,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:17,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:17,006.006 INFO    ] No update needed
[2026-10-25 12:41:17,009.009 INFO    ] Checking for camera pi updates...
[2026-10-25 12:41:17,044.044 INFO    ] 200
[2026-10-25 12:41:17,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:17,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:41:17,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:17,138.138 INFO    ] No camera update needed
[2026-10-25 12:41:17,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:41:17,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:41:17,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:41:17,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:41:19,193.193 INFO    ] ================================================
[2026-10-25 12:41:19,209.209 INFO    ] Launching Daemon at Sun Oct 25 12:41:19 IST 2026
[2026-10-25 12:41:19,220.220 INFO    ] ================================================
[2026-10-25 12:41:19,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:41:19
[2026-10-25 12:41:20,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:41:20,862.862 INFO    ] Initializing speech engine...
[2026-10-25 12:41:20,871.871 INFO    ] 2026-10-25 12:41:20
[2026-10-25 12:41:21,147.147 INFO    ] 2026-10-25 12:41:21
[2026-10-25 12:41:21,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:41:21,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:41:21,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:41:21,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:41:21,698.698 INFO    ] time= 25/10/2026 12:41:21
[2026-10-25 12:41:21,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:41:21,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:41:21,834.834 INFO    ] No existing commands found in stream
[2026-10-25 12:41:26,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:41:26,865.865 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 12:41:28,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:41:28,486.486 INFO    ] Checking for system updates...
[2026-10-25 12:41:28,529.529 INFO    ] 200
[2026-10-25 12:41:28,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:28,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:28,596.596 INFO    ] No update needed
[2026-10-25 12:41:28,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 12:41:28,633.633 INFO    ] 200
[2026-10-25 12:41:28,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:28,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:41:28,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:28,721.721 INFO    ] No camera update needed
[2026-10-25 12:41:28,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:41:28,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:41:28,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:41:28,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:41:30,775.775 INFO    ] ================================================
[2026-10-25 12:41:30,792.792 INFO    ] Launching Daemon at Sun Oct 25 12:41:30 IST 2026
[2026-10-25 12:41:30,802.802 INFO    ] ================================================
[2026-10-25 12:41:31,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:41:31
[2026-10-25 12:41:32,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:41:32,408.408 INFO    ] Initializing speech engine...
[2026-10-25 12:41:32,422.422 INFO    ] 2026-10-25 12:41:32
[2026-10-25 12:41:32,724.724 INFO    ] 2026-10-25 12:41:32
[2026-10-25 12:41:32,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:41:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:41:32,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:41:33,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:41:33,106.106 INFO    ] time= 25/10/2026 12:41:33
[2026-10-25 12:41:33,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:41:33,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:41:33,229.229 INFO    ] No existing commands found in stream
[2026-10-25 12:41:38,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:41:38,245.245 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 12:41:40,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:41:40,972.972 INFO    ] Checking for system updates...
[2026-10-25 12:41:41,013.013 INFO    ] 200
[2026-10-25 12:41:41,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:41,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:41:41,080.080 INFO    ] No update needed
[2026-10-25 12:41:41,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 12:41:41,118.118 INFO    ] 200
[2026-10-25 12:41:41,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:41,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:41:41,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:41:41,218.218 INFO    ] No camera update needed
[2026-10-25 12:41:41,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:41:41,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:41:41,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:41:41,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:41:43,273.273 INFO    ] ================================================
[2026-10-25 12:41:43,288.288 INFO    ] Launching Daemon at Sun Oct 25 12:41:43 IST 2026
[2026-10-25 12:41:43,299.299 INFO    ] ================================================
[2026-10-25 12:41:43,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:41:43
[2026-10-25 12:41:44,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:41:44,706.706 INFO    ] Initializing speech engine...
[2026-10-25 12:41:44,725.725 INFO    ] 2026-10-25 12:41:44
[2026-10-25 12:41:44,982.982 INFO    ] 2026-10-25 12:41:44
[2026-10-25 12:41:45,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:41:47,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:41:47,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:41:47,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:41:47,961.961 INFO    ] time= 25/10/2026 12:41:47
[2026-10-25 12:41:47,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:41:47,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:41:48,013.013 INFO    ] No existing commands found in stream
[2026-10-25 12:41:53,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:41:53,025.025 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 12:41:56,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:41:56,326.326 INFO    ] Checking for system updates...
[2026-10-25 12:41:56,365.365 INFO    ] 200
[2026-10-25 12:41:56,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:56,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:56,424.424 INFO    ] No update needed
[2026-10-25 12:41:56,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 12:41:56,461.461 INFO    ] 200
[2026-10-25 12:41:56,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:41:56,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:41:56,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:41:56,657.657 INFO    ] No camera update needed
[2026-10-25 12:41:56,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:41:56,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:41:56,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:41:56,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:41:58,714.714 INFO    ] ================================================
[2026-10-25 12:41:58,730.730 INFO    ] Launching Daemon at Sun Oct 25 12:41:58 IST 2026
[2026-10-25 12:41:58,741.741 INFO    ] ================================================
[2026-10-25 12:41:59,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:41:59
[2026-10-25 12:41:59,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:42:00,211.211 INFO    ] Initializing speech engine...
[2026-10-25 12:42:00,220.220 INFO    ] 2026-10-25 12:42:00
[2026-10-25 12:42:00,512.512 INFO    ] 2026-10-25 12:42:00
[2026-10-25 12:42:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:42:00,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:42:00,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:42:00,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:42:00,876.876 INFO    ] time= 25/10/2026 12:42:00
[2026-10-25 12:42:00,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:42:00,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:42:00,984.984 INFO    ] No existing commands found in stream
[2026-10-25 12:42:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:42:05,999.999 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 12:42:10,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:42:10,073.073 INFO    ] Checking for system updates...
[2026-10-25 12:42:10,109.109 INFO    ] 200
[2026-10-25 12:42:10,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:10,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:10,169.169 INFO    ] No update needed
[2026-10-25 12:42:10,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 12:42:10,206.206 INFO    ] 200
[2026-10-25 12:42:10,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:10,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:42:10,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:10,300.300 INFO    ] No camera update needed
[2026-10-25 12:42:10,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:42:10,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:42:10,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:42:10,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:42:12,356.356 INFO    ] ================================================
[2026-10-25 12:42:12,371.371 INFO    ] Launching Daemon at Sun Oct 25 12:42:12 IST 2026
[2026-10-25 12:42:12,383.383 INFO    ] ================================================
[2026-10-25 12:42:12,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:42:12
[2026-10-25 12:42:13,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:42:13,820.820 INFO    ] Initializing speech engine...
[2026-10-25 12:42:13,829.829 INFO    ] 2026-10-25 12:42:13
[2026-10-25 12:42:14,074.074 INFO    ] 2026-10-25 12:42:14
[2026-10-25 12:42:14,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:42:14,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:42:14,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:42:14,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:42:14,441.441 INFO    ] time= 25/10/2026 12:42:14
[2026-10-25 12:42:14,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:42:14,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:42:14,613.613 INFO    ] No existing commands found in stream
[2026-10-25 12:42:19,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:42:19,641.641 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 12:42:21,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:42:21,949.949 INFO    ] Checking for system updates...
[2026-10-25 12:42:21,986.986 INFO    ] 200
[2026-10-25 12:42:21,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:22,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:22,043.043 INFO    ] No update needed
[2026-10-25 12:42:22,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 12:42:22,087.087 INFO    ] 200
[2026-10-25 12:42:22,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:22,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:42:22,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:22,194.194 INFO    ] No camera update needed
[2026-10-25 12:42:22,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:42:22,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:42:22,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:42:22,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:42:24,254.254 INFO    ] ================================================
[2026-10-25 12:42:24,270.270 INFO    ] Launching Daemon at Sun Oct 25 12:42:24 IST 2026
[2026-10-25 12:42:24,281.281 INFO    ] ================================================
[2026-10-25 12:42:24,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:42:24
[2026-10-25 12:42:25,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:42:25,715.715 INFO    ] Initializing speech engine...
[2026-10-25 12:42:25,720.720 INFO    ] 2026-10-25 12:42:25
[2026-10-25 12:42:25,968.968 INFO    ] 2026-10-25 12:42:25
[2026-10-25 12:42:26,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:42:26,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:42:26,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:42:26,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:42:26,464.464 INFO    ] time= 25/10/2026 12:42:26
[2026-10-25 12:42:26,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:42:26,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:42:26,647.647 INFO    ] No existing commands found in stream
[2026-10-25 12:42:31,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:42:31,685.685 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 12:42:35,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:42:35,024.024 INFO    ] Checking for system updates...
[2026-10-25 12:42:35,062.062 INFO    ] 200
[2026-10-25 12:42:35,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:35,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:42:35,122.122 INFO    ] No update needed
[2026-10-25 12:42:35,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 12:42:35,164.164 INFO    ] 200
[2026-10-25 12:42:35,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:35,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:42:35,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:42:35,261.261 INFO    ] No camera update needed
[2026-10-25 12:42:35,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:42:35,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:42:35,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:42:35,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:42:37,321.321 INFO    ] ================================================
[2026-10-25 12:42:37,337.337 INFO    ] Launching Daemon at Sun Oct 25 12:42:37 IST 2026
[2026-10-25 12:42:37,348.348 INFO    ] ================================================
[2026-10-25 12:42:38,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:42:38
[2026-10-25 12:42:38,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:42:39,018.018 INFO    ] Initializing speech engine...
[2026-10-25 12:42:39,030.030 INFO    ] 2026-10-25 12:42:39
[2026-10-25 12:42:39,341.341 INFO    ] 2026-10-25 12:42:39
[2026-10-25 12:42:39,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:42:39,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:42:39,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:42:39,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:42:39,846.846 INFO    ] time= 25/10/2026 12:42:39
[2026-10-25 12:42:39,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:42:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:42:39,997.997 INFO    ] No existing commands found in stream
[2026-10-25 12:42:45,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:42:45,016.016 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 12:42:50,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:42:50,045.045 INFO    ] Checking for system updates...
[2026-10-25 12:42:50,082.082 INFO    ] 200
[2026-10-25 12:42:50,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:50,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:50,140.140 INFO    ] No update needed
[2026-10-25 12:42:50,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 12:42:50,177.177 INFO    ] 200
[2026-10-25 12:42:50,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:42:50,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:42:50,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:42:50,274.274 INFO    ] No camera update needed
[2026-10-25 12:42:50,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:42:50,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:42:50,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:42:50,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:42:52,331.331 INFO    ] ================================================
[2026-10-25 12:42:52,347.347 INFO    ] Launching Daemon at Sun Oct 25 12:42:52 IST 2026
[2026-10-25 12:42:52,358.358 INFO    ] ================================================
[2026-10-25 12:42:53,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:42:53
[2026-10-25 12:42:53,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:42:54,012.012 INFO    ] Initializing speech engine...
[2026-10-25 12:42:54,025.025 INFO    ] 2026-10-25 12:42:54
[2026-10-25 12:42:54,315.315 INFO    ] 2026-10-25 12:42:54
[2026-10-25 12:42:54,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:42:54,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:42:54,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:42:54,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:42:54,847.847 INFO    ] time= 25/10/2026 12:42:54
[2026-10-25 12:42:54,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:42:54,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:42:55,001.001 INFO    ] No existing commands found in stream
[2026-10-25 12:43:00,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:43:00,019.019 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 12:43:00,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:43:00,642.642 INFO    ] Checking for system updates...
[2026-10-25 12:43:00,685.685 INFO    ] 200
[2026-10-25 12:43:00,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:00,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:43:00,753.753 INFO    ] No update needed
[2026-10-25 12:43:00,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 12:43:00,799.799 INFO    ] 200
[2026-10-25 12:43:00,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:00,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:43:00,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:43:00,905.905 INFO    ] No camera update needed
[2026-10-25 12:43:00,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:43:00,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:43:00,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:43:00,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:43:02,971.971 INFO    ] ================================================
[2026-10-25 12:43:02,986.986 INFO    ] Launching Daemon at Sun Oct 25 12:43:02 IST 2026
[2026-10-25 12:43:03,997.997 INFO    ] ================================================
[2026-10-25 12:43:03,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:43:03
[2026-10-25 12:43:04,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:43:04,511.511 INFO    ] Initializing speech engine...
[2026-10-25 12:43:04,517.517 INFO    ] 2026-10-25 12:43:04
[2026-10-25 12:43:04,778.778 INFO    ] 2026-10-25 12:43:04
[2026-10-25 12:43:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:43:05,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:43:05,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:43:05,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:43:05,253.253 INFO    ] time= 25/10/2026 12:43:05
[2026-10-25 12:43:05,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:43:05,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:43:05,387.387 INFO    ] No existing commands found in stream
[2026-10-25 12:43:10,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:43:10,402.402 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 12:43:14,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:43:14,428.428 INFO    ] Checking for system updates...
[2026-10-25 12:43:14,465.465 INFO    ] 200
[2026-10-25 12:43:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:14,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:14,527.527 INFO    ] No update needed
[2026-10-25 12:43:14,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 12:43:14,563.563 INFO    ] 200
[2026-10-25 12:43:14,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:14,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:43:14,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:14,663.663 INFO    ] No camera update needed
[2026-10-25 12:43:14,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:43:14,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:43:14,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:43:14,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:43:16,722.722 INFO    ] ================================================
[2026-10-25 12:43:16,739.739 INFO    ] Launching Daemon at Sun Oct 25 12:43:16 IST 2026
[2026-10-25 12:43:16,753.753 INFO    ] ================================================
[2026-10-25 12:43:17,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:43:17
[2026-10-25 12:43:17,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:43:18,279.279 INFO    ] Initializing speech engine...
[2026-10-25 12:43:18,290.290 INFO    ] 2026-10-25 12:43:18
[2026-10-25 12:43:18,609.609 INFO    ] 2026-10-25 12:43:18
[2026-10-25 12:43:18,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:43:20,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:43:20,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:43:20,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:43:20,972.972 INFO    ] time= 25/10/2026 12:43:20
[2026-10-25 12:43:20,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:43:21,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:43:21,099.099 INFO    ] No existing commands found in stream
[2026-10-25 12:43:26,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:43:26,114.114 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 12:43:30,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:43:30,087.087 INFO    ] Checking for system updates...
[2026-10-25 12:43:30,125.125 INFO    ] 200
[2026-10-25 12:43:30,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:30,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:30,186.186 INFO    ] No update needed
[2026-10-25 12:43:30,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 12:43:30,224.224 INFO    ] 200
[2026-10-25 12:43:30,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:30,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:43:30,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:30,329.329 INFO    ] No camera update needed
[2026-10-25 12:43:30,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:43:30,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:43:30,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:43:30,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:43:32,390.390 INFO    ] ================================================
[2026-10-25 12:43:32,408.408 INFO    ] Launching Daemon at Sun Oct 25 12:43:32 IST 2026
[2026-10-25 12:43:32,421.421 INFO    ] ================================================
[2026-10-25 12:43:33,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:43:33
[2026-10-25 12:43:33,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:43:34,131.131 INFO    ] Initializing speech engine...
[2026-10-25 12:43:34,144.144 INFO    ] 2026-10-25 12:43:34
[2026-10-25 12:43:34,427.427 INFO    ] 2026-10-25 12:43:34
[2026-10-25 12:43:34,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:43:34,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:43:34,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:43:34,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:43:34,910.910 INFO    ] time= 25/10/2026 12:43:34
[2026-10-25 12:43:34,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:43:34,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:43:35,096.096 INFO    ] No existing commands found in stream
[2026-10-25 12:43:40,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:43:40,131.131 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 12:43:51,080.080 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 12:43:51,115.115 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-10-25 12:43:51,124.124 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-10-25 12:43:51,144.144 INFO    ] None
[2026-10-25 12:43:51,147.147 INFO    ] Checking for system updates...
[2026-10-25 12:43:51,189.189 INFO    ] 200
[2026-10-25 12:43:51,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:51,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:51,259.259 INFO    ] No update needed
[2026-10-25 12:43:51,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 12:43:51,296.296 INFO    ] 200
[2026-10-25 12:43:51,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:43:51,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:43:51,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:43:51,389.389 INFO    ] No camera update needed
[2026-10-25 12:43:51,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:43:51,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:43:51,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:43:51,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:43:53,444.444 INFO    ] ================================================
[2026-10-25 12:43:53,460.460 INFO    ] Launching Daemon at Sun Oct 25 12:43:53 IST 2026
[2026-10-25 12:43:53,471.471 INFO    ] ================================================
[2026-10-25 12:43:54,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:43:54
[2026-10-25 12:43:54,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:43:54,921.921 INFO    ] Initializing speech engine...
[2026-10-25 12:43:54,946.946 INFO    ] 2026-10-25 12:43:54
[2026-10-25 12:43:55,226.226 INFO    ] 2026-10-25 12:43:55
[2026-10-25 12:43:55,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:43:55,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:43:55,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:43:55,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:43:55,610.610 INFO    ] time= 25/10/2026 12:43:55
[2026-10-25 12:43:55,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:43:55,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:43:55,722.722 INFO    ] No existing commands found in stream
[2026-10-25 12:44:00,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:00,738.738 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 12:44:01,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:44:01,393.393 INFO    ] Checking for system updates...
[2026-10-25 12:44:01,430.430 INFO    ] 200
[2026-10-25 12:44:01,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:01,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:01,488.488 INFO    ] No update needed
[2026-10-25 12:44:01,490.490 INFO    ] Checking for camera pi updates...
[2026-10-25 12:44:01,526.526 INFO    ] 200
[2026-10-25 12:44:01,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:01,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:44:01,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:01,772.772 INFO    ] No camera update needed
[2026-10-25 12:44:01,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:44:01,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:44:01,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:44:01,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:44:03,856.856 INFO    ] ================================================
[2026-10-25 12:44:03,872.872 INFO    ] Launching Daemon at Sun Oct 25 12:44:03 IST 2026
[2026-10-25 12:44:03,882.882 INFO    ] ================================================
[2026-10-25 12:44:04,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:44:04
[2026-10-25 12:44:05,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:44:05,358.358 INFO    ] Initializing speech engine...
[2026-10-25 12:44:05,367.367 INFO    ] 2026-10-25 12:44:05
[2026-10-25 12:44:05,640.640 INFO    ] 2026-10-25 12:44:05
[2026-10-25 12:44:05,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:44:05,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:44:05,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:44:06,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:44:06,139.139 INFO    ] time= 25/10/2026 12:44:06
[2026-10-25 12:44:06,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:44:06,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:44:06,275.275 INFO    ] No existing commands found in stream
[2026-10-25 12:44:11,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:11,290.290 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 12:44:13,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:44:13,346.346 INFO    ] Checking for system updates...
[2026-10-25 12:44:13,384.384 INFO    ] 200
[2026-10-25 12:44:13,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:13,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:44:13,442.442 INFO    ] No update needed
[2026-10-25 12:44:13,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 12:44:13,478.478 INFO    ] 200
[2026-10-25 12:44:13,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:13,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:44:13,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:44:13,578.578 INFO    ] No camera update needed
[2026-10-25 12:44:13,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:44:13,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:44:13,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:44:13,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:44:15,633.633 INFO    ] ================================================
[2026-10-25 12:44:15,649.649 INFO    ] Launching Daemon at Sun Oct 25 12:44:15 IST 2026
[2026-10-25 12:44:15,660.660 INFO    ] ================================================
[2026-10-25 12:44:16,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:44:16
[2026-10-25 12:44:16,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:44:17,119.119 INFO    ] Initializing speech engine...
[2026-10-25 12:44:17,134.134 INFO    ] 2026-10-25 12:44:17
[2026-10-25 12:44:17,389.389 INFO    ] 2026-10-25 12:44:17
[2026-10-25 12:44:17,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:44:17,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:44:17,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:44:17,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:44:17,757.757 INFO    ] time= 25/10/2026 12:44:17
[2026-10-25 12:44:17,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:44:17,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:44:17,841.841 INFO    ] No existing commands found in stream
[2026-10-25 12:44:22,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:22,879.879 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 12:44:24,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:44:24,932.932 INFO    ] Checking for system updates...
[2026-10-25 12:44:24,970.970 INFO    ] 200
[2026-10-25 12:44:24,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:25,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:25,034.034 INFO    ] No update needed
[2026-10-25 12:44:25,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 12:44:25,075.075 INFO    ] 200
[2026-10-25 12:44:25,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:25,121.121 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:44:25,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:25,171.171 INFO    ] No camera update needed
[2026-10-25 12:44:25,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:44:25,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:44:25,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:44:25,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:44:27,231.231 INFO    ] ================================================
[2026-10-25 12:44:27,246.246 INFO    ] Launching Daemon at Sun Oct 25 12:44:27 IST 2026
[2026-10-25 12:44:27,257.257 INFO    ] ================================================
[2026-10-25 12:44:27,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:44:27
[2026-10-25 12:44:28,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:44:28,661.661 INFO    ] Initializing speech engine...
[2026-10-25 12:44:28,669.669 INFO    ] 2026-10-25 12:44:28
[2026-10-25 12:44:28,966.966 INFO    ] 2026-10-25 12:44:28
[2026-10-25 12:44:29,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:44:29,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:44:29,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:44:29,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:44:29,345.345 INFO    ] time= 25/10/2026 12:44:29
[2026-10-25 12:44:29,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:44:29,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:44:29,470.470 INFO    ] No existing commands found in stream
[2026-10-25 12:44:34,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:34,486.486 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 12:44:35,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:44:35,376.376 INFO    ] Checking for system updates...
[2026-10-25 12:44:35,415.415 INFO    ] 200
[2026-10-25 12:44:35,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:35,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:35,473.473 INFO    ] No update needed
[2026-10-25 12:44:35,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 12:44:35,509.509 INFO    ] 200
[2026-10-25 12:44:35,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:35,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:44:35,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:35,616.616 INFO    ] No camera update needed
[2026-10-25 12:44:35,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:44:35,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:44:35,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:44:35,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:44:37,671.671 INFO    ] ================================================
[2026-10-25 12:44:37,685.685 INFO    ] Launching Daemon at Sun Oct 25 12:44:37 IST 2026
[2026-10-25 12:44:37,696.696 INFO    ] ================================================
[2026-10-25 12:44:38,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:44:38
[2026-10-25 12:44:38,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:44:39,107.107 INFO    ] Initializing speech engine...
[2026-10-25 12:44:39,116.116 INFO    ] 2026-10-25 12:44:39
[2026-10-25 12:44:39,405.405 INFO    ] 2026-10-25 12:44:39
[2026-10-25 12:44:39,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:44:39,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:44:39,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:44:39,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:44:39,859.859 INFO    ] time= 25/10/2026 12:44:39
[2026-10-25 12:44:39,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:44:39,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:44:40,025.025 INFO    ] No existing commands found in stream
[2026-10-25 12:44:45,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:45,038.038 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 12:44:48,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:44:48,669.669 INFO    ] Checking for system updates...
[2026-10-25 12:44:48,704.704 INFO    ] 200
[2026-10-25 12:44:48,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:48,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:48,764.764 INFO    ] No update needed
[2026-10-25 12:44:48,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 12:44:48,801.801 INFO    ] 200
[2026-10-25 12:44:48,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:44:48,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:44:48,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:44:48,904.904 INFO    ] No camera update needed
[2026-10-25 12:44:48,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:44:48,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:44:48,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:44:48,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:44:50,959.959 INFO    ] ================================================
[2026-10-25 12:44:50,974.974 INFO    ] Launching Daemon at Sun Oct 25 12:44:50 IST 2026
[2026-10-25 12:44:50,985.985 INFO    ] ================================================
[2026-10-25 12:44:51,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:44:51
[2026-10-25 12:44:52,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:44:52,405.405 INFO    ] Initializing speech engine...
[2026-10-25 12:44:52,411.411 INFO    ] 2026-10-25 12:44:52
[2026-10-25 12:44:52,657.657 INFO    ] 2026-10-25 12:44:52
[2026-10-25 12:44:52,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:44:53,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:44:53,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:44:54,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:44:54,149.149 INFO    ] time= 25/10/2026 12:44:54
[2026-10-25 12:44:54,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:44:54,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:44:54,268.268 INFO    ] No existing commands found in stream
[2026-10-25 12:44:59,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:44:59,296.296 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 12:45:00,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:45:00,401.401 INFO    ] Checking for system updates...
[2026-10-25 12:45:00,439.439 INFO    ] 200
[2026-10-25 12:45:00,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:00,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:00,500.500 INFO    ] No update needed
[2026-10-25 12:45:00,503.503 INFO    ] Checking for camera pi updates...
[2026-10-25 12:45:00,538.538 INFO    ] 200
[2026-10-25 12:45:00,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:00,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:45:00,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:00,636.636 INFO    ] No camera update needed
[2026-10-25 12:45:00,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:45:00,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:45:00,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:45:00,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:45:02,713.713 INFO    ] ================================================
[2026-10-25 12:45:02,734.734 INFO    ] Launching Daemon at Sun Oct 25 12:45:02 IST 2026
[2026-10-25 12:45:02,752.752 INFO    ] ================================================
[2026-10-25 12:45:03,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:45:03
[2026-10-25 12:45:04,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:45:04,327.327 INFO    ] Initializing speech engine...
[2026-10-25 12:45:04,346.346 INFO    ] 2026-10-25 12:45:04
[2026-10-25 12:45:04,592.592 INFO    ] 2026-10-25 12:45:04
[2026-10-25 12:45:04,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:45:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:45:04,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:45:04,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:45:04,973.973 INFO    ] time= 25/10/2026 12:45:04
[2026-10-25 12:45:04,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:45:05,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:45:05,145.145 INFO    ] No existing commands found in stream
[2026-10-25 12:45:10,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:45:10,178.178 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 12:45:15,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:45:15,349.349 INFO    ] Checking for system updates...
[2026-10-25 12:45:15,386.386 INFO    ] 200
[2026-10-25 12:45:15,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:15,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:15,454.454 INFO    ] No update needed
[2026-10-25 12:45:15,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 12:45:15,493.493 INFO    ] 200
[2026-10-25 12:45:15,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:15,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:45:15,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:15,599.599 INFO    ] No camera update needed
[2026-10-25 12:45:15,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:45:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:45:15,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:45:15,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:45:17,661.661 INFO    ] ================================================
[2026-10-25 12:45:17,677.677 INFO    ] Launching Daemon at Sun Oct 25 12:45:17 IST 2026
[2026-10-25 12:45:17,689.689 INFO    ] ================================================
[2026-10-25 12:45:18,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:45:18
[2026-10-25 12:45:18,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:45:19,106.106 INFO    ] Initializing speech engine...
[2026-10-25 12:45:19,120.120 INFO    ] 2026-10-25 12:45:19
[2026-10-25 12:45:19,427.427 INFO    ] 2026-10-25 12:45:19
[2026-10-25 12:45:19,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:45:19,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:45:19,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:45:19,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:45:19,784.784 INFO    ] time= 25/10/2026 12:45:19
[2026-10-25 12:45:19,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:45:19,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:45:19,861.861 INFO    ] No existing commands found in stream
[2026-10-25 12:45:24,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:45:24,878.878 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 12:45:30,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:45:30,073.073 INFO    ] Checking for system updates...
[2026-10-25 12:45:30,112.112 INFO    ] 200
[2026-10-25 12:45:30,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:30,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:45:30,171.171 INFO    ] No update needed
[2026-10-25 12:45:30,178.178 INFO    ] Checking for camera pi updates...
[2026-10-25 12:45:30,218.218 INFO    ] 200
[2026-10-25 12:45:30,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:30,280.280 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:45:30,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:45:30,333.333 INFO    ] No camera update needed
[2026-10-25 12:45:30,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:45:30,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:45:30,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:45:30,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:45:32,396.396 INFO    ] ================================================
[2026-10-25 12:45:32,412.412 INFO    ] Launching Daemon at Sun Oct 25 12:45:32 IST 2026
[2026-10-25 12:45:32,424.424 INFO    ] ================================================
[2026-10-25 12:45:33,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:45:33
[2026-10-25 12:45:33,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:45:34,125.125 INFO    ] Initializing speech engine...
[2026-10-25 12:45:34,133.133 INFO    ] 2026-10-25 12:45:34
[2026-10-25 12:45:34,417.417 INFO    ] 2026-10-25 12:45:34
[2026-10-25 12:45:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:45:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:45:34,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:45:34,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:45:34,873.873 INFO    ] time= 25/10/2026 12:45:34
[2026-10-25 12:45:34,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:45:34,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:45:35,015.015 INFO    ] No existing commands found in stream
[2026-10-25 12:45:40,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:45:40,032.032 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 12:45:43,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:45:43,839.839 INFO    ] Checking for system updates...
[2026-10-25 12:45:43,876.876 INFO    ] 200
[2026-10-25 12:45:43,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:43,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:45:43,937.937 INFO    ] No update needed
[2026-10-25 12:45:43,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 12:45:43,975.975 INFO    ] 200
[2026-10-25 12:45:43,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:44,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:45:44,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:45:44,079.079 INFO    ] No camera update needed
[2026-10-25 12:45:44,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:45:44,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:45:44,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:45:44,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:45:46,137.137 INFO    ] ================================================
[2026-10-25 12:45:46,152.152 INFO    ] Launching Daemon at Sun Oct 25 12:45:46 IST 2026
[2026-10-25 12:45:46,163.163 INFO    ] ================================================
[2026-10-25 12:45:46,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:45:46
[2026-10-25 12:45:47,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:45:47,585.585 INFO    ] Initializing speech engine...
[2026-10-25 12:45:47,594.594 INFO    ] 2026-10-25 12:45:47
[2026-10-25 12:45:47,838.838 INFO    ] 2026-10-25 12:45:47
[2026-10-25 12:45:47,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:45:48,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:45:48,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:45:48,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:45:48,207.207 INFO    ] time= 25/10/2026 12:45:48
[2026-10-25 12:45:48,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:45:48,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:45:48,375.375 INFO    ] No existing commands found in stream
[2026-10-25 12:45:53,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:45:53,407.407 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 12:45:56,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:45:56,360.360 INFO    ] Checking for system updates...
[2026-10-25 12:45:56,396.396 INFO    ] 200
[2026-10-25 12:45:56,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:56,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:56,455.455 INFO    ] No update needed
[2026-10-25 12:45:56,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 12:45:56,492.492 INFO    ] 200
[2026-10-25 12:45:56,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:45:56,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:45:56,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:45:56,595.595 INFO    ] No camera update needed
[2026-10-25 12:45:56,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:45:56,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:45:56,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:45:56,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:45:58,651.651 INFO    ] ================================================
[2026-10-25 12:45:58,667.667 INFO    ] Launching Daemon at Sun Oct 25 12:45:58 IST 2026
[2026-10-25 12:45:58,678.678 INFO    ] ================================================
[2026-10-25 12:45:59,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:45:59
[2026-10-25 12:45:59,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:46:00,095.095 INFO    ] Initializing speech engine...
[2026-10-25 12:46:00,111.111 INFO    ] 2026-10-25 12:46:00
[2026-10-25 12:46:00,365.365 INFO    ] 2026-10-25 12:46:00
[2026-10-25 12:46:00,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:46:00,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:46:00,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:46:00,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:46:00,842.842 INFO    ] time= 25/10/2026 12:46:00
[2026-10-25 12:46:00,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:46:00,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:46:00,985.985 INFO    ] No existing commands found in stream
[2026-10-25 12:46:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:46:06,000.000 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 12:46:09,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:46:09,853.853 INFO    ] Checking for system updates...
[2026-10-25 12:46:09,890.890 INFO    ] 200
[2026-10-25 12:46:09,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:09,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:09,951.951 INFO    ] No update needed
[2026-10-25 12:46:09,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 12:46:09,989.989 INFO    ] 200
[2026-10-25 12:46:09,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:10,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:46:10,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:10,199.199 INFO    ] No camera update needed
[2026-10-25 12:46:10,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:46:10,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:46:10,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:46:10,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:46:12,257.257 INFO    ] ================================================
[2026-10-25 12:46:12,273.273 INFO    ] Launching Daemon at Sun Oct 25 12:46:12 IST 2026
[2026-10-25 12:46:12,284.284 INFO    ] ================================================
[2026-10-25 12:46:12,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:46:12
[2026-10-25 12:46:13,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:46:13,696.696 INFO    ] Initializing speech engine...
[2026-10-25 12:46:13,719.719 INFO    ] 2026-10-25 12:46:13
[2026-10-25 12:46:13,994.994 INFO    ] 2026-10-25 12:46:13
[2026-10-25 12:46:14,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:46:14,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:46:14,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:46:14,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:46:14,411.411 INFO    ] time= 25/10/2026 12:46:14
[2026-10-25 12:46:14,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:46:14,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:46:14,499.499 INFO    ] No existing commands found in stream
[2026-10-25 12:46:19,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:46:19,513.513 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 12:46:21,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:46:21,862.862 INFO    ] Checking for system updates...
[2026-10-25 12:46:21,898.898 INFO    ] 200
[2026-10-25 12:46:21,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:21,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:21,957.957 INFO    ] No update needed
[2026-10-25 12:46:21,960.960 INFO    ] Checking for camera pi updates...
[2026-10-25 12:46:22,014.014 INFO    ] 200
[2026-10-25 12:46:22,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:22,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:46:22,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:22,108.108 INFO    ] No camera update needed
[2026-10-25 12:46:22,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:46:22,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:46:22,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:46:22,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:46:24,164.164 INFO    ] ================================================
[2026-10-25 12:46:24,179.179 INFO    ] Launching Daemon at Sun Oct 25 12:46:24 IST 2026
[2026-10-25 12:46:24,190.190 INFO    ] ================================================
[2026-10-25 12:46:24,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:46:24
[2026-10-25 12:46:25,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:46:25,619.619 INFO    ] Initializing speech engine...
[2026-10-25 12:46:25,628.628 INFO    ] 2026-10-25 12:46:25
[2026-10-25 12:46:25,923.923 INFO    ] 2026-10-25 12:46:25
[2026-10-25 12:46:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:46:26,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:46:26,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:46:27,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:46:27,200.200 INFO    ] time= 25/10/2026 12:46:27
[2026-10-25 12:46:27,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:46:27,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:46:27,280.280 INFO    ] No existing commands found in stream
[2026-10-25 12:46:32,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:46:32,293.293 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 12:46:32,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:46:32,830.830 INFO    ] Checking for system updates...
[2026-10-25 12:46:32,866.866 INFO    ] 200
[2026-10-25 12:46:32,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:32,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:32,924.924 INFO    ] No update needed
[2026-10-25 12:46:32,927.927 INFO    ] Checking for camera pi updates...
[2026-10-25 12:46:32,962.962 INFO    ] 200
[2026-10-25 12:46:32,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:33,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:46:33,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:46:33,053.053 INFO    ] No camera update needed
[2026-10-25 12:46:33,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:46:33,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:46:33,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:46:33,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:46:35,108.108 INFO    ] ================================================
[2026-10-25 12:46:35,123.123 INFO    ] Launching Daemon at Sun Oct 25 12:46:35 IST 2026
[2026-10-25 12:46:35,134.134 INFO    ] ================================================
[2026-10-25 12:46:35,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:46:35
[2026-10-25 12:46:36,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:46:36,558.558 INFO    ] Initializing speech engine...
[2026-10-25 12:46:36,568.568 INFO    ] 2026-10-25 12:46:36
[2026-10-25 12:46:36,819.819 INFO    ] 2026-10-25 12:46:36
[2026-10-25 12:46:36,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:46:37,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:46:37,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:46:37,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:46:37,275.275 INFO    ] time= 25/10/2026 12:46:37
[2026-10-25 12:46:37,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:46:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:46:37,430.430 INFO    ] No existing commands found in stream
[2026-10-25 12:46:42,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:46:42,445.445 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 12:46:45,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:46:45,329.329 INFO    ] Checking for system updates...
[2026-10-25 12:46:45,364.364 INFO    ] 200
[2026-10-25 12:46:45,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:45,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:46:45,423.423 INFO    ] No update needed
[2026-10-25 12:46:45,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 12:46:45,459.459 INFO    ] 200
[2026-10-25 12:46:45,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:45,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:46:45,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:46:45,554.554 INFO    ] No camera update needed
[2026-10-25 12:46:45,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:46:45,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:46:45,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:46:45,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:46:47,610.610 INFO    ] ================================================
[2026-10-25 12:46:47,625.625 INFO    ] Launching Daemon at Sun Oct 25 12:46:47 IST 2026
[2026-10-25 12:46:47,635.635 INFO    ] ================================================
[2026-10-25 12:46:48,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:46:48
[2026-10-25 12:46:48,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:46:49,061.061 INFO    ] Initializing speech engine...
[2026-10-25 12:46:49,069.069 INFO    ] 2026-10-25 12:46:49
[2026-10-25 12:46:49,325.325 INFO    ] 2026-10-25 12:46:49
[2026-10-25 12:46:49,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:46:49,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:46:49,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:46:49,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:46:49,707.707 INFO    ] time= 25/10/2026 12:46:49
[2026-10-25 12:46:49,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:46:49,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:46:49,837.837 INFO    ] No existing commands found in stream
[2026-10-25 12:46:54,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:46:54,852.852 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 12:46:57,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:46:57,738.738 INFO    ] Checking for system updates...
[2026-10-25 12:46:57,775.775 INFO    ] 200
[2026-10-25 12:46:57,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:57,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:46:57,837.837 INFO    ] No update needed
[2026-10-25 12:46:57,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 12:46:57,873.873 INFO    ] 200
[2026-10-25 12:46:57,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:46:57,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:46:57,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:46:57,961.961 INFO    ] No camera update needed
[2026-10-25 12:46:57,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:46:57,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:46:57,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:46:57,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:47:00,017.017 INFO    ] ================================================
[2026-10-25 12:47:00,033.033 INFO    ] Launching Daemon at Sun Oct 25 12:47:00 IST 2026
[2026-10-25 12:47:00,043.043 INFO    ] ================================================
[2026-10-25 12:47:00,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:47:00
[2026-10-25 12:47:01,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:47:01,554.554 INFO    ] Initializing speech engine...
[2026-10-25 12:47:01,558.558 INFO    ] 2026-10-25 12:47:01
[2026-10-25 12:47:01,943.943 INFO    ] 2026-10-25 12:47:01
[2026-10-25 12:47:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:47:02,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:47:02,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:47:02,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:47:02,512.512 INFO    ] time= 25/10/2026 12:47:02
[2026-10-25 12:47:02,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:47:02,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:47:02,694.694 INFO    ] No existing commands found in stream
[2026-10-25 12:47:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:47:07,719.719 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 12:47:11,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:47:11,621.621 INFO    ] Checking for system updates...
[2026-10-25 12:47:11,658.658 INFO    ] 200
[2026-10-25 12:47:11,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:11,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:11,725.725 INFO    ] No update needed
[2026-10-25 12:47:11,727.727 INFO    ] Checking for camera pi updates...
[2026-10-25 12:47:11,764.764 INFO    ] 200
[2026-10-25 12:47:11,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:11,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:47:11,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:11,854.854 INFO    ] No camera update needed
[2026-10-25 12:47:11,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:47:11,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:47:11,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:47:11,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:47:13,910.910 INFO    ] ================================================
[2026-10-25 12:47:13,925.925 INFO    ] Launching Daemon at Sun Oct 25 12:47:13 IST 2026
[2026-10-25 12:47:13,936.936 INFO    ] ================================================
[2026-10-25 12:47:14,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:47:14
[2026-10-25 12:47:15,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:47:15,381.381 INFO    ] Initializing speech engine...
[2026-10-25 12:47:15,405.405 INFO    ] 2026-10-25 12:47:15
[2026-10-25 12:47:15,679.679 INFO    ] 2026-10-25 12:47:15
[2026-10-25 12:47:15,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:47:15,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:47:15,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:47:16,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:47:16,098.098 INFO    ] time= 25/10/2026 12:47:16
[2026-10-25 12:47:16,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:47:16,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:47:16,183.183 INFO    ] No existing commands found in stream
[2026-10-25 12:47:21,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:47:21,198.198 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 12:47:24,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:47:24,116.116 INFO    ] Checking for system updates...
[2026-10-25 12:47:24,157.157 INFO    ] 200
[2026-10-25 12:47:24,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:24,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:24,215.215 INFO    ] No update needed
[2026-10-25 12:47:24,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 12:47:24,252.252 INFO    ] 200
[2026-10-25 12:47:24,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:24,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:47:24,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:24,348.348 INFO    ] No camera update needed
[2026-10-25 12:47:24,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:47:24,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:47:24,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:47:24,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:47:26,404.404 INFO    ] ================================================
[2026-10-25 12:47:26,418.418 INFO    ] Launching Daemon at Sun Oct 25 12:47:26 IST 2026
[2026-10-25 12:47:26,429.429 INFO    ] ================================================
[2026-10-25 12:47:26,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:47:26
[2026-10-25 12:47:27,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:47:27,842.842 INFO    ] Initializing speech engine...
[2026-10-25 12:47:27,855.855 INFO    ] 2026-10-25 12:47:27
[2026-10-25 12:47:28,133.133 INFO    ] 2026-10-25 12:47:28
[2026-10-25 12:47:28,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:47:28,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:47:28,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:47:28,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:47:28,936.936 INFO    ] time= 25/10/2026 12:47:28
[2026-10-25 12:47:28,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:47:29,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:47:29,129.129 INFO    ] No existing commands found in stream
[2026-10-25 12:47:34,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:47:34,162.162 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 12:47:36,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:47:36,123.123 INFO    ] Checking for system updates...
[2026-10-25 12:47:36,161.161 INFO    ] 200
[2026-10-25 12:47:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:36,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:47:36,219.219 INFO    ] No update needed
[2026-10-25 12:47:36,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 12:47:36,255.255 INFO    ] 200
[2026-10-25 12:47:36,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:36,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:47:36,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:47:36,351.351 INFO    ] No camera update needed
[2026-10-25 12:47:36,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:47:36,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:47:36,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:47:36,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:47:38,405.405 INFO    ] ================================================
[2026-10-25 12:47:38,421.421 INFO    ] Launching Daemon at Sun Oct 25 12:47:38 IST 2026
[2026-10-25 12:47:38,431.431 INFO    ] ================================================
[2026-10-25 12:47:39,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:47:39
[2026-10-25 12:47:39,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:47:40,024.024 INFO    ] Initializing speech engine...
[2026-10-25 12:47:40,032.032 INFO    ] 2026-10-25 12:47:40
[2026-10-25 12:47:40,316.316 INFO    ] 2026-10-25 12:47:40
[2026-10-25 12:47:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:47:40,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:47:40,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:47:40,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:47:40,848.848 INFO    ] time= 25/10/2026 12:47:40
[2026-10-25 12:47:40,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:47:40,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:47:40,989.989 INFO    ] No existing commands found in stream
[2026-10-25 12:47:46,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:47:46,017.017 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 12:47:49,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:47:49,869.869 INFO    ] Checking for system updates...
[2026-10-25 12:47:49,907.907 INFO    ] 200
[2026-10-25 12:47:49,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:49,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:49,966.966 INFO    ] No update needed
[2026-10-25 12:47:49,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 12:47:50,006.006 INFO    ] 200
[2026-10-25 12:47:50,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:47:50,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:47:50,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:47:50,115.115 INFO    ] No camera update needed
[2026-10-25 12:47:50,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:47:50,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:47:50,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:47:50,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:47:52,172.172 INFO    ] ================================================
[2026-10-25 12:47:52,187.187 INFO    ] Launching Daemon at Sun Oct 25 12:47:52 IST 2026
[2026-10-25 12:47:52,198.198 INFO    ] ================================================
[2026-10-25 12:47:52,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:47:52
[2026-10-25 12:47:53,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:47:53,698.698 INFO    ] Initializing speech engine...
[2026-10-25 12:47:53,705.705 INFO    ] 2026-10-25 12:47:53
[2026-10-25 12:47:53,989.989 INFO    ] 2026-10-25 12:47:53
[2026-10-25 12:47:54,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:47:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:47:54,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:47:54,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:47:54,433.433 INFO    ] time= 25/10/2026 12:47:54
[2026-10-25 12:47:54,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:47:54,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:47:54,603.603 INFO    ] No existing commands found in stream
[2026-10-25 12:47:59,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:47:59,618.618 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 12:48:01,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:48:01,586.586 INFO    ] Checking for system updates...
[2026-10-25 12:48:01,627.627 INFO    ] 200
[2026-10-25 12:48:01,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:01,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:01,776.776 INFO    ] No update needed
[2026-10-25 12:48:01,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 12:48:01,841.841 INFO    ] 200
[2026-10-25 12:48:01,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:01,932.932 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:48:01,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:01,979.979 INFO    ] No camera update needed
[2026-10-25 12:48:01,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:48:01,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:48:01,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:48:02,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:48:04,046.046 INFO    ] ================================================
[2026-10-25 12:48:04,061.061 INFO    ] Launching Daemon at Sun Oct 25 12:48:04 IST 2026
[2026-10-25 12:48:04,072.072 INFO    ] ================================================
[2026-10-25 12:48:04,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:48:04
[2026-10-25 12:48:05,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:48:05,511.511 INFO    ] Initializing speech engine...
[2026-10-25 12:48:05,535.535 INFO    ] 2026-10-25 12:48:05
[2026-10-25 12:48:05,803.803 INFO    ] 2026-10-25 12:48:05
[2026-10-25 12:48:05,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:48:06,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:48:06,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:48:06,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:48:06,184.184 INFO    ] time= 25/10/2026 12:48:06
[2026-10-25 12:48:06,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:48:06,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:48:06,365.365 INFO    ] No existing commands found in stream
[2026-10-25 12:48:11,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:48:11,413.413 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 12:48:14,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:48:14,182.182 INFO    ] Checking for system updates...
[2026-10-25 12:48:14,219.219 INFO    ] 200
[2026-10-25 12:48:14,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:14,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:48:14,278.278 INFO    ] No update needed
[2026-10-25 12:48:14,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 12:48:14,315.315 INFO    ] 200
[2026-10-25 12:48:14,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:14,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:48:14,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:48:14,519.519 INFO    ] No camera update needed
[2026-10-25 12:48:14,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:48:14,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:48:14,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:48:14,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:48:16,575.575 INFO    ] ================================================
[2026-10-25 12:48:16,591.591 INFO    ] Launching Daemon at Sun Oct 25 12:48:16 IST 2026
[2026-10-25 12:48:16,602.602 INFO    ] ================================================
[2026-10-25 12:48:17,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:48:17
[2026-10-25 12:48:17,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:48:18,038.038 INFO    ] Initializing speech engine...
[2026-10-25 12:48:18,045.045 INFO    ] 2026-10-25 12:48:18
[2026-10-25 12:48:18,342.342 INFO    ] 2026-10-25 12:48:18
[2026-10-25 12:48:18,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:48:18,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:48:18,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:48:18,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:48:18,698.698 INFO    ] time= 25/10/2026 12:48:18
[2026-10-25 12:48:18,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:48:18,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:48:18,779.779 INFO    ] No existing commands found in stream
[2026-10-25 12:48:23,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:48:23,794.794 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 12:48:30,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:48:30,879.879 INFO    ] Checking for system updates...
[2026-10-25 12:48:30,915.915 INFO    ] 200
[2026-10-25 12:48:30,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:30,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:30,985.985 INFO    ] No update needed
[2026-10-25 12:48:30,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 12:48:31,030.030 INFO    ] 200
[2026-10-25 12:48:31,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:31,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:48:31,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:31,146.146 INFO    ] No camera update needed
[2026-10-25 12:48:31,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:48:31,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:48:31,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:48:31,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:48:33,201.201 INFO    ] ================================================
[2026-10-25 12:48:33,217.217 INFO    ] Launching Daemon at Sun Oct 25 12:48:33 IST 2026
[2026-10-25 12:48:33,229.229 INFO    ] ================================================
[2026-10-25 12:48:33,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:48:33
[2026-10-25 12:48:34,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:48:34,633.633 INFO    ] Initializing speech engine...
[2026-10-25 12:48:34,641.641 INFO    ] 2026-10-25 12:48:34
[2026-10-25 12:48:34,933.933 INFO    ] 2026-10-25 12:48:34
[2026-10-25 12:48:34,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:48:35,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:48:35,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:48:36,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:48:36,057.057 INFO    ] time= 25/10/2026 12:48:36
[2026-10-25 12:48:36,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:48:36,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:48:36,172.172 INFO    ] No existing commands found in stream
[2026-10-25 12:48:41,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:48:41,200.200 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 12:48:43,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:48:43,295.295 INFO    ] Checking for system updates...
[2026-10-25 12:48:43,331.331 INFO    ] 200
[2026-10-25 12:48:43,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:43,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:43,400.400 INFO    ] No update needed
[2026-10-25 12:48:43,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 12:48:43,438.438 INFO    ] 200
[2026-10-25 12:48:43,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:43,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:48:43,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:48:43,532.532 INFO    ] No camera update needed
[2026-10-25 12:48:43,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:48:43,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:48:43,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:48:43,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:48:45,587.587 INFO    ] ================================================
[2026-10-25 12:48:45,603.603 INFO    ] Launching Daemon at Sun Oct 25 12:48:45 IST 2026
[2026-10-25 12:48:45,615.615 INFO    ] ================================================
[2026-10-25 12:48:46,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:48:46
[2026-10-25 12:48:46,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:48:47,251.251 INFO    ] Initializing speech engine...
[2026-10-25 12:48:47,260.260 INFO    ] 2026-10-25 12:48:47
[2026-10-25 12:48:47,538.538 INFO    ] 2026-10-25 12:48:47
[2026-10-25 12:48:47,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:48:47,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:48:47,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:48:47,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:48:48,007.007 INFO    ] time= 25/10/2026 12:48:47
[2026-10-25 12:48:48,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:48:48,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:48:48,170.170 INFO    ] No existing commands found in stream
[2026-10-25 12:48:53,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:48:53,187.187 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 12:48:53,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:48:53,721.721 INFO    ] Checking for system updates...
[2026-10-25 12:48:53,758.758 INFO    ] 200
[2026-10-25 12:48:53,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:53,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:48:53,818.818 INFO    ] No update needed
[2026-10-25 12:48:53,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 12:48:53,859.859 INFO    ] 200
[2026-10-25 12:48:53,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:48:53,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:48:53,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:48:53,952.952 INFO    ] No camera update needed
[2026-10-25 12:48:53,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:48:53,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:48:53,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:48:53,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:48:56,013.013 INFO    ] ================================================
[2026-10-25 12:48:56,029.029 INFO    ] Launching Daemon at Sun Oct 25 12:48:56 IST 2026
[2026-10-25 12:48:56,041.041 INFO    ] ================================================
[2026-10-25 12:48:56,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:48:56
[2026-10-25 12:48:57,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:48:57,459.459 INFO    ] Initializing speech engine...
[2026-10-25 12:48:57,478.478 INFO    ] 2026-10-25 12:48:57
[2026-10-25 12:48:57,729.729 INFO    ] 2026-10-25 12:48:57
[2026-10-25 12:48:57,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:49:01,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:49:01,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:49:01,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:49:01,855.855 INFO    ] time= 25/10/2026 12:49:01
[2026-10-25 12:49:01,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:49:01,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:49:01,915.915 INFO    ] No existing commands found in stream
[2026-10-25 12:49:06,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:49:06,928.928 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 12:49:08,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:49:08,370.370 INFO    ] Checking for system updates...
[2026-10-25 12:49:08,408.408 INFO    ] 200
[2026-10-25 12:49:08,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:08,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:08,478.478 INFO    ] No update needed
[2026-10-25 12:49:08,481.481 INFO    ] Checking for camera pi updates...
[2026-10-25 12:49:08,517.517 INFO    ] 200
[2026-10-25 12:49:08,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:08,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:49:08,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:08,628.628 INFO    ] No camera update needed
[2026-10-25 12:49:08,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:49:08,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:49:08,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:49:08,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:49:10,689.689 INFO    ] ================================================
[2026-10-25 12:49:10,705.705 INFO    ] Launching Daemon at Sun Oct 25 12:49:10 IST 2026
[2026-10-25 12:49:10,717.717 INFO    ] ================================================
[2026-10-25 12:49:11,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:49:11
[2026-10-25 12:49:12,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:49:12,399.399 INFO    ] Initializing speech engine...
[2026-10-25 12:49:12,413.413 INFO    ] 2026-10-25 12:49:12
[2026-10-25 12:49:12,726.726 INFO    ] 2026-10-25 12:49:12
[2026-10-25 12:49:12,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:49:13,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:49:13,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:49:13,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:49:13,244.244 INFO    ] time= 25/10/2026 12:49:13
[2026-10-25 12:49:13,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:49:13,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:49:13,406.406 INFO    ] No existing commands found in stream
[2026-10-25 12:49:18,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:49:18,430.430 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 12:49:22,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:49:22,721.721 INFO    ] Checking for system updates...
[2026-10-25 12:49:22,764.764 INFO    ] 200
[2026-10-25 12:49:22,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:22,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:49:22,831.831 INFO    ] No update needed
[2026-10-25 12:49:22,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 12:49:22,883.883 INFO    ] 200
[2026-10-25 12:49:22,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:22,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:49:22,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:49:22,984.984 INFO    ] No camera update needed
[2026-10-25 12:49:22,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:49:22,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:49:22,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:49:23,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:49:25,045.045 INFO    ] ================================================
[2026-10-25 12:49:25,060.060 INFO    ] Launching Daemon at Sun Oct 25 12:49:25 IST 2026
[2026-10-25 12:49:25,072.072 INFO    ] ================================================
[2026-10-25 12:49:25,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:49:25
[2026-10-25 12:49:26,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:49:26,546.546 INFO    ] Initializing speech engine...
[2026-10-25 12:49:26,555.555 INFO    ] 2026-10-25 12:49:26
[2026-10-25 12:49:26,801.801 INFO    ] 2026-10-25 12:49:26
[2026-10-25 12:49:26,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:49:27,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:49:27,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:49:27,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:49:27,171.171 INFO    ] time= 25/10/2026 12:49:27
[2026-10-25 12:49:27,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:49:27,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:49:27,351.351 INFO    ] No existing commands found in stream
[2026-10-25 12:49:32,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:49:32,382.382 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 12:49:34,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:49:34,824.824 INFO    ] Checking for system updates...
[2026-10-25 12:49:34,863.863 INFO    ] 200
[2026-10-25 12:49:34,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:34,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:34,927.927 INFO    ] No update needed
[2026-10-25 12:49:34,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 12:49:34,969.969 INFO    ] 200
[2026-10-25 12:49:34,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:35,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:49:35,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:35,084.084 INFO    ] No camera update needed
[2026-10-25 12:49:35,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:49:35,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:49:35,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:49:35,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:49:37,142.142 INFO    ] ================================================
[2026-10-25 12:49:37,158.158 INFO    ] Launching Daemon at Sun Oct 25 12:49:37 IST 2026
[2026-10-25 12:49:37,169.169 INFO    ] ================================================
[2026-10-25 12:49:37,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:49:37
[2026-10-25 12:49:38,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:49:38,629.629 INFO    ] Initializing speech engine...
[2026-10-25 12:49:38,647.647 INFO    ] 2026-10-25 12:49:38
[2026-10-25 12:49:38,922.922 INFO    ] 2026-10-25 12:49:38
[2026-10-25 12:49:38,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:49:39,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:49:39,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:49:39,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:49:39,278.278 INFO    ] time= 25/10/2026 12:49:39
[2026-10-25 12:49:39,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:49:39,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:49:39,362.362 INFO    ] No existing commands found in stream
[2026-10-25 12:49:44,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:49:44,397.397 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 12:49:46,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:49:46,379.379 INFO    ] Checking for system updates...
[2026-10-25 12:49:46,415.415 INFO    ] 200
[2026-10-25 12:49:46,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:46,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:46,474.474 INFO    ] No update needed
[2026-10-25 12:49:46,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 12:49:46,514.514 INFO    ] 200
[2026-10-25 12:49:46,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:46,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:49:46,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:46,612.612 INFO    ] No camera update needed
[2026-10-25 12:49:46,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:49:46,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:49:46,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:49:46,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:49:48,666.666 INFO    ] ================================================
[2026-10-25 12:49:48,682.682 INFO    ] Launching Daemon at Sun Oct 25 12:49:48 IST 2026
[2026-10-25 12:49:48,693.693 INFO    ] ================================================
[2026-10-25 12:49:49,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:49:49
[2026-10-25 12:49:50,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:49:50,325.325 INFO    ] Initializing speech engine...
[2026-10-25 12:49:50,338.338 INFO    ] 2026-10-25 12:49:50
[2026-10-25 12:49:50,626.626 INFO    ] 2026-10-25 12:49:50
[2026-10-25 12:49:50,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:49:50,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:49:50,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:49:51,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:49:51,156.156 INFO    ] time= 25/10/2026 12:49:51
[2026-10-25 12:49:51,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:49:51,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:49:51,314.314 INFO    ] No existing commands found in stream
[2026-10-25 12:49:56,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:49:56,338.338 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 12:49:59,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:49:59,670.670 INFO    ] Checking for system updates...
[2026-10-25 12:49:59,711.711 INFO    ] 200
[2026-10-25 12:49:59,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:59,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:59,777.777 INFO    ] No update needed
[2026-10-25 12:49:59,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 12:49:59,813.813 INFO    ] 200
[2026-10-25 12:49:59,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:49:59,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:49:59,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:49:59,909.909 INFO    ] No camera update needed
[2026-10-25 12:49:59,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:49:59,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:49:59,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:49:59,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:50:02,029.029 INFO    ] ================================================
[2026-10-25 12:50:02,094.094 INFO    ] Launching Daemon at Sun Oct 25 12:50:02 IST 2026
[2026-10-25 12:50:02,184.184 INFO    ] ================================================
[2026-10-25 12:50:03,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:50:03
[2026-10-25 12:50:03,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:50:04,263.263 INFO    ] Initializing speech engine...
[2026-10-25 12:50:04,281.281 INFO    ] 2026-10-25 12:50:04
[2026-10-25 12:50:04,591.591 INFO    ] 2026-10-25 12:50:04
[2026-10-25 12:50:04,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:50:04,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:50:04,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:50:04,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:50:04,971.971 INFO    ] time= 25/10/2026 12:50:04
[2026-10-25 12:50:04,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:50:05,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:50:05,135.135 INFO    ] No existing commands found in stream
[2026-10-25 12:50:10,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:50:10,169.169 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 12:50:12,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:50:12,796.796 INFO    ] Checking for system updates...
[2026-10-25 12:50:12,839.839 INFO    ] 200
[2026-10-25 12:50:12,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:12,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:50:12,906.906 INFO    ] No update needed
[2026-10-25 12:50:12,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 12:50:12,947.947 INFO    ] 200
[2026-10-25 12:50:12,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:13,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:50:13,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:50:13,058.058 INFO    ] No camera update needed
[2026-10-25 12:50:13,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:50:13,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:50:13,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:50:13,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:50:15,115.115 INFO    ] ================================================
[2026-10-25 12:50:15,131.131 INFO    ] Launching Daemon at Sun Oct 25 12:50:15 IST 2026
[2026-10-25 12:50:15,142.142 INFO    ] ================================================
[2026-10-25 12:50:15,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:50:15
[2026-10-25 12:50:16,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:50:16,813.813 INFO    ] Initializing speech engine...
[2026-10-25 12:50:16,821.821 INFO    ] 2026-10-25 12:50:16
[2026-10-25 12:50:17,115.115 INFO    ] 2026-10-25 12:50:17
[2026-10-25 12:50:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:50:17,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:50:17,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:50:17,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:50:17,646.646 INFO    ] time= 25/10/2026 12:50:17
[2026-10-25 12:50:17,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:50:17,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:50:17,771.771 INFO    ] No existing commands found in stream
[2026-10-25 12:50:22,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:50:22,797.797 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 12:50:26,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:50:26,847.847 INFO    ] Checking for system updates...
[2026-10-25 12:50:26,885.885 INFO    ] 200
[2026-10-25 12:50:26,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:26,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:50:26,946.946 INFO    ] No update needed
[2026-10-25 12:50:26,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 12:50:26,989.989 INFO    ] 200
[2026-10-25 12:50:26,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:27,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:50:27,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:50:27,199.199 INFO    ] No camera update needed
[2026-10-25 12:50:27,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:50:27,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:50:27,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:50:27,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:50:29,255.255 INFO    ] ================================================
[2026-10-25 12:50:29,271.271 INFO    ] Launching Daemon at Sun Oct 25 12:50:29 IST 2026
[2026-10-25 12:50:29,282.282 INFO    ] ================================================
[2026-10-25 12:50:29,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:50:29
[2026-10-25 12:50:30,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:50:30,691.691 INFO    ] Initializing speech engine...
[2026-10-25 12:50:30,710.710 INFO    ] 2026-10-25 12:50:30
[2026-10-25 12:50:30,968.968 INFO    ] 2026-10-25 12:50:30
[2026-10-25 12:50:31,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:50:34,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:50:34,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:50:35,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:50:35,129.129 INFO    ] time= 25/10/2026 12:50:35
[2026-10-25 12:50:35,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:50:35,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:50:35,183.183 INFO    ] No existing commands found in stream
[2026-10-25 12:50:40,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:50:40,195.195 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 12:50:44,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:50:44,042.042 INFO    ] Checking for system updates...
[2026-10-25 12:50:44,082.082 INFO    ] 200
[2026-10-25 12:50:44,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:44,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:50:44,140.140 INFO    ] No update needed
[2026-10-25 12:50:44,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 12:50:44,180.180 INFO    ] 200
[2026-10-25 12:50:44,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:44,228.228 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:50:44,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:50:44,278.278 INFO    ] No camera update needed
[2026-10-25 12:50:44,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:50:44,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:50:44,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:50:44,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:50:46,340.340 INFO    ] ================================================
[2026-10-25 12:50:46,355.355 INFO    ] Launching Daemon at Sun Oct 25 12:50:46 IST 2026
[2026-10-25 12:50:46,366.366 INFO    ] ================================================
[2026-10-25 12:50:46,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:50:46
[2026-10-25 12:50:47,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:50:47,825.825 INFO    ] Initializing speech engine...
[2026-10-25 12:50:47,843.843 INFO    ] 2026-10-25 12:50:47
[2026-10-25 12:50:48,094.094 INFO    ] 2026-10-25 12:50:48
[2026-10-25 12:50:48,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:50:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:50:48,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:50:48,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:50:48,463.463 INFO    ] time= 25/10/2026 12:50:48
[2026-10-25 12:50:48,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:50:48,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:50:48,634.634 INFO    ] No existing commands found in stream
[2026-10-25 12:50:53,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:50:53,662.662 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 12:50:55,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:50:55,838.838 INFO    ] Checking for system updates...
[2026-10-25 12:50:55,874.874 INFO    ] 200
[2026-10-25 12:50:55,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:55,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:50:55,940.940 INFO    ] No update needed
[2026-10-25 12:50:55,943.943 INFO    ] Checking for camera pi updates...
[2026-10-25 12:50:55,978.978 INFO    ] 200
[2026-10-25 12:50:55,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:50:56,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:50:56,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:50:56,063.063 INFO    ] No camera update needed
[2026-10-25 12:50:56,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:50:56,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:50:56,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:50:56,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:50:58,121.121 INFO    ] ================================================
[2026-10-25 12:50:58,136.136 INFO    ] Launching Daemon at Sun Oct 25 12:50:58 IST 2026
[2026-10-25 12:50:58,147.147 INFO    ] ================================================
[2026-10-25 12:50:58,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:50:58
[2026-10-25 12:50:59,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:50:59,850.850 INFO    ] Initializing speech engine...
[2026-10-25 12:50:59,856.856 INFO    ] 2026-10-25 12:50:59
[2026-10-25 12:51:00,146.146 INFO    ] 2026-10-25 12:51:00
[2026-10-25 12:51:00,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:51:00,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:51:00,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:51:00,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:51:00,613.613 INFO    ] time= 25/10/2026 12:51:00
[2026-10-25 12:51:00,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:51:00,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:51:00,819.819 INFO    ] No existing commands found in stream
[2026-10-25 12:51:05,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:51:05,850.850 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 12:51:08,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:51:08,348.348 INFO    ] Checking for system updates...
[2026-10-25 12:51:08,397.397 INFO    ] 200
[2026-10-25 12:51:08,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:08,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:08,461.461 INFO    ] No update needed
[2026-10-25 12:51:08,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 12:51:08,500.500 INFO    ] 200
[2026-10-25 12:51:08,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:08,543.543 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:51:08,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:08,599.599 INFO    ] No camera update needed
[2026-10-25 12:51:08,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:51:08,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:51:08,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:51:08,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:51:10,653.653 INFO    ] ================================================
[2026-10-25 12:51:10,675.675 INFO    ] Launching Daemon at Sun Oct 25 12:51:10 IST 2026
[2026-10-25 12:51:10,686.686 INFO    ] ================================================
[2026-10-25 12:51:11,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:51:11
[2026-10-25 12:51:11,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:51:12,084.084 INFO    ] Initializing speech engine...
[2026-10-25 12:51:12,093.093 INFO    ] 2026-10-25 12:51:12
[2026-10-25 12:51:12,378.378 INFO    ] 2026-10-25 12:51:12
[2026-10-25 12:51:12,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:51:12,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:51:12,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:51:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:51:12,747.747 INFO    ] time= 25/10/2026 12:51:12
[2026-10-25 12:51:12,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:51:12,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:51:12,868.868 INFO    ] No existing commands found in stream
[2026-10-25 12:51:17,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:51:17,884.884 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 12:51:18,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:51:18,318.318 INFO    ] Checking for system updates...
[2026-10-25 12:51:18,357.357 INFO    ] 200
[2026-10-25 12:51:18,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:18,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:18,423.423 INFO    ] No update needed
[2026-10-25 12:51:18,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 12:51:18,466.466 INFO    ] 200
[2026-10-25 12:51:18,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:18,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:51:18,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:18,564.564 INFO    ] No camera update needed
[2026-10-25 12:51:18,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:51:18,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:51:18,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:51:18,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:51:20,619.619 INFO    ] ================================================
[2026-10-25 12:51:20,635.635 INFO    ] Launching Daemon at Sun Oct 25 12:51:20 IST 2026
[2026-10-25 12:51:20,647.647 INFO    ] ================================================
[2026-10-25 12:51:21,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:51:21
[2026-10-25 12:51:21,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:51:22,072.072 INFO    ] Initializing speech engine...
[2026-10-25 12:51:22,085.085 INFO    ] 2026-10-25 12:51:22
[2026-10-25 12:51:22,358.358 INFO    ] 2026-10-25 12:51:22
[2026-10-25 12:51:22,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:51:22,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:51:22,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:51:22,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:51:22,729.729 INFO    ] time= 25/10/2026 12:51:22
[2026-10-25 12:51:22,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:51:22,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:51:22,806.806 INFO    ] No existing commands found in stream
[2026-10-25 12:51:27,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:51:27,823.823 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 12:51:28,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:51:28,510.510 INFO    ] Checking for system updates...
[2026-10-25 12:51:28,549.549 INFO    ] 200
[2026-10-25 12:51:28,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:28,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:51:28,608.608 INFO    ] No update needed
[2026-10-25 12:51:28,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 12:51:28,647.647 INFO    ] 200
[2026-10-25 12:51:28,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:28,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:51:28,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:51:28,753.753 INFO    ] No camera update needed
[2026-10-25 12:51:28,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:51:28,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:51:28,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:51:28,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:51:30,807.807 INFO    ] ================================================
[2026-10-25 12:51:30,822.822 INFO    ] Launching Daemon at Sun Oct 25 12:51:30 IST 2026
[2026-10-25 12:51:30,833.833 INFO    ] ================================================
[2026-10-25 12:51:31,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:51:31
[2026-10-25 12:51:32,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:51:32,393.393 INFO    ] Initializing speech engine...
[2026-10-25 12:51:32,410.410 INFO    ] 2026-10-25 12:51:32
[2026-10-25 12:51:32,691.691 INFO    ] 2026-10-25 12:51:32
[2026-10-25 12:51:32,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:51:32,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:51:32,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:51:36,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:51:36,954.954 INFO    ] time= 25/10/2026 12:51:36
[2026-10-25 12:51:36,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:51:36,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:51:37,012.012 INFO    ] No existing commands found in stream
[2026-10-25 12:51:42,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:51:42,027.027 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 12:51:46,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:51:46,119.119 INFO    ] Checking for system updates...
[2026-10-25 12:51:46,162.162 INFO    ] 200
[2026-10-25 12:51:46,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:46,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:46,232.232 INFO    ] No update needed
[2026-10-25 12:51:46,235.235 INFO    ] Checking for camera pi updates...
[2026-10-25 12:51:46,269.269 INFO    ] 200
[2026-10-25 12:51:46,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:46,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:51:46,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:46,372.372 INFO    ] No camera update needed
[2026-10-25 12:51:46,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:51:46,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:51:46,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:51:46,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:51:48,428.428 INFO    ] ================================================
[2026-10-25 12:51:48,445.445 INFO    ] Launching Daemon at Sun Oct 25 12:51:48 IST 2026
[2026-10-25 12:51:48,456.456 INFO    ] ================================================
[2026-10-25 12:51:49,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:51:49
[2026-10-25 12:51:49,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:51:49,864.864 INFO    ] Initializing speech engine...
[2026-10-25 12:51:49,873.873 INFO    ] 2026-10-25 12:51:49
[2026-10-25 12:51:50,165.165 INFO    ] 2026-10-25 12:51:50
[2026-10-25 12:51:50,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:51:50,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:51:50,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:51:50,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:51:50,559.559 INFO    ] time= 25/10/2026 12:51:50
[2026-10-25 12:51:50,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:51:50,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:51:50,665.665 INFO    ] No existing commands found in stream
[2026-10-25 12:51:55,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:51:55,680.680 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 12:51:57,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:51:57,232.232 INFO    ] Checking for system updates...
[2026-10-25 12:51:57,272.272 INFO    ] 200
[2026-10-25 12:51:57,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:57,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:57,330.330 INFO    ] No update needed
[2026-10-25 12:51:57,333.333 INFO    ] Checking for camera pi updates...
[2026-10-25 12:51:57,370.370 INFO    ] 200
[2026-10-25 12:51:57,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:51:57,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:51:57,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:51:57,471.471 INFO    ] No camera update needed
[2026-10-25 12:51:57,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:51:57,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:51:57,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:51:57,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:51:59,526.526 INFO    ] ================================================
[2026-10-25 12:51:59,541.541 INFO    ] Launching Daemon at Sun Oct 25 12:51:59 IST 2026
[2026-10-25 12:51:59,552.552 INFO    ] ================================================
[2026-10-25 12:52:00,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:52:00
[2026-10-25 12:52:00,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:52:00,974.974 INFO    ] Initializing speech engine...
[2026-10-25 12:52:00,982.982 INFO    ] 2026-10-25 12:52:00
[2026-10-25 12:52:01,274.274 INFO    ] 2026-10-25 12:52:01
[2026-10-25 12:52:01,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:52:01,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:52:01,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:52:01,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:52:01,649.649 INFO    ] time= 25/10/2026 12:52:01
[2026-10-25 12:52:01,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:52:01,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:52:01,779.779 INFO    ] No existing commands found in stream
[2026-10-25 12:52:06,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:52:06,794.794 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 12:52:08,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:52:08,821.821 INFO    ] Checking for system updates...
[2026-10-25 12:52:08,860.860 INFO    ] 200
[2026-10-25 12:52:08,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:08,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:52:08,922.922 INFO    ] No update needed
[2026-10-25 12:52:08,925.925 INFO    ] Checking for camera pi updates...
[2026-10-25 12:52:08,959.959 INFO    ] 200
[2026-10-25 12:52:08,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:09,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:52:09,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:52:09,062.062 INFO    ] No camera update needed
[2026-10-25 12:52:09,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:52:09,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:52:09,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:52:09,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:52:11,117.117 INFO    ] ================================================
[2026-10-25 12:52:11,132.132 INFO    ] Launching Daemon at Sun Oct 25 12:52:11 IST 2026
[2026-10-25 12:52:11,154.154 INFO    ] ================================================
[2026-10-25 12:52:11,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:52:11
[2026-10-25 12:52:12,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:52:12,588.588 INFO    ] Initializing speech engine...
[2026-10-25 12:52:12,597.597 INFO    ] 2026-10-25 12:52:12
[2026-10-25 12:52:12,851.851 INFO    ] 2026-10-25 12:52:12
[2026-10-25 12:52:12,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:52:13,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:52:13,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:52:13,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:52:13,286.286 INFO    ] time= 25/10/2026 12:52:13
[2026-10-25 12:52:13,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:52:13,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:52:13,465.465 INFO    ] No existing commands found in stream
[2026-10-25 12:52:18,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:52:18,479.479 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 12:52:20,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:52:20,544.544 INFO    ] Checking for system updates...
[2026-10-25 12:52:20,583.583 INFO    ] 200
[2026-10-25 12:52:20,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:20,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:20,645.645 INFO    ] No update needed
[2026-10-25 12:52:20,647.647 INFO    ] Checking for camera pi updates...
[2026-10-25 12:52:20,683.683 INFO    ] 200
[2026-10-25 12:52:20,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:20,729.729 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:52:20,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:20,775.775 INFO    ] No camera update needed
[2026-10-25 12:52:20,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:52:20,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:52:20,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:52:20,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:52:22,830.830 INFO    ] ================================================
[2026-10-25 12:52:22,845.845 INFO    ] Launching Daemon at Sun Oct 25 12:52:22 IST 2026
[2026-10-25 12:52:22,858.858 INFO    ] ================================================
[2026-10-25 12:52:23,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:52:23
[2026-10-25 12:52:24,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:52:24,263.263 INFO    ] Initializing speech engine...
[2026-10-25 12:52:24,277.277 INFO    ] 2026-10-25 12:52:24
[2026-10-25 12:52:24,558.558 INFO    ] 2026-10-25 12:52:24
[2026-10-25 12:52:24,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:52:24,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:52:24,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:52:24,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:52:25,050.050 INFO    ] time= 25/10/2026 12:52:24
[2026-10-25 12:52:25,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:52:25,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:52:25,247.247 INFO    ] No existing commands found in stream
[2026-10-25 12:52:30,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:52:30,281.281 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 12:52:34,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:52:34,247.247 INFO    ] Checking for system updates...
[2026-10-25 12:52:34,286.286 INFO    ] 200
[2026-10-25 12:52:34,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:34,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:34,349.349 INFO    ] No update needed
[2026-10-25 12:52:34,352.352 INFO    ] Checking for camera pi updates...
[2026-10-25 12:52:34,386.386 INFO    ] 200
[2026-10-25 12:52:34,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:34,433.433 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:52:34,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:34,484.484 INFO    ] No camera update needed
[2026-10-25 12:52:34,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:52:34,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:52:34,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:52:34,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:52:36,541.541 INFO    ] ================================================
[2026-10-25 12:52:36,556.556 INFO    ] Launching Daemon at Sun Oct 25 12:52:36 IST 2026
[2026-10-25 12:52:36,567.567 INFO    ] ================================================
[2026-10-25 12:52:37,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:52:37
[2026-10-25 12:52:37,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:52:38,024.024 INFO    ] Initializing speech engine...
[2026-10-25 12:52:38,033.033 INFO    ] 2026-10-25 12:52:38
[2026-10-25 12:52:38,295.295 INFO    ] 2026-10-25 12:52:38
[2026-10-25 12:52:38,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:52:39,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:52:39,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:52:39,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:52:39,413.413 INFO    ] time= 25/10/2026 12:52:39
[2026-10-25 12:52:39,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:52:39,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:52:39,525.525 INFO    ] No existing commands found in stream
[2026-10-25 12:52:44,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:52:44,539.539 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 12:52:47,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:52:47,858.858 INFO    ] Checking for system updates...
[2026-10-25 12:52:47,897.897 INFO    ] 200
[2026-10-25 12:52:47,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:47,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:47,955.955 INFO    ] No update needed
[2026-10-25 12:52:47,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 12:52:47,991.991 INFO    ] 200
[2026-10-25 12:52:47,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:52:48,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:52:48,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:52:48,085.085 INFO    ] No camera update needed
[2026-10-25 12:52:48,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:52:48,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:52:48,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:52:48,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:52:50,142.142 INFO    ] ================================================
[2026-10-25 12:52:50,157.157 INFO    ] Launching Daemon at Sun Oct 25 12:52:50 IST 2026
[2026-10-25 12:52:50,168.168 INFO    ] ================================================
[2026-10-25 12:52:50,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:52:50
[2026-10-25 12:52:51,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:52:51,583.583 INFO    ] Initializing speech engine...
[2026-10-25 12:52:51,608.608 INFO    ] 2026-10-25 12:52:51
[2026-10-25 12:52:51,874.874 INFO    ] 2026-10-25 12:52:51
[2026-10-25 12:52:51,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:52:52,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:52:52,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:52:52,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:52:52,361.361 INFO    ] time= 25/10/2026 12:52:52
[2026-10-25 12:52:52,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:52:52,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:52:52,552.552 INFO    ] No existing commands found in stream
[2026-10-25 12:52:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:52:57,566.566 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 12:53:02,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:53:02,816.816 INFO    ] Checking for system updates...
[2026-10-25 12:53:02,860.860 INFO    ] 200
[2026-10-25 12:53:02,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:02,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:02,936.936 INFO    ] No update needed
[2026-10-25 12:53:02,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 12:53:02,977.977 INFO    ] 200
[2026-10-25 12:53:02,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:03,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:53:03,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:03,070.070 INFO    ] No camera update needed
[2026-10-25 12:53:03,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:53:03,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:53:03,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:53:03,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:53:05,129.129 INFO    ] ================================================
[2026-10-25 12:53:05,145.145 INFO    ] Launching Daemon at Sun Oct 25 12:53:05 IST 2026
[2026-10-25 12:53:05,156.156 INFO    ] ================================================
[2026-10-25 12:53:05,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:53:05
[2026-10-25 12:53:06,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:53:06,706.706 INFO    ] Initializing speech engine...
[2026-10-25 12:53:06,714.714 INFO    ] 2026-10-25 12:53:06
[2026-10-25 12:53:06,981.981 INFO    ] 2026-10-25 12:53:06
[2026-10-25 12:53:07,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:53:09,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:53:09,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:53:10,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:53:10,379.379 INFO    ] time= 25/10/2026 12:53:10
[2026-10-25 12:53:10,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:53:10,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:53:10,436.436 INFO    ] No existing commands found in stream
[2026-10-25 12:53:15,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:53:15,449.449 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 12:53:17,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:53:17,944.944 INFO    ] Checking for system updates...
[2026-10-25 12:53:17,983.983 INFO    ] 200
[2026-10-25 12:53:17,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:18,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:53:18,042.042 INFO    ] No update needed
[2026-10-25 12:53:18,045.045 INFO    ] Checking for camera pi updates...
[2026-10-25 12:53:18,079.079 INFO    ] 200
[2026-10-25 12:53:18,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:18,126.126 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:53:18,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:53:18,179.179 INFO    ] No camera update needed
[2026-10-25 12:53:18,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:53:18,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:53:18,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:53:18,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:53:20,237.237 INFO    ] ================================================
[2026-10-25 12:53:20,253.253 INFO    ] Launching Daemon at Sun Oct 25 12:53:20 IST 2026
[2026-10-25 12:53:20,264.264 INFO    ] ================================================
[2026-10-25 12:53:20,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:53:20
[2026-10-25 12:53:21,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:53:21,828.828 INFO    ] Initializing speech engine...
[2026-10-25 12:53:21,834.834 INFO    ] 2026-10-25 12:53:21
[2026-10-25 12:53:22,132.132 INFO    ] 2026-10-25 12:53:22
[2026-10-25 12:53:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:53:22,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:53:22,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:53:22,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:53:22,663.663 INFO    ] time= 25/10/2026 12:53:22
[2026-10-25 12:53:22,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:53:22,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:53:22,797.797 INFO    ] No existing commands found in stream
[2026-10-25 12:53:27,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:53:27,836.836 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 12:53:29,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:53:29,542.542 INFO    ] Checking for system updates...
[2026-10-25 12:53:29,578.578 INFO    ] 200
[2026-10-25 12:53:29,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:29,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:53:29,642.642 INFO    ] No update needed
[2026-10-25 12:53:29,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 12:53:29,678.678 INFO    ] 200
[2026-10-25 12:53:29,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:29,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:53:29,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:53:29,776.776 INFO    ] No camera update needed
[2026-10-25 12:53:29,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:53:29,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:53:29,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:53:29,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:53:31,834.834 INFO    ] ================================================
[2026-10-25 12:53:31,849.849 INFO    ] Launching Daemon at Sun Oct 25 12:53:31 IST 2026
[2026-10-25 12:53:31,860.860 INFO    ] ================================================
[2026-10-25 12:53:32,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:53:32
[2026-10-25 12:53:33,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:53:33,383.383 INFO    ] Initializing speech engine...
[2026-10-25 12:53:33,394.394 INFO    ] 2026-10-25 12:53:33
[2026-10-25 12:53:33,688.688 INFO    ] 2026-10-25 12:53:33
[2026-10-25 12:53:33,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:53:33,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:53:33,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:53:34,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:53:34,095.095 INFO    ] time= 25/10/2026 12:53:34
[2026-10-25 12:53:34,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:53:34,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:53:34,265.265 INFO    ] No existing commands found in stream
[2026-10-25 12:53:39,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:53:39,298.298 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 12:53:41,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:53:41,808.808 INFO    ] Checking for system updates...
[2026-10-25 12:53:41,848.848 INFO    ] 200
[2026-10-25 12:53:41,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:41,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:41,907.907 INFO    ] No update needed
[2026-10-25 12:53:41,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 12:53:41,947.947 INFO    ] 200
[2026-10-25 12:53:41,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:41,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:53:42,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:42,043.043 INFO    ] No camera update needed
[2026-10-25 12:53:42,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:53:42,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:53:42,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:53:42,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:53:44,104.104 INFO    ] ================================================
[2026-10-25 12:53:44,119.119 INFO    ] Launching Daemon at Sun Oct 25 12:53:44 IST 2026
[2026-10-25 12:53:44,131.131 INFO    ] ================================================
[2026-10-25 12:53:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:53:44
[2026-10-25 12:53:45,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:53:45,720.720 INFO    ] Initializing speech engine...
[2026-10-25 12:53:45,729.729 INFO    ] 2026-10-25 12:53:45
[2026-10-25 12:53:45,999.999 INFO    ] 2026-10-25 12:53:45
[2026-10-25 12:53:46,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:53:46,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:53:46,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:53:46,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:53:46,487.487 INFO    ] time= 25/10/2026 12:53:46
[2026-10-25 12:53:46,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:53:46,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:53:46,652.652 INFO    ] No existing commands found in stream
[2026-10-25 12:53:51,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:53:51,665.665 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 12:53:55,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:53:55,237.237 INFO    ] Checking for system updates...
[2026-10-25 12:53:55,277.277 INFO    ] 200
[2026-10-25 12:53:55,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:55,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:55,342.342 INFO    ] No update needed
[2026-10-25 12:53:55,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 12:53:55,379.379 INFO    ] 200
[2026-10-25 12:53:55,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:53:55,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:53:55,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:53:55,481.481 INFO    ] No camera update needed
[2026-10-25 12:53:55,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:53:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:53:55,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:53:55,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:53:57,538.538 INFO    ] ================================================
[2026-10-25 12:53:57,554.554 INFO    ] Launching Daemon at Sun Oct 25 12:53:57 IST 2026
[2026-10-25 12:53:57,565.565 INFO    ] ================================================
[2026-10-25 12:53:58,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:53:58
[2026-10-25 12:53:58,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:53:59,131.131 INFO    ] Initializing speech engine...
[2026-10-25 12:53:59,144.144 INFO    ] 2026-10-25 12:53:59
[2026-10-25 12:53:59,421.421 INFO    ] 2026-10-25 12:53:59
[2026-10-25 12:53:59,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:53:59,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:53:59,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:53:59,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:53:59,831.831 INFO    ] time= 25/10/2026 12:53:59
[2026-10-25 12:53:59,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:53:59,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:54:00,050.050 INFO    ] No existing commands found in stream
[2026-10-25 12:54:05,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:54:05,090.090 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 12:54:09,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:54:09,896.896 INFO    ] Checking for system updates...
[2026-10-25 12:54:09,937.937 INFO    ] 200
[2026-10-25 12:54:09,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:09,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:09,994.994 INFO    ] No update needed
[2026-10-25 12:54:09,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 12:54:10,031.031 INFO    ] 200
[2026-10-25 12:54:10,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:10,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:54:10,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:10,130.130 INFO    ] No camera update needed
[2026-10-25 12:54:10,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:54:10,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:54:10,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:54:10,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:54:12,185.185 INFO    ] ================================================
[2026-10-25 12:54:12,201.201 INFO    ] Launching Daemon at Sun Oct 25 12:54:12 IST 2026
[2026-10-25 12:54:12,214.214 INFO    ] ================================================
[2026-10-25 12:54:12,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:54:12
[2026-10-25 12:54:13,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:54:13,638.638 INFO    ] Initializing speech engine...
[2026-10-25 12:54:13,660.660 INFO    ] 2026-10-25 12:54:13
[2026-10-25 12:54:13,918.918 INFO    ] 2026-10-25 12:54:13
[2026-10-25 12:54:13,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:54:14,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:54:14,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:54:14,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:54:14,376.376 INFO    ] time= 25/10/2026 12:54:14
[2026-10-25 12:54:14,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:54:14,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:54:14,549.549 INFO    ] No existing commands found in stream
[2026-10-25 12:54:19,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:54:19,565.565 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 12:54:20,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:54:20,778.778 INFO    ] Checking for system updates...
[2026-10-25 12:54:20,813.813 INFO    ] 200
[2026-10-25 12:54:20,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:20,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:20,879.879 INFO    ] No update needed
[2026-10-25 12:54:20,881.881 INFO    ] Checking for camera pi updates...
[2026-10-25 12:54:20,919.919 INFO    ] 200
[2026-10-25 12:54:20,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:20,963.963 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:54:21,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:21,019.019 INFO    ] No camera update needed
[2026-10-25 12:54:21,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:54:21,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:54:21,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:54:21,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:54:23,073.073 INFO    ] ================================================
[2026-10-25 12:54:23,088.088 INFO    ] Launching Daemon at Sun Oct 25 12:54:23 IST 2026
[2026-10-25 12:54:23,099.099 INFO    ] ================================================
[2026-10-25 12:54:23,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:54:23
[2026-10-25 12:54:24,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:54:24,538.538 INFO    ] Initializing speech engine...
[2026-10-25 12:54:24,561.561 INFO    ] 2026-10-25 12:54:24
[2026-10-25 12:54:24,815.815 INFO    ] 2026-10-25 12:54:24
[2026-10-25 12:54:24,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:54:25,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:54:25,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:54:25,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:54:25,271.271 INFO    ] time= 25/10/2026 12:54:25
[2026-10-25 12:54:25,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:54:25,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:54:25,440.440 INFO    ] No existing commands found in stream
[2026-10-25 12:54:30,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:54:30,475.475 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 12:54:32,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:54:32,355.355 INFO    ] Checking for system updates...
[2026-10-25 12:54:32,395.395 INFO    ] 200
[2026-10-25 12:54:32,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:32,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:32,458.458 INFO    ] No update needed
[2026-10-25 12:54:32,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 12:54:32,502.502 INFO    ] 200
[2026-10-25 12:54:32,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:32,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:54:32,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:32,591.591 INFO    ] No camera update needed
[2026-10-25 12:54:32,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:54:32,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:54:32,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:54:32,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:54:34,649.649 INFO    ] ================================================
[2026-10-25 12:54:34,665.665 INFO    ] Launching Daemon at Sun Oct 25 12:54:34 IST 2026
[2026-10-25 12:54:34,676.676 INFO    ] ================================================
[2026-10-25 12:54:35,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:54:35
[2026-10-25 12:54:35,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:54:36,127.127 INFO    ] Initializing speech engine...
[2026-10-25 12:54:36,132.132 INFO    ] 2026-10-25 12:54:36
[2026-10-25 12:54:36,385.385 INFO    ] 2026-10-25 12:54:36
[2026-10-25 12:54:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:54:36,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:54:36,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:54:36,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:54:36,876.876 INFO    ] time= 25/10/2026 12:54:36
[2026-10-25 12:54:36,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:54:36,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:54:37,064.064 INFO    ] No existing commands found in stream
[2026-10-25 12:54:42,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:54:42,093.093 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 12:54:43,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:54:43,966.966 INFO    ] Checking for system updates...
[2026-10-25 12:54:44,002.002 INFO    ] 200
[2026-10-25 12:54:44,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:44,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:44,068.068 INFO    ] No update needed
[2026-10-25 12:54:44,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 12:54:44,105.105 INFO    ] 200
[2026-10-25 12:54:44,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:44,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:54:44,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:54:44,308.308 INFO    ] No camera update needed
[2026-10-25 12:54:44,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:54:44,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:54:44,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:54:44,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:54:46,369.369 INFO    ] ================================================
[2026-10-25 12:54:46,384.384 INFO    ] Launching Daemon at Sun Oct 25 12:54:46 IST 2026
[2026-10-25 12:54:46,394.394 INFO    ] ================================================
[2026-10-25 12:54:46,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:54:46
[2026-10-25 12:54:47,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:54:47,837.837 INFO    ] Initializing speech engine...
[2026-10-25 12:54:47,854.854 INFO    ] 2026-10-25 12:54:47
[2026-10-25 12:54:48,144.144 INFO    ] 2026-10-25 12:54:48
[2026-10-25 12:54:48,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:54:48,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:54:48,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:54:48,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:54:48,518.518 INFO    ] time= 25/10/2026 12:54:48
[2026-10-25 12:54:48,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:54:48,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:54:48,645.645 INFO    ] No existing commands found in stream
[2026-10-25 12:54:53,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:54:53,657.657 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 12:54:57,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:54:57,931.931 INFO    ] Checking for system updates...
[2026-10-25 12:54:57,972.972 INFO    ] 200
[2026-10-25 12:54:57,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:58,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:54:58,037.037 INFO    ] No update needed
[2026-10-25 12:54:58,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 12:54:58,074.074 INFO    ] 200
[2026-10-25 12:54:58,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:54:58,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:54:58,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:54:58,167.167 INFO    ] No camera update needed
[2026-10-25 12:54:58,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:54:58,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:54:58,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:54:58,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:55:00,223.223 INFO    ] ================================================
[2026-10-25 12:55:00,237.237 INFO    ] Launching Daemon at Sun Oct 25 12:55:00 IST 2026
[2026-10-25 12:55:00,248.248 INFO    ] ================================================
[2026-10-25 12:55:00,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:55:00
[2026-10-25 12:55:01,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:55:02,226.226 INFO    ] Initializing speech engine...
[2026-10-25 12:55:02,232.232 INFO    ] 2026-10-25 12:55:02
[2026-10-25 12:55:02,528.528 INFO    ] 2026-10-25 12:55:02
[2026-10-25 12:55:02,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:55:02,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:55:02,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:55:02,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:55:02,941.941 INFO    ] time= 25/10/2026 12:55:02
[2026-10-25 12:55:02,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:55:02,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:55:03,058.058 INFO    ] No existing commands found in stream
[2026-10-25 12:55:08,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:55:08,078.078 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 12:55:14,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:55:14,454.454 INFO    ] Checking for system updates...
[2026-10-25 12:55:14,501.501 INFO    ] 200
[2026-10-25 12:55:14,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:14,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:14,566.566 INFO    ] No update needed
[2026-10-25 12:55:14,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 12:55:14,602.602 INFO    ] 200
[2026-10-25 12:55:14,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:14,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:55:14,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:14,712.712 INFO    ] No camera update needed
[2026-10-25 12:55:14,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:55:14,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:55:14,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:55:14,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:55:16,766.766 INFO    ] ================================================
[2026-10-25 12:55:16,782.782 INFO    ] Launching Daemon at Sun Oct 25 12:55:16 IST 2026
[2026-10-25 12:55:16,793.793 INFO    ] ================================================
[2026-10-25 12:55:17,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:55:17
[2026-10-25 12:55:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:55:18,304.304 INFO    ] Initializing speech engine...
[2026-10-25 12:55:18,313.313 INFO    ] 2026-10-25 12:55:18
[2026-10-25 12:55:18,605.605 INFO    ] 2026-10-25 12:55:18
[2026-10-25 12:55:18,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:55:18,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:55:18,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:55:19,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:55:19,107.107 INFO    ] time= 25/10/2026 12:55:19
[2026-10-25 12:55:19,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:55:19,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:55:19,317.317 INFO    ] No existing commands found in stream
[2026-10-25 12:55:24,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:55:24,346.346 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 12:55:25,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:55:25,347.347 INFO    ] Checking for system updates...
[2026-10-25 12:55:25,385.385 INFO    ] 200
[2026-10-25 12:55:25,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:25,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:25,445.445 INFO    ] No update needed
[2026-10-25 12:55:25,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 12:55:25,487.487 INFO    ] 200
[2026-10-25 12:55:25,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:25,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:55:25,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:25,587.587 INFO    ] No camera update needed
[2026-10-25 12:55:25,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:55:25,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:55:25,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:55:25,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:55:27,643.643 INFO    ] ================================================
[2026-10-25 12:55:27,658.658 INFO    ] Launching Daemon at Sun Oct 25 12:55:27 IST 2026
[2026-10-25 12:55:27,668.668 INFO    ] ================================================
[2026-10-25 12:55:28,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:55:28
[2026-10-25 12:55:28,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:55:29,126.126 INFO    ] Initializing speech engine...
[2026-10-25 12:55:29,131.131 INFO    ] 2026-10-25 12:55:29
[2026-10-25 12:55:29,395.395 INFO    ] 2026-10-25 12:55:29
[2026-10-25 12:55:29,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:55:29,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:55:29,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:55:29,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:55:29,859.859 INFO    ] time= 25/10/2026 12:55:29
[2026-10-25 12:55:29,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:55:29,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:55:30,031.031 INFO    ] No existing commands found in stream
[2026-10-25 12:55:35,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:55:35,046.046 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 12:55:37,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:55:37,481.481 INFO    ] Checking for system updates...
[2026-10-25 12:55:37,518.518 INFO    ] 200
[2026-10-25 12:55:37,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:37,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:37,578.578 INFO    ] No update needed
[2026-10-25 12:55:37,581.581 INFO    ] Checking for camera pi updates...
[2026-10-25 12:55:37,616.616 INFO    ] 200
[2026-10-25 12:55:37,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:37,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:55:37,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:37,774.774 INFO    ] No camera update needed
[2026-10-25 12:55:37,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:55:37,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:55:37,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:55:37,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:55:39,831.831 INFO    ] ================================================
[2026-10-25 12:55:39,846.846 INFO    ] Launching Daemon at Sun Oct 25 12:55:39 IST 2026
[2026-10-25 12:55:39,856.856 INFO    ] ================================================
[2026-10-25 12:55:40,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:55:40
[2026-10-25 12:55:41,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:55:41,470.470 INFO    ] Initializing speech engine...
[2026-10-25 12:55:41,487.487 INFO    ] 2026-10-25 12:55:41
[2026-10-25 12:55:41,808.808 INFO    ] 2026-10-25 12:55:41
[2026-10-25 12:55:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:55:45,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:55:45,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:55:45,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:55:45,593.593 INFO    ] time= 25/10/2026 12:55:45
[2026-10-25 12:55:45,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:55:45,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:55:45,648.648 INFO    ] No existing commands found in stream
[2026-10-25 12:55:50,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:55:50,661.661 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 12:55:54,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:55:54,166.166 INFO    ] Checking for system updates...
[2026-10-25 12:55:54,204.204 INFO    ] 200
[2026-10-25 12:55:54,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:54,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:54,266.266 INFO    ] No update needed
[2026-10-25 12:55:54,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 12:55:54,306.306 INFO    ] 200
[2026-10-25 12:55:54,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:55:54,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:55:54,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:55:54,404.404 INFO    ] No camera update needed
[2026-10-25 12:55:54,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:55:54,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:55:54,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:55:54,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:55:56,463.463 INFO    ] ================================================
[2026-10-25 12:55:56,479.479 INFO    ] Launching Daemon at Sun Oct 25 12:55:56 IST 2026
[2026-10-25 12:55:56,490.490 INFO    ] ================================================
[2026-10-25 12:55:57,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:55:57
[2026-10-25 12:55:57,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:55:58,149.149 INFO    ] Initializing speech engine...
[2026-10-25 12:55:58,163.163 INFO    ] 2026-10-25 12:55:58
[2026-10-25 12:55:58,476.476 INFO    ] 2026-10-25 12:55:58
[2026-10-25 12:55:58,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:55:58,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:55:58,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:55:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:55:58,986.986 INFO    ] time= 25/10/2026 12:55:58
[2026-10-25 12:55:59,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:55:59,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:55:59,141.141 INFO    ] No existing commands found in stream
[2026-10-25 12:56:04,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:56:04,165.165 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 12:56:08,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:56:08,154.154 INFO    ] Checking for system updates...
[2026-10-25 12:56:08,191.191 INFO    ] 200
[2026-10-25 12:56:08,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:08,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:08,253.253 INFO    ] No update needed
[2026-10-25 12:56:08,256.256 INFO    ] Checking for camera pi updates...
[2026-10-25 12:56:08,296.296 INFO    ] 200
[2026-10-25 12:56:08,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:08,340.340 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:56:08,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:08,387.387 INFO    ] No camera update needed
[2026-10-25 12:56:08,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:56:08,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:56:08,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:56:08,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:56:10,445.445 INFO    ] ================================================
[2026-10-25 12:56:10,460.460 INFO    ] Launching Daemon at Sun Oct 25 12:56:10 IST 2026
[2026-10-25 12:56:10,471.471 INFO    ] ================================================
[2026-10-25 12:56:11,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:56:11
[2026-10-25 12:56:11,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:56:11,951.951 INFO    ] Initializing speech engine...
[2026-10-25 12:56:11,957.957 INFO    ] 2026-10-25 12:56:11
[2026-10-25 12:56:12,219.219 INFO    ] 2026-10-25 12:56:12
[2026-10-25 12:56:12,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:56:16,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:56:16,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:56:16,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:56:16,712.712 INFO    ] time= 25/10/2026 12:56:16
[2026-10-25 12:56:16,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:56:16,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:56:16,768.768 INFO    ] No existing commands found in stream
[2026-10-25 12:56:21,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:56:21,781.781 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 12:56:23,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:56:23,202.202 INFO    ] Checking for system updates...
[2026-10-25 12:56:23,238.238 INFO    ] 200
[2026-10-25 12:56:23,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:23,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:23,296.296 INFO    ] No update needed
[2026-10-25 12:56:23,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 12:56:23,333.333 INFO    ] 200
[2026-10-25 12:56:23,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:23,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:56:23,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:23,427.427 INFO    ] No camera update needed
[2026-10-25 12:56:23,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:56:23,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:56:23,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:56:23,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:56:25,483.483 INFO    ] ================================================
[2026-10-25 12:56:25,499.499 INFO    ] Launching Daemon at Sun Oct 25 12:56:25 IST 2026
[2026-10-25 12:56:25,510.510 INFO    ] ================================================
[2026-10-25 12:56:26,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:56:26
[2026-10-25 12:56:26,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:56:26,940.940 INFO    ] Initializing speech engine...
[2026-10-25 12:56:26,948.948 INFO    ] 2026-10-25 12:56:26
[2026-10-25 12:56:27,198.198 INFO    ] 2026-10-25 12:56:27
[2026-10-25 12:56:27,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:56:27,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:56:27,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:56:27,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:56:27,667.667 INFO    ] time= 25/10/2026 12:56:27
[2026-10-25 12:56:27,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:56:27,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:56:27,804.804 INFO    ] No existing commands found in stream
[2026-10-25 12:56:32,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:56:32,816.816 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 12:56:36,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:56:36,056.056 INFO    ] Checking for system updates...
[2026-10-25 12:56:36,092.092 INFO    ] 200
[2026-10-25 12:56:36,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:36,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:36,150.150 INFO    ] No update needed
[2026-10-25 12:56:36,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 12:56:36,187.187 INFO    ] 200
[2026-10-25 12:56:36,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:36,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:56:36,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:36,289.289 INFO    ] No camera update needed
[2026-10-25 12:56:36,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:56:36,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:56:36,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:56:36,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:56:38,345.345 INFO    ] ================================================
[2026-10-25 12:56:38,360.360 INFO    ] Launching Daemon at Sun Oct 25 12:56:38 IST 2026
[2026-10-25 12:56:38,371.371 INFO    ] ================================================
[2026-10-25 12:56:38,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:56:38
[2026-10-25 12:56:39,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:56:39,787.787 INFO    ] Initializing speech engine...
[2026-10-25 12:56:39,795.795 INFO    ] 2026-10-25 12:56:39
[2026-10-25 12:56:40,043.043 INFO    ] 2026-10-25 12:56:40
[2026-10-25 12:56:40,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:56:40,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:56:40,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:56:40,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:56:40,407.407 INFO    ] time= 25/10/2026 12:56:40
[2026-10-25 12:56:40,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:56:40,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:56:40,577.577 INFO    ] No existing commands found in stream
[2026-10-25 12:56:45,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:56:45,616.616 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 12:56:47,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:56:47,622.622 INFO    ] Checking for system updates...
[2026-10-25 12:56:47,657.657 INFO    ] 200
[2026-10-25 12:56:47,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:47,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:47,716.716 INFO    ] No update needed
[2026-10-25 12:56:47,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 12:56:47,752.752 INFO    ] 200
[2026-10-25 12:56:47,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:56:47,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:56:47,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:56:47,948.948 INFO    ] No camera update needed
[2026-10-25 12:56:47,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:56:47,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:56:47,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:56:47,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:56:50,007.007 INFO    ] ================================================
[2026-10-25 12:56:50,022.022 INFO    ] Launching Daemon at Sun Oct 25 12:56:50 IST 2026
[2026-10-25 12:56:50,033.033 INFO    ] ================================================
[2026-10-25 12:56:50,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:56:50
[2026-10-25 12:56:51,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:56:51,520.520 INFO    ] Initializing speech engine...
[2026-10-25 12:56:51,541.541 INFO    ] 2026-10-25 12:56:51
[2026-10-25 12:56:51,802.802 INFO    ] 2026-10-25 12:56:51
[2026-10-25 12:56:51,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:56:52,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:56:52,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:56:52,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:56:52,224.224 INFO    ] time= 25/10/2026 12:56:52
[2026-10-25 12:56:52,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:56:52,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:56:52,381.381 INFO    ] No existing commands found in stream
[2026-10-25 12:56:57,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:56:57,394.394 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 12:57:01,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:57:01,006.006 INFO    ] Checking for system updates...
[2026-10-25 12:57:01,043.043 INFO    ] 200
[2026-10-25 12:57:01,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:01,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:57:01,101.101 INFO    ] No update needed
[2026-10-25 12:57:01,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 12:57:01,137.137 INFO    ] 200
[2026-10-25 12:57:01,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:01,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:57:01,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:57:01,235.235 INFO    ] No camera update needed
[2026-10-25 12:57:01,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:57:01,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:57:01,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:57:01,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:57:03,292.292 INFO    ] ================================================
[2026-10-25 12:57:03,307.307 INFO    ] Launching Daemon at Sun Oct 25 12:57:03 IST 2026
[2026-10-25 12:57:03,320.320 INFO    ] ================================================
[2026-10-25 12:57:03,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:57:03
[2026-10-25 12:57:04,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:57:04,779.779 INFO    ] Initializing speech engine...
[2026-10-25 12:57:04,788.788 INFO    ] 2026-10-25 12:57:04
[2026-10-25 12:57:05,035.035 INFO    ] 2026-10-25 12:57:05
[2026-10-25 12:57:05,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:57:05,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:57:05,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:57:05,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:57:05,517.517 INFO    ] time= 25/10/2026 12:57:05
[2026-10-25 12:57:05,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:57:05,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:57:05,662.662 INFO    ] No existing commands found in stream
[2026-10-25 12:57:10,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:57:10,677.677 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 12:57:18,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:57:18,258.258 INFO    ] Checking for system updates...
[2026-10-25 12:57:18,296.296 INFO    ] 200
[2026-10-25 12:57:18,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 12:57:18,301.301 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-10-25 12:57:18,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 12:57:18,339.339 INFO    ] 200
[2026-10-25 12:57:18,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-10-25 12:57:18,345.345 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-10-25 12:57:18,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:57:18,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:57:18,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:57:18,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:57:20,407.407 INFO    ] ================================================
[2026-10-25 12:57:20,424.424 INFO    ] Launching Daemon at Sun Oct 25 12:57:20 IST 2026
[2026-10-25 12:57:20,435.435 INFO    ] ================================================
[2026-10-25 12:57:21,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:57:21
[2026-10-25 12:57:21,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:57:22,062.062 INFO    ] Initializing speech engine...
[2026-10-25 12:57:22,067.067 INFO    ] 2026-10-25 12:57:22
[2026-10-25 12:57:22,327.327 INFO    ] 2026-10-25 12:57:22
[2026-10-25 12:57:22,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:57:22,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:57:22,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:57:22,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:57:22,865.865 INFO    ] time= 25/10/2026 12:57:22
[2026-10-25 12:57:22,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:57:22,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:57:23,012.012 INFO    ] No existing commands found in stream
[2026-10-25 12:57:28,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:57:28,036.036 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 12:57:29,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:57:29,054.054 INFO    ] Checking for system updates...
[2026-10-25 12:57:29,092.092 INFO    ] 200
[2026-10-25 12:57:29,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:29,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:57:29,161.161 INFO    ] No update needed
[2026-10-25 12:57:29,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 12:57:29,201.201 INFO    ] 200
[2026-10-25 12:57:29,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:29,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:57:29,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:57:29,312.312 INFO    ] No camera update needed
[2026-10-25 12:57:29,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:57:29,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:57:29,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:57:29,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:57:31,368.368 INFO    ] ================================================
[2026-10-25 12:57:31,383.383 INFO    ] Launching Daemon at Sun Oct 25 12:57:31 IST 2026
[2026-10-25 12:57:31,394.394 INFO    ] ================================================
[2026-10-25 12:57:32,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:57:32
[2026-10-25 12:57:32,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:57:33,013.013 INFO    ] Initializing speech engine...
[2026-10-25 12:57:33,038.038 INFO    ] 2026-10-25 12:57:33
[2026-10-25 12:57:33,313.313 INFO    ] 2026-10-25 12:57:33
[2026-10-25 12:57:33,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:57:33,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:57:33,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:57:33,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:57:33,776.776 INFO    ] time= 25/10/2026 12:57:33
[2026-10-25 12:57:33,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:57:33,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:57:33,946.946 INFO    ] No existing commands found in stream
[2026-10-25 12:57:38,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:57:38,985.985 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 12:57:39,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:57:39,604.604 INFO    ] Checking for system updates...
[2026-10-25 12:57:39,643.643 INFO    ] 200
[2026-10-25 12:57:39,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:39,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:57:39,708.708 INFO    ] No update needed
[2026-10-25 12:57:39,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 12:57:39,748.748 INFO    ] 200
[2026-10-25 12:57:39,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:39,792.792 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:57:39,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:57:39,849.849 INFO    ] No camera update needed
[2026-10-25 12:57:39,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:57:39,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:57:39,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:57:39,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:57:41,904.904 INFO    ] ================================================
[2026-10-25 12:57:41,920.920 INFO    ] Launching Daemon at Sun Oct 25 12:57:41 IST 2026
[2026-10-25 12:57:41,931.931 INFO    ] ================================================
[2026-10-25 12:57:42,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:57:42
[2026-10-25 12:57:43,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:57:43,407.407 INFO    ] Initializing speech engine...
[2026-10-25 12:57:43,414.414 INFO    ] 2026-10-25 12:57:43
[2026-10-25 12:57:43,677.677 INFO    ] 2026-10-25 12:57:43
[2026-10-25 12:57:43,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:57:43,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:57:43,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:57:44,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:57:44,140.140 INFO    ] time= 25/10/2026 12:57:44
[2026-10-25 12:57:44,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:57:44,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:57:44,283.283 INFO    ] No existing commands found in stream
[2026-10-25 12:57:49,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:57:49,297.297 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 12:57:50,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 12:57:50,972.972 INFO    ] Checking for system updates...
[2026-10-25 12:57:51,013.013 INFO    ] 200
[2026-10-25 12:57:51,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:51,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:57:51,072.072 INFO    ] No update needed
[2026-10-25 12:57:51,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 12:57:51,110.110 INFO    ] 200
[2026-10-25 12:57:51,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:57:51,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:57:51,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:57:51,203.203 INFO    ] No camera update needed
[2026-10-25 12:57:51,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:57:51,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:57:51,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:57:51,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:57:53,260.260 INFO    ] ================================================
[2026-10-25 12:57:53,275.275 INFO    ] Launching Daemon at Sun Oct 25 12:57:53 IST 2026
[2026-10-25 12:57:53,287.287 INFO    ] ================================================
[2026-10-25 12:57:53,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:57:53
[2026-10-25 12:57:54,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:57:54,739.739 INFO    ] Initializing speech engine...
[2026-10-25 12:57:54,749.749 INFO    ] 2026-10-25 12:57:54
[2026-10-25 12:57:55,002.002 INFO    ] 2026-10-25 12:57:54
[2026-10-25 12:57:55,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:57:55,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:57:55,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:57:55,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:57:55,426.426 INFO    ] time= 25/10/2026 12:57:55
[2026-10-25 12:57:55,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:57:55,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:57:55,583.583 INFO    ] No existing commands found in stream
[2026-10-25 12:58:00,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:58:00,596.596 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 12:58:01,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:58:01,615.615 INFO    ] Checking for system updates...
[2026-10-25 12:58:01,652.652 INFO    ] 200
[2026-10-25 12:58:01,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:01,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:01,716.716 INFO    ] No update needed
[2026-10-25 12:58:01,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 12:58:01,754.754 INFO    ] 200
[2026-10-25 12:58:01,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:01,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:58:01,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:01,845.845 INFO    ] No camera update needed
[2026-10-25 12:58:01,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:58:01,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:58:01,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:58:01,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:58:03,920.920 INFO    ] ================================================
[2026-10-25 12:58:03,935.935 INFO    ] Launching Daemon at Sun Oct 25 12:58:03 IST 2026
[2026-10-25 12:58:03,947.947 INFO    ] ================================================
[2026-10-25 12:58:04,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:58:04
[2026-10-25 12:58:05,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:58:05,472.472 INFO    ] Initializing speech engine...
[2026-10-25 12:58:05,482.482 INFO    ] 2026-10-25 12:58:05
[2026-10-25 12:58:05,757.757 INFO    ] 2026-10-25 12:58:05
[2026-10-25 12:58:05,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:58:05,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:58:05,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:58:06,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:58:06,147.147 INFO    ] time= 25/10/2026 12:58:06
[2026-10-25 12:58:06,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:58:06,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:58:06,327.327 INFO    ] No existing commands found in stream
[2026-10-25 12:58:11,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:58:11,361.361 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 12:58:15,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:58:15,310.310 INFO    ] Checking for system updates...
[2026-10-25 12:58:15,352.352 INFO    ] 200
[2026-10-25 12:58:15,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:15,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:58:15,420.420 INFO    ] No update needed
[2026-10-25 12:58:15,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 12:58:15,467.467 INFO    ] 200
[2026-10-25 12:58:15,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:15,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:58:15,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:58:15,571.571 INFO    ] No camera update needed
[2026-10-25 12:58:15,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:58:15,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:58:15,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:58:15,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:58:17,631.631 INFO    ] ================================================
[2026-10-25 12:58:17,647.647 INFO    ] Launching Daemon at Sun Oct 25 12:58:17 IST 2026
[2026-10-25 12:58:17,659.659 INFO    ] ================================================
[2026-10-25 12:58:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:58:18
[2026-10-25 12:58:18,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:58:19,083.083 INFO    ] Initializing speech engine...
[2026-10-25 12:58:19,091.091 INFO    ] 2026-10-25 12:58:19
[2026-10-25 12:58:19,339.339 INFO    ] 2026-10-25 12:58:19
[2026-10-25 12:58:19,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:58:20,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:58:20,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:58:20,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:58:20,577.577 INFO    ] time= 25/10/2026 12:58:20
[2026-10-25 12:58:20,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:58:20,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:58:20,732.732 INFO    ] No existing commands found in stream
[2026-10-25 12:58:25,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:58:25,760.760 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 12:58:26,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:58:26,223.223 INFO    ] Checking for system updates...
[2026-10-25 12:58:26,259.259 INFO    ] 200
[2026-10-25 12:58:26,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:26,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:26,325.325 INFO    ] No update needed
[2026-10-25 12:58:26,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 12:58:26,362.362 INFO    ] 200
[2026-10-25 12:58:26,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:26,405.405 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:58:26,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:26,456.456 INFO    ] No camera update needed
[2026-10-25 12:58:26,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:58:26,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:58:26,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:58:26,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:58:28,513.513 INFO    ] ================================================
[2026-10-25 12:58:28,528.528 INFO    ] Launching Daemon at Sun Oct 25 12:58:28 IST 2026
[2026-10-25 12:58:28,540.540 INFO    ] ================================================
[2026-10-25 12:58:29,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:58:29
[2026-10-25 12:58:29,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:58:29,954.954 INFO    ] Initializing speech engine...
[2026-10-25 12:58:29,962.962 INFO    ] 2026-10-25 12:58:29
[2026-10-25 12:58:30,257.257 INFO    ] 2026-10-25 12:58:30
[2026-10-25 12:58:30,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:58:30,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:58:30,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:58:30,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:58:30,682.682 INFO    ] time= 25/10/2026 12:58:30
[2026-10-25 12:58:30,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:58:30,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:58:30,846.846 INFO    ] No existing commands found in stream
[2026-10-25 12:58:35,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:58:35,869.869 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 12:58:37,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:58:37,675.675 INFO    ] Checking for system updates...
[2026-10-25 12:58:37,711.711 INFO    ] 200
[2026-10-25 12:58:37,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:37,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:37,770.770 INFO    ] No update needed
[2026-10-25 12:58:37,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 12:58:37,807.807 INFO    ] 200
[2026-10-25 12:58:37,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:37,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:58:37,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:38,000.000 INFO    ] No camera update needed
[2026-10-25 12:58:38,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:58:38,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:58:38,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:58:38,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:58:40,055.055 INFO    ] ================================================
[2026-10-25 12:58:40,070.070 INFO    ] Launching Daemon at Sun Oct 25 12:58:40 IST 2026
[2026-10-25 12:58:40,081.081 INFO    ] ================================================
[2026-10-25 12:58:40,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:58:40
[2026-10-25 12:58:41,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:58:41,711.711 INFO    ] Initializing speech engine...
[2026-10-25 12:58:41,725.725 INFO    ] 2026-10-25 12:58:41
[2026-10-25 12:58:42,036.036 INFO    ] 2026-10-25 12:58:42
[2026-10-25 12:58:42,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:58:42,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:58:42,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:58:42,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:58:42,594.594 INFO    ] time= 25/10/2026 12:58:42
[2026-10-25 12:58:42,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:58:42,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:58:42,801.801 INFO    ] No existing commands found in stream
[2026-10-25 12:58:47,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:58:47,830.830 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 12:58:51,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 12:58:51,895.895 INFO    ] Checking for system updates...
[2026-10-25 12:58:51,934.934 INFO    ] 200
[2026-10-25 12:58:51,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:51,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:51,995.995 INFO    ] No update needed
[2026-10-25 12:58:51,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 12:58:52,033.033 INFO    ] 200
[2026-10-25 12:58:52,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:58:52,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:58:52,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:58:52,253.253 INFO    ] No camera update needed
[2026-10-25 12:58:52,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:58:52,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:58:52,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:58:52,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:58:54,313.313 INFO    ] ================================================
[2026-10-25 12:58:54,328.328 INFO    ] Launching Daemon at Sun Oct 25 12:58:54 IST 2026
[2026-10-25 12:58:54,339.339 INFO    ] ================================================
[2026-10-25 12:58:54,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:58:54
[2026-10-25 12:58:55,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:58:55,779.779 INFO    ] Initializing speech engine...
[2026-10-25 12:58:55,795.795 INFO    ] 2026-10-25 12:58:55
[2026-10-25 12:58:56,080.080 INFO    ] 2026-10-25 12:58:56
[2026-10-25 12:58:56,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:58:56,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:58:56,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:58:56,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:58:56,478.478 INFO    ] time= 25/10/2026 12:58:56
[2026-10-25 12:58:56,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:58:56,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:58:56,608.608 INFO    ] No existing commands found in stream
[2026-10-25 12:59:01,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:59:01,630.630 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 12:59:03,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:59:03,620.620 INFO    ] Checking for system updates...
[2026-10-25 12:59:03,656.656 INFO    ] 200
[2026-10-25 12:59:03,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:03,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:59:03,716.716 INFO    ] No update needed
[2026-10-25 12:59:03,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 12:59:03,756.756 INFO    ] 200
[2026-10-25 12:59:03,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:03,807.807 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:59:03,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:59:03,863.863 INFO    ] No camera update needed
[2026-10-25 12:59:03,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:59:03,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:59:03,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:59:03,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:59:05,925.925 INFO    ] ================================================
[2026-10-25 12:59:05,942.942 INFO    ] Launching Daemon at Sun Oct 25 12:59:05 IST 2026
[2026-10-25 12:59:05,952.952 INFO    ] ================================================
[2026-10-25 12:59:06,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:59:06
[2026-10-25 12:59:07,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:59:07,625.625 INFO    ] Initializing speech engine...
[2026-10-25 12:59:07,642.642 INFO    ] 2026-10-25 12:59:07
[2026-10-25 12:59:07,910.910 INFO    ] 2026-10-25 12:59:07
[2026-10-25 12:59:07,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:59:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:59:08,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:59:08,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:59:08,408.408 INFO    ] time= 25/10/2026 12:59:08
[2026-10-25 12:59:08,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:59:08,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:59:08,598.598 INFO    ] No existing commands found in stream
[2026-10-25 12:59:13,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:59:13,631.631 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 12:59:17,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 12:59:17,897.897 INFO    ] Checking for system updates...
[2026-10-25 12:59:17,934.934 INFO    ] 200
[2026-10-25 12:59:17,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:17,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:17,994.994 INFO    ] No update needed
[2026-10-25 12:59:17,996.996 INFO    ] Checking for camera pi updates...
[2026-10-25 12:59:18,031.031 INFO    ] 200
[2026-10-25 12:59:18,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:18,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:59:18,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:18,127.127 INFO    ] No camera update needed
[2026-10-25 12:59:18,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:59:18,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:59:18,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:59:18,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:59:20,182.182 INFO    ] ================================================
[2026-10-25 12:59:20,198.198 INFO    ] Launching Daemon at Sun Oct 25 12:59:20 IST 2026
[2026-10-25 12:59:20,209.209 INFO    ] ================================================
[2026-10-25 12:59:20,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:59:20
[2026-10-25 12:59:21,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:59:21,873.873 INFO    ] Initializing speech engine...
[2026-10-25 12:59:21,886.886 INFO    ] 2026-10-25 12:59:21
[2026-10-25 12:59:22,213.213 INFO    ] 2026-10-25 12:59:22
[2026-10-25 12:59:22,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:59:22,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:59:22,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:59:22,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:59:22,745.745 INFO    ] time= 25/10/2026 12:59:22
[2026-10-25 12:59:22,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:59:22,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:59:22,897.897 INFO    ] No existing commands found in stream
[2026-10-25 12:59:27,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:59:27,925.925 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 12:59:31,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 12:59:31,551.551 INFO    ] Checking for system updates...
[2026-10-25 12:59:31,588.588 INFO    ] 200
[2026-10-25 12:59:31,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:31,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:31,647.647 INFO    ] No update needed
[2026-10-25 12:59:31,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 12:59:31,684.684 INFO    ] 200
[2026-10-25 12:59:31,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:31,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:59:31,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:31,764.764 INFO    ] No camera update needed
[2026-10-25 12:59:31,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:59:31,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:59:31,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:59:31,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:59:33,819.819 INFO    ] ================================================
[2026-10-25 12:59:33,835.835 INFO    ] Launching Daemon at Sun Oct 25 12:59:33 IST 2026
[2026-10-25 12:59:33,847.847 INFO    ] ================================================
[2026-10-25 12:59:34,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:59:34
[2026-10-25 12:59:35,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:59:35,278.278 INFO    ] Initializing speech engine...
[2026-10-25 12:59:35,297.297 INFO    ] 2026-10-25 12:59:35
[2026-10-25 12:59:35,551.551 INFO    ] 2026-10-25 12:59:35
[2026-10-25 12:59:35,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:59:35,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:59:35,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:59:35,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:59:35,928.928 INFO    ] time= 25/10/2026 12:59:35
[2026-10-25 12:59:35,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:59:35,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:59:36,108.108 INFO    ] No existing commands found in stream
[2026-10-25 12:59:41,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:59:41,141.141 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 12:59:41,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 12:59:41,819.819 INFO    ] Checking for system updates...
[2026-10-25 12:59:41,856.856 INFO    ] 200
[2026-10-25 12:59:41,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:41,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:41,914.914 INFO    ] No update needed
[2026-10-25 12:59:41,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 12:59:41,951.951 INFO    ] 200
[2026-10-25 12:59:41,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:41,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:59:42,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 12:59:42,056.056 INFO    ] No camera update needed
[2026-10-25 12:59:42,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:59:42,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:59:42,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:59:42,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:59:44,112.112 INFO    ] ================================================
[2026-10-25 12:59:44,127.127 INFO    ] Launching Daemon at Sun Oct 25 12:59:44 IST 2026
[2026-10-25 12:59:44,139.139 INFO    ] ================================================
[2026-10-25 12:59:44,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:59:44
[2026-10-25 12:59:45,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:59:45,574.574 INFO    ] Initializing speech engine...
[2026-10-25 12:59:45,589.589 INFO    ] 2026-10-25 12:59:45
[2026-10-25 12:59:45,867.867 INFO    ] 2026-10-25 12:59:45
[2026-10-25 12:59:45,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:59:46,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:59:46,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:59:46,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:59:46,216.216 INFO    ] time= 25/10/2026 12:59:46
[2026-10-25 12:59:46,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:59:46,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:59:46,294.294 INFO    ] No existing commands found in stream
[2026-10-25 12:59:51,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 12:59:51,321.321 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 12:59:54,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 12:59:54,008.008 INFO    ] Checking for system updates...
[2026-10-25 12:59:54,045.045 INFO    ] 200
[2026-10-25 12:59:54,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:54,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:59:54,103.103 INFO    ] No update needed
[2026-10-25 12:59:54,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 12:59:54,140.140 INFO    ] 200
[2026-10-25 12:59:54,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 12:59:54,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 12:59:54,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 12:59:54,241.241 INFO    ] No camera update needed
[2026-10-25 12:59:54,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-25 12:59:54,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 12:59:54,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 12:59:54,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 12:59:56,296.296 INFO    ] ================================================
[2026-10-25 12:59:56,312.312 INFO    ] Launching Daemon at Sun Oct 25 12:59:56 IST 2026
[2026-10-25 12:59:56,323.323 INFO    ] ================================================
[2026-10-25 12:59:56,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 12:59:56
[2026-10-25 12:59:57,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 12:59:58,047.047 INFO    ] Initializing speech engine...
[2026-10-25 12:59:58,061.061 INFO    ] 2026-10-25 12:59:58
[2026-10-25 12:59:58,381.381 INFO    ] 2026-10-25 12:59:58
[2026-10-25 12:59:58,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 12:59:58,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 12:59:58,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 12:59:58,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 12:59:58,822.822 INFO    ] time= 25/10/2026 12:59:58
[2026-10-25 12:59:58,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 12:59:58,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 12:59:58,972.972 INFO    ] No existing commands found in stream
[2026-10-25 13:00:03,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:00:03,988.988 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 13:00:10,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:00:10,081.081 INFO    ] Checking for system updates...
[2026-10-25 13:00:10,129.129 INFO    ] 200
[2026-10-25 13:00:10,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:10,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:10,205.205 INFO    ] No update needed
[2026-10-25 13:00:10,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 13:00:10,246.246 INFO    ] 200
[2026-10-25 13:00:10,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:10,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:00:10,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:10,361.361 INFO    ] No camera update needed
[2026-10-25 13:00:10,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:00:10,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:00:10,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:00:10,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:00:12,417.417 INFO    ] ================================================
[2026-10-25 13:00:12,433.433 INFO    ] Launching Daemon at Sun Oct 25 13:00:12 IST 2026
[2026-10-25 13:00:12,445.445 INFO    ] ================================================
[2026-10-25 13:00:13,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:00:13
[2026-10-25 13:00:13,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:00:13,839.839 INFO    ] Initializing speech engine...
[2026-10-25 13:00:13,853.853 INFO    ] 2026-10-25 13:00:13
[2026-10-25 13:00:14,116.116 INFO    ] 2026-10-25 13:00:14
[2026-10-25 13:00:14,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:00:14,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:00:14,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:00:14,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:00:14,566.566 INFO    ] time= 25/10/2026 13:00:14
[2026-10-25 13:00:14,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:00:14,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:00:14,763.763 INFO    ] No existing commands found in stream
[2026-10-25 13:00:19,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:00:19,802.802 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 13:00:24,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:00:24,950.950 INFO    ] Checking for system updates...
[2026-10-25 13:00:24,986.986 INFO    ] 200
[2026-10-25 13:00:24,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:25,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:25,045.045 INFO    ] No update needed
[2026-10-25 13:00:25,047.047 INFO    ] Checking for camera pi updates...
[2026-10-25 13:00:25,083.083 INFO    ] 200
[2026-10-25 13:00:25,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:25,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:00:25,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:25,191.191 INFO    ] No camera update needed
[2026-10-25 13:00:25,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:00:25,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:00:25,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:00:25,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:00:27,246.246 INFO    ] ================================================
[2026-10-25 13:00:27,262.262 INFO    ] Launching Daemon at Sun Oct 25 13:00:27 IST 2026
[2026-10-25 13:00:27,273.273 INFO    ] ================================================
[2026-10-25 13:00:27,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:00:27
[2026-10-25 13:00:28,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:00:28,673.673 INFO    ] Initializing speech engine...
[2026-10-25 13:00:28,686.686 INFO    ] 2026-10-25 13:00:28
[2026-10-25 13:00:28,953.953 INFO    ] 2026-10-25 13:00:28
[2026-10-25 13:00:28,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:00:29,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:00:29,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:00:29,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:00:29,428.428 INFO    ] time= 25/10/2026 13:00:29
[2026-10-25 13:00:29,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:00:29,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:00:29,582.582 INFO    ] No existing commands found in stream
[2026-10-25 13:00:34,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:00:34,597.597 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 13:00:36,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:00:36,789.789 INFO    ] Checking for system updates...
[2026-10-25 13:00:36,829.829 INFO    ] 200
[2026-10-25 13:00:36,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:36,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:00:36,890.890 INFO    ] No update needed
[2026-10-25 13:00:36,893.893 INFO    ] Checking for camera pi updates...
[2026-10-25 13:00:36,929.929 INFO    ] 200
[2026-10-25 13:00:36,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:36,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:00:37,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:00:37,040.040 INFO    ] No camera update needed
[2026-10-25 13:00:37,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:00:37,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:00:37,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:00:37,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:00:39,096.096 INFO    ] ================================================
[2026-10-25 13:00:39,111.111 INFO    ] Launching Daemon at Sun Oct 25 13:00:39 IST 2026
[2026-10-25 13:00:39,123.123 INFO    ] ================================================
[2026-10-25 13:00:39,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:00:39
[2026-10-25 13:00:40,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:00:40,520.520 INFO    ] Initializing speech engine...
[2026-10-25 13:00:40,534.534 INFO    ] 2026-10-25 13:00:40
[2026-10-25 13:00:40,799.799 INFO    ] 2026-10-25 13:00:40
[2026-10-25 13:00:40,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:00:41,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:00:41,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:00:41,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:00:41,245.245 INFO    ] time= 25/10/2026 13:00:41
[2026-10-25 13:00:41,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:00:41,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:00:41,426.426 INFO    ] No existing commands found in stream
[2026-10-25 13:00:46,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:00:46,441.441 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 13:00:49,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:00:49,239.239 INFO    ] Checking for system updates...
[2026-10-25 13:00:49,287.287 INFO    ] 200
[2026-10-25 13:00:49,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:49,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:49,345.345 INFO    ] No update needed
[2026-10-25 13:00:49,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 13:00:49,381.381 INFO    ] 200
[2026-10-25 13:00:49,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:00:49,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:00:49,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:00:49,477.477 INFO    ] No camera update needed
[2026-10-25 13:00:49,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:00:49,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:00:49,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:00:49,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:00:51,532.532 INFO    ] ================================================
[2026-10-25 13:00:51,547.547 INFO    ] Launching Daemon at Sun Oct 25 13:00:51 IST 2026
[2026-10-25 13:00:51,558.558 INFO    ] ================================================
[2026-10-25 13:00:52,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:00:52
[2026-10-25 13:00:52,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:00:52,959.959 INFO    ] Initializing speech engine...
[2026-10-25 13:00:52,965.965 INFO    ] 2026-10-25 13:00:52
[2026-10-25 13:00:53,238.238 INFO    ] 2026-10-25 13:00:53
[2026-10-25 13:00:53,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:00:55,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:00:55,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:00:55,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:00:55,927.927 INFO    ] time= 25/10/2026 13:00:55
[2026-10-25 13:00:55,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:00:56,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:00:56,082.082 INFO    ] No existing commands found in stream
[2026-10-25 13:01:01,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:01:01,101.101 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 13:01:04,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:01:04,994.994 INFO    ] Checking for system updates...
[2026-10-25 13:01:05,034.034 INFO    ] 200
[2026-10-25 13:01:05,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:05,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:01:05,092.092 INFO    ] No update needed
[2026-10-25 13:01:05,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 13:01:05,129.129 INFO    ] 200
[2026-10-25 13:01:05,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:05,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:01:05,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:01:05,235.235 INFO    ] No camera update needed
[2026-10-25 13:01:05,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:01:05,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:01:05,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:01:05,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:01:07,291.291 INFO    ] ================================================
[2026-10-25 13:01:07,306.306 INFO    ] Launching Daemon at Sun Oct 25 13:01:07 IST 2026
[2026-10-25 13:01:07,317.317 INFO    ] ================================================
[2026-10-25 13:01:07,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:01:07
[2026-10-25 13:01:08,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:01:08,772.772 INFO    ] Initializing speech engine...
[2026-10-25 13:01:08,779.779 INFO    ] 2026-10-25 13:01:08
[2026-10-25 13:01:09,038.038 INFO    ] 2026-10-25 13:01:09
[2026-10-25 13:01:09,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:01:09,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:01:09,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:01:09,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:01:09,563.563 INFO    ] time= 25/10/2026 13:01:09
[2026-10-25 13:01:09,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:01:09,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:01:09,714.714 INFO    ] No existing commands found in stream
[2026-10-25 13:01:14,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:01:14,745.745 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 13:01:18,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:01:18,929.929 INFO    ] Checking for system updates...
[2026-10-25 13:01:18,974.974 INFO    ] 200
[2026-10-25 13:01:18,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:19,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:01:19,037.037 INFO    ] No update needed
[2026-10-25 13:01:19,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 13:01:19,081.081 INFO    ] 200
[2026-10-25 13:01:19,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:19,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:01:19,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:01:19,191.191 INFO    ] No camera update needed
[2026-10-25 13:01:19,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:01:19,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:01:19,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:01:19,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:01:21,248.248 INFO    ] ================================================
[2026-10-25 13:01:21,263.263 INFO    ] Launching Daemon at Sun Oct 25 13:01:21 IST 2026
[2026-10-25 13:01:21,274.274 INFO    ] ================================================
[2026-10-25 13:01:21,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:01:21
[2026-10-25 13:01:22,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:01:22,776.776 INFO    ] Initializing speech engine...
[2026-10-25 13:01:22,785.785 INFO    ] 2026-10-25 13:01:22
[2026-10-25 13:01:23,078.078 INFO    ] 2026-10-25 13:01:23
[2026-10-25 13:01:23,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:01:26,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:01:26,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:01:26,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:01:26,758.758 INFO    ] time= 25/10/2026 13:01:26
[2026-10-25 13:01:26,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:01:26,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:01:26,817.817 INFO    ] No existing commands found in stream
[2026-10-25 13:01:31,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:01:31,829.829 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 13:01:34,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:01:34,662.662 INFO    ] Checking for system updates...
[2026-10-25 13:01:34,703.703 INFO    ] 200
[2026-10-25 13:01:34,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:34,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:01:34,769.769 INFO    ] No update needed
[2026-10-25 13:01:34,772.772 INFO    ] Checking for camera pi updates...
[2026-10-25 13:01:34,811.811 INFO    ] 200
[2026-10-25 13:01:34,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:34,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:01:34,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:01:34,921.921 INFO    ] No camera update needed
[2026-10-25 13:01:34,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:01:34,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:01:34,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:01:34,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:01:36,976.976 INFO    ] ================================================
[2026-10-25 13:01:36,992.992 INFO    ] Launching Daemon at Sun Oct 25 13:01:36 IST 2026
[2026-10-25 13:01:37,003.003 INFO    ] ================================================
[2026-10-25 13:01:37,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:01:37
[2026-10-25 13:01:38,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:01:38,663.663 INFO    ] Initializing speech engine...
[2026-10-25 13:01:38,670.670 INFO    ] 2026-10-25 13:01:38
[2026-10-25 13:01:38,962.962 INFO    ] 2026-10-25 13:01:38
[2026-10-25 13:01:39,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:01:39,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:01:39,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:01:39,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:01:39,432.432 INFO    ] time= 25/10/2026 13:01:39
[2026-10-25 13:01:39,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:01:39,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:01:39,584.584 INFO    ] No existing commands found in stream
[2026-10-25 13:01:44,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:01:44,600.600 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 13:01:48,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:01:48,474.474 INFO    ] Checking for system updates...
[2026-10-25 13:01:48,516.516 INFO    ] 200
[2026-10-25 13:01:48,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:48,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:01:48,575.575 INFO    ] No update needed
[2026-10-25 13:01:48,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 13:01:48,613.613 INFO    ] 200
[2026-10-25 13:01:48,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:01:48,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:01:48,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:01:48,726.726 INFO    ] No camera update needed
[2026-10-25 13:01:48,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:01:48,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:01:48,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:01:48,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:01:50,780.780 INFO    ] ================================================
[2026-10-25 13:01:50,795.795 INFO    ] Launching Daemon at Sun Oct 25 13:01:50 IST 2026
[2026-10-25 13:01:50,806.806 INFO    ] ================================================
[2026-10-25 13:01:51,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:01:51
[2026-10-25 13:01:51,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:01:52,213.213 INFO    ] Initializing speech engine...
[2026-10-25 13:01:52,227.227 INFO    ] 2026-10-25 13:01:52
[2026-10-25 13:01:52,487.487 INFO    ] 2026-10-25 13:01:52
[2026-10-25 13:01:52,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:01:52,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:01:52,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:01:52,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:01:52,871.871 INFO    ] time= 25/10/2026 13:01:52
[2026-10-25 13:01:52,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:01:52,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:01:52,946.946 INFO    ] No existing commands found in stream
[2026-10-25 13:01:57,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:01:57,962.962 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 13:02:00,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:02:00,512.512 INFO    ] Checking for system updates...
[2026-10-25 13:02:00,547.547 INFO    ] 200
[2026-10-25 13:02:00,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:00,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:02:00,614.614 INFO    ] No update needed
[2026-10-25 13:02:00,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 13:02:00,650.650 INFO    ] 200
[2026-10-25 13:02:00,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:00,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:02:00,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:02:00,758.758 INFO    ] No camera update needed
[2026-10-25 13:02:00,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:02:00,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:02:00,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:02:00,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:02:02,815.815 INFO    ] ================================================
[2026-10-25 13:02:02,833.833 INFO    ] Launching Daemon at Sun Oct 25 13:02:02 IST 2026
[2026-10-25 13:02:02,845.845 INFO    ] ================================================
[2026-10-25 13:02:03,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:02:03
[2026-10-25 13:02:04,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:02:04,515.515 INFO    ] Initializing speech engine...
[2026-10-25 13:02:04,519.519 INFO    ] 2026-10-25 13:02:04
[2026-10-25 13:02:04,798.798 INFO    ] 2026-10-25 13:02:04
[2026-10-25 13:02:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:02:04,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:02:04,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:02:05,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:02:05,165.165 INFO    ] time= 25/10/2026 13:02:05
[2026-10-25 13:02:05,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:02:05,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:02:05,245.245 INFO    ] No existing commands found in stream
[2026-10-25 13:02:10,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:02:10,261.261 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 13:02:10,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:02:10,969.969 INFO    ] Checking for system updates...
[2026-10-25 13:02:11,010.010 INFO    ] 200
[2026-10-25 13:02:11,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:11,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:11,077.077 INFO    ] No update needed
[2026-10-25 13:02:11,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 13:02:11,118.118 INFO    ] 200
[2026-10-25 13:02:11,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:11,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:02:11,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:11,215.215 INFO    ] No camera update needed
[2026-10-25 13:02:11,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:02:11,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:02:11,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:02:11,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:02:13,269.269 INFO    ] ================================================
[2026-10-25 13:02:13,285.285 INFO    ] Launching Daemon at Sun Oct 25 13:02:13 IST 2026
[2026-10-25 13:02:13,296.296 INFO    ] ================================================
[2026-10-25 13:02:13,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:02:13
[2026-10-25 13:02:14,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:02:14,788.788 INFO    ] Initializing speech engine...
[2026-10-25 13:02:14,800.800 INFO    ] 2026-10-25 13:02:14
[2026-10-25 13:02:15,089.089 INFO    ] 2026-10-25 13:02:15
[2026-10-25 13:02:15,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:02:15,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:02:15,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:02:15,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:02:15,618.618 INFO    ] time= 25/10/2026 13:02:15
[2026-10-25 13:02:15,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:02:15,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:02:15,752.752 INFO    ] No existing commands found in stream
[2026-10-25 13:02:20,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:02:20,780.780 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 13:02:22,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:02:22,218.218 INFO    ] Checking for system updates...
[2026-10-25 13:02:22,263.263 INFO    ] 200
[2026-10-25 13:02:22,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:22,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:22,329.329 INFO    ] No update needed
[2026-10-25 13:02:22,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 13:02:22,370.370 INFO    ] 200
[2026-10-25 13:02:22,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:22,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:02:22,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:22,469.469 INFO    ] No camera update needed
[2026-10-25 13:02:22,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:02:22,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:02:22,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:02:22,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:02:24,523.523 INFO    ] ================================================
[2026-10-25 13:02:24,538.538 INFO    ] Launching Daemon at Sun Oct 25 13:02:24 IST 2026
[2026-10-25 13:02:24,550.550 INFO    ] ================================================
[2026-10-25 13:02:25,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:02:25
[2026-10-25 13:02:25,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:02:26,242.242 INFO    ] Initializing speech engine...
[2026-10-25 13:02:26,255.255 INFO    ] 2026-10-25 13:02:26
[2026-10-25 13:02:26,570.570 INFO    ] 2026-10-25 13:02:26
[2026-10-25 13:02:26,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:02:28,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:02:28,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:02:28,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:02:28,742.742 INFO    ] time= 25/10/2026 13:02:28
[2026-10-25 13:02:28,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:02:28,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:02:28,848.848 INFO    ] No existing commands found in stream
[2026-10-25 13:02:33,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:02:33,873.873 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 13:02:35,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:02:35,071.071 INFO    ] Checking for system updates...
[2026-10-25 13:02:35,111.111 INFO    ] 200
[2026-10-25 13:02:35,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:35,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:35,177.177 INFO    ] No update needed
[2026-10-25 13:02:35,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 13:02:35,217.217 INFO    ] 200
[2026-10-25 13:02:35,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:35,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:02:35,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:35,318.318 INFO    ] No camera update needed
[2026-10-25 13:02:35,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:02:35,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:02:35,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:02:35,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:02:37,373.373 INFO    ] ================================================
[2026-10-25 13:02:37,389.389 INFO    ] Launching Daemon at Sun Oct 25 13:02:37 IST 2026
[2026-10-25 13:02:37,400.400 INFO    ] ================================================
[2026-10-25 13:02:37,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:02:37
[2026-10-25 13:02:38,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:02:38,815.815 INFO    ] Initializing speech engine...
[2026-10-25 13:02:38,840.840 INFO    ] 2026-10-25 13:02:38
[2026-10-25 13:02:39,111.111 INFO    ] 2026-10-25 13:02:39
[2026-10-25 13:02:39,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:02:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:02:39,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:02:39,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:02:39,479.479 INFO    ] time= 25/10/2026 13:02:39
[2026-10-25 13:02:39,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:02:39,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:02:39,603.603 INFO    ] No existing commands found in stream
[2026-10-25 13:02:44,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:02:44,619.619 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 13:02:46,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:02:46,599.599 INFO    ] Checking for system updates...
[2026-10-25 13:02:46,638.638 INFO    ] 200
[2026-10-25 13:02:46,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:46,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:46,701.701 INFO    ] No update needed
[2026-10-25 13:02:46,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 13:02:46,737.737 INFO    ] 200
[2026-10-25 13:02:46,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:02:46,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:02:46,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:02:46,861.861 INFO    ] No camera update needed
[2026-10-25 13:02:46,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:02:46,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:02:46,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:02:46,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:02:48,916.916 INFO    ] ================================================
[2026-10-25 13:02:48,931.931 INFO    ] Launching Daemon at Sun Oct 25 13:02:48 IST 2026
[2026-10-25 13:02:48,942.942 INFO    ] ================================================
[2026-10-25 13:02:49,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:02:49
[2026-10-25 13:02:50,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:02:50,353.353 INFO    ] Initializing speech engine...
[2026-10-25 13:02:50,377.377 INFO    ] 2026-10-25 13:02:50
[2026-10-25 13:02:50,632.632 INFO    ] 2026-10-25 13:02:50
[2026-10-25 13:02:50,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:02:50,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:02:50,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:02:50,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:02:51,007.007 INFO    ] time= 25/10/2026 13:02:51
[2026-10-25 13:02:51,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:02:51,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:02:51,146.146 INFO    ] No existing commands found in stream
[2026-10-25 13:02:56,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:02:56,174.174 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 13:02:59,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:02:59,979.979 INFO    ] Checking for system updates...
[2026-10-25 13:03:00,016.016 INFO    ] 200
[2026-10-25 13:03:00,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:00,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:00,079.079 INFO    ] No update needed
[2026-10-25 13:03:00,081.081 INFO    ] Checking for camera pi updates...
[2026-10-25 13:03:00,117.117 INFO    ] 200
[2026-10-25 13:03:00,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:00,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:03:00,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:00,219.219 INFO    ] No camera update needed
[2026-10-25 13:03:00,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:03:00,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:03:00,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:03:00,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:03:02,299.299 INFO    ] ================================================
[2026-10-25 13:03:02,322.322 INFO    ] Launching Daemon at Sun Oct 25 13:03:02 IST 2026
[2026-10-25 13:03:02,339.339 INFO    ] ================================================
[2026-10-25 13:03:03,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:03:03
[2026-10-25 13:03:03,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:03:04,007.007 INFO    ] Initializing speech engine...
[2026-10-25 13:03:04,013.013 INFO    ] 2026-10-25 13:03:04
[2026-10-25 13:03:04,281.281 INFO    ] 2026-10-25 13:03:04
[2026-10-25 13:03:04,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:03:04,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:03:04,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:03:04,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:03:04,754.754 INFO    ] time= 25/10/2026 13:03:04
[2026-10-25 13:03:04,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:03:04,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:03:04,927.927 INFO    ] No existing commands found in stream
[2026-10-25 13:03:09,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:03:09,942.942 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 13:03:14,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:03:14,093.093 INFO    ] Checking for system updates...
[2026-10-25 13:03:14,133.133 INFO    ] 200
[2026-10-25 13:03:14,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:14,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:14,201.201 INFO    ] No update needed
[2026-10-25 13:03:14,204.204 INFO    ] Checking for camera pi updates...
[2026-10-25 13:03:14,241.241 INFO    ] 200
[2026-10-25 13:03:14,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:14,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:03:14,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:14,458.458 INFO    ] No camera update needed
[2026-10-25 13:03:14,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:03:14,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:03:14,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:03:14,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:03:16,514.514 INFO    ] ================================================
[2026-10-25 13:03:16,529.529 INFO    ] Launching Daemon at Sun Oct 25 13:03:16 IST 2026
[2026-10-25 13:03:16,540.540 INFO    ] ================================================
[2026-10-25 13:03:17,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:03:17
[2026-10-25 13:03:17,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:03:17,995.995 INFO    ] Initializing speech engine...
[2026-10-25 13:03:18,022.022 INFO    ] 2026-10-25 13:03:18
[2026-10-25 13:03:18,289.289 INFO    ] 2026-10-25 13:03:18
[2026-10-25 13:03:18,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:03:18,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:03:18,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:03:18,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:03:18,653.653 INFO    ] time= 25/10/2026 13:03:18
[2026-10-25 13:03:18,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:03:18,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:03:18,774.774 INFO    ] No existing commands found in stream
[2026-10-25 13:03:23,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:03:23,793.793 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 13:03:30,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:03:30,824.824 INFO    ] Checking for system updates...
[2026-10-25 13:03:30,867.867 INFO    ] 200
[2026-10-25 13:03:30,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:30,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:03:30,934.934 INFO    ] No update needed
[2026-10-25 13:03:30,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 13:03:30,975.975 INFO    ] 200
[2026-10-25 13:03:30,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:31,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:03:31,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:03:31,088.088 INFO    ] No camera update needed
[2026-10-25 13:03:31,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:03:31,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:03:31,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:03:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:03:33,144.144 INFO    ] ================================================
[2026-10-25 13:03:33,160.160 INFO    ] Launching Daemon at Sun Oct 25 13:03:33 IST 2026
[2026-10-25 13:03:33,171.171 INFO    ] ================================================
[2026-10-25 13:03:33,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:03:33
[2026-10-25 13:03:34,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:03:34,573.573 INFO    ] Initializing speech engine...
[2026-10-25 13:03:34,582.582 INFO    ] 2026-10-25 13:03:34
[2026-10-25 13:03:34,870.870 INFO    ] 2026-10-25 13:03:34
[2026-10-25 13:03:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:03:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:03:35,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:03:35,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:03:35,958.958 INFO    ] time= 25/10/2026 13:03:35
[2026-10-25 13:03:35,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:03:35,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:03:36,102.102 INFO    ] No existing commands found in stream
[2026-10-25 13:03:41,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:03:41,130.130 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 13:03:45,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:03:45,553.553 INFO    ] Checking for system updates...
[2026-10-25 13:03:45,592.592 INFO    ] 200
[2026-10-25 13:03:45,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:45,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:45,654.654 INFO    ] No update needed
[2026-10-25 13:03:45,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 13:03:45,691.691 INFO    ] 200
[2026-10-25 13:03:45,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:45,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:03:45,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:03:45,787.787 INFO    ] No camera update needed
[2026-10-25 13:03:45,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:03:45,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:03:45,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:03:45,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:03:47,843.843 INFO    ] ================================================
[2026-10-25 13:03:47,858.858 INFO    ] Launching Daemon at Sun Oct 25 13:03:47 IST 2026
[2026-10-25 13:03:47,870.870 INFO    ] ================================================
[2026-10-25 13:03:48,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:03:48
[2026-10-25 13:03:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:03:49,445.445 INFO    ] Initializing speech engine...
[2026-10-25 13:03:49,455.455 INFO    ] 2026-10-25 13:03:49
[2026-10-25 13:03:49,720.720 INFO    ] 2026-10-25 13:03:49
[2026-10-25 13:03:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:03:50,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:03:50,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:03:50,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:03:50,207.207 INFO    ] time= 25/10/2026 13:03:50
[2026-10-25 13:03:50,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:03:50,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:03:50,352.352 INFO    ] No existing commands found in stream
[2026-10-25 13:03:55,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:03:55,366.366 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 13:03:57,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:03:57,149.149 INFO    ] Checking for system updates...
[2026-10-25 13:03:57,189.189 INFO    ] 200
[2026-10-25 13:03:57,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:57,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:03:57,259.259 INFO    ] No update needed
[2026-10-25 13:03:57,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 13:03:57,296.296 INFO    ] 200
[2026-10-25 13:03:57,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:03:57,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:03:57,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:03:57,400.400 INFO    ] No camera update needed
[2026-10-25 13:03:57,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:03:57,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:03:57,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:03:57,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:03:59,459.459 INFO    ] ================================================
[2026-10-25 13:03:59,474.474 INFO    ] Launching Daemon at Sun Oct 25 13:03:59 IST 2026
[2026-10-25 13:03:59,484.484 INFO    ] ================================================
[2026-10-25 13:04:00,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:04:00
[2026-10-25 13:04:00,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:04:00,924.924 INFO    ] Initializing speech engine...
[2026-10-25 13:04:00,949.949 INFO    ] 2026-10-25 13:04:00
[2026-10-25 13:04:01,275.275 INFO    ] 2026-10-25 13:04:01
[2026-10-25 13:04:01,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:04:01,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:04:01,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:04:02,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:04:02,246.246 INFO    ] time= 25/10/2026 13:04:02
[2026-10-25 13:04:02,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:04:02,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:04:02,463.463 INFO    ] No existing commands found in stream
[2026-10-25 13:04:07,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:04:07,489.489 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 13:04:09,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:04:09,603.603 INFO    ] Checking for system updates...
[2026-10-25 13:04:09,639.639 INFO    ] 200
[2026-10-25 13:04:09,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:09,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:04:09,697.697 INFO    ] No update needed
[2026-10-25 13:04:09,700.700 INFO    ] Checking for camera pi updates...
[2026-10-25 13:04:09,735.735 INFO    ] 200
[2026-10-25 13:04:09,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:09,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:04:09,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:04:09,848.848 INFO    ] No camera update needed
[2026-10-25 13:04:09,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:04:09,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:04:09,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:04:09,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:04:11,902.902 INFO    ] ================================================
[2026-10-25 13:04:11,917.917 INFO    ] Launching Daemon at Sun Oct 25 13:04:11 IST 2026
[2026-10-25 13:04:11,928.928 INFO    ] ================================================
[2026-10-25 13:04:12,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:04:12
[2026-10-25 13:04:13,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:04:13,408.408 INFO    ] Initializing speech engine...
[2026-10-25 13:04:13,418.418 INFO    ] 2026-10-25 13:04:13
[2026-10-25 13:04:13,685.685 INFO    ] 2026-10-25 13:04:13
[2026-10-25 13:04:13,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:04:13,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:04:13,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:04:14,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:04:14,066.066 INFO    ] time= 25/10/2026 13:04:14
[2026-10-25 13:04:14,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:04:14,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:04:14,191.191 INFO    ] No existing commands found in stream
[2026-10-25 13:04:19,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:04:19,206.206 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 13:04:21,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:04:21,775.775 INFO    ] Checking for system updates...
[2026-10-25 13:04:21,815.815 INFO    ] 200
[2026-10-25 13:04:21,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:21,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:21,879.879 INFO    ] No update needed
[2026-10-25 13:04:21,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 13:04:21,919.919 INFO    ] 200
[2026-10-25 13:04:21,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:21,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:04:22,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:22,017.017 INFO    ] No camera update needed
[2026-10-25 13:04:22,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:04:22,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:04:22,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:04:22,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:04:24,073.073 INFO    ] ================================================
[2026-10-25 13:04:24,088.088 INFO    ] Launching Daemon at Sun Oct 25 13:04:24 IST 2026
[2026-10-25 13:04:24,099.099 INFO    ] ================================================
[2026-10-25 13:04:24,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:04:24
[2026-10-25 13:04:25,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:04:25,551.551 INFO    ] Initializing speech engine...
[2026-10-25 13:04:25,566.566 INFO    ] 2026-10-25 13:04:25
[2026-10-25 13:04:25,822.822 INFO    ] 2026-10-25 13:04:25
[2026-10-25 13:04:25,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:04:26,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:04:26,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:04:26,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:04:26,199.199 INFO    ] time= 25/10/2026 13:04:26
[2026-10-25 13:04:26,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:04:26,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:04:26,360.360 INFO    ] No existing commands found in stream
[2026-10-25 13:04:31,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:04:31,394.394 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 13:04:33,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:04:33,120.120 INFO    ] Checking for system updates...
[2026-10-25 13:04:33,158.158 INFO    ] 200
[2026-10-25 13:04:33,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:33,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:33,226.226 INFO    ] No update needed
[2026-10-25 13:04:33,229.229 INFO    ] Checking for camera pi updates...
[2026-10-25 13:04:33,265.265 INFO    ] 200
[2026-10-25 13:04:33,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:33,349.349 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:04:33,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:33,413.413 INFO    ] No camera update needed
[2026-10-25 13:04:33,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:04:33,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:04:33,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:04:33,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:04:35,474.474 INFO    ] ================================================
[2026-10-25 13:04:35,490.490 INFO    ] Launching Daemon at Sun Oct 25 13:04:35 IST 2026
[2026-10-25 13:04:35,502.502 INFO    ] ================================================
[2026-10-25 13:04:38,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:04:36
[2026-10-25 13:04:39,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:04:39,734.734 INFO    ] Initializing speech engine...
[2026-10-25 13:04:39,744.744 INFO    ] 2026-10-25 13:04:39
[2026-10-25 13:04:40,006.006 INFO    ] 2026-10-25 13:04:39
[2026-10-25 13:04:40,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:04:40,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:04:40,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:04:40,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:04:40,459.459 INFO    ] time= 25/10/2026 13:04:40
[2026-10-25 13:04:40,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:04:40,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:04:40,613.613 INFO    ] No existing commands found in stream
[2026-10-25 13:04:45,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:04:45,638.638 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 13:04:48,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:04:48,545.545 INFO    ] Checking for system updates...
[2026-10-25 13:04:48,582.582 INFO    ] 200
[2026-10-25 13:04:48,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:48,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:48,647.647 INFO    ] No update needed
[2026-10-25 13:04:48,650.650 INFO    ] Checking for camera pi updates...
[2026-10-25 13:04:48,685.685 INFO    ] 200
[2026-10-25 13:04:48,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:04:48,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:04:48,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:04:48,794.794 INFO    ] No camera update needed
[2026-10-25 13:04:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:04:48,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:04:48,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:04:48,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:04:50,851.851 INFO    ] ================================================
[2026-10-25 13:04:50,867.867 INFO    ] Launching Daemon at Sun Oct 25 13:04:50 IST 2026
[2026-10-25 13:04:50,879.879 INFO    ] ================================================
[2026-10-25 13:04:51,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:04:51
[2026-10-25 13:04:52,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:04:52,337.337 INFO    ] Initializing speech engine...
[2026-10-25 13:04:52,347.347 INFO    ] 2026-10-25 13:04:52
[2026-10-25 13:04:52,607.607 INFO    ] 2026-10-25 13:04:52
[2026-10-25 13:04:52,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:04:52,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:04:52,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:04:53,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:04:53,065.065 INFO    ] time= 25/10/2026 13:04:53
[2026-10-25 13:04:53,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:04:53,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:04:53,209.209 INFO    ] No existing commands found in stream
[2026-10-25 13:04:58,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:04:58,224.224 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 13:05:04,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:05:04,311.311 INFO    ] Checking for system updates...
[2026-10-25 13:05:04,362.362 INFO    ] 200
[2026-10-25 13:05:04,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:05:04,368.368 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 13:05:04,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 13:05:04,415.415 INFO    ] 200
[2026-10-25 13:05:04,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:05:04,420.420 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 13:05:04,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:05:04,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:05:04,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:05:04,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:05:06,481.481 INFO    ] ================================================
[2026-10-25 13:05:06,497.497 INFO    ] Launching Daemon at Sun Oct 25 13:05:06 IST 2026
[2026-10-25 13:05:06,508.508 INFO    ] ================================================
[2026-10-25 13:05:07,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:05:07
[2026-10-25 13:05:07,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:05:08,063.063 INFO    ] Initializing speech engine...
[2026-10-25 13:05:08,073.073 INFO    ] 2026-10-25 13:05:08
[2026-10-25 13:05:08,338.338 INFO    ] 2026-10-25 13:05:08
[2026-10-25 13:05:08,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:05:08,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:05:08,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:05:08,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:05:08,789.789 INFO    ] time= 25/10/2026 13:05:08
[2026-10-25 13:05:08,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:05:08,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:05:09,011.011 INFO    ] No existing commands found in stream
[2026-10-25 13:05:14,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:05:14,042.042 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 13:05:15,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:05:15,185.185 INFO    ] Checking for system updates...
[2026-10-25 13:05:15,226.226 INFO    ] 200
[2026-10-25 13:05:15,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:15,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:05:15,295.295 INFO    ] No update needed
[2026-10-25 13:05:15,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 13:05:15,332.332 INFO    ] 200
[2026-10-25 13:05:15,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:15,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:05:15,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:05:15,540.540 INFO    ] No camera update needed
[2026-10-25 13:05:15,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:05:15,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:05:15,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:05:15,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:05:17,600.600 INFO    ] ================================================
[2026-10-25 13:05:17,616.616 INFO    ] Launching Daemon at Sun Oct 25 13:05:17 IST 2026
[2026-10-25 13:05:17,628.628 INFO    ] ================================================
[2026-10-25 13:05:18,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:05:18
[2026-10-25 13:05:18,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:05:19,216.216 INFO    ] Initializing speech engine...
[2026-10-25 13:05:19,223.223 INFO    ] 2026-10-25 13:05:19
[2026-10-25 13:05:19,504.504 INFO    ] 2026-10-25 13:05:19
[2026-10-25 13:05:19,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:05:19,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:05:19,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:05:19,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:05:19,858.858 INFO    ] time= 25/10/2026 13:05:19
[2026-10-25 13:05:19,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:05:19,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:05:19,943.943 INFO    ] No existing commands found in stream
[2026-10-25 13:05:24,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:05:24,957.957 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 13:05:25,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:05:25,909.909 INFO    ] Checking for system updates...
[2026-10-25 13:05:25,951.951 INFO    ] 200
[2026-10-25 13:05:25,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:26,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:05:26,015.015 INFO    ] No update needed
[2026-10-25 13:05:26,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 13:05:26,051.051 INFO    ] 200
[2026-10-25 13:05:26,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:26,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:05:26,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:05:26,149.149 INFO    ] No camera update needed
[2026-10-25 13:05:26,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:05:26,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:05:26,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:05:26,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:05:28,205.205 INFO    ] ================================================
[2026-10-25 13:05:28,221.221 INFO    ] Launching Daemon at Sun Oct 25 13:05:28 IST 2026
[2026-10-25 13:05:28,233.233 INFO    ] ================================================
[2026-10-25 13:05:28,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:05:28
[2026-10-25 13:05:29,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:05:29,654.654 INFO    ] Initializing speech engine...
[2026-10-25 13:05:29,660.660 INFO    ] 2026-10-25 13:05:29
[2026-10-25 13:05:29,955.955 INFO    ] 2026-10-25 13:05:29
[2026-10-25 13:05:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:05:30,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:05:30,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:05:30,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:05:30,318.318 INFO    ] time= 25/10/2026 13:05:30
[2026-10-25 13:05:30,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:05:30,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:05:30,399.399 INFO    ] No existing commands found in stream
[2026-10-25 13:05:35,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:05:35,413.413 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 13:05:39,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:05:39,359.359 INFO    ] Checking for system updates...
[2026-10-25 13:05:39,399.399 INFO    ] 200
[2026-10-25 13:05:39,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:39,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:05:39,457.457 INFO    ] No update needed
[2026-10-25 13:05:39,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 13:05:39,493.493 INFO    ] 200
[2026-10-25 13:05:39,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:39,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:05:39,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:05:39,570.570 INFO    ] No camera update needed
[2026-10-25 13:05:39,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:05:39,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:05:39,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:05:39,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:05:41,624.624 INFO    ] ================================================
[2026-10-25 13:05:41,639.639 INFO    ] Launching Daemon at Sun Oct 25 13:05:41 IST 2026
[2026-10-25 13:05:41,651.651 INFO    ] ================================================
[2026-10-25 13:05:42,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:05:42
[2026-10-25 13:05:43,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:05:43,324.324 INFO    ] Initializing speech engine...
[2026-10-25 13:05:43,333.333 INFO    ] 2026-10-25 13:05:43
[2026-10-25 13:05:43,623.623 INFO    ] 2026-10-25 13:05:43
[2026-10-25 13:05:43,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:05:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:05:43,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:05:44,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:05:44,087.087 INFO    ] time= 25/10/2026 13:05:44
[2026-10-25 13:05:44,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:05:44,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:05:44,265.265 INFO    ] No existing commands found in stream
[2026-10-25 13:05:49,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:05:49,306.306 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 13:05:50,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:05:50,462.462 INFO    ] Checking for system updates...
[2026-10-25 13:05:50,499.499 INFO    ] 200
[2026-10-25 13:05:50,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:50,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:05:50,560.560 INFO    ] No update needed
[2026-10-25 13:05:50,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 13:05:50,597.597 INFO    ] 200
[2026-10-25 13:05:50,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:05:50,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:05:50,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:05:50,699.699 INFO    ] No camera update needed
[2026-10-25 13:05:50,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:05:50,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:05:50,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:05:50,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:05:52,754.754 INFO    ] ================================================
[2026-10-25 13:05:52,770.770 INFO    ] Launching Daemon at Sun Oct 25 13:05:52 IST 2026
[2026-10-25 13:05:52,782.782 INFO    ] ================================================
[2026-10-25 13:05:53,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:05:53
[2026-10-25 13:05:54,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:05:54,449.449 INFO    ] Initializing speech engine...
[2026-10-25 13:05:54,458.458 INFO    ] 2026-10-25 13:05:54
[2026-10-25 13:05:54,778.778 INFO    ] 2026-10-25 13:05:54
[2026-10-25 13:05:54,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:05:55,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:05:55,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:05:55,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:05:55,202.202 INFO    ] time= 25/10/2026 13:05:55
[2026-10-25 13:05:55,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:05:55,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:05:55,369.369 INFO    ] No existing commands found in stream
[2026-10-25 13:06:00,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:06:00,405.405 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 13:06:01,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:06:01,092.092 INFO    ] Checking for system updates...
[2026-10-25 13:06:01,133.133 INFO    ] 200
[2026-10-25 13:06:01,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:01,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:01,195.195 INFO    ] No update needed
[2026-10-25 13:06:01,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 13:06:01,232.232 INFO    ] 200
[2026-10-25 13:06:01,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:01,275.275 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:06:01,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:01,323.323 INFO    ] No camera update needed
[2026-10-25 13:06:01,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:06:01,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:06:01,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:06:01,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:06:03,378.378 INFO    ] ================================================
[2026-10-25 13:06:03,394.394 INFO    ] Launching Daemon at Sun Oct 25 13:06:03 IST 2026
[2026-10-25 13:06:03,405.405 INFO    ] ================================================
[2026-10-25 13:06:03,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:06:03
[2026-10-25 13:06:04,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:06:04,877.877 INFO    ] Initializing speech engine...
[2026-10-25 13:06:04,886.886 INFO    ] 2026-10-25 13:06:04
[2026-10-25 13:06:05,160.160 INFO    ] 2026-10-25 13:06:05
[2026-10-25 13:06:05,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:06:06,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:06:06,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:06:07,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:06:07,222.222 INFO    ] time= 25/10/2026 13:06:07
[2026-10-25 13:06:07,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:06:07,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:06:07,285.285 INFO    ] No existing commands found in stream
[2026-10-25 13:06:12,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:06:12,300.300 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 13:06:16,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:06:16,674.674 INFO    ] Checking for system updates...
[2026-10-25 13:06:16,713.713 INFO    ] 200
[2026-10-25 13:06:16,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:16,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:16,772.772 INFO    ] No update needed
[2026-10-25 13:06:16,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 13:06:16,808.808 INFO    ] 200
[2026-10-25 13:06:16,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:16,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:06:16,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:16,909.909 INFO    ] No camera update needed
[2026-10-25 13:06:16,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:06:16,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:06:16,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:06:16,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:06:18,964.964 INFO    ] ================================================
[2026-10-25 13:06:18,979.979 INFO    ] Launching Daemon at Sun Oct 25 13:06:18 IST 2026
[2026-10-25 13:06:18,990.990 INFO    ] ================================================
[2026-10-25 13:06:19,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:06:19
[2026-10-25 13:06:20,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:06:20,469.469 INFO    ] Initializing speech engine...
[2026-10-25 13:06:20,476.476 INFO    ] 2026-10-25 13:06:20
[2026-10-25 13:06:20,736.736 INFO    ] 2026-10-25 13:06:20
[2026-10-25 13:06:20,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:06:21,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:06:21,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:06:21,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:06:21,126.126 INFO    ] time= 25/10/2026 13:06:21
[2026-10-25 13:06:21,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:06:21,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:06:21,240.240 INFO    ] No existing commands found in stream
[2026-10-25 13:06:26,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:06:26,268.268 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 13:06:27,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:06:27,792.792 INFO    ] Checking for system updates...
[2026-10-25 13:06:27,828.828 INFO    ] 200
[2026-10-25 13:06:27,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:27,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:06:27,904.904 INFO    ] No update needed
[2026-10-25 13:06:27,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 13:06:27,946.946 INFO    ] 200
[2026-10-25 13:06:27,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:28,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:06:28,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:06:28,065.065 INFO    ] No camera update needed
[2026-10-25 13:06:28,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:06:28,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:06:28,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:06:28,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:06:30,121.121 INFO    ] ================================================
[2026-10-25 13:06:30,137.137 INFO    ] Launching Daemon at Sun Oct 25 13:06:30 IST 2026
[2026-10-25 13:06:30,148.148 INFO    ] ================================================
[2026-10-25 13:06:30,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:06:30
[2026-10-25 13:06:31,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:06:31,606.606 INFO    ] Initializing speech engine...
[2026-10-25 13:06:31,615.615 INFO    ] 2026-10-25 13:06:31
[2026-10-25 13:06:31,873.873 INFO    ] 2026-10-25 13:06:31
[2026-10-25 13:06:31,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:06:32,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:06:32,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:06:32,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:06:32,351.351 INFO    ] time= 25/10/2026 13:06:32
[2026-10-25 13:06:32,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:06:32,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:06:32,583.583 INFO    ] No existing commands found in stream
[2026-10-25 13:06:37,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:06:37,620.620 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 13:06:41,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:06:41,310.310 INFO    ] Checking for system updates...
[2026-10-25 13:06:41,347.347 INFO    ] 200
[2026-10-25 13:06:41,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:41,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:41,412.412 INFO    ] No update needed
[2026-10-25 13:06:41,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 13:06:41,464.464 INFO    ] 200
[2026-10-25 13:06:41,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:41,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:06:41,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:06:41,566.566 INFO    ] No camera update needed
[2026-10-25 13:06:41,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:06:41,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:06:41,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:06:41,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:06:43,623.623 INFO    ] ================================================
[2026-10-25 13:06:43,638.638 INFO    ] Launching Daemon at Sun Oct 25 13:06:43 IST 2026
[2026-10-25 13:06:43,649.649 INFO    ] ================================================
[2026-10-25 13:06:44,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:06:44
[2026-10-25 13:06:44,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:06:45,273.273 INFO    ] Initializing speech engine...
[2026-10-25 13:06:45,285.285 INFO    ] 2026-10-25 13:06:45
[2026-10-25 13:06:45,562.562 INFO    ] 2026-10-25 13:06:45
[2026-10-25 13:06:45,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:06:45,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:06:45,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:06:45,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:06:46,065.065 INFO    ] time= 25/10/2026 13:06:46
[2026-10-25 13:06:46,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:06:46,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:06:46,249.249 INFO    ] No existing commands found in stream
[2026-10-25 13:06:51,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:06:51,281.281 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 13:06:52,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:06:52,415.415 INFO    ] Checking for system updates...
[2026-10-25 13:06:52,454.454 INFO    ] 200
[2026-10-25 13:06:52,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:52,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:06:52,525.525 INFO    ] No update needed
[2026-10-25 13:06:52,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 13:06:52,567.567 INFO    ] 200
[2026-10-25 13:06:52,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:06:52,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:06:52,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:06:52,684.684 INFO    ] No camera update needed
[2026-10-25 13:06:52,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:06:52,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:06:52,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:06:52,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:06:54,740.740 INFO    ] ================================================
[2026-10-25 13:06:54,755.755 INFO    ] Launching Daemon at Sun Oct 25 13:06:54 IST 2026
[2026-10-25 13:06:54,766.766 INFO    ] ================================================
[2026-10-25 13:06:55,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:06:55
[2026-10-25 13:06:56,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:06:56,392.392 INFO    ] Initializing speech engine...
[2026-10-25 13:06:56,401.401 INFO    ] 2026-10-25 13:06:56
[2026-10-25 13:06:56,693.693 INFO    ] 2026-10-25 13:06:56
[2026-10-25 13:06:56,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:06:56,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:06:56,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:06:57,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:06:57,161.161 INFO    ] time= 25/10/2026 13:06:57
[2026-10-25 13:06:57,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:06:57,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:06:57,320.320 INFO    ] No existing commands found in stream
[2026-10-25 13:07:02,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:07:02,358.358 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 13:07:09,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:07:09,753.753 INFO    ] Checking for system updates...
[2026-10-25 13:07:09,791.791 INFO    ] 200
[2026-10-25 13:07:09,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:09,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:07:09,851.851 INFO    ] No update needed
[2026-10-25 13:07:09,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 13:07:09,893.893 INFO    ] 200
[2026-10-25 13:07:09,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:09,944.944 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:07:10,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:07:10,008.008 INFO    ] No camera update needed
[2026-10-25 13:07:10,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:07:10,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:07:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:07:10,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:07:12,067.067 INFO    ] ================================================
[2026-10-25 13:07:12,083.083 INFO    ] Launching Daemon at Sun Oct 25 13:07:12 IST 2026
[2026-10-25 13:07:12,094.094 INFO    ] ================================================
[2026-10-25 13:07:12,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:07:12
[2026-10-25 13:07:13,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:07:13,730.730 INFO    ] Initializing speech engine...
[2026-10-25 13:07:13,742.742 INFO    ] 2026-10-25 13:07:13
[2026-10-25 13:07:14,051.051 INFO    ] 2026-10-25 13:07:14
[2026-10-25 13:07:14,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:07:14,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:07:14,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:07:14,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:07:14,555.555 INFO    ] time= 25/10/2026 13:07:14
[2026-10-25 13:07:14,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:07:14,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:07:14,711.711 INFO    ] No existing commands found in stream
[2026-10-25 13:07:19,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:07:19,734.734 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 13:07:23,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:07:23,891.891 INFO    ] Checking for system updates...
[2026-10-25 13:07:23,928.928 INFO    ] 200
[2026-10-25 13:07:23,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:23,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:07:23,996.996 INFO    ] No update needed
[2026-10-25 13:07:23,999.999 INFO    ] Checking for camera pi updates...
[2026-10-25 13:07:24,034.034 INFO    ] 200
[2026-10-25 13:07:24,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:24,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:07:24,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:07:24,253.253 INFO    ] No camera update needed
[2026-10-25 13:07:24,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:07:24,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:07:24,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:07:24,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:07:26,312.312 INFO    ] ================================================
[2026-10-25 13:07:26,326.326 INFO    ] Launching Daemon at Sun Oct 25 13:07:26 IST 2026
[2026-10-25 13:07:26,337.337 INFO    ] ================================================
[2026-10-25 13:07:27,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:07:27
[2026-10-25 13:07:27,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:07:28,021.021 INFO    ] Initializing speech engine...
[2026-10-25 13:07:28,032.032 INFO    ] 2026-10-25 13:07:28
[2026-10-25 13:07:28,300.300 INFO    ] 2026-10-25 13:07:28
[2026-10-25 13:07:28,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:07:28,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:07:28,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:07:28,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:07:28,784.784 INFO    ] time= 25/10/2026 13:07:28
[2026-10-25 13:07:28,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:07:28,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:07:28,963.963 INFO    ] No existing commands found in stream
[2026-10-25 13:07:33,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:07:33,999.999 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 13:07:36,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:07:36,599.599 INFO    ] Checking for system updates...
[2026-10-25 13:07:36,637.637 INFO    ] 200
[2026-10-25 13:07:36,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:36,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:07:36,706.706 INFO    ] No update needed
[2026-10-25 13:07:36,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 13:07:36,748.748 INFO    ] 200
[2026-10-25 13:07:36,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:36,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:07:36,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:07:36,856.856 INFO    ] No camera update needed
[2026-10-25 13:07:36,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:07:36,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:07:36,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:07:36,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:07:38,914.914 INFO    ] ================================================
[2026-10-25 13:07:38,929.929 INFO    ] Launching Daemon at Sun Oct 25 13:07:38 IST 2026
[2026-10-25 13:07:38,940.940 INFO    ] ================================================
[2026-10-25 13:07:39,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:07:39
[2026-10-25 13:07:40,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:07:40,361.361 INFO    ] Initializing speech engine...
[2026-10-25 13:07:40,370.370 INFO    ] 2026-10-25 13:07:40
[2026-10-25 13:07:40,621.621 INFO    ] 2026-10-25 13:07:40
[2026-10-25 13:07:40,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:07:41,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:07:41,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:07:41,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:07:41,355.355 INFO    ] time= 25/10/2026 13:07:41
[2026-10-25 13:07:41,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:07:41,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:07:41,571.571 INFO    ] No existing commands found in stream
[2026-10-25 13:07:46,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:07:46,604.604 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 13:07:48,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:07:48,763.763 INFO    ] Checking for system updates...
[2026-10-25 13:07:48,799.799 INFO    ] 200
[2026-10-25 13:07:48,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:48,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:07:48,859.859 INFO    ] No update needed
[2026-10-25 13:07:48,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 13:07:48,900.900 INFO    ] 200
[2026-10-25 13:07:48,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:07:48,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:07:48,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:07:48,997.997 INFO    ] No camera update needed
[2026-10-25 13:07:49,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:07:49,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:07:49,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:07:49,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:07:51,053.053 INFO    ] ================================================
[2026-10-25 13:07:51,069.069 INFO    ] Launching Daemon at Sun Oct 25 13:07:51 IST 2026
[2026-10-25 13:07:51,080.080 INFO    ] ================================================
[2026-10-25 13:07:51,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:07:51
[2026-10-25 13:07:52,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:07:52,767.767 INFO    ] Initializing speech engine...
[2026-10-25 13:07:52,776.776 INFO    ] 2026-10-25 13:07:52
[2026-10-25 13:07:53,059.059 INFO    ] 2026-10-25 13:07:53
[2026-10-25 13:07:53,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:07:53,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:07:53,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:07:53,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:07:53,524.524 INFO    ] time= 25/10/2026 13:07:53
[2026-10-25 13:07:53,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:07:53,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:07:53,724.724 INFO    ] No existing commands found in stream
[2026-10-25 13:07:58,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:07:58,765.765 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 13:08:01,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:08:01,996.996 INFO    ] Checking for system updates...
[2026-10-25 13:08:02,070.070 INFO    ] 200
[2026-10-25 13:08:02,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:02,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:02,195.195 INFO    ] No update needed
[2026-10-25 13:08:02,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 13:08:02,242.242 INFO    ] 200
[2026-10-25 13:08:02,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:02,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:08:02,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:02,398.398 INFO    ] No camera update needed
[2026-10-25 13:08:02,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:08:02,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:08:02,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:08:02,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:08:04,462.462 INFO    ] ================================================
[2026-10-25 13:08:04,477.477 INFO    ] Launching Daemon at Sun Oct 25 13:08:04 IST 2026
[2026-10-25 13:08:04,489.489 INFO    ] ================================================
[2026-10-25 13:08:05,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:08:05
[2026-10-25 13:08:05,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:08:05,919.919 INFO    ] Initializing speech engine...
[2026-10-25 13:08:05,944.944 INFO    ] 2026-10-25 13:08:05
[2026-10-25 13:08:06,212.212 INFO    ] 2026-10-25 13:08:06
[2026-10-25 13:08:06,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:08:06,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:08:06,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:08:06,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:08:06,584.584 INFO    ] time= 25/10/2026 13:08:06
[2026-10-25 13:08:06,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:08:06,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:08:06,706.706 INFO    ] No existing commands found in stream
[2026-10-25 13:08:11,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:08:11,721.721 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 13:08:15,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:08:15,249.249 INFO    ] Checking for system updates...
[2026-10-25 13:08:15,290.290 INFO    ] 200
[2026-10-25 13:08:15,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:15,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:15,354.354 INFO    ] No update needed
[2026-10-25 13:08:15,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 13:08:15,395.395 INFO    ] 200
[2026-10-25 13:08:15,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:15,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:08:15,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:15,488.488 INFO    ] No camera update needed
[2026-10-25 13:08:15,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:08:15,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:08:15,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:08:15,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:08:17,553.553 INFO    ] ================================================
[2026-10-25 13:08:17,568.568 INFO    ] Launching Daemon at Sun Oct 25 13:08:17 IST 2026
[2026-10-25 13:08:17,579.579 INFO    ] ================================================
[2026-10-25 13:08:18,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:08:18
[2026-10-25 13:08:18,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:08:19,163.163 INFO    ] Initializing speech engine...
[2026-10-25 13:08:19,174.174 INFO    ] 2026-10-25 13:08:19
[2026-10-25 13:08:19,458.458 INFO    ] 2026-10-25 13:08:19
[2026-10-25 13:08:19,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:08:19,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:08:19,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:08:19,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:08:19,993.993 INFO    ] time= 25/10/2026 13:08:19
[2026-10-25 13:08:20,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:08:20,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:08:20,132.132 INFO    ] No existing commands found in stream
[2026-10-25 13:08:25,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:08:25,161.161 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 13:08:27,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:08:27,961.961 INFO    ] Checking for system updates...
[2026-10-25 13:08:27,999.999 INFO    ] 200
[2026-10-25 13:08:28,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:28,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:28,058.058 INFO    ] No update needed
[2026-10-25 13:08:28,061.061 INFO    ] Checking for camera pi updates...
[2026-10-25 13:08:28,102.102 INFO    ] 200
[2026-10-25 13:08:28,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:28,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:08:28,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:28,211.211 INFO    ] No camera update needed
[2026-10-25 13:08:28,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:08:28,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:08:28,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:08:28,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:08:30,268.268 INFO    ] ================================================
[2026-10-25 13:08:30,284.284 INFO    ] Launching Daemon at Sun Oct 25 13:08:30 IST 2026
[2026-10-25 13:08:30,296.296 INFO    ] ================================================
[2026-10-25 13:08:30,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:08:30
[2026-10-25 13:08:31,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:08:31,722.722 INFO    ] Initializing speech engine...
[2026-10-25 13:08:31,737.737 INFO    ] 2026-10-25 13:08:31
[2026-10-25 13:08:32,021.021 INFO    ] 2026-10-25 13:08:31
[2026-10-25 13:08:32,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:08:32,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:08:32,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:08:32,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:08:32,423.423 INFO    ] time= 25/10/2026 13:08:32
[2026-10-25 13:08:32,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:08:32,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:08:32,598.598 INFO    ] No existing commands found in stream
[2026-10-25 13:08:37,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:08:37,631.631 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 13:08:42,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:08:42,927.927 INFO    ] Checking for system updates...
[2026-10-25 13:08:42,963.963 INFO    ] 200
[2026-10-25 13:08:42,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:43,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:43,026.026 INFO    ] No update needed
[2026-10-25 13:08:43,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 13:08:43,062.062 INFO    ] 200
[2026-10-25 13:08:43,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:43,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:08:43,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:08:43,161.161 INFO    ] No camera update needed
[2026-10-25 13:08:43,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:08:43,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:08:43,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:08:43,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:08:45,219.219 INFO    ] ================================================
[2026-10-25 13:08:45,235.235 INFO    ] Launching Daemon at Sun Oct 25 13:08:45 IST 2026
[2026-10-25 13:08:45,246.246 INFO    ] ================================================
[2026-10-25 13:08:45,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:08:45
[2026-10-25 13:08:46,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:08:46,694.694 INFO    ] Initializing speech engine...
[2026-10-25 13:08:46,701.701 INFO    ] 2026-10-25 13:08:46
[2026-10-25 13:08:46,962.962 INFO    ] 2026-10-25 13:08:46
[2026-10-25 13:08:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:08:47,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:08:47,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:08:47,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:08:47,435.435 INFO    ] time= 25/10/2026 13:08:47
[2026-10-25 13:08:47,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:08:47,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:08:47,623.623 INFO    ] No existing commands found in stream
[2026-10-25 13:08:52,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:08:52,648.648 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 13:08:55,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:08:55,590.590 INFO    ] Checking for system updates...
[2026-10-25 13:08:55,629.629 INFO    ] 200
[2026-10-25 13:08:55,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:55,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:08:55,698.698 INFO    ] No update needed
[2026-10-25 13:08:55,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 13:08:55,740.740 INFO    ] 200
[2026-10-25 13:08:55,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:08:55,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:08:55,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:08:55,852.852 INFO    ] No camera update needed
[2026-10-25 13:08:55,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:08:55,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:08:55,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:08:55,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:08:57,912.912 INFO    ] ================================================
[2026-10-25 13:08:57,927.927 INFO    ] Launching Daemon at Sun Oct 25 13:08:57 IST 2026
[2026-10-25 13:08:57,938.938 INFO    ] ================================================
[2026-10-25 13:08:58,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:08:58
[2026-10-25 13:08:59,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:08:59,340.340 INFO    ] Initializing speech engine...
[2026-10-25 13:08:59,355.355 INFO    ] 2026-10-25 13:08:59
[2026-10-25 13:08:59,621.621 INFO    ] 2026-10-25 13:08:59
[2026-10-25 13:08:59,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:08:59,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:08:59,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:09:00,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:09:00,066.066 INFO    ] time= 25/10/2026 13:09:00
[2026-10-25 13:09:00,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:09:00,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:09:00,254.254 INFO    ] No existing commands found in stream
[2026-10-25 13:09:05,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:09:05,269.269 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 13:09:05,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:09:05,934.934 INFO    ] Checking for system updates...
[2026-10-25 13:09:05,970.970 INFO    ] 200
[2026-10-25 13:09:05,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:06,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:06,029.029 INFO    ] No update needed
[2026-10-25 13:09:06,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 13:09:06,066.066 INFO    ] 200
[2026-10-25 13:09:06,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:06,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:09:06,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:06,169.169 INFO    ] No camera update needed
[2026-10-25 13:09:06,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:09:06,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:09:06,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:09:06,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:09:08,225.225 INFO    ] ================================================
[2026-10-25 13:09:08,241.241 INFO    ] Launching Daemon at Sun Oct 25 13:09:08 IST 2026
[2026-10-25 13:09:08,251.251 INFO    ] ================================================
[2026-10-25 13:09:08,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:09:08
[2026-10-25 13:09:09,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:09:09,814.814 INFO    ] Initializing speech engine...
[2026-10-25 13:09:09,823.823 INFO    ] 2026-10-25 13:09:09
[2026-10-25 13:09:10,067.067 INFO    ] 2026-10-25 13:09:10
[2026-10-25 13:09:10,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:09:13,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:09:13,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:09:14,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:09:14,197.197 INFO    ] time= 25/10/2026 13:09:14
[2026-10-25 13:09:14,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:09:14,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:09:14,241.241 INFO    ] No existing commands found in stream
[2026-10-25 13:09:19,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:09:19,253.253 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 13:09:22,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:09:22,567.567 INFO    ] Checking for system updates...
[2026-10-25 13:09:22,604.604 INFO    ] 200
[2026-10-25 13:09:22,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:22,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:09:22,663.663 INFO    ] No update needed
[2026-10-25 13:09:22,666.666 INFO    ] Checking for camera pi updates...
[2026-10-25 13:09:22,701.701 INFO    ] 200
[2026-10-25 13:09:22,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:22,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:09:22,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:09:22,805.805 INFO    ] No camera update needed
[2026-10-25 13:09:22,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:09:22,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:09:22,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:09:22,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:09:24,864.864 INFO    ] ================================================
[2026-10-25 13:09:24,885.885 INFO    ] Launching Daemon at Sun Oct 25 13:09:24 IST 2026
[2026-10-25 13:09:24,895.895 INFO    ] ================================================
[2026-10-25 13:09:25,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:09:25
[2026-10-25 13:09:26,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:09:26,394.394 INFO    ] Initializing speech engine...
[2026-10-25 13:09:26,402.402 INFO    ] 2026-10-25 13:09:26
[2026-10-25 13:09:26,660.660 INFO    ] 2026-10-25 13:09:26
[2026-10-25 13:09:26,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:09:26,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:09:26,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:09:27,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:09:27,152.152 INFO    ] time= 25/10/2026 13:09:27
[2026-10-25 13:09:27,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:09:27,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:09:27,334.334 INFO    ] No existing commands found in stream
[2026-10-25 13:09:32,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:09:32,366.366 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 13:09:36,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:09:36,013.013 INFO    ] Checking for system updates...
[2026-10-25 13:09:36,049.049 INFO    ] 200
[2026-10-25 13:09:36,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:36,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:36,107.107 INFO    ] No update needed
[2026-10-25 13:09:36,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 13:09:36,143.143 INFO    ] 200
[2026-10-25 13:09:36,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:36,187.187 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:09:36,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:36,253.253 INFO    ] No camera update needed
[2026-10-25 13:09:36,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:09:36,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:09:36,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:09:36,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:09:38,308.308 INFO    ] ================================================
[2026-10-25 13:09:38,323.323 INFO    ] Launching Daemon at Sun Oct 25 13:09:38 IST 2026
[2026-10-25 13:09:38,334.334 INFO    ] ================================================
[2026-10-25 13:09:38,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:09:38
[2026-10-25 13:09:39,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:09:39,822.822 INFO    ] Initializing speech engine...
[2026-10-25 13:09:39,828.828 INFO    ] 2026-10-25 13:09:39
[2026-10-25 13:09:40,088.088 INFO    ] 2026-10-25 13:09:40
[2026-10-25 13:09:40,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:09:40,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:09:40,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:09:40,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:09:40,449.449 INFO    ] time= 25/10/2026 13:09:40
[2026-10-25 13:09:40,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:09:40,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:09:40,575.575 INFO    ] No existing commands found in stream
[2026-10-25 13:09:45,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:09:45,590.590 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 13:09:47,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:09:47,354.354 INFO    ] Checking for system updates...
[2026-10-25 13:09:47,391.391 INFO    ] 200
[2026-10-25 13:09:47,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:47,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:09:47,449.449 INFO    ] No update needed
[2026-10-25 13:09:47,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 13:09:47,486.486 INFO    ] 200
[2026-10-25 13:09:47,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:47,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:09:47,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:09:47,588.588 INFO    ] No camera update needed
[2026-10-25 13:09:47,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:09:47,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:09:47,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:09:47,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:09:49,644.644 INFO    ] ================================================
[2026-10-25 13:09:49,659.659 INFO    ] Launching Daemon at Sun Oct 25 13:09:49 IST 2026
[2026-10-25 13:09:49,670.670 INFO    ] ================================================
[2026-10-25 13:09:50,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:09:50
[2026-10-25 13:09:50,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:09:51,311.311 INFO    ] Initializing speech engine...
[2026-10-25 13:09:51,320.320 INFO    ] 2026-10-25 13:09:51
[2026-10-25 13:09:51,615.615 INFO    ] 2026-10-25 13:09:51
[2026-10-25 13:09:51,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:09:51,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:09:51,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:09:52,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:09:52,084.084 INFO    ] time= 25/10/2026 13:09:52
[2026-10-25 13:09:52,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:09:52,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:09:52,221.221 INFO    ] No existing commands found in stream
[2026-10-25 13:09:57,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:09:57,236.236 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 13:09:58,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:09:58,519.519 INFO    ] Checking for system updates...
[2026-10-25 13:09:58,556.556 INFO    ] 200
[2026-10-25 13:09:58,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:58,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:58,619.619 INFO    ] No update needed
[2026-10-25 13:09:58,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 13:09:58,656.656 INFO    ] 200
[2026-10-25 13:09:58,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:09:58,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:09:58,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:09:58,752.752 INFO    ] No camera update needed
[2026-10-25 13:09:58,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:09:58,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:09:58,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:09:58,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:10:00,806.806 INFO    ] ================================================
[2026-10-25 13:10:00,821.821 INFO    ] Launching Daemon at Sun Oct 25 13:10:00 IST 2026
[2026-10-25 13:10:00,832.832 INFO    ] ================================================
[2026-10-25 13:10:01,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:10:01
[2026-10-25 13:10:02,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:10:03,095.095 INFO    ] Initializing speech engine...
[2026-10-25 13:10:03,099.099 INFO    ] 2026-10-25 13:10:03
[2026-10-25 13:10:03,503.503 INFO    ] 2026-10-25 13:10:03
[2026-10-25 13:10:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:10:03,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:10:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:10:03,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:10:03,974.974 INFO    ] time= 25/10/2026 13:10:03
[2026-10-25 13:10:03,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:10:04,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:10:04,130.130 INFO    ] No existing commands found in stream
[2026-10-25 13:10:09,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:10:09,147.147 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 13:10:10,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:10:10,992.992 INFO    ] Checking for system updates...
[2026-10-25 13:10:11,031.031 INFO    ] 200
[2026-10-25 13:10:11,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:11,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:10:11,090.090 INFO    ] No update needed
[2026-10-25 13:10:11,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 13:10:11,131.131 INFO    ] 200
[2026-10-25 13:10:11,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:11,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:10:11,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:10:11,241.241 INFO    ] No camera update needed
[2026-10-25 13:10:11,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:10:11,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:10:11,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:10:11,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:10:13,297.297 INFO    ] ================================================
[2026-10-25 13:10:13,312.312 INFO    ] Launching Daemon at Sun Oct 25 13:10:13 IST 2026
[2026-10-25 13:10:13,323.323 INFO    ] ================================================
[2026-10-25 13:10:13,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:10:13
[2026-10-25 13:10:14,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:10:14,812.812 INFO    ] Initializing speech engine...
[2026-10-25 13:10:14,820.820 INFO    ] 2026-10-25 13:10:14
[2026-10-25 13:10:15,089.089 INFO    ] 2026-10-25 13:10:15
[2026-10-25 13:10:15,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:10:16,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:10:16,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:10:16,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:10:16,519.519 INFO    ] time= 25/10/2026 13:10:16
[2026-10-25 13:10:16,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:10:16,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:10:16,588.588 INFO    ] No existing commands found in stream
[2026-10-25 13:10:21,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:10:21,604.604 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 13:10:25,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:10:25,955.955 INFO    ] Checking for system updates...
[2026-10-25 13:10:25,997.997 INFO    ] 200
[2026-10-25 13:10:26,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:26,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:10:26,061.061 INFO    ] No update needed
[2026-10-25 13:10:26,064.064 INFO    ] Checking for camera pi updates...
[2026-10-25 13:10:26,102.102 INFO    ] 200
[2026-10-25 13:10:26,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:26,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:10:26,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:10:26,199.199 INFO    ] No camera update needed
[2026-10-25 13:10:26,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:10:26,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:10:26,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:10:26,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:10:28,255.255 INFO    ] ================================================
[2026-10-25 13:10:28,270.270 INFO    ] Launching Daemon at Sun Oct 25 13:10:28 IST 2026
[2026-10-25 13:10:28,281.281 INFO    ] ================================================
[2026-10-25 13:10:28,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:10:28
[2026-10-25 13:10:29,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:10:29,890.890 INFO    ] Initializing speech engine...
[2026-10-25 13:10:29,900.900 INFO    ] 2026-10-25 13:10:29
[2026-10-25 13:10:30,176.176 INFO    ] 2026-10-25 13:10:30
[2026-10-25 13:10:30,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:10:30,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:10:30,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:10:30,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:10:30,734.734 INFO    ] time= 25/10/2026 13:10:30
[2026-10-25 13:10:30,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:10:30,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:10:30,878.878 INFO    ] No existing commands found in stream
[2026-10-25 13:10:35,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:10:35,905.905 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 13:10:37,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:10:37,516.516 INFO    ] Checking for system updates...
[2026-10-25 13:10:37,554.554 INFO    ] 200
[2026-10-25 13:10:37,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:37,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:10:37,616.616 INFO    ] No update needed
[2026-10-25 13:10:37,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 13:10:37,652.652 INFO    ] 200
[2026-10-25 13:10:37,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:37,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:10:37,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:10:37,785.785 INFO    ] No camera update needed
[2026-10-25 13:10:37,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:10:37,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:10:37,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:10:37,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:10:39,839.839 INFO    ] ================================================
[2026-10-25 13:10:39,854.854 INFO    ] Launching Daemon at Sun Oct 25 13:10:39 IST 2026
[2026-10-25 13:10:39,865.865 INFO    ] ================================================
[2026-10-25 13:10:40,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:10:40
[2026-10-25 13:10:41,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:10:41,327.327 INFO    ] Initializing speech engine...
[2026-10-25 13:10:41,336.336 INFO    ] 2026-10-25 13:10:41
[2026-10-25 13:10:41,585.585 INFO    ] 2026-10-25 13:10:41
[2026-10-25 13:10:41,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:10:41,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:10:41,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:10:42,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:10:42,042.042 INFO    ] time= 25/10/2026 13:10:42
[2026-10-25 13:10:42,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:10:42,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:10:42,211.211 INFO    ] No existing commands found in stream
[2026-10-25 13:10:47,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:10:47,226.226 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 13:10:48,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:10:48,464.464 INFO    ] Checking for system updates...
[2026-10-25 13:10:48,501.501 INFO    ] 200
[2026-10-25 13:10:48,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:48,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:10:48,566.566 INFO    ] No update needed
[2026-10-25 13:10:48,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 13:10:48,607.607 INFO    ] 200
[2026-10-25 13:10:48,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:10:48,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:10:48,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:10:48,713.713 INFO    ] No camera update needed
[2026-10-25 13:10:48,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:10:48,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:10:48,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:10:48,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:10:50,774.774 INFO    ] ================================================
[2026-10-25 13:10:50,789.789 INFO    ] Launching Daemon at Sun Oct 25 13:10:50 IST 2026
[2026-10-25 13:10:50,800.800 INFO    ] ================================================
[2026-10-25 13:10:51,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:10:51
[2026-10-25 13:10:52,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:10:52,472.472 INFO    ] Initializing speech engine...
[2026-10-25 13:10:52,485.485 INFO    ] 2026-10-25 13:10:52
[2026-10-25 13:10:52,774.774 INFO    ] 2026-10-25 13:10:52
[2026-10-25 13:10:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:10:53,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:10:53,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:10:53,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:10:53,253.253 INFO    ] time= 25/10/2026 13:10:53
[2026-10-25 13:10:53,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:10:53,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:10:53,450.450 INFO    ] No existing commands found in stream
[2026-10-25 13:10:58,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:10:58,479.479 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 13:11:00,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:11:00,953.953 INFO    ] Checking for system updates...
[2026-10-25 13:11:00,990.990 INFO    ] 200
[2026-10-25 13:11:00,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:01,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:01,058.058 INFO    ] No update needed
[2026-10-25 13:11:01,061.061 INFO    ] Checking for camera pi updates...
[2026-10-25 13:11:01,100.100 INFO    ] 200
[2026-10-25 13:11:01,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:01,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:11:01,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:01,218.218 INFO    ] No camera update needed
[2026-10-25 13:11:01,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:11:01,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:11:01,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:11:01,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:11:03,307.307 INFO    ] ================================================
[2026-10-25 13:11:03,335.335 INFO    ] Launching Daemon at Sun Oct 25 13:11:03 IST 2026
[2026-10-25 13:11:03,350.350 INFO    ] ================================================
[2026-10-25 13:11:03,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:11:03
[2026-10-25 13:11:04,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:11:04,868.868 INFO    ] Initializing speech engine...
[2026-10-25 13:11:04,876.876 INFO    ] 2026-10-25 13:11:04
[2026-10-25 13:11:05,179.179 INFO    ] 2026-10-25 13:11:05
[2026-10-25 13:11:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:11:05,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:11:05,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:11:05,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:11:05,565.565 INFO    ] time= 25/10/2026 13:11:05
[2026-10-25 13:11:05,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:11:05,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:11:05,690.690 INFO    ] No existing commands found in stream
[2026-10-25 13:11:10,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:11:10,709.709 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 13:11:13,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:11:13,865.865 INFO    ] Checking for system updates...
[2026-10-25 13:11:13,903.903 INFO    ] 200
[2026-10-25 13:11:13,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:13,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:13,972.972 INFO    ] No update needed
[2026-10-25 13:11:13,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 13:11:14,016.016 INFO    ] 200
[2026-10-25 13:11:14,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:14,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:11:14,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:14,109.109 INFO    ] No camera update needed
[2026-10-25 13:11:14,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:11:14,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:11:14,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:11:14,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:11:16,167.167 INFO    ] ================================================
[2026-10-25 13:11:16,183.183 INFO    ] Launching Daemon at Sun Oct 25 13:11:16 IST 2026
[2026-10-25 13:11:16,194.194 INFO    ] ================================================
[2026-10-25 13:11:16,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:11:16
[2026-10-25 13:11:17,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:11:17,640.640 INFO    ] Initializing speech engine...
[2026-10-25 13:11:17,646.646 INFO    ] 2026-10-25 13:11:17
[2026-10-25 13:11:17,942.942 INFO    ] 2026-10-25 13:11:17
[2026-10-25 13:11:17,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:11:18,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:11:18,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:11:18,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:11:18,940.940 INFO    ] time= 25/10/2026 13:11:18
[2026-10-25 13:11:18,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:11:18,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:11:19,063.063 INFO    ] No existing commands found in stream
[2026-10-25 13:11:24,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:11:24,094.094 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 13:11:28,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:11:28,245.245 INFO    ] Checking for system updates...
[2026-10-25 13:11:28,282.282 INFO    ] 200
[2026-10-25 13:11:28,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:28,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:11:28,340.340 INFO    ] No update needed
[2026-10-25 13:11:28,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 13:11:28,377.377 INFO    ] 200
[2026-10-25 13:11:28,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:28,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:11:28,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:11:28,478.478 INFO    ] No camera update needed
[2026-10-25 13:11:28,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:11:28,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:11:28,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:11:28,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:11:30,533.533 INFO    ] ================================================
[2026-10-25 13:11:30,548.548 INFO    ] Launching Daemon at Sun Oct 25 13:11:30 IST 2026
[2026-10-25 13:11:30,561.561 INFO    ] ================================================
[2026-10-25 13:11:31,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:11:31
[2026-10-25 13:11:31,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:11:32,018.018 INFO    ] Initializing speech engine...
[2026-10-25 13:11:32,029.029 INFO    ] 2026-10-25 13:11:32
[2026-10-25 13:11:32,310.310 INFO    ] 2026-10-25 13:11:32
[2026-10-25 13:11:32,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:11:32,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:11:32,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:11:32,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:11:32,705.705 INFO    ] time= 25/10/2026 13:11:32
[2026-10-25 13:11:32,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:11:32,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:11:32,876.876 INFO    ] No existing commands found in stream
[2026-10-25 13:11:37,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:11:37,910.910 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 13:11:39,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:11:39,839.839 INFO    ] Checking for system updates...
[2026-10-25 13:11:39,876.876 INFO    ] 200
[2026-10-25 13:11:39,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:39,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:39,943.943 INFO    ] No update needed
[2026-10-25 13:11:39,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 13:11:39,980.980 INFO    ] 200
[2026-10-25 13:11:39,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:40,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:11:40,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:40,199.199 INFO    ] No camera update needed
[2026-10-25 13:11:40,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:11:40,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:11:40,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:11:40,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:11:42,261.261 INFO    ] ================================================
[2026-10-25 13:11:42,277.277 INFO    ] Launching Daemon at Sun Oct 25 13:11:42 IST 2026
[2026-10-25 13:11:42,289.289 INFO    ] ================================================
[2026-10-25 13:11:42,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:11:42
[2026-10-25 13:11:43,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:11:43,749.749 INFO    ] Initializing speech engine...
[2026-10-25 13:11:43,758.758 INFO    ] 2026-10-25 13:11:43
[2026-10-25 13:11:44,022.022 INFO    ] 2026-10-25 13:11:44
[2026-10-25 13:11:44,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:11:44,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:11:44,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:11:44,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:11:44,490.490 INFO    ] time= 25/10/2026 13:11:44
[2026-10-25 13:11:44,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:11:44,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:11:44,628.628 INFO    ] No existing commands found in stream
[2026-10-25 13:11:49,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:11:49,643.643 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 13:11:52,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:11:52,847.847 INFO    ] Checking for system updates...
[2026-10-25 13:11:52,887.887 INFO    ] 200
[2026-10-25 13:11:52,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:52,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:52,948.948 INFO    ] No update needed
[2026-10-25 13:11:52,950.950 INFO    ] Checking for camera pi updates...
[2026-10-25 13:11:52,984.984 INFO    ] 200
[2026-10-25 13:11:52,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:11:53,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:11:53,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:11:53,084.084 INFO    ] No camera update needed
[2026-10-25 13:11:53,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:11:53,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:11:53,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:11:53,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:11:55,141.141 INFO    ] ================================================
[2026-10-25 13:11:55,157.157 INFO    ] Launching Daemon at Sun Oct 25 13:11:55 IST 2026
[2026-10-25 13:11:55,168.168 INFO    ] ================================================
[2026-10-25 13:11:55,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:11:55
[2026-10-25 13:11:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:11:56,622.622 INFO    ] Initializing speech engine...
[2026-10-25 13:11:56,631.631 INFO    ] 2026-10-25 13:11:56
[2026-10-25 13:11:56,933.933 INFO    ] 2026-10-25 13:11:56
[2026-10-25 13:11:56,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:11:57,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:11:57,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:11:57,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:11:57,322.322 INFO    ] time= 25/10/2026 13:11:57
[2026-10-25 13:11:57,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:11:57,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:11:57,449.449 INFO    ] No existing commands found in stream
[2026-10-25 13:12:02,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:12:02,465.465 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 13:12:06,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:12:06,241.241 INFO    ] Checking for system updates...
[2026-10-25 13:12:06,278.278 INFO    ] 200
[2026-10-25 13:12:06,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:06,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:12:06,336.336 INFO    ] No update needed
[2026-10-25 13:12:06,338.338 INFO    ] Checking for camera pi updates...
[2026-10-25 13:12:06,373.373 INFO    ] 200
[2026-10-25 13:12:06,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:06,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:12:06,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:12:06,475.475 INFO    ] No camera update needed
[2026-10-25 13:12:06,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:12:06,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:12:06,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:12:06,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:12:08,530.530 INFO    ] ================================================
[2026-10-25 13:12:08,545.545 INFO    ] Launching Daemon at Sun Oct 25 13:12:08 IST 2026
[2026-10-25 13:12:08,556.556 INFO    ] ================================================
[2026-10-25 13:12:09,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:12:09
[2026-10-25 13:12:09,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:12:09,964.964 INFO    ] Initializing speech engine...
[2026-10-25 13:12:09,970.970 INFO    ] 2026-10-25 13:12:09
[2026-10-25 13:12:10,245.245 INFO    ] 2026-10-25 13:12:10
[2026-10-25 13:12:10,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:12:10,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:12:10,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:12:10,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:12:10,699.699 INFO    ] time= 25/10/2026 13:12:10
[2026-10-25 13:12:10,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:12:10,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:12:10,872.872 INFO    ] No existing commands found in stream
[2026-10-25 13:12:15,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:12:15,886.886 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 13:12:16,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:12:16,366.366 INFO    ] Checking for system updates...
[2026-10-25 13:12:16,406.406 INFO    ] 200
[2026-10-25 13:12:16,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:16,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:12:16,471.471 INFO    ] No update needed
[2026-10-25 13:12:16,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 13:12:16,511.511 INFO    ] 200
[2026-10-25 13:12:16,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:16,555.555 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:12:16,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:12:16,619.619 INFO    ] No camera update needed
[2026-10-25 13:12:16,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:12:16,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:12:16,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:12:16,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:12:18,678.678 INFO    ] ================================================
[2026-10-25 13:12:18,695.695 INFO    ] Launching Daemon at Sun Oct 25 13:12:18 IST 2026
[2026-10-25 13:12:18,705.705 INFO    ] ================================================
[2026-10-25 13:12:19,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:12:19
[2026-10-25 13:12:19,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:12:20,103.103 INFO    ] Initializing speech engine...
[2026-10-25 13:12:20,111.111 INFO    ] 2026-10-25 13:12:20
[2026-10-25 13:12:20,385.385 INFO    ] 2026-10-25 13:12:20
[2026-10-25 13:12:20,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:12:20,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:12:20,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:12:20,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:12:20,726.726 INFO    ] time= 25/10/2026 13:12:20
[2026-10-25 13:12:20,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:12:20,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:12:20,838.838 INFO    ] No existing commands found in stream
[2026-10-25 13:12:25,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:12:25,858.858 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 13:12:27,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:12:27,673.673 INFO    ] Checking for system updates...
[2026-10-25 13:12:27,710.710 INFO    ] 200
[2026-10-25 13:12:27,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:27,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:27,775.775 INFO    ] No update needed
[2026-10-25 13:12:27,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 13:12:27,816.816 INFO    ] 200
[2026-10-25 13:12:27,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:27,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:12:27,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:27,907.907 INFO    ] No camera update needed
[2026-10-25 13:12:27,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:12:27,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:12:27,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:12:27,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:12:29,963.963 INFO    ] ================================================
[2026-10-25 13:12:29,978.978 INFO    ] Launching Daemon at Sun Oct 25 13:12:29 IST 2026
[2026-10-25 13:12:29,990.990 INFO    ] ================================================
[2026-10-25 13:12:30,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:12:30
[2026-10-25 13:12:31,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:12:31,494.494 INFO    ] Initializing speech engine...
[2026-10-25 13:12:31,509.509 INFO    ] 2026-10-25 13:12:31
[2026-10-25 13:12:31,796.796 INFO    ] 2026-10-25 13:12:31
[2026-10-25 13:12:31,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:12:32,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:12:32,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:12:32,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:12:32,287.287 INFO    ] time= 25/10/2026 13:12:32
[2026-10-25 13:12:32,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:12:32,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:12:32,454.454 INFO    ] No existing commands found in stream
[2026-10-25 13:12:37,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:12:37,497.497 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 13:12:38,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:12:38,511.511 INFO    ] Checking for system updates...
[2026-10-25 13:12:38,548.548 INFO    ] 200
[2026-10-25 13:12:38,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:38,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:38,615.615 INFO    ] No update needed
[2026-10-25 13:12:38,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 13:12:38,653.653 INFO    ] 200
[2026-10-25 13:12:38,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:38,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:12:38,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:38,728.728 INFO    ] No camera update needed
[2026-10-25 13:12:38,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:12:38,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:12:38,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:12:38,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:12:40,785.785 INFO    ] ================================================
[2026-10-25 13:12:40,801.801 INFO    ] Launching Daemon at Sun Oct 25 13:12:40 IST 2026
[2026-10-25 13:12:40,811.811 INFO    ] ================================================
[2026-10-25 13:12:41,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:12:41
[2026-10-25 13:12:41,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:12:42,274.274 INFO    ] Initializing speech engine...
[2026-10-25 13:12:42,283.283 INFO    ] 2026-10-25 13:12:42
[2026-10-25 13:12:42,532.532 INFO    ] 2026-10-25 13:12:42
[2026-10-25 13:12:42,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:12:42,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:12:42,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:12:42,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:12:43,010.010 INFO    ] time= 25/10/2026 13:12:42
[2026-10-25 13:12:43,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:12:43,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:12:43,212.212 INFO    ] No existing commands found in stream
[2026-10-25 13:12:48,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:12:48,241.241 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 13:12:51,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:12:51,384.384 INFO    ] Checking for system updates...
[2026-10-25 13:12:51,425.425 INFO    ] 200
[2026-10-25 13:12:51,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:51,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:51,495.495 INFO    ] No update needed
[2026-10-25 13:12:51,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 13:12:51,538.538 INFO    ] 200
[2026-10-25 13:12:51,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:12:51,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:12:51,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:12:51,648.648 INFO    ] No camera update needed
[2026-10-25 13:12:51,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:12:51,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:12:51,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:12:51,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:12:53,705.705 INFO    ] ================================================
[2026-10-25 13:12:53,720.720 INFO    ] Launching Daemon at Sun Oct 25 13:12:53 IST 2026
[2026-10-25 13:12:53,731.731 INFO    ] ================================================
[2026-10-25 13:12:54,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:12:54
[2026-10-25 13:12:54,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:12:55,174.174 INFO    ] Initializing speech engine...
[2026-10-25 13:12:55,184.184 INFO    ] 2026-10-25 13:12:55
[2026-10-25 13:12:55,482.482 INFO    ] 2026-10-25 13:12:55
[2026-10-25 13:12:55,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:12:55,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:12:55,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:12:55,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:12:55,908.908 INFO    ] time= 25/10/2026 13:12:55
[2026-10-25 13:12:55,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:12:55,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:12:55,993.993 INFO    ] No existing commands found in stream
[2026-10-25 13:13:01,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:13:01,009.009 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 13:13:02,762.762 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:13:02,764.764 INFO    ] Checking for system updates...
[2026-10-25 13:13:02,802.802 INFO    ] 200
[2026-10-25 13:13:02,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:02,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:02,861.861 INFO    ] No update needed
[2026-10-25 13:13:02,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 13:13:02,899.899 INFO    ] 200
[2026-10-25 13:13:02,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:02,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:13:02,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:02,987.987 INFO    ] No camera update needed
[2026-10-25 13:13:02,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:13:02,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:13:02,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:13:03,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:13:05,049.049 INFO    ] ================================================
[2026-10-25 13:13:05,065.065 INFO    ] Launching Daemon at Sun Oct 25 13:13:05 IST 2026
[2026-10-25 13:13:05,076.076 INFO    ] ================================================
[2026-10-25 13:13:05,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:13:05
[2026-10-25 13:13:06,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:13:06,467.467 INFO    ] Initializing speech engine...
[2026-10-25 13:13:06,475.475 INFO    ] 2026-10-25 13:13:06
[2026-10-25 13:13:06,751.751 INFO    ] 2026-10-25 13:13:06
[2026-10-25 13:13:06,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:13:06,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:13:06,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:13:07,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:13:07,125.125 INFO    ] time= 25/10/2026 13:13:07
[2026-10-25 13:13:07,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:13:07,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:13:07,296.296 INFO    ] No existing commands found in stream
[2026-10-25 13:13:12,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:13:12,328.328 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 13:13:13,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:13:13,623.623 INFO    ] Checking for system updates...
[2026-10-25 13:13:13,659.659 INFO    ] 200
[2026-10-25 13:13:13,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:13,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:13,717.717 INFO    ] No update needed
[2026-10-25 13:13:13,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 13:13:13,753.753 INFO    ] 200
[2026-10-25 13:13:13,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:13,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:13:13,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:13,852.852 INFO    ] No camera update needed
[2026-10-25 13:13:13,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:13:13,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:13:13,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:13:13,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:13:15,915.915 INFO    ] ================================================
[2026-10-25 13:13:15,930.930 INFO    ] Launching Daemon at Sun Oct 25 13:13:15 IST 2026
[2026-10-25 13:13:15,940.940 INFO    ] ================================================
[2026-10-25 13:13:16,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:13:16
[2026-10-25 13:13:17,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:13:17,530.530 INFO    ] Initializing speech engine...
[2026-10-25 13:13:17,539.539 INFO    ] 2026-10-25 13:13:17
[2026-10-25 13:13:17,821.821 INFO    ] 2026-10-25 13:13:17
[2026-10-25 13:13:17,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:13:18,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:13:18,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:13:18,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:13:18,363.363 INFO    ] time= 25/10/2026 13:13:18
[2026-10-25 13:13:18,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:13:18,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:13:18,514.514 INFO    ] No existing commands found in stream
[2026-10-25 13:13:23,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:13:23,543.543 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 13:13:27,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:13:27,269.269 INFO    ] Checking for system updates...
[2026-10-25 13:13:27,306.306 INFO    ] 200
[2026-10-25 13:13:27,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:27,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:27,367.367 INFO    ] No update needed
[2026-10-25 13:13:27,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 13:13:27,405.405 INFO    ] 200
[2026-10-25 13:13:27,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:27,449.449 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:13:27,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:27,498.498 INFO    ] No camera update needed
[2026-10-25 13:13:27,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:13:27,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:13:27,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:13:27,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:13:29,557.557 INFO    ] ================================================
[2026-10-25 13:13:29,572.572 INFO    ] Launching Daemon at Sun Oct 25 13:13:29 IST 2026
[2026-10-25 13:13:29,584.584 INFO    ] ================================================
[2026-10-25 13:13:30,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:13:30
[2026-10-25 13:13:30,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:13:31,166.166 INFO    ] Initializing speech engine...
[2026-10-25 13:13:31,178.178 INFO    ] 2026-10-25 13:13:31
[2026-10-25 13:13:31,490.490 INFO    ] 2026-10-25 13:13:31
[2026-10-25 13:13:31,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:13:31,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:13:31,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:13:32,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:13:32,075.075 INFO    ] time= 25/10/2026 13:13:32
[2026-10-25 13:13:32,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:13:32,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:13:32,234.234 INFO    ] No existing commands found in stream
[2026-10-25 13:13:37,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:13:37,261.261 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 13:13:40,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:13:40,189.189 INFO    ] Checking for system updates...
[2026-10-25 13:13:40,226.226 INFO    ] 200
[2026-10-25 13:13:40,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:40,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:40,286.286 INFO    ] No update needed
[2026-10-25 13:13:40,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 13:13:40,327.327 INFO    ] 200
[2026-10-25 13:13:40,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:40,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:13:40,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:40,432.432 INFO    ] No camera update needed
[2026-10-25 13:13:40,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:13:40,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:13:40,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:13:40,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:13:42,490.490 INFO    ] ================================================
[2026-10-25 13:13:42,505.505 INFO    ] Launching Daemon at Sun Oct 25 13:13:42 IST 2026
[2026-10-25 13:13:42,516.516 INFO    ] ================================================
[2026-10-25 13:13:43,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:13:43
[2026-10-25 13:13:43,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:13:44,075.075 INFO    ] Initializing speech engine...
[2026-10-25 13:13:44,082.082 INFO    ] 2026-10-25 13:13:44
[2026-10-25 13:13:44,351.351 INFO    ] 2026-10-25 13:13:44
[2026-10-25 13:13:44,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:13:44,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:13:44,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:13:44,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:13:44,835.835 INFO    ] time= 25/10/2026 13:13:44
[2026-10-25 13:13:44,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:13:44,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:13:45,030.030 INFO    ] No existing commands found in stream
[2026-10-25 13:13:50,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:13:50,059.059 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 13:13:53,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:13:53,858.858 INFO    ] Checking for system updates...
[2026-10-25 13:13:53,897.897 INFO    ] 200
[2026-10-25 13:13:53,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:53,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:53,956.956 INFO    ] No update needed
[2026-10-25 13:13:53,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 13:13:53,993.993 INFO    ] 200
[2026-10-25 13:13:53,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:13:54,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:13:54,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:13:54,201.201 INFO    ] No camera update needed
[2026-10-25 13:13:54,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:13:54,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:13:54,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:13:54,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:13:56,258.258 INFO    ] ================================================
[2026-10-25 13:13:56,273.273 INFO    ] Launching Daemon at Sun Oct 25 13:13:56 IST 2026
[2026-10-25 13:13:56,284.284 INFO    ] ================================================
[2026-10-25 13:13:56,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:13:56
[2026-10-25 13:13:57,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:13:57,748.748 INFO    ] Initializing speech engine...
[2026-10-25 13:13:57,763.763 INFO    ] 2026-10-25 13:13:57
[2026-10-25 13:13:58,031.031 INFO    ] 2026-10-25 13:13:58
[2026-10-25 13:13:58,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:13:58,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:13:58,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:13:58,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:13:58,439.439 INFO    ] time= 25/10/2026 13:13:58
[2026-10-25 13:13:58,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:13:58,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:13:58,601.601 INFO    ] No existing commands found in stream
[2026-10-25 13:14:03,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:14:03,628.628 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 13:14:05,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:14:05,727.727 INFO    ] Checking for system updates...
[2026-10-25 13:14:05,763.763 INFO    ] 200
[2026-10-25 13:14:05,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:05,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:14:05,820.820 INFO    ] No update needed
[2026-10-25 13:14:05,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 13:14:05,860.860 INFO    ] 200
[2026-10-25 13:14:05,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:05,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:14:05,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:14:05,964.964 INFO    ] No camera update needed
[2026-10-25 13:14:05,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:14:05,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:14:05,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:14:05,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:14:08,018.018 INFO    ] ================================================
[2026-10-25 13:14:08,033.033 INFO    ] Launching Daemon at Sun Oct 25 13:14:08 IST 2026
[2026-10-25 13:14:08,044.044 INFO    ] ================================================
[2026-10-25 13:14:08,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:14:08
[2026-10-25 13:14:09,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:14:09,440.440 INFO    ] Initializing speech engine...
[2026-10-25 13:14:09,447.447 INFO    ] 2026-10-25 13:14:09
[2026-10-25 13:14:09,732.732 INFO    ] 2026-10-25 13:14:09
[2026-10-25 13:14:09,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:14:09,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:14:09,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:14:10,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:14:10,133.133 INFO    ] time= 25/10/2026 13:14:10
[2026-10-25 13:14:10,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:14:10,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:14:10,214.214 INFO    ] No existing commands found in stream
[2026-10-25 13:14:15,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:14:15,228.228 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 13:14:16,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:14:16,935.935 INFO    ] Checking for system updates...
[2026-10-25 13:14:16,971.971 INFO    ] 200
[2026-10-25 13:14:16,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:17,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:17,028.028 INFO    ] No update needed
[2026-10-25 13:14:17,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 13:14:17,065.065 INFO    ] 200
[2026-10-25 13:14:17,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:17,108.108 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:14:17,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:17,160.160 INFO    ] No camera update needed
[2026-10-25 13:14:17,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:14:17,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:14:17,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:14:17,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:14:19,216.216 INFO    ] ================================================
[2026-10-25 13:14:19,232.232 INFO    ] Launching Daemon at Sun Oct 25 13:14:19 IST 2026
[2026-10-25 13:14:19,243.243 INFO    ] ================================================
[2026-10-25 13:14:19,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:14:19
[2026-10-25 13:14:20,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:14:20,788.788 INFO    ] Initializing speech engine...
[2026-10-25 13:14:20,798.798 INFO    ] 2026-10-25 13:14:20
[2026-10-25 13:14:21,080.080 INFO    ] 2026-10-25 13:14:21
[2026-10-25 13:14:21,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:14:24,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:14:24,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:14:25,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:14:25,345.345 INFO    ] time= 25/10/2026 13:14:25
[2026-10-25 13:14:25,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:14:25,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:14:25,400.400 INFO    ] No existing commands found in stream
[2026-10-25 13:14:30,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:14:30,413.413 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 13:14:30,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:14:30,959.959 INFO    ] Checking for system updates...
[2026-10-25 13:14:30,996.996 INFO    ] 200
[2026-10-25 13:14:30,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:31,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:31,054.054 INFO    ] No update needed
[2026-10-25 13:14:31,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 13:14:31,092.092 INFO    ] 200
[2026-10-25 13:14:31,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:31,139.139 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:14:31,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:31,186.186 INFO    ] No camera update needed
[2026-10-25 13:14:31,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:14:31,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:14:31,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:14:31,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:14:33,243.243 INFO    ] ================================================
[2026-10-25 13:14:33,262.262 INFO    ] Launching Daemon at Sun Oct 25 13:14:33 IST 2026
[2026-10-25 13:14:33,273.273 INFO    ] ================================================
[2026-10-25 13:14:33,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:14:33
[2026-10-25 13:14:34,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:14:34,680.680 INFO    ] Initializing speech engine...
[2026-10-25 13:14:34,693.693 INFO    ] 2026-10-25 13:14:34
[2026-10-25 13:14:34,968.968 INFO    ] 2026-10-25 13:14:34
[2026-10-25 13:14:35,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:14:35,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:14:35,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:14:36,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:14:36,176.176 INFO    ] time= 25/10/2026 13:14:36
[2026-10-25 13:14:36,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:14:36,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:14:36,247.247 INFO    ] No existing commands found in stream
[2026-10-25 13:14:41,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:14:41,256.256 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 13:14:41,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:14:41,907.907 INFO    ] Checking for system updates...
[2026-10-25 13:14:41,943.943 INFO    ] 200
[2026-10-25 13:14:41,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:41,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:42,001.001 INFO    ] No update needed
[2026-10-25 13:14:42,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 13:14:42,037.037 INFO    ] 200
[2026-10-25 13:14:42,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:42,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:14:42,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:14:42,136.136 INFO    ] No camera update needed
[2026-10-25 13:14:42,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:14:42,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:14:42,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:14:42,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:14:44,191.191 INFO    ] ================================================
[2026-10-25 13:14:44,207.207 INFO    ] Launching Daemon at Sun Oct 25 13:14:44 IST 2026
[2026-10-25 13:14:44,218.218 INFO    ] ================================================
[2026-10-25 13:14:44,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:14:44
[2026-10-25 13:14:45,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:14:45,665.665 INFO    ] Initializing speech engine...
[2026-10-25 13:14:45,672.672 INFO    ] 2026-10-25 13:14:45
[2026-10-25 13:14:45,929.929 INFO    ] 2026-10-25 13:14:45
[2026-10-25 13:14:45,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:14:46,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:14:46,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:14:46,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:14:46,411.411 INFO    ] time= 25/10/2026 13:14:46
[2026-10-25 13:14:46,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:14:46,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:14:46,538.538 INFO    ] No existing commands found in stream
[2026-10-25 13:14:51,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:14:51,554.554 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 13:14:56,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:14:56,539.539 INFO    ] Checking for system updates...
[2026-10-25 13:14:56,575.575 INFO    ] 200
[2026-10-25 13:14:56,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:56,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:14:56,634.634 INFO    ] No update needed
[2026-10-25 13:14:56,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 13:14:56,711.711 INFO    ] 200
[2026-10-25 13:14:56,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:14:56,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:14:56,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:14:56,813.813 INFO    ] No camera update needed
[2026-10-25 13:14:56,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:14:56,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:14:56,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:14:56,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:14:58,870.870 INFO    ] ================================================
[2026-10-25 13:14:58,886.886 INFO    ] Launching Daemon at Sun Oct 25 13:14:58 IST 2026
[2026-10-25 13:14:58,897.897 INFO    ] ================================================
[2026-10-25 13:14:59,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:14:59
[2026-10-25 13:15:00,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:15:00,327.327 INFO    ] Initializing speech engine...
[2026-10-25 13:15:00,336.336 INFO    ] 2026-10-25 13:15:00
[2026-10-25 13:15:00,585.585 INFO    ] 2026-10-25 13:15:00
[2026-10-25 13:15:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:15:00,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:15:00,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:15:01,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:15:01,068.068 INFO    ] time= 25/10/2026 13:15:01
[2026-10-25 13:15:01,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:15:01,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:15:01,239.239 INFO    ] No existing commands found in stream
[2026-10-25 13:15:06,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:15:06,253.253 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 13:15:09,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:15:09,795.795 INFO    ] Checking for system updates...
[2026-10-25 13:15:09,834.834 INFO    ] 200
[2026-10-25 13:15:09,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:09,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:09,898.898 INFO    ] No update needed
[2026-10-25 13:15:09,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 13:15:09,935.935 INFO    ] 200
[2026-10-25 13:15:09,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:09,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:15:10,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:10,028.028 INFO    ] No camera update needed
[2026-10-25 13:15:10,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:15:10,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:15:10,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:15:10,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:15:12,082.082 INFO    ] ================================================
[2026-10-25 13:15:12,097.097 INFO    ] Launching Daemon at Sun Oct 25 13:15:12 IST 2026
[2026-10-25 13:15:12,109.109 INFO    ] ================================================
[2026-10-25 13:15:12,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:15:12
[2026-10-25 13:15:13,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:15:13,704.704 INFO    ] Initializing speech engine...
[2026-10-25 13:15:13,714.714 INFO    ] 2026-10-25 13:15:13
[2026-10-25 13:15:14,000.000 INFO    ] 2026-10-25 13:15:13
[2026-10-25 13:15:14,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:15:14,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:15:14,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:15:14,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:15:14,468.468 INFO    ] time= 25/10/2026 13:15:14
[2026-10-25 13:15:14,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:15:14,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:15:14,706.706 INFO    ] No existing commands found in stream
[2026-10-25 13:15:19,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:15:19,732.732 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 13:15:21,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:15:21,914.914 INFO    ] Checking for system updates...
[2026-10-25 13:15:21,955.955 INFO    ] 200
[2026-10-25 13:15:21,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:22,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:22,019.019 INFO    ] No update needed
[2026-10-25 13:15:22,022.022 INFO    ] Checking for camera pi updates...
[2026-10-25 13:15:22,055.055 INFO    ] 200
[2026-10-25 13:15:22,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:22,099.099 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:15:22,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:22,148.148 INFO    ] No camera update needed
[2026-10-25 13:15:22,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:15:22,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:15:22,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:15:22,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:15:24,212.212 INFO    ] ================================================
[2026-10-25 13:15:24,227.227 INFO    ] Launching Daemon at Sun Oct 25 13:15:24 IST 2026
[2026-10-25 13:15:24,238.238 INFO    ] ================================================
[2026-10-25 13:15:24,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:15:24
[2026-10-25 13:15:25,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:15:25,641.641 INFO    ] Initializing speech engine...
[2026-10-25 13:15:25,654.654 INFO    ] 2026-10-25 13:15:25
[2026-10-25 13:15:25,940.940 INFO    ] 2026-10-25 13:15:25
[2026-10-25 13:15:25,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:15:27,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:15:27,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:15:27,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:15:27,516.516 INFO    ] time= 25/10/2026 13:15:27
[2026-10-25 13:15:27,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:15:27,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:15:27,651.651 INFO    ] No existing commands found in stream
[2026-10-25 13:15:32,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:15:32,679.679 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 13:15:35,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:15:35,180.180 INFO    ] Checking for system updates...
[2026-10-25 13:15:35,216.216 INFO    ] 200
[2026-10-25 13:15:35,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:35,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:35,273.273 INFO    ] No update needed
[2026-10-25 13:15:35,276.276 INFO    ] Checking for camera pi updates...
[2026-10-25 13:15:35,309.309 INFO    ] 200
[2026-10-25 13:15:35,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:35,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:15:35,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:35,400.400 INFO    ] No camera update needed
[2026-10-25 13:15:35,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:15:35,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:15:35,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:15:35,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:15:37,454.454 INFO    ] ================================================
[2026-10-25 13:15:37,470.470 INFO    ] Launching Daemon at Sun Oct 25 13:15:37 IST 2026
[2026-10-25 13:15:37,481.481 INFO    ] ================================================
[2026-10-25 13:15:38,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:15:38
[2026-10-25 13:15:38,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:15:38,951.951 INFO    ] Initializing speech engine...
[2026-10-25 13:15:38,963.963 INFO    ] 2026-10-25 13:15:38
[2026-10-25 13:15:39,239.239 INFO    ] 2026-10-25 13:15:39
[2026-10-25 13:15:39,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:15:39,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:15:39,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:15:39,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:15:39,597.597 INFO    ] time= 25/10/2026 13:15:39
[2026-10-25 13:15:39,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:15:39,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:15:39,776.776 INFO    ] No existing commands found in stream
[2026-10-25 13:15:44,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:15:44,806.806 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 13:15:46,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:15:46,877.877 INFO    ] Checking for system updates...
[2026-10-25 13:15:46,913.913 INFO    ] 200
[2026-10-25 13:15:46,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:46,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:15:46,989.989 INFO    ] No update needed
[2026-10-25 13:15:46,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 13:15:47,032.032 INFO    ] 200
[2026-10-25 13:15:47,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:47,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:15:47,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:15:47,128.128 INFO    ] No camera update needed
[2026-10-25 13:15:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:15:47,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:15:47,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:15:47,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:15:49,187.187 INFO    ] ================================================
[2026-10-25 13:15:49,203.203 INFO    ] Launching Daemon at Sun Oct 25 13:15:49 IST 2026
[2026-10-25 13:15:49,214.214 INFO    ] ================================================
[2026-10-25 13:15:49,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:15:49
[2026-10-25 13:15:50,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:15:50,722.722 INFO    ] Initializing speech engine...
[2026-10-25 13:15:50,738.738 INFO    ] 2026-10-25 13:15:50
[2026-10-25 13:15:51,015.015 INFO    ] 2026-10-25 13:15:51
[2026-10-25 13:15:51,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:15:51,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:15:51,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:15:51,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:15:51,413.413 INFO    ] time= 25/10/2026 13:15:51
[2026-10-25 13:15:51,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:15:51,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:15:51,594.594 INFO    ] No existing commands found in stream
[2026-10-25 13:15:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:15:56,624.624 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 13:15:58,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:15:58,917.917 INFO    ] Checking for system updates...
[2026-10-25 13:15:58,957.957 INFO    ] 200
[2026-10-25 13:15:58,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:59,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:59,023.023 INFO    ] No update needed
[2026-10-25 13:15:59,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 13:15:59,062.062 INFO    ] 200
[2026-10-25 13:15:59,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:15:59,111.111 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:15:59,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:15:59,282.282 INFO    ] No camera update needed
[2026-10-25 13:15:59,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:15:59,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:15:59,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:15:59,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:16:01,337.337 INFO    ] ================================================
[2026-10-25 13:16:01,353.353 INFO    ] Launching Daemon at Sun Oct 25 13:16:01 IST 2026
[2026-10-25 13:16:01,364.364 INFO    ] ================================================
[2026-10-25 13:16:01,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:16:01
[2026-10-25 13:16:02,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:16:03,026.026 INFO    ] Initializing speech engine...
[2026-10-25 13:16:03,034.034 INFO    ] 2026-10-25 13:16:03
[2026-10-25 13:16:03,365.365 INFO    ] 2026-10-25 13:16:03
[2026-10-25 13:16:03,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:16:03,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:16:03,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:16:03,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:16:03,933.933 INFO    ] time= 25/10/2026 13:16:03
[2026-10-25 13:16:03,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:16:04,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:16:04,086.086 INFO    ] No existing commands found in stream
[2026-10-25 13:16:09,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:16:09,104.104 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 13:16:11,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:16:11,748.748 INFO    ] Checking for system updates...
[2026-10-25 13:16:11,785.785 INFO    ] 200
[2026-10-25 13:16:11,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:11,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:16:11,843.843 INFO    ] No update needed
[2026-10-25 13:16:11,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 13:16:11,879.879 INFO    ] 200
[2026-10-25 13:16:11,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:11,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:16:11,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:16:11,979.979 INFO    ] No camera update needed
[2026-10-25 13:16:11,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:16:11,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:16:11,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:16:11,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:16:14,036.036 INFO    ] ================================================
[2026-10-25 13:16:14,052.052 INFO    ] Launching Daemon at Sun Oct 25 13:16:14 IST 2026
[2026-10-25 13:16:14,064.064 INFO    ] ================================================
[2026-10-25 13:16:14,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:16:14
[2026-10-25 13:16:15,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:16:15,723.723 INFO    ] Initializing speech engine...
[2026-10-25 13:16:15,734.734 INFO    ] 2026-10-25 13:16:15
[2026-10-25 13:16:16,014.014 INFO    ] 2026-10-25 13:16:15
[2026-10-25 13:16:16,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:16:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:16:16,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:16:16,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:16:16,398.398 INFO    ] time= 25/10/2026 13:16:16
[2026-10-25 13:16:16,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:16:16,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:16:16,515.515 INFO    ] No existing commands found in stream
[2026-10-25 13:16:21,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:16:21,530.530 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 13:16:24,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:16:24,083.083 INFO    ] Checking for system updates...
[2026-10-25 13:16:24,121.121 INFO    ] 200
[2026-10-25 13:16:24,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:24,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:16:24,181.181 INFO    ] No update needed
[2026-10-25 13:16:24,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 13:16:24,222.222 INFO    ] 200
[2026-10-25 13:16:24,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:24,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:16:24,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:16:24,326.326 INFO    ] No camera update needed
[2026-10-25 13:16:24,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:16:24,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:16:24,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:16:24,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:16:26,381.381 INFO    ] ================================================
[2026-10-25 13:16:26,397.397 INFO    ] Launching Daemon at Sun Oct 25 13:16:26 IST 2026
[2026-10-25 13:16:26,409.409 INFO    ] ================================================
[2026-10-25 13:16:27,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:16:27
[2026-10-25 13:16:27,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:16:27,892.892 INFO    ] Initializing speech engine...
[2026-10-25 13:16:27,904.904 INFO    ] 2026-10-25 13:16:27
[2026-10-25 13:16:28,165.165 INFO    ] 2026-10-25 13:16:28
[2026-10-25 13:16:28,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:16:29,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:16:29,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:16:29,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:16:29,533.533 INFO    ] time= 25/10/2026 13:16:29
[2026-10-25 13:16:29,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:16:29,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:16:29,594.594 INFO    ] No existing commands found in stream
[2026-10-25 13:16:34,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:16:34,608.608 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 13:16:38,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:16:38,394.394 INFO    ] Checking for system updates...
[2026-10-25 13:16:38,445.445 INFO    ] 200
[2026-10-25 13:16:38,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:38,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:16:38,520.520 INFO    ] No update needed
[2026-10-25 13:16:38,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 13:16:38,560.560 INFO    ] 200
[2026-10-25 13:16:38,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:38,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:16:38,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:16:38,645.645 INFO    ] No camera update needed
[2026-10-25 13:16:38,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:16:38,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:16:38,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:16:38,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:16:40,711.711 INFO    ] ================================================
[2026-10-25 13:16:40,727.727 INFO    ] Launching Daemon at Sun Oct 25 13:16:40 IST 2026
[2026-10-25 13:16:40,738.738 INFO    ] ================================================
[2026-10-25 13:16:41,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:16:41
[2026-10-25 13:16:41,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:16:42,166.166 INFO    ] Initializing speech engine...
[2026-10-25 13:16:42,185.185 INFO    ] 2026-10-25 13:16:42
[2026-10-25 13:16:42,436.436 INFO    ] 2026-10-25 13:16:42
[2026-10-25 13:16:42,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:16:42,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:16:42,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:16:42,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:16:42,915.915 INFO    ] time= 25/10/2026 13:16:42
[2026-10-25 13:16:42,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:16:43,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:16:43,065.065 INFO    ] No existing commands found in stream
[2026-10-25 13:16:48,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:16:48,079.079 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 13:16:51,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:16:51,634.634 INFO    ] Checking for system updates...
[2026-10-25 13:16:51,670.670 INFO    ] 200
[2026-10-25 13:16:51,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:51,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:16:51,740.740 INFO    ] No update needed
[2026-10-25 13:16:51,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 13:16:51,787.787 INFO    ] 200
[2026-10-25 13:16:51,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:16:51,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:16:51,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:16:51,885.885 INFO    ] No camera update needed
[2026-10-25 13:16:51,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:16:51,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:16:51,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:16:51,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:16:53,943.943 INFO    ] ================================================
[2026-10-25 13:16:53,958.958 INFO    ] Launching Daemon at Sun Oct 25 13:16:53 IST 2026
[2026-10-25 13:16:53,970.970 INFO    ] ================================================
[2026-10-25 13:16:54,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:16:54
[2026-10-25 13:16:55,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:16:55,376.376 INFO    ] Initializing speech engine...
[2026-10-25 13:16:55,400.400 INFO    ] 2026-10-25 13:16:55
[2026-10-25 13:16:55,670.670 INFO    ] 2026-10-25 13:16:55
[2026-10-25 13:16:55,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:16:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:16:55,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:16:59,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:16:59,594.594 INFO    ] time= 25/10/2026 13:16:59
[2026-10-25 13:16:59,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:16:59,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:16:59,652.652 INFO    ] No existing commands found in stream
[2026-10-25 13:17:04,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:17:04,664.664 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 13:17:08,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:17:08,388.388 INFO    ] Checking for system updates...
[2026-10-25 13:17:08,442.442 INFO    ] 200
[2026-10-25 13:17:08,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:17:08,447.447 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 13:17:08,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 13:17:08,498.498 INFO    ] 200
[2026-10-25 13:17:08,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:17:08,504.504 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 13:17:08,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:17:08,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:17:08,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:17:08,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:17:10,561.561 INFO    ] ================================================
[2026-10-25 13:17:10,581.581 INFO    ] Launching Daemon at Sun Oct 25 13:17:10 IST 2026
[2026-10-25 13:17:10,593.593 INFO    ] ================================================
[2026-10-25 13:17:11,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:17:11
[2026-10-25 13:17:11,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:17:12,066.066 INFO    ] Initializing speech engine...
[2026-10-25 13:17:12,075.075 INFO    ] 2026-10-25 13:17:12
[2026-10-25 13:17:12,320.320 INFO    ] 2026-10-25 13:17:12
[2026-10-25 13:17:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:17:12,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:17:12,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:17:12,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:17:12,775.775 INFO    ] time= 25/10/2026 13:17:12
[2026-10-25 13:17:12,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:17:12,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:17:12,940.940 INFO    ] No existing commands found in stream
[2026-10-25 13:17:17,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:17:17,968.968 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 13:17:19,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:17:19,800.800 INFO    ] Checking for system updates...
[2026-10-25 13:17:19,836.836 INFO    ] 200
[2026-10-25 13:17:19,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:19,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:19,894.894 INFO    ] No update needed
[2026-10-25 13:17:19,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 13:17:19,931.931 INFO    ] 200
[2026-10-25 13:17:19,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:19,973.973 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:17:20,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:20,025.025 INFO    ] No camera update needed
[2026-10-25 13:17:20,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:17:20,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:17:20,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:17:20,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:17:22,083.083 INFO    ] ================================================
[2026-10-25 13:17:22,099.099 INFO    ] Launching Daemon at Sun Oct 25 13:17:22 IST 2026
[2026-10-25 13:17:22,110.110 INFO    ] ================================================
[2026-10-25 13:17:22,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:17:22
[2026-10-25 13:17:23,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:17:23,530.530 INFO    ] Initializing speech engine...
[2026-10-25 13:17:23,539.539 INFO    ] 2026-10-25 13:17:23
[2026-10-25 13:17:23,794.794 INFO    ] 2026-10-25 13:17:23
[2026-10-25 13:17:23,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:17:24,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:17:24,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:17:24,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:17:24,184.184 INFO    ] time= 25/10/2026 13:17:24
[2026-10-25 13:17:24,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:17:24,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:17:24,343.343 INFO    ] No existing commands found in stream
[2026-10-25 13:17:29,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:17:29,371.371 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 13:17:31,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:17:31,492.492 INFO    ] Checking for system updates...
[2026-10-25 13:17:31,532.532 INFO    ] 200
[2026-10-25 13:17:31,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:31,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:17:31,599.599 INFO    ] No update needed
[2026-10-25 13:17:31,602.602 INFO    ] Checking for camera pi updates...
[2026-10-25 13:17:31,644.644 INFO    ] 200
[2026-10-25 13:17:31,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:31,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:17:31,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:17:31,736.736 INFO    ] No camera update needed
[2026-10-25 13:17:31,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:17:31,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:17:31,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:17:31,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:17:33,793.793 INFO    ] ================================================
[2026-10-25 13:17:33,808.808 INFO    ] Launching Daemon at Sun Oct 25 13:17:33 IST 2026
[2026-10-25 13:17:33,818.818 INFO    ] ================================================
[2026-10-25 13:17:34,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:17:34
[2026-10-25 13:17:35,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:17:35,468.468 INFO    ] Initializing speech engine...
[2026-10-25 13:17:35,474.474 INFO    ] 2026-10-25 13:17:35
[2026-10-25 13:17:35,759.759 INFO    ] 2026-10-25 13:17:35
[2026-10-25 13:17:35,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:17:36,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:17:36,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:17:36,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:17:36,287.287 INFO    ] time= 25/10/2026 13:17:36
[2026-10-25 13:17:36,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:17:36,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:17:36,423.423 INFO    ] No existing commands found in stream
[2026-10-25 13:17:41,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:17:41,457.457 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 13:17:42,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:17:42,617.617 INFO    ] Checking for system updates...
[2026-10-25 13:17:42,656.656 INFO    ] 200
[2026-10-25 13:17:42,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:42,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:42,717.717 INFO    ] No update needed
[2026-10-25 13:17:42,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 13:17:42,755.755 INFO    ] 200
[2026-10-25 13:17:42,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:42,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:17:42,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:42,852.852 INFO    ] No camera update needed
[2026-10-25 13:17:42,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:17:42,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:17:42,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:17:42,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:17:44,918.918 INFO    ] ================================================
[2026-10-25 13:17:44,934.934 INFO    ] Launching Daemon at Sun Oct 25 13:17:44 IST 2026
[2026-10-25 13:17:44,945.945 INFO    ] ================================================
[2026-10-25 13:17:45,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:17:45
[2026-10-25 13:17:46,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:17:46,358.358 INFO    ] Initializing speech engine...
[2026-10-25 13:17:46,367.367 INFO    ] 2026-10-25 13:17:46
[2026-10-25 13:17:46,627.627 INFO    ] 2026-10-25 13:17:46
[2026-10-25 13:17:46,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:17:46,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:17:46,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:17:47,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:17:47,046.046 INFO    ] time= 25/10/2026 13:17:47
[2026-10-25 13:17:47,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:17:47,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:17:47,227.227 INFO    ] No existing commands found in stream
[2026-10-25 13:17:52,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:17:52,242.242 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 13:17:54,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:17:54,703.703 INFO    ] Checking for system updates...
[2026-10-25 13:17:54,740.740 INFO    ] 200
[2026-10-25 13:17:54,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:54,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:54,798.798 INFO    ] No update needed
[2026-10-25 13:17:54,800.800 INFO    ] Checking for camera pi updates...
[2026-10-25 13:17:54,834.834 INFO    ] 200
[2026-10-25 13:17:54,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:17:54,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:17:54,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:17:54,929.929 INFO    ] No camera update needed
[2026-10-25 13:17:54,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:17:54,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:17:54,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:17:54,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:17:56,985.985 INFO    ] ================================================
[2026-10-25 13:17:57,001.001 INFO    ] Launching Daemon at Sun Oct 25 13:17:56 IST 2026
[2026-10-25 13:17:57,012.012 INFO    ] ================================================
[2026-10-25 13:17:57,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:17:57
[2026-10-25 13:17:58,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:17:58,421.421 INFO    ] Initializing speech engine...
[2026-10-25 13:17:58,429.429 INFO    ] 2026-10-25 13:17:58
[2026-10-25 13:17:58,724.724 INFO    ] 2026-10-25 13:17:58
[2026-10-25 13:17:58,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:18:01,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:18:01,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:18:02,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:18:02,143.143 INFO    ] time= 25/10/2026 13:18:02
[2026-10-25 13:18:02,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:18:02,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:18:02,197.197 INFO    ] No existing commands found in stream
[2026-10-25 13:18:07,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:18:07,209.209 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 13:18:08,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:18:08,857.857 INFO    ] Checking for system updates...
[2026-10-25 13:18:08,897.897 INFO    ] 200
[2026-10-25 13:18:08,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:08,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:08,956.956 INFO    ] No update needed
[2026-10-25 13:18:08,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 13:18:08,993.993 INFO    ] 200
[2026-10-25 13:18:08,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:09,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:18:09,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:09,110.110 INFO    ] No camera update needed
[2026-10-25 13:18:09,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:18:09,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:18:09,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:18:09,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:18:11,168.168 INFO    ] ================================================
[2026-10-25 13:18:11,184.184 INFO    ] Launching Daemon at Sun Oct 25 13:18:11 IST 2026
[2026-10-25 13:18:11,195.195 INFO    ] ================================================
[2026-10-25 13:18:11,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:18:11
[2026-10-25 13:18:12,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:18:12,613.613 INFO    ] Initializing speech engine...
[2026-10-25 13:18:12,622.622 INFO    ] 2026-10-25 13:18:12
[2026-10-25 13:18:12,889.889 INFO    ] 2026-10-25 13:18:12
[2026-10-25 13:18:12,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:18:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:18:13,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:18:13,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:18:13,272.272 INFO    ] time= 25/10/2026 13:18:13
[2026-10-25 13:18:13,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:18:13,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:18:13,397.397 INFO    ] No existing commands found in stream
[2026-10-25 13:18:18,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:18:18,415.415 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 13:18:20,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:18:20,475.475 INFO    ] Checking for system updates...
[2026-10-25 13:18:20,515.515 INFO    ] 200
[2026-10-25 13:18:20,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:20,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:18:20,577.577 INFO    ] No update needed
[2026-10-25 13:18:20,580.580 INFO    ] Checking for camera pi updates...
[2026-10-25 13:18:20,623.623 INFO    ] 200
[2026-10-25 13:18:20,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:20,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:18:20,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:18:20,729.729 INFO    ] No camera update needed
[2026-10-25 13:18:20,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:18:20,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:18:20,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:18:20,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:18:22,787.787 INFO    ] ================================================
[2026-10-25 13:18:22,803.803 INFO    ] Launching Daemon at Sun Oct 25 13:18:22 IST 2026
[2026-10-25 13:18:22,814.814 INFO    ] ================================================
[2026-10-25 13:18:23,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:18:23
[2026-10-25 13:18:23,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:18:24,268.268 INFO    ] Initializing speech engine...
[2026-10-25 13:18:24,275.275 INFO    ] 2026-10-25 13:18:24
[2026-10-25 13:18:24,534.534 INFO    ] 2026-10-25 13:18:24
[2026-10-25 13:18:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:18:24,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:18:24,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:18:24,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:18:25,000.000 INFO    ] time= 25/10/2026 13:18:24
[2026-10-25 13:18:25,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:18:25,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:18:25,137.137 INFO    ] No existing commands found in stream
[2026-10-25 13:18:30,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:18:30,153.153 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 13:18:33,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:18:33,371.371 INFO    ] Checking for system updates...
[2026-10-25 13:18:33,413.413 INFO    ] 200
[2026-10-25 13:18:33,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:33,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:33,472.472 INFO    ] No update needed
[2026-10-25 13:18:33,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 13:18:33,508.508 INFO    ] 200
[2026-10-25 13:18:33,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:33,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:18:33,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:33,608.608 INFO    ] No camera update needed
[2026-10-25 13:18:33,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:18:33,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:18:33,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:18:33,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:18:35,667.667 INFO    ] ================================================
[2026-10-25 13:18:35,684.684 INFO    ] Launching Daemon at Sun Oct 25 13:18:35 IST 2026
[2026-10-25 13:18:35,695.695 INFO    ] ================================================
[2026-10-25 13:18:36,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:18:36
[2026-10-25 13:18:36,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:18:37,162.162 INFO    ] Initializing speech engine...
[2026-10-25 13:18:37,168.168 INFO    ] 2026-10-25 13:18:37
[2026-10-25 13:18:37,439.439 INFO    ] 2026-10-25 13:18:37
[2026-10-25 13:18:37,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:18:37,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:18:37,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:18:37,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:18:37,872.872 INFO    ] time= 25/10/2026 13:18:37
[2026-10-25 13:18:37,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:18:37,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:18:38,027.027 INFO    ] No existing commands found in stream
[2026-10-25 13:18:43,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:18:43,055.055 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 13:18:45,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:18:45,922.922 INFO    ] Checking for system updates...
[2026-10-25 13:18:45,959.959 INFO    ] 200
[2026-10-25 13:18:45,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:46,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:18:46,021.021 INFO    ] No update needed
[2026-10-25 13:18:46,024.024 INFO    ] Checking for camera pi updates...
[2026-10-25 13:18:46,058.058 INFO    ] 200
[2026-10-25 13:18:46,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:46,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:18:46,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:18:46,154.154 INFO    ] No camera update needed
[2026-10-25 13:18:46,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:18:46,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:18:46,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:18:46,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:18:48,209.209 INFO    ] ================================================
[2026-10-25 13:18:48,226.226 INFO    ] Launching Daemon at Sun Oct 25 13:18:48 IST 2026
[2026-10-25 13:18:48,237.237 INFO    ] ================================================
[2026-10-25 13:18:48,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:18:48
[2026-10-25 13:18:49,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:18:49,656.656 INFO    ] Initializing speech engine...
[2026-10-25 13:18:49,665.665 INFO    ] 2026-10-25 13:18:49
[2026-10-25 13:18:49,916.916 INFO    ] 2026-10-25 13:18:49
[2026-10-25 13:18:49,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:18:50,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:18:50,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:18:50,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:18:50,290.290 INFO    ] time= 25/10/2026 13:18:50
[2026-10-25 13:18:50,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:18:50,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:18:50,369.369 INFO    ] No existing commands found in stream
[2026-10-25 13:18:55,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:18:55,397.397 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 13:18:58,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:18:58,987.987 INFO    ] Checking for system updates...
[2026-10-25 13:18:59,027.027 INFO    ] 200
[2026-10-25 13:18:59,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:59,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:59,088.088 INFO    ] No update needed
[2026-10-25 13:18:59,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 13:18:59,131.131 INFO    ] 200
[2026-10-25 13:18:59,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:18:59,176.176 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:18:59,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:18:59,229.229 INFO    ] No camera update needed
[2026-10-25 13:18:59,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:18:59,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:18:59,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:18:59,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:19:01,299.299 INFO    ] ================================================
[2026-10-25 13:19:01,333.333 INFO    ] Launching Daemon at Sun Oct 25 13:19:01 IST 2026
[2026-10-25 13:19:01,368.368 INFO    ] ================================================
[2026-10-25 13:19:02,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:19:02
[2026-10-25 13:19:02,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:19:03,089.089 INFO    ] Initializing speech engine...
[2026-10-25 13:19:03,099.099 INFO    ] 2026-10-25 13:19:03
[2026-10-25 13:19:03,360.360 INFO    ] 2026-10-25 13:19:03
[2026-10-25 13:19:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:19:04,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:19:04,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:19:04,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:19:04,541.541 INFO    ] time= 25/10/2026 13:19:04
[2026-10-25 13:19:04,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:19:04,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:19:04,737.737 INFO    ] No existing commands found in stream
[2026-10-25 13:19:09,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:19:09,761.761 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 13:19:10,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:19:10,434.434 INFO    ] Checking for system updates...
[2026-10-25 13:19:10,473.473 INFO    ] 200
[2026-10-25 13:19:10,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:10,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:10,536.536 INFO    ] No update needed
[2026-10-25 13:19:10,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 13:19:10,575.575 INFO    ] 200
[2026-10-25 13:19:10,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:10,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:19:10,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:10,673.673 INFO    ] No camera update needed
[2026-10-25 13:19:10,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:19:10,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:19:10,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:19:10,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:19:12,729.729 INFO    ] ================================================
[2026-10-25 13:19:12,745.745 INFO    ] Launching Daemon at Sun Oct 25 13:19:12 IST 2026
[2026-10-25 13:19:12,756.756 INFO    ] ================================================
[2026-10-25 13:19:13,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:19:13
[2026-10-25 13:19:13,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:19:14,175.175 INFO    ] Initializing speech engine...
[2026-10-25 13:19:14,193.193 INFO    ] 2026-10-25 13:19:14
[2026-10-25 13:19:14,462.462 INFO    ] 2026-10-25 13:19:14
[2026-10-25 13:19:14,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:19:14,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:19:14,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:19:14,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:19:14,869.869 INFO    ] time= 25/10/2026 13:19:14
[2026-10-25 13:19:14,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:19:14,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:19:14,951.951 INFO    ] No existing commands found in stream
[2026-10-25 13:19:19,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:19:19,967.967 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 13:19:23,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:19:23,236.236 INFO    ] Checking for system updates...
[2026-10-25 13:19:23,273.273 INFO    ] 200
[2026-10-25 13:19:23,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:23,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:23,338.338 INFO    ] No update needed
[2026-10-25 13:19:23,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 13:19:23,376.376 INFO    ] 200
[2026-10-25 13:19:23,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:23,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:19:23,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:23,474.474 INFO    ] No camera update needed
[2026-10-25 13:19:23,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:19:23,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:19:23,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:19:23,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:19:25,533.533 INFO    ] ================================================
[2026-10-25 13:19:25,548.548 INFO    ] Launching Daemon at Sun Oct 25 13:19:25 IST 2026
[2026-10-25 13:19:25,558.558 INFO    ] ================================================
[2026-10-25 13:19:26,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:19:26
[2026-10-25 13:19:26,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:19:26,992.992 INFO    ] Initializing speech engine...
[2026-10-25 13:19:26,997.997 INFO    ] 2026-10-25 13:19:26
[2026-10-25 13:19:27,260.260 INFO    ] 2026-10-25 13:19:27
[2026-10-25 13:19:27,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:19:27,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:19:27,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:19:27,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:19:27,743.743 INFO    ] time= 25/10/2026 13:19:27
[2026-10-25 13:19:27,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:19:27,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:19:27,900.900 INFO    ] No existing commands found in stream
[2026-10-25 13:19:32,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:19:32,939.939 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 13:19:35,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:19:35,429.429 INFO    ] Checking for system updates...
[2026-10-25 13:19:35,466.466 INFO    ] 200
[2026-10-25 13:19:35,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:35,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:35,524.524 INFO    ] No update needed
[2026-10-25 13:19:35,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 13:19:35,560.560 INFO    ] 200
[2026-10-25 13:19:35,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:35,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:19:35,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:35,662.662 INFO    ] No camera update needed
[2026-10-25 13:19:35,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:19:35,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:19:35,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:19:35,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:19:37,719.719 INFO    ] ================================================
[2026-10-25 13:19:37,733.733 INFO    ] Launching Daemon at Sun Oct 25 13:19:37 IST 2026
[2026-10-25 13:19:37,744.744 INFO    ] ================================================
[2026-10-25 13:19:38,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:19:38
[2026-10-25 13:19:38,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:19:39,208.208 INFO    ] Initializing speech engine...
[2026-10-25 13:19:39,217.217 INFO    ] 2026-10-25 13:19:39
[2026-10-25 13:19:39,531.531 INFO    ] 2026-10-25 13:19:39
[2026-10-25 13:19:39,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:19:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:19:39,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:19:39,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:19:39,929.929 INFO    ] time= 25/10/2026 13:19:39
[2026-10-25 13:19:39,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:19:39,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:19:40,007.007 INFO    ] No existing commands found in stream
[2026-10-25 13:19:45,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:19:45,037.037 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 13:19:51,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:19:51,511.511 INFO    ] Checking for system updates...
[2026-10-25 13:19:51,547.547 INFO    ] 200
[2026-10-25 13:19:51,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:51,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:51,613.613 INFO    ] No update needed
[2026-10-25 13:19:51,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 13:19:51,655.655 INFO    ] 200
[2026-10-25 13:19:51,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:19:51,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:19:51,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:19:51,749.749 INFO    ] No camera update needed
[2026-10-25 13:19:51,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:19:51,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:19:51,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:19:51,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:19:53,809.809 INFO    ] ================================================
[2026-10-25 13:19:53,824.824 INFO    ] Launching Daemon at Sun Oct 25 13:19:53 IST 2026
[2026-10-25 13:19:53,835.835 INFO    ] ================================================
[2026-10-25 13:19:54,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:19:54
[2026-10-25 13:19:54,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:19:55,249.249 INFO    ] Initializing speech engine...
[2026-10-25 13:19:55,258.258 INFO    ] 2026-10-25 13:19:55
[2026-10-25 13:19:55,550.550 INFO    ] 2026-10-25 13:19:55
[2026-10-25 13:19:55,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:19:55,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:19:55,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:19:55,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:19:55,930.930 INFO    ] time= 25/10/2026 13:19:55
[2026-10-25 13:19:55,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:19:55,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:19:56,054.054 INFO    ] No existing commands found in stream
[2026-10-25 13:20:01,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:20:01,070.070 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 13:20:08,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:20:08,179.179 INFO    ] Checking for system updates...
[2026-10-25 13:20:08,237.237 INFO    ] 200
[2026-10-25 13:20:08,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:08,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:20:08,308.308 INFO    ] No update needed
[2026-10-25 13:20:08,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 13:20:08,346.346 INFO    ] 200
[2026-10-25 13:20:08,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:08,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:20:08,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:20:08,551.551 INFO    ] No camera update needed
[2026-10-25 13:20:08,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:20:08,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:20:08,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:20:08,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:20:10,608.608 INFO    ] ================================================
[2026-10-25 13:20:10,624.624 INFO    ] Launching Daemon at Sun Oct 25 13:20:10 IST 2026
[2026-10-25 13:20:10,636.636 INFO    ] ================================================
[2026-10-25 13:20:11,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:20:11
[2026-10-25 13:20:11,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:20:12,073.073 INFO    ] Initializing speech engine...
[2026-10-25 13:20:12,083.083 INFO    ] 2026-10-25 13:20:12
[2026-10-25 13:20:12,345.345 INFO    ] 2026-10-25 13:20:12
[2026-10-25 13:20:12,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:20:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:20:12,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:20:12,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:20:12,772.772 INFO    ] time= 25/10/2026 13:20:12
[2026-10-25 13:20:12,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:20:12,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:20:12,944.944 INFO    ] No existing commands found in stream
[2026-10-25 13:20:17,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:20:17,959.959 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 13:20:20,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:20:20,615.615 INFO    ] Checking for system updates...
[2026-10-25 13:20:20,655.655 INFO    ] 200
[2026-10-25 13:20:20,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:20,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:20,713.713 INFO    ] No update needed
[2026-10-25 13:20:20,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 13:20:20,749.749 INFO    ] 200
[2026-10-25 13:20:20,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:20,797.797 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:20:20,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:20,849.849 INFO    ] No camera update needed
[2026-10-25 13:20:20,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:20:20,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:20:20,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:20:20,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:20:22,907.907 INFO    ] ================================================
[2026-10-25 13:20:22,923.923 INFO    ] Launching Daemon at Sun Oct 25 13:20:22 IST 2026
[2026-10-25 13:20:22,937.937 INFO    ] ================================================
[2026-10-25 13:20:23,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:20:23
[2026-10-25 13:20:24,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:20:24,338.338 INFO    ] Initializing speech engine...
[2026-10-25 13:20:24,361.361 INFO    ] 2026-10-25 13:20:24
[2026-10-25 13:20:24,617.617 INFO    ] 2026-10-25 13:20:24
[2026-10-25 13:20:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:20:24,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:20:24,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:20:25,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:20:25,101.101 INFO    ] time= 25/10/2026 13:20:25
[2026-10-25 13:20:25,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:20:25,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:20:25,250.250 INFO    ] No existing commands found in stream
[2026-10-25 13:20:30,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:20:30,268.268 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 13:20:37,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:20:37,719.719 INFO    ] Checking for system updates...
[2026-10-25 13:20:37,759.759 INFO    ] 200
[2026-10-25 13:20:37,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:37,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:20:37,823.823 INFO    ] No update needed
[2026-10-25 13:20:37,825.825 INFO    ] Checking for camera pi updates...
[2026-10-25 13:20:37,860.860 INFO    ] 200
[2026-10-25 13:20:37,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:37,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:20:38,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:20:38,012.012 INFO    ] No camera update needed
[2026-10-25 13:20:38,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:20:38,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:20:38,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:20:38,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:20:40,069.069 INFO    ] ================================================
[2026-10-25 13:20:40,083.083 INFO    ] Launching Daemon at Sun Oct 25 13:20:40 IST 2026
[2026-10-25 13:20:40,094.094 INFO    ] ================================================
[2026-10-25 13:20:40,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:20:40
[2026-10-25 13:20:41,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:20:41,555.555 INFO    ] Initializing speech engine...
[2026-10-25 13:20:41,570.570 INFO    ] 2026-10-25 13:20:41
[2026-10-25 13:20:41,844.844 INFO    ] 2026-10-25 13:20:41
[2026-10-25 13:20:41,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:20:42,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:20:42,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:20:42,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:20:42,258.258 INFO    ] time= 25/10/2026 13:20:42
[2026-10-25 13:20:42,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:20:42,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:20:42,409.409 INFO    ] No existing commands found in stream
[2026-10-25 13:20:47,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:20:47,436.436 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 13:20:48,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:20:48,804.804 INFO    ] Checking for system updates...
[2026-10-25 13:20:48,840.840 INFO    ] 200
[2026-10-25 13:20:48,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:48,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:48,903.903 INFO    ] No update needed
[2026-10-25 13:20:48,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 13:20:48,942.942 INFO    ] 200
[2026-10-25 13:20:48,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:48,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:20:49,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:49,033.033 INFO    ] No camera update needed
[2026-10-25 13:20:49,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:20:49,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:20:49,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:20:49,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:20:51,088.088 INFO    ] ================================================
[2026-10-25 13:20:51,104.104 INFO    ] Launching Daemon at Sun Oct 25 13:20:51 IST 2026
[2026-10-25 13:20:51,115.115 INFO    ] ================================================
[2026-10-25 13:20:51,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:20:51
[2026-10-25 13:20:52,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:20:52,558.558 INFO    ] Initializing speech engine...
[2026-10-25 13:20:52,567.567 INFO    ] 2026-10-25 13:20:52
[2026-10-25 13:20:52,833.833 INFO    ] 2026-10-25 13:20:52
[2026-10-25 13:20:52,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:20:53,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:20:53,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:20:53,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:20:53,206.206 INFO    ] time= 25/10/2026 13:20:53
[2026-10-25 13:20:53,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:20:53,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:20:53,329.329 INFO    ] No existing commands found in stream
[2026-10-25 13:20:58,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:20:58,344.344 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 13:20:58,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:20:58,997.997 INFO    ] Checking for system updates...
[2026-10-25 13:20:59,034.034 INFO    ] 200
[2026-10-25 13:20:59,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:59,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:59,099.099 INFO    ] No update needed
[2026-10-25 13:20:59,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 13:20:59,136.136 INFO    ] 200
[2026-10-25 13:20:59,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:20:59,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:20:59,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:20:59,231.231 INFO    ] No camera update needed
[2026-10-25 13:20:59,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:20:59,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:20:59,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:20:59,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:21:01,288.288 INFO    ] ================================================
[2026-10-25 13:21:01,304.304 INFO    ] Launching Daemon at Sun Oct 25 13:21:01 IST 2026
[2026-10-25 13:21:01,314.314 INFO    ] ================================================
[2026-10-25 13:21:02,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:21:02
[2026-10-25 13:21:02,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:21:03,029.029 INFO    ] Initializing speech engine...
[2026-10-25 13:21:03,038.038 INFO    ] 2026-10-25 13:21:03
[2026-10-25 13:21:03,342.342 INFO    ] 2026-10-25 13:21:03
[2026-10-25 13:21:03,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:21:03,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:21:03,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:21:03,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:21:03,829.829 INFO    ] time= 25/10/2026 13:21:03
[2026-10-25 13:21:03,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:21:03,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:21:04,007.007 INFO    ] No existing commands found in stream
[2026-10-25 13:21:09,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:21:09,025.025 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 13:21:11,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:21:11,867.867 INFO    ] Checking for system updates...
[2026-10-25 13:21:11,905.905 INFO    ] 200
[2026-10-25 13:21:11,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:11,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:21:11,965.965 INFO    ] No update needed
[2026-10-25 13:21:11,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 13:21:12,003.003 INFO    ] 200
[2026-10-25 13:21:12,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:12,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:21:12,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:21:12,100.100 INFO    ] No camera update needed
[2026-10-25 13:21:12,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:21:12,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:21:12,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:21:12,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:21:14,161.161 INFO    ] ================================================
[2026-10-25 13:21:14,177.177 INFO    ] Launching Daemon at Sun Oct 25 13:21:14 IST 2026
[2026-10-25 13:21:14,188.188 INFO    ] ================================================
[2026-10-25 13:21:14,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:21:14
[2026-10-25 13:21:15,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:21:15,636.636 INFO    ] Initializing speech engine...
[2026-10-25 13:21:15,659.659 INFO    ] 2026-10-25 13:21:15
[2026-10-25 13:21:15,924.924 INFO    ] 2026-10-25 13:21:15
[2026-10-25 13:21:15,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:21:16,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:21:16,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:21:16,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:21:16,294.294 INFO    ] time= 25/10/2026 13:21:16
[2026-10-25 13:21:16,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:21:16,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:21:16,376.376 INFO    ] No existing commands found in stream
[2026-10-25 13:21:21,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:21:21,404.404 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 13:21:23,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:21:23,180.180 INFO    ] Checking for system updates...
[2026-10-25 13:21:23,216.216 INFO    ] 200
[2026-10-25 13:21:23,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:23,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:21:23,275.275 INFO    ] No update needed
[2026-10-25 13:21:23,277.277 INFO    ] Checking for camera pi updates...
[2026-10-25 13:21:23,316.316 INFO    ] 200
[2026-10-25 13:21:23,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:23,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:21:23,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:21:23,419.419 INFO    ] No camera update needed
[2026-10-25 13:21:23,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:21:23,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:21:23,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:21:23,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:21:25,476.476 INFO    ] ================================================
[2026-10-25 13:21:25,491.491 INFO    ] Launching Daemon at Sun Oct 25 13:21:25 IST 2026
[2026-10-25 13:21:25,503.503 INFO    ] ================================================
[2026-10-25 13:21:26,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:21:26
[2026-10-25 13:21:26,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:21:26,957.957 INFO    ] Initializing speech engine...
[2026-10-25 13:21:26,966.966 INFO    ] 2026-10-25 13:21:26
[2026-10-25 13:21:27,267.267 INFO    ] 2026-10-25 13:21:27
[2026-10-25 13:21:27,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:21:27,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:21:27,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:21:27,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:21:27,696.696 INFO    ] time= 25/10/2026 13:21:27
[2026-10-25 13:21:27,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:21:27,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:21:27,782.782 INFO    ] No existing commands found in stream
[2026-10-25 13:21:32,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:21:32,798.798 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 13:21:39,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:21:39,490.490 INFO    ] Checking for system updates...
[2026-10-25 13:21:39,534.534 INFO    ] 200
[2026-10-25 13:21:39,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:39,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:21:39,600.600 INFO    ] No update needed
[2026-10-25 13:21:39,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 13:21:39,641.641 INFO    ] 200
[2026-10-25 13:21:39,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:39,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:21:39,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:21:39,734.734 INFO    ] No camera update needed
[2026-10-25 13:21:39,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:21:39,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:21:39,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:21:39,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:21:41,789.789 INFO    ] ================================================
[2026-10-25 13:21:41,804.804 INFO    ] Launching Daemon at Sun Oct 25 13:21:41 IST 2026
[2026-10-25 13:21:41,816.816 INFO    ] ================================================
[2026-10-25 13:21:42,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:21:42
[2026-10-25 13:21:43,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:21:43,284.284 INFO    ] Initializing speech engine...
[2026-10-25 13:21:43,287.287 INFO    ] 2026-10-25 13:21:43
[2026-10-25 13:21:43,563.563 INFO    ] 2026-10-25 13:21:43
[2026-10-25 13:21:43,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:21:43,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:21:43,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:21:43,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:21:43,938.938 INFO    ] time= 25/10/2026 13:21:43
[2026-10-25 13:21:43,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:21:43,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:21:44,113.113 INFO    ] No existing commands found in stream
[2026-10-25 13:21:49,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:21:49,146.146 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 13:21:49,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:21:49,942.942 INFO    ] Checking for system updates...
[2026-10-25 13:21:49,980.980 INFO    ] 200
[2026-10-25 13:21:49,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:50,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:21:50,039.039 INFO    ] No update needed
[2026-10-25 13:21:50,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 13:21:50,078.078 INFO    ] 200
[2026-10-25 13:21:50,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:21:50,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:21:50,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:21:50,178.178 INFO    ] No camera update needed
[2026-10-25 13:21:50,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:21:50,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:21:50,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:21:50,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:21:52,237.237 INFO    ] ================================================
[2026-10-25 13:21:52,252.252 INFO    ] Launching Daemon at Sun Oct 25 13:21:52 IST 2026
[2026-10-25 13:21:52,263.263 INFO    ] ================================================
[2026-10-25 13:21:52,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:21:52
[2026-10-25 13:21:53,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:21:53,721.721 INFO    ] Initializing speech engine...
[2026-10-25 13:21:53,731.731 INFO    ] 2026-10-25 13:21:53
[2026-10-25 13:21:53,978.978 INFO    ] 2026-10-25 13:21:53
[2026-10-25 13:21:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:21:54,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:21:54,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:21:54,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:21:54,486.486 INFO    ] time= 25/10/2026 13:21:54
[2026-10-25 13:21:54,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:21:54,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:21:54,685.685 INFO    ] No existing commands found in stream
[2026-10-25 13:21:59,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:21:59,714.714 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 13:22:00,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:22:00,314.314 INFO    ] Checking for system updates...
[2026-10-25 13:22:00,350.350 INFO    ] 200
[2026-10-25 13:22:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:00,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:00,416.416 INFO    ] No update needed
[2026-10-25 13:22:00,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:00,457.457 INFO    ] 200
[2026-10-25 13:22:00,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:00,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:00,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:00,556.556 INFO    ] No camera update needed
[2026-10-25 13:22:00,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:00,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:00,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:00,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:02,617.617 INFO    ] ================================================
[2026-10-25 13:22:02,635.635 INFO    ] Launching Daemon at Sun Oct 25 13:22:02 IST 2026
[2026-10-25 13:22:02,647.647 INFO    ] ================================================
[2026-10-25 13:22:03,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:22:03
[2026-10-25 13:22:04,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:22:04,359.359 INFO    ] Initializing speech engine...
[2026-10-25 13:22:04,373.373 INFO    ] 2026-10-25 13:22:04
[2026-10-25 13:22:04,661.661 INFO    ] 2026-10-25 13:22:04
[2026-10-25 13:22:04,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:22:04,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:22:04,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:22:05,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:22:05,136.136 INFO    ] time= 25/10/2026 13:22:05
[2026-10-25 13:22:05,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:22:05,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:22:05,332.332 INFO    ] No existing commands found in stream
[2026-10-25 13:22:10,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:22:10,357.357 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 13:22:12,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:22:12,807.807 INFO    ] Checking for system updates...
[2026-10-25 13:22:12,849.849 INFO    ] 200
[2026-10-25 13:22:12,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:12,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:12,919.919 INFO    ] No update needed
[2026-10-25 13:22:12,922.922 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:12,957.957 INFO    ] 200
[2026-10-25 13:22:12,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:13,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:13,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:13,161.161 INFO    ] No camera update needed
[2026-10-25 13:22:13,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:13,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:13,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:13,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:15,219.219 INFO    ] ================================================
[2026-10-25 13:22:15,234.234 INFO    ] Launching Daemon at Sun Oct 25 13:22:15 IST 2026
[2026-10-25 13:22:15,244.244 INFO    ] ================================================
[2026-10-25 13:22:15,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:22:15
[2026-10-25 13:22:16,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:22:16,648.648 INFO    ] Initializing speech engine...
[2026-10-25 13:22:16,671.671 INFO    ] 2026-10-25 13:22:16
[2026-10-25 13:22:16,928.928 INFO    ] 2026-10-25 13:22:16
[2026-10-25 13:22:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:22:17,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:22:17,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:22:17,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:22:17,443.443 INFO    ] time= 25/10/2026 13:22:17
[2026-10-25 13:22:17,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:22:17,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:22:17,630.630 INFO    ] No existing commands found in stream
[2026-10-25 13:22:22,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:22:22,655.655 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 13:22:24,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:22:24,564.564 INFO    ] Checking for system updates...
[2026-10-25 13:22:24,600.600 INFO    ] 200
[2026-10-25 13:22:24,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:24,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:24,667.667 INFO    ] No update needed
[2026-10-25 13:22:24,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:24,707.707 INFO    ] 200
[2026-10-25 13:22:24,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:24,754.754 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:24,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:24,791.791 INFO    ] No camera update needed
[2026-10-25 13:22:24,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:24,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:24,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:24,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:26,848.848 INFO    ] ================================================
[2026-10-25 13:22:26,863.863 INFO    ] Launching Daemon at Sun Oct 25 13:22:26 IST 2026
[2026-10-25 13:22:26,874.874 INFO    ] ================================================
[2026-10-25 13:22:27,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:22:27
[2026-10-25 13:22:28,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:22:28,326.326 INFO    ] Initializing speech engine...
[2026-10-25 13:22:28,336.336 INFO    ] 2026-10-25 13:22:28
[2026-10-25 13:22:28,593.593 INFO    ] 2026-10-25 13:22:28
[2026-10-25 13:22:28,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:22:28,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:22:28,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:22:29,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:22:29,078.078 INFO    ] time= 25/10/2026 13:22:29
[2026-10-25 13:22:29,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:22:29,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:22:29,276.276 INFO    ] No existing commands found in stream
[2026-10-25 13:22:34,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:22:34,297.297 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 13:22:36,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:22:36,115.115 INFO    ] Checking for system updates...
[2026-10-25 13:22:36,151.151 INFO    ] 200
[2026-10-25 13:22:36,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:36,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:36,218.218 INFO    ] No update needed
[2026-10-25 13:22:36,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:36,260.260 INFO    ] 200
[2026-10-25 13:22:36,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:36,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:36,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:36,356.356 INFO    ] No camera update needed
[2026-10-25 13:22:36,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:36,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:36,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:36,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:38,410.410 INFO    ] ================================================
[2026-10-25 13:22:38,425.425 INFO    ] Launching Daemon at Sun Oct 25 13:22:38 IST 2026
[2026-10-25 13:22:38,436.436 INFO    ] ================================================
[2026-10-25 13:22:39,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:22:39
[2026-10-25 13:22:39,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:22:39,858.858 INFO    ] Initializing speech engine...
[2026-10-25 13:22:39,868.868 INFO    ] 2026-10-25 13:22:39
[2026-10-25 13:22:40,118.118 INFO    ] 2026-10-25 13:22:40
[2026-10-25 13:22:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:22:41,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:22:41,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:22:41,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:22:41,598.598 INFO    ] time= 25/10/2026 13:22:41
[2026-10-25 13:22:41,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:22:41,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:22:41,667.667 INFO    ] No existing commands found in stream
[2026-10-25 13:22:46,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:22:46,680.680 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 13:22:47,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:22:47,451.451 INFO    ] Checking for system updates...
[2026-10-25 13:22:47,492.492 INFO    ] 200
[2026-10-25 13:22:47,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:47,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:47,553.553 INFO    ] No update needed
[2026-10-25 13:22:47,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:47,591.591 INFO    ] 200
[2026-10-25 13:22:47,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:47,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:47,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:22:47,697.697 INFO    ] No camera update needed
[2026-10-25 13:22:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:47,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:47,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:47,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:49,757.757 INFO    ] ================================================
[2026-10-25 13:22:49,772.772 INFO    ] Launching Daemon at Sun Oct 25 13:22:49 IST 2026
[2026-10-25 13:22:49,783.783 INFO    ] ================================================
[2026-10-25 13:22:50,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:22:50
[2026-10-25 13:22:50,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:22:51,233.233 INFO    ] Initializing speech engine...
[2026-10-25 13:22:51,242.242 INFO    ] 2026-10-25 13:22:51
[2026-10-25 13:22:51,488.488 INFO    ] 2026-10-25 13:22:51
[2026-10-25 13:22:51,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:22:51,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:22:51,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:22:51,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:22:51,959.959 INFO    ] time= 25/10/2026 13:22:51
[2026-10-25 13:22:52,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:22:52,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:22:52,157.157 INFO    ] No existing commands found in stream
[2026-10-25 13:22:57,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:22:57,186.186 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 13:22:57,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:22:57,674.674 INFO    ] Checking for system updates...
[2026-10-25 13:22:57,711.711 INFO    ] 200
[2026-10-25 13:22:57,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:57,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:57,769.769 INFO    ] No update needed
[2026-10-25 13:22:57,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 13:22:57,805.805 INFO    ] 200
[2026-10-25 13:22:57,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:22:57,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:22:57,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:22:57,906.906 INFO    ] No camera update needed
[2026-10-25 13:22:57,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:22:57,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:22:57,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:22:57,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:22:59,961.961 INFO    ] ================================================
[2026-10-25 13:22:59,977.977 INFO    ] Launching Daemon at Sun Oct 25 13:22:59 IST 2026
[2026-10-25 13:22:59,987.987 INFO    ] ================================================
[2026-10-25 13:23:00,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:23:00
[2026-10-25 13:23:01,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:23:01,853.853 INFO    ] Initializing speech engine...
[2026-10-25 13:23:01,861.861 INFO    ] 2026-10-25 13:23:01
[2026-10-25 13:23:02,189.189 INFO    ] 2026-10-25 13:23:02
[2026-10-25 13:23:02,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:23:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:23:02,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:23:02,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:23:02,737.737 INFO    ] time= 25/10/2026 13:23:02
[2026-10-25 13:23:02,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:23:02,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:23:02,907.907 INFO    ] No existing commands found in stream
[2026-10-25 13:23:07,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:23:07,956.956 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 13:23:12,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:23:12,192.192 INFO    ] Checking for system updates...
[2026-10-25 13:23:12,233.233 INFO    ] 200
[2026-10-25 13:23:12,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:12,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:12,292.292 INFO    ] No update needed
[2026-10-25 13:23:12,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 13:23:12,329.329 INFO    ] 200
[2026-10-25 13:23:12,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:12,374.374 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:23:12,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:12,423.423 INFO    ] No camera update needed
[2026-10-25 13:23:12,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:23:12,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:23:12,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:23:12,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:23:14,477.477 INFO    ] ================================================
[2026-10-25 13:23:14,493.493 INFO    ] Launching Daemon at Sun Oct 25 13:23:14 IST 2026
[2026-10-25 13:23:14,504.504 INFO    ] ================================================
[2026-10-25 13:23:15,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:23:15
[2026-10-25 13:23:15,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:23:15,902.902 INFO    ] Initializing speech engine...
[2026-10-25 13:23:15,916.916 INFO    ] 2026-10-25 13:23:15
[2026-10-25 13:23:16,183.183 INFO    ] 2026-10-25 13:23:16
[2026-10-25 13:23:16,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:23:16,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:23:16,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:23:16,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:23:16,669.669 INFO    ] time= 25/10/2026 13:23:16
[2026-10-25 13:23:16,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:23:16,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:23:16,819.819 INFO    ] No existing commands found in stream
[2026-10-25 13:23:21,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:23:21,836.836 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 13:23:25,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:23:25,931.931 INFO    ] Checking for system updates...
[2026-10-25 13:23:25,967.967 INFO    ] 200
[2026-10-25 13:23:25,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:26,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:26,025.025 INFO    ] No update needed
[2026-10-25 13:23:26,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 13:23:26,062.062 INFO    ] 200
[2026-10-25 13:23:26,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:26,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:23:26,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:26,158.158 INFO    ] No camera update needed
[2026-10-25 13:23:26,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:23:26,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:23:26,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:23:26,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:23:28,216.216 INFO    ] ================================================
[2026-10-25 13:23:28,232.232 INFO    ] Launching Daemon at Sun Oct 25 13:23:28 IST 2026
[2026-10-25 13:23:28,244.244 INFO    ] ================================================
[2026-10-25 13:23:28,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:23:28
[2026-10-25 13:23:29,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:23:29,693.693 INFO    ] Initializing speech engine...
[2026-10-25 13:23:29,698.698 INFO    ] 2026-10-25 13:23:29
[2026-10-25 13:23:29,959.959 INFO    ] 2026-10-25 13:23:29
[2026-10-25 13:23:29,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:23:30,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:23:30,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:23:30,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:23:30,435.435 INFO    ] time= 25/10/2026 13:23:30
[2026-10-25 13:23:30,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:23:30,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:23:30,610.610 INFO    ] No existing commands found in stream
[2026-10-25 13:23:35,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:23:35,636.636 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 13:23:36,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:23:36,558.558 INFO    ] Checking for system updates...
[2026-10-25 13:23:36,604.604 INFO    ] 200
[2026-10-25 13:23:36,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:36,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:36,663.663 INFO    ] No update needed
[2026-10-25 13:23:36,665.665 INFO    ] Checking for camera pi updates...
[2026-10-25 13:23:36,707.707 INFO    ] 200
[2026-10-25 13:23:36,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:36,757.757 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:23:36,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:23:36,808.808 INFO    ] No camera update needed
[2026-10-25 13:23:36,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:23:36,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:23:36,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:23:36,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:23:38,864.864 INFO    ] ================================================
[2026-10-25 13:23:38,880.880 INFO    ] Launching Daemon at Sun Oct 25 13:23:38 IST 2026
[2026-10-25 13:23:38,891.891 INFO    ] ================================================
[2026-10-25 13:23:39,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:23:39
[2026-10-25 13:23:40,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:23:40,352.352 INFO    ] Initializing speech engine...
[2026-10-25 13:23:40,361.361 INFO    ] 2026-10-25 13:23:40
[2026-10-25 13:23:40,610.610 INFO    ] 2026-10-25 13:23:40
[2026-10-25 13:23:40,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:23:42,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:23:42,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:23:43,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:23:43,188.188 INFO    ] time= 25/10/2026 13:23:43
[2026-10-25 13:23:43,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:23:43,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:23:43,319.319 INFO    ] No existing commands found in stream
[2026-10-25 13:23:48,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:23:48,336.336 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 13:23:51,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:23:51,478.478 INFO    ] Checking for system updates...
[2026-10-25 13:23:51,520.520 INFO    ] 200
[2026-10-25 13:23:51,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:51,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:23:51,588.588 INFO    ] No update needed
[2026-10-25 13:23:51,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 13:23:51,631.631 INFO    ] 200
[2026-10-25 13:23:51,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:23:51,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:23:51,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:23:51,735.735 INFO    ] No camera update needed
[2026-10-25 13:23:51,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:23:51,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:23:51,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:23:51,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:23:53,797.797 INFO    ] ================================================
[2026-10-25 13:23:53,813.813 INFO    ] Launching Daemon at Sun Oct 25 13:23:53 IST 2026
[2026-10-25 13:23:53,824.824 INFO    ] ================================================
[2026-10-25 13:23:54,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:23:54
[2026-10-25 13:23:55,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:23:55,270.270 INFO    ] Initializing speech engine...
[2026-10-25 13:23:55,278.278 INFO    ] 2026-10-25 13:23:55
[2026-10-25 13:23:55,579.579 INFO    ] 2026-10-25 13:23:55
[2026-10-25 13:23:55,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:23:55,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:23:55,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:23:55,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:23:55,984.984 INFO    ] time= 25/10/2026 13:23:55
[2026-10-25 13:23:56,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:23:56,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:23:56,095.095 INFO    ] No existing commands found in stream
[2026-10-25 13:24:01,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:24:01,111.111 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 13:24:02,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:24:02,100.100 INFO    ] Checking for system updates...
[2026-10-25 13:24:02,147.147 INFO    ] 200
[2026-10-25 13:24:02,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:02,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:02,227.227 INFO    ] No update needed
[2026-10-25 13:24:02,230.230 INFO    ] Checking for camera pi updates...
[2026-10-25 13:24:02,279.279 INFO    ] 200
[2026-10-25 13:24:02,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:02,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:24:02,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:02,385.385 INFO    ] No camera update needed
[2026-10-25 13:24:02,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:24:02,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:24:02,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:24:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:24:04,444.444 INFO    ] ================================================
[2026-10-25 13:24:04,460.460 INFO    ] Launching Daemon at Sun Oct 25 13:24:04 IST 2026
[2026-10-25 13:24:04,470.470 INFO    ] ================================================
[2026-10-25 13:24:05,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:24:05
[2026-10-25 13:24:05,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:24:06,116.116 INFO    ] Initializing speech engine...
[2026-10-25 13:24:06,131.131 INFO    ] 2026-10-25 13:24:06
[2026-10-25 13:24:06,417.417 INFO    ] 2026-10-25 13:24:06
[2026-10-25 13:24:06,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:24:06,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:24:06,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:24:06,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:24:06,947.947 INFO    ] time= 25/10/2026 13:24:06
[2026-10-25 13:24:06,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:24:06,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:24:07,106.106 INFO    ] No existing commands found in stream
[2026-10-25 13:24:12,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:24:12,144.144 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 13:24:15,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:24:15,384.384 INFO    ] Checking for system updates...
[2026-10-25 13:24:15,422.422 INFO    ] 200
[2026-10-25 13:24:15,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:15,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:24:15,481.481 INFO    ] No update needed
[2026-10-25 13:24:15,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 13:24:15,519.519 INFO    ] 200
[2026-10-25 13:24:15,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:15,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:24:15,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:24:15,715.715 INFO    ] No camera update needed
[2026-10-25 13:24:15,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:24:15,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:24:15,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:24:15,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:24:17,771.771 INFO    ] ================================================
[2026-10-25 13:24:17,786.786 INFO    ] Launching Daemon at Sun Oct 25 13:24:17 IST 2026
[2026-10-25 13:24:17,797.797 INFO    ] ================================================
[2026-10-25 13:24:18,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:24:18
[2026-10-25 13:24:18,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:24:19,215.215 INFO    ] Initializing speech engine...
[2026-10-25 13:24:19,225.225 INFO    ] 2026-10-25 13:24:19
[2026-10-25 13:24:19,484.484 INFO    ] 2026-10-25 13:24:19
[2026-10-25 13:24:19,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:24:19,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:24:19,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:24:19,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:24:19,922.922 INFO    ] time= 25/10/2026 13:24:19
[2026-10-25 13:24:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:24:20,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:24:20,108.108 INFO    ] No existing commands found in stream
[2026-10-25 13:24:25,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:24:25,131.131 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 13:24:27,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:24:27,758.758 INFO    ] Checking for system updates...
[2026-10-25 13:24:27,799.799 INFO    ] 200
[2026-10-25 13:24:27,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:27,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:24:27,858.858 INFO    ] No update needed
[2026-10-25 13:24:27,860.860 INFO    ] Checking for camera pi updates...
[2026-10-25 13:24:27,894.894 INFO    ] 200
[2026-10-25 13:24:27,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:27,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:24:27,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:24:27,990.990 INFO    ] No camera update needed
[2026-10-25 13:24:27,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:24:27,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:24:28,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:24:28,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:24:30,045.045 INFO    ] ================================================
[2026-10-25 13:24:30,060.060 INFO    ] Launching Daemon at Sun Oct 25 13:24:30 IST 2026
[2026-10-25 13:24:30,070.070 INFO    ] ================================================
[2026-10-25 13:24:30,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:24:30
[2026-10-25 13:24:31,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:24:31,542.542 INFO    ] Initializing speech engine...
[2026-10-25 13:24:31,549.549 INFO    ] 2026-10-25 13:24:31
[2026-10-25 13:24:31,822.822 INFO    ] 2026-10-25 13:24:31
[2026-10-25 13:24:31,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:24:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:24:32,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:24:32,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:24:32,326.326 INFO    ] time= 25/10/2026 13:24:32
[2026-10-25 13:24:32,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:24:32,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:24:32,560.560 INFO    ] No existing commands found in stream
[2026-10-25 13:24:37,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:24:37,589.589 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 13:24:39,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:24:39,586.586 INFO    ] Checking for system updates...
[2026-10-25 13:24:39,623.623 INFO    ] 200
[2026-10-25 13:24:39,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:39,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:39,684.684 INFO    ] No update needed
[2026-10-25 13:24:39,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 13:24:39,721.721 INFO    ] 200
[2026-10-25 13:24:39,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:39,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:24:39,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:39,828.828 INFO    ] No camera update needed
[2026-10-25 13:24:39,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:24:39,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:24:39,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:24:39,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:24:41,886.886 INFO    ] ================================================
[2026-10-25 13:24:41,901.901 INFO    ] Launching Daemon at Sun Oct 25 13:24:41 IST 2026
[2026-10-25 13:24:41,912.912 INFO    ] ================================================
[2026-10-25 13:24:42,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:24:42
[2026-10-25 13:24:43,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:24:43,541.541 INFO    ] Initializing speech engine...
[2026-10-25 13:24:43,553.553 INFO    ] 2026-10-25 13:24:43
[2026-10-25 13:24:43,860.860 INFO    ] 2026-10-25 13:24:43
[2026-10-25 13:24:43,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:24:45,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:24:45,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:24:45,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:24:45,695.695 INFO    ] time= 25/10/2026 13:24:45
[2026-10-25 13:24:45,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:24:45,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:24:45,773.773 INFO    ] No existing commands found in stream
[2026-10-25 13:24:50,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:24:50,788.788 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 13:24:54,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:24:54,371.371 INFO    ] Checking for system updates...
[2026-10-25 13:24:54,408.408 INFO    ] 200
[2026-10-25 13:24:54,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:54,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:54,474.474 INFO    ] No update needed
[2026-10-25 13:24:54,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 13:24:54,512.512 INFO    ] 200
[2026-10-25 13:24:54,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:24:54,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:24:54,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:24:54,628.628 INFO    ] No camera update needed
[2026-10-25 13:24:54,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:24:54,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:24:54,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:24:54,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:24:56,682.682 INFO    ] ================================================
[2026-10-25 13:24:56,697.697 INFO    ] Launching Daemon at Sun Oct 25 13:24:56 IST 2026
[2026-10-25 13:24:56,708.708 INFO    ] ================================================
[2026-10-25 13:24:57,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:24:57
[2026-10-25 13:24:57,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:24:58,148.148 INFO    ] Initializing speech engine...
[2026-10-25 13:24:58,157.157 INFO    ] 2026-10-25 13:24:58
[2026-10-25 13:24:58,417.417 INFO    ] 2026-10-25 13:24:58
[2026-10-25 13:24:58,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:24:58,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:24:58,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:24:58,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:24:58,883.883 INFO    ] time= 25/10/2026 13:24:58
[2026-10-25 13:24:58,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:24:58,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:24:59,039.039 INFO    ] No existing commands found in stream
[2026-10-25 13:25:04,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:25:04,053.053 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 13:25:07,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:25:07,546.546 INFO    ] Checking for system updates...
[2026-10-25 13:25:07,583.583 INFO    ] 200
[2026-10-25 13:25:07,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:07,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:07,649.649 INFO    ] No update needed
[2026-10-25 13:25:07,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 13:25:07,690.690 INFO    ] 200
[2026-10-25 13:25:07,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:07,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:25:07,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:07,784.784 INFO    ] No camera update needed
[2026-10-25 13:25:07,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:25:07,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:25:07,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:25:07,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:25:09,839.839 INFO    ] ================================================
[2026-10-25 13:25:09,854.854 INFO    ] Launching Daemon at Sun Oct 25 13:25:09 IST 2026
[2026-10-25 13:25:09,865.865 INFO    ] ================================================
[2026-10-25 13:25:10,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:25:10
[2026-10-25 13:25:11,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:25:11,416.416 INFO    ] Initializing speech engine...
[2026-10-25 13:25:11,424.424 INFO    ] 2026-10-25 13:25:11
[2026-10-25 13:25:11,746.746 INFO    ] 2026-10-25 13:25:11
[2026-10-25 13:25:11,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:25:12,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:25:12,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:25:12,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:25:12,261.261 INFO    ] time= 25/10/2026 13:25:12
[2026-10-25 13:25:12,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:25:12,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:25:12,417.417 INFO    ] No existing commands found in stream
[2026-10-25 13:25:17,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:25:17,446.446 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 13:25:18,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:25:18,065.065 INFO    ] Checking for system updates...
[2026-10-25 13:25:18,102.102 INFO    ] 200
[2026-10-25 13:25:18,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:18,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:25:18,170.170 INFO    ] No update needed
[2026-10-25 13:25:18,173.173 INFO    ] Checking for camera pi updates...
[2026-10-25 13:25:18,212.212 INFO    ] 200
[2026-10-25 13:25:18,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:18,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:25:18,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:25:18,306.306 INFO    ] No camera update needed
[2026-10-25 13:25:18,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:25:18,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:25:18,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:25:18,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:25:20,364.364 INFO    ] ================================================
[2026-10-25 13:25:20,379.379 INFO    ] Launching Daemon at Sun Oct 25 13:25:20 IST 2026
[2026-10-25 13:25:20,390.390 INFO    ] ================================================
[2026-10-25 13:25:21,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:25:21
[2026-10-25 13:25:21,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:25:22,038.038 INFO    ] Initializing speech engine...
[2026-10-25 13:25:22,050.050 INFO    ] 2026-10-25 13:25:22
[2026-10-25 13:25:22,334.334 INFO    ] 2026-10-25 13:25:22
[2026-10-25 13:25:22,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:25:22,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:25:22,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:25:22,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:25:22,866.866 INFO    ] time= 25/10/2026 13:25:22
[2026-10-25 13:25:22,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:25:22,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:25:23,020.020 INFO    ] No existing commands found in stream
[2026-10-25 13:25:28,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:25:28,047.047 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 13:25:29,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:25:29,095.095 INFO    ] Checking for system updates...
[2026-10-25 13:25:29,133.133 INFO    ] 200
[2026-10-25 13:25:29,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:29,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:29,205.205 INFO    ] No update needed
[2026-10-25 13:25:29,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 13:25:29,244.244 INFO    ] 200
[2026-10-25 13:25:29,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:29,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:25:29,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:29,344.344 INFO    ] No camera update needed
[2026-10-25 13:25:29,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:25:29,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:25:29,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:25:29,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:25:31,402.402 INFO    ] ================================================
[2026-10-25 13:25:31,417.417 INFO    ] Launching Daemon at Sun Oct 25 13:25:31 IST 2026
[2026-10-25 13:25:31,428.428 INFO    ] ================================================
[2026-10-25 13:25:32,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:25:32
[2026-10-25 13:25:32,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:25:32,908.908 INFO    ] Initializing speech engine...
[2026-10-25 13:25:32,921.921 INFO    ] 2026-10-25 13:25:32
[2026-10-25 13:25:33,204.204 INFO    ] 2026-10-25 13:25:33
[2026-10-25 13:25:33,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:25:33,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:25:33,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:25:33,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:25:33,583.583 INFO    ] time= 25/10/2026 13:25:33
[2026-10-25 13:25:33,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:25:33,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:25:33,738.738 INFO    ] No existing commands found in stream
[2026-10-25 13:25:38,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:25:38,766.766 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 13:25:42,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:25:42,385.385 INFO    ] Checking for system updates...
[2026-10-25 13:25:42,426.426 INFO    ] 200
[2026-10-25 13:25:42,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:42,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:42,484.484 INFO    ] No update needed
[2026-10-25 13:25:42,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 13:25:42,525.525 INFO    ] 200
[2026-10-25 13:25:42,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:42,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:25:42,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:42,621.621 INFO    ] No camera update needed
[2026-10-25 13:25:42,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:25:42,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:25:42,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:25:42,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:25:44,676.676 INFO    ] ================================================
[2026-10-25 13:25:44,691.691 INFO    ] Launching Daemon at Sun Oct 25 13:25:44 IST 2026
[2026-10-25 13:25:44,702.702 INFO    ] ================================================
[2026-10-25 13:25:45,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:25:45
[2026-10-25 13:25:45,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:25:46,159.159 INFO    ] Initializing speech engine...
[2026-10-25 13:25:46,166.166 INFO    ] 2026-10-25 13:25:46
[2026-10-25 13:25:46,426.426 INFO    ] 2026-10-25 13:25:46
[2026-10-25 13:25:46,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:25:47,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:25:47,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:25:47,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:25:47,752.752 INFO    ] time= 25/10/2026 13:25:47
[2026-10-25 13:25:47,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:25:47,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:25:47,816.816 INFO    ] No existing commands found in stream
[2026-10-25 13:25:52,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:25:52,831.831 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 13:25:56,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:25:56,264.264 INFO    ] Checking for system updates...
[2026-10-25 13:25:56,301.301 INFO    ] 200
[2026-10-25 13:25:56,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:56,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:56,371.371 INFO    ] No update needed
[2026-10-25 13:25:56,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 13:25:56,409.409 INFO    ] 200
[2026-10-25 13:25:56,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:25:56,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:25:56,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:25:56,523.523 INFO    ] No camera update needed
[2026-10-25 13:25:56,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:25:56,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:25:56,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:25:56,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:25:58,585.585 INFO    ] ================================================
[2026-10-25 13:25:58,600.600 INFO    ] Launching Daemon at Sun Oct 25 13:25:58 IST 2026
[2026-10-25 13:25:58,610.610 INFO    ] ================================================
[2026-10-25 13:25:59,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:25:59
[2026-10-25 13:25:59,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:26:00,067.067 INFO    ] Initializing speech engine...
[2026-10-25 13:26:00,075.075 INFO    ] 2026-10-25 13:26:00
[2026-10-25 13:26:00,327.327 INFO    ] 2026-10-25 13:26:00
[2026-10-25 13:26:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:26:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:26:00,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:26:00,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:26:00,783.783 INFO    ] time= 25/10/2026 13:26:00
[2026-10-25 13:26:00,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:26:00,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:26:01,014.014 INFO    ] No existing commands found in stream
[2026-10-25 13:26:06,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:26:06,047.047 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 13:26:10,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:26:10,072.072 INFO    ] Checking for system updates...
[2026-10-25 13:26:10,108.108 INFO    ] 200
[2026-10-25 13:26:10,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:10,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:10,168.168 INFO    ] No update needed
[2026-10-25 13:26:10,170.170 INFO    ] Checking for camera pi updates...
[2026-10-25 13:26:10,204.204 INFO    ] 200
[2026-10-25 13:26:10,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:10,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:26:10,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:10,319.319 INFO    ] No camera update needed
[2026-10-25 13:26:10,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:26:10,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:26:10,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:26:10,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:26:12,377.377 INFO    ] ================================================
[2026-10-25 13:26:12,392.392 INFO    ] Launching Daemon at Sun Oct 25 13:26:12 IST 2026
[2026-10-25 13:26:12,403.403 INFO    ] ================================================
[2026-10-25 13:26:13,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:26:13
[2026-10-25 13:26:13,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:26:14,032.032 INFO    ] Initializing speech engine...
[2026-10-25 13:26:14,045.045 INFO    ] 2026-10-25 13:26:14
[2026-10-25 13:26:14,339.339 INFO    ] 2026-10-25 13:26:14
[2026-10-25 13:26:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:26:17,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:26:17,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:26:18,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:26:18,468.468 INFO    ] time= 25/10/2026 13:26:18
[2026-10-25 13:26:18,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:26:18,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:26:18,521.521 INFO    ] No existing commands found in stream
[2026-10-25 13:26:23,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:26:23,533.533 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 13:26:25,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:26:25,336.336 INFO    ] Checking for system updates...
[2026-10-25 13:26:25,372.372 INFO    ] 200
[2026-10-25 13:26:25,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:25,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:25,439.439 INFO    ] No update needed
[2026-10-25 13:26:25,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 13:26:25,480.480 INFO    ] 200
[2026-10-25 13:26:25,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:25,523.523 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:26:25,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:25,679.679 INFO    ] No camera update needed
[2026-10-25 13:26:25,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:26:25,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:26:25,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:26:25,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:26:27,735.735 INFO    ] ================================================
[2026-10-25 13:26:27,750.750 INFO    ] Launching Daemon at Sun Oct 25 13:26:27 IST 2026
[2026-10-25 13:26:27,761.761 INFO    ] ================================================
[2026-10-25 13:26:28,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:26:28
[2026-10-25 13:26:28,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:26:29,231.231 INFO    ] Initializing speech engine...
[2026-10-25 13:26:29,241.241 INFO    ] 2026-10-25 13:26:29
[2026-10-25 13:26:29,488.488 INFO    ] 2026-10-25 13:26:29
[2026-10-25 13:26:29,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:26:29,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:26:29,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:26:29,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:26:29,985.985 INFO    ] time= 25/10/2026 13:26:29
[2026-10-25 13:26:30,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:26:30,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:26:30,189.189 INFO    ] No existing commands found in stream
[2026-10-25 13:26:35,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:26:35,215.215 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 13:26:37,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:26:37,369.369 INFO    ] Checking for system updates...
[2026-10-25 13:26:37,406.406 INFO    ] 200
[2026-10-25 13:26:37,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:37,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:37,467.467 INFO    ] No update needed
[2026-10-25 13:26:37,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 13:26:37,506.506 INFO    ] 200
[2026-10-25 13:26:37,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:37,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:26:37,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:37,649.649 INFO    ] No camera update needed
[2026-10-25 13:26:37,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:26:37,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:26:37,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:26:37,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:26:39,711.711 INFO    ] ================================================
[2026-10-25 13:26:39,726.726 INFO    ] Launching Daemon at Sun Oct 25 13:26:39 IST 2026
[2026-10-25 13:26:39,737.737 INFO    ] ================================================
[2026-10-25 13:26:40,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:26:40
[2026-10-25 13:26:41,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:26:41,325.325 INFO    ] Initializing speech engine...
[2026-10-25 13:26:41,334.334 INFO    ] 2026-10-25 13:26:41
[2026-10-25 13:26:41,598.598 INFO    ] 2026-10-25 13:26:41
[2026-10-25 13:26:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:26:41,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:26:41,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:26:41,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:26:41,968.968 INFO    ] time= 25/10/2026 13:26:41
[2026-10-25 13:26:41,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:26:42,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:26:42,144.144 INFO    ] No existing commands found in stream
[2026-10-25 13:26:47,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:26:47,177.177 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 13:26:49,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:26:49,838.838 INFO    ] Checking for system updates...
[2026-10-25 13:26:49,875.875 INFO    ] 200
[2026-10-25 13:26:49,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:49,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:49,933.933 INFO    ] No update needed
[2026-10-25 13:26:49,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 13:26:49,974.974 INFO    ] 200
[2026-10-25 13:26:49,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:26:50,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:26:50,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:26:50,080.080 INFO    ] No camera update needed
[2026-10-25 13:26:50,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:26:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:26:50,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:26:50,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:26:52,140.140 INFO    ] ================================================
[2026-10-25 13:26:52,155.155 INFO    ] Launching Daemon at Sun Oct 25 13:26:52 IST 2026
[2026-10-25 13:26:52,166.166 INFO    ] ================================================
[2026-10-25 13:26:52,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:26:52
[2026-10-25 13:26:53,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:26:53,609.609 INFO    ] Initializing speech engine...
[2026-10-25 13:26:53,618.618 INFO    ] 2026-10-25 13:26:53
[2026-10-25 13:26:53,916.916 INFO    ] 2026-10-25 13:26:53
[2026-10-25 13:26:53,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:26:54,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:26:54,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:26:54,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:26:54,281.281 INFO    ] time= 25/10/2026 13:26:54
[2026-10-25 13:26:54,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:26:54,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:26:54,359.359 INFO    ] No existing commands found in stream
[2026-10-25 13:26:59,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:26:59,374.374 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 13:27:01,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:27:01,900.900 INFO    ] Checking for system updates...
[2026-10-25 13:27:01,964.964 INFO    ] 200
[2026-10-25 13:27:01,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:02,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:02,077.077 INFO    ] No update needed
[2026-10-25 13:27:02,082.082 INFO    ] Checking for camera pi updates...
[2026-10-25 13:27:02,156.156 INFO    ] 200
[2026-10-25 13:27:02,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:02,287.287 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:27:02,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:02,329.329 INFO    ] No camera update needed
[2026-10-25 13:27:02,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:27:02,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:27:02,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:27:02,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:27:04,392.392 INFO    ] ================================================
[2026-10-25 13:27:04,407.407 INFO    ] Launching Daemon at Sun Oct 25 13:27:04 IST 2026
[2026-10-25 13:27:04,418.418 INFO    ] ================================================
[2026-10-25 13:27:05,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:27:05
[2026-10-25 13:27:05,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:27:05,897.897 INFO    ] Initializing speech engine...
[2026-10-25 13:27:05,912.912 INFO    ] 2026-10-25 13:27:05
[2026-10-25 13:27:06,199.199 INFO    ] 2026-10-25 13:27:06
[2026-10-25 13:27:06,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:27:06,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:27:06,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:27:06,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:27:06,676.676 INFO    ] time= 25/10/2026 13:27:06
[2026-10-25 13:27:06,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:27:06,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:27:06,821.821 INFO    ] No existing commands found in stream
[2026-10-25 13:27:11,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:27:11,844.844 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 13:27:14,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:27:14,043.043 INFO    ] Checking for system updates...
[2026-10-25 13:27:14,080.080 INFO    ] 200
[2026-10-25 13:27:14,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:14,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:27:14,148.148 INFO    ] No update needed
[2026-10-25 13:27:14,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 13:27:14,185.185 INFO    ] 200
[2026-10-25 13:27:14,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:14,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:27:14,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:27:14,294.294 INFO    ] No camera update needed
[2026-10-25 13:27:14,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:27:14,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:27:14,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:27:14,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:27:16,356.356 INFO    ] ================================================
[2026-10-25 13:27:16,373.373 INFO    ] Launching Daemon at Sun Oct 25 13:27:16 IST 2026
[2026-10-25 13:27:16,383.383 INFO    ] ================================================
[2026-10-25 13:27:16,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:27:16
[2026-10-25 13:27:17,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:27:17,810.810 INFO    ] Initializing speech engine...
[2026-10-25 13:27:17,819.819 INFO    ] 2026-10-25 13:27:17
[2026-10-25 13:27:18,065.065 INFO    ] 2026-10-25 13:27:18
[2026-10-25 13:27:18,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:27:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:27:20,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:27:20,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:27:20,633.633 INFO    ] time= 25/10/2026 13:27:20
[2026-10-25 13:27:20,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:27:20,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:27:20,718.718 INFO    ] No existing commands found in stream
[2026-10-25 13:27:25,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:27:25,730.730 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 13:27:28,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:27:28,109.109 INFO    ] Checking for system updates...
[2026-10-25 13:27:28,146.146 INFO    ] 200
[2026-10-25 13:27:28,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:28,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:27:28,214.214 INFO    ] No update needed
[2026-10-25 13:27:28,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 13:27:28,252.252 INFO    ] 200
[2026-10-25 13:27:28,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:28,302.302 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:27:28,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:27:28,352.352 INFO    ] No camera update needed
[2026-10-25 13:27:28,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:27:28,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:27:28,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:27:28,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:27:30,412.412 INFO    ] ================================================
[2026-10-25 13:27:30,427.427 INFO    ] Launching Daemon at Sun Oct 25 13:27:30 IST 2026
[2026-10-25 13:27:30,438.438 INFO    ] ================================================
[2026-10-25 13:27:31,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:27:31
[2026-10-25 13:27:31,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:27:32,080.080 INFO    ] Initializing speech engine...
[2026-10-25 13:27:32,093.093 INFO    ] 2026-10-25 13:27:32
[2026-10-25 13:27:32,373.373 INFO    ] 2026-10-25 13:27:32
[2026-10-25 13:27:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:27:32,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:27:32,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:27:32,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:27:32,766.766 INFO    ] time= 25/10/2026 13:27:32
[2026-10-25 13:27:32,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:27:32,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:27:32,931.931 INFO    ] No existing commands found in stream
[2026-10-25 13:27:37,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:27:37,964.964 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 13:27:41,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:27:41,101.101 INFO    ] Checking for system updates...
[2026-10-25 13:27:41,137.137 INFO    ] 200
[2026-10-25 13:27:41,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:41,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:41,204.204 INFO    ] No update needed
[2026-10-25 13:27:41,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 13:27:41,240.240 INFO    ] 200
[2026-10-25 13:27:41,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:41,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:27:41,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:41,347.347 INFO    ] No camera update needed
[2026-10-25 13:27:41,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:27:41,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:27:41,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:27:41,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:27:43,402.402 INFO    ] ================================================
[2026-10-25 13:27:43,417.417 INFO    ] Launching Daemon at Sun Oct 25 13:27:43 IST 2026
[2026-10-25 13:27:43,428.428 INFO    ] ================================================
[2026-10-25 13:27:44,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:27:44
[2026-10-25 13:27:44,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:27:44,914.914 INFO    ] Initializing speech engine...
[2026-10-25 13:27:44,927.927 INFO    ] 2026-10-25 13:27:44
[2026-10-25 13:27:45,192.192 INFO    ] 2026-10-25 13:27:45
[2026-10-25 13:27:45,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:27:45,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:27:45,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:27:45,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:27:45,611.611 INFO    ] time= 25/10/2026 13:27:45
[2026-10-25 13:27:45,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:27:45,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:27:45,773.773 INFO    ] No existing commands found in stream
[2026-10-25 13:27:50,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:27:50,788.788 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 13:27:52,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:27:52,164.164 INFO    ] Checking for system updates...
[2026-10-25 13:27:52,199.199 INFO    ] 200
[2026-10-25 13:27:52,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:52,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:52,258.258 INFO    ] No update needed
[2026-10-25 13:27:52,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 13:27:52,294.294 INFO    ] 200
[2026-10-25 13:27:52,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:27:52,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:27:52,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:27:52,387.387 INFO    ] No camera update needed
[2026-10-25 13:27:52,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:27:52,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:27:52,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:27:52,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:27:54,444.444 INFO    ] ================================================
[2026-10-25 13:27:54,459.459 INFO    ] Launching Daemon at Sun Oct 25 13:27:54 IST 2026
[2026-10-25 13:27:54,471.471 INFO    ] ================================================
[2026-10-25 13:27:55,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:27:55
[2026-10-25 13:27:55,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:27:55,916.916 INFO    ] Initializing speech engine...
[2026-10-25 13:27:55,923.923 INFO    ] 2026-10-25 13:27:55
[2026-10-25 13:27:56,219.219 INFO    ] 2026-10-25 13:27:56
[2026-10-25 13:27:56,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:27:56,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:27:56,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:27:56,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:27:56,600.600 INFO    ] time= 25/10/2026 13:27:56
[2026-10-25 13:27:56,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:27:56,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:27:56,725.725 INFO    ] No existing commands found in stream
[2026-10-25 13:28:01,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:28:01,740.740 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 13:28:03,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:28:03,692.692 INFO    ] Checking for system updates...
[2026-10-25 13:28:03,730.730 INFO    ] 200
[2026-10-25 13:28:03,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:03,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:28:03,789.789 INFO    ] No update needed
[2026-10-25 13:28:03,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 13:28:03,833.833 INFO    ] 200
[2026-10-25 13:28:03,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:03,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:28:03,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:28:03,944.944 INFO    ] No camera update needed
[2026-10-25 13:28:03,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:28:03,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:28:03,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:28:03,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:28:06,012.012 INFO    ] ================================================
[2026-10-25 13:28:06,036.036 INFO    ] Launching Daemon at Sun Oct 25 13:28:06 IST 2026
[2026-10-25 13:28:06,048.048 INFO    ] ================================================
[2026-10-25 13:28:06,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:28:06
[2026-10-25 13:28:07,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:28:07,507.507 INFO    ] Initializing speech engine...
[2026-10-25 13:28:07,532.532 INFO    ] 2026-10-25 13:28:07
[2026-10-25 13:28:07,803.803 INFO    ] 2026-10-25 13:28:07
[2026-10-25 13:28:07,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:28:08,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:28:08,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:28:08,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:28:08,177.177 INFO    ] time= 25/10/2026 13:28:08
[2026-10-25 13:28:08,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:28:08,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:28:08,297.297 INFO    ] No existing commands found in stream
[2026-10-25 13:28:13,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:28:13,317.317 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 13:28:17,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:28:17,344.344 INFO    ] Checking for system updates...
[2026-10-25 13:28:17,384.384 INFO    ] 200
[2026-10-25 13:28:17,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:17,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:17,446.446 INFO    ] No update needed
[2026-10-25 13:28:17,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 13:28:17,485.485 INFO    ] 200
[2026-10-25 13:28:17,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:17,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:28:17,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:17,581.581 INFO    ] No camera update needed
[2026-10-25 13:28:17,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:28:17,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:28:17,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:28:17,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:28:19,638.638 INFO    ] ================================================
[2026-10-25 13:28:19,653.653 INFO    ] Launching Daemon at Sun Oct 25 13:28:19 IST 2026
[2026-10-25 13:28:19,664.664 INFO    ] ================================================
[2026-10-25 13:28:20,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:28:20
[2026-10-25 13:28:20,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:28:21,106.106 INFO    ] Initializing speech engine...
[2026-10-25 13:28:21,119.119 INFO    ] 2026-10-25 13:28:21
[2026-10-25 13:28:21,383.383 INFO    ] 2026-10-25 13:28:21
[2026-10-25 13:28:21,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:28:22,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:28:22,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:28:22,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:28:22,904.904 INFO    ] time= 25/10/2026 13:28:22
[2026-10-25 13:28:22,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:28:22,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:28:22,970.970 INFO    ] No existing commands found in stream
[2026-10-25 13:28:27,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:28:27,984.984 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 13:28:29,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:28:29,551.551 INFO    ] Checking for system updates...
[2026-10-25 13:28:29,596.596 INFO    ] 200
[2026-10-25 13:28:29,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:29,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:28:29,670.670 INFO    ] No update needed
[2026-10-25 13:28:29,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 13:28:29,708.708 INFO    ] 200
[2026-10-25 13:28:29,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:29,753.753 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:28:29,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:28:29,904.904 INFO    ] No camera update needed
[2026-10-25 13:28:29,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:28:29,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:28:29,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:28:29,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:28:31,961.961 INFO    ] ================================================
[2026-10-25 13:28:31,976.976 INFO    ] Launching Daemon at Sun Oct 25 13:28:31 IST 2026
[2026-10-25 13:28:31,987.987 INFO    ] ================================================
[2026-10-25 13:28:32,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:28:32
[2026-10-25 13:28:33,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:28:33,519.519 INFO    ] Initializing speech engine...
[2026-10-25 13:28:33,525.525 INFO    ] 2026-10-25 13:28:33
[2026-10-25 13:28:33,769.769 INFO    ] 2026-10-25 13:28:33
[2026-10-25 13:28:33,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:28:34,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:28:34,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:28:34,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:28:34,257.257 INFO    ] time= 25/10/2026 13:28:34
[2026-10-25 13:28:34,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:28:34,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:28:34,383.383 INFO    ] No existing commands found in stream
[2026-10-25 13:28:39,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:28:39,398.398 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 13:28:40,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:28:40,867.867 INFO    ] Checking for system updates...
[2026-10-25 13:28:40,903.903 INFO    ] 200
[2026-10-25 13:28:40,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:40,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:40,969.969 INFO    ] No update needed
[2026-10-25 13:28:40,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 13:28:41,006.006 INFO    ] 200
[2026-10-25 13:28:41,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:41,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:28:41,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:41,117.117 INFO    ] No camera update needed
[2026-10-25 13:28:41,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:28:41,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:28:41,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:28:41,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:28:43,178.178 INFO    ] ================================================
[2026-10-25 13:28:43,193.193 INFO    ] Launching Daemon at Sun Oct 25 13:28:43 IST 2026
[2026-10-25 13:28:43,204.204 INFO    ] ================================================
[2026-10-25 13:28:43,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:28:43
[2026-10-25 13:28:44,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:28:44,609.609 INFO    ] Initializing speech engine...
[2026-10-25 13:28:44,631.631 INFO    ] 2026-10-25 13:28:44
[2026-10-25 13:28:44,887.887 INFO    ] 2026-10-25 13:28:44
[2026-10-25 13:28:44,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:28:45,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:28:45,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:28:45,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:28:45,263.263 INFO    ] time= 25/10/2026 13:28:45
[2026-10-25 13:28:45,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:28:45,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:28:45,434.434 INFO    ] No existing commands found in stream
[2026-10-25 13:28:50,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:28:50,472.472 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 13:28:53,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:28:53,716.716 INFO    ] Checking for system updates...
[2026-10-25 13:28:53,755.755 INFO    ] 200
[2026-10-25 13:28:53,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:53,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:53,818.818 INFO    ] No update needed
[2026-10-25 13:28:53,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 13:28:53,860.860 INFO    ] 200
[2026-10-25 13:28:53,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:28:53,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:28:53,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:28:53,972.972 INFO    ] No camera update needed
[2026-10-25 13:28:53,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:28:53,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:28:53,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:28:53,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:28:56,031.031 INFO    ] ================================================
[2026-10-25 13:28:56,046.046 INFO    ] Launching Daemon at Sun Oct 25 13:28:56 IST 2026
[2026-10-25 13:28:56,058.058 INFO    ] ================================================
[2026-10-25 13:28:56,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:28:56
[2026-10-25 13:28:57,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:28:57,478.478 INFO    ] Initializing speech engine...
[2026-10-25 13:28:57,487.487 INFO    ] 2026-10-25 13:28:57
[2026-10-25 13:28:57,736.736 INFO    ] 2026-10-25 13:28:57
[2026-10-25 13:28:57,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:28:57,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:28:57,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:28:58,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:28:58,092.092 INFO    ] time= 25/10/2026 13:28:58
[2026-10-25 13:28:58,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:28:58,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:28:58,191.191 INFO    ] No existing commands found in stream
[2026-10-25 13:29:03,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:29:03,219.219 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 13:29:04,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:29:04,304.304 INFO    ] Checking for system updates...
[2026-10-25 13:29:04,345.345 INFO    ] 200
[2026-10-25 13:29:04,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:04,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:04,405.405 INFO    ] No update needed
[2026-10-25 13:29:04,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 13:29:04,443.443 INFO    ] 200
[2026-10-25 13:29:04,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:04,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:29:04,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:04,549.549 INFO    ] No camera update needed
[2026-10-25 13:29:04,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:29:04,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:29:04,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:29:04,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:29:06,606.606 INFO    ] ================================================
[2026-10-25 13:29:06,620.620 INFO    ] Launching Daemon at Sun Oct 25 13:29:06 IST 2026
[2026-10-25 13:29:06,631.631 INFO    ] ================================================
[2026-10-25 13:29:07,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:29:07
[2026-10-25 13:29:07,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:29:08,032.032 INFO    ] Initializing speech engine...
[2026-10-25 13:29:08,040.040 INFO    ] 2026-10-25 13:29:08
[2026-10-25 13:29:08,313.313 INFO    ] 2026-10-25 13:29:08
[2026-10-25 13:29:08,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:29:08,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:29:08,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:29:08,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:29:08,692.692 INFO    ] time= 25/10/2026 13:29:08
[2026-10-25 13:29:08,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:29:08,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:29:08,847.847 INFO    ] No existing commands found in stream
[2026-10-25 13:29:13,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:29:13,880.880 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 13:29:15,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:29:15,974.974 INFO    ] Checking for system updates...
[2026-10-25 13:29:16,012.012 INFO    ] 200
[2026-10-25 13:29:16,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:16,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:16,069.069 INFO    ] No update needed
[2026-10-25 13:29:16,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 13:29:16,106.106 INFO    ] 200
[2026-10-25 13:29:16,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:16,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:29:16,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:16,201.201 INFO    ] No camera update needed
[2026-10-25 13:29:16,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:29:16,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:29:16,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:29:16,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:29:18,258.258 INFO    ] ================================================
[2026-10-25 13:29:18,274.274 INFO    ] Launching Daemon at Sun Oct 25 13:29:18 IST 2026
[2026-10-25 13:29:18,284.284 INFO    ] ================================================
[2026-10-25 13:29:18,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:29:18
[2026-10-25 13:29:19,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:29:19,711.711 INFO    ] Initializing speech engine...
[2026-10-25 13:29:19,721.721 INFO    ] 2026-10-25 13:29:19
[2026-10-25 13:29:19,970.970 INFO    ] 2026-10-25 13:29:19
[2026-10-25 13:29:20,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:29:20,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:29:20,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:29:20,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:29:20,346.346 INFO    ] time= 25/10/2026 13:29:20
[2026-10-25 13:29:20,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:29:20,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:29:20,514.514 INFO    ] No existing commands found in stream
[2026-10-25 13:29:25,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:29:25,542.542 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 13:29:29,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:29:29,374.374 INFO    ] Checking for system updates...
[2026-10-25 13:29:29,410.410 INFO    ] 200
[2026-10-25 13:29:29,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:29,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:29:29,476.476 INFO    ] No update needed
[2026-10-25 13:29:29,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 13:29:29,515.515 INFO    ] 200
[2026-10-25 13:29:29,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:29,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:29:29,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:29:29,612.612 INFO    ] No camera update needed
[2026-10-25 13:29:29,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:29:29,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:29:29,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:29:29,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:29:31,670.670 INFO    ] ================================================
[2026-10-25 13:29:31,687.687 INFO    ] Launching Daemon at Sun Oct 25 13:29:31 IST 2026
[2026-10-25 13:29:31,699.699 INFO    ] ================================================
[2026-10-25 13:29:32,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:29:32
[2026-10-25 13:29:32,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:29:33,191.191 INFO    ] Initializing speech engine...
[2026-10-25 13:29:33,200.200 INFO    ] 2026-10-25 13:29:33
[2026-10-25 13:29:33,458.458 INFO    ] 2026-10-25 13:29:33
[2026-10-25 13:29:33,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:29:33,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:29:33,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:29:33,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:29:33,815.815 INFO    ] time= 25/10/2026 13:29:33
[2026-10-25 13:29:33,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:29:33,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:29:33,995.995 INFO    ] No existing commands found in stream
[2026-10-25 13:29:39,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:29:39,023.023 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 13:29:39,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:29:39,708.708 INFO    ] Checking for system updates...
[2026-10-25 13:29:39,746.746 INFO    ] 200
[2026-10-25 13:29:39,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:39,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:39,818.818 INFO    ] No update needed
[2026-10-25 13:29:39,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 13:29:39,866.866 INFO    ] 200
[2026-10-25 13:29:39,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:39,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:29:39,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:29:39,979.979 INFO    ] No camera update needed
[2026-10-25 13:29:39,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:29:39,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:29:39,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:29:39,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:29:42,041.041 INFO    ] ================================================
[2026-10-25 13:29:42,056.056 INFO    ] Launching Daemon at Sun Oct 25 13:29:42 IST 2026
[2026-10-25 13:29:42,067.067 INFO    ] ================================================
[2026-10-25 13:29:42,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:29:42
[2026-10-25 13:29:43,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:29:43,462.462 INFO    ] Initializing speech engine...
[2026-10-25 13:29:43,468.468 INFO    ] 2026-10-25 13:29:43
[2026-10-25 13:29:43,743.743 INFO    ] 2026-10-25 13:29:43
[2026-10-25 13:29:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:29:43,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:29:43,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:29:44,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:29:44,124.124 INFO    ] time= 25/10/2026 13:29:44
[2026-10-25 13:29:44,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:29:44,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:29:44,304.304 INFO    ] No existing commands found in stream
[2026-10-25 13:29:49,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:29:49,332.332 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 13:29:50,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:29:50,075.075 INFO    ] Checking for system updates...
[2026-10-25 13:29:50,111.111 INFO    ] 200
[2026-10-25 13:29:50,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:50,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:29:50,169.169 INFO    ] No update needed
[2026-10-25 13:29:50,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 13:29:50,205.205 INFO    ] 200
[2026-10-25 13:29:50,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:29:50,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:29:50,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:29:50,303.303 INFO    ] No camera update needed
[2026-10-25 13:29:50,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:29:50,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:29:50,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:29:50,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:29:52,356.356 INFO    ] ================================================
[2026-10-25 13:29:52,371.371 INFO    ] Launching Daemon at Sun Oct 25 13:29:52 IST 2026
[2026-10-25 13:29:52,381.381 INFO    ] ================================================
[2026-10-25 13:29:52,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:29:52
[2026-10-25 13:29:53,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:29:53,793.793 INFO    ] Initializing speech engine...
[2026-10-25 13:29:53,812.812 INFO    ] 2026-10-25 13:29:53
[2026-10-25 13:29:54,063.063 INFO    ] 2026-10-25 13:29:54
[2026-10-25 13:29:54,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:29:55,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:29:55,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:29:55,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:29:55,579.579 INFO    ] time= 25/10/2026 13:29:55
[2026-10-25 13:29:55,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:29:55,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:29:55,646.646 INFO    ] No existing commands found in stream
[2026-10-25 13:30:00,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:30:00,660.660 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 13:30:02,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:30:02,492.492 INFO    ] Checking for system updates...
[2026-10-25 13:30:02,546.546 INFO    ] 200
[2026-10-25 13:30:02,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:02,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:02,620.620 INFO    ] No update needed
[2026-10-25 13:30:02,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 13:30:02,668.668 INFO    ] 200
[2026-10-25 13:30:02,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:02,723.723 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:30:02,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:02,765.765 INFO    ] No camera update needed
[2026-10-25 13:30:02,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:30:02,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:30:02,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:30:02,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:30:04,827.827 INFO    ] ================================================
[2026-10-25 13:30:04,842.842 INFO    ] Launching Daemon at Sun Oct 25 13:30:04 IST 2026
[2026-10-25 13:30:04,853.853 INFO    ] ================================================
[2026-10-25 13:30:05,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:30:05
[2026-10-25 13:30:06,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:30:06,274.274 INFO    ] Initializing speech engine...
[2026-10-25 13:30:06,280.280 INFO    ] 2026-10-25 13:30:06
[2026-10-25 13:30:06,564.564 INFO    ] 2026-10-25 13:30:06
[2026-10-25 13:30:06,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:30:06,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:30:06,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:30:06,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:30:06,891.891 INFO    ] time= 25/10/2026 13:30:06
[2026-10-25 13:30:06,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:30:06,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:30:06,980.980 INFO    ] No existing commands found in stream
[2026-10-25 13:30:12,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:30:12,017.017 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 13:30:15,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:30:15,229.229 INFO    ] Checking for system updates...
[2026-10-25 13:30:15,265.265 INFO    ] 200
[2026-10-25 13:30:15,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:15,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:15,329.329 INFO    ] No update needed
[2026-10-25 13:30:15,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 13:30:15,368.368 INFO    ] 200
[2026-10-25 13:30:15,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:15,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:30:15,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:15,466.466 INFO    ] No camera update needed
[2026-10-25 13:30:15,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:30:15,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:30:15,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:30:15,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:30:17,523.523 INFO    ] ================================================
[2026-10-25 13:30:17,538.538 INFO    ] Launching Daemon at Sun Oct 25 13:30:17 IST 2026
[2026-10-25 13:30:17,549.549 INFO    ] ================================================
[2026-10-25 13:30:18,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:30:18
[2026-10-25 13:30:18,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:30:18,967.967 INFO    ] Initializing speech engine...
[2026-10-25 13:30:18,977.977 INFO    ] 2026-10-25 13:30:18
[2026-10-25 13:30:19,225.225 INFO    ] 2026-10-25 13:30:19
[2026-10-25 13:30:19,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:30:19,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:30:19,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:30:19,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:30:19,726.726 INFO    ] time= 25/10/2026 13:30:19
[2026-10-25 13:30:19,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:30:19,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:30:19,938.938 INFO    ] No existing commands found in stream
[2026-10-25 13:30:24,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:30:24,973.973 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 13:30:31,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:30:31,196.196 INFO    ] Checking for system updates...
[2026-10-25 13:30:31,234.234 INFO    ] 200
[2026-10-25 13:30:31,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:31,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:31,295.295 INFO    ] No update needed
[2026-10-25 13:30:31,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 13:30:31,340.340 INFO    ] 200
[2026-10-25 13:30:31,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:31,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:30:31,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:31,459.459 INFO    ] No camera update needed
[2026-10-25 13:30:31,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:30:31,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:30:31,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:30:31,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:30:33,522.522 INFO    ] ================================================
[2026-10-25 13:30:33,537.537 INFO    ] Launching Daemon at Sun Oct 25 13:30:33 IST 2026
[2026-10-25 13:30:33,547.547 INFO    ] ================================================
[2026-10-25 13:30:34,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:30:34
[2026-10-25 13:30:34,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:30:34,969.969 INFO    ] Initializing speech engine...
[2026-10-25 13:30:34,978.978 INFO    ] 2026-10-25 13:30:34
[2026-10-25 13:30:35,224.224 INFO    ] 2026-10-25 13:30:35
[2026-10-25 13:30:35,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:30:35,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:30:35,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:30:35,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:30:35,968.968 INFO    ] time= 25/10/2026 13:30:35
[2026-10-25 13:30:36,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:30:36,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:30:36,172.172 INFO    ] No existing commands found in stream
[2026-10-25 13:30:41,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:30:41,195.195 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 13:30:41,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:30:41,625.625 INFO    ] Checking for system updates...
[2026-10-25 13:30:41,665.665 INFO    ] 200
[2026-10-25 13:30:41,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:41,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:41,724.724 INFO    ] No update needed
[2026-10-25 13:30:41,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 13:30:41,764.764 INFO    ] 200
[2026-10-25 13:30:41,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:41,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:30:41,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:30:41,859.859 INFO    ] No camera update needed
[2026-10-25 13:30:41,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:30:41,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:30:41,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:30:41,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:30:43,915.915 INFO    ] ================================================
[2026-10-25 13:30:43,930.930 INFO    ] Launching Daemon at Sun Oct 25 13:30:43 IST 2026
[2026-10-25 13:30:43,941.941 INFO    ] ================================================
[2026-10-25 13:30:44,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:30:44
[2026-10-25 13:30:45,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:30:45,396.396 INFO    ] Initializing speech engine...
[2026-10-25 13:30:45,401.401 INFO    ] 2026-10-25 13:30:45
[2026-10-25 13:30:45,653.653 INFO    ] 2026-10-25 13:30:45
[2026-10-25 13:30:45,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:30:45,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:30:45,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:30:46,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:30:46,144.144 INFO    ] time= 25/10/2026 13:30:46
[2026-10-25 13:30:46,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:30:46,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:30:46,286.286 INFO    ] No existing commands found in stream
[2026-10-25 13:30:51,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:30:51,301.301 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 13:30:57,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:30:57,566.566 INFO    ] Checking for system updates...
[2026-10-25 13:30:57,605.605 INFO    ] 200
[2026-10-25 13:30:57,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:57,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:30:57,675.675 INFO    ] No update needed
[2026-10-25 13:30:57,678.678 INFO    ] Checking for camera pi updates...
[2026-10-25 13:30:57,722.722 INFO    ] 200
[2026-10-25 13:30:57,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:30:57,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:30:57,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:30:57,833.833 INFO    ] No camera update needed
[2026-10-25 13:30:57,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:30:57,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:30:57,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:30:57,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:30:59,898.898 INFO    ] ================================================
[2026-10-25 13:30:59,914.914 INFO    ] Launching Daemon at Sun Oct 25 13:30:59 IST 2026
[2026-10-25 13:30:59,926.926 INFO    ] ================================================
[2026-10-25 13:31:00,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:31:00
[2026-10-25 13:31:01,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:31:01,369.369 INFO    ] Initializing speech engine...
[2026-10-25 13:31:01,396.396 INFO    ] 2026-10-25 13:31:01
[2026-10-25 13:31:01,657.657 INFO    ] 2026-10-25 13:31:01
[2026-10-25 13:31:01,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:31:01,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:31:02,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:31:02,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:31:02,206.206 INFO    ] time= 25/10/2026 13:31:02
[2026-10-25 13:31:02,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:31:02,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:31:02,324.324 INFO    ] No existing commands found in stream
[2026-10-25 13:31:07,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:31:07,345.345 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 13:31:11,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:31:11,156.156 INFO    ] Checking for system updates...
[2026-10-25 13:31:11,194.194 INFO    ] 200
[2026-10-25 13:31:11,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:11,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:31:11,271.271 INFO    ] No update needed
[2026-10-25 13:31:11,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 13:31:11,312.312 INFO    ] 200
[2026-10-25 13:31:11,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:11,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:31:11,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:31:11,407.407 INFO    ] No camera update needed
[2026-10-25 13:31:11,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:31:11,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:31:11,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:31:11,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:31:13,464.464 INFO    ] ================================================
[2026-10-25 13:31:13,479.479 INFO    ] Launching Daemon at Sun Oct 25 13:31:13 IST 2026
[2026-10-25 13:31:13,490.490 INFO    ] ================================================
[2026-10-25 13:31:14,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:31:14
[2026-10-25 13:31:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:31:15,011.011 INFO    ] Initializing speech engine...
[2026-10-25 13:31:15,019.019 INFO    ] 2026-10-25 13:31:15
[2026-10-25 13:31:15,282.282 INFO    ] 2026-10-25 13:31:15
[2026-10-25 13:31:15,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:31:15,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:31:15,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:31:15,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:31:15,755.755 INFO    ] time= 25/10/2026 13:31:15
[2026-10-25 13:31:15,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:31:15,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:31:15,899.899 INFO    ] No existing commands found in stream
[2026-10-25 13:31:20,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:31:20,935.935 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 13:31:22,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:31:22,600.600 INFO    ] Checking for system updates...
[2026-10-25 13:31:22,639.639 INFO    ] 200
[2026-10-25 13:31:22,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:22,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:31:22,704.704 INFO    ] No update needed
[2026-10-25 13:31:22,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 13:31:22,741.741 INFO    ] 200
[2026-10-25 13:31:22,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:22,790.790 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:31:22,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:31:22,838.838 INFO    ] No camera update needed
[2026-10-25 13:31:22,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:31:22,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:31:22,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:31:22,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:31:24,896.896 INFO    ] ================================================
[2026-10-25 13:31:24,914.914 INFO    ] Launching Daemon at Sun Oct 25 13:31:24 IST 2026
[2026-10-25 13:31:24,925.925 INFO    ] ================================================
[2026-10-25 13:31:25,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:31:25
[2026-10-25 13:31:26,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:31:26,364.364 INFO    ] Initializing speech engine...
[2026-10-25 13:31:26,373.373 INFO    ] 2026-10-25 13:31:26
[2026-10-25 13:31:26,662.662 INFO    ] 2026-10-25 13:31:26
[2026-10-25 13:31:26,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:31:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:31:28,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:31:28,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:31:28,630.630 INFO    ] time= 25/10/2026 13:31:28
[2026-10-25 13:31:28,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:31:28,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:31:28,745.745 INFO    ] No existing commands found in stream
[2026-10-25 13:31:33,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:31:33,778.778 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 13:31:34,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:31:34,877.877 INFO    ] Checking for system updates...
[2026-10-25 13:31:34,913.913 INFO    ] 200
[2026-10-25 13:31:34,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:34,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:31:34,977.977 INFO    ] No update needed
[2026-10-25 13:31:34,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 13:31:35,014.014 INFO    ] 200
[2026-10-25 13:31:35,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:35,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:31:35,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:31:35,108.108 INFO    ] No camera update needed
[2026-10-25 13:31:35,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:31:35,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:31:35,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:31:35,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:31:37,166.166 INFO    ] ================================================
[2026-10-25 13:31:37,181.181 INFO    ] Launching Daemon at Sun Oct 25 13:31:37 IST 2026
[2026-10-25 13:31:37,192.192 INFO    ] ================================================
[2026-10-25 13:31:37,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:31:37
[2026-10-25 13:31:38,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:31:38,767.767 INFO    ] Initializing speech engine...
[2026-10-25 13:31:38,775.775 INFO    ] 2026-10-25 13:31:38
[2026-10-25 13:31:39,056.056 INFO    ] 2026-10-25 13:31:39
[2026-10-25 13:31:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:31:39,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:31:39,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:31:39,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:31:39,593.593 INFO    ] time= 25/10/2026 13:31:39
[2026-10-25 13:31:39,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:31:39,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:31:39,742.742 INFO    ] No existing commands found in stream
[2026-10-25 13:31:44,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:31:44,761.761 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 13:31:47,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:31:47,838.838 INFO    ] Checking for system updates...
[2026-10-25 13:31:47,875.875 INFO    ] 200
[2026-10-25 13:31:47,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:47,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:31:47,934.934 INFO    ] No update needed
[2026-10-25 13:31:47,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 13:31:47,972.972 INFO    ] 200
[2026-10-25 13:31:47,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:31:48,020.020 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:31:48,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:31:48,079.079 INFO    ] No camera update needed
[2026-10-25 13:31:48,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:31:48,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:31:48,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:31:48,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:31:50,136.136 INFO    ] ================================================
[2026-10-25 13:31:50,152.152 INFO    ] Launching Daemon at Sun Oct 25 13:31:50 IST 2026
[2026-10-25 13:31:50,164.164 INFO    ] ================================================
[2026-10-25 13:31:50,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:31:50
[2026-10-25 13:31:51,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:31:51,633.633 INFO    ] Initializing speech engine...
[2026-10-25 13:31:51,639.639 INFO    ] 2026-10-25 13:31:51
[2026-10-25 13:31:51,888.888 INFO    ] 2026-10-25 13:31:51
[2026-10-25 13:31:51,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:31:52,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:31:52,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:31:52,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:31:52,432.432 INFO    ] time= 25/10/2026 13:31:52
[2026-10-25 13:31:52,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:31:52,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:31:52,589.589 INFO    ] No existing commands found in stream
[2026-10-25 13:31:57,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:31:57,617.617 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 13:32:00,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:32:00,124.124 INFO    ] Checking for system updates...
[2026-10-25 13:32:00,164.164 INFO    ] 200
[2026-10-25 13:32:00,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:00,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:32:00,228.228 INFO    ] No update needed
[2026-10-25 13:32:00,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 13:32:00,269.269 INFO    ] 200
[2026-10-25 13:32:00,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:00,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:32:00,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:32:00,364.364 INFO    ] No camera update needed
[2026-10-25 13:32:00,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:32:00,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:32:00,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:32:00,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:32:02,421.421 INFO    ] ================================================
[2026-10-25 13:32:02,442.442 INFO    ] Launching Daemon at Sun Oct 25 13:32:02 IST 2026
[2026-10-25 13:32:02,455.455 INFO    ] ================================================
[2026-10-25 13:32:03,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:32:03
[2026-10-25 13:32:03,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:32:04,084.084 INFO    ] Initializing speech engine...
[2026-10-25 13:32:04,091.091 INFO    ] 2026-10-25 13:32:04
[2026-10-25 13:32:04,361.361 INFO    ] 2026-10-25 13:32:04
[2026-10-25 13:32:04,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:32:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:32:04,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:32:04,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:32:04,731.731 INFO    ] time= 25/10/2026 13:32:04
[2026-10-25 13:32:04,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:32:04,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:32:04,855.855 INFO    ] No existing commands found in stream
[2026-10-25 13:32:09,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:32:09,871.871 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 13:32:12,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:32:12,155.155 INFO    ] Checking for system updates...
[2026-10-25 13:32:12,195.195 INFO    ] 200
[2026-10-25 13:32:12,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:12,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:12,253.253 INFO    ] No update needed
[2026-10-25 13:32:12,255.255 INFO    ] Checking for camera pi updates...
[2026-10-25 13:32:12,290.290 INFO    ] 200
[2026-10-25 13:32:12,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:12,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:32:12,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:12,386.386 INFO    ] No camera update needed
[2026-10-25 13:32:12,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:32:12,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:32:12,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:32:12,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:32:14,442.442 INFO    ] ================================================
[2026-10-25 13:32:14,458.458 INFO    ] Launching Daemon at Sun Oct 25 13:32:14 IST 2026
[2026-10-25 13:32:14,469.469 INFO    ] ================================================
[2026-10-25 13:32:15,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:32:15
[2026-10-25 13:32:15,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:32:15,928.928 INFO    ] Initializing speech engine...
[2026-10-25 13:32:15,935.935 INFO    ] 2026-10-25 13:32:15
[2026-10-25 13:32:16,234.234 INFO    ] 2026-10-25 13:32:16
[2026-10-25 13:32:16,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:32:16,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:32:16,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:32:16,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:32:16,685.685 INFO    ] time= 25/10/2026 13:32:16
[2026-10-25 13:32:16,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:32:16,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:32:16,860.860 INFO    ] No existing commands found in stream
[2026-10-25 13:32:21,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:32:21,893.893 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 13:32:23,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:32:23,614.614 INFO    ] Checking for system updates...
[2026-10-25 13:32:23,650.650 INFO    ] 200
[2026-10-25 13:32:23,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:23,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:23,708.708 INFO    ] No update needed
[2026-10-25 13:32:23,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 13:32:23,746.746 INFO    ] 200
[2026-10-25 13:32:23,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:23,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:32:23,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:23,838.838 INFO    ] No camera update needed
[2026-10-25 13:32:23,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:32:23,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:32:23,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:32:23,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:32:25,894.894 INFO    ] ================================================
[2026-10-25 13:32:25,910.910 INFO    ] Launching Daemon at Sun Oct 25 13:32:25 IST 2026
[2026-10-25 13:32:25,921.921 INFO    ] ================================================
[2026-10-25 13:32:26,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:32:26
[2026-10-25 13:32:27,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:32:27,320.320 INFO    ] Initializing speech engine...
[2026-10-25 13:32:27,326.326 INFO    ] 2026-10-25 13:32:27
[2026-10-25 13:32:27,621.621 INFO    ] 2026-10-25 13:32:27
[2026-10-25 13:32:27,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:32:30,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:32:30,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:32:30,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:32:30,466.466 INFO    ] time= 25/10/2026 13:32:30
[2026-10-25 13:32:30,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:32:30,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:32:30,585.585 INFO    ] No existing commands found in stream
[2026-10-25 13:32:35,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:32:35,597.597 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 13:32:38,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:32:38,897.897 INFO    ] Checking for system updates...
[2026-10-25 13:32:38,937.937 INFO    ] 200
[2026-10-25 13:32:38,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:38,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:39,001.001 INFO    ] No update needed
[2026-10-25 13:32:39,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 13:32:39,037.037 INFO    ] 200
[2026-10-25 13:32:39,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:39,085.085 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:32:39,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:39,246.246 INFO    ] No camera update needed
[2026-10-25 13:32:39,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:32:39,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:32:39,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:32:39,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:32:41,301.301 INFO    ] ================================================
[2026-10-25 13:32:41,317.317 INFO    ] Launching Daemon at Sun Oct 25 13:32:41 IST 2026
[2026-10-25 13:32:41,328.328 INFO    ] ================================================
[2026-10-25 13:32:41,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:32:41
[2026-10-25 13:32:42,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:32:42,953.953 INFO    ] Initializing speech engine...
[2026-10-25 13:32:42,959.959 INFO    ] 2026-10-25 13:32:42
[2026-10-25 13:32:43,278.278 INFO    ] 2026-10-25 13:32:43
[2026-10-25 13:32:43,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:32:43,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:32:43,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:32:43,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:32:43,785.785 INFO    ] time= 25/10/2026 13:32:43
[2026-10-25 13:32:43,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:32:43,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:32:43,930.930 INFO    ] No existing commands found in stream
[2026-10-25 13:32:48,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:32:48,955.955 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 13:32:51,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:32:51,162.162 INFO    ] Checking for system updates...
[2026-10-25 13:32:51,199.199 INFO    ] 200
[2026-10-25 13:32:51,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:51,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:51,267.267 INFO    ] No update needed
[2026-10-25 13:32:51,269.269 INFO    ] Checking for camera pi updates...
[2026-10-25 13:32:51,305.305 INFO    ] 200
[2026-10-25 13:32:51,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:32:51,350.350 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:32:51,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:32:51,401.401 INFO    ] No camera update needed
[2026-10-25 13:32:51,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:32:51,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:32:51,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:32:51,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:32:53,462.462 INFO    ] ================================================
[2026-10-25 13:32:53,477.477 INFO    ] Launching Daemon at Sun Oct 25 13:32:53 IST 2026
[2026-10-25 13:32:53,488.488 INFO    ] ================================================
[2026-10-25 13:32:54,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:32:54
[2026-10-25 13:32:54,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:32:55,113.113 INFO    ] Initializing speech engine...
[2026-10-25 13:32:55,126.126 INFO    ] 2026-10-25 13:32:55
[2026-10-25 13:32:55,440.440 INFO    ] 2026-10-25 13:32:55
[2026-10-25 13:32:55,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:32:55,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:32:55,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:32:55,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:32:55,896.896 INFO    ] time= 25/10/2026 13:32:55
[2026-10-25 13:32:55,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:32:55,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:32:56,092.092 INFO    ] No existing commands found in stream
[2026-10-25 13:33:01,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:33:01,126.126 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 13:33:04,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:33:04,904.904 INFO    ] Checking for system updates...
[2026-10-25 13:33:04,942.942 INFO    ] 200
[2026-10-25 13:33:04,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:05,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:05,003.003 INFO    ] No update needed
[2026-10-25 13:33:05,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 13:33:05,041.041 INFO    ] 200
[2026-10-25 13:33:05,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:05,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:33:05,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:05,158.158 INFO    ] No camera update needed
[2026-10-25 13:33:05,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:33:05,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:33:05,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:33:05,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:33:07,217.217 INFO    ] ================================================
[2026-10-25 13:33:07,233.233 INFO    ] Launching Daemon at Sun Oct 25 13:33:07 IST 2026
[2026-10-25 13:33:07,244.244 INFO    ] ================================================
[2026-10-25 13:33:07,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:33:07
[2026-10-25 13:33:08,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:33:08,882.882 INFO    ] Initializing speech engine...
[2026-10-25 13:33:08,891.891 INFO    ] 2026-10-25 13:33:08
[2026-10-25 13:33:09,140.140 INFO    ] 2026-10-25 13:33:09
[2026-10-25 13:33:09,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:33:09,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:33:09,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:33:09,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:33:09,517.517 INFO    ] time= 25/10/2026 13:33:09
[2026-10-25 13:33:09,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:33:09,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:33:09,705.705 INFO    ] No existing commands found in stream
[2026-10-25 13:33:14,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:33:14,733.733 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 13:33:15,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:33:15,938.938 INFO    ] Checking for system updates...
[2026-10-25 13:33:15,979.979 INFO    ] 200
[2026-10-25 13:33:15,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:16,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:16,037.037 INFO    ] No update needed
[2026-10-25 13:33:16,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 13:33:16,082.082 INFO    ] 200
[2026-10-25 13:33:16,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:16,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:33:16,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:16,189.189 INFO    ] No camera update needed
[2026-10-25 13:33:16,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:33:16,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:33:16,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:33:16,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:33:18,247.247 INFO    ] ================================================
[2026-10-25 13:33:18,263.263 INFO    ] Launching Daemon at Sun Oct 25 13:33:18 IST 2026
[2026-10-25 13:33:18,274.274 INFO    ] ================================================
[2026-10-25 13:33:18,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:33:18
[2026-10-25 13:33:19,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:33:19,726.726 INFO    ] Initializing speech engine...
[2026-10-25 13:33:19,738.738 INFO    ] 2026-10-25 13:33:19
[2026-10-25 13:33:20,013.013 INFO    ] 2026-10-25 13:33:19
[2026-10-25 13:33:20,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:33:20,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:33:20,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:33:20,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:33:20,369.369 INFO    ] time= 25/10/2026 13:33:20
[2026-10-25 13:33:20,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:33:20,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:33:20,448.448 INFO    ] No existing commands found in stream
[2026-10-25 13:33:25,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:33:25,490.490 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 13:33:26,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:33:26,724.724 INFO    ] Checking for system updates...
[2026-10-25 13:33:26,761.761 INFO    ] 200
[2026-10-25 13:33:26,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:26,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:26,840.840 INFO    ] No update needed
[2026-10-25 13:33:26,844.844 INFO    ] Checking for camera pi updates...
[2026-10-25 13:33:26,879.879 INFO    ] 200
[2026-10-25 13:33:26,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:26,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:33:26,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:26,991.991 INFO    ] No camera update needed
[2026-10-25 13:33:26,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:33:26,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:33:27,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:33:27,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:33:29,051.051 INFO    ] ================================================
[2026-10-25 13:33:29,067.067 INFO    ] Launching Daemon at Sun Oct 25 13:33:29 IST 2026
[2026-10-25 13:33:29,078.078 INFO    ] ================================================
[2026-10-25 13:33:29,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:33:29
[2026-10-25 13:33:30,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:33:30,633.633 INFO    ] Initializing speech engine...
[2026-10-25 13:33:30,647.647 INFO    ] 2026-10-25 13:33:30
[2026-10-25 13:33:30,921.921 INFO    ] 2026-10-25 13:33:30
[2026-10-25 13:33:30,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:33:32,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:33:32,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:33:32,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:33:32,368.368 INFO    ] time= 25/10/2026 13:33:32
[2026-10-25 13:33:32,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:33:32,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:33:32,439.439 INFO    ] No existing commands found in stream
[2026-10-25 13:33:37,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:33:37,456.456 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 13:33:39,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:33:39,146.146 INFO    ] Checking for system updates...
[2026-10-25 13:33:39,183.183 INFO    ] 200
[2026-10-25 13:33:39,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:39,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:39,245.245 INFO    ] No update needed
[2026-10-25 13:33:39,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 13:33:39,283.283 INFO    ] 200
[2026-10-25 13:33:39,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:39,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:33:39,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:33:39,390.390 INFO    ] No camera update needed
[2026-10-25 13:33:39,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:33:39,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:33:39,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:33:39,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:33:41,451.451 INFO    ] ================================================
[2026-10-25 13:33:41,467.467 INFO    ] Launching Daemon at Sun Oct 25 13:33:41 IST 2026
[2026-10-25 13:33:41,478.478 INFO    ] ================================================
[2026-10-25 13:33:42,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:33:42
[2026-10-25 13:33:42,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:33:43,113.113 INFO    ] Initializing speech engine...
[2026-10-25 13:33:43,119.119 INFO    ] 2026-10-25 13:33:43
[2026-10-25 13:33:43,419.419 INFO    ] 2026-10-25 13:33:43
[2026-10-25 13:33:43,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:33:43,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:33:43,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:33:43,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:33:43,860.860 INFO    ] time= 25/10/2026 13:33:43
[2026-10-25 13:33:43,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:33:43,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:33:44,012.012 INFO    ] No existing commands found in stream
[2026-10-25 13:33:49,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:33:49,034.034 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 13:33:52,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:33:52,663.663 INFO    ] Checking for system updates...
[2026-10-25 13:33:52,700.700 INFO    ] 200
[2026-10-25 13:33:52,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:52,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:33:52,765.765 INFO    ] No update needed
[2026-10-25 13:33:52,767.767 INFO    ] Checking for camera pi updates...
[2026-10-25 13:33:52,805.805 INFO    ] 200
[2026-10-25 13:33:52,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:33:52,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:33:52,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:33:52,897.897 INFO    ] No camera update needed
[2026-10-25 13:33:52,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:33:52,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:33:52,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:33:52,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:33:54,953.953 INFO    ] ================================================
[2026-10-25 13:33:54,968.968 INFO    ] Launching Daemon at Sun Oct 25 13:33:54 IST 2026
[2026-10-25 13:33:54,979.979 INFO    ] ================================================
[2026-10-25 13:33:55,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:33:55
[2026-10-25 13:33:56,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:33:56,444.444 INFO    ] Initializing speech engine...
[2026-10-25 13:33:56,449.449 INFO    ] 2026-10-25 13:33:56
[2026-10-25 13:33:56,695.695 INFO    ] 2026-10-25 13:33:56
[2026-10-25 13:33:56,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:33:56,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:33:56,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:33:57,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:33:57,032.032 INFO    ] time= 25/10/2026 13:33:57
[2026-10-25 13:33:57,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:33:57,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:33:57,145.145 INFO    ] No existing commands found in stream
[2026-10-25 13:34:02,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:34:02,184.184 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 13:34:03,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:34:03,759.759 INFO    ] Checking for system updates...
[2026-10-25 13:34:03,794.794 INFO    ] 200
[2026-10-25 13:34:03,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:03,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:03,853.853 INFO    ] No update needed
[2026-10-25 13:34:03,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 13:34:03,906.906 INFO    ] 200
[2026-10-25 13:34:03,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:03,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:34:04,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:04,007.007 INFO    ] No camera update needed
[2026-10-25 13:34:04,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:34:04,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:34:04,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:34:04,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:34:06,075.075 INFO    ] ================================================
[2026-10-25 13:34:06,090.090 INFO    ] Launching Daemon at Sun Oct 25 13:34:06 IST 2026
[2026-10-25 13:34:06,102.102 INFO    ] ================================================
[2026-10-25 13:34:06,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:34:06
[2026-10-25 13:34:07,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:34:07,683.683 INFO    ] Initializing speech engine...
[2026-10-25 13:34:07,692.692 INFO    ] 2026-10-25 13:34:07
[2026-10-25 13:34:07,938.938 INFO    ] 2026-10-25 13:34:07
[2026-10-25 13:34:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:34:08,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:34:08,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:34:08,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:34:08,294.294 INFO    ] time= 25/10/2026 13:34:08
[2026-10-25 13:34:08,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:34:08,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:34:08,416.416 INFO    ] No existing commands found in stream
[2026-10-25 13:34:13,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:34:13,428.428 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 13:34:16,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:34:16,062.062 INFO    ] Checking for system updates...
[2026-10-25 13:34:16,102.102 INFO    ] 200
[2026-10-25 13:34:16,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:16,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:16,166.166 INFO    ] No update needed
[2026-10-25 13:34:16,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 13:34:16,202.202 INFO    ] 200
[2026-10-25 13:34:16,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:16,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:34:16,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:16,316.316 INFO    ] No camera update needed
[2026-10-25 13:34:16,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:34:16,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:34:16,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:34:16,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:34:18,372.372 INFO    ] ================================================
[2026-10-25 13:34:18,388.388 INFO    ] Launching Daemon at Sun Oct 25 13:34:18 IST 2026
[2026-10-25 13:34:18,399.399 INFO    ] ================================================
[2026-10-25 13:34:18,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:34:18
[2026-10-25 13:34:19,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:34:19,850.850 INFO    ] Initializing speech engine...
[2026-10-25 13:34:19,859.859 INFO    ] 2026-10-25 13:34:19
[2026-10-25 13:34:20,120.120 INFO    ] 2026-10-25 13:34:20
[2026-10-25 13:34:20,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:34:20,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:34:20,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:34:20,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:34:20,572.572 INFO    ] time= 25/10/2026 13:34:20
[2026-10-25 13:34:20,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:34:20,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:34:20,727.727 INFO    ] No existing commands found in stream
[2026-10-25 13:34:25,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:34:25,744.744 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 13:34:29,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:34:29,498.498 INFO    ] Checking for system updates...
[2026-10-25 13:34:29,534.534 INFO    ] 200
[2026-10-25 13:34:29,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:29,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:29,592.592 INFO    ] No update needed
[2026-10-25 13:34:29,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 13:34:29,628.628 INFO    ] 200
[2026-10-25 13:34:29,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:29,672.672 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:34:29,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:29,725.725 INFO    ] No camera update needed
[2026-10-25 13:34:29,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:34:29,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:34:29,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:34:29,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:34:31,780.780 INFO    ] ================================================
[2026-10-25 13:34:31,796.796 INFO    ] Launching Daemon at Sun Oct 25 13:34:31 IST 2026
[2026-10-25 13:34:31,808.808 INFO    ] ================================================
[2026-10-25 13:34:32,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:34:32
[2026-10-25 13:34:33,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:34:33,413.413 INFO    ] Initializing speech engine...
[2026-10-25 13:34:33,420.420 INFO    ] 2026-10-25 13:34:33
[2026-10-25 13:34:33,742.742 INFO    ] 2026-10-25 13:34:33
[2026-10-25 13:34:33,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:34:35,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:34:35,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:34:35,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:34:35,896.896 INFO    ] time= 25/10/2026 13:34:35
[2026-10-25 13:34:35,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:34:35,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:34:35,971.971 INFO    ] No existing commands found in stream
[2026-10-25 13:34:40,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:34:40,987.987 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 13:34:43,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:34:43,315.315 INFO    ] Checking for system updates...
[2026-10-25 13:34:43,350.350 INFO    ] 200
[2026-10-25 13:34:43,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:43,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:43,417.417 INFO    ] No update needed
[2026-10-25 13:34:43,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 13:34:43,453.453 INFO    ] 200
[2026-10-25 13:34:43,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:43,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:34:43,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:43,665.665 INFO    ] No camera update needed
[2026-10-25 13:34:43,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:34:43,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:34:43,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:34:43,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:34:45,722.722 INFO    ] ================================================
[2026-10-25 13:34:45,737.737 INFO    ] Launching Daemon at Sun Oct 25 13:34:45 IST 2026
[2026-10-25 13:34:45,748.748 INFO    ] ================================================
[2026-10-25 13:34:46,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:34:46
[2026-10-25 13:34:46,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:34:47,162.162 INFO    ] Initializing speech engine...
[2026-10-25 13:34:47,170.170 INFO    ] 2026-10-25 13:34:47
[2026-10-25 13:34:47,453.453 INFO    ] 2026-10-25 13:34:47
[2026-10-25 13:34:47,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:34:47,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:34:47,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:34:47,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:34:47,806.806 INFO    ] time= 25/10/2026 13:34:47
[2026-10-25 13:34:47,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:34:47,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:34:47,903.903 INFO    ] No existing commands found in stream
[2026-10-25 13:34:52,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:34:52,924.924 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 13:34:56,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:34:56,502.502 INFO    ] Checking for system updates...
[2026-10-25 13:34:56,538.538 INFO    ] 200
[2026-10-25 13:34:56,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:56,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:56,604.604 INFO    ] No update needed
[2026-10-25 13:34:56,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 13:34:56,646.646 INFO    ] 200
[2026-10-25 13:34:56,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:34:56,689.689 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:34:56,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:34:56,748.748 INFO    ] No camera update needed
[2026-10-25 13:34:56,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:34:56,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:34:56,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:34:56,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:34:58,802.802 INFO    ] ================================================
[2026-10-25 13:34:58,818.818 INFO    ] Launching Daemon at Sun Oct 25 13:34:58 IST 2026
[2026-10-25 13:34:58,829.829 INFO    ] ================================================
[2026-10-25 13:34:59,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:34:59
[2026-10-25 13:34:59,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:35:00,226.226 INFO    ] Initializing speech engine...
[2026-10-25 13:35:00,249.249 INFO    ] 2026-10-25 13:35:00
[2026-10-25 13:35:00,500.500 INFO    ] 2026-10-25 13:35:00
[2026-10-25 13:35:00,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:35:00,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:35:00,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:35:00,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:35:01,001.001 INFO    ] time= 25/10/2026 13:35:00
[2026-10-25 13:35:01,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:35:01,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:35:01,145.145 INFO    ] No existing commands found in stream
[2026-10-25 13:35:06,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:35:06,157.157 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 13:35:08,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:35:08,958.958 INFO    ] Checking for system updates...
[2026-10-25 13:35:08,997.997 INFO    ] 200
[2026-10-25 13:35:08,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:09,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:35:09,056.056 INFO    ] No update needed
[2026-10-25 13:35:09,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 13:35:09,094.094 INFO    ] 200
[2026-10-25 13:35:09,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:09,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:35:09,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:35:09,197.197 INFO    ] No camera update needed
[2026-10-25 13:35:09,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:35:09,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:35:09,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:35:09,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:35:11,254.254 INFO    ] ================================================
[2026-10-25 13:35:11,269.269 INFO    ] Launching Daemon at Sun Oct 25 13:35:11 IST 2026
[2026-10-25 13:35:11,279.279 INFO    ] ================================================
[2026-10-25 13:35:11,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:35:11
[2026-10-25 13:35:12,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:35:12,685.685 INFO    ] Initializing speech engine...
[2026-10-25 13:35:12,708.708 INFO    ] 2026-10-25 13:35:12
[2026-10-25 13:35:12,962.962 INFO    ] 2026-10-25 13:35:12
[2026-10-25 13:35:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:35:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:35:13,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:35:13,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:35:13,336.336 INFO    ] time= 25/10/2026 13:35:13
[2026-10-25 13:35:13,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:35:13,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:35:13,498.498 INFO    ] No existing commands found in stream
[2026-10-25 13:35:18,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:35:18,526.526 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 13:35:21,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:35:21,296.296 INFO    ] Checking for system updates...
[2026-10-25 13:35:21,336.336 INFO    ] 200
[2026-10-25 13:35:21,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:21,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:35:21,399.399 INFO    ] No update needed
[2026-10-25 13:35:21,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 13:35:21,438.438 INFO    ] 200
[2026-10-25 13:35:21,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:21,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:35:21,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:35:21,550.550 INFO    ] No camera update needed
[2026-10-25 13:35:21,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:35:21,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:35:21,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:35:21,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:35:23,605.605 INFO    ] ================================================
[2026-10-25 13:35:23,620.620 INFO    ] Launching Daemon at Sun Oct 25 13:35:23 IST 2026
[2026-10-25 13:35:23,631.631 INFO    ] ================================================
[2026-10-25 13:35:24,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:35:24
[2026-10-25 13:35:24,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:35:25,051.051 INFO    ] Initializing speech engine...
[2026-10-25 13:35:25,061.061 INFO    ] 2026-10-25 13:35:25
[2026-10-25 13:35:25,312.312 INFO    ] 2026-10-25 13:35:25
[2026-10-25 13:35:25,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:35:25,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:35:25,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:35:25,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:35:25,790.790 INFO    ] time= 25/10/2026 13:35:25
[2026-10-25 13:35:25,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:35:25,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:35:25,975.975 INFO    ] No existing commands found in stream
[2026-10-25 13:35:31,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:35:31,011.011 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 13:35:37,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:35:37,302.302 INFO    ] Checking for system updates...
[2026-10-25 13:35:37,341.341 INFO    ] 200
[2026-10-25 13:35:37,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:37,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:35:37,399.399 INFO    ] No update needed
[2026-10-25 13:35:37,402.402 INFO    ] Checking for camera pi updates...
[2026-10-25 13:35:37,439.439 INFO    ] 200
[2026-10-25 13:35:37,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:37,492.492 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:35:37,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:35:37,614.614 INFO    ] No camera update needed
[2026-10-25 13:35:37,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:35:37,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:35:37,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:35:37,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:35:39,668.668 INFO    ] ================================================
[2026-10-25 13:35:39,683.683 INFO    ] Launching Daemon at Sun Oct 25 13:35:39 IST 2026
[2026-10-25 13:35:39,694.694 INFO    ] ================================================
[2026-10-25 13:35:40,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:35:40
[2026-10-25 13:35:40,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:35:41,172.172 INFO    ] Initializing speech engine...
[2026-10-25 13:35:41,178.178 INFO    ] 2026-10-25 13:35:41
[2026-10-25 13:35:41,435.435 INFO    ] 2026-10-25 13:35:41
[2026-10-25 13:35:41,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:35:41,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:35:41,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:35:41,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:35:41,877.877 INFO    ] time= 25/10/2026 13:35:41
[2026-10-25 13:35:41,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:35:41,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:35:42,046.046 INFO    ] No existing commands found in stream
[2026-10-25 13:35:47,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:35:47,065.065 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 13:35:48,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:35:48,856.856 INFO    ] Checking for system updates...
[2026-10-25 13:35:48,904.904 INFO    ] 200
[2026-10-25 13:35:48,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:48,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:35:48,975.975 INFO    ] No update needed
[2026-10-25 13:35:48,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 13:35:49,018.018 INFO    ] 200
[2026-10-25 13:35:49,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:49,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:35:49,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:35:49,123.123 INFO    ] No camera update needed
[2026-10-25 13:35:49,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:35:49,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:35:49,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:35:49,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:35:51,181.181 INFO    ] ================================================
[2026-10-25 13:35:51,196.196 INFO    ] Launching Daemon at Sun Oct 25 13:35:51 IST 2026
[2026-10-25 13:35:51,206.206 INFO    ] ================================================
[2026-10-25 13:35:51,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:35:51
[2026-10-25 13:35:52,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:35:52,659.659 INFO    ] Initializing speech engine...
[2026-10-25 13:35:52,664.664 INFO    ] 2026-10-25 13:35:52
[2026-10-25 13:35:52,923.923 INFO    ] 2026-10-25 13:35:52
[2026-10-25 13:35:52,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:35:53,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:35:53,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:35:53,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:35:53,280.280 INFO    ] time= 25/10/2026 13:35:53
[2026-10-25 13:35:53,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:35:53,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:35:53,452.452 INFO    ] No existing commands found in stream
[2026-10-25 13:35:58,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:35:58,489.489 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 13:35:59,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:35:59,824.824 INFO    ] Checking for system updates...
[2026-10-25 13:35:59,860.860 INFO    ] 200
[2026-10-25 13:35:59,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:35:59,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:35:59,922.922 INFO    ] No update needed
[2026-10-25 13:35:59,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 13:35:59,960.960 INFO    ] 200
[2026-10-25 13:35:59,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:00,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:36:00,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:36:00,059.059 INFO    ] No camera update needed
[2026-10-25 13:36:00,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:36:00,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:36:00,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:36:00,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:36:02,116.116 INFO    ] ================================================
[2026-10-25 13:36:02,137.137 INFO    ] Launching Daemon at Sun Oct 25 13:36:02 IST 2026
[2026-10-25 13:36:02,152.152 INFO    ] ================================================
[2026-10-25 13:36:02,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:36:02
[2026-10-25 13:36:03,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:36:03,751.751 INFO    ] Initializing speech engine...
[2026-10-25 13:36:03,767.767 INFO    ] 2026-10-25 13:36:03
[2026-10-25 13:36:04,067.067 INFO    ] 2026-10-25 13:36:04
[2026-10-25 13:36:04,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:36:07,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:36:07,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:36:07,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:36:07,750.750 INFO    ] time= 25/10/2026 13:36:07
[2026-10-25 13:36:07,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:36:07,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:36:07,802.802 INFO    ] No existing commands found in stream
[2026-10-25 13:36:12,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:36:12,814.814 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 13:36:13,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:36:13,739.739 INFO    ] Checking for system updates...
[2026-10-25 13:36:13,793.793 INFO    ] 200
[2026-10-25 13:36:13,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:13,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:36:13,863.863 INFO    ] No update needed
[2026-10-25 13:36:13,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 13:36:13,910.910 INFO    ] 200
[2026-10-25 13:36:13,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:13,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:36:14,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:36:14,011.011 INFO    ] No camera update needed
[2026-10-25 13:36:14,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:36:14,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:36:14,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:36:14,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:36:16,065.065 INFO    ] ================================================
[2026-10-25 13:36:16,080.080 INFO    ] Launching Daemon at Sun Oct 25 13:36:16 IST 2026
[2026-10-25 13:36:16,091.091 INFO    ] ================================================
[2026-10-25 13:36:16,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:36:16
[2026-10-25 13:36:17,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:36:17,535.535 INFO    ] Initializing speech engine...
[2026-10-25 13:36:17,540.540 INFO    ] 2026-10-25 13:36:17
[2026-10-25 13:36:17,816.816 INFO    ] 2026-10-25 13:36:17
[2026-10-25 13:36:17,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:36:18,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:36:18,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:36:18,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:36:18,283.283 INFO    ] time= 25/10/2026 13:36:18
[2026-10-25 13:36:18,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:36:18,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:36:18,430.430 INFO    ] No existing commands found in stream
[2026-10-25 13:36:23,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:36:23,445.445 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 13:36:25,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:36:25,578.578 INFO    ] Checking for system updates...
[2026-10-25 13:36:25,618.618 INFO    ] 200
[2026-10-25 13:36:25,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:25,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:36:25,686.686 INFO    ] No update needed
[2026-10-25 13:36:25,688.688 INFO    ] Checking for camera pi updates...
[2026-10-25 13:36:25,722.722 INFO    ] 200
[2026-10-25 13:36:25,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:25,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:36:25,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:36:25,834.834 INFO    ] No camera update needed
[2026-10-25 13:36:25,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:36:25,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:36:25,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:36:25,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:36:27,888.888 INFO    ] ================================================
[2026-10-25 13:36:27,904.904 INFO    ] Launching Daemon at Sun Oct 25 13:36:27 IST 2026
[2026-10-25 13:36:27,916.916 INFO    ] ================================================
[2026-10-25 13:36:28,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:36:28
[2026-10-25 13:36:29,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:36:29,460.460 INFO    ] Initializing speech engine...
[2026-10-25 13:36:29,463.463 INFO    ] 2026-10-25 13:36:29
[2026-10-25 13:36:29,738.738 INFO    ] 2026-10-25 13:36:29
[2026-10-25 13:36:29,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:36:29,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:36:29,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:36:30,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:36:30,129.129 INFO    ] time= 25/10/2026 13:36:30
[2026-10-25 13:36:30,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:36:30,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:36:30,308.308 INFO    ] No existing commands found in stream
[2026-10-25 13:36:35,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:36:35,337.337 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 13:36:39,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:36:39,663.663 INFO    ] Checking for system updates...
[2026-10-25 13:36:39,708.708 INFO    ] 200
[2026-10-25 13:36:39,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:39,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:36:39,774.774 INFO    ] No update needed
[2026-10-25 13:36:39,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 13:36:39,811.811 INFO    ] 200
[2026-10-25 13:36:39,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:39,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:36:39,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:36:39,920.920 INFO    ] No camera update needed
[2026-10-25 13:36:39,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:36:39,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:36:39,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:36:39,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:36:41,977.977 INFO    ] ================================================
[2026-10-25 13:36:41,993.993 INFO    ] Launching Daemon at Sun Oct 25 13:36:41 IST 2026
[2026-10-25 13:36:42,004.004 INFO    ] ================================================
[2026-10-25 13:36:42,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:36:42
[2026-10-25 13:36:43,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:36:43,442.442 INFO    ] Initializing speech engine...
[2026-10-25 13:36:43,457.457 INFO    ] 2026-10-25 13:36:43
[2026-10-25 13:36:43,746.746 INFO    ] 2026-10-25 13:36:43
[2026-10-25 13:36:43,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:36:43,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:36:43,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:36:44,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:36:44,133.133 INFO    ] time= 25/10/2026 13:36:44
[2026-10-25 13:36:44,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:36:44,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:36:44,251.251 INFO    ] No existing commands found in stream
[2026-10-25 13:36:49,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:36:49,273.273 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 13:36:51,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:36:51,827.827 INFO    ] Checking for system updates...
[2026-10-25 13:36:51,868.868 INFO    ] 200
[2026-10-25 13:36:51,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:51,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:36:51,925.925 INFO    ] No update needed
[2026-10-25 13:36:51,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 13:36:51,962.962 INFO    ] 200
[2026-10-25 13:36:51,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:36:52,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:36:52,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:36:52,183.183 INFO    ] No camera update needed
[2026-10-25 13:36:52,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:36:52,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:36:52,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:36:52,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:36:54,240.240 INFO    ] ================================================
[2026-10-25 13:36:54,255.255 INFO    ] Launching Daemon at Sun Oct 25 13:36:54 IST 2026
[2026-10-25 13:36:54,266.266 INFO    ] ================================================
[2026-10-25 13:36:54,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:36:54
[2026-10-25 13:36:55,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:36:55,721.721 INFO    ] Initializing speech engine...
[2026-10-25 13:36:55,729.729 INFO    ] 2026-10-25 13:36:55
[2026-10-25 13:36:55,990.990 INFO    ] 2026-10-25 13:36:55
[2026-10-25 13:36:56,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:36:56,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:36:56,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:36:56,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:36:56,452.452 INFO    ] time= 25/10/2026 13:36:56
[2026-10-25 13:36:56,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:36:56,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:36:56,614.614 INFO    ] No existing commands found in stream
[2026-10-25 13:37:01,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:37:01,654.654 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 13:37:04,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:37:04,368.368 INFO    ] Checking for system updates...
[2026-10-25 13:37:04,411.411 INFO    ] 200
[2026-10-25 13:37:04,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:04,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:04,468.468 INFO    ] No update needed
[2026-10-25 13:37:04,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 13:37:04,509.509 INFO    ] 200
[2026-10-25 13:37:04,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:04,557.557 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:37:04,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:04,608.608 INFO    ] No camera update needed
[2026-10-25 13:37:04,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:37:04,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:37:04,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:37:04,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:37:06,665.665 INFO    ] ================================================
[2026-10-25 13:37:06,681.681 INFO    ] Launching Daemon at Sun Oct 25 13:37:06 IST 2026
[2026-10-25 13:37:06,692.692 INFO    ] ================================================
[2026-10-25 13:37:07,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:37:07
[2026-10-25 13:37:07,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:37:08,111.111 INFO    ] Initializing speech engine...
[2026-10-25 13:37:08,116.116 INFO    ] 2026-10-25 13:37:08
[2026-10-25 13:37:08,389.389 INFO    ] 2026-10-25 13:37:08
[2026-10-25 13:37:08,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:37:10,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:37:10,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:37:10,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:37:10,776.776 INFO    ] time= 25/10/2026 13:37:10
[2026-10-25 13:37:10,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:37:10,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:37:10,894.894 INFO    ] No existing commands found in stream
[2026-10-25 13:37:15,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:37:15,908.908 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 13:37:18,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:37:18,152.152 INFO    ] Checking for system updates...
[2026-10-25 13:37:18,193.193 INFO    ] 200
[2026-10-25 13:37:18,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:18,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:37:18,251.251 INFO    ] No update needed
[2026-10-25 13:37:18,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 13:37:18,287.287 INFO    ] 200
[2026-10-25 13:37:18,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:18,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:37:18,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:37:18,388.388 INFO    ] No camera update needed
[2026-10-25 13:37:18,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:37:18,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:37:18,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:37:18,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:37:20,442.442 INFO    ] ================================================
[2026-10-25 13:37:20,457.457 INFO    ] Launching Daemon at Sun Oct 25 13:37:20 IST 2026
[2026-10-25 13:37:20,468.468 INFO    ] ================================================
[2026-10-25 13:37:21,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:37:21
[2026-10-25 13:37:21,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:37:21,887.887 INFO    ] Initializing speech engine...
[2026-10-25 13:37:21,896.896 INFO    ] 2026-10-25 13:37:21
[2026-10-25 13:37:22,143.143 INFO    ] 2026-10-25 13:37:22
[2026-10-25 13:37:22,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:37:22,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:37:22,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:37:22,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:37:22,699.699 INFO    ] time= 25/10/2026 13:37:22
[2026-10-25 13:37:22,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:37:22,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:37:22,834.834 INFO    ] No existing commands found in stream
[2026-10-25 13:37:27,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:37:27,864.864 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 13:37:29,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:37:29,448.448 INFO    ] Checking for system updates...
[2026-10-25 13:37:29,485.485 INFO    ] 200
[2026-10-25 13:37:29,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:29,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:29,545.545 INFO    ] No update needed
[2026-10-25 13:37:29,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 13:37:29,583.583 INFO    ] 200
[2026-10-25 13:37:29,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:29,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:37:29,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:29,698.698 INFO    ] No camera update needed
[2026-10-25 13:37:29,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:37:29,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:37:29,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:37:29,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:37:31,759.759 INFO    ] ================================================
[2026-10-25 13:37:31,776.776 INFO    ] Launching Daemon at Sun Oct 25 13:37:31 IST 2026
[2026-10-25 13:37:31,787.787 INFO    ] ================================================
[2026-10-25 13:37:32,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:37:32
[2026-10-25 13:37:33,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:37:33,444.444 INFO    ] Initializing speech engine...
[2026-10-25 13:37:33,458.458 INFO    ] 2026-10-25 13:37:33
[2026-10-25 13:37:33,723.723 INFO    ] 2026-10-25 13:37:33
[2026-10-25 13:37:33,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:37:33,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:37:33,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:37:34,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:37:34,101.101 INFO    ] time= 25/10/2026 13:37:34
[2026-10-25 13:37:34,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:37:34,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:37:34,229.229 INFO    ] No existing commands found in stream
[2026-10-25 13:37:39,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:37:39,246.246 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 13:37:42,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:37:42,013.013 INFO    ] Checking for system updates...
[2026-10-25 13:37:42,050.050 INFO    ] 200
[2026-10-25 13:37:42,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:42,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:42,115.115 INFO    ] No update needed
[2026-10-25 13:37:42,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 13:37:42,151.151 INFO    ] 200
[2026-10-25 13:37:42,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:42,200.200 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:37:42,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:42,256.256 INFO    ] No camera update needed
[2026-10-25 13:37:42,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:37:42,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:37:42,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:37:42,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:37:44,311.311 INFO    ] ================================================
[2026-10-25 13:37:44,327.327 INFO    ] Launching Daemon at Sun Oct 25 13:37:44 IST 2026
[2026-10-25 13:37:44,338.338 INFO    ] ================================================
[2026-10-25 13:37:44,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:37:44
[2026-10-25 13:37:45,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:37:45,751.751 INFO    ] Initializing speech engine...
[2026-10-25 13:37:45,760.760 INFO    ] 2026-10-25 13:37:45
[2026-10-25 13:37:46,006.006 INFO    ] 2026-10-25 13:37:46
[2026-10-25 13:37:46,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:37:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:37:46,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:37:46,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:37:46,476.476 INFO    ] time= 25/10/2026 13:37:46
[2026-10-25 13:37:46,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:37:46,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:37:46,619.619 INFO    ] No existing commands found in stream
[2026-10-25 13:37:51,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:37:51,634.634 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 13:37:53,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:37:53,762.762 INFO    ] Checking for system updates...
[2026-10-25 13:37:53,798.798 INFO    ] 200
[2026-10-25 13:37:53,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:53,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:53,864.864 INFO    ] No update needed
[2026-10-25 13:37:53,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 13:37:53,904.904 INFO    ] 200
[2026-10-25 13:37:53,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:37:53,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:37:53,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:37:54,002.002 INFO    ] No camera update needed
[2026-10-25 13:37:54,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:37:54,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:37:54,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:37:54,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:37:56,058.058 INFO    ] ================================================
[2026-10-25 13:37:56,073.073 INFO    ] Launching Daemon at Sun Oct 25 13:37:56 IST 2026
[2026-10-25 13:37:56,084.084 INFO    ] ================================================
[2026-10-25 13:37:56,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:37:56
[2026-10-25 13:37:57,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:37:57,495.495 INFO    ] Initializing speech engine...
[2026-10-25 13:37:57,513.513 INFO    ] 2026-10-25 13:37:57
[2026-10-25 13:37:57,760.760 INFO    ] 2026-10-25 13:37:57
[2026-10-25 13:37:57,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:37:57,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:37:58,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:37:58,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:37:58,231.231 INFO    ] time= 25/10/2026 13:37:58
[2026-10-25 13:37:58,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:37:58,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:37:58,384.384 INFO    ] No existing commands found in stream
[2026-10-25 13:38:03,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:38:03,407.407 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 13:38:05,815.815 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:38:05,818.818 INFO    ] Checking for system updates...
[2026-10-25 13:38:05,854.854 INFO    ] 200
[2026-10-25 13:38:05,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:05,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:05,916.916 INFO    ] No update needed
[2026-10-25 13:38:05,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 13:38:05,953.953 INFO    ] 200
[2026-10-25 13:38:05,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:06,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:38:06,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:06,062.062 INFO    ] No camera update needed
[2026-10-25 13:38:06,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:38:06,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:38:06,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:38:06,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:38:08,117.117 INFO    ] ================================================
[2026-10-25 13:38:08,132.132 INFO    ] Launching Daemon at Sun Oct 25 13:38:08 IST 2026
[2026-10-25 13:38:08,142.142 INFO    ] ================================================
[2026-10-25 13:38:08,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:38:08
[2026-10-25 13:38:09,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:38:09,611.611 INFO    ] Initializing speech engine...
[2026-10-25 13:38:09,621.621 INFO    ] 2026-10-25 13:38:09
[2026-10-25 13:38:09,887.887 INFO    ] 2026-10-25 13:38:09
[2026-10-25 13:38:09,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:38:12,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:38:12,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:38:12,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:38:12,578.578 INFO    ] time= 25/10/2026 13:38:12
[2026-10-25 13:38:12,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:38:12,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:38:12,717.717 INFO    ] No existing commands found in stream
[2026-10-25 13:38:17,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:38:17,731.731 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 13:38:21,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:38:21,732.732 INFO    ] Checking for system updates...
[2026-10-25 13:38:21,771.771 INFO    ] 200
[2026-10-25 13:38:21,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:21,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:38:21,830.830 INFO    ] No update needed
[2026-10-25 13:38:21,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 13:38:21,870.870 INFO    ] 200
[2026-10-25 13:38:21,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:21,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:38:21,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:38:21,971.971 INFO    ] No camera update needed
[2026-10-25 13:38:21,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:38:21,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:38:21,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:38:21,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:38:24,027.027 INFO    ] ================================================
[2026-10-25 13:38:24,042.042 INFO    ] Launching Daemon at Sun Oct 25 13:38:24 IST 2026
[2026-10-25 13:38:24,053.053 INFO    ] ================================================
[2026-10-25 13:38:24,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:38:24
[2026-10-25 13:38:25,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:38:25,517.517 INFO    ] Initializing speech engine...
[2026-10-25 13:38:25,522.522 INFO    ] 2026-10-25 13:38:25
[2026-10-25 13:38:25,786.786 INFO    ] 2026-10-25 13:38:25
[2026-10-25 13:38:25,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:38:26,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:38:26,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:38:26,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:38:26,248.248 INFO    ] time= 25/10/2026 13:38:26
[2026-10-25 13:38:26,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:38:26,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:38:26,412.412 INFO    ] No existing commands found in stream
[2026-10-25 13:38:31,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:38:31,426.426 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 13:38:36,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:38:36,120.120 INFO    ] Checking for system updates...
[2026-10-25 13:38:36,159.159 INFO    ] 200
[2026-10-25 13:38:36,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:36,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:36,224.224 INFO    ] No update needed
[2026-10-25 13:38:36,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 13:38:36,263.263 INFO    ] 200
[2026-10-25 13:38:36,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:36,306.306 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:38:36,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:36,361.361 INFO    ] No camera update needed
[2026-10-25 13:38:36,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:38:36,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:38:36,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:38:36,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:38:38,419.419 INFO    ] ================================================
[2026-10-25 13:38:38,435.435 INFO    ] Launching Daemon at Sun Oct 25 13:38:38 IST 2026
[2026-10-25 13:38:38,446.446 INFO    ] ================================================
[2026-10-25 13:38:39,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:38:39
[2026-10-25 13:38:39,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:38:40,164.164 INFO    ] Initializing speech engine...
[2026-10-25 13:38:40,175.175 INFO    ] 2026-10-25 13:38:40
[2026-10-25 13:38:40,467.467 INFO    ] 2026-10-25 13:38:40
[2026-10-25 13:38:40,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:38:42,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:38:42,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:38:43,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:38:43,518.518 INFO    ] time= 25/10/2026 13:38:43
[2026-10-25 13:38:43,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:38:43,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:38:43,573.573 INFO    ] No existing commands found in stream
[2026-10-25 13:38:48,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:38:48,587.587 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 13:38:50,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:38:50,241.241 INFO    ] Checking for system updates...
[2026-10-25 13:38:50,282.282 INFO    ] 200
[2026-10-25 13:38:50,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:50,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:50,339.339 INFO    ] No update needed
[2026-10-25 13:38:50,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 13:38:50,384.384 INFO    ] 200
[2026-10-25 13:38:50,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:38:50,429.429 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:38:50,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:38:50,480.480 INFO    ] No camera update needed
[2026-10-25 13:38:50,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:38:50,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:38:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:38:50,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:38:52,538.538 INFO    ] ================================================
[2026-10-25 13:38:52,553.553 INFO    ] Launching Daemon at Sun Oct 25 13:38:52 IST 2026
[2026-10-25 13:38:52,563.563 INFO    ] ================================================
[2026-10-25 13:38:53,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:38:53
[2026-10-25 13:38:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:38:54,268.268 INFO    ] Initializing speech engine...
[2026-10-25 13:38:54,276.276 INFO    ] 2026-10-25 13:38:54
[2026-10-25 13:38:54,572.572 INFO    ] 2026-10-25 13:38:54
[2026-10-25 13:38:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:38:54,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:38:54,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:38:54,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:38:55,052.052 INFO    ] time= 25/10/2026 13:38:54
[2026-10-25 13:38:55,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:38:55,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:38:55,265.265 INFO    ] No existing commands found in stream
[2026-10-25 13:39:00,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:39:00,299.299 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 13:39:02,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:39:02,902.902 INFO    ] Checking for system updates...
[2026-10-25 13:39:02,948.948 INFO    ] 200
[2026-10-25 13:39:02,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:03,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:39:03,012.012 INFO    ] No update needed
[2026-10-25 13:39:03,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 13:39:03,057.057 INFO    ] 200
[2026-10-25 13:39:03,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:03,121.121 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:39:03,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:39:03,156.156 INFO    ] No camera update needed
[2026-10-25 13:39:03,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:39:03,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:39:03,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:39:03,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:39:05,210.210 INFO    ] ================================================
[2026-10-25 13:39:05,226.226 INFO    ] Launching Daemon at Sun Oct 25 13:39:05 IST 2026
[2026-10-25 13:39:05,244.244 INFO    ] ================================================
[2026-10-25 13:39:05,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:39:05
[2026-10-25 13:39:06,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:39:06,669.669 INFO    ] Initializing speech engine...
[2026-10-25 13:39:06,684.684 INFO    ] 2026-10-25 13:39:06
[2026-10-25 13:39:06,962.962 INFO    ] 2026-10-25 13:39:06
[2026-10-25 13:39:07,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:39:07,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:39:07,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:39:07,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:39:07,416.416 INFO    ] time= 25/10/2026 13:39:07
[2026-10-25 13:39:07,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:39:07,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:39:07,568.568 INFO    ] No existing commands found in stream
[2026-10-25 13:39:12,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:39:12,583.583 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 13:39:15,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:39:15,782.782 INFO    ] Checking for system updates...
[2026-10-25 13:39:15,818.818 INFO    ] 200
[2026-10-25 13:39:15,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:15,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:39:15,876.876 INFO    ] No update needed
[2026-10-25 13:39:15,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 13:39:15,917.917 INFO    ] 200
[2026-10-25 13:39:15,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:15,960.960 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:39:16,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:39:16,007.007 INFO    ] No camera update needed
[2026-10-25 13:39:16,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:39:16,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:39:16,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:39:16,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:39:18,063.063 INFO    ] ================================================
[2026-10-25 13:39:18,078.078 INFO    ] Launching Daemon at Sun Oct 25 13:39:18 IST 2026
[2026-10-25 13:39:18,089.089 INFO    ] ================================================
[2026-10-25 13:39:18,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:39:18
[2026-10-25 13:39:19,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:39:19,488.488 INFO    ] Initializing speech engine...
[2026-10-25 13:39:19,501.501 INFO    ] 2026-10-25 13:39:19
[2026-10-25 13:39:19,763.763 INFO    ] 2026-10-25 13:39:19
[2026-10-25 13:39:19,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:39:20,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:39:20,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:39:20,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:39:20,228.228 INFO    ] time= 25/10/2026 13:39:20
[2026-10-25 13:39:20,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:39:20,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:39:20,382.382 INFO    ] No existing commands found in stream
[2026-10-25 13:39:25,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:39:25,397.397 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 13:39:27,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:39:27,707.707 INFO    ] Checking for system updates...
[2026-10-25 13:39:27,744.744 INFO    ] 200
[2026-10-25 13:39:27,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:27,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:27,810.810 INFO    ] No update needed
[2026-10-25 13:39:27,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 13:39:27,850.850 INFO    ] 200
[2026-10-25 13:39:27,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:27,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:39:27,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:27,968.968 INFO    ] No camera update needed
[2026-10-25 13:39:27,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:39:27,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:39:27,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:39:27,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:39:30,025.025 INFO    ] ================================================
[2026-10-25 13:39:30,041.041 INFO    ] Launching Daemon at Sun Oct 25 13:39:30 IST 2026
[2026-10-25 13:39:30,052.052 INFO    ] ================================================
[2026-10-25 13:39:30,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:39:30
[2026-10-25 13:39:31,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:39:31,786.786 INFO    ] Initializing speech engine...
[2026-10-25 13:39:31,794.794 INFO    ] 2026-10-25 13:39:31
[2026-10-25 13:39:32,062.062 INFO    ] 2026-10-25 13:39:32
[2026-10-25 13:39:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:39:32,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:39:32,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:39:32,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:39:32,550.550 INFO    ] time= 25/10/2026 13:39:32
[2026-10-25 13:39:32,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:39:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:39:32,736.736 INFO    ] No existing commands found in stream
[2026-10-25 13:39:37,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:39:37,752.752 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 13:39:40,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:39:40,541.541 INFO    ] Checking for system updates...
[2026-10-25 13:39:40,586.586 INFO    ] 200
[2026-10-25 13:39:40,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:40,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:40,655.655 INFO    ] No update needed
[2026-10-25 13:39:40,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 13:39:40,698.698 INFO    ] 200
[2026-10-25 13:39:40,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:40,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:39:40,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:40,799.799 INFO    ] No camera update needed
[2026-10-25 13:39:40,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:39:40,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:39:40,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:39:40,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:39:42,853.853 INFO    ] ================================================
[2026-10-25 13:39:42,869.869 INFO    ] Launching Daemon at Sun Oct 25 13:39:42 IST 2026
[2026-10-25 13:39:42,880.880 INFO    ] ================================================
[2026-10-25 13:39:43,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:39:43
[2026-10-25 13:39:44,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:39:44,335.335 INFO    ] Initializing speech engine...
[2026-10-25 13:39:44,342.342 INFO    ] 2026-10-25 13:39:44
[2026-10-25 13:39:44,597.597 INFO    ] 2026-10-25 13:39:44
[2026-10-25 13:39:44,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:39:45,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:39:45,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:39:45,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:39:45,570.570 INFO    ] time= 25/10/2026 13:39:45
[2026-10-25 13:39:45,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:39:45,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:39:45,682.682 INFO    ] No existing commands found in stream
[2026-10-25 13:39:50,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:39:50,715.715 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 13:39:53,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:39:53,686.686 INFO    ] Checking for system updates...
[2026-10-25 13:39:53,722.722 INFO    ] 200
[2026-10-25 13:39:53,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:53,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:53,802.802 INFO    ] No update needed
[2026-10-25 13:39:53,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 13:39:53,843.843 INFO    ] 200
[2026-10-25 13:39:53,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:39:53,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:39:53,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:39:53,946.946 INFO    ] No camera update needed
[2026-10-25 13:39:53,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:39:53,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:39:53,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:39:53,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:39:56,001.001 INFO    ] ================================================
[2026-10-25 13:39:56,016.016 INFO    ] Launching Daemon at Sun Oct 25 13:39:56 IST 2026
[2026-10-25 13:39:56,027.027 INFO    ] ================================================
[2026-10-25 13:39:56,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:39:56
[2026-10-25 13:39:57,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:39:57,419.419 INFO    ] Initializing speech engine...
[2026-10-25 13:39:57,427.427 INFO    ] 2026-10-25 13:39:57
[2026-10-25 13:39:57,697.697 INFO    ] 2026-10-25 13:39:57
[2026-10-25 13:39:57,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:39:57,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:39:57,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:39:58,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:39:58,168.168 INFO    ] time= 25/10/2026 13:39:58
[2026-10-25 13:39:58,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:39:58,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:39:58,318.318 INFO    ] No existing commands found in stream
[2026-10-25 13:40:03,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:40:03,333.333 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 13:40:08,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:40:08,876.876 INFO    ] Checking for system updates...
[2026-10-25 13:40:08,915.915 INFO    ] 200
[2026-10-25 13:40:08,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:08,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:08,973.973 INFO    ] No update needed
[2026-10-25 13:40:08,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 13:40:09,015.015 INFO    ] 200
[2026-10-25 13:40:09,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:09,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:40:09,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:09,133.133 INFO    ] No camera update needed
[2026-10-25 13:40:09,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:40:09,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:40:09,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:40:09,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:40:11,188.188 INFO    ] ================================================
[2026-10-25 13:40:11,203.203 INFO    ] Launching Daemon at Sun Oct 25 13:40:11 IST 2026
[2026-10-25 13:40:11,213.213 INFO    ] ================================================
[2026-10-25 13:40:11,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:40:11
[2026-10-25 13:40:12,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:40:12,845.845 INFO    ] Initializing speech engine...
[2026-10-25 13:40:12,857.857 INFO    ] 2026-10-25 13:40:12
[2026-10-25 13:40:13,134.134 INFO    ] 2026-10-25 13:40:13
[2026-10-25 13:40:13,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:40:16,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:40:16,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:40:16,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:40:16,693.693 INFO    ] time= 25/10/2026 13:40:16
[2026-10-25 13:40:16,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:40:16,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:40:16,747.747 INFO    ] No existing commands found in stream
[2026-10-25 13:40:21,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:40:21,761.761 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 13:40:22,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:40:22,813.813 INFO    ] Checking for system updates...
[2026-10-25 13:40:22,851.851 INFO    ] 200
[2026-10-25 13:40:22,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:22,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:22,911.911 INFO    ] No update needed
[2026-10-25 13:40:22,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 13:40:22,948.948 INFO    ] 200
[2026-10-25 13:40:22,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:22,997.997 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:40:23,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:23,049.049 INFO    ] No camera update needed
[2026-10-25 13:40:23,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:40:23,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:40:23,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:40:23,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:40:25,104.104 INFO    ] ================================================
[2026-10-25 13:40:25,120.120 INFO    ] Launching Daemon at Sun Oct 25 13:40:25 IST 2026
[2026-10-25 13:40:25,131.131 INFO    ] ================================================
[2026-10-25 13:40:25,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:40:25
[2026-10-25 13:40:26,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:40:26,578.578 INFO    ] Initializing speech engine...
[2026-10-25 13:40:26,588.588 INFO    ] 2026-10-25 13:40:26
[2026-10-25 13:40:26,837.837 INFO    ] 2026-10-25 13:40:26
[2026-10-25 13:40:26,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:40:27,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:40:27,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:40:27,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:40:27,324.324 INFO    ] time= 25/10/2026 13:40:27
[2026-10-25 13:40:27,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:40:27,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:40:27,508.508 INFO    ] No existing commands found in stream
[2026-10-25 13:40:32,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:40:32,543.543 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 13:40:33,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:40:33,207.207 INFO    ] Checking for system updates...
[2026-10-25 13:40:33,247.247 INFO    ] 200
[2026-10-25 13:40:33,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:33,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:40:33,304.304 INFO    ] No update needed
[2026-10-25 13:40:33,307.307 INFO    ] Checking for camera pi updates...
[2026-10-25 13:40:33,341.341 INFO    ] 200
[2026-10-25 13:40:33,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:33,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:40:33,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:40:33,440.440 INFO    ] No camera update needed
[2026-10-25 13:40:33,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:40:33,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:40:33,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:40:33,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:40:35,497.497 INFO    ] ================================================
[2026-10-25 13:40:35,513.513 INFO    ] Launching Daemon at Sun Oct 25 13:40:35 IST 2026
[2026-10-25 13:40:35,524.524 INFO    ] ================================================
[2026-10-25 13:40:36,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:40:36
[2026-10-25 13:40:36,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:40:36,985.985 INFO    ] Initializing speech engine...
[2026-10-25 13:40:36,996.996 INFO    ] 2026-10-25 13:40:36
[2026-10-25 13:40:37,245.245 INFO    ] 2026-10-25 13:40:37
[2026-10-25 13:40:37,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:40:37,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:40:37,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:40:37,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:40:37,618.618 INFO    ] time= 25/10/2026 13:40:37
[2026-10-25 13:40:37,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:40:37,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:40:37,806.806 INFO    ] No existing commands found in stream
[2026-10-25 13:40:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:40:42,829.829 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 13:40:47,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:40:47,287.287 INFO    ] Checking for system updates...
[2026-10-25 13:40:47,324.324 INFO    ] 200
[2026-10-25 13:40:47,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:47,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:47,394.394 INFO    ] No update needed
[2026-10-25 13:40:47,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 13:40:47,433.433 INFO    ] 200
[2026-10-25 13:40:47,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:40:47,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:40:47,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:40:47,541.541 INFO    ] No camera update needed
[2026-10-25 13:40:47,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:40:47,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:40:47,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:40:47,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:40:49,600.600 INFO    ] ================================================
[2026-10-25 13:40:49,616.616 INFO    ] Launching Daemon at Sun Oct 25 13:40:49 IST 2026
[2026-10-25 13:40:49,627.627 INFO    ] ================================================
[2026-10-25 13:40:50,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:40:50
[2026-10-25 13:40:50,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:40:51,086.086 INFO    ] Initializing speech engine...
[2026-10-25 13:40:51,094.094 INFO    ] 2026-10-25 13:40:51
[2026-10-25 13:40:51,364.364 INFO    ] 2026-10-25 13:40:51
[2026-10-25 13:40:51,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:40:51,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:40:51,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:40:51,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:40:51,788.788 INFO    ] time= 25/10/2026 13:40:51
[2026-10-25 13:40:51,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:40:51,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:40:51,941.941 INFO    ] No existing commands found in stream
[2026-10-25 13:40:56,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:40:56,969.969 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 13:41:00,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:41:00,471.471 INFO    ] Checking for system updates...
[2026-10-25 13:41:00,508.508 INFO    ] 200
[2026-10-25 13:41:00,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:00,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:00,566.566 INFO    ] No update needed
[2026-10-25 13:41:00,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 13:41:00,607.607 INFO    ] 200
[2026-10-25 13:41:00,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:00,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:41:00,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:00,704.704 INFO    ] No camera update needed
[2026-10-25 13:41:00,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:41:00,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:41:00,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:41:00,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:41:02,767.767 INFO    ] ================================================
[2026-10-25 13:41:02,788.788 INFO    ] Launching Daemon at Sun Oct 25 13:41:02 IST 2026
[2026-10-25 13:41:02,804.804 INFO    ] ================================================
[2026-10-25 13:41:03,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:41:03
[2026-10-25 13:41:04,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:41:04,466.466 INFO    ] Initializing speech engine...
[2026-10-25 13:41:04,475.475 INFO    ] 2026-10-25 13:41:04
[2026-10-25 13:41:04,726.726 INFO    ] 2026-10-25 13:41:04
[2026-10-25 13:41:04,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:41:04,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:41:04,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:41:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:41:05,103.103 INFO    ] time= 25/10/2026 13:41:05
[2026-10-25 13:41:05,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:41:05,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:41:05,275.275 INFO    ] No existing commands found in stream
[2026-10-25 13:41:10,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:41:10,308.308 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 13:41:13,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:41:13,732.732 INFO    ] Checking for system updates...
[2026-10-25 13:41:13,772.772 INFO    ] 200
[2026-10-25 13:41:13,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:13,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:41:13,831.831 INFO    ] No update needed
[2026-10-25 13:41:13,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 13:41:13,867.867 INFO    ] 200
[2026-10-25 13:41:13,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:13,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:41:14,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:41:14,080.080 INFO    ] No camera update needed
[2026-10-25 13:41:14,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:41:14,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:41:14,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:41:14,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:41:16,141.141 INFO    ] ================================================
[2026-10-25 13:41:16,157.157 INFO    ] Launching Daemon at Sun Oct 25 13:41:16 IST 2026
[2026-10-25 13:41:16,169.169 INFO    ] ================================================
[2026-10-25 13:41:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:41:16
[2026-10-25 13:41:17,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:41:17,595.595 INFO    ] Initializing speech engine...
[2026-10-25 13:41:17,608.608 INFO    ] 2026-10-25 13:41:17
[2026-10-25 13:41:17,858.858 INFO    ] 2026-10-25 13:41:17
[2026-10-25 13:41:17,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:41:18,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:41:18,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:41:18,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:41:18,963.963 INFO    ] time= 25/10/2026 13:41:18
[2026-10-25 13:41:19,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:41:19,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:41:19,071.071 INFO    ] No existing commands found in stream
[2026-10-25 13:41:24,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:41:24,084.084 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 13:41:25,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:41:25,068.068 INFO    ] Checking for system updates...
[2026-10-25 13:41:25,105.105 INFO    ] 200
[2026-10-25 13:41:25,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:25,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:25,164.164 INFO    ] No update needed
[2026-10-25 13:41:25,167.167 INFO    ] Checking for camera pi updates...
[2026-10-25 13:41:25,201.201 INFO    ] 200
[2026-10-25 13:41:25,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:25,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:41:25,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:25,290.290 INFO    ] No camera update needed
[2026-10-25 13:41:25,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:41:25,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:41:25,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:41:25,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:41:27,347.347 INFO    ] ================================================
[2026-10-25 13:41:27,362.362 INFO    ] Launching Daemon at Sun Oct 25 13:41:27 IST 2026
[2026-10-25 13:41:27,373.373 INFO    ] ================================================
[2026-10-25 13:41:28,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:41:28
[2026-10-25 13:41:28,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:41:29,002.002 INFO    ] Initializing speech engine...
[2026-10-25 13:41:29,011.011 INFO    ] 2026-10-25 13:41:29
[2026-10-25 13:41:29,282.282 INFO    ] 2026-10-25 13:41:29
[2026-10-25 13:41:29,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:41:29,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:41:29,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:41:29,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:41:29,767.767 INFO    ] time= 25/10/2026 13:41:29
[2026-10-25 13:41:29,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:41:29,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:41:29,987.987 INFO    ] No existing commands found in stream
[2026-10-25 13:41:35,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:41:35,006.006 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 13:41:36,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:41:36,015.015 INFO    ] Checking for system updates...
[2026-10-25 13:41:36,052.052 INFO    ] 200
[2026-10-25 13:41:36,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:36,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:41:36,119.119 INFO    ] No update needed
[2026-10-25 13:41:36,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 13:41:36,162.162 INFO    ] 200
[2026-10-25 13:41:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:36,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:41:36,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:41:36,274.274 INFO    ] No camera update needed
[2026-10-25 13:41:36,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:41:36,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:41:36,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:41:36,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:41:38,329.329 INFO    ] ================================================
[2026-10-25 13:41:38,344.344 INFO    ] Launching Daemon at Sun Oct 25 13:41:38 IST 2026
[2026-10-25 13:41:38,354.354 INFO    ] ================================================
[2026-10-25 13:41:38,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:41:38
[2026-10-25 13:41:39,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:41:39,859.859 INFO    ] Initializing speech engine...
[2026-10-25 13:41:39,871.871 INFO    ] 2026-10-25 13:41:39
[2026-10-25 13:41:40,146.146 INFO    ] 2026-10-25 13:41:40
[2026-10-25 13:41:40,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:41:40,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:41:40,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:41:40,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:41:40,615.615 INFO    ] time= 25/10/2026 13:41:40
[2026-10-25 13:41:40,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:41:40,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:41:40,815.815 INFO    ] No existing commands found in stream
[2026-10-25 13:41:45,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:41:45,842.842 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 13:41:49,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:41:49,692.692 INFO    ] Checking for system updates...
[2026-10-25 13:41:49,729.729 INFO    ] 200
[2026-10-25 13:41:49,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:49,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:49,812.812 INFO    ] No update needed
[2026-10-25 13:41:49,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 13:41:49,850.850 INFO    ] 200
[2026-10-25 13:41:49,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:41:49,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:41:49,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:41:49,943.943 INFO    ] No camera update needed
[2026-10-25 13:41:49,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:41:49,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:41:49,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:41:49,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:41:52,997.997 INFO    ] ================================================
[2026-10-25 13:41:52,013.013 INFO    ] Launching Daemon at Sun Oct 25 13:41:52 IST 2026
[2026-10-25 13:41:52,024.024 INFO    ] ================================================
[2026-10-25 13:41:52,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:41:52
[2026-10-25 13:41:53,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:41:53,418.418 INFO    ] Initializing speech engine...
[2026-10-25 13:41:53,426.426 INFO    ] 2026-10-25 13:41:53
[2026-10-25 13:41:53,696.696 INFO    ] 2026-10-25 13:41:53
[2026-10-25 13:41:53,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:41:53,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:41:53,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:41:54,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:41:54,063.063 INFO    ] time= 25/10/2026 13:41:54
[2026-10-25 13:41:54,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:41:54,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:41:54,234.234 INFO    ] No existing commands found in stream
[2026-10-25 13:41:59,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:41:59,275.275 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 13:42:01,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:42:01,706.706 INFO    ] Checking for system updates...
[2026-10-25 13:42:01,743.743 INFO    ] 200
[2026-10-25 13:42:01,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:01,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:01,814.814 INFO    ] No update needed
[2026-10-25 13:42:01,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 13:42:01,851.851 INFO    ] 200
[2026-10-25 13:42:01,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:01,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:42:01,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:01,954.954 INFO    ] No camera update needed
[2026-10-25 13:42:01,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:42:01,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:42:01,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:42:01,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:42:04,016.016 INFO    ] ================================================
[2026-10-25 13:42:04,034.034 INFO    ] Launching Daemon at Sun Oct 25 13:42:04 IST 2026
[2026-10-25 13:42:04,049.049 INFO    ] ================================================
[2026-10-25 13:42:04,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:42:04
[2026-10-25 13:42:05,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:42:05,486.486 INFO    ] Initializing speech engine...
[2026-10-25 13:42:05,495.495 INFO    ] 2026-10-25 13:42:05
[2026-10-25 13:42:05,741.741 INFO    ] 2026-10-25 13:42:05
[2026-10-25 13:42:05,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:42:05,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:42:05,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:42:06,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:42:06,198.198 INFO    ] time= 25/10/2026 13:42:06
[2026-10-25 13:42:06,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:42:06,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:42:06,359.359 INFO    ] No existing commands found in stream
[2026-10-25 13:42:11,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:42:11,374.374 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 13:42:14,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:42:14,846.846 INFO    ] Checking for system updates...
[2026-10-25 13:42:14,883.883 INFO    ] 200
[2026-10-25 13:42:14,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:14,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:42:14,952.952 INFO    ] No update needed
[2026-10-25 13:42:14,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 13:42:14,993.993 INFO    ] 200
[2026-10-25 13:42:14,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:15,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:42:15,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:42:15,085.085 INFO    ] No camera update needed
[2026-10-25 13:42:15,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:42:15,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:42:15,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:42:15,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:42:17,142.142 INFO    ] ================================================
[2026-10-25 13:42:17,158.158 INFO    ] Launching Daemon at Sun Oct 25 13:42:17 IST 2026
[2026-10-25 13:42:17,168.168 INFO    ] ================================================
[2026-10-25 13:42:17,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:42:17
[2026-10-25 13:42:18,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:42:18,604.604 INFO    ] Initializing speech engine...
[2026-10-25 13:42:18,612.612 INFO    ] 2026-10-25 13:42:18
[2026-10-25 13:42:18,857.857 INFO    ] 2026-10-25 13:42:18
[2026-10-25 13:42:18,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:42:20,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:42:20,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:42:20,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:42:20,744.744 INFO    ] time= 25/10/2026 13:42:20
[2026-10-25 13:42:20,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:42:20,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:42:20,826.826 INFO    ] No existing commands found in stream
[2026-10-25 13:42:25,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:42:25,840.840 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 13:42:28,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:42:28,148.148 INFO    ] Checking for system updates...
[2026-10-25 13:42:28,190.190 INFO    ] 200
[2026-10-25 13:42:28,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:28,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:28,252.252 INFO    ] No update needed
[2026-10-25 13:42:28,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 13:42:28,290.290 INFO    ] 200
[2026-10-25 13:42:28,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:28,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:42:28,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:28,388.388 INFO    ] No camera update needed
[2026-10-25 13:42:28,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:42:28,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:42:28,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:42:28,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:42:30,447.447 INFO    ] ================================================
[2026-10-25 13:42:30,463.463 INFO    ] Launching Daemon at Sun Oct 25 13:42:30 IST 2026
[2026-10-25 13:42:30,473.473 INFO    ] ================================================
[2026-10-25 13:42:31,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:42:31
[2026-10-25 13:42:31,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:42:31,893.893 INFO    ] Initializing speech engine...
[2026-10-25 13:42:31,902.902 INFO    ] 2026-10-25 13:42:31
[2026-10-25 13:42:32,162.162 INFO    ] 2026-10-25 13:42:32
[2026-10-25 13:42:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:42:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:42:32,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:42:32,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:42:32,661.661 INFO    ] time= 25/10/2026 13:42:32
[2026-10-25 13:42:32,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:42:32,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:42:32,809.809 INFO    ] No existing commands found in stream
[2026-10-25 13:42:37,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:42:37,824.824 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 13:42:41,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:42:41,737.737 INFO    ] Checking for system updates...
[2026-10-25 13:42:41,778.778 INFO    ] 200
[2026-10-25 13:42:41,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:41,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:41,843.843 INFO    ] No update needed
[2026-10-25 13:42:41,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 13:42:41,879.879 INFO    ] 200
[2026-10-25 13:42:41,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:41,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:42:41,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:41,985.985 INFO    ] No camera update needed
[2026-10-25 13:42:41,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:42:41,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:42:41,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:42:42,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:42:44,039.039 INFO    ] ================================================
[2026-10-25 13:42:44,054.054 INFO    ] Launching Daemon at Sun Oct 25 13:42:44 IST 2026
[2026-10-25 13:42:44,065.065 INFO    ] ================================================
[2026-10-25 13:42:44,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:42:44
[2026-10-25 13:42:45,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:42:45,531.531 INFO    ] Initializing speech engine...
[2026-10-25 13:42:45,540.540 INFO    ] 2026-10-25 13:42:45
[2026-10-25 13:42:45,802.802 INFO    ] 2026-10-25 13:42:45
[2026-10-25 13:42:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:42:46,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:42:46,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:42:46,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:42:46,276.276 INFO    ] time= 25/10/2026 13:42:46
[2026-10-25 13:42:46,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:42:46,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:42:46,407.407 INFO    ] No existing commands found in stream
[2026-10-25 13:42:51,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:42:51,422.422 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 13:42:55,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:42:55,276.276 INFO    ] Checking for system updates...
[2026-10-25 13:42:55,316.316 INFO    ] 200
[2026-10-25 13:42:55,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:55,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:55,375.375 INFO    ] No update needed
[2026-10-25 13:42:55,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 13:42:55,413.413 INFO    ] 200
[2026-10-25 13:42:55,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:42:55,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:42:55,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:42:55,511.511 INFO    ] No camera update needed
[2026-10-25 13:42:55,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:42:55,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:42:55,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:42:55,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:42:57,568.568 INFO    ] ================================================
[2026-10-25 13:42:57,583.583 INFO    ] Launching Daemon at Sun Oct 25 13:42:57 IST 2026
[2026-10-25 13:42:57,594.594 INFO    ] ================================================
[2026-10-25 13:42:58,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:42:58
[2026-10-25 13:42:58,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:42:59,064.064 INFO    ] Initializing speech engine...
[2026-10-25 13:42:59,074.074 INFO    ] 2026-10-25 13:42:59
[2026-10-25 13:42:59,345.345 INFO    ] 2026-10-25 13:42:59
[2026-10-25 13:42:59,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:42:59,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:42:59,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:42:59,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:42:59,750.750 INFO    ] time= 25/10/2026 13:42:59
[2026-10-25 13:42:59,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:42:59,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:42:59,850.850 INFO    ] No existing commands found in stream
[2026-10-25 13:43:04,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:43:04,883.883 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 13:43:06,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:43:06,392.392 INFO    ] Checking for system updates...
[2026-10-25 13:43:06,429.429 INFO    ] 200
[2026-10-25 13:43:06,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:06,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:06,489.489 INFO    ] No update needed
[2026-10-25 13:43:06,492.492 INFO    ] Checking for camera pi updates...
[2026-10-25 13:43:06,527.527 INFO    ] 200
[2026-10-25 13:43:06,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:06,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:43:06,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:06,628.628 INFO    ] No camera update needed
[2026-10-25 13:43:06,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:43:06,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:43:06,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:43:06,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:43:08,682.682 INFO    ] ================================================
[2026-10-25 13:43:08,697.697 INFO    ] Launching Daemon at Sun Oct 25 13:43:08 IST 2026
[2026-10-25 13:43:08,708.708 INFO    ] ================================================
[2026-10-25 13:43:09,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:43:09
[2026-10-25 13:43:09,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:43:10,230.230 INFO    ] Initializing speech engine...
[2026-10-25 13:43:10,253.253 INFO    ] 2026-10-25 13:43:10
[2026-10-25 13:43:10,507.507 INFO    ] 2026-10-25 13:43:10
[2026-10-25 13:43:10,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:43:10,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:43:10,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:43:10,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:43:10,982.982 INFO    ] time= 25/10/2026 13:43:10
[2026-10-25 13:43:11,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:43:11,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:43:11,152.152 INFO    ] No existing commands found in stream
[2026-10-25 13:43:16,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:43:16,192.192 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 13:43:17,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:43:17,589.589 INFO    ] Checking for system updates...
[2026-10-25 13:43:17,629.629 INFO    ] 200
[2026-10-25 13:43:17,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:17,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:17,687.687 INFO    ] No update needed
[2026-10-25 13:43:17,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 13:43:17,727.727 INFO    ] 200
[2026-10-25 13:43:17,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:17,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:43:17,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:17,930.930 INFO    ] No camera update needed
[2026-10-25 13:43:17,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:43:17,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:43:17,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:43:17,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:43:19,988.988 INFO    ] ================================================
[2026-10-25 13:43:20,004.004 INFO    ] Launching Daemon at Sun Oct 25 13:43:19 IST 2026
[2026-10-25 13:43:20,014.014 INFO    ] ================================================
[2026-10-25 13:43:20,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:43:20
[2026-10-25 13:43:21,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:43:21,481.481 INFO    ] Initializing speech engine...
[2026-10-25 13:43:21,489.489 INFO    ] 2026-10-25 13:43:21
[2026-10-25 13:43:21,749.749 INFO    ] 2026-10-25 13:43:21
[2026-10-25 13:43:21,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:43:22,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:43:22,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:43:22,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:43:22,350.350 INFO    ] time= 25/10/2026 13:43:22
[2026-10-25 13:43:22,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:43:22,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:43:22,527.527 INFO    ] No existing commands found in stream
[2026-10-25 13:43:27,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:43:27,560.560 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 13:43:28,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:43:28,036.036 INFO    ] Checking for system updates...
[2026-10-25 13:43:28,073.073 INFO    ] 200
[2026-10-25 13:43:28,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:28,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:43:28,138.138 INFO    ] No update needed
[2026-10-25 13:43:28,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 13:43:28,179.179 INFO    ] 200
[2026-10-25 13:43:28,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:28,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:43:28,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:43:28,283.283 INFO    ] No camera update needed
[2026-10-25 13:43:28,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:43:28,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:43:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:43:28,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:43:30,339.339 INFO    ] ================================================
[2026-10-25 13:43:30,355.355 INFO    ] Launching Daemon at Sun Oct 25 13:43:30 IST 2026
[2026-10-25 13:43:30,365.365 INFO    ] ================================================
[2026-10-25 13:43:30,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:43:30
[2026-10-25 13:43:31,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:43:31,871.871 INFO    ] Initializing speech engine...
[2026-10-25 13:43:31,878.878 INFO    ] 2026-10-25 13:43:31
[2026-10-25 13:43:32,177.177 INFO    ] 2026-10-25 13:43:32
[2026-10-25 13:43:32,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:43:32,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:43:32,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:43:32,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:43:32,692.692 INFO    ] time= 25/10/2026 13:43:32
[2026-10-25 13:43:32,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:43:32,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:43:32,843.843 INFO    ] No existing commands found in stream
[2026-10-25 13:43:37,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:43:37,857.857 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 13:43:40,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:43:40,033.033 INFO    ] Checking for system updates...
[2026-10-25 13:43:40,068.068 INFO    ] 200
[2026-10-25 13:43:40,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:40,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:40,126.126 INFO    ] No update needed
[2026-10-25 13:43:40,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 13:43:40,163.163 INFO    ] 200
[2026-10-25 13:43:40,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:40,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:43:40,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:43:40,253.253 INFO    ] No camera update needed
[2026-10-25 13:43:40,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:43:40,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:43:40,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:43:40,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:43:42,317.317 INFO    ] ================================================
[2026-10-25 13:43:42,333.333 INFO    ] Launching Daemon at Sun Oct 25 13:43:42 IST 2026
[2026-10-25 13:43:42,343.343 INFO    ] ================================================
[2026-10-25 13:43:42,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:43:42
[2026-10-25 13:43:43,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:43:43,757.757 INFO    ] Initializing speech engine...
[2026-10-25 13:43:43,772.772 INFO    ] 2026-10-25 13:43:43
[2026-10-25 13:43:44,036.036 INFO    ] 2026-10-25 13:43:44
[2026-10-25 13:43:44,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:43:44,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:43:44,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:43:44,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:43:44,525.525 INFO    ] time= 25/10/2026 13:43:44
[2026-10-25 13:43:44,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:43:44,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:43:44,740.740 INFO    ] No existing commands found in stream
[2026-10-25 13:43:49,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:43:49,769.769 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 13:43:53,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:43:53,379.379 INFO    ] Checking for system updates...
[2026-10-25 13:43:53,419.419 INFO    ] 200
[2026-10-25 13:43:53,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:53,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:43:53,486.486 INFO    ] No update needed
[2026-10-25 13:43:53,488.488 INFO    ] Checking for camera pi updates...
[2026-10-25 13:43:53,522.522 INFO    ] 200
[2026-10-25 13:43:53,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:43:53,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:43:53,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:43:53,620.620 INFO    ] No camera update needed
[2026-10-25 13:43:53,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:43:53,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:43:53,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:43:53,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:43:55,675.675 INFO    ] ================================================
[2026-10-25 13:43:55,691.691 INFO    ] Launching Daemon at Sun Oct 25 13:43:55 IST 2026
[2026-10-25 13:43:55,701.701 INFO    ] ================================================
[2026-10-25 13:43:56,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:43:56
[2026-10-25 13:43:56,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:43:57,114.114 INFO    ] Initializing speech engine...
[2026-10-25 13:43:57,122.122 INFO    ] 2026-10-25 13:43:57
[2026-10-25 13:43:57,398.398 INFO    ] 2026-10-25 13:43:57
[2026-10-25 13:43:57,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:43:57,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:43:57,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:43:57,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:43:57,882.882 INFO    ] time= 25/10/2026 13:43:57
[2026-10-25 13:43:57,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:43:57,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:43:58,033.033 INFO    ] No existing commands found in stream
[2026-10-25 13:44:03,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:44:03,048.048 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 13:44:06,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:44:06,261.261 INFO    ] Checking for system updates...
[2026-10-25 13:44:06,302.302 INFO    ] 200
[2026-10-25 13:44:06,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:06,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:06,368.368 INFO    ] No update needed
[2026-10-25 13:44:06,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 13:44:06,405.405 INFO    ] 200
[2026-10-25 13:44:06,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:06,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:44:06,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:06,513.513 INFO    ] No camera update needed
[2026-10-25 13:44:06,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:44:06,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:44:06,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:44:06,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:44:08,571.571 INFO    ] ================================================
[2026-10-25 13:44:08,586.586 INFO    ] Launching Daemon at Sun Oct 25 13:44:08 IST 2026
[2026-10-25 13:44:08,597.597 INFO    ] ================================================
[2026-10-25 13:44:09,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:44:09
[2026-10-25 13:44:09,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:44:10,011.011 INFO    ] Initializing speech engine...
[2026-10-25 13:44:10,024.024 INFO    ] 2026-10-25 13:44:10
[2026-10-25 13:44:10,272.272 INFO    ] 2026-10-25 13:44:10
[2026-10-25 13:44:10,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:44:10,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:44:10,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:44:10,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:44:10,646.646 INFO    ] time= 25/10/2026 13:44:10
[2026-10-25 13:44:10,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:44:10,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:44:10,831.831 INFO    ] No existing commands found in stream
[2026-10-25 13:44:15,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:44:15,858.858 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 13:44:16,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:44:16,616.616 INFO    ] Checking for system updates...
[2026-10-25 13:44:16,652.652 INFO    ] 200
[2026-10-25 13:44:16,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:16,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:44:16,709.709 INFO    ] No update needed
[2026-10-25 13:44:16,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 13:44:16,750.750 INFO    ] 200
[2026-10-25 13:44:16,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:16,801.801 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:44:16,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:44:16,848.848 INFO    ] No camera update needed
[2026-10-25 13:44:16,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:44:16,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:44:16,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:44:16,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:44:18,904.904 INFO    ] ================================================
[2026-10-25 13:44:18,919.919 INFO    ] Launching Daemon at Sun Oct 25 13:44:18 IST 2026
[2026-10-25 13:44:18,929.929 INFO    ] ================================================
[2026-10-25 13:44:19,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:44:19
[2026-10-25 13:44:20,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:44:20,443.443 INFO    ] Initializing speech engine...
[2026-10-25 13:44:20,448.448 INFO    ] 2026-10-25 13:44:20
[2026-10-25 13:44:20,710.710 INFO    ] 2026-10-25 13:44:20
[2026-10-25 13:44:20,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:44:24,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:44:24,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:44:24,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:44:24,389.389 INFO    ] time= 25/10/2026 13:44:24
[2026-10-25 13:44:24,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:44:24,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:44:24,443.443 INFO    ] No existing commands found in stream
[2026-10-25 13:44:29,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:44:29,455.455 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 13:44:30,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:44:30,416.416 INFO    ] Checking for system updates...
[2026-10-25 13:44:30,456.456 INFO    ] 200
[2026-10-25 13:44:30,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:30,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:30,514.514 INFO    ] No update needed
[2026-10-25 13:44:30,517.517 INFO    ] Checking for camera pi updates...
[2026-10-25 13:44:30,551.551 INFO    ] 200
[2026-10-25 13:44:30,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:30,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:44:30,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:30,645.645 INFO    ] No camera update needed
[2026-10-25 13:44:30,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:44:30,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:44:30,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:44:30,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:44:32,704.704 INFO    ] ================================================
[2026-10-25 13:44:32,719.719 INFO    ] Launching Daemon at Sun Oct 25 13:44:32 IST 2026
[2026-10-25 13:44:32,730.730 INFO    ] ================================================
[2026-10-25 13:44:33,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:44:33
[2026-10-25 13:44:34,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:44:34,359.359 INFO    ] Initializing speech engine...
[2026-10-25 13:44:34,371.371 INFO    ] 2026-10-25 13:44:34
[2026-10-25 13:44:34,679.679 INFO    ] 2026-10-25 13:44:34
[2026-10-25 13:44:34,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:44:34,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:44:35,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:44:35,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:44:35,836.836 INFO    ] time= 25/10/2026 13:44:35
[2026-10-25 13:44:35,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:44:35,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:44:35,965.965 INFO    ] No existing commands found in stream
[2026-10-25 13:44:40,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:44:40,991.991 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 13:44:43,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:44:43,769.769 INFO    ] Checking for system updates...
[2026-10-25 13:44:43,810.810 INFO    ] 200
[2026-10-25 13:44:43,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:43,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:44:43,869.869 INFO    ] No update needed
[2026-10-25 13:44:43,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 13:44:43,911.911 INFO    ] 200
[2026-10-25 13:44:43,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:43,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:44:44,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:44:44,012.012 INFO    ] No camera update needed
[2026-10-25 13:44:44,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:44:44,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:44:44,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:44:44,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:44:46,068.068 INFO    ] ================================================
[2026-10-25 13:44:46,084.084 INFO    ] Launching Daemon at Sun Oct 25 13:44:46 IST 2026
[2026-10-25 13:44:46,094.094 INFO    ] ================================================
[2026-10-25 13:44:46,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:44:46
[2026-10-25 13:44:47,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:44:47,720.720 INFO    ] Initializing speech engine...
[2026-10-25 13:44:47,728.728 INFO    ] 2026-10-25 13:44:47
[2026-10-25 13:44:48,014.014 INFO    ] 2026-10-25 13:44:47
[2026-10-25 13:44:48,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:44:48,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:44:48,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:44:48,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:44:48,469.469 INFO    ] time= 25/10/2026 13:44:48
[2026-10-25 13:44:48,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:44:48,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:44:48,663.663 INFO    ] No existing commands found in stream
[2026-10-25 13:44:53,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:44:53,694.694 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 13:44:57,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:44:57,664.664 INFO    ] Checking for system updates...
[2026-10-25 13:44:57,704.704 INFO    ] 200
[2026-10-25 13:44:57,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:57,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:57,764.764 INFO    ] No update needed
[2026-10-25 13:44:57,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 13:44:57,802.802 INFO    ] 200
[2026-10-25 13:44:57,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:44:57,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:44:57,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:44:57,915.915 INFO    ] No camera update needed
[2026-10-25 13:44:57,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:44:57,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:44:57,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:44:57,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:44:59,976.976 INFO    ] ================================================
[2026-10-25 13:44:59,991.991 INFO    ] Launching Daemon at Sun Oct 25 13:44:59 IST 2026
[2026-10-25 13:45:00,002.002 INFO    ] ================================================
[2026-10-25 13:45:00,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:45:00
[2026-10-25 13:45:01,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:45:02,229.229 INFO    ] Initializing speech engine...
[2026-10-25 13:45:02,256.256 INFO    ] 2026-10-25 13:45:02
[2026-10-25 13:45:02,624.624 INFO    ] 2026-10-25 13:45:02
[2026-10-25 13:45:02,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:45:02,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:45:02,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:45:03,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:45:03,046.046 INFO    ] time= 25/10/2026 13:45:03
[2026-10-25 13:45:03,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:45:03,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:45:03,200.200 INFO    ] No existing commands found in stream
[2026-10-25 13:45:08,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:45:08,231.231 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 13:45:12,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:45:12,231.231 INFO    ] Checking for system updates...
[2026-10-25 13:45:12,268.268 INFO    ] 200
[2026-10-25 13:45:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:12,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:12,327.327 INFO    ] No update needed
[2026-10-25 13:45:12,329.329 INFO    ] Checking for camera pi updates...
[2026-10-25 13:45:12,368.368 INFO    ] 200
[2026-10-25 13:45:12,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:12,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:45:12,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:12,475.475 INFO    ] No camera update needed
[2026-10-25 13:45:12,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:45:12,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:45:12,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:45:12,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:45:14,533.533 INFO    ] ================================================
[2026-10-25 13:45:14,549.549 INFO    ] Launching Daemon at Sun Oct 25 13:45:14 IST 2026
[2026-10-25 13:45:14,560.560 INFO    ] ================================================
[2026-10-25 13:45:15,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:45:15
[2026-10-25 13:45:15,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:45:16,157.157 INFO    ] Initializing speech engine...
[2026-10-25 13:45:16,167.167 INFO    ] 2026-10-25 13:45:16
[2026-10-25 13:45:16,451.451 INFO    ] 2026-10-25 13:45:16
[2026-10-25 13:45:16,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:45:16,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:45:16,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:45:16,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:45:16,985.985 INFO    ] time= 25/10/2026 13:45:16
[2026-10-25 13:45:17,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:45:17,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:45:17,120.120 INFO    ] No existing commands found in stream
[2026-10-25 13:45:22,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:45:22,151.151 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 13:45:26,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:45:26,712.712 INFO    ] Checking for system updates...
[2026-10-25 13:45:26,749.749 INFO    ] 200
[2026-10-25 13:45:26,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:26,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:26,809.809 INFO    ] No update needed
[2026-10-25 13:45:26,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 13:45:26,848.848 INFO    ] 200
[2026-10-25 13:45:26,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:26,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:45:27,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:27,048.048 INFO    ] No camera update needed
[2026-10-25 13:45:27,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:45:27,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:45:27,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:45:27,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:45:29,107.107 INFO    ] ================================================
[2026-10-25 13:45:29,124.124 INFO    ] Launching Daemon at Sun Oct 25 13:45:29 IST 2026
[2026-10-25 13:45:29,136.136 INFO    ] ================================================
[2026-10-25 13:45:29,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:45:29
[2026-10-25 13:45:30,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:45:30,720.720 INFO    ] Initializing speech engine...
[2026-10-25 13:45:30,728.728 INFO    ] 2026-10-25 13:45:30
[2026-10-25 13:45:31,013.013 INFO    ] 2026-10-25 13:45:30
[2026-10-25 13:45:31,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:45:31,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:45:31,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:45:31,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:45:31,555.555 INFO    ] time= 25/10/2026 13:45:31
[2026-10-25 13:45:31,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:45:31,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:45:31,700.700 INFO    ] No existing commands found in stream
[2026-10-25 13:45:36,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:45:36,743.743 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 13:45:38,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:45:38,071.071 INFO    ] Checking for system updates...
[2026-10-25 13:45:38,108.108 INFO    ] 200
[2026-10-25 13:45:38,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:38,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:45:38,169.169 INFO    ] No update needed
[2026-10-25 13:45:38,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 13:45:38,210.210 INFO    ] 200
[2026-10-25 13:45:38,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:38,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:45:38,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:45:38,323.323 INFO    ] No camera update needed
[2026-10-25 13:45:38,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:45:38,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:45:38,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:45:38,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:45:40,383.383 INFO    ] ================================================
[2026-10-25 13:45:40,399.399 INFO    ] Launching Daemon at Sun Oct 25 13:45:40 IST 2026
[2026-10-25 13:45:40,411.411 INFO    ] ================================================
[2026-10-25 13:45:42,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:45:41
[2026-10-25 13:45:43,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:45:43,842.842 INFO    ] Initializing speech engine...
[2026-10-25 13:45:43,853.853 INFO    ] 2026-10-25 13:45:43
[2026-10-25 13:45:44,129.129 INFO    ] 2026-10-25 13:45:44
[2026-10-25 13:45:44,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:45:44,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:45:44,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:45:44,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:45:44,620.620 INFO    ] time= 25/10/2026 13:45:44
[2026-10-25 13:45:44,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:45:44,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:45:44,831.831 INFO    ] No existing commands found in stream
[2026-10-25 13:45:49,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:45:49,864.864 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 13:45:51,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:45:51,371.371 INFO    ] Checking for system updates...
[2026-10-25 13:45:51,412.412 INFO    ] 200
[2026-10-25 13:45:51,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:51,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:51,473.473 INFO    ] No update needed
[2026-10-25 13:45:51,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 13:45:51,510.510 INFO    ] 200
[2026-10-25 13:45:51,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:45:51,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:45:51,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:45:51,611.611 INFO    ] No camera update needed
[2026-10-25 13:45:51,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:45:51,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:45:51,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:45:51,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:45:53,670.670 INFO    ] ================================================
[2026-10-25 13:45:53,685.685 INFO    ] Launching Daemon at Sun Oct 25 13:45:53 IST 2026
[2026-10-25 13:45:53,697.697 INFO    ] ================================================
[2026-10-25 13:45:54,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:45:54
[2026-10-25 13:45:54,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:45:55,163.163 INFO    ] Initializing speech engine...
[2026-10-25 13:45:55,180.180 INFO    ] 2026-10-25 13:45:55
[2026-10-25 13:45:55,453.453 INFO    ] 2026-10-25 13:45:55
[2026-10-25 13:45:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:45:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:45:55,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:45:55,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:45:55,968.968 INFO    ] time= 25/10/2026 13:45:55
[2026-10-25 13:45:56,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:45:56,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:45:56,174.174 INFO    ] No existing commands found in stream
[2026-10-25 13:46:01,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:46:01,194.194 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 13:46:03,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:46:03,747.747 INFO    ] Checking for system updates...
[2026-10-25 13:46:03,785.785 INFO    ] 200
[2026-10-25 13:46:03,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:03,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:46:03,847.847 INFO    ] No update needed
[2026-10-25 13:46:03,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 13:46:03,885.885 INFO    ] 200
[2026-10-25 13:46:03,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:03,940.940 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:46:04,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:46:04,006.006 INFO    ] No camera update needed
[2026-10-25 13:46:04,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:46:04,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:46:04,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:46:04,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:46:06,074.074 INFO    ] ================================================
[2026-10-25 13:46:06,093.093 INFO    ] Launching Daemon at Sun Oct 25 13:46:06 IST 2026
[2026-10-25 13:46:06,104.104 INFO    ] ================================================
[2026-10-25 13:46:06,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:46:06
[2026-10-25 13:46:07,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:46:07,599.599 INFO    ] Initializing speech engine...
[2026-10-25 13:46:07,607.607 INFO    ] 2026-10-25 13:46:07
[2026-10-25 13:46:07,880.880 INFO    ] 2026-10-25 13:46:07
[2026-10-25 13:46:07,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:46:08,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:46:08,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:46:08,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:46:08,365.365 INFO    ] time= 25/10/2026 13:46:08
[2026-10-25 13:46:08,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:46:08,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:46:08,567.567 INFO    ] No existing commands found in stream
[2026-10-25 13:46:13,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:46:13,602.602 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 13:46:16,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:46:16,148.148 INFO    ] Checking for system updates...
[2026-10-25 13:46:16,186.186 INFO    ] 200
[2026-10-25 13:46:16,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:16,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:16,253.253 INFO    ] No update needed
[2026-10-25 13:46:16,257.257 INFO    ] Checking for camera pi updates...
[2026-10-25 13:46:16,292.292 INFO    ] 200
[2026-10-25 13:46:16,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:16,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:46:16,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:16,392.392 INFO    ] No camera update needed
[2026-10-25 13:46:16,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:46:16,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:46:16,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:46:16,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:46:18,458.458 INFO    ] ================================================
[2026-10-25 13:46:18,473.473 INFO    ] Launching Daemon at Sun Oct 25 13:46:18 IST 2026
[2026-10-25 13:46:18,484.484 INFO    ] ================================================
[2026-10-25 13:46:19,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:46:19
[2026-10-25 13:46:19,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:46:19,946.946 INFO    ] Initializing speech engine...
[2026-10-25 13:46:19,955.955 INFO    ] 2026-10-25 13:46:19
[2026-10-25 13:46:20,203.203 INFO    ] 2026-10-25 13:46:20
[2026-10-25 13:46:20,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:46:20,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:46:20,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:46:20,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:46:20,673.673 INFO    ] time= 25/10/2026 13:46:20
[2026-10-25 13:46:20,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:46:20,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:46:20,824.824 INFO    ] No existing commands found in stream
[2026-10-25 13:46:25,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:46:25,839.839 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 13:46:32,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:46:32,868.868 INFO    ] Checking for system updates...
[2026-10-25 13:46:32,914.914 INFO    ] 200
[2026-10-25 13:46:32,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:32,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:32,987.987 INFO    ] No update needed
[2026-10-25 13:46:32,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 13:46:33,030.030 INFO    ] 200
[2026-10-25 13:46:33,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:33,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:46:33,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:33,127.127 INFO    ] No camera update needed
[2026-10-25 13:46:33,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:46:33,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:46:33,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:46:33,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:46:35,187.187 INFO    ] ================================================
[2026-10-25 13:46:35,202.202 INFO    ] Launching Daemon at Sun Oct 25 13:46:35 IST 2026
[2026-10-25 13:46:35,213.213 INFO    ] ================================================
[2026-10-25 13:46:35,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:46:35
[2026-10-25 13:46:36,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:46:36,629.629 INFO    ] Initializing speech engine...
[2026-10-25 13:46:36,648.648 INFO    ] 2026-10-25 13:46:36
[2026-10-25 13:46:36,896.896 INFO    ] 2026-10-25 13:46:36
[2026-10-25 13:46:36,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:46:37,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:46:37,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:46:37,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:46:37,365.365 INFO    ] time= 25/10/2026 13:46:37
[2026-10-25 13:46:37,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:46:37,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:46:37,518.518 INFO    ] No existing commands found in stream
[2026-10-25 13:46:42,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:46:42,563.563 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 13:46:46,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:46:46,551.551 INFO    ] Checking for system updates...
[2026-10-25 13:46:46,589.589 INFO    ] 200
[2026-10-25 13:46:46,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:46,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:46,649.649 INFO    ] No update needed
[2026-10-25 13:46:46,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 13:46:46,687.687 INFO    ] 200
[2026-10-25 13:46:46,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:46,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:46:46,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:46:46,786.786 INFO    ] No camera update needed
[2026-10-25 13:46:46,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:46:46,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:46:46,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:46:46,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:46:48,844.844 INFO    ] ================================================
[2026-10-25 13:46:48,860.860 INFO    ] Launching Daemon at Sun Oct 25 13:46:48 IST 2026
[2026-10-25 13:46:48,872.872 INFO    ] ================================================
[2026-10-25 13:46:49,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:46:49
[2026-10-25 13:46:50,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:46:50,268.268 INFO    ] Initializing speech engine...
[2026-10-25 13:46:50,283.283 INFO    ] 2026-10-25 13:46:50
[2026-10-25 13:46:50,549.549 INFO    ] 2026-10-25 13:46:50
[2026-10-25 13:46:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:46:50,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:46:50,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:46:50,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:46:51,034.034 INFO    ] time= 25/10/2026 13:46:50
[2026-10-25 13:46:51,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:46:51,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:46:51,184.184 INFO    ] No existing commands found in stream
[2026-10-25 13:46:56,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:46:56,202.202 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 13:46:57,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:46:57,513.513 INFO    ] Checking for system updates...
[2026-10-25 13:46:57,549.549 INFO    ] 200
[2026-10-25 13:46:57,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:57,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:46:57,608.608 INFO    ] No update needed
[2026-10-25 13:46:57,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 13:46:57,657.657 INFO    ] 200
[2026-10-25 13:46:57,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:46:57,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:46:57,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:46:57,749.749 INFO    ] No camera update needed
[2026-10-25 13:46:57,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:46:57,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:46:57,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:46:57,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:46:59,806.806 INFO    ] ================================================
[2026-10-25 13:46:59,822.822 INFO    ] Launching Daemon at Sun Oct 25 13:46:59 IST 2026
[2026-10-25 13:46:59,833.833 INFO    ] ================================================
[2026-10-25 13:47:00,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:47:00
[2026-10-25 13:47:01,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:47:01,588.588 INFO    ] Initializing speech engine...
[2026-10-25 13:47:01,591.591 INFO    ] 2026-10-25 13:47:01
[2026-10-25 13:47:01,943.943 INFO    ] 2026-10-25 13:47:01
[2026-10-25 13:47:02,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:47:02,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:47:03,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:47:03,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:47:03,263.263 INFO    ] time= 25/10/2026 13:47:03
[2026-10-25 13:47:03,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:47:03,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:47:03,338.338 INFO    ] No existing commands found in stream
[2026-10-25 13:47:08,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:47:08,352.352 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 13:47:12,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:47:12,338.338 INFO    ] Checking for system updates...
[2026-10-25 13:47:12,375.375 INFO    ] 200
[2026-10-25 13:47:12,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:12,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:47:12,434.434 INFO    ] No update needed
[2026-10-25 13:47:12,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 13:47:12,471.471 INFO    ] 200
[2026-10-25 13:47:12,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:12,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:47:12,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:47:12,564.564 INFO    ] No camera update needed
[2026-10-25 13:47:12,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:47:12,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:47:12,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:47:12,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:47:14,621.621 INFO    ] ================================================
[2026-10-25 13:47:14,637.637 INFO    ] Launching Daemon at Sun Oct 25 13:47:14 IST 2026
[2026-10-25 13:47:14,648.648 INFO    ] ================================================
[2026-10-25 13:47:15,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:47:15
[2026-10-25 13:47:15,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:47:16,070.070 INFO    ] Initializing speech engine...
[2026-10-25 13:47:16,077.077 INFO    ] 2026-10-25 13:47:16
[2026-10-25 13:47:16,328.328 INFO    ] 2026-10-25 13:47:16
[2026-10-25 13:47:16,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:47:16,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:47:16,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:47:16,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:47:16,767.767 INFO    ] time= 25/10/2026 13:47:16
[2026-10-25 13:47:16,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:47:16,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:47:16,909.909 INFO    ] No existing commands found in stream
[2026-10-25 13:47:21,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:47:21,933.933 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 13:47:24,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:47:24,823.823 INFO    ] Checking for system updates...
[2026-10-25 13:47:24,860.860 INFO    ] 200
[2026-10-25 13:47:24,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:24,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:24,919.919 INFO    ] No update needed
[2026-10-25 13:47:24,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 13:47:24,955.955 INFO    ] 200
[2026-10-25 13:47:24,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:25,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:47:25,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:25,067.067 INFO    ] No camera update needed
[2026-10-25 13:47:25,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:47:25,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:47:25,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:47:25,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:47:27,124.124 INFO    ] ================================================
[2026-10-25 13:47:27,140.140 INFO    ] Launching Daemon at Sun Oct 25 13:47:27 IST 2026
[2026-10-25 13:47:27,151.151 INFO    ] ================================================
[2026-10-25 13:47:27,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:47:27
[2026-10-25 13:47:28,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:47:28,607.607 INFO    ] Initializing speech engine...
[2026-10-25 13:47:28,617.617 INFO    ] 2026-10-25 13:47:28
[2026-10-25 13:47:28,879.879 INFO    ] 2026-10-25 13:47:28
[2026-10-25 13:47:28,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:47:29,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:47:29,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:47:29,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:47:29,331.331 INFO    ] time= 25/10/2026 13:47:29
[2026-10-25 13:47:29,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:47:29,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:47:29,503.503 INFO    ] No existing commands found in stream
[2026-10-25 13:47:34,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:47:34,542.542 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 13:47:35,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:47:35,996.996 INFO    ] Checking for system updates...
[2026-10-25 13:47:36,036.036 INFO    ] 200
[2026-10-25 13:47:36,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:36,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:47:36,095.095 INFO    ] No update needed
[2026-10-25 13:47:36,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 13:47:36,133.133 INFO    ] 200
[2026-10-25 13:47:36,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:36,180.180 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:47:36,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:47:36,232.232 INFO    ] No camera update needed
[2026-10-25 13:47:36,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:47:36,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:47:36,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:47:36,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:47:38,291.291 INFO    ] ================================================
[2026-10-25 13:47:38,307.307 INFO    ] Launching Daemon at Sun Oct 25 13:47:38 IST 2026
[2026-10-25 13:47:38,320.320 INFO    ] ================================================
[2026-10-25 13:47:38,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:47:38
[2026-10-25 13:47:39,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:47:39,783.783 INFO    ] Initializing speech engine...
[2026-10-25 13:47:39,792.792 INFO    ] 2026-10-25 13:47:39
[2026-10-25 13:47:40,066.066 INFO    ] 2026-10-25 13:47:40
[2026-10-25 13:47:40,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:47:40,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:47:40,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:47:40,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:47:40,443.443 INFO    ] time= 25/10/2026 13:47:40
[2026-10-25 13:47:40,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:47:40,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:47:40,605.605 INFO    ] No existing commands found in stream
[2026-10-25 13:47:45,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:47:45,633.633 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 13:47:46,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:47:46,377.377 INFO    ] Checking for system updates...
[2026-10-25 13:47:46,412.412 INFO    ] 200
[2026-10-25 13:47:46,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:46,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:46,475.475 INFO    ] No update needed
[2026-10-25 13:47:46,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 13:47:46,512.512 INFO    ] 200
[2026-10-25 13:47:46,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:46,557.557 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:47:46,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:46,617.617 INFO    ] No camera update needed
[2026-10-25 13:47:46,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:47:46,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:47:46,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:47:46,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:47:48,673.673 INFO    ] ================================================
[2026-10-25 13:47:48,688.688 INFO    ] Launching Daemon at Sun Oct 25 13:47:48 IST 2026
[2026-10-25 13:47:48,699.699 INFO    ] ================================================
[2026-10-25 13:47:49,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:47:49
[2026-10-25 13:47:49,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:47:50,119.119 INFO    ] Initializing speech engine...
[2026-10-25 13:47:50,127.127 INFO    ] 2026-10-25 13:47:50
[2026-10-25 13:47:50,377.377 INFO    ] 2026-10-25 13:47:50
[2026-10-25 13:47:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:47:50,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:47:50,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:47:50,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:47:50,752.752 INFO    ] time= 25/10/2026 13:47:50
[2026-10-25 13:47:50,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:47:50,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:47:50,935.935 INFO    ] No existing commands found in stream
[2026-10-25 13:47:55,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:47:55,967.967 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 13:47:58,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:47:58,999.999 INFO    ] Checking for system updates...
[2026-10-25 13:47:59,036.036 INFO    ] 200
[2026-10-25 13:47:59,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:59,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:59,095.095 INFO    ] No update needed
[2026-10-25 13:47:59,098.098 INFO    ] Checking for camera pi updates...
[2026-10-25 13:47:59,133.133 INFO    ] 200
[2026-10-25 13:47:59,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:47:59,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:47:59,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:47:59,230.230 INFO    ] No camera update needed
[2026-10-25 13:47:59,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:47:59,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:47:59,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:47:59,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:48:01,299.299 INFO    ] ================================================
[2026-10-25 13:48:01,334.334 INFO    ] Launching Daemon at Sun Oct 25 13:48:01 IST 2026
[2026-10-25 13:48:01,354.354 INFO    ] ================================================
[2026-10-25 13:48:02,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:48:02
[2026-10-25 13:48:02,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:48:03,065.065 INFO    ] Initializing speech engine...
[2026-10-25 13:48:03,072.072 INFO    ] 2026-10-25 13:48:03
[2026-10-25 13:48:03,328.328 INFO    ] 2026-10-25 13:48:03
[2026-10-25 13:48:03,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:48:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:48:04,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:48:04,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:48:04,985.985 INFO    ] time= 25/10/2026 13:48:04
[2026-10-25 13:48:04,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:48:05,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:48:05,099.099 INFO    ] No existing commands found in stream
[2026-10-25 13:48:10,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:48:10,113.113 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 13:48:13,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:48:13,821.821 INFO    ] Checking for system updates...
[2026-10-25 13:48:13,857.857 INFO    ] 200
[2026-10-25 13:48:13,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:13,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:48:13,925.925 INFO    ] No update needed
[2026-10-25 13:48:13,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 13:48:13,963.963 INFO    ] 200
[2026-10-25 13:48:13,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:14,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:48:14,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:48:14,068.068 INFO    ] No camera update needed
[2026-10-25 13:48:14,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:48:14,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:48:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:48:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:48:16,126.126 INFO    ] ================================================
[2026-10-25 13:48:16,142.142 INFO    ] Launching Daemon at Sun Oct 25 13:48:16 IST 2026
[2026-10-25 13:48:16,154.154 INFO    ] ================================================
[2026-10-25 13:48:16,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:48:16
[2026-10-25 13:48:17,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:48:17,564.564 INFO    ] Initializing speech engine...
[2026-10-25 13:48:17,573.573 INFO    ] 2026-10-25 13:48:17
[2026-10-25 13:48:17,860.860 INFO    ] 2026-10-25 13:48:17
[2026-10-25 13:48:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:48:18,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:48:18,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:48:18,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:48:18,332.332 INFO    ] time= 25/10/2026 13:48:18
[2026-10-25 13:48:18,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:48:18,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:48:18,506.506 INFO    ] No existing commands found in stream
[2026-10-25 13:48:23,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:48:23,534.534 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 13:48:25,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:48:25,883.883 INFO    ] Checking for system updates...
[2026-10-25 13:48:25,919.919 INFO    ] 200
[2026-10-25 13:48:25,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:25,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:48:25,979.979 INFO    ] No update needed
[2026-10-25 13:48:25,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 13:48:26,021.021 INFO    ] 200
[2026-10-25 13:48:26,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:26,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:48:26,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:48:26,113.113 INFO    ] No camera update needed
[2026-10-25 13:48:26,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:48:26,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:48:26,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:48:26,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:48:28,167.167 INFO    ] ================================================
[2026-10-25 13:48:28,183.183 INFO    ] Launching Daemon at Sun Oct 25 13:48:28 IST 2026
[2026-10-25 13:48:28,202.202 INFO    ] ================================================
[2026-10-25 13:48:28,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:48:28
[2026-10-25 13:48:29,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:48:29,600.600 INFO    ] Initializing speech engine...
[2026-10-25 13:48:29,615.615 INFO    ] 2026-10-25 13:48:29
[2026-10-25 13:48:29,883.883 INFO    ] 2026-10-25 13:48:29
[2026-10-25 13:48:29,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:48:30,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:48:30,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:48:30,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:48:30,257.257 INFO    ] time= 25/10/2026 13:48:30
[2026-10-25 13:48:30,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:48:30,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:48:30,449.449 INFO    ] No existing commands found in stream
[2026-10-25 13:48:35,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:48:35,470.470 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 13:48:39,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:48:39,865.865 INFO    ] Checking for system updates...
[2026-10-25 13:48:39,902.902 INFO    ] 200
[2026-10-25 13:48:39,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:39,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:48:39,961.961 INFO    ] No update needed
[2026-10-25 13:48:39,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 13:48:40,001.001 INFO    ] 200
[2026-10-25 13:48:40,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:40,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:48:40,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:48:40,104.104 INFO    ] No camera update needed
[2026-10-25 13:48:40,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:48:40,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:48:40,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:48:40,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:48:42,160.160 INFO    ] ================================================
[2026-10-25 13:48:42,176.176 INFO    ] Launching Daemon at Sun Oct 25 13:48:42 IST 2026
[2026-10-25 13:48:42,187.187 INFO    ] ================================================
[2026-10-25 13:48:42,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:48:42
[2026-10-25 13:48:43,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:48:43,620.620 INFO    ] Initializing speech engine...
[2026-10-25 13:48:43,630.630 INFO    ] 2026-10-25 13:48:43
[2026-10-25 13:48:43,891.891 INFO    ] 2026-10-25 13:48:43
[2026-10-25 13:48:43,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:48:44,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:48:44,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:48:44,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:48:44,375.375 INFO    ] time= 25/10/2026 13:48:44
[2026-10-25 13:48:44,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:48:44,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:48:44,578.578 INFO    ] No existing commands found in stream
[2026-10-25 13:48:49,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:48:49,602.602 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 13:48:53,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:48:53,363.363 INFO    ] Checking for system updates...
[2026-10-25 13:48:53,398.398 INFO    ] 200
[2026-10-25 13:48:53,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:53,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:48:53,457.457 INFO    ] No update needed
[2026-10-25 13:48:53,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 13:48:53,495.495 INFO    ] 200
[2026-10-25 13:48:53,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:48:53,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:48:53,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:48:53,593.593 INFO    ] No camera update needed
[2026-10-25 13:48:53,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:48:53,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:48:53,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:48:53,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:48:55,654.654 INFO    ] ================================================
[2026-10-25 13:48:55,669.669 INFO    ] Launching Daemon at Sun Oct 25 13:48:55 IST 2026
[2026-10-25 13:48:55,680.680 INFO    ] ================================================
[2026-10-25 13:48:56,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:48:56
[2026-10-25 13:48:56,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:48:57,092.092 INFO    ] Initializing speech engine...
[2026-10-25 13:48:57,111.111 INFO    ] 2026-10-25 13:48:57
[2026-10-25 13:48:57,358.358 INFO    ] 2026-10-25 13:48:57
[2026-10-25 13:48:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:48:57,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:48:57,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:48:57,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:48:57,833.833 INFO    ] time= 25/10/2026 13:48:57
[2026-10-25 13:48:57,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:48:57,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:48:57,971.971 INFO    ] No existing commands found in stream
[2026-10-25 13:49:02,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:49:02,985.985 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 13:49:06,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:49:06,959.959 INFO    ] Checking for system updates...
[2026-10-25 13:49:07,000.000 INFO    ] 200
[2026-10-25 13:49:07,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:07,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:49:07,065.065 INFO    ] No update needed
[2026-10-25 13:49:07,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 13:49:07,116.116 INFO    ] 200
[2026-10-25 13:49:07,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:07,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:49:07,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:49:07,225.225 INFO    ] No camera update needed
[2026-10-25 13:49:07,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:49:07,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:49:07,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:49:07,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:49:09,291.291 INFO    ] ================================================
[2026-10-25 13:49:09,306.306 INFO    ] Launching Daemon at Sun Oct 25 13:49:09 IST 2026
[2026-10-25 13:49:09,316.316 INFO    ] ================================================
[2026-10-25 13:49:09,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:49:09
[2026-10-25 13:49:10,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:49:10,731.731 INFO    ] Initializing speech engine...
[2026-10-25 13:49:10,738.738 INFO    ] 2026-10-25 13:49:10
[2026-10-25 13:49:11,034.034 INFO    ] 2026-10-25 13:49:11
[2026-10-25 13:49:11,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:49:11,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:49:11,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:49:11,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:49:11,404.404 INFO    ] time= 25/10/2026 13:49:11
[2026-10-25 13:49:11,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:49:11,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:49:11,579.579 INFO    ] No existing commands found in stream
[2026-10-25 13:49:16,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:49:16,613.613 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 13:49:20,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:49:20,658.658 INFO    ] Checking for system updates...
[2026-10-25 13:49:20,694.694 INFO    ] 200
[2026-10-25 13:49:20,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:20,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:20,753.753 INFO    ] No update needed
[2026-10-25 13:49:20,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 13:49:20,793.793 INFO    ] 200
[2026-10-25 13:49:20,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:20,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:49:20,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:20,890.890 INFO    ] No camera update needed
[2026-10-25 13:49:20,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:49:20,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:49:20,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:49:20,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:49:22,946.946 INFO    ] ================================================
[2026-10-25 13:49:22,962.962 INFO    ] Launching Daemon at Sun Oct 25 13:49:22 IST 2026
[2026-10-25 13:49:22,972.972 INFO    ] ================================================
[2026-10-25 13:49:23,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:49:23
[2026-10-25 13:49:24,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:49:24,495.495 INFO    ] Initializing speech engine...
[2026-10-25 13:49:24,504.504 INFO    ] 2026-10-25 13:49:24
[2026-10-25 13:49:24,767.767 INFO    ] 2026-10-25 13:49:24
[2026-10-25 13:49:24,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:49:25,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:49:25,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:49:25,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:49:25,245.245 INFO    ] time= 25/10/2026 13:49:25
[2026-10-25 13:49:25,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:49:25,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:49:25,449.449 INFO    ] No existing commands found in stream
[2026-10-25 13:49:30,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:49:30,474.474 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 13:49:32,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:49:32,175.175 INFO    ] Checking for system updates...
[2026-10-25 13:49:32,214.214 INFO    ] 200
[2026-10-25 13:49:32,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:32,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:32,279.279 INFO    ] No update needed
[2026-10-25 13:49:32,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 13:49:32,321.321 INFO    ] 200
[2026-10-25 13:49:32,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:32,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:49:32,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:32,421.421 INFO    ] No camera update needed
[2026-10-25 13:49:32,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:49:32,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:49:32,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:49:32,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:49:34,481.481 INFO    ] ================================================
[2026-10-25 13:49:34,495.495 INFO    ] Launching Daemon at Sun Oct 25 13:49:34 IST 2026
[2026-10-25 13:49:34,506.506 INFO    ] ================================================
[2026-10-25 13:49:35,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:49:35
[2026-10-25 13:49:35,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:49:35,906.906 INFO    ] Initializing speech engine...
[2026-10-25 13:49:35,912.912 INFO    ] 2026-10-25 13:49:35
[2026-10-25 13:49:36,187.187 INFO    ] 2026-10-25 13:49:36
[2026-10-25 13:49:36,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:49:38,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:49:38,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:49:38,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:49:38,593.593 INFO    ] time= 25/10/2026 13:49:38
[2026-10-25 13:49:38,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:49:38,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:49:38,684.684 INFO    ] No existing commands found in stream
[2026-10-25 13:49:43,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:49:43,703.703 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 13:49:48,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:49:48,041.041 INFO    ] Checking for system updates...
[2026-10-25 13:49:48,076.076 INFO    ] 200
[2026-10-25 13:49:48,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:48,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:48,135.135 INFO    ] No update needed
[2026-10-25 13:49:48,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 13:49:48,171.171 INFO    ] 200
[2026-10-25 13:49:48,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:48,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:49:48,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:48,371.371 INFO    ] No camera update needed
[2026-10-25 13:49:48,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:49:48,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:49:48,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:49:48,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:49:50,426.426 INFO    ] ================================================
[2026-10-25 13:49:50,441.441 INFO    ] Launching Daemon at Sun Oct 25 13:49:50 IST 2026
[2026-10-25 13:49:50,451.451 INFO    ] ================================================
[2026-10-25 13:49:51,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:49:51
[2026-10-25 13:49:51,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:49:51,979.979 INFO    ] Initializing speech engine...
[2026-10-25 13:49:51,989.989 INFO    ] 2026-10-25 13:49:51
[2026-10-25 13:49:52,258.258 INFO    ] 2026-10-25 13:49:52
[2026-10-25 13:49:52,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:49:52,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:49:52,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:49:52,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:49:52,745.745 INFO    ] time= 25/10/2026 13:49:52
[2026-10-25 13:49:52,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:49:52,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:49:52,932.932 INFO    ] No existing commands found in stream
[2026-10-25 13:49:57,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:49:57,959.959 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 13:49:58,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:49:58,976.976 INFO    ] Checking for system updates...
[2026-10-25 13:49:59,012.012 INFO    ] 200
[2026-10-25 13:49:59,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:59,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:59,078.078 INFO    ] No update needed
[2026-10-25 13:49:59,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 13:49:59,114.114 INFO    ] 200
[2026-10-25 13:49:59,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:49:59,158.158 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:49:59,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:49:59,208.208 INFO    ] No camera update needed
[2026-10-25 13:49:59,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:49:59,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:49:59,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:49:59,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:50:01,286.286 INFO    ] ================================================
[2026-10-25 13:50:01,326.326 INFO    ] Launching Daemon at Sun Oct 25 13:50:01 IST 2026
[2026-10-25 13:50:01,359.359 INFO    ] ================================================
[2026-10-25 13:50:02,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:50:02
[2026-10-25 13:50:03,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:50:03,635.635 INFO    ] Initializing speech engine...
[2026-10-25 13:50:03,644.644 INFO    ] 2026-10-25 13:50:03
[2026-10-25 13:50:03,956.956 INFO    ] 2026-10-25 13:50:03
[2026-10-25 13:50:03,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:50:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:50:04,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:50:04,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:50:04,317.317 INFO    ] time= 25/10/2026 13:50:04
[2026-10-25 13:50:04,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:50:04,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:50:04,397.397 INFO    ] No existing commands found in stream
[2026-10-25 13:50:09,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:50:09,412.412 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 13:50:13,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:50:13,404.404 INFO    ] Checking for system updates...
[2026-10-25 13:50:13,446.446 INFO    ] 200
[2026-10-25 13:50:13,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:13,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:13,507.507 INFO    ] No update needed
[2026-10-25 13:50:13,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 13:50:13,551.551 INFO    ] 200
[2026-10-25 13:50:13,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:13,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:50:13,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:13,665.665 INFO    ] No camera update needed
[2026-10-25 13:50:13,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:50:13,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:50:13,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:50:13,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:50:15,726.726 INFO    ] ================================================
[2026-10-25 13:50:15,741.741 INFO    ] Launching Daemon at Sun Oct 25 13:50:15 IST 2026
[2026-10-25 13:50:15,752.752 INFO    ] ================================================
[2026-10-25 13:50:16,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:50:16
[2026-10-25 13:50:16,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:50:17,153.153 INFO    ] Initializing speech engine...
[2026-10-25 13:50:17,175.175 INFO    ] 2026-10-25 13:50:17
[2026-10-25 13:50:17,427.427 INFO    ] 2026-10-25 13:50:17
[2026-10-25 13:50:17,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:50:17,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:50:17,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:50:17,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:50:17,896.896 INFO    ] time= 25/10/2026 13:50:17
[2026-10-25 13:50:17,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:50:17,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:50:18,046.046 INFO    ] No existing commands found in stream
[2026-10-25 13:50:23,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:50:23,063.063 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 13:50:25,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:50:25,726.726 INFO    ] Checking for system updates...
[2026-10-25 13:50:25,763.763 INFO    ] 200
[2026-10-25 13:50:25,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:25,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:25,821.821 INFO    ] No update needed
[2026-10-25 13:50:25,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 13:50:25,857.857 INFO    ] 200
[2026-10-25 13:50:25,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:25,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:50:25,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:25,963.963 INFO    ] No camera update needed
[2026-10-25 13:50:25,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:50:25,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:50:25,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:50:25,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:50:28,017.017 INFO    ] ================================================
[2026-10-25 13:50:28,033.033 INFO    ] Launching Daemon at Sun Oct 25 13:50:28 IST 2026
[2026-10-25 13:50:28,043.043 INFO    ] ================================================
[2026-10-25 13:50:28,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:50:28
[2026-10-25 13:50:29,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:50:29,629.629 INFO    ] Initializing speech engine...
[2026-10-25 13:50:29,638.638 INFO    ] 2026-10-25 13:50:29
[2026-10-25 13:50:29,897.897 INFO    ] 2026-10-25 13:50:29
[2026-10-25 13:50:29,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:50:30,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:50:30,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:50:30,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:50:30,386.386 INFO    ] time= 25/10/2026 13:50:30
[2026-10-25 13:50:30,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:50:30,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:50:30,510.510 INFO    ] No existing commands found in stream
[2026-10-25 13:50:35,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:50:35,548.548 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 13:50:40,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:50:40,586.586 INFO    ] Checking for system updates...
[2026-10-25 13:50:40,623.623 INFO    ] 200
[2026-10-25 13:50:40,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:40,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:50:40,689.689 INFO    ] No update needed
[2026-10-25 13:50:40,692.692 INFO    ] Checking for camera pi updates...
[2026-10-25 13:50:40,726.726 INFO    ] 200
[2026-10-25 13:50:40,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:40,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:50:40,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:50:40,819.819 INFO    ] No camera update needed
[2026-10-25 13:50:40,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:50:40,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:50:40,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:50:40,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:50:42,874.874 INFO    ] ================================================
[2026-10-25 13:50:42,888.888 INFO    ] Launching Daemon at Sun Oct 25 13:50:42 IST 2026
[2026-10-25 13:50:42,899.899 INFO    ] ================================================
[2026-10-25 13:50:43,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:50:43
[2026-10-25 13:50:44,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:50:44,298.298 INFO    ] Initializing speech engine...
[2026-10-25 13:50:44,318.318 INFO    ] 2026-10-25 13:50:44
[2026-10-25 13:50:44,573.573 INFO    ] 2026-10-25 13:50:44
[2026-10-25 13:50:44,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:50:44,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:50:44,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:50:44,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:50:45,057.057 INFO    ] time= 25/10/2026 13:50:45
[2026-10-25 13:50:45,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:50:45,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:50:45,195.195 INFO    ] No existing commands found in stream
[2026-10-25 13:50:50,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:50:50,229.229 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 13:50:51,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:50:51,022.022 INFO    ] Checking for system updates...
[2026-10-25 13:50:51,059.059 INFO    ] 200
[2026-10-25 13:50:51,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:51,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:51,117.117 INFO    ] No update needed
[2026-10-25 13:50:51,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 13:50:51,154.154 INFO    ] 200
[2026-10-25 13:50:51,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:50:51,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:50:51,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:50:51,248.248 INFO    ] No camera update needed
[2026-10-25 13:50:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:50:51,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:50:51,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:50:51,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:50:53,305.305 INFO    ] ================================================
[2026-10-25 13:50:53,320.320 INFO    ] Launching Daemon at Sun Oct 25 13:50:53 IST 2026
[2026-10-25 13:50:53,331.331 INFO    ] ================================================
[2026-10-25 13:50:53,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:50:53
[2026-10-25 13:50:54,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:50:54,727.727 INFO    ] Initializing speech engine...
[2026-10-25 13:50:54,751.751 INFO    ] 2026-10-25 13:50:54
[2026-10-25 13:50:55,008.008 INFO    ] 2026-10-25 13:50:54
[2026-10-25 13:50:55,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:50:55,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:50:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:50:55,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:50:55,486.486 INFO    ] time= 25/10/2026 13:50:55
[2026-10-25 13:50:55,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:50:55,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:50:55,637.637 INFO    ] No existing commands found in stream
[2026-10-25 13:51:00,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:51:00,651.651 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 13:51:04,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:51:04,519.519 INFO    ] Checking for system updates...
[2026-10-25 13:51:04,559.559 INFO    ] 200
[2026-10-25 13:51:04,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:04,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:04,618.618 INFO    ] No update needed
[2026-10-25 13:51:04,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 13:51:04,658.658 INFO    ] 200
[2026-10-25 13:51:04,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:04,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:51:04,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:04,756.756 INFO    ] No camera update needed
[2026-10-25 13:51:04,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:51:04,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:51:04,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:51:04,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:51:06,810.810 INFO    ] ================================================
[2026-10-25 13:51:06,825.825 INFO    ] Launching Daemon at Sun Oct 25 13:51:06 IST 2026
[2026-10-25 13:51:06,835.835 INFO    ] ================================================
[2026-10-25 13:51:07,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:51:07
[2026-10-25 13:51:08,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:51:08,445.445 INFO    ] Initializing speech engine...
[2026-10-25 13:51:08,451.451 INFO    ] 2026-10-25 13:51:08
[2026-10-25 13:51:08,741.741 INFO    ] 2026-10-25 13:51:08
[2026-10-25 13:51:08,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:51:11,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:51:11,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:51:11,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:51:11,829.829 INFO    ] time= 25/10/2026 13:51:11
[2026-10-25 13:51:11,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:51:11,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:51:11,891.891 INFO    ] No existing commands found in stream
[2026-10-25 13:51:16,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:51:16,904.904 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 13:51:18,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:51:18,820.820 INFO    ] Checking for system updates...
[2026-10-25 13:51:18,861.861 INFO    ] 200
[2026-10-25 13:51:18,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:18,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:18,939.939 INFO    ] No update needed
[2026-10-25 13:51:18,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 13:51:18,975.975 INFO    ] 200
[2026-10-25 13:51:18,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:19,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:51:19,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:19,075.075 INFO    ] No camera update needed
[2026-10-25 13:51:19,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:51:19,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:51:19,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:51:19,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:51:21,131.131 INFO    ] ================================================
[2026-10-25 13:51:21,147.147 INFO    ] Launching Daemon at Sun Oct 25 13:51:21 IST 2026
[2026-10-25 13:51:21,158.158 INFO    ] ================================================
[2026-10-25 13:51:21,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:51:21
[2026-10-25 13:51:22,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:51:22,639.639 INFO    ] Initializing speech engine...
[2026-10-25 13:51:22,648.648 INFO    ] 2026-10-25 13:51:22
[2026-10-25 13:51:22,896.896 INFO    ] 2026-10-25 13:51:22
[2026-10-25 13:51:22,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:51:23,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:51:23,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:51:23,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:51:23,373.373 INFO    ] time= 25/10/2026 13:51:23
[2026-10-25 13:51:23,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:51:23,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:51:23,523.523 INFO    ] No existing commands found in stream
[2026-10-25 13:51:28,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:51:28,538.538 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 13:51:31,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:51:31,779.779 INFO    ] Checking for system updates...
[2026-10-25 13:51:31,824.824 INFO    ] 200
[2026-10-25 13:51:31,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:31,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:31,899.899 INFO    ] No update needed
[2026-10-25 13:51:31,903.903 INFO    ] Checking for camera pi updates...
[2026-10-25 13:51:31,942.942 INFO    ] 200
[2026-10-25 13:51:31,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:31,997.997 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:51:32,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:51:32,036.036 INFO    ] No camera update needed
[2026-10-25 13:51:32,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:51:32,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:51:32,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:51:32,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:51:34,098.098 INFO    ] ================================================
[2026-10-25 13:51:34,114.114 INFO    ] Launching Daemon at Sun Oct 25 13:51:34 IST 2026
[2026-10-25 13:51:34,125.125 INFO    ] ================================================
[2026-10-25 13:51:34,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:51:34
[2026-10-25 13:51:35,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:51:35,648.648 INFO    ] Initializing speech engine...
[2026-10-25 13:51:35,662.662 INFO    ] 2026-10-25 13:51:35
[2026-10-25 13:51:35,928.928 INFO    ] 2026-10-25 13:51:35
[2026-10-25 13:51:35,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:51:36,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:51:36,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:51:36,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:51:36,373.373 INFO    ] time= 25/10/2026 13:51:36
[2026-10-25 13:51:36,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:51:36,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:51:36,528.528 INFO    ] No existing commands found in stream
[2026-10-25 13:51:41,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:51:41,563.563 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 13:51:45,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:51:45,579.579 INFO    ] Checking for system updates...
[2026-10-25 13:51:45,619.619 INFO    ] 200
[2026-10-25 13:51:45,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:45,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:51:45,686.686 INFO    ] No update needed
[2026-10-25 13:51:45,688.688 INFO    ] Checking for camera pi updates...
[2026-10-25 13:51:45,726.726 INFO    ] 200
[2026-10-25 13:51:45,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:45,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:51:45,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:51:45,832.832 INFO    ] No camera update needed
[2026-10-25 13:51:45,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:51:45,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:51:45,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:51:45,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:51:47,890.890 INFO    ] ================================================
[2026-10-25 13:51:47,905.905 INFO    ] Launching Daemon at Sun Oct 25 13:51:47 IST 2026
[2026-10-25 13:51:47,920.920 INFO    ] ================================================
[2026-10-25 13:51:48,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:51:48
[2026-10-25 13:51:49,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:51:49,610.610 INFO    ] Initializing speech engine...
[2026-10-25 13:51:49,619.619 INFO    ] 2026-10-25 13:51:49
[2026-10-25 13:51:49,905.905 INFO    ] 2026-10-25 13:51:49
[2026-10-25 13:51:49,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:51:50,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:51:50,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:51:50,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:51:50,371.371 INFO    ] time= 25/10/2026 13:51:50
[2026-10-25 13:51:50,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:51:50,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:51:50,549.549 INFO    ] No existing commands found in stream
[2026-10-25 13:51:55,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:51:55,584.584 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 13:51:58,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:51:58,646.646 INFO    ] Checking for system updates...
[2026-10-25 13:51:58,688.688 INFO    ] 200
[2026-10-25 13:51:58,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:58,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:51:58,756.756 INFO    ] No update needed
[2026-10-25 13:51:58,759.759 INFO    ] Checking for camera pi updates...
[2026-10-25 13:51:58,799.799 INFO    ] 200
[2026-10-25 13:51:58,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:51:58,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:51:59,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:51:59,009.009 INFO    ] No camera update needed
[2026-10-25 13:51:59,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:51:59,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:51:59,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:51:59,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:52:01,065.065 INFO    ] ================================================
[2026-10-25 13:52:01,080.080 INFO    ] Launching Daemon at Sun Oct 25 13:52:01 IST 2026
[2026-10-25 13:52:01,091.091 INFO    ] ================================================
[2026-10-25 13:52:01,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:52:01
[2026-10-25 13:52:02,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:52:02,761.761 INFO    ] Initializing speech engine...
[2026-10-25 13:52:02,775.775 INFO    ] 2026-10-25 13:52:02
[2026-10-25 13:52:03,073.073 INFO    ] 2026-10-25 13:52:03
[2026-10-25 13:52:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:52:03,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:52:03,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:52:03,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:52:03,507.507 INFO    ] time= 25/10/2026 13:52:03
[2026-10-25 13:52:03,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:52:03,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:52:03,707.707 INFO    ] No existing commands found in stream
[2026-10-25 13:52:08,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:52:08,733.733 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 13:52:13,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:52:13,569.569 INFO    ] Checking for system updates...
[2026-10-25 13:52:13,608.608 INFO    ] 200
[2026-10-25 13:52:13,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:13,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:13,677.677 INFO    ] No update needed
[2026-10-25 13:52:13,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 13:52:13,715.715 INFO    ] 200
[2026-10-25 13:52:13,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:13,767.767 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:52:13,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:13,831.831 INFO    ] No camera update needed
[2026-10-25 13:52:13,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:52:13,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:52:13,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:52:13,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:52:15,891.891 INFO    ] ================================================
[2026-10-25 13:52:15,907.907 INFO    ] Launching Daemon at Sun Oct 25 13:52:15 IST 2026
[2026-10-25 13:52:15,917.917 INFO    ] ================================================
[2026-10-25 13:52:16,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:52:16
[2026-10-25 13:52:17,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:52:17,374.374 INFO    ] Initializing speech engine...
[2026-10-25 13:52:17,385.385 INFO    ] 2026-10-25 13:52:17
[2026-10-25 13:52:17,648.648 INFO    ] 2026-10-25 13:52:17
[2026-10-25 13:52:17,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:52:17,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:52:17,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:52:18,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:52:18,139.139 INFO    ] time= 25/10/2026 13:52:18
[2026-10-25 13:52:18,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:52:18,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:52:18,332.332 INFO    ] No existing commands found in stream
[2026-10-25 13:52:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:52:23,359.359 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 13:52:26,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:52:26,967.967 INFO    ] Checking for system updates...
[2026-10-25 13:52:27,007.007 INFO    ] 200
[2026-10-25 13:52:27,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:27,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:27,072.072 INFO    ] No update needed
[2026-10-25 13:52:27,075.075 INFO    ] Checking for camera pi updates...
[2026-10-25 13:52:27,109.109 INFO    ] 200
[2026-10-25 13:52:27,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:27,152.152 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:52:27,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:27,199.199 INFO    ] No camera update needed
[2026-10-25 13:52:27,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:52:27,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:52:27,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:52:27,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:52:29,253.253 INFO    ] ================================================
[2026-10-25 13:52:29,268.268 INFO    ] Launching Daemon at Sun Oct 25 13:52:29 IST 2026
[2026-10-25 13:52:29,279.279 INFO    ] ================================================
[2026-10-25 13:52:29,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:52:29
[2026-10-25 13:52:30,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:52:30,697.697 INFO    ] Initializing speech engine...
[2026-10-25 13:52:30,723.723 INFO    ] 2026-10-25 13:52:30
[2026-10-25 13:52:30,994.994 INFO    ] 2026-10-25 13:52:30
[2026-10-25 13:52:31,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:52:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:52:31,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:52:31,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:52:31,353.353 INFO    ] time= 25/10/2026 13:52:31
[2026-10-25 13:52:31,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:52:31,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:52:31,475.475 INFO    ] No existing commands found in stream
[2026-10-25 13:52:36,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:52:36,508.508 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 13:52:37,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:52:37,031.031 INFO    ] Checking for system updates...
[2026-10-25 13:52:37,071.071 INFO    ] 200
[2026-10-25 13:52:37,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:37,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:37,143.143 INFO    ] No update needed
[2026-10-25 13:52:37,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 13:52:37,180.180 INFO    ] 200
[2026-10-25 13:52:37,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:37,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:52:37,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:52:37,274.274 INFO    ] No camera update needed
[2026-10-25 13:52:37,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:52:37,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:52:37,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:52:37,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:52:39,330.330 INFO    ] ================================================
[2026-10-25 13:52:39,345.345 INFO    ] Launching Daemon at Sun Oct 25 13:52:39 IST 2026
[2026-10-25 13:52:39,355.355 INFO    ] ================================================
[2026-10-25 13:52:39,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:52:39
[2026-10-25 13:52:40,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:52:40,807.807 INFO    ] Initializing speech engine...
[2026-10-25 13:52:40,817.817 INFO    ] 2026-10-25 13:52:40
[2026-10-25 13:52:41,074.074 INFO    ] 2026-10-25 13:52:41
[2026-10-25 13:52:41,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:52:44,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:52:44,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:52:44,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:52:44,894.894 INFO    ] time= 25/10/2026 13:52:44
[2026-10-25 13:52:44,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:52:44,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:52:44,955.955 INFO    ] No existing commands found in stream
[2026-10-25 13:52:49,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:52:49,966.966 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 13:52:53,447.447 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:52:53,450.450 INFO    ] Checking for system updates...
[2026-10-25 13:52:53,496.496 INFO    ] 200
[2026-10-25 13:52:53,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:53,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:52:53,558.558 INFO    ] No update needed
[2026-10-25 13:52:53,561.561 INFO    ] Checking for camera pi updates...
[2026-10-25 13:52:53,598.598 INFO    ] 200
[2026-10-25 13:52:53,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:52:53,645.645 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:52:53,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:52:53,698.698 INFO    ] No camera update needed
[2026-10-25 13:52:53,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:52:53,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:52:53,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:52:53,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:52:55,759.759 INFO    ] ================================================
[2026-10-25 13:52:55,774.774 INFO    ] Launching Daemon at Sun Oct 25 13:52:55 IST 2026
[2026-10-25 13:52:55,785.785 INFO    ] ================================================
[2026-10-25 13:52:56,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:52:56
[2026-10-25 13:52:56,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:52:57,244.244 INFO    ] Initializing speech engine...
[2026-10-25 13:52:57,266.266 INFO    ] 2026-10-25 13:52:57
[2026-10-25 13:52:57,517.517 INFO    ] 2026-10-25 13:52:57
[2026-10-25 13:52:57,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:52:57,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:52:57,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:52:57,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:52:57,883.883 INFO    ] time= 25/10/2026 13:52:57
[2026-10-25 13:52:57,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:52:57,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:52:57,990.990 INFO    ] No existing commands found in stream
[2026-10-25 13:53:03,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:53:03,005.005 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 13:53:05,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:53:05,567.567 INFO    ] Checking for system updates...
[2026-10-25 13:53:05,603.603 INFO    ] 200
[2026-10-25 13:53:05,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:05,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:53:05,666.666 INFO    ] No update needed
[2026-10-25 13:53:05,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 13:53:05,703.703 INFO    ] 200
[2026-10-25 13:53:05,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:05,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:53:05,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:53:05,809.809 INFO    ] No camera update needed
[2026-10-25 13:53:05,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:53:05,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:53:05,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:53:05,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:53:07,866.866 INFO    ] ================================================
[2026-10-25 13:53:07,881.881 INFO    ] Launching Daemon at Sun Oct 25 13:53:07 IST 2026
[2026-10-25 13:53:07,891.891 INFO    ] ================================================
[2026-10-25 13:53:08,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:53:08
[2026-10-25 13:53:09,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:53:09,326.326 INFO    ] Initializing speech engine...
[2026-10-25 13:53:09,340.340 INFO    ] 2026-10-25 13:53:09
[2026-10-25 13:53:09,626.626 INFO    ] 2026-10-25 13:53:09
[2026-10-25 13:53:09,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:53:09,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:53:09,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:53:10,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:53:10,040.040 INFO    ] time= 25/10/2026 13:53:10
[2026-10-25 13:53:10,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:53:10,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:53:10,122.122 INFO    ] No existing commands found in stream
[2026-10-25 13:53:15,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:53:15,137.137 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 13:53:18,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:53:18,437.437 INFO    ] Checking for system updates...
[2026-10-25 13:53:18,477.477 INFO    ] 200
[2026-10-25 13:53:18,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:18,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:18,535.535 INFO    ] No update needed
[2026-10-25 13:53:18,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 13:53:18,571.571 INFO    ] 200
[2026-10-25 13:53:18,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:18,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:53:18,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:18,666.666 INFO    ] No camera update needed
[2026-10-25 13:53:18,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:53:18,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:53:18,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:53:18,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:53:20,722.722 INFO    ] ================================================
[2026-10-25 13:53:20,737.737 INFO    ] Launching Daemon at Sun Oct 25 13:53:20 IST 2026
[2026-10-25 13:53:20,748.748 INFO    ] ================================================
[2026-10-25 13:53:21,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:53:21
[2026-10-25 13:53:21,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:53:22,204.204 INFO    ] Initializing speech engine...
[2026-10-25 13:53:22,213.213 INFO    ] 2026-10-25 13:53:22
[2026-10-25 13:53:22,471.471 INFO    ] 2026-10-25 13:53:22
[2026-10-25 13:53:22,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:53:22,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:53:22,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:53:22,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:53:22,934.934 INFO    ] time= 25/10/2026 13:53:22
[2026-10-25 13:53:22,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:53:23,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:53:23,072.072 INFO    ] No existing commands found in stream
[2026-10-25 13:53:28,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:53:28,087.087 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 13:53:31,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:53:31,252.252 INFO    ] Checking for system updates...
[2026-10-25 13:53:31,292.292 INFO    ] 200
[2026-10-25 13:53:31,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:31,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:31,350.350 INFO    ] No update needed
[2026-10-25 13:53:31,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 13:53:31,387.387 INFO    ] 200
[2026-10-25 13:53:31,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:31,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:53:31,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:31,476.476 INFO    ] No camera update needed
[2026-10-25 13:53:31,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:53:31,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:53:31,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:53:31,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:53:33,536.536 INFO    ] ================================================
[2026-10-25 13:53:33,552.552 INFO    ] Launching Daemon at Sun Oct 25 13:53:33 IST 2026
[2026-10-25 13:53:33,563.563 INFO    ] ================================================
[2026-10-25 13:53:34,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:53:34
[2026-10-25 13:53:34,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:53:34,989.989 INFO    ] Initializing speech engine...
[2026-10-25 13:53:34,998.998 INFO    ] 2026-10-25 13:53:34
[2026-10-25 13:53:35,248.248 INFO    ] 2026-10-25 13:53:35
[2026-10-25 13:53:35,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:53:35,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:53:35,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:53:35,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:53:35,867.867 INFO    ] time= 25/10/2026 13:53:35
[2026-10-25 13:53:35,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:53:35,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:53:36,037.037 INFO    ] No existing commands found in stream
[2026-10-25 13:53:41,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:53:41,070.070 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 13:53:46,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:53:46,840.840 INFO    ] Checking for system updates...
[2026-10-25 13:53:46,879.879 INFO    ] 200
[2026-10-25 13:53:46,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:46,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:46,938.938 INFO    ] No update needed
[2026-10-25 13:53:46,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 13:53:46,975.975 INFO    ] 200
[2026-10-25 13:53:46,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:53:47,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:53:47,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:53:47,089.089 INFO    ] No camera update needed
[2026-10-25 13:53:47,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:53:47,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:53:47,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:53:47,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:53:49,142.142 INFO    ] ================================================
[2026-10-25 13:53:49,157.157 INFO    ] Launching Daemon at Sun Oct 25 13:53:49 IST 2026
[2026-10-25 13:53:49,168.168 INFO    ] ================================================
[2026-10-25 13:53:49,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:53:49
[2026-10-25 13:53:50,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:53:50,630.630 INFO    ] Initializing speech engine...
[2026-10-25 13:53:50,652.652 INFO    ] 2026-10-25 13:53:50
[2026-10-25 13:53:50,907.907 INFO    ] 2026-10-25 13:53:50
[2026-10-25 13:53:50,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:53:51,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:53:51,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:53:51,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:53:51,284.284 INFO    ] time= 25/10/2026 13:53:51
[2026-10-25 13:53:51,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:53:51,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:53:51,363.363 INFO    ] No existing commands found in stream
[2026-10-25 13:53:56,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:53:56,401.401 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 13:54:00,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:54:00,146.146 INFO    ] Checking for system updates...
[2026-10-25 13:54:00,196.196 INFO    ] 200
[2026-10-25 13:54:00,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:54:00,202.202 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 13:54:00,205.205 INFO    ] Checking for camera pi updates...
[2026-10-25 13:54:00,259.259 INFO    ] 200
[2026-10-25 13:54:00,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 13:54:00,265.265 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 13:54:00,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:54:00,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:54:00,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:54:00,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:54:02,338.338 INFO    ] ================================================
[2026-10-25 13:54:02,364.364 INFO    ] Launching Daemon at Sun Oct 25 13:54:02 IST 2026
[2026-10-25 13:54:02,380.380 INFO    ] ================================================
[2026-10-25 13:54:03,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:54:03
[2026-10-25 13:54:03,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:54:04,157.157 INFO    ] Initializing speech engine...
[2026-10-25 13:54:04,166.166 INFO    ] 2026-10-25 13:54:04
[2026-10-25 13:54:04,452.452 INFO    ] 2026-10-25 13:54:04
[2026-10-25 13:54:04,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:54:04,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:54:04,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:54:04,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:54:04,907.907 INFO    ] time= 25/10/2026 13:54:04
[2026-10-25 13:54:04,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:54:04,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:54:05,047.047 INFO    ] No existing commands found in stream
[2026-10-25 13:54:10,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:54:10,059.059 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 13:54:15,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:54:15,247.247 INFO    ] Checking for system updates...
[2026-10-25 13:54:15,283.283 INFO    ] 200
[2026-10-25 13:54:15,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:15,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:15,344.344 INFO    ] No update needed
[2026-10-25 13:54:15,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 13:54:15,380.380 INFO    ] 200
[2026-10-25 13:54:15,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:15,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:54:15,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:15,475.475 INFO    ] No camera update needed
[2026-10-25 13:54:15,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:54:15,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:54:15,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:54:15,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:54:17,530.530 INFO    ] ================================================
[2026-10-25 13:54:17,545.545 INFO    ] Launching Daemon at Sun Oct 25 13:54:17 IST 2026
[2026-10-25 13:54:17,556.556 INFO    ] ================================================
[2026-10-25 13:54:18,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:54:18
[2026-10-25 13:54:18,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:54:19,162.162 INFO    ] Initializing speech engine...
[2026-10-25 13:54:19,172.172 INFO    ] 2026-10-25 13:54:19
[2026-10-25 13:54:19,440.440 INFO    ] 2026-10-25 13:54:19
[2026-10-25 13:54:19,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:54:19,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:54:19,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:54:19,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:54:19,989.989 INFO    ] time= 25/10/2026 13:54:19
[2026-10-25 13:54:20,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:54:20,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:54:20,141.141 INFO    ] No existing commands found in stream
[2026-10-25 13:54:25,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:54:25,162.162 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 13:54:26,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:54:26,202.202 INFO    ] Checking for system updates...
[2026-10-25 13:54:26,243.243 INFO    ] 200
[2026-10-25 13:54:26,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:26,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:26,308.308 INFO    ] No update needed
[2026-10-25 13:54:26,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 13:54:26,349.349 INFO    ] 200
[2026-10-25 13:54:26,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:26,395.395 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:54:26,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:26,449.449 INFO    ] No camera update needed
[2026-10-25 13:54:26,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:54:26,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:54:26,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:54:26,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:54:28,507.507 INFO    ] ================================================
[2026-10-25 13:54:28,522.522 INFO    ] Launching Daemon at Sun Oct 25 13:54:28 IST 2026
[2026-10-25 13:54:28,533.533 INFO    ] ================================================
[2026-10-25 13:54:29,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:54:29
[2026-10-25 13:54:29,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:54:30,016.016 INFO    ] Initializing speech engine...
[2026-10-25 13:54:30,021.021 INFO    ] 2026-10-25 13:54:30
[2026-10-25 13:54:30,285.285 INFO    ] 2026-10-25 13:54:30
[2026-10-25 13:54:30,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:54:30,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:54:30,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:54:30,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:54:30,749.749 INFO    ] time= 25/10/2026 13:54:30
[2026-10-25 13:54:30,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:54:30,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:54:30,910.910 INFO    ] No existing commands found in stream
[2026-10-25 13:54:35,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:54:35,948.948 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 13:54:38,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:54:38,058.058 INFO    ] Checking for system updates...
[2026-10-25 13:54:38,097.097 INFO    ] 200
[2026-10-25 13:54:38,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:38,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:54:38,157.157 INFO    ] No update needed
[2026-10-25 13:54:38,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 13:54:38,195.195 INFO    ] 200
[2026-10-25 13:54:38,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:38,240.240 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:54:38,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:54:38,341.341 INFO    ] No camera update needed
[2026-10-25 13:54:38,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:54:38,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:54:38,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:54:38,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:54:40,399.399 INFO    ] ================================================
[2026-10-25 13:54:40,414.414 INFO    ] Launching Daemon at Sun Oct 25 13:54:40 IST 2026
[2026-10-25 13:54:40,425.425 INFO    ] ================================================
[2026-10-25 13:54:41,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:54:41
[2026-10-25 13:54:41,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:54:41,898.898 INFO    ] Initializing speech engine...
[2026-10-25 13:54:41,906.906 INFO    ] 2026-10-25 13:54:41
[2026-10-25 13:54:42,180.180 INFO    ] 2026-10-25 13:54:42
[2026-10-25 13:54:42,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:54:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:54:42,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:54:42,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:54:42,629.629 INFO    ] time= 25/10/2026 13:54:42
[2026-10-25 13:54:42,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:54:42,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:54:42,839.839 INFO    ] No existing commands found in stream
[2026-10-25 13:54:47,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:54:47,873.873 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 13:54:49,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:54:49,252.252 INFO    ] Checking for system updates...
[2026-10-25 13:54:49,289.289 INFO    ] 200
[2026-10-25 13:54:49,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:49,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:49,356.356 INFO    ] No update needed
[2026-10-25 13:54:49,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 13:54:49,393.393 INFO    ] 200
[2026-10-25 13:54:49,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:54:49,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:54:49,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:54:49,497.497 INFO    ] No camera update needed
[2026-10-25 13:54:49,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:54:49,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:54:49,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:54:49,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:54:51,553.553 INFO    ] ================================================
[2026-10-25 13:54:51,568.568 INFO    ] Launching Daemon at Sun Oct 25 13:54:51 IST 2026
[2026-10-25 13:54:51,579.579 INFO    ] ================================================
[2026-10-25 13:54:52,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:54:52
[2026-10-25 13:54:52,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:54:53,149.149 INFO    ] Initializing speech engine...
[2026-10-25 13:54:53,159.159 INFO    ] 2026-10-25 13:54:53
[2026-10-25 13:54:53,418.418 INFO    ] 2026-10-25 13:54:53
[2026-10-25 13:54:53,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:54:53,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:54:53,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:54:53,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:54:53,779.779 INFO    ] time= 25/10/2026 13:54:53
[2026-10-25 13:54:53,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:54:53,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:54:53,938.938 INFO    ] No existing commands found in stream
[2026-10-25 13:54:58,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:54:58,966.966 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 13:55:02,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:55:02,688.688 INFO    ] Checking for system updates...
[2026-10-25 13:55:02,737.737 INFO    ] 200
[2026-10-25 13:55:02,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:02,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:55:02,808.808 INFO    ] No update needed
[2026-10-25 13:55:02,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 13:55:02,852.852 INFO    ] 200
[2026-10-25 13:55:02,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:02,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:55:02,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:55:02,959.959 INFO    ] No camera update needed
[2026-10-25 13:55:02,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:55:02,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:55:02,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:55:02,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:55:05,016.016 INFO    ] ================================================
[2026-10-25 13:55:05,032.032 INFO    ] Launching Daemon at Sun Oct 25 13:55:05 IST 2026
[2026-10-25 13:55:05,043.043 INFO    ] ================================================
[2026-10-25 13:55:05,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:55:05
[2026-10-25 13:55:06,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:55:06,492.492 INFO    ] Initializing speech engine...
[2026-10-25 13:55:06,501.501 INFO    ] 2026-10-25 13:55:06
[2026-10-25 13:55:06,786.786 INFO    ] 2026-10-25 13:55:06
[2026-10-25 13:55:06,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:55:07,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:55:07,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:55:07,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:55:07,321.321 INFO    ] time= 25/10/2026 13:55:07
[2026-10-25 13:55:07,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:55:07,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:55:07,476.476 INFO    ] No existing commands found in stream
[2026-10-25 13:55:12,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:55:12,499.499 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 13:55:14,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:55:14,747.747 INFO    ] Checking for system updates...
[2026-10-25 13:55:14,785.785 INFO    ] 200
[2026-10-25 13:55:14,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:14,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:14,854.854 INFO    ] No update needed
[2026-10-25 13:55:14,857.857 INFO    ] Checking for camera pi updates...
[2026-10-25 13:55:14,891.891 INFO    ] 200
[2026-10-25 13:55:14,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:14,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:55:15,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:15,005.005 INFO    ] No camera update needed
[2026-10-25 13:55:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:55:15,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:55:15,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:55:15,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:55:17,062.062 INFO    ] ================================================
[2026-10-25 13:55:17,077.077 INFO    ] Launching Daemon at Sun Oct 25 13:55:17 IST 2026
[2026-10-25 13:55:17,088.088 INFO    ] ================================================
[2026-10-25 13:55:17,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:55:17
[2026-10-25 13:55:18,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:55:18,481.481 INFO    ] Initializing speech engine...
[2026-10-25 13:55:18,496.496 INFO    ] 2026-10-25 13:55:18
[2026-10-25 13:55:18,761.761 INFO    ] 2026-10-25 13:55:18
[2026-10-25 13:55:18,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:55:19,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:55:19,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:55:19,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:55:19,997.997 INFO    ] time= 25/10/2026 13:55:19
[2026-10-25 13:55:20,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:55:20,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:55:20,109.109 INFO    ] No existing commands found in stream
[2026-10-25 13:55:25,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:55:25,137.137 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 13:55:31,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:55:31,325.325 INFO    ] Checking for system updates...
[2026-10-25 13:55:31,365.365 INFO    ] 200
[2026-10-25 13:55:31,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:31,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:31,427.427 INFO    ] No update needed
[2026-10-25 13:55:31,430.430 INFO    ] Checking for camera pi updates...
[2026-10-25 13:55:31,472.472 INFO    ] 200
[2026-10-25 13:55:31,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:31,519.519 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:55:31,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:31,568.568 INFO    ] No camera update needed
[2026-10-25 13:55:31,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:55:31,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:55:31,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:55:31,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:55:33,625.625 INFO    ] ================================================
[2026-10-25 13:55:33,640.640 INFO    ] Launching Daemon at Sun Oct 25 13:55:33 IST 2026
[2026-10-25 13:55:33,650.650 INFO    ] ================================================
[2026-10-25 13:55:34,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:55:34
[2026-10-25 13:55:34,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:55:35,183.183 INFO    ] Initializing speech engine...
[2026-10-25 13:55:35,203.203 INFO    ] 2026-10-25 13:55:35
[2026-10-25 13:55:35,475.475 INFO    ] 2026-10-25 13:55:35
[2026-10-25 13:55:35,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:55:35,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:55:35,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:55:35,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:55:35,895.895 INFO    ] time= 25/10/2026 13:55:35
[2026-10-25 13:55:35,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:55:35,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:55:36,035.035 INFO    ] No existing commands found in stream
[2026-10-25 13:55:41,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:55:41,058.058 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 13:55:41,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:55:41,788.788 INFO    ] Checking for system updates...
[2026-10-25 13:55:41,824.824 INFO    ] 200
[2026-10-25 13:55:41,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:41,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:55:41,882.882 INFO    ] No update needed
[2026-10-25 13:55:41,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 13:55:41,918.918 INFO    ] 200
[2026-10-25 13:55:41,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:41,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:55:42,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:55:42,014.014 INFO    ] No camera update needed
[2026-10-25 13:55:42,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:55:42,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:55:42,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:55:42,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:55:44,069.069 INFO    ] ================================================
[2026-10-25 13:55:44,085.085 INFO    ] Launching Daemon at Sun Oct 25 13:55:44 IST 2026
[2026-10-25 13:55:44,096.096 INFO    ] ================================================
[2026-10-25 13:55:44,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:55:44
[2026-10-25 13:55:45,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:55:45,519.519 INFO    ] Initializing speech engine...
[2026-10-25 13:55:45,526.526 INFO    ] 2026-10-25 13:55:45
[2026-10-25 13:55:45,827.827 INFO    ] 2026-10-25 13:55:45
[2026-10-25 13:55:45,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:55:46,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:55:46,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:55:46,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:55:46,248.248 INFO    ] time= 25/10/2026 13:55:46
[2026-10-25 13:55:46,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:55:46,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:55:46,334.334 INFO    ] No existing commands found in stream
[2026-10-25 13:55:51,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:55:51,347.347 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 13:55:53,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:55:53,330.330 INFO    ] Checking for system updates...
[2026-10-25 13:55:53,366.366 INFO    ] 200
[2026-10-25 13:55:53,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:53,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:53,425.425 INFO    ] No update needed
[2026-10-25 13:55:53,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 13:55:53,465.465 INFO    ] 200
[2026-10-25 13:55:53,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:55:53,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:55:53,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:55:53,566.566 INFO    ] No camera update needed
[2026-10-25 13:55:53,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:55:53,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:55:53,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:55:53,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:55:55,626.626 INFO    ] ================================================
[2026-10-25 13:55:55,645.645 INFO    ] Launching Daemon at Sun Oct 25 13:55:55 IST 2026
[2026-10-25 13:55:55,656.656 INFO    ] ================================================
[2026-10-25 13:55:56,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:55:56
[2026-10-25 13:55:57,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:55:57,342.342 INFO    ] Initializing speech engine...
[2026-10-25 13:55:57,352.352 INFO    ] 2026-10-25 13:55:57
[2026-10-25 13:55:57,636.636 INFO    ] 2026-10-25 13:55:57
[2026-10-25 13:55:57,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:55:57,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:55:57,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:55:58,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:55:58,113.113 INFO    ] time= 25/10/2026 13:55:58
[2026-10-25 13:55:58,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:55:58,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:55:58,314.314 INFO    ] No existing commands found in stream
[2026-10-25 13:56:03,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:56:03,343.343 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 13:56:06,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:56:06,983.983 INFO    ] Checking for system updates...
[2026-10-25 13:56:07,021.021 INFO    ] 200
[2026-10-25 13:56:07,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:07,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:56:07,081.081 INFO    ] No update needed
[2026-10-25 13:56:07,084.084 INFO    ] Checking for camera pi updates...
[2026-10-25 13:56:07,119.119 INFO    ] 200
[2026-10-25 13:56:07,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:07,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:56:07,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:56:07,322.322 INFO    ] No camera update needed
[2026-10-25 13:56:07,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:56:07,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:56:07,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:56:07,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:56:09,380.380 INFO    ] ================================================
[2026-10-25 13:56:09,396.396 INFO    ] Launching Daemon at Sun Oct 25 13:56:09 IST 2026
[2026-10-25 13:56:09,406.406 INFO    ] ================================================
[2026-10-25 13:56:09,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:56:09
[2026-10-25 13:56:10,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:56:10,936.936 INFO    ] Initializing speech engine...
[2026-10-25 13:56:10,948.948 INFO    ] 2026-10-25 13:56:10
[2026-10-25 13:56:11,233.233 INFO    ] 2026-10-25 13:56:11
[2026-10-25 13:56:11,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:56:11,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:56:11,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:56:11,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:56:11,784.784 INFO    ] time= 25/10/2026 13:56:11
[2026-10-25 13:56:11,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:56:11,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:56:11,945.945 INFO    ] No existing commands found in stream
[2026-10-25 13:56:16,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:56:16,961.961 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 13:56:22,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:56:22,266.266 INFO    ] Checking for system updates...
[2026-10-25 13:56:22,303.303 INFO    ] 200
[2026-10-25 13:56:22,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:22,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:56:22,360.360 INFO    ] No update needed
[2026-10-25 13:56:22,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 13:56:22,397.397 INFO    ] 200
[2026-10-25 13:56:22,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:22,445.445 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:56:22,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:56:22,501.501 INFO    ] No camera update needed
[2026-10-25 13:56:22,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:56:22,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:56:22,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:56:22,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:56:24,555.555 INFO    ] ================================================
[2026-10-25 13:56:24,571.571 INFO    ] Launching Daemon at Sun Oct 25 13:56:24 IST 2026
[2026-10-25 13:56:24,588.588 INFO    ] ================================================
[2026-10-25 13:56:25,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:56:25
[2026-10-25 13:56:25,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:56:26,049.049 INFO    ] Initializing speech engine...
[2026-10-25 13:56:26,056.056 INFO    ] 2026-10-25 13:56:26
[2026-10-25 13:56:26,302.302 INFO    ] 2026-10-25 13:56:26
[2026-10-25 13:56:26,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:56:26,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:56:26,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:56:26,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:56:26,673.673 INFO    ] time= 25/10/2026 13:56:26
[2026-10-25 13:56:26,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:56:26,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:56:26,847.847 INFO    ] No existing commands found in stream
[2026-10-25 13:56:31,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:56:31,876.876 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 13:56:32,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:56:32,442.442 INFO    ] Checking for system updates...
[2026-10-25 13:56:32,482.482 INFO    ] 200
[2026-10-25 13:56:32,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:32,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:56:32,549.549 INFO    ] No update needed
[2026-10-25 13:56:32,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 13:56:32,588.588 INFO    ] 200
[2026-10-25 13:56:32,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:32,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:56:32,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:56:32,699.699 INFO    ] No camera update needed
[2026-10-25 13:56:32,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:56:32,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:56:32,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:56:32,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:56:34,769.769 INFO    ] ================================================
[2026-10-25 13:56:34,785.785 INFO    ] Launching Daemon at Sun Oct 25 13:56:34 IST 2026
[2026-10-25 13:56:34,796.796 INFO    ] ================================================
[2026-10-25 13:56:35,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:56:35
[2026-10-25 13:56:36,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:56:36,302.302 INFO    ] Initializing speech engine...
[2026-10-25 13:56:36,310.310 INFO    ] 2026-10-25 13:56:36
[2026-10-25 13:56:36,609.609 INFO    ] 2026-10-25 13:56:36
[2026-10-25 13:56:36,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:56:36,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:56:36,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:56:36,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:56:36,994.994 INFO    ] time= 25/10/2026 13:56:36
[2026-10-25 13:56:37,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:56:37,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:56:37,178.178 INFO    ] No existing commands found in stream
[2026-10-25 13:56:42,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:56:42,206.206 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 13:56:45,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:56:45,060.060 INFO    ] Checking for system updates...
[2026-10-25 13:56:45,097.097 INFO    ] 200
[2026-10-25 13:56:45,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:45,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:56:45,155.155 INFO    ] No update needed
[2026-10-25 13:56:45,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 13:56:45,191.191 INFO    ] 200
[2026-10-25 13:56:45,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:56:45,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:56:45,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:56:45,284.284 INFO    ] No camera update needed
[2026-10-25 13:56:45,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:56:45,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:56:45,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:56:45,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:56:47,346.346 INFO    ] ================================================
[2026-10-25 13:56:47,362.362 INFO    ] Launching Daemon at Sun Oct 25 13:56:47 IST 2026
[2026-10-25 13:56:47,373.373 INFO    ] ================================================
[2026-10-25 13:56:47,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:56:47
[2026-10-25 13:56:48,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:56:48,783.783 INFO    ] Initializing speech engine...
[2026-10-25 13:56:48,806.806 INFO    ] 2026-10-25 13:56:48
[2026-10-25 13:56:49,061.061 INFO    ] 2026-10-25 13:56:49
[2026-10-25 13:56:49,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:56:52,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:56:52,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:56:53,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:56:53,248.248 INFO    ] time= 25/10/2026 13:56:53
[2026-10-25 13:56:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:56:53,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:56:53,309.309 INFO    ] No existing commands found in stream
[2026-10-25 13:56:58,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:56:58,323.323 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 13:57:00,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:57:00,300.300 INFO    ] Checking for system updates...
[2026-10-25 13:57:00,337.337 INFO    ] 200
[2026-10-25 13:57:00,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:00,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:00,409.409 INFO    ] No update needed
[2026-10-25 13:57:00,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 13:57:00,445.445 INFO    ] 200
[2026-10-25 13:57:00,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:00,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:57:00,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:00,542.542 INFO    ] No camera update needed
[2026-10-25 13:57:00,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:57:00,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:57:00,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:57:00,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:57:02,607.607 INFO    ] ================================================
[2026-10-25 13:57:02,627.627 INFO    ] Launching Daemon at Sun Oct 25 13:57:02 IST 2026
[2026-10-25 13:57:02,643.643 INFO    ] ================================================
[2026-10-25 13:57:03,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:57:03
[2026-10-25 13:57:03,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:57:04,161.161 INFO    ] Initializing speech engine...
[2026-10-25 13:57:04,167.167 INFO    ] 2026-10-25 13:57:04
[2026-10-25 13:57:04,463.463 INFO    ] 2026-10-25 13:57:04
[2026-10-25 13:57:04,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:57:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:57:04,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:57:04,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:57:04,890.890 INFO    ] time= 25/10/2026 13:57:04
[2026-10-25 13:57:04,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:57:04,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:57:05,056.056 INFO    ] No existing commands found in stream
[2026-10-25 13:57:10,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:57:10,084.084 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 13:57:14,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:57:14,703.703 INFO    ] Checking for system updates...
[2026-10-25 13:57:14,739.739 INFO    ] 200
[2026-10-25 13:57:14,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:14,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:14,802.802 INFO    ] No update needed
[2026-10-25 13:57:14,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 13:57:14,843.843 INFO    ] 200
[2026-10-25 13:57:14,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:14,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:57:14,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:14,943.943 INFO    ] No camera update needed
[2026-10-25 13:57:14,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:57:14,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:57:14,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:57:14,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:57:17,999.999 INFO    ] ================================================
[2026-10-25 13:57:17,014.014 INFO    ] Launching Daemon at Sun Oct 25 13:57:17 IST 2026
[2026-10-25 13:57:17,025.025 INFO    ] ================================================
[2026-10-25 13:57:17,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:57:17
[2026-10-25 13:57:18,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:57:18,493.493 INFO    ] Initializing speech engine...
[2026-10-25 13:57:18,513.513 INFO    ] 2026-10-25 13:57:18
[2026-10-25 13:57:18,764.764 INFO    ] 2026-10-25 13:57:18
[2026-10-25 13:57:18,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:57:18,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:57:18,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:57:19,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:57:19,138.138 INFO    ] time= 25/10/2026 13:57:19
[2026-10-25 13:57:19,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:57:19,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:57:19,312.312 INFO    ] No existing commands found in stream
[2026-10-25 13:57:24,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:57:24,340.340 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 13:57:25,027.027 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:57:25,029.029 INFO    ] Checking for system updates...
[2026-10-25 13:57:25,069.069 INFO    ] 200
[2026-10-25 13:57:25,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:25,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:25,140.140 INFO    ] No update needed
[2026-10-25 13:57:25,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 13:57:25,180.180 INFO    ] 200
[2026-10-25 13:57:25,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:25,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:57:25,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:57:25,275.275 INFO    ] No camera update needed
[2026-10-25 13:57:25,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:57:25,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:57:25,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:57:25,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:57:27,332.332 INFO    ] ================================================
[2026-10-25 13:57:27,348.348 INFO    ] Launching Daemon at Sun Oct 25 13:57:27 IST 2026
[2026-10-25 13:57:27,359.359 INFO    ] ================================================
[2026-10-25 13:57:27,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:57:27
[2026-10-25 13:57:28,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:57:28,774.774 INFO    ] Initializing speech engine...
[2026-10-25 13:57:28,783.783 INFO    ] 2026-10-25 13:57:28
[2026-10-25 13:57:29,029.029 INFO    ] 2026-10-25 13:57:29
[2026-10-25 13:57:29,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:57:29,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:57:29,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:57:29,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:57:29,513.513 INFO    ] time= 25/10/2026 13:57:29
[2026-10-25 13:57:29,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:57:29,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:57:29,659.659 INFO    ] No existing commands found in stream
[2026-10-25 13:57:34,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:57:34,698.698 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 13:57:36,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:57:36,021.021 INFO    ] Checking for system updates...
[2026-10-25 13:57:36,061.061 INFO    ] 200
[2026-10-25 13:57:36,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:36,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:57:36,137.137 INFO    ] No update needed
[2026-10-25 13:57:36,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 13:57:36,177.177 INFO    ] 200
[2026-10-25 13:57:36,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:36,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:57:36,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:57:36,281.281 INFO    ] No camera update needed
[2026-10-25 13:57:36,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:57:36,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:57:36,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:57:36,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:57:38,337.337 INFO    ] ================================================
[2026-10-25 13:57:38,352.352 INFO    ] Launching Daemon at Sun Oct 25 13:57:38 IST 2026
[2026-10-25 13:57:38,369.369 INFO    ] ================================================
[2026-10-25 13:57:38,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:57:38
[2026-10-25 13:57:39,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:57:39,822.822 INFO    ] Initializing speech engine...
[2026-10-25 13:57:39,827.827 INFO    ] 2026-10-25 13:57:39
[2026-10-25 13:57:40,074.074 INFO    ] 2026-10-25 13:57:40
[2026-10-25 13:57:40,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:57:40,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:57:40,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:57:40,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:57:40,543.543 INFO    ] time= 25/10/2026 13:57:40
[2026-10-25 13:57:40,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:57:40,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:57:40,750.750 INFO    ] No existing commands found in stream
[2026-10-25 13:57:45,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:57:45,781.781 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 13:57:48,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:57:48,416.416 INFO    ] Checking for system updates...
[2026-10-25 13:57:48,453.453 INFO    ] 200
[2026-10-25 13:57:48,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:48,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:57:48,519.519 INFO    ] No update needed
[2026-10-25 13:57:48,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 13:57:48,555.555 INFO    ] 200
[2026-10-25 13:57:48,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:57:48,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:57:48,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:57:48,654.654 INFO    ] No camera update needed
[2026-10-25 13:57:48,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:57:48,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:57:48,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:57:48,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:57:50,711.711 INFO    ] ================================================
[2026-10-25 13:57:50,727.727 INFO    ] Launching Daemon at Sun Oct 25 13:57:50 IST 2026
[2026-10-25 13:57:50,738.738 INFO    ] ================================================
[2026-10-25 13:57:51,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:57:51
[2026-10-25 13:57:51,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:57:52,158.158 INFO    ] Initializing speech engine...
[2026-10-25 13:57:52,164.164 INFO    ] 2026-10-25 13:57:52
[2026-10-25 13:57:52,407.407 INFO    ] 2026-10-25 13:57:52
[2026-10-25 13:57:52,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:57:55,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:57:55,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:57:55,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:57:55,358.358 INFO    ] time= 25/10/2026 13:57:55
[2026-10-25 13:57:55,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:57:55,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:57:55,415.415 INFO    ] No existing commands found in stream
[2026-10-25 13:58:00,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:58:00,427.427 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 13:58:02,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:58:02,951.951 INFO    ] Checking for system updates...
[2026-10-25 13:58:02,999.999 INFO    ] 200
[2026-10-25 13:58:03,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:03,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:03,075.075 INFO    ] No update needed
[2026-10-25 13:58:03,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 13:58:03,112.112 INFO    ] 200
[2026-10-25 13:58:03,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:03,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:58:03,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:03,188.188 INFO    ] No camera update needed
[2026-10-25 13:58:03,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:58:03,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:58:03,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:58:03,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:58:05,243.243 INFO    ] ================================================
[2026-10-25 13:58:05,259.259 INFO    ] Launching Daemon at Sun Oct 25 13:58:05 IST 2026
[2026-10-25 13:58:05,270.270 INFO    ] ================================================
[2026-10-25 13:58:05,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:58:05
[2026-10-25 13:58:06,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:58:06,691.691 INFO    ] Initializing speech engine...
[2026-10-25 13:58:06,700.700 INFO    ] 2026-10-25 13:58:06
[2026-10-25 13:58:06,948.948 INFO    ] 2026-10-25 13:58:06
[2026-10-25 13:58:06,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:58:07,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:58:07,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:58:07,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:58:07,324.324 INFO    ] time= 25/10/2026 13:58:07
[2026-10-25 13:58:07,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:58:07,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:58:07,499.499 INFO    ] No existing commands found in stream
[2026-10-25 13:58:12,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:58:12,532.532 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 13:58:15,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 13:58:15,452.452 INFO    ] Checking for system updates...
[2026-10-25 13:58:15,493.493 INFO    ] 200
[2026-10-25 13:58:15,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:15,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:58:15,559.559 INFO    ] No update needed
[2026-10-25 13:58:15,561.561 INFO    ] Checking for camera pi updates...
[2026-10-25 13:58:15,596.596 INFO    ] 200
[2026-10-25 13:58:15,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:15,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:58:15,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:58:15,803.803 INFO    ] No camera update needed
[2026-10-25 13:58:15,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:58:15,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:58:15,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:58:15,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:58:17,861.861 INFO    ] ================================================
[2026-10-25 13:58:17,877.877 INFO    ] Launching Daemon at Sun Oct 25 13:58:17 IST 2026
[2026-10-25 13:58:17,889.889 INFO    ] ================================================
[2026-10-25 13:58:18,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:58:18
[2026-10-25 13:58:19,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:58:19,356.356 INFO    ] Initializing speech engine...
[2026-10-25 13:58:19,363.363 INFO    ] 2026-10-25 13:58:19
[2026-10-25 13:58:19,621.621 INFO    ] 2026-10-25 13:58:19
[2026-10-25 13:58:19,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:58:19,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:58:19,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:58:20,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:58:20,084.084 INFO    ] time= 25/10/2026 13:58:20
[2026-10-25 13:58:20,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:58:20,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:58:20,277.277 INFO    ] No existing commands found in stream
[2026-10-25 13:58:25,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:58:25,311.311 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 13:58:28,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:58:28,638.638 INFO    ] Checking for system updates...
[2026-10-25 13:58:28,679.679 INFO    ] 200
[2026-10-25 13:58:28,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:28,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:28,737.737 INFO    ] No update needed
[2026-10-25 13:58:28,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 13:58:28,778.778 INFO    ] 200
[2026-10-25 13:58:28,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:28,822.822 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:58:28,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:28,884.884 INFO    ] No camera update needed
[2026-10-25 13:58:28,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:58:28,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:58:28,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:58:28,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:58:30,940.940 INFO    ] ================================================
[2026-10-25 13:58:30,956.956 INFO    ] Launching Daemon at Sun Oct 25 13:58:30 IST 2026
[2026-10-25 13:58:30,967.967 INFO    ] ================================================
[2026-10-25 13:58:31,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:58:31
[2026-10-25 13:58:32,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:58:32,427.427 INFO    ] Initializing speech engine...
[2026-10-25 13:58:32,451.451 INFO    ] 2026-10-25 13:58:32
[2026-10-25 13:58:32,723.723 INFO    ] 2026-10-25 13:58:32
[2026-10-25 13:58:32,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:58:32,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:58:32,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:58:33,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:58:33,119.119 INFO    ] time= 25/10/2026 13:58:33
[2026-10-25 13:58:33,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:58:33,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:58:33,281.281 INFO    ] No existing commands found in stream
[2026-10-25 13:58:38,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:58:38,309.309 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 13:58:42,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 13:58:42,347.347 INFO    ] Checking for system updates...
[2026-10-25 13:58:42,388.388 INFO    ] 200
[2026-10-25 13:58:42,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:42,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:42,453.453 INFO    ] No update needed
[2026-10-25 13:58:42,455.455 INFO    ] Checking for camera pi updates...
[2026-10-25 13:58:42,489.489 INFO    ] 200
[2026-10-25 13:58:42,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:42,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:58:42,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:42,596.596 INFO    ] No camera update needed
[2026-10-25 13:58:42,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:58:42,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:58:42,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:58:42,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:58:44,652.652 INFO    ] ================================================
[2026-10-25 13:58:44,668.668 INFO    ] Launching Daemon at Sun Oct 25 13:58:44 IST 2026
[2026-10-25 13:58:44,679.679 INFO    ] ================================================
[2026-10-25 13:58:45,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:58:45
[2026-10-25 13:58:45,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:58:46,115.115 INFO    ] Initializing speech engine...
[2026-10-25 13:58:46,121.121 INFO    ] 2026-10-25 13:58:46
[2026-10-25 13:58:46,394.394 INFO    ] 2026-10-25 13:58:46
[2026-10-25 13:58:46,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:58:46,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:58:46,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:58:46,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:58:46,879.879 INFO    ] time= 25/10/2026 13:58:46
[2026-10-25 13:58:46,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:58:46,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:58:46,992.992 INFO    ] No existing commands found in stream
[2026-10-25 13:58:52,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:58:52,005.005 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 13:58:57,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 13:58:57,548.548 INFO    ] Checking for system updates...
[2026-10-25 13:58:57,585.585 INFO    ] 200
[2026-10-25 13:58:57,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:57,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:57,651.651 INFO    ] No update needed
[2026-10-25 13:58:57,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 13:58:57,692.692 INFO    ] 200
[2026-10-25 13:58:57,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:58:57,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:58:57,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 13:58:57,796.796 INFO    ] No camera update needed
[2026-10-25 13:58:57,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:58:57,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:58:57,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:58:57,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:58:59,852.852 INFO    ] ================================================
[2026-10-25 13:58:59,868.868 INFO    ] Launching Daemon at Sun Oct 25 13:58:59 IST 2026
[2026-10-25 13:58:59,879.879 INFO    ] ================================================
[2026-10-25 13:59:00,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:59:00
[2026-10-25 13:59:01,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:59:01,382.382 INFO    ] Initializing speech engine...
[2026-10-25 13:59:01,391.391 INFO    ] 2026-10-25 13:59:01
[2026-10-25 13:59:01,795.795 INFO    ] 2026-10-25 13:59:01
[2026-10-25 13:59:01,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:59:02,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:59:02,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:59:02,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:59:02,456.456 INFO    ] time= 25/10/2026 13:59:02
[2026-10-25 13:59:02,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:59:02,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:59:02,577.577 INFO    ] No existing commands found in stream
[2026-10-25 13:59:07,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:59:07,590.590 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 13:59:11,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 13:59:11,204.204 INFO    ] Checking for system updates...
[2026-10-25 13:59:11,250.250 INFO    ] 200
[2026-10-25 13:59:11,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:11,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:11,322.322 INFO    ] No update needed
[2026-10-25 13:59:11,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 13:59:11,362.362 INFO    ] 200
[2026-10-25 13:59:11,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:11,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:59:11,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:11,493.493 INFO    ] No camera update needed
[2026-10-25 13:59:11,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:59:11,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:59:11,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:59:11,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:59:13,548.548 INFO    ] ================================================
[2026-10-25 13:59:13,563.563 INFO    ] Launching Daemon at Sun Oct 25 13:59:13 IST 2026
[2026-10-25 13:59:13,574.574 INFO    ] ================================================
[2026-10-25 13:59:14,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:59:14
[2026-10-25 13:59:14,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:59:15,023.023 INFO    ] Initializing speech engine...
[2026-10-25 13:59:15,033.033 INFO    ] 2026-10-25 13:59:15
[2026-10-25 13:59:15,279.279 INFO    ] 2026-10-25 13:59:15
[2026-10-25 13:59:15,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:59:15,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:59:15,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:59:15,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:59:15,728.728 INFO    ] time= 25/10/2026 13:59:15
[2026-10-25 13:59:15,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:59:15,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:59:15,894.894 INFO    ] No existing commands found in stream
[2026-10-25 13:59:20,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:59:20,908.908 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 13:59:23,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:59:23,234.234 INFO    ] Checking for system updates...
[2026-10-25 13:59:23,274.274 INFO    ] 200
[2026-10-25 13:59:23,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:23,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:23,332.332 INFO    ] No update needed
[2026-10-25 13:59:23,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 13:59:23,370.370 INFO    ] 200
[2026-10-25 13:59:23,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:23,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:59:23,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:23,463.463 INFO    ] No camera update needed
[2026-10-25 13:59:23,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:59:23,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:59:23,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:59:23,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:59:25,521.521 INFO    ] ================================================
[2026-10-25 13:59:25,537.537 INFO    ] Launching Daemon at Sun Oct 25 13:59:25 IST 2026
[2026-10-25 13:59:25,548.548 INFO    ] ================================================
[2026-10-25 13:59:26,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:59:26
[2026-10-25 13:59:26,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:59:27,192.192 INFO    ] Initializing speech engine...
[2026-10-25 13:59:27,205.205 INFO    ] 2026-10-25 13:59:27
[2026-10-25 13:59:27,490.490 INFO    ] 2026-10-25 13:59:27
[2026-10-25 13:59:27,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:59:28,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:59:28,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:59:28,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:59:28,717.717 INFO    ] time= 25/10/2026 13:59:28
[2026-10-25 13:59:28,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:59:28,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:59:28,841.841 INFO    ] No existing commands found in stream
[2026-10-25 13:59:33,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:59:33,876.876 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 13:59:37,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 13:59:37,228.228 INFO    ] Checking for system updates...
[2026-10-25 13:59:37,270.270 INFO    ] 200
[2026-10-25 13:59:37,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:37,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:37,338.338 INFO    ] No update needed
[2026-10-25 13:59:37,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 13:59:37,377.377 INFO    ] 200
[2026-10-25 13:59:37,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:37,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:59:37,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:37,527.527 INFO    ] No camera update needed
[2026-10-25 13:59:37,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:59:37,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:59:37,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:59:37,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:59:39,584.584 INFO    ] ================================================
[2026-10-25 13:59:39,600.600 INFO    ] Launching Daemon at Sun Oct 25 13:59:39 IST 2026
[2026-10-25 13:59:39,611.611 INFO    ] ================================================
[2026-10-25 13:59:40,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:59:40
[2026-10-25 13:59:40,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:59:41,026.026 INFO    ] Initializing speech engine...
[2026-10-25 13:59:41,035.035 INFO    ] 2026-10-25 13:59:41
[2026-10-25 13:59:41,331.331 INFO    ] 2026-10-25 13:59:41
[2026-10-25 13:59:41,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:59:41,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:59:41,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:59:41,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:59:41,732.732 INFO    ] time= 25/10/2026 13:59:41
[2026-10-25 13:59:41,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:59:41,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:59:41,841.841 INFO    ] No existing commands found in stream
[2026-10-25 13:59:46,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 13:59:46,856.856 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 13:59:50,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 13:59:50,045.045 INFO    ] Checking for system updates...
[2026-10-25 13:59:50,414.414 INFO    ] 200
[2026-10-25 13:59:50,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:50,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:50,473.473 INFO    ] No update needed
[2026-10-25 13:59:50,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 13:59:50,509.509 INFO    ] 200
[2026-10-25 13:59:50,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 13:59:50,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 13:59:50,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 13:59:50,605.605 INFO    ] No camera update needed
[2026-10-25 13:59:50,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 13:59:50,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 13:59:50,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 13:59:50,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 13:59:52,660.660 INFO    ] ================================================
[2026-10-25 13:59:52,676.676 INFO    ] Launching Daemon at Sun Oct 25 13:59:52 IST 2026
[2026-10-25 13:59:52,687.687 INFO    ] ================================================
[2026-10-25 13:59:53,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 13:59:53
[2026-10-25 13:59:53,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 13:59:54,181.181 INFO    ] Initializing speech engine...
[2026-10-25 13:59:54,192.192 INFO    ] 2026-10-25 13:59:54
[2026-10-25 13:59:54,464.464 INFO    ] 2026-10-25 13:59:54
[2026-10-25 13:59:54,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 13:59:54,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 13:59:54,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 13:59:54,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 13:59:54,933.933 INFO    ] time= 25/10/2026 13:59:54
[2026-10-25 13:59:54,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 13:59:55,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 13:59:55,094.094 INFO    ] No existing commands found in stream
[2026-10-25 14:00:00,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:00,110.110 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 14:00:01,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:00:01,491.491 INFO    ] Checking for system updates...
[2026-10-25 14:00:01,535.535 INFO    ] 200
[2026-10-25 14:00:01,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:01,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:01,605.605 INFO    ] No update needed
[2026-10-25 14:00:01,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 14:00:01,643.643 INFO    ] 200
[2026-10-25 14:00:01,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:01,729.729 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:00:01,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:01,991.991 INFO    ] No camera update needed
[2026-10-25 14:00:02,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:00:02,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:00:02,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:00:02,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:00:04,277.277 INFO    ] ================================================
[2026-10-25 14:00:04,364.364 INFO    ] Launching Daemon at Sun Oct 25 14:00:04 IST 2026
[2026-10-25 14:00:04,409.409 INFO    ] ================================================
[2026-10-25 14:00:06,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:00:06
[2026-10-25 14:00:06,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:00:07,173.173 INFO    ] Initializing speech engine...
[2026-10-25 14:00:07,184.184 INFO    ] 2026-10-25 14:00:07
[2026-10-25 14:00:07,472.472 INFO    ] 2026-10-25 14:00:07
[2026-10-25 14:00:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:00:07,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:00:07,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:00:07,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:00:07,932.932 INFO    ] time= 25/10/2026 14:00:07
[2026-10-25 14:00:07,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:00:08,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:00:08,099.099 INFO    ] No existing commands found in stream
[2026-10-25 14:00:13,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:13,142.142 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 14:00:14,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:00:14,036.036 INFO    ] Checking for system updates...
[2026-10-25 14:00:14,074.074 INFO    ] 200
[2026-10-25 14:00:14,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:14,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:00:14,141.141 INFO    ] No update needed
[2026-10-25 14:00:14,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 14:00:14,182.182 INFO    ] 200
[2026-10-25 14:00:14,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:14,227.227 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:00:14,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:00:14,279.279 INFO    ] No camera update needed
[2026-10-25 14:00:14,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:00:14,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:00:14,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:00:14,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:00:16,336.336 INFO    ] ================================================
[2026-10-25 14:00:16,357.357 INFO    ] Launching Daemon at Sun Oct 25 14:00:16 IST 2026
[2026-10-25 14:00:16,373.373 INFO    ] ================================================
[2026-10-25 14:00:16,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:00:16
[2026-10-25 14:00:17,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:00:17,809.809 INFO    ] Initializing speech engine...
[2026-10-25 14:00:17,818.818 INFO    ] 2026-10-25 14:00:17
[2026-10-25 14:00:18,084.084 INFO    ] 2026-10-25 14:00:18
[2026-10-25 14:00:18,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:00:18,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:00:18,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:00:18,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:00:18,506.506 INFO    ] time= 25/10/2026 14:00:18
[2026-10-25 14:00:18,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:00:18,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:00:18,678.678 INFO    ] No existing commands found in stream
[2026-10-25 14:00:23,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:23,700.700 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 14:00:25,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:00:25,998.998 INFO    ] Checking for system updates...
[2026-10-25 14:00:26,034.034 INFO    ] 200
[2026-10-25 14:00:26,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:26,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:26,099.099 INFO    ] No update needed
[2026-10-25 14:00:26,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 14:00:26,134.134 INFO    ] 200
[2026-10-25 14:00:26,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:26,177.177 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:00:26,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:26,347.347 INFO    ] No camera update needed
[2026-10-25 14:00:26,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:00:26,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:00:26,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:00:26,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:00:28,406.406 INFO    ] ================================================
[2026-10-25 14:00:28,421.421 INFO    ] Launching Daemon at Sun Oct 25 14:00:28 IST 2026
[2026-10-25 14:00:28,432.432 INFO    ] ================================================
[2026-10-25 14:00:29,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:00:29
[2026-10-25 14:00:29,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:00:29,845.845 INFO    ] Initializing speech engine...
[2026-10-25 14:00:29,867.867 INFO    ] 2026-10-25 14:00:29
[2026-10-25 14:00:30,125.125 INFO    ] 2026-10-25 14:00:30
[2026-10-25 14:00:30,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:00:30,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:00:30,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:00:30,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:00:30,749.749 INFO    ] time= 25/10/2026 14:00:30
[2026-10-25 14:00:30,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:00:30,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:00:30,956.956 INFO    ] No existing commands found in stream
[2026-10-25 14:00:35,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:35,969.969 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 14:00:38,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:00:38,324.324 INFO    ] Checking for system updates...
[2026-10-25 14:00:38,360.360 INFO    ] 200
[2026-10-25 14:00:38,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:38,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:00:38,419.419 INFO    ] No update needed
[2026-10-25 14:00:38,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 14:00:38,459.459 INFO    ] 200
[2026-10-25 14:00:38,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:38,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:00:38,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:00:38,543.543 INFO    ] No camera update needed
[2026-10-25 14:00:38,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:00:38,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:00:38,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:00:38,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:00:40,599.599 INFO    ] ================================================
[2026-10-25 14:00:40,614.614 INFO    ] Launching Daemon at Sun Oct 25 14:00:40 IST 2026
[2026-10-25 14:00:40,624.624 INFO    ] ================================================
[2026-10-25 14:00:41,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:00:41
[2026-10-25 14:00:41,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:00:42,222.222 INFO    ] Initializing speech engine...
[2026-10-25 14:00:42,229.229 INFO    ] 2026-10-25 14:00:42
[2026-10-25 14:00:42,514.514 INFO    ] 2026-10-25 14:00:42
[2026-10-25 14:00:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:00:42,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:00:42,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:00:43,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:00:43,062.062 INFO    ] time= 25/10/2026 14:00:43
[2026-10-25 14:00:43,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:00:43,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:00:43,194.194 INFO    ] No existing commands found in stream
[2026-10-25 14:00:48,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:48,223.223 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 14:00:48,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:00:48,801.801 INFO    ] Checking for system updates...
[2026-10-25 14:00:48,839.839 INFO    ] 200
[2026-10-25 14:00:48,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:48,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:48,898.898 INFO    ] No update needed
[2026-10-25 14:00:48,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 14:00:48,936.936 INFO    ] 200
[2026-10-25 14:00:48,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:00:48,981.981 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:00:49,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:00:49,037.037 INFO    ] No camera update needed
[2026-10-25 14:00:49,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:00:49,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:00:49,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:00:49,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:00:51,096.096 INFO    ] ================================================
[2026-10-25 14:00:51,112.112 INFO    ] Launching Daemon at Sun Oct 25 14:00:51 IST 2026
[2026-10-25 14:00:51,123.123 INFO    ] ================================================
[2026-10-25 14:00:51,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:00:51
[2026-10-25 14:00:52,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:00:52,536.536 INFO    ] Initializing speech engine...
[2026-10-25 14:00:52,542.542 INFO    ] 2026-10-25 14:00:52
[2026-10-25 14:00:52,833.833 INFO    ] 2026-10-25 14:00:52
[2026-10-25 14:00:52,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:00:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:00:53,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:00:53,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:00:53,242.242 INFO    ] time= 25/10/2026 14:00:53
[2026-10-25 14:00:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:00:53,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:00:53,329.329 INFO    ] No existing commands found in stream
[2026-10-25 14:00:58,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:00:58,345.345 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 14:01:02,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:01:02,168.168 INFO    ] Checking for system updates...
[2026-10-25 14:01:02,249.249 INFO    ] 200
[2026-10-25 14:01:02,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:02,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:01:02,411.411 INFO    ] No update needed
[2026-10-25 14:01:02,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 14:01:02,460.460 INFO    ] 200
[2026-10-25 14:01:02,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:02,515.515 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:01:02,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:01:02,550.550 INFO    ] No camera update needed
[2026-10-25 14:01:02,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:01:02,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:01:02,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:01:02,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:01:04,612.612 INFO    ] ================================================
[2026-10-25 14:01:04,626.626 INFO    ] Launching Daemon at Sun Oct 25 14:01:04 IST 2026
[2026-10-25 14:01:04,637.637 INFO    ] ================================================
[2026-10-25 14:01:05,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:01:05
[2026-10-25 14:01:05,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:01:06,226.226 INFO    ] Initializing speech engine...
[2026-10-25 14:01:06,235.235 INFO    ] 2026-10-25 14:01:06
[2026-10-25 14:01:06,484.484 INFO    ] 2026-10-25 14:01:06
[2026-10-25 14:01:06,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:01:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:01:06,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:01:06,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:01:06,854.854 INFO    ] time= 25/10/2026 14:01:06
[2026-10-25 14:01:06,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:01:06,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:01:06,977.977 INFO    ] No existing commands found in stream
[2026-10-25 14:01:11,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:01:11,992.992 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 14:01:13,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:01:13,985.985 INFO    ] Checking for system updates...
[2026-10-25 14:01:14,022.022 INFO    ] 200
[2026-10-25 14:01:14,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:14,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:14,121.121 INFO    ] No update needed
[2026-10-25 14:01:14,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 14:01:14,158.158 INFO    ] 200
[2026-10-25 14:01:14,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:14,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:01:14,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:14,264.264 INFO    ] No camera update needed
[2026-10-25 14:01:14,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:01:14,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:01:14,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:01:14,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:01:16,319.319 INFO    ] ================================================
[2026-10-25 14:01:16,334.334 INFO    ] Launching Daemon at Sun Oct 25 14:01:16 IST 2026
[2026-10-25 14:01:16,345.345 INFO    ] ================================================
[2026-10-25 14:01:16,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:01:16
[2026-10-25 14:01:17,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:01:17,791.791 INFO    ] Initializing speech engine...
[2026-10-25 14:01:17,799.799 INFO    ] 2026-10-25 14:01:17
[2026-10-25 14:01:18,048.048 INFO    ] 2026-10-25 14:01:18
[2026-10-25 14:01:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:01:18,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:01:18,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:01:18,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:01:18,599.599 INFO    ] time= 25/10/2026 14:01:18
[2026-10-25 14:01:18,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:01:18,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:01:18,724.724 INFO    ] No existing commands found in stream
[2026-10-25 14:01:23,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:01:23,757.757 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 14:01:27,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:01:27,987.987 INFO    ] Checking for system updates...
[2026-10-25 14:01:28,023.023 INFO    ] 200
[2026-10-25 14:01:28,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:28,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:01:28,081.081 INFO    ] No update needed
[2026-10-25 14:01:28,084.084 INFO    ] Checking for camera pi updates...
[2026-10-25 14:01:28,118.118 INFO    ] 200
[2026-10-25 14:01:28,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:28,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:01:28,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:01:28,220.220 INFO    ] No camera update needed
[2026-10-25 14:01:28,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:01:28,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:01:28,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:01:28,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:01:30,274.274 INFO    ] ================================================
[2026-10-25 14:01:30,290.290 INFO    ] Launching Daemon at Sun Oct 25 14:01:30 IST 2026
[2026-10-25 14:01:30,300.300 INFO    ] ================================================
[2026-10-25 14:01:30,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:01:30
[2026-10-25 14:01:31,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:01:31,720.720 INFO    ] Initializing speech engine...
[2026-10-25 14:01:31,746.746 INFO    ] 2026-10-25 14:01:31
[2026-10-25 14:01:32,005.005 INFO    ] 2026-10-25 14:01:31
[2026-10-25 14:01:32,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:01:32,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:01:32,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:01:32,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:01:32,948.948 INFO    ] time= 25/10/2026 14:01:32
[2026-10-25 14:01:32,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:01:33,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:01:33,184.184 INFO    ] No existing commands found in stream
[2026-10-25 14:01:38,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:01:38,218.218 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 14:01:40,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:01:40,402.402 INFO    ] Checking for system updates...
[2026-10-25 14:01:40,444.444 INFO    ] 200
[2026-10-25 14:01:40,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:40,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:40,526.526 INFO    ] No update needed
[2026-10-25 14:01:40,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 14:01:40,606.606 INFO    ] 200
[2026-10-25 14:01:40,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:40,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:01:40,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:40,711.711 INFO    ] No camera update needed
[2026-10-25 14:01:40,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:01:40,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:01:40,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:01:40,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:01:42,770.770 INFO    ] ================================================
[2026-10-25 14:01:42,785.785 INFO    ] Launching Daemon at Sun Oct 25 14:01:42 IST 2026
[2026-10-25 14:01:42,795.795 INFO    ] ================================================
[2026-10-25 14:01:43,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:01:43
[2026-10-25 14:01:43,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:01:44,274.274 INFO    ] Initializing speech engine...
[2026-10-25 14:01:44,287.287 INFO    ] 2026-10-25 14:01:44
[2026-10-25 14:01:44,553.553 INFO    ] 2026-10-25 14:01:44
[2026-10-25 14:01:44,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:01:44,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:01:44,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:01:44,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:01:45,050.050 INFO    ] time= 25/10/2026 14:01:45
[2026-10-25 14:01:45,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:01:45,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:01:45,213.213 INFO    ] No existing commands found in stream
[2026-10-25 14:01:50,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:01:50,254.254 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 14:01:52,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:01:52,164.164 INFO    ] Checking for system updates...
[2026-10-25 14:01:52,206.206 INFO    ] 200
[2026-10-25 14:01:52,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:52,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:52,265.265 INFO    ] No update needed
[2026-10-25 14:01:52,267.267 INFO    ] Checking for camera pi updates...
[2026-10-25 14:01:52,301.301 INFO    ] 200
[2026-10-25 14:01:52,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:01:52,344.344 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:01:52,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:01:52,407.407 INFO    ] No camera update needed
[2026-10-25 14:01:52,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:01:52,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:01:52,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:01:52,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:01:54,461.461 INFO    ] ================================================
[2026-10-25 14:01:54,476.476 INFO    ] Launching Daemon at Sun Oct 25 14:01:54 IST 2026
[2026-10-25 14:01:54,487.487 INFO    ] ================================================
[2026-10-25 14:01:55,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:01:55
[2026-10-25 14:01:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:01:55,894.894 INFO    ] Initializing speech engine...
[2026-10-25 14:01:55,917.917 INFO    ] 2026-10-25 14:01:55
[2026-10-25 14:01:56,171.171 INFO    ] 2026-10-25 14:01:56
[2026-10-25 14:01:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:01:56,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:01:56,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:01:56,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:01:56,621.621 INFO    ] time= 25/10/2026 14:01:56
[2026-10-25 14:01:56,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:01:56,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:01:56,800.800 INFO    ] No existing commands found in stream
[2026-10-25 14:02:01,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:02:01,815.815 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 14:02:06,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:02:06,233.233 INFO    ] Checking for system updates...
[2026-10-25 14:02:06,269.269 INFO    ] 200
[2026-10-25 14:02:06,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:06,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:06,327.327 INFO    ] No update needed
[2026-10-25 14:02:06,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 14:02:06,368.368 INFO    ] 200
[2026-10-25 14:02:06,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:06,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:02:06,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:06,462.462 INFO    ] No camera update needed
[2026-10-25 14:02:06,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:02:06,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:02:06,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:02:06,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:02:08,520.520 INFO    ] ================================================
[2026-10-25 14:02:08,535.535 INFO    ] Launching Daemon at Sun Oct 25 14:02:08 IST 2026
[2026-10-25 14:02:08,546.546 INFO    ] ================================================
[2026-10-25 14:02:09,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:02:09
[2026-10-25 14:02:09,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:02:10,005.005 INFO    ] Initializing speech engine...
[2026-10-25 14:02:10,013.013 INFO    ] 2026-10-25 14:02:10
[2026-10-25 14:02:10,273.273 INFO    ] 2026-10-25 14:02:10
[2026-10-25 14:02:10,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:02:10,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:02:10,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:02:10,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:02:10,759.759 INFO    ] time= 25/10/2026 14:02:10
[2026-10-25 14:02:10,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:02:10,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:02:10,935.935 INFO    ] No existing commands found in stream
[2026-10-25 14:02:15,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:02:15,965.965 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 14:02:20,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:02:20,051.051 INFO    ] Checking for system updates...
[2026-10-25 14:02:20,092.092 INFO    ] 200
[2026-10-25 14:02:20,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:20,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:20,149.149 INFO    ] No update needed
[2026-10-25 14:02:20,152.152 INFO    ] Checking for camera pi updates...
[2026-10-25 14:02:20,187.187 INFO    ] 200
[2026-10-25 14:02:20,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:20,236.236 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:02:20,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:20,289.289 INFO    ] No camera update needed
[2026-10-25 14:02:20,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:02:20,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:02:20,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:02:20,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:02:22,346.346 INFO    ] ================================================
[2026-10-25 14:02:22,363.363 INFO    ] Launching Daemon at Sun Oct 25 14:02:22 IST 2026
[2026-10-25 14:02:22,374.374 INFO    ] ================================================
[2026-10-25 14:02:22,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:02:22
[2026-10-25 14:02:23,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:02:23,783.783 INFO    ] Initializing speech engine...
[2026-10-25 14:02:23,789.789 INFO    ] 2026-10-25 14:02:23
[2026-10-25 14:02:24,086.086 INFO    ] 2026-10-25 14:02:24
[2026-10-25 14:02:24,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:02:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:02:24,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:02:24,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:02:24,472.472 INFO    ] time= 25/10/2026 14:02:24
[2026-10-25 14:02:24,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:02:24,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:02:24,599.599 INFO    ] No existing commands found in stream
[2026-10-25 14:02:29,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:02:29,615.615 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 14:02:36,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:02:36,307.307 INFO    ] Checking for system updates...
[2026-10-25 14:02:36,349.349 INFO    ] 200
[2026-10-25 14:02:36,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:36,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:02:36,418.418 INFO    ] No update needed
[2026-10-25 14:02:36,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 14:02:36,455.455 INFO    ] 200
[2026-10-25 14:02:36,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:36,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:02:36,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:02:36,543.543 INFO    ] No camera update needed
[2026-10-25 14:02:36,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:02:36,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:02:36,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:02:36,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:02:38,605.605 INFO    ] ================================================
[2026-10-25 14:02:38,621.621 INFO    ] Launching Daemon at Sun Oct 25 14:02:38 IST 2026
[2026-10-25 14:02:38,632.632 INFO    ] ================================================
[2026-10-25 14:02:39,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:02:39
[2026-10-25 14:02:39,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:02:40,064.064 INFO    ] Initializing speech engine...
[2026-10-25 14:02:40,073.073 INFO    ] 2026-10-25 14:02:40
[2026-10-25 14:02:40,319.319 INFO    ] 2026-10-25 14:02:40
[2026-10-25 14:02:40,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:02:40,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:02:40,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:02:40,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:02:40,691.691 INFO    ] time= 25/10/2026 14:02:40
[2026-10-25 14:02:40,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:02:40,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:02:40,868.868 INFO    ] No existing commands found in stream
[2026-10-25 14:02:45,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:02:45,901.901 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 14:02:48,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:02:48,469.469 INFO    ] Checking for system updates...
[2026-10-25 14:02:48,506.506 INFO    ] 200
[2026-10-25 14:02:48,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:48,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:48,567.567 INFO    ] No update needed
[2026-10-25 14:02:48,570.570 INFO    ] Checking for camera pi updates...
[2026-10-25 14:02:48,605.605 INFO    ] 200
[2026-10-25 14:02:48,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:02:48,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:02:48,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:02:48,717.717 INFO    ] No camera update needed
[2026-10-25 14:02:48,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:02:48,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:02:48,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:02:48,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:02:50,777.777 INFO    ] ================================================
[2026-10-25 14:02:50,793.793 INFO    ] Launching Daemon at Sun Oct 25 14:02:50 IST 2026
[2026-10-25 14:02:50,804.804 INFO    ] ================================================
[2026-10-25 14:02:51,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:02:51
[2026-10-25 14:02:52,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:02:52,281.281 INFO    ] Initializing speech engine...
[2026-10-25 14:02:52,289.289 INFO    ] 2026-10-25 14:02:52
[2026-10-25 14:02:52,543.543 INFO    ] 2026-10-25 14:02:52
[2026-10-25 14:02:52,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:02:52,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:02:52,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:02:52,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:02:52,977.977 INFO    ] time= 25/10/2026 14:02:52
[2026-10-25 14:02:52,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:02:53,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:02:53,144.144 INFO    ] No existing commands found in stream
[2026-10-25 14:02:58,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:02:58,168.168 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 14:03:04,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:03:04,432.432 INFO    ] Checking for system updates...
[2026-10-25 14:03:04,469.469 INFO    ] 200
[2026-10-25 14:03:04,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:04,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:04,529.529 INFO    ] No update needed
[2026-10-25 14:03:04,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 14:03:04,566.566 INFO    ] 200
[2026-10-25 14:03:04,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:04,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:03:04,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:04,667.667 INFO    ] No camera update needed
[2026-10-25 14:03:04,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:03:04,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:03:04,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:03:04,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:03:06,722.722 INFO    ] ================================================
[2026-10-25 14:03:06,737.737 INFO    ] Launching Daemon at Sun Oct 25 14:03:06 IST 2026
[2026-10-25 14:03:06,748.748 INFO    ] ================================================
[2026-10-25 14:03:07,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:03:07
[2026-10-25 14:03:07,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:03:08,200.200 INFO    ] Initializing speech engine...
[2026-10-25 14:03:08,221.221 INFO    ] 2026-10-25 14:03:08
[2026-10-25 14:03:08,499.499 INFO    ] 2026-10-25 14:03:08
[2026-10-25 14:03:08,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:03:08,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:03:08,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:03:08,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:03:08,895.895 INFO    ] time= 25/10/2026 14:03:08
[2026-10-25 14:03:08,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:03:08,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:03:09,002.002 INFO    ] No existing commands found in stream
[2026-10-25 14:03:14,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:03:14,017.017 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 14:03:15,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:03:15,956.956 INFO    ] Checking for system updates...
[2026-10-25 14:03:15,995.995 INFO    ] 200
[2026-10-25 14:03:15,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:16,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:16,054.054 INFO    ] No update needed
[2026-10-25 14:03:16,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 14:03:16,093.093 INFO    ] 200
[2026-10-25 14:03:16,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:16,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:03:16,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:16,190.190 INFO    ] No camera update needed
[2026-10-25 14:03:16,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:03:16,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:03:16,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:03:16,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:03:18,249.249 INFO    ] ================================================
[2026-10-25 14:03:18,264.264 INFO    ] Launching Daemon at Sun Oct 25 14:03:18 IST 2026
[2026-10-25 14:03:18,276.276 INFO    ] ================================================
[2026-10-25 14:03:18,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:03:18
[2026-10-25 14:03:19,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:03:19,689.689 INFO    ] Initializing speech engine...
[2026-10-25 14:03:19,708.708 INFO    ] 2026-10-25 14:03:19
[2026-10-25 14:03:19,954.954 INFO    ] 2026-10-25 14:03:19
[2026-10-25 14:03:19,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:03:20,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:03:20,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:03:20,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:03:20,319.319 INFO    ] time= 25/10/2026 14:03:20
[2026-10-25 14:03:20,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:03:20,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:03:20,476.476 INFO    ] No existing commands found in stream
[2026-10-25 14:03:25,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:03:25,504.504 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 14:03:26,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:03:26,394.394 INFO    ] Checking for system updates...
[2026-10-25 14:03:26,431.431 INFO    ] 200
[2026-10-25 14:03:26,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:26,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:26,488.488 INFO    ] No update needed
[2026-10-25 14:03:26,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 14:03:26,529.529 INFO    ] 200
[2026-10-25 14:03:26,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:26,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:03:26,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:26,627.627 INFO    ] No camera update needed
[2026-10-25 14:03:26,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:03:26,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:03:26,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:03:26,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:03:28,683.683 INFO    ] ================================================
[2026-10-25 14:03:28,698.698 INFO    ] Launching Daemon at Sun Oct 25 14:03:28 IST 2026
[2026-10-25 14:03:28,709.709 INFO    ] ================================================
[2026-10-25 14:03:29,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:03:29
[2026-10-25 14:03:29,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:03:30,141.141 INFO    ] Initializing speech engine...
[2026-10-25 14:03:30,157.157 INFO    ] 2026-10-25 14:03:30
[2026-10-25 14:03:30,443.443 INFO    ] 2026-10-25 14:03:30
[2026-10-25 14:03:30,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:03:30,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:03:30,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:03:30,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:03:30,820.820 INFO    ] time= 25/10/2026 14:03:30
[2026-10-25 14:03:30,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:03:30,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:03:30,942.942 INFO    ] No existing commands found in stream
[2026-10-25 14:03:35,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:03:35,956.956 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 14:03:37,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:03:37,936.936 INFO    ] Checking for system updates...
[2026-10-25 14:03:37,975.975 INFO    ] 200
[2026-10-25 14:03:37,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:38,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:03:38,034.034 INFO    ] No update needed
[2026-10-25 14:03:38,036.036 INFO    ] Checking for camera pi updates...
[2026-10-25 14:03:38,070.070 INFO    ] 200
[2026-10-25 14:03:38,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:38,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:03:38,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:03:38,280.280 INFO    ] No camera update needed
[2026-10-25 14:03:38,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:03:38,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:03:38,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:03:38,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:03:40,336.336 INFO    ] ================================================
[2026-10-25 14:03:40,352.352 INFO    ] Launching Daemon at Sun Oct 25 14:03:40 IST 2026
[2026-10-25 14:03:40,362.362 INFO    ] ================================================
[2026-10-25 14:03:41,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:03:41
[2026-10-25 14:03:41,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:03:42,010.010 INFO    ] Initializing speech engine...
[2026-10-25 14:03:42,019.019 INFO    ] 2026-10-25 14:03:42
[2026-10-25 14:03:42,334.334 INFO    ] 2026-10-25 14:03:42
[2026-10-25 14:03:42,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:03:42,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:03:42,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:03:42,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:03:42,755.755 INFO    ] time= 25/10/2026 14:03:42
[2026-10-25 14:03:42,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:03:42,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:03:42,901.901 INFO    ] No existing commands found in stream
[2026-10-25 14:03:47,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:03:47,916.916 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 14:03:52,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:03:52,117.117 INFO    ] Checking for system updates...
[2026-10-25 14:03:52,154.154 INFO    ] 200
[2026-10-25 14:03:52,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:52,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:52,218.218 INFO    ] No update needed
[2026-10-25 14:03:52,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 14:03:52,254.254 INFO    ] 200
[2026-10-25 14:03:52,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:03:52,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:03:52,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:03:52,346.346 INFO    ] No camera update needed
[2026-10-25 14:03:52,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:03:52,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:03:52,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:03:52,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:03:54,420.420 INFO    ] ================================================
[2026-10-25 14:03:54,434.434 INFO    ] Launching Daemon at Sun Oct 25 14:03:54 IST 2026
[2026-10-25 14:03:54,445.445 INFO    ] ================================================
[2026-10-25 14:03:55,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:03:55
[2026-10-25 14:03:55,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:03:55,857.857 INFO    ] Initializing speech engine...
[2026-10-25 14:03:55,877.877 INFO    ] 2026-10-25 14:03:55
[2026-10-25 14:03:56,144.144 INFO    ] 2026-10-25 14:03:56
[2026-10-25 14:03:56,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:03:56,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:03:56,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:03:56,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:03:56,517.517 INFO    ] time= 25/10/2026 14:03:56
[2026-10-25 14:03:56,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:03:56,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:03:56,639.639 INFO    ] No existing commands found in stream
[2026-10-25 14:04:01,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:04:01,658.658 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 14:04:07,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:04:07,998.998 INFO    ] Checking for system updates...
[2026-10-25 14:04:08,035.035 INFO    ] 200
[2026-10-25 14:04:08,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:08,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:04:08,093.093 INFO    ] No update needed
[2026-10-25 14:04:08,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 14:04:08,132.132 INFO    ] 200
[2026-10-25 14:04:08,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:08,175.175 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:04:08,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:04:08,225.225 INFO    ] No camera update needed
[2026-10-25 14:04:08,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:04:08,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:04:08,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:04:08,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:04:10,280.280 INFO    ] ================================================
[2026-10-25 14:04:10,296.296 INFO    ] Launching Daemon at Sun Oct 25 14:04:10 IST 2026
[2026-10-25 14:04:10,307.307 INFO    ] ================================================
[2026-10-25 14:04:10,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:04:10
[2026-10-25 14:04:11,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:04:11,772.772 INFO    ] Initializing speech engine...
[2026-10-25 14:04:11,778.778 INFO    ] 2026-10-25 14:04:11
[2026-10-25 14:04:12,024.024 INFO    ] 2026-10-25 14:04:12
[2026-10-25 14:04:12,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:04:12,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:04:12,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:04:12,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:04:12,580.580 INFO    ] time= 25/10/2026 14:04:12
[2026-10-25 14:04:12,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:04:12,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:04:12,705.705 INFO    ] No existing commands found in stream
[2026-10-25 14:04:17,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:04:17,745.745 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 14:04:21,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:04:21,012.012 INFO    ] Checking for system updates...
[2026-10-25 14:04:21,050.050 INFO    ] 200
[2026-10-25 14:04:21,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:21,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:21,108.108 INFO    ] No update needed
[2026-10-25 14:04:21,111.111 INFO    ] Checking for camera pi updates...
[2026-10-25 14:04:21,145.145 INFO    ] 200
[2026-10-25 14:04:21,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:21,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:04:21,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:21,248.248 INFO    ] No camera update needed
[2026-10-25 14:04:21,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:04:21,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:04:21,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:04:21,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:04:23,304.304 INFO    ] ================================================
[2026-10-25 14:04:23,320.320 INFO    ] Launching Daemon at Sun Oct 25 14:04:23 IST 2026
[2026-10-25 14:04:23,331.331 INFO    ] ================================================
[2026-10-25 14:04:23,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:04:23
[2026-10-25 14:04:24,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:04:24,796.796 INFO    ] Initializing speech engine...
[2026-10-25 14:04:24,806.806 INFO    ] 2026-10-25 14:04:24
[2026-10-25 14:04:25,057.057 INFO    ] 2026-10-25 14:04:25
[2026-10-25 14:04:25,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:04:25,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:04:25,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:04:25,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:04:25,560.560 INFO    ] time= 25/10/2026 14:04:25
[2026-10-25 14:04:25,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:04:25,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:04:25,681.681 INFO    ] No existing commands found in stream
[2026-10-25 14:04:30,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:04:30,705.705 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 14:04:34,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:04:34,767.767 INFO    ] Checking for system updates...
[2026-10-25 14:04:34,807.807 INFO    ] 200
[2026-10-25 14:04:34,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:34,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:34,865.865 INFO    ] No update needed
[2026-10-25 14:04:34,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 14:04:34,905.905 INFO    ] 200
[2026-10-25 14:04:34,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:34,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:04:35,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:35,103.103 INFO    ] No camera update needed
[2026-10-25 14:04:35,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:04:35,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:04:35,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:04:35,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:04:37,159.159 INFO    ] ================================================
[2026-10-25 14:04:37,174.174 INFO    ] Launching Daemon at Sun Oct 25 14:04:37 IST 2026
[2026-10-25 14:04:37,185.185 INFO    ] ================================================
[2026-10-25 14:04:37,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:04:37
[2026-10-25 14:04:38,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:04:38,723.723 INFO    ] Initializing speech engine...
[2026-10-25 14:04:38,730.730 INFO    ] 2026-10-25 14:04:38
[2026-10-25 14:04:39,013.013 INFO    ] 2026-10-25 14:04:38
[2026-10-25 14:04:39,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:04:39,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:04:39,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:04:39,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:04:39,956.956 INFO    ] time= 25/10/2026 14:04:39
[2026-10-25 14:04:40,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:04:40,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:04:40,146.146 INFO    ] Found 1 existing command(s) in stream
[2026-10-25 14:04:40,155.155 INFO    ] Checking historical command: ID=1792917274547-0
[2026-10-25 14:04:40,158.158 INFO    ] process_and_cleanup_command: msg_id=1792917274547-0
[2026-10-25 14:04:40,210.210 INFO    ] is_command_expired: timestamp=2026-10-25T08:34:34.251Z, expiry=30s
[2026-10-25 14:04:40,303.303 INFO    ] Command removed from stream: 1792917274547-0. returning for processing...
[2026-10-25 14:04:40,308.308 INFO    ] ***** get_valid_command
[2026-10-25 14:04:40,313.313 INFO    ] {'source': 'webapp', 'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1792917274251-4d7ecxi3b","orderId":"TM06202502261025140353098","is_vending":false}', 'timestamp': '2026-10-25T08:34:34.251Z'}
[2026-10-25 14:04:40,319.319 INFO    ] ***** Parsed command data: {'orderId': 'TM06202502261025140353098', 'request_id': 'start-order-1792917274251-4d7ecxi3b', 'is_vending': False}
[2026-10-25 14:04:40,324.324 INFO    ] Handling start order...
[2026-10-25 14:04:40,329.329 INFO    ] handle_start_order_command
[2026-10-25 14:04:40,340.340 INFO    ] _send_start_order_success: request_id=start-order-1792917274251-4d7ecxi3b, order_id=TM06202502261025140353098
[2026-10-25 14:04:40,344.344 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202502
[2026-10-25 14:04:40,466.466 INFO    ] [_send_start_order_success] Message added to stream with ID: 1792917280402-0
[2026-10-25 14:04:40,475.475 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-25 14:04:40,481.481 INFO    ] Checking for system updates...
[2026-10-25 14:04:40,547.547 INFO    ] 200
[2026-10-25 14:04:40,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:40,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:40,623.623 INFO    ] No update needed
[2026-10-25 14:04:40,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 14:04:40,670.670 INFO    ] 200
[2026-10-25 14:04:40,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:40,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:04:40,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:04:40,806.806 INFO    ] No camera update needed
[2026-10-25 14:04:40,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:04:40,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:04:40,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:04:40,989.989 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 14:04:41,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:04:43,090.090 INFO    ] ================================================
[2026-10-25 14:04:43,106.106 INFO    ] Launching Daemon at Sun Oct 25 14:04:43 IST 2026
[2026-10-25 14:04:43,117.117 INFO    ] ================================================
[2026-10-25 14:04:43,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:04:43
[2026-10-25 14:04:44,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:04:44,525.525 INFO    ] Initializing speech engine...
[2026-10-25 14:04:44,533.533 INFO    ] 2026-10-25 14:04:44
[2026-10-25 14:04:44,826.826 INFO    ] 2026-10-25 14:04:44
[2026-10-25 14:04:44,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:04:45,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:04:45,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:04:45,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:04:45,179.179 INFO    ] time= 25/10/2026 14:04:45
[2026-10-25 14:04:45,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:04:45,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:04:45,261.261 INFO    ] Found 2 existing command(s) in stream
[2026-10-25 14:04:45,267.267 INFO    ] Checking historical command: ID=1792917280402-0
[2026-10-25 14:04:45,299.299 INFO    ] process_and_cleanup_command: msg_id=1792917280402-0
[2026-10-25 14:04:45,343.343 INFO    ] is_command_expired: timestamp=2026-10-25T08:34:40.341542Z, expiry=30s
[2026-10-25 14:04:45,466.466 INFO    ] Command removed from stream: 1792917280402-0. returning for processing...
[2026-10-25 14:04:45,516.516 INFO    ] ***** get_valid_command
[2026-10-25 14:04:45,522.522 INFO    ] {'message': 'start-order success', 'metadata_request_id': 'start-order-1792917274251-4d7ecxi3b', 'imei': 'TM06202502', 'timestamp': '2026-10-25T08:34:40.341542Z', 'metadata_order_id': 'TM06202502261025140353098', 'message_type': 'command_response', 'status': 'success'}
[2026-10-25 14:04:45,543.543 INFO    ] Checking historical command: ID=1792917281700-0
[2026-10-25 14:04:45,550.550 INFO    ] process_and_cleanup_command: msg_id=1792917281700-0
[2026-10-25 14:04:45,579.579 INFO    ] is_command_expired: timestamp=2026-10-25T08:34:41.334Z, expiry=30s
[2026-10-25 14:04:45,664.664 INFO    ] Command removed from stream: 1792917281700-0. returning for processing...
[2026-10-25 14:04:45,712.712 INFO    ] ***** get_valid_command
[2026-10-25 14:04:45,762.762 INFO    ] {'timestamp': '2026-10-25T08:34:41.334Z', 'data': '{"request_id":"process-order-1792917281334-k19xa2c09","orderId":"TM06202502261025140353098","is_vending":false,"accessCode":"96931255"}', 'source': 'webapp', 'timeout': '60', 'command': 'process-order'}
[2026-10-25 14:04:45,821.821 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1792917281334-k19xa2c09', 'accessCode': '96931255', 'orderId': 'TM06202502261025140353098'}
[2026-10-25 14:04:45,840.840 INFO    ] Handling process order...
[2026-10-25 14:04:45,898.898 INFO    ] Processing process-order command...
[2026-10-25 14:04:45,978.978 INFO    ] 🔍 Lock file Order ID: TM06202502261025140353098, TS: 2026-10-25 14:04:40
[2026-10-25 14:04:46,020.020 INFO    ] ✅ Order lock valid for TM06202502261025140353098
[2026-10-25 14:04:46,070.070 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-25 14:04:46,073.073 INFO    ] processing access code 96931255 for order TM06202502261025140353098
[2026-10-25 14:04:46,086.086 INFO    ] 🔍 Lock file Order ID: TM06202502261025140353098, TS: 2026-10-25 14:04:40
[2026-10-25 14:04:46,089.089 INFO    ] ✅ Order lock valid for TM06202502261025140353098
[2026-10-25 14:04:46,093.093 INFO    ] 2026-10-25 14:04:46
[2026-10-25 14:04:46,224.224 INFO    ] 200
[2026-10-25 14:04:46,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:04:46,270.270 INFO    ] 96931255
[2026-10-25 14:04:46,273.273 INFO    ] 2026-10-25 14:04:46
[2026-10-25 14:04:46,312.312 INFO    ] session id :501945204
[2026-10-25 14:04:46,334.334 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=96931255&imei=TM06202502&session_id=501945204
[2026-10-25 14:04:47,497.497 INFO    ] 200
[2026-10-25 14:04:47,516.516 INFO    ] {"msg": "Order Data", "data": {"order_id": "TM06202502261025140353098", "access_code": "96931255", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"mrp": "10", "qty": 1, "tray_id": "17", "door_id": "1", "name": "McVities Butter Jeera Cookies58gm", "unit_price": 10, "skuid": "4500709", "sku_total": 10, "offer_id": "", "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "offer_desc": ""}], "mobile": "7753065039"}, "rstatus": true, "status": true}
[2026-10-25 14:04:47,524.524 INFO    ] 10
[2026-10-25 14:04:47,531.531 INFO    ] TM06202502261025140353098
[2026-10-25 14:04:47,551.551 INFO    ] 7753065039
[2026-10-25 14:04:47,562.562 INFO    ] 2026-10-25 14:04:47
[2026-10-25 14:04:47,566.566 INFO    ] Door Opening for user mobile ending with  five zero three nine 
[2026-10-25 14:04:47,571.571 INFO    ] Door Opening for user mobile ending with  five zero three nine 
[2026-10-25 14:04:47,577.577 INFO    ] 39beb2672dbe37ee411cb507b32f2c11
[2026-10-25 14:04:47,587.587 INFO    ] 2026-10-25 14:04:47
[2026-10-25 14:04:47,600.600 INFO    ] playing audio file
[2026-10-25 14:04:47,627.627 INFO    ] 2026-10-25 14:04:47
[2026-10-25 14:04:47,644.644 INFO    ] 2026-10-25 14:04:47
[2026-10-25 14:04:47,651.651 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:04:47,656.656 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:04:47,794.794 INFO    ] [publish_status] Message added to stream with ID: 1792917287744-0
[2026-10-25 14:04:47,802.802 INFO    ] Published to order:TM06202502261025140353098: {'timestamp': '2026-10-25T08:34:47.646255Z', 'order_id': 'TM06202502261025140353098', 'server_status': 'order-started', 'server_response': '{"status": true, "msg": "Order Data", "rstatus": true, "data": {"proposed_sku_json": [{"skuid": "4500709", "mrp": "10", "tray_id": "17", "qty": 1, "offer_id": "", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "name": "McVities Butter Jeera Cookies58gm", "offer_desc": "", "door_id": "1", "unit_price": 10}], "access_code": "96931255", "order_id": "TM06202502261025140353098", "bill_amount": "10", "invoice_bill": "10", "mobile": "7753065039"}}'} (ID: 1792917287744-0)
[2026-10-25 14:04:48,341.341 INFO    ] {'order_id': 'TM06202502261025140353098', 'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'rstatus': True, 'data': {'proposed_sku_json': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'offer_id': '', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'name': 'McVities Butter Jeera Cookies58gm', 'offer_desc': '', 'door_id': '1', 'unit_price': 10}], 'access_code': '96931255', 'order_id': 'TM06202502261025140353098', 'bill_amount': '10', 'invoice_bill': '10', 'mobile': '7753065039'}}}
[2026-10-25 14:04:48,361.361 INFO    ] 200
[2026-10-25 14:04:48,414.414 INFO    ] {"data":{"order_id":"TM06202502261025140353098","server_status":"order-started","server_response":{"status":true,"msg":"Order Data","rstatus":true,"data":{"proposed_sku_json":[{"skuid":"4500709","mrp":"10","tray_id":"17","qty":1,"offer_id":"","sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500709-2651.webp","name":"McVities Butter Jeera Cookies58gm","offer_desc":"","door_id":"1","unit_price":10}],"access_code":"96931255","order_id":"TM06202502261025140353098","bill_amount":"10","invoice_bill":"10","mobile":"7753065039"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 14:04:48,427.427 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'order-started', 'server_response': {'data': {'proposed_sku_json': [{'skuid': '4500709', 'unit_price': 10, 'mrp': '10', 'tray_id': '17', 'qty': 1, 'offer_desc': '', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'name': 'McVities Butter Jeera Cookies58gm', 'offer_id': '', 'door_id': '1'}], 'access_code': '96931255', 'order_id': 'TM06202502261025140353098', 'bill_amount': '10', 'invoice_bill': '10', 'mobile': '7753065039'}, 'msg': 'Order Data', 'rstatus': True, 'status': True}}}
[2026-10-25 14:04:48,442.442 INFO    ] 2026-10-25 14:04:48
[2026-10-25 14:04:48,492.492 INFO    ] 200
[2026-10-25 14:04:48,494.494 INFO    ] True
[2026-10-25 14:04:48,667.667 INFO    ] 200
[2026-10-25 14:04:48,670.670 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": false, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:04:48,673.673 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:04:48,676.676 INFO    ] *** process_order ***
[2026-10-25 14:04:49,859.859 INFO    ] 200
[2026-10-25 14:04:49,862.862 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "delay": 0, "status": "True"}
[2026-10-25 14:04:49,864.864 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'delay': 0}
[2026-10-25 14:04:49,867.867 INFO    ] *** process_order ***
[2026-10-25 14:04:49,869.869 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:04:49,872.872 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:04:49,952.952 INFO    ] [publish_status] Message added to stream with ID: 1792917289954-0
[2026-10-25 14:04:49,955.955 INFO    ] Published to order:TM06202502261025140353098: {'order_id': 'TM06202502261025140353098', 'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "rstatus": true, "status": "True"}'} (ID: 1792917289954-0)
[2026-10-25 14:04:51,001.001 INFO    ] 2026-10-25 14:04:50
[2026-10-25 14:04:51,004.004 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:04:51,007.007 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:04:51,092.092 INFO    ] [publish_status] Message added to stream with ID: 1792917291094-0
[2026-10-25 14:04:51,096.096 INFO    ] Published to order:TM06202502261025140353098: {'timestamp': '2026-10-25T08:34:51.002583Z', 'order_id': 'TM06202502261025140353098', 'server_status': 'processOrder', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True", "rstatus": true, "delay": 0}'} (ID: 1792917291094-0)
[2026-10-25 14:04:51,198.198 INFO    ] {'order_id': 'TM06202502261025140353098', 'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'rstatus': True, 'delay': 0}}
[2026-10-25 14:04:51,201.201 INFO    ] 200
[2026-10-25 14:04:51,204.204 INFO    ] {"data":{"order_id":"TM06202502261025140353098","server_status":"processOrder","server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"status":"true","rstatus":true,"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 14:04:51,206.206 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'rstatus': True, 'status': 'true'}}}
[2026-10-25 14:04:51,209.209 INFO    ] 2026-10-25 14:04:51
[2026-10-25 14:04:51,215.215 INFO    ] None
[2026-10-25 14:04:51,218.218 INFO    ] Opening Door now
[2026-10-25 14:04:51,221.221 INFO    ] Opening Door now
[2026-10-25 14:04:51,224.224 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-25 14:04:51,227.227 INFO    ] 2026-10-25 14:04:51
[2026-10-25 14:04:51,230.230 INFO    ] playing audio file
[2026-10-25 14:04:51,249.249 INFO    ] 2026-10-25 14:04:51
[2026-10-25 14:04:51,253.253 INFO    ] 2026-10-25 14:04:51
[2026-10-25 14:04:54,319.319 INFO    ] 200
[2026-10-25 14:04:54,322.322 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:04:54,325.325 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:04:57,477.477 INFO    ] 200
[2026-10-25 14:04:57,480.480 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:04:57,484.484 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:05:00,552.552 INFO    ] 200
[2026-10-25 14:05:00,555.555 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:05:00,558.558 INFO    ] Please close door 1
[2026-10-25 14:05:00,561.561 INFO    ] Please close door 1
[2026-10-25 14:05:00,563.563 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-25 14:05:00,566.566 INFO    ] 2026-10-25 14:05:00
[2026-10-25 14:05:00,569.569 INFO    ] playing audio file
[2026-10-25 14:05:00,587.587 INFO    ] 2026-10-25 14:05:00
[2026-10-25 14:05:00,591.591 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:05:00,594.594 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:05:00,673.673 INFO    ] [publish_status] Message added to stream with ID: 1792917300674-0
[2026-10-25 14:05:00,677.677 INFO    ] Published to order:TM06202502261025140353098: {'timestamp': '2026-10-25T08:35:00.589021Z', 'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "status": "False"}'} (ID: 1792917300674-0)
[2026-10-25 14:05:01,220.220 INFO    ] {'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}}
[2026-10-25 14:05:01,224.224 INFO    ] 200
[2026-10-25 14:05:01,227.227 INFO    ] {"data":{"order_id":"TM06202502261025140353098","server_status":"OrderStatus","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"Header":"Please Close Door 1","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"rstatus":false,"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 14:05:01,231.231 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'false'}}}
[2026-10-25 14:05:01,235.235 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:05:04,323.323 INFO    ] 200
[2026-10-25 14:05:04,326.326 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:05:04,330.330 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:05:07,425.425 INFO    ] 200
[2026-10-25 14:05:07,428.428 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:05:07,432.432 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:05:10,503.503 INFO    ] 200
[2026-10-25 14:05:10,506.506 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 1\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 1, "name": "McVities Butter Jeera Cookies58gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 14:05:10,510.510 INFO    ] Please close door 1
[2026-10-25 14:05:10,514.514 INFO    ] Please close door 1
[2026-10-25 14:05:10,517.517 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-25 14:05:10,520.520 INFO    ] 2026-10-25 14:05:10
[2026-10-25 14:05:10,523.523 INFO    ] playing audio file
[2026-10-25 14:05:10,542.542 INFO    ] 2026-10-25 14:05:10
[2026-10-25 14:05:10,546.546 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:05:10,550.550 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:05:10,633.633 INFO    ] [publish_status] Message added to stream with ID: 1792917310634-0
[2026-10-25 14:05:10,636.636 INFO    ] Published to order:TM06202502261025140353098: {'timestamp': '2026-10-25T08:35:10.544347Z', 'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "McVities Butter Jeera Cookies58gm", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "code": 20001, "data": {}}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "status": "False"}'} (ID: 1792917310634-0)
[2026-10-25 14:05:11,178.178 INFO    ] {'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}}
[2026-10-25 14:05:11,182.182 INFO    ] 200
[2026-10-25 14:05:11,184.184 INFO    ] {"data":{"order_id":"TM06202502261025140353098","server_status":"OrderStatus","server_response":{"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"McVities Butter Jeera Cookies58gm","qty":1}]},"SectionStatus":{"Header":"Please Close Door 1","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"error":{"tmessage":"In Progress","umessage":"In Progress","code":20001,"data":[]},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"rstatus":false,"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 14:05:11,188.188 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': []}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'false'}}}
[2026-10-25 14:05:11,191.191 INFO    ] {'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'McVities Butter Jeera Cookies58gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'code': 20001, 'data': {}}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'status': 'False'}
[2026-10-25 14:05:14,262.262 INFO    ] 200
[2026-10-25 14:05:14,265.265 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "rstatus": true, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "delay": 100, "status": "True"}
[2026-10-25 14:05:14,269.269 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-10-25 14:05:14,280.280 INFO    ] 2026-10-25 14:05:14
[2026-10-25 14:05:14,283.283 INFO    ] Order Completed 
[2026-10-25 14:05:14,285.285 INFO    ] Order Completed 
[2026-10-25 14:05:14,288.288 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-25 14:05:14,291.291 INFO    ] 2026-10-25 14:05:14
[2026-10-25 14:05:14,293.293 INFO    ] playing audio file
[2026-10-25 14:05:14,311.311 INFO    ] 2026-10-25 14:05:14
[2026-10-25 14:05:14,315.315 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'rstatus': True, 'delay': 100}
[2026-10-25 14:05:14,318.318 INFO    ] 2026-10-25 14:05:14
[2026-10-25 14:05:15,409.409 INFO    ] 200
[2026-10-25 14:05:15,412.412 INFO    ] {"anomaly": 0, "res": "True", "rstatus": true, "logic": "WBL", "orderId": "TM06202502261025140353098", "total_amount": 10.0, "skus": [{"mrp": "10", "qty": 1, "tray_id": "17", "door_id": "", "name": "McVities Butter Jeera Cookies58gm per peice", "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "skuid": "4500709", "sku_total": 10.0, "unit_price": "10"}]}
[2026-10-25 14:05:15,416.416 INFO    ] {'res': 'True', 'skus': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'door_id': '', 'unit_price': '10'}], 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'orderId': 'TM06202502261025140353098', 'rstatus': True}
[2026-10-25 14:05:15,419.419 INFO    ] {'res': 'True', 'skus': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'door_id': '', 'unit_price': '10'}], 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'orderId': 'TM06202502261025140353098', 'rstatus': True}
[2026-10-25 14:05:15,421.421 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,424.424 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,426.426 INFO    ] 10
[2026-10-25 14:05:15,429.429 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,432.432 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,435.435 INFO    ]  Your Bill Amount is 10
[2026-10-25 14:05:15,437.437 INFO    ]  Your Bill Amount is 10
[2026-10-25 14:05:15,440.440 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-10-25 14:05:15,443.443 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,446.446 INFO    ] playing audio file
[2026-10-25 14:05:15,465.465 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,471.471 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:15,475.475 INFO    ] publish_status: order_id=TM06202502261025140353098
[2026-10-25 14:05:15,478.478 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025140353098
[2026-10-25 14:05:15,561.561 INFO    ] [publish_status] Message added to stream with ID: 1792917315564-0
[2026-10-25 14:05:15,564.564 INFO    ] Published to order:TM06202502261025140353098: {'timestamp': '2026-10-25T08:35:15.473478Z', 'order_id': 'TM06202502261025140353098', 'server_status': 'invoiceOrder', 'server_response': '{"res": "True", "skus": [{"skuid": "4500709", "mrp": "10", "tray_id": "17", "qty": 1, "image_url": "https://images.tinymart.in/product/4500709-2651.webp", "sku_total": 10.0, "name": "McVities Butter Jeera Cookies58gm per peice", "door_id": "", "unit_price": "10"}], "anomaly": 0, "total_amount": 10.0, "logic": "WBL", "orderId": "TM06202502261025140353098", "rstatus": true}'} (ID: 1792917315564-0)
[2026-10-25 14:05:15,680.680 INFO    ] {'order_id': 'TM06202502261025140353098', 'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'skus': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'sku_total': 10.0, 'name': 'McVities Butter Jeera Cookies58gm per peice', 'door_id': '', 'unit_price': '10'}], 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'orderId': 'TM06202502261025140353098', 'rstatus': True}}
[2026-10-25 14:05:15,682.682 INFO    ] 200
[2026-10-25 14:05:15,685.685 INFO    ] {"data":{"order_id":"TM06202502261025140353098","server_status":"invoiceOrder","server_response":{"res":"true","skus":[{"skuid":"4500709","mrp":"10","tray_id":"17","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500709-2651.webp","sku_total":10,"name":"McVities Butter Jeera Cookies58gm per peice","door_id":"","unit_price":"10"}],"anomaly":0,"total_amount":10,"logic":"WBL","orderId":"TM06202502261025140353098","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 14:05:15,687.687 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'rstatus': True, 'anomaly': 0, 'total_amount': 10, 'logic': 'WBL', 'orderId': 'TM06202502261025140353098', 'skus': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'name': 'McVities Butter Jeera Cookies58gm per peice', 'door_id': '', 'unit_price': '10'}]}}}
[2026-10-25 14:05:15,692.692 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}, 'data': {'order_id': 'TM06202502261025140353098', 'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'rstatus': True, 'anomaly': 0, 'total_amount': 10, 'logic': 'WBL', 'orderId': 'TM06202502261025140353098', 'skus': [{'skuid': '4500709', 'mrp': '10', 'tray_id': '17', 'qty': 1, 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500709-2651.webp', 'name': 'McVities Butter Jeera Cookies58gm per peice', 'door_id': '', 'unit_price': '10'}]}}}
[2026-10-25 14:05:15,695.695 INFO    ] 2026-10-25 14:05:15
[2026-10-25 14:05:17,668.668 INFO    ] 200
[2026-10-25 14:05:17,671.671 INFO    ] {"tray_synced": ["TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098", "TM06202502261025140353098"], "order_items": [], "orders_data": [], "orders_synced": [], "orders": [], "tray_sync": [], "orders_data_synced": [], "status": true, "order_items_synced": []}
[2026-10-25 14:05:17,674.674 INFO    ] 2026-10-25 14:05:17
[2026-10-25 14:05:17,804.804 INFO    ] 200
[2026-10-25 14:05:17,807.807 INFO    ] True
[2026-10-25 14:05:17,811.811 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202502261025140353098
[2026-10-25 14:05:17,815.815 INFO    ] start order file deleted
[2026-10-25 14:05:17,819.819 INFO    ] Checking for system updates...
[2026-10-25 14:05:17,870.870 INFO    ] 200
[2026-10-25 14:05:17,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:17,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:05:17,951.951 INFO    ] No update needed
[2026-10-25 14:05:17,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 14:05:17,992.992 INFO    ] 200
[2026-10-25 14:05:17,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:18,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:05:18,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:05:18,129.129 INFO    ] No camera update needed
[2026-10-25 14:05:18,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:05:18,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:05:18,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:05:18,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:05:20,187.187 INFO    ] ================================================
[2026-10-25 14:05:20,203.203 INFO    ] Launching Daemon at Sun Oct 25 14:05:20 IST 2026
[2026-10-25 14:05:20,214.214 INFO    ] ================================================
[2026-10-25 14:05:20,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:05:20
[2026-10-25 14:05:21,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:05:21,727.727 INFO    ] Initializing speech engine...
[2026-10-25 14:05:21,752.752 INFO    ] 2026-10-25 14:05:21
[2026-10-25 14:05:22,008.008 INFO    ] 2026-10-25 14:05:22
[2026-10-25 14:05:22,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:05:22,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:05:22,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:05:22,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:05:22,494.494 INFO    ] time= 25/10/2026 14:05:22
[2026-10-25 14:05:22,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:05:22,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:05:22,636.636 INFO    ] No existing commands found in stream
[2026-10-25 14:05:27,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:05:27,651.651 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 14:05:30,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:05:30,177.177 INFO    ] Checking for system updates...
[2026-10-25 14:05:30,213.213 INFO    ] 200
[2026-10-25 14:05:30,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:30,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:05:30,271.271 INFO    ] No update needed
[2026-10-25 14:05:30,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 14:05:30,308.308 INFO    ] 200
[2026-10-25 14:05:30,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:30,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:05:30,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:05:30,409.409 INFO    ] No camera update needed
[2026-10-25 14:05:30,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:05:30,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:05:30,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:05:30,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:05:32,466.466 INFO    ] ================================================
[2026-10-25 14:05:32,489.489 INFO    ] Launching Daemon at Sun Oct 25 14:05:32 IST 2026
[2026-10-25 14:05:32,506.506 INFO    ] ================================================
[2026-10-25 14:05:33,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:05:33
[2026-10-25 14:05:33,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:05:34,114.114 INFO    ] Initializing speech engine...
[2026-10-25 14:05:34,130.130 INFO    ] 2026-10-25 14:05:34
[2026-10-25 14:05:34,407.407 INFO    ] 2026-10-25 14:05:34
[2026-10-25 14:05:34,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:05:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:05:34,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:05:34,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:05:34,913.913 INFO    ] time= 25/10/2026 14:05:34
[2026-10-25 14:05:34,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:05:35,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:05:35,126.126 INFO    ] No existing commands found in stream
[2026-10-25 14:05:40,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:05:40,158.158 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 14:05:43,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:05:43,786.786 INFO    ] Checking for system updates...
[2026-10-25 14:05:43,822.822 INFO    ] 200
[2026-10-25 14:05:43,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:43,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:05:43,880.880 INFO    ] No update needed
[2026-10-25 14:05:43,883.883 INFO    ] Checking for camera pi updates...
[2026-10-25 14:05:43,920.920 INFO    ] 200
[2026-10-25 14:05:43,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:43,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:05:44,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:05:44,030.030 INFO    ] No camera update needed
[2026-10-25 14:05:44,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:05:44,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:05:44,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:05:44,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:05:46,084.084 INFO    ] ================================================
[2026-10-25 14:05:46,100.100 INFO    ] Launching Daemon at Sun Oct 25 14:05:46 IST 2026
[2026-10-25 14:05:46,110.110 INFO    ] ================================================
[2026-10-25 14:05:46,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:05:46
[2026-10-25 14:05:47,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:05:47,532.532 INFO    ] Initializing speech engine...
[2026-10-25 14:05:47,549.549 INFO    ] 2026-10-25 14:05:47
[2026-10-25 14:05:47,835.835 INFO    ] 2026-10-25 14:05:47
[2026-10-25 14:05:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:05:48,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:05:48,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:05:48,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:05:48,229.229 INFO    ] time= 25/10/2026 14:05:48
[2026-10-25 14:05:48,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:05:48,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:05:48,337.337 INFO    ] No existing commands found in stream
[2026-10-25 14:05:53,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:05:53,352.352 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 14:05:54,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:05:54,124.124 INFO    ] Checking for system updates...
[2026-10-25 14:05:54,165.165 INFO    ] 200
[2026-10-25 14:05:54,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:54,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:05:54,223.223 INFO    ] No update needed
[2026-10-25 14:05:54,225.225 INFO    ] Checking for camera pi updates...
[2026-10-25 14:05:54,263.263 INFO    ] 200
[2026-10-25 14:05:54,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:05:54,307.307 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:05:54,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:05:54,341.341 INFO    ] No camera update needed
[2026-10-25 14:05:54,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:05:54,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:05:54,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:05:54,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:05:56,398.398 INFO    ] ================================================
[2026-10-25 14:05:56,413.413 INFO    ] Launching Daemon at Sun Oct 25 14:05:56 IST 2026
[2026-10-25 14:05:56,425.425 INFO    ] ================================================
[2026-10-25 14:05:56,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:05:56
[2026-10-25 14:05:57,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:05:57,864.864 INFO    ] Initializing speech engine...
[2026-10-25 14:05:57,872.872 INFO    ] 2026-10-25 14:05:57
[2026-10-25 14:05:58,120.120 INFO    ] 2026-10-25 14:05:58
[2026-10-25 14:05:58,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:05:58,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:05:58,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:05:58,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:05:58,605.605 INFO    ] time= 25/10/2026 14:05:58
[2026-10-25 14:05:58,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:05:58,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:05:58,745.745 INFO    ] No existing commands found in stream
[2026-10-25 14:06:03,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:06:03,759.759 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 14:06:07,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:06:07,316.316 INFO    ] Checking for system updates...
[2026-10-25 14:06:07,355.355 INFO    ] 200
[2026-10-25 14:06:07,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:07,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:06:07,420.420 INFO    ] No update needed
[2026-10-25 14:06:07,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 14:06:07,457.457 INFO    ] 200
[2026-10-25 14:06:07,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:07,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:06:07,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:06:07,561.561 INFO    ] No camera update needed
[2026-10-25 14:06:07,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:06:07,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:06:07,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:06:07,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:06:09,620.620 INFO    ] ================================================
[2026-10-25 14:06:09,635.635 INFO    ] Launching Daemon at Sun Oct 25 14:06:09 IST 2026
[2026-10-25 14:06:09,647.647 INFO    ] ================================================
[2026-10-25 14:06:10,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:06:10
[2026-10-25 14:06:10,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:06:11,045.045 INFO    ] Initializing speech engine...
[2026-10-25 14:06:11,059.059 INFO    ] 2026-10-25 14:06:11
[2026-10-25 14:06:11,324.324 INFO    ] 2026-10-25 14:06:11
[2026-10-25 14:06:11,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:06:12,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:06:12,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:06:12,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:06:13,019.019 INFO    ] time= 25/10/2026 14:06:12
[2026-10-25 14:06:13,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:06:13,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:06:13,130.130 INFO    ] No existing commands found in stream
[2026-10-25 14:06:18,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:06:18,145.145 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 14:06:20,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:06:20,136.136 INFO    ] Checking for system updates...
[2026-10-25 14:06:20,175.175 INFO    ] 200
[2026-10-25 14:06:20,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:20,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:20,234.234 INFO    ] No update needed
[2026-10-25 14:06:20,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 14:06:20,270.270 INFO    ] 200
[2026-10-25 14:06:20,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:20,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:06:20,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:20,374.374 INFO    ] No camera update needed
[2026-10-25 14:06:20,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:06:20,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:06:20,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:06:20,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:06:22,432.432 INFO    ] ================================================
[2026-10-25 14:06:22,448.448 INFO    ] Launching Daemon at Sun Oct 25 14:06:22 IST 2026
[2026-10-25 14:06:22,459.459 INFO    ] ================================================
[2026-10-25 14:06:23,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:06:23
[2026-10-25 14:06:23,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:06:23,879.879 INFO    ] Initializing speech engine...
[2026-10-25 14:06:23,889.889 INFO    ] 2026-10-25 14:06:23
[2026-10-25 14:06:24,139.139 INFO    ] 2026-10-25 14:06:24
[2026-10-25 14:06:24,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:06:24,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:06:24,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:06:24,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:06:24,513.513 INFO    ] time= 25/10/2026 14:06:24
[2026-10-25 14:06:24,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:06:24,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:06:24,685.685 INFO    ] No existing commands found in stream
[2026-10-25 14:06:29,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:06:29,717.717 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 14:06:30,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:06:30,563.563 INFO    ] Checking for system updates...
[2026-10-25 14:06:30,599.599 INFO    ] 200
[2026-10-25 14:06:30,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:30,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:30,664.664 INFO    ] No update needed
[2026-10-25 14:06:30,666.666 INFO    ] Checking for camera pi updates...
[2026-10-25 14:06:30,700.700 INFO    ] 200
[2026-10-25 14:06:30,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:30,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:06:30,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:30,801.801 INFO    ] No camera update needed
[2026-10-25 14:06:30,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:06:30,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:06:30,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:06:30,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:06:32,855.855 INFO    ] ================================================
[2026-10-25 14:06:32,872.872 INFO    ] Launching Daemon at Sun Oct 25 14:06:32 IST 2026
[2026-10-25 14:06:32,882.882 INFO    ] ================================================
[2026-10-25 14:06:33,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:06:33
[2026-10-25 14:06:34,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:06:34,325.325 INFO    ] Initializing speech engine...
[2026-10-25 14:06:34,332.332 INFO    ] 2026-10-25 14:06:34
[2026-10-25 14:06:34,622.622 INFO    ] 2026-10-25 14:06:34
[2026-10-25 14:06:34,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:06:34,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:06:34,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:06:34,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:06:34,967.967 INFO    ] time= 25/10/2026 14:06:34
[2026-10-25 14:06:34,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:06:34,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:06:35,095.095 INFO    ] No existing commands found in stream
[2026-10-25 14:06:40,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:06:40,125.125 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 14:06:43,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:06:43,874.874 INFO    ] Checking for system updates...
[2026-10-25 14:06:43,910.910 INFO    ] 200
[2026-10-25 14:06:43,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:43,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:43,969.969 INFO    ] No update needed
[2026-10-25 14:06:43,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 14:06:44,006.006 INFO    ] 200
[2026-10-25 14:06:44,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:44,057.057 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:06:44,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:06:44,239.239 INFO    ] No camera update needed
[2026-10-25 14:06:44,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:06:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:06:44,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:06:44,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:06:46,294.294 INFO    ] ================================================
[2026-10-25 14:06:46,310.310 INFO    ] Launching Daemon at Sun Oct 25 14:06:46 IST 2026
[2026-10-25 14:06:46,321.321 INFO    ] ================================================
[2026-10-25 14:06:46,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:06:46
[2026-10-25 14:06:47,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:06:47,915.915 INFO    ] Initializing speech engine...
[2026-10-25 14:06:47,938.938 INFO    ] 2026-10-25 14:06:47
[2026-10-25 14:06:48,218.218 INFO    ] 2026-10-25 14:06:48
[2026-10-25 14:06:48,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:06:48,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:06:48,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:06:48,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:06:48,787.787 INFO    ] time= 25/10/2026 14:06:48
[2026-10-25 14:06:48,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:06:48,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:06:48,915.915 INFO    ] No existing commands found in stream
[2026-10-25 14:06:53,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:06:53,941.941 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 14:06:58,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:06:58,432.432 INFO    ] Checking for system updates...
[2026-10-25 14:06:58,468.468 INFO    ] 200
[2026-10-25 14:06:58,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:58,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:06:58,527.527 INFO    ] No update needed
[2026-10-25 14:06:58,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 14:06:58,566.566 INFO    ] 200
[2026-10-25 14:06:58,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:06:58,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:06:58,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:06:58,661.661 INFO    ] No camera update needed
[2026-10-25 14:06:58,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:06:58,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:06:58,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:06:58,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:07:00,717.717 INFO    ] ================================================
[2026-10-25 14:07:00,733.733 INFO    ] Launching Daemon at Sun Oct 25 14:07:00 IST 2026
[2026-10-25 14:07:00,744.744 INFO    ] ================================================
[2026-10-25 14:07:01,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:07:01
[2026-10-25 14:07:02,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:07:02,481.481 INFO    ] Initializing speech engine...
[2026-10-25 14:07:02,494.494 INFO    ] 2026-10-25 14:07:02
[2026-10-25 14:07:02,799.799 INFO    ] 2026-10-25 14:07:02
[2026-10-25 14:07:02,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:07:02,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:07:02,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:07:03,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:07:03,143.143 INFO    ] time= 25/10/2026 14:07:03
[2026-10-25 14:07:03,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:07:03,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:07:03,281.281 INFO    ] No existing commands found in stream
[2026-10-25 14:07:08,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:07:08,298.298 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 14:07:09,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:07:09,965.965 INFO    ] Checking for system updates...
[2026-10-25 14:07:10,005.005 INFO    ] 200
[2026-10-25 14:07:10,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:10,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:07:10,069.069 INFO    ] No update needed
[2026-10-25 14:07:10,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 14:07:10,106.106 INFO    ] 200
[2026-10-25 14:07:10,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:10,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:07:10,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:07:10,211.211 INFO    ] No camera update needed
[2026-10-25 14:07:10,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:07:10,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:07:10,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:07:10,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:07:12,266.266 INFO    ] ================================================
[2026-10-25 14:07:12,282.282 INFO    ] Launching Daemon at Sun Oct 25 14:07:12 IST 2026
[2026-10-25 14:07:12,293.293 INFO    ] ================================================
[2026-10-25 14:07:12,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:07:12
[2026-10-25 14:07:13,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:07:13,902.902 INFO    ] Initializing speech engine...
[2026-10-25 14:07:13,911.911 INFO    ] 2026-10-25 14:07:13
[2026-10-25 14:07:14,206.206 INFO    ] 2026-10-25 14:07:14
[2026-10-25 14:07:14,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:07:15,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:07:15,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:07:15,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:07:15,333.333 INFO    ] time= 25/10/2026 14:07:15
[2026-10-25 14:07:15,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:07:15,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:07:15,445.445 INFO    ] No existing commands found in stream
[2026-10-25 14:07:20,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:07:20,459.459 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 14:07:21,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:07:21,668.668 INFO    ] Checking for system updates...
[2026-10-25 14:07:21,709.709 INFO    ] 200
[2026-10-25 14:07:21,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:21,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:21,773.773 INFO    ] No update needed
[2026-10-25 14:07:21,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 14:07:21,809.809 INFO    ] 200
[2026-10-25 14:07:21,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:21,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:07:21,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:21,909.909 INFO    ] No camera update needed
[2026-10-25 14:07:21,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:07:21,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:07:21,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:07:21,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:07:23,965.965 INFO    ] ================================================
[2026-10-25 14:07:23,981.981 INFO    ] Launching Daemon at Sun Oct 25 14:07:23 IST 2026
[2026-10-25 14:07:23,993.993 INFO    ] ================================================
[2026-10-25 14:07:24,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:07:24
[2026-10-25 14:07:25,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:07:25,636.636 INFO    ] Initializing speech engine...
[2026-10-25 14:07:25,647.647 INFO    ] 2026-10-25 14:07:25
[2026-10-25 14:07:25,932.932 INFO    ] 2026-10-25 14:07:25
[2026-10-25 14:07:26,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:07:26,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:07:26,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:07:26,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:07:26,463.463 INFO    ] time= 25/10/2026 14:07:26
[2026-10-25 14:07:26,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:07:26,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:07:26,618.618 INFO    ] No existing commands found in stream
[2026-10-25 14:07:31,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:07:31,635.635 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 14:07:33,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:07:35,214.214 INFO    ] Checking for system updates...
[2026-10-25 14:07:35,257.257 INFO    ] 200
[2026-10-25 14:07:35,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:35,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:07:35,324.324 INFO    ] No update needed
[2026-10-25 14:07:35,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 14:07:35,365.365 INFO    ] 200
[2026-10-25 14:07:35,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:35,409.409 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:07:35,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:07:35,463.463 INFO    ] No camera update needed
[2026-10-25 14:07:35,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:07:35,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:07:35,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:07:35,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:07:37,522.522 INFO    ] ================================================
[2026-10-25 14:07:37,538.538 INFO    ] Launching Daemon at Sun Oct 25 14:07:37 IST 2026
[2026-10-25 14:07:37,549.549 INFO    ] ================================================
[2026-10-25 14:07:38,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:07:38
[2026-10-25 14:07:38,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:07:39,019.019 INFO    ] Initializing speech engine...
[2026-10-25 14:07:39,802.802 INFO    ] 2026-10-25 14:07:39
[2026-10-25 14:07:40,286.286 INFO    ] 2026-10-25 14:07:40
[2026-10-25 14:07:40,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:07:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:07:40,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:07:40,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:07:40,715.715 INFO    ] time= 25/10/2026 14:07:40
[2026-10-25 14:07:40,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:07:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:07:40,781.781 INFO    ] No existing commands found in stream
[2026-10-25 14:07:45,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:07:45,795.795 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 14:07:46,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:07:46,792.792 INFO    ] Checking for system updates...
[2026-10-25 14:07:46,829.829 INFO    ] 200
[2026-10-25 14:07:46,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:46,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:46,889.889 INFO    ] No update needed
[2026-10-25 14:07:46,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 14:07:46,929.929 INFO    ] 200
[2026-10-25 14:07:46,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:46,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:07:47,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:47,027.027 INFO    ] No camera update needed
[2026-10-25 14:07:47,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:07:47,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:07:47,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:07:47,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:07:49,084.084 INFO    ] ================================================
[2026-10-25 14:07:49,099.099 INFO    ] Launching Daemon at Sun Oct 25 14:07:49 IST 2026
[2026-10-25 14:07:49,109.109 INFO    ] ================================================
[2026-10-25 14:07:49,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:07:49
[2026-10-25 14:07:50,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:07:50,525.525 INFO    ] Initializing speech engine...
[2026-10-25 14:07:50,550.550 INFO    ] 2026-10-25 14:07:50
[2026-10-25 14:07:50,835.835 INFO    ] 2026-10-25 14:07:50
[2026-10-25 14:07:50,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:07:51,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:07:51,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:07:51,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:07:51,212.212 INFO    ] time= 25/10/2026 14:07:51
[2026-10-25 14:07:51,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:07:51,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:07:51,340.340 INFO    ] No existing commands found in stream
[2026-10-25 14:07:56,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:07:56,354.354 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 14:07:58,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:07:58,725.725 INFO    ] Checking for system updates...
[2026-10-25 14:07:58,761.761 INFO    ] 200
[2026-10-25 14:07:58,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:58,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:58,820.820 INFO    ] No update needed
[2026-10-25 14:07:58,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 14:07:58,856.856 INFO    ] 200
[2026-10-25 14:07:58,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:07:58,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:07:58,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:07:58,951.951 INFO    ] No camera update needed
[2026-10-25 14:07:58,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:07:58,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:07:58,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:07:58,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:08:01,007.007 INFO    ] ================================================
[2026-10-25 14:08:01,023.023 INFO    ] Launching Daemon at Sun Oct 25 14:08:01 IST 2026
[2026-10-25 14:08:01,033.033 INFO    ] ================================================
[2026-10-25 14:08:01,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:08:01
[2026-10-25 14:08:02,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:08:02,713.713 INFO    ] Initializing speech engine...
[2026-10-25 14:08:02,745.745 INFO    ] 2026-10-25 14:08:02
[2026-10-25 14:08:03,071.071 INFO    ] 2026-10-25 14:08:03
[2026-10-25 14:08:03,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:08:03,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:08:03,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:08:03,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:08:03,460.460 INFO    ] time= 25/10/2026 14:08:03
[2026-10-25 14:08:03,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:08:03,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:08:03,586.586 INFO    ] No existing commands found in stream
[2026-10-25 14:08:08,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:08:08,625.625 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 14:08:13,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:08:13,047.047 INFO    ] Checking for system updates...
[2026-10-25 14:08:13,083.083 INFO    ] 200
[2026-10-25 14:08:13,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:13,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:08:13,147.147 INFO    ] No update needed
[2026-10-25 14:08:13,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 14:08:13,183.183 INFO    ] 200
[2026-10-25 14:08:13,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:13,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:08:13,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:08:13,284.284 INFO    ] No camera update needed
[2026-10-25 14:08:13,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:08:13,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:08:13,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:08:13,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:08:15,338.338 INFO    ] ================================================
[2026-10-25 14:08:15,358.358 INFO    ] Launching Daemon at Sun Oct 25 14:08:15 IST 2026
[2026-10-25 14:08:15,370.370 INFO    ] ================================================
[2026-10-25 14:08:16,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:08:16
[2026-10-25 14:08:16,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:08:17,002.002 INFO    ] Initializing speech engine...
[2026-10-25 14:08:17,009.009 INFO    ] 2026-10-25 14:08:17
[2026-10-25 14:08:17,280.280 INFO    ] 2026-10-25 14:08:17
[2026-10-25 14:08:17,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:08:17,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:08:17,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:08:17,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:08:17,747.747 INFO    ] time= 25/10/2026 14:08:17
[2026-10-25 14:08:17,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:08:17,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:08:17,900.900 INFO    ] No existing commands found in stream
[2026-10-25 14:08:22,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:08:22,914.914 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 14:08:24,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:08:24,814.814 INFO    ] Checking for system updates...
[2026-10-25 14:08:24,854.854 INFO    ] 200
[2026-10-25 14:08:24,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:24,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:24,911.911 INFO    ] No update needed
[2026-10-25 14:08:24,913.913 INFO    ] Checking for camera pi updates...
[2026-10-25 14:08:24,947.947 INFO    ] 200
[2026-10-25 14:08:24,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:24,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:08:25,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:25,039.039 INFO    ] No camera update needed
[2026-10-25 14:08:25,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:08:25,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:08:25,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:08:25,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:08:27,094.094 INFO    ] ================================================
[2026-10-25 14:08:27,109.109 INFO    ] Launching Daemon at Sun Oct 25 14:08:27 IST 2026
[2026-10-25 14:08:27,120.120 INFO    ] ================================================
[2026-10-25 14:08:27,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:08:27
[2026-10-25 14:08:28,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:08:28,550.550 INFO    ] Initializing speech engine...
[2026-10-25 14:08:28,559.559 INFO    ] 2026-10-25 14:08:28
[2026-10-25 14:08:28,870.870 INFO    ] 2026-10-25 14:08:28
[2026-10-25 14:08:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:08:29,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:08:29,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:08:29,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:08:29,221.221 INFO    ] time= 25/10/2026 14:08:29
[2026-10-25 14:08:29,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:08:29,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:08:29,296.296 INFO    ] No existing commands found in stream
[2026-10-25 14:08:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:08:34,312.312 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 14:08:38,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:08:38,056.056 INFO    ] Checking for system updates...
[2026-10-25 14:08:38,093.093 INFO    ] 200
[2026-10-25 14:08:38,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:38,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:38,150.150 INFO    ] No update needed
[2026-10-25 14:08:38,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 14:08:38,186.186 INFO    ] 200
[2026-10-25 14:08:38,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:38,230.230 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:08:38,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:38,324.324 INFO    ] No camera update needed
[2026-10-25 14:08:38,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:08:38,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:08:38,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:08:38,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:08:40,382.382 INFO    ] ================================================
[2026-10-25 14:08:40,398.398 INFO    ] Launching Daemon at Sun Oct 25 14:08:40 IST 2026
[2026-10-25 14:08:40,409.409 INFO    ] ================================================
[2026-10-25 14:08:41,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:08:40
[2026-10-25 14:08:41,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:08:41,927.927 INFO    ] Initializing speech engine...
[2026-10-25 14:08:41,941.941 INFO    ] 2026-10-25 14:08:41
[2026-10-25 14:08:42,207.207 INFO    ] 2026-10-25 14:08:42
[2026-10-25 14:08:42,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:08:42,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:08:42,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:08:42,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:08:42,691.691 INFO    ] time= 25/10/2026 14:08:42
[2026-10-25 14:08:42,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:08:42,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:08:42,842.842 INFO    ] No existing commands found in stream
[2026-10-25 14:08:47,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:08:47,882.882 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 14:08:51,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:08:51,723.723 INFO    ] Checking for system updates...
[2026-10-25 14:08:51,770.770 INFO    ] 200
[2026-10-25 14:08:51,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:51,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:51,844.844 INFO    ] No update needed
[2026-10-25 14:08:51,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 14:08:51,891.891 INFO    ] 200
[2026-10-25 14:08:51,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:08:51,941.941 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:08:52,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:08:52,106.106 INFO    ] No camera update needed
[2026-10-25 14:08:52,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:08:52,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:08:52,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:08:52,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:08:54,163.163 INFO    ] ================================================
[2026-10-25 14:08:54,178.178 INFO    ] Launching Daemon at Sun Oct 25 14:08:54 IST 2026
[2026-10-25 14:08:54,189.189 INFO    ] ================================================
[2026-10-25 14:08:54,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:08:54
[2026-10-25 14:08:55,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:08:55,609.609 INFO    ] Initializing speech engine...
[2026-10-25 14:08:55,617.617 INFO    ] 2026-10-25 14:08:55
[2026-10-25 14:08:55,865.865 INFO    ] 2026-10-25 14:08:55
[2026-10-25 14:08:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:08:56,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:08:56,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:08:56,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:08:56,328.328 INFO    ] time= 25/10/2026 14:08:56
[2026-10-25 14:08:56,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:08:56,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:08:56,484.484 INFO    ] No existing commands found in stream
[2026-10-25 14:09:01,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:09:01,506.506 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 14:09:03,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:09:03,402.402 INFO    ] Checking for system updates...
[2026-10-25 14:09:03,445.445 INFO    ] 200
[2026-10-25 14:09:03,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:03,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:09:03,514.514 INFO    ] No update needed
[2026-10-25 14:09:03,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 14:09:03,560.560 INFO    ] 200
[2026-10-25 14:09:03,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:03,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:09:03,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:09:03,672.672 INFO    ] No camera update needed
[2026-10-25 14:09:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:09:03,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:09:03,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:09:03,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:09:05,733.733 INFO    ] ================================================
[2026-10-25 14:09:05,748.748 INFO    ] Launching Daemon at Sun Oct 25 14:09:05 IST 2026
[2026-10-25 14:09:05,758.758 INFO    ] ================================================
[2026-10-25 14:09:06,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:09:06
[2026-10-25 14:09:06,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:09:07,174.174 INFO    ] Initializing speech engine...
[2026-10-25 14:09:07,184.184 INFO    ] 2026-10-25 14:09:07
[2026-10-25 14:09:07,434.434 INFO    ] 2026-10-25 14:09:07
[2026-10-25 14:09:07,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:09:07,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:09:07,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:09:07,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:09:07,895.895 INFO    ] time= 25/10/2026 14:09:07
[2026-10-25 14:09:07,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:09:07,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:09:08,039.039 INFO    ] No existing commands found in stream
[2026-10-25 14:09:13,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:09:13,053.053 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 14:09:19,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:09:19,059.059 INFO    ] Checking for system updates...
[2026-10-25 14:09:19,096.096 INFO    ] 200
[2026-10-25 14:09:19,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:19,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:09:19,157.157 INFO    ] No update needed
[2026-10-25 14:09:19,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 14:09:19,194.194 INFO    ] 200
[2026-10-25 14:09:19,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:19,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:09:19,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:09:19,287.287 INFO    ] No camera update needed
[2026-10-25 14:09:19,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:09:19,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:09:19,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:09:19,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:09:21,342.342 INFO    ] ================================================
[2026-10-25 14:09:21,357.357 INFO    ] Launching Daemon at Sun Oct 25 14:09:21 IST 2026
[2026-10-25 14:09:21,367.367 INFO    ] ================================================
[2026-10-25 14:09:21,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:09:21
[2026-10-25 14:09:22,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:09:22,786.786 INFO    ] Initializing speech engine...
[2026-10-25 14:09:22,795.795 INFO    ] 2026-10-25 14:09:22
[2026-10-25 14:09:23,041.041 INFO    ] 2026-10-25 14:09:23
[2026-10-25 14:09:23,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:09:23,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:09:23,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:09:23,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:09:23,514.514 INFO    ] time= 25/10/2026 14:09:23
[2026-10-25 14:09:23,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:09:23,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:09:23,657.657 INFO    ] No existing commands found in stream
[2026-10-25 14:09:28,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:09:28,672.672 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 14:09:30,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:09:30,186.186 INFO    ] Checking for system updates...
[2026-10-25 14:09:30,244.244 INFO    ] 200
[2026-10-25 14:09:30,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:30,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:09:30,411.411 INFO    ] No update needed
[2026-10-25 14:09:30,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 14:09:30,457.457 INFO    ] 200
[2026-10-25 14:09:30,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 14:09:30,474.474 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 14:09:30,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:09:30,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:09:30,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:09:30,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:09:32,538.538 INFO    ] ================================================
[2026-10-25 14:09:32,564.564 INFO    ] Launching Daemon at Sun Oct 25 14:09:32 IST 2026
[2026-10-25 14:09:32,578.578 INFO    ] ================================================
[2026-10-25 14:09:33,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:09:33
[2026-10-25 14:09:33,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:09:34,286.286 INFO    ] Initializing speech engine...
[2026-10-25 14:09:34,295.295 INFO    ] 2026-10-25 14:09:34
[2026-10-25 14:09:34,574.574 INFO    ] 2026-10-25 14:09:34
[2026-10-25 14:09:34,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:09:34,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:09:34,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:09:35,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:09:35,110.110 INFO    ] time= 25/10/2026 14:09:35
[2026-10-25 14:09:35,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:09:35,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:09:35,265.265 INFO    ] No existing commands found in stream
[2026-10-25 14:09:40,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:09:40,293.293 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 14:09:44,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:09:44,656.656 INFO    ] Checking for system updates...
[2026-10-25 14:09:44,692.692 INFO    ] 200
[2026-10-25 14:09:44,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:44,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:09:44,751.751 INFO    ] No update needed
[2026-10-25 14:09:44,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 14:09:44,789.789 INFO    ] 200
[2026-10-25 14:09:44,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:44,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:09:44,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:09:44,879.879 INFO    ] No camera update needed
[2026-10-25 14:09:44,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:09:44,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:09:44,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:09:44,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:09:46,936.936 INFO    ] ================================================
[2026-10-25 14:09:46,951.951 INFO    ] Launching Daemon at Sun Oct 25 14:09:46 IST 2026
[2026-10-25 14:09:46,961.961 INFO    ] ================================================
[2026-10-25 14:09:47,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:09:47
[2026-10-25 14:09:48,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:09:48,400.400 INFO    ] Initializing speech engine...
[2026-10-25 14:09:48,416.416 INFO    ] 2026-10-25 14:09:48
[2026-10-25 14:09:48,696.696 INFO    ] 2026-10-25 14:09:48
[2026-10-25 14:09:48,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:09:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:09:49,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:09:50,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:09:50,199.199 INFO    ] time= 25/10/2026 14:09:50
[2026-10-25 14:09:50,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:09:50,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:09:50,263.263 INFO    ] No existing commands found in stream
[2026-10-25 14:09:55,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:09:55,277.277 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 14:09:59,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:09:59,426.426 INFO    ] Checking for system updates...
[2026-10-25 14:09:59,463.463 INFO    ] 200
[2026-10-25 14:09:59,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:59,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:09:59,523.523 INFO    ] No update needed
[2026-10-25 14:09:59,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 14:09:59,563.563 INFO    ] 200
[2026-10-25 14:09:59,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:09:59,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:09:59,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:09:59,641.641 INFO    ] No camera update needed
[2026-10-25 14:09:59,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:09:59,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:09:59,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:09:59,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:10:01,705.705 INFO    ] ================================================
[2026-10-25 14:10:01,771.771 INFO    ] Launching Daemon at Sun Oct 25 14:10:01 IST 2026
[2026-10-25 14:10:01,809.809 INFO    ] ================================================
[2026-10-25 14:10:02,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:10:02
[2026-10-25 14:10:03,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:10:03,977.977 INFO    ] Initializing speech engine...
[2026-10-25 14:10:03,999.999 INFO    ] 2026-10-25 14:10:03
[2026-10-25 14:10:04,310.310 INFO    ] 2026-10-25 14:10:04
[2026-10-25 14:10:04,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:10:04,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:10:04,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:10:04,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:10:04,720.720 INFO    ] time= 25/10/2026 14:10:04
[2026-10-25 14:10:04,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:10:04,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:10:04,897.897 INFO    ] No existing commands found in stream
[2026-10-25 14:10:09,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:10:09,930.930 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 14:10:12,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:10:12,785.785 INFO    ] Checking for system updates...
[2026-10-25 14:10:12,821.821 INFO    ] 200
[2026-10-25 14:10:12,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:12,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:10:12,883.883 INFO    ] No update needed
[2026-10-25 14:10:12,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 14:10:12,922.922 INFO    ] 200
[2026-10-25 14:10:12,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:12,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:10:13,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:10:13,036.036 INFO    ] No camera update needed
[2026-10-25 14:10:13,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:10:13,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:10:13,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:10:13,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:10:15,092.092 INFO    ] ================================================
[2026-10-25 14:10:15,107.107 INFO    ] Launching Daemon at Sun Oct 25 14:10:15 IST 2026
[2026-10-25 14:10:15,117.117 INFO    ] ================================================
[2026-10-25 14:10:15,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:10:15
[2026-10-25 14:10:16,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:10:16,546.546 INFO    ] Initializing speech engine...
[2026-10-25 14:10:16,553.553 INFO    ] 2026-10-25 14:10:16
[2026-10-25 14:10:16,845.845 INFO    ] 2026-10-25 14:10:16
[2026-10-25 14:10:16,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:10:21,939.939 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 14:10:21,966.966 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 14:10:21,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:10:21,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:10:21,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:10:24,025.025 INFO    ] ================================================
[2026-10-25 14:10:24,040.040 INFO    ] Launching Daemon at Sun Oct 25 14:10:24 IST 2026
[2026-10-25 14:10:24,050.050 INFO    ] ================================================
[2026-10-25 14:10:24,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:10:24
[2026-10-25 14:10:25,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:10:25,453.453 INFO    ] Initializing speech engine...
[2026-10-25 14:10:25,459.459 INFO    ] 2026-10-25 14:10:25
[2026-10-25 14:10:25,746.746 INFO    ] 2026-10-25 14:10:25
[2026-10-25 14:10:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:10:25,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:10:25,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:10:26,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:10:26,153.153 INFO    ] time= 25/10/2026 14:10:26
[2026-10-25 14:10:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:10:26,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:10:26,235.235 INFO    ] No existing commands found in stream
[2026-10-25 14:10:31,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:10:31,250.250 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 14:10:33,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:10:33,724.724 INFO    ] Checking for system updates...
[2026-10-25 14:10:33,760.760 INFO    ] 200
[2026-10-25 14:10:33,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:33,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:10:33,820.820 INFO    ] No update needed
[2026-10-25 14:10:33,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 14:10:33,857.857 INFO    ] 200
[2026-10-25 14:10:33,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:33,904.904 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:10:33,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:10:33,956.956 INFO    ] No camera update needed
[2026-10-25 14:10:33,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:10:33,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:10:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:10:33,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:10:36,012.012 INFO    ] ================================================
[2026-10-25 14:10:36,027.027 INFO    ] Launching Daemon at Sun Oct 25 14:10:36 IST 2026
[2026-10-25 14:10:36,040.040 INFO    ] ================================================
[2026-10-25 14:10:36,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:10:36
[2026-10-25 14:10:37,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:10:37,615.615 INFO    ] Initializing speech engine...
[2026-10-25 14:10:37,626.626 INFO    ] 2026-10-25 14:10:37
[2026-10-25 14:10:37,895.895 INFO    ] 2026-10-25 14:10:37
[2026-10-25 14:10:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:10:38,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:10:38,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:10:38,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:10:38,416.416 INFO    ] time= 25/10/2026 14:10:38
[2026-10-25 14:10:38,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:10:38,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:10:38,579.579 INFO    ] No existing commands found in stream
[2026-10-25 14:10:43,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:10:43,605.605 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 14:10:46,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:10:46,595.595 INFO    ] Checking for system updates...
[2026-10-25 14:10:46,633.633 INFO    ] 200
[2026-10-25 14:10:46,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:46,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:10:46,693.693 INFO    ] No update needed
[2026-10-25 14:10:46,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 14:10:46,731.731 INFO    ] 200
[2026-10-25 14:10:46,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:10:46,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:10:46,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:10:46,831.831 INFO    ] No camera update needed
[2026-10-25 14:10:46,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:10:46,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:10:46,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:10:46,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:10:48,889.889 INFO    ] ================================================
[2026-10-25 14:10:48,904.904 INFO    ] Launching Daemon at Sun Oct 25 14:10:48 IST 2026
[2026-10-25 14:10:48,914.914 INFO    ] ================================================
[2026-10-25 14:10:49,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:10:49
[2026-10-25 14:10:50,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:10:50,357.357 INFO    ] Initializing speech engine...
[2026-10-25 14:10:50,365.365 INFO    ] 2026-10-25 14:10:50
[2026-10-25 14:10:50,623.623 INFO    ] 2026-10-25 14:10:50
[2026-10-25 14:10:50,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:10:52,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:10:52,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:10:52,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:10:52,899.899 INFO    ] time= 25/10/2026 14:10:52
[2026-10-25 14:10:52,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:10:52,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:10:52,986.986 INFO    ] No existing commands found in stream
[2026-10-25 14:10:57,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:10:58,000.000 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 14:11:00,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:11:00,204.204 INFO    ] Checking for system updates...
[2026-10-25 14:11:00,240.240 INFO    ] 200
[2026-10-25 14:11:00,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:00,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:00,305.305 INFO    ] No update needed
[2026-10-25 14:11:00,307.307 INFO    ] Checking for camera pi updates...
[2026-10-25 14:11:00,344.344 INFO    ] 200
[2026-10-25 14:11:00,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:00,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:11:00,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:00,543.543 INFO    ] No camera update needed
[2026-10-25 14:11:00,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:11:00,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:11:00,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:11:00,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:11:02,605.605 INFO    ] ================================================
[2026-10-25 14:11:02,625.625 INFO    ] Launching Daemon at Sun Oct 25 14:11:02 IST 2026
[2026-10-25 14:11:02,640.640 INFO    ] ================================================
[2026-10-25 14:11:03,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:11:03
[2026-10-25 14:11:03,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:11:04,168.168 INFO    ] Initializing speech engine...
[2026-10-25 14:11:04,181.181 INFO    ] 2026-10-25 14:11:04
[2026-10-25 14:11:04,447.447 INFO    ] 2026-10-25 14:11:04
[2026-10-25 14:11:04,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:11:04,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:11:04,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:11:04,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:11:04,823.823 INFO    ] time= 25/10/2026 14:11:04
[2026-10-25 14:11:04,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:11:04,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:11:04,946.946 INFO    ] No existing commands found in stream
[2026-10-25 14:11:09,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:11:09,967.967 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 14:11:14,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:11:14,219.219 INFO    ] Checking for system updates...
[2026-10-25 14:11:14,257.257 INFO    ] 200
[2026-10-25 14:11:14,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:14,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:11:14,316.316 INFO    ] No update needed
[2026-10-25 14:11:14,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 14:11:14,356.356 INFO    ] 200
[2026-10-25 14:11:14,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:14,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:11:14,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:11:14,472.472 INFO    ] No camera update needed
[2026-10-25 14:11:14,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:11:14,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:11:14,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:11:14,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:11:16,530.530 INFO    ] ================================================
[2026-10-25 14:11:16,545.545 INFO    ] Launching Daemon at Sun Oct 25 14:11:16 IST 2026
[2026-10-25 14:11:16,556.556 INFO    ] ================================================
[2026-10-25 14:11:17,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:11:17
[2026-10-25 14:11:17,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:11:18,161.161 INFO    ] Initializing speech engine...
[2026-10-25 14:11:18,176.176 INFO    ] 2026-10-25 14:11:18
[2026-10-25 14:11:18,464.464 INFO    ] 2026-10-25 14:11:18
[2026-10-25 14:11:18,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:11:18,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:11:18,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:11:18,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:11:18,926.926 INFO    ] time= 25/10/2026 14:11:18
[2026-10-25 14:11:18,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:11:19,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:11:19,149.149 INFO    ] No existing commands found in stream
[2026-10-25 14:11:24,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:11:24,179.179 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 14:11:26,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:11:26,813.813 INFO    ] Checking for system updates...
[2026-10-25 14:11:26,850.850 INFO    ] 200
[2026-10-25 14:11:26,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:26,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:11:26,910.910 INFO    ] No update needed
[2026-10-25 14:11:26,913.913 INFO    ] Checking for camera pi updates...
[2026-10-25 14:11:26,948.948 INFO    ] 200
[2026-10-25 14:11:26,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:26,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:11:27,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:11:27,045.045 INFO    ] No camera update needed
[2026-10-25 14:11:27,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:11:27,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:11:27,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:11:27,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:11:29,102.102 INFO    ] ================================================
[2026-10-25 14:11:29,117.117 INFO    ] Launching Daemon at Sun Oct 25 14:11:29 IST 2026
[2026-10-25 14:11:29,127.127 INFO    ] ================================================
[2026-10-25 14:11:29,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:11:29
[2026-10-25 14:11:30,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:11:30,570.570 INFO    ] Initializing speech engine...
[2026-10-25 14:11:30,595.595 INFO    ] 2026-10-25 14:11:30
[2026-10-25 14:11:30,868.868 INFO    ] 2026-10-25 14:11:30
[2026-10-25 14:11:30,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:11:31,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:11:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:11:31,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:11:31,259.259 INFO    ] time= 25/10/2026 14:11:31
[2026-10-25 14:11:31,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:11:31,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:11:31,373.373 INFO    ] No existing commands found in stream
[2026-10-25 14:11:36,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:11:36,386.386 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 14:11:40,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:11:40,015.015 INFO    ] Checking for system updates...
[2026-10-25 14:11:40,055.055 INFO    ] 200
[2026-10-25 14:11:40,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:40,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:40,118.118 INFO    ] No update needed
[2026-10-25 14:11:40,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 14:11:40,158.158 INFO    ] 200
[2026-10-25 14:11:40,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:40,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:11:40,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:40,255.255 INFO    ] No camera update needed
[2026-10-25 14:11:40,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:11:40,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:11:40,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:11:40,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:11:42,311.311 INFO    ] ================================================
[2026-10-25 14:11:42,326.326 INFO    ] Launching Daemon at Sun Oct 25 14:11:42 IST 2026
[2026-10-25 14:11:42,336.336 INFO    ] ================================================
[2026-10-25 14:11:42,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:11:42
[2026-10-25 14:11:43,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:11:43,763.763 INFO    ] Initializing speech engine...
[2026-10-25 14:11:43,772.772 INFO    ] 2026-10-25 14:11:43
[2026-10-25 14:11:44,026.026 INFO    ] 2026-10-25 14:11:44
[2026-10-25 14:11:44,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:11:44,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:11:44,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:11:44,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:11:44,402.402 INFO    ] time= 25/10/2026 14:11:44
[2026-10-25 14:11:44,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:11:44,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:11:44,526.526 INFO    ] No existing commands found in stream
[2026-10-25 14:11:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:11:49,541.541 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 14:11:50,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:11:50,292.292 INFO    ] Checking for system updates...
[2026-10-25 14:11:50,328.328 INFO    ] 200
[2026-10-25 14:11:50,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:50,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:50,387.387 INFO    ] No update needed
[2026-10-25 14:11:50,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 14:11:50,423.423 INFO    ] 200
[2026-10-25 14:11:50,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:11:50,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:11:50,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:11:50,531.531 INFO    ] No camera update needed
[2026-10-25 14:11:50,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:11:50,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:11:50,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:11:50,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:11:52,586.586 INFO    ] ================================================
[2026-10-25 14:11:52,601.601 INFO    ] Launching Daemon at Sun Oct 25 14:11:52 IST 2026
[2026-10-25 14:11:52,612.612 INFO    ] ================================================
[2026-10-25 14:11:53,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:11:53
[2026-10-25 14:11:53,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:11:54,019.019 INFO    ] Initializing speech engine...
[2026-10-25 14:11:54,028.028 INFO    ] 2026-10-25 14:11:54
[2026-10-25 14:11:54,319.319 INFO    ] 2026-10-25 14:11:54
[2026-10-25 14:11:54,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:11:54,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:11:54,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:11:55,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:11:55,118.118 INFO    ] time= 25/10/2026 14:11:55
[2026-10-25 14:11:55,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:11:55,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:11:55,311.311 INFO    ] No existing commands found in stream
[2026-10-25 14:12:00,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:12:00,338.338 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 14:12:04,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:12:04,694.694 INFO    ] Checking for system updates...
[2026-10-25 14:12:04,732.732 INFO    ] 200
[2026-10-25 14:12:04,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:04,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:04,791.791 INFO    ] No update needed
[2026-10-25 14:12:04,794.794 INFO    ] Checking for camera pi updates...
[2026-10-25 14:12:04,828.828 INFO    ] 200
[2026-10-25 14:12:04,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:04,870.870 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:12:04,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:04,923.923 INFO    ] No camera update needed
[2026-10-25 14:12:04,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:12:04,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:12:04,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:12:04,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:12:06,979.979 INFO    ] ================================================
[2026-10-25 14:12:06,994.994 INFO    ] Launching Daemon at Sun Oct 25 14:12:06 IST 2026
[2026-10-25 14:12:07,005.005 INFO    ] ================================================
[2026-10-25 14:12:07,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:12:07
[2026-10-25 14:12:08,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:12:08,596.596 INFO    ] Initializing speech engine...
[2026-10-25 14:12:08,607.607 INFO    ] 2026-10-25 14:12:08
[2026-10-25 14:12:08,892.892 INFO    ] 2026-10-25 14:12:08
[2026-10-25 14:12:08,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:12:09,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:12:09,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:12:09,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:12:09,393.393 INFO    ] time= 25/10/2026 14:12:09
[2026-10-25 14:12:09,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:12:09,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:12:09,582.582 INFO    ] No existing commands found in stream
[2026-10-25 14:12:14,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:12:14,607.607 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 14:12:15,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:12:15,723.723 INFO    ] Checking for system updates...
[2026-10-25 14:12:15,763.763 INFO    ] 200
[2026-10-25 14:12:15,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:15,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:12:15,829.829 INFO    ] No update needed
[2026-10-25 14:12:15,831.831 INFO    ] Checking for camera pi updates...
[2026-10-25 14:12:15,869.869 INFO    ] 200
[2026-10-25 14:12:15,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:15,918.918 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:12:15,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:12:15,967.967 INFO    ] No camera update needed
[2026-10-25 14:12:15,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:12:15,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:12:15,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:12:15,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:12:18,024.024 INFO    ] ================================================
[2026-10-25 14:12:18,040.040 INFO    ] Launching Daemon at Sun Oct 25 14:12:18 IST 2026
[2026-10-25 14:12:18,050.050 INFO    ] ================================================
[2026-10-25 14:12:18,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:12:18
[2026-10-25 14:12:19,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:12:19,467.467 INFO    ] Initializing speech engine...
[2026-10-25 14:12:19,476.476 INFO    ] 2026-10-25 14:12:19
[2026-10-25 14:12:19,722.722 INFO    ] 2026-10-25 14:12:19
[2026-10-25 14:12:19,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:12:19,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:12:19,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:12:20,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:12:20,180.180 INFO    ] time= 25/10/2026 14:12:20
[2026-10-25 14:12:20,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:12:20,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:12:20,336.336 INFO    ] No existing commands found in stream
[2026-10-25 14:12:25,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:12:25,351.351 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 14:12:28,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:12:28,604.604 INFO    ] Checking for system updates...
[2026-10-25 14:12:28,641.641 INFO    ] 200
[2026-10-25 14:12:28,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:28,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:28,698.698 INFO    ] No update needed
[2026-10-25 14:12:28,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 14:12:28,738.738 INFO    ] 200
[2026-10-25 14:12:28,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:28,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:12:28,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:28,832.832 INFO    ] No camera update needed
[2026-10-25 14:12:28,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:12:28,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:12:28,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:12:28,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:12:30,887.887 INFO    ] ================================================
[2026-10-25 14:12:30,908.908 INFO    ] Launching Daemon at Sun Oct 25 14:12:30 IST 2026
[2026-10-25 14:12:30,919.919 INFO    ] ================================================
[2026-10-25 14:12:31,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:12:31
[2026-10-25 14:12:32,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:12:32,413.413 INFO    ] Initializing speech engine...
[2026-10-25 14:12:32,436.436 INFO    ] 2026-10-25 14:12:32
[2026-10-25 14:12:32,715.715 INFO    ] 2026-10-25 14:12:32
[2026-10-25 14:12:32,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:12:32,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:12:32,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:12:33,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:12:33,111.111 INFO    ] time= 25/10/2026 14:12:33
[2026-10-25 14:12:33,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:12:33,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:12:33,234.234 INFO    ] No existing commands found in stream
[2026-10-25 14:12:38,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:12:38,248.248 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 14:12:41,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:12:41,521.521 INFO    ] Checking for system updates...
[2026-10-25 14:12:41,557.557 INFO    ] 200
[2026-10-25 14:12:41,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:41,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:12:41,614.614 INFO    ] No update needed
[2026-10-25 14:12:41,617.617 INFO    ] Checking for camera pi updates...
[2026-10-25 14:12:41,655.655 INFO    ] 200
[2026-10-25 14:12:41,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:41,698.698 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:12:41,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:12:41,756.756 INFO    ] No camera update needed
[2026-10-25 14:12:41,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:12:41,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:12:41,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:12:41,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:12:43,811.811 INFO    ] ================================================
[2026-10-25 14:12:43,826.826 INFO    ] Launching Daemon at Sun Oct 25 14:12:43 IST 2026
[2026-10-25 14:12:43,837.837 INFO    ] ================================================
[2026-10-25 14:12:44,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:12:44
[2026-10-25 14:12:45,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:12:45,286.286 INFO    ] Initializing speech engine...
[2026-10-25 14:12:45,295.295 INFO    ] 2026-10-25 14:12:45
[2026-10-25 14:12:45,545.545 INFO    ] 2026-10-25 14:12:45
[2026-10-25 14:12:45,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:12:45,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:12:45,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:12:45,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:12:45,912.912 INFO    ] time= 25/10/2026 14:12:45
[2026-10-25 14:12:45,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:12:45,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:12:46,092.092 INFO    ] No existing commands found in stream
[2026-10-25 14:12:51,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:12:51,120.120 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 14:12:56,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:12:56,680.680 INFO    ] Checking for system updates...
[2026-10-25 14:12:56,720.720 INFO    ] 200
[2026-10-25 14:12:56,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:56,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:56,779.779 INFO    ] No update needed
[2026-10-25 14:12:56,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 14:12:56,816.816 INFO    ] 200
[2026-10-25 14:12:56,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:12:56,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:12:56,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:12:56,928.928 INFO    ] No camera update needed
[2026-10-25 14:12:56,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:12:56,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:12:56,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:12:56,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:12:58,985.985 INFO    ] ================================================
[2026-10-25 14:12:59,001.001 INFO    ] Launching Daemon at Sun Oct 25 14:12:58 IST 2026
[2026-10-25 14:12:59,012.012 INFO    ] ================================================
[2026-10-25 14:12:59,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:12:59
[2026-10-25 14:13:00,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:13:00,429.429 INFO    ] Initializing speech engine...
[2026-10-25 14:13:00,448.448 INFO    ] 2026-10-25 14:13:00
[2026-10-25 14:13:00,694.694 INFO    ] 2026-10-25 14:13:00
[2026-10-25 14:13:00,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:13:00,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:13:00,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:13:01,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:13:01,182.182 INFO    ] time= 25/10/2026 14:13:01
[2026-10-25 14:13:01,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:13:01,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:13:01,308.308 INFO    ] No existing commands found in stream
[2026-10-25 14:13:06,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:13:06,323.323 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 14:13:07,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:13:07,318.318 INFO    ] Checking for system updates...
[2026-10-25 14:13:07,355.355 INFO    ] 200
[2026-10-25 14:13:07,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:07,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:13:07,421.421 INFO    ] No update needed
[2026-10-25 14:13:07,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 14:13:07,458.458 INFO    ] 200
[2026-10-25 14:13:07,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:07,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:13:07,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:13:07,567.567 INFO    ] No camera update needed
[2026-10-25 14:13:07,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:13:07,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:13:07,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:13:07,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:13:09,623.623 INFO    ] ================================================
[2026-10-25 14:13:09,639.639 INFO    ] Launching Daemon at Sun Oct 25 14:13:09 IST 2026
[2026-10-25 14:13:09,651.651 INFO    ] ================================================
[2026-10-25 14:13:10,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:13:10
[2026-10-25 14:13:10,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:13:11,055.055 INFO    ] Initializing speech engine...
[2026-10-25 14:13:11,063.063 INFO    ] 2026-10-25 14:13:11
[2026-10-25 14:13:11,359.359 INFO    ] 2026-10-25 14:13:11
[2026-10-25 14:13:11,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:13:11,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:13:11,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:13:11,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:13:11,746.746 INFO    ] time= 25/10/2026 14:13:11
[2026-10-25 14:13:11,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:13:11,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:13:11,875.875 INFO    ] No existing commands found in stream
[2026-10-25 14:13:16,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:13:16,888.888 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 14:13:21,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:13:21,755.755 INFO    ] Checking for system updates...
[2026-10-25 14:13:21,794.794 INFO    ] 200
[2026-10-25 14:13:21,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:21,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:13:21,865.865 INFO    ] No update needed
[2026-10-25 14:13:21,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 14:13:21,904.904 INFO    ] 200
[2026-10-25 14:13:21,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:21,947.947 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:13:21,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:13:21,994.994 INFO    ] No camera update needed
[2026-10-25 14:13:21,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:13:21,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:13:22,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:13:22,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:13:24,050.050 INFO    ] ================================================
[2026-10-25 14:13:24,066.066 INFO    ] Launching Daemon at Sun Oct 25 14:13:24 IST 2026
[2026-10-25 14:13:24,077.077 INFO    ] ================================================
[2026-10-25 14:13:24,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:13:24
[2026-10-25 14:13:25,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:13:25,501.501 INFO    ] Initializing speech engine...
[2026-10-25 14:13:25,507.507 INFO    ] 2026-10-25 14:13:25
[2026-10-25 14:13:25,806.806 INFO    ] 2026-10-25 14:13:25
[2026-10-25 14:13:25,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:13:28,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:13:28,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:13:28,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:13:28,110.110 INFO    ] time= 25/10/2026 14:13:28
[2026-10-25 14:13:28,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:13:28,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:13:28,171.171 INFO    ] No existing commands found in stream
[2026-10-25 14:13:33,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:13:33,185.185 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 14:13:35,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:13:35,944.944 INFO    ] Checking for system updates...
[2026-10-25 14:13:35,980.980 INFO    ] 200
[2026-10-25 14:13:35,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:36,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:36,039.039 INFO    ] No update needed
[2026-10-25 14:13:36,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 14:13:36,075.075 INFO    ] 200
[2026-10-25 14:13:36,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:36,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:13:36,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:36,168.168 INFO    ] No camera update needed
[2026-10-25 14:13:36,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:13:36,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:13:36,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:13:36,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:13:38,223.223 INFO    ] ================================================
[2026-10-25 14:13:38,239.239 INFO    ] Launching Daemon at Sun Oct 25 14:13:38 IST 2026
[2026-10-25 14:13:38,250.250 INFO    ] ================================================
[2026-10-25 14:13:38,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:13:38
[2026-10-25 14:13:39,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:13:39,662.662 INFO    ] Initializing speech engine...
[2026-10-25 14:13:39,681.681 INFO    ] 2026-10-25 14:13:39
[2026-10-25 14:13:39,931.931 INFO    ] 2026-10-25 14:13:39
[2026-10-25 14:13:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:13:40,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:13:40,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:13:40,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:13:40,308.308 INFO    ] time= 25/10/2026 14:13:40
[2026-10-25 14:13:40,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:13:40,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:13:40,500.500 INFO    ] No existing commands found in stream
[2026-10-25 14:13:45,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:13:45,518.518 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 14:13:48,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:13:48,804.804 INFO    ] Checking for system updates...
[2026-10-25 14:13:48,841.841 INFO    ] 200
[2026-10-25 14:13:48,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:48,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:48,900.900 INFO    ] No update needed
[2026-10-25 14:13:48,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 14:13:48,941.941 INFO    ] 200
[2026-10-25 14:13:48,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:48,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:13:49,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:49,034.034 INFO    ] No camera update needed
[2026-10-25 14:13:49,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:13:49,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:13:49,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:13:49,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:13:51,091.091 INFO    ] ================================================
[2026-10-25 14:13:51,108.108 INFO    ] Launching Daemon at Sun Oct 25 14:13:51 IST 2026
[2026-10-25 14:13:51,119.119 INFO    ] ================================================
[2026-10-25 14:13:51,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:13:51
[2026-10-25 14:13:52,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:13:52,655.655 INFO    ] Initializing speech engine...
[2026-10-25 14:13:52,664.664 INFO    ] 2026-10-25 14:13:52
[2026-10-25 14:13:52,955.955 INFO    ] 2026-10-25 14:13:52
[2026-10-25 14:13:53,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:13:53,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:13:53,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:13:53,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:13:53,491.491 INFO    ] time= 25/10/2026 14:13:53
[2026-10-25 14:13:53,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:13:53,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:13:53,574.574 INFO    ] No existing commands found in stream
[2026-10-25 14:13:58,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:13:58,588.588 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 14:13:59,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:13:59,554.554 INFO    ] Checking for system updates...
[2026-10-25 14:13:59,593.593 INFO    ] 200
[2026-10-25 14:13:59,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:59,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:59,652.652 INFO    ] No update needed
[2026-10-25 14:13:59,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 14:13:59,695.695 INFO    ] 200
[2026-10-25 14:13:59,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:13:59,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:13:59,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:13:59,801.801 INFO    ] No camera update needed
[2026-10-25 14:13:59,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:13:59,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:13:59,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:13:59,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:14:01,870.870 INFO    ] ================================================
[2026-10-25 14:14:01,906.906 INFO    ] Launching Daemon at Sun Oct 25 14:14:01 IST 2026
[2026-10-25 14:14:01,919.919 INFO    ] ================================================
[2026-10-25 14:14:02,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:14:02
[2026-10-25 14:14:03,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:14:03,511.511 INFO    ] Initializing speech engine...
[2026-10-25 14:14:03,531.531 INFO    ] 2026-10-25 14:14:03
[2026-10-25 14:14:03,796.796 INFO    ] 2026-10-25 14:14:03
[2026-10-25 14:14:03,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:14:04,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:14:04,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:14:04,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:14:04,183.183 INFO    ] time= 25/10/2026 14:14:04
[2026-10-25 14:14:04,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:14:04,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:14:04,344.344 INFO    ] No existing commands found in stream
[2026-10-25 14:14:09,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:14:09,382.382 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 14:14:13,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:14:13,616.616 INFO    ] Checking for system updates...
[2026-10-25 14:14:13,651.651 INFO    ] 200
[2026-10-25 14:14:13,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:13,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:13,708.708 INFO    ] No update needed
[2026-10-25 14:14:13,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 14:14:13,745.745 INFO    ] 200
[2026-10-25 14:14:13,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:13,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:14:13,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:13,846.846 INFO    ] No camera update needed
[2026-10-25 14:14:13,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:14:13,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:14:13,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:14:13,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:14:15,900.900 INFO    ] ================================================
[2026-10-25 14:14:15,916.916 INFO    ] Launching Daemon at Sun Oct 25 14:14:15 IST 2026
[2026-10-25 14:14:15,928.928 INFO    ] ================================================
[2026-10-25 14:14:16,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:14:16
[2026-10-25 14:14:17,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:14:17,359.359 INFO    ] Initializing speech engine...
[2026-10-25 14:14:17,378.378 INFO    ] 2026-10-25 14:14:17
[2026-10-25 14:14:17,648.648 INFO    ] 2026-10-25 14:14:17
[2026-10-25 14:14:17,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:14:17,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:14:17,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:14:18,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:14:18,026.026 INFO    ] time= 25/10/2026 14:14:18
[2026-10-25 14:14:18,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:14:18,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:14:18,151.151 INFO    ] No existing commands found in stream
[2026-10-25 14:14:23,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:14:23,166.166 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 14:14:25,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:14:25,985.985 INFO    ] Checking for system updates...
[2026-10-25 14:14:26,022.022 INFO    ] 200
[2026-10-25 14:14:26,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:26,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:26,086.086 INFO    ] No update needed
[2026-10-25 14:14:26,089.089 INFO    ] Checking for camera pi updates...
[2026-10-25 14:14:26,123.123 INFO    ] 200
[2026-10-25 14:14:26,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:26,175.175 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:14:26,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:26,231.231 INFO    ] No camera update needed
[2026-10-25 14:14:26,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:14:26,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:14:26,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:14:26,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:14:28,287.287 INFO    ] ================================================
[2026-10-25 14:14:28,302.302 INFO    ] Launching Daemon at Sun Oct 25 14:14:28 IST 2026
[2026-10-25 14:14:28,314.314 INFO    ] ================================================
[2026-10-25 14:14:28,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:14:28
[2026-10-25 14:14:29,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:14:29,732.732 INFO    ] Initializing speech engine...
[2026-10-25 14:14:29,742.742 INFO    ] 2026-10-25 14:14:29
[2026-10-25 14:14:29,986.986 INFO    ] 2026-10-25 14:14:29
[2026-10-25 14:14:30,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:14:30,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:14:30,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:14:30,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:14:30,708.708 INFO    ] time= 25/10/2026 14:14:30
[2026-10-25 14:14:30,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:14:30,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:14:30,935.935 INFO    ] No existing commands found in stream
[2026-10-25 14:14:35,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:14:35,951.951 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 14:14:39,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:14:39,014.014 INFO    ] Checking for system updates...
[2026-10-25 14:14:39,049.049 INFO    ] 200
[2026-10-25 14:14:39,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:39,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:39,107.107 INFO    ] No update needed
[2026-10-25 14:14:39,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 14:14:39,142.142 INFO    ] 200
[2026-10-25 14:14:39,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:39,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:14:39,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:14:39,243.243 INFO    ] No camera update needed
[2026-10-25 14:14:39,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:14:39,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:14:39,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:14:39,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:14:41,299.299 INFO    ] ================================================
[2026-10-25 14:14:41,314.314 INFO    ] Launching Daemon at Sun Oct 25 14:14:41 IST 2026
[2026-10-25 14:14:41,326.326 INFO    ] ================================================
[2026-10-25 14:14:41,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:14:41
[2026-10-25 14:14:42,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:14:42,972.972 INFO    ] Initializing speech engine...
[2026-10-25 14:14:42,981.981 INFO    ] 2026-10-25 14:14:42
[2026-10-25 14:14:43,272.272 INFO    ] 2026-10-25 14:14:43
[2026-10-25 14:14:43,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:14:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:14:43,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:14:43,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:14:43,803.803 INFO    ] time= 25/10/2026 14:14:43
[2026-10-25 14:14:43,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:14:43,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:14:43,957.957 INFO    ] No existing commands found in stream
[2026-10-25 14:14:48,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:14:48,980.980 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 14:14:52,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:14:52,972.972 INFO    ] Checking for system updates...
[2026-10-25 14:14:53,009.009 INFO    ] 200
[2026-10-25 14:14:53,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:53,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:14:53,069.069 INFO    ] No update needed
[2026-10-25 14:14:53,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 14:14:53,107.107 INFO    ] 200
[2026-10-25 14:14:53,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:14:53,152.152 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:14:53,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:14:53,208.208 INFO    ] No camera update needed
[2026-10-25 14:14:53,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:14:53,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:14:53,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:14:53,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:14:55,269.269 INFO    ] ================================================
[2026-10-25 14:14:55,284.284 INFO    ] Launching Daemon at Sun Oct 25 14:14:55 IST 2026
[2026-10-25 14:14:55,296.296 INFO    ] ================================================
[2026-10-25 14:14:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:14:55
[2026-10-25 14:14:56,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:14:56,747.747 INFO    ] Initializing speech engine...
[2026-10-25 14:14:56,750.750 INFO    ] 2026-10-25 14:14:56
[2026-10-25 14:14:57,044.044 INFO    ] 2026-10-25 14:14:57
[2026-10-25 14:14:57,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:15:01,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:15:01,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:15:01,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:15:01,349.349 INFO    ] time= 25/10/2026 14:15:01
[2026-10-25 14:15:01,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:15:01,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:15:01,406.406 INFO    ] No existing commands found in stream
[2026-10-25 14:15:06,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:15:06,419.419 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 14:15:09,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:15:09,727.727 INFO    ] Checking for system updates...
[2026-10-25 14:15:09,769.769 INFO    ] 200
[2026-10-25 14:15:09,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:09,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:15:09,830.830 INFO    ] No update needed
[2026-10-25 14:15:09,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 14:15:09,867.867 INFO    ] 200
[2026-10-25 14:15:09,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:09,912.912 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:15:09,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:15:09,970.970 INFO    ] No camera update needed
[2026-10-25 14:15:09,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:15:09,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:15:09,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:15:09,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:15:12,026.026 INFO    ] ================================================
[2026-10-25 14:15:12,042.042 INFO    ] Launching Daemon at Sun Oct 25 14:15:12 IST 2026
[2026-10-25 14:15:12,053.053 INFO    ] ================================================
[2026-10-25 14:15:12,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:15:12
[2026-10-25 14:15:13,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:15:13,473.473 INFO    ] Initializing speech engine...
[2026-10-25 14:15:13,486.486 INFO    ] 2026-10-25 14:15:13
[2026-10-25 14:15:13,735.735 INFO    ] 2026-10-25 14:15:13
[2026-10-25 14:15:13,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:15:13,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:15:13,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:15:14,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:15:14,077.077 INFO    ] time= 25/10/2026 14:15:14
[2026-10-25 14:15:14,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:15:14,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:15:14,192.192 INFO    ] No existing commands found in stream
[2026-10-25 14:15:19,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:15:19,206.206 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 14:15:22,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:15:22,579.579 INFO    ] Checking for system updates...
[2026-10-25 14:15:22,615.615 INFO    ] 200
[2026-10-25 14:15:22,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:22,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:15:22,674.674 INFO    ] No update needed
[2026-10-25 14:15:22,677.677 INFO    ] Checking for camera pi updates...
[2026-10-25 14:15:22,711.711 INFO    ] 200
[2026-10-25 14:15:22,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:22,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:15:22,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:15:22,804.804 INFO    ] No camera update needed
[2026-10-25 14:15:22,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:15:22,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:15:22,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:15:22,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:15:24,860.860 INFO    ] ================================================
[2026-10-25 14:15:24,876.876 INFO    ] Launching Daemon at Sun Oct 25 14:15:24 IST 2026
[2026-10-25 14:15:24,888.888 INFO    ] ================================================
[2026-10-25 14:15:25,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:15:25
[2026-10-25 14:15:26,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:15:26,345.345 INFO    ] Initializing speech engine...
[2026-10-25 14:15:26,365.365 INFO    ] 2026-10-25 14:15:26
[2026-10-25 14:15:26,638.638 INFO    ] 2026-10-25 14:15:26
[2026-10-25 14:15:26,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:15:26,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:15:26,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:15:27,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:15:27,023.023 INFO    ] time= 25/10/2026 14:15:27
[2026-10-25 14:15:27,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:15:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:15:27,149.149 INFO    ] No existing commands found in stream
[2026-10-25 14:15:32,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:15:32,165.165 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 14:15:35,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:15:35,306.306 INFO    ] Checking for system updates...
[2026-10-25 14:15:35,351.351 INFO    ] 200
[2026-10-25 14:15:35,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:35,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:15:35,424.424 INFO    ] No update needed
[2026-10-25 14:15:35,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 14:15:35,487.487 INFO    ] 200
[2026-10-25 14:15:35,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:35,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:15:35,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:15:35,577.577 INFO    ] No camera update needed
[2026-10-25 14:15:35,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:15:35,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:15:35,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:15:35,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:15:37,633.633 INFO    ] ================================================
[2026-10-25 14:15:37,649.649 INFO    ] Launching Daemon at Sun Oct 25 14:15:37 IST 2026
[2026-10-25 14:15:37,661.661 INFO    ] ================================================
[2026-10-25 14:15:38,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:15:38
[2026-10-25 14:15:38,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:15:39,069.069 INFO    ] Initializing speech engine...
[2026-10-25 14:15:39,083.083 INFO    ] 2026-10-25 14:15:39
[2026-10-25 14:15:39,367.367 INFO    ] 2026-10-25 14:15:39
[2026-10-25 14:15:39,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:15:39,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:15:39,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:15:39,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:15:39,718.718 INFO    ] time= 25/10/2026 14:15:39
[2026-10-25 14:15:39,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:15:39,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:15:39,800.800 INFO    ] No existing commands found in stream
[2026-10-25 14:15:44,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:15:44,814.814 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 14:15:48,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:15:48,939.939 INFO    ] Checking for system updates...
[2026-10-25 14:15:48,978.978 INFO    ] 200
[2026-10-25 14:15:48,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:49,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:15:49,047.047 INFO    ] No update needed
[2026-10-25 14:15:49,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 14:15:49,088.088 INFO    ] 200
[2026-10-25 14:15:49,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:15:49,143.143 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:15:49,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:15:49,202.202 INFO    ] No camera update needed
[2026-10-25 14:15:49,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:15:49,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:15:49,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:15:49,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:15:51,259.259 INFO    ] ================================================
[2026-10-25 14:15:51,275.275 INFO    ] Launching Daemon at Sun Oct 25 14:15:51 IST 2026
[2026-10-25 14:15:51,285.285 INFO    ] ================================================
[2026-10-25 14:15:51,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:15:51
[2026-10-25 14:15:52,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:15:52,778.778 INFO    ] Initializing speech engine...
[2026-10-25 14:15:52,785.785 INFO    ] 2026-10-25 14:15:52
[2026-10-25 14:15:53,048.048 INFO    ] 2026-10-25 14:15:53
[2026-10-25 14:15:53,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:15:53,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:15:53,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:15:53,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:15:53,488.488 INFO    ] time= 25/10/2026 14:15:53
[2026-10-25 14:15:53,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:15:53,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:15:53,644.644 INFO    ] No existing commands found in stream
[2026-10-25 14:15:58,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:15:58,659.659 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 14:16:03,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:16:03,335.335 INFO    ] Checking for system updates...
[2026-10-25 14:16:03,374.374 INFO    ] 200
[2026-10-25 14:16:03,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:03,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:16:03,435.435 INFO    ] No update needed
[2026-10-25 14:16:03,437.437 INFO    ] Checking for camera pi updates...
[2026-10-25 14:16:03,472.472 INFO    ] 200
[2026-10-25 14:16:03,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:03,519.519 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:16:03,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:16:03,555.555 INFO    ] No camera update needed
[2026-10-25 14:16:03,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:16:03,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:16:03,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:16:03,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:16:05,611.611 INFO    ] ================================================
[2026-10-25 14:16:05,627.627 INFO    ] Launching Daemon at Sun Oct 25 14:16:05 IST 2026
[2026-10-25 14:16:05,638.638 INFO    ] ================================================
[2026-10-25 14:16:06,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:16:06
[2026-10-25 14:16:06,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:16:07,083.083 INFO    ] Initializing speech engine...
[2026-10-25 14:16:07,092.092 INFO    ] 2026-10-25 14:16:07
[2026-10-25 14:16:07,343.343 INFO    ] 2026-10-25 14:16:07
[2026-10-25 14:16:07,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:16:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:16:07,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:16:07,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:16:07,891.891 INFO    ] time= 25/10/2026 14:16:07
[2026-10-25 14:16:07,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:16:07,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:16:08,062.062 INFO    ] No existing commands found in stream
[2026-10-25 14:16:13,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:16:13,078.078 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 14:16:16,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:16:16,672.672 INFO    ] Checking for system updates...
[2026-10-25 14:16:16,708.708 INFO    ] 200
[2026-10-25 14:16:16,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:16,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:16,766.766 INFO    ] No update needed
[2026-10-25 14:16:16,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 14:16:16,803.803 INFO    ] 200
[2026-10-25 14:16:16,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:16,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:16:16,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:16,894.894 INFO    ] No camera update needed
[2026-10-25 14:16:16,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:16:16,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:16:16,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:16:16,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:16:18,950.950 INFO    ] ================================================
[2026-10-25 14:16:18,966.966 INFO    ] Launching Daemon at Sun Oct 25 14:16:18 IST 2026
[2026-10-25 14:16:18,977.977 INFO    ] ================================================
[2026-10-25 14:16:19,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:16:19
[2026-10-25 14:16:20,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:16:20,416.416 INFO    ] Initializing speech engine...
[2026-10-25 14:16:20,439.439 INFO    ] 2026-10-25 14:16:20
[2026-10-25 14:16:20,693.693 INFO    ] 2026-10-25 14:16:20
[2026-10-25 14:16:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:16:20,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:16:20,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:16:21,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:16:21,061.061 INFO    ] time= 25/10/2026 14:16:21
[2026-10-25 14:16:21,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:16:21,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:16:21,237.237 INFO    ] No existing commands found in stream
[2026-10-25 14:16:26,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:16:26,269.269 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 14:16:27,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:16:27,370.370 INFO    ] Checking for system updates...
[2026-10-25 14:16:27,407.407 INFO    ] 200
[2026-10-25 14:16:27,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:27,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:27,469.469 INFO    ] No update needed
[2026-10-25 14:16:27,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 14:16:27,509.509 INFO    ] 200
[2026-10-25 14:16:27,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:27,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:16:27,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:27,625.625 INFO    ] No camera update needed
[2026-10-25 14:16:27,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:16:27,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:16:27,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:16:27,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:16:29,683.683 INFO    ] ================================================
[2026-10-25 14:16:29,702.702 INFO    ] Launching Daemon at Sun Oct 25 14:16:29 IST 2026
[2026-10-25 14:16:29,714.714 INFO    ] ================================================
[2026-10-25 14:16:30,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:16:30
[2026-10-25 14:16:30,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:16:31,136.136 INFO    ] Initializing speech engine...
[2026-10-25 14:16:31,142.142 INFO    ] 2026-10-25 14:16:31
[2026-10-25 14:16:31,424.424 INFO    ] 2026-10-25 14:16:31
[2026-10-25 14:16:31,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:16:34,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:16:34,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:16:34,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:16:34,444.444 INFO    ] time= 25/10/2026 14:16:34
[2026-10-25 14:16:34,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:16:34,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:16:34,492.492 INFO    ] No existing commands found in stream
[2026-10-25 14:16:39,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:16:39,505.505 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 14:16:40,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:16:40,745.745 INFO    ] Checking for system updates...
[2026-10-25 14:16:40,784.784 INFO    ] 200
[2026-10-25 14:16:40,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:40,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:40,848.848 INFO    ] No update needed
[2026-10-25 14:16:40,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 14:16:40,884.884 INFO    ] 200
[2026-10-25 14:16:40,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:40,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:16:40,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:16:40,978.978 INFO    ] No camera update needed
[2026-10-25 14:16:40,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:16:40,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:16:40,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:16:40,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:16:43,034.034 INFO    ] ================================================
[2026-10-25 14:16:43,049.049 INFO    ] Launching Daemon at Sun Oct 25 14:16:43 IST 2026
[2026-10-25 14:16:43,061.061 INFO    ] ================================================
[2026-10-25 14:16:43,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:16:43
[2026-10-25 14:16:44,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:16:44,495.495 INFO    ] Initializing speech engine...
[2026-10-25 14:16:44,518.518 INFO    ] 2026-10-25 14:16:44
[2026-10-25 14:16:44,795.795 INFO    ] 2026-10-25 14:16:44
[2026-10-25 14:16:44,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:16:45,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:16:45,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:16:45,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:16:45,182.182 INFO    ] time= 25/10/2026 14:16:45
[2026-10-25 14:16:45,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:16:45,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:16:45,365.365 INFO    ] No existing commands found in stream
[2026-10-25 14:16:50,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:16:50,393.393 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 14:16:53,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:16:53,059.059 INFO    ] Checking for system updates...
[2026-10-25 14:16:53,099.099 INFO    ] 200
[2026-10-25 14:16:53,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:53,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:16:53,158.158 INFO    ] No update needed
[2026-10-25 14:16:53,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 14:16:53,197.197 INFO    ] 200
[2026-10-25 14:16:53,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:16:53,241.241 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:16:53,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:16:53,291.291 INFO    ] No camera update needed
[2026-10-25 14:16:53,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:16:53,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:16:53,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:16:53,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:16:55,345.345 INFO    ] ================================================
[2026-10-25 14:16:55,360.360 INFO    ] Launching Daemon at Sun Oct 25 14:16:55 IST 2026
[2026-10-25 14:16:55,372.372 INFO    ] ================================================
[2026-10-25 14:16:55,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:16:55
[2026-10-25 14:16:56,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:16:56,857.857 INFO    ] Initializing speech engine...
[2026-10-25 14:16:56,866.866 INFO    ] 2026-10-25 14:16:56
[2026-10-25 14:16:57,129.129 INFO    ] 2026-10-25 14:16:57
[2026-10-25 14:16:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:16:57,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:16:57,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:16:57,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:16:57,587.587 INFO    ] time= 25/10/2026 14:16:57
[2026-10-25 14:16:57,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:16:57,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:16:57,815.815 INFO    ] No existing commands found in stream
[2026-10-25 14:17:02,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:17:02,842.842 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 14:17:06,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:17:06,090.090 INFO    ] Checking for system updates...
[2026-10-25 14:17:06,128.128 INFO    ] 200
[2026-10-25 14:17:06,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:06,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:06,194.194 INFO    ] No update needed
[2026-10-25 14:17:06,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 14:17:06,235.235 INFO    ] 200
[2026-10-25 14:17:06,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:06,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:17:06,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:06,437.437 INFO    ] No camera update needed
[2026-10-25 14:17:06,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:17:06,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:17:06,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:17:06,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:17:08,493.493 INFO    ] ================================================
[2026-10-25 14:17:08,509.509 INFO    ] Launching Daemon at Sun Oct 25 14:17:08 IST 2026
[2026-10-25 14:17:08,520.520 INFO    ] ================================================
[2026-10-25 14:17:09,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:17:09
[2026-10-25 14:17:09,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:17:09,953.953 INFO    ] Initializing speech engine...
[2026-10-25 14:17:09,973.973 INFO    ] 2026-10-25 14:17:09
[2026-10-25 14:17:10,240.240 INFO    ] 2026-10-25 14:17:10
[2026-10-25 14:17:10,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:17:10,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:17:10,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:17:10,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:17:10,658.658 INFO    ] time= 25/10/2026 14:17:10
[2026-10-25 14:17:10,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:17:10,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:17:10,741.741 INFO    ] No existing commands found in stream
[2026-10-25 14:17:15,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:17:15,756.756 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 14:17:16,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:17:16,552.552 INFO    ] Checking for system updates...
[2026-10-25 14:17:16,592.592 INFO    ] 200
[2026-10-25 14:17:16,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:16,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:17:16,651.651 INFO    ] No update needed
[2026-10-25 14:17:16,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 14:17:16,687.687 INFO    ] 200
[2026-10-25 14:17:16,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:16,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:17:16,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:17:16,786.786 INFO    ] No camera update needed
[2026-10-25 14:17:16,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:17:16,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:17:16,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:17:16,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:17:18,844.844 INFO    ] ================================================
[2026-10-25 14:17:18,860.860 INFO    ] Launching Daemon at Sun Oct 25 14:17:18 IST 2026
[2026-10-25 14:17:18,870.870 INFO    ] ================================================
[2026-10-25 14:17:19,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:17:19
[2026-10-25 14:17:20,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:17:20,531.531 INFO    ] Initializing speech engine...
[2026-10-25 14:17:20,543.543 INFO    ] 2026-10-25 14:17:20
[2026-10-25 14:17:20,863.863 INFO    ] 2026-10-25 14:17:20
[2026-10-25 14:17:20,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:17:21,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:17:21,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:17:21,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:17:21,367.367 INFO    ] time= 25/10/2026 14:17:21
[2026-10-25 14:17:21,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:17:21,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:17:21,513.513 INFO    ] No existing commands found in stream
[2026-10-25 14:17:26,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:17:26,535.535 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 14:17:27,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:17:27,250.250 INFO    ] Checking for system updates...
[2026-10-25 14:17:27,289.289 INFO    ] 200
[2026-10-25 14:17:27,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:27,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:17:27,354.354 INFO    ] No update needed
[2026-10-25 14:17:27,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 14:17:27,391.391 INFO    ] 200
[2026-10-25 14:17:27,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:27,434.434 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:17:27,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:17:27,495.495 INFO    ] No camera update needed
[2026-10-25 14:17:27,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:17:27,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:17:27,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:17:27,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:17:29,552.552 INFO    ] ================================================
[2026-10-25 14:17:29,569.569 INFO    ] Launching Daemon at Sun Oct 25 14:17:29 IST 2026
[2026-10-25 14:17:29,579.579 INFO    ] ================================================
[2026-10-25 14:17:30,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:17:30
[2026-10-25 14:17:30,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:17:31,010.010 INFO    ] Initializing speech engine...
[2026-10-25 14:17:31,018.018 INFO    ] 2026-10-25 14:17:31
[2026-10-25 14:17:31,284.284 INFO    ] 2026-10-25 14:17:31
[2026-10-25 14:17:31,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:17:31,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:17:31,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:17:31,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:17:31,663.663 INFO    ] time= 25/10/2026 14:17:31
[2026-10-25 14:17:31,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:17:31,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:17:31,782.782 INFO    ] No existing commands found in stream
[2026-10-25 14:17:36,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:17:36,797.797 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 14:17:40,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:17:40,134.134 INFO    ] Checking for system updates...
[2026-10-25 14:17:40,172.172 INFO    ] 200
[2026-10-25 14:17:40,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:40,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:40,240.240 INFO    ] No update needed
[2026-10-25 14:17:40,243.243 INFO    ] Checking for camera pi updates...
[2026-10-25 14:17:40,281.281 INFO    ] 200
[2026-10-25 14:17:40,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:40,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:17:40,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:40,381.381 INFO    ] No camera update needed
[2026-10-25 14:17:40,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:17:40,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:17:40,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:17:40,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:17:42,438.438 INFO    ] ================================================
[2026-10-25 14:17:42,454.454 INFO    ] Launching Daemon at Sun Oct 25 14:17:42 IST 2026
[2026-10-25 14:17:42,467.467 INFO    ] ================================================
[2026-10-25 14:17:43,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:17:43
[2026-10-25 14:17:43,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:17:43,894.894 INFO    ] Initializing speech engine...
[2026-10-25 14:17:43,908.908 INFO    ] 2026-10-25 14:17:43
[2026-10-25 14:17:44,175.175 INFO    ] 2026-10-25 14:17:44
[2026-10-25 14:17:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:17:44,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:17:44,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:17:44,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:17:44,515.515 INFO    ] time= 25/10/2026 14:17:44
[2026-10-25 14:17:44,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:17:44,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:17:44,630.630 INFO    ] No existing commands found in stream
[2026-10-25 14:17:49,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:17:49,668.668 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 14:17:51,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:17:51,838.838 INFO    ] Checking for system updates...
[2026-10-25 14:17:51,874.874 INFO    ] 200
[2026-10-25 14:17:51,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:51,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:51,933.933 INFO    ] No update needed
[2026-10-25 14:17:51,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 14:17:51,972.972 INFO    ] 200
[2026-10-25 14:17:51,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:17:52,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:17:52,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:17:52,067.067 INFO    ] No camera update needed
[2026-10-25 14:17:52,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:17:52,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:17:52,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:17:52,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:17:54,124.124 INFO    ] ================================================
[2026-10-25 14:17:54,141.141 INFO    ] Launching Daemon at Sun Oct 25 14:17:54 IST 2026
[2026-10-25 14:17:54,153.153 INFO    ] ================================================
[2026-10-25 14:17:54,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:17:54
[2026-10-25 14:17:55,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:17:55,592.592 INFO    ] Initializing speech engine...
[2026-10-25 14:17:55,602.602 INFO    ] 2026-10-25 14:17:55
[2026-10-25 14:17:55,848.848 INFO    ] 2026-10-25 14:17:55
[2026-10-25 14:17:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:17:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:17:56,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:17:56,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:17:56,306.306 INFO    ] time= 25/10/2026 14:17:56
[2026-10-25 14:17:56,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:17:56,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:17:56,473.473 INFO    ] No existing commands found in stream
[2026-10-25 14:18:01,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:18:01,501.501 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 14:18:07,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:18:07,515.515 INFO    ] Checking for system updates...
[2026-10-25 14:18:07,558.558 INFO    ] 200
[2026-10-25 14:18:07,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:07,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:07,630.630 INFO    ] No update needed
[2026-10-25 14:18:07,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 14:18:07,674.674 INFO    ] 200
[2026-10-25 14:18:07,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:07,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:18:07,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:07,790.790 INFO    ] No camera update needed
[2026-10-25 14:18:07,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:18:07,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:18:07,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:18:07,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:18:09,848.848 INFO    ] ================================================
[2026-10-25 14:18:09,864.864 INFO    ] Launching Daemon at Sun Oct 25 14:18:09 IST 2026
[2026-10-25 14:18:09,875.875 INFO    ] ================================================
[2026-10-25 14:18:10,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:18:10
[2026-10-25 14:18:11,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:18:11,356.356 INFO    ] Initializing speech engine...
[2026-10-25 14:18:11,362.362 INFO    ] 2026-10-25 14:18:11
[2026-10-25 14:18:11,611.611 INFO    ] 2026-10-25 14:18:11
[2026-10-25 14:18:11,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:18:11,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:18:11,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:18:12,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:18:12,084.084 INFO    ] time= 25/10/2026 14:18:12
[2026-10-25 14:18:12,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:18:12,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:18:12,232.232 INFO    ] No existing commands found in stream
[2026-10-25 14:18:17,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:18:17,247.247 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 14:18:20,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:18:20,054.054 INFO    ] Checking for system updates...
[2026-10-25 14:18:20,097.097 INFO    ] 200
[2026-10-25 14:18:20,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:20,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:20,166.166 INFO    ] No update needed
[2026-10-25 14:18:20,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 14:18:20,206.206 INFO    ] 200
[2026-10-25 14:18:20,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:20,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:18:20,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:20,312.312 INFO    ] No camera update needed
[2026-10-25 14:18:20,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:18:20,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:18:20,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:18:20,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:18:22,374.374 INFO    ] ================================================
[2026-10-25 14:18:22,391.391 INFO    ] Launching Daemon at Sun Oct 25 14:18:22 IST 2026
[2026-10-25 14:18:22,403.403 INFO    ] ================================================
[2026-10-25 14:18:23,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:18:23
[2026-10-25 14:18:23,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:18:23,957.957 INFO    ] Initializing speech engine...
[2026-10-25 14:18:23,966.966 INFO    ] 2026-10-25 14:18:23
[2026-10-25 14:18:24,215.215 INFO    ] 2026-10-25 14:18:24
[2026-10-25 14:18:24,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:18:24,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:18:24,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:18:24,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:18:24,690.690 INFO    ] time= 25/10/2026 14:18:24
[2026-10-25 14:18:24,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:18:24,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:18:24,836.836 INFO    ] No existing commands found in stream
[2026-10-25 14:18:29,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:18:29,852.852 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 14:18:33,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:18:33,515.515 INFO    ] Checking for system updates...
[2026-10-25 14:18:33,555.555 INFO    ] 200
[2026-10-25 14:18:33,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:33,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:33,620.620 INFO    ] No update needed
[2026-10-25 14:18:33,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 14:18:33,656.656 INFO    ] 200
[2026-10-25 14:18:33,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:33,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:18:33,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:33,752.752 INFO    ] No camera update needed
[2026-10-25 14:18:33,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:18:33,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:18:33,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:18:33,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:18:35,807.807 INFO    ] ================================================
[2026-10-25 14:18:35,823.823 INFO    ] Launching Daemon at Sun Oct 25 14:18:35 IST 2026
[2026-10-25 14:18:35,834.834 INFO    ] ================================================
[2026-10-25 14:18:36,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:18:36
[2026-10-25 14:18:37,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:18:37,471.471 INFO    ] Initializing speech engine...
[2026-10-25 14:18:37,479.479 INFO    ] 2026-10-25 14:18:37
[2026-10-25 14:18:37,750.750 INFO    ] 2026-10-25 14:18:37
[2026-10-25 14:18:37,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:18:39,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:18:39,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:18:39,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:18:39,327.327 INFO    ] time= 25/10/2026 14:18:39
[2026-10-25 14:18:39,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:18:39,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:18:39,442.442 INFO    ] No existing commands found in stream
[2026-10-25 14:18:44,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:18:44,474.474 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 14:18:47,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:18:47,258.258 INFO    ] Checking for system updates...
[2026-10-25 14:18:47,299.299 INFO    ] 200
[2026-10-25 14:18:47,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:47,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:18:47,367.367 INFO    ] No update needed
[2026-10-25 14:18:47,370.370 INFO    ] Checking for camera pi updates...
[2026-10-25 14:18:47,409.409 INFO    ] 200
[2026-10-25 14:18:47,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:47,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:18:47,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:18:47,509.509 INFO    ] No camera update needed
[2026-10-25 14:18:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:18:47,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:18:47,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:18:47,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:18:49,570.570 INFO    ] ================================================
[2026-10-25 14:18:49,585.585 INFO    ] Launching Daemon at Sun Oct 25 14:18:49 IST 2026
[2026-10-25 14:18:49,597.597 INFO    ] ================================================
[2026-10-25 14:18:50,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:18:50
[2026-10-25 14:18:50,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:18:51,194.194 INFO    ] Initializing speech engine...
[2026-10-25 14:18:51,202.202 INFO    ] 2026-10-25 14:18:51
[2026-10-25 14:18:51,492.492 INFO    ] 2026-10-25 14:18:51
[2026-10-25 14:18:51,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:18:51,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:18:51,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:18:51,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:18:51,953.953 INFO    ] time= 25/10/2026 14:18:51
[2026-10-25 14:18:52,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:18:52,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:18:52,107.107 INFO    ] No existing commands found in stream
[2026-10-25 14:18:57,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:18:57,123.123 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 14:18:59,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:18:59,560.560 INFO    ] Checking for system updates...
[2026-10-25 14:18:59,597.597 INFO    ] 200
[2026-10-25 14:18:59,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:59,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:59,658.658 INFO    ] No update needed
[2026-10-25 14:18:59,661.661 INFO    ] Checking for camera pi updates...
[2026-10-25 14:18:59,696.696 INFO    ] 200
[2026-10-25 14:18:59,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:18:59,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:18:59,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:18:59,787.787 INFO    ] No camera update needed
[2026-10-25 14:18:59,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:18:59,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:18:59,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:18:59,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:19:01,848.848 INFO    ] ================================================
[2026-10-25 14:19:01,864.864 INFO    ] Launching Daemon at Sun Oct 25 14:19:01 IST 2026
[2026-10-25 14:19:01,875.875 INFO    ] ================================================
[2026-10-25 14:19:02,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:19:02
[2026-10-25 14:19:03,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:19:03,637.637 INFO    ] Initializing speech engine...
[2026-10-25 14:19:03,656.656 INFO    ] 2026-10-25 14:19:03
[2026-10-25 14:19:03,924.924 INFO    ] 2026-10-25 14:19:03
[2026-10-25 14:19:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:19:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:19:04,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:19:04,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:19:04,314.314 INFO    ] time= 25/10/2026 14:19:04
[2026-10-25 14:19:04,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:19:04,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:19:04,487.487 INFO    ] No existing commands found in stream
[2026-10-25 14:19:09,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:19:09,521.521 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 14:19:13,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:19:13,529.529 INFO    ] Checking for system updates...
[2026-10-25 14:19:13,567.567 INFO    ] 200
[2026-10-25 14:19:13,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:13,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:13,628.628 INFO    ] No update needed
[2026-10-25 14:19:13,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 14:19:13,665.665 INFO    ] 200
[2026-10-25 14:19:13,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:13,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:19:13,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:13,870.870 INFO    ] No camera update needed
[2026-10-25 14:19:13,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:19:13,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:19:13,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:19:13,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:19:15,927.927 INFO    ] ================================================
[2026-10-25 14:19:15,943.943 INFO    ] Launching Daemon at Sun Oct 25 14:19:15 IST 2026
[2026-10-25 14:19:15,953.953 INFO    ] ================================================
[2026-10-25 14:19:16,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:19:16
[2026-10-25 14:19:17,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:19:17,397.397 INFO    ] Initializing speech engine...
[2026-10-25 14:19:17,406.406 INFO    ] 2026-10-25 14:19:17
[2026-10-25 14:19:17,667.667 INFO    ] 2026-10-25 14:19:17
[2026-10-25 14:19:17,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:19:17,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:19:17,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:19:18,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:19:18,149.149 INFO    ] time= 25/10/2026 14:19:18
[2026-10-25 14:19:18,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:19:18,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:19:18,349.349 INFO    ] No existing commands found in stream
[2026-10-25 14:19:23,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:19:23,376.376 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 14:19:25,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:19:25,537.537 INFO    ] Checking for system updates...
[2026-10-25 14:19:25,574.574 INFO    ] 200
[2026-10-25 14:19:25,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:25,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:25,635.635 INFO    ] No update needed
[2026-10-25 14:19:25,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 14:19:25,671.671 INFO    ] 200
[2026-10-25 14:19:25,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:25,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:19:25,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:25,771.771 INFO    ] No camera update needed
[2026-10-25 14:19:25,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:19:25,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:19:25,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:19:25,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:19:27,826.826 INFO    ] ================================================
[2026-10-25 14:19:27,842.842 INFO    ] Launching Daemon at Sun Oct 25 14:19:27 IST 2026
[2026-10-25 14:19:27,853.853 INFO    ] ================================================
[2026-10-25 14:19:28,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:19:28
[2026-10-25 14:19:29,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:19:29,259.259 INFO    ] Initializing speech engine...
[2026-10-25 14:19:29,266.266 INFO    ] 2026-10-25 14:19:29
[2026-10-25 14:19:29,556.556 INFO    ] 2026-10-25 14:19:29
[2026-10-25 14:19:29,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:19:29,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:19:29,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:19:29,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:19:29,968.968 INFO    ] time= 25/10/2026 14:19:29
[2026-10-25 14:19:29,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:19:29,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:19:30,051.051 INFO    ] No existing commands found in stream
[2026-10-25 14:19:35,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:19:35,065.065 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 14:19:40,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:19:40,780.780 INFO    ] Checking for system updates...
[2026-10-25 14:19:40,817.817 INFO    ] 200
[2026-10-25 14:19:40,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:40,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:40,882.882 INFO    ] No update needed
[2026-10-25 14:19:40,884.884 INFO    ] Checking for camera pi updates...
[2026-10-25 14:19:40,918.918 INFO    ] 200
[2026-10-25 14:19:40,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:40,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:19:41,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:41,028.028 INFO    ] No camera update needed
[2026-10-25 14:19:41,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:19:41,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:19:41,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:19:41,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:19:43,082.082 INFO    ] ================================================
[2026-10-25 14:19:43,097.097 INFO    ] Launching Daemon at Sun Oct 25 14:19:43 IST 2026
[2026-10-25 14:19:43,107.107 INFO    ] ================================================
[2026-10-25 14:19:43,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:19:43
[2026-10-25 14:19:44,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:19:44,553.553 INFO    ] Initializing speech engine...
[2026-10-25 14:19:44,570.570 INFO    ] 2026-10-25 14:19:44
[2026-10-25 14:19:44,846.846 INFO    ] 2026-10-25 14:19:44
[2026-10-25 14:19:44,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:19:45,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:19:45,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:19:45,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:19:45,260.260 INFO    ] time= 25/10/2026 14:19:45
[2026-10-25 14:19:45,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:19:45,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:19:45,343.343 INFO    ] No existing commands found in stream
[2026-10-25 14:19:50,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:19:50,359.359 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 14:19:53,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:19:53,768.768 INFO    ] Checking for system updates...
[2026-10-25 14:19:53,805.805 INFO    ] 200
[2026-10-25 14:19:53,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:53,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:53,864.864 INFO    ] No update needed
[2026-10-25 14:19:53,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 14:19:53,901.901 INFO    ] 200
[2026-10-25 14:19:53,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:19:53,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:19:53,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:19:53,999.999 INFO    ] No camera update needed
[2026-10-25 14:19:54,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:19:54,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:19:54,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:19:54,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:19:56,054.054 INFO    ] ================================================
[2026-10-25 14:19:56,069.069 INFO    ] Launching Daemon at Sun Oct 25 14:19:56 IST 2026
[2026-10-25 14:19:56,080.080 INFO    ] ================================================
[2026-10-25 14:19:56,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:19:56
[2026-10-25 14:19:57,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:19:57,498.498 INFO    ] Initializing speech engine...
[2026-10-25 14:19:57,508.508 INFO    ] 2026-10-25 14:19:57
[2026-10-25 14:19:57,757.757 INFO    ] 2026-10-25 14:19:57
[2026-10-25 14:19:57,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:19:58,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:19:58,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:19:58,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:19:58,225.225 INFO    ] time= 25/10/2026 14:19:58
[2026-10-25 14:19:58,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:19:58,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:19:58,388.388 INFO    ] No existing commands found in stream
[2026-10-25 14:20:03,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:20:03,403.403 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 14:20:08,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:20:08,917.917 INFO    ] Checking for system updates...
[2026-10-25 14:20:08,952.952 INFO    ] 200
[2026-10-25 14:20:08,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:09,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:09,018.018 INFO    ] No update needed
[2026-10-25 14:20:09,021.021 INFO    ] Checking for camera pi updates...
[2026-10-25 14:20:09,054.054 INFO    ] 200
[2026-10-25 14:20:09,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:09,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:20:09,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:09,148.148 INFO    ] No camera update needed
[2026-10-25 14:20:09,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:20:09,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:20:09,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:20:09,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:20:11,205.205 INFO    ] ================================================
[2026-10-25 14:20:11,222.222 INFO    ] Launching Daemon at Sun Oct 25 14:20:11 IST 2026
[2026-10-25 14:20:11,233.233 INFO    ] ================================================
[2026-10-25 14:20:11,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:20:11
[2026-10-25 14:20:12,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:20:12,914.914 INFO    ] Initializing speech engine...
[2026-10-25 14:20:12,928.928 INFO    ] 2026-10-25 14:20:12
[2026-10-25 14:20:13,216.216 INFO    ] 2026-10-25 14:20:13
[2026-10-25 14:20:13,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:20:13,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:20:13,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:20:13,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:20:13,895.895 INFO    ] time= 25/10/2026 14:20:13
[2026-10-25 14:20:13,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:20:13,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:20:14,134.134 INFO    ] No existing commands found in stream
[2026-10-25 14:20:19,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:20:19,164.164 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 14:20:23,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:20:23,386.386 INFO    ] Checking for system updates...
[2026-10-25 14:20:23,423.423 INFO    ] 200
[2026-10-25 14:20:23,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:23,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:20:23,484.484 INFO    ] No update needed
[2026-10-25 14:20:23,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 14:20:23,522.522 INFO    ] 200
[2026-10-25 14:20:23,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:23,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:20:23,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:20:23,628.628 INFO    ] No camera update needed
[2026-10-25 14:20:23,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:20:23,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:20:23,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:20:23,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:20:25,691.691 INFO    ] ================================================
[2026-10-25 14:20:25,707.707 INFO    ] Launching Daemon at Sun Oct 25 14:20:25 IST 2026
[2026-10-25 14:20:25,718.718 INFO    ] ================================================
[2026-10-25 14:20:26,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:20:26
[2026-10-25 14:20:27,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:20:27,390.390 INFO    ] Initializing speech engine...
[2026-10-25 14:20:27,398.398 INFO    ] 2026-10-25 14:20:27
[2026-10-25 14:20:27,691.691 INFO    ] 2026-10-25 14:20:27
[2026-10-25 14:20:27,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:20:27,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:20:27,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:20:28,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:20:28,189.189 INFO    ] time= 25/10/2026 14:20:28
[2026-10-25 14:20:28,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:20:28,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:20:28,391.391 INFO    ] No existing commands found in stream
[2026-10-25 14:20:33,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:20:33,415.415 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 14:20:36,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:20:36,845.845 INFO    ] Checking for system updates...
[2026-10-25 14:20:36,884.884 INFO    ] 200
[2026-10-25 14:20:36,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:36,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:36,944.944 INFO    ] No update needed
[2026-10-25 14:20:36,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 14:20:36,982.982 INFO    ] 200
[2026-10-25 14:20:36,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:37,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:20:37,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:37,084.084 INFO    ] No camera update needed
[2026-10-25 14:20:37,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:20:37,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:20:37,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:20:37,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:20:39,139.139 INFO    ] ================================================
[2026-10-25 14:20:39,155.155 INFO    ] Launching Daemon at Sun Oct 25 14:20:39 IST 2026
[2026-10-25 14:20:39,167.167 INFO    ] ================================================
[2026-10-25 14:20:39,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:20:39
[2026-10-25 14:20:40,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:20:40,589.589 INFO    ] Initializing speech engine...
[2026-10-25 14:20:40,600.600 INFO    ] 2026-10-25 14:20:40
[2026-10-25 14:20:40,849.849 INFO    ] 2026-10-25 14:20:40
[2026-10-25 14:20:40,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:20:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:20:42,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:20:42,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:20:42,569.569 INFO    ] time= 25/10/2026 14:20:42
[2026-10-25 14:20:42,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:20:42,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:20:42,682.682 INFO    ] No existing commands found in stream
[2026-10-25 14:20:47,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:20:47,695.695 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 14:20:51,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:20:51,333.333 INFO    ] Checking for system updates...
[2026-10-25 14:20:51,370.370 INFO    ] 200
[2026-10-25 14:20:51,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:51,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:51,427.427 INFO    ] No update needed
[2026-10-25 14:20:51,430.430 INFO    ] Checking for camera pi updates...
[2026-10-25 14:20:51,469.469 INFO    ] 200
[2026-10-25 14:20:51,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:20:51,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:20:51,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:20:51,572.572 INFO    ] No camera update needed
[2026-10-25 14:20:51,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:20:51,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:20:51,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:20:51,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:20:53,628.628 INFO    ] ================================================
[2026-10-25 14:20:53,644.644 INFO    ] Launching Daemon at Sun Oct 25 14:20:53 IST 2026
[2026-10-25 14:20:53,656.656 INFO    ] ================================================
[2026-10-25 14:20:54,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:20:54
[2026-10-25 14:20:54,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:20:55,113.113 INFO    ] Initializing speech engine...
[2026-10-25 14:20:55,122.122 INFO    ] 2026-10-25 14:20:55
[2026-10-25 14:20:55,380.380 INFO    ] 2026-10-25 14:20:55
[2026-10-25 14:20:55,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:20:55,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:20:55,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:20:55,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:20:55,874.874 INFO    ] time= 25/10/2026 14:20:55
[2026-10-25 14:20:55,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:20:55,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:20:56,053.053 INFO    ] No existing commands found in stream
[2026-10-25 14:21:01,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:21:01,087.087 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 14:21:05,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:21:05,137.137 INFO    ] Checking for system updates...
[2026-10-25 14:21:05,173.173 INFO    ] 200
[2026-10-25 14:21:05,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:05,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:21:05,233.233 INFO    ] No update needed
[2026-10-25 14:21:05,235.235 INFO    ] Checking for camera pi updates...
[2026-10-25 14:21:05,269.269 INFO    ] 200
[2026-10-25 14:21:05,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:05,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:21:05,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:21:05,369.369 INFO    ] No camera update needed
[2026-10-25 14:21:05,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:21:05,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:21:05,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:21:05,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:21:07,426.426 INFO    ] ================================================
[2026-10-25 14:21:07,442.442 INFO    ] Launching Daemon at Sun Oct 25 14:21:07 IST 2026
[2026-10-25 14:21:07,453.453 INFO    ] ================================================
[2026-10-25 14:21:08,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:21:08
[2026-10-25 14:21:08,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:21:08,854.854 INFO    ] Initializing speech engine...
[2026-10-25 14:21:08,862.862 INFO    ] 2026-10-25 14:21:08
[2026-10-25 14:21:09,165.165 INFO    ] 2026-10-25 14:21:09
[2026-10-25 14:21:09,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:21:09,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:21:09,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:21:12,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:21:12,663.663 INFO    ] time= 25/10/2026 14:21:12
[2026-10-25 14:21:12,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:21:12,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:21:12,719.719 INFO    ] No existing commands found in stream
[2026-10-25 14:21:17,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:21:17,731.731 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 14:21:18,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:21:18,893.893 INFO    ] Checking for system updates...
[2026-10-25 14:21:18,929.929 INFO    ] 200
[2026-10-25 14:21:18,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:18,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:18,991.991 INFO    ] No update needed
[2026-10-25 14:21:18,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 14:21:19,032.032 INFO    ] 200
[2026-10-25 14:21:19,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:19,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:21:19,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:19,231.231 INFO    ] No camera update needed
[2026-10-25 14:21:19,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:21:19,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:21:19,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:21:19,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:21:21,286.286 INFO    ] ================================================
[2026-10-25 14:21:21,302.302 INFO    ] Launching Daemon at Sun Oct 25 14:21:21 IST 2026
[2026-10-25 14:21:21,314.314 INFO    ] ================================================
[2026-10-25 14:21:21,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:21:21
[2026-10-25 14:21:22,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:21:22,727.727 INFO    ] Initializing speech engine...
[2026-10-25 14:21:22,746.746 INFO    ] 2026-10-25 14:21:22
[2026-10-25 14:21:22,994.994 INFO    ] 2026-10-25 14:21:22
[2026-10-25 14:21:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:21:23,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:21:23,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:21:23,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:21:23,550.550 INFO    ] time= 25/10/2026 14:21:23
[2026-10-25 14:21:23,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:21:23,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:21:23,690.690 INFO    ] No existing commands found in stream
[2026-10-25 14:21:28,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:21:28,717.717 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 14:21:32,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:21:32,535.535 INFO    ] Checking for system updates...
[2026-10-25 14:21:32,573.573 INFO    ] 200
[2026-10-25 14:21:32,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:32,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:32,644.644 INFO    ] No update needed
[2026-10-25 14:21:32,647.647 INFO    ] Checking for camera pi updates...
[2026-10-25 14:21:32,693.693 INFO    ] 200
[2026-10-25 14:21:32,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:32,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:21:32,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:32,799.799 INFO    ] No camera update needed
[2026-10-25 14:21:32,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:21:32,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:21:32,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:21:32,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:21:34,865.865 INFO    ] ================================================
[2026-10-25 14:21:34,882.882 INFO    ] Launching Daemon at Sun Oct 25 14:21:34 IST 2026
[2026-10-25 14:21:34,894.894 INFO    ] ================================================
[2026-10-25 14:21:35,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:21:35
[2026-10-25 14:21:36,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:21:36,542.542 INFO    ] Initializing speech engine...
[2026-10-25 14:21:36,554.554 INFO    ] 2026-10-25 14:21:36
[2026-10-25 14:21:36,865.865 INFO    ] 2026-10-25 14:21:36
[2026-10-25 14:21:36,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:21:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:21:37,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:21:37,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:21:37,527.527 INFO    ] time= 25/10/2026 14:21:37
[2026-10-25 14:21:37,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:21:37,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:21:37,764.764 INFO    ] No existing commands found in stream
[2026-10-25 14:21:42,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:21:42,786.786 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 14:21:47,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:21:47,456.456 INFO    ] Checking for system updates...
[2026-10-25 14:21:47,492.492 INFO    ] 200
[2026-10-25 14:21:47,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:47,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:47,550.550 INFO    ] No update needed
[2026-10-25 14:21:47,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 14:21:47,591.591 INFO    ] 200
[2026-10-25 14:21:47,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:47,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:21:47,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:47,697.697 INFO    ] No camera update needed
[2026-10-25 14:21:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:21:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:21:47,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:21:47,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:21:49,755.755 INFO    ] ================================================
[2026-10-25 14:21:49,771.771 INFO    ] Launching Daemon at Sun Oct 25 14:21:49 IST 2026
[2026-10-25 14:21:49,782.782 INFO    ] ================================================
[2026-10-25 14:21:50,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:21:50
[2026-10-25 14:21:50,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:21:51,178.178 INFO    ] Initializing speech engine...
[2026-10-25 14:21:51,192.192 INFO    ] 2026-10-25 14:21:51
[2026-10-25 14:21:51,454.454 INFO    ] 2026-10-25 14:21:51
[2026-10-25 14:21:51,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:21:51,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:21:51,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:21:51,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:21:51,891.891 INFO    ] time= 25/10/2026 14:21:51
[2026-10-25 14:21:51,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:21:52,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:21:52,104.104 INFO    ] No existing commands found in stream
[2026-10-25 14:21:57,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:21:57,137.137 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 14:21:59,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:21:59,540.540 INFO    ] Checking for system updates...
[2026-10-25 14:21:59,576.576 INFO    ] 200
[2026-10-25 14:21:59,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:59,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:59,644.644 INFO    ] No update needed
[2026-10-25 14:21:59,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 14:21:59,680.680 INFO    ] 200
[2026-10-25 14:21:59,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:21:59,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:21:59,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:21:59,791.791 INFO    ] No camera update needed
[2026-10-25 14:21:59,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:21:59,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:21:59,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:21:59,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:01,864.864 INFO    ] ================================================
[2026-10-25 14:22:01,896.896 INFO    ] Launching Daemon at Sun Oct 25 14:22:01 IST 2026
[2026-10-25 14:22:01,926.926 INFO    ] ================================================
[2026-10-25 14:22:02,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:22:02
[2026-10-25 14:22:03,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:22:03,674.674 INFO    ] Initializing speech engine...
[2026-10-25 14:22:03,683.683 INFO    ] 2026-10-25 14:22:03
[2026-10-25 14:22:04,029.029 INFO    ] 2026-10-25 14:22:03
[2026-10-25 14:22:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:22:04,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:22:04,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:22:04,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:22:04,474.474 INFO    ] time= 25/10/2026 14:22:04
[2026-10-25 14:22:04,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:22:04,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:22:04,643.643 INFO    ] No existing commands found in stream
[2026-10-25 14:22:09,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:22:09,677.677 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 14:22:10,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:22:10,290.290 INFO    ] Checking for system updates...
[2026-10-25 14:22:10,328.328 INFO    ] 200
[2026-10-25 14:22:10,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:10,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:22:10,388.388 INFO    ] No update needed
[2026-10-25 14:22:10,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 14:22:10,427.427 INFO    ] 200
[2026-10-25 14:22:10,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:10,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:22:10,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:22:10,520.520 INFO    ] No camera update needed
[2026-10-25 14:22:10,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:22:10,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:22:10,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:22:10,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:12,582.582 INFO    ] ================================================
[2026-10-25 14:22:12,597.597 INFO    ] Launching Daemon at Sun Oct 25 14:22:12 IST 2026
[2026-10-25 14:22:12,608.608 INFO    ] ================================================
[2026-10-25 14:22:13,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:22:13
[2026-10-25 14:22:13,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:22:14,031.031 INFO    ] Initializing speech engine...
[2026-10-25 14:22:14,040.040 INFO    ] 2026-10-25 14:22:14
[2026-10-25 14:22:14,285.285 INFO    ] 2026-10-25 14:22:14
[2026-10-25 14:22:14,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:22:17,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:22:17,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:22:17,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:22:17,849.849 INFO    ] time= 25/10/2026 14:22:17
[2026-10-25 14:22:17,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:22:17,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:22:17,916.916 INFO    ] No existing commands found in stream
[2026-10-25 14:22:22,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:22:22,928.928 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 14:22:23,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:22:23,378.378 INFO    ] Checking for system updates...
[2026-10-25 14:22:23,417.417 INFO    ] 200
[2026-10-25 14:22:23,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:23,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:23,482.482 INFO    ] No update needed
[2026-10-25 14:22:23,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 14:22:23,519.519 INFO    ] 200
[2026-10-25 14:22:23,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:23,568.568 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:22:23,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:23,604.604 INFO    ] No camera update needed
[2026-10-25 14:22:23,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:22:23,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:22:23,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:22:23,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:25,661.661 INFO    ] ================================================
[2026-10-25 14:22:25,676.676 INFO    ] Launching Daemon at Sun Oct 25 14:22:25 IST 2026
[2026-10-25 14:22:25,686.686 INFO    ] ================================================
[2026-10-25 14:22:26,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:22:26
[2026-10-25 14:22:26,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:22:27,227.227 INFO    ] Initializing speech engine...
[2026-10-25 14:22:27,238.238 INFO    ] 2026-10-25 14:22:27
[2026-10-25 14:22:27,549.549 INFO    ] 2026-10-25 14:22:27
[2026-10-25 14:22:27,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:22:27,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:22:27,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:22:28,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:22:28,056.056 INFO    ] time= 25/10/2026 14:22:28
[2026-10-25 14:22:28,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:22:28,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:22:28,208.208 INFO    ] No existing commands found in stream
[2026-10-25 14:22:33,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:22:33,236.236 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 14:22:33,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:22:33,777.777 INFO    ] Checking for system updates...
[2026-10-25 14:22:33,825.825 INFO    ] 200
[2026-10-25 14:22:33,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:33,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:33,889.889 INFO    ] No update needed
[2026-10-25 14:22:33,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 14:22:33,926.926 INFO    ] 200
[2026-10-25 14:22:33,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:33,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:22:34,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:34,003.003 INFO    ] No camera update needed
[2026-10-25 14:22:34,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:22:34,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:22:34,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:22:34,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:36,058.058 INFO    ] ================================================
[2026-10-25 14:22:36,074.074 INFO    ] Launching Daemon at Sun Oct 25 14:22:36 IST 2026
[2026-10-25 14:22:36,085.085 INFO    ] ================================================
[2026-10-25 14:22:36,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:22:36
[2026-10-25 14:22:37,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:22:37,566.566 INFO    ] Initializing speech engine...
[2026-10-25 14:22:37,580.580 INFO    ] 2026-10-25 14:22:37
[2026-10-25 14:22:37,887.887 INFO    ] 2026-10-25 14:22:37
[2026-10-25 14:22:37,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:22:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:22:38,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:22:38,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:22:38,398.398 INFO    ] time= 25/10/2026 14:22:38
[2026-10-25 14:22:38,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:22:38,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:22:38,551.551 INFO    ] No existing commands found in stream
[2026-10-25 14:22:43,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:22:43,568.568 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 14:22:44,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:22:44,194.194 INFO    ] Checking for system updates...
[2026-10-25 14:22:44,236.236 INFO    ] 200
[2026-10-25 14:22:44,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:44,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:44,301.301 INFO    ] No update needed
[2026-10-25 14:22:44,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 14:22:44,338.338 INFO    ] 200
[2026-10-25 14:22:44,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:44,381.381 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:22:44,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:44,430.430 INFO    ] No camera update needed
[2026-10-25 14:22:44,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:22:44,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:22:44,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:22:44,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:46,485.485 INFO    ] ================================================
[2026-10-25 14:22:46,500.500 INFO    ] Launching Daemon at Sun Oct 25 14:22:46 IST 2026
[2026-10-25 14:22:46,511.511 INFO    ] ================================================
[2026-10-25 14:22:47,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:22:47
[2026-10-25 14:22:47,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:22:48,152.152 INFO    ] Initializing speech engine...
[2026-10-25 14:22:48,157.157 INFO    ] 2026-10-25 14:22:48
[2026-10-25 14:22:48,435.435 INFO    ] 2026-10-25 14:22:48
[2026-10-25 14:22:48,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:22:48,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:22:48,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:22:49,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:22:49,205.205 INFO    ] time= 25/10/2026 14:22:49
[2026-10-25 14:22:49,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:22:49,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:22:49,419.419 INFO    ] No existing commands found in stream
[2026-10-25 14:22:54,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:22:54,433.433 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 14:22:57,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:22:57,330.330 INFO    ] Checking for system updates...
[2026-10-25 14:22:57,368.368 INFO    ] 200
[2026-10-25 14:22:57,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:57,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:57,428.428 INFO    ] No update needed
[2026-10-25 14:22:57,431.431 INFO    ] Checking for camera pi updates...
[2026-10-25 14:22:57,465.465 INFO    ] 200
[2026-10-25 14:22:57,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:22:57,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:22:57,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:22:57,564.564 INFO    ] No camera update needed
[2026-10-25 14:22:57,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:22:57,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:22:57,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:22:57,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:22:59,619.619 INFO    ] ================================================
[2026-10-25 14:22:59,638.638 INFO    ] Launching Daemon at Sun Oct 25 14:22:59 IST 2026
[2026-10-25 14:22:59,649.649 INFO    ] ================================================
[2026-10-25 14:23:00,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:00
[2026-10-25 14:23:00,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:23:01,078.078 INFO    ] Initializing speech engine...
[2026-10-25 14:23:01,087.087 INFO    ] 2026-10-25 14:23:01
[2026-10-25 14:23:01,335.335 INFO    ] 2026-10-25 14:23:01
[2026-10-25 14:23:01,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:23:01,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:23:01,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:23:01,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:23:01,858.858 INFO    ] time= 25/10/2026 14:23:01
[2026-10-25 14:23:01,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:23:01,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:23:02,013.013 INFO    ] No existing commands found in stream
[2026-10-25 14:23:07,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:23:07,026.026 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 14:23:10,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:23:10,626.626 INFO    ] Checking for system updates...
[2026-10-25 14:23:10,666.666 INFO    ] 200
[2026-10-25 14:23:10,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:10,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:10,734.734 INFO    ] No update needed
[2026-10-25 14:23:10,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 14:23:10,774.774 INFO    ] 200
[2026-10-25 14:23:10,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:10,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:23:10,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:10,878.878 INFO    ] No camera update needed
[2026-10-25 14:23:10,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:23:10,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:23:10,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:23:10,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:23:12,938.938 INFO    ] ================================================
[2026-10-25 14:23:12,954.954 INFO    ] Launching Daemon at Sun Oct 25 14:23:12 IST 2026
[2026-10-25 14:23:12,965.965 INFO    ] ================================================
[2026-10-25 14:23:13,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:13
[2026-10-25 14:23:14,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:23:14,428.428 INFO    ] Initializing speech engine...
[2026-10-25 14:23:14,435.435 INFO    ] 2026-10-25 14:23:14
[2026-10-25 14:23:14,693.693 INFO    ] 2026-10-25 14:23:14
[2026-10-25 14:23:14,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:23:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:23:14,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:23:15,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:23:15,182.182 INFO    ] time= 25/10/2026 14:23:15
[2026-10-25 14:23:15,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:23:15,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:23:15,371.371 INFO    ] No existing commands found in stream
[2026-10-25 14:23:20,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:23:20,399.399 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 14:23:22,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:23:22,148.148 INFO    ] Checking for system updates...
[2026-10-25 14:23:22,184.184 INFO    ] 200
[2026-10-25 14:23:22,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:22,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:22,242.242 INFO    ] No update needed
[2026-10-25 14:23:22,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 14:23:22,278.278 INFO    ] 200
[2026-10-25 14:23:22,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:22,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:23:22,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:22,478.478 INFO    ] No camera update needed
[2026-10-25 14:23:22,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:23:22,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:23:22,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:23:22,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:23:24,536.536 INFO    ] ================================================
[2026-10-25 14:23:24,552.552 INFO    ] Launching Daemon at Sun Oct 25 14:23:24 IST 2026
[2026-10-25 14:23:24,564.564 INFO    ] ================================================
[2026-10-25 14:23:25,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:25
[2026-10-25 14:23:25,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:23:26,018.018 INFO    ] Initializing speech engine...
[2026-10-25 14:23:26,034.034 INFO    ] 2026-10-25 14:23:26
[2026-10-25 14:23:26,326.326 INFO    ] 2026-10-25 14:23:26
[2026-10-25 14:23:26,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:23:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:23:26,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:23:26,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:23:26,726.726 INFO    ] time= 25/10/2026 14:23:26
[2026-10-25 14:23:26,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:23:26,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:23:26,918.918 INFO    ] No existing commands found in stream
[2026-10-25 14:23:31,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:23:31,932.932 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 14:23:33,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:23:33,382.382 INFO    ] Checking for system updates...
[2026-10-25 14:23:33,429.429 INFO    ] 200
[2026-10-25 14:23:33,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:33,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:33,490.490 INFO    ] No update needed
[2026-10-25 14:23:33,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 14:23:33,533.533 INFO    ] 200
[2026-10-25 14:23:33,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:33,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:23:33,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:23:33,622.622 INFO    ] No camera update needed
[2026-10-25 14:23:33,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:23:33,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:23:33,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:23:33,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:23:35,684.684 INFO    ] ================================================
[2026-10-25 14:23:35,699.699 INFO    ] Launching Daemon at Sun Oct 25 14:23:35 IST 2026
[2026-10-25 14:23:35,710.710 INFO    ] ================================================
[2026-10-25 14:23:36,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:36
[2026-10-25 14:23:36,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:23:37,164.164 INFO    ] Initializing speech engine...
[2026-10-25 14:23:37,175.175 INFO    ] 2026-10-25 14:23:37
[2026-10-25 14:23:37,437.437 INFO    ] 2026-10-25 14:23:37
[2026-10-25 14:23:37,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:23:37,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:23:37,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:23:37,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:23:37,820.820 INFO    ] time= 25/10/2026 14:23:37
[2026-10-25 14:23:37,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:23:37,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:23:37,949.949 INFO    ] No existing commands found in stream
[2026-10-25 14:23:42,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:23:42,968.968 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 14:23:43,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:23:43,482.482 INFO    ] Checking for system updates...
[2026-10-25 14:23:43,518.518 INFO    ] 200
[2026-10-25 14:23:43,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:43,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:23:43,584.584 INFO    ] No update needed
[2026-10-25 14:23:43,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 14:23:43,623.623 INFO    ] 200
[2026-10-25 14:23:43,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:43,671.671 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:23:43,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:23:43,723.723 INFO    ] No camera update needed
[2026-10-25 14:23:43,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:23:43,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:23:43,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:23:43,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:23:45,778.778 INFO    ] ================================================
[2026-10-25 14:23:45,794.794 INFO    ] Launching Daemon at Sun Oct 25 14:23:45 IST 2026
[2026-10-25 14:23:45,805.805 INFO    ] ================================================
[2026-10-25 14:23:46,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:46
[2026-10-25 14:23:46,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:23:47,255.255 INFO    ] Initializing speech engine...
[2026-10-25 14:23:47,262.262 INFO    ] 2026-10-25 14:23:47
[2026-10-25 14:23:47,521.521 INFO    ] 2026-10-25 14:23:47
[2026-10-25 14:23:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:23:50,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:23:50,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:23:50,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:23:50,606.606 INFO    ] time= 25/10/2026 14:23:50
[2026-10-25 14:23:50,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:23:50,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:23:50,664.664 INFO    ] No existing commands found in stream
[2026-10-25 14:23:55,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:23:55,676.676 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 14:23:56,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:23:56,442.442 INFO    ] Checking for system updates...
[2026-10-25 14:23:56,485.485 INFO    ] 200
[2026-10-25 14:23:56,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:56,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:23:56,549.549 INFO    ] No update needed
[2026-10-25 14:23:56,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 14:23:56,592.592 INFO    ] 200
[2026-10-25 14:23:56,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:23:56,650.650 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:23:56,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:23:56,700.700 INFO    ] No camera update needed
[2026-10-25 14:23:56,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:23:56,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:23:56,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:23:56,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:23:58,763.763 INFO    ] ================================================
[2026-10-25 14:23:58,779.779 INFO    ] Launching Daemon at Sun Oct 25 14:23:58 IST 2026
[2026-10-25 14:23:58,790.790 INFO    ] ================================================
[2026-10-25 14:23:59,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:23:59
[2026-10-25 14:23:59,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:24:00,197.197 INFO    ] Initializing speech engine...
[2026-10-25 14:24:00,222.222 INFO    ] 2026-10-25 14:24:00
[2026-10-25 14:24:00,479.479 INFO    ] 2026-10-25 14:24:00
[2026-10-25 14:24:00,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:24:00,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:24:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:24:00,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:24:00,954.954 INFO    ] time= 25/10/2026 14:24:00
[2026-10-25 14:24:01,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:24:01,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:24:01,125.125 INFO    ] No existing commands found in stream
[2026-10-25 14:24:06,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:24:06,143.143 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 14:24:10,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:24:10,158.158 INFO    ] Checking for system updates...
[2026-10-25 14:24:10,194.194 INFO    ] 200
[2026-10-25 14:24:10,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:10,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:24:10,251.251 INFO    ] No update needed
[2026-10-25 14:24:10,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 14:24:10,291.291 INFO    ] 200
[2026-10-25 14:24:10,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:10,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:24:10,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:24:10,395.395 INFO    ] No camera update needed
[2026-10-25 14:24:10,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:24:10,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:24:10,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:24:10,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:24:12,450.450 INFO    ] ================================================
[2026-10-25 14:24:12,465.465 INFO    ] Launching Daemon at Sun Oct 25 14:24:12 IST 2026
[2026-10-25 14:24:12,476.476 INFO    ] ================================================
[2026-10-25 14:24:13,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:24:13
[2026-10-25 14:24:13,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:24:13,954.954 INFO    ] Initializing speech engine...
[2026-10-25 14:24:13,963.963 INFO    ] 2026-10-25 14:24:13
[2026-10-25 14:24:14,212.212 INFO    ] 2026-10-25 14:24:14
[2026-10-25 14:24:14,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:24:14,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:24:14,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:24:14,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:24:14,674.674 INFO    ] time= 25/10/2026 14:24:14
[2026-10-25 14:24:14,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:24:14,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:24:14,845.845 INFO    ] No existing commands found in stream
[2026-10-25 14:24:19,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:24:19,858.858 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 14:24:24,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:24:24,242.242 INFO    ] Checking for system updates...
[2026-10-25 14:24:24,279.279 INFO    ] 200
[2026-10-25 14:24:24,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:24,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:24,339.339 INFO    ] No update needed
[2026-10-25 14:24:24,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 14:24:24,380.380 INFO    ] 200
[2026-10-25 14:24:24,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:24,426.426 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:24:24,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:24,489.489 INFO    ] No camera update needed
[2026-10-25 14:24:24,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:24:24,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:24:24,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:24:24,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:24:26,549.549 INFO    ] ================================================
[2026-10-25 14:24:26,565.565 INFO    ] Launching Daemon at Sun Oct 25 14:24:26 IST 2026
[2026-10-25 14:24:26,576.576 INFO    ] ================================================
[2026-10-25 14:24:27,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:24:27
[2026-10-25 14:24:27,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:24:27,981.981 INFO    ] Initializing speech engine...
[2026-10-25 14:24:27,997.997 INFO    ] 2026-10-25 14:24:27
[2026-10-25 14:24:28,251.251 INFO    ] 2026-10-25 14:24:28
[2026-10-25 14:24:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:24:28,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:24:28,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:24:28,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:24:28,626.626 INFO    ] time= 25/10/2026 14:24:28
[2026-10-25 14:24:28,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:24:28,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:24:28,796.796 INFO    ] No existing commands found in stream
[2026-10-25 14:24:33,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:24:33,824.824 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 14:24:36,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:24:36,151.151 INFO    ] Checking for system updates...
[2026-10-25 14:24:36,187.187 INFO    ] 200
[2026-10-25 14:24:36,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:36,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:36,245.245 INFO    ] No update needed
[2026-10-25 14:24:36,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 14:24:36,288.288 INFO    ] 200
[2026-10-25 14:24:36,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:36,331.331 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:24:36,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:36,390.390 INFO    ] No camera update needed
[2026-10-25 14:24:36,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:24:36,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:24:36,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:24:36,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:24:38,446.446 INFO    ] ================================================
[2026-10-25 14:24:38,461.461 INFO    ] Launching Daemon at Sun Oct 25 14:24:38 IST 2026
[2026-10-25 14:24:38,471.471 INFO    ] ================================================
[2026-10-25 14:24:39,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:24:39
[2026-10-25 14:24:39,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:24:39,887.887 INFO    ] Initializing speech engine...
[2026-10-25 14:24:39,896.896 INFO    ] 2026-10-25 14:24:39
[2026-10-25 14:24:40,147.147 INFO    ] 2026-10-25 14:24:40
[2026-10-25 14:24:40,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:24:40,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:24:40,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:24:40,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:24:40,635.635 INFO    ] time= 25/10/2026 14:24:40
[2026-10-25 14:24:40,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:24:40,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:24:40,778.778 INFO    ] No existing commands found in stream
[2026-10-25 14:24:45,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:24:45,793.793 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 14:24:52,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:24:52,431.431 INFO    ] Checking for system updates...
[2026-10-25 14:24:52,470.470 INFO    ] 200
[2026-10-25 14:24:52,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:52,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:52,534.534 INFO    ] No update needed
[2026-10-25 14:24:52,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 14:24:52,570.570 INFO    ] 200
[2026-10-25 14:24:52,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:24:52,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:24:52,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:24:52,662.662 INFO    ] No camera update needed
[2026-10-25 14:24:52,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:24:52,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:24:52,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:24:52,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:24:54,717.717 INFO    ] ================================================
[2026-10-25 14:24:54,732.732 INFO    ] Launching Daemon at Sun Oct 25 14:24:54 IST 2026
[2026-10-25 14:24:54,743.743 INFO    ] ================================================
[2026-10-25 14:24:55,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:24:55
[2026-10-25 14:24:56,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:24:56,437.437 INFO    ] Initializing speech engine...
[2026-10-25 14:24:56,450.450 INFO    ] 2026-10-25 14:24:56
[2026-10-25 14:24:56,786.786 INFO    ] 2026-10-25 14:24:56
[2026-10-25 14:24:56,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:24:57,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:24:57,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:24:57,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:24:57,255.255 INFO    ] time= 25/10/2026 14:24:57
[2026-10-25 14:24:57,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:24:57,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:24:57,389.389 INFO    ] No existing commands found in stream
[2026-10-25 14:25:02,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:25:02,423.423 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 14:25:05,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:25:05,617.617 INFO    ] Checking for system updates...
[2026-10-25 14:25:05,657.657 INFO    ] 200
[2026-10-25 14:25:05,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:05,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:25:05,721.721 INFO    ] No update needed
[2026-10-25 14:25:05,723.723 INFO    ] Checking for camera pi updates...
[2026-10-25 14:25:05,760.760 INFO    ] 200
[2026-10-25 14:25:05,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:05,808.808 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:25:05,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:25:05,860.860 INFO    ] No camera update needed
[2026-10-25 14:25:05,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:25:05,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:25:05,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:25:05,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:25:07,917.917 INFO    ] ================================================
[2026-10-25 14:25:07,932.932 INFO    ] Launching Daemon at Sun Oct 25 14:25:07 IST 2026
[2026-10-25 14:25:07,942.942 INFO    ] ================================================
[2026-10-25 14:25:08,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:25:08
[2026-10-25 14:25:09,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:25:09,355.355 INFO    ] Initializing speech engine...
[2026-10-25 14:25:09,364.364 INFO    ] 2026-10-25 14:25:09
[2026-10-25 14:25:09,610.610 INFO    ] 2026-10-25 14:25:09
[2026-10-25 14:25:09,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:25:09,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:25:09,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:25:10,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:25:10,027.027 INFO    ] time= 25/10/2026 14:25:10
[2026-10-25 14:25:10,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:25:10,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:25:10,155.155 INFO    ] No existing commands found in stream
[2026-10-25 14:25:15,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:25:15,188.188 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 14:25:16,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:25:16,330.330 INFO    ] Checking for system updates...
[2026-10-25 14:25:16,366.366 INFO    ] 200
[2026-10-25 14:25:16,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:16,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:25:16,431.431 INFO    ] No update needed
[2026-10-25 14:25:16,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 14:25:16,470.470 INFO    ] 200
[2026-10-25 14:25:16,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:16,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:25:16,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:25:16,566.566 INFO    ] No camera update needed
[2026-10-25 14:25:16,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:25:16,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:25:16,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:25:16,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:25:18,620.620 INFO    ] ================================================
[2026-10-25 14:25:18,635.635 INFO    ] Launching Daemon at Sun Oct 25 14:25:18 IST 2026
[2026-10-25 14:25:18,645.645 INFO    ] ================================================
[2026-10-25 14:25:19,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:25:19
[2026-10-25 14:25:19,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:25:20,085.085 INFO    ] Initializing speech engine...
[2026-10-25 14:25:20,101.101 INFO    ] 2026-10-25 14:25:20
[2026-10-25 14:25:20,355.355 INFO    ] 2026-10-25 14:25:20
[2026-10-25 14:25:20,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:25:22,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:25:22,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:25:23,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:25:23,098.098 INFO    ] time= 25/10/2026 14:25:23
[2026-10-25 14:25:23,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:25:23,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:25:23,175.175 INFO    ] No existing commands found in stream
[2026-10-25 14:25:28,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:25:28,185.185 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 14:25:28,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:25:28,816.816 INFO    ] Checking for system updates...
[2026-10-25 14:25:28,853.853 INFO    ] 200
[2026-10-25 14:25:28,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:28,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:28,912.912 INFO    ] No update needed
[2026-10-25 14:25:28,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 14:25:28,948.948 INFO    ] 200
[2026-10-25 14:25:28,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:28,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:25:29,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:29,154.154 INFO    ] No camera update needed
[2026-10-25 14:25:29,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:25:29,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:25:29,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:25:29,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:25:31,211.211 INFO    ] ================================================
[2026-10-25 14:25:31,226.226 INFO    ] Launching Daemon at Sun Oct 25 14:25:31 IST 2026
[2026-10-25 14:25:31,236.236 INFO    ] ================================================
[2026-10-25 14:25:31,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:25:31
[2026-10-25 14:25:32,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:25:32,778.778 INFO    ] Initializing speech engine...
[2026-10-25 14:25:32,788.788 INFO    ] 2026-10-25 14:25:32
[2026-10-25 14:25:33,036.036 INFO    ] 2026-10-25 14:25:33
[2026-10-25 14:25:33,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:25:33,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:25:33,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:25:33,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:25:33,531.531 INFO    ] time= 25/10/2026 14:25:33
[2026-10-25 14:25:33,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:25:33,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:25:33,726.726 INFO    ] No existing commands found in stream
[2026-10-25 14:25:38,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:25:38,759.759 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 14:25:41,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:25:41,062.062 INFO    ] Checking for system updates...
[2026-10-25 14:25:41,102.102 INFO    ] 200
[2026-10-25 14:25:41,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:41,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:41,167.167 INFO    ] No update needed
[2026-10-25 14:25:41,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 14:25:41,207.207 INFO    ] 200
[2026-10-25 14:25:41,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:41,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:25:41,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:41,315.315 INFO    ] No camera update needed
[2026-10-25 14:25:41,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:25:41,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:25:41,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:25:41,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:25:43,374.374 INFO    ] ================================================
[2026-10-25 14:25:43,389.389 INFO    ] Launching Daemon at Sun Oct 25 14:25:43 IST 2026
[2026-10-25 14:25:43,400.400 INFO    ] ================================================
[2026-10-25 14:25:43,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:25:43
[2026-10-25 14:25:44,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:25:44,805.805 INFO    ] Initializing speech engine...
[2026-10-25 14:25:44,829.829 INFO    ] 2026-10-25 14:25:44
[2026-10-25 14:25:45,084.084 INFO    ] 2026-10-25 14:25:45
[2026-10-25 14:25:45,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:25:45,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:25:45,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:25:45,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:25:45,459.459 INFO    ] time= 25/10/2026 14:25:45
[2026-10-25 14:25:45,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:25:45,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:25:45,536.536 INFO    ] No existing commands found in stream
[2026-10-25 14:25:50,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:25:50,552.552 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 14:25:51,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:25:51,979.979 INFO    ] Checking for system updates...
[2026-10-25 14:25:52,019.019 INFO    ] 200
[2026-10-25 14:25:52,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:52,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:52,078.078 INFO    ] No update needed
[2026-10-25 14:25:52,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 14:25:52,118.118 INFO    ] 200
[2026-10-25 14:25:52,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:25:52,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:25:52,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:25:52,228.228 INFO    ] No camera update needed
[2026-10-25 14:25:52,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:25:52,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:25:52,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:25:52,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:25:54,285.285 INFO    ] ================================================
[2026-10-25 14:25:54,300.300 INFO    ] Launching Daemon at Sun Oct 25 14:25:54 IST 2026
[2026-10-25 14:25:54,311.311 INFO    ] ================================================
[2026-10-25 14:25:54,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:25:54
[2026-10-25 14:25:55,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:25:55,768.768 INFO    ] Initializing speech engine...
[2026-10-25 14:25:55,776.776 INFO    ] 2026-10-25 14:25:55
[2026-10-25 14:25:56,041.041 INFO    ] 2026-10-25 14:25:56
[2026-10-25 14:25:56,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:25:56,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:25:56,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:25:56,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:25:56,827.827 INFO    ] time= 25/10/2026 14:25:56
[2026-10-25 14:25:56,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:25:56,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:25:57,039.039 INFO    ] No existing commands found in stream
[2026-10-25 14:26:02,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:26:02,077.077 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 14:26:03,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:26:03,514.514 INFO    ] Checking for system updates...
[2026-10-25 14:26:03,551.551 INFO    ] 200
[2026-10-25 14:26:03,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:03,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:03,608.608 INFO    ] No update needed
[2026-10-25 14:26:03,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 14:26:03,649.649 INFO    ] 200
[2026-10-25 14:26:03,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:03,698.698 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:26:03,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:03,753.753 INFO    ] No camera update needed
[2026-10-25 14:26:03,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:26:03,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:26:03,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:26:03,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:26:05,807.807 INFO    ] ================================================
[2026-10-25 14:26:05,823.823 INFO    ] Launching Daemon at Sun Oct 25 14:26:05 IST 2026
[2026-10-25 14:26:05,834.834 INFO    ] ================================================
[2026-10-25 14:26:06,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:26:06
[2026-10-25 14:26:07,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:26:07,293.293 INFO    ] Initializing speech engine...
[2026-10-25 14:26:07,300.300 INFO    ] 2026-10-25 14:26:07
[2026-10-25 14:26:07,559.559 INFO    ] 2026-10-25 14:26:07
[2026-10-25 14:26:07,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:26:07,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:26:07,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:26:07,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:26:08,015.015 INFO    ] time= 25/10/2026 14:26:07
[2026-10-25 14:26:08,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:26:08,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:26:08,161.161 INFO    ] No existing commands found in stream
[2026-10-25 14:26:13,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:26:13,175.175 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 14:26:15,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:26:15,991.991 INFO    ] Checking for system updates...
[2026-10-25 14:26:16,031.031 INFO    ] 200
[2026-10-25 14:26:16,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:16,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:26:16,097.097 INFO    ] No update needed
[2026-10-25 14:26:16,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 14:26:16,138.138 INFO    ] 200
[2026-10-25 14:26:16,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:16,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:26:16,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:26:16,236.236 INFO    ] No camera update needed
[2026-10-25 14:26:16,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:26:16,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:26:16,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:26:16,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:26:18,294.294 INFO    ] ================================================
[2026-10-25 14:26:18,311.311 INFO    ] Launching Daemon at Sun Oct 25 14:26:18 IST 2026
[2026-10-25 14:26:18,322.322 INFO    ] ================================================
[2026-10-25 14:26:18,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:26:18
[2026-10-25 14:26:19,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:26:19,956.956 INFO    ] Initializing speech engine...
[2026-10-25 14:26:19,966.966 INFO    ] 2026-10-25 14:26:19
[2026-10-25 14:26:20,278.278 INFO    ] 2026-10-25 14:26:20
[2026-10-25 14:26:20,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:26:20,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:26:20,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:26:20,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:26:20,783.783 INFO    ] time= 25/10/2026 14:26:20
[2026-10-25 14:26:20,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:26:20,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:26:20,932.932 INFO    ] No existing commands found in stream
[2026-10-25 14:26:25,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:26:25,954.954 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 14:26:28,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:26:28,347.347 INFO    ] Checking for system updates...
[2026-10-25 14:26:28,383.383 INFO    ] 200
[2026-10-25 14:26:28,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:28,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:28,448.448 INFO    ] No update needed
[2026-10-25 14:26:28,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 14:26:28,488.488 INFO    ] 200
[2026-10-25 14:26:28,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:28,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:26:28,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:28,582.582 INFO    ] No camera update needed
[2026-10-25 14:26:28,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:26:28,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:26:28,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:26:28,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:26:30,637.637 INFO    ] ================================================
[2026-10-25 14:26:30,652.652 INFO    ] Launching Daemon at Sun Oct 25 14:26:30 IST 2026
[2026-10-25 14:26:30,663.663 INFO    ] ================================================
[2026-10-25 14:26:31,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:26:31
[2026-10-25 14:26:31,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:26:32,261.261 INFO    ] Initializing speech engine...
[2026-10-25 14:26:32,275.275 INFO    ] 2026-10-25 14:26:32
[2026-10-25 14:26:32,557.557 INFO    ] 2026-10-25 14:26:32
[2026-10-25 14:26:32,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:26:32,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:26:32,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:26:32,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:26:33,023.023 INFO    ] time= 25/10/2026 14:26:32
[2026-10-25 14:26:33,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:26:33,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:26:33,172.172 INFO    ] No existing commands found in stream
[2026-10-25 14:26:38,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:26:38,186.186 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 14:26:41,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:26:41,811.811 INFO    ] Checking for system updates...
[2026-10-25 14:26:41,847.847 INFO    ] 200
[2026-10-25 14:26:41,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:41,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:41,912.912 INFO    ] No update needed
[2026-10-25 14:26:41,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 14:26:41,952.952 INFO    ] 200
[2026-10-25 14:26:41,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:41,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:26:42,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:26:42,054.054 INFO    ] No camera update needed
[2026-10-25 14:26:42,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:26:42,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:26:42,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:26:42,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:26:44,109.109 INFO    ] ================================================
[2026-10-25 14:26:44,124.124 INFO    ] Launching Daemon at Sun Oct 25 14:26:44 IST 2026
[2026-10-25 14:26:44,134.134 INFO    ] ================================================
[2026-10-25 14:26:44,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:26:44
[2026-10-25 14:26:45,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:26:45,533.533 INFO    ] Initializing speech engine...
[2026-10-25 14:26:45,548.548 INFO    ] 2026-10-25 14:26:45
[2026-10-25 14:26:45,814.814 INFO    ] 2026-10-25 14:26:45
[2026-10-25 14:26:45,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:26:46,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:26:46,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:26:46,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:26:46,299.299 INFO    ] time= 25/10/2026 14:26:46
[2026-10-25 14:26:46,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:26:46,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:26:46,433.433 INFO    ] No existing commands found in stream
[2026-10-25 14:26:51,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:26:51,447.447 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 14:26:57,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:26:57,997.997 INFO    ] Checking for system updates...
[2026-10-25 14:26:58,037.037 INFO    ] 200
[2026-10-25 14:26:58,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:58,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:26:58,103.103 INFO    ] No update needed
[2026-10-25 14:26:58,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 14:26:58,143.143 INFO    ] 200
[2026-10-25 14:26:58,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:26:58,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:26:58,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:26:58,252.252 INFO    ] No camera update needed
[2026-10-25 14:26:58,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:26:58,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:26:58,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:26:58,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:27:00,308.308 INFO    ] ================================================
[2026-10-25 14:27:00,323.323 INFO    ] Launching Daemon at Sun Oct 25 14:27:00 IST 2026
[2026-10-25 14:27:00,334.334 INFO    ] ================================================
[2026-10-25 14:27:00,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:27:00
[2026-10-25 14:27:01,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:27:02,043.043 INFO    ] Initializing speech engine...
[2026-10-25 14:27:02,056.056 INFO    ] 2026-10-25 14:27:02
[2026-10-25 14:27:02,341.341 INFO    ] 2026-10-25 14:27:02
[2026-10-25 14:27:02,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:27:02,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:27:02,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:27:02,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:27:02,740.740 INFO    ] time= 25/10/2026 14:27:02
[2026-10-25 14:27:02,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:27:02,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:27:02,946.946 INFO    ] No existing commands found in stream
[2026-10-25 14:27:07,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:27:07,974.974 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 14:27:09,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:27:09,890.890 INFO    ] Checking for system updates...
[2026-10-25 14:27:09,929.929 INFO    ] 200
[2026-10-25 14:27:09,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:09,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:09,993.993 INFO    ] No update needed
[2026-10-25 14:27:09,995.995 INFO    ] Checking for camera pi updates...
[2026-10-25 14:27:10,028.028 INFO    ] 200
[2026-10-25 14:27:10,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:10,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:27:10,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:10,133.133 INFO    ] No camera update needed
[2026-10-25 14:27:10,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:27:10,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:27:10,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:27:10,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:27:12,188.188 INFO    ] ================================================
[2026-10-25 14:27:12,204.204 INFO    ] Launching Daemon at Sun Oct 25 14:27:12 IST 2026
[2026-10-25 14:27:12,215.215 INFO    ] ================================================
[2026-10-25 14:27:12,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:27:12
[2026-10-25 14:27:13,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:27:13,688.688 INFO    ] Initializing speech engine...
[2026-10-25 14:27:13,698.698 INFO    ] 2026-10-25 14:27:13
[2026-10-25 14:27:13,961.961 INFO    ] 2026-10-25 14:27:13
[2026-10-25 14:27:13,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:27:14,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:27:14,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:27:14,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:27:14,398.398 INFO    ] time= 25/10/2026 14:27:14
[2026-10-25 14:27:14,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:27:14,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:27:14,564.564 INFO    ] No existing commands found in stream
[2026-10-25 14:27:19,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:27:19,580.580 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 14:27:21,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:27:21,270.270 INFO    ] Checking for system updates...
[2026-10-25 14:27:21,310.310 INFO    ] 200
[2026-10-25 14:27:21,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:21,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:21,375.375 INFO    ] No update needed
[2026-10-25 14:27:21,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 14:27:21,416.416 INFO    ] 200
[2026-10-25 14:27:21,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:21,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:27:21,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:21,528.528 INFO    ] No camera update needed
[2026-10-25 14:27:21,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:27:21,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:27:21,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:27:21,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:27:23,583.583 INFO    ] ================================================
[2026-10-25 14:27:23,598.598 INFO    ] Launching Daemon at Sun Oct 25 14:27:23 IST 2026
[2026-10-25 14:27:23,609.609 INFO    ] ================================================
[2026-10-25 14:27:24,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:27:24
[2026-10-25 14:27:24,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:27:25,014.014 INFO    ] Initializing speech engine...
[2026-10-25 14:27:25,023.023 INFO    ] 2026-10-25 14:27:25
[2026-10-25 14:27:25,312.312 INFO    ] 2026-10-25 14:27:25
[2026-10-25 14:27:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:27:28,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:27:28,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:27:29,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:27:29,089.089 INFO    ] time= 25/10/2026 14:27:29
[2026-10-25 14:27:29,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:27:29,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:27:29,144.144 INFO    ] No existing commands found in stream
[2026-10-25 14:27:34,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:27:34,156.156 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 14:27:35,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:27:35,976.976 INFO    ] Checking for system updates...
[2026-10-25 14:27:36,013.013 INFO    ] 200
[2026-10-25 14:27:36,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:36,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:36,071.071 INFO    ] No update needed
[2026-10-25 14:27:36,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 14:27:36,111.111 INFO    ] 200
[2026-10-25 14:27:36,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:36,155.155 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:27:36,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:36,206.206 INFO    ] No camera update needed
[2026-10-25 14:27:36,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:27:36,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:27:36,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:27:36,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:27:38,263.263 INFO    ] ================================================
[2026-10-25 14:27:38,279.279 INFO    ] Launching Daemon at Sun Oct 25 14:27:38 IST 2026
[2026-10-25 14:27:38,289.289 INFO    ] ================================================
[2026-10-25 14:27:38,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:27:38
[2026-10-25 14:27:39,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:27:39,691.691 INFO    ] Initializing speech engine...
[2026-10-25 14:27:39,706.706 INFO    ] 2026-10-25 14:27:39
[2026-10-25 14:27:39,975.975 INFO    ] 2026-10-25 14:27:39
[2026-10-25 14:27:40,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:27:40,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:27:40,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:27:40,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:27:40,353.353 INFO    ] time= 25/10/2026 14:27:40
[2026-10-25 14:27:40,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:27:40,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:27:40,513.513 INFO    ] No existing commands found in stream
[2026-10-25 14:27:45,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:27:45,541.541 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 14:27:47,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:27:47,125.125 INFO    ] Checking for system updates...
[2026-10-25 14:27:47,163.163 INFO    ] 200
[2026-10-25 14:27:47,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:47,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:47,227.227 INFO    ] No update needed
[2026-10-25 14:27:47,230.230 INFO    ] Checking for camera pi updates...
[2026-10-25 14:27:47,268.268 INFO    ] 200
[2026-10-25 14:27:47,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:27:47,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:27:47,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:27:47,362.362 INFO    ] No camera update needed
[2026-10-25 14:27:47,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:27:47,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:27:47,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:27:47,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:27:49,422.422 INFO    ] ================================================
[2026-10-25 14:27:49,437.437 INFO    ] Launching Daemon at Sun Oct 25 14:27:49 IST 2026
[2026-10-25 14:27:49,449.449 INFO    ] ================================================
[2026-10-25 14:27:50,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:27:50
[2026-10-25 14:27:50,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:27:50,852.852 INFO    ] Initializing speech engine...
[2026-10-25 14:27:50,867.867 INFO    ] 2026-10-25 14:27:50
[2026-10-25 14:27:51,134.134 INFO    ] 2026-10-25 14:27:51
[2026-10-25 14:27:51,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:27:51,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:27:51,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:27:51,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:27:51,507.507 INFO    ] time= 25/10/2026 14:27:51
[2026-10-25 14:27:51,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:27:51,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:27:51,661.661 INFO    ] No existing commands found in stream
[2026-10-25 14:27:56,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:27:56,688.688 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 14:28:00,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:28:00,076.076 INFO    ] Checking for system updates...
[2026-10-25 14:28:00,112.112 INFO    ] 200
[2026-10-25 14:28:00,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:00,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:00,179.179 INFO    ] No update needed
[2026-10-25 14:28:00,182.182 INFO    ] Checking for camera pi updates...
[2026-10-25 14:28:00,217.217 INFO    ] 200
[2026-10-25 14:28:00,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:00,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:28:00,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:00,316.316 INFO    ] No camera update needed
[2026-10-25 14:28:00,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:28:00,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:28:00,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:28:00,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:28:02,377.377 INFO    ] ================================================
[2026-10-25 14:28:02,398.398 INFO    ] Launching Daemon at Sun Oct 25 14:28:02 IST 2026
[2026-10-25 14:28:02,414.414 INFO    ] ================================================
[2026-10-25 14:28:03,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:28:03
[2026-10-25 14:28:03,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:28:04,085.085 INFO    ] Initializing speech engine...
[2026-10-25 14:28:04,099.099 INFO    ] 2026-10-25 14:28:04
[2026-10-25 14:28:04,370.370 INFO    ] 2026-10-25 14:28:04
[2026-10-25 14:28:04,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:28:04,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:28:04,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:28:04,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:28:04,865.865 INFO    ] time= 25/10/2026 14:28:04
[2026-10-25 14:28:04,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:28:04,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:28:05,061.061 INFO    ] No existing commands found in stream
[2026-10-25 14:28:10,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:28:10,093.093 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 14:28:14,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:28:14,458.458 INFO    ] Checking for system updates...
[2026-10-25 14:28:14,496.496 INFO    ] 200
[2026-10-25 14:28:14,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:14,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:14,554.554 INFO    ] No update needed
[2026-10-25 14:28:14,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 14:28:14,595.595 INFO    ] 200
[2026-10-25 14:28:14,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:14,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:28:14,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:14,695.695 INFO    ] No camera update needed
[2026-10-25 14:28:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:28:14,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:28:14,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:28:14,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:28:16,749.749 INFO    ] ================================================
[2026-10-25 14:28:16,764.764 INFO    ] Launching Daemon at Sun Oct 25 14:28:16 IST 2026
[2026-10-25 14:28:16,775.775 INFO    ] ================================================
[2026-10-25 14:28:17,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:28:17
[2026-10-25 14:28:17,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:28:18,237.237 INFO    ] Initializing speech engine...
[2026-10-25 14:28:18,243.243 INFO    ] 2026-10-25 14:28:18
[2026-10-25 14:28:18,504.504 INFO    ] 2026-10-25 14:28:18
[2026-10-25 14:28:18,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:28:18,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:28:18,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:28:18,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:28:18,982.982 INFO    ] time= 25/10/2026 14:28:18
[2026-10-25 14:28:19,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:28:19,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:28:19,123.123 INFO    ] No existing commands found in stream
[2026-10-25 14:28:24,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:28:24,162.162 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 14:28:26,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:28:26,506.506 INFO    ] Checking for system updates...
[2026-10-25 14:28:26,547.547 INFO    ] 200
[2026-10-25 14:28:26,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:26,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:28:26,612.612 INFO    ] No update needed
[2026-10-25 14:28:26,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 14:28:26,649.649 INFO    ] 200
[2026-10-25 14:28:26,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:26,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:28:26,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:28:26,747.747 INFO    ] No camera update needed
[2026-10-25 14:28:26,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:28:26,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:28:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:28:26,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:28:28,804.804 INFO    ] ================================================
[2026-10-25 14:28:28,819.819 INFO    ] Launching Daemon at Sun Oct 25 14:28:28 IST 2026
[2026-10-25 14:28:28,829.829 INFO    ] ================================================
[2026-10-25 14:28:29,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:28:29
[2026-10-25 14:28:29,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:28:30,229.229 INFO    ] Initializing speech engine...
[2026-10-25 14:28:30,244.244 INFO    ] 2026-10-25 14:28:30
[2026-10-25 14:28:30,511.511 INFO    ] 2026-10-25 14:28:30
[2026-10-25 14:28:30,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:28:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:28:30,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:28:30,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:28:30,887.887 INFO    ] time= 25/10/2026 14:28:30
[2026-10-25 14:28:30,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:28:30,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:28:31,069.069 INFO    ] No existing commands found in stream
[2026-10-25 14:28:36,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:28:36,097.097 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 14:28:39,191.191 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:28:39,194.194 INFO    ] Checking for system updates...
[2026-10-25 14:28:39,230.230 INFO    ] 200
[2026-10-25 14:28:39,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:39,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:39,289.289 INFO    ] No update needed
[2026-10-25 14:28:39,292.292 INFO    ] Checking for camera pi updates...
[2026-10-25 14:28:39,326.326 INFO    ] 200
[2026-10-25 14:28:39,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:39,374.374 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:28:39,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:39,439.439 INFO    ] No camera update needed
[2026-10-25 14:28:39,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:28:39,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:28:39,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:28:39,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:28:41,496.496 INFO    ] ================================================
[2026-10-25 14:28:41,511.511 INFO    ] Launching Daemon at Sun Oct 25 14:28:41 IST 2026
[2026-10-25 14:28:41,522.522 INFO    ] ================================================
[2026-10-25 14:28:42,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:28:42
[2026-10-25 14:28:42,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:28:42,932.932 INFO    ] Initializing speech engine...
[2026-10-25 14:28:42,952.952 INFO    ] 2026-10-25 14:28:42
[2026-10-25 14:28:43,227.227 INFO    ] 2026-10-25 14:28:43
[2026-10-25 14:28:43,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:28:43,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:28:43,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:28:43,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:28:43,605.605 INFO    ] time= 25/10/2026 14:28:43
[2026-10-25 14:28:43,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:28:43,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:28:43,730.730 INFO    ] No existing commands found in stream
[2026-10-25 14:28:48,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:28:48,746.746 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 14:28:50,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:28:50,170.170 INFO    ] Checking for system updates...
[2026-10-25 14:28:50,206.206 INFO    ] 200
[2026-10-25 14:28:50,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:50,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:50,264.264 INFO    ] No update needed
[2026-10-25 14:28:50,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 14:28:50,300.300 INFO    ] 200
[2026-10-25 14:28:50,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:28:50,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:28:50,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:28:50,408.408 INFO    ] No camera update needed
[2026-10-25 14:28:50,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:28:50,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:28:50,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:28:50,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:28:52,464.464 INFO    ] ================================================
[2026-10-25 14:28:52,479.479 INFO    ] Launching Daemon at Sun Oct 25 14:28:52 IST 2026
[2026-10-25 14:28:52,490.490 INFO    ] ================================================
[2026-10-25 14:28:53,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:28:53
[2026-10-25 14:28:53,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:28:53,945.945 INFO    ] Initializing speech engine...
[2026-10-25 14:28:53,970.970 INFO    ] 2026-10-25 14:28:53
[2026-10-25 14:28:54,246.246 INFO    ] 2026-10-25 14:28:54
[2026-10-25 14:28:54,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:28:54,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:28:54,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:28:54,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:28:54,663.663 INFO    ] time= 25/10/2026 14:28:54
[2026-10-25 14:28:54,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:28:54,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:28:54,749.749 INFO    ] No existing commands found in stream
[2026-10-25 14:28:59,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:28:59,765.765 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 14:29:02,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:29:02,243.243 INFO    ] Checking for system updates...
[2026-10-25 14:29:02,295.295 INFO    ] 200
[2026-10-25 14:29:02,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:02,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:29:02,369.369 INFO    ] No update needed
[2026-10-25 14:29:02,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 14:29:02,415.415 INFO    ] 200
[2026-10-25 14:29:02,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:02,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:29:02,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:29:02,520.520 INFO    ] No camera update needed
[2026-10-25 14:29:02,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:29:02,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:29:02,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:29:02,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:29:04,579.579 INFO    ] ================================================
[2026-10-25 14:29:04,594.594 INFO    ] Launching Daemon at Sun Oct 25 14:29:04 IST 2026
[2026-10-25 14:29:04,604.604 INFO    ] ================================================
[2026-10-25 14:29:05,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:29:05
[2026-10-25 14:29:05,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:29:06,067.067 INFO    ] Initializing speech engine...
[2026-10-25 14:29:06,073.073 INFO    ] 2026-10-25 14:29:06
[2026-10-25 14:29:06,356.356 INFO    ] 2026-10-25 14:29:06
[2026-10-25 14:29:06,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:29:06,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:29:06,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:29:06,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:29:06,821.821 INFO    ] time= 25/10/2026 14:29:06
[2026-10-25 14:29:06,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:29:06,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:29:07,015.015 INFO    ] No existing commands found in stream
[2026-10-25 14:29:12,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:29:12,048.048 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 14:29:16,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:29:16,091.091 INFO    ] Checking for system updates...
[2026-10-25 14:29:16,128.128 INFO    ] 200
[2026-10-25 14:29:16,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:16,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:16,187.187 INFO    ] No update needed
[2026-10-25 14:29:16,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 14:29:16,225.225 INFO    ] 200
[2026-10-25 14:29:16,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:16,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:29:16,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:16,329.329 INFO    ] No camera update needed
[2026-10-25 14:29:16,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:29:16,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:29:16,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:29:16,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:29:18,386.386 INFO    ] ================================================
[2026-10-25 14:29:18,401.401 INFO    ] Launching Daemon at Sun Oct 25 14:29:18 IST 2026
[2026-10-25 14:29:18,412.412 INFO    ] ================================================
[2026-10-25 14:29:18,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:29:18
[2026-10-25 14:29:19,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:29:19,852.852 INFO    ] Initializing speech engine...
[2026-10-25 14:29:19,871.871 INFO    ] 2026-10-25 14:29:19
[2026-10-25 14:29:20,121.121 INFO    ] 2026-10-25 14:29:20
[2026-10-25 14:29:20,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:29:20,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:29:20,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:29:20,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:29:20,499.499 INFO    ] time= 25/10/2026 14:29:20
[2026-10-25 14:29:20,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:29:20,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:29:20,674.674 INFO    ] No existing commands found in stream
[2026-10-25 14:29:25,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:29:25,703.703 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 14:29:26,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:29:26,206.206 INFO    ] Checking for system updates...
[2026-10-25 14:29:26,242.242 INFO    ] 200
[2026-10-25 14:29:26,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:26,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:26,304.304 INFO    ] No update needed
[2026-10-25 14:29:26,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 14:29:26,356.356 INFO    ] 200
[2026-10-25 14:29:26,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:26,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:29:26,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:26,455.455 INFO    ] No camera update needed
[2026-10-25 14:29:26,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:29:26,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:29:26,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:29:26,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:29:28,509.509 INFO    ] ================================================
[2026-10-25 14:29:28,524.524 INFO    ] Launching Daemon at Sun Oct 25 14:29:28 IST 2026
[2026-10-25 14:29:28,535.535 INFO    ] ================================================
[2026-10-25 14:29:29,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:29:29
[2026-10-25 14:29:29,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:29:30,107.107 INFO    ] Initializing speech engine...
[2026-10-25 14:29:30,118.118 INFO    ] 2026-10-25 14:29:30
[2026-10-25 14:29:30,399.399 INFO    ] 2026-10-25 14:29:30
[2026-10-25 14:29:30,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:29:31,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:29:31,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:29:32,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:29:32,191.191 INFO    ] time= 25/10/2026 14:29:32
[2026-10-25 14:29:32,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:29:32,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:29:32,333.333 INFO    ] No existing commands found in stream
[2026-10-25 14:29:37,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:29:37,361.361 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 14:29:38,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:29:38,669.669 INFO    ] Checking for system updates...
[2026-10-25 14:29:38,709.709 INFO    ] 200
[2026-10-25 14:29:38,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:38,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:38,772.772 INFO    ] No update needed
[2026-10-25 14:29:38,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 14:29:38,811.811 INFO    ] 200
[2026-10-25 14:29:38,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:38,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:29:38,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:38,999.999 INFO    ] No camera update needed
[2026-10-25 14:29:39,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:29:39,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:29:39,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:29:39,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:29:41,053.053 INFO    ] ================================================
[2026-10-25 14:29:41,068.068 INFO    ] Launching Daemon at Sun Oct 25 14:29:41 IST 2026
[2026-10-25 14:29:41,078.078 INFO    ] ================================================
[2026-10-25 14:29:41,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:29:41
[2026-10-25 14:29:42,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:29:42,536.536 INFO    ] Initializing speech engine...
[2026-10-25 14:29:42,542.542 INFO    ] 2026-10-25 14:29:42
[2026-10-25 14:29:42,796.796 INFO    ] 2026-10-25 14:29:42
[2026-10-25 14:29:42,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:29:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:29:43,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:29:43,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:29:43,253.253 INFO    ] time= 25/10/2026 14:29:43
[2026-10-25 14:29:43,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:29:43,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:29:43,453.453 INFO    ] No existing commands found in stream
[2026-10-25 14:29:48,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:29:48,467.467 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 14:29:50,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:29:50,636.636 INFO    ] Checking for system updates...
[2026-10-25 14:29:50,675.675 INFO    ] 200
[2026-10-25 14:29:50,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:50,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:50,735.735 INFO    ] No update needed
[2026-10-25 14:29:50,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 14:29:50,777.777 INFO    ] 200
[2026-10-25 14:29:50,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:29:50,826.826 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:29:50,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:29:50,878.878 INFO    ] No camera update needed
[2026-10-25 14:29:50,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:29:50,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:29:50,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:29:50,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:29:52,934.934 INFO    ] ================================================
[2026-10-25 14:29:52,949.949 INFO    ] Launching Daemon at Sun Oct 25 14:29:52 IST 2026
[2026-10-25 14:29:52,959.959 INFO    ] ================================================
[2026-10-25 14:29:53,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:29:53
[2026-10-25 14:29:54,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:29:54,363.363 INFO    ] Initializing speech engine...
[2026-10-25 14:29:54,383.383 INFO    ] 2026-10-25 14:29:54
[2026-10-25 14:29:54,654.654 INFO    ] 2026-10-25 14:29:54
[2026-10-25 14:29:54,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:29:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:29:54,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:29:55,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:29:55,019.019 INFO    ] time= 25/10/2026 14:29:55
[2026-10-25 14:29:55,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:29:55,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:29:55,139.139 INFO    ] No existing commands found in stream
[2026-10-25 14:30:00,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:30:00,155.155 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 14:30:08,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:30:08,110.110 INFO    ] Checking for system updates...
[2026-10-25 14:30:08,149.149 INFO    ] 200
[2026-10-25 14:30:08,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:08,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:08,208.208 INFO    ] No update needed
[2026-10-25 14:30:08,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 14:30:08,249.249 INFO    ] 200
[2026-10-25 14:30:08,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:08,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:30:08,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:08,346.346 INFO    ] No camera update needed
[2026-10-25 14:30:08,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:30:08,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:30:08,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:30:08,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:30:10,401.401 INFO    ] ================================================
[2026-10-25 14:30:10,416.416 INFO    ] Launching Daemon at Sun Oct 25 14:30:10 IST 2026
[2026-10-25 14:30:10,427.427 INFO    ] ================================================
[2026-10-25 14:30:10,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:30:10
[2026-10-25 14:30:11,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:30:11,851.851 INFO    ] Initializing speech engine...
[2026-10-25 14:30:11,857.857 INFO    ] 2026-10-25 14:30:11
[2026-10-25 14:30:12,101.101 INFO    ] 2026-10-25 14:30:12
[2026-10-25 14:30:12,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:30:12,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:30:12,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:30:12,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:30:12,568.568 INFO    ] time= 25/10/2026 14:30:12
[2026-10-25 14:30:12,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:30:12,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:30:12,716.716 INFO    ] No existing commands found in stream
[2026-10-25 14:30:17,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:30:17,731.731 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 14:30:20,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:30:20,910.910 INFO    ] Checking for system updates...
[2026-10-25 14:30:20,952.952 INFO    ] 200
[2026-10-25 14:30:20,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:21,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:21,014.014 INFO    ] No update needed
[2026-10-25 14:30:21,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 14:30:21,056.056 INFO    ] 200
[2026-10-25 14:30:21,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:21,106.106 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:30:21,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:21,166.166 INFO    ] No camera update needed
[2026-10-25 14:30:21,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:30:21,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:30:21,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:30:21,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:30:23,228.228 INFO    ] ================================================
[2026-10-25 14:30:23,244.244 INFO    ] Launching Daemon at Sun Oct 25 14:30:23 IST 2026
[2026-10-25 14:30:23,259.259 INFO    ] ================================================
[2026-10-25 14:30:23,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:30:23
[2026-10-25 14:30:24,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:30:24,669.669 INFO    ] Initializing speech engine...
[2026-10-25 14:30:24,684.684 INFO    ] 2026-10-25 14:30:24
[2026-10-25 14:30:24,946.946 INFO    ] 2026-10-25 14:30:24
[2026-10-25 14:30:24,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:30:25,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:30:25,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:30:25,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:30:25,421.421 INFO    ] time= 25/10/2026 14:30:25
[2026-10-25 14:30:25,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:30:25,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:30:25,560.560 INFO    ] No existing commands found in stream
[2026-10-25 14:30:30,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:30:30,575.575 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 14:30:34,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:30:34,586.586 INFO    ] Checking for system updates...
[2026-10-25 14:30:34,623.623 INFO    ] 200
[2026-10-25 14:30:34,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:34,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:34,683.683 INFO    ] No update needed
[2026-10-25 14:30:34,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 14:30:34,724.724 INFO    ] 200
[2026-10-25 14:30:34,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:34,767.767 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:30:34,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:34,817.817 INFO    ] No camera update needed
[2026-10-25 14:30:34,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:30:34,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:30:34,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:30:34,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:30:36,874.874 INFO    ] ================================================
[2026-10-25 14:30:36,890.890 INFO    ] Launching Daemon at Sun Oct 25 14:30:36 IST 2026
[2026-10-25 14:30:36,901.901 INFO    ] ================================================
[2026-10-25 14:30:37,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:30:37
[2026-10-25 14:30:38,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:30:38,332.332 INFO    ] Initializing speech engine...
[2026-10-25 14:30:38,341.341 INFO    ] 2026-10-25 14:30:38
[2026-10-25 14:30:38,637.637 INFO    ] 2026-10-25 14:30:38
[2026-10-25 14:30:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:30:38,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:30:38,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:30:39,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:30:39,057.057 INFO    ] time= 25/10/2026 14:30:39
[2026-10-25 14:30:39,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:30:39,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:30:39,147.147 INFO    ] No existing commands found in stream
[2026-10-25 14:30:44,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:30:44,159.159 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 14:30:46,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:30:46,684.684 INFO    ] Checking for system updates...
[2026-10-25 14:30:46,738.738 INFO    ] 200
[2026-10-25 14:30:46,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:46,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:46,808.808 INFO    ] No update needed
[2026-10-25 14:30:46,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 14:30:46,849.849 INFO    ] 200
[2026-10-25 14:30:46,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:46,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:30:46,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:30:46,944.944 INFO    ] No camera update needed
[2026-10-25 14:30:46,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:30:46,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:30:46,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:30:46,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:30:49,999.999 INFO    ] ================================================
[2026-10-25 14:30:49,015.015 INFO    ] Launching Daemon at Sun Oct 25 14:30:49 IST 2026
[2026-10-25 14:30:49,027.027 INFO    ] ================================================
[2026-10-25 14:30:49,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:30:49
[2026-10-25 14:30:50,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:30:50,457.457 INFO    ] Initializing speech engine...
[2026-10-25 14:30:50,466.466 INFO    ] 2026-10-25 14:30:50
[2026-10-25 14:30:50,711.711 INFO    ] 2026-10-25 14:30:50
[2026-10-25 14:30:50,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:30:50,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:30:51,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:30:51,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:30:51,207.207 INFO    ] time= 25/10/2026 14:30:51
[2026-10-25 14:30:51,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:30:51,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:30:51,324.324 INFO    ] No existing commands found in stream
[2026-10-25 14:30:56,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:30:56,339.339 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 14:30:58,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:30:58,460.460 INFO    ] Checking for system updates...
[2026-10-25 14:30:58,497.497 INFO    ] 200
[2026-10-25 14:30:58,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:58,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:30:58,554.554 INFO    ] No update needed
[2026-10-25 14:30:58,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 14:30:58,591.591 INFO    ] 200
[2026-10-25 14:30:58,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:30:58,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:30:58,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:30:58,687.687 INFO    ] No camera update needed
[2026-10-25 14:30:58,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:30:58,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:30:58,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:30:58,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:31:00,744.744 INFO    ] ================================================
[2026-10-25 14:31:00,759.759 INFO    ] Launching Daemon at Sun Oct 25 14:31:00 IST 2026
[2026-10-25 14:31:00,771.771 INFO    ] ================================================
[2026-10-25 14:31:01,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:31:01
[2026-10-25 14:31:02,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:31:02,443.443 INFO    ] Initializing speech engine...
[2026-10-25 14:31:02,454.454 INFO    ] 2026-10-25 14:31:02
[2026-10-25 14:31:02,764.764 INFO    ] 2026-10-25 14:31:02
[2026-10-25 14:31:02,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:31:05,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:31:05,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:31:05,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:31:05,439.439 INFO    ] time= 25/10/2026 14:31:05
[2026-10-25 14:31:05,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:31:05,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:31:05,565.565 INFO    ] No existing commands found in stream
[2026-10-25 14:31:10,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:31:10,601.601 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 14:31:12,413.413 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:31:12,416.416 INFO    ] Checking for system updates...
[2026-10-25 14:31:12,453.453 INFO    ] 200
[2026-10-25 14:31:12,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:12,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:12,519.519 INFO    ] No update needed
[2026-10-25 14:31:12,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 14:31:12,555.555 INFO    ] 200
[2026-10-25 14:31:12,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:12,608.608 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:31:12,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:12,669.669 INFO    ] No camera update needed
[2026-10-25 14:31:12,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:31:12,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:31:12,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:31:12,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:31:14,723.723 INFO    ] ================================================
[2026-10-25 14:31:14,739.739 INFO    ] Launching Daemon at Sun Oct 25 14:31:14 IST 2026
[2026-10-25 14:31:14,752.752 INFO    ] ================================================
[2026-10-25 14:31:15,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:31:15
[2026-10-25 14:31:16,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:31:16,393.393 INFO    ] Initializing speech engine...
[2026-10-25 14:31:16,407.407 INFO    ] 2026-10-25 14:31:16
[2026-10-25 14:31:16,688.688 INFO    ] 2026-10-25 14:31:16
[2026-10-25 14:31:16,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:31:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:31:17,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:31:17,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:31:17,222.222 INFO    ] time= 25/10/2026 14:31:17
[2026-10-25 14:31:17,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:31:17,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:31:17,377.377 INFO    ] No existing commands found in stream
[2026-10-25 14:31:22,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:31:22,400.400 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 14:31:26,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:31:26,432.432 INFO    ] Checking for system updates...
[2026-10-25 14:31:26,473.473 INFO    ] 200
[2026-10-25 14:31:26,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:26,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:31:26,537.537 INFO    ] No update needed
[2026-10-25 14:31:26,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 14:31:26,577.577 INFO    ] 200
[2026-10-25 14:31:26,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:26,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:31:26,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:31:26,675.675 INFO    ] No camera update needed
[2026-10-25 14:31:26,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:31:26,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:31:26,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:31:26,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:31:28,730.730 INFO    ] ================================================
[2026-10-25 14:31:28,745.745 INFO    ] Launching Daemon at Sun Oct 25 14:31:28 IST 2026
[2026-10-25 14:31:28,756.756 INFO    ] ================================================
[2026-10-25 14:31:29,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:31:29
[2026-10-25 14:31:30,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:31:30,349.349 INFO    ] Initializing speech engine...
[2026-10-25 14:31:30,363.363 INFO    ] 2026-10-25 14:31:30
[2026-10-25 14:31:30,671.671 INFO    ] 2026-10-25 14:31:30
[2026-10-25 14:31:30,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:31:30,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:31:30,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:31:31,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:31:31,127.127 INFO    ] time= 25/10/2026 14:31:31
[2026-10-25 14:31:31,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:31:31,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:31:31,326.326 INFO    ] No existing commands found in stream
[2026-10-25 14:31:36,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:31:36,356.356 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 14:31:40,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:31:40,500.500 INFO    ] Checking for system updates...
[2026-10-25 14:31:40,537.537 INFO    ] 200
[2026-10-25 14:31:40,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:40,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:40,597.597 INFO    ] No update needed
[2026-10-25 14:31:40,600.600 INFO    ] Checking for camera pi updates...
[2026-10-25 14:31:40,635.635 INFO    ] 200
[2026-10-25 14:31:40,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:40,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:31:40,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:40,834.834 INFO    ] No camera update needed
[2026-10-25 14:31:40,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:31:40,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:31:40,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:31:40,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:31:42,890.890 INFO    ] ================================================
[2026-10-25 14:31:42,904.904 INFO    ] Launching Daemon at Sun Oct 25 14:31:42 IST 2026
[2026-10-25 14:31:42,915.915 INFO    ] ================================================
[2026-10-25 14:31:43,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:31:43
[2026-10-25 14:31:44,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:31:44,344.344 INFO    ] Initializing speech engine...
[2026-10-25 14:31:44,354.354 INFO    ] 2026-10-25 14:31:44
[2026-10-25 14:31:44,601.601 INFO    ] 2026-10-25 14:31:44
[2026-10-25 14:31:44,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:31:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:31:44,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:31:45,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:31:45,039.039 INFO    ] time= 25/10/2026 14:31:45
[2026-10-25 14:31:45,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:31:45,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:31:45,218.218 INFO    ] No existing commands found in stream
[2026-10-25 14:31:50,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:31:50,233.233 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 14:31:50,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:31:50,970.970 INFO    ] Checking for system updates...
[2026-10-25 14:31:51,006.006 INFO    ] 200
[2026-10-25 14:31:51,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:51,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:51,066.066 INFO    ] No update needed
[2026-10-25 14:31:51,068.068 INFO    ] Checking for camera pi updates...
[2026-10-25 14:31:51,106.106 INFO    ] 200
[2026-10-25 14:31:51,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:31:51,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:31:51,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:31:51,210.210 INFO    ] No camera update needed
[2026-10-25 14:31:51,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:31:51,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:31:51,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:31:51,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:31:53,265.265 INFO    ] ================================================
[2026-10-25 14:31:53,279.279 INFO    ] Launching Daemon at Sun Oct 25 14:31:53 IST 2026
[2026-10-25 14:31:53,290.290 INFO    ] ================================================
[2026-10-25 14:31:53,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:31:53
[2026-10-25 14:31:54,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:31:54,742.742 INFO    ] Initializing speech engine...
[2026-10-25 14:31:54,765.765 INFO    ] 2026-10-25 14:31:54
[2026-10-25 14:31:55,016.016 INFO    ] 2026-10-25 14:31:55
[2026-10-25 14:31:55,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:31:55,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:31:55,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:31:55,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:31:55,464.464 INFO    ] time= 25/10/2026 14:31:55
[2026-10-25 14:31:55,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:31:55,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:31:55,633.633 INFO    ] No existing commands found in stream
[2026-10-25 14:32:00,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:32:00,647.647 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 14:32:03,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:32:03,032.032 INFO    ] Checking for system updates...
[2026-10-25 14:32:03,084.084 INFO    ] 200
[2026-10-25 14:32:03,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:03,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:32:03,170.170 INFO    ] No update needed
[2026-10-25 14:32:03,173.173 INFO    ] Checking for camera pi updates...
[2026-10-25 14:32:03,220.220 INFO    ] 200
[2026-10-25 14:32:03,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:03,289.289 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:32:03,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:32:03,337.337 INFO    ] No camera update needed
[2026-10-25 14:32:03,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:32:03,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:32:03,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:32:03,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:32:05,393.393 INFO    ] ================================================
[2026-10-25 14:32:05,409.409 INFO    ] Launching Daemon at Sun Oct 25 14:32:05 IST 2026
[2026-10-25 14:32:05,419.419 INFO    ] ================================================
[2026-10-25 14:32:05,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:32:05
[2026-10-25 14:32:06,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:32:06,872.872 INFO    ] Initializing speech engine...
[2026-10-25 14:32:06,883.883 INFO    ] 2026-10-25 14:32:06
[2026-10-25 14:32:07,144.144 INFO    ] 2026-10-25 14:32:07
[2026-10-25 14:32:07,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:32:07,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:32:07,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:32:07,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:32:07,588.588 INFO    ] time= 25/10/2026 14:32:07
[2026-10-25 14:32:07,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:32:07,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:32:07,762.762 INFO    ] No existing commands found in stream
[2026-10-25 14:32:12,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:32:12,785.785 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 14:32:16,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:32:16,230.230 INFO    ] Checking for system updates...
[2026-10-25 14:32:16,267.267 INFO    ] 200
[2026-10-25 14:32:16,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:16,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:16,325.325 INFO    ] No update needed
[2026-10-25 14:32:16,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 14:32:16,365.365 INFO    ] 200
[2026-10-25 14:32:16,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:16,408.408 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:32:16,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:16,456.456 INFO    ] No camera update needed
[2026-10-25 14:32:16,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:32:16,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:32:16,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:32:16,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:32:18,513.513 INFO    ] ================================================
[2026-10-25 14:32:18,529.529 INFO    ] Launching Daemon at Sun Oct 25 14:32:18 IST 2026
[2026-10-25 14:32:18,540.540 INFO    ] ================================================
[2026-10-25 14:32:19,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:32:19
[2026-10-25 14:32:19,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:32:20,112.112 INFO    ] Initializing speech engine...
[2026-10-25 14:32:20,121.121 INFO    ] 2026-10-25 14:32:20
[2026-10-25 14:32:20,389.389 INFO    ] 2026-10-25 14:32:20
[2026-10-25 14:32:20,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:32:20,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:32:20,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:32:20,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:32:20,876.876 INFO    ] time= 25/10/2026 14:32:20
[2026-10-25 14:32:20,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:32:20,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:32:21,094.094 INFO    ] No existing commands found in stream
[2026-10-25 14:32:26,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:32:26,125.125 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 14:32:29,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:32:29,988.988 INFO    ] Checking for system updates...
[2026-10-25 14:32:30,028.028 INFO    ] 200
[2026-10-25 14:32:30,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:30,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:30,091.091 INFO    ] No update needed
[2026-10-25 14:32:30,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 14:32:30,130.130 INFO    ] 200
[2026-10-25 14:32:30,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:30,177.177 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:32:30,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:30,227.227 INFO    ] No camera update needed
[2026-10-25 14:32:30,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:32:30,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:32:30,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:32:30,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:32:32,283.283 INFO    ] ================================================
[2026-10-25 14:32:32,299.299 INFO    ] Launching Daemon at Sun Oct 25 14:32:32 IST 2026
[2026-10-25 14:32:32,322.322 INFO    ] ================================================
[2026-10-25 14:32:32,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:32:32
[2026-10-25 14:32:33,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:32:33,884.884 INFO    ] Initializing speech engine...
[2026-10-25 14:32:33,890.890 INFO    ] 2026-10-25 14:32:33
[2026-10-25 14:32:34,164.164 INFO    ] 2026-10-25 14:32:34
[2026-10-25 14:32:34,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:32:37,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:32:37,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:32:38,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:32:38,156.156 INFO    ] time= 25/10/2026 14:32:38
[2026-10-25 14:32:38,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:32:38,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:32:38,213.213 INFO    ] No existing commands found in stream
[2026-10-25 14:32:43,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:32:43,226.226 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 14:32:45,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:32:45,561.561 INFO    ] Checking for system updates...
[2026-10-25 14:32:45,602.602 INFO    ] 200
[2026-10-25 14:32:45,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:45,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:45,660.660 INFO    ] No update needed
[2026-10-25 14:32:45,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 14:32:45,698.698 INFO    ] 200
[2026-10-25 14:32:45,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:45,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:32:45,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:32:45,812.812 INFO    ] No camera update needed
[2026-10-25 14:32:45,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:32:45,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:32:45,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:32:45,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:32:47,871.871 INFO    ] ================================================
[2026-10-25 14:32:47,886.886 INFO    ] Launching Daemon at Sun Oct 25 14:32:47 IST 2026
[2026-10-25 14:32:47,897.897 INFO    ] ================================================
[2026-10-25 14:32:48,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:32:48
[2026-10-25 14:32:49,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:32:49,522.522 INFO    ] Initializing speech engine...
[2026-10-25 14:32:49,534.534 INFO    ] 2026-10-25 14:32:49
[2026-10-25 14:32:49,815.815 INFO    ] 2026-10-25 14:32:49
[2026-10-25 14:32:49,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:32:50,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:32:50,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:32:50,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:32:50,277.277 INFO    ] time= 25/10/2026 14:32:50
[2026-10-25 14:32:50,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:32:50,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:32:50,433.433 INFO    ] No existing commands found in stream
[2026-10-25 14:32:55,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:32:55,452.452 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 14:32:58,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:32:58,376.376 INFO    ] Checking for system updates...
[2026-10-25 14:32:58,413.413 INFO    ] 200
[2026-10-25 14:32:58,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:58,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:32:58,478.478 INFO    ] No update needed
[2026-10-25 14:32:58,480.480 INFO    ] Checking for camera pi updates...
[2026-10-25 14:32:58,514.514 INFO    ] 200
[2026-10-25 14:32:58,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:32:58,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:32:58,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:32:58,614.614 INFO    ] No camera update needed
[2026-10-25 14:32:58,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:32:58,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:32:58,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:32:58,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:33:00,668.668 INFO    ] ================================================
[2026-10-25 14:33:00,683.683 INFO    ] Launching Daemon at Sun Oct 25 14:33:00 IST 2026
[2026-10-25 14:33:00,693.693 INFO    ] ================================================
[2026-10-25 14:33:01,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:33:01
[2026-10-25 14:33:01,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:33:02,389.389 INFO    ] Initializing speech engine...
[2026-10-25 14:33:02,399.399 INFO    ] 2026-10-25 14:33:02
[2026-10-25 14:33:02,725.725 INFO    ] 2026-10-25 14:33:02
[2026-10-25 14:33:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:33:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:33:02,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:33:03,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:33:03,133.133 INFO    ] time= 25/10/2026 14:33:03
[2026-10-25 14:33:03,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:33:03,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:33:03,295.295 INFO    ] No existing commands found in stream
[2026-10-25 14:33:08,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:33:08,315.315 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 14:33:10,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:33:10,645.645 INFO    ] Checking for system updates...
[2026-10-25 14:33:10,687.687 INFO    ] 200
[2026-10-25 14:33:10,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:10,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:10,755.755 INFO    ] No update needed
[2026-10-25 14:33:10,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 14:33:10,797.797 INFO    ] 200
[2026-10-25 14:33:10,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:10,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:33:10,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:10,920.920 INFO    ] No camera update needed
[2026-10-25 14:33:10,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:33:10,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:33:10,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:33:10,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:33:12,981.981 INFO    ] ================================================
[2026-10-25 14:33:13,996.996 INFO    ] Launching Daemon at Sun Oct 25 14:33:12 IST 2026
[2026-10-25 14:33:13,006.006 INFO    ] ================================================
[2026-10-25 14:33:13,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:33:13
[2026-10-25 14:33:14,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:33:14,408.408 INFO    ] Initializing speech engine...
[2026-10-25 14:33:14,431.431 INFO    ] 2026-10-25 14:33:14
[2026-10-25 14:33:14,686.686 INFO    ] 2026-10-25 14:33:14
[2026-10-25 14:33:14,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:33:14,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:33:14,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:33:15,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:33:15,065.065 INFO    ] time= 25/10/2026 14:33:15
[2026-10-25 14:33:15,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:33:15,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:33:15,244.244 INFO    ] No existing commands found in stream
[2026-10-25 14:33:20,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:33:20,273.273 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 14:33:23,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:33:23,430.430 INFO    ] Checking for system updates...
[2026-10-25 14:33:23,466.466 INFO    ] 200
[2026-10-25 14:33:23,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:23,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:33:23,525.525 INFO    ] No update needed
[2026-10-25 14:33:23,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 14:33:23,562.562 INFO    ] 200
[2026-10-25 14:33:23,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:23,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:33:23,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:33:23,659.659 INFO    ] No camera update needed
[2026-10-25 14:33:23,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:33:23,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:33:23,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:33:23,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:33:25,715.715 INFO    ] ================================================
[2026-10-25 14:33:25,731.731 INFO    ] Launching Daemon at Sun Oct 25 14:33:25 IST 2026
[2026-10-25 14:33:25,742.742 INFO    ] ================================================
[2026-10-25 14:33:26,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:33:26
[2026-10-25 14:33:26,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:33:27,195.195 INFO    ] Initializing speech engine...
[2026-10-25 14:33:27,205.205 INFO    ] 2026-10-25 14:33:27
[2026-10-25 14:33:27,452.452 INFO    ] 2026-10-25 14:33:27
[2026-10-25 14:33:27,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:33:27,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:33:27,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:33:27,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:33:27,835.835 INFO    ] time= 25/10/2026 14:33:27
[2026-10-25 14:33:27,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:33:27,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:33:27,989.989 INFO    ] No existing commands found in stream
[2026-10-25 14:33:33,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:33:33,026.026 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 14:33:34,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:33:34,177.177 INFO    ] Checking for system updates...
[2026-10-25 14:33:34,216.216 INFO    ] 200
[2026-10-25 14:33:34,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:34,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:34,275.275 INFO    ] No update needed
[2026-10-25 14:33:34,277.277 INFO    ] Checking for camera pi updates...
[2026-10-25 14:33:34,315.315 INFO    ] 200
[2026-10-25 14:33:34,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:34,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:33:34,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:34,416.416 INFO    ] No camera update needed
[2026-10-25 14:33:34,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:33:34,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:33:34,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:33:34,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:33:36,472.472 INFO    ] ================================================
[2026-10-25 14:33:36,487.487 INFO    ] Launching Daemon at Sun Oct 25 14:33:36 IST 2026
[2026-10-25 14:33:36,498.498 INFO    ] ================================================
[2026-10-25 14:33:37,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:33:37
[2026-10-25 14:33:37,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:33:37,946.946 INFO    ] Initializing speech engine...
[2026-10-25 14:33:37,955.955 INFO    ] 2026-10-25 14:33:37
[2026-10-25 14:33:38,204.204 INFO    ] 2026-10-25 14:33:38
[2026-10-25 14:33:38,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:33:40,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:33:40,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:33:40,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:33:40,713.713 INFO    ] time= 25/10/2026 14:33:40
[2026-10-25 14:33:40,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:33:40,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:33:40,802.802 INFO    ] No existing commands found in stream
[2026-10-25 14:33:45,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:33:45,816.816 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 14:33:47,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:33:47,845.845 INFO    ] Checking for system updates...
[2026-10-25 14:33:47,885.885 INFO    ] 200
[2026-10-25 14:33:47,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:47,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:47,949.949 INFO    ] No update needed
[2026-10-25 14:33:47,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 14:33:47,987.987 INFO    ] 200
[2026-10-25 14:33:47,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:33:48,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:33:48,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:33:48,191.191 INFO    ] No camera update needed
[2026-10-25 14:33:48,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:33:48,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:33:48,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:33:48,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:33:50,247.247 INFO    ] ================================================
[2026-10-25 14:33:50,263.263 INFO    ] Launching Daemon at Sun Oct 25 14:33:50 IST 2026
[2026-10-25 14:33:50,274.274 INFO    ] ================================================
[2026-10-25 14:33:51,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:33:50
[2026-10-25 14:33:52,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:33:53,166.166 INFO    ] Initializing speech engine...
[2026-10-25 14:33:53,177.177 INFO    ] 2026-10-25 14:33:53
[2026-10-25 14:33:53,441.441 INFO    ] 2026-10-25 14:33:53
[2026-10-25 14:33:53,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:33:53,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:33:53,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:33:53,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:33:53,935.935 INFO    ] time= 25/10/2026 14:33:53
[2026-10-25 14:33:54,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:33:54,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:33:54,119.119 INFO    ] No existing commands found in stream
[2026-10-25 14:33:59,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:33:59,155.155 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 14:34:02,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:34:02,667.667 INFO    ] Checking for system updates...
[2026-10-25 14:34:02,713.713 INFO    ] 200
[2026-10-25 14:34:02,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:02,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:02,787.787 INFO    ] No update needed
[2026-10-25 14:34:02,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 14:34:02,840.840 INFO    ] 200
[2026-10-25 14:34:02,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:02,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:34:02,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:02,979.979 INFO    ] No camera update needed
[2026-10-25 14:34:02,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:34:02,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:34:02,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:34:02,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:34:05,048.048 INFO    ] ================================================
[2026-10-25 14:34:05,064.064 INFO    ] Launching Daemon at Sun Oct 25 14:34:05 IST 2026
[2026-10-25 14:34:05,075.075 INFO    ] ================================================
[2026-10-25 14:34:05,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:34:05
[2026-10-25 14:34:06,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:34:06,555.555 INFO    ] Initializing speech engine...
[2026-10-25 14:34:06,574.574 INFO    ] 2026-10-25 14:34:06
[2026-10-25 14:34:06,819.819 INFO    ] 2026-10-25 14:34:06
[2026-10-25 14:34:06,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:34:07,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:34:07,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:34:07,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:34:07,292.292 INFO    ] time= 25/10/2026 14:34:07
[2026-10-25 14:34:07,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:34:07,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:34:07,436.436 INFO    ] No existing commands found in stream
[2026-10-25 14:34:12,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:34:12,450.450 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 14:34:13,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:34:13,960.960 INFO    ] Checking for system updates...
[2026-10-25 14:34:13,996.996 INFO    ] 200
[2026-10-25 14:34:13,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:14,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:14,055.055 INFO    ] No update needed
[2026-10-25 14:34:14,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 14:34:14,095.095 INFO    ] 200
[2026-10-25 14:34:14,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:14,138.138 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:34:14,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:14,189.189 INFO    ] No camera update needed
[2026-10-25 14:34:14,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:34:14,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:34:14,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:34:14,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:34:16,244.244 INFO    ] ================================================
[2026-10-25 14:34:16,259.259 INFO    ] Launching Daemon at Sun Oct 25 14:34:16 IST 2026
[2026-10-25 14:34:16,269.269 INFO    ] ================================================
[2026-10-25 14:34:16,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:34:16
[2026-10-25 14:34:17,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:34:17,768.768 INFO    ] Initializing speech engine...
[2026-10-25 14:34:17,777.777 INFO    ] 2026-10-25 14:34:17
[2026-10-25 14:34:18,023.023 INFO    ] 2026-10-25 14:34:18
[2026-10-25 14:34:18,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:34:18,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:34:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:34:18,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:34:18,467.467 INFO    ] time= 25/10/2026 14:34:18
[2026-10-25 14:34:18,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:34:18,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:34:18,633.633 INFO    ] No existing commands found in stream
[2026-10-25 14:34:23,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:34:23,646.646 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 14:34:24,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:34:24,956.956 INFO    ] Checking for system updates...
[2026-10-25 14:34:25,000.000 INFO    ] 200
[2026-10-25 14:34:25,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:25,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:34:25,065.065 INFO    ] No update needed
[2026-10-25 14:34:25,068.068 INFO    ] Checking for camera pi updates...
[2026-10-25 14:34:25,108.108 INFO    ] 200
[2026-10-25 14:34:25,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:25,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:34:25,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:34:25,222.222 INFO    ] No camera update needed
[2026-10-25 14:34:25,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:34:25,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:34:25,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:34:25,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:34:27,283.283 INFO    ] ================================================
[2026-10-25 14:34:27,300.300 INFO    ] Launching Daemon at Sun Oct 25 14:34:27 IST 2026
[2026-10-25 14:34:27,311.311 INFO    ] ================================================
[2026-10-25 14:34:28,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:34:28
[2026-10-25 14:34:28,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:34:28,994.994 INFO    ] Initializing speech engine...
[2026-10-25 14:34:29,007.007 INFO    ] 2026-10-25 14:34:29
[2026-10-25 14:34:29,264.264 INFO    ] 2026-10-25 14:34:29
[2026-10-25 14:34:29,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:34:29,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:34:29,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:34:29,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:34:29,689.689 INFO    ] time= 25/10/2026 14:34:29
[2026-10-25 14:34:29,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:34:29,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:34:29,776.776 INFO    ] No existing commands found in stream
[2026-10-25 14:34:34,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:34:34,792.792 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 14:34:38,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:34:38,191.191 INFO    ] Checking for system updates...
[2026-10-25 14:34:38,229.229 INFO    ] 200
[2026-10-25 14:34:38,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:38,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:34:38,296.296 INFO    ] No update needed
[2026-10-25 14:34:38,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 14:34:38,334.334 INFO    ] 200
[2026-10-25 14:34:38,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:38,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:34:38,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:34:38,431.431 INFO    ] No camera update needed
[2026-10-25 14:34:38,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:34:38,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:34:38,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:34:38,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:34:40,487.487 INFO    ] ================================================
[2026-10-25 14:34:40,502.502 INFO    ] Launching Daemon at Sun Oct 25 14:34:40 IST 2026
[2026-10-25 14:34:40,512.512 INFO    ] ================================================
[2026-10-25 14:34:41,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:34:41
[2026-10-25 14:34:41,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:34:41,932.932 INFO    ] Initializing speech engine...
[2026-10-25 14:34:41,939.939 INFO    ] 2026-10-25 14:34:41
[2026-10-25 14:34:42,197.197 INFO    ] 2026-10-25 14:34:42
[2026-10-25 14:34:42,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:34:42,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:34:42,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:34:42,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:34:42,662.662 INFO    ] time= 25/10/2026 14:34:42
[2026-10-25 14:34:42,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:34:42,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:34:42,803.803 INFO    ] No existing commands found in stream
[2026-10-25 14:34:47,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:34:47,835.835 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 14:34:49,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:34:49,851.851 INFO    ] Checking for system updates...
[2026-10-25 14:34:49,887.887 INFO    ] 200
[2026-10-25 14:34:49,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:49,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:49,954.954 INFO    ] No update needed
[2026-10-25 14:34:49,956.956 INFO    ] Checking for camera pi updates...
[2026-10-25 14:34:49,994.994 INFO    ] 200
[2026-10-25 14:34:49,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:34:50,043.043 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:34:50,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:34:50,094.094 INFO    ] No camera update needed
[2026-10-25 14:34:50,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:34:50,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:34:50,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:34:50,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:34:52,149.149 INFO    ] ================================================
[2026-10-25 14:34:52,165.165 INFO    ] Launching Daemon at Sun Oct 25 14:34:52 IST 2026
[2026-10-25 14:34:52,176.176 INFO    ] ================================================
[2026-10-25 14:34:52,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:34:52
[2026-10-25 14:34:53,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:34:53,569.569 INFO    ] Initializing speech engine...
[2026-10-25 14:34:53,591.591 INFO    ] 2026-10-25 14:34:53
[2026-10-25 14:34:53,841.841 INFO    ] 2026-10-25 14:34:53
[2026-10-25 14:34:53,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:34:54,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:34:54,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:34:54,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:34:54,339.339 INFO    ] time= 25/10/2026 14:34:54
[2026-10-25 14:34:54,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:34:54,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:34:54,527.527 INFO    ] No existing commands found in stream
[2026-10-25 14:34:59,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:34:59,560.560 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 14:35:02,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:35:02,346.346 INFO    ] Checking for system updates...
[2026-10-25 14:35:02,522.522 INFO    ] 200
[2026-10-25 14:35:02,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:02,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:35:02,656.656 INFO    ] No update needed
[2026-10-25 14:35:02,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 14:35:02,709.709 INFO    ] 200
[2026-10-25 14:35:02,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:02,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:35:02,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:35:02,812.812 INFO    ] No camera update needed
[2026-10-25 14:35:02,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:35:02,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:35:02,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:35:02,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:35:04,874.874 INFO    ] ================================================
[2026-10-25 14:35:04,889.889 INFO    ] Launching Daemon at Sun Oct 25 14:35:04 IST 2026
[2026-10-25 14:35:04,899.899 INFO    ] ================================================
[2026-10-25 14:35:05,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:35:05
[2026-10-25 14:35:06,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:35:06,313.313 INFO    ] Initializing speech engine...
[2026-10-25 14:35:06,321.321 INFO    ] 2026-10-25 14:35:06
[2026-10-25 14:35:06,619.619 INFO    ] 2026-10-25 14:35:06
[2026-10-25 14:35:06,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:35:06,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:35:06,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:35:06,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:35:06,962.962 INFO    ] time= 25/10/2026 14:35:06
[2026-10-25 14:35:06,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:35:06,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:35:07,095.095 INFO    ] No existing commands found in stream
[2026-10-25 14:35:12,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:35:12,110.110 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 14:35:15,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:35:15,962.962 INFO    ] Checking for system updates...
[2026-10-25 14:35:16,006.006 INFO    ] 200
[2026-10-25 14:35:16,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:16,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:16,073.073 INFO    ] No update needed
[2026-10-25 14:35:16,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 14:35:16,121.121 INFO    ] 200
[2026-10-25 14:35:16,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:16,175.175 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:35:16,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:16,229.229 INFO    ] No camera update needed
[2026-10-25 14:35:16,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:35:16,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:35:16,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:35:16,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:35:18,288.288 INFO    ] ================================================
[2026-10-25 14:35:18,304.304 INFO    ] Launching Daemon at Sun Oct 25 14:35:18 IST 2026
[2026-10-25 14:35:18,314.314 INFO    ] ================================================
[2026-10-25 14:35:18,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:35:18
[2026-10-25 14:35:19,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:35:19,747.747 INFO    ] Initializing speech engine...
[2026-10-25 14:35:19,758.758 INFO    ] 2026-10-25 14:35:19
[2026-10-25 14:35:20,017.017 INFO    ] 2026-10-25 14:35:20
[2026-10-25 14:35:20,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:35:20,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:35:20,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:35:20,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:35:20,484.484 INFO    ] time= 25/10/2026 14:35:20
[2026-10-25 14:35:20,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:35:20,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:35:20,651.651 INFO    ] No existing commands found in stream
[2026-10-25 14:35:25,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:35:25,686.686 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 14:35:29,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:35:29,246.246 INFO    ] Checking for system updates...
[2026-10-25 14:35:29,293.293 INFO    ] 200
[2026-10-25 14:35:29,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:29,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:29,359.359 INFO    ] No update needed
[2026-10-25 14:35:29,362.362 INFO    ] Checking for camera pi updates...
[2026-10-25 14:35:29,396.396 INFO    ] 200
[2026-10-25 14:35:29,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:29,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:35:29,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:29,498.498 INFO    ] No camera update needed
[2026-10-25 14:35:29,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:35:29,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:35:29,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:35:29,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:35:31,554.554 INFO    ] ================================================
[2026-10-25 14:35:31,570.570 INFO    ] Launching Daemon at Sun Oct 25 14:35:31 IST 2026
[2026-10-25 14:35:31,582.582 INFO    ] ================================================
[2026-10-25 14:35:32,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:35:32
[2026-10-25 14:35:33,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:35:33,373.373 INFO    ] Initializing speech engine...
[2026-10-25 14:35:33,386.386 INFO    ] 2026-10-25 14:35:33
[2026-10-25 14:35:33,675.675 INFO    ] 2026-10-25 14:35:33
[2026-10-25 14:35:33,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:35:33,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:35:34,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:35:34,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:35:34,210.210 INFO    ] time= 25/10/2026 14:35:34
[2026-10-25 14:35:34,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:35:34,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:35:34,341.341 INFO    ] No existing commands found in stream
[2026-10-25 14:35:39,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:35:39,375.375 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 14:35:44,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:35:44,319.319 INFO    ] Checking for system updates...
[2026-10-25 14:35:44,368.368 INFO    ] 200
[2026-10-25 14:35:44,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:44,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:44,438.438 INFO    ] No update needed
[2026-10-25 14:35:44,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 14:35:44,481.481 INFO    ] 200
[2026-10-25 14:35:44,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:44,532.532 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:35:44,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:35:44,588.588 INFO    ] No camera update needed
[2026-10-25 14:35:44,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:35:44,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:35:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:35:44,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:35:46,647.647 INFO    ] ================================================
[2026-10-25 14:35:46,663.663 INFO    ] Launching Daemon at Sun Oct 25 14:35:46 IST 2026
[2026-10-25 14:35:46,674.674 INFO    ] ================================================
[2026-10-25 14:35:47,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:35:47
[2026-10-25 14:35:48,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:35:48,358.358 INFO    ] Initializing speech engine...
[2026-10-25 14:35:48,364.364 INFO    ] 2026-10-25 14:35:48
[2026-10-25 14:35:48,682.682 INFO    ] 2026-10-25 14:35:48
[2026-10-25 14:35:48,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:35:48,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:35:48,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:35:49,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:35:49,205.205 INFO    ] time= 25/10/2026 14:35:49
[2026-10-25 14:35:49,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:35:49,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:35:49,344.344 INFO    ] No existing commands found in stream
[2026-10-25 14:35:54,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:35:54,379.379 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 14:35:56,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:35:56,666.666 INFO    ] Checking for system updates...
[2026-10-25 14:35:56,710.710 INFO    ] 200
[2026-10-25 14:35:56,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:56,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:35:56,773.773 INFO    ] No update needed
[2026-10-25 14:35:56,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 14:35:56,810.810 INFO    ] 200
[2026-10-25 14:35:56,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:35:56,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:35:57,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:35:57,007.007 INFO    ] No camera update needed
[2026-10-25 14:35:57,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:35:57,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:35:57,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:35:57,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:35:59,061.061 INFO    ] ================================================
[2026-10-25 14:35:59,076.076 INFO    ] Launching Daemon at Sun Oct 25 14:35:59 IST 2026
[2026-10-25 14:35:59,088.088 INFO    ] ================================================
[2026-10-25 14:35:59,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:35:59
[2026-10-25 14:36:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:36:00,752.752 INFO    ] Initializing speech engine...
[2026-10-25 14:36:00,760.760 INFO    ] 2026-10-25 14:36:00
[2026-10-25 14:36:01,035.035 INFO    ] 2026-10-25 14:36:01
[2026-10-25 14:36:01,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:36:01,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:36:01,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:36:01,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:36:01,503.503 INFO    ] time= 25/10/2026 14:36:01
[2026-10-25 14:36:01,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:36:01,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:36:01,585.585 INFO    ] No existing commands found in stream
[2026-10-25 14:36:06,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:36:06,600.600 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 14:36:09,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:36:09,638.638 INFO    ] Checking for system updates...
[2026-10-25 14:36:09,679.679 INFO    ] 200
[2026-10-25 14:36:09,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:09,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:36:09,741.741 INFO    ] No update needed
[2026-10-25 14:36:09,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 14:36:09,779.779 INFO    ] 200
[2026-10-25 14:36:09,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:09,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:36:09,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:36:09,882.882 INFO    ] No camera update needed
[2026-10-25 14:36:09,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:36:09,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:36:09,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:36:09,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:36:11,941.941 INFO    ] ================================================
[2026-10-25 14:36:11,956.956 INFO    ] Launching Daemon at Sun Oct 25 14:36:11 IST 2026
[2026-10-25 14:36:11,967.967 INFO    ] ================================================
[2026-10-25 14:36:12,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:36:12
[2026-10-25 14:36:13,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:36:13,380.380 INFO    ] Initializing speech engine...
[2026-10-25 14:36:13,393.393 INFO    ] 2026-10-25 14:36:13
[2026-10-25 14:36:13,676.676 INFO    ] 2026-10-25 14:36:13
[2026-10-25 14:36:13,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:36:14,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:36:14,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:36:15,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:36:15,221.221 INFO    ] time= 25/10/2026 14:36:15
[2026-10-25 14:36:15,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:36:15,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:36:15,291.291 INFO    ] No existing commands found in stream
[2026-10-25 14:36:20,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:36:20,305.305 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 14:36:22,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:36:22,424.424 INFO    ] Checking for system updates...
[2026-10-25 14:36:22,461.461 INFO    ] 200
[2026-10-25 14:36:22,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:22,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:22,530.530 INFO    ] No update needed
[2026-10-25 14:36:22,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 14:36:22,567.567 INFO    ] 200
[2026-10-25 14:36:22,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:22,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:36:22,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:22,663.663 INFO    ] No camera update needed
[2026-10-25 14:36:22,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:36:22,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:36:22,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:36:22,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:36:24,719.719 INFO    ] ================================================
[2026-10-25 14:36:24,734.734 INFO    ] Launching Daemon at Sun Oct 25 14:36:24 IST 2026
[2026-10-25 14:36:24,745.745 INFO    ] ================================================
[2026-10-25 14:36:25,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:36:25
[2026-10-25 14:36:25,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:36:26,209.209 INFO    ] Initializing speech engine...
[2026-10-25 14:36:26,217.217 INFO    ] 2026-10-25 14:36:26
[2026-10-25 14:36:26,490.490 INFO    ] 2026-10-25 14:36:26
[2026-10-25 14:36:26,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:36:26,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:36:26,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:36:26,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:36:26,960.960 INFO    ] time= 25/10/2026 14:36:26
[2026-10-25 14:36:27,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:36:27,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:36:27,150.150 INFO    ] No existing commands found in stream
[2026-10-25 14:36:32,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:36:32,184.184 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 14:36:33,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:36:33,391.391 INFO    ] Checking for system updates...
[2026-10-25 14:36:33,458.458 INFO    ] 200
[2026-10-25 14:36:33,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:33,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:33,525.525 INFO    ] No update needed
[2026-10-25 14:36:33,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 14:36:33,563.563 INFO    ] 200
[2026-10-25 14:36:33,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:33,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:36:33,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:33,663.663 INFO    ] No camera update needed
[2026-10-25 14:36:33,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:36:33,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:36:33,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:36:33,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:36:35,720.720 INFO    ] ================================================
[2026-10-25 14:36:35,736.736 INFO    ] Launching Daemon at Sun Oct 25 14:36:35 IST 2026
[2026-10-25 14:36:35,747.747 INFO    ] ================================================
[2026-10-25 14:36:36,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:36:36
[2026-10-25 14:36:36,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:36:37,203.203 INFO    ] Initializing speech engine...
[2026-10-25 14:36:37,213.213 INFO    ] 2026-10-25 14:36:37
[2026-10-25 14:36:37,470.470 INFO    ] 2026-10-25 14:36:37
[2026-10-25 14:36:37,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:36:37,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:36:37,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:36:37,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:36:37,962.962 INFO    ] time= 25/10/2026 14:36:37
[2026-10-25 14:36:38,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:36:38,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:36:38,164.164 INFO    ] No existing commands found in stream
[2026-10-25 14:36:43,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:36:43,184.184 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 14:36:47,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:36:47,199.199 INFO    ] Checking for system updates...
[2026-10-25 14:36:47,237.237 INFO    ] 200
[2026-10-25 14:36:47,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:47,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:47,298.298 INFO    ] No update needed
[2026-10-25 14:36:47,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 14:36:47,335.335 INFO    ] 200
[2026-10-25 14:36:47,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:47,381.381 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:36:47,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:47,432.432 INFO    ] No camera update needed
[2026-10-25 14:36:47,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:36:47,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:36:47,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:36:47,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:36:49,488.488 INFO    ] ================================================
[2026-10-25 14:36:49,503.503 INFO    ] Launching Daemon at Sun Oct 25 14:36:49 IST 2026
[2026-10-25 14:36:49,514.514 INFO    ] ================================================
[2026-10-25 14:36:50,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:36:50
[2026-10-25 14:36:50,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:36:50,986.986 INFO    ] Initializing speech engine...
[2026-10-25 14:36:50,992.992 INFO    ] 2026-10-25 14:36:50
[2026-10-25 14:36:51,252.252 INFO    ] 2026-10-25 14:36:51
[2026-10-25 14:36:51,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:36:51,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:36:51,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:36:51,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:36:51,681.681 INFO    ] time= 25/10/2026 14:36:51
[2026-10-25 14:36:51,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:36:51,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:36:51,860.860 INFO    ] No existing commands found in stream
[2026-10-25 14:36:56,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:36:56,875.875 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 14:36:59,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:36:59,475.475 INFO    ] Checking for system updates...
[2026-10-25 14:36:59,516.516 INFO    ] 200
[2026-10-25 14:36:59,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:59,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:59,574.574 INFO    ] No update needed
[2026-10-25 14:36:59,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 14:36:59,610.610 INFO    ] 200
[2026-10-25 14:36:59,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:36:59,671.671 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:36:59,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:36:59,729.729 INFO    ] No camera update needed
[2026-10-25 14:36:59,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:36:59,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:36:59,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:36:59,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:37:01,793.793 INFO    ] ================================================
[2026-10-25 14:37:01,822.822 INFO    ] Launching Daemon at Sun Oct 25 14:37:01 IST 2026
[2026-10-25 14:37:01,835.835 INFO    ] ================================================
[2026-10-25 14:37:02,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:37:02
[2026-10-25 14:37:03,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:37:03,410.410 INFO    ] Initializing speech engine...
[2026-10-25 14:37:03,426.426 INFO    ] 2026-10-25 14:37:03
[2026-10-25 14:37:03,734.734 INFO    ] 2026-10-25 14:37:03
[2026-10-25 14:37:03,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:37:03,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:37:03,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:37:04,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:37:04,150.150 INFO    ] time= 25/10/2026 14:37:04
[2026-10-25 14:37:04,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:37:04,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:37:04,238.238 INFO    ] No existing commands found in stream
[2026-10-25 14:37:09,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:37:09,253.253 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 14:37:10,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:37:10,868.868 INFO    ] Checking for system updates...
[2026-10-25 14:37:10,904.904 INFO    ] 200
[2026-10-25 14:37:10,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:10,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:10,962.962 INFO    ] No update needed
[2026-10-25 14:37:10,964.964 INFO    ] Checking for camera pi updates...
[2026-10-25 14:37:11,002.002 INFO    ] 200
[2026-10-25 14:37:11,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:11,046.046 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:37:11,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:11,098.098 INFO    ] No camera update needed
[2026-10-25 14:37:11,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:37:11,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:37:11,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:37:11,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:37:13,154.154 INFO    ] ================================================
[2026-10-25 14:37:13,169.169 INFO    ] Launching Daemon at Sun Oct 25 14:37:13 IST 2026
[2026-10-25 14:37:13,179.179 INFO    ] ================================================
[2026-10-25 14:37:13,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:37:13
[2026-10-25 14:37:14,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:37:14,636.636 INFO    ] Initializing speech engine...
[2026-10-25 14:37:14,648.648 INFO    ] 2026-10-25 14:37:14
[2026-10-25 14:37:14,901.901 INFO    ] 2026-10-25 14:37:14
[2026-10-25 14:37:14,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:37:16,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:37:16,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:37:17,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:37:17,075.075 INFO    ] time= 25/10/2026 14:37:17
[2026-10-25 14:37:17,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:37:17,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:37:17,155.155 INFO    ] No existing commands found in stream
[2026-10-25 14:37:22,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:37:22,167.167 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 14:37:25,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:37:25,236.236 INFO    ] Checking for system updates...
[2026-10-25 14:37:25,277.277 INFO    ] 200
[2026-10-25 14:37:25,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:25,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:37:25,339.339 INFO    ] No update needed
[2026-10-25 14:37:25,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 14:37:25,377.377 INFO    ] 200
[2026-10-25 14:37:25,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:25,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:37:25,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:37:25,482.482 INFO    ] No camera update needed
[2026-10-25 14:37:25,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:37:25,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:37:25,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:37:25,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:37:27,542.542 INFO    ] ================================================
[2026-10-25 14:37:27,558.558 INFO    ] Launching Daemon at Sun Oct 25 14:37:27 IST 2026
[2026-10-25 14:37:27,569.569 INFO    ] ================================================
[2026-10-25 14:37:28,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:37:28
[2026-10-25 14:37:28,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:37:28,984.984 INFO    ] Initializing speech engine...
[2026-10-25 14:37:28,993.993 INFO    ] 2026-10-25 14:37:28
[2026-10-25 14:37:29,237.237 INFO    ] 2026-10-25 14:37:29
[2026-10-25 14:37:29,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:37:29,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:37:29,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:37:29,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:37:29,702.702 INFO    ] time= 25/10/2026 14:37:29
[2026-10-25 14:37:29,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:37:29,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:37:29,855.855 INFO    ] No existing commands found in stream
[2026-10-25 14:37:34,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:37:34,866.866 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 14:37:37,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:37:37,958.958 INFO    ] Checking for system updates...
[2026-10-25 14:37:37,994.994 INFO    ] 200
[2026-10-25 14:37:37,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:38,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:38,052.052 INFO    ] No update needed
[2026-10-25 14:37:38,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 14:37:38,089.089 INFO    ] 200
[2026-10-25 14:37:38,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:38,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:37:38,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:38,234.234 INFO    ] No camera update needed
[2026-10-25 14:37:38,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:37:38,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:37:38,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:37:38,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:37:40,289.289 INFO    ] ================================================
[2026-10-25 14:37:40,304.304 INFO    ] Launching Daemon at Sun Oct 25 14:37:40 IST 2026
[2026-10-25 14:37:40,314.314 INFO    ] ================================================
[2026-10-25 14:37:40,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:37:40
[2026-10-25 14:37:41,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:37:41,706.706 INFO    ] Initializing speech engine...
[2026-10-25 14:37:41,714.714 INFO    ] 2026-10-25 14:37:41
[2026-10-25 14:37:41,988.988 INFO    ] 2026-10-25 14:37:41
[2026-10-25 14:37:42,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:37:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:37:42,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:37:42,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:37:42,550.550 INFO    ] time= 25/10/2026 14:37:42
[2026-10-25 14:37:42,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:37:42,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:37:42,698.698 INFO    ] No existing commands found in stream
[2026-10-25 14:37:47,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:37:47,724.724 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 14:37:48,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:37:48,621.621 INFO    ] Checking for system updates...
[2026-10-25 14:37:48,657.657 INFO    ] 200
[2026-10-25 14:37:48,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:48,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:48,724.724 INFO    ] No update needed
[2026-10-25 14:37:48,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 14:37:48,766.766 INFO    ] 200
[2026-10-25 14:37:48,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:37:48,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:37:48,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:37:48,870.870 INFO    ] No camera update needed
[2026-10-25 14:37:48,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:37:48,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:37:48,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:37:48,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:37:50,930.930 INFO    ] ================================================
[2026-10-25 14:37:50,946.946 INFO    ] Launching Daemon at Sun Oct 25 14:37:50 IST 2026
[2026-10-25 14:37:50,957.957 INFO    ] ================================================
[2026-10-25 14:37:51,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:37:51
[2026-10-25 14:37:52,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:37:52,412.412 INFO    ] Initializing speech engine...
[2026-10-25 14:37:52,423.423 INFO    ] 2026-10-25 14:37:52
[2026-10-25 14:37:52,669.669 INFO    ] 2026-10-25 14:37:52
[2026-10-25 14:37:52,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:37:52,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:37:52,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:37:53,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:37:53,147.147 INFO    ] time= 25/10/2026 14:37:53
[2026-10-25 14:37:53,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:37:53,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:37:53,286.286 INFO    ] No existing commands found in stream
[2026-10-25 14:37:58,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:37:58,301.301 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 14:38:01,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:38:01,426.426 INFO    ] Checking for system updates...
[2026-10-25 14:38:01,463.463 INFO    ] 200
[2026-10-25 14:38:01,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:01,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:38:01,521.521 INFO    ] No update needed
[2026-10-25 14:38:01,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 14:38:01,557.557 INFO    ] 200
[2026-10-25 14:38:01,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:01,601.601 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:38:01,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:38:01,758.758 INFO    ] No camera update needed
[2026-10-25 14:38:01,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:38:01,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:38:01,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:38:01,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:38:03,826.826 INFO    ] ================================================
[2026-10-25 14:38:03,842.842 INFO    ] Launching Daemon at Sun Oct 25 14:38:03 IST 2026
[2026-10-25 14:38:03,853.853 INFO    ] ================================================
[2026-10-25 14:38:04,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:38:04
[2026-10-25 14:38:05,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:38:05,306.306 INFO    ] Initializing speech engine...
[2026-10-25 14:38:05,315.315 INFO    ] 2026-10-25 14:38:05
[2026-10-25 14:38:05,575.575 INFO    ] 2026-10-25 14:38:05
[2026-10-25 14:38:05,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:38:05,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:38:05,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:38:05,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:38:05,933.933 INFO    ] time= 25/10/2026 14:38:05
[2026-10-25 14:38:05,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:38:06,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:38:06,114.114 INFO    ] No existing commands found in stream
[2026-10-25 14:38:11,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:38:11,142.142 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 14:38:12,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:38:12,086.086 INFO    ] Checking for system updates...
[2026-10-25 14:38:12,122.122 INFO    ] 200
[2026-10-25 14:38:12,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:12,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:38:12,180.180 INFO    ] No update needed
[2026-10-25 14:38:12,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 14:38:12,217.217 INFO    ] 200
[2026-10-25 14:38:12,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:12,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:38:12,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:38:12,326.326 INFO    ] No camera update needed
[2026-10-25 14:38:12,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:38:12,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:38:12,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:38:12,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:38:14,384.384 INFO    ] ================================================
[2026-10-25 14:38:14,399.399 INFO    ] Launching Daemon at Sun Oct 25 14:38:14 IST 2026
[2026-10-25 14:38:14,411.411 INFO    ] ================================================
[2026-10-25 14:38:14,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:38:14
[2026-10-25 14:38:15,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:38:15,826.826 INFO    ] Initializing speech engine...
[2026-10-25 14:38:15,832.832 INFO    ] 2026-10-25 14:38:15
[2026-10-25 14:38:16,136.136 INFO    ] 2026-10-25 14:38:16
[2026-10-25 14:38:16,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:38:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:38:18,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:38:18,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:38:18,647.647 INFO    ] time= 25/10/2026 14:38:18
[2026-10-25 14:38:18,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:38:18,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:38:18,711.711 INFO    ] No existing commands found in stream
[2026-10-25 14:38:23,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:38:23,724.724 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 14:38:26,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:38:26,308.308 INFO    ] Checking for system updates...
[2026-10-25 14:38:26,348.348 INFO    ] 200
[2026-10-25 14:38:26,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:26,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:38:26,408.408 INFO    ] No update needed
[2026-10-25 14:38:26,410.410 INFO    ] Checking for camera pi updates...
[2026-10-25 14:38:26,447.447 INFO    ] 200
[2026-10-25 14:38:26,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:26,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:38:26,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:38:26,546.546 INFO    ] No camera update needed
[2026-10-25 14:38:26,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:38:26,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:38:26,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:38:26,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:38:28,602.602 INFO    ] ================================================
[2026-10-25 14:38:28,618.618 INFO    ] Launching Daemon at Sun Oct 25 14:38:28 IST 2026
[2026-10-25 14:38:28,629.629 INFO    ] ================================================
[2026-10-25 14:38:29,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:38:29
[2026-10-25 14:38:29,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:38:30,023.023 INFO    ] Initializing speech engine...
[2026-10-25 14:38:30,030.030 INFO    ] 2026-10-25 14:38:30
[2026-10-25 14:38:30,304.304 INFO    ] 2026-10-25 14:38:30
[2026-10-25 14:38:30,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:38:30,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:38:30,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:38:30,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:38:30,809.809 INFO    ] time= 25/10/2026 14:38:30
[2026-10-25 14:38:30,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:38:30,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:38:30,935.935 INFO    ] No existing commands found in stream
[2026-10-25 14:38:35,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:38:35,950.950 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 14:38:40,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:38:40,299.299 INFO    ] Checking for system updates...
[2026-10-25 14:38:40,345.345 INFO    ] 200
[2026-10-25 14:38:40,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 14:38:40,350.350 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 14:38:40,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 14:38:40,396.396 INFO    ] 200
[2026-10-25 14:38:40,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 14:38:40,401.401 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 14:38:40,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:38:40,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:38:40,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:38:40,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:38:42,458.458 INFO    ] ================================================
[2026-10-25 14:38:42,475.475 INFO    ] Launching Daemon at Sun Oct 25 14:38:42 IST 2026
[2026-10-25 14:38:42,486.486 INFO    ] ================================================
[2026-10-25 14:38:43,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:38:43
[2026-10-25 14:38:43,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:38:44,116.116 INFO    ] Initializing speech engine...
[2026-10-25 14:38:44,130.130 INFO    ] 2026-10-25 14:38:44
[2026-10-25 14:38:44,416.416 INFO    ] 2026-10-25 14:38:44
[2026-10-25 14:38:44,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:38:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:38:44,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:38:44,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:38:44,955.955 INFO    ] time= 25/10/2026 14:38:44
[2026-10-25 14:38:44,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:38:44,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:38:45,093.093 INFO    ] No existing commands found in stream
[2026-10-25 14:38:50,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:38:50,115.115 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 14:38:52,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:38:52,886.886 INFO    ] Checking for system updates...
[2026-10-25 14:38:52,923.923 INFO    ] 200
[2026-10-25 14:38:52,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:52,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:38:52,990.990 INFO    ] No update needed
[2026-10-25 14:38:52,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 14:38:53,027.027 INFO    ] 200
[2026-10-25 14:38:53,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:38:53,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:38:53,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:38:53,121.121 INFO    ] No camera update needed
[2026-10-25 14:38:53,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:38:53,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:38:53,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:38:53,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:38:55,179.179 INFO    ] ================================================
[2026-10-25 14:38:55,194.194 INFO    ] Launching Daemon at Sun Oct 25 14:38:55 IST 2026
[2026-10-25 14:38:55,205.205 INFO    ] ================================================
[2026-10-25 14:38:55,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:38:55
[2026-10-25 14:38:56,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:38:56,830.830 INFO    ] Initializing speech engine...
[2026-10-25 14:38:56,836.836 INFO    ] 2026-10-25 14:38:56
[2026-10-25 14:38:57,109.109 INFO    ] 2026-10-25 14:38:57
[2026-10-25 14:38:57,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:38:57,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:38:57,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:38:57,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:38:57,612.612 INFO    ] time= 25/10/2026 14:38:57
[2026-10-25 14:38:57,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:38:57,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:38:57,802.802 INFO    ] No existing commands found in stream
[2026-10-25 14:39:02,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:39:02,834.834 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 14:39:06,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:39:06,688.688 INFO    ] Checking for system updates...
[2026-10-25 14:39:06,726.726 INFO    ] 200
[2026-10-25 14:39:06,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:06,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:06,793.793 INFO    ] No update needed
[2026-10-25 14:39:06,796.796 INFO    ] Checking for camera pi updates...
[2026-10-25 14:39:06,833.833 INFO    ] 200
[2026-10-25 14:39:06,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:06,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:39:06,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:06,933.933 INFO    ] No camera update needed
[2026-10-25 14:39:06,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:39:06,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:39:06,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:39:06,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:39:08,988.988 INFO    ] ================================================
[2026-10-25 14:39:09,002.002 INFO    ] Launching Daemon at Sun Oct 25 14:39:08 IST 2026
[2026-10-25 14:39:09,014.014 INFO    ] ================================================
[2026-10-25 14:39:09,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:39:09
[2026-10-25 14:39:10,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:39:10,660.660 INFO    ] Initializing speech engine...
[2026-10-25 14:39:10,672.672 INFO    ] 2026-10-25 14:39:10
[2026-10-25 14:39:10,955.955 INFO    ] 2026-10-25 14:39:10
[2026-10-25 14:39:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:39:11,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:39:11,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:39:11,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:39:11,505.505 INFO    ] time= 25/10/2026 14:39:11
[2026-10-25 14:39:11,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:39:11,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:39:11,667.667 INFO    ] No existing commands found in stream
[2026-10-25 14:39:16,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:39:16,703.703 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 14:39:20,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:39:20,393.393 INFO    ] Checking for system updates...
[2026-10-25 14:39:20,429.429 INFO    ] 200
[2026-10-25 14:39:20,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:20,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:20,487.487 INFO    ] No update needed
[2026-10-25 14:39:20,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 14:39:20,527.527 INFO    ] 200
[2026-10-25 14:39:20,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:20,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:39:20,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:20,618.618 INFO    ] No camera update needed
[2026-10-25 14:39:20,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:39:20,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:39:20,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:39:20,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:39:22,672.672 INFO    ] ================================================
[2026-10-25 14:39:22,686.686 INFO    ] Launching Daemon at Sun Oct 25 14:39:22 IST 2026
[2026-10-25 14:39:22,697.697 INFO    ] ================================================
[2026-10-25 14:39:23,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:39:23
[2026-10-25 14:39:23,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:39:24,159.159 INFO    ] Initializing speech engine...
[2026-10-25 14:39:24,166.166 INFO    ] 2026-10-25 14:39:24
[2026-10-25 14:39:24,415.415 INFO    ] 2026-10-25 14:39:24
[2026-10-25 14:39:24,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:39:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:39:24,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:39:24,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:39:24,888.888 INFO    ] time= 25/10/2026 14:39:24
[2026-10-25 14:39:24,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:39:24,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:39:25,102.102 INFO    ] No existing commands found in stream
[2026-10-25 14:39:30,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:39:30,136.136 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 14:39:31,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:39:31,989.989 INFO    ] Checking for system updates...
[2026-10-25 14:39:32,032.032 INFO    ] 200
[2026-10-25 14:39:32,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:32,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:39:32,097.097 INFO    ] No update needed
[2026-10-25 14:39:32,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 14:39:32,139.139 INFO    ] 200
[2026-10-25 14:39:32,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:32,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:39:32,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:39:32,234.234 INFO    ] No camera update needed
[2026-10-25 14:39:32,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:39:32,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:39:32,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:39:32,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:39:34,293.293 INFO    ] ================================================
[2026-10-25 14:39:34,308.308 INFO    ] Launching Daemon at Sun Oct 25 14:39:34 IST 2026
[2026-10-25 14:39:34,318.318 INFO    ] ================================================
[2026-10-25 14:39:34,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:39:34
[2026-10-25 14:39:35,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:39:35,775.775 INFO    ] Initializing speech engine...
[2026-10-25 14:39:35,783.783 INFO    ] 2026-10-25 14:39:35
[2026-10-25 14:39:36,045.045 INFO    ] 2026-10-25 14:39:36
[2026-10-25 14:39:36,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:39:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:39:36,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:39:36,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:39:36,528.528 INFO    ] time= 25/10/2026 14:39:36
[2026-10-25 14:39:36,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:39:36,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:39:36,731.731 INFO    ] No existing commands found in stream
[2026-10-25 14:39:41,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:39:41,755.755 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 14:39:44,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:39:44,317.317 INFO    ] Checking for system updates...
[2026-10-25 14:39:44,357.357 INFO    ] 200
[2026-10-25 14:39:44,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:44,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:44,416.416 INFO    ] No update needed
[2026-10-25 14:39:44,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 14:39:44,458.458 INFO    ] 200
[2026-10-25 14:39:44,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:44,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:39:44,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:39:44,566.566 INFO    ] No camera update needed
[2026-10-25 14:39:44,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:39:44,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:39:44,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:39:44,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:39:46,622.622 INFO    ] ================================================
[2026-10-25 14:39:46,637.637 INFO    ] Launching Daemon at Sun Oct 25 14:39:46 IST 2026
[2026-10-25 14:39:46,648.648 INFO    ] ================================================
[2026-10-25 14:39:47,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:39:47
[2026-10-25 14:39:47,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:39:48,100.100 INFO    ] Initializing speech engine...
[2026-10-25 14:39:48,109.109 INFO    ] 2026-10-25 14:39:48
[2026-10-25 14:39:48,356.356 INFO    ] 2026-10-25 14:39:48
[2026-10-25 14:39:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:39:51,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:39:51,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:39:51,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:39:51,553.553 INFO    ] time= 25/10/2026 14:39:51
[2026-10-25 14:39:51,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:39:51,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:39:51,619.619 INFO    ] No existing commands found in stream
[2026-10-25 14:39:56,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:39:56,631.631 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 14:39:58,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:39:58,669.669 INFO    ] Checking for system updates...
[2026-10-25 14:39:58,710.710 INFO    ] 200
[2026-10-25 14:39:58,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:58,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:39:58,768.768 INFO    ] No update needed
[2026-10-25 14:39:58,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 14:39:58,804.804 INFO    ] 200
[2026-10-25 14:39:58,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:39:58,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:39:58,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:39:58,905.905 INFO    ] No camera update needed
[2026-10-25 14:39:58,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:39:58,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:39:58,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:39:58,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:40:00,964.964 INFO    ] ================================================
[2026-10-25 14:40:00,979.979 INFO    ] Launching Daemon at Sun Oct 25 14:40:00 IST 2026
[2026-10-25 14:40:00,991.991 INFO    ] ================================================
[2026-10-25 14:40:01,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:40:01
[2026-10-25 14:40:02,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:40:03,174.174 INFO    ] Initializing speech engine...
[2026-10-25 14:40:03,178.178 INFO    ] 2026-10-25 14:40:03
[2026-10-25 14:40:03,488.488 INFO    ] 2026-10-25 14:40:03
[2026-10-25 14:40:03,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:40:03,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:40:03,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:40:03,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:40:03,813.813 INFO    ] time= 25/10/2026 14:40:03
[2026-10-25 14:40:03,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:40:03,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:40:03,915.915 INFO    ] No existing commands found in stream
[2026-10-25 14:40:08,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:40:08,927.927 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 14:40:10,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:40:10,508.508 INFO    ] Checking for system updates...
[2026-10-25 14:40:10,547.547 INFO    ] 200
[2026-10-25 14:40:10,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:10,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:40:10,604.604 INFO    ] No update needed
[2026-10-25 14:40:10,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 14:40:10,644.644 INFO    ] 200
[2026-10-25 14:40:10,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:10,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:40:10,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:40:10,745.745 INFO    ] No camera update needed
[2026-10-25 14:40:10,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:40:10,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:40:10,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:40:10,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:40:12,800.800 INFO    ] ================================================
[2026-10-25 14:40:12,815.815 INFO    ] Launching Daemon at Sun Oct 25 14:40:12 IST 2026
[2026-10-25 14:40:12,826.826 INFO    ] ================================================
[2026-10-25 14:40:13,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:40:13
[2026-10-25 14:40:14,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:40:14,425.425 INFO    ] Initializing speech engine...
[2026-10-25 14:40:14,437.437 INFO    ] 2026-10-25 14:40:14
[2026-10-25 14:40:14,744.744 INFO    ] 2026-10-25 14:40:14
[2026-10-25 14:40:14,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:40:15,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:40:15,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:40:15,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:40:15,234.234 INFO    ] time= 25/10/2026 14:40:15
[2026-10-25 14:40:15,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:40:15,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:40:15,383.383 INFO    ] No existing commands found in stream
[2026-10-25 14:40:20,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:40:20,412.412 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 14:40:22,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:40:22,538.538 INFO    ] Checking for system updates...
[2026-10-25 14:40:22,580.580 INFO    ] 200
[2026-10-25 14:40:22,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:22,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:40:22,650.650 INFO    ] No update needed
[2026-10-25 14:40:22,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 14:40:22,692.692 INFO    ] 200
[2026-10-25 14:40:22,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:22,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:40:22,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:40:22,793.793 INFO    ] No camera update needed
[2026-10-25 14:40:22,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:40:22,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:40:22,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:40:22,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:40:24,850.850 INFO    ] ================================================
[2026-10-25 14:40:24,865.865 INFO    ] Launching Daemon at Sun Oct 25 14:40:24 IST 2026
[2026-10-25 14:40:24,876.876 INFO    ] ================================================
[2026-10-25 14:40:25,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:40:25
[2026-10-25 14:40:26,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:40:26,336.336 INFO    ] Initializing speech engine...
[2026-10-25 14:40:26,343.343 INFO    ] 2026-10-25 14:40:26
[2026-10-25 14:40:26,601.601 INFO    ] 2026-10-25 14:40:26
[2026-10-25 14:40:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:40:26,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:40:26,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:40:26,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:40:26,980.980 INFO    ] time= 25/10/2026 14:40:26
[2026-10-25 14:40:26,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:40:27,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:40:27,103.103 INFO    ] No existing commands found in stream
[2026-10-25 14:40:32,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:40:32,117.117 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 14:40:33,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:40:33,888.888 INFO    ] Checking for system updates...
[2026-10-25 14:40:33,929.929 INFO    ] 200
[2026-10-25 14:40:33,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:33,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:40:33,987.987 INFO    ] No update needed
[2026-10-25 14:40:33,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 14:40:34,023.023 INFO    ] 200
[2026-10-25 14:40:34,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:34,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:40:34,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:40:34,123.123 INFO    ] No camera update needed
[2026-10-25 14:40:34,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:40:34,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:40:34,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:40:34,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:40:36,179.179 INFO    ] ================================================
[2026-10-25 14:40:36,194.194 INFO    ] Launching Daemon at Sun Oct 25 14:40:36 IST 2026
[2026-10-25 14:40:36,204.204 INFO    ] ================================================
[2026-10-25 14:40:36,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:40:36
[2026-10-25 14:40:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:40:37,814.814 INFO    ] Initializing speech engine...
[2026-10-25 14:40:37,822.822 INFO    ] 2026-10-25 14:40:37
[2026-10-25 14:40:38,108.108 INFO    ] 2026-10-25 14:40:38
[2026-10-25 14:40:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:40:38,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:40:38,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:40:38,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:40:38,577.577 INFO    ] time= 25/10/2026 14:40:38
[2026-10-25 14:40:38,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:40:38,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:40:38,724.724 INFO    ] No existing commands found in stream
[2026-10-25 14:40:43,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:40:43,740.740 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 14:40:47,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:40:47,453.453 INFO    ] Checking for system updates...
[2026-10-25 14:40:47,490.490 INFO    ] 200
[2026-10-25 14:40:47,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:47,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:40:47,556.556 INFO    ] No update needed
[2026-10-25 14:40:47,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 14:40:47,593.593 INFO    ] 200
[2026-10-25 14:40:47,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:40:47,643.643 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:40:47,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:40:47,699.699 INFO    ] No camera update needed
[2026-10-25 14:40:47,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:40:47,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:40:47,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:40:47,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:40:49,756.756 INFO    ] ================================================
[2026-10-25 14:40:49,771.771 INFO    ] Launching Daemon at Sun Oct 25 14:40:49 IST 2026
[2026-10-25 14:40:49,782.782 INFO    ] ================================================
[2026-10-25 14:40:50,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:40:50
[2026-10-25 14:40:50,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:40:51,231.231 INFO    ] Initializing speech engine...
[2026-10-25 14:40:51,242.242 INFO    ] 2026-10-25 14:40:51
[2026-10-25 14:40:51,502.502 INFO    ] 2026-10-25 14:40:51
[2026-10-25 14:40:51,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:40:52,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:40:52,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:40:52,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:40:52,995.995 INFO    ] time= 25/10/2026 14:40:52
[2026-10-25 14:40:53,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:40:53,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:40:53,120.120 INFO    ] No existing commands found in stream
[2026-10-25 14:40:58,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:40:58,153.153 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 14:41:00,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:41:00,761.761 INFO    ] Checking for system updates...
[2026-10-25 14:41:00,800.800 INFO    ] 200
[2026-10-25 14:41:00,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:00,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:00,864.864 INFO    ] No update needed
[2026-10-25 14:41:00,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 14:41:00,901.901 INFO    ] 200
[2026-10-25 14:41:00,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:00,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:41:01,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:01,008.008 INFO    ] No camera update needed
[2026-10-25 14:41:01,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:41:01,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:41:01,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:41:01,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:41:03,068.068 INFO    ] ================================================
[2026-10-25 14:41:03,085.085 INFO    ] Launching Daemon at Sun Oct 25 14:41:03 IST 2026
[2026-10-25 14:41:03,097.097 INFO    ] ================================================
[2026-10-25 14:41:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:41:03
[2026-10-25 14:41:04,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:41:04,556.556 INFO    ] Initializing speech engine...
[2026-10-25 14:41:04,562.562 INFO    ] 2026-10-25 14:41:04
[2026-10-25 14:41:04,856.856 INFO    ] 2026-10-25 14:41:04
[2026-10-25 14:41:04,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:41:05,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:41:05,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:41:05,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:41:05,328.328 INFO    ] time= 25/10/2026 14:41:05
[2026-10-25 14:41:05,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:41:05,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:41:05,497.497 INFO    ] No existing commands found in stream
[2026-10-25 14:41:10,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:41:10,512.512 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 14:41:14,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:41:14,339.339 INFO    ] Checking for system updates...
[2026-10-25 14:41:14,379.379 INFO    ] 200
[2026-10-25 14:41:14,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:14,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:41:14,446.446 INFO    ] No update needed
[2026-10-25 14:41:14,448.448 INFO    ] Checking for camera pi updates...
[2026-10-25 14:41:14,482.482 INFO    ] 200
[2026-10-25 14:41:14,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:14,526.526 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:41:14,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:41:14,575.575 INFO    ] No camera update needed
[2026-10-25 14:41:14,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:41:14,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:41:14,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:41:14,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:41:16,629.629 INFO    ] ================================================
[2026-10-25 14:41:16,647.647 INFO    ] Launching Daemon at Sun Oct 25 14:41:16 IST 2026
[2026-10-25 14:41:16,657.657 INFO    ] ================================================
[2026-10-25 14:41:17,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:41:17
[2026-10-25 14:41:17,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:41:18,245.245 INFO    ] Initializing speech engine...
[2026-10-25 14:41:18,259.259 INFO    ] 2026-10-25 14:41:18
[2026-10-25 14:41:18,545.545 INFO    ] 2026-10-25 14:41:18
[2026-10-25 14:41:18,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:41:18,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:41:18,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:41:19,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:41:19,079.079 INFO    ] time= 25/10/2026 14:41:19
[2026-10-25 14:41:19,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:41:19,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:41:19,226.226 INFO    ] No existing commands found in stream
[2026-10-25 14:41:24,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:41:24,264.264 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 14:41:26,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:41:26,308.308 INFO    ] Checking for system updates...
[2026-10-25 14:41:26,348.348 INFO    ] 200
[2026-10-25 14:41:26,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:26,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:41:26,412.412 INFO    ] No update needed
[2026-10-25 14:41:26,415.415 INFO    ] Checking for camera pi updates...
[2026-10-25 14:41:26,452.452 INFO    ] 200
[2026-10-25 14:41:26,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:26,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:41:26,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:41:26,548.548 INFO    ] No camera update needed
[2026-10-25 14:41:26,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:41:26,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:41:26,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:41:26,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:41:28,604.604 INFO    ] ================================================
[2026-10-25 14:41:28,619.619 INFO    ] Launching Daemon at Sun Oct 25 14:41:28 IST 2026
[2026-10-25 14:41:28,630.630 INFO    ] ================================================
[2026-10-25 14:41:29,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:41:29
[2026-10-25 14:41:29,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:41:30,035.035 INFO    ] Initializing speech engine...
[2026-10-25 14:41:30,050.050 INFO    ] 2026-10-25 14:41:30
[2026-10-25 14:41:30,315.315 INFO    ] 2026-10-25 14:41:30
[2026-10-25 14:41:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:41:30,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:41:30,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:41:30,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:41:30,685.685 INFO    ] time= 25/10/2026 14:41:30
[2026-10-25 14:41:30,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:41:30,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:41:30,768.768 INFO    ] No existing commands found in stream
[2026-10-25 14:41:35,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:41:35,801.801 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 14:41:39,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:41:39,902.902 INFO    ] Checking for system updates...
[2026-10-25 14:41:39,943.943 INFO    ] 200
[2026-10-25 14:41:39,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:39,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:40,001.001 INFO    ] No update needed
[2026-10-25 14:41:40,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 14:41:40,037.037 INFO    ] 200
[2026-10-25 14:41:40,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:40,085.085 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:41:40,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:40,134.134 INFO    ] No camera update needed
[2026-10-25 14:41:40,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:41:40,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:41:40,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:41:40,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:41:42,192.192 INFO    ] ================================================
[2026-10-25 14:41:42,208.208 INFO    ] Launching Daemon at Sun Oct 25 14:41:42 IST 2026
[2026-10-25 14:41:42,219.219 INFO    ] ================================================
[2026-10-25 14:41:42,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:41:42
[2026-10-25 14:41:43,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:41:43,678.678 INFO    ] Initializing speech engine...
[2026-10-25 14:41:43,687.687 INFO    ] 2026-10-25 14:41:43
[2026-10-25 14:41:43,937.937 INFO    ] 2026-10-25 14:41:43
[2026-10-25 14:41:43,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:41:44,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:41:44,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:41:44,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:41:44,412.412 INFO    ] time= 25/10/2026 14:41:44
[2026-10-25 14:41:44,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:41:44,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:41:44,555.555 INFO    ] No existing commands found in stream
[2026-10-25 14:41:49,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:41:49,569.569 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 14:41:55,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:41:55,156.156 INFO    ] Checking for system updates...
[2026-10-25 14:41:55,192.192 INFO    ] 200
[2026-10-25 14:41:55,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:55,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:55,250.250 INFO    ] No update needed
[2026-10-25 14:41:55,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 14:41:55,286.286 INFO    ] 200
[2026-10-25 14:41:55,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:41:55,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:41:55,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:41:55,378.378 INFO    ] No camera update needed
[2026-10-25 14:41:55,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:41:55,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:41:55,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:41:55,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:41:57,433.433 INFO    ] ================================================
[2026-10-25 14:41:57,449.449 INFO    ] Launching Daemon at Sun Oct 25 14:41:57 IST 2026
[2026-10-25 14:41:57,460.460 INFO    ] ================================================
[2026-10-25 14:41:58,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:41:58
[2026-10-25 14:41:58,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:41:58,894.894 INFO    ] Initializing speech engine...
[2026-10-25 14:41:58,904.904 INFO    ] 2026-10-25 14:41:58
[2026-10-25 14:41:59,149.149 INFO    ] 2026-10-25 14:41:59
[2026-10-25 14:41:59,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:41:59,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:41:59,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:41:59,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:41:59,582.582 INFO    ] time= 25/10/2026 14:41:59
[2026-10-25 14:41:59,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:41:59,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:41:59,763.763 INFO    ] No existing commands found in stream
[2026-10-25 14:42:04,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:42:04,777.777 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 14:42:06,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:42:06,187.187 INFO    ] Checking for system updates...
[2026-10-25 14:42:06,228.228 INFO    ] 200
[2026-10-25 14:42:06,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:06,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:06,293.293 INFO    ] No update needed
[2026-10-25 14:42:06,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 14:42:06,335.335 INFO    ] 200
[2026-10-25 14:42:06,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:06,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:42:06,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:06,545.545 INFO    ] No camera update needed
[2026-10-25 14:42:06,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:42:06,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:42:06,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:42:06,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:42:08,602.602 INFO    ] ================================================
[2026-10-25 14:42:08,617.617 INFO    ] Launching Daemon at Sun Oct 25 14:42:08 IST 2026
[2026-10-25 14:42:08,628.628 INFO    ] ================================================
[2026-10-25 14:42:09,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:42:09
[2026-10-25 14:42:09,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:42:10,083.083 INFO    ] Initializing speech engine...
[2026-10-25 14:42:10,089.089 INFO    ] 2026-10-25 14:42:10
[2026-10-25 14:42:10,350.350 INFO    ] 2026-10-25 14:42:10
[2026-10-25 14:42:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:42:10,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:42:10,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:42:10,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:42:10,847.847 INFO    ] time= 25/10/2026 14:42:10
[2026-10-25 14:42:10,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:42:10,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:42:11,013.013 INFO    ] No existing commands found in stream
[2026-10-25 14:42:16,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:42:16,044.044 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 14:42:16,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:42:16,978.978 INFO    ] Checking for system updates...
[2026-10-25 14:42:17,020.020 INFO    ] 200
[2026-10-25 14:42:17,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:17,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:17,087.087 INFO    ] No update needed
[2026-10-25 14:42:17,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 14:42:17,128.128 INFO    ] 200
[2026-10-25 14:42:17,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:17,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:42:17,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:17,228.228 INFO    ] No camera update needed
[2026-10-25 14:42:17,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:42:17,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:42:17,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:42:17,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:42:19,286.286 INFO    ] ================================================
[2026-10-25 14:42:19,302.302 INFO    ] Launching Daemon at Sun Oct 25 14:42:19 IST 2026
[2026-10-25 14:42:19,314.314 INFO    ] ================================================
[2026-10-25 14:42:19,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:42:19
[2026-10-25 14:42:20,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:42:20,935.935 INFO    ] Initializing speech engine...
[2026-10-25 14:42:20,944.944 INFO    ] 2026-10-25 14:42:20
[2026-10-25 14:42:21,235.235 INFO    ] 2026-10-25 14:42:21
[2026-10-25 14:42:21,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:42:21,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:42:21,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:42:21,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:42:21,709.709 INFO    ] time= 25/10/2026 14:42:21
[2026-10-25 14:42:21,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:42:21,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:42:21,858.858 INFO    ] No existing commands found in stream
[2026-10-25 14:42:26,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:42:26,873.873 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 14:42:30,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:42:30,819.819 INFO    ] Checking for system updates...
[2026-10-25 14:42:30,856.856 INFO    ] 200
[2026-10-25 14:42:30,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:30,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:30,922.922 INFO    ] No update needed
[2026-10-25 14:42:30,925.925 INFO    ] Checking for camera pi updates...
[2026-10-25 14:42:30,964.964 INFO    ] 200
[2026-10-25 14:42:30,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:31,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:42:31,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:31,079.079 INFO    ] No camera update needed
[2026-10-25 14:42:31,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:42:31,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:42:31,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:42:31,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:42:33,136.136 INFO    ] ================================================
[2026-10-25 14:42:33,152.152 INFO    ] Launching Daemon at Sun Oct 25 14:42:33 IST 2026
[2026-10-25 14:42:33,163.163 INFO    ] ================================================
[2026-10-25 14:42:33,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:42:33
[2026-10-25 14:42:34,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:42:34,617.617 INFO    ] Initializing speech engine...
[2026-10-25 14:42:34,632.632 INFO    ] 2026-10-25 14:42:34
[2026-10-25 14:42:34,888.888 INFO    ] 2026-10-25 14:42:34
[2026-10-25 14:42:34,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:42:35,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:42:35,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:42:36,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:42:36,029.029 INFO    ] time= 25/10/2026 14:42:36
[2026-10-25 14:42:36,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:42:36,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:42:36,139.139 INFO    ] No existing commands found in stream
[2026-10-25 14:42:41,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:42:41,153.153 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 14:42:42,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:42:42,005.005 INFO    ] Checking for system updates...
[2026-10-25 14:42:42,042.042 INFO    ] 200
[2026-10-25 14:42:42,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:42,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:42,112.112 INFO    ] No update needed
[2026-10-25 14:42:42,114.114 INFO    ] Checking for camera pi updates...
[2026-10-25 14:42:42,148.148 INFO    ] 200
[2026-10-25 14:42:42,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:42,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:42:42,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:42,254.254 INFO    ] No camera update needed
[2026-10-25 14:42:42,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:42:42,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:42:42,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:42:42,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:42:44,312.312 INFO    ] ================================================
[2026-10-25 14:42:44,329.329 INFO    ] Launching Daemon at Sun Oct 25 14:42:44 IST 2026
[2026-10-25 14:42:44,342.342 INFO    ] ================================================
[2026-10-25 14:42:44,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:42:44
[2026-10-25 14:42:45,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:42:45,816.816 INFO    ] Initializing speech engine...
[2026-10-25 14:42:45,823.823 INFO    ] 2026-10-25 14:42:45
[2026-10-25 14:42:46,081.081 INFO    ] 2026-10-25 14:42:46
[2026-10-25 14:42:46,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:42:46,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:42:46,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:42:46,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:42:46,558.558 INFO    ] time= 25/10/2026 14:42:46
[2026-10-25 14:42:46,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:42:46,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:42:46,751.751 INFO    ] No existing commands found in stream
[2026-10-25 14:42:51,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:42:51,781.781 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 14:42:53,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:42:53,536.536 INFO    ] Checking for system updates...
[2026-10-25 14:42:53,573.573 INFO    ] 200
[2026-10-25 14:42:53,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:53,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:53,633.633 INFO    ] No update needed
[2026-10-25 14:42:53,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 14:42:53,671.671 INFO    ] 200
[2026-10-25 14:42:53,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:42:53,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:42:53,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:42:53,770.770 INFO    ] No camera update needed
[2026-10-25 14:42:53,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:42:53,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:42:53,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:42:53,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:42:55,828.828 INFO    ] ================================================
[2026-10-25 14:42:55,843.843 INFO    ] Launching Daemon at Sun Oct 25 14:42:55 IST 2026
[2026-10-25 14:42:55,854.854 INFO    ] ================================================
[2026-10-25 14:42:56,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:42:56
[2026-10-25 14:42:57,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:42:57,484.484 INFO    ] Initializing speech engine...
[2026-10-25 14:42:57,499.499 INFO    ] 2026-10-25 14:42:57
[2026-10-25 14:42:57,813.813 INFO    ] 2026-10-25 14:42:57
[2026-10-25 14:42:57,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:42:58,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:42:58,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:42:58,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:42:58,324.324 INFO    ] time= 25/10/2026 14:42:58
[2026-10-25 14:42:58,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:42:58,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:42:58,476.476 INFO    ] No existing commands found in stream
[2026-10-25 14:43:03,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:43:03,505.505 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 14:43:07,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:43:07,221.221 INFO    ] Checking for system updates...
[2026-10-25 14:43:07,257.257 INFO    ] 200
[2026-10-25 14:43:07,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:07,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:07,323.323 INFO    ] No update needed
[2026-10-25 14:43:07,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 14:43:07,359.359 INFO    ] 200
[2026-10-25 14:43:07,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:07,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:43:07,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:07,469.469 INFO    ] No camera update needed
[2026-10-25 14:43:07,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:43:07,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:43:07,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:43:07,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:43:09,524.524 INFO    ] ================================================
[2026-10-25 14:43:09,540.540 INFO    ] Launching Daemon at Sun Oct 25 14:43:09 IST 2026
[2026-10-25 14:43:09,550.550 INFO    ] ================================================
[2026-10-25 14:43:10,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:43:10
[2026-10-25 14:43:10,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:43:11,145.145 INFO    ] Initializing speech engine...
[2026-10-25 14:43:11,154.154 INFO    ] 2026-10-25 14:43:11
[2026-10-25 14:43:11,425.425 INFO    ] 2026-10-25 14:43:11
[2026-10-25 14:43:11,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:43:11,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:43:11,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:43:11,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:43:11,906.906 INFO    ] time= 25/10/2026 14:43:11
[2026-10-25 14:43:11,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:43:11,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:43:12,084.084 INFO    ] No existing commands found in stream
[2026-10-25 14:43:17,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:43:17,125.125 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 14:43:17,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:43:17,597.597 INFO    ] Checking for system updates...
[2026-10-25 14:43:17,638.638 INFO    ] 200
[2026-10-25 14:43:17,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:17,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:17,696.696 INFO    ] No update needed
[2026-10-25 14:43:17,698.698 INFO    ] Checking for camera pi updates...
[2026-10-25 14:43:17,732.732 INFO    ] 200
[2026-10-25 14:43:17,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:17,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:43:17,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:17,831.831 INFO    ] No camera update needed
[2026-10-25 14:43:17,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:43:17,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:43:17,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:43:17,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:43:19,886.886 INFO    ] ================================================
[2026-10-25 14:43:19,901.901 INFO    ] Launching Daemon at Sun Oct 25 14:43:19 IST 2026
[2026-10-25 14:43:19,913.913 INFO    ] ================================================
[2026-10-25 14:43:20,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:43:20
[2026-10-25 14:43:21,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:43:21,326.326 INFO    ] Initializing speech engine...
[2026-10-25 14:43:21,342.342 INFO    ] 2026-10-25 14:43:21
[2026-10-25 14:43:21,633.633 INFO    ] 2026-10-25 14:43:21
[2026-10-25 14:43:21,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:43:21,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:43:21,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:43:22,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:43:22,018.018 INFO    ] time= 25/10/2026 14:43:22
[2026-10-25 14:43:22,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:43:22,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:43:22,144.144 INFO    ] No existing commands found in stream
[2026-10-25 14:43:27,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:43:27,156.156 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 14:43:28,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:43:28,842.842 INFO    ] Checking for system updates...
[2026-10-25 14:43:28,878.878 INFO    ] 200
[2026-10-25 14:43:28,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:28,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:43:28,936.936 INFO    ] No update needed
[2026-10-25 14:43:28,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 14:43:28,979.979 INFO    ] 200
[2026-10-25 14:43:28,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:29,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:43:29,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:43:29,076.076 INFO    ] No camera update needed
[2026-10-25 14:43:29,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:43:29,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:43:29,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:43:29,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:43:31,130.130 INFO    ] ================================================
[2026-10-25 14:43:31,146.146 INFO    ] Launching Daemon at Sun Oct 25 14:43:31 IST 2026
[2026-10-25 14:43:31,157.157 INFO    ] ================================================
[2026-10-25 14:43:31,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:43:31
[2026-10-25 14:43:32,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:43:32,871.871 INFO    ] Initializing speech engine...
[2026-10-25 14:43:32,883.883 INFO    ] 2026-10-25 14:43:32
[2026-10-25 14:43:33,200.200 INFO    ] 2026-10-25 14:43:33
[2026-10-25 14:43:33,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:43:33,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:43:33,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:43:33,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:43:33,720.720 INFO    ] time= 25/10/2026 14:43:33
[2026-10-25 14:43:33,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:43:33,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:43:33,867.867 INFO    ] No existing commands found in stream
[2026-10-25 14:43:38,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:43:38,891.891 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 14:43:42,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:43:42,906.906 INFO    ] Checking for system updates...
[2026-10-25 14:43:42,943.943 INFO    ] 200
[2026-10-25 14:43:42,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:42,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:43:43,001.001 INFO    ] No update needed
[2026-10-25 14:43:43,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 14:43:43,037.037 INFO    ] 200
[2026-10-25 14:43:43,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:43,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:43:43,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:43:43,132.132 INFO    ] No camera update needed
[2026-10-25 14:43:43,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:43:43,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:43:43,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:43:43,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:43:45,187.187 INFO    ] ================================================
[2026-10-25 14:43:45,203.203 INFO    ] Launching Daemon at Sun Oct 25 14:43:45 IST 2026
[2026-10-25 14:43:45,213.213 INFO    ] ================================================
[2026-10-25 14:43:45,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:43:45
[2026-10-25 14:43:46,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:43:46,654.654 INFO    ] Initializing speech engine...
[2026-10-25 14:43:46,663.663 INFO    ] 2026-10-25 14:43:46
[2026-10-25 14:43:46,911.911 INFO    ] 2026-10-25 14:43:46
[2026-10-25 14:43:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:43:47,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:43:47,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:43:47,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:43:47,465.465 INFO    ] time= 25/10/2026 14:43:47
[2026-10-25 14:43:47,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:43:47,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:43:47,614.614 INFO    ] No existing commands found in stream
[2026-10-25 14:43:52,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:43:52,634.634 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 14:43:54,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:43:54,421.421 INFO    ] Checking for system updates...
[2026-10-25 14:43:54,458.458 INFO    ] 200
[2026-10-25 14:43:54,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:54,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:54,527.527 INFO    ] No update needed
[2026-10-25 14:43:54,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 14:43:54,563.563 INFO    ] 200
[2026-10-25 14:43:54,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:43:54,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:43:54,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:43:54,671.671 INFO    ] No camera update needed
[2026-10-25 14:43:54,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:43:54,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:43:54,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:43:54,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:43:56,725.725 INFO    ] ================================================
[2026-10-25 14:43:56,742.742 INFO    ] Launching Daemon at Sun Oct 25 14:43:56 IST 2026
[2026-10-25 14:43:56,753.753 INFO    ] ================================================
[2026-10-25 14:43:57,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:43:57
[2026-10-25 14:43:57,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:43:58,170.170 INFO    ] Initializing speech engine...
[2026-10-25 14:43:58,179.179 INFO    ] 2026-10-25 14:43:58
[2026-10-25 14:43:58,477.477 INFO    ] 2026-10-25 14:43:58
[2026-10-25 14:43:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:43:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:43:59,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:43:59,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:43:59,879.879 INFO    ] time= 25/10/2026 14:43:59
[2026-10-25 14:43:59,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:43:59,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:43:59,952.952 INFO    ] No existing commands found in stream
[2026-10-25 14:44:04,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:44:04,965.965 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 14:44:06,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:44:06,914.914 INFO    ] Checking for system updates...
[2026-10-25 14:44:06,950.950 INFO    ] 200
[2026-10-25 14:44:06,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:07,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:07,010.010 INFO    ] No update needed
[2026-10-25 14:44:07,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 14:44:07,046.046 INFO    ] 200
[2026-10-25 14:44:07,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:07,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:44:07,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:07,138.138 INFO    ] No camera update needed
[2026-10-25 14:44:07,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:44:07,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:44:07,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:44:07,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:44:09,192.192 INFO    ] ================================================
[2026-10-25 14:44:09,208.208 INFO    ] Launching Daemon at Sun Oct 25 14:44:09 IST 2026
[2026-10-25 14:44:09,219.219 INFO    ] ================================================
[2026-10-25 14:44:09,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:44:09
[2026-10-25 14:44:10,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:44:10,629.629 INFO    ] Initializing speech engine...
[2026-10-25 14:44:10,638.638 INFO    ] 2026-10-25 14:44:10
[2026-10-25 14:44:10,884.884 INFO    ] 2026-10-25 14:44:10
[2026-10-25 14:44:10,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:44:11,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:44:11,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:44:11,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:44:11,346.346 INFO    ] time= 25/10/2026 14:44:11
[2026-10-25 14:44:11,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:44:11,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:44:11,554.554 INFO    ] No existing commands found in stream
[2026-10-25 14:44:16,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:44:16,584.584 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 14:44:20,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:44:20,803.803 INFO    ] Checking for system updates...
[2026-10-25 14:44:20,839.839 INFO    ] 200
[2026-10-25 14:44:20,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:20,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:44:20,906.906 INFO    ] No update needed
[2026-10-25 14:44:20,908.908 INFO    ] Checking for camera pi updates...
[2026-10-25 14:44:20,947.947 INFO    ] 200
[2026-10-25 14:44:20,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:20,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:44:21,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:44:21,148.148 INFO    ] No camera update needed
[2026-10-25 14:44:21,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:44:21,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:44:21,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:44:21,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:44:23,203.203 INFO    ] ================================================
[2026-10-25 14:44:23,218.218 INFO    ] Launching Daemon at Sun Oct 25 14:44:23 IST 2026
[2026-10-25 14:44:23,229.229 INFO    ] ================================================
[2026-10-25 14:44:23,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:44:23
[2026-10-25 14:44:24,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:44:24,688.688 INFO    ] Initializing speech engine...
[2026-10-25 14:44:24,694.694 INFO    ] 2026-10-25 14:44:24
[2026-10-25 14:44:24,942.942 INFO    ] 2026-10-25 14:44:24
[2026-10-25 14:44:24,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:44:25,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:44:25,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:44:25,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:44:25,418.418 INFO    ] time= 25/10/2026 14:44:25
[2026-10-25 14:44:25,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:44:25,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:44:25,637.637 INFO    ] No existing commands found in stream
[2026-10-25 14:44:30,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:44:30,664.664 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 14:44:33,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:44:33,113.113 INFO    ] Checking for system updates...
[2026-10-25 14:44:33,161.161 INFO    ] 200
[2026-10-25 14:44:33,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:33,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:33,218.218 INFO    ] No update needed
[2026-10-25 14:44:33,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 14:44:33,254.254 INFO    ] 200
[2026-10-25 14:44:33,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:33,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:44:33,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:33,333.333 INFO    ] No camera update needed
[2026-10-25 14:44:33,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:44:33,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:44:33,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:44:33,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:44:35,388.388 INFO    ] ================================================
[2026-10-25 14:44:35,403.403 INFO    ] Launching Daemon at Sun Oct 25 14:44:35 IST 2026
[2026-10-25 14:44:35,413.413 INFO    ] ================================================
[2026-10-25 14:44:35,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:44:35
[2026-10-25 14:44:36,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:44:36,813.813 INFO    ] Initializing speech engine...
[2026-10-25 14:44:36,836.836 INFO    ] 2026-10-25 14:44:36
[2026-10-25 14:44:37,089.089 INFO    ] 2026-10-25 14:44:37
[2026-10-25 14:44:37,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:44:37,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:44:37,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:44:37,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:44:37,467.467 INFO    ] time= 25/10/2026 14:44:37
[2026-10-25 14:44:37,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:44:37,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:44:37,626.626 INFO    ] No existing commands found in stream
[2026-10-25 14:44:42,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:44:42,658.658 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 14:44:46,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:44:46,151.151 INFO    ] Checking for system updates...
[2026-10-25 14:44:46,191.191 INFO    ] 200
[2026-10-25 14:44:46,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:46,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:44:46,259.259 INFO    ] No update needed
[2026-10-25 14:44:46,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 14:44:46,302.302 INFO    ] 200
[2026-10-25 14:44:46,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:46,365.365 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:44:46,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:44:46,416.416 INFO    ] No camera update needed
[2026-10-25 14:44:46,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:44:46,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:44:46,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:44:46,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:44:48,474.474 INFO    ] ================================================
[2026-10-25 14:44:48,489.489 INFO    ] Launching Daemon at Sun Oct 25 14:44:48 IST 2026
[2026-10-25 14:44:48,499.499 INFO    ] ================================================
[2026-10-25 14:44:49,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:44:49
[2026-10-25 14:44:49,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:44:49,996.996 INFO    ] Initializing speech engine...
[2026-10-25 14:44:50,003.003 INFO    ] 2026-10-25 14:44:49
[2026-10-25 14:44:50,263.263 INFO    ] 2026-10-25 14:44:50
[2026-10-25 14:44:50,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:44:50,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:44:50,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:44:50,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:44:50,733.733 INFO    ] time= 25/10/2026 14:44:50
[2026-10-25 14:44:50,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:44:50,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:44:50,916.916 INFO    ] No existing commands found in stream
[2026-10-25 14:44:55,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:44:55,945.945 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 14:44:56,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:44:56,541.541 INFO    ] Checking for system updates...
[2026-10-25 14:44:56,582.582 INFO    ] 200
[2026-10-25 14:44:56,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:56,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:56,640.640 INFO    ] No update needed
[2026-10-25 14:44:56,643.643 INFO    ] Checking for camera pi updates...
[2026-10-25 14:44:56,689.689 INFO    ] 200
[2026-10-25 14:44:56,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:44:56,747.747 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:44:56,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:44:56,803.803 INFO    ] No camera update needed
[2026-10-25 14:44:56,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:44:56,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:44:56,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:44:56,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:44:58,857.857 INFO    ] ================================================
[2026-10-25 14:44:58,872.872 INFO    ] Launching Daemon at Sun Oct 25 14:44:58 IST 2026
[2026-10-25 14:44:58,884.884 INFO    ] ================================================
[2026-10-25 14:44:59,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:44:59
[2026-10-25 14:45:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:45:00,329.329 INFO    ] Initializing speech engine...
[2026-10-25 14:45:00,335.335 INFO    ] 2026-10-25 14:45:00
[2026-10-25 14:45:00,609.609 INFO    ] 2026-10-25 14:45:00
[2026-10-25 14:45:00,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:45:01,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:45:01,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:45:01,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:45:01,468.468 INFO    ] time= 25/10/2026 14:45:01
[2026-10-25 14:45:01,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:45:01,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:45:01,556.556 INFO    ] No existing commands found in stream
[2026-10-25 14:45:06,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:45:06,570.570 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 14:45:08,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:45:08,726.726 INFO    ] Checking for system updates...
[2026-10-25 14:45:08,765.765 INFO    ] 200
[2026-10-25 14:45:08,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:08,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:45:08,829.829 INFO    ] No update needed
[2026-10-25 14:45:08,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 14:45:08,866.866 INFO    ] 200
[2026-10-25 14:45:08,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:08,909.909 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:45:08,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:45:08,969.969 INFO    ] No camera update needed
[2026-10-25 14:45:08,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:45:08,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:45:08,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:45:08,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:45:11,025.025 INFO    ] ================================================
[2026-10-25 14:45:11,040.040 INFO    ] Launching Daemon at Sun Oct 25 14:45:11 IST 2026
[2026-10-25 14:45:11,050.050 INFO    ] ================================================
[2026-10-25 14:45:11,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:45:11
[2026-10-25 14:45:12,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:45:12,503.503 INFO    ] Initializing speech engine...
[2026-10-25 14:45:12,512.512 INFO    ] 2026-10-25 14:45:12
[2026-10-25 14:45:12,773.773 INFO    ] 2026-10-25 14:45:12
[2026-10-25 14:45:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:45:13,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:45:13,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:45:13,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:45:13,232.232 INFO    ] time= 25/10/2026 14:45:13
[2026-10-25 14:45:13,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:45:13,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:45:13,383.383 INFO    ] No existing commands found in stream
[2026-10-25 14:45:18,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:45:18,396.396 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 14:45:19,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:45:19,976.976 INFO    ] Checking for system updates...
[2026-10-25 14:45:20,016.016 INFO    ] 200
[2026-10-25 14:45:20,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:20,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:20,083.083 INFO    ] No update needed
[2026-10-25 14:45:20,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 14:45:20,123.123 INFO    ] 200
[2026-10-25 14:45:20,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:20,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:45:20,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:20,230.230 INFO    ] No camera update needed
[2026-10-25 14:45:20,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:45:20,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:45:20,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:45:20,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:45:22,286.286 INFO    ] ================================================
[2026-10-25 14:45:22,301.301 INFO    ] Launching Daemon at Sun Oct 25 14:45:22 IST 2026
[2026-10-25 14:45:22,312.312 INFO    ] ================================================
[2026-10-25 14:45:22,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:45:22
[2026-10-25 14:45:23,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:45:23,745.745 INFO    ] Initializing speech engine...
[2026-10-25 14:45:23,759.759 INFO    ] 2026-10-25 14:45:23
[2026-10-25 14:45:24,012.012 INFO    ] 2026-10-25 14:45:24
[2026-10-25 14:45:24,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:45:24,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:45:24,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:45:24,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:45:24,507.507 INFO    ] time= 25/10/2026 14:45:24
[2026-10-25 14:45:24,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:45:24,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:45:24,689.689 INFO    ] No existing commands found in stream
[2026-10-25 14:45:29,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:45:29,723.723 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 14:45:32,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:45:32,323.323 INFO    ] Checking for system updates...
[2026-10-25 14:45:32,369.369 INFO    ] 200
[2026-10-25 14:45:32,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:32,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:32,447.447 INFO    ] No update needed
[2026-10-25 14:45:32,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 14:45:32,490.490 INFO    ] 200
[2026-10-25 14:45:32,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:32,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:45:32,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:32,582.582 INFO    ] No camera update needed
[2026-10-25 14:45:32,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:45:32,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:45:32,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:45:32,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:45:34,643.643 INFO    ] ================================================
[2026-10-25 14:45:34,658.658 INFO    ] Launching Daemon at Sun Oct 25 14:45:34 IST 2026
[2026-10-25 14:45:34,669.669 INFO    ] ================================================
[2026-10-25 14:45:35,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:45:35
[2026-10-25 14:45:35,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:45:36,296.296 INFO    ] Initializing speech engine...
[2026-10-25 14:45:36,305.305 INFO    ] 2026-10-25 14:45:36
[2026-10-25 14:45:36,580.580 INFO    ] 2026-10-25 14:45:36
[2026-10-25 14:45:36,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:45:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:45:36,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:45:37,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:45:37,067.067 INFO    ] time= 25/10/2026 14:45:37
[2026-10-25 14:45:37,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:45:37,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:45:37,216.216 INFO    ] No existing commands found in stream
[2026-10-25 14:45:42,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:45:42,233.233 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 14:45:45,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:45:45,419.419 INFO    ] Checking for system updates...
[2026-10-25 14:45:45,456.456 INFO    ] 200
[2026-10-25 14:45:45,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:45,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:45:45,522.522 INFO    ] No update needed
[2026-10-25 14:45:45,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 14:45:45,559.559 INFO    ] 200
[2026-10-25 14:45:45,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:45,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:45:45,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:45:45,654.654 INFO    ] No camera update needed
[2026-10-25 14:45:45,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:45:45,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:45:45,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:45:45,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:45:47,709.709 INFO    ] ================================================
[2026-10-25 14:45:47,724.724 INFO    ] Launching Daemon at Sun Oct 25 14:45:47 IST 2026
[2026-10-25 14:45:47,735.735 INFO    ] ================================================
[2026-10-25 14:45:48,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:45:48
[2026-10-25 14:45:48,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:45:49,179.179 INFO    ] Initializing speech engine...
[2026-10-25 14:45:49,195.195 INFO    ] 2026-10-25 14:45:49
[2026-10-25 14:45:49,481.481 INFO    ] 2026-10-25 14:45:49
[2026-10-25 14:45:49,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:45:49,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:45:49,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:45:49,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:45:49,863.863 INFO    ] time= 25/10/2026 14:45:49
[2026-10-25 14:45:49,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:45:49,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:45:49,988.988 INFO    ] No existing commands found in stream
[2026-10-25 14:45:55,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:45:55,004.004 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 14:45:59,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:45:59,027.027 INFO    ] Checking for system updates...
[2026-10-25 14:45:59,067.067 INFO    ] 200
[2026-10-25 14:45:59,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:59,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:59,132.132 INFO    ] No update needed
[2026-10-25 14:45:59,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 14:45:59,173.173 INFO    ] 200
[2026-10-25 14:45:59,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:45:59,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:45:59,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:45:59,275.275 INFO    ] No camera update needed
[2026-10-25 14:45:59,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:45:59,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:45:59,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:45:59,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:46:01,358.358 INFO    ] ================================================
[2026-10-25 14:46:01,397.397 INFO    ] Launching Daemon at Sun Oct 25 14:46:01 IST 2026
[2026-10-25 14:46:01,421.421 INFO    ] ================================================
[2026-10-25 14:46:02,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:46:02
[2026-10-25 14:46:02,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:46:03,073.073 INFO    ] Initializing speech engine...
[2026-10-25 14:46:03,089.089 INFO    ] 2026-10-25 14:46:03
[2026-10-25 14:46:03,353.353 INFO    ] 2026-10-25 14:46:03
[2026-10-25 14:46:03,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:46:06,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:46:06,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:46:06,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:46:06,702.702 INFO    ] time= 25/10/2026 14:46:06
[2026-10-25 14:46:06,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:46:06,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:46:06,757.757 INFO    ] No existing commands found in stream
[2026-10-25 14:46:11,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:46:11,770.770 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 14:46:14,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:46:14,644.644 INFO    ] Checking for system updates...
[2026-10-25 14:46:14,683.683 INFO    ] 200
[2026-10-25 14:46:14,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:14,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:14,741.741 INFO    ] No update needed
[2026-10-25 14:46:14,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 14:46:14,780.780 INFO    ] 200
[2026-10-25 14:46:14,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:14,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:46:14,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:14,877.877 INFO    ] No camera update needed
[2026-10-25 14:46:14,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:46:14,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:46:14,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:46:14,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:46:16,932.932 INFO    ] ================================================
[2026-10-25 14:46:16,947.947 INFO    ] Launching Daemon at Sun Oct 25 14:46:16 IST 2026
[2026-10-25 14:46:16,957.957 INFO    ] ================================================
[2026-10-25 14:46:17,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:46:17
[2026-10-25 14:46:18,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:46:18,443.443 INFO    ] Initializing speech engine...
[2026-10-25 14:46:18,451.451 INFO    ] 2026-10-25 14:46:18
[2026-10-25 14:46:18,708.708 INFO    ] 2026-10-25 14:46:18
[2026-10-25 14:46:18,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:46:18,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:46:18,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:46:19,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:46:19,193.193 INFO    ] time= 25/10/2026 14:46:19
[2026-10-25 14:46:19,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:46:19,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:46:19,317.317 INFO    ] No existing commands found in stream
[2026-10-25 14:46:24,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:46:24,332.332 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 14:46:27,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:46:27,322.322 INFO    ] Checking for system updates...
[2026-10-25 14:46:27,358.358 INFO    ] 200
[2026-10-25 14:46:27,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:27,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:46:27,424.424 INFO    ] No update needed
[2026-10-25 14:46:27,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 14:46:27,461.461 INFO    ] 200
[2026-10-25 14:46:27,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:27,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:46:27,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:46:27,664.664 INFO    ] No camera update needed
[2026-10-25 14:46:27,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:46:27,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:46:27,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:46:27,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:46:29,721.721 INFO    ] ================================================
[2026-10-25 14:46:29,736.736 INFO    ] Launching Daemon at Sun Oct 25 14:46:29 IST 2026
[2026-10-25 14:46:29,747.747 INFO    ] ================================================
[2026-10-25 14:46:30,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:46:30
[2026-10-25 14:46:31,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:46:31,297.297 INFO    ] Initializing speech engine...
[2026-10-25 14:46:31,304.304 INFO    ] 2026-10-25 14:46:31
[2026-10-25 14:46:31,595.595 INFO    ] 2026-10-25 14:46:31
[2026-10-25 14:46:31,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:46:31,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:46:31,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:46:31,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:46:31,980.980 INFO    ] time= 25/10/2026 14:46:31
[2026-10-25 14:46:32,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:46:32,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:46:32,161.161 INFO    ] No existing commands found in stream
[2026-10-25 14:46:37,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:46:37,195.195 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 14:46:40,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:46:40,835.835 INFO    ] Checking for system updates...
[2026-10-25 14:46:40,873.873 INFO    ] 200
[2026-10-25 14:46:40,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:40,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:40,936.936 INFO    ] No update needed
[2026-10-25 14:46:40,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 14:46:40,975.975 INFO    ] 200
[2026-10-25 14:46:40,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:41,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:46:41,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:41,075.075 INFO    ] No camera update needed
[2026-10-25 14:46:41,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:46:41,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:46:41,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:46:41,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:46:43,132.132 INFO    ] ================================================
[2026-10-25 14:46:43,147.147 INFO    ] Launching Daemon at Sun Oct 25 14:46:43 IST 2026
[2026-10-25 14:46:43,158.158 INFO    ] ================================================
[2026-10-25 14:46:43,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:46:43
[2026-10-25 14:46:44,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:46:44,551.551 INFO    ] Initializing speech engine...
[2026-10-25 14:46:44,566.566 INFO    ] 2026-10-25 14:46:44
[2026-10-25 14:46:44,831.831 INFO    ] 2026-10-25 14:46:44
[2026-10-25 14:46:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:46:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:46:45,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:46:45,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:46:45,207.207 INFO    ] time= 25/10/2026 14:46:45
[2026-10-25 14:46:45,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:46:45,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:46:45,378.378 INFO    ] No existing commands found in stream
[2026-10-25 14:46:50,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:46:50,411.411 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 14:46:54,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:46:54,245.245 INFO    ] Checking for system updates...
[2026-10-25 14:46:54,281.281 INFO    ] 200
[2026-10-25 14:46:54,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:54,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:54,347.347 INFO    ] No update needed
[2026-10-25 14:46:54,350.350 INFO    ] Checking for camera pi updates...
[2026-10-25 14:46:54,383.383 INFO    ] 200
[2026-10-25 14:46:54,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:46:54,434.434 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:46:54,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:46:54,486.486 INFO    ] No camera update needed
[2026-10-25 14:46:54,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:46:54,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:46:54,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:46:54,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:46:56,540.540 INFO    ] ================================================
[2026-10-25 14:46:56,554.554 INFO    ] Launching Daemon at Sun Oct 25 14:46:56 IST 2026
[2026-10-25 14:46:56,565.565 INFO    ] ================================================
[2026-10-25 14:46:57,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:46:57
[2026-10-25 14:46:57,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:46:58,037.037 INFO    ] Initializing speech engine...
[2026-10-25 14:46:58,059.059 INFO    ] 2026-10-25 14:46:58
[2026-10-25 14:46:58,326.326 INFO    ] 2026-10-25 14:46:58
[2026-10-25 14:46:58,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:46:58,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:46:58,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:46:58,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:46:58,746.746 INFO    ] time= 25/10/2026 14:46:58
[2026-10-25 14:46:58,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:46:58,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:46:58,907.907 INFO    ] No existing commands found in stream
[2026-10-25 14:47:03,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:47:03,921.921 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 14:47:08,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:47:08,163.163 INFO    ] Checking for system updates...
[2026-10-25 14:47:08,203.203 INFO    ] 200
[2026-10-25 14:47:08,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:08,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:47:08,264.264 INFO    ] No update needed
[2026-10-25 14:47:08,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 14:47:08,305.305 INFO    ] 200
[2026-10-25 14:47:08,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:08,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:47:08,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:47:08,396.396 INFO    ] No camera update needed
[2026-10-25 14:47:08,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:47:08,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:47:08,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:47:08,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:47:10,453.453 INFO    ] ================================================
[2026-10-25 14:47:10,468.468 INFO    ] Launching Daemon at Sun Oct 25 14:47:10 IST 2026
[2026-10-25 14:47:10,479.479 INFO    ] ================================================
[2026-10-25 14:47:11,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:47:11
[2026-10-25 14:47:11,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:47:12,051.051 INFO    ] Initializing speech engine...
[2026-10-25 14:47:12,064.064 INFO    ] 2026-10-25 14:47:12
[2026-10-25 14:47:12,336.336 INFO    ] 2026-10-25 14:47:12
[2026-10-25 14:47:12,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:47:12,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:47:12,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:47:12,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:47:12,787.787 INFO    ] time= 25/10/2026 14:47:12
[2026-10-25 14:47:12,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:47:12,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:47:12,975.975 INFO    ] No existing commands found in stream
[2026-10-25 14:47:18,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:47:18,008.008 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 14:47:19,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:47:19,257.257 INFO    ] Checking for system updates...
[2026-10-25 14:47:19,294.294 INFO    ] 200
[2026-10-25 14:47:19,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:19,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:19,360.360 INFO    ] No update needed
[2026-10-25 14:47:19,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 14:47:19,399.399 INFO    ] 200
[2026-10-25 14:47:19,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:19,445.445 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:47:19,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:19,497.497 INFO    ] No camera update needed
[2026-10-25 14:47:19,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:47:19,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:47:19,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:47:19,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:47:21,556.556 INFO    ] ================================================
[2026-10-25 14:47:21,572.572 INFO    ] Launching Daemon at Sun Oct 25 14:47:21 IST 2026
[2026-10-25 14:47:21,583.583 INFO    ] ================================================
[2026-10-25 14:47:22,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:47:22
[2026-10-25 14:47:22,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:47:23,007.007 INFO    ] Initializing speech engine...
[2026-10-25 14:47:23,016.016 INFO    ] 2026-10-25 14:47:23
[2026-10-25 14:47:23,267.267 INFO    ] 2026-10-25 14:47:23
[2026-10-25 14:47:23,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:47:23,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:47:23,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:47:23,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:47:23,643.643 INFO    ] time= 25/10/2026 14:47:23
[2026-10-25 14:47:23,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:47:23,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:47:23,723.723 INFO    ] No existing commands found in stream
[2026-10-25 14:47:28,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:47:28,761.761 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 14:47:30,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:47:30,524.524 INFO    ] Checking for system updates...
[2026-10-25 14:47:30,563.563 INFO    ] 200
[2026-10-25 14:47:30,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:30,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:30,621.621 INFO    ] No update needed
[2026-10-25 14:47:30,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 14:47:30,661.661 INFO    ] 200
[2026-10-25 14:47:30,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:30,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:47:30,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:30,747.747 INFO    ] No camera update needed
[2026-10-25 14:47:30,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:47:30,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:47:30,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:47:30,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:47:32,804.804 INFO    ] ================================================
[2026-10-25 14:47:32,819.819 INFO    ] Launching Daemon at Sun Oct 25 14:47:32 IST 2026
[2026-10-25 14:47:32,830.830 INFO    ] ================================================
[2026-10-25 14:47:33,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:47:33
[2026-10-25 14:47:34,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:47:34,286.286 INFO    ] Initializing speech engine...
[2026-10-25 14:47:34,295.295 INFO    ] 2026-10-25 14:47:34
[2026-10-25 14:47:34,543.543 INFO    ] 2026-10-25 14:47:34
[2026-10-25 14:47:34,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:47:34,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:47:34,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:47:34,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:47:34,911.911 INFO    ] time= 25/10/2026 14:47:34
[2026-10-25 14:47:34,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:47:34,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:47:35,097.097 INFO    ] No existing commands found in stream
[2026-10-25 14:47:40,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:47:40,122.122 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 14:47:42,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:47:42,062.062 INFO    ] Checking for system updates...
[2026-10-25 14:47:42,099.099 INFO    ] 200
[2026-10-25 14:47:42,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:42,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:42,159.159 INFO    ] No update needed
[2026-10-25 14:47:42,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 14:47:42,197.197 INFO    ] 200
[2026-10-25 14:47:42,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:42,241.241 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:47:42,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:47:42,293.293 INFO    ] No camera update needed
[2026-10-25 14:47:42,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:47:42,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:47:42,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:47:42,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:47:44,351.351 INFO    ] ================================================
[2026-10-25 14:47:44,366.366 INFO    ] Launching Daemon at Sun Oct 25 14:47:44 IST 2026
[2026-10-25 14:47:44,377.377 INFO    ] ================================================
[2026-10-25 14:47:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:47:45
[2026-10-25 14:47:45,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:47:45,961.961 INFO    ] Initializing speech engine...
[2026-10-25 14:47:45,969.969 INFO    ] 2026-10-25 14:47:45
[2026-10-25 14:47:46,236.236 INFO    ] 2026-10-25 14:47:46
[2026-10-25 14:47:46,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:47:46,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:47:46,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:47:46,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:47:46,730.730 INFO    ] time= 25/10/2026 14:47:46
[2026-10-25 14:47:46,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:47:46,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:47:46,932.932 INFO    ] No existing commands found in stream
[2026-10-25 14:47:51,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:47:51,961.961 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 14:47:53,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:47:53,842.842 INFO    ] Checking for system updates...
[2026-10-25 14:47:53,880.880 INFO    ] 200
[2026-10-25 14:47:53,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:53,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:47:53,939.939 INFO    ] No update needed
[2026-10-25 14:47:53,942.942 INFO    ] Checking for camera pi updates...
[2026-10-25 14:47:53,976.976 INFO    ] 200
[2026-10-25 14:47:53,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:47:54,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:47:54,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:47:54,080.080 INFO    ] No camera update needed
[2026-10-25 14:47:54,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:47:54,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:47:54,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:47:54,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:47:56,135.135 INFO    ] ================================================
[2026-10-25 14:47:56,151.151 INFO    ] Launching Daemon at Sun Oct 25 14:47:56 IST 2026
[2026-10-25 14:47:56,162.162 INFO    ] ================================================
[2026-10-25 14:47:56,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:47:56
[2026-10-25 14:47:57,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:47:57,612.612 INFO    ] Initializing speech engine...
[2026-10-25 14:47:57,634.634 INFO    ] 2026-10-25 14:47:57
[2026-10-25 14:47:57,902.902 INFO    ] 2026-10-25 14:47:57
[2026-10-25 14:47:57,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:47:58,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:47:58,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:47:58,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:47:58,279.279 INFO    ] time= 25/10/2026 14:47:58
[2026-10-25 14:47:58,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:47:58,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:47:58,463.463 INFO    ] No existing commands found in stream
[2026-10-25 14:48:03,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:48:03,491.491 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 14:48:10,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:48:10,381.381 INFO    ] Checking for system updates...
[2026-10-25 14:48:10,418.418 INFO    ] 200
[2026-10-25 14:48:10,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:10,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:48:10,483.483 INFO    ] No update needed
[2026-10-25 14:48:10,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 14:48:10,522.522 INFO    ] 200
[2026-10-25 14:48:10,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:10,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:48:10,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:48:10,616.616 INFO    ] No camera update needed
[2026-10-25 14:48:10,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:48:10,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:48:10,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:48:10,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:48:12,676.676 INFO    ] ================================================
[2026-10-25 14:48:12,698.698 INFO    ] Launching Daemon at Sun Oct 25 14:48:12 IST 2026
[2026-10-25 14:48:12,713.713 INFO    ] ================================================
[2026-10-25 14:48:13,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:48:13
[2026-10-25 14:48:13,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:48:14,147.147 INFO    ] Initializing speech engine...
[2026-10-25 14:48:14,155.155 INFO    ] 2026-10-25 14:48:14
[2026-10-25 14:48:14,447.447 INFO    ] 2026-10-25 14:48:14
[2026-10-25 14:48:14,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:48:14,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:48:14,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:48:14,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:48:14,847.847 INFO    ] time= 25/10/2026 14:48:14
[2026-10-25 14:48:14,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:48:14,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:48:15,015.015 INFO    ] No existing commands found in stream
[2026-10-25 14:48:20,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:48:20,044.044 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 14:48:21,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:48:21,507.507 INFO    ] Checking for system updates...
[2026-10-25 14:48:21,546.546 INFO    ] 200
[2026-10-25 14:48:21,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:21,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:48:21,612.612 INFO    ] No update needed
[2026-10-25 14:48:21,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 14:48:21,652.652 INFO    ] 200
[2026-10-25 14:48:21,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:21,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:48:21,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:48:21,760.760 INFO    ] No camera update needed
[2026-10-25 14:48:21,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:48:21,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:48:21,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:48:21,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:48:23,818.818 INFO    ] ================================================
[2026-10-25 14:48:23,833.833 INFO    ] Launching Daemon at Sun Oct 25 14:48:23 IST 2026
[2026-10-25 14:48:23,844.844 INFO    ] ================================================
[2026-10-25 14:48:24,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:48:24
[2026-10-25 14:48:25,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:48:25,301.301 INFO    ] Initializing speech engine...
[2026-10-25 14:48:25,310.310 INFO    ] 2026-10-25 14:48:25
[2026-10-25 14:48:25,567.567 INFO    ] 2026-10-25 14:48:25
[2026-10-25 14:48:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:48:25,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:48:25,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:48:25,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:48:25,996.996 INFO    ] time= 25/10/2026 14:48:25
[2026-10-25 14:48:26,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:48:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:48:26,170.170 INFO    ] No existing commands found in stream
[2026-10-25 14:48:31,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:48:31,185.185 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 14:48:33,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:48:33,412.412 INFO    ] Checking for system updates...
[2026-10-25 14:48:33,448.448 INFO    ] 200
[2026-10-25 14:48:33,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:33,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:48:33,506.506 INFO    ] No update needed
[2026-10-25 14:48:33,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 14:48:33,546.546 INFO    ] 200
[2026-10-25 14:48:33,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:33,590.590 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:48:33,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:48:33,634.634 INFO    ] No camera update needed
[2026-10-25 14:48:33,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:48:33,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:48:33,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:48:33,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:48:35,689.689 INFO    ] ================================================
[2026-10-25 14:48:35,705.705 INFO    ] Launching Daemon at Sun Oct 25 14:48:35 IST 2026
[2026-10-25 14:48:35,715.715 INFO    ] ================================================
[2026-10-25 14:48:36,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:48:36
[2026-10-25 14:48:36,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:48:37,162.162 INFO    ] Initializing speech engine...
[2026-10-25 14:48:37,173.173 INFO    ] 2026-10-25 14:48:37
[2026-10-25 14:48:37,434.434 INFO    ] 2026-10-25 14:48:37
[2026-10-25 14:48:37,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:48:41,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:48:41,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:48:41,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:48:41,388.388 INFO    ] time= 25/10/2026 14:48:41
[2026-10-25 14:48:41,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:48:41,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:48:41,444.444 INFO    ] No existing commands found in stream
[2026-10-25 14:48:46,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:48:46,456.456 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 14:48:48,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:48:48,563.563 INFO    ] Checking for system updates...
[2026-10-25 14:48:48,599.599 INFO    ] 200
[2026-10-25 14:48:48,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:48,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:48:48,658.658 INFO    ] No update needed
[2026-10-25 14:48:48,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 14:48:48,696.696 INFO    ] 200
[2026-10-25 14:48:48,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:48:48,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:48:48,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:48:48,793.793 INFO    ] No camera update needed
[2026-10-25 14:48:48,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:48:48,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:48:48,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:48:48,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:48:50,846.846 INFO    ] ================================================
[2026-10-25 14:48:50,861.861 INFO    ] Launching Daemon at Sun Oct 25 14:48:50 IST 2026
[2026-10-25 14:48:50,872.872 INFO    ] ================================================
[2026-10-25 14:48:51,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:48:51
[2026-10-25 14:48:52,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:48:52,331.331 INFO    ] Initializing speech engine...
[2026-10-25 14:48:52,341.341 INFO    ] 2026-10-25 14:48:52
[2026-10-25 14:48:52,610.610 INFO    ] 2026-10-25 14:48:52
[2026-10-25 14:48:52,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:48:52,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:48:52,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:48:52,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:48:52,983.983 INFO    ] time= 25/10/2026 14:48:52
[2026-10-25 14:48:52,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:48:53,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:48:53,152.152 INFO    ] No existing commands found in stream
[2026-10-25 14:48:58,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:48:58,181.181 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 14:48:59,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:48:59,963.963 INFO    ] Checking for system updates...
[2026-10-25 14:49:00,000.000 INFO    ] 200
[2026-10-25 14:49:00,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:00,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:49:00,059.059 INFO    ] No update needed
[2026-10-25 14:49:00,062.062 INFO    ] Checking for camera pi updates...
[2026-10-25 14:49:00,096.096 INFO    ] 200
[2026-10-25 14:49:00,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:00,140.140 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:49:00,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:49:00,191.191 INFO    ] No camera update needed
[2026-10-25 14:49:00,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:49:00,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:49:00,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:49:00,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:49:02,262.262 INFO    ] ================================================
[2026-10-25 14:49:02,284.284 INFO    ] Launching Daemon at Sun Oct 25 14:49:02 IST 2026
[2026-10-25 14:49:02,301.301 INFO    ] ================================================
[2026-10-25 14:49:02,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:49:02
[2026-10-25 14:49:03,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:49:03,831.831 INFO    ] Initializing speech engine...
[2026-10-25 14:49:03,840.840 INFO    ] 2026-10-25 14:49:03
[2026-10-25 14:49:04,095.095 INFO    ] 2026-10-25 14:49:04
[2026-10-25 14:49:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:49:04,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:49:04,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:49:04,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:49:04,552.552 INFO    ] time= 25/10/2026 14:49:04
[2026-10-25 14:49:04,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:49:04,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:49:04,717.717 INFO    ] No existing commands found in stream
[2026-10-25 14:49:09,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:49:09,756.756 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 14:49:13,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:49:13,024.024 INFO    ] Checking for system updates...
[2026-10-25 14:49:13,060.060 INFO    ] 200
[2026-10-25 14:49:13,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:13,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:13,118.118 INFO    ] No update needed
[2026-10-25 14:49:13,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 14:49:13,155.155 INFO    ] 200
[2026-10-25 14:49:13,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:13,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:49:13,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:13,253.253 INFO    ] No camera update needed
[2026-10-25 14:49:13,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:49:13,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:49:13,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:49:13,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:49:15,311.311 INFO    ] ================================================
[2026-10-25 14:49:15,325.325 INFO    ] Launching Daemon at Sun Oct 25 14:49:15 IST 2026
[2026-10-25 14:49:15,336.336 INFO    ] ================================================
[2026-10-25 14:49:15,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:49:15
[2026-10-25 14:49:16,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:49:16,816.816 INFO    ] Initializing speech engine...
[2026-10-25 14:49:16,825.825 INFO    ] 2026-10-25 14:49:16
[2026-10-25 14:49:17,116.116 INFO    ] 2026-10-25 14:49:17
[2026-10-25 14:49:17,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:49:17,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:49:17,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:49:17,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:49:17,519.519 INFO    ] time= 25/10/2026 14:49:17
[2026-10-25 14:49:17,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:49:17,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:49:17,678.678 INFO    ] No existing commands found in stream
[2026-10-25 14:49:22,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:49:22,706.706 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 14:49:23,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:49:23,883.883 INFO    ] Checking for system updates...
[2026-10-25 14:49:23,919.919 INFO    ] 200
[2026-10-25 14:49:23,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:23,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:49:23,982.982 INFO    ] No update needed
[2026-10-25 14:49:23,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 14:49:24,021.021 INFO    ] 200
[2026-10-25 14:49:24,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:24,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:49:24,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:49:24,121.121 INFO    ] No camera update needed
[2026-10-25 14:49:24,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:49:24,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:49:24,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:49:24,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:49:26,175.175 INFO    ] ================================================
[2026-10-25 14:49:26,190.190 INFO    ] Launching Daemon at Sun Oct 25 14:49:26 IST 2026
[2026-10-25 14:49:26,200.200 INFO    ] ================================================
[2026-10-25 14:49:26,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:49:26
[2026-10-25 14:49:27,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:49:27,599.599 INFO    ] Initializing speech engine...
[2026-10-25 14:49:27,608.608 INFO    ] 2026-10-25 14:49:27
[2026-10-25 14:49:27,898.898 INFO    ] 2026-10-25 14:49:27
[2026-10-25 14:49:27,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:49:28,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:49:28,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:49:28,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:49:28,348.348 INFO    ] time= 25/10/2026 14:49:28
[2026-10-25 14:49:28,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:49:28,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:49:28,520.520 INFO    ] No existing commands found in stream
[2026-10-25 14:49:33,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:49:33,534.534 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 14:49:34,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:49:34,233.233 INFO    ] Checking for system updates...
[2026-10-25 14:49:34,269.269 INFO    ] 200
[2026-10-25 14:49:34,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:34,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:34,326.326 INFO    ] No update needed
[2026-10-25 14:49:34,328.328 INFO    ] Checking for camera pi updates...
[2026-10-25 14:49:34,362.362 INFO    ] 200
[2026-10-25 14:49:34,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:34,405.405 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:49:34,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:34,458.458 INFO    ] No camera update needed
[2026-10-25 14:49:34,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:49:34,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:49:34,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:49:34,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:49:36,512.512 INFO    ] ================================================
[2026-10-25 14:49:36,526.526 INFO    ] Launching Daemon at Sun Oct 25 14:49:36 IST 2026
[2026-10-25 14:49:36,537.537 INFO    ] ================================================
[2026-10-25 14:49:37,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:49:37
[2026-10-25 14:49:37,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:49:37,996.996 INFO    ] Initializing speech engine...
[2026-10-25 14:49:38,019.019 INFO    ] 2026-10-25 14:49:38
[2026-10-25 14:49:38,273.273 INFO    ] 2026-10-25 14:49:38
[2026-10-25 14:49:38,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:49:38,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:49:38,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:49:38,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:49:38,739.739 INFO    ] time= 25/10/2026 14:49:38
[2026-10-25 14:49:38,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:49:38,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:49:38,887.887 INFO    ] No existing commands found in stream
[2026-10-25 14:49:43,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:49:43,902.902 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 14:49:46,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:49:46,961.961 INFO    ] Checking for system updates...
[2026-10-25 14:49:46,998.998 INFO    ] 200
[2026-10-25 14:49:47,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:47,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:47,057.057 INFO    ] No update needed
[2026-10-25 14:49:47,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 14:49:47,097.097 INFO    ] 200
[2026-10-25 14:49:47,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:49:47,140.140 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:49:47,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:49:47,191.191 INFO    ] No camera update needed
[2026-10-25 14:49:47,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:49:47,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:49:47,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:49:47,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:49:49,248.248 INFO    ] ================================================
[2026-10-25 14:49:49,263.263 INFO    ] Launching Daemon at Sun Oct 25 14:49:49 IST 2026
[2026-10-25 14:49:49,274.274 INFO    ] ================================================
[2026-10-25 14:49:49,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:49:49
[2026-10-25 14:49:50,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:49:50,716.716 INFO    ] Initializing speech engine...
[2026-10-25 14:49:50,724.724 INFO    ] 2026-10-25 14:49:50
[2026-10-25 14:49:50,975.975 INFO    ] 2026-10-25 14:49:50
[2026-10-25 14:49:51,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:49:51,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:49:51,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:49:51,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:49:51,460.460 INFO    ] time= 25/10/2026 14:49:51
[2026-10-25 14:49:51,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:49:51,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:49:51,609.609 INFO    ] No existing commands found in stream
[2026-10-25 14:49:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:49:56,623.623 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 14:50:00,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:50:00,408.408 INFO    ] Checking for system updates...
[2026-10-25 14:50:00,446.446 INFO    ] 200
[2026-10-25 14:50:00,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:00,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:50:00,508.508 INFO    ] No update needed
[2026-10-25 14:50:00,511.511 INFO    ] Checking for camera pi updates...
[2026-10-25 14:50:00,544.544 INFO    ] 200
[2026-10-25 14:50:00,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:00,588.588 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:50:00,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:50:00,637.637 INFO    ] No camera update needed
[2026-10-25 14:50:00,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:50:00,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:50:00,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:50:00,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:50:02,713.713 INFO    ] ================================================
[2026-10-25 14:50:02,740.740 INFO    ] Launching Daemon at Sun Oct 25 14:50:02 IST 2026
[2026-10-25 14:50:02,757.757 INFO    ] ================================================
[2026-10-25 14:50:03,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:50:03
[2026-10-25 14:50:04,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:50:04,474.474 INFO    ] Initializing speech engine...
[2026-10-25 14:50:04,481.481 INFO    ] 2026-10-25 14:50:04
[2026-10-25 14:50:04,753.753 INFO    ] 2026-10-25 14:50:04
[2026-10-25 14:50:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:50:05,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:50:05,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:50:05,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:50:05,242.242 INFO    ] time= 25/10/2026 14:50:05
[2026-10-25 14:50:05,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:50:05,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:50:05,366.366 INFO    ] No existing commands found in stream
[2026-10-25 14:50:10,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:50:10,384.384 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 14:50:14,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:50:14,499.499 INFO    ] Checking for system updates...
[2026-10-25 14:50:14,541.541 INFO    ] 200
[2026-10-25 14:50:14,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:14,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:14,605.605 INFO    ] No update needed
[2026-10-25 14:50:14,608.608 INFO    ] Checking for camera pi updates...
[2026-10-25 14:50:14,647.647 INFO    ] 200
[2026-10-25 14:50:14,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:14,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:50:14,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:14,752.752 INFO    ] No camera update needed
[2026-10-25 14:50:14,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:50:14,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:50:14,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:50:14,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:50:16,811.811 INFO    ] ================================================
[2026-10-25 14:50:16,826.826 INFO    ] Launching Daemon at Sun Oct 25 14:50:16 IST 2026
[2026-10-25 14:50:16,837.837 INFO    ] ================================================
[2026-10-25 14:50:17,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:50:17
[2026-10-25 14:50:18,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:50:18,447.447 INFO    ] Initializing speech engine...
[2026-10-25 14:50:18,455.455 INFO    ] 2026-10-25 14:50:18
[2026-10-25 14:50:18,769.769 INFO    ] 2026-10-25 14:50:18
[2026-10-25 14:50:18,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:50:19,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:50:19,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:50:19,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:50:19,272.272 INFO    ] time= 25/10/2026 14:50:19
[2026-10-25 14:50:19,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:50:19,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:50:19,393.393 INFO    ] No existing commands found in stream
[2026-10-25 14:50:24,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:50:24,421.421 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 14:50:26,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:50:26,968.968 INFO    ] Checking for system updates...
[2026-10-25 14:50:27,004.004 INFO    ] 200
[2026-10-25 14:50:27,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:27,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:50:27,062.062 INFO    ] No update needed
[2026-10-25 14:50:27,065.065 INFO    ] Checking for camera pi updates...
[2026-10-25 14:50:27,102.102 INFO    ] 200
[2026-10-25 14:50:27,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:27,150.150 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:50:27,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:50:27,199.199 INFO    ] No camera update needed
[2026-10-25 14:50:27,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:50:27,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:50:27,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:50:27,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:50:29,254.254 INFO    ] ================================================
[2026-10-25 14:50:29,269.269 INFO    ] Launching Daemon at Sun Oct 25 14:50:29 IST 2026
[2026-10-25 14:50:29,279.279 INFO    ] ================================================
[2026-10-25 14:50:29,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:50:29
[2026-10-25 14:50:30,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:50:30,679.679 INFO    ] Initializing speech engine...
[2026-10-25 14:50:30,688.688 INFO    ] 2026-10-25 14:50:30
[2026-10-25 14:50:30,975.975 INFO    ] 2026-10-25 14:50:30
[2026-10-25 14:50:31,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:50:31,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:50:31,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:50:31,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:50:31,347.347 INFO    ] time= 25/10/2026 14:50:31
[2026-10-25 14:50:31,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:50:31,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:50:31,484.484 INFO    ] No existing commands found in stream
[2026-10-25 14:50:36,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:50:36,499.499 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 14:50:38,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:50:38,750.750 INFO    ] Checking for system updates...
[2026-10-25 14:50:38,786.786 INFO    ] 200
[2026-10-25 14:50:38,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:38,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:38,846.846 INFO    ] No update needed
[2026-10-25 14:50:38,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 14:50:38,882.882 INFO    ] 200
[2026-10-25 14:50:38,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:38,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:50:39,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:39,069.069 INFO    ] No camera update needed
[2026-10-25 14:50:39,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:50:39,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:50:39,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:50:39,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:50:41,125.125 INFO    ] ================================================
[2026-10-25 14:50:41,139.139 INFO    ] Launching Daemon at Sun Oct 25 14:50:41 IST 2026
[2026-10-25 14:50:41,150.150 INFO    ] ================================================
[2026-10-25 14:50:41,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:50:41
[2026-10-25 14:50:42,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:50:42,567.567 INFO    ] Initializing speech engine...
[2026-10-25 14:50:42,577.577 INFO    ] 2026-10-25 14:50:42
[2026-10-25 14:50:42,828.828 INFO    ] 2026-10-25 14:50:42
[2026-10-25 14:50:42,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:50:45,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:50:45,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:50:45,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:50:45,364.364 INFO    ] time= 25/10/2026 14:50:45
[2026-10-25 14:50:45,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:50:45,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:50:45,478.478 INFO    ] No existing commands found in stream
[2026-10-25 14:50:50,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:50:50,515.515 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 14:50:53,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:50:53,715.715 INFO    ] Checking for system updates...
[2026-10-25 14:50:53,754.754 INFO    ] 200
[2026-10-25 14:50:53,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:53,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:53,817.817 INFO    ] No update needed
[2026-10-25 14:50:53,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 14:50:53,853.853 INFO    ] 200
[2026-10-25 14:50:53,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:50:53,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:50:53,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:50:53,948.948 INFO    ] No camera update needed
[2026-10-25 14:50:53,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:50:53,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:50:53,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:50:53,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:50:56,003.003 INFO    ] ================================================
[2026-10-25 14:50:56,018.018 INFO    ] Launching Daemon at Sun Oct 25 14:50:56 IST 2026
[2026-10-25 14:50:56,029.029 INFO    ] ================================================
[2026-10-25 14:50:56,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:50:56
[2026-10-25 14:50:57,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:50:57,490.490 INFO    ] Initializing speech engine...
[2026-10-25 14:50:57,499.499 INFO    ] 2026-10-25 14:50:57
[2026-10-25 14:50:57,748.748 INFO    ] 2026-10-25 14:50:57
[2026-10-25 14:50:57,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:50:57,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:50:57,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:50:58,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:50:58,116.116 INFO    ] time= 25/10/2026 14:50:58
[2026-10-25 14:50:58,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:50:58,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:50:58,295.295 INFO    ] No existing commands found in stream
[2026-10-25 14:51:03,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:51:03,326.326 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 14:51:05,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:51:05,498.498 INFO    ] Checking for system updates...
[2026-10-25 14:51:05,535.535 INFO    ] 200
[2026-10-25 14:51:05,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:05,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:05,600.600 INFO    ] No update needed
[2026-10-25 14:51:05,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 14:51:05,642.642 INFO    ] 200
[2026-10-25 14:51:05,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:05,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:51:05,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:05,725.725 INFO    ] No camera update needed
[2026-10-25 14:51:05,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:51:05,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:51:05,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:51:05,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:51:07,783.783 INFO    ] ================================================
[2026-10-25 14:51:07,799.799 INFO    ] Launching Daemon at Sun Oct 25 14:51:07 IST 2026
[2026-10-25 14:51:07,810.810 INFO    ] ================================================
[2026-10-25 14:51:08,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:51:08
[2026-10-25 14:51:09,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:51:09,325.325 INFO    ] Initializing speech engine...
[2026-10-25 14:51:09,335.335 INFO    ] 2026-10-25 14:51:09
[2026-10-25 14:51:09,587.587 INFO    ] 2026-10-25 14:51:09
[2026-10-25 14:51:09,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:51:09,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:51:09,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:51:10,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:51:10,036.036 INFO    ] time= 25/10/2026 14:51:10
[2026-10-25 14:51:10,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:51:10,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:51:10,262.262 INFO    ] No existing commands found in stream
[2026-10-25 14:51:15,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:51:15,295.295 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 14:51:17,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:51:17,259.259 INFO    ] Checking for system updates...
[2026-10-25 14:51:17,294.294 INFO    ] 200
[2026-10-25 14:51:17,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:17,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:51:17,353.353 INFO    ] No update needed
[2026-10-25 14:51:17,356.356 INFO    ] Checking for camera pi updates...
[2026-10-25 14:51:17,393.393 INFO    ] 200
[2026-10-25 14:51:17,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:17,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:51:17,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:51:17,499.499 INFO    ] No camera update needed
[2026-10-25 14:51:17,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:51:17,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:51:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:51:17,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:51:19,559.559 INFO    ] ================================================
[2026-10-25 14:51:19,574.574 INFO    ] Launching Daemon at Sun Oct 25 14:51:19 IST 2026
[2026-10-25 14:51:19,586.586 INFO    ] ================================================
[2026-10-25 14:51:20,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:51:20
[2026-10-25 14:51:20,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:51:21,002.002 INFO    ] Initializing speech engine...
[2026-10-25 14:51:21,009.009 INFO    ] 2026-10-25 14:51:21
[2026-10-25 14:51:21,254.254 INFO    ] 2026-10-25 14:51:21
[2026-10-25 14:51:21,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:51:21,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:51:21,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:51:21,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:51:21,727.727 INFO    ] time= 25/10/2026 14:51:21
[2026-10-25 14:51:21,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:51:21,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:51:21,872.872 INFO    ] No existing commands found in stream
[2026-10-25 14:51:26,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:51:26,886.886 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 14:51:30,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:51:30,185.185 INFO    ] Checking for system updates...
[2026-10-25 14:51:30,225.225 INFO    ] 200
[2026-10-25 14:51:30,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:30,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:51:30,282.282 INFO    ] No update needed
[2026-10-25 14:51:30,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 14:51:30,321.321 INFO    ] 200
[2026-10-25 14:51:30,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:30,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:51:30,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:51:30,414.414 INFO    ] No camera update needed
[2026-10-25 14:51:30,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:51:30,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:51:30,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:51:30,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:51:32,473.473 INFO    ] ================================================
[2026-10-25 14:51:32,490.490 INFO    ] Launching Daemon at Sun Oct 25 14:51:32 IST 2026
[2026-10-25 14:51:32,501.501 INFO    ] ================================================
[2026-10-25 14:51:33,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:51:33
[2026-10-25 14:51:33,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:51:33,976.976 INFO    ] Initializing speech engine...
[2026-10-25 14:51:33,987.987 INFO    ] 2026-10-25 14:51:33
[2026-10-25 14:51:34,244.244 INFO    ] 2026-10-25 14:51:34
[2026-10-25 14:51:34,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:51:34,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:51:34,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:51:34,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:51:34,679.679 INFO    ] time= 25/10/2026 14:51:34
[2026-10-25 14:51:34,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:51:34,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:51:34,848.848 INFO    ] No existing commands found in stream
[2026-10-25 14:51:39,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:51:39,863.863 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 14:51:44,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:51:44,745.745 INFO    ] Checking for system updates...
[2026-10-25 14:51:44,781.781 INFO    ] 200
[2026-10-25 14:51:44,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:44,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:44,840.840 INFO    ] No update needed
[2026-10-25 14:51:44,843.843 INFO    ] Checking for camera pi updates...
[2026-10-25 14:51:44,876.876 INFO    ] 200
[2026-10-25 14:51:44,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:44,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:51:44,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:44,969.969 INFO    ] No camera update needed
[2026-10-25 14:51:44,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:51:44,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:51:44,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:51:44,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:51:47,027.027 INFO    ] ================================================
[2026-10-25 14:51:47,044.044 INFO    ] Launching Daemon at Sun Oct 25 14:51:47 IST 2026
[2026-10-25 14:51:47,055.055 INFO    ] ================================================
[2026-10-25 14:51:47,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:51:47
[2026-10-25 14:51:48,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:51:48,471.471 INFO    ] Initializing speech engine...
[2026-10-25 14:51:48,492.492 INFO    ] 2026-10-25 14:51:48
[2026-10-25 14:51:48,748.748 INFO    ] 2026-10-25 14:51:48
[2026-10-25 14:51:48,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:51:48,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:51:49,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:51:49,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:51:49,167.167 INFO    ] time= 25/10/2026 14:51:49
[2026-10-25 14:51:49,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:51:49,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:51:49,339.339 INFO    ] No existing commands found in stream
[2026-10-25 14:51:54,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:51:54,367.367 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 14:51:58,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:51:58,554.554 INFO    ] Checking for system updates...
[2026-10-25 14:51:58,594.594 INFO    ] 200
[2026-10-25 14:51:58,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:58,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:58,651.651 INFO    ] No update needed
[2026-10-25 14:51:58,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 14:51:58,692.692 INFO    ] 200
[2026-10-25 14:51:58,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:51:58,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:51:58,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:51:58,793.793 INFO    ] No camera update needed
[2026-10-25 14:51:58,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:51:58,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:51:58,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:51:58,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:52:00,848.848 INFO    ] ================================================
[2026-10-25 14:52:00,865.865 INFO    ] Launching Daemon at Sun Oct 25 14:52:00 IST 2026
[2026-10-25 14:52:00,877.877 INFO    ] ================================================
[2026-10-25 14:52:01,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:52:01
[2026-10-25 14:52:02,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:52:02,689.689 INFO    ] Initializing speech engine...
[2026-10-25 14:52:02,700.700 INFO    ] 2026-10-25 14:52:02
[2026-10-25 14:52:03,037.037 INFO    ] 2026-10-25 14:52:03
[2026-10-25 14:52:03,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:52:03,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:52:03,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:52:03,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:52:03,581.581 INFO    ] time= 25/10/2026 14:52:03
[2026-10-25 14:52:03,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:52:03,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:52:03,738.738 INFO    ] No existing commands found in stream
[2026-10-25 14:52:08,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:52:08,754.754 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 14:52:11,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:52:11,236.236 INFO    ] Checking for system updates...
[2026-10-25 14:52:11,272.272 INFO    ] 200
[2026-10-25 14:52:11,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:11,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:11,332.332 INFO    ] No update needed
[2026-10-25 14:52:11,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 14:52:11,368.368 INFO    ] 200
[2026-10-25 14:52:11,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:11,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:52:11,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:11,463.463 INFO    ] No camera update needed
[2026-10-25 14:52:11,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:52:11,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:52:11,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:52:11,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:52:13,520.520 INFO    ] ================================================
[2026-10-25 14:52:13,536.536 INFO    ] Launching Daemon at Sun Oct 25 14:52:13 IST 2026
[2026-10-25 14:52:13,547.547 INFO    ] ================================================
[2026-10-25 14:52:14,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:52:14
[2026-10-25 14:52:14,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:52:15,213.213 INFO    ] Initializing speech engine...
[2026-10-25 14:52:15,219.219 INFO    ] 2026-10-25 14:52:15
[2026-10-25 14:52:15,527.527 INFO    ] 2026-10-25 14:52:15
[2026-10-25 14:52:15,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:52:17,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:52:17,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:52:18,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:52:18,115.115 INFO    ] time= 25/10/2026 14:52:18
[2026-10-25 14:52:18,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:52:18,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:52:18,200.200 INFO    ] No existing commands found in stream
[2026-10-25 14:52:23,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:52:23,224.224 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 14:52:24,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:52:24,242.242 INFO    ] Checking for system updates...
[2026-10-25 14:52:24,283.283 INFO    ] 200
[2026-10-25 14:52:24,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:24,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:24,349.349 INFO    ] No update needed
[2026-10-25 14:52:24,351.351 INFO    ] Checking for camera pi updates...
[2026-10-25 14:52:24,389.389 INFO    ] 200
[2026-10-25 14:52:24,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:24,432.432 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:52:24,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:24,489.489 INFO    ] No camera update needed
[2026-10-25 14:52:24,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:52:24,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:52:24,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:52:24,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:52:26,545.545 INFO    ] ================================================
[2026-10-25 14:52:26,562.562 INFO    ] Launching Daemon at Sun Oct 25 14:52:26 IST 2026
[2026-10-25 14:52:26,572.572 INFO    ] ================================================
[2026-10-25 14:52:27,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:52:27
[2026-10-25 14:52:27,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:52:28,220.220 INFO    ] Initializing speech engine...
[2026-10-25 14:52:28,233.233 INFO    ] 2026-10-25 14:52:28
[2026-10-25 14:52:28,545.545 INFO    ] 2026-10-25 14:52:28
[2026-10-25 14:52:28,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:52:28,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:52:28,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:52:29,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:52:29,053.053 INFO    ] time= 25/10/2026 14:52:29
[2026-10-25 14:52:29,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:52:29,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:52:29,207.207 INFO    ] No existing commands found in stream
[2026-10-25 14:52:34,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:52:34,231.231 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 14:52:37,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:52:37,242.242 INFO    ] Checking for system updates...
[2026-10-25 14:52:37,284.284 INFO    ] 200
[2026-10-25 14:52:37,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:37,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:52:37,345.345 INFO    ] No update needed
[2026-10-25 14:52:37,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 14:52:37,387.387 INFO    ] 200
[2026-10-25 14:52:37,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:37,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:52:37,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:52:37,574.574 INFO    ] No camera update needed
[2026-10-25 14:52:37,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:52:37,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:52:37,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:52:37,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:52:39,633.633 INFO    ] ================================================
[2026-10-25 14:52:39,648.648 INFO    ] Launching Daemon at Sun Oct 25 14:52:39 IST 2026
[2026-10-25 14:52:39,660.660 INFO    ] ================================================
[2026-10-25 14:52:40,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:52:40
[2026-10-25 14:52:40,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:52:41,083.083 INFO    ] Initializing speech engine...
[2026-10-25 14:52:41,099.099 INFO    ] 2026-10-25 14:52:41
[2026-10-25 14:52:41,354.354 INFO    ] 2026-10-25 14:52:41
[2026-10-25 14:52:41,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:52:41,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:52:41,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:52:41,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:52:41,729.729 INFO    ] time= 25/10/2026 14:52:41
[2026-10-25 14:52:41,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:52:41,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:52:41,910.910 INFO    ] No existing commands found in stream
[2026-10-25 14:52:46,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:52:46,946.946 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 14:52:49,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:52:49,230.230 INFO    ] Checking for system updates...
[2026-10-25 14:52:49,266.266 INFO    ] 200
[2026-10-25 14:52:49,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:49,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:49,331.331 INFO    ] No update needed
[2026-10-25 14:52:49,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 14:52:49,368.368 INFO    ] 200
[2026-10-25 14:52:49,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:52:49,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:52:49,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:52:49,580.580 INFO    ] No camera update needed
[2026-10-25 14:52:49,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:52:49,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:52:49,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:52:49,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:52:51,637.637 INFO    ] ================================================
[2026-10-25 14:52:51,653.653 INFO    ] Launching Daemon at Sun Oct 25 14:52:51 IST 2026
[2026-10-25 14:52:51,664.664 INFO    ] ================================================
[2026-10-25 14:52:52,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:52:52
[2026-10-25 14:52:52,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:52:53,099.099 INFO    ] Initializing speech engine...
[2026-10-25 14:52:53,108.108 INFO    ] 2026-10-25 14:52:53
[2026-10-25 14:52:53,409.409 INFO    ] 2026-10-25 14:52:53
[2026-10-25 14:52:53,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:52:53,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:52:53,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:52:53,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:52:53,795.795 INFO    ] time= 25/10/2026 14:52:53
[2026-10-25 14:52:53,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:52:53,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:52:53,922.922 INFO    ] No existing commands found in stream
[2026-10-25 14:52:58,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:52:58,936.936 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 14:53:01,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:53:01,632.632 INFO    ] Checking for system updates...
[2026-10-25 14:53:01,672.672 INFO    ] 200
[2026-10-25 14:53:01,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:01,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:01,738.738 INFO    ] No update needed
[2026-10-25 14:53:01,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 14:53:01,778.778 INFO    ] 200
[2026-10-25 14:53:01,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:01,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:53:01,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:01,883.883 INFO    ] No camera update needed
[2026-10-25 14:53:01,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:53:01,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:53:01,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:53:01,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:53:03,952.952 INFO    ] ================================================
[2026-10-25 14:53:03,967.967 INFO    ] Launching Daemon at Sun Oct 25 14:53:03 IST 2026
[2026-10-25 14:53:03,979.979 INFO    ] ================================================
[2026-10-25 14:53:04,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:53:04
[2026-10-25 14:53:05,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:53:05,391.391 INFO    ] Initializing speech engine...
[2026-10-25 14:53:05,404.404 INFO    ] 2026-10-25 14:53:05
[2026-10-25 14:53:05,656.656 INFO    ] 2026-10-25 14:53:05
[2026-10-25 14:53:05,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:53:05,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:53:05,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:53:06,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:53:06,111.111 INFO    ] time= 25/10/2026 14:53:06
[2026-10-25 14:53:06,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:53:06,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:53:06,264.264 INFO    ] No existing commands found in stream
[2026-10-25 14:53:11,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:53:11,279.279 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 14:53:15,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:53:15,535.535 INFO    ] Checking for system updates...
[2026-10-25 14:53:15,572.572 INFO    ] 200
[2026-10-25 14:53:15,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:15,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:15,632.632 INFO    ] No update needed
[2026-10-25 14:53:15,634.634 INFO    ] Checking for camera pi updates...
[2026-10-25 14:53:15,672.672 INFO    ] 200
[2026-10-25 14:53:15,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:15,722.722 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:53:15,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:15,775.775 INFO    ] No camera update needed
[2026-10-25 14:53:15,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:53:15,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:53:15,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:53:15,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:53:17,832.832 INFO    ] ================================================
[2026-10-25 14:53:17,847.847 INFO    ] Launching Daemon at Sun Oct 25 14:53:17 IST 2026
[2026-10-25 14:53:17,858.858 INFO    ] ================================================
[2026-10-25 14:53:18,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:53:18
[2026-10-25 14:53:19,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:53:19,262.262 INFO    ] Initializing speech engine...
[2026-10-25 14:53:19,269.269 INFO    ] 2026-10-25 14:53:19
[2026-10-25 14:53:19,573.573 INFO    ] 2026-10-25 14:53:19
[2026-10-25 14:53:19,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:53:20,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:53:20,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:53:20,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:53:20,223.223 INFO    ] time= 25/10/2026 14:53:20
[2026-10-25 14:53:20,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:53:20,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:53:20,361.361 INFO    ] No existing commands found in stream
[2026-10-25 14:53:25,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:53:25,382.382 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 14:53:28,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:53:28,897.897 INFO    ] Checking for system updates...
[2026-10-25 14:53:28,937.937 INFO    ] 200
[2026-10-25 14:53:28,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:29,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:29,003.003 INFO    ] No update needed
[2026-10-25 14:53:29,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 14:53:29,044.044 INFO    ] 200
[2026-10-25 14:53:29,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:29,093.093 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:53:29,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:53:29,148.148 INFO    ] No camera update needed
[2026-10-25 14:53:29,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:53:29,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:53:29,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:53:29,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:53:31,209.209 INFO    ] ================================================
[2026-10-25 14:53:31,224.224 INFO    ] Launching Daemon at Sun Oct 25 14:53:31 IST 2026
[2026-10-25 14:53:31,235.235 INFO    ] ================================================
[2026-10-25 14:53:31,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:53:31
[2026-10-25 14:53:32,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:53:32,777.777 INFO    ] Initializing speech engine...
[2026-10-25 14:53:32,784.784 INFO    ] 2026-10-25 14:53:32
[2026-10-25 14:53:33,058.058 INFO    ] 2026-10-25 14:53:33
[2026-10-25 14:53:33,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:53:33,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:53:33,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:53:33,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:53:33,452.452 INFO    ] time= 25/10/2026 14:53:33
[2026-10-25 14:53:33,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:53:33,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:53:33,633.633 INFO    ] No existing commands found in stream
[2026-10-25 14:53:38,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:53:38,661.661 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 14:53:42,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:53:42,916.916 INFO    ] Checking for system updates...
[2026-10-25 14:53:42,957.957 INFO    ] 200
[2026-10-25 14:53:42,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:43,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:53:43,015.015 INFO    ] No update needed
[2026-10-25 14:53:43,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 14:53:43,053.053 INFO    ] 200
[2026-10-25 14:53:43,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:43,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:53:43,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:53:43,164.164 INFO    ] No camera update needed
[2026-10-25 14:53:43,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:53:43,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:53:43,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:53:43,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:53:45,222.222 INFO    ] ================================================
[2026-10-25 14:53:45,237.237 INFO    ] Launching Daemon at Sun Oct 25 14:53:45 IST 2026
[2026-10-25 14:53:45,249.249 INFO    ] ================================================
[2026-10-25 14:53:45,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:53:45
[2026-10-25 14:53:46,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:53:46,800.800 INFO    ] Initializing speech engine...
[2026-10-25 14:53:46,812.812 INFO    ] 2026-10-25 14:53:46
[2026-10-25 14:53:47,120.120 INFO    ] 2026-10-25 14:53:47
[2026-10-25 14:53:47,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:53:50,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:53:50,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:53:50,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:53:50,966.966 INFO    ] time= 25/10/2026 14:53:50
[2026-10-25 14:53:50,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:53:50,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:53:51,023.023 INFO    ] No existing commands found in stream
[2026-10-25 14:53:56,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:53:56,035.035 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 14:53:57,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:53:57,956.956 INFO    ] Checking for system updates...
[2026-10-25 14:53:57,992.992 INFO    ] 200
[2026-10-25 14:53:57,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:58,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:53:58,051.051 INFO    ] No update needed
[2026-10-25 14:53:58,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 14:53:58,092.092 INFO    ] 200
[2026-10-25 14:53:58,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:53:58,141.141 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:53:58,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:53:58,190.190 INFO    ] No camera update needed
[2026-10-25 14:53:58,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:53:58,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:53:58,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:53:58,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:54:00,246.246 INFO    ] ================================================
[2026-10-25 14:54:00,262.262 INFO    ] Launching Daemon at Sun Oct 25 14:54:00 IST 2026
[2026-10-25 14:54:00,272.272 INFO    ] ================================================
[2026-10-25 14:54:00,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:54:00
[2026-10-25 14:54:01,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:54:02,027.027 INFO    ] Initializing speech engine...
[2026-10-25 14:54:02,031.031 INFO    ] 2026-10-25 14:54:02
[2026-10-25 14:54:02,444.444 INFO    ] 2026-10-25 14:54:02
[2026-10-25 14:54:02,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:54:02,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:54:02,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:54:02,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:54:02,824.824 INFO    ] time= 25/10/2026 14:54:02
[2026-10-25 14:54:02,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:54:02,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:54:02,957.957 INFO    ] No existing commands found in stream
[2026-10-25 14:54:07,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:54:07,972.972 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 14:54:09,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:54:09,033.033 INFO    ] Checking for system updates...
[2026-10-25 14:54:09,074.074 INFO    ] 200
[2026-10-25 14:54:09,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:09,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:09,143.143 INFO    ] No update needed
[2026-10-25 14:54:09,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 14:54:09,186.186 INFO    ] 200
[2026-10-25 14:54:09,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:09,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:54:09,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:09,300.300 INFO    ] No camera update needed
[2026-10-25 14:54:09,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:54:09,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:54:09,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:54:09,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:54:11,362.362 INFO    ] ================================================
[2026-10-25 14:54:11,377.377 INFO    ] Launching Daemon at Sun Oct 25 14:54:11 IST 2026
[2026-10-25 14:54:11,389.389 INFO    ] ================================================
[2026-10-25 14:54:11,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:54:11
[2026-10-25 14:54:12,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:54:12,809.809 INFO    ] Initializing speech engine...
[2026-10-25 14:54:12,816.816 INFO    ] 2026-10-25 14:54:12
[2026-10-25 14:54:13,073.073 INFO    ] 2026-10-25 14:54:13
[2026-10-25 14:54:13,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:54:13,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:54:13,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:54:13,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:54:13,524.524 INFO    ] time= 25/10/2026 14:54:13
[2026-10-25 14:54:13,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:54:13,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:54:13,710.710 INFO    ] No existing commands found in stream
[2026-10-25 14:54:18,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:54:18,744.744 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 14:54:22,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:54:22,081.081 INFO    ] Checking for system updates...
[2026-10-25 14:54:22,122.122 INFO    ] 200
[2026-10-25 14:54:22,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:22,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:54:22,195.195 INFO    ] No update needed
[2026-10-25 14:54:22,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 14:54:22,255.255 INFO    ] 200
[2026-10-25 14:54:22,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:22,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:54:22,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:54:22,364.364 INFO    ] No camera update needed
[2026-10-25 14:54:22,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:54:22,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:54:22,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:54:22,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:54:24,424.424 INFO    ] ================================================
[2026-10-25 14:54:24,443.443 INFO    ] Launching Daemon at Sun Oct 25 14:54:24 IST 2026
[2026-10-25 14:54:24,454.454 INFO    ] ================================================
[2026-10-25 14:54:25,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:54:25
[2026-10-25 14:54:25,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:54:26,108.108 INFO    ] Initializing speech engine...
[2026-10-25 14:54:26,119.119 INFO    ] 2026-10-25 14:54:26
[2026-10-25 14:54:26,428.428 INFO    ] 2026-10-25 14:54:26
[2026-10-25 14:54:26,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:54:26,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:54:26,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:54:26,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:54:26,936.936 INFO    ] time= 25/10/2026 14:54:26
[2026-10-25 14:54:26,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:54:26,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:54:27,087.087 INFO    ] No existing commands found in stream
[2026-10-25 14:54:32,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:54:32,107.107 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 14:54:32,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:54:32,924.924 INFO    ] Checking for system updates...
[2026-10-25 14:54:32,966.966 INFO    ] 200
[2026-10-25 14:54:32,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:33,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:33,033.033 INFO    ] No update needed
[2026-10-25 14:54:33,036.036 INFO    ] Checking for camera pi updates...
[2026-10-25 14:54:33,073.073 INFO    ] 200
[2026-10-25 14:54:33,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:33,121.121 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:54:33,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:33,179.179 INFO    ] No camera update needed
[2026-10-25 14:54:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:54:33,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:54:33,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:54:33,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:54:35,246.246 INFO    ] ================================================
[2026-10-25 14:54:35,262.262 INFO    ] Launching Daemon at Sun Oct 25 14:54:35 IST 2026
[2026-10-25 14:54:35,272.272 INFO    ] ================================================
[2026-10-25 14:54:35,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:54:35
[2026-10-25 14:54:36,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:54:36,699.699 INFO    ] Initializing speech engine...
[2026-10-25 14:54:36,708.708 INFO    ] 2026-10-25 14:54:36
[2026-10-25 14:54:36,953.953 INFO    ] 2026-10-25 14:54:36
[2026-10-25 14:54:36,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:54:37,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:54:37,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:54:37,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:54:37,321.321 INFO    ] time= 25/10/2026 14:54:37
[2026-10-25 14:54:37,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:54:37,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:54:37,487.487 INFO    ] No existing commands found in stream
[2026-10-25 14:54:42,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:54:42,521.521 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 14:54:44,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:54:44,884.884 INFO    ] Checking for system updates...
[2026-10-25 14:54:44,921.921 INFO    ] 200
[2026-10-25 14:54:44,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:44,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:44,989.989 INFO    ] No update needed
[2026-10-25 14:54:44,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 14:54:45,028.028 INFO    ] 200
[2026-10-25 14:54:45,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:45,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:54:45,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:54:45,132.132 INFO    ] No camera update needed
[2026-10-25 14:54:45,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:54:45,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:54:45,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:54:45,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:54:47,192.192 INFO    ] ================================================
[2026-10-25 14:54:47,207.207 INFO    ] Launching Daemon at Sun Oct 25 14:54:47 IST 2026
[2026-10-25 14:54:47,218.218 INFO    ] ================================================
[2026-10-25 14:54:47,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:54:47
[2026-10-25 14:54:48,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:54:48,632.632 INFO    ] Initializing speech engine...
[2026-10-25 14:54:48,642.642 INFO    ] 2026-10-25 14:54:48
[2026-10-25 14:54:48,886.886 INFO    ] 2026-10-25 14:54:48
[2026-10-25 14:54:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:54:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:54:52,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:54:52,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:54:52,546.546 INFO    ] time= 25/10/2026 14:54:52
[2026-10-25 14:54:52,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:54:52,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:54:52,599.599 INFO    ] No existing commands found in stream
[2026-10-25 14:54:57,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:54:57,611.611 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 14:54:59,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:54:59,717.717 INFO    ] Checking for system updates...
[2026-10-25 14:54:59,757.757 INFO    ] 200
[2026-10-25 14:54:59,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:59,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:54:59,823.823 INFO    ] No update needed
[2026-10-25 14:54:59,825.825 INFO    ] Checking for camera pi updates...
[2026-10-25 14:54:59,861.861 INFO    ] 200
[2026-10-25 14:54:59,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:54:59,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:55:00,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:55:00,063.063 INFO    ] No camera update needed
[2026-10-25 14:55:00,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:55:00,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:55:00,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:55:00,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:55:02,185.185 INFO    ] ================================================
[2026-10-25 14:55:02,207.207 INFO    ] Launching Daemon at Sun Oct 25 14:55:02 IST 2026
[2026-10-25 14:55:02,224.224 INFO    ] ================================================
[2026-10-25 14:55:02,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:55:02
[2026-10-25 14:55:03,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:55:03,822.822 INFO    ] Initializing speech engine...
[2026-10-25 14:55:03,847.847 INFO    ] 2026-10-25 14:55:03
[2026-10-25 14:55:04,125.125 INFO    ] 2026-10-25 14:55:04
[2026-10-25 14:55:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:55:04,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:55:04,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:55:04,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:55:04,507.507 INFO    ] time= 25/10/2026 14:55:04
[2026-10-25 14:55:04,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:55:04,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:55:04,638.638 INFO    ] No existing commands found in stream
[2026-10-25 14:55:09,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:55:09,653.653 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 14:55:13,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:55:13,321.321 INFO    ] Checking for system updates...
[2026-10-25 14:55:13,359.359 INFO    ] 200
[2026-10-25 14:55:13,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:13,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:13,417.417 INFO    ] No update needed
[2026-10-25 14:55:13,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 14:55:13,453.453 INFO    ] 200
[2026-10-25 14:55:13,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:13,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:55:13,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:13,549.549 INFO    ] No camera update needed
[2026-10-25 14:55:13,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:55:13,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:55:13,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:55:13,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:55:15,606.606 INFO    ] ================================================
[2026-10-25 14:55:15,621.621 INFO    ] Launching Daemon at Sun Oct 25 14:55:15 IST 2026
[2026-10-25 14:55:15,632.632 INFO    ] ================================================
[2026-10-25 14:55:16,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:55:16
[2026-10-25 14:55:16,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:55:17,049.049 INFO    ] Initializing speech engine...
[2026-10-25 14:55:17,056.056 INFO    ] 2026-10-25 14:55:17
[2026-10-25 14:55:17,353.353 INFO    ] 2026-10-25 14:55:17
[2026-10-25 14:55:17,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:55:17,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:55:17,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:55:17,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:55:17,775.775 INFO    ] time= 25/10/2026 14:55:17
[2026-10-25 14:55:17,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:55:17,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:55:17,861.861 INFO    ] No existing commands found in stream
[2026-10-25 14:55:22,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:55:22,877.877 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 14:55:24,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:55:24,642.642 INFO    ] Checking for system updates...
[2026-10-25 14:55:24,694.694 INFO    ] 200
[2026-10-25 14:55:24,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:24,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:24,756.756 INFO    ] No update needed
[2026-10-25 14:55:24,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 14:55:24,797.797 INFO    ] 200
[2026-10-25 14:55:24,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:24,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:55:24,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:24,895.895 INFO    ] No camera update needed
[2026-10-25 14:55:24,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:55:24,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:55:24,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:55:24,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:55:26,955.955 INFO    ] ================================================
[2026-10-25 14:55:26,970.970 INFO    ] Launching Daemon at Sun Oct 25 14:55:26 IST 2026
[2026-10-25 14:55:26,981.981 INFO    ] ================================================
[2026-10-25 14:55:27,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:55:27
[2026-10-25 14:55:28,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:55:28,405.405 INFO    ] Initializing speech engine...
[2026-10-25 14:55:28,414.414 INFO    ] 2026-10-25 14:55:28
[2026-10-25 14:55:28,659.659 INFO    ] 2026-10-25 14:55:28
[2026-10-25 14:55:28,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:55:28,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:55:28,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:55:29,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:55:29,123.123 INFO    ] time= 25/10/2026 14:55:29
[2026-10-25 14:55:29,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:55:29,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:55:29,292.292 INFO    ] No existing commands found in stream
[2026-10-25 14:55:34,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:55:34,306.306 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 14:55:36,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:55:36,162.162 INFO    ] Checking for system updates...
[2026-10-25 14:55:36,198.198 INFO    ] 200
[2026-10-25 14:55:36,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:36,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:36,257.257 INFO    ] No update needed
[2026-10-25 14:55:36,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 14:55:36,293.293 INFO    ] 200
[2026-10-25 14:55:36,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:36,341.341 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:55:36,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:36,401.401 INFO    ] No camera update needed
[2026-10-25 14:55:36,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:55:36,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:55:36,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:55:36,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:55:38,458.458 INFO    ] ================================================
[2026-10-25 14:55:38,473.473 INFO    ] Launching Daemon at Sun Oct 25 14:55:38 IST 2026
[2026-10-25 14:55:38,484.484 INFO    ] ================================================
[2026-10-25 14:55:39,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:55:39
[2026-10-25 14:55:39,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:55:39,896.896 INFO    ] Initializing speech engine...
[2026-10-25 14:55:39,918.918 INFO    ] 2026-10-25 14:55:39
[2026-10-25 14:55:40,175.175 INFO    ] 2026-10-25 14:55:40
[2026-10-25 14:55:40,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:55:40,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:55:40,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:55:40,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:55:40,531.531 INFO    ] time= 25/10/2026 14:55:40
[2026-10-25 14:55:40,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:55:40,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:55:40,630.630 INFO    ] No existing commands found in stream
[2026-10-25 14:55:45,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:55:45,645.645 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 14:55:47,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:55:47,053.053 INFO    ] Checking for system updates...
[2026-10-25 14:55:47,090.090 INFO    ] 200
[2026-10-25 14:55:47,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:47,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:47,148.148 INFO    ] No update needed
[2026-10-25 14:55:47,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 14:55:47,185.185 INFO    ] 200
[2026-10-25 14:55:47,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:55:47,228.228 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:55:47,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:55:47,277.277 INFO    ] No camera update needed
[2026-10-25 14:55:47,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:55:47,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:55:47,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:55:47,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:55:49,333.333 INFO    ] ================================================
[2026-10-25 14:55:49,348.348 INFO    ] Launching Daemon at Sun Oct 25 14:55:49 IST 2026
[2026-10-25 14:55:49,359.359 INFO    ] ================================================
[2026-10-25 14:55:50,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:55:50
[2026-10-25 14:55:50,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:55:50,999.999 INFO    ] Initializing speech engine...
[2026-10-25 14:55:51,007.007 INFO    ] 2026-10-25 14:55:51
[2026-10-25 14:55:51,284.284 INFO    ] 2026-10-25 14:55:51
[2026-10-25 14:55:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:55:54,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:55:54,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:55:54,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:55:54,582.582 INFO    ] time= 25/10/2026 14:55:54
[2026-10-25 14:55:54,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:55:54,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:55:54,637.637 INFO    ] No existing commands found in stream
[2026-10-25 14:55:59,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:55:59,650.650 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 14:56:05,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:56:05,294.294 INFO    ] Checking for system updates...
[2026-10-25 14:56:05,331.331 INFO    ] 200
[2026-10-25 14:56:05,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:05,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:56:05,400.400 INFO    ] No update needed
[2026-10-25 14:56:05,402.402 INFO    ] Checking for camera pi updates...
[2026-10-25 14:56:05,441.441 INFO    ] 200
[2026-10-25 14:56:05,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:05,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:56:05,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:56:05,544.544 INFO    ] No camera update needed
[2026-10-25 14:56:05,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:56:05,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:56:05,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:56:05,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:56:07,602.602 INFO    ] ================================================
[2026-10-25 14:56:07,617.617 INFO    ] Launching Daemon at Sun Oct 25 14:56:07 IST 2026
[2026-10-25 14:56:07,627.627 INFO    ] ================================================
[2026-10-25 14:56:08,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:56:08
[2026-10-25 14:56:08,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:56:09,268.268 INFO    ] Initializing speech engine...
[2026-10-25 14:56:09,279.279 INFO    ] 2026-10-25 14:56:09
[2026-10-25 14:56:09,568.568 INFO    ] 2026-10-25 14:56:09
[2026-10-25 14:56:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:56:09,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:56:09,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:56:09,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:56:10,033.033 INFO    ] time= 25/10/2026 14:56:09
[2026-10-25 14:56:10,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:56:10,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:56:10,259.259 INFO    ] No existing commands found in stream
[2026-10-25 14:56:15,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:56:15,278.278 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 14:56:19,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:56:19,327.327 INFO    ] Checking for system updates...
[2026-10-25 14:56:19,365.365 INFO    ] 200
[2026-10-25 14:56:19,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:19,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:19,424.424 INFO    ] No update needed
[2026-10-25 14:56:19,427.427 INFO    ] Checking for camera pi updates...
[2026-10-25 14:56:19,462.462 INFO    ] 200
[2026-10-25 14:56:19,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:19,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:56:19,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:19,558.558 INFO    ] No camera update needed
[2026-10-25 14:56:19,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:56:19,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:56:19,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:56:19,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:56:21,616.616 INFO    ] ================================================
[2026-10-25 14:56:21,631.631 INFO    ] Launching Daemon at Sun Oct 25 14:56:21 IST 2026
[2026-10-25 14:56:21,641.641 INFO    ] ================================================
[2026-10-25 14:56:22,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:56:22
[2026-10-25 14:56:22,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:56:23,050.050 INFO    ] Initializing speech engine...
[2026-10-25 14:56:23,059.059 INFO    ] 2026-10-25 14:56:23
[2026-10-25 14:56:23,354.354 INFO    ] 2026-10-25 14:56:23
[2026-10-25 14:56:23,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:56:25,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:56:25,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:56:25,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:56:25,778.778 INFO    ] time= 25/10/2026 14:56:25
[2026-10-25 14:56:25,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:56:25,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:56:25,851.851 INFO    ] No existing commands found in stream
[2026-10-25 14:56:30,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:56:30,868.868 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 14:56:34,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 14:56:34,287.287 INFO    ] Checking for system updates...
[2026-10-25 14:56:34,323.323 INFO    ] 200
[2026-10-25 14:56:34,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:34,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:34,380.380 INFO    ] No update needed
[2026-10-25 14:56:34,382.382 INFO    ] Checking for camera pi updates...
[2026-10-25 14:56:34,416.416 INFO    ] 200
[2026-10-25 14:56:34,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:34,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:56:34,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:34,509.509 INFO    ] No camera update needed
[2026-10-25 14:56:34,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:56:34,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:56:34,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:56:34,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:56:36,565.565 INFO    ] ================================================
[2026-10-25 14:56:36,580.580 INFO    ] Launching Daemon at Sun Oct 25 14:56:36 IST 2026
[2026-10-25 14:56:36,591.591 INFO    ] ================================================
[2026-10-25 14:56:37,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:56:37
[2026-10-25 14:56:37,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:56:38,024.024 INFO    ] Initializing speech engine...
[2026-10-25 14:56:38,033.033 INFO    ] 2026-10-25 14:56:38
[2026-10-25 14:56:38,337.337 INFO    ] 2026-10-25 14:56:38
[2026-10-25 14:56:38,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:56:38,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:56:38,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:56:38,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:56:38,735.735 INFO    ] time= 25/10/2026 14:56:38
[2026-10-25 14:56:38,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:56:38,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:56:38,851.851 INFO    ] No existing commands found in stream
[2026-10-25 14:56:43,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:56:43,866.866 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 14:56:45,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:56:45,998.998 INFO    ] Checking for system updates...
[2026-10-25 14:56:46,035.035 INFO    ] 200
[2026-10-25 14:56:46,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:46,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:56:46,097.097 INFO    ] No update needed
[2026-10-25 14:56:46,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 14:56:46,134.134 INFO    ] 200
[2026-10-25 14:56:46,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:46,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:56:46,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:56:46,233.233 INFO    ] No camera update needed
[2026-10-25 14:56:46,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:56:46,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:56:46,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:56:46,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:56:48,289.289 INFO    ] ================================================
[2026-10-25 14:56:48,304.304 INFO    ] Launching Daemon at Sun Oct 25 14:56:48 IST 2026
[2026-10-25 14:56:48,315.315 INFO    ] ================================================
[2026-10-25 14:56:48,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:56:48
[2026-10-25 14:56:49,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:56:49,780.780 INFO    ] Initializing speech engine...
[2026-10-25 14:56:49,787.787 INFO    ] 2026-10-25 14:56:49
[2026-10-25 14:56:50,047.047 INFO    ] 2026-10-25 14:56:50
[2026-10-25 14:56:50,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:56:50,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:56:50,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:56:50,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:56:50,513.513 INFO    ] time= 25/10/2026 14:56:50
[2026-10-25 14:56:50,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:56:50,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:56:50,658.658 INFO    ] No existing commands found in stream
[2026-10-25 14:56:55,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:56:55,673.673 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 14:56:57,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:56:57,529.529 INFO    ] Checking for system updates...
[2026-10-25 14:56:57,565.565 INFO    ] 200
[2026-10-25 14:56:57,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:57,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:57,624.624 INFO    ] No update needed
[2026-10-25 14:56:57,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 14:56:57,660.660 INFO    ] 200
[2026-10-25 14:56:57,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:56:57,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:56:57,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:56:57,761.761 INFO    ] No camera update needed
[2026-10-25 14:56:57,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:56:57,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:56:57,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:56:57,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:56:59,819.819 INFO    ] ================================================
[2026-10-25 14:56:59,835.835 INFO    ] Launching Daemon at Sun Oct 25 14:56:59 IST 2026
[2026-10-25 14:56:59,845.845 INFO    ] ================================================
[2026-10-25 14:57:00,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:57:00
[2026-10-25 14:57:01,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:57:01,813.813 INFO    ] Initializing speech engine...
[2026-10-25 14:57:01,819.819 INFO    ] 2026-10-25 14:57:01
[2026-10-25 14:57:02,153.153 INFO    ] 2026-10-25 14:57:02
[2026-10-25 14:57:02,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:57:02,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:57:02,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:57:02,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:57:02,602.602 INFO    ] time= 25/10/2026 14:57:02
[2026-10-25 14:57:02,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:57:02,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:57:02,762.762 INFO    ] No existing commands found in stream
[2026-10-25 14:57:07,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:57:07,794.794 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 14:57:11,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:57:11,835.835 INFO    ] Checking for system updates...
[2026-10-25 14:57:11,872.872 INFO    ] 200
[2026-10-25 14:57:11,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:11,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:11,929.929 INFO    ] No update needed
[2026-10-25 14:57:11,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 14:57:11,966.966 INFO    ] 200
[2026-10-25 14:57:11,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:12,012.012 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:57:12,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:12,169.169 INFO    ] No camera update needed
[2026-10-25 14:57:12,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:57:12,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:57:12,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:57:12,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:57:14,225.225 INFO    ] ================================================
[2026-10-25 14:57:14,240.240 INFO    ] Launching Daemon at Sun Oct 25 14:57:14 IST 2026
[2026-10-25 14:57:14,251.251 INFO    ] ================================================
[2026-10-25 14:57:14,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:57:14
[2026-10-25 14:57:15,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:57:15,674.674 INFO    ] Initializing speech engine...
[2026-10-25 14:57:15,682.682 INFO    ] 2026-10-25 14:57:15
[2026-10-25 14:57:15,982.982 INFO    ] 2026-10-25 14:57:15
[2026-10-25 14:57:16,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:57:16,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:57:16,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:57:16,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:57:16,342.342 INFO    ] time= 25/10/2026 14:57:16
[2026-10-25 14:57:16,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:57:16,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:57:16,425.425 INFO    ] No existing commands found in stream
[2026-10-25 14:57:21,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:57:21,439.439 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 14:57:23,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:57:23,906.906 INFO    ] Checking for system updates...
[2026-10-25 14:57:23,942.942 INFO    ] 200
[2026-10-25 14:57:23,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:24,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:57:24,005.005 INFO    ] No update needed
[2026-10-25 14:57:24,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 14:57:24,042.042 INFO    ] 200
[2026-10-25 14:57:24,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:24,086.086 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:57:24,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:57:24,140.140 INFO    ] No camera update needed
[2026-10-25 14:57:24,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:57:24,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:57:24,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:57:24,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:57:26,195.195 INFO    ] ================================================
[2026-10-25 14:57:26,210.210 INFO    ] Launching Daemon at Sun Oct 25 14:57:26 IST 2026
[2026-10-25 14:57:26,221.221 INFO    ] ================================================
[2026-10-25 14:57:26,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:57:26
[2026-10-25 14:57:27,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:57:27,636.636 INFO    ] Initializing speech engine...
[2026-10-25 14:57:27,652.652 INFO    ] 2026-10-25 14:57:27
[2026-10-25 14:57:27,942.942 INFO    ] 2026-10-25 14:57:27
[2026-10-25 14:57:27,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:57:28,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:57:28,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:57:28,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:57:28,368.368 INFO    ] time= 25/10/2026 14:57:28
[2026-10-25 14:57:28,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:57:28,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:57:28,460.460 INFO    ] No existing commands found in stream
[2026-10-25 14:57:33,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:57:33,475.475 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 14:57:34,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:57:34,225.225 INFO    ] Checking for system updates...
[2026-10-25 14:57:34,261.261 INFO    ] 200
[2026-10-25 14:57:34,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:34,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:34,319.319 INFO    ] No update needed
[2026-10-25 14:57:34,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 14:57:34,355.355 INFO    ] 200
[2026-10-25 14:57:34,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:34,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:57:34,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:34,445.445 INFO    ] No camera update needed
[2026-10-25 14:57:34,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:57:34,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:57:34,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:57:34,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:57:36,501.501 INFO    ] ================================================
[2026-10-25 14:57:36,516.516 INFO    ] Launching Daemon at Sun Oct 25 14:57:36 IST 2026
[2026-10-25 14:57:36,527.527 INFO    ] ================================================
[2026-10-25 14:57:37,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:57:37
[2026-10-25 14:57:37,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:57:37,943.943 INFO    ] Initializing speech engine...
[2026-10-25 14:57:37,952.952 INFO    ] 2026-10-25 14:57:37
[2026-10-25 14:57:38,196.196 INFO    ] 2026-10-25 14:57:38
[2026-10-25 14:57:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:57:38,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:57:38,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:57:38,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:57:38,665.665 INFO    ] time= 25/10/2026 14:57:38
[2026-10-25 14:57:38,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:57:38,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:57:38,809.809 INFO    ] No existing commands found in stream
[2026-10-25 14:57:43,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:57:43,823.823 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 14:57:46,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:57:46,410.410 INFO    ] Checking for system updates...
[2026-10-25 14:57:46,446.446 INFO    ] 200
[2026-10-25 14:57:46,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:46,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:46,505.505 INFO    ] No update needed
[2026-10-25 14:57:46,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 14:57:46,541.541 INFO    ] 200
[2026-10-25 14:57:46,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:46,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:57:46,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:57:46,634.634 INFO    ] No camera update needed
[2026-10-25 14:57:46,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:57:46,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:57:46,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:57:46,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:57:48,693.693 INFO    ] ================================================
[2026-10-25 14:57:48,707.707 INFO    ] Launching Daemon at Sun Oct 25 14:57:48 IST 2026
[2026-10-25 14:57:48,718.718 INFO    ] ================================================
[2026-10-25 14:57:49,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:57:49
[2026-10-25 14:57:50,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:57:50,386.386 INFO    ] Initializing speech engine...
[2026-10-25 14:57:50,395.395 INFO    ] 2026-10-25 14:57:50
[2026-10-25 14:57:50,662.662 INFO    ] 2026-10-25 14:57:50
[2026-10-25 14:57:50,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:57:50,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:57:50,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:57:51,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:57:51,050.050 INFO    ] time= 25/10/2026 14:57:51
[2026-10-25 14:57:51,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:57:51,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:57:51,179.179 INFO    ] No existing commands found in stream
[2026-10-25 14:57:56,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:57:56,194.194 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 14:57:59,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:57:59,799.799 INFO    ] Checking for system updates...
[2026-10-25 14:57:59,836.836 INFO    ] 200
[2026-10-25 14:57:59,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:59,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:57:59,895.895 INFO    ] No update needed
[2026-10-25 14:57:59,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 14:57:59,933.933 INFO    ] 200
[2026-10-25 14:57:59,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:57:59,981.981 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:58:00,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:58:00,033.033 INFO    ] No camera update needed
[2026-10-25 14:58:00,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:58:00,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:58:00,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:58:00,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:58:02,091.091 INFO    ] ================================================
[2026-10-25 14:58:02,110.110 INFO    ] Launching Daemon at Sun Oct 25 14:58:02 IST 2026
[2026-10-25 14:58:02,125.125 INFO    ] ================================================
[2026-10-25 14:58:02,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:58:02
[2026-10-25 14:58:03,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:58:03,737.737 INFO    ] Initializing speech engine...
[2026-10-25 14:58:03,744.744 INFO    ] 2026-10-25 14:58:03
[2026-10-25 14:58:04,044.044 INFO    ] 2026-10-25 14:58:04
[2026-10-25 14:58:04,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:58:04,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:58:04,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:58:04,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:58:04,431.431 INFO    ] time= 25/10/2026 14:58:04
[2026-10-25 14:58:04,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:58:04,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:58:04,555.555 INFO    ] No existing commands found in stream
[2026-10-25 14:58:09,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:58:09,572.572 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 14:58:11,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:58:11,385.385 INFO    ] Checking for system updates...
[2026-10-25 14:58:11,421.421 INFO    ] 200
[2026-10-25 14:58:11,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:11,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:58:11,479.479 INFO    ] No update needed
[2026-10-25 14:58:11,481.481 INFO    ] Checking for camera pi updates...
[2026-10-25 14:58:11,515.515 INFO    ] 200
[2026-10-25 14:58:11,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:11,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:58:11,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:58:11,608.608 INFO    ] No camera update needed
[2026-10-25 14:58:11,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:58:11,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:58:11,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:58:11,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:58:13,663.663 INFO    ] ================================================
[2026-10-25 14:58:13,678.678 INFO    ] Launching Daemon at Sun Oct 25 14:58:13 IST 2026
[2026-10-25 14:58:13,689.689 INFO    ] ================================================
[2026-10-25 14:58:14,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:58:14
[2026-10-25 14:58:14,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:58:15,142.142 INFO    ] Initializing speech engine...
[2026-10-25 14:58:15,151.151 INFO    ] 2026-10-25 14:58:15
[2026-10-25 14:58:15,398.398 INFO    ] 2026-10-25 14:58:15
[2026-10-25 14:58:15,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:58:15,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:58:15,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:58:15,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:58:15,871.871 INFO    ] time= 25/10/2026 14:58:15
[2026-10-25 14:58:15,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:58:15,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:58:16,027.027 INFO    ] No existing commands found in stream
[2026-10-25 14:58:21,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:58:21,065.065 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 14:58:21,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 14:58:21,590.590 INFO    ] Checking for system updates...
[2026-10-25 14:58:21,626.626 INFO    ] 200
[2026-10-25 14:58:21,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:21,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:58:21,696.696 INFO    ] No update needed
[2026-10-25 14:58:21,698.698 INFO    ] Checking for camera pi updates...
[2026-10-25 14:58:21,733.733 INFO    ] 200
[2026-10-25 14:58:21,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:21,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:58:21,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:58:21,829.829 INFO    ] No camera update needed
[2026-10-25 14:58:21,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:58:21,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:58:21,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:58:21,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:58:23,887.887 INFO    ] ================================================
[2026-10-25 14:58:23,903.903 INFO    ] Launching Daemon at Sun Oct 25 14:58:23 IST 2026
[2026-10-25 14:58:23,914.914 INFO    ] ================================================
[2026-10-25 14:58:24,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:58:24
[2026-10-25 14:58:25,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:58:25,526.526 INFO    ] Initializing speech engine...
[2026-10-25 14:58:25,541.541 INFO    ] 2026-10-25 14:58:25
[2026-10-25 14:58:25,830.830 INFO    ] 2026-10-25 14:58:25
[2026-10-25 14:58:25,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:58:29,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:58:29,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:58:29,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:58:29,574.574 INFO    ] time= 25/10/2026 14:58:29
[2026-10-25 14:58:29,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:58:29,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:58:29,624.624 INFO    ] No existing commands found in stream
[2026-10-25 14:58:34,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:58:34,637.637 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 14:58:37,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:58:37,369.369 INFO    ] Checking for system updates...
[2026-10-25 14:58:37,406.406 INFO    ] 200
[2026-10-25 14:58:37,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:37,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:58:37,465.465 INFO    ] No update needed
[2026-10-25 14:58:37,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 14:58:37,501.501 INFO    ] 200
[2026-10-25 14:58:37,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:37,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:58:37,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:58:37,708.708 INFO    ] No camera update needed
[2026-10-25 14:58:37,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:58:37,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:58:37,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:58:37,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:58:39,762.762 INFO    ] ================================================
[2026-10-25 14:58:39,778.778 INFO    ] Launching Daemon at Sun Oct 25 14:58:39 IST 2026
[2026-10-25 14:58:39,789.789 INFO    ] ================================================
[2026-10-25 14:58:40,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:58:40
[2026-10-25 14:58:41,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:58:41,359.359 INFO    ] Initializing speech engine...
[2026-10-25 14:58:41,368.368 INFO    ] 2026-10-25 14:58:41
[2026-10-25 14:58:41,643.643 INFO    ] 2026-10-25 14:58:41
[2026-10-25 14:58:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:58:41,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:58:41,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:58:42,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:58:42,156.156 INFO    ] time= 25/10/2026 14:58:42
[2026-10-25 14:58:42,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:58:42,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:58:42,344.344 INFO    ] No existing commands found in stream
[2026-10-25 14:58:47,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:58:47,374.374 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 14:58:50,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:58:50,483.483 INFO    ] Checking for system updates...
[2026-10-25 14:58:50,520.520 INFO    ] 200
[2026-10-25 14:58:50,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:50,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:58:50,595.595 INFO    ] No update needed
[2026-10-25 14:58:50,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 14:58:50,632.632 INFO    ] 200
[2026-10-25 14:58:50,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:58:50,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:58:50,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:58:50,726.726 INFO    ] No camera update needed
[2026-10-25 14:58:50,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:58:50,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:58:50,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:58:50,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:58:52,781.781 INFO    ] ================================================
[2026-10-25 14:58:52,797.797 INFO    ] Launching Daemon at Sun Oct 25 14:58:52 IST 2026
[2026-10-25 14:58:52,812.812 INFO    ] ================================================
[2026-10-25 14:58:53,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:58:53
[2026-10-25 14:58:54,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:58:54,492.492 INFO    ] Initializing speech engine...
[2026-10-25 14:58:54,506.506 INFO    ] 2026-10-25 14:58:54
[2026-10-25 14:58:54,823.823 INFO    ] 2026-10-25 14:58:54
[2026-10-25 14:58:54,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:58:55,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:58:55,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:58:55,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:58:55,347.347 INFO    ] time= 25/10/2026 14:58:55
[2026-10-25 14:58:55,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:58:55,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:58:55,490.490 INFO    ] No existing commands found in stream
[2026-10-25 14:59:00,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:59:00,519.519 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 14:59:04,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:59:04,638.638 INFO    ] Checking for system updates...
[2026-10-25 14:59:04,681.681 INFO    ] 200
[2026-10-25 14:59:04,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:04,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:04,747.747 INFO    ] No update needed
[2026-10-25 14:59:04,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 14:59:04,783.783 INFO    ] 200
[2026-10-25 14:59:04,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:04,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:59:04,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:04,884.884 INFO    ] No camera update needed
[2026-10-25 14:59:04,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:59:04,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:59:04,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:59:04,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:59:06,942.942 INFO    ] ================================================
[2026-10-25 14:59:06,958.958 INFO    ] Launching Daemon at Sun Oct 25 14:59:06 IST 2026
[2026-10-25 14:59:06,970.970 INFO    ] ================================================
[2026-10-25 14:59:07,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:59:07
[2026-10-25 14:59:08,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:59:08,620.620 INFO    ] Initializing speech engine...
[2026-10-25 14:59:08,633.633 INFO    ] 2026-10-25 14:59:08
[2026-10-25 14:59:08,927.927 INFO    ] 2026-10-25 14:59:08
[2026-10-25 14:59:09,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:59:09,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:59:09,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:59:09,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:59:09,387.387 INFO    ] time= 25/10/2026 14:59:09
[2026-10-25 14:59:09,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:59:09,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:59:09,604.604 INFO    ] No existing commands found in stream
[2026-10-25 14:59:14,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:59:14,639.639 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 14:59:18,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 14:59:18,107.107 INFO    ] Checking for system updates...
[2026-10-25 14:59:18,145.145 INFO    ] 200
[2026-10-25 14:59:18,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:18,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:59:18,211.211 INFO    ] No update needed
[2026-10-25 14:59:18,214.214 INFO    ] Checking for camera pi updates...
[2026-10-25 14:59:18,248.248 INFO    ] 200
[2026-10-25 14:59:18,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:18,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:59:18,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:59:18,446.446 INFO    ] No camera update needed
[2026-10-25 14:59:18,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:59:18,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:59:18,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:59:18,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:59:20,502.502 INFO    ] ================================================
[2026-10-25 14:59:20,518.518 INFO    ] Launching Daemon at Sun Oct 25 14:59:20 IST 2026
[2026-10-25 14:59:20,529.529 INFO    ] ================================================
[2026-10-25 14:59:21,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:59:21
[2026-10-25 14:59:21,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:59:21,997.997 INFO    ] Initializing speech engine...
[2026-10-25 14:59:22,005.005 INFO    ] 2026-10-25 14:59:21
[2026-10-25 14:59:22,295.295 INFO    ] 2026-10-25 14:59:22
[2026-10-25 14:59:22,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:59:22,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:59:22,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:59:22,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:59:22,767.767 INFO    ] time= 25/10/2026 14:59:22
[2026-10-25 14:59:22,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:59:22,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:59:22,910.910 INFO    ] No existing commands found in stream
[2026-10-25 14:59:27,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:59:27,927.927 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 14:59:32,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 14:59:32,178.178 INFO    ] Checking for system updates...
[2026-10-25 14:59:32,220.220 INFO    ] 200
[2026-10-25 14:59:32,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:32,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:32,287.287 INFO    ] No update needed
[2026-10-25 14:59:32,290.290 INFO    ] Checking for camera pi updates...
[2026-10-25 14:59:32,328.328 INFO    ] 200
[2026-10-25 14:59:32,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:32,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:59:32,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:32,414.414 INFO    ] No camera update needed
[2026-10-25 14:59:32,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:59:32,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:59:32,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:59:32,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:59:34,476.476 INFO    ] ================================================
[2026-10-25 14:59:34,492.492 INFO    ] Launching Daemon at Sun Oct 25 14:59:34 IST 2026
[2026-10-25 14:59:34,502.502 INFO    ] ================================================
[2026-10-25 14:59:35,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:59:35
[2026-10-25 14:59:35,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:59:35,915.915 INFO    ] Initializing speech engine...
[2026-10-25 14:59:35,937.937 INFO    ] 2026-10-25 14:59:35
[2026-10-25 14:59:36,196.196 INFO    ] 2026-10-25 14:59:36
[2026-10-25 14:59:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:59:36,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:59:36,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:59:36,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:59:36,648.648 INFO    ] time= 25/10/2026 14:59:36
[2026-10-25 14:59:36,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:59:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:59:36,818.818 INFO    ] No existing commands found in stream
[2026-10-25 14:59:41,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:59:41,832.832 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 14:59:43,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 14:59:43,808.808 INFO    ] Checking for system updates...
[2026-10-25 14:59:43,849.849 INFO    ] 200
[2026-10-25 14:59:43,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:43,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:59:43,914.914 INFO    ] No update needed
[2026-10-25 14:59:43,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 14:59:43,955.955 INFO    ] 200
[2026-10-25 14:59:43,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:44,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:59:44,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 14:59:44,052.052 INFO    ] No camera update needed
[2026-10-25 14:59:44,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:59:44,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:59:44,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:59:44,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:59:46,110.110 INFO    ] ================================================
[2026-10-25 14:59:46,126.126 INFO    ] Launching Daemon at Sun Oct 25 14:59:46 IST 2026
[2026-10-25 14:59:46,138.138 INFO    ] ================================================
[2026-10-25 14:59:46,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 14:59:46
[2026-10-25 14:59:47,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 14:59:47,785.785 INFO    ] Initializing speech engine...
[2026-10-25 14:59:47,797.797 INFO    ] 2026-10-25 14:59:47
[2026-10-25 14:59:48,106.106 INFO    ] 2026-10-25 14:59:48
[2026-10-25 14:59:48,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 14:59:48,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 14:59:48,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 14:59:48,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 14:59:48,611.611 INFO    ] time= 25/10/2026 14:59:48
[2026-10-25 14:59:48,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 14:59:48,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-25 14:59:48,762.762 INFO    ] No existing commands found in stream
[2026-10-25 14:59:53,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 14:59:53,781.781 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 14:59:57,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 14:59:57,185.185 INFO    ] Checking for system updates...
[2026-10-25 14:59:57,221.221 INFO    ] 200
[2026-10-25 14:59:57,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:57,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:57,278.278 INFO    ] No update needed
[2026-10-25 14:59:57,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 14:59:57,318.318 INFO    ] 200
[2026-10-25 14:59:57,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 14:59:57,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 14:59:57,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 14:59:57,420.420 INFO    ] No camera update needed
[2026-10-25 14:59:57,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 14:59:57,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 14:59:57,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 14:59:57,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 14:59:59,475.475 INFO    ] ================================================
[2026-10-25 14:59:59,490.490 INFO    ] Launching Daemon at Sun Oct 25 14:59:59 IST 2026
[2026-10-25 14:59:59,501.501 INFO    ] ================================================
[2026-10-25 15:00:00,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:00:00
[2026-10-25 15:00:00,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:00:00,945.945 INFO    ] Initializing speech engine...
[2026-10-25 15:00:00,966.966 INFO    ] 2026-10-25 15:00:00
[2026-10-25 15:00:01,226.226 INFO    ] 2026-10-25 15:00:01
[2026-10-25 15:00:01,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:00:02,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:00:02,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:00:02,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:00:02,601.601 INFO    ] time= 25/10/2026 15:00:02
[2026-10-25 15:00:02,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:00:02,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:00:02,678.678 INFO    ] No existing commands found in stream
[2026-10-25 15:00:07,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:00:07,776.776 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 15:00:11,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:00:11,375.375 INFO    ] Checking for system updates...
[2026-10-25 15:00:11,416.416 INFO    ] 200
[2026-10-25 15:00:11,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:11,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:11,482.482 INFO    ] No update needed
[2026-10-25 15:00:11,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 15:00:11,522.522 INFO    ] 200
[2026-10-25 15:00:11,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:11,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:00:11,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:11,626.626 INFO    ] No camera update needed
[2026-10-25 15:00:11,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:00:11,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:00:11,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:00:11,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:00:13,682.682 INFO    ] ================================================
[2026-10-25 15:00:13,697.697 INFO    ] Launching Daemon at Sun Oct 25 15:00:13 IST 2026
[2026-10-25 15:00:13,708.708 INFO    ] ================================================
[2026-10-25 15:00:14,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:00:14
[2026-10-25 15:00:14,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:00:15,144.144 INFO    ] Initializing speech engine...
[2026-10-25 15:00:15,159.159 INFO    ] 2026-10-25 15:00:15
[2026-10-25 15:00:15,428.428 INFO    ] 2026-10-25 15:00:15
[2026-10-25 15:00:15,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:00:15,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:00:15,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:00:15,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:00:15,885.885 INFO    ] time= 25/10/2026 15:00:15
[2026-10-25 15:00:15,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:00:16,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:00:16,066.066 INFO    ] No existing commands found in stream
[2026-10-25 15:00:21,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:00:21,082.082 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 15:00:25,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:00:25,075.075 INFO    ] Checking for system updates...
[2026-10-25 15:00:25,116.116 INFO    ] 200
[2026-10-25 15:00:25,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:25,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:25,183.183 INFO    ] No update needed
[2026-10-25 15:00:25,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 15:00:25,219.219 INFO    ] 200
[2026-10-25 15:00:25,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:25,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:00:25,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:25,311.311 INFO    ] No camera update needed
[2026-10-25 15:00:25,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:00:25,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:00:25,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:00:25,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:00:27,368.368 INFO    ] ================================================
[2026-10-25 15:00:27,385.385 INFO    ] Launching Daemon at Sun Oct 25 15:00:27 IST 2026
[2026-10-25 15:00:27,397.397 INFO    ] ================================================
[2026-10-25 15:00:28,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:00:28
[2026-10-25 15:00:28,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:00:29,132.132 INFO    ] Initializing speech engine...
[2026-10-25 15:00:29,145.145 INFO    ] 2026-10-25 15:00:29
[2026-10-25 15:00:29,438.438 INFO    ] 2026-10-25 15:00:29
[2026-10-25 15:00:29,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:00:32,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:00:32,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:00:33,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:00:33,155.155 INFO    ] time= 25/10/2026 15:00:33
[2026-10-25 15:00:33,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:00:33,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:00:33,217.217 INFO    ] No existing commands found in stream
[2026-10-25 15:00:38,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:00:38,229.229 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 15:00:41,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:00:41,365.365 INFO    ] Checking for system updates...
[2026-10-25 15:00:41,405.405 INFO    ] 200
[2026-10-25 15:00:41,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:41,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:41,472.472 INFO    ] No update needed
[2026-10-25 15:00:41,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 15:00:41,513.513 INFO    ] 200
[2026-10-25 15:00:41,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:41,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:00:41,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:41,613.613 INFO    ] No camera update needed
[2026-10-25 15:00:41,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:00:41,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:00:41,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:00:41,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:00:43,671.671 INFO    ] ================================================
[2026-10-25 15:00:43,687.687 INFO    ] Launching Daemon at Sun Oct 25 15:00:43 IST 2026
[2026-10-25 15:00:43,698.698 INFO    ] ================================================
[2026-10-25 15:00:44,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:00:44
[2026-10-25 15:00:44,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:00:45,123.123 INFO    ] Initializing speech engine...
[2026-10-25 15:00:45,132.132 INFO    ] 2026-10-25 15:00:45
[2026-10-25 15:00:45,381.381 INFO    ] 2026-10-25 15:00:45
[2026-10-25 15:00:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:00:45,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:00:45,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:00:45,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:00:45,806.806 INFO    ] time= 25/10/2026 15:00:45
[2026-10-25 15:00:45,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:00:45,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:00:45,963.963 INFO    ] No existing commands found in stream
[2026-10-25 15:00:50,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:00:50,978.978 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 15:00:53,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:00:53,352.352 INFO    ] Checking for system updates...
[2026-10-25 15:00:53,388.388 INFO    ] 200
[2026-10-25 15:00:53,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:53,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:53,448.448 INFO    ] No update needed
[2026-10-25 15:00:53,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 15:00:53,488.488 INFO    ] 200
[2026-10-25 15:00:53,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:00:53,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:00:53,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:00:53,587.587 INFO    ] No camera update needed
[2026-10-25 15:00:53,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:00:53,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:00:53,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:00:53,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:00:55,643.643 INFO    ] ================================================
[2026-10-25 15:00:55,659.659 INFO    ] Launching Daemon at Sun Oct 25 15:00:55 IST 2026
[2026-10-25 15:00:55,672.672 INFO    ] ================================================
[2026-10-25 15:00:56,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:00:56
[2026-10-25 15:00:57,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:00:57,361.361 INFO    ] Initializing speech engine...
[2026-10-25 15:00:57,373.373 INFO    ] 2026-10-25 15:00:57
[2026-10-25 15:00:57,691.691 INFO    ] 2026-10-25 15:00:57
[2026-10-25 15:00:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:00:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:00:57,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:00:58,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:00:58,144.144 INFO    ] time= 25/10/2026 15:00:58
[2026-10-25 15:00:58,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:00:58,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:00:58,359.359 INFO    ] No existing commands found in stream
[2026-10-25 15:01:03,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:01:03,391.391 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 15:01:05,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:01:05,180.180 INFO    ] Checking for system updates...
[2026-10-25 15:01:05,218.218 INFO    ] 200
[2026-10-25 15:01:05,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:05,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:05,280.280 INFO    ] No update needed
[2026-10-25 15:01:05,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 15:01:05,319.319 INFO    ] 200
[2026-10-25 15:01:05,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:05,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:01:05,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:05,424.424 INFO    ] No camera update needed
[2026-10-25 15:01:05,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:01:05,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:01:05,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:01:05,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:01:07,481.481 INFO    ] ================================================
[2026-10-25 15:01:07,497.497 INFO    ] Launching Daemon at Sun Oct 25 15:01:07 IST 2026
[2026-10-25 15:01:07,508.508 INFO    ] ================================================
[2026-10-25 15:01:08,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:01:08
[2026-10-25 15:01:08,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:01:09,121.121 INFO    ] Initializing speech engine...
[2026-10-25 15:01:09,137.137 INFO    ] 2026-10-25 15:01:09
[2026-10-25 15:01:09,453.453 INFO    ] 2026-10-25 15:01:09
[2026-10-25 15:01:09,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:01:09,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:01:09,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:01:09,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:01:09,939.939 INFO    ] time= 25/10/2026 15:01:09
[2026-10-25 15:01:09,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:01:09,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:01:10,107.107 INFO    ] No existing commands found in stream
[2026-10-25 15:01:15,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:01:15,136.136 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 15:01:15,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:01:15,622.622 INFO    ] Checking for system updates...
[2026-10-25 15:01:15,665.665 INFO    ] 200
[2026-10-25 15:01:15,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:15,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:01:15,732.732 INFO    ] No update needed
[2026-10-25 15:01:15,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 15:01:15,774.774 INFO    ] 200
[2026-10-25 15:01:15,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:15,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:01:15,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:01:15,872.872 INFO    ] No camera update needed
[2026-10-25 15:01:15,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:01:15,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:01:15,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:01:15,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:01:17,926.926 INFO    ] ================================================
[2026-10-25 15:01:17,943.943 INFO    ] Launching Daemon at Sun Oct 25 15:01:17 IST 2026
[2026-10-25 15:01:17,954.954 INFO    ] ================================================
[2026-10-25 15:01:18,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:01:18
[2026-10-25 15:01:19,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:01:19,405.405 INFO    ] Initializing speech engine...
[2026-10-25 15:01:19,413.413 INFO    ] 2026-10-25 15:01:19
[2026-10-25 15:01:19,675.675 INFO    ] 2026-10-25 15:01:19
[2026-10-25 15:01:19,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:01:19,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:01:19,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:01:20,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:01:20,137.137 INFO    ] time= 25/10/2026 15:01:20
[2026-10-25 15:01:20,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:01:20,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:01:20,282.282 INFO    ] No existing commands found in stream
[2026-10-25 15:01:25,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:01:25,297.297 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 15:01:29,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:01:29,689.689 INFO    ] Checking for system updates...
[2026-10-25 15:01:29,726.726 INFO    ] 200
[2026-10-25 15:01:29,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:29,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:01:29,793.793 INFO    ] No update needed
[2026-10-25 15:01:29,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 15:01:29,834.834 INFO    ] 200
[2026-10-25 15:01:29,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:29,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:01:30,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:01:30,036.036 INFO    ] No camera update needed
[2026-10-25 15:01:30,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:01:30,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:01:30,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:01:30,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:01:32,092.092 INFO    ] ================================================
[2026-10-25 15:01:32,109.109 INFO    ] Launching Daemon at Sun Oct 25 15:01:32 IST 2026
[2026-10-25 15:01:32,121.121 INFO    ] ================================================
[2026-10-25 15:01:32,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:01:32
[2026-10-25 15:01:33,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:01:33,612.612 INFO    ] Initializing speech engine...
[2026-10-25 15:01:33,618.618 INFO    ] 2026-10-25 15:01:33
[2026-10-25 15:01:33,872.872 INFO    ] 2026-10-25 15:01:33
[2026-10-25 15:01:33,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:01:34,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:01:34,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:01:35,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:01:35,199.199 INFO    ] time= 25/10/2026 15:01:35
[2026-10-25 15:01:35,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:01:35,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:01:35,266.266 INFO    ] No existing commands found in stream
[2026-10-25 15:01:40,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:01:40,280.280 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 15:01:42,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:01:42,921.921 INFO    ] Checking for system updates...
[2026-10-25 15:01:42,958.958 INFO    ] 200
[2026-10-25 15:01:42,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:43,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:43,017.017 INFO    ] No update needed
[2026-10-25 15:01:43,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 15:01:43,057.057 INFO    ] 200
[2026-10-25 15:01:43,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:43,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:01:43,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:43,159.159 INFO    ] No camera update needed
[2026-10-25 15:01:43,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:01:43,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:01:43,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:01:43,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:01:45,215.215 INFO    ] ================================================
[2026-10-25 15:01:45,235.235 INFO    ] Launching Daemon at Sun Oct 25 15:01:45 IST 2026
[2026-10-25 15:01:45,246.246 INFO    ] ================================================
[2026-10-25 15:01:45,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:01:45
[2026-10-25 15:01:46,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:01:46,891.891 INFO    ] Initializing speech engine...
[2026-10-25 15:01:46,899.899 INFO    ] 2026-10-25 15:01:46
[2026-10-25 15:01:47,187.187 INFO    ] 2026-10-25 15:01:47
[2026-10-25 15:01:47,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:01:47,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:01:47,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:01:47,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:01:47,660.660 INFO    ] time= 25/10/2026 15:01:47
[2026-10-25 15:01:47,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:01:47,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:01:47,804.804 INFO    ] No existing commands found in stream
[2026-10-25 15:01:52,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:01:52,821.821 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 15:01:54,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:01:54,255.255 INFO    ] Checking for system updates...
[2026-10-25 15:01:54,296.296 INFO    ] 200
[2026-10-25 15:01:54,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:54,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:54,365.365 INFO    ] No update needed
[2026-10-25 15:01:54,368.368 INFO    ] Checking for camera pi updates...
[2026-10-25 15:01:54,404.404 INFO    ] 200
[2026-10-25 15:01:54,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:01:54,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:01:54,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:01:54,506.506 INFO    ] No camera update needed
[2026-10-25 15:01:54,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:01:54,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:01:54,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:01:54,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:01:56,567.567 INFO    ] ================================================
[2026-10-25 15:01:56,583.583 INFO    ] Launching Daemon at Sun Oct 25 15:01:56 IST 2026
[2026-10-25 15:01:56,594.594 INFO    ] ================================================
[2026-10-25 15:01:57,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:01:57
[2026-10-25 15:01:57,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:01:58,030.030 INFO    ] Initializing speech engine...
[2026-10-25 15:01:58,039.039 INFO    ] 2026-10-25 15:01:58
[2026-10-25 15:01:58,290.290 INFO    ] 2026-10-25 15:01:58
[2026-10-25 15:01:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:01:58,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:01:58,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:01:58,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:01:58,646.646 INFO    ] time= 25/10/2026 15:01:58
[2026-10-25 15:01:58,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:01:58,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:01:58,749.749 INFO    ] No existing commands found in stream
[2026-10-25 15:02:03,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:02:03,764.764 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 15:02:06,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:02:06,197.197 INFO    ] Checking for system updates...
[2026-10-25 15:02:06,246.246 INFO    ] 200
[2026-10-25 15:02:06,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:06,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:02:06,318.318 INFO    ] No update needed
[2026-10-25 15:02:06,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 15:02:06,369.369 INFO    ] 200
[2026-10-25 15:02:06,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:06,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:02:06,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:02:06,471.471 INFO    ] No camera update needed
[2026-10-25 15:02:06,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:02:06,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:02:06,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:02:06,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:02:08,532.532 INFO    ] ================================================
[2026-10-25 15:02:08,548.548 INFO    ] Launching Daemon at Sun Oct 25 15:02:08 IST 2026
[2026-10-25 15:02:08,559.559 INFO    ] ================================================
[2026-10-25 15:02:09,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:02:09
[2026-10-25 15:02:09,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:02:10,224.224 INFO    ] Initializing speech engine...
[2026-10-25 15:02:10,236.236 INFO    ] 2026-10-25 15:02:10
[2026-10-25 15:02:10,549.549 INFO    ] 2026-10-25 15:02:10
[2026-10-25 15:02:10,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:02:10,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:02:10,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:02:11,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:02:11,054.054 INFO    ] time= 25/10/2026 15:02:11
[2026-10-25 15:02:11,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:02:11,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:02:11,202.202 INFO    ] No existing commands found in stream
[2026-10-25 15:02:16,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:02:16,222.222 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 15:02:17,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:02:17,713.713 INFO    ] Checking for system updates...
[2026-10-25 15:02:17,756.756 INFO    ] 200
[2026-10-25 15:02:17,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:17,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:17,830.830 INFO    ] No update needed
[2026-10-25 15:02:17,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 15:02:17,873.873 INFO    ] 200
[2026-10-25 15:02:17,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:17,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:02:17,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:17,976.976 INFO    ] No camera update needed
[2026-10-25 15:02:17,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:02:17,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:02:17,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:02:17,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:02:20,035.035 INFO    ] ================================================
[2026-10-25 15:02:20,051.051 INFO    ] Launching Daemon at Sun Oct 25 15:02:20 IST 2026
[2026-10-25 15:02:20,063.063 INFO    ] ================================================
[2026-10-25 15:02:20,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:02:20
[2026-10-25 15:02:21,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:02:21,530.530 INFO    ] Initializing speech engine...
[2026-10-25 15:02:21,539.539 INFO    ] 2026-10-25 15:02:21
[2026-10-25 15:02:21,798.798 INFO    ] 2026-10-25 15:02:21
[2026-10-25 15:02:21,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:02:22,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:02:22,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:02:22,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:02:22,261.261 INFO    ] time= 25/10/2026 15:02:22
[2026-10-25 15:02:22,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:02:22,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:02:22,406.406 INFO    ] No existing commands found in stream
[2026-10-25 15:02:27,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:02:27,421.421 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 15:02:30,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:02:30,413.413 INFO    ] Checking for system updates...
[2026-10-25 15:02:30,448.448 INFO    ] 200
[2026-10-25 15:02:30,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:30,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:30,508.508 INFO    ] No update needed
[2026-10-25 15:02:30,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 15:02:30,545.545 INFO    ] 200
[2026-10-25 15:02:30,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:30,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:02:30,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:30,651.651 INFO    ] No camera update needed
[2026-10-25 15:02:30,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:02:30,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:02:30,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:02:30,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:02:32,709.709 INFO    ] ================================================
[2026-10-25 15:02:32,727.727 INFO    ] Launching Daemon at Sun Oct 25 15:02:32 IST 2026
[2026-10-25 15:02:32,739.739 INFO    ] ================================================
[2026-10-25 15:02:33,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:02:33
[2026-10-25 15:02:33,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:02:34,190.190 INFO    ] Initializing speech engine...
[2026-10-25 15:02:34,199.199 INFO    ] 2026-10-25 15:02:34
[2026-10-25 15:02:34,446.446 INFO    ] 2026-10-25 15:02:34
[2026-10-25 15:02:34,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:02:37,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:02:37,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:02:37,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:02:37,547.547 INFO    ] time= 25/10/2026 15:02:37
[2026-10-25 15:02:37,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:02:37,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:02:37,601.601 INFO    ] No existing commands found in stream
[2026-10-25 15:02:42,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:02:42,613.613 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 15:02:46,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:02:46,350.350 INFO    ] Checking for system updates...
[2026-10-25 15:02:46,390.390 INFO    ] 200
[2026-10-25 15:02:46,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:46,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:46,449.449 INFO    ] No update needed
[2026-10-25 15:02:46,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 15:02:46,486.486 INFO    ] 200
[2026-10-25 15:02:46,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:02:46,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:02:46,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:02:46,585.585 INFO    ] No camera update needed
[2026-10-25 15:02:46,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:02:46,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:02:46,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:02:46,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:02:48,642.642 INFO    ] ================================================
[2026-10-25 15:02:48,658.658 INFO    ] Launching Daemon at Sun Oct 25 15:02:48 IST 2026
[2026-10-25 15:02:48,668.668 INFO    ] ================================================
[2026-10-25 15:02:49,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:02:49
[2026-10-25 15:02:49,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:02:50,147.147 INFO    ] Initializing speech engine...
[2026-10-25 15:02:50,154.154 INFO    ] 2026-10-25 15:02:50
[2026-10-25 15:02:50,416.416 INFO    ] 2026-10-25 15:02:50
[2026-10-25 15:02:50,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:02:50,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:02:50,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:02:50,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:02:50,890.890 INFO    ] time= 25/10/2026 15:02:50
[2026-10-25 15:02:50,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:02:50,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:02:51,022.022 INFO    ] No existing commands found in stream
[2026-10-25 15:02:56,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:02:56,037.037 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 15:03:00,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:03:00,063.063 INFO    ] Checking for system updates...
[2026-10-25 15:03:00,100.100 INFO    ] 200
[2026-10-25 15:03:00,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:00,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:00,158.158 INFO    ] No update needed
[2026-10-25 15:03:00,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 15:03:00,200.200 INFO    ] 200
[2026-10-25 15:03:00,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:00,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:03:00,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:00,305.305 INFO    ] No camera update needed
[2026-10-25 15:03:00,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:03:00,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:03:00,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:03:00,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:03:02,365.365 INFO    ] ================================================
[2026-10-25 15:03:02,386.386 INFO    ] Launching Daemon at Sun Oct 25 15:03:02 IST 2026
[2026-10-25 15:03:02,399.399 INFO    ] ================================================
[2026-10-25 15:03:03,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:03:03
[2026-10-25 15:03:03,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:03:03,921.921 INFO    ] Initializing speech engine...
[2026-10-25 15:03:03,930.930 INFO    ] 2026-10-25 15:03:03
[2026-10-25 15:03:04,179.179 INFO    ] 2026-10-25 15:03:04
[2026-10-25 15:03:04,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:03:07,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:03:07,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:03:07,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:03:07,487.487 INFO    ] time= 25/10/2026 15:03:07
[2026-10-25 15:03:07,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:03:07,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:03:07,542.542 INFO    ] No existing commands found in stream
[2026-10-25 15:03:12,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:03:12,555.555 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 15:03:14,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:03:14,300.300 INFO    ] Checking for system updates...
[2026-10-25 15:03:14,341.341 INFO    ] 200
[2026-10-25 15:03:14,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:14,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:14,406.406 INFO    ] No update needed
[2026-10-25 15:03:14,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 15:03:14,446.446 INFO    ] 200
[2026-10-25 15:03:14,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:14,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:03:14,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:14,535.535 INFO    ] No camera update needed
[2026-10-25 15:03:14,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:03:14,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:03:14,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:03:14,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:03:16,592.592 INFO    ] ================================================
[2026-10-25 15:03:16,608.608 INFO    ] Launching Daemon at Sun Oct 25 15:03:16 IST 2026
[2026-10-25 15:03:16,619.619 INFO    ] ================================================
[2026-10-25 15:03:17,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:03:17
[2026-10-25 15:03:17,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:03:18,083.083 INFO    ] Initializing speech engine...
[2026-10-25 15:03:18,094.094 INFO    ] 2026-10-25 15:03:18
[2026-10-25 15:03:18,343.343 INFO    ] 2026-10-25 15:03:18
[2026-10-25 15:03:18,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:03:18,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:03:18,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:03:18,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:03:18,719.719 INFO    ] time= 25/10/2026 15:03:18
[2026-10-25 15:03:18,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:03:18,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:03:18,880.880 INFO    ] No existing commands found in stream
[2026-10-25 15:03:23,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:03:23,908.908 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 15:03:25,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:03:25,882.882 INFO    ] Checking for system updates...
[2026-10-25 15:03:25,923.923 INFO    ] 200
[2026-10-25 15:03:25,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:25,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:25,988.988 INFO    ] No update needed
[2026-10-25 15:03:25,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 15:03:26,028.028 INFO    ] 200
[2026-10-25 15:03:26,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:26,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:03:26,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:26,128.128 INFO    ] No camera update needed
[2026-10-25 15:03:26,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:03:26,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:03:26,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:03:26,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:03:28,182.182 INFO    ] ================================================
[2026-10-25 15:03:28,198.198 INFO    ] Launching Daemon at Sun Oct 25 15:03:28 IST 2026
[2026-10-25 15:03:28,209.209 INFO    ] ================================================
[2026-10-25 15:03:28,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:03:28
[2026-10-25 15:03:29,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:03:29,778.778 INFO    ] Initializing speech engine...
[2026-10-25 15:03:29,790.790 INFO    ] 2026-10-25 15:03:29
[2026-10-25 15:03:30,056.056 INFO    ] 2026-10-25 15:03:30
[2026-10-25 15:03:30,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:03:30,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:03:30,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:03:30,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:03:30,426.426 INFO    ] time= 25/10/2026 15:03:30
[2026-10-25 15:03:30,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:03:30,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:03:30,602.602 INFO    ] No existing commands found in stream
[2026-10-25 15:03:35,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:03:35,630.630 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 15:03:39,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:03:39,040.040 INFO    ] Checking for system updates...
[2026-10-25 15:03:39,081.081 INFO    ] 200
[2026-10-25 15:03:39,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:39,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:39,145.145 INFO    ] No update needed
[2026-10-25 15:03:39,147.147 INFO    ] Checking for camera pi updates...
[2026-10-25 15:03:39,187.187 INFO    ] 200
[2026-10-25 15:03:39,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:39,243.243 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:03:39,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:03:39,297.297 INFO    ] No camera update needed
[2026-10-25 15:03:39,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:03:39,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:03:39,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:03:39,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:03:41,357.357 INFO    ] ================================================
[2026-10-25 15:03:41,373.373 INFO    ] Launching Daemon at Sun Oct 25 15:03:41 IST 2026
[2026-10-25 15:03:41,384.384 INFO    ] ================================================
[2026-10-25 15:03:42,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:03:42
[2026-10-25 15:03:42,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:03:42,870.870 INFO    ] Initializing speech engine...
[2026-10-25 15:03:42,878.878 INFO    ] 2026-10-25 15:03:42
[2026-10-25 15:03:43,160.160 INFO    ] 2026-10-25 15:03:43
[2026-10-25 15:03:43,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:03:43,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:03:43,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:03:43,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:03:43,535.535 INFO    ] time= 25/10/2026 15:03:43
[2026-10-25 15:03:43,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:03:43,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:03:43,610.610 INFO    ] No existing commands found in stream
[2026-10-25 15:03:48,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:03:48,626.626 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 15:03:52,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:03:52,369.369 INFO    ] Checking for system updates...
[2026-10-25 15:03:52,409.409 INFO    ] 200
[2026-10-25 15:03:52,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:52,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:03:52,475.475 INFO    ] No update needed
[2026-10-25 15:03:52,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 15:03:52,512.512 INFO    ] 200
[2026-10-25 15:03:52,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:03:52,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:03:52,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:03:52,605.605 INFO    ] No camera update needed
[2026-10-25 15:03:52,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:03:52,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:03:52,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:03:52,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:03:54,663.663 INFO    ] ================================================
[2026-10-25 15:03:54,679.679 INFO    ] Launching Daemon at Sun Oct 25 15:03:54 IST 2026
[2026-10-25 15:03:54,690.690 INFO    ] ================================================
[2026-10-25 15:03:55,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:03:55
[2026-10-25 15:03:55,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:03:56,145.145 INFO    ] Initializing speech engine...
[2026-10-25 15:03:56,161.161 INFO    ] 2026-10-25 15:03:56
[2026-10-25 15:03:56,480.480 INFO    ] 2026-10-25 15:03:56
[2026-10-25 15:03:56,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:03:56,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:03:56,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:03:56,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:03:56,984.984 INFO    ] time= 25/10/2026 15:03:56
[2026-10-25 15:03:57,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:03:57,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:03:57,139.139 INFO    ] No existing commands found in stream
[2026-10-25 15:04:02,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:04:02,156.156 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 15:04:03,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:04:03,545.545 INFO    ] Checking for system updates...
[2026-10-25 15:04:03,585.585 INFO    ] 200
[2026-10-25 15:04:03,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:03,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:03,644.644 INFO    ] No update needed
[2026-10-25 15:04:03,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 15:04:03,681.681 INFO    ] 200
[2026-10-25 15:04:03,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:03,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:04:03,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:03,774.774 INFO    ] No camera update needed
[2026-10-25 15:04:03,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:04:03,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:04:03,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:04:03,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:04:05,831.831 INFO    ] ================================================
[2026-10-25 15:04:05,847.847 INFO    ] Launching Daemon at Sun Oct 25 15:04:05 IST 2026
[2026-10-25 15:04:05,858.858 INFO    ] ================================================
[2026-10-25 15:04:06,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:04:06
[2026-10-25 15:04:07,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:04:07,455.455 INFO    ] Initializing speech engine...
[2026-10-25 15:04:07,463.463 INFO    ] 2026-10-25 15:04:07
[2026-10-25 15:04:07,707.707 INFO    ] 2026-10-25 15:04:07
[2026-10-25 15:04:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:04:09,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:04:09,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:04:09,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:04:09,912.912 INFO    ] time= 25/10/2026 15:04:09
[2026-10-25 15:04:09,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:04:09,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:04:10,029.029 INFO    ] No existing commands found in stream
[2026-10-25 15:04:15,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:04:15,044.044 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 15:04:16,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:04:16,285.285 INFO    ] Checking for system updates...
[2026-10-25 15:04:16,322.322 INFO    ] 200
[2026-10-25 15:04:16,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:16,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:16,387.387 INFO    ] No update needed
[2026-10-25 15:04:16,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 15:04:16,423.423 INFO    ] 200
[2026-10-25 15:04:16,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:16,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:04:16,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:16,539.539 INFO    ] No camera update needed
[2026-10-25 15:04:16,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:04:16,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:04:16,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:04:16,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:04:18,594.594 INFO    ] ================================================
[2026-10-25 15:04:18,609.609 INFO    ] Launching Daemon at Sun Oct 25 15:04:18 IST 2026
[2026-10-25 15:04:18,621.621 INFO    ] ================================================
[2026-10-25 15:04:19,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:04:19
[2026-10-25 15:04:19,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:04:20,246.246 INFO    ] Initializing speech engine...
[2026-10-25 15:04:20,260.260 INFO    ] 2026-10-25 15:04:20
[2026-10-25 15:04:20,572.572 INFO    ] 2026-10-25 15:04:20
[2026-10-25 15:04:20,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:04:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:04:20,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:04:21,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:04:21,073.073 INFO    ] time= 25/10/2026 15:04:21
[2026-10-25 15:04:21,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:04:21,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:04:21,219.219 INFO    ] No existing commands found in stream
[2026-10-25 15:04:26,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:04:26,245.245 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 15:04:30,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:04:30,097.097 INFO    ] Checking for system updates...
[2026-10-25 15:04:30,138.138 INFO    ] 200
[2026-10-25 15:04:30,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:30,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:04:30,200.200 INFO    ] No update needed
[2026-10-25 15:04:30,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 15:04:30,238.238 INFO    ] 200
[2026-10-25 15:04:30,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:30,287.287 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:04:30,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:04:30,343.343 INFO    ] No camera update needed
[2026-10-25 15:04:30,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:04:30,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:04:30,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:04:30,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:04:32,403.403 INFO    ] ================================================
[2026-10-25 15:04:32,424.424 INFO    ] Launching Daemon at Sun Oct 25 15:04:32 IST 2026
[2026-10-25 15:04:32,435.435 INFO    ] ================================================
[2026-10-25 15:04:33,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:04:33
[2026-10-25 15:04:33,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:04:33,893.893 INFO    ] Initializing speech engine...
[2026-10-25 15:04:33,912.912 INFO    ] 2026-10-25 15:04:33
[2026-10-25 15:04:34,177.177 INFO    ] 2026-10-25 15:04:34
[2026-10-25 15:04:34,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:04:34,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:04:34,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:04:34,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:04:34,588.588 INFO    ] time= 25/10/2026 15:04:34
[2026-10-25 15:04:34,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:04:34,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:04:34,676.676 INFO    ] No existing commands found in stream
[2026-10-25 15:04:39,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:04:39,692.692 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 15:04:41,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:04:41,566.566 INFO    ] Checking for system updates...
[2026-10-25 15:04:41,603.603 INFO    ] 200
[2026-10-25 15:04:41,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:41,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:41,668.668 INFO    ] No update needed
[2026-10-25 15:04:41,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 15:04:41,705.705 INFO    ] 200
[2026-10-25 15:04:41,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:41,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:04:41,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:41,808.808 INFO    ] No camera update needed
[2026-10-25 15:04:41,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:04:41,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:04:41,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:04:41,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:04:43,872.872 INFO    ] ================================================
[2026-10-25 15:04:43,889.889 INFO    ] Launching Daemon at Sun Oct 25 15:04:43 IST 2026
[2026-10-25 15:04:43,900.900 INFO    ] ================================================
[2026-10-25 15:04:44,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:04:44
[2026-10-25 15:04:45,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:04:45,462.462 INFO    ] Initializing speech engine...
[2026-10-25 15:04:45,479.479 INFO    ] 2026-10-25 15:04:45
[2026-10-25 15:04:45,755.755 INFO    ] 2026-10-25 15:04:45
[2026-10-25 15:04:45,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:04:45,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:04:45,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:04:46,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:04:46,149.149 INFO    ] time= 25/10/2026 15:04:46
[2026-10-25 15:04:46,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:04:46,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:04:46,323.323 INFO    ] No existing commands found in stream
[2026-10-25 15:04:51,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:04:51,351.351 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 15:04:52,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:04:52,494.494 INFO    ] Checking for system updates...
[2026-10-25 15:04:52,534.534 INFO    ] 200
[2026-10-25 15:04:52,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:52,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:52,593.593 INFO    ] No update needed
[2026-10-25 15:04:52,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 15:04:52,634.634 INFO    ] 200
[2026-10-25 15:04:52,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:04:52,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:04:52,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:04:52,728.728 INFO    ] No camera update needed
[2026-10-25 15:04:52,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:04:52,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:04:52,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:04:52,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:04:54,784.784 INFO    ] ================================================
[2026-10-25 15:04:54,800.800 INFO    ] Launching Daemon at Sun Oct 25 15:04:54 IST 2026
[2026-10-25 15:04:54,811.811 INFO    ] ================================================
[2026-10-25 15:04:55,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:04:55
[2026-10-25 15:04:56,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:04:56,465.465 INFO    ] Initializing speech engine...
[2026-10-25 15:04:56,477.477 INFO    ] 2026-10-25 15:04:56
[2026-10-25 15:04:56,787.787 INFO    ] 2026-10-25 15:04:56
[2026-10-25 15:04:56,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:04:57,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:04:57,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:04:57,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:04:57,300.300 INFO    ] time= 25/10/2026 15:04:57
[2026-10-25 15:04:57,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:04:57,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:04:57,406.406 INFO    ] No existing commands found in stream
[2026-10-25 15:05:02,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:05:02,433.433 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 15:05:03,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:05:03,763.763 INFO    ] Checking for system updates...
[2026-10-25 15:05:03,803.803 INFO    ] 200
[2026-10-25 15:05:03,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:03,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:03,867.867 INFO    ] No update needed
[2026-10-25 15:05:03,869.869 INFO    ] Checking for camera pi updates...
[2026-10-25 15:05:03,904.904 INFO    ] 200
[2026-10-25 15:05:03,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:03,952.952 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:05:04,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:04,003.003 INFO    ] No camera update needed
[2026-10-25 15:05:04,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:05:04,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:05:04,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:05:04,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:05:06,057.057 INFO    ] ================================================
[2026-10-25 15:05:06,073.073 INFO    ] Launching Daemon at Sun Oct 25 15:05:06 IST 2026
[2026-10-25 15:05:06,084.084 INFO    ] ================================================
[2026-10-25 15:05:06,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:05:06
[2026-10-25 15:05:07,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:05:07,684.684 INFO    ] Initializing speech engine...
[2026-10-25 15:05:07,702.702 INFO    ] 2026-10-25 15:05:07
[2026-10-25 15:05:07,977.977 INFO    ] 2026-10-25 15:05:07
[2026-10-25 15:05:08,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:05:11,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:05:11,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:05:11,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:05:11,948.948 INFO    ] time= 25/10/2026 15:05:11
[2026-10-25 15:05:11,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:05:11,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:05:11,997.997 INFO    ] No existing commands found in stream
[2026-10-25 15:05:17,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:05:17,010.010 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 15:05:20,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:05:20,615.615 INFO    ] Checking for system updates...
[2026-10-25 15:05:20,655.655 INFO    ] 200
[2026-10-25 15:05:20,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:20,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:20,713.713 INFO    ] No update needed
[2026-10-25 15:05:20,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 15:05:20,754.754 INFO    ] 200
[2026-10-25 15:05:20,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:20,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:05:20,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:20,849.849 INFO    ] No camera update needed
[2026-10-25 15:05:20,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:05:20,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:05:20,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:05:20,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:05:22,905.905 INFO    ] ================================================
[2026-10-25 15:05:22,920.920 INFO    ] Launching Daemon at Sun Oct 25 15:05:22 IST 2026
[2026-10-25 15:05:22,932.932 INFO    ] ================================================
[2026-10-25 15:05:23,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:05:23
[2026-10-25 15:05:24,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:05:24,580.580 INFO    ] Initializing speech engine...
[2026-10-25 15:05:24,592.592 INFO    ] 2026-10-25 15:05:24
[2026-10-25 15:05:24,874.874 INFO    ] 2026-10-25 15:05:24
[2026-10-25 15:05:24,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:05:25,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:05:25,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:05:25,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:05:25,323.323 INFO    ] time= 25/10/2026 15:05:25
[2026-10-25 15:05:25,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:05:25,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:05:25,531.531 INFO    ] No existing commands found in stream
[2026-10-25 15:05:30,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:05:30,562.562 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 15:05:33,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:05:33,020.020 INFO    ] Checking for system updates...
[2026-10-25 15:05:33,069.069 INFO    ] 200
[2026-10-25 15:05:33,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:33,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:33,150.150 INFO    ] No update needed
[2026-10-25 15:05:33,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 15:05:33,189.189 INFO    ] 200
[2026-10-25 15:05:33,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:33,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:05:33,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:33,393.393 INFO    ] No camera update needed
[2026-10-25 15:05:33,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:05:33,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:05:33,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:05:33,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:05:35,452.452 INFO    ] ================================================
[2026-10-25 15:05:35,468.468 INFO    ] Launching Daemon at Sun Oct 25 15:05:35 IST 2026
[2026-10-25 15:05:35,479.479 INFO    ] ================================================
[2026-10-25 15:05:36,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:05:36
[2026-10-25 15:05:36,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:05:36,909.909 INFO    ] Initializing speech engine...
[2026-10-25 15:05:36,918.918 INFO    ] 2026-10-25 15:05:36
[2026-10-25 15:05:37,165.165 INFO    ] 2026-10-25 15:05:37
[2026-10-25 15:05:37,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:05:37,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:05:37,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:05:37,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:05:37,597.597 INFO    ] time= 25/10/2026 15:05:37
[2026-10-25 15:05:37,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:05:37,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:05:37,769.769 INFO    ] No existing commands found in stream
[2026-10-25 15:05:42,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:05:42,796.796 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 15:05:45,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:05:45,410.410 INFO    ] Checking for system updates...
[2026-10-25 15:05:45,452.452 INFO    ] 200
[2026-10-25 15:05:45,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:45,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:45,513.513 INFO    ] No update needed
[2026-10-25 15:05:45,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 15:05:45,555.555 INFO    ] 200
[2026-10-25 15:05:45,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:45,605.605 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:05:45,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:45,669.669 INFO    ] No camera update needed
[2026-10-25 15:05:45,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:05:45,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:05:45,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:05:45,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:05:47,729.729 INFO    ] ================================================
[2026-10-25 15:05:47,746.746 INFO    ] Launching Daemon at Sun Oct 25 15:05:47 IST 2026
[2026-10-25 15:05:47,757.757 INFO    ] ================================================
[2026-10-25 15:05:48,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:05:48
[2026-10-25 15:05:48,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:05:49,185.185 INFO    ] Initializing speech engine...
[2026-10-25 15:05:49,194.194 INFO    ] 2026-10-25 15:05:49
[2026-10-25 15:05:49,486.486 INFO    ] 2026-10-25 15:05:49
[2026-10-25 15:05:49,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:05:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:05:49,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:05:49,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:05:49,863.863 INFO    ] time= 25/10/2026 15:05:49
[2026-10-25 15:05:49,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:05:49,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:05:49,986.986 INFO    ] No existing commands found in stream
[2026-10-25 15:05:54,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:05:55,002.002 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 15:05:55,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:05:55,551.551 INFO    ] Checking for system updates...
[2026-10-25 15:05:55,588.588 INFO    ] 200
[2026-10-25 15:05:55,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:55,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:55,652.652 INFO    ] No update needed
[2026-10-25 15:05:55,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 15:05:55,692.692 INFO    ] 200
[2026-10-25 15:05:55,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:05:55,740.740 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:05:55,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:05:55,790.790 INFO    ] No camera update needed
[2026-10-25 15:05:55,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:05:55,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:05:55,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:05:55,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:05:57,845.845 INFO    ] ================================================
[2026-10-25 15:05:57,860.860 INFO    ] Launching Daemon at Sun Oct 25 15:05:57 IST 2026
[2026-10-25 15:05:57,872.872 INFO    ] ================================================
[2026-10-25 15:05:58,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:05:58
[2026-10-25 15:05:59,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:05:59,270.270 INFO    ] Initializing speech engine...
[2026-10-25 15:05:59,283.283 INFO    ] 2026-10-25 15:05:59
[2026-10-25 15:05:59,545.545 INFO    ] 2026-10-25 15:05:59
[2026-10-25 15:05:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:05:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:05:59,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:05:59,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:06:00,013.013 INFO    ] time= 25/10/2026 15:05:59
[2026-10-25 15:06:00,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:06:00,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:06:00,157.157 INFO    ] No existing commands found in stream
[2026-10-25 15:06:05,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:06:05,172.172 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 15:06:08,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:06:08,723.723 INFO    ] Checking for system updates...
[2026-10-25 15:06:08,759.759 INFO    ] 200
[2026-10-25 15:06:08,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:08,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:08,819.819 INFO    ] No update needed
[2026-10-25 15:06:08,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 15:06:08,860.860 INFO    ] 200
[2026-10-25 15:06:08,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:08,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:06:08,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:08,952.952 INFO    ] No camera update needed
[2026-10-25 15:06:08,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:06:08,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:06:08,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:06:08,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:06:11,007.007 INFO    ] ================================================
[2026-10-25 15:06:11,023.023 INFO    ] Launching Daemon at Sun Oct 25 15:06:11 IST 2026
[2026-10-25 15:06:11,035.035 INFO    ] ================================================
[2026-10-25 15:06:11,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:06:11
[2026-10-25 15:06:12,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:06:12,483.483 INFO    ] Initializing speech engine...
[2026-10-25 15:06:12,492.492 INFO    ] 2026-10-25 15:06:12
[2026-10-25 15:06:12,792.792 INFO    ] 2026-10-25 15:06:12
[2026-10-25 15:06:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:06:16,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:06:16,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:06:16,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:06:16,973.973 INFO    ] time= 25/10/2026 15:06:16
[2026-10-25 15:06:16,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:06:16,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:06:17,032.032 INFO    ] No existing commands found in stream
[2026-10-25 15:06:22,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:06:22,044.044 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 15:06:25,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:06:25,375.375 INFO    ] Checking for system updates...
[2026-10-25 15:06:25,416.416 INFO    ] 200
[2026-10-25 15:06:25,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:25,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:25,482.482 INFO    ] No update needed
[2026-10-25 15:06:25,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 15:06:25,519.519 INFO    ] 200
[2026-10-25 15:06:25,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:25,568.568 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:06:25,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:25,621.621 INFO    ] No camera update needed
[2026-10-25 15:06:25,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:06:25,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:06:25,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:06:25,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:06:27,675.675 INFO    ] ================================================
[2026-10-25 15:06:27,691.691 INFO    ] Launching Daemon at Sun Oct 25 15:06:27 IST 2026
[2026-10-25 15:06:27,702.702 INFO    ] ================================================
[2026-10-25 15:06:28,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:06:28
[2026-10-25 15:06:28,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:06:29,131.131 INFO    ] Initializing speech engine...
[2026-10-25 15:06:29,151.151 INFO    ] 2026-10-25 15:06:29
[2026-10-25 15:06:29,410.410 INFO    ] 2026-10-25 15:06:29
[2026-10-25 15:06:29,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:06:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:06:29,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:06:29,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:06:29,786.786 INFO    ] time= 25/10/2026 15:06:29
[2026-10-25 15:06:29,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:06:29,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:06:29,962.962 INFO    ] No existing commands found in stream
[2026-10-25 15:06:34,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:06:34,989.989 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 15:06:36,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:06:36,099.099 INFO    ] Checking for system updates...
[2026-10-25 15:06:36,139.139 INFO    ] 200
[2026-10-25 15:06:36,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:36,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:36,196.196 INFO    ] No update needed
[2026-10-25 15:06:36,198.198 INFO    ] Checking for camera pi updates...
[2026-10-25 15:06:36,232.232 INFO    ] 200
[2026-10-25 15:06:36,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:36,276.276 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:06:36,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:36,328.328 INFO    ] No camera update needed
[2026-10-25 15:06:36,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:06:36,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:06:36,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:06:36,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:06:38,385.385 INFO    ] ================================================
[2026-10-25 15:06:38,401.401 INFO    ] Launching Daemon at Sun Oct 25 15:06:38 IST 2026
[2026-10-25 15:06:38,412.412 INFO    ] ================================================
[2026-10-25 15:06:38,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:06:38
[2026-10-25 15:06:39,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:06:39,873.873 INFO    ] Initializing speech engine...
[2026-10-25 15:06:39,882.882 INFO    ] 2026-10-25 15:06:39
[2026-10-25 15:06:40,145.145 INFO    ] 2026-10-25 15:06:40
[2026-10-25 15:06:40,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:06:40,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:06:40,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:06:40,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:06:40,614.614 INFO    ] time= 25/10/2026 15:06:40
[2026-10-25 15:06:40,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:06:40,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:06:40,761.761 INFO    ] No existing commands found in stream
[2026-10-25 15:06:45,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:06:45,799.799 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 15:06:48,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:06:48,938.938 INFO    ] Checking for system updates...
[2026-10-25 15:06:48,978.978 INFO    ] 200
[2026-10-25 15:06:48,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:49,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:49,044.044 INFO    ] No update needed
[2026-10-25 15:06:49,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 15:06:49,082.082 INFO    ] 200
[2026-10-25 15:06:49,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:06:49,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:06:49,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:06:49,179.179 INFO    ] No camera update needed
[2026-10-25 15:06:49,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:06:49,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:06:49,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:06:49,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:06:51,235.235 INFO    ] ================================================
[2026-10-25 15:06:51,250.250 INFO    ] Launching Daemon at Sun Oct 25 15:06:51 IST 2026
[2026-10-25 15:06:51,262.262 INFO    ] ================================================
[2026-10-25 15:06:51,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:06:51
[2026-10-25 15:06:52,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:06:52,725.725 INFO    ] Initializing speech engine...
[2026-10-25 15:06:52,734.734 INFO    ] 2026-10-25 15:06:52
[2026-10-25 15:06:52,996.996 INFO    ] 2026-10-25 15:06:52
[2026-10-25 15:06:53,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:06:53,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:06:53,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:06:53,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:06:53,453.453 INFO    ] time= 25/10/2026 15:06:53
[2026-10-25 15:06:53,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:06:53,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:06:53,664.664 INFO    ] No existing commands found in stream
[2026-10-25 15:06:58,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:06:58,695.695 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 15:07:01,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:07:01,566.566 INFO    ] Checking for system updates...
[2026-10-25 15:07:01,608.608 INFO    ] 200
[2026-10-25 15:07:01,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:01,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:01,675.675 INFO    ] No update needed
[2026-10-25 15:07:01,677.677 INFO    ] Checking for camera pi updates...
[2026-10-25 15:07:01,716.716 INFO    ] 200
[2026-10-25 15:07:01,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:01,761.761 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:07:01,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:01,805.805 INFO    ] No camera update needed
[2026-10-25 15:07:01,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:07:01,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:07:01,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:07:01,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:07:03,871.871 INFO    ] ================================================
[2026-10-25 15:07:03,890.890 INFO    ] Launching Daemon at Sun Oct 25 15:07:03 IST 2026
[2026-10-25 15:07:03,905.905 INFO    ] ================================================
[2026-10-25 15:07:04,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:07:04
[2026-10-25 15:07:05,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:07:05,324.324 INFO    ] Initializing speech engine...
[2026-10-25 15:07:05,331.331 INFO    ] 2026-10-25 15:07:05
[2026-10-25 15:07:05,626.626 INFO    ] 2026-10-25 15:07:05
[2026-10-25 15:07:05,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:07:05,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:07:05,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:07:05,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:07:05,984.984 INFO    ] time= 25/10/2026 15:07:05
[2026-10-25 15:07:06,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:07:06,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:07:06,071.071 INFO    ] No existing commands found in stream
[2026-10-25 15:07:11,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:07:11,110.110 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 15:07:14,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:07:14,894.894 INFO    ] Checking for system updates...
[2026-10-25 15:07:14,930.930 INFO    ] 200
[2026-10-25 15:07:14,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:14,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:14,988.988 INFO    ] No update needed
[2026-10-25 15:07:14,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 15:07:15,029.029 INFO    ] 200
[2026-10-25 15:07:15,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:15,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:07:15,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:15,125.125 INFO    ] No camera update needed
[2026-10-25 15:07:15,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:07:15,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:07:15,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:07:15,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:07:17,180.180 INFO    ] ================================================
[2026-10-25 15:07:17,196.196 INFO    ] Launching Daemon at Sun Oct 25 15:07:17 IST 2026
[2026-10-25 15:07:17,207.207 INFO    ] ================================================
[2026-10-25 15:07:17,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:07:17
[2026-10-25 15:07:18,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:07:18,847.847 INFO    ] Initializing speech engine...
[2026-10-25 15:07:18,855.855 INFO    ] 2026-10-25 15:07:18
[2026-10-25 15:07:19,143.143 INFO    ] 2026-10-25 15:07:19
[2026-10-25 15:07:19,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:07:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:07:19,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:07:19,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:07:19,691.691 INFO    ] time= 25/10/2026 15:07:19
[2026-10-25 15:07:19,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:07:19,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:07:19,830.830 INFO    ] No existing commands found in stream
[2026-10-25 15:07:24,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:07:24,859.859 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 15:07:28,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:07:28,832.832 INFO    ] Checking for system updates...
[2026-10-25 15:07:28,873.873 INFO    ] 200
[2026-10-25 15:07:28,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:28,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:28,931.931 INFO    ] No update needed
[2026-10-25 15:07:28,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 15:07:28,971.971 INFO    ] 200
[2026-10-25 15:07:28,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:29,020.020 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:07:29,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:29,069.069 INFO    ] No camera update needed
[2026-10-25 15:07:29,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:07:29,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:07:29,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:07:29,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:07:31,124.124 INFO    ] ================================================
[2026-10-25 15:07:31,139.139 INFO    ] Launching Daemon at Sun Oct 25 15:07:31 IST 2026
[2026-10-25 15:07:31,150.150 INFO    ] ================================================
[2026-10-25 15:07:31,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:07:31
[2026-10-25 15:07:32,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:07:32,773.773 INFO    ] Initializing speech engine...
[2026-10-25 15:07:32,787.787 INFO    ] 2026-10-25 15:07:32
[2026-10-25 15:07:33,093.093 INFO    ] 2026-10-25 15:07:33
[2026-10-25 15:07:33,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:07:33,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:07:33,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:07:33,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:07:33,586.586 INFO    ] time= 25/10/2026 15:07:33
[2026-10-25 15:07:33,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:07:33,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:07:33,744.744 INFO    ] No existing commands found in stream
[2026-10-25 15:07:38,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:07:38,779.779 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 15:07:40,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:07:40,641.641 INFO    ] Checking for system updates...
[2026-10-25 15:07:40,677.677 INFO    ] 200
[2026-10-25 15:07:40,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:40,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:40,734.734 INFO    ] No update needed
[2026-10-25 15:07:40,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 15:07:40,774.774 INFO    ] 200
[2026-10-25 15:07:40,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:40,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:07:40,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:07:40,981.981 INFO    ] No camera update needed
[2026-10-25 15:07:40,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:07:40,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:07:40,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:07:40,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:07:43,037.037 INFO    ] ================================================
[2026-10-25 15:07:43,053.053 INFO    ] Launching Daemon at Sun Oct 25 15:07:43 IST 2026
[2026-10-25 15:07:43,065.065 INFO    ] ================================================
[2026-10-25 15:07:43,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:07:43
[2026-10-25 15:07:44,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:07:44,718.718 INFO    ] Initializing speech engine...
[2026-10-25 15:07:44,724.724 INFO    ] 2026-10-25 15:07:44
[2026-10-25 15:07:45,039.039 INFO    ] 2026-10-25 15:07:45
[2026-10-25 15:07:45,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:07:45,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:07:45,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:07:45,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:07:45,545.545 INFO    ] time= 25/10/2026 15:07:45
[2026-10-25 15:07:45,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:07:45,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:07:45,692.692 INFO    ] No existing commands found in stream
[2026-10-25 15:07:50,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:07:50,720.720 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 15:07:52,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:07:52,257.257 INFO    ] Checking for system updates...
[2026-10-25 15:07:52,294.294 INFO    ] 200
[2026-10-25 15:07:52,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:52,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:07:52,362.362 INFO    ] No update needed
[2026-10-25 15:07:52,365.365 INFO    ] Checking for camera pi updates...
[2026-10-25 15:07:52,404.404 INFO    ] 200
[2026-10-25 15:07:52,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:07:52,450.450 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:07:52,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:07:52,500.500 INFO    ] No camera update needed
[2026-10-25 15:07:52,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:07:52,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:07:52,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:07:52,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:07:54,560.560 INFO    ] ================================================
[2026-10-25 15:07:54,576.576 INFO    ] Launching Daemon at Sun Oct 25 15:07:54 IST 2026
[2026-10-25 15:07:54,587.587 INFO    ] ================================================
[2026-10-25 15:07:55,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:07:55
[2026-10-25 15:07:55,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:07:56,227.227 INFO    ] Initializing speech engine...
[2026-10-25 15:07:56,242.242 INFO    ] 2026-10-25 15:07:56
[2026-10-25 15:07:56,556.556 INFO    ] 2026-10-25 15:07:56
[2026-10-25 15:07:56,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:07:56,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:07:56,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:07:57,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:07:57,071.071 INFO    ] time= 25/10/2026 15:07:57
[2026-10-25 15:07:57,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:07:57,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:07:57,211.211 INFO    ] No existing commands found in stream
[2026-10-25 15:08:02,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:08:02,239.239 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 15:08:03,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:08:03,549.549 INFO    ] Checking for system updates...
[2026-10-25 15:08:03,589.589 INFO    ] 200
[2026-10-25 15:08:03,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:03,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:03,652.652 INFO    ] No update needed
[2026-10-25 15:08:03,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 15:08:03,689.689 INFO    ] 200
[2026-10-25 15:08:03,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:03,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:08:03,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:03,803.803 INFO    ] No camera update needed
[2026-10-25 15:08:03,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:08:03,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:08:03,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:08:03,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:08:05,864.864 INFO    ] ================================================
[2026-10-25 15:08:05,880.880 INFO    ] Launching Daemon at Sun Oct 25 15:08:05 IST 2026
[2026-10-25 15:08:05,891.891 INFO    ] ================================================
[2026-10-25 15:08:06,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:08:06
[2026-10-25 15:08:07,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:08:07,308.308 INFO    ] Initializing speech engine...
[2026-10-25 15:08:07,316.316 INFO    ] 2026-10-25 15:08:07
[2026-10-25 15:08:07,567.567 INFO    ] 2026-10-25 15:08:07
[2026-10-25 15:08:07,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:08:07,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:08:07,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:08:07,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:08:08,020.020 INFO    ] time= 25/10/2026 15:08:08
[2026-10-25 15:08:08,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:08:08,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:08:08,187.187 INFO    ] No existing commands found in stream
[2026-10-25 15:08:13,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:08:13,202.202 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 15:08:16,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:08:16,125.125 INFO    ] Checking for system updates...
[2026-10-25 15:08:16,165.165 INFO    ] 200
[2026-10-25 15:08:16,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:16,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:16,222.222 INFO    ] No update needed
[2026-10-25 15:08:16,225.225 INFO    ] Checking for camera pi updates...
[2026-10-25 15:08:16,259.259 INFO    ] 200
[2026-10-25 15:08:16,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:16,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:08:16,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:16,360.360 INFO    ] No camera update needed
[2026-10-25 15:08:16,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:08:16,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:08:16,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:08:16,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:08:18,416.416 INFO    ] ================================================
[2026-10-25 15:08:18,431.431 INFO    ] Launching Daemon at Sun Oct 25 15:08:18 IST 2026
[2026-10-25 15:08:18,442.442 INFO    ] ================================================
[2026-10-25 15:08:19,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:08:19
[2026-10-25 15:08:19,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:08:20,055.055 INFO    ] Initializing speech engine...
[2026-10-25 15:08:20,063.063 INFO    ] 2026-10-25 15:08:20
[2026-10-25 15:08:20,346.346 INFO    ] 2026-10-25 15:08:20
[2026-10-25 15:08:20,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:08:20,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:08:20,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:08:21,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:08:21,119.119 INFO    ] time= 25/10/2026 15:08:21
[2026-10-25 15:08:21,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:08:21,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:08:21,318.318 INFO    ] No existing commands found in stream
[2026-10-25 15:08:26,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:08:26,337.337 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 15:08:28,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:08:28,306.306 INFO    ] Checking for system updates...
[2026-10-25 15:08:28,343.343 INFO    ] 200
[2026-10-25 15:08:28,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:28,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:28,451.451 INFO    ] No update needed
[2026-10-25 15:08:28,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 15:08:28,487.487 INFO    ] 200
[2026-10-25 15:08:28,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:28,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:08:28,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:08:28,583.583 INFO    ] No camera update needed
[2026-10-25 15:08:28,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:08:28,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:08:28,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:08:28,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:08:30,641.641 INFO    ] ================================================
[2026-10-25 15:08:30,657.657 INFO    ] Launching Daemon at Sun Oct 25 15:08:30 IST 2026
[2026-10-25 15:08:30,668.668 INFO    ] ================================================
[2026-10-25 15:08:31,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:08:31
[2026-10-25 15:08:31,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:08:32,109.109 INFO    ] Initializing speech engine...
[2026-10-25 15:08:32,115.115 INFO    ] 2026-10-25 15:08:32
[2026-10-25 15:08:32,381.381 INFO    ] 2026-10-25 15:08:32
[2026-10-25 15:08:32,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:08:32,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:08:32,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:08:32,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:08:32,867.867 INFO    ] time= 25/10/2026 15:08:32
[2026-10-25 15:08:32,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:08:32,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:08:33,019.019 INFO    ] No existing commands found in stream
[2026-10-25 15:08:38,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:08:38,034.034 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 15:08:41,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:08:41,874.874 INFO    ] Checking for system updates...
[2026-10-25 15:08:41,914.914 INFO    ] 200
[2026-10-25 15:08:41,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:41,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:08:41,973.973 INFO    ] No update needed
[2026-10-25 15:08:41,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 15:08:42,013.013 INFO    ] 200
[2026-10-25 15:08:42,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:42,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:08:42,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:08:42,111.111 INFO    ] No camera update needed
[2026-10-25 15:08:42,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:08:42,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:08:42,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:08:42,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:08:44,165.165 INFO    ] ================================================
[2026-10-25 15:08:44,180.180 INFO    ] Launching Daemon at Sun Oct 25 15:08:44 IST 2026
[2026-10-25 15:08:44,192.192 INFO    ] ================================================
[2026-10-25 15:08:44,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:08:44
[2026-10-25 15:08:45,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:08:45,793.793 INFO    ] Initializing speech engine...
[2026-10-25 15:08:45,807.807 INFO    ] 2026-10-25 15:08:45
[2026-10-25 15:08:46,081.081 INFO    ] 2026-10-25 15:08:46
[2026-10-25 15:08:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:08:46,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:08:46,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:08:46,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:08:46,551.551 INFO    ] time= 25/10/2026 15:08:46
[2026-10-25 15:08:46,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:08:46,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:08:46,738.738 INFO    ] No existing commands found in stream
[2026-10-25 15:08:51,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:08:51,760.760 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 15:08:52,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:08:52,994.994 INFO    ] Checking for system updates...
[2026-10-25 15:08:53,031.031 INFO    ] 200
[2026-10-25 15:08:53,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:53,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:08:53,098.098 INFO    ] No update needed
[2026-10-25 15:08:53,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 15:08:53,136.136 INFO    ] 200
[2026-10-25 15:08:53,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:08:53,179.179 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:08:53,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:08:53,227.227 INFO    ] No camera update needed
[2026-10-25 15:08:53,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:08:53,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:08:53,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:08:53,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:08:55,283.283 INFO    ] ================================================
[2026-10-25 15:08:55,298.298 INFO    ] Launching Daemon at Sun Oct 25 15:08:55 IST 2026
[2026-10-25 15:08:55,309.309 INFO    ] ================================================
[2026-10-25 15:08:55,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:08:55
[2026-10-25 15:08:56,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:08:56,729.729 INFO    ] Initializing speech engine...
[2026-10-25 15:08:56,738.738 INFO    ] 2026-10-25 15:08:56
[2026-10-25 15:08:56,984.984 INFO    ] 2026-10-25 15:08:56
[2026-10-25 15:08:57,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:08:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:08:57,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:08:57,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:08:57,473.473 INFO    ] time= 25/10/2026 15:08:57
[2026-10-25 15:08:57,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:08:57,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:08:57,602.602 INFO    ] No existing commands found in stream
[2026-10-25 15:09:02,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:09:02,626.626 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 15:09:03,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:09:03,531.531 INFO    ] Checking for system updates...
[2026-10-25 15:09:03,596.596 INFO    ] 200
[2026-10-25 15:09:03,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:03,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:09:03,665.665 INFO    ] No update needed
[2026-10-25 15:09:03,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 15:09:03,707.707 INFO    ] 200
[2026-10-25 15:09:03,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:03,756.756 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:09:03,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:09:03,816.816 INFO    ] No camera update needed
[2026-10-25 15:09:03,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:09:03,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:09:03,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:09:03,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:09:05,885.885 INFO    ] ================================================
[2026-10-25 15:09:05,900.900 INFO    ] Launching Daemon at Sun Oct 25 15:09:05 IST 2026
[2026-10-25 15:09:05,912.912 INFO    ] ================================================
[2026-10-25 15:09:06,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:09:06
[2026-10-25 15:09:07,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:09:07,345.345 INFO    ] Initializing speech engine...
[2026-10-25 15:09:07,354.354 INFO    ] 2026-10-25 15:09:07
[2026-10-25 15:09:07,599.599 INFO    ] 2026-10-25 15:09:07
[2026-10-25 15:09:07,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:09:07,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:09:07,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:09:08,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:09:08,046.046 INFO    ] time= 25/10/2026 15:09:08
[2026-10-25 15:09:08,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:09:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:09:08,221.221 INFO    ] No existing commands found in stream
[2026-10-25 15:09:13,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:09:13,259.259 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 15:09:16,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:09:16,444.444 INFO    ] Checking for system updates...
[2026-10-25 15:09:16,481.481 INFO    ] 200
[2026-10-25 15:09:16,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:16,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:16,547.547 INFO    ] No update needed
[2026-10-25 15:09:16,549.549 INFO    ] Checking for camera pi updates...
[2026-10-25 15:09:16,587.587 INFO    ] 200
[2026-10-25 15:09:16,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:16,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:09:16,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:16,685.685 INFO    ] No camera update needed
[2026-10-25 15:09:16,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:09:16,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:09:16,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:09:16,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:09:18,740.740 INFO    ] ================================================
[2026-10-25 15:09:18,756.756 INFO    ] Launching Daemon at Sun Oct 25 15:09:18 IST 2026
[2026-10-25 15:09:18,767.767 INFO    ] ================================================
[2026-10-25 15:09:19,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:09:19
[2026-10-25 15:09:19,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:09:20,186.186 INFO    ] Initializing speech engine...
[2026-10-25 15:09:20,194.194 INFO    ] 2026-10-25 15:09:20
[2026-10-25 15:09:20,491.491 INFO    ] 2026-10-25 15:09:20
[2026-10-25 15:09:20,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:09:22,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:09:22,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:09:22,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:09:22,799.799 INFO    ] time= 25/10/2026 15:09:22
[2026-10-25 15:09:22,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:09:22,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:09:22,864.864 INFO    ] No existing commands found in stream
[2026-10-25 15:09:27,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:09:27,877.877 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 15:09:31,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:09:31,522.522 INFO    ] Checking for system updates...
[2026-10-25 15:09:31,559.559 INFO    ] 200
[2026-10-25 15:09:31,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:31,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:31,617.617 INFO    ] No update needed
[2026-10-25 15:09:31,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 15:09:31,653.653 INFO    ] 200
[2026-10-25 15:09:31,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:31,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:09:31,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:31,743.743 INFO    ] No camera update needed
[2026-10-25 15:09:31,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:09:31,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:09:31,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:09:31,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:09:33,798.798 INFO    ] ================================================
[2026-10-25 15:09:33,813.813 INFO    ] Launching Daemon at Sun Oct 25 15:09:33 IST 2026
[2026-10-25 15:09:33,824.824 INFO    ] ================================================
[2026-10-25 15:09:34,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:09:34
[2026-10-25 15:09:34,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:09:35,238.238 INFO    ] Initializing speech engine...
[2026-10-25 15:09:35,247.247 INFO    ] 2026-10-25 15:09:35
[2026-10-25 15:09:35,493.493 INFO    ] 2026-10-25 15:09:35
[2026-10-25 15:09:35,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:09:35,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:09:35,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:09:35,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:09:35,935.935 INFO    ] time= 25/10/2026 15:09:35
[2026-10-25 15:09:36,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:09:36,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:09:36,121.121 INFO    ] No existing commands found in stream
[2026-10-25 15:09:41,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:09:41,160.160 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 15:09:41,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:09:41,783.783 INFO    ] Checking for system updates...
[2026-10-25 15:09:41,819.819 INFO    ] 200
[2026-10-25 15:09:41,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:41,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:09:41,885.885 INFO    ] No update needed
[2026-10-25 15:09:41,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 15:09:41,926.926 INFO    ] 200
[2026-10-25 15:09:41,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:41,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:09:42,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:09:42,024.024 INFO    ] No camera update needed
[2026-10-25 15:09:42,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:09:42,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:09:42,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:09:42,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:09:44,080.080 INFO    ] ================================================
[2026-10-25 15:09:44,095.095 INFO    ] Launching Daemon at Sun Oct 25 15:09:44 IST 2026
[2026-10-25 15:09:44,107.107 INFO    ] ================================================
[2026-10-25 15:09:44,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:09:44
[2026-10-25 15:09:45,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:09:45,524.524 INFO    ] Initializing speech engine...
[2026-10-25 15:09:45,534.534 INFO    ] 2026-10-25 15:09:45
[2026-10-25 15:09:45,778.778 INFO    ] 2026-10-25 15:09:45
[2026-10-25 15:09:45,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:09:46,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:09:46,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:09:46,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:09:46,288.288 INFO    ] time= 25/10/2026 15:09:46
[2026-10-25 15:09:46,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:09:46,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:09:46,461.461 INFO    ] No existing commands found in stream
[2026-10-25 15:09:51,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:09:51,494.494 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 15:09:53,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:09:53,914.914 INFO    ] Checking for system updates...
[2026-10-25 15:09:53,954.954 INFO    ] 200
[2026-10-25 15:09:53,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:54,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:54,020.020 INFO    ] No update needed
[2026-10-25 15:09:54,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 15:09:54,061.061 INFO    ] 200
[2026-10-25 15:09:54,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:09:54,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:09:54,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:09:54,262.262 INFO    ] No camera update needed
[2026-10-25 15:09:54,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:09:54,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:09:54,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:09:54,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:09:56,317.317 INFO    ] ================================================
[2026-10-25 15:09:56,333.333 INFO    ] Launching Daemon at Sun Oct 25 15:09:56 IST 2026
[2026-10-25 15:09:56,345.345 INFO    ] ================================================
[2026-10-25 15:09:56,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:09:56
[2026-10-25 15:09:57,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:09:57,739.739 INFO    ] Initializing speech engine...
[2026-10-25 15:09:57,760.760 INFO    ] 2026-10-25 15:09:57
[2026-10-25 15:09:58,021.021 INFO    ] 2026-10-25 15:09:58
[2026-10-25 15:09:58,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:09:58,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:09:58,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:09:58,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:09:58,494.494 INFO    ] time= 25/10/2026 15:09:58
[2026-10-25 15:09:58,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:09:58,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:09:58,645.645 INFO    ] No existing commands found in stream
[2026-10-25 15:10:03,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:10:03,684.684 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 15:10:08,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:10:08,484.484 INFO    ] Checking for system updates...
[2026-10-25 15:10:08,520.520 INFO    ] 200
[2026-10-25 15:10:08,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:08,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:10:08,579.579 INFO    ] No update needed
[2026-10-25 15:10:08,581.581 INFO    ] Checking for camera pi updates...
[2026-10-25 15:10:08,615.615 INFO    ] 200
[2026-10-25 15:10:08,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:08,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:10:08,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:10:08,709.709 INFO    ] No camera update needed
[2026-10-25 15:10:08,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:10:08,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:10:08,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:10:08,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:10:10,767.767 INFO    ] ================================================
[2026-10-25 15:10:10,783.783 INFO    ] Launching Daemon at Sun Oct 25 15:10:10 IST 2026
[2026-10-25 15:10:10,795.795 INFO    ] ================================================
[2026-10-25 15:10:11,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:10:11
[2026-10-25 15:10:11,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:10:12,246.246 INFO    ] Initializing speech engine...
[2026-10-25 15:10:12,255.255 INFO    ] 2026-10-25 15:10:12
[2026-10-25 15:10:12,503.503 INFO    ] 2026-10-25 15:10:12
[2026-10-25 15:10:12,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:10:12,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:10:12,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:10:12,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:10:12,872.872 INFO    ] time= 25/10/2026 15:10:12
[2026-10-25 15:10:12,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:10:12,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:10:13,056.056 INFO    ] No existing commands found in stream
[2026-10-25 15:10:18,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:10:18,082.082 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 15:10:20,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:10:20,499.499 INFO    ] Checking for system updates...
[2026-10-25 15:10:20,539.539 INFO    ] 200
[2026-10-25 15:10:20,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:20,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:20,599.599 INFO    ] No update needed
[2026-10-25 15:10:20,601.601 INFO    ] Checking for camera pi updates...
[2026-10-25 15:10:20,639.639 INFO    ] 200
[2026-10-25 15:10:20,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:20,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:10:20,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:20,738.738 INFO    ] No camera update needed
[2026-10-25 15:10:20,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:10:20,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:10:20,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:10:20,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:10:22,793.793 INFO    ] ================================================
[2026-10-25 15:10:22,809.809 INFO    ] Launching Daemon at Sun Oct 25 15:10:22 IST 2026
[2026-10-25 15:10:22,819.819 INFO    ] ================================================
[2026-10-25 15:10:23,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:10:23
[2026-10-25 15:10:23,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:10:24,214.214 INFO    ] Initializing speech engine...
[2026-10-25 15:10:24,221.221 INFO    ] 2026-10-25 15:10:24
[2026-10-25 15:10:24,495.495 INFO    ] 2026-10-25 15:10:24
[2026-10-25 15:10:24,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:10:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:10:24,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:10:25,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:10:25,060.060 INFO    ] time= 25/10/2026 15:10:25
[2026-10-25 15:10:25,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:10:25,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:10:25,198.198 INFO    ] No existing commands found in stream
[2026-10-25 15:10:30,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:10:30,226.226 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 15:10:34,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:10:34,288.288 INFO    ] Checking for system updates...
[2026-10-25 15:10:34,328.328 INFO    ] 200
[2026-10-25 15:10:34,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:34,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:34,386.386 INFO    ] No update needed
[2026-10-25 15:10:34,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 15:10:34,423.423 INFO    ] 200
[2026-10-25 15:10:34,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:34,470.470 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:10:34,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:34,530.530 INFO    ] No camera update needed
[2026-10-25 15:10:34,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:10:34,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:10:34,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:10:34,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:10:36,585.585 INFO    ] ================================================
[2026-10-25 15:10:36,601.601 INFO    ] Launching Daemon at Sun Oct 25 15:10:36 IST 2026
[2026-10-25 15:10:36,612.612 INFO    ] ================================================
[2026-10-25 15:10:37,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:10:37
[2026-10-25 15:10:37,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:10:38,067.067 INFO    ] Initializing speech engine...
[2026-10-25 15:10:38,076.076 INFO    ] 2026-10-25 15:10:38
[2026-10-25 15:10:38,320.320 INFO    ] 2026-10-25 15:10:38
[2026-10-25 15:10:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:10:38,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:10:38,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:10:38,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:10:38,814.814 INFO    ] time= 25/10/2026 15:10:38
[2026-10-25 15:10:38,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:10:38,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:10:39,013.013 INFO    ] No existing commands found in stream
[2026-10-25 15:10:44,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:10:44,043.043 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 15:10:48,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:10:48,014.014 INFO    ] Checking for system updates...
[2026-10-25 15:10:48,051.051 INFO    ] 200
[2026-10-25 15:10:48,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:48,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:48,116.116 INFO    ] No update needed
[2026-10-25 15:10:48,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 15:10:48,153.153 INFO    ] 200
[2026-10-25 15:10:48,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:10:48,195.195 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:10:48,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:10:48,245.245 INFO    ] No camera update needed
[2026-10-25 15:10:48,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:10:48,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:10:48,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:10:48,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:10:50,301.301 INFO    ] ================================================
[2026-10-25 15:10:50,316.316 INFO    ] Launching Daemon at Sun Oct 25 15:10:50 IST 2026
[2026-10-25 15:10:50,327.327 INFO    ] ================================================
[2026-10-25 15:10:50,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:10:50
[2026-10-25 15:10:51,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:10:51,719.719 INFO    ] Initializing speech engine...
[2026-10-25 15:10:51,727.727 INFO    ] 2026-10-25 15:10:51
[2026-10-25 15:10:51,995.995 INFO    ] 2026-10-25 15:10:51
[2026-10-25 15:10:52,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:10:52,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:10:52,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:10:52,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:10:52,547.547 INFO    ] time= 25/10/2026 15:10:52
[2026-10-25 15:10:52,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:10:52,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:10:52,686.686 INFO    ] No existing commands found in stream
[2026-10-25 15:10:57,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:10:57,711.711 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 15:11:01,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:11:01,939.939 INFO    ] Checking for system updates...
[2026-10-25 15:11:01,979.979 INFO    ] 200
[2026-10-25 15:11:01,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:02,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:02,055.055 INFO    ] No update needed
[2026-10-25 15:11:02,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 15:11:02,105.105 INFO    ] 200
[2026-10-25 15:11:02,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:02,168.168 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:11:02,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:02,209.209 INFO    ] No camera update needed
[2026-10-25 15:11:02,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:11:02,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:11:02,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:11:02,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:11:04,273.273 INFO    ] ================================================
[2026-10-25 15:11:04,288.288 INFO    ] Launching Daemon at Sun Oct 25 15:11:04 IST 2026
[2026-10-25 15:11:04,298.298 INFO    ] ================================================
[2026-10-25 15:11:04,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:11:04
[2026-10-25 15:11:05,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:11:05,750.750 INFO    ] Initializing speech engine...
[2026-10-25 15:11:05,757.757 INFO    ] 2026-10-25 15:11:05
[2026-10-25 15:11:06,015.015 INFO    ] 2026-10-25 15:11:06
[2026-10-25 15:11:06,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:11:06,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:11:06,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:11:06,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:11:06,484.484 INFO    ] time= 25/10/2026 15:11:06
[2026-10-25 15:11:06,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:11:06,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:11:06,623.623 INFO    ] No existing commands found in stream
[2026-10-25 15:11:11,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:11:11,636.636 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 15:11:14,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:11:14,376.376 INFO    ] Checking for system updates...
[2026-10-25 15:11:14,413.413 INFO    ] 200
[2026-10-25 15:11:14,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:14,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:14,471.471 INFO    ] No update needed
[2026-10-25 15:11:14,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 15:11:14,511.511 INFO    ] 200
[2026-10-25 15:11:14,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:14,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:11:14,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:14,602.602 INFO    ] No camera update needed
[2026-10-25 15:11:14,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:11:14,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:11:14,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:11:14,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:11:16,656.656 INFO    ] ================================================
[2026-10-25 15:11:16,672.672 INFO    ] Launching Daemon at Sun Oct 25 15:11:16 IST 2026
[2026-10-25 15:11:16,683.683 INFO    ] ================================================
[2026-10-25 15:11:17,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:11:17
[2026-10-25 15:11:17,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:11:18,099.099 INFO    ] Initializing speech engine...
[2026-10-25 15:11:18,108.108 INFO    ] 2026-10-25 15:11:18
[2026-10-25 15:11:18,359.359 INFO    ] 2026-10-25 15:11:18
[2026-10-25 15:11:18,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:11:18,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:11:18,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:11:18,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:11:18,810.810 INFO    ] time= 25/10/2026 15:11:18
[2026-10-25 15:11:18,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:11:18,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:11:18,966.966 INFO    ] No existing commands found in stream
[2026-10-25 15:11:23,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:11:23,976.976 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 15:11:29,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:11:29,263.263 INFO    ] Checking for system updates...
[2026-10-25 15:11:29,307.307 INFO    ] 200
[2026-10-25 15:11:29,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:29,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:29,372.372 INFO    ] No update needed
[2026-10-25 15:11:29,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 15:11:29,408.408 INFO    ] 200
[2026-10-25 15:11:29,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:29,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:11:29,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:29,512.512 INFO    ] No camera update needed
[2026-10-25 15:11:29,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:11:29,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:11:29,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:11:29,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:11:31,568.568 INFO    ] ================================================
[2026-10-25 15:11:31,584.584 INFO    ] Launching Daemon at Sun Oct 25 15:11:31 IST 2026
[2026-10-25 15:11:31,596.596 INFO    ] ================================================
[2026-10-25 15:11:32,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:11:32
[2026-10-25 15:11:32,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:11:33,120.120 INFO    ] Initializing speech engine...
[2026-10-25 15:11:33,127.127 INFO    ] 2026-10-25 15:11:33
[2026-10-25 15:11:33,395.395 INFO    ] 2026-10-25 15:11:33
[2026-10-25 15:11:33,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:11:33,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:11:33,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:11:33,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:11:33,838.838 INFO    ] time= 25/10/2026 15:11:33
[2026-10-25 15:11:33,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:11:33,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:11:33,984.984 INFO    ] No existing commands found in stream
[2026-10-25 15:11:38,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:11:38,998.998 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 15:11:42,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:11:42,752.752 INFO    ] Checking for system updates...
[2026-10-25 15:11:42,792.792 INFO    ] 200
[2026-10-25 15:11:42,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:42,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:42,856.856 INFO    ] No update needed
[2026-10-25 15:11:42,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 15:11:42,892.892 INFO    ] 200
[2026-10-25 15:11:42,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:42,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:11:42,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:42,983.983 INFO    ] No camera update needed
[2026-10-25 15:11:42,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:11:42,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:11:42,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:11:42,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:11:45,038.038 INFO    ] ================================================
[2026-10-25 15:11:45,054.054 INFO    ] Launching Daemon at Sun Oct 25 15:11:45 IST 2026
[2026-10-25 15:11:45,065.065 INFO    ] ================================================
[2026-10-25 15:11:45,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:11:45
[2026-10-25 15:11:46,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:11:46,476.476 INFO    ] Initializing speech engine...
[2026-10-25 15:11:46,491.491 INFO    ] 2026-10-25 15:11:46
[2026-10-25 15:11:46,748.748 INFO    ] 2026-10-25 15:11:46
[2026-10-25 15:11:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:11:47,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:11:47,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:11:47,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:11:47,232.232 INFO    ] time= 25/10/2026 15:11:47
[2026-10-25 15:11:47,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:11:47,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:11:47,381.381 INFO    ] No existing commands found in stream
[2026-10-25 15:11:52,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:11:52,395.395 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 15:11:53,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:11:53,131.131 INFO    ] Checking for system updates...
[2026-10-25 15:11:53,166.166 INFO    ] 200
[2026-10-25 15:11:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:53,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:53,224.224 INFO    ] No update needed
[2026-10-25 15:11:53,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 15:11:53,264.264 INFO    ] 200
[2026-10-25 15:11:53,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:11:53,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:11:53,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:11:53,360.360 INFO    ] No camera update needed
[2026-10-25 15:11:53,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:11:53,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:11:53,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:11:53,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:11:55,416.416 INFO    ] ================================================
[2026-10-25 15:11:55,433.433 INFO    ] Launching Daemon at Sun Oct 25 15:11:55 IST 2026
[2026-10-25 15:11:55,443.443 INFO    ] ================================================
[2026-10-25 15:11:56,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:11:56
[2026-10-25 15:11:56,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:11:57,073.073 INFO    ] Initializing speech engine...
[2026-10-25 15:11:57,079.079 INFO    ] 2026-10-25 15:11:57
[2026-10-25 15:11:57,383.383 INFO    ] 2026-10-25 15:11:57
[2026-10-25 15:11:57,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:12:00,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:12:00,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:12:00,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:12:00,204.204 INFO    ] time= 25/10/2026 15:12:00
[2026-10-25 15:12:00,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:12:00,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:12:00,289.289 INFO    ] No existing commands found in stream
[2026-10-25 15:12:05,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:12:05,303.303 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 15:12:08,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:12:08,396.396 INFO    ] Checking for system updates...
[2026-10-25 15:12:08,440.440 INFO    ] 200
[2026-10-25 15:12:08,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:08,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:08,507.507 INFO    ] No update needed
[2026-10-25 15:12:08,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 15:12:08,543.543 INFO    ] 200
[2026-10-25 15:12:08,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:08,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:12:08,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:08,645.645 INFO    ] No camera update needed
[2026-10-25 15:12:08,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:12:08,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:12:08,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:12:08,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:12:10,701.701 INFO    ] ================================================
[2026-10-25 15:12:10,716.716 INFO    ] Launching Daemon at Sun Oct 25 15:12:10 IST 2026
[2026-10-25 15:12:10,728.728 INFO    ] ================================================
[2026-10-25 15:12:11,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:12:11
[2026-10-25 15:12:11,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:12:12,157.157 INFO    ] Initializing speech engine...
[2026-10-25 15:12:12,167.167 INFO    ] 2026-10-25 15:12:12
[2026-10-25 15:12:12,416.416 INFO    ] 2026-10-25 15:12:12
[2026-10-25 15:12:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:12:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:12:12,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:12:12,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:12:12,790.790 INFO    ] time= 25/10/2026 15:12:12
[2026-10-25 15:12:12,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:12:12,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:12:12,979.979 INFO    ] No existing commands found in stream
[2026-10-25 15:12:18,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:12:18,005.005 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 15:12:22,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:12:22,040.040 INFO    ] Checking for system updates...
[2026-10-25 15:12:22,081.081 INFO    ] 200
[2026-10-25 15:12:22,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:22,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:22,141.141 INFO    ] No update needed
[2026-10-25 15:12:22,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 15:12:22,179.179 INFO    ] 200
[2026-10-25 15:12:22,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:22,229.229 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:12:22,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:22,264.264 INFO    ] No camera update needed
[2026-10-25 15:12:22,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:12:22,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:12:22,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:12:22,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:12:24,321.321 INFO    ] ================================================
[2026-10-25 15:12:24,337.337 INFO    ] Launching Daemon at Sun Oct 25 15:12:24 IST 2026
[2026-10-25 15:12:24,349.349 INFO    ] ================================================
[2026-10-25 15:12:24,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:12:24
[2026-10-25 15:12:25,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:12:25,850.850 INFO    ] Initializing speech engine...
[2026-10-25 15:12:25,857.857 INFO    ] 2026-10-25 15:12:25
[2026-10-25 15:12:26,119.119 INFO    ] 2026-10-25 15:12:26
[2026-10-25 15:12:26,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:12:26,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:12:26,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:12:26,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:12:26,594.594 INFO    ] time= 25/10/2026 15:12:26
[2026-10-25 15:12:26,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:12:26,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:12:26,727.727 INFO    ] No existing commands found in stream
[2026-10-25 15:12:31,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:12:31,742.742 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 15:12:35,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:12:35,143.143 INFO    ] Checking for system updates...
[2026-10-25 15:12:35,180.180 INFO    ] 200
[2026-10-25 15:12:35,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:35,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:35,247.247 INFO    ] No update needed
[2026-10-25 15:12:35,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 15:12:35,289.289 INFO    ] 200
[2026-10-25 15:12:35,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:35,334.334 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:12:35,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:35,389.389 INFO    ] No camera update needed
[2026-10-25 15:12:35,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:12:35,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:12:35,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:12:35,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:12:37,448.448 INFO    ] ================================================
[2026-10-25 15:12:37,464.464 INFO    ] Launching Daemon at Sun Oct 25 15:12:37 IST 2026
[2026-10-25 15:12:37,475.475 INFO    ] ================================================
[2026-10-25 15:12:38,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:12:38
[2026-10-25 15:12:38,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:12:38,920.920 INFO    ] Initializing speech engine...
[2026-10-25 15:12:38,926.926 INFO    ] 2026-10-25 15:12:38
[2026-10-25 15:12:39,184.184 INFO    ] 2026-10-25 15:12:39
[2026-10-25 15:12:39,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:12:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:12:39,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:12:39,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:12:39,662.662 INFO    ] time= 25/10/2026 15:12:39
[2026-10-25 15:12:39,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:12:39,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:12:39,792.792 INFO    ] No existing commands found in stream
[2026-10-25 15:12:44,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:12:44,806.806 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 15:12:47,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:12:47,815.815 INFO    ] Checking for system updates...
[2026-10-25 15:12:47,855.855 INFO    ] 200
[2026-10-25 15:12:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:47,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:47,913.913 INFO    ] No update needed
[2026-10-25 15:12:47,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 15:12:47,954.954 INFO    ] 200
[2026-10-25 15:12:47,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:12:48,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:12:48,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:12:48,054.054 INFO    ] No camera update needed
[2026-10-25 15:12:48,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:12:48,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:12:48,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:12:48,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:12:50,110.110 INFO    ] ================================================
[2026-10-25 15:12:50,125.125 INFO    ] Launching Daemon at Sun Oct 25 15:12:50 IST 2026
[2026-10-25 15:12:50,136.136 INFO    ] ================================================
[2026-10-25 15:12:50,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:12:50
[2026-10-25 15:12:51,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:12:51,531.531 INFO    ] Initializing speech engine...
[2026-10-25 15:12:51,537.537 INFO    ] 2026-10-25 15:12:51
[2026-10-25 15:12:51,811.811 INFO    ] 2026-10-25 15:12:51
[2026-10-25 15:12:51,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:12:52,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:12:52,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:12:52,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:12:52,275.275 INFO    ] time= 25/10/2026 15:12:52
[2026-10-25 15:12:52,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:12:52,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:12:52,437.437 INFO    ] No existing commands found in stream
[2026-10-25 15:12:57,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:12:57,452.452 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 15:13:01,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:13:01,620.620 INFO    ] Checking for system updates...
[2026-10-25 15:13:01,660.660 INFO    ] 200
[2026-10-25 15:13:01,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:01,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:01,726.726 INFO    ] No update needed
[2026-10-25 15:13:01,728.728 INFO    ] Checking for camera pi updates...
[2026-10-25 15:13:01,790.790 INFO    ] 200
[2026-10-25 15:13:01,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:01,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:13:01,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:01,950.950 INFO    ] No camera update needed
[2026-10-25 15:13:01,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:13:01,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:13:01,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:13:01,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:13:04,016.016 INFO    ] ================================================
[2026-10-25 15:13:04,031.031 INFO    ] Launching Daemon at Sun Oct 25 15:13:04 IST 2026
[2026-10-25 15:13:04,042.042 INFO    ] ================================================
[2026-10-25 15:13:04,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:13:04
[2026-10-25 15:13:05,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:13:05,510.510 INFO    ] Initializing speech engine...
[2026-10-25 15:13:05,533.533 INFO    ] 2026-10-25 15:13:05
[2026-10-25 15:13:05,787.787 INFO    ] 2026-10-25 15:13:05
[2026-10-25 15:13:05,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:13:05,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:13:06,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:13:06,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:13:06,163.163 INFO    ] time= 25/10/2026 15:13:06
[2026-10-25 15:13:06,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:13:06,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:13:06,327.327 INFO    ] No existing commands found in stream
[2026-10-25 15:13:11,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:13:11,360.360 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 15:13:13,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:13:13,893.893 INFO    ] Checking for system updates...
[2026-10-25 15:13:13,929.929 INFO    ] 200
[2026-10-25 15:13:13,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:13,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:13:13,987.987 INFO    ] No update needed
[2026-10-25 15:13:13,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 15:13:14,023.023 INFO    ] 200
[2026-10-25 15:13:14,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:14,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:13:14,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:13:14,119.119 INFO    ] No camera update needed
[2026-10-25 15:13:14,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:13:14,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:13:14,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:13:14,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:13:16,174.174 INFO    ] ================================================
[2026-10-25 15:13:16,189.189 INFO    ] Launching Daemon at Sun Oct 25 15:13:16 IST 2026
[2026-10-25 15:13:16,200.200 INFO    ] ================================================
[2026-10-25 15:13:16,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:13:16
[2026-10-25 15:13:17,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:13:17,692.692 INFO    ] Initializing speech engine...
[2026-10-25 15:13:17,708.708 INFO    ] 2026-10-25 15:13:17
[2026-10-25 15:13:17,962.962 INFO    ] 2026-10-25 15:13:17
[2026-10-25 15:13:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:13:18,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:13:18,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:13:18,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:13:18,456.456 INFO    ] time= 25/10/2026 15:13:18
[2026-10-25 15:13:18,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:13:18,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:13:18,638.638 INFO    ] No existing commands found in stream
[2026-10-25 15:13:23,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:13:23,671.671 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 15:13:26,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:13:26,010.010 INFO    ] Checking for system updates...
[2026-10-25 15:13:26,048.048 INFO    ] 200
[2026-10-25 15:13:26,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:26,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:26,111.111 INFO    ] No update needed
[2026-10-25 15:13:26,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 15:13:26,149.149 INFO    ] 200
[2026-10-25 15:13:26,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:26,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:13:26,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:26,242.242 INFO    ] No camera update needed
[2026-10-25 15:13:26,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:13:26,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:13:26,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:13:26,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:13:28,297.297 INFO    ] ================================================
[2026-10-25 15:13:28,312.312 INFO    ] Launching Daemon at Sun Oct 25 15:13:28 IST 2026
[2026-10-25 15:13:28,323.323 INFO    ] ================================================
[2026-10-25 15:13:28,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:13:28
[2026-10-25 15:13:29,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:13:29,880.880 INFO    ] Initializing speech engine...
[2026-10-25 15:13:29,889.889 INFO    ] 2026-10-25 15:13:29
[2026-10-25 15:13:30,160.160 INFO    ] 2026-10-25 15:13:30
[2026-10-25 15:13:30,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:13:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:13:32,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:13:32,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:13:32,310.310 INFO    ] time= 25/10/2026 15:13:32
[2026-10-25 15:13:32,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:13:32,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:13:32,385.385 INFO    ] No existing commands found in stream
[2026-10-25 15:13:37,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:13:37,405.405 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 15:13:39,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:13:39,683.683 INFO    ] Checking for system updates...
[2026-10-25 15:13:39,723.723 INFO    ] 200
[2026-10-25 15:13:39,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:39,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:39,780.780 INFO    ] No update needed
[2026-10-25 15:13:39,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 15:13:39,821.821 INFO    ] 200
[2026-10-25 15:13:39,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:39,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:13:39,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:13:39,920.920 INFO    ] No camera update needed
[2026-10-25 15:13:39,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:13:39,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:13:39,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:13:39,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:13:41,974.974 INFO    ] ================================================
[2026-10-25 15:13:41,989.989 INFO    ] Launching Daemon at Sun Oct 25 15:13:41 IST 2026
[2026-10-25 15:13:42,999.999 INFO    ] ================================================
[2026-10-25 15:13:42,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:13:42
[2026-10-25 15:13:43,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:13:43,400.400 INFO    ] Initializing speech engine...
[2026-10-25 15:13:43,420.420 INFO    ] 2026-10-25 15:13:43
[2026-10-25 15:13:43,674.674 INFO    ] 2026-10-25 15:13:43
[2026-10-25 15:13:43,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:13:43,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:13:43,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:13:44,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:13:44,167.167 INFO    ] time= 25/10/2026 15:13:44
[2026-10-25 15:13:44,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:13:44,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:13:44,355.355 INFO    ] No existing commands found in stream
[2026-10-25 15:13:49,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:13:49,383.383 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 15:13:51,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:13:51,715.715 INFO    ] Checking for system updates...
[2026-10-25 15:13:51,751.751 INFO    ] 200
[2026-10-25 15:13:51,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:51,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:13:51,820.820 INFO    ] No update needed
[2026-10-25 15:13:51,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 15:13:51,857.857 INFO    ] 200
[2026-10-25 15:13:51,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:13:51,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:13:51,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:13:51,952.952 INFO    ] No camera update needed
[2026-10-25 15:13:51,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:13:51,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:13:51,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:13:51,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:13:54,007.007 INFO    ] ================================================
[2026-10-25 15:13:54,022.022 INFO    ] Launching Daemon at Sun Oct 25 15:13:54 IST 2026
[2026-10-25 15:13:54,033.033 INFO    ] ================================================
[2026-10-25 15:13:54,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:13:54
[2026-10-25 15:13:55,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:13:55,448.448 INFO    ] Initializing speech engine...
[2026-10-25 15:13:55,457.457 INFO    ] 2026-10-25 15:13:55
[2026-10-25 15:13:55,701.701 INFO    ] 2026-10-25 15:13:55
[2026-10-25 15:13:55,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:13:55,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:13:55,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:13:56,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:13:56,066.066 INFO    ] time= 25/10/2026 15:13:56
[2026-10-25 15:13:56,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:13:56,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:13:56,232.232 INFO    ] No existing commands found in stream
[2026-10-25 15:14:01,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:14:01,259.259 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 15:14:04,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:14:04,371.371 INFO    ] Checking for system updates...
[2026-10-25 15:14:04,410.410 INFO    ] 200
[2026-10-25 15:14:04,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:04,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:04,473.473 INFO    ] No update needed
[2026-10-25 15:14:04,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 15:14:04,509.509 INFO    ] 200
[2026-10-25 15:14:04,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:04,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:14:04,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:04,715.715 INFO    ] No camera update needed
[2026-10-25 15:14:04,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:14:04,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:14:04,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:14:04,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:14:06,770.770 INFO    ] ================================================
[2026-10-25 15:14:06,785.785 INFO    ] Launching Daemon at Sun Oct 25 15:14:06 IST 2026
[2026-10-25 15:14:06,796.796 INFO    ] ================================================
[2026-10-25 15:14:07,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:14:07
[2026-10-25 15:14:07,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:14:08,218.218 INFO    ] Initializing speech engine...
[2026-10-25 15:14:08,225.225 INFO    ] 2026-10-25 15:14:08
[2026-10-25 15:14:08,485.485 INFO    ] 2026-10-25 15:14:08
[2026-10-25 15:14:08,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:14:08,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:14:08,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:14:08,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:14:08,839.839 INFO    ] time= 25/10/2026 15:14:08
[2026-10-25 15:14:08,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:14:08,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:14:09,012.012 INFO    ] No existing commands found in stream
[2026-10-25 15:14:14,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:14:14,045.045 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 15:14:15,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:14:15,590.590 INFO    ] Checking for system updates...
[2026-10-25 15:14:15,626.626 INFO    ] 200
[2026-10-25 15:14:15,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:15,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:14:15,692.692 INFO    ] No update needed
[2026-10-25 15:14:15,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 15:14:15,733.733 INFO    ] 200
[2026-10-25 15:14:15,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:15,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:14:15,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:14:15,826.826 INFO    ] No camera update needed
[2026-10-25 15:14:15,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:14:15,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:14:15,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:14:15,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:14:17,883.883 INFO    ] ================================================
[2026-10-25 15:14:17,899.899 INFO    ] Launching Daemon at Sun Oct 25 15:14:17 IST 2026
[2026-10-25 15:14:17,910.910 INFO    ] ================================================
[2026-10-25 15:14:18,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:14:18
[2026-10-25 15:14:19,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:14:19,322.322 INFO    ] Initializing speech engine...
[2026-10-25 15:14:19,330.330 INFO    ] 2026-10-25 15:14:19
[2026-10-25 15:14:19,625.625 INFO    ] 2026-10-25 15:14:19
[2026-10-25 15:14:19,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:14:19,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:14:19,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:14:19,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:14:19,998.998 INFO    ] time= 25/10/2026 15:14:19
[2026-10-25 15:14:20,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:14:20,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:14:20,124.124 INFO    ] No existing commands found in stream
[2026-10-25 15:14:25,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:14:25,135.135 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 15:14:25,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:14:25,718.718 INFO    ] Checking for system updates...
[2026-10-25 15:14:25,757.757 INFO    ] 200
[2026-10-25 15:14:25,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:25,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:25,814.814 INFO    ] No update needed
[2026-10-25 15:14:25,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 15:14:25,850.850 INFO    ] 200
[2026-10-25 15:14:25,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:25,897.897 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:14:25,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:25,956.956 INFO    ] No camera update needed
[2026-10-25 15:14:25,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:14:25,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:14:25,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:14:25,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:14:28,012.012 INFO    ] ================================================
[2026-10-25 15:14:28,026.026 INFO    ] Launching Daemon at Sun Oct 25 15:14:28 IST 2026
[2026-10-25 15:14:28,037.037 INFO    ] ================================================
[2026-10-25 15:14:28,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:14:28
[2026-10-25 15:14:29,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:14:29,456.456 INFO    ] Initializing speech engine...
[2026-10-25 15:14:29,462.462 INFO    ] 2026-10-25 15:14:29
[2026-10-25 15:14:29,713.713 INFO    ] 2026-10-25 15:14:29
[2026-10-25 15:14:29,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:14:33,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:14:33,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:14:33,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:14:33,908.908 INFO    ] time= 25/10/2026 15:14:33
[2026-10-25 15:14:33,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:14:33,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:14:33,961.961 INFO    ] No existing commands found in stream
[2026-10-25 15:14:38,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:14:38,973.973 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 15:14:41,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:14:41,272.272 INFO    ] Checking for system updates...
[2026-10-25 15:14:41,308.308 INFO    ] 200
[2026-10-25 15:14:41,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:41,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:41,373.373 INFO    ] No update needed
[2026-10-25 15:14:41,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 15:14:41,413.413 INFO    ] 200
[2026-10-25 15:14:41,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:41,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:14:41,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:41,515.515 INFO    ] No camera update needed
[2026-10-25 15:14:41,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:14:41,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:14:41,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:14:41,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:14:43,571.571 INFO    ] ================================================
[2026-10-25 15:14:43,586.586 INFO    ] Launching Daemon at Sun Oct 25 15:14:43 IST 2026
[2026-10-25 15:14:43,596.596 INFO    ] ================================================
[2026-10-25 15:14:44,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:14:44
[2026-10-25 15:14:44,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:14:45,222.222 INFO    ] Initializing speech engine...
[2026-10-25 15:14:45,236.236 INFO    ] 2026-10-25 15:14:45
[2026-10-25 15:14:45,515.515 INFO    ] 2026-10-25 15:14:45
[2026-10-25 15:14:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:14:45,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:14:45,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:14:45,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:14:45,978.978 INFO    ] time= 25/10/2026 15:14:45
[2026-10-25 15:14:46,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:14:46,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:14:46,112.112 INFO    ] No existing commands found in stream
[2026-10-25 15:14:51,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:14:51,128.128 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 15:14:55,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:14:55,161.161 INFO    ] Checking for system updates...
[2026-10-25 15:14:55,204.204 INFO    ] 200
[2026-10-25 15:14:55,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:55,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:55,282.282 INFO    ] No update needed
[2026-10-25 15:14:55,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 15:14:55,323.323 INFO    ] 200
[2026-10-25 15:14:55,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:14:55,374.374 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:14:55,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:14:55,427.427 INFO    ] No camera update needed
[2026-10-25 15:14:55,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:14:55,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:14:55,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:14:55,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:14:57,485.485 INFO    ] ================================================
[2026-10-25 15:14:57,501.501 INFO    ] Launching Daemon at Sun Oct 25 15:14:57 IST 2026
[2026-10-25 15:14:57,511.511 INFO    ] ================================================
[2026-10-25 15:14:58,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:14:58
[2026-10-25 15:14:58,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:14:59,138.138 INFO    ] Initializing speech engine...
[2026-10-25 15:14:59,151.151 INFO    ] 2026-10-25 15:14:59
[2026-10-25 15:14:59,431.431 INFO    ] 2026-10-25 15:14:59
[2026-10-25 15:14:59,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:14:59,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:14:59,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:14:59,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:14:59,964.964 INFO    ] time= 25/10/2026 15:14:59
[2026-10-25 15:14:59,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:14:59,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:15:00,117.117 INFO    ] No existing commands found in stream
[2026-10-25 15:15:05,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:15:05,138.138 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 15:15:06,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:15:06,685.685 INFO    ] Checking for system updates...
[2026-10-25 15:15:06,722.722 INFO    ] 200
[2026-10-25 15:15:06,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:06,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:06,787.787 INFO    ] No update needed
[2026-10-25 15:15:06,789.789 INFO    ] Checking for camera pi updates...
[2026-10-25 15:15:06,827.827 INFO    ] 200
[2026-10-25 15:15:06,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:06,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:15:06,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:06,926.926 INFO    ] No camera update needed
[2026-10-25 15:15:06,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:15:06,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:15:06,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:15:06,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:15:08,983.983 INFO    ] ================================================
[2026-10-25 15:15:09,998.998 INFO    ] Launching Daemon at Sun Oct 25 15:15:08 IST 2026
[2026-10-25 15:15:09,008.008 INFO    ] ================================================
[2026-10-25 15:15:09,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:15:09
[2026-10-25 15:15:10,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:15:10,569.569 INFO    ] Initializing speech engine...
[2026-10-25 15:15:10,576.576 INFO    ] 2026-10-25 15:15:10
[2026-10-25 15:15:10,823.823 INFO    ] 2026-10-25 15:15:10
[2026-10-25 15:15:10,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:15:11,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:15:11,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:15:11,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:15:11,257.257 INFO    ] time= 25/10/2026 15:15:11
[2026-10-25 15:15:11,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:15:11,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:15:11,438.438 INFO    ] No existing commands found in stream
[2026-10-25 15:15:16,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:15:16,452.452 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 15:15:20,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:15:20,231.231 INFO    ] Checking for system updates...
[2026-10-25 15:15:20,267.267 INFO    ] 200
[2026-10-25 15:15:20,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:20,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:15:20,326.326 INFO    ] No update needed
[2026-10-25 15:15:20,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 15:15:20,373.373 INFO    ] 200
[2026-10-25 15:15:20,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:20,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:15:20,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:15:20,470.470 INFO    ] No camera update needed
[2026-10-25 15:15:20,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:15:20,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:15:20,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:15:20,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:15:22,526.526 INFO    ] ================================================
[2026-10-25 15:15:22,541.541 INFO    ] Launching Daemon at Sun Oct 25 15:15:22 IST 2026
[2026-10-25 15:15:22,552.552 INFO    ] ================================================
[2026-10-25 15:15:23,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:15:23
[2026-10-25 15:15:23,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:15:23,957.957 INFO    ] Initializing speech engine...
[2026-10-25 15:15:23,972.972 INFO    ] 2026-10-25 15:15:23
[2026-10-25 15:15:24,252.252 INFO    ] 2026-10-25 15:15:24
[2026-10-25 15:15:24,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:15:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:15:24,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:15:24,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:15:24,607.607 INFO    ] time= 25/10/2026 15:15:24
[2026-10-25 15:15:24,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:15:24,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:15:24,717.717 INFO    ] No existing commands found in stream
[2026-10-25 15:15:29,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:15:29,731.731 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 15:15:31,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:15:31,494.494 INFO    ] Checking for system updates...
[2026-10-25 15:15:31,530.530 INFO    ] 200
[2026-10-25 15:15:31,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:31,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:31,594.594 INFO    ] No update needed
[2026-10-25 15:15:31,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 15:15:31,629.629 INFO    ] 200
[2026-10-25 15:15:31,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:31,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:15:31,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:31,726.726 INFO    ] No camera update needed
[2026-10-25 15:15:31,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:15:31,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:15:31,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:15:31,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:15:33,781.781 INFO    ] ================================================
[2026-10-25 15:15:33,796.796 INFO    ] Launching Daemon at Sun Oct 25 15:15:33 IST 2026
[2026-10-25 15:15:33,806.806 INFO    ] ================================================
[2026-10-25 15:15:34,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:15:34
[2026-10-25 15:15:34,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:15:35,234.234 INFO    ] Initializing speech engine...
[2026-10-25 15:15:35,242.242 INFO    ] 2026-10-25 15:15:35
[2026-10-25 15:15:35,490.490 INFO    ] 2026-10-25 15:15:35
[2026-10-25 15:15:35,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:15:36,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:15:36,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:15:36,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:15:36,475.475 INFO    ] time= 25/10/2026 15:15:36
[2026-10-25 15:15:36,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:15:36,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:15:36,603.603 INFO    ] No existing commands found in stream
[2026-10-25 15:15:41,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:15:41,621.621 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 15:15:45,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:15:45,113.113 INFO    ] Checking for system updates...
[2026-10-25 15:15:45,149.149 INFO    ] 200
[2026-10-25 15:15:45,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:45,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:15:45,207.207 INFO    ] No update needed
[2026-10-25 15:15:45,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 15:15:45,245.245 INFO    ] 200
[2026-10-25 15:15:45,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:45,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:15:45,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:15:45,349.349 INFO    ] No camera update needed
[2026-10-25 15:15:45,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:15:45,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:15:45,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:15:45,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:15:47,406.406 INFO    ] ================================================
[2026-10-25 15:15:47,421.421 INFO    ] Launching Daemon at Sun Oct 25 15:15:47 IST 2026
[2026-10-25 15:15:47,432.432 INFO    ] ================================================
[2026-10-25 15:15:48,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:15:47
[2026-10-25 15:15:48,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:15:48,859.859 INFO    ] Initializing speech engine...
[2026-10-25 15:15:48,866.866 INFO    ] 2026-10-25 15:15:48
[2026-10-25 15:15:49,116.116 INFO    ] 2026-10-25 15:15:49
[2026-10-25 15:15:49,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:15:49,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:15:49,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:15:49,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:15:49,586.586 INFO    ] time= 25/10/2026 15:15:49
[2026-10-25 15:15:49,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:15:49,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:15:49,732.732 INFO    ] No existing commands found in stream
[2026-10-25 15:15:54,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:15:54,746.746 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 15:15:55,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:15:55,857.857 INFO    ] Checking for system updates...
[2026-10-25 15:15:55,896.896 INFO    ] 200
[2026-10-25 15:15:55,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:55,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:55,955.955 INFO    ] No update needed
[2026-10-25 15:15:55,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 15:15:55,991.991 INFO    ] 200
[2026-10-25 15:15:55,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:15:56,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:15:56,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:15:56,088.088 INFO    ] No camera update needed
[2026-10-25 15:15:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:15:56,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:15:56,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:15:56,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:15:58,143.143 INFO    ] ================================================
[2026-10-25 15:15:58,158.158 INFO    ] Launching Daemon at Sun Oct 25 15:15:58 IST 2026
[2026-10-25 15:15:58,168.168 INFO    ] ================================================
[2026-10-25 15:15:58,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:15:58
[2026-10-25 15:15:59,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:15:59,583.583 INFO    ] Initializing speech engine...
[2026-10-25 15:15:59,592.592 INFO    ] 2026-10-25 15:15:59
[2026-10-25 15:15:59,843.843 INFO    ] 2026-10-25 15:15:59
[2026-10-25 15:15:59,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:16:00,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:16:00,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:16:00,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:16:00,304.304 INFO    ] time= 25/10/2026 15:16:00
[2026-10-25 15:16:00,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:16:00,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:16:00,459.459 INFO    ] No existing commands found in stream
[2026-10-25 15:16:05,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:16:05,494.494 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 15:16:08,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:16:08,704.704 INFO    ] Checking for system updates...
[2026-10-25 15:16:08,744.744 INFO    ] 200
[2026-10-25 15:16:08,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:08,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:08,808.808 INFO    ] No update needed
[2026-10-25 15:16:08,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 15:16:08,845.845 INFO    ] 200
[2026-10-25 15:16:08,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:08,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:16:09,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:09,047.047 INFO    ] No camera update needed
[2026-10-25 15:16:09,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:16:09,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:16:09,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:16:09,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:16:11,105.105 INFO    ] ================================================
[2026-10-25 15:16:11,119.119 INFO    ] Launching Daemon at Sun Oct 25 15:16:11 IST 2026
[2026-10-25 15:16:11,130.130 INFO    ] ================================================
[2026-10-25 15:16:11,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:16:11
[2026-10-25 15:16:12,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:16:12,544.544 INFO    ] Initializing speech engine...
[2026-10-25 15:16:12,552.552 INFO    ] 2026-10-25 15:16:12
[2026-10-25 15:16:12,805.805 INFO    ] 2026-10-25 15:16:12
[2026-10-25 15:16:12,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:16:13,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:16:13,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:16:13,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:16:13,397.397 INFO    ] time= 25/10/2026 15:16:13
[2026-10-25 15:16:13,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:16:13,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:16:13,577.577 INFO    ] No existing commands found in stream
[2026-10-25 15:16:18,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:16:18,606.606 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 15:16:21,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:16:21,111.111 INFO    ] Checking for system updates...
[2026-10-25 15:16:21,151.151 INFO    ] 200
[2026-10-25 15:16:21,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:21,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:16:21,208.208 INFO    ] No update needed
[2026-10-25 15:16:21,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 15:16:21,248.248 INFO    ] 200
[2026-10-25 15:16:21,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:21,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:16:21,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:16:21,340.340 INFO    ] No camera update needed
[2026-10-25 15:16:21,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:16:21,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:16:21,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:16:21,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:16:23,396.396 INFO    ] ================================================
[2026-10-25 15:16:23,411.411 INFO    ] Launching Daemon at Sun Oct 25 15:16:23 IST 2026
[2026-10-25 15:16:23,422.422 INFO    ] ================================================
[2026-10-25 15:16:24,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:16:23
[2026-10-25 15:16:24,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:16:24,840.840 INFO    ] Initializing speech engine...
[2026-10-25 15:16:24,849.849 INFO    ] 2026-10-25 15:16:24
[2026-10-25 15:16:25,138.138 INFO    ] 2026-10-25 15:16:25
[2026-10-25 15:16:25,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:16:25,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:16:25,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:16:25,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:16:25,544.544 INFO    ] time= 25/10/2026 15:16:25
[2026-10-25 15:16:25,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:16:25,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:16:25,626.626 INFO    ] No existing commands found in stream
[2026-10-25 15:16:30,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:16:30,642.642 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 15:16:31,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:16:31,780.780 INFO    ] Checking for system updates...
[2026-10-25 15:16:31,819.819 INFO    ] 200
[2026-10-25 15:16:31,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:31,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:31,888.888 INFO    ] No update needed
[2026-10-25 15:16:31,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 15:16:31,927.927 INFO    ] 200
[2026-10-25 15:16:31,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:31,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:16:32,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:32,013.013 INFO    ] No camera update needed
[2026-10-25 15:16:32,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:16:32,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:16:32,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:16:32,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:16:34,072.072 INFO    ] ================================================
[2026-10-25 15:16:34,086.086 INFO    ] Launching Daemon at Sun Oct 25 15:16:34 IST 2026
[2026-10-25 15:16:34,097.097 INFO    ] ================================================
[2026-10-25 15:16:34,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:16:34
[2026-10-25 15:16:35,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:16:35,666.666 INFO    ] Initializing speech engine...
[2026-10-25 15:16:35,676.676 INFO    ] 2026-10-25 15:16:35
[2026-10-25 15:16:35,964.964 INFO    ] 2026-10-25 15:16:35
[2026-10-25 15:16:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:16:37,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:16:37,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:16:38,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:16:38,067.067 INFO    ] time= 25/10/2026 15:16:38
[2026-10-25 15:16:38,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:16:38,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:16:38,139.139 INFO    ] No existing commands found in stream
[2026-10-25 15:16:43,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:16:43,156.156 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 15:16:45,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:16:45,378.378 INFO    ] Checking for system updates...
[2026-10-25 15:16:45,415.415 INFO    ] 200
[2026-10-25 15:16:45,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:45,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:45,477.477 INFO    ] No update needed
[2026-10-25 15:16:45,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 15:16:45,516.516 INFO    ] 200
[2026-10-25 15:16:45,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:45,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:16:45,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:45,607.607 INFO    ] No camera update needed
[2026-10-25 15:16:45,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:16:45,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:16:45,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:16:45,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:16:47,663.663 INFO    ] ================================================
[2026-10-25 15:16:47,677.677 INFO    ] Launching Daemon at Sun Oct 25 15:16:47 IST 2026
[2026-10-25 15:16:47,688.688 INFO    ] ================================================
[2026-10-25 15:16:48,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:16:48
[2026-10-25 15:16:48,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:16:49,128.128 INFO    ] Initializing speech engine...
[2026-10-25 15:16:49,137.137 INFO    ] 2026-10-25 15:16:49
[2026-10-25 15:16:49,386.386 INFO    ] 2026-10-25 15:16:49
[2026-10-25 15:16:49,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:16:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:16:49,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:16:49,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:16:49,763.763 INFO    ] time= 25/10/2026 15:16:49
[2026-10-25 15:16:49,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:16:49,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:16:49,884.884 INFO    ] No existing commands found in stream
[2026-10-25 15:16:54,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:16:54,896.896 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 15:16:57,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:16:57,494.494 INFO    ] Checking for system updates...
[2026-10-25 15:16:57,538.538 INFO    ] 200
[2026-10-25 15:16:57,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:57,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:57,617.617 INFO    ] No update needed
[2026-10-25 15:16:57,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 15:16:57,667.667 INFO    ] 200
[2026-10-25 15:16:57,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:16:57,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:16:57,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:16:57,766.766 INFO    ] No camera update needed
[2026-10-25 15:16:57,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:16:57,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:16:57,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:16:57,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:16:59,822.822 INFO    ] ================================================
[2026-10-25 15:16:59,837.837 INFO    ] Launching Daemon at Sun Oct 25 15:16:59 IST 2026
[2026-10-25 15:16:59,848.848 INFO    ] ================================================
[2026-10-25 15:17:00,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:17:00
[2026-10-25 15:17:01,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:17:01,304.304 INFO    ] Initializing speech engine...
[2026-10-25 15:17:01,309.309 INFO    ] 2026-10-25 15:17:01
[2026-10-25 15:17:01,723.723 INFO    ] 2026-10-25 15:17:01
[2026-10-25 15:17:01,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:17:02,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:17:02,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:17:02,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:17:02,169.169 INFO    ] time= 25/10/2026 15:17:02
[2026-10-25 15:17:02,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:17:02,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:17:02,321.321 INFO    ] No existing commands found in stream
[2026-10-25 15:17:07,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:17:07,337.337 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 15:17:11,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:17:11,168.168 INFO    ] Checking for system updates...
[2026-10-25 15:17:11,204.204 INFO    ] 200
[2026-10-25 15:17:11,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:11,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:11,267.267 INFO    ] No update needed
[2026-10-25 15:17:11,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 15:17:11,303.303 INFO    ] 200
[2026-10-25 15:17:11,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:11,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:17:11,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:11,403.403 INFO    ] No camera update needed
[2026-10-25 15:17:11,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:17:11,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:17:11,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:17:11,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:17:13,460.460 INFO    ] ================================================
[2026-10-25 15:17:13,475.475 INFO    ] Launching Daemon at Sun Oct 25 15:17:13 IST 2026
[2026-10-25 15:17:13,485.485 INFO    ] ================================================
[2026-10-25 15:17:14,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:17:14
[2026-10-25 15:17:14,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:17:14,937.937 INFO    ] Initializing speech engine...
[2026-10-25 15:17:14,947.947 INFO    ] 2026-10-25 15:17:14
[2026-10-25 15:17:15,207.207 INFO    ] 2026-10-25 15:17:15
[2026-10-25 15:17:15,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:17:15,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:17:15,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:17:15,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:17:15,667.667 INFO    ] time= 25/10/2026 15:17:15
[2026-10-25 15:17:15,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:17:15,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:17:15,868.868 INFO    ] No existing commands found in stream
[2026-10-25 15:17:20,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:17:20,898.898 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 15:17:21,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:17:21,350.350 INFO    ] Checking for system updates...
[2026-10-25 15:17:21,389.389 INFO    ] 200
[2026-10-25 15:17:21,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:21,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:21,448.448 INFO    ] No update needed
[2026-10-25 15:17:21,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 15:17:21,484.484 INFO    ] 200
[2026-10-25 15:17:21,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:21,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:17:21,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:21,583.583 INFO    ] No camera update needed
[2026-10-25 15:17:21,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:17:21,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:17:21,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:17:21,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:17:23,639.639 INFO    ] ================================================
[2026-10-25 15:17:23,654.654 INFO    ] Launching Daemon at Sun Oct 25 15:17:23 IST 2026
[2026-10-25 15:17:23,665.665 INFO    ] ================================================
[2026-10-25 15:17:24,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:17:24
[2026-10-25 15:17:24,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:17:25,259.259 INFO    ] Initializing speech engine...
[2026-10-25 15:17:25,265.265 INFO    ] 2026-10-25 15:17:25
[2026-10-25 15:17:25,535.535 INFO    ] 2026-10-25 15:17:25
[2026-10-25 15:17:25,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:17:25,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:17:25,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:17:25,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:17:26,057.057 INFO    ] time= 25/10/2026 15:17:26
[2026-10-25 15:17:26,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:17:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:17:26,228.228 INFO    ] No existing commands found in stream
[2026-10-25 15:17:31,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:17:31,262.262 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 15:17:32,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:17:32,758.758 INFO    ] Checking for system updates...
[2026-10-25 15:17:32,796.796 INFO    ] 200
[2026-10-25 15:17:32,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:32,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:17:32,855.855 INFO    ] No update needed
[2026-10-25 15:17:32,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 15:17:32,896.896 INFO    ] 200
[2026-10-25 15:17:32,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:32,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:17:32,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:17:32,983.983 INFO    ] No camera update needed
[2026-10-25 15:17:32,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:17:32,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:17:32,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:17:33,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:17:35,041.041 INFO    ] ================================================
[2026-10-25 15:17:35,057.057 INFO    ] Launching Daemon at Sun Oct 25 15:17:35 IST 2026
[2026-10-25 15:17:35,067.067 INFO    ] ================================================
[2026-10-25 15:17:35,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:17:35
[2026-10-25 15:17:36,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:17:36,534.534 INFO    ] Initializing speech engine...
[2026-10-25 15:17:36,558.558 INFO    ] 2026-10-25 15:17:36
[2026-10-25 15:17:36,833.833 INFO    ] 2026-10-25 15:17:36
[2026-10-25 15:17:36,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:17:39,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:17:39,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:17:40,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:17:40,025.025 INFO    ] time= 25/10/2026 15:17:40
[2026-10-25 15:17:40,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:17:40,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:17:40,082.082 INFO    ] No existing commands found in stream
[2026-10-25 15:17:45,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:17:45,094.094 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 15:17:45,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:17:45,994.994 INFO    ] Checking for system updates...
[2026-10-25 15:17:46,036.036 INFO    ] 200
[2026-10-25 15:17:46,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:46,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:17:46,113.113 INFO    ] No update needed
[2026-10-25 15:17:46,116.116 INFO    ] Checking for camera pi updates...
[2026-10-25 15:17:46,151.151 INFO    ] 200
[2026-10-25 15:17:46,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:46,196.196 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:17:46,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:17:46,245.245 INFO    ] No camera update needed
[2026-10-25 15:17:46,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:17:46,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:17:46,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:17:46,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:17:48,305.305 INFO    ] ================================================
[2026-10-25 15:17:48,320.320 INFO    ] Launching Daemon at Sun Oct 25 15:17:48 IST 2026
[2026-10-25 15:17:48,330.330 INFO    ] ================================================
[2026-10-25 15:17:48,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:17:48
[2026-10-25 15:17:49,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:17:49,763.763 INFO    ] Initializing speech engine...
[2026-10-25 15:17:49,783.783 INFO    ] 2026-10-25 15:17:49
[2026-10-25 15:17:50,051.051 INFO    ] 2026-10-25 15:17:50
[2026-10-25 15:17:50,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:17:50,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:17:50,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:17:50,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:17:50,466.466 INFO    ] time= 25/10/2026 15:17:50
[2026-10-25 15:17:50,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:17:50,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:17:50,554.554 INFO    ] No existing commands found in stream
[2026-10-25 15:17:55,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:17:55,568.568 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 15:17:59,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:17:59,011.011 INFO    ] Checking for system updates...
[2026-10-25 15:17:59,047.047 INFO    ] 200
[2026-10-25 15:17:59,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:59,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:59,104.104 INFO    ] No update needed
[2026-10-25 15:17:59,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 15:17:59,140.140 INFO    ] 200
[2026-10-25 15:17:59,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:17:59,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:17:59,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:17:59,235.235 INFO    ] No camera update needed
[2026-10-25 15:17:59,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:17:59,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:17:59,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:17:59,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:18:01,290.290 INFO    ] ================================================
[2026-10-25 15:18:01,305.305 INFO    ] Launching Daemon at Sun Oct 25 15:18:01 IST 2026
[2026-10-25 15:18:01,316.316 INFO    ] ================================================
[2026-10-25 15:18:02,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:18:02
[2026-10-25 15:18:02,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:18:03,055.055 INFO    ] Initializing speech engine...
[2026-10-25 15:18:03,066.066 INFO    ] 2026-10-25 15:18:03
[2026-10-25 15:18:03,348.348 INFO    ] 2026-10-25 15:18:03
[2026-10-25 15:18:03,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:18:03,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:18:03,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:18:03,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:18:03,946.946 INFO    ] time= 25/10/2026 15:18:03
[2026-10-25 15:18:03,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:18:03,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:18:04,076.076 INFO    ] No existing commands found in stream
[2026-10-25 15:18:09,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:18:09,101.101 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 15:18:11,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:18:11,874.874 INFO    ] Checking for system updates...
[2026-10-25 15:18:11,915.915 INFO    ] 200
[2026-10-25 15:18:11,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:11,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:18:11,973.973 INFO    ] No update needed
[2026-10-25 15:18:11,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 15:18:12,009.009 INFO    ] 200
[2026-10-25 15:18:12,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:12,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:18:12,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:18:12,209.209 INFO    ] No camera update needed
[2026-10-25 15:18:12,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:18:12,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:18:12,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:18:12,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:18:14,266.266 INFO    ] ================================================
[2026-10-25 15:18:14,281.281 INFO    ] Launching Daemon at Sun Oct 25 15:18:14 IST 2026
[2026-10-25 15:18:14,292.292 INFO    ] ================================================
[2026-10-25 15:18:14,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:18:14
[2026-10-25 15:18:15,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:18:15,730.730 INFO    ] Initializing speech engine...
[2026-10-25 15:18:15,745.745 INFO    ] 2026-10-25 15:18:15
[2026-10-25 15:18:16,023.023 INFO    ] 2026-10-25 15:18:15
[2026-10-25 15:18:16,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:18:16,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:18:16,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:18:16,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:18:16,426.426 INFO    ] time= 25/10/2026 15:18:16
[2026-10-25 15:18:16,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:18:16,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:18:16,580.580 INFO    ] No existing commands found in stream
[2026-10-25 15:18:21,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:18:21,607.607 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 15:18:23,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:18:23,356.356 INFO    ] Checking for system updates...
[2026-10-25 15:18:23,392.392 INFO    ] 200
[2026-10-25 15:18:23,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:23,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:18:23,451.451 INFO    ] No update needed
[2026-10-25 15:18:23,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 15:18:23,488.488 INFO    ] 200
[2026-10-25 15:18:23,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:23,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:18:23,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:18:23,579.579 INFO    ] No camera update needed
[2026-10-25 15:18:23,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:18:23,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:18:23,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:18:23,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:18:25,633.633 INFO    ] ================================================
[2026-10-25 15:18:25,648.648 INFO    ] Launching Daemon at Sun Oct 25 15:18:25 IST 2026
[2026-10-25 15:18:25,658.658 INFO    ] ================================================
[2026-10-25 15:18:26,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:18:26
[2026-10-25 15:18:26,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:18:27,166.166 INFO    ] Initializing speech engine...
[2026-10-25 15:18:27,190.190 INFO    ] 2026-10-25 15:18:27
[2026-10-25 15:18:27,469.469 INFO    ] 2026-10-25 15:18:27
[2026-10-25 15:18:27,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:18:27,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:18:27,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:18:27,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:18:27,853.853 INFO    ] time= 25/10/2026 15:18:27
[2026-10-25 15:18:27,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:18:27,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:18:27,980.980 INFO    ] No existing commands found in stream
[2026-10-25 15:18:32,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:18:32,996.996 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 15:18:34,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:18:34,816.816 INFO    ] Checking for system updates...
[2026-10-25 15:18:34,852.852 INFO    ] 200
[2026-10-25 15:18:34,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:34,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:18:34,912.912 INFO    ] No update needed
[2026-10-25 15:18:34,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 15:18:34,953.953 INFO    ] 200
[2026-10-25 15:18:34,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:35,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:18:35,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:18:35,053.053 INFO    ] No camera update needed
[2026-10-25 15:18:35,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:18:35,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:18:35,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:18:35,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:18:37,107.107 INFO    ] ================================================
[2026-10-25 15:18:37,122.122 INFO    ] Launching Daemon at Sun Oct 25 15:18:37 IST 2026
[2026-10-25 15:18:37,133.133 INFO    ] ================================================
[2026-10-25 15:18:37,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:18:37
[2026-10-25 15:18:38,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:18:38,787.787 INFO    ] Initializing speech engine...
[2026-10-25 15:18:38,798.798 INFO    ] 2026-10-25 15:18:38
[2026-10-25 15:18:39,106.106 INFO    ] 2026-10-25 15:18:39
[2026-10-25 15:18:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:18:41,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:18:41,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:18:41,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:18:41,862.862 INFO    ] time= 25/10/2026 15:18:41
[2026-10-25 15:18:41,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:18:41,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:18:41,938.938 INFO    ] No existing commands found in stream
[2026-10-25 15:18:46,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:18:46,951.951 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 15:18:51,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:18:51,106.106 INFO    ] Checking for system updates...
[2026-10-25 15:18:51,149.149 INFO    ] 200
[2026-10-25 15:18:51,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:51,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:18:51,222.222 INFO    ] No update needed
[2026-10-25 15:18:51,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 15:18:51,266.266 INFO    ] 200
[2026-10-25 15:18:51,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:18:51,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:18:51,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:18:51,389.389 INFO    ] No camera update needed
[2026-10-25 15:18:51,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:18:51,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:18:51,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:18:51,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:18:53,450.450 INFO    ] ================================================
[2026-10-25 15:18:53,465.465 INFO    ] Launching Daemon at Sun Oct 25 15:18:53 IST 2026
[2026-10-25 15:18:53,476.476 INFO    ] ================================================
[2026-10-25 15:18:54,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:18:54
[2026-10-25 15:18:54,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:18:54,932.932 INFO    ] Initializing speech engine...
[2026-10-25 15:18:54,942.942 INFO    ] 2026-10-25 15:18:54
[2026-10-25 15:18:55,191.191 INFO    ] 2026-10-25 15:18:55
[2026-10-25 15:18:55,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:18:55,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:18:55,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:18:55,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:18:55,691.691 INFO    ] time= 25/10/2026 15:18:55
[2026-10-25 15:18:55,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:18:55,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:18:55,875.875 INFO    ] No existing commands found in stream
[2026-10-25 15:19:00,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:00,909.909 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 15:19:01,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:19:01,638.638 INFO    ] Checking for system updates...
[2026-10-25 15:19:01,674.674 INFO    ] 200
[2026-10-25 15:19:01,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:01,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:19:01,733.733 INFO    ] No update needed
[2026-10-25 15:19:01,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 15:19:01,778.778 INFO    ] 200
[2026-10-25 15:19:01,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:01,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:19:01,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:19:01,896.896 INFO    ] No camera update needed
[2026-10-25 15:19:01,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:19:01,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:19:01,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:19:01,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:19:03,986.986 INFO    ] ================================================
[2026-10-25 15:19:04,002.002 INFO    ] Launching Daemon at Sun Oct 25 15:19:03 IST 2026
[2026-10-25 15:19:04,013.013 INFO    ] ================================================
[2026-10-25 15:19:04,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:19:04
[2026-10-25 15:19:05,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:19:05,633.633 INFO    ] Initializing speech engine...
[2026-10-25 15:19:05,648.648 INFO    ] 2026-10-25 15:19:05
[2026-10-25 15:19:05,958.958 INFO    ] 2026-10-25 15:19:05
[2026-10-25 15:19:06,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:19:06,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:19:06,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:19:06,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:19:06,468.468 INFO    ] time= 25/10/2026 15:19:06
[2026-10-25 15:19:06,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:19:06,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:19:06,588.588 INFO    ] No existing commands found in stream
[2026-10-25 15:19:11,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:11,623.623 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 15:19:12,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:19:12,957.957 INFO    ] Checking for system updates...
[2026-10-25 15:19:12,999.999 INFO    ] 200
[2026-10-25 15:19:13,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:13,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:13,065.065 INFO    ] No update needed
[2026-10-25 15:19:13,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 15:19:13,105.105 INFO    ] 200
[2026-10-25 15:19:13,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:13,148.148 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:19:13,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:13,206.206 INFO    ] No camera update needed
[2026-10-25 15:19:13,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:19:13,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:19:13,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:19:13,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:19:15,262.262 INFO    ] ================================================
[2026-10-25 15:19:15,277.277 INFO    ] Launching Daemon at Sun Oct 25 15:19:15 IST 2026
[2026-10-25 15:19:15,288.288 INFO    ] ================================================
[2026-10-25 15:19:15,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:19:15
[2026-10-25 15:19:16,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:19:16,941.941 INFO    ] Initializing speech engine...
[2026-10-25 15:19:16,952.952 INFO    ] 2026-10-25 15:19:16
[2026-10-25 15:19:17,239.239 INFO    ] 2026-10-25 15:19:17
[2026-10-25 15:19:17,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:19:17,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:19:17,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:19:17,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:19:17,709.709 INFO    ] time= 25/10/2026 15:19:17
[2026-10-25 15:19:17,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:19:17,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:19:17,867.867 INFO    ] No existing commands found in stream
[2026-10-25 15:19:22,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:22,903.903 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 15:19:25,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:19:25,517.517 INFO    ] Checking for system updates...
[2026-10-25 15:19:25,554.554 INFO    ] 200
[2026-10-25 15:19:25,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:25,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:25,623.623 INFO    ] No update needed
[2026-10-25 15:19:25,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 15:19:25,665.665 INFO    ] 200
[2026-10-25 15:19:25,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:25,711.711 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:19:25,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:25,764.764 INFO    ] No camera update needed
[2026-10-25 15:19:25,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:19:25,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:19:25,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:19:25,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:19:27,824.824 INFO    ] ================================================
[2026-10-25 15:19:27,839.839 INFO    ] Launching Daemon at Sun Oct 25 15:19:27 IST 2026
[2026-10-25 15:19:27,850.850 INFO    ] ================================================
[2026-10-25 15:19:28,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:19:28
[2026-10-25 15:19:29,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:19:29,309.309 INFO    ] Initializing speech engine...
[2026-10-25 15:19:29,329.329 INFO    ] 2026-10-25 15:19:29
[2026-10-25 15:19:29,594.594 INFO    ] 2026-10-25 15:19:29
[2026-10-25 15:19:29,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:19:29,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:19:29,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:19:29,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:19:29,990.990 INFO    ] time= 25/10/2026 15:19:29
[2026-10-25 15:19:29,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:19:30,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:19:30,160.160 INFO    ] No existing commands found in stream
[2026-10-25 15:19:35,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:35,194.194 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 15:19:35,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:19:35,913.913 INFO    ] Checking for system updates...
[2026-10-25 15:19:35,949.949 INFO    ] 200
[2026-10-25 15:19:35,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:36,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:36,011.011 INFO    ] No update needed
[2026-10-25 15:19:36,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 15:19:36,048.048 INFO    ] 200
[2026-10-25 15:19:36,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:36,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:19:36,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:36,145.145 INFO    ] No camera update needed
[2026-10-25 15:19:36,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:19:36,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:19:36,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:19:36,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:19:38,200.200 INFO    ] ================================================
[2026-10-25 15:19:38,216.216 INFO    ] Launching Daemon at Sun Oct 25 15:19:38 IST 2026
[2026-10-25 15:19:38,232.232 INFO    ] ================================================
[2026-10-25 15:19:38,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:19:38
[2026-10-25 15:19:39,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:19:39,695.695 INFO    ] Initializing speech engine...
[2026-10-25 15:19:39,700.700 INFO    ] 2026-10-25 15:19:39
[2026-10-25 15:19:39,949.949 INFO    ] 2026-10-25 15:19:39
[2026-10-25 15:19:39,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:19:43,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:19:43,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:19:43,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:19:43,429.429 INFO    ] time= 25/10/2026 15:19:43
[2026-10-25 15:19:43,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:19:43,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:19:43,490.490 INFO    ] No existing commands found in stream
[2026-10-25 15:19:48,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:48,502.502 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 15:19:49,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:19:49,972.972 INFO    ] Checking for system updates...
[2026-10-25 15:19:50,012.012 INFO    ] 200
[2026-10-25 15:19:50,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:50,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:50,077.077 INFO    ] No update needed
[2026-10-25 15:19:50,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 15:19:50,118.118 INFO    ] 200
[2026-10-25 15:19:50,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:19:50,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:19:50,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:19:50,207.207 INFO    ] No camera update needed
[2026-10-25 15:19:50,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:19:50,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:19:50,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:19:50,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:19:52,266.266 INFO    ] ================================================
[2026-10-25 15:19:52,287.287 INFO    ] Launching Daemon at Sun Oct 25 15:19:52 IST 2026
[2026-10-25 15:19:52,299.299 INFO    ] ================================================
[2026-10-25 15:19:52,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:19:52
[2026-10-25 15:19:53,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:19:53,961.961 INFO    ] Initializing speech engine...
[2026-10-25 15:19:53,973.973 INFO    ] 2026-10-25 15:19:53
[2026-10-25 15:19:54,262.262 INFO    ] 2026-10-25 15:19:54
[2026-10-25 15:19:54,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:19:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:19:54,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:19:54,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:19:54,739.739 INFO    ] time= 25/10/2026 15:19:54
[2026-10-25 15:19:54,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:19:54,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:19:54,963.963 INFO    ] No existing commands found in stream
[2026-10-25 15:19:59,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:19:59,995.995 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 15:20:05,266.266 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:20:05,269.269 INFO    ] Checking for system updates...
[2026-10-25 15:20:05,305.305 INFO    ] 200
[2026-10-25 15:20:05,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:05,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:05,364.364 INFO    ] No update needed
[2026-10-25 15:20:05,367.367 INFO    ] Checking for camera pi updates...
[2026-10-25 15:20:05,405.405 INFO    ] 200
[2026-10-25 15:20:05,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:05,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:20:05,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:05,510.510 INFO    ] No camera update needed
[2026-10-25 15:20:05,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:20:05,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:20:05,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:20:05,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:20:07,566.566 INFO    ] ================================================
[2026-10-25 15:20:07,582.582 INFO    ] Launching Daemon at Sun Oct 25 15:20:07 IST 2026
[2026-10-25 15:20:07,593.593 INFO    ] ================================================
[2026-10-25 15:20:08,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:20:08
[2026-10-25 15:20:08,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:20:08,988.988 INFO    ] Initializing speech engine...
[2026-10-25 15:20:09,009.009 INFO    ] 2026-10-25 15:20:08
[2026-10-25 15:20:09,263.263 INFO    ] 2026-10-25 15:20:09
[2026-10-25 15:20:09,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:20:09,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:20:09,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:20:09,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:20:09,641.641 INFO    ] time= 25/10/2026 15:20:09
[2026-10-25 15:20:09,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:20:09,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:20:09,818.818 INFO    ] No existing commands found in stream
[2026-10-25 15:20:14,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:20:14,852.852 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 15:20:19,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:20:19,053.053 INFO    ] Checking for system updates...
[2026-10-25 15:20:19,089.089 INFO    ] 200
[2026-10-25 15:20:19,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:19,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:19,155.155 INFO    ] No update needed
[2026-10-25 15:20:19,157.157 INFO    ] Checking for camera pi updates...
[2026-10-25 15:20:19,194.194 INFO    ] 200
[2026-10-25 15:20:19,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:19,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:20:19,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:19,395.395 INFO    ] No camera update needed
[2026-10-25 15:20:19,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:20:19,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:20:19,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:20:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:20:21,452.452 INFO    ] ================================================
[2026-10-25 15:20:21,467.467 INFO    ] Launching Daemon at Sun Oct 25 15:20:21 IST 2026
[2026-10-25 15:20:21,479.479 INFO    ] ================================================
[2026-10-25 15:20:22,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:20:22
[2026-10-25 15:20:22,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:20:22,885.885 INFO    ] Initializing speech engine...
[2026-10-25 15:20:22,897.897 INFO    ] 2026-10-25 15:20:22
[2026-10-25 15:20:23,160.160 INFO    ] 2026-10-25 15:20:23
[2026-10-25 15:20:23,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:20:23,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:20:23,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:20:23,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:20:23,526.526 INFO    ] time= 25/10/2026 15:20:23
[2026-10-25 15:20:23,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:20:23,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:20:23,600.600 INFO    ] No existing commands found in stream
[2026-10-25 15:20:28,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:20:28,615.615 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 15:20:32,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:20:32,482.482 INFO    ] Checking for system updates...
[2026-10-25 15:20:32,520.520 INFO    ] 200
[2026-10-25 15:20:32,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:32,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:32,584.584 INFO    ] No update needed
[2026-10-25 15:20:32,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 15:20:32,625.625 INFO    ] 200
[2026-10-25 15:20:32,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:32,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:20:32,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:20:32,716.716 INFO    ] No camera update needed
[2026-10-25 15:20:32,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:20:32,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:20:32,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:20:32,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:20:34,776.776 INFO    ] ================================================
[2026-10-25 15:20:34,791.791 INFO    ] Launching Daemon at Sun Oct 25 15:20:34 IST 2026
[2026-10-25 15:20:34,802.802 INFO    ] ================================================
[2026-10-25 15:20:35,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:20:35
[2026-10-25 15:20:35,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:20:36,203.203 INFO    ] Initializing speech engine...
[2026-10-25 15:20:36,226.226 INFO    ] 2026-10-25 15:20:36
[2026-10-25 15:20:36,478.478 INFO    ] 2026-10-25 15:20:36
[2026-10-25 15:20:36,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:20:36,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:20:36,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:20:36,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:20:36,954.954 INFO    ] time= 25/10/2026 15:20:36
[2026-10-25 15:20:37,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:20:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:20:37,100.100 INFO    ] No existing commands found in stream
[2026-10-25 15:20:42,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:20:42,123.123 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 15:20:46,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:20:46,537.537 INFO    ] Checking for system updates...
[2026-10-25 15:20:46,573.573 INFO    ] 200
[2026-10-25 15:20:46,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:46,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:20:46,631.631 INFO    ] No update needed
[2026-10-25 15:20:46,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 15:20:46,667.667 INFO    ] 200
[2026-10-25 15:20:46,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:46,717.717 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:20:46,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:20:46,764.764 INFO    ] No camera update needed
[2026-10-25 15:20:46,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:20:46,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:20:46,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:20:46,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:20:48,819.819 INFO    ] ================================================
[2026-10-25 15:20:48,834.834 INFO    ] Launching Daemon at Sun Oct 25 15:20:48 IST 2026
[2026-10-25 15:20:48,845.845 INFO    ] ================================================
[2026-10-25 15:20:49,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:20:49
[2026-10-25 15:20:49,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:20:50,237.237 INFO    ] Initializing speech engine...
[2026-10-25 15:20:50,245.245 INFO    ] 2026-10-25 15:20:50
[2026-10-25 15:20:50,540.540 INFO    ] 2026-10-25 15:20:50
[2026-10-25 15:20:50,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:20:50,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:20:50,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:20:50,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:20:50,970.970 INFO    ] time= 25/10/2026 15:20:50
[2026-10-25 15:20:50,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:20:50,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:20:51,055.055 INFO    ] No existing commands found in stream
[2026-10-25 15:20:56,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:20:56,071.071 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 15:20:58,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:20:58,138.138 INFO    ] Checking for system updates...
[2026-10-25 15:20:58,174.174 INFO    ] 200
[2026-10-25 15:20:58,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:58,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:20:58,232.232 INFO    ] No update needed
[2026-10-25 15:20:58,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 15:20:58,268.268 INFO    ] 200
[2026-10-25 15:20:58,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:20:58,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:20:58,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:20:58,359.359 INFO    ] No camera update needed
[2026-10-25 15:20:58,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:20:58,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:20:58,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:20:58,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:21:00,413.413 INFO    ] ================================================
[2026-10-25 15:21:00,428.428 INFO    ] Launching Daemon at Sun Oct 25 15:21:00 IST 2026
[2026-10-25 15:21:00,439.439 INFO    ] ================================================
[2026-10-25 15:21:01,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:21:01
[2026-10-25 15:21:01,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:21:02,059.059 INFO    ] Initializing speech engine...
[2026-10-25 15:21:02,085.085 INFO    ] 2026-10-25 15:21:02
[2026-10-25 15:21:02,375.375 INFO    ] 2026-10-25 15:21:02
[2026-10-25 15:21:02,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:21:02,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:21:02,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:21:02,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:21:02,772.772 INFO    ] time= 25/10/2026 15:21:02
[2026-10-25 15:21:02,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:21:02,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:21:02,897.897 INFO    ] No existing commands found in stream
[2026-10-25 15:21:07,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:21:07,911.911 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 15:21:11,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:21:11,719.719 INFO    ] Checking for system updates...
[2026-10-25 15:21:11,755.755 INFO    ] 200
[2026-10-25 15:21:11,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:11,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:21:11,813.813 INFO    ] No update needed
[2026-10-25 15:21:11,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 15:21:11,849.849 INFO    ] 200
[2026-10-25 15:21:11,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:11,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:21:11,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:21:11,947.947 INFO    ] No camera update needed
[2026-10-25 15:21:11,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:21:11,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:21:11,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:21:11,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:21:14,005.005 INFO    ] ================================================
[2026-10-25 15:21:14,020.020 INFO    ] Launching Daemon at Sun Oct 25 15:21:14 IST 2026
[2026-10-25 15:21:14,031.031 INFO    ] ================================================
[2026-10-25 15:21:14,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:21:14
[2026-10-25 15:21:15,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:21:15,433.433 INFO    ] Initializing speech engine...
[2026-10-25 15:21:15,457.457 INFO    ] 2026-10-25 15:21:15
[2026-10-25 15:21:15,715.715 INFO    ] 2026-10-25 15:21:15
[2026-10-25 15:21:15,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:21:15,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:21:15,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:21:16,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:21:16,092.092 INFO    ] time= 25/10/2026 15:21:16
[2026-10-25 15:21:16,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:21:16,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:21:16,267.267 INFO    ] No existing commands found in stream
[2026-10-25 15:21:21,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:21:21,295.295 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 15:21:25,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:21:25,363.363 INFO    ] Checking for system updates...
[2026-10-25 15:21:25,406.406 INFO    ] 200
[2026-10-25 15:21:25,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 15:21:25,411.411 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 15:21:25,413.413 INFO    ] Checking for camera pi updates...
[2026-10-25 15:21:25,456.456 INFO    ] 200
[2026-10-25 15:21:25,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 15:21:25,461.461 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 15:21:25,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:21:25,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:21:25,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:21:25,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:21:27,520.520 INFO    ] ================================================
[2026-10-25 15:21:27,535.535 INFO    ] Launching Daemon at Sun Oct 25 15:21:27 IST 2026
[2026-10-25 15:21:27,546.546 INFO    ] ================================================
[2026-10-25 15:21:28,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:21:28
[2026-10-25 15:21:28,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:21:28,944.944 INFO    ] Initializing speech engine...
[2026-10-25 15:21:28,965.965 INFO    ] 2026-10-25 15:21:28
[2026-10-25 15:21:29,223.223 INFO    ] 2026-10-25 15:21:29
[2026-10-25 15:21:29,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:21:29,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:21:29,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:21:29,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:21:29,600.600 INFO    ] time= 25/10/2026 15:21:29
[2026-10-25 15:21:29,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:21:29,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:21:29,765.765 INFO    ] No existing commands found in stream
[2026-10-25 15:21:34,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:21:34,798.798 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 15:21:39,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:21:39,121.121 INFO    ] Checking for system updates...
[2026-10-25 15:21:39,157.157 INFO    ] 200
[2026-10-25 15:21:39,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:39,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:21:39,221.221 INFO    ] No update needed
[2026-10-25 15:21:39,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 15:21:39,261.261 INFO    ] 200
[2026-10-25 15:21:39,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:39,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:21:39,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:21:39,360.360 INFO    ] No camera update needed
[2026-10-25 15:21:39,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:21:39,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:21:39,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:21:39,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:21:41,417.417 INFO    ] ================================================
[2026-10-25 15:21:41,432.432 INFO    ] Launching Daemon at Sun Oct 25 15:21:41 IST 2026
[2026-10-25 15:21:41,443.443 INFO    ] ================================================
[2026-10-25 15:21:42,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:21:42
[2026-10-25 15:21:42,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:21:43,071.071 INFO    ] Initializing speech engine...
[2026-10-25 15:21:43,085.085 INFO    ] 2026-10-25 15:21:43
[2026-10-25 15:21:43,371.371 INFO    ] 2026-10-25 15:21:43
[2026-10-25 15:21:43,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:21:46,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:21:46,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:21:46,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:21:46,485.485 INFO    ] time= 25/10/2026 15:21:46
[2026-10-25 15:21:46,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:21:46,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:21:46,541.541 INFO    ] No existing commands found in stream
[2026-10-25 15:21:51,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:21:51,555.555 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 15:21:55,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:21:55,654.654 INFO    ] Checking for system updates...
[2026-10-25 15:21:55,689.689 INFO    ] 200
[2026-10-25 15:21:55,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:55,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:21:55,747.747 INFO    ] No update needed
[2026-10-25 15:21:55,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 15:21:55,786.786 INFO    ] 200
[2026-10-25 15:21:55,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:21:55,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:21:55,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:21:55,892.892 INFO    ] No camera update needed
[2026-10-25 15:21:55,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:21:55,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:21:55,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:21:55,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:21:57,946.946 INFO    ] ================================================
[2026-10-25 15:21:57,962.962 INFO    ] Launching Daemon at Sun Oct 25 15:21:57 IST 2026
[2026-10-25 15:21:57,973.973 INFO    ] ================================================
[2026-10-25 15:21:58,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:21:58
[2026-10-25 15:21:59,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:21:59,420.420 INFO    ] Initializing speech engine...
[2026-10-25 15:21:59,429.429 INFO    ] 2026-10-25 15:21:59
[2026-10-25 15:21:59,724.724 INFO    ] 2026-10-25 15:21:59
[2026-10-25 15:21:59,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:21:59,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:21:59,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:00,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:00,076.076 INFO    ] time= 25/10/2026 15:22:00
[2026-10-25 15:22:00,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:00,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:00,158.158 INFO    ] No existing commands found in stream
[2026-10-25 15:22:05,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:22:05,174.174 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 15:22:08,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:22:08,423.423 INFO    ] Checking for system updates...
[2026-10-25 15:22:08,464.464 INFO    ] 200
[2026-10-25 15:22:08,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:08,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:22:08,521.521 INFO    ] No update needed
[2026-10-25 15:22:08,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 15:22:08,557.557 INFO    ] 200
[2026-10-25 15:22:08,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:08,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:22:08,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:22:08,662.662 INFO    ] No camera update needed
[2026-10-25 15:22:08,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:22:08,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:22:08,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:22:08,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:22:10,717.717 INFO    ] ================================================
[2026-10-25 15:22:10,732.732 INFO    ] Launching Daemon at Sun Oct 25 15:22:10 IST 2026
[2026-10-25 15:22:10,743.743 INFO    ] ================================================
[2026-10-25 15:22:11,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:22:11
[2026-10-25 15:22:11,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:22:12,157.157 INFO    ] Initializing speech engine...
[2026-10-25 15:22:12,170.170 INFO    ] 2026-10-25 15:22:12
[2026-10-25 15:22:12,421.421 INFO    ] 2026-10-25 15:22:12
[2026-10-25 15:22:12,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:22:12,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:22:12,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:12,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:12,893.893 INFO    ] time= 25/10/2026 15:22:12
[2026-10-25 15:22:12,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:12,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:13,063.063 INFO    ] No existing commands found in stream
[2026-10-25 15:22:18,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:22:18,103.103 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 15:22:19,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:22:19,013.013 INFO    ] Checking for system updates...
[2026-10-25 15:22:19,054.054 INFO    ] 200
[2026-10-25 15:22:19,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:19,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:22:19,118.118 INFO    ] No update needed
[2026-10-25 15:22:19,120.120 INFO    ] Checking for camera pi updates...
[2026-10-25 15:22:19,154.154 INFO    ] 200
[2026-10-25 15:22:19,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:19,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:22:19,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:22:19,255.255 INFO    ] No camera update needed
[2026-10-25 15:22:19,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:22:19,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:22:19,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:22:19,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:22:21,312.312 INFO    ] ================================================
[2026-10-25 15:22:21,327.327 INFO    ] Launching Daemon at Sun Oct 25 15:22:21 IST 2026
[2026-10-25 15:22:21,338.338 INFO    ] ================================================
[2026-10-25 15:22:21,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:22:21
[2026-10-25 15:22:22,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:22:22,756.756 INFO    ] Initializing speech engine...
[2026-10-25 15:22:22,771.771 INFO    ] 2026-10-25 15:22:22
[2026-10-25 15:22:23,038.038 INFO    ] 2026-10-25 15:22:23
[2026-10-25 15:22:23,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:22:23,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:22:23,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:23,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:23,519.519 INFO    ] time= 25/10/2026 15:22:23
[2026-10-25 15:22:23,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:23,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:23,681.681 INFO    ] No existing commands found in stream
[2026-10-25 15:22:28,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:22:28,695.695 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 15:22:29,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:22:29,553.553 INFO    ] Checking for system updates...
[2026-10-25 15:22:29,588.588 INFO    ] 200
[2026-10-25 15:22:29,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:29,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:29,654.654 INFO    ] No update needed
[2026-10-25 15:22:29,656.656 INFO    ] Checking for camera pi updates...
[2026-10-25 15:22:29,694.694 INFO    ] 200
[2026-10-25 15:22:29,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:29,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:22:29,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:29,882.882 INFO    ] No camera update needed
[2026-10-25 15:22:29,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:22:29,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:22:29,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:22:29,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:22:31,943.943 INFO    ] ================================================
[2026-10-25 15:22:31,959.959 INFO    ] Launching Daemon at Sun Oct 25 15:22:31 IST 2026
[2026-10-25 15:22:31,971.971 INFO    ] ================================================
[2026-10-25 15:22:32,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:22:32
[2026-10-25 15:22:33,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:22:33,426.426 INFO    ] Initializing speech engine...
[2026-10-25 15:22:33,435.435 INFO    ] 2026-10-25 15:22:33
[2026-10-25 15:22:33,739.739 INFO    ] 2026-10-25 15:22:33
[2026-10-25 15:22:33,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:22:33,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:22:33,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:34,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:34,105.105 INFO    ] time= 25/10/2026 15:22:34
[2026-10-25 15:22:34,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:34,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:34,194.194 INFO    ] No existing commands found in stream
[2026-10-25 15:22:39,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:22:39,207.207 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 15:22:40,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:22:40,212.212 INFO    ] Checking for system updates...
[2026-10-25 15:22:40,249.249 INFO    ] 200
[2026-10-25 15:22:40,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:40,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:40,315.315 INFO    ] No update needed
[2026-10-25 15:22:40,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 15:22:40,352.352 INFO    ] 200
[2026-10-25 15:22:40,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:40,397.397 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:22:40,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:40,450.450 INFO    ] No camera update needed
[2026-10-25 15:22:40,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:22:40,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:22:40,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:22:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:22:42,511.511 INFO    ] ================================================
[2026-10-25 15:22:42,527.527 INFO    ] Launching Daemon at Sun Oct 25 15:22:42 IST 2026
[2026-10-25 15:22:42,538.538 INFO    ] ================================================
[2026-10-25 15:22:43,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:22:43
[2026-10-25 15:22:43,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:22:44,129.129 INFO    ] Initializing speech engine...
[2026-10-25 15:22:44,138.138 INFO    ] 2026-10-25 15:22:44
[2026-10-25 15:22:44,407.407 INFO    ] 2026-10-25 15:22:44
[2026-10-25 15:22:44,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:22:47,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:22:47,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:47,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:47,797.797 INFO    ] time= 25/10/2026 15:22:47
[2026-10-25 15:22:47,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:47,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:47,853.853 INFO    ] No existing commands found in stream
[2026-10-25 15:22:52,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:22:52,867.867 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 15:22:53,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:22:53,868.868 INFO    ] Checking for system updates...
[2026-10-25 15:22:53,908.908 INFO    ] 200
[2026-10-25 15:22:53,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:53,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:53,968.968 INFO    ] No update needed
[2026-10-25 15:22:53,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 15:22:54,005.005 INFO    ] 200
[2026-10-25 15:22:54,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:22:54,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:22:54,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:22:54,104.104 INFO    ] No camera update needed
[2026-10-25 15:22:54,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:22:54,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:22:54,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:22:54,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:22:56,161.161 INFO    ] ================================================
[2026-10-25 15:22:56,176.176 INFO    ] Launching Daemon at Sun Oct 25 15:22:56 IST 2026
[2026-10-25 15:22:56,186.186 INFO    ] ================================================
[2026-10-25 15:22:56,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:22:56
[2026-10-25 15:22:57,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:22:57,778.778 INFO    ] Initializing speech engine...
[2026-10-25 15:22:57,785.785 INFO    ] 2026-10-25 15:22:57
[2026-10-25 15:22:58,075.075 INFO    ] 2026-10-25 15:22:58
[2026-10-25 15:22:58,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:22:58,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:22:58,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:22:58,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:22:58,607.607 INFO    ] time= 25/10/2026 15:22:58
[2026-10-25 15:22:58,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:22:58,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:22:58,760.760 INFO    ] No existing commands found in stream
[2026-10-25 15:23:03,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:23:03,779.779 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 15:23:04,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:23:04,342.342 INFO    ] Checking for system updates...
[2026-10-25 15:23:04,383.383 INFO    ] 200
[2026-10-25 15:23:04,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:04,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:23:04,443.443 INFO    ] No update needed
[2026-10-25 15:23:04,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 15:23:04,479.479 INFO    ] 200
[2026-10-25 15:23:04,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:04,523.523 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:23:04,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:23:04,572.572 INFO    ] No camera update needed
[2026-10-25 15:23:04,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:23:04,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:23:04,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:23:04,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:23:06,628.628 INFO    ] ================================================
[2026-10-25 15:23:06,643.643 INFO    ] Launching Daemon at Sun Oct 25 15:23:06 IST 2026
[2026-10-25 15:23:06,654.654 INFO    ] ================================================
[2026-10-25 15:23:07,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:23:07
[2026-10-25 15:23:07,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:23:08,260.260 INFO    ] Initializing speech engine...
[2026-10-25 15:23:08,270.270 INFO    ] 2026-10-25 15:23:08
[2026-10-25 15:23:08,558.558 INFO    ] 2026-10-25 15:23:08
[2026-10-25 15:23:08,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:23:08,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:23:08,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:23:09,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:23:09,107.107 INFO    ] time= 25/10/2026 15:23:09
[2026-10-25 15:23:09,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:23:09,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:23:09,261.261 INFO    ] No existing commands found in stream
[2026-10-25 15:23:14,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:23:14,278.278 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 15:23:18,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:23:18,720.720 INFO    ] Checking for system updates...
[2026-10-25 15:23:18,757.757 INFO    ] 200
[2026-10-25 15:23:18,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:18,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:18,821.821 INFO    ] No update needed
[2026-10-25 15:23:18,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 15:23:18,857.857 INFO    ] 200
[2026-10-25 15:23:18,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:18,905.905 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:23:18,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:18,954.954 INFO    ] No camera update needed
[2026-10-25 15:23:18,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:23:18,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:23:18,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:23:18,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:23:21,008.008 INFO    ] ================================================
[2026-10-25 15:23:21,023.023 INFO    ] Launching Daemon at Sun Oct 25 15:23:21 IST 2026
[2026-10-25 15:23:21,034.034 INFO    ] ================================================
[2026-10-25 15:23:21,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:23:21
[2026-10-25 15:23:22,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:23:22,439.439 INFO    ] Initializing speech engine...
[2026-10-25 15:23:22,446.446 INFO    ] 2026-10-25 15:23:22
[2026-10-25 15:23:22,738.738 INFO    ] 2026-10-25 15:23:22
[2026-10-25 15:23:22,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:23:22,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:23:22,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:23:23,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:23:23,119.119 INFO    ] time= 25/10/2026 15:23:23
[2026-10-25 15:23:23,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:23:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:23:23,277.277 INFO    ] No existing commands found in stream
[2026-10-25 15:23:28,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:23:28,305.305 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 15:23:29,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:23:29,528.528 INFO    ] Checking for system updates...
[2026-10-25 15:23:29,565.565 INFO    ] 200
[2026-10-25 15:23:29,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:29,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:23:29,622.622 INFO    ] No update needed
[2026-10-25 15:23:29,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 15:23:29,658.658 INFO    ] 200
[2026-10-25 15:23:29,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:29,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:23:29,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:23:29,750.750 INFO    ] No camera update needed
[2026-10-25 15:23:29,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:23:29,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:23:29,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:23:29,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:23:31,805.805 INFO    ] ================================================
[2026-10-25 15:23:31,821.821 INFO    ] Launching Daemon at Sun Oct 25 15:23:31 IST 2026
[2026-10-25 15:23:31,832.832 INFO    ] ================================================
[2026-10-25 15:23:32,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:23:32
[2026-10-25 15:23:33,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:23:33,386.386 INFO    ] Initializing speech engine...
[2026-10-25 15:23:33,409.409 INFO    ] 2026-10-25 15:23:33
[2026-10-25 15:23:33,664.664 INFO    ] 2026-10-25 15:23:33
[2026-10-25 15:23:33,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:23:33,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:23:33,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:23:34,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:23:34,154.154 INFO    ] time= 25/10/2026 15:23:34
[2026-10-25 15:23:34,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:23:34,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:23:34,346.346 INFO    ] No existing commands found in stream
[2026-10-25 15:23:39,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:23:39,379.379 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 15:23:41,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:23:41,850.850 INFO    ] Checking for system updates...
[2026-10-25 15:23:41,890.890 INFO    ] 200
[2026-10-25 15:23:41,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:41,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:41,947.947 INFO    ] No update needed
[2026-10-25 15:23:41,950.950 INFO    ] Checking for camera pi updates...
[2026-10-25 15:23:41,983.983 INFO    ] 200
[2026-10-25 15:23:41,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:42,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:23:42,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:42,077.077 INFO    ] No camera update needed
[2026-10-25 15:23:42,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:23:42,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:23:42,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:23:42,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:23:44,132.132 INFO    ] ================================================
[2026-10-25 15:23:44,148.148 INFO    ] Launching Daemon at Sun Oct 25 15:23:44 IST 2026
[2026-10-25 15:23:44,159.159 INFO    ] ================================================
[2026-10-25 15:23:44,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:23:44
[2026-10-25 15:23:45,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:23:45,614.614 INFO    ] Initializing speech engine...
[2026-10-25 15:23:45,619.619 INFO    ] 2026-10-25 15:23:45
[2026-10-25 15:23:45,882.882 INFO    ] 2026-10-25 15:23:45
[2026-10-25 15:23:45,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:23:49,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:23:49,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:23:49,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:23:49,593.593 INFO    ] time= 25/10/2026 15:23:49
[2026-10-25 15:23:49,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:23:49,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:23:49,647.647 INFO    ] No existing commands found in stream
[2026-10-25 15:23:54,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:23:54,659.659 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 15:23:56,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:23:56,627.627 INFO    ] Checking for system updates...
[2026-10-25 15:23:56,663.663 INFO    ] 200
[2026-10-25 15:23:56,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:56,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:56,727.727 INFO    ] No update needed
[2026-10-25 15:23:56,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 15:23:56,766.766 INFO    ] 200
[2026-10-25 15:23:56,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:23:56,809.809 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:23:56,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:23:56,859.859 INFO    ] No camera update needed
[2026-10-25 15:23:56,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:23:56,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:23:56,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:23:56,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:23:58,915.915 INFO    ] ================================================
[2026-10-25 15:23:58,931.931 INFO    ] Launching Daemon at Sun Oct 25 15:23:58 IST 2026
[2026-10-25 15:23:58,943.943 INFO    ] ================================================
[2026-10-25 15:23:59,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:23:59
[2026-10-25 15:24:00,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:24:00,406.406 INFO    ] Initializing speech engine...
[2026-10-25 15:24:00,415.415 INFO    ] 2026-10-25 15:24:00
[2026-10-25 15:24:00,665.665 INFO    ] 2026-10-25 15:24:00
[2026-10-25 15:24:00,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:24:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:24:00,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:24:01,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:24:01,037.037 INFO    ] time= 25/10/2026 15:24:01
[2026-10-25 15:24:01,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:24:01,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:24:01,115.115 INFO    ] No existing commands found in stream
[2026-10-25 15:24:06,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:24:06,153.153 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 15:24:08,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:24:08,991.991 INFO    ] Checking for system updates...
[2026-10-25 15:24:09,026.026 INFO    ] 200
[2026-10-25 15:24:09,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:09,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:24:09,084.084 INFO    ] No update needed
[2026-10-25 15:24:09,086.086 INFO    ] Checking for camera pi updates...
[2026-10-25 15:24:09,120.120 INFO    ] 200
[2026-10-25 15:24:09,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:09,168.168 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:24:09,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:24:09,214.214 INFO    ] No camera update needed
[2026-10-25 15:24:09,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:24:09,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:24:09,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:24:09,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:24:11,270.270 INFO    ] ================================================
[2026-10-25 15:24:11,286.286 INFO    ] Launching Daemon at Sun Oct 25 15:24:11 IST 2026
[2026-10-25 15:24:11,298.298 INFO    ] ================================================
[2026-10-25 15:24:11,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:24:11
[2026-10-25 15:24:12,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:24:12,711.711 INFO    ] Initializing speech engine...
[2026-10-25 15:24:12,717.717 INFO    ] 2026-10-25 15:24:12
[2026-10-25 15:24:13,009.009 INFO    ] 2026-10-25 15:24:12
[2026-10-25 15:24:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:24:13,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:24:13,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:24:13,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:24:13,416.416 INFO    ] time= 25/10/2026 15:24:13
[2026-10-25 15:24:13,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:24:13,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:24:13,503.503 INFO    ] No existing commands found in stream
[2026-10-25 15:24:18,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:24:18,519.519 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 15:24:20,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:24:20,698.698 INFO    ] Checking for system updates...
[2026-10-25 15:24:20,735.735 INFO    ] 200
[2026-10-25 15:24:20,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:20,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:20,792.792 INFO    ] No update needed
[2026-10-25 15:24:20,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 15:24:20,832.832 INFO    ] 200
[2026-10-25 15:24:20,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:20,875.875 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:24:20,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:20,934.934 INFO    ] No camera update needed
[2026-10-25 15:24:20,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:24:20,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:24:20,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:24:20,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:24:22,991.991 INFO    ] ================================================
[2026-10-25 15:24:23,007.007 INFO    ] Launching Daemon at Sun Oct 25 15:24:23 IST 2026
[2026-10-25 15:24:23,022.022 INFO    ] ================================================
[2026-10-25 15:24:23,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:24:23
[2026-10-25 15:24:24,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:24:24,434.434 INFO    ] Initializing speech engine...
[2026-10-25 15:24:24,442.442 INFO    ] 2026-10-25 15:24:24
[2026-10-25 15:24:24,734.734 INFO    ] 2026-10-25 15:24:24
[2026-10-25 15:24:24,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:24:24,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:24:24,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:24:25,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:24:25,105.105 INFO    ] time= 25/10/2026 15:24:25
[2026-10-25 15:24:25,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:24:25,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:24:25,228.228 INFO    ] No existing commands found in stream
[2026-10-25 15:24:30,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:24:30,243.243 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 15:24:33,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:24:33,592.592 INFO    ] Checking for system updates...
[2026-10-25 15:24:33,628.628 INFO    ] 200
[2026-10-25 15:24:33,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:33,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:33,694.694 INFO    ] No update needed
[2026-10-25 15:24:33,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 15:24:33,732.732 INFO    ] 200
[2026-10-25 15:24:33,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:33,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:24:33,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:33,834.834 INFO    ] No camera update needed
[2026-10-25 15:24:33,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:24:33,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:24:33,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:24:33,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:24:35,893.893 INFO    ] ================================================
[2026-10-25 15:24:35,909.909 INFO    ] Launching Daemon at Sun Oct 25 15:24:35 IST 2026
[2026-10-25 15:24:35,920.920 INFO    ] ================================================
[2026-10-25 15:24:36,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:24:36
[2026-10-25 15:24:37,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:24:37,364.364 INFO    ] Initializing speech engine...
[2026-10-25 15:24:37,375.375 INFO    ] 2026-10-25 15:24:37
[2026-10-25 15:24:37,633.633 INFO    ] 2026-10-25 15:24:37
[2026-10-25 15:24:37,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:24:37,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:24:37,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:24:38,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:24:38,108.108 INFO    ] time= 25/10/2026 15:24:38
[2026-10-25 15:24:38,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:24:38,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:24:38,320.320 INFO    ] No existing commands found in stream
[2026-10-25 15:24:43,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:24:43,344.344 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 15:24:46,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:24:47,000.000 INFO    ] Checking for system updates...
[2026-10-25 15:24:47,041.041 INFO    ] 200
[2026-10-25 15:24:47,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:47,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:24:47,107.107 INFO    ] No update needed
[2026-10-25 15:24:47,110.110 INFO    ] Checking for camera pi updates...
[2026-10-25 15:24:47,148.148 INFO    ] 200
[2026-10-25 15:24:47,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:47,201.201 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:24:47,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:24:47,264.264 INFO    ] No camera update needed
[2026-10-25 15:24:47,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:24:47,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:24:47,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:24:47,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:24:49,324.324 INFO    ] ================================================
[2026-10-25 15:24:49,339.339 INFO    ] Launching Daemon at Sun Oct 25 15:24:49 IST 2026
[2026-10-25 15:24:49,351.351 INFO    ] ================================================
[2026-10-25 15:24:49,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:24:49
[2026-10-25 15:24:50,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:24:50,946.946 INFO    ] Initializing speech engine...
[2026-10-25 15:24:50,958.958 INFO    ] 2026-10-25 15:24:50
[2026-10-25 15:24:51,246.246 INFO    ] 2026-10-25 15:24:51
[2026-10-25 15:24:51,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:24:51,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:24:51,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:24:51,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:24:51,683.683 INFO    ] time= 25/10/2026 15:24:51
[2026-10-25 15:24:51,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:24:51,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:24:51,840.840 INFO    ] No existing commands found in stream
[2026-10-25 15:24:56,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:24:56,865.865 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 15:24:57,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:24:57,715.715 INFO    ] Checking for system updates...
[2026-10-25 15:24:57,753.753 INFO    ] 200
[2026-10-25 15:24:57,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:57,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:57,824.824 INFO    ] No update needed
[2026-10-25 15:24:57,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 15:24:57,862.862 INFO    ] 200
[2026-10-25 15:24:57,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:24:57,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:24:57,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:24:57,964.964 INFO    ] No camera update needed
[2026-10-25 15:24:57,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:24:57,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:24:57,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:24:57,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:25:00,025.025 INFO    ] ================================================
[2026-10-25 15:25:00,041.041 INFO    ] Launching Daemon at Sun Oct 25 15:25:00 IST 2026
[2026-10-25 15:25:00,052.052 INFO    ] ================================================
[2026-10-25 15:25:00,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:25:00
[2026-10-25 15:25:01,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:25:01,853.853 INFO    ] Initializing speech engine...
[2026-10-25 15:25:01,857.857 INFO    ] 2026-10-25 15:25:01
[2026-10-25 15:25:02,308.308 INFO    ] 2026-10-25 15:25:02
[2026-10-25 15:25:02,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:25:02,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:25:02,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:25:02,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:25:02,811.811 INFO    ] time= 25/10/2026 15:25:02
[2026-10-25 15:25:02,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:25:02,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:25:02,991.991 INFO    ] No existing commands found in stream
[2026-10-25 15:25:08,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:25:08,006.006 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 15:25:10,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:25:10,194.194 INFO    ] Checking for system updates...
[2026-10-25 15:25:10,230.230 INFO    ] 200
[2026-10-25 15:25:10,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:10,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:25:10,295.295 INFO    ] No update needed
[2026-10-25 15:25:10,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 15:25:10,333.333 INFO    ] 200
[2026-10-25 15:25:10,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:10,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:25:10,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:25:10,428.428 INFO    ] No camera update needed
[2026-10-25 15:25:10,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:25:10,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:25:10,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:25:10,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:25:12,487.487 INFO    ] ================================================
[2026-10-25 15:25:12,503.503 INFO    ] Launching Daemon at Sun Oct 25 15:25:12 IST 2026
[2026-10-25 15:25:12,513.513 INFO    ] ================================================
[2026-10-25 15:25:13,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:25:13
[2026-10-25 15:25:13,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:25:14,125.125 INFO    ] Initializing speech engine...
[2026-10-25 15:25:14,134.134 INFO    ] 2026-10-25 15:25:14
[2026-10-25 15:25:14,423.423 INFO    ] 2026-10-25 15:25:14
[2026-10-25 15:25:14,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:25:14,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:25:14,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:25:14,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:25:14,915.915 INFO    ] time= 25/10/2026 15:25:14
[2026-10-25 15:25:14,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:25:14,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:25:15,107.107 INFO    ] No existing commands found in stream
[2026-10-25 15:25:20,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:25:20,142.142 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 15:25:22,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:25:22,185.185 INFO    ] Checking for system updates...
[2026-10-25 15:25:22,222.222 INFO    ] 200
[2026-10-25 15:25:22,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:22,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:22,282.282 INFO    ] No update needed
[2026-10-25 15:25:22,285.285 INFO    ] Checking for camera pi updates...
[2026-10-25 15:25:22,318.318 INFO    ] 200
[2026-10-25 15:25:22,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:22,362.362 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:25:22,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:22,424.424 INFO    ] No camera update needed
[2026-10-25 15:25:22,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:25:22,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:25:22,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:25:22,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:25:24,479.479 INFO    ] ================================================
[2026-10-25 15:25:24,493.493 INFO    ] Launching Daemon at Sun Oct 25 15:25:24 IST 2026
[2026-10-25 15:25:24,505.505 INFO    ] ================================================
[2026-10-25 15:25:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:25:25
[2026-10-25 15:25:25,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:25:25,952.952 INFO    ] Initializing speech engine...
[2026-10-25 15:25:25,972.972 INFO    ] 2026-10-25 15:25:25
[2026-10-25 15:25:26,254.254 INFO    ] 2026-10-25 15:25:26
[2026-10-25 15:25:26,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:25:26,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:25:26,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:25:26,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:25:26,633.633 INFO    ] time= 25/10/2026 15:25:26
[2026-10-25 15:25:26,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:25:26,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:25:26,758.758 INFO    ] No existing commands found in stream
[2026-10-25 15:25:31,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:25:31,774.774 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 15:25:33,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:25:33,144.144 INFO    ] Checking for system updates...
[2026-10-25 15:25:33,181.181 INFO    ] 200
[2026-10-25 15:25:33,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:33,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:33,246.246 INFO    ] No update needed
[2026-10-25 15:25:33,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 15:25:33,284.284 INFO    ] 200
[2026-10-25 15:25:33,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:33,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:25:33,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:33,389.389 INFO    ] No camera update needed
[2026-10-25 15:25:33,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:25:33,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:25:33,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:25:33,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:25:35,446.446 INFO    ] ================================================
[2026-10-25 15:25:35,462.462 INFO    ] Launching Daemon at Sun Oct 25 15:25:35 IST 2026
[2026-10-25 15:25:35,473.473 INFO    ] ================================================
[2026-10-25 15:25:36,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:25:36
[2026-10-25 15:25:36,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:25:37,120.120 INFO    ] Initializing speech engine...
[2026-10-25 15:25:37,131.131 INFO    ] 2026-10-25 15:25:37
[2026-10-25 15:25:37,420.420 INFO    ] 2026-10-25 15:25:37
[2026-10-25 15:25:37,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:25:37,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:25:37,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:25:37,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:25:37,877.877 INFO    ] time= 25/10/2026 15:25:37
[2026-10-25 15:25:37,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:25:37,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:25:38,031.031 INFO    ] No existing commands found in stream
[2026-10-25 15:25:43,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:25:43,046.046 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 15:25:44,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:25:44,575.575 INFO    ] Checking for system updates...
[2026-10-25 15:25:44,614.614 INFO    ] 200
[2026-10-25 15:25:44,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:44,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:25:44,673.673 INFO    ] No update needed
[2026-10-25 15:25:44,675.675 INFO    ] Checking for camera pi updates...
[2026-10-25 15:25:44,710.710 INFO    ] 200
[2026-10-25 15:25:44,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:44,760.760 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:25:44,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:25:44,825.825 INFO    ] No camera update needed
[2026-10-25 15:25:44,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:25:44,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:25:44,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:25:44,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:25:46,880.880 INFO    ] ================================================
[2026-10-25 15:25:46,896.896 INFO    ] Launching Daemon at Sun Oct 25 15:25:46 IST 2026
[2026-10-25 15:25:46,907.907 INFO    ] ================================================
[2026-10-25 15:25:47,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:25:47
[2026-10-25 15:25:48,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:25:48,364.364 INFO    ] Initializing speech engine...
[2026-10-25 15:25:48,374.374 INFO    ] 2026-10-25 15:25:48
[2026-10-25 15:25:48,637.637 INFO    ] 2026-10-25 15:25:48
[2026-10-25 15:25:48,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:25:51,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:25:51,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:25:52,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:25:52,119.119 INFO    ] time= 25/10/2026 15:25:52
[2026-10-25 15:25:52,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:25:52,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:25:52,179.179 INFO    ] No existing commands found in stream
[2026-10-25 15:25:57,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:25:57,192.192 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 15:25:58,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:25:58,106.106 INFO    ] Checking for system updates...
[2026-10-25 15:25:58,147.147 INFO    ] 200
[2026-10-25 15:25:58,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:58,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:58,205.205 INFO    ] No update needed
[2026-10-25 15:25:58,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 15:25:58,242.242 INFO    ] 200
[2026-10-25 15:25:58,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:25:58,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:25:58,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:25:58,338.338 INFO    ] No camera update needed
[2026-10-25 15:25:58,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:25:58,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:25:58,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:25:58,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:26:00,396.396 INFO    ] ================================================
[2026-10-25 15:26:00,412.412 INFO    ] Launching Daemon at Sun Oct 25 15:26:00 IST 2026
[2026-10-25 15:26:00,423.423 INFO    ] ================================================
[2026-10-25 15:26:01,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:26:01
[2026-10-25 15:26:01,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:26:02,148.148 INFO    ] Initializing speech engine...
[2026-10-25 15:26:02,151.151 INFO    ] 2026-10-25 15:26:02
[2026-10-25 15:26:02,464.464 INFO    ] 2026-10-25 15:26:02
[2026-10-25 15:26:02,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:26:02,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:26:02,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:26:02,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:26:02,938.938 INFO    ] time= 25/10/2026 15:26:02
[2026-10-25 15:26:02,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:26:03,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:26:03,153.153 INFO    ] No existing commands found in stream
[2026-10-25 15:26:08,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:26:08,194.194 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 15:26:10,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:26:10,397.397 INFO    ] Checking for system updates...
[2026-10-25 15:26:10,436.436 INFO    ] 200
[2026-10-25 15:26:10,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:10,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:26:10,494.494 INFO    ] No update needed
[2026-10-25 15:26:10,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 15:26:10,530.530 INFO    ] 200
[2026-10-25 15:26:10,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:10,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:26:10,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:26:10,625.625 INFO    ] No camera update needed
[2026-10-25 15:26:10,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:26:10,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:26:10,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:26:10,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:26:12,681.681 INFO    ] ================================================
[2026-10-25 15:26:12,696.696 INFO    ] Launching Daemon at Sun Oct 25 15:26:12 IST 2026
[2026-10-25 15:26:12,707.707 INFO    ] ================================================
[2026-10-25 15:26:13,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:26:13
[2026-10-25 15:26:13,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:26:14,282.282 INFO    ] Initializing speech engine...
[2026-10-25 15:26:14,292.292 INFO    ] 2026-10-25 15:26:14
[2026-10-25 15:26:14,563.563 INFO    ] 2026-10-25 15:26:14
[2026-10-25 15:26:14,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:26:14,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:26:14,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:26:15,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:26:15,066.066 INFO    ] time= 25/10/2026 15:26:15
[2026-10-25 15:26:15,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:26:15,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:26:15,251.251 INFO    ] No existing commands found in stream
[2026-10-25 15:26:20,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:26:20,277.277 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 15:26:23,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:26:23,033.033 INFO    ] Checking for system updates...
[2026-10-25 15:26:23,073.073 INFO    ] 200
[2026-10-25 15:26:23,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:23,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:26:23,137.137 INFO    ] No update needed
[2026-10-25 15:26:23,140.140 INFO    ] Checking for camera pi updates...
[2026-10-25 15:26:23,177.177 INFO    ] 200
[2026-10-25 15:26:23,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:23,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:26:23,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:26:23,273.273 INFO    ] No camera update needed
[2026-10-25 15:26:23,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:26:23,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:26:23,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:26:23,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:26:25,329.329 INFO    ] ================================================
[2026-10-25 15:26:25,344.344 INFO    ] Launching Daemon at Sun Oct 25 15:26:25 IST 2026
[2026-10-25 15:26:25,355.355 INFO    ] ================================================
[2026-10-25 15:26:25,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:26:25
[2026-10-25 15:26:26,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:26:26,917.917 INFO    ] Initializing speech engine...
[2026-10-25 15:26:26,927.927 INFO    ] 2026-10-25 15:26:26
[2026-10-25 15:26:27,204.204 INFO    ] 2026-10-25 15:26:27
[2026-10-25 15:26:27,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:26:27,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:26:27,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:26:27,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:26:27,698.698 INFO    ] time= 25/10/2026 15:26:27
[2026-10-25 15:26:27,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:26:27,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:26:27,887.887 INFO    ] No existing commands found in stream
[2026-10-25 15:26:32,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:26:32,916.916 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 15:26:36,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:26:36,125.125 INFO    ] Checking for system updates...
[2026-10-25 15:26:36,162.162 INFO    ] 200
[2026-10-25 15:26:36,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:36,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:26:36,221.221 INFO    ] No update needed
[2026-10-25 15:26:36,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 15:26:36,258.258 INFO    ] 200
[2026-10-25 15:26:36,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:36,302.302 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:26:36,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:26:36,459.459 INFO    ] No camera update needed
[2026-10-25 15:26:36,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:26:36,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:26:36,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:26:36,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:26:38,516.516 INFO    ] ================================================
[2026-10-25 15:26:38,531.531 INFO    ] Launching Daemon at Sun Oct 25 15:26:38 IST 2026
[2026-10-25 15:26:38,542.542 INFO    ] ================================================
[2026-10-25 15:26:39,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:26:39
[2026-10-25 15:26:39,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:26:40,023.023 INFO    ] Initializing speech engine...
[2026-10-25 15:26:40,040.040 INFO    ] 2026-10-25 15:26:40
[2026-10-25 15:26:40,306.306 INFO    ] 2026-10-25 15:26:40
[2026-10-25 15:26:40,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:26:40,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:26:40,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:26:40,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:26:40,677.677 INFO    ] time= 25/10/2026 15:26:40
[2026-10-25 15:26:40,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:26:40,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:26:40,799.799 INFO    ] No existing commands found in stream
[2026-10-25 15:26:45,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:26:45,813.813 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 15:26:48,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:26:48,712.712 INFO    ] Checking for system updates...
[2026-10-25 15:26:48,748.748 INFO    ] 200
[2026-10-25 15:26:48,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:48,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:26:48,813.813 INFO    ] No update needed
[2026-10-25 15:26:48,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 15:26:48,849.849 INFO    ] 200
[2026-10-25 15:26:48,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:26:48,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:26:48,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:26:48,939.939 INFO    ] No camera update needed
[2026-10-25 15:26:48,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:26:48,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:26:48,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:26:48,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:26:50,993.993 INFO    ] ================================================
[2026-10-25 15:26:51,008.008 INFO    ] Launching Daemon at Sun Oct 25 15:26:51 IST 2026
[2026-10-25 15:26:51,019.019 INFO    ] ================================================
[2026-10-25 15:26:51,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:26:51
[2026-10-25 15:26:52,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:26:52,512.512 INFO    ] Initializing speech engine...
[2026-10-25 15:26:52,521.521 INFO    ] 2026-10-25 15:26:52
[2026-10-25 15:26:52,767.767 INFO    ] 2026-10-25 15:26:52
[2026-10-25 15:26:52,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:26:54,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:26:54,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:26:54,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:26:54,465.465 INFO    ] time= 25/10/2026 15:26:54
[2026-10-25 15:26:54,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:26:54,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:26:54,552.552 INFO    ] No existing commands found in stream
[2026-10-25 15:26:59,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:26:59,566.566 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 15:27:03,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:27:03,808.808 INFO    ] Checking for system updates...
[2026-10-25 15:27:03,844.844 INFO    ] 200
[2026-10-25 15:27:03,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:03,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:03,903.903 INFO    ] No update needed
[2026-10-25 15:27:03,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 15:27:03,938.938 INFO    ] 200
[2026-10-25 15:27:03,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:03,986.986 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:27:04,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:04,045.045 INFO    ] No camera update needed
[2026-10-25 15:27:04,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:27:04,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:27:04,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:27:04,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:27:06,101.101 INFO    ] ================================================
[2026-10-25 15:27:06,116.116 INFO    ] Launching Daemon at Sun Oct 25 15:27:06 IST 2026
[2026-10-25 15:27:06,127.127 INFO    ] ================================================
[2026-10-25 15:27:06,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:27:06
[2026-10-25 15:27:07,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:27:07,520.520 INFO    ] Initializing speech engine...
[2026-10-25 15:27:07,528.528 INFO    ] 2026-10-25 15:27:07
[2026-10-25 15:27:07,811.811 INFO    ] 2026-10-25 15:27:07
[2026-10-25 15:27:07,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:27:08,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:27:08,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:27:08,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:27:08,222.222 INFO    ] time= 25/10/2026 15:27:08
[2026-10-25 15:27:08,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:27:08,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:27:08,304.304 INFO    ] No existing commands found in stream
[2026-10-25 15:27:13,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:27:13,318.318 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 15:27:15,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:27:15,107.107 INFO    ] Checking for system updates...
[2026-10-25 15:27:15,143.143 INFO    ] 200
[2026-10-25 15:27:15,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:15,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:15,200.200 INFO    ] No update needed
[2026-10-25 15:27:15,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 15:27:15,236.236 INFO    ] 200
[2026-10-25 15:27:15,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:15,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:27:15,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:15,336.336 INFO    ] No camera update needed
[2026-10-25 15:27:15,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:27:15,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:27:15,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:27:15,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:27:17,392.392 INFO    ] ================================================
[2026-10-25 15:27:17,407.407 INFO    ] Launching Daemon at Sun Oct 25 15:27:17 IST 2026
[2026-10-25 15:27:17,418.418 INFO    ] ================================================
[2026-10-25 15:27:17,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:27:17
[2026-10-25 15:27:18,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:27:18,808.808 INFO    ] Initializing speech engine...
[2026-10-25 15:27:18,823.823 INFO    ] 2026-10-25 15:27:18
[2026-10-25 15:27:19,084.084 INFO    ] 2026-10-25 15:27:19
[2026-10-25 15:27:19,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:27:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:27:19,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:27:19,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:27:19,561.561 INFO    ] time= 25/10/2026 15:27:19
[2026-10-25 15:27:19,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:27:19,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:27:19,711.711 INFO    ] No existing commands found in stream
[2026-10-25 15:27:24,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:27:24,746.746 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 15:27:25,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:27:25,933.933 INFO    ] Checking for system updates...
[2026-10-25 15:27:25,972.972 INFO    ] 200
[2026-10-25 15:27:25,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:26,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:26,029.029 INFO    ] No update needed
[2026-10-25 15:27:26,031.031 INFO    ] Checking for camera pi updates...
[2026-10-25 15:27:26,065.065 INFO    ] 200
[2026-10-25 15:27:26,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:26,111.111 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:27:26,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:26,157.157 INFO    ] No camera update needed
[2026-10-25 15:27:26,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:27:26,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:27:26,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:27:26,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:27:28,214.214 INFO    ] ================================================
[2026-10-25 15:27:28,229.229 INFO    ] Launching Daemon at Sun Oct 25 15:27:28 IST 2026
[2026-10-25 15:27:28,239.239 INFO    ] ================================================
[2026-10-25 15:27:28,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:27:28
[2026-10-25 15:27:29,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:27:29,639.639 INFO    ] Initializing speech engine...
[2026-10-25 15:27:29,657.657 INFO    ] 2026-10-25 15:27:29
[2026-10-25 15:27:29,911.911 INFO    ] 2026-10-25 15:27:29
[2026-10-25 15:27:29,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:27:30,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:27:30,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:27:30,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:27:30,342.342 INFO    ] time= 25/10/2026 15:27:30
[2026-10-25 15:27:30,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:27:30,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:27:30,523.523 INFO    ] No existing commands found in stream
[2026-10-25 15:27:35,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:27:35,537.537 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 15:27:37,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:27:37,853.853 INFO    ] Checking for system updates...
[2026-10-25 15:27:37,889.889 INFO    ] 200
[2026-10-25 15:27:37,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:37,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:37,952.952 INFO    ] No update needed
[2026-10-25 15:27:37,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 15:27:37,989.989 INFO    ] 200
[2026-10-25 15:27:37,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:38,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:27:38,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:27:38,141.141 INFO    ] No camera update needed
[2026-10-25 15:27:38,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:27:38,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:27:38,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:27:38,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:27:40,196.196 INFO    ] ================================================
[2026-10-25 15:27:40,212.212 INFO    ] Launching Daemon at Sun Oct 25 15:27:40 IST 2026
[2026-10-25 15:27:40,222.222 INFO    ] ================================================
[2026-10-25 15:27:40,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:27:40
[2026-10-25 15:27:41,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:27:41,816.816 INFO    ] Initializing speech engine...
[2026-10-25 15:27:41,830.830 INFO    ] 2026-10-25 15:27:41
[2026-10-25 15:27:42,112.112 INFO    ] 2026-10-25 15:27:42
[2026-10-25 15:27:42,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:27:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:27:42,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:27:42,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:27:42,641.641 INFO    ] time= 25/10/2026 15:27:42
[2026-10-25 15:27:42,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:27:42,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:27:42,797.797 INFO    ] No existing commands found in stream
[2026-10-25 15:27:47,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:27:47,820.820 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 15:27:50,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:27:50,317.317 INFO    ] Checking for system updates...
[2026-10-25 15:27:50,353.353 INFO    ] 200
[2026-10-25 15:27:50,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:50,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:27:50,414.414 INFO    ] No update needed
[2026-10-25 15:27:50,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 15:27:50,450.450 INFO    ] 200
[2026-10-25 15:27:50,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:27:50,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:27:50,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:27:50,545.545 INFO    ] No camera update needed
[2026-10-25 15:27:50,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:27:50,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:27:50,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:27:50,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:27:52,599.599 INFO    ] ================================================
[2026-10-25 15:27:52,614.614 INFO    ] Launching Daemon at Sun Oct 25 15:27:52 IST 2026
[2026-10-25 15:27:52,626.626 INFO    ] ================================================
[2026-10-25 15:27:53,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:27:53
[2026-10-25 15:27:53,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:27:54,086.086 INFO    ] Initializing speech engine...
[2026-10-25 15:27:54,095.095 INFO    ] 2026-10-25 15:27:54
[2026-10-25 15:27:54,356.356 INFO    ] 2026-10-25 15:27:54
[2026-10-25 15:27:54,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:27:55,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:27:55,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:27:55,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:27:55,692.692 INFO    ] time= 25/10/2026 15:27:55
[2026-10-25 15:27:55,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:27:55,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:27:55,754.754 INFO    ] No existing commands found in stream
[2026-10-25 15:28:00,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:28:00,769.769 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 15:28:03,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:28:03,728.728 INFO    ] Checking for system updates...
[2026-10-25 15:28:03,764.764 INFO    ] 200
[2026-10-25 15:28:03,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:03,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:03,824.824 INFO    ] No update needed
[2026-10-25 15:28:03,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 15:28:03,862.862 INFO    ] 200
[2026-10-25 15:28:03,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:03,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:28:03,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:03,955.955 INFO    ] No camera update needed
[2026-10-25 15:28:03,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:28:03,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:28:03,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:28:03,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:28:06,012.012 INFO    ] ================================================
[2026-10-25 15:28:06,027.027 INFO    ] Launching Daemon at Sun Oct 25 15:28:06 IST 2026
[2026-10-25 15:28:06,038.038 INFO    ] ================================================
[2026-10-25 15:28:06,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:28:06
[2026-10-25 15:28:07,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:28:07,457.457 INFO    ] Initializing speech engine...
[2026-10-25 15:28:07,465.465 INFO    ] 2026-10-25 15:28:07
[2026-10-25 15:28:07,715.715 INFO    ] 2026-10-25 15:28:07
[2026-10-25 15:28:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:28:07,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:28:07,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:28:08,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:28:08,090.090 INFO    ] time= 25/10/2026 15:28:08
[2026-10-25 15:28:08,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:28:08,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:28:08,279.279 INFO    ] No existing commands found in stream
[2026-10-25 15:28:13,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:28:13,305.305 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 15:28:15,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:28:15,517.517 INFO    ] Checking for system updates...
[2026-10-25 15:28:15,558.558 INFO    ] 200
[2026-10-25 15:28:15,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:15,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:15,617.617 INFO    ] No update needed
[2026-10-25 15:28:15,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 15:28:15,654.654 INFO    ] 200
[2026-10-25 15:28:15,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:15,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:28:15,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:15,753.753 INFO    ] No camera update needed
[2026-10-25 15:28:15,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:28:15,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:28:15,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:28:15,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:28:17,811.811 INFO    ] ================================================
[2026-10-25 15:28:17,826.826 INFO    ] Launching Daemon at Sun Oct 25 15:28:17 IST 2026
[2026-10-25 15:28:17,836.836 INFO    ] ================================================
[2026-10-25 15:28:18,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:28:18
[2026-10-25 15:28:19,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:28:19,394.394 INFO    ] Initializing speech engine...
[2026-10-25 15:28:19,401.401 INFO    ] 2026-10-25 15:28:19
[2026-10-25 15:28:19,647.647 INFO    ] 2026-10-25 15:28:19
[2026-10-25 15:28:19,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:28:19,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:28:19,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:28:20,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:28:20,123.123 INFO    ] time= 25/10/2026 15:28:20
[2026-10-25 15:28:20,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:28:20,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:28:20,273.273 INFO    ] No existing commands found in stream
[2026-10-25 15:28:25,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:28:25,289.289 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 15:28:26,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:28:26,584.584 INFO    ] Checking for system updates...
[2026-10-25 15:28:26,622.622 INFO    ] 200
[2026-10-25 15:28:26,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:26,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:26,683.683 INFO    ] No update needed
[2026-10-25 15:28:26,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 15:28:26,720.720 INFO    ] 200
[2026-10-25 15:28:26,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:26,763.763 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:28:26,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:26,812.812 INFO    ] No camera update needed
[2026-10-25 15:28:26,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:28:26,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:28:26,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:28:26,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:28:28,868.868 INFO    ] ================================================
[2026-10-25 15:28:28,883.883 INFO    ] Launching Daemon at Sun Oct 25 15:28:28 IST 2026
[2026-10-25 15:28:28,894.894 INFO    ] ================================================
[2026-10-25 15:28:29,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:28:29
[2026-10-25 15:28:30,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:28:30,299.299 INFO    ] Initializing speech engine...
[2026-10-25 15:28:30,322.322 INFO    ] 2026-10-25 15:28:30
[2026-10-25 15:28:30,577.577 INFO    ] 2026-10-25 15:28:30
[2026-10-25 15:28:30,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:28:30,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:28:30,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:28:30,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:28:30,954.954 INFO    ] time= 25/10/2026 15:28:30
[2026-10-25 15:28:30,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:28:31,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:28:31,113.113 INFO    ] No existing commands found in stream
[2026-10-25 15:28:36,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:28:36,141.141 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 15:28:38,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:28:38,317.317 INFO    ] Checking for system updates...
[2026-10-25 15:28:38,360.360 INFO    ] 200
[2026-10-25 15:28:38,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:38,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:38,421.421 INFO    ] No update needed
[2026-10-25 15:28:38,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 15:28:38,461.461 INFO    ] 200
[2026-10-25 15:28:38,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:38,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:28:38,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:38,647.647 INFO    ] No camera update needed
[2026-10-25 15:28:38,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:28:38,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:28:38,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:28:38,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:28:40,705.705 INFO    ] ================================================
[2026-10-25 15:28:40,722.722 INFO    ] Launching Daemon at Sun Oct 25 15:28:40 IST 2026
[2026-10-25 15:28:40,733.733 INFO    ] ================================================
[2026-10-25 15:28:41,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:28:41
[2026-10-25 15:28:42,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:28:42,310.310 INFO    ] Initializing speech engine...
[2026-10-25 15:28:42,331.331 INFO    ] 2026-10-25 15:28:42
[2026-10-25 15:28:42,603.603 INFO    ] 2026-10-25 15:28:42
[2026-10-25 15:28:42,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:28:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:28:42,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:28:43,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:28:43,024.024 INFO    ] time= 25/10/2026 15:28:43
[2026-10-25 15:28:43,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:28:43,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:28:43,108.108 INFO    ] No existing commands found in stream
[2026-10-25 15:28:48,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:28:48,121.121 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 15:28:52,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:28:52,502.502 INFO    ] Checking for system updates...
[2026-10-25 15:28:52,543.543 INFO    ] 200
[2026-10-25 15:28:52,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:52,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:52,600.600 INFO    ] No update needed
[2026-10-25 15:28:52,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 15:28:52,636.636 INFO    ] 200
[2026-10-25 15:28:52,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:28:52,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:28:52,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:28:52,746.746 INFO    ] No camera update needed
[2026-10-25 15:28:52,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:28:52,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:28:52,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:28:52,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:28:54,804.804 INFO    ] ================================================
[2026-10-25 15:28:54,820.820 INFO    ] Launching Daemon at Sun Oct 25 15:28:54 IST 2026
[2026-10-25 15:28:54,830.830 INFO    ] ================================================
[2026-10-25 15:28:55,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:28:55
[2026-10-25 15:28:56,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:28:56,468.468 INFO    ] Initializing speech engine...
[2026-10-25 15:28:56,476.476 INFO    ] 2026-10-25 15:28:56
[2026-10-25 15:28:56,761.761 INFO    ] 2026-10-25 15:28:56
[2026-10-25 15:28:56,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:28:57,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:28:57,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:28:57,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:28:57,541.541 INFO    ] time= 25/10/2026 15:28:57
[2026-10-25 15:28:57,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:28:57,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:28:57,828.828 INFO    ] No existing commands found in stream
[2026-10-25 15:29:02,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:29:02,862.862 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 15:29:05,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:29:05,635.635 INFO    ] Checking for system updates...
[2026-10-25 15:29:05,672.672 INFO    ] 200
[2026-10-25 15:29:05,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:05,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:05,732.732 INFO    ] No update needed
[2026-10-25 15:29:05,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 15:29:05,773.773 INFO    ] 200
[2026-10-25 15:29:05,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:05,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:29:05,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:05,885.885 INFO    ] No camera update needed
[2026-10-25 15:29:05,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:29:05,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:29:05,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:29:05,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:29:07,944.944 INFO    ] ================================================
[2026-10-25 15:29:07,959.959 INFO    ] Launching Daemon at Sun Oct 25 15:29:07 IST 2026
[2026-10-25 15:29:07,970.970 INFO    ] ================================================
[2026-10-25 15:29:08,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:29:08
[2026-10-25 15:29:09,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:29:09,372.372 INFO    ] Initializing speech engine...
[2026-10-25 15:29:09,387.387 INFO    ] 2026-10-25 15:29:09
[2026-10-25 15:29:09,652.652 INFO    ] 2026-10-25 15:29:09
[2026-10-25 15:29:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:29:09,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:29:09,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:29:10,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:29:10,015.015 INFO    ] time= 25/10/2026 15:29:10
[2026-10-25 15:29:10,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:29:10,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:29:10,110.110 INFO    ] No existing commands found in stream
[2026-10-25 15:29:15,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:29:15,125.125 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 15:29:18,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:29:18,658.658 INFO    ] Checking for system updates...
[2026-10-25 15:29:18,694.694 INFO    ] 200
[2026-10-25 15:29:18,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:18,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:18,758.758 INFO    ] No update needed
[2026-10-25 15:29:18,760.760 INFO    ] Checking for camera pi updates...
[2026-10-25 15:29:18,794.794 INFO    ] 200
[2026-10-25 15:29:18,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:18,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:29:18,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:18,895.895 INFO    ] No camera update needed
[2026-10-25 15:29:18,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:29:18,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:29:18,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:29:18,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:29:20,951.951 INFO    ] ================================================
[2026-10-25 15:29:20,966.966 INFO    ] Launching Daemon at Sun Oct 25 15:29:20 IST 2026
[2026-10-25 15:29:20,977.977 INFO    ] ================================================
[2026-10-25 15:29:21,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:29:21
[2026-10-25 15:29:22,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:29:22,489.489 INFO    ] Initializing speech engine...
[2026-10-25 15:29:22,510.510 INFO    ] 2026-10-25 15:29:22
[2026-10-25 15:29:22,786.786 INFO    ] 2026-10-25 15:29:22
[2026-10-25 15:29:22,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:29:22,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:29:23,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:29:23,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:29:23,162.162 INFO    ] time= 25/10/2026 15:29:23
[2026-10-25 15:29:23,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:29:23,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:29:23,269.269 INFO    ] No existing commands found in stream
[2026-10-25 15:29:28,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:29:28,285.285 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 15:29:31,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:29:31,443.443 INFO    ] Checking for system updates...
[2026-10-25 15:29:31,492.492 INFO    ] 200
[2026-10-25 15:29:31,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:31,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:29:31,567.567 INFO    ] No update needed
[2026-10-25 15:29:31,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 15:29:31,608.608 INFO    ] 200
[2026-10-25 15:29:31,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:31,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:29:31,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:29:31,729.729 INFO    ] No camera update needed
[2026-10-25 15:29:31,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:29:31,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:29:31,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:29:31,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:29:33,793.793 INFO    ] ================================================
[2026-10-25 15:29:33,808.808 INFO    ] Launching Daemon at Sun Oct 25 15:29:33 IST 2026
[2026-10-25 15:29:33,818.818 INFO    ] ================================================
[2026-10-25 15:29:34,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:29:34
[2026-10-25 15:29:34,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:29:35,296.296 INFO    ] Initializing speech engine...
[2026-10-25 15:29:35,307.307 INFO    ] 2026-10-25 15:29:35
[2026-10-25 15:29:35,585.585 INFO    ] 2026-10-25 15:29:35
[2026-10-25 15:29:35,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:29:35,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:29:35,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:29:36,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:29:36,124.124 INFO    ] time= 25/10/2026 15:29:36
[2026-10-25 15:29:36,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:29:36,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:29:36,256.256 INFO    ] No existing commands found in stream
[2026-10-25 15:29:41,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:29:41,290.290 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 15:29:45,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:29:45,114.114 INFO    ] Checking for system updates...
[2026-10-25 15:29:45,151.151 INFO    ] 200
[2026-10-25 15:29:45,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:45,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:45,218.218 INFO    ] No update needed
[2026-10-25 15:29:45,221.221 INFO    ] Checking for camera pi updates...
[2026-10-25 15:29:45,260.260 INFO    ] 200
[2026-10-25 15:29:45,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:45,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:29:45,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:29:45,377.377 INFO    ] No camera update needed
[2026-10-25 15:29:45,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:29:45,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:29:45,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:29:45,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:29:47,437.437 INFO    ] ================================================
[2026-10-25 15:29:47,452.452 INFO    ] Launching Daemon at Sun Oct 25 15:29:47 IST 2026
[2026-10-25 15:29:47,463.463 INFO    ] ================================================
[2026-10-25 15:29:48,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:29:48
[2026-10-25 15:29:48,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:29:48,995.995 INFO    ] Initializing speech engine...
[2026-10-25 15:29:49,006.006 INFO    ] 2026-10-25 15:29:49
[2026-10-25 15:29:49,251.251 INFO    ] 2026-10-25 15:29:49
[2026-10-25 15:29:49,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:29:49,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:29:49,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:29:49,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:29:49,618.618 INFO    ] time= 25/10/2026 15:29:49
[2026-10-25 15:29:49,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:29:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:29:49,786.786 INFO    ] No existing commands found in stream
[2026-10-25 15:29:54,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:29:54,819.819 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 15:29:58,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:29:58,501.501 INFO    ] Checking for system updates...
[2026-10-25 15:29:58,551.551 INFO    ] 200
[2026-10-25 15:29:58,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:58,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:29:58,611.611 INFO    ] No update needed
[2026-10-25 15:29:58,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 15:29:58,648.648 INFO    ] 200
[2026-10-25 15:29:58,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:29:58,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:29:58,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:29:58,748.748 INFO    ] No camera update needed
[2026-10-25 15:29:58,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:29:58,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:29:58,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:29:58,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:30:00,806.806 INFO    ] ================================================
[2026-10-25 15:30:00,821.821 INFO    ] Launching Daemon at Sun Oct 25 15:30:00 IST 2026
[2026-10-25 15:30:00,832.832 INFO    ] ================================================
[2026-10-25 15:30:01,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:30:01
[2026-10-25 15:30:02,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:30:02,919.919 INFO    ] Initializing speech engine...
[2026-10-25 15:30:02,922.922 INFO    ] 2026-10-25 15:30:02
[2026-10-25 15:30:03,215.215 INFO    ] 2026-10-25 15:30:03
[2026-10-25 15:30:03,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:30:03,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:30:03,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:30:03,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:30:03,743.743 INFO    ] time= 25/10/2026 15:30:03
[2026-10-25 15:30:03,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:30:03,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:30:03,944.944 INFO    ] No existing commands found in stream
[2026-10-25 15:30:08,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:30:08,961.961 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 15:30:13,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:30:13,083.083 INFO    ] Checking for system updates...
[2026-10-25 15:30:13,120.120 INFO    ] 200
[2026-10-25 15:30:13,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:13,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:13,178.178 INFO    ] No update needed
[2026-10-25 15:30:13,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 15:30:13,214.214 INFO    ] 200
[2026-10-25 15:30:13,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:13,258.258 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:30:13,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:13,313.313 INFO    ] No camera update needed
[2026-10-25 15:30:13,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:30:13,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:30:13,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:30:13,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:30:15,373.373 INFO    ] ================================================
[2026-10-25 15:30:15,390.390 INFO    ] Launching Daemon at Sun Oct 25 15:30:15 IST 2026
[2026-10-25 15:30:15,402.402 INFO    ] ================================================
[2026-10-25 15:30:15,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:30:15
[2026-10-25 15:30:16,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:30:16,842.842 INFO    ] Initializing speech engine...
[2026-10-25 15:30:16,848.848 INFO    ] 2026-10-25 15:30:16
[2026-10-25 15:30:17,093.093 INFO    ] 2026-10-25 15:30:17
[2026-10-25 15:30:17,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:30:17,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:30:17,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:30:17,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:30:17,460.460 INFO    ] time= 25/10/2026 15:30:17
[2026-10-25 15:30:17,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:30:17,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:30:17,629.629 INFO    ] No existing commands found in stream
[2026-10-25 15:30:22,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:30:22,657.657 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 15:30:24,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:30:24,532.532 INFO    ] Checking for system updates...
[2026-10-25 15:30:24,569.569 INFO    ] 200
[2026-10-25 15:30:24,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:24,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:24,627.627 INFO    ] No update needed
[2026-10-25 15:30:24,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 15:30:24,663.663 INFO    ] 200
[2026-10-25 15:30:24,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:24,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:30:24,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:24,755.755 INFO    ] No camera update needed
[2026-10-25 15:30:24,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:30:24,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:30:24,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:30:24,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:30:26,811.811 INFO    ] ================================================
[2026-10-25 15:30:26,826.826 INFO    ] Launching Daemon at Sun Oct 25 15:30:26 IST 2026
[2026-10-25 15:30:26,836.836 INFO    ] ================================================
[2026-10-25 15:30:27,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:30:27
[2026-10-25 15:30:28,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:30:28,252.252 INFO    ] Initializing speech engine...
[2026-10-25 15:30:28,266.266 INFO    ] 2026-10-25 15:30:28
[2026-10-25 15:30:28,532.532 INFO    ] 2026-10-25 15:30:28
[2026-10-25 15:30:28,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:30:29,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:30:29,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:30:29,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:30:29,824.824 INFO    ] time= 25/10/2026 15:30:29
[2026-10-25 15:30:29,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:30:29,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:30:29,893.893 INFO    ] No existing commands found in stream
[2026-10-25 15:30:34,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:30:34,906.906 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 15:30:37,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:30:37,315.315 INFO    ] Checking for system updates...
[2026-10-25 15:30:37,352.352 INFO    ] 200
[2026-10-25 15:30:37,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:37,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:30:37,420.420 INFO    ] No update needed
[2026-10-25 15:30:37,423.423 INFO    ] Checking for camera pi updates...
[2026-10-25 15:30:37,463.463 INFO    ] 200
[2026-10-25 15:30:37,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:37,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:30:37,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:30:37,648.648 INFO    ] No camera update needed
[2026-10-25 15:30:37,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:30:37,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:30:37,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:30:37,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:30:39,707.707 INFO    ] ================================================
[2026-10-25 15:30:39,723.723 INFO    ] Launching Daemon at Sun Oct 25 15:30:39 IST 2026
[2026-10-25 15:30:39,733.733 INFO    ] ================================================
[2026-10-25 15:30:40,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:30:40
[2026-10-25 15:30:40,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:30:41,165.165 INFO    ] Initializing speech engine...
[2026-10-25 15:30:41,174.174 INFO    ] 2026-10-25 15:30:41
[2026-10-25 15:30:41,420.420 INFO    ] 2026-10-25 15:30:41
[2026-10-25 15:30:41,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:30:41,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:30:41,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:30:41,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:30:41,904.904 INFO    ] time= 25/10/2026 15:30:41
[2026-10-25 15:30:41,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:30:41,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:30:42,037.037 INFO    ] No existing commands found in stream
[2026-10-25 15:30:47,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:30:47,053.053 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 15:30:48,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:30:48,820.820 INFO    ] Checking for system updates...
[2026-10-25 15:30:48,858.858 INFO    ] 200
[2026-10-25 15:30:48,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:48,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:48,925.925 INFO    ] No update needed
[2026-10-25 15:30:48,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 15:30:48,964.964 INFO    ] 200
[2026-10-25 15:30:48,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:30:49,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:30:49,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:30:49,175.175 INFO    ] No camera update needed
[2026-10-25 15:30:49,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:30:49,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:30:49,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:30:49,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:30:51,235.235 INFO    ] ================================================
[2026-10-25 15:30:51,250.250 INFO    ] Launching Daemon at Sun Oct 25 15:30:51 IST 2026
[2026-10-25 15:30:51,260.260 INFO    ] ================================================
[2026-10-25 15:30:51,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:30:51
[2026-10-25 15:30:52,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:30:52,688.688 INFO    ] Initializing speech engine...
[2026-10-25 15:30:52,696.696 INFO    ] 2026-10-25 15:30:52
[2026-10-25 15:30:52,951.951 INFO    ] 2026-10-25 15:30:52
[2026-10-25 15:30:52,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:30:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:30:53,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:30:53,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:30:53,439.439 INFO    ] time= 25/10/2026 15:30:53
[2026-10-25 15:30:53,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:30:53,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:30:53,559.559 INFO    ] No existing commands found in stream
[2026-10-25 15:30:58,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:30:58,573.573 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 15:31:00,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:31:00,298.298 INFO    ] Checking for system updates...
[2026-10-25 15:31:00,334.334 INFO    ] 200
[2026-10-25 15:31:00,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:00,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:00,393.393 INFO    ] No update needed
[2026-10-25 15:31:00,395.395 INFO    ] Checking for camera pi updates...
[2026-10-25 15:31:00,434.434 INFO    ] 200
[2026-10-25 15:31:00,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:00,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:31:00,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:00,547.547 INFO    ] No camera update needed
[2026-10-25 15:31:00,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:31:00,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:31:00,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:31:00,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:31:02,604.604 INFO    ] ================================================
[2026-10-25 15:31:02,619.619 INFO    ] Launching Daemon at Sun Oct 25 15:31:02 IST 2026
[2026-10-25 15:31:02,630.630 INFO    ] ================================================
[2026-10-25 15:31:03,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:31:03
[2026-10-25 15:31:03,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:31:04,082.082 INFO    ] Initializing speech engine...
[2026-10-25 15:31:04,090.090 INFO    ] 2026-10-25 15:31:04
[2026-10-25 15:31:04,381.381 INFO    ] 2026-10-25 15:31:04
[2026-10-25 15:31:04,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:31:04,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:31:04,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:31:04,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:31:04,756.756 INFO    ] time= 25/10/2026 15:31:04
[2026-10-25 15:31:04,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:31:04,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:31:04,879.879 INFO    ] No existing commands found in stream
[2026-10-25 15:31:09,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:31:09,894.894 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 15:31:14,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:31:14,153.153 INFO    ] Checking for system updates...
[2026-10-25 15:31:14,189.189 INFO    ] 200
[2026-10-25 15:31:14,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:14,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:14,248.248 INFO    ] No update needed
[2026-10-25 15:31:14,250.250 INFO    ] Checking for camera pi updates...
[2026-10-25 15:31:14,284.284 INFO    ] 200
[2026-10-25 15:31:14,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:14,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:31:14,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:14,384.384 INFO    ] No camera update needed
[2026-10-25 15:31:14,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:31:14,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:31:14,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:31:14,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:31:16,438.438 INFO    ] ================================================
[2026-10-25 15:31:16,454.454 INFO    ] Launching Daemon at Sun Oct 25 15:31:16 IST 2026
[2026-10-25 15:31:16,465.465 INFO    ] ================================================
[2026-10-25 15:31:17,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:31:17
[2026-10-25 15:31:17,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:31:17,892.892 INFO    ] Initializing speech engine...
[2026-10-25 15:31:17,924.924 INFO    ] 2026-10-25 15:31:17
[2026-10-25 15:31:18,201.201 INFO    ] 2026-10-25 15:31:18
[2026-10-25 15:31:18,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:31:18,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:31:18,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:31:18,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:31:18,659.659 INFO    ] time= 25/10/2026 15:31:18
[2026-10-25 15:31:18,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:31:18,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:31:18,792.792 INFO    ] No existing commands found in stream
[2026-10-25 15:31:23,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:31:23,807.807 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 15:31:27,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:31:27,199.199 INFO    ] Checking for system updates...
[2026-10-25 15:31:27,235.235 INFO    ] 200
[2026-10-25 15:31:27,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:27,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:27,299.299 INFO    ] No update needed
[2026-10-25 15:31:27,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 15:31:27,337.337 INFO    ] 200
[2026-10-25 15:31:27,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:27,381.381 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:31:27,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:27,442.442 INFO    ] No camera update needed
[2026-10-25 15:31:27,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:31:27,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:31:27,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:31:27,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:31:29,498.498 INFO    ] ================================================
[2026-10-25 15:31:29,514.514 INFO    ] Launching Daemon at Sun Oct 25 15:31:29 IST 2026
[2026-10-25 15:31:29,526.526 INFO    ] ================================================
[2026-10-25 15:31:30,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:31:30
[2026-10-25 15:31:30,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:31:30,954.954 INFO    ] Initializing speech engine...
[2026-10-25 15:31:30,960.960 INFO    ] 2026-10-25 15:31:30
[2026-10-25 15:31:31,224.224 INFO    ] 2026-10-25 15:31:31
[2026-10-25 15:31:31,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:31:31,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:31:31,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:31:31,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:31:31,588.588 INFO    ] time= 25/10/2026 15:31:31
[2026-10-25 15:31:31,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:31:31,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:31:31,708.708 INFO    ] No existing commands found in stream
[2026-10-25 15:31:36,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:31:36,738.738 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 15:31:40,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:31:41,000.000 INFO    ] Checking for system updates...
[2026-10-25 15:31:41,040.040 INFO    ] 200
[2026-10-25 15:31:41,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:41,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:31:41,098.098 INFO    ] No update needed
[2026-10-25 15:31:41,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 15:31:41,134.134 INFO    ] 200
[2026-10-25 15:31:41,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:41,177.177 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:31:41,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:31:41,230.230 INFO    ] No camera update needed
[2026-10-25 15:31:41,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:31:41,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:31:41,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:31:41,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:31:43,286.286 INFO    ] ================================================
[2026-10-25 15:31:43,302.302 INFO    ] Launching Daemon at Sun Oct 25 15:31:43 IST 2026
[2026-10-25 15:31:43,313.313 INFO    ] ================================================
[2026-10-25 15:31:43,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:31:43
[2026-10-25 15:31:44,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:31:44,737.737 INFO    ] Initializing speech engine...
[2026-10-25 15:31:44,746.746 INFO    ] 2026-10-25 15:31:44
[2026-10-25 15:31:44,993.993 INFO    ] 2026-10-25 15:31:44
[2026-10-25 15:31:45,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:31:45,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:31:45,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:31:45,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:31:45,455.455 INFO    ] time= 25/10/2026 15:31:45
[2026-10-25 15:31:45,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:31:45,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:31:45,609.609 INFO    ] No existing commands found in stream
[2026-10-25 15:31:50,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:31:50,623.623 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 15:31:51,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:31:51,310.310 INFO    ] Checking for system updates...
[2026-10-25 15:31:51,346.346 INFO    ] 200
[2026-10-25 15:31:51,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:51,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:51,409.409 INFO    ] No update needed
[2026-10-25 15:31:51,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 15:31:51,446.446 INFO    ] 200
[2026-10-25 15:31:51,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:31:51,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:31:51,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:31:51,544.544 INFO    ] No camera update needed
[2026-10-25 15:31:51,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:31:51,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:31:51,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:31:51,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:31:53,601.601 INFO    ] ================================================
[2026-10-25 15:31:53,617.617 INFO    ] Launching Daemon at Sun Oct 25 15:31:53 IST 2026
[2026-10-25 15:31:53,628.628 INFO    ] ================================================
[2026-10-25 15:31:54,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:31:54
[2026-10-25 15:31:54,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:31:55,053.053 INFO    ] Initializing speech engine...
[2026-10-25 15:31:55,062.062 INFO    ] 2026-10-25 15:31:55
[2026-10-25 15:31:55,307.307 INFO    ] 2026-10-25 15:31:55
[2026-10-25 15:31:55,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:31:55,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:31:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:31:55,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:31:55,742.742 INFO    ] time= 25/10/2026 15:31:55
[2026-10-25 15:31:55,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:31:55,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:31:55,923.923 INFO    ] No existing commands found in stream
[2026-10-25 15:32:00,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:32:00,937.937 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 15:32:02,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:32:02,338.338 INFO    ] Checking for system updates...
[2026-10-25 15:32:02,399.399 INFO    ] 200
[2026-10-25 15:32:02,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:02,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:32:02,490.490 INFO    ] No update needed
[2026-10-25 15:32:02,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 15:32:02,540.540 INFO    ] 200
[2026-10-25 15:32:02,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:02,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:32:02,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:32:02,656.656 INFO    ] No camera update needed
[2026-10-25 15:32:02,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:32:02,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:32:02,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:32:02,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:32:04,719.719 INFO    ] ================================================
[2026-10-25 15:32:04,735.735 INFO    ] Launching Daemon at Sun Oct 25 15:32:04 IST 2026
[2026-10-25 15:32:04,746.746 INFO    ] ================================================
[2026-10-25 15:32:05,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:32:05
[2026-10-25 15:32:05,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:32:06,151.151 INFO    ] Initializing speech engine...
[2026-10-25 15:32:06,167.167 INFO    ] 2026-10-25 15:32:06
[2026-10-25 15:32:06,416.416 INFO    ] 2026-10-25 15:32:06
[2026-10-25 15:32:06,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:32:06,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:32:06,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:32:06,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:32:06,894.894 INFO    ] time= 25/10/2026 15:32:06
[2026-10-25 15:32:06,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:32:06,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:32:07,029.029 INFO    ] No existing commands found in stream
[2026-10-25 15:32:12,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:32:12,043.043 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 15:32:16,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:32:16,327.327 INFO    ] Checking for system updates...
[2026-10-25 15:32:16,364.364 INFO    ] 200
[2026-10-25 15:32:16,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:16,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:16,422.422 INFO    ] No update needed
[2026-10-25 15:32:16,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 15:32:16,458.458 INFO    ] 200
[2026-10-25 15:32:16,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:16,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:32:16,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:16,554.554 INFO    ] No camera update needed
[2026-10-25 15:32:16,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:32:16,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:32:16,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:32:16,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:32:18,612.612 INFO    ] ================================================
[2026-10-25 15:32:18,627.627 INFO    ] Launching Daemon at Sun Oct 25 15:32:18 IST 2026
[2026-10-25 15:32:18,639.639 INFO    ] ================================================
[2026-10-25 15:32:19,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:32:19
[2026-10-25 15:32:19,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:32:20,070.070 INFO    ] Initializing speech engine...
[2026-10-25 15:32:20,075.075 INFO    ] 2026-10-25 15:32:20
[2026-10-25 15:32:20,321.321 INFO    ] 2026-10-25 15:32:20
[2026-10-25 15:32:20,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:32:20,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:32:20,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:32:20,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:32:20,688.688 INFO    ] time= 25/10/2026 15:32:20
[2026-10-25 15:32:20,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:32:20,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:32:20,849.849 INFO    ] No existing commands found in stream
[2026-10-25 15:32:25,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:32:25,882.882 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 15:32:29,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:32:29,050.050 INFO    ] Checking for system updates...
[2026-10-25 15:32:29,090.090 INFO    ] 200
[2026-10-25 15:32:29,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:29,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:29,155.155 INFO    ] No update needed
[2026-10-25 15:32:29,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 15:32:29,195.195 INFO    ] 200
[2026-10-25 15:32:29,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:29,244.244 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:32:29,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:29,297.297 INFO    ] No camera update needed
[2026-10-25 15:32:29,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:32:29,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:32:29,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:32:29,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:32:31,358.358 INFO    ] ================================================
[2026-10-25 15:32:31,376.376 INFO    ] Launching Daemon at Sun Oct 25 15:32:31 IST 2026
[2026-10-25 15:32:31,388.388 INFO    ] ================================================
[2026-10-25 15:32:32,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:32:32
[2026-10-25 15:32:32,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:32:32,892.892 INFO    ] Initializing speech engine...
[2026-10-25 15:32:32,913.913 INFO    ] 2026-10-25 15:32:32
[2026-10-25 15:32:33,170.170 INFO    ] 2026-10-25 15:32:33
[2026-10-25 15:32:33,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:32:33,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:32:33,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:32:33,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:32:33,538.538 INFO    ] time= 25/10/2026 15:32:33
[2026-10-25 15:32:33,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:32:33,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:32:33,612.612 INFO    ] No existing commands found in stream
[2026-10-25 15:32:38,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:32:38,627.627 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 15:32:42,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:32:42,213.213 INFO    ] Checking for system updates...
[2026-10-25 15:32:42,248.248 INFO    ] 200
[2026-10-25 15:32:42,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:42,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:42,310.310 INFO    ] No update needed
[2026-10-25 15:32:42,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 15:32:42,351.351 INFO    ] 200
[2026-10-25 15:32:42,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:42,394.394 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:32:42,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:42,454.454 INFO    ] No camera update needed
[2026-10-25 15:32:42,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:32:42,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:32:42,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:32:42,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:32:44,510.510 INFO    ] ================================================
[2026-10-25 15:32:44,526.526 INFO    ] Launching Daemon at Sun Oct 25 15:32:44 IST 2026
[2026-10-25 15:32:44,538.538 INFO    ] ================================================
[2026-10-25 15:32:45,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:32:45
[2026-10-25 15:32:45,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:32:46,003.003 INFO    ] Initializing speech engine...
[2026-10-25 15:32:46,013.013 INFO    ] 2026-10-25 15:32:46
[2026-10-25 15:32:46,275.275 INFO    ] 2026-10-25 15:32:46
[2026-10-25 15:32:46,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:32:46,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:32:46,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:32:46,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:32:46,757.757 INFO    ] time= 25/10/2026 15:32:46
[2026-10-25 15:32:46,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:32:46,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:32:46,941.941 INFO    ] No existing commands found in stream
[2026-10-25 15:32:51,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:32:51,976.976 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 15:32:55,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:32:55,420.420 INFO    ] Checking for system updates...
[2026-10-25 15:32:55,469.469 INFO    ] 200
[2026-10-25 15:32:55,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:55,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:55,543.543 INFO    ] No update needed
[2026-10-25 15:32:55,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 15:32:55,579.579 INFO    ] 200
[2026-10-25 15:32:55,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:32:55,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:32:55,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:32:55,794.794 INFO    ] No camera update needed
[2026-10-25 15:32:55,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:32:55,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:32:55,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:32:55,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:32:57,848.848 INFO    ] ================================================
[2026-10-25 15:32:57,864.864 INFO    ] Launching Daemon at Sun Oct 25 15:32:57 IST 2026
[2026-10-25 15:32:57,875.875 INFO    ] ================================================
[2026-10-25 15:32:58,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:32:58
[2026-10-25 15:32:59,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:32:59,293.293 INFO    ] Initializing speech engine...
[2026-10-25 15:32:59,303.303 INFO    ] 2026-10-25 15:32:59
[2026-10-25 15:32:59,547.547 INFO    ] 2026-10-25 15:32:59
[2026-10-25 15:32:59,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:33:02,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:33:02,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:33:03,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:33:03,038.038 INFO    ] time= 25/10/2026 15:33:03
[2026-10-25 15:33:03,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:33:03,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:33:03,097.097 INFO    ] No existing commands found in stream
[2026-10-25 15:33:08,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:33:08,110.110 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 15:33:12,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:33:12,540.540 INFO    ] Checking for system updates...
[2026-10-25 15:33:12,579.579 INFO    ] 200
[2026-10-25 15:33:12,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:12,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:12,646.646 INFO    ] No update needed
[2026-10-25 15:33:12,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 15:33:12,683.683 INFO    ] 200
[2026-10-25 15:33:12,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:12,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:33:12,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:12,784.784 INFO    ] No camera update needed
[2026-10-25 15:33:12,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:33:12,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:33:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:33:12,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:33:14,840.840 INFO    ] ================================================
[2026-10-25 15:33:14,856.856 INFO    ] Launching Daemon at Sun Oct 25 15:33:14 IST 2026
[2026-10-25 15:33:14,867.867 INFO    ] ================================================
[2026-10-25 15:33:15,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:33:15
[2026-10-25 15:33:16,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:33:16,329.329 INFO    ] Initializing speech engine...
[2026-10-25 15:33:16,336.336 INFO    ] 2026-10-25 15:33:16
[2026-10-25 15:33:16,598.598 INFO    ] 2026-10-25 15:33:16
[2026-10-25 15:33:16,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:33:16,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:33:16,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:33:17,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:33:17,035.035 INFO    ] time= 25/10/2026 15:33:17
[2026-10-25 15:33:17,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:33:17,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:33:17,161.161 INFO    ] No existing commands found in stream
[2026-10-25 15:33:22,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:33:22,174.174 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 15:33:25,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:33:25,875.875 INFO    ] Checking for system updates...
[2026-10-25 15:33:25,911.911 INFO    ] 200
[2026-10-25 15:33:25,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:25,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:25,974.974 INFO    ] No update needed
[2026-10-25 15:33:25,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 15:33:26,015.015 INFO    ] 200
[2026-10-25 15:33:26,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:26,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:33:26,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:26,113.113 INFO    ] No camera update needed
[2026-10-25 15:33:26,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:33:26,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:33:26,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:33:26,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:33:28,175.175 INFO    ] ================================================
[2026-10-25 15:33:28,191.191 INFO    ] Launching Daemon at Sun Oct 25 15:33:28 IST 2026
[2026-10-25 15:33:28,202.202 INFO    ] ================================================
[2026-10-25 15:33:28,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:33:28
[2026-10-25 15:33:29,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:33:29,876.876 INFO    ] Initializing speech engine...
[2026-10-25 15:33:29,887.887 INFO    ] 2026-10-25 15:33:29
[2026-10-25 15:33:30,198.198 INFO    ] 2026-10-25 15:33:30
[2026-10-25 15:33:30,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:33:33,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:33:33,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:33:33,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:33:33,985.985 INFO    ] time= 25/10/2026 15:33:33
[2026-10-25 15:33:33,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:33:33,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:33:34,041.041 INFO    ] No existing commands found in stream
[2026-10-25 15:33:39,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:33:39,055.055 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 15:33:43,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:33:43,883.883 INFO    ] Checking for system updates...
[2026-10-25 15:33:43,925.925 INFO    ] 200
[2026-10-25 15:33:43,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:43,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:33:43,991.991 INFO    ] No update needed
[2026-10-25 15:33:43,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 15:33:44,028.028 INFO    ] 200
[2026-10-25 15:33:44,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:44,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:33:44,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:33:44,137.137 INFO    ] No camera update needed
[2026-10-25 15:33:44,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:33:44,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:33:44,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:33:44,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:33:46,196.196 INFO    ] ================================================
[2026-10-25 15:33:46,213.213 INFO    ] Launching Daemon at Sun Oct 25 15:33:46 IST 2026
[2026-10-25 15:33:46,225.225 INFO    ] ================================================
[2026-10-25 15:33:46,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:33:46
[2026-10-25 15:33:47,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:33:47,839.839 INFO    ] Initializing speech engine...
[2026-10-25 15:33:47,846.846 INFO    ] 2026-10-25 15:33:47
[2026-10-25 15:33:48,120.120 INFO    ] 2026-10-25 15:33:48
[2026-10-25 15:33:48,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:33:48,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:33:48,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:33:48,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:33:48,595.595 INFO    ] time= 25/10/2026 15:33:48
[2026-10-25 15:33:48,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:33:48,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:33:48,812.812 INFO    ] No existing commands found in stream
[2026-10-25 15:33:53,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:33:53,842.842 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 15:33:54,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:33:54,507.507 INFO    ] Checking for system updates...
[2026-10-25 15:33:54,545.545 INFO    ] 200
[2026-10-25 15:33:54,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:55,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:55,938.938 INFO    ] No update needed
[2026-10-25 15:33:55,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 15:33:55,976.976 INFO    ] 200
[2026-10-25 15:33:55,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:33:56,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:33:56,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:33:56,074.074 INFO    ] No camera update needed
[2026-10-25 15:33:56,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:33:56,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:33:56,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:33:56,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:33:58,131.131 INFO    ] ================================================
[2026-10-25 15:33:58,147.147 INFO    ] Launching Daemon at Sun Oct 25 15:33:58 IST 2026
[2026-10-25 15:33:58,158.158 INFO    ] ================================================
[2026-10-25 15:33:58,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:33:58
[2026-10-25 15:33:59,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:33:59,779.779 INFO    ] Initializing speech engine...
[2026-10-25 15:33:59,792.792 INFO    ] 2026-10-25 15:33:59
[2026-10-25 15:34:00,072.072 INFO    ] 2026-10-25 15:34:00
[2026-10-25 15:34:00,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:34:00,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:34:00,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:34:00,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:34:00,521.521 INFO    ] time= 25/10/2026 15:34:00
[2026-10-25 15:34:00,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:34:00,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:34:00,675.675 INFO    ] No existing commands found in stream
[2026-10-25 15:34:05,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:34:05,691.691 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 15:34:07,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:34:07,587.587 INFO    ] Checking for system updates...
[2026-10-25 15:34:07,627.627 INFO    ] 200
[2026-10-25 15:34:07,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:07,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:07,685.685 INFO    ] No update needed
[2026-10-25 15:34:07,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 15:34:07,725.725 INFO    ] 200
[2026-10-25 15:34:07,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:07,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:34:07,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:07,830.830 INFO    ] No camera update needed
[2026-10-25 15:34:07,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:34:07,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:34:07,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:34:07,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:34:09,885.885 INFO    ] ================================================
[2026-10-25 15:34:09,900.900 INFO    ] Launching Daemon at Sun Oct 25 15:34:09 IST 2026
[2026-10-25 15:34:09,910.910 INFO    ] ================================================
[2026-10-25 15:34:10,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:34:10
[2026-10-25 15:34:11,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:34:11,442.442 INFO    ] Initializing speech engine...
[2026-10-25 15:34:11,450.450 INFO    ] 2026-10-25 15:34:11
[2026-10-25 15:34:11,729.729 INFO    ] 2026-10-25 15:34:11
[2026-10-25 15:34:11,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:34:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:34:11,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:34:12,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:34:12,196.196 INFO    ] time= 25/10/2026 15:34:12
[2026-10-25 15:34:12,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:34:12,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:34:12,318.318 INFO    ] No existing commands found in stream
[2026-10-25 15:34:17,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:34:17,332.332 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 15:34:21,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:34:21,631.631 INFO    ] Checking for system updates...
[2026-10-25 15:34:21,667.667 INFO    ] 200
[2026-10-25 15:34:21,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:21,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:21,726.726 INFO    ] No update needed
[2026-10-25 15:34:21,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 15:34:21,763.763 INFO    ] 200
[2026-10-25 15:34:21,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:21,807.807 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:34:21,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:21,863.863 INFO    ] No camera update needed
[2026-10-25 15:34:21,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:34:21,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:34:21,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:34:21,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:34:23,921.921 INFO    ] ================================================
[2026-10-25 15:34:23,937.937 INFO    ] Launching Daemon at Sun Oct 25 15:34:23 IST 2026
[2026-10-25 15:34:23,947.947 INFO    ] ================================================
[2026-10-25 15:34:24,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:34:24
[2026-10-25 15:34:25,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:34:25,347.347 INFO    ] Initializing speech engine...
[2026-10-25 15:34:25,355.355 INFO    ] 2026-10-25 15:34:25
[2026-10-25 15:34:25,625.625 INFO    ] 2026-10-25 15:34:25
[2026-10-25 15:34:25,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:34:25,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:34:25,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:34:25,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:34:25,990.990 INFO    ] time= 25/10/2026 15:34:25
[2026-10-25 15:34:25,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:34:26,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:34:26,171.171 INFO    ] No existing commands found in stream
[2026-10-25 15:34:31,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:34:31,200.200 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 15:34:36,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:34:36,087.087 INFO    ] Checking for system updates...
[2026-10-25 15:34:36,123.123 INFO    ] 200
[2026-10-25 15:34:36,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:36,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:36,187.187 INFO    ] No update needed
[2026-10-25 15:34:36,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 15:34:36,227.227 INFO    ] 200
[2026-10-25 15:34:36,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:36,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:34:36,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:36,334.334 INFO    ] No camera update needed
[2026-10-25 15:34:36,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:34:36,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:34:36,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:34:36,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:34:38,389.389 INFO    ] ================================================
[2026-10-25 15:34:38,404.404 INFO    ] Launching Daemon at Sun Oct 25 15:34:38 IST 2026
[2026-10-25 15:34:38,415.415 INFO    ] ================================================
[2026-10-25 15:34:39,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:34:39
[2026-10-25 15:34:39,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:34:40,026.026 INFO    ] Initializing speech engine...
[2026-10-25 15:34:40,033.033 INFO    ] 2026-10-25 15:34:40
[2026-10-25 15:34:40,310.310 INFO    ] 2026-10-25 15:34:40
[2026-10-25 15:34:40,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:34:40,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:34:40,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:34:40,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:34:40,752.752 INFO    ] time= 25/10/2026 15:34:40
[2026-10-25 15:34:40,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:34:40,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:34:40,897.897 INFO    ] No existing commands found in stream
[2026-10-25 15:34:45,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:34:45,912.912 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 15:34:48,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:34:48,231.231 INFO    ] Checking for system updates...
[2026-10-25 15:34:48,267.267 INFO    ] 200
[2026-10-25 15:34:48,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:48,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:48,328.328 INFO    ] No update needed
[2026-10-25 15:34:48,331.331 INFO    ] Checking for camera pi updates...
[2026-10-25 15:34:48,366.366 INFO    ] 200
[2026-10-25 15:34:48,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:34:48,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:34:48,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:34:48,469.469 INFO    ] No camera update needed
[2026-10-25 15:34:48,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:34:48,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:34:48,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:34:48,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:34:50,528.528 INFO    ] ================================================
[2026-10-25 15:34:50,543.543 INFO    ] Launching Daemon at Sun Oct 25 15:34:50 IST 2026
[2026-10-25 15:34:50,553.553 INFO    ] ================================================
[2026-10-25 15:34:51,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:34:51
[2026-10-25 15:34:51,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:34:51,951.951 INFO    ] Initializing speech engine...
[2026-10-25 15:34:51,966.966 INFO    ] 2026-10-25 15:34:51
[2026-10-25 15:34:52,233.233 INFO    ] 2026-10-25 15:34:52
[2026-10-25 15:34:52,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:34:52,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:34:52,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:34:52,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:34:52,608.608 INFO    ] time= 25/10/2026 15:34:52
[2026-10-25 15:34:52,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:34:52,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:34:52,790.790 INFO    ] No existing commands found in stream
[2026-10-25 15:34:57,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:34:57,817.817 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 15:35:01,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:35:01,559.559 INFO    ] Checking for system updates...
[2026-10-25 15:35:01,658.658 INFO    ] 200
[2026-10-25 15:35:01,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:01,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:01,842.842 INFO    ] No update needed
[2026-10-25 15:35:01,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 15:35:01,885.885 INFO    ] 200
[2026-10-25 15:35:01,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:01,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:35:02,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:02,089.089 INFO    ] No camera update needed
[2026-10-25 15:35:02,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:35:02,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:35:02,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:35:02,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:35:04,149.149 INFO    ] ================================================
[2026-10-25 15:35:04,164.164 INFO    ] Launching Daemon at Sun Oct 25 15:35:04 IST 2026
[2026-10-25 15:35:04,174.174 INFO    ] ================================================
[2026-10-25 15:35:04,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:35:04
[2026-10-25 15:35:05,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:35:05,585.585 INFO    ] Initializing speech engine...
[2026-10-25 15:35:05,597.597 INFO    ] 2026-10-25 15:35:05
[2026-10-25 15:35:05,852.852 INFO    ] 2026-10-25 15:35:05
[2026-10-25 15:35:05,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:35:06,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:35:06,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:35:06,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:35:06,876.876 INFO    ] time= 25/10/2026 15:35:06
[2026-10-25 15:35:06,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:35:06,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:35:07,035.035 INFO    ] No existing commands found in stream
[2026-10-25 15:35:12,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:35:12,049.049 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 15:35:13,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:35:13,649.649 INFO    ] Checking for system updates...
[2026-10-25 15:35:13,692.692 INFO    ] 200
[2026-10-25 15:35:13,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:13,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:35:13,769.769 INFO    ] No update needed
[2026-10-25 15:35:13,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 15:35:13,807.807 INFO    ] 200
[2026-10-25 15:35:13,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:13,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:35:13,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:35:13,907.907 INFO    ] No camera update needed
[2026-10-25 15:35:13,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:35:13,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:35:13,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:35:13,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:35:15,965.965 INFO    ] ================================================
[2026-10-25 15:35:15,980.980 INFO    ] Launching Daemon at Sun Oct 25 15:35:15 IST 2026
[2026-10-25 15:35:15,991.991 INFO    ] ================================================
[2026-10-25 15:35:16,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:35:16
[2026-10-25 15:35:17,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:35:17,448.448 INFO    ] Initializing speech engine...
[2026-10-25 15:35:17,470.470 INFO    ] 2026-10-25 15:35:17
[2026-10-25 15:35:17,725.725 INFO    ] 2026-10-25 15:35:17
[2026-10-25 15:35:17,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:35:17,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:35:17,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:35:18,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:35:18,177.177 INFO    ] time= 25/10/2026 15:35:18
[2026-10-25 15:35:18,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:35:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:35:18,344.344 INFO    ] No existing commands found in stream
[2026-10-25 15:35:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:35:23,359.359 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 15:35:25,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:35:25,195.195 INFO    ] Checking for system updates...
[2026-10-25 15:35:25,231.231 INFO    ] 200
[2026-10-25 15:35:25,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:25,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:25,289.289 INFO    ] No update needed
[2026-10-25 15:35:25,292.292 INFO    ] Checking for camera pi updates...
[2026-10-25 15:35:25,331.331 INFO    ] 200
[2026-10-25 15:35:25,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:25,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:35:25,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:25,431.431 INFO    ] No camera update needed
[2026-10-25 15:35:25,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:35:25,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:35:25,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:35:25,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:35:27,489.489 INFO    ] ================================================
[2026-10-25 15:35:27,504.504 INFO    ] Launching Daemon at Sun Oct 25 15:35:27 IST 2026
[2026-10-25 15:35:27,514.514 INFO    ] ================================================
[2026-10-25 15:35:28,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:35:28
[2026-10-25 15:35:28,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:35:28,921.921 INFO    ] Initializing speech engine...
[2026-10-25 15:35:28,941.941 INFO    ] 2026-10-25 15:35:28
[2026-10-25 15:35:29,189.189 INFO    ] 2026-10-25 15:35:29
[2026-10-25 15:35:29,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:35:29,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:35:29,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:35:29,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:35:29,671.671 INFO    ] time= 25/10/2026 15:35:29
[2026-10-25 15:35:29,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:35:29,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:35:29,829.829 INFO    ] No existing commands found in stream
[2026-10-25 15:35:34,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:35:34,864.864 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 15:35:37,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:35:37,821.821 INFO    ] Checking for system updates...
[2026-10-25 15:35:37,858.858 INFO    ] 200
[2026-10-25 15:35:37,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:37,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:37,916.916 INFO    ] No update needed
[2026-10-25 15:35:37,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 15:35:37,953.953 INFO    ] 200
[2026-10-25 15:35:37,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:37,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:35:38,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:38,146.146 INFO    ] No camera update needed
[2026-10-25 15:35:38,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:35:38,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:35:38,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:35:38,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:35:40,202.202 INFO    ] ================================================
[2026-10-25 15:35:40,216.216 INFO    ] Launching Daemon at Sun Oct 25 15:35:40 IST 2026
[2026-10-25 15:35:40,227.227 INFO    ] ================================================
[2026-10-25 15:35:40,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:35:40
[2026-10-25 15:35:41,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:35:41,624.624 INFO    ] Initializing speech engine...
[2026-10-25 15:35:41,636.636 INFO    ] 2026-10-25 15:35:41
[2026-10-25 15:35:41,899.899 INFO    ] 2026-10-25 15:35:41
[2026-10-25 15:35:41,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:35:42,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:35:42,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:35:42,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:35:42,383.383 INFO    ] time= 25/10/2026 15:35:42
[2026-10-25 15:35:42,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:35:42,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:35:42,513.513 INFO    ] No existing commands found in stream
[2026-10-25 15:35:47,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:35:47,527.527 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 15:35:51,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:35:51,020.020 INFO    ] Checking for system updates...
[2026-10-25 15:35:51,061.061 INFO    ] 200
[2026-10-25 15:35:51,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:51,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:51,119.119 INFO    ] No update needed
[2026-10-25 15:35:51,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 15:35:51,155.155 INFO    ] 200
[2026-10-25 15:35:51,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:35:51,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:35:51,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:35:51,246.246 INFO    ] No camera update needed
[2026-10-25 15:35:51,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:35:51,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:35:51,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:35:51,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:35:53,302.302 INFO    ] ================================================
[2026-10-25 15:35:53,317.317 INFO    ] Launching Daemon at Sun Oct 25 15:35:53 IST 2026
[2026-10-25 15:35:53,328.328 INFO    ] ================================================
[2026-10-25 15:35:53,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:35:53
[2026-10-25 15:35:54,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:35:54,784.784 INFO    ] Initializing speech engine...
[2026-10-25 15:35:54,792.792 INFO    ] 2026-10-25 15:35:54
[2026-10-25 15:35:55,040.040 INFO    ] 2026-10-25 15:35:55
[2026-10-25 15:35:55,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:35:55,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:35:55,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:35:55,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:35:55,505.505 INFO    ] time= 25/10/2026 15:35:55
[2026-10-25 15:35:55,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:35:55,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:35:55,654.654 INFO    ] No existing commands found in stream
[2026-10-25 15:36:00,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:36:00,669.669 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 15:36:07,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:36:07,677.677 INFO    ] Checking for system updates...
[2026-10-25 15:36:07,713.713 INFO    ] 200
[2026-10-25 15:36:07,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:07,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:07,778.778 INFO    ] No update needed
[2026-10-25 15:36:07,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 15:36:07,814.814 INFO    ] 200
[2026-10-25 15:36:07,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:07,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:36:07,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:07,925.925 INFO    ] No camera update needed
[2026-10-25 15:36:07,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:36:07,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:36:07,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:36:07,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:36:09,984.984 INFO    ] ================================================
[2026-10-25 15:36:10,999.999 INFO    ] Launching Daemon at Sun Oct 25 15:36:09 IST 2026
[2026-10-25 15:36:10,010.010 INFO    ] ================================================
[2026-10-25 15:36:10,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:36:10
[2026-10-25 15:36:11,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:36:11,416.416 INFO    ] Initializing speech engine...
[2026-10-25 15:36:11,433.433 INFO    ] 2026-10-25 15:36:11
[2026-10-25 15:36:11,719.719 INFO    ] 2026-10-25 15:36:11
[2026-10-25 15:36:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:36:11,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:36:12,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:36:12,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:36:12,197.197 INFO    ] time= 25/10/2026 15:36:12
[2026-10-25 15:36:12,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:36:12,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:36:12,335.335 INFO    ] No existing commands found in stream
[2026-10-25 15:36:17,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:36:17,350.350 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 15:36:21,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:36:21,143.143 INFO    ] Checking for system updates...
[2026-10-25 15:36:21,184.184 INFO    ] 200
[2026-10-25 15:36:21,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:21,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:36:21,245.245 INFO    ] No update needed
[2026-10-25 15:36:21,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 15:36:21,288.288 INFO    ] 200
[2026-10-25 15:36:21,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:21,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:36:21,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:36:21,394.394 INFO    ] No camera update needed
[2026-10-25 15:36:21,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:36:21,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:36:21,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:36:21,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:36:23,454.454 INFO    ] ================================================
[2026-10-25 15:36:23,469.469 INFO    ] Launching Daemon at Sun Oct 25 15:36:23 IST 2026
[2026-10-25 15:36:23,481.481 INFO    ] ================================================
[2026-10-25 15:36:24,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:36:24
[2026-10-25 15:36:24,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:36:24,885.885 INFO    ] Initializing speech engine...
[2026-10-25 15:36:24,897.897 INFO    ] 2026-10-25 15:36:24
[2026-10-25 15:36:25,161.161 INFO    ] 2026-10-25 15:36:25
[2026-10-25 15:36:25,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:36:25,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:36:25,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:36:25,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:36:25,655.655 INFO    ] time= 25/10/2026 15:36:25
[2026-10-25 15:36:25,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:36:25,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:36:25,836.836 INFO    ] No existing commands found in stream
[2026-10-25 15:36:30,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:36:30,866.866 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 15:36:34,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:36:34,101.101 INFO    ] Checking for system updates...
[2026-10-25 15:36:34,138.138 INFO    ] 200
[2026-10-25 15:36:34,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:34,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:34,199.199 INFO    ] No update needed
[2026-10-25 15:36:34,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 15:36:34,238.238 INFO    ] 200
[2026-10-25 15:36:34,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:34,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:36:34,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:34,338.338 INFO    ] No camera update needed
[2026-10-25 15:36:34,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:36:34,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:36:34,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:36:34,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:36:36,399.399 INFO    ] ================================================
[2026-10-25 15:36:36,416.416 INFO    ] Launching Daemon at Sun Oct 25 15:36:36 IST 2026
[2026-10-25 15:36:36,426.426 INFO    ] ================================================
[2026-10-25 15:36:36,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:36:36
[2026-10-25 15:36:37,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:36:37,828.828 INFO    ] Initializing speech engine...
[2026-10-25 15:36:37,852.852 INFO    ] 2026-10-25 15:36:37
[2026-10-25 15:36:38,109.109 INFO    ] 2026-10-25 15:36:38
[2026-10-25 15:36:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:36:39,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:36:39,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:36:39,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:36:39,489.489 INFO    ] time= 25/10/2026 15:36:39
[2026-10-25 15:36:39,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:36:39,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:36:39,559.559 INFO    ] No existing commands found in stream
[2026-10-25 15:36:44,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:36:44,573.573 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 15:36:45,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:36:45,653.653 INFO    ] Checking for system updates...
[2026-10-25 15:36:45,694.694 INFO    ] 200
[2026-10-25 15:36:45,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:45,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:45,753.753 INFO    ] No update needed
[2026-10-25 15:36:45,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 15:36:45,791.791 INFO    ] 200
[2026-10-25 15:36:45,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:45,840.840 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:36:45,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:45,896.896 INFO    ] No camera update needed
[2026-10-25 15:36:45,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:36:45,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:36:45,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:36:45,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:36:47,954.954 INFO    ] ================================================
[2026-10-25 15:36:47,971.971 INFO    ] Launching Daemon at Sun Oct 25 15:36:47 IST 2026
[2026-10-25 15:36:47,983.983 INFO    ] ================================================
[2026-10-25 15:36:48,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:36:48
[2026-10-25 15:36:49,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:36:49,466.466 INFO    ] Initializing speech engine...
[2026-10-25 15:36:49,474.474 INFO    ] 2026-10-25 15:36:49
[2026-10-25 15:36:49,737.737 INFO    ] 2026-10-25 15:36:49
[2026-10-25 15:36:49,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:36:50,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:36:50,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:36:50,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:36:50,222.222 INFO    ] time= 25/10/2026 15:36:50
[2026-10-25 15:36:50,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:36:50,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:36:50,421.421 INFO    ] No existing commands found in stream
[2026-10-25 15:36:55,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:36:55,448.448 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 15:36:57,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:36:57,383.383 INFO    ] Checking for system updates...
[2026-10-25 15:36:57,422.422 INFO    ] 200
[2026-10-25 15:36:57,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:57,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:57,488.488 INFO    ] No update needed
[2026-10-25 15:36:57,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 15:36:57,525.525 INFO    ] 200
[2026-10-25 15:36:57,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:36:57,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:36:57,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:36:57,628.628 INFO    ] No camera update needed
[2026-10-25 15:36:57,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:36:57,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:36:57,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:36:57,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:36:59,683.683 INFO    ] ================================================
[2026-10-25 15:36:59,700.700 INFO    ] Launching Daemon at Sun Oct 25 15:36:59 IST 2026
[2026-10-25 15:36:59,711.711 INFO    ] ================================================
[2026-10-25 15:37:00,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:37:00
[2026-10-25 15:37:00,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:37:01,406.406 INFO    ] Initializing speech engine...
[2026-10-25 15:37:01,410.410 INFO    ] 2026-10-25 15:37:01
[2026-10-25 15:37:01,786.786 INFO    ] 2026-10-25 15:37:01
[2026-10-25 15:37:01,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:37:02,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:37:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:37:02,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:37:02,297.297 INFO    ] time= 25/10/2026 15:37:02
[2026-10-25 15:37:02,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:37:02,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:37:02,451.451 INFO    ] No existing commands found in stream
[2026-10-25 15:37:07,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:37:07,483.483 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 15:37:11,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:37:11,764.764 INFO    ] Checking for system updates...
[2026-10-25 15:37:11,806.806 INFO    ] 200
[2026-10-25 15:37:11,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:11,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:11,870.870 INFO    ] No update needed
[2026-10-25 15:37:11,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 15:37:11,909.909 INFO    ] 200
[2026-10-25 15:37:11,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:11,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:37:12,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:12,109.109 INFO    ] No camera update needed
[2026-10-25 15:37:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:37:12,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:37:12,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:37:12,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:37:14,171.171 INFO    ] ================================================
[2026-10-25 15:37:14,187.187 INFO    ] Launching Daemon at Sun Oct 25 15:37:14 IST 2026
[2026-10-25 15:37:14,198.198 INFO    ] ================================================
[2026-10-25 15:37:14,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:37:14
[2026-10-25 15:37:15,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:37:15,701.701 INFO    ] Initializing speech engine...
[2026-10-25 15:37:15,713.713 INFO    ] 2026-10-25 15:37:15
[2026-10-25 15:37:16,001.001 INFO    ] 2026-10-25 15:37:15
[2026-10-25 15:37:16,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:37:16,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:37:16,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:37:16,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:37:16,532.532 INFO    ] time= 25/10/2026 15:37:16
[2026-10-25 15:37:16,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:37:16,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:37:16,748.748 INFO    ] No existing commands found in stream
[2026-10-25 15:37:21,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:37:21,788.788 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 15:37:22,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:37:22,984.984 INFO    ] Checking for system updates...
[2026-10-25 15:37:23,021.021 INFO    ] 200
[2026-10-25 15:37:23,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:23,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:23,086.086 INFO    ] No update needed
[2026-10-25 15:37:23,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 15:37:23,122.122 INFO    ] 200
[2026-10-25 15:37:23,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:23,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:37:23,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:23,204.204 INFO    ] No camera update needed
[2026-10-25 15:37:23,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:37:23,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:37:23,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:37:23,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:37:25,259.259 INFO    ] ================================================
[2026-10-25 15:37:25,274.274 INFO    ] Launching Daemon at Sun Oct 25 15:37:25 IST 2026
[2026-10-25 15:37:25,286.286 INFO    ] ================================================
[2026-10-25 15:37:25,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:37:25
[2026-10-25 15:37:26,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:37:26,678.678 INFO    ] Initializing speech engine...
[2026-10-25 15:37:26,685.685 INFO    ] 2026-10-25 15:37:26
[2026-10-25 15:37:26,958.958 INFO    ] 2026-10-25 15:37:26
[2026-10-25 15:37:26,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:37:27,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:37:27,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:37:27,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:37:27,463.463 INFO    ] time= 25/10/2026 15:37:27
[2026-10-25 15:37:27,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:37:27,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:37:27,626.626 INFO    ] No existing commands found in stream
[2026-10-25 15:37:32,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:37:32,640.640 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 15:37:33,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:37:33,152.152 INFO    ] Checking for system updates...
[2026-10-25 15:37:33,192.192 INFO    ] 200
[2026-10-25 15:37:33,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:33,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:37:33,251.251 INFO    ] No update needed
[2026-10-25 15:37:33,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 15:37:33,287.287 INFO    ] 200
[2026-10-25 15:37:33,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:33,331.331 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:37:33,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:37:33,385.385 INFO    ] No camera update needed
[2026-10-25 15:37:33,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:37:33,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:37:33,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:37:33,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:37:35,438.438 INFO    ] ================================================
[2026-10-25 15:37:35,454.454 INFO    ] Launching Daemon at Sun Oct 25 15:37:35 IST 2026
[2026-10-25 15:37:35,465.465 INFO    ] ================================================
[2026-10-25 15:37:36,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:37:36
[2026-10-25 15:37:36,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:37:36,883.883 INFO    ] Initializing speech engine...
[2026-10-25 15:37:36,890.890 INFO    ] 2026-10-25 15:37:36
[2026-10-25 15:37:37,185.185 INFO    ] 2026-10-25 15:37:37
[2026-10-25 15:37:37,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:37:40,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:37:40,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:37:40,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:37:40,922.922 INFO    ] time= 25/10/2026 15:37:40
[2026-10-25 15:37:40,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:37:40,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:37:40,981.981 INFO    ] No existing commands found in stream
[2026-10-25 15:37:45,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:37:45,989.989 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 15:37:49,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:37:49,037.037 INFO    ] Checking for system updates...
[2026-10-25 15:37:49,078.078 INFO    ] 200
[2026-10-25 15:37:49,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:49,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:49,143.143 INFO    ] No update needed
[2026-10-25 15:37:49,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 15:37:49,179.179 INFO    ] 200
[2026-10-25 15:37:49,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:37:49,228.228 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:37:49,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:37:49,279.279 INFO    ] No camera update needed
[2026-10-25 15:37:49,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:37:49,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:37:49,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:37:49,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:37:51,338.338 INFO    ] ================================================
[2026-10-25 15:37:51,353.353 INFO    ] Launching Daemon at Sun Oct 25 15:37:51 IST 2026
[2026-10-25 15:37:51,364.364 INFO    ] ================================================
[2026-10-25 15:37:51,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:37:51
[2026-10-25 15:37:52,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:37:52,775.775 INFO    ] Initializing speech engine...
[2026-10-25 15:37:52,783.783 INFO    ] 2026-10-25 15:37:52
[2026-10-25 15:37:53,077.077 INFO    ] 2026-10-25 15:37:53
[2026-10-25 15:37:53,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:37:53,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:37:53,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:37:53,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:37:53,457.457 INFO    ] time= 25/10/2026 15:37:53
[2026-10-25 15:37:53,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:37:53,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:37:53,582.582 INFO    ] No existing commands found in stream
[2026-10-25 15:37:58,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:37:58,597.597 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 15:38:00,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:38:00,855.855 INFO    ] Checking for system updates...
[2026-10-25 15:38:00,895.895 INFO    ] 200
[2026-10-25 15:38:00,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:00,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:00,959.959 INFO    ] No update needed
[2026-10-25 15:38:00,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 15:38:00,999.999 INFO    ] 200
[2026-10-25 15:38:01,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:01,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:38:01,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:01,091.091 INFO    ] No camera update needed
[2026-10-25 15:38:01,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:38:01,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:38:01,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:38:01,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:38:03,148.148 INFO    ] ================================================
[2026-10-25 15:38:03,165.165 INFO    ] Launching Daemon at Sun Oct 25 15:38:03 IST 2026
[2026-10-25 15:38:03,176.176 INFO    ] ================================================
[2026-10-25 15:38:03,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:38:03
[2026-10-25 15:38:04,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:38:04,782.782 INFO    ] Initializing speech engine...
[2026-10-25 15:38:04,807.807 INFO    ] 2026-10-25 15:38:04
[2026-10-25 15:38:05,078.078 INFO    ] 2026-10-25 15:38:05
[2026-10-25 15:38:05,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:38:05,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:38:05,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:38:05,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:38:05,567.567 INFO    ] time= 25/10/2026 15:38:05
[2026-10-25 15:38:05,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:38:05,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:38:05,723.723 INFO    ] No existing commands found in stream
[2026-10-25 15:38:10,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:38:10,739.739 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 15:38:15,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:38:15,173.173 INFO    ] Checking for system updates...
[2026-10-25 15:38:15,211.211 INFO    ] 200
[2026-10-25 15:38:15,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:15,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:15,277.277 INFO    ] No update needed
[2026-10-25 15:38:15,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 15:38:15,317.317 INFO    ] 200
[2026-10-25 15:38:15,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:15,366.366 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:38:15,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:15,426.426 INFO    ] No camera update needed
[2026-10-25 15:38:15,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:38:15,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:38:15,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:38:15,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:38:17,484.484 INFO    ] ================================================
[2026-10-25 15:38:17,499.499 INFO    ] Launching Daemon at Sun Oct 25 15:38:17 IST 2026
[2026-10-25 15:38:17,510.510 INFO    ] ================================================
[2026-10-25 15:38:18,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:38:18
[2026-10-25 15:38:18,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:38:18,940.940 INFO    ] Initializing speech engine...
[2026-10-25 15:38:18,949.949 INFO    ] 2026-10-25 15:38:18
[2026-10-25 15:38:19,207.207 INFO    ] 2026-10-25 15:38:19
[2026-10-25 15:38:19,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:38:19,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:38:19,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:38:19,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:38:19,674.674 INFO    ] time= 25/10/2026 15:38:19
[2026-10-25 15:38:19,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:38:19,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:38:19,847.847 INFO    ] No existing commands found in stream
[2026-10-25 15:38:24,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:38:24,861.861 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 15:38:28,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:38:28,393.393 INFO    ] Checking for system updates...
[2026-10-25 15:38:28,430.430 INFO    ] 200
[2026-10-25 15:38:28,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:28,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:28,487.487 INFO    ] No update needed
[2026-10-25 15:38:28,490.490 INFO    ] Checking for camera pi updates...
[2026-10-25 15:38:28,527.527 INFO    ] 200
[2026-10-25 15:38:28,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:28,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:38:28,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:38:28,625.625 INFO    ] No camera update needed
[2026-10-25 15:38:28,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:38:28,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:38:28,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:38:28,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:38:30,682.682 INFO    ] ================================================
[2026-10-25 15:38:30,697.697 INFO    ] Launching Daemon at Sun Oct 25 15:38:30 IST 2026
[2026-10-25 15:38:30,708.708 INFO    ] ================================================
[2026-10-25 15:38:31,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:38:31
[2026-10-25 15:38:31,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:38:32,166.166 INFO    ] Initializing speech engine...
[2026-10-25 15:38:32,181.181 INFO    ] 2026-10-25 15:38:32
[2026-10-25 15:38:32,463.463 INFO    ] 2026-10-25 15:38:32
[2026-10-25 15:38:32,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:38:32,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:38:32,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:38:32,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:38:32,886.886 INFO    ] time= 25/10/2026 15:38:32
[2026-10-25 15:38:32,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:38:32,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:38:32,974.974 INFO    ] No existing commands found in stream
[2026-10-25 15:38:37,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:38:37,989.989 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 15:38:38,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:38:38,576.576 INFO    ] Checking for system updates...
[2026-10-25 15:38:38,616.616 INFO    ] 200
[2026-10-25 15:38:38,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:38,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:38:38,682.682 INFO    ] No update needed
[2026-10-25 15:38:38,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 15:38:38,718.718 INFO    ] 200
[2026-10-25 15:38:38,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:38,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:38:38,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:38:38,799.799 INFO    ] No camera update needed
[2026-10-25 15:38:38,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:38:38,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:38:38,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:38:38,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:38:40,855.855 INFO    ] ================================================
[2026-10-25 15:38:40,871.871 INFO    ] Launching Daemon at Sun Oct 25 15:38:40 IST 2026
[2026-10-25 15:38:40,882.882 INFO    ] ================================================
[2026-10-25 15:38:41,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:38:41
[2026-10-25 15:38:42,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:38:42,296.296 INFO    ] Initializing speech engine...
[2026-10-25 15:38:42,305.305 INFO    ] 2026-10-25 15:38:42
[2026-10-25 15:38:42,550.550 INFO    ] 2026-10-25 15:38:42
[2026-10-25 15:38:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:38:42,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:38:42,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:38:42,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:38:43,019.019 INFO    ] time= 25/10/2026 15:38:42
[2026-10-25 15:38:43,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:38:43,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:38:43,166.166 INFO    ] No existing commands found in stream
[2026-10-25 15:38:48,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:38:48,180.180 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 15:38:51,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:38:51,683.683 INFO    ] Checking for system updates...
[2026-10-25 15:38:51,720.720 INFO    ] 200
[2026-10-25 15:38:51,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:51,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:38:51,779.779 INFO    ] No update needed
[2026-10-25 15:38:51,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 15:38:51,818.818 INFO    ] 200
[2026-10-25 15:38:51,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:38:51,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:38:51,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:38:51,924.924 INFO    ] No camera update needed
[2026-10-25 15:38:51,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:38:51,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:38:51,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:38:51,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:38:53,980.980 INFO    ] ================================================
[2026-10-25 15:38:54,995.995 INFO    ] Launching Daemon at Sun Oct 25 15:38:53 IST 2026
[2026-10-25 15:38:54,006.006 INFO    ] ================================================
[2026-10-25 15:38:54,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:38:54
[2026-10-25 15:38:55,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:38:55,418.418 INFO    ] Initializing speech engine...
[2026-10-25 15:38:55,442.442 INFO    ] 2026-10-25 15:38:55
[2026-10-25 15:38:55,712.712 INFO    ] 2026-10-25 15:38:55
[2026-10-25 15:38:55,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:38:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:38:55,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:38:56,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:38:56,121.121 INFO    ] time= 25/10/2026 15:38:56
[2026-10-25 15:38:56,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:38:56,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:38:56,308.308 INFO    ] No existing commands found in stream
[2026-10-25 15:39:01,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:39:01,338.338 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 15:39:01,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:39:01,923.923 INFO    ] Checking for system updates...
[2026-10-25 15:39:01,966.966 INFO    ] 200
[2026-10-25 15:39:01,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:02,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:02,046.046 INFO    ] No update needed
[2026-10-25 15:39:02,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 15:39:02,096.096 INFO    ] 200
[2026-10-25 15:39:02,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:02,151.151 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:39:02,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:02,188.188 INFO    ] No camera update needed
[2026-10-25 15:39:02,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:39:02,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:39:02,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:39:02,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:39:04,252.252 INFO    ] ================================================
[2026-10-25 15:39:04,267.267 INFO    ] Launching Daemon at Sun Oct 25 15:39:04 IST 2026
[2026-10-25 15:39:04,278.278 INFO    ] ================================================
[2026-10-25 15:39:04,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:39:04
[2026-10-25 15:39:05,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:39:05,691.691 INFO    ] Initializing speech engine...
[2026-10-25 15:39:05,703.703 INFO    ] 2026-10-25 15:39:05
[2026-10-25 15:39:05,976.976 INFO    ] 2026-10-25 15:39:05
[2026-10-25 15:39:06,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:39:06,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:39:06,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:39:06,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:39:06,415.415 INFO    ] time= 25/10/2026 15:39:06
[2026-10-25 15:39:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:39:06,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:39:06,567.567 INFO    ] No existing commands found in stream
[2026-10-25 15:39:11,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:39:11,582.582 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 15:39:13,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:39:13,288.288 INFO    ] Checking for system updates...
[2026-10-25 15:39:13,327.327 INFO    ] 200
[2026-10-25 15:39:13,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:13,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:39:13,384.384 INFO    ] No update needed
[2026-10-25 15:39:13,386.386 INFO    ] Checking for camera pi updates...
[2026-10-25 15:39:13,422.422 INFO    ] 200
[2026-10-25 15:39:13,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:13,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:39:13,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:39:13,516.516 INFO    ] No camera update needed
[2026-10-25 15:39:13,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:39:13,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:39:13,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:39:13,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:39:15,571.571 INFO    ] ================================================
[2026-10-25 15:39:15,587.587 INFO    ] Launching Daemon at Sun Oct 25 15:39:15 IST 2026
[2026-10-25 15:39:15,599.599 INFO    ] ================================================
[2026-10-25 15:39:16,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:39:16
[2026-10-25 15:39:16,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:39:16,994.994 INFO    ] Initializing speech engine...
[2026-10-25 15:39:17,016.016 INFO    ] 2026-10-25 15:39:17
[2026-10-25 15:39:17,267.267 INFO    ] 2026-10-25 15:39:17
[2026-10-25 15:39:17,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:39:17,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:39:17,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:39:17,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:39:17,758.758 INFO    ] time= 25/10/2026 15:39:17
[2026-10-25 15:39:17,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:39:17,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:39:17,887.887 INFO    ] No existing commands found in stream
[2026-10-25 15:39:22,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:39:22,907.907 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 15:39:24,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:39:24,941.941 INFO    ] Checking for system updates...
[2026-10-25 15:39:24,980.980 INFO    ] 200
[2026-10-25 15:39:24,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:25,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:39:25,040.040 INFO    ] No update needed
[2026-10-25 15:39:25,042.042 INFO    ] Checking for camera pi updates...
[2026-10-25 15:39:25,076.076 INFO    ] 200
[2026-10-25 15:39:25,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:25,123.123 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:39:25,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:39:25,278.278 INFO    ] No camera update needed
[2026-10-25 15:39:25,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:39:25,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:39:25,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:39:25,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:39:27,336.336 INFO    ] ================================================
[2026-10-25 15:39:27,353.353 INFO    ] Launching Daemon at Sun Oct 25 15:39:27 IST 2026
[2026-10-25 15:39:27,364.364 INFO    ] ================================================
[2026-10-25 15:39:27,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:39:27
[2026-10-25 15:39:28,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:39:28,858.858 INFO    ] Initializing speech engine...
[2026-10-25 15:39:28,869.869 INFO    ] 2026-10-25 15:39:28
[2026-10-25 15:39:29,125.125 INFO    ] 2026-10-25 15:39:29
[2026-10-25 15:39:29,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:39:29,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:39:29,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:39:29,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:39:29,634.634 INFO    ] time= 25/10/2026 15:39:29
[2026-10-25 15:39:29,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:39:29,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:39:29,772.772 INFO    ] No existing commands found in stream
[2026-10-25 15:39:34,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:39:34,787.787 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 15:39:37,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:39:37,561.561 INFO    ] Checking for system updates...
[2026-10-25 15:39:37,598.598 INFO    ] 200
[2026-10-25 15:39:37,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:37,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:37,661.661 INFO    ] No update needed
[2026-10-25 15:39:37,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 15:39:37,700.700 INFO    ] 200
[2026-10-25 15:39:37,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:37,761.761 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:39:37,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:37,889.889 INFO    ] No camera update needed
[2026-10-25 15:39:37,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:39:37,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:39:37,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:39:37,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:39:39,945.945 INFO    ] ================================================
[2026-10-25 15:39:39,961.961 INFO    ] Launching Daemon at Sun Oct 25 15:39:39 IST 2026
[2026-10-25 15:39:39,978.978 INFO    ] ================================================
[2026-10-25 15:39:40,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:39:40
[2026-10-25 15:39:41,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:39:41,397.397 INFO    ] Initializing speech engine...
[2026-10-25 15:39:41,407.407 INFO    ] 2026-10-25 15:39:41
[2026-10-25 15:39:41,655.655 INFO    ] 2026-10-25 15:39:41
[2026-10-25 15:39:41,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:39:44,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:39:44,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:39:44,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:39:44,223.223 INFO    ] time= 25/10/2026 15:39:44
[2026-10-25 15:39:44,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:39:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:39:44,292.292 INFO    ] No existing commands found in stream
[2026-10-25 15:39:49,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:39:49,306.306 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 15:39:52,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:39:52,008.008 INFO    ] Checking for system updates...
[2026-10-25 15:39:52,045.045 INFO    ] 200
[2026-10-25 15:39:52,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:52,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:52,104.104 INFO    ] No update needed
[2026-10-25 15:39:52,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 15:39:52,143.143 INFO    ] 200
[2026-10-25 15:39:52,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:39:52,190.190 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:39:52,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:39:52,239.239 INFO    ] No camera update needed
[2026-10-25 15:39:52,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:39:52,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:39:52,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:39:52,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:39:54,295.295 INFO    ] ================================================
[2026-10-25 15:39:54,311.311 INFO    ] Launching Daemon at Sun Oct 25 15:39:54 IST 2026
[2026-10-25 15:39:54,321.321 INFO    ] ================================================
[2026-10-25 15:39:54,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:39:54
[2026-10-25 15:39:55,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:39:55,904.904 INFO    ] Initializing speech engine...
[2026-10-25 15:39:55,913.913 INFO    ] 2026-10-25 15:39:55
[2026-10-25 15:39:56,181.181 INFO    ] 2026-10-25 15:39:56
[2026-10-25 15:39:56,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:39:56,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:39:56,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:39:56,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:39:56,609.609 INFO    ] time= 25/10/2026 15:39:56
[2026-10-25 15:39:56,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:39:56,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:39:56,764.764 INFO    ] No existing commands found in stream
[2026-10-25 15:40:01,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:40:01,794.794 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 15:40:07,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:40:07,542.542 INFO    ] Checking for system updates...
[2026-10-25 15:40:07,581.581 INFO    ] 200
[2026-10-25 15:40:07,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:07,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:07,641.641 INFO    ] No update needed
[2026-10-25 15:40:07,644.644 INFO    ] Checking for camera pi updates...
[2026-10-25 15:40:07,678.678 INFO    ] 200
[2026-10-25 15:40:07,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:07,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:40:07,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:07,779.779 INFO    ] No camera update needed
[2026-10-25 15:40:07,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:40:07,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:40:07,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:40:07,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:40:09,833.833 INFO    ] ================================================
[2026-10-25 15:40:09,848.848 INFO    ] Launching Daemon at Sun Oct 25 15:40:09 IST 2026
[2026-10-25 15:40:09,859.859 INFO    ] ================================================
[2026-10-25 15:40:10,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:40:10
[2026-10-25 15:40:11,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:40:11,306.306 INFO    ] Initializing speech engine...
[2026-10-25 15:40:11,314.314 INFO    ] 2026-10-25 15:40:11
[2026-10-25 15:40:11,583.583 INFO    ] 2026-10-25 15:40:11
[2026-10-25 15:40:11,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:40:14,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:40:14,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:40:14,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:40:14,805.805 INFO    ] time= 25/10/2026 15:40:14
[2026-10-25 15:40:14,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:40:14,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:40:14,862.862 INFO    ] No existing commands found in stream
[2026-10-25 15:40:19,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:40:19,874.874 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 15:40:21,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:40:21,644.644 INFO    ] Checking for system updates...
[2026-10-25 15:40:21,680.680 INFO    ] 200
[2026-10-25 15:40:21,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:21,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:21,743.743 INFO    ] No update needed
[2026-10-25 15:40:21,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 15:40:21,779.779 INFO    ] 200
[2026-10-25 15:40:21,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:21,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:40:21,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:21,884.884 INFO    ] No camera update needed
[2026-10-25 15:40:21,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:40:21,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:40:21,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:40:21,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:40:23,940.940 INFO    ] ================================================
[2026-10-25 15:40:23,955.955 INFO    ] Launching Daemon at Sun Oct 25 15:40:23 IST 2026
[2026-10-25 15:40:23,965.965 INFO    ] ================================================
[2026-10-25 15:40:24,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:40:24
[2026-10-25 15:40:25,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:40:25,411.411 INFO    ] Initializing speech engine...
[2026-10-25 15:40:25,416.416 INFO    ] 2026-10-25 15:40:25
[2026-10-25 15:40:25,678.678 INFO    ] 2026-10-25 15:40:25
[2026-10-25 15:40:25,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:40:25,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:40:25,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:40:26,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:40:26,142.142 INFO    ] time= 25/10/2026 15:40:26
[2026-10-25 15:40:26,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:40:26,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:40:26,286.286 INFO    ] No existing commands found in stream
[2026-10-25 15:40:31,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:40:31,308.308 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 15:40:33,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:40:33,794.794 INFO    ] Checking for system updates...
[2026-10-25 15:40:33,834.834 INFO    ] 200
[2026-10-25 15:40:33,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:33,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:33,893.893 INFO    ] No update needed
[2026-10-25 15:40:33,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 15:40:33,930.930 INFO    ] 200
[2026-10-25 15:40:33,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:33,977.977 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:40:34,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:40:34,013.013 INFO    ] No camera update needed
[2026-10-25 15:40:34,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:40:34,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:40:34,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:40:34,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:40:36,071.071 INFO    ] ================================================
[2026-10-25 15:40:36,086.086 INFO    ] Launching Daemon at Sun Oct 25 15:40:36 IST 2026
[2026-10-25 15:40:36,097.097 INFO    ] ================================================
[2026-10-25 15:40:36,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:40:36
[2026-10-25 15:40:37,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:40:37,524.524 INFO    ] Initializing speech engine...
[2026-10-25 15:40:37,543.543 INFO    ] 2026-10-25 15:40:37
[2026-10-25 15:40:37,790.790 INFO    ] 2026-10-25 15:40:37
[2026-10-25 15:40:37,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:40:37,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:40:38,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:40:38,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:40:38,162.162 INFO    ] time= 25/10/2026 15:40:38
[2026-10-25 15:40:38,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:40:38,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:40:38,239.239 INFO    ] No existing commands found in stream
[2026-10-25 15:40:43,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:40:43,272.272 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 15:40:46,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:40:46,068.068 INFO    ] Checking for system updates...
[2026-10-25 15:40:46,104.104 INFO    ] 200
[2026-10-25 15:40:46,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:46,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:40:46,172.172 INFO    ] No update needed
[2026-10-25 15:40:46,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 15:40:46,209.209 INFO    ] 200
[2026-10-25 15:40:46,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:40:46,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:40:46,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:40:46,304.304 INFO    ] No camera update needed
[2026-10-25 15:40:46,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:40:46,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:40:46,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:40:46,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:40:48,360.360 INFO    ] ================================================
[2026-10-25 15:40:48,375.375 INFO    ] Launching Daemon at Sun Oct 25 15:40:48 IST 2026
[2026-10-25 15:40:48,386.386 INFO    ] ================================================
[2026-10-25 15:40:48,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:40:48
[2026-10-25 15:40:49,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:40:49,835.835 INFO    ] Initializing speech engine...
[2026-10-25 15:40:49,846.846 INFO    ] 2026-10-25 15:40:49
[2026-10-25 15:40:50,103.103 INFO    ] 2026-10-25 15:40:50
[2026-10-25 15:40:50,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:40:50,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:40:50,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:40:50,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:40:50,554.554 INFO    ] time= 25/10/2026 15:40:50
[2026-10-25 15:40:50,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:40:50,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:40:50,713.713 INFO    ] No existing commands found in stream
[2026-10-25 15:40:55,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:40:55,728.728 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 15:41:00,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:41:00,115.115 INFO    ] Checking for system updates...
[2026-10-25 15:41:00,155.155 INFO    ] 200
[2026-10-25 15:41:00,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:00,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:41:00,213.213 INFO    ] No update needed
[2026-10-25 15:41:00,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 15:41:00,253.253 INFO    ] 200
[2026-10-25 15:41:00,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:00,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:41:00,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:41:00,348.348 INFO    ] No camera update needed
[2026-10-25 15:41:00,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:41:00,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:41:00,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:41:00,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:41:02,412.412 INFO    ] ================================================
[2026-10-25 15:41:02,429.429 INFO    ] Launching Daemon at Sun Oct 25 15:41:02 IST 2026
[2026-10-25 15:41:02,445.445 INFO    ] ================================================
[2026-10-25 15:41:03,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:41:03
[2026-10-25 15:41:03,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:41:04,037.037 INFO    ] Initializing speech engine...
[2026-10-25 15:41:04,044.044 INFO    ] 2026-10-25 15:41:04
[2026-10-25 15:41:04,309.309 INFO    ] 2026-10-25 15:41:04
[2026-10-25 15:41:04,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:41:04,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:41:04,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:41:04,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:41:04,717.717 INFO    ] time= 25/10/2026 15:41:04
[2026-10-25 15:41:04,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:41:04,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:41:04,807.807 INFO    ] No existing commands found in stream
[2026-10-25 15:41:09,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:41:09,846.846 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 15:41:16,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:41:16,779.779 INFO    ] Checking for system updates...
[2026-10-25 15:41:16,815.815 INFO    ] 200
[2026-10-25 15:41:16,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:16,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:41:16,873.873 INFO    ] No update needed
[2026-10-25 15:41:16,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 15:41:16,913.913 INFO    ] 200
[2026-10-25 15:41:16,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:16,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:41:17,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:41:17,006.006 INFO    ] No camera update needed
[2026-10-25 15:41:17,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:41:17,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:41:17,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:41:17,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:41:19,063.063 INFO    ] ================================================
[2026-10-25 15:41:19,078.078 INFO    ] Launching Daemon at Sun Oct 25 15:41:19 IST 2026
[2026-10-25 15:41:19,088.088 INFO    ] ================================================
[2026-10-25 15:41:19,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:41:19
[2026-10-25 15:41:20,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:41:20,680.680 INFO    ] Initializing speech engine...
[2026-10-25 15:41:20,695.695 INFO    ] 2026-10-25 15:41:20
[2026-10-25 15:41:21,001.001 INFO    ] 2026-10-25 15:41:20
[2026-10-25 15:41:21,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:41:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:41:21,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:41:21,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:41:21,503.503 INFO    ] time= 25/10/2026 15:41:21
[2026-10-25 15:41:21,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:41:21,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:41:21,648.648 INFO    ] No existing commands found in stream
[2026-10-25 15:41:26,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:41:26,673.673 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 15:41:29,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:41:29,521.521 INFO    ] Checking for system updates...
[2026-10-25 15:41:29,558.558 INFO    ] 200
[2026-10-25 15:41:29,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:29,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:29,617.617 INFO    ] No update needed
[2026-10-25 15:41:29,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 15:41:29,655.655 INFO    ] 200
[2026-10-25 15:41:29,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:29,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:41:29,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:29,858.858 INFO    ] No camera update needed
[2026-10-25 15:41:29,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:41:29,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:41:29,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:41:29,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:41:31,915.915 INFO    ] ================================================
[2026-10-25 15:41:31,930.930 INFO    ] Launching Daemon at Sun Oct 25 15:41:31 IST 2026
[2026-10-25 15:41:31,942.942 INFO    ] ================================================
[2026-10-25 15:41:32,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:41:32
[2026-10-25 15:41:33,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:41:33,448.448 INFO    ] Initializing speech engine...
[2026-10-25 15:41:33,457.457 INFO    ] 2026-10-25 15:41:33
[2026-10-25 15:41:33,717.717 INFO    ] 2026-10-25 15:41:33
[2026-10-25 15:41:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:41:33,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:41:34,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:41:34,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:41:34,157.157 INFO    ] time= 25/10/2026 15:41:34
[2026-10-25 15:41:34,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:41:34,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:41:34,319.319 INFO    ] No existing commands found in stream
[2026-10-25 15:41:39,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:41:39,333.333 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 15:41:42,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:41:42,440.440 INFO    ] Checking for system updates...
[2026-10-25 15:41:42,475.475 INFO    ] 200
[2026-10-25 15:41:42,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:42,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:42,539.539 INFO    ] No update needed
[2026-10-25 15:41:42,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 15:41:42,576.576 INFO    ] 200
[2026-10-25 15:41:42,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:42,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:41:42,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:42,669.669 INFO    ] No camera update needed
[2026-10-25 15:41:42,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:41:42,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:41:42,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:41:42,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:41:44,725.725 INFO    ] ================================================
[2026-10-25 15:41:44,740.740 INFO    ] Launching Daemon at Sun Oct 25 15:41:44 IST 2026
[2026-10-25 15:41:44,752.752 INFO    ] ================================================
[2026-10-25 15:41:45,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:41:45
[2026-10-25 15:41:45,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:41:46,200.200 INFO    ] Initializing speech engine...
[2026-10-25 15:41:46,208.208 INFO    ] 2026-10-25 15:41:46
[2026-10-25 15:41:46,468.468 INFO    ] 2026-10-25 15:41:46
[2026-10-25 15:41:46,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:41:47,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:41:47,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:41:47,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:41:47,683.683 INFO    ] time= 25/10/2026 15:41:47
[2026-10-25 15:41:47,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:41:47,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:41:47,807.807 INFO    ] No existing commands found in stream
[2026-10-25 15:41:52,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:41:52,823.823 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 15:41:54,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:41:54,110.110 INFO    ] Checking for system updates...
[2026-10-25 15:41:54,149.149 INFO    ] 200
[2026-10-25 15:41:54,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:54,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:54,208.208 INFO    ] No update needed
[2026-10-25 15:41:54,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 15:41:54,245.245 INFO    ] 200
[2026-10-25 15:41:54,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:41:54,293.293 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:41:54,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:41:54,348.348 INFO    ] No camera update needed
[2026-10-25 15:41:54,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:41:54,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:41:54,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:41:54,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:41:56,404.404 INFO    ] ================================================
[2026-10-25 15:41:56,419.419 INFO    ] Launching Daemon at Sun Oct 25 15:41:56 IST 2026
[2026-10-25 15:41:56,430.430 INFO    ] ================================================
[2026-10-25 15:41:57,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:41:57
[2026-10-25 15:41:57,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:41:57,999.999 INFO    ] Initializing speech engine...
[2026-10-25 15:41:58,012.012 INFO    ] 2026-10-25 15:41:58
[2026-10-25 15:41:58,303.303 INFO    ] 2026-10-25 15:41:58
[2026-10-25 15:41:58,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:41:58,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:41:58,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:41:58,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:41:58,825.825 INFO    ] time= 25/10/2026 15:41:58
[2026-10-25 15:41:58,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:41:58,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:41:58,965.965 INFO    ] No existing commands found in stream
[2026-10-25 15:42:03,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:42:03,996.996 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 15:42:06,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:42:06,389.389 INFO    ] Checking for system updates...
[2026-10-25 15:42:06,427.427 INFO    ] 200
[2026-10-25 15:42:06,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:06,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:42:06,486.486 INFO    ] No update needed
[2026-10-25 15:42:06,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 15:42:06,527.527 INFO    ] 200
[2026-10-25 15:42:06,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:06,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:42:06,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:42:06,634.634 INFO    ] No camera update needed
[2026-10-25 15:42:06,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:42:06,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:42:06,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:42:06,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:42:08,692.692 INFO    ] ================================================
[2026-10-25 15:42:08,706.706 INFO    ] Launching Daemon at Sun Oct 25 15:42:08 IST 2026
[2026-10-25 15:42:08,717.717 INFO    ] ================================================
[2026-10-25 15:42:09,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:42:09
[2026-10-25 15:42:09,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:42:10,127.127 INFO    ] Initializing speech engine...
[2026-10-25 15:42:10,133.133 INFO    ] 2026-10-25 15:42:10
[2026-10-25 15:42:10,426.426 INFO    ] 2026-10-25 15:42:10
[2026-10-25 15:42:10,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:42:10,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:42:10,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:42:10,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:42:10,814.814 INFO    ] time= 25/10/2026 15:42:10
[2026-10-25 15:42:10,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:42:10,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:42:10,921.921 INFO    ] No existing commands found in stream
[2026-10-25 15:42:15,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:42:15,936.936 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 15:42:18,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:42:18,550.550 INFO    ] Checking for system updates...
[2026-10-25 15:42:18,589.589 INFO    ] 200
[2026-10-25 15:42:18,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:18,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:18,647.647 INFO    ] No update needed
[2026-10-25 15:42:18,650.650 INFO    ] Checking for camera pi updates...
[2026-10-25 15:42:18,684.684 INFO    ] 200
[2026-10-25 15:42:18,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:18,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:42:18,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:18,780.780 INFO    ] No camera update needed
[2026-10-25 15:42:18,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:42:18,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:42:18,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:42:18,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:42:20,835.835 INFO    ] ================================================
[2026-10-25 15:42:20,850.850 INFO    ] Launching Daemon at Sun Oct 25 15:42:20 IST 2026
[2026-10-25 15:42:20,860.860 INFO    ] ================================================
[2026-10-25 15:42:21,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:42:21
[2026-10-25 15:42:22,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:42:22,270.270 INFO    ] Initializing speech engine...
[2026-10-25 15:42:22,293.293 INFO    ] 2026-10-25 15:42:22
[2026-10-25 15:42:22,548.548 INFO    ] 2026-10-25 15:42:22
[2026-10-25 15:42:22,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:42:22,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:42:22,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:42:22,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:42:22,924.924 INFO    ] time= 25/10/2026 15:42:22
[2026-10-25 15:42:22,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:42:22,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:42:23,105.105 INFO    ] No existing commands found in stream
[2026-10-25 15:42:28,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:42:28,133.133 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 15:42:30,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:42:30,271.271 INFO    ] Checking for system updates...
[2026-10-25 15:42:30,310.310 INFO    ] 200
[2026-10-25 15:42:30,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:30,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:30,369.369 INFO    ] No update needed
[2026-10-25 15:42:30,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 15:42:30,411.411 INFO    ] 200
[2026-10-25 15:42:30,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:30,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:42:30,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:30,502.502 INFO    ] No camera update needed
[2026-10-25 15:42:30,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:42:30,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:42:30,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:42:30,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:42:32,559.559 INFO    ] ================================================
[2026-10-25 15:42:32,574.574 INFO    ] Launching Daemon at Sun Oct 25 15:42:32 IST 2026
[2026-10-25 15:42:32,586.586 INFO    ] ================================================
[2026-10-25 15:42:33,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:42:33
[2026-10-25 15:42:33,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:42:34,073.073 INFO    ] Initializing speech engine...
[2026-10-25 15:42:34,086.086 INFO    ] 2026-10-25 15:42:34
[2026-10-25 15:42:34,374.374 INFO    ] 2026-10-25 15:42:34
[2026-10-25 15:42:34,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:42:34,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:42:34,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:42:34,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:42:34,736.736 INFO    ] time= 25/10/2026 15:42:34
[2026-10-25 15:42:34,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:42:34,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:42:34,822.822 INFO    ] No existing commands found in stream
[2026-10-25 15:42:39,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:42:39,843.843 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 15:42:43,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:42:43,049.049 INFO    ] Checking for system updates...
[2026-10-25 15:42:43,085.085 INFO    ] 200
[2026-10-25 15:42:43,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:43,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:43,144.144 INFO    ] No update needed
[2026-10-25 15:42:43,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 15:42:43,180.180 INFO    ] 200
[2026-10-25 15:42:43,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:43,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:42:43,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:43,271.271 INFO    ] No camera update needed
[2026-10-25 15:42:43,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:42:43,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:42:43,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:42:43,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:42:45,325.325 INFO    ] ================================================
[2026-10-25 15:42:45,340.340 INFO    ] Launching Daemon at Sun Oct 25 15:42:45 IST 2026
[2026-10-25 15:42:45,351.351 INFO    ] ================================================
[2026-10-25 15:42:45,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:42:45
[2026-10-25 15:42:46,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:42:46,765.765 INFO    ] Initializing speech engine...
[2026-10-25 15:42:46,780.780 INFO    ] 2026-10-25 15:42:46
[2026-10-25 15:42:47,060.060 INFO    ] 2026-10-25 15:42:47
[2026-10-25 15:42:47,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:42:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:42:48,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:42:49,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:42:49,245.245 INFO    ] time= 25/10/2026 15:42:49
[2026-10-25 15:42:49,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:42:49,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:42:49,308.308 INFO    ] No existing commands found in stream
[2026-10-25 15:42:54,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:42:54,321.321 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 15:42:56,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:42:56,487.487 INFO    ] Checking for system updates...
[2026-10-25 15:42:56,523.523 INFO    ] 200
[2026-10-25 15:42:56,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:56,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:56,580.580 INFO    ] No update needed
[2026-10-25 15:42:56,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 15:42:56,617.617 INFO    ] 200
[2026-10-25 15:42:56,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:42:56,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:42:56,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:42:56,711.711 INFO    ] No camera update needed
[2026-10-25 15:42:56,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:42:56,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:42:56,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:42:56,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:42:58,765.765 INFO    ] ================================================
[2026-10-25 15:42:58,781.781 INFO    ] Launching Daemon at Sun Oct 25 15:42:58 IST 2026
[2026-10-25 15:42:58,792.792 INFO    ] ================================================
[2026-10-25 15:42:59,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:42:59
[2026-10-25 15:43:00,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:43:00,261.261 INFO    ] Initializing speech engine...
[2026-10-25 15:43:00,276.276 INFO    ] 2026-10-25 15:43:00
[2026-10-25 15:43:00,556.556 INFO    ] 2026-10-25 15:43:00
[2026-10-25 15:43:00,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:43:00,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:43:00,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:43:00,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:43:00,929.929 INFO    ] time= 25/10/2026 15:43:00
[2026-10-25 15:43:00,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:43:00,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:43:01,051.051 INFO    ] No existing commands found in stream
[2026-10-25 15:43:06,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:43:06,064.064 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 15:43:08,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:43:08,460.460 INFO    ] Checking for system updates...
[2026-10-25 15:43:08,496.496 INFO    ] 200
[2026-10-25 15:43:08,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:08,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:43:08,555.555 INFO    ] No update needed
[2026-10-25 15:43:08,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 15:43:08,591.591 INFO    ] 200
[2026-10-25 15:43:08,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:08,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:43:08,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:43:08,686.686 INFO    ] No camera update needed
[2026-10-25 15:43:08,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:43:08,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:43:08,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:43:08,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:43:10,742.742 INFO    ] ================================================
[2026-10-25 15:43:10,757.757 INFO    ] Launching Daemon at Sun Oct 25 15:43:10 IST 2026
[2026-10-25 15:43:10,767.767 INFO    ] ================================================
[2026-10-25 15:43:11,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:43:11
[2026-10-25 15:43:12,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:43:12,387.387 INFO    ] Initializing speech engine...
[2026-10-25 15:43:12,399.399 INFO    ] 2026-10-25 15:43:12
[2026-10-25 15:43:12,708.708 INFO    ] 2026-10-25 15:43:12
[2026-10-25 15:43:12,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:43:13,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:43:13,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:43:13,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:43:13,211.211 INFO    ] time= 25/10/2026 15:43:13
[2026-10-25 15:43:13,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:43:13,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:43:13,361.361 INFO    ] No existing commands found in stream
[2026-10-25 15:43:18,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:43:18,379.379 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 15:43:20,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:43:20,323.323 INFO    ] Checking for system updates...
[2026-10-25 15:43:20,361.361 INFO    ] 200
[2026-10-25 15:43:20,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:20,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:20,421.421 INFO    ] No update needed
[2026-10-25 15:43:20,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 15:43:20,459.459 INFO    ] 200
[2026-10-25 15:43:20,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:20,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:43:20,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:20,559.559 INFO    ] No camera update needed
[2026-10-25 15:43:20,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:43:20,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:43:20,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:43:20,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:43:22,614.614 INFO    ] ================================================
[2026-10-25 15:43:22,629.629 INFO    ] Launching Daemon at Sun Oct 25 15:43:22 IST 2026
[2026-10-25 15:43:22,640.640 INFO    ] ================================================
[2026-10-25 15:43:23,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:43:23
[2026-10-25 15:43:23,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:43:24,057.057 INFO    ] Initializing speech engine...
[2026-10-25 15:43:24,075.075 INFO    ] 2026-10-25 15:43:24
[2026-10-25 15:43:24,327.327 INFO    ] 2026-10-25 15:43:24
[2026-10-25 15:43:24,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:43:24,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:43:24,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:43:24,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:43:24,699.699 INFO    ] time= 25/10/2026 15:43:24
[2026-10-25 15:43:24,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:43:24,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:43:24,863.863 INFO    ] No existing commands found in stream
[2026-10-25 15:43:29,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:43:29,896.896 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 15:43:30,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:43:30,720.720 INFO    ] Checking for system updates...
[2026-10-25 15:43:30,755.755 INFO    ] 200
[2026-10-25 15:43:30,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:30,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:43:30,814.814 INFO    ] No update needed
[2026-10-25 15:43:30,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 15:43:30,859.859 INFO    ] 200
[2026-10-25 15:43:30,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:30,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:43:30,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:43:30,961.961 INFO    ] No camera update needed
[2026-10-25 15:43:30,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:43:30,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:43:30,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:43:30,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:43:33,018.018 INFO    ] ================================================
[2026-10-25 15:43:33,035.035 INFO    ] Launching Daemon at Sun Oct 25 15:43:33 IST 2026
[2026-10-25 15:43:33,046.046 INFO    ] ================================================
[2026-10-25 15:43:33,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:43:33
[2026-10-25 15:43:34,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:43:34,528.528 INFO    ] Initializing speech engine...
[2026-10-25 15:43:34,537.537 INFO    ] 2026-10-25 15:43:34
[2026-10-25 15:43:34,833.833 INFO    ] 2026-10-25 15:43:34
[2026-10-25 15:43:34,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:43:35,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:43:35,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:43:35,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:43:35,772.772 INFO    ] time= 25/10/2026 15:43:35
[2026-10-25 15:43:35,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:43:35,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:43:35,939.939 INFO    ] No existing commands found in stream
[2026-10-25 15:43:40,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:43:40,982.982 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 15:43:44,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:43:44,036.036 INFO    ] Checking for system updates...
[2026-10-25 15:43:44,072.072 INFO    ] 200
[2026-10-25 15:43:44,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:44,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:44,132.132 INFO    ] No update needed
[2026-10-25 15:43:44,134.134 INFO    ] Checking for camera pi updates...
[2026-10-25 15:43:44,175.175 INFO    ] 200
[2026-10-25 15:43:44,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:44,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:43:44,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:44,266.266 INFO    ] No camera update needed
[2026-10-25 15:43:44,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:43:44,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:43:44,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:43:44,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:43:46,321.321 INFO    ] ================================================
[2026-10-25 15:43:46,336.336 INFO    ] Launching Daemon at Sun Oct 25 15:43:46 IST 2026
[2026-10-25 15:43:46,347.347 INFO    ] ================================================
[2026-10-25 15:43:46,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:43:46
[2026-10-25 15:43:47,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:43:47,742.742 INFO    ] Initializing speech engine...
[2026-10-25 15:43:47,756.756 INFO    ] 2026-10-25 15:43:47
[2026-10-25 15:43:48,017.017 INFO    ] 2026-10-25 15:43:48
[2026-10-25 15:43:48,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:43:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:43:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:43:50,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:43:50,930.930 INFO    ] time= 25/10/2026 15:43:50
[2026-10-25 15:43:50,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:43:50,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:43:50,987.987 INFO    ] No existing commands found in stream
[2026-10-25 15:43:55,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:43:55,999.999 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 15:43:59,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:43:59,693.693 INFO    ] Checking for system updates...
[2026-10-25 15:43:59,729.729 INFO    ] 200
[2026-10-25 15:43:59,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:59,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:59,792.792 INFO    ] No update needed
[2026-10-25 15:43:59,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 15:43:59,830.830 INFO    ] 200
[2026-10-25 15:43:59,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:43:59,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:43:59,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:43:59,935.935 INFO    ] No camera update needed
[2026-10-25 15:43:59,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:43:59,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:43:59,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:43:59,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:44:02,994.994 INFO    ] ================================================
[2026-10-25 15:44:02,012.012 INFO    ] Launching Daemon at Sun Oct 25 15:44:02 IST 2026
[2026-10-25 15:44:02,026.026 INFO    ] ================================================
[2026-10-25 15:44:02,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:44:02
[2026-10-25 15:44:03,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:44:03,632.632 INFO    ] Initializing speech engine...
[2026-10-25 15:44:03,640.640 INFO    ] 2026-10-25 15:44:03
[2026-10-25 15:44:03,887.887 INFO    ] 2026-10-25 15:44:03
[2026-10-25 15:44:03,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:44:04,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:44:04,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:44:04,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:44:04,374.374 INFO    ] time= 25/10/2026 15:44:04
[2026-10-25 15:44:04,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:44:04,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:44:04,579.579 INFO    ] No existing commands found in stream
[2026-10-25 15:44:09,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:44:09,610.610 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 15:44:11,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:44:11,998.998 INFO    ] Checking for system updates...
[2026-10-25 15:44:12,035.035 INFO    ] 200
[2026-10-25 15:44:12,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:12,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:12,101.101 INFO    ] No update needed
[2026-10-25 15:44:12,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 15:44:12,139.139 INFO    ] 200
[2026-10-25 15:44:12,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:12,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:44:12,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:12,246.246 INFO    ] No camera update needed
[2026-10-25 15:44:12,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:44:12,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:44:12,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:44:12,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:44:14,304.304 INFO    ] ================================================
[2026-10-25 15:44:14,319.319 INFO    ] Launching Daemon at Sun Oct 25 15:44:14 IST 2026
[2026-10-25 15:44:14,330.330 INFO    ] ================================================
[2026-10-25 15:44:14,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:44:14
[2026-10-25 15:44:15,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:44:15,928.928 INFO    ] Initializing speech engine...
[2026-10-25 15:44:15,942.942 INFO    ] 2026-10-25 15:44:15
[2026-10-25 15:44:16,208.208 INFO    ] 2026-10-25 15:44:16
[2026-10-25 15:44:16,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:44:16,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:44:16,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:44:16,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:44:16,742.742 INFO    ] time= 25/10/2026 15:44:16
[2026-10-25 15:44:16,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:44:16,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:44:16,898.898 INFO    ] No existing commands found in stream
[2026-10-25 15:44:21,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:44:21,926.926 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 15:44:28,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:44:28,672.672 INFO    ] Checking for system updates...
[2026-10-25 15:44:28,709.709 INFO    ] 200
[2026-10-25 15:44:28,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:28,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:28,770.770 INFO    ] No update needed
[2026-10-25 15:44:28,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 15:44:28,808.808 INFO    ] 200
[2026-10-25 15:44:28,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:28,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:44:28,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:28,903.903 INFO    ] No camera update needed
[2026-10-25 15:44:28,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:44:28,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:44:28,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:44:28,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:44:30,960.960 INFO    ] ================================================
[2026-10-25 15:44:30,975.975 INFO    ] Launching Daemon at Sun Oct 25 15:44:30 IST 2026
[2026-10-25 15:44:30,986.986 INFO    ] ================================================
[2026-10-25 15:44:31,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:44:31
[2026-10-25 15:44:32,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:44:32,470.470 INFO    ] Initializing speech engine...
[2026-10-25 15:44:32,491.491 INFO    ] 2026-10-25 15:44:32
[2026-10-25 15:44:32,782.782 INFO    ] 2026-10-25 15:44:32
[2026-10-25 15:44:32,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:44:32,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:44:33,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:44:33,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:44:33,166.166 INFO    ] time= 25/10/2026 15:44:33
[2026-10-25 15:44:33,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:44:33,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:44:33,324.324 INFO    ] No existing commands found in stream
[2026-10-25 15:44:38,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:44:38,353.353 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 15:44:39,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:44:39,951.951 INFO    ] Checking for system updates...
[2026-10-25 15:44:39,989.989 INFO    ] 200
[2026-10-25 15:44:39,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:40,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:40,049.049 INFO    ] No update needed
[2026-10-25 15:44:40,052.052 INFO    ] Checking for camera pi updates...
[2026-10-25 15:44:40,087.087 INFO    ] 200
[2026-10-25 15:44:40,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:40,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:44:40,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:44:40,188.188 INFO    ] No camera update needed
[2026-10-25 15:44:40,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:44:40,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:44:40,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:44:40,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:44:42,245.245 INFO    ] ================================================
[2026-10-25 15:44:42,261.261 INFO    ] Launching Daemon at Sun Oct 25 15:44:42 IST 2026
[2026-10-25 15:44:42,271.271 INFO    ] ================================================
[2026-10-25 15:44:42,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:44:42
[2026-10-25 15:44:43,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:44:43,688.688 INFO    ] Initializing speech engine...
[2026-10-25 15:44:43,704.704 INFO    ] 2026-10-25 15:44:43
[2026-10-25 15:44:43,989.989 INFO    ] 2026-10-25 15:44:43
[2026-10-25 15:44:44,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:44:44,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:44:44,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:44:44,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:44:44,370.370 INFO    ] time= 25/10/2026 15:44:44
[2026-10-25 15:44:44,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:44:44,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:44:44,495.495 INFO    ] No existing commands found in stream
[2026-10-25 15:44:49,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:44:49,511.511 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 15:44:52,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:44:52,586.586 INFO    ] Checking for system updates...
[2026-10-25 15:44:52,623.623 INFO    ] 200
[2026-10-25 15:44:52,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:52,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:44:52,683.683 INFO    ] No update needed
[2026-10-25 15:44:52,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 15:44:52,720.720 INFO    ] 200
[2026-10-25 15:44:52,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:44:52,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:44:52,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:44:52,813.813 INFO    ] No camera update needed
[2026-10-25 15:44:52,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:44:52,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:44:52,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:44:52,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:44:54,871.871 INFO    ] ================================================
[2026-10-25 15:44:54,887.887 INFO    ] Launching Daemon at Sun Oct 25 15:44:54 IST 2026
[2026-10-25 15:44:54,898.898 INFO    ] ================================================
[2026-10-25 15:44:55,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:44:55
[2026-10-25 15:44:56,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:44:56,526.526 INFO    ] Initializing speech engine...
[2026-10-25 15:44:56,533.533 INFO    ] 2026-10-25 15:44:56
[2026-10-25 15:44:56,818.818 INFO    ] 2026-10-25 15:44:56
[2026-10-25 15:44:56,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:44:57,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:44:57,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:44:57,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:44:57,351.351 INFO    ] time= 25/10/2026 15:44:57
[2026-10-25 15:44:57,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:44:57,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:44:57,502.502 INFO    ] No existing commands found in stream
[2026-10-25 15:45:02,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:45:02,523.523 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 15:45:05,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:45:05,627.627 INFO    ] Checking for system updates...
[2026-10-25 15:45:05,664.664 INFO    ] 200
[2026-10-25 15:45:05,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:05,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:05,723.723 INFO    ] No update needed
[2026-10-25 15:45:05,726.726 INFO    ] Checking for camera pi updates...
[2026-10-25 15:45:05,760.760 INFO    ] 200
[2026-10-25 15:45:05,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:05,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:45:05,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:05,840.840 INFO    ] No camera update needed
[2026-10-25 15:45:05,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:45:05,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:45:05,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:45:05,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:45:07,901.901 INFO    ] ================================================
[2026-10-25 15:45:07,917.917 INFO    ] Launching Daemon at Sun Oct 25 15:45:07 IST 2026
[2026-10-25 15:45:07,928.928 INFO    ] ================================================
[2026-10-25 15:45:08,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:45:08
[2026-10-25 15:45:09,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:45:09,501.501 INFO    ] Initializing speech engine...
[2026-10-25 15:45:09,518.518 INFO    ] 2026-10-25 15:45:09
[2026-10-25 15:45:09,791.791 INFO    ] 2026-10-25 15:45:09
[2026-10-25 15:45:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:45:10,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:45:10,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:45:10,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:45:10,268.268 INFO    ] time= 25/10/2026 15:45:10
[2026-10-25 15:45:10,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:45:10,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:45:10,474.474 INFO    ] No existing commands found in stream
[2026-10-25 15:45:15,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:45:15,503.503 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 15:45:17,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:45:17,692.692 INFO    ] Checking for system updates...
[2026-10-25 15:45:17,729.729 INFO    ] 200
[2026-10-25 15:45:17,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:17,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:17,788.788 INFO    ] No update needed
[2026-10-25 15:45:17,790.790 INFO    ] Checking for camera pi updates...
[2026-10-25 15:45:17,826.826 INFO    ] 200
[2026-10-25 15:45:17,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:17,870.870 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:45:17,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:17,928.928 INFO    ] No camera update needed
[2026-10-25 15:45:17,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:45:17,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:45:17,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:45:17,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:45:19,986.986 INFO    ] ================================================
[2026-10-25 15:45:20,001.001 INFO    ] Launching Daemon at Sun Oct 25 15:45:19 IST 2026
[2026-10-25 15:45:20,012.012 INFO    ] ================================================
[2026-10-25 15:45:20,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:45:20
[2026-10-25 15:45:21,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:45:21,426.426 INFO    ] Initializing speech engine...
[2026-10-25 15:45:21,436.436 INFO    ] 2026-10-25 15:45:21
[2026-10-25 15:45:21,680.680 INFO    ] 2026-10-25 15:45:21
[2026-10-25 15:45:21,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:45:23,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:45:23,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:45:23,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:45:23,784.784 INFO    ] time= 25/10/2026 15:45:23
[2026-10-25 15:45:23,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:45:23,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:45:23,857.857 INFO    ] No existing commands found in stream
[2026-10-25 15:45:28,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:45:28,873.873 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 15:45:31,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:45:31,614.614 INFO    ] Checking for system updates...
[2026-10-25 15:45:31,654.654 INFO    ] 200
[2026-10-25 15:45:31,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:31,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:31,719.719 INFO    ] No update needed
[2026-10-25 15:45:31,723.723 INFO    ] Checking for camera pi updates...
[2026-10-25 15:45:31,760.760 INFO    ] 200
[2026-10-25 15:45:31,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:31,810.810 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:45:31,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:45:31,872.872 INFO    ] No camera update needed
[2026-10-25 15:45:31,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:45:31,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:45:31,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:45:31,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:45:33,933.933 INFO    ] ================================================
[2026-10-25 15:45:33,949.949 INFO    ] Launching Daemon at Sun Oct 25 15:45:33 IST 2026
[2026-10-25 15:45:33,960.960 INFO    ] ================================================
[2026-10-25 15:45:34,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:45:34
[2026-10-25 15:45:35,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:45:35,517.517 INFO    ] Initializing speech engine...
[2026-10-25 15:45:35,531.531 INFO    ] 2026-10-25 15:45:35
[2026-10-25 15:45:35,837.837 INFO    ] 2026-10-25 15:45:35
[2026-10-25 15:45:35,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:45:36,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:45:36,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:45:36,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:45:36,345.345 INFO    ] time= 25/10/2026 15:45:36
[2026-10-25 15:45:36,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:45:36,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:45:36,499.499 INFO    ] No existing commands found in stream
[2026-10-25 15:45:41,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:45:41,514.514 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 15:45:44,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:45:44,144.144 INFO    ] Checking for system updates...
[2026-10-25 15:45:44,182.182 INFO    ] 200
[2026-10-25 15:45:44,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:44,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:45:44,241.241 INFO    ] No update needed
[2026-10-25 15:45:44,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 15:45:44,279.279 INFO    ] 200
[2026-10-25 15:45:44,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:44,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:45:44,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:45:44,480.480 INFO    ] No camera update needed
[2026-10-25 15:45:44,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:45:44,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:45:44,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:45:44,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:45:46,538.538 INFO    ] ================================================
[2026-10-25 15:45:46,553.553 INFO    ] Launching Daemon at Sun Oct 25 15:45:46 IST 2026
[2026-10-25 15:45:46,564.564 INFO    ] ================================================
[2026-10-25 15:45:47,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:45:47
[2026-10-25 15:45:47,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:45:47,963.963 INFO    ] Initializing speech engine...
[2026-10-25 15:45:47,972.972 INFO    ] 2026-10-25 15:45:47
[2026-10-25 15:45:48,263.263 INFO    ] 2026-10-25 15:45:48
[2026-10-25 15:45:48,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:45:48,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:45:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:45:48,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:45:48,637.637 INFO    ] time= 25/10/2026 15:45:48
[2026-10-25 15:45:48,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:45:48,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:45:48,764.764 INFO    ] No existing commands found in stream
[2026-10-25 15:45:53,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:45:53,777.777 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 15:45:54,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:45:54,801.801 INFO    ] Checking for system updates...
[2026-10-25 15:45:54,836.836 INFO    ] 200
[2026-10-25 15:45:54,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:54,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:45:54,896.896 INFO    ] No update needed
[2026-10-25 15:45:54,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 15:45:54,932.932 INFO    ] 200
[2026-10-25 15:45:54,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:45:54,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:45:55,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:45:55,033.033 INFO    ] No camera update needed
[2026-10-25 15:45:55,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:45:55,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:45:55,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:45:55,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:45:57,087.087 INFO    ] ================================================
[2026-10-25 15:45:57,104.104 INFO    ] Launching Daemon at Sun Oct 25 15:45:57 IST 2026
[2026-10-25 15:45:57,115.115 INFO    ] ================================================
[2026-10-25 15:45:57,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:45:57
[2026-10-25 15:45:58,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:45:58,560.560 INFO    ] Initializing speech engine...
[2026-10-25 15:45:58,566.566 INFO    ] 2026-10-25 15:45:58
[2026-10-25 15:45:58,816.816 INFO    ] 2026-10-25 15:45:58
[2026-10-25 15:45:58,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:45:59,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:45:59,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:45:59,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:45:59,258.258 INFO    ] time= 25/10/2026 15:45:59
[2026-10-25 15:45:59,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:45:59,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:45:59,425.425 INFO    ] No existing commands found in stream
[2026-10-25 15:46:04,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:46:04,466.466 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 15:46:06,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:46:06,238.238 INFO    ] Checking for system updates...
[2026-10-25 15:46:06,275.275 INFO    ] 200
[2026-10-25 15:46:06,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:06,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:46:06,334.334 INFO    ] No update needed
[2026-10-25 15:46:06,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 15:46:06,370.370 INFO    ] 200
[2026-10-25 15:46:06,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:06,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:46:06,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:46:06,474.474 INFO    ] No camera update needed
[2026-10-25 15:46:06,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:46:06,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:46:06,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:46:06,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:46:08,531.531 INFO    ] ================================================
[2026-10-25 15:46:08,547.547 INFO    ] Launching Daemon at Sun Oct 25 15:46:08 IST 2026
[2026-10-25 15:46:08,559.559 INFO    ] ================================================
[2026-10-25 15:46:09,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:46:09
[2026-10-25 15:46:09,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:46:10,010.010 INFO    ] Initializing speech engine...
[2026-10-25 15:46:10,015.015 INFO    ] 2026-10-25 15:46:10
[2026-10-25 15:46:10,275.275 INFO    ] 2026-10-25 15:46:10
[2026-10-25 15:46:10,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:46:10,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:46:10,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:46:10,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:46:10,732.732 INFO    ] time= 25/10/2026 15:46:10
[2026-10-25 15:46:10,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:46:10,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:46:10,880.880 INFO    ] No existing commands found in stream
[2026-10-25 15:46:15,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:46:15,895.895 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 15:46:19,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:46:19,824.824 INFO    ] Checking for system updates...
[2026-10-25 15:46:19,860.860 INFO    ] 200
[2026-10-25 15:46:19,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:19,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:19,919.919 INFO    ] No update needed
[2026-10-25 15:46:19,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 15:46:19,957.957 INFO    ] 200
[2026-10-25 15:46:19,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:20,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:46:20,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:20,049.049 INFO    ] No camera update needed
[2026-10-25 15:46:20,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:46:20,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:46:20,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:46:20,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:46:22,104.104 INFO    ] ================================================
[2026-10-25 15:46:22,119.119 INFO    ] Launching Daemon at Sun Oct 25 15:46:22 IST 2026
[2026-10-25 15:46:22,129.129 INFO    ] ================================================
[2026-10-25 15:46:22,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:46:22
[2026-10-25 15:46:23,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:46:23,726.726 INFO    ] Initializing speech engine...
[2026-10-25 15:46:23,739.739 INFO    ] 2026-10-25 15:46:23
[2026-10-25 15:46:24,021.021 INFO    ] 2026-10-25 15:46:24
[2026-10-25 15:46:24,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:46:25,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:46:25,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:46:25,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:46:25,528.528 INFO    ] time= 25/10/2026 15:46:25
[2026-10-25 15:46:25,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:46:25,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:46:25,685.685 INFO    ] No existing commands found in stream
[2026-10-25 15:46:30,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:46:30,718.718 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 15:46:34,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:46:34,671.671 INFO    ] Checking for system updates...
[2026-10-25 15:46:34,708.708 INFO    ] 200
[2026-10-25 15:46:34,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:34,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:34,768.768 INFO    ] No update needed
[2026-10-25 15:46:34,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 15:46:34,805.805 INFO    ] 200
[2026-10-25 15:46:34,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:34,850.850 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:46:34,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:34,899.899 INFO    ] No camera update needed
[2026-10-25 15:46:34,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:46:34,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:46:34,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:46:34,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:46:36,953.953 INFO    ] ================================================
[2026-10-25 15:46:36,970.970 INFO    ] Launching Daemon at Sun Oct 25 15:46:36 IST 2026
[2026-10-25 15:46:36,983.983 INFO    ] ================================================
[2026-10-25 15:46:37,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:46:37
[2026-10-25 15:46:38,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:46:38,435.435 INFO    ] Initializing speech engine...
[2026-10-25 15:46:38,442.442 INFO    ] 2026-10-25 15:46:38
[2026-10-25 15:46:38,703.703 INFO    ] 2026-10-25 15:46:38
[2026-10-25 15:46:38,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:46:38,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:46:38,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:46:39,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:46:39,156.156 INFO    ] time= 25/10/2026 15:46:39
[2026-10-25 15:46:39,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:46:39,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:46:39,310.310 INFO    ] No existing commands found in stream
[2026-10-25 15:46:44,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:46:44,325.325 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 15:46:46,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:46:46,062.062 INFO    ] Checking for system updates...
[2026-10-25 15:46:46,099.099 INFO    ] 200
[2026-10-25 15:46:46,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:46,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:46,157.157 INFO    ] No update needed
[2026-10-25 15:46:46,159.159 INFO    ] Checking for camera pi updates...
[2026-10-25 15:46:46,193.193 INFO    ] 200
[2026-10-25 15:46:46,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:46,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:46:46,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:46:46,289.289 INFO    ] No camera update needed
[2026-10-25 15:46:46,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:46:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:46:46,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:46:46,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:46:48,347.347 INFO    ] ================================================
[2026-10-25 15:46:48,362.362 INFO    ] Launching Daemon at Sun Oct 25 15:46:48 IST 2026
[2026-10-25 15:46:48,373.373 INFO    ] ================================================
[2026-10-25 15:46:49,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:46:49
[2026-10-25 15:46:49,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:46:49,978.978 INFO    ] Initializing speech engine...
[2026-10-25 15:46:49,988.988 INFO    ] 2026-10-25 15:46:49
[2026-10-25 15:46:50,235.235 INFO    ] 2026-10-25 15:46:50
[2026-10-25 15:46:50,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:46:50,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:46:50,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:46:50,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:46:50,669.669 INFO    ] time= 25/10/2026 15:46:50
[2026-10-25 15:46:50,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:46:50,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:46:50,846.846 INFO    ] No existing commands found in stream
[2026-10-25 15:46:55,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:46:55,861.861 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 15:46:57,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:46:57,082.082 INFO    ] Checking for system updates...
[2026-10-25 15:46:57,122.122 INFO    ] 200
[2026-10-25 15:46:57,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:57,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:46:57,180.180 INFO    ] No update needed
[2026-10-25 15:46:57,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 15:46:57,218.218 INFO    ] 200
[2026-10-25 15:46:57,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:46:57,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:46:57,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:46:57,315.315 INFO    ] No camera update needed
[2026-10-25 15:46:57,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:46:57,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:46:57,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:46:57,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:46:59,375.375 INFO    ] ================================================
[2026-10-25 15:46:59,391.391 INFO    ] Launching Daemon at Sun Oct 25 15:46:59 IST 2026
[2026-10-25 15:46:59,402.402 INFO    ] ================================================
[2026-10-25 15:47:00,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:47:00
[2026-10-25 15:47:00,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:47:00,858.858 INFO    ] Initializing speech engine...
[2026-10-25 15:47:00,868.868 INFO    ] 2026-10-25 15:47:00
[2026-10-25 15:47:01,119.119 INFO    ] 2026-10-25 15:47:01
[2026-10-25 15:47:01,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:47:01,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:47:01,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:47:01,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:47:01,598.598 INFO    ] time= 25/10/2026 15:47:01
[2026-10-25 15:47:01,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:47:01,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:47:01,759.759 INFO    ] No existing commands found in stream
[2026-10-25 15:47:06,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:47:06,778.778 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 15:47:09,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:47:09,109.109 INFO    ] Checking for system updates...
[2026-10-25 15:47:09,149.149 INFO    ] 200
[2026-10-25 15:47:09,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:09,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:47:09,659.659 INFO    ] No update needed
[2026-10-25 15:47:09,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 15:47:09,697.697 INFO    ] 200
[2026-10-25 15:47:09,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:09,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:47:10,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:47:10,314.314 INFO    ] No camera update needed
[2026-10-25 15:47:10,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:47:10,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:47:10,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:47:10,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:47:12,369.369 INFO    ] ================================================
[2026-10-25 15:47:12,385.385 INFO    ] Launching Daemon at Sun Oct 25 15:47:12 IST 2026
[2026-10-25 15:47:12,395.395 INFO    ] ================================================
[2026-10-25 15:47:12,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:47:12
[2026-10-25 15:47:13,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:47:13,819.819 INFO    ] Initializing speech engine...
[2026-10-25 15:47:13,828.828 INFO    ] 2026-10-25 15:47:13
[2026-10-25 15:47:14,077.077 INFO    ] 2026-10-25 15:47:14
[2026-10-25 15:47:14,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:47:14,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:47:14,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:47:14,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:47:14,555.555 INFO    ] time= 25/10/2026 15:47:14
[2026-10-25 15:47:14,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:47:14,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:47:14,705.705 INFO    ] No existing commands found in stream
[2026-10-25 15:47:19,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:47:19,719.719 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 15:47:22,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:47:22,093.093 INFO    ] Checking for system updates...
[2026-10-25 15:47:22,129.129 INFO    ] 200
[2026-10-25 15:47:22,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:22,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:22,193.193 INFO    ] No update needed
[2026-10-25 15:47:22,195.195 INFO    ] Checking for camera pi updates...
[2026-10-25 15:47:22,229.229 INFO    ] 200
[2026-10-25 15:47:22,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:22,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:47:22,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:22,320.320 INFO    ] No camera update needed
[2026-10-25 15:47:22,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:47:22,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:47:22,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:47:22,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:47:24,375.375 INFO    ] ================================================
[2026-10-25 15:47:24,390.390 INFO    ] Launching Daemon at Sun Oct 25 15:47:24 IST 2026
[2026-10-25 15:47:24,402.402 INFO    ] ================================================
[2026-10-25 15:47:25,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:47:25
[2026-10-25 15:47:25,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:47:25,898.898 INFO    ] Initializing speech engine...
[2026-10-25 15:47:25,906.906 INFO    ] 2026-10-25 15:47:25
[2026-10-25 15:47:26,156.156 INFO    ] 2026-10-25 15:47:26
[2026-10-25 15:47:26,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:47:27,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:47:27,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:47:27,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:47:27,285.285 INFO    ] time= 25/10/2026 15:47:27
[2026-10-25 15:47:27,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:47:27,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:47:27,394.394 INFO    ] No existing commands found in stream
[2026-10-25 15:47:32,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:47:32,406.406 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 15:47:35,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:47:35,898.898 INFO    ] Checking for system updates...
[2026-10-25 15:47:35,935.935 INFO    ] 200
[2026-10-25 15:47:35,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:35,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:35,994.994 INFO    ] No update needed
[2026-10-25 15:47:35,996.996 INFO    ] Checking for camera pi updates...
[2026-10-25 15:47:36,029.029 INFO    ] 200
[2026-10-25 15:47:36,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:36,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:47:36,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:36,121.121 INFO    ] No camera update needed
[2026-10-25 15:47:36,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:47:36,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:47:36,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:47:36,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:47:38,177.177 INFO    ] ================================================
[2026-10-25 15:47:38,193.193 INFO    ] Launching Daemon at Sun Oct 25 15:47:38 IST 2026
[2026-10-25 15:47:38,204.204 INFO    ] ================================================
[2026-10-25 15:47:38,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:47:38
[2026-10-25 15:47:39,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:47:39,625.625 INFO    ] Initializing speech engine...
[2026-10-25 15:47:39,634.634 INFO    ] 2026-10-25 15:47:39
[2026-10-25 15:47:39,880.880 INFO    ] 2026-10-25 15:47:39
[2026-10-25 15:47:39,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:47:40,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:47:40,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:47:40,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:47:40,374.374 INFO    ] time= 25/10/2026 15:47:40
[2026-10-25 15:47:40,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:47:40,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:47:40,499.499 INFO    ] No existing commands found in stream
[2026-10-25 15:47:45,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:47:45,514.514 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 15:47:49,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:47:49,616.616 INFO    ] Checking for system updates...
[2026-10-25 15:47:49,654.654 INFO    ] 200
[2026-10-25 15:47:49,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:49,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:49,715.715 INFO    ] No update needed
[2026-10-25 15:47:49,717.717 INFO    ] Checking for camera pi updates...
[2026-10-25 15:47:49,753.753 INFO    ] 200
[2026-10-25 15:47:49,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:47:49,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:47:49,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:47:49,965.965 INFO    ] No camera update needed
[2026-10-25 15:47:49,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:47:49,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:47:49,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:47:49,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:47:52,024.024 INFO    ] ================================================
[2026-10-25 15:47:52,040.040 INFO    ] Launching Daemon at Sun Oct 25 15:47:52 IST 2026
[2026-10-25 15:47:52,051.051 INFO    ] ================================================
[2026-10-25 15:47:52,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:47:52
[2026-10-25 15:47:53,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:47:53,689.689 INFO    ] Initializing speech engine...
[2026-10-25 15:47:53,702.702 INFO    ] 2026-10-25 15:47:53
[2026-10-25 15:47:54,009.009 INFO    ] 2026-10-25 15:47:53
[2026-10-25 15:47:54,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:47:57,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:47:57,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:47:57,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:47:57,506.506 INFO    ] time= 25/10/2026 15:47:57
[2026-10-25 15:47:57,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:47:57,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:47:57,561.561 INFO    ] No existing commands found in stream
[2026-10-25 15:48:02,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:48:02,575.575 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 15:48:06,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:48:06,265.265 INFO    ] Checking for system updates...
[2026-10-25 15:48:06,302.302 INFO    ] 200
[2026-10-25 15:48:06,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:06,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:48:06,370.370 INFO    ] No update needed
[2026-10-25 15:48:06,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 15:48:06,414.414 INFO    ] 200
[2026-10-25 15:48:06,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:06,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:48:06,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:48:06,524.524 INFO    ] No camera update needed
[2026-10-25 15:48:06,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:48:06,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:48:06,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:48:06,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:48:08,582.582 INFO    ] ================================================
[2026-10-25 15:48:08,597.597 INFO    ] Launching Daemon at Sun Oct 25 15:48:08 IST 2026
[2026-10-25 15:48:08,608.608 INFO    ] ================================================
[2026-10-25 15:48:09,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:48:09
[2026-10-25 15:48:09,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:48:10,233.233 INFO    ] Initializing speech engine...
[2026-10-25 15:48:10,245.245 INFO    ] 2026-10-25 15:48:10
[2026-10-25 15:48:10,521.521 INFO    ] 2026-10-25 15:48:10
[2026-10-25 15:48:10,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:48:10,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:48:10,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:48:11,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:48:11,053.053 INFO    ] time= 25/10/2026 15:48:11
[2026-10-25 15:48:11,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:48:11,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:48:11,260.260 INFO    ] No existing commands found in stream
[2026-10-25 15:48:16,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:48:16,274.274 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 15:48:18,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:48:18,429.429 INFO    ] Checking for system updates...
[2026-10-25 15:48:18,465.465 INFO    ] 200
[2026-10-25 15:48:18,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:18,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:18,530.530 INFO    ] No update needed
[2026-10-25 15:48:18,532.532 INFO    ] Checking for camera pi updates...
[2026-10-25 15:48:18,566.566 INFO    ] 200
[2026-10-25 15:48:18,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:18,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:48:18,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:18,663.663 INFO    ] No camera update needed
[2026-10-25 15:48:18,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:48:18,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:48:18,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:48:18,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:48:20,716.716 INFO    ] ================================================
[2026-10-25 15:48:20,731.731 INFO    ] Launching Daemon at Sun Oct 25 15:48:20 IST 2026
[2026-10-25 15:48:20,742.742 INFO    ] ================================================
[2026-10-25 15:48:21,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:48:21
[2026-10-25 15:48:21,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:48:22,146.146 INFO    ] Initializing speech engine...
[2026-10-25 15:48:22,165.165 INFO    ] 2026-10-25 15:48:22
[2026-10-25 15:48:22,413.413 INFO    ] 2026-10-25 15:48:22
[2026-10-25 15:48:22,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:48:22,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:48:22,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:48:22,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:48:22,856.856 INFO    ] time= 25/10/2026 15:48:22
[2026-10-25 15:48:22,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:48:22,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:48:23,013.013 INFO    ] No existing commands found in stream
[2026-10-25 15:48:28,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:48:28,038.038 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 15:48:31,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:48:31,088.088 INFO    ] Checking for system updates...
[2026-10-25 15:48:31,124.124 INFO    ] 200
[2026-10-25 15:48:31,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:31,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:31,181.181 INFO    ] No update needed
[2026-10-25 15:48:31,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 15:48:31,222.222 INFO    ] 200
[2026-10-25 15:48:31,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:31,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:48:31,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:31,320.320 INFO    ] No camera update needed
[2026-10-25 15:48:31,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:48:31,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:48:31,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:48:31,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:48:33,376.376 INFO    ] ================================================
[2026-10-25 15:48:33,391.391 INFO    ] Launching Daemon at Sun Oct 25 15:48:33 IST 2026
[2026-10-25 15:48:33,401.401 INFO    ] ================================================
[2026-10-25 15:48:34,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:48:34
[2026-10-25 15:48:34,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:48:34,918.918 INFO    ] Initializing speech engine...
[2026-10-25 15:48:34,942.942 INFO    ] 2026-10-25 15:48:34
[2026-10-25 15:48:35,223.223 INFO    ] 2026-10-25 15:48:35
[2026-10-25 15:48:35,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:48:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:48:35,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:48:35,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:48:35,841.841 INFO    ] time= 25/10/2026 15:48:35
[2026-10-25 15:48:35,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:48:35,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:48:35,956.956 INFO    ] No existing commands found in stream
[2026-10-25 15:48:40,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:48:40,980.980 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-25 15:48:42,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:48:42,116.116 INFO    ] Checking for system updates...
[2026-10-25 15:48:42,156.156 INFO    ] 200
[2026-10-25 15:48:42,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:42,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:42,215.215 INFO    ] No update needed
[2026-10-25 15:48:42,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 15:48:42,251.251 INFO    ] 200
[2026-10-25 15:48:42,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:42,295.295 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:48:42,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:48:42,347.347 INFO    ] No camera update needed
[2026-10-25 15:48:42,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:48:42,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:48:42,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:48:42,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:48:44,402.402 INFO    ] ================================================
[2026-10-25 15:48:44,417.417 INFO    ] Launching Daemon at Sun Oct 25 15:48:44 IST 2026
[2026-10-25 15:48:44,428.428 INFO    ] ================================================
[2026-10-25 15:48:44,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:48:44
[2026-10-25 15:48:45,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:48:45,839.839 INFO    ] Initializing speech engine...
[2026-10-25 15:48:45,856.856 INFO    ] 2026-10-25 15:48:45
[2026-10-25 15:48:46,112.112 INFO    ] 2026-10-25 15:48:46
[2026-10-25 15:48:46,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:48:46,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:48:46,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:48:46,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:48:46,488.488 INFO    ] time= 25/10/2026 15:48:46
[2026-10-25 15:48:46,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:48:46,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:48:46,659.659 INFO    ] No existing commands found in stream
[2026-10-25 15:48:51,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:48:51,687.687 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 15:48:55,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:48:55,171.171 INFO    ] Checking for system updates...
[2026-10-25 15:48:55,213.213 INFO    ] 200
[2026-10-25 15:48:55,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:55,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:48:55,271.271 INFO    ] No update needed
[2026-10-25 15:48:55,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 15:48:55,312.312 INFO    ] 200
[2026-10-25 15:48:55,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:48:55,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:48:55,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:48:55,407.407 INFO    ] No camera update needed
[2026-10-25 15:48:55,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:48:55,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:48:55,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:48:55,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:48:57,461.461 INFO    ] ================================================
[2026-10-25 15:48:57,475.475 INFO    ] Launching Daemon at Sun Oct 25 15:48:57 IST 2026
[2026-10-25 15:48:57,486.486 INFO    ] ================================================
[2026-10-25 15:48:58,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:48:58
[2026-10-25 15:48:58,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:48:58,901.901 INFO    ] Initializing speech engine...
[2026-10-25 15:48:58,910.910 INFO    ] 2026-10-25 15:48:58
[2026-10-25 15:48:59,156.156 INFO    ] 2026-10-25 15:48:59
[2026-10-25 15:48:59,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:48:59,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:48:59,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:48:59,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:48:59,727.727 INFO    ] time= 25/10/2026 15:48:59
[2026-10-25 15:48:59,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:48:59,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:48:59,864.864 INFO    ] No existing commands found in stream
[2026-10-25 15:49:04,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:49:04,878.878 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 15:49:06,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:49:07,000.000 INFO    ] Checking for system updates...
[2026-10-25 15:49:07,037.037 INFO    ] 200
[2026-10-25 15:49:07,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:07,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:49:07,104.104 INFO    ] No update needed
[2026-10-25 15:49:07,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 15:49:07,141.141 INFO    ] 200
[2026-10-25 15:49:07,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:07,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:49:07,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:49:07,242.242 INFO    ] No camera update needed
[2026-10-25 15:49:07,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:49:07,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:49:07,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:49:07,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:49:09,296.296 INFO    ] ================================================
[2026-10-25 15:49:09,312.312 INFO    ] Launching Daemon at Sun Oct 25 15:49:09 IST 2026
[2026-10-25 15:49:09,323.323 INFO    ] ================================================
[2026-10-25 15:49:09,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:49:09
[2026-10-25 15:49:10,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:49:10,792.792 INFO    ] Initializing speech engine...
[2026-10-25 15:49:10,811.811 INFO    ] 2026-10-25 15:49:10
[2026-10-25 15:49:11,069.069 INFO    ] 2026-10-25 15:49:11
[2026-10-25 15:49:11,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:49:11,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:49:11,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:49:11,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:49:11,539.539 INFO    ] time= 25/10/2026 15:49:11
[2026-10-25 15:49:11,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:49:11,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:49:11,695.695 INFO    ] No existing commands found in stream
[2026-10-25 15:49:16,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:49:16,730.730 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 15:49:19,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:49:19,094.094 INFO    ] Checking for system updates...
[2026-10-25 15:49:19,131.131 INFO    ] 200
[2026-10-25 15:49:19,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:19,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:19,191.191 INFO    ] No update needed
[2026-10-25 15:49:19,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 15:49:19,233.233 INFO    ] 200
[2026-10-25 15:49:19,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:19,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:49:19,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:19,330.330 INFO    ] No camera update needed
[2026-10-25 15:49:19,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:49:19,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:49:19,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:49:19,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:49:21,386.386 INFO    ] ================================================
[2026-10-25 15:49:21,401.401 INFO    ] Launching Daemon at Sun Oct 25 15:49:21 IST 2026
[2026-10-25 15:49:21,412.412 INFO    ] ================================================
[2026-10-25 15:49:21,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:49:21
[2026-10-25 15:49:22,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:49:22,864.864 INFO    ] Initializing speech engine...
[2026-10-25 15:49:22,872.872 INFO    ] 2026-10-25 15:49:22
[2026-10-25 15:49:23,132.132 INFO    ] 2026-10-25 15:49:23
[2026-10-25 15:49:23,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:49:23,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:49:23,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:49:23,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:49:23,585.585 INFO    ] time= 25/10/2026 15:49:23
[2026-10-25 15:49:23,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:49:23,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:49:23,766.766 INFO    ] No existing commands found in stream
[2026-10-25 15:49:28,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:49:28,805.805 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 15:49:30,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:49:30,525.525 INFO    ] Checking for system updates...
[2026-10-25 15:49:30,562.562 INFO    ] 200
[2026-10-25 15:49:30,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:30,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:30,622.622 INFO    ] No update needed
[2026-10-25 15:49:30,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 15:49:30,663.663 INFO    ] 200
[2026-10-25 15:49:30,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:30,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:49:30,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:30,761.761 INFO    ] No camera update needed
[2026-10-25 15:49:30,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:49:30,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:49:30,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:49:30,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:49:32,818.818 INFO    ] ================================================
[2026-10-25 15:49:32,835.835 INFO    ] Launching Daemon at Sun Oct 25 15:49:32 IST 2026
[2026-10-25 15:49:32,847.847 INFO    ] ================================================
[2026-10-25 15:49:33,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:49:33
[2026-10-25 15:49:34,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:49:34,554.554 INFO    ] Initializing speech engine...
[2026-10-25 15:49:34,568.568 INFO    ] 2026-10-25 15:49:34
[2026-10-25 15:49:34,879.879 INFO    ] 2026-10-25 15:49:34
[2026-10-25 15:49:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:49:35,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:49:35,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:49:35,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:49:35,977.977 INFO    ] time= 25/10/2026 15:49:35
[2026-10-25 15:49:35,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:49:36,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:49:36,157.157 INFO    ] No existing commands found in stream
[2026-10-25 15:49:41,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:49:41,186.186 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 15:49:46,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:49:46,418.418 INFO    ] Checking for system updates...
[2026-10-25 15:49:46,460.460 INFO    ] 200
[2026-10-25 15:49:46,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:46,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:46,523.523 INFO    ] No update needed
[2026-10-25 15:49:46,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 15:49:46,566.566 INFO    ] 200
[2026-10-25 15:49:46,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:49:46,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:49:46,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:49:46,676.676 INFO    ] No camera update needed
[2026-10-25 15:49:46,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:49:46,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:49:46,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:49:46,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:49:48,735.735 INFO    ] ================================================
[2026-10-25 15:49:48,751.751 INFO    ] Launching Daemon at Sun Oct 25 15:49:48 IST 2026
[2026-10-25 15:49:48,762.762 INFO    ] ================================================
[2026-10-25 15:49:49,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:49:49
[2026-10-25 15:49:50,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:49:50,424.424 INFO    ] Initializing speech engine...
[2026-10-25 15:49:50,435.435 INFO    ] 2026-10-25 15:49:50
[2026-10-25 15:49:50,722.722 INFO    ] 2026-10-25 15:49:50
[2026-10-25 15:49:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:49:51,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:49:51,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:49:51,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:49:51,255.255 INFO    ] time= 25/10/2026 15:49:51
[2026-10-25 15:49:51,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:49:51,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:49:51,409.409 INFO    ] No existing commands found in stream
[2026-10-25 15:49:56,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:49:56,429.429 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 15:50:01,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:50:01,905.905 INFO    ] Checking for system updates...
[2026-10-25 15:50:01,976.976 INFO    ] 200
[2026-10-25 15:50:01,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:02,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:02,069.069 INFO    ] No update needed
[2026-10-25 15:50:02,075.075 INFO    ] Checking for camera pi updates...
[2026-10-25 15:50:02,125.125 INFO    ] 200
[2026-10-25 15:50:02,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:02,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:50:02,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:02,340.340 INFO    ] No camera update needed
[2026-10-25 15:50:02,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:50:02,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:50:02,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:50:02,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:50:04,405.405 INFO    ] ================================================
[2026-10-25 15:50:04,420.420 INFO    ] Launching Daemon at Sun Oct 25 15:50:04 IST 2026
[2026-10-25 15:50:04,431.431 INFO    ] ================================================
[2026-10-25 15:50:05,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:50:04
[2026-10-25 15:50:05,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:50:05,844.844 INFO    ] Initializing speech engine...
[2026-10-25 15:50:05,852.852 INFO    ] 2026-10-25 15:50:05
[2026-10-25 15:50:06,145.145 INFO    ] 2026-10-25 15:50:06
[2026-10-25 15:50:06,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:50:06,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:50:06,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:50:06,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:50:06,528.528 INFO    ] time= 25/10/2026 15:50:06
[2026-10-25 15:50:06,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:50:06,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:50:06,652.652 INFO    ] No existing commands found in stream
[2026-10-25 15:50:11,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:50:11,668.668 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 15:50:15,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:50:15,380.380 INFO    ] Checking for system updates...
[2026-10-25 15:50:15,421.421 INFO    ] 200
[2026-10-25 15:50:15,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:15,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:15,483.483 INFO    ] No update needed
[2026-10-25 15:50:15,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 15:50:15,522.522 INFO    ] 200
[2026-10-25 15:50:15,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:15,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:50:15,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:15,622.622 INFO    ] No camera update needed
[2026-10-25 15:50:15,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:50:15,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:50:15,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:50:15,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:50:17,681.681 INFO    ] ================================================
[2026-10-25 15:50:17,696.696 INFO    ] Launching Daemon at Sun Oct 25 15:50:17 IST 2026
[2026-10-25 15:50:17,708.708 INFO    ] ================================================
[2026-10-25 15:50:18,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:50:18
[2026-10-25 15:50:18,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:50:19,112.112 INFO    ] Initializing speech engine...
[2026-10-25 15:50:19,119.119 INFO    ] 2026-10-25 15:50:19
[2026-10-25 15:50:19,412.412 INFO    ] 2026-10-25 15:50:19
[2026-10-25 15:50:19,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:50:19,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:50:19,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:50:19,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:50:19,832.832 INFO    ] time= 25/10/2026 15:50:19
[2026-10-25 15:50:19,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:50:19,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:50:19,990.990 INFO    ] No existing commands found in stream
[2026-10-25 15:50:25,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:50:25,018.018 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 15:50:28,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:50:28,183.183 INFO    ] Checking for system updates...
[2026-10-25 15:50:28,221.221 INFO    ] 200
[2026-10-25 15:50:28,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:28,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:28,281.281 INFO    ] No update needed
[2026-10-25 15:50:28,284.284 INFO    ] Checking for camera pi updates...
[2026-10-25 15:50:28,320.320 INFO    ] 200
[2026-10-25 15:50:28,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:28,367.367 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:50:28,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:50:28,429.429 INFO    ] No camera update needed
[2026-10-25 15:50:28,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:50:28,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:50:28,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:50:28,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:50:30,487.487 INFO    ] ================================================
[2026-10-25 15:50:30,502.502 INFO    ] Launching Daemon at Sun Oct 25 15:50:30 IST 2026
[2026-10-25 15:50:30,513.513 INFO    ] ================================================
[2026-10-25 15:50:31,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:50:31
[2026-10-25 15:50:31,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:50:32,019.019 INFO    ] Initializing speech engine...
[2026-10-25 15:50:32,033.033 INFO    ] 2026-10-25 15:50:32
[2026-10-25 15:50:32,322.322 INFO    ] 2026-10-25 15:50:32
[2026-10-25 15:50:32,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:50:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:50:32,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:50:32,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:50:32,830.830 INFO    ] time= 25/10/2026 15:50:32
[2026-10-25 15:50:32,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:50:32,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:50:33,040.040 INFO    ] No existing commands found in stream
[2026-10-25 15:50:38,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:50:38,062.062 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 15:50:38,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:50:38,657.657 INFO    ] Checking for system updates...
[2026-10-25 15:50:38,698.698 INFO    ] 200
[2026-10-25 15:50:38,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:38,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:50:38,757.757 INFO    ] No update needed
[2026-10-25 15:50:38,759.759 INFO    ] Checking for camera pi updates...
[2026-10-25 15:50:38,794.794 INFO    ] 200
[2026-10-25 15:50:38,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:38,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:50:38,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:50:38,879.879 INFO    ] No camera update needed
[2026-10-25 15:50:38,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:50:38,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:50:38,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:50:38,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:50:40,936.936 INFO    ] ================================================
[2026-10-25 15:50:40,952.952 INFO    ] Launching Daemon at Sun Oct 25 15:50:40 IST 2026
[2026-10-25 15:50:40,962.962 INFO    ] ================================================
[2026-10-25 15:50:41,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:50:41
[2026-10-25 15:50:42,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:50:42,495.495 INFO    ] Initializing speech engine...
[2026-10-25 15:50:42,509.509 INFO    ] 2026-10-25 15:50:42
[2026-10-25 15:50:42,794.794 INFO    ] 2026-10-25 15:50:42
[2026-10-25 15:50:42,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:50:43,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:50:43,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:50:43,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:50:43,203.203 INFO    ] time= 25/10/2026 15:50:43
[2026-10-25 15:50:43,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:50:43,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:50:43,395.395 INFO    ] No existing commands found in stream
[2026-10-25 15:50:48,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:50:48,411.411 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 15:50:50,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:50:50,011.011 INFO    ] Checking for system updates...
[2026-10-25 15:50:50,048.048 INFO    ] 200
[2026-10-25 15:50:50,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:50,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:50:50,109.109 INFO    ] No update needed
[2026-10-25 15:50:50,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 15:50:50,148.148 INFO    ] 200
[2026-10-25 15:50:50,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:50:50,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:50:50,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:50:50,247.247 INFO    ] No camera update needed
[2026-10-25 15:50:50,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:50:50,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:50:50,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:50:50,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:50:52,302.302 INFO    ] ================================================
[2026-10-25 15:50:52,317.317 INFO    ] Launching Daemon at Sun Oct 25 15:50:52 IST 2026
[2026-10-25 15:50:52,328.328 INFO    ] ================================================
[2026-10-25 15:50:52,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:50:52
[2026-10-25 15:50:53,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:50:53,752.752 INFO    ] Initializing speech engine...
[2026-10-25 15:50:53,761.761 INFO    ] 2026-10-25 15:50:53
[2026-10-25 15:50:54,006.006 INFO    ] 2026-10-25 15:50:54
[2026-10-25 15:50:54,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:50:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:50:54,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:50:54,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:50:54,505.505 INFO    ] time= 25/10/2026 15:50:54
[2026-10-25 15:50:54,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:50:54,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:50:54,698.698 INFO    ] No existing commands found in stream
[2026-10-25 15:50:59,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:50:59,727.727 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 15:51:02,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:51:02,736.736 INFO    ] Checking for system updates...
[2026-10-25 15:51:02,779.779 INFO    ] 200
[2026-10-25 15:51:02,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:02,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:02,848.848 INFO    ] No update needed
[2026-10-25 15:51:02,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 15:51:02,897.897 INFO    ] 200
[2026-10-25 15:51:02,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:02,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:51:02,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:03,000.000 INFO    ] No camera update needed
[2026-10-25 15:51:03,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:51:03,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:51:03,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:51:03,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:51:05,062.062 INFO    ] ================================================
[2026-10-25 15:51:05,077.077 INFO    ] Launching Daemon at Sun Oct 25 15:51:05 IST 2026
[2026-10-25 15:51:05,088.088 INFO    ] ================================================
[2026-10-25 15:51:05,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:51:05
[2026-10-25 15:51:06,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:51:06,511.511 INFO    ] Initializing speech engine...
[2026-10-25 15:51:06,520.520 INFO    ] 2026-10-25 15:51:06
[2026-10-25 15:51:06,770.770 INFO    ] 2026-10-25 15:51:06
[2026-10-25 15:51:06,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:51:07,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:51:07,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:51:07,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:51:07,249.249 INFO    ] time= 25/10/2026 15:51:07
[2026-10-25 15:51:07,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:51:07,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:51:07,400.400 INFO    ] No existing commands found in stream
[2026-10-25 15:51:12,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:51:12,414.414 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 15:51:14,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:51:14,535.535 INFO    ] Checking for system updates...
[2026-10-25 15:51:14,574.574 INFO    ] 200
[2026-10-25 15:51:14,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:14,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:14,633.633 INFO    ] No update needed
[2026-10-25 15:51:14,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 15:51:14,669.669 INFO    ] 200
[2026-10-25 15:51:14,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:14,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:51:14,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:14,764.764 INFO    ] No camera update needed
[2026-10-25 15:51:14,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:51:14,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:51:14,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:51:14,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:51:16,823.823 INFO    ] ================================================
[2026-10-25 15:51:16,838.838 INFO    ] Launching Daemon at Sun Oct 25 15:51:16 IST 2026
[2026-10-25 15:51:16,849.849 INFO    ] ================================================
[2026-10-25 15:51:17,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:51:17
[2026-10-25 15:51:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:51:18,264.264 INFO    ] Initializing speech engine...
[2026-10-25 15:51:18,273.273 INFO    ] 2026-10-25 15:51:18
[2026-10-25 15:51:18,519.519 INFO    ] 2026-10-25 15:51:18
[2026-10-25 15:51:18,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:51:18,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:51:18,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:51:18,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:51:18,865.865 INFO    ] time= 25/10/2026 15:51:18
[2026-10-25 15:51:18,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:51:18,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:51:18,959.959 INFO    ] No existing commands found in stream
[2026-10-25 15:51:23,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:51:23,975.975 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 15:51:26,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:51:26,426.426 INFO    ] Checking for system updates...
[2026-10-25 15:51:26,463.463 INFO    ] 200
[2026-10-25 15:51:26,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:26,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:26,541.541 INFO    ] No update needed
[2026-10-25 15:51:26,544.544 INFO    ] Checking for camera pi updates...
[2026-10-25 15:51:26,610.610 INFO    ] 200
[2026-10-25 15:51:26,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:26,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:51:26,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:26,741.741 INFO    ] No camera update needed
[2026-10-25 15:51:26,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:51:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:51:26,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:51:26,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:51:28,796.796 INFO    ] ================================================
[2026-10-25 15:51:28,811.811 INFO    ] Launching Daemon at Sun Oct 25 15:51:28 IST 2026
[2026-10-25 15:51:28,822.822 INFO    ] ================================================
[2026-10-25 15:51:29,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:51:29
[2026-10-25 15:51:30,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:51:30,307.307 INFO    ] Initializing speech engine...
[2026-10-25 15:51:30,316.316 INFO    ] 2026-10-25 15:51:30
[2026-10-25 15:51:30,562.562 INFO    ] 2026-10-25 15:51:30
[2026-10-25 15:51:30,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:51:33,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:51:33,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:51:33,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:51:33,837.837 INFO    ] time= 25/10/2026 15:51:33
[2026-10-25 15:51:33,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:51:33,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:51:33,888.888 INFO    ] No existing commands found in stream
[2026-10-25 15:51:38,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:51:38,899.899 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 15:51:42,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:51:42,404.404 INFO    ] Checking for system updates...
[2026-10-25 15:51:42,444.444 INFO    ] 200
[2026-10-25 15:51:42,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:42,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:51:42,502.502 INFO    ] No update needed
[2026-10-25 15:51:42,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 15:51:42,543.543 INFO    ] 200
[2026-10-25 15:51:42,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:42,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:51:42,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:51:42,641.641 INFO    ] No camera update needed
[2026-10-25 15:51:42,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:51:42,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:51:42,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:51:42,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:51:44,697.697 INFO    ] ================================================
[2026-10-25 15:51:44,712.712 INFO    ] Launching Daemon at Sun Oct 25 15:51:44 IST 2026
[2026-10-25 15:51:44,722.722 INFO    ] ================================================
[2026-10-25 15:51:45,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:51:45
[2026-10-25 15:51:46,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:51:46,366.366 INFO    ] Initializing speech engine...
[2026-10-25 15:51:46,373.373 INFO    ] 2026-10-25 15:51:46
[2026-10-25 15:51:46,683.683 INFO    ] 2026-10-25 15:51:46
[2026-10-25 15:51:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:51:46,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:51:46,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:51:47,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:51:47,185.185 INFO    ] time= 25/10/2026 15:51:47
[2026-10-25 15:51:47,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:51:47,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:51:47,322.322 INFO    ] No existing commands found in stream
[2026-10-25 15:51:52,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:51:52,347.347 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 15:51:56,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:51:56,256.256 INFO    ] Checking for system updates...
[2026-10-25 15:51:56,295.295 INFO    ] 200
[2026-10-25 15:51:56,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:56,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:56,360.360 INFO    ] No update needed
[2026-10-25 15:51:56,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 15:51:56,399.399 INFO    ] 200
[2026-10-25 15:51:56,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:51:56,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:51:56,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:51:56,513.513 INFO    ] No camera update needed
[2026-10-25 15:51:56,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:51:56,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:51:56,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:51:56,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:51:58,574.574 INFO    ] ================================================
[2026-10-25 15:51:58,590.590 INFO    ] Launching Daemon at Sun Oct 25 15:51:58 IST 2026
[2026-10-25 15:51:58,601.601 INFO    ] ================================================
[2026-10-25 15:51:59,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:51:59
[2026-10-25 15:51:59,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:52:00,108.108 INFO    ] Initializing speech engine...
[2026-10-25 15:52:00,117.117 INFO    ] 2026-10-25 15:52:00
[2026-10-25 15:52:00,409.409 INFO    ] 2026-10-25 15:52:00
[2026-10-25 15:52:00,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:52:03,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:52:03,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:52:04,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:52:04,485.485 INFO    ] time= 25/10/2026 15:52:04
[2026-10-25 15:52:04,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:52:04,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:52:04,544.544 INFO    ] No existing commands found in stream
[2026-10-25 15:52:09,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:52:09,556.556 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 15:52:13,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:52:13,267.267 INFO    ] Checking for system updates...
[2026-10-25 15:52:13,329.329 INFO    ] 200
[2026-10-25 15:52:13,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:13,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:52:13,396.396 INFO    ] No update needed
[2026-10-25 15:52:13,399.399 INFO    ] Checking for camera pi updates...
[2026-10-25 15:52:13,438.438 INFO    ] 200
[2026-10-25 15:52:13,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:13,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:52:13,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:52:13,655.655 INFO    ] No camera update needed
[2026-10-25 15:52:13,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:52:13,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:52:13,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:52:13,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:52:15,711.711 INFO    ] ================================================
[2026-10-25 15:52:15,726.726 INFO    ] Launching Daemon at Sun Oct 25 15:52:15 IST 2026
[2026-10-25 15:52:15,737.737 INFO    ] ================================================
[2026-10-25 15:52:16,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:52:16
[2026-10-25 15:52:17,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:52:17,330.330 INFO    ] Initializing speech engine...
[2026-10-25 15:52:17,338.338 INFO    ] 2026-10-25 15:52:17
[2026-10-25 15:52:17,589.589 INFO    ] 2026-10-25 15:52:17
[2026-10-25 15:52:17,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:52:17,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:52:17,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:52:17,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:52:17,967.967 INFO    ] time= 25/10/2026 15:52:17
[2026-10-25 15:52:17,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:52:18,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:52:18,133.133 INFO    ] No existing commands found in stream
[2026-10-25 15:52:23,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:52:23,161.161 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 15:52:26,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:52:26,969.969 INFO    ] Checking for system updates...
[2026-10-25 15:52:27,006.006 INFO    ] 200
[2026-10-25 15:52:27,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:27,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:27,066.066 INFO    ] No update needed
[2026-10-25 15:52:27,068.068 INFO    ] Checking for camera pi updates...
[2026-10-25 15:52:27,103.103 INFO    ] 200
[2026-10-25 15:52:27,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:27,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:52:27,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:27,198.198 INFO    ] No camera update needed
[2026-10-25 15:52:27,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:52:27,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:52:27,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:52:27,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:52:29,259.259 INFO    ] ================================================
[2026-10-25 15:52:29,275.275 INFO    ] Launching Daemon at Sun Oct 25 15:52:29 IST 2026
[2026-10-25 15:52:29,286.286 INFO    ] ================================================
[2026-10-25 15:52:29,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:52:29
[2026-10-25 15:52:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:52:30,695.695 INFO    ] Initializing speech engine...
[2026-10-25 15:52:30,708.708 INFO    ] 2026-10-25 15:52:30
[2026-10-25 15:52:30,973.973 INFO    ] 2026-10-25 15:52:30
[2026-10-25 15:52:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:52:31,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:52:31,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:52:31,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:52:31,347.347 INFO    ] time= 25/10/2026 15:52:31
[2026-10-25 15:52:31,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:52:31,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:52:31,515.515 INFO    ] No existing commands found in stream
[2026-10-25 15:52:36,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:52:36,548.548 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 15:52:37,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:52:37,770.770 INFO    ] Checking for system updates...
[2026-10-25 15:52:37,812.812 INFO    ] 200
[2026-10-25 15:52:37,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:37,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:37,878.878 INFO    ] No update needed
[2026-10-25 15:52:37,881.881 INFO    ] Checking for camera pi updates...
[2026-10-25 15:52:37,914.914 INFO    ] 200
[2026-10-25 15:52:37,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:37,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:52:38,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:38,075.075 INFO    ] No camera update needed
[2026-10-25 15:52:38,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:52:38,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:52:38,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:52:38,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:52:40,129.129 INFO    ] ================================================
[2026-10-25 15:52:40,145.145 INFO    ] Launching Daemon at Sun Oct 25 15:52:40 IST 2026
[2026-10-25 15:52:40,156.156 INFO    ] ================================================
[2026-10-25 15:52:40,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:52:40
[2026-10-25 15:52:41,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:52:41,551.551 INFO    ] Initializing speech engine...
[2026-10-25 15:52:41,556.556 INFO    ] 2026-10-25 15:52:41
[2026-10-25 15:52:41,828.828 INFO    ] 2026-10-25 15:52:41
[2026-10-25 15:52:41,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:52:42,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:52:42,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:52:42,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:52:42,206.206 INFO    ] time= 25/10/2026 15:52:42
[2026-10-25 15:52:42,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:52:42,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:52:42,385.385 INFO    ] No existing commands found in stream
[2026-10-25 15:52:47,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:52:47,413.413 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 15:52:48,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:52:48,843.843 INFO    ] Checking for system updates...
[2026-10-25 15:52:48,880.880 INFO    ] 200
[2026-10-25 15:52:48,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:48,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:48,938.938 INFO    ] No update needed
[2026-10-25 15:52:48,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 15:52:48,978.978 INFO    ] 200
[2026-10-25 15:52:48,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:49,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:52:49,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:52:49,071.071 INFO    ] No camera update needed
[2026-10-25 15:52:49,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:52:49,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:52:49,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:52:49,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:52:51,131.131 INFO    ] ================================================
[2026-10-25 15:52:51,146.146 INFO    ] Launching Daemon at Sun Oct 25 15:52:51 IST 2026
[2026-10-25 15:52:51,157.157 INFO    ] ================================================
[2026-10-25 15:52:51,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:52:51
[2026-10-25 15:52:52,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:52:52,565.565 INFO    ] Initializing speech engine...
[2026-10-25 15:52:52,578.578 INFO    ] 2026-10-25 15:52:52
[2026-10-25 15:52:52,862.862 INFO    ] 2026-10-25 15:52:52
[2026-10-25 15:52:52,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:52:53,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:52:53,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:52:53,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:52:53,236.236 INFO    ] time= 25/10/2026 15:52:53
[2026-10-25 15:52:53,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:52:53,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:52:53,322.322 INFO    ] No existing commands found in stream
[2026-10-25 15:52:58,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:52:58,350.350 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 15:52:59,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:52:59,549.549 INFO    ] Checking for system updates...
[2026-10-25 15:52:59,588.588 INFO    ] 200
[2026-10-25 15:52:59,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:59,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:52:59,647.647 INFO    ] No update needed
[2026-10-25 15:52:59,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 15:52:59,684.684 INFO    ] 200
[2026-10-25 15:52:59,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:52:59,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:52:59,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:52:59,791.791 INFO    ] No camera update needed
[2026-10-25 15:52:59,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:52:59,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:52:59,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:52:59,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:53:01,848.848 INFO    ] ================================================
[2026-10-25 15:53:01,865.865 INFO    ] Launching Daemon at Sun Oct 25 15:53:01 IST 2026
[2026-10-25 15:53:01,877.877 INFO    ] ================================================
[2026-10-25 15:53:02,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:53:02
[2026-10-25 15:53:03,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:53:03,413.413 INFO    ] Initializing speech engine...
[2026-10-25 15:53:03,422.422 INFO    ] 2026-10-25 15:53:03
[2026-10-25 15:53:03,681.681 INFO    ] 2026-10-25 15:53:03
[2026-10-25 15:53:03,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:53:06,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:53:06,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:53:06,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:53:06,822.822 INFO    ] time= 25/10/2026 15:53:06
[2026-10-25 15:53:06,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:53:06,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:53:06,873.873 INFO    ] No existing commands found in stream
[2026-10-25 15:53:11,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:53:11,885.885 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 15:53:13,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:53:13,234.234 INFO    ] Checking for system updates...
[2026-10-25 15:53:13,274.274 INFO    ] 200
[2026-10-25 15:53:13,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:13,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:53:13,332.332 INFO    ] No update needed
[2026-10-25 15:53:13,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 15:53:13,372.372 INFO    ] 200
[2026-10-25 15:53:13,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:13,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:53:13,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:53:13,477.477 INFO    ] No camera update needed
[2026-10-25 15:53:13,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:53:13,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:53:13,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:53:13,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:53:15,534.534 INFO    ] ================================================
[2026-10-25 15:53:15,554.554 INFO    ] Launching Daemon at Sun Oct 25 15:53:15 IST 2026
[2026-10-25 15:53:15,564.564 INFO    ] ================================================
[2026-10-25 15:53:16,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:53:16
[2026-10-25 15:53:16,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:53:16,959.959 INFO    ] Initializing speech engine...
[2026-10-25 15:53:16,974.974 INFO    ] 2026-10-25 15:53:16
[2026-10-25 15:53:17,237.237 INFO    ] 2026-10-25 15:53:17
[2026-10-25 15:53:17,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:53:17,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:53:17,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:53:17,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:53:17,712.712 INFO    ] time= 25/10/2026 15:53:17
[2026-10-25 15:53:17,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:53:17,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:53:17,856.856 INFO    ] No existing commands found in stream
[2026-10-25 15:53:22,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:53:22,871.871 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 15:53:26,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:53:26,395.395 INFO    ] Checking for system updates...
[2026-10-25 15:53:26,435.435 INFO    ] 200
[2026-10-25 15:53:26,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:26,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:53:26,493.493 INFO    ] No update needed
[2026-10-25 15:53:26,495.495 INFO    ] Checking for camera pi updates...
[2026-10-25 15:53:26,530.530 INFO    ] 200
[2026-10-25 15:53:26,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:26,577.577 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:53:26,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:53:26,630.630 INFO    ] No camera update needed
[2026-10-25 15:53:26,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:53:26,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:53:26,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:53:26,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:53:28,694.694 INFO    ] ================================================
[2026-10-25 15:53:28,710.710 INFO    ] Launching Daemon at Sun Oct 25 15:53:28 IST 2026
[2026-10-25 15:53:28,722.722 INFO    ] ================================================
[2026-10-25 15:53:29,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:53:29
[2026-10-25 15:53:30,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:53:30,348.348 INFO    ] Initializing speech engine...
[2026-10-25 15:53:30,362.362 INFO    ] 2026-10-25 15:53:30
[2026-10-25 15:53:30,639.639 INFO    ] 2026-10-25 15:53:30
[2026-10-25 15:53:30,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:53:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:53:30,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:53:31,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:53:31,111.111 INFO    ] time= 25/10/2026 15:53:31
[2026-10-25 15:53:31,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:53:31,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:53:31,256.256 INFO    ] No existing commands found in stream
[2026-10-25 15:53:36,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:53:36,296.296 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 15:53:39,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:53:39,846.846 INFO    ] Checking for system updates...
[2026-10-25 15:53:39,883.883 INFO    ] 200
[2026-10-25 15:53:39,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:39,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:53:39,942.942 INFO    ] No update needed
[2026-10-25 15:53:39,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 15:53:39,980.980 INFO    ] 200
[2026-10-25 15:53:39,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:40,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:53:40,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:53:40,078.078 INFO    ] No camera update needed
[2026-10-25 15:53:40,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:53:40,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:53:40,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:53:40,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:53:42,133.133 INFO    ] ================================================
[2026-10-25 15:53:42,148.148 INFO    ] Launching Daemon at Sun Oct 25 15:53:42 IST 2026
[2026-10-25 15:53:42,159.159 INFO    ] ================================================
[2026-10-25 15:53:42,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:53:42
[2026-10-25 15:53:43,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:53:43,705.705 INFO    ] Initializing speech engine...
[2026-10-25 15:53:43,718.718 INFO    ] 2026-10-25 15:53:43
[2026-10-25 15:53:44,002.002 INFO    ] 2026-10-25 15:53:43
[2026-10-25 15:53:44,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:53:44,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:53:44,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:53:44,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:53:44,529.529 INFO    ] time= 25/10/2026 15:53:44
[2026-10-25 15:53:44,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:53:44,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:53:44,679.679 INFO    ] No existing commands found in stream
[2026-10-25 15:53:49,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:53:49,697.697 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 15:53:50,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:53:50,414.414 INFO    ] Checking for system updates...
[2026-10-25 15:53:50,453.453 INFO    ] 200
[2026-10-25 15:53:50,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:50,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:53:50,517.517 INFO    ] No update needed
[2026-10-25 15:53:50,520.520 INFO    ] Checking for camera pi updates...
[2026-10-25 15:53:50,557.557 INFO    ] 200
[2026-10-25 15:53:50,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:53:50,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:53:50,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:53:50,666.666 INFO    ] No camera update needed
[2026-10-25 15:53:50,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:53:50,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:53:50,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:53:50,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:53:52,721.721 INFO    ] ================================================
[2026-10-25 15:53:52,736.736 INFO    ] Launching Daemon at Sun Oct 25 15:53:52 IST 2026
[2026-10-25 15:53:52,746.746 INFO    ] ================================================
[2026-10-25 15:53:53,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:53:53
[2026-10-25 15:53:53,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:53:54,149.149 INFO    ] Initializing speech engine...
[2026-10-25 15:53:54,155.155 INFO    ] 2026-10-25 15:53:54
[2026-10-25 15:53:54,446.446 INFO    ] 2026-10-25 15:53:54
[2026-10-25 15:53:54,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:53:54,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:53:54,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:53:54,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:53:54,859.859 INFO    ] time= 25/10/2026 15:53:54
[2026-10-25 15:53:54,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:53:54,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:53:54,946.946 INFO    ] No existing commands found in stream
[2026-10-25 15:53:59,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:53:59,961.961 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 15:54:03,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:54:03,676.676 INFO    ] Checking for system updates...
[2026-10-25 15:54:03,716.716 INFO    ] 200
[2026-10-25 15:54:03,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:03,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:03,780.780 INFO    ] No update needed
[2026-10-25 15:54:03,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 15:54:03,818.818 INFO    ] 200
[2026-10-25 15:54:03,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:03,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:54:03,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:03,913.913 INFO    ] No camera update needed
[2026-10-25 15:54:03,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:54:03,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:54:03,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:54:03,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:54:05,966.966 INFO    ] ================================================
[2026-10-25 15:54:05,982.982 INFO    ] Launching Daemon at Sun Oct 25 15:54:05 IST 2026
[2026-10-25 15:54:05,992.992 INFO    ] ================================================
[2026-10-25 15:54:06,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:54:06
[2026-10-25 15:54:07,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:54:07,414.414 INFO    ] Initializing speech engine...
[2026-10-25 15:54:07,422.422 INFO    ] 2026-10-25 15:54:07
[2026-10-25 15:54:07,673.673 INFO    ] 2026-10-25 15:54:07
[2026-10-25 15:54:07,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:54:08,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:54:08,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:54:08,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:54:08,464.464 INFO    ] time= 25/10/2026 15:54:08
[2026-10-25 15:54:08,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:54:08,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:54:08,635.635 INFO    ] No existing commands found in stream
[2026-10-25 15:54:13,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:54:13,669.669 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 15:54:16,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:54:16,360.360 INFO    ] Checking for system updates...
[2026-10-25 15:54:16,400.400 INFO    ] 200
[2026-10-25 15:54:16,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:16,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:16,465.465 INFO    ] No update needed
[2026-10-25 15:54:16,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 15:54:16,501.501 INFO    ] 200
[2026-10-25 15:54:16,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:16,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:54:16,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:16,716.716 INFO    ] No camera update needed
[2026-10-25 15:54:16,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:54:16,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:54:16,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:54:16,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:54:18,771.771 INFO    ] ================================================
[2026-10-25 15:54:18,786.786 INFO    ] Launching Daemon at Sun Oct 25 15:54:18 IST 2026
[2026-10-25 15:54:18,797.797 INFO    ] ================================================
[2026-10-25 15:54:19,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:54:19
[2026-10-25 15:54:19,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:54:20,211.211 INFO    ] Initializing speech engine...
[2026-10-25 15:54:20,236.236 INFO    ] 2026-10-25 15:54:20
[2026-10-25 15:54:20,508.508 INFO    ] 2026-10-25 15:54:20
[2026-10-25 15:54:20,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:54:20,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:54:20,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:54:20,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:54:20,868.868 INFO    ] time= 25/10/2026 15:54:20
[2026-10-25 15:54:20,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:54:20,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:54:20,954.954 INFO    ] No existing commands found in stream
[2026-10-25 15:54:25,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:54:25,969.969 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 15:54:28,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:54:28,329.329 INFO    ] Checking for system updates...
[2026-10-25 15:54:28,369.369 INFO    ] 200
[2026-10-25 15:54:28,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:28,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:28,435.435 INFO    ] No update needed
[2026-10-25 15:54:28,437.437 INFO    ] Checking for camera pi updates...
[2026-10-25 15:54:28,470.470 INFO    ] 200
[2026-10-25 15:54:28,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:28,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:54:28,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:28,572.572 INFO    ] No camera update needed
[2026-10-25 15:54:28,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:54:28,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:54:28,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:54:28,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:54:30,629.629 INFO    ] ================================================
[2026-10-25 15:54:30,644.644 INFO    ] Launching Daemon at Sun Oct 25 15:54:30 IST 2026
[2026-10-25 15:54:30,654.654 INFO    ] ================================================
[2026-10-25 15:54:31,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:54:31
[2026-10-25 15:54:31,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:54:32,259.259 INFO    ] Initializing speech engine...
[2026-10-25 15:54:32,271.271 INFO    ] 2026-10-25 15:54:32
[2026-10-25 15:54:32,568.568 INFO    ] 2026-10-25 15:54:32
[2026-10-25 15:54:32,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:54:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:54:32,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:54:32,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:54:33,050.050 INFO    ] time= 25/10/2026 15:54:32
[2026-10-25 15:54:33,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:54:33,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:54:33,250.250 INFO    ] No existing commands found in stream
[2026-10-25 15:54:38,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:54:38,284.284 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 15:54:41,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:54:41,770.770 INFO    ] Checking for system updates...
[2026-10-25 15:54:41,810.810 INFO    ] 200
[2026-10-25 15:54:41,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:41,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:54:41,870.870 INFO    ] No update needed
[2026-10-25 15:54:41,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 15:54:41,909.909 INFO    ] 200
[2026-10-25 15:54:41,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:41,958.958 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:54:42,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:54:42,025.025 INFO    ] No camera update needed
[2026-10-25 15:54:42,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:54:42,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:54:42,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:54:42,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:54:44,082.082 INFO    ] ================================================
[2026-10-25 15:54:44,097.097 INFO    ] Launching Daemon at Sun Oct 25 15:54:44 IST 2026
[2026-10-25 15:54:44,108.108 INFO    ] ================================================
[2026-10-25 15:54:44,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:54:44
[2026-10-25 15:54:45,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:54:45,509.509 INFO    ] Initializing speech engine...
[2026-10-25 15:54:45,517.517 INFO    ] 2026-10-25 15:54:45
[2026-10-25 15:54:45,809.809 INFO    ] 2026-10-25 15:54:45
[2026-10-25 15:54:45,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:54:46,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:54:46,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:54:46,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:54:46,186.186 INFO    ] time= 25/10/2026 15:54:46
[2026-10-25 15:54:46,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:54:46,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:54:46,308.308 INFO    ] No existing commands found in stream
[2026-10-25 15:54:51,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:54:51,324.324 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 15:54:54,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:54:54,650.650 INFO    ] Checking for system updates...
[2026-10-25 15:54:54,690.690 INFO    ] 200
[2026-10-25 15:54:54,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:54,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:54,755.755 INFO    ] No update needed
[2026-10-25 15:54:54,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 15:54:54,795.795 INFO    ] 200
[2026-10-25 15:54:54,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:54:54,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:54:54,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:54:54,886.886 INFO    ] No camera update needed
[2026-10-25 15:54:54,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:54:54,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:54:54,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:54:54,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:54:56,941.941 INFO    ] ================================================
[2026-10-25 15:54:56,956.956 INFO    ] Launching Daemon at Sun Oct 25 15:54:56 IST 2026
[2026-10-25 15:54:56,967.967 INFO    ] ================================================
[2026-10-25 15:54:57,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:54:57
[2026-10-25 15:54:58,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:54:58,588.588 INFO    ] Initializing speech engine...
[2026-10-25 15:54:58,596.596 INFO    ] 2026-10-25 15:54:58
[2026-10-25 15:54:58,882.882 INFO    ] 2026-10-25 15:54:58
[2026-10-25 15:54:58,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:54:59,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:54:59,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:54:59,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:54:59,420.420 INFO    ] time= 25/10/2026 15:54:59
[2026-10-25 15:54:59,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:54:59,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:54:59,556.556 INFO    ] No existing commands found in stream
[2026-10-25 15:55:04,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:55:04,586.586 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 15:55:10,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:55:10,433.433 INFO    ] Checking for system updates...
[2026-10-25 15:55:10,471.471 INFO    ] 200
[2026-10-25 15:55:10,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:10,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:55:10,536.536 INFO    ] No update needed
[2026-10-25 15:55:10,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 15:55:10,577.577 INFO    ] 200
[2026-10-25 15:55:10,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:10,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:55:10,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:55:10,675.675 INFO    ] No camera update needed
[2026-10-25 15:55:10,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:55:10,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:55:10,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:55:10,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:55:12,734.734 INFO    ] ================================================
[2026-10-25 15:55:12,749.749 INFO    ] Launching Daemon at Sun Oct 25 15:55:12 IST 2026
[2026-10-25 15:55:12,759.759 INFO    ] ================================================
[2026-10-25 15:55:13,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:55:13
[2026-10-25 15:55:13,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:55:14,206.206 INFO    ] Initializing speech engine...
[2026-10-25 15:55:14,219.219 INFO    ] 2026-10-25 15:55:14
[2026-10-25 15:55:14,500.500 INFO    ] 2026-10-25 15:55:14
[2026-10-25 15:55:14,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:55:14,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:55:14,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:55:14,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:55:14,891.891 INFO    ] time= 25/10/2026 15:55:14
[2026-10-25 15:55:14,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:55:14,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:55:14,997.997 INFO    ] No existing commands found in stream
[2026-10-25 15:55:20,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:55:20,012.012 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 15:55:21,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:55:21,304.304 INFO    ] Checking for system updates...
[2026-10-25 15:55:21,340.340 INFO    ] 200
[2026-10-25 15:55:21,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:21,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:21,398.398 INFO    ] No update needed
[2026-10-25 15:55:21,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 15:55:21,438.438 INFO    ] 200
[2026-10-25 15:55:21,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:21,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:55:21,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:21,536.536 INFO    ] No camera update needed
[2026-10-25 15:55:21,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:55:21,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:55:21,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:55:21,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:55:23,591.591 INFO    ] ================================================
[2026-10-25 15:55:23,606.606 INFO    ] Launching Daemon at Sun Oct 25 15:55:23 IST 2026
[2026-10-25 15:55:23,617.617 INFO    ] ================================================
[2026-10-25 15:55:24,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:55:24
[2026-10-25 15:55:24,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:55:25,019.019 INFO    ] Initializing speech engine...
[2026-10-25 15:55:25,035.035 INFO    ] 2026-10-25 15:55:25
[2026-10-25 15:55:25,314.314 INFO    ] 2026-10-25 15:55:25
[2026-10-25 15:55:25,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:55:25,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:55:25,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:55:25,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:55:25,720.720 INFO    ] time= 25/10/2026 15:55:25
[2026-10-25 15:55:25,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:55:25,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:55:25,809.809 INFO    ] No existing commands found in stream
[2026-10-25 15:55:30,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:55:30,825.825 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 15:55:32,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:55:32,315.315 INFO    ] Checking for system updates...
[2026-10-25 15:55:32,353.353 INFO    ] 200
[2026-10-25 15:55:32,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:32,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:32,423.423 INFO    ] No update needed
[2026-10-25 15:55:32,425.425 INFO    ] Checking for camera pi updates...
[2026-10-25 15:55:32,461.461 INFO    ] 200
[2026-10-25 15:55:32,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:32,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:55:32,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:32,549.549 INFO    ] No camera update needed
[2026-10-25 15:55:32,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:55:32,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:55:32,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:55:32,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:55:34,608.608 INFO    ] ================================================
[2026-10-25 15:55:34,623.623 INFO    ] Launching Daemon at Sun Oct 25 15:55:34 IST 2026
[2026-10-25 15:55:34,634.634 INFO    ] ================================================
[2026-10-25 15:55:35,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:55:35
[2026-10-25 15:55:35,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:55:36,039.039 INFO    ] Initializing speech engine...
[2026-10-25 15:55:36,046.046 INFO    ] 2026-10-25 15:55:36
[2026-10-25 15:55:36,341.341 INFO    ] 2026-10-25 15:55:36
[2026-10-25 15:55:36,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:55:36,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:55:36,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:55:36,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:55:36,721.721 INFO    ] time= 25/10/2026 15:55:36
[2026-10-25 15:55:36,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:55:36,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:55:36,846.846 INFO    ] No existing commands found in stream
[2026-10-25 15:55:41,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:55:41,862.862 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 15:55:45,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:55:45,726.726 INFO    ] Checking for system updates...
[2026-10-25 15:55:45,764.764 INFO    ] 200
[2026-10-25 15:55:45,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:45,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:55:45,825.825 INFO    ] No update needed
[2026-10-25 15:55:45,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 15:55:45,863.863 INFO    ] 200
[2026-10-25 15:55:45,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:45,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:55:45,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:55:45,963.963 INFO    ] No camera update needed
[2026-10-25 15:55:45,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:55:45,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:55:45,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:55:45,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:55:48,020.020 INFO    ] ================================================
[2026-10-25 15:55:48,035.035 INFO    ] Launching Daemon at Sun Oct 25 15:55:48 IST 2026
[2026-10-25 15:55:48,046.046 INFO    ] ================================================
[2026-10-25 15:55:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:55:48
[2026-10-25 15:55:49,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:55:49,470.470 INFO    ] Initializing speech engine...
[2026-10-25 15:55:49,480.480 INFO    ] 2026-10-25 15:55:49
[2026-10-25 15:55:49,728.728 INFO    ] 2026-10-25 15:55:49
[2026-10-25 15:55:49,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:55:50,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:55:50,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:55:50,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:55:50,203.203 INFO    ] time= 25/10/2026 15:55:50
[2026-10-25 15:55:50,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:55:50,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:55:50,351.351 INFO    ] No existing commands found in stream
[2026-10-25 15:55:55,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:55:55,368.368 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 15:55:59,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 15:55:59,058.058 INFO    ] Checking for system updates...
[2026-10-25 15:55:59,095.095 INFO    ] 200
[2026-10-25 15:55:59,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:59,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:59,160.160 INFO    ] No update needed
[2026-10-25 15:55:59,162.162 INFO    ] Checking for camera pi updates...
[2026-10-25 15:55:59,196.196 INFO    ] 200
[2026-10-25 15:55:59,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:55:59,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:55:59,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:55:59,306.306 INFO    ] No camera update needed
[2026-10-25 15:55:59,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:55:59,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:55:59,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:55:59,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:56:01,364.364 INFO    ] ================================================
[2026-10-25 15:56:01,380.380 INFO    ] Launching Daemon at Sun Oct 25 15:56:01 IST 2026
[2026-10-25 15:56:01,391.391 INFO    ] ================================================
[2026-10-25 15:56:02,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:56:02
[2026-10-25 15:56:02,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:56:03,235.235 INFO    ] Initializing speech engine...
[2026-10-25 15:56:03,245.245 INFO    ] 2026-10-25 15:56:03
[2026-10-25 15:56:03,535.535 INFO    ] 2026-10-25 15:56:03
[2026-10-25 15:56:03,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:56:03,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:56:03,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:56:03,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:56:03,954.954 INFO    ] time= 25/10/2026 15:56:03
[2026-10-25 15:56:03,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:56:03,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:56:04,117.117 INFO    ] No existing commands found in stream
[2026-10-25 15:56:09,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:56:09,144.144 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 15:56:13,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:56:13,299.299 INFO    ] Checking for system updates...
[2026-10-25 15:56:13,339.339 INFO    ] 200
[2026-10-25 15:56:13,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:13,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:56:13,397.397 INFO    ] No update needed
[2026-10-25 15:56:13,399.399 INFO    ] Checking for camera pi updates...
[2026-10-25 15:56:13,436.436 INFO    ] 200
[2026-10-25 15:56:13,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:13,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:56:13,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:56:13,531.531 INFO    ] No camera update needed
[2026-10-25 15:56:13,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:56:13,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:56:13,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:56:13,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:56:15,589.589 INFO    ] ================================================
[2026-10-25 15:56:15,605.605 INFO    ] Launching Daemon at Sun Oct 25 15:56:15 IST 2026
[2026-10-25 15:56:15,615.615 INFO    ] ================================================
[2026-10-25 15:56:16,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:56:16
[2026-10-25 15:56:16,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:56:17,021.021 INFO    ] Initializing speech engine...
[2026-10-25 15:56:17,045.045 INFO    ] 2026-10-25 15:56:17
[2026-10-25 15:56:17,321.321 INFO    ] 2026-10-25 15:56:17
[2026-10-25 15:56:17,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:56:17,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:56:17,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:56:17,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:56:17,695.695 INFO    ] time= 25/10/2026 15:56:17
[2026-10-25 15:56:17,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:56:17,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:56:17,820.820 INFO    ] No existing commands found in stream
[2026-10-25 15:56:22,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:56:22,834.834 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 15:56:23,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:56:23,312.312 INFO    ] Checking for system updates...
[2026-10-25 15:56:23,349.349 INFO    ] 200
[2026-10-25 15:56:23,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:23,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:56:23,406.406 INFO    ] No update needed
[2026-10-25 15:56:23,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 15:56:23,443.443 INFO    ] 200
[2026-10-25 15:56:23,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:23,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:56:23,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:56:23,639.639 INFO    ] No camera update needed
[2026-10-25 15:56:23,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:56:23,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:56:23,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:56:23,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:56:25,695.695 INFO    ] ================================================
[2026-10-25 15:56:25,710.710 INFO    ] Launching Daemon at Sun Oct 25 15:56:25 IST 2026
[2026-10-25 15:56:25,722.722 INFO    ] ================================================
[2026-10-25 15:56:26,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:56:26
[2026-10-25 15:56:26,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:56:27,156.156 INFO    ] Initializing speech engine...
[2026-10-25 15:56:27,165.165 INFO    ] 2026-10-25 15:56:27
[2026-10-25 15:56:27,423.423 INFO    ] 2026-10-25 15:56:27
[2026-10-25 15:56:27,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:56:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:56:27,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:56:27,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:56:27,853.853 INFO    ] time= 25/10/2026 15:56:27
[2026-10-25 15:56:27,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:56:27,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:56:28,026.026 INFO    ] No existing commands found in stream
[2026-10-25 15:56:33,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:56:33,042.042 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 15:56:34,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:56:34,974.974 INFO    ] Checking for system updates...
[2026-10-25 15:56:35,010.010 INFO    ] 200
[2026-10-25 15:56:35,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:35,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:56:35,067.067 INFO    ] No update needed
[2026-10-25 15:56:35,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 15:56:35,109.109 INFO    ] 200
[2026-10-25 15:56:35,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:35,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:56:35,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:56:35,204.204 INFO    ] No camera update needed
[2026-10-25 15:56:35,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:56:35,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:56:35,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:56:35,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:56:37,260.260 INFO    ] ================================================
[2026-10-25 15:56:37,275.275 INFO    ] Launching Daemon at Sun Oct 25 15:56:37 IST 2026
[2026-10-25 15:56:37,286.286 INFO    ] ================================================
[2026-10-25 15:56:37,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:56:37
[2026-10-25 15:56:38,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:56:38,895.895 INFO    ] Initializing speech engine...
[2026-10-25 15:56:38,904.904 INFO    ] 2026-10-25 15:56:38
[2026-10-25 15:56:39,187.187 INFO    ] 2026-10-25 15:56:39
[2026-10-25 15:56:39,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:56:42,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:56:42,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:56:42,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:56:42,928.928 INFO    ] time= 25/10/2026 15:56:42
[2026-10-25 15:56:42,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:56:42,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:56:42,979.979 INFO    ] No existing commands found in stream
[2026-10-25 15:56:47,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:56:47,992.992 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 15:56:50,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:56:50,286.286 INFO    ] Checking for system updates...
[2026-10-25 15:56:50,323.323 INFO    ] 200
[2026-10-25 15:56:50,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:50,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:56:50,388.388 INFO    ] No update needed
[2026-10-25 15:56:50,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 15:56:50,424.424 INFO    ] 200
[2026-10-25 15:56:50,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:56:50,474.474 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:56:50,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:56:50,524.524 INFO    ] No camera update needed
[2026-10-25 15:56:50,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:56:50,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:56:50,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:56:50,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:56:52,582.582 INFO    ] ================================================
[2026-10-25 15:56:52,598.598 INFO    ] Launching Daemon at Sun Oct 25 15:56:52 IST 2026
[2026-10-25 15:56:52,609.609 INFO    ] ================================================
[2026-10-25 15:56:53,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:56:53
[2026-10-25 15:56:53,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:56:54,013.013 INFO    ] Initializing speech engine...
[2026-10-25 15:56:54,018.018 INFO    ] 2026-10-25 15:56:54
[2026-10-25 15:56:54,318.318 INFO    ] 2026-10-25 15:56:54
[2026-10-25 15:56:54,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:56:54,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:56:54,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:56:54,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:56:54,733.733 INFO    ] time= 25/10/2026 15:56:54
[2026-10-25 15:56:54,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:56:54,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:56:54,819.819 INFO    ] No existing commands found in stream
[2026-10-25 15:56:59,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:56:59,834.834 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 15:57:01,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:57:01,740.740 INFO    ] Checking for system updates...
[2026-10-25 15:57:01,776.776 INFO    ] 200
[2026-10-25 15:57:01,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:01,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:01,848.848 INFO    ] No update needed
[2026-10-25 15:57:01,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 15:57:01,958.958 INFO    ] 200
[2026-10-25 15:57:01,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:02,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:57:02,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:02,087.087 INFO    ] No camera update needed
[2026-10-25 15:57:02,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:57:02,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:57:02,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:57:02,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:57:04,158.158 INFO    ] ================================================
[2026-10-25 15:57:04,174.174 INFO    ] Launching Daemon at Sun Oct 25 15:57:04 IST 2026
[2026-10-25 15:57:04,185.185 INFO    ] ================================================
[2026-10-25 15:57:04,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:57:04
[2026-10-25 15:57:05,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:57:05,611.611 INFO    ] Initializing speech engine...
[2026-10-25 15:57:05,616.616 INFO    ] 2026-10-25 15:57:05
[2026-10-25 15:57:05,862.862 INFO    ] 2026-10-25 15:57:05
[2026-10-25 15:57:05,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:57:06,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:57:06,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:57:06,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:57:06,325.325 INFO    ] time= 25/10/2026 15:57:06
[2026-10-25 15:57:06,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:57:06,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:57:06,482.482 INFO    ] No existing commands found in stream
[2026-10-25 15:57:11,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:57:11,514.514 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 15:57:14,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:57:14,236.236 INFO    ] Checking for system updates...
[2026-10-25 15:57:14,273.273 INFO    ] 200
[2026-10-25 15:57:14,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:14,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:14,338.338 INFO    ] No update needed
[2026-10-25 15:57:14,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 15:57:14,379.379 INFO    ] 200
[2026-10-25 15:57:14,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:14,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:57:14,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:14,491.491 INFO    ] No camera update needed
[2026-10-25 15:57:14,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:57:14,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:57:14,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:57:14,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:57:16,547.547 INFO    ] ================================================
[2026-10-25 15:57:16,563.563 INFO    ] Launching Daemon at Sun Oct 25 15:57:16 IST 2026
[2026-10-25 15:57:16,574.574 INFO    ] ================================================
[2026-10-25 15:57:17,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:57:17
[2026-10-25 15:57:17,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:57:17,978.978 INFO    ] Initializing speech engine...
[2026-10-25 15:57:18,001.001 INFO    ] 2026-10-25 15:57:17
[2026-10-25 15:57:18,276.276 INFO    ] 2026-10-25 15:57:18
[2026-10-25 15:57:18,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:57:18,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:57:18,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:57:18,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:57:18,666.666 INFO    ] time= 25/10/2026 15:57:18
[2026-10-25 15:57:18,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:57:18,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:57:18,796.796 INFO    ] No existing commands found in stream
[2026-10-25 15:57:23,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:57:23,810.810 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 15:57:27,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:57:27,759.759 INFO    ] Checking for system updates...
[2026-10-25 15:57:27,800.800 INFO    ] 200
[2026-10-25 15:57:27,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:27,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:27,858.858 INFO    ] No update needed
[2026-10-25 15:57:27,861.861 INFO    ] Checking for camera pi updates...
[2026-10-25 15:57:27,899.899 INFO    ] 200
[2026-10-25 15:57:27,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:27,943.943 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:57:28,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:57:28,003.003 INFO    ] No camera update needed
[2026-10-25 15:57:28,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:57:28,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:57:28,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:57:28,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:57:30,059.059 INFO    ] ================================================
[2026-10-25 15:57:30,074.074 INFO    ] Launching Daemon at Sun Oct 25 15:57:30 IST 2026
[2026-10-25 15:57:30,086.086 INFO    ] ================================================
[2026-10-25 15:57:30,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:57:30
[2026-10-25 15:57:31,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:57:31,537.537 INFO    ] Initializing speech engine...
[2026-10-25 15:57:31,546.546 INFO    ] 2026-10-25 15:57:31
[2026-10-25 15:57:31,798.798 INFO    ] 2026-10-25 15:57:31
[2026-10-25 15:57:31,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:57:31,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:57:32,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:57:32,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:57:32,155.155 INFO    ] time= 25/10/2026 15:57:32
[2026-10-25 15:57:32,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:57:32,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:57:32,247.247 INFO    ] No existing commands found in stream
[2026-10-25 15:57:37,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:57:37,291.291 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 15:57:40,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:57:40,461.461 INFO    ] Checking for system updates...
[2026-10-25 15:57:40,499.499 INFO    ] 200
[2026-10-25 15:57:40,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:40,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:57:40,568.568 INFO    ] No update needed
[2026-10-25 15:57:40,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 15:57:40,610.610 INFO    ] 200
[2026-10-25 15:57:40,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:40,661.661 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:57:40,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:57:40,715.715 INFO    ] No camera update needed
[2026-10-25 15:57:40,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:57:40,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:57:40,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:57:40,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:57:42,773.773 INFO    ] ================================================
[2026-10-25 15:57:42,789.789 INFO    ] Launching Daemon at Sun Oct 25 15:57:42 IST 2026
[2026-10-25 15:57:42,800.800 INFO    ] ================================================
[2026-10-25 15:57:43,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:57:43
[2026-10-25 15:57:44,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:57:44,447.447 INFO    ] Initializing speech engine...
[2026-10-25 15:57:44,456.456 INFO    ] 2026-10-25 15:57:44
[2026-10-25 15:57:44,747.747 INFO    ] 2026-10-25 15:57:44
[2026-10-25 15:57:44,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:57:45,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:57:45,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:57:45,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:57:45,213.213 INFO    ] time= 25/10/2026 15:57:45
[2026-10-25 15:57:45,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:57:45,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:57:45,365.365 INFO    ] No existing commands found in stream
[2026-10-25 15:57:50,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:57:50,395.395 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 15:57:51,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:57:51,145.145 INFO    ] Checking for system updates...
[2026-10-25 15:57:51,183.183 INFO    ] 200
[2026-10-25 15:57:51,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:51,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:57:51,244.244 INFO    ] No update needed
[2026-10-25 15:57:51,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 15:57:51,286.286 INFO    ] 200
[2026-10-25 15:57:51,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:57:51,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:57:51,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:57:51,386.386 INFO    ] No camera update needed
[2026-10-25 15:57:51,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:57:51,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:57:51,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:57:51,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:57:53,445.445 INFO    ] ================================================
[2026-10-25 15:57:53,461.461 INFO    ] Launching Daemon at Sun Oct 25 15:57:53 IST 2026
[2026-10-25 15:57:53,472.472 INFO    ] ================================================
[2026-10-25 15:57:54,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:57:54
[2026-10-25 15:57:54,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:57:54,921.921 INFO    ] Initializing speech engine...
[2026-10-25 15:57:54,930.930 INFO    ] 2026-10-25 15:57:54
[2026-10-25 15:57:55,192.192 INFO    ] 2026-10-25 15:57:55
[2026-10-25 15:57:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:57:55,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:57:55,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:57:55,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:57:55,639.639 INFO    ] time= 25/10/2026 15:57:55
[2026-10-25 15:57:55,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:57:55,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:57:55,800.800 INFO    ] No existing commands found in stream
[2026-10-25 15:58:00,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:58:00,817.817 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 15:58:03,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:58:03,417.417 INFO    ] Checking for system updates...
[2026-10-25 15:58:03,464.464 INFO    ] 200
[2026-10-25 15:58:03,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:03,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:03,536.536 INFO    ] No update needed
[2026-10-25 15:58:03,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 15:58:03,579.579 INFO    ] 200
[2026-10-25 15:58:03,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:03,627.627 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:58:03,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:03,672.672 INFO    ] No camera update needed
[2026-10-25 15:58:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:58:03,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:58:03,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:58:03,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:58:05,732.732 INFO    ] ================================================
[2026-10-25 15:58:05,747.747 INFO    ] Launching Daemon at Sun Oct 25 15:58:05 IST 2026
[2026-10-25 15:58:05,759.759 INFO    ] ================================================
[2026-10-25 15:58:06,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:58:06
[2026-10-25 15:58:06,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:58:07,211.211 INFO    ] Initializing speech engine...
[2026-10-25 15:58:07,218.218 INFO    ] 2026-10-25 15:58:07
[2026-10-25 15:58:07,479.479 INFO    ] 2026-10-25 15:58:07
[2026-10-25 15:58:07,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:58:07,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:58:07,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:58:07,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:58:07,955.955 INFO    ] time= 25/10/2026 15:58:07
[2026-10-25 15:58:08,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:58:08,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:58:08,087.087 INFO    ] No existing commands found in stream
[2026-10-25 15:58:13,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:58:13,102.102 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 15:58:16,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:58:16,313.313 INFO    ] Checking for system updates...
[2026-10-25 15:58:16,349.349 INFO    ] 200
[2026-10-25 15:58:16,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:16,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:58:16,416.416 INFO    ] No update needed
[2026-10-25 15:58:16,418.418 INFO    ] Checking for camera pi updates...
[2026-10-25 15:58:16,452.452 INFO    ] 200
[2026-10-25 15:58:16,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:16,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:58:16,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:58:16,551.551 INFO    ] No camera update needed
[2026-10-25 15:58:16,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:58:16,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:58:16,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:58:16,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:58:18,608.608 INFO    ] ================================================
[2026-10-25 15:58:18,623.623 INFO    ] Launching Daemon at Sun Oct 25 15:58:18 IST 2026
[2026-10-25 15:58:18,634.634 INFO    ] ================================================
[2026-10-25 15:58:19,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:58:19
[2026-10-25 15:58:19,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:58:20,054.054 INFO    ] Initializing speech engine...
[2026-10-25 15:58:20,063.063 INFO    ] 2026-10-25 15:58:20
[2026-10-25 15:58:20,309.309 INFO    ] 2026-10-25 15:58:20
[2026-10-25 15:58:20,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:58:20,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:58:20,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:58:20,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:58:20,863.863 INFO    ] time= 25/10/2026 15:58:20
[2026-10-25 15:58:20,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:58:20,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:58:20,997.997 INFO    ] No existing commands found in stream
[2026-10-25 15:58:26,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:58:26,027.027 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 15:58:28,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:58:28,381.381 INFO    ] Checking for system updates...
[2026-10-25 15:58:28,417.417 INFO    ] 200
[2026-10-25 15:58:28,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:28,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:28,475.475 INFO    ] No update needed
[2026-10-25 15:58:28,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 15:58:28,511.511 INFO    ] 200
[2026-10-25 15:58:28,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:28,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:58:28,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:28,696.696 INFO    ] No camera update needed
[2026-10-25 15:58:28,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:58:28,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:58:28,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:58:28,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:58:30,752.752 INFO    ] ================================================
[2026-10-25 15:58:30,767.767 INFO    ] Launching Daemon at Sun Oct 25 15:58:30 IST 2026
[2026-10-25 15:58:30,778.778 INFO    ] ================================================
[2026-10-25 15:58:31,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:58:31
[2026-10-25 15:58:31,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:58:32,220.220 INFO    ] Initializing speech engine...
[2026-10-25 15:58:32,236.236 INFO    ] 2026-10-25 15:58:32
[2026-10-25 15:58:32,524.524 INFO    ] 2026-10-25 15:58:32
[2026-10-25 15:58:32,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:58:32,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:58:32,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:58:32,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:58:32,873.873 INFO    ] time= 25/10/2026 15:58:32
[2026-10-25 15:58:32,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:58:32,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:58:33,011.011 INFO    ] No existing commands found in stream
[2026-10-25 15:58:38,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:58:38,027.027 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 15:58:40,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:58:40,069.069 INFO    ] Checking for system updates...
[2026-10-25 15:58:40,109.109 INFO    ] 200
[2026-10-25 15:58:40,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:40,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:40,174.174 INFO    ] No update needed
[2026-10-25 15:58:40,176.176 INFO    ] Checking for camera pi updates...
[2026-10-25 15:58:40,214.214 INFO    ] 200
[2026-10-25 15:58:40,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:40,257.257 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:58:40,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:58:40,303.303 INFO    ] No camera update needed
[2026-10-25 15:58:40,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:58:40,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:58:40,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:58:40,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:58:42,365.365 INFO    ] ================================================
[2026-10-25 15:58:42,380.380 INFO    ] Launching Daemon at Sun Oct 25 15:58:42 IST 2026
[2026-10-25 15:58:42,391.391 INFO    ] ================================================
[2026-10-25 15:58:42,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:58:42
[2026-10-25 15:58:43,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:58:43,822.822 INFO    ] Initializing speech engine...
[2026-10-25 15:58:43,838.838 INFO    ] 2026-10-25 15:58:43
[2026-10-25 15:58:44,092.092 INFO    ] 2026-10-25 15:58:44
[2026-10-25 15:58:44,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:58:46,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:58:46,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:58:46,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:58:46,919.919 INFO    ] time= 25/10/2026 15:58:46
[2026-10-25 15:58:46,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:58:46,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:58:46,974.974 INFO    ] No existing commands found in stream
[2026-10-25 15:58:51,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:58:51,986.986 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 15:58:53,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 15:58:53,373.373 INFO    ] Checking for system updates...
[2026-10-25 15:58:53,408.408 INFO    ] 200
[2026-10-25 15:58:53,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:53,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:58:53,466.466 INFO    ] No update needed
[2026-10-25 15:58:53,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 15:58:53,506.506 INFO    ] 200
[2026-10-25 15:58:53,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:58:53,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:58:53,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:58:53,612.612 INFO    ] No camera update needed
[2026-10-25 15:58:53,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:58:53,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:58:53,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:58:53,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:58:55,666.666 INFO    ] ================================================
[2026-10-25 15:58:55,681.681 INFO    ] Launching Daemon at Sun Oct 25 15:58:55 IST 2026
[2026-10-25 15:58:55,691.691 INFO    ] ================================================
[2026-10-25 15:58:56,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:58:56
[2026-10-25 15:58:56,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:58:57,111.111 INFO    ] Initializing speech engine...
[2026-10-25 15:58:57,119.119 INFO    ] 2026-10-25 15:58:57
[2026-10-25 15:58:57,384.384 INFO    ] 2026-10-25 15:58:57
[2026-10-25 15:58:57,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:58:57,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:58:57,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:58:57,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:58:57,839.839 INFO    ] time= 25/10/2026 15:58:57
[2026-10-25 15:58:57,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:58:57,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:58:58,003.003 INFO    ] No existing commands found in stream
[2026-10-25 15:59:03,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:59:03,018.018 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 15:59:06,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:59:06,352.352 INFO    ] Checking for system updates...
[2026-10-25 15:59:06,389.389 INFO    ] 200
[2026-10-25 15:59:06,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:06,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:59:06,449.449 INFO    ] No update needed
[2026-10-25 15:59:06,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 15:59:06,490.490 INFO    ] 200
[2026-10-25 15:59:06,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:06,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:59:06,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:59:06,589.589 INFO    ] No camera update needed
[2026-10-25 15:59:06,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:59:06,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:59:06,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:59:06,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:59:08,643.643 INFO    ] ================================================
[2026-10-25 15:59:08,659.659 INFO    ] Launching Daemon at Sun Oct 25 15:59:08 IST 2026
[2026-10-25 15:59:08,669.669 INFO    ] ================================================
[2026-10-25 15:59:09,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:59:09
[2026-10-25 15:59:09,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:59:10,127.127 INFO    ] Initializing speech engine...
[2026-10-25 15:59:10,133.133 INFO    ] 2026-10-25 15:59:10
[2026-10-25 15:59:10,395.395 INFO    ] 2026-10-25 15:59:10
[2026-10-25 15:59:10,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:59:10,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:59:10,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:59:10,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:59:10,873.873 INFO    ] time= 25/10/2026 15:59:10
[2026-10-25 15:59:10,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:59:10,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:59:11,002.002 INFO    ] No existing commands found in stream
[2026-10-25 15:59:16,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:59:16,016.016 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 15:59:17,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 15:59:17,663.663 INFO    ] Checking for system updates...
[2026-10-25 15:59:17,704.704 INFO    ] 200
[2026-10-25 15:59:17,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:17,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:17,769.769 INFO    ] No update needed
[2026-10-25 15:59:17,772.772 INFO    ] Checking for camera pi updates...
[2026-10-25 15:59:17,806.806 INFO    ] 200
[2026-10-25 15:59:17,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:17,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:59:17,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:17,903.903 INFO    ] No camera update needed
[2026-10-25 15:59:17,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:59:17,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:59:17,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:59:17,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:59:19,957.957 INFO    ] ================================================
[2026-10-25 15:59:19,972.972 INFO    ] Launching Daemon at Sun Oct 25 15:59:19 IST 2026
[2026-10-25 15:59:19,983.983 INFO    ] ================================================
[2026-10-25 15:59:20,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:59:20
[2026-10-25 15:59:21,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:59:21,386.386 INFO    ] Initializing speech engine...
[2026-10-25 15:59:21,391.391 INFO    ] 2026-10-25 15:59:21
[2026-10-25 15:59:21,692.692 INFO    ] 2026-10-25 15:59:21
[2026-10-25 15:59:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:59:21,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:59:21,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:59:22,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:59:22,059.059 INFO    ] time= 25/10/2026 15:59:22
[2026-10-25 15:59:22,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:59:22,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:59:22,181.181 INFO    ] No existing commands found in stream
[2026-10-25 15:59:27,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:59:27,196.196 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 15:59:31,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 15:59:31,550.550 INFO    ] Checking for system updates...
[2026-10-25 15:59:31,587.587 INFO    ] 200
[2026-10-25 15:59:31,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:31,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:31,652.652 INFO    ] No update needed
[2026-10-25 15:59:31,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 15:59:31,690.690 INFO    ] 200
[2026-10-25 15:59:31,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:31,738.738 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:59:31,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:31,804.804 INFO    ] No camera update needed
[2026-10-25 15:59:31,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:59:31,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:59:31,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:59:31,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:59:33,858.858 INFO    ] ================================================
[2026-10-25 15:59:33,873.873 INFO    ] Launching Daemon at Sun Oct 25 15:59:33 IST 2026
[2026-10-25 15:59:33,884.884 INFO    ] ================================================
[2026-10-25 15:59:34,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:59:34
[2026-10-25 15:59:35,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:59:35,512.512 INFO    ] Initializing speech engine...
[2026-10-25 15:59:35,520.520 INFO    ] 2026-10-25 15:59:35
[2026-10-25 15:59:35,811.811 INFO    ] 2026-10-25 15:59:35
[2026-10-25 15:59:35,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:59:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:59:36,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:59:36,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:59:36,275.275 INFO    ] time= 25/10/2026 15:59:36
[2026-10-25 15:59:36,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:59:36,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:59:36,474.474 INFO    ] No existing commands found in stream
[2026-10-25 15:59:41,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:59:41,511.511 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 15:59:43,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 15:59:43,300.300 INFO    ] Checking for system updates...
[2026-10-25 15:59:43,341.341 INFO    ] 200
[2026-10-25 15:59:43,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:43,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:59:43,406.406 INFO    ] No update needed
[2026-10-25 15:59:43,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 15:59:43,442.442 INFO    ] 200
[2026-10-25 15:59:43,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:43,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:59:43,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 15:59:43,539.539 INFO    ] No camera update needed
[2026-10-25 15:59:43,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:59:43,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:59:43,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:59:43,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:59:45,593.593 INFO    ] ================================================
[2026-10-25 15:59:45,608.608 INFO    ] Launching Daemon at Sun Oct 25 15:59:45 IST 2026
[2026-10-25 15:59:45,619.619 INFO    ] ================================================
[2026-10-25 15:59:46,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:59:46
[2026-10-25 15:59:46,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 15:59:47,242.242 INFO    ] Initializing speech engine...
[2026-10-25 15:59:47,250.250 INFO    ] 2026-10-25 15:59:47
[2026-10-25 15:59:47,542.542 INFO    ] 2026-10-25 15:59:47
[2026-10-25 15:59:47,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 15:59:48,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 15:59:48,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 15:59:48,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 15:59:48,481.481 INFO    ] time= 25/10/2026 15:59:48
[2026-10-25 15:59:48,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 15:59:48,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 15:59:48,650.650 INFO    ] No existing commands found in stream
[2026-10-25 15:59:53,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 15:59:53,678.678 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 15:59:56,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 15:59:56,953.953 INFO    ] Checking for system updates...
[2026-10-25 15:59:56,994.994 INFO    ] 200
[2026-10-25 15:59:56,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:57,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:57,058.058 INFO    ] No update needed
[2026-10-25 15:59:57,061.061 INFO    ] Checking for camera pi updates...
[2026-10-25 15:59:57,098.098 INFO    ] 200
[2026-10-25 15:59:57,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 15:59:57,141.141 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 15:59:57,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 15:59:57,188.188 INFO    ] No camera update needed
[2026-10-25 15:59:57,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 15:59:57,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 15:59:57,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 15:59:57,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 15:59:59,243.243 INFO    ] ================================================
[2026-10-25 15:59:59,258.258 INFO    ] Launching Daemon at Sun Oct 25 15:59:59 IST 2026
[2026-10-25 15:59:59,269.269 INFO    ] ================================================
[2026-10-25 15:59:59,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 15:59:59
[2026-10-25 16:00:00,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:00:00,728.728 INFO    ] Initializing speech engine...
[2026-10-25 16:00:00,733.733 INFO    ] 2026-10-25 16:00:00
[2026-10-25 16:00:00,980.980 INFO    ] 2026-10-25 16:00:00
[2026-10-25 16:00:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:00:01,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:00:01,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:00:01,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:00:01,458.458 INFO    ] time= 25/10/2026 16:00:01
[2026-10-25 16:00:01,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:00:01,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:00:01,623.623 INFO    ] No existing commands found in stream
[2026-10-25 16:00:06,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:00:06,670.670 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 16:00:10,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:00:10,564.564 INFO    ] Checking for system updates...
[2026-10-25 16:00:10,612.612 INFO    ] 200
[2026-10-25 16:00:10,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:10,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:00:10,677.677 INFO    ] No update needed
[2026-10-25 16:00:10,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 16:00:10,718.718 INFO    ] 200
[2026-10-25 16:00:10,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:10,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:00:10,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:00:10,836.836 INFO    ] No camera update needed
[2026-10-25 16:00:10,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:00:10,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:00:10,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:00:10,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:00:12,893.893 INFO    ] ================================================
[2026-10-25 16:00:12,909.909 INFO    ] Launching Daemon at Sun Oct 25 16:00:12 IST 2026
[2026-10-25 16:00:12,921.921 INFO    ] ================================================
[2026-10-25 16:00:13,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:00:13
[2026-10-25 16:00:14,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:00:14,557.557 INFO    ] Initializing speech engine...
[2026-10-25 16:00:14,571.571 INFO    ] 2026-10-25 16:00:14
[2026-10-25 16:00:14,857.857 INFO    ] 2026-10-25 16:00:14
[2026-10-25 16:00:14,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:00:15,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:00:15,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:00:15,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:00:15,386.386 INFO    ] time= 25/10/2026 16:00:15
[2026-10-25 16:00:15,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:00:15,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:00:15,544.544 INFO    ] No existing commands found in stream
[2026-10-25 16:00:20,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:00:20,559.559 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 16:00:24,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:00:24,664.664 INFO    ] Checking for system updates...
[2026-10-25 16:00:24,706.706 INFO    ] 200
[2026-10-25 16:00:24,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:24,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:00:24,766.766 INFO    ] No update needed
[2026-10-25 16:00:24,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 16:00:24,808.808 INFO    ] 200
[2026-10-25 16:00:24,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:24,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:00:24,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:00:24,917.917 INFO    ] No camera update needed
[2026-10-25 16:00:24,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:00:24,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:00:24,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:00:24,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:00:26,977.977 INFO    ] ================================================
[2026-10-25 16:00:26,992.992 INFO    ] Launching Daemon at Sun Oct 25 16:00:26 IST 2026
[2026-10-25 16:00:27,004.004 INFO    ] ================================================
[2026-10-25 16:00:27,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:00:27
[2026-10-25 16:00:28,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:00:28,449.449 INFO    ] Initializing speech engine...
[2026-10-25 16:00:28,462.462 INFO    ] 2026-10-25 16:00:28
[2026-10-25 16:00:28,749.749 INFO    ] 2026-10-25 16:00:28
[2026-10-25 16:00:28,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:00:28,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:00:28,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:00:29,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:00:29,140.140 INFO    ] time= 25/10/2026 16:00:29
[2026-10-25 16:00:29,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:00:29,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:00:29,247.247 INFO    ] No existing commands found in stream
[2026-10-25 16:00:34,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:00:34,263.263 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 16:00:36,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:00:36,207.207 INFO    ] Checking for system updates...
[2026-10-25 16:00:36,244.244 INFO    ] 200
[2026-10-25 16:00:36,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:36,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:00:36,310.310 INFO    ] No update needed
[2026-10-25 16:00:36,312.312 INFO    ] Checking for camera pi updates...
[2026-10-25 16:00:36,347.347 INFO    ] 200
[2026-10-25 16:00:36,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:36,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:00:36,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:00:36,451.451 INFO    ] No camera update needed
[2026-10-25 16:00:36,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:00:36,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:00:36,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:00:36,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:00:38,510.510 INFO    ] ================================================
[2026-10-25 16:00:38,526.526 INFO    ] Launching Daemon at Sun Oct 25 16:00:38 IST 2026
[2026-10-25 16:00:38,538.538 INFO    ] ================================================
[2026-10-25 16:00:39,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:00:39
[2026-10-25 16:00:39,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:00:39,972.972 INFO    ] Initializing speech engine...
[2026-10-25 16:00:39,983.983 INFO    ] 2026-10-25 16:00:39
[2026-10-25 16:00:40,231.231 INFO    ] 2026-10-25 16:00:40
[2026-10-25 16:00:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:00:40,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:00:40,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:00:40,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:00:40,710.710 INFO    ] time= 25/10/2026 16:00:40
[2026-10-25 16:00:40,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:00:40,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:00:40,858.858 INFO    ] No existing commands found in stream
[2026-10-25 16:00:45,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:00:45,873.873 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 16:00:49,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:00:49,898.898 INFO    ] Checking for system updates...
[2026-10-25 16:00:49,937.937 INFO    ] 200
[2026-10-25 16:00:49,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:49,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:00:50,001.001 INFO    ] No update needed
[2026-10-25 16:00:50,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 16:00:50,040.040 INFO    ] 200
[2026-10-25 16:00:50,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:00:50,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:00:50,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:00:50,135.135 INFO    ] No camera update needed
[2026-10-25 16:00:50,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:00:50,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:00:50,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:00:50,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:00:52,190.190 INFO    ] ================================================
[2026-10-25 16:00:52,206.206 INFO    ] Launching Daemon at Sun Oct 25 16:00:52 IST 2026
[2026-10-25 16:00:52,217.217 INFO    ] ================================================
[2026-10-25 16:00:52,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:00:52
[2026-10-25 16:00:53,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:00:53,667.667 INFO    ] Initializing speech engine...
[2026-10-25 16:00:53,676.676 INFO    ] 2026-10-25 16:00:53
[2026-10-25 16:00:53,925.925 INFO    ] 2026-10-25 16:00:53
[2026-10-25 16:00:53,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:00:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:00:54,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:00:54,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:00:54,415.415 INFO    ] time= 25/10/2026 16:00:54
[2026-10-25 16:00:54,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:00:54,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:00:54,542.542 INFO    ] No existing commands found in stream
[2026-10-25 16:00:59,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:00:59,557.557 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 16:01:01,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:01:01,740.740 INFO    ] Checking for system updates...
[2026-10-25 16:01:01,780.780 INFO    ] 200
[2026-10-25 16:01:01,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:01,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:01,857.857 INFO    ] No update needed
[2026-10-25 16:01:01,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 16:01:01,922.922 INFO    ] 200
[2026-10-25 16:01:01,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:01,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:01:02,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:02,035.035 INFO    ] No camera update needed
[2026-10-25 16:01:02,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:01:02,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:01:02,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:01:02,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:01:04,100.100 INFO    ] ================================================
[2026-10-25 16:01:04,116.116 INFO    ] Launching Daemon at Sun Oct 25 16:01:04 IST 2026
[2026-10-25 16:01:04,128.128 INFO    ] ================================================
[2026-10-25 16:01:04,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:01:04
[2026-10-25 16:01:05,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:01:05,576.576 INFO    ] Initializing speech engine...
[2026-10-25 16:01:05,587.587 INFO    ] 2026-10-25 16:01:05
[2026-10-25 16:01:05,834.834 INFO    ] 2026-10-25 16:01:05
[2026-10-25 16:01:05,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:01:06,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:01:06,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:01:06,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:01:06,312.312 INFO    ] time= 25/10/2026 16:01:06
[2026-10-25 16:01:06,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:01:06,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:01:06,459.459 INFO    ] No existing commands found in stream
[2026-10-25 16:01:11,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:01:11,482.482 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 16:01:15,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:01:15,876.876 INFO    ] Checking for system updates...
[2026-10-25 16:01:15,912.912 INFO    ] 200
[2026-10-25 16:01:15,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:15,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:15,971.971 INFO    ] No update needed
[2026-10-25 16:01:15,974.974 INFO    ] Checking for camera pi updates...
[2026-10-25 16:01:16,008.008 INFO    ] 200
[2026-10-25 16:01:16,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:16,061.061 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:01:16,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:16,115.115 INFO    ] No camera update needed
[2026-10-25 16:01:16,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:01:16,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:01:16,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:01:16,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:01:18,173.173 INFO    ] ================================================
[2026-10-25 16:01:18,188.188 INFO    ] Launching Daemon at Sun Oct 25 16:01:18 IST 2026
[2026-10-25 16:01:18,199.199 INFO    ] ================================================
[2026-10-25 16:01:18,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:01:18
[2026-10-25 16:01:19,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:01:19,776.776 INFO    ] Initializing speech engine...
[2026-10-25 16:01:19,799.799 INFO    ] 2026-10-25 16:01:19
[2026-10-25 16:01:20,056.056 INFO    ] 2026-10-25 16:01:20
[2026-10-25 16:01:20,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:01:20,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:01:20,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:01:20,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:01:20,853.853 INFO    ] time= 25/10/2026 16:01:20
[2026-10-25 16:01:20,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:01:20,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:01:21,046.046 INFO    ] No existing commands found in stream
[2026-10-25 16:01:26,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:01:26,069.069 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 16:01:30,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:01:30,218.218 INFO    ] Checking for system updates...
[2026-10-25 16:01:30,257.257 INFO    ] 200
[2026-10-25 16:01:30,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:30,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:30,322.322 INFO    ] No update needed
[2026-10-25 16:01:30,325.325 INFO    ] Checking for camera pi updates...
[2026-10-25 16:01:30,359.359 INFO    ] 200
[2026-10-25 16:01:30,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:30,402.402 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:01:30,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:30,456.456 INFO    ] No camera update needed
[2026-10-25 16:01:30,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:01:30,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:01:30,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:01:30,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:01:32,517.517 INFO    ] ================================================
[2026-10-25 16:01:32,533.533 INFO    ] Launching Daemon at Sun Oct 25 16:01:32 IST 2026
[2026-10-25 16:01:32,544.544 INFO    ] ================================================
[2026-10-25 16:01:33,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:01:33
[2026-10-25 16:01:33,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:01:34,142.142 INFO    ] Initializing speech engine...
[2026-10-25 16:01:34,153.153 INFO    ] 2026-10-25 16:01:34
[2026-10-25 16:01:34,424.424 INFO    ] 2026-10-25 16:01:34
[2026-10-25 16:01:34,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:01:34,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:01:34,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:01:34,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:01:34,902.902 INFO    ] time= 25/10/2026 16:01:34
[2026-10-25 16:01:34,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:01:34,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:01:35,055.055 INFO    ] No existing commands found in stream
[2026-10-25 16:01:40,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:01:40,071.071 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 16:01:43,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:01:43,285.285 INFO    ] Checking for system updates...
[2026-10-25 16:01:43,330.330 INFO    ] 200
[2026-10-25 16:01:43,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:43,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:43,398.398 INFO    ] No update needed
[2026-10-25 16:01:43,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 16:01:43,440.440 INFO    ] 200
[2026-10-25 16:01:43,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:43,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:01:43,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:01:43,550.550 INFO    ] No camera update needed
[2026-10-25 16:01:43,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:01:43,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:01:43,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:01:43,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:01:45,611.611 INFO    ] ================================================
[2026-10-25 16:01:45,626.626 INFO    ] Launching Daemon at Sun Oct 25 16:01:45 IST 2026
[2026-10-25 16:01:45,638.638 INFO    ] ================================================
[2026-10-25 16:01:46,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:01:46
[2026-10-25 16:01:46,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:01:47,101.101 INFO    ] Initializing speech engine...
[2026-10-25 16:01:47,109.109 INFO    ] 2026-10-25 16:01:47
[2026-10-25 16:01:47,407.407 INFO    ] 2026-10-25 16:01:47
[2026-10-25 16:01:47,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:01:51,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:01:51,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:01:51,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:01:51,759.759 INFO    ] time= 25/10/2026 16:01:51
[2026-10-25 16:01:51,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:01:51,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:01:51,811.811 INFO    ] No existing commands found in stream
[2026-10-25 16:01:56,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:01:56,823.823 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 16:01:57,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:01:57,334.334 INFO    ] Checking for system updates...
[2026-10-25 16:01:57,374.374 INFO    ] 200
[2026-10-25 16:01:57,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:57,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:01:57,433.433 INFO    ] No update needed
[2026-10-25 16:01:57,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 16:01:57,473.473 INFO    ] 200
[2026-10-25 16:01:57,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:01:57,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:01:57,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:01:57,568.568 INFO    ] No camera update needed
[2026-10-25 16:01:57,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:01:57,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:01:57,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:01:57,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:01:59,625.625 INFO    ] ================================================
[2026-10-25 16:01:59,643.643 INFO    ] Launching Daemon at Sun Oct 25 16:01:59 IST 2026
[2026-10-25 16:01:59,653.653 INFO    ] ================================================
[2026-10-25 16:02:00,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:02:00
[2026-10-25 16:02:00,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:02:01,136.136 INFO    ] Initializing speech engine...
[2026-10-25 16:02:01,144.144 INFO    ] 2026-10-25 16:02:01
[2026-10-25 16:02:01,603.603 INFO    ] 2026-10-25 16:02:01
[2026-10-25 16:02:01,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:02:01,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:02:01,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:02:02,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:02:02,043.043 INFO    ] time= 25/10/2026 16:02:02
[2026-10-25 16:02:02,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:02:02,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:02:02,210.210 INFO    ] No existing commands found in stream
[2026-10-25 16:02:07,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:02:07,237.237 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 16:02:09,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:02:09,456.456 INFO    ] Checking for system updates...
[2026-10-25 16:02:09,492.492 INFO    ] 200
[2026-10-25 16:02:09,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:09,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:09,549.549 INFO    ] No update needed
[2026-10-25 16:02:09,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 16:02:09,594.594 INFO    ] 200
[2026-10-25 16:02:09,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:09,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:02:09,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:09,690.690 INFO    ] No camera update needed
[2026-10-25 16:02:09,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:02:09,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:02:09,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:02:09,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:02:11,745.745 INFO    ] ================================================
[2026-10-25 16:02:11,761.761 INFO    ] Launching Daemon at Sun Oct 25 16:02:11 IST 2026
[2026-10-25 16:02:11,772.772 INFO    ] ================================================
[2026-10-25 16:02:12,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:02:12
[2026-10-25 16:02:12,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:02:13,232.232 INFO    ] Initializing speech engine...
[2026-10-25 16:02:13,238.238 INFO    ] 2026-10-25 16:02:13
[2026-10-25 16:02:13,502.502 INFO    ] 2026-10-25 16:02:13
[2026-10-25 16:02:13,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:02:13,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:02:13,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:02:13,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:02:13,963.963 INFO    ] time= 25/10/2026 16:02:13
[2026-10-25 16:02:14,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:02:14,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:02:14,115.115 INFO    ] No existing commands found in stream
[2026-10-25 16:02:19,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:02:19,130.130 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 16:02:22,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:02:22,791.791 INFO    ] Checking for system updates...
[2026-10-25 16:02:22,828.828 INFO    ] 200
[2026-10-25 16:02:22,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:22,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:22,886.886 INFO    ] No update needed
[2026-10-25 16:02:22,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 16:02:22,923.923 INFO    ] 200
[2026-10-25 16:02:22,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:22,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:02:23,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:23,016.016 INFO    ] No camera update needed
[2026-10-25 16:02:23,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:02:23,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:02:23,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:02:23,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:02:25,071.071 INFO    ] ================================================
[2026-10-25 16:02:25,087.087 INFO    ] Launching Daemon at Sun Oct 25 16:02:25 IST 2026
[2026-10-25 16:02:25,098.098 INFO    ] ================================================
[2026-10-25 16:02:25,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:02:25
[2026-10-25 16:02:26,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:02:26,559.559 INFO    ] Initializing speech engine...
[2026-10-25 16:02:26,568.568 INFO    ] 2026-10-25 16:02:26
[2026-10-25 16:02:26,831.831 INFO    ] 2026-10-25 16:02:26
[2026-10-25 16:02:26,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:02:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:02:27,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:02:27,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:02:27,301.301 INFO    ] time= 25/10/2026 16:02:27
[2026-10-25 16:02:27,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:02:27,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:02:27,357.357 INFO    ] No existing commands found in stream
[2026-10-25 16:02:32,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:02:32,369.369 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 16:02:36,552.552 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:02:36,555.555 INFO    ] Checking for system updates...
[2026-10-25 16:02:36,591.591 INFO    ] 200
[2026-10-25 16:02:36,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:36,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:36,656.656 INFO    ] No update needed
[2026-10-25 16:02:36,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 16:02:36,697.697 INFO    ] 200
[2026-10-25 16:02:36,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:36,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:02:36,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:36,915.915 INFO    ] No camera update needed
[2026-10-25 16:02:36,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:02:36,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:02:36,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:02:36,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:02:38,972.972 INFO    ] ================================================
[2026-10-25 16:02:38,988.988 INFO    ] Launching Daemon at Sun Oct 25 16:02:38 IST 2026
[2026-10-25 16:02:39,999.999 INFO    ] ================================================
[2026-10-25 16:02:39,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:02:39
[2026-10-25 16:02:40,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:02:40,538.538 INFO    ] Initializing speech engine...
[2026-10-25 16:02:40,545.545 INFO    ] 2026-10-25 16:02:40
[2026-10-25 16:02:40,842.842 INFO    ] 2026-10-25 16:02:40
[2026-10-25 16:02:40,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:02:41,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:02:41,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:02:41,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:02:41,223.223 INFO    ] time= 25/10/2026 16:02:41
[2026-10-25 16:02:41,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:02:41,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:02:41,347.347 INFO    ] No existing commands found in stream
[2026-10-25 16:02:46,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:02:46,363.363 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 16:02:52,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:02:52,825.825 INFO    ] Checking for system updates...
[2026-10-25 16:02:52,865.865 INFO    ] 200
[2026-10-25 16:02:52,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:52,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:52,924.924 INFO    ] No update needed
[2026-10-25 16:02:52,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 16:02:52,961.961 INFO    ] 200
[2026-10-25 16:02:52,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:02:53,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:02:53,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:02:53,057.057 INFO    ] No camera update needed
[2026-10-25 16:02:53,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:02:53,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:02:53,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:02:53,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:02:55,115.115 INFO    ] ================================================
[2026-10-25 16:02:55,133.133 INFO    ] Launching Daemon at Sun Oct 25 16:02:55 IST 2026
[2026-10-25 16:02:55,145.145 INFO    ] ================================================
[2026-10-25 16:02:55,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:02:55
[2026-10-25 16:02:56,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:02:56,675.675 INFO    ] Initializing speech engine...
[2026-10-25 16:02:56,682.682 INFO    ] 2026-10-25 16:02:56
[2026-10-25 16:02:56,995.995 INFO    ] 2026-10-25 16:02:56
[2026-10-25 16:02:57,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:02:57,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:02:57,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:02:57,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:02:57,438.438 INFO    ] time= 25/10/2026 16:02:57
[2026-10-25 16:02:57,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:02:57,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:02:57,529.529 INFO    ] No existing commands found in stream
[2026-10-25 16:03:02,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:03:02,548.548 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 16:03:03,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:03:03,823.823 INFO    ] Checking for system updates...
[2026-10-25 16:03:03,859.859 INFO    ] 200
[2026-10-25 16:03:03,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:03,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:03:03,923.923 INFO    ] No update needed
[2026-10-25 16:03:03,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 16:03:03,963.963 INFO    ] 200
[2026-10-25 16:03:03,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:04,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:03:04,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:03:04,061.061 INFO    ] No camera update needed
[2026-10-25 16:03:04,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:03:04,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:03:04,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:03:04,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:03:06,116.116 INFO    ] ================================================
[2026-10-25 16:03:06,132.132 INFO    ] Launching Daemon at Sun Oct 25 16:03:06 IST 2026
[2026-10-25 16:03:06,144.144 INFO    ] ================================================
[2026-10-25 16:03:06,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:03:06
[2026-10-25 16:03:07,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:03:07,597.597 INFO    ] Initializing speech engine...
[2026-10-25 16:03:07,607.607 INFO    ] 2026-10-25 16:03:07
[2026-10-25 16:03:07,855.855 INFO    ] 2026-10-25 16:03:07
[2026-10-25 16:03:07,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:03:08,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:03:08,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:03:08,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:03:08,323.323 INFO    ] time= 25/10/2026 16:03:08
[2026-10-25 16:03:08,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:03:08,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:03:08,472.472 INFO    ] No existing commands found in stream
[2026-10-25 16:03:13,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:03:13,487.487 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 16:03:15,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:03:17,293.293 INFO    ] Checking for system updates...
[2026-10-25 16:03:17,773.773 INFO    ] 200
[2026-10-25 16:03:17,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 16:03:17,778.778 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 16:03:17,781.781 INFO    ] Checking for camera pi updates...
[2026-10-25 16:03:17,829.829 INFO    ] 200
[2026-10-25 16:03:17,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 16:03:17,835.835 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 16:03:17,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:03:17,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:03:17,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:03:17,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:03:19,895.895 INFO    ] ================================================
[2026-10-25 16:03:19,912.912 INFO    ] Launching Daemon at Sun Oct 25 16:03:19 IST 2026
[2026-10-25 16:03:19,924.924 INFO    ] ================================================
[2026-10-25 16:03:20,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:03:20
[2026-10-25 16:03:21,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:03:21,667.667 INFO    ] Initializing speech engine...
[2026-10-25 16:03:21,682.682 INFO    ] 2026-10-25 16:03:21
[2026-10-25 16:03:21,956.956 INFO    ] 2026-10-25 16:03:21
[2026-10-25 16:03:21,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:03:23,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:03:23,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:03:23,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:03:24,000.000 INFO    ] time= 25/10/2026 16:03:23
[2026-10-25 16:03:24,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:03:24,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:03:24,066.066 INFO    ] No existing commands found in stream
[2026-10-25 16:03:29,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:03:29,078.078 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 16:03:30,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:03:30,065.065 INFO    ] Checking for system updates...
[2026-10-25 16:03:30,101.101 INFO    ] 200
[2026-10-25 16:03:30,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:30,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:03:30,158.158 INFO    ] No update needed
[2026-10-25 16:03:30,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 16:03:30,194.194 INFO    ] 200
[2026-10-25 16:03:30,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:30,243.243 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:03:30,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:03:30,289.289 INFO    ] No camera update needed
[2026-10-25 16:03:30,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:03:30,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:03:30,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:03:30,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:03:32,346.346 INFO    ] ================================================
[2026-10-25 16:03:32,371.371 INFO    ] Launching Daemon at Sun Oct 25 16:03:32 IST 2026
[2026-10-25 16:03:32,383.383 INFO    ] ================================================
[2026-10-25 16:03:32,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:03:32
[2026-10-25 16:03:33,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:03:33,860.860 INFO    ] Initializing speech engine...
[2026-10-25 16:03:33,870.870 INFO    ] 2026-10-25 16:03:33
[2026-10-25 16:03:34,117.117 INFO    ] 2026-10-25 16:03:34
[2026-10-25 16:03:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:03:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:03:34,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:03:34,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:03:34,586.586 INFO    ] time= 25/10/2026 16:03:34
[2026-10-25 16:03:34,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:03:34,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:03:34,735.735 INFO    ] No existing commands found in stream
[2026-10-25 16:03:39,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:03:39,750.750 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 16:03:43,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:03:43,981.981 INFO    ] Checking for system updates...
[2026-10-25 16:03:44,021.021 INFO    ] 200
[2026-10-25 16:03:44,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:44,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:03:44,087.087 INFO    ] No update needed
[2026-10-25 16:03:44,089.089 INFO    ] Checking for camera pi updates...
[2026-10-25 16:03:44,127.127 INFO    ] 200
[2026-10-25 16:03:44,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:44,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:03:44,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:03:44,246.246 INFO    ] No camera update needed
[2026-10-25 16:03:44,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:03:44,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:03:44,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:03:44,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:03:46,306.306 INFO    ] ================================================
[2026-10-25 16:03:46,322.322 INFO    ] Launching Daemon at Sun Oct 25 16:03:46 IST 2026
[2026-10-25 16:03:46,333.333 INFO    ] ================================================
[2026-10-25 16:03:46,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:03:46
[2026-10-25 16:03:47,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:03:47,781.781 INFO    ] Initializing speech engine...
[2026-10-25 16:03:47,805.805 INFO    ] 2026-10-25 16:03:47
[2026-10-25 16:03:48,086.086 INFO    ] 2026-10-25 16:03:48
[2026-10-25 16:03:48,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:03:48,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:03:48,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:03:48,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:03:48,490.490 INFO    ] time= 25/10/2026 16:03:48
[2026-10-25 16:03:48,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:03:48,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:03:48,599.599 INFO    ] No existing commands found in stream
[2026-10-25 16:03:53,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:03:53,615.615 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 16:03:55,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:03:55,992.992 INFO    ] Checking for system updates...
[2026-10-25 16:03:56,028.028 INFO    ] 200
[2026-10-25 16:03:56,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:56,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:03:56,094.094 INFO    ] No update needed
[2026-10-25 16:03:56,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 16:03:56,131.131 INFO    ] 200
[2026-10-25 16:03:56,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:03:56,178.178 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:03:56,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:03:56,228.228 INFO    ] No camera update needed
[2026-10-25 16:03:56,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:03:56,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:03:56,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:03:56,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:03:58,283.283 INFO    ] ================================================
[2026-10-25 16:03:58,299.299 INFO    ] Launching Daemon at Sun Oct 25 16:03:58 IST 2026
[2026-10-25 16:03:58,311.311 INFO    ] ================================================
[2026-10-25 16:03:58,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:03:58
[2026-10-25 16:03:59,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:03:59,762.762 INFO    ] Initializing speech engine...
[2026-10-25 16:03:59,771.771 INFO    ] 2026-10-25 16:03:59
[2026-10-25 16:04:00,069.069 INFO    ] 2026-10-25 16:04:00
[2026-10-25 16:04:00,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:04:00,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:04:00,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:04:00,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:04:00,455.455 INFO    ] time= 25/10/2026 16:04:00
[2026-10-25 16:04:00,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:04:00,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:04:00,581.581 INFO    ] No existing commands found in stream
[2026-10-25 16:04:05,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:04:05,596.596 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 16:04:06,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:04:06,649.649 INFO    ] Checking for system updates...
[2026-10-25 16:04:06,685.685 INFO    ] 200
[2026-10-25 16:04:06,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:06,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:06,743.743 INFO    ] No update needed
[2026-10-25 16:04:06,746.746 INFO    ] Checking for camera pi updates...
[2026-10-25 16:04:06,784.784 INFO    ] 200
[2026-10-25 16:04:06,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:06,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:04:06,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:06,878.878 INFO    ] No camera update needed
[2026-10-25 16:04:06,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:04:06,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:04:06,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:04:06,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:04:08,934.934 INFO    ] ================================================
[2026-10-25 16:04:08,950.950 INFO    ] Launching Daemon at Sun Oct 25 16:04:08 IST 2026
[2026-10-25 16:04:08,961.961 INFO    ] ================================================
[2026-10-25 16:04:09,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:04:09
[2026-10-25 16:04:10,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:04:10,397.397 INFO    ] Initializing speech engine...
[2026-10-25 16:04:10,413.413 INFO    ] 2026-10-25 16:04:10
[2026-10-25 16:04:10,701.701 INFO    ] 2026-10-25 16:04:10
[2026-10-25 16:04:10,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:04:10,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:04:10,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:04:11,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:04:11,084.084 INFO    ] time= 25/10/2026 16:04:11
[2026-10-25 16:04:11,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:04:11,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:04:11,213.213 INFO    ] No existing commands found in stream
[2026-10-25 16:04:16,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:04:16,229.229 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 16:04:17,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:04:17,857.857 INFO    ] Checking for system updates...
[2026-10-25 16:04:17,897.897 INFO    ] 200
[2026-10-25 16:04:17,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:17,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:17,963.963 INFO    ] No update needed
[2026-10-25 16:04:17,966.966 INFO    ] Checking for camera pi updates...
[2026-10-25 16:04:18,000.000 INFO    ] 200
[2026-10-25 16:04:18,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:18,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:04:18,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:18,099.099 INFO    ] No camera update needed
[2026-10-25 16:04:18,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:04:18,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:04:18,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:04:18,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:04:20,154.154 INFO    ] ================================================
[2026-10-25 16:04:20,169.169 INFO    ] Launching Daemon at Sun Oct 25 16:04:20 IST 2026
[2026-10-25 16:04:20,180.180 INFO    ] ================================================
[2026-10-25 16:04:20,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:04:20
[2026-10-25 16:04:21,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:04:21,618.618 INFO    ] Initializing speech engine...
[2026-10-25 16:04:21,635.635 INFO    ] 2026-10-25 16:04:21
[2026-10-25 16:04:21,893.893 INFO    ] 2026-10-25 16:04:21
[2026-10-25 16:04:21,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:04:25,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:04:25,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:04:25,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:04:25,577.577 INFO    ] time= 25/10/2026 16:04:25
[2026-10-25 16:04:25,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:04:25,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:04:25,633.633 INFO    ] No existing commands found in stream
[2026-10-25 16:04:30,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:04:30,645.645 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 16:04:32,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:04:32,793.793 INFO    ] Checking for system updates...
[2026-10-25 16:04:32,834.834 INFO    ] 200
[2026-10-25 16:04:32,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:32,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:04:32,894.894 INFO    ] No update needed
[2026-10-25 16:04:32,896.896 INFO    ] Checking for camera pi updates...
[2026-10-25 16:04:32,931.931 INFO    ] 200
[2026-10-25 16:04:32,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:32,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:04:33,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:04:33,010.010 INFO    ] No camera update needed
[2026-10-25 16:04:33,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:04:33,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:04:33,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:04:33,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:04:35,066.066 INFO    ] ================================================
[2026-10-25 16:04:35,081.081 INFO    ] Launching Daemon at Sun Oct 25 16:04:35 IST 2026
[2026-10-25 16:04:35,092.092 INFO    ] ================================================
[2026-10-25 16:04:35,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:04:35
[2026-10-25 16:04:36,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:04:36,490.490 INFO    ] Initializing speech engine...
[2026-10-25 16:04:36,502.502 INFO    ] 2026-10-25 16:04:36
[2026-10-25 16:04:36,768.768 INFO    ] 2026-10-25 16:04:36
[2026-10-25 16:04:36,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:04:37,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:04:37,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:04:37,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:04:37,252.252 INFO    ] time= 25/10/2026 16:04:37
[2026-10-25 16:04:37,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:04:37,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:04:37,399.399 INFO    ] No existing commands found in stream
[2026-10-25 16:04:42,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:04:42,414.414 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 16:04:43,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:04:43,381.381 INFO    ] Checking for system updates...
[2026-10-25 16:04:43,416.416 INFO    ] 200
[2026-10-25 16:04:43,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:43,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:43,474.474 INFO    ] No update needed
[2026-10-25 16:04:43,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 16:04:43,511.511 INFO    ] 200
[2026-10-25 16:04:43,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:43,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:04:43,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:43,718.718 INFO    ] No camera update needed
[2026-10-25 16:04:43,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:04:43,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:04:43,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:04:43,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:04:45,775.775 INFO    ] ================================================
[2026-10-25 16:04:45,790.790 INFO    ] Launching Daemon at Sun Oct 25 16:04:45 IST 2026
[2026-10-25 16:04:45,801.801 INFO    ] ================================================
[2026-10-25 16:04:46,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:04:46
[2026-10-25 16:04:46,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:04:47,199.199 INFO    ] Initializing speech engine...
[2026-10-25 16:04:47,218.218 INFO    ] 2026-10-25 16:04:47
[2026-10-25 16:04:47,474.474 INFO    ] 2026-10-25 16:04:47
[2026-10-25 16:04:47,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:04:47,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:04:47,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:04:47,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:04:47,832.832 INFO    ] time= 25/10/2026 16:04:47
[2026-10-25 16:04:47,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:04:47,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:04:47,958.958 INFO    ] No existing commands found in stream
[2026-10-25 16:04:52,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:04:52,974.974 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 16:04:56,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:04:56,726.726 INFO    ] Checking for system updates...
[2026-10-25 16:04:56,769.769 INFO    ] 200
[2026-10-25 16:04:56,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:56,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:56,837.837 INFO    ] No update needed
[2026-10-25 16:04:56,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 16:04:56,886.886 INFO    ] 200
[2026-10-25 16:04:56,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:04:56,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:04:56,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:04:56,997.997 INFO    ] No camera update needed
[2026-10-25 16:04:57,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:04:57,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:04:57,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:04:57,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:04:59,057.057 INFO    ] ================================================
[2026-10-25 16:04:59,072.072 INFO    ] Launching Daemon at Sun Oct 25 16:04:59 IST 2026
[2026-10-25 16:04:59,083.083 INFO    ] ================================================
[2026-10-25 16:04:59,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:04:59
[2026-10-25 16:05:00,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:05:00,565.565 INFO    ] Initializing speech engine...
[2026-10-25 16:05:00,571.571 INFO    ] 2026-10-25 16:05:00
[2026-10-25 16:05:00,833.833 INFO    ] 2026-10-25 16:05:00
[2026-10-25 16:05:00,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:05:01,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:05:01,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:05:01,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:05:01,302.302 INFO    ] time= 25/10/2026 16:05:01
[2026-10-25 16:05:01,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:05:01,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:05:01,531.531 INFO    ] No existing commands found in stream
[2026-10-25 16:05:06,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:05:06,545.545 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 16:05:09,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:05:09,998.998 INFO    ] Checking for system updates...
[2026-10-25 16:05:10,034.034 INFO    ] 200
[2026-10-25 16:05:10,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:10,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:05:10,092.092 INFO    ] No update needed
[2026-10-25 16:05:10,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 16:05:10,129.129 INFO    ] 200
[2026-10-25 16:05:10,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:10,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:05:10,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:05:10,228.228 INFO    ] No camera update needed
[2026-10-25 16:05:10,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:05:10,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:05:10,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:05:10,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:05:12,283.283 INFO    ] ================================================
[2026-10-25 16:05:12,299.299 INFO    ] Launching Daemon at Sun Oct 25 16:05:12 IST 2026
[2026-10-25 16:05:12,309.309 INFO    ] ================================================
[2026-10-25 16:05:12,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:05:12
[2026-10-25 16:05:13,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:05:13,728.728 INFO    ] Initializing speech engine...
[2026-10-25 16:05:13,736.736 INFO    ] 2026-10-25 16:05:13
[2026-10-25 16:05:13,993.993 INFO    ] 2026-10-25 16:05:13
[2026-10-25 16:05:14,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:05:14,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:05:14,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:05:14,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:05:14,450.450 INFO    ] time= 25/10/2026 16:05:14
[2026-10-25 16:05:14,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:05:14,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:05:14,583.583 INFO    ] No existing commands found in stream
[2026-10-25 16:05:19,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:05:19,596.596 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 16:05:22,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:05:22,536.536 INFO    ] Checking for system updates...
[2026-10-25 16:05:22,576.576 INFO    ] 200
[2026-10-25 16:05:22,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:22,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:05:22,634.634 INFO    ] No update needed
[2026-10-25 16:05:22,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 16:05:22,671.671 INFO    ] 200
[2026-10-25 16:05:22,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:22,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:05:22,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:05:22,774.774 INFO    ] No camera update needed
[2026-10-25 16:05:22,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:05:22,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:05:22,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:05:22,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:05:24,828.828 INFO    ] ================================================
[2026-10-25 16:05:24,843.843 INFO    ] Launching Daemon at Sun Oct 25 16:05:24 IST 2026
[2026-10-25 16:05:24,854.854 INFO    ] ================================================
[2026-10-25 16:05:25,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:05:25
[2026-10-25 16:05:26,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:05:26,354.354 INFO    ] Initializing speech engine...
[2026-10-25 16:05:26,362.362 INFO    ] 2026-10-25 16:05:26
[2026-10-25 16:05:26,617.617 INFO    ] 2026-10-25 16:05:26
[2026-10-25 16:05:26,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:05:26,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:05:26,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:05:27,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:05:27,106.106 INFO    ] time= 25/10/2026 16:05:27
[2026-10-25 16:05:27,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:05:27,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:05:27,263.263 INFO    ] No existing commands found in stream
[2026-10-25 16:05:32,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:05:32,303.303 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 16:05:34,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:05:34,009.009 INFO    ] Checking for system updates...
[2026-10-25 16:05:34,045.045 INFO    ] 200
[2026-10-25 16:05:34,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:34,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:34,103.103 INFO    ] No update needed
[2026-10-25 16:05:34,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 16:05:34,146.146 INFO    ] 200
[2026-10-25 16:05:34,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:34,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:05:34,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:34,251.251 INFO    ] No camera update needed
[2026-10-25 16:05:34,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:05:34,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:05:34,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:05:34,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:05:36,314.314 INFO    ] ================================================
[2026-10-25 16:05:36,329.329 INFO    ] Launching Daemon at Sun Oct 25 16:05:36 IST 2026
[2026-10-25 16:05:36,341.341 INFO    ] ================================================
[2026-10-25 16:05:36,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:05:36
[2026-10-25 16:05:37,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:05:37,740.740 INFO    ] Initializing speech engine...
[2026-10-25 16:05:37,763.763 INFO    ] 2026-10-25 16:05:37
[2026-10-25 16:05:38,027.027 INFO    ] 2026-10-25 16:05:38
[2026-10-25 16:05:38,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:05:38,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:05:38,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:05:38,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:05:38,579.579 INFO    ] time= 25/10/2026 16:05:38
[2026-10-25 16:05:38,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:05:38,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:05:38,717.717 INFO    ] No existing commands found in stream
[2026-10-25 16:05:43,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:05:43,748.748 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 16:05:46,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:05:46,908.908 INFO    ] Checking for system updates...
[2026-10-25 16:05:46,945.945 INFO    ] 200
[2026-10-25 16:05:46,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:47,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:47,015.015 INFO    ] No update needed
[2026-10-25 16:05:47,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 16:05:47,053.053 INFO    ] 200
[2026-10-25 16:05:47,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:47,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:05:47,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:47,153.153 INFO    ] No camera update needed
[2026-10-25 16:05:47,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:05:47,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:05:47,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:05:47,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:05:49,219.219 INFO    ] ================================================
[2026-10-25 16:05:49,236.236 INFO    ] Launching Daemon at Sun Oct 25 16:05:49 IST 2026
[2026-10-25 16:05:49,247.247 INFO    ] ================================================
[2026-10-25 16:05:49,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:05:49
[2026-10-25 16:05:50,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:05:50,907.907 INFO    ] Initializing speech engine...
[2026-10-25 16:05:50,915.915 INFO    ] 2026-10-25 16:05:50
[2026-10-25 16:05:51,213.213 INFO    ] 2026-10-25 16:05:51
[2026-10-25 16:05:51,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:05:51,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:05:51,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:05:51,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:05:51,742.742 INFO    ] time= 25/10/2026 16:05:51
[2026-10-25 16:05:51,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:05:51,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:05:51,894.894 INFO    ] No existing commands found in stream
[2026-10-25 16:05:56,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:05:56,916.916 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 16:05:59,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:05:59,664.664 INFO    ] Checking for system updates...
[2026-10-25 16:05:59,703.703 INFO    ] 200
[2026-10-25 16:05:59,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:59,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:59,764.764 INFO    ] No update needed
[2026-10-25 16:05:59,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 16:05:59,802.802 INFO    ] 200
[2026-10-25 16:05:59,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:05:59,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:05:59,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:05:59,906.906 INFO    ] No camera update needed
[2026-10-25 16:05:59,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:05:59,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:05:59,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:05:59,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:06:01,979.979 INFO    ] ================================================
[2026-10-25 16:06:02,006.006 INFO    ] Launching Daemon at Sun Oct 25 16:06:01 IST 2026
[2026-10-25 16:06:02,037.037 INFO    ] ================================================
[2026-10-25 16:06:02,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:06:02
[2026-10-25 16:06:03,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:06:03,689.689 INFO    ] Initializing speech engine...
[2026-10-25 16:06:03,697.697 INFO    ] 2026-10-25 16:06:03
[2026-10-25 16:06:03,993.993 INFO    ] 2026-10-25 16:06:03
[2026-10-25 16:06:04,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:06:04,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:06:04,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:06:04,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:06:04,360.360 INFO    ] time= 25/10/2026 16:06:04
[2026-10-25 16:06:04,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:06:04,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:06:04,521.521 INFO    ] No existing commands found in stream
[2026-10-25 16:06:09,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:06:09,549.549 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 16:06:11,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:06:11,302.302 INFO    ] Checking for system updates...
[2026-10-25 16:06:11,339.339 INFO    ] 200
[2026-10-25 16:06:11,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:11,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:06:11,404.404 INFO    ] No update needed
[2026-10-25 16:06:11,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 16:06:11,443.443 INFO    ] 200
[2026-10-25 16:06:11,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:11,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:06:11,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:06:11,541.541 INFO    ] No camera update needed
[2026-10-25 16:06:11,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:06:11,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:06:11,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:06:11,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:06:13,595.595 INFO    ] ================================================
[2026-10-25 16:06:13,611.611 INFO    ] Launching Daemon at Sun Oct 25 16:06:13 IST 2026
[2026-10-25 16:06:13,623.623 INFO    ] ================================================
[2026-10-25 16:06:14,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:06:14
[2026-10-25 16:06:14,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:06:15,051.051 INFO    ] Initializing speech engine...
[2026-10-25 16:06:15,056.056 INFO    ] 2026-10-25 16:06:15
[2026-10-25 16:06:15,304.304 INFO    ] 2026-10-25 16:06:15
[2026-10-25 16:06:15,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:06:15,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:06:15,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:06:15,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:06:15,679.679 INFO    ] time= 25/10/2026 16:06:15
[2026-10-25 16:06:15,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:06:15,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:06:15,849.849 INFO    ] No existing commands found in stream
[2026-10-25 16:06:20,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:06:20,877.877 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 16:06:24,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:06:24,631.631 INFO    ] Checking for system updates...
[2026-10-25 16:06:24,668.668 INFO    ] 200
[2026-10-25 16:06:24,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:24,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:24,726.726 INFO    ] No update needed
[2026-10-25 16:06:24,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 16:06:24,767.767 INFO    ] 200
[2026-10-25 16:06:24,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:24,815.815 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:06:24,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:24,864.864 INFO    ] No camera update needed
[2026-10-25 16:06:24,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:06:24,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:06:24,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:06:24,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:06:26,919.919 INFO    ] ================================================
[2026-10-25 16:06:26,934.934 INFO    ] Launching Daemon at Sun Oct 25 16:06:26 IST 2026
[2026-10-25 16:06:26,945.945 INFO    ] ================================================
[2026-10-25 16:06:27,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:06:27
[2026-10-25 16:06:28,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:06:28,422.422 INFO    ] Initializing speech engine...
[2026-10-25 16:06:28,427.427 INFO    ] 2026-10-25 16:06:28
[2026-10-25 16:06:28,717.717 INFO    ] 2026-10-25 16:06:28
[2026-10-25 16:06:28,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:06:29,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:06:29,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:06:29,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:06:29,260.260 INFO    ] time= 25/10/2026 16:06:29
[2026-10-25 16:06:29,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:06:29,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:06:29,413.413 INFO    ] No existing commands found in stream
[2026-10-25 16:06:34,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:06:34,437.437 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 16:06:38,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:06:38,831.831 INFO    ] Checking for system updates...
[2026-10-25 16:06:38,869.869 INFO    ] 200
[2026-10-25 16:06:38,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:38,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:38,930.930 INFO    ] No update needed
[2026-10-25 16:06:38,933.933 INFO    ] Checking for camera pi updates...
[2026-10-25 16:06:38,969.969 INFO    ] 200
[2026-10-25 16:06:38,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:39,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:06:39,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:39,045.045 INFO    ] No camera update needed
[2026-10-25 16:06:39,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:06:39,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:06:39,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:06:39,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:06:41,102.102 INFO    ] ================================================
[2026-10-25 16:06:41,118.118 INFO    ] Launching Daemon at Sun Oct 25 16:06:41 IST 2026
[2026-10-25 16:06:41,128.128 INFO    ] ================================================
[2026-10-25 16:06:41,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:06:41
[2026-10-25 16:06:42,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:06:42,754.754 INFO    ] Initializing speech engine...
[2026-10-25 16:06:42,767.767 INFO    ] 2026-10-25 16:06:42
[2026-10-25 16:06:43,046.046 INFO    ] 2026-10-25 16:06:43
[2026-10-25 16:06:43,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:06:43,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:06:43,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:06:43,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:06:43,595.595 INFO    ] time= 25/10/2026 16:06:43
[2026-10-25 16:06:43,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:06:43,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:06:43,744.744 INFO    ] No existing commands found in stream
[2026-10-25 16:06:48,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:06:48,770.770 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 16:06:49,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:06:49,565.565 INFO    ] Checking for system updates...
[2026-10-25 16:06:49,606.606 INFO    ] 200
[2026-10-25 16:06:49,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:49,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:49,668.668 INFO    ] No update needed
[2026-10-25 16:06:49,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 16:06:49,710.710 INFO    ] 200
[2026-10-25 16:06:49,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:06:49,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:06:49,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:06:49,927.927 INFO    ] No camera update needed
[2026-10-25 16:06:49,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:06:49,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:06:49,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:06:49,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:06:51,988.988 INFO    ] ================================================
[2026-10-25 16:06:52,003.003 INFO    ] Launching Daemon at Sun Oct 25 16:06:51 IST 2026
[2026-10-25 16:06:52,015.015 INFO    ] ================================================
[2026-10-25 16:06:52,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:06:52
[2026-10-25 16:06:53,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:06:53,650.650 INFO    ] Initializing speech engine...
[2026-10-25 16:06:53,659.659 INFO    ] 2026-10-25 16:06:53
[2026-10-25 16:06:53,948.948 INFO    ] 2026-10-25 16:06:53
[2026-10-25 16:06:53,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:06:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:06:54,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:06:54,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:06:54,434.434 INFO    ] time= 25/10/2026 16:06:54
[2026-10-25 16:06:54,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:06:54,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:06:54,632.632 INFO    ] No existing commands found in stream
[2026-10-25 16:06:59,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:06:59,666.666 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 16:07:01,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:07:01,084.084 INFO    ] Checking for system updates...
[2026-10-25 16:07:01,127.127 INFO    ] 200
[2026-10-25 16:07:01,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:01,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:07:01,198.198 INFO    ] No update needed
[2026-10-25 16:07:01,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 16:07:01,239.239 INFO    ] 200
[2026-10-25 16:07:01,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:01,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:07:01,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:07:01,359.359 INFO    ] No camera update needed
[2026-10-25 16:07:01,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:07:01,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:07:01,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:07:01,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:07:03,432.432 INFO    ] ================================================
[2026-10-25 16:07:03,449.449 INFO    ] Launching Daemon at Sun Oct 25 16:07:03 IST 2026
[2026-10-25 16:07:03,462.462 INFO    ] ================================================
[2026-10-25 16:07:04,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:07:04
[2026-10-25 16:07:04,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:07:04,987.987 INFO    ] Initializing speech engine...
[2026-10-25 16:07:04,995.995 INFO    ] 2026-10-25 16:07:04
[2026-10-25 16:07:05,284.284 INFO    ] 2026-10-25 16:07:05
[2026-10-25 16:07:05,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:07:05,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:07:05,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:07:05,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:07:05,695.695 INFO    ] time= 25/10/2026 16:07:05
[2026-10-25 16:07:05,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:07:05,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:07:05,781.781 INFO    ] No existing commands found in stream
[2026-10-25 16:07:10,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:07:10,799.799 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 16:07:12,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:07:12,029.029 INFO    ] Checking for system updates...
[2026-10-25 16:07:12,065.065 INFO    ] 200
[2026-10-25 16:07:12,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:12,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:12,124.124 INFO    ] No update needed
[2026-10-25 16:07:12,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 16:07:12,163.163 INFO    ] 200
[2026-10-25 16:07:12,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:12,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:07:12,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:12,255.255 INFO    ] No camera update needed
[2026-10-25 16:07:12,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:07:12,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:07:12,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:07:12,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:07:14,312.312 INFO    ] ================================================
[2026-10-25 16:07:14,327.327 INFO    ] Launching Daemon at Sun Oct 25 16:07:14 IST 2026
[2026-10-25 16:07:14,338.338 INFO    ] ================================================
[2026-10-25 16:07:14,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:07:14
[2026-10-25 16:07:15,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:07:15,736.736 INFO    ] Initializing speech engine...
[2026-10-25 16:07:15,758.758 INFO    ] 2026-10-25 16:07:15
[2026-10-25 16:07:16,028.028 INFO    ] 2026-10-25 16:07:16
[2026-10-25 16:07:16,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:07:16,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:07:16,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:07:16,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:07:16,433.433 INFO    ] time= 25/10/2026 16:07:16
[2026-10-25 16:07:16,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:07:16,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:07:16,601.601 INFO    ] No existing commands found in stream
[2026-10-25 16:07:21,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:07:21,635.635 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 16:07:25,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:07:25,421.421 INFO    ] Checking for system updates...
[2026-10-25 16:07:25,456.456 INFO    ] 200
[2026-10-25 16:07:25,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:25,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:25,519.519 INFO    ] No update needed
[2026-10-25 16:07:25,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 16:07:25,556.556 INFO    ] 200
[2026-10-25 16:07:25,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:25,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:07:25,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:25,639.639 INFO    ] No camera update needed
[2026-10-25 16:07:25,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:07:25,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:07:25,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:07:25,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:07:27,693.693 INFO    ] ================================================
[2026-10-25 16:07:27,708.708 INFO    ] Launching Daemon at Sun Oct 25 16:07:27 IST 2026
[2026-10-25 16:07:27,719.719 INFO    ] ================================================
[2026-10-25 16:07:28,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:07:28
[2026-10-25 16:07:28,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:07:29,293.293 INFO    ] Initializing speech engine...
[2026-10-25 16:07:29,301.301 INFO    ] 2026-10-25 16:07:29
[2026-10-25 16:07:29,581.581 INFO    ] 2026-10-25 16:07:29
[2026-10-25 16:07:29,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:07:30,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:07:30,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:07:30,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:07:30,328.328 INFO    ] time= 25/10/2026 16:07:30
[2026-10-25 16:07:30,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:07:30,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:07:30,542.542 INFO    ] No existing commands found in stream
[2026-10-25 16:07:35,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:07:35,583.583 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 16:07:38,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:07:38,328.328 INFO    ] Checking for system updates...
[2026-10-25 16:07:38,366.366 INFO    ] 200
[2026-10-25 16:07:38,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:38,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:07:38,444.444 INFO    ] No update needed
[2026-10-25 16:07:38,446.446 INFO    ] Checking for camera pi updates...
[2026-10-25 16:07:38,480.480 INFO    ] 200
[2026-10-25 16:07:38,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:38,524.524 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:07:38,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:07:38,564.564 INFO    ] No camera update needed
[2026-10-25 16:07:38,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:07:38,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:07:38,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:07:38,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:07:40,618.618 INFO    ] ================================================
[2026-10-25 16:07:40,633.633 INFO    ] Launching Daemon at Sun Oct 25 16:07:40 IST 2026
[2026-10-25 16:07:40,644.644 INFO    ] ================================================
[2026-10-25 16:07:41,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:07:41
[2026-10-25 16:07:41,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:07:42,071.071 INFO    ] Initializing speech engine...
[2026-10-25 16:07:42,079.079 INFO    ] 2026-10-25 16:07:42
[2026-10-25 16:07:42,330.330 INFO    ] 2026-10-25 16:07:42
[2026-10-25 16:07:42,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:07:42,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:07:42,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:07:42,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:07:42,710.710 INFO    ] time= 25/10/2026 16:07:42
[2026-10-25 16:07:42,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:07:42,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:07:42,886.886 INFO    ] No existing commands found in stream
[2026-10-25 16:07:47,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:07:47,918.918 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 16:07:49,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:07:49,522.522 INFO    ] Checking for system updates...
[2026-10-25 16:07:49,561.561 INFO    ] 200
[2026-10-25 16:07:49,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:49,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:49,620.620 INFO    ] No update needed
[2026-10-25 16:07:49,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 16:07:49,656.656 INFO    ] 200
[2026-10-25 16:07:49,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:07:49,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:07:49,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:07:49,759.759 INFO    ] No camera update needed
[2026-10-25 16:07:49,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:07:49,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:07:49,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:07:49,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:07:51,815.815 INFO    ] ================================================
[2026-10-25 16:07:51,829.829 INFO    ] Launching Daemon at Sun Oct 25 16:07:51 IST 2026
[2026-10-25 16:07:51,840.840 INFO    ] ================================================
[2026-10-25 16:07:52,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:07:52
[2026-10-25 16:07:53,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:07:53,298.298 INFO    ] Initializing speech engine...
[2026-10-25 16:07:53,306.306 INFO    ] 2026-10-25 16:07:53
[2026-10-25 16:07:53,567.567 INFO    ] 2026-10-25 16:07:53
[2026-10-25 16:07:53,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:07:53,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:07:53,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:07:53,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:07:54,041.041 INFO    ] time= 25/10/2026 16:07:53
[2026-10-25 16:07:54,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:07:54,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:07:54,224.224 INFO    ] No existing commands found in stream
[2026-10-25 16:07:59,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:07:59,257.257 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 16:08:01,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:08:01,655.655 INFO    ] Checking for system updates...
[2026-10-25 16:08:01,702.702 INFO    ] 200
[2026-10-25 16:08:01,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:01,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:01,771.771 INFO    ] No update needed
[2026-10-25 16:08:01,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 16:08:01,818.818 INFO    ] 200
[2026-10-25 16:08:01,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:01,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:08:01,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:01,945.945 INFO    ] No camera update needed
[2026-10-25 16:08:01,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:08:01,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:08:01,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:08:01,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:08:04,006.006 INFO    ] ================================================
[2026-10-25 16:08:04,021.021 INFO    ] Launching Daemon at Sun Oct 25 16:08:04 IST 2026
[2026-10-25 16:08:04,031.031 INFO    ] ================================================
[2026-10-25 16:08:04,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:08:04
[2026-10-25 16:08:05,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:08:05,481.481 INFO    ] Initializing speech engine...
[2026-10-25 16:08:05,488.488 INFO    ] 2026-10-25 16:08:05
[2026-10-25 16:08:05,747.747 INFO    ] 2026-10-25 16:08:05
[2026-10-25 16:08:05,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:08:06,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:08:06,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:08:06,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:08:06,223.223 INFO    ] time= 25/10/2026 16:08:06
[2026-10-25 16:08:06,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:08:06,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:08:06,410.410 INFO    ] No existing commands found in stream
[2026-10-25 16:08:11,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:08:11,436.436 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 16:08:12,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:08:12,450.450 INFO    ] Checking for system updates...
[2026-10-25 16:08:12,487.487 INFO    ] 200
[2026-10-25 16:08:12,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:12,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:08:12,554.554 INFO    ] No update needed
[2026-10-25 16:08:12,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 16:08:12,594.594 INFO    ] 200
[2026-10-25 16:08:12,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:12,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:08:12,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:08:12,688.688 INFO    ] No camera update needed
[2026-10-25 16:08:12,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:08:12,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:08:12,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:08:12,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:08:14,749.749 INFO    ] ================================================
[2026-10-25 16:08:14,764.764 INFO    ] Launching Daemon at Sun Oct 25 16:08:14 IST 2026
[2026-10-25 16:08:14,776.776 INFO    ] ================================================
[2026-10-25 16:08:15,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:08:15
[2026-10-25 16:08:15,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:08:16,231.231 INFO    ] Initializing speech engine...
[2026-10-25 16:08:16,240.240 INFO    ] 2026-10-25 16:08:16
[2026-10-25 16:08:16,499.499 INFO    ] 2026-10-25 16:08:16
[2026-10-25 16:08:16,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:08:16,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:08:16,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:08:16,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:08:16,883.883 INFO    ] time= 25/10/2026 16:08:16
[2026-10-25 16:08:16,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:08:16,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:08:17,069.069 INFO    ] No existing commands found in stream
[2026-10-25 16:08:22,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:08:22,093.093 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 16:08:24,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:08:24,913.913 INFO    ] Checking for system updates...
[2026-10-25 16:08:24,952.952 INFO    ] 200
[2026-10-25 16:08:24,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:25,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:25,010.010 INFO    ] No update needed
[2026-10-25 16:08:25,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 16:08:25,050.050 INFO    ] 200
[2026-10-25 16:08:25,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:25,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:08:25,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:25,150.150 INFO    ] No camera update needed
[2026-10-25 16:08:25,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:08:25,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:08:25,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:08:25,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:08:27,206.206 INFO    ] ================================================
[2026-10-25 16:08:27,222.222 INFO    ] Launching Daemon at Sun Oct 25 16:08:27 IST 2026
[2026-10-25 16:08:27,234.234 INFO    ] ================================================
[2026-10-25 16:08:27,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:08:27
[2026-10-25 16:08:28,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:08:28,710.710 INFO    ] Initializing speech engine...
[2026-10-25 16:08:28,719.719 INFO    ] 2026-10-25 16:08:28
[2026-10-25 16:08:28,969.969 INFO    ] 2026-10-25 16:08:28
[2026-10-25 16:08:29,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:08:31,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:08:31,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:08:31,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:08:32,000.000 INFO    ] time= 25/10/2026 16:08:31
[2026-10-25 16:08:32,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:08:32,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:08:32,064.064 INFO    ] No existing commands found in stream
[2026-10-25 16:08:37,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:08:37,076.076 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 16:08:41,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:08:41,202.202 INFO    ] Checking for system updates...
[2026-10-25 16:08:41,242.242 INFO    ] 200
[2026-10-25 16:08:41,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:41,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:41,302.302 INFO    ] No update needed
[2026-10-25 16:08:41,305.305 INFO    ] Checking for camera pi updates...
[2026-10-25 16:08:41,342.342 INFO    ] 200
[2026-10-25 16:08:41,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:41,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:08:41,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:08:41,423.423 INFO    ] No camera update needed
[2026-10-25 16:08:41,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:08:41,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:08:41,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:08:41,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:08:43,481.481 INFO    ] ================================================
[2026-10-25 16:08:43,497.497 INFO    ] Launching Daemon at Sun Oct 25 16:08:43 IST 2026
[2026-10-25 16:08:43,508.508 INFO    ] ================================================
[2026-10-25 16:08:44,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:08:44
[2026-10-25 16:08:44,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:08:44,908.908 INFO    ] Initializing speech engine...
[2026-10-25 16:08:44,915.915 INFO    ] 2026-10-25 16:08:44
[2026-10-25 16:08:45,215.215 INFO    ] 2026-10-25 16:08:45
[2026-10-25 16:08:45,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:08:45,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:08:45,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:08:45,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:08:45,572.572 INFO    ] time= 25/10/2026 16:08:45
[2026-10-25 16:08:45,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:08:45,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:08:45,681.681 INFO    ] No existing commands found in stream
[2026-10-25 16:08:50,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:08:50,714.714 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 16:08:51,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:08:51,733.733 INFO    ] Checking for system updates...
[2026-10-25 16:08:51,773.773 INFO    ] 200
[2026-10-25 16:08:51,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:51,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:08:51,838.838 INFO    ] No update needed
[2026-10-25 16:08:51,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 16:08:51,878.878 INFO    ] 200
[2026-10-25 16:08:51,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:08:51,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:08:52,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:08:52,075.075 INFO    ] No camera update needed
[2026-10-25 16:08:52,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:08:52,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:08:52,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:08:52,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:08:54,129.129 INFO    ] ================================================
[2026-10-25 16:08:54,144.144 INFO    ] Launching Daemon at Sun Oct 25 16:08:54 IST 2026
[2026-10-25 16:08:54,156.156 INFO    ] ================================================
[2026-10-25 16:08:54,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:08:54
[2026-10-25 16:08:55,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:08:55,607.607 INFO    ] Initializing speech engine...
[2026-10-25 16:08:55,617.617 INFO    ] 2026-10-25 16:08:55
[2026-10-25 16:08:55,864.864 INFO    ] 2026-10-25 16:08:55
[2026-10-25 16:08:55,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:08:56,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:08:56,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:08:56,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:08:56,338.338 INFO    ] time= 25/10/2026 16:08:56
[2026-10-25 16:08:56,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:08:56,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:08:56,550.550 INFO    ] No existing commands found in stream
[2026-10-25 16:09:01,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:09:01,584.584 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 16:09:04,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:09:04,436.436 INFO    ] Checking for system updates...
[2026-10-25 16:09:04,473.473 INFO    ] 200
[2026-10-25 16:09:04,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:04,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:09:04,542.542 INFO    ] No update needed
[2026-10-25 16:09:04,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 16:09:04,581.581 INFO    ] 200
[2026-10-25 16:09:04,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:04,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:09:04,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:09:04,683.683 INFO    ] No camera update needed
[2026-10-25 16:09:04,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:09:04,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:09:04,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:09:04,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:09:06,739.739 INFO    ] ================================================
[2026-10-25 16:09:06,755.755 INFO    ] Launching Daemon at Sun Oct 25 16:09:06 IST 2026
[2026-10-25 16:09:06,766.766 INFO    ] ================================================
[2026-10-25 16:09:07,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:09:07
[2026-10-25 16:09:07,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:09:08,220.220 INFO    ] Initializing speech engine...
[2026-10-25 16:09:08,229.229 INFO    ] 2026-10-25 16:09:08
[2026-10-25 16:09:08,484.484 INFO    ] 2026-10-25 16:09:08
[2026-10-25 16:09:08,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:09:08,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:09:08,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:09:08,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:09:08,954.954 INFO    ] time= 25/10/2026 16:09:08
[2026-10-25 16:09:08,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:09:09,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:09:09,098.098 INFO    ] No existing commands found in stream
[2026-10-25 16:09:14,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:09:14,113.113 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 16:09:16,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:09:16,087.087 INFO    ] Checking for system updates...
[2026-10-25 16:09:16,125.125 INFO    ] 200
[2026-10-25 16:09:16,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:16,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:16,192.192 INFO    ] No update needed
[2026-10-25 16:09:16,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 16:09:16,234.234 INFO    ] 200
[2026-10-25 16:09:16,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:16,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:09:16,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:16,320.320 INFO    ] No camera update needed
[2026-10-25 16:09:16,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:09:16,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:09:16,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:09:16,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:09:18,379.379 INFO    ] ================================================
[2026-10-25 16:09:18,395.395 INFO    ] Launching Daemon at Sun Oct 25 16:09:18 IST 2026
[2026-10-25 16:09:18,406.406 INFO    ] ================================================
[2026-10-25 16:09:18,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:09:18
[2026-10-25 16:09:19,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:09:19,813.813 INFO    ] Initializing speech engine...
[2026-10-25 16:09:19,820.820 INFO    ] 2026-10-25 16:09:19
[2026-10-25 16:09:20,118.118 INFO    ] 2026-10-25 16:09:20
[2026-10-25 16:09:20,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:09:20,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:09:20,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:09:20,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:09:20,520.520 INFO    ] time= 25/10/2026 16:09:20
[2026-10-25 16:09:20,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:09:20,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:09:20,701.701 INFO    ] No existing commands found in stream
[2026-10-25 16:09:25,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:09:25,727.727 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 16:09:26,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:09:26,509.509 INFO    ] Checking for system updates...
[2026-10-25 16:09:26,545.545 INFO    ] 200
[2026-10-25 16:09:26,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:26,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:26,612.612 INFO    ] No update needed
[2026-10-25 16:09:26,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 16:09:26,653.653 INFO    ] 200
[2026-10-25 16:09:26,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:26,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:09:26,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:26,758.758 INFO    ] No camera update needed
[2026-10-25 16:09:26,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:09:26,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:09:26,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:09:26,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:09:28,814.814 INFO    ] ================================================
[2026-10-25 16:09:28,829.829 INFO    ] Launching Daemon at Sun Oct 25 16:09:28 IST 2026
[2026-10-25 16:09:28,839.839 INFO    ] ================================================
[2026-10-25 16:09:29,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:09:29
[2026-10-25 16:09:30,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:09:30,301.301 INFO    ] Initializing speech engine...
[2026-10-25 16:09:30,311.311 INFO    ] 2026-10-25 16:09:30
[2026-10-25 16:09:30,572.572 INFO    ] 2026-10-25 16:09:30
[2026-10-25 16:09:30,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:09:33,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:09:33,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:09:33,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:09:33,479.479 INFO    ] time= 25/10/2026 16:09:33
[2026-10-25 16:09:33,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:09:33,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:09:33,553.553 INFO    ] No existing commands found in stream
[2026-10-25 16:09:38,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:09:38,565.565 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 16:09:40,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:09:40,136.136 INFO    ] Checking for system updates...
[2026-10-25 16:09:40,172.172 INFO    ] 200
[2026-10-25 16:09:40,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:40,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:09:40,232.232 INFO    ] No update needed
[2026-10-25 16:09:40,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 16:09:40,273.273 INFO    ] 200
[2026-10-25 16:09:40,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:40,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:09:40,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:09:40,367.367 INFO    ] No camera update needed
[2026-10-25 16:09:40,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:09:40,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:09:40,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:09:40,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:09:42,424.424 INFO    ] ================================================
[2026-10-25 16:09:42,439.439 INFO    ] Launching Daemon at Sun Oct 25 16:09:42 IST 2026
[2026-10-25 16:09:42,449.449 INFO    ] ================================================
[2026-10-25 16:09:43,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:09:43
[2026-10-25 16:09:43,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:09:43,903.903 INFO    ] Initializing speech engine...
[2026-10-25 16:09:43,915.915 INFO    ] 2026-10-25 16:09:43
[2026-10-25 16:09:44,167.167 INFO    ] 2026-10-25 16:09:44
[2026-10-25 16:09:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:09:44,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:09:44,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:09:44,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:09:44,684.684 INFO    ] time= 25/10/2026 16:09:44
[2026-10-25 16:09:44,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:09:44,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:09:44,859.859 INFO    ] No existing commands found in stream
[2026-10-25 16:09:49,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:09:49,874.874 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 16:09:52,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:09:52,211.211 INFO    ] Checking for system updates...
[2026-10-25 16:09:52,253.253 INFO    ] 200
[2026-10-25 16:09:52,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:52,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:52,324.324 INFO    ] No update needed
[2026-10-25 16:09:52,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 16:09:52,370.370 INFO    ] 200
[2026-10-25 16:09:52,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:09:52,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:09:52,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:09:52,495.495 INFO    ] No camera update needed
[2026-10-25 16:09:52,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:09:52,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:09:52,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:09:52,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:09:54,550.550 INFO    ] ================================================
[2026-10-25 16:09:54,565.565 INFO    ] Launching Daemon at Sun Oct 25 16:09:54 IST 2026
[2026-10-25 16:09:54,576.576 INFO    ] ================================================
[2026-10-25 16:09:55,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:09:55
[2026-10-25 16:09:55,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:09:56,038.038 INFO    ] Initializing speech engine...
[2026-10-25 16:09:56,044.044 INFO    ] 2026-10-25 16:09:56
[2026-10-25 16:09:56,291.291 INFO    ] 2026-10-25 16:09:56
[2026-10-25 16:09:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:09:56,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:09:56,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:09:56,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:09:56,747.747 INFO    ] time= 25/10/2026 16:09:56
[2026-10-25 16:09:56,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:09:56,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:09:56,909.909 INFO    ] No existing commands found in stream
[2026-10-25 16:10:01,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:10:01,924.924 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 16:10:08,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:10:08,175.175 INFO    ] Checking for system updates...
[2026-10-25 16:10:08,211.211 INFO    ] 200
[2026-10-25 16:10:08,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:08,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:10:08,273.273 INFO    ] No update needed
[2026-10-25 16:10:08,276.276 INFO    ] Checking for camera pi updates...
[2026-10-25 16:10:08,314.314 INFO    ] 200
[2026-10-25 16:10:08,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:08,364.364 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:10:08,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:10:08,402.402 INFO    ] No camera update needed
[2026-10-25 16:10:08,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:10:08,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:10:08,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:10:08,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:10:10,459.459 INFO    ] ================================================
[2026-10-25 16:10:10,474.474 INFO    ] Launching Daemon at Sun Oct 25 16:10:10 IST 2026
[2026-10-25 16:10:10,486.486 INFO    ] ================================================
[2026-10-25 16:10:11,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:10:11
[2026-10-25 16:10:11,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:10:11,931.931 INFO    ] Initializing speech engine...
[2026-10-25 16:10:11,940.940 INFO    ] 2026-10-25 16:10:11
[2026-10-25 16:10:12,242.242 INFO    ] 2026-10-25 16:10:12
[2026-10-25 16:10:12,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:10:12,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:10:12,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:10:12,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:10:12,608.608 INFO    ] time= 25/10/2026 16:10:12
[2026-10-25 16:10:12,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:10:12,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:10:12,693.693 INFO    ] No existing commands found in stream
[2026-10-25 16:10:17,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:10:17,708.708 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 16:10:20,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:10:20,978.978 INFO    ] Checking for system updates...
[2026-10-25 16:10:21,021.021 INFO    ] 200
[2026-10-25 16:10:21,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:21,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:10:21,091.091 INFO    ] No update needed
[2026-10-25 16:10:21,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 16:10:21,130.130 INFO    ] 200
[2026-10-25 16:10:21,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:21,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:10:21,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:10:21,235.235 INFO    ] No camera update needed
[2026-10-25 16:10:21,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:10:21,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:10:21,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:10:21,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:10:23,293.293 INFO    ] ================================================
[2026-10-25 16:10:23,309.309 INFO    ] Launching Daemon at Sun Oct 25 16:10:23 IST 2026
[2026-10-25 16:10:23,319.319 INFO    ] ================================================
[2026-10-25 16:10:23,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:10:23
[2026-10-25 16:10:24,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:10:24,872.872 INFO    ] Initializing speech engine...
[2026-10-25 16:10:24,883.883 INFO    ] 2026-10-25 16:10:24
[2026-10-25 16:10:25,169.169 INFO    ] 2026-10-25 16:10:25
[2026-10-25 16:10:25,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:10:25,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:10:25,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:10:25,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:10:25,720.720 INFO    ] time= 25/10/2026 16:10:25
[2026-10-25 16:10:25,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:10:25,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:10:25,875.875 INFO    ] No existing commands found in stream
[2026-10-25 16:10:30,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:10:30,897.897 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 16:10:35,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:10:35,429.429 INFO    ] Checking for system updates...
[2026-10-25 16:10:35,472.472 INFO    ] 200
[2026-10-25 16:10:35,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:35,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:10:35,532.532 INFO    ] No update needed
[2026-10-25 16:10:35,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 16:10:35,572.572 INFO    ] 200
[2026-10-25 16:10:35,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:35,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:10:35,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:10:35,687.687 INFO    ] No camera update needed
[2026-10-25 16:10:35,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:10:35,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:10:35,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:10:35,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:10:37,745.745 INFO    ] ================================================
[2026-10-25 16:10:37,760.760 INFO    ] Launching Daemon at Sun Oct 25 16:10:37 IST 2026
[2026-10-25 16:10:37,771.771 INFO    ] ================================================
[2026-10-25 16:10:38,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:10:38
[2026-10-25 16:10:39,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:10:39,446.446 INFO    ] Initializing speech engine...
[2026-10-25 16:10:39,459.459 INFO    ] 2026-10-25 16:10:39
[2026-10-25 16:10:39,753.753 INFO    ] 2026-10-25 16:10:39
[2026-10-25 16:10:39,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:10:40,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:10:40,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:10:40,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:10:40,296.296 INFO    ] time= 25/10/2026 16:10:40
[2026-10-25 16:10:40,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:10:40,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:10:40,453.453 INFO    ] No existing commands found in stream
[2026-10-25 16:10:45,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:10:45,478.478 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 16:10:48,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:10:48,105.105 INFO    ] Checking for system updates...
[2026-10-25 16:10:48,142.142 INFO    ] 200
[2026-10-25 16:10:48,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:48,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:10:48,200.200 INFO    ] No update needed
[2026-10-25 16:10:48,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 16:10:48,237.237 INFO    ] 200
[2026-10-25 16:10:48,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:10:48,287.287 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:10:48,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:10:48,337.337 INFO    ] No camera update needed
[2026-10-25 16:10:48,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:10:48,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:10:48,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:10:48,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:10:50,393.393 INFO    ] ================================================
[2026-10-25 16:10:50,408.408 INFO    ] Launching Daemon at Sun Oct 25 16:10:50 IST 2026
[2026-10-25 16:10:50,419.419 INFO    ] ================================================
[2026-10-25 16:10:51,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:10:51
[2026-10-25 16:10:51,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:10:51,884.884 INFO    ] Initializing speech engine...
[2026-10-25 16:10:51,891.891 INFO    ] 2026-10-25 16:10:51
[2026-10-25 16:10:52,152.152 INFO    ] 2026-10-25 16:10:52
[2026-10-25 16:10:52,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:10:52,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:10:52,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:10:52,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:10:52,625.625 INFO    ] time= 25/10/2026 16:10:52
[2026-10-25 16:10:52,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:10:52,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:10:52,818.818 INFO    ] No existing commands found in stream
[2026-10-25 16:10:57,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:10:57,856.856 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 16:11:00,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:11:00,987.987 INFO    ] Checking for system updates...
[2026-10-25 16:11:01,025.025 INFO    ] 200
[2026-10-25 16:11:01,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:01,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:11:01,094.094 INFO    ] No update needed
[2026-10-25 16:11:01,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 16:11:01,132.132 INFO    ] 200
[2026-10-25 16:11:01,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:01,177.177 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:11:01,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:11:01,345.345 INFO    ] No camera update needed
[2026-10-25 16:11:01,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:11:01,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:11:01,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:11:01,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:11:03,410.410 INFO    ] ================================================
[2026-10-25 16:11:03,425.425 INFO    ] Launching Daemon at Sun Oct 25 16:11:03 IST 2026
[2026-10-25 16:11:03,436.436 INFO    ] ================================================
[2026-10-25 16:11:04,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:11:04
[2026-10-25 16:11:04,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:11:04,926.926 INFO    ] Initializing speech engine...
[2026-10-25 16:11:04,935.935 INFO    ] 2026-10-25 16:11:04
[2026-10-25 16:11:05,249.249 INFO    ] 2026-10-25 16:11:05
[2026-10-25 16:11:05,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:11:06,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:11:06,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:11:06,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:11:06,335.335 INFO    ] time= 25/10/2026 16:11:06
[2026-10-25 16:11:06,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:11:06,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:11:06,454.454 INFO    ] No existing commands found in stream
[2026-10-25 16:11:11,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:11:11,471.471 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 16:11:12,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:11:12,151.151 INFO    ] Checking for system updates...
[2026-10-25 16:11:12,188.188 INFO    ] 200
[2026-10-25 16:11:12,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:12,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:12,257.257 INFO    ] No update needed
[2026-10-25 16:11:12,260.260 INFO    ] Checking for camera pi updates...
[2026-10-25 16:11:12,295.295 INFO    ] 200
[2026-10-25 16:11:12,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:12,340.340 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:11:12,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:12,407.407 INFO    ] No camera update needed
[2026-10-25 16:11:12,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:11:12,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:11:12,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:11:12,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:11:14,467.467 INFO    ] ================================================
[2026-10-25 16:11:14,482.482 INFO    ] Launching Daemon at Sun Oct 25 16:11:14 IST 2026
[2026-10-25 16:11:14,492.492 INFO    ] ================================================
[2026-10-25 16:11:15,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:11:15
[2026-10-25 16:11:15,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:11:15,964.964 INFO    ] Initializing speech engine...
[2026-10-25 16:11:15,970.970 INFO    ] 2026-10-25 16:11:15
[2026-10-25 16:11:16,234.234 INFO    ] 2026-10-25 16:11:16
[2026-10-25 16:11:16,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:11:16,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:11:16,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:11:16,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:11:16,712.712 INFO    ] time= 25/10/2026 16:11:16
[2026-10-25 16:11:16,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:11:16,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:11:16,907.907 INFO    ] No existing commands found in stream
[2026-10-25 16:11:21,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:11:21,943.943 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-25 16:11:25,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:11:25,649.649 INFO    ] Checking for system updates...
[2026-10-25 16:11:25,686.686 INFO    ] 200
[2026-10-25 16:11:25,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:25,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:25,745.745 INFO    ] No update needed
[2026-10-25 16:11:25,748.748 INFO    ] Checking for camera pi updates...
[2026-10-25 16:11:25,786.786 INFO    ] 200
[2026-10-25 16:11:25,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:25,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:11:25,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:25,881.881 INFO    ] No camera update needed
[2026-10-25 16:11:25,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:11:25,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:11:25,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:11:25,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:11:27,937.937 INFO    ] ================================================
[2026-10-25 16:11:27,952.952 INFO    ] Launching Daemon at Sun Oct 25 16:11:27 IST 2026
[2026-10-25 16:11:27,963.963 INFO    ] ================================================
[2026-10-25 16:11:28,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:11:28
[2026-10-25 16:11:29,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:11:29,396.396 INFO    ] Initializing speech engine...
[2026-10-25 16:11:29,408.408 INFO    ] 2026-10-25 16:11:29
[2026-10-25 16:11:29,667.667 INFO    ] 2026-10-25 16:11:29
[2026-10-25 16:11:29,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:11:29,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:11:29,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:11:30,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:11:30,041.041 INFO    ] time= 25/10/2026 16:11:30
[2026-10-25 16:11:30,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:11:30,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:11:30,189.189 INFO    ] No existing commands found in stream
[2026-10-25 16:11:35,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:11:35,202.202 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 16:11:37,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:11:37,918.918 INFO    ] Checking for system updates...
[2026-10-25 16:11:37,954.954 INFO    ] 200
[2026-10-25 16:11:37,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:38,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:38,013.013 INFO    ] No update needed
[2026-10-25 16:11:38,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 16:11:38,049.049 INFO    ] 200
[2026-10-25 16:11:38,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:38,093.093 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:11:38,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:38,221.221 INFO    ] No camera update needed
[2026-10-25 16:11:38,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:11:38,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:11:38,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:11:38,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:11:40,277.277 INFO    ] ================================================
[2026-10-25 16:11:40,292.292 INFO    ] Launching Daemon at Sun Oct 25 16:11:40 IST 2026
[2026-10-25 16:11:40,303.303 INFO    ] ================================================
[2026-10-25 16:11:40,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:11:40
[2026-10-25 16:11:41,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:11:41,707.707 INFO    ] Initializing speech engine...
[2026-10-25 16:11:41,714.714 INFO    ] 2026-10-25 16:11:41
[2026-10-25 16:11:42,011.011 INFO    ] 2026-10-25 16:11:41
[2026-10-25 16:11:42,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:11:42,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:11:42,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:11:42,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:11:42,423.423 INFO    ] time= 25/10/2026 16:11:42
[2026-10-25 16:11:42,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:11:42,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:11:42,522.522 INFO    ] No existing commands found in stream
[2026-10-25 16:11:47,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:11:47,537.537 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 16:11:49,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:11:49,645.645 INFO    ] Checking for system updates...
[2026-10-25 16:11:49,681.681 INFO    ] 200
[2026-10-25 16:11:49,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:49,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:49,738.738 INFO    ] No update needed
[2026-10-25 16:11:49,741.741 INFO    ] Checking for camera pi updates...
[2026-10-25 16:11:49,774.774 INFO    ] 200
[2026-10-25 16:11:49,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:11:49,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:11:49,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:11:49,868.868 INFO    ] No camera update needed
[2026-10-25 16:11:49,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:11:49,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:11:49,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:11:49,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:11:51,926.926 INFO    ] ================================================
[2026-10-25 16:11:51,941.941 INFO    ] Launching Daemon at Sun Oct 25 16:11:51 IST 2026
[2026-10-25 16:11:51,952.952 INFO    ] ================================================
[2026-10-25 16:11:52,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:11:52
[2026-10-25 16:11:53,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:11:53,397.397 INFO    ] Initializing speech engine...
[2026-10-25 16:11:53,405.405 INFO    ] 2026-10-25 16:11:53
[2026-10-25 16:11:53,665.665 INFO    ] 2026-10-25 16:11:53
[2026-10-25 16:11:53,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:11:53,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:11:53,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:11:54,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:11:54,118.118 INFO    ] time= 25/10/2026 16:11:54
[2026-10-25 16:11:54,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:11:54,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:11:54,274.274 INFO    ] No existing commands found in stream
[2026-10-25 16:11:59,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:11:59,288.288 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 16:12:03,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:12:03,220.220 INFO    ] Checking for system updates...
[2026-10-25 16:12:03,257.257 INFO    ] 200
[2026-10-25 16:12:03,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:03,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:03,321.321 INFO    ] No update needed
[2026-10-25 16:12:03,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 16:12:03,363.363 INFO    ] 200
[2026-10-25 16:12:03,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:03,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:12:03,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:03,480.480 INFO    ] No camera update needed
[2026-10-25 16:12:03,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:12:03,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:12:03,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:12:03,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:12:05,543.543 INFO    ] ================================================
[2026-10-25 16:12:05,557.557 INFO    ] Launching Daemon at Sun Oct 25 16:12:05 IST 2026
[2026-10-25 16:12:05,568.568 INFO    ] ================================================
[2026-10-25 16:12:06,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:12:06
[2026-10-25 16:12:06,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:12:07,019.019 INFO    ] Initializing speech engine...
[2026-10-25 16:12:07,028.028 INFO    ] 2026-10-25 16:12:07
[2026-10-25 16:12:07,290.290 INFO    ] 2026-10-25 16:12:07
[2026-10-25 16:12:07,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:12:08,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:12:08,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:12:08,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:12:08,368.368 INFO    ] time= 25/10/2026 16:12:08
[2026-10-25 16:12:08,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:12:08,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:12:08,445.445 INFO    ] No existing commands found in stream
[2026-10-25 16:12:13,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:12:13,457.457 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 16:12:17,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:12:17,855.855 INFO    ] Checking for system updates...
[2026-10-25 16:12:17,892.892 INFO    ] 200
[2026-10-25 16:12:17,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:17,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:12:17,957.957 INFO    ] No update needed
[2026-10-25 16:12:17,959.959 INFO    ] Checking for camera pi updates...
[2026-10-25 16:12:17,993.993 INFO    ] 200
[2026-10-25 16:12:17,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:18,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:12:18,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:12:18,099.099 INFO    ] No camera update needed
[2026-10-25 16:12:18,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:12:18,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:12:18,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:12:18,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:12:20,156.156 INFO    ] ================================================
[2026-10-25 16:12:20,171.171 INFO    ] Launching Daemon at Sun Oct 25 16:12:20 IST 2026
[2026-10-25 16:12:20,182.182 INFO    ] ================================================
[2026-10-25 16:12:20,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:12:20
[2026-10-25 16:12:21,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:12:21,575.575 INFO    ] Initializing speech engine...
[2026-10-25 16:12:21,589.589 INFO    ] 2026-10-25 16:12:21
[2026-10-25 16:12:21,852.852 INFO    ] 2026-10-25 16:12:21
[2026-10-25 16:12:21,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:12:22,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:12:22,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:12:22,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:12:22,231.231 INFO    ] time= 25/10/2026 16:12:22
[2026-10-25 16:12:22,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:12:22,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:12:22,314.314 INFO    ] No existing commands found in stream
[2026-10-25 16:12:27,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:12:27,346.346 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 16:12:29,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:12:29,363.363 INFO    ] Checking for system updates...
[2026-10-25 16:12:29,398.398 INFO    ] 200
[2026-10-25 16:12:29,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:29,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:29,457.457 INFO    ] No update needed
[2026-10-25 16:12:29,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 16:12:29,493.493 INFO    ] 200
[2026-10-25 16:12:29,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:29,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:12:29,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:29,590.590 INFO    ] No camera update needed
[2026-10-25 16:12:29,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:12:29,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:12:29,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:12:29,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:12:31,645.645 INFO    ] ================================================
[2026-10-25 16:12:31,664.664 INFO    ] Launching Daemon at Sun Oct 25 16:12:31 IST 2026
[2026-10-25 16:12:31,675.675 INFO    ] ================================================
[2026-10-25 16:12:32,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:12:32
[2026-10-25 16:12:32,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:12:33,165.165 INFO    ] Initializing speech engine...
[2026-10-25 16:12:33,177.177 INFO    ] 2026-10-25 16:12:33
[2026-10-25 16:12:33,439.439 INFO    ] 2026-10-25 16:12:33
[2026-10-25 16:12:33,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:12:33,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:12:33,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:12:33,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:12:33,923.923 INFO    ] time= 25/10/2026 16:12:33
[2026-10-25 16:12:33,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:12:34,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:12:34,112.112 INFO    ] No existing commands found in stream
[2026-10-25 16:12:39,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:12:39,137.137 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 16:12:43,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:12:43,546.546 INFO    ] Checking for system updates...
[2026-10-25 16:12:43,584.584 INFO    ] 200
[2026-10-25 16:12:43,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:43,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:12:43,644.644 INFO    ] No update needed
[2026-10-25 16:12:43,647.647 INFO    ] Checking for camera pi updates...
[2026-10-25 16:12:43,686.686 INFO    ] 200
[2026-10-25 16:12:43,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:43,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:12:43,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:12:43,778.778 INFO    ] No camera update needed
[2026-10-25 16:12:43,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:12:43,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:12:43,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:12:43,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:12:45,833.833 INFO    ] ================================================
[2026-10-25 16:12:45,848.848 INFO    ] Launching Daemon at Sun Oct 25 16:12:45 IST 2026
[2026-10-25 16:12:45,858.858 INFO    ] ================================================
[2026-10-25 16:12:46,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:12:46
[2026-10-25 16:12:47,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:12:47,299.299 INFO    ] Initializing speech engine...
[2026-10-25 16:12:47,315.315 INFO    ] 2026-10-25 16:12:47
[2026-10-25 16:12:47,569.569 INFO    ] 2026-10-25 16:12:47
[2026-10-25 16:12:47,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:12:47,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:12:47,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:12:48,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:12:48,054.054 INFO    ] time= 25/10/2026 16:12:48
[2026-10-25 16:12:48,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:12:48,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:12:48,253.253 INFO    ] No existing commands found in stream
[2026-10-25 16:12:53,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:12:53,288.288 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 16:12:54,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:12:54,284.284 INFO    ] Checking for system updates...
[2026-10-25 16:12:54,320.320 INFO    ] 200
[2026-10-25 16:12:54,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:54,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:54,386.386 INFO    ] No update needed
[2026-10-25 16:12:54,388.388 INFO    ] Checking for camera pi updates...
[2026-10-25 16:12:54,426.426 INFO    ] 200
[2026-10-25 16:12:54,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:12:54,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:12:54,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:12:54,526.526 INFO    ] No camera update needed
[2026-10-25 16:12:54,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:12:54,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:12:54,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:12:54,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:12:56,582.582 INFO    ] ================================================
[2026-10-25 16:12:56,597.597 INFO    ] Launching Daemon at Sun Oct 25 16:12:56 IST 2026
[2026-10-25 16:12:56,608.608 INFO    ] ================================================
[2026-10-25 16:12:57,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:12:57
[2026-10-25 16:12:57,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:12:58,034.034 INFO    ] Initializing speech engine...
[2026-10-25 16:12:58,039.039 INFO    ] 2026-10-25 16:12:58
[2026-10-25 16:12:58,288.288 INFO    ] 2026-10-25 16:12:58
[2026-10-25 16:12:58,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:12:58,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:12:58,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:12:58,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:12:58,745.745 INFO    ] time= 25/10/2026 16:12:58
[2026-10-25 16:12:58,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:12:58,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:12:58,913.913 INFO    ] No existing commands found in stream
[2026-10-25 16:13:03,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:13:03,928.928 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 16:13:10,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:13:10,062.062 INFO    ] Checking for system updates...
[2026-10-25 16:13:10,098.098 INFO    ] 200
[2026-10-25 16:13:10,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:10,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:13:10,156.156 INFO    ] No update needed
[2026-10-25 16:13:10,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 16:13:10,193.193 INFO    ] 200
[2026-10-25 16:13:10,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:10,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:13:10,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:13:10,390.390 INFO    ] No camera update needed
[2026-10-25 16:13:10,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:13:10,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:13:10,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:13:10,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:13:12,448.448 INFO    ] ================================================
[2026-10-25 16:13:12,463.463 INFO    ] Launching Daemon at Sun Oct 25 16:13:12 IST 2026
[2026-10-25 16:13:12,474.474 INFO    ] ================================================
[2026-10-25 16:13:13,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:13:13
[2026-10-25 16:13:13,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:13:13,974.974 INFO    ] Initializing speech engine...
[2026-10-25 16:13:13,980.980 INFO    ] 2026-10-25 16:13:13
[2026-10-25 16:13:14,266.266 INFO    ] 2026-10-25 16:13:14
[2026-10-25 16:13:14,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:13:14,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:13:14,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:13:14,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:13:14,759.759 INFO    ] time= 25/10/2026 16:13:14
[2026-10-25 16:13:14,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:13:14,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:13:14,934.934 INFO    ] No existing commands found in stream
[2026-10-25 16:13:19,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:13:19,968.968 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 16:13:20,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:13:20,445.445 INFO    ] Checking for system updates...
[2026-10-25 16:13:20,485.485 INFO    ] 200
[2026-10-25 16:13:20,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:20,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:13:20,550.550 INFO    ] No update needed
[2026-10-25 16:13:20,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 16:13:20,586.586 INFO    ] 200
[2026-10-25 16:13:20,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:20,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:13:20,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:13:20,687.687 INFO    ] No camera update needed
[2026-10-25 16:13:20,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:13:20,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:13:20,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:13:20,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:13:22,744.744 INFO    ] ================================================
[2026-10-25 16:13:22,759.759 INFO    ] Launching Daemon at Sun Oct 25 16:13:22 IST 2026
[2026-10-25 16:13:22,769.769 INFO    ] ================================================
[2026-10-25 16:13:23,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:13:23
[2026-10-25 16:13:23,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:13:24,220.220 INFO    ] Initializing speech engine...
[2026-10-25 16:13:24,229.229 INFO    ] 2026-10-25 16:13:24
[2026-10-25 16:13:24,477.477 INFO    ] 2026-10-25 16:13:24
[2026-10-25 16:13:24,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:13:24,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:13:24,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:13:24,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:13:24,944.944 INFO    ] time= 25/10/2026 16:13:24
[2026-10-25 16:13:25,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:13:25,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:13:25,094.094 INFO    ] No existing commands found in stream
[2026-10-25 16:13:30,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:13:30,128.128 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 16:13:31,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:13:31,866.866 INFO    ] Checking for system updates...
[2026-10-25 16:13:31,906.906 INFO    ] 200
[2026-10-25 16:13:31,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:31,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:31,980.980 INFO    ] No update needed
[2026-10-25 16:13:31,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 16:13:32,024.024 INFO    ] 200
[2026-10-25 16:13:32,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:32,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:13:32,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:32,111.111 INFO    ] No camera update needed
[2026-10-25 16:13:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:13:32,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:13:32,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:13:32,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:13:34,169.169 INFO    ] ================================================
[2026-10-25 16:13:34,184.184 INFO    ] Launching Daemon at Sun Oct 25 16:13:34 IST 2026
[2026-10-25 16:13:34,195.195 INFO    ] ================================================
[2026-10-25 16:13:34,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:13:34
[2026-10-25 16:13:35,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:13:35,618.618 INFO    ] Initializing speech engine...
[2026-10-25 16:13:35,627.627 INFO    ] 2026-10-25 16:13:35
[2026-10-25 16:13:35,874.874 INFO    ] 2026-10-25 16:13:35
[2026-10-25 16:13:35,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:13:36,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:13:36,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:13:36,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:13:36,242.242 INFO    ] time= 25/10/2026 16:13:36
[2026-10-25 16:13:36,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:13:36,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:13:36,400.400 INFO    ] No existing commands found in stream
[2026-10-25 16:13:41,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:13:41,428.428 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 16:13:45,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:13:45,811.811 INFO    ] Checking for system updates...
[2026-10-25 16:13:45,852.852 INFO    ] 200
[2026-10-25 16:13:45,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:45,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:45,912.912 INFO    ] No update needed
[2026-10-25 16:13:45,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 16:13:45,949.949 INFO    ] 200
[2026-10-25 16:13:45,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:45,994.994 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:13:46,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:46,045.045 INFO    ] No camera update needed
[2026-10-25 16:13:46,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:13:46,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:13:46,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:13:46,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:13:48,102.102 INFO    ] ================================================
[2026-10-25 16:13:48,118.118 INFO    ] Launching Daemon at Sun Oct 25 16:13:48 IST 2026
[2026-10-25 16:13:48,129.129 INFO    ] ================================================
[2026-10-25 16:13:48,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:13:48
[2026-10-25 16:13:49,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:13:49,527.527 INFO    ] Initializing speech engine...
[2026-10-25 16:13:49,550.550 INFO    ] 2026-10-25 16:13:49
[2026-10-25 16:13:49,806.806 INFO    ] 2026-10-25 16:13:49
[2026-10-25 16:13:49,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:13:50,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:13:50,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:13:50,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:13:50,264.264 INFO    ] time= 25/10/2026 16:13:50
[2026-10-25 16:13:50,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:13:50,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:13:50,433.433 INFO    ] No existing commands found in stream
[2026-10-25 16:13:55,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:13:55,447.447 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 16:13:58,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:13:58,758.758 INFO    ] Checking for system updates...
[2026-10-25 16:13:58,798.798 INFO    ] 200
[2026-10-25 16:13:58,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:58,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:58,862.862 INFO    ] No update needed
[2026-10-25 16:13:58,865.865 INFO    ] Checking for camera pi updates...
[2026-10-25 16:13:58,902.902 INFO    ] 200
[2026-10-25 16:13:58,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:13:58,946.946 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:13:58,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:13:58,993.993 INFO    ] No camera update needed
[2026-10-25 16:13:58,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:13:58,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:13:59,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:13:59,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:14:01,046.046 INFO    ] ================================================
[2026-10-25 16:14:01,062.062 INFO    ] Launching Daemon at Sun Oct 25 16:14:01 IST 2026
[2026-10-25 16:14:01,073.073 INFO    ] ================================================
[2026-10-25 16:14:01,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:14:01
[2026-10-25 16:14:02,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:14:02,881.881 INFO    ] Initializing speech engine...
[2026-10-25 16:14:02,889.889 INFO    ] 2026-10-25 16:14:02
[2026-10-25 16:14:03,243.243 INFO    ] 2026-10-25 16:14:03
[2026-10-25 16:14:03,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:14:03,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:14:03,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:14:03,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:14:03,699.699 INFO    ] time= 25/10/2026 16:14:03
[2026-10-25 16:14:03,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:14:03,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:14:03,913.913 INFO    ] No existing commands found in stream
[2026-10-25 16:14:08,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:14:08,936.936 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 16:14:11,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:14:11,846.846 INFO    ] Checking for system updates...
[2026-10-25 16:14:11,887.887 INFO    ] 200
[2026-10-25 16:14:11,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:11,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:14:11,953.953 INFO    ] No update needed
[2026-10-25 16:14:11,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 16:14:11,989.989 INFO    ] 200
[2026-10-25 16:14:11,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:12,033.033 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:14:12,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:14:12,081.081 INFO    ] No camera update needed
[2026-10-25 16:14:12,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:14:12,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:14:12,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:14:12,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:14:14,138.138 INFO    ] ================================================
[2026-10-25 16:14:14,154.154 INFO    ] Launching Daemon at Sun Oct 25 16:14:14 IST 2026
[2026-10-25 16:14:14,166.166 INFO    ] ================================================
[2026-10-25 16:14:14,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:14:14
[2026-10-25 16:14:15,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:14:15,704.704 INFO    ] Initializing speech engine...
[2026-10-25 16:14:15,714.714 INFO    ] 2026-10-25 16:14:15
[2026-10-25 16:14:15,972.972 INFO    ] 2026-10-25 16:14:15
[2026-10-25 16:14:16,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:14:16,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:14:16,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:14:16,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:14:16,420.420 INFO    ] time= 25/10/2026 16:14:16
[2026-10-25 16:14:16,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:14:16,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:14:16,578.578 INFO    ] No existing commands found in stream
[2026-10-25 16:14:21,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:14:21,593.593 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 16:14:23,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:14:23,669.669 INFO    ] Checking for system updates...
[2026-10-25 16:14:23,706.706 INFO    ] 200
[2026-10-25 16:14:23,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:23,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:23,764.764 INFO    ] No update needed
[2026-10-25 16:14:23,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 16:14:23,801.801 INFO    ] 200
[2026-10-25 16:14:23,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:23,847.847 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:14:23,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:23,895.895 INFO    ] No camera update needed
[2026-10-25 16:14:23,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:14:23,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:14:23,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:14:23,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:14:25,953.953 INFO    ] ================================================
[2026-10-25 16:14:25,969.969 INFO    ] Launching Daemon at Sun Oct 25 16:14:25 IST 2026
[2026-10-25 16:14:25,981.981 INFO    ] ================================================
[2026-10-25 16:14:26,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:14:26
[2026-10-25 16:14:27,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:14:27,522.522 INFO    ] Initializing speech engine...
[2026-10-25 16:14:27,530.530 INFO    ] 2026-10-25 16:14:27
[2026-10-25 16:14:27,814.814 INFO    ] 2026-10-25 16:14:27
[2026-10-25 16:14:27,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:14:28,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:14:28,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:14:28,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:14:28,350.350 INFO    ] time= 25/10/2026 16:14:28
[2026-10-25 16:14:28,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:14:28,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:14:28,500.500 INFO    ] No existing commands found in stream
[2026-10-25 16:14:33,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:14:33,519.519 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 16:14:34,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:14:34,169.169 INFO    ] Checking for system updates...
[2026-10-25 16:14:34,210.210 INFO    ] 200
[2026-10-25 16:14:34,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:34,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:34,276.276 INFO    ] No update needed
[2026-10-25 16:14:34,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 16:14:34,312.312 INFO    ] 200
[2026-10-25 16:14:34,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:34,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:14:34,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:34,412.412 INFO    ] No camera update needed
[2026-10-25 16:14:34,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:14:34,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:14:34,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:14:34,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:14:36,470.470 INFO    ] ================================================
[2026-10-25 16:14:36,486.486 INFO    ] Launching Daemon at Sun Oct 25 16:14:36 IST 2026
[2026-10-25 16:14:36,496.496 INFO    ] ================================================
[2026-10-25 16:14:37,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:14:37
[2026-10-25 16:14:37,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:14:38,133.133 INFO    ] Initializing speech engine...
[2026-10-25 16:14:38,146.146 INFO    ] 2026-10-25 16:14:38
[2026-10-25 16:14:38,458.458 INFO    ] 2026-10-25 16:14:38
[2026-10-25 16:14:38,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:14:41,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:14:41,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:14:42,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:14:42,220.220 INFO    ] time= 25/10/2026 16:14:42
[2026-10-25 16:14:42,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:14:42,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:14:42,273.273 INFO    ] No existing commands found in stream
[2026-10-25 16:14:47,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:14:47,287.287 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 16:14:48,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:14:48,787.787 INFO    ] Checking for system updates...
[2026-10-25 16:14:48,824.824 INFO    ] 200
[2026-10-25 16:14:48,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:48,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:48,890.890 INFO    ] No update needed
[2026-10-25 16:14:48,892.892 INFO    ] Checking for camera pi updates...
[2026-10-25 16:14:48,931.931 INFO    ] 200
[2026-10-25 16:14:48,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:14:48,975.975 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:14:49,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:14:49,024.024 INFO    ] No camera update needed
[2026-10-25 16:14:49,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:14:49,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:14:49,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:14:49,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:14:51,080.080 INFO    ] ================================================
[2026-10-25 16:14:51,096.096 INFO    ] Launching Daemon at Sun Oct 25 16:14:51 IST 2026
[2026-10-25 16:14:51,107.107 INFO    ] ================================================
[2026-10-25 16:14:51,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:14:51
[2026-10-25 16:14:52,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:14:52,507.507 INFO    ] Initializing speech engine...
[2026-10-25 16:14:52,514.514 INFO    ] 2026-10-25 16:14:52
[2026-10-25 16:14:52,818.818 INFO    ] 2026-10-25 16:14:52
[2026-10-25 16:14:52,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:14:53,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:14:53,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:14:53,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:14:53,205.205 INFO    ] time= 25/10/2026 16:14:53
[2026-10-25 16:14:53,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:14:53,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:14:53,332.332 INFO    ] No existing commands found in stream
[2026-10-25 16:14:58,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:14:58,347.347 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 16:15:00,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:15:00,011.011 INFO    ] Checking for system updates...
[2026-10-25 16:15:00,047.047 INFO    ] 200
[2026-10-25 16:15:00,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:00,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:15:00,105.105 INFO    ] No update needed
[2026-10-25 16:15:00,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 16:15:00,145.145 INFO    ] 200
[2026-10-25 16:15:00,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:00,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:15:00,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:15:00,258.258 INFO    ] No camera update needed
[2026-10-25 16:15:00,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:15:00,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:15:00,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:15:00,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:15:02,336.336 INFO    ] ================================================
[2026-10-25 16:15:02,384.384 INFO    ] Launching Daemon at Sun Oct 25 16:15:02 IST 2026
[2026-10-25 16:15:02,427.427 INFO    ] ================================================
[2026-10-25 16:15:03,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:15:03
[2026-10-25 16:15:03,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:15:04,177.177 INFO    ] Initializing speech engine...
[2026-10-25 16:15:04,186.186 INFO    ] 2026-10-25 16:15:04
[2026-10-25 16:15:04,438.438 INFO    ] 2026-10-25 16:15:04
[2026-10-25 16:15:04,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:15:04,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:15:04,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:15:04,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:15:04,816.816 INFO    ] time= 25/10/2026 16:15:04
[2026-10-25 16:15:04,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:15:04,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:15:04,989.989 INFO    ] No existing commands found in stream
[2026-10-25 16:15:10,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:15:10,022.022 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 16:15:13,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:15:13,352.352 INFO    ] Checking for system updates...
[2026-10-25 16:15:13,391.391 INFO    ] 200
[2026-10-25 16:15:13,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:13,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:13,450.450 INFO    ] No update needed
[2026-10-25 16:15:13,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 16:15:13,490.490 INFO    ] 200
[2026-10-25 16:15:13,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:13,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:15:13,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:13,702.702 INFO    ] No camera update needed
[2026-10-25 16:15:13,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:15:13,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:15:13,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:15:13,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:15:15,765.765 INFO    ] ================================================
[2026-10-25 16:15:15,780.780 INFO    ] Launching Daemon at Sun Oct 25 16:15:15 IST 2026
[2026-10-25 16:15:15,791.791 INFO    ] ================================================
[2026-10-25 16:15:16,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:15:16
[2026-10-25 16:15:17,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:15:17,248.248 INFO    ] Initializing speech engine...
[2026-10-25 16:15:17,269.269 INFO    ] 2026-10-25 16:15:17
[2026-10-25 16:15:17,523.523 INFO    ] 2026-10-25 16:15:17
[2026-10-25 16:15:17,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:15:17,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:15:17,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:15:17,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:15:17,986.986 INFO    ] time= 25/10/2026 16:15:17
[2026-10-25 16:15:18,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:15:18,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:15:18,167.167 INFO    ] No existing commands found in stream
[2026-10-25 16:15:23,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:15:23,201.201 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 16:15:26,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:15:26,067.067 INFO    ] Checking for system updates...
[2026-10-25 16:15:26,104.104 INFO    ] 200
[2026-10-25 16:15:26,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:26,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:15:26,162.162 INFO    ] No update needed
[2026-10-25 16:15:26,165.165 INFO    ] Checking for camera pi updates...
[2026-10-25 16:15:26,202.202 INFO    ] 200
[2026-10-25 16:15:26,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:26,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:15:26,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:15:26,294.294 INFO    ] No camera update needed
[2026-10-25 16:15:26,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:15:26,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:15:26,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:15:26,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:15:28,350.350 INFO    ] ================================================
[2026-10-25 16:15:28,365.365 INFO    ] Launching Daemon at Sun Oct 25 16:15:28 IST 2026
[2026-10-25 16:15:28,378.378 INFO    ] ================================================
[2026-10-25 16:15:28,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:15:28
[2026-10-25 16:15:29,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:15:29,800.800 INFO    ] Initializing speech engine...
[2026-10-25 16:15:29,809.809 INFO    ] 2026-10-25 16:15:29
[2026-10-25 16:15:30,069.069 INFO    ] 2026-10-25 16:15:30
[2026-10-25 16:15:30,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:15:30,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:15:30,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:15:30,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:15:30,550.550 INFO    ] time= 25/10/2026 16:15:30
[2026-10-25 16:15:30,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:15:30,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:15:30,713.713 INFO    ] No existing commands found in stream
[2026-10-25 16:15:35,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:15:35,725.725 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 16:15:38,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:15:38,139.139 INFO    ] Checking for system updates...
[2026-10-25 16:15:38,179.179 INFO    ] 200
[2026-10-25 16:15:38,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:38,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:38,242.242 INFO    ] No update needed
[2026-10-25 16:15:38,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 16:15:38,278.278 INFO    ] 200
[2026-10-25 16:15:38,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:38,322.322 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:15:38,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:38,358.358 INFO    ] No camera update needed
[2026-10-25 16:15:38,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:15:38,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:15:38,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:15:38,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:15:40,414.414 INFO    ] ================================================
[2026-10-25 16:15:40,429.429 INFO    ] Launching Daemon at Sun Oct 25 16:15:40 IST 2026
[2026-10-25 16:15:40,441.441 INFO    ] ================================================
[2026-10-25 16:15:41,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:15:41
[2026-10-25 16:15:41,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:15:41,881.881 INFO    ] Initializing speech engine...
[2026-10-25 16:15:41,889.889 INFO    ] 2026-10-25 16:15:41
[2026-10-25 16:15:42,181.181 INFO    ] 2026-10-25 16:15:42
[2026-10-25 16:15:42,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:15:44,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:15:44,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:15:44,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:15:44,326.326 INFO    ] time= 25/10/2026 16:15:44
[2026-10-25 16:15:44,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:15:44,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:15:44,392.392 INFO    ] No existing commands found in stream
[2026-10-25 16:15:49,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:15:49,406.406 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 16:15:50,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:15:50,123.123 INFO    ] Checking for system updates...
[2026-10-25 16:15:50,160.160 INFO    ] 200
[2026-10-25 16:15:50,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:50,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:50,226.226 INFO    ] No update needed
[2026-10-25 16:15:50,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 16:15:50,265.265 INFO    ] 200
[2026-10-25 16:15:50,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:15:50,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:15:50,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:15:50,363.363 INFO    ] No camera update needed
[2026-10-25 16:15:50,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:15:50,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:15:50,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:15:50,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:15:52,420.420 INFO    ] ================================================
[2026-10-25 16:15:52,442.442 INFO    ] Launching Daemon at Sun Oct 25 16:15:52 IST 2026
[2026-10-25 16:15:52,453.453 INFO    ] ================================================
[2026-10-25 16:15:53,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:15:53
[2026-10-25 16:15:53,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:15:53,870.870 INFO    ] Initializing speech engine...
[2026-10-25 16:15:53,879.879 INFO    ] 2026-10-25 16:15:53
[2026-10-25 16:15:54,129.129 INFO    ] 2026-10-25 16:15:54
[2026-10-25 16:15:54,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:15:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:15:54,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:15:54,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:15:54,606.606 INFO    ] time= 25/10/2026 16:15:54
[2026-10-25 16:15:54,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:15:54,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:15:54,742.742 INFO    ] No existing commands found in stream
[2026-10-25 16:15:59,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:15:59,774.774 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 16:16:03,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:16:03,649.649 INFO    ] Checking for system updates...
[2026-10-25 16:16:03,685.685 INFO    ] 200
[2026-10-25 16:16:03,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:03,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:03,742.742 INFO    ] No update needed
[2026-10-25 16:16:03,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 16:16:03,778.778 INFO    ] 200
[2026-10-25 16:16:03,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:03,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:16:03,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:03,878.878 INFO    ] No camera update needed
[2026-10-25 16:16:03,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:16:03,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:16:03,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:16:03,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:16:05,938.938 INFO    ] ================================================
[2026-10-25 16:16:05,954.954 INFO    ] Launching Daemon at Sun Oct 25 16:16:05 IST 2026
[2026-10-25 16:16:05,965.965 INFO    ] ================================================
[2026-10-25 16:16:06,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:16:06
[2026-10-25 16:16:07,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:16:07,409.409 INFO    ] Initializing speech engine...
[2026-10-25 16:16:07,415.415 INFO    ] 2026-10-25 16:16:07
[2026-10-25 16:16:07,721.721 INFO    ] 2026-10-25 16:16:07
[2026-10-25 16:16:07,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:16:07,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:16:07,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:16:08,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:16:08,120.120 INFO    ] time= 25/10/2026 16:16:08
[2026-10-25 16:16:08,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:16:08,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:16:08,230.230 INFO    ] No existing commands found in stream
[2026-10-25 16:16:13,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:16:13,246.246 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 16:16:16,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:16:16,211.211 INFO    ] Checking for system updates...
[2026-10-25 16:16:16,251.251 INFO    ] 200
[2026-10-25 16:16:16,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:16,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:16:16,309.309 INFO    ] No update needed
[2026-10-25 16:16:16,311.311 INFO    ] Checking for camera pi updates...
[2026-10-25 16:16:16,345.345 INFO    ] 200
[2026-10-25 16:16:16,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:16,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:16:16,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:16:16,441.441 INFO    ] No camera update needed
[2026-10-25 16:16:16,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:16:16,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:16:16,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:16:16,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:16:18,497.497 INFO    ] ================================================
[2026-10-25 16:16:18,513.513 INFO    ] Launching Daemon at Sun Oct 25 16:16:18 IST 2026
[2026-10-25 16:16:18,523.523 INFO    ] ================================================
[2026-10-25 16:16:19,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:16:19
[2026-10-25 16:16:19,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:16:20,147.147 INFO    ] Initializing speech engine...
[2026-10-25 16:16:20,156.156 INFO    ] 2026-10-25 16:16:20
[2026-10-25 16:16:20,449.449 INFO    ] 2026-10-25 16:16:20
[2026-10-25 16:16:20,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:16:20,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:16:20,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:16:20,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:16:20,983.983 INFO    ] time= 25/10/2026 16:16:20
[2026-10-25 16:16:21,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:16:21,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:16:21,145.145 INFO    ] No existing commands found in stream
[2026-10-25 16:16:26,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:16:26,169.169 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 16:16:27,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:16:27,107.107 INFO    ] Checking for system updates...
[2026-10-25 16:16:27,144.144 INFO    ] 200
[2026-10-25 16:16:27,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:27,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:27,204.204 INFO    ] No update needed
[2026-10-25 16:16:27,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 16:16:27,245.245 INFO    ] 200
[2026-10-25 16:16:27,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:27,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:16:27,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:27,350.350 INFO    ] No camera update needed
[2026-10-25 16:16:27,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:16:27,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:16:27,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:16:27,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:16:29,408.408 INFO    ] ================================================
[2026-10-25 16:16:29,424.424 INFO    ] Launching Daemon at Sun Oct 25 16:16:29 IST 2026
[2026-10-25 16:16:29,435.435 INFO    ] ================================================
[2026-10-25 16:16:30,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:16:30
[2026-10-25 16:16:30,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:16:31,059.059 INFO    ] Initializing speech engine...
[2026-10-25 16:16:31,066.066 INFO    ] 2026-10-25 16:16:31
[2026-10-25 16:16:31,351.351 INFO    ] 2026-10-25 16:16:31
[2026-10-25 16:16:31,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:16:31,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:16:31,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:16:31,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:16:31,781.781 INFO    ] time= 25/10/2026 16:16:31
[2026-10-25 16:16:31,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:16:31,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:16:31,976.976 INFO    ] No existing commands found in stream
[2026-10-25 16:16:36,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:16:36,989.989 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 16:16:42,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:16:42,103.103 INFO    ] Checking for system updates...
[2026-10-25 16:16:42,139.139 INFO    ] 200
[2026-10-25 16:16:42,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:42,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:16:42,197.197 INFO    ] No update needed
[2026-10-25 16:16:42,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 16:16:42,233.233 INFO    ] 200
[2026-10-25 16:16:42,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:42,276.276 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:16:42,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:16:42,322.322 INFO    ] No camera update needed
[2026-10-25 16:16:42,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:16:42,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:16:42,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:16:42,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:16:44,377.377 INFO    ] ================================================
[2026-10-25 16:16:44,393.393 INFO    ] Launching Daemon at Sun Oct 25 16:16:44 IST 2026
[2026-10-25 16:16:44,404.404 INFO    ] ================================================
[2026-10-25 16:16:45,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:16:45
[2026-10-25 16:16:45,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:16:46,052.052 INFO    ] Initializing speech engine...
[2026-10-25 16:16:46,060.060 INFO    ] 2026-10-25 16:16:46
[2026-10-25 16:16:46,352.352 INFO    ] 2026-10-25 16:16:46
[2026-10-25 16:16:46,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:16:46,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:16:46,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:16:46,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:16:46,897.897 INFO    ] time= 25/10/2026 16:16:46
[2026-10-25 16:16:46,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:16:46,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:16:47,054.054 INFO    ] No existing commands found in stream
[2026-10-25 16:16:52,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:16:52,083.083 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 16:16:55,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:16:55,828.828 INFO    ] Checking for system updates...
[2026-10-25 16:16:55,871.871 INFO    ] 200
[2026-10-25 16:16:55,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:55,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:55,945.945 INFO    ] No update needed
[2026-10-25 16:16:55,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 16:16:55,984.984 INFO    ] 200
[2026-10-25 16:16:55,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:16:56,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:16:56,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:16:56,078.078 INFO    ] No camera update needed
[2026-10-25 16:16:56,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:16:56,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:16:56,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:16:56,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:16:58,137.137 INFO    ] ================================================
[2026-10-25 16:16:58,153.153 INFO    ] Launching Daemon at Sun Oct 25 16:16:58 IST 2026
[2026-10-25 16:16:58,165.165 INFO    ] ================================================
[2026-10-25 16:16:58,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:16:58
[2026-10-25 16:16:59,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:16:59,579.579 INFO    ] Initializing speech engine...
[2026-10-25 16:16:59,588.588 INFO    ] 2026-10-25 16:16:59
[2026-10-25 16:16:59,832.832 INFO    ] 2026-10-25 16:16:59
[2026-10-25 16:16:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:17:00,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:17:00,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:17:00,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:17:00,308.308 INFO    ] time= 25/10/2026 16:17:00
[2026-10-25 16:17:00,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:17:00,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:17:00,522.522 INFO    ] No existing commands found in stream
[2026-10-25 16:17:05,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:17:05,552.552 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 16:17:09,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:17:09,901.901 INFO    ] Checking for system updates...
[2026-10-25 16:17:09,937.937 INFO    ] 200
[2026-10-25 16:17:09,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:09,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:17:09,997.997 INFO    ] No update needed
[2026-10-25 16:17:09,999.999 INFO    ] Checking for camera pi updates...
[2026-10-25 16:17:10,034.034 INFO    ] 200
[2026-10-25 16:17:10,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:10,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:17:10,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:17:10,127.127 INFO    ] No camera update needed
[2026-10-25 16:17:10,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:17:10,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:17:10,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:17:10,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:17:12,184.184 INFO    ] ================================================
[2026-10-25 16:17:12,200.200 INFO    ] Launching Daemon at Sun Oct 25 16:17:12 IST 2026
[2026-10-25 16:17:12,211.211 INFO    ] ================================================
[2026-10-25 16:17:12,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:17:12
[2026-10-25 16:17:13,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:17:13,866.866 INFO    ] Initializing speech engine...
[2026-10-25 16:17:13,877.877 INFO    ] 2026-10-25 16:17:13
[2026-10-25 16:17:14,162.162 INFO    ] 2026-10-25 16:17:14
[2026-10-25 16:17:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:17:14,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:17:14,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:17:14,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:17:14,695.695 INFO    ] time= 25/10/2026 16:17:14
[2026-10-25 16:17:14,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:17:14,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:17:14,855.855 INFO    ] No existing commands found in stream
[2026-10-25 16:17:19,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:17:19,890.890 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 16:17:22,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:17:22,569.569 INFO    ] Checking for system updates...
[2026-10-25 16:17:22,606.606 INFO    ] 200
[2026-10-25 16:17:22,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:22,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:22,666.666 INFO    ] No update needed
[2026-10-25 16:17:22,669.669 INFO    ] Checking for camera pi updates...
[2026-10-25 16:17:22,704.704 INFO    ] 200
[2026-10-25 16:17:22,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:22,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:17:22,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:22,909.909 INFO    ] No camera update needed
[2026-10-25 16:17:22,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:17:22,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:17:22,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:17:22,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:17:24,967.967 INFO    ] ================================================
[2026-10-25 16:17:24,983.983 INFO    ] Launching Daemon at Sun Oct 25 16:17:24 IST 2026
[2026-10-25 16:17:24,993.993 INFO    ] ================================================
[2026-10-25 16:17:25,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:17:25
[2026-10-25 16:17:26,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:17:26,607.607 INFO    ] Initializing speech engine...
[2026-10-25 16:17:26,615.615 INFO    ] 2026-10-25 16:17:26
[2026-10-25 16:17:26,905.905 INFO    ] 2026-10-25 16:17:26
[2026-10-25 16:17:26,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:17:27,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:17:27,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:17:27,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:17:27,433.433 INFO    ] time= 25/10/2026 16:17:27
[2026-10-25 16:17:27,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:17:27,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:17:27,591.591 INFO    ] No existing commands found in stream
[2026-10-25 16:17:32,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:17:32,616.616 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 16:17:36,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:17:36,529.529 INFO    ] Checking for system updates...
[2026-10-25 16:17:36,566.566 INFO    ] 200
[2026-10-25 16:17:36,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:36,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:36,633.633 INFO    ] No update needed
[2026-10-25 16:17:36,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 16:17:36,670.670 INFO    ] 200
[2026-10-25 16:17:36,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:36,714.714 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:17:36,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:36,769.769 INFO    ] No camera update needed
[2026-10-25 16:17:36,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:17:36,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:17:36,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:17:36,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:17:38,825.825 INFO    ] ================================================
[2026-10-25 16:17:38,840.840 INFO    ] Launching Daemon at Sun Oct 25 16:17:38 IST 2026
[2026-10-25 16:17:38,851.851 INFO    ] ================================================
[2026-10-25 16:17:39,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:17:39
[2026-10-25 16:17:40,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:17:40,279.279 INFO    ] Initializing speech engine...
[2026-10-25 16:17:40,288.288 INFO    ] 2026-10-25 16:17:40
[2026-10-25 16:17:40,546.546 INFO    ] 2026-10-25 16:17:40
[2026-10-25 16:17:40,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:17:40,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:17:40,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:17:40,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:17:40,998.998 INFO    ] time= 25/10/2026 16:17:40
[2026-10-25 16:17:41,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:17:41,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:17:41,154.154 INFO    ] No existing commands found in stream
[2026-10-25 16:17:46,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:17:46,182.182 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 16:17:51,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:17:51,152.152 INFO    ] Checking for system updates...
[2026-10-25 16:17:51,187.187 INFO    ] 200
[2026-10-25 16:17:51,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:51,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:51,245.245 INFO    ] No update needed
[2026-10-25 16:17:51,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 16:17:51,281.281 INFO    ] 200
[2026-10-25 16:17:51,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:17:51,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:17:51,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:17:51,370.370 INFO    ] No camera update needed
[2026-10-25 16:17:51,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:17:51,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:17:51,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:17:51,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:17:53,432.432 INFO    ] ================================================
[2026-10-25 16:17:53,447.447 INFO    ] Launching Daemon at Sun Oct 25 16:17:53 IST 2026
[2026-10-25 16:17:53,457.457 INFO    ] ================================================
[2026-10-25 16:17:54,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:17:54
[2026-10-25 16:17:54,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:17:54,879.879 INFO    ] Initializing speech engine...
[2026-10-25 16:17:54,886.886 INFO    ] 2026-10-25 16:17:54
[2026-10-25 16:17:55,143.143 INFO    ] 2026-10-25 16:17:55
[2026-10-25 16:17:55,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:17:55,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:17:55,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:17:55,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:17:55,605.605 INFO    ] time= 25/10/2026 16:17:55
[2026-10-25 16:17:55,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:17:55,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:17:55,750.750 INFO    ] No existing commands found in stream
[2026-10-25 16:18:00,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:18:00,766.766 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 16:18:04,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:18:04,242.242 INFO    ] Checking for system updates...
[2026-10-25 16:18:04,280.280 INFO    ] 200
[2026-10-25 16:18:04,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:04,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:04,351.351 INFO    ] No update needed
[2026-10-25 16:18:04,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 16:18:04,389.389 INFO    ] 200
[2026-10-25 16:18:04,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:04,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:18:04,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:04,489.489 INFO    ] No camera update needed
[2026-10-25 16:18:04,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:18:04,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:18:04,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:18:04,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:18:06,544.544 INFO    ] ================================================
[2026-10-25 16:18:06,560.560 INFO    ] Launching Daemon at Sun Oct 25 16:18:06 IST 2026
[2026-10-25 16:18:06,570.570 INFO    ] ================================================
[2026-10-25 16:18:07,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:18:07
[2026-10-25 16:18:07,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:18:08,188.188 INFO    ] Initializing speech engine...
[2026-10-25 16:18:08,201.201 INFO    ] 2026-10-25 16:18:08
[2026-10-25 16:18:08,510.510 INFO    ] 2026-10-25 16:18:08
[2026-10-25 16:18:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:18:09,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:18:09,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:18:09,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:18:09,307.307 INFO    ] time= 25/10/2026 16:18:09
[2026-10-25 16:18:09,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:18:09,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:18:09,462.462 INFO    ] No existing commands found in stream
[2026-10-25 16:18:14,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:18:14,476.476 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 16:18:16,693.693 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:18:16,696.696 INFO    ] Checking for system updates...
[2026-10-25 16:18:16,734.734 INFO    ] 200
[2026-10-25 16:18:16,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:16,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:16,805.805 INFO    ] No update needed
[2026-10-25 16:18:16,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 16:18:16,842.842 INFO    ] 200
[2026-10-25 16:18:16,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:16,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:18:16,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:16,939.939 INFO    ] No camera update needed
[2026-10-25 16:18:16,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:18:16,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:18:16,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:18:16,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:18:19,995.995 INFO    ] ================================================
[2026-10-25 16:18:19,011.011 INFO    ] Launching Daemon at Sun Oct 25 16:18:19 IST 2026
[2026-10-25 16:18:19,022.022 INFO    ] ================================================
[2026-10-25 16:18:19,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:18:19
[2026-10-25 16:18:20,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:18:20,558.558 INFO    ] Initializing speech engine...
[2026-10-25 16:18:20,565.565 INFO    ] 2026-10-25 16:18:20
[2026-10-25 16:18:20,858.858 INFO    ] 2026-10-25 16:18:20
[2026-10-25 16:18:20,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:18:22,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:18:22,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:18:22,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:18:22,640.640 INFO    ] time= 25/10/2026 16:18:22
[2026-10-25 16:18:22,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:18:22,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:18:22,751.751 INFO    ] No existing commands found in stream
[2026-10-25 16:18:27,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:18:27,778.778 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 16:18:31,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:18:31,047.047 INFO    ] Checking for system updates...
[2026-10-25 16:18:31,083.083 INFO    ] 200
[2026-10-25 16:18:31,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:31,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:31,143.143 INFO    ] No update needed
[2026-10-25 16:18:31,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 16:18:31,182.182 INFO    ] 200
[2026-10-25 16:18:31,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:31,231.231 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:18:31,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:31,272.272 INFO    ] No camera update needed
[2026-10-25 16:18:31,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:18:31,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:18:31,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:18:31,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:18:33,329.329 INFO    ] ================================================
[2026-10-25 16:18:33,344.344 INFO    ] Launching Daemon at Sun Oct 25 16:18:33 IST 2026
[2026-10-25 16:18:33,355.355 INFO    ] ================================================
[2026-10-25 16:18:33,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:18:33
[2026-10-25 16:18:34,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:18:34,752.752 INFO    ] Initializing speech engine...
[2026-10-25 16:18:34,758.758 INFO    ] 2026-10-25 16:18:34
[2026-10-25 16:18:35,047.047 INFO    ] 2026-10-25 16:18:35
[2026-10-25 16:18:35,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:18:35,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:18:35,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:18:35,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:18:35,852.852 INFO    ] time= 25/10/2026 16:18:35
[2026-10-25 16:18:35,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:18:35,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:18:36,048.048 INFO    ] No existing commands found in stream
[2026-10-25 16:18:41,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:18:41,076.076 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 16:18:44,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:18:44,132.132 INFO    ] Checking for system updates...
[2026-10-25 16:18:44,168.168 INFO    ] 200
[2026-10-25 16:18:44,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:44,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:18:44,232.232 INFO    ] No update needed
[2026-10-25 16:18:44,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 16:18:44,268.268 INFO    ] 200
[2026-10-25 16:18:44,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:44,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:18:44,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:18:44,369.369 INFO    ] No camera update needed
[2026-10-25 16:18:44,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:18:44,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:18:44,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:18:44,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:18:46,424.424 INFO    ] ================================================
[2026-10-25 16:18:46,439.439 INFO    ] Launching Daemon at Sun Oct 25 16:18:46 IST 2026
[2026-10-25 16:18:46,454.454 INFO    ] ================================================
[2026-10-25 16:18:47,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:18:47
[2026-10-25 16:18:47,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:18:47,899.899 INFO    ] Initializing speech engine...
[2026-10-25 16:18:47,923.923 INFO    ] 2026-10-25 16:18:47
[2026-10-25 16:18:48,197.197 INFO    ] 2026-10-25 16:18:48
[2026-10-25 16:18:48,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:18:48,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:18:48,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:18:48,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:18:48,589.589 INFO    ] time= 25/10/2026 16:18:48
[2026-10-25 16:18:48,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:18:48,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:18:48,744.744 INFO    ] No existing commands found in stream
[2026-10-25 16:18:53,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:18:53,783.783 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 16:18:55,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:18:55,743.743 INFO    ] Checking for system updates...
[2026-10-25 16:18:55,780.780 INFO    ] 200
[2026-10-25 16:18:55,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:55,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:55,842.842 INFO    ] No update needed
[2026-10-25 16:18:55,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 16:18:55,882.882 INFO    ] 200
[2026-10-25 16:18:55,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:18:55,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:18:55,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:18:55,986.986 INFO    ] No camera update needed
[2026-10-25 16:18:55,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:18:55,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:18:55,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:18:56,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:18:58,042.042 INFO    ] ================================================
[2026-10-25 16:18:58,057.057 INFO    ] Launching Daemon at Sun Oct 25 16:18:58 IST 2026
[2026-10-25 16:18:58,069.069 INFO    ] ================================================
[2026-10-25 16:18:58,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:18:58
[2026-10-25 16:18:59,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:18:59,642.642 INFO    ] Initializing speech engine...
[2026-10-25 16:18:59,650.650 INFO    ] 2026-10-25 16:18:59
[2026-10-25 16:18:59,932.932 INFO    ] 2026-10-25 16:18:59
[2026-10-25 16:18:59,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:19:00,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:19:00,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:19:00,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:19:00,469.469 INFO    ] time= 25/10/2026 16:19:00
[2026-10-25 16:19:00,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:19:00,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:19:00,618.618 INFO    ] No existing commands found in stream
[2026-10-25 16:19:05,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:19:05,636.636 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 16:19:09,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:19:09,144.144 INFO    ] Checking for system updates...
[2026-10-25 16:19:09,183.183 INFO    ] 200
[2026-10-25 16:19:09,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:09,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:09,246.246 INFO    ] No update needed
[2026-10-25 16:19:09,249.249 INFO    ] Checking for camera pi updates...
[2026-10-25 16:19:09,284.284 INFO    ] 200
[2026-10-25 16:19:09,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:09,334.334 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:19:09,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:09,389.389 INFO    ] No camera update needed
[2026-10-25 16:19:09,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:19:09,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:19:09,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:19:09,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:19:11,444.444 INFO    ] ================================================
[2026-10-25 16:19:11,460.460 INFO    ] Launching Daemon at Sun Oct 25 16:19:11 IST 2026
[2026-10-25 16:19:11,471.471 INFO    ] ================================================
[2026-10-25 16:19:12,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:19:12
[2026-10-25 16:19:12,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:19:12,885.885 INFO    ] Initializing speech engine...
[2026-10-25 16:19:12,899.899 INFO    ] 2026-10-25 16:19:12
[2026-10-25 16:19:13,155.155 INFO    ] 2026-10-25 16:19:13
[2026-10-25 16:19:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:19:13,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:19:13,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:19:13,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:19:13,532.532 INFO    ] time= 25/10/2026 16:19:13
[2026-10-25 16:19:13,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:19:13,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:19:13,709.709 INFO    ] No existing commands found in stream
[2026-10-25 16:19:18,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:19:18,736.736 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 16:19:24,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:19:24,478.478 INFO    ] Checking for system updates...
[2026-10-25 16:19:24,516.516 INFO    ] 200
[2026-10-25 16:19:24,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:24,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:24,574.574 INFO    ] No update needed
[2026-10-25 16:19:24,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 16:19:24,613.613 INFO    ] 200
[2026-10-25 16:19:24,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:24,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:19:24,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:24,802.802 INFO    ] No camera update needed
[2026-10-25 16:19:24,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:19:24,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:19:24,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:19:24,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:19:26,857.857 INFO    ] ================================================
[2026-10-25 16:19:26,879.879 INFO    ] Launching Daemon at Sun Oct 25 16:19:26 IST 2026
[2026-10-25 16:19:26,891.891 INFO    ] ================================================
[2026-10-25 16:19:27,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:19:27
[2026-10-25 16:19:28,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:19:28,291.291 INFO    ] Initializing speech engine...
[2026-10-25 16:19:28,314.314 INFO    ] 2026-10-25 16:19:28
[2026-10-25 16:19:28,572.572 INFO    ] 2026-10-25 16:19:28
[2026-10-25 16:19:28,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:19:28,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:19:28,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:19:28,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:19:28,972.972 INFO    ] time= 25/10/2026 16:19:28
[2026-10-25 16:19:28,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:19:28,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:19:29,061.061 INFO    ] No existing commands found in stream
[2026-10-25 16:19:34,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:19:34,098.098 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 16:19:34,875.875 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:19:34,878.878 INFO    ] Checking for system updates...
[2026-10-25 16:19:34,914.914 INFO    ] 200
[2026-10-25 16:19:34,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:34,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:34,977.977 INFO    ] No update needed
[2026-10-25 16:19:34,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 16:19:35,015.015 INFO    ] 200
[2026-10-25 16:19:35,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:35,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:19:35,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:19:35,113.113 INFO    ] No camera update needed
[2026-10-25 16:19:35,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:19:35,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:19:35,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:19:35,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:19:37,167.167 INFO    ] ================================================
[2026-10-25 16:19:37,182.182 INFO    ] Launching Daemon at Sun Oct 25 16:19:37 IST 2026
[2026-10-25 16:19:37,193.193 INFO    ] ================================================
[2026-10-25 16:19:37,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:19:37
[2026-10-25 16:19:38,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:19:38,596.596 INFO    ] Initializing speech engine...
[2026-10-25 16:19:38,622.622 INFO    ] 2026-10-25 16:19:38
[2026-10-25 16:19:38,871.871 INFO    ] 2026-10-25 16:19:38
[2026-10-25 16:19:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:19:39,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:19:39,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:19:39,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:19:39,346.346 INFO    ] time= 25/10/2026 16:19:39
[2026-10-25 16:19:39,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:19:39,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:19:39,537.537 INFO    ] No existing commands found in stream
[2026-10-25 16:19:44,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:19:44,564.564 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 16:19:46,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:19:46,654.654 INFO    ] Checking for system updates...
[2026-10-25 16:19:46,691.691 INFO    ] 200
[2026-10-25 16:19:46,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:46,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:19:46,748.748 INFO    ] No update needed
[2026-10-25 16:19:46,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 16:19:46,785.785 INFO    ] 200
[2026-10-25 16:19:46,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:46,829.829 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:19:46,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:19:46,882.882 INFO    ] No camera update needed
[2026-10-25 16:19:46,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:19:46,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:19:46,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:19:46,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:19:48,936.936 INFO    ] ================================================
[2026-10-25 16:19:48,952.952 INFO    ] Launching Daemon at Sun Oct 25 16:19:48 IST 2026
[2026-10-25 16:19:48,964.964 INFO    ] ================================================
[2026-10-25 16:19:49,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:19:49
[2026-10-25 16:19:50,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:19:50,356.356 INFO    ] Initializing speech engine...
[2026-10-25 16:19:50,364.364 INFO    ] 2026-10-25 16:19:50
[2026-10-25 16:19:50,645.645 INFO    ] 2026-10-25 16:19:50
[2026-10-25 16:19:50,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:19:50,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:19:50,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:19:51,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:19:51,019.019 INFO    ] time= 25/10/2026 16:19:51
[2026-10-25 16:19:51,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:19:51,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:19:51,193.193 INFO    ] No existing commands found in stream
[2026-10-25 16:19:56,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:19:56,226.226 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 16:19:59,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:19:59,404.404 INFO    ] Checking for system updates...
[2026-10-25 16:19:59,440.440 INFO    ] 200
[2026-10-25 16:19:59,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:59,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:19:59,503.503 INFO    ] No update needed
[2026-10-25 16:19:59,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 16:19:59,539.539 INFO    ] 200
[2026-10-25 16:19:59,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:19:59,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:19:59,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:19:59,644.644 INFO    ] No camera update needed
[2026-10-25 16:19:59,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:19:59,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:19:59,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:19:59,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:20:01,752.752 INFO    ] ================================================
[2026-10-25 16:20:01,855.855 INFO    ] Launching Daemon at Sun Oct 25 16:20:01 IST 2026
[2026-10-25 16:20:01,946.946 INFO    ] ================================================
[2026-10-25 16:20:02,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:20:02
[2026-10-25 16:20:03,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:20:03,902.902 INFO    ] Initializing speech engine...
[2026-10-25 16:20:03,928.928 INFO    ] 2026-10-25 16:20:03
[2026-10-25 16:20:04,223.223 INFO    ] 2026-10-25 16:20:04
[2026-10-25 16:20:04,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:20:04,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:20:04,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:20:04,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:20:04,602.602 INFO    ] time= 25/10/2026 16:20:04
[2026-10-25 16:20:04,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:20:04,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:20:04,688.688 INFO    ] No existing commands found in stream
[2026-10-25 16:20:09,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:20:09,700.700 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 16:20:14,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:20:14,029.029 INFO    ] Checking for system updates...
[2026-10-25 16:20:14,069.069 INFO    ] 200
[2026-10-25 16:20:14,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:14,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:20:14,127.127 INFO    ] No update needed
[2026-10-25 16:20:14,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 16:20:14,163.163 INFO    ] 200
[2026-10-25 16:20:14,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:14,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:20:14,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:20:14,267.267 INFO    ] No camera update needed
[2026-10-25 16:20:14,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:20:14,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:20:14,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:20:14,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:20:16,323.323 INFO    ] ================================================
[2026-10-25 16:20:16,339.339 INFO    ] Launching Daemon at Sun Oct 25 16:20:16 IST 2026
[2026-10-25 16:20:16,350.350 INFO    ] ================================================
[2026-10-25 16:20:17,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:20:17
[2026-10-25 16:20:17,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:20:18,019.019 INFO    ] Initializing speech engine...
[2026-10-25 16:20:18,031.031 INFO    ] 2026-10-25 16:20:18
[2026-10-25 16:20:18,319.319 INFO    ] 2026-10-25 16:20:18
[2026-10-25 16:20:18,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:20:18,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:20:18,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:20:18,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:20:18,850.850 INFO    ] time= 25/10/2026 16:20:18
[2026-10-25 16:20:18,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:20:18,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:20:19,004.004 INFO    ] No existing commands found in stream
[2026-10-25 16:20:24,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:20:24,025.025 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 16:20:28,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:20:28,193.193 INFO    ] Checking for system updates...
[2026-10-25 16:20:28,231.231 INFO    ] 200
[2026-10-25 16:20:28,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:28,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:28,299.299 INFO    ] No update needed
[2026-10-25 16:20:28,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 16:20:28,341.341 INFO    ] 200
[2026-10-25 16:20:28,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:28,386.386 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:20:28,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:28,449.449 INFO    ] No camera update needed
[2026-10-25 16:20:28,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:20:28,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:20:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:20:28,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:20:30,510.510 INFO    ] ================================================
[2026-10-25 16:20:30,526.526 INFO    ] Launching Daemon at Sun Oct 25 16:20:30 IST 2026
[2026-10-25 16:20:30,536.536 INFO    ] ================================================
[2026-10-25 16:20:31,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:20:31
[2026-10-25 16:20:31,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:20:32,224.224 INFO    ] Initializing speech engine...
[2026-10-25 16:20:32,240.240 INFO    ] 2026-10-25 16:20:32
[2026-10-25 16:20:32,558.558 INFO    ] 2026-10-25 16:20:32
[2026-10-25 16:20:32,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:20:32,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:20:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:20:33,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:20:33,037.037 INFO    ] time= 25/10/2026 16:20:33
[2026-10-25 16:20:33,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:20:33,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:20:33,225.225 INFO    ] No existing commands found in stream
[2026-10-25 16:20:38,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:20:38,244.244 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 16:20:40,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:20:40,967.967 INFO    ] Checking for system updates...
[2026-10-25 16:20:41,004.004 INFO    ] 200
[2026-10-25 16:20:41,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:41,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:41,064.064 INFO    ] No update needed
[2026-10-25 16:20:41,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 16:20:41,106.106 INFO    ] 200
[2026-10-25 16:20:41,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:41,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:20:41,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:41,222.222 INFO    ] No camera update needed
[2026-10-25 16:20:41,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:20:41,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:20:41,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:20:41,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:20:43,281.281 INFO    ] ================================================
[2026-10-25 16:20:43,297.297 INFO    ] Launching Daemon at Sun Oct 25 16:20:43 IST 2026
[2026-10-25 16:20:43,308.308 INFO    ] ================================================
[2026-10-25 16:20:43,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:20:43
[2026-10-25 16:20:44,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:20:44,698.698 INFO    ] Initializing speech engine...
[2026-10-25 16:20:44,713.713 INFO    ] 2026-10-25 16:20:44
[2026-10-25 16:20:44,974.974 INFO    ] 2026-10-25 16:20:44
[2026-10-25 16:20:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:20:45,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:20:45,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:20:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:20:45,340.340 INFO    ] time= 25/10/2026 16:20:45
[2026-10-25 16:20:45,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:20:45,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:20:45,515.515 INFO    ] No existing commands found in stream
[2026-10-25 16:20:50,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:20:50,543.543 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 16:20:51,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:20:51,081.081 INFO    ] Checking for system updates...
[2026-10-25 16:20:51,118.118 INFO    ] 200
[2026-10-25 16:20:51,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:51,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:51,175.175 INFO    ] No update needed
[2026-10-25 16:20:51,178.178 INFO    ] Checking for camera pi updates...
[2026-10-25 16:20:51,216.216 INFO    ] 200
[2026-10-25 16:20:51,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:20:51,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:20:51,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:20:51,315.315 INFO    ] No camera update needed
[2026-10-25 16:20:51,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:20:51,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:20:51,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:20:51,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:20:53,372.372 INFO    ] ================================================
[2026-10-25 16:20:53,388.388 INFO    ] Launching Daemon at Sun Oct 25 16:20:53 IST 2026
[2026-10-25 16:20:53,399.399 INFO    ] ================================================
[2026-10-25 16:20:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:20:53
[2026-10-25 16:20:54,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:20:54,973.973 INFO    ] Initializing speech engine...
[2026-10-25 16:20:54,980.980 INFO    ] 2026-10-25 16:20:54
[2026-10-25 16:20:55,264.264 INFO    ] 2026-10-25 16:20:55
[2026-10-25 16:20:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:20:57,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:20:57,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:20:57,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:20:57,548.548 INFO    ] time= 25/10/2026 16:20:57
[2026-10-25 16:20:57,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:20:57,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:20:57,647.647 INFO    ] No existing commands found in stream
[2026-10-25 16:21:02,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:21:02,676.676 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 16:21:06,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:21:06,465.465 INFO    ] Checking for system updates...
[2026-10-25 16:21:06,502.502 INFO    ] 200
[2026-10-25 16:21:06,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:06,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:21:06,559.559 INFO    ] No update needed
[2026-10-25 16:21:06,562.562 INFO    ] Checking for camera pi updates...
[2026-10-25 16:21:06,599.599 INFO    ] 200
[2026-10-25 16:21:06,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:06,643.643 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:21:06,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:21:06,703.703 INFO    ] No camera update needed
[2026-10-25 16:21:06,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:21:06,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:21:06,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:21:06,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:21:08,758.758 INFO    ] ================================================
[2026-10-25 16:21:08,773.773 INFO    ] Launching Daemon at Sun Oct 25 16:21:08 IST 2026
[2026-10-25 16:21:08,784.784 INFO    ] ================================================
[2026-10-25 16:21:09,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:21:09
[2026-10-25 16:21:09,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:21:10,185.185 INFO    ] Initializing speech engine...
[2026-10-25 16:21:10,192.192 INFO    ] 2026-10-25 16:21:10
[2026-10-25 16:21:10,487.487 INFO    ] 2026-10-25 16:21:10
[2026-10-25 16:21:10,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:21:10,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:21:10,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:21:10,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:21:10,868.868 INFO    ] time= 25/10/2026 16:21:10
[2026-10-25 16:21:10,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:21:10,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:21:10,994.994 INFO    ] No existing commands found in stream
[2026-10-25 16:21:16,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:21:16,009.009 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 16:21:17,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:21:17,135.135 INFO    ] Checking for system updates...
[2026-10-25 16:21:17,171.171 INFO    ] 200
[2026-10-25 16:21:17,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:17,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:21:17,229.229 INFO    ] No update needed
[2026-10-25 16:21:17,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 16:21:17,266.266 INFO    ] 200
[2026-10-25 16:21:17,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:17,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:21:17,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:21:17,363.363 INFO    ] No camera update needed
[2026-10-25 16:21:17,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:21:17,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:21:17,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:21:17,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:21:19,418.418 INFO    ] ================================================
[2026-10-25 16:21:19,433.433 INFO    ] Launching Daemon at Sun Oct 25 16:21:19 IST 2026
[2026-10-25 16:21:19,445.445 INFO    ] ================================================
[2026-10-25 16:21:20,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:21:20
[2026-10-25 16:21:20,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:21:20,863.863 INFO    ] Initializing speech engine...
[2026-10-25 16:21:20,873.873 INFO    ] 2026-10-25 16:21:20
[2026-10-25 16:21:21,116.116 INFO    ] 2026-10-25 16:21:21
[2026-10-25 16:21:21,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:21:21,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:21:21,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:21:21,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:21:21,482.482 INFO    ] time= 25/10/2026 16:21:21
[2026-10-25 16:21:21,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:21:21,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:21:21,654.654 INFO    ] No existing commands found in stream
[2026-10-25 16:21:26,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:21:26,687.687 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 16:21:30,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:21:30,110.110 INFO    ] Checking for system updates...
[2026-10-25 16:21:30,148.148 INFO    ] 200
[2026-10-25 16:21:30,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:30,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:21:30,216.216 INFO    ] No update needed
[2026-10-25 16:21:30,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 16:21:30,260.260 INFO    ] 200
[2026-10-25 16:21:30,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:30,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:21:30,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:21:30,460.460 INFO    ] No camera update needed
[2026-10-25 16:21:30,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:21:30,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:21:30,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:21:30,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:21:32,519.519 INFO    ] ================================================
[2026-10-25 16:21:32,535.535 INFO    ] Launching Daemon at Sun Oct 25 16:21:32 IST 2026
[2026-10-25 16:21:32,546.546 INFO    ] ================================================
[2026-10-25 16:21:33,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:21:33
[2026-10-25 16:21:33,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:21:34,169.169 INFO    ] Initializing speech engine...
[2026-10-25 16:21:34,176.176 INFO    ] 2026-10-25 16:21:34
[2026-10-25 16:21:34,461.461 INFO    ] 2026-10-25 16:21:34
[2026-10-25 16:21:34,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:21:34,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:21:34,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:21:34,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:21:34,996.996 INFO    ] time= 25/10/2026 16:21:34
[2026-10-25 16:21:35,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:21:35,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:21:35,149.149 INFO    ] No existing commands found in stream
[2026-10-25 16:21:40,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:21:40,168.168 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 16:21:43,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:21:43,376.376 INFO    ] Checking for system updates...
[2026-10-25 16:21:43,414.414 INFO    ] 200
[2026-10-25 16:21:43,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:43,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:21:43,483.483 INFO    ] No update needed
[2026-10-25 16:21:43,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 16:21:43,519.519 INFO    ] 200
[2026-10-25 16:21:43,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:21:43,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:21:43,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:21:43,614.614 INFO    ] No camera update needed
[2026-10-25 16:21:43,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:21:43,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:21:43,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:21:43,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:21:45,669.669 INFO    ] ================================================
[2026-10-25 16:21:45,685.685 INFO    ] Launching Daemon at Sun Oct 25 16:21:45 IST 2026
[2026-10-25 16:21:45,698.698 INFO    ] ================================================
[2026-10-25 16:21:46,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:21:46
[2026-10-25 16:21:46,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:21:47,099.099 INFO    ] Initializing speech engine...
[2026-10-25 16:21:47,108.108 INFO    ] 2026-10-25 16:21:47
[2026-10-25 16:21:47,387.387 INFO    ] 2026-10-25 16:21:47
[2026-10-25 16:21:47,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:21:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:21:47,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:21:47,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:21:47,889.889 INFO    ] time= 25/10/2026 16:21:47
[2026-10-25 16:21:47,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:21:47,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:21:48,025.025 INFO    ] No existing commands found in stream
[2026-10-25 16:21:53,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:21:53,041.041 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 16:22:01,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:22:01,874.874 INFO    ] Checking for system updates...
[2026-10-25 16:22:01,918.918 INFO    ] 200
[2026-10-25 16:22:01,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:01,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:02,002.002 INFO    ] No update needed
[2026-10-25 16:22:02,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 16:22:02,061.061 INFO    ] 200
[2026-10-25 16:22:02,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:02,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:22:02,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:02,162.162 INFO    ] No camera update needed
[2026-10-25 16:22:02,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:22:02,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:22:02,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:22:02,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:22:04,228.228 INFO    ] ================================================
[2026-10-25 16:22:04,244.244 INFO    ] Launching Daemon at Sun Oct 25 16:22:04 IST 2026
[2026-10-25 16:22:04,255.255 INFO    ] ================================================
[2026-10-25 16:22:04,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:22:04
[2026-10-25 16:22:05,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:22:05,670.670 INFO    ] Initializing speech engine...
[2026-10-25 16:22:05,680.680 INFO    ] 2026-10-25 16:22:05
[2026-10-25 16:22:05,924.924 INFO    ] 2026-10-25 16:22:05
[2026-10-25 16:22:05,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:22:06,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:22:06,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:22:06,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:22:06,291.291 INFO    ] time= 25/10/2026 16:22:06
[2026-10-25 16:22:06,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:22:06,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:22:06,467.467 INFO    ] No existing commands found in stream
[2026-10-25 16:22:11,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:22:11,495.495 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 16:22:15,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:22:15,557.557 INFO    ] Checking for system updates...
[2026-10-25 16:22:15,593.593 INFO    ] 200
[2026-10-25 16:22:15,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:15,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:22:15,653.653 INFO    ] No update needed
[2026-10-25 16:22:15,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 16:22:15,689.689 INFO    ] 200
[2026-10-25 16:22:15,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:15,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:22:15,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:22:15,784.784 INFO    ] No camera update needed
[2026-10-25 16:22:15,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:22:15,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:22:15,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:22:15,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:22:17,840.840 INFO    ] ================================================
[2026-10-25 16:22:17,856.856 INFO    ] Launching Daemon at Sun Oct 25 16:22:17 IST 2026
[2026-10-25 16:22:17,867.867 INFO    ] ================================================
[2026-10-25 16:22:18,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:22:18
[2026-10-25 16:22:19,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:22:19,262.262 INFO    ] Initializing speech engine...
[2026-10-25 16:22:19,276.276 INFO    ] 2026-10-25 16:22:19
[2026-10-25 16:22:19,541.541 INFO    ] 2026-10-25 16:22:19
[2026-10-25 16:22:19,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:22:19,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:22:19,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:22:19,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:22:19,934.934 INFO    ] time= 25/10/2026 16:22:19
[2026-10-25 16:22:19,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:22:19,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:22:20,019.019 INFO    ] No existing commands found in stream
[2026-10-25 16:22:25,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:22:25,035.035 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 16:22:29,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:22:29,974.974 INFO    ] Checking for system updates...
[2026-10-25 16:22:30,010.010 INFO    ] 200
[2026-10-25 16:22:30,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:30,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:22:30,067.067 INFO    ] No update needed
[2026-10-25 16:22:30,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 16:22:30,103.103 INFO    ] 200
[2026-10-25 16:22:30,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:30,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:22:30,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:22:30,196.196 INFO    ] No camera update needed
[2026-10-25 16:22:30,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:22:30,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:22:30,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:22:30,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:22:32,252.252 INFO    ] ================================================
[2026-10-25 16:22:32,268.268 INFO    ] Launching Daemon at Sun Oct 25 16:22:32 IST 2026
[2026-10-25 16:22:32,281.281 INFO    ] ================================================
[2026-10-25 16:22:32,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:22:32
[2026-10-25 16:22:33,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:22:33,983.983 INFO    ] Initializing speech engine...
[2026-10-25 16:22:33,990.990 INFO    ] 2026-10-25 16:22:33
[2026-10-25 16:22:34,301.301 INFO    ] 2026-10-25 16:22:34
[2026-10-25 16:22:34,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:22:34,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:22:34,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:22:34,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:22:34,730.730 INFO    ] time= 25/10/2026 16:22:34
[2026-10-25 16:22:34,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:22:34,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:22:34,891.891 INFO    ] No existing commands found in stream
[2026-10-25 16:22:39,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:22:39,905.905 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 16:22:41,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:22:41,603.603 INFO    ] Checking for system updates...
[2026-10-25 16:22:41,641.641 INFO    ] 200
[2026-10-25 16:22:41,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:41,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:41,701.701 INFO    ] No update needed
[2026-10-25 16:22:41,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 16:22:41,739.739 INFO    ] 200
[2026-10-25 16:22:41,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:41,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:22:41,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:41,848.848 INFO    ] No camera update needed
[2026-10-25 16:22:41,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:22:41,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:22:41,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:22:41,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:22:43,908.908 INFO    ] ================================================
[2026-10-25 16:22:43,923.923 INFO    ] Launching Daemon at Sun Oct 25 16:22:43 IST 2026
[2026-10-25 16:22:43,934.934 INFO    ] ================================================
[2026-10-25 16:22:44,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:22:44
[2026-10-25 16:22:45,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:22:45,333.333 INFO    ] Initializing speech engine...
[2026-10-25 16:22:45,345.345 INFO    ] 2026-10-25 16:22:45
[2026-10-25 16:22:45,606.606 INFO    ] 2026-10-25 16:22:45
[2026-10-25 16:22:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:22:45,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:22:45,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:22:46,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:22:46,097.097 INFO    ] time= 25/10/2026 16:22:46
[2026-10-25 16:22:46,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:22:46,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:22:46,286.286 INFO    ] No existing commands found in stream
[2026-10-25 16:22:51,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:22:51,310.310 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 16:22:54,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:22:54,639.639 INFO    ] Checking for system updates...
[2026-10-25 16:22:54,678.678 INFO    ] 200
[2026-10-25 16:22:54,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:54,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:54,735.735 INFO    ] No update needed
[2026-10-25 16:22:54,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 16:22:54,771.771 INFO    ] 200
[2026-10-25 16:22:54,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:22:54,814.814 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:22:54,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:22:54,869.869 INFO    ] No camera update needed
[2026-10-25 16:22:54,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:22:54,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:22:54,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:22:54,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:22:56,925.925 INFO    ] ================================================
[2026-10-25 16:22:56,941.941 INFO    ] Launching Daemon at Sun Oct 25 16:22:56 IST 2026
[2026-10-25 16:22:56,951.951 INFO    ] ================================================
[2026-10-25 16:22:57,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:22:57
[2026-10-25 16:22:58,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:22:58,405.405 INFO    ] Initializing speech engine...
[2026-10-25 16:22:58,414.414 INFO    ] 2026-10-25 16:22:58
[2026-10-25 16:22:58,666.666 INFO    ] 2026-10-25 16:22:58
[2026-10-25 16:22:58,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:23:01,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:23:01,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:23:01,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:23:01,416.416 INFO    ] time= 25/10/2026 16:23:01
[2026-10-25 16:23:01,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:23:01,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:23:01,493.493 INFO    ] No existing commands found in stream
[2026-10-25 16:23:06,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:23:06,506.506 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 16:23:10,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:23:10,838.838 INFO    ] Checking for system updates...
[2026-10-25 16:23:10,875.875 INFO    ] 200
[2026-10-25 16:23:10,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:10,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:10,934.934 INFO    ] No update needed
[2026-10-25 16:23:10,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 16:23:10,971.971 INFO    ] 200
[2026-10-25 16:23:10,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:11,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:23:11,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:11,065.065 INFO    ] No camera update needed
[2026-10-25 16:23:11,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:23:11,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:23:11,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:23:11,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:23:13,122.122 INFO    ] ================================================
[2026-10-25 16:23:13,138.138 INFO    ] Launching Daemon at Sun Oct 25 16:23:13 IST 2026
[2026-10-25 16:23:13,149.149 INFO    ] ================================================
[2026-10-25 16:23:13,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:23:13
[2026-10-25 16:23:14,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:23:14,774.774 INFO    ] Initializing speech engine...
[2026-10-25 16:23:14,788.788 INFO    ] 2026-10-25 16:23:14
[2026-10-25 16:23:15,096.096 INFO    ] 2026-10-25 16:23:15
[2026-10-25 16:23:15,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:23:15,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:23:15,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:23:15,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:23:15,600.600 INFO    ] time= 25/10/2026 16:23:15
[2026-10-25 16:23:15,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:23:15,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:23:15,735.735 INFO    ] No existing commands found in stream
[2026-10-25 16:23:20,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:23:20,768.768 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 16:23:21,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:23:21,274.274 INFO    ] Checking for system updates...
[2026-10-25 16:23:21,311.311 INFO    ] 200
[2026-10-25 16:23:21,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:21,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:23:21,370.370 INFO    ] No update needed
[2026-10-25 16:23:21,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 16:23:21,406.406 INFO    ] 200
[2026-10-25 16:23:21,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:21,451.451 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:23:21,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:23:21,514.514 INFO    ] No camera update needed
[2026-10-25 16:23:21,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:23:21,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:23:21,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:23:21,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:23:23,568.568 INFO    ] ================================================
[2026-10-25 16:23:23,584.584 INFO    ] Launching Daemon at Sun Oct 25 16:23:23 IST 2026
[2026-10-25 16:23:23,596.596 INFO    ] ================================================
[2026-10-25 16:23:24,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:23:24
[2026-10-25 16:23:24,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:23:24,995.995 INFO    ] Initializing speech engine...
[2026-10-25 16:23:25,003.003 INFO    ] 2026-10-25 16:23:24
[2026-10-25 16:23:25,310.310 INFO    ] 2026-10-25 16:23:25
[2026-10-25 16:23:25,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:23:25,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:23:25,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:23:25,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:23:25,830.830 INFO    ] time= 25/10/2026 16:23:25
[2026-10-25 16:23:25,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:23:25,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:23:26,037.037 INFO    ] No existing commands found in stream
[2026-10-25 16:23:31,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:23:31,062.062 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 16:23:32,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:23:32,176.176 INFO    ] Checking for system updates...
[2026-10-25 16:23:32,215.215 INFO    ] 200
[2026-10-25 16:23:32,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:32,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:32,282.282 INFO    ] No update needed
[2026-10-25 16:23:32,285.285 INFO    ] Checking for camera pi updates...
[2026-10-25 16:23:32,321.321 INFO    ] 200
[2026-10-25 16:23:32,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:32,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:23:32,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:32,515.515 INFO    ] No camera update needed
[2026-10-25 16:23:32,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:23:32,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:23:32,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:23:32,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:23:34,579.579 INFO    ] ================================================
[2026-10-25 16:23:34,594.594 INFO    ] Launching Daemon at Sun Oct 25 16:23:34 IST 2026
[2026-10-25 16:23:34,605.605 INFO    ] ================================================
[2026-10-25 16:23:35,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:23:35
[2026-10-25 16:23:35,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:23:36,225.225 INFO    ] Initializing speech engine...
[2026-10-25 16:23:36,238.238 INFO    ] 2026-10-25 16:23:36
[2026-10-25 16:23:36,530.530 INFO    ] 2026-10-25 16:23:36
[2026-10-25 16:23:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:23:36,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:23:36,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:23:36,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:23:37,033.033 INFO    ] time= 25/10/2026 16:23:36
[2026-10-25 16:23:37,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:23:37,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:23:37,217.217 INFO    ] No existing commands found in stream
[2026-10-25 16:23:42,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:23:42,247.247 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 16:23:44,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:23:44,757.757 INFO    ] Checking for system updates...
[2026-10-25 16:23:44,795.795 INFO    ] 200
[2026-10-25 16:23:44,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:44,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:44,853.853 INFO    ] No update needed
[2026-10-25 16:23:44,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 16:23:44,889.889 INFO    ] 200
[2026-10-25 16:23:44,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:44,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:23:44,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:23:44,987.987 INFO    ] No camera update needed
[2026-10-25 16:23:44,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:23:44,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:23:44,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:23:45,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:23:47,042.042 INFO    ] ================================================
[2026-10-25 16:23:47,058.058 INFO    ] Launching Daemon at Sun Oct 25 16:23:47 IST 2026
[2026-10-25 16:23:47,069.069 INFO    ] ================================================
[2026-10-25 16:23:47,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:23:47
[2026-10-25 16:23:48,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:23:48,715.715 INFO    ] Initializing speech engine...
[2026-10-25 16:23:48,721.721 INFO    ] 2026-10-25 16:23:48
[2026-10-25 16:23:49,000.000 INFO    ] 2026-10-25 16:23:48
[2026-10-25 16:23:49,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:23:49,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:23:49,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:23:49,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:23:49,542.542 INFO    ] time= 25/10/2026 16:23:49
[2026-10-25 16:23:49,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:23:49,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:23:49,695.695 INFO    ] No existing commands found in stream
[2026-10-25 16:23:54,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:23:54,712.712 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 16:23:55,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:23:55,973.973 INFO    ] Checking for system updates...
[2026-10-25 16:23:56,012.012 INFO    ] 200
[2026-10-25 16:23:56,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:56,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:23:56,070.070 INFO    ] No update needed
[2026-10-25 16:23:56,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 16:23:56,107.107 INFO    ] 200
[2026-10-25 16:23:56,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:23:56,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:23:56,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:23:56,202.202 INFO    ] No camera update needed
[2026-10-25 16:23:56,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:23:56,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:23:56,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:23:56,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:23:58,260.260 INFO    ] ================================================
[2026-10-25 16:23:58,276.276 INFO    ] Launching Daemon at Sun Oct 25 16:23:58 IST 2026
[2026-10-25 16:23:58,287.287 INFO    ] ================================================
[2026-10-25 16:23:58,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:23:58
[2026-10-25 16:23:59,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:23:59,872.872 INFO    ] Initializing speech engine...
[2026-10-25 16:23:59,880.880 INFO    ] 2026-10-25 16:23:59
[2026-10-25 16:24:00,131.131 INFO    ] 2026-10-25 16:24:00
[2026-10-25 16:24:00,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:24:02,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:24:02,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:24:02,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:24:02,479.479 INFO    ] time= 25/10/2026 16:24:02
[2026-10-25 16:24:02,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:24:02,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:24:02,604.604 INFO    ] No existing commands found in stream
[2026-10-25 16:24:07,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:24:07,625.625 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 16:24:09,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:24:09,225.225 INFO    ] Checking for system updates...
[2026-10-25 16:24:09,264.264 INFO    ] 200
[2026-10-25 16:24:09,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:09,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:09,324.324 INFO    ] No update needed
[2026-10-25 16:24:09,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 16:24:09,361.361 INFO    ] 200
[2026-10-25 16:24:09,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:09,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:24:09,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:09,470.470 INFO    ] No camera update needed
[2026-10-25 16:24:09,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:24:09,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:24:09,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:24:09,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:24:11,529.529 INFO    ] ================================================
[2026-10-25 16:24:11,545.545 INFO    ] Launching Daemon at Sun Oct 25 16:24:11 IST 2026
[2026-10-25 16:24:11,556.556 INFO    ] ================================================
[2026-10-25 16:24:12,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:24:12
[2026-10-25 16:24:12,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:24:13,106.106 INFO    ] Initializing speech engine...
[2026-10-25 16:24:13,119.119 INFO    ] 2026-10-25 16:24:13
[2026-10-25 16:24:13,402.402 INFO    ] 2026-10-25 16:24:13
[2026-10-25 16:24:13,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:24:13,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:24:13,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:24:13,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:24:13,895.895 INFO    ] time= 25/10/2026 16:24:13
[2026-10-25 16:24:13,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:24:13,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:24:14,098.098 INFO    ] No existing commands found in stream
[2026-10-25 16:24:19,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:24:19,130.130 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 16:24:21,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:24:21,877.877 INFO    ] Checking for system updates...
[2026-10-25 16:24:21,914.914 INFO    ] 200
[2026-10-25 16:24:21,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:21,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:24:21,974.974 INFO    ] No update needed
[2026-10-25 16:24:21,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 16:24:22,013.013 INFO    ] 200
[2026-10-25 16:24:22,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:22,059.059 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:24:22,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:24:22,124.124 INFO    ] No camera update needed
[2026-10-25 16:24:22,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:24:22,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:24:22,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:24:22,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:24:24,183.183 INFO    ] ================================================
[2026-10-25 16:24:24,199.199 INFO    ] Launching Daemon at Sun Oct 25 16:24:24 IST 2026
[2026-10-25 16:24:24,209.209 INFO    ] ================================================
[2026-10-25 16:24:24,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:24:24
[2026-10-25 16:24:25,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:24:25,819.819 INFO    ] Initializing speech engine...
[2026-10-25 16:24:25,832.832 INFO    ] 2026-10-25 16:24:25
[2026-10-25 16:24:26,151.151 INFO    ] 2026-10-25 16:24:26
[2026-10-25 16:24:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:24:26,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:24:26,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:24:26,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:24:26,679.679 INFO    ] time= 25/10/2026 16:24:26
[2026-10-25 16:24:26,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:24:26,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:24:26,817.817 INFO    ] No existing commands found in stream
[2026-10-25 16:24:31,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:24:31,836.836 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 16:24:36,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:24:36,173.173 INFO    ] Checking for system updates...
[2026-10-25 16:24:36,214.214 INFO    ] 200
[2026-10-25 16:24:36,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:36,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:36,271.271 INFO    ] No update needed
[2026-10-25 16:24:36,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 16:24:36,307.307 INFO    ] 200
[2026-10-25 16:24:36,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:36,350.350 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:24:36,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:36,407.407 INFO    ] No camera update needed
[2026-10-25 16:24:36,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:24:36,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:24:36,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:24:36,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:24:38,462.462 INFO    ] ================================================
[2026-10-25 16:24:38,477.477 INFO    ] Launching Daemon at Sun Oct 25 16:24:38 IST 2026
[2026-10-25 16:24:38,488.488 INFO    ] ================================================
[2026-10-25 16:24:39,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:24:39
[2026-10-25 16:24:39,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:24:39,932.932 INFO    ] Initializing speech engine...
[2026-10-25 16:24:39,945.945 INFO    ] 2026-10-25 16:24:39
[2026-10-25 16:24:40,195.195 INFO    ] 2026-10-25 16:24:40
[2026-10-25 16:24:40,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:24:40,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:24:40,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:24:40,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:24:40,568.568 INFO    ] time= 25/10/2026 16:24:40
[2026-10-25 16:24:40,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:24:40,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:24:40,752.752 INFO    ] No existing commands found in stream
[2026-10-25 16:24:45,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:24:45,775.775 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 16:24:49,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:24:49,297.297 INFO    ] Checking for system updates...
[2026-10-25 16:24:49,333.333 INFO    ] 200
[2026-10-25 16:24:49,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:49,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:49,391.391 INFO    ] No update needed
[2026-10-25 16:24:49,394.394 INFO    ] Checking for camera pi updates...
[2026-10-25 16:24:49,428.428 INFO    ] 200
[2026-10-25 16:24:49,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:49,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:24:49,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:49,532.532 INFO    ] No camera update needed
[2026-10-25 16:24:49,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:24:49,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:24:49,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:24:49,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:24:51,587.587 INFO    ] ================================================
[2026-10-25 16:24:51,603.603 INFO    ] Launching Daemon at Sun Oct 25 16:24:51 IST 2026
[2026-10-25 16:24:51,614.614 INFO    ] ================================================
[2026-10-25 16:24:52,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:24:52
[2026-10-25 16:24:52,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:24:53,032.032 INFO    ] Initializing speech engine...
[2026-10-25 16:24:53,038.038 INFO    ] 2026-10-25 16:24:53
[2026-10-25 16:24:53,336.336 INFO    ] 2026-10-25 16:24:53
[2026-10-25 16:24:53,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:24:53,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:24:53,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:24:53,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:24:53,738.738 INFO    ] time= 25/10/2026 16:24:53
[2026-10-25 16:24:53,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:24:53,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:24:53,855.855 INFO    ] No existing commands found in stream
[2026-10-25 16:24:58,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:24:58,869.869 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 16:24:59,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:24:59,659.659 INFO    ] Checking for system updates...
[2026-10-25 16:24:59,695.695 INFO    ] 200
[2026-10-25 16:24:59,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:59,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:59,755.755 INFO    ] No update needed
[2026-10-25 16:24:59,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 16:24:59,792.792 INFO    ] 200
[2026-10-25 16:24:59,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:24:59,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:24:59,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:24:59,885.885 INFO    ] No camera update needed
[2026-10-25 16:24:59,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:24:59,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:24:59,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:24:59,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:01,946.946 INFO    ] ================================================
[2026-10-25 16:25:02,033.033 INFO    ] Launching Daemon at Sun Oct 25 16:25:02 IST 2026
[2026-10-25 16:25:02,066.066 INFO    ] ================================================
[2026-10-25 16:25:02,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:02
[2026-10-25 16:25:03,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:25:03,779.779 INFO    ] Initializing speech engine...
[2026-10-25 16:25:03,786.786 INFO    ] 2026-10-25 16:25:03
[2026-10-25 16:25:04,059.059 INFO    ] 2026-10-25 16:25:04
[2026-10-25 16:25:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:25:04,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:25:04,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:25:04,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:25:04,523.523 INFO    ] time= 25/10/2026 16:25:04
[2026-10-25 16:25:04,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:25:04,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:25:04,675.675 INFO    ] No existing commands found in stream
[2026-10-25 16:25:09,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:25:09,690.690 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 16:25:11,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:25:11,814.814 INFO    ] Checking for system updates...
[2026-10-25 16:25:11,851.851 INFO    ] 200
[2026-10-25 16:25:11,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:11,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:11,917.917 INFO    ] No update needed
[2026-10-25 16:25:11,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 16:25:11,954.954 INFO    ] 200
[2026-10-25 16:25:11,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:11,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:25:12,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:12,050.050 INFO    ] No camera update needed
[2026-10-25 16:25:12,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:25:12,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:25:12,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:25:12,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:14,108.108 INFO    ] ================================================
[2026-10-25 16:25:14,124.124 INFO    ] Launching Daemon at Sun Oct 25 16:25:14 IST 2026
[2026-10-25 16:25:14,135.135 INFO    ] ================================================
[2026-10-25 16:25:14,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:14
[2026-10-25 16:25:15,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:25:15,598.598 INFO    ] Initializing speech engine...
[2026-10-25 16:25:15,604.604 INFO    ] 2026-10-25 16:25:15
[2026-10-25 16:25:15,867.867 INFO    ] 2026-10-25 16:25:15
[2026-10-25 16:25:15,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:25:16,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:25:16,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:25:16,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:25:16,340.340 INFO    ] time= 25/10/2026 16:25:16
[2026-10-25 16:25:16,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:25:16,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:25:16,512.512 INFO    ] No existing commands found in stream
[2026-10-25 16:25:21,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:25:21,545.545 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 16:25:24,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:25:24,883.883 INFO    ] Checking for system updates...
[2026-10-25 16:25:24,920.920 INFO    ] 200
[2026-10-25 16:25:24,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:24,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:24,979.979 INFO    ] No update needed
[2026-10-25 16:25:24,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 16:25:25,019.019 INFO    ] 200
[2026-10-25 16:25:25,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:25,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:25:25,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:25,119.119 INFO    ] No camera update needed
[2026-10-25 16:25:25,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:25:25,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:25:25,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:25:25,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:27,177.177 INFO    ] ================================================
[2026-10-25 16:25:27,193.193 INFO    ] Launching Daemon at Sun Oct 25 16:25:27 IST 2026
[2026-10-25 16:25:27,203.203 INFO    ] ================================================
[2026-10-25 16:25:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:27
[2026-10-25 16:25:28,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:25:28,783.783 INFO    ] Initializing speech engine...
[2026-10-25 16:25:28,791.791 INFO    ] 2026-10-25 16:25:28
[2026-10-25 16:25:29,063.063 INFO    ] 2026-10-25 16:25:29
[2026-10-25 16:25:29,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:25:29,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:25:29,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:25:29,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:25:29,548.548 INFO    ] time= 25/10/2026 16:25:29
[2026-10-25 16:25:29,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:25:29,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:25:29,686.686 INFO    ] No existing commands found in stream
[2026-10-25 16:25:34,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:25:34,705.705 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 16:25:36,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:25:36,005.005 INFO    ] Checking for system updates...
[2026-10-25 16:25:36,042.042 INFO    ] 200
[2026-10-25 16:25:36,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:36,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:36,102.102 INFO    ] No update needed
[2026-10-25 16:25:36,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 16:25:36,141.141 INFO    ] 200
[2026-10-25 16:25:36,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:36,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:25:36,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:36,354.354 INFO    ] No camera update needed
[2026-10-25 16:25:36,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:25:36,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:25:36,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:25:36,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:38,409.409 INFO    ] ================================================
[2026-10-25 16:25:38,424.424 INFO    ] Launching Daemon at Sun Oct 25 16:25:38 IST 2026
[2026-10-25 16:25:38,435.435 INFO    ] ================================================
[2026-10-25 16:25:39,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:39
[2026-10-25 16:25:39,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:25:39,904.904 INFO    ] Initializing speech engine...
[2026-10-25 16:25:39,910.910 INFO    ] 2026-10-25 16:25:39
[2026-10-25 16:25:40,171.171 INFO    ] 2026-10-25 16:25:40
[2026-10-25 16:25:40,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:25:40,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:25:40,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:25:40,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:25:40,648.648 INFO    ] time= 25/10/2026 16:25:40
[2026-10-25 16:25:40,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:25:40,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:25:40,843.843 INFO    ] No existing commands found in stream
[2026-10-25 16:25:45,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:25:45,876.876 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 16:25:46,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:25:46,532.532 INFO    ] Checking for system updates...
[2026-10-25 16:25:46,568.568 INFO    ] 200
[2026-10-25 16:25:46,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:46,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:46,626.626 INFO    ] No update needed
[2026-10-25 16:25:46,628.628 INFO    ] Checking for camera pi updates...
[2026-10-25 16:25:46,663.663 INFO    ] 200
[2026-10-25 16:25:46,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:46,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:25:46,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:46,759.759 INFO    ] No camera update needed
[2026-10-25 16:25:46,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:25:46,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:25:46,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:25:46,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:48,816.816 INFO    ] ================================================
[2026-10-25 16:25:48,831.831 INFO    ] Launching Daemon at Sun Oct 25 16:25:48 IST 2026
[2026-10-25 16:25:48,842.842 INFO    ] ================================================
[2026-10-25 16:25:49,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:49
[2026-10-25 16:25:49,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:25:50,253.253 INFO    ] Initializing speech engine...
[2026-10-25 16:25:50,267.267 INFO    ] 2026-10-25 16:25:50
[2026-10-25 16:25:50,555.555 INFO    ] 2026-10-25 16:25:50
[2026-10-25 16:25:50,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:25:50,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:25:50,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:25:50,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:25:50,939.939 INFO    ] time= 25/10/2026 16:25:50
[2026-10-25 16:25:50,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:25:50,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:25:51,065.065 INFO    ] No existing commands found in stream
[2026-10-25 16:25:56,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:25:56,079.079 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 16:25:56,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:25:56,623.623 INFO    ] Checking for system updates...
[2026-10-25 16:25:56,658.658 INFO    ] 200
[2026-10-25 16:25:56,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:56,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:56,716.716 INFO    ] No update needed
[2026-10-25 16:25:56,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 16:25:56,753.753 INFO    ] 200
[2026-10-25 16:25:56,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:25:56,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:25:56,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:25:56,854.854 INFO    ] No camera update needed
[2026-10-25 16:25:56,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:25:56,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:25:56,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:25:56,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:25:58,910.910 INFO    ] ================================================
[2026-10-25 16:25:58,925.925 INFO    ] Launching Daemon at Sun Oct 25 16:25:58 IST 2026
[2026-10-25 16:25:58,936.936 INFO    ] ================================================
[2026-10-25 16:25:59,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:25:59
[2026-10-25 16:26:00,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:00,377.377 INFO    ] Initializing speech engine...
[2026-10-25 16:26:00,391.391 INFO    ] 2026-10-25 16:26:00
[2026-10-25 16:26:00,645.645 INFO    ] 2026-10-25 16:26:00
[2026-10-25 16:26:00,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:00,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:00,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:01,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:01,110.110 INFO    ] time= 25/10/2026 16:26:01
[2026-10-25 16:26:01,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:01,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:01,308.308 INFO    ] No existing commands found in stream
[2026-10-25 16:26:06,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:26:06,343.343 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 16:26:08,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:26:08,191.191 INFO    ] Checking for system updates...
[2026-10-25 16:26:08,226.226 INFO    ] 200
[2026-10-25 16:26:08,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:08,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:08,286.286 INFO    ] No update needed
[2026-10-25 16:26:08,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 16:26:08,329.329 INFO    ] 200
[2026-10-25 16:26:08,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:08,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:26:08,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:08,424.424 INFO    ] No camera update needed
[2026-10-25 16:26:08,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:26:08,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:26:08,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:26:08,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:26:10,481.481 INFO    ] ================================================
[2026-10-25 16:26:10,496.496 INFO    ] Launching Daemon at Sun Oct 25 16:26:10 IST 2026
[2026-10-25 16:26:10,508.508 INFO    ] ================================================
[2026-10-25 16:26:11,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:26:11
[2026-10-25 16:26:11,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:11,968.968 INFO    ] Initializing speech engine...
[2026-10-25 16:26:11,977.977 INFO    ] 2026-10-25 16:26:11
[2026-10-25 16:26:12,225.225 INFO    ] 2026-10-25 16:26:12
[2026-10-25 16:26:12,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:12,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:12,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:12,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:12,636.636 INFO    ] time= 25/10/2026 16:26:12
[2026-10-25 16:26:12,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:12,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:12,818.818 INFO    ] No existing commands found in stream
[2026-10-25 16:26:17,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:26:17,832.832 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 16:26:20,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:26:20,074.074 INFO    ] Checking for system updates...
[2026-10-25 16:26:20,111.111 INFO    ] 200
[2026-10-25 16:26:20,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:20,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:20,169.169 INFO    ] No update needed
[2026-10-25 16:26:20,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 16:26:20,205.205 INFO    ] 200
[2026-10-25 16:26:20,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:20,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:26:20,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:20,308.308 INFO    ] No camera update needed
[2026-10-25 16:26:20,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:26:20,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:26:20,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:26:20,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:26:22,366.366 INFO    ] ================================================
[2026-10-25 16:26:22,382.382 INFO    ] Launching Daemon at Sun Oct 25 16:26:22 IST 2026
[2026-10-25 16:26:22,393.393 INFO    ] ================================================
[2026-10-25 16:26:23,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:26:23
[2026-10-25 16:26:23,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:24,085.085 INFO    ] Initializing speech engine...
[2026-10-25 16:26:24,096.096 INFO    ] 2026-10-25 16:26:24
[2026-10-25 16:26:24,382.382 INFO    ] 2026-10-25 16:26:24
[2026-10-25 16:26:24,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:24,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:24,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:24,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:24,935.935 INFO    ] time= 25/10/2026 16:26:24
[2026-10-25 16:26:24,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:24,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:25,081.081 INFO    ] No existing commands found in stream
[2026-10-25 16:26:30,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:26:30,109.109 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 16:26:32,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:26:32,584.584 INFO    ] Checking for system updates...
[2026-10-25 16:26:32,626.626 INFO    ] 200
[2026-10-25 16:26:32,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:32,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:26:32,689.689 INFO    ] No update needed
[2026-10-25 16:26:32,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 16:26:32,734.734 INFO    ] 200
[2026-10-25 16:26:32,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:32,796.796 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:26:32,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:26:32,832.832 INFO    ] No camera update needed
[2026-10-25 16:26:32,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:26:32,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:26:32,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:26:32,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:26:34,889.889 INFO    ] ================================================
[2026-10-25 16:26:34,904.904 INFO    ] Launching Daemon at Sun Oct 25 16:26:34 IST 2026
[2026-10-25 16:26:34,915.915 INFO    ] ================================================
[2026-10-25 16:26:35,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:26:35
[2026-10-25 16:26:36,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:36,360.360 INFO    ] Initializing speech engine...
[2026-10-25 16:26:36,368.368 INFO    ] 2026-10-25 16:26:36
[2026-10-25 16:26:36,629.629 INFO    ] 2026-10-25 16:26:36
[2026-10-25 16:26:36,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:36,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:36,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:37,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:37,087.087 INFO    ] time= 25/10/2026 16:26:37
[2026-10-25 16:26:37,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:37,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:37,243.243 INFO    ] No existing commands found in stream
[2026-10-25 16:26:42,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:26:42,277.277 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 16:26:42,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:26:42,814.814 INFO    ] Checking for system updates...
[2026-10-25 16:26:42,851.851 INFO    ] 200
[2026-10-25 16:26:42,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:42,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:26:42,908.908 INFO    ] No update needed
[2026-10-25 16:26:42,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 16:26:42,945.945 INFO    ] 200
[2026-10-25 16:26:42,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:42,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:26:43,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:26:43,044.044 INFO    ] No camera update needed
[2026-10-25 16:26:43,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:26:43,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:26:43,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:26:43,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:26:45,099.099 INFO    ] ================================================
[2026-10-25 16:26:45,114.114 INFO    ] Launching Daemon at Sun Oct 25 16:26:45 IST 2026
[2026-10-25 16:26:45,125.125 INFO    ] ================================================
[2026-10-25 16:26:45,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:26:45
[2026-10-25 16:26:46,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:46,573.573 INFO    ] Initializing speech engine...
[2026-10-25 16:26:46,598.598 INFO    ] 2026-10-25 16:26:46
[2026-10-25 16:26:46,880.880 INFO    ] 2026-10-25 16:26:46
[2026-10-25 16:26:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:47,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:47,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:47,266.266 INFO    ] time= 25/10/2026 16:26:47
[2026-10-25 16:26:47,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:47,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:47,398.398 INFO    ] No existing commands found in stream
[2026-10-25 16:26:52,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:26:52,410.410 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 16:26:54,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:26:54,719.719 INFO    ] Checking for system updates...
[2026-10-25 16:26:54,755.755 INFO    ] 200
[2026-10-25 16:26:54,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:54,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:54,814.814 INFO    ] No update needed
[2026-10-25 16:26:54,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 16:26:54,851.851 INFO    ] 200
[2026-10-25 16:26:54,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:26:54,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:26:54,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:26:54,953.953 INFO    ] No camera update needed
[2026-10-25 16:26:54,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:26:54,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:26:54,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:26:54,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:26:57,008.008 INFO    ] ================================================
[2026-10-25 16:26:57,024.024 INFO    ] Launching Daemon at Sun Oct 25 16:26:57 IST 2026
[2026-10-25 16:26:57,034.034 INFO    ] ================================================
[2026-10-25 16:26:57,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:26:57
[2026-10-25 16:26:58,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:26:58,480.480 INFO    ] Initializing speech engine...
[2026-10-25 16:26:58,489.489 INFO    ] 2026-10-25 16:26:58
[2026-10-25 16:26:58,735.735 INFO    ] 2026-10-25 16:26:58
[2026-10-25 16:26:58,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:26:58,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:26:58,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:26:59,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:26:59,112.112 INFO    ] time= 25/10/2026 16:26:59
[2026-10-25 16:26:59,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:26:59,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:26:59,278.278 INFO    ] No existing commands found in stream
[2026-10-25 16:27:04,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:27:04,305.305 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 16:27:07,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:27:07,392.392 INFO    ] Checking for system updates...
[2026-10-25 16:27:07,428.428 INFO    ] 200
[2026-10-25 16:27:07,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:07,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:07,487.487 INFO    ] No update needed
[2026-10-25 16:27:07,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 16:27:07,523.523 INFO    ] 200
[2026-10-25 16:27:07,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:07,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:27:07,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:07,617.617 INFO    ] No camera update needed
[2026-10-25 16:27:07,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:27:07,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:27:07,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:27:07,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:27:09,674.674 INFO    ] ================================================
[2026-10-25 16:27:09,690.690 INFO    ] Launching Daemon at Sun Oct 25 16:27:09 IST 2026
[2026-10-25 16:27:09,700.700 INFO    ] ================================================
[2026-10-25 16:27:10,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:27:10
[2026-10-25 16:27:10,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:27:11,127.127 INFO    ] Initializing speech engine...
[2026-10-25 16:27:11,137.137 INFO    ] 2026-10-25 16:27:11
[2026-10-25 16:27:11,384.384 INFO    ] 2026-10-25 16:27:11
[2026-10-25 16:27:11,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:27:11,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:27:11,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:27:11,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:27:11,838.838 INFO    ] time= 25/10/2026 16:27:11
[2026-10-25 16:27:11,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:27:11,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:27:12,020.020 INFO    ] No existing commands found in stream
[2026-10-25 16:27:17,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:27:17,052.052 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 16:27:18,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:27:18,765.765 INFO    ] Checking for system updates...
[2026-10-25 16:27:18,802.802 INFO    ] 200
[2026-10-25 16:27:18,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:18,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:27:18,859.859 INFO    ] No update needed
[2026-10-25 16:27:18,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 16:27:18,902.902 INFO    ] 200
[2026-10-25 16:27:18,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:18,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:27:18,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:27:18,999.999 INFO    ] No camera update needed
[2026-10-25 16:27:19,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:27:19,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:27:19,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:27:19,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:27:21,055.055 INFO    ] ================================================
[2026-10-25 16:27:21,071.071 INFO    ] Launching Daemon at Sun Oct 25 16:27:21 IST 2026
[2026-10-25 16:27:21,083.083 INFO    ] ================================================
[2026-10-25 16:27:21,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:27:21
[2026-10-25 16:27:22,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:27:22,638.638 INFO    ] Initializing speech engine...
[2026-10-25 16:27:22,647.647 INFO    ] 2026-10-25 16:27:22
[2026-10-25 16:27:22,924.924 INFO    ] 2026-10-25 16:27:22
[2026-10-25 16:27:22,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:27:23,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:27:23,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:27:23,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:27:23,407.407 INFO    ] time= 25/10/2026 16:27:23
[2026-10-25 16:27:23,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:27:23,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:27:23,562.562 INFO    ] No existing commands found in stream
[2026-10-25 16:27:28,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:27:28,578.578 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 16:27:29,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:27:29,552.552 INFO    ] Checking for system updates...
[2026-10-25 16:27:29,589.589 INFO    ] 200
[2026-10-25 16:27:29,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:29,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:29,657.657 INFO    ] No update needed
[2026-10-25 16:27:29,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 16:27:29,699.699 INFO    ] 200
[2026-10-25 16:27:29,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:29,745.745 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:27:29,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:29,797.797 INFO    ] No camera update needed
[2026-10-25 16:27:29,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:27:29,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:27:29,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:27:29,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:27:31,857.857 INFO    ] ================================================
[2026-10-25 16:27:31,872.872 INFO    ] Launching Daemon at Sun Oct 25 16:27:31 IST 2026
[2026-10-25 16:27:31,884.884 INFO    ] ================================================
[2026-10-25 16:27:32,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:27:32
[2026-10-25 16:27:33,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:27:33,625.625 INFO    ] Initializing speech engine...
[2026-10-25 16:27:33,639.639 INFO    ] 2026-10-25 16:27:33
[2026-10-25 16:27:33,948.948 INFO    ] 2026-10-25 16:27:33
[2026-10-25 16:27:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:27:34,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:27:34,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:27:34,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:27:34,454.454 INFO    ] time= 25/10/2026 16:27:34
[2026-10-25 16:27:34,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:27:34,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:27:34,614.614 INFO    ] No existing commands found in stream
[2026-10-25 16:27:39,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:27:39,652.652 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 16:27:40,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:27:40,356.356 INFO    ] Checking for system updates...
[2026-10-25 16:27:40,394.394 INFO    ] 200
[2026-10-25 16:27:40,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:40,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:27:40,454.454 INFO    ] No update needed
[2026-10-25 16:27:40,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 16:27:40,493.493 INFO    ] 200
[2026-10-25 16:27:40,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:40,540.540 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:27:40,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:27:40,700.700 INFO    ] No camera update needed
[2026-10-25 16:27:40,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:27:40,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:27:40,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:27:40,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:27:42,759.759 INFO    ] ================================================
[2026-10-25 16:27:42,774.774 INFO    ] Launching Daemon at Sun Oct 25 16:27:42 IST 2026
[2026-10-25 16:27:42,785.785 INFO    ] ================================================
[2026-10-25 16:27:43,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:27:43
[2026-10-25 16:27:44,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:27:44,284.284 INFO    ] Initializing speech engine...
[2026-10-25 16:27:44,302.302 INFO    ] 2026-10-25 16:27:44
[2026-10-25 16:27:44,582.582 INFO    ] 2026-10-25 16:27:44
[2026-10-25 16:27:44,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:27:44,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:27:44,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:27:45,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:27:45,081.081 INFO    ] time= 25/10/2026 16:27:45
[2026-10-25 16:27:45,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:27:45,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:27:45,271.271 INFO    ] No existing commands found in stream
[2026-10-25 16:27:50,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:27:50,296.296 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 16:27:51,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:27:51,692.692 INFO    ] Checking for system updates...
[2026-10-25 16:27:51,729.729 INFO    ] 200
[2026-10-25 16:27:51,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:51,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:51,796.796 INFO    ] No update needed
[2026-10-25 16:27:51,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 16:27:51,834.834 INFO    ] 200
[2026-10-25 16:27:51,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:27:51,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:27:51,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:27:51,933.933 INFO    ] No camera update needed
[2026-10-25 16:27:51,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:27:51,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:27:51,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:27:51,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:27:53,994.994 INFO    ] ================================================
[2026-10-25 16:27:54,009.009 INFO    ] Launching Daemon at Sun Oct 25 16:27:54 IST 2026
[2026-10-25 16:27:54,021.021 INFO    ] ================================================
[2026-10-25 16:27:54,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:27:54
[2026-10-25 16:27:55,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:27:55,509.509 INFO    ] Initializing speech engine...
[2026-10-25 16:27:55,521.521 INFO    ] 2026-10-25 16:27:55
[2026-10-25 16:27:55,788.788 INFO    ] 2026-10-25 16:27:55
[2026-10-25 16:27:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:27:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:27:56,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:27:56,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:27:56,218.218 INFO    ] time= 25/10/2026 16:27:56
[2026-10-25 16:27:56,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:27:56,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:27:56,302.302 INFO    ] No existing commands found in stream
[2026-10-25 16:28:01,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:28:01,319.319 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 16:28:04,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:28:04,510.510 INFO    ] Checking for system updates...
[2026-10-25 16:28:04,553.553 INFO    ] 200
[2026-10-25 16:28:04,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:04,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:04,618.618 INFO    ] No update needed
[2026-10-25 16:28:04,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 16:28:04,654.654 INFO    ] 200
[2026-10-25 16:28:04,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:04,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:28:04,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:04,755.755 INFO    ] No camera update needed
[2026-10-25 16:28:04,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:28:04,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:28:04,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:28:04,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:28:06,814.814 INFO    ] ================================================
[2026-10-25 16:28:06,829.829 INFO    ] Launching Daemon at Sun Oct 25 16:28:06 IST 2026
[2026-10-25 16:28:06,839.839 INFO    ] ================================================
[2026-10-25 16:28:07,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:28:07
[2026-10-25 16:28:08,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:28:08,497.497 INFO    ] Initializing speech engine...
[2026-10-25 16:28:08,503.503 INFO    ] 2026-10-25 16:28:08
[2026-10-25 16:28:08,810.810 INFO    ] 2026-10-25 16:28:08
[2026-10-25 16:28:08,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:28:09,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:28:09,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:28:09,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:28:09,550.550 INFO    ] time= 25/10/2026 16:28:09
[2026-10-25 16:28:09,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:28:09,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:28:09,732.732 INFO    ] No existing commands found in stream
[2026-10-25 16:28:14,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:28:14,759.759 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 16:28:15,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:28:15,437.437 INFO    ] Checking for system updates...
[2026-10-25 16:28:15,474.474 INFO    ] 200
[2026-10-25 16:28:15,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:15,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:15,537.537 INFO    ] No update needed
[2026-10-25 16:28:15,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 16:28:15,574.574 INFO    ] 200
[2026-10-25 16:28:15,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:15,624.624 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:28:15,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:15,681.681 INFO    ] No camera update needed
[2026-10-25 16:28:15,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:28:15,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:28:15,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:28:15,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:28:17,741.741 INFO    ] ================================================
[2026-10-25 16:28:17,756.756 INFO    ] Launching Daemon at Sun Oct 25 16:28:17 IST 2026
[2026-10-25 16:28:17,767.767 INFO    ] ================================================
[2026-10-25 16:28:18,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:28:18
[2026-10-25 16:28:18,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:28:19,218.218 INFO    ] Initializing speech engine...
[2026-10-25 16:28:19,226.226 INFO    ] 2026-10-25 16:28:19
[2026-10-25 16:28:19,480.480 INFO    ] 2026-10-25 16:28:19
[2026-10-25 16:28:19,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:28:19,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:28:19,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:28:19,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:28:19,964.964 INFO    ] time= 25/10/2026 16:28:19
[2026-10-25 16:28:20,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:28:20,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:28:20,115.115 INFO    ] No existing commands found in stream
[2026-10-25 16:28:25,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:28:25,150.150 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 16:28:27,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:28:27,084.084 INFO    ] Checking for system updates...
[2026-10-25 16:28:27,121.121 INFO    ] 200
[2026-10-25 16:28:27,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:27,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:27,181.181 INFO    ] No update needed
[2026-10-25 16:28:27,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 16:28:27,219.219 INFO    ] 200
[2026-10-25 16:28:27,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:27,265.265 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:28:27,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:27,319.319 INFO    ] No camera update needed
[2026-10-25 16:28:27,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:28:27,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:28:27,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:28:27,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:28:29,380.380 INFO    ] ================================================
[2026-10-25 16:28:29,395.395 INFO    ] Launching Daemon at Sun Oct 25 16:28:29 IST 2026
[2026-10-25 16:28:29,406.406 INFO    ] ================================================
[2026-10-25 16:28:30,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:28:30
[2026-10-25 16:28:30,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:28:30,906.906 INFO    ] Initializing speech engine...
[2026-10-25 16:28:30,929.929 INFO    ] 2026-10-25 16:28:30
[2026-10-25 16:28:31,186.186 INFO    ] 2026-10-25 16:28:31
[2026-10-25 16:28:31,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:28:31,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:28:31,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:28:31,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:28:31,713.713 INFO    ] time= 25/10/2026 16:28:31
[2026-10-25 16:28:31,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:28:31,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:28:31,852.852 INFO    ] No existing commands found in stream
[2026-10-25 16:28:36,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:28:36,866.866 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 16:28:40,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:28:40,333.333 INFO    ] Checking for system updates...
[2026-10-25 16:28:40,369.369 INFO    ] 200
[2026-10-25 16:28:40,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:40,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:40,429.429 INFO    ] No update needed
[2026-10-25 16:28:40,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 16:28:40,467.467 INFO    ] 200
[2026-10-25 16:28:40,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:40,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:28:40,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:28:40,563.563 INFO    ] No camera update needed
[2026-10-25 16:28:40,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:28:40,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:28:40,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:28:40,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:28:42,619.619 INFO    ] ================================================
[2026-10-25 16:28:42,634.634 INFO    ] Launching Daemon at Sun Oct 25 16:28:42 IST 2026
[2026-10-25 16:28:42,645.645 INFO    ] ================================================
[2026-10-25 16:28:43,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:28:43
[2026-10-25 16:28:43,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:28:44,218.218 INFO    ] Initializing speech engine...
[2026-10-25 16:28:44,227.227 INFO    ] 2026-10-25 16:28:44
[2026-10-25 16:28:44,486.486 INFO    ] 2026-10-25 16:28:44
[2026-10-25 16:28:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:28:44,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:28:44,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:28:44,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:28:44,994.994 INFO    ] time= 25/10/2026 16:28:44
[2026-10-25 16:28:45,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:28:45,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:28:45,167.167 INFO    ] No existing commands found in stream
[2026-10-25 16:28:50,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:28:50,196.196 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 16:28:54,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:28:54,291.291 INFO    ] Checking for system updates...
[2026-10-25 16:28:54,336.336 INFO    ] 200
[2026-10-25 16:28:54,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:54,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:28:54,394.394 INFO    ] No update needed
[2026-10-25 16:28:54,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 16:28:54,431.431 INFO    ] 200
[2026-10-25 16:28:54,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:28:54,476.476 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:28:54,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:28:54,525.525 INFO    ] No camera update needed
[2026-10-25 16:28:54,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:28:54,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:28:54,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:28:54,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:28:56,587.587 INFO    ] ================================================
[2026-10-25 16:28:56,602.602 INFO    ] Launching Daemon at Sun Oct 25 16:28:56 IST 2026
[2026-10-25 16:28:56,613.613 INFO    ] ================================================
[2026-10-25 16:28:57,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:28:57
[2026-10-25 16:28:57,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:28:58,038.038 INFO    ] Initializing speech engine...
[2026-10-25 16:28:58,047.047 INFO    ] 2026-10-25 16:28:58
[2026-10-25 16:28:58,292.292 INFO    ] 2026-10-25 16:28:58
[2026-10-25 16:28:58,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:28:58,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:28:58,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:28:58,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:28:58,765.765 INFO    ] time= 25/10/2026 16:28:58
[2026-10-25 16:28:58,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:28:58,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:28:58,912.912 INFO    ] No existing commands found in stream
[2026-10-25 16:29:03,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:29:03,940.940 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 16:29:10,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:29:10,865.865 INFO    ] Checking for system updates...
[2026-10-25 16:29:10,901.901 INFO    ] 200
[2026-10-25 16:29:10,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:10,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:29:10,960.960 INFO    ] No update needed
[2026-10-25 16:29:10,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 16:29:10,996.996 INFO    ] 200
[2026-10-25 16:29:10,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:11,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:29:11,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:29:11,090.090 INFO    ] No camera update needed
[2026-10-25 16:29:11,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:29:11,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:29:11,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:29:11,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:29:13,146.146 INFO    ] ================================================
[2026-10-25 16:29:13,161.161 INFO    ] Launching Daemon at Sun Oct 25 16:29:13 IST 2026
[2026-10-25 16:29:13,176.176 INFO    ] ================================================
[2026-10-25 16:29:13,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:29:13
[2026-10-25 16:29:14,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:29:14,804.804 INFO    ] Initializing speech engine...
[2026-10-25 16:29:14,816.816 INFO    ] 2026-10-25 16:29:14
[2026-10-25 16:29:15,122.122 INFO    ] 2026-10-25 16:29:15
[2026-10-25 16:29:15,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:29:15,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:29:15,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:29:15,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:29:15,629.629 INFO    ] time= 25/10/2026 16:29:15
[2026-10-25 16:29:15,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:29:15,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:29:15,782.782 INFO    ] No existing commands found in stream
[2026-10-25 16:29:20,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:29:20,798.798 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 16:29:23,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:29:23,813.813 INFO    ] Checking for system updates...
[2026-10-25 16:29:23,850.850 INFO    ] 200
[2026-10-25 16:29:23,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:23,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:29:23,907.907 INFO    ] No update needed
[2026-10-25 16:29:23,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 16:29:23,943.943 INFO    ] 200
[2026-10-25 16:29:23,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:23,990.990 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:29:24,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:29:24,036.036 INFO    ] No camera update needed
[2026-10-25 16:29:24,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:29:24,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:29:24,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:29:24,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:29:26,091.091 INFO    ] ================================================
[2026-10-25 16:29:26,106.106 INFO    ] Launching Daemon at Sun Oct 25 16:29:26 IST 2026
[2026-10-25 16:29:26,117.117 INFO    ] ================================================
[2026-10-25 16:29:26,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:29:26
[2026-10-25 16:29:27,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:29:27,702.702 INFO    ] Initializing speech engine...
[2026-10-25 16:29:27,713.713 INFO    ] 2026-10-25 16:29:27
[2026-10-25 16:29:27,990.990 INFO    ] 2026-10-25 16:29:27
[2026-10-25 16:29:28,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:29:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:29:28,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:29:28,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:29:28,525.525 INFO    ] time= 25/10/2026 16:29:28
[2026-10-25 16:29:28,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:29:28,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:29:28,680.680 INFO    ] No existing commands found in stream
[2026-10-25 16:29:33,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:29:33,697.697 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 16:29:37,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:29:37,984.984 INFO    ] Checking for system updates...
[2026-10-25 16:29:38,021.021 INFO    ] 200
[2026-10-25 16:29:38,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:38,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:29:38,078.078 INFO    ] No update needed
[2026-10-25 16:29:38,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 16:29:38,114.114 INFO    ] 200
[2026-10-25 16:29:38,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:38,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:29:38,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:29:38,249.249 INFO    ] No camera update needed
[2026-10-25 16:29:38,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:29:38,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:29:38,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:29:38,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:29:40,303.303 INFO    ] ================================================
[2026-10-25 16:29:40,318.318 INFO    ] Launching Daemon at Sun Oct 25 16:29:40 IST 2026
[2026-10-25 16:29:40,328.328 INFO    ] ================================================
[2026-10-25 16:29:40,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:29:40
[2026-10-25 16:29:41,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:29:41,777.777 INFO    ] Initializing speech engine...
[2026-10-25 16:29:41,787.787 INFO    ] 2026-10-25 16:29:41
[2026-10-25 16:29:42,048.048 INFO    ] 2026-10-25 16:29:42
[2026-10-25 16:29:42,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:29:42,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:29:42,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:29:42,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:29:42,590.590 INFO    ] time= 25/10/2026 16:29:42
[2026-10-25 16:29:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:29:42,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:29:42,726.726 INFO    ] No existing commands found in stream
[2026-10-25 16:29:47,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:29:47,754.754 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 16:29:49,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:29:49,709.709 INFO    ] Checking for system updates...
[2026-10-25 16:29:49,749.749 INFO    ] 200
[2026-10-25 16:29:49,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:49,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:29:49,826.826 INFO    ] No update needed
[2026-10-25 16:29:49,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 16:29:49,867.867 INFO    ] 200
[2026-10-25 16:29:49,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:29:49,910.910 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:29:50,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:29:50,070.070 INFO    ] No camera update needed
[2026-10-25 16:29:50,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:29:50,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:29:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:29:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:29:52,126.126 INFO    ] ================================================
[2026-10-25 16:29:52,141.141 INFO    ] Launching Daemon at Sun Oct 25 16:29:52 IST 2026
[2026-10-25 16:29:52,152.152 INFO    ] ================================================
[2026-10-25 16:29:52,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:29:52
[2026-10-25 16:29:53,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:29:53,561.561 INFO    ] Initializing speech engine...
[2026-10-25 16:29:53,581.581 INFO    ] 2026-10-25 16:29:53
[2026-10-25 16:29:53,835.835 INFO    ] 2026-10-25 16:29:53
[2026-10-25 16:29:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:29:54,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:29:54,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:29:54,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:29:54,329.329 INFO    ] time= 25/10/2026 16:29:54
[2026-10-25 16:29:54,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:29:54,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:29:54,528.528 INFO    ] No existing commands found in stream
[2026-10-25 16:29:59,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:29:59,552.552 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 16:30:01,194.194 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:30:01,197.197 INFO    ] Checking for system updates...
[2026-10-25 16:30:01,235.235 INFO    ] 200
[2026-10-25 16:30:01,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:01,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:01,297.297 INFO    ] No update needed
[2026-10-25 16:30:01,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 16:30:01,335.335 INFO    ] 200
[2026-10-25 16:30:01,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:01,378.378 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:30:01,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:01,423.423 INFO    ] No camera update needed
[2026-10-25 16:30:01,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:30:01,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:30:01,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:30:01,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:30:03,491.491 INFO    ] ================================================
[2026-10-25 16:30:03,512.512 INFO    ] Launching Daemon at Sun Oct 25 16:30:03 IST 2026
[2026-10-25 16:30:03,528.528 INFO    ] ================================================
[2026-10-25 16:30:04,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:30:04
[2026-10-25 16:30:04,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:30:05,080.080 INFO    ] Initializing speech engine...
[2026-10-25 16:30:05,099.099 INFO    ] 2026-10-25 16:30:05
[2026-10-25 16:30:05,364.364 INFO    ] 2026-10-25 16:30:05
[2026-10-25 16:30:05,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:30:05,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:30:05,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:30:05,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:30:05,734.734 INFO    ] time= 25/10/2026 16:30:05
[2026-10-25 16:30:05,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:30:05,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:30:05,914.914 INFO    ] No existing commands found in stream
[2026-10-25 16:30:10,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:30:10,944.944 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 16:30:12,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:30:12,596.596 INFO    ] Checking for system updates...
[2026-10-25 16:30:12,632.632 INFO    ] 200
[2026-10-25 16:30:12,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:12,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:12,690.690 INFO    ] No update needed
[2026-10-25 16:30:12,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 16:30:12,730.730 INFO    ] 200
[2026-10-25 16:30:12,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:12,774.774 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:30:12,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:12,824.824 INFO    ] No camera update needed
[2026-10-25 16:30:12,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:30:12,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:30:12,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:30:12,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:30:14,878.878 INFO    ] ================================================
[2026-10-25 16:30:14,899.899 INFO    ] Launching Daemon at Sun Oct 25 16:30:14 IST 2026
[2026-10-25 16:30:14,914.914 INFO    ] ================================================
[2026-10-25 16:30:15,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:30:15
[2026-10-25 16:30:16,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:30:16,304.304 INFO    ] Initializing speech engine...
[2026-10-25 16:30:16,312.312 INFO    ] 2026-10-25 16:30:16
[2026-10-25 16:30:16,579.579 INFO    ] 2026-10-25 16:30:16
[2026-10-25 16:30:16,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:30:16,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:30:16,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:30:17,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:30:17,049.049 INFO    ] time= 25/10/2026 16:30:17
[2026-10-25 16:30:17,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:30:17,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:30:17,198.198 INFO    ] No existing commands found in stream
[2026-10-25 16:30:22,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:30:22,213.213 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 16:30:23,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:30:23,591.591 INFO    ] Checking for system updates...
[2026-10-25 16:30:23,628.628 INFO    ] 200
[2026-10-25 16:30:23,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:23,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:23,687.687 INFO    ] No update needed
[2026-10-25 16:30:23,690.690 INFO    ] Checking for camera pi updates...
[2026-10-25 16:30:23,724.724 INFO    ] 200
[2026-10-25 16:30:23,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:23,768.768 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:30:23,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:23,820.820 INFO    ] No camera update needed
[2026-10-25 16:30:23,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:30:23,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:30:23,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:30:23,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:30:25,876.876 INFO    ] ================================================
[2026-10-25 16:30:25,891.891 INFO    ] Launching Daemon at Sun Oct 25 16:30:25 IST 2026
[2026-10-25 16:30:25,901.901 INFO    ] ================================================
[2026-10-25 16:30:26,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:30:26
[2026-10-25 16:30:27,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:30:27,318.318 INFO    ] Initializing speech engine...
[2026-10-25 16:30:27,328.328 INFO    ] 2026-10-25 16:30:27
[2026-10-25 16:30:27,586.586 INFO    ] 2026-10-25 16:30:27
[2026-10-25 16:30:27,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:30:27,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:30:27,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:30:28,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:30:28,048.048 INFO    ] time= 25/10/2026 16:30:28
[2026-10-25 16:30:28,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:30:28,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:30:28,194.194 INFO    ] No existing commands found in stream
[2026-10-25 16:30:33,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:30:33,206.206 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-25 16:30:36,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:30:36,718.718 INFO    ] Checking for system updates...
[2026-10-25 16:30:36,754.754 INFO    ] 200
[2026-10-25 16:30:36,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:36,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:36,812.812 INFO    ] No update needed
[2026-10-25 16:30:36,814.814 INFO    ] Checking for camera pi updates...
[2026-10-25 16:30:36,848.848 INFO    ] 200
[2026-10-25 16:30:36,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:36,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:30:36,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:36,936.936 INFO    ] No camera update needed
[2026-10-25 16:30:36,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:30:36,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:30:36,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:30:36,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:30:38,991.991 INFO    ] ================================================
[2026-10-25 16:30:39,006.006 INFO    ] Launching Daemon at Sun Oct 25 16:30:39 IST 2026
[2026-10-25 16:30:39,017.017 INFO    ] ================================================
[2026-10-25 16:30:39,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:30:39
[2026-10-25 16:30:40,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:30:40,428.428 INFO    ] Initializing speech engine...
[2026-10-25 16:30:40,451.451 INFO    ] 2026-10-25 16:30:40
[2026-10-25 16:30:40,709.709 INFO    ] 2026-10-25 16:30:40
[2026-10-25 16:30:40,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:30:42,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:30:42,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:30:42,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:30:42,703.703 INFO    ] time= 25/10/2026 16:30:42
[2026-10-25 16:30:42,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:30:42,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:30:42,814.814 INFO    ] No existing commands found in stream
[2026-10-25 16:30:47,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:30:47,827.827 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 16:30:50,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:30:50,653.653 INFO    ] Checking for system updates...
[2026-10-25 16:30:50,692.692 INFO    ] 200
[2026-10-25 16:30:50,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:50,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:50,750.750 INFO    ] No update needed
[2026-10-25 16:30:50,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 16:30:50,787.787 INFO    ] 200
[2026-10-25 16:30:50,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:30:50,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:30:50,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:30:50,894.894 INFO    ] No camera update needed
[2026-10-25 16:30:50,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:30:50,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:30:50,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:30:50,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:30:52,950.950 INFO    ] ================================================
[2026-10-25 16:30:52,965.965 INFO    ] Launching Daemon at Sun Oct 25 16:30:52 IST 2026
[2026-10-25 16:30:52,975.975 INFO    ] ================================================
[2026-10-25 16:30:53,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:30:53
[2026-10-25 16:30:54,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:30:54,544.544 INFO    ] Initializing speech engine...
[2026-10-25 16:30:54,555.555 INFO    ] 2026-10-25 16:30:54
[2026-10-25 16:30:54,833.833 INFO    ] 2026-10-25 16:30:54
[2026-10-25 16:30:54,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:30:55,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:30:55,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:30:55,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:30:55,372.372 INFO    ] time= 25/10/2026 16:30:55
[2026-10-25 16:30:55,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:30:55,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:30:55,528.528 INFO    ] No existing commands found in stream
[2026-10-25 16:31:00,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:31:00,556.556 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 16:31:04,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:31:04,198.198 INFO    ] Checking for system updates...
[2026-10-25 16:31:04,241.241 INFO    ] 200
[2026-10-25 16:31:04,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:04,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:04,301.301 INFO    ] No update needed
[2026-10-25 16:31:04,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 16:31:04,339.339 INFO    ] 200
[2026-10-25 16:31:04,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:04,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:31:04,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:04,437.437 INFO    ] No camera update needed
[2026-10-25 16:31:04,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:31:04,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:31:04,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:31:04,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:31:06,491.491 INFO    ] ================================================
[2026-10-25 16:31:06,506.506 INFO    ] Launching Daemon at Sun Oct 25 16:31:06 IST 2026
[2026-10-25 16:31:06,517.517 INFO    ] ================================================
[2026-10-25 16:31:07,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:31:07
[2026-10-25 16:31:07,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:31:08,068.068 INFO    ] Initializing speech engine...
[2026-10-25 16:31:08,077.077 INFO    ] 2026-10-25 16:31:08
[2026-10-25 16:31:08,323.323 INFO    ] 2026-10-25 16:31:08
[2026-10-25 16:31:08,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:31:08,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:31:08,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:31:08,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:31:08,799.799 INFO    ] time= 25/10/2026 16:31:08
[2026-10-25 16:31:08,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:31:08,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:31:08,951.951 INFO    ] No existing commands found in stream
[2026-10-25 16:31:13,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:31:13,989.989 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 16:31:14,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:31:14,689.689 INFO    ] Checking for system updates...
[2026-10-25 16:31:14,725.725 INFO    ] 200
[2026-10-25 16:31:14,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:14,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:14,783.783 INFO    ] No update needed
[2026-10-25 16:31:14,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 16:31:14,824.824 INFO    ] 200
[2026-10-25 16:31:14,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:14,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:31:14,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:14,920.920 INFO    ] No camera update needed
[2026-10-25 16:31:14,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:31:14,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:31:14,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:31:14,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:31:16,976.976 INFO    ] ================================================
[2026-10-25 16:31:16,991.991 INFO    ] Launching Daemon at Sun Oct 25 16:31:16 IST 2026
[2026-10-25 16:31:17,002.002 INFO    ] ================================================
[2026-10-25 16:31:17,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:31:17
[2026-10-25 16:31:18,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:31:18,419.419 INFO    ] Initializing speech engine...
[2026-10-25 16:31:18,429.429 INFO    ] 2026-10-25 16:31:18
[2026-10-25 16:31:18,687.687 INFO    ] 2026-10-25 16:31:18
[2026-10-25 16:31:18,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:31:18,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:31:18,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:31:19,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:31:19,149.149 INFO    ] time= 25/10/2026 16:31:19
[2026-10-25 16:31:19,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:31:19,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:31:19,295.295 INFO    ] No existing commands found in stream
[2026-10-25 16:31:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:31:24,318.318 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 16:31:28,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:31:28,725.725 INFO    ] Checking for system updates...
[2026-10-25 16:31:28,761.761 INFO    ] 200
[2026-10-25 16:31:28,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:28,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:31:28,820.820 INFO    ] No update needed
[2026-10-25 16:31:28,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 16:31:28,856.856 INFO    ] 200
[2026-10-25 16:31:28,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:28,900.900 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:31:28,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:31:28,935.935 INFO    ] No camera update needed
[2026-10-25 16:31:28,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:31:28,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:31:28,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:31:28,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:31:30,991.991 INFO    ] ================================================
[2026-10-25 16:31:31,006.006 INFO    ] Launching Daemon at Sun Oct 25 16:31:31 IST 2026
[2026-10-25 16:31:31,017.017 INFO    ] ================================================
[2026-10-25 16:31:31,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:31:31
[2026-10-25 16:31:32,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:31:32,543.543 INFO    ] Initializing speech engine...
[2026-10-25 16:31:32,552.552 INFO    ] 2026-10-25 16:31:32
[2026-10-25 16:31:32,847.847 INFO    ] 2026-10-25 16:31:32
[2026-10-25 16:31:32,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:31:33,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:31:33,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:31:33,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:31:33,245.245 INFO    ] time= 25/10/2026 16:31:33
[2026-10-25 16:31:33,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:31:33,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:31:33,417.417 INFO    ] No existing commands found in stream
[2026-10-25 16:31:38,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:31:38,445.445 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 16:31:39,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:31:39,548.548 INFO    ] Checking for system updates...
[2026-10-25 16:31:39,585.585 INFO    ] 200
[2026-10-25 16:31:39,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:39,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:39,646.646 INFO    ] No update needed
[2026-10-25 16:31:39,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 16:31:39,682.682 INFO    ] 200
[2026-10-25 16:31:39,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:39,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:31:39,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:31:39,793.793 INFO    ] No camera update needed
[2026-10-25 16:31:39,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:31:39,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:31:39,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:31:39,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:31:41,847.847 INFO    ] ================================================
[2026-10-25 16:31:41,865.865 INFO    ] Launching Daemon at Sun Oct 25 16:31:41 IST 2026
[2026-10-25 16:31:41,878.878 INFO    ] ================================================
[2026-10-25 16:31:42,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:31:42
[2026-10-25 16:31:43,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:31:43,393.393 INFO    ] Initializing speech engine...
[2026-10-25 16:31:43,408.408 INFO    ] 2026-10-25 16:31:43
[2026-10-25 16:31:43,687.687 INFO    ] 2026-10-25 16:31:43
[2026-10-25 16:31:43,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:31:44,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:31:44,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:31:44,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:31:44,845.845 INFO    ] time= 25/10/2026 16:31:44
[2026-10-25 16:31:44,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:31:44,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:31:44,962.962 INFO    ] No existing commands found in stream
[2026-10-25 16:31:49,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:31:49,975.975 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 16:31:51,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:31:51,636.636 INFO    ] Checking for system updates...
[2026-10-25 16:31:51,672.672 INFO    ] 200
[2026-10-25 16:31:51,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:51,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:31:51,730.730 INFO    ] No update needed
[2026-10-25 16:31:51,733.733 INFO    ] Checking for camera pi updates...
[2026-10-25 16:31:51,771.771 INFO    ] 200
[2026-10-25 16:31:51,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:31:51,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:31:51,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:31:51,966.966 INFO    ] No camera update needed
[2026-10-25 16:31:51,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:31:51,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:31:51,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:31:51,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:31:54,021.021 INFO    ] ================================================
[2026-10-25 16:31:54,037.037 INFO    ] Launching Daemon at Sun Oct 25 16:31:54 IST 2026
[2026-10-25 16:31:54,047.047 INFO    ] ================================================
[2026-10-25 16:31:54,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:31:54
[2026-10-25 16:31:55,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:31:55,464.464 INFO    ] Initializing speech engine...
[2026-10-25 16:31:55,474.474 INFO    ] 2026-10-25 16:31:55
[2026-10-25 16:31:55,724.724 INFO    ] 2026-10-25 16:31:55
[2026-10-25 16:31:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:31:56,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:31:56,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:31:56,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:31:56,221.221 INFO    ] time= 25/10/2026 16:31:56
[2026-10-25 16:31:56,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:31:56,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:31:56,354.354 INFO    ] No existing commands found in stream
[2026-10-25 16:32:01,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:32:01,377.377 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 16:32:02,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:32:02,069.069 INFO    ] Checking for system updates...
[2026-10-25 16:32:02,111.111 INFO    ] 200
[2026-10-25 16:32:02,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:02,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:02,175.175 INFO    ] No update needed
[2026-10-25 16:32:02,178.178 INFO    ] Checking for camera pi updates...
[2026-10-25 16:32:02,219.219 INFO    ] 200
[2026-10-25 16:32:02,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:02,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:32:02,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:02,303.303 INFO    ] No camera update needed
[2026-10-25 16:32:02,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:32:02,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:32:02,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:32:02,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:32:04,361.361 INFO    ] ================================================
[2026-10-25 16:32:04,376.376 INFO    ] Launching Daemon at Sun Oct 25 16:32:04 IST 2026
[2026-10-25 16:32:04,390.390 INFO    ] ================================================
[2026-10-25 16:32:04,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:32:04
[2026-10-25 16:32:05,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:32:05,847.847 INFO    ] Initializing speech engine...
[2026-10-25 16:32:05,857.857 INFO    ] 2026-10-25 16:32:05
[2026-10-25 16:32:06,105.105 INFO    ] 2026-10-25 16:32:06
[2026-10-25 16:32:06,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:32:06,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:32:06,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:32:06,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:32:06,555.555 INFO    ] time= 25/10/2026 16:32:06
[2026-10-25 16:32:06,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:32:06,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:32:06,725.725 INFO    ] No existing commands found in stream
[2026-10-25 16:32:11,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:32:11,739.739 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 16:32:15,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:32:15,364.364 INFO    ] Checking for system updates...
[2026-10-25 16:32:15,400.400 INFO    ] 200
[2026-10-25 16:32:15,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:15,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:15,484.484 INFO    ] No update needed
[2026-10-25 16:32:15,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 16:32:15,523.523 INFO    ] 200
[2026-10-25 16:32:15,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:15,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:32:15,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:15,620.620 INFO    ] No camera update needed
[2026-10-25 16:32:15,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:32:15,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:32:15,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:32:15,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:32:17,677.677 INFO    ] ================================================
[2026-10-25 16:32:17,693.693 INFO    ] Launching Daemon at Sun Oct 25 16:32:17 IST 2026
[2026-10-25 16:32:17,703.703 INFO    ] ================================================
[2026-10-25 16:32:18,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:32:18
[2026-10-25 16:32:18,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:32:19,222.222 INFO    ] Initializing speech engine...
[2026-10-25 16:32:19,228.228 INFO    ] 2026-10-25 16:32:19
[2026-10-25 16:32:19,496.496 INFO    ] 2026-10-25 16:32:19
[2026-10-25 16:32:19,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:32:19,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:32:19,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:32:19,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:32:19,964.964 INFO    ] time= 25/10/2026 16:32:19
[2026-10-25 16:32:20,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:32:20,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:32:20,172.172 INFO    ] No existing commands found in stream
[2026-10-25 16:32:25,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:32:25,202.202 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 16:32:29,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:32:29,342.342 INFO    ] Checking for system updates...
[2026-10-25 16:32:29,378.378 INFO    ] 200
[2026-10-25 16:32:29,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:29,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:29,438.438 INFO    ] No update needed
[2026-10-25 16:32:29,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 16:32:29,477.477 INFO    ] 200
[2026-10-25 16:32:29,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:29,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:32:29,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:29,575.575 INFO    ] No camera update needed
[2026-10-25 16:32:29,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:32:29,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:32:29,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:32:29,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:32:31,633.633 INFO    ] ================================================
[2026-10-25 16:32:31,650.650 INFO    ] Launching Daemon at Sun Oct 25 16:32:31 IST 2026
[2026-10-25 16:32:31,664.664 INFO    ] ================================================
[2026-10-25 16:32:32,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:32:32
[2026-10-25 16:32:33,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:32:33,321.321 INFO    ] Initializing speech engine...
[2026-10-25 16:32:33,335.335 INFO    ] 2026-10-25 16:32:33
[2026-10-25 16:32:33,643.643 INFO    ] 2026-10-25 16:32:33
[2026-10-25 16:32:33,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:32:33,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:32:33,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:32:34,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:32:34,145.145 INFO    ] time= 25/10/2026 16:32:34
[2026-10-25 16:32:34,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:32:34,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:32:34,284.284 INFO    ] No existing commands found in stream
[2026-10-25 16:32:39,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:32:39,309.309 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 16:32:44,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:32:44,675.675 INFO    ] Checking for system updates...
[2026-10-25 16:32:44,713.713 INFO    ] 200
[2026-10-25 16:32:44,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:44,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:44,773.773 INFO    ] No update needed
[2026-10-25 16:32:44,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 16:32:44,810.810 INFO    ] 200
[2026-10-25 16:32:44,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:44,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:32:44,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:32:44,906.906 INFO    ] No camera update needed
[2026-10-25 16:32:44,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:32:44,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:32:44,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:32:44,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:32:46,962.962 INFO    ] ================================================
[2026-10-25 16:32:46,977.977 INFO    ] Launching Daemon at Sun Oct 25 16:32:46 IST 2026
[2026-10-25 16:32:46,988.988 INFO    ] ================================================
[2026-10-25 16:32:47,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:32:47
[2026-10-25 16:32:48,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:32:48,380.380 INFO    ] Initializing speech engine...
[2026-10-25 16:32:48,386.386 INFO    ] 2026-10-25 16:32:48
[2026-10-25 16:32:48,660.660 INFO    ] 2026-10-25 16:32:48
[2026-10-25 16:32:48,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:32:48,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:32:48,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:32:49,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:32:49,036.036 INFO    ] time= 25/10/2026 16:32:49
[2026-10-25 16:32:49,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:32:49,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:32:49,214.214 INFO    ] No existing commands found in stream
[2026-10-25 16:32:54,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:32:54,245.245 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 16:32:55,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:32:55,337.337 INFO    ] Checking for system updates...
[2026-10-25 16:32:55,373.373 INFO    ] 200
[2026-10-25 16:32:55,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:55,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:32:55,441.441 INFO    ] No update needed
[2026-10-25 16:32:55,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 16:32:55,481.481 INFO    ] 200
[2026-10-25 16:32:55,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:32:55,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:32:55,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:32:55,584.584 INFO    ] No camera update needed
[2026-10-25 16:32:55,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:32:55,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:32:55,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:32:55,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:32:57,639.639 INFO    ] ================================================
[2026-10-25 16:32:57,654.654 INFO    ] Launching Daemon at Sun Oct 25 16:32:57 IST 2026
[2026-10-25 16:32:57,665.665 INFO    ] ================================================
[2026-10-25 16:32:58,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:32:58
[2026-10-25 16:32:58,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:32:59,080.080 INFO    ] Initializing speech engine...
[2026-10-25 16:32:59,093.093 INFO    ] 2026-10-25 16:32:59
[2026-10-25 16:32:59,372.372 INFO    ] 2026-10-25 16:32:59
[2026-10-25 16:32:59,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:32:59,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:32:59,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:32:59,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:32:59,758.758 INFO    ] time= 25/10/2026 16:32:59
[2026-10-25 16:32:59,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:32:59,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:32:59,934.934 INFO    ] No existing commands found in stream
[2026-10-25 16:33:04,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:33:04,962.962 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 16:33:08,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:33:08,368.368 INFO    ] Checking for system updates...
[2026-10-25 16:33:08,408.408 INFO    ] 200
[2026-10-25 16:33:08,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:08,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:08,466.466 INFO    ] No update needed
[2026-10-25 16:33:08,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 16:33:08,503.503 INFO    ] 200
[2026-10-25 16:33:08,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:08,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:33:08,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:08,594.594 INFO    ] No camera update needed
[2026-10-25 16:33:08,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:33:08,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:33:08,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:33:08,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:33:10,648.648 INFO    ] ================================================
[2026-10-25 16:33:10,663.663 INFO    ] Launching Daemon at Sun Oct 25 16:33:10 IST 2026
[2026-10-25 16:33:10,674.674 INFO    ] ================================================
[2026-10-25 16:33:11,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:33:11
[2026-10-25 16:33:11,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:33:12,177.177 INFO    ] Initializing speech engine...
[2026-10-25 16:33:12,189.189 INFO    ] 2026-10-25 16:33:12
[2026-10-25 16:33:12,506.506 INFO    ] 2026-10-25 16:33:12
[2026-10-25 16:33:12,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:33:12,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:33:12,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:33:12,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:33:12,923.923 INFO    ] time= 25/10/2026 16:33:12
[2026-10-25 16:33:12,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:33:13,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:33:13,072.072 INFO    ] No existing commands found in stream
[2026-10-25 16:33:18,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:33:18,085.085 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 16:33:19,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:33:19,568.568 INFO    ] Checking for system updates...
[2026-10-25 16:33:19,605.605 INFO    ] 200
[2026-10-25 16:33:19,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:19,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:33:19,663.663 INFO    ] No update needed
[2026-10-25 16:33:19,666.666 INFO    ] Checking for camera pi updates...
[2026-10-25 16:33:19,700.700 INFO    ] 200
[2026-10-25 16:33:19,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:19,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:33:19,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:33:19,809.809 INFO    ] No camera update needed
[2026-10-25 16:33:19,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:33:19,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:33:19,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:33:19,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:33:21,865.865 INFO    ] ================================================
[2026-10-25 16:33:21,880.880 INFO    ] Launching Daemon at Sun Oct 25 16:33:21 IST 2026
[2026-10-25 16:33:21,890.890 INFO    ] ================================================
[2026-10-25 16:33:22,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:33:22
[2026-10-25 16:33:23,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:33:23,343.343 INFO    ] Initializing speech engine...
[2026-10-25 16:33:23,353.353 INFO    ] 2026-10-25 16:33:23
[2026-10-25 16:33:23,615.615 INFO    ] 2026-10-25 16:33:23
[2026-10-25 16:33:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:33:23,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:33:23,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:33:24,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:33:24,092.092 INFO    ] time= 25/10/2026 16:33:24
[2026-10-25 16:33:24,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:33:24,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:33:24,269.269 INFO    ] No existing commands found in stream
[2026-10-25 16:33:29,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:33:29,297.297 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 16:33:32,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:33:32,509.509 INFO    ] Checking for system updates...
[2026-10-25 16:33:32,553.553 INFO    ] 200
[2026-10-25 16:33:32,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:32,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:32,630.630 INFO    ] No update needed
[2026-10-25 16:33:32,634.634 INFO    ] Checking for camera pi updates...
[2026-10-25 16:33:32,679.679 INFO    ] 200
[2026-10-25 16:33:32,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:32,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:33:32,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:32,773.773 INFO    ] No camera update needed
[2026-10-25 16:33:32,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:33:32,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:33:32,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:33:32,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:33:34,833.833 INFO    ] ================================================
[2026-10-25 16:33:34,848.848 INFO    ] Launching Daemon at Sun Oct 25 16:33:34 IST 2026
[2026-10-25 16:33:34,859.859 INFO    ] ================================================
[2026-10-25 16:33:35,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:33:35
[2026-10-25 16:33:36,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:33:36,335.335 INFO    ] Initializing speech engine...
[2026-10-25 16:33:36,342.342 INFO    ] 2026-10-25 16:33:36
[2026-10-25 16:33:36,602.602 INFO    ] 2026-10-25 16:33:36
[2026-10-25 16:33:36,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:33:36,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:33:36,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:33:37,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:33:37,101.101 INFO    ] time= 25/10/2026 16:33:37
[2026-10-25 16:33:37,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:33:37,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:33:37,284.284 INFO    ] No existing commands found in stream
[2026-10-25 16:33:42,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:33:42,314.314 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 16:33:47,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:33:47,669.669 INFO    ] Checking for system updates...
[2026-10-25 16:33:47,706.706 INFO    ] 200
[2026-10-25 16:33:47,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:47,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:47,764.764 INFO    ] No update needed
[2026-10-25 16:33:47,767.767 INFO    ] Checking for camera pi updates...
[2026-10-25 16:33:47,801.801 INFO    ] 200
[2026-10-25 16:33:47,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:47,854.854 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:33:47,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:33:47,905.905 INFO    ] No camera update needed
[2026-10-25 16:33:47,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:33:47,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:33:47,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:33:47,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:33:49,961.961 INFO    ] ================================================
[2026-10-25 16:33:49,977.977 INFO    ] Launching Daemon at Sun Oct 25 16:33:49 IST 2026
[2026-10-25 16:33:49,988.988 INFO    ] ================================================
[2026-10-25 16:33:50,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:33:50
[2026-10-25 16:33:51,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:33:51,634.634 INFO    ] Initializing speech engine...
[2026-10-25 16:33:51,645.645 INFO    ] 2026-10-25 16:33:51
[2026-10-25 16:33:51,921.921 INFO    ] 2026-10-25 16:33:51
[2026-10-25 16:33:51,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:33:52,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:33:52,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:33:52,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:33:52,312.312 INFO    ] time= 25/10/2026 16:33:52
[2026-10-25 16:33:52,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:33:52,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:33:52,442.442 INFO    ] No existing commands found in stream
[2026-10-25 16:33:57,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:33:57,458.458 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 16:33:58,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:33:58,179.179 INFO    ] Checking for system updates...
[2026-10-25 16:33:58,216.216 INFO    ] 200
[2026-10-25 16:33:58,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:58,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:33:58,278.278 INFO    ] No update needed
[2026-10-25 16:33:58,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 16:33:58,319.319 INFO    ] 200
[2026-10-25 16:33:58,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:33:58,368.368 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:33:58,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:33:58,524.524 INFO    ] No camera update needed
[2026-10-25 16:33:58,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:33:58,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:33:58,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:33:58,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:34:00,583.583 INFO    ] ================================================
[2026-10-25 16:34:00,600.600 INFO    ] Launching Daemon at Sun Oct 25 16:34:00 IST 2026
[2026-10-25 16:34:00,611.611 INFO    ] ================================================
[2026-10-25 16:34:01,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:34:01
[2026-10-25 16:34:02,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:34:02,364.364 INFO    ] Initializing speech engine...
[2026-10-25 16:34:02,371.371 INFO    ] 2026-10-25 16:34:02
[2026-10-25 16:34:02,655.655 INFO    ] 2026-10-25 16:34:02
[2026-10-25 16:34:02,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:34:02,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:34:02,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:34:03,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:34:03,144.144 INFO    ] time= 25/10/2026 16:34:03
[2026-10-25 16:34:03,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:34:03,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:34:03,319.319 INFO    ] No existing commands found in stream
[2026-10-25 16:34:08,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:34:08,335.335 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 16:34:09,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:34:09,033.033 INFO    ] Checking for system updates...
[2026-10-25 16:34:09,076.076 INFO    ] 200
[2026-10-25 16:34:09,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:09,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:09,146.146 INFO    ] No update needed
[2026-10-25 16:34:09,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 16:34:09,186.186 INFO    ] 200
[2026-10-25 16:34:09,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:09,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:34:09,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:09,285.285 INFO    ] No camera update needed
[2026-10-25 16:34:09,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:34:09,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:34:09,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:34:09,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:34:11,345.345 INFO    ] ================================================
[2026-10-25 16:34:11,362.362 INFO    ] Launching Daemon at Sun Oct 25 16:34:11 IST 2026
[2026-10-25 16:34:11,375.375 INFO    ] ================================================
[2026-10-25 16:34:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:34:12
[2026-10-25 16:34:12,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:34:13,076.076 INFO    ] Initializing speech engine...
[2026-10-25 16:34:13,084.084 INFO    ] 2026-10-25 16:34:13
[2026-10-25 16:34:13,365.365 INFO    ] 2026-10-25 16:34:13
[2026-10-25 16:34:13,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:34:13,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:34:13,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:34:13,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:34:13,871.871 INFO    ] time= 25/10/2026 16:34:13
[2026-10-25 16:34:13,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:34:13,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:34:14,006.006 INFO    ] No existing commands found in stream
[2026-10-25 16:34:19,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:34:19,023.023 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 16:34:23,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:34:23,125.125 INFO    ] Checking for system updates...
[2026-10-25 16:34:23,165.165 INFO    ] 200
[2026-10-25 16:34:23,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:23,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:23,228.228 INFO    ] No update needed
[2026-10-25 16:34:23,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 16:34:23,267.267 INFO    ] 200
[2026-10-25 16:34:23,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:23,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:34:23,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:23,374.374 INFO    ] No camera update needed
[2026-10-25 16:34:23,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:34:23,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:34:23,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:34:23,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:34:25,435.435 INFO    ] ================================================
[2026-10-25 16:34:25,452.452 INFO    ] Launching Daemon at Sun Oct 25 16:34:25 IST 2026
[2026-10-25 16:34:25,463.463 INFO    ] ================================================
[2026-10-25 16:34:26,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:34:26
[2026-10-25 16:34:26,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:34:26,961.961 INFO    ] Initializing speech engine...
[2026-10-25 16:34:26,971.971 INFO    ] 2026-10-25 16:34:26
[2026-10-25 16:34:27,227.227 INFO    ] 2026-10-25 16:34:27
[2026-10-25 16:34:27,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:34:27,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:34:27,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:34:27,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:34:27,714.714 INFO    ] time= 25/10/2026 16:34:27
[2026-10-25 16:34:27,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:34:27,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:34:27,879.879 INFO    ] No existing commands found in stream
[2026-10-25 16:34:32,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:34:32,919.919 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 16:34:34,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:34:34,260.260 INFO    ] Checking for system updates...
[2026-10-25 16:34:34,301.301 INFO    ] 200
[2026-10-25 16:34:34,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:34,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:34,370.370 INFO    ] No update needed
[2026-10-25 16:34:34,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 16:34:34,412.412 INFO    ] 200
[2026-10-25 16:34:34,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:34,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:34:34,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:34,517.517 INFO    ] No camera update needed
[2026-10-25 16:34:34,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:34:34,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:34:34,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:34:34,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:34:36,581.581 INFO    ] ================================================
[2026-10-25 16:34:36,596.596 INFO    ] Launching Daemon at Sun Oct 25 16:34:36 IST 2026
[2026-10-25 16:34:36,607.607 INFO    ] ================================================
[2026-10-25 16:34:37,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:34:37
[2026-10-25 16:34:37,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:34:38,106.106 INFO    ] Initializing speech engine...
[2026-10-25 16:34:38,112.112 INFO    ] 2026-10-25 16:34:38
[2026-10-25 16:34:38,378.378 INFO    ] 2026-10-25 16:34:38
[2026-10-25 16:34:38,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:34:38,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:34:38,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:34:38,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:34:38,864.864 INFO    ] time= 25/10/2026 16:34:38
[2026-10-25 16:34:38,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:34:38,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:34:39,073.073 INFO    ] No existing commands found in stream
[2026-10-25 16:34:44,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:34:44,105.105 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 16:34:49,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:34:49,539.539 INFO    ] Checking for system updates...
[2026-10-25 16:34:49,578.578 INFO    ] 200
[2026-10-25 16:34:49,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:49,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:49,651.651 INFO    ] No update needed
[2026-10-25 16:34:49,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 16:34:49,693.693 INFO    ] 200
[2026-10-25 16:34:49,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:34:49,738.738 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:34:49,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:34:49,797.797 INFO    ] No camera update needed
[2026-10-25 16:34:49,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:34:49,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:34:49,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:34:49,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:34:51,857.857 INFO    ] ================================================
[2026-10-25 16:34:51,873.873 INFO    ] Launching Daemon at Sun Oct 25 16:34:51 IST 2026
[2026-10-25 16:34:51,886.886 INFO    ] ================================================
[2026-10-25 16:34:52,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:34:52
[2026-10-25 16:34:53,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:34:53,569.569 INFO    ] Initializing speech engine...
[2026-10-25 16:34:53,583.583 INFO    ] 2026-10-25 16:34:53
[2026-10-25 16:34:53,879.879 INFO    ] 2026-10-25 16:34:53
[2026-10-25 16:34:53,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:34:54,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:34:54,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:34:54,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:34:54,377.377 INFO    ] time= 25/10/2026 16:34:54
[2026-10-25 16:34:54,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:34:54,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:34:54,580.580 INFO    ] No existing commands found in stream
[2026-10-25 16:34:59,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:34:59,621.621 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 16:35:02,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:35:02,859.859 INFO    ] Checking for system updates...
[2026-10-25 16:35:02,903.903 INFO    ] 200
[2026-10-25 16:35:02,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:02,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:02,969.969 INFO    ] No update needed
[2026-10-25 16:35:02,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 16:35:03,013.013 INFO    ] 200
[2026-10-25 16:35:03,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:03,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:35:03,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:03,127.127 INFO    ] No camera update needed
[2026-10-25 16:35:03,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:35:03,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:35:03,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:35:03,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:35:05,186.186 INFO    ] ================================================
[2026-10-25 16:35:05,203.203 INFO    ] Launching Daemon at Sun Oct 25 16:35:05 IST 2026
[2026-10-25 16:35:05,215.215 INFO    ] ================================================
[2026-10-25 16:35:05,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:35:05
[2026-10-25 16:35:06,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:35:06,912.912 INFO    ] Initializing speech engine...
[2026-10-25 16:35:06,919.919 INFO    ] 2026-10-25 16:35:06
[2026-10-25 16:35:07,216.216 INFO    ] 2026-10-25 16:35:07
[2026-10-25 16:35:07,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:35:07,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:35:07,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:35:07,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:35:07,714.714 INFO    ] time= 25/10/2026 16:35:07
[2026-10-25 16:35:07,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:35:07,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:35:07,905.905 INFO    ] No existing commands found in stream
[2026-10-25 16:35:12,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:35:12,935.935 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 16:35:19,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:35:19,769.769 INFO    ] Checking for system updates...
[2026-10-25 16:35:19,808.808 INFO    ] 200
[2026-10-25 16:35:19,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:19,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:35:19,878.878 INFO    ] No update needed
[2026-10-25 16:35:19,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 16:35:19,922.922 INFO    ] 200
[2026-10-25 16:35:19,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:19,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:35:20,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:35:20,022.022 INFO    ] No camera update needed
[2026-10-25 16:35:20,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:35:20,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:35:20,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:35:20,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:35:22,081.081 INFO    ] ================================================
[2026-10-25 16:35:22,099.099 INFO    ] Launching Daemon at Sun Oct 25 16:35:22 IST 2026
[2026-10-25 16:35:22,111.111 INFO    ] ================================================
[2026-10-25 16:35:22,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:35:22
[2026-10-25 16:35:23,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:35:23,729.729 INFO    ] Initializing speech engine...
[2026-10-25 16:35:23,743.743 INFO    ] 2026-10-25 16:35:23
[2026-10-25 16:35:24,018.018 INFO    ] 2026-10-25 16:35:24
[2026-10-25 16:35:24,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:35:24,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:35:24,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:35:24,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:35:24,585.585 INFO    ] time= 25/10/2026 16:35:24
[2026-10-25 16:35:24,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:35:24,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:35:24,744.744 INFO    ] No existing commands found in stream
[2026-10-25 16:35:29,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:35:29,770.770 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 16:35:32,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:35:32,857.857 INFO    ] Checking for system updates...
[2026-10-25 16:35:32,901.901 INFO    ] 200
[2026-10-25 16:35:32,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:32,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:32,968.968 INFO    ] No update needed
[2026-10-25 16:35:32,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 16:35:33,008.008 INFO    ] 200
[2026-10-25 16:35:33,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:33,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:35:33,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:33,095.095 INFO    ] No camera update needed
[2026-10-25 16:35:33,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:35:33,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:35:33,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:35:33,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:35:35,153.153 INFO    ] ================================================
[2026-10-25 16:35:35,170.170 INFO    ] Launching Daemon at Sun Oct 25 16:35:35 IST 2026
[2026-10-25 16:35:35,182.182 INFO    ] ================================================
[2026-10-25 16:35:35,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:35:35
[2026-10-25 16:35:36,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:35:36,855.855 INFO    ] Initializing speech engine...
[2026-10-25 16:35:36,864.864 INFO    ] 2026-10-25 16:35:36
[2026-10-25 16:35:37,162.162 INFO    ] 2026-10-25 16:35:37
[2026-10-25 16:35:37,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:35:37,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:35:37,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:35:37,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:35:37,805.805 INFO    ] time= 25/10/2026 16:35:37
[2026-10-25 16:35:37,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:35:37,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:35:38,078.078 INFO    ] No existing commands found in stream
[2026-10-25 16:35:43,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:35:43,117.117 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 16:35:43,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:35:43,685.685 INFO    ] Checking for system updates...
[2026-10-25 16:35:43,724.724 INFO    ] 200
[2026-10-25 16:35:43,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:43,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:35:43,788.788 INFO    ] No update needed
[2026-10-25 16:35:43,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 16:35:43,827.827 INFO    ] 200
[2026-10-25 16:35:43,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:43,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:35:43,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:35:43,937.937 INFO    ] No camera update needed
[2026-10-25 16:35:43,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:35:43,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:35:43,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:35:43,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:35:46,000.000 INFO    ] ================================================
[2026-10-25 16:35:46,015.015 INFO    ] Launching Daemon at Sun Oct 25 16:35:46 IST 2026
[2026-10-25 16:35:46,026.026 INFO    ] ================================================
[2026-10-25 16:35:46,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:35:46
[2026-10-25 16:35:47,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:35:47,457.457 INFO    ] Initializing speech engine...
[2026-10-25 16:35:47,470.470 INFO    ] 2026-10-25 16:35:47
[2026-10-25 16:35:47,727.727 INFO    ] 2026-10-25 16:35:47
[2026-10-25 16:35:47,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:35:50,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:35:50,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:35:50,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:35:50,957.957 INFO    ] time= 25/10/2026 16:35:50
[2026-10-25 16:35:50,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:35:50,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:35:51,016.016 INFO    ] No existing commands found in stream
[2026-10-25 16:35:56,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:35:56,028.028 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 16:35:56,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:35:56,530.530 INFO    ] Checking for system updates...
[2026-10-25 16:35:56,574.574 INFO    ] 200
[2026-10-25 16:35:56,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:56,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:56,635.635 INFO    ] No update needed
[2026-10-25 16:35:56,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 16:35:56,676.676 INFO    ] 200
[2026-10-25 16:35:56,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:35:56,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:35:56,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:35:56,779.779 INFO    ] No camera update needed
[2026-10-25 16:35:56,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:35:56,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:35:56,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:35:56,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:35:58,837.837 INFO    ] ================================================
[2026-10-25 16:35:58,853.853 INFO    ] Launching Daemon at Sun Oct 25 16:35:58 IST 2026
[2026-10-25 16:35:58,864.864 INFO    ] ================================================
[2026-10-25 16:35:59,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:35:59
[2026-10-25 16:36:00,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:36:00,330.330 INFO    ] Initializing speech engine...
[2026-10-25 16:36:00,341.341 INFO    ] 2026-10-25 16:36:00
[2026-10-25 16:36:00,612.612 INFO    ] 2026-10-25 16:36:00
[2026-10-25 16:36:00,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:36:00,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:36:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:36:00,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:36:01,019.019 INFO    ] time= 25/10/2026 16:36:00
[2026-10-25 16:36:01,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:36:01,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:36:01,128.128 INFO    ] No existing commands found in stream
[2026-10-25 16:36:06,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:36:06,150.150 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 16:36:09,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:36:09,360.360 INFO    ] Checking for system updates...
[2026-10-25 16:36:09,404.404 INFO    ] 200
[2026-10-25 16:36:09,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:09,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:09,464.464 INFO    ] No update needed
[2026-10-25 16:36:09,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 16:36:09,507.507 INFO    ] 200
[2026-10-25 16:36:09,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:09,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:36:09,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:09,604.604 INFO    ] No camera update needed
[2026-10-25 16:36:09,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:36:09,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:36:09,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:36:09,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:36:11,662.662 INFO    ] ================================================
[2026-10-25 16:36:11,678.678 INFO    ] Launching Daemon at Sun Oct 25 16:36:11 IST 2026
[2026-10-25 16:36:11,690.690 INFO    ] ================================================
[2026-10-25 16:36:12,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:36:12
[2026-10-25 16:36:13,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:36:13,361.361 INFO    ] Initializing speech engine...
[2026-10-25 16:36:13,369.369 INFO    ] 2026-10-25 16:36:13
[2026-10-25 16:36:13,663.663 INFO    ] 2026-10-25 16:36:13
[2026-10-25 16:36:13,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:36:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:36:13,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:36:14,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:36:14,207.207 INFO    ] time= 25/10/2026 16:36:14
[2026-10-25 16:36:14,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:36:14,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:36:14,371.371 INFO    ] No existing commands found in stream
[2026-10-25 16:36:19,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:36:19,405.405 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 16:36:23,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:36:23,692.692 INFO    ] Checking for system updates...
[2026-10-25 16:36:23,730.730 INFO    ] 200
[2026-10-25 16:36:23,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:23,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:23,789.789 INFO    ] No update needed
[2026-10-25 16:36:23,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 16:36:23,832.832 INFO    ] 200
[2026-10-25 16:36:23,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:23,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:36:23,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:23,932.932 INFO    ] No camera update needed
[2026-10-25 16:36:23,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:36:23,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:36:23,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:36:23,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:36:25,991.991 INFO    ] ================================================
[2026-10-25 16:36:26,008.008 INFO    ] Launching Daemon at Sun Oct 25 16:36:26 IST 2026
[2026-10-25 16:36:26,019.019 INFO    ] ================================================
[2026-10-25 16:36:26,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:36:26
[2026-10-25 16:36:27,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:36:27,667.667 INFO    ] Initializing speech engine...
[2026-10-25 16:36:27,678.678 INFO    ] 2026-10-25 16:36:27
[2026-10-25 16:36:27,994.994 INFO    ] 2026-10-25 16:36:27
[2026-10-25 16:36:28,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:36:28,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:36:28,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:36:28,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:36:28,511.511 INFO    ] time= 25/10/2026 16:36:28
[2026-10-25 16:36:28,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:36:28,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:36:28,663.663 INFO    ] No existing commands found in stream
[2026-10-25 16:36:33,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:36:33,687.687 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 16:36:37,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:36:37,459.459 INFO    ] Checking for system updates...
[2026-10-25 16:36:37,500.500 INFO    ] 200
[2026-10-25 16:36:37,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:37,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:37,572.572 INFO    ] No update needed
[2026-10-25 16:36:37,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 16:36:37,616.616 INFO    ] 200
[2026-10-25 16:36:37,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:37,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:36:37,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:36:37,730.730 INFO    ] No camera update needed
[2026-10-25 16:36:37,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:36:37,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:36:37,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:36:37,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:36:39,792.792 INFO    ] ================================================
[2026-10-25 16:36:39,808.808 INFO    ] Launching Daemon at Sun Oct 25 16:36:39 IST 2026
[2026-10-25 16:36:39,819.819 INFO    ] ================================================
[2026-10-25 16:36:40,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:36:40
[2026-10-25 16:36:41,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:36:41,287.287 INFO    ] Initializing speech engine...
[2026-10-25 16:36:41,293.293 INFO    ] 2026-10-25 16:36:41
[2026-10-25 16:36:41,575.575 INFO    ] 2026-10-25 16:36:41
[2026-10-25 16:36:41,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:36:41,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:36:41,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:36:41,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:36:41,999.999 INFO    ] time= 25/10/2026 16:36:41
[2026-10-25 16:36:42,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:36:42,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:36:42,086.086 INFO    ] No existing commands found in stream
[2026-10-25 16:36:47,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:36:47,102.102 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 16:36:48,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:36:48,700.700 INFO    ] Checking for system updates...
[2026-10-25 16:36:48,737.737 INFO    ] 200
[2026-10-25 16:36:48,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:48,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:36:48,804.804 INFO    ] No update needed
[2026-10-25 16:36:48,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 16:36:48,841.841 INFO    ] 200
[2026-10-25 16:36:48,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:36:48,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:36:48,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:36:48,944.944 INFO    ] No camera update needed
[2026-10-25 16:36:48,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:36:48,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:36:48,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:36:48,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:36:51,004.004 INFO    ] ================================================
[2026-10-25 16:36:51,022.022 INFO    ] Launching Daemon at Sun Oct 25 16:36:51 IST 2026
[2026-10-25 16:36:51,033.033 INFO    ] ================================================
[2026-10-25 16:36:51,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:36:51
[2026-10-25 16:36:52,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:36:52,475.475 INFO    ] Initializing speech engine...
[2026-10-25 16:36:52,492.492 INFO    ] 2026-10-25 16:36:52
[2026-10-25 16:36:52,790.790 INFO    ] 2026-10-25 16:36:52
[2026-10-25 16:36:52,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:36:53,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:36:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:36:53,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:36:53,184.184 INFO    ] time= 25/10/2026 16:36:53
[2026-10-25 16:36:53,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:36:53,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:36:53,314.314 INFO    ] No existing commands found in stream
[2026-10-25 16:36:58,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:36:58,328.328 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 16:37:00,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:37:00,546.546 INFO    ] Checking for system updates...
[2026-10-25 16:37:00,584.584 INFO    ] 200
[2026-10-25 16:37:00,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:00,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:00,649.649 INFO    ] No update needed
[2026-10-25 16:37:00,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 16:37:00,689.689 INFO    ] 200
[2026-10-25 16:37:00,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:00,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:37:00,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:00,790.790 INFO    ] No camera update needed
[2026-10-25 16:37:00,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:37:00,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:37:00,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:37:00,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:37:02,860.860 INFO    ] ================================================
[2026-10-25 16:37:02,885.885 INFO    ] Launching Daemon at Sun Oct 25 16:37:02 IST 2026
[2026-10-25 16:37:02,929.929 INFO    ] ================================================
[2026-10-25 16:37:03,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:37:03
[2026-10-25 16:37:04,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:37:04,475.475 INFO    ] Initializing speech engine...
[2026-10-25 16:37:04,484.484 INFO    ] 2026-10-25 16:37:04
[2026-10-25 16:37:04,792.792 INFO    ] 2026-10-25 16:37:04
[2026-10-25 16:37:04,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:37:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:37:05,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:37:05,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:37:05,191.191 INFO    ] time= 25/10/2026 16:37:05
[2026-10-25 16:37:05,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:37:05,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:37:05,321.321 INFO    ] No existing commands found in stream
[2026-10-25 16:37:10,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:37:10,336.336 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 16:37:11,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:37:11,493.493 INFO    ] Checking for system updates...
[2026-10-25 16:37:11,531.531 INFO    ] 200
[2026-10-25 16:37:11,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:11,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:11,593.593 INFO    ] No update needed
[2026-10-25 16:37:11,596.596 INFO    ] Checking for camera pi updates...
[2026-10-25 16:37:11,631.631 INFO    ] 200
[2026-10-25 16:37:11,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:11,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:37:11,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:11,732.732 INFO    ] No camera update needed
[2026-10-25 16:37:11,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:37:11,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:37:11,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:37:11,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:37:13,791.791 INFO    ] ================================================
[2026-10-25 16:37:13,807.807 INFO    ] Launching Daemon at Sun Oct 25 16:37:13 IST 2026
[2026-10-25 16:37:13,818.818 INFO    ] ================================================
[2026-10-25 16:37:14,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:37:14
[2026-10-25 16:37:15,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:37:15,525.525 INFO    ] Initializing speech engine...
[2026-10-25 16:37:15,538.538 INFO    ] 2026-10-25 16:37:15
[2026-10-25 16:37:15,858.858 INFO    ] 2026-10-25 16:37:15
[2026-10-25 16:37:15,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:37:16,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:37:16,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:37:16,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:37:16,375.375 INFO    ] time= 25/10/2026 16:37:16
[2026-10-25 16:37:16,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:37:16,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:37:16,528.528 INFO    ] No existing commands found in stream
[2026-10-25 16:37:21,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:37:21,563.563 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 16:37:23,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:37:23,423.423 INFO    ] Checking for system updates...
[2026-10-25 16:37:23,463.463 INFO    ] 200
[2026-10-25 16:37:23,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:23,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:23,528.528 INFO    ] No update needed
[2026-10-25 16:37:23,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 16:37:23,568.568 INFO    ] 200
[2026-10-25 16:37:23,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:23,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:37:23,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:23,690.690 INFO    ] No camera update needed
[2026-10-25 16:37:23,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:37:23,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:37:23,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:37:23,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:37:25,754.754 INFO    ] ================================================
[2026-10-25 16:37:25,771.771 INFO    ] Launching Daemon at Sun Oct 25 16:37:25 IST 2026
[2026-10-25 16:37:25,782.782 INFO    ] ================================================
[2026-10-25 16:37:26,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:37:26
[2026-10-25 16:37:26,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:37:27,242.242 INFO    ] Initializing speech engine...
[2026-10-25 16:37:27,251.251 INFO    ] 2026-10-25 16:37:27
[2026-10-25 16:37:27,553.553 INFO    ] 2026-10-25 16:37:27
[2026-10-25 16:37:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:37:27,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:37:27,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:37:27,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:37:27,988.988 INFO    ] time= 25/10/2026 16:37:27
[2026-10-25 16:37:27,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:37:28,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:37:28,083.083 INFO    ] No existing commands found in stream
[2026-10-25 16:37:33,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:37:33,111.111 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 16:37:34,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:37:34,875.875 INFO    ] Checking for system updates...
[2026-10-25 16:37:34,917.917 INFO    ] 200
[2026-10-25 16:37:34,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:34,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:37:34,986.986 INFO    ] No update needed
[2026-10-25 16:37:34,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 16:37:35,024.024 INFO    ] 200
[2026-10-25 16:37:35,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:35,069.069 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:37:35,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:37:35,118.118 INFO    ] No camera update needed
[2026-10-25 16:37:35,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:37:35,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:37:35,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:37:35,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:37:37,177.177 INFO    ] ================================================
[2026-10-25 16:37:37,193.193 INFO    ] Launching Daemon at Sun Oct 25 16:37:37 IST 2026
[2026-10-25 16:37:37,204.204 INFO    ] ================================================
[2026-10-25 16:37:37,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:37:37
[2026-10-25 16:37:38,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:37:38,901.901 INFO    ] Initializing speech engine...
[2026-10-25 16:37:38,908.908 INFO    ] 2026-10-25 16:37:38
[2026-10-25 16:37:39,202.202 INFO    ] 2026-10-25 16:37:39
[2026-10-25 16:37:39,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:37:39,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:37:39,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:37:39,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:37:39,671.671 INFO    ] time= 25/10/2026 16:37:39
[2026-10-25 16:37:39,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:37:39,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:37:39,869.869 INFO    ] No existing commands found in stream
[2026-10-25 16:37:44,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:37:44,911.911 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 16:37:47,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:37:47,487.487 INFO    ] Checking for system updates...
[2026-10-25 16:37:47,531.531 INFO    ] 200
[2026-10-25 16:37:47,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:47,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:47,600.600 INFO    ] No update needed
[2026-10-25 16:37:47,604.604 INFO    ] Checking for camera pi updates...
[2026-10-25 16:37:47,642.642 INFO    ] 200
[2026-10-25 16:37:47,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:37:47,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:37:47,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:37:47,750.750 INFO    ] No camera update needed
[2026-10-25 16:37:47,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:37:47,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:37:47,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:37:47,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:37:49,813.813 INFO    ] ================================================
[2026-10-25 16:37:49,829.829 INFO    ] Launching Daemon at Sun Oct 25 16:37:49 IST 2026
[2026-10-25 16:37:49,840.840 INFO    ] ================================================
[2026-10-25 16:37:50,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:37:50
[2026-10-25 16:37:51,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:37:51,548.548 INFO    ] Initializing speech engine...
[2026-10-25 16:37:51,563.563 INFO    ] 2026-10-25 16:37:51
[2026-10-25 16:37:51,852.852 INFO    ] 2026-10-25 16:37:51
[2026-10-25 16:37:51,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:37:53,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:37:53,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:37:54,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:37:54,201.201 INFO    ] time= 25/10/2026 16:37:54
[2026-10-25 16:37:54,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:37:54,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:37:54,322.322 INFO    ] No existing commands found in stream
[2026-10-25 16:37:59,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:37:59,362.362 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 16:38:00,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:38:00,608.608 INFO    ] Checking for system updates...
[2026-10-25 16:38:00,647.647 INFO    ] 200
[2026-10-25 16:38:00,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:00,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:00,712.712 INFO    ] No update needed
[2026-10-25 16:38:00,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 16:38:00,752.752 INFO    ] 200
[2026-10-25 16:38:00,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:00,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:38:00,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:00,858.858 INFO    ] No camera update needed
[2026-10-25 16:38:00,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:38:00,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:38:00,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:38:00,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:38:02,933.933 INFO    ] ================================================
[2026-10-25 16:38:02,953.953 INFO    ] Launching Daemon at Sun Oct 25 16:38:02 IST 2026
[2026-10-25 16:38:02,964.964 INFO    ] ================================================
[2026-10-25 16:38:03,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:38:03
[2026-10-25 16:38:04,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:38:04,464.464 INFO    ] Initializing speech engine...
[2026-10-25 16:38:04,473.473 INFO    ] 2026-10-25 16:38:04
[2026-10-25 16:38:04,733.733 INFO    ] 2026-10-25 16:38:04
[2026-10-25 16:38:04,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:38:05,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:38:05,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:38:05,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:38:05,211.211 INFO    ] time= 25/10/2026 16:38:05
[2026-10-25 16:38:05,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:38:05,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:38:05,405.405 INFO    ] No existing commands found in stream
[2026-10-25 16:38:10,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:38:10,434.434 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 16:38:14,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:38:14,846.846 INFO    ] Checking for system updates...
[2026-10-25 16:38:14,884.884 INFO    ] 200
[2026-10-25 16:38:14,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:14,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:14,953.953 INFO    ] No update needed
[2026-10-25 16:38:14,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 16:38:14,995.995 INFO    ] 200
[2026-10-25 16:38:14,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:15,040.040 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:38:15,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:15,198.198 INFO    ] No camera update needed
[2026-10-25 16:38:15,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:38:15,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:38:15,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:38:15,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:38:17,258.258 INFO    ] ================================================
[2026-10-25 16:38:17,274.274 INFO    ] Launching Daemon at Sun Oct 25 16:38:17 IST 2026
[2026-10-25 16:38:17,286.286 INFO    ] ================================================
[2026-10-25 16:38:17,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:38:17
[2026-10-25 16:38:18,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:38:18,983.983 INFO    ] Initializing speech engine...
[2026-10-25 16:38:18,994.994 INFO    ] 2026-10-25 16:38:18
[2026-10-25 16:38:19,283.283 INFO    ] 2026-10-25 16:38:19
[2026-10-25 16:38:19,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:38:19,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:38:19,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:38:19,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:38:19,817.817 INFO    ] time= 25/10/2026 16:38:19
[2026-10-25 16:38:19,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:38:19,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:38:19,977.977 INFO    ] No existing commands found in stream
[2026-10-25 16:38:25,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:38:25,010.010 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 16:38:28,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:38:28,391.391 INFO    ] Checking for system updates...
[2026-10-25 16:38:28,430.430 INFO    ] 200
[2026-10-25 16:38:28,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:28,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:28,494.494 INFO    ] No update needed
[2026-10-25 16:38:28,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 16:38:28,535.535 INFO    ] 200
[2026-10-25 16:38:28,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:28,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:38:28,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:38:28,639.639 INFO    ] No camera update needed
[2026-10-25 16:38:28,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:38:28,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:38:28,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:38:28,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:38:30,701.701 INFO    ] ================================================
[2026-10-25 16:38:30,716.716 INFO    ] Launching Daemon at Sun Oct 25 16:38:30 IST 2026
[2026-10-25 16:38:30,727.727 INFO    ] ================================================
[2026-10-25 16:38:31,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:38:31
[2026-10-25 16:38:31,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:38:32,277.277 INFO    ] Initializing speech engine...
[2026-10-25 16:38:32,283.283 INFO    ] 2026-10-25 16:38:32
[2026-10-25 16:38:32,569.569 INFO    ] 2026-10-25 16:38:32
[2026-10-25 16:38:32,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:38:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:38:32,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:38:32,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:38:33,003.003 INFO    ] time= 25/10/2026 16:38:32
[2026-10-25 16:38:33,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:38:33,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:38:33,128.128 INFO    ] No existing commands found in stream
[2026-10-25 16:38:38,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:38:38,152.152 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 16:38:38,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:38:38,876.876 INFO    ] Checking for system updates...
[2026-10-25 16:38:38,915.915 INFO    ] 200
[2026-10-25 16:38:38,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:38,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:38:38,979.979 INFO    ] No update needed
[2026-10-25 16:38:38,982.982 INFO    ] Checking for camera pi updates...
[2026-10-25 16:38:39,023.023 INFO    ] 200
[2026-10-25 16:38:39,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:39,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:38:39,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:38:39,111.111 INFO    ] No camera update needed
[2026-10-25 16:38:39,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:38:39,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:38:39,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:38:39,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:38:41,174.174 INFO    ] ================================================
[2026-10-25 16:38:41,190.190 INFO    ] Launching Daemon at Sun Oct 25 16:38:41 IST 2026
[2026-10-25 16:38:41,201.201 INFO    ] ================================================
[2026-10-25 16:38:41,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:38:41
[2026-10-25 16:38:42,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:38:42,882.882 INFO    ] Initializing speech engine...
[2026-10-25 16:38:42,890.890 INFO    ] 2026-10-25 16:38:42
[2026-10-25 16:38:43,169.169 INFO    ] 2026-10-25 16:38:43
[2026-10-25 16:38:43,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:38:43,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:38:43,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:38:43,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:38:43,726.726 INFO    ] time= 25/10/2026 16:38:43
[2026-10-25 16:38:43,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:38:43,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:38:43,880.880 INFO    ] No existing commands found in stream
[2026-10-25 16:38:48,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:38:48,901.901 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 16:38:50,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:38:50,877.877 INFO    ] Checking for system updates...
[2026-10-25 16:38:50,917.917 INFO    ] 200
[2026-10-25 16:38:50,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:50,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:38:50,988.988 INFO    ] No update needed
[2026-10-25 16:38:50,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 16:38:51,035.035 INFO    ] 200
[2026-10-25 16:38:51,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:38:51,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:38:51,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:38:51,133.133 INFO    ] No camera update needed
[2026-10-25 16:38:51,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:38:51,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:38:51,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:38:51,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:38:53,195.195 INFO    ] ================================================
[2026-10-25 16:38:53,210.210 INFO    ] Launching Daemon at Sun Oct 25 16:38:53 IST 2026
[2026-10-25 16:38:53,222.222 INFO    ] ================================================
[2026-10-25 16:38:53,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:38:53
[2026-10-25 16:38:54,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:38:54,891.891 INFO    ] Initializing speech engine...
[2026-10-25 16:38:54,899.899 INFO    ] 2026-10-25 16:38:54
[2026-10-25 16:38:55,225.225 INFO    ] 2026-10-25 16:38:55
[2026-10-25 16:38:55,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:38:55,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:38:55,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:38:56,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:38:56,151.151 INFO    ] time= 25/10/2026 16:38:56
[2026-10-25 16:38:56,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:38:56,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:38:56,304.304 INFO    ] No existing commands found in stream
[2026-10-25 16:39:01,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:39:01,332.332 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 16:39:02,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:39:02,046.046 INFO    ] Checking for system updates...
[2026-10-25 16:39:02,090.090 INFO    ] 200
[2026-10-25 16:39:02,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:02,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:39:02,159.159 INFO    ] No update needed
[2026-10-25 16:39:02,163.163 INFO    ] Checking for camera pi updates...
[2026-10-25 16:39:02,206.206 INFO    ] 200
[2026-10-25 16:39:02,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:02,268.268 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:39:02,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:39:02,309.309 INFO    ] No camera update needed
[2026-10-25 16:39:02,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:39:02,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:02,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:02,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:04,375.375 INFO    ] ================================================
[2026-10-25 16:39:04,390.390 INFO    ] Launching Daemon at Sun Oct 25 16:39:04 IST 2026
[2026-10-25 16:39:04,402.402 INFO    ] ================================================
[2026-10-25 16:39:04,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:04
[2026-10-25 16:39:05,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:05,852.852 INFO    ] Initializing speech engine...
[2026-10-25 16:39:05,874.874 INFO    ] 2026-10-25 16:39:05
[2026-10-25 16:39:06,138.138 INFO    ] 2026-10-25 16:39:06
[2026-10-25 16:39:06,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:39:06,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:39:06,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:39:06,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:39:06,526.526 INFO    ] time= 25/10/2026 16:39:06
[2026-10-25 16:39:06,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:39:06,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:39:06,678.678 INFO    ] No existing commands found in stream
[2026-10-25 16:39:11,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:39:11,706.706 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 16:39:12,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:39:12,766.766 INFO    ] Checking for system updates...
[2026-10-25 16:39:12,804.804 INFO    ] 200
[2026-10-25 16:39:12,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:12,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:39:12,865.865 INFO    ] No update needed
[2026-10-25 16:39:12,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 16:39:12,903.903 INFO    ] 200
[2026-10-25 16:39:12,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:12,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:39:12,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:39:12,999.999 INFO    ] No camera update needed
[2026-10-25 16:39:13,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:39:13,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:13,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:13,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:15,058.058 INFO    ] ================================================
[2026-10-25 16:39:15,073.073 INFO    ] Launching Daemon at Sun Oct 25 16:39:15 IST 2026
[2026-10-25 16:39:15,084.084 INFO    ] ================================================
[2026-10-25 16:39:15,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:15
[2026-10-25 16:39:16,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:16,632.632 INFO    ] Initializing speech engine...
[2026-10-25 16:39:16,639.639 INFO    ] 2026-10-25 16:39:16
[2026-10-25 16:39:16,898.898 INFO    ] 2026-10-25 16:39:16
[2026-10-25 16:39:16,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:39:17,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:39:17,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:39:17,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:39:17,387.387 INFO    ] time= 25/10/2026 16:39:17
[2026-10-25 16:39:17,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:39:17,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:39:17,610.610 INFO    ] No existing commands found in stream
[2026-10-25 16:39:22,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:39:22,638.638 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 16:39:26,161.161 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 16:39:26,185.185 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd0770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-10-25 16:39:26,194.194 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73dd0770>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-10-25 16:39:26,202.202 INFO    ] None
[2026-10-25 16:39:26,205.205 INFO    ] Checking for system updates...
[2026-10-25 16:39:26,246.246 INFO    ] 200
[2026-10-25 16:39:26,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:26,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:39:26,305.305 INFO    ] No update needed
[2026-10-25 16:39:26,308.308 INFO    ] Checking for camera pi updates...
[2026-10-25 16:39:26,342.342 INFO    ] 200
[2026-10-25 16:39:26,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:39:26,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:39:36,402.402 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202502.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73d80450>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-25 16:39:36,424.424 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-25 16:39:36,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:39:36,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:36,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:36,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:38,488.488 INFO    ] ================================================
[2026-10-25 16:39:38,504.504 INFO    ] Launching Daemon at Sun Oct 25 16:39:38 IST 2026
[2026-10-25 16:39:38,515.515 INFO    ] ================================================
[2026-10-25 16:39:39,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:39
[2026-10-25 16:39:39,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:39,965.965 INFO    ] Initializing speech engine...
[2026-10-25 16:39:39,990.990 INFO    ] 2026-10-25 16:39:39
[2026-10-25 16:39:40,271.271 INFO    ] 2026-10-25 16:39:40
[2026-10-25 16:39:40,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:39:45,371.371 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 16:39:45,398.398 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 16:39:45,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:45,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:45,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:47,451.451 INFO    ] ================================================
[2026-10-25 16:39:47,466.466 INFO    ] Launching Daemon at Sun Oct 25 16:39:47 IST 2026
[2026-10-25 16:39:47,477.477 INFO    ] ================================================
[2026-10-25 16:39:48,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:48
[2026-10-25 16:39:48,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:49,135.135 INFO    ] Initializing speech engine...
[2026-10-25 16:39:49,144.144 INFO    ] 2026-10-25 16:39:49
[2026-10-25 16:39:49,447.447 INFO    ] 2026-10-25 16:39:49
[2026-10-25 16:39:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:39:49,600.600 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 16:39:49,742.742 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 16:39:49,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:49,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:49,803.803 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 16:39:49,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:51,950.950 INFO    ] ================================================
[2026-10-25 16:39:51,965.965 INFO    ] Launching Daemon at Sun Oct 25 16:39:51 IST 2026
[2026-10-25 16:39:51,977.977 INFO    ] ================================================
[2026-10-25 16:39:52,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:52
[2026-10-25 16:39:53,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:53,637.637 INFO    ] Initializing speech engine...
[2026-10-25 16:39:53,651.651 INFO    ] 2026-10-25 16:39:53
[2026-10-25 16:39:53,967.967 INFO    ] 2026-10-25 16:39:53
[2026-10-25 16:39:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:39:54,115.115 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 16:39:54,260.260 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 16:39:54,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:39:54,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:39:54,328.328 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 16:39:54,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:39:56,500.500 INFO    ] ================================================
[2026-10-25 16:39:56,515.515 INFO    ] Launching Daemon at Sun Oct 25 16:39:56 IST 2026
[2026-10-25 16:39:56,526.526 INFO    ] ================================================
[2026-10-25 16:39:57,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:39:57
[2026-10-25 16:39:57,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:39:58,176.176 INFO    ] Initializing speech engine...
[2026-10-25 16:39:58,184.184 INFO    ] 2026-10-25 16:39:58
[2026-10-25 16:39:58,455.455 INFO    ] 2026-10-25 16:39:58
[2026-10-25 16:39:58,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:40:03,573.573 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 16:40:03,600.600 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 16:40:03,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:40:03,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:40:03,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:40:05,654.654 INFO    ] ================================================
[2026-10-25 16:40:05,671.671 INFO    ] Launching Daemon at Sun Oct 25 16:40:05 IST 2026
[2026-10-25 16:40:05,683.683 INFO    ] ================================================
[2026-10-25 16:40:06,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:40:06
[2026-10-25 16:40:06,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:40:07,152.152 INFO    ] Initializing speech engine...
[2026-10-25 16:40:07,157.157 INFO    ] 2026-10-25 16:40:07
[2026-10-25 16:40:07,459.459 INFO    ] 2026-10-25 16:40:07
[2026-10-25 16:40:07,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:40:07,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:40:07,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:40:07,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:40:07,846.846 INFO    ] time= 25/10/2026 16:40:07
[2026-10-25 16:40:07,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:40:07,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:40:07,971.971 INFO    ] No existing commands found in stream
[2026-10-25 16:40:12,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:40:12,987.987 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 16:40:20,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:40:20,013.013 INFO    ] Checking for system updates...
[2026-10-25 16:40:20,051.051 INFO    ] 200
[2026-10-25 16:40:20,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:20,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:40:20,111.111 INFO    ] No update needed
[2026-10-25 16:40:20,113.113 INFO    ] Checking for camera pi updates...
[2026-10-25 16:40:20,160.160 INFO    ] 200
[2026-10-25 16:40:20,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:20,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:40:20,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:40:20,291.291 INFO    ] No camera update needed
[2026-10-25 16:40:20,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:40:20,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:40:20,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:40:20,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:40:22,347.347 INFO    ] ================================================
[2026-10-25 16:40:22,362.362 INFO    ] Launching Daemon at Sun Oct 25 16:40:22 IST 2026
[2026-10-25 16:40:22,373.373 INFO    ] ================================================
[2026-10-25 16:40:22,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:40:22
[2026-10-25 16:40:23,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:40:23,880.880 INFO    ] Initializing speech engine...
[2026-10-25 16:40:23,890.890 INFO    ] 2026-10-25 16:40:23
[2026-10-25 16:40:24,164.164 INFO    ] 2026-10-25 16:40:24
[2026-10-25 16:40:24,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:40:24,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:40:24,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:40:24,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:40:24,731.731 INFO    ] time= 25/10/2026 16:40:24
[2026-10-25 16:40:24,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:40:24,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:40:24,883.883 INFO    ] No existing commands found in stream
[2026-10-25 16:40:29,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:40:29,904.904 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 16:40:31,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:40:31,858.858 INFO    ] Checking for system updates...
[2026-10-25 16:40:31,905.905 INFO    ] 200
[2026-10-25 16:40:31,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:31,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:40:31,972.972 INFO    ] No update needed
[2026-10-25 16:40:31,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 16:40:32,011.011 INFO    ] 200
[2026-10-25 16:40:32,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:32,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:40:32,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:40:32,137.137 INFO    ] No camera update needed
[2026-10-25 16:40:32,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:40:32,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:40:32,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:40:32,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:40:34,202.202 INFO    ] ================================================
[2026-10-25 16:40:34,217.217 INFO    ] Launching Daemon at Sun Oct 25 16:40:34 IST 2026
[2026-10-25 16:40:34,228.228 INFO    ] ================================================
[2026-10-25 16:40:34,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:40:34
[2026-10-25 16:40:35,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:40:35,846.846 INFO    ] Initializing speech engine...
[2026-10-25 16:40:35,856.856 INFO    ] 2026-10-25 16:40:35
[2026-10-25 16:40:36,145.145 INFO    ] 2026-10-25 16:40:36
[2026-10-25 16:40:36,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:40:36,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:40:36,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:40:36,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:40:36,537.537 INFO    ] time= 25/10/2026 16:40:36
[2026-10-25 16:40:36,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:40:36,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:40:36,701.701 INFO    ] No existing commands found in stream
[2026-10-25 16:40:41,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:40:41,725.725 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 16:40:45,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:40:45,479.479 INFO    ] Checking for system updates...
[2026-10-25 16:40:45,517.517 INFO    ] 200
[2026-10-25 16:40:45,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:45,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:40:45,578.578 INFO    ] No update needed
[2026-10-25 16:40:45,581.581 INFO    ] Checking for camera pi updates...
[2026-10-25 16:40:45,619.619 INFO    ] 200
[2026-10-25 16:40:45,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:45,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:40:45,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:40:45,728.728 INFO    ] No camera update needed
[2026-10-25 16:40:45,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:40:45,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:40:45,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:40:45,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:40:47,784.784 INFO    ] ================================================
[2026-10-25 16:40:47,799.799 INFO    ] Launching Daemon at Sun Oct 25 16:40:47 IST 2026
[2026-10-25 16:40:47,810.810 INFO    ] ================================================
[2026-10-25 16:40:48,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:40:48
[2026-10-25 16:40:49,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:40:49,420.420 INFO    ] Initializing speech engine...
[2026-10-25 16:40:49,429.429 INFO    ] 2026-10-25 16:40:49
[2026-10-25 16:40:49,699.699 INFO    ] 2026-10-25 16:40:49
[2026-10-25 16:40:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:40:51,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:40:51,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:40:51,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:40:51,577.577 INFO    ] time= 25/10/2026 16:40:51
[2026-10-25 16:40:51,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:40:51,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:40:51,649.649 INFO    ] No existing commands found in stream
[2026-10-25 16:40:56,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:40:56,664.664 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 16:40:57,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:40:57,306.306 INFO    ] Checking for system updates...
[2026-10-25 16:40:57,343.343 INFO    ] 200
[2026-10-25 16:40:57,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:57,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:40:57,402.402 INFO    ] No update needed
[2026-10-25 16:40:57,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 16:40:57,439.439 INFO    ] 200
[2026-10-25 16:40:57,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:40:57,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:40:57,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:40:57,528.528 INFO    ] No camera update needed
[2026-10-25 16:40:57,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:40:57,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:40:57,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:40:57,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:40:59,584.584 INFO    ] ================================================
[2026-10-25 16:40:59,599.599 INFO    ] Launching Daemon at Sun Oct 25 16:40:59 IST 2026
[2026-10-25 16:40:59,610.610 INFO    ] ================================================
[2026-10-25 16:41:00,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:41:00
[2026-10-25 16:41:00,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:41:01,225.225 INFO    ] Initializing speech engine...
[2026-10-25 16:41:01,239.239 INFO    ] 2026-10-25 16:41:01
[2026-10-25 16:41:01,514.514 INFO    ] 2026-10-25 16:41:01
[2026-10-25 16:41:01,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:41:01,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:41:01,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:41:01,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:41:02,001.001 INFO    ] time= 25/10/2026 16:41:01
[2026-10-25 16:41:02,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:41:02,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:41:02,071.071 INFO    ] No existing commands found in stream
[2026-10-25 16:41:07,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:41:07,085.085 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 16:41:11,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:41:11,096.096 INFO    ] Checking for system updates...
[2026-10-25 16:41:11,132.132 INFO    ] 200
[2026-10-25 16:41:11,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:11,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:41:11,191.191 INFO    ] No update needed
[2026-10-25 16:41:11,193.193 INFO    ] Checking for camera pi updates...
[2026-10-25 16:41:11,227.227 INFO    ] 200
[2026-10-25 16:41:11,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:11,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:41:11,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:41:11,329.329 INFO    ] No camera update needed
[2026-10-25 16:41:11,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:41:11,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:41:11,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:41:11,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:41:13,385.385 INFO    ] ================================================
[2026-10-25 16:41:13,400.400 INFO    ] Launching Daemon at Sun Oct 25 16:41:13 IST 2026
[2026-10-25 16:41:13,411.411 INFO    ] ================================================
[2026-10-25 16:41:14,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:41:14
[2026-10-25 16:41:14,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:41:14,876.876 INFO    ] Initializing speech engine...
[2026-10-25 16:41:14,890.890 INFO    ] 2026-10-25 16:41:14
[2026-10-25 16:41:15,153.153 INFO    ] 2026-10-25 16:41:15
[2026-10-25 16:41:15,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:41:15,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:41:15,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:41:15,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:41:15,558.558 INFO    ] time= 25/10/2026 16:41:15
[2026-10-25 16:41:15,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:41:15,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:41:15,645.645 INFO    ] No existing commands found in stream
[2026-10-25 16:41:20,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:41:20,660.660 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 16:41:23,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:41:23,432.432 INFO    ] Checking for system updates...
[2026-10-25 16:41:23,471.471 INFO    ] 200
[2026-10-25 16:41:23,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:23,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:41:23,529.529 INFO    ] No update needed
[2026-10-25 16:41:23,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 16:41:23,566.566 INFO    ] 200
[2026-10-25 16:41:23,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:23,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:41:23,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:41:23,675.675 INFO    ] No camera update needed
[2026-10-25 16:41:23,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:41:23,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:41:23,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:41:23,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:41:25,731.731 INFO    ] ================================================
[2026-10-25 16:41:25,746.746 INFO    ] Launching Daemon at Sun Oct 25 16:41:25 IST 2026
[2026-10-25 16:41:25,758.758 INFO    ] ================================================
[2026-10-25 16:41:26,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:41:26
[2026-10-25 16:41:26,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:41:27,162.162 INFO    ] Initializing speech engine...
[2026-10-25 16:41:27,176.176 INFO    ] 2026-10-25 16:41:27
[2026-10-25 16:41:27,449.449 INFO    ] 2026-10-25 16:41:27
[2026-10-25 16:41:27,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:41:27,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:41:27,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:41:27,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:41:27,901.901 INFO    ] time= 25/10/2026 16:41:27
[2026-10-25 16:41:27,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:41:28,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:41:28,060.060 INFO    ] No existing commands found in stream
[2026-10-25 16:41:33,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:41:33,075.075 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 16:41:34,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:41:34,209.209 INFO    ] Checking for system updates...
[2026-10-25 16:41:34,245.245 INFO    ] 200
[2026-10-25 16:41:34,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:34,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:41:34,304.304 INFO    ] No update needed
[2026-10-25 16:41:34,307.307 INFO    ] Checking for camera pi updates...
[2026-10-25 16:41:34,344.344 INFO    ] 200
[2026-10-25 16:41:34,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:34,387.387 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:41:34,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:41:34,428.428 INFO    ] No camera update needed
[2026-10-25 16:41:34,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:41:34,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:41:34,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:41:34,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:41:36,484.484 INFO    ] ================================================
[2026-10-25 16:41:36,500.500 INFO    ] Launching Daemon at Sun Oct 25 16:41:36 IST 2026
[2026-10-25 16:41:36,510.510 INFO    ] ================================================
[2026-10-25 16:41:37,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:41:37
[2026-10-25 16:41:37,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:41:37,915.915 INFO    ] Initializing speech engine...
[2026-10-25 16:41:37,924.924 INFO    ] 2026-10-25 16:41:37
[2026-10-25 16:41:38,208.208 INFO    ] 2026-10-25 16:41:38
[2026-10-25 16:41:38,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:41:38,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:41:38,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:41:38,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:41:38,625.625 INFO    ] time= 25/10/2026 16:41:38
[2026-10-25 16:41:38,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:41:38,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:41:38,804.804 INFO    ] No existing commands found in stream
[2026-10-25 16:41:43,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:41:43,837.837 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 16:41:48,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:41:48,024.024 INFO    ] Checking for system updates...
[2026-10-25 16:41:48,060.060 INFO    ] 200
[2026-10-25 16:41:48,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:48,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:41:48,118.118 INFO    ] No update needed
[2026-10-25 16:41:48,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 16:41:48,157.157 INFO    ] 200
[2026-10-25 16:41:48,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:41:48,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:41:48,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:41:48,271.271 INFO    ] No camera update needed
[2026-10-25 16:41:48,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:41:48,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:41:48,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:41:48,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:41:50,325.325 INFO    ] ================================================
[2026-10-25 16:41:50,340.340 INFO    ] Launching Daemon at Sun Oct 25 16:41:50 IST 2026
[2026-10-25 16:41:50,351.351 INFO    ] ================================================
[2026-10-25 16:41:50,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:41:50
[2026-10-25 16:41:51,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:41:51,797.797 INFO    ] Initializing speech engine...
[2026-10-25 16:41:51,806.806 INFO    ] 2026-10-25 16:41:51
[2026-10-25 16:41:52,065.065 INFO    ] 2026-10-25 16:41:52
[2026-10-25 16:41:52,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:41:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:41:53,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:41:53,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:41:53,983.983 INFO    ] time= 25/10/2026 16:41:53
[2026-10-25 16:41:53,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:41:53,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:41:54,053.053 INFO    ] No existing commands found in stream
[2026-10-25 16:41:59,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:41:59,066.066 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 16:42:00,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:42:00,204.204 INFO    ] Checking for system updates...
[2026-10-25 16:42:00,240.240 INFO    ] 200
[2026-10-25 16:42:00,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:00,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:42:00,297.297 INFO    ] No update needed
[2026-10-25 16:42:00,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 16:42:00,333.333 INFO    ] 200
[2026-10-25 16:42:00,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:00,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:42:00,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:42:00,440.440 INFO    ] No camera update needed
[2026-10-25 16:42:00,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:42:00,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:42:00,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:42:00,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:42:02,499.499 INFO    ] ================================================
[2026-10-25 16:42:02,523.523 INFO    ] Launching Daemon at Sun Oct 25 16:42:02 IST 2026
[2026-10-25 16:42:02,536.536 INFO    ] ================================================
[2026-10-25 16:42:03,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:42:03
[2026-10-25 16:42:03,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:42:04,195.195 INFO    ] Initializing speech engine...
[2026-10-25 16:42:04,204.204 INFO    ] 2026-10-25 16:42:04
[2026-10-25 16:42:04,489.489 INFO    ] 2026-10-25 16:42:04
[2026-10-25 16:42:04,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:42:04,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:42:04,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:42:04,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:42:05,055.055 INFO    ] time= 25/10/2026 16:42:05
[2026-10-25 16:42:05,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:42:05,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:42:05,209.209 INFO    ] No existing commands found in stream
[2026-10-25 16:42:10,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:42:10,239.239 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 16:42:12,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:42:12,197.197 INFO    ] Checking for system updates...
[2026-10-25 16:42:12,234.234 INFO    ] 200
[2026-10-25 16:42:12,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:12,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:12,292.292 INFO    ] No update needed
[2026-10-25 16:42:12,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 16:42:12,329.329 INFO    ] 200
[2026-10-25 16:42:12,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:12,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:42:12,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:12,438.438 INFO    ] No camera update needed
[2026-10-25 16:42:12,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:42:12,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:42:12,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:42:12,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:42:14,493.493 INFO    ] ================================================
[2026-10-25 16:42:14,509.509 INFO    ] Launching Daemon at Sun Oct 25 16:42:14 IST 2026
[2026-10-25 16:42:14,520.520 INFO    ] ================================================
[2026-10-25 16:42:15,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:42:15
[2026-10-25 16:42:15,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:42:15,977.977 INFO    ] Initializing speech engine...
[2026-10-25 16:42:15,987.987 INFO    ] 2026-10-25 16:42:15
[2026-10-25 16:42:16,246.246 INFO    ] 2026-10-25 16:42:16
[2026-10-25 16:42:16,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:42:16,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:42:16,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:42:16,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:42:16,619.619 INFO    ] time= 25/10/2026 16:42:16
[2026-10-25 16:42:16,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:42:16,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:42:16,799.799 INFO    ] No existing commands found in stream
[2026-10-25 16:42:21,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:42:21,827.827 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 16:42:25,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:42:25,695.695 INFO    ] Checking for system updates...
[2026-10-25 16:42:25,735.735 INFO    ] 200
[2026-10-25 16:42:25,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:25,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:25,793.793 INFO    ] No update needed
[2026-10-25 16:42:25,796.796 INFO    ] Checking for camera pi updates...
[2026-10-25 16:42:25,830.830 INFO    ] 200
[2026-10-25 16:42:25,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:25,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:42:26,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:26,039.039 INFO    ] No camera update needed
[2026-10-25 16:42:26,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:42:26,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:42:26,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:42:26,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:42:28,094.094 INFO    ] ================================================
[2026-10-25 16:42:28,109.109 INFO    ] Launching Daemon at Sun Oct 25 16:42:28 IST 2026
[2026-10-25 16:42:28,120.120 INFO    ] ================================================
[2026-10-25 16:42:28,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:42:28
[2026-10-25 16:42:29,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:42:29,604.604 INFO    ] Initializing speech engine...
[2026-10-25 16:42:29,613.613 INFO    ] 2026-10-25 16:42:29
[2026-10-25 16:42:29,861.861 INFO    ] 2026-10-25 16:42:29
[2026-10-25 16:42:29,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:42:30,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:42:30,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:42:30,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:42:30,458.458 INFO    ] time= 25/10/2026 16:42:30
[2026-10-25 16:42:30,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:42:30,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:42:30,570.570 INFO    ] No existing commands found in stream
[2026-10-25 16:42:35,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:42:35,593.593 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 16:42:38,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:42:38,780.780 INFO    ] Checking for system updates...
[2026-10-25 16:42:38,816.816 INFO    ] 200
[2026-10-25 16:42:38,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:38,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:38,874.874 INFO    ] No update needed
[2026-10-25 16:42:38,876.876 INFO    ] Checking for camera pi updates...
[2026-10-25 16:42:38,911.911 INFO    ] 200
[2026-10-25 16:42:38,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:38,955.955 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:42:38,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:38,988.988 INFO    ] No camera update needed
[2026-10-25 16:42:38,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:42:38,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:42:38,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:42:39,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:42:41,044.044 INFO    ] ================================================
[2026-10-25 16:42:41,060.060 INFO    ] Launching Daemon at Sun Oct 25 16:42:41 IST 2026
[2026-10-25 16:42:41,071.071 INFO    ] ================================================
[2026-10-25 16:42:41,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:42:41
[2026-10-25 16:42:42,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:42:42,467.467 INFO    ] Initializing speech engine...
[2026-10-25 16:42:42,475.475 INFO    ] 2026-10-25 16:42:42
[2026-10-25 16:42:42,747.747 INFO    ] 2026-10-25 16:42:42
[2026-10-25 16:42:42,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:42:42,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:42:42,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:42:43,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:42:43,124.124 INFO    ] time= 25/10/2026 16:42:43
[2026-10-25 16:42:43,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:42:43,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:42:43,289.289 INFO    ] No existing commands found in stream
[2026-10-25 16:42:48,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:42:48,312.312 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 16:42:51,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:42:51,221.221 INFO    ] Checking for system updates...
[2026-10-25 16:42:51,261.261 INFO    ] 200
[2026-10-25 16:42:51,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:51,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:51,319.319 INFO    ] No update needed
[2026-10-25 16:42:51,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 16:42:51,355.355 INFO    ] 200
[2026-10-25 16:42:51,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:42:51,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:42:51,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:42:51,454.454 INFO    ] No camera update needed
[2026-10-25 16:42:51,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:42:51,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:42:51,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:42:51,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:42:53,510.510 INFO    ] ================================================
[2026-10-25 16:42:53,526.526 INFO    ] Launching Daemon at Sun Oct 25 16:42:53 IST 2026
[2026-10-25 16:42:53,582.582 INFO    ] ================================================
[2026-10-25 16:42:54,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:42:54
[2026-10-25 16:42:54,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:42:55,227.227 INFO    ] Initializing speech engine...
[2026-10-25 16:42:55,240.240 INFO    ] 2026-10-25 16:42:55
[2026-10-25 16:42:55,572.572 INFO    ] 2026-10-25 16:42:55
[2026-10-25 16:42:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:42:56,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:42:56,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:42:56,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:42:56,313.313 INFO    ] time= 25/10/2026 16:42:56
[2026-10-25 16:42:56,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:42:56,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:42:56,516.516 INFO    ] No existing commands found in stream
[2026-10-25 16:43:01,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:43:01,557.557 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 16:43:05,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:43:05,301.301 INFO    ] Checking for system updates...
[2026-10-25 16:43:05,342.342 INFO    ] 200
[2026-10-25 16:43:05,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:05,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:05,402.402 INFO    ] No update needed
[2026-10-25 16:43:05,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 16:43:05,443.443 INFO    ] 200
[2026-10-25 16:43:05,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:05,497.497 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:43:05,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:05,577.577 INFO    ] No camera update needed
[2026-10-25 16:43:05,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:43:05,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:43:05,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:43:05,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:43:07,635.635 INFO    ] ================================================
[2026-10-25 16:43:07,650.650 INFO    ] Launching Daemon at Sun Oct 25 16:43:07 IST 2026
[2026-10-25 16:43:07,661.661 INFO    ] ================================================
[2026-10-25 16:43:08,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:43:08
[2026-10-25 16:43:08,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:43:09,229.229 INFO    ] Initializing speech engine...
[2026-10-25 16:43:09,236.236 INFO    ] 2026-10-25 16:43:09
[2026-10-25 16:43:09,507.507 INFO    ] 2026-10-25 16:43:09
[2026-10-25 16:43:09,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:43:09,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:43:09,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:43:09,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:43:09,988.988 INFO    ] time= 25/10/2026 16:43:09
[2026-10-25 16:43:10,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:43:10,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:43:10,159.159 INFO    ] No existing commands found in stream
[2026-10-25 16:43:15,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:43:15,200.200 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 16:43:17,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:43:17,366.366 INFO    ] Checking for system updates...
[2026-10-25 16:43:17,403.403 INFO    ] 200
[2026-10-25 16:43:17,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:17,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:17,462.462 INFO    ] No update needed
[2026-10-25 16:43:17,465.465 INFO    ] Checking for camera pi updates...
[2026-10-25 16:43:17,500.500 INFO    ] 200
[2026-10-25 16:43:17,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:17,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:43:17,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:17,601.601 INFO    ] No camera update needed
[2026-10-25 16:43:17,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:43:17,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:43:17,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:43:17,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:43:19,659.659 INFO    ] ================================================
[2026-10-25 16:43:19,675.675 INFO    ] Launching Daemon at Sun Oct 25 16:43:19 IST 2026
[2026-10-25 16:43:19,685.685 INFO    ] ================================================
[2026-10-25 16:43:20,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:43:20
[2026-10-25 16:43:20,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:43:21,297.297 INFO    ] Initializing speech engine...
[2026-10-25 16:43:21,311.311 INFO    ] 2026-10-25 16:43:21
[2026-10-25 16:43:21,591.591 INFO    ] 2026-10-25 16:43:21
[2026-10-25 16:43:21,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:43:21,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:43:21,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:43:22,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:43:22,077.077 INFO    ] time= 25/10/2026 16:43:22
[2026-10-25 16:43:22,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:43:22,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:43:22,272.272 INFO    ] No existing commands found in stream
[2026-10-25 16:43:27,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:43:27,306.306 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 16:43:31,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:43:31,528.528 INFO    ] Checking for system updates...
[2026-10-25 16:43:31,567.567 INFO    ] 200
[2026-10-25 16:43:31,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:31,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:31,642.642 INFO    ] No update needed
[2026-10-25 16:43:31,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 16:43:31,684.684 INFO    ] 200
[2026-10-25 16:43:31,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:31,732.732 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:43:31,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:31,781.781 INFO    ] No camera update needed
[2026-10-25 16:43:31,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:43:31,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:43:31,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:43:31,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:43:33,842.842 INFO    ] ================================================
[2026-10-25 16:43:33,856.856 INFO    ] Launching Daemon at Sun Oct 25 16:43:33 IST 2026
[2026-10-25 16:43:33,867.867 INFO    ] ================================================
[2026-10-25 16:43:34,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:43:34
[2026-10-25 16:43:35,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:43:35,395.395 INFO    ] Initializing speech engine...
[2026-10-25 16:43:35,404.404 INFO    ] 2026-10-25 16:43:35
[2026-10-25 16:43:35,691.691 INFO    ] 2026-10-25 16:43:35
[2026-10-25 16:43:35,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:43:35,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:43:35,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:43:36,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:43:36,239.239 INFO    ] time= 25/10/2026 16:43:36
[2026-10-25 16:43:36,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:43:36,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:43:36,372.372 INFO    ] No existing commands found in stream
[2026-10-25 16:43:41,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:43:41,406.406 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 16:43:43,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:43:43,304.304 INFO    ] Checking for system updates...
[2026-10-25 16:43:43,341.341 INFO    ] 200
[2026-10-25 16:43:43,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:43,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:43,400.400 INFO    ] No update needed
[2026-10-25 16:43:43,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 16:43:43,438.438 INFO    ] 200
[2026-10-25 16:43:43,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:43,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:43:43,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:43,538.538 INFO    ] No camera update needed
[2026-10-25 16:43:43,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:43:43,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:43:43,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:43:43,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:43:45,594.594 INFO    ] ================================================
[2026-10-25 16:43:45,609.609 INFO    ] Launching Daemon at Sun Oct 25 16:43:45 IST 2026
[2026-10-25 16:43:45,620.620 INFO    ] ================================================
[2026-10-25 16:43:46,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:43:46
[2026-10-25 16:43:46,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:43:47,060.060 INFO    ] Initializing speech engine...
[2026-10-25 16:43:47,087.087 INFO    ] 2026-10-25 16:43:47
[2026-10-25 16:43:47,361.361 INFO    ] 2026-10-25 16:43:47
[2026-10-25 16:43:47,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:43:47,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:43:47,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:43:47,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:43:47,771.771 INFO    ] time= 25/10/2026 16:43:47
[2026-10-25 16:43:47,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:43:47,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:43:47,859.859 INFO    ] No existing commands found in stream
[2026-10-25 16:43:52,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:43:52,875.875 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 16:43:57,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:43:57,753.753 INFO    ] Checking for system updates...
[2026-10-25 16:43:57,790.790 INFO    ] 200
[2026-10-25 16:43:57,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:57,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:57,852.852 INFO    ] No update needed
[2026-10-25 16:43:57,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 16:43:57,888.888 INFO    ] 200
[2026-10-25 16:43:57,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:43:57,932.932 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:43:57,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:43:57,997.997 INFO    ] No camera update needed
[2026-10-25 16:43:57,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:43:58,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:43:58,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:43:58,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:44:00,052.052 INFO    ] ================================================
[2026-10-25 16:44:00,068.068 INFO    ] Launching Daemon at Sun Oct 25 16:44:00 IST 2026
[2026-10-25 16:44:00,078.078 INFO    ] ================================================
[2026-10-25 16:44:00,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:44:00
[2026-10-25 16:44:01,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:44:01,960.960 INFO    ] Initializing speech engine...
[2026-10-25 16:44:01,999.999 INFO    ] 2026-10-25 16:44:01
[2026-10-25 16:44:02,353.353 INFO    ] 2026-10-25 16:44:02
[2026-10-25 16:44:02,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:44:02,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:44:02,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:44:02,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:44:02,772.772 INFO    ] time= 25/10/2026 16:44:02
[2026-10-25 16:44:02,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:44:02,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:44:02,953.953 INFO    ] No existing commands found in stream
[2026-10-25 16:44:07,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:44:07,966.966 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 16:44:10,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:44:10,011.011 INFO    ] Checking for system updates...
[2026-10-25 16:44:10,048.048 INFO    ] 200
[2026-10-25 16:44:10,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:10,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:44:10,108.108 INFO    ] No update needed
[2026-10-25 16:44:10,110.110 INFO    ] Checking for camera pi updates...
[2026-10-25 16:44:10,144.144 INFO    ] 200
[2026-10-25 16:44:10,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:10,192.192 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:44:10,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:44:10,263.263 INFO    ] No camera update needed
[2026-10-25 16:44:10,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:44:10,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:44:10,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:44:10,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:44:12,317.317 INFO    ] ================================================
[2026-10-25 16:44:12,333.333 INFO    ] Launching Daemon at Sun Oct 25 16:44:12 IST 2026
[2026-10-25 16:44:12,344.344 INFO    ] ================================================
[2026-10-25 16:44:12,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:44:12
[2026-10-25 16:44:13,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:44:13,968.968 INFO    ] Initializing speech engine...
[2026-10-25 16:44:13,983.983 INFO    ] 2026-10-25 16:44:13
[2026-10-25 16:44:14,267.267 INFO    ] 2026-10-25 16:44:14
[2026-10-25 16:44:14,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:44:14,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:44:14,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:44:14,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:44:14,749.749 INFO    ] time= 25/10/2026 16:44:14
[2026-10-25 16:44:14,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:44:14,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:44:14,885.885 INFO    ] No existing commands found in stream
[2026-10-25 16:44:19,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:44:19,896.896 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 16:44:23,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:44:23,956.956 INFO    ] Checking for system updates...
[2026-10-25 16:44:23,991.991 INFO    ] 200
[2026-10-25 16:44:23,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:24,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:44:24,050.050 INFO    ] No update needed
[2026-10-25 16:44:24,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 16:44:24,090.090 INFO    ] 200
[2026-10-25 16:44:24,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:24,133.133 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:44:24,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:44:24,186.186 INFO    ] No camera update needed
[2026-10-25 16:44:24,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:44:24,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:44:24,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:44:24,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:44:26,244.244 INFO    ] ================================================
[2026-10-25 16:44:26,259.259 INFO    ] Launching Daemon at Sun Oct 25 16:44:26 IST 2026
[2026-10-25 16:44:26,270.270 INFO    ] ================================================
[2026-10-25 16:44:26,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:44:26
[2026-10-25 16:44:27,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:44:27,896.896 INFO    ] Initializing speech engine...
[2026-10-25 16:44:27,908.908 INFO    ] 2026-10-25 16:44:27
[2026-10-25 16:44:28,192.192 INFO    ] 2026-10-25 16:44:28
[2026-10-25 16:44:28,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:44:28,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:44:28,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:44:28,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:44:28,770.770 INFO    ] time= 25/10/2026 16:44:28
[2026-10-25 16:44:28,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:44:28,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:44:28,973.973 INFO    ] No existing commands found in stream
[2026-10-25 16:44:33,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:44:33,992.992 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 16:44:36,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:44:36,896.896 INFO    ] Checking for system updates...
[2026-10-25 16:44:36,932.932 INFO    ] 200
[2026-10-25 16:44:36,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:36,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:44:36,994.994 INFO    ] No update needed
[2026-10-25 16:44:36,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 16:44:37,033.033 INFO    ] 200
[2026-10-25 16:44:37,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:37,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:44:37,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:44:37,130.130 INFO    ] No camera update needed
[2026-10-25 16:44:37,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:44:37,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:44:37,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:44:37,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:44:39,189.189 INFO    ] ================================================
[2026-10-25 16:44:39,204.204 INFO    ] Launching Daemon at Sun Oct 25 16:44:39 IST 2026
[2026-10-25 16:44:39,216.216 INFO    ] ================================================
[2026-10-25 16:44:39,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:44:39
[2026-10-25 16:44:40,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:44:40,614.614 INFO    ] Initializing speech engine...
[2026-10-25 16:44:40,637.637 INFO    ] 2026-10-25 16:44:40
[2026-10-25 16:44:40,891.891 INFO    ] 2026-10-25 16:44:40
[2026-10-25 16:44:40,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:44:41,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:44:41,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:44:41,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:44:41,379.379 INFO    ] time= 25/10/2026 16:44:41
[2026-10-25 16:44:41,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:44:41,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:44:41,519.519 INFO    ] No existing commands found in stream
[2026-10-25 16:44:46,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:44:46,533.533 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 16:44:52,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:44:52,008.008 INFO    ] Checking for system updates...
[2026-10-25 16:44:52,047.047 INFO    ] 200
[2026-10-25 16:44:52,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:52,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:44:52,106.106 INFO    ] No update needed
[2026-10-25 16:44:52,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 16:44:52,142.142 INFO    ] 200
[2026-10-25 16:44:52,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:44:52,190.190 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:44:52,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:44:52,222.222 INFO    ] No camera update needed
[2026-10-25 16:44:52,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:44:52,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:44:52,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:44:52,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:44:54,278.278 INFO    ] ================================================
[2026-10-25 16:44:54,294.294 INFO    ] Launching Daemon at Sun Oct 25 16:44:54 IST 2026
[2026-10-25 16:44:54,305.305 INFO    ] ================================================
[2026-10-25 16:44:54,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:44:54
[2026-10-25 16:44:55,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:44:55,777.777 INFO    ] Initializing speech engine...
[2026-10-25 16:44:55,784.784 INFO    ] 2026-10-25 16:44:55
[2026-10-25 16:44:56,044.044 INFO    ] 2026-10-25 16:44:56
[2026-10-25 16:44:56,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:44:59,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:44:59,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:44:59,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:44:59,665.665 INFO    ] time= 25/10/2026 16:44:59
[2026-10-25 16:44:59,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:44:59,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:44:59,721.721 INFO    ] No existing commands found in stream
[2026-10-25 16:45:04,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:45:04,733.733 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 16:45:08,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:45:08,591.591 INFO    ] Checking for system updates...
[2026-10-25 16:45:08,632.632 INFO    ] 200
[2026-10-25 16:45:08,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:08,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:08,691.691 INFO    ] No update needed
[2026-10-25 16:45:08,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 16:45:08,729.729 INFO    ] 200
[2026-10-25 16:45:08,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:08,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:45:08,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:08,830.830 INFO    ] No camera update needed
[2026-10-25 16:45:08,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:45:08,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:45:08,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:45:08,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:45:10,887.887 INFO    ] ================================================
[2026-10-25 16:45:10,903.903 INFO    ] Launching Daemon at Sun Oct 25 16:45:10 IST 2026
[2026-10-25 16:45:10,914.914 INFO    ] ================================================
[2026-10-25 16:45:11,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:45:11
[2026-10-25 16:45:12,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:45:12,324.324 INFO    ] Initializing speech engine...
[2026-10-25 16:45:12,332.332 INFO    ] 2026-10-25 16:45:12
[2026-10-25 16:45:12,623.623 INFO    ] 2026-10-25 16:45:12
[2026-10-25 16:45:12,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:45:12,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:45:12,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:45:13,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:45:13,044.044 INFO    ] time= 25/10/2026 16:45:13
[2026-10-25 16:45:13,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:45:13,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:45:13,240.240 INFO    ] No existing commands found in stream
[2026-10-25 16:45:18,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:45:18,263.263 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 16:45:20,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:45:20,273.273 INFO    ] Checking for system updates...
[2026-10-25 16:45:20,309.309 INFO    ] 200
[2026-10-25 16:45:20,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:20,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:45:20,374.374 INFO    ] No update needed
[2026-10-25 16:45:20,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 16:45:20,414.414 INFO    ] 200
[2026-10-25 16:45:20,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:20,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:45:20,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:45:20,508.508 INFO    ] No camera update needed
[2026-10-25 16:45:20,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:45:20,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:45:20,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:45:20,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:45:22,567.567 INFO    ] ================================================
[2026-10-25 16:45:22,583.583 INFO    ] Launching Daemon at Sun Oct 25 16:45:22 IST 2026
[2026-10-25 16:45:22,594.594 INFO    ] ================================================
[2026-10-25 16:45:23,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:45:23
[2026-10-25 16:45:23,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:45:24,047.047 INFO    ] Initializing speech engine...
[2026-10-25 16:45:24,056.056 INFO    ] 2026-10-25 16:45:24
[2026-10-25 16:45:24,316.316 INFO    ] 2026-10-25 16:45:24
[2026-10-25 16:45:24,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:45:24,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:45:24,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:45:24,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:45:24,776.776 INFO    ] time= 25/10/2026 16:45:24
[2026-10-25 16:45:24,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:45:24,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:45:24,972.972 INFO    ] No existing commands found in stream
[2026-10-25 16:45:29,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:45:29,990.990 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 16:45:31,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:45:31,149.149 INFO    ] Checking for system updates...
[2026-10-25 16:45:31,191.191 INFO    ] 200
[2026-10-25 16:45:31,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:31,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:31,256.256 INFO    ] No update needed
[2026-10-25 16:45:31,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 16:45:31,294.294 INFO    ] 200
[2026-10-25 16:45:31,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:31,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:45:31,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:31,389.389 INFO    ] No camera update needed
[2026-10-25 16:45:31,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:45:31,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:45:31,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:45:31,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:45:33,447.447 INFO    ] ================================================
[2026-10-25 16:45:33,463.463 INFO    ] Launching Daemon at Sun Oct 25 16:45:33 IST 2026
[2026-10-25 16:45:33,473.473 INFO    ] ================================================
[2026-10-25 16:45:34,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:45:34
[2026-10-25 16:45:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:45:34,930.930 INFO    ] Initializing speech engine...
[2026-10-25 16:45:34,936.936 INFO    ] 2026-10-25 16:45:34
[2026-10-25 16:45:35,238.238 INFO    ] 2026-10-25 16:45:35
[2026-10-25 16:45:35,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:45:35,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:45:35,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:45:35,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:45:35,595.595 INFO    ] time= 25/10/2026 16:45:35
[2026-10-25 16:45:35,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:45:35,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:45:35,681.681 INFO    ] No existing commands found in stream
[2026-10-25 16:45:40,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:45:40,696.696 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 16:45:42,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:45:42,448.448 INFO    ] Checking for system updates...
[2026-10-25 16:45:42,496.496 INFO    ] 200
[2026-10-25 16:45:42,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:42,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:42,576.576 INFO    ] No update needed
[2026-10-25 16:45:42,579.579 INFO    ] Checking for camera pi updates...
[2026-10-25 16:45:42,618.618 INFO    ] 200
[2026-10-25 16:45:42,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:42,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:45:42,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:45:42,712.712 INFO    ] No camera update needed
[2026-10-25 16:45:42,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:45:42,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:45:42,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:45:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:45:44,775.775 INFO    ] ================================================
[2026-10-25 16:45:44,790.790 INFO    ] Launching Daemon at Sun Oct 25 16:45:44 IST 2026
[2026-10-25 16:45:44,802.802 INFO    ] ================================================
[2026-10-25 16:45:45,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:45:45
[2026-10-25 16:45:45,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:45:46,249.249 INFO    ] Initializing speech engine...
[2026-10-25 16:45:46,258.258 INFO    ] 2026-10-25 16:45:46
[2026-10-25 16:45:46,566.566 INFO    ] 2026-10-25 16:45:46
[2026-10-25 16:45:46,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:45:46,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:45:46,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:45:47,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:45:47,088.088 INFO    ] time= 25/10/2026 16:45:47
[2026-10-25 16:45:47,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:45:47,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:45:47,271.271 INFO    ] No existing commands found in stream
[2026-10-25 16:45:52,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:45:52,286.286 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 16:45:55,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:45:55,045.045 INFO    ] Checking for system updates...
[2026-10-25 16:45:55,086.086 INFO    ] 200
[2026-10-25 16:45:55,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:55,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:45:55,152.152 INFO    ] No update needed
[2026-10-25 16:45:55,154.154 INFO    ] Checking for camera pi updates...
[2026-10-25 16:45:55,189.189 INFO    ] 200
[2026-10-25 16:45:55,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:45:55,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:45:55,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:45:55,280.280 INFO    ] No camera update needed
[2026-10-25 16:45:55,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:45:55,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:45:55,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:45:55,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:45:57,334.334 INFO    ] ================================================
[2026-10-25 16:45:57,349.349 INFO    ] Launching Daemon at Sun Oct 25 16:45:57 IST 2026
[2026-10-25 16:45:57,360.360 INFO    ] ================================================
[2026-10-25 16:45:57,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:45:57
[2026-10-25 16:45:58,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:45:58,806.806 INFO    ] Initializing speech engine...
[2026-10-25 16:45:58,824.824 INFO    ] 2026-10-25 16:45:58
[2026-10-25 16:45:59,076.076 INFO    ] 2026-10-25 16:45:59
[2026-10-25 16:45:59,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:46:01,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:46:01,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:46:01,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:46:01,435.435 INFO    ] time= 25/10/2026 16:46:01
[2026-10-25 16:46:01,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:46:01,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:46:01,580.580 INFO    ] No existing commands found in stream
[2026-10-25 16:46:06,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:46:06,595.595 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 16:46:11,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:46:11,035.035 INFO    ] Checking for system updates...
[2026-10-25 16:46:11,071.071 INFO    ] 200
[2026-10-25 16:46:11,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:11,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:11,129.129 INFO    ] No update needed
[2026-10-25 16:46:11,131.131 INFO    ] Checking for camera pi updates...
[2026-10-25 16:46:11,169.169 INFO    ] 200
[2026-10-25 16:46:11,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:11,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:46:11,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:11,275.275 INFO    ] No camera update needed
[2026-10-25 16:46:11,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:46:11,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:46:11,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:46:11,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:46:13,332.332 INFO    ] ================================================
[2026-10-25 16:46:13,347.347 INFO    ] Launching Daemon at Sun Oct 25 16:46:13 IST 2026
[2026-10-25 16:46:13,358.358 INFO    ] ================================================
[2026-10-25 16:46:13,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:46:13
[2026-10-25 16:46:14,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:46:14,752.752 INFO    ] Initializing speech engine...
[2026-10-25 16:46:14,768.768 INFO    ] 2026-10-25 16:46:14
[2026-10-25 16:46:15,035.035 INFO    ] 2026-10-25 16:46:15
[2026-10-25 16:46:15,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:46:15,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:46:15,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:46:15,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:46:15,410.410 INFO    ] time= 25/10/2026 16:46:15
[2026-10-25 16:46:15,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:46:15,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:46:15,600.600 INFO    ] No existing commands found in stream
[2026-10-25 16:46:20,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:46:20,624.624 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 16:46:22,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:46:22,903.903 INFO    ] Checking for system updates...
[2026-10-25 16:46:22,939.939 INFO    ] 200
[2026-10-25 16:46:22,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:23,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:23,004.004 INFO    ] No update needed
[2026-10-25 16:46:23,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 16:46:23,040.040 INFO    ] 200
[2026-10-25 16:46:23,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:23,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:46:23,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:23,153.153 INFO    ] No camera update needed
[2026-10-25 16:46:23,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:46:23,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:46:23,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:46:23,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:46:25,211.211 INFO    ] ================================================
[2026-10-25 16:46:25,226.226 INFO    ] Launching Daemon at Sun Oct 25 16:46:25 IST 2026
[2026-10-25 16:46:25,237.237 INFO    ] ================================================
[2026-10-25 16:46:25,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:46:25
[2026-10-25 16:46:26,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:46:26,838.838 INFO    ] Initializing speech engine...
[2026-10-25 16:46:26,850.850 INFO    ] 2026-10-25 16:46:26
[2026-10-25 16:46:27,135.135 INFO    ] 2026-10-25 16:46:27
[2026-10-25 16:46:27,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:46:27,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:46:27,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:46:27,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:46:27,662.662 INFO    ] time= 25/10/2026 16:46:27
[2026-10-25 16:46:27,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:46:27,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:46:27,818.818 INFO    ] No existing commands found in stream
[2026-10-25 16:46:32,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:46:32,856.856 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 16:46:35,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:46:35,662.662 INFO    ] Checking for system updates...
[2026-10-25 16:46:35,702.702 INFO    ] 200
[2026-10-25 16:46:35,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:35,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:46:35,760.760 INFO    ] No update needed
[2026-10-25 16:46:35,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 16:46:35,797.797 INFO    ] 200
[2026-10-25 16:46:35,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:35,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:46:36,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:46:36,013.013 INFO    ] No camera update needed
[2026-10-25 16:46:36,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:46:36,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:46:36,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:46:36,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:46:38,067.067 INFO    ] ================================================
[2026-10-25 16:46:38,082.082 INFO    ] Launching Daemon at Sun Oct 25 16:46:38 IST 2026
[2026-10-25 16:46:38,092.092 INFO    ] ================================================
[2026-10-25 16:46:38,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:46:38
[2026-10-25 16:46:39,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:46:39,737.737 INFO    ] Initializing speech engine...
[2026-10-25 16:46:39,748.748 INFO    ] 2026-10-25 16:46:39
[2026-10-25 16:46:39,999.999 INFO    ] 2026-10-25 16:46:39
[2026-10-25 16:46:40,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:46:40,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:46:40,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:46:40,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:46:40,474.474 INFO    ] time= 25/10/2026 16:46:40
[2026-10-25 16:46:40,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:46:40,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:46:40,683.683 INFO    ] No existing commands found in stream
[2026-10-25 16:46:45,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:46:45,716.716 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 16:46:46,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:46:46,857.857 INFO    ] Checking for system updates...
[2026-10-25 16:46:46,893.893 INFO    ] 200
[2026-10-25 16:46:46,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:46,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:46,953.953 INFO    ] No update needed
[2026-10-25 16:46:46,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 16:46:46,989.989 INFO    ] 200
[2026-10-25 16:46:46,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:47,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:46:47,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:46:47,105.105 INFO    ] No camera update needed
[2026-10-25 16:46:47,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:46:47,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:46:47,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:46:47,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:46:49,162.162 INFO    ] ================================================
[2026-10-25 16:46:49,177.177 INFO    ] Launching Daemon at Sun Oct 25 16:46:49 IST 2026
[2026-10-25 16:46:49,187.187 INFO    ] ================================================
[2026-10-25 16:46:49,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:46:49
[2026-10-25 16:46:50,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:46:50,654.654 INFO    ] Initializing speech engine...
[2026-10-25 16:46:50,662.662 INFO    ] 2026-10-25 16:46:50
[2026-10-25 16:46:50,923.923 INFO    ] 2026-10-25 16:46:50
[2026-10-25 16:46:50,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:46:51,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:46:51,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:46:51,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:46:51,381.381 INFO    ] time= 25/10/2026 16:46:51
[2026-10-25 16:46:51,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:46:51,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:46:51,588.588 INFO    ] No existing commands found in stream
[2026-10-25 16:46:56,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:46:56,618.618 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 16:46:57,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:46:57,235.235 INFO    ] Checking for system updates...
[2026-10-25 16:46:57,271.271 INFO    ] 200
[2026-10-25 16:46:57,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:57,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:46:57,337.337 INFO    ] No update needed
[2026-10-25 16:46:57,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 16:46:57,375.375 INFO    ] 200
[2026-10-25 16:46:57,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:46:57,427.427 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:46:57,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:46:57,488.488 INFO    ] No camera update needed
[2026-10-25 16:46:57,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:46:57,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:46:57,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:46:57,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:46:59,546.546 INFO    ] ================================================
[2026-10-25 16:46:59,562.562 INFO    ] Launching Daemon at Sun Oct 25 16:46:59 IST 2026
[2026-10-25 16:46:59,573.573 INFO    ] ================================================
[2026-10-25 16:47:00,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:47:00
[2026-10-25 16:47:00,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:47:01,343.343 INFO    ] Initializing speech engine...
[2026-10-25 16:47:01,347.347 INFO    ] 2026-10-25 16:47:01
[2026-10-25 16:47:01,677.677 INFO    ] 2026-10-25 16:47:01
[2026-10-25 16:47:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:47:03,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:47:03,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:47:03,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:47:03,881.881 INFO    ] time= 25/10/2026 16:47:03
[2026-10-25 16:47:03,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:47:03,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:47:03,967.967 INFO    ] No existing commands found in stream
[2026-10-25 16:47:08,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:47:08,981.981 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 16:47:11,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:47:11,252.252 INFO    ] Checking for system updates...
[2026-10-25 16:47:11,293.293 INFO    ] 200
[2026-10-25 16:47:11,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:11,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:11,363.363 INFO    ] No update needed
[2026-10-25 16:47:11,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 16:47:11,404.404 INFO    ] 200
[2026-10-25 16:47:11,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:11,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:47:11,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:11,493.493 INFO    ] No camera update needed
[2026-10-25 16:47:11,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:47:11,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:47:11,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:47:11,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:47:13,549.549 INFO    ] ================================================
[2026-10-25 16:47:13,565.565 INFO    ] Launching Daemon at Sun Oct 25 16:47:13 IST 2026
[2026-10-25 16:47:13,576.576 INFO    ] ================================================
[2026-10-25 16:47:14,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:47:14
[2026-10-25 16:47:14,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:47:14,973.973 INFO    ] Initializing speech engine...
[2026-10-25 16:47:14,979.979 INFO    ] 2026-10-25 16:47:14
[2026-10-25 16:47:15,254.254 INFO    ] 2026-10-25 16:47:15
[2026-10-25 16:47:15,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:47:15,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:47:15,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:47:15,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:47:15,703.703 INFO    ] time= 25/10/2026 16:47:15
[2026-10-25 16:47:15,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:47:15,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:47:15,890.890 INFO    ] No existing commands found in stream
[2026-10-25 16:47:20,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:47:20,917.917 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 16:47:23,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:47:23,823.823 INFO    ] Checking for system updates...
[2026-10-25 16:47:23,862.862 INFO    ] 200
[2026-10-25 16:47:23,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:23,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:47:23,919.919 INFO    ] No update needed
[2026-10-25 16:47:23,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 16:47:23,963.963 INFO    ] 200
[2026-10-25 16:47:23,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:24,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:47:24,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:47:24,071.071 INFO    ] No camera update needed
[2026-10-25 16:47:24,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:47:24,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:47:24,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:47:24,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:47:26,130.130 INFO    ] ================================================
[2026-10-25 16:47:26,145.145 INFO    ] Launching Daemon at Sun Oct 25 16:47:26 IST 2026
[2026-10-25 16:47:26,157.157 INFO    ] ================================================
[2026-10-25 16:47:26,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:47:26
[2026-10-25 16:47:27,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:47:27,549.549 INFO    ] Initializing speech engine...
[2026-10-25 16:47:27,570.570 INFO    ] 2026-10-25 16:47:27
[2026-10-25 16:47:27,826.826 INFO    ] 2026-10-25 16:47:27
[2026-10-25 16:47:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:47:28,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:47:28,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:47:28,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:47:28,318.318 INFO    ] time= 25/10/2026 16:47:28
[2026-10-25 16:47:28,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:47:28,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:47:28,447.447 INFO    ] No existing commands found in stream
[2026-10-25 16:47:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:47:33,470.470 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 16:47:37,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:47:37,427.427 INFO    ] Checking for system updates...
[2026-10-25 16:47:37,463.463 INFO    ] 200
[2026-10-25 16:47:37,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:37,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:37,528.528 INFO    ] No update needed
[2026-10-25 16:47:37,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 16:47:37,564.564 INFO    ] 200
[2026-10-25 16:47:37,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:37,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:47:37,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:37,756.756 INFO    ] No camera update needed
[2026-10-25 16:47:37,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:47:37,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:47:37,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:47:37,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:47:39,812.812 INFO    ] ================================================
[2026-10-25 16:47:39,827.827 INFO    ] Launching Daemon at Sun Oct 25 16:47:39 IST 2026
[2026-10-25 16:47:39,838.838 INFO    ] ================================================
[2026-10-25 16:47:40,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:47:40
[2026-10-25 16:47:41,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:47:41,332.332 INFO    ] Initializing speech engine...
[2026-10-25 16:47:41,340.340 INFO    ] 2026-10-25 16:47:41
[2026-10-25 16:47:41,612.612 INFO    ] 2026-10-25 16:47:41
[2026-10-25 16:47:41,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:47:41,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:47:41,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:47:42,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:47:42,049.049 INFO    ] time= 25/10/2026 16:47:42
[2026-10-25 16:47:42,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:47:42,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:47:42,251.251 INFO    ] No existing commands found in stream
[2026-10-25 16:47:47,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:47:47,266.266 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 16:47:50,995.995 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:47:50,997.997 INFO    ] Checking for system updates...
[2026-10-25 16:47:51,034.034 INFO    ] 200
[2026-10-25 16:47:51,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:51,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:51,099.099 INFO    ] No update needed
[2026-10-25 16:47:51,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 16:47:51,140.140 INFO    ] 200
[2026-10-25 16:47:51,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:47:51,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:47:51,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:47:51,237.237 INFO    ] No camera update needed
[2026-10-25 16:47:51,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:47:51,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:47:51,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:47:51,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:47:53,293.293 INFO    ] ================================================
[2026-10-25 16:47:53,308.308 INFO    ] Launching Daemon at Sun Oct 25 16:47:53 IST 2026
[2026-10-25 16:47:53,318.318 INFO    ] ================================================
[2026-10-25 16:47:53,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:47:53
[2026-10-25 16:47:54,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:47:54,793.793 INFO    ] Initializing speech engine...
[2026-10-25 16:47:54,802.802 INFO    ] 2026-10-25 16:47:54
[2026-10-25 16:47:55,064.064 INFO    ] 2026-10-25 16:47:55
[2026-10-25 16:47:55,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:47:55,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:47:55,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:47:55,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:47:55,603.603 INFO    ] time= 25/10/2026 16:47:55
[2026-10-25 16:47:55,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:47:55,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:47:55,748.748 INFO    ] No existing commands found in stream
[2026-10-25 16:48:00,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:48:00,776.776 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 16:48:06,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:48:06,273.273 INFO    ] Checking for system updates...
[2026-10-25 16:48:06,312.312 INFO    ] 200
[2026-10-25 16:48:06,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:06,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:48:06,374.374 INFO    ] No update needed
[2026-10-25 16:48:06,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 16:48:06,416.416 INFO    ] 200
[2026-10-25 16:48:06,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:06,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:48:06,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:48:06,548.548 INFO    ] No camera update needed
[2026-10-25 16:48:06,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:48:06,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:48:06,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:48:06,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:48:08,618.618 INFO    ] ================================================
[2026-10-25 16:48:08,634.634 INFO    ] Launching Daemon at Sun Oct 25 16:48:08 IST 2026
[2026-10-25 16:48:08,644.644 INFO    ] ================================================
[2026-10-25 16:48:09,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:48:09
[2026-10-25 16:48:09,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:48:10,085.085 INFO    ] Initializing speech engine...
[2026-10-25 16:48:10,099.099 INFO    ] 2026-10-25 16:48:10
[2026-10-25 16:48:10,374.374 INFO    ] 2026-10-25 16:48:10
[2026-10-25 16:48:10,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:48:10,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:48:10,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:48:10,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:48:10,737.737 INFO    ] time= 25/10/2026 16:48:10
[2026-10-25 16:48:10,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:48:10,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:48:10,817.817 INFO    ] No existing commands found in stream
[2026-10-25 16:48:15,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:48:15,833.833 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 16:48:18,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:48:18,098.098 INFO    ] Checking for system updates...
[2026-10-25 16:48:18,146.146 INFO    ] 200
[2026-10-25 16:48:18,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:18,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:48:18,207.207 INFO    ] No update needed
[2026-10-25 16:48:18,210.210 INFO    ] Checking for camera pi updates...
[2026-10-25 16:48:18,251.251 INFO    ] 200
[2026-10-25 16:48:18,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:18,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:48:18,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:48:18,356.356 INFO    ] No camera update needed
[2026-10-25 16:48:18,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:48:18,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:48:18,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:48:18,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:48:20,416.416 INFO    ] ================================================
[2026-10-25 16:48:20,432.432 INFO    ] Launching Daemon at Sun Oct 25 16:48:20 IST 2026
[2026-10-25 16:48:20,443.443 INFO    ] ================================================
[2026-10-25 16:48:21,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:48:21
[2026-10-25 16:48:21,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:48:21,891.891 INFO    ] Initializing speech engine...
[2026-10-25 16:48:21,898.898 INFO    ] 2026-10-25 16:48:21
[2026-10-25 16:48:22,199.199 INFO    ] 2026-10-25 16:48:22
[2026-10-25 16:48:22,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:48:22,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:48:22,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:48:22,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:48:22,542.542 INFO    ] time= 25/10/2026 16:48:22
[2026-10-25 16:48:22,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:48:22,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:48:22,681.681 INFO    ] No existing commands found in stream
[2026-10-25 16:48:27,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:48:27,694.694 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 16:48:32,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:48:32,125.125 INFO    ] Checking for system updates...
[2026-10-25 16:48:32,170.170 INFO    ] 200
[2026-10-25 16:48:32,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:32,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:32,243.243 INFO    ] No update needed
[2026-10-25 16:48:32,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 16:48:32,283.283 INFO    ] 200
[2026-10-25 16:48:32,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:32,334.334 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:48:32,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:32,378.378 INFO    ] No camera update needed
[2026-10-25 16:48:32,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:48:32,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:48:32,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:48:32,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:48:34,437.437 INFO    ] ================================================
[2026-10-25 16:48:34,453.453 INFO    ] Launching Daemon at Sun Oct 25 16:48:34 IST 2026
[2026-10-25 16:48:34,465.465 INFO    ] ================================================
[2026-10-25 16:48:35,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:48:35
[2026-10-25 16:48:35,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:48:35,925.925 INFO    ] Initializing speech engine...
[2026-10-25 16:48:35,935.935 INFO    ] 2026-10-25 16:48:35
[2026-10-25 16:48:36,194.194 INFO    ] 2026-10-25 16:48:36
[2026-10-25 16:48:36,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:48:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:48:37,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:48:37,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:48:37,289.289 INFO    ] time= 25/10/2026 16:48:37
[2026-10-25 16:48:37,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:48:37,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:48:37,395.395 INFO    ] No existing commands found in stream
[2026-10-25 16:48:42,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:48:42,409.409 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 16:48:46,680.680 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:48:46,683.683 INFO    ] Checking for system updates...
[2026-10-25 16:48:46,722.722 INFO    ] 200
[2026-10-25 16:48:46,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:46,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:46,783.783 INFO    ] No update needed
[2026-10-25 16:48:46,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 16:48:46,826.826 INFO    ] 200
[2026-10-25 16:48:46,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:46,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:48:47,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:47,043.043 INFO    ] No camera update needed
[2026-10-25 16:48:47,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:48:47,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:48:47,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:48:47,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:48:49,105.105 INFO    ] ================================================
[2026-10-25 16:48:49,121.121 INFO    ] Launching Daemon at Sun Oct 25 16:48:49 IST 2026
[2026-10-25 16:48:49,132.132 INFO    ] ================================================
[2026-10-25 16:48:49,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:48:49
[2026-10-25 16:48:50,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:48:50,827.827 INFO    ] Initializing speech engine...
[2026-10-25 16:48:50,842.842 INFO    ] 2026-10-25 16:48:50
[2026-10-25 16:48:51,141.141 INFO    ] 2026-10-25 16:48:51
[2026-10-25 16:48:51,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:48:51,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:48:51,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:48:51,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:48:51,693.693 INFO    ] time= 25/10/2026 16:48:51
[2026-10-25 16:48:51,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:48:51,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:48:51,852.852 INFO    ] No existing commands found in stream
[2026-10-25 16:48:56,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:48:56,873.873 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 16:48:57,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:48:57,817.817 INFO    ] Checking for system updates...
[2026-10-25 16:48:57,861.861 INFO    ] 200
[2026-10-25 16:48:57,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:57,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:57,926.926 INFO    ] No update needed
[2026-10-25 16:48:57,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 16:48:57,964.964 INFO    ] 200
[2026-10-25 16:48:57,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:48:58,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:48:58,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:48:58,054.054 INFO    ] No camera update needed
[2026-10-25 16:48:58,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:48:58,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:48:58,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:48:58,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:49:00,112.112 INFO    ] ================================================
[2026-10-25 16:49:00,128.128 INFO    ] Launching Daemon at Sun Oct 25 16:49:00 IST 2026
[2026-10-25 16:49:00,139.139 INFO    ] ================================================
[2026-10-25 16:49:00,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:49:00
[2026-10-25 16:49:01,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:49:02,231.231 INFO    ] Initializing speech engine...
[2026-10-25 16:49:02,234.234 INFO    ] 2026-10-25 16:49:02
[2026-10-25 16:49:02,661.661 INFO    ] 2026-10-25 16:49:02
[2026-10-25 16:49:02,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:49:02,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:49:02,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:49:03,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:49:03,035.035 INFO    ] time= 25/10/2026 16:49:03
[2026-10-25 16:49:03,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:49:03,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:49:03,217.217 INFO    ] No existing commands found in stream
[2026-10-25 16:49:08,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:49:08,247.247 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 16:49:09,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:49:09,694.694 INFO    ] Checking for system updates...
[2026-10-25 16:49:09,732.732 INFO    ] 200
[2026-10-25 16:49:09,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:09,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:09,789.789 INFO    ] No update needed
[2026-10-25 16:49:09,792.792 INFO    ] Checking for camera pi updates...
[2026-10-25 16:49:09,825.825 INFO    ] 200
[2026-10-25 16:49:09,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:09,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:49:09,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:09,909.909 INFO    ] No camera update needed
[2026-10-25 16:49:09,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:49:09,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:49:09,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:49:09,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:49:11,966.966 INFO    ] ================================================
[2026-10-25 16:49:11,982.982 INFO    ] Launching Daemon at Sun Oct 25 16:49:11 IST 2026
[2026-10-25 16:49:11,993.993 INFO    ] ================================================
[2026-10-25 16:49:12,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:49:12
[2026-10-25 16:49:13,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:49:13,654.654 INFO    ] Initializing speech engine...
[2026-10-25 16:49:13,662.662 INFO    ] 2026-10-25 16:49:13
[2026-10-25 16:49:13,945.945 INFO    ] 2026-10-25 16:49:13
[2026-10-25 16:49:14,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:49:14,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:49:14,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:49:14,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:49:14,475.475 INFO    ] time= 25/10/2026 16:49:14
[2026-10-25 16:49:14,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:49:14,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:49:14,631.631 INFO    ] No existing commands found in stream
[2026-10-25 16:49:19,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:49:19,654.654 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 16:49:20,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:49:20,561.561 INFO    ] Checking for system updates...
[2026-10-25 16:49:20,624.624 INFO    ] 200
[2026-10-25 16:49:20,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:20,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:49:20,692.692 INFO    ] No update needed
[2026-10-25 16:49:20,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 16:49:20,731.731 INFO    ] 200
[2026-10-25 16:49:20,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:20,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:49:20,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:49:20,812.812 INFO    ] No camera update needed
[2026-10-25 16:49:20,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:49:20,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:49:20,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:49:20,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:49:22,872.872 INFO    ] ================================================
[2026-10-25 16:49:22,887.887 INFO    ] Launching Daemon at Sun Oct 25 16:49:22 IST 2026
[2026-10-25 16:49:22,897.897 INFO    ] ================================================
[2026-10-25 16:49:23,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:49:23
[2026-10-25 16:49:24,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:49:24,348.348 INFO    ] Initializing speech engine...
[2026-10-25 16:49:24,357.357 INFO    ] 2026-10-25 16:49:24
[2026-10-25 16:49:24,616.616 INFO    ] 2026-10-25 16:49:24
[2026-10-25 16:49:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:49:24,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:49:24,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:49:25,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:49:25,093.093 INFO    ] time= 25/10/2026 16:49:25
[2026-10-25 16:49:25,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:49:25,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:49:25,248.248 INFO    ] No existing commands found in stream
[2026-10-25 16:49:30,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:49:30,286.286 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 16:49:32,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:49:32,159.159 INFO    ] Checking for system updates...
[2026-10-25 16:49:32,202.202 INFO    ] 200
[2026-10-25 16:49:32,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:32,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:32,270.270 INFO    ] No update needed
[2026-10-25 16:49:32,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 16:49:32,325.325 INFO    ] 200
[2026-10-25 16:49:32,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:32,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:49:32,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:32,439.439 INFO    ] No camera update needed
[2026-10-25 16:49:32,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:49:32,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:49:32,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:49:32,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:49:34,498.498 INFO    ] ================================================
[2026-10-25 16:49:34,514.514 INFO    ] Launching Daemon at Sun Oct 25 16:49:34 IST 2026
[2026-10-25 16:49:34,525.525 INFO    ] ================================================
[2026-10-25 16:49:35,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:49:35
[2026-10-25 16:49:35,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:49:35,922.922 INFO    ] Initializing speech engine...
[2026-10-25 16:49:35,936.936 INFO    ] 2026-10-25 16:49:35
[2026-10-25 16:49:36,201.201 INFO    ] 2026-10-25 16:49:36
[2026-10-25 16:49:36,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:49:39,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:49:39,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:49:39,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:49:39,911.911 INFO    ] time= 25/10/2026 16:49:39
[2026-10-25 16:49:39,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:49:39,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:49:39,962.962 INFO    ] No existing commands found in stream
[2026-10-25 16:49:44,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:49:44,974.974 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 16:49:45,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:49:45,428.428 INFO    ] Checking for system updates...
[2026-10-25 16:49:45,464.464 INFO    ] 200
[2026-10-25 16:49:45,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:45,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:49:45,534.534 INFO    ] No update needed
[2026-10-25 16:49:45,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 16:49:45,570.570 INFO    ] 200
[2026-10-25 16:49:45,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:45,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:49:45,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:49:45,663.663 INFO    ] No camera update needed
[2026-10-25 16:49:45,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:49:45,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:49:45,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:49:45,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:49:47,720.720 INFO    ] ================================================
[2026-10-25 16:49:47,735.735 INFO    ] Launching Daemon at Sun Oct 25 16:49:47 IST 2026
[2026-10-25 16:49:47,746.746 INFO    ] ================================================
[2026-10-25 16:49:48,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:49:48
[2026-10-25 16:49:49,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:49:49,404.404 INFO    ] Initializing speech engine...
[2026-10-25 16:49:49,417.417 INFO    ] 2026-10-25 16:49:49
[2026-10-25 16:49:49,699.699 INFO    ] 2026-10-25 16:49:49
[2026-10-25 16:49:49,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:49:50,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:49:50,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:49:50,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:49:51,028.028 INFO    ] time= 25/10/2026 16:49:50
[2026-10-25 16:49:51,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:49:51,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:49:51,102.102 INFO    ] No existing commands found in stream
[2026-10-25 16:49:56,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:49:56,117.117 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 16:49:58,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:49:58,773.773 INFO    ] Checking for system updates...
[2026-10-25 16:49:58,809.809 INFO    ] 200
[2026-10-25 16:49:58,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:58,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:58,868.868 INFO    ] No update needed
[2026-10-25 16:49:58,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 16:49:58,904.904 INFO    ] 200
[2026-10-25 16:49:58,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:49:58,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:49:59,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:49:59,013.013 INFO    ] No camera update needed
[2026-10-25 16:49:59,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:49:59,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:49:59,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:49:59,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:50:01,067.067 INFO    ] ================================================
[2026-10-25 16:50:01,083.083 INFO    ] Launching Daemon at Sun Oct 25 16:50:01 IST 2026
[2026-10-25 16:50:01,098.098 INFO    ] ================================================
[2026-10-25 16:50:02,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:50:02
[2026-10-25 16:50:03,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:50:03,604.604 INFO    ] Initializing speech engine...
[2026-10-25 16:50:03,613.613 INFO    ] 2026-10-25 16:50:03
[2026-10-25 16:50:03,897.897 INFO    ] 2026-10-25 16:50:03
[2026-10-25 16:50:04,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:50:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:50:04,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:50:04,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:50:04,451.451 INFO    ] time= 25/10/2026 16:50:04
[2026-10-25 16:50:04,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:50:04,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:50:04,611.611 INFO    ] No existing commands found in stream
[2026-10-25 16:50:09,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:50:09,629.629 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 16:50:13,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:50:13,714.714 INFO    ] Checking for system updates...
[2026-10-25 16:50:13,752.752 INFO    ] 200
[2026-10-25 16:50:13,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:13,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:13,814.814 INFO    ] No update needed
[2026-10-25 16:50:13,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 16:50:13,852.852 INFO    ] 200
[2026-10-25 16:50:13,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:13,902.902 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:50:13,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:13,954.954 INFO    ] No camera update needed
[2026-10-25 16:50:13,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:50:13,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:50:13,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:50:13,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:50:16,013.013 INFO    ] ================================================
[2026-10-25 16:50:16,028.028 INFO    ] Launching Daemon at Sun Oct 25 16:50:16 IST 2026
[2026-10-25 16:50:16,039.039 INFO    ] ================================================
[2026-10-25 16:50:16,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:50:16
[2026-10-25 16:50:17,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:50:17,460.460 INFO    ] Initializing speech engine...
[2026-10-25 16:50:17,478.478 INFO    ] 2026-10-25 16:50:17
[2026-10-25 16:50:17,729.729 INFO    ] 2026-10-25 16:50:17
[2026-10-25 16:50:17,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:50:18,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:50:18,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:50:18,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:50:18,214.214 INFO    ] time= 25/10/2026 16:50:18
[2026-10-25 16:50:18,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:50:18,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:50:18,362.362 INFO    ] No existing commands found in stream
[2026-10-25 16:50:23,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:50:23,385.385 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 16:50:24,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:50:24,430.430 INFO    ] Checking for system updates...
[2026-10-25 16:50:24,467.467 INFO    ] 200
[2026-10-25 16:50:24,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:24,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:24,527.527 INFO    ] No update needed
[2026-10-25 16:50:24,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 16:50:24,569.569 INFO    ] 200
[2026-10-25 16:50:24,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:24,615.615 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:50:24,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:24,676.676 INFO    ] No camera update needed
[2026-10-25 16:50:24,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:50:24,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:50:24,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:50:24,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:50:26,732.732 INFO    ] ================================================
[2026-10-25 16:50:26,748.748 INFO    ] Launching Daemon at Sun Oct 25 16:50:26 IST 2026
[2026-10-25 16:50:26,758.758 INFO    ] ================================================
[2026-10-25 16:50:27,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:50:27
[2026-10-25 16:50:27,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:50:28,150.150 INFO    ] Initializing speech engine...
[2026-10-25 16:50:28,164.164 INFO    ] 2026-10-25 16:50:28
[2026-10-25 16:50:28,427.427 INFO    ] 2026-10-25 16:50:28
[2026-10-25 16:50:28,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:50:28,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:50:28,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:50:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:50:28,902.902 INFO    ] time= 25/10/2026 16:50:28
[2026-10-25 16:50:28,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:50:28,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:50:29,084.084 INFO    ] No existing commands found in stream
[2026-10-25 16:50:34,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:50:34,111.111 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 16:50:35,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:50:35,225.225 INFO    ] Checking for system updates...
[2026-10-25 16:50:35,261.261 INFO    ] 200
[2026-10-25 16:50:35,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:35,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:35,318.318 INFO    ] No update needed
[2026-10-25 16:50:35,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 16:50:35,355.355 INFO    ] 200
[2026-10-25 16:50:35,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:35,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:50:35,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:50:35,448.448 INFO    ] No camera update needed
[2026-10-25 16:50:35,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:50:35,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:50:35,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:50:35,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:50:37,504.504 INFO    ] ================================================
[2026-10-25 16:50:37,518.518 INFO    ] Launching Daemon at Sun Oct 25 16:50:37 IST 2026
[2026-10-25 16:50:37,529.529 INFO    ] ================================================
[2026-10-25 16:50:38,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:50:38
[2026-10-25 16:50:38,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:50:38,984.984 INFO    ] Initializing speech engine...
[2026-10-25 16:50:38,993.993 INFO    ] 2026-10-25 16:50:38
[2026-10-25 16:50:39,264.264 INFO    ] 2026-10-25 16:50:39
[2026-10-25 16:50:39,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:50:41,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:50:41,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:50:41,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:50:41,813.813 INFO    ] time= 25/10/2026 16:50:41
[2026-10-25 16:50:41,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:50:41,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:50:41,914.914 INFO    ] No existing commands found in stream
[2026-10-25 16:50:46,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:50:46,953.953 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 16:50:48,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:50:48,024.024 INFO    ] Checking for system updates...
[2026-10-25 16:50:48,060.060 INFO    ] 200
[2026-10-25 16:50:48,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:48,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:50:48,119.119 INFO    ] No update needed
[2026-10-25 16:50:48,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 16:50:48,155.155 INFO    ] 200
[2026-10-25 16:50:48,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:48,204.204 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:50:48,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:50:48,263.263 INFO    ] No camera update needed
[2026-10-25 16:50:48,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:50:48,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:50:48,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:50:48,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:50:50,319.319 INFO    ] ================================================
[2026-10-25 16:50:50,335.335 INFO    ] Launching Daemon at Sun Oct 25 16:50:50 IST 2026
[2026-10-25 16:50:50,346.346 INFO    ] ================================================
[2026-10-25 16:50:50,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:50:50
[2026-10-25 16:50:51,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:50:51,747.747 INFO    ] Initializing speech engine...
[2026-10-25 16:50:51,762.762 INFO    ] 2026-10-25 16:50:51
[2026-10-25 16:50:52,027.027 INFO    ] 2026-10-25 16:50:52
[2026-10-25 16:50:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:50:52,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:50:52,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:50:52,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:50:52,405.405 INFO    ] time= 25/10/2026 16:50:52
[2026-10-25 16:50:52,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:50:52,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:50:52,565.565 INFO    ] No existing commands found in stream
[2026-10-25 16:50:57,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:50:57,594.594 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 16:50:58,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:50:58,544.544 INFO    ] Checking for system updates...
[2026-10-25 16:50:58,579.579 INFO    ] 200
[2026-10-25 16:50:58,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:58,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:50:58,644.644 INFO    ] No update needed
[2026-10-25 16:50:58,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 16:50:58,684.684 INFO    ] 200
[2026-10-25 16:50:58,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:50:58,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:50:58,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:50:58,865.865 INFO    ] No camera update needed
[2026-10-25 16:50:58,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:50:58,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:50:58,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:50:58,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:51:00,921.921 INFO    ] ================================================
[2026-10-25 16:51:00,937.937 INFO    ] Launching Daemon at Sun Oct 25 16:51:00 IST 2026
[2026-10-25 16:51:00,948.948 INFO    ] ================================================
[2026-10-25 16:51:01,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:51:01
[2026-10-25 16:51:02,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:51:02,613.613 INFO    ] Initializing speech engine...
[2026-10-25 16:51:02,634.634 INFO    ] 2026-10-25 16:51:02
[2026-10-25 16:51:02,919.919 INFO    ] 2026-10-25 16:51:02
[2026-10-25 16:51:02,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:51:03,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:51:03,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:51:03,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:51:03,446.446 INFO    ] time= 25/10/2026 16:51:03
[2026-10-25 16:51:03,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:51:03,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:51:03,611.611 INFO    ] No existing commands found in stream
[2026-10-25 16:51:08,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:51:08,627.627 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 16:51:12,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:51:12,935.935 INFO    ] Checking for system updates...
[2026-10-25 16:51:12,975.975 INFO    ] 200
[2026-10-25 16:51:12,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:13,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:51:13,033.033 INFO    ] No update needed
[2026-10-25 16:51:13,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 16:51:13,072.072 INFO    ] 200
[2026-10-25 16:51:13,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:13,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:51:13,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:51:13,161.161 INFO    ] No camera update needed
[2026-10-25 16:51:13,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:51:13,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:51:13,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:51:13,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:51:15,216.216 INFO    ] ================================================
[2026-10-25 16:51:15,232.232 INFO    ] Launching Daemon at Sun Oct 25 16:51:15 IST 2026
[2026-10-25 16:51:15,243.243 INFO    ] ================================================
[2026-10-25 16:51:15,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:51:15
[2026-10-25 16:51:16,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:51:16,785.785 INFO    ] Initializing speech engine...
[2026-10-25 16:51:16,799.799 INFO    ] 2026-10-25 16:51:16
[2026-10-25 16:51:17,065.065 INFO    ] 2026-10-25 16:51:17
[2026-10-25 16:51:17,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:51:17,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:51:17,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:51:17,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:51:17,552.552 INFO    ] time= 25/10/2026 16:51:17
[2026-10-25 16:51:17,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:51:17,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:51:17,695.695 INFO    ] No existing commands found in stream
[2026-10-25 16:51:22,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:51:22,709.709 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 16:51:26,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:51:26,703.703 INFO    ] Checking for system updates...
[2026-10-25 16:51:26,743.743 INFO    ] 200
[2026-10-25 16:51:26,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:26,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:26,802.802 INFO    ] No update needed
[2026-10-25 16:51:26,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 16:51:26,842.842 INFO    ] 200
[2026-10-25 16:51:26,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:26,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:51:26,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:26,947.947 INFO    ] No camera update needed
[2026-10-25 16:51:26,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:51:26,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:51:26,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:51:26,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:51:29,003.003 INFO    ] ================================================
[2026-10-25 16:51:29,018.018 INFO    ] Launching Daemon at Sun Oct 25 16:51:29 IST 2026
[2026-10-25 16:51:29,029.029 INFO    ] ================================================
[2026-10-25 16:51:29,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:51:29
[2026-10-25 16:51:30,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:51:30,451.451 INFO    ] Initializing speech engine...
[2026-10-25 16:51:30,461.461 INFO    ] 2026-10-25 16:51:30
[2026-10-25 16:51:30,710.710 INFO    ] 2026-10-25 16:51:30
[2026-10-25 16:51:30,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:51:30,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:51:30,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:51:31,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:51:31,097.097 INFO    ] time= 25/10/2026 16:51:31
[2026-10-25 16:51:31,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:51:31,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:51:31,219.219 INFO    ] No existing commands found in stream
[2026-10-25 16:51:36,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:51:36,246.246 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 16:51:43,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:51:43,493.493 INFO    ] Checking for system updates...
[2026-10-25 16:51:43,533.533 INFO    ] 200
[2026-10-25 16:51:43,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:43,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:43,591.591 INFO    ] No update needed
[2026-10-25 16:51:43,594.594 INFO    ] Checking for camera pi updates...
[2026-10-25 16:51:43,627.627 INFO    ] 200
[2026-10-25 16:51:43,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:43,676.676 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:51:43,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:43,734.734 INFO    ] No camera update needed
[2026-10-25 16:51:43,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:51:43,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:51:43,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:51:43,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:51:45,790.790 INFO    ] ================================================
[2026-10-25 16:51:45,805.805 INFO    ] Launching Daemon at Sun Oct 25 16:51:45 IST 2026
[2026-10-25 16:51:45,817.817 INFO    ] ================================================
[2026-10-25 16:51:46,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:51:46
[2026-10-25 16:51:46,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:51:47,225.225 INFO    ] Initializing speech engine...
[2026-10-25 16:51:47,239.239 INFO    ] 2026-10-25 16:51:47
[2026-10-25 16:51:47,501.501 INFO    ] 2026-10-25 16:51:47
[2026-10-25 16:51:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:51:47,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:51:47,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:51:47,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:51:47,868.868 INFO    ] time= 25/10/2026 16:51:47
[2026-10-25 16:51:47,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:51:47,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:51:48,043.043 INFO    ] No existing commands found in stream
[2026-10-25 16:51:53,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:51:53,072.072 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 16:51:54,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:51:54,118.118 INFO    ] Checking for system updates...
[2026-10-25 16:51:54,156.156 INFO    ] 200
[2026-10-25 16:51:54,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:54,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:54,222.222 INFO    ] No update needed
[2026-10-25 16:51:54,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 16:51:54,261.261 INFO    ] 200
[2026-10-25 16:51:54,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:51:54,311.311 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:51:54,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:51:54,354.354 INFO    ] No camera update needed
[2026-10-25 16:51:54,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:51:54,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:51:54,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:51:54,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:51:56,413.413 INFO    ] ================================================
[2026-10-25 16:51:56,429.429 INFO    ] Launching Daemon at Sun Oct 25 16:51:56 IST 2026
[2026-10-25 16:51:56,440.440 INFO    ] ================================================
[2026-10-25 16:51:57,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:51:57
[2026-10-25 16:51:57,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:51:58,071.071 INFO    ] Initializing speech engine...
[2026-10-25 16:51:58,079.079 INFO    ] 2026-10-25 16:51:58
[2026-10-25 16:51:58,389.389 INFO    ] 2026-10-25 16:51:58
[2026-10-25 16:51:58,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:51:58,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:51:58,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:51:58,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:51:58,896.896 INFO    ] time= 25/10/2026 16:51:58
[2026-10-25 16:51:58,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:51:58,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:51:59,039.039 INFO    ] No existing commands found in stream
[2026-10-25 16:52:04,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:52:04,066.066 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 16:52:07,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:52:07,911.911 INFO    ] Checking for system updates...
[2026-10-25 16:52:07,953.953 INFO    ] 200
[2026-10-25 16:52:07,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:08,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:08,018.018 INFO    ] No update needed
[2026-10-25 16:52:08,021.021 INFO    ] Checking for camera pi updates...
[2026-10-25 16:52:08,055.055 INFO    ] 200
[2026-10-25 16:52:08,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:08,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:52:08,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:08,165.165 INFO    ] No camera update needed
[2026-10-25 16:52:08,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:52:08,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:52:08,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:52:08,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:52:10,223.223 INFO    ] ================================================
[2026-10-25 16:52:10,239.239 INFO    ] Launching Daemon at Sun Oct 25 16:52:10 IST 2026
[2026-10-25 16:52:10,250.250 INFO    ] ================================================
[2026-10-25 16:52:10,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:52:10
[2026-10-25 16:52:11,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:52:11,687.687 INFO    ] Initializing speech engine...
[2026-10-25 16:52:11,693.693 INFO    ] 2026-10-25 16:52:11
[2026-10-25 16:52:11,982.982 INFO    ] 2026-10-25 16:52:11
[2026-10-25 16:52:12,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:52:14,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:52:14,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:52:14,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:52:14,562.562 INFO    ] time= 25/10/2026 16:52:14
[2026-10-25 16:52:14,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:52:14,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:52:14,647.647 INFO    ] No existing commands found in stream
[2026-10-25 16:52:19,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:52:19,665.665 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 16:52:22,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:52:22,584.584 INFO    ] Checking for system updates...
[2026-10-25 16:52:22,624.624 INFO    ] 200
[2026-10-25 16:52:22,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:22,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:22,689.689 INFO    ] No update needed
[2026-10-25 16:52:22,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 16:52:22,726.726 INFO    ] 200
[2026-10-25 16:52:22,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:22,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:52:22,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:22,833.833 INFO    ] No camera update needed
[2026-10-25 16:52:22,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:52:22,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:52:22,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:52:22,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:52:24,891.891 INFO    ] ================================================
[2026-10-25 16:52:24,907.907 INFO    ] Launching Daemon at Sun Oct 25 16:52:24 IST 2026
[2026-10-25 16:52:24,918.918 INFO    ] ================================================
[2026-10-25 16:52:25,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:52:25
[2026-10-25 16:52:26,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:52:26,325.325 INFO    ] Initializing speech engine...
[2026-10-25 16:52:26,333.333 INFO    ] 2026-10-25 16:52:26
[2026-10-25 16:52:26,631.631 INFO    ] 2026-10-25 16:52:26
[2026-10-25 16:52:26,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:52:26,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:52:26,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:52:27,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:52:27,103.103 INFO    ] time= 25/10/2026 16:52:27
[2026-10-25 16:52:27,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:52:27,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:52:27,300.300 INFO    ] No existing commands found in stream
[2026-10-25 16:52:32,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:52:32,315.315 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 16:52:33,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:52:33,641.641 INFO    ] Checking for system updates...
[2026-10-25 16:52:33,679.679 INFO    ] 200
[2026-10-25 16:52:33,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:33,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:33,742.742 INFO    ] No update needed
[2026-10-25 16:52:33,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 16:52:33,779.779 INFO    ] 200
[2026-10-25 16:52:33,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:33,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:52:33,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:33,874.874 INFO    ] No camera update needed
[2026-10-25 16:52:33,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:52:33,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:52:33,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:52:33,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:52:35,931.931 INFO    ] ================================================
[2026-10-25 16:52:35,946.946 INFO    ] Launching Daemon at Sun Oct 25 16:52:35 IST 2026
[2026-10-25 16:52:35,957.957 INFO    ] ================================================
[2026-10-25 16:52:36,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:52:36
[2026-10-25 16:52:37,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:52:37,397.397 INFO    ] Initializing speech engine...
[2026-10-25 16:52:37,417.417 INFO    ] 2026-10-25 16:52:37
[2026-10-25 16:52:37,687.687 INFO    ] 2026-10-25 16:52:37
[2026-10-25 16:52:37,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:52:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:52:37,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:52:38,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:52:38,158.158 INFO    ] time= 25/10/2026 16:52:38
[2026-10-25 16:52:38,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:52:38,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:52:38,326.326 INFO    ] No existing commands found in stream
[2026-10-25 16:52:43,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:52:43,345.345 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 16:52:47,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:52:47,536.536 INFO    ] Checking for system updates...
[2026-10-25 16:52:47,573.573 INFO    ] 200
[2026-10-25 16:52:47,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:47,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:47,635.635 INFO    ] No update needed
[2026-10-25 16:52:47,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 16:52:47,672.672 INFO    ] 200
[2026-10-25 16:52:47,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:47,723.723 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:52:47,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:52:47,776.776 INFO    ] No camera update needed
[2026-10-25 16:52:47,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:52:47,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:52:47,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:52:47,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:52:49,833.833 INFO    ] ================================================
[2026-10-25 16:52:49,848.848 INFO    ] Launching Daemon at Sun Oct 25 16:52:49 IST 2026
[2026-10-25 16:52:49,859.859 INFO    ] ================================================
[2026-10-25 16:52:50,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:52:50
[2026-10-25 16:52:51,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:52:51,317.317 INFO    ] Initializing speech engine...
[2026-10-25 16:52:51,324.324 INFO    ] 2026-10-25 16:52:51
[2026-10-25 16:52:51,585.585 INFO    ] 2026-10-25 16:52:51
[2026-10-25 16:52:51,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:52:51,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:52:51,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:52:52,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:52:52,064.064 INFO    ] time= 25/10/2026 16:52:52
[2026-10-25 16:52:52,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:52:52,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:52:52,198.198 INFO    ] No existing commands found in stream
[2026-10-25 16:52:57,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:52:57,225.225 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 16:52:57,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:52:57,714.714 INFO    ] Checking for system updates...
[2026-10-25 16:52:57,750.750 INFO    ] 200
[2026-10-25 16:52:57,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:57,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:52:57,808.808 INFO    ] No update needed
[2026-10-25 16:52:57,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 16:52:57,846.846 INFO    ] 200
[2026-10-25 16:52:57,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:52:57,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:52:57,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:52:57,954.954 INFO    ] No camera update needed
[2026-10-25 16:52:57,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:52:57,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:52:57,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:52:57,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:53:00,010.010 INFO    ] ================================================
[2026-10-25 16:53:00,025.025 INFO    ] Launching Daemon at Sun Oct 25 16:53:00 IST 2026
[2026-10-25 16:53:00,036.036 INFO    ] ================================================
[2026-10-25 16:53:00,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:53:00
[2026-10-25 16:53:01,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:53:01,450.450 INFO    ] Initializing speech engine...
[2026-10-25 16:53:01,464.464 INFO    ] 2026-10-25 16:53:01
[2026-10-25 16:53:01,711.711 INFO    ] 2026-10-25 16:53:01
[2026-10-25 16:53:01,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:53:01,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:53:02,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:53:02,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:53:02,155.155 INFO    ] time= 25/10/2026 16:53:02
[2026-10-25 16:53:02,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:53:02,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:53:02,316.316 INFO    ] No existing commands found in stream
[2026-10-25 16:53:07,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:53:07,349.349 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 16:53:10,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:53:10,750.750 INFO    ] Checking for system updates...
[2026-10-25 16:53:10,788.788 INFO    ] 200
[2026-10-25 16:53:10,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:10,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:10,849.849 INFO    ] No update needed
[2026-10-25 16:53:10,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 16:53:10,889.889 INFO    ] 200
[2026-10-25 16:53:10,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:10,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:53:10,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:10,992.992 INFO    ] No camera update needed
[2026-10-25 16:53:10,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:53:10,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:53:11,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:53:11,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:53:13,052.052 INFO    ] ================================================
[2026-10-25 16:53:13,067.067 INFO    ] Launching Daemon at Sun Oct 25 16:53:13 IST 2026
[2026-10-25 16:53:13,078.078 INFO    ] ================================================
[2026-10-25 16:53:13,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:53:13
[2026-10-25 16:53:14,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:53:14,475.475 INFO    ] Initializing speech engine...
[2026-10-25 16:53:14,491.491 INFO    ] 2026-10-25 16:53:14
[2026-10-25 16:53:14,747.747 INFO    ] 2026-10-25 16:53:14
[2026-10-25 16:53:14,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:53:16,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:53:16,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:53:17,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:53:17,122.122 INFO    ] time= 25/10/2026 16:53:17
[2026-10-25 16:53:17,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:53:17,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:53:17,223.223 INFO    ] No existing commands found in stream
[2026-10-25 16:53:22,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:53:22,249.249 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 16:53:23,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:53:23,902.902 INFO    ] Checking for system updates...
[2026-10-25 16:53:23,942.942 INFO    ] 200
[2026-10-25 16:53:23,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:23,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:23,999.999 INFO    ] No update needed
[2026-10-25 16:53:24,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 16:53:24,040.040 INFO    ] 200
[2026-10-25 16:53:24,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:24,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:53:24,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:24,136.136 INFO    ] No camera update needed
[2026-10-25 16:53:24,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:53:24,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:53:24,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:53:24,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:53:26,191.191 INFO    ] ================================================
[2026-10-25 16:53:26,207.207 INFO    ] Launching Daemon at Sun Oct 25 16:53:26 IST 2026
[2026-10-25 16:53:26,218.218 INFO    ] ================================================
[2026-10-25 16:53:26,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:53:26
[2026-10-25 16:53:27,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:53:27,621.621 INFO    ] Initializing speech engine...
[2026-10-25 16:53:27,635.635 INFO    ] 2026-10-25 16:53:27
[2026-10-25 16:53:27,913.913 INFO    ] 2026-10-25 16:53:27
[2026-10-25 16:53:27,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:53:28,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:53:28,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:53:28,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:53:28,321.321 INFO    ] time= 25/10/2026 16:53:28
[2026-10-25 16:53:28,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:53:28,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:53:28,406.406 INFO    ] No existing commands found in stream
[2026-10-25 16:53:33,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:53:33,424.424 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 16:53:37,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:53:37,421.421 INFO    ] Checking for system updates...
[2026-10-25 16:53:37,465.465 INFO    ] 200
[2026-10-25 16:53:37,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:37,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:37,535.535 INFO    ] No update needed
[2026-10-25 16:53:37,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 16:53:37,584.584 INFO    ] 200
[2026-10-25 16:53:37,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:37,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:53:37,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:37,764.764 INFO    ] No camera update needed
[2026-10-25 16:53:37,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:53:37,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:53:37,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:53:37,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:53:39,823.823 INFO    ] ================================================
[2026-10-25 16:53:39,839.839 INFO    ] Launching Daemon at Sun Oct 25 16:53:39 IST 2026
[2026-10-25 16:53:39,849.849 INFO    ] ================================================
[2026-10-25 16:53:40,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:53:40
[2026-10-25 16:53:41,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:53:41,328.328 INFO    ] Initializing speech engine...
[2026-10-25 16:53:41,337.337 INFO    ] 2026-10-25 16:53:41
[2026-10-25 16:53:41,638.638 INFO    ] 2026-10-25 16:53:41
[2026-10-25 16:53:41,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:53:41,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:53:41,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:53:41,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:53:41,966.966 INFO    ] time= 25/10/2026 16:53:41
[2026-10-25 16:53:41,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:53:41,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:53:42,041.041 INFO    ] No existing commands found in stream
[2026-10-25 16:53:47,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:53:47,056.056 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 16:53:50,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:53:50,602.602 INFO    ] Checking for system updates...
[2026-10-25 16:53:50,641.641 INFO    ] 200
[2026-10-25 16:53:50,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:50,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:50,699.699 INFO    ] No update needed
[2026-10-25 16:53:50,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 16:53:50,736.736 INFO    ] 200
[2026-10-25 16:53:50,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:53:50,779.779 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:53:50,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:53:50,831.831 INFO    ] No camera update needed
[2026-10-25 16:53:50,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:53:50,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:53:50,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:53:50,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:53:52,887.887 INFO    ] ================================================
[2026-10-25 16:53:52,902.902 INFO    ] Launching Daemon at Sun Oct 25 16:53:52 IST 2026
[2026-10-25 16:53:52,913.913 INFO    ] ================================================
[2026-10-25 16:53:53,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:53:53
[2026-10-25 16:53:54,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:53:54,386.386 INFO    ] Initializing speech engine...
[2026-10-25 16:53:54,395.395 INFO    ] 2026-10-25 16:53:54
[2026-10-25 16:53:54,653.653 INFO    ] 2026-10-25 16:53:54
[2026-10-25 16:53:54,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:53:54,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:53:54,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:53:55,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:53:55,124.124 INFO    ] time= 25/10/2026 16:53:55
[2026-10-25 16:53:55,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:53:55,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:53:55,291.291 INFO    ] No existing commands found in stream
[2026-10-25 16:54:00,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:54:00,325.325 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 16:54:02,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:54:02,229.229 INFO    ] Checking for system updates...
[2026-10-25 16:54:02,290.290 INFO    ] 200
[2026-10-25 16:54:02,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:02,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:02,399.399 INFO    ] No update needed
[2026-10-25 16:54:02,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 16:54:02,453.453 INFO    ] 200
[2026-10-25 16:54:02,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:02,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:54:02,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:02,578.578 INFO    ] No camera update needed
[2026-10-25 16:54:02,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:54:02,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:54:02,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:54:02,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:54:04,646.646 INFO    ] ================================================
[2026-10-25 16:54:04,661.661 INFO    ] Launching Daemon at Sun Oct 25 16:54:04 IST 2026
[2026-10-25 16:54:04,672.672 INFO    ] ================================================
[2026-10-25 16:54:05,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:54:05
[2026-10-25 16:54:05,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:54:06,247.247 INFO    ] Initializing speech engine...
[2026-10-25 16:54:06,252.252 INFO    ] 2026-10-25 16:54:06
[2026-10-25 16:54:06,577.577 INFO    ] 2026-10-25 16:54:06
[2026-10-25 16:54:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:54:06,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:54:06,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:54:06,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:54:07,028.028 INFO    ] time= 25/10/2026 16:54:06
[2026-10-25 16:54:07,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:54:07,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:54:07,245.245 INFO    ] No existing commands found in stream
[2026-10-25 16:54:12,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:54:12,270.270 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 16:54:13,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:54:13,786.786 INFO    ] Checking for system updates...
[2026-10-25 16:54:13,828.828 INFO    ] 200
[2026-10-25 16:54:13,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:13,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:13,898.898 INFO    ] No update needed
[2026-10-25 16:54:13,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 16:54:13,936.936 INFO    ] 200
[2026-10-25 16:54:13,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:13,982.982 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:54:14,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:14,043.043 INFO    ] No camera update needed
[2026-10-25 16:54:14,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:54:14,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:54:14,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:54:14,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:54:16,104.104 INFO    ] ================================================
[2026-10-25 16:54:16,119.119 INFO    ] Launching Daemon at Sun Oct 25 16:54:16 IST 2026
[2026-10-25 16:54:16,130.130 INFO    ] ================================================
[2026-10-25 16:54:16,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:54:16
[2026-10-25 16:54:17,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:54:17,567.567 INFO    ] Initializing speech engine...
[2026-10-25 16:54:17,576.576 INFO    ] 2026-10-25 16:54:17
[2026-10-25 16:54:17,824.824 INFO    ] 2026-10-25 16:54:17
[2026-10-25 16:54:17,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:54:18,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:54:18,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:54:19,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:54:19,197.197 INFO    ] time= 25/10/2026 16:54:19
[2026-10-25 16:54:19,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:54:19,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:54:19,276.276 INFO    ] No existing commands found in stream
[2026-10-25 16:54:24,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:54:24,290.290 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 16:54:28,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:54:28,389.389 INFO    ] Checking for system updates...
[2026-10-25 16:54:28,426.426 INFO    ] 200
[2026-10-25 16:54:28,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:28,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:28,484.484 INFO    ] No update needed
[2026-10-25 16:54:28,486.486 INFO    ] Checking for camera pi updates...
[2026-10-25 16:54:28,521.521 INFO    ] 200
[2026-10-25 16:54:28,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:28,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:54:28,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:28,621.621 INFO    ] No camera update needed
[2026-10-25 16:54:28,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:54:28,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:54:28,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:54:28,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:54:30,676.676 INFO    ] ================================================
[2026-10-25 16:54:30,693.693 INFO    ] Launching Daemon at Sun Oct 25 16:54:30 IST 2026
[2026-10-25 16:54:30,705.705 INFO    ] ================================================
[2026-10-25 16:54:31,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:54:31
[2026-10-25 16:54:31,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:54:32,154.154 INFO    ] Initializing speech engine...
[2026-10-25 16:54:32,171.171 INFO    ] 2026-10-25 16:54:32
[2026-10-25 16:54:32,439.439 INFO    ] 2026-10-25 16:54:32
[2026-10-25 16:54:32,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:54:32,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:54:32,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:54:32,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:54:32,798.798 INFO    ] time= 25/10/2026 16:54:32
[2026-10-25 16:54:32,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:54:32,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:54:32,919.919 INFO    ] No existing commands found in stream
[2026-10-25 16:54:37,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:54:37,937.937 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 16:54:40,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:54:40,552.552 INFO    ] Checking for system updates...
[2026-10-25 16:54:40,591.591 INFO    ] 200
[2026-10-25 16:54:40,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:40,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:54:40,648.648 INFO    ] No update needed
[2026-10-25 16:54:40,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 16:54:40,684.684 INFO    ] 200
[2026-10-25 16:54:40,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:40,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:54:40,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:54:40,780.780 INFO    ] No camera update needed
[2026-10-25 16:54:40,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:54:40,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:54:40,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:54:40,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:54:42,835.835 INFO    ] ================================================
[2026-10-25 16:54:42,850.850 INFO    ] Launching Daemon at Sun Oct 25 16:54:42 IST 2026
[2026-10-25 16:54:42,861.861 INFO    ] ================================================
[2026-10-25 16:54:43,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:54:43
[2026-10-25 16:54:44,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:54:44,285.285 INFO    ] Initializing speech engine...
[2026-10-25 16:54:44,293.293 INFO    ] 2026-10-25 16:54:44
[2026-10-25 16:54:44,545.545 INFO    ] 2026-10-25 16:54:44
[2026-10-25 16:54:44,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:54:44,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:54:44,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:54:44,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:54:44,921.921 INFO    ] time= 25/10/2026 16:54:44
[2026-10-25 16:54:44,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:54:44,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:54:45,082.082 INFO    ] No existing commands found in stream
[2026-10-25 16:54:50,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:54:50,109.109 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 16:54:51,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:54:51,814.814 INFO    ] Checking for system updates...
[2026-10-25 16:54:51,853.853 INFO    ] 200
[2026-10-25 16:54:51,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:51,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:51,911.911 INFO    ] No update needed
[2026-10-25 16:54:51,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 16:54:51,948.948 INFO    ] 200
[2026-10-25 16:54:51,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:54:51,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:54:52,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:54:52,053.053 INFO    ] No camera update needed
[2026-10-25 16:54:52,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:54:52,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:54:52,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:54:52,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:54:54,109.109 INFO    ] ================================================
[2026-10-25 16:54:54,126.126 INFO    ] Launching Daemon at Sun Oct 25 16:54:54 IST 2026
[2026-10-25 16:54:54,138.138 INFO    ] ================================================
[2026-10-25 16:54:54,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:54:54
[2026-10-25 16:54:55,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:54:55,560.560 INFO    ] Initializing speech engine...
[2026-10-25 16:54:55,568.568 INFO    ] 2026-10-25 16:54:55
[2026-10-25 16:54:55,856.856 INFO    ] 2026-10-25 16:54:55
[2026-10-25 16:54:55,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:54:56,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:54:56,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:54:56,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:54:56,262.262 INFO    ] time= 25/10/2026 16:54:56
[2026-10-25 16:54:56,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:54:56,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:54:56,346.346 INFO    ] No existing commands found in stream
[2026-10-25 16:55:01,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:55:01,379.379 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 16:55:01,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:55:01,800.800 INFO    ] Checking for system updates...
[2026-10-25 16:55:01,839.839 INFO    ] 200
[2026-10-25 16:55:01,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:01,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:01,898.898 INFO    ] No update needed
[2026-10-25 16:55:01,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 16:55:01,935.935 INFO    ] 200
[2026-10-25 16:55:01,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:01,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:55:02,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:02,133.133 INFO    ] No camera update needed
[2026-10-25 16:55:02,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:55:02,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:55:02,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:55:02,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:55:04,256.256 INFO    ] ================================================
[2026-10-25 16:55:04,272.272 INFO    ] Launching Daemon at Sun Oct 25 16:55:04 IST 2026
[2026-10-25 16:55:04,283.283 INFO    ] ================================================
[2026-10-25 16:55:04,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:55:04
[2026-10-25 16:55:05,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:55:05,694.694 INFO    ] Initializing speech engine...
[2026-10-25 16:55:05,710.710 INFO    ] 2026-10-25 16:55:05
[2026-10-25 16:55:05,986.986 INFO    ] 2026-10-25 16:55:05
[2026-10-25 16:55:06,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:55:06,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:55:06,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:55:06,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:55:06,587.587 INFO    ] time= 25/10/2026 16:55:06
[2026-10-25 16:55:06,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:55:06,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:55:06,732.732 INFO    ] No existing commands found in stream
[2026-10-25 16:55:11,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:55:11,759.759 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 16:55:14,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:55:14,021.021 INFO    ] Checking for system updates...
[2026-10-25 16:55:14,060.060 INFO    ] 200
[2026-10-25 16:55:14,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:14,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:14,120.120 INFO    ] No update needed
[2026-10-25 16:55:14,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 16:55:14,159.159 INFO    ] 200
[2026-10-25 16:55:14,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:14,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:55:14,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:14,357.357 INFO    ] No camera update needed
[2026-10-25 16:55:14,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:55:14,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:55:14,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:55:14,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:55:16,415.415 INFO    ] ================================================
[2026-10-25 16:55:16,431.431 INFO    ] Launching Daemon at Sun Oct 25 16:55:16 IST 2026
[2026-10-25 16:55:16,442.442 INFO    ] ================================================
[2026-10-25 16:55:17,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:55:17
[2026-10-25 16:55:17,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:55:17,877.877 INFO    ] Initializing speech engine...
[2026-10-25 16:55:17,898.898 INFO    ] 2026-10-25 16:55:17
[2026-10-25 16:55:18,162.162 INFO    ] 2026-10-25 16:55:18
[2026-10-25 16:55:18,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:55:20,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:55:20,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:55:21,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:55:21,613.613 INFO    ] time= 25/10/2026 16:55:21
[2026-10-25 16:55:21,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:55:21,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:55:21,665.665 INFO    ] No existing commands found in stream
[2026-10-25 16:55:26,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:55:26,677.677 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 16:55:29,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:55:29,015.015 INFO    ] Checking for system updates...
[2026-10-25 16:55:29,051.051 INFO    ] 200
[2026-10-25 16:55:29,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:29,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:29,111.111 INFO    ] No update needed
[2026-10-25 16:55:29,114.114 INFO    ] Checking for camera pi updates...
[2026-10-25 16:55:29,151.151 INFO    ] 200
[2026-10-25 16:55:29,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:29,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:55:29,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:29,264.264 INFO    ] No camera update needed
[2026-10-25 16:55:29,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:55:29,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:55:29,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:55:29,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:55:31,323.323 INFO    ] ================================================
[2026-10-25 16:55:31,339.339 INFO    ] Launching Daemon at Sun Oct 25 16:55:31 IST 2026
[2026-10-25 16:55:31,350.350 INFO    ] ================================================
[2026-10-25 16:55:31,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:55:31
[2026-10-25 16:55:32,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:55:32,857.857 INFO    ] Initializing speech engine...
[2026-10-25 16:55:32,871.871 INFO    ] 2026-10-25 16:55:32
[2026-10-25 16:55:33,174.174 INFO    ] 2026-10-25 16:55:33
[2026-10-25 16:55:33,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:55:33,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:55:33,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:55:33,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:55:33,681.681 INFO    ] time= 25/10/2026 16:55:33
[2026-10-25 16:55:33,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:55:33,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:55:33,837.837 INFO    ] No existing commands found in stream
[2026-10-25 16:55:38,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:55:38,872.872 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 16:55:42,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:55:42,677.677 INFO    ] Checking for system updates...
[2026-10-25 16:55:42,714.714 INFO    ] 200
[2026-10-25 16:55:42,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:42,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:42,778.778 INFO    ] No update needed
[2026-10-25 16:55:42,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 16:55:42,814.814 INFO    ] 200
[2026-10-25 16:55:42,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:42,857.857 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:55:42,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:42,917.917 INFO    ] No camera update needed
[2026-10-25 16:55:42,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:55:42,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:55:42,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:55:42,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:55:44,973.973 INFO    ] ================================================
[2026-10-25 16:55:44,989.989 INFO    ] Launching Daemon at Sun Oct 25 16:55:44 IST 2026
[2026-10-25 16:55:45,000.000 INFO    ] ================================================
[2026-10-25 16:55:45,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:55:45
[2026-10-25 16:55:46,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:55:46,413.413 INFO    ] Initializing speech engine...
[2026-10-25 16:55:46,425.425 INFO    ] 2026-10-25 16:55:46
[2026-10-25 16:55:46,690.690 INFO    ] 2026-10-25 16:55:46
[2026-10-25 16:55:46,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:55:46,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:55:46,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:55:47,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:55:47,176.176 INFO    ] time= 25/10/2026 16:55:47
[2026-10-25 16:55:47,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:55:47,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:55:47,341.341 INFO    ] No existing commands found in stream
[2026-10-25 16:55:52,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:55:52,376.376 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 16:55:56,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:55:56,083.083 INFO    ] Checking for system updates...
[2026-10-25 16:55:56,120.120 INFO    ] 200
[2026-10-25 16:55:56,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:56,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:56,185.185 INFO    ] No update needed
[2026-10-25 16:55:56,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 16:55:56,226.226 INFO    ] 200
[2026-10-25 16:55:56,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:55:56,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:55:56,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:55:56,312.312 INFO    ] No camera update needed
[2026-10-25 16:55:56,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:55:56,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:55:56,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:55:56,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:55:58,368.368 INFO    ] ================================================
[2026-10-25 16:55:58,384.384 INFO    ] Launching Daemon at Sun Oct 25 16:55:58 IST 2026
[2026-10-25 16:55:58,395.395 INFO    ] ================================================
[2026-10-25 16:55:59,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:55:59
[2026-10-25 16:55:59,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:56:00,010.010 INFO    ] Initializing speech engine...
[2026-10-25 16:56:00,024.024 INFO    ] 2026-10-25 16:56:00
[2026-10-25 16:56:00,334.334 INFO    ] 2026-10-25 16:56:00
[2026-10-25 16:56:00,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:56:00,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:56:00,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:56:00,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:56:00,854.854 INFO    ] time= 25/10/2026 16:56:00
[2026-10-25 16:56:00,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:56:00,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:56:00,986.986 INFO    ] No existing commands found in stream
[2026-10-25 16:56:06,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:56:06,020.020 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 16:56:07,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:56:07,665.665 INFO    ] Checking for system updates...
[2026-10-25 16:56:07,703.703 INFO    ] 200
[2026-10-25 16:56:07,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:07,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:56:07,770.770 INFO    ] No update needed
[2026-10-25 16:56:07,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 16:56:07,812.812 INFO    ] 200
[2026-10-25 16:56:07,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:07,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:56:07,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:56:07,907.907 INFO    ] No camera update needed
[2026-10-25 16:56:07,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:56:07,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:56:07,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:56:07,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:56:09,966.966 INFO    ] ================================================
[2026-10-25 16:56:09,982.982 INFO    ] Launching Daemon at Sun Oct 25 16:56:09 IST 2026
[2026-10-25 16:56:09,992.992 INFO    ] ================================================
[2026-10-25 16:56:10,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:56:10
[2026-10-25 16:56:11,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:56:11,431.431 INFO    ] Initializing speech engine...
[2026-10-25 16:56:11,437.437 INFO    ] 2026-10-25 16:56:11
[2026-10-25 16:56:11,737.737 INFO    ] 2026-10-25 16:56:11
[2026-10-25 16:56:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:56:11,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:56:11,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:56:12,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:56:12,157.157 INFO    ] time= 25/10/2026 16:56:12
[2026-10-25 16:56:12,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:56:12,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:56:12,246.246 INFO    ] No existing commands found in stream
[2026-10-25 16:56:17,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:56:17,261.261 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 16:56:18,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:56:18,230.230 INFO    ] Checking for system updates...
[2026-10-25 16:56:18,269.269 INFO    ] 200
[2026-10-25 16:56:18,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:18,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:18,342.342 INFO    ] No update needed
[2026-10-25 16:56:18,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 16:56:18,380.380 INFO    ] 200
[2026-10-25 16:56:18,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:18,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:56:18,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:18,488.488 INFO    ] No camera update needed
[2026-10-25 16:56:18,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:56:18,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:56:18,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:56:18,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:56:20,544.544 INFO    ] ================================================
[2026-10-25 16:56:20,559.559 INFO    ] Launching Daemon at Sun Oct 25 16:56:20 IST 2026
[2026-10-25 16:56:20,570.570 INFO    ] ================================================
[2026-10-25 16:56:21,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:56:21
[2026-10-25 16:56:21,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:56:21,967.967 INFO    ] Initializing speech engine...
[2026-10-25 16:56:21,990.990 INFO    ] 2026-10-25 16:56:21
[2026-10-25 16:56:22,245.245 INFO    ] 2026-10-25 16:56:22
[2026-10-25 16:56:22,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:56:23,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:56:23,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:56:24,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:56:24,055.055 INFO    ] time= 25/10/2026 16:56:24
[2026-10-25 16:56:24,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:56:24,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:56:24,169.169 INFO    ] No existing commands found in stream
[2026-10-25 16:56:29,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:56:29,202.202 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 16:56:31,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:56:31,367.367 INFO    ] Checking for system updates...
[2026-10-25 16:56:31,409.409 INFO    ] 200
[2026-10-25 16:56:31,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:31,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:31,480.480 INFO    ] No update needed
[2026-10-25 16:56:31,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 16:56:31,523.523 INFO    ] 200
[2026-10-25 16:56:31,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:31,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:56:31,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:31,618.618 INFO    ] No camera update needed
[2026-10-25 16:56:31,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:56:31,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:56:31,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:56:31,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:56:33,677.677 INFO    ] ================================================
[2026-10-25 16:56:33,693.693 INFO    ] Launching Daemon at Sun Oct 25 16:56:33 IST 2026
[2026-10-25 16:56:33,704.704 INFO    ] ================================================
[2026-10-25 16:56:34,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:56:34
[2026-10-25 16:56:34,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:56:35,100.100 INFO    ] Initializing speech engine...
[2026-10-25 16:56:35,109.109 INFO    ] 2026-10-25 16:56:35
[2026-10-25 16:56:35,387.387 INFO    ] 2026-10-25 16:56:35
[2026-10-25 16:56:35,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:56:35,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:56:35,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:56:35,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:56:35,755.755 INFO    ] time= 25/10/2026 16:56:35
[2026-10-25 16:56:35,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:56:35,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:56:35,931.931 INFO    ] No existing commands found in stream
[2026-10-25 16:56:40,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:56:40,958.958 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 16:56:44,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:56:44,833.833 INFO    ] Checking for system updates...
[2026-10-25 16:56:44,869.869 INFO    ] 200
[2026-10-25 16:56:44,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:44,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:44,926.926 INFO    ] No update needed
[2026-10-25 16:56:44,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 16:56:44,963.963 INFO    ] 200
[2026-10-25 16:56:44,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:45,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:56:45,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:45,057.057 INFO    ] No camera update needed
[2026-10-25 16:56:45,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:56:45,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:56:45,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:56:45,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:56:47,111.111 INFO    ] ================================================
[2026-10-25 16:56:47,127.127 INFO    ] Launching Daemon at Sun Oct 25 16:56:47 IST 2026
[2026-10-25 16:56:47,139.139 INFO    ] ================================================
[2026-10-25 16:56:47,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:56:47
[2026-10-25 16:56:48,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:56:48,641.641 INFO    ] Initializing speech engine...
[2026-10-25 16:56:48,653.653 INFO    ] 2026-10-25 16:56:48
[2026-10-25 16:56:48,899.899 INFO    ] 2026-10-25 16:56:48
[2026-10-25 16:56:48,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:56:49,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:56:49,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:56:49,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:56:49,368.368 INFO    ] time= 25/10/2026 16:56:49
[2026-10-25 16:56:49,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:56:49,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:56:49,574.574 INFO    ] No existing commands found in stream
[2026-10-25 16:56:54,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:56:54,599.599 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 16:56:57,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 16:56:57,434.434 INFO    ] Checking for system updates...
[2026-10-25 16:56:57,471.471 INFO    ] 200
[2026-10-25 16:56:57,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:57,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:57,528.528 INFO    ] No update needed
[2026-10-25 16:56:57,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 16:56:57,564.564 INFO    ] 200
[2026-10-25 16:56:57,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:56:57,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:56:57,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:56:57,657.657 INFO    ] No camera update needed
[2026-10-25 16:56:57,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:56:57,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:56:57,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:56:57,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:56:59,713.713 INFO    ] ================================================
[2026-10-25 16:56:59,728.728 INFO    ] Launching Daemon at Sun Oct 25 16:56:59 IST 2026
[2026-10-25 16:56:59,739.739 INFO    ] ================================================
[2026-10-25 16:57:00,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:57:00
[2026-10-25 16:57:00,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:57:01,174.174 INFO    ] Initializing speech engine...
[2026-10-25 16:57:01,184.184 INFO    ] 2026-10-25 16:57:01
[2026-10-25 16:57:01,564.564 INFO    ] 2026-10-25 16:57:01
[2026-10-25 16:57:01,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:57:01,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:57:01,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:57:01,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:57:01,997.997 INFO    ] time= 25/10/2026 16:57:01
[2026-10-25 16:57:02,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:57:02,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:57:02,192.192 INFO    ] No existing commands found in stream
[2026-10-25 16:57:07,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:57:07,225.225 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 16:57:09,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 16:57:09,003.003 INFO    ] Checking for system updates...
[2026-10-25 16:57:09,041.041 INFO    ] 200
[2026-10-25 16:57:09,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:09,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:09,104.104 INFO    ] No update needed
[2026-10-25 16:57:09,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 16:57:09,139.139 INFO    ] 200
[2026-10-25 16:57:09,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:09,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:57:09,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:09,244.244 INFO    ] No camera update needed
[2026-10-25 16:57:09,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:57:09,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:57:09,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:57:09,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:57:11,299.299 INFO    ] ================================================
[2026-10-25 16:57:11,315.315 INFO    ] Launching Daemon at Sun Oct 25 16:57:11 IST 2026
[2026-10-25 16:57:11,326.326 INFO    ] ================================================
[2026-10-25 16:57:11,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:57:11
[2026-10-25 16:57:12,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:57:12,742.742 INFO    ] Initializing speech engine...
[2026-10-25 16:57:12,751.751 INFO    ] 2026-10-25 16:57:12
[2026-10-25 16:57:12,998.998 INFO    ] 2026-10-25 16:57:12
[2026-10-25 16:57:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:57:13,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:57:13,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:57:13,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:57:13,485.485 INFO    ] time= 25/10/2026 16:57:13
[2026-10-25 16:57:13,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:57:13,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:57:13,610.610 INFO    ] No existing commands found in stream
[2026-10-25 16:57:18,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:57:18,624.624 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 16:57:21,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:57:21,906.906 INFO    ] Checking for system updates...
[2026-10-25 16:57:21,942.942 INFO    ] 200
[2026-10-25 16:57:21,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:22,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:57:22,005.005 INFO    ] No update needed
[2026-10-25 16:57:22,007.007 INFO    ] Checking for camera pi updates...
[2026-10-25 16:57:22,045.045 INFO    ] 200
[2026-10-25 16:57:22,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:22,092.092 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:57:22,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:57:22,252.252 INFO    ] No camera update needed
[2026-10-25 16:57:22,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:57:22,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:57:22,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:57:22,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:57:24,311.311 INFO    ] ================================================
[2026-10-25 16:57:24,326.326 INFO    ] Launching Daemon at Sun Oct 25 16:57:24 IST 2026
[2026-10-25 16:57:24,337.337 INFO    ] ================================================
[2026-10-25 16:57:24,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:57:24
[2026-10-25 16:57:25,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:57:25,915.915 INFO    ] Initializing speech engine...
[2026-10-25 16:57:25,924.924 INFO    ] 2026-10-25 16:57:25
[2026-10-25 16:57:26,212.212 INFO    ] 2026-10-25 16:57:26
[2026-10-25 16:57:26,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:57:26,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:57:26,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:57:26,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:57:26,692.692 INFO    ] time= 25/10/2026 16:57:26
[2026-10-25 16:57:26,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:57:26,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:57:26,877.877 INFO    ] No existing commands found in stream
[2026-10-25 16:57:31,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:57:31,902.902 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 16:57:33,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:57:33,501.501 INFO    ] Checking for system updates...
[2026-10-25 16:57:33,538.538 INFO    ] 200
[2026-10-25 16:57:33,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:33,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:33,597.597 INFO    ] No update needed
[2026-10-25 16:57:33,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 16:57:33,634.634 INFO    ] 200
[2026-10-25 16:57:33,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:33,678.678 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:57:33,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:33,755.755 INFO    ] No camera update needed
[2026-10-25 16:57:33,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:57:33,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:57:33,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:57:33,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:57:35,813.813 INFO    ] ================================================
[2026-10-25 16:57:35,829.829 INFO    ] Launching Daemon at Sun Oct 25 16:57:35 IST 2026
[2026-10-25 16:57:35,840.840 INFO    ] ================================================
[2026-10-25 16:57:36,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:57:36
[2026-10-25 16:57:37,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:57:37,415.415 INFO    ] Initializing speech engine...
[2026-10-25 16:57:37,429.429 INFO    ] 2026-10-25 16:57:37
[2026-10-25 16:57:37,710.710 INFO    ] 2026-10-25 16:57:37
[2026-10-25 16:57:37,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:57:38,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:57:38,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:57:38,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:57:38,253.253 INFO    ] time= 25/10/2026 16:57:38
[2026-10-25 16:57:38,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:57:38,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:57:38,395.395 INFO    ] No existing commands found in stream
[2026-10-25 16:57:43,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:57:43,414.414 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 16:57:46,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:57:46,926.926 INFO    ] Checking for system updates...
[2026-10-25 16:57:46,963.963 INFO    ] 200
[2026-10-25 16:57:46,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:47,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:57:47,027.027 INFO    ] No update needed
[2026-10-25 16:57:47,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 16:57:47,066.066 INFO    ] 200
[2026-10-25 16:57:47,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:47,113.113 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:57:47,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:57:47,165.165 INFO    ] No camera update needed
[2026-10-25 16:57:47,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:57:47,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:57:47,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:57:47,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:57:49,220.220 INFO    ] ================================================
[2026-10-25 16:57:49,236.236 INFO    ] Launching Daemon at Sun Oct 25 16:57:49 IST 2026
[2026-10-25 16:57:49,248.248 INFO    ] ================================================
[2026-10-25 16:57:49,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:57:49
[2026-10-25 16:57:50,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:57:50,820.820 INFO    ] Initializing speech engine...
[2026-10-25 16:57:50,826.826 INFO    ] 2026-10-25 16:57:50
[2026-10-25 16:57:51,096.096 INFO    ] 2026-10-25 16:57:51
[2026-10-25 16:57:51,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:57:51,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:57:51,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:57:51,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:57:51,596.596 INFO    ] time= 25/10/2026 16:57:51
[2026-10-25 16:57:51,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:57:51,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:57:51,792.792 INFO    ] No existing commands found in stream
[2026-10-25 16:57:56,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:57:56,825.825 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 16:57:59,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:57:59,365.365 INFO    ] Checking for system updates...
[2026-10-25 16:57:59,401.401 INFO    ] 200
[2026-10-25 16:57:59,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:59,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:59,464.464 INFO    ] No update needed
[2026-10-25 16:57:59,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 16:57:59,501.501 INFO    ] 200
[2026-10-25 16:57:59,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:57:59,547.547 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:57:59,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:57:59,596.596 INFO    ] No camera update needed
[2026-10-25 16:57:59,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:57:59,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:57:59,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:57:59,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:58:01,654.654 INFO    ] ================================================
[2026-10-25 16:58:01,685.685 INFO    ] Launching Daemon at Sun Oct 25 16:58:01 IST 2026
[2026-10-25 16:58:01,708.708 INFO    ] ================================================
[2026-10-25 16:58:02,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:58:02
[2026-10-25 16:58:03,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:58:03,291.291 INFO    ] Initializing speech engine...
[2026-10-25 16:58:03,307.307 INFO    ] 2026-10-25 16:58:03
[2026-10-25 16:58:03,578.578 INFO    ] 2026-10-25 16:58:03
[2026-10-25 16:58:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:58:03,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:58:03,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:58:03,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:58:03,938.938 INFO    ] time= 25/10/2026 16:58:03
[2026-10-25 16:58:03,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:58:03,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:58:04,083.083 INFO    ] No existing commands found in stream
[2026-10-25 16:58:09,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:58:09,097.097 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 16:58:11,915.915 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:58:11,917.917 INFO    ] Checking for system updates...
[2026-10-25 16:58:11,954.954 INFO    ] 200
[2026-10-25 16:58:11,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:12,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:12,014.014 INFO    ] No update needed
[2026-10-25 16:58:12,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 16:58:12,055.055 INFO    ] 200
[2026-10-25 16:58:12,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:12,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:58:12,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:12,155.155 INFO    ] No camera update needed
[2026-10-25 16:58:12,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:58:12,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:58:12,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:58:12,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:58:14,212.212 INFO    ] ================================================
[2026-10-25 16:58:14,228.228 INFO    ] Launching Daemon at Sun Oct 25 16:58:14 IST 2026
[2026-10-25 16:58:14,239.239 INFO    ] ================================================
[2026-10-25 16:58:14,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:58:14
[2026-10-25 16:58:15,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:58:15,657.657 INFO    ] Initializing speech engine...
[2026-10-25 16:58:15,664.664 INFO    ] 2026-10-25 16:58:15
[2026-10-25 16:58:15,948.948 INFO    ] 2026-10-25 16:58:15
[2026-10-25 16:58:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:58:16,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:58:16,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:58:16,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:58:16,317.317 INFO    ] time= 25/10/2026 16:58:16
[2026-10-25 16:58:16,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:58:16,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:58:16,482.482 INFO    ] No existing commands found in stream
[2026-10-25 16:58:21,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:58:21,510.510 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 16:58:28,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:58:28,162.162 INFO    ] Checking for system updates...
[2026-10-25 16:58:28,202.202 INFO    ] 200
[2026-10-25 16:58:28,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:28,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:58:28,267.267 INFO    ] No update needed
[2026-10-25 16:58:28,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 16:58:28,312.312 INFO    ] 200
[2026-10-25 16:58:28,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:28,359.359 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:58:28,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:58:28,412.412 INFO    ] No camera update needed
[2026-10-25 16:58:28,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:58:28,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:58:28,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:58:28,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:58:30,473.473 INFO    ] ================================================
[2026-10-25 16:58:30,488.488 INFO    ] Launching Daemon at Sun Oct 25 16:58:30 IST 2026
[2026-10-25 16:58:30,499.499 INFO    ] ================================================
[2026-10-25 16:58:31,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:58:31
[2026-10-25 16:58:31,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:58:31,937.937 INFO    ] Initializing speech engine...
[2026-10-25 16:58:31,960.960 INFO    ] 2026-10-25 16:58:31
[2026-10-25 16:58:32,229.229 INFO    ] 2026-10-25 16:58:32
[2026-10-25 16:58:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:58:32,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:58:32,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:58:32,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:58:32,658.658 INFO    ] time= 25/10/2026 16:58:32
[2026-10-25 16:58:32,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:58:32,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:58:32,754.754 INFO    ] No existing commands found in stream
[2026-10-25 16:58:37,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:58:37,768.768 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 16:58:39,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:58:39,261.261 INFO    ] Checking for system updates...
[2026-10-25 16:58:39,300.300 INFO    ] 200
[2026-10-25 16:58:39,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:39,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:39,371.371 INFO    ] No update needed
[2026-10-25 16:58:39,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 16:58:39,412.412 INFO    ] 200
[2026-10-25 16:58:39,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:39,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:58:39,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:39,510.510 INFO    ] No camera update needed
[2026-10-25 16:58:39,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:58:39,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:58:39,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:58:39,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:58:41,566.566 INFO    ] ================================================
[2026-10-25 16:58:41,582.582 INFO    ] Launching Daemon at Sun Oct 25 16:58:41 IST 2026
[2026-10-25 16:58:41,592.592 INFO    ] ================================================
[2026-10-25 16:58:42,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:58:42
[2026-10-25 16:58:42,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:58:43,014.014 INFO    ] Initializing speech engine...
[2026-10-25 16:58:43,027.027 INFO    ] 2026-10-25 16:58:43
[2026-10-25 16:58:43,278.278 INFO    ] 2026-10-25 16:58:43
[2026-10-25 16:58:43,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:58:43,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:58:43,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:58:43,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:58:43,737.737 INFO    ] time= 25/10/2026 16:58:43
[2026-10-25 16:58:43,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:58:43,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:58:43,907.907 INFO    ] No existing commands found in stream
[2026-10-25 16:58:48,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:58:48,922.922 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 16:58:51,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 16:58:51,742.742 INFO    ] Checking for system updates...
[2026-10-25 16:58:51,778.778 INFO    ] 200
[2026-10-25 16:58:51,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:51,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:51,844.844 INFO    ] No update needed
[2026-10-25 16:58:51,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 16:58:51,880.880 INFO    ] 200
[2026-10-25 16:58:51,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:58:51,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:58:51,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:58:51,986.986 INFO    ] No camera update needed
[2026-10-25 16:58:51,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:58:51,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:58:51,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:58:52,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:58:54,042.042 INFO    ] ================================================
[2026-10-25 16:58:54,057.057 INFO    ] Launching Daemon at Sun Oct 25 16:58:54 IST 2026
[2026-10-25 16:58:54,068.068 INFO    ] ================================================
[2026-10-25 16:58:54,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:58:54
[2026-10-25 16:58:55,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:58:55,471.471 INFO    ] Initializing speech engine...
[2026-10-25 16:58:55,476.476 INFO    ] 2026-10-25 16:58:55
[2026-10-25 16:58:55,749.749 INFO    ] 2026-10-25 16:58:55
[2026-10-25 16:58:55,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:58:59,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:58:59,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:59:00,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:59:00,157.157 INFO    ] time= 25/10/2026 16:59:00
[2026-10-25 16:59:00,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:59:00,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:59:00,207.207 INFO    ] No existing commands found in stream
[2026-10-25 16:59:05,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:59:05,219.219 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 16:59:06,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:59:06,312.312 INFO    ] Checking for system updates...
[2026-10-25 16:59:06,353.353 INFO    ] 200
[2026-10-25 16:59:06,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:06,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:59:06,412.412 INFO    ] No update needed
[2026-10-25 16:59:06,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 16:59:06,452.452 INFO    ] 200
[2026-10-25 16:59:06,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:06,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:59:06,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 16:59:06,558.558 INFO    ] No camera update needed
[2026-10-25 16:59:06,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:59:06,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:59:06,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:59:06,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:59:08,614.614 INFO    ] ================================================
[2026-10-25 16:59:08,629.629 INFO    ] Launching Daemon at Sun Oct 25 16:59:08 IST 2026
[2026-10-25 16:59:08,640.640 INFO    ] ================================================
[2026-10-25 16:59:09,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:59:09
[2026-10-25 16:59:09,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:59:10,069.069 INFO    ] Initializing speech engine...
[2026-10-25 16:59:10,078.078 INFO    ] 2026-10-25 16:59:10
[2026-10-25 16:59:10,326.326 INFO    ] 2026-10-25 16:59:10
[2026-10-25 16:59:10,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:59:10,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:59:10,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:59:10,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:59:10,702.702 INFO    ] time= 25/10/2026 16:59:10
[2026-10-25 16:59:10,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:59:10,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:59:10,855.855 INFO    ] No existing commands found in stream
[2026-10-25 16:59:15,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:59:15,885.885 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 16:59:18,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 16:59:18,049.049 INFO    ] Checking for system updates...
[2026-10-25 16:59:18,086.086 INFO    ] 200
[2026-10-25 16:59:18,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:18,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:18,144.144 INFO    ] No update needed
[2026-10-25 16:59:18,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 16:59:18,183.183 INFO    ] 200
[2026-10-25 16:59:18,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:18,230.230 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:59:18,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:18,283.283 INFO    ] No camera update needed
[2026-10-25 16:59:18,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:59:18,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:59:18,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:59:18,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:59:20,338.338 INFO    ] ================================================
[2026-10-25 16:59:20,354.354 INFO    ] Launching Daemon at Sun Oct 25 16:59:20 IST 2026
[2026-10-25 16:59:20,366.366 INFO    ] ================================================
[2026-10-25 16:59:20,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:59:20
[2026-10-25 16:59:21,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:59:21,783.783 INFO    ] Initializing speech engine...
[2026-10-25 16:59:21,792.792 INFO    ] 2026-10-25 16:59:21
[2026-10-25 16:59:22,036.036 INFO    ] 2026-10-25 16:59:22
[2026-10-25 16:59:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:59:22,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:59:22,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:59:22,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:59:22,534.534 INFO    ] time= 25/10/2026 16:59:22
[2026-10-25 16:59:22,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:59:22,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:59:22,727.727 INFO    ] No existing commands found in stream
[2026-10-25 16:59:27,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:59:27,755.755 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 16:59:31,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 16:59:31,740.740 INFO    ] Checking for system updates...
[2026-10-25 16:59:31,789.789 INFO    ] 200
[2026-10-25 16:59:31,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:31,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:31,865.865 INFO    ] No update needed
[2026-10-25 16:59:31,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 16:59:31,909.909 INFO    ] 200
[2026-10-25 16:59:31,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:31,967.967 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:59:32,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:32,130.130 INFO    ] No camera update needed
[2026-10-25 16:59:32,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:59:32,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:59:32,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:59:32,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:59:34,191.191 INFO    ] ================================================
[2026-10-25 16:59:34,206.206 INFO    ] Launching Daemon at Sun Oct 25 16:59:34 IST 2026
[2026-10-25 16:59:34,218.218 INFO    ] ================================================
[2026-10-25 16:59:34,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:59:34
[2026-10-25 16:59:35,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:59:35,672.672 INFO    ] Initializing speech engine...
[2026-10-25 16:59:35,681.681 INFO    ] 2026-10-25 16:59:35
[2026-10-25 16:59:35,943.943 INFO    ] 2026-10-25 16:59:35
[2026-10-25 16:59:35,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:59:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:59:36,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:59:36,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:59:36,426.426 INFO    ] time= 25/10/2026 16:59:36
[2026-10-25 16:59:36,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:59:36,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:59:36,560.560 INFO    ] No existing commands found in stream
[2026-10-25 16:59:41,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:59:41,600.600 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 16:59:45,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 16:59:45,198.198 INFO    ] Checking for system updates...
[2026-10-25 16:59:45,236.236 INFO    ] 200
[2026-10-25 16:59:45,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:45,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:45,296.296 INFO    ] No update needed
[2026-10-25 16:59:45,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 16:59:45,335.335 INFO    ] 200
[2026-10-25 16:59:45,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 16:59:45,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 16:59:45,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 16:59:45,445.445 INFO    ] No camera update needed
[2026-10-25 16:59:45,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 16:59:45,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 16:59:45,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 16:59:45,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 16:59:47,501.501 INFO    ] ================================================
[2026-10-25 16:59:47,517.517 INFO    ] Launching Daemon at Sun Oct 25 16:59:47 IST 2026
[2026-10-25 16:59:47,528.528 INFO    ] ================================================
[2026-10-25 16:59:48,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 16:59:48
[2026-10-25 16:59:48,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 16:59:49,004.004 INFO    ] Initializing speech engine...
[2026-10-25 16:59:49,015.015 INFO    ] 2026-10-25 16:59:49
[2026-10-25 16:59:49,278.278 INFO    ] 2026-10-25 16:59:49
[2026-10-25 16:59:49,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 16:59:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 16:59:49,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 16:59:50,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 16:59:50,046.046 INFO    ] time= 25/10/2026 16:59:50
[2026-10-25 16:59:50,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 16:59:50,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 16:59:50,249.249 INFO    ] No existing commands found in stream
[2026-10-25 16:59:55,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 16:59:55,262.262 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 17:00:01,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:00:01,881.881 INFO    ] Checking for system updates...
[2026-10-25 17:00:01,943.943 INFO    ] 200
[2026-10-25 17:00:01,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:02,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:02,099.099 INFO    ] No update needed
[2026-10-25 17:00:02,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 17:00:02,290.290 INFO    ] 200
[2026-10-25 17:00:02,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:02,627.627 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:00:02,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:02,826.826 INFO    ] No camera update needed
[2026-10-25 17:00:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:00:02,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:00:02,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:00:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:00:05,074.074 INFO    ] ================================================
[2026-10-25 17:00:05,157.157 INFO    ] Launching Daemon at Sun Oct 25 17:00:05 IST 2026
[2026-10-25 17:00:05,242.242 INFO    ] ================================================
[2026-10-25 17:00:06,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:00:06
[2026-10-25 17:00:07,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:00:07,642.642 INFO    ] Initializing speech engine...
[2026-10-25 17:00:07,649.649 INFO    ] 2026-10-25 17:00:07
[2026-10-25 17:00:07,944.944 INFO    ] 2026-10-25 17:00:07
[2026-10-25 17:00:07,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:00:08,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:00:08,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:00:08,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:00:08,316.316 INFO    ] time= 25/10/2026 17:00:08
[2026-10-25 17:00:08,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:00:08,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:00:08,441.441 INFO    ] No existing commands found in stream
[2026-10-25 17:00:13,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:00:13,459.459 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 17:00:17,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:00:17,778.778 INFO    ] Checking for system updates...
[2026-10-25 17:00:17,818.818 INFO    ] 200
[2026-10-25 17:00:17,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:17,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:00:17,882.882 INFO    ] No update needed
[2026-10-25 17:00:17,884.884 INFO    ] Checking for camera pi updates...
[2026-10-25 17:00:17,923.923 INFO    ] 200
[2026-10-25 17:00:17,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:17,973.973 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:00:18,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:00:18,020.020 INFO    ] No camera update needed
[2026-10-25 17:00:18,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:00:18,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:00:18,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:00:18,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:00:20,076.076 INFO    ] ================================================
[2026-10-25 17:00:20,092.092 INFO    ] Launching Daemon at Sun Oct 25 17:00:20 IST 2026
[2026-10-25 17:00:20,105.105 INFO    ] ================================================
[2026-10-25 17:00:20,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:00:20
[2026-10-25 17:00:21,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:00:21,537.537 INFO    ] Initializing speech engine...
[2026-10-25 17:00:21,560.560 INFO    ] 2026-10-25 17:00:21
[2026-10-25 17:00:21,817.817 INFO    ] 2026-10-25 17:00:21
[2026-10-25 17:00:21,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:00:22,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:00:22,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:00:22,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:00:22,282.282 INFO    ] time= 25/10/2026 17:00:22
[2026-10-25 17:00:22,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:00:22,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:00:22,435.435 INFO    ] No existing commands found in stream
[2026-10-25 17:00:27,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:00:27,449.449 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 17:00:33,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:00:33,185.185 INFO    ] Checking for system updates...
[2026-10-25 17:00:33,224.224 INFO    ] 200
[2026-10-25 17:00:33,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:33,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:33,286.286 INFO    ] No update needed
[2026-10-25 17:00:33,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 17:00:33,332.332 INFO    ] 200
[2026-10-25 17:00:33,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:33,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:00:33,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:33,465.465 INFO    ] No camera update needed
[2026-10-25 17:00:33,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:00:33,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:00:33,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:00:33,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:00:35,533.533 INFO    ] ================================================
[2026-10-25 17:00:35,548.548 INFO    ] Launching Daemon at Sun Oct 25 17:00:35 IST 2026
[2026-10-25 17:00:35,560.560 INFO    ] ================================================
[2026-10-25 17:00:36,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:00:36
[2026-10-25 17:00:36,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:00:37,038.038 INFO    ] Initializing speech engine...
[2026-10-25 17:00:37,046.046 INFO    ] 2026-10-25 17:00:37
[2026-10-25 17:00:37,323.323 INFO    ] 2026-10-25 17:00:37
[2026-10-25 17:00:37,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:00:37,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:00:37,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:00:37,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:00:37,684.684 INFO    ] time= 25/10/2026 17:00:37
[2026-10-25 17:00:37,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:00:37,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:00:37,858.858 INFO    ] No existing commands found in stream
[2026-10-25 17:00:42,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:00:42,891.891 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 17:00:43,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:00:43,602.602 INFO    ] Checking for system updates...
[2026-10-25 17:00:43,643.643 INFO    ] 200
[2026-10-25 17:00:43,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:43,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:43,708.708 INFO    ] No update needed
[2026-10-25 17:00:43,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 17:00:43,745.745 INFO    ] 200
[2026-10-25 17:00:43,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:43,793.793 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:00:43,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:00:43,857.857 INFO    ] No camera update needed
[2026-10-25 17:00:43,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:00:43,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:00:43,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:00:43,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:00:45,913.913 INFO    ] ================================================
[2026-10-25 17:00:45,929.929 INFO    ] Launching Daemon at Sun Oct 25 17:00:45 IST 2026
[2026-10-25 17:00:45,939.939 INFO    ] ================================================
[2026-10-25 17:00:46,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:00:46
[2026-10-25 17:00:47,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:00:47,443.443 INFO    ] Initializing speech engine...
[2026-10-25 17:00:47,453.453 INFO    ] 2026-10-25 17:00:47
[2026-10-25 17:00:47,699.699 INFO    ] 2026-10-25 17:00:47
[2026-10-25 17:00:47,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:00:47,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:00:47,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:00:48,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:00:48,174.174 INFO    ] time= 25/10/2026 17:00:48
[2026-10-25 17:00:48,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:00:48,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:00:48,312.312 INFO    ] No existing commands found in stream
[2026-10-25 17:00:53,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:00:53,327.327 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 17:00:55,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:00:55,181.181 INFO    ] Checking for system updates...
[2026-10-25 17:00:55,221.221 INFO    ] 200
[2026-10-25 17:00:55,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:55,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:00:55,278.278 INFO    ] No update needed
[2026-10-25 17:00:55,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 17:00:55,315.315 INFO    ] 200
[2026-10-25 17:00:55,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:00:55,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:00:55,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:00:55,415.415 INFO    ] No camera update needed
[2026-10-25 17:00:55,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:00:55,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:00:55,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:00:55,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:00:57,470.470 INFO    ] ================================================
[2026-10-25 17:00:57,485.485 INFO    ] Launching Daemon at Sun Oct 25 17:00:57 IST 2026
[2026-10-25 17:00:57,496.496 INFO    ] ================================================
[2026-10-25 17:00:58,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:00:58
[2026-10-25 17:00:58,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:00:58,952.952 INFO    ] Initializing speech engine...
[2026-10-25 17:00:58,957.957 INFO    ] 2026-10-25 17:00:58
[2026-10-25 17:00:59,222.222 INFO    ] 2026-10-25 17:00:59
[2026-10-25 17:00:59,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:00:59,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:00:59,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:00:59,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:00:59,689.689 INFO    ] time= 25/10/2026 17:00:59
[2026-10-25 17:00:59,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:00:59,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:00:59,914.914 INFO    ] No existing commands found in stream
[2026-10-25 17:01:04,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:01:04,933.933 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 17:01:06,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:01:06,973.973 INFO    ] Checking for system updates...
[2026-10-25 17:01:07,009.009 INFO    ] 200
[2026-10-25 17:01:07,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:07,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:07,077.077 INFO    ] No update needed
[2026-10-25 17:01:07,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 17:01:07,114.114 INFO    ] 200
[2026-10-25 17:01:07,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:07,165.165 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:01:07,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:07,212.212 INFO    ] No camera update needed
[2026-10-25 17:01:07,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:01:07,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:01:07,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:01:07,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:01:09,277.277 INFO    ] ================================================
[2026-10-25 17:01:09,292.292 INFO    ] Launching Daemon at Sun Oct 25 17:01:09 IST 2026
[2026-10-25 17:01:09,303.303 INFO    ] ================================================
[2026-10-25 17:01:09,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:01:09
[2026-10-25 17:01:10,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:01:10,899.899 INFO    ] Initializing speech engine...
[2026-10-25 17:01:10,905.905 INFO    ] 2026-10-25 17:01:10
[2026-10-25 17:01:11,196.196 INFO    ] 2026-10-25 17:01:11
[2026-10-25 17:01:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:01:11,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:01:11,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:01:11,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:01:11,749.749 INFO    ] time= 25/10/2026 17:01:11
[2026-10-25 17:01:11,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:01:11,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:01:11,890.890 INFO    ] No existing commands found in stream
[2026-10-25 17:01:16,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:01:16,916.916 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 17:01:17,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:01:17,934.934 INFO    ] Checking for system updates...
[2026-10-25 17:01:17,973.973 INFO    ] 200
[2026-10-25 17:01:17,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:18,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:18,032.032 INFO    ] No update needed
[2026-10-25 17:01:18,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 17:01:18,072.072 INFO    ] 200
[2026-10-25 17:01:18,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:18,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:01:18,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:18,177.177 INFO    ] No camera update needed
[2026-10-25 17:01:18,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:01:18,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:01:18,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:01:18,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:01:20,233.233 INFO    ] ================================================
[2026-10-25 17:01:20,248.248 INFO    ] Launching Daemon at Sun Oct 25 17:01:20 IST 2026
[2026-10-25 17:01:20,259.259 INFO    ] ================================================
[2026-10-25 17:01:20,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:01:20
[2026-10-25 17:01:21,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:01:21,729.729 INFO    ] Initializing speech engine...
[2026-10-25 17:01:21,736.736 INFO    ] 2026-10-25 17:01:21
[2026-10-25 17:01:21,998.998 INFO    ] 2026-10-25 17:01:21
[2026-10-25 17:01:22,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:01:22,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:01:22,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:01:22,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:01:22,542.542 INFO    ] time= 25/10/2026 17:01:22
[2026-10-25 17:01:22,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:01:22,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:01:22,692.692 INFO    ] No existing commands found in stream
[2026-10-25 17:01:27,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:01:27,713.713 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 17:01:29,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:01:29,096.096 INFO    ] Checking for system updates...
[2026-10-25 17:01:29,150.150 INFO    ] 200
[2026-10-25 17:01:29,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:29,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:01:29,213.213 INFO    ] No update needed
[2026-10-25 17:01:29,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 17:01:29,249.249 INFO    ] 200
[2026-10-25 17:01:29,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:29,296.296 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:01:29,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:01:29,346.346 INFO    ] No camera update needed
[2026-10-25 17:01:29,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:01:29,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:01:29,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:01:29,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:01:31,405.405 INFO    ] ================================================
[2026-10-25 17:01:31,420.420 INFO    ] Launching Daemon at Sun Oct 25 17:01:31 IST 2026
[2026-10-25 17:01:31,430.430 INFO    ] ================================================
[2026-10-25 17:01:32,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:01:32
[2026-10-25 17:01:32,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:01:32,956.956 INFO    ] Initializing speech engine...
[2026-10-25 17:01:32,978.978 INFO    ] 2026-10-25 17:01:32
[2026-10-25 17:01:33,231.231 INFO    ] 2026-10-25 17:01:33
[2026-10-25 17:01:33,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:01:34,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:01:34,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:01:35,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:01:35,180.180 INFO    ] time= 25/10/2026 17:01:35
[2026-10-25 17:01:35,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:01:35,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:01:35,247.247 INFO    ] No existing commands found in stream
[2026-10-25 17:01:40,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:01:40,262.262 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 17:01:41,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:01:41,790.790 INFO    ] Checking for system updates...
[2026-10-25 17:01:41,826.826 INFO    ] 200
[2026-10-25 17:01:41,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:41,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:41,885.885 INFO    ] No update needed
[2026-10-25 17:01:41,888.888 INFO    ] Checking for camera pi updates...
[2026-10-25 17:01:41,926.926 INFO    ] 200
[2026-10-25 17:01:41,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:41,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:01:42,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:01:42,140.140 INFO    ] No camera update needed
[2026-10-25 17:01:42,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:01:42,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:01:42,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:01:42,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:01:44,204.204 INFO    ] ================================================
[2026-10-25 17:01:44,219.219 INFO    ] Launching Daemon at Sun Oct 25 17:01:44 IST 2026
[2026-10-25 17:01:44,230.230 INFO    ] ================================================
[2026-10-25 17:01:44,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:01:44
[2026-10-25 17:01:45,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:01:45,705.705 INFO    ] Initializing speech engine...
[2026-10-25 17:01:45,711.711 INFO    ] 2026-10-25 17:01:45
[2026-10-25 17:01:45,977.977 INFO    ] 2026-10-25 17:01:45
[2026-10-25 17:01:46,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:01:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:01:46,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:01:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:01:46,346.346 INFO    ] time= 25/10/2026 17:01:46
[2026-10-25 17:01:46,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:01:46,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:01:46,517.517 INFO    ] No existing commands found in stream
[2026-10-25 17:01:51,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:01:51,550.550 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 17:01:52,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:01:52,952.952 INFO    ] Checking for system updates...
[2026-10-25 17:01:52,991.991 INFO    ] 200
[2026-10-25 17:01:52,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:53,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:01:53,055.055 INFO    ] No update needed
[2026-10-25 17:01:53,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 17:01:53,092.092 INFO    ] 200
[2026-10-25 17:01:53,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:01:53,140.140 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:01:53,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:01:53,199.199 INFO    ] No camera update needed
[2026-10-25 17:01:53,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:01:53,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:01:53,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:01:53,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:01:55,253.253 INFO    ] ================================================
[2026-10-25 17:01:55,268.268 INFO    ] Launching Daemon at Sun Oct 25 17:01:55 IST 2026
[2026-10-25 17:01:55,279.279 INFO    ] ================================================
[2026-10-25 17:01:55,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:01:55
[2026-10-25 17:01:56,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:01:56,877.877 INFO    ] Initializing speech engine...
[2026-10-25 17:01:56,885.885 INFO    ] 2026-10-25 17:01:56
[2026-10-25 17:01:57,179.179 INFO    ] 2026-10-25 17:01:57
[2026-10-25 17:01:57,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:01:57,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:01:57,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:01:57,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:01:57,651.651 INFO    ] time= 25/10/2026 17:01:57
[2026-10-25 17:01:57,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:01:57,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:01:57,849.849 INFO    ] No existing commands found in stream
[2026-10-25 17:02:02,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:02:02,865.865 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 17:02:06,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:02:06,148.148 INFO    ] Checking for system updates...
[2026-10-25 17:02:06,186.186 INFO    ] 200
[2026-10-25 17:02:06,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:06,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:06,244.244 INFO    ] No update needed
[2026-10-25 17:02:06,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 17:02:06,289.289 INFO    ] 200
[2026-10-25 17:02:06,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:06,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:02:06,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:06,394.394 INFO    ] No camera update needed
[2026-10-25 17:02:06,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:02:06,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:02:06,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:02:06,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:02:08,456.456 INFO    ] ================================================
[2026-10-25 17:02:08,470.470 INFO    ] Launching Daemon at Sun Oct 25 17:02:08 IST 2026
[2026-10-25 17:02:08,481.481 INFO    ] ================================================
[2026-10-25 17:02:09,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:02:09
[2026-10-25 17:02:09,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:02:09,922.922 INFO    ] Initializing speech engine...
[2026-10-25 17:02:09,941.941 INFO    ] 2026-10-25 17:02:09
[2026-10-25 17:02:10,192.192 INFO    ] 2026-10-25 17:02:10
[2026-10-25 17:02:10,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:02:10,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:02:10,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:02:10,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:02:10,570.570 INFO    ] time= 25/10/2026 17:02:10
[2026-10-25 17:02:10,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:02:10,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:02:10,723.723 INFO    ] No existing commands found in stream
[2026-10-25 17:02:15,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:02:15,755.755 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 17:02:18,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:02:18,903.903 INFO    ] Checking for system updates...
[2026-10-25 17:02:18,940.940 INFO    ] 200
[2026-10-25 17:02:18,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:18,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:19,000.000 INFO    ] No update needed
[2026-10-25 17:02:19,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 17:02:19,037.037 INFO    ] 200
[2026-10-25 17:02:19,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:19,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:02:19,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:19,140.140 INFO    ] No camera update needed
[2026-10-25 17:02:19,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:02:19,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:02:19,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:02:19,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:02:21,198.198 INFO    ] ================================================
[2026-10-25 17:02:21,213.213 INFO    ] Launching Daemon at Sun Oct 25 17:02:21 IST 2026
[2026-10-25 17:02:21,224.224 INFO    ] ================================================
[2026-10-25 17:02:21,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:02:21
[2026-10-25 17:02:22,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:02:22,660.660 INFO    ] Initializing speech engine...
[2026-10-25 17:02:22,667.667 INFO    ] 2026-10-25 17:02:22
[2026-10-25 17:02:22,926.926 INFO    ] 2026-10-25 17:02:22
[2026-10-25 17:02:22,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:02:23,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:02:23,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:02:23,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:02:23,394.394 INFO    ] time= 25/10/2026 17:02:23
[2026-10-25 17:02:23,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:02:23,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:02:23,560.560 INFO    ] No existing commands found in stream
[2026-10-25 17:02:28,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:02:28,596.596 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 17:02:31,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:02:31,873.873 INFO    ] Checking for system updates...
[2026-10-25 17:02:31,913.913 INFO    ] 200
[2026-10-25 17:02:31,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:31,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:02:31,975.975 INFO    ] No update needed
[2026-10-25 17:02:31,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 17:02:32,016.016 INFO    ] 200
[2026-10-25 17:02:32,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:32,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:02:32,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:02:32,119.119 INFO    ] No camera update needed
[2026-10-25 17:02:32,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:02:32,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:02:32,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:02:32,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:02:34,178.178 INFO    ] ================================================
[2026-10-25 17:02:34,193.193 INFO    ] Launching Daemon at Sun Oct 25 17:02:34 IST 2026
[2026-10-25 17:02:34,203.203 INFO    ] ================================================
[2026-10-25 17:02:34,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:02:34
[2026-10-25 17:02:35,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:02:35,642.642 INFO    ] Initializing speech engine...
[2026-10-25 17:02:35,666.666 INFO    ] 2026-10-25 17:02:35
[2026-10-25 17:02:35,935.935 INFO    ] 2026-10-25 17:02:35
[2026-10-25 17:02:35,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:02:37,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:02:37,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:02:37,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:02:37,256.256 INFO    ] time= 25/10/2026 17:02:37
[2026-10-25 17:02:37,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:02:37,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:02:37,375.375 INFO    ] No existing commands found in stream
[2026-10-25 17:02:42,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:02:42,403.403 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 17:02:44,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:02:44,574.574 INFO    ] Checking for system updates...
[2026-10-25 17:02:44,610.610 INFO    ] 200
[2026-10-25 17:02:44,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:44,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:02:44,670.670 INFO    ] No update needed
[2026-10-25 17:02:44,672.672 INFO    ] Checking for camera pi updates...
[2026-10-25 17:02:44,707.707 INFO    ] 200
[2026-10-25 17:02:44,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:44,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:02:44,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:02:44,809.809 INFO    ] No camera update needed
[2026-10-25 17:02:44,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:02:44,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:02:44,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:02:44,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:02:46,866.866 INFO    ] ================================================
[2026-10-25 17:02:46,884.884 INFO    ] Launching Daemon at Sun Oct 25 17:02:46 IST 2026
[2026-10-25 17:02:46,894.894 INFO    ] ================================================
[2026-10-25 17:02:47,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:02:47
[2026-10-25 17:02:48,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:02:48,341.341 INFO    ] Initializing speech engine...
[2026-10-25 17:02:48,351.351 INFO    ] 2026-10-25 17:02:48
[2026-10-25 17:02:48,607.607 INFO    ] 2026-10-25 17:02:48
[2026-10-25 17:02:48,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:02:48,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:02:48,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:02:48,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:02:48,983.983 INFO    ] time= 25/10/2026 17:02:48
[2026-10-25 17:02:48,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:02:49,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:02:49,156.156 INFO    ] No existing commands found in stream
[2026-10-25 17:02:54,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:02:54,194.194 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 17:02:56,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:02:56,870.870 INFO    ] Checking for system updates...
[2026-10-25 17:02:56,908.908 INFO    ] 200
[2026-10-25 17:02:56,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:56,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:56,965.965 INFO    ] No update needed
[2026-10-25 17:02:56,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 17:02:57,003.003 INFO    ] 200
[2026-10-25 17:02:57,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:02:57,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:02:57,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:02:57,102.102 INFO    ] No camera update needed
[2026-10-25 17:02:57,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:02:57,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:02:57,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:02:57,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:02:59,159.159 INFO    ] ================================================
[2026-10-25 17:02:59,174.174 INFO    ] Launching Daemon at Sun Oct 25 17:02:59 IST 2026
[2026-10-25 17:02:59,185.185 INFO    ] ================================================
[2026-10-25 17:02:59,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:02:59
[2026-10-25 17:03:00,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:03:00,656.656 INFO    ] Initializing speech engine...
[2026-10-25 17:03:00,672.672 INFO    ] 2026-10-25 17:03:00
[2026-10-25 17:03:00,926.926 INFO    ] 2026-10-25 17:03:00
[2026-10-25 17:03:00,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:03:01,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:03:01,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:03:01,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:03:01,368.368 INFO    ] time= 25/10/2026 17:03:01
[2026-10-25 17:03:01,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:03:01,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:03:01,572.572 INFO    ] No existing commands found in stream
[2026-10-25 17:03:06,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:03:06,628.628 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 17:03:10,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:03:10,717.717 INFO    ] Checking for system updates...
[2026-10-25 17:03:10,758.758 INFO    ] 200
[2026-10-25 17:03:10,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:10,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:10,818.818 INFO    ] No update needed
[2026-10-25 17:03:10,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 17:03:10,856.856 INFO    ] 200
[2026-10-25 17:03:10,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:10,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:03:10,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:10,973.973 INFO    ] No camera update needed
[2026-10-25 17:03:10,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:03:10,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:03:10,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:03:10,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:03:13,031.031 INFO    ] ================================================
[2026-10-25 17:03:13,046.046 INFO    ] Launching Daemon at Sun Oct 25 17:03:13 IST 2026
[2026-10-25 17:03:13,057.057 INFO    ] ================================================
[2026-10-25 17:03:13,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:03:13
[2026-10-25 17:03:14,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:03:14,501.501 INFO    ] Initializing speech engine...
[2026-10-25 17:03:14,515.515 INFO    ] 2026-10-25 17:03:14
[2026-10-25 17:03:14,787.787 INFO    ] 2026-10-25 17:03:14
[2026-10-25 17:03:14,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:03:15,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:03:15,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:03:15,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:03:15,297.297 INFO    ] time= 25/10/2026 17:03:15
[2026-10-25 17:03:15,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:03:15,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:03:15,462.462 INFO    ] No existing commands found in stream
[2026-10-25 17:03:20,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:03:20,477.477 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 17:03:23,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:03:23,102.102 INFO    ] Checking for system updates...
[2026-10-25 17:03:23,143.143 INFO    ] 200
[2026-10-25 17:03:23,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:23,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:03:23,212.212 INFO    ] No update needed
[2026-10-25 17:03:23,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 17:03:23,250.250 INFO    ] 200
[2026-10-25 17:03:23,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:23,295.295 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:03:23,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:03:23,354.354 INFO    ] No camera update needed
[2026-10-25 17:03:23,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:03:23,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:03:23,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:03:23,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:03:25,411.411 INFO    ] ================================================
[2026-10-25 17:03:25,425.425 INFO    ] Launching Daemon at Sun Oct 25 17:03:25 IST 2026
[2026-10-25 17:03:25,436.436 INFO    ] ================================================
[2026-10-25 17:03:26,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:03:26
[2026-10-25 17:03:26,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:03:26,831.831 INFO    ] Initializing speech engine...
[2026-10-25 17:03:26,856.856 INFO    ] 2026-10-25 17:03:26
[2026-10-25 17:03:27,112.112 INFO    ] 2026-10-25 17:03:27
[2026-10-25 17:03:27,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:03:27,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:03:27,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:03:27,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:03:27,555.555 INFO    ] time= 25/10/2026 17:03:27
[2026-10-25 17:03:27,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:03:27,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:03:27,800.800 INFO    ] No existing commands found in stream
[2026-10-25 17:03:32,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:03:32,825.825 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 17:03:37,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:03:37,911.911 INFO    ] Checking for system updates...
[2026-10-25 17:03:37,946.946 INFO    ] 200
[2026-10-25 17:03:37,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:38,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:38,009.009 INFO    ] No update needed
[2026-10-25 17:03:38,012.012 INFO    ] Checking for camera pi updates...
[2026-10-25 17:03:38,045.045 INFO    ] 200
[2026-10-25 17:03:38,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:38,088.088 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:03:38,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:38,216.216 INFO    ] No camera update needed
[2026-10-25 17:03:38,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:03:38,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:03:38,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:03:38,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:03:40,270.270 INFO    ] ================================================
[2026-10-25 17:03:40,284.284 INFO    ] Launching Daemon at Sun Oct 25 17:03:40 IST 2026
[2026-10-25 17:03:40,295.295 INFO    ] ================================================
[2026-10-25 17:03:40,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:03:40
[2026-10-25 17:03:41,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:03:41,690.690 INFO    ] Initializing speech engine...
[2026-10-25 17:03:41,713.713 INFO    ] 2026-10-25 17:03:41
[2026-10-25 17:03:41,968.968 INFO    ] 2026-10-25 17:03:41
[2026-10-25 17:03:42,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:03:42,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:03:42,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:03:42,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:03:42,344.344 INFO    ] time= 25/10/2026 17:03:42
[2026-10-25 17:03:42,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:03:42,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:03:42,504.504 INFO    ] No existing commands found in stream
[2026-10-25 17:03:47,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:03:47,532.532 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 17:03:51,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:03:51,652.652 INFO    ] Checking for system updates...
[2026-10-25 17:03:51,688.688 INFO    ] 200
[2026-10-25 17:03:51,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:51,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:51,749.749 INFO    ] No update needed
[2026-10-25 17:03:51,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 17:03:51,786.786 INFO    ] 200
[2026-10-25 17:03:51,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:03:51,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:03:51,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:03:51,998.998 INFO    ] No camera update needed
[2026-10-25 17:03:52,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:03:52,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:03:52,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:03:52,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:03:54,053.053 INFO    ] ================================================
[2026-10-25 17:03:54,068.068 INFO    ] Launching Daemon at Sun Oct 25 17:03:54 IST 2026
[2026-10-25 17:03:54,078.078 INFO    ] ================================================
[2026-10-25 17:03:54,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:03:54
[2026-10-25 17:03:55,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:03:55,532.532 INFO    ] Initializing speech engine...
[2026-10-25 17:03:55,539.539 INFO    ] 2026-10-25 17:03:55
[2026-10-25 17:03:55,798.798 INFO    ] 2026-10-25 17:03:55
[2026-10-25 17:03:55,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:03:56,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:03:56,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:03:56,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:03:56,282.282 INFO    ] time= 25/10/2026 17:03:56
[2026-10-25 17:03:56,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:03:56,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:03:56,475.475 INFO    ] No existing commands found in stream
[2026-10-25 17:04:01,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:04:01,505.505 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 17:04:02,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:04:02,939.939 INFO    ] Checking for system updates...
[2026-10-25 17:04:02,986.986 INFO    ] 200
[2026-10-25 17:04:02,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:03,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:03,074.074 INFO    ] No update needed
[2026-10-25 17:04:03,078.078 INFO    ] Checking for camera pi updates...
[2026-10-25 17:04:03,132.132 INFO    ] 200
[2026-10-25 17:04:03,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:03,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:04:03,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:03,255.255 INFO    ] No camera update needed
[2026-10-25 17:04:03,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:04:03,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:04:03,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:04:03,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:04:05,315.315 INFO    ] ================================================
[2026-10-25 17:04:05,330.330 INFO    ] Launching Daemon at Sun Oct 25 17:04:05 IST 2026
[2026-10-25 17:04:05,341.341 INFO    ] ================================================
[2026-10-25 17:04:05,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:04:05
[2026-10-25 17:04:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:04:06,789.789 INFO    ] Initializing speech engine...
[2026-10-25 17:04:06,795.795 INFO    ] 2026-10-25 17:04:06
[2026-10-25 17:04:07,044.044 INFO    ] 2026-10-25 17:04:07
[2026-10-25 17:04:07,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:04:10,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:04:10,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:04:10,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:04:10,757.757 INFO    ] time= 25/10/2026 17:04:10
[2026-10-25 17:04:10,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:04:10,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:04:10,812.812 INFO    ] No existing commands found in stream
[2026-10-25 17:04:15,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:04:15,824.824 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 17:04:17,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:04:17,951.951 INFO    ] Checking for system updates...
[2026-10-25 17:04:17,992.992 INFO    ] 200
[2026-10-25 17:04:17,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:18,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:18,051.051 INFO    ] No update needed
[2026-10-25 17:04:18,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 17:04:18,091.091 INFO    ] 200
[2026-10-25 17:04:18,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:18,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:04:18,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:18,200.200 INFO    ] No camera update needed
[2026-10-25 17:04:18,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:04:18,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:04:18,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:04:18,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:04:20,255.255 INFO    ] ================================================
[2026-10-25 17:04:20,271.271 INFO    ] Launching Daemon at Sun Oct 25 17:04:20 IST 2026
[2026-10-25 17:04:20,282.282 INFO    ] ================================================
[2026-10-25 17:04:20,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:04:20
[2026-10-25 17:04:21,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:04:21,716.716 INFO    ] Initializing speech engine...
[2026-10-25 17:04:21,740.740 INFO    ] 2026-10-25 17:04:21
[2026-10-25 17:04:22,053.053 INFO    ] 2026-10-25 17:04:22
[2026-10-25 17:04:22,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:04:22,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:04:22,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:04:22,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:04:22,515.515 INFO    ] time= 25/10/2026 17:04:22
[2026-10-25 17:04:22,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:04:22,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:04:22,682.682 INFO    ] No existing commands found in stream
[2026-10-25 17:04:27,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:04:27,697.697 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 17:04:31,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:04:31,701.701 INFO    ] Checking for system updates...
[2026-10-25 17:04:31,739.739 INFO    ] 200
[2026-10-25 17:04:31,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:31,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:04:31,799.799 INFO    ] No update needed
[2026-10-25 17:04:31,802.802 INFO    ] Checking for camera pi updates...
[2026-10-25 17:04:31,840.840 INFO    ] 200
[2026-10-25 17:04:31,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:31,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:04:31,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:04:31,944.944 INFO    ] No camera update needed
[2026-10-25 17:04:31,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:04:31,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:04:31,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:04:31,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:04:34,009.009 INFO    ] ================================================
[2026-10-25 17:04:34,024.024 INFO    ] Launching Daemon at Sun Oct 25 17:04:34 IST 2026
[2026-10-25 17:04:34,035.035 INFO    ] ================================================
[2026-10-25 17:04:34,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:04:34
[2026-10-25 17:04:35,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:04:35,498.498 INFO    ] Initializing speech engine...
[2026-10-25 17:04:35,508.508 INFO    ] 2026-10-25 17:04:35
[2026-10-25 17:04:35,771.771 INFO    ] 2026-10-25 17:04:35
[2026-10-25 17:04:35,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:04:36,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:04:36,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:04:36,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:04:36,219.219 INFO    ] time= 25/10/2026 17:04:36
[2026-10-25 17:04:36,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:04:36,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:04:36,373.373 INFO    ] No existing commands found in stream
[2026-10-25 17:04:41,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:04:41,388.388 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 17:04:43,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:04:43,687.687 INFO    ] Checking for system updates...
[2026-10-25 17:04:43,723.723 INFO    ] 200
[2026-10-25 17:04:43,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:43,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:43,781.781 INFO    ] No update needed
[2026-10-25 17:04:43,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 17:04:43,817.817 INFO    ] 200
[2026-10-25 17:04:43,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:43,860.860 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:04:43,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:04:43,909.909 INFO    ] No camera update needed
[2026-10-25 17:04:43,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:04:43,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:04:43,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:04:43,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:04:45,967.967 INFO    ] ================================================
[2026-10-25 17:04:45,983.983 INFO    ] Launching Daemon at Sun Oct 25 17:04:45 IST 2026
[2026-10-25 17:04:45,994.994 INFO    ] ================================================
[2026-10-25 17:04:46,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:04:46
[2026-10-25 17:04:47,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:04:47,627.627 INFO    ] Initializing speech engine...
[2026-10-25 17:04:47,640.640 INFO    ] 2026-10-25 17:04:47
[2026-10-25 17:04:47,924.924 INFO    ] 2026-10-25 17:04:47
[2026-10-25 17:04:47,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:04:48,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:04:48,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:04:48,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:04:48,386.386 INFO    ] time= 25/10/2026 17:04:48
[2026-10-25 17:04:48,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:04:48,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:04:48,542.542 INFO    ] No existing commands found in stream
[2026-10-25 17:04:53,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:04:53,567.567 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 17:04:56,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:04:56,885.885 INFO    ] Checking for system updates...
[2026-10-25 17:04:56,924.924 INFO    ] 200
[2026-10-25 17:04:56,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:56,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:04:56,990.990 INFO    ] No update needed
[2026-10-25 17:04:56,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 17:04:57,032.032 INFO    ] 200
[2026-10-25 17:04:57,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:04:57,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:04:57,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:04:57,163.163 INFO    ] No camera update needed
[2026-10-25 17:04:57,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:04:57,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:04:57,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:04:57,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:04:59,228.228 INFO    ] ================================================
[2026-10-25 17:04:59,243.243 INFO    ] Launching Daemon at Sun Oct 25 17:04:59 IST 2026
[2026-10-25 17:04:59,253.253 INFO    ] ================================================
[2026-10-25 17:04:59,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:04:59
[2026-10-25 17:05:00,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:05:00,778.778 INFO    ] Initializing speech engine...
[2026-10-25 17:05:00,790.790 INFO    ] 2026-10-25 17:05:00
[2026-10-25 17:05:01,102.102 INFO    ] 2026-10-25 17:05:01
[2026-10-25 17:05:01,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:05:01,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:05:01,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:05:01,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:05:01,624.624 INFO    ] time= 25/10/2026 17:05:01
[2026-10-25 17:05:01,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:05:01,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:05:01,790.790 INFO    ] No existing commands found in stream
[2026-10-25 17:05:06,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:05:06,804.804 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 17:05:12,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:05:12,631.631 INFO    ] Checking for system updates...
[2026-10-25 17:05:12,673.673 INFO    ] 200
[2026-10-25 17:05:12,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:12,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:05:12,749.749 INFO    ] No update needed
[2026-10-25 17:05:12,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 17:05:12,788.788 INFO    ] 200
[2026-10-25 17:05:12,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:12,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:05:12,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:05:12,902.902 INFO    ] No camera update needed
[2026-10-25 17:05:12,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:05:12,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:05:12,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:05:12,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:05:14,973.973 INFO    ] ================================================
[2026-10-25 17:05:14,988.988 INFO    ] Launching Daemon at Sun Oct 25 17:05:14 IST 2026
[2026-10-25 17:05:15,999.999 INFO    ] ================================================
[2026-10-25 17:05:15,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:05:15
[2026-10-25 17:05:16,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:05:16,432.432 INFO    ] Initializing speech engine...
[2026-10-25 17:05:16,447.447 INFO    ] 2026-10-25 17:05:16
[2026-10-25 17:05:16,701.701 INFO    ] 2026-10-25 17:05:16
[2026-10-25 17:05:16,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:05:16,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:05:16,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:05:17,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:05:17,196.196 INFO    ] time= 25/10/2026 17:05:17
[2026-10-25 17:05:17,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:05:17,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:05:17,298.298 INFO    ] No existing commands found in stream
[2026-10-25 17:05:22,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:05:22,317.317 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 17:05:25,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:05:25,478.478 INFO    ] Checking for system updates...
[2026-10-25 17:05:25,529.529 INFO    ] 200
[2026-10-25 17:05:25,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 17:05:25,535.535 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 17:05:25,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 17:05:25,581.581 INFO    ] 200
[2026-10-25 17:05:25,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 17:05:25,588.588 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 17:05:25,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:05:25,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:05:25,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:05:25,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:05:27,653.653 INFO    ] ================================================
[2026-10-25 17:05:27,667.667 INFO    ] Launching Daemon at Sun Oct 25 17:05:27 IST 2026
[2026-10-25 17:05:27,680.680 INFO    ] ================================================
[2026-10-25 17:05:28,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:05:28
[2026-10-25 17:05:29,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:05:29,339.339 INFO    ] Initializing speech engine...
[2026-10-25 17:05:29,350.350 INFO    ] 2026-10-25 17:05:29
[2026-10-25 17:05:29,665.665 INFO    ] 2026-10-25 17:05:29
[2026-10-25 17:05:29,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:05:29,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:05:29,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:05:30,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:05:30,175.175 INFO    ] time= 25/10/2026 17:05:30
[2026-10-25 17:05:30,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:05:30,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:05:30,338.338 INFO    ] No existing commands found in stream
[2026-10-25 17:05:35,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:05:35,372.372 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 17:05:39,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:05:39,345.345 INFO    ] Checking for system updates...
[2026-10-25 17:05:39,383.383 INFO    ] 200
[2026-10-25 17:05:39,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:39,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:05:39,441.441 INFO    ] No update needed
[2026-10-25 17:05:39,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 17:05:39,477.477 INFO    ] 200
[2026-10-25 17:05:39,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:39,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:05:39,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:05:39,580.580 INFO    ] No camera update needed
[2026-10-25 17:05:39,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:05:39,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:05:39,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:05:39,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:05:41,635.635 INFO    ] ================================================
[2026-10-25 17:05:41,651.651 INFO    ] Launching Daemon at Sun Oct 25 17:05:41 IST 2026
[2026-10-25 17:05:41,661.661 INFO    ] ================================================
[2026-10-25 17:05:42,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:05:42
[2026-10-25 17:05:42,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:05:43,064.064 INFO    ] Initializing speech engine...
[2026-10-25 17:05:43,076.076 INFO    ] 2026-10-25 17:05:43
[2026-10-25 17:05:43,340.340 INFO    ] 2026-10-25 17:05:43
[2026-10-25 17:05:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:05:43,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:05:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:05:43,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:05:43,824.824 INFO    ] time= 25/10/2026 17:05:43
[2026-10-25 17:05:43,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:05:43,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:05:43,963.963 INFO    ] No existing commands found in stream
[2026-10-25 17:05:48,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:05:48,977.977 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 17:05:52,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:05:52,763.763 INFO    ] Checking for system updates...
[2026-10-25 17:05:52,799.799 INFO    ] 200
[2026-10-25 17:05:52,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:52,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:05:52,858.858 INFO    ] No update needed
[2026-10-25 17:05:52,860.860 INFO    ] Checking for camera pi updates...
[2026-10-25 17:05:52,894.894 INFO    ] 200
[2026-10-25 17:05:52,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:05:52,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:05:52,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:05:52,985.985 INFO    ] No camera update needed
[2026-10-25 17:05:52,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:05:52,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:05:52,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:05:53,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:05:55,042.042 INFO    ] ================================================
[2026-10-25 17:05:55,058.058 INFO    ] Launching Daemon at Sun Oct 25 17:05:55 IST 2026
[2026-10-25 17:05:55,069.069 INFO    ] ================================================
[2026-10-25 17:05:55,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:05:55
[2026-10-25 17:05:56,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:05:56,751.751 INFO    ] Initializing speech engine...
[2026-10-25 17:05:56,767.767 INFO    ] 2026-10-25 17:05:56
[2026-10-25 17:05:57,082.082 INFO    ] 2026-10-25 17:05:57
[2026-10-25 17:05:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:05:57,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:05:57,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:05:57,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:05:57,604.604 INFO    ] time= 25/10/2026 17:05:57
[2026-10-25 17:05:57,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:05:57,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:05:57,756.756 INFO    ] No existing commands found in stream
[2026-10-25 17:06:02,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:06:02,788.788 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 17:06:05,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:06:05,486.486 INFO    ] Checking for system updates...
[2026-10-25 17:06:05,524.524 INFO    ] 200
[2026-10-25 17:06:05,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:05,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:05,585.585 INFO    ] No update needed
[2026-10-25 17:06:05,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 17:06:05,628.628 INFO    ] 200
[2026-10-25 17:06:05,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:05,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:06:05,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:05,728.728 INFO    ] No camera update needed
[2026-10-25 17:06:05,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:06:05,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:06:05,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:06:05,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:06:07,789.789 INFO    ] ================================================
[2026-10-25 17:06:07,805.805 INFO    ] Launching Daemon at Sun Oct 25 17:06:07 IST 2026
[2026-10-25 17:06:07,816.816 INFO    ] ================================================
[2026-10-25 17:06:08,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:06:08
[2026-10-25 17:06:08,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:06:09,292.292 INFO    ] Initializing speech engine...
[2026-10-25 17:06:09,299.299 INFO    ] 2026-10-25 17:06:09
[2026-10-25 17:06:09,611.611 INFO    ] 2026-10-25 17:06:09
[2026-10-25 17:06:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:06:09,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:06:09,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:06:10,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:06:10,137.137 INFO    ] time= 25/10/2026 17:06:10
[2026-10-25 17:06:10,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:06:10,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:06:10,294.294 INFO    ] No existing commands found in stream
[2026-10-25 17:06:15,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:06:15,328.328 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 17:06:17,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:06:17,714.714 INFO    ] Checking for system updates...
[2026-10-25 17:06:17,750.750 INFO    ] 200
[2026-10-25 17:06:17,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:17,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:17,809.809 INFO    ] No update needed
[2026-10-25 17:06:17,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 17:06:17,849.849 INFO    ] 200
[2026-10-25 17:06:17,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:17,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:06:17,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:17,953.953 INFO    ] No camera update needed
[2026-10-25 17:06:17,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:06:17,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:06:17,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:06:17,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:06:20,008.008 INFO    ] ================================================
[2026-10-25 17:06:20,023.023 INFO    ] Launching Daemon at Sun Oct 25 17:06:20 IST 2026
[2026-10-25 17:06:20,034.034 INFO    ] ================================================
[2026-10-25 17:06:20,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:06:20
[2026-10-25 17:06:21,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:06:21,437.437 INFO    ] Initializing speech engine...
[2026-10-25 17:06:21,453.453 INFO    ] 2026-10-25 17:06:21
[2026-10-25 17:06:21,704.704 INFO    ] 2026-10-25 17:06:21
[2026-10-25 17:06:21,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:06:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:06:22,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:06:22,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:06:22,172.172 INFO    ] time= 25/10/2026 17:06:22
[2026-10-25 17:06:22,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:06:22,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:06:22,329.329 INFO    ] No existing commands found in stream
[2026-10-25 17:06:27,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:06:27,347.347 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 17:06:30,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:06:30,240.240 INFO    ] Checking for system updates...
[2026-10-25 17:06:30,276.276 INFO    ] 200
[2026-10-25 17:06:30,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:30,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:30,333.333 INFO    ] No update needed
[2026-10-25 17:06:30,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 17:06:30,379.379 INFO    ] 200
[2026-10-25 17:06:30,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:30,430.430 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:06:30,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:30,499.499 INFO    ] No camera update needed
[2026-10-25 17:06:30,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:06:30,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:06:30,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:06:30,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:06:32,559.559 INFO    ] ================================================
[2026-10-25 17:06:32,575.575 INFO    ] Launching Daemon at Sun Oct 25 17:06:32 IST 2026
[2026-10-25 17:06:32,588.588 INFO    ] ================================================
[2026-10-25 17:06:33,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:06:33
[2026-10-25 17:06:33,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:06:34,008.008 INFO    ] Initializing speech engine...
[2026-10-25 17:06:34,014.014 INFO    ] 2026-10-25 17:06:34
[2026-10-25 17:06:34,315.315 INFO    ] 2026-10-25 17:06:34
[2026-10-25 17:06:34,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:06:34,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:06:34,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:06:34,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:06:34,714.714 INFO    ] time= 25/10/2026 17:06:34
[2026-10-25 17:06:34,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:06:34,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:06:34,840.840 INFO    ] No existing commands found in stream
[2026-10-25 17:06:39,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:06:39,856.856 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 17:06:40,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:06:40,682.682 INFO    ] Checking for system updates...
[2026-10-25 17:06:40,719.719 INFO    ] 200
[2026-10-25 17:06:40,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:40,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:06:40,777.777 INFO    ] No update needed
[2026-10-25 17:06:40,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 17:06:40,813.813 INFO    ] 200
[2026-10-25 17:06:40,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:40,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:06:40,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:06:40,928.928 INFO    ] No camera update needed
[2026-10-25 17:06:40,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:06:40,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:06:40,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:06:40,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:06:42,984.984 INFO    ] ================================================
[2026-10-25 17:06:43,999.999 INFO    ] Launching Daemon at Sun Oct 25 17:06:42 IST 2026
[2026-10-25 17:06:43,010.010 INFO    ] ================================================
[2026-10-25 17:06:43,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:06:43
[2026-10-25 17:06:44,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:06:44,466.466 INFO    ] Initializing speech engine...
[2026-10-25 17:06:44,475.475 INFO    ] 2026-10-25 17:06:44
[2026-10-25 17:06:44,730.730 INFO    ] 2026-10-25 17:06:44
[2026-10-25 17:06:44,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:06:45,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:06:45,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:06:45,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:06:45,943.943 INFO    ] time= 25/10/2026 17:06:45
[2026-10-25 17:06:45,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:06:45,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:06:46,065.065 INFO    ] No existing commands found in stream
[2026-10-25 17:06:51,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:06:51,098.098 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 17:06:54,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:06:54,704.704 INFO    ] Checking for system updates...
[2026-10-25 17:06:54,739.739 INFO    ] 200
[2026-10-25 17:06:54,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:54,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:54,800.800 INFO    ] No update needed
[2026-10-25 17:06:54,802.802 INFO    ] Checking for camera pi updates...
[2026-10-25 17:06:54,837.837 INFO    ] 200
[2026-10-25 17:06:54,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:06:54,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:06:54,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:06:54,940.940 INFO    ] No camera update needed
[2026-10-25 17:06:54,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:06:54,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:06:54,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:06:54,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:06:57,996.996 INFO    ] ================================================
[2026-10-25 17:06:57,012.012 INFO    ] Launching Daemon at Sun Oct 25 17:06:57 IST 2026
[2026-10-25 17:06:57,023.023 INFO    ] ================================================
[2026-10-25 17:06:57,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:06:57
[2026-10-25 17:06:58,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:06:58,698.698 INFO    ] Initializing speech engine...
[2026-10-25 17:06:58,704.704 INFO    ] 2026-10-25 17:06:58
[2026-10-25 17:06:58,991.991 INFO    ] 2026-10-25 17:06:58
[2026-10-25 17:06:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:06:59,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:06:59,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:06:59,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:06:59,525.525 INFO    ] time= 25/10/2026 17:06:59
[2026-10-25 17:06:59,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:06:59,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:06:59,682.682 INFO    ] No existing commands found in stream
[2026-10-25 17:07:04,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:07:04,709.709 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 17:07:09,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:07:09,059.059 INFO    ] Checking for system updates...
[2026-10-25 17:07:09,098.098 INFO    ] 200
[2026-10-25 17:07:09,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:09,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:07:09,158.158 INFO    ] No update needed
[2026-10-25 17:07:09,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 17:07:09,197.197 INFO    ] 200
[2026-10-25 17:07:09,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:09,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:07:09,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:07:09,310.310 INFO    ] No camera update needed
[2026-10-25 17:07:09,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:07:09,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:07:09,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:07:09,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:07:11,371.371 INFO    ] ================================================
[2026-10-25 17:07:11,387.387 INFO    ] Launching Daemon at Sun Oct 25 17:07:11 IST 2026
[2026-10-25 17:07:11,399.399 INFO    ] ================================================
[2026-10-25 17:07:11,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:07:11
[2026-10-25 17:07:12,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:07:12,851.851 INFO    ] Initializing speech engine...
[2026-10-25 17:07:12,857.857 INFO    ] 2026-10-25 17:07:12
[2026-10-25 17:07:13,133.133 INFO    ] 2026-10-25 17:07:13
[2026-10-25 17:07:13,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:07:16,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:07:16,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:07:16,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:07:16,408.408 INFO    ] time= 25/10/2026 17:07:16
[2026-10-25 17:07:16,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:07:16,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:07:16,467.467 INFO    ] No existing commands found in stream
[2026-10-25 17:07:21,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:07:21,479.479 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 17:07:23,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:07:23,445.445 INFO    ] Checking for system updates...
[2026-10-25 17:07:23,482.482 INFO    ] 200
[2026-10-25 17:07:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:23,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:07:23,540.540 INFO    ] No update needed
[2026-10-25 17:07:23,543.543 INFO    ] Checking for camera pi updates...
[2026-10-25 17:07:23,577.577 INFO    ] 200
[2026-10-25 17:07:23,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:23,627.627 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:07:23,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:07:23,700.700 INFO    ] No camera update needed
[2026-10-25 17:07:23,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:07:23,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:07:23,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:07:23,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:07:25,759.759 INFO    ] ================================================
[2026-10-25 17:07:25,775.775 INFO    ] Launching Daemon at Sun Oct 25 17:07:25 IST 2026
[2026-10-25 17:07:25,787.787 INFO    ] ================================================
[2026-10-25 17:07:26,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:07:26
[2026-10-25 17:07:26,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:07:27,213.213 INFO    ] Initializing speech engine...
[2026-10-25 17:07:27,230.230 INFO    ] 2026-10-25 17:07:27
[2026-10-25 17:07:27,494.494 INFO    ] 2026-10-25 17:07:27
[2026-10-25 17:07:27,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:07:27,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:07:27,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:07:27,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:07:28,036.036 INFO    ] time= 25/10/2026 17:07:27
[2026-10-25 17:07:28,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:07:28,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:07:28,241.241 INFO    ] No existing commands found in stream
[2026-10-25 17:07:33,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:07:33,260.260 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 17:07:34,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:07:34,629.629 INFO    ] Checking for system updates...
[2026-10-25 17:07:34,666.666 INFO    ] 200
[2026-10-25 17:07:34,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:34,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:34,734.734 INFO    ] No update needed
[2026-10-25 17:07:34,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 17:07:34,772.772 INFO    ] 200
[2026-10-25 17:07:34,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:34,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:07:34,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:34,865.865 INFO    ] No camera update needed
[2026-10-25 17:07:34,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:07:34,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:07:34,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:07:34,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:07:36,919.919 INFO    ] ================================================
[2026-10-25 17:07:36,936.936 INFO    ] Launching Daemon at Sun Oct 25 17:07:36 IST 2026
[2026-10-25 17:07:36,947.947 INFO    ] ================================================
[2026-10-25 17:07:37,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:07:37
[2026-10-25 17:07:38,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:07:38,614.614 INFO    ] Initializing speech engine...
[2026-10-25 17:07:38,624.624 INFO    ] 2026-10-25 17:07:38
[2026-10-25 17:07:38,874.874 INFO    ] 2026-10-25 17:07:38
[2026-10-25 17:07:38,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:07:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:07:39,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:07:39,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:07:39,266.266 INFO    ] time= 25/10/2026 17:07:39
[2026-10-25 17:07:39,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:07:39,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:07:39,448.448 INFO    ] No existing commands found in stream
[2026-10-25 17:07:44,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:07:44,477.477 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 17:07:47,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:07:47,840.840 INFO    ] Checking for system updates...
[2026-10-25 17:07:47,878.878 INFO    ] 200
[2026-10-25 17:07:47,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:47,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:47,940.940 INFO    ] No update needed
[2026-10-25 17:07:47,943.943 INFO    ] Checking for camera pi updates...
[2026-10-25 17:07:47,978.978 INFO    ] 200
[2026-10-25 17:07:47,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:48,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:07:48,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:48,073.073 INFO    ] No camera update needed
[2026-10-25 17:07:48,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:07:48,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:07:48,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:07:48,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:07:50,130.130 INFO    ] ================================================
[2026-10-25 17:07:50,147.147 INFO    ] Launching Daemon at Sun Oct 25 17:07:50 IST 2026
[2026-10-25 17:07:50,158.158 INFO    ] ================================================
[2026-10-25 17:07:50,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:07:50
[2026-10-25 17:07:51,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:07:51,714.714 INFO    ] Initializing speech engine...
[2026-10-25 17:07:51,724.724 INFO    ] 2026-10-25 17:07:51
[2026-10-25 17:07:51,997.997 INFO    ] 2026-10-25 17:07:51
[2026-10-25 17:07:52,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:07:52,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:07:52,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:07:52,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:07:52,470.470 INFO    ] time= 25/10/2026 17:07:52
[2026-10-25 17:07:52,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:07:52,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:07:52,655.655 INFO    ] No existing commands found in stream
[2026-10-25 17:07:57,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:07:57,684.684 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 17:07:58,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:07:58,642.642 INFO    ] Checking for system updates...
[2026-10-25 17:07:58,685.685 INFO    ] 200
[2026-10-25 17:07:58,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:58,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:58,755.755 INFO    ] No update needed
[2026-10-25 17:07:58,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 17:07:58,793.793 INFO    ] 200
[2026-10-25 17:07:58,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:07:58,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:07:58,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:07:58,911.911 INFO    ] No camera update needed
[2026-10-25 17:07:58,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:07:58,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:07:58,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:07:58,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:08:00,972.972 INFO    ] ================================================
[2026-10-25 17:08:00,987.987 INFO    ] Launching Daemon at Sun Oct 25 17:08:00 IST 2026
[2026-10-25 17:08:01,999.999 INFO    ] ================================================
[2026-10-25 17:08:01,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:08:01
[2026-10-25 17:08:02,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:08:02,750.750 INFO    ] Initializing speech engine...
[2026-10-25 17:08:02,775.775 INFO    ] 2026-10-25 17:08:02
[2026-10-25 17:08:03,061.061 INFO    ] 2026-10-25 17:08:03
[2026-10-25 17:08:03,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:08:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:08:03,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:08:03,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:08:03,508.508 INFO    ] time= 25/10/2026 17:08:03
[2026-10-25 17:08:03,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:08:03,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:08:03,632.632 INFO    ] No existing commands found in stream
[2026-10-25 17:08:08,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:08:08,650.650 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 17:08:09,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:08:09,487.487 INFO    ] Checking for system updates...
[2026-10-25 17:08:09,524.524 INFO    ] 200
[2026-10-25 17:08:09,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:09,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:08:09,582.582 INFO    ] No update needed
[2026-10-25 17:08:09,584.584 INFO    ] Checking for camera pi updates...
[2026-10-25 17:08:09,618.618 INFO    ] 200
[2026-10-25 17:08:09,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:09,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:08:09,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:08:09,831.831 INFO    ] No camera update needed
[2026-10-25 17:08:09,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:08:09,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:08:09,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:08:09,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:08:11,886.886 INFO    ] ================================================
[2026-10-25 17:08:11,902.902 INFO    ] Launching Daemon at Sun Oct 25 17:08:11 IST 2026
[2026-10-25 17:08:11,913.913 INFO    ] ================================================
[2026-10-25 17:08:12,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:08:12
[2026-10-25 17:08:13,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:08:13,341.341 INFO    ] Initializing speech engine...
[2026-10-25 17:08:13,351.351 INFO    ] 2026-10-25 17:08:13
[2026-10-25 17:08:13,596.596 INFO    ] 2026-10-25 17:08:13
[2026-10-25 17:08:13,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:08:13,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:08:13,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:08:13,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:08:13,964.964 INFO    ] time= 25/10/2026 17:08:13
[2026-10-25 17:08:13,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:08:14,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:08:14,123.123 INFO    ] No existing commands found in stream
[2026-10-25 17:08:19,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:08:19,153.153 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 17:08:20,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:08:20,697.697 INFO    ] Checking for system updates...
[2026-10-25 17:08:20,733.733 INFO    ] 200
[2026-10-25 17:08:20,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:20,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:20,791.791 INFO    ] No update needed
[2026-10-25 17:08:20,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 17:08:20,826.826 INFO    ] 200
[2026-10-25 17:08:20,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:20,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:08:20,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:20,927.927 INFO    ] No camera update needed
[2026-10-25 17:08:20,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:08:20,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:08:20,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:08:20,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:08:22,984.984 INFO    ] ================================================
[2026-10-25 17:08:23,999.999 INFO    ] Launching Daemon at Sun Oct 25 17:08:22 IST 2026
[2026-10-25 17:08:23,010.010 INFO    ] ================================================
[2026-10-25 17:08:23,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:08:23
[2026-10-25 17:08:24,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:08:24,642.642 INFO    ] Initializing speech engine...
[2026-10-25 17:08:24,656.656 INFO    ] 2026-10-25 17:08:24
[2026-10-25 17:08:24,965.965 INFO    ] 2026-10-25 17:08:24
[2026-10-25 17:08:25,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:08:25,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:08:25,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:08:25,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:08:25,473.473 INFO    ] time= 25/10/2026 17:08:25
[2026-10-25 17:08:25,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:08:25,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:08:25,622.622 INFO    ] No existing commands found in stream
[2026-10-25 17:08:30,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:08:30,655.655 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 17:08:32,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:08:32,668.668 INFO    ] Checking for system updates...
[2026-10-25 17:08:32,709.709 INFO    ] 200
[2026-10-25 17:08:32,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:32,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:32,777.777 INFO    ] No update needed
[2026-10-25 17:08:32,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 17:08:32,823.823 INFO    ] 200
[2026-10-25 17:08:32,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:32,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:08:32,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:32,937.937 INFO    ] No camera update needed
[2026-10-25 17:08:32,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:08:32,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:08:32,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:08:32,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:08:35,995.995 INFO    ] ================================================
[2026-10-25 17:08:35,010.010 INFO    ] Launching Daemon at Sun Oct 25 17:08:35 IST 2026
[2026-10-25 17:08:35,021.021 INFO    ] ================================================
[2026-10-25 17:08:35,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:08:35
[2026-10-25 17:08:36,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:08:36,431.431 INFO    ] Initializing speech engine...
[2026-10-25 17:08:36,437.437 INFO    ] 2026-10-25 17:08:36
[2026-10-25 17:08:36,730.730 INFO    ] 2026-10-25 17:08:36
[2026-10-25 17:08:36,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:08:36,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:08:36,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:08:37,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:08:37,107.107 INFO    ] time= 25/10/2026 17:08:37
[2026-10-25 17:08:37,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:08:37,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:08:37,235.235 INFO    ] No existing commands found in stream
[2026-10-25 17:08:42,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:08:42,247.247 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 17:08:44,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:08:44,249.249 INFO    ] Checking for system updates...
[2026-10-25 17:08:44,286.286 INFO    ] 200
[2026-10-25 17:08:44,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:44,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:08:44,349.349 INFO    ] No update needed
[2026-10-25 17:08:44,352.352 INFO    ] Checking for camera pi updates...
[2026-10-25 17:08:44,386.386 INFO    ] 200
[2026-10-25 17:08:44,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:44,432.432 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:08:44,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:08:44,488.488 INFO    ] No camera update needed
[2026-10-25 17:08:44,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:08:44,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:08:44,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:08:44,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:08:46,544.544 INFO    ] ================================================
[2026-10-25 17:08:46,560.560 INFO    ] Launching Daemon at Sun Oct 25 17:08:46 IST 2026
[2026-10-25 17:08:46,571.571 INFO    ] ================================================
[2026-10-25 17:08:47,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:08:47
[2026-10-25 17:08:47,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:08:47,980.980 INFO    ] Initializing speech engine...
[2026-10-25 17:08:47,987.987 INFO    ] 2026-10-25 17:08:47
[2026-10-25 17:08:48,283.283 INFO    ] 2026-10-25 17:08:48
[2026-10-25 17:08:48,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:08:49,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:08:49,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:08:50,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:08:50,481.481 INFO    ] time= 25/10/2026 17:08:50
[2026-10-25 17:08:50,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:08:50,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:08:50,548.548 INFO    ] No existing commands found in stream
[2026-10-25 17:08:55,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:08:55,563.563 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 17:08:59,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:08:59,513.513 INFO    ] Checking for system updates...
[2026-10-25 17:08:59,549.549 INFO    ] 200
[2026-10-25 17:08:59,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:59,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:59,606.606 INFO    ] No update needed
[2026-10-25 17:08:59,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 17:08:59,646.646 INFO    ] 200
[2026-10-25 17:08:59,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:08:59,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:08:59,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:08:59,751.751 INFO    ] No camera update needed
[2026-10-25 17:08:59,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:08:59,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:08:59,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:08:59,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:09:01,823.823 INFO    ] ================================================
[2026-10-25 17:09:01,863.863 INFO    ] Launching Daemon at Sun Oct 25 17:09:01 IST 2026
[2026-10-25 17:09:01,887.887 INFO    ] ================================================
[2026-10-25 17:09:02,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:09:02
[2026-10-25 17:09:03,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:09:03,646.646 INFO    ] Initializing speech engine...
[2026-10-25 17:09:03,659.659 INFO    ] 2026-10-25 17:09:03
[2026-10-25 17:09:03,987.987 INFO    ] 2026-10-25 17:09:03
[2026-10-25 17:09:04,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:09:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:09:04,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:09:04,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:09:04,481.481 INFO    ] time= 25/10/2026 17:09:04
[2026-10-25 17:09:04,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:09:04,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:09:04,629.629 INFO    ] No existing commands found in stream
[2026-10-25 17:09:09,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:09:09,644.644 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 17:09:12,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:09:12,089.089 INFO    ] Checking for system updates...
[2026-10-25 17:09:12,127.127 INFO    ] 200
[2026-10-25 17:09:12,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:12,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:09:12,186.186 INFO    ] No update needed
[2026-10-25 17:09:12,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 17:09:12,224.224 INFO    ] 200
[2026-10-25 17:09:12,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:12,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:09:12,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:09:12,333.333 INFO    ] No camera update needed
[2026-10-25 17:09:12,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:09:12,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:09:12,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:09:12,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:09:14,392.392 INFO    ] ================================================
[2026-10-25 17:09:14,408.408 INFO    ] Launching Daemon at Sun Oct 25 17:09:14 IST 2026
[2026-10-25 17:09:14,419.419 INFO    ] ================================================
[2026-10-25 17:09:15,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:09:15
[2026-10-25 17:09:15,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:09:16,061.061 INFO    ] Initializing speech engine...
[2026-10-25 17:09:16,070.070 INFO    ] 2026-10-25 17:09:16
[2026-10-25 17:09:16,356.356 INFO    ] 2026-10-25 17:09:16
[2026-10-25 17:09:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:09:20,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:09:20,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:09:20,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:09:20,665.665 INFO    ] time= 25/10/2026 17:09:20
[2026-10-25 17:09:20,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:09:20,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:09:20,722.722 INFO    ] No existing commands found in stream
[2026-10-25 17:09:25,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:09:25,734.734 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 17:09:29,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:09:29,208.208 INFO    ] Checking for system updates...
[2026-10-25 17:09:29,244.244 INFO    ] 200
[2026-10-25 17:09:29,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:29,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:09:29,302.302 INFO    ] No update needed
[2026-10-25 17:09:29,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 17:09:29,339.339 INFO    ] 200
[2026-10-25 17:09:29,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:29,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:09:29,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:09:29,436.436 INFO    ] No camera update needed
[2026-10-25 17:09:29,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:09:29,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:09:29,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:09:29,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:09:31,492.492 INFO    ] ================================================
[2026-10-25 17:09:31,507.507 INFO    ] Launching Daemon at Sun Oct 25 17:09:31 IST 2026
[2026-10-25 17:09:31,518.518 INFO    ] ================================================
[2026-10-25 17:09:32,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:09:32
[2026-10-25 17:09:32,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:09:33,039.039 INFO    ] Initializing speech engine...
[2026-10-25 17:09:33,049.049 INFO    ] 2026-10-25 17:09:33
[2026-10-25 17:09:33,335.335 INFO    ] 2026-10-25 17:09:33
[2026-10-25 17:09:33,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:09:33,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:09:33,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:09:33,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:09:33,810.810 INFO    ] time= 25/10/2026 17:09:33
[2026-10-25 17:09:33,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:09:33,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:09:33,905.905 INFO    ] No existing commands found in stream
[2026-10-25 17:09:38,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:09:38,929.929 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 17:09:43,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:09:43,243.243 INFO    ] Checking for system updates...
[2026-10-25 17:09:43,279.279 INFO    ] 200
[2026-10-25 17:09:43,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:43,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:09:43,344.344 INFO    ] No update needed
[2026-10-25 17:09:43,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 17:09:43,383.383 INFO    ] 200
[2026-10-25 17:09:43,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:09:43,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:09:43,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:09:43,479.479 INFO    ] No camera update needed
[2026-10-25 17:09:43,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:09:43,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:09:43,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:09:43,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:09:45,534.534 INFO    ] ================================================
[2026-10-25 17:09:45,550.550 INFO    ] Launching Daemon at Sun Oct 25 17:09:45 IST 2026
[2026-10-25 17:09:45,561.561 INFO    ] ================================================
[2026-10-25 17:09:46,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:09:46
[2026-10-25 17:09:46,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:09:46,986.986 INFO    ] Initializing speech engine...
[2026-10-25 17:09:47,006.006 INFO    ] 2026-10-25 17:09:46
[2026-10-25 17:09:47,288.288 INFO    ] 2026-10-25 17:09:47
[2026-10-25 17:09:47,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:09:48,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:09:48,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:09:51,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:09:51,774.774 INFO    ] time= 25/10/2026 17:09:51
[2026-10-25 17:09:51,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:09:51,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:09:51,848.848 INFO    ] No existing commands found in stream
[2026-10-25 17:09:56,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:09:56,855.855 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 17:10:01,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:10:01,144.144 INFO    ] Checking for system updates...
[2026-10-25 17:10:01,179.179 INFO    ] 200
[2026-10-25 17:10:01,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:01,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:10:01,237.237 INFO    ] No update needed
[2026-10-25 17:10:01,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 17:10:01,274.274 INFO    ] 200
[2026-10-25 17:10:01,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:01,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:10:01,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:10:01,381.381 INFO    ] No camera update needed
[2026-10-25 17:10:01,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:10:01,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:10:01,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:10:01,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:10:03,478.478 INFO    ] ================================================
[2026-10-25 17:10:03,523.523 INFO    ] Launching Daemon at Sun Oct 25 17:10:03 IST 2026
[2026-10-25 17:10:03,544.544 INFO    ] ================================================
[2026-10-25 17:10:04,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:10:04
[2026-10-25 17:10:04,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:10:05,112.112 INFO    ] Initializing speech engine...
[2026-10-25 17:10:05,120.120 INFO    ] 2026-10-25 17:10:05
[2026-10-25 17:10:05,418.418 INFO    ] 2026-10-25 17:10:05
[2026-10-25 17:10:05,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:10:05,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:10:05,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:10:05,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:10:05,803.803 INFO    ] time= 25/10/2026 17:10:05
[2026-10-25 17:10:05,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:10:05,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:10:05,931.931 INFO    ] No existing commands found in stream
[2026-10-25 17:10:10,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:10:10,946.946 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 17:10:14,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:10:14,881.881 INFO    ] Checking for system updates...
[2026-10-25 17:10:14,921.921 INFO    ] 200
[2026-10-25 17:10:14,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:14,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:10:14,986.986 INFO    ] No update needed
[2026-10-25 17:10:14,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 17:10:15,026.026 INFO    ] 200
[2026-10-25 17:10:15,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:15,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:10:15,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:10:15,227.227 INFO    ] No camera update needed
[2026-10-25 17:10:15,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:10:15,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:10:15,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:10:15,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:10:17,284.284 INFO    ] ================================================
[2026-10-25 17:10:17,299.299 INFO    ] Launching Daemon at Sun Oct 25 17:10:17 IST 2026
[2026-10-25 17:10:17,309.309 INFO    ] ================================================
[2026-10-25 17:10:17,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:10:17
[2026-10-25 17:10:18,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:10:18,748.748 INFO    ] Initializing speech engine...
[2026-10-25 17:10:18,756.756 INFO    ] 2026-10-25 17:10:18
[2026-10-25 17:10:19,059.059 INFO    ] 2026-10-25 17:10:19
[2026-10-25 17:10:19,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:10:22,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:10:22,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:10:22,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:10:22,821.821 INFO    ] time= 25/10/2026 17:10:22
[2026-10-25 17:10:22,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:10:22,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:10:22,877.877 INFO    ] No existing commands found in stream
[2026-10-25 17:10:27,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:10:27,889.889 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 17:10:30,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:10:30,957.957 INFO    ] Checking for system updates...
[2026-10-25 17:10:30,993.993 INFO    ] 200
[2026-10-25 17:10:30,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:31,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:31,051.051 INFO    ] No update needed
[2026-10-25 17:10:31,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 17:10:31,092.092 INFO    ] 200
[2026-10-25 17:10:31,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:31,135.135 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:10:31,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:31,194.194 INFO    ] No camera update needed
[2026-10-25 17:10:31,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:10:31,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:10:31,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:10:31,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:10:33,250.250 INFO    ] ================================================
[2026-10-25 17:10:33,268.268 INFO    ] Launching Daemon at Sun Oct 25 17:10:33 IST 2026
[2026-10-25 17:10:33,279.279 INFO    ] ================================================
[2026-10-25 17:10:33,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:10:33
[2026-10-25 17:10:34,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:10:34,732.732 INFO    ] Initializing speech engine...
[2026-10-25 17:10:34,741.741 INFO    ] 2026-10-25 17:10:34
[2026-10-25 17:10:35,039.039 INFO    ] 2026-10-25 17:10:35
[2026-10-25 17:10:35,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:10:35,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:10:35,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:10:35,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:10:35,398.398 INFO    ] time= 25/10/2026 17:10:35
[2026-10-25 17:10:35,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:10:35,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:10:35,475.475 INFO    ] No existing commands found in stream
[2026-10-25 17:10:40,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:10:40,492.492 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 17:10:41,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:10:41,181.181 INFO    ] Checking for system updates...
[2026-10-25 17:10:41,219.219 INFO    ] 200
[2026-10-25 17:10:41,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:41,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:41,284.284 INFO    ] No update needed
[2026-10-25 17:10:41,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 17:10:41,322.322 INFO    ] 200
[2026-10-25 17:10:41,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:41,370.370 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:10:41,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:41,426.426 INFO    ] No camera update needed
[2026-10-25 17:10:41,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:10:41,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:10:41,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:10:41,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:10:43,481.481 INFO    ] ================================================
[2026-10-25 17:10:43,496.496 INFO    ] Launching Daemon at Sun Oct 25 17:10:43 IST 2026
[2026-10-25 17:10:43,507.507 INFO    ] ================================================
[2026-10-25 17:10:44,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:10:44
[2026-10-25 17:10:44,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:10:44,907.907 INFO    ] Initializing speech engine...
[2026-10-25 17:10:44,914.914 INFO    ] 2026-10-25 17:10:44
[2026-10-25 17:10:45,213.213 INFO    ] 2026-10-25 17:10:45
[2026-10-25 17:10:45,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:10:45,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:10:45,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:10:45,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:10:45,607.607 INFO    ] time= 25/10/2026 17:10:45
[2026-10-25 17:10:45,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:10:45,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:10:45,739.739 INFO    ] No existing commands found in stream
[2026-10-25 17:10:50,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:10:50,753.753 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 17:10:54,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:10:54,708.708 INFO    ] Checking for system updates...
[2026-10-25 17:10:54,743.743 INFO    ] 200
[2026-10-25 17:10:54,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:54,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:54,808.808 INFO    ] No update needed
[2026-10-25 17:10:54,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 17:10:54,848.848 INFO    ] 200
[2026-10-25 17:10:54,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:10:54,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:10:54,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:10:54,957.957 INFO    ] No camera update needed
[2026-10-25 17:10:54,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:10:54,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:10:54,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:10:54,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:10:57,012.012 INFO    ] ================================================
[2026-10-25 17:10:57,028.028 INFO    ] Launching Daemon at Sun Oct 25 17:10:57 IST 2026
[2026-10-25 17:10:57,039.039 INFO    ] ================================================
[2026-10-25 17:10:57,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:10:57
[2026-10-25 17:10:58,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:10:58,518.518 INFO    ] Initializing speech engine...
[2026-10-25 17:10:58,535.535 INFO    ] 2026-10-25 17:10:58
[2026-10-25 17:10:58,824.824 INFO    ] 2026-10-25 17:10:58
[2026-10-25 17:10:58,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:10:59,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:10:59,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:10:59,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:10:59,178.178 INFO    ] time= 25/10/2026 17:10:59
[2026-10-25 17:10:59,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:10:59,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:10:59,256.256 INFO    ] No existing commands found in stream
[2026-10-25 17:11:04,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:11:04,274.274 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 17:11:06,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:11:06,499.499 INFO    ] Checking for system updates...
[2026-10-25 17:11:06,535.535 INFO    ] 200
[2026-10-25 17:11:06,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:06,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:06,600.600 INFO    ] No update needed
[2026-10-25 17:11:06,602.602 INFO    ] Checking for camera pi updates...
[2026-10-25 17:11:06,636.636 INFO    ] 200
[2026-10-25 17:11:06,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:06,680.680 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:11:06,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:06,732.732 INFO    ] No camera update needed
[2026-10-25 17:11:06,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:11:06,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:11:06,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:11:06,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:11:08,789.789 INFO    ] ================================================
[2026-10-25 17:11:08,805.805 INFO    ] Launching Daemon at Sun Oct 25 17:11:08 IST 2026
[2026-10-25 17:11:08,816.816 INFO    ] ================================================
[2026-10-25 17:11:09,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:11:09
[2026-10-25 17:11:09,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:11:10,256.256 INFO    ] Initializing speech engine...
[2026-10-25 17:11:10,262.262 INFO    ] 2026-10-25 17:11:10
[2026-10-25 17:11:10,557.557 INFO    ] 2026-10-25 17:11:10
[2026-10-25 17:11:10,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:11:10,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:11:10,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:11:10,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:11:10,950.950 INFO    ] time= 25/10/2026 17:11:10
[2026-10-25 17:11:10,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:11:10,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:11:11,056.056 INFO    ] No existing commands found in stream
[2026-10-25 17:11:16,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:11:16,077.077 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 17:11:20,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:11:20,156.156 INFO    ] Checking for system updates...
[2026-10-25 17:11:20,198.198 INFO    ] 200
[2026-10-25 17:11:20,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:20,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:20,262.262 INFO    ] No update needed
[2026-10-25 17:11:20,265.265 INFO    ] Checking for camera pi updates...
[2026-10-25 17:11:20,304.304 INFO    ] 200
[2026-10-25 17:11:20,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:20,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:11:20,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:20,405.405 INFO    ] No camera update needed
[2026-10-25 17:11:20,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:11:20,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:11:20,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:11:20,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:11:22,463.463 INFO    ] ================================================
[2026-10-25 17:11:22,478.478 INFO    ] Launching Daemon at Sun Oct 25 17:11:22 IST 2026
[2026-10-25 17:11:22,488.488 INFO    ] ================================================
[2026-10-25 17:11:23,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:11:23
[2026-10-25 17:11:23,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:11:24,083.083 INFO    ] Initializing speech engine...
[2026-10-25 17:11:24,097.097 INFO    ] 2026-10-25 17:11:24
[2026-10-25 17:11:24,402.402 INFO    ] 2026-10-25 17:11:24
[2026-10-25 17:11:24,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:11:25,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:11:25,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:11:25,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:11:25,721.721 INFO    ] time= 25/10/2026 17:11:25
[2026-10-25 17:11:25,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:11:25,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:11:25,784.784 INFO    ] No existing commands found in stream
[2026-10-25 17:11:30,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:11:30,800.800 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 17:11:34,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:11:34,822.822 INFO    ] Checking for system updates...
[2026-10-25 17:11:34,863.863 INFO    ] 200
[2026-10-25 17:11:34,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:34,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:11:34,959.959 INFO    ] No update needed
[2026-10-25 17:11:34,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 17:11:35,002.002 INFO    ] 200
[2026-10-25 17:11:35,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:35,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:11:35,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:11:35,110.110 INFO    ] No camera update needed
[2026-10-25 17:11:35,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:11:35,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:11:35,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:11:35,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:11:37,167.167 INFO    ] ================================================
[2026-10-25 17:11:37,188.188 INFO    ] Launching Daemon at Sun Oct 25 17:11:37 IST 2026
[2026-10-25 17:11:37,201.201 INFO    ] ================================================
[2026-10-25 17:11:37,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:11:37
[2026-10-25 17:11:38,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:11:38,646.646 INFO    ] Initializing speech engine...
[2026-10-25 17:11:38,654.654 INFO    ] 2026-10-25 17:11:38
[2026-10-25 17:11:38,926.926 INFO    ] 2026-10-25 17:11:38
[2026-10-25 17:11:38,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:11:39,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:11:39,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:11:39,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:11:39,425.425 INFO    ] time= 25/10/2026 17:11:39
[2026-10-25 17:11:39,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:11:39,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:11:39,632.632 INFO    ] No existing commands found in stream
[2026-10-25 17:11:44,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:11:44,662.662 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 17:11:48,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:11:48,173.173 INFO    ] Checking for system updates...
[2026-10-25 17:11:48,212.212 INFO    ] 200
[2026-10-25 17:11:48,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:48,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:48,270.270 INFO    ] No update needed
[2026-10-25 17:11:48,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 17:11:48,310.310 INFO    ] 200
[2026-10-25 17:11:48,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:11:48,353.353 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:11:48,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:11:48,408.408 INFO    ] No camera update needed
[2026-10-25 17:11:48,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:11:48,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:11:48,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:11:48,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:11:50,464.464 INFO    ] ================================================
[2026-10-25 17:11:50,478.478 INFO    ] Launching Daemon at Sun Oct 25 17:11:50 IST 2026
[2026-10-25 17:11:50,489.489 INFO    ] ================================================
[2026-10-25 17:11:51,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:11:51
[2026-10-25 17:11:51,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:11:52,096.096 INFO    ] Initializing speech engine...
[2026-10-25 17:11:52,111.111 INFO    ] 2026-10-25 17:11:52
[2026-10-25 17:11:52,397.397 INFO    ] 2026-10-25 17:11:52
[2026-10-25 17:11:52,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:11:56,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:11:56,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:11:57,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:11:57,012.012 INFO    ] time= 25/10/2026 17:11:57
[2026-10-25 17:11:57,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:11:57,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:11:57,070.070 INFO    ] No existing commands found in stream
[2026-10-25 17:12:02,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:12:02,083.083 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 17:12:04,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:12:04,942.942 INFO    ] Checking for system updates...
[2026-10-25 17:12:04,978.978 INFO    ] 200
[2026-10-25 17:12:04,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:05,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:12:05,036.036 INFO    ] No update needed
[2026-10-25 17:12:05,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 17:12:05,072.072 INFO    ] 200
[2026-10-25 17:12:05,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:05,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:12:05,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:12:05,183.183 INFO    ] No camera update needed
[2026-10-25 17:12:05,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:12:05,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:12:05,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:12:05,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:12:07,241.241 INFO    ] ================================================
[2026-10-25 17:12:07,256.256 INFO    ] Launching Daemon at Sun Oct 25 17:12:07 IST 2026
[2026-10-25 17:12:07,267.267 INFO    ] ================================================
[2026-10-25 17:12:07,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:12:07
[2026-10-25 17:12:08,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:12:08,739.739 INFO    ] Initializing speech engine...
[2026-10-25 17:12:08,746.746 INFO    ] 2026-10-25 17:12:08
[2026-10-25 17:12:09,026.026 INFO    ] 2026-10-25 17:12:09
[2026-10-25 17:12:09,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:12:09,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:12:09,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:12:09,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:12:09,728.728 INFO    ] time= 25/10/2026 17:12:09
[2026-10-25 17:12:09,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:12:09,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:12:09,937.937 INFO    ] No existing commands found in stream
[2026-10-25 17:12:14,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:12:14,971.971 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 17:12:16,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:12:16,149.149 INFO    ] Checking for system updates...
[2026-10-25 17:12:16,186.186 INFO    ] 200
[2026-10-25 17:12:16,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:16,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:16,261.261 INFO    ] No update needed
[2026-10-25 17:12:16,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 17:12:16,296.296 INFO    ] 200
[2026-10-25 17:12:16,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:16,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:12:16,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:16,499.499 INFO    ] No camera update needed
[2026-10-25 17:12:16,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:12:16,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:12:16,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:12:16,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:12:18,554.554 INFO    ] ================================================
[2026-10-25 17:12:18,569.569 INFO    ] Launching Daemon at Sun Oct 25 17:12:18 IST 2026
[2026-10-25 17:12:18,579.579 INFO    ] ================================================
[2026-10-25 17:12:19,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:12:19
[2026-10-25 17:12:19,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:12:19,991.991 INFO    ] Initializing speech engine...
[2026-10-25 17:12:19,998.998 INFO    ] 2026-10-25 17:12:19
[2026-10-25 17:12:20,299.299 INFO    ] 2026-10-25 17:12:20
[2026-10-25 17:12:20,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:12:20,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:12:20,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:12:20,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:12:20,762.762 INFO    ] time= 25/10/2026 17:12:20
[2026-10-25 17:12:20,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:12:20,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:12:20,928.928 INFO    ] No existing commands found in stream
[2026-10-25 17:12:25,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:12:25,945.945 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 17:12:28,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:12:28,312.312 INFO    ] Checking for system updates...
[2026-10-25 17:12:28,349.349 INFO    ] 200
[2026-10-25 17:12:28,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:28,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:28,414.414 INFO    ] No update needed
[2026-10-25 17:12:28,417.417 INFO    ] Checking for camera pi updates...
[2026-10-25 17:12:28,450.450 INFO    ] 200
[2026-10-25 17:12:28,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:28,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:12:28,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:28,529.529 INFO    ] No camera update needed
[2026-10-25 17:12:28,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:12:28,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:12:28,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:12:28,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:12:30,582.582 INFO    ] ================================================
[2026-10-25 17:12:30,597.597 INFO    ] Launching Daemon at Sun Oct 25 17:12:30 IST 2026
[2026-10-25 17:12:30,608.608 INFO    ] ================================================
[2026-10-25 17:12:31,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:12:31
[2026-10-25 17:12:31,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:12:32,081.081 INFO    ] Initializing speech engine...
[2026-10-25 17:12:32,090.090 INFO    ] 2026-10-25 17:12:32
[2026-10-25 17:12:32,415.415 INFO    ] 2026-10-25 17:12:32
[2026-10-25 17:12:32,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:12:32,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:12:32,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:12:32,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:12:32,849.849 INFO    ] time= 25/10/2026 17:12:32
[2026-10-25 17:12:32,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:12:32,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:12:33,008.008 INFO    ] No existing commands found in stream
[2026-10-25 17:12:38,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:12:38,037.037 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 17:12:39,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:12:39,346.346 INFO    ] Checking for system updates...
[2026-10-25 17:12:39,388.388 INFO    ] 200
[2026-10-25 17:12:39,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:39,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:12:39,446.446 INFO    ] No update needed
[2026-10-25 17:12:39,448.448 INFO    ] Checking for camera pi updates...
[2026-10-25 17:12:39,482.482 INFO    ] 200
[2026-10-25 17:12:39,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:39,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:12:39,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:12:39,584.584 INFO    ] No camera update needed
[2026-10-25 17:12:39,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:12:39,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:12:39,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:12:39,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:12:41,639.639 INFO    ] ================================================
[2026-10-25 17:12:41,654.654 INFO    ] Launching Daemon at Sun Oct 25 17:12:41 IST 2026
[2026-10-25 17:12:41,665.665 INFO    ] ================================================
[2026-10-25 17:12:42,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:12:42
[2026-10-25 17:12:42,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:12:43,171.171 INFO    ] Initializing speech engine...
[2026-10-25 17:12:43,185.185 INFO    ] 2026-10-25 17:12:43
[2026-10-25 17:12:43,471.471 INFO    ] 2026-10-25 17:12:43
[2026-10-25 17:12:43,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:12:43,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:12:43,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:12:43,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:12:43,829.829 INFO    ] time= 25/10/2026 17:12:43
[2026-10-25 17:12:43,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:12:43,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:12:43,997.997 INFO    ] No existing commands found in stream
[2026-10-25 17:12:49,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:12:49,031.031 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 17:12:51,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:12:51,655.655 INFO    ] Checking for system updates...
[2026-10-25 17:12:51,696.696 INFO    ] 200
[2026-10-25 17:12:51,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:51,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:51,753.753 INFO    ] No update needed
[2026-10-25 17:12:51,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 17:12:51,793.793 INFO    ] 200
[2026-10-25 17:12:51,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:12:51,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:12:51,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:12:51,869.869 INFO    ] No camera update needed
[2026-10-25 17:12:51,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:12:51,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:12:51,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:12:51,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:12:53,923.923 INFO    ] ================================================
[2026-10-25 17:12:53,938.938 INFO    ] Launching Daemon at Sun Oct 25 17:12:53 IST 2026
[2026-10-25 17:12:53,949.949 INFO    ] ================================================
[2026-10-25 17:12:54,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:12:54
[2026-10-25 17:12:55,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:12:55,476.476 INFO    ] Initializing speech engine...
[2026-10-25 17:12:55,483.483 INFO    ] 2026-10-25 17:12:55
[2026-10-25 17:12:55,734.734 INFO    ] 2026-10-25 17:12:55
[2026-10-25 17:12:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:12:59,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:12:59,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:12:59,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:12:59,397.397 INFO    ] time= 25/10/2026 17:12:59
[2026-10-25 17:12:59,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:12:59,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:12:59,452.452 INFO    ] No existing commands found in stream
[2026-10-25 17:13:04,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:13:04,464.464 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 17:13:08,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:13:08,739.739 INFO    ] Checking for system updates...
[2026-10-25 17:13:08,781.781 INFO    ] 200
[2026-10-25 17:13:08,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:08,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:08,846.846 INFO    ] No update needed
[2026-10-25 17:13:08,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 17:13:08,883.883 INFO    ] 200
[2026-10-25 17:13:08,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:08,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:13:08,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:08,993.993 INFO    ] No camera update needed
[2026-10-25 17:13:08,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:13:08,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:13:09,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:13:09,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:13:11,051.051 INFO    ] ================================================
[2026-10-25 17:13:11,066.066 INFO    ] Launching Daemon at Sun Oct 25 17:13:11 IST 2026
[2026-10-25 17:13:11,076.076 INFO    ] ================================================
[2026-10-25 17:13:11,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:13:11
[2026-10-25 17:13:12,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:13:12,532.532 INFO    ] Initializing speech engine...
[2026-10-25 17:13:12,541.541 INFO    ] 2026-10-25 17:13:12
[2026-10-25 17:13:12,805.805 INFO    ] 2026-10-25 17:13:12
[2026-10-25 17:13:12,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:13:13,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:13:13,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:13:13,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:13:13,293.293 INFO    ] time= 25/10/2026 17:13:13
[2026-10-25 17:13:13,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:13:13,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:13:13,485.485 INFO    ] No existing commands found in stream
[2026-10-25 17:13:18,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:13:18,514.514 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 17:13:20,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:13:20,496.496 INFO    ] Checking for system updates...
[2026-10-25 17:13:20,532.532 INFO    ] 200
[2026-10-25 17:13:20,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:20,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:13:20,589.589 INFO    ] No update needed
[2026-10-25 17:13:20,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 17:13:20,626.626 INFO    ] 200
[2026-10-25 17:13:20,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:20,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:13:20,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:13:20,721.721 INFO    ] No camera update needed
[2026-10-25 17:13:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:13:20,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:13:20,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:13:20,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:13:22,779.779 INFO    ] ================================================
[2026-10-25 17:13:22,793.793 INFO    ] Launching Daemon at Sun Oct 25 17:13:22 IST 2026
[2026-10-25 17:13:22,804.804 INFO    ] ================================================
[2026-10-25 17:13:23,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:13:23
[2026-10-25 17:13:24,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:13:24,457.457 INFO    ] Initializing speech engine...
[2026-10-25 17:13:24,469.469 INFO    ] 2026-10-25 17:13:24
[2026-10-25 17:13:24,782.782 INFO    ] 2026-10-25 17:13:24
[2026-10-25 17:13:24,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:13:25,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:13:25,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:13:25,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:13:25,301.301 INFO    ] time= 25/10/2026 17:13:25
[2026-10-25 17:13:25,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:13:25,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:13:25,445.445 INFO    ] No existing commands found in stream
[2026-10-25 17:13:30,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:13:30,473.473 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 17:13:31,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:13:31,789.789 INFO    ] Checking for system updates...
[2026-10-25 17:13:31,840.840 INFO    ] 200
[2026-10-25 17:13:31,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:31,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:31,916.916 INFO    ] No update needed
[2026-10-25 17:13:31,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 17:13:31,962.962 INFO    ] 200
[2026-10-25 17:13:31,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:32,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:13:32,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:32,066.066 INFO    ] No camera update needed
[2026-10-25 17:13:32,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:13:32,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:13:32,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:13:32,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:13:34,127.127 INFO    ] ================================================
[2026-10-25 17:13:34,142.142 INFO    ] Launching Daemon at Sun Oct 25 17:13:34 IST 2026
[2026-10-25 17:13:34,153.153 INFO    ] ================================================
[2026-10-25 17:13:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:13:34
[2026-10-25 17:13:35,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:13:35,584.584 INFO    ] Initializing speech engine...
[2026-10-25 17:13:35,591.591 INFO    ] 2026-10-25 17:13:35
[2026-10-25 17:13:35,890.890 INFO    ] 2026-10-25 17:13:35
[2026-10-25 17:13:35,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:13:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:13:36,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:13:36,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:13:36,316.316 INFO    ] time= 25/10/2026 17:13:36
[2026-10-25 17:13:36,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:13:36,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:13:36,478.478 INFO    ] No existing commands found in stream
[2026-10-25 17:13:41,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:13:41,506.506 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 17:13:45,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:13:45,096.096 INFO    ] Checking for system updates...
[2026-10-25 17:13:45,134.134 INFO    ] 200
[2026-10-25 17:13:45,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:45,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:13:45,199.199 INFO    ] No update needed
[2026-10-25 17:13:45,202.202 INFO    ] Checking for camera pi updates...
[2026-10-25 17:13:45,240.240 INFO    ] 200
[2026-10-25 17:13:45,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:45,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:13:45,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:13:45,335.335 INFO    ] No camera update needed
[2026-10-25 17:13:45,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:13:45,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:13:45,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:13:45,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:13:47,391.391 INFO    ] ================================================
[2026-10-25 17:13:47,406.406 INFO    ] Launching Daemon at Sun Oct 25 17:13:47 IST 2026
[2026-10-25 17:13:47,416.416 INFO    ] ================================================
[2026-10-25 17:13:48,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:13:48
[2026-10-25 17:13:48,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:13:49,045.045 INFO    ] Initializing speech engine...
[2026-10-25 17:13:49,060.060 INFO    ] 2026-10-25 17:13:49
[2026-10-25 17:13:49,357.357 INFO    ] 2026-10-25 17:13:49
[2026-10-25 17:13:49,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:13:49,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:13:49,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:13:50,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:13:50,730.730 INFO    ] time= 25/10/2026 17:13:50
[2026-10-25 17:13:50,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:13:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:13:50,804.804 INFO    ] No existing commands found in stream
[2026-10-25 17:13:55,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:13:55,818.818 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 17:13:56,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:13:56,959.959 INFO    ] Checking for system updates...
[2026-10-25 17:13:57,001.001 INFO    ] 200
[2026-10-25 17:13:57,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:57,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:57,061.061 INFO    ] No update needed
[2026-10-25 17:13:57,064.064 INFO    ] Checking for camera pi updates...
[2026-10-25 17:13:57,099.099 INFO    ] 200
[2026-10-25 17:13:57,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:13:57,143.143 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:13:57,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:13:57,203.203 INFO    ] No camera update needed
[2026-10-25 17:13:57,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:13:57,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:13:57,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:13:57,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:13:59,261.261 INFO    ] ================================================
[2026-10-25 17:13:59,276.276 INFO    ] Launching Daemon at Sun Oct 25 17:13:59 IST 2026
[2026-10-25 17:13:59,287.287 INFO    ] ================================================
[2026-10-25 17:13:59,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:13:59
[2026-10-25 17:14:00,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:14:00,761.761 INFO    ] Initializing speech engine...
[2026-10-25 17:14:00,770.770 INFO    ] 2026-10-25 17:14:00
[2026-10-25 17:14:01,033.033 INFO    ] 2026-10-25 17:14:01
[2026-10-25 17:14:01,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:14:02,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:14:02,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:14:02,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:14:02,321.321 INFO    ] time= 25/10/2026 17:14:02
[2026-10-25 17:14:02,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:14:02,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:14:02,442.442 INFO    ] No existing commands found in stream
[2026-10-25 17:14:07,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:14:07,478.478 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 17:14:09,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:14:09,973.973 INFO    ] Checking for system updates...
[2026-10-25 17:14:10,009.009 INFO    ] 200
[2026-10-25 17:14:10,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:10,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:14:10,077.077 INFO    ] No update needed
[2026-10-25 17:14:10,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 17:14:10,115.115 INFO    ] 200
[2026-10-25 17:14:10,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:10,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:14:10,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:14:10,232.232 INFO    ] No camera update needed
[2026-10-25 17:14:10,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:14:10,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:14:10,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:14:10,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:14:12,291.291 INFO    ] ================================================
[2026-10-25 17:14:12,306.306 INFO    ] Launching Daemon at Sun Oct 25 17:14:12 IST 2026
[2026-10-25 17:14:12,317.317 INFO    ] ================================================
[2026-10-25 17:14:12,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:14:12
[2026-10-25 17:14:13,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:14:13,750.750 INFO    ] Initializing speech engine...
[2026-10-25 17:14:13,756.756 INFO    ] 2026-10-25 17:14:13
[2026-10-25 17:14:14,012.012 INFO    ] 2026-10-25 17:14:14
[2026-10-25 17:14:14,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:14:14,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:14:14,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:14:14,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:14:14,493.493 INFO    ] time= 25/10/2026 17:14:14
[2026-10-25 17:14:14,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:14:14,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:14:14,618.618 INFO    ] No existing commands found in stream
[2026-10-25 17:14:19,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:14:19,650.650 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 17:14:20,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:14:20,269.269 INFO    ] Checking for system updates...
[2026-10-25 17:14:20,310.310 INFO    ] 200
[2026-10-25 17:14:20,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:20,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:14:20,374.374 INFO    ] No update needed
[2026-10-25 17:14:20,377.377 INFO    ] Checking for camera pi updates...
[2026-10-25 17:14:20,410.410 INFO    ] 200
[2026-10-25 17:14:20,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:20,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:14:20,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:14:20,620.620 INFO    ] No camera update needed
[2026-10-25 17:14:20,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:14:20,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:14:20,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:14:20,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:14:22,677.677 INFO    ] ================================================
[2026-10-25 17:14:22,693.693 INFO    ] Launching Daemon at Sun Oct 25 17:14:22 IST 2026
[2026-10-25 17:14:22,704.704 INFO    ] ================================================
[2026-10-25 17:14:23,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:14:23
[2026-10-25 17:14:24,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:14:24,324.324 INFO    ] Initializing speech engine...
[2026-10-25 17:14:24,336.336 INFO    ] 2026-10-25 17:14:24
[2026-10-25 17:14:24,612.612 INFO    ] 2026-10-25 17:14:24
[2026-10-25 17:14:24,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:14:24,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:14:24,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:14:25,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:14:25,082.082 INFO    ] time= 25/10/2026 17:14:25
[2026-10-25 17:14:25,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:14:25,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:14:25,277.277 INFO    ] No existing commands found in stream
[2026-10-25 17:14:30,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:14:30,311.311 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 17:14:33,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:14:33,679.679 INFO    ] Checking for system updates...
[2026-10-25 17:14:33,717.717 INFO    ] 200
[2026-10-25 17:14:33,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:33,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:14:33,776.776 INFO    ] No update needed
[2026-10-25 17:14:33,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 17:14:33,814.814 INFO    ] 200
[2026-10-25 17:14:33,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:33,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:14:33,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:14:33,923.923 INFO    ] No camera update needed
[2026-10-25 17:14:33,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:14:33,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:14:33,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:14:33,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:14:35,980.980 INFO    ] ================================================
[2026-10-25 17:14:36,996.996 INFO    ] Launching Daemon at Sun Oct 25 17:14:35 IST 2026
[2026-10-25 17:14:36,007.007 INFO    ] ================================================
[2026-10-25 17:14:36,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:14:36
[2026-10-25 17:14:37,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:14:37,402.402 INFO    ] Initializing speech engine...
[2026-10-25 17:14:37,425.425 INFO    ] 2026-10-25 17:14:37
[2026-10-25 17:14:37,675.675 INFO    ] 2026-10-25 17:14:37
[2026-10-25 17:14:37,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:14:37,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:14:37,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:14:38,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:14:38,160.160 INFO    ] time= 25/10/2026 17:14:38
[2026-10-25 17:14:38,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:14:38,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:14:38,299.299 INFO    ] No existing commands found in stream
[2026-10-25 17:14:43,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:14:43,334.334 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 17:14:47,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:14:47,003.003 INFO    ] Checking for system updates...
[2026-10-25 17:14:47,039.039 INFO    ] 200
[2026-10-25 17:14:47,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:47,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:14:47,097.097 INFO    ] No update needed
[2026-10-25 17:14:47,099.099 INFO    ] Checking for camera pi updates...
[2026-10-25 17:14:47,133.133 INFO    ] 200
[2026-10-25 17:14:47,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:14:47,176.176 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:14:47,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:14:47,229.229 INFO    ] No camera update needed
[2026-10-25 17:14:47,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:14:47,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:14:47,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:14:47,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:14:49,285.285 INFO    ] ================================================
[2026-10-25 17:14:49,300.300 INFO    ] Launching Daemon at Sun Oct 25 17:14:49 IST 2026
[2026-10-25 17:14:49,310.310 INFO    ] ================================================
[2026-10-25 17:14:49,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:14:49
[2026-10-25 17:14:50,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:14:50,879.879 INFO    ] Initializing speech engine...
[2026-10-25 17:14:50,894.894 INFO    ] 2026-10-25 17:14:50
[2026-10-25 17:14:51,175.175 INFO    ] 2026-10-25 17:14:51
[2026-10-25 17:14:51,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:14:51,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:14:51,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:14:51,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:14:51,713.713 INFO    ] time= 25/10/2026 17:14:51
[2026-10-25 17:14:51,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:14:51,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:14:51,859.859 INFO    ] No existing commands found in stream
[2026-10-25 17:14:56,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:14:56,884.884 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 17:15:04,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:15:04,665.665 INFO    ] Checking for system updates...
[2026-10-25 17:15:04,708.708 INFO    ] 200
[2026-10-25 17:15:04,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:04,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:15:04,784.784 INFO    ] No update needed
[2026-10-25 17:15:04,787.787 INFO    ] Checking for camera pi updates...
[2026-10-25 17:15:04,841.841 INFO    ] 200
[2026-10-25 17:15:04,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:04,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:15:04,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:15:04,934.934 INFO    ] No camera update needed
[2026-10-25 17:15:04,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:15:04,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:15:04,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:15:04,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:15:06,990.990 INFO    ] ================================================
[2026-10-25 17:15:07,005.005 INFO    ] Launching Daemon at Sun Oct 25 17:15:07 IST 2026
[2026-10-25 17:15:07,016.016 INFO    ] ================================================
[2026-10-25 17:15:07,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:15:07
[2026-10-25 17:15:08,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:15:08,460.460 INFO    ] Initializing speech engine...
[2026-10-25 17:15:08,466.466 INFO    ] 2026-10-25 17:15:08
[2026-10-25 17:15:08,711.711 INFO    ] 2026-10-25 17:15:08
[2026-10-25 17:15:08,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:15:08,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:15:08,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:15:09,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:15:09,078.078 INFO    ] time= 25/10/2026 17:15:09
[2026-10-25 17:15:09,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:15:09,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:15:09,245.245 INFO    ] No existing commands found in stream
[2026-10-25 17:15:14,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:15:14,278.278 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 17:15:18,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:15:18,570.570 INFO    ] Checking for system updates...
[2026-10-25 17:15:18,607.607 INFO    ] 200
[2026-10-25 17:15:18,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:18,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:18,664.664 INFO    ] No update needed
[2026-10-25 17:15:18,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 17:15:18,711.711 INFO    ] 200
[2026-10-25 17:15:18,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:18,761.761 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:15:18,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:18,827.827 INFO    ] No camera update needed
[2026-10-25 17:15:18,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:15:18,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:15:18,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:15:18,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:15:20,886.886 INFO    ] ================================================
[2026-10-25 17:15:20,901.901 INFO    ] Launching Daemon at Sun Oct 25 17:15:20 IST 2026
[2026-10-25 17:15:20,912.912 INFO    ] ================================================
[2026-10-25 17:15:21,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:15:21
[2026-10-25 17:15:22,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:15:22,311.311 INFO    ] Initializing speech engine...
[2026-10-25 17:15:22,325.325 INFO    ] 2026-10-25 17:15:22
[2026-10-25 17:15:22,586.586 INFO    ] 2026-10-25 17:15:22
[2026-10-25 17:15:22,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:15:22,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:15:22,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:15:23,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:15:23,055.055 INFO    ] time= 25/10/2026 17:15:23
[2026-10-25 17:15:23,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:15:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:15:23,201.201 INFO    ] No existing commands found in stream
[2026-10-25 17:15:28,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:15:28,215.215 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 17:15:29,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:15:29,023.023 INFO    ] Checking for system updates...
[2026-10-25 17:15:29,062.062 INFO    ] 200
[2026-10-25 17:15:29,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:29,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:29,126.126 INFO    ] No update needed
[2026-10-25 17:15:29,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 17:15:29,162.162 INFO    ] 200
[2026-10-25 17:15:29,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:29,205.205 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:15:29,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:29,248.248 INFO    ] No camera update needed
[2026-10-25 17:15:29,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:15:29,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:15:29,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:15:29,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:15:31,302.302 INFO    ] ================================================
[2026-10-25 17:15:31,318.318 INFO    ] Launching Daemon at Sun Oct 25 17:15:31 IST 2026
[2026-10-25 17:15:31,328.328 INFO    ] ================================================
[2026-10-25 17:15:31,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:15:31
[2026-10-25 17:15:32,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:15:32,851.851 INFO    ] Initializing speech engine...
[2026-10-25 17:15:32,856.856 INFO    ] 2026-10-25 17:15:32
[2026-10-25 17:15:33,127.127 INFO    ] 2026-10-25 17:15:33
[2026-10-25 17:15:33,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:15:35,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:15:35,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:15:35,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:15:35,655.655 INFO    ] time= 25/10/2026 17:15:35
[2026-10-25 17:15:35,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:15:35,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:15:35,752.752 INFO    ] No existing commands found in stream
[2026-10-25 17:15:40,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:15:40,771.771 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 17:15:44,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:15:44,046.046 INFO    ] Checking for system updates...
[2026-10-25 17:15:44,082.082 INFO    ] 200
[2026-10-25 17:15:44,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:44,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:44,139.139 INFO    ] No update needed
[2026-10-25 17:15:44,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 17:15:44,175.175 INFO    ] 200
[2026-10-25 17:15:44,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:44,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:15:44,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:44,279.279 INFO    ] No camera update needed
[2026-10-25 17:15:44,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:15:44,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:15:44,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:15:44,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:15:46,335.335 INFO    ] ================================================
[2026-10-25 17:15:46,357.357 INFO    ] Launching Daemon at Sun Oct 25 17:15:46 IST 2026
[2026-10-25 17:15:46,368.368 INFO    ] ================================================
[2026-10-25 17:15:46,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:15:46
[2026-10-25 17:15:47,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:15:47,762.762 INFO    ] Initializing speech engine...
[2026-10-25 17:15:47,770.770 INFO    ] 2026-10-25 17:15:47
[2026-10-25 17:15:48,047.047 INFO    ] 2026-10-25 17:15:48
[2026-10-25 17:15:48,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:15:48,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:15:48,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:15:48,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:15:48,544.544 INFO    ] time= 25/10/2026 17:15:48
[2026-10-25 17:15:48,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:15:48,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:15:48,733.733 INFO    ] No existing commands found in stream
[2026-10-25 17:15:53,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:15:53,766.766 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 17:15:55,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:15:55,747.747 INFO    ] Checking for system updates...
[2026-10-25 17:15:55,784.784 INFO    ] 200
[2026-10-25 17:15:55,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:55,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:55,850.850 INFO    ] No update needed
[2026-10-25 17:15:55,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 17:15:55,888.888 INFO    ] 200
[2026-10-25 17:15:55,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:15:55,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:15:55,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:15:55,995.995 INFO    ] No camera update needed
[2026-10-25 17:15:55,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:15:55,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:15:56,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:15:56,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:15:58,050.050 INFO    ] ================================================
[2026-10-25 17:15:58,066.066 INFO    ] Launching Daemon at Sun Oct 25 17:15:58 IST 2026
[2026-10-25 17:15:58,077.077 INFO    ] ================================================
[2026-10-25 17:15:58,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:15:58
[2026-10-25 17:15:59,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:15:59,609.609 INFO    ] Initializing speech engine...
[2026-10-25 17:15:59,616.616 INFO    ] 2026-10-25 17:15:59
[2026-10-25 17:15:59,887.887 INFO    ] 2026-10-25 17:15:59
[2026-10-25 17:15:59,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:16:00,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:16:00,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:16:00,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:16:00,414.414 INFO    ] time= 25/10/2026 17:16:00
[2026-10-25 17:16:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:16:00,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:16:00,576.576 INFO    ] No existing commands found in stream
[2026-10-25 17:16:05,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:16:05,606.606 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 17:16:07,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:16:07,819.819 INFO    ] Checking for system updates...
[2026-10-25 17:16:07,857.857 INFO    ] 200
[2026-10-25 17:16:07,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:07,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:07,920.920 INFO    ] No update needed
[2026-10-25 17:16:07,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 17:16:07,956.956 INFO    ] 200
[2026-10-25 17:16:07,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:08,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:16:08,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:08,039.039 INFO    ] No camera update needed
[2026-10-25 17:16:08,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:16:08,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:16:08,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:16:08,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:16:10,094.094 INFO    ] ================================================
[2026-10-25 17:16:10,109.109 INFO    ] Launching Daemon at Sun Oct 25 17:16:10 IST 2026
[2026-10-25 17:16:10,120.120 INFO    ] ================================================
[2026-10-25 17:16:10,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:16:10
[2026-10-25 17:16:11,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:16:11,727.727 INFO    ] Initializing speech engine...
[2026-10-25 17:16:11,740.740 INFO    ] 2026-10-25 17:16:11
[2026-10-25 17:16:12,017.017 INFO    ] 2026-10-25 17:16:12
[2026-10-25 17:16:12,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:16:12,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:16:12,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:16:12,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:16:12,547.547 INFO    ] time= 25/10/2026 17:16:12
[2026-10-25 17:16:12,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:16:12,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:16:12,679.679 INFO    ] No existing commands found in stream
[2026-10-25 17:16:17,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:16:17,715.715 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 17:16:21,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:16:21,546.546 INFO    ] Checking for system updates...
[2026-10-25 17:16:21,583.583 INFO    ] 200
[2026-10-25 17:16:21,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:21,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:21,643.643 INFO    ] No update needed
[2026-10-25 17:16:21,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 17:16:21,679.679 INFO    ] 200
[2026-10-25 17:16:21,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:21,723.723 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:16:21,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:21,777.777 INFO    ] No camera update needed
[2026-10-25 17:16:21,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:16:21,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:16:21,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:16:21,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:16:23,833.833 INFO    ] ================================================
[2026-10-25 17:16:23,848.848 INFO    ] Launching Daemon at Sun Oct 25 17:16:23 IST 2026
[2026-10-25 17:16:23,859.859 INFO    ] ================================================
[2026-10-25 17:16:24,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:16:24
[2026-10-25 17:16:25,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:16:25,432.432 INFO    ] Initializing speech engine...
[2026-10-25 17:16:25,440.440 INFO    ] 2026-10-25 17:16:25
[2026-10-25 17:16:25,721.721 INFO    ] 2026-10-25 17:16:25
[2026-10-25 17:16:25,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:16:26,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:16:26,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:16:26,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:16:26,299.299 INFO    ] time= 25/10/2026 17:16:26
[2026-10-25 17:16:26,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:16:26,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:16:26,499.499 INFO    ] No existing commands found in stream
[2026-10-25 17:16:31,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:16:31,513.513 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 17:16:38,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:16:38,374.374 INFO    ] Checking for system updates...
[2026-10-25 17:16:38,410.410 INFO    ] 200
[2026-10-25 17:16:38,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:38,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:38,471.471 INFO    ] No update needed
[2026-10-25 17:16:38,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 17:16:38,512.512 INFO    ] 200
[2026-10-25 17:16:38,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:38,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:16:38,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:38,632.632 INFO    ] No camera update needed
[2026-10-25 17:16:38,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:16:38,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:16:38,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:16:38,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:16:40,686.686 INFO    ] ================================================
[2026-10-25 17:16:40,702.702 INFO    ] Launching Daemon at Sun Oct 25 17:16:40 IST 2026
[2026-10-25 17:16:40,712.712 INFO    ] ================================================
[2026-10-25 17:16:41,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:16:41
[2026-10-25 17:16:42,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:16:42,332.332 INFO    ] Initializing speech engine...
[2026-10-25 17:16:42,342.342 INFO    ] 2026-10-25 17:16:42
[2026-10-25 17:16:42,611.611 INFO    ] 2026-10-25 17:16:42
[2026-10-25 17:16:42,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:16:42,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:16:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:16:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:16:43,102.102 INFO    ] time= 25/10/2026 17:16:43
[2026-10-25 17:16:43,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:16:43,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:16:43,250.250 INFO    ] No existing commands found in stream
[2026-10-25 17:16:48,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:16:48,273.273 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 17:16:50,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:16:50,890.890 INFO    ] Checking for system updates...
[2026-10-25 17:16:50,927.927 INFO    ] 200
[2026-10-25 17:16:50,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:50,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:50,995.995 INFO    ] No update needed
[2026-10-25 17:16:50,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 17:16:51,031.031 INFO    ] 200
[2026-10-25 17:16:51,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:16:51,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:16:51,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:16:51,123.123 INFO    ] No camera update needed
[2026-10-25 17:16:51,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:16:51,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:16:51,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:16:51,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:16:53,179.179 INFO    ] ================================================
[2026-10-25 17:16:53,199.199 INFO    ] Launching Daemon at Sun Oct 25 17:16:53 IST 2026
[2026-10-25 17:16:53,214.214 INFO    ] ================================================
[2026-10-25 17:16:53,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:16:53
[2026-10-25 17:16:54,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:16:54,681.681 INFO    ] Initializing speech engine...
[2026-10-25 17:16:54,694.694 INFO    ] 2026-10-25 17:16:54
[2026-10-25 17:16:54,946.946 INFO    ] 2026-10-25 17:16:54
[2026-10-25 17:16:54,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:16:55,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:16:55,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:16:55,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:16:55,313.313 INFO    ] time= 25/10/2026 17:16:55
[2026-10-25 17:16:55,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:16:55,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:16:55,491.491 INFO    ] No existing commands found in stream
[2026-10-25 17:17:00,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:17:00,523.523 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 17:17:04,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:17:04,436.436 INFO    ] Checking for system updates...
[2026-10-25 17:17:04,475.475 INFO    ] 200
[2026-10-25 17:17:04,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:04,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:04,547.547 INFO    ] No update needed
[2026-10-25 17:17:04,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 17:17:04,588.588 INFO    ] 200
[2026-10-25 17:17:04,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:04,636.636 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:17:04,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:04,686.686 INFO    ] No camera update needed
[2026-10-25 17:17:04,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:17:04,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:17:04,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:17:04,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:17:06,742.742 INFO    ] ================================================
[2026-10-25 17:17:06,757.757 INFO    ] Launching Daemon at Sun Oct 25 17:17:06 IST 2026
[2026-10-25 17:17:06,768.768 INFO    ] ================================================
[2026-10-25 17:17:07,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:17:07
[2026-10-25 17:17:07,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:17:08,189.189 INFO    ] Initializing speech engine...
[2026-10-25 17:17:08,207.207 INFO    ] 2026-10-25 17:17:08
[2026-10-25 17:17:08,459.459 INFO    ] 2026-10-25 17:17:08
[2026-10-25 17:17:08,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:17:09,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:17:09,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:17:09,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:17:10,008.008 INFO    ] time= 25/10/2026 17:17:09
[2026-10-25 17:17:10,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:17:10,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:17:10,130.130 INFO    ] No existing commands found in stream
[2026-10-25 17:17:15,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:17:15,155.155 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 17:17:18,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:17:18,059.059 INFO    ] Checking for system updates...
[2026-10-25 17:17:18,100.100 INFO    ] 200
[2026-10-25 17:17:18,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:18,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:17:18,166.166 INFO    ] No update needed
[2026-10-25 17:17:18,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 17:17:18,208.208 INFO    ] 200
[2026-10-25 17:17:18,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:18,252.252 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:17:18,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:17:18,306.306 INFO    ] No camera update needed
[2026-10-25 17:17:18,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:17:18,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:17:18,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:17:18,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:17:20,364.364 INFO    ] ================================================
[2026-10-25 17:17:20,379.379 INFO    ] Launching Daemon at Sun Oct 25 17:17:20 IST 2026
[2026-10-25 17:17:20,389.389 INFO    ] ================================================
[2026-10-25 17:17:20,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:17:20
[2026-10-25 17:17:21,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:17:21,806.806 INFO    ] Initializing speech engine...
[2026-10-25 17:17:21,815.815 INFO    ] 2026-10-25 17:17:21
[2026-10-25 17:17:22,062.062 INFO    ] 2026-10-25 17:17:22
[2026-10-25 17:17:22,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:17:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:17:22,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:17:22,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:17:22,428.428 INFO    ] time= 25/10/2026 17:17:22
[2026-10-25 17:17:22,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:17:22,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:17:22,505.505 INFO    ] No existing commands found in stream
[2026-10-25 17:17:27,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:17:27,543.543 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 17:17:30,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:17:30,444.444 INFO    ] Checking for system updates...
[2026-10-25 17:17:30,480.480 INFO    ] 200
[2026-10-25 17:17:30,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:30,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:30,539.539 INFO    ] No update needed
[2026-10-25 17:17:30,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 17:17:30,575.575 INFO    ] 200
[2026-10-25 17:17:30,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:30,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:17:30,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:30,677.677 INFO    ] No camera update needed
[2026-10-25 17:17:30,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:17:30,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:17:30,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:17:30,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:17:32,737.737 INFO    ] ================================================
[2026-10-25 17:17:32,754.754 INFO    ] Launching Daemon at Sun Oct 25 17:17:32 IST 2026
[2026-10-25 17:17:32,767.767 INFO    ] ================================================
[2026-10-25 17:17:33,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:17:33
[2026-10-25 17:17:33,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:17:34,199.199 INFO    ] Initializing speech engine...
[2026-10-25 17:17:34,222.222 INFO    ] 2026-10-25 17:17:34
[2026-10-25 17:17:34,475.475 INFO    ] 2026-10-25 17:17:34
[2026-10-25 17:17:34,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:17:34,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:17:34,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:17:34,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:17:34,843.843 INFO    ] time= 25/10/2026 17:17:34
[2026-10-25 17:17:34,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:17:34,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:17:35,014.014 INFO    ] No existing commands found in stream
[2026-10-25 17:17:40,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:17:40,047.047 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 17:17:41,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:17:41,422.422 INFO    ] Checking for system updates...
[2026-10-25 17:17:41,458.458 INFO    ] 200
[2026-10-25 17:17:41,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:41,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:41,523.523 INFO    ] No update needed
[2026-10-25 17:17:41,525.525 INFO    ] Checking for camera pi updates...
[2026-10-25 17:17:41,563.563 INFO    ] 200
[2026-10-25 17:17:41,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:41,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:17:41,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:17:41,665.665 INFO    ] No camera update needed
[2026-10-25 17:17:41,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:17:41,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:17:41,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:17:41,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:17:43,722.722 INFO    ] ================================================
[2026-10-25 17:17:43,738.738 INFO    ] Launching Daemon at Sun Oct 25 17:17:43 IST 2026
[2026-10-25 17:17:43,749.749 INFO    ] ================================================
[2026-10-25 17:17:44,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:17:44
[2026-10-25 17:17:44,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:17:45,224.224 INFO    ] Initializing speech engine...
[2026-10-25 17:17:45,232.232 INFO    ] 2026-10-25 17:17:45
[2026-10-25 17:17:45,505.505 INFO    ] 2026-10-25 17:17:45
[2026-10-25 17:17:45,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:17:45,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:17:45,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:17:45,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:17:45,942.942 INFO    ] time= 25/10/2026 17:17:45
[2026-10-25 17:17:46,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:17:46,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:17:46,125.125 INFO    ] No existing commands found in stream
[2026-10-25 17:17:51,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:17:51,140.140 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 17:17:51,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:17:51,937.937 INFO    ] Checking for system updates...
[2026-10-25 17:17:51,977.977 INFO    ] 200
[2026-10-25 17:17:51,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:52,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:17:52,044.044 INFO    ] No update needed
[2026-10-25 17:17:52,047.047 INFO    ] Checking for camera pi updates...
[2026-10-25 17:17:52,085.085 INFO    ] 200
[2026-10-25 17:17:52,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:17:52,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:17:52,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:17:52,182.182 INFO    ] No camera update needed
[2026-10-25 17:17:52,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:17:52,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:17:52,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:17:52,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:17:54,242.242 INFO    ] ================================================
[2026-10-25 17:17:54,258.258 INFO    ] Launching Daemon at Sun Oct 25 17:17:54 IST 2026
[2026-10-25 17:17:54,276.276 INFO    ] ================================================
[2026-10-25 17:17:54,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:17:54
[2026-10-25 17:17:55,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:17:55,674.674 INFO    ] Initializing speech engine...
[2026-10-25 17:17:55,697.697 INFO    ] 2026-10-25 17:17:55
[2026-10-25 17:17:55,948.948 INFO    ] 2026-10-25 17:17:55
[2026-10-25 17:17:55,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:17:56,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:17:56,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:17:56,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:17:56,318.318 INFO    ] time= 25/10/2026 17:17:56
[2026-10-25 17:17:56,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:17:56,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:17:56,484.484 INFO    ] No existing commands found in stream
[2026-10-25 17:18:01,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:18:01,515.515 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 17:18:04,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:18:04,083.083 INFO    ] Checking for system updates...
[2026-10-25 17:18:04,119.119 INFO    ] 200
[2026-10-25 17:18:04,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:04,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:04,185.185 INFO    ] No update needed
[2026-10-25 17:18:04,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 17:18:04,221.221 INFO    ] 200
[2026-10-25 17:18:04,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:04,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:18:04,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:04,320.320 INFO    ] No camera update needed
[2026-10-25 17:18:04,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:18:04,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:18:04,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:18:04,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:18:06,377.377 INFO    ] ================================================
[2026-10-25 17:18:06,392.392 INFO    ] Launching Daemon at Sun Oct 25 17:18:06 IST 2026
[2026-10-25 17:18:06,404.404 INFO    ] ================================================
[2026-10-25 17:18:06,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:18:06
[2026-10-25 17:18:07,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:18:07,853.853 INFO    ] Initializing speech engine...
[2026-10-25 17:18:07,862.862 INFO    ] 2026-10-25 17:18:07
[2026-10-25 17:18:08,111.111 INFO    ] 2026-10-25 17:18:08
[2026-10-25 17:18:08,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:18:11,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:18:11,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:18:11,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:18:11,925.925 INFO    ] time= 25/10/2026 17:18:11
[2026-10-25 17:18:11,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:18:11,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:18:11,975.975 INFO    ] No existing commands found in stream
[2026-10-25 17:18:16,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:18:16,987.987 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 17:18:19,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:18:19,646.646 INFO    ] Checking for system updates...
[2026-10-25 17:18:19,685.685 INFO    ] 200
[2026-10-25 17:18:19,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:19,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:18:19,747.747 INFO    ] No update needed
[2026-10-25 17:18:19,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 17:18:19,783.783 INFO    ] 200
[2026-10-25 17:18:19,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:19,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:18:19,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:18:19,876.876 INFO    ] No camera update needed
[2026-10-25 17:18:19,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:18:19,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:18:19,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:18:19,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:18:21,933.933 INFO    ] ================================================
[2026-10-25 17:18:21,949.949 INFO    ] Launching Daemon at Sun Oct 25 17:18:21 IST 2026
[2026-10-25 17:18:21,960.960 INFO    ] ================================================
[2026-10-25 17:18:22,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:18:22
[2026-10-25 17:18:23,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:18:23,409.409 INFO    ] Initializing speech engine...
[2026-10-25 17:18:23,416.416 INFO    ] 2026-10-25 17:18:23
[2026-10-25 17:18:23,675.675 INFO    ] 2026-10-25 17:18:23
[2026-10-25 17:18:23,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:18:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:18:23,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:18:24,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:18:24,031.031 INFO    ] time= 25/10/2026 17:18:24
[2026-10-25 17:18:24,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:18:24,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:18:24,188.188 INFO    ] No existing commands found in stream
[2026-10-25 17:18:29,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:18:29,216.216 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 17:18:32,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:18:32,077.077 INFO    ] Checking for system updates...
[2026-10-25 17:18:32,116.116 INFO    ] 200
[2026-10-25 17:18:32,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:32,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:32,179.179 INFO    ] No update needed
[2026-10-25 17:18:32,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 17:18:32,218.218 INFO    ] 200
[2026-10-25 17:18:32,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:32,269.269 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:18:32,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:32,309.309 INFO    ] No camera update needed
[2026-10-25 17:18:32,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:18:32,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:18:32,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:18:32,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:18:34,369.369 INFO    ] ================================================
[2026-10-25 17:18:34,383.383 INFO    ] Launching Daemon at Sun Oct 25 17:18:34 IST 2026
[2026-10-25 17:18:34,394.394 INFO    ] ================================================
[2026-10-25 17:18:34,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:18:34
[2026-10-25 17:18:35,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:18:35,818.818 INFO    ] Initializing speech engine...
[2026-10-25 17:18:35,826.826 INFO    ] 2026-10-25 17:18:35
[2026-10-25 17:18:36,116.116 INFO    ] 2026-10-25 17:18:36
[2026-10-25 17:18:36,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:18:36,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:18:36,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:18:36,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:18:36,483.483 INFO    ] time= 25/10/2026 17:18:36
[2026-10-25 17:18:36,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:18:36,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:18:36,603.603 INFO    ] No existing commands found in stream
[2026-10-25 17:18:41,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:18:41,624.624 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 17:18:44,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:18:44,179.179 INFO    ] Checking for system updates...
[2026-10-25 17:18:44,217.217 INFO    ] 200
[2026-10-25 17:18:44,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:44,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:18:44,291.291 INFO    ] No update needed
[2026-10-25 17:18:44,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 17:18:44,329.329 INFO    ] 200
[2026-10-25 17:18:44,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:44,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:18:44,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:18:44,539.539 INFO    ] No camera update needed
[2026-10-25 17:18:44,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:18:44,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:18:44,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:18:44,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:18:46,594.594 INFO    ] ================================================
[2026-10-25 17:18:46,609.609 INFO    ] Launching Daemon at Sun Oct 25 17:18:46 IST 2026
[2026-10-25 17:18:46,619.619 INFO    ] ================================================
[2026-10-25 17:18:47,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:18:47
[2026-10-25 17:18:47,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:18:48,139.139 INFO    ] Initializing speech engine...
[2026-10-25 17:18:48,162.162 INFO    ] 2026-10-25 17:18:48
[2026-10-25 17:18:48,423.423 INFO    ] 2026-10-25 17:18:48
[2026-10-25 17:18:48,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:18:48,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:18:48,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:18:48,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:18:48,902.902 INFO    ] time= 25/10/2026 17:18:48
[2026-10-25 17:18:48,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:18:48,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:18:49,049.049 INFO    ] No existing commands found in stream
[2026-10-25 17:18:54,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:18:54,082.082 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 17:18:56,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:18:56,524.524 INFO    ] Checking for system updates...
[2026-10-25 17:18:56,561.561 INFO    ] 200
[2026-10-25 17:18:56,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:56,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:56,625.625 INFO    ] No update needed
[2026-10-25 17:18:56,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 17:18:56,664.664 INFO    ] 200
[2026-10-25 17:18:56,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:18:56,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:18:56,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:18:56,765.765 INFO    ] No camera update needed
[2026-10-25 17:18:56,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:18:56,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:18:56,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:18:56,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:18:58,825.825 INFO    ] ================================================
[2026-10-25 17:18:58,840.840 INFO    ] Launching Daemon at Sun Oct 25 17:18:58 IST 2026
[2026-10-25 17:18:58,850.850 INFO    ] ================================================
[2026-10-25 17:18:59,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:18:59
[2026-10-25 17:19:00,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:19:00,278.278 INFO    ] Initializing speech engine...
[2026-10-25 17:19:00,287.287 INFO    ] 2026-10-25 17:19:00
[2026-10-25 17:19:00,537.537 INFO    ] 2026-10-25 17:19:00
[2026-10-25 17:19:00,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:19:00,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:19:00,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:19:00,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:19:01,016.016 INFO    ] time= 25/10/2026 17:19:00
[2026-10-25 17:19:01,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:19:01,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:19:01,164.164 INFO    ] No existing commands found in stream
[2026-10-25 17:19:06,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:19:06,179.179 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 17:19:09,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:19:09,167.167 INFO    ] Checking for system updates...
[2026-10-25 17:19:09,203.203 INFO    ] 200
[2026-10-25 17:19:09,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:09,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:19:09,266.266 INFO    ] No update needed
[2026-10-25 17:19:09,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 17:19:09,305.305 INFO    ] 200
[2026-10-25 17:19:09,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:09,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:19:09,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:19:09,394.394 INFO    ] No camera update needed
[2026-10-25 17:19:09,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:19:09,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:19:09,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:19:09,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:19:11,451.451 INFO    ] ================================================
[2026-10-25 17:19:11,467.467 INFO    ] Launching Daemon at Sun Oct 25 17:19:11 IST 2026
[2026-10-25 17:19:11,478.478 INFO    ] ================================================
[2026-10-25 17:19:12,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:19:12
[2026-10-25 17:19:12,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:19:12,930.930 INFO    ] Initializing speech engine...
[2026-10-25 17:19:12,955.955 INFO    ] 2026-10-25 17:19:12
[2026-10-25 17:19:13,242.242 INFO    ] 2026-10-25 17:19:13
[2026-10-25 17:19:13,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:19:14,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:19:14,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:19:15,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:19:15,119.119 INFO    ] time= 25/10/2026 17:19:15
[2026-10-25 17:19:15,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:19:15,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:19:15,224.224 INFO    ] No existing commands found in stream
[2026-10-25 17:19:20,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:19:20,238.238 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 17:19:23,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:19:23,727.727 INFO    ] Checking for system updates...
[2026-10-25 17:19:23,764.764 INFO    ] 200
[2026-10-25 17:19:23,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:23,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:19:23,822.822 INFO    ] No update needed
[2026-10-25 17:19:23,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 17:19:23,862.862 INFO    ] 200
[2026-10-25 17:19:23,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:23,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:19:23,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:19:23,986.986 INFO    ] No camera update needed
[2026-10-25 17:19:23,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:19:23,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:19:23,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:19:24,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:19:26,046.046 INFO    ] ================================================
[2026-10-25 17:19:26,064.064 INFO    ] Launching Daemon at Sun Oct 25 17:19:26 IST 2026
[2026-10-25 17:19:26,080.080 INFO    ] ================================================
[2026-10-25 17:19:26,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:19:26
[2026-10-25 17:19:27,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:19:27,573.573 INFO    ] Initializing speech engine...
[2026-10-25 17:19:27,590.590 INFO    ] 2026-10-25 17:19:27
[2026-10-25 17:19:27,868.868 INFO    ] 2026-10-25 17:19:27
[2026-10-25 17:19:27,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:19:28,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:19:28,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:19:28,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:19:28,259.259 INFO    ] time= 25/10/2026 17:19:28
[2026-10-25 17:19:28,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:19:28,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:19:28,346.346 INFO    ] No existing commands found in stream
[2026-10-25 17:19:33,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:19:33,384.384 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 17:19:35,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:19:35,442.442 INFO    ] Checking for system updates...
[2026-10-25 17:19:35,478.478 INFO    ] 200
[2026-10-25 17:19:35,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:35,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:19:35,537.537 INFO    ] No update needed
[2026-10-25 17:19:35,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 17:19:35,574.574 INFO    ] 200
[2026-10-25 17:19:35,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:35,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:19:35,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:19:35,661.661 INFO    ] No camera update needed
[2026-10-25 17:19:35,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:19:35,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:19:35,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:19:35,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:19:37,719.719 INFO    ] ================================================
[2026-10-25 17:19:37,735.735 INFO    ] Launching Daemon at Sun Oct 25 17:19:37 IST 2026
[2026-10-25 17:19:37,746.746 INFO    ] ================================================
[2026-10-25 17:19:38,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:19:38
[2026-10-25 17:19:39,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:19:39,287.287 INFO    ] Initializing speech engine...
[2026-10-25 17:19:39,302.302 INFO    ] 2026-10-25 17:19:39
[2026-10-25 17:19:39,564.564 INFO    ] 2026-10-25 17:19:39
[2026-10-25 17:19:39,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:19:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:19:39,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:19:39,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:19:40,029.029 INFO    ] time= 25/10/2026 17:19:39
[2026-10-25 17:19:40,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:19:40,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:19:40,175.175 INFO    ] No existing commands found in stream
[2026-10-25 17:19:45,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:19:45,189.189 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 17:19:47,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:19:47,496.496 INFO    ] Checking for system updates...
[2026-10-25 17:19:47,532.532 INFO    ] 200
[2026-10-25 17:19:47,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:47,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:19:47,591.591 INFO    ] No update needed
[2026-10-25 17:19:47,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 17:19:47,632.632 INFO    ] 200
[2026-10-25 17:19:47,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:19:47,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:19:47,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:19:47,722.722 INFO    ] No camera update needed
[2026-10-25 17:19:47,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:19:47,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:19:47,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:19:47,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:19:49,777.777 INFO    ] ================================================
[2026-10-25 17:19:49,792.792 INFO    ] Launching Daemon at Sun Oct 25 17:19:49 IST 2026
[2026-10-25 17:19:49,803.803 INFO    ] ================================================
[2026-10-25 17:19:50,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:19:50
[2026-10-25 17:19:50,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:19:51,269.269 INFO    ] Initializing speech engine...
[2026-10-25 17:19:51,277.277 INFO    ] 2026-10-25 17:19:51
[2026-10-25 17:19:51,551.551 INFO    ] 2026-10-25 17:19:51
[2026-10-25 17:19:51,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:19:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:19:51,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:19:51,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:19:52,057.057 INFO    ] time= 25/10/2026 17:19:51
[2026-10-25 17:19:52,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:19:52,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:19:52,252.252 INFO    ] No existing commands found in stream
[2026-10-25 17:19:57,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:19:57,278.278 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 17:20:00,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:20:00,273.273 INFO    ] Checking for system updates...
[2026-10-25 17:20:00,310.310 INFO    ] 200
[2026-10-25 17:20:00,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:00,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:00,370.370 INFO    ] No update needed
[2026-10-25 17:20:00,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:00,409.409 INFO    ] 200
[2026-10-25 17:20:00,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:00,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:00,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:00,510.510 INFO    ] No camera update needed
[2026-10-25 17:20:00,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:00,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:00,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:00,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:20:02,573.573 INFO    ] ================================================
[2026-10-25 17:20:02,601.601 INFO    ] Launching Daemon at Sun Oct 25 17:20:02 IST 2026
[2026-10-25 17:20:02,618.618 INFO    ] ================================================
[2026-10-25 17:20:03,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:20:03
[2026-10-25 17:20:03,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:20:04,268.268 INFO    ] Initializing speech engine...
[2026-10-25 17:20:04,277.277 INFO    ] 2026-10-25 17:20:04
[2026-10-25 17:20:04,549.549 INFO    ] 2026-10-25 17:20:04
[2026-10-25 17:20:04,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:20:04,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:20:04,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:20:05,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:20:05,103.103 INFO    ] time= 25/10/2026 17:20:05
[2026-10-25 17:20:05,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:20:05,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:20:05,238.238 INFO    ] No existing commands found in stream
[2026-10-25 17:20:10,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:20:10,267.267 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 17:20:11,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:20:11,553.553 INFO    ] Checking for system updates...
[2026-10-25 17:20:11,595.595 INFO    ] 200
[2026-10-25 17:20:11,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:11,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:11,659.659 INFO    ] No update needed
[2026-10-25 17:20:11,662.662 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:11,699.699 INFO    ] 200
[2026-10-25 17:20:11,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:11,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:11,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:11,843.843 INFO    ] No camera update needed
[2026-10-25 17:20:11,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:11,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:11,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:11,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:20:13,897.897 INFO    ] ================================================
[2026-10-25 17:20:13,912.912 INFO    ] Launching Daemon at Sun Oct 25 17:20:13 IST 2026
[2026-10-25 17:20:13,923.923 INFO    ] ================================================
[2026-10-25 17:20:14,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:20:14
[2026-10-25 17:20:15,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:20:15,431.431 INFO    ] Initializing speech engine...
[2026-10-25 17:20:15,438.438 INFO    ] 2026-10-25 17:20:15
[2026-10-25 17:20:15,751.751 INFO    ] 2026-10-25 17:20:15
[2026-10-25 17:20:15,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:20:16,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:20:16,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:20:17,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:20:17,094.094 INFO    ] time= 25/10/2026 17:20:17
[2026-10-25 17:20:17,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:20:17,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:20:17,219.219 INFO    ] No existing commands found in stream
[2026-10-25 17:20:22,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:20:22,235.235 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 17:20:23,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:20:23,729.729 INFO    ] Checking for system updates...
[2026-10-25 17:20:23,765.765 INFO    ] 200
[2026-10-25 17:20:23,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:23,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:23,823.823 INFO    ] No update needed
[2026-10-25 17:20:23,825.825 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:23,863.863 INFO    ] 200
[2026-10-25 17:20:23,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:23,906.906 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:23,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:23,956.956 INFO    ] No camera update needed
[2026-10-25 17:20:23,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:23,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:23,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:20:26,011.011 INFO    ] ================================================
[2026-10-25 17:20:26,026.026 INFO    ] Launching Daemon at Sun Oct 25 17:20:26 IST 2026
[2026-10-25 17:20:26,036.036 INFO    ] ================================================
[2026-10-25 17:20:26,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:20:26
[2026-10-25 17:20:27,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:20:27,532.532 INFO    ] Initializing speech engine...
[2026-10-25 17:20:27,547.547 INFO    ] 2026-10-25 17:20:27
[2026-10-25 17:20:27,844.844 INFO    ] 2026-10-25 17:20:27
[2026-10-25 17:20:27,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:20:28,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:20:28,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:20:28,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:20:28,334.334 INFO    ] time= 25/10/2026 17:20:28
[2026-10-25 17:20:28,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:20:28,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:20:28,527.527 INFO    ] No existing commands found in stream
[2026-10-25 17:20:33,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:20:33,553.553 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 17:20:35,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:20:35,245.245 INFO    ] Checking for system updates...
[2026-10-25 17:20:35,282.282 INFO    ] 200
[2026-10-25 17:20:35,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:35,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:35,340.340 INFO    ] No update needed
[2026-10-25 17:20:35,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:35,377.377 INFO    ] 200
[2026-10-25 17:20:35,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:35,424.424 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:35,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:35,481.481 INFO    ] No camera update needed
[2026-10-25 17:20:35,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:35,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:35,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:35,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:20:37,534.534 INFO    ] ================================================
[2026-10-25 17:20:37,549.549 INFO    ] Launching Daemon at Sun Oct 25 17:20:37 IST 2026
[2026-10-25 17:20:37,560.560 INFO    ] ================================================
[2026-10-25 17:20:38,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:20:38
[2026-10-25 17:20:38,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:20:39,185.185 INFO    ] Initializing speech engine...
[2026-10-25 17:20:39,197.197 INFO    ] 2026-10-25 17:20:39
[2026-10-25 17:20:39,482.482 INFO    ] 2026-10-25 17:20:39
[2026-10-25 17:20:39,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:20:39,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:20:39,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:20:39,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:20:39,949.949 INFO    ] time= 25/10/2026 17:20:39
[2026-10-25 17:20:40,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:20:40,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:20:40,125.125 INFO    ] No existing commands found in stream
[2026-10-25 17:20:45,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:20:45,143.143 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 17:20:47,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:20:47,975.975 INFO    ] Checking for system updates...
[2026-10-25 17:20:48,015.015 INFO    ] 200
[2026-10-25 17:20:48,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:48,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:48,079.079 INFO    ] No update needed
[2026-10-25 17:20:48,082.082 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:48,115.115 INFO    ] 200
[2026-10-25 17:20:48,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:48,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:48,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:20:48,317.317 INFO    ] No camera update needed
[2026-10-25 17:20:48,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:48,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:48,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:48,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:20:50,372.372 INFO    ] ================================================
[2026-10-25 17:20:50,387.387 INFO    ] Launching Daemon at Sun Oct 25 17:20:50 IST 2026
[2026-10-25 17:20:50,398.398 INFO    ] ================================================
[2026-10-25 17:20:50,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:20:50
[2026-10-25 17:20:51,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:20:51,822.822 INFO    ] Initializing speech engine...
[2026-10-25 17:20:51,845.845 INFO    ] 2026-10-25 17:20:51
[2026-10-25 17:20:52,098.098 INFO    ] 2026-10-25 17:20:52
[2026-10-25 17:20:52,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:20:52,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:20:52,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:20:52,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:20:52,467.467 INFO    ] time= 25/10/2026 17:20:52
[2026-10-25 17:20:52,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:20:52,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:20:52,633.633 INFO    ] No existing commands found in stream
[2026-10-25 17:20:57,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:20:57,662.662 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 17:20:58,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:20:58,543.543 INFO    ] Checking for system updates...
[2026-10-25 17:20:58,582.582 INFO    ] 200
[2026-10-25 17:20:58,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:58,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:58,646.646 INFO    ] No update needed
[2026-10-25 17:20:58,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 17:20:58,682.682 INFO    ] 200
[2026-10-25 17:20:58,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:20:58,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:20:58,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:20:58,776.776 INFO    ] No camera update needed
[2026-10-25 17:20:58,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:20:58,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:20:58,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:20:58,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:21:00,832.832 INFO    ] ================================================
[2026-10-25 17:21:00,847.847 INFO    ] Launching Daemon at Sun Oct 25 17:21:00 IST 2026
[2026-10-25 17:21:00,858.858 INFO    ] ================================================
[2026-10-25 17:21:01,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:21:01
[2026-10-25 17:21:02,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:21:02,797.797 INFO    ] Initializing speech engine...
[2026-10-25 17:21:02,804.804 INFO    ] 2026-10-25 17:21:02
[2026-10-25 17:21:03,083.083 INFO    ] 2026-10-25 17:21:03
[2026-10-25 17:21:03,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:21:03,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:21:03,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:21:03,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:21:03,447.447 INFO    ] time= 25/10/2026 17:21:03
[2026-10-25 17:21:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:21:03,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:21:03,581.581 INFO    ] No existing commands found in stream
[2026-10-25 17:21:08,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:21:08,597.597 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 17:21:12,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:21:12,922.922 INFO    ] Checking for system updates...
[2026-10-25 17:21:12,965.965 INFO    ] 200
[2026-10-25 17:21:12,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:13,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:21:13,031.031 INFO    ] No update needed
[2026-10-25 17:21:13,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 17:21:13,074.074 INFO    ] 200
[2026-10-25 17:21:13,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:13,128.128 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:21:13,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:21:13,180.180 INFO    ] No camera update needed
[2026-10-25 17:21:13,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:21:13,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:21:13,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:21:13,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:21:15,236.236 INFO    ] ================================================
[2026-10-25 17:21:15,257.257 INFO    ] Launching Daemon at Sun Oct 25 17:21:15 IST 2026
[2026-10-25 17:21:15,268.268 INFO    ] ================================================
[2026-10-25 17:21:15,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:21:15
[2026-10-25 17:21:16,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:21:16,836.836 INFO    ] Initializing speech engine...
[2026-10-25 17:21:16,844.844 INFO    ] 2026-10-25 17:21:16
[2026-10-25 17:21:17,104.104 INFO    ] 2026-10-25 17:21:17
[2026-10-25 17:21:17,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:21:19,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:21:19,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:21:19,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:21:19,585.585 INFO    ] time= 25/10/2026 17:21:19
[2026-10-25 17:21:19,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:21:19,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:21:19,650.650 INFO    ] No existing commands found in stream
[2026-10-25 17:21:24,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:21:24,666.666 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 17:21:26,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:21:26,843.843 INFO    ] Checking for system updates...
[2026-10-25 17:21:26,884.884 INFO    ] 200
[2026-10-25 17:21:26,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:26,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:21:26,949.949 INFO    ] No update needed
[2026-10-25 17:21:26,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 17:21:26,984.984 INFO    ] 200
[2026-10-25 17:21:26,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:27,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:21:27,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:21:27,083.083 INFO    ] No camera update needed
[2026-10-25 17:21:27,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:21:27,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:21:27,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:21:27,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:21:29,141.141 INFO    ] ================================================
[2026-10-25 17:21:29,157.157 INFO    ] Launching Daemon at Sun Oct 25 17:21:29 IST 2026
[2026-10-25 17:21:29,167.167 INFO    ] ================================================
[2026-10-25 17:21:29,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:21:29
[2026-10-25 17:21:30,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:21:30,565.565 INFO    ] Initializing speech engine...
[2026-10-25 17:21:30,571.571 INFO    ] 2026-10-25 17:21:30
[2026-10-25 17:21:30,843.843 INFO    ] 2026-10-25 17:21:30
[2026-10-25 17:21:30,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:21:31,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:21:31,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:21:31,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:21:31,219.219 INFO    ] time= 25/10/2026 17:21:31
[2026-10-25 17:21:31,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:21:31,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:21:31,403.403 INFO    ] No existing commands found in stream
[2026-10-25 17:21:36,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:21:36,437.437 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 17:21:40,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:21:40,202.202 INFO    ] Checking for system updates...
[2026-10-25 17:21:40,242.242 INFO    ] 200
[2026-10-25 17:21:40,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:40,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:21:40,302.302 INFO    ] No update needed
[2026-10-25 17:21:40,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 17:21:40,340.340 INFO    ] 200
[2026-10-25 17:21:40,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:40,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:21:40,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:21:40,460.460 INFO    ] No camera update needed
[2026-10-25 17:21:40,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:21:40,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:21:40,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:21:40,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:21:42,516.516 INFO    ] ================================================
[2026-10-25 17:21:42,531.531 INFO    ] Launching Daemon at Sun Oct 25 17:21:42 IST 2026
[2026-10-25 17:21:42,542.542 INFO    ] ================================================
[2026-10-25 17:21:43,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:21:43
[2026-10-25 17:21:43,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:21:43,936.936 INFO    ] Initializing speech engine...
[2026-10-25 17:21:43,951.951 INFO    ] 2026-10-25 17:21:43
[2026-10-25 17:21:44,212.212 INFO    ] 2026-10-25 17:21:44
[2026-10-25 17:21:44,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:21:44,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:21:44,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:21:44,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:21:44,681.681 INFO    ] time= 25/10/2026 17:21:44
[2026-10-25 17:21:44,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:21:44,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:21:44,826.826 INFO    ] No existing commands found in stream
[2026-10-25 17:21:49,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:21:49,841.841 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 17:21:51,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:21:51,351.351 INFO    ] Checking for system updates...
[2026-10-25 17:21:51,397.397 INFO    ] 200
[2026-10-25 17:21:51,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:51,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:21:51,471.471 INFO    ] No update needed
[2026-10-25 17:21:51,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 17:21:51,512.512 INFO    ] 200
[2026-10-25 17:21:51,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:21:51,556.556 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:21:51,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:21:51,607.607 INFO    ] No camera update needed
[2026-10-25 17:21:51,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:21:51,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:21:51,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:21:51,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:21:53,668.668 INFO    ] ================================================
[2026-10-25 17:21:53,683.683 INFO    ] Launching Daemon at Sun Oct 25 17:21:53 IST 2026
[2026-10-25 17:21:53,693.693 INFO    ] ================================================
[2026-10-25 17:21:54,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:21:54
[2026-10-25 17:21:54,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:21:55,226.226 INFO    ] Initializing speech engine...
[2026-10-25 17:21:55,239.239 INFO    ] 2026-10-25 17:21:55
[2026-10-25 17:21:55,507.507 INFO    ] 2026-10-25 17:21:55
[2026-10-25 17:21:55,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:21:55,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:21:55,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:21:55,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:21:55,996.996 INFO    ] time= 25/10/2026 17:21:55
[2026-10-25 17:21:56,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:21:56,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:21:56,196.196 INFO    ] No existing commands found in stream
[2026-10-25 17:22:01,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:22:01,232.232 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 17:22:04,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:22:04,359.359 INFO    ] Checking for system updates...
[2026-10-25 17:22:04,396.396 INFO    ] 200
[2026-10-25 17:22:04,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:04,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:04,453.453 INFO    ] No update needed
[2026-10-25 17:22:04,455.455 INFO    ] Checking for camera pi updates...
[2026-10-25 17:22:04,494.494 INFO    ] 200
[2026-10-25 17:22:04,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:04,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:22:04,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:04,603.603 INFO    ] No camera update needed
[2026-10-25 17:22:04,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:22:04,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:22:04,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:22:04,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:22:06,658.658 INFO    ] ================================================
[2026-10-25 17:22:06,673.673 INFO    ] Launching Daemon at Sun Oct 25 17:22:06 IST 2026
[2026-10-25 17:22:06,684.684 INFO    ] ================================================
[2026-10-25 17:22:07,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:22:07
[2026-10-25 17:22:07,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:22:08,085.085 INFO    ] Initializing speech engine...
[2026-10-25 17:22:08,108.108 INFO    ] 2026-10-25 17:22:08
[2026-10-25 17:22:08,363.363 INFO    ] 2026-10-25 17:22:08
[2026-10-25 17:22:08,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:22:08,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:22:08,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:22:08,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:22:08,736.736 INFO    ] time= 25/10/2026 17:22:08
[2026-10-25 17:22:08,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:22:08,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:22:08,898.898 INFO    ] No existing commands found in stream
[2026-10-25 17:22:13,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:22:13,935.935 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 17:22:21,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:22:21,398.398 INFO    ] Checking for system updates...
[2026-10-25 17:22:21,437.437 INFO    ] 200
[2026-10-25 17:22:21,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:21,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:21,501.501 INFO    ] No update needed
[2026-10-25 17:22:21,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 17:22:21,541.541 INFO    ] 200
[2026-10-25 17:22:21,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:21,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:22:21,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:21,652.652 INFO    ] No camera update needed
[2026-10-25 17:22:21,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:22:21,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:22:21,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:22:21,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:22:23,709.709 INFO    ] ================================================
[2026-10-25 17:22:23,725.725 INFO    ] Launching Daemon at Sun Oct 25 17:22:23 IST 2026
[2026-10-25 17:22:23,736.736 INFO    ] ================================================
[2026-10-25 17:22:24,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:22:24
[2026-10-25 17:22:25,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:22:25,369.369 INFO    ] Initializing speech engine...
[2026-10-25 17:22:25,383.383 INFO    ] 2026-10-25 17:22:25
[2026-10-25 17:22:25,668.668 INFO    ] 2026-10-25 17:22:25
[2026-10-25 17:22:25,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:22:25,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:22:25,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:22:26,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:22:26,061.061 INFO    ] time= 25/10/2026 17:22:26
[2026-10-25 17:22:26,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:22:26,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:22:26,177.177 INFO    ] No existing commands found in stream
[2026-10-25 17:22:31,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:22:31,203.203 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 17:22:32,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:22:32,290.290 INFO    ] Checking for system updates...
[2026-10-25 17:22:32,329.329 INFO    ] 200
[2026-10-25 17:22:32,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:32,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:22:32,402.402 INFO    ] No update needed
[2026-10-25 17:22:32,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 17:22:32,452.452 INFO    ] 200
[2026-10-25 17:22:32,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:32,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:22:32,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:22:32,556.556 INFO    ] No camera update needed
[2026-10-25 17:22:32,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:22:32,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:22:32,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:22:32,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:22:34,613.613 INFO    ] ================================================
[2026-10-25 17:22:34,630.630 INFO    ] Launching Daemon at Sun Oct 25 17:22:34 IST 2026
[2026-10-25 17:22:34,640.640 INFO    ] ================================================
[2026-10-25 17:22:35,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:22:35
[2026-10-25 17:22:35,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:22:36,103.103 INFO    ] Initializing speech engine...
[2026-10-25 17:22:36,109.109 INFO    ] 2026-10-25 17:22:36
[2026-10-25 17:22:36,369.369 INFO    ] 2026-10-25 17:22:36
[2026-10-25 17:22:36,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:22:36,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:22:36,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:22:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:22:36,829.829 INFO    ] time= 25/10/2026 17:22:36
[2026-10-25 17:22:36,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:22:36,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:22:36,975.975 INFO    ] No existing commands found in stream
[2026-10-25 17:22:41,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:22:41,990.990 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 17:22:45,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:22:45,585.585 INFO    ] Checking for system updates...
[2026-10-25 17:22:45,625.625 INFO    ] 200
[2026-10-25 17:22:45,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:45,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:45,698.698 INFO    ] No update needed
[2026-10-25 17:22:45,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 17:22:45,735.735 INFO    ] 200
[2026-10-25 17:22:45,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:22:45,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:22:45,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:22:45,832.832 INFO    ] No camera update needed
[2026-10-25 17:22:45,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:22:45,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:22:45,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:22:45,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:22:47,889.889 INFO    ] ================================================
[2026-10-25 17:22:47,905.905 INFO    ] Launching Daemon at Sun Oct 25 17:22:47 IST 2026
[2026-10-25 17:22:47,916.916 INFO    ] ================================================
[2026-10-25 17:22:48,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:22:48
[2026-10-25 17:22:49,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:22:49,341.341 INFO    ] Initializing speech engine...
[2026-10-25 17:22:49,350.350 INFO    ] 2026-10-25 17:22:49
[2026-10-25 17:22:49,605.605 INFO    ] 2026-10-25 17:22:49
[2026-10-25 17:22:49,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:22:52,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:22:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:22:53,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:22:53,385.385 INFO    ] time= 25/10/2026 17:22:53
[2026-10-25 17:22:53,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:22:53,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:22:53,440.440 INFO    ] No existing commands found in stream
[2026-10-25 17:22:58,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:22:58,452.452 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 17:23:01,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:23:01,649.649 INFO    ] Checking for system updates...
[2026-10-25 17:23:01,717.717 INFO    ] 200
[2026-10-25 17:23:01,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:01,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:01,810.810 INFO    ] No update needed
[2026-10-25 17:23:01,814.814 INFO    ] Checking for camera pi updates...
[2026-10-25 17:23:01,859.859 INFO    ] 200
[2026-10-25 17:23:01,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:01,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:23:02,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:02,079.079 INFO    ] No camera update needed
[2026-10-25 17:23:02,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:23:02,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:23:02,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:23:02,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:23:04,146.146 INFO    ] ================================================
[2026-10-25 17:23:04,162.162 INFO    ] Launching Daemon at Sun Oct 25 17:23:04 IST 2026
[2026-10-25 17:23:04,173.173 INFO    ] ================================================
[2026-10-25 17:23:04,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:23:04
[2026-10-25 17:23:05,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:23:05,619.619 INFO    ] Initializing speech engine...
[2026-10-25 17:23:05,628.628 INFO    ] 2026-10-25 17:23:05
[2026-10-25 17:23:05,898.898 INFO    ] 2026-10-25 17:23:05
[2026-10-25 17:23:05,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:23:06,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:23:06,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:23:06,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:23:06,380.380 INFO    ] time= 25/10/2026 17:23:06
[2026-10-25 17:23:06,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:23:06,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:23:06,525.525 INFO    ] No existing commands found in stream
[2026-10-25 17:23:11,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:23:11,555.555 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 17:23:13,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:23:13,382.382 INFO    ] Checking for system updates...
[2026-10-25 17:23:13,419.419 INFO    ] 200
[2026-10-25 17:23:13,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:13,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:13,486.486 INFO    ] No update needed
[2026-10-25 17:23:13,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 17:23:13,526.526 INFO    ] 200
[2026-10-25 17:23:13,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:13,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:23:13,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:13,619.619 INFO    ] No camera update needed
[2026-10-25 17:23:13,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:23:13,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:23:13,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:23:13,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:23:15,678.678 INFO    ] ================================================
[2026-10-25 17:23:15,693.693 INFO    ] Launching Daemon at Sun Oct 25 17:23:15 IST 2026
[2026-10-25 17:23:15,704.704 INFO    ] ================================================
[2026-10-25 17:23:16,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:23:16
[2026-10-25 17:23:16,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:23:17,204.204 INFO    ] Initializing speech engine...
[2026-10-25 17:23:17,214.214 INFO    ] 2026-10-25 17:23:17
[2026-10-25 17:23:17,474.474 INFO    ] 2026-10-25 17:23:17
[2026-10-25 17:23:17,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:23:17,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:23:17,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:23:17,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:23:17,961.961 INFO    ] time= 25/10/2026 17:23:17
[2026-10-25 17:23:18,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:23:18,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:23:18,150.150 INFO    ] No existing commands found in stream
[2026-10-25 17:23:23,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:23:23,186.186 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 17:23:27,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:23:27,608.608 INFO    ] Checking for system updates...
[2026-10-25 17:23:27,649.649 INFO    ] 200
[2026-10-25 17:23:27,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:27,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:27,708.708 INFO    ] No update needed
[2026-10-25 17:23:27,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 17:23:27,750.750 INFO    ] 200
[2026-10-25 17:23:27,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:27,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:23:27,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:27,853.853 INFO    ] No camera update needed
[2026-10-25 17:23:27,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:23:27,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:23:27,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:23:27,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:23:29,910.910 INFO    ] ================================================
[2026-10-25 17:23:29,925.925 INFO    ] Launching Daemon at Sun Oct 25 17:23:29 IST 2026
[2026-10-25 17:23:29,936.936 INFO    ] ================================================
[2026-10-25 17:23:30,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:23:30
[2026-10-25 17:23:31,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:23:31,593.593 INFO    ] Initializing speech engine...
[2026-10-25 17:23:31,606.606 INFO    ] 2026-10-25 17:23:31
[2026-10-25 17:23:31,898.898 INFO    ] 2026-10-25 17:23:31
[2026-10-25 17:23:31,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:23:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:23:32,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:23:32,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:23:32,396.396 INFO    ] time= 25/10/2026 17:23:32
[2026-10-25 17:23:32,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:23:32,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:23:32,544.544 INFO    ] No existing commands found in stream
[2026-10-25 17:23:37,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:23:37,559.559 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 17:23:40,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:23:40,926.926 INFO    ] Checking for system updates...
[2026-10-25 17:23:40,966.966 INFO    ] 200
[2026-10-25 17:23:40,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:41,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:41,025.025 INFO    ] No update needed
[2026-10-25 17:23:41,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 17:23:41,069.069 INFO    ] 200
[2026-10-25 17:23:41,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:41,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:23:41,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:23:41,181.181 INFO    ] No camera update needed
[2026-10-25 17:23:41,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:23:41,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:23:41,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:23:41,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:23:43,236.236 INFO    ] ================================================
[2026-10-25 17:23:43,251.251 INFO    ] Launching Daemon at Sun Oct 25 17:23:43 IST 2026
[2026-10-25 17:23:43,262.262 INFO    ] ================================================
[2026-10-25 17:23:43,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:23:43
[2026-10-25 17:23:44,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:23:44,663.663 INFO    ] Initializing speech engine...
[2026-10-25 17:23:44,669.669 INFO    ] 2026-10-25 17:23:44
[2026-10-25 17:23:44,960.960 INFO    ] 2026-10-25 17:23:44
[2026-10-25 17:23:44,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:23:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:23:45,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:23:45,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:23:45,342.342 INFO    ] time= 25/10/2026 17:23:45
[2026-10-25 17:23:45,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:23:45,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:23:45,423.423 INFO    ] No existing commands found in stream
[2026-10-25 17:23:50,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:23:50,456.456 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 17:23:54,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:23:54,712.712 INFO    ] Checking for system updates...
[2026-10-25 17:23:54,749.749 INFO    ] 200
[2026-10-25 17:23:54,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:54,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:23:54,807.807 INFO    ] No update needed
[2026-10-25 17:23:54,809.809 INFO    ] Checking for camera pi updates...
[2026-10-25 17:23:54,843.843 INFO    ] 200
[2026-10-25 17:23:54,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:23:54,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:23:54,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:23:54,938.938 INFO    ] No camera update needed
[2026-10-25 17:23:54,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:23:54,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:23:54,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:23:54,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:23:57,995.995 INFO    ] ================================================
[2026-10-25 17:23:57,010.010 INFO    ] Launching Daemon at Sun Oct 25 17:23:57 IST 2026
[2026-10-25 17:23:57,020.020 INFO    ] ================================================
[2026-10-25 17:23:57,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:23:57
[2026-10-25 17:23:58,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:23:58,483.483 INFO    ] Initializing speech engine...
[2026-10-25 17:23:58,509.509 INFO    ] 2026-10-25 17:23:58
[2026-10-25 17:23:58,782.782 INFO    ] 2026-10-25 17:23:58
[2026-10-25 17:23:58,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:23:59,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:23:59,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:23:59,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:23:59,242.242 INFO    ] time= 25/10/2026 17:23:59
[2026-10-25 17:23:59,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:23:59,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:23:59,398.398 INFO    ] No existing commands found in stream
[2026-10-25 17:24:04,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:24:04,413.413 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 17:24:08,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:24:08,483.483 INFO    ] Checking for system updates...
[2026-10-25 17:24:08,519.519 INFO    ] 200
[2026-10-25 17:24:08,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:08,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:08,585.585 INFO    ] No update needed
[2026-10-25 17:24:08,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 17:24:08,621.621 INFO    ] 200
[2026-10-25 17:24:08,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:08,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:24:08,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:08,717.717 INFO    ] No camera update needed
[2026-10-25 17:24:08,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:24:08,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:24:08,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:24:08,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:24:10,773.773 INFO    ] ================================================
[2026-10-25 17:24:10,795.795 INFO    ] Launching Daemon at Sun Oct 25 17:24:10 IST 2026
[2026-10-25 17:24:10,806.806 INFO    ] ================================================
[2026-10-25 17:24:11,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:24:11
[2026-10-25 17:24:12,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:24:12,452.452 INFO    ] Initializing speech engine...
[2026-10-25 17:24:12,462.462 INFO    ] 2026-10-25 17:24:12
[2026-10-25 17:24:12,747.747 INFO    ] 2026-10-25 17:24:12
[2026-10-25 17:24:12,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:24:13,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:24:13,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:24:13,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:24:13,237.237 INFO    ] time= 25/10/2026 17:24:13
[2026-10-25 17:24:13,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:24:13,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:24:13,430.430 INFO    ] No existing commands found in stream
[2026-10-25 17:24:18,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:24:18,458.458 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 17:24:20,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:24:20,117.117 INFO    ] Checking for system updates...
[2026-10-25 17:24:20,156.156 INFO    ] 200
[2026-10-25 17:24:20,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:20,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:20,224.224 INFO    ] No update needed
[2026-10-25 17:24:20,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 17:24:20,266.266 INFO    ] 200
[2026-10-25 17:24:20,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:20,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:24:20,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:20,381.381 INFO    ] No camera update needed
[2026-10-25 17:24:20,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:24:20,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:24:20,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:24:20,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:24:22,441.441 INFO    ] ================================================
[2026-10-25 17:24:22,456.456 INFO    ] Launching Daemon at Sun Oct 25 17:24:22 IST 2026
[2026-10-25 17:24:22,468.468 INFO    ] ================================================
[2026-10-25 17:24:23,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:24:23
[2026-10-25 17:24:23,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:24:23,886.886 INFO    ] Initializing speech engine...
[2026-10-25 17:24:23,896.896 INFO    ] 2026-10-25 17:24:23
[2026-10-25 17:24:24,140.140 INFO    ] 2026-10-25 17:24:24
[2026-10-25 17:24:24,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:24:25,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:24:26,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:24:26,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:24:26,121.121 INFO    ] time= 25/10/2026 17:24:26
[2026-10-25 17:24:26,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:24:26,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:24:26,228.228 INFO    ] No existing commands found in stream
[2026-10-25 17:24:31,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:24:31,252.252 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 17:24:34,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:24:34,858.858 INFO    ] Checking for system updates...
[2026-10-25 17:24:34,894.894 INFO    ] 200
[2026-10-25 17:24:34,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:34,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:24:34,952.952 INFO    ] No update needed
[2026-10-25 17:24:34,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 17:24:34,988.988 INFO    ] 200
[2026-10-25 17:24:34,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:35,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:24:35,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:24:35,098.098 INFO    ] No camera update needed
[2026-10-25 17:24:35,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:24:35,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:24:35,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:24:35,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:24:37,157.157 INFO    ] ================================================
[2026-10-25 17:24:37,173.173 INFO    ] Launching Daemon at Sun Oct 25 17:24:37 IST 2026
[2026-10-25 17:24:37,183.183 INFO    ] ================================================
[2026-10-25 17:24:37,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:24:37
[2026-10-25 17:24:38,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:24:38,829.829 INFO    ] Initializing speech engine...
[2026-10-25 17:24:38,841.841 INFO    ] 2026-10-25 17:24:38
[2026-10-25 17:24:39,154.154 INFO    ] 2026-10-25 17:24:39
[2026-10-25 17:24:39,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:24:39,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:24:39,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:24:39,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:24:39,655.655 INFO    ] time= 25/10/2026 17:24:39
[2026-10-25 17:24:39,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:24:39,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:24:39,791.791 INFO    ] No existing commands found in stream
[2026-10-25 17:24:44,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:24:44,826.826 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 17:24:48,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:24:48,528.528 INFO    ] Checking for system updates...
[2026-10-25 17:24:48,570.570 INFO    ] 200
[2026-10-25 17:24:48,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:48,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:24:48,630.630 INFO    ] No update needed
[2026-10-25 17:24:48,633.633 INFO    ] Checking for camera pi updates...
[2026-10-25 17:24:48,673.673 INFO    ] 200
[2026-10-25 17:24:48,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:48,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:24:48,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:24:48,793.793 INFO    ] No camera update needed
[2026-10-25 17:24:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:24:48,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:24:48,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:24:48,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:24:50,853.853 INFO    ] ================================================
[2026-10-25 17:24:50,868.868 INFO    ] Launching Daemon at Sun Oct 25 17:24:50 IST 2026
[2026-10-25 17:24:50,879.879 INFO    ] ================================================
[2026-10-25 17:24:51,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:24:51
[2026-10-25 17:24:52,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:24:52,582.582 INFO    ] Initializing speech engine...
[2026-10-25 17:24:52,595.595 INFO    ] 2026-10-25 17:24:52
[2026-10-25 17:24:52,907.907 INFO    ] 2026-10-25 17:24:52
[2026-10-25 17:24:52,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:24:55,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:24:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:24:57,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:24:57,270.270 INFO    ] time= 25/10/2026 17:24:57
[2026-10-25 17:24:57,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:24:57,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:24:57,323.323 INFO    ] No existing commands found in stream
[2026-10-25 17:24:58,181.181 INFO    ] Received new command: ID=1792929298137-0
[2026-10-25 17:24:58,184.184 INFO    ] process_and_cleanup_command: msg_id=1792929298137-0
[2026-10-25 17:24:58,187.187 INFO    ] is_command_expired: timestamp=2026-10-25T11:54:57.944Z, expiry=30s
[2026-10-25 17:24:58,261.261 INFO    ] Command removed from stream: 1792929298137-0. returning for processing...
[2026-10-25 17:24:58,264.264 INFO    ] ***** get_valid_command
[2026-10-25 17:24:58,266.266 INFO    ] {'data': '{"request_id":"start-order-1792929297944-1sqs2k91q","orderId":"TM06202502261025172353545","is_vending":false}', 'timeout': '10', 'timestamp': '2026-10-25T11:54:57.944Z', 'source': 'webapp', 'command': 'start-order'}
[2026-10-25 17:24:58,269.269 INFO    ] ***** Parsed command data: {'orderId': 'TM06202502261025172353545', 'request_id': 'start-order-1792929297944-1sqs2k91q', 'is_vending': False}
[2026-10-25 17:24:58,272.272 INFO    ] Handling start order...
[2026-10-25 17:24:58,275.275 INFO    ] handle_start_order_command
[2026-10-25 17:24:58,282.282 INFO    ] _send_start_order_success: request_id=start-order-1792929297944-1sqs2k91q, order_id=TM06202502261025172353545
[2026-10-25 17:24:58,285.285 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202502
[2026-10-25 17:24:58,335.335 INFO    ] [_send_start_order_success] Message added to stream with ID: 1792929298295-0
[2026-10-25 17:24:58,338.338 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-25 17:24:58,341.341 INFO    ] Checking for system updates...
[2026-10-25 17:24:58,387.387 INFO    ] 200
[2026-10-25 17:24:58,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:58,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:58,448.448 INFO    ] No update needed
[2026-10-25 17:24:58,450.450 INFO    ] Checking for camera pi updates...
[2026-10-25 17:24:58,485.485 INFO    ] 200
[2026-10-25 17:24:58,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:24:58,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:24:58,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:24:58,588.588 INFO    ] No camera update needed
[2026-10-25 17:24:58,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:24:58,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:24:58,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:24:58,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:25:00,644.644 INFO    ] ================================================
[2026-10-25 17:25:00,660.660 INFO    ] Launching Daemon at Sun Oct 25 17:25:00 IST 2026
[2026-10-25 17:25:00,671.671 INFO    ] ================================================
[2026-10-25 17:25:01,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:25:01
[2026-10-25 17:25:02,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:25:02,743.743 INFO    ] Initializing speech engine...
[2026-10-25 17:25:02,751.751 INFO    ] 2026-10-25 17:25:02
[2026-10-25 17:25:03,036.036 INFO    ] 2026-10-25 17:25:03
[2026-10-25 17:25:03,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:25:03,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:25:03,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:25:03,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:25:03,479.479 INFO    ] time= 25/10/2026 17:25:03
[2026-10-25 17:25:03,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:25:03,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:25:03,649.649 INFO    ] Found 2 existing command(s) in stream
[2026-10-25 17:25:03,699.699 INFO    ] Checking historical command: ID=1792929298295-0
[2026-10-25 17:25:03,706.706 INFO    ] process_and_cleanup_command: msg_id=1792929298295-0
[2026-10-25 17:25:03,731.731 INFO    ] is_command_expired: timestamp=2026-10-25T11:54:58.283356Z, expiry=30s
[2026-10-25 17:25:03,899.899 INFO    ] Command removed from stream: 1792929298295-0. returning for processing...
[2026-10-25 17:25:03,934.934 INFO    ] ***** get_valid_command
[2026-10-25 17:25:03,989.989 INFO    ] {'timestamp': '2026-10-25T11:54:58.283356Z', 'message': 'start-order success', 'status': 'success', 'metadata_request_id': 'start-order-1792929297944-1sqs2k91q', 'imei': 'TM06202502', 'message_type': 'command_response', 'metadata_order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:04,021.021 INFO    ] Checking historical command: ID=1792929299634-0
[2026-10-25 17:25:04,080.080 INFO    ] process_and_cleanup_command: msg_id=1792929299634-0
[2026-10-25 17:25:04,134.134 INFO    ] is_command_expired: timestamp=2026-10-25T11:54:59.454Z, expiry=30s
[2026-10-25 17:25:04,218.218 INFO    ] Command removed from stream: 1792929299634-0. returning for processing...
[2026-10-25 17:25:04,229.229 INFO    ] ***** get_valid_command
[2026-10-25 17:25:04,232.232 INFO    ] {'timestamp': '2026-10-25T11:54:59.454Z', 'timeout': '60', 'data': '{"request_id":"process-order-1792929299454-x2y2l3sbc","orderId":"TM06202502261025172353545","is_vending":false,"accessCode":"20326118"}', 'source': 'webapp', 'command': 'process-order'}
[2026-10-25 17:25:04,235.235 INFO    ] ***** Parsed command data: {'accessCode': '20326118', 'orderId': 'TM06202502261025172353545', 'is_vending': False, 'request_id': 'process-order-1792929299454-x2y2l3sbc'}
[2026-10-25 17:25:04,238.238 INFO    ] Handling process order...
[2026-10-25 17:25:04,241.241 INFO    ] Processing process-order command...
[2026-10-25 17:25:04,342.342 INFO    ] 🔍 Lock file Order ID: TM06202502261025172353545, TS: 2026-10-25 17:24:58
[2026-10-25 17:25:04,382.382 INFO    ] ✅ Order lock valid for TM06202502261025172353545
[2026-10-25 17:25:04,388.388 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-25 17:25:04,391.391 INFO    ] processing access code 20326118 for order TM06202502261025172353545
[2026-10-25 17:25:04,442.442 INFO    ] 🔍 Lock file Order ID: TM06202502261025172353545, TS: 2026-10-25 17:24:58
[2026-10-25 17:25:04,446.446 INFO    ] ✅ Order lock valid for TM06202502261025172353545
[2026-10-25 17:25:04,464.464 INFO    ] 2026-10-25 17:25:04
[2026-10-25 17:25:04,539.539 INFO    ] 200
[2026-10-25 17:25:04,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:25:04,547.547 INFO    ] 20326118
[2026-10-25 17:25:04,551.551 INFO    ] 2026-10-25 17:25:04
[2026-10-25 17:25:04,555.555 INFO    ] session id :285485806
[2026-10-25 17:25:04,559.559 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=20326118&imei=TM06202502&session_id=285485806
[2026-10-25 17:25:05,674.674 INFO    ] 200
[2026-10-25 17:25:05,680.680 INFO    ] {"msg": "Order Data", "data": {"order_id": "TM06202502261025172353545", "access_code": "20326118", "bill_amount": "20", "invoice_bill": "20", "proposed_sku_json": [{"mrp": "20", "qty": 1, "tray_id": "42", "door_id": "2", "name": "Snickers Chocolate Bar 22g", "unit_price": 20, "skuid": "112220", "sku_total": 20, "offer_id": "", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "offer_desc": ""}], "mobile": "9353950726"}, "rstatus": true, "status": true}
[2026-10-25 17:25:05,685.685 INFO    ] 20
[2026-10-25 17:25:05,693.693 INFO    ] TM06202502261025172353545
[2026-10-25 17:25:05,712.712 INFO    ] 9353950726
[2026-10-25 17:25:05,726.726 INFO    ] 2026-10-25 17:25:05
[2026-10-25 17:25:05,730.730 INFO    ] Door Opening for user mobile ending with  zero seven two six 
[2026-10-25 17:25:05,735.735 INFO    ] Door Opening for user mobile ending with  zero seven two six 
[2026-10-25 17:25:05,740.740 INFO    ] e92bd79967803d681a57ff1e7eb1f135
[2026-10-25 17:25:05,750.750 INFO    ] 2026-10-25 17:25:05
[2026-10-25 17:25:05,755.755 INFO    ] playing audio file
[2026-10-25 17:25:05,778.778 INFO    ] 2026-10-25 17:25:05
[2026-10-25 17:25:05,785.785 INFO    ] 2026-10-25 17:25:05
[2026-10-25 17:25:05,797.797 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:05,812.812 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:05,958.958 INFO    ] [publish_status] Message added to stream with ID: 1792929305861-0
[2026-10-25 17:25:05,963.963 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'order-started', 'timestamp': '2026-10-25T11:55:05.788022Z', 'server_response': '{"status": true, "data": {"proposed_sku_json": [{"qty": 1, "tray_id": "42", "offer_desc": "", "mrp": "20", "door_id": "2", "sku_total": 20, "offer_id": "", "name": "Snickers Chocolate Bar 22g", "skuid": "112220", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "unit_price": 20}], "invoice_bill": "20", "mobile": "9353950726", "access_code": "20326118", "order_id": "TM06202502261025172353545", "bill_amount": "20"}, "msg": "Order Data", "rstatus": true}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929305861-0)
[2026-10-25 17:25:06,515.515 INFO    ] {'server_status': 'order-started', 'server_response': {'status': True, 'data': {'proposed_sku_json': [{'qty': 1, 'tray_id': '42', 'offer_desc': '', 'mrp': '20', 'door_id': '2', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g', 'skuid': '112220', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'unit_price': 20}], 'invoice_bill': '20', 'mobile': '9353950726', 'access_code': '20326118', 'order_id': 'TM06202502261025172353545', 'bill_amount': '20'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:06,586.586 INFO    ] 200
[2026-10-25 17:25:06,595.595 INFO    ] {"data":{"server_status":"order-started","server_response":{"status":true,"data":{"proposed_sku_json":[{"qty":1,"tray_id":"42","offer_desc":"","mrp":"20","door_id":"2","sku_total":20,"offer_id":"","name":"Snickers Chocolate Bar 22g","skuid":"112220","image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","unit_price":20}],"invoice_bill":"20","mobile":"9353950726","access_code":"20326118","order_id":"TM06202502261025172353545","bill_amount":"20"},"msg":"Order Data","rstatus":true},"order_id":"TM06202502261025172353545"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 17:25:06,614.614 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'order-started', 'server_response': {'data': {'proposed_sku_json': [{'qty': 1, 'tray_id': '42', 'unit_price': 20, 'mrp': '20', 'door_id': '2', 'offer_desc': '', 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g', 'skuid': '112220', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20}], 'invoice_bill': '20', 'access_code': '20326118', 'mobile': '9353950726', 'order_id': 'TM06202502261025172353545', 'bill_amount': '20'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:06,622.622 INFO    ] 2026-10-25 17:25:06
[2026-10-25 17:25:06,672.672 INFO    ] 200
[2026-10-25 17:25:06,675.675 INFO    ] True
[2026-10-25 17:25:06,829.829 INFO    ] 200
[2026-10-25 17:25:06,832.832 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": false, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:06,835.835 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}}
[2026-10-25 17:25:06,837.837 INFO    ] *** process_order ***
[2026-10-25 17:25:08,044.044 INFO    ] 200
[2026-10-25 17:25:08,047.047 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "delay": 0, "status": "True"}
[2026-10-25 17:25:08,049.049 INFO    ] {'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}
[2026-10-25 17:25:08,052.052 INFO    ] *** process_order ***
[2026-10-25 17:25:08,055.055 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:08,057.057 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:08,143.143 INFO    ] [publish_status] Message added to stream with ID: 1792929308101-0
[2026-10-25 17:25:08,145.145 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'doorOpened', 'server_response': '{"status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now."}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929308101-0)
[2026-10-25 17:25:09,189.189 INFO    ] 2026-10-25 17:25:09
[2026-10-25 17:25:09,192.192 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:09,194.194 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:09,273.273 INFO    ] [publish_status] Message added to stream with ID: 1792929309232-0
[2026-10-25 17:25:09,275.275 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'processOrder', 'timestamp': '2026-10-25T11:55:09.190318Z', 'server_response': '{"status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "voiceNote": "Please Wait", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929309232-0)
[2026-10-25 17:25:09,385.385 INFO    ] {'server_status': 'processOrder', 'server_response': {'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:09,388.388 INFO    ] 200
[2026-10-25 17:25:09,391.391 INFO    ] {"data":{"server_status":"processOrder","server_response":{"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"voiceNote":"Please Wait","rstatus":true,"SectionMain":{"Header":"Processing Order"},"delay":0},"order_id":"TM06202502261025172353545"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 17:25:09,394.394 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:09,397.397 INFO    ] 2026-10-25 17:25:09
[2026-10-25 17:25:09,400.400 INFO    ] None
[2026-10-25 17:25:09,402.402 INFO    ] Opening Door now
[2026-10-25 17:25:09,405.405 INFO    ] Opening Door now
[2026-10-25 17:25:09,408.408 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-25 17:25:09,411.411 INFO    ] 2026-10-25 17:25:09
[2026-10-25 17:25:09,414.414 INFO    ] playing audio file
[2026-10-25 17:25:09,430.430 INFO    ] 2026-10-25 17:25:09
[2026-10-25 17:25:09,434.434 INFO    ] 2026-10-25 17:25:09
[2026-10-25 17:25:12,531.531 INFO    ] 200
[2026-10-25 17:25:12,534.534 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:12,537.537 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-25 17:25:15,860.860 INFO    ] 200
[2026-10-25 17:25:15,863.863 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:15,866.866 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-25 17:25:18,931.931 INFO    ] 200
[2026-10-25 17:25:18,934.934 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:18,936.936 INFO    ] Please close door 2
[2026-10-25 17:25:18,939.939 INFO    ] Please close door 2
[2026-10-25 17:25:18,942.942 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-25 17:25:18,944.944 INFO    ] 2026-10-25 17:25:18
[2026-10-25 17:25:18,947.947 INFO    ] playing audio file
[2026-10-25 17:25:18,968.968 INFO    ] 2026-10-25 17:25:18
[2026-10-25 17:25:18,971.971 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:18,974.974 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:19,053.053 INFO    ] [publish_status] Message added to stream with ID: 1792929319011-0
[2026-10-25 17:25:19,056.056 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'OrderStatus', 'timestamp': '2026-10-25T11:55:18.969923Z', 'server_response': '{"error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "SectionStatus": {"Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 2", "rstatus": false, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929319011-0)
[2026-10-25 17:25:19,510.510 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:19,512.512 INFO    ] 200
[2026-10-25 17:25:19,515.515 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Snickers Chocolate Bar 22g"}]},"SectionStatus":{"Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 2","rstatus":false,"SectionMain":{"Header":"Door Open"}},"order_id":"TM06202502261025172353545"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 17:25:19,517.517 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'code': 20001, 'data': [], 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:19,520.520 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-25 17:25:22,592.592 INFO    ] 200
[2026-10-25 17:25:22,594.594 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2", "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:22,597.597 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-25 17:25:25,648.648 INFO    ] 200
[2026-10-25 17:25:25,651.651 INFO    ] {"SectionStatus": {"UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate", "Header": "Door 2 is closed now"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 2 is closed now", "delay": 1000, "status": "False", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}}
[2026-10-25 17:25:25,654.654 INFO    ] {'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'SectionStatus': {'Header': 'Door 2 is closed now', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Door 2 is closed now', 'rstatus': False, 'SectionMain': {'Header': 'Door Close'}, 'delay': 1000}
[2026-10-25 17:25:28,714.714 INFO    ] 200
[2026-10-25 17:25:28,717.717 INFO    ] {"SectionStatus": {"UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "SubHeader": "Please wait for invoice to generate", "Header": " Order is complete "}, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "rstatus": true, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "delay": 100, "status": "True"}
[2026-10-25 17:25:28,721.721 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:28,724.724 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:28,776.776 INFO    ] [publish_status] Message added to stream with ID: 1792929328734-0
[2026-10-25 17:25:28,778.778 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'OrderStatus', 'timestamp': '2026-10-25T11:55:28.718982Z', 'server_response': '{"status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "SectionStatus": {"Header": " Order is complete ", "UI_Header": "", "SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in"}, "voiceNote": "Transaction Completed", "rstatus": true, "SectionMain": {"Header": "Door Closed"}, "delay": 100}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929328734-0)
[2026-10-25 17:25:29,317.317 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}, 'order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:29,320.320 INFO    ] 200
[2026-10-25 17:25:29,323.323 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"status":"true","SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"SectionStatus":{"Header":" Order is complete ","UI_Header":"","SubHeader":"Please wait for invoice to generate","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"voiceNote":"Transaction Completed","rstatus":true,"SectionMain":{"Header":"Door Closed"},"delay":100},"order_id":"TM06202502261025172353545"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 17:25:29,326.326 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Closed'}, 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:29,329.329 INFO    ] {'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-10-25 17:25:29,332.332 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,334.334 INFO    ] Order Completed 
[2026-10-25 17:25:29,337.337 INFO    ] Order Completed 
[2026-10-25 17:25:29,340.340 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-25 17:25:29,343.343 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,346.346 INFO    ] playing audio file
[2026-10-25 17:25:29,367.367 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,371.371 INFO    ] {'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-10-25 17:25:29,374.374 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,808.808 INFO    ] 200
[2026-10-25 17:25:29,810.810 INFO    ] {"cart_offer_desc": "", "imei": "TM06202502", "res": true, "order_status": "", "anomaly": 0, "orderId": "TM06202502261025172353545", "total_amount": 20, "bill_amount": 20, "skus": [{"mrp": "20", "qty": 1, "tray_id": "42", "door_id": "", "name": "Snickers Chocolate Bar 22g per peice", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "skuid": "112220", "sku_total": 20, "offer_id": "", "unit_price": "20"}], "rstatus": true, "userId": "9353950726"}
[2026-10-25 17:25:29,814.814 INFO    ] {'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'qty': 1, 'tray_id': '42', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'skuid': '112220'}], 'orderId': 'TM06202502261025172353545', 'imei': 'TM06202502', 'order_status': '', 'userId': '9353950726', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20}
[2026-10-25 17:25:29,816.816 INFO    ] {'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'qty': 1, 'tray_id': '42', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'skuid': '112220'}], 'orderId': 'TM06202502261025172353545', 'imei': 'TM06202502', 'order_status': '', 'userId': '9353950726', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20}
[2026-10-25 17:25:29,818.818 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,821.821 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,823.823 INFO    ] 20
[2026-10-25 17:25:29,826.826 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,829.829 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,832.832 INFO    ]  Your Bill Amount is 20
[2026-10-25 17:25:29,834.834 INFO    ]  Your Bill Amount is 20
[2026-10-25 17:25:29,837.837 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-10-25 17:25:29,839.839 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,842.842 INFO    ] playing audio file
[2026-10-25 17:25:29,858.858 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,861.861 INFO    ] 2026-10-25 17:25:29
[2026-10-25 17:25:29,865.865 INFO    ] publish_status: order_id=TM06202502261025172353545
[2026-10-25 17:25:29,867.867 INFO    ] [publish_status] Adding message to stream: order:TM06202502261025172353545
[2026-10-25 17:25:29,921.921 INFO    ] [publish_status] Message added to stream with ID: 1792929329879-0
[2026-10-25 17:25:29,924.924 INFO    ] Published to order:TM06202502261025172353545: {'server_status': 'invoiceOrder', 'timestamp': '2026-10-25T11:55:29.863274Z', 'server_response': '{"res": true, "anomaly": 0, "total_amount": 20, "skus": [{"qty": 1, "tray_id": "42", "mrp": "20", "door_id": "", "sku_total": 20, "offer_id": "", "name": "Snickers Chocolate Bar 22g per peice", "unit_price": "20", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "skuid": "112220"}], "orderId": "TM06202502261025172353545", "imei": "TM06202502", "order_status": "", "userId": "9353950726", "rstatus": true, "cart_offer_desc": "", "bill_amount": 20}', 'order_id': 'TM06202502261025172353545'} (ID: 1792929329879-0)
[2026-10-25 17:25:30,045.045 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'qty': 1, 'tray_id': '42', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g per peice', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'skuid': '112220'}], 'orderId': 'TM06202502261025172353545', 'imei': 'TM06202502', 'order_status': '', 'userId': '9353950726', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20}, 'order_id': 'TM06202502261025172353545'}
[2026-10-25 17:25:30,048.048 INFO    ] 200
[2026-10-25 17:25:30,050.050 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"res":true,"anomaly":0,"total_amount":20,"skus":[{"qty":1,"tray_id":"42","mrp":"20","door_id":"","sku_total":20,"offer_id":"","name":"Snickers Chocolate Bar 22g per peice","unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","skuid":"112220"}],"orderId":"TM06202502261025172353545","imei":"TM06202502","order_status":"","userId":"9353950726","rstatus":true,"cart_offer_desc":"","bill_amount":20},"order_id":"TM06202502261025172353545"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-25 17:25:30,053.053 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'qty': 1, 'tray_id': '42', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g per peice', 'skuid': '112220', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'unit_price': '20'}], 'orderId': 'TM06202502261025172353545', 'imei': 'TM06202502', 'order_status': '', 'userId': '9353950726', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:30,055.055 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': True, 'anomaly': 0, 'total_amount': 20, 'skus': [{'qty': 1, 'tray_id': '42', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'offer_id': '', 'name': 'Snickers Chocolate Bar 22g per peice', 'skuid': '112220', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'unit_price': '20'}], 'orderId': 'TM06202502261025172353545', 'imei': 'TM06202502', 'order_status': '', 'userId': '9353950726', 'rstatus': True, 'cart_offer_desc': '', 'bill_amount': 20}, 'order_id': 'TM06202502261025172353545'}}
[2026-10-25 17:25:30,058.058 INFO    ] 2026-10-25 17:25:30
[2026-10-25 17:25:33,092.092 INFO    ] 200
[2026-10-25 17:25:33,094.094 INFO    ] {"tray_synced": ["TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545", "TM06202502261025172353545"], "order_items": [], "orders_data": [], "orders_synced": [], "orders": [], "tray_sync": [], "orders_data_synced": [], "status": true, "order_items_synced": ["TM06202502261025172353545_0"]}
[2026-10-25 17:25:33,097.097 INFO    ] 2026-10-25 17:25:33
[2026-10-25 17:25:33,222.222 INFO    ] 200
[2026-10-25 17:25:33,225.225 INFO    ] True
[2026-10-25 17:25:33,227.227 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202502261025172353545
[2026-10-25 17:25:33,230.230 INFO    ] start order file deleted
[2026-10-25 17:25:33,233.233 INFO    ] Checking for system updates...
[2026-10-25 17:25:33,267.267 INFO    ] 200
[2026-10-25 17:25:33,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:25:33,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:25:33,332.332 INFO    ] No update needed
[2026-10-25 17:25:33,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 17:25:33,372.372 INFO    ] 200
[2026-10-25 17:25:33,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:25:33,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:25:33,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:25:33,460.460 INFO    ] No camera update needed
[2026-10-25 17:25:33,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:25:33,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:25:33,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:25:33,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:25:35,516.516 INFO    ] ================================================
[2026-10-25 17:25:35,532.532 INFO    ] Launching Daemon at Sun Oct 25 17:25:35 IST 2026
[2026-10-25 17:25:35,543.543 INFO    ] ================================================
[2026-10-25 17:25:36,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:25:36
[2026-10-25 17:25:36,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:25:36,953.953 INFO    ] Initializing speech engine...
[2026-10-25 17:25:36,961.961 INFO    ] 2026-10-25 17:25:36
[2026-10-25 17:25:37,259.259 INFO    ] 2026-10-25 17:25:37
[2026-10-25 17:25:37,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:25:37,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:25:37,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:25:37,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:25:37,645.645 INFO    ] time= 25/10/2026 17:25:37
[2026-10-25 17:25:37,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:25:37,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:25:37,775.775 INFO    ] No existing commands found in stream
[2026-10-25 17:25:42,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:25:42,789.789 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 17:25:47,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:25:47,169.169 INFO    ] Checking for system updates...
[2026-10-25 17:25:47,232.232 INFO    ] 200
[2026-10-25 17:25:47,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:25:47,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:25:47,291.291 INFO    ] No update needed
[2026-10-25 17:25:47,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 17:25:47,327.327 INFO    ] 200
[2026-10-25 17:25:47,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:25:47,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:25:47,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:25:47,425.425 INFO    ] No camera update needed
[2026-10-25 17:25:47,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:25:47,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:25:47,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:25:47,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:25:49,482.482 INFO    ] ================================================
[2026-10-25 17:25:49,497.497 INFO    ] Launching Daemon at Sun Oct 25 17:25:49 IST 2026
[2026-10-25 17:25:49,509.509 INFO    ] ================================================
[2026-10-25 17:25:50,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:25:50
[2026-10-25 17:25:50,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:25:51,081.081 INFO    ] Initializing speech engine...
[2026-10-25 17:25:51,095.095 INFO    ] 2026-10-25 17:25:51
[2026-10-25 17:25:51,421.421 INFO    ] 2026-10-25 17:25:51
[2026-10-25 17:25:51,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:25:51,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:25:51,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:25:51,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:25:51,856.856 INFO    ] time= 25/10/2026 17:25:51
[2026-10-25 17:25:51,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:25:51,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:25:52,009.009 INFO    ] No existing commands found in stream
[2026-10-25 17:25:57,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:25:57,023.023 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 17:25:59,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:25:59,928.928 INFO    ] Checking for system updates...
[2026-10-25 17:25:59,964.964 INFO    ] 200
[2026-10-25 17:25:59,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:00,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:00,030.030 INFO    ] No update needed
[2026-10-25 17:26:00,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 17:26:00,066.066 INFO    ] 200
[2026-10-25 17:26:00,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:00,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:26:00,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:00,171.171 INFO    ] No camera update needed
[2026-10-25 17:26:00,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:26:00,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:26:00,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:26:00,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:26:02,240.240 INFO    ] ================================================
[2026-10-25 17:26:02,273.273 INFO    ] Launching Daemon at Sun Oct 25 17:26:02 IST 2026
[2026-10-25 17:26:02,288.288 INFO    ] ================================================
[2026-10-25 17:26:03,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:26:03
[2026-10-25 17:26:03,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:26:04,207.207 INFO    ] Initializing speech engine...
[2026-10-25 17:26:04,221.221 INFO    ] 2026-10-25 17:26:04
[2026-10-25 17:26:04,535.535 INFO    ] 2026-10-25 17:26:04
[2026-10-25 17:26:04,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:26:04,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:26:04,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:26:04,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:26:04,961.961 INFO    ] time= 25/10/2026 17:26:04
[2026-10-25 17:26:05,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:26:05,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:26:05,106.106 INFO    ] No existing commands found in stream
[2026-10-25 17:26:10,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:26:10,131.131 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 17:26:14,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:26:14,404.404 INFO    ] Checking for system updates...
[2026-10-25 17:26:14,441.441 INFO    ] 200
[2026-10-25 17:26:14,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:14,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:14,503.503 INFO    ] No update needed
[2026-10-25 17:26:14,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 17:26:14,547.547 INFO    ] 200
[2026-10-25 17:26:14,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:14,601.601 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:26:14,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:14,664.664 INFO    ] No camera update needed
[2026-10-25 17:26:14,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:26:14,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:26:14,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:26:14,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:26:16,725.725 INFO    ] ================================================
[2026-10-25 17:26:16,745.745 INFO    ] Launching Daemon at Sun Oct 25 17:26:16 IST 2026
[2026-10-25 17:26:16,756.756 INFO    ] ================================================
[2026-10-25 17:26:17,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:26:17
[2026-10-25 17:26:17,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:26:18,159.159 INFO    ] Initializing speech engine...
[2026-10-25 17:26:18,168.168 INFO    ] 2026-10-25 17:26:18
[2026-10-25 17:26:18,466.466 INFO    ] 2026-10-25 17:26:18
[2026-10-25 17:26:18,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:26:18,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:26:18,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:26:18,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:26:18,851.851 INFO    ] time= 25/10/2026 17:26:18
[2026-10-25 17:26:18,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:26:18,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:26:18,978.978 INFO    ] No existing commands found in stream
[2026-10-25 17:26:23,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:26:23,993.993 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 17:26:30,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:26:30,350.350 INFO    ] Checking for system updates...
[2026-10-25 17:26:30,391.391 INFO    ] 200
[2026-10-25 17:26:30,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:30,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:30,451.451 INFO    ] No update needed
[2026-10-25 17:26:30,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 17:26:30,488.488 INFO    ] 200
[2026-10-25 17:26:30,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:30,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:26:30,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:30,589.589 INFO    ] No camera update needed
[2026-10-25 17:26:30,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:26:30,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:26:30,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:26:30,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:26:32,648.648 INFO    ] ================================================
[2026-10-25 17:26:32,665.665 INFO    ] Launching Daemon at Sun Oct 25 17:26:32 IST 2026
[2026-10-25 17:26:32,678.678 INFO    ] ================================================
[2026-10-25 17:26:33,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:26:33
[2026-10-25 17:26:33,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:26:34,195.195 INFO    ] Initializing speech engine...
[2026-10-25 17:26:34,204.204 INFO    ] 2026-10-25 17:26:34
[2026-10-25 17:26:34,449.449 INFO    ] 2026-10-25 17:26:34
[2026-10-25 17:26:34,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:26:34,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:26:34,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:26:34,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:26:34,923.923 INFO    ] time= 25/10/2026 17:26:34
[2026-10-25 17:26:34,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:26:35,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:26:35,064.064 INFO    ] No existing commands found in stream
[2026-10-25 17:26:40,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:26:40,079.079 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 17:26:41,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:26:41,833.833 INFO    ] Checking for system updates...
[2026-10-25 17:26:41,877.877 INFO    ] 200
[2026-10-25 17:26:41,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:41,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:41,935.935 INFO    ] No update needed
[2026-10-25 17:26:41,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 17:26:41,981.981 INFO    ] 200
[2026-10-25 17:26:41,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:42,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:26:42,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:42,092.092 INFO    ] No camera update needed
[2026-10-25 17:26:42,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:26:42,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:26:42,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:26:42,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:26:44,148.148 INFO    ] ================================================
[2026-10-25 17:26:44,163.163 INFO    ] Launching Daemon at Sun Oct 25 17:26:44 IST 2026
[2026-10-25 17:26:44,174.174 INFO    ] ================================================
[2026-10-25 17:26:44,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:26:44
[2026-10-25 17:26:45,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:26:45,590.590 INFO    ] Initializing speech engine...
[2026-10-25 17:26:45,596.596 INFO    ] 2026-10-25 17:26:45
[2026-10-25 17:26:45,896.896 INFO    ] 2026-10-25 17:26:45
[2026-10-25 17:26:45,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:26:46,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:26:46,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:26:46,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:26:46,280.280 INFO    ] time= 25/10/2026 17:26:46
[2026-10-25 17:26:46,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:26:46,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:26:46,409.409 INFO    ] No existing commands found in stream
[2026-10-25 17:26:51,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:26:51,423.423 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 17:26:53,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:26:53,742.742 INFO    ] Checking for system updates...
[2026-10-25 17:26:53,781.781 INFO    ] 200
[2026-10-25 17:26:53,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:53,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:53,842.842 INFO    ] No update needed
[2026-10-25 17:26:53,844.844 INFO    ] Checking for camera pi updates...
[2026-10-25 17:26:53,880.880 INFO    ] 200
[2026-10-25 17:26:53,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:26:53,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:26:53,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:26:53,986.986 INFO    ] No camera update needed
[2026-10-25 17:26:53,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:26:53,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:26:53,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:26:54,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:26:56,046.046 INFO    ] ================================================
[2026-10-25 17:26:56,062.062 INFO    ] Launching Daemon at Sun Oct 25 17:26:56 IST 2026
[2026-10-25 17:26:56,073.073 INFO    ] ================================================
[2026-10-25 17:26:56,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:26:56
[2026-10-25 17:26:57,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:26:57,502.502 INFO    ] Initializing speech engine...
[2026-10-25 17:26:57,511.511 INFO    ] 2026-10-25 17:26:57
[2026-10-25 17:26:57,754.754 INFO    ] 2026-10-25 17:26:57
[2026-10-25 17:26:57,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:27:01,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:27:01,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:27:02,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:27:02,021.021 INFO    ] time= 25/10/2026 17:27:02
[2026-10-25 17:27:02,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:27:02,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:27:02,089.089 INFO    ] No existing commands found in stream
[2026-10-25 17:27:07,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:27:07,102.102 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 17:27:08,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:27:08,600.600 INFO    ] Checking for system updates...
[2026-10-25 17:27:08,636.636 INFO    ] 200
[2026-10-25 17:27:08,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:08,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:08,694.694 INFO    ] No update needed
[2026-10-25 17:27:08,697.697 INFO    ] Checking for camera pi updates...
[2026-10-25 17:27:08,734.734 INFO    ] 200
[2026-10-25 17:27:08,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:08,777.777 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:27:08,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:08,840.840 INFO    ] No camera update needed
[2026-10-25 17:27:08,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:27:08,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:27:08,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:27:08,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:27:10,896.896 INFO    ] ================================================
[2026-10-25 17:27:10,913.913 INFO    ] Launching Daemon at Sun Oct 25 17:27:10 IST 2026
[2026-10-25 17:27:10,924.924 INFO    ] ================================================
[2026-10-25 17:27:11,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:27:11
[2026-10-25 17:27:12,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:27:12,322.322 INFO    ] Initializing speech engine...
[2026-10-25 17:27:12,346.346 INFO    ] 2026-10-25 17:27:12
[2026-10-25 17:27:12,601.601 INFO    ] 2026-10-25 17:27:12
[2026-10-25 17:27:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:27:12,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:27:12,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:27:12,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:27:12,978.978 INFO    ] time= 25/10/2026 17:27:12
[2026-10-25 17:27:12,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:27:13,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:27:13,123.123 INFO    ] No existing commands found in stream
[2026-10-25 17:27:18,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:27:18,151.151 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 17:27:21,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:27:21,910.910 INFO    ] Checking for system updates...
[2026-10-25 17:27:21,946.946 INFO    ] 200
[2026-10-25 17:27:21,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:22,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:22,003.003 INFO    ] No update needed
[2026-10-25 17:27:22,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 17:27:22,061.061 INFO    ] 200
[2026-10-25 17:27:22,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:22,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:27:22,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:22,274.274 INFO    ] No camera update needed
[2026-10-25 17:27:22,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:27:22,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:27:22,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:27:22,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:27:24,333.333 INFO    ] ================================================
[2026-10-25 17:27:24,349.349 INFO    ] Launching Daemon at Sun Oct 25 17:27:24 IST 2026
[2026-10-25 17:27:24,361.361 INFO    ] ================================================
[2026-10-25 17:27:25,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:27:25
[2026-10-25 17:27:25,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:27:25,996.996 INFO    ] Initializing speech engine...
[2026-10-25 17:27:26,011.011 INFO    ] 2026-10-25 17:27:25
[2026-10-25 17:27:26,302.302 INFO    ] 2026-10-25 17:27:26
[2026-10-25 17:27:26,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:27:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:27:26,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:27:26,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:27:26,842.842 INFO    ] time= 25/10/2026 17:27:26
[2026-10-25 17:27:26,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:27:26,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:27:26,992.992 INFO    ] No existing commands found in stream
[2026-10-25 17:27:32,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:27:32,018.018 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 17:27:36,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:27:36,519.519 INFO    ] Checking for system updates...
[2026-10-25 17:27:36,557.557 INFO    ] 200
[2026-10-25 17:27:36,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:36,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:36,616.616 INFO    ] No update needed
[2026-10-25 17:27:36,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 17:27:36,652.652 INFO    ] 200
[2026-10-25 17:27:36,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:36,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:27:36,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:27:36,750.750 INFO    ] No camera update needed
[2026-10-25 17:27:36,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:27:36,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:27:36,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:27:36,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:27:38,806.806 INFO    ] ================================================
[2026-10-25 17:27:38,821.821 INFO    ] Launching Daemon at Sun Oct 25 17:27:38 IST 2026
[2026-10-25 17:27:38,833.833 INFO    ] ================================================
[2026-10-25 17:27:39,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:27:39
[2026-10-25 17:27:40,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:27:40,397.397 INFO    ] Initializing speech engine...
[2026-10-25 17:27:40,405.405 INFO    ] 2026-10-25 17:27:40
[2026-10-25 17:27:40,662.662 INFO    ] 2026-10-25 17:27:40
[2026-10-25 17:27:40,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:27:40,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:27:40,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:27:41,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:27:41,030.030 INFO    ] time= 25/10/2026 17:27:41
[2026-10-25 17:27:41,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:27:41,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:27:41,209.209 INFO    ] No existing commands found in stream
[2026-10-25 17:27:46,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:27:46,242.242 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 17:27:49,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:27:49,825.825 INFO    ] Checking for system updates...
[2026-10-25 17:27:49,865.865 INFO    ] 200
[2026-10-25 17:27:49,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:49,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:27:49,924.924 INFO    ] No update needed
[2026-10-25 17:27:49,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 17:27:49,960.960 INFO    ] 200
[2026-10-25 17:27:49,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:27:50,008.008 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:27:50,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:27:50,060.060 INFO    ] No camera update needed
[2026-10-25 17:27:50,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:27:50,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:27:50,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:27:50,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:27:52,116.116 INFO    ] ================================================
[2026-10-25 17:27:52,133.133 INFO    ] Launching Daemon at Sun Oct 25 17:27:52 IST 2026
[2026-10-25 17:27:52,146.146 INFO    ] ================================================
[2026-10-25 17:27:52,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:27:52
[2026-10-25 17:27:53,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:27:53,777.777 INFO    ] Initializing speech engine...
[2026-10-25 17:27:53,792.792 INFO    ] 2026-10-25 17:27:53
[2026-10-25 17:27:54,107.107 INFO    ] 2026-10-25 17:27:54
[2026-10-25 17:27:54,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:27:54,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:27:54,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:27:54,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:27:54,552.552 INFO    ] time= 25/10/2026 17:27:54
[2026-10-25 17:27:54,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:27:54,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:27:54,754.754 INFO    ] No existing commands found in stream
[2026-10-25 17:27:59,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:27:59,783.783 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 17:28:03,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:28:03,953.953 INFO    ] Checking for system updates...
[2026-10-25 17:28:03,989.989 INFO    ] 200
[2026-10-25 17:28:03,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:04,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:04,067.067 INFO    ] No update needed
[2026-10-25 17:28:04,073.073 INFO    ] Checking for camera pi updates...
[2026-10-25 17:28:04,114.114 INFO    ] 200
[2026-10-25 17:28:04,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:04,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:28:04,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:04,212.212 INFO    ] No camera update needed
[2026-10-25 17:28:04,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:28:04,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:28:04,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:28:04,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:28:06,280.280 INFO    ] ================================================
[2026-10-25 17:28:06,295.295 INFO    ] Launching Daemon at Sun Oct 25 17:28:06 IST 2026
[2026-10-25 17:28:06,306.306 INFO    ] ================================================
[2026-10-25 17:28:06,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:28:06
[2026-10-25 17:28:07,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:28:07,959.959 INFO    ] Initializing speech engine...
[2026-10-25 17:28:07,973.973 INFO    ] 2026-10-25 17:28:07
[2026-10-25 17:28:08,256.256 INFO    ] 2026-10-25 17:28:08
[2026-10-25 17:28:08,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:28:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:28:08,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:28:08,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:28:08,722.722 INFO    ] time= 25/10/2026 17:28:08
[2026-10-25 17:28:08,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:28:08,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:28:08,870.870 INFO    ] No existing commands found in stream
[2026-10-25 17:28:13,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:28:13,886.886 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 17:28:15,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:28:15,497.497 INFO    ] Checking for system updates...
[2026-10-25 17:28:15,534.534 INFO    ] 200
[2026-10-25 17:28:15,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:15,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:15,600.600 INFO    ] No update needed
[2026-10-25 17:28:15,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 17:28:15,648.648 INFO    ] 200
[2026-10-25 17:28:15,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:15,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:28:15,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:15,758.758 INFO    ] No camera update needed
[2026-10-25 17:28:15,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:28:15,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:28:15,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:28:15,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:28:17,816.816 INFO    ] ================================================
[2026-10-25 17:28:17,832.832 INFO    ] Launching Daemon at Sun Oct 25 17:28:17 IST 2026
[2026-10-25 17:28:17,843.843 INFO    ] ================================================
[2026-10-25 17:28:18,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:28:18
[2026-10-25 17:28:19,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:28:19,275.275 INFO    ] Initializing speech engine...
[2026-10-25 17:28:19,283.283 INFO    ] 2026-10-25 17:28:19
[2026-10-25 17:28:19,529.529 INFO    ] 2026-10-25 17:28:19
[2026-10-25 17:28:19,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:28:19,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:28:19,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:28:19,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:28:19,979.979 INFO    ] time= 25/10/2026 17:28:19
[2026-10-25 17:28:20,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:28:20,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:28:20,154.154 INFO    ] No existing commands found in stream
[2026-10-25 17:28:25,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:28:25,168.168 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 17:28:29,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:28:29,591.591 INFO    ] Checking for system updates...
[2026-10-25 17:28:29,629.629 INFO    ] 200
[2026-10-25 17:28:29,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:29,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:29,689.689 INFO    ] No update needed
[2026-10-25 17:28:29,692.692 INFO    ] Checking for camera pi updates...
[2026-10-25 17:28:29,731.731 INFO    ] 200
[2026-10-25 17:28:29,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:29,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:28:29,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:29,833.833 INFO    ] No camera update needed
[2026-10-25 17:28:29,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:28:29,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:28:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:28:29,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:28:31,893.893 INFO    ] ================================================
[2026-10-25 17:28:31,908.908 INFO    ] Launching Daemon at Sun Oct 25 17:28:31 IST 2026
[2026-10-25 17:28:31,918.918 INFO    ] ================================================
[2026-10-25 17:28:32,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:28:32
[2026-10-25 17:28:33,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:28:33,489.489 INFO    ] Initializing speech engine...
[2026-10-25 17:28:33,498.498 INFO    ] 2026-10-25 17:28:33
[2026-10-25 17:28:33,764.764 INFO    ] 2026-10-25 17:28:33
[2026-10-25 17:28:33,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:28:34,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:28:34,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:28:35,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:28:35,170.170 INFO    ] time= 25/10/2026 17:28:35
[2026-10-25 17:28:35,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:28:35,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:28:35,285.285 INFO    ] No existing commands found in stream
[2026-10-25 17:28:40,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:28:40,314.314 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 17:28:43,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:28:43,242.242 INFO    ] Checking for system updates...
[2026-10-25 17:28:43,278.278 INFO    ] 200
[2026-10-25 17:28:43,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:43,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:43,339.339 INFO    ] No update needed
[2026-10-25 17:28:43,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 17:28:43,376.376 INFO    ] 200
[2026-10-25 17:28:43,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:43,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:28:43,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:43,486.486 INFO    ] No camera update needed
[2026-10-25 17:28:43,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:28:43,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:28:43,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:28:43,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:28:45,541.541 INFO    ] ================================================
[2026-10-25 17:28:45,556.556 INFO    ] Launching Daemon at Sun Oct 25 17:28:45 IST 2026
[2026-10-25 17:28:45,567.567 INFO    ] ================================================
[2026-10-25 17:28:46,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:28:46
[2026-10-25 17:28:46,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:28:47,206.206 INFO    ] Initializing speech engine...
[2026-10-25 17:28:47,214.214 INFO    ] 2026-10-25 17:28:47
[2026-10-25 17:28:47,508.508 INFO    ] 2026-10-25 17:28:47
[2026-10-25 17:28:47,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:28:47,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:28:47,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:28:47,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:28:47,974.974 INFO    ] time= 25/10/2026 17:28:47
[2026-10-25 17:28:48,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:28:48,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:28:48,129.129 INFO    ] No existing commands found in stream
[2026-10-25 17:28:53,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:28:53,146.146 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 17:28:57,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:28:57,397.397 INFO    ] Checking for system updates...
[2026-10-25 17:28:57,434.434 INFO    ] 200
[2026-10-25 17:28:57,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:57,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:57,520.520 INFO    ] No update needed
[2026-10-25 17:28:57,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 17:28:57,558.558 INFO    ] 200
[2026-10-25 17:28:57,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:28:57,608.608 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:28:57,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:28:57,667.667 INFO    ] No camera update needed
[2026-10-25 17:28:57,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:28:57,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:28:57,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:28:57,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:28:59,721.721 INFO    ] ================================================
[2026-10-25 17:28:59,736.736 INFO    ] Launching Daemon at Sun Oct 25 17:28:59 IST 2026
[2026-10-25 17:28:59,747.747 INFO    ] ================================================
[2026-10-25 17:29:00,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:29:00
[2026-10-25 17:29:01,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:29:01,383.383 INFO    ] Initializing speech engine...
[2026-10-25 17:29:01,397.397 INFO    ] 2026-10-25 17:29:01
[2026-10-25 17:29:01,725.725 INFO    ] 2026-10-25 17:29:01
[2026-10-25 17:29:01,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:29:02,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:29:02,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:29:02,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:29:02,205.205 INFO    ] time= 25/10/2026 17:29:02
[2026-10-25 17:29:02,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:29:02,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:29:02,334.334 INFO    ] No existing commands found in stream
[2026-10-25 17:29:07,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:29:07,347.347 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 17:29:10,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:29:10,525.525 INFO    ] Checking for system updates...
[2026-10-25 17:29:10,561.561 INFO    ] 200
[2026-10-25 17:29:10,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:10,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:10,622.622 INFO    ] No update needed
[2026-10-25 17:29:10,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 17:29:10,659.659 INFO    ] 200
[2026-10-25 17:29:10,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:10,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:29:10,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:10,759.759 INFO    ] No camera update needed
[2026-10-25 17:29:10,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:29:10,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:29:10,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:29:10,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:29:12,815.815 INFO    ] ================================================
[2026-10-25 17:29:12,830.830 INFO    ] Launching Daemon at Sun Oct 25 17:29:12 IST 2026
[2026-10-25 17:29:12,841.841 INFO    ] ================================================
[2026-10-25 17:29:13,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:29:13
[2026-10-25 17:29:14,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:29:14,290.290 INFO    ] Initializing speech engine...
[2026-10-25 17:29:14,306.306 INFO    ] 2026-10-25 17:29:14
[2026-10-25 17:29:14,559.559 INFO    ] 2026-10-25 17:29:14
[2026-10-25 17:29:14,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:29:14,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:29:14,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:29:14,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:29:14,895.895 INFO    ] time= 25/10/2026 17:29:14
[2026-10-25 17:29:14,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:29:14,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:29:15,008.008 INFO    ] No existing commands found in stream
[2026-10-25 17:29:20,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:29:20,041.041 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 17:29:21,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:29:21,165.165 INFO    ] Checking for system updates...
[2026-10-25 17:29:21,201.201 INFO    ] 200
[2026-10-25 17:29:21,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:21,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:21,258.258 INFO    ] No update needed
[2026-10-25 17:29:21,265.265 INFO    ] Checking for camera pi updates...
[2026-10-25 17:29:21,298.298 INFO    ] 200
[2026-10-25 17:29:21,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:21,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:29:21,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:21,393.393 INFO    ] No camera update needed
[2026-10-25 17:29:21,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:29:21,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:29:21,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:29:21,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:29:23,447.447 INFO    ] ================================================
[2026-10-25 17:29:23,463.463 INFO    ] Launching Daemon at Sun Oct 25 17:29:23 IST 2026
[2026-10-25 17:29:23,473.473 INFO    ] ================================================
[2026-10-25 17:29:24,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:29:24
[2026-10-25 17:29:24,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:29:24,905.905 INFO    ] Initializing speech engine...
[2026-10-25 17:29:24,922.922 INFO    ] 2026-10-25 17:29:24
[2026-10-25 17:29:25,201.201 INFO    ] 2026-10-25 17:29:25
[2026-10-25 17:29:25,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:29:25,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:29:25,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:29:25,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:29:25,603.603 INFO    ] time= 25/10/2026 17:29:25
[2026-10-25 17:29:25,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:29:25,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:29:25,723.723 INFO    ] No existing commands found in stream
[2026-10-25 17:29:30,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:29:30,737.737 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 17:29:33,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:29:33,857.857 INFO    ] Checking for system updates...
[2026-10-25 17:29:33,893.893 INFO    ] 200
[2026-10-25 17:29:33,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:33,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:29:33,952.952 INFO    ] No update needed
[2026-10-25 17:29:33,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 17:29:33,993.993 INFO    ] 200
[2026-10-25 17:29:33,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:34,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:29:34,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:29:34,105.105 INFO    ] No camera update needed
[2026-10-25 17:29:34,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:29:34,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:29:34,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:29:34,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:29:36,159.159 INFO    ] ================================================
[2026-10-25 17:29:36,174.174 INFO    ] Launching Daemon at Sun Oct 25 17:29:36 IST 2026
[2026-10-25 17:29:36,185.185 INFO    ] ================================================
[2026-10-25 17:29:36,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:29:36
[2026-10-25 17:29:37,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:29:37,794.794 INFO    ] Initializing speech engine...
[2026-10-25 17:29:37,801.801 INFO    ] 2026-10-25 17:29:37
[2026-10-25 17:29:38,063.063 INFO    ] 2026-10-25 17:29:38
[2026-10-25 17:29:38,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:29:39,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:29:39,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:29:39,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:29:39,563.563 INFO    ] time= 25/10/2026 17:29:39
[2026-10-25 17:29:39,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:29:39,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:29:39,634.634 INFO    ] No existing commands found in stream
[2026-10-25 17:29:44,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:29:44,654.654 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 17:29:47,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:29:47,757.757 INFO    ] Checking for system updates...
[2026-10-25 17:29:47,794.794 INFO    ] 200
[2026-10-25 17:29:47,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:47,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:29:47,854.854 INFO    ] No update needed
[2026-10-25 17:29:47,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 17:29:47,890.890 INFO    ] 200
[2026-10-25 17:29:47,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:47,934.934 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:29:47,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:29:47,995.995 INFO    ] No camera update needed
[2026-10-25 17:29:47,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:29:48,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:29:48,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:29:48,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:29:50,051.051 INFO    ] ================================================
[2026-10-25 17:29:50,066.066 INFO    ] Launching Daemon at Sun Oct 25 17:29:50 IST 2026
[2026-10-25 17:29:50,077.077 INFO    ] ================================================
[2026-10-25 17:29:50,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:29:50
[2026-10-25 17:29:51,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:29:51,720.720 INFO    ] Initializing speech engine...
[2026-10-25 17:29:51,734.734 INFO    ] 2026-10-25 17:29:51
[2026-10-25 17:29:52,007.007 INFO    ] 2026-10-25 17:29:52
[2026-10-25 17:29:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:29:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:29:52,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:29:52,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:29:52,482.482 INFO    ] time= 25/10/2026 17:29:52
[2026-10-25 17:29:52,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:29:52,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:29:52,632.632 INFO    ] No existing commands found in stream
[2026-10-25 17:29:57,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:29:57,647.647 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 17:29:59,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:29:59,043.043 INFO    ] Checking for system updates...
[2026-10-25 17:29:59,081.081 INFO    ] 200
[2026-10-25 17:29:59,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:59,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:59,139.139 INFO    ] No update needed
[2026-10-25 17:29:59,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 17:29:59,176.176 INFO    ] 200
[2026-10-25 17:29:59,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:29:59,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:29:59,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:29:59,287.287 INFO    ] No camera update needed
[2026-10-25 17:29:59,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:29:59,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:29:59,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:29:59,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:30:01,342.342 INFO    ] ================================================
[2026-10-25 17:30:01,357.357 INFO    ] Launching Daemon at Sun Oct 25 17:30:01 IST 2026
[2026-10-25 17:30:01,367.367 INFO    ] ================================================
[2026-10-25 17:30:02,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:30:02
[2026-10-25 17:30:03,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:30:04,081.081 INFO    ] Initializing speech engine...
[2026-10-25 17:30:04,114.114 INFO    ] 2026-10-25 17:30:04
[2026-10-25 17:30:04,495.495 INFO    ] 2026-10-25 17:30:04
[2026-10-25 17:30:04,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:30:04,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:30:04,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:30:04,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:30:04,953.953 INFO    ] time= 25/10/2026 17:30:04
[2026-10-25 17:30:04,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:30:04,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:30:05,076.076 INFO    ] No existing commands found in stream
[2026-10-25 17:30:10,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:30:10,107.107 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 17:30:14,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:30:14,352.352 INFO    ] Checking for system updates...
[2026-10-25 17:30:14,391.391 INFO    ] 200
[2026-10-25 17:30:14,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:14,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:30:14,460.460 INFO    ] No update needed
[2026-10-25 17:30:14,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 17:30:14,503.503 INFO    ] 200
[2026-10-25 17:30:14,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:14,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:30:14,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:30:14,607.607 INFO    ] No camera update needed
[2026-10-25 17:30:14,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:30:14,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:30:14,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:30:14,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:30:16,663.663 INFO    ] ================================================
[2026-10-25 17:30:16,679.679 INFO    ] Launching Daemon at Sun Oct 25 17:30:16 IST 2026
[2026-10-25 17:30:16,689.689 INFO    ] ================================================
[2026-10-25 17:30:17,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:30:17
[2026-10-25 17:30:18,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:30:18,324.324 INFO    ] Initializing speech engine...
[2026-10-25 17:30:18,332.332 INFO    ] 2026-10-25 17:30:18
[2026-10-25 17:30:18,604.604 INFO    ] 2026-10-25 17:30:18
[2026-10-25 17:30:18,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:30:18,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:30:18,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:30:19,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:30:19,084.084 INFO    ] time= 25/10/2026 17:30:19
[2026-10-25 17:30:19,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:30:19,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:30:19,218.218 INFO    ] No existing commands found in stream
[2026-10-25 17:30:24,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:30:24,235.235 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 17:30:26,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:30:26,291.291 INFO    ] Checking for system updates...
[2026-10-25 17:30:26,331.331 INFO    ] 200
[2026-10-25 17:30:26,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:26,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:30:26,394.394 INFO    ] No update needed
[2026-10-25 17:30:26,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 17:30:26,432.432 INFO    ] 200
[2026-10-25 17:30:26,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:26,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:30:26,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:30:26,536.536 INFO    ] No camera update needed
[2026-10-25 17:30:26,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:30:26,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:30:26,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:30:26,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:30:28,590.590 INFO    ] ================================================
[2026-10-25 17:30:28,606.606 INFO    ] Launching Daemon at Sun Oct 25 17:30:28 IST 2026
[2026-10-25 17:30:28,617.617 INFO    ] ================================================
[2026-10-25 17:30:29,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:30:29
[2026-10-25 17:30:29,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:30:30,139.139 INFO    ] Initializing speech engine...
[2026-10-25 17:30:30,152.152 INFO    ] 2026-10-25 17:30:30
[2026-10-25 17:30:30,458.458 INFO    ] 2026-10-25 17:30:30
[2026-10-25 17:30:30,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:30:30,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:30:30,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:30:30,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:30:30,886.886 INFO    ] time= 25/10/2026 17:30:30
[2026-10-25 17:30:30,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:30:30,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:30:31,043.043 INFO    ] No existing commands found in stream
[2026-10-25 17:30:36,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:30:36,084.084 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 17:30:36,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:30:36,922.922 INFO    ] Checking for system updates...
[2026-10-25 17:30:36,958.958 INFO    ] 200
[2026-10-25 17:30:36,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:37,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:30:37,018.018 INFO    ] No update needed
[2026-10-25 17:30:37,020.020 INFO    ] Checking for camera pi updates...
[2026-10-25 17:30:37,054.054 INFO    ] 200
[2026-10-25 17:30:37,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:37,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:30:37,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:30:37,167.167 INFO    ] No camera update needed
[2026-10-25 17:30:37,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:30:37,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:30:37,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:30:37,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:30:39,222.222 INFO    ] ================================================
[2026-10-25 17:30:39,237.237 INFO    ] Launching Daemon at Sun Oct 25 17:30:39 IST 2026
[2026-10-25 17:30:39,248.248 INFO    ] ================================================
[2026-10-25 17:30:39,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:30:39
[2026-10-25 17:30:40,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:30:40,868.868 INFO    ] Initializing speech engine...
[2026-10-25 17:30:40,882.882 INFO    ] 2026-10-25 17:30:40
[2026-10-25 17:30:41,194.194 INFO    ] 2026-10-25 17:30:41
[2026-10-25 17:30:41,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:30:41,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:30:41,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:30:41,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:30:41,949.949 INFO    ] time= 25/10/2026 17:30:41
[2026-10-25 17:30:41,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:30:42,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:30:42,127.127 INFO    ] No existing commands found in stream
[2026-10-25 17:30:47,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:30:47,145.145 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 17:30:48,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:30:48,785.785 INFO    ] Checking for system updates...
[2026-10-25 17:30:48,827.827 INFO    ] 200
[2026-10-25 17:30:48,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:48,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:30:48,892.892 INFO    ] No update needed
[2026-10-25 17:30:48,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 17:30:48,934.934 INFO    ] 200
[2026-10-25 17:30:48,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:30:48,982.982 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:30:49,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:30:49,030.030 INFO    ] No camera update needed
[2026-10-25 17:30:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:30:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:30:49,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:30:49,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:30:51,084.084 INFO    ] ================================================
[2026-10-25 17:30:51,099.099 INFO    ] Launching Daemon at Sun Oct 25 17:30:51 IST 2026
[2026-10-25 17:30:51,110.110 INFO    ] ================================================
[2026-10-25 17:30:51,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:30:51
[2026-10-25 17:30:52,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:30:52,755.755 INFO    ] Initializing speech engine...
[2026-10-25 17:30:52,761.761 INFO    ] 2026-10-25 17:30:52
[2026-10-25 17:30:53,086.086 INFO    ] 2026-10-25 17:30:53
[2026-10-25 17:30:53,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:30:53,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:30:53,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:30:53,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:30:53,510.510 INFO    ] time= 25/10/2026 17:30:53
[2026-10-25 17:30:53,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:30:53,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:30:53,621.621 INFO    ] No existing commands found in stream
[2026-10-25 17:30:58,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:30:58,660.660 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 17:31:00,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:31:00,466.466 INFO    ] Checking for system updates...
[2026-10-25 17:31:00,503.503 INFO    ] 200
[2026-10-25 17:31:00,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:00,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:31:00,564.564 INFO    ] No update needed
[2026-10-25 17:31:00,566.566 INFO    ] Checking for camera pi updates...
[2026-10-25 17:31:00,601.601 INFO    ] 200
[2026-10-25 17:31:00,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:00,649.649 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:31:00,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:31:00,720.720 INFO    ] No camera update needed
[2026-10-25 17:31:00,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:31:00,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:31:00,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:31:00,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:31:02,795.795 INFO    ] ================================================
[2026-10-25 17:31:02,815.815 INFO    ] Launching Daemon at Sun Oct 25 17:31:02 IST 2026
[2026-10-25 17:31:02,830.830 INFO    ] ================================================
[2026-10-25 17:31:03,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:31:03
[2026-10-25 17:31:04,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:31:04,364.364 INFO    ] Initializing speech engine...
[2026-10-25 17:31:04,370.370 INFO    ] 2026-10-25 17:31:04
[2026-10-25 17:31:04,662.662 INFO    ] 2026-10-25 17:31:04
[2026-10-25 17:31:04,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:31:04,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:31:04,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:31:05,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:31:05,042.042 INFO    ] time= 25/10/2026 17:31:05
[2026-10-25 17:31:05,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:31:05,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:31:05,164.164 INFO    ] No existing commands found in stream
[2026-10-25 17:31:10,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:31:10,179.179 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 17:31:13,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:31:13,830.830 INFO    ] Checking for system updates...
[2026-10-25 17:31:13,871.871 INFO    ] 200
[2026-10-25 17:31:13,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:13,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:13,932.932 INFO    ] No update needed
[2026-10-25 17:31:13,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 17:31:13,972.972 INFO    ] 200
[2026-10-25 17:31:13,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:14,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:31:14,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:14,070.070 INFO    ] No camera update needed
[2026-10-25 17:31:14,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:31:14,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:31:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:31:14,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:31:16,124.124 INFO    ] ================================================
[2026-10-25 17:31:16,139.139 INFO    ] Launching Daemon at Sun Oct 25 17:31:16 IST 2026
[2026-10-25 17:31:16,150.150 INFO    ] ================================================
[2026-10-25 17:31:16,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:31:16
[2026-10-25 17:31:17,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:31:17,630.630 INFO    ] Initializing speech engine...
[2026-10-25 17:31:17,642.642 INFO    ] 2026-10-25 17:31:17
[2026-10-25 17:31:17,890.890 INFO    ] 2026-10-25 17:31:17
[2026-10-25 17:31:17,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:31:18,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:31:18,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:31:18,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:31:18,391.391 INFO    ] time= 25/10/2026 17:31:18
[2026-10-25 17:31:18,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:31:18,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:31:18,564.564 INFO    ] No existing commands found in stream
[2026-10-25 17:31:23,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:31:23,593.593 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 17:31:27,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:31:27,406.406 INFO    ] Checking for system updates...
[2026-10-25 17:31:27,446.446 INFO    ] 200
[2026-10-25 17:31:27,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:27,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:27,504.504 INFO    ] No update needed
[2026-10-25 17:31:27,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 17:31:27,540.540 INFO    ] 200
[2026-10-25 17:31:27,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:27,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:31:27,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:27,637.637 INFO    ] No camera update needed
[2026-10-25 17:31:27,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:31:27,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:31:27,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:31:27,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:31:29,693.693 INFO    ] ================================================
[2026-10-25 17:31:29,709.709 INFO    ] Launching Daemon at Sun Oct 25 17:31:29 IST 2026
[2026-10-25 17:31:29,720.720 INFO    ] ================================================
[2026-10-25 17:31:30,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:31:30
[2026-10-25 17:31:30,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:31:31,170.170 INFO    ] Initializing speech engine...
[2026-10-25 17:31:31,176.176 INFO    ] 2026-10-25 17:31:31
[2026-10-25 17:31:31,434.434 INFO    ] 2026-10-25 17:31:31
[2026-10-25 17:31:31,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:31:31,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:31:31,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:31:31,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:31:31,950.950 INFO    ] time= 25/10/2026 17:31:31
[2026-10-25 17:31:32,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:31:32,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:31:32,075.075 INFO    ] No existing commands found in stream
[2026-10-25 17:31:37,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:31:37,090.090 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 17:31:39,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:31:39,689.689 INFO    ] Checking for system updates...
[2026-10-25 17:31:39,733.733 INFO    ] 200
[2026-10-25 17:31:39,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:39,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:31:39,803.803 INFO    ] No update needed
[2026-10-25 17:31:39,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 17:31:39,839.839 INFO    ] 200
[2026-10-25 17:31:39,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:39,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:31:40,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:31:40,049.049 INFO    ] No camera update needed
[2026-10-25 17:31:40,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:31:40,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:31:40,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:31:40,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:31:42,104.104 INFO    ] ================================================
[2026-10-25 17:31:42,119.119 INFO    ] Launching Daemon at Sun Oct 25 17:31:42 IST 2026
[2026-10-25 17:31:42,130.130 INFO    ] ================================================
[2026-10-25 17:31:42,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:31:42
[2026-10-25 17:31:43,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:31:43,686.686 INFO    ] Initializing speech engine...
[2026-10-25 17:31:43,695.695 INFO    ] 2026-10-25 17:31:43
[2026-10-25 17:31:43,974.974 INFO    ] 2026-10-25 17:31:43
[2026-10-25 17:31:44,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:31:44,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:31:44,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:31:44,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:31:44,471.471 INFO    ] time= 25/10/2026 17:31:44
[2026-10-25 17:31:44,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:31:44,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:31:44,636.636 INFO    ] No existing commands found in stream
[2026-10-25 17:31:49,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:31:49,650.650 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 17:31:53,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:31:53,459.459 INFO    ] Checking for system updates...
[2026-10-25 17:31:53,506.506 INFO    ] 200
[2026-10-25 17:31:53,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:53,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:53,564.564 INFO    ] No update needed
[2026-10-25 17:31:53,567.567 INFO    ] Checking for camera pi updates...
[2026-10-25 17:31:53,601.601 INFO    ] 200
[2026-10-25 17:31:53,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:31:53,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:31:53,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:31:53,695.695 INFO    ] No camera update needed
[2026-10-25 17:31:53,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:31:53,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:31:53,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:31:53,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:31:55,753.753 INFO    ] ================================================
[2026-10-25 17:31:55,769.769 INFO    ] Launching Daemon at Sun Oct 25 17:31:55 IST 2026
[2026-10-25 17:31:55,780.780 INFO    ] ================================================
[2026-10-25 17:31:56,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:31:56
[2026-10-25 17:31:56,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:31:57,208.208 INFO    ] Initializing speech engine...
[2026-10-25 17:31:57,214.214 INFO    ] 2026-10-25 17:31:57
[2026-10-25 17:31:57,508.508 INFO    ] 2026-10-25 17:31:57
[2026-10-25 17:31:57,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:31:57,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:31:57,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:31:57,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:31:57,889.889 INFO    ] time= 25/10/2026 17:31:57
[2026-10-25 17:31:57,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:31:57,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:31:58,056.056 INFO    ] No existing commands found in stream
[2026-10-25 17:32:03,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:32:03,087.087 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 17:32:07,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:32:07,327.327 INFO    ] Checking for system updates...
[2026-10-25 17:32:07,364.364 INFO    ] 200
[2026-10-25 17:32:07,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:07,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:07,424.424 INFO    ] No update needed
[2026-10-25 17:32:07,426.426 INFO    ] Checking for camera pi updates...
[2026-10-25 17:32:07,461.461 INFO    ] 200
[2026-10-25 17:32:07,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:07,505.505 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:32:07,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:07,561.561 INFO    ] No camera update needed
[2026-10-25 17:32:07,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:32:07,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:32:07,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:32:07,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:32:09,619.619 INFO    ] ================================================
[2026-10-25 17:32:09,635.635 INFO    ] Launching Daemon at Sun Oct 25 17:32:09 IST 2026
[2026-10-25 17:32:09,646.646 INFO    ] ================================================
[2026-10-25 17:32:10,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:32:10
[2026-10-25 17:32:10,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:32:11,245.245 INFO    ] Initializing speech engine...
[2026-10-25 17:32:11,252.252 INFO    ] 2026-10-25 17:32:11
[2026-10-25 17:32:11,524.524 INFO    ] 2026-10-25 17:32:11
[2026-10-25 17:32:11,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:32:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:32:14,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:32:15,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:32:15,069.069 INFO    ] time= 25/10/2026 17:32:15
[2026-10-25 17:32:15,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:32:15,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:32:15,123.123 INFO    ] No existing commands found in stream
[2026-10-25 17:32:20,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:32:20,136.136 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 17:32:20,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:32:20,967.967 INFO    ] Checking for system updates...
[2026-10-25 17:32:21,007.007 INFO    ] 200
[2026-10-25 17:32:21,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:21,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:32:21,071.071 INFO    ] No update needed
[2026-10-25 17:32:21,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 17:32:21,109.109 INFO    ] 200
[2026-10-25 17:32:21,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:21,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:32:21,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:32:21,227.227 INFO    ] No camera update needed
[2026-10-25 17:32:21,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:32:21,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:32:21,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:32:21,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:32:23,288.288 INFO    ] ================================================
[2026-10-25 17:32:23,303.303 INFO    ] Launching Daemon at Sun Oct 25 17:32:23 IST 2026
[2026-10-25 17:32:23,314.314 INFO    ] ================================================
[2026-10-25 17:32:23,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:32:23
[2026-10-25 17:32:24,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:32:24,728.728 INFO    ] Initializing speech engine...
[2026-10-25 17:32:24,734.734 INFO    ] 2026-10-25 17:32:24
[2026-10-25 17:32:25,008.008 INFO    ] 2026-10-25 17:32:24
[2026-10-25 17:32:25,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:32:25,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:32:25,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:32:25,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:32:25,381.381 INFO    ] time= 25/10/2026 17:32:25
[2026-10-25 17:32:25,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:32:25,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:32:25,454.454 INFO    ] No existing commands found in stream
[2026-10-25 17:32:30,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:32:30,469.469 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 17:32:34,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:32:34,426.426 INFO    ] Checking for system updates...
[2026-10-25 17:32:34,463.463 INFO    ] 200
[2026-10-25 17:32:34,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:34,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:34,526.526 INFO    ] No update needed
[2026-10-25 17:32:34,528.528 INFO    ] Checking for camera pi updates...
[2026-10-25 17:32:34,563.563 INFO    ] 200
[2026-10-25 17:32:34,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:34,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:32:34,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:34,655.655 INFO    ] No camera update needed
[2026-10-25 17:32:34,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:32:34,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:32:34,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:32:34,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:32:36,711.711 INFO    ] ================================================
[2026-10-25 17:32:36,727.727 INFO    ] Launching Daemon at Sun Oct 25 17:32:36 IST 2026
[2026-10-25 17:32:36,738.738 INFO    ] ================================================
[2026-10-25 17:32:37,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:32:37
[2026-10-25 17:32:37,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:32:38,156.156 INFO    ] Initializing speech engine...
[2026-10-25 17:32:38,171.171 INFO    ] 2026-10-25 17:32:38
[2026-10-25 17:32:38,440.440 INFO    ] 2026-10-25 17:32:38
[2026-10-25 17:32:38,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:32:38,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:32:38,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:32:38,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:32:38,851.851 INFO    ] time= 25/10/2026 17:32:38
[2026-10-25 17:32:38,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:32:38,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:32:38,935.935 INFO    ] No existing commands found in stream
[2026-10-25 17:32:43,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:32:43,951.951 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 17:32:46,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:32:46,389.389 INFO    ] Checking for system updates...
[2026-10-25 17:32:46,425.425 INFO    ] 200
[2026-10-25 17:32:46,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:46,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:32:46,483.483 INFO    ] No update needed
[2026-10-25 17:32:46,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 17:32:46,519.519 INFO    ] 200
[2026-10-25 17:32:46,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:46,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:32:46,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:32:46,626.626 INFO    ] No camera update needed
[2026-10-25 17:32:46,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:32:46,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:32:46,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:32:46,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:32:48,682.682 INFO    ] ================================================
[2026-10-25 17:32:48,698.698 INFO    ] Launching Daemon at Sun Oct 25 17:32:48 IST 2026
[2026-10-25 17:32:48,709.709 INFO    ] ================================================
[2026-10-25 17:32:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:32:49
[2026-10-25 17:32:49,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:32:50,148.148 INFO    ] Initializing speech engine...
[2026-10-25 17:32:50,157.157 INFO    ] 2026-10-25 17:32:50
[2026-10-25 17:32:50,403.403 INFO    ] 2026-10-25 17:32:50
[2026-10-25 17:32:50,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:32:50,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:32:50,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:32:50,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:32:50,874.874 INFO    ] time= 25/10/2026 17:32:50
[2026-10-25 17:32:50,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:32:50,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:32:51,018.018 INFO    ] No existing commands found in stream
[2026-10-25 17:32:56,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:32:56,033.033 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 17:32:59,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:32:59,245.245 INFO    ] Checking for system updates...
[2026-10-25 17:32:59,281.281 INFO    ] 200
[2026-10-25 17:32:59,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:59,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:59,339.339 INFO    ] No update needed
[2026-10-25 17:32:59,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 17:32:59,379.379 INFO    ] 200
[2026-10-25 17:32:59,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:32:59,426.426 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:32:59,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:32:59,499.499 INFO    ] No camera update needed
[2026-10-25 17:32:59,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:32:59,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:32:59,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:32:59,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:33:01,556.556 INFO    ] ================================================
[2026-10-25 17:33:01,572.572 INFO    ] Launching Daemon at Sun Oct 25 17:33:01 IST 2026
[2026-10-25 17:33:01,582.582 INFO    ] ================================================
[2026-10-25 17:33:02,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:33:02
[2026-10-25 17:33:03,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:33:03,375.375 INFO    ] Initializing speech engine...
[2026-10-25 17:33:03,382.382 INFO    ] 2026-10-25 17:33:03
[2026-10-25 17:33:03,671.671 INFO    ] 2026-10-25 17:33:03
[2026-10-25 17:33:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:33:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:33:03,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:33:04,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:33:04,088.088 INFO    ] time= 25/10/2026 17:33:04
[2026-10-25 17:33:04,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:33:04,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:33:04,213.213 INFO    ] No existing commands found in stream
[2026-10-25 17:33:09,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:33:09,228.228 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 17:33:11,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:33:11,145.145 INFO    ] Checking for system updates...
[2026-10-25 17:33:11,184.184 INFO    ] 200
[2026-10-25 17:33:11,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:11,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:33:11,243.243 INFO    ] No update needed
[2026-10-25 17:33:11,245.245 INFO    ] Checking for camera pi updates...
[2026-10-25 17:33:11,279.279 INFO    ] 200
[2026-10-25 17:33:11,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:11,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:33:11,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:33:11,386.386 INFO    ] No camera update needed
[2026-10-25 17:33:11,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:33:11,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:33:11,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:33:11,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:33:13,442.442 INFO    ] ================================================
[2026-10-25 17:33:13,457.457 INFO    ] Launching Daemon at Sun Oct 25 17:33:13 IST 2026
[2026-10-25 17:33:13,468.468 INFO    ] ================================================
[2026-10-25 17:33:14,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:33:14
[2026-10-25 17:33:14,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:33:14,876.876 INFO    ] Initializing speech engine...
[2026-10-25 17:33:14,884.884 INFO    ] 2026-10-25 17:33:14
[2026-10-25 17:33:15,159.159 INFO    ] 2026-10-25 17:33:15
[2026-10-25 17:33:15,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:33:17,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:33:17,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:33:17,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:33:17,752.752 INFO    ] time= 25/10/2026 17:33:17
[2026-10-25 17:33:17,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:33:17,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:33:17,855.855 INFO    ] No existing commands found in stream
[2026-10-25 17:33:22,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:33:22,888.888 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-25 17:33:25,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:33:25,504.504 INFO    ] Checking for system updates...
[2026-10-25 17:33:25,541.541 INFO    ] 200
[2026-10-25 17:33:25,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:25,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:33:25,606.606 INFO    ] No update needed
[2026-10-25 17:33:25,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 17:33:25,648.648 INFO    ] 200
[2026-10-25 17:33:25,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:25,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:33:25,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:33:25,749.749 INFO    ] No camera update needed
[2026-10-25 17:33:25,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:33:25,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:33:25,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:33:25,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:33:27,803.803 INFO    ] ================================================
[2026-10-25 17:33:27,818.818 INFO    ] Launching Daemon at Sun Oct 25 17:33:27 IST 2026
[2026-10-25 17:33:27,829.829 INFO    ] ================================================
[2026-10-25 17:33:28,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:33:28
[2026-10-25 17:33:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:33:29,430.430 INFO    ] Initializing speech engine...
[2026-10-25 17:33:29,455.455 INFO    ] 2026-10-25 17:33:29
[2026-10-25 17:33:29,742.742 INFO    ] 2026-10-25 17:33:29
[2026-10-25 17:33:29,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:33:29,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:33:29,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:33:30,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:33:30,111.111 INFO    ] time= 25/10/2026 17:33:30
[2026-10-25 17:33:30,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:33:30,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:33:30,236.236 INFO    ] No existing commands found in stream
[2026-10-25 17:33:35,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:33:35,250.250 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 17:33:37,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:33:37,405.405 INFO    ] Checking for system updates...
[2026-10-25 17:33:37,444.444 INFO    ] 200
[2026-10-25 17:33:37,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:37,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:33:37,502.502 INFO    ] No update needed
[2026-10-25 17:33:37,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 17:33:37,539.539 INFO    ] 200
[2026-10-25 17:33:37,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:37,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:33:37,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:33:37,632.632 INFO    ] No camera update needed
[2026-10-25 17:33:37,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:33:37,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:33:37,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:33:37,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:33:39,688.688 INFO    ] ================================================
[2026-10-25 17:33:39,704.704 INFO    ] Launching Daemon at Sun Oct 25 17:33:39 IST 2026
[2026-10-25 17:33:39,715.715 INFO    ] ================================================
[2026-10-25 17:33:40,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:33:40
[2026-10-25 17:33:41,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:33:41,366.366 INFO    ] Initializing speech engine...
[2026-10-25 17:33:41,374.374 INFO    ] 2026-10-25 17:33:41
[2026-10-25 17:33:41,651.651 INFO    ] 2026-10-25 17:33:41
[2026-10-25 17:33:41,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:33:41,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:33:41,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:33:42,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:33:42,135.135 INFO    ] time= 25/10/2026 17:33:42
[2026-10-25 17:33:42,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:33:42,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:33:42,333.333 INFO    ] No existing commands found in stream
[2026-10-25 17:33:47,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:33:47,364.364 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 17:33:49,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:33:49,101.101 INFO    ] Checking for system updates...
[2026-10-25 17:33:49,148.148 INFO    ] 200
[2026-10-25 17:33:49,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:49,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:33:49,215.215 INFO    ] No update needed
[2026-10-25 17:33:49,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 17:33:49,251.251 INFO    ] 200
[2026-10-25 17:33:49,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:33:49,294.294 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:33:49,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:33:49,472.472 INFO    ] No camera update needed
[2026-10-25 17:33:49,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:33:49,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:33:49,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:33:49,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:33:51,527.527 INFO    ] ================================================
[2026-10-25 17:33:51,542.542 INFO    ] Launching Daemon at Sun Oct 25 17:33:51 IST 2026
[2026-10-25 17:33:51,553.553 INFO    ] ================================================
[2026-10-25 17:33:52,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:33:52
[2026-10-25 17:33:52,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:33:52,990.990 INFO    ] Initializing speech engine...
[2026-10-25 17:33:53,003.003 INFO    ] 2026-10-25 17:33:52
[2026-10-25 17:33:53,269.269 INFO    ] 2026-10-25 17:33:53
[2026-10-25 17:33:53,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:33:53,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:33:53,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:33:53,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:33:53,606.606 INFO    ] time= 25/10/2026 17:33:53
[2026-10-25 17:33:53,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:33:53,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:33:53,683.683 INFO    ] No existing commands found in stream
[2026-10-25 17:33:58,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:33:58,730.730 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 17:34:01,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:34:01,549.549 INFO    ] Checking for system updates...
[2026-10-25 17:34:01,590.590 INFO    ] 200
[2026-10-25 17:34:01,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:01,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:01,654.654 INFO    ] No update needed
[2026-10-25 17:34:01,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 17:34:01,694.694 INFO    ] 200
[2026-10-25 17:34:01,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:01,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:34:01,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:01,817.817 INFO    ] No camera update needed
[2026-10-25 17:34:01,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:34:01,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:34:01,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:34:01,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:34:03,877.877 INFO    ] ================================================
[2026-10-25 17:34:03,894.894 INFO    ] Launching Daemon at Sun Oct 25 17:34:03 IST 2026
[2026-10-25 17:34:03,912.912 INFO    ] ================================================
[2026-10-25 17:34:04,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:34:04
[2026-10-25 17:34:05,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:34:05,357.357 INFO    ] Initializing speech engine...
[2026-10-25 17:34:05,366.366 INFO    ] 2026-10-25 17:34:05
[2026-10-25 17:34:05,659.659 INFO    ] 2026-10-25 17:34:05
[2026-10-25 17:34:05,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:34:05,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:34:05,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:34:06,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:34:06,057.057 INFO    ] time= 25/10/2026 17:34:06
[2026-10-25 17:34:06,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:34:06,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:34:06,164.164 INFO    ] No existing commands found in stream
[2026-10-25 17:34:11,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:34:11,180.180 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 17:34:15,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:34:15,451.451 INFO    ] Checking for system updates...
[2026-10-25 17:34:15,493.493 INFO    ] 200
[2026-10-25 17:34:15,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:15,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:34:15,562.562 INFO    ] No update needed
[2026-10-25 17:34:15,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 17:34:15,604.604 INFO    ] 200
[2026-10-25 17:34:15,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:15,652.652 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:34:15,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:34:15,702.702 INFO    ] No camera update needed
[2026-10-25 17:34:15,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:34:15,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:34:15,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:34:15,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:34:17,760.760 INFO    ] ================================================
[2026-10-25 17:34:17,775.775 INFO    ] Launching Daemon at Sun Oct 25 17:34:17 IST 2026
[2026-10-25 17:34:17,786.786 INFO    ] ================================================
[2026-10-25 17:34:18,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:34:18
[2026-10-25 17:34:19,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:34:19,417.417 INFO    ] Initializing speech engine...
[2026-10-25 17:34:19,429.429 INFO    ] 2026-10-25 17:34:19
[2026-10-25 17:34:19,713.713 INFO    ] 2026-10-25 17:34:19
[2026-10-25 17:34:19,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:34:19,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:34:19,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:34:20,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:34:20,155.155 INFO    ] time= 25/10/2026 17:34:20
[2026-10-25 17:34:20,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:34:20,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:34:20,322.322 INFO    ] No existing commands found in stream
[2026-10-25 17:34:25,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:34:25,337.337 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 17:34:27,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:34:27,630.630 INFO    ] Checking for system updates...
[2026-10-25 17:34:27,669.669 INFO    ] 200
[2026-10-25 17:34:27,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:27,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:27,727.727 INFO    ] No update needed
[2026-10-25 17:34:27,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 17:34:27,763.763 INFO    ] 200
[2026-10-25 17:34:27,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:27,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:34:27,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:27,861.861 INFO    ] No camera update needed
[2026-10-25 17:34:27,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:34:27,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:34:27,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:34:27,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:34:29,921.921 INFO    ] ================================================
[2026-10-25 17:34:29,937.937 INFO    ] Launching Daemon at Sun Oct 25 17:34:29 IST 2026
[2026-10-25 17:34:29,948.948 INFO    ] ================================================
[2026-10-25 17:34:30,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:34:30
[2026-10-25 17:34:31,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:34:31,376.376 INFO    ] Initializing speech engine...
[2026-10-25 17:34:31,385.385 INFO    ] 2026-10-25 17:34:31
[2026-10-25 17:34:31,682.682 INFO    ] 2026-10-25 17:34:31
[2026-10-25 17:34:31,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:34:31,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:34:31,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:34:32,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:34:32,043.043 INFO    ] time= 25/10/2026 17:34:32
[2026-10-25 17:34:32,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:34:32,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:34:32,136.136 INFO    ] No existing commands found in stream
[2026-10-25 17:34:37,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:34:37,151.151 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 17:34:40,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:34:40,343.343 INFO    ] Checking for system updates...
[2026-10-25 17:34:40,383.383 INFO    ] 200
[2026-10-25 17:34:40,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:40,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:34:40,448.448 INFO    ] No update needed
[2026-10-25 17:34:40,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 17:34:40,485.485 INFO    ] 200
[2026-10-25 17:34:40,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:40,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:34:40,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:34:40,579.579 INFO    ] No camera update needed
[2026-10-25 17:34:40,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:34:40,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:34:40,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:34:40,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:34:42,636.636 INFO    ] ================================================
[2026-10-25 17:34:42,653.653 INFO    ] Launching Daemon at Sun Oct 25 17:34:42 IST 2026
[2026-10-25 17:34:42,664.664 INFO    ] ================================================
[2026-10-25 17:34:43,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:34:43
[2026-10-25 17:34:43,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:34:44,077.077 INFO    ] Initializing speech engine...
[2026-10-25 17:34:44,083.083 INFO    ] 2026-10-25 17:34:44
[2026-10-25 17:34:44,375.375 INFO    ] 2026-10-25 17:34:44
[2026-10-25 17:34:44,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:34:44,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:34:44,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:34:44,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:34:44,756.756 INFO    ] time= 25/10/2026 17:34:44
[2026-10-25 17:34:44,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:34:44,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:34:44,881.881 INFO    ] No existing commands found in stream
[2026-10-25 17:34:49,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:34:49,896.896 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-25 17:34:53,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:34:53,151.151 INFO    ] Checking for system updates...
[2026-10-25 17:34:53,192.192 INFO    ] 200
[2026-10-25 17:34:53,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:53,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:53,252.252 INFO    ] No update needed
[2026-10-25 17:34:53,254.254 INFO    ] Checking for camera pi updates...
[2026-10-25 17:34:53,290.290 INFO    ] 200
[2026-10-25 17:34:53,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:34:53,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:34:53,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:34:53,407.407 INFO    ] No camera update needed
[2026-10-25 17:34:53,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:34:53,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:34:53,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:34:53,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:34:55,465.465 INFO    ] ================================================
[2026-10-25 17:34:55,481.481 INFO    ] Launching Daemon at Sun Oct 25 17:34:55 IST 2026
[2026-10-25 17:34:55,492.492 INFO    ] ================================================
[2026-10-25 17:34:56,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:34:56
[2026-10-25 17:34:56,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:34:56,913.913 INFO    ] Initializing speech engine...
[2026-10-25 17:34:56,927.927 INFO    ] 2026-10-25 17:34:56
[2026-10-25 17:34:57,189.189 INFO    ] 2026-10-25 17:34:57
[2026-10-25 17:34:57,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:34:57,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:34:57,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:34:57,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:34:57,665.665 INFO    ] time= 25/10/2026 17:34:57
[2026-10-25 17:34:57,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:34:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:34:57,806.806 INFO    ] No existing commands found in stream
[2026-10-25 17:35:02,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:35:02,822.822 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 17:35:04,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:35:04,266.266 INFO    ] Checking for system updates...
[2026-10-25 17:35:04,302.302 INFO    ] 200
[2026-10-25 17:35:04,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:04,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:04,366.366 INFO    ] No update needed
[2026-10-25 17:35:04,368.368 INFO    ] Checking for camera pi updates...
[2026-10-25 17:35:04,405.405 INFO    ] 200
[2026-10-25 17:35:04,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:04,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:35:04,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:04,552.552 INFO    ] No camera update needed
[2026-10-25 17:35:04,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:35:04,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:35:04,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:35:04,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:35:06,609.609 INFO    ] ================================================
[2026-10-25 17:35:06,624.624 INFO    ] Launching Daemon at Sun Oct 25 17:35:06 IST 2026
[2026-10-25 17:35:06,634.634 INFO    ] ================================================
[2026-10-25 17:35:07,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:35:07
[2026-10-25 17:35:07,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:35:08,077.077 INFO    ] Initializing speech engine...
[2026-10-25 17:35:08,102.102 INFO    ] 2026-10-25 17:35:08
[2026-10-25 17:35:08,363.363 INFO    ] 2026-10-25 17:35:08
[2026-10-25 17:35:08,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:35:08,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:35:08,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:35:08,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:35:08,729.729 INFO    ] time= 25/10/2026 17:35:08
[2026-10-25 17:35:08,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:35:08,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:35:08,830.830 INFO    ] No existing commands found in stream
[2026-10-25 17:35:13,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:35:13,846.846 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 17:35:14,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:35:14,523.523 INFO    ] Checking for system updates...
[2026-10-25 17:35:14,559.559 INFO    ] 200
[2026-10-25 17:35:14,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:14,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:14,664.664 INFO    ] No update needed
[2026-10-25 17:35:14,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 17:35:14,704.704 INFO    ] 200
[2026-10-25 17:35:14,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:14,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:35:14,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:14,811.811 INFO    ] No camera update needed
[2026-10-25 17:35:14,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:35:14,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:35:14,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:35:14,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:35:16,865.865 INFO    ] ================================================
[2026-10-25 17:35:16,880.880 INFO    ] Launching Daemon at Sun Oct 25 17:35:16 IST 2026
[2026-10-25 17:35:16,890.890 INFO    ] ================================================
[2026-10-25 17:35:17,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:35:17
[2026-10-25 17:35:18,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:35:18,362.362 INFO    ] Initializing speech engine...
[2026-10-25 17:35:18,372.372 INFO    ] 2026-10-25 17:35:18
[2026-10-25 17:35:18,630.630 INFO    ] 2026-10-25 17:35:18
[2026-10-25 17:35:18,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:35:21,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:35:21,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:35:22,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:35:22,236.236 INFO    ] time= 25/10/2026 17:35:22
[2026-10-25 17:35:22,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:35:22,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:35:22,291.291 INFO    ] No existing commands found in stream
[2026-10-25 17:35:27,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:35:27,303.303 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 17:35:28,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:35:28,683.683 INFO    ] Checking for system updates...
[2026-10-25 17:35:28,724.724 INFO    ] 200
[2026-10-25 17:35:28,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:28,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:28,796.796 INFO    ] No update needed
[2026-10-25 17:35:28,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 17:35:28,838.838 INFO    ] 200
[2026-10-25 17:35:28,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:28,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:35:28,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:28,958.958 INFO    ] No camera update needed
[2026-10-25 17:35:28,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:35:28,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:35:28,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:35:28,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:35:31,014.014 INFO    ] ================================================
[2026-10-25 17:35:31,029.029 INFO    ] Launching Daemon at Sun Oct 25 17:35:31 IST 2026
[2026-10-25 17:35:31,040.040 INFO    ] ================================================
[2026-10-25 17:35:31,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:35:31
[2026-10-25 17:35:32,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:35:32,724.724 INFO    ] Initializing speech engine...
[2026-10-25 17:35:32,736.736 INFO    ] 2026-10-25 17:35:32
[2026-10-25 17:35:33,028.028 INFO    ] 2026-10-25 17:35:33
[2026-10-25 17:35:33,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:35:33,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:35:33,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:35:33,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:35:33,546.546 INFO    ] time= 25/10/2026 17:35:33
[2026-10-25 17:35:33,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:35:33,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:35:33,747.747 INFO    ] No existing commands found in stream
[2026-10-25 17:35:38,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:35:38,786.786 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 17:35:40,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:35:40,622.622 INFO    ] Checking for system updates...
[2026-10-25 17:35:40,664.664 INFO    ] 200
[2026-10-25 17:35:40,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:40,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:35:40,742.742 INFO    ] No update needed
[2026-10-25 17:35:40,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 17:35:40,786.786 INFO    ] 200
[2026-10-25 17:35:40,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:40,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:35:40,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:35:40,890.890 INFO    ] No camera update needed
[2026-10-25 17:35:40,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:35:40,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:35:40,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:35:40,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:35:42,948.948 INFO    ] ================================================
[2026-10-25 17:35:42,963.963 INFO    ] Launching Daemon at Sun Oct 25 17:35:42 IST 2026
[2026-10-25 17:35:42,974.974 INFO    ] ================================================
[2026-10-25 17:35:43,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:35:43
[2026-10-25 17:35:44,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:35:44,402.402 INFO    ] Initializing speech engine...
[2026-10-25 17:35:44,415.415 INFO    ] 2026-10-25 17:35:44
[2026-10-25 17:35:44,709.709 INFO    ] 2026-10-25 17:35:44
[2026-10-25 17:35:44,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:35:44,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:35:44,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:35:45,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:35:45,092.092 INFO    ] time= 25/10/2026 17:35:45
[2026-10-25 17:35:45,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:35:45,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:35:45,219.219 INFO    ] No existing commands found in stream
[2026-10-25 17:35:50,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:35:50,235.235 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 17:35:53,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:35:53,964.964 INFO    ] Checking for system updates...
[2026-10-25 17:35:54,005.005 INFO    ] 200
[2026-10-25 17:35:54,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:54,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:54,080.080 INFO    ] No update needed
[2026-10-25 17:35:54,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 17:35:54,127.127 INFO    ] 200
[2026-10-25 17:35:54,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:35:54,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:35:54,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:35:54,341.341 INFO    ] No camera update needed
[2026-10-25 17:35:54,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:35:54,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:35:54,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:35:54,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:35:56,402.402 INFO    ] ================================================
[2026-10-25 17:35:56,417.417 INFO    ] Launching Daemon at Sun Oct 25 17:35:56 IST 2026
[2026-10-25 17:35:56,428.428 INFO    ] ================================================
[2026-10-25 17:35:56,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:35:56
[2026-10-25 17:35:57,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:35:57,852.852 INFO    ] Initializing speech engine...
[2026-10-25 17:35:57,861.861 INFO    ] 2026-10-25 17:35:57
[2026-10-25 17:35:58,114.114 INFO    ] 2026-10-25 17:35:58
[2026-10-25 17:35:58,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:35:58,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:35:58,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:35:58,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:35:58,598.598 INFO    ] time= 25/10/2026 17:35:58
[2026-10-25 17:35:58,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:35:58,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:35:58,747.747 INFO    ] No existing commands found in stream
[2026-10-25 17:36:03,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:36:03,761.761 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 17:36:07,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:36:07,146.146 INFO    ] Checking for system updates...
[2026-10-25 17:36:07,186.186 INFO    ] 200
[2026-10-25 17:36:07,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:07,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:07,244.244 INFO    ] No update needed
[2026-10-25 17:36:07,246.246 INFO    ] Checking for camera pi updates...
[2026-10-25 17:36:07,280.280 INFO    ] 200
[2026-10-25 17:36:07,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:07,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:36:07,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:07,377.377 INFO    ] No camera update needed
[2026-10-25 17:36:07,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:36:07,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:36:07,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:36:07,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:36:09,435.435 INFO    ] ================================================
[2026-10-25 17:36:09,451.451 INFO    ] Launching Daemon at Sun Oct 25 17:36:09 IST 2026
[2026-10-25 17:36:09,462.462 INFO    ] ================================================
[2026-10-25 17:36:10,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:36:10
[2026-10-25 17:36:10,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:36:10,980.980 INFO    ] Initializing speech engine...
[2026-10-25 17:36:10,989.989 INFO    ] 2026-10-25 17:36:10
[2026-10-25 17:36:11,238.238 INFO    ] 2026-10-25 17:36:11
[2026-10-25 17:36:11,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:36:11,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:36:11,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:36:11,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:36:11,723.723 INFO    ] time= 25/10/2026 17:36:11
[2026-10-25 17:36:11,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:36:11,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:36:11,870.870 INFO    ] No existing commands found in stream
[2026-10-25 17:36:16,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:36:16,885.885 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 17:36:19,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:36:19,502.502 INFO    ] Checking for system updates...
[2026-10-25 17:36:19,538.538 INFO    ] 200
[2026-10-25 17:36:19,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:19,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:36:19,597.597 INFO    ] No update needed
[2026-10-25 17:36:19,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 17:36:19,633.633 INFO    ] 200
[2026-10-25 17:36:19,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:19,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:36:19,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:36:19,730.730 INFO    ] No camera update needed
[2026-10-25 17:36:19,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:36:19,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:36:19,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:36:19,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:36:21,786.786 INFO    ] ================================================
[2026-10-25 17:36:21,802.802 INFO    ] Launching Daemon at Sun Oct 25 17:36:21 IST 2026
[2026-10-25 17:36:21,813.813 INFO    ] ================================================
[2026-10-25 17:36:22,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:36:22
[2026-10-25 17:36:23,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:36:23,281.281 INFO    ] Initializing speech engine...
[2026-10-25 17:36:23,290.290 INFO    ] 2026-10-25 17:36:23
[2026-10-25 17:36:23,540.540 INFO    ] 2026-10-25 17:36:23
[2026-10-25 17:36:23,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:36:24,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:36:24,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:36:24,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:36:24,961.961 INFO    ] time= 25/10/2026 17:36:24
[2026-10-25 17:36:24,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:36:24,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:36:25,025.025 INFO    ] No existing commands found in stream
[2026-10-25 17:36:30,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:36:30,038.038 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 17:36:31,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:36:31,166.166 INFO    ] Checking for system updates...
[2026-10-25 17:36:31,203.203 INFO    ] 200
[2026-10-25 17:36:31,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:31,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:31,260.260 INFO    ] No update needed
[2026-10-25 17:36:31,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 17:36:31,298.298 INFO    ] 200
[2026-10-25 17:36:31,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:31,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:36:31,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:31,411.411 INFO    ] No camera update needed
[2026-10-25 17:36:31,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:36:31,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:36:31,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:36:31,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:36:33,481.481 INFO    ] ================================================
[2026-10-25 17:36:33,497.497 INFO    ] Launching Daemon at Sun Oct 25 17:36:33 IST 2026
[2026-10-25 17:36:33,508.508 INFO    ] ================================================
[2026-10-25 17:36:34,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:36:34
[2026-10-25 17:36:34,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:36:35,045.045 INFO    ] Initializing speech engine...
[2026-10-25 17:36:35,058.058 INFO    ] 2026-10-25 17:36:35
[2026-10-25 17:36:35,330.330 INFO    ] 2026-10-25 17:36:35
[2026-10-25 17:36:35,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:36:35,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:36:35,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:36:35,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:36:35,681.681 INFO    ] time= 25/10/2026 17:36:35
[2026-10-25 17:36:35,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:36:35,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:36:35,795.795 INFO    ] No existing commands found in stream
[2026-10-25 17:36:40,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:36:40,811.811 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 17:36:45,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:36:45,067.067 INFO    ] Checking for system updates...
[2026-10-25 17:36:45,103.103 INFO    ] 200
[2026-10-25 17:36:45,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:45,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:45,161.161 INFO    ] No update needed
[2026-10-25 17:36:45,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 17:36:45,198.198 INFO    ] 200
[2026-10-25 17:36:45,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:45,247.247 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:36:45,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:45,312.312 INFO    ] No camera update needed
[2026-10-25 17:36:45,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:36:45,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:36:45,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:36:45,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:36:47,369.369 INFO    ] ================================================
[2026-10-25 17:36:47,385.385 INFO    ] Launching Daemon at Sun Oct 25 17:36:47 IST 2026
[2026-10-25 17:36:47,396.396 INFO    ] ================================================
[2026-10-25 17:36:48,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:36:48
[2026-10-25 17:36:48,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:36:48,971.971 INFO    ] Initializing speech engine...
[2026-10-25 17:36:48,977.977 INFO    ] 2026-10-25 17:36:48
[2026-10-25 17:36:49,250.250 INFO    ] 2026-10-25 17:36:49
[2026-10-25 17:36:49,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:36:49,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:36:49,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:36:49,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:36:49,713.713 INFO    ] time= 25/10/2026 17:36:49
[2026-10-25 17:36:49,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:36:49,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:36:49,872.872 INFO    ] No existing commands found in stream
[2026-10-25 17:36:54,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:36:54,887.887 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 17:36:57,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:36:57,741.741 INFO    ] Checking for system updates...
[2026-10-25 17:36:57,779.779 INFO    ] 200
[2026-10-25 17:36:57,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:57,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:57,837.837 INFO    ] No update needed
[2026-10-25 17:36:57,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 17:36:57,874.874 INFO    ] 200
[2026-10-25 17:36:57,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:36:57,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:36:57,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:36:57,995.995 INFO    ] No camera update needed
[2026-10-25 17:36:57,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:36:57,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:36:58,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:36:58,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:37:00,051.051 INFO    ] ================================================
[2026-10-25 17:37:00,068.068 INFO    ] Launching Daemon at Sun Oct 25 17:37:00 IST 2026
[2026-10-25 17:37:00,079.079 INFO    ] ================================================
[2026-10-25 17:37:00,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:37:00
[2026-10-25 17:37:01,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:37:01,929.929 INFO    ] Initializing speech engine...
[2026-10-25 17:37:01,937.937 INFO    ] 2026-10-25 17:37:01
[2026-10-25 17:37:02,295.295 INFO    ] 2026-10-25 17:37:02
[2026-10-25 17:37:02,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:37:02,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:37:02,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:37:02,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:37:02,820.820 INFO    ] time= 25/10/2026 17:37:02
[2026-10-25 17:37:02,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:37:02,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:37:03,027.027 INFO    ] No existing commands found in stream
[2026-10-25 17:37:08,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:37:08,043.043 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 17:37:09,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:37:09,781.781 INFO    ] Checking for system updates...
[2026-10-25 17:37:09,818.818 INFO    ] 200
[2026-10-25 17:37:09,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:09,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:09,879.879 INFO    ] No update needed
[2026-10-25 17:37:09,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 17:37:09,921.921 INFO    ] 200
[2026-10-25 17:37:09,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:09,975.975 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:37:10,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:10,039.039 INFO    ] No camera update needed
[2026-10-25 17:37:10,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:37:10,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:37:10,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:37:10,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:37:12,100.100 INFO    ] ================================================
[2026-10-25 17:37:12,115.115 INFO    ] Launching Daemon at Sun Oct 25 17:37:12 IST 2026
[2026-10-25 17:37:12,127.127 INFO    ] ================================================
[2026-10-25 17:37:12,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:37:12
[2026-10-25 17:37:13,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:37:13,605.605 INFO    ] Initializing speech engine...
[2026-10-25 17:37:13,618.618 INFO    ] 2026-10-25 17:37:13
[2026-10-25 17:37:13,916.916 INFO    ] 2026-10-25 17:37:13
[2026-10-25 17:37:13,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:37:14,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:37:14,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:37:14,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:37:14,389.389 INFO    ] time= 25/10/2026 17:37:14
[2026-10-25 17:37:14,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:37:14,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:37:14,560.560 INFO    ] No existing commands found in stream
[2026-10-25 17:37:19,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:37:19,576.576 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 17:37:26,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:37:26,861.861 INFO    ] Checking for system updates...
[2026-10-25 17:37:26,898.898 INFO    ] 200
[2026-10-25 17:37:26,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:26,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:37:26,957.957 INFO    ] No update needed
[2026-10-25 17:37:26,959.959 INFO    ] Checking for camera pi updates...
[2026-10-25 17:37:26,999.999 INFO    ] 200
[2026-10-25 17:37:27,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:27,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:37:27,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:37:27,102.102 INFO    ] No camera update needed
[2026-10-25 17:37:27,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:37:27,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:37:27,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:37:27,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:37:29,163.163 INFO    ] ================================================
[2026-10-25 17:37:29,179.179 INFO    ] Launching Daemon at Sun Oct 25 17:37:29 IST 2026
[2026-10-25 17:37:29,190.190 INFO    ] ================================================
[2026-10-25 17:37:29,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:37:29
[2026-10-25 17:37:30,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:37:30,856.856 INFO    ] Initializing speech engine...
[2026-10-25 17:37:30,868.868 INFO    ] 2026-10-25 17:37:30
[2026-10-25 17:37:31,182.182 INFO    ] 2026-10-25 17:37:31
[2026-10-25 17:37:31,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:37:31,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:37:31,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:37:31,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:37:31,652.652 INFO    ] time= 25/10/2026 17:37:31
[2026-10-25 17:37:31,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:37:31,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:37:31,842.842 INFO    ] No existing commands found in stream
[2026-10-25 17:37:36,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:37:36,873.873 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 17:37:40,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:37:40,707.707 INFO    ] Checking for system updates...
[2026-10-25 17:37:40,747.747 INFO    ] 200
[2026-10-25 17:37:40,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:40,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:40,807.807 INFO    ] No update needed
[2026-10-25 17:37:40,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 17:37:40,845.845 INFO    ] 200
[2026-10-25 17:37:40,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:40,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:37:40,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:40,955.955 INFO    ] No camera update needed
[2026-10-25 17:37:40,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:37:40,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:37:40,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:37:40,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:37:43,014.014 INFO    ] ================================================
[2026-10-25 17:37:43,030.030 INFO    ] Launching Daemon at Sun Oct 25 17:37:43 IST 2026
[2026-10-25 17:37:43,042.042 INFO    ] ================================================
[2026-10-25 17:37:43,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:37:43
[2026-10-25 17:37:44,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:37:44,473.473 INFO    ] Initializing speech engine...
[2026-10-25 17:37:44,482.482 INFO    ] 2026-10-25 17:37:44
[2026-10-25 17:37:44,727.727 INFO    ] 2026-10-25 17:37:44
[2026-10-25 17:37:44,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:37:44,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:37:44,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:37:45,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:37:45,090.090 INFO    ] time= 25/10/2026 17:37:45
[2026-10-25 17:37:45,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:37:45,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:37:45,164.164 INFO    ] No existing commands found in stream
[2026-10-25 17:37:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:37:50,179.179 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 17:37:51,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:37:51,800.800 INFO    ] Checking for system updates...
[2026-10-25 17:37:51,837.837 INFO    ] 200
[2026-10-25 17:37:51,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:51,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:51,896.896 INFO    ] No update needed
[2026-10-25 17:37:51,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 17:37:51,935.935 INFO    ] 200
[2026-10-25 17:37:51,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:37:51,985.985 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:37:52,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:37:52,059.059 INFO    ] No camera update needed
[2026-10-25 17:37:52,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:37:52,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:37:52,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:37:52,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:37:54,116.116 INFO    ] ================================================
[2026-10-25 17:37:54,132.132 INFO    ] Launching Daemon at Sun Oct 25 17:37:54 IST 2026
[2026-10-25 17:37:54,143.143 INFO    ] ================================================
[2026-10-25 17:37:54,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:37:54
[2026-10-25 17:37:55,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:37:55,601.601 INFO    ] Initializing speech engine...
[2026-10-25 17:37:55,611.611 INFO    ] 2026-10-25 17:37:55
[2026-10-25 17:37:55,859.859 INFO    ] 2026-10-25 17:37:55
[2026-10-25 17:37:55,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:37:58,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:37:58,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:37:58,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:37:58,435.435 INFO    ] time= 25/10/2026 17:37:58
[2026-10-25 17:37:58,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:37:58,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:37:58,561.561 INFO    ] No existing commands found in stream
[2026-10-25 17:38:03,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:38:03,595.595 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 17:38:05,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:38:05,095.095 INFO    ] Checking for system updates...
[2026-10-25 17:38:05,131.131 INFO    ] 200
[2026-10-25 17:38:05,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:05,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:05,196.196 INFO    ] No update needed
[2026-10-25 17:38:05,198.198 INFO    ] Checking for camera pi updates...
[2026-10-25 17:38:05,235.235 INFO    ] 200
[2026-10-25 17:38:05,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:05,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:38:05,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:05,329.329 INFO    ] No camera update needed
[2026-10-25 17:38:05,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:38:05,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:38:05,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:38:05,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:38:07,386.386 INFO    ] ================================================
[2026-10-25 17:38:07,401.401 INFO    ] Launching Daemon at Sun Oct 25 17:38:07 IST 2026
[2026-10-25 17:38:07,412.412 INFO    ] ================================================
[2026-10-25 17:38:07,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:38:07
[2026-10-25 17:38:08,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:38:08,810.810 INFO    ] Initializing speech engine...
[2026-10-25 17:38:08,823.823 INFO    ] 2026-10-25 17:38:08
[2026-10-25 17:38:09,088.088 INFO    ] 2026-10-25 17:38:09
[2026-10-25 17:38:09,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:38:09,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:38:09,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:38:09,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:38:09,553.553 INFO    ] time= 25/10/2026 17:38:09
[2026-10-25 17:38:09,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:38:09,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:38:09,714.714 INFO    ] No existing commands found in stream
[2026-10-25 17:38:14,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:38:14,729.729 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 17:38:18,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:38:18,790.790 INFO    ] Checking for system updates...
[2026-10-25 17:38:18,845.845 INFO    ] 200
[2026-10-25 17:38:18,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:18,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:18,908.908 INFO    ] No update needed
[2026-10-25 17:38:18,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 17:38:18,945.945 INFO    ] 200
[2026-10-25 17:38:18,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:19,013.013 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:38:19,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:19,071.071 INFO    ] No camera update needed
[2026-10-25 17:38:19,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:38:19,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:38:19,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:38:19,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:38:21,127.127 INFO    ] ================================================
[2026-10-25 17:38:21,143.143 INFO    ] Launching Daemon at Sun Oct 25 17:38:21 IST 2026
[2026-10-25 17:38:21,155.155 INFO    ] ================================================
[2026-10-25 17:38:21,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:38:21
[2026-10-25 17:38:22,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:38:22,646.646 INFO    ] Initializing speech engine...
[2026-10-25 17:38:22,655.655 INFO    ] 2026-10-25 17:38:22
[2026-10-25 17:38:22,940.940 INFO    ] 2026-10-25 17:38:22
[2026-10-25 17:38:22,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:38:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:38:23,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:38:23,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:38:23,487.487 INFO    ] time= 25/10/2026 17:38:23
[2026-10-25 17:38:23,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:38:23,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:38:23,631.631 INFO    ] No existing commands found in stream
[2026-10-25 17:38:28,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:38:28,660.660 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 17:38:33,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:38:33,077.077 INFO    ] Checking for system updates...
[2026-10-25 17:38:33,114.114 INFO    ] 200
[2026-10-25 17:38:33,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:33,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:33,173.173 INFO    ] No update needed
[2026-10-25 17:38:33,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 17:38:33,213.213 INFO    ] 200
[2026-10-25 17:38:33,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:33,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:38:33,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:33,331.331 INFO    ] No camera update needed
[2026-10-25 17:38:33,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:38:33,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:38:33,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:38:33,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:38:35,389.389 INFO    ] ================================================
[2026-10-25 17:38:35,405.405 INFO    ] Launching Daemon at Sun Oct 25 17:38:35 IST 2026
[2026-10-25 17:38:35,415.415 INFO    ] ================================================
[2026-10-25 17:38:36,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:38:36
[2026-10-25 17:38:36,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:38:37,031.031 INFO    ] Initializing speech engine...
[2026-10-25 17:38:37,039.039 INFO    ] 2026-10-25 17:38:37
[2026-10-25 17:38:37,325.325 INFO    ] 2026-10-25 17:38:37
[2026-10-25 17:38:37,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:38:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:38:37,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:38:37,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:38:37,801.801 INFO    ] time= 25/10/2026 17:38:37
[2026-10-25 17:38:37,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:38:37,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:38:37,986.986 INFO    ] No existing commands found in stream
[2026-10-25 17:38:43,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:38:43,016.016 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 17:38:44,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:38:44,682.682 INFO    ] Checking for system updates...
[2026-10-25 17:38:44,723.723 INFO    ] 200
[2026-10-25 17:38:44,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:44,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:44,789.789 INFO    ] No update needed
[2026-10-25 17:38:44,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 17:38:44,829.829 INFO    ] 200
[2026-10-25 17:38:44,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:38:44,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:38:44,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:38:44,916.916 INFO    ] No camera update needed
[2026-10-25 17:38:44,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:38:44,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:38:44,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:38:44,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:38:46,974.974 INFO    ] ================================================
[2026-10-25 17:38:46,989.989 INFO    ] Launching Daemon at Sun Oct 25 17:38:46 IST 2026
[2026-10-25 17:38:47,999.999 INFO    ] ================================================
[2026-10-25 17:38:47,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:38:47
[2026-10-25 17:38:48,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:38:48,439.439 INFO    ] Initializing speech engine...
[2026-10-25 17:38:48,455.455 INFO    ] 2026-10-25 17:38:48
[2026-10-25 17:38:48,738.738 INFO    ] 2026-10-25 17:38:48
[2026-10-25 17:38:48,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:38:48,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:38:48,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:38:49,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:38:49,148.148 INFO    ] time= 25/10/2026 17:38:49
[2026-10-25 17:38:49,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:38:49,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:38:49,235.235 INFO    ] No existing commands found in stream
[2026-10-25 17:38:54,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:38:54,251.251 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 17:39:01,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:39:01,092.092 INFO    ] Checking for system updates...
[2026-10-25 17:39:01,131.131 INFO    ] 200
[2026-10-25 17:39:01,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:01,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:39:01,194.194 INFO    ] No update needed
[2026-10-25 17:39:01,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:01,230.230 INFO    ] 200
[2026-10-25 17:39:01,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:01,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:01,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:39:01,335.335 INFO    ] No camera update needed
[2026-10-25 17:39:01,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:01,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:01,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:01,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:03,391.391 INFO    ] ================================================
[2026-10-25 17:39:03,406.406 INFO    ] Launching Daemon at Sun Oct 25 17:39:03 IST 2026
[2026-10-25 17:39:03,416.416 INFO    ] ================================================
[2026-10-25 17:39:04,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:04
[2026-10-25 17:39:04,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:39:04,901.901 INFO    ] Initializing speech engine...
[2026-10-25 17:39:04,910.910 INFO    ] 2026-10-25 17:39:04
[2026-10-25 17:39:05,159.159 INFO    ] 2026-10-25 17:39:05
[2026-10-25 17:39:05,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:39:05,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:39:05,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:39:05,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:39:05,533.533 INFO    ] time= 25/10/2026 17:39:05
[2026-10-25 17:39:05,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:39:05,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:39:05,612.612 INFO    ] No existing commands found in stream
[2026-10-25 17:39:10,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:39:10,629.629 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 17:39:11,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:39:11,426.426 INFO    ] Checking for system updates...
[2026-10-25 17:39:11,462.462 INFO    ] 200
[2026-10-25 17:39:11,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:11,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:11,524.524 INFO    ] No update needed
[2026-10-25 17:39:11,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:11,560.560 INFO    ] 200
[2026-10-25 17:39:11,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:11,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:11,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:11,655.655 INFO    ] No camera update needed
[2026-10-25 17:39:11,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:11,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:11,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:11,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:13,709.709 INFO    ] ================================================
[2026-10-25 17:39:13,725.725 INFO    ] Launching Daemon at Sun Oct 25 17:39:13 IST 2026
[2026-10-25 17:39:13,735.735 INFO    ] ================================================
[2026-10-25 17:39:14,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:14
[2026-10-25 17:39:14,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:39:15,202.202 INFO    ] Initializing speech engine...
[2026-10-25 17:39:15,222.222 INFO    ] 2026-10-25 17:39:15
[2026-10-25 17:39:15,476.476 INFO    ] 2026-10-25 17:39:15
[2026-10-25 17:39:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:39:15,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:39:15,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:39:15,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:39:15,811.811 INFO    ] time= 25/10/2026 17:39:15
[2026-10-25 17:39:15,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:39:15,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:39:15,937.937 INFO    ] No existing commands found in stream
[2026-10-25 17:39:20,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:39:20,955.955 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 17:39:22,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:39:22,210.210 INFO    ] Checking for system updates...
[2026-10-25 17:39:22,246.246 INFO    ] 200
[2026-10-25 17:39:22,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:22,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:22,303.303 INFO    ] No update needed
[2026-10-25 17:39:22,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:22,342.342 INFO    ] 200
[2026-10-25 17:39:22,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:22,388.388 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:22,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:22,442.442 INFO    ] No camera update needed
[2026-10-25 17:39:22,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:22,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:22,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:22,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:24,495.495 INFO    ] ================================================
[2026-10-25 17:39:24,511.511 INFO    ] Launching Daemon at Sun Oct 25 17:39:24 IST 2026
[2026-10-25 17:39:24,521.521 INFO    ] ================================================
[2026-10-25 17:39:25,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:25
[2026-10-25 17:39:25,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:39:25,944.944 INFO    ] Initializing speech engine...
[2026-10-25 17:39:25,954.954 INFO    ] 2026-10-25 17:39:25
[2026-10-25 17:39:26,212.212 INFO    ] 2026-10-25 17:39:26
[2026-10-25 17:39:26,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:39:26,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:39:26,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:39:26,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:39:26,685.685 INFO    ] time= 25/10/2026 17:39:26
[2026-10-25 17:39:26,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:39:26,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:39:26,828.828 INFO    ] No existing commands found in stream
[2026-10-25 17:39:31,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:39:31,843.843 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 17:39:34,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:39:34,456.456 INFO    ] Checking for system updates...
[2026-10-25 17:39:34,495.495 INFO    ] 200
[2026-10-25 17:39:34,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:34,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:34,555.555 INFO    ] No update needed
[2026-10-25 17:39:34,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:34,593.593 INFO    ] 200
[2026-10-25 17:39:34,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:34,643.643 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:34,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:34,704.704 INFO    ] No camera update needed
[2026-10-25 17:39:34,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:34,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:34,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:34,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:36,761.761 INFO    ] ================================================
[2026-10-25 17:39:36,776.776 INFO    ] Launching Daemon at Sun Oct 25 17:39:36 IST 2026
[2026-10-25 17:39:36,787.787 INFO    ] ================================================
[2026-10-25 17:39:37,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:37
[2026-10-25 17:39:37,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:39:38,207.207 INFO    ] Initializing speech engine...
[2026-10-25 17:39:38,210.210 INFO    ] 2026-10-25 17:39:38
[2026-10-25 17:39:38,523.523 INFO    ] 2026-10-25 17:39:38
[2026-10-25 17:39:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:39:38,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:39:38,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:39:38,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:39:38,866.866 INFO    ] time= 25/10/2026 17:39:38
[2026-10-25 17:39:38,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:39:38,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:39:38,943.943 INFO    ] No existing commands found in stream
[2026-10-25 17:39:43,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:39:43,958.958 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 17:39:46,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:39:46,366.366 INFO    ] Checking for system updates...
[2026-10-25 17:39:46,402.402 INFO    ] 200
[2026-10-25 17:39:46,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:46,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:39:46,463.463 INFO    ] No update needed
[2026-10-25 17:39:46,466.466 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:46,499.499 INFO    ] 200
[2026-10-25 17:39:46,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:46,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:46,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:39:46,605.605 INFO    ] No camera update needed
[2026-10-25 17:39:46,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:46,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:46,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:46,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:48,660.660 INFO    ] ================================================
[2026-10-25 17:39:48,675.675 INFO    ] Launching Daemon at Sun Oct 25 17:39:48 IST 2026
[2026-10-25 17:39:48,686.686 INFO    ] ================================================
[2026-10-25 17:39:49,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:49
[2026-10-25 17:39:49,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:39:50,099.099 INFO    ] Initializing speech engine...
[2026-10-25 17:39:50,115.115 INFO    ] 2026-10-25 17:39:50
[2026-10-25 17:39:50,366.366 INFO    ] 2026-10-25 17:39:50
[2026-10-25 17:39:50,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:39:50,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:39:50,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:39:50,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:39:50,741.741 INFO    ] time= 25/10/2026 17:39:50
[2026-10-25 17:39:50,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:39:50,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:39:50,911.911 INFO    ] No existing commands found in stream
[2026-10-25 17:39:55,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:39:55,939.939 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 17:39:56,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:39:56,668.668 INFO    ] Checking for system updates...
[2026-10-25 17:39:56,703.703 INFO    ] 200
[2026-10-25 17:39:56,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:56,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:56,766.766 INFO    ] No update needed
[2026-10-25 17:39:56,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 17:39:56,804.804 INFO    ] 200
[2026-10-25 17:39:56,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:39:56,847.847 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:39:56,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:39:56,918.918 INFO    ] No camera update needed
[2026-10-25 17:39:56,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:39:56,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:39:56,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:39:56,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:39:58,973.973 INFO    ] ================================================
[2026-10-25 17:39:58,988.988 INFO    ] Launching Daemon at Sun Oct 25 17:39:58 IST 2026
[2026-10-25 17:39:59,998.998 INFO    ] ================================================
[2026-10-25 17:39:59,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:39:59
[2026-10-25 17:40:00,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:40:00,453.453 INFO    ] Initializing speech engine...
[2026-10-25 17:40:00,458.458 INFO    ] 2026-10-25 17:40:00
[2026-10-25 17:40:00,719.719 INFO    ] 2026-10-25 17:40:00
[2026-10-25 17:40:00,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:40:03,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:40:03,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:40:03,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:40:03,424.424 INFO    ] time= 25/10/2026 17:40:03
[2026-10-25 17:40:03,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:40:03,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:40:03,571.571 INFO    ] No existing commands found in stream
[2026-10-25 17:40:08,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:40:08,599.599 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 17:40:11,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:40:11,024.024 INFO    ] Checking for system updates...
[2026-10-25 17:40:11,060.060 INFO    ] 200
[2026-10-25 17:40:11,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:11,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:11,119.119 INFO    ] No update needed
[2026-10-25 17:40:11,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 17:40:11,154.154 INFO    ] 200
[2026-10-25 17:40:11,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:11,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:40:11,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:11,259.259 INFO    ] No camera update needed
[2026-10-25 17:40:11,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:40:11,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:40:11,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:40:11,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:40:13,314.314 INFO    ] ================================================
[2026-10-25 17:40:13,329.329 INFO    ] Launching Daemon at Sun Oct 25 17:40:13 IST 2026
[2026-10-25 17:40:13,339.339 INFO    ] ================================================
[2026-10-25 17:40:13,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:40:13
[2026-10-25 17:40:14,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:40:14,846.846 INFO    ] Initializing speech engine...
[2026-10-25 17:40:14,855.855 INFO    ] 2026-10-25 17:40:14
[2026-10-25 17:40:15,115.115 INFO    ] 2026-10-25 17:40:15
[2026-10-25 17:40:15,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:40:15,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:40:15,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:40:15,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:40:15,583.583 INFO    ] time= 25/10/2026 17:40:15
[2026-10-25 17:40:15,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:40:15,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:40:15,719.719 INFO    ] No existing commands found in stream
[2026-10-25 17:40:20,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:40:20,733.733 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 17:40:22,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:40:22,968.968 INFO    ] Checking for system updates...
[2026-10-25 17:40:23,004.004 INFO    ] 200
[2026-10-25 17:40:23,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:23,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:23,062.062 INFO    ] No update needed
[2026-10-25 17:40:23,064.064 INFO    ] Checking for camera pi updates...
[2026-10-25 17:40:23,102.102 INFO    ] 200
[2026-10-25 17:40:23,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:23,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:40:23,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:23,202.202 INFO    ] No camera update needed
[2026-10-25 17:40:23,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:40:23,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:40:23,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:40:23,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:40:25,258.258 INFO    ] ================================================
[2026-10-25 17:40:25,273.273 INFO    ] Launching Daemon at Sun Oct 25 17:40:25 IST 2026
[2026-10-25 17:40:25,283.283 INFO    ] ================================================
[2026-10-25 17:40:25,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:40:25
[2026-10-25 17:40:26,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:40:26,700.700 INFO    ] Initializing speech engine...
[2026-10-25 17:40:26,708.708 INFO    ] 2026-10-25 17:40:26
[2026-10-25 17:40:26,957.957 INFO    ] 2026-10-25 17:40:26
[2026-10-25 17:40:26,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:40:27,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:40:27,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:40:27,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:40:27,377.377 INFO    ] time= 25/10/2026 17:40:27
[2026-10-25 17:40:27,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:40:27,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:40:27,541.541 INFO    ] No existing commands found in stream
[2026-10-25 17:40:32,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:40:32,554.554 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 17:40:34,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:40:34,877.877 INFO    ] Checking for system updates...
[2026-10-25 17:40:34,916.916 INFO    ] 200
[2026-10-25 17:40:34,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:34,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:34,974.974 INFO    ] No update needed
[2026-10-25 17:40:34,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 17:40:35,011.011 INFO    ] 200
[2026-10-25 17:40:35,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:35,062.062 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:40:35,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:35,119.119 INFO    ] No camera update needed
[2026-10-25 17:40:35,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:40:35,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:40:35,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:40:35,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:40:37,175.175 INFO    ] ================================================
[2026-10-25 17:40:37,190.190 INFO    ] Launching Daemon at Sun Oct 25 17:40:37 IST 2026
[2026-10-25 17:40:37,200.200 INFO    ] ================================================
[2026-10-25 17:40:37,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:40:37
[2026-10-25 17:40:38,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:40:38,628.628 INFO    ] Initializing speech engine...
[2026-10-25 17:40:38,638.638 INFO    ] 2026-10-25 17:40:38
[2026-10-25 17:40:38,888.888 INFO    ] 2026-10-25 17:40:38
[2026-10-25 17:40:38,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:40:39,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:40:39,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:40:39,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:40:39,263.263 INFO    ] time= 25/10/2026 17:40:39
[2026-10-25 17:40:39,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:40:39,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:40:39,431.431 INFO    ] No existing commands found in stream
[2026-10-25 17:40:44,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:40:44,465.465 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 17:40:48,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:40:48,821.821 INFO    ] Checking for system updates...
[2026-10-25 17:40:48,857.857 INFO    ] 200
[2026-10-25 17:40:48,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:48,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:40:48,930.930 INFO    ] No update needed
[2026-10-25 17:40:48,933.933 INFO    ] Checking for camera pi updates...
[2026-10-25 17:40:48,981.981 INFO    ] 200
[2026-10-25 17:40:48,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:49,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:40:49,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:40:49,085.085 INFO    ] No camera update needed
[2026-10-25 17:40:49,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:40:49,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:40:49,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:40:49,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:40:51,145.145 INFO    ] ================================================
[2026-10-25 17:40:51,159.159 INFO    ] Launching Daemon at Sun Oct 25 17:40:51 IST 2026
[2026-10-25 17:40:51,170.170 INFO    ] ================================================
[2026-10-25 17:40:51,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:40:51
[2026-10-25 17:40:52,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:40:52,614.614 INFO    ] Initializing speech engine...
[2026-10-25 17:40:52,621.621 INFO    ] 2026-10-25 17:40:52
[2026-10-25 17:40:52,909.909 INFO    ] 2026-10-25 17:40:52
[2026-10-25 17:40:52,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:40:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:40:53,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:40:53,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:40:53,398.398 INFO    ] time= 25/10/2026 17:40:53
[2026-10-25 17:40:53,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:40:53,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:40:53,579.579 INFO    ] No existing commands found in stream
[2026-10-25 17:40:58,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:40:58,616.616 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 17:40:59,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:40:59,892.892 INFO    ] Checking for system updates...
[2026-10-25 17:40:59,929.929 INFO    ] 200
[2026-10-25 17:40:59,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:40:59,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:40:59,994.994 INFO    ] No update needed
[2026-10-25 17:40:59,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 17:41:00,036.036 INFO    ] 200
[2026-10-25 17:41:00,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:00,086.086 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:41:00,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:41:00,153.153 INFO    ] No camera update needed
[2026-10-25 17:41:00,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:41:00,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:41:00,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:41:00,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:41:02,226.226 INFO    ] ================================================
[2026-10-25 17:41:02,248.248 INFO    ] Launching Daemon at Sun Oct 25 17:41:02 IST 2026
[2026-10-25 17:41:02,264.264 INFO    ] ================================================
[2026-10-25 17:41:02,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:41:02
[2026-10-25 17:41:03,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:41:03,917.917 INFO    ] Initializing speech engine...
[2026-10-25 17:41:03,929.929 INFO    ] 2026-10-25 17:41:03
[2026-10-25 17:41:04,235.235 INFO    ] 2026-10-25 17:41:04
[2026-10-25 17:41:04,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:41:05,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:41:05,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:41:05,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:41:05,744.744 INFO    ] time= 25/10/2026 17:41:05
[2026-10-25 17:41:05,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:41:05,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:41:05,866.866 INFO    ] No existing commands found in stream
[2026-10-25 17:41:10,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:41:10,883.883 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 17:41:13,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:41:13,248.248 INFO    ] Checking for system updates...
[2026-10-25 17:41:13,284.284 INFO    ] 200
[2026-10-25 17:41:13,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:13,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:41:13,342.342 INFO    ] No update needed
[2026-10-25 17:41:13,344.344 INFO    ] Checking for camera pi updates...
[2026-10-25 17:41:13,378.378 INFO    ] 200
[2026-10-25 17:41:13,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:13,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:41:13,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:41:13,486.486 INFO    ] No camera update needed
[2026-10-25 17:41:13,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:41:13,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:41:13,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:41:13,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:41:15,548.548 INFO    ] ================================================
[2026-10-25 17:41:15,563.563 INFO    ] Launching Daemon at Sun Oct 25 17:41:15 IST 2026
[2026-10-25 17:41:15,574.574 INFO    ] ================================================
[2026-10-25 17:41:16,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:41:16
[2026-10-25 17:41:16,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:41:16,969.969 INFO    ] Initializing speech engine...
[2026-10-25 17:41:16,977.977 INFO    ] 2026-10-25 17:41:16
[2026-10-25 17:41:17,247.247 INFO    ] 2026-10-25 17:41:17
[2026-10-25 17:41:17,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:41:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:41:17,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:41:17,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:41:17,741.741 INFO    ] time= 25/10/2026 17:41:17
[2026-10-25 17:41:17,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:41:17,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:41:17,939.939 INFO    ] No existing commands found in stream
[2026-10-25 17:41:22,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:41:22,966.966 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 17:41:24,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:41:24,456.456 INFO    ] Checking for system updates...
[2026-10-25 17:41:24,492.492 INFO    ] 200
[2026-10-25 17:41:24,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:24,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:41:24,549.549 INFO    ] No update needed
[2026-10-25 17:41:24,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 17:41:24,585.585 INFO    ] 200
[2026-10-25 17:41:24,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:24,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:41:24,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:41:24,678.678 INFO    ] No camera update needed
[2026-10-25 17:41:24,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:41:24,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:41:24,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:41:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:41:26,734.734 INFO    ] ================================================
[2026-10-25 17:41:26,749.749 INFO    ] Launching Daemon at Sun Oct 25 17:41:26 IST 2026
[2026-10-25 17:41:26,759.759 INFO    ] ================================================
[2026-10-25 17:41:27,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:41:27
[2026-10-25 17:41:27,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:41:28,181.181 INFO    ] Initializing speech engine...
[2026-10-25 17:41:28,197.197 INFO    ] 2026-10-25 17:41:28
[2026-10-25 17:41:28,479.479 INFO    ] 2026-10-25 17:41:28
[2026-10-25 17:41:28,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:41:28,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:41:28,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:41:28,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:41:28,893.893 INFO    ] time= 25/10/2026 17:41:28
[2026-10-25 17:41:28,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:41:28,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:41:28,979.979 INFO    ] No existing commands found in stream
[2026-10-25 17:41:33,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:41:33,992.992 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 17:41:37,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:41:37,042.042 INFO    ] Checking for system updates...
[2026-10-25 17:41:37,078.078 INFO    ] 200
[2026-10-25 17:41:37,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:37,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:41:37,135.135 INFO    ] No update needed
[2026-10-25 17:41:37,138.138 INFO    ] Checking for camera pi updates...
[2026-10-25 17:41:37,171.171 INFO    ] 200
[2026-10-25 17:41:37,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:37,218.218 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:41:37,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:41:37,280.280 INFO    ] No camera update needed
[2026-10-25 17:41:37,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:41:37,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:41:37,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:41:37,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:41:39,336.336 INFO    ] ================================================
[2026-10-25 17:41:39,351.351 INFO    ] Launching Daemon at Sun Oct 25 17:41:39 IST 2026
[2026-10-25 17:41:39,361.361 INFO    ] ================================================
[2026-10-25 17:41:39,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:41:39
[2026-10-25 17:41:40,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:41:40,767.767 INFO    ] Initializing speech engine...
[2026-10-25 17:41:40,780.780 INFO    ] 2026-10-25 17:41:40
[2026-10-25 17:41:41,061.061 INFO    ] 2026-10-25 17:41:41
[2026-10-25 17:41:41,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:41:41,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:41:41,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:41:41,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:41:41,465.465 INFO    ] time= 25/10/2026 17:41:41
[2026-10-25 17:41:41,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:41:41,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:41:41,553.553 INFO    ] No existing commands found in stream
[2026-10-25 17:41:46,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:41:46,567.567 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 17:41:48,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:41:48,840.840 INFO    ] Checking for system updates...
[2026-10-25 17:41:48,876.876 INFO    ] 200
[2026-10-25 17:41:48,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:48,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:41:48,934.934 INFO    ] No update needed
[2026-10-25 17:41:48,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 17:41:48,974.974 INFO    ] 200
[2026-10-25 17:41:48,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:41:49,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:41:49,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:41:49,071.071 INFO    ] No camera update needed
[2026-10-25 17:41:49,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:41:49,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:41:49,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:41:49,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:41:51,126.126 INFO    ] ================================================
[2026-10-25 17:41:51,141.141 INFO    ] Launching Daemon at Sun Oct 25 17:41:51 IST 2026
[2026-10-25 17:41:51,151.151 INFO    ] ================================================
[2026-10-25 17:41:51,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:41:51
[2026-10-25 17:41:52,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:41:52,560.560 INFO    ] Initializing speech engine...
[2026-10-25 17:41:52,575.575 INFO    ] 2026-10-25 17:41:52
[2026-10-25 17:41:52,853.853 INFO    ] 2026-10-25 17:41:52
[2026-10-25 17:41:52,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:41:53,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:41:53,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:41:53,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:41:53,241.241 INFO    ] time= 25/10/2026 17:41:53
[2026-10-25 17:41:53,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:41:53,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:41:53,346.346 INFO    ] No existing commands found in stream
[2026-10-25 17:41:58,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:41:58,360.360 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 17:42:02,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:42:02,367.367 INFO    ] Checking for system updates...
[2026-10-25 17:42:02,410.410 INFO    ] 200
[2026-10-25 17:42:02,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:02,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:42:02,476.476 INFO    ] No update needed
[2026-10-25 17:42:02,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 17:42:02,517.517 INFO    ] 200
[2026-10-25 17:42:02,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:02,572.572 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:42:02,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:42:02,624.624 INFO    ] No camera update needed
[2026-10-25 17:42:02,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:42:02,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:42:02,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:42:02,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:42:04,686.686 INFO    ] ================================================
[2026-10-25 17:42:04,701.701 INFO    ] Launching Daemon at Sun Oct 25 17:42:04 IST 2026
[2026-10-25 17:42:04,711.711 INFO    ] ================================================
[2026-10-25 17:42:05,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:42:05
[2026-10-25 17:42:05,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:42:06,126.126 INFO    ] Initializing speech engine...
[2026-10-25 17:42:06,132.132 INFO    ] 2026-10-25 17:42:06
[2026-10-25 17:42:06,383.383 INFO    ] 2026-10-25 17:42:06
[2026-10-25 17:42:06,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:42:08,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:42:08,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:42:08,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:42:08,284.284 INFO    ] time= 25/10/2026 17:42:08
[2026-10-25 17:42:08,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:42:08,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:42:08,360.360 INFO    ] No existing commands found in stream
[2026-10-25 17:42:13,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:42:13,373.373 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 17:42:15,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:42:15,698.698 INFO    ] Checking for system updates...
[2026-10-25 17:42:15,736.736 INFO    ] 200
[2026-10-25 17:42:15,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:15,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:15,800.800 INFO    ] No update needed
[2026-10-25 17:42:15,802.802 INFO    ] Checking for camera pi updates...
[2026-10-25 17:42:15,838.838 INFO    ] 200
[2026-10-25 17:42:15,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:15,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:42:16,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:16,059.059 INFO    ] No camera update needed
[2026-10-25 17:42:16,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:42:16,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:42:16,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:42:16,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:42:18,114.114 INFO    ] ================================================
[2026-10-25 17:42:18,129.129 INFO    ] Launching Daemon at Sun Oct 25 17:42:18 IST 2026
[2026-10-25 17:42:18,139.139 INFO    ] ================================================
[2026-10-25 17:42:18,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:42:18
[2026-10-25 17:42:19,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:42:19,564.564 INFO    ] Initializing speech engine...
[2026-10-25 17:42:19,574.574 INFO    ] 2026-10-25 17:42:19
[2026-10-25 17:42:19,826.826 INFO    ] 2026-10-25 17:42:19
[2026-10-25 17:42:19,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:42:20,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:42:20,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:42:20,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:42:20,193.193 INFO    ] time= 25/10/2026 17:42:20
[2026-10-25 17:42:20,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:42:20,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:42:20,271.271 INFO    ] No existing commands found in stream
[2026-10-25 17:42:25,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:42:25,288.288 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 17:42:25,960.960 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:42:25,963.963 INFO    ] Checking for system updates...
[2026-10-25 17:42:25,998.998 INFO    ] 200
[2026-10-25 17:42:26,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:26,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:26,056.056 INFO    ] No update needed
[2026-10-25 17:42:26,058.058 INFO    ] Checking for camera pi updates...
[2026-10-25 17:42:26,096.096 INFO    ] 200
[2026-10-25 17:42:26,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:26,139.139 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:42:26,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:26,192.192 INFO    ] No camera update needed
[2026-10-25 17:42:26,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:42:26,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:42:26,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:42:26,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:42:28,248.248 INFO    ] ================================================
[2026-10-25 17:42:28,263.263 INFO    ] Launching Daemon at Sun Oct 25 17:42:28 IST 2026
[2026-10-25 17:42:28,273.273 INFO    ] ================================================
[2026-10-25 17:42:28,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:42:28
[2026-10-25 17:42:29,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:42:29,695.695 INFO    ] Initializing speech engine...
[2026-10-25 17:42:29,703.703 INFO    ] 2026-10-25 17:42:29
[2026-10-25 17:42:29,988.988 INFO    ] 2026-10-25 17:42:29
[2026-10-25 17:42:30,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:42:30,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:42:30,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:42:30,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:42:30,389.389 INFO    ] time= 25/10/2026 17:42:30
[2026-10-25 17:42:30,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:42:30,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:42:30,543.543 INFO    ] No existing commands found in stream
[2026-10-25 17:42:35,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:42:35,571.571 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 17:42:39,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:42:39,699.699 INFO    ] Checking for system updates...
[2026-10-25 17:42:39,735.735 INFO    ] 200
[2026-10-25 17:42:39,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:39,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:39,792.792 INFO    ] No update needed
[2026-10-25 17:42:39,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 17:42:39,831.831 INFO    ] 200
[2026-10-25 17:42:39,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:39,879.879 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:42:39,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:39,936.936 INFO    ] No camera update needed
[2026-10-25 17:42:39,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:42:39,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:42:39,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:42:39,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:42:41,991.991 INFO    ] ================================================
[2026-10-25 17:42:42,006.006 INFO    ] Launching Daemon at Sun Oct 25 17:42:42 IST 2026
[2026-10-25 17:42:42,017.017 INFO    ] ================================================
[2026-10-25 17:42:42,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:42:42
[2026-10-25 17:42:43,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:42:43,568.568 INFO    ] Initializing speech engine...
[2026-10-25 17:42:43,576.576 INFO    ] 2026-10-25 17:42:43
[2026-10-25 17:42:43,854.854 INFO    ] 2026-10-25 17:42:43
[2026-10-25 17:42:43,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:42:44,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:42:44,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:42:44,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:42:44,360.360 INFO    ] time= 25/10/2026 17:42:44
[2026-10-25 17:42:44,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:42:44,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:42:44,554.554 INFO    ] No existing commands found in stream
[2026-10-25 17:42:49,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:42:49,587.587 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 17:42:51,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:42:51,522.522 INFO    ] Checking for system updates...
[2026-10-25 17:42:51,562.562 INFO    ] 200
[2026-10-25 17:42:51,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:51,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:51,626.626 INFO    ] No update needed
[2026-10-25 17:42:51,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 17:42:51,663.663 INFO    ] 200
[2026-10-25 17:42:51,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:42:51,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:42:51,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:42:51,758.758 INFO    ] No camera update needed
[2026-10-25 17:42:51,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:42:51,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:42:51,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:42:51,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:42:53,812.812 INFO    ] ================================================
[2026-10-25 17:42:53,827.827 INFO    ] Launching Daemon at Sun Oct 25 17:42:53 IST 2026
[2026-10-25 17:42:53,838.838 INFO    ] ================================================
[2026-10-25 17:42:54,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:42:54
[2026-10-25 17:42:55,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:42:55,408.408 INFO    ] Initializing speech engine...
[2026-10-25 17:42:55,423.423 INFO    ] 2026-10-25 17:42:55
[2026-10-25 17:42:55,690.690 INFO    ] 2026-10-25 17:42:55
[2026-10-25 17:42:55,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:42:55,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:42:55,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:42:56,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:42:56,164.164 INFO    ] time= 25/10/2026 17:42:56
[2026-10-25 17:42:56,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:42:56,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:42:56,312.312 INFO    ] No existing commands found in stream
[2026-10-25 17:43:01,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:43:01,325.325 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 17:43:04,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:43:04,376.376 INFO    ] Checking for system updates...
[2026-10-25 17:43:04,412.412 INFO    ] 200
[2026-10-25 17:43:04,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:04,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:43:04,469.469 INFO    ] No update needed
[2026-10-25 17:43:04,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 17:43:04,509.509 INFO    ] 200
[2026-10-25 17:43:04,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:04,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:43:04,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:43:04,612.612 INFO    ] No camera update needed
[2026-10-25 17:43:04,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:43:04,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:43:04,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:43:04,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:43:06,667.667 INFO    ] ================================================
[2026-10-25 17:43:06,682.682 INFO    ] Launching Daemon at Sun Oct 25 17:43:06 IST 2026
[2026-10-25 17:43:06,693.693 INFO    ] ================================================
[2026-10-25 17:43:07,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:43:07
[2026-10-25 17:43:07,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:43:08,283.283 INFO    ] Initializing speech engine...
[2026-10-25 17:43:08,297.297 INFO    ] 2026-10-25 17:43:08
[2026-10-25 17:43:08,579.579 INFO    ] 2026-10-25 17:43:08
[2026-10-25 17:43:08,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:43:10,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:43:10,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:43:11,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:43:11,281.281 INFO    ] time= 25/10/2026 17:43:11
[2026-10-25 17:43:11,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:43:11,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:43:11,383.383 INFO    ] No existing commands found in stream
[2026-10-25 17:43:16,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:43:16,400.400 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 17:43:20,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:43:20,087.087 INFO    ] Checking for system updates...
[2026-10-25 17:43:20,124.124 INFO    ] 200
[2026-10-25 17:43:20,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:20,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:43:20,187.187 INFO    ] No update needed
[2026-10-25 17:43:20,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 17:43:20,226.226 INFO    ] 200
[2026-10-25 17:43:20,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:20,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:43:20,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:43:20,322.322 INFO    ] No camera update needed
[2026-10-25 17:43:20,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:43:20,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:43:20,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:43:20,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:43:22,377.377 INFO    ] ================================================
[2026-10-25 17:43:22,392.392 INFO    ] Launching Daemon at Sun Oct 25 17:43:22 IST 2026
[2026-10-25 17:43:22,403.403 INFO    ] ================================================
[2026-10-25 17:43:23,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:43:23
[2026-10-25 17:43:23,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:43:23,948.948 INFO    ] Initializing speech engine...
[2026-10-25 17:43:23,957.957 INFO    ] 2026-10-25 17:43:23
[2026-10-25 17:43:24,217.217 INFO    ] 2026-10-25 17:43:24
[2026-10-25 17:43:24,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:43:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:43:24,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:43:24,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:43:24,566.566 INFO    ] time= 25/10/2026 17:43:24
[2026-10-25 17:43:24,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:43:24,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:43:24,646.646 INFO    ] No existing commands found in stream
[2026-10-25 17:43:29,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:43:29,661.661 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 17:43:33,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:43:33,377.377 INFO    ] Checking for system updates...
[2026-10-25 17:43:33,414.414 INFO    ] 200
[2026-10-25 17:43:33,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:33,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:43:33,474.474 INFO    ] No update needed
[2026-10-25 17:43:33,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 17:43:33,511.511 INFO    ] 200
[2026-10-25 17:43:33,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:33,557.557 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:43:33,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:43:33,608.608 INFO    ] No camera update needed
[2026-10-25 17:43:33,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:43:33,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:43:33,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:43:33,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:43:35,667.667 INFO    ] ================================================
[2026-10-25 17:43:35,682.682 INFO    ] Launching Daemon at Sun Oct 25 17:43:35 IST 2026
[2026-10-25 17:43:35,693.693 INFO    ] ================================================
[2026-10-25 17:43:36,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:43:36
[2026-10-25 17:43:36,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:43:37,271.271 INFO    ] Initializing speech engine...
[2026-10-25 17:43:37,280.280 INFO    ] 2026-10-25 17:43:37
[2026-10-25 17:43:37,547.547 INFO    ] 2026-10-25 17:43:37
[2026-10-25 17:43:37,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:43:37,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:43:37,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:43:37,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:43:37,938.938 INFO    ] time= 25/10/2026 17:43:37
[2026-10-25 17:43:37,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:43:37,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:43:38,044.044 INFO    ] No existing commands found in stream
[2026-10-25 17:43:43,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:43:43,059.059 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 17:43:46,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:43:46,827.827 INFO    ] Checking for system updates...
[2026-10-25 17:43:46,863.863 INFO    ] 200
[2026-10-25 17:43:46,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:46,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:43:46,920.920 INFO    ] No update needed
[2026-10-25 17:43:46,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 17:43:46,956.956 INFO    ] 200
[2026-10-25 17:43:46,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:43:47,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:43:47,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:43:47,056.056 INFO    ] No camera update needed
[2026-10-25 17:43:47,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:43:47,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:43:47,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:43:47,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:43:49,112.112 INFO    ] ================================================
[2026-10-25 17:43:49,127.127 INFO    ] Launching Daemon at Sun Oct 25 17:43:49 IST 2026
[2026-10-25 17:43:49,138.138 INFO    ] ================================================
[2026-10-25 17:43:49,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:43:49
[2026-10-25 17:43:50,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:43:50,555.555 INFO    ] Initializing speech engine...
[2026-10-25 17:43:50,565.565 INFO    ] 2026-10-25 17:43:50
[2026-10-25 17:43:50,808.808 INFO    ] 2026-10-25 17:43:50
[2026-10-25 17:43:50,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:43:51,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:43:51,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:43:51,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:43:51,282.282 INFO    ] time= 25/10/2026 17:43:51
[2026-10-25 17:43:51,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:43:51,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:43:51,421.421 INFO    ] No existing commands found in stream
[2026-10-25 17:43:56,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:43:56,436.436 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 17:44:00,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:44:00,502.502 INFO    ] Checking for system updates...
[2026-10-25 17:44:00,538.538 INFO    ] 200
[2026-10-25 17:44:00,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:00,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:00,596.596 INFO    ] No update needed
[2026-10-25 17:44:00,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 17:44:00,636.636 INFO    ] 200
[2026-10-25 17:44:00,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:00,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:44:00,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:00,738.738 INFO    ] No camera update needed
[2026-10-25 17:44:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:44:00,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:44:00,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:44:00,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:44:02,805.805 INFO    ] ================================================
[2026-10-25 17:44:02,826.826 INFO    ] Launching Daemon at Sun Oct 25 17:44:02 IST 2026
[2026-10-25 17:44:02,844.844 INFO    ] ================================================
[2026-10-25 17:44:03,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:44:03
[2026-10-25 17:44:04,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:44:04,392.392 INFO    ] Initializing speech engine...
[2026-10-25 17:44:04,404.404 INFO    ] 2026-10-25 17:44:04
[2026-10-25 17:44:04,656.656 INFO    ] 2026-10-25 17:44:04
[2026-10-25 17:44:04,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:44:04,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:44:04,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:44:05,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:44:05,027.027 INFO    ] time= 25/10/2026 17:44:05
[2026-10-25 17:44:05,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:44:05,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:44:05,114.114 INFO    ] No existing commands found in stream
[2026-10-25 17:44:10,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:44:10,128.128 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 17:44:14,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:44:14,119.119 INFO    ] Checking for system updates...
[2026-10-25 17:44:14,155.155 INFO    ] 200
[2026-10-25 17:44:14,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:14,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:14,220.220 INFO    ] No update needed
[2026-10-25 17:44:14,223.223 INFO    ] Checking for camera pi updates...
[2026-10-25 17:44:14,257.257 INFO    ] 200
[2026-10-25 17:44:14,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:14,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:44:14,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:14,353.353 INFO    ] No camera update needed
[2026-10-25 17:44:14,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:44:14,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:44:14,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:44:14,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:44:16,407.407 INFO    ] ================================================
[2026-10-25 17:44:16,422.422 INFO    ] Launching Daemon at Sun Oct 25 17:44:16 IST 2026
[2026-10-25 17:44:16,434.434 INFO    ] ================================================
[2026-10-25 17:44:17,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:44:16
[2026-10-25 17:44:17,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:44:17,861.861 INFO    ] Initializing speech engine...
[2026-10-25 17:44:17,869.869 INFO    ] 2026-10-25 17:44:17
[2026-10-25 17:44:18,132.132 INFO    ] 2026-10-25 17:44:18
[2026-10-25 17:44:18,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:44:18,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:44:18,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:44:18,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:44:18,538.538 INFO    ] time= 25/10/2026 17:44:18
[2026-10-25 17:44:18,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:44:18,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:44:18,618.618 INFO    ] No existing commands found in stream
[2026-10-25 17:44:23,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:44:23,633.633 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 17:44:27,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:44:27,483.483 INFO    ] Checking for system updates...
[2026-10-25 17:44:27,518.518 INFO    ] 200
[2026-10-25 17:44:27,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:27,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:27,576.576 INFO    ] No update needed
[2026-10-25 17:44:27,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 17:44:27,618.618 INFO    ] 200
[2026-10-25 17:44:27,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:27,661.661 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:44:27,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:44:27,825.825 INFO    ] No camera update needed
[2026-10-25 17:44:27,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:44:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:44:27,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:44:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:44:29,880.880 INFO    ] ================================================
[2026-10-25 17:44:29,895.895 INFO    ] Launching Daemon at Sun Oct 25 17:44:29 IST 2026
[2026-10-25 17:44:29,905.905 INFO    ] ================================================
[2026-10-25 17:44:30,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:44:30
[2026-10-25 17:44:31,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:44:31,343.343 INFO    ] Initializing speech engine...
[2026-10-25 17:44:31,356.356 INFO    ] 2026-10-25 17:44:31
[2026-10-25 17:44:31,618.618 INFO    ] 2026-10-25 17:44:31
[2026-10-25 17:44:31,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:44:31,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:44:31,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:44:32,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:44:32,023.023 INFO    ] time= 25/10/2026 17:44:32
[2026-10-25 17:44:32,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:44:32,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:44:32,208.208 INFO    ] No existing commands found in stream
[2026-10-25 17:44:37,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:44:37,236.236 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 17:44:38,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:44:38,241.241 INFO    ] Checking for system updates...
[2026-10-25 17:44:38,277.277 INFO    ] 200
[2026-10-25 17:44:38,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:38,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:44:38,340.340 INFO    ] No update needed
[2026-10-25 17:44:38,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 17:44:38,379.379 INFO    ] 200
[2026-10-25 17:44:38,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:38,426.426 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:44:38,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:44:38,552.552 INFO    ] No camera update needed
[2026-10-25 17:44:38,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:44:38,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:44:38,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:44:38,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:44:40,606.606 INFO    ] ================================================
[2026-10-25 17:44:40,621.621 INFO    ] Launching Daemon at Sun Oct 25 17:44:40 IST 2026
[2026-10-25 17:44:40,632.632 INFO    ] ================================================
[2026-10-25 17:44:41,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:44:41
[2026-10-25 17:44:41,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:44:42,028.028 INFO    ] Initializing speech engine...
[2026-10-25 17:44:42,037.037 INFO    ] 2026-10-25 17:44:42
[2026-10-25 17:44:42,307.307 INFO    ] 2026-10-25 17:44:42
[2026-10-25 17:44:42,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:44:44,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:44:44,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:44:45,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:44:45,308.308 INFO    ] time= 25/10/2026 17:44:45
[2026-10-25 17:44:45,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:44:45,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:44:45,363.363 INFO    ] No existing commands found in stream
[2026-10-25 17:44:50,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:44:50,375.375 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 17:44:54,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:44:54,727.727 INFO    ] Checking for system updates...
[2026-10-25 17:44:54,763.763 INFO    ] 200
[2026-10-25 17:44:54,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:54,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:44:54,820.820 INFO    ] No update needed
[2026-10-25 17:44:54,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 17:44:54,856.856 INFO    ] 200
[2026-10-25 17:44:54,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:44:54,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:44:54,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:44:54,962.962 INFO    ] No camera update needed
[2026-10-25 17:44:54,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:44:54,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:44:54,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:44:54,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:44:57,017.017 INFO    ] ================================================
[2026-10-25 17:44:57,033.033 INFO    ] Launching Daemon at Sun Oct 25 17:44:57 IST 2026
[2026-10-25 17:44:57,044.044 INFO    ] ================================================
[2026-10-25 17:44:57,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:44:57
[2026-10-25 17:44:58,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:44:58,459.459 INFO    ] Initializing speech engine...
[2026-10-25 17:44:58,465.465 INFO    ] 2026-10-25 17:44:58
[2026-10-25 17:44:58,708.708 INFO    ] 2026-10-25 17:44:58
[2026-10-25 17:44:58,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:44:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:44:59,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:44:59,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:44:59,212.212 INFO    ] time= 25/10/2026 17:44:59
[2026-10-25 17:44:59,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:44:59,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:44:59,348.348 INFO    ] No existing commands found in stream
[2026-10-25 17:45:04,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:45:04,383.383 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 17:45:08,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:45:08,486.486 INFO    ] Checking for system updates...
[2026-10-25 17:45:08,524.524 INFO    ] 200
[2026-10-25 17:45:08,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:08,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:45:08,583.583 INFO    ] No update needed
[2026-10-25 17:45:08,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 17:45:08,627.627 INFO    ] 200
[2026-10-25 17:45:08,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:08,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:45:08,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:45:08,724.724 INFO    ] No camera update needed
[2026-10-25 17:45:08,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:45:08,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:45:08,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:45:08,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:45:10,782.782 INFO    ] ================================================
[2026-10-25 17:45:10,798.798 INFO    ] Launching Daemon at Sun Oct 25 17:45:10 IST 2026
[2026-10-25 17:45:10,809.809 INFO    ] ================================================
[2026-10-25 17:45:11,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:45:11
[2026-10-25 17:45:11,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:45:12,263.263 INFO    ] Initializing speech engine...
[2026-10-25 17:45:12,274.274 INFO    ] 2026-10-25 17:45:12
[2026-10-25 17:45:12,524.524 INFO    ] 2026-10-25 17:45:12
[2026-10-25 17:45:12,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:45:15,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:45:15,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:45:16,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:45:16,267.267 INFO    ] time= 25/10/2026 17:45:16
[2026-10-25 17:45:16,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:45:16,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:45:16,315.315 INFO    ] No existing commands found in stream
[2026-10-25 17:45:21,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:45:21,326.326 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 17:45:22,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:45:22,435.435 INFO    ] Checking for system updates...
[2026-10-25 17:45:22,476.476 INFO    ] 200
[2026-10-25 17:45:22,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:22,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:45:22,543.543 INFO    ] No update needed
[2026-10-25 17:45:22,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 17:45:22,579.579 INFO    ] 200
[2026-10-25 17:45:22,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:22,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:45:22,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:45:22,680.680 INFO    ] No camera update needed
[2026-10-25 17:45:22,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:45:22,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:45:22,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:45:22,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:45:24,738.738 INFO    ] ================================================
[2026-10-25 17:45:24,754.754 INFO    ] Launching Daemon at Sun Oct 25 17:45:24 IST 2026
[2026-10-25 17:45:24,764.764 INFO    ] ================================================
[2026-10-25 17:45:25,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:45:25
[2026-10-25 17:45:25,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:45:26,168.168 INFO    ] Initializing speech engine...
[2026-10-25 17:45:26,177.177 INFO    ] 2026-10-25 17:45:26
[2026-10-25 17:45:26,467.467 INFO    ] 2026-10-25 17:45:26
[2026-10-25 17:45:26,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:45:26,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:45:26,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:45:26,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:45:26,821.821 INFO    ] time= 25/10/2026 17:45:26
[2026-10-25 17:45:26,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:45:26,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:45:26,938.938 INFO    ] No existing commands found in stream
[2026-10-25 17:45:31,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:45:31,953.953 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 17:45:35,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:45:35,790.790 INFO    ] Checking for system updates...
[2026-10-25 17:45:35,827.827 INFO    ] 200
[2026-10-25 17:45:35,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:35,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:45:35,891.891 INFO    ] No update needed
[2026-10-25 17:45:35,893.893 INFO    ] Checking for camera pi updates...
[2026-10-25 17:45:35,928.928 INFO    ] 200
[2026-10-25 17:45:35,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:35,975.975 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:45:36,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:45:36,040.040 INFO    ] No camera update needed
[2026-10-25 17:45:36,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:45:36,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:45:36,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:45:36,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:45:38,095.095 INFO    ] ================================================
[2026-10-25 17:45:38,111.111 INFO    ] Launching Daemon at Sun Oct 25 17:45:38 IST 2026
[2026-10-25 17:45:38,122.122 INFO    ] ================================================
[2026-10-25 17:45:38,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:45:38
[2026-10-25 17:45:39,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:45:39,523.523 INFO    ] Initializing speech engine...
[2026-10-25 17:45:39,532.532 INFO    ] 2026-10-25 17:45:39
[2026-10-25 17:45:39,821.821 INFO    ] 2026-10-25 17:45:39
[2026-10-25 17:45:39,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:45:40,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:45:40,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:45:40,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:45:40,235.235 INFO    ] time= 25/10/2026 17:45:40
[2026-10-25 17:45:40,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:45:40,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:45:40,391.391 INFO    ] No existing commands found in stream
[2026-10-25 17:45:45,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:45:45,415.415 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 17:45:48,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:45:48,921.921 INFO    ] Checking for system updates...
[2026-10-25 17:45:48,961.961 INFO    ] 200
[2026-10-25 17:45:48,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:49,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:45:49,029.029 INFO    ] No update needed
[2026-10-25 17:45:49,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 17:45:49,065.065 INFO    ] 200
[2026-10-25 17:45:49,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:45:49,109.109 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:45:49,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:45:49,161.161 INFO    ] No camera update needed
[2026-10-25 17:45:49,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:45:49,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:45:49,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:45:49,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:45:51,215.215 INFO    ] ================================================
[2026-10-25 17:45:51,231.231 INFO    ] Launching Daemon at Sun Oct 25 17:45:51 IST 2026
[2026-10-25 17:45:51,243.243 INFO    ] ================================================
[2026-10-25 17:45:51,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:45:51
[2026-10-25 17:45:52,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:45:52,657.657 INFO    ] Initializing speech engine...
[2026-10-25 17:45:52,666.666 INFO    ] 2026-10-25 17:45:52
[2026-10-25 17:45:52,910.910 INFO    ] 2026-10-25 17:45:52
[2026-10-25 17:45:52,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:45:53,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:45:53,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:45:53,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:45:53,279.279 INFO    ] time= 25/10/2026 17:45:53
[2026-10-25 17:45:53,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:45:53,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:45:53,435.435 INFO    ] No existing commands found in stream
[2026-10-25 17:45:58,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:45:58,468.468 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 17:46:00,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:46:00,626.626 INFO    ] Checking for system updates...
[2026-10-25 17:46:00,662.662 INFO    ] 200
[2026-10-25 17:46:00,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:00,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:46:00,729.729 INFO    ] No update needed
[2026-10-25 17:46:00,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 17:46:00,770.770 INFO    ] 200
[2026-10-25 17:46:00,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:00,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:46:00,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:46:00,862.862 INFO    ] No camera update needed
[2026-10-25 17:46:00,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:46:00,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:46:00,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:46:00,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:46:02,922.922 INFO    ] ================================================
[2026-10-25 17:46:02,938.938 INFO    ] Launching Daemon at Sun Oct 25 17:46:02 IST 2026
[2026-10-25 17:46:02,953.953 INFO    ] ================================================
[2026-10-25 17:46:03,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:46:03
[2026-10-25 17:46:04,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:46:04,391.391 INFO    ] Initializing speech engine...
[2026-10-25 17:46:04,414.414 INFO    ] 2026-10-25 17:46:04
[2026-10-25 17:46:04,668.668 INFO    ] 2026-10-25 17:46:04
[2026-10-25 17:46:04,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:46:04,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:46:04,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:46:05,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:46:05,122.122 INFO    ] time= 25/10/2026 17:46:05
[2026-10-25 17:46:05,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:46:05,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:46:05,295.295 INFO    ] No existing commands found in stream
[2026-10-25 17:46:10,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:46:10,310.310 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 17:46:12,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:46:12,979.979 INFO    ] Checking for system updates...
[2026-10-25 17:46:13,018.018 INFO    ] 200
[2026-10-25 17:46:13,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:13,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:13,076.076 INFO    ] No update needed
[2026-10-25 17:46:13,078.078 INFO    ] Checking for camera pi updates...
[2026-10-25 17:46:13,116.116 INFO    ] 200
[2026-10-25 17:46:13,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:13,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:46:13,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:13,219.219 INFO    ] No camera update needed
[2026-10-25 17:46:13,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:46:13,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:46:13,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:46:13,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:46:15,275.275 INFO    ] ================================================
[2026-10-25 17:46:15,291.291 INFO    ] Launching Daemon at Sun Oct 25 17:46:15 IST 2026
[2026-10-25 17:46:15,302.302 INFO    ] ================================================
[2026-10-25 17:46:15,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:46:15
[2026-10-25 17:46:16,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:46:16,708.708 INFO    ] Initializing speech engine...
[2026-10-25 17:46:16,727.727 INFO    ] 2026-10-25 17:46:16
[2026-10-25 17:46:16,976.976 INFO    ] 2026-10-25 17:46:16
[2026-10-25 17:46:17,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:46:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:46:18,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:46:19,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:46:19,100.100 INFO    ] time= 25/10/2026 17:46:19
[2026-10-25 17:46:19,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:46:19,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:46:19,199.199 INFO    ] No existing commands found in stream
[2026-10-25 17:46:24,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:46:24,215.215 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 17:46:27,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:46:27,850.850 INFO    ] Checking for system updates...
[2026-10-25 17:46:27,886.886 INFO    ] 200
[2026-10-25 17:46:27,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:27,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:27,948.948 INFO    ] No update needed
[2026-10-25 17:46:27,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 17:46:27,985.985 INFO    ] 200
[2026-10-25 17:46:27,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:28,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:46:28,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:28,083.083 INFO    ] No camera update needed
[2026-10-25 17:46:28,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:46:28,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:46:28,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:46:28,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:46:30,140.140 INFO    ] ================================================
[2026-10-25 17:46:30,157.157 INFO    ] Launching Daemon at Sun Oct 25 17:46:30 IST 2026
[2026-10-25 17:46:30,168.168 INFO    ] ================================================
[2026-10-25 17:46:30,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:46:30
[2026-10-25 17:46:31,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:46:31,752.752 INFO    ] Initializing speech engine...
[2026-10-25 17:46:31,770.770 INFO    ] 2026-10-25 17:46:31
[2026-10-25 17:46:32,051.051 INFO    ] 2026-10-25 17:46:32
[2026-10-25 17:46:32,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:46:32,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:46:32,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:46:32,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:46:32,449.449 INFO    ] time= 25/10/2026 17:46:32
[2026-10-25 17:46:32,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:46:32,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:46:32,578.578 INFO    ] No existing commands found in stream
[2026-10-25 17:46:37,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:46:37,594.594 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 17:46:38,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:46:38,861.861 INFO    ] Checking for system updates...
[2026-10-25 17:46:38,898.898 INFO    ] 200
[2026-10-25 17:46:38,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:38,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:46:38,958.958 INFO    ] No update needed
[2026-10-25 17:46:38,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 17:46:39,000.000 INFO    ] 200
[2026-10-25 17:46:39,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:39,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:46:39,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:46:39,099.099 INFO    ] No camera update needed
[2026-10-25 17:46:39,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:46:39,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:46:39,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:46:39,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:46:41,158.158 INFO    ] ================================================
[2026-10-25 17:46:41,173.173 INFO    ] Launching Daemon at Sun Oct 25 17:46:41 IST 2026
[2026-10-25 17:46:41,184.184 INFO    ] ================================================
[2026-10-25 17:46:41,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:46:41
[2026-10-25 17:46:42,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:46:42,618.618 INFO    ] Initializing speech engine...
[2026-10-25 17:46:42,644.644 INFO    ] 2026-10-25 17:46:42
[2026-10-25 17:46:42,896.896 INFO    ] 2026-10-25 17:46:42
[2026-10-25 17:46:42,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:46:43,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:46:43,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:46:43,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:46:43,367.367 INFO    ] time= 25/10/2026 17:46:43
[2026-10-25 17:46:43,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:46:43,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:46:43,517.517 INFO    ] No existing commands found in stream
[2026-10-25 17:46:48,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:46:48,533.533 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 17:46:52,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:46:52,284.284 INFO    ] Checking for system updates...
[2026-10-25 17:46:52,321.321 INFO    ] 200
[2026-10-25 17:46:52,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:52,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:52,378.378 INFO    ] No update needed
[2026-10-25 17:46:52,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 17:46:52,418.418 INFO    ] 200
[2026-10-25 17:46:52,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:46:52,468.468 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:46:52,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:46:52,520.520 INFO    ] No camera update needed
[2026-10-25 17:46:52,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:46:52,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:46:52,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:46:52,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:46:54,576.576 INFO    ] ================================================
[2026-10-25 17:46:54,591.591 INFO    ] Launching Daemon at Sun Oct 25 17:46:54 IST 2026
[2026-10-25 17:46:54,602.602 INFO    ] ================================================
[2026-10-25 17:46:55,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:46:55
[2026-10-25 17:46:55,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:46:56,018.018 INFO    ] Initializing speech engine...
[2026-10-25 17:46:56,031.031 INFO    ] 2026-10-25 17:46:56
[2026-10-25 17:46:56,316.316 INFO    ] 2026-10-25 17:46:56
[2026-10-25 17:46:56,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:46:56,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:46:56,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:46:56,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:46:56,715.715 INFO    ] time= 25/10/2026 17:46:56
[2026-10-25 17:46:56,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:46:56,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:46:56,901.901 INFO    ] No existing commands found in stream
[2026-10-25 17:47:01,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:47:01,928.928 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 17:47:04,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:47:04,411.411 INFO    ] Checking for system updates...
[2026-10-25 17:47:04,453.453 INFO    ] 200
[2026-10-25 17:47:04,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:04,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:04,520.520 INFO    ] No update needed
[2026-10-25 17:47:04,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 17:47:04,562.562 INFO    ] 200
[2026-10-25 17:47:04,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:04,612.612 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:47:04,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:04,672.672 INFO    ] No camera update needed
[2026-10-25 17:47:04,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:47:04,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:47:04,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:47:04,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:47:06,731.731 INFO    ] ================================================
[2026-10-25 17:47:06,746.746 INFO    ] Launching Daemon at Sun Oct 25 17:47:06 IST 2026
[2026-10-25 17:47:06,757.757 INFO    ] ================================================
[2026-10-25 17:47:07,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:47:07
[2026-10-25 17:47:08,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:47:08,398.398 INFO    ] Initializing speech engine...
[2026-10-25 17:47:08,406.406 INFO    ] 2026-10-25 17:47:08
[2026-10-25 17:47:08,663.663 INFO    ] 2026-10-25 17:47:08
[2026-10-25 17:47:08,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:47:08,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:47:08,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:47:09,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:47:09,144.144 INFO    ] time= 25/10/2026 17:47:09
[2026-10-25 17:47:09,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:47:09,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:47:09,289.289 INFO    ] No existing commands found in stream
[2026-10-25 17:47:14,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:47:14,312.312 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 17:47:21,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:47:21,024.024 INFO    ] Checking for system updates...
[2026-10-25 17:47:21,067.067 INFO    ] 200
[2026-10-25 17:47:21,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:21,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:21,165.165 INFO    ] No update needed
[2026-10-25 17:47:21,168.168 INFO    ] Checking for camera pi updates...
[2026-10-25 17:47:21,206.206 INFO    ] 200
[2026-10-25 17:47:21,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:21,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:47:21,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:21,309.309 INFO    ] No camera update needed
[2026-10-25 17:47:21,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:47:21,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:47:21,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:47:21,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:47:23,375.375 INFO    ] ================================================
[2026-10-25 17:47:23,391.391 INFO    ] Launching Daemon at Sun Oct 25 17:47:23 IST 2026
[2026-10-25 17:47:23,402.402 INFO    ] ================================================
[2026-10-25 17:47:24,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:47:24
[2026-10-25 17:47:24,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:47:25,030.030 INFO    ] Initializing speech engine...
[2026-10-25 17:47:25,044.044 INFO    ] 2026-10-25 17:47:25
[2026-10-25 17:47:25,329.329 INFO    ] 2026-10-25 17:47:25
[2026-10-25 17:47:25,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:47:25,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:47:25,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:47:25,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:47:25,861.861 INFO    ] time= 25/10/2026 17:47:25
[2026-10-25 17:47:25,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:47:25,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:47:26,014.014 INFO    ] No existing commands found in stream
[2026-10-25 17:47:31,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:47:31,039.039 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 17:47:34,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:47:34,106.106 INFO    ] Checking for system updates...
[2026-10-25 17:47:34,147.147 INFO    ] 200
[2026-10-25 17:47:34,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:34,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:47:34,215.215 INFO    ] No update needed
[2026-10-25 17:47:34,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 17:47:34,253.253 INFO    ] 200
[2026-10-25 17:47:34,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:34,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:47:34,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:47:34,369.369 INFO    ] No camera update needed
[2026-10-25 17:47:34,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:47:34,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:47:34,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:47:34,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:47:36,428.428 INFO    ] ================================================
[2026-10-25 17:47:36,443.443 INFO    ] Launching Daemon at Sun Oct 25 17:47:36 IST 2026
[2026-10-25 17:47:36,454.454 INFO    ] ================================================
[2026-10-25 17:47:37,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:47:37
[2026-10-25 17:47:37,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:47:37,917.917 INFO    ] Initializing speech engine...
[2026-10-25 17:47:37,926.926 INFO    ] 2026-10-25 17:47:37
[2026-10-25 17:47:38,194.194 INFO    ] 2026-10-25 17:47:38
[2026-10-25 17:47:38,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:47:38,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:47:38,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:47:38,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:47:38,692.692 INFO    ] time= 25/10/2026 17:47:38
[2026-10-25 17:47:38,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:47:38,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:47:38,844.844 INFO    ] No existing commands found in stream
[2026-10-25 17:47:43,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:47:43,861.861 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 17:47:45,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:47:45,608.608 INFO    ] Checking for system updates...
[2026-10-25 17:47:45,645.645 INFO    ] 200
[2026-10-25 17:47:45,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:45,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:45,704.704 INFO    ] No update needed
[2026-10-25 17:47:45,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 17:47:45,743.743 INFO    ] 200
[2026-10-25 17:47:45,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:45,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:47:45,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:47:45,839.839 INFO    ] No camera update needed
[2026-10-25 17:47:45,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:47:45,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:47:45,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:47:45,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:47:47,899.899 INFO    ] ================================================
[2026-10-25 17:47:47,914.914 INFO    ] Launching Daemon at Sun Oct 25 17:47:47 IST 2026
[2026-10-25 17:47:47,924.924 INFO    ] ================================================
[2026-10-25 17:47:48,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:47:48
[2026-10-25 17:47:49,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:47:49,528.528 INFO    ] Initializing speech engine...
[2026-10-25 17:47:49,538.538 INFO    ] 2026-10-25 17:47:49
[2026-10-25 17:47:49,800.800 INFO    ] 2026-10-25 17:47:49
[2026-10-25 17:47:49,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:47:52,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:47:52,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:47:53,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:47:53,033.033 INFO    ] time= 25/10/2026 17:47:53
[2026-10-25 17:47:53,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:47:53,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:47:53,091.091 INFO    ] No existing commands found in stream
[2026-10-25 17:47:58,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:47:58,104.104 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 17:47:58,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:47:58,901.901 INFO    ] Checking for system updates...
[2026-10-25 17:47:58,938.938 INFO    ] 200
[2026-10-25 17:47:58,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:58,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:47:58,998.998 INFO    ] No update needed
[2026-10-25 17:47:59,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 17:47:59,035.035 INFO    ] 200
[2026-10-25 17:47:59,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:47:59,084.084 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:47:59,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:47:59,149.149 INFO    ] No camera update needed
[2026-10-25 17:47:59,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:47:59,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:47:59,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:47:59,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:48:01,208.208 INFO    ] ================================================
[2026-10-25 17:48:01,223.223 INFO    ] Launching Daemon at Sun Oct 25 17:48:01 IST 2026
[2026-10-25 17:48:01,234.234 INFO    ] ================================================
[2026-10-25 17:48:02,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:48:02
[2026-10-25 17:48:02,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:48:03,128.128 INFO    ] Initializing speech engine...
[2026-10-25 17:48:03,134.134 INFO    ] 2026-10-25 17:48:03
[2026-10-25 17:48:03,432.432 INFO    ] 2026-10-25 17:48:03
[2026-10-25 17:48:03,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:48:03,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:48:03,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:48:03,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:48:03,811.811 INFO    ] time= 25/10/2026 17:48:03
[2026-10-25 17:48:03,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:48:03,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:48:03,966.966 INFO    ] No existing commands found in stream
[2026-10-25 17:48:08,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:48:08,994.994 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 17:48:10,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:48:10,659.659 INFO    ] Checking for system updates...
[2026-10-25 17:48:10,695.695 INFO    ] 200
[2026-10-25 17:48:10,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:10,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:10,753.753 INFO    ] No update needed
[2026-10-25 17:48:10,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 17:48:10,789.789 INFO    ] 200
[2026-10-25 17:48:10,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:10,833.833 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:48:10,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:10,889.889 INFO    ] No camera update needed
[2026-10-25 17:48:10,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:48:10,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:48:10,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:48:10,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:48:12,944.944 INFO    ] ================================================
[2026-10-25 17:48:12,958.958 INFO    ] Launching Daemon at Sun Oct 25 17:48:12 IST 2026
[2026-10-25 17:48:12,969.969 INFO    ] ================================================
[2026-10-25 17:48:13,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:48:13
[2026-10-25 17:48:14,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:48:14,565.565 INFO    ] Initializing speech engine...
[2026-10-25 17:48:14,576.576 INFO    ] 2026-10-25 17:48:14
[2026-10-25 17:48:14,852.852 INFO    ] 2026-10-25 17:48:14
[2026-10-25 17:48:14,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:48:15,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:48:15,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:48:15,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:48:15,389.389 INFO    ] time= 25/10/2026 17:48:15
[2026-10-25 17:48:15,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:48:15,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:48:15,543.543 INFO    ] No existing commands found in stream
[2026-10-25 17:48:20,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:48:20,563.563 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 17:48:24,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:48:24,309.309 INFO    ] Checking for system updates...
[2026-10-25 17:48:24,347.347 INFO    ] 200
[2026-10-25 17:48:24,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:24,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:48:24,407.407 INFO    ] No update needed
[2026-10-25 17:48:24,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 17:48:24,444.444 INFO    ] 200
[2026-10-25 17:48:24,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:24,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:48:24,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:48:24,555.555 INFO    ] No camera update needed
[2026-10-25 17:48:24,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:48:24,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:48:24,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:48:24,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:48:26,610.610 INFO    ] ================================================
[2026-10-25 17:48:26,625.625 INFO    ] Launching Daemon at Sun Oct 25 17:48:26 IST 2026
[2026-10-25 17:48:26,636.636 INFO    ] ================================================
[2026-10-25 17:48:27,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:48:27
[2026-10-25 17:48:27,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:48:28,239.239 INFO    ] Initializing speech engine...
[2026-10-25 17:48:28,253.253 INFO    ] 2026-10-25 17:48:28
[2026-10-25 17:48:28,558.558 INFO    ] 2026-10-25 17:48:28
[2026-10-25 17:48:28,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:48:28,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:48:28,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:48:29,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:48:29,062.062 INFO    ] time= 25/10/2026 17:48:29
[2026-10-25 17:48:29,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:48:29,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:48:29,203.203 INFO    ] No existing commands found in stream
[2026-10-25 17:48:34,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:48:34,229.229 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 17:48:35,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:48:35,419.419 INFO    ] Checking for system updates...
[2026-10-25 17:48:35,457.457 INFO    ] 200
[2026-10-25 17:48:35,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:35,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:35,523.523 INFO    ] No update needed
[2026-10-25 17:48:35,525.525 INFO    ] Checking for camera pi updates...
[2026-10-25 17:48:35,559.559 INFO    ] 200
[2026-10-25 17:48:35,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:35,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:48:35,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:35,759.759 INFO    ] No camera update needed
[2026-10-25 17:48:35,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:48:35,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:48:35,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:48:35,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:48:37,815.815 INFO    ] ================================================
[2026-10-25 17:48:37,830.830 INFO    ] Launching Daemon at Sun Oct 25 17:48:37 IST 2026
[2026-10-25 17:48:37,841.841 INFO    ] ================================================
[2026-10-25 17:48:38,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:48:38
[2026-10-25 17:48:38,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:48:39,264.264 INFO    ] Initializing speech engine...
[2026-10-25 17:48:39,280.280 INFO    ] 2026-10-25 17:48:39
[2026-10-25 17:48:39,564.564 INFO    ] 2026-10-25 17:48:39
[2026-10-25 17:48:39,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:48:39,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:48:39,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:48:39,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:48:39,959.959 INFO    ] time= 25/10/2026 17:48:39
[2026-10-25 17:48:39,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:48:40,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:48:40,107.107 INFO    ] No existing commands found in stream
[2026-10-25 17:48:45,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:48:45,140.140 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 17:48:45,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:48:45,870.870 INFO    ] Checking for system updates...
[2026-10-25 17:48:45,907.907 INFO    ] 200
[2026-10-25 17:48:45,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:45,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:48:45,965.965 INFO    ] No update needed
[2026-10-25 17:48:45,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 17:48:46,002.002 INFO    ] 200
[2026-10-25 17:48:46,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:46,045.045 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:48:46,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:48:46,100.100 INFO    ] No camera update needed
[2026-10-25 17:48:46,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:48:46,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:48:46,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:48:46,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:48:48,155.155 INFO    ] ================================================
[2026-10-25 17:48:48,170.170 INFO    ] Launching Daemon at Sun Oct 25 17:48:48 IST 2026
[2026-10-25 17:48:48,181.181 INFO    ] ================================================
[2026-10-25 17:48:48,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:48:48
[2026-10-25 17:48:49,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:48:49,631.631 INFO    ] Initializing speech engine...
[2026-10-25 17:48:49,645.645 INFO    ] 2026-10-25 17:48:49
[2026-10-25 17:48:49,929.929 INFO    ] 2026-10-25 17:48:49
[2026-10-25 17:48:49,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:48:50,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:48:50,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:48:50,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:48:50,731.731 INFO    ] time= 25/10/2026 17:48:50
[2026-10-25 17:48:50,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:48:50,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:48:50,932.932 INFO    ] No existing commands found in stream
[2026-10-25 17:48:55,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:48:55,960.960 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 17:48:57,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:48:57,924.924 INFO    ] Checking for system updates...
[2026-10-25 17:48:57,959.959 INFO    ] 200
[2026-10-25 17:48:57,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:58,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:58,018.018 INFO    ] No update needed
[2026-10-25 17:48:58,020.020 INFO    ] Checking for camera pi updates...
[2026-10-25 17:48:58,057.057 INFO    ] 200
[2026-10-25 17:48:58,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:48:58,100.100 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:48:58,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:48:58,153.153 INFO    ] No camera update needed
[2026-10-25 17:48:58,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:48:58,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:48:58,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:48:58,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:49:00,209.209 INFO    ] ================================================
[2026-10-25 17:49:00,224.224 INFO    ] Launching Daemon at Sun Oct 25 17:49:00 IST 2026
[2026-10-25 17:49:00,235.235 INFO    ] ================================================
[2026-10-25 17:49:00,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:49:00
[2026-10-25 17:49:01,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:49:01,908.908 INFO    ] Initializing speech engine...
[2026-10-25 17:49:01,913.913 INFO    ] 2026-10-25 17:49:01
[2026-10-25 17:49:02,267.267 INFO    ] 2026-10-25 17:49:02
[2026-10-25 17:49:02,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:49:02,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:49:02,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:49:02,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:49:02,738.738 INFO    ] time= 25/10/2026 17:49:02
[2026-10-25 17:49:02,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:49:02,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:49:02,889.889 INFO    ] No existing commands found in stream
[2026-10-25 17:49:07,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:49:07,926.926 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 17:49:10,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:49:10,869.869 INFO    ] Checking for system updates...
[2026-10-25 17:49:10,906.906 INFO    ] 200
[2026-10-25 17:49:10,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:10,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:10,971.971 INFO    ] No update needed
[2026-10-25 17:49:10,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 17:49:11,010.010 INFO    ] 200
[2026-10-25 17:49:11,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:11,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:49:11,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:11,117.117 INFO    ] No camera update needed
[2026-10-25 17:49:11,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:49:11,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:49:11,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:49:11,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:49:13,175.175 INFO    ] ================================================
[2026-10-25 17:49:13,190.190 INFO    ] Launching Daemon at Sun Oct 25 17:49:13 IST 2026
[2026-10-25 17:49:13,201.201 INFO    ] ================================================
[2026-10-25 17:49:13,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:49:13
[2026-10-25 17:49:14,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:49:14,650.650 INFO    ] Initializing speech engine...
[2026-10-25 17:49:14,659.659 INFO    ] 2026-10-25 17:49:14
[2026-10-25 17:49:14,921.921 INFO    ] 2026-10-25 17:49:14
[2026-10-25 17:49:14,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:49:15,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:49:15,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:49:15,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:49:15,394.394 INFO    ] time= 25/10/2026 17:49:15
[2026-10-25 17:49:15,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:49:15,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:49:15,549.549 INFO    ] No existing commands found in stream
[2026-10-25 17:49:20,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:49:20,566.566 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 17:49:26,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:49:26,394.394 INFO    ] Checking for system updates...
[2026-10-25 17:49:26,432.432 INFO    ] 200
[2026-10-25 17:49:26,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:26,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:26,491.491 INFO    ] No update needed
[2026-10-25 17:49:26,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 17:49:26,528.528 INFO    ] 200
[2026-10-25 17:49:26,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:26,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:49:26,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:26,641.641 INFO    ] No camera update needed
[2026-10-25 17:49:26,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:49:26,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:49:26,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:49:26,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:49:28,700.700 INFO    ] ================================================
[2026-10-25 17:49:28,715.715 INFO    ] Launching Daemon at Sun Oct 25 17:49:28 IST 2026
[2026-10-25 17:49:28,726.726 INFO    ] ================================================
[2026-10-25 17:49:29,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:49:29
[2026-10-25 17:49:29,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:49:30,217.217 INFO    ] Initializing speech engine...
[2026-10-25 17:49:30,225.225 INFO    ] 2026-10-25 17:49:30
[2026-10-25 17:49:30,476.476 INFO    ] 2026-10-25 17:49:30
[2026-10-25 17:49:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:49:30,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:49:30,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:49:30,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:49:30,816.816 INFO    ] time= 25/10/2026 17:49:30
[2026-10-25 17:49:30,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:49:30,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:49:30,931.931 INFO    ] No existing commands found in stream
[2026-10-25 17:49:35,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:49:35,947.947 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 17:49:39,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:49:39,912.912 INFO    ] Checking for system updates...
[2026-10-25 17:49:39,949.949 INFO    ] 200
[2026-10-25 17:49:39,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:40,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:40,016.016 INFO    ] No update needed
[2026-10-25 17:49:40,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 17:49:40,063.063 INFO    ] 200
[2026-10-25 17:49:40,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:40,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:49:40,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:49:40,166.166 INFO    ] No camera update needed
[2026-10-25 17:49:40,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:49:40,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:49:40,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:49:40,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:49:42,223.223 INFO    ] ================================================
[2026-10-25 17:49:42,239.239 INFO    ] Launching Daemon at Sun Oct 25 17:49:42 IST 2026
[2026-10-25 17:49:42,251.251 INFO    ] ================================================
[2026-10-25 17:49:42,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:49:42
[2026-10-25 17:49:43,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:49:43,741.741 INFO    ] Initializing speech engine...
[2026-10-25 17:49:43,746.746 INFO    ] 2026-10-25 17:49:43
[2026-10-25 17:49:44,006.006 INFO    ] 2026-10-25 17:49:44
[2026-10-25 17:49:44,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:49:44,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:49:44,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:49:44,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:49:44,441.441 INFO    ] time= 25/10/2026 17:49:44
[2026-10-25 17:49:44,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:49:44,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:49:44,614.614 INFO    ] No existing commands found in stream
[2026-10-25 17:49:49,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:49:49,629.629 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 17:49:50,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:49:50,899.899 INFO    ] Checking for system updates...
[2026-10-25 17:49:50,936.936 INFO    ] 200
[2026-10-25 17:49:50,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:50,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:49:50,995.995 INFO    ] No update needed
[2026-10-25 17:49:50,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 17:49:51,031.031 INFO    ] 200
[2026-10-25 17:49:51,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:49:51,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:49:51,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:49:51,141.141 INFO    ] No camera update needed
[2026-10-25 17:49:51,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:49:51,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:49:51,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:49:51,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:49:53,197.197 INFO    ] ================================================
[2026-10-25 17:49:53,213.213 INFO    ] Launching Daemon at Sun Oct 25 17:49:53 IST 2026
[2026-10-25 17:49:53,224.224 INFO    ] ================================================
[2026-10-25 17:49:53,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:49:53
[2026-10-25 17:49:54,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:49:54,624.624 INFO    ] Initializing speech engine...
[2026-10-25 17:49:54,639.639 INFO    ] 2026-10-25 17:49:54
[2026-10-25 17:49:54,909.909 INFO    ] 2026-10-25 17:49:54
[2026-10-25 17:49:54,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:49:57,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:49:57,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:49:57,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:49:57,752.752 INFO    ] time= 25/10/2026 17:49:57
[2026-10-25 17:49:57,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:49:57,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:49:57,809.809 INFO    ] No existing commands found in stream
[2026-10-25 17:50:02,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:50:02,823.823 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 17:50:08,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:50:08,055.055 INFO    ] Checking for system updates...
[2026-10-25 17:50:08,097.097 INFO    ] 200
[2026-10-25 17:50:08,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:08,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:50:08,165.165 INFO    ] No update needed
[2026-10-25 17:50:08,168.168 INFO    ] Checking for camera pi updates...
[2026-10-25 17:50:08,205.205 INFO    ] 200
[2026-10-25 17:50:08,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:08,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:50:08,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:50:08,312.312 INFO    ] No camera update needed
[2026-10-25 17:50:08,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:50:08,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:50:08,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:50:08,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:50:10,373.373 INFO    ] ================================================
[2026-10-25 17:50:10,389.389 INFO    ] Launching Daemon at Sun Oct 25 17:50:10 IST 2026
[2026-10-25 17:50:10,400.400 INFO    ] ================================================
[2026-10-25 17:50:10,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:50:10
[2026-10-25 17:50:11,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:50:11,820.820 INFO    ] Initializing speech engine...
[2026-10-25 17:50:11,829.829 INFO    ] 2026-10-25 17:50:11
[2026-10-25 17:50:12,077.077 INFO    ] 2026-10-25 17:50:12
[2026-10-25 17:50:12,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:50:12,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:50:12,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:50:12,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:50:12,556.556 INFO    ] time= 25/10/2026 17:50:12
[2026-10-25 17:50:12,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:50:12,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:50:12,705.705 INFO    ] No existing commands found in stream
[2026-10-25 17:50:17,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:50:17,719.719 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 17:50:21,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:50:21,513.513 INFO    ] Checking for system updates...
[2026-10-25 17:50:21,549.549 INFO    ] 200
[2026-10-25 17:50:21,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:21,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:21,608.608 INFO    ] No update needed
[2026-10-25 17:50:21,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 17:50:21,645.645 INFO    ] 200
[2026-10-25 17:50:21,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:21,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:50:21,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:21,751.751 INFO    ] No camera update needed
[2026-10-25 17:50:21,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:50:21,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:50:21,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:50:21,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:50:23,815.815 INFO    ] ================================================
[2026-10-25 17:50:23,832.832 INFO    ] Launching Daemon at Sun Oct 25 17:50:23 IST 2026
[2026-10-25 17:50:23,843.843 INFO    ] ================================================
[2026-10-25 17:50:24,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:50:24
[2026-10-25 17:50:25,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:50:25,300.300 INFO    ] Initializing speech engine...
[2026-10-25 17:50:25,309.309 INFO    ] 2026-10-25 17:50:25
[2026-10-25 17:50:25,570.570 INFO    ] 2026-10-25 17:50:25
[2026-10-25 17:50:25,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:50:28,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:50:28,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:50:29,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:50:29,069.069 INFO    ] time= 25/10/2026 17:50:29
[2026-10-25 17:50:29,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:50:29,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:50:29,124.124 INFO    ] No existing commands found in stream
[2026-10-25 17:50:34,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:50:34,135.135 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 17:50:35,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:50:35,099.099 INFO    ] Checking for system updates...
[2026-10-25 17:50:35,136.136 INFO    ] 200
[2026-10-25 17:50:35,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:35,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:35,194.194 INFO    ] No update needed
[2026-10-25 17:50:35,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 17:50:35,232.232 INFO    ] 200
[2026-10-25 17:50:35,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:35,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:50:35,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:35,345.345 INFO    ] No camera update needed
[2026-10-25 17:50:35,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:50:35,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:50:35,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:50:35,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:50:37,402.402 INFO    ] ================================================
[2026-10-25 17:50:37,418.418 INFO    ] Launching Daemon at Sun Oct 25 17:50:37 IST 2026
[2026-10-25 17:50:37,429.429 INFO    ] ================================================
[2026-10-25 17:50:38,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:50:38
[2026-10-25 17:50:38,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:50:39,006.006 INFO    ] Initializing speech engine...
[2026-10-25 17:50:39,017.017 INFO    ] 2026-10-25 17:50:39
[2026-10-25 17:50:39,289.289 INFO    ] 2026-10-25 17:50:39
[2026-10-25 17:50:39,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:50:39,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:50:39,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:50:39,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:50:39,821.821 INFO    ] time= 25/10/2026 17:50:39
[2026-10-25 17:50:39,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:50:39,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:50:39,956.956 INFO    ] No existing commands found in stream
[2026-10-25 17:50:44,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:50:44,986.986 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 17:50:48,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:50:48,149.149 INFO    ] Checking for system updates...
[2026-10-25 17:50:48,188.188 INFO    ] 200
[2026-10-25 17:50:48,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:48,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:48,253.253 INFO    ] No update needed
[2026-10-25 17:50:48,256.256 INFO    ] Checking for camera pi updates...
[2026-10-25 17:50:48,293.293 INFO    ] 200
[2026-10-25 17:50:48,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:50:48,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:50:48,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:50:48,505.505 INFO    ] No camera update needed
[2026-10-25 17:50:48,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:50:48,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:50:48,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:50:48,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:50:50,561.561 INFO    ] ================================================
[2026-10-25 17:50:50,577.577 INFO    ] Launching Daemon at Sun Oct 25 17:50:50 IST 2026
[2026-10-25 17:50:50,588.588 INFO    ] ================================================
[2026-10-25 17:50:51,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:50:51
[2026-10-25 17:50:51,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:50:52,144.144 INFO    ] Initializing speech engine...
[2026-10-25 17:50:52,152.152 INFO    ] 2026-10-25 17:50:52
[2026-10-25 17:50:52,434.434 INFO    ] 2026-10-25 17:50:52
[2026-10-25 17:50:52,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:50:52,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:50:52,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:50:52,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:50:52,905.905 INFO    ] time= 25/10/2026 17:50:52
[2026-10-25 17:50:52,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:50:52,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:50:53,049.049 INFO    ] No existing commands found in stream
[2026-10-25 17:50:58,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:50:58,088.088 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 17:51:00,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:51:00,429.429 INFO    ] Checking for system updates...
[2026-10-25 17:51:00,466.466 INFO    ] 200
[2026-10-25 17:51:00,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:00,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:00,525.525 INFO    ] No update needed
[2026-10-25 17:51:00,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 17:51:00,561.561 INFO    ] 200
[2026-10-25 17:51:00,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:00,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:51:00,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:00,651.651 INFO    ] No camera update needed
[2026-10-25 17:51:00,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:51:00,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:51:00,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:51:00,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:51:02,713.713 INFO    ] ================================================
[2026-10-25 17:51:02,741.741 INFO    ] Launching Daemon at Sun Oct 25 17:51:02 IST 2026
[2026-10-25 17:51:02,755.755 INFO    ] ================================================
[2026-10-25 17:51:03,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:51:03
[2026-10-25 17:51:04,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:51:04,528.528 INFO    ] Initializing speech engine...
[2026-10-25 17:51:04,540.540 INFO    ] 2026-10-25 17:51:04
[2026-10-25 17:51:04,818.818 INFO    ] 2026-10-25 17:51:04
[2026-10-25 17:51:04,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:51:05,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:51:05,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:51:05,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:51:05,286.286 INFO    ] time= 25/10/2026 17:51:05
[2026-10-25 17:51:05,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:51:05,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:51:05,435.435 INFO    ] No existing commands found in stream
[2026-10-25 17:51:10,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:51:10,450.450 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 17:51:14,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:51:14,659.659 INFO    ] Checking for system updates...
[2026-10-25 17:51:14,697.697 INFO    ] 200
[2026-10-25 17:51:14,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:14,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:14,765.765 INFO    ] No update needed
[2026-10-25 17:51:14,768.768 INFO    ] Checking for camera pi updates...
[2026-10-25 17:51:14,803.803 INFO    ] 200
[2026-10-25 17:51:14,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:14,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:51:14,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:14,904.904 INFO    ] No camera update needed
[2026-10-25 17:51:14,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:51:14,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:51:14,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:51:14,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:51:16,962.962 INFO    ] ================================================
[2026-10-25 17:51:16,977.977 INFO    ] Launching Daemon at Sun Oct 25 17:51:16 IST 2026
[2026-10-25 17:51:16,988.988 INFO    ] ================================================
[2026-10-25 17:51:17,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:51:17
[2026-10-25 17:51:18,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:51:18,456.456 INFO    ] Initializing speech engine...
[2026-10-25 17:51:18,466.466 INFO    ] 2026-10-25 17:51:18
[2026-10-25 17:51:18,720.720 INFO    ] 2026-10-25 17:51:18
[2026-10-25 17:51:18,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:51:19,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:51:19,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:51:19,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:51:19,191.191 INFO    ] time= 25/10/2026 17:51:19
[2026-10-25 17:51:19,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:51:19,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:51:19,331.331 INFO    ] No existing commands found in stream
[2026-10-25 17:51:24,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:51:24,345.345 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 17:51:31,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:51:31,181.181 INFO    ] Checking for system updates...
[2026-10-25 17:51:31,225.225 INFO    ] 200
[2026-10-25 17:51:31,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:31,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:31,291.291 INFO    ] No update needed
[2026-10-25 17:51:31,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 17:51:31,328.328 INFO    ] 200
[2026-10-25 17:51:31,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:31,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:51:31,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:31,432.432 INFO    ] No camera update needed
[2026-10-25 17:51:31,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:51:31,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:51:31,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:51:31,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:51:33,492.492 INFO    ] ================================================
[2026-10-25 17:51:33,508.508 INFO    ] Launching Daemon at Sun Oct 25 17:51:33 IST 2026
[2026-10-25 17:51:33,518.518 INFO    ] ================================================
[2026-10-25 17:51:34,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:51:34
[2026-10-25 17:51:34,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:51:35,110.110 INFO    ] Initializing speech engine...
[2026-10-25 17:51:35,125.125 INFO    ] 2026-10-25 17:51:35
[2026-10-25 17:51:35,432.432 INFO    ] 2026-10-25 17:51:35
[2026-10-25 17:51:35,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:51:35,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:51:35,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:51:35,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:51:35,922.922 INFO    ] time= 25/10/2026 17:51:35
[2026-10-25 17:51:35,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:51:35,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:51:36,055.055 INFO    ] No existing commands found in stream
[2026-10-25 17:51:41,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:51:41,092.092 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 17:51:44,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:51:44,861.861 INFO    ] Checking for system updates...
[2026-10-25 17:51:44,897.897 INFO    ] 200
[2026-10-25 17:51:44,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:44,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:44,954.954 INFO    ] No update needed
[2026-10-25 17:51:44,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 17:51:44,996.996 INFO    ] 200
[2026-10-25 17:51:44,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:45,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:51:45,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:51:45,103.103 INFO    ] No camera update needed
[2026-10-25 17:51:45,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:51:45,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:51:45,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:51:45,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:51:47,159.159 INFO    ] ================================================
[2026-10-25 17:51:47,176.176 INFO    ] Launching Daemon at Sun Oct 25 17:51:47 IST 2026
[2026-10-25 17:51:47,187.187 INFO    ] ================================================
[2026-10-25 17:51:47,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:51:47
[2026-10-25 17:51:48,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:51:48,577.577 INFO    ] Initializing speech engine...
[2026-10-25 17:51:48,592.592 INFO    ] 2026-10-25 17:51:48
[2026-10-25 17:51:48,853.853 INFO    ] 2026-10-25 17:51:48
[2026-10-25 17:51:48,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:51:49,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:51:49,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:51:49,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:51:49,226.226 INFO    ] time= 25/10/2026 17:51:49
[2026-10-25 17:51:49,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:51:49,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:51:49,388.388 INFO    ] No existing commands found in stream
[2026-10-25 17:51:54,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:51:54,421.421 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 17:51:57,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:51:57,116.116 INFO    ] Checking for system updates...
[2026-10-25 17:51:57,153.153 INFO    ] 200
[2026-10-25 17:51:57,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:57,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:51:57,211.211 INFO    ] No update needed
[2026-10-25 17:51:57,214.214 INFO    ] Checking for camera pi updates...
[2026-10-25 17:51:57,251.251 INFO    ] 200
[2026-10-25 17:51:57,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:51:57,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:51:57,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:51:57,333.333 INFO    ] No camera update needed
[2026-10-25 17:51:57,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:51:57,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:51:57,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:51:57,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:51:59,390.390 INFO    ] ================================================
[2026-10-25 17:51:59,406.406 INFO    ] Launching Daemon at Sun Oct 25 17:51:59 IST 2026
[2026-10-25 17:51:59,422.422 INFO    ] ================================================
[2026-10-25 17:52:00,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:52:00
[2026-10-25 17:52:00,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:52:01,062.062 INFO    ] Initializing speech engine...
[2026-10-25 17:52:01,106.106 INFO    ] 2026-10-25 17:52:01
[2026-10-25 17:52:01,568.568 INFO    ] 2026-10-25 17:52:01
[2026-10-25 17:52:01,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:52:02,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:52:02,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:52:02,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:52:02,392.392 INFO    ] time= 25/10/2026 17:52:02
[2026-10-25 17:52:02,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:52:02,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:52:02,595.595 INFO    ] No existing commands found in stream
[2026-10-25 17:52:07,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:52:07,630.630 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 17:52:08,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:52:08,057.057 INFO    ] Checking for system updates...
[2026-10-25 17:52:08,094.094 INFO    ] 200
[2026-10-25 17:52:08,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:08,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:08,156.156 INFO    ] No update needed
[2026-10-25 17:52:08,159.159 INFO    ] Checking for camera pi updates...
[2026-10-25 17:52:08,193.193 INFO    ] 200
[2026-10-25 17:52:08,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:08,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:52:08,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:08,291.291 INFO    ] No camera update needed
[2026-10-25 17:52:08,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:52:08,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:52:08,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:52:08,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:52:10,345.345 INFO    ] ================================================
[2026-10-25 17:52:10,360.360 INFO    ] Launching Daemon at Sun Oct 25 17:52:10 IST 2026
[2026-10-25 17:52:10,371.371 INFO    ] ================================================
[2026-10-25 17:52:10,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:52:10
[2026-10-25 17:52:11,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:52:11,836.836 INFO    ] Initializing speech engine...
[2026-10-25 17:52:11,843.843 INFO    ] 2026-10-25 17:52:11
[2026-10-25 17:52:12,091.091 INFO    ] 2026-10-25 17:52:12
[2026-10-25 17:52:12,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:52:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:52:12,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:52:12,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:52:12,559.559 INFO    ] time= 25/10/2026 17:52:12
[2026-10-25 17:52:12,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:52:12,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:52:12,712.712 INFO    ] No existing commands found in stream
[2026-10-25 17:52:17,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:52:17,727.727 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 17:52:19,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:52:19,445.445 INFO    ] Checking for system updates...
[2026-10-25 17:52:19,483.483 INFO    ] 200
[2026-10-25 17:52:19,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:19,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:19,551.551 INFO    ] No update needed
[2026-10-25 17:52:19,554.554 INFO    ] Checking for camera pi updates...
[2026-10-25 17:52:19,588.588 INFO    ] 200
[2026-10-25 17:52:19,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:19,640.640 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:52:19,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:19,692.692 INFO    ] No camera update needed
[2026-10-25 17:52:19,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:52:19,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:52:19,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:52:19,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:52:21,749.749 INFO    ] ================================================
[2026-10-25 17:52:21,764.764 INFO    ] Launching Daemon at Sun Oct 25 17:52:21 IST 2026
[2026-10-25 17:52:21,775.775 INFO    ] ================================================
[2026-10-25 17:52:22,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:52:22
[2026-10-25 17:52:22,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:52:23,238.238 INFO    ] Initializing speech engine...
[2026-10-25 17:52:23,248.248 INFO    ] 2026-10-25 17:52:23
[2026-10-25 17:52:23,497.497 INFO    ] 2026-10-25 17:52:23
[2026-10-25 17:52:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:52:23,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:52:23,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:52:23,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:52:23,932.932 INFO    ] time= 25/10/2026 17:52:23
[2026-10-25 17:52:23,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:52:23,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:52:24,070.070 INFO    ] No existing commands found in stream
[2026-10-25 17:52:29,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:52:29,095.095 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 17:52:33,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:52:33,742.742 INFO    ] Checking for system updates...
[2026-10-25 17:52:33,779.779 INFO    ] 200
[2026-10-25 17:52:33,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:33,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:33,840.840 INFO    ] No update needed
[2026-10-25 17:52:33,842.842 INFO    ] Checking for camera pi updates...
[2026-10-25 17:52:33,877.877 INFO    ] 200
[2026-10-25 17:52:33,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:33,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:52:33,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:33,993.993 INFO    ] No camera update needed
[2026-10-25 17:52:33,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:52:33,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:52:34,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:52:34,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:52:36,050.050 INFO    ] ================================================
[2026-10-25 17:52:36,065.065 INFO    ] Launching Daemon at Sun Oct 25 17:52:36 IST 2026
[2026-10-25 17:52:36,076.076 INFO    ] ================================================
[2026-10-25 17:52:36,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:52:36
[2026-10-25 17:52:37,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:52:37,631.631 INFO    ] Initializing speech engine...
[2026-10-25 17:52:37,640.640 INFO    ] 2026-10-25 17:52:37
[2026-10-25 17:52:37,927.927 INFO    ] 2026-10-25 17:52:37
[2026-10-25 17:52:37,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:52:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:52:38,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:52:38,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:52:38,408.408 INFO    ] time= 25/10/2026 17:52:38
[2026-10-25 17:52:38,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:52:38,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:52:38,567.567 INFO    ] No existing commands found in stream
[2026-10-25 17:52:43,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:52:43,584.584 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 17:52:47,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:52:47,912.912 INFO    ] Checking for system updates...
[2026-10-25 17:52:47,949.949 INFO    ] 200
[2026-10-25 17:52:47,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:48,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:48,008.008 INFO    ] No update needed
[2026-10-25 17:52:48,011.011 INFO    ] Checking for camera pi updates...
[2026-10-25 17:52:48,047.047 INFO    ] 200
[2026-10-25 17:52:48,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:52:48,097.097 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:52:48,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:52:48,156.156 INFO    ] No camera update needed
[2026-10-25 17:52:48,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:52:48,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:52:48,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:52:48,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:52:50,211.211 INFO    ] ================================================
[2026-10-25 17:52:50,226.226 INFO    ] Launching Daemon at Sun Oct 25 17:52:50 IST 2026
[2026-10-25 17:52:50,237.237 INFO    ] ================================================
[2026-10-25 17:52:50,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:52:50
[2026-10-25 17:52:51,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:52:51,682.682 INFO    ] Initializing speech engine...
[2026-10-25 17:52:51,689.689 INFO    ] 2026-10-25 17:52:51
[2026-10-25 17:52:51,982.982 INFO    ] 2026-10-25 17:52:51
[2026-10-25 17:52:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:52:52,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:52:52,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:52:52,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:52:52,401.401 INFO    ] time= 25/10/2026 17:52:52
[2026-10-25 17:52:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:52:52,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:52:52,570.570 INFO    ] No existing commands found in stream
[2026-10-25 17:52:57,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:52:57,598.598 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 17:53:04,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:53:04,735.735 INFO    ] Checking for system updates...
[2026-10-25 17:53:04,777.777 INFO    ] 200
[2026-10-25 17:53:04,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:04,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:04,835.835 INFO    ] No update needed
[2026-10-25 17:53:04,837.837 INFO    ] Checking for camera pi updates...
[2026-10-25 17:53:04,875.875 INFO    ] 200
[2026-10-25 17:53:04,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:04,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:53:04,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:04,986.986 INFO    ] No camera update needed
[2026-10-25 17:53:04,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:53:04,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:53:04,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:53:05,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:53:07,043.043 INFO    ] ================================================
[2026-10-25 17:53:07,058.058 INFO    ] Launching Daemon at Sun Oct 25 17:53:07 IST 2026
[2026-10-25 17:53:07,068.068 INFO    ] ================================================
[2026-10-25 17:53:07,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:53:07
[2026-10-25 17:53:08,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:53:08,485.485 INFO    ] Initializing speech engine...
[2026-10-25 17:53:08,508.508 INFO    ] 2026-10-25 17:53:08
[2026-10-25 17:53:08,764.764 INFO    ] 2026-10-25 17:53:08
[2026-10-25 17:53:08,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:53:09,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:53:09,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:53:09,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:53:09,204.204 INFO    ] time= 25/10/2026 17:53:09
[2026-10-25 17:53:09,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:53:09,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:53:09,344.344 INFO    ] No existing commands found in stream
[2026-10-25 17:53:14,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:53:14,357.357 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 17:53:17,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:53:17,734.734 INFO    ] Checking for system updates...
[2026-10-25 17:53:17,770.770 INFO    ] 200
[2026-10-25 17:53:17,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:17,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:17,829.829 INFO    ] No update needed
[2026-10-25 17:53:17,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 17:53:17,866.866 INFO    ] 200
[2026-10-25 17:53:17,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:17,915.915 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:53:17,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:17,965.965 INFO    ] No camera update needed
[2026-10-25 17:53:17,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:53:17,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:53:17,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:53:17,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:53:20,021.021 INFO    ] ================================================
[2026-10-25 17:53:20,036.036 INFO    ] Launching Daemon at Sun Oct 25 17:53:20 IST 2026
[2026-10-25 17:53:20,047.047 INFO    ] ================================================
[2026-10-25 17:53:20,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:53:20
[2026-10-25 17:53:21,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:53:21,711.711 INFO    ] Initializing speech engine...
[2026-10-25 17:53:21,725.725 INFO    ] 2026-10-25 17:53:21
[2026-10-25 17:53:22,037.037 INFO    ] 2026-10-25 17:53:22
[2026-10-25 17:53:22,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:53:22,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:53:22,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:53:22,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:53:22,472.472 INFO    ] time= 25/10/2026 17:53:22
[2026-10-25 17:53:22,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:53:22,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:53:22,612.612 INFO    ] No existing commands found in stream
[2026-10-25 17:53:27,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:53:27,627.627 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 17:53:30,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:53:30,746.746 INFO    ] Checking for system updates...
[2026-10-25 17:53:30,783.783 INFO    ] 200
[2026-10-25 17:53:30,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:30,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:30,849.849 INFO    ] No update needed
[2026-10-25 17:53:30,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 17:53:30,885.885 INFO    ] 200
[2026-10-25 17:53:30,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:30,934.934 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:53:30,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:30,996.996 INFO    ] No camera update needed
[2026-10-25 17:53:30,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:53:31,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:53:31,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:53:31,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:53:33,052.052 INFO    ] ================================================
[2026-10-25 17:53:33,067.067 INFO    ] Launching Daemon at Sun Oct 25 17:53:33 IST 2026
[2026-10-25 17:53:33,078.078 INFO    ] ================================================
[2026-10-25 17:53:33,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:53:33
[2026-10-25 17:53:34,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:53:34,514.514 INFO    ] Initializing speech engine...
[2026-10-25 17:53:34,524.524 INFO    ] 2026-10-25 17:53:34
[2026-10-25 17:53:34,781.781 INFO    ] 2026-10-25 17:53:34
[2026-10-25 17:53:34,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:53:35,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:53:35,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:53:35,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:53:35,927.927 INFO    ] time= 25/10/2026 17:53:35
[2026-10-25 17:53:35,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:53:35,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:53:36,124.124 INFO    ] No existing commands found in stream
[2026-10-25 17:53:41,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:53:41,146.146 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 17:53:45,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:53:45,535.535 INFO    ] Checking for system updates...
[2026-10-25 17:53:45,572.572 INFO    ] 200
[2026-10-25 17:53:45,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:45,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:45,639.639 INFO    ] No update needed
[2026-10-25 17:53:45,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 17:53:45,680.680 INFO    ] 200
[2026-10-25 17:53:45,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:45,725.725 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:53:45,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:53:45,783.783 INFO    ] No camera update needed
[2026-10-25 17:53:45,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:53:45,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:53:45,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:53:45,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:53:47,842.842 INFO    ] ================================================
[2026-10-25 17:53:47,858.858 INFO    ] Launching Daemon at Sun Oct 25 17:53:47 IST 2026
[2026-10-25 17:53:47,870.870 INFO    ] ================================================
[2026-10-25 17:53:48,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:53:48
[2026-10-25 17:53:49,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:53:49,403.403 INFO    ] Initializing speech engine...
[2026-10-25 17:53:49,412.412 INFO    ] 2026-10-25 17:53:49
[2026-10-25 17:53:49,679.679 INFO    ] 2026-10-25 17:53:49
[2026-10-25 17:53:49,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:53:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:53:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:53:50,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:53:50,934.934 INFO    ] time= 25/10/2026 17:53:50
[2026-10-25 17:53:50,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:53:50,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:53:51,053.053 INFO    ] No existing commands found in stream
[2026-10-25 17:53:56,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:53:56,068.068 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 17:53:57,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:53:57,625.625 INFO    ] Checking for system updates...
[2026-10-25 17:53:57,661.661 INFO    ] 200
[2026-10-25 17:53:57,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:57,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:53:57,719.719 INFO    ] No update needed
[2026-10-25 17:53:57,722.722 INFO    ] Checking for camera pi updates...
[2026-10-25 17:53:57,756.756 INFO    ] 200
[2026-10-25 17:53:57,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:53:57,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:53:57,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:53:57,859.859 INFO    ] No camera update needed
[2026-10-25 17:53:57,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:53:57,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:53:57,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:53:57,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:53:59,916.916 INFO    ] ================================================
[2026-10-25 17:53:59,931.931 INFO    ] Launching Daemon at Sun Oct 25 17:53:59 IST 2026
[2026-10-25 17:53:59,942.942 INFO    ] ================================================
[2026-10-25 17:54:00,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:54:00
[2026-10-25 17:54:01,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:54:01,572.572 INFO    ] Initializing speech engine...
[2026-10-25 17:54:01,579.579 INFO    ] 2026-10-25 17:54:01
[2026-10-25 17:54:01,935.935 INFO    ] 2026-10-25 17:54:01
[2026-10-25 17:54:01,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:54:02,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:54:02,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:54:02,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:54:02,356.356 INFO    ] time= 25/10/2026 17:54:02
[2026-10-25 17:54:02,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:54:02,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:54:02,567.567 INFO    ] No existing commands found in stream
[2026-10-25 17:54:07,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:54:07,599.599 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 17:54:08,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:54:08,654.654 INFO    ] Checking for system updates...
[2026-10-25 17:54:08,694.694 INFO    ] 200
[2026-10-25 17:54:08,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:08,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:08,756.756 INFO    ] No update needed
[2026-10-25 17:54:08,759.759 INFO    ] Checking for camera pi updates...
[2026-10-25 17:54:08,795.795 INFO    ] 200
[2026-10-25 17:54:08,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:08,843.843 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:54:08,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:08,895.895 INFO    ] No camera update needed
[2026-10-25 17:54:08,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:54:08,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:54:08,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:54:08,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:54:10,952.952 INFO    ] ================================================
[2026-10-25 17:54:10,968.968 INFO    ] Launching Daemon at Sun Oct 25 17:54:10 IST 2026
[2026-10-25 17:54:10,980.980 INFO    ] ================================================
[2026-10-25 17:54:11,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:54:11
[2026-10-25 17:54:12,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:54:12,391.391 INFO    ] Initializing speech engine...
[2026-10-25 17:54:12,410.410 INFO    ] 2026-10-25 17:54:12
[2026-10-25 17:54:12,656.656 INFO    ] 2026-10-25 17:54:12
[2026-10-25 17:54:12,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:54:12,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:54:12,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:54:13,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:54:13,155.155 INFO    ] time= 25/10/2026 17:54:13
[2026-10-25 17:54:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:54:13,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:54:13,339.339 INFO    ] No existing commands found in stream
[2026-10-25 17:54:18,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:54:18,372.372 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 17:54:22,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 17:54:22,023.023 INFO    ] Checking for system updates...
[2026-10-25 17:54:22,063.063 INFO    ] 200
[2026-10-25 17:54:22,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:22,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:22,128.128 INFO    ] No update needed
[2026-10-25 17:54:22,131.131 INFO    ] Checking for camera pi updates...
[2026-10-25 17:54:22,166.166 INFO    ] 200
[2026-10-25 17:54:22,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:22,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:54:22,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:22,265.265 INFO    ] No camera update needed
[2026-10-25 17:54:22,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:54:22,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:54:22,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:54:22,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:54:24,322.322 INFO    ] ================================================
[2026-10-25 17:54:24,338.338 INFO    ] Launching Daemon at Sun Oct 25 17:54:24 IST 2026
[2026-10-25 17:54:24,349.349 INFO    ] ================================================
[2026-10-25 17:54:24,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:54:24
[2026-10-25 17:54:25,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:54:25,916.916 INFO    ] Initializing speech engine...
[2026-10-25 17:54:25,927.927 INFO    ] 2026-10-25 17:54:25
[2026-10-25 17:54:26,202.202 INFO    ] 2026-10-25 17:54:26
[2026-10-25 17:54:26,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:54:26,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:54:26,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:54:26,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:54:26,670.670 INFO    ] time= 25/10/2026 17:54:26
[2026-10-25 17:54:26,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:54:26,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:54:26,858.858 INFO    ] No existing commands found in stream
[2026-10-25 17:54:31,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:54:31,884.884 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 17:54:38,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:54:38,383.383 INFO    ] Checking for system updates...
[2026-10-25 17:54:38,420.420 INFO    ] 200
[2026-10-25 17:54:38,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:38,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:54:38,487.487 INFO    ] No update needed
[2026-10-25 17:54:38,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 17:54:38,523.523 INFO    ] 200
[2026-10-25 17:54:38,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:38,569.569 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:54:38,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:54:38,650.650 INFO    ] No camera update needed
[2026-10-25 17:54:38,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:54:38,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:54:38,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:54:38,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:54:40,704.704 INFO    ] ================================================
[2026-10-25 17:54:40,720.720 INFO    ] Launching Daemon at Sun Oct 25 17:54:40 IST 2026
[2026-10-25 17:54:40,730.730 INFO    ] ================================================
[2026-10-25 17:54:41,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:54:41
[2026-10-25 17:54:41,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:54:42,179.179 INFO    ] Initializing speech engine...
[2026-10-25 17:54:42,192.192 INFO    ] 2026-10-25 17:54:42
[2026-10-25 17:54:42,470.470 INFO    ] 2026-10-25 17:54:42
[2026-10-25 17:54:42,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:54:42,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:54:42,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:54:42,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:54:42,872.872 INFO    ] time= 25/10/2026 17:54:42
[2026-10-25 17:54:42,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:54:42,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:54:42,953.953 INFO    ] No existing commands found in stream
[2026-10-25 17:54:47,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:54:47,969.969 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 17:54:48,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:54:48,489.489 INFO    ] Checking for system updates...
[2026-10-25 17:54:48,525.525 INFO    ] 200
[2026-10-25 17:54:48,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:48,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:48,584.584 INFO    ] No update needed
[2026-10-25 17:54:48,586.586 INFO    ] Checking for camera pi updates...
[2026-10-25 17:54:48,619.619 INFO    ] 200
[2026-10-25 17:54:48,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:48,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:54:48,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:48,715.715 INFO    ] No camera update needed
[2026-10-25 17:54:48,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:54:48,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:54:48,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:54:48,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:54:50,770.770 INFO    ] ================================================
[2026-10-25 17:54:50,786.786 INFO    ] Launching Daemon at Sun Oct 25 17:54:50 IST 2026
[2026-10-25 17:54:50,796.796 INFO    ] ================================================
[2026-10-25 17:54:51,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:54:51
[2026-10-25 17:54:52,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:54:52,352.352 INFO    ] Initializing speech engine...
[2026-10-25 17:54:52,366.366 INFO    ] 2026-10-25 17:54:52
[2026-10-25 17:54:52,647.647 INFO    ] 2026-10-25 17:54:52
[2026-10-25 17:54:52,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:54:52,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:54:52,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:54:53,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:54:53,193.193 INFO    ] time= 25/10/2026 17:54:53
[2026-10-25 17:54:53,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:54:53,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:54:53,359.359 INFO    ] No existing commands found in stream
[2026-10-25 17:54:58,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:54:58,379.379 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 17:54:59,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:54:59,644.644 INFO    ] Checking for system updates...
[2026-10-25 17:54:59,684.684 INFO    ] 200
[2026-10-25 17:54:59,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:59,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:59,749.749 INFO    ] No update needed
[2026-10-25 17:54:59,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 17:54:59,785.785 INFO    ] 200
[2026-10-25 17:54:59,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:54:59,828.828 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:54:59,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:54:59,880.880 INFO    ] No camera update needed
[2026-10-25 17:54:59,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:54:59,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:54:59,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:54:59,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:55:01,954.954 INFO    ] ================================================
[2026-10-25 17:55:02,995.995 INFO    ] Launching Daemon at Sun Oct 25 17:55:01 IST 2026
[2026-10-25 17:55:02,025.025 INFO    ] ================================================
[2026-10-25 17:55:02,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:55:02
[2026-10-25 17:55:03,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:55:03,808.808 INFO    ] Initializing speech engine...
[2026-10-25 17:55:03,821.821 INFO    ] 2026-10-25 17:55:03
[2026-10-25 17:55:04,078.078 INFO    ] 2026-10-25 17:55:04
[2026-10-25 17:55:04,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:55:04,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:55:04,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:55:04,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:55:04,521.521 INFO    ] time= 25/10/2026 17:55:04
[2026-10-25 17:55:04,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:55:04,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:55:04,693.693 INFO    ] No existing commands found in stream
[2026-10-25 17:55:09,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:55:09,706.706 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 17:55:11,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:55:11,767.767 INFO    ] Checking for system updates...
[2026-10-25 17:55:11,809.809 INFO    ] 200
[2026-10-25 17:55:11,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:11,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:11,875.875 INFO    ] No update needed
[2026-10-25 17:55:11,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 17:55:11,913.913 INFO    ] 200
[2026-10-25 17:55:11,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:11,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:55:12,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:12,118.118 INFO    ] No camera update needed
[2026-10-25 17:55:12,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:55:12,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:55:12,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:55:12,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:55:14,176.176 INFO    ] ================================================
[2026-10-25 17:55:14,192.192 INFO    ] Launching Daemon at Sun Oct 25 17:55:14 IST 2026
[2026-10-25 17:55:14,203.203 INFO    ] ================================================
[2026-10-25 17:55:14,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:55:14
[2026-10-25 17:55:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:55:15,690.690 INFO    ] Initializing speech engine...
[2026-10-25 17:55:15,703.703 INFO    ] 2026-10-25 17:55:15
[2026-10-25 17:55:15,969.969 INFO    ] 2026-10-25 17:55:15
[2026-10-25 17:55:16,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:55:16,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:55:16,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:55:16,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:55:16,388.388 INFO    ] time= 25/10/2026 17:55:16
[2026-10-25 17:55:16,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:55:16,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:55:16,542.542 INFO    ] No existing commands found in stream
[2026-10-25 17:55:21,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:55:21,575.575 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 17:55:24,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:55:24,010.010 INFO    ] Checking for system updates...
[2026-10-25 17:55:24,051.051 INFO    ] 200
[2026-10-25 17:55:24,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:24,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:55:24,116.116 INFO    ] No update needed
[2026-10-25 17:55:24,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 17:55:24,153.153 INFO    ] 200
[2026-10-25 17:55:24,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:24,195.195 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:55:24,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:55:24,243.243 INFO    ] No camera update needed
[2026-10-25 17:55:24,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:55:24,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:55:24,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:55:24,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:55:26,301.301 INFO    ] ================================================
[2026-10-25 17:55:26,317.317 INFO    ] Launching Daemon at Sun Oct 25 17:55:26 IST 2026
[2026-10-25 17:55:26,328.328 INFO    ] ================================================
[2026-10-25 17:55:26,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:55:26
[2026-10-25 17:55:27,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:55:27,745.745 INFO    ] Initializing speech engine...
[2026-10-25 17:55:27,753.753 INFO    ] 2026-10-25 17:55:27
[2026-10-25 17:55:27,998.998 INFO    ] 2026-10-25 17:55:27
[2026-10-25 17:55:28,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:55:28,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:55:28,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:55:28,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:55:28,472.472 INFO    ] time= 25/10/2026 17:55:28
[2026-10-25 17:55:28,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:55:28,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:55:28,617.617 INFO    ] No existing commands found in stream
[2026-10-25 17:55:33,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:55:33,640.640 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 17:55:40,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:55:40,447.447 INFO    ] Checking for system updates...
[2026-10-25 17:55:40,487.487 INFO    ] 200
[2026-10-25 17:55:40,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:40,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:40,546.546 INFO    ] No update needed
[2026-10-25 17:55:40,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 17:55:40,586.586 INFO    ] 200
[2026-10-25 17:55:40,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:40,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:55:40,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:40,677.677 INFO    ] No camera update needed
[2026-10-25 17:55:40,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:55:40,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:55:40,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:55:40,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:55:42,734.734 INFO    ] ================================================
[2026-10-25 17:55:42,749.749 INFO    ] Launching Daemon at Sun Oct 25 17:55:42 IST 2026
[2026-10-25 17:55:42,760.760 INFO    ] ================================================
[2026-10-25 17:55:43,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:55:43
[2026-10-25 17:55:43,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:55:44,211.211 INFO    ] Initializing speech engine...
[2026-10-25 17:55:44,218.218 INFO    ] 2026-10-25 17:55:44
[2026-10-25 17:55:44,517.517 INFO    ] 2026-10-25 17:55:44
[2026-10-25 17:55:44,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:55:44,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:55:44,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:55:44,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:55:44,875.875 INFO    ] time= 25/10/2026 17:55:44
[2026-10-25 17:55:44,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:55:44,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:55:44,960.960 INFO    ] No existing commands found in stream
[2026-10-25 17:55:49,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:55:49,974.974 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 17:55:51,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:55:51,647.647 INFO    ] Checking for system updates...
[2026-10-25 17:55:51,684.684 INFO    ] 200
[2026-10-25 17:55:51,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:51,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:51,760.760 INFO    ] No update needed
[2026-10-25 17:55:51,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 17:55:51,796.796 INFO    ] 200
[2026-10-25 17:55:51,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:55:51,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:55:51,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:55:51,896.896 INFO    ] No camera update needed
[2026-10-25 17:55:51,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:55:51,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:55:51,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:55:51,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:55:53,952.952 INFO    ] ================================================
[2026-10-25 17:55:53,967.967 INFO    ] Launching Daemon at Sun Oct 25 17:55:53 IST 2026
[2026-10-25 17:55:53,978.978 INFO    ] ================================================
[2026-10-25 17:55:54,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:55:54
[2026-10-25 17:55:55,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:55:55,613.613 INFO    ] Initializing speech engine...
[2026-10-25 17:55:55,624.624 INFO    ] 2026-10-25 17:55:55
[2026-10-25 17:55:55,900.900 INFO    ] 2026-10-25 17:55:55
[2026-10-25 17:55:55,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:55:56,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:55:56,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:55:56,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:55:56,352.352 INFO    ] time= 25/10/2026 17:55:56
[2026-10-25 17:55:56,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:55:56,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:55:56,494.494 INFO    ] No existing commands found in stream
[2026-10-25 17:56:01,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:56:01,508.508 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 17:56:02,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:56:02,654.654 INFO    ] Checking for system updates...
[2026-10-25 17:56:02,700.700 INFO    ] 200
[2026-10-25 17:56:02,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:02,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:56:02,769.769 INFO    ] No update needed
[2026-10-25 17:56:02,772.772 INFO    ] Checking for camera pi updates...
[2026-10-25 17:56:02,811.811 INFO    ] 200
[2026-10-25 17:56:02,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:02,866.866 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:56:02,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:56:02,925.925 INFO    ] No camera update needed
[2026-10-25 17:56:02,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:56:02,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:56:02,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:56:02,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:56:04,986.986 INFO    ] ================================================
[2026-10-25 17:56:05,001.001 INFO    ] Launching Daemon at Sun Oct 25 17:56:04 IST 2026
[2026-10-25 17:56:05,011.011 INFO    ] ================================================
[2026-10-25 17:56:05,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:56:05
[2026-10-25 17:56:06,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:56:06,434.434 INFO    ] Initializing speech engine...
[2026-10-25 17:56:06,449.449 INFO    ] 2026-10-25 17:56:06
[2026-10-25 17:56:06,727.727 INFO    ] 2026-10-25 17:56:06
[2026-10-25 17:56:06,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:56:06,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:56:06,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:56:07,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:56:07,083.083 INFO    ] time= 25/10/2026 17:56:07
[2026-10-25 17:56:07,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:56:07,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:56:07,202.202 INFO    ] No existing commands found in stream
[2026-10-25 17:56:12,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:56:12,216.216 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 17:56:14,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:56:14,590.590 INFO    ] Checking for system updates...
[2026-10-25 17:56:14,625.625 INFO    ] 200
[2026-10-25 17:56:14,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:14,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:14,693.693 INFO    ] No update needed
[2026-10-25 17:56:14,695.695 INFO    ] Checking for camera pi updates...
[2026-10-25 17:56:14,729.729 INFO    ] 200
[2026-10-25 17:56:14,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:14,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:56:14,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:14,832.832 INFO    ] No camera update needed
[2026-10-25 17:56:14,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:56:14,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:56:14,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:56:14,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:56:16,889.889 INFO    ] ================================================
[2026-10-25 17:56:16,905.905 INFO    ] Launching Daemon at Sun Oct 25 17:56:16 IST 2026
[2026-10-25 17:56:16,915.915 INFO    ] ================================================
[2026-10-25 17:56:17,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:56:17
[2026-10-25 17:56:18,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:56:18,341.341 INFO    ] Initializing speech engine...
[2026-10-25 17:56:18,348.348 INFO    ] 2026-10-25 17:56:18
[2026-10-25 17:56:18,645.645 INFO    ] 2026-10-25 17:56:18
[2026-10-25 17:56:18,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:56:18,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:56:18,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:56:19,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:56:19,027.027 INFO    ] time= 25/10/2026 17:56:19
[2026-10-25 17:56:19,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:56:19,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:56:19,152.152 INFO    ] No existing commands found in stream
[2026-10-25 17:56:24,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:56:24,167.167 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 17:56:28,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:56:28,091.091 INFO    ] Checking for system updates...
[2026-10-25 17:56:28,127.127 INFO    ] 200
[2026-10-25 17:56:28,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:28,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:56:28,186.186 INFO    ] No update needed
[2026-10-25 17:56:28,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 17:56:28,223.223 INFO    ] 200
[2026-10-25 17:56:28,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:28,272.272 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:56:28,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:56:28,350.350 INFO    ] No camera update needed
[2026-10-25 17:56:28,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:56:28,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:56:28,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:56:28,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:56:30,406.406 INFO    ] ================================================
[2026-10-25 17:56:30,421.421 INFO    ] Launching Daemon at Sun Oct 25 17:56:30 IST 2026
[2026-10-25 17:56:30,432.432 INFO    ] ================================================
[2026-10-25 17:56:31,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:56:31
[2026-10-25 17:56:31,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:56:31,855.855 INFO    ] Initializing speech engine...
[2026-10-25 17:56:31,861.861 INFO    ] 2026-10-25 17:56:31
[2026-10-25 17:56:32,171.171 INFO    ] 2026-10-25 17:56:32
[2026-10-25 17:56:32,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:56:32,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:56:32,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:56:32,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:56:32,576.576 INFO    ] time= 25/10/2026 17:56:32
[2026-10-25 17:56:32,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:56:32,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:56:32,664.664 INFO    ] No existing commands found in stream
[2026-10-25 17:56:37,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:56:37,703.703 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 17:56:43,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:56:43,170.170 INFO    ] Checking for system updates...
[2026-10-25 17:56:43,210.210 INFO    ] 200
[2026-10-25 17:56:43,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:43,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:43,276.276 INFO    ] No update needed
[2026-10-25 17:56:43,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 17:56:43,311.311 INFO    ] 200
[2026-10-25 17:56:43,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:43,354.354 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:56:43,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:43,421.421 INFO    ] No camera update needed
[2026-10-25 17:56:43,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:56:43,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:56:43,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:56:43,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:56:45,476.476 INFO    ] ================================================
[2026-10-25 17:56:45,497.497 INFO    ] Launching Daemon at Sun Oct 25 17:56:45 IST 2026
[2026-10-25 17:56:45,508.508 INFO    ] ================================================
[2026-10-25 17:56:46,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:56:46
[2026-10-25 17:56:46,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:56:46,973.973 INFO    ] Initializing speech engine...
[2026-10-25 17:56:46,982.982 INFO    ] 2026-10-25 17:56:46
[2026-10-25 17:56:47,270.270 INFO    ] 2026-10-25 17:56:47
[2026-10-25 17:56:47,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:56:47,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:56:47,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:56:47,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:56:47,809.809 INFO    ] time= 25/10/2026 17:56:47
[2026-10-25 17:56:47,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:56:47,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:56:47,965.965 INFO    ] No existing commands found in stream
[2026-10-25 17:56:52,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:56:52,986.986 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 17:56:57,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:56:57,337.337 INFO    ] Checking for system updates...
[2026-10-25 17:56:57,378.378 INFO    ] 200
[2026-10-25 17:56:57,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:57,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:57,443.443 INFO    ] No update needed
[2026-10-25 17:56:57,446.446 INFO    ] Checking for camera pi updates...
[2026-10-25 17:56:57,484.484 INFO    ] 200
[2026-10-25 17:56:57,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:56:57,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:56:57,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:56:57,587.587 INFO    ] No camera update needed
[2026-10-25 17:56:57,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:56:57,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:56:57,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:56:57,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:56:59,642.642 INFO    ] ================================================
[2026-10-25 17:56:59,658.658 INFO    ] Launching Daemon at Sun Oct 25 17:56:59 IST 2026
[2026-10-25 17:56:59,669.669 INFO    ] ================================================
[2026-10-25 17:57:00,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:57:00
[2026-10-25 17:57:00,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:57:01,086.086 INFO    ] Initializing speech engine...
[2026-10-25 17:57:01,104.104 INFO    ] 2026-10-25 17:57:01
[2026-10-25 17:57:01,360.360 INFO    ] 2026-10-25 17:57:01
[2026-10-25 17:57:01,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:57:01,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:57:01,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:57:01,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:57:01,802.802 INFO    ] time= 25/10/2026 17:57:01
[2026-10-25 17:57:01,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:57:01,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:57:01,896.896 INFO    ] No existing commands found in stream
[2026-10-25 17:57:06,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:57:06,920.920 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 17:57:07,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:57:07,520.520 INFO    ] Checking for system updates...
[2026-10-25 17:57:07,557.557 INFO    ] 200
[2026-10-25 17:57:07,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:07,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:07,616.616 INFO    ] No update needed
[2026-10-25 17:57:07,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 17:57:07,656.656 INFO    ] 200
[2026-10-25 17:57:07,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:07,699.699 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:57:07,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:07,751.751 INFO    ] No camera update needed
[2026-10-25 17:57:07,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:57:07,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:57:07,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:57:07,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:57:09,808.808 INFO    ] ================================================
[2026-10-25 17:57:09,823.823 INFO    ] Launching Daemon at Sun Oct 25 17:57:09 IST 2026
[2026-10-25 17:57:09,834.834 INFO    ] ================================================
[2026-10-25 17:57:10,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:57:10
[2026-10-25 17:57:11,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:57:11,464.464 INFO    ] Initializing speech engine...
[2026-10-25 17:57:11,475.475 INFO    ] 2026-10-25 17:57:11
[2026-10-25 17:57:11,766.766 INFO    ] 2026-10-25 17:57:11
[2026-10-25 17:57:11,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:57:13,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:57:13,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:57:14,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:57:14,103.103 INFO    ] time= 25/10/2026 17:57:14
[2026-10-25 17:57:14,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:57:14,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:57:14,244.244 INFO    ] No existing commands found in stream
[2026-10-25 17:57:19,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:57:19,283.283 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 17:57:22,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 17:57:22,809.809 INFO    ] Checking for system updates...
[2026-10-25 17:57:22,850.850 INFO    ] 200
[2026-10-25 17:57:22,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:22,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:57:22,910.910 INFO    ] No update needed
[2026-10-25 17:57:22,913.913 INFO    ] Checking for camera pi updates...
[2026-10-25 17:57:22,948.948 INFO    ] 200
[2026-10-25 17:57:22,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:22,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:57:23,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:57:23,152.152 INFO    ] No camera update needed
[2026-10-25 17:57:23,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:57:23,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:57:23,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:57:23,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:57:25,212.212 INFO    ] ================================================
[2026-10-25 17:57:25,227.227 INFO    ] Launching Daemon at Sun Oct 25 17:57:25 IST 2026
[2026-10-25 17:57:25,239.239 INFO    ] ================================================
[2026-10-25 17:57:25,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:57:25
[2026-10-25 17:57:26,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:57:26,863.863 INFO    ] Initializing speech engine...
[2026-10-25 17:57:26,875.875 INFO    ] 2026-10-25 17:57:26
[2026-10-25 17:57:27,160.160 INFO    ] 2026-10-25 17:57:27
[2026-10-25 17:57:27,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:57:27,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:57:27,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:57:27,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:57:27,689.689 INFO    ] time= 25/10/2026 17:57:27
[2026-10-25 17:57:27,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:57:27,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:57:27,843.843 INFO    ] No existing commands found in stream
[2026-10-25 17:57:32,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:57:32,862.862 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 17:57:36,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:57:36,246.246 INFO    ] Checking for system updates...
[2026-10-25 17:57:36,289.289 INFO    ] 200
[2026-10-25 17:57:36,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:36,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:57:36,362.362 INFO    ] No update needed
[2026-10-25 17:57:36,365.365 INFO    ] Checking for camera pi updates...
[2026-10-25 17:57:36,406.406 INFO    ] 200
[2026-10-25 17:57:36,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:36,458.458 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:57:36,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:57:36,524.524 INFO    ] No camera update needed
[2026-10-25 17:57:36,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:57:36,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:57:36,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:57:36,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:57:38,582.582 INFO    ] ================================================
[2026-10-25 17:57:38,597.597 INFO    ] Launching Daemon at Sun Oct 25 17:57:38 IST 2026
[2026-10-25 17:57:38,608.608 INFO    ] ================================================
[2026-10-25 17:57:39,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:57:39
[2026-10-25 17:57:39,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:57:40,028.028 INFO    ] Initializing speech engine...
[2026-10-25 17:57:40,037.037 INFO    ] 2026-10-25 17:57:40
[2026-10-25 17:57:40,293.293 INFO    ] 2026-10-25 17:57:40
[2026-10-25 17:57:40,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:57:40,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:57:40,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:57:40,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:57:40,753.753 INFO    ] time= 25/10/2026 17:57:40
[2026-10-25 17:57:40,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:57:40,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:57:40,893.893 INFO    ] No existing commands found in stream
[2026-10-25 17:57:45,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:57:45,907.907 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 17:57:46,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:57:46,589.589 INFO    ] Checking for system updates...
[2026-10-25 17:57:46,625.625 INFO    ] 200
[2026-10-25 17:57:46,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:46,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:46,692.692 INFO    ] No update needed
[2026-10-25 17:57:46,694.694 INFO    ] Checking for camera pi updates...
[2026-10-25 17:57:46,728.728 INFO    ] 200
[2026-10-25 17:57:46,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:46,773.773 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:57:46,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:46,831.831 INFO    ] No camera update needed
[2026-10-25 17:57:46,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:57:46,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:57:46,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:57:46,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:57:48,892.892 INFO    ] ================================================
[2026-10-25 17:57:48,907.907 INFO    ] Launching Daemon at Sun Oct 25 17:57:48 IST 2026
[2026-10-25 17:57:48,918.918 INFO    ] ================================================
[2026-10-25 17:57:49,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:57:49
[2026-10-25 17:57:50,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:57:50,329.329 INFO    ] Initializing speech engine...
[2026-10-25 17:57:50,335.335 INFO    ] 2026-10-25 17:57:50
[2026-10-25 17:57:50,630.630 INFO    ] 2026-10-25 17:57:50
[2026-10-25 17:57:50,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:57:50,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:57:50,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:57:50,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:57:50,983.983 INFO    ] time= 25/10/2026 17:57:50
[2026-10-25 17:57:51,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:57:51,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:57:51,104.104 INFO    ] No existing commands found in stream
[2026-10-25 17:57:56,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:57:56,142.142 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 17:57:57,568.568 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 17:57:57,570.570 INFO    ] Checking for system updates...
[2026-10-25 17:57:57,608.608 INFO    ] 200
[2026-10-25 17:57:57,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:57,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:57,685.685 INFO    ] No update needed
[2026-10-25 17:57:57,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 17:57:57,724.724 INFO    ] 200
[2026-10-25 17:57:57,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:57:57,769.769 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:57:57,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:57:57,829.829 INFO    ] No camera update needed
[2026-10-25 17:57:57,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:57:57,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:57:57,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:57:57,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:57:59,884.884 INFO    ] ================================================
[2026-10-25 17:57:59,899.899 INFO    ] Launching Daemon at Sun Oct 25 17:57:59 IST 2026
[2026-10-25 17:57:59,910.910 INFO    ] ================================================
[2026-10-25 17:58:00,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:58:00
[2026-10-25 17:58:01,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:58:01,329.329 INFO    ] Initializing speech engine...
[2026-10-25 17:58:01,335.335 INFO    ] 2026-10-25 17:58:01
[2026-10-25 17:58:01,630.630 INFO    ] 2026-10-25 17:58:01
[2026-10-25 17:58:01,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:58:01,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:58:01,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:58:02,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:58:02,045.045 INFO    ] time= 25/10/2026 17:58:02
[2026-10-25 17:58:02,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:58:02,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:58:02,140.140 INFO    ] No existing commands found in stream
[2026-10-25 17:58:07,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:58:07,186.186 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 17:58:08,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 17:58:08,780.780 INFO    ] Checking for system updates...
[2026-10-25 17:58:08,819.819 INFO    ] 200
[2026-10-25 17:58:08,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:08,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:58:08,887.887 INFO    ] No update needed
[2026-10-25 17:58:08,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 17:58:08,934.934 INFO    ] 200
[2026-10-25 17:58:08,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:08,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:58:09,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:58:09,048.048 INFO    ] No camera update needed
[2026-10-25 17:58:09,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:58:09,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:58:09,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:58:09,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:58:11,104.104 INFO    ] ================================================
[2026-10-25 17:58:11,120.120 INFO    ] Launching Daemon at Sun Oct 25 17:58:11 IST 2026
[2026-10-25 17:58:11,131.131 INFO    ] ================================================
[2026-10-25 17:58:11,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:58:11
[2026-10-25 17:58:12,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:58:12,558.558 INFO    ] Initializing speech engine...
[2026-10-25 17:58:12,567.567 INFO    ] 2026-10-25 17:58:12
[2026-10-25 17:58:12,813.813 INFO    ] 2026-10-25 17:58:12
[2026-10-25 17:58:12,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:58:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:58:15,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:58:16,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:58:16,389.389 INFO    ] time= 25/10/2026 17:58:16
[2026-10-25 17:58:16,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:58:16,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:58:16,444.444 INFO    ] No existing commands found in stream
[2026-10-25 17:58:21,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:58:21,455.455 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 17:58:21,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:58:21,994.994 INFO    ] Checking for system updates...
[2026-10-25 17:58:22,034.034 INFO    ] 200
[2026-10-25 17:58:22,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:22,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:22,091.091 INFO    ] No update needed
[2026-10-25 17:58:22,094.094 INFO    ] Checking for camera pi updates...
[2026-10-25 17:58:22,128.128 INFO    ] 200
[2026-10-25 17:58:22,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:22,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:58:22,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:22,222.222 INFO    ] No camera update needed
[2026-10-25 17:58:22,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:58:22,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:58:22,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:58:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:58:24,278.278 INFO    ] ================================================
[2026-10-25 17:58:24,294.294 INFO    ] Launching Daemon at Sun Oct 25 17:58:24 IST 2026
[2026-10-25 17:58:24,305.305 INFO    ] ================================================
[2026-10-25 17:58:24,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:58:24
[2026-10-25 17:58:25,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:58:25,717.717 INFO    ] Initializing speech engine...
[2026-10-25 17:58:25,726.726 INFO    ] 2026-10-25 17:58:25
[2026-10-25 17:58:25,976.976 INFO    ] 2026-10-25 17:58:25
[2026-10-25 17:58:26,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:58:26,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:58:26,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:58:26,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:58:26,471.471 INFO    ] time= 25/10/2026 17:58:26
[2026-10-25 17:58:26,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:58:26,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:58:26,662.662 INFO    ] No existing commands found in stream
[2026-10-25 17:58:31,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:58:31,690.690 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 17:58:33,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:58:33,725.725 INFO    ] Checking for system updates...
[2026-10-25 17:58:33,764.764 INFO    ] 200
[2026-10-25 17:58:33,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:33,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:33,826.826 INFO    ] No update needed
[2026-10-25 17:58:33,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 17:58:33,862.862 INFO    ] 200
[2026-10-25 17:58:33,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:33,905.905 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:58:33,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:33,975.975 INFO    ] No camera update needed
[2026-10-25 17:58:33,977.977 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:58:33,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:58:33,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:58:33,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:58:36,035.035 INFO    ] ================================================
[2026-10-25 17:58:36,049.049 INFO    ] Launching Daemon at Sun Oct 25 17:58:36 IST 2026
[2026-10-25 17:58:36,060.060 INFO    ] ================================================
[2026-10-25 17:58:36,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:58:36
[2026-10-25 17:58:37,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:58:37,472.472 INFO    ] Initializing speech engine...
[2026-10-25 17:58:37,478.478 INFO    ] 2026-10-25 17:58:37
[2026-10-25 17:58:37,755.755 INFO    ] 2026-10-25 17:58:37
[2026-10-25 17:58:37,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:58:37,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:58:37,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:58:38,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:58:38,126.126 INFO    ] time= 25/10/2026 17:58:38
[2026-10-25 17:58:38,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:58:38,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:58:38,319.319 INFO    ] No existing commands found in stream
[2026-10-25 17:58:43,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:58:43,334.334 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 17:58:47,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 17:58:47,231.231 INFO    ] Checking for system updates...
[2026-10-25 17:58:47,272.272 INFO    ] 200
[2026-10-25 17:58:47,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:47,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:47,334.334 INFO    ] No update needed
[2026-10-25 17:58:47,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 17:58:47,374.374 INFO    ] 200
[2026-10-25 17:58:47,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:47,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:58:47,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:58:47,493.493 INFO    ] No camera update needed
[2026-10-25 17:58:47,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:58:47,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:58:47,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:58:47,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:58:49,558.558 INFO    ] ================================================
[2026-10-25 17:58:49,574.574 INFO    ] Launching Daemon at Sun Oct 25 17:58:49 IST 2026
[2026-10-25 17:58:49,584.584 INFO    ] ================================================
[2026-10-25 17:58:50,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:58:50
[2026-10-25 17:58:50,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:58:51,301.301 INFO    ] Initializing speech engine...
[2026-10-25 17:58:51,314.314 INFO    ] 2026-10-25 17:58:51
[2026-10-25 17:58:51,613.613 INFO    ] 2026-10-25 17:58:51
[2026-10-25 17:58:51,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:58:51,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:58:51,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:58:52,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:58:52,126.126 INFO    ] time= 25/10/2026 17:58:52
[2026-10-25 17:58:52,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:58:52,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:58:52,285.285 INFO    ] No existing commands found in stream
[2026-10-25 17:58:57,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:58:57,316.316 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 17:58:58,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:58:58,753.753 INFO    ] Checking for system updates...
[2026-10-25 17:58:58,793.793 INFO    ] 200
[2026-10-25 17:58:58,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:58,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:58:58,868.868 INFO    ] No update needed
[2026-10-25 17:58:58,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 17:58:58,908.908 INFO    ] 200
[2026-10-25 17:58:58,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:58:58,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:58:59,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 17:58:59,023.023 INFO    ] No camera update needed
[2026-10-25 17:58:59,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:58:59,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:58:59,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:58:59,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:59:01,082.082 INFO    ] ================================================
[2026-10-25 17:59:01,098.098 INFO    ] Launching Daemon at Sun Oct 25 17:59:01 IST 2026
[2026-10-25 17:59:01,110.110 INFO    ] ================================================
[2026-10-25 17:59:01,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:59:01
[2026-10-25 17:59:02,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:59:02,859.859 INFO    ] Initializing speech engine...
[2026-10-25 17:59:02,872.872 INFO    ] 2026-10-25 17:59:02
[2026-10-25 17:59:03,137.137 INFO    ] 2026-10-25 17:59:03
[2026-10-25 17:59:03,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:59:03,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:59:03,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:59:03,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:59:03,497.497 INFO    ] time= 25/10/2026 17:59:03
[2026-10-25 17:59:03,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:59:03,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:59:03,591.591 INFO    ] No existing commands found in stream
[2026-10-25 17:59:08,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:59:08,626.626 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 17:59:10,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:59:10,368.368 INFO    ] Checking for system updates...
[2026-10-25 17:59:10,409.409 INFO    ] 200
[2026-10-25 17:59:10,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:10,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:10,473.473 INFO    ] No update needed
[2026-10-25 17:59:10,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 17:59:10,510.510 INFO    ] 200
[2026-10-25 17:59:10,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:10,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:59:10,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:10,626.626 INFO    ] No camera update needed
[2026-10-25 17:59:10,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:59:10,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:59:10,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:59:10,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:59:12,682.682 INFO    ] ================================================
[2026-10-25 17:59:12,698.698 INFO    ] Launching Daemon at Sun Oct 25 17:59:12 IST 2026
[2026-10-25 17:59:12,709.709 INFO    ] ================================================
[2026-10-25 17:59:13,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:59:13
[2026-10-25 17:59:13,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:59:14,137.137 INFO    ] Initializing speech engine...
[2026-10-25 17:59:14,145.145 INFO    ] 2026-10-25 17:59:14
[2026-10-25 17:59:14,396.396 INFO    ] 2026-10-25 17:59:14
[2026-10-25 17:59:14,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:59:18,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:59:18,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:59:18,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:59:18,638.638 INFO    ] time= 25/10/2026 17:59:18
[2026-10-25 17:59:18,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:59:18,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:59:18,689.689 INFO    ] No existing commands found in stream
[2026-10-25 17:59:23,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:59:23,701.701 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 17:59:25,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:59:25,243.243 INFO    ] Checking for system updates...
[2026-10-25 17:59:25,280.280 INFO    ] 200
[2026-10-25 17:59:25,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:25,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:25,339.339 INFO    ] No update needed
[2026-10-25 17:59:25,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 17:59:25,375.375 INFO    ] 200
[2026-10-25 17:59:25,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:25,427.427 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:59:25,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:25,588.588 INFO    ] No camera update needed
[2026-10-25 17:59:25,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:59:25,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:59:25,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:59:25,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:59:27,643.643 INFO    ] ================================================
[2026-10-25 17:59:27,659.659 INFO    ] Launching Daemon at Sun Oct 25 17:59:27 IST 2026
[2026-10-25 17:59:27,670.670 INFO    ] ================================================
[2026-10-25 17:59:28,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:59:28
[2026-10-25 17:59:28,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:59:29,100.100 INFO    ] Initializing speech engine...
[2026-10-25 17:59:29,109.109 INFO    ] 2026-10-25 17:59:29
[2026-10-25 17:59:29,353.353 INFO    ] 2026-10-25 17:59:29
[2026-10-25 17:59:29,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:59:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:59:29,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:59:29,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:59:29,716.716 INFO    ] time= 25/10/2026 17:59:29
[2026-10-25 17:59:29,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:59:29,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:59:29,804.804 INFO    ] No existing commands found in stream
[2026-10-25 17:59:34,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:59:34,843.843 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 17:59:35,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:59:35,372.372 INFO    ] Checking for system updates...
[2026-10-25 17:59:35,412.412 INFO    ] 200
[2026-10-25 17:59:35,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:35,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:35,471.471 INFO    ] No update needed
[2026-10-25 17:59:35,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 17:59:35,507.507 INFO    ] 200
[2026-10-25 17:59:35,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:35,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:59:35,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:35,615.615 INFO    ] No camera update needed
[2026-10-25 17:59:35,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:59:35,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:59:35,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:59:35,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:59:37,675.675 INFO    ] ================================================
[2026-10-25 17:59:37,691.691 INFO    ] Launching Daemon at Sun Oct 25 17:59:37 IST 2026
[2026-10-25 17:59:37,703.703 INFO    ] ================================================
[2026-10-25 17:59:38,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:59:38
[2026-10-25 17:59:38,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:59:39,115.115 INFO    ] Initializing speech engine...
[2026-10-25 17:59:39,129.129 INFO    ] 2026-10-25 17:59:39
[2026-10-25 17:59:39,393.393 INFO    ] 2026-10-25 17:59:39
[2026-10-25 17:59:39,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:59:39,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:59:39,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:59:39,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:59:39,863.863 INFO    ] time= 25/10/2026 17:59:39
[2026-10-25 17:59:39,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:59:39,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:59:40,007.007 INFO    ] No existing commands found in stream
[2026-10-25 17:59:45,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:59:45,022.022 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 17:59:49,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 17:59:49,621.621 INFO    ] Checking for system updates...
[2026-10-25 17:59:49,657.657 INFO    ] 200
[2026-10-25 17:59:49,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:49,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:49,715.715 INFO    ] No update needed
[2026-10-25 17:59:49,717.717 INFO    ] Checking for camera pi updates...
[2026-10-25 17:59:49,752.752 INFO    ] 200
[2026-10-25 17:59:49,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 17:59:49,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 17:59:49,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 17:59:49,852.852 INFO    ] No camera update needed
[2026-10-25 17:59:49,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-25 17:59:49,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 17:59:49,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 17:59:49,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 17:59:51,907.907 INFO    ] ================================================
[2026-10-25 17:59:51,923.923 INFO    ] Launching Daemon at Sun Oct 25 17:59:51 IST 2026
[2026-10-25 17:59:51,935.935 INFO    ] ================================================
[2026-10-25 17:59:52,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 17:59:52
[2026-10-25 17:59:53,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 17:59:53,533.533 INFO    ] Initializing speech engine...
[2026-10-25 17:59:53,547.547 INFO    ] 2026-10-25 17:59:53
[2026-10-25 17:59:53,823.823 INFO    ] 2026-10-25 17:59:53
[2026-10-25 17:59:53,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 17:59:54,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 17:59:54,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 17:59:54,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 17:59:54,359.359 INFO    ] time= 25/10/2026 17:59:54
[2026-10-25 17:59:54,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 17:59:54,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 17:59:54,516.516 INFO    ] No existing commands found in stream
[2026-10-25 17:59:59,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 17:59:59,531.531 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 18:00:06,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:00:06,891.891 INFO    ] Checking for system updates...
[2026-10-25 18:00:06,931.931 INFO    ] 200
[2026-10-25 18:00:06,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:06,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:06,990.990 INFO    ] No update needed
[2026-10-25 18:00:06,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 18:00:07,030.030 INFO    ] 200
[2026-10-25 18:00:07,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:07,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:00:07,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:07,128.128 INFO    ] No camera update needed
[2026-10-25 18:00:07,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:00:07,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:00:07,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:00:07,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:00:09,184.184 INFO    ] ================================================
[2026-10-25 18:00:09,200.200 INFO    ] Launching Daemon at Sun Oct 25 18:00:09 IST 2026
[2026-10-25 18:00:09,211.211 INFO    ] ================================================
[2026-10-25 18:00:09,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:00:09
[2026-10-25 18:00:10,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:00:10,625.625 INFO    ] Initializing speech engine...
[2026-10-25 18:00:10,631.631 INFO    ] 2026-10-25 18:00:10
[2026-10-25 18:00:10,923.923 INFO    ] 2026-10-25 18:00:10
[2026-10-25 18:00:10,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:00:11,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:00:11,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:00:11,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:00:11,298.298 INFO    ] time= 25/10/2026 18:00:11
[2026-10-25 18:00:11,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:00:11,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:00:11,424.424 INFO    ] No existing commands found in stream
[2026-10-25 18:00:16,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:00:16,437.437 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 18:00:19,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:00:19,326.326 INFO    ] Checking for system updates...
[2026-10-25 18:00:19,362.362 INFO    ] 200
[2026-10-25 18:00:19,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:19,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:19,427.427 INFO    ] No update needed
[2026-10-25 18:00:19,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 18:00:19,462.462 INFO    ] 200
[2026-10-25 18:00:19,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:19,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:00:19,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:19,565.565 INFO    ] No camera update needed
[2026-10-25 18:00:19,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:00:19,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:00:19,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:00:19,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:00:21,625.625 INFO    ] ================================================
[2026-10-25 18:00:21,641.641 INFO    ] Launching Daemon at Sun Oct 25 18:00:21 IST 2026
[2026-10-25 18:00:21,653.653 INFO    ] ================================================
[2026-10-25 18:00:22,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:00:22
[2026-10-25 18:00:22,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:00:23,056.056 INFO    ] Initializing speech engine...
[2026-10-25 18:00:23,069.069 INFO    ] 2026-10-25 18:00:23
[2026-10-25 18:00:23,359.359 INFO    ] 2026-10-25 18:00:23
[2026-10-25 18:00:23,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:00:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:00:23,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:00:23,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:00:23,983.983 INFO    ] time= 25/10/2026 18:00:23
[2026-10-25 18:00:24,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:00:24,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:00:24,137.137 INFO    ] No existing commands found in stream
[2026-10-25 18:00:29,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:00:29,162.162 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 18:00:30,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:00:30,365.365 INFO    ] Checking for system updates...
[2026-10-25 18:00:30,406.406 INFO    ] 200
[2026-10-25 18:00:30,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:30,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:00:30,468.468 INFO    ] No update needed
[2026-10-25 18:00:30,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 18:00:30,505.505 INFO    ] 200
[2026-10-25 18:00:30,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:30,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:00:30,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:00:30,602.602 INFO    ] No camera update needed
[2026-10-25 18:00:30,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:00:30,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:00:30,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:00:30,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:00:32,663.663 INFO    ] ================================================
[2026-10-25 18:00:32,679.679 INFO    ] Launching Daemon at Sun Oct 25 18:00:32 IST 2026
[2026-10-25 18:00:32,691.691 INFO    ] ================================================
[2026-10-25 18:00:33,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:00:33
[2026-10-25 18:00:33,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:00:34,111.111 INFO    ] Initializing speech engine...
[2026-10-25 18:00:34,116.116 INFO    ] 2026-10-25 18:00:34
[2026-10-25 18:00:34,416.416 INFO    ] 2026-10-25 18:00:34
[2026-10-25 18:00:34,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:00:34,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:00:34,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:00:34,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:00:34,796.796 INFO    ] time= 25/10/2026 18:00:34
[2026-10-25 18:00:34,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:00:34,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:00:34,913.913 INFO    ] No existing commands found in stream
[2026-10-25 18:00:39,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:00:39,927.927 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 18:00:43,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:00:43,722.722 INFO    ] Checking for system updates...
[2026-10-25 18:00:43,758.758 INFO    ] 200
[2026-10-25 18:00:43,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:43,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:43,821.821 INFO    ] No update needed
[2026-10-25 18:00:43,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 18:00:43,858.858 INFO    ] 200
[2026-10-25 18:00:43,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:43,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:00:43,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:00:43,959.959 INFO    ] No camera update needed
[2026-10-25 18:00:43,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:00:43,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:00:43,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:00:43,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:00:46,014.014 INFO    ] ================================================
[2026-10-25 18:00:46,029.029 INFO    ] Launching Daemon at Sun Oct 25 18:00:46 IST 2026
[2026-10-25 18:00:46,042.042 INFO    ] ================================================
[2026-10-25 18:00:46,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:00:46
[2026-10-25 18:00:47,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:00:47,494.494 INFO    ] Initializing speech engine...
[2026-10-25 18:00:47,500.500 INFO    ] 2026-10-25 18:00:47
[2026-10-25 18:00:47,773.773 INFO    ] 2026-10-25 18:00:47
[2026-10-25 18:00:47,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:00:47,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:00:47,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:00:48,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:00:48,119.119 INFO    ] time= 25/10/2026 18:00:48
[2026-10-25 18:00:48,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:00:48,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:00:48,234.234 INFO    ] No existing commands found in stream
[2026-10-25 18:00:53,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:00:53,250.250 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 18:00:56,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:00:56,342.342 INFO    ] Checking for system updates...
[2026-10-25 18:00:56,378.378 INFO    ] 200
[2026-10-25 18:00:56,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:56,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:00:56,436.436 INFO    ] No update needed
[2026-10-25 18:00:56,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 18:00:56,472.472 INFO    ] 200
[2026-10-25 18:00:56,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:00:56,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:00:56,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:00:56,574.574 INFO    ] No camera update needed
[2026-10-25 18:00:56,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:00:56,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:00:56,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:00:56,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:00:58,631.631 INFO    ] ================================================
[2026-10-25 18:00:58,647.647 INFO    ] Launching Daemon at Sun Oct 25 18:00:58 IST 2026
[2026-10-25 18:00:58,658.658 INFO    ] ================================================
[2026-10-25 18:00:59,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:00:59
[2026-10-25 18:00:59,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:01:00,075.075 INFO    ] Initializing speech engine...
[2026-10-25 18:01:00,083.083 INFO    ] 2026-10-25 18:01:00
[2026-10-25 18:01:00,375.375 INFO    ] 2026-10-25 18:01:00
[2026-10-25 18:01:00,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:01:00,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:01:00,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:01:00,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:01:00,790.790 INFO    ] time= 25/10/2026 18:01:00
[2026-10-25 18:01:00,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:01:00,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:01:00,939.939 INFO    ] No existing commands found in stream
[2026-10-25 18:01:05,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:01:05,966.966 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 18:01:06,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:01:06,766.766 INFO    ] Checking for system updates...
[2026-10-25 18:01:06,803.803 INFO    ] 200
[2026-10-25 18:01:06,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:06,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:01:06,870.870 INFO    ] No update needed
[2026-10-25 18:01:06,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 18:01:06,912.912 INFO    ] 200
[2026-10-25 18:01:06,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:06,959.959 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:01:07,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:01:07,022.022 INFO    ] No camera update needed
[2026-10-25 18:01:07,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:01:07,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:01:07,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:01:07,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:01:09,077.077 INFO    ] ================================================
[2026-10-25 18:01:09,093.093 INFO    ] Launching Daemon at Sun Oct 25 18:01:09 IST 2026
[2026-10-25 18:01:09,148.148 INFO    ] ================================================
[2026-10-25 18:01:09,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:01:09
[2026-10-25 18:01:10,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:01:10,620.620 INFO    ] Initializing speech engine...
[2026-10-25 18:01:10,629.629 INFO    ] 2026-10-25 18:01:10
[2026-10-25 18:01:10,874.874 INFO    ] 2026-10-25 18:01:10
[2026-10-25 18:01:10,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:01:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:01:11,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:01:11,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:01:11,257.257 INFO    ] time= 25/10/2026 18:01:11
[2026-10-25 18:01:11,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:01:11,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:01:11,453.453 INFO    ] No existing commands found in stream
[2026-10-25 18:01:16,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:01:16,467.467 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 18:01:20,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:01:20,435.435 INFO    ] Checking for system updates...
[2026-10-25 18:01:20,473.473 INFO    ] 200
[2026-10-25 18:01:20,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:20,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:01:20,532.532 INFO    ] No update needed
[2026-10-25 18:01:20,534.534 INFO    ] Checking for camera pi updates...
[2026-10-25 18:01:20,572.572 INFO    ] 200
[2026-10-25 18:01:20,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:20,620.620 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:01:20,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:01:20,681.681 INFO    ] No camera update needed
[2026-10-25 18:01:20,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:01:20,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:01:20,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:01:20,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:01:22,735.735 INFO    ] ================================================
[2026-10-25 18:01:22,749.749 INFO    ] Launching Daemon at Sun Oct 25 18:01:22 IST 2026
[2026-10-25 18:01:22,760.760 INFO    ] ================================================
[2026-10-25 18:01:23,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:01:23
[2026-10-25 18:01:24,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:01:24,356.356 INFO    ] Initializing speech engine...
[2026-10-25 18:01:24,364.364 INFO    ] 2026-10-25 18:01:24
[2026-10-25 18:01:24,627.627 INFO    ] 2026-10-25 18:01:24
[2026-10-25 18:01:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:01:25,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:01:25,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:01:26,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:01:26,155.155 INFO    ] time= 25/10/2026 18:01:26
[2026-10-25 18:01:26,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:01:26,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:01:26,223.223 INFO    ] No existing commands found in stream
[2026-10-25 18:01:31,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:01:31,238.238 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 18:01:31,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:01:31,891.891 INFO    ] Checking for system updates...
[2026-10-25 18:01:31,934.934 INFO    ] 200
[2026-10-25 18:01:31,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:31,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:32,001.001 INFO    ] No update needed
[2026-10-25 18:01:32,004.004 INFO    ] Checking for camera pi updates...
[2026-10-25 18:01:32,040.040 INFO    ] 200
[2026-10-25 18:01:32,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:32,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:01:32,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:32,246.246 INFO    ] No camera update needed
[2026-10-25 18:01:32,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:01:32,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:01:32,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:01:32,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:01:34,302.302 INFO    ] ================================================
[2026-10-25 18:01:34,317.317 INFO    ] Launching Daemon at Sun Oct 25 18:01:34 IST 2026
[2026-10-25 18:01:34,327.327 INFO    ] ================================================
[2026-10-25 18:01:34,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:01:34
[2026-10-25 18:01:35,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:01:35,783.783 INFO    ] Initializing speech engine...
[2026-10-25 18:01:35,792.792 INFO    ] 2026-10-25 18:01:35
[2026-10-25 18:01:36,038.038 INFO    ] 2026-10-25 18:01:36
[2026-10-25 18:01:36,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:01:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:01:36,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:01:36,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:01:36,506.506 INFO    ] time= 25/10/2026 18:01:36
[2026-10-25 18:01:36,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:01:36,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:01:36,655.655 INFO    ] No existing commands found in stream
[2026-10-25 18:01:41,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:01:41,669.669 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 18:01:42,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:01:42,384.384 INFO    ] Checking for system updates...
[2026-10-25 18:01:42,424.424 INFO    ] 200
[2026-10-25 18:01:42,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:42,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:42,483.483 INFO    ] No update needed
[2026-10-25 18:01:42,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 18:01:42,522.522 INFO    ] 200
[2026-10-25 18:01:42,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:42,565.565 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:01:42,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:42,624.624 INFO    ] No camera update needed
[2026-10-25 18:01:42,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:01:42,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:01:42,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:01:42,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:01:44,681.681 INFO    ] ================================================
[2026-10-25 18:01:44,696.696 INFO    ] Launching Daemon at Sun Oct 25 18:01:44 IST 2026
[2026-10-25 18:01:44,707.707 INFO    ] ================================================
[2026-10-25 18:01:45,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:01:45
[2026-10-25 18:01:46,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:01:46,319.319 INFO    ] Initializing speech engine...
[2026-10-25 18:01:46,331.331 INFO    ] 2026-10-25 18:01:46
[2026-10-25 18:01:46,639.639 INFO    ] 2026-10-25 18:01:46
[2026-10-25 18:01:46,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:01:46,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:01:46,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:01:47,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:01:47,139.139 INFO    ] time= 25/10/2026 18:01:47
[2026-10-25 18:01:47,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:01:47,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:01:47,285.285 INFO    ] No existing commands found in stream
[2026-10-25 18:01:52,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:01:52,310.310 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 18:01:57,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:01:57,757.757 INFO    ] Checking for system updates...
[2026-10-25 18:01:57,800.800 INFO    ] 200
[2026-10-25 18:01:57,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:57,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:57,871.871 INFO    ] No update needed
[2026-10-25 18:01:57,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 18:01:57,911.911 INFO    ] 200
[2026-10-25 18:01:57,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:01:57,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:01:58,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:01:58,018.018 INFO    ] No camera update needed
[2026-10-25 18:01:58,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:01:58,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:01:58,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:01:58,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:02:00,081.081 INFO    ] ================================================
[2026-10-25 18:02:00,097.097 INFO    ] Launching Daemon at Sun Oct 25 18:02:00 IST 2026
[2026-10-25 18:02:00,107.107 INFO    ] ================================================
[2026-10-25 18:02:00,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:02:00
[2026-10-25 18:02:01,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:02:01,890.890 INFO    ] Initializing speech engine...
[2026-10-25 18:02:01,909.909 INFO    ] 2026-10-25 18:02:01
[2026-10-25 18:02:02,244.244 INFO    ] 2026-10-25 18:02:02
[2026-10-25 18:02:02,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:02:02,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:02:02,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:02:02,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:02:02,714.714 INFO    ] time= 25/10/2026 18:02:02
[2026-10-25 18:02:02,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:02:02,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:02:02,856.856 INFO    ] No existing commands found in stream
[2026-10-25 18:02:07,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:02:07,869.869 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 18:02:12,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:02:12,159.159 INFO    ] Checking for system updates...
[2026-10-25 18:02:12,199.199 INFO    ] 200
[2026-10-25 18:02:12,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:12,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:02:12,265.265 INFO    ] No update needed
[2026-10-25 18:02:12,267.267 INFO    ] Checking for camera pi updates...
[2026-10-25 18:02:12,306.306 INFO    ] 200
[2026-10-25 18:02:12,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:12,350.350 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:02:12,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:02:12,414.414 INFO    ] No camera update needed
[2026-10-25 18:02:12,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:02:12,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:02:12,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:02:12,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:02:14,469.469 INFO    ] ================================================
[2026-10-25 18:02:14,484.484 INFO    ] Launching Daemon at Sun Oct 25 18:02:14 IST 2026
[2026-10-25 18:02:14,495.495 INFO    ] ================================================
[2026-10-25 18:02:15,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:02:15
[2026-10-25 18:02:15,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:02:15,892.892 INFO    ] Initializing speech engine...
[2026-10-25 18:02:15,912.912 INFO    ] 2026-10-25 18:02:15
[2026-10-25 18:02:16,171.171 INFO    ] 2026-10-25 18:02:16
[2026-10-25 18:02:16,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:02:16,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:02:16,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:02:16,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:02:16,588.588 INFO    ] time= 25/10/2026 18:02:16
[2026-10-25 18:02:16,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:02:16,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:02:16,676.676 INFO    ] No existing commands found in stream
[2026-10-25 18:02:21,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:02:21,703.703 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 18:02:28,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:02:28,296.296 INFO    ] Checking for system updates...
[2026-10-25 18:02:28,339.339 INFO    ] 200
[2026-10-25 18:02:28,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:28,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:02:28,398.398 INFO    ] No update needed
[2026-10-25 18:02:28,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 18:02:28,439.439 INFO    ] 200
[2026-10-25 18:02:28,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:28,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:02:28,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:02:28,557.557 INFO    ] No camera update needed
[2026-10-25 18:02:28,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:02:28,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:02:28,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:02:28,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:02:30,612.612 INFO    ] ================================================
[2026-10-25 18:02:30,627.627 INFO    ] Launching Daemon at Sun Oct 25 18:02:30 IST 2026
[2026-10-25 18:02:30,638.638 INFO    ] ================================================
[2026-10-25 18:02:31,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:02:31
[2026-10-25 18:02:31,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:02:32,117.117 INFO    ] Initializing speech engine...
[2026-10-25 18:02:32,151.151 INFO    ] 2026-10-25 18:02:32
[2026-10-25 18:02:32,431.431 INFO    ] 2026-10-25 18:02:32
[2026-10-25 18:02:32,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:02:32,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:02:32,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:02:32,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:02:32,802.802 INFO    ] time= 25/10/2026 18:02:32
[2026-10-25 18:02:32,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:02:32,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:02:32,915.915 INFO    ] No existing commands found in stream
[2026-10-25 18:02:37,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:02:37,949.949 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 18:02:39,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:02:39,385.385 INFO    ] Checking for system updates...
[2026-10-25 18:02:39,422.422 INFO    ] 200
[2026-10-25 18:02:39,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:39,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:02:39,481.481 INFO    ] No update needed
[2026-10-25 18:02:39,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 18:02:39,518.518 INFO    ] 200
[2026-10-25 18:02:39,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:39,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:02:39,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:02:39,694.694 INFO    ] No camera update needed
[2026-10-25 18:02:39,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:02:39,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:02:39,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:02:39,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:02:41,748.748 INFO    ] ================================================
[2026-10-25 18:02:41,764.764 INFO    ] Launching Daemon at Sun Oct 25 18:02:41 IST 2026
[2026-10-25 18:02:41,774.774 INFO    ] ================================================
[2026-10-25 18:02:42,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:02:42
[2026-10-25 18:02:43,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:02:43,437.437 INFO    ] Initializing speech engine...
[2026-10-25 18:02:43,444.444 INFO    ] 2026-10-25 18:02:43
[2026-10-25 18:02:43,729.729 INFO    ] 2026-10-25 18:02:43
[2026-10-25 18:02:43,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:02:43,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:02:43,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:02:44,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:02:44,109.109 INFO    ] time= 25/10/2026 18:02:44
[2026-10-25 18:02:44,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:02:44,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:02:44,292.292 INFO    ] No existing commands found in stream
[2026-10-25 18:02:49,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:02:49,326.326 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 18:02:50,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:02:50,880.880 INFO    ] Checking for system updates...
[2026-10-25 18:02:50,918.918 INFO    ] 200
[2026-10-25 18:02:50,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:50,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:02:50,988.988 INFO    ] No update needed
[2026-10-25 18:02:50,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 18:02:51,029.029 INFO    ] 200
[2026-10-25 18:02:51,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:02:51,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:02:51,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:02:51,128.128 INFO    ] No camera update needed
[2026-10-25 18:02:51,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:02:51,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:02:51,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:02:51,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:02:53,184.184 INFO    ] ================================================
[2026-10-25 18:02:53,199.199 INFO    ] Launching Daemon at Sun Oct 25 18:02:53 IST 2026
[2026-10-25 18:02:53,210.210 INFO    ] ================================================
[2026-10-25 18:02:53,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:02:53
[2026-10-25 18:02:54,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:02:54,615.615 INFO    ] Initializing speech engine...
[2026-10-25 18:02:54,624.624 INFO    ] 2026-10-25 18:02:54
[2026-10-25 18:02:54,913.913 INFO    ] 2026-10-25 18:02:54
[2026-10-25 18:02:54,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:02:55,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:02:55,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:02:55,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:02:55,254.254 INFO    ] time= 25/10/2026 18:02:55
[2026-10-25 18:02:55,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:02:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:02:55,369.369 INFO    ] No existing commands found in stream
[2026-10-25 18:03:00,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:03:00,387.387 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 18:03:04,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:03:04,466.466 INFO    ] Checking for system updates...
[2026-10-25 18:03:04,512.512 INFO    ] 200
[2026-10-25 18:03:04,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:04,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:04,582.582 INFO    ] No update needed
[2026-10-25 18:03:04,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 18:03:04,622.622 INFO    ] 200
[2026-10-25 18:03:04,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:04,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:03:04,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:04,727.727 INFO    ] No camera update needed
[2026-10-25 18:03:04,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:03:04,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:03:04,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:03:04,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:03:06,785.785 INFO    ] ================================================
[2026-10-25 18:03:06,801.801 INFO    ] Launching Daemon at Sun Oct 25 18:03:06 IST 2026
[2026-10-25 18:03:06,811.811 INFO    ] ================================================
[2026-10-25 18:03:07,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:03:07
[2026-10-25 18:03:07,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:03:08,237.237 INFO    ] Initializing speech engine...
[2026-10-25 18:03:08,242.242 INFO    ] 2026-10-25 18:03:08
[2026-10-25 18:03:08,486.486 INFO    ] 2026-10-25 18:03:08
[2026-10-25 18:03:08,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:03:08,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:03:08,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:03:08,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:03:08,973.973 INFO    ] time= 25/10/2026 18:03:08
[2026-10-25 18:03:09,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:03:09,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:03:09,109.109 INFO    ] No existing commands found in stream
[2026-10-25 18:03:14,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:03:14,125.125 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 18:03:16,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:03:16,375.375 INFO    ] Checking for system updates...
[2026-10-25 18:03:16,411.411 INFO    ] 200
[2026-10-25 18:03:16,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:16,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:16,480.480 INFO    ] No update needed
[2026-10-25 18:03:16,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 18:03:16,517.517 INFO    ] 200
[2026-10-25 18:03:16,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:16,565.565 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:03:16,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:16,625.625 INFO    ] No camera update needed
[2026-10-25 18:03:16,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:03:16,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:03:16,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:03:16,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:03:18,680.680 INFO    ] ================================================
[2026-10-25 18:03:18,695.695 INFO    ] Launching Daemon at Sun Oct 25 18:03:18 IST 2026
[2026-10-25 18:03:18,706.706 INFO    ] ================================================
[2026-10-25 18:03:19,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:03:19
[2026-10-25 18:03:20,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:03:20,261.261 INFO    ] Initializing speech engine...
[2026-10-25 18:03:20,276.276 INFO    ] 2026-10-25 18:03:20
[2026-10-25 18:03:20,540.540 INFO    ] 2026-10-25 18:03:20
[2026-10-25 18:03:20,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:03:20,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:03:20,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:03:20,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:03:20,916.916 INFO    ] time= 25/10/2026 18:03:20
[2026-10-25 18:03:20,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:03:20,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:03:21,071.071 INFO    ] No existing commands found in stream
[2026-10-25 18:03:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:03:26,104.104 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 18:03:26,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:03:26,531.531 INFO    ] Checking for system updates...
[2026-10-25 18:03:26,571.571 INFO    ] 200
[2026-10-25 18:03:26,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:26,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:03:26,629.629 INFO    ] No update needed
[2026-10-25 18:03:26,632.632 INFO    ] Checking for camera pi updates...
[2026-10-25 18:03:26,669.669 INFO    ] 200
[2026-10-25 18:03:26,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:26,717.717 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:03:26,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:03:26,780.780 INFO    ] No camera update needed
[2026-10-25 18:03:26,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:03:26,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:03:26,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:03:26,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:03:28,835.835 INFO    ] ================================================
[2026-10-25 18:03:28,849.849 INFO    ] Launching Daemon at Sun Oct 25 18:03:28 IST 2026
[2026-10-25 18:03:28,860.860 INFO    ] ================================================
[2026-10-25 18:03:29,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:03:29
[2026-10-25 18:03:30,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:03:30,256.256 INFO    ] Initializing speech engine...
[2026-10-25 18:03:30,279.279 INFO    ] 2026-10-25 18:03:30
[2026-10-25 18:03:30,533.533 INFO    ] 2026-10-25 18:03:30
[2026-10-25 18:03:30,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:03:31,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:03:31,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:03:31,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:03:31,393.393 INFO    ] time= 25/10/2026 18:03:31
[2026-10-25 18:03:31,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:03:31,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:03:31,559.559 INFO    ] No existing commands found in stream
[2026-10-25 18:03:36,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:03:36,580.580 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 18:03:40,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:03:40,469.469 INFO    ] Checking for system updates...
[2026-10-25 18:03:40,511.511 INFO    ] 200
[2026-10-25 18:03:40,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:40,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:40,568.568 INFO    ] No update needed
[2026-10-25 18:03:40,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 18:03:40,609.609 INFO    ] 200
[2026-10-25 18:03:40,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:40,653.653 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:03:40,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:40,825.825 INFO    ] No camera update needed
[2026-10-25 18:03:40,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:03:40,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:03:40,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:03:40,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:03:42,882.882 INFO    ] ================================================
[2026-10-25 18:03:42,898.898 INFO    ] Launching Daemon at Sun Oct 25 18:03:42 IST 2026
[2026-10-25 18:03:42,910.910 INFO    ] ================================================
[2026-10-25 18:03:43,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:03:43
[2026-10-25 18:03:44,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:03:44,336.336 INFO    ] Initializing speech engine...
[2026-10-25 18:03:44,350.350 INFO    ] 2026-10-25 18:03:44
[2026-10-25 18:03:44,607.607 INFO    ] 2026-10-25 18:03:44
[2026-10-25 18:03:44,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:03:44,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:03:44,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:03:45,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:03:45,092.092 INFO    ] time= 25/10/2026 18:03:45
[2026-10-25 18:03:45,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:03:45,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:03:45,246.246 INFO    ] No existing commands found in stream
[2026-10-25 18:03:50,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:03:50,260.260 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 18:03:53,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:03:53,091.091 INFO    ] Checking for system updates...
[2026-10-25 18:03:53,128.128 INFO    ] 200
[2026-10-25 18:03:53,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:53,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:53,185.185 INFO    ] No update needed
[2026-10-25 18:03:53,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 18:03:53,221.221 INFO    ] 200
[2026-10-25 18:03:53,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:03:53,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:03:53,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:03:53,321.321 INFO    ] No camera update needed
[2026-10-25 18:03:53,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:03:53,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:03:53,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:03:53,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:03:55,379.379 INFO    ] ================================================
[2026-10-25 18:03:55,395.395 INFO    ] Launching Daemon at Sun Oct 25 18:03:55 IST 2026
[2026-10-25 18:03:55,406.406 INFO    ] ================================================
[2026-10-25 18:03:55,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:03:55
[2026-10-25 18:03:56,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:03:56,871.871 INFO    ] Initializing speech engine...
[2026-10-25 18:03:56,880.880 INFO    ] 2026-10-25 18:03:56
[2026-10-25 18:03:57,141.141 INFO    ] 2026-10-25 18:03:57
[2026-10-25 18:03:57,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:03:57,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:03:57,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:03:57,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:03:57,601.601 INFO    ] time= 25/10/2026 18:03:57
[2026-10-25 18:03:57,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:03:57,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:03:57,749.749 INFO    ] No existing commands found in stream
[2026-10-25 18:04:02,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:04:02,764.764 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 18:04:05,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:04:05,465.465 INFO    ] Checking for system updates...
[2026-10-25 18:04:05,502.502 INFO    ] 200
[2026-10-25 18:04:05,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:05,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:05,570.570 INFO    ] No update needed
[2026-10-25 18:04:05,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 18:04:05,611.611 INFO    ] 200
[2026-10-25 18:04:05,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:05,659.659 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:04:05,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:05,712.712 INFO    ] No camera update needed
[2026-10-25 18:04:05,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:04:05,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:04:05,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:04:05,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:04:07,769.769 INFO    ] ================================================
[2026-10-25 18:04:07,785.785 INFO    ] Launching Daemon at Sun Oct 25 18:04:07 IST 2026
[2026-10-25 18:04:07,797.797 INFO    ] ================================================
[2026-10-25 18:04:08,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:04:08
[2026-10-25 18:04:08,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:04:09,248.248 INFO    ] Initializing speech engine...
[2026-10-25 18:04:09,256.256 INFO    ] 2026-10-25 18:04:09
[2026-10-25 18:04:09,533.533 INFO    ] 2026-10-25 18:04:09
[2026-10-25 18:04:09,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:04:09,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:04:09,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:04:09,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:04:10,041.041 INFO    ] time= 25/10/2026 18:04:09
[2026-10-25 18:04:10,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:04:10,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:04:10,173.173 INFO    ] No existing commands found in stream
[2026-10-25 18:04:15,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:04:15,186.186 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 18:04:19,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:04:19,375.375 INFO    ] Checking for system updates...
[2026-10-25 18:04:19,412.412 INFO    ] 200
[2026-10-25 18:04:19,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:19,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:04:19,474.474 INFO    ] No update needed
[2026-10-25 18:04:19,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 18:04:19,511.511 INFO    ] 200
[2026-10-25 18:04:19,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:19,555.555 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:04:19,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:04:19,614.614 INFO    ] No camera update needed
[2026-10-25 18:04:19,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:04:19,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:04:19,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:04:19,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:04:21,671.671 INFO    ] ================================================
[2026-10-25 18:04:21,687.687 INFO    ] Launching Daemon at Sun Oct 25 18:04:21 IST 2026
[2026-10-25 18:04:21,698.698 INFO    ] ================================================
[2026-10-25 18:04:22,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:04:22
[2026-10-25 18:04:23,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:04:23,311.311 INFO    ] Initializing speech engine...
[2026-10-25 18:04:23,319.319 INFO    ] 2026-10-25 18:04:23
[2026-10-25 18:04:23,597.597 INFO    ] 2026-10-25 18:04:23
[2026-10-25 18:04:23,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:04:23,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:04:23,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:04:24,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:04:24,079.079 INFO    ] time= 25/10/2026 18:04:24
[2026-10-25 18:04:24,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:04:24,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:04:24,215.215 INFO    ] No existing commands found in stream
[2026-10-25 18:04:29,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:04:29,232.232 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 18:04:33,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:04:33,935.935 INFO    ] Checking for system updates...
[2026-10-25 18:04:33,972.972 INFO    ] 200
[2026-10-25 18:04:33,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:34,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:34,032.032 INFO    ] No update needed
[2026-10-25 18:04:34,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 18:04:34,071.071 INFO    ] 200
[2026-10-25 18:04:34,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:34,122.122 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:04:34,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:34,179.179 INFO    ] No camera update needed
[2026-10-25 18:04:34,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:04:34,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:04:34,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:04:34,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:04:36,234.234 INFO    ] ================================================
[2026-10-25 18:04:36,250.250 INFO    ] Launching Daemon at Sun Oct 25 18:04:36 IST 2026
[2026-10-25 18:04:36,262.262 INFO    ] ================================================
[2026-10-25 18:04:36,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:04:36
[2026-10-25 18:04:37,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:04:37,820.820 INFO    ] Initializing speech engine...
[2026-10-25 18:04:37,847.847 INFO    ] 2026-10-25 18:04:37
[2026-10-25 18:04:38,110.110 INFO    ] 2026-10-25 18:04:38
[2026-10-25 18:04:38,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:04:38,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:04:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:04:38,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:04:38,481.481 INFO    ] time= 25/10/2026 18:04:38
[2026-10-25 18:04:38,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:04:38,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:04:38,679.679 INFO    ] No existing commands found in stream
[2026-10-25 18:04:43,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:04:43,693.693 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 18:04:45,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:04:45,729.729 INFO    ] Checking for system updates...
[2026-10-25 18:04:45,770.770 INFO    ] 200
[2026-10-25 18:04:45,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:45,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:45,837.837 INFO    ] No update needed
[2026-10-25 18:04:45,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 18:04:45,874.874 INFO    ] 200
[2026-10-25 18:04:45,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:45,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:04:45,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:04:45,990.990 INFO    ] No camera update needed
[2026-10-25 18:04:45,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:04:45,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:04:46,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:04:46,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:04:48,051.051 INFO    ] ================================================
[2026-10-25 18:04:48,068.068 INFO    ] Launching Daemon at Sun Oct 25 18:04:48 IST 2026
[2026-10-25 18:04:48,079.079 INFO    ] ================================================
[2026-10-25 18:04:48,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:04:48
[2026-10-25 18:04:49,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:04:49,779.779 INFO    ] Initializing speech engine...
[2026-10-25 18:04:49,790.790 INFO    ] 2026-10-25 18:04:49
[2026-10-25 18:04:50,067.067 INFO    ] 2026-10-25 18:04:50
[2026-10-25 18:04:50,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:04:50,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:04:50,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:04:50,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:04:50,946.946 INFO    ] time= 25/10/2026 18:04:50
[2026-10-25 18:04:51,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:04:51,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:04:51,189.189 INFO    ] No existing commands found in stream
[2026-10-25 18:04:56,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:04:56,222.222 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 18:04:58,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:04:58,761.761 INFO    ] Checking for system updates...
[2026-10-25 18:04:58,799.799 INFO    ] 200
[2026-10-25 18:04:58,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:58,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:04:58,860.860 INFO    ] No update needed
[2026-10-25 18:04:58,863.863 INFO    ] Checking for camera pi updates...
[2026-10-25 18:04:58,897.897 INFO    ] 200
[2026-10-25 18:04:58,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:04:58,940.940 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:04:58,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:04:58,997.997 INFO    ] No camera update needed
[2026-10-25 18:04:58,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:04:59,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:04:59,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:04:59,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:05:01,052.052 INFO    ] ================================================
[2026-10-25 18:05:01,067.067 INFO    ] Launching Daemon at Sun Oct 25 18:05:01 IST 2026
[2026-10-25 18:05:01,079.079 INFO    ] ================================================
[2026-10-25 18:05:01,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:05:01
[2026-10-25 18:05:02,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:05:02,890.890 INFO    ] Initializing speech engine...
[2026-10-25 18:05:02,898.898 INFO    ] 2026-10-25 18:05:02
[2026-10-25 18:05:03,200.200 INFO    ] 2026-10-25 18:05:03
[2026-10-25 18:05:03,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:05:04,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:05:04,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:05:05,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:05:05,216.216 INFO    ] time= 25/10/2026 18:05:05
[2026-10-25 18:05:05,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:05:05,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:05:05,289.289 INFO    ] No existing commands found in stream
[2026-10-25 18:05:10,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:05:10,304.304 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 18:05:12,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:05:12,035.035 INFO    ] Checking for system updates...
[2026-10-25 18:05:12,076.076 INFO    ] 200
[2026-10-25 18:05:12,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:12,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:12,144.144 INFO    ] No update needed
[2026-10-25 18:05:12,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 18:05:12,180.180 INFO    ] 200
[2026-10-25 18:05:12,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:12,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:05:12,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:12,272.272 INFO    ] No camera update needed
[2026-10-25 18:05:12,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:05:12,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:05:12,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:05:12,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:05:14,330.330 INFO    ] ================================================
[2026-10-25 18:05:14,346.346 INFO    ] Launching Daemon at Sun Oct 25 18:05:14 IST 2026
[2026-10-25 18:05:14,356.356 INFO    ] ================================================
[2026-10-25 18:05:14,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:05:14
[2026-10-25 18:05:15,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:05:15,784.784 INFO    ] Initializing speech engine...
[2026-10-25 18:05:15,791.791 INFO    ] 2026-10-25 18:05:15
[2026-10-25 18:05:16,098.098 INFO    ] 2026-10-25 18:05:16
[2026-10-25 18:05:16,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:05:16,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:05:16,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:05:16,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:05:16,485.485 INFO    ] time= 25/10/2026 18:05:16
[2026-10-25 18:05:16,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:05:16,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:05:16,615.615 INFO    ] No existing commands found in stream
[2026-10-25 18:05:21,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:05:21,629.629 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 18:05:25,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:05:25,936.936 INFO    ] Checking for system updates...
[2026-10-25 18:05:25,973.973 INFO    ] 200
[2026-10-25 18:05:25,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:26,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:26,044.044 INFO    ] No update needed
[2026-10-25 18:05:26,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 18:05:26,079.079 INFO    ] 200
[2026-10-25 18:05:26,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:26,123.123 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:05:26,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:26,173.173 INFO    ] No camera update needed
[2026-10-25 18:05:26,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:05:26,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:05:26,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:05:26,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:05:28,228.228 INFO    ] ================================================
[2026-10-25 18:05:28,244.244 INFO    ] Launching Daemon at Sun Oct 25 18:05:28 IST 2026
[2026-10-25 18:05:28,255.255 INFO    ] ================================================
[2026-10-25 18:05:28,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:05:28
[2026-10-25 18:05:29,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:05:29,764.764 INFO    ] Initializing speech engine...
[2026-10-25 18:05:29,775.775 INFO    ] 2026-10-25 18:05:29
[2026-10-25 18:05:30,087.087 INFO    ] 2026-10-25 18:05:30
[2026-10-25 18:05:30,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:05:30,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:05:30,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:05:30,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:05:30,596.596 INFO    ] time= 25/10/2026 18:05:30
[2026-10-25 18:05:30,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:05:30,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:05:30,750.750 INFO    ] No existing commands found in stream
[2026-10-25 18:05:35,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:05:35,768.768 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 18:05:37,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:05:37,041.041 INFO    ] Checking for system updates...
[2026-10-25 18:05:37,084.084 INFO    ] 200
[2026-10-25 18:05:37,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:37,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:37,145.145 INFO    ] No update needed
[2026-10-25 18:05:37,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 18:05:37,184.184 INFO    ] 200
[2026-10-25 18:05:37,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:37,230.230 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:05:37,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:05:37,295.295 INFO    ] No camera update needed
[2026-10-25 18:05:37,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:05:37,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:05:37,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:05:37,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:05:39,355.355 INFO    ] ================================================
[2026-10-25 18:05:39,370.370 INFO    ] Launching Daemon at Sun Oct 25 18:05:39 IST 2026
[2026-10-25 18:05:39,381.381 INFO    ] ================================================
[2026-10-25 18:05:40,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:05:40
[2026-10-25 18:05:40,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:05:41,063.063 INFO    ] Initializing speech engine...
[2026-10-25 18:05:41,078.078 INFO    ] 2026-10-25 18:05:41
[2026-10-25 18:05:41,393.393 INFO    ] 2026-10-25 18:05:41
[2026-10-25 18:05:41,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:05:41,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:05:41,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:05:41,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:05:41,906.906 INFO    ] time= 25/10/2026 18:05:41
[2026-10-25 18:05:41,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:05:41,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:05:42,055.055 INFO    ] No existing commands found in stream
[2026-10-25 18:05:47,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:05:47,077.077 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 18:05:49,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:05:49,289.289 INFO    ] Checking for system updates...
[2026-10-25 18:05:49,331.331 INFO    ] 200
[2026-10-25 18:05:49,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:49,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:05:49,401.401 INFO    ] No update needed
[2026-10-25 18:05:49,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 18:05:49,444.444 INFO    ] 200
[2026-10-25 18:05:49,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:05:49,489.489 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:05:49,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:05:49,650.650 INFO    ] No camera update needed
[2026-10-25 18:05:49,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:05:49,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:05:49,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:05:49,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:05:51,711.711 INFO    ] ================================================
[2026-10-25 18:05:51,727.727 INFO    ] Launching Daemon at Sun Oct 25 18:05:51 IST 2026
[2026-10-25 18:05:51,738.738 INFO    ] ================================================
[2026-10-25 18:05:52,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:05:52
[2026-10-25 18:05:52,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:05:53,141.141 INFO    ] Initializing speech engine...
[2026-10-25 18:05:53,150.150 INFO    ] 2026-10-25 18:05:53
[2026-10-25 18:05:53,446.446 INFO    ] 2026-10-25 18:05:53
[2026-10-25 18:05:53,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:05:53,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:05:53,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:05:53,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:05:53,834.834 INFO    ] time= 25/10/2026 18:05:53
[2026-10-25 18:05:53,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:05:53,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:05:53,961.961 INFO    ] No existing commands found in stream
[2026-10-25 18:05:58,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:05:58,976.976 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 18:06:00,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:06:00,568.568 INFO    ] Checking for system updates...
[2026-10-25 18:06:00,610.610 INFO    ] 200
[2026-10-25 18:06:00,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:00,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:00,667.667 INFO    ] No update needed
[2026-10-25 18:06:00,670.670 INFO    ] Checking for camera pi updates...
[2026-10-25 18:06:00,710.710 INFO    ] 200
[2026-10-25 18:06:00,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:00,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:06:00,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:00,813.813 INFO    ] No camera update needed
[2026-10-25 18:06:00,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:06:00,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:06:00,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:06:00,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:06:02,876.876 INFO    ] ================================================
[2026-10-25 18:06:02,897.897 INFO    ] Launching Daemon at Sun Oct 25 18:06:02 IST 2026
[2026-10-25 18:06:02,912.912 INFO    ] ================================================
[2026-10-25 18:06:03,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:06:03
[2026-10-25 18:06:04,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:06:04,377.377 INFO    ] Initializing speech engine...
[2026-10-25 18:06:04,391.391 INFO    ] 2026-10-25 18:06:04
[2026-10-25 18:06:04,679.679 INFO    ] 2026-10-25 18:06:04
[2026-10-25 18:06:04,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:06:07,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:06:07,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:06:07,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:06:07,426.426 INFO    ] time= 25/10/2026 18:06:07
[2026-10-25 18:06:07,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:06:07,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:06:07,540.540 INFO    ] No existing commands found in stream
[2026-10-25 18:06:12,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:06:12,555.555 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 18:06:15,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:06:15,712.712 INFO    ] Checking for system updates...
[2026-10-25 18:06:15,748.748 INFO    ] 200
[2026-10-25 18:06:15,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:15,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:06:15,806.806 INFO    ] No update needed
[2026-10-25 18:06:15,809.809 INFO    ] Checking for camera pi updates...
[2026-10-25 18:06:15,843.843 INFO    ] 200
[2026-10-25 18:06:15,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:15,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:06:15,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:06:15,939.939 INFO    ] No camera update needed
[2026-10-25 18:06:15,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:06:15,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:06:15,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:06:15,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:06:18,995.995 INFO    ] ================================================
[2026-10-25 18:06:18,011.011 INFO    ] Launching Daemon at Sun Oct 25 18:06:18 IST 2026
[2026-10-25 18:06:18,022.022 INFO    ] ================================================
[2026-10-25 18:06:18,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:06:18
[2026-10-25 18:06:19,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:06:19,674.674 INFO    ] Initializing speech engine...
[2026-10-25 18:06:19,686.686 INFO    ] 2026-10-25 18:06:19
[2026-10-25 18:06:19,971.971 INFO    ] 2026-10-25 18:06:19
[2026-10-25 18:06:20,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:06:20,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:06:20,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:06:20,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:06:20,505.505 INFO    ] time= 25/10/2026 18:06:20
[2026-10-25 18:06:20,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:06:20,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:06:20,661.661 INFO    ] No existing commands found in stream
[2026-10-25 18:06:25,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:06:25,678.678 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 18:06:26,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:06:26,356.356 INFO    ] Checking for system updates...
[2026-10-25 18:06:26,394.394 INFO    ] 200
[2026-10-25 18:06:26,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:26,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:26,455.455 INFO    ] No update needed
[2026-10-25 18:06:26,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 18:06:26,494.494 INFO    ] 200
[2026-10-25 18:06:26,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:26,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:06:26,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:26,596.596 INFO    ] No camera update needed
[2026-10-25 18:06:26,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:06:26,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:06:26,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:06:26,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:06:28,655.655 INFO    ] ================================================
[2026-10-25 18:06:28,671.671 INFO    ] Launching Daemon at Sun Oct 25 18:06:28 IST 2026
[2026-10-25 18:06:28,683.683 INFO    ] ================================================
[2026-10-25 18:06:29,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:06:29
[2026-10-25 18:06:30,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:06:30,329.329 INFO    ] Initializing speech engine...
[2026-10-25 18:06:30,341.341 INFO    ] 2026-10-25 18:06:30
[2026-10-25 18:06:30,655.655 INFO    ] 2026-10-25 18:06:30
[2026-10-25 18:06:30,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:06:30,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:06:30,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:06:31,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:06:31,083.083 INFO    ] time= 25/10/2026 18:06:31
[2026-10-25 18:06:31,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:06:31,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:06:31,223.223 INFO    ] No existing commands found in stream
[2026-10-25 18:06:36,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:06:36,239.239 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 18:06:38,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:06:38,732.732 INFO    ] Checking for system updates...
[2026-10-25 18:06:38,770.770 INFO    ] 200
[2026-10-25 18:06:38,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:38,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:38,838.838 INFO    ] No update needed
[2026-10-25 18:06:38,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 18:06:38,876.876 INFO    ] 200
[2026-10-25 18:06:38,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:38,926.926 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:06:38,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:06:38,965.965 INFO    ] No camera update needed
[2026-10-25 18:06:38,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:06:38,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:06:38,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:06:38,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:06:41,023.023 INFO    ] ================================================
[2026-10-25 18:06:41,038.038 INFO    ] Launching Daemon at Sun Oct 25 18:06:41 IST 2026
[2026-10-25 18:06:41,049.049 INFO    ] ================================================
[2026-10-25 18:06:41,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:06:41
[2026-10-25 18:06:42,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:06:42,442.442 INFO    ] Initializing speech engine...
[2026-10-25 18:06:42,457.457 INFO    ] 2026-10-25 18:06:42
[2026-10-25 18:06:42,720.720 INFO    ] 2026-10-25 18:06:42
[2026-10-25 18:06:42,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:06:42,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:06:43,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:06:43,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:06:43,205.205 INFO    ] time= 25/10/2026 18:06:43
[2026-10-25 18:06:43,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:06:43,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:06:43,350.350 INFO    ] No existing commands found in stream
[2026-10-25 18:06:48,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:06:48,365.365 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 18:06:48,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:06:48,804.804 INFO    ] Checking for system updates...
[2026-10-25 18:06:48,841.841 INFO    ] 200
[2026-10-25 18:06:48,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:48,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:06:48,909.909 INFO    ] No update needed
[2026-10-25 18:06:48,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 18:06:48,954.954 INFO    ] 200
[2026-10-25 18:06:48,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:06:48,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:06:49,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:06:49,042.042 INFO    ] No camera update needed
[2026-10-25 18:06:49,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:06:49,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:06:49,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:06:49,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:06:51,102.102 INFO    ] ================================================
[2026-10-25 18:06:51,118.118 INFO    ] Launching Daemon at Sun Oct 25 18:06:51 IST 2026
[2026-10-25 18:06:51,128.128 INFO    ] ================================================
[2026-10-25 18:06:51,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:06:51
[2026-10-25 18:06:52,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:06:52,521.521 INFO    ] Initializing speech engine...
[2026-10-25 18:06:52,529.529 INFO    ] 2026-10-25 18:06:52
[2026-10-25 18:06:52,803.803 INFO    ] 2026-10-25 18:06:52
[2026-10-25 18:06:52,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:06:53,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:06:53,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:06:53,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:06:53,179.179 INFO    ] time= 25/10/2026 18:06:53
[2026-10-25 18:06:53,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:06:53,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:06:53,254.254 INFO    ] No existing commands found in stream
[2026-10-25 18:06:58,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:06:58,269.269 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 18:07:01,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:07:01,342.342 INFO    ] Checking for system updates...
[2026-10-25 18:07:01,382.382 INFO    ] 200
[2026-10-25 18:07:01,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:01,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:01,441.441 INFO    ] No update needed
[2026-10-25 18:07:01,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 18:07:01,477.477 INFO    ] 200
[2026-10-25 18:07:01,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:01,527.527 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:07:01,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:01,568.568 INFO    ] No camera update needed
[2026-10-25 18:07:01,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:07:01,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:07:01,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:07:01,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:07:03,628.628 INFO    ] ================================================
[2026-10-25 18:07:03,646.646 INFO    ] Launching Daemon at Sun Oct 25 18:07:03 IST 2026
[2026-10-25 18:07:03,657.657 INFO    ] ================================================
[2026-10-25 18:07:04,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:07:04
[2026-10-25 18:07:04,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:07:05,094.094 INFO    ] Initializing speech engine...
[2026-10-25 18:07:05,109.109 INFO    ] 2026-10-25 18:07:05
[2026-10-25 18:07:05,374.374 INFO    ] 2026-10-25 18:07:05
[2026-10-25 18:07:05,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:07:09,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:07:09,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:07:09,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:07:09,676.676 INFO    ] time= 25/10/2026 18:07:09
[2026-10-25 18:07:09,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:07:09,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:07:09,735.735 INFO    ] No existing commands found in stream
[2026-10-25 18:07:14,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:07:14,746.746 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 18:07:15,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:07:15,703.703 INFO    ] Checking for system updates...
[2026-10-25 18:07:15,739.739 INFO    ] 200
[2026-10-25 18:07:15,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 18:07:15,744.744 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 18:07:15,746.746 INFO    ] Checking for camera pi updates...
[2026-10-25 18:07:15,784.784 INFO    ] 200
[2026-10-25 18:07:15,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 18:07:15,789.789 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 18:07:15,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:07:15,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:07:15,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:07:15,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:07:17,845.845 INFO    ] ================================================
[2026-10-25 18:07:17,862.862 INFO    ] Launching Daemon at Sun Oct 25 18:07:17 IST 2026
[2026-10-25 18:07:17,872.872 INFO    ] ================================================
[2026-10-25 18:07:18,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:07:18
[2026-10-25 18:07:19,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:07:19,274.274 INFO    ] Initializing speech engine...
[2026-10-25 18:07:19,283.283 INFO    ] 2026-10-25 18:07:19
[2026-10-25 18:07:19,577.577 INFO    ] 2026-10-25 18:07:19
[2026-10-25 18:07:19,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:07:19,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:07:19,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:07:19,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:07:19,994.994 INFO    ] time= 25/10/2026 18:07:19
[2026-10-25 18:07:20,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:07:20,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:07:20,083.083 INFO    ] No existing commands found in stream
[2026-10-25 18:07:25,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:07:25,098.098 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 18:07:28,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:07:28,085.085 INFO    ] Checking for system updates...
[2026-10-25 18:07:28,122.122 INFO    ] 200
[2026-10-25 18:07:28,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:28,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:28,180.180 INFO    ] No update needed
[2026-10-25 18:07:28,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 18:07:28,217.217 INFO    ] 200
[2026-10-25 18:07:28,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:28,260.260 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:07:28,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:28,321.321 INFO    ] No camera update needed
[2026-10-25 18:07:28,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:07:28,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:07:28,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:07:28,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:07:30,376.376 INFO    ] ================================================
[2026-10-25 18:07:30,391.391 INFO    ] Launching Daemon at Sun Oct 25 18:07:30 IST 2026
[2026-10-25 18:07:30,403.403 INFO    ] ================================================
[2026-10-25 18:07:30,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:07:30
[2026-10-25 18:07:31,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:07:31,848.848 INFO    ] Initializing speech engine...
[2026-10-25 18:07:31,857.857 INFO    ] 2026-10-25 18:07:31
[2026-10-25 18:07:32,145.145 INFO    ] 2026-10-25 18:07:32
[2026-10-25 18:07:32,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:07:32,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:07:32,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:07:32,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:07:32,540.540 INFO    ] time= 25/10/2026 18:07:32
[2026-10-25 18:07:32,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:07:32,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:07:32,630.630 INFO    ] No existing commands found in stream
[2026-10-25 18:07:37,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:07:37,644.644 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 18:07:41,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:07:41,226.226 INFO    ] Checking for system updates...
[2026-10-25 18:07:41,265.265 INFO    ] 200
[2026-10-25 18:07:41,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:41,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:07:41,329.329 INFO    ] No update needed
[2026-10-25 18:07:41,332.332 INFO    ] Checking for camera pi updates...
[2026-10-25 18:07:41,369.369 INFO    ] 200
[2026-10-25 18:07:41,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:41,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:07:41,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:07:41,470.470 INFO    ] No camera update needed
[2026-10-25 18:07:41,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:07:41,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:07:41,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:07:41,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:07:43,527.527 INFO    ] ================================================
[2026-10-25 18:07:43,543.543 INFO    ] Launching Daemon at Sun Oct 25 18:07:43 IST 2026
[2026-10-25 18:07:43,554.554 INFO    ] ================================================
[2026-10-25 18:07:44,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:07:44
[2026-10-25 18:07:44,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:07:44,994.994 INFO    ] Initializing speech engine...
[2026-10-25 18:07:45,007.007 INFO    ] 2026-10-25 18:07:44
[2026-10-25 18:07:45,273.273 INFO    ] 2026-10-25 18:07:45
[2026-10-25 18:07:45,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:07:45,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:07:45,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:07:45,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:07:45,652.652 INFO    ] time= 25/10/2026 18:07:45
[2026-10-25 18:07:45,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:07:45,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:07:45,795.795 INFO    ] No existing commands found in stream
[2026-10-25 18:07:50,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:07:50,823.823 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 18:07:53,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:07:53,821.821 INFO    ] Checking for system updates...
[2026-10-25 18:07:53,857.857 INFO    ] 200
[2026-10-25 18:07:53,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:53,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:53,932.932 INFO    ] No update needed
[2026-10-25 18:07:53,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 18:07:53,974.974 INFO    ] 200
[2026-10-25 18:07:53,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:07:54,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:07:54,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:07:54,186.186 INFO    ] No camera update needed
[2026-10-25 18:07:54,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:07:54,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:07:54,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:07:54,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:07:56,247.247 INFO    ] ================================================
[2026-10-25 18:07:56,265.265 INFO    ] Launching Daemon at Sun Oct 25 18:07:56 IST 2026
[2026-10-25 18:07:56,277.277 INFO    ] ================================================
[2026-10-25 18:07:56,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:07:56
[2026-10-25 18:07:57,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:07:57,703.703 INFO    ] Initializing speech engine...
[2026-10-25 18:07:57,713.713 INFO    ] 2026-10-25 18:07:57
[2026-10-25 18:07:57,962.962 INFO    ] 2026-10-25 18:07:57
[2026-10-25 18:07:57,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:07:58,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:07:58,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:07:58,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:07:58,447.447 INFO    ] time= 25/10/2026 18:07:58
[2026-10-25 18:07:58,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:07:58,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:07:58,593.593 INFO    ] No existing commands found in stream
[2026-10-25 18:08:03,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:08:03,608.608 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 18:08:07,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:08:07,221.221 INFO    ] Checking for system updates...
[2026-10-25 18:08:07,258.258 INFO    ] 200
[2026-10-25 18:08:07,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:07,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:07,318.318 INFO    ] No update needed
[2026-10-25 18:08:07,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 18:08:07,359.359 INFO    ] 200
[2026-10-25 18:08:07,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:07,409.409 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:08:07,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:07,465.465 INFO    ] No camera update needed
[2026-10-25 18:08:07,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:08:07,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:08:07,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:08:07,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:08:09,525.525 INFO    ] ================================================
[2026-10-25 18:08:09,541.541 INFO    ] Launching Daemon at Sun Oct 25 18:08:09 IST 2026
[2026-10-25 18:08:09,557.557 INFO    ] ================================================
[2026-10-25 18:08:10,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:08:10
[2026-10-25 18:08:10,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:08:10,978.978 INFO    ] Initializing speech engine...
[2026-10-25 18:08:10,987.987 INFO    ] 2026-10-25 18:08:10
[2026-10-25 18:08:11,238.238 INFO    ] 2026-10-25 18:08:11
[2026-10-25 18:08:11,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:08:11,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:08:11,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:08:12,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:08:12,135.135 INFO    ] time= 25/10/2026 18:08:12
[2026-10-25 18:08:12,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:08:12,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:08:12,368.368 INFO    ] No existing commands found in stream
[2026-10-25 18:08:17,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:08:17,406.406 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 18:08:19,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:08:19,381.381 INFO    ] Checking for system updates...
[2026-10-25 18:08:19,422.422 INFO    ] 200
[2026-10-25 18:08:19,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:19,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:08:19,483.483 INFO    ] No update needed
[2026-10-25 18:08:19,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 18:08:19,520.520 INFO    ] 200
[2026-10-25 18:08:19,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:19,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:08:19,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:08:19,628.628 INFO    ] No camera update needed
[2026-10-25 18:08:19,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:08:19,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:08:19,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:08:19,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:08:21,684.684 INFO    ] ================================================
[2026-10-25 18:08:21,700.700 INFO    ] Launching Daemon at Sun Oct 25 18:08:21 IST 2026
[2026-10-25 18:08:21,711.711 INFO    ] ================================================
[2026-10-25 18:08:22,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:08:22
[2026-10-25 18:08:22,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:08:23,191.191 INFO    ] Initializing speech engine...
[2026-10-25 18:08:23,210.210 INFO    ] 2026-10-25 18:08:23
[2026-10-25 18:08:23,455.455 INFO    ] 2026-10-25 18:08:23
[2026-10-25 18:08:23,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:08:23,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:08:23,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:08:23,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:08:23,804.804 INFO    ] time= 25/10/2026 18:08:23
[2026-10-25 18:08:23,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:08:23,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:08:23,897.897 INFO    ] No existing commands found in stream
[2026-10-25 18:08:28,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:08:28,913.913 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 18:08:29,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:08:29,976.976 INFO    ] Checking for system updates...
[2026-10-25 18:08:30,017.017 INFO    ] 200
[2026-10-25 18:08:30,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:30,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:30,077.077 INFO    ] No update needed
[2026-10-25 18:08:30,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 18:08:30,115.115 INFO    ] 200
[2026-10-25 18:08:30,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:30,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:08:30,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:30,217.217 INFO    ] No camera update needed
[2026-10-25 18:08:30,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:08:30,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:08:30,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:08:30,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:08:32,279.279 INFO    ] ================================================
[2026-10-25 18:08:32,296.296 INFO    ] Launching Daemon at Sun Oct 25 18:08:32 IST 2026
[2026-10-25 18:08:32,308.308 INFO    ] ================================================
[2026-10-25 18:08:32,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:08:32
[2026-10-25 18:08:33,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:08:33,839.839 INFO    ] Initializing speech engine...
[2026-10-25 18:08:33,855.855 INFO    ] 2026-10-25 18:08:33
[2026-10-25 18:08:34,138.138 INFO    ] 2026-10-25 18:08:34
[2026-10-25 18:08:34,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:08:34,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:08:34,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:08:34,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:08:34,565.565 INFO    ] time= 25/10/2026 18:08:34
[2026-10-25 18:08:34,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:08:34,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:08:34,725.725 INFO    ] No existing commands found in stream
[2026-10-25 18:08:39,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:08:39,754.754 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 18:08:43,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:08:43,500.500 INFO    ] Checking for system updates...
[2026-10-25 18:08:43,536.536 INFO    ] 200
[2026-10-25 18:08:43,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:43,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:08:43,601.601 INFO    ] No update needed
[2026-10-25 18:08:43,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 18:08:43,641.641 INFO    ] 200
[2026-10-25 18:08:43,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:43,685.685 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:08:43,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:08:43,752.752 INFO    ] No camera update needed
[2026-10-25 18:08:43,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:08:43,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:08:43,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:08:43,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:08:45,808.808 INFO    ] ================================================
[2026-10-25 18:08:45,825.825 INFO    ] Launching Daemon at Sun Oct 25 18:08:45 IST 2026
[2026-10-25 18:08:45,836.836 INFO    ] ================================================
[2026-10-25 18:08:46,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:08:46
[2026-10-25 18:08:47,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:08:47,381.381 INFO    ] Initializing speech engine...
[2026-10-25 18:08:47,388.388 INFO    ] 2026-10-25 18:08:47
[2026-10-25 18:08:47,684.684 INFO    ] 2026-10-25 18:08:47
[2026-10-25 18:08:47,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:08:47,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:08:47,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:08:48,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:08:48,039.039 INFO    ] time= 25/10/2026 18:08:48
[2026-10-25 18:08:48,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:08:48,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:08:48,121.121 INFO    ] No existing commands found in stream
[2026-10-25 18:08:53,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:08:53,136.136 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 18:08:53,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:08:53,771.771 INFO    ] Checking for system updates...
[2026-10-25 18:08:53,807.807 INFO    ] 200
[2026-10-25 18:08:53,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:53,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:53,869.869 INFO    ] No update needed
[2026-10-25 18:08:53,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 18:08:53,909.909 INFO    ] 200
[2026-10-25 18:08:53,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:08:53,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:08:54,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:08:54,010.010 INFO    ] No camera update needed
[2026-10-25 18:08:54,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:08:54,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:08:54,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:08:54,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:08:56,066.066 INFO    ] ================================================
[2026-10-25 18:08:56,082.082 INFO    ] Launching Daemon at Sun Oct 25 18:08:56 IST 2026
[2026-10-25 18:08:56,093.093 INFO    ] ================================================
[2026-10-25 18:08:56,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:08:56
[2026-10-25 18:08:57,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:08:57,735.735 INFO    ] Initializing speech engine...
[2026-10-25 18:08:57,740.740 INFO    ] 2026-10-25 18:08:57
[2026-10-25 18:08:58,016.016 INFO    ] 2026-10-25 18:08:58
[2026-10-25 18:08:58,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:08:58,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:08:58,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:08:58,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:08:58,494.494 INFO    ] time= 25/10/2026 18:08:58
[2026-10-25 18:08:58,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:08:58,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:08:58,654.654 INFO    ] No existing commands found in stream
[2026-10-25 18:09:03,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:09:03,666.666 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 18:09:07,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:09:07,678.678 INFO    ] Checking for system updates...
[2026-10-25 18:09:07,715.715 INFO    ] 200
[2026-10-25 18:09:07,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:07,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:09:07,774.774 INFO    ] No update needed
[2026-10-25 18:09:07,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 18:09:07,810.810 INFO    ] 200
[2026-10-25 18:09:07,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:07,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:09:07,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:09:07,914.914 INFO    ] No camera update needed
[2026-10-25 18:09:07,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:09:07,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:09:07,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:09:07,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:09:09,969.969 INFO    ] ================================================
[2026-10-25 18:09:09,985.985 INFO    ] Launching Daemon at Sun Oct 25 18:09:09 IST 2026
[2026-10-25 18:09:10,995.995 INFO    ] ================================================
[2026-10-25 18:09:10,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:09:10
[2026-10-25 18:09:11,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:09:11,426.426 INFO    ] Initializing speech engine...
[2026-10-25 18:09:11,435.435 INFO    ] 2026-10-25 18:09:11
[2026-10-25 18:09:11,697.697 INFO    ] 2026-10-25 18:09:11
[2026-10-25 18:09:11,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:09:14,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:09:14,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:09:14,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:09:14,748.748 INFO    ] time= 25/10/2026 18:09:14
[2026-10-25 18:09:14,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:09:14,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:09:14,798.798 INFO    ] No existing commands found in stream
[2026-10-25 18:09:19,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:09:19,810.810 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-25 18:09:24,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:09:24,257.257 INFO    ] Checking for system updates...
[2026-10-25 18:09:24,293.293 INFO    ] 200
[2026-10-25 18:09:24,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:24,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:24,357.357 INFO    ] No update needed
[2026-10-25 18:09:24,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 18:09:24,393.393 INFO    ] 200
[2026-10-25 18:09:24,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:24,436.436 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:09:24,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:24,486.486 INFO    ] No camera update needed
[2026-10-25 18:09:24,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:09:24,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:09:24,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:09:24,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:09:26,543.543 INFO    ] ================================================
[2026-10-25 18:09:26,559.559 INFO    ] Launching Daemon at Sun Oct 25 18:09:26 IST 2026
[2026-10-25 18:09:26,570.570 INFO    ] ================================================
[2026-10-25 18:09:27,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:09:27
[2026-10-25 18:09:27,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:09:28,187.187 INFO    ] Initializing speech engine...
[2026-10-25 18:09:28,197.197 INFO    ] 2026-10-25 18:09:28
[2026-10-25 18:09:28,472.472 INFO    ] 2026-10-25 18:09:28
[2026-10-25 18:09:28,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:09:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:09:28,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:09:28,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:09:28,975.975 INFO    ] time= 25/10/2026 18:09:28
[2026-10-25 18:09:29,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:09:29,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:09:29,168.168 INFO    ] No existing commands found in stream
[2026-10-25 18:09:34,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:09:34,208.208 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 18:09:35,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:09:35,656.656 INFO    ] Checking for system updates...
[2026-10-25 18:09:35,696.696 INFO    ] 200
[2026-10-25 18:09:35,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:35,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:35,772.772 INFO    ] No update needed
[2026-10-25 18:09:35,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 18:09:35,814.814 INFO    ] 200
[2026-10-25 18:09:35,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:35,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:09:35,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:35,922.922 INFO    ] No camera update needed
[2026-10-25 18:09:35,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:09:35,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:09:35,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:09:35,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:09:37,985.985 INFO    ] ================================================
[2026-10-25 18:09:38,002.002 INFO    ] Launching Daemon at Sun Oct 25 18:09:37 IST 2026
[2026-10-25 18:09:38,014.014 INFO    ] ================================================
[2026-10-25 18:09:38,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:09:38
[2026-10-25 18:09:39,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:09:39,646.646 INFO    ] Initializing speech engine...
[2026-10-25 18:09:39,655.655 INFO    ] 2026-10-25 18:09:39
[2026-10-25 18:09:39,965.965 INFO    ] 2026-10-25 18:09:39
[2026-10-25 18:09:40,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:09:40,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:09:40,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:09:40,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:09:40,394.394 INFO    ] time= 25/10/2026 18:09:40
[2026-10-25 18:09:40,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:09:40,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:09:40,549.549 INFO    ] No existing commands found in stream
[2026-10-25 18:09:45,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:09:45,605.605 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 18:09:49,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:09:49,806.806 INFO    ] Checking for system updates...
[2026-10-25 18:09:49,842.842 INFO    ] 200
[2026-10-25 18:09:49,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:49,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:49,902.902 INFO    ] No update needed
[2026-10-25 18:09:49,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 18:09:49,940.940 INFO    ] 200
[2026-10-25 18:09:49,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:09:49,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:09:50,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:09:50,037.037 INFO    ] No camera update needed
[2026-10-25 18:09:50,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:09:50,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:09:50,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:09:50,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:09:52,094.094 INFO    ] ================================================
[2026-10-25 18:09:52,109.109 INFO    ] Launching Daemon at Sun Oct 25 18:09:52 IST 2026
[2026-10-25 18:09:52,120.120 INFO    ] ================================================
[2026-10-25 18:09:52,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:09:52
[2026-10-25 18:09:53,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:09:53,775.775 INFO    ] Initializing speech engine...
[2026-10-25 18:09:53,789.789 INFO    ] 2026-10-25 18:09:53
[2026-10-25 18:09:54,075.075 INFO    ] 2026-10-25 18:09:54
[2026-10-25 18:09:54,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:09:54,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:09:54,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:09:54,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:09:54,605.605 INFO    ] time= 25/10/2026 18:09:54
[2026-10-25 18:09:54,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:09:54,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:09:54,762.762 INFO    ] No existing commands found in stream
[2026-10-25 18:09:59,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:09:59,792.792 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 18:10:04,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:10:04,958.958 INFO    ] Checking for system updates...
[2026-10-25 18:10:04,995.995 INFO    ] 200
[2026-10-25 18:10:04,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:05,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:05,059.059 INFO    ] No update needed
[2026-10-25 18:10:05,062.062 INFO    ] Checking for camera pi updates...
[2026-10-25 18:10:05,096.096 INFO    ] 200
[2026-10-25 18:10:05,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:05,139.139 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:10:05,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:05,197.197 INFO    ] No camera update needed
[2026-10-25 18:10:05,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:10:05,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:10:05,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:10:05,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:10:07,254.254 INFO    ] ================================================
[2026-10-25 18:10:07,270.270 INFO    ] Launching Daemon at Sun Oct 25 18:10:07 IST 2026
[2026-10-25 18:10:07,281.281 INFO    ] ================================================
[2026-10-25 18:10:07,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:10:07
[2026-10-25 18:10:08,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:10:08,691.691 INFO    ] Initializing speech engine...
[2026-10-25 18:10:08,715.715 INFO    ] 2026-10-25 18:10:08
[2026-10-25 18:10:08,971.971 INFO    ] 2026-10-25 18:10:08
[2026-10-25 18:10:09,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:10:09,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:10:09,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:10:09,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:10:09,364.364 INFO    ] time= 25/10/2026 18:10:09
[2026-10-25 18:10:09,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:10:09,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:10:09,442.442 INFO    ] No existing commands found in stream
[2026-10-25 18:10:14,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:10:14,457.457 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 18:10:18,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:10:18,656.656 INFO    ] Checking for system updates...
[2026-10-25 18:10:18,693.693 INFO    ] 200
[2026-10-25 18:10:18,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:18,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:10:18,751.751 INFO    ] No update needed
[2026-10-25 18:10:18,753.753 INFO    ] Checking for camera pi updates...
[2026-10-25 18:10:18,787.787 INFO    ] 200
[2026-10-25 18:10:18,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:18,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:10:18,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:10:18,895.895 INFO    ] No camera update needed
[2026-10-25 18:10:18,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:10:18,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:10:18,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:10:18,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:10:20,953.953 INFO    ] ================================================
[2026-10-25 18:10:20,968.968 INFO    ] Launching Daemon at Sun Oct 25 18:10:20 IST 2026
[2026-10-25 18:10:20,979.979 INFO    ] ================================================
[2026-10-25 18:10:21,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:10:21
[2026-10-25 18:10:22,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:10:22,399.399 INFO    ] Initializing speech engine...
[2026-10-25 18:10:22,407.407 INFO    ] 2026-10-25 18:10:22
[2026-10-25 18:10:22,680.680 INFO    ] 2026-10-25 18:10:22
[2026-10-25 18:10:22,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:10:22,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:10:22,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:10:23,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:10:23,146.146 INFO    ] time= 25/10/2026 18:10:23
[2026-10-25 18:10:23,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:10:23,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:10:23,316.316 INFO    ] No existing commands found in stream
[2026-10-25 18:10:28,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:10:28,344.344 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 18:10:29,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:10:29,029.029 INFO    ] Checking for system updates...
[2026-10-25 18:10:29,066.066 INFO    ] 200
[2026-10-25 18:10:29,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:29,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:10:29,134.134 INFO    ] No update needed
[2026-10-25 18:10:29,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 18:10:29,170.170 INFO    ] 200
[2026-10-25 18:10:29,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:29,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:10:29,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:10:29,266.266 INFO    ] No camera update needed
[2026-10-25 18:10:29,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:10:29,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:10:29,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:10:29,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:10:31,324.324 INFO    ] ================================================
[2026-10-25 18:10:31,339.339 INFO    ] Launching Daemon at Sun Oct 25 18:10:31 IST 2026
[2026-10-25 18:10:31,350.350 INFO    ] ================================================
[2026-10-25 18:10:31,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:10:31
[2026-10-25 18:10:32,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:10:32,890.890 INFO    ] Initializing speech engine...
[2026-10-25 18:10:32,906.906 INFO    ] 2026-10-25 18:10:32
[2026-10-25 18:10:33,224.224 INFO    ] 2026-10-25 18:10:33
[2026-10-25 18:10:33,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:10:33,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:10:33,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:10:33,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:10:33,596.596 INFO    ] time= 25/10/2026 18:10:33
[2026-10-25 18:10:33,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:10:33,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:10:33,757.757 INFO    ] No existing commands found in stream
[2026-10-25 18:10:38,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:10:38,785.785 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 18:10:42,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:10:42,109.109 INFO    ] Checking for system updates...
[2026-10-25 18:10:42,145.145 INFO    ] 200
[2026-10-25 18:10:42,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:42,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:42,204.204 INFO    ] No update needed
[2026-10-25 18:10:42,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 18:10:42,241.241 INFO    ] 200
[2026-10-25 18:10:42,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:42,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:10:42,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:42,343.343 INFO    ] No camera update needed
[2026-10-25 18:10:42,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:10:42,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:10:42,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:10:42,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:10:44,399.399 INFO    ] ================================================
[2026-10-25 18:10:44,416.416 INFO    ] Launching Daemon at Sun Oct 25 18:10:44 IST 2026
[2026-10-25 18:10:44,430.430 INFO    ] ================================================
[2026-10-25 18:10:45,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:10:45
[2026-10-25 18:10:45,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:10:45,850.850 INFO    ] Initializing speech engine...
[2026-10-25 18:10:45,856.856 INFO    ] 2026-10-25 18:10:45
[2026-10-25 18:10:46,152.152 INFO    ] 2026-10-25 18:10:46
[2026-10-25 18:10:46,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:10:49,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:10:49,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:10:50,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:10:50,916.916 INFO    ] time= 25/10/2026 18:10:50
[2026-10-25 18:10:50,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:10:50,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:10:50,970.970 INFO    ] No existing commands found in stream
[2026-10-25 18:10:55,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:10:55,983.983 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 18:10:57,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:10:57,020.020 INFO    ] Checking for system updates...
[2026-10-25 18:10:57,055.055 INFO    ] 200
[2026-10-25 18:10:57,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:57,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:57,115.115 INFO    ] No update needed
[2026-10-25 18:10:57,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 18:10:57,151.151 INFO    ] 200
[2026-10-25 18:10:57,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:10:57,195.195 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:10:57,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:10:57,240.240 INFO    ] No camera update needed
[2026-10-25 18:10:57,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:10:57,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:10:57,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:10:57,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:10:59,294.294 INFO    ] ================================================
[2026-10-25 18:10:59,310.310 INFO    ] Launching Daemon at Sun Oct 25 18:10:59 IST 2026
[2026-10-25 18:10:59,321.321 INFO    ] ================================================
[2026-10-25 18:10:59,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:10:59
[2026-10-25 18:11:00,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:11:00,727.727 INFO    ] Initializing speech engine...
[2026-10-25 18:11:00,735.735 INFO    ] 2026-10-25 18:11:00
[2026-10-25 18:11:01,006.006 INFO    ] 2026-10-25 18:11:00
[2026-10-25 18:11:01,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:11:01,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:11:01,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:11:01,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:11:01,366.366 INFO    ] time= 25/10/2026 18:11:01
[2026-10-25 18:11:01,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:11:01,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:11:01,429.429 INFO    ] No existing commands found in stream
[2026-10-25 18:11:06,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:11:06,442.442 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 18:11:08,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:11:08,301.301 INFO    ] Checking for system updates...
[2026-10-25 18:11:08,340.340 INFO    ] 200
[2026-10-25 18:11:08,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:08,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:11:08,404.404 INFO    ] No update needed
[2026-10-25 18:11:08,407.407 INFO    ] Checking for camera pi updates...
[2026-10-25 18:11:08,445.445 INFO    ] 200
[2026-10-25 18:11:08,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:08,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:11:08,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:11:08,540.540 INFO    ] No camera update needed
[2026-10-25 18:11:08,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:11:08,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:11:08,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:11:08,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:11:10,595.595 INFO    ] ================================================
[2026-10-25 18:11:10,610.610 INFO    ] Launching Daemon at Sun Oct 25 18:11:10 IST 2026
[2026-10-25 18:11:10,622.622 INFO    ] ================================================
[2026-10-25 18:11:11,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:11:11
[2026-10-25 18:11:11,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:11:12,027.027 INFO    ] Initializing speech engine...
[2026-10-25 18:11:12,046.046 INFO    ] 2026-10-25 18:11:12
[2026-10-25 18:11:12,294.294 INFO    ] 2026-10-25 18:11:12
[2026-10-25 18:11:12,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:11:12,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:11:12,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:11:12,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:11:12,668.668 INFO    ] time= 25/10/2026 18:11:12
[2026-10-25 18:11:12,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:11:12,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:11:12,839.839 INFO    ] No existing commands found in stream
[2026-10-25 18:11:17,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:11:17,872.872 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 18:11:21,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:11:22,001.001 INFO    ] Checking for system updates...
[2026-10-25 18:11:22,046.046 INFO    ] 200
[2026-10-25 18:11:22,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:22,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:11:22,112.112 INFO    ] No update needed
[2026-10-25 18:11:22,115.115 INFO    ] Checking for camera pi updates...
[2026-10-25 18:11:22,149.149 INFO    ] 200
[2026-10-25 18:11:22,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:22,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:11:22,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:11:22,257.257 INFO    ] No camera update needed
[2026-10-25 18:11:22,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:11:22,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:11:22,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:11:22,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:11:24,313.313 INFO    ] ================================================
[2026-10-25 18:11:24,328.328 INFO    ] Launching Daemon at Sun Oct 25 18:11:24 IST 2026
[2026-10-25 18:11:24,339.339 INFO    ] ================================================
[2026-10-25 18:11:24,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:11:24
[2026-10-25 18:11:25,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:11:25,774.774 INFO    ] Initializing speech engine...
[2026-10-25 18:11:25,783.783 INFO    ] 2026-10-25 18:11:25
[2026-10-25 18:11:26,028.028 INFO    ] 2026-10-25 18:11:26
[2026-10-25 18:11:26,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:11:26,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:11:26,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:11:26,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:11:26,504.504 INFO    ] time= 25/10/2026 18:11:26
[2026-10-25 18:11:26,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:11:26,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:11:26,634.634 INFO    ] No existing commands found in stream
[2026-10-25 18:11:31,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:11:31,650.650 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 18:11:35,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:11:35,566.566 INFO    ] Checking for system updates...
[2026-10-25 18:11:35,604.604 INFO    ] 200
[2026-10-25 18:11:35,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:35,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:11:35,666.666 INFO    ] No update needed
[2026-10-25 18:11:35,668.668 INFO    ] Checking for camera pi updates...
[2026-10-25 18:11:35,702.702 INFO    ] 200
[2026-10-25 18:11:35,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:35,750.750 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:11:35,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:11:35,800.800 INFO    ] No camera update needed
[2026-10-25 18:11:35,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:11:35,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:11:35,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:11:35,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:11:37,855.855 INFO    ] ================================================
[2026-10-25 18:11:37,871.871 INFO    ] Launching Daemon at Sun Oct 25 18:11:37 IST 2026
[2026-10-25 18:11:37,882.882 INFO    ] ================================================
[2026-10-25 18:11:38,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:11:38
[2026-10-25 18:11:39,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:11:39,315.315 INFO    ] Initializing speech engine...
[2026-10-25 18:11:39,330.330 INFO    ] 2026-10-25 18:11:39
[2026-10-25 18:11:39,611.611 INFO    ] 2026-10-25 18:11:39
[2026-10-25 18:11:39,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:11:39,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:11:39,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:11:39,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:11:39,984.984 INFO    ] time= 25/10/2026 18:11:39
[2026-10-25 18:11:40,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:11:40,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:11:40,107.107 INFO    ] No existing commands found in stream
[2026-10-25 18:11:45,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:11:45,122.122 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 18:11:48,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:11:48,162.162 INFO    ] Checking for system updates...
[2026-10-25 18:11:48,202.202 INFO    ] 200
[2026-10-25 18:11:48,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:48,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:11:48,265.265 INFO    ] No update needed
[2026-10-25 18:11:48,268.268 INFO    ] Checking for camera pi updates...
[2026-10-25 18:11:48,305.305 INFO    ] 200
[2026-10-25 18:11:48,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:11:48,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:11:48,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:11:48,405.405 INFO    ] No camera update needed
[2026-10-25 18:11:48,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:11:48,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:11:48,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:11:48,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:11:50,461.461 INFO    ] ================================================
[2026-10-25 18:11:50,477.477 INFO    ] Launching Daemon at Sun Oct 25 18:11:50 IST 2026
[2026-10-25 18:11:50,489.489 INFO    ] ================================================
[2026-10-25 18:11:51,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:11:51
[2026-10-25 18:11:51,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:11:52,086.086 INFO    ] Initializing speech engine...
[2026-10-25 18:11:52,093.093 INFO    ] 2026-10-25 18:11:52
[2026-10-25 18:11:52,384.384 INFO    ] 2026-10-25 18:11:52
[2026-10-25 18:11:52,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:11:53,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:11:53,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:11:53,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:11:53,720.720 INFO    ] time= 25/10/2026 18:11:53
[2026-10-25 18:11:53,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:11:53,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:11:53,789.789 INFO    ] No existing commands found in stream
[2026-10-25 18:11:58,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:11:58,805.805 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 18:12:01,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:12:01,644.644 INFO    ] Checking for system updates...
[2026-10-25 18:12:01,687.687 INFO    ] 200
[2026-10-25 18:12:01,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:01,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:01,767.767 INFO    ] No update needed
[2026-10-25 18:12:01,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 18:12:01,815.815 INFO    ] 200
[2026-10-25 18:12:01,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:01,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:12:01,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:01,933.933 INFO    ] No camera update needed
[2026-10-25 18:12:01,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:12:01,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:12:01,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:12:01,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:12:04,994.994 INFO    ] ================================================
[2026-10-25 18:12:04,010.010 INFO    ] Launching Daemon at Sun Oct 25 18:12:04 IST 2026
[2026-10-25 18:12:04,022.022 INFO    ] ================================================
[2026-10-25 18:12:04,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:12:04
[2026-10-25 18:12:05,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:12:05,482.482 INFO    ] Initializing speech engine...
[2026-10-25 18:12:05,490.490 INFO    ] 2026-10-25 18:12:05
[2026-10-25 18:12:05,759.759 INFO    ] 2026-10-25 18:12:05
[2026-10-25 18:12:05,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:12:06,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:12:06,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:12:06,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:12:06,252.252 INFO    ] time= 25/10/2026 18:12:06
[2026-10-25 18:12:06,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:12:06,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:12:06,443.443 INFO    ] No existing commands found in stream
[2026-10-25 18:12:11,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:12:11,474.474 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 18:12:15,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:12:15,357.357 INFO    ] Checking for system updates...
[2026-10-25 18:12:15,397.397 INFO    ] 200
[2026-10-25 18:12:15,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:15,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:15,458.458 INFO    ] No update needed
[2026-10-25 18:12:15,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 18:12:15,499.499 INFO    ] 200
[2026-10-25 18:12:15,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:15,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:12:15,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:15,715.715 INFO    ] No camera update needed
[2026-10-25 18:12:15,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:12:15,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:12:15,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:12:15,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:12:17,775.775 INFO    ] ================================================
[2026-10-25 18:12:17,791.791 INFO    ] Launching Daemon at Sun Oct 25 18:12:17 IST 2026
[2026-10-25 18:12:17,802.802 INFO    ] ================================================
[2026-10-25 18:12:18,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:12:18
[2026-10-25 18:12:18,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:12:19,200.200 INFO    ] Initializing speech engine...
[2026-10-25 18:12:19,214.214 INFO    ] 2026-10-25 18:12:19
[2026-10-25 18:12:19,479.479 INFO    ] 2026-10-25 18:12:19
[2026-10-25 18:12:19,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:12:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:12:19,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:12:22,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:12:22,637.637 INFO    ] time= 25/10/2026 18:12:22
[2026-10-25 18:12:22,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:12:22,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:12:22,693.693 INFO    ] No existing commands found in stream
[2026-10-25 18:12:27,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:12:27,705.705 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 18:12:31,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:12:31,628.628 INFO    ] Checking for system updates...
[2026-10-25 18:12:31,666.666 INFO    ] 200
[2026-10-25 18:12:31,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:31,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:31,733.733 INFO    ] No update needed
[2026-10-25 18:12:31,736.736 INFO    ] Checking for camera pi updates...
[2026-10-25 18:12:31,773.773 INFO    ] 200
[2026-10-25 18:12:31,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:31,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:12:31,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:31,901.901 INFO    ] No camera update needed
[2026-10-25 18:12:31,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:12:31,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:12:31,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:12:31,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:12:33,959.959 INFO    ] ================================================
[2026-10-25 18:12:33,974.974 INFO    ] Launching Daemon at Sun Oct 25 18:12:33 IST 2026
[2026-10-25 18:12:33,985.985 INFO    ] ================================================
[2026-10-25 18:12:34,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:12:34
[2026-10-25 18:12:35,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:12:35,399.399 INFO    ] Initializing speech engine...
[2026-10-25 18:12:35,410.410 INFO    ] 2026-10-25 18:12:35
[2026-10-25 18:12:35,673.673 INFO    ] 2026-10-25 18:12:35
[2026-10-25 18:12:35,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:12:35,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:12:35,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:12:36,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:12:36,056.056 INFO    ] time= 25/10/2026 18:12:36
[2026-10-25 18:12:36,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:12:36,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:12:36,216.216 INFO    ] No existing commands found in stream
[2026-10-25 18:12:41,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:12:41,249.249 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 18:12:42,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:12:42,694.694 INFO    ] Checking for system updates...
[2026-10-25 18:12:42,730.730 INFO    ] 200
[2026-10-25 18:12:42,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:42,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:12:42,788.788 INFO    ] No update needed
[2026-10-25 18:12:42,790.790 INFO    ] Checking for camera pi updates...
[2026-10-25 18:12:42,824.824 INFO    ] 200
[2026-10-25 18:12:42,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:42,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:12:42,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:12:42,898.898 INFO    ] No camera update needed
[2026-10-25 18:12:42,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:12:42,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:12:42,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:12:42,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:12:44,953.953 INFO    ] ================================================
[2026-10-25 18:12:44,967.967 INFO    ] Launching Daemon at Sun Oct 25 18:12:44 IST 2026
[2026-10-25 18:12:44,978.978 INFO    ] ================================================
[2026-10-25 18:12:45,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:12:45
[2026-10-25 18:12:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:12:46,417.417 INFO    ] Initializing speech engine...
[2026-10-25 18:12:46,426.426 INFO    ] 2026-10-25 18:12:46
[2026-10-25 18:12:46,674.674 INFO    ] 2026-10-25 18:12:46
[2026-10-25 18:12:46,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:12:46,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:12:46,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:12:47,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:12:47,117.117 INFO    ] time= 25/10/2026 18:12:47
[2026-10-25 18:12:47,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:12:47,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:12:47,286.286 INFO    ] No existing commands found in stream
[2026-10-25 18:12:52,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:12:52,300.300 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 18:12:56,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:12:56,610.610 INFO    ] Checking for system updates...
[2026-10-25 18:12:56,646.646 INFO    ] 200
[2026-10-25 18:12:56,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:56,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:56,703.703 INFO    ] No update needed
[2026-10-25 18:12:56,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 18:12:56,740.740 INFO    ] 200
[2026-10-25 18:12:56,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:12:56,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:12:56,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:12:56,836.836 INFO    ] No camera update needed
[2026-10-25 18:12:56,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:12:56,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:12:56,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:12:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:12:58,891.891 INFO    ] ================================================
[2026-10-25 18:12:58,906.906 INFO    ] Launching Daemon at Sun Oct 25 18:12:58 IST 2026
[2026-10-25 18:12:58,917.917 INFO    ] ================================================
[2026-10-25 18:12:59,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:12:59
[2026-10-25 18:13:00,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:13:00,392.392 INFO    ] Initializing speech engine...
[2026-10-25 18:13:00,401.401 INFO    ] 2026-10-25 18:13:00
[2026-10-25 18:13:00,662.662 INFO    ] 2026-10-25 18:13:00
[2026-10-25 18:13:00,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:13:00,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:13:00,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:13:01,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:13:01,021.021 INFO    ] time= 25/10/2026 18:13:01
[2026-10-25 18:13:01,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:13:01,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:13:01,189.189 INFO    ] No existing commands found in stream
[2026-10-25 18:13:06,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:13:06,217.217 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 18:13:08,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:13:08,648.648 INFO    ] Checking for system updates...
[2026-10-25 18:13:08,685.685 INFO    ] 200
[2026-10-25 18:13:08,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:08,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:08,747.747 INFO    ] No update needed
[2026-10-25 18:13:08,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 18:13:08,784.784 INFO    ] 200
[2026-10-25 18:13:08,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:08,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:13:08,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:08,882.882 INFO    ] No camera update needed
[2026-10-25 18:13:08,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:13:08,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:13:08,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:13:08,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:13:10,937.937 INFO    ] ================================================
[2026-10-25 18:13:10,951.951 INFO    ] Launching Daemon at Sun Oct 25 18:13:10 IST 2026
[2026-10-25 18:13:10,962.962 INFO    ] ================================================
[2026-10-25 18:13:11,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:13:11
[2026-10-25 18:13:12,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:13:12,436.436 INFO    ] Initializing speech engine...
[2026-10-25 18:13:12,445.445 INFO    ] 2026-10-25 18:13:12
[2026-10-25 18:13:12,719.719 INFO    ] 2026-10-25 18:13:12
[2026-10-25 18:13:12,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:13:12,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:13:12,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:13:13,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:13:13,097.097 INFO    ] time= 25/10/2026 18:13:13
[2026-10-25 18:13:13,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:13:13,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:13:13,223.223 INFO    ] No existing commands found in stream
[2026-10-25 18:13:18,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:13:18,241.241 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 18:13:19,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:13:19,762.762 INFO    ] Checking for system updates...
[2026-10-25 18:13:19,799.799 INFO    ] 200
[2026-10-25 18:13:19,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:19,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:13:19,857.857 INFO    ] No update needed
[2026-10-25 18:13:19,859.859 INFO    ] Checking for camera pi updates...
[2026-10-25 18:13:19,893.893 INFO    ] 200
[2026-10-25 18:13:19,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:19,937.937 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:13:19,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:13:19,996.996 INFO    ] No camera update needed
[2026-10-25 18:13:19,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:13:20,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:13:20,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:13:20,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:13:22,054.054 INFO    ] ================================================
[2026-10-25 18:13:22,070.070 INFO    ] Launching Daemon at Sun Oct 25 18:13:22 IST 2026
[2026-10-25 18:13:22,080.080 INFO    ] ================================================
[2026-10-25 18:13:22,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:13:22
[2026-10-25 18:13:23,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:13:23,528.528 INFO    ] Initializing speech engine...
[2026-10-25 18:13:23,536.536 INFO    ] 2026-10-25 18:13:23
[2026-10-25 18:13:23,783.783 INFO    ] 2026-10-25 18:13:23
[2026-10-25 18:13:23,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:13:27,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:13:27,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:13:27,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:13:27,795.795 INFO    ] time= 25/10/2026 18:13:27
[2026-10-25 18:13:27,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:13:27,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:13:27,849.849 INFO    ] No existing commands found in stream
[2026-10-25 18:13:32,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:13:32,861.861 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 18:13:37,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:13:37,027.027 INFO    ] Checking for system updates...
[2026-10-25 18:13:37,064.064 INFO    ] 200
[2026-10-25 18:13:37,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:37,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:37,122.122 INFO    ] No update needed
[2026-10-25 18:13:37,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 18:13:37,159.159 INFO    ] 200
[2026-10-25 18:13:37,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:37,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:13:37,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:37,255.255 INFO    ] No camera update needed
[2026-10-25 18:13:37,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:13:37,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:13:37,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:13:37,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:13:39,312.312 INFO    ] ================================================
[2026-10-25 18:13:39,328.328 INFO    ] Launching Daemon at Sun Oct 25 18:13:39 IST 2026
[2026-10-25 18:13:39,338.338 INFO    ] ================================================
[2026-10-25 18:13:39,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:13:39
[2026-10-25 18:13:40,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:13:40,758.758 INFO    ] Initializing speech engine...
[2026-10-25 18:13:40,767.767 INFO    ] 2026-10-25 18:13:40
[2026-10-25 18:13:41,016.016 INFO    ] 2026-10-25 18:13:41
[2026-10-25 18:13:41,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:13:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:13:41,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:13:41,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:13:41,476.476 INFO    ] time= 25/10/2026 18:13:41
[2026-10-25 18:13:41,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:13:41,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:13:41,647.647 INFO    ] No existing commands found in stream
[2026-10-25 18:13:46,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:13:46,659.659 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 18:13:47,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:13:47,471.471 INFO    ] Checking for system updates...
[2026-10-25 18:13:47,507.507 INFO    ] 200
[2026-10-25 18:13:47,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:47,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:47,573.573 INFO    ] No update needed
[2026-10-25 18:13:47,576.576 INFO    ] Checking for camera pi updates...
[2026-10-25 18:13:47,614.614 INFO    ] 200
[2026-10-25 18:13:47,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:13:47,658.658 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:13:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:13:47,725.725 INFO    ] No camera update needed
[2026-10-25 18:13:47,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:13:47,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:13:47,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:13:47,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:13:49,778.778 INFO    ] ================================================
[2026-10-25 18:13:49,793.793 INFO    ] Launching Daemon at Sun Oct 25 18:13:49 IST 2026
[2026-10-25 18:13:49,804.804 INFO    ] ================================================
[2026-10-25 18:13:50,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:13:50
[2026-10-25 18:13:50,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:13:51,260.260 INFO    ] Initializing speech engine...
[2026-10-25 18:13:51,265.265 INFO    ] 2026-10-25 18:13:51
[2026-10-25 18:13:51,513.513 INFO    ] 2026-10-25 18:13:51
[2026-10-25 18:13:51,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:13:51,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:13:51,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:13:51,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:13:51,968.968 INFO    ] time= 25/10/2026 18:13:51
[2026-10-25 18:13:52,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:13:52,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:13:52,128.128 INFO    ] No existing commands found in stream
[2026-10-25 18:13:57,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:13:57,143.143 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 18:14:01,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:14:01,043.043 INFO    ] Checking for system updates...
[2026-10-25 18:14:01,081.081 INFO    ] 200
[2026-10-25 18:14:01,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:01,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:01,139.139 INFO    ] No update needed
[2026-10-25 18:14:01,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 18:14:01,175.175 INFO    ] 200
[2026-10-25 18:14:01,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:01,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:14:01,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:01,278.278 INFO    ] No camera update needed
[2026-10-25 18:14:01,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:14:01,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:14:01,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:14:01,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:14:03,335.335 INFO    ] ================================================
[2026-10-25 18:14:03,357.357 INFO    ] Launching Daemon at Sun Oct 25 18:14:03 IST 2026
[2026-10-25 18:14:03,369.369 INFO    ] ================================================
[2026-10-25 18:14:03,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:14:03
[2026-10-25 18:14:04,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:14:04,806.806 INFO    ] Initializing speech engine...
[2026-10-25 18:14:04,819.819 INFO    ] 2026-10-25 18:14:04
[2026-10-25 18:14:05,084.084 INFO    ] 2026-10-25 18:14:05
[2026-10-25 18:14:05,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:14:05,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:14:05,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:14:05,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:14:05,461.461 INFO    ] time= 25/10/2026 18:14:05
[2026-10-25 18:14:05,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:14:05,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:14:05,637.637 INFO    ] No existing commands found in stream
[2026-10-25 18:14:10,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:14:10,665.665 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 18:14:14,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:14:14,103.103 INFO    ] Checking for system updates...
[2026-10-25 18:14:14,139.139 INFO    ] 200
[2026-10-25 18:14:14,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:14,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:14:14,197.197 INFO    ] No update needed
[2026-10-25 18:14:14,199.199 INFO    ] Checking for camera pi updates...
[2026-10-25 18:14:14,233.233 INFO    ] 200
[2026-10-25 18:14:14,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:14,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:14:14,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:14:14,333.333 INFO    ] No camera update needed
[2026-10-25 18:14:14,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:14:14,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:14:14,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:14:14,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:14:16,387.387 INFO    ] ================================================
[2026-10-25 18:14:16,402.402 INFO    ] Launching Daemon at Sun Oct 25 18:14:16 IST 2026
[2026-10-25 18:14:16,413.413 INFO    ] ================================================
[2026-10-25 18:14:17,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:14:17
[2026-10-25 18:14:17,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:14:17,993.993 INFO    ] Initializing speech engine...
[2026-10-25 18:14:18,001.001 INFO    ] 2026-10-25 18:14:17
[2026-10-25 18:14:18,252.252 INFO    ] 2026-10-25 18:14:18
[2026-10-25 18:14:18,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:14:18,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:14:18,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:14:18,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:14:18,709.709 INFO    ] time= 25/10/2026 18:14:18
[2026-10-25 18:14:18,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:14:18,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:14:18,876.876 INFO    ] No existing commands found in stream
[2026-10-25 18:14:23,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:14:23,890.890 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 18:14:24,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:14:24,788.788 INFO    ] Checking for system updates...
[2026-10-25 18:14:24,828.828 INFO    ] 200
[2026-10-25 18:14:24,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:24,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:24,898.898 INFO    ] No update needed
[2026-10-25 18:14:24,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 18:14:24,935.935 INFO    ] 200
[2026-10-25 18:14:24,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:24,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:14:25,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:25,135.135 INFO    ] No camera update needed
[2026-10-25 18:14:25,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:14:25,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:14:25,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:14:25,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:14:27,188.188 INFO    ] ================================================
[2026-10-25 18:14:27,203.203 INFO    ] Launching Daemon at Sun Oct 25 18:14:27 IST 2026
[2026-10-25 18:14:27,214.214 INFO    ] ================================================
[2026-10-25 18:14:27,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:14:27
[2026-10-25 18:14:28,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:14:28,668.668 INFO    ] Initializing speech engine...
[2026-10-25 18:14:28,675.675 INFO    ] 2026-10-25 18:14:28
[2026-10-25 18:14:28,922.922 INFO    ] 2026-10-25 18:14:28
[2026-10-25 18:14:28,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:14:30,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:14:30,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:14:30,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:14:30,812.812 INFO    ] time= 25/10/2026 18:14:30
[2026-10-25 18:14:30,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:14:30,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:14:30,876.876 INFO    ] No existing commands found in stream
[2026-10-25 18:14:35,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:14:35,890.890 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 18:14:37,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:14:37,747.747 INFO    ] Checking for system updates...
[2026-10-25 18:14:37,783.783 INFO    ] 200
[2026-10-25 18:14:37,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:37,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:37,841.841 INFO    ] No update needed
[2026-10-25 18:14:37,843.843 INFO    ] Checking for camera pi updates...
[2026-10-25 18:14:37,877.877 INFO    ] 200
[2026-10-25 18:14:37,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:37,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:14:38,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:38,125.125 INFO    ] No camera update needed
[2026-10-25 18:14:38,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:14:38,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:14:38,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:14:38,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:14:40,184.184 INFO    ] ================================================
[2026-10-25 18:14:40,199.199 INFO    ] Launching Daemon at Sun Oct 25 18:14:40 IST 2026
[2026-10-25 18:14:40,210.210 INFO    ] ================================================
[2026-10-25 18:14:40,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:14:40
[2026-10-25 18:14:41,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:14:41,824.824 INFO    ] Initializing speech engine...
[2026-10-25 18:14:41,830.830 INFO    ] 2026-10-25 18:14:41
[2026-10-25 18:14:42,139.139 INFO    ] 2026-10-25 18:14:42
[2026-10-25 18:14:42,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:14:42,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:14:42,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:14:42,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:14:42,639.639 INFO    ] time= 25/10/2026 18:14:42
[2026-10-25 18:14:42,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:14:42,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:14:42,784.784 INFO    ] No existing commands found in stream
[2026-10-25 18:14:47,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:14:47,809.809 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-25 18:14:49,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:14:49,364.364 INFO    ] Checking for system updates...
[2026-10-25 18:14:49,402.402 INFO    ] 200
[2026-10-25 18:14:49,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:49,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:49,461.461 INFO    ] No update needed
[2026-10-25 18:14:49,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 18:14:49,501.501 INFO    ] 200
[2026-10-25 18:14:49,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:14:49,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:14:49,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:14:49,606.606 INFO    ] No camera update needed
[2026-10-25 18:14:49,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:14:49,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:14:49,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:14:49,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:14:51,660.660 INFO    ] ================================================
[2026-10-25 18:14:51,675.675 INFO    ] Launching Daemon at Sun Oct 25 18:14:51 IST 2026
[2026-10-25 18:14:51,686.686 INFO    ] ================================================
[2026-10-25 18:14:52,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:14:52
[2026-10-25 18:14:52,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:14:53,078.078 INFO    ] Initializing speech engine...
[2026-10-25 18:14:53,101.101 INFO    ] 2026-10-25 18:14:53
[2026-10-25 18:14:53,353.353 INFO    ] 2026-10-25 18:14:53
[2026-10-25 18:14:53,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:14:53,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:14:53,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:14:53,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:14:53,796.796 INFO    ] time= 25/10/2026 18:14:53
[2026-10-25 18:14:53,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:14:53,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:14:53,967.967 INFO    ] No existing commands found in stream
[2026-10-25 18:14:58,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:14:58,981.981 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 18:15:02,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:15:02,457.457 INFO    ] Checking for system updates...
[2026-10-25 18:15:02,506.506 INFO    ] 200
[2026-10-25 18:15:02,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:02,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:15:02,585.585 INFO    ] No update needed
[2026-10-25 18:15:02,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 18:15:02,637.637 INFO    ] 200
[2026-10-25 18:15:02,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:02,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:15:02,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:15:02,764.764 INFO    ] No camera update needed
[2026-10-25 18:15:02,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:15:02,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:15:02,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:15:02,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:15:04,825.825 INFO    ] ================================================
[2026-10-25 18:15:04,841.841 INFO    ] Launching Daemon at Sun Oct 25 18:15:04 IST 2026
[2026-10-25 18:15:04,852.852 INFO    ] ================================================
[2026-10-25 18:15:05,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:15:05
[2026-10-25 18:15:06,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:15:06,274.274 INFO    ] Initializing speech engine...
[2026-10-25 18:15:06,284.284 INFO    ] 2026-10-25 18:15:06
[2026-10-25 18:15:06,531.531 INFO    ] 2026-10-25 18:15:06
[2026-10-25 18:15:06,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:15:06,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:15:06,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:15:06,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:15:06,996.996 INFO    ] time= 25/10/2026 18:15:06
[2026-10-25 18:15:07,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:15:07,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:15:07,146.146 INFO    ] No existing commands found in stream
[2026-10-25 18:15:12,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:15:12,161.161 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 18:15:13,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:15:13,032.032 INFO    ] Checking for system updates...
[2026-10-25 18:15:13,073.073 INFO    ] 200
[2026-10-25 18:15:13,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:13,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:13,133.133 INFO    ] No update needed
[2026-10-25 18:15:13,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 18:15:13,174.174 INFO    ] 200
[2026-10-25 18:15:13,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:13,243.243 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:15:13,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:13,285.285 INFO    ] No camera update needed
[2026-10-25 18:15:13,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:15:13,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:15:13,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:15:13,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:15:15,340.340 INFO    ] ================================================
[2026-10-25 18:15:15,355.355 INFO    ] Launching Daemon at Sun Oct 25 18:15:15 IST 2026
[2026-10-25 18:15:15,366.366 INFO    ] ================================================
[2026-10-25 18:15:15,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:15:15
[2026-10-25 18:15:16,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:15:16,821.821 INFO    ] Initializing speech engine...
[2026-10-25 18:15:16,830.830 INFO    ] 2026-10-25 18:15:16
[2026-10-25 18:15:17,081.081 INFO    ] 2026-10-25 18:15:17
[2026-10-25 18:15:17,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:15:17,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:15:17,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:15:17,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:15:17,569.569 INFO    ] time= 25/10/2026 18:15:17
[2026-10-25 18:15:17,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:15:17,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:15:17,697.697 INFO    ] No existing commands found in stream
[2026-10-25 18:15:22,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:15:22,712.712 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 18:15:24,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:15:24,021.021 INFO    ] Checking for system updates...
[2026-10-25 18:15:24,063.063 INFO    ] 200
[2026-10-25 18:15:24,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:24,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:24,131.131 INFO    ] No update needed
[2026-10-25 18:15:24,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 18:15:24,172.172 INFO    ] 200
[2026-10-25 18:15:24,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:24,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:15:24,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:24,279.279 INFO    ] No camera update needed
[2026-10-25 18:15:24,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:15:24,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:15:24,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:15:24,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:15:26,336.336 INFO    ] ================================================
[2026-10-25 18:15:26,351.351 INFO    ] Launching Daemon at Sun Oct 25 18:15:26 IST 2026
[2026-10-25 18:15:26,363.363 INFO    ] ================================================
[2026-10-25 18:15:27,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:15:27
[2026-10-25 18:15:27,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:15:28,023.023 INFO    ] Initializing speech engine...
[2026-10-25 18:15:28,033.033 INFO    ] 2026-10-25 18:15:28
[2026-10-25 18:15:28,310.310 INFO    ] 2026-10-25 18:15:28
[2026-10-25 18:15:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:15:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:15:28,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:15:32,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:15:32,500.500 INFO    ] time= 25/10/2026 18:15:32
[2026-10-25 18:15:32,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:15:32,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:15:32,557.557 INFO    ] No existing commands found in stream
[2026-10-25 18:15:37,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:15:37,569.569 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 18:15:40,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:15:40,435.435 INFO    ] Checking for system updates...
[2026-10-25 18:15:40,472.472 INFO    ] 200
[2026-10-25 18:15:40,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:40,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:40,531.531 INFO    ] No update needed
[2026-10-25 18:15:40,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 18:15:40,567.567 INFO    ] 200
[2026-10-25 18:15:40,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:40,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:15:40,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:15:40,671.671 INFO    ] No camera update needed
[2026-10-25 18:15:40,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:15:40,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:15:40,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:15:40,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:15:42,727.727 INFO    ] ================================================
[2026-10-25 18:15:42,743.743 INFO    ] Launching Daemon at Sun Oct 25 18:15:42 IST 2026
[2026-10-25 18:15:42,754.754 INFO    ] ================================================
[2026-10-25 18:15:43,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:15:43
[2026-10-25 18:15:43,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:15:44,154.154 INFO    ] Initializing speech engine...
[2026-10-25 18:15:44,177.177 INFO    ] 2026-10-25 18:15:44
[2026-10-25 18:15:44,435.435 INFO    ] 2026-10-25 18:15:44
[2026-10-25 18:15:44,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:15:44,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:15:44,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:15:44,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:15:44,793.793 INFO    ] time= 25/10/2026 18:15:44
[2026-10-25 18:15:44,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:15:44,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:15:44,906.906 INFO    ] No existing commands found in stream
[2026-10-25 18:15:49,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:15:49,944.944 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 18:15:53,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:15:53,809.809 INFO    ] Checking for system updates...
[2026-10-25 18:15:53,847.847 INFO    ] 200
[2026-10-25 18:15:53,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:53,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:15:53,917.917 INFO    ] No update needed
[2026-10-25 18:15:53,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 18:15:53,956.956 INFO    ] 200
[2026-10-25 18:15:53,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:15:54,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:15:54,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:15:54,076.076 INFO    ] No camera update needed
[2026-10-25 18:15:54,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:15:54,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:15:54,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:15:54,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:15:56,139.139 INFO    ] ================================================
[2026-10-25 18:15:56,158.158 INFO    ] Launching Daemon at Sun Oct 25 18:15:56 IST 2026
[2026-10-25 18:15:56,169.169 INFO    ] ================================================
[2026-10-25 18:15:56,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:15:56
[2026-10-25 18:15:57,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:15:57,618.618 INFO    ] Initializing speech engine...
[2026-10-25 18:15:57,627.627 INFO    ] 2026-10-25 18:15:57
[2026-10-25 18:15:57,876.876 INFO    ] 2026-10-25 18:15:57
[2026-10-25 18:15:57,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:15:58,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:15:58,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:15:58,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:15:58,332.332 INFO    ] time= 25/10/2026 18:15:58
[2026-10-25 18:15:58,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:15:58,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:15:58,492.492 INFO    ] No existing commands found in stream
[2026-10-25 18:16:03,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:16:03,506.506 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 18:16:04,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:16:04,992.992 INFO    ] Checking for system updates...
[2026-10-25 18:16:05,032.032 INFO    ] 200
[2026-10-25 18:16:05,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:05,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:05,098.098 INFO    ] No update needed
[2026-10-25 18:16:05,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 18:16:05,149.149 INFO    ] 200
[2026-10-25 18:16:05,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:05,194.194 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:16:05,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:05,249.249 INFO    ] No camera update needed
[2026-10-25 18:16:05,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:16:05,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:16:05,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:16:05,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:16:07,320.320 INFO    ] ================================================
[2026-10-25 18:16:07,336.336 INFO    ] Launching Daemon at Sun Oct 25 18:16:07 IST 2026
[2026-10-25 18:16:07,346.346 INFO    ] ================================================
[2026-10-25 18:16:07,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:16:07
[2026-10-25 18:16:08,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:16:08,796.796 INFO    ] Initializing speech engine...
[2026-10-25 18:16:08,802.802 INFO    ] 2026-10-25 18:16:08
[2026-10-25 18:16:09,047.047 INFO    ] 2026-10-25 18:16:09
[2026-10-25 18:16:09,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:16:09,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:16:09,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:16:09,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:16:09,484.484 INFO    ] time= 25/10/2026 18:16:09
[2026-10-25 18:16:09,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:16:09,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:16:09,667.667 INFO    ] No existing commands found in stream
[2026-10-25 18:16:14,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:16:14,682.682 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 18:16:16,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:16:16,787.787 INFO    ] Checking for system updates...
[2026-10-25 18:16:16,827.827 INFO    ] 200
[2026-10-25 18:16:16,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:16,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:16:16,885.885 INFO    ] No update needed
[2026-10-25 18:16:16,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 18:16:16,921.921 INFO    ] 200
[2026-10-25 18:16:16,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:16,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:16:17,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:16:17,014.014 INFO    ] No camera update needed
[2026-10-25 18:16:17,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:16:17,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:16:17,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:16:17,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:16:19,071.071 INFO    ] ================================================
[2026-10-25 18:16:19,086.086 INFO    ] Launching Daemon at Sun Oct 25 18:16:19 IST 2026
[2026-10-25 18:16:19,097.097 INFO    ] ================================================
[2026-10-25 18:16:19,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:16:19
[2026-10-25 18:16:20,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:16:20,528.528 INFO    ] Initializing speech engine...
[2026-10-25 18:16:20,534.534 INFO    ] 2026-10-25 18:16:20
[2026-10-25 18:16:20,831.831 INFO    ] 2026-10-25 18:16:20
[2026-10-25 18:16:20,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:16:21,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:16:21,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:16:21,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:16:21,186.186 INFO    ] time= 25/10/2026 18:16:21
[2026-10-25 18:16:21,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:16:21,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:16:21,267.267 INFO    ] No existing commands found in stream
[2026-10-25 18:16:26,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:16:26,281.281 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 18:16:27,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:16:27,124.124 INFO    ] Checking for system updates...
[2026-10-25 18:16:27,161.161 INFO    ] 200
[2026-10-25 18:16:27,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:27,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:27,226.226 INFO    ] No update needed
[2026-10-25 18:16:27,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 18:16:27,263.263 INFO    ] 200
[2026-10-25 18:16:27,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:27,311.311 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:16:27,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:27,478.478 INFO    ] No camera update needed
[2026-10-25 18:16:27,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:16:27,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:16:27,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:16:27,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:16:29,532.532 INFO    ] ================================================
[2026-10-25 18:16:29,547.547 INFO    ] Launching Daemon at Sun Oct 25 18:16:29 IST 2026
[2026-10-25 18:16:29,557.557 INFO    ] ================================================
[2026-10-25 18:16:30,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:16:30
[2026-10-25 18:16:30,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:16:30,972.972 INFO    ] Initializing speech engine...
[2026-10-25 18:16:30,986.986 INFO    ] 2026-10-25 18:16:30
[2026-10-25 18:16:31,275.275 INFO    ] 2026-10-25 18:16:31
[2026-10-25 18:16:31,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:16:36,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:16:36,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:16:36,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:16:36,216.216 INFO    ] time= 25/10/2026 18:16:36
[2026-10-25 18:16:36,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:16:36,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:16:36,273.273 INFO    ] No existing commands found in stream
[2026-10-25 18:16:41,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:16:41,285.285 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 18:16:44,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:16:44,047.047 INFO    ] Checking for system updates...
[2026-10-25 18:16:44,083.083 INFO    ] 200
[2026-10-25 18:16:44,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:44,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:44,140.140 INFO    ] No update needed
[2026-10-25 18:16:44,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 18:16:44,180.180 INFO    ] 200
[2026-10-25 18:16:44,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:44,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:16:44,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:44,284.284 INFO    ] No camera update needed
[2026-10-25 18:16:44,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:16:44,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:16:44,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:16:44,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:16:46,343.343 INFO    ] ================================================
[2026-10-25 18:16:46,358.358 INFO    ] Launching Daemon at Sun Oct 25 18:16:46 IST 2026
[2026-10-25 18:16:46,369.369 INFO    ] ================================================
[2026-10-25 18:16:47,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:16:47
[2026-10-25 18:16:47,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:16:48,018.018 INFO    ] Initializing speech engine...
[2026-10-25 18:16:48,026.026 INFO    ] 2026-10-25 18:16:48
[2026-10-25 18:16:48,298.298 INFO    ] 2026-10-25 18:16:48
[2026-10-25 18:16:48,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:16:48,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:16:48,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:16:48,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:16:48,756.756 INFO    ] time= 25/10/2026 18:16:48
[2026-10-25 18:16:48,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:16:48,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:16:48,933.933 INFO    ] No existing commands found in stream
[2026-10-25 18:16:53,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:16:53,975.975 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 18:16:54,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:16:54,838.838 INFO    ] Checking for system updates...
[2026-10-25 18:16:54,876.876 INFO    ] 200
[2026-10-25 18:16:54,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:54,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:54,937.937 INFO    ] No update needed
[2026-10-25 18:16:54,940.940 INFO    ] Checking for camera pi updates...
[2026-10-25 18:16:54,975.975 INFO    ] 200
[2026-10-25 18:16:54,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:16:55,024.024 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:16:55,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:16:55,086.086 INFO    ] No camera update needed
[2026-10-25 18:16:55,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:16:55,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:16:55,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:16:55,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:16:57,146.146 INFO    ] ================================================
[2026-10-25 18:16:57,161.161 INFO    ] Launching Daemon at Sun Oct 25 18:16:57 IST 2026
[2026-10-25 18:16:57,172.172 INFO    ] ================================================
[2026-10-25 18:16:57,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:16:57
[2026-10-25 18:16:58,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:16:58,643.643 INFO    ] Initializing speech engine...
[2026-10-25 18:16:58,653.653 INFO    ] 2026-10-25 18:16:58
[2026-10-25 18:16:58,911.911 INFO    ] 2026-10-25 18:16:58
[2026-10-25 18:16:58,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:16:59,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:16:59,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:16:59,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:16:59,296.296 INFO    ] time= 25/10/2026 18:16:59
[2026-10-25 18:16:59,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:16:59,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:16:59,373.373 INFO    ] No existing commands found in stream
[2026-10-25 18:17:04,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:17:04,388.388 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 18:17:08,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:17:08,275.275 INFO    ] Checking for system updates...
[2026-10-25 18:17:08,314.314 INFO    ] 200
[2026-10-25 18:17:08,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:08,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:08,378.378 INFO    ] No update needed
[2026-10-25 18:17:08,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 18:17:08,413.413 INFO    ] 200
[2026-10-25 18:17:08,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:08,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:17:08,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:08,514.514 INFO    ] No camera update needed
[2026-10-25 18:17:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:17:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:17:08,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:17:08,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:17:10,569.569 INFO    ] ================================================
[2026-10-25 18:17:10,585.585 INFO    ] Launching Daemon at Sun Oct 25 18:17:10 IST 2026
[2026-10-25 18:17:10,596.596 INFO    ] ================================================
[2026-10-25 18:17:11,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:17:11
[2026-10-25 18:17:11,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:17:11,995.995 INFO    ] Initializing speech engine...
[2026-10-25 18:17:12,001.001 INFO    ] 2026-10-25 18:17:11
[2026-10-25 18:17:12,274.274 INFO    ] 2026-10-25 18:17:12
[2026-10-25 18:17:12,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:17:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:17:12,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:17:12,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:17:12,652.652 INFO    ] time= 25/10/2026 18:17:12
[2026-10-25 18:17:12,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:17:12,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:17:12,821.821 INFO    ] No existing commands found in stream
[2026-10-25 18:17:17,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:17:17,849.849 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 18:17:19,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:17:19,951.951 INFO    ] Checking for system updates...
[2026-10-25 18:17:19,987.987 INFO    ] 200
[2026-10-25 18:17:19,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:20,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:20,051.051 INFO    ] No update needed
[2026-10-25 18:17:20,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 18:17:20,089.089 INFO    ] 200
[2026-10-25 18:17:20,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:20,141.141 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:17:20,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:20,193.193 INFO    ] No camera update needed
[2026-10-25 18:17:20,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:17:20,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:17:20,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:17:20,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:17:22,249.249 INFO    ] ================================================
[2026-10-25 18:17:22,265.265 INFO    ] Launching Daemon at Sun Oct 25 18:17:22 IST 2026
[2026-10-25 18:17:22,276.276 INFO    ] ================================================
[2026-10-25 18:17:22,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:17:22
[2026-10-25 18:17:23,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:17:23,690.690 INFO    ] Initializing speech engine...
[2026-10-25 18:17:23,703.703 INFO    ] 2026-10-25 18:17:23
[2026-10-25 18:17:23,951.951 INFO    ] 2026-10-25 18:17:23
[2026-10-25 18:17:23,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:17:24,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:17:24,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:17:24,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:17:24,427.427 INFO    ] time= 25/10/2026 18:17:24
[2026-10-25 18:17:24,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:17:24,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:17:24,568.568 INFO    ] No existing commands found in stream
[2026-10-25 18:17:29,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:17:29,583.583 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-25 18:17:31,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:17:31,343.343 INFO    ] Checking for system updates...
[2026-10-25 18:17:31,380.380 INFO    ] 200
[2026-10-25 18:17:31,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:31,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:31,438.438 INFO    ] No update needed
[2026-10-25 18:17:31,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 18:17:31,476.476 INFO    ] 200
[2026-10-25 18:17:31,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:31,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:17:31,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:17:31,583.583 INFO    ] No camera update needed
[2026-10-25 18:17:31,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:17:31,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:17:31,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:17:31,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:17:33,643.643 INFO    ] ================================================
[2026-10-25 18:17:33,658.658 INFO    ] Launching Daemon at Sun Oct 25 18:17:33 IST 2026
[2026-10-25 18:17:33,669.669 INFO    ] ================================================
[2026-10-25 18:17:34,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:17:34
[2026-10-25 18:17:34,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:17:35,079.079 INFO    ] Initializing speech engine...
[2026-10-25 18:17:35,095.095 INFO    ] 2026-10-25 18:17:35
[2026-10-25 18:17:35,376.376 INFO    ] 2026-10-25 18:17:35
[2026-10-25 18:17:35,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:17:38,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:17:38,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:17:38,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:17:38,604.604 INFO    ] time= 25/10/2026 18:17:38
[2026-10-25 18:17:38,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:17:38,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:17:38,664.664 INFO    ] No existing commands found in stream
[2026-10-25 18:17:43,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:17:43,676.676 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 18:17:47,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:17:47,893.893 INFO    ] Checking for system updates...
[2026-10-25 18:17:47,932.932 INFO    ] 200
[2026-10-25 18:17:47,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:47,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:17:47,996.996 INFO    ] No update needed
[2026-10-25 18:17:47,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 18:17:48,035.035 INFO    ] 200
[2026-10-25 18:17:48,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:48,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:17:48,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:17:48,132.132 INFO    ] No camera update needed
[2026-10-25 18:17:48,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:17:48,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:17:48,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:17:48,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:17:50,188.188 INFO    ] ================================================
[2026-10-25 18:17:50,204.204 INFO    ] Launching Daemon at Sun Oct 25 18:17:50 IST 2026
[2026-10-25 18:17:50,215.215 INFO    ] ================================================
[2026-10-25 18:17:50,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:17:50
[2026-10-25 18:17:51,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:17:51,623.623 INFO    ] Initializing speech engine...
[2026-10-25 18:17:51,646.646 INFO    ] 2026-10-25 18:17:51
[2026-10-25 18:17:51,920.920 INFO    ] 2026-10-25 18:17:51
[2026-10-25 18:17:51,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:17:52,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:17:52,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:17:52,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:17:52,331.331 INFO    ] time= 25/10/2026 18:17:52
[2026-10-25 18:17:52,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:17:52,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:17:52,457.457 INFO    ] No existing commands found in stream
[2026-10-25 18:17:57,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:17:57,490.490 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 18:17:59,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:17:59,473.473 INFO    ] Checking for system updates...
[2026-10-25 18:17:59,509.509 INFO    ] 200
[2026-10-25 18:17:59,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:59,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:17:59,566.566 INFO    ] No update needed
[2026-10-25 18:17:59,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 18:17:59,605.605 INFO    ] 200
[2026-10-25 18:17:59,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:17:59,649.649 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:17:59,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:17:59,713.713 INFO    ] No camera update needed
[2026-10-25 18:17:59,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:17:59,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:17:59,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:17:59,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:18:01,773.773 INFO    ] ================================================
[2026-10-25 18:18:01,791.791 INFO    ] Launching Daemon at Sun Oct 25 18:18:01 IST 2026
[2026-10-25 18:18:01,812.812 INFO    ] ================================================
[2026-10-25 18:18:02,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:18:02
[2026-10-25 18:18:03,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:18:03,494.494 INFO    ] Initializing speech engine...
[2026-10-25 18:18:03,501.501 INFO    ] 2026-10-25 18:18:03
[2026-10-25 18:18:03,786.786 INFO    ] 2026-10-25 18:18:03
[2026-10-25 18:18:03,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:18:04,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:18:04,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:18:04,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:18:04,256.256 INFO    ] time= 25/10/2026 18:18:04
[2026-10-25 18:18:04,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:18:04,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:18:04,406.406 INFO    ] No existing commands found in stream
[2026-10-25 18:18:09,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:18:09,439.439 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 18:18:13,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:18:13,372.372 INFO    ] Checking for system updates...
[2026-10-25 18:18:13,408.408 INFO    ] 200
[2026-10-25 18:18:13,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:13,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:13,475.475 INFO    ] No update needed
[2026-10-25 18:18:13,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 18:18:13,515.515 INFO    ] 200
[2026-10-25 18:18:13,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:13,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:18:13,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:13,636.636 INFO    ] No camera update needed
[2026-10-25 18:18:13,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:18:13,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:18:13,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:18:13,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:18:15,694.694 INFO    ] ================================================
[2026-10-25 18:18:15,710.710 INFO    ] Launching Daemon at Sun Oct 25 18:18:15 IST 2026
[2026-10-25 18:18:15,721.721 INFO    ] ================================================
[2026-10-25 18:18:16,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:18:16
[2026-10-25 18:18:16,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:18:17,136.136 INFO    ] Initializing speech engine...
[2026-10-25 18:18:17,151.151 INFO    ] 2026-10-25 18:18:17
[2026-10-25 18:18:17,408.408 INFO    ] 2026-10-25 18:18:17
[2026-10-25 18:18:17,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:18:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:18:17,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:18:17,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:18:17,864.864 INFO    ] time= 25/10/2026 18:18:17
[2026-10-25 18:18:17,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:18:17,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:18:18,047.047 INFO    ] No existing commands found in stream
[2026-10-25 18:18:23,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:18:23,062.062 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 18:18:24,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:18:24,178.178 INFO    ] Checking for system updates...
[2026-10-25 18:18:24,214.214 INFO    ] 200
[2026-10-25 18:18:24,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:24,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:18:24,280.280 INFO    ] No update needed
[2026-10-25 18:18:24,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 18:18:24,317.317 INFO    ] 200
[2026-10-25 18:18:24,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:24,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:18:24,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:18:24,408.408 INFO    ] No camera update needed
[2026-10-25 18:18:24,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:18:24,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:18:24,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:18:24,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:18:26,465.465 INFO    ] ================================================
[2026-10-25 18:18:26,480.480 INFO    ] Launching Daemon at Sun Oct 25 18:18:26 IST 2026
[2026-10-25 18:18:26,491.491 INFO    ] ================================================
[2026-10-25 18:18:27,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:18:27
[2026-10-25 18:18:27,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:18:27,904.904 INFO    ] Initializing speech engine...
[2026-10-25 18:18:27,910.910 INFO    ] 2026-10-25 18:18:27
[2026-10-25 18:18:28,208.208 INFO    ] 2026-10-25 18:18:28
[2026-10-25 18:18:28,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:18:28,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:18:28,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:18:28,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:18:28,599.599 INFO    ] time= 25/10/2026 18:18:28
[2026-10-25 18:18:28,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:18:28,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:18:28,714.714 INFO    ] No existing commands found in stream
[2026-10-25 18:18:33,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:18:33,735.735 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 18:18:36,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:18:36,785.785 INFO    ] Checking for system updates...
[2026-10-25 18:18:36,822.822 INFO    ] 200
[2026-10-25 18:18:36,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:36,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:36,880.880 INFO    ] No update needed
[2026-10-25 18:18:36,883.883 INFO    ] Checking for camera pi updates...
[2026-10-25 18:18:36,921.921 INFO    ] 200
[2026-10-25 18:18:36,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:36,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:18:37,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:37,020.020 INFO    ] No camera update needed
[2026-10-25 18:18:37,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:18:37,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:18:37,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:18:37,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:18:39,080.080 INFO    ] ================================================
[2026-10-25 18:18:39,097.097 INFO    ] Launching Daemon at Sun Oct 25 18:18:39 IST 2026
[2026-10-25 18:18:39,109.109 INFO    ] ================================================
[2026-10-25 18:18:39,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:18:39
[2026-10-25 18:18:40,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:18:40,760.760 INFO    ] Initializing speech engine...
[2026-10-25 18:18:40,767.767 INFO    ] 2026-10-25 18:18:40
[2026-10-25 18:18:41,042.042 INFO    ] 2026-10-25 18:18:41
[2026-10-25 18:18:41,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:18:41,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:18:41,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:18:41,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:18:41,660.660 INFO    ] time= 25/10/2026 18:18:41
[2026-10-25 18:18:41,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:18:41,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:18:41,783.783 INFO    ] No existing commands found in stream
[2026-10-25 18:18:46,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:18:46,805.805 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 18:18:47,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:18:47,769.769 INFO    ] Checking for system updates...
[2026-10-25 18:18:47,806.806 INFO    ] 200
[2026-10-25 18:18:47,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:47,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:18:47,877.877 INFO    ] No update needed
[2026-10-25 18:18:47,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 18:18:47,913.913 INFO    ] 200
[2026-10-25 18:18:47,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:47,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:18:48,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:18:48,005.005 INFO    ] No camera update needed
[2026-10-25 18:18:48,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:18:48,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:18:48,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:18:48,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:18:50,062.062 INFO    ] ================================================
[2026-10-25 18:18:50,078.078 INFO    ] Launching Daemon at Sun Oct 25 18:18:50 IST 2026
[2026-10-25 18:18:50,089.089 INFO    ] ================================================
[2026-10-25 18:18:50,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:18:50
[2026-10-25 18:18:51,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:18:51,495.495 INFO    ] Initializing speech engine...
[2026-10-25 18:18:51,504.504 INFO    ] 2026-10-25 18:18:51
[2026-10-25 18:18:51,799.799 INFO    ] 2026-10-25 18:18:51
[2026-10-25 18:18:51,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:18:52,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:18:52,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:18:52,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:18:52,191.191 INFO    ] time= 25/10/2026 18:18:52
[2026-10-25 18:18:52,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:18:52,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:18:52,321.321 INFO    ] No existing commands found in stream
[2026-10-25 18:18:57,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:18:57,336.336 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 18:18:58,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:18:58,331.331 INFO    ] Checking for system updates...
[2026-10-25 18:18:58,370.370 INFO    ] 200
[2026-10-25 18:18:58,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:58,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:58,437.437 INFO    ] No update needed
[2026-10-25 18:18:58,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 18:18:58,474.474 INFO    ] 200
[2026-10-25 18:18:58,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:18:58,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:18:58,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:18:58,578.578 INFO    ] No camera update needed
[2026-10-25 18:18:58,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:18:58,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:18:58,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:18:58,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:19:00,632.632 INFO    ] ================================================
[2026-10-25 18:19:00,648.648 INFO    ] Launching Daemon at Sun Oct 25 18:19:00 IST 2026
[2026-10-25 18:19:00,660.660 INFO    ] ================================================
[2026-10-25 18:19:01,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:19:01
[2026-10-25 18:19:02,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:19:02,454.454 INFO    ] Initializing speech engine...
[2026-10-25 18:19:02,461.461 INFO    ] 2026-10-25 18:19:02
[2026-10-25 18:19:02,773.773 INFO    ] 2026-10-25 18:19:02
[2026-10-25 18:19:02,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:19:03,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:19:03,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:19:03,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:19:03,263.263 INFO    ] time= 25/10/2026 18:19:03
[2026-10-25 18:19:03,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:19:03,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:19:03,521.521 INFO    ] No existing commands found in stream
[2026-10-25 18:19:08,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:19:08,556.556 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 18:19:12,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:19:12,524.524 INFO    ] Checking for system updates...
[2026-10-25 18:19:12,567.567 INFO    ] 200
[2026-10-25 18:19:12,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:12,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:19:12,636.636 INFO    ] No update needed
[2026-10-25 18:19:12,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 18:19:12,678.678 INFO    ] 200
[2026-10-25 18:19:12,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:12,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:19:12,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:19:12,785.785 INFO    ] No camera update needed
[2026-10-25 18:19:12,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:19:12,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:19:12,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:19:12,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:19:14,841.841 INFO    ] ================================================
[2026-10-25 18:19:14,857.857 INFO    ] Launching Daemon at Sun Oct 25 18:19:14 IST 2026
[2026-10-25 18:19:14,868.868 INFO    ] ================================================
[2026-10-25 18:19:15,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:19:15
[2026-10-25 18:19:16,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:19:16,275.275 INFO    ] Initializing speech engine...
[2026-10-25 18:19:16,283.283 INFO    ] 2026-10-25 18:19:16
[2026-10-25 18:19:16,576.576 INFO    ] 2026-10-25 18:19:16
[2026-10-25 18:19:16,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:19:16,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:19:16,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:19:16,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:19:16,970.970 INFO    ] time= 25/10/2026 18:19:16
[2026-10-25 18:19:16,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:19:16,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:19:17,064.064 INFO    ] No existing commands found in stream
[2026-10-25 18:19:22,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:19:22,097.097 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 18:19:25,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:19:25,045.045 INFO    ] Checking for system updates...
[2026-10-25 18:19:25,086.086 INFO    ] 200
[2026-10-25 18:19:25,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:25,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:19:25,144.144 INFO    ] No update needed
[2026-10-25 18:19:25,147.147 INFO    ] Checking for camera pi updates...
[2026-10-25 18:19:25,180.180 INFO    ] 200
[2026-10-25 18:19:25,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:25,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:19:25,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:19:25,295.295 INFO    ] No camera update needed
[2026-10-25 18:19:25,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:19:25,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:19:25,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:19:25,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:19:27,350.350 INFO    ] ================================================
[2026-10-25 18:19:27,367.367 INFO    ] Launching Daemon at Sun Oct 25 18:19:27 IST 2026
[2026-10-25 18:19:27,378.378 INFO    ] ================================================
[2026-10-25 18:19:27,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:19:27
[2026-10-25 18:19:28,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:19:28,786.786 INFO    ] Initializing speech engine...
[2026-10-25 18:19:28,804.804 INFO    ] 2026-10-25 18:19:28
[2026-10-25 18:19:29,054.054 INFO    ] 2026-10-25 18:19:29
[2026-10-25 18:19:29,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:19:29,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:19:29,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:19:29,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:19:29,494.494 INFO    ] time= 25/10/2026 18:19:29
[2026-10-25 18:19:29,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:19:29,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:19:29,652.652 INFO    ] No existing commands found in stream
[2026-10-25 18:19:34,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:19:34,667.667 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 18:19:35,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:19:35,997.997 INFO    ] Checking for system updates...
[2026-10-25 18:19:36,038.038 INFO    ] 200
[2026-10-25 18:19:36,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:36,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:19:36,097.097 INFO    ] No update needed
[2026-10-25 18:19:36,099.099 INFO    ] Checking for camera pi updates...
[2026-10-25 18:19:36,134.134 INFO    ] 200
[2026-10-25 18:19:36,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:36,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:19:36,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:19:36,234.234 INFO    ] No camera update needed
[2026-10-25 18:19:36,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:19:36,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:19:36,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:19:36,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:19:38,291.291 INFO    ] ================================================
[2026-10-25 18:19:38,307.307 INFO    ] Launching Daemon at Sun Oct 25 18:19:38 IST 2026
[2026-10-25 18:19:38,319.319 INFO    ] ================================================
[2026-10-25 18:19:38,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:19:38
[2026-10-25 18:19:39,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:19:39,748.748 INFO    ] Initializing speech engine...
[2026-10-25 18:19:39,753.753 INFO    ] 2026-10-25 18:19:39
[2026-10-25 18:19:40,001.001 INFO    ] 2026-10-25 18:19:39
[2026-10-25 18:19:40,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:19:43,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:19:43,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:19:43,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:19:43,931.931 INFO    ] time= 25/10/2026 18:19:43
[2026-10-25 18:19:43,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:19:43,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:19:43,983.983 INFO    ] No existing commands found in stream
[2026-10-25 18:19:48,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:19:48,995.995 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 18:19:51,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:19:51,477.477 INFO    ] Checking for system updates...
[2026-10-25 18:19:51,519.519 INFO    ] 200
[2026-10-25 18:19:51,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:51,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:19:51,585.585 INFO    ] No update needed
[2026-10-25 18:19:51,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 18:19:51,625.625 INFO    ] 200
[2026-10-25 18:19:51,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:19:51,674.674 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:19:51,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:19:51,727.727 INFO    ] No camera update needed
[2026-10-25 18:19:51,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:19:51,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:19:51,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:19:51,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:19:53,783.783 INFO    ] ================================================
[2026-10-25 18:19:53,798.798 INFO    ] Launching Daemon at Sun Oct 25 18:19:53 IST 2026
[2026-10-25 18:19:53,809.809 INFO    ] ================================================
[2026-10-25 18:19:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:19:54
[2026-10-25 18:19:54,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:19:55,246.246 INFO    ] Initializing speech engine...
[2026-10-25 18:19:55,259.259 INFO    ] 2026-10-25 18:19:55
[2026-10-25 18:19:55,525.525 INFO    ] 2026-10-25 18:19:55
[2026-10-25 18:19:55,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:19:55,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:19:55,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:19:55,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:19:56,005.005 INFO    ] time= 25/10/2026 18:19:55
[2026-10-25 18:19:56,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:19:56,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:19:56,152.152 INFO    ] No existing commands found in stream
[2026-10-25 18:20:01,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:20:01,167.167 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 18:20:02,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:20:02,732.732 INFO    ] Checking for system updates...
[2026-10-25 18:20:02,791.791 INFO    ] 200
[2026-10-25 18:20:02,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:02,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:02,874.874 INFO    ] No update needed
[2026-10-25 18:20:02,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 18:20:02,932.932 INFO    ] 200
[2026-10-25 18:20:02,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:02,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:20:03,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:03,040.040 INFO    ] No camera update needed
[2026-10-25 18:20:03,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:20:03,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:20:03,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:20:03,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:20:05,117.117 INFO    ] ================================================
[2026-10-25 18:20:05,133.133 INFO    ] Launching Daemon at Sun Oct 25 18:20:05 IST 2026
[2026-10-25 18:20:05,144.144 INFO    ] ================================================
[2026-10-25 18:20:05,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:20:05
[2026-10-25 18:20:06,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:20:06,586.586 INFO    ] Initializing speech engine...
[2026-10-25 18:20:06,599.599 INFO    ] 2026-10-25 18:20:06
[2026-10-25 18:20:06,882.882 INFO    ] 2026-10-25 18:20:06
[2026-10-25 18:20:06,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:20:07,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:20:07,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:20:07,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:20:07,298.298 INFO    ] time= 25/10/2026 18:20:07
[2026-10-25 18:20:07,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:20:07,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:20:07,448.448 INFO    ] No existing commands found in stream
[2026-10-25 18:20:12,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:20:12,476.476 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 18:20:15,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:20:15,588.588 INFO    ] Checking for system updates...
[2026-10-25 18:20:15,624.624 INFO    ] 200
[2026-10-25 18:20:15,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:15,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:20:15,683.683 INFO    ] No update needed
[2026-10-25 18:20:15,686.686 INFO    ] Checking for camera pi updates...
[2026-10-25 18:20:15,746.746 INFO    ] 200
[2026-10-25 18:20:15,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:15,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:20:15,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:20:15,854.854 INFO    ] No camera update needed
[2026-10-25 18:20:15,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:20:15,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:20:15,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:20:15,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:20:17,910.910 INFO    ] ================================================
[2026-10-25 18:20:17,925.925 INFO    ] Launching Daemon at Sun Oct 25 18:20:17 IST 2026
[2026-10-25 18:20:17,936.936 INFO    ] ================================================
[2026-10-25 18:20:18,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:20:18
[2026-10-25 18:20:19,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:20:19,549.549 INFO    ] Initializing speech engine...
[2026-10-25 18:20:19,561.561 INFO    ] 2026-10-25 18:20:19
[2026-10-25 18:20:19,843.843 INFO    ] 2026-10-25 18:20:19
[2026-10-25 18:20:19,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:20:20,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:20:20,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:20:20,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:20:20,315.315 INFO    ] time= 25/10/2026 18:20:20
[2026-10-25 18:20:20,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:20:20,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:20:20,512.512 INFO    ] No existing commands found in stream
[2026-10-25 18:20:25,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:20:25,537.537 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 18:20:27,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:20:27,555.555 INFO    ] Checking for system updates...
[2026-10-25 18:20:27,593.593 INFO    ] 200
[2026-10-25 18:20:27,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:27,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:20:27,658.658 INFO    ] No update needed
[2026-10-25 18:20:27,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 18:20:27,694.694 INFO    ] 200
[2026-10-25 18:20:27,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:27,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:20:27,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:20:27,798.798 INFO    ] No camera update needed
[2026-10-25 18:20:27,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:20:27,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:20:27,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:20:27,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:20:29,855.855 INFO    ] ================================================
[2026-10-25 18:20:29,871.871 INFO    ] Launching Daemon at Sun Oct 25 18:20:29 IST 2026
[2026-10-25 18:20:29,881.881 INFO    ] ================================================
[2026-10-25 18:20:30,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:20:30
[2026-10-25 18:20:31,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:20:31,491.491 INFO    ] Initializing speech engine...
[2026-10-25 18:20:31,499.499 INFO    ] 2026-10-25 18:20:31
[2026-10-25 18:20:31,781.781 INFO    ] 2026-10-25 18:20:31
[2026-10-25 18:20:31,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:20:32,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:20:32,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:20:32,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:20:32,332.332 INFO    ] time= 25/10/2026 18:20:32
[2026-10-25 18:20:32,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:20:32,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:20:32,514.514 INFO    ] No existing commands found in stream
[2026-10-25 18:20:37,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:20:37,546.546 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 18:20:41,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:20:41,404.404 INFO    ] Checking for system updates...
[2026-10-25 18:20:41,441.441 INFO    ] 200
[2026-10-25 18:20:41,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:41,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:41,499.499 INFO    ] No update needed
[2026-10-25 18:20:41,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 18:20:41,535.535 INFO    ] 200
[2026-10-25 18:20:41,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:41,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:20:41,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:41,740.740 INFO    ] No camera update needed
[2026-10-25 18:20:41,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:20:41,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:20:41,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:20:41,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:20:43,797.797 INFO    ] ================================================
[2026-10-25 18:20:43,813.813 INFO    ] Launching Daemon at Sun Oct 25 18:20:43 IST 2026
[2026-10-25 18:20:43,824.824 INFO    ] ================================================
[2026-10-25 18:20:44,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:20:44
[2026-10-25 18:20:45,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:20:45,420.420 INFO    ] Initializing speech engine...
[2026-10-25 18:20:45,434.434 INFO    ] 2026-10-25 18:20:45
[2026-10-25 18:20:45,711.711 INFO    ] 2026-10-25 18:20:45
[2026-10-25 18:20:45,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:20:46,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:20:46,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:20:47,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:20:47,071.071 INFO    ] time= 25/10/2026 18:20:47
[2026-10-25 18:20:47,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:20:47,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:20:47,143.143 INFO    ] No existing commands found in stream
[2026-10-25 18:20:52,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:20:52,157.157 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 18:20:53,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:20:53,022.022 INFO    ] Checking for system updates...
[2026-10-25 18:20:53,063.063 INFO    ] 200
[2026-10-25 18:20:53,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:53,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:53,120.120 INFO    ] No update needed
[2026-10-25 18:20:53,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 18:20:53,156.156 INFO    ] 200
[2026-10-25 18:20:53,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:20:53,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:20:53,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:20:53,265.265 INFO    ] No camera update needed
[2026-10-25 18:20:53,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:20:53,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:20:53,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:20:53,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:20:55,322.322 INFO    ] ================================================
[2026-10-25 18:20:55,338.338 INFO    ] Launching Daemon at Sun Oct 25 18:20:55 IST 2026
[2026-10-25 18:20:55,349.349 INFO    ] ================================================
[2026-10-25 18:20:55,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:20:55
[2026-10-25 18:20:56,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:20:56,766.766 INFO    ] Initializing speech engine...
[2026-10-25 18:20:56,775.775 INFO    ] 2026-10-25 18:20:56
[2026-10-25 18:20:57,021.021 INFO    ] 2026-10-25 18:20:57
[2026-10-25 18:20:57,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:20:57,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:20:57,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:20:57,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:20:57,392.392 INFO    ] time= 25/10/2026 18:20:57
[2026-10-25 18:20:57,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:20:57,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:20:57,572.572 INFO    ] No existing commands found in stream
[2026-10-25 18:21:02,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:21:02,596.596 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 18:21:03,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:21:03,563.563 INFO    ] Checking for system updates...
[2026-10-25 18:21:03,603.603 INFO    ] 200
[2026-10-25 18:21:03,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:03,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:03,661.661 INFO    ] No update needed
[2026-10-25 18:21:03,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 18:21:03,701.701 INFO    ] 200
[2026-10-25 18:21:03,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:03,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:21:03,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:03,821.821 INFO    ] No camera update needed
[2026-10-25 18:21:03,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:21:03,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:21:03,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:21:03,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:21:05,878.878 INFO    ] ================================================
[2026-10-25 18:21:05,893.893 INFO    ] Launching Daemon at Sun Oct 25 18:21:05 IST 2026
[2026-10-25 18:21:05,905.905 INFO    ] ================================================
[2026-10-25 18:21:06,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:21:06
[2026-10-25 18:21:07,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:21:07,509.509 INFO    ] Initializing speech engine...
[2026-10-25 18:21:07,523.523 INFO    ] 2026-10-25 18:21:07
[2026-10-25 18:21:07,809.809 INFO    ] 2026-10-25 18:21:07
[2026-10-25 18:21:07,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:21:08,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:21:08,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:21:08,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:21:08,259.259 INFO    ] time= 25/10/2026 18:21:08
[2026-10-25 18:21:08,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:21:08,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:21:08,403.403 INFO    ] No existing commands found in stream
[2026-10-25 18:21:13,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:21:13,419.419 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 18:21:18,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:21:18,514.514 INFO    ] Checking for system updates...
[2026-10-25 18:21:18,556.556 INFO    ] 200
[2026-10-25 18:21:18,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:18,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:21:18,621.621 INFO    ] No update needed
[2026-10-25 18:21:18,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 18:21:18,659.659 INFO    ] 200
[2026-10-25 18:21:18,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:18,712.712 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:21:18,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:21:18,764.764 INFO    ] No camera update needed
[2026-10-25 18:21:18,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:21:18,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:21:18,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:21:18,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:21:20,823.823 INFO    ] ================================================
[2026-10-25 18:21:20,838.838 INFO    ] Launching Daemon at Sun Oct 25 18:21:20 IST 2026
[2026-10-25 18:21:20,849.849 INFO    ] ================================================
[2026-10-25 18:21:21,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:21:21
[2026-10-25 18:21:22,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:21:22,272.272 INFO    ] Initializing speech engine...
[2026-10-25 18:21:22,289.289 INFO    ] 2026-10-25 18:21:22
[2026-10-25 18:21:22,555.555 INFO    ] 2026-10-25 18:21:22
[2026-10-25 18:21:22,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:21:22,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:21:22,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:21:22,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:21:22,966.966 INFO    ] time= 25/10/2026 18:21:22
[2026-10-25 18:21:22,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:21:22,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:21:23,054.054 INFO    ] No existing commands found in stream
[2026-10-25 18:21:28,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:21:28,087.087 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 18:21:30,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:21:30,765.765 INFO    ] Checking for system updates...
[2026-10-25 18:21:30,801.801 INFO    ] 200
[2026-10-25 18:21:30,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:30,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:21:30,859.859 INFO    ] No update needed
[2026-10-25 18:21:30,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 18:21:30,896.896 INFO    ] 200
[2026-10-25 18:21:30,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:30,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:21:30,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:21:30,996.996 INFO    ] No camera update needed
[2026-10-25 18:21:30,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:21:31,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:21:31,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:21:31,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:21:33,051.051 INFO    ] ================================================
[2026-10-25 18:21:33,066.066 INFO    ] Launching Daemon at Sun Oct 25 18:21:33 IST 2026
[2026-10-25 18:21:33,077.077 INFO    ] ================================================
[2026-10-25 18:21:33,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:21:33
[2026-10-25 18:21:34,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:21:34,500.500 INFO    ] Initializing speech engine...
[2026-10-25 18:21:34,509.509 INFO    ] 2026-10-25 18:21:34
[2026-10-25 18:21:34,757.757 INFO    ] 2026-10-25 18:21:34
[2026-10-25 18:21:34,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:21:35,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:21:35,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:21:35,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:21:35,209.209 INFO    ] time= 25/10/2026 18:21:35
[2026-10-25 18:21:35,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:21:35,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:21:35,383.383 INFO    ] No existing commands found in stream
[2026-10-25 18:21:40,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:21:40,397.397 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 18:21:42,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:21:42,557.557 INFO    ] Checking for system updates...
[2026-10-25 18:21:42,593.593 INFO    ] 200
[2026-10-25 18:21:42,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:42,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:42,662.662 INFO    ] No update needed
[2026-10-25 18:21:42,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 18:21:42,698.698 INFO    ] 200
[2026-10-25 18:21:42,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:42,746.746 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:21:42,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:42,801.801 INFO    ] No camera update needed
[2026-10-25 18:21:42,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:21:42,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:21:42,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:21:42,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:21:44,857.857 INFO    ] ================================================
[2026-10-25 18:21:44,872.872 INFO    ] Launching Daemon at Sun Oct 25 18:21:44 IST 2026
[2026-10-25 18:21:44,883.883 INFO    ] ================================================
[2026-10-25 18:21:45,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:21:45
[2026-10-25 18:21:46,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:21:46,292.292 INFO    ] Initializing speech engine...
[2026-10-25 18:21:46,305.305 INFO    ] 2026-10-25 18:21:46
[2026-10-25 18:21:46,571.571 INFO    ] 2026-10-25 18:21:46
[2026-10-25 18:21:46,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:21:49,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:21:49,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:21:50,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:21:50,923.923 INFO    ] time= 25/10/2026 18:21:50
[2026-10-25 18:21:50,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:21:50,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:21:50,975.975 INFO    ] No existing commands found in stream
[2026-10-25 18:21:55,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:21:55,987.987 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 18:21:59,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:21:59,065.065 INFO    ] Checking for system updates...
[2026-10-25 18:21:59,105.105 INFO    ] 200
[2026-10-25 18:21:59,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:59,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:59,169.169 INFO    ] No update needed
[2026-10-25 18:21:59,172.172 INFO    ] Checking for camera pi updates...
[2026-10-25 18:21:59,206.206 INFO    ] 200
[2026-10-25 18:21:59,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:21:59,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:21:59,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:21:59,309.309 INFO    ] No camera update needed
[2026-10-25 18:21:59,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:21:59,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:21:59,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:21:59,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:22:01,365.365 INFO    ] ================================================
[2026-10-25 18:22:01,380.380 INFO    ] Launching Daemon at Sun Oct 25 18:22:01 IST 2026
[2026-10-25 18:22:01,390.390 INFO    ] ================================================
[2026-10-25 18:22:02,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:22:02
[2026-10-25 18:22:02,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:22:03,162.162 INFO    ] Initializing speech engine...
[2026-10-25 18:22:03,168.168 INFO    ] 2026-10-25 18:22:03
[2026-10-25 18:22:03,482.482 INFO    ] 2026-10-25 18:22:03
[2026-10-25 18:22:03,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:22:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:22:03,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:22:03,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:22:04,010.010 INFO    ] time= 25/10/2026 18:22:03
[2026-10-25 18:22:04,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:22:04,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:22:04,239.239 INFO    ] No existing commands found in stream
[2026-10-25 18:22:09,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:22:09,267.267 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 18:22:13,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:22:13,557.557 INFO    ] Checking for system updates...
[2026-10-25 18:22:13,598.598 INFO    ] 200
[2026-10-25 18:22:13,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:13,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:22:13,656.656 INFO    ] No update needed
[2026-10-25 18:22:13,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 18:22:13,692.692 INFO    ] 200
[2026-10-25 18:22:13,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:13,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:22:13,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:22:13,802.802 INFO    ] No camera update needed
[2026-10-25 18:22:13,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:22:13,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:22:13,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:22:13,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:22:15,860.860 INFO    ] ================================================
[2026-10-25 18:22:15,876.876 INFO    ] Launching Daemon at Sun Oct 25 18:22:15 IST 2026
[2026-10-25 18:22:15,889.889 INFO    ] ================================================
[2026-10-25 18:22:16,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:22:16
[2026-10-25 18:22:17,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:22:17,305.305 INFO    ] Initializing speech engine...
[2026-10-25 18:22:17,315.315 INFO    ] 2026-10-25 18:22:17
[2026-10-25 18:22:17,572.572 INFO    ] 2026-10-25 18:22:17
[2026-10-25 18:22:17,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:22:20,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:22:20,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:22:21,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:22:21,212.212 INFO    ] time= 25/10/2026 18:22:21
[2026-10-25 18:22:21,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:22:21,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:22:21,264.264 INFO    ] No existing commands found in stream
[2026-10-25 18:22:26,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:22:26,276.276 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 18:22:29,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:22:29,239.239 INFO    ] Checking for system updates...
[2026-10-25 18:22:29,279.279 INFO    ] 200
[2026-10-25 18:22:29,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:29,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:29,343.343 INFO    ] No update needed
[2026-10-25 18:22:29,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 18:22:29,383.383 INFO    ] 200
[2026-10-25 18:22:29,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:29,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:22:29,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:29,498.498 INFO    ] No camera update needed
[2026-10-25 18:22:29,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:22:29,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:22:29,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:22:29,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:22:31,554.554 INFO    ] ================================================
[2026-10-25 18:22:31,569.569 INFO    ] Launching Daemon at Sun Oct 25 18:22:31 IST 2026
[2026-10-25 18:22:31,580.580 INFO    ] ================================================
[2026-10-25 18:22:32,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:22:32
[2026-10-25 18:22:32,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:22:33,115.115 INFO    ] Initializing speech engine...
[2026-10-25 18:22:33,122.122 INFO    ] 2026-10-25 18:22:33
[2026-10-25 18:22:33,399.399 INFO    ] 2026-10-25 18:22:33
[2026-10-25 18:22:33,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:22:33,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:22:33,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:22:33,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:22:33,882.882 INFO    ] time= 25/10/2026 18:22:33
[2026-10-25 18:22:33,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:22:33,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:22:34,061.061 INFO    ] No existing commands found in stream
[2026-10-25 18:22:39,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:22:39,076.076 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 18:22:42,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:22:42,493.493 INFO    ] Checking for system updates...
[2026-10-25 18:22:42,530.530 INFO    ] 200
[2026-10-25 18:22:42,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:42,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:42,592.592 INFO    ] No update needed
[2026-10-25 18:22:42,595.595 INFO    ] Checking for camera pi updates...
[2026-10-25 18:22:42,632.632 INFO    ] 200
[2026-10-25 18:22:42,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:42,675.675 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:22:42,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:42,738.738 INFO    ] No camera update needed
[2026-10-25 18:22:42,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:22:42,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:22:42,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:22:42,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:22:44,792.792 INFO    ] ================================================
[2026-10-25 18:22:44,807.807 INFO    ] Launching Daemon at Sun Oct 25 18:22:44 IST 2026
[2026-10-25 18:22:44,818.818 INFO    ] ================================================
[2026-10-25 18:22:45,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:22:45
[2026-10-25 18:22:46,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:22:46,336.336 INFO    ] Initializing speech engine...
[2026-10-25 18:22:46,344.344 INFO    ] 2026-10-25 18:22:46
[2026-10-25 18:22:46,605.605 INFO    ] 2026-10-25 18:22:46
[2026-10-25 18:22:46,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:22:46,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:22:46,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:22:47,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:22:47,101.101 INFO    ] time= 25/10/2026 18:22:47
[2026-10-25 18:22:47,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:22:47,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:22:47,249.249 INFO    ] No existing commands found in stream
[2026-10-25 18:22:52,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:22:52,266.266 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 18:22:55,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:22:55,869.869 INFO    ] Checking for system updates...
[2026-10-25 18:22:55,907.907 INFO    ] 200
[2026-10-25 18:22:55,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:55,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:55,971.971 INFO    ] No update needed
[2026-10-25 18:22:55,974.974 INFO    ] Checking for camera pi updates...
[2026-10-25 18:22:56,011.011 INFO    ] 200
[2026-10-25 18:22:56,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:22:56,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:22:56,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:22:56,222.222 INFO    ] No camera update needed
[2026-10-25 18:22:56,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:22:56,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:22:56,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:22:56,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:22:58,276.276 INFO    ] ================================================
[2026-10-25 18:22:58,291.291 INFO    ] Launching Daemon at Sun Oct 25 18:22:58 IST 2026
[2026-10-25 18:22:58,302.302 INFO    ] ================================================
[2026-10-25 18:22:58,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:22:58
[2026-10-25 18:22:59,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:22:59,717.717 INFO    ] Initializing speech engine...
[2026-10-25 18:22:59,729.729 INFO    ] 2026-10-25 18:22:59
[2026-10-25 18:22:59,978.978 INFO    ] 2026-10-25 18:22:59
[2026-10-25 18:23:00,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:23:00,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:23:00,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:23:00,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:23:00,343.343 INFO    ] time= 25/10/2026 18:23:00
[2026-10-25 18:23:00,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:23:00,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:23:00,448.448 INFO    ] No existing commands found in stream
[2026-10-25 18:23:05,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:23:05,481.481 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 18:23:07,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:23:07,031.031 INFO    ] Checking for system updates...
[2026-10-25 18:23:07,069.069 INFO    ] 200
[2026-10-25 18:23:07,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:07,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:07,133.133 INFO    ] No update needed
[2026-10-25 18:23:07,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 18:23:07,172.172 INFO    ] 200
[2026-10-25 18:23:07,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:07,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:23:07,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:07,277.277 INFO    ] No camera update needed
[2026-10-25 18:23:07,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:23:07,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:23:07,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:23:07,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:23:09,332.332 INFO    ] ================================================
[2026-10-25 18:23:09,347.347 INFO    ] Launching Daemon at Sun Oct 25 18:23:09 IST 2026
[2026-10-25 18:23:09,361.361 INFO    ] ================================================
[2026-10-25 18:23:09,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:23:09
[2026-10-25 18:23:10,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:23:10,748.748 INFO    ] Initializing speech engine...
[2026-10-25 18:23:10,756.756 INFO    ] 2026-10-25 18:23:10
[2026-10-25 18:23:11,038.038 INFO    ] 2026-10-25 18:23:11
[2026-10-25 18:23:11,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:23:11,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:23:11,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:23:11,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:23:11,498.498 INFO    ] time= 25/10/2026 18:23:11
[2026-10-25 18:23:11,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:23:11,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:23:11,665.665 INFO    ] No existing commands found in stream
[2026-10-25 18:23:16,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:23:16,680.680 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 18:23:18,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:23:18,891.891 INFO    ] Checking for system updates...
[2026-10-25 18:23:18,933.933 INFO    ] 200
[2026-10-25 18:23:18,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:19,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:23:19,013.013 INFO    ] No update needed
[2026-10-25 18:23:19,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 18:23:19,061.061 INFO    ] 200
[2026-10-25 18:23:19,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:19,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:23:19,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:23:19,186.186 INFO    ] No camera update needed
[2026-10-25 18:23:19,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:23:19,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:23:19,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:23:19,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:23:21,248.248 INFO    ] ================================================
[2026-10-25 18:23:21,264.264 INFO    ] Launching Daemon at Sun Oct 25 18:23:21 IST 2026
[2026-10-25 18:23:21,276.276 INFO    ] ================================================
[2026-10-25 18:23:21,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:23:21
[2026-10-25 18:23:22,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:23:22,765.765 INFO    ] Initializing speech engine...
[2026-10-25 18:23:22,775.775 INFO    ] 2026-10-25 18:23:22
[2026-10-25 18:23:23,023.023 INFO    ] 2026-10-25 18:23:23
[2026-10-25 18:23:23,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:23:24,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:23:24,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:23:24,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:23:24,772.772 INFO    ] time= 25/10/2026 18:23:24
[2026-10-25 18:23:24,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:23:24,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:23:24,906.906 INFO    ] No existing commands found in stream
[2026-10-25 18:23:29,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:23:29,945.945 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 18:23:31,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:23:31,046.046 INFO    ] Checking for system updates...
[2026-10-25 18:23:31,086.086 INFO    ] 200
[2026-10-25 18:23:31,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:31,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:23:31,151.151 INFO    ] No update needed
[2026-10-25 18:23:31,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 18:23:31,190.190 INFO    ] 200
[2026-10-25 18:23:31,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:31,236.236 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:23:31,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:23:31,278.278 INFO    ] No camera update needed
[2026-10-25 18:23:31,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:23:31,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:23:31,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:23:31,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:23:33,334.334 INFO    ] ================================================
[2026-10-25 18:23:33,348.348 INFO    ] Launching Daemon at Sun Oct 25 18:23:33 IST 2026
[2026-10-25 18:23:33,359.359 INFO    ] ================================================
[2026-10-25 18:23:33,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:23:33
[2026-10-25 18:23:34,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:23:34,931.931 INFO    ] Initializing speech engine...
[2026-10-25 18:23:34,939.939 INFO    ] 2026-10-25 18:23:34
[2026-10-25 18:23:35,221.221 INFO    ] 2026-10-25 18:23:35
[2026-10-25 18:23:35,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:23:35,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:23:35,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:23:35,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:23:35,753.753 INFO    ] time= 25/10/2026 18:23:35
[2026-10-25 18:23:35,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:23:35,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:23:35,894.894 INFO    ] No existing commands found in stream
[2026-10-25 18:23:40,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:23:40,921.921 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 18:23:43,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:23:43,094.094 INFO    ] Checking for system updates...
[2026-10-25 18:23:43,150.150 INFO    ] 200
[2026-10-25 18:23:43,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:43,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:43,233.233 INFO    ] No update needed
[2026-10-25 18:23:43,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 18:23:43,274.274 INFO    ] 200
[2026-10-25 18:23:43,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:43,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:23:43,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:43,382.382 INFO    ] No camera update needed
[2026-10-25 18:23:43,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:23:43,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:23:43,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:23:43,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:23:45,442.442 INFO    ] ================================================
[2026-10-25 18:23:45,457.457 INFO    ] Launching Daemon at Sun Oct 25 18:23:45 IST 2026
[2026-10-25 18:23:45,468.468 INFO    ] ================================================
[2026-10-25 18:23:46,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:23:46
[2026-10-25 18:23:46,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:23:46,935.935 INFO    ] Initializing speech engine...
[2026-10-25 18:23:46,940.940 INFO    ] 2026-10-25 18:23:46
[2026-10-25 18:23:47,238.238 INFO    ] 2026-10-25 18:23:47
[2026-10-25 18:23:47,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:23:47,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:23:47,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:23:47,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:23:47,589.589 INFO    ] time= 25/10/2026 18:23:47
[2026-10-25 18:23:47,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:23:47,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:23:47,668.668 INFO    ] No existing commands found in stream
[2026-10-25 18:23:52,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:23:52,682.682 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 18:23:56,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:23:56,372.372 INFO    ] Checking for system updates...
[2026-10-25 18:23:56,412.412 INFO    ] 200
[2026-10-25 18:23:56,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:56,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:56,477.477 INFO    ] No update needed
[2026-10-25 18:23:56,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 18:23:56,513.513 INFO    ] 200
[2026-10-25 18:23:56,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:23:56,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:23:56,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:23:56,629.629 INFO    ] No camera update needed
[2026-10-25 18:23:56,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:23:56,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:23:56,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:23:56,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:23:58,684.684 INFO    ] ================================================
[2026-10-25 18:23:58,699.699 INFO    ] Launching Daemon at Sun Oct 25 18:23:58 IST 2026
[2026-10-25 18:23:58,710.710 INFO    ] ================================================
[2026-10-25 18:23:59,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:23:59
[2026-10-25 18:24:00,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:24:00,332.332 INFO    ] Initializing speech engine...
[2026-10-25 18:24:00,346.346 INFO    ] 2026-10-25 18:24:00
[2026-10-25 18:24:00,627.627 INFO    ] 2026-10-25 18:24:00
[2026-10-25 18:24:00,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:24:00,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:24:00,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:24:01,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:24:01,082.082 INFO    ] time= 25/10/2026 18:24:01
[2026-10-25 18:24:01,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:24:01,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:24:01,240.240 INFO    ] No existing commands found in stream
[2026-10-25 18:24:06,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:24:06,256.256 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 18:24:08,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:24:08,669.669 INFO    ] Checking for system updates...
[2026-10-25 18:24:08,711.711 INFO    ] 200
[2026-10-25 18:24:08,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:08,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:08,770.770 INFO    ] No update needed
[2026-10-25 18:24:08,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 18:24:08,807.807 INFO    ] 200
[2026-10-25 18:24:08,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:08,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:24:08,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:08,931.931 INFO    ] No camera update needed
[2026-10-25 18:24:08,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:24:08,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:24:08,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:24:08,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:24:10,988.988 INFO    ] ================================================
[2026-10-25 18:24:11,003.003 INFO    ] Launching Daemon at Sun Oct 25 18:24:10 IST 2026
[2026-10-25 18:24:11,014.014 INFO    ] ================================================
[2026-10-25 18:24:11,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:24:11
[2026-10-25 18:24:12,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:24:12,611.611 INFO    ] Initializing speech engine...
[2026-10-25 18:24:12,621.621 INFO    ] 2026-10-25 18:24:12
[2026-10-25 18:24:12,912.912 INFO    ] 2026-10-25 18:24:12
[2026-10-25 18:24:12,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:24:13,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:24:13,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:24:13,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:24:13,383.383 INFO    ] time= 25/10/2026 18:24:13
[2026-10-25 18:24:13,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:24:13,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:24:13,524.524 INFO    ] No existing commands found in stream
[2026-10-25 18:24:18,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:24:18,541.541 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 18:24:21,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:24:21,980.980 INFO    ] Checking for system updates...
[2026-10-25 18:24:22,019.019 INFO    ] 200
[2026-10-25 18:24:22,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:22,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:22,077.077 INFO    ] No update needed
[2026-10-25 18:24:22,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 18:24:22,117.117 INFO    ] 200
[2026-10-25 18:24:22,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:22,165.165 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:24:22,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:22,199.199 INFO    ] No camera update needed
[2026-10-25 18:24:22,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:24:22,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:24:22,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:24:22,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:24:24,253.253 INFO    ] ================================================
[2026-10-25 18:24:24,268.268 INFO    ] Launching Daemon at Sun Oct 25 18:24:24 IST 2026
[2026-10-25 18:24:24,279.279 INFO    ] ================================================
[2026-10-25 18:24:24,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:24:24
[2026-10-25 18:24:25,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:24:25,912.912 INFO    ] Initializing speech engine...
[2026-10-25 18:24:25,949.949 INFO    ] 2026-10-25 18:24:25
[2026-10-25 18:24:26,230.230 INFO    ] 2026-10-25 18:24:26
[2026-10-25 18:24:26,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:24:27,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:24:27,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:24:28,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:24:28,181.181 INFO    ] time= 25/10/2026 18:24:28
[2026-10-25 18:24:28,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:24:28,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:24:28,276.276 INFO    ] No existing commands found in stream
[2026-10-25 18:24:33,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:24:33,286.286 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 18:24:34,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:24:34,405.405 INFO    ] Checking for system updates...
[2026-10-25 18:24:34,443.443 INFO    ] 200
[2026-10-25 18:24:34,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:34,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:34,508.508 INFO    ] No update needed
[2026-10-25 18:24:34,511.511 INFO    ] Checking for camera pi updates...
[2026-10-25 18:24:34,549.549 INFO    ] 200
[2026-10-25 18:24:34,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:34,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:24:34,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:24:34,649.649 INFO    ] No camera update needed
[2026-10-25 18:24:34,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:24:34,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:24:34,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:24:34,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:24:36,706.706 INFO    ] ================================================
[2026-10-25 18:24:36,721.721 INFO    ] Launching Daemon at Sun Oct 25 18:24:36 IST 2026
[2026-10-25 18:24:36,731.731 INFO    ] ================================================
[2026-10-25 18:24:37,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:24:37
[2026-10-25 18:24:37,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:24:38,147.147 INFO    ] Initializing speech engine...
[2026-10-25 18:24:38,155.155 INFO    ] 2026-10-25 18:24:38
[2026-10-25 18:24:38,401.401 INFO    ] 2026-10-25 18:24:38
[2026-10-25 18:24:38,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:24:38,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:24:38,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:24:38,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:24:38,769.769 INFO    ] time= 25/10/2026 18:24:38
[2026-10-25 18:24:38,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:24:38,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:24:38,934.934 INFO    ] No existing commands found in stream
[2026-10-25 18:24:43,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:24:43,962.962 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 18:24:47,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:24:47,168.168 INFO    ] Checking for system updates...
[2026-10-25 18:24:47,205.205 INFO    ] 200
[2026-10-25 18:24:47,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:47,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:24:47,264.264 INFO    ] No update needed
[2026-10-25 18:24:47,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 18:24:47,300.300 INFO    ] 200
[2026-10-25 18:24:47,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:24:47,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:24:47,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:24:47,417.417 INFO    ] No camera update needed
[2026-10-25 18:24:47,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:24:47,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:24:47,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:24:47,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:24:49,473.473 INFO    ] ================================================
[2026-10-25 18:24:49,488.488 INFO    ] Launching Daemon at Sun Oct 25 18:24:49 IST 2026
[2026-10-25 18:24:49,499.499 INFO    ] ================================================
[2026-10-25 18:24:50,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:24:50
[2026-10-25 18:24:50,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:24:51,125.125 INFO    ] Initializing speech engine...
[2026-10-25 18:24:51,139.139 INFO    ] 2026-10-25 18:24:51
[2026-10-25 18:24:51,429.429 INFO    ] 2026-10-25 18:24:51
[2026-10-25 18:24:51,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:24:51,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:24:51,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:24:51,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:24:51,897.897 INFO    ] time= 25/10/2026 18:24:51
[2026-10-25 18:24:51,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:24:51,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:24:52,036.036 INFO    ] No existing commands found in stream
[2026-10-25 18:24:57,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:24:57,055.055 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 18:25:00,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:25:00,068.068 INFO    ] Checking for system updates...
[2026-10-25 18:25:00,109.109 INFO    ] 200
[2026-10-25 18:25:00,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:00,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:25:00,176.176 INFO    ] No update needed
[2026-10-25 18:25:00,178.178 INFO    ] Checking for camera pi updates...
[2026-10-25 18:25:00,217.217 INFO    ] 200
[2026-10-25 18:25:00,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:00,271.271 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:25:00,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:25:00,427.427 INFO    ] No camera update needed
[2026-10-25 18:25:00,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:25:00,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:25:00,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:25:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:25:02,507.507 INFO    ] ================================================
[2026-10-25 18:25:02,528.528 INFO    ] Launching Daemon at Sun Oct 25 18:25:02 IST 2026
[2026-10-25 18:25:02,544.544 INFO    ] ================================================
[2026-10-25 18:25:03,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:25:03
[2026-10-25 18:25:03,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:25:04,127.127 INFO    ] Initializing speech engine...
[2026-10-25 18:25:04,130.130 INFO    ] 2026-10-25 18:25:04
[2026-10-25 18:25:04,424.424 INFO    ] 2026-10-25 18:25:04
[2026-10-25 18:25:04,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:25:04,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:25:04,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:25:04,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:25:04,803.803 INFO    ] time= 25/10/2026 18:25:04
[2026-10-25 18:25:04,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:25:04,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:25:04,927.927 INFO    ] No existing commands found in stream
[2026-10-25 18:25:09,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:25:09,942.942 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 18:25:12,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:25:12,144.144 INFO    ] Checking for system updates...
[2026-10-25 18:25:12,185.185 INFO    ] 200
[2026-10-25 18:25:12,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:12,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:25:12,244.244 INFO    ] No update needed
[2026-10-25 18:25:12,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 18:25:12,284.284 INFO    ] 200
[2026-10-25 18:25:12,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:12,337.337 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:25:12,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:25:12,404.404 INFO    ] No camera update needed
[2026-10-25 18:25:12,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:25:12,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:25:12,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:25:12,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:25:14,461.461 INFO    ] ================================================
[2026-10-25 18:25:14,476.476 INFO    ] Launching Daemon at Sun Oct 25 18:25:14 IST 2026
[2026-10-25 18:25:14,486.486 INFO    ] ================================================
[2026-10-25 18:25:15,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:25:15
[2026-10-25 18:25:15,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:25:15,929.929 INFO    ] Initializing speech engine...
[2026-10-25 18:25:15,939.939 INFO    ] 2026-10-25 18:25:15
[2026-10-25 18:25:16,204.204 INFO    ] 2026-10-25 18:25:16
[2026-10-25 18:25:16,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:25:16,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:25:16,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:25:16,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:25:16,586.586 INFO    ] time= 25/10/2026 18:25:16
[2026-10-25 18:25:16,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:25:16,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:25:16,756.756 INFO    ] No existing commands found in stream
[2026-10-25 18:25:21,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:25:21,789.789 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 18:25:24,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:25:24,721.721 INFO    ] Checking for system updates...
[2026-10-25 18:25:24,757.757 INFO    ] 200
[2026-10-25 18:25:24,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:24,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:24,819.819 INFO    ] No update needed
[2026-10-25 18:25:24,821.821 INFO    ] Checking for camera pi updates...
[2026-10-25 18:25:24,854.854 INFO    ] 200
[2026-10-25 18:25:24,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:24,902.902 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:25:24,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:24,973.973 INFO    ] No camera update needed
[2026-10-25 18:25:24,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:25:24,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:25:24,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:25:24,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:25:27,030.030 INFO    ] ================================================
[2026-10-25 18:25:27,045.045 INFO    ] Launching Daemon at Sun Oct 25 18:25:27 IST 2026
[2026-10-25 18:25:27,056.056 INFO    ] ================================================
[2026-10-25 18:25:27,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:25:27
[2026-10-25 18:25:28,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:25:28,454.454 INFO    ] Initializing speech engine...
[2026-10-25 18:25:28,469.469 INFO    ] 2026-10-25 18:25:28
[2026-10-25 18:25:28,733.733 INFO    ] 2026-10-25 18:25:28
[2026-10-25 18:25:28,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:25:31,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:25:31,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:25:32,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:25:32,149.149 INFO    ] time= 25/10/2026 18:25:32
[2026-10-25 18:25:32,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:25:32,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:25:32,202.202 INFO    ] No existing commands found in stream
[2026-10-25 18:25:37,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:25:37,214.214 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 18:25:38,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:25:38,662.662 INFO    ] Checking for system updates...
[2026-10-25 18:25:38,698.698 INFO    ] 200
[2026-10-25 18:25:38,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:38,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:38,760.760 INFO    ] No update needed
[2026-10-25 18:25:38,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 18:25:38,800.800 INFO    ] 200
[2026-10-25 18:25:38,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:38,846.846 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:25:38,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:38,879.879 INFO    ] No camera update needed
[2026-10-25 18:25:38,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:25:38,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:25:38,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:25:38,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:25:40,934.934 INFO    ] ================================================
[2026-10-25 18:25:40,949.949 INFO    ] Launching Daemon at Sun Oct 25 18:25:40 IST 2026
[2026-10-25 18:25:40,960.960 INFO    ] ================================================
[2026-10-25 18:25:41,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:25:41
[2026-10-25 18:25:42,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:25:42,371.371 INFO    ] Initializing speech engine...
[2026-10-25 18:25:42,377.377 INFO    ] 2026-10-25 18:25:42
[2026-10-25 18:25:42,650.650 INFO    ] 2026-10-25 18:25:42
[2026-10-25 18:25:42,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:25:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:25:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:25:43,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:25:43,044.044 INFO    ] time= 25/10/2026 18:25:43
[2026-10-25 18:25:43,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:25:43,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:25:43,223.223 INFO    ] No existing commands found in stream
[2026-10-25 18:25:48,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:25:48,256.256 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 18:25:50,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:25:50,925.925 INFO    ] Checking for system updates...
[2026-10-25 18:25:50,964.964 INFO    ] 200
[2026-10-25 18:25:50,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:51,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:51,022.022 INFO    ] No update needed
[2026-10-25 18:25:51,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 18:25:51,058.058 INFO    ] 200
[2026-10-25 18:25:51,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:25:51,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:25:51,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:25:51,159.159 INFO    ] No camera update needed
[2026-10-25 18:25:51,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:25:51,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:25:51,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:25:51,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:25:53,213.213 INFO    ] ================================================
[2026-10-25 18:25:53,229.229 INFO    ] Launching Daemon at Sun Oct 25 18:25:53 IST 2026
[2026-10-25 18:25:53,240.240 INFO    ] ================================================
[2026-10-25 18:25:53,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:25:53
[2026-10-25 18:25:54,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:25:54,674.674 INFO    ] Initializing speech engine...
[2026-10-25 18:25:54,683.683 INFO    ] 2026-10-25 18:25:54
[2026-10-25 18:25:54,939.939 INFO    ] 2026-10-25 18:25:54
[2026-10-25 18:25:54,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:25:55,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:25:55,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:25:55,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:25:55,297.297 INFO    ] time= 25/10/2026 18:25:55
[2026-10-25 18:25:55,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:25:55,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:25:55,376.376 INFO    ] No existing commands found in stream
[2026-10-25 18:26:00,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:26:00,389.389 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 18:26:03,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:26:03,422.422 INFO    ] Checking for system updates...
[2026-10-25 18:26:03,462.462 INFO    ] 200
[2026-10-25 18:26:03,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:03,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:03,519.519 INFO    ] No update needed
[2026-10-25 18:26:03,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 18:26:03,556.556 INFO    ] 200
[2026-10-25 18:26:03,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:03,611.611 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:26:03,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:03,679.679 INFO    ] No camera update needed
[2026-10-25 18:26:03,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:26:03,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:26:03,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:26:03,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:26:05,736.736 INFO    ] ================================================
[2026-10-25 18:26:05,753.753 INFO    ] Launching Daemon at Sun Oct 25 18:26:05 IST 2026
[2026-10-25 18:26:05,766.766 INFO    ] ================================================
[2026-10-25 18:26:06,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:26:06
[2026-10-25 18:26:06,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:26:07,230.230 INFO    ] Initializing speech engine...
[2026-10-25 18:26:07,237.237 INFO    ] 2026-10-25 18:26:07
[2026-10-25 18:26:07,483.483 INFO    ] 2026-10-25 18:26:07
[2026-10-25 18:26:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:26:07,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:26:07,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:26:07,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:26:07,851.851 INFO    ] time= 25/10/2026 18:26:07
[2026-10-25 18:26:07,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:26:07,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:26:08,032.032 INFO    ] No existing commands found in stream
[2026-10-25 18:26:13,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:26:13,060.060 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 18:26:15,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:26:15,075.075 INFO    ] Checking for system updates...
[2026-10-25 18:26:15,116.116 INFO    ] 200
[2026-10-25 18:26:15,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:15,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:26:15,187.187 INFO    ] No update needed
[2026-10-25 18:26:15,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 18:26:15,229.229 INFO    ] 200
[2026-10-25 18:26:15,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:15,278.278 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:26:15,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:26:15,336.336 INFO    ] No camera update needed
[2026-10-25 18:26:15,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:26:15,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:26:15,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:26:15,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:26:17,394.394 INFO    ] ================================================
[2026-10-25 18:26:17,410.410 INFO    ] Launching Daemon at Sun Oct 25 18:26:17 IST 2026
[2026-10-25 18:26:17,422.422 INFO    ] ================================================
[2026-10-25 18:26:18,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:26:18
[2026-10-25 18:26:18,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:26:18,851.851 INFO    ] Initializing speech engine...
[2026-10-25 18:26:18,876.876 INFO    ] 2026-10-25 18:26:18
[2026-10-25 18:26:19,134.134 INFO    ] 2026-10-25 18:26:19
[2026-10-25 18:26:19,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:26:19,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:26:19,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:26:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:26:19,476.476 INFO    ] time= 25/10/2026 18:26:19
[2026-10-25 18:26:19,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:26:19,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:26:19,588.588 INFO    ] No existing commands found in stream
[2026-10-25 18:26:24,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:26:24,603.603 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 18:26:26,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:26:27,399.399 INFO    ] Checking for system updates...
[2026-10-25 18:26:27,443.443 INFO    ] 200
[2026-10-25 18:26:27,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:27,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:27,503.503 INFO    ] No update needed
[2026-10-25 18:26:27,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 18:26:27,541.541 INFO    ] 200
[2026-10-25 18:26:27,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:27,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:26:27,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:27,641.641 INFO    ] No camera update needed
[2026-10-25 18:26:27,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:26:27,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:26:27,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:26:27,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:26:29,700.700 INFO    ] ================================================
[2026-10-25 18:26:29,716.716 INFO    ] Launching Daemon at Sun Oct 25 18:26:29 IST 2026
[2026-10-25 18:26:29,728.728 INFO    ] ================================================
[2026-10-25 18:26:30,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:26:30
[2026-10-25 18:26:30,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:26:31,187.187 INFO    ] Initializing speech engine...
[2026-10-25 18:26:31,529.529 INFO    ] 2026-10-25 18:26:31
[2026-10-25 18:26:32,511.511 INFO    ] 2026-10-25 18:26:32
[2026-10-25 18:26:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:26:34,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:26:34,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:26:34,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:26:34,524.524 INFO    ] time= 25/10/2026 18:26:34
[2026-10-25 18:26:34,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:26:34,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:26:34,581.581 INFO    ] No existing commands found in stream
[2026-10-25 18:26:39,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:26:39,593.593 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 18:26:43,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:26:43,079.079 INFO    ] Checking for system updates...
[2026-10-25 18:26:43,118.118 INFO    ] 200
[2026-10-25 18:26:43,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:43,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:43,182.182 INFO    ] No update needed
[2026-10-25 18:26:43,184.184 INFO    ] Checking for camera pi updates...
[2026-10-25 18:26:43,218.218 INFO    ] 200
[2026-10-25 18:26:43,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:43,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:26:43,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:43,315.315 INFO    ] No camera update needed
[2026-10-25 18:26:43,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:26:43,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:26:43,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:26:43,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:26:45,375.375 INFO    ] ================================================
[2026-10-25 18:26:45,391.391 INFO    ] Launching Daemon at Sun Oct 25 18:26:45 IST 2026
[2026-10-25 18:26:45,401.401 INFO    ] ================================================
[2026-10-25 18:26:45,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:26:45
[2026-10-25 18:26:46,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:26:46,828.828 INFO    ] Initializing speech engine...
[2026-10-25 18:26:46,837.837 INFO    ] 2026-10-25 18:26:46
[2026-10-25 18:26:47,087.087 INFO    ] 2026-10-25 18:26:47
[2026-10-25 18:26:47,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:26:47,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:26:47,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:26:47,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:26:47,545.545 INFO    ] time= 25/10/2026 18:26:47
[2026-10-25 18:26:48,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:26:48,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:26:48,342.342 INFO    ] No existing commands found in stream
[2026-10-25 18:26:53,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:26:53,355.355 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 18:26:55,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:26:55,427.427 INFO    ] Checking for system updates...
[2026-10-25 18:26:55,467.467 INFO    ] 200
[2026-10-25 18:26:55,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:55,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:55,539.539 INFO    ] No update needed
[2026-10-25 18:26:55,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 18:26:55,575.575 INFO    ] 200
[2026-10-25 18:26:55,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:26:55,622.622 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:26:55,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:26:55,686.686 INFO    ] No camera update needed
[2026-10-25 18:26:55,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:26:55,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:26:55,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:26:55,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:26:57,741.741 INFO    ] ================================================
[2026-10-25 18:26:57,756.756 INFO    ] Launching Daemon at Sun Oct 25 18:26:57 IST 2026
[2026-10-25 18:26:57,768.768 INFO    ] ================================================
[2026-10-25 18:26:58,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:26:58
[2026-10-25 18:26:58,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:26:59,190.190 INFO    ] Initializing speech engine...
[2026-10-25 18:26:59,198.198 INFO    ] 2026-10-25 18:26:59
[2026-10-25 18:26:59,488.488 INFO    ] 2026-10-25 18:26:59
[2026-10-25 18:26:59,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:26:59,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:26:59,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:26:59,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:26:59,902.902 INFO    ] time= 25/10/2026 18:26:59
[2026-10-25 18:26:59,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:26:59,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:26:59,989.989 INFO    ] No existing commands found in stream
[2026-10-25 18:27:05,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:27:05,005.005 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 18:27:08,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:27:08,246.246 INFO    ] Checking for system updates...
[2026-10-25 18:27:08,282.282 INFO    ] 200
[2026-10-25 18:27:08,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:08,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:08,361.361 INFO    ] No update needed
[2026-10-25 18:27:08,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 18:27:08,398.398 INFO    ] 200
[2026-10-25 18:27:08,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:08,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:27:08,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:08,494.494 INFO    ] No camera update needed
[2026-10-25 18:27:08,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:27:08,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:27:08,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:27:08,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:27:10,548.548 INFO    ] ================================================
[2026-10-25 18:27:10,564.564 INFO    ] Launching Daemon at Sun Oct 25 18:27:10 IST 2026
[2026-10-25 18:27:10,575.575 INFO    ] ================================================
[2026-10-25 18:27:11,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:27:11
[2026-10-25 18:27:11,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:27:11,994.994 INFO    ] Initializing speech engine...
[2026-10-25 18:27:12,008.008 INFO    ] 2026-10-25 18:27:11
[2026-10-25 18:27:12,262.262 INFO    ] 2026-10-25 18:27:12
[2026-10-25 18:27:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:27:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:27:12,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:27:12,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:27:12,817.817 INFO    ] time= 25/10/2026 18:27:12
[2026-10-25 18:27:12,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:27:12,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:27:12,951.951 INFO    ] No existing commands found in stream
[2026-10-25 18:27:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:27:17,981.981 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 18:27:18,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:27:18,974.974 INFO    ] Checking for system updates...
[2026-10-25 18:27:19,022.022 INFO    ] 200
[2026-10-25 18:27:19,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:19,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:19,080.080 INFO    ] No update needed
[2026-10-25 18:27:19,082.082 INFO    ] Checking for camera pi updates...
[2026-10-25 18:27:19,118.118 INFO    ] 200
[2026-10-25 18:27:19,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:19,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:27:19,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:19,228.228 INFO    ] No camera update needed
[2026-10-25 18:27:19,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:27:19,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:27:19,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:27:19,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:27:21,288.288 INFO    ] ================================================
[2026-10-25 18:27:21,304.304 INFO    ] Launching Daemon at Sun Oct 25 18:27:21 IST 2026
[2026-10-25 18:27:21,315.315 INFO    ] ================================================
[2026-10-25 18:27:21,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:27:21
[2026-10-25 18:27:22,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:27:22,721.721 INFO    ] Initializing speech engine...
[2026-10-25 18:27:22,736.736 INFO    ] 2026-10-25 18:27:22
[2026-10-25 18:27:23,004.004 INFO    ] 2026-10-25 18:27:22
[2026-10-25 18:27:23,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:27:23,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:27:23,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:27:23,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:27:23,375.375 INFO    ] time= 25/10/2026 18:27:23
[2026-10-25 18:27:23,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:27:23,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:27:23,498.498 INFO    ] No existing commands found in stream
[2026-10-25 18:27:28,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:27:28,514.514 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 18:27:29,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:27:29,009.009 INFO    ] Checking for system updates...
[2026-10-25 18:27:29,048.048 INFO    ] 200
[2026-10-25 18:27:29,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:29,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:27:29,107.107 INFO    ] No update needed
[2026-10-25 18:27:29,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 18:27:29,145.145 INFO    ] 200
[2026-10-25 18:27:29,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:29,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:27:29,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:27:29,246.246 INFO    ] No camera update needed
[2026-10-25 18:27:29,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:27:29,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:27:29,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:27:29,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:27:31,308.308 INFO    ] ================================================
[2026-10-25 18:27:31,325.325 INFO    ] Launching Daemon at Sun Oct 25 18:27:31 IST 2026
[2026-10-25 18:27:31,337.337 INFO    ] ================================================
[2026-10-25 18:27:31,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:27:31
[2026-10-25 18:27:32,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:27:32,820.820 INFO    ] Initializing speech engine...
[2026-10-25 18:27:32,842.842 INFO    ] 2026-10-25 18:27:32
[2026-10-25 18:27:33,092.092 INFO    ] 2026-10-25 18:27:33
[2026-10-25 18:27:33,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:27:36,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:27:36,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:27:37,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:27:37,751.751 INFO    ] time= 25/10/2026 18:27:37
[2026-10-25 18:27:37,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:27:37,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:27:37,803.803 INFO    ] No existing commands found in stream
[2026-10-25 18:27:42,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:27:42,816.816 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 18:27:44,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:27:44,855.855 INFO    ] Checking for system updates...
[2026-10-25 18:27:44,891.891 INFO    ] 200
[2026-10-25 18:27:44,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:44,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:44,954.954 INFO    ] No update needed
[2026-10-25 18:27:44,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 18:27:44,995.995 INFO    ] 200
[2026-10-25 18:27:44,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:45,043.043 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:27:45,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:27:45,096.096 INFO    ] No camera update needed
[2026-10-25 18:27:45,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:27:45,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:27:45,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:27:45,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:27:47,151.151 INFO    ] ================================================
[2026-10-25 18:27:47,166.166 INFO    ] Launching Daemon at Sun Oct 25 18:27:47 IST 2026
[2026-10-25 18:27:47,178.178 INFO    ] ================================================
[2026-10-25 18:27:47,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:27:47
[2026-10-25 18:27:48,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:27:48,581.581 INFO    ] Initializing speech engine...
[2026-10-25 18:27:48,608.608 INFO    ] 2026-10-25 18:27:48
[2026-10-25 18:27:48,878.878 INFO    ] 2026-10-25 18:27:48
[2026-10-25 18:27:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:27:49,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:27:49,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:27:49,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:27:49,248.248 INFO    ] time= 25/10/2026 18:27:49
[2026-10-25 18:27:49,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:27:49,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:27:49,371.371 INFO    ] No existing commands found in stream
[2026-10-25 18:27:54,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:27:54,386.386 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 18:27:57,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:27:57,966.966 INFO    ] Checking for system updates...
[2026-10-25 18:27:58,005.005 INFO    ] 200
[2026-10-25 18:27:58,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:58,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:27:58,065.065 INFO    ] No update needed
[2026-10-25 18:27:58,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 18:27:58,103.103 INFO    ] 200
[2026-10-25 18:27:58,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:27:58,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:27:58,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:27:58,203.203 INFO    ] No camera update needed
[2026-10-25 18:27:58,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:27:58,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:27:58,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:27:58,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:28:00,260.260 INFO    ] ================================================
[2026-10-25 18:28:00,276.276 INFO    ] Launching Daemon at Sun Oct 25 18:28:00 IST 2026
[2026-10-25 18:28:00,288.288 INFO    ] ================================================
[2026-10-25 18:28:00,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:28:00
[2026-10-25 18:28:01,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:28:02,064.064 INFO    ] Initializing speech engine...
[2026-10-25 18:28:02,070.070 INFO    ] 2026-10-25 18:28:02
[2026-10-25 18:28:02,366.366 INFO    ] 2026-10-25 18:28:02
[2026-10-25 18:28:02,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:28:02,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:28:02,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:28:02,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:28:03,024.024 INFO    ] time= 25/10/2026 18:28:02
[2026-10-25 18:28:03,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:28:03,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:28:03,226.226 INFO    ] No existing commands found in stream
[2026-10-25 18:28:08,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:28:08,238.238 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 18:28:09,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:28:09,451.451 INFO    ] Checking for system updates...
[2026-10-25 18:28:09,488.488 INFO    ] 200
[2026-10-25 18:28:09,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:09,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:28:09,550.550 INFO    ] No update needed
[2026-10-25 18:28:09,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 18:28:09,591.591 INFO    ] 200
[2026-10-25 18:28:09,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:09,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:28:09,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:28:09,694.694 INFO    ] No camera update needed
[2026-10-25 18:28:09,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:28:09,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:28:09,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:28:09,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:28:11,749.749 INFO    ] ================================================
[2026-10-25 18:28:11,765.765 INFO    ] Launching Daemon at Sun Oct 25 18:28:11 IST 2026
[2026-10-25 18:28:11,776.776 INFO    ] ================================================
[2026-10-25 18:28:12,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:28:12
[2026-10-25 18:28:13,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:28:13,395.395 INFO    ] Initializing speech engine...
[2026-10-25 18:28:13,404.404 INFO    ] 2026-10-25 18:28:13
[2026-10-25 18:28:13,673.673 INFO    ] 2026-10-25 18:28:13
[2026-10-25 18:28:13,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:28:13,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:28:13,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:28:14,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:28:14,162.162 INFO    ] time= 25/10/2026 18:28:14
[2026-10-25 18:28:14,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:28:14,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:28:14,329.329 INFO    ] No existing commands found in stream
[2026-10-25 18:28:19,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:28:19,370.370 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 18:28:22,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:28:22,251.251 INFO    ] Checking for system updates...
[2026-10-25 18:28:22,293.293 INFO    ] 200
[2026-10-25 18:28:22,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:22,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:22,358.358 INFO    ] No update needed
[2026-10-25 18:28:22,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 18:28:22,402.402 INFO    ] 200
[2026-10-25 18:28:22,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:22,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:28:22,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:22,500.500 INFO    ] No camera update needed
[2026-10-25 18:28:22,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:28:22,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:28:22,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:28:22,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:28:24,561.561 INFO    ] ================================================
[2026-10-25 18:28:24,577.577 INFO    ] Launching Daemon at Sun Oct 25 18:28:24 IST 2026
[2026-10-25 18:28:24,588.588 INFO    ] ================================================
[2026-10-25 18:28:25,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:28:25
[2026-10-25 18:28:25,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:28:25,978.978 INFO    ] Initializing speech engine...
[2026-10-25 18:28:25,987.987 INFO    ] 2026-10-25 18:28:25
[2026-10-25 18:28:26,259.259 INFO    ] 2026-10-25 18:28:26
[2026-10-25 18:28:26,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:28:26,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:28:26,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:28:26,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:28:26,637.637 INFO    ] time= 25/10/2026 18:28:26
[2026-10-25 18:28:26,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:28:26,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:28:26,809.809 INFO    ] No existing commands found in stream
[2026-10-25 18:28:31,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:28:31,842.842 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 18:28:35,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:28:35,270.270 INFO    ] Checking for system updates...
[2026-10-25 18:28:35,311.311 INFO    ] 200
[2026-10-25 18:28:35,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:35,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:35,371.371 INFO    ] No update needed
[2026-10-25 18:28:35,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 18:28:35,411.411 INFO    ] 200
[2026-10-25 18:28:35,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:35,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:28:35,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:35,524.524 INFO    ] No camera update needed
[2026-10-25 18:28:35,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:28:35,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:28:35,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:28:35,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:28:37,580.580 INFO    ] ================================================
[2026-10-25 18:28:37,596.596 INFO    ] Launching Daemon at Sun Oct 25 18:28:37 IST 2026
[2026-10-25 18:28:37,607.607 INFO    ] ================================================
[2026-10-25 18:28:38,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:28:38
[2026-10-25 18:28:38,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:28:39,269.269 INFO    ] Initializing speech engine...
[2026-10-25 18:28:39,277.277 INFO    ] 2026-10-25 18:28:39
[2026-10-25 18:28:39,566.566 INFO    ] 2026-10-25 18:28:39
[2026-10-25 18:28:39,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:28:40,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:28:40,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:28:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:28:41,201.201 INFO    ] time= 25/10/2026 18:28:41
[2026-10-25 18:28:41,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:28:41,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:28:41,310.310 INFO    ] No existing commands found in stream
[2026-10-25 18:28:46,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:28:46,325.325 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 18:28:47,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:28:47,529.529 INFO    ] Checking for system updates...
[2026-10-25 18:28:47,571.571 INFO    ] 200
[2026-10-25 18:28:47,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:47,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:47,633.633 INFO    ] No update needed
[2026-10-25 18:28:47,635.635 INFO    ] Checking for camera pi updates...
[2026-10-25 18:28:47,671.671 INFO    ] 200
[2026-10-25 18:28:47,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:28:47,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:28:47,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:28:47,788.788 INFO    ] No camera update needed
[2026-10-25 18:28:47,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:28:47,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:28:47,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:28:47,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:28:49,845.845 INFO    ] ================================================
[2026-10-25 18:28:49,861.861 INFO    ] Launching Daemon at Sun Oct 25 18:28:49 IST 2026
[2026-10-25 18:28:49,873.873 INFO    ] ================================================
[2026-10-25 18:28:50,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:28:50
[2026-10-25 18:28:51,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:28:51,266.266 INFO    ] Initializing speech engine...
[2026-10-25 18:28:51,291.291 INFO    ] 2026-10-25 18:28:51
[2026-10-25 18:28:51,545.545 INFO    ] 2026-10-25 18:28:51
[2026-10-25 18:28:51,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:28:51,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:28:51,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:28:51,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:28:52,025.025 INFO    ] time= 25/10/2026 18:28:51
[2026-10-25 18:28:52,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:28:52,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:28:52,174.174 INFO    ] No existing commands found in stream
[2026-10-25 18:28:57,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:28:57,189.189 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 18:29:00,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:29:00,197.197 INFO    ] Checking for system updates...
[2026-10-25 18:29:00,234.234 INFO    ] 200
[2026-10-25 18:29:00,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:00,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:29:00,299.299 INFO    ] No update needed
[2026-10-25 18:29:00,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 18:29:00,335.335 INFO    ] 200
[2026-10-25 18:29:00,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:00,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:29:00,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:29:00,433.433 INFO    ] No camera update needed
[2026-10-25 18:29:00,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:29:00,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:29:00,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:29:00,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:29:02,491.491 INFO    ] ================================================
[2026-10-25 18:29:02,509.509 INFO    ] Launching Daemon at Sun Oct 25 18:29:02 IST 2026
[2026-10-25 18:29:02,521.521 INFO    ] ================================================
[2026-10-25 18:29:03,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:29:03
[2026-10-25 18:29:03,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:29:04,106.106 INFO    ] Initializing speech engine...
[2026-10-25 18:29:04,115.115 INFO    ] 2026-10-25 18:29:04
[2026-10-25 18:29:04,368.368 INFO    ] 2026-10-25 18:29:04
[2026-10-25 18:29:04,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:29:04,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:29:04,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:29:04,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:29:04,825.825 INFO    ] time= 25/10/2026 18:29:04
[2026-10-25 18:29:04,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:29:04,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:29:05,001.001 INFO    ] No existing commands found in stream
[2026-10-25 18:29:10,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:29:10,041.041 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 18:29:12,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:29:12,598.598 INFO    ] Checking for system updates...
[2026-10-25 18:29:12,636.636 INFO    ] 200
[2026-10-25 18:29:12,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:12,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:12,700.700 INFO    ] No update needed
[2026-10-25 18:29:12,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 18:29:12,739.739 INFO    ] 200
[2026-10-25 18:29:12,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:12,783.783 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:29:12,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:12,941.941 INFO    ] No camera update needed
[2026-10-25 18:29:12,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:29:12,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:29:12,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:29:12,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:29:15,997.997 INFO    ] ================================================
[2026-10-25 18:29:15,012.012 INFO    ] Launching Daemon at Sun Oct 25 18:29:15 IST 2026
[2026-10-25 18:29:15,023.023 INFO    ] ================================================
[2026-10-25 18:29:15,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:29:15
[2026-10-25 18:29:16,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:29:16,459.459 INFO    ] Initializing speech engine...
[2026-10-25 18:29:16,473.473 INFO    ] 2026-10-25 18:29:16
[2026-10-25 18:29:16,738.738 INFO    ] 2026-10-25 18:29:16
[2026-10-25 18:29:16,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:29:17,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:29:17,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:29:17,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:29:17,210.210 INFO    ] time= 25/10/2026 18:29:17
[2026-10-25 18:29:17,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:29:17,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:29:17,407.407 INFO    ] No existing commands found in stream
[2026-10-25 18:29:22,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:29:22,432.432 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 18:29:23,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:29:23,388.388 INFO    ] Checking for system updates...
[2026-10-25 18:29:23,424.424 INFO    ] 200
[2026-10-25 18:29:23,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:23,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:29:23,488.488 INFO    ] No update needed
[2026-10-25 18:29:23,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 18:29:23,528.528 INFO    ] 200
[2026-10-25 18:29:23,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:23,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:29:23,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:29:23,628.628 INFO    ] No camera update needed
[2026-10-25 18:29:23,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:29:23,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:29:23,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:29:23,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:29:25,691.691 INFO    ] ================================================
[2026-10-25 18:29:25,706.706 INFO    ] Launching Daemon at Sun Oct 25 18:29:25 IST 2026
[2026-10-25 18:29:25,717.717 INFO    ] ================================================
[2026-10-25 18:29:26,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:29:26
[2026-10-25 18:29:26,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:29:27,111.111 INFO    ] Initializing speech engine...
[2026-10-25 18:29:27,124.124 INFO    ] 2026-10-25 18:29:27
[2026-10-25 18:29:27,386.386 INFO    ] 2026-10-25 18:29:27
[2026-10-25 18:29:27,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:29:27,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:29:27,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:29:27,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:29:27,834.834 INFO    ] time= 25/10/2026 18:29:27
[2026-10-25 18:29:27,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:29:27,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:29:28,000.000 INFO    ] No existing commands found in stream
[2026-10-25 18:29:33,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:29:33,014.014 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 18:29:35,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:29:35,857.857 INFO    ] Checking for system updates...
[2026-10-25 18:29:35,903.903 INFO    ] 200
[2026-10-25 18:29:35,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:35,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:35,961.961 INFO    ] No update needed
[2026-10-25 18:29:35,964.964 INFO    ] Checking for camera pi updates...
[2026-10-25 18:29:35,997.997 INFO    ] 200
[2026-10-25 18:29:35,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:36,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:29:36,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:36,093.093 INFO    ] No camera update needed
[2026-10-25 18:29:36,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:29:36,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:29:36,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:29:36,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:29:38,147.147 INFO    ] ================================================
[2026-10-25 18:29:38,162.162 INFO    ] Launching Daemon at Sun Oct 25 18:29:38 IST 2026
[2026-10-25 18:29:38,173.173 INFO    ] ================================================
[2026-10-25 18:29:38,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:29:38
[2026-10-25 18:29:39,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:29:39,621.621 INFO    ] Initializing speech engine...
[2026-10-25 18:29:39,646.646 INFO    ] 2026-10-25 18:29:39
[2026-10-25 18:29:39,919.919 INFO    ] 2026-10-25 18:29:39
[2026-10-25 18:29:39,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:29:43,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:29:43,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:29:43,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:29:43,995.995 INFO    ] time= 25/10/2026 18:29:43
[2026-10-25 18:29:43,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:29:44,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:29:44,054.054 INFO    ] No existing commands found in stream
[2026-10-25 18:29:49,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:29:49,065.065 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 18:29:51,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:29:51,750.750 INFO    ] Checking for system updates...
[2026-10-25 18:29:51,790.790 INFO    ] 200
[2026-10-25 18:29:51,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:51,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:51,851.851 INFO    ] No update needed
[2026-10-25 18:29:51,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 18:29:51,892.892 INFO    ] 200
[2026-10-25 18:29:51,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:29:51,941.941 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:29:51,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:29:51,997.997 INFO    ] No camera update needed
[2026-10-25 18:29:52,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:29:52,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:29:52,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:29:52,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:29:54,059.059 INFO    ] ================================================
[2026-10-25 18:29:54,074.074 INFO    ] Launching Daemon at Sun Oct 25 18:29:54 IST 2026
[2026-10-25 18:29:54,085.085 INFO    ] ================================================
[2026-10-25 18:29:54,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:29:54
[2026-10-25 18:29:55,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:29:55,553.553 INFO    ] Initializing speech engine...
[2026-10-25 18:29:55,570.570 INFO    ] 2026-10-25 18:29:55
[2026-10-25 18:29:55,851.851 INFO    ] 2026-10-25 18:29:55
[2026-10-25 18:29:55,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:29:56,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:29:56,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:29:56,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:29:56,176.176 INFO    ] time= 25/10/2026 18:29:56
[2026-10-25 18:29:56,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:29:56,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:29:56,307.307 INFO    ] No existing commands found in stream
[2026-10-25 18:30:01,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:30:01,322.322 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 18:30:02,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:30:02,423.423 INFO    ] Checking for system updates...
[2026-10-25 18:30:02,637.637 INFO    ] 200
[2026-10-25 18:30:02,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:02,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:02,876.876 INFO    ] No update needed
[2026-10-25 18:30:02,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 18:30:03,065.065 INFO    ] 200
[2026-10-25 18:30:03,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:03,134.134 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:30:03,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:03,179.179 INFO    ] No camera update needed
[2026-10-25 18:30:03,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:30:03,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:30:03,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:30:03,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:30:05,254.254 INFO    ] ================================================
[2026-10-25 18:30:05,270.270 INFO    ] Launching Daemon at Sun Oct 25 18:30:05 IST 2026
[2026-10-25 18:30:05,281.281 INFO    ] ================================================
[2026-10-25 18:30:05,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:30:05
[2026-10-25 18:30:06,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:30:06,707.707 INFO    ] Initializing speech engine...
[2026-10-25 18:30:06,715.715 INFO    ] 2026-10-25 18:30:06
[2026-10-25 18:30:06,993.993 INFO    ] 2026-10-25 18:30:06
[2026-10-25 18:30:07,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:30:07,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:30:07,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:30:07,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:30:07,356.356 INFO    ] time= 25/10/2026 18:30:07
[2026-10-25 18:30:07,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:30:07,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:30:07,440.440 INFO    ] No existing commands found in stream
[2026-10-25 18:30:12,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:30:12,457.457 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 18:30:16,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:30:16,916.916 INFO    ] Checking for system updates...
[2026-10-25 18:30:16,952.952 INFO    ] 200
[2026-10-25 18:30:16,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:17,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:17,011.011 INFO    ] No update needed
[2026-10-25 18:30:17,013.013 INFO    ] Checking for camera pi updates...
[2026-10-25 18:30:17,051.051 INFO    ] 200
[2026-10-25 18:30:17,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:17,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:30:17,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:17,148.148 INFO    ] No camera update needed
[2026-10-25 18:30:17,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:30:17,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:30:17,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:30:17,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:30:19,204.204 INFO    ] ================================================
[2026-10-25 18:30:19,219.219 INFO    ] Launching Daemon at Sun Oct 25 18:30:19 IST 2026
[2026-10-25 18:30:19,230.230 INFO    ] ================================================
[2026-10-25 18:30:19,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:30:19
[2026-10-25 18:30:20,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:30:20,679.679 INFO    ] Initializing speech engine...
[2026-10-25 18:30:20,698.698 INFO    ] 2026-10-25 18:30:20
[2026-10-25 18:30:20,962.962 INFO    ] 2026-10-25 18:30:20
[2026-10-25 18:30:20,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:30:21,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:30:21,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:30:21,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:30:21,337.337 INFO    ] time= 25/10/2026 18:30:21
[2026-10-25 18:30:21,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:30:21,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:30:21,459.459 INFO    ] No existing commands found in stream
[2026-10-25 18:30:26,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:30:26,475.475 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 18:30:26,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:30:26,967.967 INFO    ] Checking for system updates...
[2026-10-25 18:30:27,004.004 INFO    ] 200
[2026-10-25 18:30:27,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:27,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:27,062.062 INFO    ] No update needed
[2026-10-25 18:30:27,065.065 INFO    ] Checking for camera pi updates...
[2026-10-25 18:30:27,102.102 INFO    ] 200
[2026-10-25 18:30:27,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:27,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:30:27,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:27,208.208 INFO    ] No camera update needed
[2026-10-25 18:30:27,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:30:27,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:30:27,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:30:27,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:30:29,268.268 INFO    ] ================================================
[2026-10-25 18:30:29,284.284 INFO    ] Launching Daemon at Sun Oct 25 18:30:29 IST 2026
[2026-10-25 18:30:29,294.294 INFO    ] ================================================
[2026-10-25 18:30:29,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:30:29
[2026-10-25 18:30:30,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:30:30,739.739 INFO    ] Initializing speech engine...
[2026-10-25 18:30:30,752.752 INFO    ] 2026-10-25 18:30:30
[2026-10-25 18:30:31,028.028 INFO    ] 2026-10-25 18:30:31
[2026-10-25 18:30:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:30:31,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:30:31,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:30:31,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:30:31,491.491 INFO    ] time= 25/10/2026 18:30:31
[2026-10-25 18:30:31,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:30:31,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:30:31,700.700 INFO    ] No existing commands found in stream
[2026-10-25 18:30:36,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:30:36,725.725 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 18:30:37,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:30:37,294.294 INFO    ] Checking for system updates...
[2026-10-25 18:30:37,329.329 INFO    ] 200
[2026-10-25 18:30:37,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:37,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:37,389.389 INFO    ] No update needed
[2026-10-25 18:30:37,392.392 INFO    ] Checking for camera pi updates...
[2026-10-25 18:30:37,429.429 INFO    ] 200
[2026-10-25 18:30:37,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:37,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:30:37,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:30:37,529.529 INFO    ] No camera update needed
[2026-10-25 18:30:37,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:30:37,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:30:37,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:30:37,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:30:39,585.585 INFO    ] ================================================
[2026-10-25 18:30:39,600.600 INFO    ] Launching Daemon at Sun Oct 25 18:30:39 IST 2026
[2026-10-25 18:30:39,611.611 INFO    ] ================================================
[2026-10-25 18:30:40,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:30:40
[2026-10-25 18:30:40,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:30:41,011.011 INFO    ] Initializing speech engine...
[2026-10-25 18:30:41,034.034 INFO    ] 2026-10-25 18:30:41
[2026-10-25 18:30:41,290.290 INFO    ] 2026-10-25 18:30:41
[2026-10-25 18:30:41,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:30:41,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:30:41,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:30:41,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:30:41,733.733 INFO    ] time= 25/10/2026 18:30:41
[2026-10-25 18:30:41,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:30:41,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:30:41,911.911 INFO    ] No existing commands found in stream
[2026-10-25 18:30:46,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:30:46,924.924 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 18:30:50,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:30:50,919.919 INFO    ] Checking for system updates...
[2026-10-25 18:30:50,955.955 INFO    ] 200
[2026-10-25 18:30:50,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:51,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:30:51,014.014 INFO    ] No update needed
[2026-10-25 18:30:51,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 18:30:51,051.051 INFO    ] 200
[2026-10-25 18:30:51,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:30:51,099.099 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:30:51,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:30:51,142.142 INFO    ] No camera update needed
[2026-10-25 18:30:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:30:51,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:30:51,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:30:51,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:30:53,197.197 INFO    ] ================================================
[2026-10-25 18:30:53,212.212 INFO    ] Launching Daemon at Sun Oct 25 18:30:53 IST 2026
[2026-10-25 18:30:53,223.223 INFO    ] ================================================
[2026-10-25 18:30:53,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:30:53
[2026-10-25 18:30:54,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:30:54,651.651 INFO    ] Initializing speech engine...
[2026-10-25 18:30:54,666.666 INFO    ] 2026-10-25 18:30:54
[2026-10-25 18:30:54,932.932 INFO    ] 2026-10-25 18:30:54
[2026-10-25 18:30:54,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:30:55,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:30:55,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:30:55,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:30:55,310.310 INFO    ] time= 25/10/2026 18:30:55
[2026-10-25 18:30:55,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:30:55,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:30:55,389.389 INFO    ] No existing commands found in stream
[2026-10-25 18:31:00,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:31:00,407.407 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-25 18:31:01,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:31:01,082.082 INFO    ] Checking for system updates...
[2026-10-25 18:31:01,119.119 INFO    ] 200
[2026-10-25 18:31:01,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:01,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:31:01,177.177 INFO    ] No update needed
[2026-10-25 18:31:01,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 18:31:01,213.213 INFO    ] 200
[2026-10-25 18:31:01,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:01,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:31:01,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:31:01,321.321 INFO    ] No camera update needed
[2026-10-25 18:31:01,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:31:01,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:31:01,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:31:01,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:31:03,384.384 INFO    ] ================================================
[2026-10-25 18:31:03,399.399 INFO    ] Launching Daemon at Sun Oct 25 18:31:03 IST 2026
[2026-10-25 18:31:03,410.410 INFO    ] ================================================
[2026-10-25 18:31:04,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:31:04
[2026-10-25 18:31:04,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:31:04,852.852 INFO    ] Initializing speech engine...
[2026-10-25 18:31:04,859.859 INFO    ] 2026-10-25 18:31:04
[2026-10-25 18:31:05,148.148 INFO    ] 2026-10-25 18:31:05
[2026-10-25 18:31:05,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:31:05,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:31:05,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:31:05,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:31:05,516.516 INFO    ] time= 25/10/2026 18:31:05
[2026-10-25 18:31:05,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:31:05,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:31:05,663.663 INFO    ] No existing commands found in stream
[2026-10-25 18:31:10,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:31:10,676.676 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 18:31:11,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:31:11,248.248 INFO    ] Checking for system updates...
[2026-10-25 18:31:11,289.289 INFO    ] 200
[2026-10-25 18:31:11,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:11,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:31:11,354.354 INFO    ] No update needed
[2026-10-25 18:31:11,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 18:31:11,391.391 INFO    ] 200
[2026-10-25 18:31:11,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:11,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:31:11,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:31:11,489.489 INFO    ] No camera update needed
[2026-10-25 18:31:11,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:31:11,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:31:11,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:31:11,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:31:13,544.544 INFO    ] ================================================
[2026-10-25 18:31:13,558.558 INFO    ] Launching Daemon at Sun Oct 25 18:31:13 IST 2026
[2026-10-25 18:31:13,570.570 INFO    ] ================================================
[2026-10-25 18:31:14,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:31:14
[2026-10-25 18:31:14,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:31:14,975.975 INFO    ] Initializing speech engine...
[2026-10-25 18:31:14,981.981 INFO    ] 2026-10-25 18:31:14
[2026-10-25 18:31:15,277.277 INFO    ] 2026-10-25 18:31:15
[2026-10-25 18:31:15,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:31:18,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:31:18,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:31:19,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:31:19,675.675 INFO    ] time= 25/10/2026 18:31:19
[2026-10-25 18:31:19,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:31:19,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:31:19,735.735 INFO    ] No existing commands found in stream
[2026-10-25 18:31:24,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:31:24,747.747 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 18:31:27,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:31:27,873.873 INFO    ] Checking for system updates...
[2026-10-25 18:31:27,910.910 INFO    ] 200
[2026-10-25 18:31:27,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:27,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:27,969.969 INFO    ] No update needed
[2026-10-25 18:31:27,971.971 INFO    ] Checking for camera pi updates...
[2026-10-25 18:31:28,009.009 INFO    ] 200
[2026-10-25 18:31:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:28,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:31:28,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:28,210.210 INFO    ] No camera update needed
[2026-10-25 18:31:28,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:31:28,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:31:28,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:31:28,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:31:30,266.266 INFO    ] ================================================
[2026-10-25 18:31:30,282.282 INFO    ] Launching Daemon at Sun Oct 25 18:31:30 IST 2026
[2026-10-25 18:31:30,293.293 INFO    ] ================================================
[2026-10-25 18:31:30,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:31:30
[2026-10-25 18:31:31,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:31:31,831.831 INFO    ] Initializing speech engine...
[2026-10-25 18:31:31,838.838 INFO    ] 2026-10-25 18:31:31
[2026-10-25 18:31:32,101.101 INFO    ] 2026-10-25 18:31:32
[2026-10-25 18:31:32,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:31:32,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:31:32,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:31:32,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:31:32,507.507 INFO    ] time= 25/10/2026 18:31:32
[2026-10-25 18:31:32,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:31:32,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:31:32,663.663 INFO    ] No existing commands found in stream
[2026-10-25 18:31:37,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:31:37,691.691 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 18:31:39,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:31:39,766.766 INFO    ] Checking for system updates...
[2026-10-25 18:31:39,806.806 INFO    ] 200
[2026-10-25 18:31:39,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:39,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:39,864.864 INFO    ] No update needed
[2026-10-25 18:31:39,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 18:31:39,903.903 INFO    ] 200
[2026-10-25 18:31:39,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:39,949.949 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:31:39,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:39,986.986 INFO    ] No camera update needed
[2026-10-25 18:31:39,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:31:39,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:31:39,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:31:40,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:31:42,040.040 INFO    ] ================================================
[2026-10-25 18:31:42,055.055 INFO    ] Launching Daemon at Sun Oct 25 18:31:42 IST 2026
[2026-10-25 18:31:42,065.065 INFO    ] ================================================
[2026-10-25 18:31:42,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:31:42
[2026-10-25 18:31:43,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:31:43,535.535 INFO    ] Initializing speech engine...
[2026-10-25 18:31:43,544.544 INFO    ] 2026-10-25 18:31:43
[2026-10-25 18:31:43,811.811 INFO    ] 2026-10-25 18:31:43
[2026-10-25 18:31:43,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:31:43,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:31:43,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:31:44,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:31:44,156.156 INFO    ] time= 25/10/2026 18:31:44
[2026-10-25 18:31:44,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:31:44,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:31:44,241.241 INFO    ] No existing commands found in stream
[2026-10-25 18:31:49,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:31:49,252.252 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 18:31:52,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:31:52,999.999 INFO    ] Checking for system updates...
[2026-10-25 18:31:53,040.040 INFO    ] 200
[2026-10-25 18:31:53,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:53,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:53,098.098 INFO    ] No update needed
[2026-10-25 18:31:53,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 18:31:53,134.134 INFO    ] 200
[2026-10-25 18:31:53,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:31:53,181.181 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:31:53,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:31:53,231.231 INFO    ] No camera update needed
[2026-10-25 18:31:53,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:31:53,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:31:53,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:31:53,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:31:55,286.286 INFO    ] ================================================
[2026-10-25 18:31:55,301.301 INFO    ] Launching Daemon at Sun Oct 25 18:31:55 IST 2026
[2026-10-25 18:31:55,312.312 INFO    ] ================================================
[2026-10-25 18:31:55,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:31:55
[2026-10-25 18:31:56,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:31:56,890.890 INFO    ] Initializing speech engine...
[2026-10-25 18:31:56,898.898 INFO    ] 2026-10-25 18:31:56
[2026-10-25 18:31:57,168.168 INFO    ] 2026-10-25 18:31:57
[2026-10-25 18:31:57,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:31:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:31:57,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:31:57,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:31:57,633.633 INFO    ] time= 25/10/2026 18:31:57
[2026-10-25 18:31:57,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:31:57,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:31:57,777.777 INFO    ] No existing commands found in stream
[2026-10-25 18:32:02,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:32:02,794.794 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-25 18:32:04,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:32:04,229.229 INFO    ] Checking for system updates...
[2026-10-25 18:32:04,267.267 INFO    ] 200
[2026-10-25 18:32:04,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:04,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:32:04,328.328 INFO    ] No update needed
[2026-10-25 18:32:04,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 18:32:04,368.368 INFO    ] 200
[2026-10-25 18:32:04,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:04,413.413 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:32:04,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:32:04,466.466 INFO    ] No camera update needed
[2026-10-25 18:32:04,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:32:04,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:32:04,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:32:04,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:32:06,526.526 INFO    ] ================================================
[2026-10-25 18:32:06,542.542 INFO    ] Launching Daemon at Sun Oct 25 18:32:06 IST 2026
[2026-10-25 18:32:06,552.552 INFO    ] ================================================
[2026-10-25 18:32:07,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:32:07
[2026-10-25 18:32:07,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:32:07,979.979 INFO    ] Initializing speech engine...
[2026-10-25 18:32:07,988.988 INFO    ] 2026-10-25 18:32:07
[2026-10-25 18:32:08,239.239 INFO    ] 2026-10-25 18:32:08
[2026-10-25 18:32:08,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:32:08,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:32:08,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:32:08,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:32:08,706.706 INFO    ] time= 25/10/2026 18:32:08
[2026-10-25 18:32:08,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:32:08,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:32:08,904.904 INFO    ] No existing commands found in stream
[2026-10-25 18:32:13,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:32:13,923.923 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 18:32:16,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:32:16,454.454 INFO    ] Checking for system updates...
[2026-10-25 18:32:16,493.493 INFO    ] 200
[2026-10-25 18:32:16,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:16,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:32:16,556.556 INFO    ] No update needed
[2026-10-25 18:32:16,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 18:32:16,591.591 INFO    ] 200
[2026-10-25 18:32:16,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:16,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:32:16,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:32:16,687.687 INFO    ] No camera update needed
[2026-10-25 18:32:16,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:32:16,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:32:16,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:32:16,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:32:18,748.748 INFO    ] ================================================
[2026-10-25 18:32:18,763.763 INFO    ] Launching Daemon at Sun Oct 25 18:32:18 IST 2026
[2026-10-25 18:32:18,774.774 INFO    ] ================================================
[2026-10-25 18:32:19,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:32:19
[2026-10-25 18:32:19,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:32:20,229.229 INFO    ] Initializing speech engine...
[2026-10-25 18:32:20,236.236 INFO    ] 2026-10-25 18:32:20
[2026-10-25 18:32:20,484.484 INFO    ] 2026-10-25 18:32:20
[2026-10-25 18:32:20,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:32:22,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:32:22,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:32:23,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:32:23,676.676 INFO    ] time= 25/10/2026 18:32:23
[2026-10-25 18:32:23,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:32:23,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:32:23,730.730 INFO    ] No existing commands found in stream
[2026-10-25 18:32:28,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:32:28,743.743 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 18:32:29,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:32:29,904.904 INFO    ] Checking for system updates...
[2026-10-25 18:32:29,944.944 INFO    ] 200
[2026-10-25 18:32:29,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:30,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:30,002.002 INFO    ] No update needed
[2026-10-25 18:32:30,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 18:32:30,043.043 INFO    ] 200
[2026-10-25 18:32:30,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:30,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:32:30,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:30,141.141 INFO    ] No camera update needed
[2026-10-25 18:32:30,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:32:30,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:32:30,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:32:30,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:32:32,198.198 INFO    ] ================================================
[2026-10-25 18:32:32,213.213 INFO    ] Launching Daemon at Sun Oct 25 18:32:32 IST 2026
[2026-10-25 18:32:32,224.224 INFO    ] ================================================
[2026-10-25 18:32:32,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:32:32
[2026-10-25 18:32:33,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:32:33,743.743 INFO    ] Initializing speech engine...
[2026-10-25 18:32:33,754.754 INFO    ] 2026-10-25 18:32:33
[2026-10-25 18:32:34,001.001 INFO    ] 2026-10-25 18:32:33
[2026-10-25 18:32:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:32:34,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:32:34,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:32:34,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:32:34,477.477 INFO    ] time= 25/10/2026 18:32:34
[2026-10-25 18:32:34,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:32:34,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:32:34,623.623 INFO    ] No existing commands found in stream
[2026-10-25 18:32:39,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:32:39,637.637 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 18:32:40,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:32:40,802.802 INFO    ] Checking for system updates...
[2026-10-25 18:32:40,839.839 INFO    ] 200
[2026-10-25 18:32:40,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:40,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:40,898.898 INFO    ] No update needed
[2026-10-25 18:32:40,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 18:32:40,935.935 INFO    ] 200
[2026-10-25 18:32:40,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:40,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:32:41,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:41,036.036 INFO    ] No camera update needed
[2026-10-25 18:32:41,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:32:41,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:32:41,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:32:41,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:32:43,092.092 INFO    ] ================================================
[2026-10-25 18:32:43,107.107 INFO    ] Launching Daemon at Sun Oct 25 18:32:43 IST 2026
[2026-10-25 18:32:43,118.118 INFO    ] ================================================
[2026-10-25 18:32:43,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:32:43
[2026-10-25 18:32:44,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:32:44,557.557 INFO    ] Initializing speech engine...
[2026-10-25 18:32:44,573.573 INFO    ] 2026-10-25 18:32:44
[2026-10-25 18:32:44,845.845 INFO    ] 2026-10-25 18:32:44
[2026-10-25 18:32:44,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:32:45,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:32:45,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:32:45,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:32:45,322.322 INFO    ] time= 25/10/2026 18:32:45
[2026-10-25 18:32:45,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:32:45,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:32:45,489.489 INFO    ] No existing commands found in stream
[2026-10-25 18:32:50,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:32:50,506.506 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 18:32:57,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:32:57,216.216 INFO    ] Checking for system updates...
[2026-10-25 18:32:57,256.256 INFO    ] 200
[2026-10-25 18:32:57,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:57,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:57,322.322 INFO    ] No update needed
[2026-10-25 18:32:57,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 18:32:57,362.362 INFO    ] 200
[2026-10-25 18:32:57,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:32:57,405.405 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:32:57,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:32:57,463.463 INFO    ] No camera update needed
[2026-10-25 18:32:57,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:32:57,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:32:57,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:32:57,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:32:59,522.522 INFO    ] ================================================
[2026-10-25 18:32:59,536.536 INFO    ] Launching Daemon at Sun Oct 25 18:32:59 IST 2026
[2026-10-25 18:32:59,547.547 INFO    ] ================================================
[2026-10-25 18:33:00,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:33:00
[2026-10-25 18:33:00,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:33:01,080.080 INFO    ] Initializing speech engine...
[2026-10-25 18:33:01,088.088 INFO    ] 2026-10-25 18:33:01
[2026-10-25 18:33:01,382.382 INFO    ] 2026-10-25 18:33:01
[2026-10-25 18:33:01,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:33:01,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:33:01,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:33:01,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:33:01,873.873 INFO    ] time= 25/10/2026 18:33:01
[2026-10-25 18:33:01,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:33:01,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:33:01,968.968 INFO    ] No existing commands found in stream
[2026-10-25 18:33:06,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:33:06,981.981 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 18:33:09,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:33:09,896.896 INFO    ] Checking for system updates...
[2026-10-25 18:33:09,936.936 INFO    ] 200
[2026-10-25 18:33:09,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:09,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:09,999.999 INFO    ] No update needed
[2026-10-25 18:33:10,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 18:33:10,037.037 INFO    ] 200
[2026-10-25 18:33:10,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:10,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:33:10,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:10,139.139 INFO    ] No camera update needed
[2026-10-25 18:33:10,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:33:10,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:33:10,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:33:10,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:33:12,195.195 INFO    ] ================================================
[2026-10-25 18:33:12,209.209 INFO    ] Launching Daemon at Sun Oct 25 18:33:12 IST 2026
[2026-10-25 18:33:12,221.221 INFO    ] ================================================
[2026-10-25 18:33:12,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:33:12
[2026-10-25 18:33:13,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:33:13,649.649 INFO    ] Initializing speech engine...
[2026-10-25 18:33:13,657.657 INFO    ] 2026-10-25 18:33:13
[2026-10-25 18:33:13,946.946 INFO    ] 2026-10-25 18:33:13
[2026-10-25 18:33:13,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:33:14,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:33:14,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:33:14,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:33:14,357.357 INFO    ] time= 25/10/2026 18:33:14
[2026-10-25 18:33:14,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:33:14,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:33:14,441.441 INFO    ] No existing commands found in stream
[2026-10-25 18:33:19,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:33:19,456.456 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 18:33:19,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:33:19,877.877 INFO    ] Checking for system updates...
[2026-10-25 18:33:19,928.928 INFO    ] 200
[2026-10-25 18:33:19,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:19,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:19,987.987 INFO    ] No update needed
[2026-10-25 18:33:19,989.989 INFO    ] Checking for camera pi updates...
[2026-10-25 18:33:20,026.026 INFO    ] 200
[2026-10-25 18:33:20,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:20,073.073 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:33:20,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:20,134.134 INFO    ] No camera update needed
[2026-10-25 18:33:20,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:33:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:33:20,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:33:20,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:33:22,188.188 INFO    ] ================================================
[2026-10-25 18:33:22,203.203 INFO    ] Launching Daemon at Sun Oct 25 18:33:22 IST 2026
[2026-10-25 18:33:22,214.214 INFO    ] ================================================
[2026-10-25 18:33:22,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:33:22
[2026-10-25 18:33:23,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:33:23,683.683 INFO    ] Initializing speech engine...
[2026-10-25 18:33:23,691.691 INFO    ] 2026-10-25 18:33:23
[2026-10-25 18:33:23,950.950 INFO    ] 2026-10-25 18:33:23
[2026-10-25 18:33:23,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:33:26,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:33:26,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:33:26,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:33:26,999.999 INFO    ] time= 25/10/2026 18:33:26
[2026-10-25 18:33:27,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:33:27,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:33:27,075.075 INFO    ] No existing commands found in stream
[2026-10-25 18:33:32,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:33:32,088.088 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 18:33:34,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:33:34,209.209 INFO    ] Checking for system updates...
[2026-10-25 18:33:34,250.250 INFO    ] 200
[2026-10-25 18:33:34,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:34,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:33:34,315.315 INFO    ] No update needed
[2026-10-25 18:33:34,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 18:33:34,356.356 INFO    ] 200
[2026-10-25 18:33:34,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:34,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:33:34,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:33:34,470.470 INFO    ] No camera update needed
[2026-10-25 18:33:34,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:33:34,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:33:34,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:33:34,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:33:36,527.527 INFO    ] ================================================
[2026-10-25 18:33:36,542.542 INFO    ] Launching Daemon at Sun Oct 25 18:33:36 IST 2026
[2026-10-25 18:33:36,552.552 INFO    ] ================================================
[2026-10-25 18:33:37,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:33:37
[2026-10-25 18:33:37,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:33:38,077.077 INFO    ] Initializing speech engine...
[2026-10-25 18:33:38,089.089 INFO    ] 2026-10-25 18:33:38
[2026-10-25 18:33:38,354.354 INFO    ] 2026-10-25 18:33:38
[2026-10-25 18:33:38,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:33:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:33:38,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:33:38,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:33:38,823.823 INFO    ] time= 25/10/2026 18:33:38
[2026-10-25 18:33:38,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:33:38,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:33:38,968.968 INFO    ] No existing commands found in stream
[2026-10-25 18:33:43,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:33:43,983.983 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 18:33:48,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:33:48,310.310 INFO    ] Checking for system updates...
[2026-10-25 18:33:48,346.346 INFO    ] 200
[2026-10-25 18:33:48,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:48,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:48,406.406 INFO    ] No update needed
[2026-10-25 18:33:48,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 18:33:48,447.447 INFO    ] 200
[2026-10-25 18:33:48,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:48,495.495 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:33:48,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:33:48,545.545 INFO    ] No camera update needed
[2026-10-25 18:33:48,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:33:48,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:33:48,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:33:48,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:33:50,601.601 INFO    ] ================================================
[2026-10-25 18:33:50,616.616 INFO    ] Launching Daemon at Sun Oct 25 18:33:50 IST 2026
[2026-10-25 18:33:50,627.627 INFO    ] ================================================
[2026-10-25 18:33:51,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:33:51
[2026-10-25 18:33:51,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:33:52,088.088 INFO    ] Initializing speech engine...
[2026-10-25 18:33:52,098.098 INFO    ] 2026-10-25 18:33:52
[2026-10-25 18:33:52,356.356 INFO    ] 2026-10-25 18:33:52
[2026-10-25 18:33:52,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:33:52,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:33:52,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:33:52,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:33:52,821.821 INFO    ] time= 25/10/2026 18:33:52
[2026-10-25 18:33:52,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:33:52,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:33:52,963.963 INFO    ] No existing commands found in stream
[2026-10-25 18:33:57,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:33:57,978.978 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 18:33:58,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:33:58,823.823 INFO    ] Checking for system updates...
[2026-10-25 18:33:58,859.859 INFO    ] 200
[2026-10-25 18:33:58,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:58,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:33:58,925.925 INFO    ] No update needed
[2026-10-25 18:33:58,927.927 INFO    ] Checking for camera pi updates...
[2026-10-25 18:33:58,962.962 INFO    ] 200
[2026-10-25 18:33:58,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:33:59,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:33:59,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:33:59,061.061 INFO    ] No camera update needed
[2026-10-25 18:33:59,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:33:59,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:33:59,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:33:59,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:34:01,118.118 INFO    ] ================================================
[2026-10-25 18:34:01,133.133 INFO    ] Launching Daemon at Sun Oct 25 18:34:01 IST 2026
[2026-10-25 18:34:01,143.143 INFO    ] ================================================
[2026-10-25 18:34:01,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:34:01
[2026-10-25 18:34:02,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:34:02,942.942 INFO    ] Initializing speech engine...
[2026-10-25 18:34:02,966.966 INFO    ] 2026-10-25 18:34:02
[2026-10-25 18:34:03,290.290 INFO    ] 2026-10-25 18:34:03
[2026-10-25 18:34:03,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:34:03,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:34:03,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:34:03,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:34:03,815.815 INFO    ] time= 25/10/2026 18:34:03
[2026-10-25 18:34:03,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:34:03,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:34:04,008.008 INFO    ] No existing commands found in stream
[2026-10-25 18:34:09,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:34:09,023.023 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 18:34:12,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:34:12,675.675 INFO    ] Checking for system updates...
[2026-10-25 18:34:12,714.714 INFO    ] 200
[2026-10-25 18:34:12,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:12,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:12,773.773 INFO    ] No update needed
[2026-10-25 18:34:12,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 18:34:12,812.812 INFO    ] 200
[2026-10-25 18:34:12,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:12,858.858 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:34:12,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:12,929.929 INFO    ] No camera update needed
[2026-10-25 18:34:12,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:34:12,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:34:12,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:34:12,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:34:14,984.984 INFO    ] ================================================
[2026-10-25 18:34:15,999.999 INFO    ] Launching Daemon at Sun Oct 25 18:34:14 IST 2026
[2026-10-25 18:34:15,009.009 INFO    ] ================================================
[2026-10-25 18:34:15,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:34:15
[2026-10-25 18:34:16,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:34:16,465.465 INFO    ] Initializing speech engine...
[2026-10-25 18:34:16,472.472 INFO    ] 2026-10-25 18:34:16
[2026-10-25 18:34:16,731.731 INFO    ] 2026-10-25 18:34:16
[2026-10-25 18:34:16,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:34:17,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:34:17,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:34:17,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:34:17,194.194 INFO    ] time= 25/10/2026 18:34:17
[2026-10-25 18:34:17,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:34:17,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:34:17,335.335 INFO    ] No existing commands found in stream
[2026-10-25 18:34:22,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:34:22,349.349 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 18:34:29,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:34:29,429.429 INFO    ] Checking for system updates...
[2026-10-25 18:34:29,473.473 INFO    ] 200
[2026-10-25 18:34:29,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:29,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:34:29,542.542 INFO    ] No update needed
[2026-10-25 18:34:29,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 18:34:29,579.579 INFO    ] 200
[2026-10-25 18:34:29,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:29,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:34:29,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:34:29,676.676 INFO    ] No camera update needed
[2026-10-25 18:34:29,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:34:29,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:34:29,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:34:29,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:34:31,731.731 INFO    ] ================================================
[2026-10-25 18:34:31,746.746 INFO    ] Launching Daemon at Sun Oct 25 18:34:31 IST 2026
[2026-10-25 18:34:31,757.757 INFO    ] ================================================
[2026-10-25 18:34:32,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:34:32
[2026-10-25 18:34:33,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:34:33,439.439 INFO    ] Initializing speech engine...
[2026-10-25 18:34:33,446.446 INFO    ] 2026-10-25 18:34:33
[2026-10-25 18:34:33,732.732 INFO    ] 2026-10-25 18:34:33
[2026-10-25 18:34:33,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:34:34,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:34:34,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:34:34,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:34:34,194.194 INFO    ] time= 25/10/2026 18:34:34
[2026-10-25 18:34:34,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:34:34,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:34:34,347.347 INFO    ] No existing commands found in stream
[2026-10-25 18:34:39,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:34:39,363.363 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 18:34:40,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:34:40,476.476 INFO    ] Checking for system updates...
[2026-10-25 18:34:40,513.513 INFO    ] 200
[2026-10-25 18:34:40,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:40,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:40,590.590 INFO    ] No update needed
[2026-10-25 18:34:40,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 18:34:40,630.630 INFO    ] 200
[2026-10-25 18:34:40,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:40,681.681 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:34:40,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:40,738.738 INFO    ] No camera update needed
[2026-10-25 18:34:40,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:34:40,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:34:40,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:34:40,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:34:42,797.797 INFO    ] ================================================
[2026-10-25 18:34:42,812.812 INFO    ] Launching Daemon at Sun Oct 25 18:34:42 IST 2026
[2026-10-25 18:34:42,827.827 INFO    ] ================================================
[2026-10-25 18:34:43,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:34:43
[2026-10-25 18:34:43,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:34:44,248.248 INFO    ] Initializing speech engine...
[2026-10-25 18:34:44,257.257 INFO    ] 2026-10-25 18:34:44
[2026-10-25 18:34:44,507.507 INFO    ] 2026-10-25 18:34:44
[2026-10-25 18:34:44,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:34:44,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:34:44,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:34:44,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:34:44,848.848 INFO    ] time= 25/10/2026 18:34:44
[2026-10-25 18:34:44,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:34:44,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:34:44,958.958 INFO    ] No existing commands found in stream
[2026-10-25 18:34:49,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:34:49,974.974 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 18:34:52,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:34:52,359.359 INFO    ] Checking for system updates...
[2026-10-25 18:34:52,396.396 INFO    ] 200
[2026-10-25 18:34:52,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:52,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:52,461.461 INFO    ] No update needed
[2026-10-25 18:34:52,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 18:34:52,502.502 INFO    ] 200
[2026-10-25 18:34:52,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:34:52,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:34:52,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:34:52,601.601 INFO    ] No camera update needed
[2026-10-25 18:34:52,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:34:52,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:34:52,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:34:52,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:34:54,656.656 INFO    ] ================================================
[2026-10-25 18:34:54,671.671 INFO    ] Launching Daemon at Sun Oct 25 18:34:54 IST 2026
[2026-10-25 18:34:54,682.682 INFO    ] ================================================
[2026-10-25 18:34:55,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:34:55
[2026-10-25 18:34:55,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:34:56,116.116 INFO    ] Initializing speech engine...
[2026-10-25 18:34:56,138.138 INFO    ] 2026-10-25 18:34:56
[2026-10-25 18:34:56,393.393 INFO    ] 2026-10-25 18:34:56
[2026-10-25 18:34:56,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:35:00,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:35:00,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:35:01,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:35:01,035.035 INFO    ] time= 25/10/2026 18:35:01
[2026-10-25 18:35:01,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:35:01,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:35:01,090.090 INFO    ] No existing commands found in stream
[2026-10-25 18:35:06,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:35:06,102.102 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 18:35:10,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:35:10,365.365 INFO    ] Checking for system updates...
[2026-10-25 18:35:10,404.404 INFO    ] 200
[2026-10-25 18:35:10,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:10,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:10,466.466 INFO    ] No update needed
[2026-10-25 18:35:10,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 18:35:10,502.502 INFO    ] 200
[2026-10-25 18:35:10,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:10,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:35:10,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:10,599.599 INFO    ] No camera update needed
[2026-10-25 18:35:10,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:35:10,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:35:10,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:35:10,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:35:12,654.654 INFO    ] ================================================
[2026-10-25 18:35:12,670.670 INFO    ] Launching Daemon at Sun Oct 25 18:35:12 IST 2026
[2026-10-25 18:35:12,680.680 INFO    ] ================================================
[2026-10-25 18:35:13,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:35:13
[2026-10-25 18:35:13,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:35:14,092.092 INFO    ] Initializing speech engine...
[2026-10-25 18:35:14,105.105 INFO    ] 2026-10-25 18:35:14
[2026-10-25 18:35:14,355.355 INFO    ] 2026-10-25 18:35:14
[2026-10-25 18:35:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:35:14,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:35:14,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:35:14,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:35:14,824.824 INFO    ] time= 25/10/2026 18:35:14
[2026-10-25 18:35:14,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:35:14,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:35:14,988.988 INFO    ] No existing commands found in stream
[2026-10-25 18:35:20,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:35:20,003.003 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 18:35:22,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:35:22,145.145 INFO    ] Checking for system updates...
[2026-10-25 18:35:22,184.184 INFO    ] 200
[2026-10-25 18:35:22,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:22,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:22,248.248 INFO    ] No update needed
[2026-10-25 18:35:22,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 18:35:22,286.286 INFO    ] 200
[2026-10-25 18:35:22,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:22,335.335 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:35:22,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:22,369.369 INFO    ] No camera update needed
[2026-10-25 18:35:22,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:35:22,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:35:22,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:35:22,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:35:24,427.427 INFO    ] ================================================
[2026-10-25 18:35:24,442.442 INFO    ] Launching Daemon at Sun Oct 25 18:35:24 IST 2026
[2026-10-25 18:35:24,454.454 INFO    ] ================================================
[2026-10-25 18:35:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:35:25
[2026-10-25 18:35:25,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:35:26,039.039 INFO    ] Initializing speech engine...
[2026-10-25 18:35:26,052.052 INFO    ] 2026-10-25 18:35:26
[2026-10-25 18:35:26,329.329 INFO    ] 2026-10-25 18:35:26
[2026-10-25 18:35:26,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:35:26,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:35:26,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:35:26,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:35:26,883.883 INFO    ] time= 25/10/2026 18:35:26
[2026-10-25 18:35:26,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:35:26,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:35:27,020.020 INFO    ] No existing commands found in stream
[2026-10-25 18:35:32,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:35:32,055.055 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 18:35:35,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:35:35,394.394 INFO    ] Checking for system updates...
[2026-10-25 18:35:35,435.435 INFO    ] 200
[2026-10-25 18:35:35,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:35,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:35:35,506.506 INFO    ] No update needed
[2026-10-25 18:35:35,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 18:35:35,543.543 INFO    ] 200
[2026-10-25 18:35:35,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:35,588.588 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:35:35,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:35:35,762.762 INFO    ] No camera update needed
[2026-10-25 18:35:35,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:35:35,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:35:35,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:35:35,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:35:37,818.818 INFO    ] ================================================
[2026-10-25 18:35:37,834.834 INFO    ] Launching Daemon at Sun Oct 25 18:35:37 IST 2026
[2026-10-25 18:35:37,845.845 INFO    ] ================================================
[2026-10-25 18:35:38,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:35:38
[2026-10-25 18:35:39,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:35:39,300.300 INFO    ] Initializing speech engine...
[2026-10-25 18:35:39,309.309 INFO    ] 2026-10-25 18:35:39
[2026-10-25 18:35:39,567.567 INFO    ] 2026-10-25 18:35:39
[2026-10-25 18:35:39,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:35:39,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:35:39,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:35:39,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:35:40,024.024 INFO    ] time= 25/10/2026 18:35:39
[2026-10-25 18:35:40,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:35:40,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:35:40,200.200 INFO    ] No existing commands found in stream
[2026-10-25 18:35:45,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:35:45,236.236 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 18:35:48,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:35:48,707.707 INFO    ] Checking for system updates...
[2026-10-25 18:35:48,745.745 INFO    ] 200
[2026-10-25 18:35:48,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:48,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:48,804.804 INFO    ] No update needed
[2026-10-25 18:35:48,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 18:35:48,843.843 INFO    ] 200
[2026-10-25 18:35:48,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:35:48,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:35:48,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:35:48,938.938 INFO    ] No camera update needed
[2026-10-25 18:35:48,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:35:48,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:35:48,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:35:48,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:35:50,994.994 INFO    ] ================================================
[2026-10-25 18:35:51,009.009 INFO    ] Launching Daemon at Sun Oct 25 18:35:51 IST 2026
[2026-10-25 18:35:51,020.020 INFO    ] ================================================
[2026-10-25 18:35:51,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:35:51
[2026-10-25 18:35:52,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:35:52,617.617 INFO    ] Initializing speech engine...
[2026-10-25 18:35:52,625.625 INFO    ] 2026-10-25 18:35:52
[2026-10-25 18:35:52,898.898 INFO    ] 2026-10-25 18:35:52
[2026-10-25 18:35:52,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:35:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:35:53,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:35:53,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:35:53,371.371 INFO    ] time= 25/10/2026 18:35:53
[2026-10-25 18:35:53,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:35:53,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:35:53,527.527 INFO    ] No existing commands found in stream
[2026-10-25 18:35:58,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:35:58,546.546 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 18:36:04,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:36:04,078.078 INFO    ] Checking for system updates...
[2026-10-25 18:36:04,120.120 INFO    ] 200
[2026-10-25 18:36:04,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:04,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:04,191.191 INFO    ] No update needed
[2026-10-25 18:36:04,195.195 INFO    ] Checking for camera pi updates...
[2026-10-25 18:36:04,232.232 INFO    ] 200
[2026-10-25 18:36:04,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:04,276.276 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:36:04,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:04,327.327 INFO    ] No camera update needed
[2026-10-25 18:36:04,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:36:04,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:36:04,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:36:04,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:36:06,384.384 INFO    ] ================================================
[2026-10-25 18:36:06,399.399 INFO    ] Launching Daemon at Sun Oct 25 18:36:06 IST 2026
[2026-10-25 18:36:06,410.410 INFO    ] ================================================
[2026-10-25 18:36:06,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:36:06
[2026-10-25 18:36:07,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:36:07,850.850 INFO    ] Initializing speech engine...
[2026-10-25 18:36:07,859.859 INFO    ] 2026-10-25 18:36:07
[2026-10-25 18:36:08,177.177 INFO    ] 2026-10-25 18:36:08
[2026-10-25 18:36:08,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:36:08,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:36:08,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:36:08,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:36:08,587.587 INFO    ] time= 25/10/2026 18:36:08
[2026-10-25 18:36:08,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:36:08,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:36:08,715.715 INFO    ] No existing commands found in stream
[2026-10-25 18:36:13,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:36:13,730.730 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 18:36:14,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:36:14,774.774 INFO    ] Checking for system updates...
[2026-10-25 18:36:14,810.810 INFO    ] 200
[2026-10-25 18:36:14,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:14,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:36:14,877.877 INFO    ] No update needed
[2026-10-25 18:36:14,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 18:36:14,913.913 INFO    ] 200
[2026-10-25 18:36:14,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:14,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:36:15,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:36:15,012.012 INFO    ] No camera update needed
[2026-10-25 18:36:15,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:36:15,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:36:15,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:36:15,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:36:17,066.066 INFO    ] ================================================
[2026-10-25 18:36:17,081.081 INFO    ] Launching Daemon at Sun Oct 25 18:36:17 IST 2026
[2026-10-25 18:36:17,092.092 INFO    ] ================================================
[2026-10-25 18:36:17,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:36:17
[2026-10-25 18:36:18,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:36:18,676.676 INFO    ] Initializing speech engine...
[2026-10-25 18:36:18,685.685 INFO    ] 2026-10-25 18:36:18
[2026-10-25 18:36:18,959.959 INFO    ] 2026-10-25 18:36:18
[2026-10-25 18:36:19,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:36:19,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:36:19,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:36:19,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:36:19,452.452 INFO    ] time= 25/10/2026 18:36:19
[2026-10-25 18:36:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:36:19,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:36:19,587.587 INFO    ] No existing commands found in stream
[2026-10-25 18:36:24,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:36:24,602.602 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 18:36:25,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:36:25,919.919 INFO    ] Checking for system updates...
[2026-10-25 18:36:25,955.955 INFO    ] 200
[2026-10-25 18:36:25,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:26,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:26,020.020 INFO    ] No update needed
[2026-10-25 18:36:26,022.022 INFO    ] Checking for camera pi updates...
[2026-10-25 18:36:26,056.056 INFO    ] 200
[2026-10-25 18:36:26,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:26,103.103 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:36:26,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:26,154.154 INFO    ] No camera update needed
[2026-10-25 18:36:26,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:36:26,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:36:26,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:36:26,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:36:28,208.208 INFO    ] ================================================
[2026-10-25 18:36:28,223.223 INFO    ] Launching Daemon at Sun Oct 25 18:36:28 IST 2026
[2026-10-25 18:36:28,233.233 INFO    ] ================================================
[2026-10-25 18:36:28,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:36:28
[2026-10-25 18:36:29,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:36:29,819.819 INFO    ] Initializing speech engine...
[2026-10-25 18:36:29,834.834 INFO    ] 2026-10-25 18:36:29
[2026-10-25 18:36:30,115.115 INFO    ] 2026-10-25 18:36:30
[2026-10-25 18:36:30,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:36:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:36:34,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:36:35,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:36:35,949.949 INFO    ] time= 25/10/2026 18:36:35
[2026-10-25 18:36:35,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:36:35,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:36:36,000.000 INFO    ] No existing commands found in stream
[2026-10-25 18:36:41,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:36:41,014.014 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 18:36:42,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:36:42,603.603 INFO    ] Checking for system updates...
[2026-10-25 18:36:42,653.653 INFO    ] 200
[2026-10-25 18:36:42,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 18:36:42,660.660 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 18:36:42,663.663 INFO    ] Checking for camera pi updates...
[2026-10-25 18:36:42,706.706 INFO    ] 200
[2026-10-25 18:36:42,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 18:36:42,712.712 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 18:36:42,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:36:42,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:36:42,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:36:42,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:36:44,770.770 INFO    ] ================================================
[2026-10-25 18:36:44,785.785 INFO    ] Launching Daemon at Sun Oct 25 18:36:44 IST 2026
[2026-10-25 18:36:44,796.796 INFO    ] ================================================
[2026-10-25 18:36:45,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:36:45
[2026-10-25 18:36:45,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:36:46,247.247 INFO    ] Initializing speech engine...
[2026-10-25 18:36:46,257.257 INFO    ] 2026-10-25 18:36:46
[2026-10-25 18:36:46,508.508 INFO    ] 2026-10-25 18:36:46
[2026-10-25 18:36:46,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:36:46,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:36:46,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:36:46,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:36:46,994.994 INFO    ] time= 25/10/2026 18:36:46
[2026-10-25 18:36:47,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:36:47,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:36:47,132.132 INFO    ] No existing commands found in stream
[2026-10-25 18:36:52,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:36:52,146.146 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 18:36:54,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:36:54,954.954 INFO    ] Checking for system updates...
[2026-10-25 18:36:54,991.991 INFO    ] 200
[2026-10-25 18:36:54,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:55,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:55,048.048 INFO    ] No update needed
[2026-10-25 18:36:55,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 18:36:55,089.089 INFO    ] 200
[2026-10-25 18:36:55,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:36:55,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:36:55,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:36:55,184.184 INFO    ] No camera update needed
[2026-10-25 18:36:55,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:36:55,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:36:55,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:36:55,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:36:57,238.238 INFO    ] ================================================
[2026-10-25 18:36:57,253.253 INFO    ] Launching Daemon at Sun Oct 25 18:36:57 IST 2026
[2026-10-25 18:36:57,263.263 INFO    ] ================================================
[2026-10-25 18:36:57,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:36:57
[2026-10-25 18:36:58,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:36:58,779.779 INFO    ] Initializing speech engine...
[2026-10-25 18:36:58,791.791 INFO    ] 2026-10-25 18:36:58
[2026-10-25 18:36:59,103.103 INFO    ] 2026-10-25 18:36:59
[2026-10-25 18:36:59,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:36:59,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:36:59,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:36:59,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:36:59,619.619 INFO    ] time= 25/10/2026 18:36:59
[2026-10-25 18:36:59,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:36:59,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:36:59,754.754 INFO    ] No existing commands found in stream
[2026-10-25 18:37:04,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:37:04,791.791 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 18:37:07,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:37:07,388.388 INFO    ] Checking for system updates...
[2026-10-25 18:37:07,429.429 INFO    ] 200
[2026-10-25 18:37:07,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:07,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:07,503.503 INFO    ] No update needed
[2026-10-25 18:37:07,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 18:37:07,540.540 INFO    ] 200
[2026-10-25 18:37:07,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:07,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:37:07,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:07,637.637 INFO    ] No camera update needed
[2026-10-25 18:37:07,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:37:07,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:37:07,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:37:07,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:37:09,693.693 INFO    ] ================================================
[2026-10-25 18:37:09,709.709 INFO    ] Launching Daemon at Sun Oct 25 18:37:09 IST 2026
[2026-10-25 18:37:09,720.720 INFO    ] ================================================
[2026-10-25 18:37:10,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:37:10
[2026-10-25 18:37:11,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:37:11,352.352 INFO    ] Initializing speech engine...
[2026-10-25 18:37:11,368.368 INFO    ] 2026-10-25 18:37:11
[2026-10-25 18:37:11,653.653 INFO    ] 2026-10-25 18:37:11
[2026-10-25 18:37:11,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:37:11,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:37:11,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:37:12,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:37:12,035.035 INFO    ] time= 25/10/2026 18:37:12
[2026-10-25 18:37:12,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:37:12,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:37:12,165.165 INFO    ] No existing commands found in stream
[2026-10-25 18:37:17,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:37:17,179.179 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 18:37:19,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:37:19,619.619 INFO    ] Checking for system updates...
[2026-10-25 18:37:19,660.660 INFO    ] 200
[2026-10-25 18:37:19,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:19,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:19,717.717 INFO    ] No update needed
[2026-10-25 18:37:19,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 18:37:19,757.757 INFO    ] 200
[2026-10-25 18:37:19,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:19,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:37:19,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:19,863.863 INFO    ] No camera update needed
[2026-10-25 18:37:19,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:37:19,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:37:19,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:37:19,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:37:21,917.917 INFO    ] ================================================
[2026-10-25 18:37:21,933.933 INFO    ] Launching Daemon at Sun Oct 25 18:37:21 IST 2026
[2026-10-25 18:37:21,943.943 INFO    ] ================================================
[2026-10-25 18:37:22,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:37:22
[2026-10-25 18:37:23,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:37:23,391.391 INFO    ] Initializing speech engine...
[2026-10-25 18:37:23,400.400 INFO    ] 2026-10-25 18:37:23
[2026-10-25 18:37:23,694.694 INFO    ] 2026-10-25 18:37:23
[2026-10-25 18:37:23,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:37:23,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:37:23,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:37:24,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:37:24,075.075 INFO    ] time= 25/10/2026 18:37:24
[2026-10-25 18:37:24,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:37:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:37:24,201.201 INFO    ] No existing commands found in stream
[2026-10-25 18:37:29,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:37:29,215.215 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 18:37:32,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:37:32,504.504 INFO    ] Checking for system updates...
[2026-10-25 18:37:32,543.543 INFO    ] 200
[2026-10-25 18:37:32,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:32,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:37:32,619.619 INFO    ] No update needed
[2026-10-25 18:37:32,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 18:37:32,662.662 INFO    ] 200
[2026-10-25 18:37:32,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:32,708.708 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:37:32,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:37:32,753.753 INFO    ] No camera update needed
[2026-10-25 18:37:32,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:37:32,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:37:32,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:37:32,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:37:34,812.812 INFO    ] ================================================
[2026-10-25 18:37:34,828.828 INFO    ] Launching Daemon at Sun Oct 25 18:37:34 IST 2026
[2026-10-25 18:37:34,839.839 INFO    ] ================================================
[2026-10-25 18:37:35,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:37:35
[2026-10-25 18:37:36,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:37:36,315.315 INFO    ] Initializing speech engine...
[2026-10-25 18:37:36,324.324 INFO    ] 2026-10-25 18:37:36
[2026-10-25 18:37:36,569.569 INFO    ] 2026-10-25 18:37:36
[2026-10-25 18:37:36,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:37:38,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:37:38,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:37:38,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:37:39,022.022 INFO    ] time= 25/10/2026 18:37:38
[2026-10-25 18:37:39,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:37:39,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:37:39,158.158 INFO    ] No existing commands found in stream
[2026-10-25 18:37:44,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:37:44,177.177 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 18:37:45,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:37:45,016.016 INFO    ] Checking for system updates...
[2026-10-25 18:37:45,058.058 INFO    ] 200
[2026-10-25 18:37:45,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:45,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:45,123.123 INFO    ] No update needed
[2026-10-25 18:37:45,126.126 INFO    ] Checking for camera pi updates...
[2026-10-25 18:37:45,159.159 INFO    ] 200
[2026-10-25 18:37:45,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:45,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:37:45,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:45,363.363 INFO    ] No camera update needed
[2026-10-25 18:37:45,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:37:45,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:37:45,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:37:45,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:37:47,420.420 INFO    ] ================================================
[2026-10-25 18:37:47,435.435 INFO    ] Launching Daemon at Sun Oct 25 18:37:47 IST 2026
[2026-10-25 18:37:47,445.445 INFO    ] ================================================
[2026-10-25 18:37:48,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:37:48
[2026-10-25 18:37:48,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:37:48,854.854 INFO    ] Initializing speech engine...
[2026-10-25 18:37:48,874.874 INFO    ] 2026-10-25 18:37:48
[2026-10-25 18:37:49,139.139 INFO    ] 2026-10-25 18:37:49
[2026-10-25 18:37:49,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:37:49,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:37:49,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:37:49,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:37:49,534.534 INFO    ] time= 25/10/2026 18:37:49
[2026-10-25 18:37:49,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:37:49,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:37:49,641.641 INFO    ] No existing commands found in stream
[2026-10-25 18:37:54,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:37:54,655.655 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 18:37:56,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:37:56,883.883 INFO    ] Checking for system updates...
[2026-10-25 18:37:56,919.919 INFO    ] 200
[2026-10-25 18:37:56,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:56,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:56,984.984 INFO    ] No update needed
[2026-10-25 18:37:56,986.986 INFO    ] Checking for camera pi updates...
[2026-10-25 18:37:57,023.023 INFO    ] 200
[2026-10-25 18:37:57,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:37:57,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:37:57,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:37:57,127.127 INFO    ] No camera update needed
[2026-10-25 18:37:57,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:37:57,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:37:57,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:37:57,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:37:59,182.182 INFO    ] ================================================
[2026-10-25 18:37:59,197.197 INFO    ] Launching Daemon at Sun Oct 25 18:37:59 IST 2026
[2026-10-25 18:37:59,207.207 INFO    ] ================================================
[2026-10-25 18:37:59,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:37:59
[2026-10-25 18:38:00,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:38:00,599.599 INFO    ] Initializing speech engine...
[2026-10-25 18:38:00,607.607 INFO    ] 2026-10-25 18:38:00
[2026-10-25 18:38:00,880.880 INFO    ] 2026-10-25 18:38:00
[2026-10-25 18:38:00,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:38:01,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:38:01,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:38:01,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:38:01,363.363 INFO    ] time= 25/10/2026 18:38:01
[2026-10-25 18:38:01,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:38:01,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:38:01,505.505 INFO    ] No existing commands found in stream
[2026-10-25 18:38:06,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:38:06,519.519 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 18:38:10,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:38:10,416.416 INFO    ] Checking for system updates...
[2026-10-25 18:38:10,452.452 INFO    ] 200
[2026-10-25 18:38:10,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:10,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:10,519.519 INFO    ] No update needed
[2026-10-25 18:38:10,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 18:38:10,555.555 INFO    ] 200
[2026-10-25 18:38:10,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:10,604.604 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:38:10,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:10,669.669 INFO    ] No camera update needed
[2026-10-25 18:38:10,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:38:10,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:38:10,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:38:10,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:38:12,726.726 INFO    ] ================================================
[2026-10-25 18:38:12,742.742 INFO    ] Launching Daemon at Sun Oct 25 18:38:12 IST 2026
[2026-10-25 18:38:12,753.753 INFO    ] ================================================
[2026-10-25 18:38:13,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:38:13
[2026-10-25 18:38:13,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:38:14,185.185 INFO    ] Initializing speech engine...
[2026-10-25 18:38:14,191.191 INFO    ] 2026-10-25 18:38:14
[2026-10-25 18:38:14,505.505 INFO    ] 2026-10-25 18:38:14
[2026-10-25 18:38:14,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:38:14,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:38:14,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:38:14,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:38:14,870.870 INFO    ] time= 25/10/2026 18:38:14
[2026-10-25 18:38:14,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:38:14,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:38:14,952.952 INFO    ] No existing commands found in stream
[2026-10-25 18:38:19,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:38:19,966.966 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 18:38:22,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:38:22,878.878 INFO    ] Checking for system updates...
[2026-10-25 18:38:22,919.919 INFO    ] 200
[2026-10-25 18:38:22,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:22,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:22,977.977 INFO    ] No update needed
[2026-10-25 18:38:22,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 18:38:23,014.014 INFO    ] 200
[2026-10-25 18:38:23,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:23,063.063 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:38:23,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:23,137.137 INFO    ] No camera update needed
[2026-10-25 18:38:23,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:38:23,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:38:23,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:38:23,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:38:25,192.192 INFO    ] ================================================
[2026-10-25 18:38:25,207.207 INFO    ] Launching Daemon at Sun Oct 25 18:38:25 IST 2026
[2026-10-25 18:38:25,218.218 INFO    ] ================================================
[2026-10-25 18:38:25,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:38:25
[2026-10-25 18:38:26,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:38:26,733.733 INFO    ] Initializing speech engine...
[2026-10-25 18:38:26,743.743 INFO    ] 2026-10-25 18:38:26
[2026-10-25 18:38:27,049.049 INFO    ] 2026-10-25 18:38:27
[2026-10-25 18:38:27,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:38:27,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:38:27,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:38:27,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:38:27,445.445 INFO    ] time= 25/10/2026 18:38:27
[2026-10-25 18:38:27,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:38:27,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:38:27,561.561 INFO    ] No existing commands found in stream
[2026-10-25 18:38:32,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:38:32,586.586 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 18:38:36,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:38:36,283.283 INFO    ] Checking for system updates...
[2026-10-25 18:38:36,324.324 INFO    ] 200
[2026-10-25 18:38:36,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:36,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:38:36,390.390 INFO    ] No update needed
[2026-10-25 18:38:36,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 18:38:36,427.427 INFO    ] 200
[2026-10-25 18:38:36,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:36,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:38:36,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:38:36,532.532 INFO    ] No camera update needed
[2026-10-25 18:38:36,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:38:36,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:38:36,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:38:36,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:38:38,592.592 INFO    ] ================================================
[2026-10-25 18:38:38,607.607 INFO    ] Launching Daemon at Sun Oct 25 18:38:38 IST 2026
[2026-10-25 18:38:38,618.618 INFO    ] ================================================
[2026-10-25 18:38:39,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:38:39
[2026-10-25 18:38:39,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:38:40,299.299 INFO    ] Initializing speech engine...
[2026-10-25 18:38:40,311.311 INFO    ] 2026-10-25 18:38:40
[2026-10-25 18:38:40,624.624 INFO    ] 2026-10-25 18:38:40
[2026-10-25 18:38:40,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:38:41,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:38:41,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:38:42,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:38:42,335.335 INFO    ] time= 25/10/2026 18:38:42
[2026-10-25 18:38:42,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:38:42,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:38:42,465.465 INFO    ] No existing commands found in stream
[2026-10-25 18:38:47,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:38:47,496.496 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 18:38:51,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:38:51,933.933 INFO    ] Checking for system updates...
[2026-10-25 18:38:51,976.976 INFO    ] 200
[2026-10-25 18:38:51,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:52,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:52,037.037 INFO    ] No update needed
[2026-10-25 18:38:52,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 18:38:52,079.079 INFO    ] 200
[2026-10-25 18:38:52,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:38:52,131.131 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:38:52,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:38:52,206.206 INFO    ] No camera update needed
[2026-10-25 18:38:52,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:38:52,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:38:52,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:38:52,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:38:54,266.266 INFO    ] ================================================
[2026-10-25 18:38:54,281.281 INFO    ] Launching Daemon at Sun Oct 25 18:38:54 IST 2026
[2026-10-25 18:38:54,291.291 INFO    ] ================================================
[2026-10-25 18:38:54,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:38:54
[2026-10-25 18:38:55,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:38:55,705.705 INFO    ] Initializing speech engine...
[2026-10-25 18:38:55,714.714 INFO    ] 2026-10-25 18:38:55
[2026-10-25 18:38:56,012.012 INFO    ] 2026-10-25 18:38:55
[2026-10-25 18:38:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:38:56,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:38:56,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:38:56,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:38:56,380.380 INFO    ] time= 25/10/2026 18:38:56
[2026-10-25 18:38:56,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:38:56,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:38:56,461.461 INFO    ] No existing commands found in stream
[2026-10-25 18:39:01,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:39:01,489.489 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 18:39:03,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:39:03,988.988 INFO    ] Checking for system updates...
[2026-10-25 18:39:04,030.030 INFO    ] 200
[2026-10-25 18:39:04,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:04,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:04,098.098 INFO    ] No update needed
[2026-10-25 18:39:04,101.101 INFO    ] Checking for camera pi updates...
[2026-10-25 18:39:04,143.143 INFO    ] 200
[2026-10-25 18:39:04,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:04,206.206 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:39:04,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:04,277.277 INFO    ] No camera update needed
[2026-10-25 18:39:04,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:39:04,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:39:04,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:39:04,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:39:06,341.341 INFO    ] ================================================
[2026-10-25 18:39:06,356.356 INFO    ] Launching Daemon at Sun Oct 25 18:39:06 IST 2026
[2026-10-25 18:39:06,367.367 INFO    ] ================================================
[2026-10-25 18:39:06,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:39:06
[2026-10-25 18:39:07,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:39:07,820.820 INFO    ] Initializing speech engine...
[2026-10-25 18:39:07,828.828 INFO    ] 2026-10-25 18:39:07
[2026-10-25 18:39:08,096.096 INFO    ] 2026-10-25 18:39:08
[2026-10-25 18:39:08,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:39:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:39:08,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:39:08,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:39:08,510.510 INFO    ] time= 25/10/2026 18:39:08
[2026-10-25 18:39:08,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:39:08,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:39:08,600.600 INFO    ] No existing commands found in stream
[2026-10-25 18:39:13,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:39:13,616.616 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 18:39:14,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:39:14,507.507 INFO    ] Checking for system updates...
[2026-10-25 18:39:14,547.547 INFO    ] 200
[2026-10-25 18:39:14,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:14,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:14,605.605 INFO    ] No update needed
[2026-10-25 18:39:14,607.607 INFO    ] Checking for camera pi updates...
[2026-10-25 18:39:14,641.641 INFO    ] 200
[2026-10-25 18:39:14,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:14,684.684 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:39:14,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:14,747.747 INFO    ] No camera update needed
[2026-10-25 18:39:14,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:39:14,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:39:14,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:39:14,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:39:16,803.803 INFO    ] ================================================
[2026-10-25 18:39:16,850.850 INFO    ] Launching Daemon at Sun Oct 25 18:39:16 IST 2026
[2026-10-25 18:39:16,860.860 INFO    ] ================================================
[2026-10-25 18:39:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:39:17
[2026-10-25 18:39:18,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:39:18,290.290 INFO    ] Initializing speech engine...
[2026-10-25 18:39:18,298.298 INFO    ] 2026-10-25 18:39:18
[2026-10-25 18:39:18,590.590 INFO    ] 2026-10-25 18:39:18
[2026-10-25 18:39:18,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:39:18,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:39:18,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:39:18,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:39:19,006.006 INFO    ] time= 25/10/2026 18:39:19
[2026-10-25 18:39:19,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:39:19,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:39:19,095.095 INFO    ] No existing commands found in stream
[2026-10-25 18:39:24,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:39:24,110.110 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 18:39:26,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:39:26,109.109 INFO    ] Checking for system updates...
[2026-10-25 18:39:26,145.145 INFO    ] 200
[2026-10-25 18:39:26,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:26,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:39:26,204.204 INFO    ] No update needed
[2026-10-25 18:39:26,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 18:39:26,240.240 INFO    ] 200
[2026-10-25 18:39:26,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:26,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:39:26,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:39:26,354.354 INFO    ] No camera update needed
[2026-10-25 18:39:26,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:39:26,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:39:26,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:39:26,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:39:28,409.409 INFO    ] ================================================
[2026-10-25 18:39:28,425.425 INFO    ] Launching Daemon at Sun Oct 25 18:39:28 IST 2026
[2026-10-25 18:39:28,435.435 INFO    ] ================================================
[2026-10-25 18:39:29,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:39:29
[2026-10-25 18:39:29,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:39:30,068.068 INFO    ] Initializing speech engine...
[2026-10-25 18:39:30,080.080 INFO    ] 2026-10-25 18:39:30
[2026-10-25 18:39:30,362.362 INFO    ] 2026-10-25 18:39:30
[2026-10-25 18:39:30,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:39:30,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:39:30,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:39:30,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:39:30,891.891 INFO    ] time= 25/10/2026 18:39:30
[2026-10-25 18:39:30,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:39:30,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:39:31,042.042 INFO    ] No existing commands found in stream
[2026-10-25 18:39:36,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:39:36,064.064 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 18:39:37,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:39:37,124.124 INFO    ] Checking for system updates...
[2026-10-25 18:39:37,162.162 INFO    ] 200
[2026-10-25 18:39:37,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:37,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:37,222.222 INFO    ] No update needed
[2026-10-25 18:39:37,225.225 INFO    ] Checking for camera pi updates...
[2026-10-25 18:39:37,259.259 INFO    ] 200
[2026-10-25 18:39:37,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:37,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:39:37,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:39:37,356.356 INFO    ] No camera update needed
[2026-10-25 18:39:37,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:39:37,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:39:37,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:39:37,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:39:39,411.411 INFO    ] ================================================
[2026-10-25 18:39:39,426.426 INFO    ] Launching Daemon at Sun Oct 25 18:39:39 IST 2026
[2026-10-25 18:39:39,436.436 INFO    ] ================================================
[2026-10-25 18:39:40,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:39:40
[2026-10-25 18:39:40,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:39:40,925.925 INFO    ] Initializing speech engine...
[2026-10-25 18:39:40,941.941 INFO    ] 2026-10-25 18:39:40
[2026-10-25 18:39:41,231.231 INFO    ] 2026-10-25 18:39:41
[2026-10-25 18:39:41,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:39:44,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:39:44,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:39:45,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:39:45,510.510 INFO    ] time= 25/10/2026 18:39:45
[2026-10-25 18:39:45,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:39:45,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:39:45,564.564 INFO    ] No existing commands found in stream
[2026-10-25 18:39:50,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:39:50,577.577 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 18:39:54,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:39:54,361.361 INFO    ] Checking for system updates...
[2026-10-25 18:39:54,397.397 INFO    ] 200
[2026-10-25 18:39:54,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:54,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:39:54,456.456 INFO    ] No update needed
[2026-10-25 18:39:54,458.458 INFO    ] Checking for camera pi updates...
[2026-10-25 18:39:54,492.492 INFO    ] 200
[2026-10-25 18:39:54,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:39:54,541.541 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:39:54,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:39:54,708.708 INFO    ] No camera update needed
[2026-10-25 18:39:54,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:39:54,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:39:54,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:39:54,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:39:56,765.765 INFO    ] ================================================
[2026-10-25 18:39:56,781.781 INFO    ] Launching Daemon at Sun Oct 25 18:39:56 IST 2026
[2026-10-25 18:39:56,792.792 INFO    ] ================================================
[2026-10-25 18:39:57,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:39:57
[2026-10-25 18:39:58,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:39:58,524.524 INFO    ] Initializing speech engine...
[2026-10-25 18:39:58,534.534 INFO    ] 2026-10-25 18:39:58
[2026-10-25 18:39:58,821.821 INFO    ] 2026-10-25 18:39:58
[2026-10-25 18:39:58,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:39:59,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:39:59,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:39:59,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:39:59,347.347 INFO    ] time= 25/10/2026 18:39:59
[2026-10-25 18:39:59,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:39:59,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:39:59,527.527 INFO    ] No existing commands found in stream
[2026-10-25 18:40:04,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:40:04,568.568 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 18:40:08,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:40:08,461.461 INFO    ] Checking for system updates...
[2026-10-25 18:40:08,504.504 INFO    ] 200
[2026-10-25 18:40:08,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:08,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:40:08,569.569 INFO    ] No update needed
[2026-10-25 18:40:08,572.572 INFO    ] Checking for camera pi updates...
[2026-10-25 18:40:08,614.614 INFO    ] 200
[2026-10-25 18:40:08,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:08,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:40:08,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:40:08,714.714 INFO    ] No camera update needed
[2026-10-25 18:40:08,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:40:08,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:40:08,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:40:08,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:40:10,771.771 INFO    ] ================================================
[2026-10-25 18:40:10,787.787 INFO    ] Launching Daemon at Sun Oct 25 18:40:10 IST 2026
[2026-10-25 18:40:10,797.797 INFO    ] ================================================
[2026-10-25 18:40:11,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:40:11
[2026-10-25 18:40:12,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:40:12,413.413 INFO    ] Initializing speech engine...
[2026-10-25 18:40:12,421.421 INFO    ] 2026-10-25 18:40:12
[2026-10-25 18:40:12,693.693 INFO    ] 2026-10-25 18:40:12
[2026-10-25 18:40:12,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:40:16,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:40:16,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:40:17,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:40:17,206.206 INFO    ] time= 25/10/2026 18:40:17
[2026-10-25 18:40:17,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:40:17,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:40:17,261.261 INFO    ] No existing commands found in stream
[2026-10-25 18:40:22,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:40:22,274.274 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 18:40:25,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:40:25,066.066 INFO    ] Checking for system updates...
[2026-10-25 18:40:25,105.105 INFO    ] 200
[2026-10-25 18:40:25,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:25,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:40:25,164.164 INFO    ] No update needed
[2026-10-25 18:40:25,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 18:40:25,201.201 INFO    ] 200
[2026-10-25 18:40:25,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:25,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:40:25,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:40:25,302.302 INFO    ] No camera update needed
[2026-10-25 18:40:25,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:40:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:40:25,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:40:25,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:40:27,362.362 INFO    ] ================================================
[2026-10-25 18:40:27,377.377 INFO    ] Launching Daemon at Sun Oct 25 18:40:27 IST 2026
[2026-10-25 18:40:27,388.388 INFO    ] ================================================
[2026-10-25 18:40:28,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:40:28
[2026-10-25 18:40:28,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:40:29,027.027 INFO    ] Initializing speech engine...
[2026-10-25 18:40:29,040.040 INFO    ] 2026-10-25 18:40:29
[2026-10-25 18:40:29,354.354 INFO    ] 2026-10-25 18:40:29
[2026-10-25 18:40:29,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:40:29,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:40:29,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:40:29,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:40:29,874.874 INFO    ] time= 25/10/2026 18:40:29
[2026-10-25 18:40:29,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:40:29,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:40:30,027.027 INFO    ] No existing commands found in stream
[2026-10-25 18:40:35,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:40:35,047.047 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 18:40:36,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:40:36,139.139 INFO    ] Checking for system updates...
[2026-10-25 18:40:36,182.182 INFO    ] 200
[2026-10-25 18:40:36,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:36,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:40:36,249.249 INFO    ] No update needed
[2026-10-25 18:40:36,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 18:40:36,288.288 INFO    ] 200
[2026-10-25 18:40:36,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:36,334.334 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:40:36,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:40:36,391.391 INFO    ] No camera update needed
[2026-10-25 18:40:36,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:40:36,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:40:36,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:40:36,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:40:38,450.450 INFO    ] ================================================
[2026-10-25 18:40:38,465.465 INFO    ] Launching Daemon at Sun Oct 25 18:40:38 IST 2026
[2026-10-25 18:40:38,476.476 INFO    ] ================================================
[2026-10-25 18:40:39,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:40:39
[2026-10-25 18:40:39,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:40:40,085.085 INFO    ] Initializing speech engine...
[2026-10-25 18:40:40,095.095 INFO    ] 2026-10-25 18:40:40
[2026-10-25 18:40:40,364.364 INFO    ] 2026-10-25 18:40:40
[2026-10-25 18:40:40,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:40:40,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:40:40,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:40:40,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:40:40,857.857 INFO    ] time= 25/10/2026 18:40:40
[2026-10-25 18:40:40,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:40:40,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:40:41,026.026 INFO    ] No existing commands found in stream
[2026-10-25 18:40:46,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:40:46,039.039 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 18:40:49,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:40:49,520.520 INFO    ] Checking for system updates...
[2026-10-25 18:40:49,556.556 INFO    ] 200
[2026-10-25 18:40:49,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:49,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:40:49,614.614 INFO    ] No update needed
[2026-10-25 18:40:49,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 18:40:49,654.654 INFO    ] 200
[2026-10-25 18:40:49,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:40:49,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:40:49,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:40:49,764.764 INFO    ] No camera update needed
[2026-10-25 18:40:49,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:40:49,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:40:49,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:40:49,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:40:51,823.823 INFO    ] ================================================
[2026-10-25 18:40:51,838.838 INFO    ] Launching Daemon at Sun Oct 25 18:40:51 IST 2026
[2026-10-25 18:40:51,849.849 INFO    ] ================================================
[2026-10-25 18:40:52,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:40:52
[2026-10-25 18:40:53,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:40:53,307.307 INFO    ] Initializing speech engine...
[2026-10-25 18:40:53,316.316 INFO    ] 2026-10-25 18:40:53
[2026-10-25 18:40:53,579.579 INFO    ] 2026-10-25 18:40:53
[2026-10-25 18:40:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:40:53,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:40:53,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:40:54,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:40:54,079.079 INFO    ] time= 25/10/2026 18:40:54
[2026-10-25 18:40:54,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:40:54,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:40:54,200.200 INFO    ] No existing commands found in stream
[2026-10-25 18:40:59,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:40:59,215.215 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 18:41:02,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:41:02,503.503 INFO    ] Checking for system updates...
[2026-10-25 18:41:02,543.543 INFO    ] 200
[2026-10-25 18:41:02,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:02,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:02,618.618 INFO    ] No update needed
[2026-10-25 18:41:02,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 18:41:02,668.668 INFO    ] 200
[2026-10-25 18:41:02,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:02,724.724 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:41:02,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:02,759.759 INFO    ] No camera update needed
[2026-10-25 18:41:02,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:41:02,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:41:02,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:41:02,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:41:04,823.823 INFO    ] ================================================
[2026-10-25 18:41:04,838.838 INFO    ] Launching Daemon at Sun Oct 25 18:41:04 IST 2026
[2026-10-25 18:41:04,849.849 INFO    ] ================================================
[2026-10-25 18:41:05,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:41:05
[2026-10-25 18:41:06,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:41:06,607.607 INFO    ] Initializing speech engine...
[2026-10-25 18:41:06,614.614 INFO    ] 2026-10-25 18:41:06
[2026-10-25 18:41:06,906.906 INFO    ] 2026-10-25 18:41:06
[2026-10-25 18:41:06,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:41:07,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:41:07,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:41:07,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:41:07,371.371 INFO    ] time= 25/10/2026 18:41:07
[2026-10-25 18:41:07,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:41:07,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:41:07,516.516 INFO    ] No existing commands found in stream
[2026-10-25 18:41:12,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:41:12,532.532 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 18:41:17,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:41:17,134.134 INFO    ] Checking for system updates...
[2026-10-25 18:41:17,172.172 INFO    ] 200
[2026-10-25 18:41:17,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:17,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:17,234.234 INFO    ] No update needed
[2026-10-25 18:41:17,237.237 INFO    ] Checking for camera pi updates...
[2026-10-25 18:41:17,273.273 INFO    ] 200
[2026-10-25 18:41:17,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:17,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:41:17,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:17,386.386 INFO    ] No camera update needed
[2026-10-25 18:41:17,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:41:17,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:41:17,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:41:17,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:41:19,450.450 INFO    ] ================================================
[2026-10-25 18:41:19,465.465 INFO    ] Launching Daemon at Sun Oct 25 18:41:19 IST 2026
[2026-10-25 18:41:19,476.476 INFO    ] ================================================
[2026-10-25 18:41:20,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:41:20
[2026-10-25 18:41:20,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:41:20,894.894 INFO    ] Initializing speech engine...
[2026-10-25 18:41:20,906.906 INFO    ] 2026-10-25 18:41:20
[2026-10-25 18:41:21,172.172 INFO    ] 2026-10-25 18:41:21
[2026-10-25 18:41:21,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:41:21,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:41:21,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:41:21,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:41:21,528.528 INFO    ] time= 25/10/2026 18:41:21
[2026-10-25 18:41:21,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:41:21,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:41:21,628.628 INFO    ] No existing commands found in stream
[2026-10-25 18:41:26,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:41:26,655.655 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 18:41:29,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:41:29,173.173 INFO    ] Checking for system updates...
[2026-10-25 18:41:29,209.209 INFO    ] 200
[2026-10-25 18:41:29,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:29,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:41:29,267.267 INFO    ] No update needed
[2026-10-25 18:41:29,269.269 INFO    ] Checking for camera pi updates...
[2026-10-25 18:41:29,303.303 INFO    ] 200
[2026-10-25 18:41:29,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:29,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:41:29,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:41:29,403.403 INFO    ] No camera update needed
[2026-10-25 18:41:29,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:41:29,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:41:29,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:41:29,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:41:31,459.459 INFO    ] ================================================
[2026-10-25 18:41:31,478.478 INFO    ] Launching Daemon at Sun Oct 25 18:41:31 IST 2026
[2026-10-25 18:41:31,491.491 INFO    ] ================================================
[2026-10-25 18:41:32,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:41:32
[2026-10-25 18:41:32,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:41:33,061.061 INFO    ] Initializing speech engine...
[2026-10-25 18:41:33,074.074 INFO    ] 2026-10-25 18:41:33
[2026-10-25 18:41:33,419.419 INFO    ] 2026-10-25 18:41:33
[2026-10-25 18:41:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:41:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:41:33,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:41:33,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:41:33,868.868 INFO    ] time= 25/10/2026 18:41:33
[2026-10-25 18:41:33,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:41:33,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:41:34,059.059 INFO    ] No existing commands found in stream
[2026-10-25 18:41:39,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:41:39,094.094 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 18:41:43,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:41:43,425.425 INFO    ] Checking for system updates...
[2026-10-25 18:41:43,464.464 INFO    ] 200
[2026-10-25 18:41:43,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:43,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:43,526.526 INFO    ] No update needed
[2026-10-25 18:41:43,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 18:41:43,566.566 INFO    ] 200
[2026-10-25 18:41:43,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:41:43,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:41:43,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:41:43,678.678 INFO    ] No camera update needed
[2026-10-25 18:41:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:41:43,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:41:43,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:41:43,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:41:45,748.748 INFO    ] ================================================
[2026-10-25 18:41:45,764.764 INFO    ] Launching Daemon at Sun Oct 25 18:41:45 IST 2026
[2026-10-25 18:41:45,775.775 INFO    ] ================================================
[2026-10-25 18:41:46,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:41:46
[2026-10-25 18:41:47,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:41:47,416.416 INFO    ] Initializing speech engine...
[2026-10-25 18:41:47,427.427 INFO    ] 2026-10-25 18:41:47
[2026-10-25 18:41:47,737.737 INFO    ] 2026-10-25 18:41:47
[2026-10-25 18:41:47,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:41:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:41:52,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:41:53,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:41:53,270.270 INFO    ] time= 25/10/2026 18:41:53
[2026-10-25 18:41:53,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:41:53,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:41:53,325.325 INFO    ] No existing commands found in stream
[2026-10-25 18:41:58,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:41:58,338.338 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 18:42:00,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:42:00,195.195 INFO    ] Checking for system updates...
[2026-10-25 18:42:00,233.233 INFO    ] 200
[2026-10-25 18:42:00,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:00,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:00,294.294 INFO    ] No update needed
[2026-10-25 18:42:00,297.297 INFO    ] Checking for camera pi updates...
[2026-10-25 18:42:00,332.332 INFO    ] 200
[2026-10-25 18:42:00,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:00,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:42:00,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:00,534.534 INFO    ] No camera update needed
[2026-10-25 18:42:00,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:42:00,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:42:00,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:42:00,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:42:02,594.594 INFO    ] ================================================
[2026-10-25 18:42:02,616.616 INFO    ] Launching Daemon at Sun Oct 25 18:42:02 IST 2026
[2026-10-25 18:42:02,630.630 INFO    ] ================================================
[2026-10-25 18:42:03,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:42:03
[2026-10-25 18:42:03,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:42:04,256.256 INFO    ] Initializing speech engine...
[2026-10-25 18:42:04,283.283 INFO    ] 2026-10-25 18:42:04
[2026-10-25 18:42:04,551.551 INFO    ] 2026-10-25 18:42:04
[2026-10-25 18:42:04,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:42:04,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:42:04,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:42:04,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:42:05,026.026 INFO    ] time= 25/10/2026 18:42:04
[2026-10-25 18:42:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:42:05,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:42:05,169.169 INFO    ] No existing commands found in stream
[2026-10-25 18:42:10,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:42:10,185.185 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 18:42:13,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:42:13,104.104 INFO    ] Checking for system updates...
[2026-10-25 18:42:13,141.141 INFO    ] 200
[2026-10-25 18:42:13,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:13,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:13,210.210 INFO    ] No update needed
[2026-10-25 18:42:13,213.213 INFO    ] Checking for camera pi updates...
[2026-10-25 18:42:13,254.254 INFO    ] 200
[2026-10-25 18:42:13,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:13,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:42:13,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:13,364.364 INFO    ] No camera update needed
[2026-10-25 18:42:13,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:42:13,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:42:13,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:42:13,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:42:15,419.419 INFO    ] ================================================
[2026-10-25 18:42:15,434.434 INFO    ] Launching Daemon at Sun Oct 25 18:42:15 IST 2026
[2026-10-25 18:42:15,446.446 INFO    ] ================================================
[2026-10-25 18:42:16,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:42:16
[2026-10-25 18:42:16,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:42:17,048.048 INFO    ] Initializing speech engine...
[2026-10-25 18:42:17,056.056 INFO    ] 2026-10-25 18:42:17
[2026-10-25 18:42:17,358.358 INFO    ] 2026-10-25 18:42:17
[2026-10-25 18:42:17,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:42:17,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:42:17,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:42:17,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:42:17,860.860 INFO    ] time= 25/10/2026 18:42:17
[2026-10-25 18:42:17,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:42:17,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:42:18,001.001 INFO    ] No existing commands found in stream
[2026-10-25 18:42:23,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:42:23,029.029 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 18:42:26,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:42:26,922.922 INFO    ] Checking for system updates...
[2026-10-25 18:42:26,965.965 INFO    ] 200
[2026-10-25 18:42:26,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:27,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:27,023.023 INFO    ] No update needed
[2026-10-25 18:42:27,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 18:42:27,059.059 INFO    ] 200
[2026-10-25 18:42:27,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:27,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:42:27,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:27,158.158 INFO    ] No camera update needed
[2026-10-25 18:42:27,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:42:27,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:42:27,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:42:27,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:42:29,215.215 INFO    ] ================================================
[2026-10-25 18:42:29,230.230 INFO    ] Launching Daemon at Sun Oct 25 18:42:29 IST 2026
[2026-10-25 18:42:29,242.242 INFO    ] ================================================
[2026-10-25 18:42:29,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:42:29
[2026-10-25 18:42:30,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:42:30,663.663 INFO    ] Initializing speech engine...
[2026-10-25 18:42:30,672.672 INFO    ] 2026-10-25 18:42:30
[2026-10-25 18:42:30,918.918 INFO    ] 2026-10-25 18:42:30
[2026-10-25 18:42:30,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:42:31,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:42:31,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:42:31,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:42:31,284.284 INFO    ] time= 25/10/2026 18:42:31
[2026-10-25 18:42:31,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:42:31,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:42:31,444.444 INFO    ] No existing commands found in stream
[2026-10-25 18:42:36,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:42:36,472.472 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 18:42:39,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:42:39,769.769 INFO    ] Checking for system updates...
[2026-10-25 18:42:39,810.810 INFO    ] 200
[2026-10-25 18:42:39,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:39,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:39,874.874 INFO    ] No update needed
[2026-10-25 18:42:39,876.876 INFO    ] Checking for camera pi updates...
[2026-10-25 18:42:39,910.910 INFO    ] 200
[2026-10-25 18:42:39,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:39,959.959 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:42:40,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:40,020.020 INFO    ] No camera update needed
[2026-10-25 18:42:40,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:42:40,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:42:40,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:42:40,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:42:42,075.075 INFO    ] ================================================
[2026-10-25 18:42:42,091.091 INFO    ] Launching Daemon at Sun Oct 25 18:42:42 IST 2026
[2026-10-25 18:42:42,103.103 INFO    ] ================================================
[2026-10-25 18:42:42,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:42:42
[2026-10-25 18:42:43,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:42:43,583.583 INFO    ] Initializing speech engine...
[2026-10-25 18:42:43,592.592 INFO    ] 2026-10-25 18:42:43
[2026-10-25 18:42:43,855.855 INFO    ] 2026-10-25 18:42:43
[2026-10-25 18:42:43,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:42:44,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:42:44,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:42:44,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:42:44,282.282 INFO    ] time= 25/10/2026 18:42:44
[2026-10-25 18:42:44,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:42:44,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:42:44,483.483 INFO    ] No existing commands found in stream
[2026-10-25 18:42:49,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:42:49,522.522 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 18:42:54,678.678 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:42:54,680.680 INFO    ] Checking for system updates...
[2026-10-25 18:42:54,720.720 INFO    ] 200
[2026-10-25 18:42:54,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:54,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:54,780.780 INFO    ] No update needed
[2026-10-25 18:42:54,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 18:42:54,821.821 INFO    ] 200
[2026-10-25 18:42:54,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:42:54,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:42:54,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:42:54,923.923 INFO    ] No camera update needed
[2026-10-25 18:42:54,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:42:54,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:42:54,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:42:54,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:42:56,980.980 INFO    ] ================================================
[2026-10-25 18:42:57,996.996 INFO    ] Launching Daemon at Sun Oct 25 18:42:56 IST 2026
[2026-10-25 18:42:57,007.007 INFO    ] ================================================
[2026-10-25 18:42:57,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:42:57
[2026-10-25 18:42:58,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:42:58,411.411 INFO    ] Initializing speech engine...
[2026-10-25 18:42:58,417.417 INFO    ] 2026-10-25 18:42:58
[2026-10-25 18:42:58,692.692 INFO    ] 2026-10-25 18:42:58
[2026-10-25 18:42:58,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:42:58,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:42:58,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:42:59,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:42:59,155.155 INFO    ] time= 25/10/2026 18:42:59
[2026-10-25 18:42:59,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:42:59,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:42:59,309.309 INFO    ] No existing commands found in stream
[2026-10-25 18:43:04,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:43:04,322.322 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 18:43:05,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:43:05,598.598 INFO    ] Checking for system updates...
[2026-10-25 18:43:05,634.634 INFO    ] 200
[2026-10-25 18:43:05,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:05,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:05,696.696 INFO    ] No update needed
[2026-10-25 18:43:05,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 18:43:05,733.733 INFO    ] 200
[2026-10-25 18:43:05,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:05,776.776 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:43:05,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:05,840.840 INFO    ] No camera update needed
[2026-10-25 18:43:05,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:43:05,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:43:05,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:43:05,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:43:07,898.898 INFO    ] ================================================
[2026-10-25 18:43:07,914.914 INFO    ] Launching Daemon at Sun Oct 25 18:43:07 IST 2026
[2026-10-25 18:43:07,925.925 INFO    ] ================================================
[2026-10-25 18:43:08,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:43:08
[2026-10-25 18:43:09,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:43:09,606.606 INFO    ] Initializing speech engine...
[2026-10-25 18:43:09,611.611 INFO    ] 2026-10-25 18:43:09
[2026-10-25 18:43:09,896.896 INFO    ] 2026-10-25 18:43:09
[2026-10-25 18:43:10,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:43:10,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:43:10,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:43:10,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:43:10,425.425 INFO    ] time= 25/10/2026 18:43:10
[2026-10-25 18:43:10,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:43:10,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:43:10,573.573 INFO    ] No existing commands found in stream
[2026-10-25 18:43:15,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:43:15,594.594 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 18:43:18,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:43:18,921.921 INFO    ] Checking for system updates...
[2026-10-25 18:43:18,963.963 INFO    ] 200
[2026-10-25 18:43:18,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:19,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:19,023.023 INFO    ] No update needed
[2026-10-25 18:43:19,026.026 INFO    ] Checking for camera pi updates...
[2026-10-25 18:43:19,062.062 INFO    ] 200
[2026-10-25 18:43:19,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:19,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:43:19,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:19,180.180 INFO    ] No camera update needed
[2026-10-25 18:43:19,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:43:19,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:43:19,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:43:19,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:43:21,242.242 INFO    ] ================================================
[2026-10-25 18:43:21,257.257 INFO    ] Launching Daemon at Sun Oct 25 18:43:21 IST 2026
[2026-10-25 18:43:21,268.268 INFO    ] ================================================
[2026-10-25 18:43:21,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:43:21
[2026-10-25 18:43:22,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:43:22,710.710 INFO    ] Initializing speech engine...
[2026-10-25 18:43:22,716.716 INFO    ] 2026-10-25 18:43:22
[2026-10-25 18:43:23,014.014 INFO    ] 2026-10-25 18:43:22
[2026-10-25 18:43:23,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:43:26,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:43:26,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:43:26,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:43:26,282.282 INFO    ] time= 25/10/2026 18:43:26
[2026-10-25 18:43:26,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:43:26,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:43:26,338.338 INFO    ] No existing commands found in stream
[2026-10-25 18:43:31,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:43:31,346.346 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 18:43:32,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:43:32,234.234 INFO    ] Checking for system updates...
[2026-10-25 18:43:32,276.276 INFO    ] 200
[2026-10-25 18:43:32,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:32,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:32,339.339 INFO    ] No update needed
[2026-10-25 18:43:32,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 18:43:32,382.382 INFO    ] 200
[2026-10-25 18:43:32,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:32,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:43:32,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:32,464.464 INFO    ] No camera update needed
[2026-10-25 18:43:32,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:43:32,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:43:32,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:43:32,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:43:34,523.523 INFO    ] ================================================
[2026-10-25 18:43:34,539.539 INFO    ] Launching Daemon at Sun Oct 25 18:43:34 IST 2026
[2026-10-25 18:43:34,549.549 INFO    ] ================================================
[2026-10-25 18:43:35,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:43:35
[2026-10-25 18:43:35,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:43:36,027.027 INFO    ] Initializing speech engine...
[2026-10-25 18:43:36,043.043 INFO    ] 2026-10-25 18:43:36
[2026-10-25 18:43:36,331.331 INFO    ] 2026-10-25 18:43:36
[2026-10-25 18:43:36,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:43:36,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:43:36,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:43:36,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:43:36,684.684 INFO    ] time= 25/10/2026 18:43:36
[2026-10-25 18:43:36,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:43:36,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:43:36,780.780 INFO    ] No existing commands found in stream
[2026-10-25 18:43:41,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:43:41,818.818 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 18:43:43,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:43:43,038.038 INFO    ] Checking for system updates...
[2026-10-25 18:43:43,093.093 INFO    ] 200
[2026-10-25 18:43:43,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:43,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:43,152.152 INFO    ] No update needed
[2026-10-25 18:43:43,155.155 INFO    ] Checking for camera pi updates...
[2026-10-25 18:43:43,189.189 INFO    ] 200
[2026-10-25 18:43:43,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:43,237.237 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:43:43,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:43:43,288.288 INFO    ] No camera update needed
[2026-10-25 18:43:43,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:43:43,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:43:43,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:43:43,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:43:45,343.343 INFO    ] ================================================
[2026-10-25 18:43:45,358.358 INFO    ] Launching Daemon at Sun Oct 25 18:43:45 IST 2026
[2026-10-25 18:43:45,369.369 INFO    ] ================================================
[2026-10-25 18:43:46,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:43:46
[2026-10-25 18:43:46,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:43:46,897.897 INFO    ] Initializing speech engine...
[2026-10-25 18:43:46,909.909 INFO    ] 2026-10-25 18:43:46
[2026-10-25 18:43:47,160.160 INFO    ] 2026-10-25 18:43:47
[2026-10-25 18:43:47,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:43:47,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:43:47,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:43:47,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:43:47,635.635 INFO    ] time= 25/10/2026 18:43:47
[2026-10-25 18:43:47,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:43:47,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:43:47,779.779 INFO    ] No existing commands found in stream
[2026-10-25 18:43:52,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:43:52,794.794 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 18:43:57,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:43:57,328.328 INFO    ] Checking for system updates...
[2026-10-25 18:43:57,368.368 INFO    ] 200
[2026-10-25 18:43:57,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:57,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:43:57,427.427 INFO    ] No update needed
[2026-10-25 18:43:57,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 18:43:57,463.463 INFO    ] 200
[2026-10-25 18:43:57,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:43:57,511.511 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:43:57,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:43:57,565.565 INFO    ] No camera update needed
[2026-10-25 18:43:57,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:43:57,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:43:57,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:43:57,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:43:59,619.619 INFO    ] ================================================
[2026-10-25 18:43:59,635.635 INFO    ] Launching Daemon at Sun Oct 25 18:43:59 IST 2026
[2026-10-25 18:43:59,645.645 INFO    ] ================================================
[2026-10-25 18:44:00,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:44:00
[2026-10-25 18:44:00,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:44:01,057.057 INFO    ] Initializing speech engine...
[2026-10-25 18:44:01,066.066 INFO    ] 2026-10-25 18:44:01
[2026-10-25 18:44:01,313.313 INFO    ] 2026-10-25 18:44:01
[2026-10-25 18:44:01,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:44:01,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:44:01,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:44:01,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:44:01,736.736 INFO    ] time= 25/10/2026 18:44:01
[2026-10-25 18:44:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:44:01,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:44:01,906.906 INFO    ] No existing commands found in stream
[2026-10-25 18:44:06,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:44:06,937.937 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 18:44:10,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:44:10,662.662 INFO    ] Checking for system updates...
[2026-10-25 18:44:10,697.697 INFO    ] 200
[2026-10-25 18:44:10,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:10,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:10,763.763 INFO    ] No update needed
[2026-10-25 18:44:10,766.766 INFO    ] Checking for camera pi updates...
[2026-10-25 18:44:10,799.799 INFO    ] 200
[2026-10-25 18:44:10,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:10,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:44:11,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:11,011.011 INFO    ] No camera update needed
[2026-10-25 18:44:11,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:44:11,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:44:11,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:44:11,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:44:13,067.067 INFO    ] ================================================
[2026-10-25 18:44:13,083.083 INFO    ] Launching Daemon at Sun Oct 25 18:44:13 IST 2026
[2026-10-25 18:44:13,094.094 INFO    ] ================================================
[2026-10-25 18:44:13,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:44:13
[2026-10-25 18:44:14,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:44:14,510.510 INFO    ] Initializing speech engine...
[2026-10-25 18:44:14,527.527 INFO    ] 2026-10-25 18:44:14
[2026-10-25 18:44:14,775.775 INFO    ] 2026-10-25 18:44:14
[2026-10-25 18:44:14,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:44:15,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:44:15,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:44:15,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:44:15,271.271 INFO    ] time= 25/10/2026 18:44:15
[2026-10-25 18:44:15,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:44:15,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:44:15,460.460 INFO    ] No existing commands found in stream
[2026-10-25 18:44:20,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:44:20,493.493 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 18:44:23,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:44:23,800.800 INFO    ] Checking for system updates...
[2026-10-25 18:44:23,849.849 INFO    ] 200
[2026-10-25 18:44:23,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:23,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:23,906.906 INFO    ] No update needed
[2026-10-25 18:44:23,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 18:44:23,947.947 INFO    ] 200
[2026-10-25 18:44:23,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:23,990.990 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:44:24,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:24,043.043 INFO    ] No camera update needed
[2026-10-25 18:44:24,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:44:24,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:44:24,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:44:24,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:44:26,098.098 INFO    ] ================================================
[2026-10-25 18:44:26,114.114 INFO    ] Launching Daemon at Sun Oct 25 18:44:26 IST 2026
[2026-10-25 18:44:26,125.125 INFO    ] ================================================
[2026-10-25 18:44:26,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:44:26
[2026-10-25 18:44:27,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:44:27,519.519 INFO    ] Initializing speech engine...
[2026-10-25 18:44:27,539.539 INFO    ] 2026-10-25 18:44:27
[2026-10-25 18:44:27,794.794 INFO    ] 2026-10-25 18:44:27
[2026-10-25 18:44:27,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:44:28,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:44:28,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:44:29,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:44:29,132.132 INFO    ] time= 25/10/2026 18:44:29
[2026-10-25 18:44:29,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:44:29,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:44:29,202.202 INFO    ] No existing commands found in stream
[2026-10-25 18:44:34,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:44:34,216.216 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 18:44:35,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:44:35,857.857 INFO    ] Checking for system updates...
[2026-10-25 18:44:35,893.893 INFO    ] 200
[2026-10-25 18:44:35,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:35,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:44:35,952.952 INFO    ] No update needed
[2026-10-25 18:44:35,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 18:44:35,989.989 INFO    ] 200
[2026-10-25 18:44:35,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:36,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:44:36,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:44:36,090.090 INFO    ] No camera update needed
[2026-10-25 18:44:36,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:44:36,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:44:36,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:44:36,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:44:38,145.145 INFO    ] ================================================
[2026-10-25 18:44:38,161.161 INFO    ] Launching Daemon at Sun Oct 25 18:44:38 IST 2026
[2026-10-25 18:44:38,172.172 INFO    ] ================================================
[2026-10-25 18:44:38,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:44:38
[2026-10-25 18:44:39,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:44:39,583.583 INFO    ] Initializing speech engine...
[2026-10-25 18:44:39,604.604 INFO    ] 2026-10-25 18:44:39
[2026-10-25 18:44:39,863.863 INFO    ] 2026-10-25 18:44:39
[2026-10-25 18:44:39,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:44:40,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:44:40,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:44:40,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:44:40,328.328 INFO    ] time= 25/10/2026 18:44:40
[2026-10-25 18:44:40,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:44:40,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:44:40,492.492 INFO    ] No existing commands found in stream
[2026-10-25 18:44:45,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:44:45,506.506 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 18:44:47,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:44:47,619.619 INFO    ] Checking for system updates...
[2026-10-25 18:44:47,659.659 INFO    ] 200
[2026-10-25 18:44:47,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:47,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:47,719.719 INFO    ] No update needed
[2026-10-25 18:44:47,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 18:44:47,756.756 INFO    ] 200
[2026-10-25 18:44:47,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:44:47,802.802 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:44:47,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:44:47,855.855 INFO    ] No camera update needed
[2026-10-25 18:44:47,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:44:47,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:44:47,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:44:47,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:44:49,917.917 INFO    ] ================================================
[2026-10-25 18:44:49,932.932 INFO    ] Launching Daemon at Sun Oct 25 18:44:49 IST 2026
[2026-10-25 18:44:49,943.943 INFO    ] ================================================
[2026-10-25 18:44:50,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:44:50
[2026-10-25 18:44:51,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:44:51,354.354 INFO    ] Initializing speech engine...
[2026-10-25 18:44:51,377.377 INFO    ] 2026-10-25 18:44:51
[2026-10-25 18:44:51,632.632 INFO    ] 2026-10-25 18:44:51
[2026-10-25 18:44:51,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:44:51,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:44:51,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:44:51,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:44:52,007.007 INFO    ] time= 25/10/2026 18:44:51
[2026-10-25 18:44:52,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:44:52,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:44:52,183.183 INFO    ] No existing commands found in stream
[2026-10-25 18:44:57,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:44:57,216.216 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 18:45:00,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:45:00,120.120 INFO    ] Checking for system updates...
[2026-10-25 18:45:00,156.156 INFO    ] 200
[2026-10-25 18:45:00,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:00,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:00,222.222 INFO    ] No update needed
[2026-10-25 18:45:00,224.224 INFO    ] Checking for camera pi updates...
[2026-10-25 18:45:00,259.259 INFO    ] 200
[2026-10-25 18:45:00,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:00,308.308 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:45:00,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:00,362.362 INFO    ] No camera update needed
[2026-10-25 18:45:00,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:45:00,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:45:00,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:45:00,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:45:02,464.464 INFO    ] ================================================
[2026-10-25 18:45:02,509.509 INFO    ] Launching Daemon at Sun Oct 25 18:45:02 IST 2026
[2026-10-25 18:45:02,547.547 INFO    ] ================================================
[2026-10-25 18:45:03,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:45:03
[2026-10-25 18:45:04,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:45:04,331.331 INFO    ] Initializing speech engine...
[2026-10-25 18:45:04,345.345 INFO    ] 2026-10-25 18:45:04
[2026-10-25 18:45:04,636.636 INFO    ] 2026-10-25 18:45:04
[2026-10-25 18:45:04,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:45:04,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:45:04,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:45:04,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:45:04,996.996 INFO    ] time= 25/10/2026 18:45:04
[2026-10-25 18:45:05,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:45:05,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:45:05,073.073 INFO    ] No existing commands found in stream
[2026-10-25 18:45:10,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:45:10,087.087 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 18:45:10,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:45:10,949.949 INFO    ] Checking for system updates...
[2026-10-25 18:45:10,990.990 INFO    ] 200
[2026-10-25 18:45:10,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:11,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:11,048.048 INFO    ] No update needed
[2026-10-25 18:45:11,051.051 INFO    ] Checking for camera pi updates...
[2026-10-25 18:45:11,089.089 INFO    ] 200
[2026-10-25 18:45:11,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:11,133.133 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:45:11,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:11,184.184 INFO    ] No camera update needed
[2026-10-25 18:45:11,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:45:11,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:45:11,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:45:11,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:45:13,239.239 INFO    ] ================================================
[2026-10-25 18:45:13,255.255 INFO    ] Launching Daemon at Sun Oct 25 18:45:13 IST 2026
[2026-10-25 18:45:13,267.267 INFO    ] ================================================
[2026-10-25 18:45:13,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:45:13
[2026-10-25 18:45:14,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:45:14,868.868 INFO    ] Initializing speech engine...
[2026-10-25 18:45:14,876.876 INFO    ] 2026-10-25 18:45:14
[2026-10-25 18:45:15,170.170 INFO    ] 2026-10-25 18:45:15
[2026-10-25 18:45:15,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:45:15,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:45:15,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:45:15,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:45:15,717.717 INFO    ] time= 25/10/2026 18:45:15
[2026-10-25 18:45:15,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:45:15,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:45:15,876.876 INFO    ] No existing commands found in stream
[2026-10-25 18:45:20,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:45:20,904.904 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 18:45:21,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:45:21,842.842 INFO    ] Checking for system updates...
[2026-10-25 18:45:21,879.879 INFO    ] 200
[2026-10-25 18:45:21,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:21,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:21,941.941 INFO    ] No update needed
[2026-10-25 18:45:21,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 18:45:21,985.985 INFO    ] 200
[2026-10-25 18:45:21,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:22,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:45:22,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:22,098.098 INFO    ] No camera update needed
[2026-10-25 18:45:22,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:45:22,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:45:22,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:45:22,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:45:24,161.161 INFO    ] ================================================
[2026-10-25 18:45:24,176.176 INFO    ] Launching Daemon at Sun Oct 25 18:45:24 IST 2026
[2026-10-25 18:45:24,187.187 INFO    ] ================================================
[2026-10-25 18:45:24,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:45:24
[2026-10-25 18:45:25,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:45:25,854.854 INFO    ] Initializing speech engine...
[2026-10-25 18:45:25,866.866 INFO    ] 2026-10-25 18:45:25
[2026-10-25 18:45:26,153.153 INFO    ] 2026-10-25 18:45:26
[2026-10-25 18:45:26,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:45:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:45:26,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:45:26,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:45:26,699.699 INFO    ] time= 25/10/2026 18:45:26
[2026-10-25 18:45:26,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:45:26,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:45:26,844.844 INFO    ] No existing commands found in stream
[2026-10-25 18:45:31,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:45:31,877.877 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 18:45:34,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:45:34,346.346 INFO    ] Checking for system updates...
[2026-10-25 18:45:34,388.388 INFO    ] 200
[2026-10-25 18:45:34,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:34,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:45:34,456.456 INFO    ] No update needed
[2026-10-25 18:45:34,459.459 INFO    ] Checking for camera pi updates...
[2026-10-25 18:45:34,494.494 INFO    ] 200
[2026-10-25 18:45:34,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:34,539.539 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:45:34,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:45:34,601.601 INFO    ] No camera update needed
[2026-10-25 18:45:34,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:45:34,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:45:34,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:45:34,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:45:36,662.662 INFO    ] ================================================
[2026-10-25 18:45:36,678.678 INFO    ] Launching Daemon at Sun Oct 25 18:45:36 IST 2026
[2026-10-25 18:45:36,689.689 INFO    ] ================================================
[2026-10-25 18:45:37,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:45:37
[2026-10-25 18:45:38,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:45:38,373.373 INFO    ] Initializing speech engine...
[2026-10-25 18:45:38,387.387 INFO    ] 2026-10-25 18:45:38
[2026-10-25 18:45:38,691.691 INFO    ] 2026-10-25 18:45:38
[2026-10-25 18:45:38,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:45:38,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:45:38,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:45:39,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:45:39,156.156 INFO    ] time= 25/10/2026 18:45:39
[2026-10-25 18:45:39,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:45:39,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:45:39,392.392 INFO    ] No existing commands found in stream
[2026-10-25 18:45:44,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:45:44,423.423 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 18:45:46,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:45:46,446.446 INFO    ] Checking for system updates...
[2026-10-25 18:45:46,484.484 INFO    ] 200
[2026-10-25 18:45:46,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:46,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:46,551.551 INFO    ] No update needed
[2026-10-25 18:45:46,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 18:45:46,594.594 INFO    ] 200
[2026-10-25 18:45:46,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:45:46,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:45:46,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:45:46,715.715 INFO    ] No camera update needed
[2026-10-25 18:45:46,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:45:46,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:45:46,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:45:46,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:45:48,773.773 INFO    ] ================================================
[2026-10-25 18:45:48,788.788 INFO    ] Launching Daemon at Sun Oct 25 18:45:48 IST 2026
[2026-10-25 18:45:48,799.799 INFO    ] ================================================
[2026-10-25 18:45:49,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:45:49
[2026-10-25 18:45:49,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:45:50,223.223 INFO    ] Initializing speech engine...
[2026-10-25 18:45:50,230.230 INFO    ] 2026-10-25 18:45:50
[2026-10-25 18:45:50,488.488 INFO    ] 2026-10-25 18:45:50
[2026-10-25 18:45:50,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:45:50,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:45:50,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:45:50,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:45:50,945.945 INFO    ] time= 25/10/2026 18:45:50
[2026-10-25 18:45:50,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:45:51,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:45:51,096.096 INFO    ] No existing commands found in stream
[2026-10-25 18:45:56,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:45:56,124.124 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 18:46:03,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:46:03,178.178 INFO    ] Checking for system updates...
[2026-10-25 18:46:03,216.216 INFO    ] 200
[2026-10-25 18:46:03,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:03,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:03,278.278 INFO    ] No update needed
[2026-10-25 18:46:03,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 18:46:03,316.316 INFO    ] 200
[2026-10-25 18:46:03,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:03,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:46:03,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:03,434.434 INFO    ] No camera update needed
[2026-10-25 18:46:03,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:46:03,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:46:03,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:46:03,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:46:05,503.503 INFO    ] ================================================
[2026-10-25 18:46:05,519.519 INFO    ] Launching Daemon at Sun Oct 25 18:46:05 IST 2026
[2026-10-25 18:46:05,530.530 INFO    ] ================================================
[2026-10-25 18:46:06,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:46:06
[2026-10-25 18:46:06,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:46:07,035.035 INFO    ] Initializing speech engine...
[2026-10-25 18:46:07,044.044 INFO    ] 2026-10-25 18:46:07
[2026-10-25 18:46:07,345.345 INFO    ] 2026-10-25 18:46:07
[2026-10-25 18:46:07,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:46:07,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:46:07,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:46:07,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:46:07,703.703 INFO    ] time= 25/10/2026 18:46:07
[2026-10-25 18:46:07,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:46:07,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:46:07,792.792 INFO    ] No existing commands found in stream
[2026-10-25 18:46:12,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:46:12,836.836 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 18:46:13,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:46:13,697.697 INFO    ] Checking for system updates...
[2026-10-25 18:46:13,735.735 INFO    ] 200
[2026-10-25 18:46:13,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:13,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:46:13,796.796 INFO    ] No update needed
[2026-10-25 18:46:13,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 18:46:13,833.833 INFO    ] 200
[2026-10-25 18:46:13,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:13,878.878 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:46:14,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:46:14,040.040 INFO    ] No camera update needed
[2026-10-25 18:46:14,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:46:14,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:46:14,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:46:14,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:46:16,099.099 INFO    ] ================================================
[2026-10-25 18:46:16,115.115 INFO    ] Launching Daemon at Sun Oct 25 18:46:16 IST 2026
[2026-10-25 18:46:16,127.127 INFO    ] ================================================
[2026-10-25 18:46:16,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:46:16
[2026-10-25 18:46:17,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:46:17,532.532 INFO    ] Initializing speech engine...
[2026-10-25 18:46:17,538.538 INFO    ] 2026-10-25 18:46:17
[2026-10-25 18:46:17,829.829 INFO    ] 2026-10-25 18:46:17
[2026-10-25 18:46:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:46:18,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:46:18,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:46:18,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:46:18,200.200 INFO    ] time= 25/10/2026 18:46:18
[2026-10-25 18:46:18,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:46:18,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:46:18,325.325 INFO    ] No existing commands found in stream
[2026-10-25 18:46:23,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:46:23,340.340 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 18:46:26,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:46:26,103.103 INFO    ] Checking for system updates...
[2026-10-25 18:46:26,140.140 INFO    ] 200
[2026-10-25 18:46:26,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:26,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:26,200.200 INFO    ] No update needed
[2026-10-25 18:46:26,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 18:46:26,239.239 INFO    ] 200
[2026-10-25 18:46:26,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:26,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:46:26,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:26,337.337 INFO    ] No camera update needed
[2026-10-25 18:46:26,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:46:26,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:46:26,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:46:26,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:46:28,399.399 INFO    ] ================================================
[2026-10-25 18:46:28,415.415 INFO    ] Launching Daemon at Sun Oct 25 18:46:28 IST 2026
[2026-10-25 18:46:28,426.426 INFO    ] ================================================
[2026-10-25 18:46:28,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:46:28
[2026-10-25 18:46:29,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:46:29,875.875 INFO    ] Initializing speech engine...
[2026-10-25 18:46:29,894.894 INFO    ] 2026-10-25 18:46:29
[2026-10-25 18:46:30,139.139 INFO    ] 2026-10-25 18:46:30
[2026-10-25 18:46:30,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:46:33,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:46:33,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:46:34,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:46:34,279.279 INFO    ] time= 25/10/2026 18:46:34
[2026-10-25 18:46:34,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:46:34,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:46:34,334.334 INFO    ] No existing commands found in stream
[2026-10-25 18:46:39,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:46:39,345.345 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 18:46:41,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:46:41,691.691 INFO    ] Checking for system updates...
[2026-10-25 18:46:41,727.727 INFO    ] 200
[2026-10-25 18:46:41,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:41,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:46:41,784.784 INFO    ] No update needed
[2026-10-25 18:46:41,787.787 INFO    ] Checking for camera pi updates...
[2026-10-25 18:46:41,821.821 INFO    ] 200
[2026-10-25 18:46:41,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:41,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:46:41,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:46:41,916.916 INFO    ] No camera update needed
[2026-10-25 18:46:41,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:46:41,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:46:41,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:46:41,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:46:43,972.972 INFO    ] ================================================
[2026-10-25 18:46:43,988.988 INFO    ] Launching Daemon at Sun Oct 25 18:46:43 IST 2026
[2026-10-25 18:46:44,000.000 INFO    ] ================================================
[2026-10-25 18:46:44,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:46:44
[2026-10-25 18:46:45,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:46:45,435.435 INFO    ] Initializing speech engine...
[2026-10-25 18:46:45,440.440 INFO    ] 2026-10-25 18:46:45
[2026-10-25 18:46:45,731.731 INFO    ] 2026-10-25 18:46:45
[2026-10-25 18:46:45,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:46:45,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:46:45,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:46:46,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:46:46,081.081 INFO    ] time= 25/10/2026 18:46:46
[2026-10-25 18:46:46,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:46:46,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:46:46,164.164 INFO    ] No existing commands found in stream
[2026-10-25 18:46:51,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:46:51,178.178 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 18:46:51,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:46:51,702.702 INFO    ] Checking for system updates...
[2026-10-25 18:46:51,745.745 INFO    ] 200
[2026-10-25 18:46:51,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:51,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:51,814.814 INFO    ] No update needed
[2026-10-25 18:46:51,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 18:46:51,857.857 INFO    ] 200
[2026-10-25 18:46:51,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:46:51,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:46:51,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:46:51,965.965 INFO    ] No camera update needed
[2026-10-25 18:46:51,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:46:51,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:46:51,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:46:51,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:46:54,024.024 INFO    ] ================================================
[2026-10-25 18:46:54,040.040 INFO    ] Launching Daemon at Sun Oct 25 18:46:54 IST 2026
[2026-10-25 18:46:54,051.051 INFO    ] ================================================
[2026-10-25 18:46:54,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:46:54
[2026-10-25 18:46:55,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:46:55,466.466 INFO    ] Initializing speech engine...
[2026-10-25 18:46:55,476.476 INFO    ] 2026-10-25 18:46:55
[2026-10-25 18:46:55,732.732 INFO    ] 2026-10-25 18:46:55
[2026-10-25 18:46:55,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:46:56,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:46:56,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:46:56,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:46:56,191.191 INFO    ] time= 25/10/2026 18:46:56
[2026-10-25 18:46:56,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:46:56,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:46:56,356.356 INFO    ] No existing commands found in stream
[2026-10-25 18:47:01,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:47:01,388.388 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 18:47:06,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:47:06,038.038 INFO    ] Checking for system updates...
[2026-10-25 18:47:06,075.075 INFO    ] 200
[2026-10-25 18:47:06,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:06,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:06,134.134 INFO    ] No update needed
[2026-10-25 18:47:06,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 18:47:06,177.177 INFO    ] 200
[2026-10-25 18:47:06,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:06,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:47:06,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:06,305.305 INFO    ] No camera update needed
[2026-10-25 18:47:06,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:47:06,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:47:06,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:47:06,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:47:08,362.362 INFO    ] ================================================
[2026-10-25 18:47:08,379.379 INFO    ] Launching Daemon at Sun Oct 25 18:47:08 IST 2026
[2026-10-25 18:47:08,389.389 INFO    ] ================================================
[2026-10-25 18:47:09,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:47:09
[2026-10-25 18:47:09,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:47:09,992.992 INFO    ] Initializing speech engine...
[2026-10-25 18:47:10,001.001 INFO    ] 2026-10-25 18:47:09
[2026-10-25 18:47:10,259.259 INFO    ] 2026-10-25 18:47:10
[2026-10-25 18:47:10,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:47:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:47:10,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:47:10,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:47:10,738.738 INFO    ] time= 25/10/2026 18:47:10
[2026-10-25 18:47:10,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:47:10,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:47:10,928.928 INFO    ] No existing commands found in stream
[2026-10-25 18:47:15,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:47:15,956.956 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 18:47:16,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:47:16,953.953 INFO    ] Checking for system updates...
[2026-10-25 18:47:16,989.989 INFO    ] 200
[2026-10-25 18:47:16,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:17,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:17,056.056 INFO    ] No update needed
[2026-10-25 18:47:17,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 18:47:17,098.098 INFO    ] 200
[2026-10-25 18:47:17,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:17,142.142 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:47:17,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:17,199.199 INFO    ] No camera update needed
[2026-10-25 18:47:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:47:17,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:47:17,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:47:17,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:47:19,259.259 INFO    ] ================================================
[2026-10-25 18:47:19,279.279 INFO    ] Launching Daemon at Sun Oct 25 18:47:19 IST 2026
[2026-10-25 18:47:19,290.290 INFO    ] ================================================
[2026-10-25 18:47:19,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:47:19
[2026-10-25 18:47:20,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:47:20,744.744 INFO    ] Initializing speech engine...
[2026-10-25 18:47:20,754.754 INFO    ] 2026-10-25 18:47:20
[2026-10-25 18:47:21,002.002 INFO    ] 2026-10-25 18:47:20
[2026-10-25 18:47:21,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:47:21,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:47:21,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:47:21,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:47:21,377.377 INFO    ] time= 25/10/2026 18:47:21
[2026-10-25 18:47:21,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:47:21,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:47:21,456.456 INFO    ] No existing commands found in stream
[2026-10-25 18:47:26,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:47:26,474.474 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 18:47:27,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:47:27,836.836 INFO    ] Checking for system updates...
[2026-10-25 18:47:27,873.873 INFO    ] 200
[2026-10-25 18:47:27,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:27,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:27,938.938 INFO    ] No update needed
[2026-10-25 18:47:27,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 18:47:27,976.976 INFO    ] 200
[2026-10-25 18:47:27,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:28,025.025 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:47:28,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:28,078.078 INFO    ] No camera update needed
[2026-10-25 18:47:28,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:47:28,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:47:28,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:47:28,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:47:30,137.137 INFO    ] ================================================
[2026-10-25 18:47:30,152.152 INFO    ] Launching Daemon at Sun Oct 25 18:47:30 IST 2026
[2026-10-25 18:47:30,162.162 INFO    ] ================================================
[2026-10-25 18:47:30,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:47:30
[2026-10-25 18:47:31,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:47:31,664.664 INFO    ] Initializing speech engine...
[2026-10-25 18:47:31,667.667 INFO    ] 2026-10-25 18:47:31
[2026-10-25 18:47:31,984.984 INFO    ] 2026-10-25 18:47:31
[2026-10-25 18:47:32,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:47:34,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:47:34,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:47:36,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:47:36,794.794 INFO    ] time= 25/10/2026 18:47:36
[2026-10-25 18:47:36,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:47:36,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:47:36,856.856 INFO    ] No existing commands found in stream
[2026-10-25 18:47:41,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:47:41,869.869 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 18:47:45,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:47:45,842.842 INFO    ] Checking for system updates...
[2026-10-25 18:47:45,878.878 INFO    ] 200
[2026-10-25 18:47:45,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:45,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:47:45,936.936 INFO    ] No update needed
[2026-10-25 18:47:45,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 18:47:45,972.972 INFO    ] 200
[2026-10-25 18:47:45,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:46,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:47:46,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:47:46,073.073 INFO    ] No camera update needed
[2026-10-25 18:47:46,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:47:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:47:46,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:47:46,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:47:48,129.129 INFO    ] ================================================
[2026-10-25 18:47:48,145.145 INFO    ] Launching Daemon at Sun Oct 25 18:47:48 IST 2026
[2026-10-25 18:47:48,156.156 INFO    ] ================================================
[2026-10-25 18:47:48,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:47:48
[2026-10-25 18:47:49,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:47:49,550.550 INFO    ] Initializing speech engine...
[2026-10-25 18:47:49,563.563 INFO    ] 2026-10-25 18:47:49
[2026-10-25 18:47:49,822.822 INFO    ] 2026-10-25 18:47:49
[2026-10-25 18:47:49,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:47:50,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:47:50,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:47:50,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:47:50,947.947 INFO    ] time= 25/10/2026 18:47:50
[2026-10-25 18:47:50,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:47:50,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:47:51,042.042 INFO    ] No existing commands found in stream
[2026-10-25 18:47:56,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:47:56,056.056 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 18:47:57,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:47:57,974.974 INFO    ] Checking for system updates...
[2026-10-25 18:47:58,010.010 INFO    ] 200
[2026-10-25 18:47:58,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:58,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:58,068.068 INFO    ] No update needed
[2026-10-25 18:47:58,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 18:47:58,105.105 INFO    ] 200
[2026-10-25 18:47:58,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:47:58,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:47:58,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:47:58,203.203 INFO    ] No camera update needed
[2026-10-25 18:47:58,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:47:58,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:47:58,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:47:58,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:48:00,260.260 INFO    ] ================================================
[2026-10-25 18:48:00,276.276 INFO    ] Launching Daemon at Sun Oct 25 18:48:00 IST 2026
[2026-10-25 18:48:00,287.287 INFO    ] ================================================
[2026-10-25 18:48:00,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:48:00
[2026-10-25 18:48:01,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:48:01,948.948 INFO    ] Initializing speech engine...
[2026-10-25 18:48:01,972.972 INFO    ] 2026-10-25 18:48:01
[2026-10-25 18:48:02,373.373 INFO    ] 2026-10-25 18:48:02
[2026-10-25 18:48:02,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:48:02,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:48:02,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:48:02,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:48:02,859.859 INFO    ] time= 25/10/2026 18:48:02
[2026-10-25 18:48:02,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:48:02,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:48:03,027.027 INFO    ] No existing commands found in stream
[2026-10-25 18:48:08,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:48:08,068.068 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 18:48:12,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:48:12,299.299 INFO    ] Checking for system updates...
[2026-10-25 18:48:12,337.337 INFO    ] 200
[2026-10-25 18:48:12,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:12,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:48:12,397.397 INFO    ] No update needed
[2026-10-25 18:48:12,400.400 INFO    ] Checking for camera pi updates...
[2026-10-25 18:48:12,439.439 INFO    ] 200
[2026-10-25 18:48:12,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:12,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:48:12,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:48:12,556.556 INFO    ] No camera update needed
[2026-10-25 18:48:12,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:48:12,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:48:12,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:48:12,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:48:14,615.615 INFO    ] ================================================
[2026-10-25 18:48:14,631.631 INFO    ] Launching Daemon at Sun Oct 25 18:48:14 IST 2026
[2026-10-25 18:48:14,642.642 INFO    ] ================================================
[2026-10-25 18:48:15,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:48:15
[2026-10-25 18:48:15,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:48:16,185.185 INFO    ] Initializing speech engine...
[2026-10-25 18:48:16,198.198 INFO    ] 2026-10-25 18:48:16
[2026-10-25 18:48:16,517.517 INFO    ] 2026-10-25 18:48:16
[2026-10-25 18:48:16,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:48:16,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:48:16,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:48:17,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:48:17,040.040 INFO    ] time= 25/10/2026 18:48:17
[2026-10-25 18:48:17,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:48:17,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:48:17,196.196 INFO    ] No existing commands found in stream
[2026-10-25 18:48:22,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:48:22,213.213 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 18:48:23,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:48:23,637.637 INFO    ] Checking for system updates...
[2026-10-25 18:48:23,675.675 INFO    ] 200
[2026-10-25 18:48:23,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:23,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:48:23,736.736 INFO    ] No update needed
[2026-10-25 18:48:23,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 18:48:23,773.773 INFO    ] 200
[2026-10-25 18:48:23,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:23,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:48:23,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:48:23,997.997 INFO    ] No camera update needed
[2026-10-25 18:48:24,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:48:24,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:48:24,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:48:24,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:48:26,059.059 INFO    ] ================================================
[2026-10-25 18:48:26,074.074 INFO    ] Launching Daemon at Sun Oct 25 18:48:26 IST 2026
[2026-10-25 18:48:26,085.085 INFO    ] ================================================
[2026-10-25 18:48:26,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:48:26
[2026-10-25 18:48:27,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:48:27,569.569 INFO    ] Initializing speech engine...
[2026-10-25 18:48:27,576.576 INFO    ] 2026-10-25 18:48:27
[2026-10-25 18:48:27,862.862 INFO    ] 2026-10-25 18:48:27
[2026-10-25 18:48:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:48:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:48:28,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:48:28,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:48:28,331.331 INFO    ] time= 25/10/2026 18:48:28
[2026-10-25 18:48:28,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:48:28,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:48:28,528.528 INFO    ] No existing commands found in stream
[2026-10-25 18:48:33,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:48:33,557.557 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 18:48:39,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:48:39,673.673 INFO    ] Checking for system updates...
[2026-10-25 18:48:39,714.714 INFO    ] 200
[2026-10-25 18:48:39,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:39,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:48:39,774.774 INFO    ] No update needed
[2026-10-25 18:48:39,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 18:48:39,812.812 INFO    ] 200
[2026-10-25 18:48:39,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:39,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:48:39,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:48:39,921.921 INFO    ] No camera update needed
[2026-10-25 18:48:39,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:48:39,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:48:39,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:48:39,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:48:41,981.981 INFO    ] ================================================
[2026-10-25 18:48:42,996.996 INFO    ] Launching Daemon at Sun Oct 25 18:48:41 IST 2026
[2026-10-25 18:48:42,007.007 INFO    ] ================================================
[2026-10-25 18:48:42,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:48:42
[2026-10-25 18:48:43,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:48:43,682.682 INFO    ] Initializing speech engine...
[2026-10-25 18:48:43,693.693 INFO    ] 2026-10-25 18:48:43
[2026-10-25 18:48:44,005.005 INFO    ] 2026-10-25 18:48:43
[2026-10-25 18:48:44,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:48:44,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:48:44,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:48:44,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:48:44,417.417 INFO    ] time= 25/10/2026 18:48:44
[2026-10-25 18:48:44,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:48:44,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:48:44,577.577 INFO    ] No existing commands found in stream
[2026-10-25 18:48:49,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:48:49,593.593 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 18:48:51,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:48:51,233.233 INFO    ] Checking for system updates...
[2026-10-25 18:48:51,271.271 INFO    ] 200
[2026-10-25 18:48:51,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:51,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:48:51,331.331 INFO    ] No update needed
[2026-10-25 18:48:51,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 18:48:51,370.370 INFO    ] 200
[2026-10-25 18:48:51,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:48:51,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:48:51,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:48:51,468.468 INFO    ] No camera update needed
[2026-10-25 18:48:51,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:48:51,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:48:51,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:48:51,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:48:53,526.526 INFO    ] ================================================
[2026-10-25 18:48:53,542.542 INFO    ] Launching Daemon at Sun Oct 25 18:48:53 IST 2026
[2026-10-25 18:48:53,553.553 INFO    ] ================================================
[2026-10-25 18:48:54,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:48:54
[2026-10-25 18:48:54,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:48:55,020.020 INFO    ] Initializing speech engine...
[2026-10-25 18:48:55,043.043 INFO    ] 2026-10-25 18:48:55
[2026-10-25 18:48:55,307.307 INFO    ] 2026-10-25 18:48:55
[2026-10-25 18:48:55,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:48:55,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:48:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:48:55,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:48:55,665.665 INFO    ] time= 25/10/2026 18:48:55
[2026-10-25 18:48:55,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:48:55,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:48:55,764.764 INFO    ] No existing commands found in stream
[2026-10-25 18:49:00,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:49:00,782.782 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 18:49:03,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:49:03,430.430 INFO    ] Checking for system updates...
[2026-10-25 18:49:03,466.466 INFO    ] 200
[2026-10-25 18:49:03,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:03,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:03,524.524 INFO    ] No update needed
[2026-10-25 18:49:03,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 18:49:03,574.574 INFO    ] 200
[2026-10-25 18:49:03,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:03,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:49:03,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:03,676.676 INFO    ] No camera update needed
[2026-10-25 18:49:03,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:49:03,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:49:03,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:49:03,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:49:05,743.743 INFO    ] ================================================
[2026-10-25 18:49:05,758.758 INFO    ] Launching Daemon at Sun Oct 25 18:49:05 IST 2026
[2026-10-25 18:49:05,768.768 INFO    ] ================================================
[2026-10-25 18:49:06,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:49:06
[2026-10-25 18:49:06,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:49:07,191.191 INFO    ] Initializing speech engine...
[2026-10-25 18:49:07,199.199 INFO    ] 2026-10-25 18:49:07
[2026-10-25 18:49:07,494.494 INFO    ] 2026-10-25 18:49:07
[2026-10-25 18:49:07,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:49:10,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:49:10,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:49:11,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:49:11,297.297 INFO    ] time= 25/10/2026 18:49:11
[2026-10-25 18:49:11,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:49:11,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:49:11,347.347 INFO    ] No existing commands found in stream
[2026-10-25 18:49:16,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:49:16,355.355 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 18:49:18,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:49:18,220.220 INFO    ] Checking for system updates...
[2026-10-25 18:49:18,256.256 INFO    ] 200
[2026-10-25 18:49:18,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:18,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:18,313.313 INFO    ] No update needed
[2026-10-25 18:49:18,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 18:49:18,349.349 INFO    ] 200
[2026-10-25 18:49:18,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:18,394.394 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:49:18,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:18,444.444 INFO    ] No camera update needed
[2026-10-25 18:49:18,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:49:18,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:49:18,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:49:18,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:49:20,498.498 INFO    ] ================================================
[2026-10-25 18:49:20,513.513 INFO    ] Launching Daemon at Sun Oct 25 18:49:20 IST 2026
[2026-10-25 18:49:20,524.524 INFO    ] ================================================
[2026-10-25 18:49:21,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:49:21
[2026-10-25 18:49:21,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:49:22,123.123 INFO    ] Initializing speech engine...
[2026-10-25 18:49:22,132.132 INFO    ] 2026-10-25 18:49:22
[2026-10-25 18:49:22,415.415 INFO    ] 2026-10-25 18:49:22
[2026-10-25 18:49:22,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:49:22,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:49:22,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:49:22,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:49:22,887.887 INFO    ] time= 25/10/2026 18:49:22
[2026-10-25 18:49:22,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:49:22,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:49:23,091.091 INFO    ] No existing commands found in stream
[2026-10-25 18:49:28,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:49:28,117.117 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 18:49:28,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:49:28,883.883 INFO    ] Checking for system updates...
[2026-10-25 18:49:28,919.919 INFO    ] 200
[2026-10-25 18:49:28,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:28,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:28,978.978 INFO    ] No update needed
[2026-10-25 18:49:28,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 18:49:29,015.015 INFO    ] 200
[2026-10-25 18:49:29,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:29,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:49:29,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:29,125.125 INFO    ] No camera update needed
[2026-10-25 18:49:29,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:49:29,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:49:29,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:49:29,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:49:31,189.189 INFO    ] ================================================
[2026-10-25 18:49:31,207.207 INFO    ] Launching Daemon at Sun Oct 25 18:49:31 IST 2026
[2026-10-25 18:49:31,218.218 INFO    ] ================================================
[2026-10-25 18:49:31,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:49:31
[2026-10-25 18:49:32,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:49:32,909.909 INFO    ] Initializing speech engine...
[2026-10-25 18:49:32,926.926 INFO    ] 2026-10-25 18:49:32
[2026-10-25 18:49:33,202.202 INFO    ] 2026-10-25 18:49:33
[2026-10-25 18:49:33,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:49:33,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:49:33,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:49:33,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:49:33,746.746 INFO    ] time= 25/10/2026 18:49:33
[2026-10-25 18:49:33,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:49:33,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:49:33,876.876 INFO    ] No existing commands found in stream
[2026-10-25 18:49:38,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:49:38,911.911 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 18:49:42,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:49:42,660.660 INFO    ] Checking for system updates...
[2026-10-25 18:49:42,702.702 INFO    ] 200
[2026-10-25 18:49:42,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:42,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:49:42,761.761 INFO    ] No update needed
[2026-10-25 18:49:42,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 18:49:42,798.798 INFO    ] 200
[2026-10-25 18:49:42,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:42,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:49:42,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:49:42,903.903 INFO    ] No camera update needed
[2026-10-25 18:49:42,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:49:42,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:49:42,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:49:42,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:49:44,959.959 INFO    ] ================================================
[2026-10-25 18:49:44,974.974 INFO    ] Launching Daemon at Sun Oct 25 18:49:44 IST 2026
[2026-10-25 18:49:44,984.984 INFO    ] ================================================
[2026-10-25 18:49:45,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:49:45
[2026-10-25 18:49:46,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:49:46,407.407 INFO    ] Initializing speech engine...
[2026-10-25 18:49:46,431.431 INFO    ] 2026-10-25 18:49:46
[2026-10-25 18:49:46,703.703 INFO    ] 2026-10-25 18:49:46
[2026-10-25 18:49:46,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:49:46,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:49:46,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:49:47,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:49:47,074.074 INFO    ] time= 25/10/2026 18:49:47
[2026-10-25 18:49:47,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:49:47,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:49:47,204.204 INFO    ] No existing commands found in stream
[2026-10-25 18:49:52,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:49:52,222.222 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 18:49:54,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:49:54,338.338 INFO    ] Checking for system updates...
[2026-10-25 18:49:54,380.380 INFO    ] 200
[2026-10-25 18:49:54,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:54,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:54,438.438 INFO    ] No update needed
[2026-10-25 18:49:54,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 18:49:54,477.477 INFO    ] 200
[2026-10-25 18:49:54,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:49:54,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:49:54,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:49:54,576.576 INFO    ] No camera update needed
[2026-10-25 18:49:54,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:49:54,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:49:54,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:49:54,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:49:56,633.633 INFO    ] ================================================
[2026-10-25 18:49:56,648.648 INFO    ] Launching Daemon at Sun Oct 25 18:49:56 IST 2026
[2026-10-25 18:49:56,658.658 INFO    ] ================================================
[2026-10-25 18:49:57,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:49:57
[2026-10-25 18:49:57,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:49:58,103.103 INFO    ] Initializing speech engine...
[2026-10-25 18:49:58,110.110 INFO    ] 2026-10-25 18:49:58
[2026-10-25 18:49:58,405.405 INFO    ] 2026-10-25 18:49:58
[2026-10-25 18:49:58,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:49:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:49:58,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:49:58,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:49:58,804.804 INFO    ] time= 25/10/2026 18:49:58
[2026-10-25 18:49:58,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:49:58,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:49:58,916.916 INFO    ] No existing commands found in stream
[2026-10-25 18:50:03,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:50:03,934.934 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 18:50:08,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:50:08,754.754 INFO    ] Checking for system updates...
[2026-10-25 18:50:08,800.800 INFO    ] 200
[2026-10-25 18:50:08,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:08,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:08,870.870 INFO    ] No update needed
[2026-10-25 18:50:08,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 18:50:08,912.912 INFO    ] 200
[2026-10-25 18:50:08,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:08,958.958 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:50:09,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:09,006.006 INFO    ] No camera update needed
[2026-10-25 18:50:09,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:50:09,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:50:09,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:50:09,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:50:11,065.065 INFO    ] ================================================
[2026-10-25 18:50:11,080.080 INFO    ] Launching Daemon at Sun Oct 25 18:50:11 IST 2026
[2026-10-25 18:50:11,091.091 INFO    ] ================================================
[2026-10-25 18:50:11,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:50:11
[2026-10-25 18:50:12,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:50:12,561.561 INFO    ] Initializing speech engine...
[2026-10-25 18:50:12,570.570 INFO    ] 2026-10-25 18:50:12
[2026-10-25 18:50:12,830.830 INFO    ] 2026-10-25 18:50:12
[2026-10-25 18:50:12,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:50:13,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:50:13,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:50:13,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:50:13,857.857 INFO    ] time= 25/10/2026 18:50:13
[2026-10-25 18:50:13,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:50:13,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:50:14,023.023 INFO    ] No existing commands found in stream
[2026-10-25 18:50:19,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:50:19,051.051 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 18:50:20,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:50:20,216.216 INFO    ] Checking for system updates...
[2026-10-25 18:50:20,253.253 INFO    ] 200
[2026-10-25 18:50:20,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:20,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:20,318.318 INFO    ] No update needed
[2026-10-25 18:50:20,320.320 INFO    ] Checking for camera pi updates...
[2026-10-25 18:50:20,358.358 INFO    ] 200
[2026-10-25 18:50:20,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:20,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:50:20,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:20,452.452 INFO    ] No camera update needed
[2026-10-25 18:50:20,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:50:20,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:50:20,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:50:20,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:50:22,508.508 INFO    ] ================================================
[2026-10-25 18:50:22,522.522 INFO    ] Launching Daemon at Sun Oct 25 18:50:22 IST 2026
[2026-10-25 18:50:22,533.533 INFO    ] ================================================
[2026-10-25 18:50:23,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:50:23
[2026-10-25 18:50:23,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:50:24,197.197 INFO    ] Initializing speech engine...
[2026-10-25 18:50:24,205.205 INFO    ] 2026-10-25 18:50:24
[2026-10-25 18:50:24,453.453 INFO    ] 2026-10-25 18:50:24
[2026-10-25 18:50:24,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:50:24,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:50:24,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:50:24,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:50:24,906.906 INFO    ] time= 25/10/2026 18:50:24
[2026-10-25 18:50:24,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:50:25,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:50:25,085.085 INFO    ] No existing commands found in stream
[2026-10-25 18:50:30,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:50:30,123.123 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 18:50:31,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:50:31,060.060 INFO    ] Checking for system updates...
[2026-10-25 18:50:31,096.096 INFO    ] 200
[2026-10-25 18:50:31,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:31,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:50:31,153.153 INFO    ] No update needed
[2026-10-25 18:50:31,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 18:50:31,191.191 INFO    ] 200
[2026-10-25 18:50:31,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:31,235.235 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:50:31,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:50:31,410.410 INFO    ] No camera update needed
[2026-10-25 18:50:31,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:50:31,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:50:31,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:50:31,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:50:33,467.467 INFO    ] ================================================
[2026-10-25 18:50:33,482.482 INFO    ] Launching Daemon at Sun Oct 25 18:50:33 IST 2026
[2026-10-25 18:50:33,493.493 INFO    ] ================================================
[2026-10-25 18:50:34,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:50:34
[2026-10-25 18:50:34,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:50:34,931.931 INFO    ] Initializing speech engine...
[2026-10-25 18:50:34,939.939 INFO    ] 2026-10-25 18:50:34
[2026-10-25 18:50:35,229.229 INFO    ] 2026-10-25 18:50:35
[2026-10-25 18:50:35,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:50:35,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:50:35,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:50:35,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:50:35,586.586 INFO    ] time= 25/10/2026 18:50:35
[2026-10-25 18:50:35,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:50:35,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:50:35,721.721 INFO    ] No existing commands found in stream
[2026-10-25 18:50:40,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:50:40,739.739 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 18:50:45,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:50:45,063.063 INFO    ] Checking for system updates...
[2026-10-25 18:50:45,100.100 INFO    ] 200
[2026-10-25 18:50:45,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:45,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:45,159.159 INFO    ] No update needed
[2026-10-25 18:50:45,162.162 INFO    ] Checking for camera pi updates...
[2026-10-25 18:50:45,196.196 INFO    ] 200
[2026-10-25 18:50:45,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:45,239.239 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:50:45,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:45,292.292 INFO    ] No camera update needed
[2026-10-25 18:50:45,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:50:45,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:50:45,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:50:45,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:50:47,349.349 INFO    ] ================================================
[2026-10-25 18:50:47,364.364 INFO    ] Launching Daemon at Sun Oct 25 18:50:47 IST 2026
[2026-10-25 18:50:47,376.376 INFO    ] ================================================
[2026-10-25 18:50:48,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:50:48
[2026-10-25 18:50:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:50:48,867.867 INFO    ] Initializing speech engine...
[2026-10-25 18:50:48,876.876 INFO    ] 2026-10-25 18:50:48
[2026-10-25 18:50:49,171.171 INFO    ] 2026-10-25 18:50:49
[2026-10-25 18:50:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:50:49,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:50:49,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:50:49,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:50:49,594.594 INFO    ] time= 25/10/2026 18:50:49
[2026-10-25 18:50:49,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:50:49,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:50:49,680.680 INFO    ] No existing commands found in stream
[2026-10-25 18:50:54,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:50:54,696.696 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 18:50:57,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:50:57,359.359 INFO    ] Checking for system updates...
[2026-10-25 18:50:57,399.399 INFO    ] 200
[2026-10-25 18:50:57,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:57,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:57,464.464 INFO    ] No update needed
[2026-10-25 18:50:57,467.467 INFO    ] Checking for camera pi updates...
[2026-10-25 18:50:57,501.501 INFO    ] 200
[2026-10-25 18:50:57,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:50:57,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:50:57,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:50:57,622.622 INFO    ] No camera update needed
[2026-10-25 18:50:57,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:50:57,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:50:57,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:50:57,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:50:59,677.677 INFO    ] ================================================
[2026-10-25 18:50:59,692.692 INFO    ] Launching Daemon at Sun Oct 25 18:50:59 IST 2026
[2026-10-25 18:50:59,703.703 INFO    ] ================================================
[2026-10-25 18:51:00,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:51:00
[2026-10-25 18:51:00,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:51:01,130.130 INFO    ] Initializing speech engine...
[2026-10-25 18:51:01,135.135 INFO    ] 2026-10-25 18:51:01
[2026-10-25 18:51:01,580.580 INFO    ] 2026-10-25 18:51:01
[2026-10-25 18:51:01,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:51:01,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:51:01,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:51:02,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:51:02,046.046 INFO    ] time= 25/10/2026 18:51:02
[2026-10-25 18:51:02,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:51:02,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:51:02,226.226 INFO    ] No existing commands found in stream
[2026-10-25 18:51:07,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:51:07,254.254 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 18:51:11,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:51:11,191.191 INFO    ] Checking for system updates...
[2026-10-25 18:51:11,229.229 INFO    ] 200
[2026-10-25 18:51:11,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:11,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:11,294.294 INFO    ] No update needed
[2026-10-25 18:51:11,296.296 INFO    ] Checking for camera pi updates...
[2026-10-25 18:51:11,331.331 INFO    ] 200
[2026-10-25 18:51:11,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:11,376.376 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:51:11,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:11,430.430 INFO    ] No camera update needed
[2026-10-25 18:51:11,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:51:11,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:51:11,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:51:11,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:51:13,489.489 INFO    ] ================================================
[2026-10-25 18:51:13,504.504 INFO    ] Launching Daemon at Sun Oct 25 18:51:13 IST 2026
[2026-10-25 18:51:13,515.515 INFO    ] ================================================
[2026-10-25 18:51:14,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:51:14
[2026-10-25 18:51:14,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:51:15,000.000 INFO    ] Initializing speech engine...
[2026-10-25 18:51:15,012.012 INFO    ] 2026-10-25 18:51:15
[2026-10-25 18:51:15,291.291 INFO    ] 2026-10-25 18:51:15
[2026-10-25 18:51:15,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:51:15,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:51:16,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:51:16,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:51:16,241.241 INFO    ] time= 25/10/2026 18:51:16
[2026-10-25 18:51:16,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:51:16,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:51:16,372.372 INFO    ] No existing commands found in stream
[2026-10-25 18:51:21,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:51:21,411.411 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 18:51:25,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:51:25,162.162 INFO    ] Checking for system updates...
[2026-10-25 18:51:25,199.199 INFO    ] 200
[2026-10-25 18:51:25,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:25,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:25,260.260 INFO    ] No update needed
[2026-10-25 18:51:25,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 18:51:25,298.298 INFO    ] 200
[2026-10-25 18:51:25,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:25,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:51:25,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:25,394.394 INFO    ] No camera update needed
[2026-10-25 18:51:25,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:51:25,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:51:25,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:51:25,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:51:27,454.454 INFO    ] ================================================
[2026-10-25 18:51:27,469.469 INFO    ] Launching Daemon at Sun Oct 25 18:51:27 IST 2026
[2026-10-25 18:51:27,480.480 INFO    ] ================================================
[2026-10-25 18:51:28,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:51:28
[2026-10-25 18:51:28,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:51:28,885.885 INFO    ] Initializing speech engine...
[2026-10-25 18:51:28,893.893 INFO    ] 2026-10-25 18:51:28
[2026-10-25 18:51:29,184.184 INFO    ] 2026-10-25 18:51:29
[2026-10-25 18:51:29,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:51:29,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:51:29,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:51:29,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:51:29,595.595 INFO    ] time= 25/10/2026 18:51:29
[2026-10-25 18:51:29,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:51:29,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:51:29,683.683 INFO    ] No existing commands found in stream
[2026-10-25 18:51:34,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:51:34,699.699 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 18:51:38,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:51:38,131.131 INFO    ] Checking for system updates...
[2026-10-25 18:51:38,171.171 INFO    ] 200
[2026-10-25 18:51:38,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:38,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:38,231.231 INFO    ] No update needed
[2026-10-25 18:51:38,234.234 INFO    ] Checking for camera pi updates...
[2026-10-25 18:51:38,272.272 INFO    ] 200
[2026-10-25 18:51:38,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:38,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:51:38,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:51:38,548.548 INFO    ] No camera update needed
[2026-10-25 18:51:38,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:51:38,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:51:38,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:51:38,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:51:40,605.605 INFO    ] ================================================
[2026-10-25 18:51:40,621.621 INFO    ] Launching Daemon at Sun Oct 25 18:51:40 IST 2026
[2026-10-25 18:51:40,632.632 INFO    ] ================================================
[2026-10-25 18:51:41,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:51:41
[2026-10-25 18:51:41,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:51:42,083.083 INFO    ] Initializing speech engine...
[2026-10-25 18:51:42,106.106 INFO    ] 2026-10-25 18:51:42
[2026-10-25 18:51:42,357.357 INFO    ] 2026-10-25 18:51:42
[2026-10-25 18:51:42,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:51:42,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:51:42,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:51:46,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:51:46,543.543 INFO    ] time= 25/10/2026 18:51:46
[2026-10-25 18:51:46,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:51:46,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:51:46,605.605 INFO    ] No existing commands found in stream
[2026-10-25 18:51:51,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:51:51,617.617 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 18:51:53,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:51:53,842.842 INFO    ] Checking for system updates...
[2026-10-25 18:51:53,879.879 INFO    ] 200
[2026-10-25 18:51:53,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:53,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:51:53,946.946 INFO    ] No update needed
[2026-10-25 18:51:53,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 18:51:53,984.984 INFO    ] 200
[2026-10-25 18:51:53,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:51:54,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:51:54,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:51:54,072.072 INFO    ] No camera update needed
[2026-10-25 18:51:54,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:51:54,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:51:54,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:51:54,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:51:56,132.132 INFO    ] ================================================
[2026-10-25 18:51:56,147.147 INFO    ] Launching Daemon at Sun Oct 25 18:51:56 IST 2026
[2026-10-25 18:51:56,159.159 INFO    ] ================================================
[2026-10-25 18:51:56,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:51:56
[2026-10-25 18:51:57,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:51:57,599.599 INFO    ] Initializing speech engine...
[2026-10-25 18:51:57,614.614 INFO    ] 2026-10-25 18:51:57
[2026-10-25 18:51:57,878.878 INFO    ] 2026-10-25 18:51:57
[2026-10-25 18:51:57,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:51:58,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:51:58,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:51:58,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:51:58,244.244 INFO    ] time= 25/10/2026 18:51:58
[2026-10-25 18:51:58,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:51:58,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:51:58,404.404 INFO    ] No existing commands found in stream
[2026-10-25 18:52:03,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:52:03,437.437 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 18:52:04,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:52:04,337.337 INFO    ] Checking for system updates...
[2026-10-25 18:52:04,377.377 INFO    ] 200
[2026-10-25 18:52:04,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:04,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:52:04,435.435 INFO    ] No update needed
[2026-10-25 18:52:04,437.437 INFO    ] Checking for camera pi updates...
[2026-10-25 18:52:04,474.474 INFO    ] 200
[2026-10-25 18:52:04,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:04,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:52:04,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:52:04,577.577 INFO    ] No camera update needed
[2026-10-25 18:52:04,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:52:04,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:52:04,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:52:04,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:52:06,631.631 INFO    ] ================================================
[2026-10-25 18:52:06,647.647 INFO    ] Launching Daemon at Sun Oct 25 18:52:06 IST 2026
[2026-10-25 18:52:06,658.658 INFO    ] ================================================
[2026-10-25 18:52:07,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:52:07
[2026-10-25 18:52:07,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:52:08,264.264 INFO    ] Initializing speech engine...
[2026-10-25 18:52:08,277.277 INFO    ] 2026-10-25 18:52:08
[2026-10-25 18:52:08,555.555 INFO    ] 2026-10-25 18:52:08
[2026-10-25 18:52:08,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:52:08,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:52:08,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:52:08,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:52:09,033.033 INFO    ] time= 25/10/2026 18:52:08
[2026-10-25 18:52:09,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:52:09,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:52:09,229.229 INFO    ] No existing commands found in stream
[2026-10-25 18:52:14,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:52:14,261.261 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 18:52:18,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:52:18,663.663 INFO    ] Checking for system updates...
[2026-10-25 18:52:18,700.700 INFO    ] 200
[2026-10-25 18:52:18,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:18,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:18,761.761 INFO    ] No update needed
[2026-10-25 18:52:18,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 18:52:18,799.799 INFO    ] 200
[2026-10-25 18:52:18,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:18,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:52:18,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:18,905.905 INFO    ] No camera update needed
[2026-10-25 18:52:18,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:52:18,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:52:18,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:52:18,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:52:20,961.961 INFO    ] ================================================
[2026-10-25 18:52:20,977.977 INFO    ] Launching Daemon at Sun Oct 25 18:52:20 IST 2026
[2026-10-25 18:52:20,988.988 INFO    ] ================================================
[2026-10-25 18:52:21,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:52:21
[2026-10-25 18:52:22,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:52:22,452.452 INFO    ] Initializing speech engine...
[2026-10-25 18:52:22,462.462 INFO    ] 2026-10-25 18:52:22
[2026-10-25 18:52:22,721.721 INFO    ] 2026-10-25 18:52:22
[2026-10-25 18:52:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:52:22,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:52:23,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:52:23,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:52:23,171.171 INFO    ] time= 25/10/2026 18:52:23
[2026-10-25 18:52:23,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:52:23,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:52:23,324.324 INFO    ] No existing commands found in stream
[2026-10-25 18:52:28,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:52:28,338.338 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 18:52:32,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:52:32,729.729 INFO    ] Checking for system updates...
[2026-10-25 18:52:32,767.767 INFO    ] 200
[2026-10-25 18:52:32,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:32,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:52:32,833.833 INFO    ] No update needed
[2026-10-25 18:52:32,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 18:52:32,870.870 INFO    ] 200
[2026-10-25 18:52:32,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:32,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:52:32,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:52:32,968.968 INFO    ] No camera update needed
[2026-10-25 18:52:32,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:52:32,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:52:32,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:52:32,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:52:35,023.023 INFO    ] ================================================
[2026-10-25 18:52:35,038.038 INFO    ] Launching Daemon at Sun Oct 25 18:52:35 IST 2026
[2026-10-25 18:52:35,049.049 INFO    ] ================================================
[2026-10-25 18:52:35,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:52:35
[2026-10-25 18:52:36,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:52:36,608.608 INFO    ] Initializing speech engine...
[2026-10-25 18:52:36,617.617 INFO    ] 2026-10-25 18:52:36
[2026-10-25 18:52:36,863.863 INFO    ] 2026-10-25 18:52:36
[2026-10-25 18:52:36,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:52:37,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:52:37,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:52:37,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:52:37,325.325 INFO    ] time= 25/10/2026 18:52:37
[2026-10-25 18:52:37,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:52:37,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:52:37,498.498 INFO    ] No existing commands found in stream
[2026-10-25 18:52:42,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:52:42,515.515 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 18:52:43,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:52:43,477.477 INFO    ] Checking for system updates...
[2026-10-25 18:52:43,516.516 INFO    ] 200
[2026-10-25 18:52:43,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:43,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:43,579.579 INFO    ] No update needed
[2026-10-25 18:52:43,582.582 INFO    ] Checking for camera pi updates...
[2026-10-25 18:52:43,617.617 INFO    ] 200
[2026-10-25 18:52:43,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:43,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:52:43,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:43,820.820 INFO    ] No camera update needed
[2026-10-25 18:52:43,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:52:43,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:52:43,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:52:43,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:52:45,882.882 INFO    ] ================================================
[2026-10-25 18:52:45,897.897 INFO    ] Launching Daemon at Sun Oct 25 18:52:45 IST 2026
[2026-10-25 18:52:45,907.907 INFO    ] ================================================
[2026-10-25 18:52:46,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:52:46
[2026-10-25 18:52:47,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:52:47,391.391 INFO    ] Initializing speech engine...
[2026-10-25 18:52:47,401.401 INFO    ] 2026-10-25 18:52:47
[2026-10-25 18:52:47,689.689 INFO    ] 2026-10-25 18:52:47
[2026-10-25 18:52:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:52:47,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:52:47,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:52:48,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:52:48,143.143 INFO    ] time= 25/10/2026 18:52:48
[2026-10-25 18:52:48,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:52:48,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:52:48,288.288 INFO    ] No existing commands found in stream
[2026-10-25 18:52:53,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:52:53,307.307 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 18:52:56,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:52:56,038.038 INFO    ] Checking for system updates...
[2026-10-25 18:52:56,076.076 INFO    ] 200
[2026-10-25 18:52:56,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:56,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:56,139.139 INFO    ] No update needed
[2026-10-25 18:52:56,142.142 INFO    ] Checking for camera pi updates...
[2026-10-25 18:52:56,177.177 INFO    ] 200
[2026-10-25 18:52:56,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:52:56,220.220 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:52:56,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:52:56,283.283 INFO    ] No camera update needed
[2026-10-25 18:52:56,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:52:56,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:52:56,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:52:56,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:52:58,337.337 INFO    ] ================================================
[2026-10-25 18:52:58,352.352 INFO    ] Launching Daemon at Sun Oct 25 18:52:58 IST 2026
[2026-10-25 18:52:58,363.363 INFO    ] ================================================
[2026-10-25 18:52:59,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:52:59
[2026-10-25 18:52:59,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:52:59,994.994 INFO    ] Initializing speech engine...
[2026-10-25 18:53:00,006.006 INFO    ] 2026-10-25 18:52:59
[2026-10-25 18:53:00,284.284 INFO    ] 2026-10-25 18:53:00
[2026-10-25 18:53:00,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:53:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:53:00,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:53:00,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:53:00,830.830 INFO    ] time= 25/10/2026 18:53:00
[2026-10-25 18:53:00,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:53:00,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:53:00,988.988 INFO    ] No existing commands found in stream
[2026-10-25 18:53:06,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:53:06,020.020 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 18:53:09,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:53:09,153.153 INFO    ] Checking for system updates...
[2026-10-25 18:53:09,195.195 INFO    ] 200
[2026-10-25 18:53:09,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:09,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:09,260.260 INFO    ] No update needed
[2026-10-25 18:53:09,263.263 INFO    ] Checking for camera pi updates...
[2026-10-25 18:53:09,301.301 INFO    ] 200
[2026-10-25 18:53:09,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:09,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:53:09,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:09,400.400 INFO    ] No camera update needed
[2026-10-25 18:53:09,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:53:09,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:53:09,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:53:09,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:53:11,457.457 INFO    ] ================================================
[2026-10-25 18:53:11,476.476 INFO    ] Launching Daemon at Sun Oct 25 18:53:11 IST 2026
[2026-10-25 18:53:11,487.487 INFO    ] ================================================
[2026-10-25 18:53:12,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:53:12
[2026-10-25 18:53:12,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:53:13,074.074 INFO    ] Initializing speech engine...
[2026-10-25 18:53:13,090.090 INFO    ] 2026-10-25 18:53:13
[2026-10-25 18:53:13,358.358 INFO    ] 2026-10-25 18:53:13
[2026-10-25 18:53:13,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:53:13,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:53:13,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:53:13,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:53:13,849.849 INFO    ] time= 25/10/2026 18:53:13
[2026-10-25 18:53:13,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:53:13,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:53:13,994.994 INFO    ] No existing commands found in stream
[2026-10-25 18:53:19,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:53:19,009.009 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 18:53:25,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:53:25,421.421 INFO    ] Checking for system updates...
[2026-10-25 18:53:25,458.458 INFO    ] 200
[2026-10-25 18:53:25,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:25,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:25,517.517 INFO    ] No update needed
[2026-10-25 18:53:25,519.519 INFO    ] Checking for camera pi updates...
[2026-10-25 18:53:25,556.556 INFO    ] 200
[2026-10-25 18:53:25,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:25,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:53:25,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:25,658.658 INFO    ] No camera update needed
[2026-10-25 18:53:25,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:53:25,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:53:25,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:53:25,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:53:27,714.714 INFO    ] ================================================
[2026-10-25 18:53:27,729.729 INFO    ] Launching Daemon at Sun Oct 25 18:53:27 IST 2026
[2026-10-25 18:53:27,739.739 INFO    ] ================================================
[2026-10-25 18:53:28,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:53:28
[2026-10-25 18:53:28,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:53:29,154.154 INFO    ] Initializing speech engine...
[2026-10-25 18:53:29,164.164 INFO    ] 2026-10-25 18:53:29
[2026-10-25 18:53:29,422.422 INFO    ] 2026-10-25 18:53:29
[2026-10-25 18:53:29,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:53:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:53:29,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:53:29,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:53:29,873.873 INFO    ] time= 25/10/2026 18:53:29
[2026-10-25 18:53:29,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:53:29,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:53:30,026.026 INFO    ] No existing commands found in stream
[2026-10-25 18:53:35,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:53:35,041.041 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 18:53:36,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:53:36,120.120 INFO    ] Checking for system updates...
[2026-10-25 18:53:36,157.157 INFO    ] 200
[2026-10-25 18:53:36,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:36,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:36,220.220 INFO    ] No update needed
[2026-10-25 18:53:36,223.223 INFO    ] Checking for camera pi updates...
[2026-10-25 18:53:36,260.260 INFO    ] 200
[2026-10-25 18:53:36,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:36,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:53:36,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:53:36,353.353 INFO    ] No camera update needed
[2026-10-25 18:53:36,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:53:36,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:53:36,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:53:36,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:53:38,410.410 INFO    ] ================================================
[2026-10-25 18:53:38,425.425 INFO    ] Launching Daemon at Sun Oct 25 18:53:38 IST 2026
[2026-10-25 18:53:38,436.436 INFO    ] ================================================
[2026-10-25 18:53:39,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:53:39
[2026-10-25 18:53:39,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:53:39,829.829 INFO    ] Initializing speech engine...
[2026-10-25 18:53:39,844.844 INFO    ] 2026-10-25 18:53:39
[2026-10-25 18:53:40,105.105 INFO    ] 2026-10-25 18:53:40
[2026-10-25 18:53:40,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:53:40,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:53:40,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:53:40,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:53:40,574.574 INFO    ] time= 25/10/2026 18:53:40
[2026-10-25 18:53:40,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:53:40,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:53:40,724.724 INFO    ] No existing commands found in stream
[2026-10-25 18:53:45,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:53:45,747.747 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 18:53:47,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:53:47,207.207 INFO    ] Checking for system updates...
[2026-10-25 18:53:47,248.248 INFO    ] 200
[2026-10-25 18:53:47,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:47,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:53:47,315.315 INFO    ] No update needed
[2026-10-25 18:53:47,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 18:53:47,355.355 INFO    ] 200
[2026-10-25 18:53:47,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:47,401.401 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:53:47,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:53:47,467.467 INFO    ] No camera update needed
[2026-10-25 18:53:47,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:53:47,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:53:47,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:53:47,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:53:49,524.524 INFO    ] ================================================
[2026-10-25 18:53:49,539.539 INFO    ] Launching Daemon at Sun Oct 25 18:53:49 IST 2026
[2026-10-25 18:53:49,551.551 INFO    ] ================================================
[2026-10-25 18:53:50,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:53:50
[2026-10-25 18:53:50,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:53:50,968.968 INFO    ] Initializing speech engine...
[2026-10-25 18:53:50,977.977 INFO    ] 2026-10-25 18:53:50
[2026-10-25 18:53:51,223.223 INFO    ] 2026-10-25 18:53:51
[2026-10-25 18:53:51,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:53:51,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:53:51,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:53:51,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:53:51,588.588 INFO    ] time= 25/10/2026 18:53:51
[2026-10-25 18:53:51,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:53:51,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:53:51,664.664 INFO    ] No existing commands found in stream
[2026-10-25 18:53:56,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:53:56,697.697 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 18:53:59,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:53:59,380.380 INFO    ] Checking for system updates...
[2026-10-25 18:53:59,415.415 INFO    ] 200
[2026-10-25 18:53:59,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:59,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:53:59,481.481 INFO    ] No update needed
[2026-10-25 18:53:59,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 18:53:59,517.517 INFO    ] 200
[2026-10-25 18:53:59,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:53:59,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:53:59,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:53:59,622.622 INFO    ] No camera update needed
[2026-10-25 18:53:59,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:53:59,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:53:59,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:53:59,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:54:01,693.693 INFO    ] ================================================
[2026-10-25 18:54:01,722.722 INFO    ] Launching Daemon at Sun Oct 25 18:54:01 IST 2026
[2026-10-25 18:54:01,745.745 INFO    ] ================================================
[2026-10-25 18:54:02,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:54:02
[2026-10-25 18:54:03,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:54:03,546.546 INFO    ] Initializing speech engine...
[2026-10-25 18:54:03,564.564 INFO    ] 2026-10-25 18:54:03
[2026-10-25 18:54:03,831.831 INFO    ] 2026-10-25 18:54:03
[2026-10-25 18:54:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:54:04,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:54:04,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:54:04,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:54:04,206.206 INFO    ] time= 25/10/2026 18:54:04
[2026-10-25 18:54:04,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:54:04,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:54:04,374.374 INFO    ] No existing commands found in stream
[2026-10-25 18:54:09,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:54:09,403.403 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 18:54:13,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:54:13,449.449 INFO    ] Checking for system updates...
[2026-10-25 18:54:13,490.490 INFO    ] 200
[2026-10-25 18:54:13,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:13,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:13,556.556 INFO    ] No update needed
[2026-10-25 18:54:13,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 18:54:13,592.592 INFO    ] 200
[2026-10-25 18:54:13,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:13,641.641 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:54:13,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:13,702.702 INFO    ] No camera update needed
[2026-10-25 18:54:13,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:54:13,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:54:13,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:54:13,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:54:15,757.757 INFO    ] ================================================
[2026-10-25 18:54:15,773.773 INFO    ] Launching Daemon at Sun Oct 25 18:54:15 IST 2026
[2026-10-25 18:54:15,784.784 INFO    ] ================================================
[2026-10-25 18:54:16,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:54:16
[2026-10-25 18:54:16,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:54:17,181.181 INFO    ] Initializing speech engine...
[2026-10-25 18:54:17,189.189 INFO    ] 2026-10-25 18:54:17
[2026-10-25 18:54:17,463.463 INFO    ] 2026-10-25 18:54:17
[2026-10-25 18:54:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:54:17,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:54:17,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:54:17,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:54:17,837.837 INFO    ] time= 25/10/2026 18:54:17
[2026-10-25 18:54:17,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:54:17,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:54:17,914.914 INFO    ] No existing commands found in stream
[2026-10-25 18:54:22,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:54:22,929.929 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 18:54:28,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:54:28,110.110 INFO    ] Checking for system updates...
[2026-10-25 18:54:28,146.146 INFO    ] 200
[2026-10-25 18:54:28,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:28,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:28,205.205 INFO    ] No update needed
[2026-10-25 18:54:28,208.208 INFO    ] Checking for camera pi updates...
[2026-10-25 18:54:28,242.242 INFO    ] 200
[2026-10-25 18:54:28,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:28,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:54:28,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:28,339.339 INFO    ] No camera update needed
[2026-10-25 18:54:28,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:54:28,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:54:28,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:54:28,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:54:30,394.394 INFO    ] ================================================
[2026-10-25 18:54:30,409.409 INFO    ] Launching Daemon at Sun Oct 25 18:54:30 IST 2026
[2026-10-25 18:54:30,420.420 INFO    ] ================================================
[2026-10-25 18:54:31,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:54:31
[2026-10-25 18:54:31,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:54:31,932.932 INFO    ] Initializing speech engine...
[2026-10-25 18:54:31,943.943 INFO    ] 2026-10-25 18:54:31
[2026-10-25 18:54:32,233.233 INFO    ] 2026-10-25 18:54:32
[2026-10-25 18:54:32,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:54:32,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:54:32,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:54:32,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:54:32,796.796 INFO    ] time= 25/10/2026 18:54:32
[2026-10-25 18:54:32,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:54:32,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:54:32,952.952 INFO    ] No existing commands found in stream
[2026-10-25 18:54:37,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:54:37,981.981 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 18:54:41,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:54:41,911.911 INFO    ] Checking for system updates...
[2026-10-25 18:54:41,966.966 INFO    ] 200
[2026-10-25 18:54:41,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:42,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:54:42,047.047 INFO    ] No update needed
[2026-10-25 18:54:42,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 18:54:42,090.090 INFO    ] 200
[2026-10-25 18:54:42,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:42,145.145 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:54:42,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:54:42,200.200 INFO    ] No camera update needed
[2026-10-25 18:54:42,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:54:42,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:54:42,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:54:42,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:54:44,258.258 INFO    ] ================================================
[2026-10-25 18:54:44,274.274 INFO    ] Launching Daemon at Sun Oct 25 18:54:44 IST 2026
[2026-10-25 18:54:44,284.284 INFO    ] ================================================
[2026-10-25 18:54:44,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:54:44
[2026-10-25 18:54:45,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:54:45,727.727 INFO    ] Initializing speech engine...
[2026-10-25 18:54:45,741.741 INFO    ] 2026-10-25 18:54:45
[2026-10-25 18:54:45,995.995 INFO    ] 2026-10-25 18:54:45
[2026-10-25 18:54:46,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:54:46,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:54:46,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:54:46,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:54:46,471.471 INFO    ] time= 25/10/2026 18:54:46
[2026-10-25 18:54:46,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:54:46,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:54:46,616.616 INFO    ] No existing commands found in stream
[2026-10-25 18:54:51,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:54:51,631.631 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 18:54:58,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:54:58,835.835 INFO    ] Checking for system updates...
[2026-10-25 18:54:58,872.872 INFO    ] 200
[2026-10-25 18:54:58,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:58,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:58,943.943 INFO    ] No update needed
[2026-10-25 18:54:58,945.945 INFO    ] Checking for camera pi updates...
[2026-10-25 18:54:58,983.983 INFO    ] 200
[2026-10-25 18:54:58,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:54:59,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:54:59,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:54:59,189.189 INFO    ] No camera update needed
[2026-10-25 18:54:59,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:54:59,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:54:59,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:54:59,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:55:01,244.244 INFO    ] ================================================
[2026-10-25 18:55:01,260.260 INFO    ] Launching Daemon at Sun Oct 25 18:55:01 IST 2026
[2026-10-25 18:55:01,271.271 INFO    ] ================================================
[2026-10-25 18:55:02,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:55:02
[2026-10-25 18:55:02,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:55:03,042.042 INFO    ] Initializing speech engine...
[2026-10-25 18:55:03,067.067 INFO    ] 2026-10-25 18:55:03
[2026-10-25 18:55:03,386.386 INFO    ] 2026-10-25 18:55:03
[2026-10-25 18:55:03,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:55:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:55:03,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:55:03,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:55:03,828.828 INFO    ] time= 25/10/2026 18:55:03
[2026-10-25 18:55:03,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:55:03,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:55:03,918.918 INFO    ] No existing commands found in stream
[2026-10-25 18:55:08,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:55:08,951.951 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 18:55:12,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:55:12,156.156 INFO    ] Checking for system updates...
[2026-10-25 18:55:12,201.201 INFO    ] 200
[2026-10-25 18:55:12,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:12,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:55:12,269.269 INFO    ] No update needed
[2026-10-25 18:55:12,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 18:55:12,305.305 INFO    ] 200
[2026-10-25 18:55:12,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:12,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:55:12,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:55:12,400.400 INFO    ] No camera update needed
[2026-10-25 18:55:12,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:55:12,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:55:12,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:55:12,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:55:14,454.454 INFO    ] ================================================
[2026-10-25 18:55:14,469.469 INFO    ] Launching Daemon at Sun Oct 25 18:55:14 IST 2026
[2026-10-25 18:55:14,480.480 INFO    ] ================================================
[2026-10-25 18:55:15,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:55:15
[2026-10-25 18:55:15,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:55:15,987.987 INFO    ] Initializing speech engine...
[2026-10-25 18:55:15,995.995 INFO    ] 2026-10-25 18:55:15
[2026-10-25 18:55:16,268.268 INFO    ] 2026-10-25 18:55:16
[2026-10-25 18:55:16,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:55:16,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:55:16,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:55:16,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:55:16,643.643 INFO    ] time= 25/10/2026 18:55:16
[2026-10-25 18:55:16,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:55:16,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:55:16,817.817 INFO    ] No existing commands found in stream
[2026-10-25 18:55:21,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:55:21,850.850 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 18:55:29,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:55:29,869.869 INFO    ] Checking for system updates...
[2026-10-25 18:55:29,905.905 INFO    ] 200
[2026-10-25 18:55:29,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:29,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:29,963.963 INFO    ] No update needed
[2026-10-25 18:55:29,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 18:55:30,000.000 INFO    ] 200
[2026-10-25 18:55:30,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:30,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:55:30,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:30,116.116 INFO    ] No camera update needed
[2026-10-25 18:55:30,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:55:30,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:55:30,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:55:30,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:55:32,172.172 INFO    ] ================================================
[2026-10-25 18:55:32,188.188 INFO    ] Launching Daemon at Sun Oct 25 18:55:32 IST 2026
[2026-10-25 18:55:32,199.199 INFO    ] ================================================
[2026-10-25 18:55:32,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:55:32
[2026-10-25 18:55:33,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:55:33,714.714 INFO    ] Initializing speech engine...
[2026-10-25 18:55:33,718.718 INFO    ] 2026-10-25 18:55:33
[2026-10-25 18:55:33,981.981 INFO    ] 2026-10-25 18:55:33
[2026-10-25 18:55:34,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:55:34,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:55:34,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:55:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:55:34,523.523 INFO    ] time= 25/10/2026 18:55:34
[2026-10-25 18:55:34,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:55:34,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:55:34,663.663 INFO    ] No existing commands found in stream
[2026-10-25 18:55:39,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:55:39,686.686 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 18:55:42,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:55:42,670.670 INFO    ] Checking for system updates...
[2026-10-25 18:55:42,707.707 INFO    ] 200
[2026-10-25 18:55:42,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:42,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:42,774.774 INFO    ] No update needed
[2026-10-25 18:55:42,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 18:55:42,812.812 INFO    ] 200
[2026-10-25 18:55:42,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:42,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:55:42,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:42,911.911 INFO    ] No camera update needed
[2026-10-25 18:55:42,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:55:42,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:55:42,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:55:42,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:55:44,971.971 INFO    ] ================================================
[2026-10-25 18:55:44,987.987 INFO    ] Launching Daemon at Sun Oct 25 18:55:44 IST 2026
[2026-10-25 18:55:45,997.997 INFO    ] ================================================
[2026-10-25 18:55:45,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:55:45
[2026-10-25 18:55:46,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:55:46,665.665 INFO    ] Initializing speech engine...
[2026-10-25 18:55:46,679.679 INFO    ] 2026-10-25 18:55:46
[2026-10-25 18:55:46,969.969 INFO    ] 2026-10-25 18:55:46
[2026-10-25 18:55:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:55:47,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:55:47,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:55:47,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:55:47,506.506 INFO    ] time= 25/10/2026 18:55:47
[2026-10-25 18:55:47,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:55:47,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:55:47,661.661 INFO    ] No existing commands found in stream
[2026-10-25 18:55:52,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:55:52,691.691 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 18:55:54,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:55:54,250.250 INFO    ] Checking for system updates...
[2026-10-25 18:55:54,287.287 INFO    ] 200
[2026-10-25 18:55:54,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:54,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:54,354.354 INFO    ] No update needed
[2026-10-25 18:55:54,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 18:55:54,390.390 INFO    ] 200
[2026-10-25 18:55:54,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:55:54,434.434 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:55:54,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:55:54,481.481 INFO    ] No camera update needed
[2026-10-25 18:55:54,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:55:54,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:55:54,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:55:54,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:55:56,536.536 INFO    ] ================================================
[2026-10-25 18:55:56,551.551 INFO    ] Launching Daemon at Sun Oct 25 18:55:56 IST 2026
[2026-10-25 18:55:56,562.562 INFO    ] ================================================
[2026-10-25 18:55:57,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:55:57
[2026-10-25 18:55:57,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:55:57,998.998 INFO    ] Initializing speech engine...
[2026-10-25 18:55:58,004.004 INFO    ] 2026-10-25 18:55:57
[2026-10-25 18:55:58,264.264 INFO    ] 2026-10-25 18:55:58
[2026-10-25 18:55:58,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:56:01,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:56:01,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:56:01,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:56:01,523.523 INFO    ] time= 25/10/2026 18:56:01
[2026-10-25 18:56:01,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:56:01,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:56:01,586.586 INFO    ] No existing commands found in stream
[2026-10-25 18:56:06,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:56:06,598.598 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 18:56:10,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:56:10,918.918 INFO    ] Checking for system updates...
[2026-10-25 18:56:10,954.954 INFO    ] 200
[2026-10-25 18:56:10,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:11,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:11,015.015 INFO    ] No update needed
[2026-10-25 18:56:11,018.018 INFO    ] Checking for camera pi updates...
[2026-10-25 18:56:11,055.055 INFO    ] 200
[2026-10-25 18:56:11,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:11,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:56:11,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:11,168.168 INFO    ] No camera update needed
[2026-10-25 18:56:11,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:56:11,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:56:11,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:56:11,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:56:13,222.222 INFO    ] ================================================
[2026-10-25 18:56:13,237.237 INFO    ] Launching Daemon at Sun Oct 25 18:56:13 IST 2026
[2026-10-25 18:56:13,248.248 INFO    ] ================================================
[2026-10-25 18:56:13,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:56:13
[2026-10-25 18:56:14,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:56:14,705.705 INFO    ] Initializing speech engine...
[2026-10-25 18:56:14,711.711 INFO    ] 2026-10-25 18:56:14
[2026-10-25 18:56:14,972.972 INFO    ] 2026-10-25 18:56:14
[2026-10-25 18:56:15,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:56:15,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:56:15,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:56:15,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:56:15,425.425 INFO    ] time= 25/10/2026 18:56:15
[2026-10-25 18:56:15,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:56:15,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:56:15,580.580 INFO    ] No existing commands found in stream
[2026-10-25 18:56:20,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:56:20,603.603 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 18:56:21,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:56:21,438.438 INFO    ] Checking for system updates...
[2026-10-25 18:56:21,479.479 INFO    ] 200
[2026-10-25 18:56:21,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:21,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:21,544.544 INFO    ] No update needed
[2026-10-25 18:56:21,547.547 INFO    ] Checking for camera pi updates...
[2026-10-25 18:56:21,585.585 INFO    ] 200
[2026-10-25 18:56:21,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:21,633.633 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:56:21,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:21,700.700 INFO    ] No camera update needed
[2026-10-25 18:56:21,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:56:21,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:56:21,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:56:21,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:56:23,754.754 INFO    ] ================================================
[2026-10-25 18:56:23,769.769 INFO    ] Launching Daemon at Sun Oct 25 18:56:23 IST 2026
[2026-10-25 18:56:23,779.779 INFO    ] ================================================
[2026-10-25 18:56:24,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:56:24
[2026-10-25 18:56:24,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:56:25,172.172 INFO    ] Initializing speech engine...
[2026-10-25 18:56:25,185.185 INFO    ] 2026-10-25 18:56:25
[2026-10-25 18:56:25,450.450 INFO    ] 2026-10-25 18:56:25
[2026-10-25 18:56:25,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:56:25,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:56:25,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:56:25,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:56:25,927.927 INFO    ] time= 25/10/2026 18:56:25
[2026-10-25 18:56:25,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:56:26,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:56:26,075.075 INFO    ] No existing commands found in stream
[2026-10-25 18:56:31,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:56:31,090.090 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 18:56:32,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:56:32,789.789 INFO    ] Checking for system updates...
[2026-10-25 18:56:32,830.830 INFO    ] 200
[2026-10-25 18:56:32,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:32,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:32,887.887 INFO    ] No update needed
[2026-10-25 18:56:32,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 18:56:32,923.923 INFO    ] 200
[2026-10-25 18:56:32,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:32,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:56:33,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:56:33,003.003 INFO    ] No camera update needed
[2026-10-25 18:56:33,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:56:33,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:56:33,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:56:33,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:56:35,062.062 INFO    ] ================================================
[2026-10-25 18:56:35,077.077 INFO    ] Launching Daemon at Sun Oct 25 18:56:35 IST 2026
[2026-10-25 18:56:35,088.088 INFO    ] ================================================
[2026-10-25 18:56:35,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:56:35
[2026-10-25 18:56:36,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:56:36,706.706 INFO    ] Initializing speech engine...
[2026-10-25 18:56:36,717.717 INFO    ] 2026-10-25 18:56:36
[2026-10-25 18:56:36,998.998 INFO    ] 2026-10-25 18:56:36
[2026-10-25 18:56:37,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:56:37,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:56:37,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:56:37,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:56:37,475.475 INFO    ] time= 25/10/2026 18:56:37
[2026-10-25 18:56:37,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:56:37,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:56:37,615.615 INFO    ] No existing commands found in stream
[2026-10-25 18:56:42,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:56:42,631.631 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 18:56:46,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:56:46,528.528 INFO    ] Checking for system updates...
[2026-10-25 18:56:46,565.565 INFO    ] 200
[2026-10-25 18:56:46,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:46,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:56:46,624.624 INFO    ] No update needed
[2026-10-25 18:56:46,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 18:56:46,665.665 INFO    ] 200
[2026-10-25 18:56:46,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:56:46,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:56:46,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:56:46,775.775 INFO    ] No camera update needed
[2026-10-25 18:56:46,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:56:46,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:56:46,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:56:46,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:56:48,830.830 INFO    ] ================================================
[2026-10-25 18:56:48,844.844 INFO    ] Launching Daemon at Sun Oct 25 18:56:48 IST 2026
[2026-10-25 18:56:48,855.855 INFO    ] ================================================
[2026-10-25 18:56:49,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:56:49
[2026-10-25 18:56:50,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:56:50,272.272 INFO    ] Initializing speech engine...
[2026-10-25 18:56:50,284.284 INFO    ] 2026-10-25 18:56:50
[2026-10-25 18:56:50,530.530 INFO    ] 2026-10-25 18:56:50
[2026-10-25 18:56:50,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:56:50,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:56:50,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:56:50,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:56:51,006.006 INFO    ] time= 25/10/2026 18:56:50
[2026-10-25 18:56:51,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:56:51,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:56:51,155.155 INFO    ] No existing commands found in stream
[2026-10-25 18:56:56,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:56:56,169.169 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 18:57:03,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:57:03,501.501 INFO    ] Checking for system updates...
[2026-10-25 18:57:03,550.550 INFO    ] 200
[2026-10-25 18:57:03,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:03,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:03,618.618 INFO    ] No update needed
[2026-10-25 18:57:03,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 18:57:03,657.657 INFO    ] 200
[2026-10-25 18:57:03,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:03,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:57:03,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:03,746.746 INFO    ] No camera update needed
[2026-10-25 18:57:03,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:57:03,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:57:03,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:57:03,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:57:05,801.801 INFO    ] ================================================
[2026-10-25 18:57:05,816.816 INFO    ] Launching Daemon at Sun Oct 25 18:57:05 IST 2026
[2026-10-25 18:57:05,827.827 INFO    ] ================================================
[2026-10-25 18:57:06,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:57:06
[2026-10-25 18:57:07,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:57:07,290.290 INFO    ] Initializing speech engine...
[2026-10-25 18:57:07,304.304 INFO    ] 2026-10-25 18:57:07
[2026-10-25 18:57:07,572.572 INFO    ] 2026-10-25 18:57:07
[2026-10-25 18:57:07,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:57:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:57:07,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:57:07,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:57:07,954.954 INFO    ] time= 25/10/2026 18:57:07
[2026-10-25 18:57:07,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:57:07,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:57:08,079.079 INFO    ] No existing commands found in stream
[2026-10-25 18:57:13,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:57:13,094.094 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-25 18:57:15,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:57:15,297.297 INFO    ] Checking for system updates...
[2026-10-25 18:57:15,333.333 INFO    ] 200
[2026-10-25 18:57:15,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:15,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:15,391.391 INFO    ] No update needed
[2026-10-25 18:57:15,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 18:57:15,427.427 INFO    ] 200
[2026-10-25 18:57:15,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:15,478.478 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:57:15,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:15,536.536 INFO    ] No camera update needed
[2026-10-25 18:57:15,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:57:15,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:57:15,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:57:15,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:57:17,592.592 INFO    ] ================================================
[2026-10-25 18:57:17,606.606 INFO    ] Launching Daemon at Sun Oct 25 18:57:17 IST 2026
[2026-10-25 18:57:17,617.617 INFO    ] ================================================
[2026-10-25 18:57:18,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:57:18
[2026-10-25 18:57:18,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:57:19,016.016 INFO    ] Initializing speech engine...
[2026-10-25 18:57:19,022.022 INFO    ] 2026-10-25 18:57:19
[2026-10-25 18:57:19,315.315 INFO    ] 2026-10-25 18:57:19
[2026-10-25 18:57:19,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:57:19,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:57:19,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:57:19,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:57:19,690.690 INFO    ] time= 25/10/2026 18:57:19
[2026-10-25 18:57:19,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:57:19,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:57:19,811.811 INFO    ] No existing commands found in stream
[2026-10-25 18:57:24,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:57:24,826.826 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 18:57:28,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 18:57:28,696.696 INFO    ] Checking for system updates...
[2026-10-25 18:57:28,735.735 INFO    ] 200
[2026-10-25 18:57:28,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:28,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:57:28,800.800 INFO    ] No update needed
[2026-10-25 18:57:28,802.802 INFO    ] Checking for camera pi updates...
[2026-10-25 18:57:28,839.839 INFO    ] 200
[2026-10-25 18:57:28,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:28,888.888 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:57:28,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:57:28,944.944 INFO    ] No camera update needed
[2026-10-25 18:57:28,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:57:28,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:57:28,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:57:28,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:57:31,002.002 INFO    ] ================================================
[2026-10-25 18:57:31,018.018 INFO    ] Launching Daemon at Sun Oct 25 18:57:31 IST 2026
[2026-10-25 18:57:31,029.029 INFO    ] ================================================
[2026-10-25 18:57:31,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:57:31
[2026-10-25 18:57:32,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:57:32,568.568 INFO    ] Initializing speech engine...
[2026-10-25 18:57:32,582.582 INFO    ] 2026-10-25 18:57:32
[2026-10-25 18:57:32,849.849 INFO    ] 2026-10-25 18:57:32
[2026-10-25 18:57:32,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:57:34,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:57:34,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:57:35,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:57:35,029.029 INFO    ] time= 25/10/2026 18:57:35
[2026-10-25 18:57:35,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:57:35,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:57:35,102.102 INFO    ] No existing commands found in stream
[2026-10-25 18:57:40,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:57:40,119.119 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 18:57:41,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:57:41,138.138 INFO    ] Checking for system updates...
[2026-10-25 18:57:41,179.179 INFO    ] 200
[2026-10-25 18:57:41,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:41,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:57:41,245.245 INFO    ] No update needed
[2026-10-25 18:57:41,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 18:57:41,283.283 INFO    ] 200
[2026-10-25 18:57:41,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:41,328.328 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:57:41,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:57:41,385.385 INFO    ] No camera update needed
[2026-10-25 18:57:41,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:57:41,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:57:41,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:57:41,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:57:43,441.441 INFO    ] ================================================
[2026-10-25 18:57:43,456.456 INFO    ] Launching Daemon at Sun Oct 25 18:57:43 IST 2026
[2026-10-25 18:57:43,467.467 INFO    ] ================================================
[2026-10-25 18:57:44,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:57:44
[2026-10-25 18:57:44,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:57:44,860.860 INFO    ] Initializing speech engine...
[2026-10-25 18:57:44,872.872 INFO    ] 2026-10-25 18:57:44
[2026-10-25 18:57:45,132.132 INFO    ] 2026-10-25 18:57:45
[2026-10-25 18:57:45,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:57:45,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:57:45,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:57:45,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:57:45,685.685 INFO    ] time= 25/10/2026 18:57:45
[2026-10-25 18:57:45,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:57:45,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:57:45,819.819 INFO    ] No existing commands found in stream
[2026-10-25 18:57:50,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:57:50,847.847 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 18:57:53,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:57:53,067.067 INFO    ] Checking for system updates...
[2026-10-25 18:57:53,105.105 INFO    ] 200
[2026-10-25 18:57:53,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:53,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:53,168.168 INFO    ] No update needed
[2026-10-25 18:57:53,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 18:57:53,208.208 INFO    ] 200
[2026-10-25 18:57:53,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:57:53,255.255 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:57:53,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:57:53,309.309 INFO    ] No camera update needed
[2026-10-25 18:57:53,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:57:53,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:57:53,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:57:53,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:57:55,365.365 INFO    ] ================================================
[2026-10-25 18:57:55,380.380 INFO    ] Launching Daemon at Sun Oct 25 18:57:55 IST 2026
[2026-10-25 18:57:55,390.390 INFO    ] ================================================
[2026-10-25 18:57:55,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:57:55
[2026-10-25 18:57:56,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:57:56,792.792 INFO    ] Initializing speech engine...
[2026-10-25 18:57:56,811.811 INFO    ] 2026-10-25 18:57:56
[2026-10-25 18:57:57,056.056 INFO    ] 2026-10-25 18:57:57
[2026-10-25 18:57:57,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:57:57,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:57:57,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:57:57,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:57:57,557.557 INFO    ] time= 25/10/2026 18:57:57
[2026-10-25 18:57:57,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:57:57,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:57:57,739.739 INFO    ] No existing commands found in stream
[2026-10-25 18:58:02,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:58:02,769.769 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 18:58:06,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:58:06,681.681 INFO    ] Checking for system updates...
[2026-10-25 18:58:06,724.724 INFO    ] 200
[2026-10-25 18:58:06,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:06,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:06,802.802 INFO    ] No update needed
[2026-10-25 18:58:06,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 18:58:06,844.844 INFO    ] 200
[2026-10-25 18:58:06,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:06,888.888 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:58:06,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:06,939.939 INFO    ] No camera update needed
[2026-10-25 18:58:06,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:58:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:58:06,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:58:06,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:58:09,995.995 INFO    ] ================================================
[2026-10-25 18:58:09,010.010 INFO    ] Launching Daemon at Sun Oct 25 18:58:09 IST 2026
[2026-10-25 18:58:09,020.020 INFO    ] ================================================
[2026-10-25 18:58:09,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:58:09
[2026-10-25 18:58:10,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:58:10,426.426 INFO    ] Initializing speech engine...
[2026-10-25 18:58:10,444.444 INFO    ] 2026-10-25 18:58:10
[2026-10-25 18:58:10,724.724 INFO    ] 2026-10-25 18:58:10
[2026-10-25 18:58:10,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:58:10,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:58:10,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:58:11,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:58:11,093.093 INFO    ] time= 25/10/2026 18:58:11
[2026-10-25 18:58:11,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:58:11,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:58:11,215.215 INFO    ] No existing commands found in stream
[2026-10-25 18:58:16,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:58:16,228.228 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 18:58:17,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 18:58:17,788.788 INFO    ] Checking for system updates...
[2026-10-25 18:58:17,824.824 INFO    ] 200
[2026-10-25 18:58:17,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:17,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:17,883.883 INFO    ] No update needed
[2026-10-25 18:58:17,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 18:58:17,919.919 INFO    ] 200
[2026-10-25 18:58:17,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:17,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:58:18,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:18,043.043 INFO    ] No camera update needed
[2026-10-25 18:58:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:58:18,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:58:18,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:58:18,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:58:20,101.101 INFO    ] ================================================
[2026-10-25 18:58:20,116.116 INFO    ] Launching Daemon at Sun Oct 25 18:58:20 IST 2026
[2026-10-25 18:58:20,126.126 INFO    ] ================================================
[2026-10-25 18:58:20,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:58:20
[2026-10-25 18:58:21,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:58:21,569.569 INFO    ] Initializing speech engine...
[2026-10-25 18:58:21,579.579 INFO    ] 2026-10-25 18:58:21
[2026-10-25 18:58:21,826.826 INFO    ] 2026-10-25 18:58:21
[2026-10-25 18:58:21,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:58:22,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:58:22,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:58:22,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:58:22,280.280 INFO    ] time= 25/10/2026 18:58:22
[2026-10-25 18:58:22,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:58:22,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:58:22,448.448 INFO    ] No existing commands found in stream
[2026-10-25 18:58:27,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:58:27,463.463 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 18:58:31,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:58:31,530.530 INFO    ] Checking for system updates...
[2026-10-25 18:58:31,571.571 INFO    ] 200
[2026-10-25 18:58:31,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:31,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:31,636.636 INFO    ] No update needed
[2026-10-25 18:58:31,639.639 INFO    ] Checking for camera pi updates...
[2026-10-25 18:58:31,678.678 INFO    ] 200
[2026-10-25 18:58:31,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:31,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:58:31,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:31,775.775 INFO    ] No camera update needed
[2026-10-25 18:58:31,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:58:31,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:58:31,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:58:31,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:58:33,833.833 INFO    ] ================================================
[2026-10-25 18:58:33,848.848 INFO    ] Launching Daemon at Sun Oct 25 18:58:33 IST 2026
[2026-10-25 18:58:33,858.858 INFO    ] ================================================
[2026-10-25 18:58:34,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:58:34
[2026-10-25 18:58:35,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:58:35,310.310 INFO    ] Initializing speech engine...
[2026-10-25 18:58:35,327.327 INFO    ] 2026-10-25 18:58:35
[2026-10-25 18:58:35,593.593 INFO    ] 2026-10-25 18:58:35
[2026-10-25 18:58:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:58:37,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:58:37,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:58:37,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:58:37,726.726 INFO    ] time= 25/10/2026 18:58:37
[2026-10-25 18:58:37,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:58:37,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:58:37,790.790 INFO    ] No existing commands found in stream
[2026-10-25 18:58:42,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:58:42,803.803 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 18:58:46,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 18:58:46,994.994 INFO    ] Checking for system updates...
[2026-10-25 18:58:47,030.030 INFO    ] 200
[2026-10-25 18:58:47,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:47,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:47,088.088 INFO    ] No update needed
[2026-10-25 18:58:47,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 18:58:47,123.123 INFO    ] 200
[2026-10-25 18:58:47,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:58:47,170.170 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:58:47,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:58:47,226.226 INFO    ] No camera update needed
[2026-10-25 18:58:47,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:58:47,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:58:47,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:58:47,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:58:49,281.281 INFO    ] ================================================
[2026-10-25 18:58:49,296.296 INFO    ] Launching Daemon at Sun Oct 25 18:58:49 IST 2026
[2026-10-25 18:58:49,306.306 INFO    ] ================================================
[2026-10-25 18:58:49,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:58:49
[2026-10-25 18:58:50,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:58:50,749.749 INFO    ] Initializing speech engine...
[2026-10-25 18:58:50,758.758 INFO    ] 2026-10-25 18:58:50
[2026-10-25 18:58:51,007.007 INFO    ] 2026-10-25 18:58:51
[2026-10-25 18:58:51,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:58:51,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:58:51,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:58:51,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:58:51,480.480 INFO    ] time= 25/10/2026 18:58:51
[2026-10-25 18:58:51,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:58:51,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:58:51,623.623 INFO    ] No existing commands found in stream
[2026-10-25 18:58:56,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:58:56,637.637 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 18:59:00,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:59:00,270.270 INFO    ] Checking for system updates...
[2026-10-25 18:59:00,308.308 INFO    ] 200
[2026-10-25 18:59:00,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:00,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:59:00,375.375 INFO    ] No update needed
[2026-10-25 18:59:00,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 18:59:00,413.413 INFO    ] 200
[2026-10-25 18:59:00,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:00,459.459 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:59:00,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:59:00,523.523 INFO    ] No camera update needed
[2026-10-25 18:59:00,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:59:00,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:59:00,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:59:00,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:59:02,584.584 INFO    ] ================================================
[2026-10-25 18:59:02,601.601 INFO    ] Launching Daemon at Sun Oct 25 18:59:02 IST 2026
[2026-10-25 18:59:02,616.616 INFO    ] ================================================
[2026-10-25 18:59:03,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:59:03
[2026-10-25 18:59:03,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:59:04,254.254 INFO    ] Initializing speech engine...
[2026-10-25 18:59:04,264.264 INFO    ] 2026-10-25 18:59:04
[2026-10-25 18:59:04,523.523 INFO    ] 2026-10-25 18:59:04
[2026-10-25 18:59:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:59:08,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:59:08,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:59:09,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:59:09,413.413 INFO    ] time= 25/10/2026 18:59:09
[2026-10-25 18:59:09,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:59:09,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:59:09,466.466 INFO    ] No existing commands found in stream
[2026-10-25 18:59:14,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:59:14,478.478 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 18:59:15,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:59:15,603.603 INFO    ] Checking for system updates...
[2026-10-25 18:59:15,641.641 INFO    ] 200
[2026-10-25 18:59:15,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:15,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:15,706.706 INFO    ] No update needed
[2026-10-25 18:59:15,708.708 INFO    ] Checking for camera pi updates...
[2026-10-25 18:59:15,746.746 INFO    ] 200
[2026-10-25 18:59:15,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:15,791.791 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:59:15,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:15,952.952 INFO    ] No camera update needed
[2026-10-25 18:59:15,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:59:15,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:59:15,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:59:15,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:59:18,011.011 INFO    ] ================================================
[2026-10-25 18:59:18,026.026 INFO    ] Launching Daemon at Sun Oct 25 18:59:18 IST 2026
[2026-10-25 18:59:18,036.036 INFO    ] ================================================
[2026-10-25 18:59:18,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:59:18
[2026-10-25 18:59:19,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:59:19,432.432 INFO    ] Initializing speech engine...
[2026-10-25 18:59:19,440.440 INFO    ] 2026-10-25 18:59:19
[2026-10-25 18:59:19,714.714 INFO    ] 2026-10-25 18:59:19
[2026-10-25 18:59:19,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:59:19,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:59:19,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:59:20,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:59:20,089.089 INFO    ] time= 25/10/2026 18:59:20
[2026-10-25 18:59:20,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:59:20,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:59:20,258.258 INFO    ] No existing commands found in stream
[2026-10-25 18:59:25,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:59:25,286.286 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 18:59:27,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 18:59:27,316.316 INFO    ] Checking for system updates...
[2026-10-25 18:59:27,352.352 INFO    ] 200
[2026-10-25 18:59:27,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:27,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:27,409.409 INFO    ] No update needed
[2026-10-25 18:59:27,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 18:59:27,448.448 INFO    ] 200
[2026-10-25 18:59:27,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:27,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:59:27,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:27,544.544 INFO    ] No camera update needed
[2026-10-25 18:59:27,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:59:27,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:59:27,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:59:27,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:59:29,599.599 INFO    ] ================================================
[2026-10-25 18:59:29,613.613 INFO    ] Launching Daemon at Sun Oct 25 18:59:29 IST 2026
[2026-10-25 18:59:29,624.624 INFO    ] ================================================
[2026-10-25 18:59:30,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:59:30
[2026-10-25 18:59:30,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:59:31,051.051 INFO    ] Initializing speech engine...
[2026-10-25 18:59:31,056.056 INFO    ] 2026-10-25 18:59:31
[2026-10-25 18:59:31,301.301 INFO    ] 2026-10-25 18:59:31
[2026-10-25 18:59:31,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:59:31,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:59:31,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:59:32,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:59:32,099.099 INFO    ] time= 25/10/2026 18:59:32
[2026-10-25 18:59:32,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:59:32,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:59:32,288.288 INFO    ] No existing commands found in stream
[2026-10-25 18:59:37,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:59:37,323.323 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 18:59:40,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 18:59:40,905.905 INFO    ] Checking for system updates...
[2026-10-25 18:59:40,943.943 INFO    ] 200
[2026-10-25 18:59:40,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:41,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:41,002.002 INFO    ] No update needed
[2026-10-25 18:59:41,005.005 INFO    ] Checking for camera pi updates...
[2026-10-25 18:59:41,039.039 INFO    ] 200
[2026-10-25 18:59:41,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:41,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:59:41,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 18:59:41,136.136 INFO    ] No camera update needed
[2026-10-25 18:59:41,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:59:41,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:59:41,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:59:41,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:59:43,190.190 INFO    ] ================================================
[2026-10-25 18:59:43,205.205 INFO    ] Launching Daemon at Sun Oct 25 18:59:43 IST 2026
[2026-10-25 18:59:43,215.215 INFO    ] ================================================
[2026-10-25 18:59:43,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:59:43
[2026-10-25 18:59:44,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:59:44,629.629 INFO    ] Initializing speech engine...
[2026-10-25 18:59:44,638.638 INFO    ] 2026-10-25 18:59:44
[2026-10-25 18:59:44,884.884 INFO    ] 2026-10-25 18:59:44
[2026-10-25 18:59:44,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:59:45,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:59:45,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:59:45,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:59:45,372.372 INFO    ] time= 25/10/2026 18:59:45
[2026-10-25 18:59:45,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:59:45,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:59:45,558.558 INFO    ] No existing commands found in stream
[2026-10-25 18:59:50,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 18:59:50,582.582 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 18:59:52,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 18:59:52,174.174 INFO    ] Checking for system updates...
[2026-10-25 18:59:52,213.213 INFO    ] 200
[2026-10-25 18:59:52,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:52,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:59:52,272.272 INFO    ] No update needed
[2026-10-25 18:59:52,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 18:59:52,309.309 INFO    ] 200
[2026-10-25 18:59:52,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 18:59:52,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 18:59:52,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 18:59:52,413.413 INFO    ] No camera update needed
[2026-10-25 18:59:52,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 18:59:52,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 18:59:52,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 18:59:52,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 18:59:54,469.469 INFO    ] ================================================
[2026-10-25 18:59:54,484.484 INFO    ] Launching Daemon at Sun Oct 25 18:59:54 IST 2026
[2026-10-25 18:59:54,495.495 INFO    ] ================================================
[2026-10-25 18:59:55,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 18:59:55
[2026-10-25 18:59:55,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 18:59:55,969.969 INFO    ] Initializing speech engine...
[2026-10-25 18:59:55,979.979 INFO    ] 2026-10-25 18:59:55
[2026-10-25 18:59:56,226.226 INFO    ] 2026-10-25 18:59:56
[2026-10-25 18:59:56,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 18:59:56,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 18:59:56,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 18:59:56,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 18:59:56,699.699 INFO    ] time= 25/10/2026 18:59:56
[2026-10-25 18:59:56,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 18:59:56,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-25 18:59:56,843.843 INFO    ] No existing commands found in stream
[2026-10-25 19:00:01,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:00:01,858.858 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 19:00:08,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:00:08,144.144 INFO    ] Checking for system updates...
[2026-10-25 19:00:08,182.182 INFO    ] 200
[2026-10-25 19:00:08,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:08,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:08,241.241 INFO    ] No update needed
[2026-10-25 19:00:08,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 19:00:08,283.283 INFO    ] 200
[2026-10-25 19:00:08,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:08,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:00:08,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:08,382.382 INFO    ] No camera update needed
[2026-10-25 19:00:08,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:00:08,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:00:08,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:00:08,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:00:10,443.443 INFO    ] ================================================
[2026-10-25 19:00:10,458.458 INFO    ] Launching Daemon at Sun Oct 25 19:00:10 IST 2026
[2026-10-25 19:00:10,469.469 INFO    ] ================================================
[2026-10-25 19:00:11,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:00:11
[2026-10-25 19:00:11,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:00:11,945.945 INFO    ] Initializing speech engine...
[2026-10-25 19:00:11,958.958 INFO    ] 2026-10-25 19:00:11
[2026-10-25 19:00:12,241.241 INFO    ] 2026-10-25 19:00:12
[2026-10-25 19:00:12,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:00:12,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:00:12,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:00:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:00:12,789.789 INFO    ] time= 25/10/2026 19:00:12
[2026-10-25 19:00:12,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:00:12,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:00:12,957.957 INFO    ] No existing commands found in stream
[2026-10-25 19:00:17,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:00:17,985.985 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 19:00:20,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:00:20,673.673 INFO    ] Checking for system updates...
[2026-10-25 19:00:20,714.714 INFO    ] 200
[2026-10-25 19:00:20,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:20,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:00:20,777.777 INFO    ] No update needed
[2026-10-25 19:00:20,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 19:00:20,814.814 INFO    ] 200
[2026-10-25 19:00:20,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:20,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:00:20,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:00:20,922.922 INFO    ] No camera update needed
[2026-10-25 19:00:20,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:00:20,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:00:20,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:00:20,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:00:22,976.976 INFO    ] ================================================
[2026-10-25 19:00:22,992.992 INFO    ] Launching Daemon at Sun Oct 25 19:00:22 IST 2026
[2026-10-25 19:00:23,003.003 INFO    ] ================================================
[2026-10-25 19:00:23,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:00:23
[2026-10-25 19:00:24,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:00:24,427.427 INFO    ] Initializing speech engine...
[2026-10-25 19:00:24,433.433 INFO    ] 2026-10-25 19:00:24
[2026-10-25 19:00:24,678.678 INFO    ] 2026-10-25 19:00:24
[2026-10-25 19:00:24,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:00:24,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:00:24,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:00:25,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:00:25,044.044 INFO    ] time= 25/10/2026 19:00:25
[2026-10-25 19:00:25,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:00:25,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:00:25,213.213 INFO    ] No existing commands found in stream
[2026-10-25 19:00:30,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:00:30,245.245 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 19:00:32,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:00:32,501.501 INFO    ] Checking for system updates...
[2026-10-25 19:00:32,546.546 INFO    ] 200
[2026-10-25 19:00:32,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:32,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:32,608.608 INFO    ] No update needed
[2026-10-25 19:00:32,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 19:00:32,648.648 INFO    ] 200
[2026-10-25 19:00:32,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:32,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:00:32,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:32,747.747 INFO    ] No camera update needed
[2026-10-25 19:00:32,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:00:32,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:00:32,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:00:32,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:00:34,806.806 INFO    ] ================================================
[2026-10-25 19:00:34,822.822 INFO    ] Launching Daemon at Sun Oct 25 19:00:34 IST 2026
[2026-10-25 19:00:34,833.833 INFO    ] ================================================
[2026-10-25 19:00:35,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:00:35
[2026-10-25 19:00:36,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:00:36,490.490 INFO    ] Initializing speech engine...
[2026-10-25 19:00:36,502.502 INFO    ] 2026-10-25 19:00:36
[2026-10-25 19:00:36,781.781 INFO    ] 2026-10-25 19:00:36
[2026-10-25 19:00:36,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:00:37,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:00:37,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:00:37,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:00:37,370.370 INFO    ] time= 25/10/2026 19:00:37
[2026-10-25 19:00:37,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:00:37,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:00:37,577.577 INFO    ] No existing commands found in stream
[2026-10-25 19:00:42,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:00:42,596.596 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 19:00:43,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:00:43,566.566 INFO    ] Checking for system updates...
[2026-10-25 19:00:43,602.602 INFO    ] 200
[2026-10-25 19:00:43,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:43,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:43,661.661 INFO    ] No update needed
[2026-10-25 19:00:43,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 19:00:43,698.698 INFO    ] 200
[2026-10-25 19:00:43,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:43,759.759 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:00:43,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:43,818.818 INFO    ] No camera update needed
[2026-10-25 19:00:43,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:00:43,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:00:43,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:00:43,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:00:45,873.873 INFO    ] ================================================
[2026-10-25 19:00:45,888.888 INFO    ] Launching Daemon at Sun Oct 25 19:00:45 IST 2026
[2026-10-25 19:00:45,899.899 INFO    ] ================================================
[2026-10-25 19:00:46,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:00:46
[2026-10-25 19:00:47,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:00:47,547.547 INFO    ] Initializing speech engine...
[2026-10-25 19:00:47,561.561 INFO    ] 2026-10-25 19:00:47
[2026-10-25 19:00:47,847.847 INFO    ] 2026-10-25 19:00:47
[2026-10-25 19:00:47,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:00:48,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:00:48,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:00:48,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:00:48,364.364 INFO    ] time= 25/10/2026 19:00:48
[2026-10-25 19:00:48,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:00:48,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:00:48,509.509 INFO    ] No existing commands found in stream
[2026-10-25 19:00:53,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:00:53,538.538 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-25 19:00:55,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:00:55,405.405 INFO    ] Checking for system updates...
[2026-10-25 19:00:55,446.446 INFO    ] 200
[2026-10-25 19:00:55,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:55,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:55,503.503 INFO    ] No update needed
[2026-10-25 19:00:55,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 19:00:55,539.539 INFO    ] 200
[2026-10-25 19:00:55,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:00:55,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:00:55,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:00:55,638.638 INFO    ] No camera update needed
[2026-10-25 19:00:55,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:00:55,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:00:55,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:00:55,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:00:57,693.693 INFO    ] ================================================
[2026-10-25 19:00:57,709.709 INFO    ] Launching Daemon at Sun Oct 25 19:00:57 IST 2026
[2026-10-25 19:00:57,719.719 INFO    ] ================================================
[2026-10-25 19:00:58,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:00:58
[2026-10-25 19:00:59,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:00:59,351.351 INFO    ] Initializing speech engine...
[2026-10-25 19:00:59,359.359 INFO    ] 2026-10-25 19:00:59
[2026-10-25 19:00:59,648.648 INFO    ] 2026-10-25 19:00:59
[2026-10-25 19:00:59,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:00:59,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:00:59,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:01:00,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:01:00,122.122 INFO    ] time= 25/10/2026 19:01:00
[2026-10-25 19:01:00,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:01:00,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:01:00,250.250 INFO    ] No existing commands found in stream
[2026-10-25 19:01:05,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:01:05,266.266 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 19:01:06,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:01:06,023.023 INFO    ] Checking for system updates...
[2026-10-25 19:01:06,061.061 INFO    ] 200
[2026-10-25 19:01:06,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:06,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:01:06,119.119 INFO    ] No update needed
[2026-10-25 19:01:06,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 19:01:06,159.159 INFO    ] 200
[2026-10-25 19:01:06,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:06,202.202 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:01:06,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:01:06,259.259 INFO    ] No camera update needed
[2026-10-25 19:01:06,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:01:06,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:01:06,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:01:06,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:01:08,313.313 INFO    ] ================================================
[2026-10-25 19:01:08,328.328 INFO    ] Launching Daemon at Sun Oct 25 19:01:08 IST 2026
[2026-10-25 19:01:08,338.338 INFO    ] ================================================
[2026-10-25 19:01:08,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:01:08
[2026-10-25 19:01:09,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:01:09,746.746 INFO    ] Initializing speech engine...
[2026-10-25 19:01:09,762.762 INFO    ] 2026-10-25 19:01:09
[2026-10-25 19:01:10,042.042 INFO    ] 2026-10-25 19:01:10
[2026-10-25 19:01:10,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:01:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:01:14,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:01:14,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:01:14,851.851 INFO    ] time= 25/10/2026 19:01:14
[2026-10-25 19:01:14,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:01:14,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:01:14,905.905 INFO    ] No existing commands found in stream
[2026-10-25 19:01:19,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:01:19,917.917 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 19:01:23,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:01:23,791.791 INFO    ] Checking for system updates...
[2026-10-25 19:01:23,831.831 INFO    ] 200
[2026-10-25 19:01:23,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:23,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:23,925.925 INFO    ] No update needed
[2026-10-25 19:01:23,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 19:01:23,972.972 INFO    ] 200
[2026-10-25 19:01:23,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:24,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:01:24,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:24,206.206 INFO    ] No camera update needed
[2026-10-25 19:01:24,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:01:24,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:01:24,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:01:24,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:01:26,260.260 INFO    ] ================================================
[2026-10-25 19:01:26,275.275 INFO    ] Launching Daemon at Sun Oct 25 19:01:26 IST 2026
[2026-10-25 19:01:26,286.286 INFO    ] ================================================
[2026-10-25 19:01:26,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:01:26
[2026-10-25 19:01:27,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:01:27,688.688 INFO    ] Initializing speech engine...
[2026-10-25 19:01:27,697.697 INFO    ] 2026-10-25 19:01:27
[2026-10-25 19:01:27,988.988 INFO    ] 2026-10-25 19:01:27
[2026-10-25 19:01:28,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:01:28,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:01:28,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:01:28,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:01:28,375.375 INFO    ] time= 25/10/2026 19:01:28
[2026-10-25 19:01:28,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:01:28,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:01:28,488.488 INFO    ] No existing commands found in stream
[2026-10-25 19:01:33,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:01:33,509.509 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 19:01:34,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:01:34,630.630 INFO    ] Checking for system updates...
[2026-10-25 19:01:34,667.667 INFO    ] 200
[2026-10-25 19:01:34,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:34,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:01:34,733.733 INFO    ] No update needed
[2026-10-25 19:01:34,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 19:01:34,768.768 INFO    ] 200
[2026-10-25 19:01:34,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:34,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:01:34,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:01:34,863.863 INFO    ] No camera update needed
[2026-10-25 19:01:34,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:01:34,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:01:34,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:01:34,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:01:36,918.918 INFO    ] ================================================
[2026-10-25 19:01:36,933.933 INFO    ] Launching Daemon at Sun Oct 25 19:01:36 IST 2026
[2026-10-25 19:01:36,944.944 INFO    ] ================================================
[2026-10-25 19:01:37,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:01:37
[2026-10-25 19:01:38,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:01:38,346.346 INFO    ] Initializing speech engine...
[2026-10-25 19:01:38,354.354 INFO    ] 2026-10-25 19:01:38
[2026-10-25 19:01:38,643.643 INFO    ] 2026-10-25 19:01:38
[2026-10-25 19:01:38,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:01:38,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:01:38,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:01:38,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:01:39,015.015 INFO    ] time= 25/10/2026 19:01:38
[2026-10-25 19:01:39,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:01:39,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:01:39,079.079 INFO    ] No existing commands found in stream
[2026-10-25 19:01:44,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:01:44,128.128 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 19:01:47,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:01:47,354.354 INFO    ] Checking for system updates...
[2026-10-25 19:01:47,391.391 INFO    ] 200
[2026-10-25 19:01:47,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:47,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:47,448.448 INFO    ] No update needed
[2026-10-25 19:01:47,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 19:01:47,485.485 INFO    ] 200
[2026-10-25 19:01:47,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:47,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:01:47,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:47,594.594 INFO    ] No camera update needed
[2026-10-25 19:01:47,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:01:47,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:01:47,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:01:47,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:01:49,649.649 INFO    ] ================================================
[2026-10-25 19:01:49,665.665 INFO    ] Launching Daemon at Sun Oct 25 19:01:49 IST 2026
[2026-10-25 19:01:49,676.676 INFO    ] ================================================
[2026-10-25 19:01:50,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:01:50
[2026-10-25 19:01:50,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:01:51,284.284 INFO    ] Initializing speech engine...
[2026-10-25 19:01:51,292.292 INFO    ] 2026-10-25 19:01:51
[2026-10-25 19:01:51,577.577 INFO    ] 2026-10-25 19:01:51
[2026-10-25 19:01:51,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:01:51,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:01:51,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:01:51,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:01:51,929.929 INFO    ] time= 25/10/2026 19:01:51
[2026-10-25 19:01:51,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:01:51,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:01:52,105.105 INFO    ] No existing commands found in stream
[2026-10-25 19:01:57,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:01:57,133.133 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 19:01:58,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:01:58,729.729 INFO    ] Checking for system updates...
[2026-10-25 19:01:58,769.769 INFO    ] 200
[2026-10-25 19:01:58,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:58,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:58,833.833 INFO    ] No update needed
[2026-10-25 19:01:58,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 19:01:58,872.872 INFO    ] 200
[2026-10-25 19:01:58,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:01:58,915.915 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:01:58,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:01:58,965.965 INFO    ] No camera update needed
[2026-10-25 19:01:58,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:01:58,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:01:58,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:01:58,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:02:01,020.020 INFO    ] ================================================
[2026-10-25 19:02:01,035.035 INFO    ] Launching Daemon at Sun Oct 25 19:02:01 IST 2026
[2026-10-25 19:02:01,046.046 INFO    ] ================================================
[2026-10-25 19:02:01,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:02:01
[2026-10-25 19:02:02,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:02:02,746.746 INFO    ] Initializing speech engine...
[2026-10-25 19:02:02,773.773 INFO    ] 2026-10-25 19:02:02
[2026-10-25 19:02:03,084.084 INFO    ] 2026-10-25 19:02:03
[2026-10-25 19:02:03,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:02:03,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:02:03,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:02:03,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:02:03,503.503 INFO    ] time= 25/10/2026 19:02:03
[2026-10-25 19:02:03,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:02:03,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:02:03,593.593 INFO    ] No existing commands found in stream
[2026-10-25 19:02:08,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:02:08,607.607 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 19:02:11,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:02:11,750.750 INFO    ] Checking for system updates...
[2026-10-25 19:02:11,790.790 INFO    ] 200
[2026-10-25 19:02:11,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:11,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:02:11,864.864 INFO    ] No update needed
[2026-10-25 19:02:11,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 19:02:11,901.901 INFO    ] 200
[2026-10-25 19:02:11,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:11,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:02:12,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:02:12,026.026 INFO    ] No camera update needed
[2026-10-25 19:02:12,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:02:12,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:02:12,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:02:12,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:02:14,083.083 INFO    ] ================================================
[2026-10-25 19:02:14,099.099 INFO    ] Launching Daemon at Sun Oct 25 19:02:14 IST 2026
[2026-10-25 19:02:14,110.110 INFO    ] ================================================
[2026-10-25 19:02:14,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:02:14
[2026-10-25 19:02:15,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:02:15,727.727 INFO    ] Initializing speech engine...
[2026-10-25 19:02:15,745.745 INFO    ] 2026-10-25 19:02:15
[2026-10-25 19:02:15,992.992 INFO    ] 2026-10-25 19:02:15
[2026-10-25 19:02:16,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:02:17,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:02:17,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:02:17,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:02:17,904.904 INFO    ] time= 25/10/2026 19:02:17
[2026-10-25 19:02:17,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:02:17,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:02:17,967.967 INFO    ] No existing commands found in stream
[2026-10-25 19:02:22,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:02:22,982.982 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 19:02:23,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:02:23,993.993 INFO    ] Checking for system updates...
[2026-10-25 19:02:24,030.030 INFO    ] 200
[2026-10-25 19:02:24,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:24,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:02:24,087.087 INFO    ] No update needed
[2026-10-25 19:02:24,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 19:02:24,129.129 INFO    ] 200
[2026-10-25 19:02:24,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:24,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:02:24,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:02:24,234.234 INFO    ] No camera update needed
[2026-10-25 19:02:24,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:02:24,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:02:24,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:02:24,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:02:26,294.294 INFO    ] ================================================
[2026-10-25 19:02:26,310.310 INFO    ] Launching Daemon at Sun Oct 25 19:02:26 IST 2026
[2026-10-25 19:02:26,321.321 INFO    ] ================================================
[2026-10-25 19:02:26,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:02:26
[2026-10-25 19:02:27,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:02:27,814.814 INFO    ] Initializing speech engine...
[2026-10-25 19:02:27,821.821 INFO    ] 2026-10-25 19:02:27
[2026-10-25 19:02:28,081.081 INFO    ] 2026-10-25 19:02:28
[2026-10-25 19:02:28,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:02:28,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:02:28,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:02:28,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:02:28,672.672 INFO    ] time= 25/10/2026 19:02:28
[2026-10-25 19:02:28,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:02:28,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:02:28,840.840 INFO    ] No existing commands found in stream
[2026-10-25 19:02:33,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:02:33,873.873 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 19:02:35,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:02:35,065.065 INFO    ] Checking for system updates...
[2026-10-25 19:02:35,105.105 INFO    ] 200
[2026-10-25 19:02:35,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:35,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:02:35,180.180 INFO    ] No update needed
[2026-10-25 19:02:35,183.183 INFO    ] Checking for camera pi updates...
[2026-10-25 19:02:35,223.223 INFO    ] 200
[2026-10-25 19:02:35,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:35,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:02:35,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:02:35,302.302 INFO    ] No camera update needed
[2026-10-25 19:02:35,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:02:35,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:02:35,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:02:35,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:02:37,362.362 INFO    ] ================================================
[2026-10-25 19:02:37,377.377 INFO    ] Launching Daemon at Sun Oct 25 19:02:37 IST 2026
[2026-10-25 19:02:37,389.389 INFO    ] ================================================
[2026-10-25 19:02:37,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:02:37
[2026-10-25 19:02:38,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:02:38,856.856 INFO    ] Initializing speech engine...
[2026-10-25 19:02:38,866.866 INFO    ] 2026-10-25 19:02:38
[2026-10-25 19:02:39,140.140 INFO    ] 2026-10-25 19:02:39
[2026-10-25 19:02:39,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:02:39,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:02:39,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:02:39,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:02:39,522.522 INFO    ] time= 25/10/2026 19:02:39
[2026-10-25 19:02:39,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:02:39,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:02:39,587.587 INFO    ] No existing commands found in stream
[2026-10-25 19:02:44,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:02:44,599.599 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 19:02:49,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:02:49,270.270 INFO    ] Checking for system updates...
[2026-10-25 19:02:49,306.306 INFO    ] 200
[2026-10-25 19:02:49,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:49,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:02:49,389.389 INFO    ] No update needed
[2026-10-25 19:02:49,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 19:02:49,429.429 INFO    ] 200
[2026-10-25 19:02:49,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:02:49,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:02:49,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:02:49,511.511 INFO    ] No camera update needed
[2026-10-25 19:02:49,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:02:49,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:02:49,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:02:49,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:02:51,565.565 INFO    ] ================================================
[2026-10-25 19:02:51,582.582 INFO    ] Launching Daemon at Sun Oct 25 19:02:51 IST 2026
[2026-10-25 19:02:51,592.592 INFO    ] ================================================
[2026-10-25 19:02:52,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:02:52
[2026-10-25 19:02:52,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:02:52,987.987 INFO    ] Initializing speech engine...
[2026-10-25 19:02:52,995.995 INFO    ] 2026-10-25 19:02:52
[2026-10-25 19:02:53,268.268 INFO    ] 2026-10-25 19:02:53
[2026-10-25 19:02:53,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:02:53,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:02:53,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:02:53,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:02:53,734.734 INFO    ] time= 25/10/2026 19:02:53
[2026-10-25 19:02:53,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:02:53,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:02:53,896.896 INFO    ] No existing commands found in stream
[2026-10-25 19:02:58,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:02:58,910.910 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 19:03:03,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:03:03,236.236 INFO    ] Checking for system updates...
[2026-10-25 19:03:03,290.290 INFO    ] 200
[2026-10-25 19:03:03,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:03,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:03,373.373 INFO    ] No update needed
[2026-10-25 19:03:03,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 19:03:03,424.424 INFO    ] 200
[2026-10-25 19:03:03,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:03,486.486 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:03:03,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:03,538.538 INFO    ] No camera update needed
[2026-10-25 19:03:03,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:03:03,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:03:03,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:03:03,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:03:05,601.601 INFO    ] ================================================
[2026-10-25 19:03:05,617.617 INFO    ] Launching Daemon at Sun Oct 25 19:03:05 IST 2026
[2026-10-25 19:03:05,628.628 INFO    ] ================================================
[2026-10-25 19:03:06,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:03:06
[2026-10-25 19:03:06,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:03:07,284.284 INFO    ] Initializing speech engine...
[2026-10-25 19:03:07,290.290 INFO    ] 2026-10-25 19:03:07
[2026-10-25 19:03:07,562.562 INFO    ] 2026-10-25 19:03:07
[2026-10-25 19:03:07,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:03:07,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:03:07,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:03:08,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:03:08,129.129 INFO    ] time= 25/10/2026 19:03:08
[2026-10-25 19:03:08,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:03:08,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:03:08,269.269 INFO    ] No existing commands found in stream
[2026-10-25 19:03:13,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:03:13,298.298 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 19:03:15,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:03:15,372.372 INFO    ] Checking for system updates...
[2026-10-25 19:03:15,414.414 INFO    ] 200
[2026-10-25 19:03:15,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:15,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:15,473.473 INFO    ] No update needed
[2026-10-25 19:03:15,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 19:03:15,512.512 INFO    ] 200
[2026-10-25 19:03:15,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:15,562.562 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:03:15,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:15,616.616 INFO    ] No camera update needed
[2026-10-25 19:03:15,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:03:15,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:03:15,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:03:15,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:03:17,672.672 INFO    ] ================================================
[2026-10-25 19:03:17,687.687 INFO    ] Launching Daemon at Sun Oct 25 19:03:17 IST 2026
[2026-10-25 19:03:17,699.699 INFO    ] ================================================
[2026-10-25 19:03:18,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:03:18
[2026-10-25 19:03:19,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:03:19,356.356 INFO    ] Initializing speech engine...
[2026-10-25 19:03:19,367.367 INFO    ] 2026-10-25 19:03:19
[2026-10-25 19:03:19,657.657 INFO    ] 2026-10-25 19:03:19
[2026-10-25 19:03:19,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:03:20,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:03:20,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:03:20,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:03:20,341.341 INFO    ] time= 25/10/2026 19:03:20
[2026-10-25 19:03:20,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:03:20,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:03:20,544.544 INFO    ] No existing commands found in stream
[2026-10-25 19:03:25,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:03:25,578.578 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 19:03:26,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:03:26,843.843 INFO    ] Checking for system updates...
[2026-10-25 19:03:26,883.883 INFO    ] 200
[2026-10-25 19:03:26,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:26,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:03:26,949.949 INFO    ] No update needed
[2026-10-25 19:03:26,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 19:03:26,989.989 INFO    ] 200
[2026-10-25 19:03:26,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:27,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:03:27,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:03:27,201.201 INFO    ] No camera update needed
[2026-10-25 19:03:27,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:03:27,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:03:27,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:03:27,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:03:29,257.257 INFO    ] ================================================
[2026-10-25 19:03:29,272.272 INFO    ] Launching Daemon at Sun Oct 25 19:03:29 IST 2026
[2026-10-25 19:03:29,283.283 INFO    ] ================================================
[2026-10-25 19:03:29,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:03:29
[2026-10-25 19:03:30,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:03:30,745.745 INFO    ] Initializing speech engine...
[2026-10-25 19:03:30,754.754 INFO    ] 2026-10-25 19:03:30
[2026-10-25 19:03:31,013.013 INFO    ] 2026-10-25 19:03:31
[2026-10-25 19:03:31,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:03:31,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:03:31,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:03:31,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:03:31,472.472 INFO    ] time= 25/10/2026 19:03:31
[2026-10-25 19:03:31,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:03:31,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:03:31,620.620 INFO    ] No existing commands found in stream
[2026-10-25 19:03:36,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:03:36,635.635 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 19:03:39,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:03:39,278.278 INFO    ] Checking for system updates...
[2026-10-25 19:03:39,316.316 INFO    ] 200
[2026-10-25 19:03:39,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:39,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:39,377.377 INFO    ] No update needed
[2026-10-25 19:03:39,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 19:03:39,418.418 INFO    ] 200
[2026-10-25 19:03:39,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:39,468.468 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:03:39,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:39,541.541 INFO    ] No camera update needed
[2026-10-25 19:03:39,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:03:39,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:03:39,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:03:39,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:03:41,603.603 INFO    ] ================================================
[2026-10-25 19:03:41,619.619 INFO    ] Launching Daemon at Sun Oct 25 19:03:41 IST 2026
[2026-10-25 19:03:41,630.630 INFO    ] ================================================
[2026-10-25 19:03:42,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:03:42
[2026-10-25 19:03:42,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:03:43,118.118 INFO    ] Initializing speech engine...
[2026-10-25 19:03:43,127.127 INFO    ] 2026-10-25 19:03:43
[2026-10-25 19:03:43,372.372 INFO    ] 2026-10-25 19:03:43
[2026-10-25 19:03:43,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:03:43,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:03:43,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:03:43,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:03:43,740.740 INFO    ] time= 25/10/2026 19:03:43
[2026-10-25 19:03:43,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:03:43,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:03:43,908.908 INFO    ] No existing commands found in stream
[2026-10-25 19:03:48,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:03:48,941.941 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 19:03:52,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:03:52,036.036 INFO    ] Checking for system updates...
[2026-10-25 19:03:52,075.075 INFO    ] 200
[2026-10-25 19:03:52,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:52,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:52,135.135 INFO    ] No update needed
[2026-10-25 19:03:52,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 19:03:52,171.171 INFO    ] 200
[2026-10-25 19:03:52,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:03:52,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:03:52,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:03:52,260.260 INFO    ] No camera update needed
[2026-10-25 19:03:52,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:03:52,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:03:52,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:03:52,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:03:54,318.318 INFO    ] ================================================
[2026-10-25 19:03:54,334.334 INFO    ] Launching Daemon at Sun Oct 25 19:03:54 IST 2026
[2026-10-25 19:03:54,345.345 INFO    ] ================================================
[2026-10-25 19:03:54,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:03:54
[2026-10-25 19:03:55,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:03:55,797.797 INFO    ] Initializing speech engine...
[2026-10-25 19:03:55,806.806 INFO    ] 2026-10-25 19:03:55
[2026-10-25 19:03:56,068.068 INFO    ] 2026-10-25 19:03:56
[2026-10-25 19:03:56,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:03:56,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:03:56,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:03:56,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:03:56,531.531 INFO    ] time= 25/10/2026 19:03:56
[2026-10-25 19:03:56,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:03:56,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:03:56,676.676 INFO    ] No existing commands found in stream
[2026-10-25 19:04:01,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:04:01,686.686 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 19:04:05,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:04:05,758.758 INFO    ] Checking for system updates...
[2026-10-25 19:04:05,798.798 INFO    ] 200
[2026-10-25 19:04:05,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:05,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:05,863.863 INFO    ] No update needed
[2026-10-25 19:04:05,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 19:04:05,903.903 INFO    ] 200
[2026-10-25 19:04:05,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:05,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:04:06,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:06,009.009 INFO    ] No camera update needed
[2026-10-25 19:04:06,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:04:06,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:04:06,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:04:06,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:04:08,066.066 INFO    ] ================================================
[2026-10-25 19:04:08,082.082 INFO    ] Launching Daemon at Sun Oct 25 19:04:08 IST 2026
[2026-10-25 19:04:08,094.094 INFO    ] ================================================
[2026-10-25 19:04:08,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:04:08
[2026-10-25 19:04:09,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:04:09,520.520 INFO    ] Initializing speech engine...
[2026-10-25 19:04:09,529.529 INFO    ] 2026-10-25 19:04:09
[2026-10-25 19:04:09,777.777 INFO    ] 2026-10-25 19:04:09
[2026-10-25 19:04:09,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:04:09,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:04:09,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:04:10,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:04:10,154.154 INFO    ] time= 25/10/2026 19:04:10
[2026-10-25 19:04:10,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:04:10,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:04:10,323.323 INFO    ] No existing commands found in stream
[2026-10-25 19:04:15,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:04:15,357.357 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 19:04:17,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:04:17,023.023 INFO    ] Checking for system updates...
[2026-10-25 19:04:17,060.060 INFO    ] 200
[2026-10-25 19:04:17,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:17,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:04:17,125.125 INFO    ] No update needed
[2026-10-25 19:04:17,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 19:04:17,161.161 INFO    ] 200
[2026-10-25 19:04:17,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:17,204.204 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:04:17,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:04:17,261.261 INFO    ] No camera update needed
[2026-10-25 19:04:17,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:04:17,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:04:17,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:04:17,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:04:19,319.319 INFO    ] ================================================
[2026-10-25 19:04:19,335.335 INFO    ] Launching Daemon at Sun Oct 25 19:04:19 IST 2026
[2026-10-25 19:04:19,346.346 INFO    ] ================================================
[2026-10-25 19:04:19,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:04:19
[2026-10-25 19:04:20,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:04:20,866.866 INFO    ] Initializing speech engine...
[2026-10-25 19:04:20,886.886 INFO    ] 2026-10-25 19:04:20
[2026-10-25 19:04:21,134.134 INFO    ] 2026-10-25 19:04:21
[2026-10-25 19:04:21,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:04:22,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:04:22,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:04:22,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:04:22,714.714 INFO    ] time= 25/10/2026 19:04:22
[2026-10-25 19:04:22,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:04:22,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:04:22,830.830 INFO    ] No existing commands found in stream
[2026-10-25 19:04:27,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:04:27,858.858 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 19:04:31,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:04:31,900.900 INFO    ] Checking for system updates...
[2026-10-25 19:04:31,946.946 INFO    ] 200
[2026-10-25 19:04:31,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:32,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:32,017.017 INFO    ] No update needed
[2026-10-25 19:04:32,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 19:04:32,057.057 INFO    ] 200
[2026-10-25 19:04:32,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:32,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:04:32,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:32,143.143 INFO    ] No camera update needed
[2026-10-25 19:04:32,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:04:32,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:04:32,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:04:32,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:04:34,203.203 INFO    ] ================================================
[2026-10-25 19:04:34,217.217 INFO    ] Launching Daemon at Sun Oct 25 19:04:34 IST 2026
[2026-10-25 19:04:34,228.228 INFO    ] ================================================
[2026-10-25 19:04:34,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:04:34
[2026-10-25 19:04:35,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:04:35,645.645 INFO    ] Initializing speech engine...
[2026-10-25 19:04:35,654.654 INFO    ] 2026-10-25 19:04:35
[2026-10-25 19:04:35,901.901 INFO    ] 2026-10-25 19:04:35
[2026-10-25 19:04:35,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:04:36,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:04:36,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:04:36,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:04:36,335.335 INFO    ] time= 25/10/2026 19:04:36
[2026-10-25 19:04:36,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:04:36,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:04:36,511.511 INFO    ] No existing commands found in stream
[2026-10-25 19:04:41,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:04:41,525.525 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 19:04:42,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:04:42,327.327 INFO    ] Checking for system updates...
[2026-10-25 19:04:42,366.366 INFO    ] 200
[2026-10-25 19:04:42,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:42,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:42,430.430 INFO    ] No update needed
[2026-10-25 19:04:42,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 19:04:42,469.469 INFO    ] 200
[2026-10-25 19:04:42,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:42,513.513 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:04:42,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:04:42,565.565 INFO    ] No camera update needed
[2026-10-25 19:04:42,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:04:42,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:04:42,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:04:42,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:04:44,622.622 INFO    ] ================================================
[2026-10-25 19:04:44,642.642 INFO    ] Launching Daemon at Sun Oct 25 19:04:44 IST 2026
[2026-10-25 19:04:44,653.653 INFO    ] ================================================
[2026-10-25 19:04:45,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:04:45
[2026-10-25 19:04:45,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:04:46,165.165 INFO    ] Initializing speech engine...
[2026-10-25 19:04:46,174.174 INFO    ] 2026-10-25 19:04:46
[2026-10-25 19:04:46,419.419 INFO    ] 2026-10-25 19:04:46
[2026-10-25 19:04:46,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:04:46,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:04:46,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:04:46,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:04:46,892.892 INFO    ] time= 25/10/2026 19:04:46
[2026-10-25 19:04:46,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:04:46,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:04:47,028.028 INFO    ] No existing commands found in stream
[2026-10-25 19:04:52,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:04:52,043.043 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 19:04:54,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:04:54,836.836 INFO    ] Checking for system updates...
[2026-10-25 19:04:54,875.875 INFO    ] 200
[2026-10-25 19:04:54,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:54,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:04:54,949.949 INFO    ] No update needed
[2026-10-25 19:04:54,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 19:04:54,984.984 INFO    ] 200
[2026-10-25 19:04:54,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:04:55,032.032 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:04:55,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:04:55,088.088 INFO    ] No camera update needed
[2026-10-25 19:04:55,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:04:55,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:04:55,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:04:55,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:04:57,143.143 INFO    ] ================================================
[2026-10-25 19:04:57,158.158 INFO    ] Launching Daemon at Sun Oct 25 19:04:57 IST 2026
[2026-10-25 19:04:57,169.169 INFO    ] ================================================
[2026-10-25 19:04:57,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:04:57
[2026-10-25 19:04:58,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:04:58,565.565 INFO    ] Initializing speech engine...
[2026-10-25 19:04:58,574.574 INFO    ] 2026-10-25 19:04:58
[2026-10-25 19:04:58,865.865 INFO    ] 2026-10-25 19:04:58
[2026-10-25 19:04:58,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:04:59,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:04:59,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:04:59,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:04:59,227.227 INFO    ] time= 25/10/2026 19:04:59
[2026-10-25 19:04:59,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:04:59,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:04:59,338.338 INFO    ] No existing commands found in stream
[2026-10-25 19:05:04,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:05:04,354.354 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 19:05:08,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:05:08,697.697 INFO    ] Checking for system updates...
[2026-10-25 19:05:08,757.757 INFO    ] 200
[2026-10-25 19:05:08,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:08,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:08,825.825 INFO    ] No update needed
[2026-10-25 19:05:08,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 19:05:08,867.867 INFO    ] 200
[2026-10-25 19:05:08,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:08,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:05:08,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:08,973.973 INFO    ] No camera update needed
[2026-10-25 19:05:08,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:05:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:05:08,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:05:08,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:05:11,028.028 INFO    ] ================================================
[2026-10-25 19:05:11,044.044 INFO    ] Launching Daemon at Sun Oct 25 19:05:11 IST 2026
[2026-10-25 19:05:11,054.054 INFO    ] ================================================
[2026-10-25 19:05:11,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:05:11
[2026-10-25 19:05:12,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:05:12,507.507 INFO    ] Initializing speech engine...
[2026-10-25 19:05:12,516.516 INFO    ] 2026-10-25 19:05:12
[2026-10-25 19:05:12,778.778 INFO    ] 2026-10-25 19:05:12
[2026-10-25 19:05:12,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:05:13,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:05:13,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:05:13,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:05:13,237.237 INFO    ] time= 25/10/2026 19:05:13
[2026-10-25 19:05:13,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:05:13,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:05:13,386.386 INFO    ] No existing commands found in stream
[2026-10-25 19:05:18,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:05:18,400.400 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 19:05:20,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:05:20,753.753 INFO    ] Checking for system updates...
[2026-10-25 19:05:20,793.793 INFO    ] 200
[2026-10-25 19:05:20,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:20,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:05:20,857.857 INFO    ] No update needed
[2026-10-25 19:05:20,860.860 INFO    ] Checking for camera pi updates...
[2026-10-25 19:05:20,897.897 INFO    ] 200
[2026-10-25 19:05:20,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:20,944.944 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:05:20,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:05:20,999.999 INFO    ] No camera update needed
[2026-10-25 19:05:21,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:05:21,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:05:21,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:05:21,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:05:23,055.055 INFO    ] ================================================
[2026-10-25 19:05:23,070.070 INFO    ] Launching Daemon at Sun Oct 25 19:05:23 IST 2026
[2026-10-25 19:05:23,081.081 INFO    ] ================================================
[2026-10-25 19:05:23,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:05:23
[2026-10-25 19:05:24,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:05:24,638.638 INFO    ] Initializing speech engine...
[2026-10-25 19:05:24,646.646 INFO    ] 2026-10-25 19:05:24
[2026-10-25 19:05:24,897.897 INFO    ] 2026-10-25 19:05:24
[2026-10-25 19:05:24,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:05:25,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:05:25,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:05:25,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:05:25,895.895 INFO    ] time= 25/10/2026 19:05:25
[2026-10-25 19:05:25,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:05:25,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:05:25,996.996 INFO    ] No existing commands found in stream
[2026-10-25 19:05:31,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:05:31,024.024 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 19:05:34,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:05:34,020.020 INFO    ] Checking for system updates...
[2026-10-25 19:05:34,056.056 INFO    ] 200
[2026-10-25 19:05:34,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:34,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:34,121.121 INFO    ] No update needed
[2026-10-25 19:05:34,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 19:05:34,163.163 INFO    ] 200
[2026-10-25 19:05:34,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:34,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:05:34,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:34,275.275 INFO    ] No camera update needed
[2026-10-25 19:05:34,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:05:34,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:05:34,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:05:34,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:05:36,331.331 INFO    ] ================================================
[2026-10-25 19:05:36,346.346 INFO    ] Launching Daemon at Sun Oct 25 19:05:36 IST 2026
[2026-10-25 19:05:36,357.357 INFO    ] ================================================
[2026-10-25 19:05:36,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:05:36
[2026-10-25 19:05:37,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:05:37,767.767 INFO    ] Initializing speech engine...
[2026-10-25 19:05:37,783.783 INFO    ] 2026-10-25 19:05:37
[2026-10-25 19:05:38,066.066 INFO    ] 2026-10-25 19:05:38
[2026-10-25 19:05:38,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:05:38,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:05:38,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:05:38,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:05:38,435.435 INFO    ] time= 25/10/2026 19:05:38
[2026-10-25 19:05:38,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:05:38,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:05:38,545.545 INFO    ] No existing commands found in stream
[2026-10-25 19:05:43,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:05:43,560.560 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 19:05:44,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:05:44,342.342 INFO    ] Checking for system updates...
[2026-10-25 19:05:44,381.381 INFO    ] 200
[2026-10-25 19:05:44,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:44,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:05:44,441.441 INFO    ] No update needed
[2026-10-25 19:05:44,444.444 INFO    ] Checking for camera pi updates...
[2026-10-25 19:05:44,481.481 INFO    ] 200
[2026-10-25 19:05:44,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:44,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:05:44,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:05:44,587.587 INFO    ] No camera update needed
[2026-10-25 19:05:44,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:05:44,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:05:44,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:05:44,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:05:46,642.642 INFO    ] ================================================
[2026-10-25 19:05:46,658.658 INFO    ] Launching Daemon at Sun Oct 25 19:05:46 IST 2026
[2026-10-25 19:05:46,669.669 INFO    ] ================================================
[2026-10-25 19:05:47,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:05:47
[2026-10-25 19:05:47,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:05:48,092.092 INFO    ] Initializing speech engine...
[2026-10-25 19:05:48,101.101 INFO    ] 2026-10-25 19:05:48
[2026-10-25 19:05:48,346.346 INFO    ] 2026-10-25 19:05:48
[2026-10-25 19:05:48,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:05:48,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:05:48,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:05:48,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:05:48,821.821 INFO    ] time= 25/10/2026 19:05:48
[2026-10-25 19:05:48,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:05:48,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:05:48,961.961 INFO    ] No existing commands found in stream
[2026-10-25 19:05:53,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:05:53,976.976 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 19:05:57,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:05:57,969.969 INFO    ] Checking for system updates...
[2026-10-25 19:05:58,009.009 INFO    ] 200
[2026-10-25 19:05:58,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:58,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:58,069.069 INFO    ] No update needed
[2026-10-25 19:05:58,071.071 INFO    ] Checking for camera pi updates...
[2026-10-25 19:05:58,105.105 INFO    ] 200
[2026-10-25 19:05:58,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:05:58,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:05:58,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:05:58,206.206 INFO    ] No camera update needed
[2026-10-25 19:05:58,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:05:58,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:05:58,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:05:58,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:06:00,261.261 INFO    ] ================================================
[2026-10-25 19:06:00,277.277 INFO    ] Launching Daemon at Sun Oct 25 19:06:00 IST 2026
[2026-10-25 19:06:00,289.289 INFO    ] ================================================
[2026-10-25 19:06:00,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:06:00
[2026-10-25 19:06:01,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:06:01,940.940 INFO    ] Initializing speech engine...
[2026-10-25 19:06:01,948.948 INFO    ] 2026-10-25 19:06:01
[2026-10-25 19:06:02,237.237 INFO    ] 2026-10-25 19:06:02
[2026-10-25 19:06:02,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:06:02,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:06:02,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:06:02,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:06:02,638.638 INFO    ] time= 25/10/2026 19:06:02
[2026-10-25 19:06:02,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:06:02,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:06:02,829.829 INFO    ] No existing commands found in stream
[2026-10-25 19:06:07,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:06:07,863.863 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 19:06:08,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:06:08,966.966 INFO    ] Checking for system updates...
[2026-10-25 19:06:09,002.002 INFO    ] 200
[2026-10-25 19:06:09,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:09,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:06:09,061.061 INFO    ] No update needed
[2026-10-25 19:06:09,063.063 INFO    ] Checking for camera pi updates...
[2026-10-25 19:06:09,102.102 INFO    ] 200
[2026-10-25 19:06:09,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:09,146.146 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:06:09,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:06:09,196.196 INFO    ] No camera update needed
[2026-10-25 19:06:09,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:06:09,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:06:09,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:06:09,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:06:11,253.253 INFO    ] ================================================
[2026-10-25 19:06:11,269.269 INFO    ] Launching Daemon at Sun Oct 25 19:06:11 IST 2026
[2026-10-25 19:06:11,280.280 INFO    ] ================================================
[2026-10-25 19:06:11,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:06:11
[2026-10-25 19:06:12,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:06:12,694.694 INFO    ] Initializing speech engine...
[2026-10-25 19:06:12,707.707 INFO    ] 2026-10-25 19:06:12
[2026-10-25 19:06:12,987.987 INFO    ] 2026-10-25 19:06:12
[2026-10-25 19:06:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:06:13,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:06:13,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:06:13,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:06:13,399.399 INFO    ] time= 25/10/2026 19:06:13
[2026-10-25 19:06:13,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:06:13,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:06:13,483.483 INFO    ] No existing commands found in stream
[2026-10-25 19:06:18,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:06:18,498.498 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 19:06:20,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:06:20,877.877 INFO    ] Checking for system updates...
[2026-10-25 19:06:20,917.917 INFO    ] 200
[2026-10-25 19:06:20,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:20,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:06:20,981.981 INFO    ] No update needed
[2026-10-25 19:06:20,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 19:06:21,021.021 INFO    ] 200
[2026-10-25 19:06:21,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:21,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:06:21,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:06:21,119.119 INFO    ] No camera update needed
[2026-10-25 19:06:21,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:06:21,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:06:21,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:06:21,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:06:23,176.176 INFO    ] ================================================
[2026-10-25 19:06:23,191.191 INFO    ] Launching Daemon at Sun Oct 25 19:06:23 IST 2026
[2026-10-25 19:06:23,202.202 INFO    ] ================================================
[2026-10-25 19:06:23,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:06:23
[2026-10-25 19:06:24,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:06:24,787.787 INFO    ] Initializing speech engine...
[2026-10-25 19:06:24,799.799 INFO    ] 2026-10-25 19:06:24
[2026-10-25 19:06:25,069.069 INFO    ] 2026-10-25 19:06:25
[2026-10-25 19:06:25,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:06:28,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:06:28,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:06:28,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:06:28,772.772 INFO    ] time= 25/10/2026 19:06:28
[2026-10-25 19:06:28,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:06:28,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:06:28,826.826 INFO    ] No existing commands found in stream
[2026-10-25 19:06:33,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:06:33,839.839 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 19:06:35,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:06:35,634.634 INFO    ] Checking for system updates...
[2026-10-25 19:06:35,674.674 INFO    ] 200
[2026-10-25 19:06:35,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:35,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:06:35,739.739 INFO    ] No update needed
[2026-10-25 19:06:35,742.742 INFO    ] Checking for camera pi updates...
[2026-10-25 19:06:35,777.777 INFO    ] 200
[2026-10-25 19:06:35,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:35,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:06:35,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:06:35,874.874 INFO    ] No camera update needed
[2026-10-25 19:06:35,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:06:35,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:06:35,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:06:35,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:06:37,931.931 INFO    ] ================================================
[2026-10-25 19:06:37,947.947 INFO    ] Launching Daemon at Sun Oct 25 19:06:37 IST 2026
[2026-10-25 19:06:37,958.958 INFO    ] ================================================
[2026-10-25 19:06:38,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:06:38
[2026-10-25 19:06:39,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:06:39,534.534 INFO    ] Initializing speech engine...
[2026-10-25 19:06:39,544.544 INFO    ] 2026-10-25 19:06:39
[2026-10-25 19:06:39,808.808 INFO    ] 2026-10-25 19:06:39
[2026-10-25 19:06:39,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:06:40,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:06:40,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:06:40,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:06:40,189.189 INFO    ] time= 25/10/2026 19:06:40
[2026-10-25 19:06:40,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:06:40,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:06:40,365.365 INFO    ] No existing commands found in stream
[2026-10-25 19:06:45,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:06:45,399.399 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 19:06:49,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:06:49,365.365 INFO    ] Checking for system updates...
[2026-10-25 19:06:49,403.403 INFO    ] 200
[2026-10-25 19:06:49,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:49,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:06:49,467.467 INFO    ] No update needed
[2026-10-25 19:06:49,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 19:06:49,505.505 INFO    ] 200
[2026-10-25 19:06:49,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:06:49,553.553 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:06:49,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:06:49,615.615 INFO    ] No camera update needed
[2026-10-25 19:06:49,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:06:49,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:06:49,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:06:49,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:06:51,670.670 INFO    ] ================================================
[2026-10-25 19:06:51,686.686 INFO    ] Launching Daemon at Sun Oct 25 19:06:51 IST 2026
[2026-10-25 19:06:51,697.697 INFO    ] ================================================
[2026-10-25 19:06:52,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:06:52
[2026-10-25 19:06:52,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:06:53,096.096 INFO    ] Initializing speech engine...
[2026-10-25 19:06:53,102.102 INFO    ] 2026-10-25 19:06:53
[2026-10-25 19:06:53,392.392 INFO    ] 2026-10-25 19:06:53
[2026-10-25 19:06:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:06:53,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:06:53,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:06:53,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:06:53,797.797 INFO    ] time= 25/10/2026 19:06:53
[2026-10-25 19:06:53,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:06:53,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:06:53,884.884 INFO    ] No existing commands found in stream
[2026-10-25 19:06:58,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:06:58,899.899 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 19:07:00,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:07:00,667.667 INFO    ] Checking for system updates...
[2026-10-25 19:07:00,708.708 INFO    ] 200
[2026-10-25 19:07:00,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:00,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:00,774.774 INFO    ] No update needed
[2026-10-25 19:07:00,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 19:07:00,815.815 INFO    ] 200
[2026-10-25 19:07:00,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:00,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:07:00,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:00,935.935 INFO    ] No camera update needed
[2026-10-25 19:07:00,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:07:00,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:07:00,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:07:00,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:07:03,995.995 INFO    ] ================================================
[2026-10-25 19:07:03,013.013 INFO    ] Launching Daemon at Sun Oct 25 19:07:03 IST 2026
[2026-10-25 19:07:03,025.025 INFO    ] ================================================
[2026-10-25 19:07:03,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:07:03
[2026-10-25 19:07:04,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:07:04,443.443 INFO    ] Initializing speech engine...
[2026-10-25 19:07:04,460.460 INFO    ] 2026-10-25 19:07:04
[2026-10-25 19:07:04,736.736 INFO    ] 2026-10-25 19:07:04
[2026-10-25 19:07:04,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:07:04,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:07:04,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:07:05,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:07:05,135.135 INFO    ] time= 25/10/2026 19:07:05
[2026-10-25 19:07:05,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:07:05,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:07:05,310.310 INFO    ] No existing commands found in stream
[2026-10-25 19:07:10,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:07:10,343.343 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 19:07:13,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:07:13,562.562 INFO    ] Checking for system updates...
[2026-10-25 19:07:13,598.598 INFO    ] 200
[2026-10-25 19:07:13,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:13,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:13,656.656 INFO    ] No update needed
[2026-10-25 19:07:13,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 19:07:13,692.692 INFO    ] 200
[2026-10-25 19:07:13,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:13,734.734 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:07:13,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:13,784.784 INFO    ] No camera update needed
[2026-10-25 19:07:13,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:07:13,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:07:13,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:07:13,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:07:15,846.846 INFO    ] ================================================
[2026-10-25 19:07:15,862.862 INFO    ] Launching Daemon at Sun Oct 25 19:07:15 IST 2026
[2026-10-25 19:07:15,873.873 INFO    ] ================================================
[2026-10-25 19:07:16,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:07:16
[2026-10-25 19:07:17,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:07:17,420.420 INFO    ] Initializing speech engine...
[2026-10-25 19:07:17,428.428 INFO    ] 2026-10-25 19:07:17
[2026-10-25 19:07:17,712.712 INFO    ] 2026-10-25 19:07:17
[2026-10-25 19:07:17,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:07:17,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:07:17,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:07:18,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:07:18,152.152 INFO    ] time= 25/10/2026 19:07:18
[2026-10-25 19:07:18,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:07:18,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:07:18,297.297 INFO    ] No existing commands found in stream
[2026-10-25 19:07:23,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:07:23,313.313 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 19:07:25,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:07:25,381.381 INFO    ] Checking for system updates...
[2026-10-25 19:07:25,418.418 INFO    ] 200
[2026-10-25 19:07:25,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:25,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:25,477.477 INFO    ] No update needed
[2026-10-25 19:07:25,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 19:07:25,516.516 INFO    ] 200
[2026-10-25 19:07:25,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:25,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:07:25,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:25,614.614 INFO    ] No camera update needed
[2026-10-25 19:07:25,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:07:25,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:07:25,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:07:25,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:07:27,671.671 INFO    ] ================================================
[2026-10-25 19:07:27,687.687 INFO    ] Launching Daemon at Sun Oct 25 19:07:27 IST 2026
[2026-10-25 19:07:27,698.698 INFO    ] ================================================
[2026-10-25 19:07:28,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:07:28
[2026-10-25 19:07:28,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:07:29,244.244 INFO    ] Initializing speech engine...
[2026-10-25 19:07:29,251.251 INFO    ] 2026-10-25 19:07:29
[2026-10-25 19:07:29,539.539 INFO    ] 2026-10-25 19:07:29
[2026-10-25 19:07:29,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:07:31,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:07:31,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:07:31,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:07:31,831.831 INFO    ] time= 25/10/2026 19:07:31
[2026-10-25 19:07:31,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:07:31,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:07:31,951.951 INFO    ] No existing commands found in stream
[2026-10-25 19:07:36,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:07:36,967.967 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 19:07:38,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:07:38,423.423 INFO    ] Checking for system updates...
[2026-10-25 19:07:38,459.459 INFO    ] 200
[2026-10-25 19:07:38,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:38,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:07:38,518.518 INFO    ] No update needed
[2026-10-25 19:07:38,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 19:07:38,557.557 INFO    ] 200
[2026-10-25 19:07:38,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:38,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:07:38,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:07:38,748.748 INFO    ] No camera update needed
[2026-10-25 19:07:38,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:07:38,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:07:38,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:07:38,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:07:40,807.807 INFO    ] ================================================
[2026-10-25 19:07:40,823.823 INFO    ] Launching Daemon at Sun Oct 25 19:07:40 IST 2026
[2026-10-25 19:07:40,834.834 INFO    ] ================================================
[2026-10-25 19:07:41,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:07:41
[2026-10-25 19:07:42,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:07:42,300.300 INFO    ] Initializing speech engine...
[2026-10-25 19:07:42,305.305 INFO    ] 2026-10-25 19:07:42
[2026-10-25 19:07:42,562.562 INFO    ] 2026-10-25 19:07:42
[2026-10-25 19:07:42,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:07:42,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:07:42,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:07:42,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:07:43,033.033 INFO    ] time= 25/10/2026 19:07:42
[2026-10-25 19:07:43,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:07:43,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:07:43,161.161 INFO    ] No existing commands found in stream
[2026-10-25 19:07:48,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:07:48,175.175 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 19:07:49,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:07:49,062.062 INFO    ] Checking for system updates...
[2026-10-25 19:07:49,101.101 INFO    ] 200
[2026-10-25 19:07:49,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:49,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:49,160.160 INFO    ] No update needed
[2026-10-25 19:07:49,162.162 INFO    ] Checking for camera pi updates...
[2026-10-25 19:07:49,196.196 INFO    ] 200
[2026-10-25 19:07:49,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:07:49,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:07:49,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:07:49,303.303 INFO    ] No camera update needed
[2026-10-25 19:07:49,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:07:49,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:07:49,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:07:49,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:07:51,360.360 INFO    ] ================================================
[2026-10-25 19:07:51,375.375 INFO    ] Launching Daemon at Sun Oct 25 19:07:51 IST 2026
[2026-10-25 19:07:51,386.386 INFO    ] ================================================
[2026-10-25 19:07:52,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:07:52
[2026-10-25 19:07:52,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:07:52,916.916 INFO    ] Initializing speech engine...
[2026-10-25 19:07:52,930.930 INFO    ] 2026-10-25 19:07:52
[2026-10-25 19:07:53,192.192 INFO    ] 2026-10-25 19:07:53
[2026-10-25 19:07:53,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:07:53,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:07:53,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:07:53,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:07:53,676.676 INFO    ] time= 25/10/2026 19:07:53
[2026-10-25 19:07:53,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:07:53,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:07:53,880.880 INFO    ] No existing commands found in stream
[2026-10-25 19:07:58,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:07:58,916.916 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 19:08:04,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:08:04,312.312 INFO    ] Checking for system updates...
[2026-10-25 19:08:04,350.350 INFO    ] 200
[2026-10-25 19:08:04,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:04,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:08:04,409.409 INFO    ] No update needed
[2026-10-25 19:08:04,411.411 INFO    ] Checking for camera pi updates...
[2026-10-25 19:08:04,446.446 INFO    ] 200
[2026-10-25 19:08:04,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:04,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:08:04,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:08:04,555.555 INFO    ] No camera update needed
[2026-10-25 19:08:04,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:08:04,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:08:04,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:08:04,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:08:06,613.613 INFO    ] ================================================
[2026-10-25 19:08:06,629.629 INFO    ] Launching Daemon at Sun Oct 25 19:08:06 IST 2026
[2026-10-25 19:08:06,640.640 INFO    ] ================================================
[2026-10-25 19:08:07,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:08:07
[2026-10-25 19:08:07,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:08:08,043.043 INFO    ] Initializing speech engine...
[2026-10-25 19:08:08,052.052 INFO    ] 2026-10-25 19:08:08
[2026-10-25 19:08:08,334.334 INFO    ] 2026-10-25 19:08:08
[2026-10-25 19:08:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:08:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:08:08,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:08:08,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:08:08,711.711 INFO    ] time= 25/10/2026 19:08:08
[2026-10-25 19:08:08,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:08:08,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:08:08,815.815 INFO    ] No existing commands found in stream
[2026-10-25 19:08:13,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:08:13,830.830 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 19:08:17,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:08:17,462.462 INFO    ] Checking for system updates...
[2026-10-25 19:08:17,498.498 INFO    ] 200
[2026-10-25 19:08:17,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:17,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:08:17,559.559 INFO    ] No update needed
[2026-10-25 19:08:17,561.561 INFO    ] Checking for camera pi updates...
[2026-10-25 19:08:17,596.596 INFO    ] 200
[2026-10-25 19:08:17,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:17,640.640 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:08:17,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:08:17,697.697 INFO    ] No camera update needed
[2026-10-25 19:08:17,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:08:17,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:08:17,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:08:17,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:08:19,753.753 INFO    ] ================================================
[2026-10-25 19:08:19,769.769 INFO    ] Launching Daemon at Sun Oct 25 19:08:19 IST 2026
[2026-10-25 19:08:19,781.781 INFO    ] ================================================
[2026-10-25 19:08:20,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:08:20
[2026-10-25 19:08:20,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:08:21,229.229 INFO    ] Initializing speech engine...
[2026-10-25 19:08:21,250.250 INFO    ] 2026-10-25 19:08:21
[2026-10-25 19:08:21,514.514 INFO    ] 2026-10-25 19:08:21
[2026-10-25 19:08:21,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:08:21,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:08:21,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:08:21,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:08:21,897.897 INFO    ] time= 25/10/2026 19:08:21
[2026-10-25 19:08:21,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:08:21,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:08:22,067.067 INFO    ] No existing commands found in stream
[2026-10-25 19:08:27,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:08:27,095.095 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 19:08:33,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:08:33,499.499 INFO    ] Checking for system updates...
[2026-10-25 19:08:33,542.542 INFO    ] 200
[2026-10-25 19:08:33,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:33,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:33,623.623 INFO    ] No update needed
[2026-10-25 19:08:33,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 19:08:33,661.661 INFO    ] 200
[2026-10-25 19:08:33,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:33,705.705 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:08:33,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:33,743.743 INFO    ] No camera update needed
[2026-10-25 19:08:33,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:08:33,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:08:33,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:08:33,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:08:35,802.802 INFO    ] ================================================
[2026-10-25 19:08:35,816.816 INFO    ] Launching Daemon at Sun Oct 25 19:08:35 IST 2026
[2026-10-25 19:08:35,827.827 INFO    ] ================================================
[2026-10-25 19:08:36,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:08:36
[2026-10-25 19:08:37,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:08:37,289.289 INFO    ] Initializing speech engine...
[2026-10-25 19:08:37,297.297 INFO    ] 2026-10-25 19:08:37
[2026-10-25 19:08:37,559.559 INFO    ] 2026-10-25 19:08:37
[2026-10-25 19:08:37,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:08:37,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:08:37,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:08:38,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:08:38,026.026 INFO    ] time= 25/10/2026 19:08:38
[2026-10-25 19:08:38,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:08:38,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:08:38,152.152 INFO    ] No existing commands found in stream
[2026-10-25 19:08:43,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:08:43,167.167 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 19:08:46,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:08:46,100.100 INFO    ] Checking for system updates...
[2026-10-25 19:08:46,141.141 INFO    ] 200
[2026-10-25 19:08:46,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:46,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:46,203.203 INFO    ] No update needed
[2026-10-25 19:08:46,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 19:08:46,241.241 INFO    ] 200
[2026-10-25 19:08:46,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:46,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:08:46,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:46,348.348 INFO    ] No camera update needed
[2026-10-25 19:08:46,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:08:46,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:08:46,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:08:46,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:08:48,405.405 INFO    ] ================================================
[2026-10-25 19:08:48,420.420 INFO    ] Launching Daemon at Sun Oct 25 19:08:48 IST 2026
[2026-10-25 19:08:48,430.430 INFO    ] ================================================
[2026-10-25 19:08:49,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:08:48
[2026-10-25 19:08:49,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:08:49,858.858 INFO    ] Initializing speech engine...
[2026-10-25 19:08:49,868.868 INFO    ] 2026-10-25 19:08:49
[2026-10-25 19:08:50,127.127 INFO    ] 2026-10-25 19:08:50
[2026-10-25 19:08:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:08:50,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:08:50,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:08:50,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:08:50,725.725 INFO    ] time= 25/10/2026 19:08:50
[2026-10-25 19:08:50,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:08:50,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:08:50,854.854 INFO    ] No existing commands found in stream
[2026-10-25 19:08:55,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:08:55,874.874 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 19:08:58,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:08:58,953.953 INFO    ] Checking for system updates...
[2026-10-25 19:08:58,988.988 INFO    ] 200
[2026-10-25 19:08:58,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:59,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:59,047.047 INFO    ] No update needed
[2026-10-25 19:08:59,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 19:08:59,082.082 INFO    ] 200
[2026-10-25 19:08:59,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:08:59,125.125 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:08:59,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:08:59,185.185 INFO    ] No camera update needed
[2026-10-25 19:08:59,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:08:59,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:08:59,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:08:59,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:09:01,240.240 INFO    ] ================================================
[2026-10-25 19:09:01,255.255 INFO    ] Launching Daemon at Sun Oct 25 19:09:01 IST 2026
[2026-10-25 19:09:01,266.266 INFO    ] ================================================
[2026-10-25 19:09:01,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:09:01
[2026-10-25 19:09:02,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:09:02,935.935 INFO    ] Initializing speech engine...
[2026-10-25 19:09:02,944.944 INFO    ] 2026-10-25 19:09:02
[2026-10-25 19:09:03,241.241 INFO    ] 2026-10-25 19:09:03
[2026-10-25 19:09:03,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:09:05,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:09:05,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:09:05,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:09:05,636.636 INFO    ] time= 25/10/2026 19:09:05
[2026-10-25 19:09:05,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:09:05,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:09:05,728.728 INFO    ] No existing commands found in stream
[2026-10-25 19:09:10,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:09:10,751.751 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 19:09:14,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:09:14,901.901 INFO    ] Checking for system updates...
[2026-10-25 19:09:14,939.939 INFO    ] 200
[2026-10-25 19:09:14,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:14,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:09:14,998.998 INFO    ] No update needed
[2026-10-25 19:09:15,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 19:09:15,038.038 INFO    ] 200
[2026-10-25 19:09:15,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:15,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:09:15,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:09:15,149.149 INFO    ] No camera update needed
[2026-10-25 19:09:15,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:09:15,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:09:15,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:09:15,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:09:17,206.206 INFO    ] ================================================
[2026-10-25 19:09:17,222.222 INFO    ] Launching Daemon at Sun Oct 25 19:09:17 IST 2026
[2026-10-25 19:09:17,233.233 INFO    ] ================================================
[2026-10-25 19:09:17,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:09:17
[2026-10-25 19:09:18,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:09:18,863.863 INFO    ] Initializing speech engine...
[2026-10-25 19:09:18,874.874 INFO    ] 2026-10-25 19:09:18
[2026-10-25 19:09:19,134.134 INFO    ] 2026-10-25 19:09:19
[2026-10-25 19:09:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:09:19,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:09:19,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:09:19,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:09:19,610.610 INFO    ] time= 25/10/2026 19:09:19
[2026-10-25 19:09:19,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:09:19,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:09:19,779.779 INFO    ] No existing commands found in stream
[2026-10-25 19:09:24,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:09:24,795.795 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 19:09:27,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:09:27,932.932 INFO    ] Checking for system updates...
[2026-10-25 19:09:27,968.968 INFO    ] 200
[2026-10-25 19:09:27,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:28,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:28,027.027 INFO    ] No update needed
[2026-10-25 19:09:28,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 19:09:28,063.063 INFO    ] 200
[2026-10-25 19:09:28,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:28,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:09:28,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:28,156.156 INFO    ] No camera update needed
[2026-10-25 19:09:28,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:09:28,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:09:28,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:09:28,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:09:30,213.213 INFO    ] ================================================
[2026-10-25 19:09:30,228.228 INFO    ] Launching Daemon at Sun Oct 25 19:09:30 IST 2026
[2026-10-25 19:09:30,239.239 INFO    ] ================================================
[2026-10-25 19:09:30,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:09:30
[2026-10-25 19:09:31,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:09:31,848.848 INFO    ] Initializing speech engine...
[2026-10-25 19:09:31,867.867 INFO    ] 2026-10-25 19:09:31
[2026-10-25 19:09:32,153.153 INFO    ] 2026-10-25 19:09:32
[2026-10-25 19:09:32,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:09:35,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:09:35,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:09:36,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:09:36,446.446 INFO    ] time= 25/10/2026 19:09:36
[2026-10-25 19:09:36,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:09:36,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:09:36,504.504 INFO    ] No existing commands found in stream
[2026-10-25 19:09:41,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:09:41,516.516 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 19:09:43,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:09:43,702.702 INFO    ] Checking for system updates...
[2026-10-25 19:09:43,738.738 INFO    ] 200
[2026-10-25 19:09:43,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:43,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:43,798.798 INFO    ] No update needed
[2026-10-25 19:09:43,801.801 INFO    ] Checking for camera pi updates...
[2026-10-25 19:09:43,834.834 INFO    ] 200
[2026-10-25 19:09:43,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:43,879.879 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:09:44,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:44,034.034 INFO    ] No camera update needed
[2026-10-25 19:09:44,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:09:44,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:09:44,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:09:44,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:09:46,089.089 INFO    ] ================================================
[2026-10-25 19:09:46,103.103 INFO    ] Launching Daemon at Sun Oct 25 19:09:46 IST 2026
[2026-10-25 19:09:46,114.114 INFO    ] ================================================
[2026-10-25 19:09:46,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:09:46
[2026-10-25 19:09:47,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:09:47,693.693 INFO    ] Initializing speech engine...
[2026-10-25 19:09:47,706.706 INFO    ] 2026-10-25 19:09:47
[2026-10-25 19:09:48,011.011 INFO    ] 2026-10-25 19:09:47
[2026-10-25 19:09:48,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:09:48,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:09:48,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:09:48,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:09:48,513.513 INFO    ] time= 25/10/2026 19:09:48
[2026-10-25 19:09:48,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:09:48,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:09:48,666.666 INFO    ] No existing commands found in stream
[2026-10-25 19:09:53,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:09:53,681.681 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 19:09:56,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:09:56,758.758 INFO    ] Checking for system updates...
[2026-10-25 19:09:56,795.795 INFO    ] 200
[2026-10-25 19:09:56,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:56,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:56,853.853 INFO    ] No update needed
[2026-10-25 19:09:56,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 19:09:56,889.889 INFO    ] 200
[2026-10-25 19:09:56,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:09:56,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:09:56,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:09:56,998.998 INFO    ] No camera update needed
[2026-10-25 19:09:57,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:09:57,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:09:57,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:09:57,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:09:59,053.053 INFO    ] ================================================
[2026-10-25 19:09:59,068.068 INFO    ] Launching Daemon at Sun Oct 25 19:09:59 IST 2026
[2026-10-25 19:09:59,079.079 INFO    ] ================================================
[2026-10-25 19:09:59,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:09:59
[2026-10-25 19:10:00,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:10:00,538.538 INFO    ] Initializing speech engine...
[2026-10-25 19:10:00,548.548 INFO    ] 2026-10-25 19:10:00
[2026-10-25 19:10:00,810.810 INFO    ] 2026-10-25 19:10:00
[2026-10-25 19:10:00,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:10:01,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:10:01,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:10:01,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:10:01,179.179 INFO    ] time= 25/10/2026 19:10:01
[2026-10-25 19:10:01,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:10:01,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:10:01,300.300 INFO    ] No existing commands found in stream
[2026-10-25 19:10:06,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:10:06,379.379 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 19:10:08,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:10:08,295.295 INFO    ] Checking for system updates...
[2026-10-25 19:10:08,335.335 INFO    ] 200
[2026-10-25 19:10:08,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:08,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:10:08,394.394 INFO    ] No update needed
[2026-10-25 19:10:08,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 19:10:08,434.434 INFO    ] 200
[2026-10-25 19:10:08,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:08,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:10:08,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:10:08,530.530 INFO    ] No camera update needed
[2026-10-25 19:10:08,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:10:08,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:10:08,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:10:08,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:10:10,586.586 INFO    ] ================================================
[2026-10-25 19:10:10,601.601 INFO    ] Launching Daemon at Sun Oct 25 19:10:10 IST 2026
[2026-10-25 19:10:10,611.611 INFO    ] ================================================
[2026-10-25 19:10:11,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:10:11
[2026-10-25 19:10:11,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:10:12,028.028 INFO    ] Initializing speech engine...
[2026-10-25 19:10:12,038.038 INFO    ] 2026-10-25 19:10:12
[2026-10-25 19:10:12,282.282 INFO    ] 2026-10-25 19:10:12
[2026-10-25 19:10:12,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:10:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:10:12,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:10:12,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:10:12,840.840 INFO    ] time= 25/10/2026 19:10:12
[2026-10-25 19:10:12,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:10:12,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:10:12,982.982 INFO    ] No existing commands found in stream
[2026-10-25 19:10:18,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:10:18,009.009 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-25 19:10:19,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:10:19,803.803 INFO    ] Checking for system updates...
[2026-10-25 19:10:19,840.840 INFO    ] 200
[2026-10-25 19:10:19,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:19,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:10:19,898.898 INFO    ] No update needed
[2026-10-25 19:10:19,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 19:10:19,933.933 INFO    ] 200
[2026-10-25 19:10:19,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:19,977.977 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:10:20,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:10:20,030.030 INFO    ] No camera update needed
[2026-10-25 19:10:20,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:10:20,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:10:20,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:10:20,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:10:22,091.091 INFO    ] ================================================
[2026-10-25 19:10:22,105.105 INFO    ] Launching Daemon at Sun Oct 25 19:10:22 IST 2026
[2026-10-25 19:10:22,116.116 INFO    ] ================================================
[2026-10-25 19:10:22,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:10:22
[2026-10-25 19:10:23,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:10:23,662.662 INFO    ] Initializing speech engine...
[2026-10-25 19:10:23,673.673 INFO    ] 2026-10-25 19:10:23
[2026-10-25 19:10:23,940.940 INFO    ] 2026-10-25 19:10:23
[2026-10-25 19:10:23,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:10:24,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:10:24,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:10:24,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:10:24,418.418 INFO    ] time= 25/10/2026 19:10:24
[2026-10-25 19:10:24,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:10:24,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:10:24,614.614 INFO    ] No existing commands found in stream
[2026-10-25 19:10:29,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:10:29,648.648 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 19:10:33,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:10:33,085.085 INFO    ] Checking for system updates...
[2026-10-25 19:10:33,125.125 INFO    ] 200
[2026-10-25 19:10:33,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:33,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:33,187.187 INFO    ] No update needed
[2026-10-25 19:10:33,190.190 INFO    ] Checking for camera pi updates...
[2026-10-25 19:10:33,226.226 INFO    ] 200
[2026-10-25 19:10:33,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:33,273.273 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:10:33,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:33,312.312 INFO    ] No camera update needed
[2026-10-25 19:10:33,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:10:33,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:10:33,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:10:33,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:10:35,374.374 INFO    ] ================================================
[2026-10-25 19:10:35,389.389 INFO    ] Launching Daemon at Sun Oct 25 19:10:35 IST 2026
[2026-10-25 19:10:35,400.400 INFO    ] ================================================
[2026-10-25 19:10:36,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:10:36
[2026-10-25 19:10:36,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:10:36,953.953 INFO    ] Initializing speech engine...
[2026-10-25 19:10:36,959.959 INFO    ] 2026-10-25 19:10:36
[2026-10-25 19:10:37,226.226 INFO    ] 2026-10-25 19:10:37
[2026-10-25 19:10:37,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:10:37,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:10:37,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:10:37,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:10:37,597.597 INFO    ] time= 25/10/2026 19:10:37
[2026-10-25 19:10:37,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:10:37,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:10:37,761.761 INFO    ] No existing commands found in stream
[2026-10-25 19:10:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:10:42,790.790 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 19:10:44,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:10:44,889.889 INFO    ] Checking for system updates...
[2026-10-25 19:10:44,926.926 INFO    ] 200
[2026-10-25 19:10:44,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:44,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:44,989.989 INFO    ] No update needed
[2026-10-25 19:10:44,992.992 INFO    ] Checking for camera pi updates...
[2026-10-25 19:10:45,028.028 INFO    ] 200
[2026-10-25 19:10:45,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:45,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:10:45,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:45,154.154 INFO    ] No camera update needed
[2026-10-25 19:10:45,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:10:45,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:10:45,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:10:45,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:10:47,211.211 INFO    ] ================================================
[2026-10-25 19:10:47,226.226 INFO    ] Launching Daemon at Sun Oct 25 19:10:47 IST 2026
[2026-10-25 19:10:47,237.237 INFO    ] ================================================
[2026-10-25 19:10:47,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:10:47
[2026-10-25 19:10:48,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:10:48,783.783 INFO    ] Initializing speech engine...
[2026-10-25 19:10:48,793.793 INFO    ] 2026-10-25 19:10:48
[2026-10-25 19:10:49,060.060 INFO    ] 2026-10-25 19:10:49
[2026-10-25 19:10:49,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:10:49,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:10:49,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:10:49,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:10:49,551.551 INFO    ] time= 25/10/2026 19:10:49
[2026-10-25 19:10:49,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:10:49,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:10:49,680.680 INFO    ] No existing commands found in stream
[2026-10-25 19:10:54,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:10:54,696.696 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 19:10:56,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:10:56,564.564 INFO    ] Checking for system updates...
[2026-10-25 19:10:56,605.605 INFO    ] 200
[2026-10-25 19:10:56,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:56,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:56,674.674 INFO    ] No update needed
[2026-10-25 19:10:56,677.677 INFO    ] Checking for camera pi updates...
[2026-10-25 19:10:56,711.711 INFO    ] 200
[2026-10-25 19:10:56,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:10:56,758.758 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:10:56,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:10:56,824.824 INFO    ] No camera update needed
[2026-10-25 19:10:56,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:10:56,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:10:56,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:10:56,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:10:58,881.881 INFO    ] ================================================
[2026-10-25 19:10:58,896.896 INFO    ] Launching Daemon at Sun Oct 25 19:10:58 IST 2026
[2026-10-25 19:10:58,908.908 INFO    ] ================================================
[2026-10-25 19:10:59,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:10:59
[2026-10-25 19:11:00,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:11:00,317.317 INFO    ] Initializing speech engine...
[2026-10-25 19:11:00,341.341 INFO    ] 2026-10-25 19:11:00
[2026-10-25 19:11:00,606.606 INFO    ] 2026-10-25 19:11:00
[2026-10-25 19:11:00,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:11:00,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:11:00,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:11:01,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:11:01,076.076 INFO    ] time= 25/10/2026 19:11:01
[2026-10-25 19:11:01,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:11:01,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:11:01,225.225 INFO    ] No existing commands found in stream
[2026-10-25 19:11:06,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:11:06,251.251 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 19:11:08,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:11:08,015.015 INFO    ] Checking for system updates...
[2026-10-25 19:11:08,051.051 INFO    ] 200
[2026-10-25 19:11:08,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:08,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:11:08,108.108 INFO    ] No update needed
[2026-10-25 19:11:08,111.111 INFO    ] Checking for camera pi updates...
[2026-10-25 19:11:08,148.148 INFO    ] 200
[2026-10-25 19:11:08,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:08,192.192 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:11:08,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:11:08,252.252 INFO    ] No camera update needed
[2026-10-25 19:11:08,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:11:08,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:11:08,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:11:08,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:11:10,307.307 INFO    ] ================================================
[2026-10-25 19:11:10,323.323 INFO    ] Launching Daemon at Sun Oct 25 19:11:10 IST 2026
[2026-10-25 19:11:10,335.335 INFO    ] ================================================
[2026-10-25 19:11:10,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:11:10
[2026-10-25 19:11:11,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:11:11,772.772 INFO    ] Initializing speech engine...
[2026-10-25 19:11:11,781.781 INFO    ] 2026-10-25 19:11:11
[2026-10-25 19:11:12,040.040 INFO    ] 2026-10-25 19:11:12
[2026-10-25 19:11:12,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:11:14,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:11:14,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:11:14,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:11:14,719.719 INFO    ] time= 25/10/2026 19:11:14
[2026-10-25 19:11:14,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:11:14,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:11:14,875.875 INFO    ] No existing commands found in stream
[2026-10-25 19:11:19,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:11:19,893.893 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 19:11:20,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:11:20,967.967 INFO    ] Checking for system updates...
[2026-10-25 19:11:21,004.004 INFO    ] 200
[2026-10-25 19:11:21,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:21,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:21,069.069 INFO    ] No update needed
[2026-10-25 19:11:21,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 19:11:21,109.109 INFO    ] 200
[2026-10-25 19:11:21,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:21,157.157 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:11:21,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:21,210.210 INFO    ] No camera update needed
[2026-10-25 19:11:21,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:11:21,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:11:21,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:11:21,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:11:23,268.268 INFO    ] ================================================
[2026-10-25 19:11:23,284.284 INFO    ] Launching Daemon at Sun Oct 25 19:11:23 IST 2026
[2026-10-25 19:11:23,295.295 INFO    ] ================================================
[2026-10-25 19:11:23,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:11:23
[2026-10-25 19:11:24,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:11:24,758.758 INFO    ] Initializing speech engine...
[2026-10-25 19:11:24,764.764 INFO    ] 2026-10-25 19:11:24
[2026-10-25 19:11:25,029.029 INFO    ] 2026-10-25 19:11:25
[2026-10-25 19:11:25,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:11:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:11:25,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:11:25,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:11:25,437.437 INFO    ] time= 25/10/2026 19:11:25
[2026-10-25 19:11:25,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:11:25,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:11:25,610.610 INFO    ] No existing commands found in stream
[2026-10-25 19:11:30,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:11:30,648.648 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 19:11:31,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:11:31,663.663 INFO    ] Checking for system updates...
[2026-10-25 19:11:31,706.706 INFO    ] 200
[2026-10-25 19:11:31,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:31,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:11:31,769.769 INFO    ] No update needed
[2026-10-25 19:11:31,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 19:11:31,822.822 INFO    ] 200
[2026-10-25 19:11:31,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:31,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:11:31,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:11:31,909.909 INFO    ] No camera update needed
[2026-10-25 19:11:31,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:11:31,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:11:31,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:11:31,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:11:33,966.966 INFO    ] ================================================
[2026-10-25 19:11:33,982.982 INFO    ] Launching Daemon at Sun Oct 25 19:11:33 IST 2026
[2026-10-25 19:11:33,993.993 INFO    ] ================================================
[2026-10-25 19:11:34,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:11:34
[2026-10-25 19:11:35,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:11:35,388.388 INFO    ] Initializing speech engine...
[2026-10-25 19:11:35,396.396 INFO    ] 2026-10-25 19:11:35
[2026-10-25 19:11:35,670.670 INFO    ] 2026-10-25 19:11:35
[2026-10-25 19:11:35,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:11:35,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:11:35,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:11:36,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:11:36,155.155 INFO    ] time= 25/10/2026 19:11:36
[2026-10-25 19:11:36,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:11:36,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:11:36,299.299 INFO    ] No existing commands found in stream
[2026-10-25 19:11:41,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:11:41,313.313 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 19:11:46,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:11:46,102.102 INFO    ] Checking for system updates...
[2026-10-25 19:11:46,138.138 INFO    ] 200
[2026-10-25 19:11:46,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:46,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:46,204.204 INFO    ] No update needed
[2026-10-25 19:11:46,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 19:11:46,246.246 INFO    ] 200
[2026-10-25 19:11:46,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:46,295.295 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:11:46,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:46,354.354 INFO    ] No camera update needed
[2026-10-25 19:11:46,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:11:46,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:11:46,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:11:46,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:11:48,410.410 INFO    ] ================================================
[2026-10-25 19:11:48,425.425 INFO    ] Launching Daemon at Sun Oct 25 19:11:48 IST 2026
[2026-10-25 19:11:48,436.436 INFO    ] ================================================
[2026-10-25 19:11:49,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:11:49
[2026-10-25 19:11:49,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:11:50,064.064 INFO    ] Initializing speech engine...
[2026-10-25 19:11:50,074.074 INFO    ] 2026-10-25 19:11:50
[2026-10-25 19:11:50,353.353 INFO    ] 2026-10-25 19:11:50
[2026-10-25 19:11:50,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:11:50,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:11:50,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:11:50,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:11:50,847.847 INFO    ] time= 25/10/2026 19:11:50
[2026-10-25 19:11:50,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:11:50,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:11:51,023.023 INFO    ] No existing commands found in stream
[2026-10-25 19:11:56,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:11:56,053.053 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 19:11:56,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:11:56,940.940 INFO    ] Checking for system updates...
[2026-10-25 19:11:56,977.977 INFO    ] 200
[2026-10-25 19:11:56,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:57,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:57,037.037 INFO    ] No update needed
[2026-10-25 19:11:57,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 19:11:57,075.075 INFO    ] 200
[2026-10-25 19:11:57,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:11:57,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:11:57,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:11:57,287.287 INFO    ] No camera update needed
[2026-10-25 19:11:57,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:11:57,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:11:57,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:11:57,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:11:59,347.347 INFO    ] ================================================
[2026-10-25 19:11:59,362.362 INFO    ] Launching Daemon at Sun Oct 25 19:11:59 IST 2026
[2026-10-25 19:11:59,373.373 INFO    ] ================================================
[2026-10-25 19:11:59,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:11:59
[2026-10-25 19:12:00,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:12:00,821.821 INFO    ] Initializing speech engine...
[2026-10-25 19:12:00,830.830 INFO    ] 2026-10-25 19:12:00
[2026-10-25 19:12:01,092.092 INFO    ] 2026-10-25 19:12:01
[2026-10-25 19:12:01,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:12:01,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:12:01,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:12:01,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:12:01,579.579 INFO    ] time= 25/10/2026 19:12:01
[2026-10-25 19:12:01,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:12:01,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:12:01,694.694 INFO    ] No existing commands found in stream
[2026-10-25 19:12:06,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:12:06,709.709 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-25 19:12:09,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:12:09,452.452 INFO    ] Checking for system updates...
[2026-10-25 19:12:09,488.488 INFO    ] 200
[2026-10-25 19:12:09,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:09,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:09,546.546 INFO    ] No update needed
[2026-10-25 19:12:09,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 19:12:09,583.583 INFO    ] 200
[2026-10-25 19:12:09,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:09,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:12:09,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:09,689.689 INFO    ] No camera update needed
[2026-10-25 19:12:09,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:12:09,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:12:09,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:12:09,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:12:11,748.748 INFO    ] ================================================
[2026-10-25 19:12:11,764.764 INFO    ] Launching Daemon at Sun Oct 25 19:12:11 IST 2026
[2026-10-25 19:12:11,774.774 INFO    ] ================================================
[2026-10-25 19:12:12,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:12:12
[2026-10-25 19:12:12,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:12:13,242.242 INFO    ] Initializing speech engine...
[2026-10-25 19:12:13,249.249 INFO    ] 2026-10-25 19:12:13
[2026-10-25 19:12:13,511.511 INFO    ] 2026-10-25 19:12:13
[2026-10-25 19:12:13,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:12:16,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:12:16,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:12:17,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:12:17,251.251 INFO    ] time= 25/10/2026 19:12:17
[2026-10-25 19:12:17,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:12:17,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:12:17,304.304 INFO    ] No existing commands found in stream
[2026-10-25 19:12:22,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:12:22,316.316 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 19:12:26,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:12:26,109.109 INFO    ] Checking for system updates...
[2026-10-25 19:12:26,146.146 INFO    ] 200
[2026-10-25 19:12:26,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:26,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:12:26,207.207 INFO    ] No update needed
[2026-10-25 19:12:26,209.209 INFO    ] Checking for camera pi updates...
[2026-10-25 19:12:26,248.248 INFO    ] 200
[2026-10-25 19:12:26,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:26,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:12:26,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:12:26,359.359 INFO    ] No camera update needed
[2026-10-25 19:12:26,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:12:26,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:12:26,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:12:26,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:12:28,420.420 INFO    ] ================================================
[2026-10-25 19:12:28,436.436 INFO    ] Launching Daemon at Sun Oct 25 19:12:28 IST 2026
[2026-10-25 19:12:28,447.447 INFO    ] ================================================
[2026-10-25 19:12:29,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:12:29
[2026-10-25 19:12:29,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:12:29,897.897 INFO    ] Initializing speech engine...
[2026-10-25 19:12:29,906.906 INFO    ] 2026-10-25 19:12:29
[2026-10-25 19:12:30,169.169 INFO    ] 2026-10-25 19:12:30
[2026-10-25 19:12:30,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:12:30,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:12:30,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:12:30,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:12:30,647.647 INFO    ] time= 25/10/2026 19:12:30
[2026-10-25 19:12:30,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:12:30,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:12:30,843.843 INFO    ] No existing commands found in stream
[2026-10-25 19:12:35,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:12:35,875.875 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 19:12:39,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:12:39,026.026 INFO    ] Checking for system updates...
[2026-10-25 19:12:39,063.063 INFO    ] 200
[2026-10-25 19:12:39,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:39,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:39,129.129 INFO    ] No update needed
[2026-10-25 19:12:39,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 19:12:39,167.167 INFO    ] 200
[2026-10-25 19:12:39,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:39,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:12:39,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:39,254.254 INFO    ] No camera update needed
[2026-10-25 19:12:39,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:12:39,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:12:39,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:12:39,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:12:41,313.313 INFO    ] ================================================
[2026-10-25 19:12:41,329.329 INFO    ] Launching Daemon at Sun Oct 25 19:12:41 IST 2026
[2026-10-25 19:12:41,339.339 INFO    ] ================================================
[2026-10-25 19:12:41,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:12:41
[2026-10-25 19:12:42,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:12:42,977.977 INFO    ] Initializing speech engine...
[2026-10-25 19:12:42,990.990 INFO    ] 2026-10-25 19:12:42
[2026-10-25 19:12:43,298.298 INFO    ] 2026-10-25 19:12:43
[2026-10-25 19:12:43,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:12:43,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:12:43,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:12:43,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:12:43,808.808 INFO    ] time= 25/10/2026 19:12:43
[2026-10-25 19:12:43,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:12:43,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:12:43,963.963 INFO    ] No existing commands found in stream
[2026-10-25 19:12:48,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:12:48,983.983 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 19:12:49,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:12:49,539.539 INFO    ] Checking for system updates...
[2026-10-25 19:12:49,576.576 INFO    ] 200
[2026-10-25 19:12:49,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:49,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:49,635.635 INFO    ] No update needed
[2026-10-25 19:12:49,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 19:12:49,674.674 INFO    ] 200
[2026-10-25 19:12:49,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:12:49,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:12:49,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:12:49,776.776 INFO    ] No camera update needed
[2026-10-25 19:12:49,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:12:49,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:12:49,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:12:49,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:12:51,834.834 INFO    ] ================================================
[2026-10-25 19:12:51,850.850 INFO    ] Launching Daemon at Sun Oct 25 19:12:51 IST 2026
[2026-10-25 19:12:51,860.860 INFO    ] ================================================
[2026-10-25 19:12:52,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:12:52
[2026-10-25 19:12:53,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:12:53,517.517 INFO    ] Initializing speech engine...
[2026-10-25 19:12:53,530.530 INFO    ] 2026-10-25 19:12:53
[2026-10-25 19:12:53,847.847 INFO    ] 2026-10-25 19:12:53
[2026-10-25 19:12:53,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:12:54,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:12:54,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:12:54,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:12:54,411.411 INFO    ] time= 25/10/2026 19:12:54
[2026-10-25 19:12:54,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:12:54,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:12:54,583.583 INFO    ] No existing commands found in stream
[2026-10-25 19:12:59,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:12:59,618.618 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 19:13:00,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:13:00,759.759 INFO    ] Checking for system updates...
[2026-10-25 19:13:00,796.796 INFO    ] 200
[2026-10-25 19:13:00,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:00,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:13:00,853.853 INFO    ] No update needed
[2026-10-25 19:13:00,856.856 INFO    ] Checking for camera pi updates...
[2026-10-25 19:13:00,892.892 INFO    ] 200
[2026-10-25 19:13:00,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:00,940.940 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:13:00,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:13:00,996.996 INFO    ] No camera update needed
[2026-10-25 19:13:00,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:13:01,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:13:01,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:13:01,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:13:03,053.053 INFO    ] ================================================
[2026-10-25 19:13:03,072.072 INFO    ] Launching Daemon at Sun Oct 25 19:13:03 IST 2026
[2026-10-25 19:13:03,088.088 INFO    ] ================================================
[2026-10-25 19:13:03,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:13:03
[2026-10-25 19:13:04,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:13:04,738.738 INFO    ] Initializing speech engine...
[2026-10-25 19:13:04,752.752 INFO    ] 2026-10-25 19:13:04
[2026-10-25 19:13:05,042.042 INFO    ] 2026-10-25 19:13:05
[2026-10-25 19:13:05,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:13:05,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:13:05,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:13:05,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:13:05,499.499 INFO    ] time= 25/10/2026 19:13:05
[2026-10-25 19:13:05,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:13:05,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:13:05,703.703 INFO    ] No existing commands found in stream
[2026-10-25 19:13:10,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:13:10,733.733 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 19:13:13,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:13:13,835.835 INFO    ] Checking for system updates...
[2026-10-25 19:13:13,874.874 INFO    ] 200
[2026-10-25 19:13:13,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:13,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:13,933.933 INFO    ] No update needed
[2026-10-25 19:13:13,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 19:13:13,971.971 INFO    ] 200
[2026-10-25 19:13:13,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:14,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:13:14,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:14,076.076 INFO    ] No camera update needed
[2026-10-25 19:13:14,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:13:14,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:13:14,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:13:14,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:13:16,134.134 INFO    ] ================================================
[2026-10-25 19:13:16,149.149 INFO    ] Launching Daemon at Sun Oct 25 19:13:16 IST 2026
[2026-10-25 19:13:16,161.161 INFO    ] ================================================
[2026-10-25 19:13:16,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:13:16
[2026-10-25 19:13:17,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:13:17,611.611 INFO    ] Initializing speech engine...
[2026-10-25 19:13:17,620.620 INFO    ] 2026-10-25 19:13:17
[2026-10-25 19:13:17,870.870 INFO    ] 2026-10-25 19:13:17
[2026-10-25 19:13:17,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:13:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:13:19,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:13:19,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:13:19,986.986 INFO    ] time= 25/10/2026 19:13:19
[2026-10-25 19:13:19,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:13:19,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:13:20,053.053 INFO    ] No existing commands found in stream
[2026-10-25 19:13:25,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:13:25,072.072 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 19:13:27,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:13:27,054.054 INFO    ] Checking for system updates...
[2026-10-25 19:13:27,091.091 INFO    ] 200
[2026-10-25 19:13:27,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:27,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:27,150.150 INFO    ] No update needed
[2026-10-25 19:13:27,153.153 INFO    ] Checking for camera pi updates...
[2026-10-25 19:13:27,191.191 INFO    ] 200
[2026-10-25 19:13:27,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:27,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:13:27,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:27,302.302 INFO    ] No camera update needed
[2026-10-25 19:13:27,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:13:27,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:13:27,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:13:27,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:13:29,359.359 INFO    ] ================================================
[2026-10-25 19:13:29,374.374 INFO    ] Launching Daemon at Sun Oct 25 19:13:29 IST 2026
[2026-10-25 19:13:29,385.385 INFO    ] ================================================
[2026-10-25 19:13:29,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:13:29
[2026-10-25 19:13:30,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:13:30,845.845 INFO    ] Initializing speech engine...
[2026-10-25 19:13:30,853.853 INFO    ] 2026-10-25 19:13:30
[2026-10-25 19:13:31,111.111 INFO    ] 2026-10-25 19:13:31
[2026-10-25 19:13:31,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:13:31,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:13:31,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:13:31,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:13:31,519.519 INFO    ] time= 25/10/2026 19:13:31
[2026-10-25 19:13:31,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:13:31,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:13:31,693.693 INFO    ] No existing commands found in stream
[2026-10-25 19:13:36,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:13:36,716.716 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 19:13:38,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:13:38,347.347 INFO    ] Checking for system updates...
[2026-10-25 19:13:38,383.383 INFO    ] 200
[2026-10-25 19:13:38,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:38,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:38,440.440 INFO    ] No update needed
[2026-10-25 19:13:38,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 19:13:38,481.481 INFO    ] 200
[2026-10-25 19:13:38,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:38,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:13:38,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:38,585.585 INFO    ] No camera update needed
[2026-10-25 19:13:38,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:13:38,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:13:38,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:13:38,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:13:40,640.640 INFO    ] ================================================
[2026-10-25 19:13:40,656.656 INFO    ] Launching Daemon at Sun Oct 25 19:13:40 IST 2026
[2026-10-25 19:13:40,667.667 INFO    ] ================================================
[2026-10-25 19:13:41,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:13:41
[2026-10-25 19:13:42,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:13:42,320.320 INFO    ] Initializing speech engine...
[2026-10-25 19:13:42,335.335 INFO    ] 2026-10-25 19:13:42
[2026-10-25 19:13:42,645.645 INFO    ] 2026-10-25 19:13:42
[2026-10-25 19:13:42,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:13:42,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:13:42,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:13:43,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:13:43,150.150 INFO    ] time= 25/10/2026 19:13:43
[2026-10-25 19:13:43,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:13:43,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:13:43,308.308 INFO    ] No existing commands found in stream
[2026-10-25 19:13:48,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:13:48,327.327 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 19:13:52,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:13:52,014.014 INFO    ] Checking for system updates...
[2026-10-25 19:13:52,050.050 INFO    ] 200
[2026-10-25 19:13:52,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:52,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:52,109.109 INFO    ] No update needed
[2026-10-25 19:13:52,111.111 INFO    ] Checking for camera pi updates...
[2026-10-25 19:13:52,145.145 INFO    ] 200
[2026-10-25 19:13:52,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:13:52,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:13:52,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:13:52,239.239 INFO    ] No camera update needed
[2026-10-25 19:13:52,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:13:52,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:13:52,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:13:52,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:13:54,295.295 INFO    ] ================================================
[2026-10-25 19:13:54,312.312 INFO    ] Launching Daemon at Sun Oct 25 19:13:54 IST 2026
[2026-10-25 19:13:54,323.323 INFO    ] ================================================
[2026-10-25 19:13:54,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:13:54
[2026-10-25 19:13:55,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:13:55,761.761 INFO    ] Initializing speech engine...
[2026-10-25 19:13:55,769.769 INFO    ] 2026-10-25 19:13:55
[2026-10-25 19:13:56,069.069 INFO    ] 2026-10-25 19:13:56
[2026-10-25 19:13:56,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:13:56,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:13:56,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:13:56,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:13:56,439.439 INFO    ] time= 25/10/2026 19:13:56
[2026-10-25 19:13:56,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:13:56,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:13:56,554.554 INFO    ] No existing commands found in stream
[2026-10-25 19:14:01,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:14:01,567.567 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 19:14:03,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:14:03,028.028 INFO    ] Checking for system updates...
[2026-10-25 19:14:03,067.067 INFO    ] 200
[2026-10-25 19:14:03,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:03,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:03,137.137 INFO    ] No update needed
[2026-10-25 19:14:03,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 19:14:03,195.195 INFO    ] 200
[2026-10-25 19:14:03,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:03,263.263 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:14:03,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:03,326.326 INFO    ] No camera update needed
[2026-10-25 19:14:03,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:14:03,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:14:03,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:14:03,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:14:05,381.381 INFO    ] ================================================
[2026-10-25 19:14:05,395.395 INFO    ] Launching Daemon at Sun Oct 25 19:14:05 IST 2026
[2026-10-25 19:14:05,406.406 INFO    ] ================================================
[2026-10-25 19:14:05,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:14:05
[2026-10-25 19:14:06,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:14:06,855.855 INFO    ] Initializing speech engine...
[2026-10-25 19:14:06,880.880 INFO    ] 2026-10-25 19:14:06
[2026-10-25 19:14:07,157.157 INFO    ] 2026-10-25 19:14:07
[2026-10-25 19:14:07,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:14:07,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:14:07,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:14:07,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:14:07,516.516 INFO    ] time= 25/10/2026 19:14:07
[2026-10-25 19:14:07,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:14:07,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:14:07,600.600 INFO    ] No existing commands found in stream
[2026-10-25 19:14:12,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:14:12,651.651 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 19:14:16,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:14:16,474.474 INFO    ] Checking for system updates...
[2026-10-25 19:14:16,510.510 INFO    ] 200
[2026-10-25 19:14:16,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:16,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:16,576.576 INFO    ] No update needed
[2026-10-25 19:14:16,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 19:14:16,616.616 INFO    ] 200
[2026-10-25 19:14:16,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:16,659.659 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:14:16,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:16,713.713 INFO    ] No camera update needed
[2026-10-25 19:14:16,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:14:16,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:14:16,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:14:16,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:14:18,768.768 INFO    ] ================================================
[2026-10-25 19:14:18,783.783 INFO    ] Launching Daemon at Sun Oct 25 19:14:18 IST 2026
[2026-10-25 19:14:18,794.794 INFO    ] ================================================
[2026-10-25 19:14:19,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:14:19
[2026-10-25 19:14:19,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:14:20,246.246 INFO    ] Initializing speech engine...
[2026-10-25 19:14:20,253.253 INFO    ] 2026-10-25 19:14:20
[2026-10-25 19:14:20,515.515 INFO    ] 2026-10-25 19:14:20
[2026-10-25 19:14:20,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:14:21,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:14:21,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:14:22,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:14:22,161.161 INFO    ] time= 25/10/2026 19:14:22
[2026-10-25 19:14:22,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:14:22,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:14:22,273.273 INFO    ] No existing commands found in stream
[2026-10-25 19:14:27,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:14:27,287.287 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 19:14:28,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:14:28,122.122 INFO    ] Checking for system updates...
[2026-10-25 19:14:28,159.159 INFO    ] 200
[2026-10-25 19:14:28,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:28,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:14:28,224.224 INFO    ] No update needed
[2026-10-25 19:14:28,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 19:14:28,262.262 INFO    ] 200
[2026-10-25 19:14:28,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:28,309.309 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:14:28,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:14:28,362.362 INFO    ] No camera update needed
[2026-10-25 19:14:28,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:14:28,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:14:28,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:14:28,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:14:30,418.418 INFO    ] ================================================
[2026-10-25 19:14:30,433.433 INFO    ] Launching Daemon at Sun Oct 25 19:14:30 IST 2026
[2026-10-25 19:14:30,447.447 INFO    ] ================================================
[2026-10-25 19:14:31,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:14:31
[2026-10-25 19:14:31,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:14:31,952.952 INFO    ] Initializing speech engine...
[2026-10-25 19:14:31,961.961 INFO    ] 2026-10-25 19:14:31
[2026-10-25 19:14:32,257.257 INFO    ] 2026-10-25 19:14:32
[2026-10-25 19:14:32,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:14:32,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:14:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:14:32,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:14:32,676.676 INFO    ] time= 25/10/2026 19:14:32
[2026-10-25 19:14:32,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:14:32,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:14:32,766.766 INFO    ] No existing commands found in stream
[2026-10-25 19:14:37,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:14:37,776.776 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-25 19:14:40,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:14:40,109.109 INFO    ] Checking for system updates...
[2026-10-25 19:14:40,150.150 INFO    ] 200
[2026-10-25 19:14:40,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:40,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:14:40,208.208 INFO    ] No update needed
[2026-10-25 19:14:40,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 19:14:40,246.246 INFO    ] 200
[2026-10-25 19:14:40,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:40,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:14:40,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:14:40,354.354 INFO    ] No camera update needed
[2026-10-25 19:14:40,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:14:40,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:14:40,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:14:40,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:14:42,412.412 INFO    ] ================================================
[2026-10-25 19:14:42,427.427 INFO    ] Launching Daemon at Sun Oct 25 19:14:42 IST 2026
[2026-10-25 19:14:42,439.439 INFO    ] ================================================
[2026-10-25 19:14:43,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:14:43
[2026-10-25 19:14:43,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:14:43,848.848 INFO    ] Initializing speech engine...
[2026-10-25 19:14:43,871.871 INFO    ] 2026-10-25 19:14:43
[2026-10-25 19:14:44,127.127 INFO    ] 2026-10-25 19:14:44
[2026-10-25 19:14:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:14:44,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:14:44,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:14:44,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:14:44,588.588 INFO    ] time= 25/10/2026 19:14:44
[2026-10-25 19:14:44,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:14:44,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:14:44,761.761 INFO    ] No existing commands found in stream
[2026-10-25 19:14:49,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:14:49,776.776 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 19:14:53,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:14:53,821.821 INFO    ] Checking for system updates...
[2026-10-25 19:14:53,863.863 INFO    ] 200
[2026-10-25 19:14:53,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:53,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:53,928.928 INFO    ] No update needed
[2026-10-25 19:14:53,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 19:14:53,971.971 INFO    ] 200
[2026-10-25 19:14:53,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:14:54,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:14:54,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:14:54,088.088 INFO    ] No camera update needed
[2026-10-25 19:14:54,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:14:54,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:14:54,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:14:54,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:14:56,145.145 INFO    ] ================================================
[2026-10-25 19:14:56,160.160 INFO    ] Launching Daemon at Sun Oct 25 19:14:56 IST 2026
[2026-10-25 19:14:56,171.171 INFO    ] ================================================
[2026-10-25 19:14:56,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:14:56
[2026-10-25 19:14:57,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:14:57,898.898 INFO    ] Initializing speech engine...
[2026-10-25 19:14:57,907.907 INFO    ] 2026-10-25 19:14:57
[2026-10-25 19:14:58,187.187 INFO    ] 2026-10-25 19:14:58
[2026-10-25 19:14:58,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:14:58,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:14:58,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:14:58,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:14:58,751.751 INFO    ] time= 25/10/2026 19:14:58
[2026-10-25 19:14:58,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:14:58,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:14:58,889.889 INFO    ] No existing commands found in stream
[2026-10-25 19:15:03,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:15:03,923.923 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 19:15:06,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:15:06,454.454 INFO    ] Checking for system updates...
[2026-10-25 19:15:06,490.490 INFO    ] 200
[2026-10-25 19:15:06,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:06,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:06,555.555 INFO    ] No update needed
[2026-10-25 19:15:06,558.558 INFO    ] Checking for camera pi updates...
[2026-10-25 19:15:06,596.596 INFO    ] 200
[2026-10-25 19:15:06,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:06,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:15:06,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:06,693.693 INFO    ] No camera update needed
[2026-10-25 19:15:06,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:15:06,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:15:06,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:15:06,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:15:08,749.749 INFO    ] ================================================
[2026-10-25 19:15:08,764.764 INFO    ] Launching Daemon at Sun Oct 25 19:15:08 IST 2026
[2026-10-25 19:15:08,776.776 INFO    ] ================================================
[2026-10-25 19:15:09,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:15:09
[2026-10-25 19:15:09,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:15:10,186.186 INFO    ] Initializing speech engine...
[2026-10-25 19:15:10,192.192 INFO    ] 2026-10-25 19:15:10
[2026-10-25 19:15:10,496.496 INFO    ] 2026-10-25 19:15:10
[2026-10-25 19:15:10,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:15:10,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:15:10,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:15:10,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:15:10,885.885 INFO    ] time= 25/10/2026 19:15:10
[2026-10-25 19:15:10,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:15:10,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:15:11,002.002 INFO    ] No existing commands found in stream
[2026-10-25 19:15:16,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:15:16,029.029 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 19:15:18,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:15:18,587.587 INFO    ] Checking for system updates...
[2026-10-25 19:15:18,622.622 INFO    ] 200
[2026-10-25 19:15:18,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:18,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:15:18,688.688 INFO    ] No update needed
[2026-10-25 19:15:18,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 19:15:18,729.729 INFO    ] 200
[2026-10-25 19:15:18,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:18,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:15:18,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:15:18,834.834 INFO    ] No camera update needed
[2026-10-25 19:15:18,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:15:18,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:15:18,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:15:18,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:15:20,889.889 INFO    ] ================================================
[2026-10-25 19:15:20,904.904 INFO    ] Launching Daemon at Sun Oct 25 19:15:20 IST 2026
[2026-10-25 19:15:20,915.915 INFO    ] ================================================
[2026-10-25 19:15:21,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:15:21
[2026-10-25 19:15:22,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:15:22,325.325 INFO    ] Initializing speech engine...
[2026-10-25 19:15:22,344.344 INFO    ] 2026-10-25 19:15:22
[2026-10-25 19:15:22,595.595 INFO    ] 2026-10-25 19:15:22
[2026-10-25 19:15:22,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:15:24,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:15:24,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:15:25,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:15:25,448.448 INFO    ] time= 25/10/2026 19:15:25
[2026-10-25 19:15:25,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:15:25,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:15:25,531.531 INFO    ] No existing commands found in stream
[2026-10-25 19:15:30,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:15:30,543.543 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 19:15:31,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:15:31,147.147 INFO    ] Checking for system updates...
[2026-10-25 19:15:31,187.187 INFO    ] 200
[2026-10-25 19:15:31,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:31,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:31,245.245 INFO    ] No update needed
[2026-10-25 19:15:31,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 19:15:31,282.282 INFO    ] 200
[2026-10-25 19:15:31,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:31,331.331 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:15:31,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:31,391.391 INFO    ] No camera update needed
[2026-10-25 19:15:31,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:15:31,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:15:31,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:15:31,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:15:33,448.448 INFO    ] ================================================
[2026-10-25 19:15:33,464.464 INFO    ] Launching Daemon at Sun Oct 25 19:15:33 IST 2026
[2026-10-25 19:15:33,475.475 INFO    ] ================================================
[2026-10-25 19:15:34,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:15:34
[2026-10-25 19:15:34,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:15:34,929.929 INFO    ] Initializing speech engine...
[2026-10-25 19:15:34,938.938 INFO    ] 2026-10-25 19:15:34
[2026-10-25 19:15:35,208.208 INFO    ] 2026-10-25 19:15:35
[2026-10-25 19:15:35,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:15:35,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:15:35,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:15:35,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:15:35,713.713 INFO    ] time= 25/10/2026 19:15:35
[2026-10-25 19:15:35,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:15:35,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:15:35,909.909 INFO    ] No existing commands found in stream
[2026-10-25 19:15:40,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:15:40,930.930 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 19:15:42,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:15:42,315.315 INFO    ] Checking for system updates...
[2026-10-25 19:15:42,354.354 INFO    ] 200
[2026-10-25 19:15:42,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:42,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:15:42,412.412 INFO    ] No update needed
[2026-10-25 19:15:42,415.415 INFO    ] Checking for camera pi updates...
[2026-10-25 19:15:42,449.449 INFO    ] 200
[2026-10-25 19:15:42,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:42,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:15:42,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:15:42,564.564 INFO    ] No camera update needed
[2026-10-25 19:15:42,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:15:42,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:15:42,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:15:42,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:15:44,622.622 INFO    ] ================================================
[2026-10-25 19:15:44,638.638 INFO    ] Launching Daemon at Sun Oct 25 19:15:44 IST 2026
[2026-10-25 19:15:44,649.649 INFO    ] ================================================
[2026-10-25 19:15:45,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:15:45
[2026-10-25 19:15:45,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:15:46,106.106 INFO    ] Initializing speech engine...
[2026-10-25 19:15:46,116.116 INFO    ] 2026-10-25 19:15:46
[2026-10-25 19:15:46,378.378 INFO    ] 2026-10-25 19:15:46
[2026-10-25 19:15:46,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:15:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:15:46,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:15:46,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:15:46,735.735 INFO    ] time= 25/10/2026 19:15:46
[2026-10-25 19:15:46,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:15:46,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:15:46,905.905 INFO    ] No existing commands found in stream
[2026-10-25 19:15:51,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:15:51,936.936 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 19:15:56,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:15:56,754.754 INFO    ] Checking for system updates...
[2026-10-25 19:15:56,790.790 INFO    ] 200
[2026-10-25 19:15:56,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:56,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:56,848.848 INFO    ] No update needed
[2026-10-25 19:15:56,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 19:15:56,890.890 INFO    ] 200
[2026-10-25 19:15:56,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:15:56,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:15:56,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:15:57,001.001 INFO    ] No camera update needed
[2026-10-25 19:15:57,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:15:57,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:15:57,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:15:57,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:15:59,060.060 INFO    ] ================================================
[2026-10-25 19:15:59,076.076 INFO    ] Launching Daemon at Sun Oct 25 19:15:59 IST 2026
[2026-10-25 19:15:59,088.088 INFO    ] ================================================
[2026-10-25 19:15:59,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:15:59
[2026-10-25 19:16:00,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:16:00,548.548 INFO    ] Initializing speech engine...
[2026-10-25 19:16:00,555.555 INFO    ] 2026-10-25 19:16:00
[2026-10-25 19:16:00,867.867 INFO    ] 2026-10-25 19:16:00
[2026-10-25 19:16:00,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:16:01,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:16:01,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:16:01,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:16:01,526.526 INFO    ] time= 25/10/2026 19:16:01
[2026-10-25 19:16:01,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:16:01,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:16:01,637.637 INFO    ] No existing commands found in stream
[2026-10-25 19:16:06,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:16:06,661.661 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 19:16:09,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:16:09,909.909 INFO    ] Checking for system updates...
[2026-10-25 19:16:09,946.946 INFO    ] 200
[2026-10-25 19:16:09,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:10,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:16:10,007.007 INFO    ] No update needed
[2026-10-25 19:16:10,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 19:16:10,048.048 INFO    ] 200
[2026-10-25 19:16:10,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:10,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:16:10,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:16:10,263.263 INFO    ] No camera update needed
[2026-10-25 19:16:10,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:16:10,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:16:10,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:16:10,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:16:12,322.322 INFO    ] ================================================
[2026-10-25 19:16:12,337.337 INFO    ] Launching Daemon at Sun Oct 25 19:16:12 IST 2026
[2026-10-25 19:16:12,348.348 INFO    ] ================================================
[2026-10-25 19:16:12,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:16:12
[2026-10-25 19:16:13,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:16:13,972.972 INFO    ] Initializing speech engine...
[2026-10-25 19:16:13,986.986 INFO    ] 2026-10-25 19:16:13
[2026-10-25 19:16:14,293.293 INFO    ] 2026-10-25 19:16:14
[2026-10-25 19:16:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:16:14,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:16:14,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:16:14,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:16:14,802.802 INFO    ] time= 25/10/2026 19:16:14
[2026-10-25 19:16:14,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:16:14,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:16:14,959.959 INFO    ] No existing commands found in stream
[2026-10-25 19:16:19,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:16:19,986.986 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 19:16:22,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:16:22,956.956 INFO    ] Checking for system updates...
[2026-10-25 19:16:22,997.997 INFO    ] 200
[2026-10-25 19:16:23,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:23,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:23,057.057 INFO    ] No update needed
[2026-10-25 19:16:23,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 19:16:23,098.098 INFO    ] 200
[2026-10-25 19:16:23,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:23,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:16:23,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:23,214.214 INFO    ] No camera update needed
[2026-10-25 19:16:23,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:16:23,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:16:23,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:16:23,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:16:25,273.273 INFO    ] ================================================
[2026-10-25 19:16:25,288.288 INFO    ] Launching Daemon at Sun Oct 25 19:16:25 IST 2026
[2026-10-25 19:16:25,299.299 INFO    ] ================================================
[2026-10-25 19:16:25,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:16:25
[2026-10-25 19:16:26,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:16:26,721.721 INFO    ] Initializing speech engine...
[2026-10-25 19:16:26,728.728 INFO    ] 2026-10-25 19:16:26
[2026-10-25 19:16:26,985.985 INFO    ] 2026-10-25 19:16:26
[2026-10-25 19:16:27,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:16:27,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:16:27,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:16:27,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:16:27,576.576 INFO    ] time= 25/10/2026 19:16:27
[2026-10-25 19:16:27,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:16:27,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:16:27,742.742 INFO    ] No existing commands found in stream
[2026-10-25 19:16:32,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:16:32,775.775 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 19:16:35,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:16:35,136.136 INFO    ] Checking for system updates...
[2026-10-25 19:16:35,172.172 INFO    ] 200
[2026-10-25 19:16:35,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:35,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:16:35,237.237 INFO    ] No update needed
[2026-10-25 19:16:35,239.239 INFO    ] Checking for camera pi updates...
[2026-10-25 19:16:35,277.277 INFO    ] 200
[2026-10-25 19:16:35,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:35,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:16:35,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:16:35,373.373 INFO    ] No camera update needed
[2026-10-25 19:16:35,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:16:35,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:16:35,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:16:35,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:16:37,429.429 INFO    ] ================================================
[2026-10-25 19:16:37,444.444 INFO    ] Launching Daemon at Sun Oct 25 19:16:37 IST 2026
[2026-10-25 19:16:37,455.455 INFO    ] ================================================
[2026-10-25 19:16:38,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:16:38
[2026-10-25 19:16:38,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:16:38,958.958 INFO    ] Initializing speech engine...
[2026-10-25 19:16:38,972.972 INFO    ] 2026-10-25 19:16:38
[2026-10-25 19:16:39,259.259 INFO    ] 2026-10-25 19:16:39
[2026-10-25 19:16:39,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:16:39,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:16:39,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:16:39,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:16:39,881.881 INFO    ] time= 25/10/2026 19:16:39
[2026-10-25 19:16:39,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:16:39,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:16:40,108.108 INFO    ] No existing commands found in stream
[2026-10-25 19:16:45,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:16:45,137.137 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 19:16:47,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:16:47,960.960 INFO    ] Checking for system updates...
[2026-10-25 19:16:47,997.997 INFO    ] 200
[2026-10-25 19:16:48,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:48,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:48,058.058 INFO    ] No update needed
[2026-10-25 19:16:48,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 19:16:48,095.095 INFO    ] 200
[2026-10-25 19:16:48,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:48,140.140 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:16:48,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:48,211.211 INFO    ] No camera update needed
[2026-10-25 19:16:48,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:16:48,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:16:48,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:16:48,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:16:50,269.269 INFO    ] ================================================
[2026-10-25 19:16:50,285.285 INFO    ] Launching Daemon at Sun Oct 25 19:16:50 IST 2026
[2026-10-25 19:16:50,295.295 INFO    ] ================================================
[2026-10-25 19:16:50,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:16:50
[2026-10-25 19:16:51,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:16:51,699.699 INFO    ] Initializing speech engine...
[2026-10-25 19:16:51,722.722 INFO    ] 2026-10-25 19:16:51
[2026-10-25 19:16:51,977.977 INFO    ] 2026-10-25 19:16:51
[2026-10-25 19:16:52,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:16:52,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:16:52,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:16:52,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:16:52,352.352 INFO    ] time= 25/10/2026 19:16:52
[2026-10-25 19:16:52,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:16:52,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:16:52,441.441 INFO    ] No existing commands found in stream
[2026-10-25 19:16:57,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:16:57,456.456 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-25 19:16:59,136.136 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:16:59,139.139 INFO    ] Checking for system updates...
[2026-10-25 19:16:59,175.175 INFO    ] 200
[2026-10-25 19:16:59,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:59,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:59,234.234 INFO    ] No update needed
[2026-10-25 19:16:59,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 19:16:59,273.273 INFO    ] 200
[2026-10-25 19:16:59,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:16:59,320.320 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:16:59,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:16:59,373.373 INFO    ] No camera update needed
[2026-10-25 19:16:59,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:16:59,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:16:59,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:16:59,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:17:01,449.449 INFO    ] ================================================
[2026-10-25 19:17:01,479.479 INFO    ] Launching Daemon at Sun Oct 25 19:17:01 IST 2026
[2026-10-25 19:17:01,498.498 INFO    ] ================================================
[2026-10-25 19:17:02,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:17:02
[2026-10-25 19:17:02,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:17:03,205.205 INFO    ] Initializing speech engine...
[2026-10-25 19:17:03,218.218 INFO    ] 2026-10-25 19:17:03
[2026-10-25 19:17:03,501.501 INFO    ] 2026-10-25 19:17:03
[2026-10-25 19:17:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:17:03,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:17:03,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:17:03,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:17:03,996.996 INFO    ] time= 25/10/2026 19:17:03
[2026-10-25 19:17:04,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:17:04,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:17:04,162.162 INFO    ] No existing commands found in stream
[2026-10-25 19:17:09,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:17:09,181.181 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 19:17:12,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:17:12,123.123 INFO    ] Checking for system updates...
[2026-10-25 19:17:12,160.160 INFO    ] 200
[2026-10-25 19:17:12,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:12,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:17:12,219.219 INFO    ] No update needed
[2026-10-25 19:17:12,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 19:17:12,258.258 INFO    ] 200
[2026-10-25 19:17:12,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:12,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:17:12,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:17:12,381.381 INFO    ] No camera update needed
[2026-10-25 19:17:12,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:17:12,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:17:12,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:17:12,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:17:14,440.440 INFO    ] ================================================
[2026-10-25 19:17:14,455.455 INFO    ] Launching Daemon at Sun Oct 25 19:17:14 IST 2026
[2026-10-25 19:17:14,466.466 INFO    ] ================================================
[2026-10-25 19:17:15,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:17:15
[2026-10-25 19:17:15,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:17:15,881.881 INFO    ] Initializing speech engine...
[2026-10-25 19:17:15,904.904 INFO    ] 2026-10-25 19:17:15
[2026-10-25 19:17:16,162.162 INFO    ] 2026-10-25 19:17:16
[2026-10-25 19:17:16,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:17:16,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:17:16,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:17:16,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:17:16,526.526 INFO    ] time= 25/10/2026 19:17:16
[2026-10-25 19:17:16,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:17:16,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:17:16,635.635 INFO    ] No existing commands found in stream
[2026-10-25 19:17:21,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:17:21,650.650 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 19:17:24,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:17:24,799.799 INFO    ] Checking for system updates...
[2026-10-25 19:17:24,836.836 INFO    ] 200
[2026-10-25 19:17:24,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:24,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:17:24,899.899 INFO    ] No update needed
[2026-10-25 19:17:24,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 19:17:24,937.937 INFO    ] 200
[2026-10-25 19:17:24,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:24,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:17:25,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:17:25,036.036 INFO    ] No camera update needed
[2026-10-25 19:17:25,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:17:25,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:17:25,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:17:25,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:17:27,094.094 INFO    ] ================================================
[2026-10-25 19:17:27,110.110 INFO    ] Launching Daemon at Sun Oct 25 19:17:27 IST 2026
[2026-10-25 19:17:27,121.121 INFO    ] ================================================
[2026-10-25 19:17:27,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:17:27
[2026-10-25 19:17:28,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:17:28,635.635 INFO    ] Initializing speech engine...
[2026-10-25 19:17:28,645.645 INFO    ] 2026-10-25 19:17:28
[2026-10-25 19:17:28,909.909 INFO    ] 2026-10-25 19:17:28
[2026-10-25 19:17:28,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:17:29,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:17:29,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:17:29,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:17:29,605.605 INFO    ] time= 25/10/2026 19:17:29
[2026-10-25 19:17:29,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:17:29,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:17:29,816.816 INFO    ] No existing commands found in stream
[2026-10-25 19:17:34,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:17:34,846.846 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 19:17:36,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:17:36,561.561 INFO    ] Checking for system updates...
[2026-10-25 19:17:36,597.597 INFO    ] 200
[2026-10-25 19:17:36,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:36,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:17:36,662.662 INFO    ] No update needed
[2026-10-25 19:17:36,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 19:17:36,702.702 INFO    ] 200
[2026-10-25 19:17:36,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:36,751.751 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:17:36,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:17:36,810.810 INFO    ] No camera update needed
[2026-10-25 19:17:36,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:17:36,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:17:36,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:17:36,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:17:38,866.866 INFO    ] ================================================
[2026-10-25 19:17:38,882.882 INFO    ] Launching Daemon at Sun Oct 25 19:17:38 IST 2026
[2026-10-25 19:17:38,896.896 INFO    ] ================================================
[2026-10-25 19:17:39,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:17:39
[2026-10-25 19:17:40,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:17:40,339.339 INFO    ] Initializing speech engine...
[2026-10-25 19:17:40,351.351 INFO    ] 2026-10-25 19:17:40
[2026-10-25 19:17:40,610.610 INFO    ] 2026-10-25 19:17:40
[2026-10-25 19:17:40,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:17:40,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:17:40,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:17:41,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:17:41,066.066 INFO    ] time= 25/10/2026 19:17:41
[2026-10-25 19:17:41,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:17:41,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:17:41,220.220 INFO    ] No existing commands found in stream
[2026-10-25 19:17:46,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:17:46,234.234 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 19:17:47,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:17:47,452.452 INFO    ] Checking for system updates...
[2026-10-25 19:17:47,488.488 INFO    ] 200
[2026-10-25 19:17:47,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:47,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:17:47,546.546 INFO    ] No update needed
[2026-10-25 19:17:47,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 19:17:47,582.582 INFO    ] 200
[2026-10-25 19:17:47,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:17:47,626.626 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:17:47,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:17:47,676.676 INFO    ] No camera update needed
[2026-10-25 19:17:47,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:17:47,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:17:47,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:17:47,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:17:49,734.734 INFO    ] ================================================
[2026-10-25 19:17:49,749.749 INFO    ] Launching Daemon at Sun Oct 25 19:17:49 IST 2026
[2026-10-25 19:17:49,760.760 INFO    ] ================================================
[2026-10-25 19:17:50,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:17:50
[2026-10-25 19:17:51,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:17:51,386.386 INFO    ] Initializing speech engine...
[2026-10-25 19:17:51,398.398 INFO    ] 2026-10-25 19:17:51
[2026-10-25 19:17:51,691.691 INFO    ] 2026-10-25 19:17:51
[2026-10-25 19:17:51,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:17:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:17:52,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:17:52,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:17:52,238.238 INFO    ] time= 25/10/2026 19:17:52
[2026-10-25 19:17:52,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:17:52,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:17:52,373.373 INFO    ] No existing commands found in stream
[2026-10-25 19:17:57,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:17:57,402.402 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 19:18:01,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:18:01,191.191 INFO    ] Checking for system updates...
[2026-10-25 19:18:01,270.270 INFO    ] 200
[2026-10-25 19:18:01,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:01,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:01,394.394 INFO    ] No update needed
[2026-10-25 19:18:01,398.398 INFO    ] Checking for camera pi updates...
[2026-10-25 19:18:01,463.463 INFO    ] 200
[2026-10-25 19:18:01,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:01,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:18:01,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:01,564.564 INFO    ] No camera update needed
[2026-10-25 19:18:01,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:18:01,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:18:01,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:18:01,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:18:03,640.640 INFO    ] ================================================
[2026-10-25 19:18:03,655.655 INFO    ] Launching Daemon at Sun Oct 25 19:18:03 IST 2026
[2026-10-25 19:18:03,666.666 INFO    ] ================================================
[2026-10-25 19:18:04,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:18:04
[2026-10-25 19:18:05,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:18:05,387.387 INFO    ] Initializing speech engine...
[2026-10-25 19:18:05,401.401 INFO    ] 2026-10-25 19:18:05
[2026-10-25 19:18:05,716.716 INFO    ] 2026-10-25 19:18:05
[2026-10-25 19:18:05,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:18:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:18:06,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:18:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:18:06,231.231 INFO    ] time= 25/10/2026 19:18:06
[2026-10-25 19:18:06,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:18:06,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:18:06,381.381 INFO    ] No existing commands found in stream
[2026-10-25 19:18:11,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:18:11,401.401 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 19:18:13,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:18:13,480.480 INFO    ] Checking for system updates...
[2026-10-25 19:18:13,522.522 INFO    ] 200
[2026-10-25 19:18:13,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:13,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:13,590.590 INFO    ] No update needed
[2026-10-25 19:18:13,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 19:18:13,632.632 INFO    ] 200
[2026-10-25 19:18:13,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:13,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:18:13,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:13,853.853 INFO    ] No camera update needed
[2026-10-25 19:18:13,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:18:13,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:18:13,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:18:13,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:18:15,913.913 INFO    ] ================================================
[2026-10-25 19:18:15,928.928 INFO    ] Launching Daemon at Sun Oct 25 19:18:15 IST 2026
[2026-10-25 19:18:15,939.939 INFO    ] ================================================
[2026-10-25 19:18:16,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:18:16
[2026-10-25 19:18:17,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:18:17,585.585 INFO    ] Initializing speech engine...
[2026-10-25 19:18:17,591.591 INFO    ] 2026-10-25 19:18:17
[2026-10-25 19:18:17,878.878 INFO    ] 2026-10-25 19:18:17
[2026-10-25 19:18:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:18:18,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:18:18,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:18:18,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:18:18,405.405 INFO    ] time= 25/10/2026 19:18:18
[2026-10-25 19:18:18,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:18:18,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:18:18,546.546 INFO    ] No existing commands found in stream
[2026-10-25 19:18:23,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:18:23,574.574 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 19:18:25,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:18:25,048.048 INFO    ] Checking for system updates...
[2026-10-25 19:18:25,085.085 INFO    ] 200
[2026-10-25 19:18:25,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:25,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:18:25,145.145 INFO    ] No update needed
[2026-10-25 19:18:25,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 19:18:25,187.187 INFO    ] 200
[2026-10-25 19:18:25,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:25,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:18:25,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:18:25,283.283 INFO    ] No camera update needed
[2026-10-25 19:18:25,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:18:25,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:18:25,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:18:25,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:18:27,343.343 INFO    ] ================================================
[2026-10-25 19:18:27,357.357 INFO    ] Launching Daemon at Sun Oct 25 19:18:27 IST 2026
[2026-10-25 19:18:27,368.368 INFO    ] ================================================
[2026-10-25 19:18:28,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:18:27
[2026-10-25 19:18:28,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:18:28,876.876 INFO    ] Initializing speech engine...
[2026-10-25 19:18:28,883.883 INFO    ] 2026-10-25 19:18:28
[2026-10-25 19:18:29,183.183 INFO    ] 2026-10-25 19:18:29
[2026-10-25 19:18:29,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:18:31,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:18:31,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:18:32,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:18:32,065.065 INFO    ] time= 25/10/2026 19:18:32
[2026-10-25 19:18:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:18:32,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:18:32,212.212 INFO    ] No existing commands found in stream
[2026-10-25 19:18:37,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:18:37,226.226 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 19:18:39,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:18:39,309.309 INFO    ] Checking for system updates...
[2026-10-25 19:18:39,346.346 INFO    ] 200
[2026-10-25 19:18:39,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:39,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:39,405.405 INFO    ] No update needed
[2026-10-25 19:18:39,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 19:18:39,445.445 INFO    ] 200
[2026-10-25 19:18:39,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:39,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:18:39,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:18:39,548.548 INFO    ] No camera update needed
[2026-10-25 19:18:39,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:18:39,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:18:39,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:18:39,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:18:41,604.604 INFO    ] ================================================
[2026-10-25 19:18:41,619.619 INFO    ] Launching Daemon at Sun Oct 25 19:18:41 IST 2026
[2026-10-25 19:18:41,630.630 INFO    ] ================================================
[2026-10-25 19:18:42,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:18:42
[2026-10-25 19:18:42,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:18:43,030.030 INFO    ] Initializing speech engine...
[2026-10-25 19:18:43,038.038 INFO    ] 2026-10-25 19:18:43
[2026-10-25 19:18:43,331.331 INFO    ] 2026-10-25 19:18:43
[2026-10-25 19:18:43,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:18:43,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:18:43,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:18:43,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:18:43,708.708 INFO    ] time= 25/10/2026 19:18:43
[2026-10-25 19:18:43,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:18:43,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:18:43,832.832 INFO    ] No existing commands found in stream
[2026-10-25 19:18:48,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:18:48,847.847 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 19:18:49,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:18:49,612.612 INFO    ] Checking for system updates...
[2026-10-25 19:18:49,648.648 INFO    ] 200
[2026-10-25 19:18:49,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:49,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:18:49,706.706 INFO    ] No update needed
[2026-10-25 19:18:49,709.709 INFO    ] Checking for camera pi updates...
[2026-10-25 19:18:49,743.743 INFO    ] 200
[2026-10-25 19:18:49,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:18:49,786.786 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:18:49,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:18:49,843.843 INFO    ] No camera update needed
[2026-10-25 19:18:49,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:18:49,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:18:49,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:18:49,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:18:51,900.900 INFO    ] ================================================
[2026-10-25 19:18:51,915.915 INFO    ] Launching Daemon at Sun Oct 25 19:18:51 IST 2026
[2026-10-25 19:18:51,926.926 INFO    ] ================================================
[2026-10-25 19:18:52,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:18:52
[2026-10-25 19:18:53,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:18:53,381.381 INFO    ] Initializing speech engine...
[2026-10-25 19:18:53,390.390 INFO    ] 2026-10-25 19:18:53
[2026-10-25 19:18:53,640.640 INFO    ] 2026-10-25 19:18:53
[2026-10-25 19:18:53,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:18:53,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:18:53,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:18:54,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:18:54,085.085 INFO    ] time= 25/10/2026 19:18:54
[2026-10-25 19:18:54,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:18:54,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:18:54,261.261 INFO    ] No existing commands found in stream
[2026-10-25 19:18:59,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:18:59,275.275 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 19:19:03,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:19:03,383.383 INFO    ] Checking for system updates...
[2026-10-25 19:19:03,423.423 INFO    ] 200
[2026-10-25 19:19:03,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:03,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:19:03,517.517 INFO    ] No update needed
[2026-10-25 19:19:03,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 19:19:03,566.566 INFO    ] 200
[2026-10-25 19:19:03,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:03,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:19:03,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:19:03,680.680 INFO    ] No camera update needed
[2026-10-25 19:19:03,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:19:03,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:19:03,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:19:03,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:19:05,748.748 INFO    ] ================================================
[2026-10-25 19:19:05,763.763 INFO    ] Launching Daemon at Sun Oct 25 19:19:05 IST 2026
[2026-10-25 19:19:05,774.774 INFO    ] ================================================
[2026-10-25 19:19:06,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:19:06
[2026-10-25 19:19:06,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:19:07,239.239 INFO    ] Initializing speech engine...
[2026-10-25 19:19:07,248.248 INFO    ] 2026-10-25 19:19:07
[2026-10-25 19:19:07,508.508 INFO    ] 2026-10-25 19:19:07
[2026-10-25 19:19:07,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:19:07,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:19:07,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:19:08,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:19:08,048.048 INFO    ] time= 25/10/2026 19:19:08
[2026-10-25 19:19:08,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:19:08,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:19:08,182.182 INFO    ] No existing commands found in stream
[2026-10-25 19:19:13,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:19:13,214.214 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 19:19:17,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:19:17,145.145 INFO    ] Checking for system updates...
[2026-10-25 19:19:17,182.182 INFO    ] 200
[2026-10-25 19:19:17,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:17,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:17,239.239 INFO    ] No update needed
[2026-10-25 19:19:17,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 19:19:17,275.275 INFO    ] 200
[2026-10-25 19:19:17,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:17,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:19:17,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:17,374.374 INFO    ] No camera update needed
[2026-10-25 19:19:17,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:19:17,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:19:17,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:19:17,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:19:19,430.430 INFO    ] ================================================
[2026-10-25 19:19:19,445.445 INFO    ] Launching Daemon at Sun Oct 25 19:19:19 IST 2026
[2026-10-25 19:19:19,456.456 INFO    ] ================================================
[2026-10-25 19:19:20,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:19:20
[2026-10-25 19:19:20,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:19:20,909.909 INFO    ] Initializing speech engine...
[2026-10-25 19:19:20,918.918 INFO    ] 2026-10-25 19:19:20
[2026-10-25 19:19:21,173.173 INFO    ] 2026-10-25 19:19:21
[2026-10-25 19:19:21,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:19:21,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:19:21,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:19:21,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:19:21,634.634 INFO    ] time= 25/10/2026 19:19:21
[2026-10-25 19:19:21,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:19:21,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:19:21,788.788 INFO    ] No existing commands found in stream
[2026-10-25 19:19:26,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:19:26,803.803 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 19:19:34,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:19:34,348.348 INFO    ] Checking for system updates...
[2026-10-25 19:19:34,391.391 INFO    ] 200
[2026-10-25 19:19:34,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:34,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:34,448.448 INFO    ] No update needed
[2026-10-25 19:19:34,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 19:19:34,488.488 INFO    ] 200
[2026-10-25 19:19:34,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:34,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:19:34,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:34,566.566 INFO    ] No camera update needed
[2026-10-25 19:19:34,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:19:34,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:19:34,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:19:34,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:19:36,620.620 INFO    ] ================================================
[2026-10-25 19:19:36,635.635 INFO    ] Launching Daemon at Sun Oct 25 19:19:36 IST 2026
[2026-10-25 19:19:36,646.646 INFO    ] ================================================
[2026-10-25 19:19:37,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:19:37
[2026-10-25 19:19:37,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:19:38,103.103 INFO    ] Initializing speech engine...
[2026-10-25 19:19:38,111.111 INFO    ] 2026-10-25 19:19:38
[2026-10-25 19:19:38,371.371 INFO    ] 2026-10-25 19:19:38
[2026-10-25 19:19:38,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:19:38,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:19:38,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:19:38,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:19:38,859.859 INFO    ] time= 25/10/2026 19:19:38
[2026-10-25 19:19:38,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:19:38,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:19:38,986.986 INFO    ] No existing commands found in stream
[2026-10-25 19:19:43,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:19:44,002.002 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 19:19:46,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:19:46,061.061 INFO    ] Checking for system updates...
[2026-10-25 19:19:46,098.098 INFO    ] 200
[2026-10-25 19:19:46,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:46,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:46,159.159 INFO    ] No update needed
[2026-10-25 19:19:46,161.161 INFO    ] Checking for camera pi updates...
[2026-10-25 19:19:46,200.200 INFO    ] 200
[2026-10-25 19:19:46,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:19:46,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:19:46,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:19:46,321.321 INFO    ] No camera update needed
[2026-10-25 19:19:46,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:19:46,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:19:46,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:19:46,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:19:48,379.379 INFO    ] ================================================
[2026-10-25 19:19:48,394.394 INFO    ] Launching Daemon at Sun Oct 25 19:19:48 IST 2026
[2026-10-25 19:19:48,405.405 INFO    ] ================================================
[2026-10-25 19:19:48,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:19:48
[2026-10-25 19:19:49,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:19:49,803.803 INFO    ] Initializing speech engine...
[2026-10-25 19:19:49,809.809 INFO    ] 2026-10-25 19:19:49
[2026-10-25 19:19:50,086.086 INFO    ] 2026-10-25 19:19:50
[2026-10-25 19:19:50,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:19:50,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:19:50,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:19:50,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:19:50,828.828 INFO    ] time= 25/10/2026 19:19:50
[2026-10-25 19:19:50,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:19:50,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:19:51,071.071 INFO    ] No existing commands found in stream
[2026-10-25 19:19:56,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:19:56,086.086 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 19:20:00,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:20:00,315.315 INFO    ] Checking for system updates...
[2026-10-25 19:20:00,351.351 INFO    ] 200
[2026-10-25 19:20:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:00,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:00,408.408 INFO    ] No update needed
[2026-10-25 19:20:00,410.410 INFO    ] Checking for camera pi updates...
[2026-10-25 19:20:00,444.444 INFO    ] 200
[2026-10-25 19:20:00,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:00,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:20:00,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:00,537.537 INFO    ] No camera update needed
[2026-10-25 19:20:00,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:20:00,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:20:00,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:20:00,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:20:02,655.655 INFO    ] ================================================
[2026-10-25 19:20:02,681.681 INFO    ] Launching Daemon at Sun Oct 25 19:20:02 IST 2026
[2026-10-25 19:20:02,703.703 INFO    ] ================================================
[2026-10-25 19:20:03,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:20:03
[2026-10-25 19:20:03,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:20:04,228.228 INFO    ] Initializing speech engine...
[2026-10-25 19:20:04,237.237 INFO    ] 2026-10-25 19:20:04
[2026-10-25 19:20:04,483.483 INFO    ] 2026-10-25 19:20:04
[2026-10-25 19:20:04,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:20:05,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:20:05,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:20:06,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:20:06,123.123 INFO    ] time= 25/10/2026 19:20:06
[2026-10-25 19:20:06,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:20:06,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:20:06,186.186 INFO    ] No existing commands found in stream
[2026-10-25 19:20:11,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:20:11,199.199 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 19:20:11,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:20:11,845.845 INFO    ] Checking for system updates...
[2026-10-25 19:20:11,882.882 INFO    ] 200
[2026-10-25 19:20:11,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:11,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:20:11,939.939 INFO    ] No update needed
[2026-10-25 19:20:11,942.942 INFO    ] Checking for camera pi updates...
[2026-10-25 19:20:11,981.981 INFO    ] 200
[2026-10-25 19:20:11,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:12,030.030 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:20:12,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:20:12,083.083 INFO    ] No camera update needed
[2026-10-25 19:20:12,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:20:12,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:20:12,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:20:12,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:20:14,140.140 INFO    ] ================================================
[2026-10-25 19:20:14,155.155 INFO    ] Launching Daemon at Sun Oct 25 19:20:14 IST 2026
[2026-10-25 19:20:14,166.166 INFO    ] ================================================
[2026-10-25 19:20:14,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:20:14
[2026-10-25 19:20:15,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:20:15,575.575 INFO    ] Initializing speech engine...
[2026-10-25 19:20:15,597.597 INFO    ] 2026-10-25 19:20:15
[2026-10-25 19:20:15,849.849 INFO    ] 2026-10-25 19:20:15
[2026-10-25 19:20:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:20:16,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:20:16,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:20:16,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:20:16,344.344 INFO    ] time= 25/10/2026 19:20:16
[2026-10-25 19:20:16,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:20:16,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:20:16,467.467 INFO    ] No existing commands found in stream
[2026-10-25 19:20:21,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:20:21,482.482 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 19:20:23,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:20:23,942.942 INFO    ] Checking for system updates...
[2026-10-25 19:20:23,979.979 INFO    ] 200
[2026-10-25 19:20:23,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:24,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:24,037.037 INFO    ] No update needed
[2026-10-25 19:20:24,039.039 INFO    ] Checking for camera pi updates...
[2026-10-25 19:20:24,073.073 INFO    ] 200
[2026-10-25 19:20:24,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:24,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:20:24,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:24,271.271 INFO    ] No camera update needed
[2026-10-25 19:20:24,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:20:24,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:20:24,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:20:24,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:20:26,328.328 INFO    ] ================================================
[2026-10-25 19:20:26,345.345 INFO    ] Launching Daemon at Sun Oct 25 19:20:26 IST 2026
[2026-10-25 19:20:26,357.357 INFO    ] ================================================
[2026-10-25 19:20:26,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:20:26
[2026-10-25 19:20:27,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:20:27,752.752 INFO    ] Initializing speech engine...
[2026-10-25 19:20:27,765.765 INFO    ] 2026-10-25 19:20:27
[2026-10-25 19:20:28,025.025 INFO    ] 2026-10-25 19:20:28
[2026-10-25 19:20:28,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:20:28,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:20:28,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:20:28,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:20:28,621.621 INFO    ] time= 25/10/2026 19:20:28
[2026-10-25 19:20:28,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:20:28,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:20:28,731.731 INFO    ] No existing commands found in stream
[2026-10-25 19:20:33,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:20:33,747.747 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 19:20:38,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:20:38,125.125 INFO    ] Checking for system updates...
[2026-10-25 19:20:38,166.166 INFO    ] 200
[2026-10-25 19:20:38,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:38,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:38,223.223 INFO    ] No update needed
[2026-10-25 19:20:38,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 19:20:38,259.259 INFO    ] 200
[2026-10-25 19:20:38,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:38,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:20:38,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:20:38,445.445 INFO    ] No camera update needed
[2026-10-25 19:20:38,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:20:38,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:20:38,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:20:38,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:20:40,500.500 INFO    ] ================================================
[2026-10-25 19:20:40,516.516 INFO    ] Launching Daemon at Sun Oct 25 19:20:40 IST 2026
[2026-10-25 19:20:40,527.527 INFO    ] ================================================
[2026-10-25 19:20:41,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:20:41
[2026-10-25 19:20:41,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:20:41,922.922 INFO    ] Initializing speech engine...
[2026-10-25 19:20:41,937.937 INFO    ] 2026-10-25 19:20:41
[2026-10-25 19:20:42,203.203 INFO    ] 2026-10-25 19:20:42
[2026-10-25 19:20:42,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:20:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:20:42,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:20:42,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:20:42,576.576 INFO    ] time= 25/10/2026 19:20:42
[2026-10-25 19:20:42,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:20:42,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:20:42,740.740 INFO    ] No existing commands found in stream
[2026-10-25 19:20:47,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:20:47,768.768 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 19:20:51,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:20:51,220.220 INFO    ] Checking for system updates...
[2026-10-25 19:20:51,256.256 INFO    ] 200
[2026-10-25 19:20:51,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:51,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:20:51,315.315 INFO    ] No update needed
[2026-10-25 19:20:51,317.317 INFO    ] Checking for camera pi updates...
[2026-10-25 19:20:51,351.351 INFO    ] 200
[2026-10-25 19:20:51,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:20:51,400.400 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:20:51,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:20:51,450.450 INFO    ] No camera update needed
[2026-10-25 19:20:51,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:20:51,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:20:51,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:20:51,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:20:53,504.504 INFO    ] ================================================
[2026-10-25 19:20:53,519.519 INFO    ] Launching Daemon at Sun Oct 25 19:20:53 IST 2026
[2026-10-25 19:20:53,530.530 INFO    ] ================================================
[2026-10-25 19:20:54,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:20:54
[2026-10-25 19:20:54,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:20:54,978.978 INFO    ] Initializing speech engine...
[2026-10-25 19:20:54,989.989 INFO    ] 2026-10-25 19:20:54
[2026-10-25 19:20:55,237.237 INFO    ] 2026-10-25 19:20:55
[2026-10-25 19:20:55,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:20:55,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:20:55,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:20:55,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:20:55,711.711 INFO    ] time= 25/10/2026 19:20:55
[2026-10-25 19:20:55,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:20:55,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:20:55,853.853 INFO    ] No existing commands found in stream
[2026-10-25 19:21:00,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:21:00,867.867 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 19:21:08,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:21:08,098.098 INFO    ] Checking for system updates...
[2026-10-25 19:21:08,135.135 INFO    ] 200
[2026-10-25 19:21:08,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:08,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:08,194.194 INFO    ] No update needed
[2026-10-25 19:21:08,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 19:21:08,231.231 INFO    ] 200
[2026-10-25 19:21:08,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:08,275.275 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:21:08,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:08,337.337 INFO    ] No camera update needed
[2026-10-25 19:21:08,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:21:08,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:21:08,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:21:08,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:21:10,392.392 INFO    ] ================================================
[2026-10-25 19:21:10,407.407 INFO    ] Launching Daemon at Sun Oct 25 19:21:10 IST 2026
[2026-10-25 19:21:10,418.418 INFO    ] ================================================
[2026-10-25 19:21:11,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:21:11
[2026-10-25 19:21:11,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:21:11,865.865 INFO    ] Initializing speech engine...
[2026-10-25 19:21:11,878.878 INFO    ] 2026-10-25 19:21:11
[2026-10-25 19:21:12,129.129 INFO    ] 2026-10-25 19:21:12
[2026-10-25 19:21:12,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:21:12,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:21:12,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:21:12,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:21:12,504.504 INFO    ] time= 25/10/2026 19:21:12
[2026-10-25 19:21:12,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:21:12,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:21:12,662.662 INFO    ] No existing commands found in stream
[2026-10-25 19:21:17,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:21:17,690.690 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 19:21:20,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:21:20,193.193 INFO    ] Checking for system updates...
[2026-10-25 19:21:20,240.240 INFO    ] 200
[2026-10-25 19:21:20,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:20,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:20,297.297 INFO    ] No update needed
[2026-10-25 19:21:20,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 19:21:20,338.338 INFO    ] 200
[2026-10-25 19:21:20,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:20,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:21:20,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:20,441.441 INFO    ] No camera update needed
[2026-10-25 19:21:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:21:20,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:21:20,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:21:20,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:21:22,496.496 INFO    ] ================================================
[2026-10-25 19:21:22,512.512 INFO    ] Launching Daemon at Sun Oct 25 19:21:22 IST 2026
[2026-10-25 19:21:22,522.522 INFO    ] ================================================
[2026-10-25 19:21:23,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:21:23
[2026-10-25 19:21:23,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:21:23,980.980 INFO    ] Initializing speech engine...
[2026-10-25 19:21:23,986.986 INFO    ] 2026-10-25 19:21:23
[2026-10-25 19:21:24,233.233 INFO    ] 2026-10-25 19:21:24
[2026-10-25 19:21:24,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:21:24,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:21:24,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:21:24,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:21:24,712.712 INFO    ] time= 25/10/2026 19:21:24
[2026-10-25 19:21:24,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:21:24,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:21:24,849.849 INFO    ] No existing commands found in stream
[2026-10-25 19:21:29,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:21:29,864.864 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 19:21:32,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:21:32,843.843 INFO    ] Checking for system updates...
[2026-10-25 19:21:32,894.894 INFO    ] 200
[2026-10-25 19:21:32,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:32,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:32,972.972 INFO    ] No update needed
[2026-10-25 19:21:32,975.975 INFO    ] Checking for camera pi updates...
[2026-10-25 19:21:33,014.014 INFO    ] 200
[2026-10-25 19:21:33,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:33,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:21:33,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:33,127.127 INFO    ] No camera update needed
[2026-10-25 19:21:33,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:21:33,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:21:33,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:21:33,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:21:35,187.187 INFO    ] ================================================
[2026-10-25 19:21:35,202.202 INFO    ] Launching Daemon at Sun Oct 25 19:21:35 IST 2026
[2026-10-25 19:21:35,212.212 INFO    ] ================================================
[2026-10-25 19:21:35,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:21:35
[2026-10-25 19:21:36,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:21:36,856.856 INFO    ] Initializing speech engine...
[2026-10-25 19:21:36,864.864 INFO    ] 2026-10-25 19:21:36
[2026-10-25 19:21:37,122.122 INFO    ] 2026-10-25 19:21:37
[2026-10-25 19:21:37,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:21:39,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:21:39,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:21:40,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:21:40,278.278 INFO    ] time= 25/10/2026 19:21:40
[2026-10-25 19:21:40,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:21:40,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:21:40,332.332 INFO    ] No existing commands found in stream
[2026-10-25 19:21:45,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:21:45,345.345 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 19:21:47,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:21:47,654.654 INFO    ] Checking for system updates...
[2026-10-25 19:21:47,690.690 INFO    ] 200
[2026-10-25 19:21:47,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:47,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:47,748.748 INFO    ] No update needed
[2026-10-25 19:21:47,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 19:21:47,784.784 INFO    ] 200
[2026-10-25 19:21:47,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:47,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:21:47,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:21:47,896.896 INFO    ] No camera update needed
[2026-10-25 19:21:47,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:21:47,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:21:47,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:21:47,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:21:49,953.953 INFO    ] ================================================
[2026-10-25 19:21:49,969.969 INFO    ] Launching Daemon at Sun Oct 25 19:21:49 IST 2026
[2026-10-25 19:21:49,980.980 INFO    ] ================================================
[2026-10-25 19:21:50,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:21:50
[2026-10-25 19:21:51,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:21:51,435.435 INFO    ] Initializing speech engine...
[2026-10-25 19:21:51,442.442 INFO    ] 2026-10-25 19:21:51
[2026-10-25 19:21:51,694.694 INFO    ] 2026-10-25 19:21:51
[2026-10-25 19:21:51,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:21:51,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:21:51,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:21:52,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:21:52,170.170 INFO    ] time= 25/10/2026 19:21:52
[2026-10-25 19:21:52,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:21:52,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:21:52,306.306 INFO    ] No existing commands found in stream
[2026-10-25 19:21:57,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:21:57,322.322 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 19:21:58,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:21:58,984.984 INFO    ] Checking for system updates...
[2026-10-25 19:21:59,020.020 INFO    ] 200
[2026-10-25 19:21:59,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:59,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:21:59,086.086 INFO    ] No update needed
[2026-10-25 19:21:59,088.088 INFO    ] Checking for camera pi updates...
[2026-10-25 19:21:59,123.123 INFO    ] 200
[2026-10-25 19:21:59,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:21:59,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:21:59,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:21:59,218.218 INFO    ] No camera update needed
[2026-10-25 19:21:59,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:21:59,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:21:59,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:21:59,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:22:01,274.274 INFO    ] ================================================
[2026-10-25 19:22:01,289.289 INFO    ] Launching Daemon at Sun Oct 25 19:22:01 IST 2026
[2026-10-25 19:22:01,300.300 INFO    ] ================================================
[2026-10-25 19:22:02,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:22:02
[2026-10-25 19:22:02,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:22:03,066.066 INFO    ] Initializing speech engine...
[2026-10-25 19:22:03,079.079 INFO    ] 2026-10-25 19:22:03
[2026-10-25 19:22:03,382.382 INFO    ] 2026-10-25 19:22:03
[2026-10-25 19:22:03,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:22:03,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:22:03,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:22:03,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:22:03,774.774 INFO    ] time= 25/10/2026 19:22:03
[2026-10-25 19:22:03,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:22:03,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:22:03,963.963 INFO    ] No existing commands found in stream
[2026-10-25 19:22:08,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:22:08,997.997 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 19:22:12,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:22:12,164.164 INFO    ] Checking for system updates...
[2026-10-25 19:22:12,200.200 INFO    ] 200
[2026-10-25 19:22:12,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:12,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:22:12,258.258 INFO    ] No update needed
[2026-10-25 19:22:12,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 19:22:12,296.296 INFO    ] 200
[2026-10-25 19:22:12,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:12,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:22:12,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:22:12,399.399 INFO    ] No camera update needed
[2026-10-25 19:22:12,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:22:12,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:22:12,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:22:12,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:22:14,457.457 INFO    ] ================================================
[2026-10-25 19:22:14,472.472 INFO    ] Launching Daemon at Sun Oct 25 19:22:14 IST 2026
[2026-10-25 19:22:14,482.482 INFO    ] ================================================
[2026-10-25 19:22:15,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:22:15
[2026-10-25 19:22:15,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:22:15,924.924 INFO    ] Initializing speech engine...
[2026-10-25 19:22:15,946.946 INFO    ] 2026-10-25 19:22:15
[2026-10-25 19:22:16,229.229 INFO    ] 2026-10-25 19:22:16
[2026-10-25 19:22:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:22:16,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:22:16,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:22:16,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:22:16,654.654 INFO    ] time= 25/10/2026 19:22:16
[2026-10-25 19:22:16,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:22:16,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:22:16,814.814 INFO    ] No existing commands found in stream
[2026-10-25 19:22:21,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:22:21,842.842 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 19:22:26,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:22:26,022.022 INFO    ] Checking for system updates...
[2026-10-25 19:22:26,060.060 INFO    ] 200
[2026-10-25 19:22:26,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:26,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:22:26,127.127 INFO    ] No update needed
[2026-10-25 19:22:26,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 19:22:26,170.170 INFO    ] 200
[2026-10-25 19:22:26,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:26,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:22:26,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:22:26,377.377 INFO    ] No camera update needed
[2026-10-25 19:22:26,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:22:26,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:22:26,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:22:26,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:22:28,436.436 INFO    ] ================================================
[2026-10-25 19:22:28,451.451 INFO    ] Launching Daemon at Sun Oct 25 19:22:28 IST 2026
[2026-10-25 19:22:28,461.461 INFO    ] ================================================
[2026-10-25 19:22:29,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:22:29
[2026-10-25 19:22:29,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:22:29,916.916 INFO    ] Initializing speech engine...
[2026-10-25 19:22:29,923.923 INFO    ] 2026-10-25 19:22:29
[2026-10-25 19:22:30,182.182 INFO    ] 2026-10-25 19:22:30
[2026-10-25 19:22:30,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:22:30,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:22:30,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:22:30,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:22:30,645.645 INFO    ] time= 25/10/2026 19:22:30
[2026-10-25 19:22:30,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:22:30,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:22:30,784.784 INFO    ] No existing commands found in stream
[2026-10-25 19:22:35,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:22:35,796.796 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 19:22:42,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:22:42,088.088 INFO    ] Checking for system updates...
[2026-10-25 19:22:42,130.130 INFO    ] 200
[2026-10-25 19:22:42,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:42,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:22:42,202.202 INFO    ] No update needed
[2026-10-25 19:22:42,204.204 INFO    ] Checking for camera pi updates...
[2026-10-25 19:22:42,242.242 INFO    ] 200
[2026-10-25 19:22:42,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:42,286.286 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:22:42,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:22:42,344.344 INFO    ] No camera update needed
[2026-10-25 19:22:42,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:22:42,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:22:42,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:22:42,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:22:44,402.402 INFO    ] ================================================
[2026-10-25 19:22:44,418.418 INFO    ] Launching Daemon at Sun Oct 25 19:22:44 IST 2026
[2026-10-25 19:22:44,430.430 INFO    ] ================================================
[2026-10-25 19:22:45,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:22:45
[2026-10-25 19:22:45,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:22:45,879.879 INFO    ] Initializing speech engine...
[2026-10-25 19:22:45,899.899 INFO    ] 2026-10-25 19:22:45
[2026-10-25 19:22:46,184.184 INFO    ] 2026-10-25 19:22:46
[2026-10-25 19:22:46,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:22:46,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:22:46,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:22:46,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:22:46,567.567 INFO    ] time= 25/10/2026 19:22:46
[2026-10-25 19:22:46,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:22:46,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:22:46,691.691 INFO    ] No existing commands found in stream
[2026-10-25 19:22:51,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:22:51,706.706 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-25 19:22:55,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:22:55,993.993 INFO    ] Checking for system updates...
[2026-10-25 19:22:56,033.033 INFO    ] 200
[2026-10-25 19:22:56,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:56,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:22:56,091.091 INFO    ] No update needed
[2026-10-25 19:22:56,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 19:22:56,127.127 INFO    ] 200
[2026-10-25 19:22:56,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:22:56,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:22:56,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:22:56,226.226 INFO    ] No camera update needed
[2026-10-25 19:22:56,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:22:56,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:22:56,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:22:56,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:22:58,282.282 INFO    ] ================================================
[2026-10-25 19:22:58,297.297 INFO    ] Launching Daemon at Sun Oct 25 19:22:58 IST 2026
[2026-10-25 19:22:58,308.308 INFO    ] ================================================
[2026-10-25 19:22:58,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:22:58
[2026-10-25 19:22:59,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:22:59,901.901 INFO    ] Initializing speech engine...
[2026-10-25 19:22:59,909.909 INFO    ] 2026-10-25 19:22:59
[2026-10-25 19:23:00,193.193 INFO    ] 2026-10-25 19:23:00
[2026-10-25 19:23:00,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:23:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:23:00,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:23:00,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:23:00,674.674 INFO    ] time= 25/10/2026 19:23:00
[2026-10-25 19:23:00,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:23:00,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:23:00,868.868 INFO    ] No existing commands found in stream
[2026-10-25 19:23:05,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:23:05,898.898 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 19:23:07,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:23:07,030.030 INFO    ] Checking for system updates...
[2026-10-25 19:23:07,070.070 INFO    ] 200
[2026-10-25 19:23:07,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:07,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:07,129.129 INFO    ] No update needed
[2026-10-25 19:23:07,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 19:23:07,170.170 INFO    ] 200
[2026-10-25 19:23:07,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:07,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:23:07,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:07,295.295 INFO    ] No camera update needed
[2026-10-25 19:23:07,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:23:07,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:23:07,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:23:07,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:23:09,355.355 INFO    ] ================================================
[2026-10-25 19:23:09,370.370 INFO    ] Launching Daemon at Sun Oct 25 19:23:09 IST 2026
[2026-10-25 19:23:09,381.381 INFO    ] ================================================
[2026-10-25 19:23:09,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:23:09
[2026-10-25 19:23:10,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:23:10,801.801 INFO    ] Initializing speech engine...
[2026-10-25 19:23:10,809.809 INFO    ] 2026-10-25 19:23:10
[2026-10-25 19:23:11,094.094 INFO    ] 2026-10-25 19:23:11
[2026-10-25 19:23:11,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:23:13,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:23:13,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:23:14,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:23:14,209.209 INFO    ] time= 25/10/2026 19:23:14
[2026-10-25 19:23:14,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:23:14,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:23:14,266.266 INFO    ] No existing commands found in stream
[2026-10-25 19:23:19,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:23:19,279.279 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 19:23:21,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:23:21,474.474 INFO    ] Checking for system updates...
[2026-10-25 19:23:21,511.511 INFO    ] 200
[2026-10-25 19:23:21,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:21,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:21,572.572 INFO    ] No update needed
[2026-10-25 19:23:21,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 19:23:21,612.612 INFO    ] 200
[2026-10-25 19:23:21,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:21,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:23:21,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:21,720.720 INFO    ] No camera update needed
[2026-10-25 19:23:21,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:23:21,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:23:21,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:23:21,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:23:23,779.779 INFO    ] ================================================
[2026-10-25 19:23:23,795.795 INFO    ] Launching Daemon at Sun Oct 25 19:23:23 IST 2026
[2026-10-25 19:23:23,806.806 INFO    ] ================================================
[2026-10-25 19:23:24,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:23:24
[2026-10-25 19:23:25,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:23:25,373.373 INFO    ] Initializing speech engine...
[2026-10-25 19:23:25,384.384 INFO    ] 2026-10-25 19:23:25
[2026-10-25 19:23:25,653.653 INFO    ] 2026-10-25 19:23:25
[2026-10-25 19:23:25,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:23:25,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:23:25,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:23:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:23:26,132.132 INFO    ] time= 25/10/2026 19:23:26
[2026-10-25 19:23:26,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:23:26,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:23:26,279.279 INFO    ] No existing commands found in stream
[2026-10-25 19:23:31,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:23:31,296.296 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 19:23:34,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:23:34,125.125 INFO    ] Checking for system updates...
[2026-10-25 19:23:34,169.169 INFO    ] 200
[2026-10-25 19:23:34,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:34,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:34,229.229 INFO    ] No update needed
[2026-10-25 19:23:34,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 19:23:34,267.267 INFO    ] 200
[2026-10-25 19:23:34,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:34,312.312 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:23:34,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:34,368.368 INFO    ] No camera update needed
[2026-10-25 19:23:34,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:23:34,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:23:34,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:23:34,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:23:36,429.429 INFO    ] ================================================
[2026-10-25 19:23:36,444.444 INFO    ] Launching Daemon at Sun Oct 25 19:23:36 IST 2026
[2026-10-25 19:23:36,454.454 INFO    ] ================================================
[2026-10-25 19:23:37,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:23:37
[2026-10-25 19:23:37,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:23:37,847.847 INFO    ] Initializing speech engine...
[2026-10-25 19:23:37,861.861 INFO    ] 2026-10-25 19:23:37
[2026-10-25 19:23:38,128.128 INFO    ] 2026-10-25 19:23:38
[2026-10-25 19:23:38,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:23:38,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:23:38,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:23:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:23:38,571.571 INFO    ] time= 25/10/2026 19:23:38
[2026-10-25 19:23:38,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:23:38,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:23:38,756.756 INFO    ] No existing commands found in stream
[2026-10-25 19:23:43,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:23:43,771.771 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 19:23:46,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:23:46,437.437 INFO    ] Checking for system updates...
[2026-10-25 19:23:46,473.473 INFO    ] 200
[2026-10-25 19:23:46,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:46,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:46,534.534 INFO    ] No update needed
[2026-10-25 19:23:46,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 19:23:46,573.573 INFO    ] 200
[2026-10-25 19:23:46,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:46,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:23:46,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:23:46,673.673 INFO    ] No camera update needed
[2026-10-25 19:23:46,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:23:46,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:23:46,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:23:46,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:23:48,728.728 INFO    ] ================================================
[2026-10-25 19:23:48,743.743 INFO    ] Launching Daemon at Sun Oct 25 19:23:48 IST 2026
[2026-10-25 19:23:48,754.754 INFO    ] ================================================
[2026-10-25 19:23:49,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:23:49
[2026-10-25 19:23:49,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:23:50,269.269 INFO    ] Initializing speech engine...
[2026-10-25 19:23:50,278.278 INFO    ] 2026-10-25 19:23:50
[2026-10-25 19:23:50,547.547 INFO    ] 2026-10-25 19:23:50
[2026-10-25 19:23:50,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:23:50,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:23:50,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:23:51,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:23:51,055.055 INFO    ] time= 25/10/2026 19:23:51
[2026-10-25 19:23:51,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:23:51,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:23:51,204.204 INFO    ] No existing commands found in stream
[2026-10-25 19:23:56,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:23:56,219.219 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 19:23:59,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:23:59,524.524 INFO    ] Checking for system updates...
[2026-10-25 19:23:59,561.561 INFO    ] 200
[2026-10-25 19:23:59,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:59,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:23:59,619.619 INFO    ] No update needed
[2026-10-25 19:23:59,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 19:23:59,656.656 INFO    ] 200
[2026-10-25 19:23:59,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:23:59,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:23:59,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:23:59,764.764 INFO    ] No camera update needed
[2026-10-25 19:23:59,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:23:59,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:23:59,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:23:59,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:24:01,825.825 INFO    ] ================================================
[2026-10-25 19:24:01,842.842 INFO    ] Launching Daemon at Sun Oct 25 19:24:01 IST 2026
[2026-10-25 19:24:01,855.855 INFO    ] ================================================
[2026-10-25 19:24:02,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:24:02
[2026-10-25 19:24:03,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:24:03,455.455 INFO    ] Initializing speech engine...
[2026-10-25 19:24:03,466.466 INFO    ] 2026-10-25 19:24:03
[2026-10-25 19:24:03,739.739 INFO    ] 2026-10-25 19:24:03
[2026-10-25 19:24:03,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:24:03,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:24:03,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:24:04,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:24:04,156.156 INFO    ] time= 25/10/2026 19:24:04
[2026-10-25 19:24:04,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:24:04,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:24:04,240.240 INFO    ] No existing commands found in stream
[2026-10-25 19:24:09,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:24:09,256.256 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 19:24:09,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:24:09,728.728 INFO    ] Checking for system updates...
[2026-10-25 19:24:09,764.764 INFO    ] 200
[2026-10-25 19:24:09,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:09,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:24:09,823.823 INFO    ] No update needed
[2026-10-25 19:24:09,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 19:24:09,860.860 INFO    ] 200
[2026-10-25 19:24:09,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:09,904.904 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:24:09,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:24:09,961.961 INFO    ] No camera update needed
[2026-10-25 19:24:09,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:24:09,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:24:09,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:24:09,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:24:12,016.016 INFO    ] ================================================
[2026-10-25 19:24:12,032.032 INFO    ] Launching Daemon at Sun Oct 25 19:24:12 IST 2026
[2026-10-25 19:24:12,042.042 INFO    ] ================================================
[2026-10-25 19:24:12,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:24:12
[2026-10-25 19:24:13,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:24:13,459.459 INFO    ] Initializing speech engine...
[2026-10-25 19:24:13,478.478 INFO    ] 2026-10-25 19:24:13
[2026-10-25 19:24:13,731.731 INFO    ] 2026-10-25 19:24:13
[2026-10-25 19:24:13,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:24:15,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:24:15,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:24:15,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:24:16,001.001 INFO    ] time= 25/10/2026 19:24:15
[2026-10-25 19:24:16,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:24:16,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:24:16,116.116 INFO    ] No existing commands found in stream
[2026-10-25 19:24:21,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:24:21,131.131 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 19:24:23,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:24:23,997.997 INFO    ] Checking for system updates...
[2026-10-25 19:24:24,033.033 INFO    ] 200
[2026-10-25 19:24:24,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:24,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:24,091.091 INFO    ] No update needed
[2026-10-25 19:24:24,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 19:24:24,127.127 INFO    ] 200
[2026-10-25 19:24:24,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:24,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:24:24,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:24,236.236 INFO    ] No camera update needed
[2026-10-25 19:24:24,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:24:24,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:24:24,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:24:24,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:24:26,298.298 INFO    ] ================================================
[2026-10-25 19:24:26,313.313 INFO    ] Launching Daemon at Sun Oct 25 19:24:26 IST 2026
[2026-10-25 19:24:26,324.324 INFO    ] ================================================
[2026-10-25 19:24:26,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:24:26
[2026-10-25 19:24:27,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:24:27,788.788 INFO    ] Initializing speech engine...
[2026-10-25 19:24:27,797.797 INFO    ] 2026-10-25 19:24:27
[2026-10-25 19:24:28,093.093 INFO    ] 2026-10-25 19:24:28
[2026-10-25 19:24:28,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:24:28,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:24:28,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:24:28,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:24:28,511.511 INFO    ] time= 25/10/2026 19:24:28
[2026-10-25 19:24:28,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:24:28,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:24:28,601.601 INFO    ] No existing commands found in stream
[2026-10-25 19:24:33,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:24:33,617.617 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 19:24:35,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:24:35,739.739 INFO    ] Checking for system updates...
[2026-10-25 19:24:35,776.776 INFO    ] 200
[2026-10-25 19:24:35,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:35,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:35,833.833 INFO    ] No update needed
[2026-10-25 19:24:35,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 19:24:35,869.869 INFO    ] 200
[2026-10-25 19:24:35,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:35,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:24:35,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:35,975.975 INFO    ] No camera update needed
[2026-10-25 19:24:35,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:24:35,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:24:35,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:24:35,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:24:38,030.030 INFO    ] ================================================
[2026-10-25 19:24:38,045.045 INFO    ] Launching Daemon at Sun Oct 25 19:24:38 IST 2026
[2026-10-25 19:24:38,056.056 INFO    ] ================================================
[2026-10-25 19:24:38,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:24:38
[2026-10-25 19:24:39,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:24:39,457.457 INFO    ] Initializing speech engine...
[2026-10-25 19:24:39,463.463 INFO    ] 2026-10-25 19:24:39
[2026-10-25 19:24:39,764.764 INFO    ] 2026-10-25 19:24:39
[2026-10-25 19:24:39,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:24:39,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:24:39,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:24:40,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:24:40,145.145 INFO    ] time= 25/10/2026 19:24:40
[2026-10-25 19:24:40,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:24:40,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:24:40,225.225 INFO    ] No existing commands found in stream
[2026-10-25 19:24:45,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:24:45,240.240 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 19:24:46,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:24:46,983.983 INFO    ] Checking for system updates...
[2026-10-25 19:24:47,019.019 INFO    ] 200
[2026-10-25 19:24:47,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:47,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:24:47,076.076 INFO    ] No update needed
[2026-10-25 19:24:47,079.079 INFO    ] Checking for camera pi updates...
[2026-10-25 19:24:47,113.113 INFO    ] 200
[2026-10-25 19:24:47,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:47,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:24:47,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:24:47,213.213 INFO    ] No camera update needed
[2026-10-25 19:24:47,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:24:47,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:24:47,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:24:47,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:24:49,268.268 INFO    ] ================================================
[2026-10-25 19:24:49,284.284 INFO    ] Launching Daemon at Sun Oct 25 19:24:49 IST 2026
[2026-10-25 19:24:49,295.295 INFO    ] ================================================
[2026-10-25 19:24:49,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:24:49
[2026-10-25 19:24:50,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:24:50,691.691 INFO    ] Initializing speech engine...
[2026-10-25 19:24:50,697.697 INFO    ] 2026-10-25 19:24:50
[2026-10-25 19:24:50,997.997 INFO    ] 2026-10-25 19:24:50
[2026-10-25 19:24:51,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:24:51,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:24:51,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:24:51,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:24:51,348.348 INFO    ] time= 25/10/2026 19:24:51
[2026-10-25 19:24:51,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:24:51,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:24:51,426.426 INFO    ] No existing commands found in stream
[2026-10-25 19:24:56,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:24:56,439.439 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 19:24:58,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:24:58,519.519 INFO    ] Checking for system updates...
[2026-10-25 19:24:58,555.555 INFO    ] 200
[2026-10-25 19:24:58,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:58,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:58,613.613 INFO    ] No update needed
[2026-10-25 19:24:58,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 19:24:58,649.649 INFO    ] 200
[2026-10-25 19:24:58,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:24:58,693.693 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:24:58,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:24:58,745.745 INFO    ] No camera update needed
[2026-10-25 19:24:58,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:24:58,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:24:58,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:24:58,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:25:00,800.800 INFO    ] ================================================
[2026-10-25 19:25:00,816.816 INFO    ] Launching Daemon at Sun Oct 25 19:25:00 IST 2026
[2026-10-25 19:25:00,827.827 INFO    ] ================================================
[2026-10-25 19:25:01,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:25:01
[2026-10-25 19:25:02,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:25:02,591.591 INFO    ] Initializing speech engine...
[2026-10-25 19:25:02,601.601 INFO    ] 2026-10-25 19:25:02
[2026-10-25 19:25:02,897.897 INFO    ] 2026-10-25 19:25:02
[2026-10-25 19:25:02,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:25:03,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:25:03,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:25:03,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:25:03,329.329 INFO    ] time= 25/10/2026 19:25:03
[2026-10-25 19:25:03,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:25:03,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:25:03,464.464 INFO    ] No existing commands found in stream
[2026-10-25 19:25:08,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:25:08,498.498 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 19:25:12,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:25:12,810.810 INFO    ] Checking for system updates...
[2026-10-25 19:25:12,846.846 INFO    ] 200
[2026-10-25 19:25:12,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:12,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:12,905.905 INFO    ] No update needed
[2026-10-25 19:25:12,907.907 INFO    ] Checking for camera pi updates...
[2026-10-25 19:25:12,954.954 INFO    ] 200
[2026-10-25 19:25:12,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:13,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:25:13,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:13,062.062 INFO    ] No camera update needed
[2026-10-25 19:25:13,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:25:13,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:25:13,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:25:13,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:25:15,117.117 INFO    ] ================================================
[2026-10-25 19:25:15,132.132 INFO    ] Launching Daemon at Sun Oct 25 19:25:15 IST 2026
[2026-10-25 19:25:15,143.143 INFO    ] ================================================
[2026-10-25 19:25:15,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:25:15
[2026-10-25 19:25:16,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:25:16,751.751 INFO    ] Initializing speech engine...
[2026-10-25 19:25:16,763.763 INFO    ] 2026-10-25 19:25:16
[2026-10-25 19:25:17,072.072 INFO    ] 2026-10-25 19:25:17
[2026-10-25 19:25:17,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:25:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:25:17,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:25:17,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:25:18,025.025 INFO    ] time= 25/10/2026 19:25:17
[2026-10-25 19:25:18,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:25:18,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:25:18,154.154 INFO    ] No existing commands found in stream
[2026-10-25 19:25:23,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:25:23,183.183 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 19:25:26,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:25:26,901.901 INFO    ] Checking for system updates...
[2026-10-25 19:25:26,938.938 INFO    ] 200
[2026-10-25 19:25:26,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:26,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:26,997.997 INFO    ] No update needed
[2026-10-25 19:25:27,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 19:25:27,035.035 INFO    ] 200
[2026-10-25 19:25:27,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:27,079.079 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:25:27,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:27,140.140 INFO    ] No camera update needed
[2026-10-25 19:25:27,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:25:27,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:25:27,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:25:27,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:25:29,198.198 INFO    ] ================================================
[2026-10-25 19:25:29,214.214 INFO    ] Launching Daemon at Sun Oct 25 19:25:29 IST 2026
[2026-10-25 19:25:29,225.225 INFO    ] ================================================
[2026-10-25 19:25:29,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:25:29
[2026-10-25 19:25:30,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:25:30,653.653 INFO    ] Initializing speech engine...
[2026-10-25 19:25:30,660.660 INFO    ] 2026-10-25 19:25:30
[2026-10-25 19:25:30,920.920 INFO    ] 2026-10-25 19:25:30
[2026-10-25 19:25:30,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:25:31,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:25:31,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:25:31,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:25:31,359.359 INFO    ] time= 25/10/2026 19:25:31
[2026-10-25 19:25:31,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:25:31,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:25:31,544.544 INFO    ] No existing commands found in stream
[2026-10-25 19:25:36,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:25:36,558.558 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 19:25:40,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:25:40,564.564 INFO    ] Checking for system updates...
[2026-10-25 19:25:40,600.600 INFO    ] 200
[2026-10-25 19:25:40,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:40,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:25:40,658.658 INFO    ] No update needed
[2026-10-25 19:25:40,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 19:25:40,693.693 INFO    ] 200
[2026-10-25 19:25:40,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:40,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:25:40,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:25:40,791.791 INFO    ] No camera update needed
[2026-10-25 19:25:40,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:25:40,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:25:40,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:25:40,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:25:42,846.846 INFO    ] ================================================
[2026-10-25 19:25:42,862.862 INFO    ] Launching Daemon at Sun Oct 25 19:25:42 IST 2026
[2026-10-25 19:25:42,873.873 INFO    ] ================================================
[2026-10-25 19:25:43,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:25:43
[2026-10-25 19:25:44,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:25:44,327.327 INFO    ] Initializing speech engine...
[2026-10-25 19:25:44,340.340 INFO    ] 2026-10-25 19:25:44
[2026-10-25 19:25:44,628.628 INFO    ] 2026-10-25 19:25:44
[2026-10-25 19:25:44,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:25:48,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:25:48,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:25:48,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:25:48,897.897 INFO    ] time= 25/10/2026 19:25:48
[2026-10-25 19:25:48,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:25:48,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:25:48,940.940 INFO    ] No existing commands found in stream
[2026-10-25 19:25:53,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:25:53,952.952 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 19:25:55,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:25:55,414.414 INFO    ] Checking for system updates...
[2026-10-25 19:25:55,450.450 INFO    ] 200
[2026-10-25 19:25:55,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:55,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:55,508.508 INFO    ] No update needed
[2026-10-25 19:25:55,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 19:25:55,545.545 INFO    ] 200
[2026-10-25 19:25:55,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:25:55,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:25:55,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:25:55,663.663 INFO    ] No camera update needed
[2026-10-25 19:25:55,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:25:55,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:25:55,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:25:55,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:25:57,725.725 INFO    ] ================================================
[2026-10-25 19:25:57,742.742 INFO    ] Launching Daemon at Sun Oct 25 19:25:57 IST 2026
[2026-10-25 19:25:57,754.754 INFO    ] ================================================
[2026-10-25 19:25:58,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:25:58
[2026-10-25 19:25:59,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:25:59,404.404 INFO    ] Initializing speech engine...
[2026-10-25 19:25:59,418.418 INFO    ] 2026-10-25 19:25:59
[2026-10-25 19:25:59,734.734 INFO    ] 2026-10-25 19:25:59
[2026-10-25 19:25:59,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:25:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:26:00,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:26:00,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:26:00,239.239 INFO    ] time= 25/10/2026 19:26:00
[2026-10-25 19:26:00,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:26:00,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:26:00,385.385 INFO    ] No existing commands found in stream
[2026-10-25 19:26:05,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:26:05,410.410 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 19:26:08,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:26:08,457.457 INFO    ] Checking for system updates...
[2026-10-25 19:26:08,495.495 INFO    ] 200
[2026-10-25 19:26:08,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:08,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:26:08,557.557 INFO    ] No update needed
[2026-10-25 19:26:08,560.560 INFO    ] Checking for camera pi updates...
[2026-10-25 19:26:08,595.595 INFO    ] 200
[2026-10-25 19:26:08,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:08,640.640 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:26:08,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:26:08,704.704 INFO    ] No camera update needed
[2026-10-25 19:26:08,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:26:08,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:26:08,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:26:08,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:26:10,762.762 INFO    ] ================================================
[2026-10-25 19:26:10,778.778 INFO    ] Launching Daemon at Sun Oct 25 19:26:10 IST 2026
[2026-10-25 19:26:10,789.789 INFO    ] ================================================
[2026-10-25 19:26:11,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:26:11
[2026-10-25 19:26:11,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:26:12,217.217 INFO    ] Initializing speech engine...
[2026-10-25 19:26:12,239.239 INFO    ] 2026-10-25 19:26:12
[2026-10-25 19:26:12,493.493 INFO    ] 2026-10-25 19:26:12
[2026-10-25 19:26:12,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:26:12,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:26:12,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:26:12,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:26:12,868.868 INFO    ] time= 25/10/2026 19:26:12
[2026-10-25 19:26:12,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:26:12,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:26:13,053.053 INFO    ] No existing commands found in stream
[2026-10-25 19:26:18,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:26:18,081.081 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 19:26:21,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:26:21,756.756 INFO    ] Checking for system updates...
[2026-10-25 19:26:21,792.792 INFO    ] 200
[2026-10-25 19:26:21,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:21,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:26:21,849.849 INFO    ] No update needed
[2026-10-25 19:26:21,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 19:26:21,885.885 INFO    ] 200
[2026-10-25 19:26:21,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:21,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:26:21,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:26:21,983.983 INFO    ] No camera update needed
[2026-10-25 19:26:21,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:26:21,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:26:21,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:26:21,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:26:24,039.039 INFO    ] ================================================
[2026-10-25 19:26:24,054.054 INFO    ] Launching Daemon at Sun Oct 25 19:26:24 IST 2026
[2026-10-25 19:26:24,065.065 INFO    ] ================================================
[2026-10-25 19:26:24,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:26:24
[2026-10-25 19:26:25,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:26:25,473.473 INFO    ] Initializing speech engine...
[2026-10-25 19:26:25,478.478 INFO    ] 2026-10-25 19:26:25
[2026-10-25 19:26:25,774.774 INFO    ] 2026-10-25 19:26:25
[2026-10-25 19:26:25,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:26:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:26:25,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:26:26,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:26:26,198.198 INFO    ] time= 25/10/2026 19:26:26
[2026-10-25 19:26:26,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:26:26,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:26:26,282.282 INFO    ] No existing commands found in stream
[2026-10-25 19:26:31,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:26:31,297.297 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 19:26:34,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:26:34,851.851 INFO    ] Checking for system updates...
[2026-10-25 19:26:34,887.887 INFO    ] 200
[2026-10-25 19:26:34,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:34,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:26:34,946.946 INFO    ] No update needed
[2026-10-25 19:26:34,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 19:26:34,982.982 INFO    ] 200
[2026-10-25 19:26:34,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:35,025.025 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:26:35,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:26:35,186.186 INFO    ] No camera update needed
[2026-10-25 19:26:35,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:26:35,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:26:35,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:26:35,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:26:37,243.243 INFO    ] ================================================
[2026-10-25 19:26:37,259.259 INFO    ] Launching Daemon at Sun Oct 25 19:26:37 IST 2026
[2026-10-25 19:26:37,270.270 INFO    ] ================================================
[2026-10-25 19:26:37,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:26:37
[2026-10-25 19:26:38,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:26:38,909.909 INFO    ] Initializing speech engine...
[2026-10-25 19:26:38,916.916 INFO    ] 2026-10-25 19:26:38
[2026-10-25 19:26:39,205.205 INFO    ] 2026-10-25 19:26:39
[2026-10-25 19:26:39,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:26:39,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:26:39,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:26:39,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:26:39,692.692 INFO    ] time= 25/10/2026 19:26:39
[2026-10-25 19:26:39,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:26:39,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:26:39,875.875 INFO    ] No existing commands found in stream
[2026-10-25 19:26:44,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:26:44,906.906 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 19:26:51,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:26:51,820.820 INFO    ] Checking for system updates...
[2026-10-25 19:26:51,857.857 INFO    ] 200
[2026-10-25 19:26:51,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:51,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:26:51,917.917 INFO    ] No update needed
[2026-10-25 19:26:51,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 19:26:51,956.956 INFO    ] 200
[2026-10-25 19:26:51,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:26:52,000.000 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:26:52,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:26:52,074.074 INFO    ] No camera update needed
[2026-10-25 19:26:52,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:26:52,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:26:52,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:26:52,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:26:54,133.133 INFO    ] ================================================
[2026-10-25 19:26:54,149.149 INFO    ] Launching Daemon at Sun Oct 25 19:26:54 IST 2026
[2026-10-25 19:26:54,161.161 INFO    ] ================================================
[2026-10-25 19:26:54,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:26:54
[2026-10-25 19:26:55,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:26:55,585.585 INFO    ] Initializing speech engine...
[2026-10-25 19:26:55,597.597 INFO    ] 2026-10-25 19:26:55
[2026-10-25 19:26:55,859.859 INFO    ] 2026-10-25 19:26:55
[2026-10-25 19:26:55,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:26:56,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:26:56,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:26:56,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:26:56,230.230 INFO    ] time= 25/10/2026 19:26:56
[2026-10-25 19:26:56,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:26:56,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:26:56,405.405 INFO    ] No existing commands found in stream
[2026-10-25 19:27:01,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:27:01,434.434 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 19:27:05,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:27:05,145.145 INFO    ] Checking for system updates...
[2026-10-25 19:27:05,181.181 INFO    ] 200
[2026-10-25 19:27:05,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:05,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:27:05,239.239 INFO    ] No update needed
[2026-10-25 19:27:05,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 19:27:05,275.275 INFO    ] 200
[2026-10-25 19:27:05,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:05,318.318 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:27:05,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:27:05,375.375 INFO    ] No camera update needed
[2026-10-25 19:27:05,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:27:05,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:27:05,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:27:05,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:27:07,436.436 INFO    ] ================================================
[2026-10-25 19:27:07,452.452 INFO    ] Launching Daemon at Sun Oct 25 19:27:07 IST 2026
[2026-10-25 19:27:07,463.463 INFO    ] ================================================
[2026-10-25 19:27:08,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:27:08
[2026-10-25 19:27:08,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:27:09,135.135 INFO    ] Initializing speech engine...
[2026-10-25 19:27:09,148.148 INFO    ] 2026-10-25 19:27:09
[2026-10-25 19:27:09,462.462 INFO    ] 2026-10-25 19:27:09
[2026-10-25 19:27:09,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:27:09,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:27:09,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:27:09,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:27:09,898.898 INFO    ] time= 25/10/2026 19:27:09
[2026-10-25 19:27:09,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:27:09,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:27:10,044.044 INFO    ] No existing commands found in stream
[2026-10-25 19:27:15,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:27:15,061.061 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 19:27:17,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:27:17,550.550 INFO    ] Checking for system updates...
[2026-10-25 19:27:17,587.587 INFO    ] 200
[2026-10-25 19:27:17,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:17,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:17,648.648 INFO    ] No update needed
[2026-10-25 19:27:17,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 19:27:17,687.687 INFO    ] 200
[2026-10-25 19:27:17,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:17,732.732 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:27:17,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:17,797.797 INFO    ] No camera update needed
[2026-10-25 19:27:17,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:27:17,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:27:17,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:27:17,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:27:19,857.857 INFO    ] ================================================
[2026-10-25 19:27:19,874.874 INFO    ] Launching Daemon at Sun Oct 25 19:27:19 IST 2026
[2026-10-25 19:27:19,885.885 INFO    ] ================================================
[2026-10-25 19:27:20,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:27:20
[2026-10-25 19:27:21,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:27:21,341.341 INFO    ] Initializing speech engine...
[2026-10-25 19:27:21,350.350 INFO    ] 2026-10-25 19:27:21
[2026-10-25 19:27:21,600.600 INFO    ] 2026-10-25 19:27:21
[2026-10-25 19:27:21,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:27:22,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:27:22,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:27:23,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:27:23,016.016 INFO    ] time= 25/10/2026 19:27:23
[2026-10-25 19:27:23,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:27:23,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:27:23,076.076 INFO    ] No existing commands found in stream
[2026-10-25 19:27:28,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:27:28,092.092 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 19:27:29,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:27:29,783.783 INFO    ] Checking for system updates...
[2026-10-25 19:27:29,819.819 INFO    ] 200
[2026-10-25 19:27:29,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:29,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:29,878.878 INFO    ] No update needed
[2026-10-25 19:27:29,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 19:27:29,921.921 INFO    ] 200
[2026-10-25 19:27:29,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:29,965.965 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:27:30,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:30,018.018 INFO    ] No camera update needed
[2026-10-25 19:27:30,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:27:30,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:27:30,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:27:30,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:27:32,075.075 INFO    ] ================================================
[2026-10-25 19:27:32,092.092 INFO    ] Launching Daemon at Sun Oct 25 19:27:32 IST 2026
[2026-10-25 19:27:32,104.104 INFO    ] ================================================
[2026-10-25 19:27:32,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:27:32
[2026-10-25 19:27:33,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:27:33,623.623 INFO    ] Initializing speech engine...
[2026-10-25 19:27:33,632.632 INFO    ] 2026-10-25 19:27:33
[2026-10-25 19:27:33,893.893 INFO    ] 2026-10-25 19:27:33
[2026-10-25 19:27:33,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:27:34,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:27:34,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:27:34,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:27:34,372.372 INFO    ] time= 25/10/2026 19:27:34
[2026-10-25 19:27:34,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:27:34,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:27:34,494.494 INFO    ] No existing commands found in stream
[2026-10-25 19:27:39,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:27:39,508.508 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 19:27:42,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:27:42,897.897 INFO    ] Checking for system updates...
[2026-10-25 19:27:42,934.934 INFO    ] 200
[2026-10-25 19:27:42,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:42,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:42,991.991 INFO    ] No update needed
[2026-10-25 19:27:42,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 19:27:43,028.028 INFO    ] 200
[2026-10-25 19:27:43,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:43,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:27:43,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:43,139.139 INFO    ] No camera update needed
[2026-10-25 19:27:43,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:27:43,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:27:43,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:27:43,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:27:45,198.198 INFO    ] ================================================
[2026-10-25 19:27:45,214.214 INFO    ] Launching Daemon at Sun Oct 25 19:27:45 IST 2026
[2026-10-25 19:27:45,225.225 INFO    ] ================================================
[2026-10-25 19:27:45,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:27:45
[2026-10-25 19:27:46,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:27:46,909.909 INFO    ] Initializing speech engine...
[2026-10-25 19:27:46,920.920 INFO    ] 2026-10-25 19:27:46
[2026-10-25 19:27:47,235.235 INFO    ] 2026-10-25 19:27:47
[2026-10-25 19:27:47,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:27:47,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:27:47,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:27:47,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:27:47,742.742 INFO    ] time= 25/10/2026 19:27:47
[2026-10-25 19:27:47,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:27:47,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:27:47,886.886 INFO    ] No existing commands found in stream
[2026-10-25 19:27:52,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:27:52,909.909 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 19:27:55,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:27:55,141.141 INFO    ] Checking for system updates...
[2026-10-25 19:27:55,184.184 INFO    ] 200
[2026-10-25 19:27:55,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:55,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:55,244.244 INFO    ] No update needed
[2026-10-25 19:27:55,247.247 INFO    ] Checking for camera pi updates...
[2026-10-25 19:27:55,281.281 INFO    ] 200
[2026-10-25 19:27:55,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:27:55,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:27:55,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:27:55,380.380 INFO    ] No camera update needed
[2026-10-25 19:27:55,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:27:55,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:27:55,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:27:55,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:27:57,439.439 INFO    ] ================================================
[2026-10-25 19:27:57,455.455 INFO    ] Launching Daemon at Sun Oct 25 19:27:57 IST 2026
[2026-10-25 19:27:57,467.467 INFO    ] ================================================
[2026-10-25 19:27:58,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:27:58
[2026-10-25 19:27:58,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:27:59,119.119 INFO    ] Initializing speech engine...
[2026-10-25 19:27:59,131.131 INFO    ] 2026-10-25 19:27:59
[2026-10-25 19:27:59,440.440 INFO    ] 2026-10-25 19:27:59
[2026-10-25 19:27:59,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:27:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:27:59,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:27:59,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:27:59,950.950 INFO    ] time= 25/10/2026 19:27:59
[2026-10-25 19:27:59,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:28:00,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:28:00,106.106 INFO    ] No existing commands found in stream
[2026-10-25 19:28:05,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:28:05,126.126 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 19:28:06,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:28:06,630.630 INFO    ] Checking for system updates...
[2026-10-25 19:28:06,668.668 INFO    ] 200
[2026-10-25 19:28:06,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:06,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:28:06,729.729 INFO    ] No update needed
[2026-10-25 19:28:06,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 19:28:06,769.769 INFO    ] 200
[2026-10-25 19:28:06,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:06,819.819 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:28:06,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:28:06,880.880 INFO    ] No camera update needed
[2026-10-25 19:28:06,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:28:06,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:28:06,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:28:06,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:28:08,934.934 INFO    ] ================================================
[2026-10-25 19:28:08,950.950 INFO    ] Launching Daemon at Sun Oct 25 19:28:08 IST 2026
[2026-10-25 19:28:08,961.961 INFO    ] ================================================
[2026-10-25 19:28:09,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:28:09
[2026-10-25 19:28:10,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:28:10,366.366 INFO    ] Initializing speech engine...
[2026-10-25 19:28:10,372.372 INFO    ] 2026-10-25 19:28:10
[2026-10-25 19:28:10,647.647 INFO    ] 2026-10-25 19:28:10
[2026-10-25 19:28:10,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:28:10,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:28:10,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:28:11,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:28:11,122.122 INFO    ] time= 25/10/2026 19:28:11
[2026-10-25 19:28:11,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:28:11,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:28:11,262.262 INFO    ] No existing commands found in stream
[2026-10-25 19:28:16,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:28:16,277.277 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 19:28:18,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:28:18,884.884 INFO    ] Checking for system updates...
[2026-10-25 19:28:18,920.920 INFO    ] 200
[2026-10-25 19:28:18,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:18,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:28:18,977.977 INFO    ] No update needed
[2026-10-25 19:28:18,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 19:28:19,013.013 INFO    ] 200
[2026-10-25 19:28:19,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:19,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:28:19,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:28:19,114.114 INFO    ] No camera update needed
[2026-10-25 19:28:19,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:28:19,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:28:19,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:28:19,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:28:21,170.170 INFO    ] ================================================
[2026-10-25 19:28:21,185.185 INFO    ] Launching Daemon at Sun Oct 25 19:28:21 IST 2026
[2026-10-25 19:28:21,197.197 INFO    ] ================================================
[2026-10-25 19:28:21,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:28:21
[2026-10-25 19:28:22,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:28:22,649.649 INFO    ] Initializing speech engine...
[2026-10-25 19:28:22,655.655 INFO    ] 2026-10-25 19:28:22
[2026-10-25 19:28:22,917.917 INFO    ] 2026-10-25 19:28:22
[2026-10-25 19:28:22,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:28:25,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:28:25,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:28:25,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:28:25,504.504 INFO    ] time= 25/10/2026 19:28:25
[2026-10-25 19:28:25,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:28:25,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:28:25,655.655 INFO    ] No existing commands found in stream
[2026-10-25 19:28:30,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:28:30,670.670 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 19:28:34,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:28:34,369.369 INFO    ] Checking for system updates...
[2026-10-25 19:28:34,405.405 INFO    ] 200
[2026-10-25 19:28:34,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:34,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:28:34,467.467 INFO    ] No update needed
[2026-10-25 19:28:34,469.469 INFO    ] Checking for camera pi updates...
[2026-10-25 19:28:34,503.503 INFO    ] 200
[2026-10-25 19:28:34,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:34,546.546 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:28:34,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:28:34,609.609 INFO    ] No camera update needed
[2026-10-25 19:28:34,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:28:34,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:28:34,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:28:34,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:28:36,666.666 INFO    ] ================================================
[2026-10-25 19:28:36,682.682 INFO    ] Launching Daemon at Sun Oct 25 19:28:36 IST 2026
[2026-10-25 19:28:36,693.693 INFO    ] ================================================
[2026-10-25 19:28:37,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:28:37
[2026-10-25 19:28:37,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:28:38,147.147 INFO    ] Initializing speech engine...
[2026-10-25 19:28:38,165.165 INFO    ] 2026-10-25 19:28:38
[2026-10-25 19:28:38,436.436 INFO    ] 2026-10-25 19:28:38
[2026-10-25 19:28:38,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:28:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:28:38,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:28:38,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:28:38,840.840 INFO    ] time= 25/10/2026 19:28:38
[2026-10-25 19:28:38,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:28:38,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:28:38,929.929 INFO    ] No existing commands found in stream
[2026-10-25 19:28:43,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:28:43,944.944 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 19:28:48,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:28:48,138.138 INFO    ] Checking for system updates...
[2026-10-25 19:28:48,174.174 INFO    ] 200
[2026-10-25 19:28:48,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:48,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:28:48,239.239 INFO    ] No update needed
[2026-10-25 19:28:48,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 19:28:48,280.280 INFO    ] 200
[2026-10-25 19:28:48,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:28:48,323.323 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:28:48,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:28:48,503.503 INFO    ] No camera update needed
[2026-10-25 19:28:48,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:28:48,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:28:48,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:28:48,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:28:50,559.559 INFO    ] ================================================
[2026-10-25 19:28:50,574.574 INFO    ] Launching Daemon at Sun Oct 25 19:28:50 IST 2026
[2026-10-25 19:28:50,586.586 INFO    ] ================================================
[2026-10-25 19:28:51,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:28:51
[2026-10-25 19:28:51,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:28:52,183.183 INFO    ] Initializing speech engine...
[2026-10-25 19:28:52,191.191 INFO    ] 2026-10-25 19:28:52
[2026-10-25 19:28:52,457.457 INFO    ] 2026-10-25 19:28:52
[2026-10-25 19:28:52,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:28:55,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:28:55,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:28:56,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:28:56,682.682 INFO    ] time= 25/10/2026 19:28:56
[2026-10-25 19:28:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:28:56,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:28:56,741.741 INFO    ] No existing commands found in stream
[2026-10-25 19:29:01,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:29:01,754.754 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 19:29:04,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:29:04,858.858 INFO    ] Checking for system updates...
[2026-10-25 19:29:04,895.895 INFO    ] 200
[2026-10-25 19:29:04,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:04,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:04,960.960 INFO    ] No update needed
[2026-10-25 19:29:04,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 19:29:05,001.001 INFO    ] 200
[2026-10-25 19:29:05,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:05,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:29:05,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:05,117.117 INFO    ] No camera update needed
[2026-10-25 19:29:05,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:29:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:29:05,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:29:05,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:29:07,176.176 INFO    ] ================================================
[2026-10-25 19:29:07,192.192 INFO    ] Launching Daemon at Sun Oct 25 19:29:07 IST 2026
[2026-10-25 19:29:07,203.203 INFO    ] ================================================
[2026-10-25 19:29:07,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:29:07
[2026-10-25 19:29:08,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:29:08,606.606 INFO    ] Initializing speech engine...
[2026-10-25 19:29:08,618.618 INFO    ] 2026-10-25 19:29:08
[2026-10-25 19:29:08,883.883 INFO    ] 2026-10-25 19:29:08
[2026-10-25 19:29:08,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:29:09,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:29:09,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:29:09,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:29:09,265.265 INFO    ] time= 25/10/2026 19:29:09
[2026-10-25 19:29:09,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:29:09,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:29:09,437.437 INFO    ] No existing commands found in stream
[2026-10-25 19:29:14,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:29:14,471.471 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 19:29:18,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:29:18,529.529 INFO    ] Checking for system updates...
[2026-10-25 19:29:18,565.565 INFO    ] 200
[2026-10-25 19:29:18,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:18,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:29:18,622.622 INFO    ] No update needed
[2026-10-25 19:29:18,625.625 INFO    ] Checking for camera pi updates...
[2026-10-25 19:29:18,658.658 INFO    ] 200
[2026-10-25 19:29:18,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:18,701.701 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:29:18,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:29:18,763.763 INFO    ] No camera update needed
[2026-10-25 19:29:18,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:29:18,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:29:18,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:29:18,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:29:20,818.818 INFO    ] ================================================
[2026-10-25 19:29:20,833.833 INFO    ] Launching Daemon at Sun Oct 25 19:29:20 IST 2026
[2026-10-25 19:29:20,845.845 INFO    ] ================================================
[2026-10-25 19:29:21,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:29:21
[2026-10-25 19:29:21,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:29:22,249.249 INFO    ] Initializing speech engine...
[2026-10-25 19:29:22,258.258 INFO    ] 2026-10-25 19:29:22
[2026-10-25 19:29:22,552.552 INFO    ] 2026-10-25 19:29:22
[2026-10-25 19:29:22,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:29:22,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:29:22,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:29:22,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:29:22,921.921 INFO    ] time= 25/10/2026 19:29:22
[2026-10-25 19:29:22,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:29:22,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:29:23,051.051 INFO    ] No existing commands found in stream
[2026-10-25 19:29:28,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:29:28,065.065 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 19:29:31,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:29:31,991.991 INFO    ] Checking for system updates...
[2026-10-25 19:29:32,034.034 INFO    ] 200
[2026-10-25 19:29:32,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:32,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:29:32,106.106 INFO    ] No update needed
[2026-10-25 19:29:32,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 19:29:32,145.145 INFO    ] 200
[2026-10-25 19:29:32,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:32,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:29:32,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:29:32,243.243 INFO    ] No camera update needed
[2026-10-25 19:29:32,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:29:32,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:29:32,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:29:32,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:29:34,301.301 INFO    ] ================================================
[2026-10-25 19:29:34,316.316 INFO    ] Launching Daemon at Sun Oct 25 19:29:34 IST 2026
[2026-10-25 19:29:34,327.327 INFO    ] ================================================
[2026-10-25 19:29:34,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:29:34
[2026-10-25 19:29:35,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:29:35,944.944 INFO    ] Initializing speech engine...
[2026-10-25 19:29:35,952.952 INFO    ] 2026-10-25 19:29:35
[2026-10-25 19:29:36,223.223 INFO    ] 2026-10-25 19:29:36
[2026-10-25 19:29:36,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:29:36,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:29:36,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:29:36,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:29:36,771.771 INFO    ] time= 25/10/2026 19:29:36
[2026-10-25 19:29:36,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:29:36,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:29:36,925.925 INFO    ] No existing commands found in stream
[2026-10-25 19:29:41,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:29:41,953.953 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 19:29:45,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:29:45,466.466 INFO    ] Checking for system updates...
[2026-10-25 19:29:45,504.504 INFO    ] 200
[2026-10-25 19:29:45,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:45,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:45,562.562 INFO    ] No update needed
[2026-10-25 19:29:45,565.565 INFO    ] Checking for camera pi updates...
[2026-10-25 19:29:45,599.599 INFO    ] 200
[2026-10-25 19:29:45,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:45,647.647 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:29:45,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:45,698.698 INFO    ] No camera update needed
[2026-10-25 19:29:45,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:29:45,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:29:45,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:29:45,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:29:47,754.754 INFO    ] ================================================
[2026-10-25 19:29:47,770.770 INFO    ] Launching Daemon at Sun Oct 25 19:29:47 IST 2026
[2026-10-25 19:29:47,781.781 INFO    ] ================================================
[2026-10-25 19:29:48,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:29:48
[2026-10-25 19:29:49,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:29:49,421.421 INFO    ] Initializing speech engine...
[2026-10-25 19:29:49,430.430 INFO    ] 2026-10-25 19:29:49
[2026-10-25 19:29:49,733.733 INFO    ] 2026-10-25 19:29:49
[2026-10-25 19:29:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:29:50,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:29:50,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:29:50,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:29:50,667.667 INFO    ] time= 25/10/2026 19:29:50
[2026-10-25 19:29:50,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:29:50,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:29:50,786.786 INFO    ] No existing commands found in stream
[2026-10-25 19:29:55,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:29:55,814.814 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 19:29:59,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:29:59,022.022 INFO    ] Checking for system updates...
[2026-10-25 19:29:59,062.062 INFO    ] 200
[2026-10-25 19:29:59,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:59,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:59,121.121 INFO    ] No update needed
[2026-10-25 19:29:59,124.124 INFO    ] Checking for camera pi updates...
[2026-10-25 19:29:59,159.159 INFO    ] 200
[2026-10-25 19:29:59,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:29:59,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:29:59,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:29:59,281.281 INFO    ] No camera update needed
[2026-10-25 19:29:59,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:29:59,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:29:59,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:29:59,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:30:01,359.359 INFO    ] ================================================
[2026-10-25 19:30:01,457.457 INFO    ] Launching Daemon at Sun Oct 25 19:30:01 IST 2026
[2026-10-25 19:30:01,528.528 INFO    ] ================================================
[2026-10-25 19:30:02,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:30:02
[2026-10-25 19:30:03,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:30:03,575.575 INFO    ] Initializing speech engine...
[2026-10-25 19:30:03,582.582 INFO    ] 2026-10-25 19:30:03
[2026-10-25 19:30:03,914.914 INFO    ] 2026-10-25 19:30:03
[2026-10-25 19:30:03,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:30:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:30:04,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:30:04,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:30:04,502.502 INFO    ] time= 25/10/2026 19:30:04
[2026-10-25 19:30:04,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:30:04,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:30:04,590.590 INFO    ] No existing commands found in stream
[2026-10-25 19:30:09,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:30:09,624.624 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 19:30:12,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:30:12,454.454 INFO    ] Checking for system updates...
[2026-10-25 19:30:12,489.489 INFO    ] 200
[2026-10-25 19:30:12,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:12,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:12,553.553 INFO    ] No update needed
[2026-10-25 19:30:12,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 19:30:12,592.592 INFO    ] 200
[2026-10-25 19:30:12,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:12,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:30:12,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:12,696.696 INFO    ] No camera update needed
[2026-10-25 19:30:12,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:30:12,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:30:12,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:30:12,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:30:14,753.753 INFO    ] ================================================
[2026-10-25 19:30:14,769.769 INFO    ] Launching Daemon at Sun Oct 25 19:30:14 IST 2026
[2026-10-25 19:30:14,780.780 INFO    ] ================================================
[2026-10-25 19:30:15,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:30:15
[2026-10-25 19:30:15,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:30:16,184.184 INFO    ] Initializing speech engine...
[2026-10-25 19:30:16,190.190 INFO    ] 2026-10-25 19:30:16
[2026-10-25 19:30:16,463.463 INFO    ] 2026-10-25 19:30:16
[2026-10-25 19:30:16,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:30:16,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:30:16,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:30:16,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:30:16,839.839 INFO    ] time= 25/10/2026 19:30:16
[2026-10-25 19:30:16,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:30:16,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:30:17,010.010 INFO    ] No existing commands found in stream
[2026-10-25 19:30:22,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:30:22,038.038 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 19:30:24,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:30:24,568.568 INFO    ] Checking for system updates...
[2026-10-25 19:30:24,607.607 INFO    ] 200
[2026-10-25 19:30:24,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:24,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:24,665.665 INFO    ] No update needed
[2026-10-25 19:30:24,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 19:30:24,701.701 INFO    ] 200
[2026-10-25 19:30:24,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:24,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:30:24,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:24,809.809 INFO    ] No camera update needed
[2026-10-25 19:30:24,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:30:24,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:30:24,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:30:24,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:30:26,865.865 INFO    ] ================================================
[2026-10-25 19:30:26,880.880 INFO    ] Launching Daemon at Sun Oct 25 19:30:26 IST 2026
[2026-10-25 19:30:26,891.891 INFO    ] ================================================
[2026-10-25 19:30:27,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:30:27
[2026-10-25 19:30:28,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:30:28,292.292 INFO    ] Initializing speech engine...
[2026-10-25 19:30:28,300.300 INFO    ] 2026-10-25 19:30:28
[2026-10-25 19:30:28,573.573 INFO    ] 2026-10-25 19:30:28
[2026-10-25 19:30:28,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:30:29,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:30:29,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:30:30,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:30:30,297.297 INFO    ] time= 25/10/2026 19:30:30
[2026-10-25 19:30:30,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:30:30,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:30:30,395.395 INFO    ] No existing commands found in stream
[2026-10-25 19:30:35,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:30:35,410.410 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 19:30:39,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:30:39,126.126 INFO    ] Checking for system updates...
[2026-10-25 19:30:39,163.163 INFO    ] 200
[2026-10-25 19:30:39,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:39,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:30:39,223.223 INFO    ] No update needed
[2026-10-25 19:30:39,226.226 INFO    ] Checking for camera pi updates...
[2026-10-25 19:30:39,265.265 INFO    ] 200
[2026-10-25 19:30:39,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:39,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:30:39,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:30:39,385.385 INFO    ] No camera update needed
[2026-10-25 19:30:39,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:30:39,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:30:39,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:30:39,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:30:41,449.449 INFO    ] ================================================
[2026-10-25 19:30:41,464.464 INFO    ] Launching Daemon at Sun Oct 25 19:30:41 IST 2026
[2026-10-25 19:30:41,474.474 INFO    ] ================================================
[2026-10-25 19:30:42,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:30:42
[2026-10-25 19:30:42,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:30:42,984.984 INFO    ] Initializing speech engine...
[2026-10-25 19:30:42,992.992 INFO    ] 2026-10-25 19:30:42
[2026-10-25 19:30:43,264.264 INFO    ] 2026-10-25 19:30:43
[2026-10-25 19:30:43,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:30:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:30:43,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:30:43,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:30:43,754.754 INFO    ] time= 25/10/2026 19:30:43
[2026-10-25 19:30:43,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:30:43,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:30:43,893.893 INFO    ] No existing commands found in stream
[2026-10-25 19:30:48,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:30:48,910.910 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 19:30:49,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:30:49,387.387 INFO    ] Checking for system updates...
[2026-10-25 19:30:49,428.428 INFO    ] 200
[2026-10-25 19:30:49,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:49,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:49,497.497 INFO    ] No update needed
[2026-10-25 19:30:49,500.500 INFO    ] Checking for camera pi updates...
[2026-10-25 19:30:49,534.534 INFO    ] 200
[2026-10-25 19:30:49,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:30:49,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:30:49,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:30:49,632.632 INFO    ] No camera update needed
[2026-10-25 19:30:49,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:30:49,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:30:49,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:30:49,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:30:51,686.686 INFO    ] ================================================
[2026-10-25 19:30:51,701.701 INFO    ] Launching Daemon at Sun Oct 25 19:30:51 IST 2026
[2026-10-25 19:30:51,713.713 INFO    ] ================================================
[2026-10-25 19:30:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:30:52
[2026-10-25 19:30:52,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:30:53,119.119 INFO    ] Initializing speech engine...
[2026-10-25 19:30:53,125.125 INFO    ] 2026-10-25 19:30:53
[2026-10-25 19:30:53,400.400 INFO    ] 2026-10-25 19:30:53
[2026-10-25 19:30:53,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:30:53,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:30:53,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:30:53,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:30:53,754.754 INFO    ] time= 25/10/2026 19:30:53
[2026-10-25 19:30:53,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:30:53,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:30:53,852.852 INFO    ] No existing commands found in stream
[2026-10-25 19:30:58,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:30:58,867.867 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 19:31:01,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:31:01,645.645 INFO    ] Checking for system updates...
[2026-10-25 19:31:01,682.682 INFO    ] 200
[2026-10-25 19:31:01,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:01,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:31:01,746.746 INFO    ] No update needed
[2026-10-25 19:31:01,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 19:31:01,782.782 INFO    ] 200
[2026-10-25 19:31:01,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:01,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:31:01,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:31:01,990.990 INFO    ] No camera update needed
[2026-10-25 19:31:01,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:31:02,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:31:02,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:31:02,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:31:04,066.066 INFO    ] ================================================
[2026-10-25 19:31:04,082.082 INFO    ] Launching Daemon at Sun Oct 25 19:31:04 IST 2026
[2026-10-25 19:31:04,093.093 INFO    ] ================================================
[2026-10-25 19:31:04,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:31:04
[2026-10-25 19:31:05,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:31:05,686.686 INFO    ] Initializing speech engine...
[2026-10-25 19:31:05,699.699 INFO    ] 2026-10-25 19:31:05
[2026-10-25 19:31:05,986.986 INFO    ] 2026-10-25 19:31:05
[2026-10-25 19:31:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:31:06,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:31:06,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:31:06,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:31:06,529.529 INFO    ] time= 25/10/2026 19:31:06
[2026-10-25 19:31:06,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:31:06,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:31:06,675.675 INFO    ] No existing commands found in stream
[2026-10-25 19:31:11,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:31:11,701.701 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 19:31:12,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:31:12,793.793 INFO    ] Checking for system updates...
[2026-10-25 19:31:12,829.829 INFO    ] 200
[2026-10-25 19:31:12,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:12,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:12,895.895 INFO    ] No update needed
[2026-10-25 19:31:12,898.898 INFO    ] Checking for camera pi updates...
[2026-10-25 19:31:12,933.933 INFO    ] 200
[2026-10-25 19:31:12,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:12,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:31:13,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:13,045.045 INFO    ] No camera update needed
[2026-10-25 19:31:13,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:31:13,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:31:13,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:31:13,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:31:15,105.105 INFO    ] ================================================
[2026-10-25 19:31:15,121.121 INFO    ] Launching Daemon at Sun Oct 25 19:31:15 IST 2026
[2026-10-25 19:31:15,132.132 INFO    ] ================================================
[2026-10-25 19:31:15,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:31:15
[2026-10-25 19:31:16,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:31:16,609.609 INFO    ] Initializing speech engine...
[2026-10-25 19:31:16,616.616 INFO    ] 2026-10-25 19:31:16
[2026-10-25 19:31:16,867.867 INFO    ] 2026-10-25 19:31:16
[2026-10-25 19:31:16,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:31:17,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:31:17,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:31:17,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:31:17,342.342 INFO    ] time= 25/10/2026 19:31:17
[2026-10-25 19:31:17,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:31:17,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:31:17,489.489 INFO    ] No existing commands found in stream
[2026-10-25 19:31:22,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:31:22,505.505 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 19:31:26,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:31:26,606.606 INFO    ] Checking for system updates...
[2026-10-25 19:31:26,642.642 INFO    ] 200
[2026-10-25 19:31:26,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:26,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:26,699.699 INFO    ] No update needed
[2026-10-25 19:31:26,702.702 INFO    ] Checking for camera pi updates...
[2026-10-25 19:31:26,741.741 INFO    ] 200
[2026-10-25 19:31:26,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:26,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:31:26,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:26,834.834 INFO    ] No camera update needed
[2026-10-25 19:31:26,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:31:26,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:31:26,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:31:26,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:31:28,892.892 INFO    ] ================================================
[2026-10-25 19:31:28,908.908 INFO    ] Launching Daemon at Sun Oct 25 19:31:28 IST 2026
[2026-10-25 19:31:28,919.919 INFO    ] ================================================
[2026-10-25 19:31:29,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:31:29
[2026-10-25 19:31:30,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:31:30,380.380 INFO    ] Initializing speech engine...
[2026-10-25 19:31:30,390.390 INFO    ] 2026-10-25 19:31:30
[2026-10-25 19:31:30,647.647 INFO    ] 2026-10-25 19:31:30
[2026-10-25 19:31:30,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:31:32,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:31:32,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:31:32,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:31:32,803.803 INFO    ] time= 25/10/2026 19:31:32
[2026-10-25 19:31:32,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:31:32,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:31:32,894.894 INFO    ] No existing commands found in stream
[2026-10-25 19:31:37,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:31:37,909.909 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 19:31:41,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:31:41,875.875 INFO    ] Checking for system updates...
[2026-10-25 19:31:41,916.916 INFO    ] 200
[2026-10-25 19:31:41,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:41,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:31:41,975.975 INFO    ] No update needed
[2026-10-25 19:31:41,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 19:31:42,012.012 INFO    ] 200
[2026-10-25 19:31:42,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:42,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:31:42,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:31:42,126.126 INFO    ] No camera update needed
[2026-10-25 19:31:42,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:31:42,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:31:42,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:31:42,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:31:44,182.182 INFO    ] ================================================
[2026-10-25 19:31:44,197.197 INFO    ] Launching Daemon at Sun Oct 25 19:31:44 IST 2026
[2026-10-25 19:31:44,208.208 INFO    ] ================================================
[2026-10-25 19:31:44,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:31:44
[2026-10-25 19:31:45,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:31:45,844.844 INFO    ] Initializing speech engine...
[2026-10-25 19:31:45,850.850 INFO    ] 2026-10-25 19:31:45
[2026-10-25 19:31:46,163.163 INFO    ] 2026-10-25 19:31:46
[2026-10-25 19:31:46,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:31:46,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:31:46,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:31:46,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:31:46,679.679 INFO    ] time= 25/10/2026 19:31:46
[2026-10-25 19:31:46,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:31:46,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:31:46,838.838 INFO    ] No existing commands found in stream
[2026-10-25 19:31:51,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:31:51,864.864 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 19:31:53,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:31:53,677.677 INFO    ] Checking for system updates...
[2026-10-25 19:31:53,714.714 INFO    ] 200
[2026-10-25 19:31:53,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:53,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:53,774.774 INFO    ] No update needed
[2026-10-25 19:31:53,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 19:31:53,815.815 INFO    ] 200
[2026-10-25 19:31:53,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:31:53,861.861 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:31:53,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:31:53,917.917 INFO    ] No camera update needed
[2026-10-25 19:31:53,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:31:53,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:31:53,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:31:53,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:31:55,978.978 INFO    ] ================================================
[2026-10-25 19:31:56,996.996 INFO    ] Launching Daemon at Sun Oct 25 19:31:55 IST 2026
[2026-10-25 19:31:56,008.008 INFO    ] ================================================
[2026-10-25 19:31:56,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:31:56
[2026-10-25 19:31:57,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:31:57,452.452 INFO    ] Initializing speech engine...
[2026-10-25 19:31:57,473.473 INFO    ] 2026-10-25 19:31:57
[2026-10-25 19:31:57,735.735 INFO    ] 2026-10-25 19:31:57
[2026-10-25 19:31:57,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:31:57,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:31:58,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:31:58,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:31:58,223.223 INFO    ] time= 25/10/2026 19:31:58
[2026-10-25 19:31:58,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:31:58,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:31:58,370.370 INFO    ] No existing commands found in stream
[2026-10-25 19:32:03,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:32:03,385.385 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 19:32:04,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:32:04,512.512 INFO    ] Checking for system updates...
[2026-10-25 19:32:04,548.548 INFO    ] 200
[2026-10-25 19:32:04,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:04,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:04,613.613 INFO    ] No update needed
[2026-10-25 19:32:04,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 19:32:04,649.649 INFO    ] 200
[2026-10-25 19:32:04,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:04,692.692 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:32:04,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:04,759.759 INFO    ] No camera update needed
[2026-10-25 19:32:04,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:32:04,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:32:04,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:32:04,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:32:06,817.817 INFO    ] ================================================
[2026-10-25 19:32:06,833.833 INFO    ] Launching Daemon at Sun Oct 25 19:32:06 IST 2026
[2026-10-25 19:32:06,844.844 INFO    ] ================================================
[2026-10-25 19:32:07,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:32:07
[2026-10-25 19:32:08,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:32:08,308.308 INFO    ] Initializing speech engine...
[2026-10-25 19:32:08,317.317 INFO    ] 2026-10-25 19:32:08
[2026-10-25 19:32:08,601.601 INFO    ] 2026-10-25 19:32:08
[2026-10-25 19:32:08,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:32:08,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:32:08,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:32:09,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:32:09,055.055 INFO    ] time= 25/10/2026 19:32:09
[2026-10-25 19:32:09,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:32:09,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:32:09,195.195 INFO    ] No existing commands found in stream
[2026-10-25 19:32:14,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:32:14,210.210 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 19:32:18,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:32:18,136.136 INFO    ] Checking for system updates...
[2026-10-25 19:32:18,173.173 INFO    ] 200
[2026-10-25 19:32:18,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:18,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:18,233.233 INFO    ] No update needed
[2026-10-25 19:32:18,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 19:32:18,274.274 INFO    ] 200
[2026-10-25 19:32:18,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:18,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:32:18,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:18,387.387 INFO    ] No camera update needed
[2026-10-25 19:32:18,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:32:18,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:32:18,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:32:18,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:32:20,449.449 INFO    ] ================================================
[2026-10-25 19:32:20,465.465 INFO    ] Launching Daemon at Sun Oct 25 19:32:20 IST 2026
[2026-10-25 19:32:20,476.476 INFO    ] ================================================
[2026-10-25 19:32:21,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:32:21
[2026-10-25 19:32:21,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:32:22,074.074 INFO    ] Initializing speech engine...
[2026-10-25 19:32:22,084.084 INFO    ] 2026-10-25 19:32:22
[2026-10-25 19:32:22,352.352 INFO    ] 2026-10-25 19:32:22
[2026-10-25 19:32:22,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:32:22,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:32:22,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:32:22,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:32:22,818.818 INFO    ] time= 25/10/2026 19:32:22
[2026-10-25 19:32:22,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:32:22,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:32:22,965.965 INFO    ] No existing commands found in stream
[2026-10-25 19:32:27,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:32:27,981.981 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 19:32:29,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:32:29,855.855 INFO    ] Checking for system updates...
[2026-10-25 19:32:29,900.900 INFO    ] 200
[2026-10-25 19:32:29,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:29,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:32:29,958.958 INFO    ] No update needed
[2026-10-25 19:32:29,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 19:32:29,994.994 INFO    ] 200
[2026-10-25 19:32:29,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:30,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:32:30,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:32:30,086.086 INFO    ] No camera update needed
[2026-10-25 19:32:30,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:32:30,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:32:30,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:32:30,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:32:32,142.142 INFO    ] ================================================
[2026-10-25 19:32:32,159.159 INFO    ] Launching Daemon at Sun Oct 25 19:32:32 IST 2026
[2026-10-25 19:32:32,171.171 INFO    ] ================================================
[2026-10-25 19:32:32,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:32:32
[2026-10-25 19:32:33,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:32:33,662.662 INFO    ] Initializing speech engine...
[2026-10-25 19:32:33,681.681 INFO    ] 2026-10-25 19:32:33
[2026-10-25 19:32:33,945.945 INFO    ] 2026-10-25 19:32:33
[2026-10-25 19:32:33,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:32:35,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:32:35,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:32:35,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:32:35,336.336 INFO    ] time= 25/10/2026 19:32:35
[2026-10-25 19:32:35,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:32:35,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:32:35,456.456 INFO    ] No existing commands found in stream
[2026-10-25 19:32:40,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:32:40,484.484 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 19:32:42,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:32:42,983.983 INFO    ] Checking for system updates...
[2026-10-25 19:32:43,023.023 INFO    ] 200
[2026-10-25 19:32:43,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:43,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:43,081.081 INFO    ] No update needed
[2026-10-25 19:32:43,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 19:32:43,117.117 INFO    ] 200
[2026-10-25 19:32:43,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:43,164.164 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:32:43,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:32:43,216.216 INFO    ] No camera update needed
[2026-10-25 19:32:43,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:32:43,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:32:43,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:32:43,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:32:45,271.271 INFO    ] ================================================
[2026-10-25 19:32:45,286.286 INFO    ] Launching Daemon at Sun Oct 25 19:32:45 IST 2026
[2026-10-25 19:32:45,297.297 INFO    ] ================================================
[2026-10-25 19:32:45,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:32:45
[2026-10-25 19:32:46,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:32:46,907.907 INFO    ] Initializing speech engine...
[2026-10-25 19:32:46,918.918 INFO    ] 2026-10-25 19:32:46
[2026-10-25 19:32:47,226.226 INFO    ] 2026-10-25 19:32:47
[2026-10-25 19:32:47,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:32:47,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:32:47,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:32:47,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:32:47,738.738 INFO    ] time= 25/10/2026 19:32:47
[2026-10-25 19:32:47,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:32:47,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:32:47,887.887 INFO    ] No existing commands found in stream
[2026-10-25 19:32:52,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:32:52,906.906 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 19:32:54,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:32:54,856.856 INFO    ] Checking for system updates...
[2026-10-25 19:32:54,893.893 INFO    ] 200
[2026-10-25 19:32:54,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:54,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:32:54,952.952 INFO    ] No update needed
[2026-10-25 19:32:54,955.955 INFO    ] Checking for camera pi updates...
[2026-10-25 19:32:55,008.008 INFO    ] 200
[2026-10-25 19:32:55,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:32:55,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:32:55,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:32:55,119.119 INFO    ] No camera update needed
[2026-10-25 19:32:55,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:32:55,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:32:55,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:32:55,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:32:57,177.177 INFO    ] ================================================
[2026-10-25 19:32:57,193.193 INFO    ] Launching Daemon at Sun Oct 25 19:32:57 IST 2026
[2026-10-25 19:32:57,204.204 INFO    ] ================================================
[2026-10-25 19:32:57,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:32:57
[2026-10-25 19:32:58,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:32:58,603.603 INFO    ] Initializing speech engine...
[2026-10-25 19:32:58,610.610 INFO    ] 2026-10-25 19:32:58
[2026-10-25 19:32:58,904.904 INFO    ] 2026-10-25 19:32:58
[2026-10-25 19:32:58,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:32:59,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:32:59,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:32:59,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:32:59,275.275 INFO    ] time= 25/10/2026 19:32:59
[2026-10-25 19:32:59,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:32:59,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:32:59,340.340 INFO    ] No existing commands found in stream
[2026-10-25 19:33:04,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:33:04,383.383 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 19:33:07,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:33:07,218.218 INFO    ] Checking for system updates...
[2026-10-25 19:33:07,262.262 INFO    ] 200
[2026-10-25 19:33:07,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:07,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:33:07,320.320 INFO    ] No update needed
[2026-10-25 19:33:07,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 19:33:07,356.356 INFO    ] 200
[2026-10-25 19:33:07,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:07,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:33:07,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:33:07,475.475 INFO    ] No camera update needed
[2026-10-25 19:33:07,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:33:07,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:33:07,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:33:07,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:33:09,529.529 INFO    ] ================================================
[2026-10-25 19:33:09,545.545 INFO    ] Launching Daemon at Sun Oct 25 19:33:09 IST 2026
[2026-10-25 19:33:09,556.556 INFO    ] ================================================
[2026-10-25 19:33:10,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:33:10
[2026-10-25 19:33:10,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:33:10,955.955 INFO    ] Initializing speech engine...
[2026-10-25 19:33:10,974.974 INFO    ] 2026-10-25 19:33:10
[2026-10-25 19:33:11,246.246 INFO    ] 2026-10-25 19:33:11
[2026-10-25 19:33:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:33:11,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:33:11,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:33:11,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:33:11,637.637 INFO    ] time= 25/10/2026 19:33:11
[2026-10-25 19:33:11,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:33:11,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:33:11,742.742 INFO    ] No existing commands found in stream
[2026-10-25 19:33:16,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:33:16,757.757 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 19:33:17,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:33:17,295.295 INFO    ] Checking for system updates...
[2026-10-25 19:33:17,331.331 INFO    ] 200
[2026-10-25 19:33:17,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:17,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:17,388.388 INFO    ] No update needed
[2026-10-25 19:33:17,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 19:33:17,427.427 INFO    ] 200
[2026-10-25 19:33:17,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:17,470.470 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:33:17,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:17,521.521 INFO    ] No camera update needed
[2026-10-25 19:33:17,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:33:17,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:33:17,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:33:17,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:33:19,577.577 INFO    ] ================================================
[2026-10-25 19:33:19,592.592 INFO    ] Launching Daemon at Sun Oct 25 19:33:19 IST 2026
[2026-10-25 19:33:19,603.603 INFO    ] ================================================
[2026-10-25 19:33:20,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:33:20
[2026-10-25 19:33:20,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:33:21,004.004 INFO    ] Initializing speech engine...
[2026-10-25 19:33:21,013.013 INFO    ] 2026-10-25 19:33:21
[2026-10-25 19:33:21,302.302 INFO    ] 2026-10-25 19:33:21
[2026-10-25 19:33:21,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:33:21,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:33:21,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:33:21,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:33:21,674.674 INFO    ] time= 25/10/2026 19:33:21
[2026-10-25 19:33:21,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:33:21,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:33:21,797.797 INFO    ] No existing commands found in stream
[2026-10-25 19:33:26,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:33:26,812.812 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 19:33:27,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:33:27,279.279 INFO    ] Checking for system updates...
[2026-10-25 19:33:27,315.315 INFO    ] 200
[2026-10-25 19:33:27,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:27,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:33:27,376.376 INFO    ] No update needed
[2026-10-25 19:33:27,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 19:33:27,413.413 INFO    ] 200
[2026-10-25 19:33:27,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:27,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:33:27,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:33:27,503.503 INFO    ] No camera update needed
[2026-10-25 19:33:27,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:33:27,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:33:27,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:33:27,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:33:29,559.559 INFO    ] ================================================
[2026-10-25 19:33:29,575.575 INFO    ] Launching Daemon at Sun Oct 25 19:33:29 IST 2026
[2026-10-25 19:33:29,585.585 INFO    ] ================================================
[2026-10-25 19:33:30,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:33:30
[2026-10-25 19:33:30,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:33:31,060.060 INFO    ] Initializing speech engine...
[2026-10-25 19:33:31,066.066 INFO    ] 2026-10-25 19:33:31
[2026-10-25 19:33:31,359.359 INFO    ] 2026-10-25 19:33:31
[2026-10-25 19:33:31,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:33:31,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:33:31,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:33:31,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:33:31,766.766 INFO    ] time= 25/10/2026 19:33:31
[2026-10-25 19:33:31,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:33:31,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:33:31,945.945 INFO    ] No existing commands found in stream
[2026-10-25 19:33:36,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:33:36,980.980 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 19:33:40,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:33:40,909.909 INFO    ] Checking for system updates...
[2026-10-25 19:33:40,947.947 INFO    ] 200
[2026-10-25 19:33:40,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:41,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:41,008.008 INFO    ] No update needed
[2026-10-25 19:33:41,011.011 INFO    ] Checking for camera pi updates...
[2026-10-25 19:33:41,046.046 INFO    ] 200
[2026-10-25 19:33:41,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:41,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:33:41,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:41,166.166 INFO    ] No camera update needed
[2026-10-25 19:33:41,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:33:41,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:33:41,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:33:41,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:33:43,226.226 INFO    ] ================================================
[2026-10-25 19:33:43,241.241 INFO    ] Launching Daemon at Sun Oct 25 19:33:43 IST 2026
[2026-10-25 19:33:43,251.251 INFO    ] ================================================
[2026-10-25 19:33:43,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:33:43
[2026-10-25 19:33:44,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:33:44,689.689 INFO    ] Initializing speech engine...
[2026-10-25 19:33:44,696.696 INFO    ] 2026-10-25 19:33:44
[2026-10-25 19:33:44,947.947 INFO    ] 2026-10-25 19:33:44
[2026-10-25 19:33:44,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:33:45,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:33:45,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:33:45,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:33:45,293.293 INFO    ] time= 25/10/2026 19:33:45
[2026-10-25 19:33:45,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:33:45,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:33:45,428.428 INFO    ] No existing commands found in stream
[2026-10-25 19:33:50,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:33:50,443.443 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 19:33:53,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:33:53,819.819 INFO    ] Checking for system updates...
[2026-10-25 19:33:53,857.857 INFO    ] 200
[2026-10-25 19:33:53,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:53,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:53,926.926 INFO    ] No update needed
[2026-10-25 19:33:53,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 19:33:53,964.964 INFO    ] 200
[2026-10-25 19:33:53,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:33:54,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:33:54,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:33:54,073.073 INFO    ] No camera update needed
[2026-10-25 19:33:54,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:33:54,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:33:54,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:33:54,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:33:56,127.127 INFO    ] ================================================
[2026-10-25 19:33:56,142.142 INFO    ] Launching Daemon at Sun Oct 25 19:33:56 IST 2026
[2026-10-25 19:33:56,154.154 INFO    ] ================================================
[2026-10-25 19:33:56,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:33:56
[2026-10-25 19:33:57,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:33:57,587.587 INFO    ] Initializing speech engine...
[2026-10-25 19:33:57,602.602 INFO    ] 2026-10-25 19:33:57
[2026-10-25 19:33:57,863.863 INFO    ] 2026-10-25 19:33:57
[2026-10-25 19:33:57,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:33:58,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:33:58,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:33:58,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:33:58,232.232 INFO    ] time= 25/10/2026 19:33:58
[2026-10-25 19:33:58,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:33:58,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:33:58,397.397 INFO    ] No existing commands found in stream
[2026-10-25 19:34:03,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:34:03,435.435 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 19:34:08,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:34:08,282.282 INFO    ] Checking for system updates...
[2026-10-25 19:34:08,319.319 INFO    ] 200
[2026-10-25 19:34:08,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:08,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:34:08,377.377 INFO    ] No update needed
[2026-10-25 19:34:08,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 19:34:08,414.414 INFO    ] 200
[2026-10-25 19:34:08,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:08,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:34:08,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:34:08,520.520 INFO    ] No camera update needed
[2026-10-25 19:34:08,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:34:08,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:34:08,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:34:08,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:34:10,576.576 INFO    ] ================================================
[2026-10-25 19:34:10,591.591 INFO    ] Launching Daemon at Sun Oct 25 19:34:10 IST 2026
[2026-10-25 19:34:10,601.601 INFO    ] ================================================
[2026-10-25 19:34:11,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:34:11
[2026-10-25 19:34:11,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:34:12,020.020 INFO    ] Initializing speech engine...
[2026-10-25 19:34:12,027.027 INFO    ] 2026-10-25 19:34:12
[2026-10-25 19:34:12,322.322 INFO    ] 2026-10-25 19:34:12
[2026-10-25 19:34:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:34:12,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:34:12,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:34:12,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:34:12,745.745 INFO    ] time= 25/10/2026 19:34:12
[2026-10-25 19:34:12,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:34:12,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:34:12,894.894 INFO    ] No existing commands found in stream
[2026-10-25 19:34:17,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:34:17,916.916 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 19:34:22,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:34:22,290.290 INFO    ] Checking for system updates...
[2026-10-25 19:34:22,326.326 INFO    ] 200
[2026-10-25 19:34:22,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:22,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:34:22,383.383 INFO    ] No update needed
[2026-10-25 19:34:22,386.386 INFO    ] Checking for camera pi updates...
[2026-10-25 19:34:22,420.420 INFO    ] 200
[2026-10-25 19:34:22,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:22,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:34:22,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:34:22,524.524 INFO    ] No camera update needed
[2026-10-25 19:34:22,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:34:22,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:34:22,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:34:22,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:34:24,580.580 INFO    ] ================================================
[2026-10-25 19:34:24,596.596 INFO    ] Launching Daemon at Sun Oct 25 19:34:24 IST 2026
[2026-10-25 19:34:24,607.607 INFO    ] ================================================
[2026-10-25 19:34:25,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:34:25
[2026-10-25 19:34:25,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:34:26,199.199 INFO    ] Initializing speech engine...
[2026-10-25 19:34:26,208.208 INFO    ] 2026-10-25 19:34:26
[2026-10-25 19:34:26,496.496 INFO    ] 2026-10-25 19:34:26
[2026-10-25 19:34:26,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:34:26,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:34:26,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:34:27,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:34:27,033.033 INFO    ] time= 25/10/2026 19:34:27
[2026-10-25 19:34:27,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:34:27,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:34:27,169.169 INFO    ] No existing commands found in stream
[2026-10-25 19:34:32,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:34:32,198.198 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 19:34:33,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:34:33,364.364 INFO    ] Checking for system updates...
[2026-10-25 19:34:33,402.402 INFO    ] 200
[2026-10-25 19:34:33,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:33,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:34:33,470.470 INFO    ] No update needed
[2026-10-25 19:34:33,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 19:34:33,509.509 INFO    ] 200
[2026-10-25 19:34:33,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:33,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:34:33,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:34:33,619.619 INFO    ] No camera update needed
[2026-10-25 19:34:33,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:34:33,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:34:33,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:34:33,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:34:35,678.678 INFO    ] ================================================
[2026-10-25 19:34:35,693.693 INFO    ] Launching Daemon at Sun Oct 25 19:34:35 IST 2026
[2026-10-25 19:34:35,704.704 INFO    ] ================================================
[2026-10-25 19:34:36,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:34:36
[2026-10-25 19:34:36,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:34:37,101.101 INFO    ] Initializing speech engine...
[2026-10-25 19:34:37,110.110 INFO    ] 2026-10-25 19:34:37
[2026-10-25 19:34:37,405.405 INFO    ] 2026-10-25 19:34:37
[2026-10-25 19:34:37,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:34:39,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:34:39,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:34:39,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:34:39,754.754 INFO    ] time= 25/10/2026 19:34:39
[2026-10-25 19:34:39,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:34:39,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:34:39,833.833 INFO    ] No existing commands found in stream
[2026-10-25 19:34:44,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:34:44,848.848 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 19:34:47,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:34:47,812.812 INFO    ] Checking for system updates...
[2026-10-25 19:34:47,848.848 INFO    ] 200
[2026-10-25 19:34:47,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:47,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:34:47,906.906 INFO    ] No update needed
[2026-10-25 19:34:47,908.908 INFO    ] Checking for camera pi updates...
[2026-10-25 19:34:47,942.942 INFO    ] 200
[2026-10-25 19:34:47,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:34:47,990.990 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:34:48,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:34:48,040.040 INFO    ] No camera update needed
[2026-10-25 19:34:48,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:34:48,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:34:48,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:34:48,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:34:50,096.096 INFO    ] ================================================
[2026-10-25 19:34:50,111.111 INFO    ] Launching Daemon at Sun Oct 25 19:34:50 IST 2026
[2026-10-25 19:34:50,121.121 INFO    ] ================================================
[2026-10-25 19:34:50,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:34:50
[2026-10-25 19:34:51,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:34:51,570.570 INFO    ] Initializing speech engine...
[2026-10-25 19:34:51,577.577 INFO    ] 2026-10-25 19:34:51
[2026-10-25 19:34:51,838.838 INFO    ] 2026-10-25 19:34:51
[2026-10-25 19:34:51,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:34:52,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:34:52,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:34:52,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:34:52,378.378 INFO    ] time= 25/10/2026 19:34:52
[2026-10-25 19:34:52,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:34:52,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:34:52,501.501 INFO    ] No existing commands found in stream
[2026-10-25 19:34:57,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:34:57,534.534 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 19:35:01,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:35:01,718.718 INFO    ] Checking for system updates...
[2026-10-25 19:35:01,799.799 INFO    ] 200
[2026-10-25 19:35:01,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:01,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:01,958.958 INFO    ] No update needed
[2026-10-25 19:35:01,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 19:35:02,045.045 INFO    ] 200
[2026-10-25 19:35:02,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:02,130.130 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:35:02,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:02,188.188 INFO    ] No camera update needed
[2026-10-25 19:35:02,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:35:02,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:35:02,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:35:02,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:35:04,248.248 INFO    ] ================================================
[2026-10-25 19:35:04,263.263 INFO    ] Launching Daemon at Sun Oct 25 19:35:04 IST 2026
[2026-10-25 19:35:04,274.274 INFO    ] ================================================
[2026-10-25 19:35:04,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:35:04
[2026-10-25 19:35:05,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:35:05,691.691 INFO    ] Initializing speech engine...
[2026-10-25 19:35:05,705.705 INFO    ] 2026-10-25 19:35:05
[2026-10-25 19:35:05,961.961 INFO    ] 2026-10-25 19:35:05
[2026-10-25 19:35:05,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:35:07,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:35:07,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:35:10,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:35:10,367.367 INFO    ] time= 25/10/2026 19:35:10
[2026-10-25 19:35:10,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:35:10,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:35:10,418.418 INFO    ] No existing commands found in stream
[2026-10-25 19:35:15,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:35:15,430.430 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 19:35:17,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:35:17,305.305 INFO    ] Checking for system updates...
[2026-10-25 19:35:17,342.342 INFO    ] 200
[2026-10-25 19:35:17,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:17,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:17,399.399 INFO    ] No update needed
[2026-10-25 19:35:17,401.401 INFO    ] Checking for camera pi updates...
[2026-10-25 19:35:17,437.437 INFO    ] 200
[2026-10-25 19:35:17,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:17,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:35:17,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:17,646.646 INFO    ] No camera update needed
[2026-10-25 19:35:17,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:35:17,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:35:17,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:35:17,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:35:19,702.702 INFO    ] ================================================
[2026-10-25 19:35:19,716.716 INFO    ] Launching Daemon at Sun Oct 25 19:35:19 IST 2026
[2026-10-25 19:35:19,727.727 INFO    ] ================================================
[2026-10-25 19:35:20,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:35:20
[2026-10-25 19:35:20,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:35:21,178.178 INFO    ] Initializing speech engine...
[2026-10-25 19:35:21,187.187 INFO    ] 2026-10-25 19:35:21
[2026-10-25 19:35:21,437.437 INFO    ] 2026-10-25 19:35:21
[2026-10-25 19:35:21,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:35:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:35:21,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:35:21,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:35:21,993.993 INFO    ] time= 25/10/2026 19:35:21
[2026-10-25 19:35:21,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:35:22,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:35:22,123.123 INFO    ] No existing commands found in stream
[2026-10-25 19:35:27,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:35:27,156.156 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 19:35:30,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:35:30,723.723 INFO    ] Checking for system updates...
[2026-10-25 19:35:30,759.759 INFO    ] 200
[2026-10-25 19:35:30,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:30,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:35:30,817.817 INFO    ] No update needed
[2026-10-25 19:35:30,819.819 INFO    ] Checking for camera pi updates...
[2026-10-25 19:35:30,853.853 INFO    ] 200
[2026-10-25 19:35:30,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:30,896.896 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:35:30,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:35:30,957.957 INFO    ] No camera update needed
[2026-10-25 19:35:30,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:35:30,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:35:30,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:35:30,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:35:33,015.015 INFO    ] ================================================
[2026-10-25 19:35:33,030.030 INFO    ] Launching Daemon at Sun Oct 25 19:35:33 IST 2026
[2026-10-25 19:35:33,041.041 INFO    ] ================================================
[2026-10-25 19:35:33,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:35:33
[2026-10-25 19:35:34,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:35:34,479.479 INFO    ] Initializing speech engine...
[2026-10-25 19:35:34,488.488 INFO    ] 2026-10-25 19:35:34
[2026-10-25 19:35:34,786.786 INFO    ] 2026-10-25 19:35:34
[2026-10-25 19:35:34,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:35:35,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:35:35,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:35:35,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:35:35,158.158 INFO    ] time= 25/10/2026 19:35:35
[2026-10-25 19:35:35,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:35:35,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:35:35,280.280 INFO    ] No existing commands found in stream
[2026-10-25 19:35:40,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:35:40,296.296 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 19:35:42,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:35:42,238.238 INFO    ] Checking for system updates...
[2026-10-25 19:35:42,274.274 INFO    ] 200
[2026-10-25 19:35:42,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:42,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:35:42,332.332 INFO    ] No update needed
[2026-10-25 19:35:42,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 19:35:42,368.368 INFO    ] 200
[2026-10-25 19:35:42,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:42,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:35:42,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:35:42,464.464 INFO    ] No camera update needed
[2026-10-25 19:35:42,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:35:42,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:35:42,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:35:42,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:35:44,519.519 INFO    ] ================================================
[2026-10-25 19:35:44,533.533 INFO    ] Launching Daemon at Sun Oct 25 19:35:44 IST 2026
[2026-10-25 19:35:44,544.544 INFO    ] ================================================
[2026-10-25 19:35:45,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:35:45
[2026-10-25 19:35:45,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:35:45,996.996 INFO    ] Initializing speech engine...
[2026-10-25 19:35:46,004.004 INFO    ] 2026-10-25 19:35:45
[2026-10-25 19:35:46,287.287 INFO    ] 2026-10-25 19:35:46
[2026-10-25 19:35:46,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:35:46,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:35:46,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:35:46,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:35:46,762.762 INFO    ] time= 25/10/2026 19:35:46
[2026-10-25 19:35:46,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:35:46,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:35:46,883.883 INFO    ] No existing commands found in stream
[2026-10-25 19:35:51,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:35:51,899.899 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 19:35:52,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:35:52,457.457 INFO    ] Checking for system updates...
[2026-10-25 19:35:52,495.495 INFO    ] 200
[2026-10-25 19:35:52,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:52,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:52,555.555 INFO    ] No update needed
[2026-10-25 19:35:52,557.557 INFO    ] Checking for camera pi updates...
[2026-10-25 19:35:52,595.595 INFO    ] 200
[2026-10-25 19:35:52,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:35:52,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:35:52,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:35:52,706.706 INFO    ] No camera update needed
[2026-10-25 19:35:52,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:35:52,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:35:52,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:35:52,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:35:54,772.772 INFO    ] ================================================
[2026-10-25 19:35:54,787.787 INFO    ] Launching Daemon at Sun Oct 25 19:35:54 IST 2026
[2026-10-25 19:35:54,797.797 INFO    ] ================================================
[2026-10-25 19:35:55,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:35:55
[2026-10-25 19:35:56,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:35:56,335.335 INFO    ] Initializing speech engine...
[2026-10-25 19:35:56,360.360 INFO    ] 2026-10-25 19:35:56
[2026-10-25 19:35:56,634.634 INFO    ] 2026-10-25 19:35:56
[2026-10-25 19:35:56,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:35:56,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:35:56,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:35:57,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:35:57,022.022 INFO    ] time= 25/10/2026 19:35:57
[2026-10-25 19:35:57,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:35:57,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:35:57,129.129 INFO    ] No existing commands found in stream
[2026-10-25 19:36:02,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:36:02,148.148 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 19:36:03,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:36:03,447.447 INFO    ] Checking for system updates...
[2026-10-25 19:36:03,484.484 INFO    ] 200
[2026-10-25 19:36:03,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:03,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:36:03,543.543 INFO    ] No update needed
[2026-10-25 19:36:03,546.546 INFO    ] Checking for camera pi updates...
[2026-10-25 19:36:03,580.580 INFO    ] 200
[2026-10-25 19:36:03,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:03,628.628 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:36:03,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:36:03,681.681 INFO    ] No camera update needed
[2026-10-25 19:36:03,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:36:03,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:36:03,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:36:03,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:36:05,736.736 INFO    ] ================================================
[2026-10-25 19:36:05,751.751 INFO    ] Launching Daemon at Sun Oct 25 19:36:05 IST 2026
[2026-10-25 19:36:05,762.762 INFO    ] ================================================
[2026-10-25 19:36:06,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:36:06
[2026-10-25 19:36:06,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:36:07,163.163 INFO    ] Initializing speech engine...
[2026-10-25 19:36:07,172.172 INFO    ] 2026-10-25 19:36:07
[2026-10-25 19:36:07,464.464 INFO    ] 2026-10-25 19:36:07
[2026-10-25 19:36:07,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:36:07,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:36:07,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:36:07,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:36:07,871.871 INFO    ] time= 25/10/2026 19:36:07
[2026-10-25 19:36:07,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:36:07,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:36:07,959.959 INFO    ] No existing commands found in stream
[2026-10-25 19:36:12,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:36:12,974.974 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 19:36:16,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:36:16,529.529 INFO    ] Checking for system updates...
[2026-10-25 19:36:16,564.564 INFO    ] 200
[2026-10-25 19:36:16,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:16,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:16,622.622 INFO    ] No update needed
[2026-10-25 19:36:16,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 19:36:16,658.658 INFO    ] 200
[2026-10-25 19:36:16,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:16,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:36:16,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:16,758.758 INFO    ] No camera update needed
[2026-10-25 19:36:16,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:36:16,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:36:16,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:36:16,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:36:18,814.814 INFO    ] ================================================
[2026-10-25 19:36:18,830.830 INFO    ] Launching Daemon at Sun Oct 25 19:36:18 IST 2026
[2026-10-25 19:36:18,841.841 INFO    ] ================================================
[2026-10-25 19:36:19,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:36:19
[2026-10-25 19:36:20,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:36:20,293.293 INFO    ] Initializing speech engine...
[2026-10-25 19:36:20,318.318 INFO    ] 2026-10-25 19:36:20
[2026-10-25 19:36:20,595.595 INFO    ] 2026-10-25 19:36:20
[2026-10-25 19:36:20,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:36:20,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:36:20,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:36:20,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:36:20,986.986 INFO    ] time= 25/10/2026 19:36:20
[2026-10-25 19:36:21,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:36:21,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:36:21,098.098 INFO    ] No existing commands found in stream
[2026-10-25 19:36:26,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:36:26,116.116 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 19:36:27,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:36:27,875.875 INFO    ] Checking for system updates...
[2026-10-25 19:36:27,913.913 INFO    ] 200
[2026-10-25 19:36:27,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:27,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:36:27,975.975 INFO    ] No update needed
[2026-10-25 19:36:27,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 19:36:28,011.011 INFO    ] 200
[2026-10-25 19:36:28,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:28,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:36:28,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:36:28,108.108 INFO    ] No camera update needed
[2026-10-25 19:36:28,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:36:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:36:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:36:28,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:36:30,164.164 INFO    ] ================================================
[2026-10-25 19:36:30,179.179 INFO    ] Launching Daemon at Sun Oct 25 19:36:30 IST 2026
[2026-10-25 19:36:30,189.189 INFO    ] ================================================
[2026-10-25 19:36:30,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:36:30
[2026-10-25 19:36:31,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:36:31,699.699 INFO    ] Initializing speech engine...
[2026-10-25 19:36:31,705.705 INFO    ] 2026-10-25 19:36:31
[2026-10-25 19:36:31,993.993 INFO    ] 2026-10-25 19:36:31
[2026-10-25 19:36:32,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:36:32,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:36:32,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:36:32,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:36:32,457.457 INFO    ] time= 25/10/2026 19:36:32
[2026-10-25 19:36:32,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:36:32,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:36:32,642.642 INFO    ] No existing commands found in stream
[2026-10-25 19:36:37,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:36:37,658.658 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 19:36:40,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:36:40,340.340 INFO    ] Checking for system updates...
[2026-10-25 19:36:40,382.382 INFO    ] 200
[2026-10-25 19:36:40,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:40,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:40,457.457 INFO    ] No update needed
[2026-10-25 19:36:40,460.460 INFO    ] Checking for camera pi updates...
[2026-10-25 19:36:40,497.497 INFO    ] 200
[2026-10-25 19:36:40,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:40,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:36:40,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:40,595.595 INFO    ] No camera update needed
[2026-10-25 19:36:40,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:36:40,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:36:40,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:36:40,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:36:42,654.654 INFO    ] ================================================
[2026-10-25 19:36:42,670.670 INFO    ] Launching Daemon at Sun Oct 25 19:36:42 IST 2026
[2026-10-25 19:36:42,681.681 INFO    ] ================================================
[2026-10-25 19:36:43,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:36:43
[2026-10-25 19:36:43,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:36:44,136.136 INFO    ] Initializing speech engine...
[2026-10-25 19:36:44,150.150 INFO    ] 2026-10-25 19:36:44
[2026-10-25 19:36:44,456.456 INFO    ] 2026-10-25 19:36:44
[2026-10-25 19:36:44,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:36:44,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:36:44,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:36:44,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:36:44,900.900 INFO    ] time= 25/10/2026 19:36:44
[2026-10-25 19:36:44,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:36:45,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:36:45,054.054 INFO    ] No existing commands found in stream
[2026-10-25 19:36:50,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:36:50,069.069 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 19:36:52,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:36:52,901.901 INFO    ] Checking for system updates...
[2026-10-25 19:36:52,939.939 INFO    ] 200
[2026-10-25 19:36:52,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:52,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:53,001.001 INFO    ] No update needed
[2026-10-25 19:36:53,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 19:36:53,037.037 INFO    ] 200
[2026-10-25 19:36:53,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:36:53,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:36:53,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:36:53,130.130 INFO    ] No camera update needed
[2026-10-25 19:36:53,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:36:53,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:36:53,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:36:53,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:36:55,186.186 INFO    ] ================================================
[2026-10-25 19:36:55,202.202 INFO    ] Launching Daemon at Sun Oct 25 19:36:55 IST 2026
[2026-10-25 19:36:55,212.212 INFO    ] ================================================
[2026-10-25 19:36:55,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:36:55
[2026-10-25 19:36:56,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:36:56,798.798 INFO    ] Initializing speech engine...
[2026-10-25 19:36:56,810.810 INFO    ] 2026-10-25 19:36:56
[2026-10-25 19:36:57,076.076 INFO    ] 2026-10-25 19:36:57
[2026-10-25 19:36:57,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:36:57,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:36:57,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:36:57,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:36:57,569.569 INFO    ] time= 25/10/2026 19:36:57
[2026-10-25 19:36:57,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:36:57,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:36:57,751.751 INFO    ] No existing commands found in stream
[2026-10-25 19:37:02,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:37:02,786.786 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 19:37:04,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:37:04,006.006 INFO    ] Checking for system updates...
[2026-10-25 19:37:04,043.043 INFO    ] 200
[2026-10-25 19:37:04,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:04,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:37:04,105.105 INFO    ] No update needed
[2026-10-25 19:37:04,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 19:37:04,142.142 INFO    ] 200
[2026-10-25 19:37:04,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:04,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:37:04,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:37:04,236.236 INFO    ] No camera update needed
[2026-10-25 19:37:04,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:37:04,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:37:04,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:37:04,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:37:06,292.292 INFO    ] ================================================
[2026-10-25 19:37:06,307.307 INFO    ] Launching Daemon at Sun Oct 25 19:37:06 IST 2026
[2026-10-25 19:37:06,318.318 INFO    ] ================================================
[2026-10-25 19:37:06,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:37:06
[2026-10-25 19:37:07,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:37:07,754.754 INFO    ] Initializing speech engine...
[2026-10-25 19:37:07,764.764 INFO    ] 2026-10-25 19:37:07
[2026-10-25 19:37:08,010.010 INFO    ] 2026-10-25 19:37:08
[2026-10-25 19:37:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:37:08,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:37:08,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:37:08,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:37:08,564.564 INFO    ] time= 25/10/2026 19:37:08
[2026-10-25 19:37:08,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:37:08,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:37:08,712.712 INFO    ] No existing commands found in stream
[2026-10-25 19:37:13,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:37:13,725.725 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 19:37:16,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:37:16,120.120 INFO    ] Checking for system updates...
[2026-10-25 19:37:16,155.155 INFO    ] 200
[2026-10-25 19:37:16,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:16,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:37:16,227.227 INFO    ] No update needed
[2026-10-25 19:37:16,229.229 INFO    ] Checking for camera pi updates...
[2026-10-25 19:37:16,263.263 INFO    ] 200
[2026-10-25 19:37:16,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:16,306.306 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:37:16,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:37:16,364.364 INFO    ] No camera update needed
[2026-10-25 19:37:16,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:37:16,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:37:16,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:37:16,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:37:18,421.421 INFO    ] ================================================
[2026-10-25 19:37:18,436.436 INFO    ] Launching Daemon at Sun Oct 25 19:37:18 IST 2026
[2026-10-25 19:37:18,447.447 INFO    ] ================================================
[2026-10-25 19:37:19,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:37:19
[2026-10-25 19:37:19,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:37:19,971.971 INFO    ] Initializing speech engine...
[2026-10-25 19:37:19,979.979 INFO    ] 2026-10-25 19:37:19
[2026-10-25 19:37:20,260.260 INFO    ] 2026-10-25 19:37:20
[2026-10-25 19:37:20,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:37:20,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:37:20,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:37:20,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:37:20,719.719 INFO    ] time= 25/10/2026 19:37:20
[2026-10-25 19:37:20,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:37:20,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:37:20,858.858 INFO    ] No existing commands found in stream
[2026-10-25 19:37:25,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:37:25,874.874 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 19:37:29,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:37:29,994.994 INFO    ] Checking for system updates...
[2026-10-25 19:37:30,031.031 INFO    ] 200
[2026-10-25 19:37:30,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:30,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:30,089.089 INFO    ] No update needed
[2026-10-25 19:37:30,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 19:37:30,126.126 INFO    ] 200
[2026-10-25 19:37:30,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:30,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:37:30,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:30,333.333 INFO    ] No camera update needed
[2026-10-25 19:37:30,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:37:30,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:37:30,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:37:30,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:37:32,393.393 INFO    ] ================================================
[2026-10-25 19:37:32,409.409 INFO    ] Launching Daemon at Sun Oct 25 19:37:32 IST 2026
[2026-10-25 19:37:32,420.420 INFO    ] ================================================
[2026-10-25 19:37:33,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:37:33
[2026-10-25 19:37:33,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:37:34,018.018 INFO    ] Initializing speech engine...
[2026-10-25 19:37:34,027.027 INFO    ] 2026-10-25 19:37:34
[2026-10-25 19:37:34,290.290 INFO    ] 2026-10-25 19:37:34
[2026-10-25 19:37:34,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:37:34,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:37:34,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:37:34,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:37:34,673.673 INFO    ] time= 25/10/2026 19:37:34
[2026-10-25 19:37:34,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:37:34,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:37:34,784.784 INFO    ] No existing commands found in stream
[2026-10-25 19:37:39,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:37:39,796.796 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 19:37:46,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:37:46,750.750 INFO    ] Checking for system updates...
[2026-10-25 19:37:46,791.791 INFO    ] 200
[2026-10-25 19:37:46,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:46,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:46,850.850 INFO    ] No update needed
[2026-10-25 19:37:46,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 19:37:46,887.887 INFO    ] 200
[2026-10-25 19:37:46,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:46,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:37:46,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:46,984.984 INFO    ] No camera update needed
[2026-10-25 19:37:46,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:37:46,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:37:46,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:37:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:37:49,038.038 INFO    ] ================================================
[2026-10-25 19:37:49,054.054 INFO    ] Launching Daemon at Sun Oct 25 19:37:49 IST 2026
[2026-10-25 19:37:49,064.064 INFO    ] ================================================
[2026-10-25 19:37:49,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:37:49
[2026-10-25 19:37:50,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:37:50,635.635 INFO    ] Initializing speech engine...
[2026-10-25 19:37:50,643.643 INFO    ] 2026-10-25 19:37:50
[2026-10-25 19:37:50,923.923 INFO    ] 2026-10-25 19:37:50
[2026-10-25 19:37:50,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:37:51,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:37:51,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:37:51,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:37:51,395.395 INFO    ] time= 25/10/2026 19:37:51
[2026-10-25 19:37:51,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:37:51,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:37:51,591.591 INFO    ] No existing commands found in stream
[2026-10-25 19:37:56,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:37:56,625.625 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 19:37:59,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:37:59,717.717 INFO    ] Checking for system updates...
[2026-10-25 19:37:59,753.753 INFO    ] 200
[2026-10-25 19:37:59,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:59,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:59,813.813 INFO    ] No update needed
[2026-10-25 19:37:59,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 19:37:59,850.850 INFO    ] 200
[2026-10-25 19:37:59,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:37:59,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:37:59,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:37:59,946.946 INFO    ] No camera update needed
[2026-10-25 19:37:59,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:37:59,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:37:59,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:37:59,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:38:02,029.029 INFO    ] ================================================
[2026-10-25 19:38:02,053.053 INFO    ] Launching Daemon at Sun Oct 25 19:38:02 IST 2026
[2026-10-25 19:38:02,071.071 INFO    ] ================================================
[2026-10-25 19:38:02,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:38:02
[2026-10-25 19:38:03,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:38:03,899.899 INFO    ] Initializing speech engine...
[2026-10-25 19:38:03,913.913 INFO    ] 2026-10-25 19:38:03
[2026-10-25 19:38:04,184.184 INFO    ] 2026-10-25 19:38:04
[2026-10-25 19:38:04,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:38:04,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:38:04,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:38:04,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:38:04,555.555 INFO    ] time= 25/10/2026 19:38:04
[2026-10-25 19:38:04,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:38:04,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:38:04,661.661 INFO    ] No existing commands found in stream
[2026-10-25 19:38:09,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:38:09,679.679 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 19:38:12,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:38:12,751.751 INFO    ] Checking for system updates...
[2026-10-25 19:38:12,787.787 INFO    ] 200
[2026-10-25 19:38:12,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:12,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:38:12,848.848 INFO    ] No update needed
[2026-10-25 19:38:12,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 19:38:12,884.884 INFO    ] 200
[2026-10-25 19:38:12,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:12,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:38:12,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:38:12,994.994 INFO    ] No camera update needed
[2026-10-25 19:38:12,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:38:12,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:38:13,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:38:13,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:38:15,048.048 INFO    ] ================================================
[2026-10-25 19:38:15,063.063 INFO    ] Launching Daemon at Sun Oct 25 19:38:15 IST 2026
[2026-10-25 19:38:15,074.074 INFO    ] ================================================
[2026-10-25 19:38:15,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:38:15
[2026-10-25 19:38:16,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:38:16,483.483 INFO    ] Initializing speech engine...
[2026-10-25 19:38:16,506.506 INFO    ] 2026-10-25 19:38:16
[2026-10-25 19:38:16,759.759 INFO    ] 2026-10-25 19:38:16
[2026-10-25 19:38:16,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:38:19,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:38:19,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:38:20,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:38:20,160.160 INFO    ] time= 25/10/2026 19:38:20
[2026-10-25 19:38:20,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:38:20,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:38:20,215.215 INFO    ] No existing commands found in stream
[2026-10-25 19:38:25,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:38:25,227.227 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 19:38:28,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:38:28,983.983 INFO    ] Checking for system updates...
[2026-10-25 19:38:29,021.021 INFO    ] 200
[2026-10-25 19:38:29,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:29,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:29,082.082 INFO    ] No update needed
[2026-10-25 19:38:29,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 19:38:29,121.121 INFO    ] 200
[2026-10-25 19:38:29,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:29,166.166 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:38:29,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:29,218.218 INFO    ] No camera update needed
[2026-10-25 19:38:29,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:38:29,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:38:29,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:38:29,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:38:31,277.277 INFO    ] ================================================
[2026-10-25 19:38:31,292.292 INFO    ] Launching Daemon at Sun Oct 25 19:38:31 IST 2026
[2026-10-25 19:38:31,303.303 INFO    ] ================================================
[2026-10-25 19:38:31,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:38:31
[2026-10-25 19:38:32,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:38:33,017.017 INFO    ] Initializing speech engine...
[2026-10-25 19:38:33,029.029 INFO    ] 2026-10-25 19:38:33
[2026-10-25 19:38:33,308.308 INFO    ] 2026-10-25 19:38:33
[2026-10-25 19:38:33,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:38:33,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:38:33,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:38:33,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:38:33,796.796 INFO    ] time= 25/10/2026 19:38:33
[2026-10-25 19:38:33,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:38:33,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:38:34,016.016 INFO    ] No existing commands found in stream
[2026-10-25 19:38:39,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:38:39,041.041 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 19:38:41,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:38:41,317.317 INFO    ] Checking for system updates...
[2026-10-25 19:38:41,354.354 INFO    ] 200
[2026-10-25 19:38:41,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:41,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:41,411.411 INFO    ] No update needed
[2026-10-25 19:38:41,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 19:38:41,451.451 INFO    ] 200
[2026-10-25 19:38:41,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:41,494.494 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:38:41,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:41,551.551 INFO    ] No camera update needed
[2026-10-25 19:38:41,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:38:41,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:38:41,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:38:41,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:38:43,610.610 INFO    ] ================================================
[2026-10-25 19:38:43,625.625 INFO    ] Launching Daemon at Sun Oct 25 19:38:43 IST 2026
[2026-10-25 19:38:43,635.635 INFO    ] ================================================
[2026-10-25 19:38:44,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:38:44
[2026-10-25 19:38:44,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:38:45,256.256 INFO    ] Initializing speech engine...
[2026-10-25 19:38:45,269.269 INFO    ] 2026-10-25 19:38:45
[2026-10-25 19:38:45,538.538 INFO    ] 2026-10-25 19:38:45
[2026-10-25 19:38:45,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:38:45,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:38:45,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:38:45,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:38:46,024.024 INFO    ] time= 25/10/2026 19:38:45
[2026-10-25 19:38:46,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:38:46,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:38:46,166.166 INFO    ] No existing commands found in stream
[2026-10-25 19:38:51,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:38:51,182.182 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 19:38:54,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:38:54,537.537 INFO    ] Checking for system updates...
[2026-10-25 19:38:54,579.579 INFO    ] 200
[2026-10-25 19:38:54,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:54,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:54,639.639 INFO    ] No update needed
[2026-10-25 19:38:54,642.642 INFO    ] Checking for camera pi updates...
[2026-10-25 19:38:54,677.677 INFO    ] 200
[2026-10-25 19:38:54,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:38:54,721.721 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:38:54,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:38:54,777.777 INFO    ] No camera update needed
[2026-10-25 19:38:54,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:38:54,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:38:54,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:38:54,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:38:56,835.835 INFO    ] ================================================
[2026-10-25 19:38:56,850.850 INFO    ] Launching Daemon at Sun Oct 25 19:38:56 IST 2026
[2026-10-25 19:38:56,861.861 INFO    ] ================================================
[2026-10-25 19:38:57,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:38:57
[2026-10-25 19:38:58,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:38:58,297.297 INFO    ] Initializing speech engine...
[2026-10-25 19:38:58,306.306 INFO    ] 2026-10-25 19:38:58
[2026-10-25 19:38:58,554.554 INFO    ] 2026-10-25 19:38:58
[2026-10-25 19:38:58,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:38:58,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:38:58,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:38:58,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:38:59,024.024 INFO    ] time= 25/10/2026 19:38:58
[2026-10-25 19:38:59,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:38:59,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:38:59,168.168 INFO    ] No existing commands found in stream
[2026-10-25 19:39:04,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:39:04,183.183 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 19:39:08,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:39:08,355.355 INFO    ] Checking for system updates...
[2026-10-25 19:39:08,392.392 INFO    ] 200
[2026-10-25 19:39:08,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:08,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:39:08,450.450 INFO    ] No update needed
[2026-10-25 19:39:08,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 19:39:08,490.490 INFO    ] 200
[2026-10-25 19:39:08,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:08,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:39:08,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:39:08,598.598 INFO    ] No camera update needed
[2026-10-25 19:39:08,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:39:08,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:39:08,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:39:08,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:39:10,655.655 INFO    ] ================================================
[2026-10-25 19:39:10,670.670 INFO    ] Launching Daemon at Sun Oct 25 19:39:10 IST 2026
[2026-10-25 19:39:10,681.681 INFO    ] ================================================
[2026-10-25 19:39:11,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:39:11
[2026-10-25 19:39:11,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:39:12,140.140 INFO    ] Initializing speech engine...
[2026-10-25 19:39:12,149.149 INFO    ] 2026-10-25 19:39:12
[2026-10-25 19:39:12,392.392 INFO    ] 2026-10-25 19:39:12
[2026-10-25 19:39:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:39:12,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:39:12,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:39:12,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:39:12,856.856 INFO    ] time= 25/10/2026 19:39:12
[2026-10-25 19:39:12,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:39:12,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:39:13,007.007 INFO    ] No existing commands found in stream
[2026-10-25 19:39:18,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:39:18,022.022 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 19:39:22,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:39:22,117.117 INFO    ] Checking for system updates...
[2026-10-25 19:39:22,154.154 INFO    ] 200
[2026-10-25 19:39:22,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:22,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:39:22,212.212 INFO    ] No update needed
[2026-10-25 19:39:22,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 19:39:22,248.248 INFO    ] 200
[2026-10-25 19:39:22,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:22,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:39:22,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:39:22,354.354 INFO    ] No camera update needed
[2026-10-25 19:39:22,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:39:22,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:39:22,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:39:22,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:39:24,410.410 INFO    ] ================================================
[2026-10-25 19:39:24,425.425 INFO    ] Launching Daemon at Sun Oct 25 19:39:24 IST 2026
[2026-10-25 19:39:24,437.437 INFO    ] ================================================
[2026-10-25 19:39:25,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:39:24
[2026-10-25 19:39:25,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:39:25,829.829 INFO    ] Initializing speech engine...
[2026-10-25 19:39:25,842.842 INFO    ] 2026-10-25 19:39:25
[2026-10-25 19:39:26,102.102 INFO    ] 2026-10-25 19:39:26
[2026-10-25 19:39:26,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:39:26,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:39:26,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:39:26,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:39:26,543.543 INFO    ] time= 25/10/2026 19:39:26
[2026-10-25 19:39:26,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:39:26,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:39:26,725.725 INFO    ] No existing commands found in stream
[2026-10-25 19:39:31,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:39:31,736.736 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 19:39:32,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:39:32,516.516 INFO    ] Checking for system updates...
[2026-10-25 19:39:32,553.553 INFO    ] 200
[2026-10-25 19:39:32,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:32,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:39:32,612.612 INFO    ] No update needed
[2026-10-25 19:39:32,614.614 INFO    ] Checking for camera pi updates...
[2026-10-25 19:39:32,652.652 INFO    ] 200
[2026-10-25 19:39:32,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:32,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:39:32,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:39:32,734.734 INFO    ] No camera update needed
[2026-10-25 19:39:32,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:39:32,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:39:32,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:39:32,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:39:34,790.790 INFO    ] ================================================
[2026-10-25 19:39:34,806.806 INFO    ] Launching Daemon at Sun Oct 25 19:39:34 IST 2026
[2026-10-25 19:39:34,816.816 INFO    ] ================================================
[2026-10-25 19:39:35,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:39:35
[2026-10-25 19:39:35,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:39:36,224.224 INFO    ] Initializing speech engine...
[2026-10-25 19:39:36,244.244 INFO    ] 2026-10-25 19:39:36
[2026-10-25 19:39:36,493.493 INFO    ] 2026-10-25 19:39:36
[2026-10-25 19:39:36,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:39:36,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:39:36,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:39:36,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:39:36,869.869 INFO    ] time= 25/10/2026 19:39:36
[2026-10-25 19:39:36,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:39:36,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:39:37,048.048 INFO    ] No existing commands found in stream
[2026-10-25 19:39:42,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:39:42,082.082 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 19:39:46,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:39:46,400.400 INFO    ] Checking for system updates...
[2026-10-25 19:39:46,436.436 INFO    ] 200
[2026-10-25 19:39:46,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:46,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:39:46,502.502 INFO    ] No update needed
[2026-10-25 19:39:46,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 19:39:46,538.538 INFO    ] 200
[2026-10-25 19:39:46,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:39:46,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:39:46,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:39:46,638.638 INFO    ] No camera update needed
[2026-10-25 19:39:46,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:39:46,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:39:46,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:39:46,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:39:48,694.694 INFO    ] ================================================
[2026-10-25 19:39:48,709.709 INFO    ] Launching Daemon at Sun Oct 25 19:39:48 IST 2026
[2026-10-25 19:39:48,720.720 INFO    ] ================================================
[2026-10-25 19:39:49,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:39:49
[2026-10-25 19:39:49,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:39:50,170.170 INFO    ] Initializing speech engine...
[2026-10-25 19:39:50,177.177 INFO    ] 2026-10-25 19:39:50
[2026-10-25 19:39:50,437.437 INFO    ] 2026-10-25 19:39:50
[2026-10-25 19:39:50,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:39:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:39:52,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:39:53,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:39:53,342.342 INFO    ] time= 25/10/2026 19:39:53
[2026-10-25 19:39:53,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:39:53,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:39:53,393.393 INFO    ] No existing commands found in stream
[2026-10-25 19:39:58,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:39:58,405.405 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 19:40:01,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:40:01,469.469 INFO    ] Checking for system updates...
[2026-10-25 19:40:01,619.619 INFO    ] 200
[2026-10-25 19:40:01,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:01,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:01,824.824 INFO    ] No update needed
[2026-10-25 19:40:01,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 19:40:02,046.046 INFO    ] 200
[2026-10-25 19:40:02,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:02,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:40:02,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:02,260.260 INFO    ] No camera update needed
[2026-10-25 19:40:02,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:40:02,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:40:02,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:40:02,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:40:04,326.326 INFO    ] ================================================
[2026-10-25 19:40:04,341.341 INFO    ] Launching Daemon at Sun Oct 25 19:40:04 IST 2026
[2026-10-25 19:40:04,351.351 INFO    ] ================================================
[2026-10-25 19:40:04,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:40:04
[2026-10-25 19:40:05,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:40:05,835.835 INFO    ] Initializing speech engine...
[2026-10-25 19:40:05,844.844 INFO    ] 2026-10-25 19:40:05
[2026-10-25 19:40:06,103.103 INFO    ] 2026-10-25 19:40:06
[2026-10-25 19:40:06,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:40:06,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:40:06,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:40:06,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:40:06,556.556 INFO    ] time= 25/10/2026 19:40:06
[2026-10-25 19:40:06,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:40:06,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:40:06,704.704 INFO    ] No existing commands found in stream
[2026-10-25 19:40:11,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:40:11,719.719 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 19:40:14,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:40:14,874.874 INFO    ] Checking for system updates...
[2026-10-25 19:40:14,911.911 INFO    ] 200
[2026-10-25 19:40:14,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:14,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:14,985.985 INFO    ] No update needed
[2026-10-25 19:40:14,987.987 INFO    ] Checking for camera pi updates...
[2026-10-25 19:40:15,025.025 INFO    ] 200
[2026-10-25 19:40:15,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:15,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:40:15,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:15,133.133 INFO    ] No camera update needed
[2026-10-25 19:40:15,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:40:15,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:40:15,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:40:15,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:40:17,187.187 INFO    ] ================================================
[2026-10-25 19:40:17,203.203 INFO    ] Launching Daemon at Sun Oct 25 19:40:17 IST 2026
[2026-10-25 19:40:17,214.214 INFO    ] ================================================
[2026-10-25 19:40:17,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:40:17
[2026-10-25 19:40:18,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:40:18,756.756 INFO    ] Initializing speech engine...
[2026-10-25 19:40:18,768.768 INFO    ] 2026-10-25 19:40:18
[2026-10-25 19:40:19,030.030 INFO    ] 2026-10-25 19:40:19
[2026-10-25 19:40:19,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:40:19,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:40:19,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:40:19,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:40:19,523.523 INFO    ] time= 25/10/2026 19:40:19
[2026-10-25 19:40:19,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:40:19,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:40:19,653.653 INFO    ] No existing commands found in stream
[2026-10-25 19:40:24,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:40:24,681.681 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 19:40:26,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:40:26,321.321 INFO    ] Checking for system updates...
[2026-10-25 19:40:26,361.361 INFO    ] 200
[2026-10-25 19:40:26,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:26,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:40:26,428.428 INFO    ] No update needed
[2026-10-25 19:40:26,430.430 INFO    ] Checking for camera pi updates...
[2026-10-25 19:40:26,463.463 INFO    ] 200
[2026-10-25 19:40:26,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:26,506.506 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:40:26,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:40:26,560.560 INFO    ] No camera update needed
[2026-10-25 19:40:26,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:40:26,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:40:26,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:40:26,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:40:28,617.617 INFO    ] ================================================
[2026-10-25 19:40:28,633.633 INFO    ] Launching Daemon at Sun Oct 25 19:40:28 IST 2026
[2026-10-25 19:40:28,644.644 INFO    ] ================================================
[2026-10-25 19:40:29,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:40:29
[2026-10-25 19:40:29,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:40:30,115.115 INFO    ] Initializing speech engine...
[2026-10-25 19:40:30,124.124 INFO    ] 2026-10-25 19:40:30
[2026-10-25 19:40:30,370.370 INFO    ] 2026-10-25 19:40:30
[2026-10-25 19:40:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:40:30,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:40:30,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:40:30,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:40:30,835.835 INFO    ] time= 25/10/2026 19:40:30
[2026-10-25 19:40:30,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:40:30,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:40:30,985.985 INFO    ] No existing commands found in stream
[2026-10-25 19:40:35,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:40:36,000.000 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 19:40:39,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:40:39,279.279 INFO    ] Checking for system updates...
[2026-10-25 19:40:39,315.315 INFO    ] 200
[2026-10-25 19:40:39,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:39,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:40:39,372.372 INFO    ] No update needed
[2026-10-25 19:40:39,375.375 INFO    ] Checking for camera pi updates...
[2026-10-25 19:40:39,408.408 INFO    ] 200
[2026-10-25 19:40:39,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:39,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:40:39,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:40:39,504.504 INFO    ] No camera update needed
[2026-10-25 19:40:39,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:40:39,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:40:39,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:40:39,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:40:41,558.558 INFO    ] ================================================
[2026-10-25 19:40:41,574.574 INFO    ] Launching Daemon at Sun Oct 25 19:40:41 IST 2026
[2026-10-25 19:40:41,584.584 INFO    ] ================================================
[2026-10-25 19:40:42,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:40:42
[2026-10-25 19:40:42,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:40:43,027.027 INFO    ] Initializing speech engine...
[2026-10-25 19:40:43,053.053 INFO    ] 2026-10-25 19:40:43
[2026-10-25 19:40:43,302.302 INFO    ] 2026-10-25 19:40:43
[2026-10-25 19:40:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:40:43,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:40:43,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:40:43,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:40:43,808.808 INFO    ] time= 25/10/2026 19:40:43
[2026-10-25 19:40:43,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:40:43,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:40:43,995.995 INFO    ] No existing commands found in stream
[2026-10-25 19:40:49,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:40:49,022.022 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 19:40:52,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:40:52,368.368 INFO    ] Checking for system updates...
[2026-10-25 19:40:52,410.410 INFO    ] 200
[2026-10-25 19:40:52,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:52,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:52,468.468 INFO    ] No update needed
[2026-10-25 19:40:52,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 19:40:52,509.509 INFO    ] 200
[2026-10-25 19:40:52,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:40:52,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:40:52,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:40:52,608.608 INFO    ] No camera update needed
[2026-10-25 19:40:52,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:40:52,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:40:52,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:40:52,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:40:54,663.663 INFO    ] ================================================
[2026-10-25 19:40:54,679.679 INFO    ] Launching Daemon at Sun Oct 25 19:40:54 IST 2026
[2026-10-25 19:40:54,690.690 INFO    ] ================================================
[2026-10-25 19:40:55,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:40:55
[2026-10-25 19:40:55,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:40:56,096.096 INFO    ] Initializing speech engine...
[2026-10-25 19:40:56,116.116 INFO    ] 2026-10-25 19:40:56
[2026-10-25 19:40:56,364.364 INFO    ] 2026-10-25 19:40:56
[2026-10-25 19:40:56,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:40:57,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:40:57,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:40:57,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:40:57,524.524 INFO    ] time= 25/10/2026 19:40:57
[2026-10-25 19:40:57,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:40:57,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:40:57,629.629 INFO    ] No existing commands found in stream
[2026-10-25 19:41:02,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:41:02,644.644 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 19:41:06,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:41:06,832.832 INFO    ] Checking for system updates...
[2026-10-25 19:41:06,872.872 INFO    ] 200
[2026-10-25 19:41:06,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:06,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:06,929.929 INFO    ] No update needed
[2026-10-25 19:41:06,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 19:41:06,969.969 INFO    ] 200
[2026-10-25 19:41:06,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:07,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:41:07,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:07,076.076 INFO    ] No camera update needed
[2026-10-25 19:41:07,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:41:07,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:41:07,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:41:07,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:41:09,131.131 INFO    ] ================================================
[2026-10-25 19:41:09,147.147 INFO    ] Launching Daemon at Sun Oct 25 19:41:09 IST 2026
[2026-10-25 19:41:09,158.158 INFO    ] ================================================
[2026-10-25 19:41:09,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:41:09
[2026-10-25 19:41:10,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:41:10,607.607 INFO    ] Initializing speech engine...
[2026-10-25 19:41:10,616.616 INFO    ] 2026-10-25 19:41:10
[2026-10-25 19:41:10,877.877 INFO    ] 2026-10-25 19:41:10
[2026-10-25 19:41:10,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:41:11,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:41:11,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:41:11,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:41:11,341.341 INFO    ] time= 25/10/2026 19:41:11
[2026-10-25 19:41:11,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:41:11,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:41:11,485.485 INFO    ] No existing commands found in stream
[2026-10-25 19:41:16,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:41:16,499.499 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 19:41:17,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:41:17,411.411 INFO    ] Checking for system updates...
[2026-10-25 19:41:17,447.447 INFO    ] 200
[2026-10-25 19:41:17,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:17,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:17,513.513 INFO    ] No update needed
[2026-10-25 19:41:17,515.515 INFO    ] Checking for camera pi updates...
[2026-10-25 19:41:17,550.550 INFO    ] 200
[2026-10-25 19:41:17,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:17,598.598 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:41:17,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:17,660.660 INFO    ] No camera update needed
[2026-10-25 19:41:17,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:41:17,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:41:17,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:41:17,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:41:19,718.718 INFO    ] ================================================
[2026-10-25 19:41:19,734.734 INFO    ] Launching Daemon at Sun Oct 25 19:41:19 IST 2026
[2026-10-25 19:41:19,745.745 INFO    ] ================================================
[2026-10-25 19:41:20,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:41:20
[2026-10-25 19:41:20,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:41:21,189.189 INFO    ] Initializing speech engine...
[2026-10-25 19:41:21,199.199 INFO    ] 2026-10-25 19:41:21
[2026-10-25 19:41:21,459.459 INFO    ] 2026-10-25 19:41:21
[2026-10-25 19:41:21,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:41:21,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:41:21,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:41:21,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:41:21,981.981 INFO    ] time= 25/10/2026 19:41:21
[2026-10-25 19:41:22,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:41:22,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:41:22,132.132 INFO    ] No existing commands found in stream
[2026-10-25 19:41:27,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:41:27,164.164 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 19:41:30,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:41:30,783.783 INFO    ] Checking for system updates...
[2026-10-25 19:41:30,819.819 INFO    ] 200
[2026-10-25 19:41:30,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:30,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:30,884.884 INFO    ] No update needed
[2026-10-25 19:41:30,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 19:41:30,923.923 INFO    ] 200
[2026-10-25 19:41:30,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:30,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:41:31,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:31,035.035 INFO    ] No camera update needed
[2026-10-25 19:41:31,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:41:31,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:41:31,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:41:31,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:41:33,097.097 INFO    ] ================================================
[2026-10-25 19:41:33,112.112 INFO    ] Launching Daemon at Sun Oct 25 19:41:33 IST 2026
[2026-10-25 19:41:33,123.123 INFO    ] ================================================
[2026-10-25 19:41:33,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:41:33
[2026-10-25 19:41:34,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:41:34,579.579 INFO    ] Initializing speech engine...
[2026-10-25 19:41:34,587.587 INFO    ] 2026-10-25 19:41:34
[2026-10-25 19:41:34,850.850 INFO    ] 2026-10-25 19:41:34
[2026-10-25 19:41:34,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:41:35,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:41:35,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:41:35,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:41:35,323.323 INFO    ] time= 25/10/2026 19:41:35
[2026-10-25 19:41:35,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:41:35,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:41:35,456.456 INFO    ] No existing commands found in stream
[2026-10-25 19:41:40,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:41:40,471.471 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 19:41:43,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:41:43,245.245 INFO    ] Checking for system updates...
[2026-10-25 19:41:43,285.285 INFO    ] 200
[2026-10-25 19:41:43,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:43,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:41:43,349.349 INFO    ] No update needed
[2026-10-25 19:41:43,352.352 INFO    ] Checking for camera pi updates...
[2026-10-25 19:41:43,386.386 INFO    ] 200
[2026-10-25 19:41:43,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:43,434.434 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:41:43,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:41:43,597.597 INFO    ] No camera update needed
[2026-10-25 19:41:43,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:41:43,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:41:43,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:41:43,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:41:45,655.655 INFO    ] ================================================
[2026-10-25 19:41:45,671.671 INFO    ] Launching Daemon at Sun Oct 25 19:41:45 IST 2026
[2026-10-25 19:41:45,681.681 INFO    ] ================================================
[2026-10-25 19:41:46,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:41:46
[2026-10-25 19:41:46,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:41:47,285.285 INFO    ] Initializing speech engine...
[2026-10-25 19:41:47,293.293 INFO    ] 2026-10-25 19:41:47
[2026-10-25 19:41:47,569.569 INFO    ] 2026-10-25 19:41:47
[2026-10-25 19:41:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:41:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:41:47,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:41:48,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:41:48,119.119 INFO    ] time= 25/10/2026 19:41:48
[2026-10-25 19:41:48,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:41:48,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:41:48,272.272 INFO    ] No existing commands found in stream
[2026-10-25 19:41:53,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:41:53,289.289 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 19:41:54,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:41:54,767.767 INFO    ] Checking for system updates...
[2026-10-25 19:41:54,804.804 INFO    ] 200
[2026-10-25 19:41:54,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:54,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:54,861.861 INFO    ] No update needed
[2026-10-25 19:41:54,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 19:41:54,901.901 INFO    ] 200
[2026-10-25 19:41:54,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:41:54,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:41:54,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:41:55,000.000 INFO    ] No camera update needed
[2026-10-25 19:41:55,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:41:55,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:41:55,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:41:55,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:41:57,055.055 INFO    ] ================================================
[2026-10-25 19:41:57,070.070 INFO    ] Launching Daemon at Sun Oct 25 19:41:57 IST 2026
[2026-10-25 19:41:57,081.081 INFO    ] ================================================
[2026-10-25 19:41:57,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:41:57
[2026-10-25 19:41:58,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:41:58,518.518 INFO    ] Initializing speech engine...
[2026-10-25 19:41:58,527.527 INFO    ] 2026-10-25 19:41:58
[2026-10-25 19:41:58,821.821 INFO    ] 2026-10-25 19:41:58
[2026-10-25 19:41:58,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:41:59,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:41:59,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:41:59,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:41:59,350.350 INFO    ] time= 25/10/2026 19:41:59
[2026-10-25 19:41:59,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:41:59,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:41:59,515.515 INFO    ] No existing commands found in stream
[2026-10-25 19:42:04,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:42:04,530.530 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 19:42:05,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:42:05,642.642 INFO    ] Checking for system updates...
[2026-10-25 19:42:05,682.682 INFO    ] 200
[2026-10-25 19:42:05,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:05,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:42:05,747.747 INFO    ] No update needed
[2026-10-25 19:42:05,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 19:42:05,787.787 INFO    ] 200
[2026-10-25 19:42:05,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:05,830.830 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:42:05,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:42:05,891.891 INFO    ] No camera update needed
[2026-10-25 19:42:05,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:42:05,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:42:05,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:42:05,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:42:07,948.948 INFO    ] ================================================
[2026-10-25 19:42:07,963.963 INFO    ] Launching Daemon at Sun Oct 25 19:42:07 IST 2026
[2026-10-25 19:42:07,974.974 INFO    ] ================================================
[2026-10-25 19:42:08,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:42:08
[2026-10-25 19:42:09,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:42:09,380.380 INFO    ] Initializing speech engine...
[2026-10-25 19:42:09,386.386 INFO    ] 2026-10-25 19:42:09
[2026-10-25 19:42:09,661.661 INFO    ] 2026-10-25 19:42:09
[2026-10-25 19:42:09,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:42:09,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:42:09,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:42:09,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:42:10,016.016 INFO    ] time= 25/10/2026 19:42:09
[2026-10-25 19:42:10,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:42:10,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:42:10,116.116 INFO    ] No existing commands found in stream
[2026-10-25 19:42:15,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:42:15,133.133 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 19:42:17,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:42:17,464.464 INFO    ] Checking for system updates...
[2026-10-25 19:42:17,503.503 INFO    ] 200
[2026-10-25 19:42:17,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:17,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:42:17,580.580 INFO    ] No update needed
[2026-10-25 19:42:17,582.582 INFO    ] Checking for camera pi updates...
[2026-10-25 19:42:17,620.620 INFO    ] 200
[2026-10-25 19:42:17,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:17,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:42:17,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:42:17,733.733 INFO    ] No camera update needed
[2026-10-25 19:42:17,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:42:17,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:42:17,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:42:17,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:42:19,790.790 INFO    ] ================================================
[2026-10-25 19:42:19,806.806 INFO    ] Launching Daemon at Sun Oct 25 19:42:19 IST 2026
[2026-10-25 19:42:19,817.817 INFO    ] ================================================
[2026-10-25 19:42:20,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:42:20
[2026-10-25 19:42:20,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:42:21,222.222 INFO    ] Initializing speech engine...
[2026-10-25 19:42:21,228.228 INFO    ] 2026-10-25 19:42:21
[2026-10-25 19:42:21,525.525 INFO    ] 2026-10-25 19:42:21
[2026-10-25 19:42:21,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:42:21,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:42:21,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:42:22,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:42:22,155.155 INFO    ] time= 25/10/2026 19:42:22
[2026-10-25 19:42:22,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:42:22,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:42:22,288.288 INFO    ] No existing commands found in stream
[2026-10-25 19:42:27,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:42:27,309.309 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 19:42:30,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:42:30,356.356 INFO    ] Checking for system updates...
[2026-10-25 19:42:30,393.393 INFO    ] 200
[2026-10-25 19:42:30,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:30,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:30,461.461 INFO    ] No update needed
[2026-10-25 19:42:30,465.465 INFO    ] Checking for camera pi updates...
[2026-10-25 19:42:30,504.504 INFO    ] 200
[2026-10-25 19:42:30,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:30,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:42:30,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:30,597.597 INFO    ] No camera update needed
[2026-10-25 19:42:30,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:42:30,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:42:30,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:42:30,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:42:32,656.656 INFO    ] ================================================
[2026-10-25 19:42:32,672.672 INFO    ] Launching Daemon at Sun Oct 25 19:42:32 IST 2026
[2026-10-25 19:42:32,683.683 INFO    ] ================================================
[2026-10-25 19:42:33,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:42:33
[2026-10-25 19:42:33,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:42:34,181.181 INFO    ] Initializing speech engine...
[2026-10-25 19:42:34,196.196 INFO    ] 2026-10-25 19:42:34
[2026-10-25 19:42:34,467.467 INFO    ] 2026-10-25 19:42:34
[2026-10-25 19:42:34,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:42:34,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:42:34,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:42:34,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:42:34,841.841 INFO    ] time= 25/10/2026 19:42:34
[2026-10-25 19:42:34,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:42:34,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:42:34,971.971 INFO    ] No existing commands found in stream
[2026-10-25 19:42:39,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:42:39,994.994 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 19:42:41,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:42:41,338.338 INFO    ] Checking for system updates...
[2026-10-25 19:42:41,374.374 INFO    ] 200
[2026-10-25 19:42:41,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:41,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:41,438.438 INFO    ] No update needed
[2026-10-25 19:42:41,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 19:42:41,477.477 INFO    ] 200
[2026-10-25 19:42:41,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:41,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:42:41,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:41,574.574 INFO    ] No camera update needed
[2026-10-25 19:42:41,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:42:41,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:42:41,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:42:41,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:42:43,629.629 INFO    ] ================================================
[2026-10-25 19:42:43,645.645 INFO    ] Launching Daemon at Sun Oct 25 19:42:43 IST 2026
[2026-10-25 19:42:43,655.655 INFO    ] ================================================
[2026-10-25 19:42:44,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:42:44
[2026-10-25 19:42:44,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:42:45,256.256 INFO    ] Initializing speech engine...
[2026-10-25 19:42:45,265.265 INFO    ] 2026-10-25 19:42:45
[2026-10-25 19:42:45,552.552 INFO    ] 2026-10-25 19:42:45
[2026-10-25 19:42:45,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:42:45,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:42:45,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:42:45,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:42:46,029.029 INFO    ] time= 25/10/2026 19:42:45
[2026-10-25 19:42:46,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:42:46,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:42:46,165.165 INFO    ] No existing commands found in stream
[2026-10-25 19:42:51,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:42:51,180.180 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 19:42:51,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:42:51,862.862 INFO    ] Checking for system updates...
[2026-10-25 19:42:51,903.903 INFO    ] 200
[2026-10-25 19:42:51,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:51,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:51,969.969 INFO    ] No update needed
[2026-10-25 19:42:51,973.973 INFO    ] Checking for camera pi updates...
[2026-10-25 19:42:52,007.007 INFO    ] 200
[2026-10-25 19:42:52,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:42:52,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:42:52,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:42:52,114.114 INFO    ] No camera update needed
[2026-10-25 19:42:52,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:42:52,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:42:52,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:42:52,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:42:54,172.172 INFO    ] ================================================
[2026-10-25 19:42:54,187.187 INFO    ] Launching Daemon at Sun Oct 25 19:42:54 IST 2026
[2026-10-25 19:42:54,197.197 INFO    ] ================================================
[2026-10-25 19:42:54,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:42:54
[2026-10-25 19:42:55,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:42:55,645.645 INFO    ] Initializing speech engine...
[2026-10-25 19:42:55,654.654 INFO    ] 2026-10-25 19:42:55
[2026-10-25 19:42:55,915.915 INFO    ] 2026-10-25 19:42:55
[2026-10-25 19:42:55,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:42:56,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:42:56,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:42:56,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:42:56,387.387 INFO    ] time= 25/10/2026 19:42:56
[2026-10-25 19:42:56,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:42:56,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:42:56,520.520 INFO    ] No existing commands found in stream
[2026-10-25 19:43:01,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:43:01,534.534 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 19:43:05,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:43:05,222.222 INFO    ] Checking for system updates...
[2026-10-25 19:43:05,258.258 INFO    ] 200
[2026-10-25 19:43:05,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:05,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:05,322.322 INFO    ] No update needed
[2026-10-25 19:43:05,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 19:43:05,359.359 INFO    ] 200
[2026-10-25 19:43:05,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:05,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:43:05,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:05,459.459 INFO    ] No camera update needed
[2026-10-25 19:43:05,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:43:05,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:43:05,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:43:05,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:43:07,515.515 INFO    ] ================================================
[2026-10-25 19:43:07,530.530 INFO    ] Launching Daemon at Sun Oct 25 19:43:07 IST 2026
[2026-10-25 19:43:07,540.540 INFO    ] ================================================
[2026-10-25 19:43:08,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:43:08
[2026-10-25 19:43:08,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:43:08,990.990 INFO    ] Initializing speech engine...
[2026-10-25 19:43:08,999.999 INFO    ] 2026-10-25 19:43:08
[2026-10-25 19:43:09,248.248 INFO    ] 2026-10-25 19:43:09
[2026-10-25 19:43:09,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:43:09,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:43:09,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:43:09,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:43:09,729.729 INFO    ] time= 25/10/2026 19:43:09
[2026-10-25 19:43:09,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:43:09,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:43:09,874.874 INFO    ] No existing commands found in stream
[2026-10-25 19:43:14,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:43:14,913.913 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 19:43:17,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:43:17,680.680 INFO    ] Checking for system updates...
[2026-10-25 19:43:17,720.720 INFO    ] 200
[2026-10-25 19:43:17,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:17,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:43:17,785.785 INFO    ] No update needed
[2026-10-25 19:43:17,787.787 INFO    ] Checking for camera pi updates...
[2026-10-25 19:43:17,829.829 INFO    ] 200
[2026-10-25 19:43:17,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:17,877.877 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:43:17,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:43:17,935.935 INFO    ] No camera update needed
[2026-10-25 19:43:17,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:43:17,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:43:17,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:43:17,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:43:19,994.994 INFO    ] ================================================
[2026-10-25 19:43:20,009.009 INFO    ] Launching Daemon at Sun Oct 25 19:43:20 IST 2026
[2026-10-25 19:43:20,020.020 INFO    ] ================================================
[2026-10-25 19:43:20,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:43:20
[2026-10-25 19:43:21,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:43:21,465.465 INFO    ] Initializing speech engine...
[2026-10-25 19:43:21,491.491 INFO    ] 2026-10-25 19:43:21
[2026-10-25 19:43:21,763.763 INFO    ] 2026-10-25 19:43:21
[2026-10-25 19:43:21,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:43:21,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:43:22,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:43:22,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:43:22,180.180 INFO    ] time= 25/10/2026 19:43:22
[2026-10-25 19:43:22,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:43:22,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:43:22,265.265 INFO    ] No existing commands found in stream
[2026-10-25 19:43:27,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:43:27,280.280 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 19:43:31,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:43:31,709.709 INFO    ] Checking for system updates...
[2026-10-25 19:43:31,747.747 INFO    ] 200
[2026-10-25 19:43:31,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:31,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:31,807.807 INFO    ] No update needed
[2026-10-25 19:43:31,810.810 INFO    ] Checking for camera pi updates...
[2026-10-25 19:43:31,846.846 INFO    ] 200
[2026-10-25 19:43:31,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:31,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:43:31,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:31,934.934 INFO    ] No camera update needed
[2026-10-25 19:43:31,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:43:31,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:43:31,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:43:31,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:43:33,991.991 INFO    ] ================================================
[2026-10-25 19:43:34,007.007 INFO    ] Launching Daemon at Sun Oct 25 19:43:34 IST 2026
[2026-10-25 19:43:34,018.018 INFO    ] ================================================
[2026-10-25 19:43:34,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:43:34
[2026-10-25 19:43:35,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:43:35,425.425 INFO    ] Initializing speech engine...
[2026-10-25 19:43:35,432.432 INFO    ] 2026-10-25 19:43:35
[2026-10-25 19:43:35,722.722 INFO    ] 2026-10-25 19:43:35
[2026-10-25 19:43:35,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:43:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:43:35,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:43:36,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:43:36,097.097 INFO    ] time= 25/10/2026 19:43:36
[2026-10-25 19:43:36,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:43:36,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:43:36,223.223 INFO    ] No existing commands found in stream
[2026-10-25 19:43:41,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:43:41,242.242 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 19:43:44,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:43:44,972.972 INFO    ] Checking for system updates...
[2026-10-25 19:43:45,008.008 INFO    ] 200
[2026-10-25 19:43:45,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:45,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:45,072.072 INFO    ] No update needed
[2026-10-25 19:43:45,075.075 INFO    ] Checking for camera pi updates...
[2026-10-25 19:43:45,112.112 INFO    ] 200
[2026-10-25 19:43:45,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:45,155.155 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:43:45,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:45,320.320 INFO    ] No camera update needed
[2026-10-25 19:43:45,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:43:45,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:43:45,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:43:45,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:43:47,375.375 INFO    ] ================================================
[2026-10-25 19:43:47,390.390 INFO    ] Launching Daemon at Sun Oct 25 19:43:47 IST 2026
[2026-10-25 19:43:47,401.401 INFO    ] ================================================
[2026-10-25 19:43:48,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:43:48
[2026-10-25 19:43:48,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:43:49,001.001 INFO    ] Initializing speech engine...
[2026-10-25 19:43:49,009.009 INFO    ] 2026-10-25 19:43:49
[2026-10-25 19:43:49,295.295 INFO    ] 2026-10-25 19:43:49
[2026-10-25 19:43:49,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:43:49,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:43:49,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:43:49,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:43:49,806.806 INFO    ] time= 25/10/2026 19:43:49
[2026-10-25 19:43:49,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:43:49,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:43:49,960.960 INFO    ] No existing commands found in stream
[2026-10-25 19:43:54,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:43:54,988.988 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 19:43:56,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:43:56,403.403 INFO    ] Checking for system updates...
[2026-10-25 19:43:56,440.440 INFO    ] 200
[2026-10-25 19:43:56,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:56,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:56,506.506 INFO    ] No update needed
[2026-10-25 19:43:56,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 19:43:56,547.547 INFO    ] 200
[2026-10-25 19:43:56,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:43:56,602.602 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:43:56,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:43:56,654.654 INFO    ] No camera update needed
[2026-10-25 19:43:56,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:43:56,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:43:56,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:43:56,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:43:58,714.714 INFO    ] ================================================
[2026-10-25 19:43:58,730.730 INFO    ] Launching Daemon at Sun Oct 25 19:43:58 IST 2026
[2026-10-25 19:43:58,740.740 INFO    ] ================================================
[2026-10-25 19:43:59,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:43:59
[2026-10-25 19:44:00,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:44:00,343.343 INFO    ] Initializing speech engine...
[2026-10-25 19:44:00,355.355 INFO    ] 2026-10-25 19:44:00
[2026-10-25 19:44:00,659.659 INFO    ] 2026-10-25 19:44:00
[2026-10-25 19:44:00,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:44:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:44:02,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:44:03,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:44:03,565.565 INFO    ] time= 25/10/2026 19:44:03
[2026-10-25 19:44:03,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:44:03,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:44:03,672.672 INFO    ] No existing commands found in stream
[2026-10-25 19:44:08,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:44:08,691.691 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 19:44:10,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:44:10,839.839 INFO    ] Checking for system updates...
[2026-10-25 19:44:10,875.875 INFO    ] 200
[2026-10-25 19:44:10,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:10,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:10,934.934 INFO    ] No update needed
[2026-10-25 19:44:10,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 19:44:10,974.974 INFO    ] 200
[2026-10-25 19:44:10,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:11,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:44:11,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:11,072.072 INFO    ] No camera update needed
[2026-10-25 19:44:11,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:44:11,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:44:11,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:44:11,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:44:13,131.131 INFO    ] ================================================
[2026-10-25 19:44:13,146.146 INFO    ] Launching Daemon at Sun Oct 25 19:44:13 IST 2026
[2026-10-25 19:44:13,157.157 INFO    ] ================================================
[2026-10-25 19:44:13,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:44:13
[2026-10-25 19:44:14,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:44:14,592.592 INFO    ] Initializing speech engine...
[2026-10-25 19:44:14,613.613 INFO    ] 2026-10-25 19:44:14
[2026-10-25 19:44:14,869.869 INFO    ] 2026-10-25 19:44:14
[2026-10-25 19:44:14,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:44:15,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:44:15,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:44:15,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:44:15,334.334 INFO    ] time= 25/10/2026 19:44:15
[2026-10-25 19:44:15,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:44:15,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:44:15,482.482 INFO    ] No existing commands found in stream
[2026-10-25 19:44:20,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:44:20,496.496 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 19:44:22,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:44:22,230.230 INFO    ] Checking for system updates...
[2026-10-25 19:44:22,272.272 INFO    ] 200
[2026-10-25 19:44:22,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:22,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:44:22,340.340 INFO    ] No update needed
[2026-10-25 19:44:22,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 19:44:22,377.377 INFO    ] 200
[2026-10-25 19:44:22,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:22,422.422 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:44:22,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:44:22,485.485 INFO    ] No camera update needed
[2026-10-25 19:44:22,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:44:22,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:44:22,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:44:22,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:44:24,543.543 INFO    ] ================================================
[2026-10-25 19:44:24,558.558 INFO    ] Launching Daemon at Sun Oct 25 19:44:24 IST 2026
[2026-10-25 19:44:24,569.569 INFO    ] ================================================
[2026-10-25 19:44:25,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:44:25
[2026-10-25 19:44:25,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:44:26,005.005 INFO    ] Initializing speech engine...
[2026-10-25 19:44:26,014.014 INFO    ] 2026-10-25 19:44:26
[2026-10-25 19:44:26,259.259 INFO    ] 2026-10-25 19:44:26
[2026-10-25 19:44:26,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:44:26,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:44:26,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:44:26,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:44:26,627.627 INFO    ] time= 25/10/2026 19:44:26
[2026-10-25 19:44:26,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:44:26,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:44:26,795.795 INFO    ] No existing commands found in stream
[2026-10-25 19:44:31,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:44:31,834.834 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 19:44:34,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:44:34,521.521 INFO    ] Checking for system updates...
[2026-10-25 19:44:34,558.558 INFO    ] 200
[2026-10-25 19:44:34,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:34,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:34,624.624 INFO    ] No update needed
[2026-10-25 19:44:34,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 19:44:34,662.662 INFO    ] 200
[2026-10-25 19:44:34,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:34,708.708 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:44:34,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:34,747.747 INFO    ] No camera update needed
[2026-10-25 19:44:34,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:44:34,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:44:34,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:44:34,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:44:36,811.811 INFO    ] ================================================
[2026-10-25 19:44:36,827.827 INFO    ] Launching Daemon at Sun Oct 25 19:44:36 IST 2026
[2026-10-25 19:44:36,838.838 INFO    ] ================================================
[2026-10-25 19:44:37,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:44:37
[2026-10-25 19:44:37,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:44:38,251.251 INFO    ] Initializing speech engine...
[2026-10-25 19:44:38,276.276 INFO    ] 2026-10-25 19:44:38
[2026-10-25 19:44:38,573.573 INFO    ] 2026-10-25 19:44:38
[2026-10-25 19:44:38,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:44:38,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:44:38,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:44:38,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:44:38,978.978 INFO    ] time= 25/10/2026 19:44:38
[2026-10-25 19:44:39,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:44:39,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:44:39,117.117 INFO    ] No existing commands found in stream
[2026-10-25 19:44:44,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:44:44,132.132 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 19:44:45,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:44:45,608.608 INFO    ] Checking for system updates...
[2026-10-25 19:44:45,645.645 INFO    ] 200
[2026-10-25 19:44:45,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:45,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:45,704.704 INFO    ] No update needed
[2026-10-25 19:44:45,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 19:44:45,746.746 INFO    ] 200
[2026-10-25 19:44:45,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:45,794.794 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:44:45,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:44:45,846.846 INFO    ] No camera update needed
[2026-10-25 19:44:45,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:44:45,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:44:45,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:44:45,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:44:47,904.904 INFO    ] ================================================
[2026-10-25 19:44:47,919.919 INFO    ] Launching Daemon at Sun Oct 25 19:44:47 IST 2026
[2026-10-25 19:44:47,929.929 INFO    ] ================================================
[2026-10-25 19:44:48,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:44:48
[2026-10-25 19:44:49,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:44:49,330.330 INFO    ] Initializing speech engine...
[2026-10-25 19:44:49,354.354 INFO    ] 2026-10-25 19:44:49
[2026-10-25 19:44:49,604.604 INFO    ] 2026-10-25 19:44:49
[2026-10-25 19:44:49,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:44:50,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:44:50,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:44:50,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:44:50,749.749 INFO    ] time= 25/10/2026 19:44:50
[2026-10-25 19:44:50,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:44:50,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:44:50,816.816 INFO    ] No existing commands found in stream
[2026-10-25 19:44:55,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:44:55,830.830 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 19:44:57,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:44:57,154.154 INFO    ] Checking for system updates...
[2026-10-25 19:44:57,191.191 INFO    ] 200
[2026-10-25 19:44:57,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:57,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:44:57,259.259 INFO    ] No update needed
[2026-10-25 19:44:57,262.262 INFO    ] Checking for camera pi updates...
[2026-10-25 19:44:57,297.297 INFO    ] 200
[2026-10-25 19:44:57,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:44:57,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:44:57,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:44:57,394.394 INFO    ] No camera update needed
[2026-10-25 19:44:57,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:44:57,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:44:57,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:44:57,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:44:59,454.454 INFO    ] ================================================
[2026-10-25 19:44:59,469.469 INFO    ] Launching Daemon at Sun Oct 25 19:44:59 IST 2026
[2026-10-25 19:44:59,479.479 INFO    ] ================================================
[2026-10-25 19:45:00,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:45:00
[2026-10-25 19:45:00,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:45:01,183.183 INFO    ] Initializing speech engine...
[2026-10-25 19:45:01,186.186 INFO    ] 2026-10-25 19:45:01
[2026-10-25 19:45:01,738.738 INFO    ] 2026-10-25 19:45:01
[2026-10-25 19:45:01,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:45:04,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:45:04,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:45:05,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:45:05,311.311 INFO    ] time= 25/10/2026 19:45:05
[2026-10-25 19:45:05,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:45:05,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:45:05,366.366 INFO    ] No existing commands found in stream
[2026-10-25 19:45:10,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:45:10,379.379 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 19:45:13,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:45:13,905.905 INFO    ] Checking for system updates...
[2026-10-25 19:45:13,942.942 INFO    ] 200
[2026-10-25 19:45:13,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:14,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:45:14,008.008 INFO    ] No update needed
[2026-10-25 19:45:14,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 19:45:14,044.044 INFO    ] 200
[2026-10-25 19:45:14,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:14,088.088 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:45:14,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:45:14,155.155 INFO    ] No camera update needed
[2026-10-25 19:45:14,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:45:14,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:45:14,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:45:14,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:45:16,215.215 INFO    ] ================================================
[2026-10-25 19:45:16,231.231 INFO    ] Launching Daemon at Sun Oct 25 19:45:16 IST 2026
[2026-10-25 19:45:16,242.242 INFO    ] ================================================
[2026-10-25 19:45:16,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:45:16
[2026-10-25 19:45:17,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:45:17,917.917 INFO    ] Initializing speech engine...
[2026-10-25 19:45:17,924.924 INFO    ] 2026-10-25 19:45:17
[2026-10-25 19:45:18,238.238 INFO    ] 2026-10-25 19:45:18
[2026-10-25 19:45:18,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:45:18,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:45:18,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:45:18,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:45:18,869.869 INFO    ] time= 25/10/2026 19:45:18
[2026-10-25 19:45:18,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:45:18,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:45:19,042.042 INFO    ] No existing commands found in stream
[2026-10-25 19:45:24,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:45:24,070.070 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 19:45:25,670.670 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:45:25,673.673 INFO    ] Checking for system updates...
[2026-10-25 19:45:25,709.709 INFO    ] 200
[2026-10-25 19:45:25,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:25,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:45:25,768.768 INFO    ] No update needed
[2026-10-25 19:45:25,770.770 INFO    ] Checking for camera pi updates...
[2026-10-25 19:45:25,804.804 INFO    ] 200
[2026-10-25 19:45:25,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:25,847.847 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:45:25,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:45:25,912.912 INFO    ] No camera update needed
[2026-10-25 19:45:25,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:45:25,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:45:25,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:45:25,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:45:27,968.968 INFO    ] ================================================
[2026-10-25 19:45:27,984.984 INFO    ] Launching Daemon at Sun Oct 25 19:45:27 IST 2026
[2026-10-25 19:45:28,995.995 INFO    ] ================================================
[2026-10-25 19:45:28,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:45:28
[2026-10-25 19:45:29,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:45:29,436.436 INFO    ] Initializing speech engine...
[2026-10-25 19:45:29,444.444 INFO    ] 2026-10-25 19:45:29
[2026-10-25 19:45:29,693.693 INFO    ] 2026-10-25 19:45:29
[2026-10-25 19:45:29,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:45:29,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:45:29,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:45:30,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:45:30,054.054 INFO    ] time= 25/10/2026 19:45:30
[2026-10-25 19:45:30,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:45:30,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:45:30,131.131 INFO    ] No existing commands found in stream
[2026-10-25 19:45:35,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:45:35,148.148 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 19:45:38,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:45:38,073.073 INFO    ] Checking for system updates...
[2026-10-25 19:45:38,110.110 INFO    ] 200
[2026-10-25 19:45:38,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:38,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:45:38,169.169 INFO    ] No update needed
[2026-10-25 19:45:38,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 19:45:38,206.206 INFO    ] 200
[2026-10-25 19:45:38,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:38,249.249 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:45:38,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:45:38,342.342 INFO    ] No camera update needed
[2026-10-25 19:45:38,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:45:38,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:45:38,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:45:38,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:45:40,398.398 INFO    ] ================================================
[2026-10-25 19:45:40,413.413 INFO    ] Launching Daemon at Sun Oct 25 19:45:40 IST 2026
[2026-10-25 19:45:40,424.424 INFO    ] ================================================
[2026-10-25 19:45:40,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:45:40
[2026-10-25 19:45:41,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:45:41,851.851 INFO    ] Initializing speech engine...
[2026-10-25 19:45:41,860.860 INFO    ] 2026-10-25 19:45:41
[2026-10-25 19:45:42,107.107 INFO    ] 2026-10-25 19:45:42
[2026-10-25 19:45:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:45:42,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:45:42,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:45:42,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:45:42,474.474 INFO    ] time= 25/10/2026 19:45:42
[2026-10-25 19:45:42,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:45:42,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:45:42,551.551 INFO    ] No existing commands found in stream
[2026-10-25 19:45:47,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:45:47,578.578 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 19:45:50,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:45:50,981.981 INFO    ] Checking for system updates...
[2026-10-25 19:45:51,017.017 INFO    ] 200
[2026-10-25 19:45:51,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:51,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:45:51,077.077 INFO    ] No update needed
[2026-10-25 19:45:51,080.080 INFO    ] Checking for camera pi updates...
[2026-10-25 19:45:51,118.118 INFO    ] 200
[2026-10-25 19:45:51,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:45:51,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:45:51,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:45:51,339.339 INFO    ] No camera update needed
[2026-10-25 19:45:51,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:45:51,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:45:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:45:51,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:45:53,403.403 INFO    ] ================================================
[2026-10-25 19:45:53,418.418 INFO    ] Launching Daemon at Sun Oct 25 19:45:53 IST 2026
[2026-10-25 19:45:53,429.429 INFO    ] ================================================
[2026-10-25 19:45:54,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:45:54
[2026-10-25 19:45:54,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:45:54,844.844 INFO    ] Initializing speech engine...
[2026-10-25 19:45:54,866.866 INFO    ] 2026-10-25 19:45:54
[2026-10-25 19:45:55,118.118 INFO    ] 2026-10-25 19:45:55
[2026-10-25 19:45:55,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:45:55,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:45:55,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:45:55,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:45:55,566.566 INFO    ] time= 25/10/2026 19:45:55
[2026-10-25 19:45:55,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:45:55,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:45:55,732.732 INFO    ] No existing commands found in stream
[2026-10-25 19:46:00,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:46:00,747.747 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 19:46:06,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:46:06,909.909 INFO    ] Checking for system updates...
[2026-10-25 19:46:06,945.945 INFO    ] 200
[2026-10-25 19:46:06,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:07,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:07,014.014 INFO    ] No update needed
[2026-10-25 19:46:07,017.017 INFO    ] Checking for camera pi updates...
[2026-10-25 19:46:07,050.050 INFO    ] 200
[2026-10-25 19:46:07,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:07,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:46:07,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:07,191.191 INFO    ] No camera update needed
[2026-10-25 19:46:07,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:46:07,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:46:07,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:46:07,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:46:09,248.248 INFO    ] ================================================
[2026-10-25 19:46:09,268.268 INFO    ] Launching Daemon at Sun Oct 25 19:46:09 IST 2026
[2026-10-25 19:46:09,285.285 INFO    ] ================================================
[2026-10-25 19:46:09,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:46:09
[2026-10-25 19:46:10,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:46:10,980.980 INFO    ] Initializing speech engine...
[2026-10-25 19:46:10,989.989 INFO    ] 2026-10-25 19:46:10
[2026-10-25 19:46:11,301.301 INFO    ] 2026-10-25 19:46:11
[2026-10-25 19:46:11,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:46:11,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:46:11,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:46:11,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:46:11,810.810 INFO    ] time= 25/10/2026 19:46:11
[2026-10-25 19:46:11,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:46:11,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:46:11,959.959 INFO    ] No existing commands found in stream
[2026-10-25 19:46:16,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:46:16,985.985 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 19:46:21,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:46:21,133.133 INFO    ] Checking for system updates...
[2026-10-25 19:46:21,174.174 INFO    ] 200
[2026-10-25 19:46:21,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:21,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:46:21,252.252 INFO    ] No update needed
[2026-10-25 19:46:21,256.256 INFO    ] Checking for camera pi updates...
[2026-10-25 19:46:21,293.293 INFO    ] 200
[2026-10-25 19:46:21,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:21,343.343 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:46:21,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:46:21,404.404 INFO    ] No camera update needed
[2026-10-25 19:46:21,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:46:21,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:46:21,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:46:21,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:46:23,471.471 INFO    ] ================================================
[2026-10-25 19:46:23,488.488 INFO    ] Launching Daemon at Sun Oct 25 19:46:23 IST 2026
[2026-10-25 19:46:23,500.500 INFO    ] ================================================
[2026-10-25 19:46:24,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:46:24
[2026-10-25 19:46:24,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:46:24,974.974 INFO    ] Initializing speech engine...
[2026-10-25 19:46:24,984.984 INFO    ] 2026-10-25 19:46:24
[2026-10-25 19:46:25,304.304 INFO    ] 2026-10-25 19:46:25
[2026-10-25 19:46:25,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:46:25,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:46:25,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:46:25,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:46:25,734.734 INFO    ] time= 25/10/2026 19:46:25
[2026-10-25 19:46:25,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:46:25,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:46:25,884.884 INFO    ] No existing commands found in stream
[2026-10-25 19:46:30,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:46:30,910.910 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 19:46:32,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:46:32,064.064 INFO    ] Checking for system updates...
[2026-10-25 19:46:32,104.104 INFO    ] 200
[2026-10-25 19:46:32,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:32,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:32,171.171 INFO    ] No update needed
[2026-10-25 19:46:32,174.174 INFO    ] Checking for camera pi updates...
[2026-10-25 19:46:32,213.213 INFO    ] 200
[2026-10-25 19:46:32,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:32,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:46:32,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:32,318.318 INFO    ] No camera update needed
[2026-10-25 19:46:32,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:46:32,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:46:32,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:46:32,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:46:34,375.375 INFO    ] ================================================
[2026-10-25 19:46:34,389.389 INFO    ] Launching Daemon at Sun Oct 25 19:46:34 IST 2026
[2026-10-25 19:46:34,401.401 INFO    ] ================================================
[2026-10-25 19:46:34,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:46:34
[2026-10-25 19:46:35,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:46:35,823.823 INFO    ] Initializing speech engine...
[2026-10-25 19:46:35,839.839 INFO    ] 2026-10-25 19:46:35
[2026-10-25 19:46:36,126.126 INFO    ] 2026-10-25 19:46:36
[2026-10-25 19:46:36,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:46:38,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:46:38,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:46:38,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:46:38,426.426 INFO    ] time= 25/10/2026 19:46:38
[2026-10-25 19:46:38,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:46:38,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:46:38,490.490 INFO    ] No existing commands found in stream
[2026-10-25 19:46:43,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:46:43,502.502 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 19:46:47,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:46:47,430.430 INFO    ] Checking for system updates...
[2026-10-25 19:46:47,468.468 INFO    ] 200
[2026-10-25 19:46:47,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:47,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:46:47,536.536 INFO    ] No update needed
[2026-10-25 19:46:47,539.539 INFO    ] Checking for camera pi updates...
[2026-10-25 19:46:47,579.579 INFO    ] 200
[2026-10-25 19:46:47,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:47,625.625 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:46:47,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:46:47,686.686 INFO    ] No camera update needed
[2026-10-25 19:46:47,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:46:47,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:46:47,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:46:47,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:46:49,745.745 INFO    ] ================================================
[2026-10-25 19:46:49,761.761 INFO    ] Launching Daemon at Sun Oct 25 19:46:49 IST 2026
[2026-10-25 19:46:49,772.772 INFO    ] ================================================
[2026-10-25 19:46:50,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:46:50
[2026-10-25 19:46:51,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:46:51,432.432 INFO    ] Initializing speech engine...
[2026-10-25 19:46:51,443.443 INFO    ] 2026-10-25 19:46:51
[2026-10-25 19:46:51,756.756 INFO    ] 2026-10-25 19:46:51
[2026-10-25 19:46:51,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:46:52,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:46:52,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:46:52,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:46:52,258.258 INFO    ] time= 25/10/2026 19:46:52
[2026-10-25 19:46:52,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:46:52,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:46:52,400.400 INFO    ] No existing commands found in stream
[2026-10-25 19:46:57,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:46:57,426.426 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 19:46:58,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:46:58,830.830 INFO    ] Checking for system updates...
[2026-10-25 19:46:58,891.891 INFO    ] 200
[2026-10-25 19:46:58,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:58,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:58,951.951 INFO    ] No update needed
[2026-10-25 19:46:58,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 19:46:58,993.993 INFO    ] 200
[2026-10-25 19:46:58,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:46:59,043.043 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:46:59,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:46:59,119.119 INFO    ] No camera update needed
[2026-10-25 19:46:59,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:46:59,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:46:59,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:46:59,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:47:01,179.179 INFO    ] ================================================
[2026-10-25 19:47:01,194.194 INFO    ] Launching Daemon at Sun Oct 25 19:47:01 IST 2026
[2026-10-25 19:47:01,205.205 INFO    ] ================================================
[2026-10-25 19:47:02,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:47:02
[2026-10-25 19:47:02,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:47:03,126.126 INFO    ] Initializing speech engine...
[2026-10-25 19:47:03,132.132 INFO    ] 2026-10-25 19:47:03
[2026-10-25 19:47:03,407.407 INFO    ] 2026-10-25 19:47:03
[2026-10-25 19:47:03,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:47:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:47:03,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:47:03,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:47:03,791.791 INFO    ] time= 25/10/2026 19:47:03
[2026-10-25 19:47:03,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:47:03,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:47:03,888.888 INFO    ] No existing commands found in stream
[2026-10-25 19:47:08,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:47:08,926.926 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 19:47:11,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:47:11,838.838 INFO    ] Checking for system updates...
[2026-10-25 19:47:11,874.874 INFO    ] 200
[2026-10-25 19:47:11,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:11,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:47:11,933.933 INFO    ] No update needed
[2026-10-25 19:47:11,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 19:47:11,975.975 INFO    ] 200
[2026-10-25 19:47:11,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:12,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:47:12,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:47:12,069.069 INFO    ] No camera update needed
[2026-10-25 19:47:12,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:47:12,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:47:12,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:47:12,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:47:14,126.126 INFO    ] ================================================
[2026-10-25 19:47:14,142.142 INFO    ] Launching Daemon at Sun Oct 25 19:47:14 IST 2026
[2026-10-25 19:47:14,153.153 INFO    ] ================================================
[2026-10-25 19:47:14,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:47:14
[2026-10-25 19:47:15,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:47:15,594.594 INFO    ] Initializing speech engine...
[2026-10-25 19:47:15,610.610 INFO    ] 2026-10-25 19:47:15
[2026-10-25 19:47:15,866.866 INFO    ] 2026-10-25 19:47:15
[2026-10-25 19:47:15,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:47:16,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:47:16,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:47:16,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:47:16,249.249 INFO    ] time= 25/10/2026 19:47:16
[2026-10-25 19:47:16,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:47:16,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:47:16,380.380 INFO    ] No existing commands found in stream
[2026-10-25 19:47:21,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:47:21,396.396 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 19:47:23,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:47:23,542.542 INFO    ] Checking for system updates...
[2026-10-25 19:47:23,577.577 INFO    ] 200
[2026-10-25 19:47:23,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:23,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:47:23,635.635 INFO    ] No update needed
[2026-10-25 19:47:23,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 19:47:23,672.672 INFO    ] 200
[2026-10-25 19:47:23,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:23,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:47:23,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:47:23,774.774 INFO    ] No camera update needed
[2026-10-25 19:47:23,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:47:23,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:47:23,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:47:23,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:47:25,831.831 INFO    ] ================================================
[2026-10-25 19:47:25,847.847 INFO    ] Launching Daemon at Sun Oct 25 19:47:25 IST 2026
[2026-10-25 19:47:25,858.858 INFO    ] ================================================
[2026-10-25 19:47:26,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:47:26
[2026-10-25 19:47:27,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:47:27,274.274 INFO    ] Initializing speech engine...
[2026-10-25 19:47:27,282.282 INFO    ] 2026-10-25 19:47:27
[2026-10-25 19:47:27,577.577 INFO    ] 2026-10-25 19:47:27
[2026-10-25 19:47:27,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:47:27,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:47:27,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:47:27,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:47:27,967.967 INFO    ] time= 25/10/2026 19:47:27
[2026-10-25 19:47:27,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:47:28,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:47:28,123.123 INFO    ] No existing commands found in stream
[2026-10-25 19:47:33,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:47:33,151.151 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 19:47:35,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:47:35,438.438 INFO    ] Checking for system updates...
[2026-10-25 19:47:35,474.474 INFO    ] 200
[2026-10-25 19:47:35,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:35,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:47:35,540.540 INFO    ] No update needed
[2026-10-25 19:47:35,543.543 INFO    ] Checking for camera pi updates...
[2026-10-25 19:47:35,576.576 INFO    ] 200
[2026-10-25 19:47:35,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:35,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:47:35,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:47:35,671.671 INFO    ] No camera update needed
[2026-10-25 19:47:35,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:47:35,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:47:35,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:47:35,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:47:37,726.726 INFO    ] ================================================
[2026-10-25 19:47:37,742.742 INFO    ] Launching Daemon at Sun Oct 25 19:47:37 IST 2026
[2026-10-25 19:47:37,754.754 INFO    ] ================================================
[2026-10-25 19:47:38,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:47:38
[2026-10-25 19:47:39,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:47:39,442.442 INFO    ] Initializing speech engine...
[2026-10-25 19:47:39,454.454 INFO    ] 2026-10-25 19:47:39
[2026-10-25 19:47:39,733.733 INFO    ] 2026-10-25 19:47:39
[2026-10-25 19:47:39,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:47:42,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:47:42,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:47:42,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:47:42,789.789 INFO    ] time= 25/10/2026 19:47:42
[2026-10-25 19:47:42,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:47:42,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:47:42,846.846 INFO    ] No existing commands found in stream
[2026-10-25 19:47:47,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:47:47,860.860 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 19:47:51,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:47:51,042.042 INFO    ] Checking for system updates...
[2026-10-25 19:47:51,081.081 INFO    ] 200
[2026-10-25 19:47:51,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:51,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:47:51,140.140 INFO    ] No update needed
[2026-10-25 19:47:51,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 19:47:51,177.177 INFO    ] 200
[2026-10-25 19:47:51,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:47:51,220.220 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:47:51,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:47:51,270.270 INFO    ] No camera update needed
[2026-10-25 19:47:51,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:47:51,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:47:51,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:47:51,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:47:53,333.333 INFO    ] ================================================
[2026-10-25 19:47:53,348.348 INFO    ] Launching Daemon at Sun Oct 25 19:47:53 IST 2026
[2026-10-25 19:47:53,359.359 INFO    ] ================================================
[2026-10-25 19:47:53,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:47:53
[2026-10-25 19:47:54,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:47:54,823.823 INFO    ] Initializing speech engine...
[2026-10-25 19:47:54,832.832 INFO    ] 2026-10-25 19:47:54
[2026-10-25 19:47:55,089.089 INFO    ] 2026-10-25 19:47:55
[2026-10-25 19:47:55,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:47:55,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:47:55,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:47:55,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:47:55,548.548 INFO    ] time= 25/10/2026 19:47:55
[2026-10-25 19:47:55,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:47:55,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:47:55,697.697 INFO    ] No existing commands found in stream
[2026-10-25 19:48:00,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:48:00,713.713 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 19:48:03,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:48:03,815.815 INFO    ] Checking for system updates...
[2026-10-25 19:48:03,851.851 INFO    ] 200
[2026-10-25 19:48:03,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:03,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:03,918.918 INFO    ] No update needed
[2026-10-25 19:48:03,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 19:48:03,959.959 INFO    ] 200
[2026-10-25 19:48:03,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:04,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:48:04,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:04,062.062 INFO    ] No camera update needed
[2026-10-25 19:48:04,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:48:04,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:48:04,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:48:04,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:48:06,126.126 INFO    ] ================================================
[2026-10-25 19:48:06,141.141 INFO    ] Launching Daemon at Sun Oct 25 19:48:06 IST 2026
[2026-10-25 19:48:06,153.153 INFO    ] ================================================
[2026-10-25 19:48:06,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:48:06
[2026-10-25 19:48:07,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:48:07,845.845 INFO    ] Initializing speech engine...
[2026-10-25 19:48:07,851.851 INFO    ] 2026-10-25 19:48:07
[2026-10-25 19:48:08,143.143 INFO    ] 2026-10-25 19:48:08
[2026-10-25 19:48:08,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:48:08,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:48:08,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:48:08,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:48:08,691.691 INFO    ] time= 25/10/2026 19:48:08
[2026-10-25 19:48:08,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:48:08,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:48:08,802.802 INFO    ] No existing commands found in stream
[2026-10-25 19:48:13,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:48:13,840.840 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 19:48:16,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:48:16,994.994 INFO    ] Checking for system updates...
[2026-10-25 19:48:17,030.030 INFO    ] 200
[2026-10-25 19:48:17,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:17,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:17,096.096 INFO    ] No update needed
[2026-10-25 19:48:17,098.098 INFO    ] Checking for camera pi updates...
[2026-10-25 19:48:17,133.133 INFO    ] 200
[2026-10-25 19:48:17,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:17,175.175 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:48:17,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:17,233.233 INFO    ] No camera update needed
[2026-10-25 19:48:17,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:48:17,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:48:17,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:48:17,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:48:19,290.290 INFO    ] ================================================
[2026-10-25 19:48:19,306.306 INFO    ] Launching Daemon at Sun Oct 25 19:48:19 IST 2026
[2026-10-25 19:48:19,319.319 INFO    ] ================================================
[2026-10-25 19:48:20,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:48:20
[2026-10-25 19:48:20,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:48:21,039.039 INFO    ] Initializing speech engine...
[2026-10-25 19:48:21,046.046 INFO    ] 2026-10-25 19:48:21
[2026-10-25 19:48:21,360.360 INFO    ] 2026-10-25 19:48:21
[2026-10-25 19:48:21,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:48:21,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:48:21,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:48:21,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:48:21,868.868 INFO    ] time= 25/10/2026 19:48:21
[2026-10-25 19:48:21,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:48:21,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:48:22,027.027 INFO    ] No existing commands found in stream
[2026-10-25 19:48:27,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:48:27,043.043 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 19:48:28,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:48:28,294.294 INFO    ] Checking for system updates...
[2026-10-25 19:48:28,331.331 INFO    ] 200
[2026-10-25 19:48:28,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:28,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:28,392.392 INFO    ] No update needed
[2026-10-25 19:48:28,395.395 INFO    ] Checking for camera pi updates...
[2026-10-25 19:48:28,430.430 INFO    ] 200
[2026-10-25 19:48:28,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:28,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:48:28,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:28,535.535 INFO    ] No camera update needed
[2026-10-25 19:48:28,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:48:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:48:28,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:48:28,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:48:30,596.596 INFO    ] ================================================
[2026-10-25 19:48:30,612.612 INFO    ] Launching Daemon at Sun Oct 25 19:48:30 IST 2026
[2026-10-25 19:48:30,624.624 INFO    ] ================================================
[2026-10-25 19:48:31,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:48:31
[2026-10-25 19:48:31,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:48:32,048.048 INFO    ] Initializing speech engine...
[2026-10-25 19:48:32,068.068 INFO    ] 2026-10-25 19:48:32
[2026-10-25 19:48:32,336.336 INFO    ] 2026-10-25 19:48:32
[2026-10-25 19:48:32,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:48:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:48:32,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:48:32,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:48:32,732.732 INFO    ] time= 25/10/2026 19:48:32
[2026-10-25 19:48:32,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:48:32,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:48:32,915.915 INFO    ] No existing commands found in stream
[2026-10-25 19:48:37,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:48:37,945.945 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 19:48:39,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:48:39,155.155 INFO    ] Checking for system updates...
[2026-10-25 19:48:39,194.194 INFO    ] 200
[2026-10-25 19:48:39,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:39,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:39,264.264 INFO    ] No update needed
[2026-10-25 19:48:39,267.267 INFO    ] Checking for camera pi updates...
[2026-10-25 19:48:39,337.337 INFO    ] 200
[2026-10-25 19:48:39,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:39,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:48:39,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:39,432.432 INFO    ] No camera update needed
[2026-10-25 19:48:39,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:48:39,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:48:39,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:48:39,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:48:41,493.493 INFO    ] ================================================
[2026-10-25 19:48:41,508.508 INFO    ] Launching Daemon at Sun Oct 25 19:48:41 IST 2026
[2026-10-25 19:48:41,520.520 INFO    ] ================================================
[2026-10-25 19:48:42,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:48:42
[2026-10-25 19:48:42,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:48:43,108.108 INFO    ] Initializing speech engine...
[2026-10-25 19:48:43,114.114 INFO    ] 2026-10-25 19:48:43
[2026-10-25 19:48:43,404.404 INFO    ] 2026-10-25 19:48:43
[2026-10-25 19:48:43,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:48:44,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:48:44,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:48:44,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:48:44,716.716 INFO    ] time= 25/10/2026 19:48:44
[2026-10-25 19:48:44,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:48:44,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:48:44,782.782 INFO    ] No existing commands found in stream
[2026-10-25 19:48:49,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:48:49,797.797 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 19:48:51,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:48:51,427.427 INFO    ] Checking for system updates...
[2026-10-25 19:48:51,464.464 INFO    ] 200
[2026-10-25 19:48:51,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:51,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:51,524.524 INFO    ] No update needed
[2026-10-25 19:48:51,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 19:48:51,562.562 INFO    ] 200
[2026-10-25 19:48:51,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:48:51,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:48:51,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:48:51,661.661 INFO    ] No camera update needed
[2026-10-25 19:48:51,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:48:51,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:48:51,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:48:51,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:48:53,720.720 INFO    ] ================================================
[2026-10-25 19:48:53,735.735 INFO    ] Launching Daemon at Sun Oct 25 19:48:53 IST 2026
[2026-10-25 19:48:53,746.746 INFO    ] ================================================
[2026-10-25 19:48:54,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:48:54
[2026-10-25 19:48:54,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:48:55,153.153 INFO    ] Initializing speech engine...
[2026-10-25 19:48:55,176.176 INFO    ] 2026-10-25 19:48:55
[2026-10-25 19:48:55,430.430 INFO    ] 2026-10-25 19:48:55
[2026-10-25 19:48:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:48:55,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:48:55,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:48:55,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:48:55,884.884 INFO    ] time= 25/10/2026 19:48:55
[2026-10-25 19:48:55,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:48:55,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:48:56,053.053 INFO    ] No existing commands found in stream
[2026-10-25 19:49:01,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:01,067.067 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 19:49:02,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:49:02,245.245 INFO    ] Checking for system updates...
[2026-10-25 19:49:02,285.285 INFO    ] 200
[2026-10-25 19:49:02,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:02,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:02,354.354 INFO    ] No update needed
[2026-10-25 19:49:02,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 19:49:02,397.397 INFO    ] 200
[2026-10-25 19:49:02,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:02,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:49:02,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:02,492.492 INFO    ] No camera update needed
[2026-10-25 19:49:02,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:49:02,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:49:02,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:49:02,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:49:04,553.553 INFO    ] ================================================
[2026-10-25 19:49:04,569.569 INFO    ] Launching Daemon at Sun Oct 25 19:49:04 IST 2026
[2026-10-25 19:49:04,580.580 INFO    ] ================================================
[2026-10-25 19:49:05,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:49:05
[2026-10-25 19:49:05,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:49:06,026.026 INFO    ] Initializing speech engine...
[2026-10-25 19:49:06,049.049 INFO    ] 2026-10-25 19:49:06
[2026-10-25 19:49:06,305.305 INFO    ] 2026-10-25 19:49:06
[2026-10-25 19:49:06,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:49:06,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:49:06,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:49:06,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:49:06,742.742 INFO    ] time= 25/10/2026 19:49:06
[2026-10-25 19:49:06,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:49:06,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:49:06,923.923 INFO    ] No existing commands found in stream
[2026-10-25 19:49:11,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:11,936.936 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 19:49:15,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:49:15,129.129 INFO    ] Checking for system updates...
[2026-10-25 19:49:15,171.171 INFO    ] 200
[2026-10-25 19:49:15,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:15,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:15,233.233 INFO    ] No update needed
[2026-10-25 19:49:15,236.236 INFO    ] Checking for camera pi updates...
[2026-10-25 19:49:15,271.271 INFO    ] 200
[2026-10-25 19:49:15,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:15,316.316 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:49:15,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:15,374.374 INFO    ] No camera update needed
[2026-10-25 19:49:15,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:49:15,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:49:15,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:49:15,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:49:17,435.435 INFO    ] ================================================
[2026-10-25 19:49:17,451.451 INFO    ] Launching Daemon at Sun Oct 25 19:49:17 IST 2026
[2026-10-25 19:49:17,462.462 INFO    ] ================================================
[2026-10-25 19:49:18,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:49:18
[2026-10-25 19:49:18,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:49:18,890.890 INFO    ] Initializing speech engine...
[2026-10-25 19:49:18,897.897 INFO    ] 2026-10-25 19:49:18
[2026-10-25 19:49:19,154.154 INFO    ] 2026-10-25 19:49:19
[2026-10-25 19:49:19,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:49:19,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:49:19,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:49:19,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:49:19,613.613 INFO    ] time= 25/10/2026 19:49:19
[2026-10-25 19:49:19,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:49:19,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:49:19,763.763 INFO    ] No existing commands found in stream
[2026-10-25 19:49:24,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:24,778.778 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 19:49:26,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:49:26,318.318 INFO    ] Checking for system updates...
[2026-10-25 19:49:26,353.353 INFO    ] 200
[2026-10-25 19:49:26,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:26,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:26,411.411 INFO    ] No update needed
[2026-10-25 19:49:26,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 19:49:26,447.447 INFO    ] 200
[2026-10-25 19:49:26,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:26,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:49:26,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:49:26,543.543 INFO    ] No camera update needed
[2026-10-25 19:49:26,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:49:26,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:49:26,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:49:26,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:49:28,599.599 INFO    ] ================================================
[2026-10-25 19:49:28,615.615 INFO    ] Launching Daemon at Sun Oct 25 19:49:28 IST 2026
[2026-10-25 19:49:28,626.626 INFO    ] ================================================
[2026-10-25 19:49:29,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:49:29
[2026-10-25 19:49:29,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:49:30,071.071 INFO    ] Initializing speech engine...
[2026-10-25 19:49:30,081.081 INFO    ] 2026-10-25 19:49:30
[2026-10-25 19:49:30,325.325 INFO    ] 2026-10-25 19:49:30
[2026-10-25 19:49:30,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:49:30,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:49:30,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:49:30,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:49:30,794.794 INFO    ] time= 25/10/2026 19:49:30
[2026-10-25 19:49:30,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:49:30,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:49:30,937.937 INFO    ] No existing commands found in stream
[2026-10-25 19:49:35,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:35,952.952 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-25 19:49:36,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:49:36,629.629 INFO    ] Checking for system updates...
[2026-10-25 19:49:36,665.665 INFO    ] 200
[2026-10-25 19:49:36,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:36,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:49:36,738.738 INFO    ] No update needed
[2026-10-25 19:49:36,740.740 INFO    ] Checking for camera pi updates...
[2026-10-25 19:49:36,774.774 INFO    ] 200
[2026-10-25 19:49:36,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:36,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:49:36,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:49:36,879.879 INFO    ] No camera update needed
[2026-10-25 19:49:36,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:49:36,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:49:36,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:49:36,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:49:38,935.935 INFO    ] ================================================
[2026-10-25 19:49:38,951.951 INFO    ] Launching Daemon at Sun Oct 25 19:49:38 IST 2026
[2026-10-25 19:49:38,962.962 INFO    ] ================================================
[2026-10-25 19:49:39,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:49:39
[2026-10-25 19:49:40,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:49:40,625.625 INFO    ] Initializing speech engine...
[2026-10-25 19:49:40,636.636 INFO    ] 2026-10-25 19:49:40
[2026-10-25 19:49:40,919.919 INFO    ] 2026-10-25 19:49:40
[2026-10-25 19:49:40,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:49:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:49:41,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:49:41,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:49:41,394.394 INFO    ] time= 25/10/2026 19:49:41
[2026-10-25 19:49:41,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:49:41,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:49:41,611.611 INFO    ] No existing commands found in stream
[2026-10-25 19:49:46,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:46,640.640 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 19:49:47,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:49:47,457.457 INFO    ] Checking for system updates...
[2026-10-25 19:49:47,497.497 INFO    ] 200
[2026-10-25 19:49:47,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:47,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:49:47,557.557 INFO    ] No update needed
[2026-10-25 19:49:47,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 19:49:47,594.594 INFO    ] 200
[2026-10-25 19:49:47,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:49:47,637.637 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:49:47,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:49:47,689.689 INFO    ] No camera update needed
[2026-10-25 19:49:47,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:49:47,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:49:47,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:49:47,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:49:49,744.744 INFO    ] ================================================
[2026-10-25 19:49:49,760.760 INFO    ] Launching Daemon at Sun Oct 25 19:49:49 IST 2026
[2026-10-25 19:49:49,771.771 INFO    ] ================================================
[2026-10-25 19:49:50,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:49:50
[2026-10-25 19:49:50,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:49:51,191.191 INFO    ] Initializing speech engine...
[2026-10-25 19:49:51,201.201 INFO    ] 2026-10-25 19:49:51
[2026-10-25 19:49:51,459.459 INFO    ] 2026-10-25 19:49:51
[2026-10-25 19:49:51,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:49:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:49:51,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:49:51,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:49:51,924.924 INFO    ] time= 25/10/2026 19:49:51
[2026-10-25 19:49:51,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:49:52,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:49:52,077.077 INFO    ] No existing commands found in stream
[2026-10-25 19:49:57,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:49:57,092.092 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 19:50:01,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:50:01,594.594 INFO    ] Checking for system updates...
[2026-10-25 19:50:01,630.630 INFO    ] 200
[2026-10-25 19:50:01,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:01,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:01,687.687 INFO    ] No update needed
[2026-10-25 19:50:01,689.689 INFO    ] Checking for camera pi updates...
[2026-10-25 19:50:01,723.723 INFO    ] 200
[2026-10-25 19:50:01,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:01,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:50:01,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:01,815.815 INFO    ] No camera update needed
[2026-10-25 19:50:01,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:50:01,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:50:01,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:50:01,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:50:03,889.889 INFO    ] ================================================
[2026-10-25 19:50:03,904.904 INFO    ] Launching Daemon at Sun Oct 25 19:50:03 IST 2026
[2026-10-25 19:50:03,915.915 INFO    ] ================================================
[2026-10-25 19:50:04,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:50:04
[2026-10-25 19:50:05,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:50:05,395.395 INFO    ] Initializing speech engine...
[2026-10-25 19:50:05,418.418 INFO    ] 2026-10-25 19:50:05
[2026-10-25 19:50:05,676.676 INFO    ] 2026-10-25 19:50:05
[2026-10-25 19:50:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:50:05,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:50:05,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:50:06,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:50:06,156.156 INFO    ] time= 25/10/2026 19:50:06
[2026-10-25 19:50:06,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:50:06,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:50:06,303.303 INFO    ] No existing commands found in stream
[2026-10-25 19:50:11,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:50:11,318.318 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-25 19:50:17,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:50:17,561.561 INFO    ] Checking for system updates...
[2026-10-25 19:50:17,597.597 INFO    ] 200
[2026-10-25 19:50:17,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:17,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:50:17,657.657 INFO    ] No update needed
[2026-10-25 19:50:17,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 19:50:17,693.693 INFO    ] 200
[2026-10-25 19:50:17,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:17,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:50:17,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:50:17,790.790 INFO    ] No camera update needed
[2026-10-25 19:50:17,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:50:17,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:50:17,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:50:17,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:50:19,856.856 INFO    ] ================================================
[2026-10-25 19:50:19,871.871 INFO    ] Launching Daemon at Sun Oct 25 19:50:19 IST 2026
[2026-10-25 19:50:19,883.883 INFO    ] ================================================
[2026-10-25 19:50:20,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:50:20
[2026-10-25 19:50:21,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:50:21,322.322 INFO    ] Initializing speech engine...
[2026-10-25 19:50:21,331.331 INFO    ] 2026-10-25 19:50:21
[2026-10-25 19:50:21,576.576 INFO    ] 2026-10-25 19:50:21
[2026-10-25 19:50:21,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:50:21,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:50:21,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:50:21,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:50:21,942.942 INFO    ] time= 25/10/2026 19:50:21
[2026-10-25 19:50:21,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:50:21,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:50:22,107.107 INFO    ] No existing commands found in stream
[2026-10-25 19:50:27,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:50:27,135.135 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 19:50:30,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:50:30,170.170 INFO    ] Checking for system updates...
[2026-10-25 19:50:30,207.207 INFO    ] 200
[2026-10-25 19:50:30,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:30,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:30,268.268 INFO    ] No update needed
[2026-10-25 19:50:30,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 19:50:30,305.305 INFO    ] 200
[2026-10-25 19:50:30,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:30,351.351 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:50:30,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:30,401.401 INFO    ] No camera update needed
[2026-10-25 19:50:30,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:50:30,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:50:30,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:50:30,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:50:32,458.458 INFO    ] ================================================
[2026-10-25 19:50:32,475.475 INFO    ] Launching Daemon at Sun Oct 25 19:50:32 IST 2026
[2026-10-25 19:50:32,488.488 INFO    ] ================================================
[2026-10-25 19:50:33,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:50:33
[2026-10-25 19:50:33,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:50:34,036.036 INFO    ] Initializing speech engine...
[2026-10-25 19:50:34,043.043 INFO    ] 2026-10-25 19:50:34
[2026-10-25 19:50:34,303.303 INFO    ] 2026-10-25 19:50:34
[2026-10-25 19:50:34,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:50:34,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:50:34,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:50:34,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:50:34,768.768 INFO    ] time= 25/10/2026 19:50:34
[2026-10-25 19:50:34,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:50:34,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:50:34,911.911 INFO    ] No existing commands found in stream
[2026-10-25 19:50:39,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:50:39,926.926 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 19:50:42,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:50:42,734.734 INFO    ] Checking for system updates...
[2026-10-25 19:50:42,775.775 INFO    ] 200
[2026-10-25 19:50:42,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:42,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:42,833.833 INFO    ] No update needed
[2026-10-25 19:50:42,836.836 INFO    ] Checking for camera pi updates...
[2026-10-25 19:50:42,870.870 INFO    ] 200
[2026-10-25 19:50:42,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:42,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:50:42,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:42,980.980 INFO    ] No camera update needed
[2026-10-25 19:50:42,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:50:42,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:50:42,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:50:42,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:50:45,035.035 INFO    ] ================================================
[2026-10-25 19:50:45,051.051 INFO    ] Launching Daemon at Sun Oct 25 19:50:45 IST 2026
[2026-10-25 19:50:45,063.063 INFO    ] ================================================
[2026-10-25 19:50:45,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:50:45
[2026-10-25 19:50:46,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:50:46,489.489 INFO    ] Initializing speech engine...
[2026-10-25 19:50:46,503.503 INFO    ] 2026-10-25 19:50:46
[2026-10-25 19:50:46,768.768 INFO    ] 2026-10-25 19:50:46
[2026-10-25 19:50:46,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:50:48,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:50:48,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:50:48,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:50:48,818.818 INFO    ] time= 25/10/2026 19:50:48
[2026-10-25 19:50:48,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:50:48,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:50:48,906.906 INFO    ] No existing commands found in stream
[2026-10-25 19:50:53,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:50:53,924.924 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 19:50:55,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:50:55,398.398 INFO    ] Checking for system updates...
[2026-10-25 19:50:55,435.435 INFO    ] 200
[2026-10-25 19:50:55,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:55,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:55,494.494 INFO    ] No update needed
[2026-10-25 19:50:55,497.497 INFO    ] Checking for camera pi updates...
[2026-10-25 19:50:55,531.531 INFO    ] 200
[2026-10-25 19:50:55,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:50:55,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:50:55,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:50:55,630.630 INFO    ] No camera update needed
[2026-10-25 19:50:55,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:50:55,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:50:55,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:50:55,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:50:57,686.686 INFO    ] ================================================
[2026-10-25 19:50:57,702.702 INFO    ] Launching Daemon at Sun Oct 25 19:50:57 IST 2026
[2026-10-25 19:50:57,714.714 INFO    ] ================================================
[2026-10-25 19:50:58,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:50:58
[2026-10-25 19:50:58,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:50:59,111.111 INFO    ] Initializing speech engine...
[2026-10-25 19:50:59,123.123 INFO    ] 2026-10-25 19:50:59
[2026-10-25 19:50:59,390.390 INFO    ] 2026-10-25 19:50:59
[2026-10-25 19:50:59,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:50:59,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:50:59,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:50:59,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:50:59,880.880 INFO    ] time= 25/10/2026 19:50:59
[2026-10-25 19:50:59,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:50:59,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:00,018.018 INFO    ] No existing commands found in stream
[2026-10-25 19:51:05,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:51:05,032.032 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 19:51:08,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:51:08,664.664 INFO    ] Checking for system updates...
[2026-10-25 19:51:08,700.700 INFO    ] 200
[2026-10-25 19:51:08,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:08,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:51:08,759.759 INFO    ] No update needed
[2026-10-25 19:51:08,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 19:51:08,798.798 INFO    ] 200
[2026-10-25 19:51:08,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:08,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:51:08,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:51:08,893.893 INFO    ] No camera update needed
[2026-10-25 19:51:08,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:51:08,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:51:08,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:51:08,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:51:10,952.952 INFO    ] ================================================
[2026-10-25 19:51:10,967.967 INFO    ] Launching Daemon at Sun Oct 25 19:51:10 IST 2026
[2026-10-25 19:51:10,978.978 INFO    ] ================================================
[2026-10-25 19:51:11,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:51:11
[2026-10-25 19:51:12,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:51:12,545.545 INFO    ] Initializing speech engine...
[2026-10-25 19:51:12,566.566 INFO    ] 2026-10-25 19:51:12
[2026-10-25 19:51:12,826.826 INFO    ] 2026-10-25 19:51:12
[2026-10-25 19:51:12,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:51:13,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:51:13,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:51:13,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:51:13,305.305 INFO    ] time= 25/10/2026 19:51:13
[2026-10-25 19:51:13,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:51:13,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:13,458.458 INFO    ] No existing commands found in stream
[2026-10-25 19:51:18,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:51:18,474.474 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 19:51:19,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:51:19,991.991 INFO    ] Checking for system updates...
[2026-10-25 19:51:20,031.031 INFO    ] 200
[2026-10-25 19:51:20,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:20,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:20,113.113 INFO    ] No update needed
[2026-10-25 19:51:20,116.116 INFO    ] Checking for camera pi updates...
[2026-10-25 19:51:20,151.151 INFO    ] 200
[2026-10-25 19:51:20,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:20,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:51:20,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:20,255.255 INFO    ] No camera update needed
[2026-10-25 19:51:20,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:51:20,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:51:20,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:51:20,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:51:22,313.313 INFO    ] ================================================
[2026-10-25 19:51:22,328.328 INFO    ] Launching Daemon at Sun Oct 25 19:51:22 IST 2026
[2026-10-25 19:51:22,339.339 INFO    ] ================================================
[2026-10-25 19:51:22,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:51:22
[2026-10-25 19:51:23,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:51:23,761.761 INFO    ] Initializing speech engine...
[2026-10-25 19:51:23,765.765 INFO    ] 2026-10-25 19:51:23
[2026-10-25 19:51:24,025.025 INFO    ] 2026-10-25 19:51:24
[2026-10-25 19:51:24,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:51:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:51:24,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:51:24,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:51:24,515.515 INFO    ] time= 25/10/2026 19:51:24
[2026-10-25 19:51:24,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:51:24,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:24,693.693 INFO    ] No existing commands found in stream
[2026-10-25 19:51:29,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:51:29,718.718 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 19:51:30,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:51:30,256.256 INFO    ] Checking for system updates...
[2026-10-25 19:51:30,293.293 INFO    ] 200
[2026-10-25 19:51:30,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:30,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:30,352.352 INFO    ] No update needed
[2026-10-25 19:51:30,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 19:51:30,390.390 INFO    ] 200
[2026-10-25 19:51:30,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:30,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:51:30,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:30,495.495 INFO    ] No camera update needed
[2026-10-25 19:51:30,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:51:30,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:51:30,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:51:30,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:51:32,556.556 INFO    ] ================================================
[2026-10-25 19:51:32,572.572 INFO    ] Launching Daemon at Sun Oct 25 19:51:32 IST 2026
[2026-10-25 19:51:32,587.587 INFO    ] ================================================
[2026-10-25 19:51:33,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:51:33
[2026-10-25 19:51:33,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:51:34,014.014 INFO    ] Initializing speech engine...
[2026-10-25 19:51:34,029.029 INFO    ] 2026-10-25 19:51:34
[2026-10-25 19:51:34,306.306 INFO    ] 2026-10-25 19:51:34
[2026-10-25 19:51:34,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:51:34,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:51:34,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:51:34,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:51:34,670.670 INFO    ] time= 25/10/2026 19:51:34
[2026-10-25 19:51:34,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:51:34,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:34,782.782 INFO    ] No existing commands found in stream
[2026-10-25 19:51:39,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:51:39,797.797 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 19:51:40,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:51:40,281.281 INFO    ] Checking for system updates...
[2026-10-25 19:51:40,321.321 INFO    ] 200
[2026-10-25 19:51:40,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:40,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:40,378.378 INFO    ] No update needed
[2026-10-25 19:51:40,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 19:51:40,415.415 INFO    ] 200
[2026-10-25 19:51:40,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:40,463.463 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:51:40,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:40,527.527 INFO    ] No camera update needed
[2026-10-25 19:51:40,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:51:40,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:51:40,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:51:40,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:51:42,582.582 INFO    ] ================================================
[2026-10-25 19:51:42,597.597 INFO    ] Launching Daemon at Sun Oct 25 19:51:42 IST 2026
[2026-10-25 19:51:42,608.608 INFO    ] ================================================
[2026-10-25 19:51:43,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:51:43
[2026-10-25 19:51:43,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:51:44,028.028 INFO    ] Initializing speech engine...
[2026-10-25 19:51:44,037.037 INFO    ] 2026-10-25 19:51:44
[2026-10-25 19:51:44,294.294 INFO    ] 2026-10-25 19:51:44
[2026-10-25 19:51:44,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:51:44,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:51:44,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:51:44,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:51:44,755.755 INFO    ] time= 25/10/2026 19:51:44
[2026-10-25 19:51:44,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:51:44,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:44,894.894 INFO    ] No existing commands found in stream
[2026-10-25 19:51:49,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:51:49,908.908 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 19:51:51,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:51:51,746.746 INFO    ] Checking for system updates...
[2026-10-25 19:51:51,782.782 INFO    ] 200
[2026-10-25 19:51:51,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:51,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:51,843.843 INFO    ] No update needed
[2026-10-25 19:51:51,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 19:51:51,879.879 INFO    ] 200
[2026-10-25 19:51:51,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:51:51,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:51:51,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:51:51,978.978 INFO    ] No camera update needed
[2026-10-25 19:51:51,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:51:51,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:51:51,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:51:51,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:51:54,034.034 INFO    ] ================================================
[2026-10-25 19:51:54,049.049 INFO    ] Launching Daemon at Sun Oct 25 19:51:54 IST 2026
[2026-10-25 19:51:54,060.060 INFO    ] ================================================
[2026-10-25 19:51:54,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:51:54
[2026-10-25 19:51:55,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:51:55,455.455 INFO    ] Initializing speech engine...
[2026-10-25 19:51:55,474.474 INFO    ] 2026-10-25 19:51:55
[2026-10-25 19:51:55,734.734 INFO    ] 2026-10-25 19:51:55
[2026-10-25 19:51:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:51:55,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:51:55,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:51:56,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:51:56,207.207 INFO    ] time= 25/10/2026 19:51:56
[2026-10-25 19:51:56,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:51:56,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:51:56,362.362 INFO    ] No existing commands found in stream
[2026-10-25 19:52:01,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:52:01,383.383 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 19:52:04,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:52:04,838.838 INFO    ] Checking for system updates...
[2026-10-25 19:52:04,873.873 INFO    ] 200
[2026-10-25 19:52:04,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:04,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:04,933.933 INFO    ] No update needed
[2026-10-25 19:52:04,935.935 INFO    ] Checking for camera pi updates...
[2026-10-25 19:52:04,972.972 INFO    ] 200
[2026-10-25 19:52:04,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:05,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:52:05,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:05,074.074 INFO    ] No camera update needed
[2026-10-25 19:52:05,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:52:05,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:52:05,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:52:05,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:52:07,131.131 INFO    ] ================================================
[2026-10-25 19:52:07,147.147 INFO    ] Launching Daemon at Sun Oct 25 19:52:07 IST 2026
[2026-10-25 19:52:07,158.158 INFO    ] ================================================
[2026-10-25 19:52:07,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:52:07
[2026-10-25 19:52:08,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:52:08,751.751 INFO    ] Initializing speech engine...
[2026-10-25 19:52:08,756.756 INFO    ] 2026-10-25 19:52:08
[2026-10-25 19:52:09,031.031 INFO    ] 2026-10-25 19:52:09
[2026-10-25 19:52:09,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:52:09,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:52:09,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:52:09,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:52:09,529.529 INFO    ] time= 25/10/2026 19:52:09
[2026-10-25 19:52:09,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:52:09,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:52:09,718.718 INFO    ] No existing commands found in stream
[2026-10-25 19:52:14,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:52:14,749.749 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-25 19:52:21,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:52:21,275.275 INFO    ] Checking for system updates...
[2026-10-25 19:52:21,316.316 INFO    ] 200
[2026-10-25 19:52:21,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:21,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:21,376.376 INFO    ] No update needed
[2026-10-25 19:52:21,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 19:52:21,417.417 INFO    ] 200
[2026-10-25 19:52:21,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:21,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:52:21,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:21,616.616 INFO    ] No camera update needed
[2026-10-25 19:52:21,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:52:21,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:52:21,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:52:21,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:52:23,677.677 INFO    ] ================================================
[2026-10-25 19:52:23,693.693 INFO    ] Launching Daemon at Sun Oct 25 19:52:23 IST 2026
[2026-10-25 19:52:23,705.705 INFO    ] ================================================
[2026-10-25 19:52:24,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:52:24
[2026-10-25 19:52:24,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:52:25,119.119 INFO    ] Initializing speech engine...
[2026-10-25 19:52:25,132.132 INFO    ] 2026-10-25 19:52:25
[2026-10-25 19:52:25,426.426 INFO    ] 2026-10-25 19:52:25
[2026-10-25 19:52:25,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:52:25,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:52:25,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:52:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:52:25,835.835 INFO    ] time= 25/10/2026 19:52:25
[2026-10-25 19:52:25,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:52:25,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:52:25,918.918 INFO    ] No existing commands found in stream
[2026-10-25 19:52:30,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:52:30,934.934 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 19:52:33,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:52:33,942.942 INFO    ] Checking for system updates...
[2026-10-25 19:52:33,979.979 INFO    ] 200
[2026-10-25 19:52:33,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:34,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:52:34,038.038 INFO    ] No update needed
[2026-10-25 19:52:34,040.040 INFO    ] Checking for camera pi updates...
[2026-10-25 19:52:34,075.075 INFO    ] 200
[2026-10-25 19:52:34,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:34,118.118 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:52:34,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:52:34,167.167 INFO    ] No camera update needed
[2026-10-25 19:52:34,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:52:34,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:52:34,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:52:34,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:52:36,223.223 INFO    ] ================================================
[2026-10-25 19:52:36,239.239 INFO    ] Launching Daemon at Sun Oct 25 19:52:36 IST 2026
[2026-10-25 19:52:36,250.250 INFO    ] ================================================
[2026-10-25 19:52:36,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:52:36
[2026-10-25 19:52:37,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:52:37,676.676 INFO    ] Initializing speech engine...
[2026-10-25 19:52:37,697.697 INFO    ] 2026-10-25 19:52:37
[2026-10-25 19:52:37,961.961 INFO    ] 2026-10-25 19:52:37
[2026-10-25 19:52:37,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:52:38,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:52:38,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:52:38,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:52:38,333.333 INFO    ] time= 25/10/2026 19:52:38
[2026-10-25 19:52:38,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:52:38,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:52:38,456.456 INFO    ] No existing commands found in stream
[2026-10-25 19:52:43,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:52:43,471.471 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 19:52:44,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:52:44,817.817 INFO    ] Checking for system updates...
[2026-10-25 19:52:44,854.854 INFO    ] 200
[2026-10-25 19:52:44,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:44,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:52:44,917.917 INFO    ] No update needed
[2026-10-25 19:52:44,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 19:52:44,954.954 INFO    ] 200
[2026-10-25 19:52:44,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:45,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:52:45,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:52:45,053.053 INFO    ] No camera update needed
[2026-10-25 19:52:45,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:52:45,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:52:45,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:52:45,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:52:47,107.107 INFO    ] ================================================
[2026-10-25 19:52:47,123.123 INFO    ] Launching Daemon at Sun Oct 25 19:52:47 IST 2026
[2026-10-25 19:52:47,134.134 INFO    ] ================================================
[2026-10-25 19:52:47,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:52:47
[2026-10-25 19:52:48,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:52:48,553.553 INFO    ] Initializing speech engine...
[2026-10-25 19:52:48,562.562 INFO    ] 2026-10-25 19:52:48
[2026-10-25 19:52:48,808.808 INFO    ] 2026-10-25 19:52:48
[2026-10-25 19:52:48,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:52:52,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:52:52,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:52:53,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:52:53,177.177 INFO    ] time= 25/10/2026 19:52:53
[2026-10-25 19:52:53,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:52:53,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:52:53,230.230 INFO    ] No existing commands found in stream
[2026-10-25 19:52:58,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:52:58,242.242 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 19:52:59,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:52:59,143.143 INFO    ] Checking for system updates...
[2026-10-25 19:52:59,184.184 INFO    ] 200
[2026-10-25 19:52:59,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:59,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:59,250.250 INFO    ] No update needed
[2026-10-25 19:52:59,253.253 INFO    ] Checking for camera pi updates...
[2026-10-25 19:52:59,289.289 INFO    ] 200
[2026-10-25 19:52:59,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:52:59,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:52:59,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:52:59,388.388 INFO    ] No camera update needed
[2026-10-25 19:52:59,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:52:59,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:52:59,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:52:59,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:53:01,466.466 INFO    ] ================================================
[2026-10-25 19:53:01,496.496 INFO    ] Launching Daemon at Sun Oct 25 19:53:01 IST 2026
[2026-10-25 19:53:01,523.523 INFO    ] ================================================
[2026-10-25 19:53:02,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:53:02
[2026-10-25 19:53:02,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:53:03,262.262 INFO    ] Initializing speech engine...
[2026-10-25 19:53:03,269.269 INFO    ] 2026-10-25 19:53:03
[2026-10-25 19:53:03,551.551 INFO    ] 2026-10-25 19:53:03
[2026-10-25 19:53:03,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:53:03,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:53:03,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:53:03,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:53:04,049.049 INFO    ] time= 25/10/2026 19:53:03
[2026-10-25 19:53:04,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:53:04,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:53:04,253.253 INFO    ] No existing commands found in stream
[2026-10-25 19:53:09,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:53:09,283.283 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 19:53:12,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:53:12,890.890 INFO    ] Checking for system updates...
[2026-10-25 19:53:12,931.931 INFO    ] 200
[2026-10-25 19:53:12,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:12,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:53:12,991.991 INFO    ] No update needed
[2026-10-25 19:53:12,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 19:53:13,028.028 INFO    ] 200
[2026-10-25 19:53:13,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:13,076.076 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:53:13,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:53:13,132.132 INFO    ] No camera update needed
[2026-10-25 19:53:13,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:53:13,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:53:13,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:53:13,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:53:15,187.187 INFO    ] ================================================
[2026-10-25 19:53:15,203.203 INFO    ] Launching Daemon at Sun Oct 25 19:53:15 IST 2026
[2026-10-25 19:53:15,214.214 INFO    ] ================================================
[2026-10-25 19:53:15,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:53:15
[2026-10-25 19:53:16,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:53:16,685.685 INFO    ] Initializing speech engine...
[2026-10-25 19:53:16,708.708 INFO    ] 2026-10-25 19:53:16
[2026-10-25 19:53:16,994.994 INFO    ] 2026-10-25 19:53:16
[2026-10-25 19:53:17,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:53:17,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:53:17,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:53:17,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:53:17,414.414 INFO    ] time= 25/10/2026 19:53:17
[2026-10-25 19:53:17,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:53:17,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:53:17,497.497 INFO    ] No existing commands found in stream
[2026-10-25 19:53:22,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:53:22,513.513 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 19:53:24,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:53:24,105.105 INFO    ] Checking for system updates...
[2026-10-25 19:53:24,145.145 INFO    ] 200
[2026-10-25 19:53:24,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:24,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:53:24,209.209 INFO    ] No update needed
[2026-10-25 19:53:24,211.211 INFO    ] Checking for camera pi updates...
[2026-10-25 19:53:24,246.246 INFO    ] 200
[2026-10-25 19:53:24,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:24,292.292 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:53:24,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:53:24,348.348 INFO    ] No camera update needed
[2026-10-25 19:53:24,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:53:24,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:53:24,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:53:24,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:53:26,408.408 INFO    ] ================================================
[2026-10-25 19:53:26,426.426 INFO    ] Launching Daemon at Sun Oct 25 19:53:26 IST 2026
[2026-10-25 19:53:26,438.438 INFO    ] ================================================
[2026-10-25 19:53:27,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:53:27
[2026-10-25 19:53:27,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:53:28,093.093 INFO    ] Initializing speech engine...
[2026-10-25 19:53:28,101.101 INFO    ] 2026-10-25 19:53:28
[2026-10-25 19:53:28,369.369 INFO    ] 2026-10-25 19:53:28
[2026-10-25 19:53:28,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:53:28,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:53:28,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:53:28,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:53:28,751.751 INFO    ] time= 25/10/2026 19:53:28
[2026-10-25 19:53:28,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:53:28,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:53:28,875.875 INFO    ] No existing commands found in stream
[2026-10-25 19:53:33,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:53:33,888.888 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 19:53:37,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:53:37,026.026 INFO    ] Checking for system updates...
[2026-10-25 19:53:37,062.062 INFO    ] 200
[2026-10-25 19:53:37,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:37,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:53:37,121.121 INFO    ] No update needed
[2026-10-25 19:53:37,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 19:53:37,158.158 INFO    ] 200
[2026-10-25 19:53:37,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:37,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:53:37,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:53:37,267.267 INFO    ] No camera update needed
[2026-10-25 19:53:37,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:53:37,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:53:37,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:53:37,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:53:39,324.324 INFO    ] ================================================
[2026-10-25 19:53:39,339.339 INFO    ] Launching Daemon at Sun Oct 25 19:53:39 IST 2026
[2026-10-25 19:53:39,350.350 INFO    ] ================================================
[2026-10-25 19:53:39,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:53:39
[2026-10-25 19:53:40,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:53:40,814.814 INFO    ] Initializing speech engine...
[2026-10-25 19:53:40,819.819 INFO    ] 2026-10-25 19:53:40
[2026-10-25 19:53:41,097.097 INFO    ] 2026-10-25 19:53:41
[2026-10-25 19:53:41,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:53:41,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:53:41,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:53:41,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:53:41,521.521 INFO    ] time= 25/10/2026 19:53:41
[2026-10-25 19:53:41,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:53:41,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:53:41,690.690 INFO    ] No existing commands found in stream
[2026-10-25 19:53:46,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:53:46,704.704 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 19:53:47,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:53:47,285.285 INFO    ] Checking for system updates...
[2026-10-25 19:53:47,325.325 INFO    ] 200
[2026-10-25 19:53:47,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:47,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:53:47,389.389 INFO    ] No update needed
[2026-10-25 19:53:47,392.392 INFO    ] Checking for camera pi updates...
[2026-10-25 19:53:47,425.425 INFO    ] 200
[2026-10-25 19:53:47,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:53:47,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:53:47,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:53:47,527.527 INFO    ] No camera update needed
[2026-10-25 19:53:47,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:53:47,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:53:47,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:53:47,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:53:49,583.583 INFO    ] ================================================
[2026-10-25 19:53:49,598.598 INFO    ] Launching Daemon at Sun Oct 25 19:53:49 IST 2026
[2026-10-25 19:53:49,608.608 INFO    ] ================================================
[2026-10-25 19:53:50,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:53:50
[2026-10-25 19:53:50,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:53:51,010.010 INFO    ] Initializing speech engine...
[2026-10-25 19:53:51,019.019 INFO    ] 2026-10-25 19:53:51
[2026-10-25 19:53:51,310.310 INFO    ] 2026-10-25 19:53:51
[2026-10-25 19:53:51,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:53:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:53:54,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:53:55,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:53:55,506.506 INFO    ] time= 25/10/2026 19:53:55
[2026-10-25 19:53:55,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:53:55,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:53:55,557.557 INFO    ] No existing commands found in stream
[2026-10-25 19:54:00,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:54:00,569.569 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 19:54:03,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:54:03,998.998 INFO    ] Checking for system updates...
[2026-10-25 19:54:04,035.035 INFO    ] 200
[2026-10-25 19:54:04,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:04,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:04,103.103 INFO    ] No update needed
[2026-10-25 19:54:04,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 19:54:04,142.142 INFO    ] 200
[2026-10-25 19:54:04,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:04,190.190 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:54:04,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:04,241.241 INFO    ] No camera update needed
[2026-10-25 19:54:04,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:54:04,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:54:04,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:54:04,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:54:06,295.295 INFO    ] ================================================
[2026-10-25 19:54:06,310.310 INFO    ] Launching Daemon at Sun Oct 25 19:54:06 IST 2026
[2026-10-25 19:54:06,320.320 INFO    ] ================================================
[2026-10-25 19:54:06,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:54:06
[2026-10-25 19:54:07,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:54:07,897.897 INFO    ] Initializing speech engine...
[2026-10-25 19:54:07,910.910 INFO    ] 2026-10-25 19:54:07
[2026-10-25 19:54:08,197.197 INFO    ] 2026-10-25 19:54:08
[2026-10-25 19:54:08,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:54:08,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:54:08,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:54:08,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:54:08,773.773 INFO    ] time= 25/10/2026 19:54:08
[2026-10-25 19:54:08,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:54:08,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:54:08,953.953 INFO    ] No existing commands found in stream
[2026-10-25 19:54:13,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:54:13,987.987 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 19:54:17,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:54:17,635.635 INFO    ] Checking for system updates...
[2026-10-25 19:54:17,676.676 INFO    ] 200
[2026-10-25 19:54:17,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:17,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:17,741.741 INFO    ] No update needed
[2026-10-25 19:54:17,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 19:54:17,781.781 INFO    ] 200
[2026-10-25 19:54:17,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:17,836.836 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:54:17,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:17,886.886 INFO    ] No camera update needed
[2026-10-25 19:54:17,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:54:17,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:54:17,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:54:17,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:54:19,943.943 INFO    ] ================================================
[2026-10-25 19:54:19,958.958 INFO    ] Launching Daemon at Sun Oct 25 19:54:19 IST 2026
[2026-10-25 19:54:19,968.968 INFO    ] ================================================
[2026-10-25 19:54:20,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:54:20
[2026-10-25 19:54:21,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:54:21,397.397 INFO    ] Initializing speech engine...
[2026-10-25 19:54:21,404.404 INFO    ] 2026-10-25 19:54:21
[2026-10-25 19:54:21,719.719 INFO    ] 2026-10-25 19:54:21
[2026-10-25 19:54:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:54:25,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:54:25,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:54:25,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:54:25,841.841 INFO    ] time= 25/10/2026 19:54:25
[2026-10-25 19:54:25,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:54:25,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:54:25,892.892 INFO    ] No existing commands found in stream
[2026-10-25 19:54:30,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:54:30,904.904 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 19:54:32,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:54:32,094.094 INFO    ] Checking for system updates...
[2026-10-25 19:54:32,131.131 INFO    ] 200
[2026-10-25 19:54:32,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:32,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:54:32,193.193 INFO    ] No update needed
[2026-10-25 19:54:32,196.196 INFO    ] Checking for camera pi updates...
[2026-10-25 19:54:32,232.232 INFO    ] 200
[2026-10-25 19:54:32,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:32,288.288 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:54:32,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:54:32,434.434 INFO    ] No camera update needed
[2026-10-25 19:54:32,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:54:32,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:54:32,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:54:32,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:54:34,493.493 INFO    ] ================================================
[2026-10-25 19:54:34,508.508 INFO    ] Launching Daemon at Sun Oct 25 19:54:34 IST 2026
[2026-10-25 19:54:34,519.519 INFO    ] ================================================
[2026-10-25 19:54:35,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:54:35
[2026-10-25 19:54:35,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:54:35,929.929 INFO    ] Initializing speech engine...
[2026-10-25 19:54:35,937.937 INFO    ] 2026-10-25 19:54:35
[2026-10-25 19:54:36,227.227 INFO    ] 2026-10-25 19:54:36
[2026-10-25 19:54:36,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:54:36,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:54:36,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:54:36,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:54:36,597.597 INFO    ] time= 25/10/2026 19:54:36
[2026-10-25 19:54:36,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:54:36,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:54:36,718.718 INFO    ] No existing commands found in stream
[2026-10-25 19:54:41,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:54:41,733.733 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 19:54:45,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:54:45,450.450 INFO    ] Checking for system updates...
[2026-10-25 19:54:45,490.490 INFO    ] 200
[2026-10-25 19:54:45,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:45,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:45,553.553 INFO    ] No update needed
[2026-10-25 19:54:45,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 19:54:45,592.592 INFO    ] 200
[2026-10-25 19:54:45,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:45,635.635 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:54:45,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:45,688.688 INFO    ] No camera update needed
[2026-10-25 19:54:45,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:54:45,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:54:45,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:54:45,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:54:47,743.743 INFO    ] ================================================
[2026-10-25 19:54:47,759.759 INFO    ] Launching Daemon at Sun Oct 25 19:54:47 IST 2026
[2026-10-25 19:54:47,770.770 INFO    ] ================================================
[2026-10-25 19:54:48,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:54:48
[2026-10-25 19:54:48,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:54:49,170.170 INFO    ] Initializing speech engine...
[2026-10-25 19:54:49,185.185 INFO    ] 2026-10-25 19:54:49
[2026-10-25 19:54:49,445.445 INFO    ] 2026-10-25 19:54:49
[2026-10-25 19:54:49,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:54:49,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:54:49,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:54:50,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:54:50,599.599 INFO    ] time= 25/10/2026 19:54:50
[2026-10-25 19:54:50,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:54:50,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:54:50,667.667 INFO    ] No existing commands found in stream
[2026-10-25 19:54:55,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:54:55,681.681 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 19:54:59,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:54:59,025.025 INFO    ] Checking for system updates...
[2026-10-25 19:54:59,061.061 INFO    ] 200
[2026-10-25 19:54:59,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:59,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:59,127.127 INFO    ] No update needed
[2026-10-25 19:54:59,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 19:54:59,163.163 INFO    ] 200
[2026-10-25 19:54:59,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:54:59,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:54:59,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:54:59,274.274 INFO    ] No camera update needed
[2026-10-25 19:54:59,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:54:59,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:54:59,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:54:59,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:55:01,332.332 INFO    ] ================================================
[2026-10-25 19:55:01,348.348 INFO    ] Launching Daemon at Sun Oct 25 19:55:01 IST 2026
[2026-10-25 19:55:01,358.358 INFO    ] ================================================
[2026-10-25 19:55:02,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:55:02
[2026-10-25 19:55:02,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:55:03,108.108 INFO    ] Initializing speech engine...
[2026-10-25 19:55:03,119.119 INFO    ] 2026-10-25 19:55:03
[2026-10-25 19:55:03,418.418 INFO    ] 2026-10-25 19:55:03
[2026-10-25 19:55:03,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:55:03,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:55:03,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:55:03,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:55:03,874.874 INFO    ] time= 25/10/2026 19:55:03
[2026-10-25 19:55:03,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:55:03,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:55:04,050.050 INFO    ] No existing commands found in stream
[2026-10-25 19:55:09,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:55:09,072.072 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 19:55:13,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:55:13,420.420 INFO    ] Checking for system updates...
[2026-10-25 19:55:13,456.456 INFO    ] 200
[2026-10-25 19:55:13,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:13,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:13,514.514 INFO    ] No update needed
[2026-10-25 19:55:13,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 19:55:13,556.556 INFO    ] 200
[2026-10-25 19:55:13,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:13,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:55:13,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:13,668.668 INFO    ] No camera update needed
[2026-10-25 19:55:13,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:55:13,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:55:13,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:55:13,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:55:15,723.723 INFO    ] ================================================
[2026-10-25 19:55:15,738.738 INFO    ] Launching Daemon at Sun Oct 25 19:55:15 IST 2026
[2026-10-25 19:55:15,750.750 INFO    ] ================================================
[2026-10-25 19:55:16,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:55:16
[2026-10-25 19:55:17,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:55:17,313.313 INFO    ] Initializing speech engine...
[2026-10-25 19:55:17,319.319 INFO    ] 2026-10-25 19:55:17
[2026-10-25 19:55:17,589.589 INFO    ] 2026-10-25 19:55:17
[2026-10-25 19:55:17,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:55:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:55:17,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:55:18,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:55:18,061.061 INFO    ] time= 25/10/2026 19:55:18
[2026-10-25 19:55:18,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:55:18,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:55:18,232.232 INFO    ] No existing commands found in stream
[2026-10-25 19:55:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:55:23,266.266 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 19:55:27,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:55:27,567.567 INFO    ] Checking for system updates...
[2026-10-25 19:55:27,604.604 INFO    ] 200
[2026-10-25 19:55:27,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:27,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:27,664.664 INFO    ] No update needed
[2026-10-25 19:55:27,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 19:55:27,701.701 INFO    ] 200
[2026-10-25 19:55:27,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:27,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:55:27,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:27,801.801 INFO    ] No camera update needed
[2026-10-25 19:55:27,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:55:27,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:55:27,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:55:27,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:55:29,858.858 INFO    ] ================================================
[2026-10-25 19:55:29,874.874 INFO    ] Launching Daemon at Sun Oct 25 19:55:29 IST 2026
[2026-10-25 19:55:29,885.885 INFO    ] ================================================
[2026-10-25 19:55:30,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:55:30
[2026-10-25 19:55:31,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:55:31,287.287 INFO    ] Initializing speech engine...
[2026-10-25 19:55:31,294.294 INFO    ] 2026-10-25 19:55:31
[2026-10-25 19:55:31,583.583 INFO    ] 2026-10-25 19:55:31
[2026-10-25 19:55:31,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:55:31,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:55:31,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:55:32,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:55:32,017.017 INFO    ] time= 25/10/2026 19:55:32
[2026-10-25 19:55:32,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:55:32,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:55:32,170.170 INFO    ] No existing commands found in stream
[2026-10-25 19:55:37,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:55:37,197.197 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 19:55:39,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:55:39,774.774 INFO    ] Checking for system updates...
[2026-10-25 19:55:39,813.813 INFO    ] 200
[2026-10-25 19:55:39,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:39,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:39,870.870 INFO    ] No update needed
[2026-10-25 19:55:39,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 19:55:39,909.909 INFO    ] 200
[2026-10-25 19:55:39,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:39,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:55:40,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:55:40,005.005 INFO    ] No camera update needed
[2026-10-25 19:55:40,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:55:40,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:55:40,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:55:40,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:55:42,062.062 INFO    ] ================================================
[2026-10-25 19:55:42,078.078 INFO    ] Launching Daemon at Sun Oct 25 19:55:42 IST 2026
[2026-10-25 19:55:42,088.088 INFO    ] ================================================
[2026-10-25 19:55:42,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:55:42
[2026-10-25 19:55:43,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:55:43,500.500 INFO    ] Initializing speech engine...
[2026-10-25 19:55:43,517.517 INFO    ] 2026-10-25 19:55:43
[2026-10-25 19:55:43,784.784 INFO    ] 2026-10-25 19:55:43
[2026-10-25 19:55:43,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:55:44,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:55:44,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:55:44,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:55:44,152.152 INFO    ] time= 25/10/2026 19:55:44
[2026-10-25 19:55:44,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:55:44,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:55:44,274.274 INFO    ] No existing commands found in stream
[2026-10-25 19:55:49,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:55:49,288.288 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 19:55:52,678.678 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:55:52,681.681 INFO    ] Checking for system updates...
[2026-10-25 19:55:52,716.716 INFO    ] 200
[2026-10-25 19:55:52,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:52,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:55:52,774.774 INFO    ] No update needed
[2026-10-25 19:55:52,776.776 INFO    ] Checking for camera pi updates...
[2026-10-25 19:55:52,810.810 INFO    ] 200
[2026-10-25 19:55:52,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:55:52,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:55:52,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:55:52,906.906 INFO    ] No camera update needed
[2026-10-25 19:55:52,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:55:52,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:55:52,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:55:52,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:55:54,962.962 INFO    ] ================================================
[2026-10-25 19:55:54,977.977 INFO    ] Launching Daemon at Sun Oct 25 19:55:54 IST 2026
[2026-10-25 19:55:54,988.988 INFO    ] ================================================
[2026-10-25 19:55:55,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:55:55
[2026-10-25 19:55:56,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:55:56,410.410 INFO    ] Initializing speech engine...
[2026-10-25 19:55:56,425.425 INFO    ] 2026-10-25 19:55:56
[2026-10-25 19:55:56,693.693 INFO    ] 2026-10-25 19:55:56
[2026-10-25 19:55:56,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:55:58,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:55:58,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:55:58,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:55:58,655.655 INFO    ] time= 25/10/2026 19:55:58
[2026-10-25 19:55:58,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:55:58,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:55:58,780.780 INFO    ] No existing commands found in stream
[2026-10-25 19:56:03,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:56:03,808.808 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 19:56:06,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:56:06,094.094 INFO    ] Checking for system updates...
[2026-10-25 19:56:06,131.131 INFO    ] 200
[2026-10-25 19:56:06,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:06,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:06,188.188 INFO    ] No update needed
[2026-10-25 19:56:06,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 19:56:06,229.229 INFO    ] 200
[2026-10-25 19:56:06,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:06,273.273 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:56:06,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:06,328.328 INFO    ] No camera update needed
[2026-10-25 19:56:06,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:56:06,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:56:06,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:56:06,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:56:08,383.383 INFO    ] ================================================
[2026-10-25 19:56:08,399.399 INFO    ] Launching Daemon at Sun Oct 25 19:56:08 IST 2026
[2026-10-25 19:56:08,410.410 INFO    ] ================================================
[2026-10-25 19:56:08,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:56:08
[2026-10-25 19:56:09,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:56:09,846.846 INFO    ] Initializing speech engine...
[2026-10-25 19:56:09,868.868 INFO    ] 2026-10-25 19:56:09
[2026-10-25 19:56:10,123.123 INFO    ] 2026-10-25 19:56:10
[2026-10-25 19:56:10,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:56:10,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:56:10,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:56:10,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:56:10,604.604 INFO    ] time= 25/10/2026 19:56:10
[2026-10-25 19:56:10,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:56:10,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:56:10,740.740 INFO    ] No existing commands found in stream
[2026-10-25 19:56:15,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:56:15,755.755 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 19:56:17,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:56:17,621.621 INFO    ] Checking for system updates...
[2026-10-25 19:56:17,661.661 INFO    ] 200
[2026-10-25 19:56:17,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:17,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:17,719.719 INFO    ] No update needed
[2026-10-25 19:56:17,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 19:56:17,756.756 INFO    ] 200
[2026-10-25 19:56:17,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:17,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:56:17,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:17,853.853 INFO    ] No camera update needed
[2026-10-25 19:56:17,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:56:17,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:56:17,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:56:17,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:56:19,909.909 INFO    ] ================================================
[2026-10-25 19:56:19,925.925 INFO    ] Launching Daemon at Sun Oct 25 19:56:19 IST 2026
[2026-10-25 19:56:19,935.935 INFO    ] ================================================
[2026-10-25 19:56:20,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:56:20
[2026-10-25 19:56:21,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:56:21,346.346 INFO    ] Initializing speech engine...
[2026-10-25 19:56:21,361.361 INFO    ] 2026-10-25 19:56:21
[2026-10-25 19:56:21,617.617 INFO    ] 2026-10-25 19:56:21
[2026-10-25 19:56:21,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:56:21,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:56:21,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:56:21,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:56:21,991.991 INFO    ] time= 25/10/2026 19:56:21
[2026-10-25 19:56:21,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:56:22,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:56:22,150.150 INFO    ] No existing commands found in stream
[2026-10-25 19:56:27,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:56:27,183.183 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 19:56:29,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 19:56:29,078.078 INFO    ] Checking for system updates...
[2026-10-25 19:56:29,114.114 INFO    ] 200
[2026-10-25 19:56:29,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:29,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:56:29,178.178 INFO    ] No update needed
[2026-10-25 19:56:29,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 19:56:29,218.218 INFO    ] 200
[2026-10-25 19:56:29,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:29,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:56:29,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:56:29,324.324 INFO    ] No camera update needed
[2026-10-25 19:56:29,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:56:29,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:56:29,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:56:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:56:31,383.383 INFO    ] ================================================
[2026-10-25 19:56:31,401.401 INFO    ] Launching Daemon at Sun Oct 25 19:56:31 IST 2026
[2026-10-25 19:56:31,412.412 INFO    ] ================================================
[2026-10-25 19:56:32,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:56:32
[2026-10-25 19:56:32,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:56:32,926.926 INFO    ] Initializing speech engine...
[2026-10-25 19:56:32,935.935 INFO    ] 2026-10-25 19:56:32
[2026-10-25 19:56:33,195.195 INFO    ] 2026-10-25 19:56:33
[2026-10-25 19:56:33,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:56:33,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:56:33,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:56:33,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:56:33,627.627 INFO    ] time= 25/10/2026 19:56:33
[2026-10-25 19:56:33,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:56:33,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:56:33,801.801 INFO    ] No existing commands found in stream
[2026-10-25 19:56:38,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:56:38,816.816 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 19:56:41,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:56:41,821.821 INFO    ] Checking for system updates...
[2026-10-25 19:56:41,857.857 INFO    ] 200
[2026-10-25 19:56:41,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:41,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:56:41,916.916 INFO    ] No update needed
[2026-10-25 19:56:41,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 19:56:41,952.952 INFO    ] 200
[2026-10-25 19:56:41,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:41,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:56:42,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:56:42,166.166 INFO    ] No camera update needed
[2026-10-25 19:56:42,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:56:42,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:56:42,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:56:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:56:44,222.222 INFO    ] ================================================
[2026-10-25 19:56:44,237.237 INFO    ] Launching Daemon at Sun Oct 25 19:56:44 IST 2026
[2026-10-25 19:56:44,249.249 INFO    ] ================================================
[2026-10-25 19:56:44,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:56:44
[2026-10-25 19:56:45,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:56:45,681.681 INFO    ] Initializing speech engine...
[2026-10-25 19:56:45,689.689 INFO    ] 2026-10-25 19:56:45
[2026-10-25 19:56:45,969.969 INFO    ] 2026-10-25 19:56:45
[2026-10-25 19:56:46,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:56:46,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:56:46,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:56:46,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:56:46,442.442 INFO    ] time= 25/10/2026 19:56:46
[2026-10-25 19:56:46,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:56:46,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:56:46,594.594 INFO    ] No existing commands found in stream
[2026-10-25 19:56:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:56:51,608.608 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 19:56:54,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:56:54,411.411 INFO    ] Checking for system updates...
[2026-10-25 19:56:54,451.451 INFO    ] 200
[2026-10-25 19:56:54,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:54,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:54,515.515 INFO    ] No update needed
[2026-10-25 19:56:54,518.518 INFO    ] Checking for camera pi updates...
[2026-10-25 19:56:54,552.552 INFO    ] 200
[2026-10-25 19:56:54,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:56:54,594.594 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:56:54,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:56:54,646.646 INFO    ] No camera update needed
[2026-10-25 19:56:54,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:56:54,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:56:54,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:56:54,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:56:56,702.702 INFO    ] ================================================
[2026-10-25 19:56:56,717.717 INFO    ] Launching Daemon at Sun Oct 25 19:56:56 IST 2026
[2026-10-25 19:56:56,728.728 INFO    ] ================================================
[2026-10-25 19:56:57,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:56:57
[2026-10-25 19:56:57,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:56:58,181.181 INFO    ] Initializing speech engine...
[2026-10-25 19:56:58,189.189 INFO    ] 2026-10-25 19:56:58
[2026-10-25 19:56:58,440.440 INFO    ] 2026-10-25 19:56:58
[2026-10-25 19:56:58,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:56:59,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:56:59,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:56:59,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:56:59,844.844 INFO    ] time= 25/10/2026 19:56:59
[2026-10-25 19:56:59,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:56:59,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:56:59,902.902 INFO    ] No existing commands found in stream
[2026-10-25 19:57:04,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:57:04,915.915 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 19:57:08,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:57:08,311.311 INFO    ] Checking for system updates...
[2026-10-25 19:57:08,350.350 INFO    ] 200
[2026-10-25 19:57:08,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:08,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:08,413.413 INFO    ] No update needed
[2026-10-25 19:57:08,416.416 INFO    ] Checking for camera pi updates...
[2026-10-25 19:57:08,452.452 INFO    ] 200
[2026-10-25 19:57:08,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:08,499.499 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:57:08,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:08,564.564 INFO    ] No camera update needed
[2026-10-25 19:57:08,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:57:08,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:57:08,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:57:08,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:57:10,618.618 INFO    ] ================================================
[2026-10-25 19:57:10,634.634 INFO    ] Launching Daemon at Sun Oct 25 19:57:10 IST 2026
[2026-10-25 19:57:10,645.645 INFO    ] ================================================
[2026-10-25 19:57:11,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:57:11
[2026-10-25 19:57:11,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:57:12,054.054 INFO    ] Initializing speech engine...
[2026-10-25 19:57:12,063.063 INFO    ] 2026-10-25 19:57:12
[2026-10-25 19:57:12,352.352 INFO    ] 2026-10-25 19:57:12
[2026-10-25 19:57:12,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:57:12,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:57:12,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:57:12,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:57:12,724.724 INFO    ] time= 25/10/2026 19:57:12
[2026-10-25 19:57:12,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:57:12,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:57:12,850.850 INFO    ] No existing commands found in stream
[2026-10-25 19:57:17,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:57:17,865.865 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 19:57:18,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:57:18,841.841 INFO    ] Checking for system updates...
[2026-10-25 19:57:18,878.878 INFO    ] 200
[2026-10-25 19:57:18,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:18,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:18,935.935 INFO    ] No update needed
[2026-10-25 19:57:18,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 19:57:18,974.974 INFO    ] 200
[2026-10-25 19:57:18,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:19,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:57:19,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:19,066.066 INFO    ] No camera update needed
[2026-10-25 19:57:19,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:57:19,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:57:19,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:57:19,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:57:21,121.121 INFO    ] ================================================
[2026-10-25 19:57:21,137.137 INFO    ] Launching Daemon at Sun Oct 25 19:57:21 IST 2026
[2026-10-25 19:57:21,148.148 INFO    ] ================================================
[2026-10-25 19:57:21,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:57:21
[2026-10-25 19:57:22,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:57:22,577.577 INFO    ] Initializing speech engine...
[2026-10-25 19:57:22,586.586 INFO    ] 2026-10-25 19:57:22
[2026-10-25 19:57:22,830.830 INFO    ] 2026-10-25 19:57:22
[2026-10-25 19:57:22,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:57:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:57:23,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:57:23,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:57:23,199.199 INFO    ] time= 25/10/2026 19:57:23
[2026-10-25 19:57:23,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:57:23,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:57:23,372.372 INFO    ] No existing commands found in stream
[2026-10-25 19:57:28,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:57:28,400.400 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 19:57:30,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:57:30,991.991 INFO    ] Checking for system updates...
[2026-10-25 19:57:31,030.030 INFO    ] 200
[2026-10-25 19:57:31,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:31,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:31,088.088 INFO    ] No update needed
[2026-10-25 19:57:31,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 19:57:31,124.124 INFO    ] 200
[2026-10-25 19:57:31,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:31,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:57:31,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:57:31,223.223 INFO    ] No camera update needed
[2026-10-25 19:57:31,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:57:31,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:57:31,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:57:31,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:57:33,284.284 INFO    ] ================================================
[2026-10-25 19:57:33,300.300 INFO    ] Launching Daemon at Sun Oct 25 19:57:33 IST 2026
[2026-10-25 19:57:33,312.312 INFO    ] ================================================
[2026-10-25 19:57:33,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:57:33
[2026-10-25 19:57:34,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:57:34,718.718 INFO    ] Initializing speech engine...
[2026-10-25 19:57:34,723.723 INFO    ] 2026-10-25 19:57:34
[2026-10-25 19:57:35,013.013 INFO    ] 2026-10-25 19:57:34
[2026-10-25 19:57:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:57:35,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:57:35,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:57:35,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:57:35,501.501 INFO    ] time= 25/10/2026 19:57:35
[2026-10-25 19:57:35,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:57:35,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:57:35,652.652 INFO    ] No existing commands found in stream
[2026-10-25 19:57:40,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:57:40,667.667 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 19:57:44,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 19:57:44,651.651 INFO    ] Checking for system updates...
[2026-10-25 19:57:44,687.687 INFO    ] 200
[2026-10-25 19:57:44,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:44,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:57:44,752.752 INFO    ] No update needed
[2026-10-25 19:57:44,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 19:57:44,792.792 INFO    ] 200
[2026-10-25 19:57:44,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:44,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:57:44,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:57:44,888.888 INFO    ] No camera update needed
[2026-10-25 19:57:44,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:57:44,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:57:44,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:57:44,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:57:46,942.942 INFO    ] ================================================
[2026-10-25 19:57:46,958.958 INFO    ] Launching Daemon at Sun Oct 25 19:57:46 IST 2026
[2026-10-25 19:57:46,969.969 INFO    ] ================================================
[2026-10-25 19:57:47,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:57:47
[2026-10-25 19:57:48,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:57:48,552.552 INFO    ] Initializing speech engine...
[2026-10-25 19:57:48,560.560 INFO    ] 2026-10-25 19:57:48
[2026-10-25 19:57:48,839.839 INFO    ] 2026-10-25 19:57:48
[2026-10-25 19:57:48,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:57:49,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:57:49,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:57:49,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:57:49,307.307 INFO    ] time= 25/10/2026 19:57:49
[2026-10-25 19:57:49,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:57:49,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:57:49,469.469 INFO    ] No existing commands found in stream
[2026-10-25 19:57:54,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:57:54,484.484 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 19:57:57,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:57:57,746.746 INFO    ] Checking for system updates...
[2026-10-25 19:57:57,784.784 INFO    ] 200
[2026-10-25 19:57:57,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:57,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:57:57,845.845 INFO    ] No update needed
[2026-10-25 19:57:57,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 19:57:57,883.883 INFO    ] 200
[2026-10-25 19:57:57,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:57:57,927.927 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:57:57,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:57:57,999.999 INFO    ] No camera update needed
[2026-10-25 19:57:58,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:57:58,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:57:58,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:57:58,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:58:00,055.055 INFO    ] ================================================
[2026-10-25 19:58:00,070.070 INFO    ] Launching Daemon at Sun Oct 25 19:58:00 IST 2026
[2026-10-25 19:58:00,081.081 INFO    ] ================================================
[2026-10-25 19:58:00,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:58:00
[2026-10-25 19:58:01,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:58:01,780.780 INFO    ] Initializing speech engine...
[2026-10-25 19:58:01,792.792 INFO    ] 2026-10-25 19:58:01
[2026-10-25 19:58:02,107.107 INFO    ] 2026-10-25 19:58:02
[2026-10-25 19:58:02,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:58:02,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:58:02,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:58:02,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:58:02,624.624 INFO    ] time= 25/10/2026 19:58:02
[2026-10-25 19:58:02,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:58:02,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:58:02,804.804 INFO    ] No existing commands found in stream
[2026-10-25 19:58:07,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:58:07,826.826 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 19:58:08,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:58:08,847.847 INFO    ] Checking for system updates...
[2026-10-25 19:58:08,884.884 INFO    ] 200
[2026-10-25 19:58:08,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:08,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:08,945.945 INFO    ] No update needed
[2026-10-25 19:58:08,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 19:58:08,982.982 INFO    ] 200
[2026-10-25 19:58:08,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:09,026.026 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:58:09,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:09,078.078 INFO    ] No camera update needed
[2026-10-25 19:58:09,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:58:09,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:58:09,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:58:09,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:58:11,137.137 INFO    ] ================================================
[2026-10-25 19:58:11,152.152 INFO    ] Launching Daemon at Sun Oct 25 19:58:11 IST 2026
[2026-10-25 19:58:11,163.163 INFO    ] ================================================
[2026-10-25 19:58:11,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:58:11
[2026-10-25 19:58:12,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:58:12,650.650 INFO    ] Initializing speech engine...
[2026-10-25 19:58:12,660.660 INFO    ] 2026-10-25 19:58:12
[2026-10-25 19:58:12,935.935 INFO    ] 2026-10-25 19:58:12
[2026-10-25 19:58:12,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:58:13,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:58:13,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:58:13,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:58:13,485.485 INFO    ] time= 25/10/2026 19:58:13
[2026-10-25 19:58:13,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:58:13,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:58:13,619.619 INFO    ] No existing commands found in stream
[2026-10-25 19:58:18,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:58:18,648.648 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 19:58:21,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:58:21,477.477 INFO    ] Checking for system updates...
[2026-10-25 19:58:21,518.518 INFO    ] 200
[2026-10-25 19:58:21,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:21,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:21,589.589 INFO    ] No update needed
[2026-10-25 19:58:21,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 19:58:21,630.630 INFO    ] 200
[2026-10-25 19:58:21,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:21,683.683 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:58:21,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:21,737.737 INFO    ] No camera update needed
[2026-10-25 19:58:21,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:58:21,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:58:21,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:58:21,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:58:23,792.792 INFO    ] ================================================
[2026-10-25 19:58:23,807.807 INFO    ] Launching Daemon at Sun Oct 25 19:58:23 IST 2026
[2026-10-25 19:58:23,818.818 INFO    ] ================================================
[2026-10-25 19:58:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:58:24
[2026-10-25 19:58:24,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:58:25,219.219 INFO    ] Initializing speech engine...
[2026-10-25 19:58:25,228.228 INFO    ] 2026-10-25 19:58:25
[2026-10-25 19:58:25,521.521 INFO    ] 2026-10-25 19:58:25
[2026-10-25 19:58:25,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:58:25,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:58:25,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:58:26,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:58:26,014.014 INFO    ] time= 25/10/2026 19:58:26
[2026-10-25 19:58:26,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:58:26,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:58:26,186.186 INFO    ] No existing commands found in stream
[2026-10-25 19:58:31,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:58:31,199.199 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-25 19:58:34,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:58:34,358.358 INFO    ] Checking for system updates...
[2026-10-25 19:58:34,395.395 INFO    ] 200
[2026-10-25 19:58:34,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:34,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:58:34,454.454 INFO    ] No update needed
[2026-10-25 19:58:34,457.457 INFO    ] Checking for camera pi updates...
[2026-10-25 19:58:34,490.490 INFO    ] 200
[2026-10-25 19:58:34,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:34,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:58:34,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:58:34,599.599 INFO    ] No camera update needed
[2026-10-25 19:58:34,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:58:34,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:58:34,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:58:34,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:58:36,654.654 INFO    ] ================================================
[2026-10-25 19:58:36,669.669 INFO    ] Launching Daemon at Sun Oct 25 19:58:36 IST 2026
[2026-10-25 19:58:36,680.680 INFO    ] ================================================
[2026-10-25 19:58:37,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:58:37
[2026-10-25 19:58:37,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:58:38,191.191 INFO    ] Initializing speech engine...
[2026-10-25 19:58:38,215.215 INFO    ] 2026-10-25 19:58:38
[2026-10-25 19:58:38,465.465 INFO    ] 2026-10-25 19:58:38
[2026-10-25 19:58:38,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:58:38,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:58:38,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:58:38,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:58:38,933.933 INFO    ] time= 25/10/2026 19:58:38
[2026-10-25 19:58:38,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:58:39,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:58:39,080.080 INFO    ] No existing commands found in stream
[2026-10-25 19:58:44,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:58:44,095.095 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 19:58:44,573.573 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 19:58:44,576.576 INFO    ] Checking for system updates...
[2026-10-25 19:58:44,616.616 INFO    ] 200
[2026-10-25 19:58:44,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:44,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:44,674.674 INFO    ] No update needed
[2026-10-25 19:58:44,676.676 INFO    ] Checking for camera pi updates...
[2026-10-25 19:58:44,711.711 INFO    ] 200
[2026-10-25 19:58:44,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:44,754.754 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:58:44,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:44,915.915 INFO    ] No camera update needed
[2026-10-25 19:58:44,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:58:44,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:58:44,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:58:44,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:58:46,971.971 INFO    ] ================================================
[2026-10-25 19:58:46,986.986 INFO    ] Launching Daemon at Sun Oct 25 19:58:46 IST 2026
[2026-10-25 19:58:47,996.996 INFO    ] ================================================
[2026-10-25 19:58:47,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:58:47
[2026-10-25 19:58:48,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:58:48,447.447 INFO    ] Initializing speech engine...
[2026-10-25 19:58:48,457.457 INFO    ] 2026-10-25 19:58:48
[2026-10-25 19:58:48,718.718 INFO    ] 2026-10-25 19:58:48
[2026-10-25 19:58:48,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:58:48,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:58:49,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:58:49,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:58:49,201.201 INFO    ] time= 25/10/2026 19:58:49
[2026-10-25 19:58:49,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:58:49,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:58:49,383.383 INFO    ] No existing commands found in stream
[2026-10-25 19:58:54,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:58:54,413.413 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 19:58:58,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:58:58,762.762 INFO    ] Checking for system updates...
[2026-10-25 19:58:58,799.799 INFO    ] 200
[2026-10-25 19:58:58,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:58,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:58,865.865 INFO    ] No update needed
[2026-10-25 19:58:58,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 19:58:58,901.901 INFO    ] 200
[2026-10-25 19:58:58,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:58:58,950.950 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:58:59,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:58:59,011.011 INFO    ] No camera update needed
[2026-10-25 19:58:59,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:58:59,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:58:59,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:58:59,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:59:01,065.065 INFO    ] ================================================
[2026-10-25 19:59:01,081.081 INFO    ] Launching Daemon at Sun Oct 25 19:59:01 IST 2026
[2026-10-25 19:59:01,092.092 INFO    ] ================================================
[2026-10-25 19:59:01,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:59:01
[2026-10-25 19:59:02,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:59:02,938.938 INFO    ] Initializing speech engine...
[2026-10-25 19:59:02,946.946 INFO    ] 2026-10-25 19:59:02
[2026-10-25 19:59:03,244.244 INFO    ] 2026-10-25 19:59:03
[2026-10-25 19:59:03,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:59:05,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:59:05,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:59:05,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:59:05,402.402 INFO    ] time= 25/10/2026 19:59:05
[2026-10-25 19:59:05,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:59:05,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:59:05,503.503 INFO    ] No existing commands found in stream
[2026-10-25 19:59:10,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:59:10,521.521 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 19:59:11,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:59:11,784.784 INFO    ] Checking for system updates...
[2026-10-25 19:59:11,822.822 INFO    ] 200
[2026-10-25 19:59:11,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:11,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:59:11,887.887 INFO    ] No update needed
[2026-10-25 19:59:11,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 19:59:11,924.924 INFO    ] 200
[2026-10-25 19:59:11,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:11,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:59:12,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:59:12,024.024 INFO    ] No camera update needed
[2026-10-25 19:59:12,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:59:12,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:59:12,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:59:12,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:59:14,079.079 INFO    ] ================================================
[2026-10-25 19:59:14,094.094 INFO    ] Launching Daemon at Sun Oct 25 19:59:14 IST 2026
[2026-10-25 19:59:14,104.104 INFO    ] ================================================
[2026-10-25 19:59:14,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:59:14
[2026-10-25 19:59:15,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:59:15,558.558 INFO    ] Initializing speech engine...
[2026-10-25 19:59:15,567.567 INFO    ] 2026-10-25 19:59:15
[2026-10-25 19:59:15,824.824 INFO    ] 2026-10-25 19:59:15
[2026-10-25 19:59:15,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:59:16,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:59:16,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:59:16,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:59:16,287.287 INFO    ] time= 25/10/2026 19:59:16
[2026-10-25 19:59:16,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:59:16,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:59:16,429.429 INFO    ] No existing commands found in stream
[2026-10-25 19:59:21,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:59:21,444.444 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 19:59:24,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 19:59:24,010.010 INFO    ] Checking for system updates...
[2026-10-25 19:59:24,047.047 INFO    ] 200
[2026-10-25 19:59:24,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:24,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:59:24,106.106 INFO    ] No update needed
[2026-10-25 19:59:24,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 19:59:24,143.143 INFO    ] 200
[2026-10-25 19:59:24,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:24,186.186 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:59:24,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:59:24,245.245 INFO    ] No camera update needed
[2026-10-25 19:59:24,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:59:24,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:59:24,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:59:24,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:59:26,299.299 INFO    ] ================================================
[2026-10-25 19:59:26,314.314 INFO    ] Launching Daemon at Sun Oct 25 19:59:26 IST 2026
[2026-10-25 19:59:26,325.325 INFO    ] ================================================
[2026-10-25 19:59:26,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:59:26
[2026-10-25 19:59:27,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:59:27,891.891 INFO    ] Initializing speech engine...
[2026-10-25 19:59:27,900.900 INFO    ] 2026-10-25 19:59:27
[2026-10-25 19:59:28,144.144 INFO    ] 2026-10-25 19:59:28
[2026-10-25 19:59:28,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:59:28,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:59:28,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:59:28,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:59:28,512.512 INFO    ] time= 25/10/2026 19:59:28
[2026-10-25 19:59:28,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:59:28,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:59:28,693.693 INFO    ] No existing commands found in stream
[2026-10-25 19:59:33,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:59:33,720.720 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 19:59:35,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 19:59:35,641.641 INFO    ] Checking for system updates...
[2026-10-25 19:59:35,681.681 INFO    ] 200
[2026-10-25 19:59:35,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:35,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:59:35,746.746 INFO    ] No update needed
[2026-10-25 19:59:35,748.748 INFO    ] Checking for camera pi updates...
[2026-10-25 19:59:35,786.786 INFO    ] 200
[2026-10-25 19:59:35,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:35,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:59:35,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 19:59:35,887.887 INFO    ] No camera update needed
[2026-10-25 19:59:35,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:59:35,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:59:35,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:59:35,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:59:37,942.942 INFO    ] ================================================
[2026-10-25 19:59:37,957.957 INFO    ] Launching Daemon at Sun Oct 25 19:59:37 IST 2026
[2026-10-25 19:59:37,967.967 INFO    ] ================================================
[2026-10-25 19:59:38,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:59:38
[2026-10-25 19:59:39,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:59:39,355.355 INFO    ] Initializing speech engine...
[2026-10-25 19:59:39,370.370 INFO    ] 2026-10-25 19:59:39
[2026-10-25 19:59:39,635.635 INFO    ] 2026-10-25 19:59:39
[2026-10-25 19:59:39,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:59:39,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:59:39,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:59:39,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:59:40,007.007 INFO    ] time= 25/10/2026 19:59:40
[2026-10-25 19:59:40,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:59:40,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:59:40,177.177 INFO    ] No existing commands found in stream
[2026-10-25 19:59:45,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:59:45,205.205 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 19:59:46,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 19:59:46,409.409 INFO    ] Checking for system updates...
[2026-10-25 19:59:46,446.446 INFO    ] 200
[2026-10-25 19:59:46,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:46,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:59:46,513.513 INFO    ] No update needed
[2026-10-25 19:59:46,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 19:59:46,555.555 INFO    ] 200
[2026-10-25 19:59:46,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 19:59:46,606.606 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 19:59:46,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 19:59:46,675.675 INFO    ] No camera update needed
[2026-10-25 19:59:46,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 19:59:46,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 19:59:46,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 19:59:46,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 19:59:48,729.729 INFO    ] ================================================
[2026-10-25 19:59:48,744.744 INFO    ] Launching Daemon at Sun Oct 25 19:59:48 IST 2026
[2026-10-25 19:59:48,755.755 INFO    ] ================================================
[2026-10-25 19:59:49,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 19:59:49
[2026-10-25 19:59:49,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 19:59:50,175.175 INFO    ] Initializing speech engine...
[2026-10-25 19:59:50,182.182 INFO    ] 2026-10-25 19:59:50
[2026-10-25 19:59:50,428.428 INFO    ] 2026-10-25 19:59:50
[2026-10-25 19:59:50,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 19:59:50,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 19:59:50,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 19:59:50,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 19:59:50,802.802 INFO    ] time= 25/10/2026 19:59:50
[2026-10-25 19:59:50,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 19:59:50,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 19:59:50,967.967 INFO    ] No existing commands found in stream
[2026-10-25 19:59:55,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 19:59:56,000.000 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 20:00:00,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:00:00,335.335 INFO    ] Checking for system updates...
[2026-10-25 20:00:00,376.376 INFO    ] 200
[2026-10-25 20:00:00,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:00,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:00,438.438 INFO    ] No update needed
[2026-10-25 20:00:00,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 20:00:00,476.476 INFO    ] 200
[2026-10-25 20:00:00,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:00,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:00:00,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:00,583.583 INFO    ] No camera update needed
[2026-10-25 20:00:00,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:00:00,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:00:00,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:00:00,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:00:02,749.749 INFO    ] ================================================
[2026-10-25 20:00:02,893.893 INFO    ] Launching Daemon at Sun Oct 25 20:00:02 IST 2026
[2026-10-25 20:00:03,100.100 INFO    ] ================================================
[2026-10-25 20:00:04,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:00:04
[2026-10-25 20:00:06,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:00:06,913.913 INFO    ] Initializing speech engine...
[2026-10-25 20:00:06,916.916 INFO    ] 2026-10-25 20:00:06
[2026-10-25 20:00:07,280.280 INFO    ] 2026-10-25 20:00:07
[2026-10-25 20:00:07,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:00:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:00:07,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:00:07,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:00:07,677.677 INFO    ] time= 25/10/2026 20:00:07
[2026-10-25 20:00:07,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:00:07,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:00:07,840.840 INFO    ] No existing commands found in stream
[2026-10-25 20:00:12,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:00:12,856.856 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 20:00:15,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:00:15,748.748 INFO    ] Checking for system updates...
[2026-10-25 20:00:15,784.784 INFO    ] 200
[2026-10-25 20:00:15,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:15,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:15,842.842 INFO    ] No update needed
[2026-10-25 20:00:15,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 20:00:15,878.878 INFO    ] 200
[2026-10-25 20:00:15,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:15,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:00:15,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:15,971.971 INFO    ] No camera update needed
[2026-10-25 20:00:15,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:00:15,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:00:15,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:00:15,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:00:18,027.027 INFO    ] ================================================
[2026-10-25 20:00:18,043.043 INFO    ] Launching Daemon at Sun Oct 25 20:00:18 IST 2026
[2026-10-25 20:00:18,054.054 INFO    ] ================================================
[2026-10-25 20:00:18,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:00:18
[2026-10-25 20:00:19,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:00:19,662.662 INFO    ] Initializing speech engine...
[2026-10-25 20:00:19,668.668 INFO    ] 2026-10-25 20:00:19
[2026-10-25 20:00:19,963.963 INFO    ] 2026-10-25 20:00:19
[2026-10-25 20:00:20,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:00:20,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:00:20,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:00:20,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:00:20,345.345 INFO    ] time= 25/10/2026 20:00:20
[2026-10-25 20:00:20,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:00:20,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:00:20,545.545 INFO    ] No existing commands found in stream
[2026-10-25 20:00:25,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:00:25,559.559 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 20:00:27,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:00:27,579.579 INFO    ] Checking for system updates...
[2026-10-25 20:00:27,615.615 INFO    ] 200
[2026-10-25 20:00:27,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:27,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:00:27,673.673 INFO    ] No update needed
[2026-10-25 20:00:27,678.678 INFO    ] Checking for camera pi updates...
[2026-10-25 20:00:27,720.720 INFO    ] 200
[2026-10-25 20:00:27,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:27,768.768 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:00:27,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:00:27,835.835 INFO    ] No camera update needed
[2026-10-25 20:00:27,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:00:27,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:00:27,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:00:27,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:00:29,891.891 INFO    ] ================================================
[2026-10-25 20:00:29,906.906 INFO    ] Launching Daemon at Sun Oct 25 20:00:29 IST 2026
[2026-10-25 20:00:29,917.917 INFO    ] ================================================
[2026-10-25 20:00:30,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:00:30
[2026-10-25 20:00:31,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:00:31,403.403 INFO    ] Initializing speech engine...
[2026-10-25 20:00:31,412.412 INFO    ] 2026-10-25 20:00:31
[2026-10-25 20:00:31,699.699 INFO    ] 2026-10-25 20:00:31
[2026-10-25 20:00:31,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:00:31,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:00:31,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:00:32,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:00:32,163.163 INFO    ] time= 25/10/2026 20:00:32
[2026-10-25 20:00:32,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:00:32,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:00:32,338.338 INFO    ] No existing commands found in stream
[2026-10-25 20:00:37,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:00:37,347.347 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 20:00:40,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:00:40,561.561 INFO    ] Checking for system updates...
[2026-10-25 20:00:40,597.597 INFO    ] 200
[2026-10-25 20:00:40,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:40,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:00:40,662.662 INFO    ] No update needed
[2026-10-25 20:00:40,664.664 INFO    ] Checking for camera pi updates...
[2026-10-25 20:00:40,698.698 INFO    ] 200
[2026-10-25 20:00:40,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:40,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:00:40,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:00:40,801.801 INFO    ] No camera update needed
[2026-10-25 20:00:40,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:00:40,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:00:40,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:00:40,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:00:42,857.857 INFO    ] ================================================
[2026-10-25 20:00:42,873.873 INFO    ] Launching Daemon at Sun Oct 25 20:00:42 IST 2026
[2026-10-25 20:00:42,884.884 INFO    ] ================================================
[2026-10-25 20:00:43,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:00:43
[2026-10-25 20:00:44,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:00:44,282.282 INFO    ] Initializing speech engine...
[2026-10-25 20:00:44,297.297 INFO    ] 2026-10-25 20:00:44
[2026-10-25 20:00:44,564.564 INFO    ] 2026-10-25 20:00:44
[2026-10-25 20:00:44,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:00:44,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:00:44,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:00:44,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:00:44,939.939 INFO    ] time= 25/10/2026 20:00:44
[2026-10-25 20:00:44,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:00:44,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:00:45,018.018 INFO    ] No existing commands found in stream
[2026-10-25 20:00:50,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:00:50,056.056 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 20:00:53,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:00:53,227.227 INFO    ] Checking for system updates...
[2026-10-25 20:00:53,263.263 INFO    ] 200
[2026-10-25 20:00:53,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:53,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:53,319.319 INFO    ] No update needed
[2026-10-25 20:00:53,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 20:00:53,356.356 INFO    ] 200
[2026-10-25 20:00:53,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:00:53,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:00:53,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:00:53,556.556 INFO    ] No camera update needed
[2026-10-25 20:00:53,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:00:53,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:00:53,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:00:53,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:00:55,612.612 INFO    ] ================================================
[2026-10-25 20:00:55,627.627 INFO    ] Launching Daemon at Sun Oct 25 20:00:55 IST 2026
[2026-10-25 20:00:55,639.639 INFO    ] ================================================
[2026-10-25 20:00:56,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:00:56
[2026-10-25 20:00:56,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:00:57,092.092 INFO    ] Initializing speech engine...
[2026-10-25 20:00:57,101.101 INFO    ] 2026-10-25 20:00:57
[2026-10-25 20:00:57,351.351 INFO    ] 2026-10-25 20:00:57
[2026-10-25 20:00:57,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:00:57,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:00:57,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:00:57,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:00:57,793.793 INFO    ] time= 25/10/2026 20:00:57
[2026-10-25 20:00:57,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:00:57,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:00:57,976.976 INFO    ] No existing commands found in stream
[2026-10-25 20:01:02,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:01:02,995.995 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 20:01:08,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:01:08,463.463 INFO    ] Checking for system updates...
[2026-10-25 20:01:08,504.504 INFO    ] 200
[2026-10-25 20:01:08,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:08,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:01:08,569.569 INFO    ] No update needed
[2026-10-25 20:01:08,571.571 INFO    ] Checking for camera pi updates...
[2026-10-25 20:01:08,605.605 INFO    ] 200
[2026-10-25 20:01:08,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:08,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:01:08,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:01:08,708.708 INFO    ] No camera update needed
[2026-10-25 20:01:08,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:01:08,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:01:08,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:01:08,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:01:10,764.764 INFO    ] ================================================
[2026-10-25 20:01:10,780.780 INFO    ] Launching Daemon at Sun Oct 25 20:01:10 IST 2026
[2026-10-25 20:01:10,791.791 INFO    ] ================================================
[2026-10-25 20:01:11,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:01:11
[2026-10-25 20:01:12,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:01:12,280.280 INFO    ] Initializing speech engine...
[2026-10-25 20:01:12,305.305 INFO    ] 2026-10-25 20:01:12
[2026-10-25 20:01:12,600.600 INFO    ] 2026-10-25 20:01:12
[2026-10-25 20:01:12,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:01:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:01:12,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:01:13,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:01:13,068.068 INFO    ] time= 25/10/2026 20:01:13
[2026-10-25 20:01:13,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:01:13,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:01:13,212.212 INFO    ] No existing commands found in stream
[2026-10-25 20:01:18,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:01:18,227.227 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 20:01:22,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:01:22,628.628 INFO    ] Checking for system updates...
[2026-10-25 20:01:22,669.669 INFO    ] 200
[2026-10-25 20:01:22,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:22,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:01:22,727.727 INFO    ] No update needed
[2026-10-25 20:01:22,730.730 INFO    ] Checking for camera pi updates...
[2026-10-25 20:01:22,764.764 INFO    ] 200
[2026-10-25 20:01:22,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:22,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:01:22,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:01:22,870.870 INFO    ] No camera update needed
[2026-10-25 20:01:22,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:01:22,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:01:22,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:01:22,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:01:24,925.925 INFO    ] ================================================
[2026-10-25 20:01:24,940.940 INFO    ] Launching Daemon at Sun Oct 25 20:01:24 IST 2026
[2026-10-25 20:01:24,952.952 INFO    ] ================================================
[2026-10-25 20:01:25,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:01:25
[2026-10-25 20:01:26,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:01:26,365.365 INFO    ] Initializing speech engine...
[2026-10-25 20:01:26,379.379 INFO    ] 2026-10-25 20:01:26
[2026-10-25 20:01:26,647.647 INFO    ] 2026-10-25 20:01:26
[2026-10-25 20:01:26,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:01:26,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:01:26,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:01:27,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:01:27,130.130 INFO    ] time= 25/10/2026 20:01:27
[2026-10-25 20:01:27,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:01:27,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:01:27,279.279 INFO    ] No existing commands found in stream
[2026-10-25 20:01:32,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:01:32,294.294 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 20:01:39,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:01:39,529.529 INFO    ] Checking for system updates...
[2026-10-25 20:01:39,565.565 INFO    ] 200
[2026-10-25 20:01:39,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:39,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:01:39,623.623 INFO    ] No update needed
[2026-10-25 20:01:39,626.626 INFO    ] Checking for camera pi updates...
[2026-10-25 20:01:39,664.664 INFO    ] 200
[2026-10-25 20:01:39,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:39,714.714 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:01:39,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:01:39,764.764 INFO    ] No camera update needed
[2026-10-25 20:01:39,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:01:39,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:01:39,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:01:39,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:01:41,821.821 INFO    ] ================================================
[2026-10-25 20:01:41,836.836 INFO    ] Launching Daemon at Sun Oct 25 20:01:41 IST 2026
[2026-10-25 20:01:41,847.847 INFO    ] ================================================
[2026-10-25 20:01:42,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:01:42
[2026-10-25 20:01:43,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:01:43,425.425 INFO    ] Initializing speech engine...
[2026-10-25 20:01:43,449.449 INFO    ] 2026-10-25 20:01:43
[2026-10-25 20:01:43,705.705 INFO    ] 2026-10-25 20:01:43
[2026-10-25 20:01:43,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:01:43,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:01:43,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:01:44,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:01:44,195.195 INFO    ] time= 25/10/2026 20:01:44
[2026-10-25 20:01:44,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:01:44,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:01:44,342.342 INFO    ] No existing commands found in stream
[2026-10-25 20:01:49,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:01:49,356.356 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 20:01:53,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:01:53,661.661 INFO    ] Checking for system updates...
[2026-10-25 20:01:53,702.702 INFO    ] 200
[2026-10-25 20:01:53,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:53,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:01:53,762.762 INFO    ] No update needed
[2026-10-25 20:01:53,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 20:01:53,798.798 INFO    ] 200
[2026-10-25 20:01:53,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:01:53,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:01:53,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:01:53,891.891 INFO    ] No camera update needed
[2026-10-25 20:01:53,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:01:53,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:01:53,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:01:53,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:01:55,948.948 INFO    ] ================================================
[2026-10-25 20:01:55,964.964 INFO    ] Launching Daemon at Sun Oct 25 20:01:55 IST 2026
[2026-10-25 20:01:55,975.975 INFO    ] ================================================
[2026-10-25 20:01:56,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:01:56
[2026-10-25 20:01:57,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:01:57,615.615 INFO    ] Initializing speech engine...
[2026-10-25 20:01:57,629.629 INFO    ] 2026-10-25 20:01:57
[2026-10-25 20:01:57,938.938 INFO    ] 2026-10-25 20:01:57
[2026-10-25 20:01:58,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:01:58,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:01:58,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:01:58,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:01:58,448.448 INFO    ] time= 25/10/2026 20:01:58
[2026-10-25 20:01:58,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:01:58,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:01:58,553.553 INFO    ] No existing commands found in stream
[2026-10-25 20:02:03,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:02:03,566.566 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 20:02:10,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:02:10,878.878 INFO    ] Checking for system updates...
[2026-10-25 20:02:10,916.916 INFO    ] 200
[2026-10-25 20:02:10,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:10,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:10,977.977 INFO    ] No update needed
[2026-10-25 20:02:10,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 20:02:11,015.015 INFO    ] 200
[2026-10-25 20:02:11,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:11,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:02:11,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:11,135.135 INFO    ] No camera update needed
[2026-10-25 20:02:11,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:02:11,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:02:11,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:02:11,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:02:13,201.201 INFO    ] ================================================
[2026-10-25 20:02:13,217.217 INFO    ] Launching Daemon at Sun Oct 25 20:02:13 IST 2026
[2026-10-25 20:02:13,228.228 INFO    ] ================================================
[2026-10-25 20:02:13,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:02:13
[2026-10-25 20:02:14,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:02:14,698.698 INFO    ] Initializing speech engine...
[2026-10-25 20:02:14,708.708 INFO    ] 2026-10-25 20:02:14
[2026-10-25 20:02:14,976.976 INFO    ] 2026-10-25 20:02:14
[2026-10-25 20:02:15,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:02:15,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:02:15,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:02:15,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:02:15,360.360 INFO    ] time= 25/10/2026 20:02:15
[2026-10-25 20:02:15,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:02:15,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:02:15,487.487 INFO    ] No existing commands found in stream
[2026-10-25 20:02:20,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:02:20,503.503 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 20:02:21,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:02:21,479.479 INFO    ] Checking for system updates...
[2026-10-25 20:02:21,516.516 INFO    ] 200
[2026-10-25 20:02:21,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:21,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:21,581.581 INFO    ] No update needed
[2026-10-25 20:02:21,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 20:02:21,617.617 INFO    ] 200
[2026-10-25 20:02:21,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:21,665.665 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:02:21,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:21,717.717 INFO    ] No camera update needed
[2026-10-25 20:02:21,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:02:21,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:02:21,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:02:21,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:02:23,773.773 INFO    ] ================================================
[2026-10-25 20:02:23,788.788 INFO    ] Launching Daemon at Sun Oct 25 20:02:23 IST 2026
[2026-10-25 20:02:23,800.800 INFO    ] ================================================
[2026-10-25 20:02:24,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:02:24
[2026-10-25 20:02:25,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:02:25,470.470 INFO    ] Initializing speech engine...
[2026-10-25 20:02:25,481.481 INFO    ] 2026-10-25 20:02:25
[2026-10-25 20:02:25,790.790 INFO    ] 2026-10-25 20:02:25
[2026-10-25 20:02:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:02:26,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:02:26,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:02:26,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:02:26,297.297 INFO    ] time= 25/10/2026 20:02:26
[2026-10-25 20:02:26,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:02:26,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:02:26,451.451 INFO    ] No existing commands found in stream
[2026-10-25 20:02:31,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:02:31,473.473 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 20:02:34,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:02:34,437.437 INFO    ] Checking for system updates...
[2026-10-25 20:02:34,476.476 INFO    ] 200
[2026-10-25 20:02:34,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:34,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:02:34,535.535 INFO    ] No update needed
[2026-10-25 20:02:34,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 20:02:34,576.576 INFO    ] 200
[2026-10-25 20:02:34,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:34,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:02:34,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:02:34,693.693 INFO    ] No camera update needed
[2026-10-25 20:02:34,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:02:34,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:02:34,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:02:34,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:02:36,749.749 INFO    ] ================================================
[2026-10-25 20:02:36,765.765 INFO    ] Launching Daemon at Sun Oct 25 20:02:36 IST 2026
[2026-10-25 20:02:36,776.776 INFO    ] ================================================
[2026-10-25 20:02:37,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:02:37
[2026-10-25 20:02:37,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:02:38,247.247 INFO    ] Initializing speech engine...
[2026-10-25 20:02:38,256.256 INFO    ] 2026-10-25 20:02:38
[2026-10-25 20:02:38,530.530 INFO    ] 2026-10-25 20:02:38
[2026-10-25 20:02:38,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:02:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:02:41,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:02:42,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:02:42,088.088 INFO    ] time= 25/10/2026 20:02:42
[2026-10-25 20:02:42,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:02:42,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:02:42,139.139 INFO    ] No existing commands found in stream
[2026-10-25 20:02:47,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:02:47,152.152 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 20:02:50,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:02:50,603.603 INFO    ] Checking for system updates...
[2026-10-25 20:02:50,639.639 INFO    ] 200
[2026-10-25 20:02:50,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:50,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:50,700.700 INFO    ] No update needed
[2026-10-25 20:02:50,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 20:02:50,737.737 INFO    ] 200
[2026-10-25 20:02:50,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:02:50,780.780 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:02:50,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:02:50,830.830 INFO    ] No camera update needed
[2026-10-25 20:02:50,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:02:50,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:02:50,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:02:50,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:02:52,886.886 INFO    ] ================================================
[2026-10-25 20:02:52,902.902 INFO    ] Launching Daemon at Sun Oct 25 20:02:52 IST 2026
[2026-10-25 20:02:52,914.914 INFO    ] ================================================
[2026-10-25 20:02:53,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:02:53
[2026-10-25 20:02:54,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:02:54,363.363 INFO    ] Initializing speech engine...
[2026-10-25 20:02:54,382.382 INFO    ] 2026-10-25 20:02:54
[2026-10-25 20:02:54,653.653 INFO    ] 2026-10-25 20:02:54
[2026-10-25 20:02:54,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:02:54,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:02:54,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:02:55,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:02:55,054.054 INFO    ] time= 25/10/2026 20:02:55
[2026-10-25 20:02:55,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:02:55,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:02:55,164.164 INFO    ] No existing commands found in stream
[2026-10-25 20:03:00,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:03:00,179.179 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 20:03:01,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:03:01,144.144 INFO    ] Checking for system updates...
[2026-10-25 20:03:01,180.180 INFO    ] 200
[2026-10-25 20:03:01,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:01,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:01,238.238 INFO    ] No update needed
[2026-10-25 20:03:01,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 20:03:01,278.278 INFO    ] 200
[2026-10-25 20:03:01,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:01,321.321 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:03:01,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:01,483.483 INFO    ] No camera update needed
[2026-10-25 20:03:01,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:03:01,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:03:01,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:03:01,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:03:03,543.543 INFO    ] ================================================
[2026-10-25 20:03:03,559.559 INFO    ] Launching Daemon at Sun Oct 25 20:03:03 IST 2026
[2026-10-25 20:03:03,571.571 INFO    ] ================================================
[2026-10-25 20:03:04,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:03:04
[2026-10-25 20:03:04,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:03:05,234.234 INFO    ] Initializing speech engine...
[2026-10-25 20:03:05,242.242 INFO    ] 2026-10-25 20:03:05
[2026-10-25 20:03:05,560.560 INFO    ] 2026-10-25 20:03:05
[2026-10-25 20:03:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:03:05,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:03:05,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:03:06,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:03:06,067.067 INFO    ] time= 25/10/2026 20:03:06
[2026-10-25 20:03:06,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:03:06,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:03:06,226.226 INFO    ] No existing commands found in stream
[2026-10-25 20:03:11,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:03:11,248.248 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 20:03:13,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:03:13,292.292 INFO    ] Checking for system updates...
[2026-10-25 20:03:13,330.330 INFO    ] 200
[2026-10-25 20:03:13,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:13,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:13,390.390 INFO    ] No update needed
[2026-10-25 20:03:13,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 20:03:13,887.887 INFO    ] 200
[2026-10-25 20:03:13,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:13,938.938 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:03:13,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:14,002.002 INFO    ] No camera update needed
[2026-10-25 20:03:14,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:03:14,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:03:14,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:03:14,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:03:16,063.063 INFO    ] ================================================
[2026-10-25 20:03:16,078.078 INFO    ] Launching Daemon at Sun Oct 25 20:03:16 IST 2026
[2026-10-25 20:03:16,090.090 INFO    ] ================================================
[2026-10-25 20:03:16,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:03:16
[2026-10-25 20:03:17,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:03:17,740.740 INFO    ] Initializing speech engine...
[2026-10-25 20:03:17,754.754 INFO    ] 2026-10-25 20:03:17
[2026-10-25 20:03:18,036.036 INFO    ] 2026-10-25 20:03:18
[2026-10-25 20:03:18,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:03:18,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:03:18,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:03:18,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:03:18,572.572 INFO    ] time= 25/10/2026 20:03:18
[2026-10-25 20:03:18,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:03:18,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:03:18,729.729 INFO    ] No existing commands found in stream
[2026-10-25 20:03:23,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:03:23,746.746 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 20:03:26,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:03:26,581.581 INFO    ] Checking for system updates...
[2026-10-25 20:03:26,618.618 INFO    ] 200
[2026-10-25 20:03:26,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:26,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:03:26,678.678 INFO    ] No update needed
[2026-10-25 20:03:26,681.681 INFO    ] Checking for camera pi updates...
[2026-10-25 20:03:26,716.716 INFO    ] 200
[2026-10-25 20:03:26,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:26,762.762 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:03:26,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:03:26,817.817 INFO    ] No camera update needed
[2026-10-25 20:03:26,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:03:26,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:03:26,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:03:26,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:03:28,877.877 INFO    ] ================================================
[2026-10-25 20:03:28,894.894 INFO    ] Launching Daemon at Sun Oct 25 20:03:28 IST 2026
[2026-10-25 20:03:28,905.905 INFO    ] ================================================
[2026-10-25 20:03:29,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:03:29
[2026-10-25 20:03:30,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:03:30,313.313 INFO    ] Initializing speech engine...
[2026-10-25 20:03:30,329.329 INFO    ] 2026-10-25 20:03:30
[2026-10-25 20:03:30,615.615 INFO    ] 2026-10-25 20:03:30
[2026-10-25 20:03:30,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:03:30,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:03:30,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:03:30,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:03:30,968.968 INFO    ] time= 25/10/2026 20:03:30
[2026-10-25 20:03:30,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:03:30,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:03:31,048.048 INFO    ] No existing commands found in stream
[2026-10-25 20:03:36,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:03:36,063.063 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 20:03:43,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:03:43,359.359 INFO    ] Checking for system updates...
[2026-10-25 20:03:43,395.395 INFO    ] 200
[2026-10-25 20:03:43,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:43,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:43,453.453 INFO    ] No update needed
[2026-10-25 20:03:43,455.455 INFO    ] Checking for camera pi updates...
[2026-10-25 20:03:43,489.489 INFO    ] 200
[2026-10-25 20:03:43,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:43,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:03:43,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:03:43,596.596 INFO    ] No camera update needed
[2026-10-25 20:03:43,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:03:43,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:03:43,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:03:43,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:03:45,652.652 INFO    ] ================================================
[2026-10-25 20:03:45,666.666 INFO    ] Launching Daemon at Sun Oct 25 20:03:45 IST 2026
[2026-10-25 20:03:45,677.677 INFO    ] ================================================
[2026-10-25 20:03:46,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:03:46
[2026-10-25 20:03:46,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:03:47,131.131 INFO    ] Initializing speech engine...
[2026-10-25 20:03:47,137.137 INFO    ] 2026-10-25 20:03:47
[2026-10-25 20:03:47,385.385 INFO    ] 2026-10-25 20:03:47
[2026-10-25 20:03:47,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:03:47,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:03:47,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:03:47,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:03:47,855.855 INFO    ] time= 25/10/2026 20:03:47
[2026-10-25 20:03:47,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:03:47,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:03:48,007.007 INFO    ] No existing commands found in stream
[2026-10-25 20:03:53,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:03:53,031.031 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 20:03:56,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:03:56,625.625 INFO    ] Checking for system updates...
[2026-10-25 20:03:56,662.662 INFO    ] 200
[2026-10-25 20:03:56,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:56,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:03:56,720.720 INFO    ] No update needed
[2026-10-25 20:03:56,722.722 INFO    ] Checking for camera pi updates...
[2026-10-25 20:03:56,757.757 INFO    ] 200
[2026-10-25 20:03:56,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:03:56,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:03:56,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:03:56,857.857 INFO    ] No camera update needed
[2026-10-25 20:03:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:03:56,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:03:56,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:03:56,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:03:58,914.914 INFO    ] ================================================
[2026-10-25 20:03:58,929.929 INFO    ] Launching Daemon at Sun Oct 25 20:03:58 IST 2026
[2026-10-25 20:03:58,939.939 INFO    ] ================================================
[2026-10-25 20:03:59,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:03:59
[2026-10-25 20:04:00,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:04:00,390.390 INFO    ] Initializing speech engine...
[2026-10-25 20:04:00,396.396 INFO    ] 2026-10-25 20:04:00
[2026-10-25 20:04:00,645.645 INFO    ] 2026-10-25 20:04:00
[2026-10-25 20:04:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:04:00,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:04:00,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:04:01,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:04:01,116.116 INFO    ] time= 25/10/2026 20:04:01
[2026-10-25 20:04:01,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:04:01,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:04:01,265.265 INFO    ] No existing commands found in stream
[2026-10-25 20:04:06,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:04:06,280.280 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 20:04:09,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:04:09,306.306 INFO    ] Checking for system updates...
[2026-10-25 20:04:09,342.342 INFO    ] 200
[2026-10-25 20:04:09,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:09,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:09,401.401 INFO    ] No update needed
[2026-10-25 20:04:09,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 20:04:09,438.438 INFO    ] 200
[2026-10-25 20:04:09,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:09,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:04:09,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:09,539.539 INFO    ] No camera update needed
[2026-10-25 20:04:09,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:04:09,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:04:09,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:04:09,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:04:11,596.596 INFO    ] ================================================
[2026-10-25 20:04:11,611.611 INFO    ] Launching Daemon at Sun Oct 25 20:04:11 IST 2026
[2026-10-25 20:04:11,622.622 INFO    ] ================================================
[2026-10-25 20:04:12,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:04:12
[2026-10-25 20:04:12,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:04:13,247.247 INFO    ] Initializing speech engine...
[2026-10-25 20:04:13,256.256 INFO    ] 2026-10-25 20:04:13
[2026-10-25 20:04:13,529.529 INFO    ] 2026-10-25 20:04:13
[2026-10-25 20:04:13,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:04:14,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:04:14,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:04:14,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:04:14,946.946 INFO    ] time= 25/10/2026 20:04:14
[2026-10-25 20:04:14,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:04:14,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:04:15,015.015 INFO    ] No existing commands found in stream
[2026-10-25 20:04:20,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:04:20,029.029 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 20:04:21,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:04:21,600.600 INFO    ] Checking for system updates...
[2026-10-25 20:04:21,637.637 INFO    ] 200
[2026-10-25 20:04:21,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:21,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:21,697.697 INFO    ] No update needed
[2026-10-25 20:04:21,700.700 INFO    ] Checking for camera pi updates...
[2026-10-25 20:04:21,735.735 INFO    ] 200
[2026-10-25 20:04:21,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:21,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:04:21,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:21,831.831 INFO    ] No camera update needed
[2026-10-25 20:04:21,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:04:21,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:04:21,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:04:21,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:04:23,887.887 INFO    ] ================================================
[2026-10-25 20:04:23,902.902 INFO    ] Launching Daemon at Sun Oct 25 20:04:23 IST 2026
[2026-10-25 20:04:23,913.913 INFO    ] ================================================
[2026-10-25 20:04:24,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:04:24
[2026-10-25 20:04:25,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:04:25,367.367 INFO    ] Initializing speech engine...
[2026-10-25 20:04:25,375.375 INFO    ] 2026-10-25 20:04:25
[2026-10-25 20:04:25,650.650 INFO    ] 2026-10-25 20:04:25
[2026-10-25 20:04:25,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:04:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:04:25,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:04:25,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:04:26,018.018 INFO    ] time= 25/10/2026 20:04:25
[2026-10-25 20:04:26,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:04:26,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:04:26,107.107 INFO    ] No existing commands found in stream
[2026-10-25 20:04:31,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:04:31,125.125 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 20:04:34,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:04:34,311.311 INFO    ] Checking for system updates...
[2026-10-25 20:04:34,353.353 INFO    ] 200
[2026-10-25 20:04:34,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:34,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:04:34,417.417 INFO    ] No update needed
[2026-10-25 20:04:34,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 20:04:34,456.456 INFO    ] 200
[2026-10-25 20:04:34,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:34,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:04:34,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:04:34,559.559 INFO    ] No camera update needed
[2026-10-25 20:04:34,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:04:34,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:04:34,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:04:34,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:04:36,618.618 INFO    ] ================================================
[2026-10-25 20:04:36,633.633 INFO    ] Launching Daemon at Sun Oct 25 20:04:36 IST 2026
[2026-10-25 20:04:36,644.644 INFO    ] ================================================
[2026-10-25 20:04:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:04:37
[2026-10-25 20:04:37,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:04:38,103.103 INFO    ] Initializing speech engine...
[2026-10-25 20:04:38,113.113 INFO    ] 2026-10-25 20:04:38
[2026-10-25 20:04:38,359.359 INFO    ] 2026-10-25 20:04:38
[2026-10-25 20:04:38,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:04:38,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:04:38,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:04:38,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:04:38,836.836 INFO    ] time= 25/10/2026 20:04:38
[2026-10-25 20:04:38,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:04:38,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:04:38,980.980 INFO    ] No existing commands found in stream
[2026-10-25 20:04:43,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:04:43,995.995 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 20:04:45,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:04:45,529.529 INFO    ] Checking for system updates...
[2026-10-25 20:04:45,569.569 INFO    ] 200
[2026-10-25 20:04:45,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:45,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:04:45,627.627 INFO    ] No update needed
[2026-10-25 20:04:45,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 20:04:45,663.663 INFO    ] 200
[2026-10-25 20:04:45,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:45,707.707 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:04:45,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:04:45,759.759 INFO    ] No camera update needed
[2026-10-25 20:04:45,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:04:45,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:04:45,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:04:45,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:04:47,816.816 INFO    ] ================================================
[2026-10-25 20:04:47,831.831 INFO    ] Launching Daemon at Sun Oct 25 20:04:47 IST 2026
[2026-10-25 20:04:47,842.842 INFO    ] ================================================
[2026-10-25 20:04:48,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:04:48
[2026-10-25 20:04:48,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:04:49,247.247 INFO    ] Initializing speech engine...
[2026-10-25 20:04:49,263.263 INFO    ] 2026-10-25 20:04:49
[2026-10-25 20:04:49,548.548 INFO    ] 2026-10-25 20:04:49
[2026-10-25 20:04:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:04:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:04:49,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:04:50,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:04:50,645.645 INFO    ] time= 25/10/2026 20:04:50
[2026-10-25 20:04:50,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:04:50,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:04:50,803.803 INFO    ] No existing commands found in stream
[2026-10-25 20:04:55,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:04:55,835.835 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 20:04:57,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:04:57,539.539 INFO    ] Checking for system updates...
[2026-10-25 20:04:57,577.577 INFO    ] 200
[2026-10-25 20:04:57,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:57,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:57,638.638 INFO    ] No update needed
[2026-10-25 20:04:57,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 20:04:57,675.675 INFO    ] 200
[2026-10-25 20:04:57,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:04:57,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:04:57,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:04:57,772.772 INFO    ] No camera update needed
[2026-10-25 20:04:57,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:04:57,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:04:57,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:04:57,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:04:59,827.827 INFO    ] ================================================
[2026-10-25 20:04:59,844.844 INFO    ] Launching Daemon at Sun Oct 25 20:04:59 IST 2026
[2026-10-25 20:04:59,857.857 INFO    ] ================================================
[2026-10-25 20:05:00,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:05:00
[2026-10-25 20:05:01,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:05:01,649.649 INFO    ] Initializing speech engine...
[2026-10-25 20:05:01,657.657 INFO    ] 2026-10-25 20:05:01
[2026-10-25 20:05:02,066.066 INFO    ] 2026-10-25 20:05:02
[2026-10-25 20:05:02,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:05:02,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:05:02,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:05:02,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:05:02,474.474 INFO    ] time= 25/10/2026 20:05:02
[2026-10-25 20:05:02,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:05:02,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:05:02,614.614 INFO    ] No existing commands found in stream
[2026-10-25 20:05:07,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:05:07,654.654 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 20:05:09,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:05:09,813.813 INFO    ] Checking for system updates...
[2026-10-25 20:05:09,850.850 INFO    ] 200
[2026-10-25 20:05:09,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:09,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:09,927.927 INFO    ] No update needed
[2026-10-25 20:05:09,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 20:05:09,966.966 INFO    ] 200
[2026-10-25 20:05:09,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:10,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:05:10,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:10,061.061 INFO    ] No camera update needed
[2026-10-25 20:05:10,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:05:10,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:05:10,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:05:10,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:05:12,116.116 INFO    ] ================================================
[2026-10-25 20:05:12,131.131 INFO    ] Launching Daemon at Sun Oct 25 20:05:12 IST 2026
[2026-10-25 20:05:12,142.142 INFO    ] ================================================
[2026-10-25 20:05:12,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:05:12
[2026-10-25 20:05:13,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:05:13,573.573 INFO    ] Initializing speech engine...
[2026-10-25 20:05:13,584.584 INFO    ] 2026-10-25 20:05:13
[2026-10-25 20:05:13,829.829 INFO    ] 2026-10-25 20:05:13
[2026-10-25 20:05:13,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:05:15,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:05:15,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:05:16,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:05:16,172.172 INFO    ] time= 25/10/2026 20:05:16
[2026-10-25 20:05:16,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:05:16,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:05:16,286.286 INFO    ] No existing commands found in stream
[2026-10-25 20:05:21,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:05:21,302.302 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 20:05:25,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:05:25,394.394 INFO    ] Checking for system updates...
[2026-10-25 20:05:25,431.431 INFO    ] 200
[2026-10-25 20:05:25,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:25,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:05:25,490.490 INFO    ] No update needed
[2026-10-25 20:05:25,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 20:05:25,527.527 INFO    ] 200
[2026-10-25 20:05:25,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:25,570.570 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:05:25,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:05:25,623.623 INFO    ] No camera update needed
[2026-10-25 20:05:25,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:05:25,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:05:25,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:05:25,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:05:27,679.679 INFO    ] ================================================
[2026-10-25 20:05:27,694.694 INFO    ] Launching Daemon at Sun Oct 25 20:05:27 IST 2026
[2026-10-25 20:05:27,705.705 INFO    ] ================================================
[2026-10-25 20:05:28,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:05:28
[2026-10-25 20:05:28,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:05:29,102.102 INFO    ] Initializing speech engine...
[2026-10-25 20:05:29,117.117 INFO    ] 2026-10-25 20:05:29
[2026-10-25 20:05:29,380.380 INFO    ] 2026-10-25 20:05:29
[2026-10-25 20:05:29,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:05:29,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:05:29,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:05:29,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:05:29,754.754 INFO    ] time= 25/10/2026 20:05:29
[2026-10-25 20:05:29,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:05:29,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:05:29,833.833 INFO    ] No existing commands found in stream
[2026-10-25 20:05:34,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:05:34,861.861 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 20:05:35,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:05:35,869.869 INFO    ] Checking for system updates...
[2026-10-25 20:05:35,909.909 INFO    ] 200
[2026-10-25 20:05:35,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:35,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:35,967.967 INFO    ] No update needed
[2026-10-25 20:05:35,969.969 INFO    ] Checking for camera pi updates...
[2026-10-25 20:05:36,003.003 INFO    ] 200
[2026-10-25 20:05:36,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:36,052.052 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:05:36,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:36,096.096 INFO    ] No camera update needed
[2026-10-25 20:05:36,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:05:36,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:05:36,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:05:36,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:05:38,153.153 INFO    ] ================================================
[2026-10-25 20:05:38,169.169 INFO    ] Launching Daemon at Sun Oct 25 20:05:38 IST 2026
[2026-10-25 20:05:38,180.180 INFO    ] ================================================
[2026-10-25 20:05:38,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:05:38
[2026-10-25 20:05:39,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:05:39,597.597 INFO    ] Initializing speech engine...
[2026-10-25 20:05:39,606.606 INFO    ] 2026-10-25 20:05:39
[2026-10-25 20:05:39,865.865 INFO    ] 2026-10-25 20:05:39
[2026-10-25 20:05:39,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:05:40,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:05:40,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:05:40,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:05:40,328.328 INFO    ] time= 25/10/2026 20:05:40
[2026-10-25 20:05:40,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:05:40,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:05:40,481.481 INFO    ] No existing commands found in stream
[2026-10-25 20:05:45,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:05:45,495.495 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 20:05:47,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:05:47,389.389 INFO    ] Checking for system updates...
[2026-10-25 20:05:47,425.425 INFO    ] 200
[2026-10-25 20:05:47,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:47,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:47,490.490 INFO    ] No update needed
[2026-10-25 20:05:47,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 20:05:47,528.528 INFO    ] 200
[2026-10-25 20:05:47,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:47,575.575 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:05:47,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:05:47,628.628 INFO    ] No camera update needed
[2026-10-25 20:05:47,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:05:47,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:05:47,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:05:47,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:05:49,684.684 INFO    ] ================================================
[2026-10-25 20:05:49,699.699 INFO    ] Launching Daemon at Sun Oct 25 20:05:49 IST 2026
[2026-10-25 20:05:49,710.710 INFO    ] ================================================
[2026-10-25 20:05:50,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:05:50
[2026-10-25 20:05:51,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:05:51,348.348 INFO    ] Initializing speech engine...
[2026-10-25 20:05:51,355.355 INFO    ] 2026-10-25 20:05:51
[2026-10-25 20:05:51,629.629 INFO    ] 2026-10-25 20:05:51
[2026-10-25 20:05:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:05:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:05:51,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:05:52,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:05:52,123.123 INFO    ] time= 25/10/2026 20:05:52
[2026-10-25 20:05:52,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:05:52,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:05:52,263.263 INFO    ] No existing commands found in stream
[2026-10-25 20:05:57,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:05:57,279.279 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 20:05:59,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:05:59,467.467 INFO    ] Checking for system updates...
[2026-10-25 20:05:59,505.505 INFO    ] 200
[2026-10-25 20:05:59,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:59,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:05:59,566.566 INFO    ] No update needed
[2026-10-25 20:05:59,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 20:05:59,603.603 INFO    ] 200
[2026-10-25 20:05:59,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:05:59,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:05:59,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:05:59,702.702 INFO    ] No camera update needed
[2026-10-25 20:05:59,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:05:59,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:05:59,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:05:59,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:06:01,782.782 INFO    ] ================================================
[2026-10-25 20:06:01,822.822 INFO    ] Launching Daemon at Sun Oct 25 20:06:01 IST 2026
[2026-10-25 20:06:01,841.841 INFO    ] ================================================
[2026-10-25 20:06:02,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:06:02
[2026-10-25 20:06:03,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:06:03,588.588 INFO    ] Initializing speech engine...
[2026-10-25 20:06:03,599.599 INFO    ] 2026-10-25 20:06:03
[2026-10-25 20:06:03,881.881 INFO    ] 2026-10-25 20:06:03
[2026-10-25 20:06:03,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:06:04,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:06:04,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:06:04,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:06:04,357.357 INFO    ] time= 25/10/2026 20:06:04
[2026-10-25 20:06:04,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:06:04,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:06:04,502.502 INFO    ] No existing commands found in stream
[2026-10-25 20:06:09,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:06:09,516.516 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 20:06:11,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:06:11,326.326 INFO    ] Checking for system updates...
[2026-10-25 20:06:11,365.365 INFO    ] 200
[2026-10-25 20:06:11,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:11,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:11,435.435 INFO    ] No update needed
[2026-10-25 20:06:11,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 20:06:11,480.480 INFO    ] 200
[2026-10-25 20:06:11,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:11,532.532 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:06:11,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:11,582.582 INFO    ] No camera update needed
[2026-10-25 20:06:11,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:06:11,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:06:11,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:06:11,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:06:13,641.641 INFO    ] ================================================
[2026-10-25 20:06:13,656.656 INFO    ] Launching Daemon at Sun Oct 25 20:06:13 IST 2026
[2026-10-25 20:06:13,667.667 INFO    ] ================================================
[2026-10-25 20:06:14,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:06:14
[2026-10-25 20:06:14,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:06:15,118.118 INFO    ] Initializing speech engine...
[2026-10-25 20:06:15,125.125 INFO    ] 2026-10-25 20:06:15
[2026-10-25 20:06:15,387.387 INFO    ] 2026-10-25 20:06:15
[2026-10-25 20:06:15,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:06:17,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:06:17,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:06:18,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:06:18,034.034 INFO    ] time= 25/10/2026 20:06:18
[2026-10-25 20:06:18,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:06:18,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:06:18,131.131 INFO    ] No existing commands found in stream
[2026-10-25 20:06:23,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:06:23,152.152 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 20:06:26,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:06:26,043.043 INFO    ] Checking for system updates...
[2026-10-25 20:06:26,079.079 INFO    ] 200
[2026-10-25 20:06:26,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:26,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:26,147.147 INFO    ] No update needed
[2026-10-25 20:06:26,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 20:06:26,183.183 INFO    ] 200
[2026-10-25 20:06:26,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:26,230.230 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:06:26,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:26,281.281 INFO    ] No camera update needed
[2026-10-25 20:06:26,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:06:26,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:06:26,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:06:26,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:06:28,338.338 INFO    ] ================================================
[2026-10-25 20:06:28,353.353 INFO    ] Launching Daemon at Sun Oct 25 20:06:28 IST 2026
[2026-10-25 20:06:28,364.364 INFO    ] ================================================
[2026-10-25 20:06:28,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:06:28
[2026-10-25 20:06:29,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:06:29,763.763 INFO    ] Initializing speech engine...
[2026-10-25 20:06:29,776.776 INFO    ] 2026-10-25 20:06:29
[2026-10-25 20:06:30,041.041 INFO    ] 2026-10-25 20:06:30
[2026-10-25 20:06:30,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:06:30,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:06:30,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:06:30,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:06:30,494.494 INFO    ] time= 25/10/2026 20:06:30
[2026-10-25 20:06:30,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:06:30,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:06:30,668.668 INFO    ] No existing commands found in stream
[2026-10-25 20:06:35,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:06:35,682.682 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 20:06:36,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:06:36,900.900 INFO    ] Checking for system updates...
[2026-10-25 20:06:36,940.940 INFO    ] 200
[2026-10-25 20:06:36,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:36,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:36,998.998 INFO    ] No update needed
[2026-10-25 20:06:37,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 20:06:37,034.034 INFO    ] 200
[2026-10-25 20:06:37,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:37,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:06:37,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:37,126.126 INFO    ] No camera update needed
[2026-10-25 20:06:37,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:06:37,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:06:37,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:06:37,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:06:39,183.183 INFO    ] ================================================
[2026-10-25 20:06:39,198.198 INFO    ] Launching Daemon at Sun Oct 25 20:06:39 IST 2026
[2026-10-25 20:06:39,209.209 INFO    ] ================================================
[2026-10-25 20:06:39,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:06:39
[2026-10-25 20:06:40,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:06:40,667.667 INFO    ] Initializing speech engine...
[2026-10-25 20:06:40,676.676 INFO    ] 2026-10-25 20:06:40
[2026-10-25 20:06:40,925.925 INFO    ] 2026-10-25 20:06:40
[2026-10-25 20:06:40,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:06:41,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:06:41,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:06:41,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:06:41,409.409 INFO    ] time= 25/10/2026 20:06:41
[2026-10-25 20:06:41,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:06:41,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:06:41,543.543 INFO    ] No existing commands found in stream
[2026-10-25 20:06:46,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:06:46,562.562 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 20:06:51,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:06:51,041.041 INFO    ] Checking for system updates...
[2026-10-25 20:06:51,077.077 INFO    ] 200
[2026-10-25 20:06:51,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:51,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:51,134.134 INFO    ] No update needed
[2026-10-25 20:06:51,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 20:06:51,172.172 INFO    ] 200
[2026-10-25 20:06:51,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:06:51,220.220 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:06:51,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:06:51,268.268 INFO    ] No camera update needed
[2026-10-25 20:06:51,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:06:51,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:06:51,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:06:51,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:06:53,326.326 INFO    ] ================================================
[2026-10-25 20:06:53,340.340 INFO    ] Launching Daemon at Sun Oct 25 20:06:53 IST 2026
[2026-10-25 20:06:53,351.351 INFO    ] ================================================
[2026-10-25 20:06:53,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:06:53
[2026-10-25 20:06:54,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:06:54,750.750 INFO    ] Initializing speech engine...
[2026-10-25 20:06:54,756.756 INFO    ] 2026-10-25 20:06:54
[2026-10-25 20:06:55,048.048 INFO    ] 2026-10-25 20:06:55
[2026-10-25 20:06:55,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:06:55,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:06:55,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:06:55,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:06:55,421.421 INFO    ] time= 25/10/2026 20:06:55
[2026-10-25 20:06:55,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:06:55,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:06:55,533.533 INFO    ] No existing commands found in stream
[2026-10-25 20:07:00,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:07:00,551.551 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 20:07:01,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:07:01,134.134 INFO    ] Checking for system updates...
[2026-10-25 20:07:01,173.173 INFO    ] 200
[2026-10-25 20:07:01,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:01,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:07:01,231.231 INFO    ] No update needed
[2026-10-25 20:07:01,233.233 INFO    ] Checking for camera pi updates...
[2026-10-25 20:07:01,270.270 INFO    ] 200
[2026-10-25 20:07:01,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:01,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:07:01,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:07:01,375.375 INFO    ] No camera update needed
[2026-10-25 20:07:01,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:07:01,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:07:01,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:07:01,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:07:03,433.433 INFO    ] ================================================
[2026-10-25 20:07:03,448.448 INFO    ] Launching Daemon at Sun Oct 25 20:07:03 IST 2026
[2026-10-25 20:07:03,459.459 INFO    ] ================================================
[2026-10-25 20:07:04,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:07:04
[2026-10-25 20:07:04,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:07:04,936.936 INFO    ] Initializing speech engine...
[2026-10-25 20:07:04,945.945 INFO    ] 2026-10-25 20:07:04
[2026-10-25 20:07:05,244.244 INFO    ] 2026-10-25 20:07:05
[2026-10-25 20:07:05,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:07:05,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:07:05,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:07:05,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:07:05,643.643 INFO    ] time= 25/10/2026 20:07:05
[2026-10-25 20:07:05,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:07:05,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:07:05,829.829 INFO    ] No existing commands found in stream
[2026-10-25 20:07:10,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:07:10,853.853 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 20:07:14,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:07:14,941.941 INFO    ] Checking for system updates...
[2026-10-25 20:07:14,977.977 INFO    ] 200
[2026-10-25 20:07:14,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:15,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:15,036.036 INFO    ] No update needed
[2026-10-25 20:07:15,038.038 INFO    ] Checking for camera pi updates...
[2026-10-25 20:07:15,073.073 INFO    ] 200
[2026-10-25 20:07:15,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:15,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:07:15,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:15,278.278 INFO    ] No camera update needed
[2026-10-25 20:07:15,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:07:15,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:07:15,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:07:15,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:07:17,338.338 INFO    ] ================================================
[2026-10-25 20:07:17,353.353 INFO    ] Launching Daemon at Sun Oct 25 20:07:17 IST 2026
[2026-10-25 20:07:17,363.363 INFO    ] ================================================
[2026-10-25 20:07:17,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:07:17
[2026-10-25 20:07:18,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:07:18,892.892 INFO    ] Initializing speech engine...
[2026-10-25 20:07:18,906.906 INFO    ] 2026-10-25 20:07:18
[2026-10-25 20:07:19,192.192 INFO    ] 2026-10-25 20:07:19
[2026-10-25 20:07:19,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:07:19,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:07:19,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:07:19,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:07:19,969.969 INFO    ] time= 25/10/2026 20:07:19
[2026-10-25 20:07:19,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:07:20,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:07:20,197.197 INFO    ] No existing commands found in stream
[2026-10-25 20:07:25,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:07:25,212.212 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 20:07:26,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:07:26,704.704 INFO    ] Checking for system updates...
[2026-10-25 20:07:26,741.741 INFO    ] 200
[2026-10-25 20:07:26,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:26,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:26,803.803 INFO    ] No update needed
[2026-10-25 20:07:26,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 20:07:26,840.840 INFO    ] 200
[2026-10-25 20:07:26,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:26,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:07:26,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:26,950.950 INFO    ] No camera update needed
[2026-10-25 20:07:26,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:07:26,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:07:26,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:07:26,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:07:29,012.012 INFO    ] ================================================
[2026-10-25 20:07:29,026.026 INFO    ] Launching Daemon at Sun Oct 25 20:07:29 IST 2026
[2026-10-25 20:07:29,037.037 INFO    ] ================================================
[2026-10-25 20:07:29,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:07:29
[2026-10-25 20:07:30,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:07:30,467.467 INFO    ] Initializing speech engine...
[2026-10-25 20:07:30,480.480 INFO    ] 2026-10-25 20:07:30
[2026-10-25 20:07:30,743.743 INFO    ] 2026-10-25 20:07:30
[2026-10-25 20:07:30,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:07:31,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:07:31,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:07:31,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:07:31,284.284 INFO    ] time= 25/10/2026 20:07:31
[2026-10-25 20:07:31,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:07:31,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:07:31,423.423 INFO    ] No existing commands found in stream
[2026-10-25 20:07:36,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:07:36,450.450 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 20:07:38,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:07:38,095.095 INFO    ] Checking for system updates...
[2026-10-25 20:07:38,132.132 INFO    ] 200
[2026-10-25 20:07:38,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:38,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:38,198.198 INFO    ] No update needed
[2026-10-25 20:07:38,201.201 INFO    ] Checking for camera pi updates...
[2026-10-25 20:07:38,239.239 INFO    ] 200
[2026-10-25 20:07:38,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:38,284.284 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:07:38,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:38,353.353 INFO    ] No camera update needed
[2026-10-25 20:07:38,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:07:38,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:07:38,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:07:38,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:07:40,412.412 INFO    ] ================================================
[2026-10-25 20:07:40,427.427 INFO    ] Launching Daemon at Sun Oct 25 20:07:40 IST 2026
[2026-10-25 20:07:40,437.437 INFO    ] ================================================
[2026-10-25 20:07:41,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:07:41
[2026-10-25 20:07:41,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:07:41,904.904 INFO    ] Initializing speech engine...
[2026-10-25 20:07:41,913.913 INFO    ] 2026-10-25 20:07:41
[2026-10-25 20:07:42,173.173 INFO    ] 2026-10-25 20:07:42
[2026-10-25 20:07:42,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:07:42,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:07:42,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:07:42,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:07:42,637.637 INFO    ] time= 25/10/2026 20:07:42
[2026-10-25 20:07:42,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:07:42,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:07:42,778.778 INFO    ] No existing commands found in stream
[2026-10-25 20:07:47,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:07:47,793.793 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 20:07:51,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:07:51,043.043 INFO    ] Checking for system updates...
[2026-10-25 20:07:51,083.083 INFO    ] 200
[2026-10-25 20:07:51,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:51,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:51,140.140 INFO    ] No update needed
[2026-10-25 20:07:51,143.143 INFO    ] Checking for camera pi updates...
[2026-10-25 20:07:51,177.177 INFO    ] 200
[2026-10-25 20:07:51,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:07:51,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:07:51,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:07:51,278.278 INFO    ] No camera update needed
[2026-10-25 20:07:51,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:07:51,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:07:51,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:07:51,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:07:53,334.334 INFO    ] ================================================
[2026-10-25 20:07:53,349.349 INFO    ] Launching Daemon at Sun Oct 25 20:07:53 IST 2026
[2026-10-25 20:07:53,360.360 INFO    ] ================================================
[2026-10-25 20:07:54,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:07:54
[2026-10-25 20:07:54,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:07:55,013.013 INFO    ] Initializing speech engine...
[2026-10-25 20:07:55,020.020 INFO    ] 2026-10-25 20:07:55
[2026-10-25 20:07:55,313.313 INFO    ] 2026-10-25 20:07:55
[2026-10-25 20:07:55,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:07:55,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:07:55,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:07:55,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:07:55,846.846 INFO    ] time= 25/10/2026 20:07:55
[2026-10-25 20:07:55,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:07:55,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:07:56,003.003 INFO    ] No existing commands found in stream
[2026-10-25 20:08:01,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:08:01,027.027 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 20:08:02,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:08:02,981.981 INFO    ] Checking for system updates...
[2026-10-25 20:08:03,031.031 INFO    ] 200
[2026-10-25 20:08:03,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:03,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:03,123.123 INFO    ] No update needed
[2026-10-25 20:08:03,127.127 INFO    ] Checking for camera pi updates...
[2026-10-25 20:08:03,175.175 INFO    ] 200
[2026-10-25 20:08:03,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:03,236.236 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:08:03,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:03,307.307 INFO    ] No camera update needed
[2026-10-25 20:08:03,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:08:03,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:08:03,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:08:03,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:08:05,364.364 INFO    ] ================================================
[2026-10-25 20:08:05,378.378 INFO    ] Launching Daemon at Sun Oct 25 20:08:05 IST 2026
[2026-10-25 20:08:05,389.389 INFO    ] ================================================
[2026-10-25 20:08:06,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:08:05
[2026-10-25 20:08:06,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:08:06,848.848 INFO    ] Initializing speech engine...
[2026-10-25 20:08:06,857.857 INFO    ] 2026-10-25 20:08:06
[2026-10-25 20:08:07,153.153 INFO    ] 2026-10-25 20:08:07
[2026-10-25 20:08:07,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:08:07,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:08:07,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:08:07,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:08:07,527.527 INFO    ] time= 25/10/2026 20:08:07
[2026-10-25 20:08:07,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:08:07,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:08:07,652.652 INFO    ] No existing commands found in stream
[2026-10-25 20:08:12,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:08:12,667.667 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 20:08:14,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:08:14,894.894 INFO    ] Checking for system updates...
[2026-10-25 20:08:14,934.934 INFO    ] 200
[2026-10-25 20:08:14,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:14,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:14,998.998 INFO    ] No update needed
[2026-10-25 20:08:15,000.000 INFO    ] Checking for camera pi updates...
[2026-10-25 20:08:15,035.035 INFO    ] 200
[2026-10-25 20:08:15,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:15,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:08:15,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:15,139.139 INFO    ] No camera update needed
[2026-10-25 20:08:15,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:08:15,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:08:15,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:08:15,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:08:17,193.193 INFO    ] ================================================
[2026-10-25 20:08:17,208.208 INFO    ] Launching Daemon at Sun Oct 25 20:08:17 IST 2026
[2026-10-25 20:08:17,218.218 INFO    ] ================================================
[2026-10-25 20:08:17,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:08:17
[2026-10-25 20:08:18,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:08:18,813.813 INFO    ] Initializing speech engine...
[2026-10-25 20:08:18,825.825 INFO    ] 2026-10-25 20:08:18
[2026-10-25 20:08:19,109.109 INFO    ] 2026-10-25 20:08:19
[2026-10-25 20:08:19,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:08:20,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:08:20,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:08:20,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:08:20,857.857 INFO    ] time= 25/10/2026 20:08:20
[2026-10-25 20:08:20,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:08:20,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:08:20,967.967 INFO    ] No existing commands found in stream
[2026-10-25 20:08:25,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:08:25,988.988 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-25 20:08:29,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:08:29,634.634 INFO    ] Checking for system updates...
[2026-10-25 20:08:29,669.669 INFO    ] 200
[2026-10-25 20:08:29,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:29,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:08:29,728.728 INFO    ] No update needed
[2026-10-25 20:08:29,735.735 INFO    ] Checking for camera pi updates...
[2026-10-25 20:08:29,770.770 INFO    ] 200
[2026-10-25 20:08:29,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:29,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:08:29,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:08:29,881.881 INFO    ] No camera update needed
[2026-10-25 20:08:29,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:08:29,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:08:29,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:08:29,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:08:31,937.937 INFO    ] ================================================
[2026-10-25 20:08:31,954.954 INFO    ] Launching Daemon at Sun Oct 25 20:08:31 IST 2026
[2026-10-25 20:08:31,965.965 INFO    ] ================================================
[2026-10-25 20:08:32,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:08:32
[2026-10-25 20:08:33,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:08:33,449.449 INFO    ] Initializing speech engine...
[2026-10-25 20:08:33,458.458 INFO    ] 2026-10-25 20:08:33
[2026-10-25 20:08:33,752.752 INFO    ] 2026-10-25 20:08:33
[2026-10-25 20:08:33,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:08:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:08:33,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:08:34,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:08:34,125.125 INFO    ] time= 25/10/2026 20:08:34
[2026-10-25 20:08:34,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:08:34,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:08:34,248.248 INFO    ] No existing commands found in stream
[2026-10-25 20:08:39,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:08:39,263.263 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 20:08:41,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:08:41,845.845 INFO    ] Checking for system updates...
[2026-10-25 20:08:41,882.882 INFO    ] 200
[2026-10-25 20:08:41,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:41,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:08:41,942.942 INFO    ] No update needed
[2026-10-25 20:08:41,944.944 INFO    ] Checking for camera pi updates...
[2026-10-25 20:08:41,979.979 INFO    ] 200
[2026-10-25 20:08:41,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:42,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:08:42,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:08:42,081.081 INFO    ] No camera update needed
[2026-10-25 20:08:42,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:08:42,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:08:42,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:08:42,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:08:44,136.136 INFO    ] ================================================
[2026-10-25 20:08:44,152.152 INFO    ] Launching Daemon at Sun Oct 25 20:08:44 IST 2026
[2026-10-25 20:08:44,163.163 INFO    ] ================================================
[2026-10-25 20:08:44,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:08:44
[2026-10-25 20:08:45,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:08:45,582.582 INFO    ] Initializing speech engine...
[2026-10-25 20:08:45,600.600 INFO    ] 2026-10-25 20:08:45
[2026-10-25 20:08:45,869.869 INFO    ] 2026-10-25 20:08:45
[2026-10-25 20:08:45,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:08:46,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:08:46,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:08:46,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:08:46,244.244 INFO    ] time= 25/10/2026 20:08:46
[2026-10-25 20:08:46,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:08:46,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:08:46,367.367 INFO    ] No existing commands found in stream
[2026-10-25 20:08:51,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:08:51,382.382 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 20:08:54,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:08:54,274.274 INFO    ] Checking for system updates...
[2026-10-25 20:08:54,310.310 INFO    ] 200
[2026-10-25 20:08:54,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:54,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:54,373.373 INFO    ] No update needed
[2026-10-25 20:08:54,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 20:08:54,409.409 INFO    ] 200
[2026-10-25 20:08:54,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:08:54,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:08:54,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:08:54,504.504 INFO    ] No camera update needed
[2026-10-25 20:08:54,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:08:54,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:08:54,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:08:54,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:08:56,560.560 INFO    ] ================================================
[2026-10-25 20:08:56,575.575 INFO    ] Launching Daemon at Sun Oct 25 20:08:56 IST 2026
[2026-10-25 20:08:56,586.586 INFO    ] ================================================
[2026-10-25 20:08:57,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:08:57
[2026-10-25 20:08:57,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:08:58,183.183 INFO    ] Initializing speech engine...
[2026-10-25 20:08:58,196.196 INFO    ] 2026-10-25 20:08:58
[2026-10-25 20:08:58,477.477 INFO    ] 2026-10-25 20:08:58
[2026-10-25 20:08:58,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:08:58,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:08:58,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:08:58,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:08:59,018.018 INFO    ] time= 25/10/2026 20:08:58
[2026-10-25 20:08:59,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:08:59,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:08:59,160.160 INFO    ] No existing commands found in stream
[2026-10-25 20:09:04,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:09:04,185.185 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 20:09:08,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:09:08,289.289 INFO    ] Checking for system updates...
[2026-10-25 20:09:08,328.328 INFO    ] 200
[2026-10-25 20:09:08,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:08,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:08,393.393 INFO    ] No update needed
[2026-10-25 20:09:08,395.395 INFO    ] Checking for camera pi updates...
[2026-10-25 20:09:08,429.429 INFO    ] 200
[2026-10-25 20:09:08,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:08,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:09:08,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:08,531.531 INFO    ] No camera update needed
[2026-10-25 20:09:08,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:09:08,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:09:08,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:09:08,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:09:10,591.591 INFO    ] ================================================
[2026-10-25 20:09:10,606.606 INFO    ] Launching Daemon at Sun Oct 25 20:09:10 IST 2026
[2026-10-25 20:09:10,616.616 INFO    ] ================================================
[2026-10-25 20:09:11,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:09:11
[2026-10-25 20:09:11,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:09:12,051.051 INFO    ] Initializing speech engine...
[2026-10-25 20:09:12,059.059 INFO    ] 2026-10-25 20:09:12
[2026-10-25 20:09:12,342.342 INFO    ] 2026-10-25 20:09:12
[2026-10-25 20:09:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:09:12,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:09:12,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:09:12,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:09:12,743.743 INFO    ] time= 25/10/2026 20:09:12
[2026-10-25 20:09:12,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:09:12,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:09:12,827.827 INFO    ] No existing commands found in stream
[2026-10-25 20:09:17,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:09:17,845.845 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-25 20:09:22,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:09:22,227.227 INFO    ] Checking for system updates...
[2026-10-25 20:09:22,262.262 INFO    ] 200
[2026-10-25 20:09:22,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:22,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:09:22,324.324 INFO    ] No update needed
[2026-10-25 20:09:22,327.327 INFO    ] Checking for camera pi updates...
[2026-10-25 20:09:22,361.361 INFO    ] 200
[2026-10-25 20:09:22,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:22,412.412 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:09:22,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:09:22,569.569 INFO    ] No camera update needed
[2026-10-25 20:09:22,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:09:22,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:09:22,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:09:22,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:09:24,630.630 INFO    ] ================================================
[2026-10-25 20:09:24,645.645 INFO    ] Launching Daemon at Sun Oct 25 20:09:24 IST 2026
[2026-10-25 20:09:24,655.655 INFO    ] ================================================
[2026-10-25 20:09:25,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:09:25
[2026-10-25 20:09:25,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:09:26,204.204 INFO    ] Initializing speech engine...
[2026-10-25 20:09:26,215.215 INFO    ] 2026-10-25 20:09:26
[2026-10-25 20:09:26,481.481 INFO    ] 2026-10-25 20:09:26
[2026-10-25 20:09:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:09:26,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:09:26,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:09:26,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:09:26,947.947 INFO    ] time= 25/10/2026 20:09:26
[2026-10-25 20:09:27,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:09:27,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:09:27,089.089 INFO    ] No existing commands found in stream
[2026-10-25 20:09:32,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:09:32,106.106 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 20:09:34,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:09:34,535.535 INFO    ] Checking for system updates...
[2026-10-25 20:09:34,574.574 INFO    ] 200
[2026-10-25 20:09:34,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:34,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:34,638.638 INFO    ] No update needed
[2026-10-25 20:09:34,641.641 INFO    ] Checking for camera pi updates...
[2026-10-25 20:09:34,675.675 INFO    ] 200
[2026-10-25 20:09:34,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:34,719.719 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:09:34,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:34,780.780 INFO    ] No camera update needed
[2026-10-25 20:09:34,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:09:34,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:09:34,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:09:34,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:09:36,844.844 INFO    ] ================================================
[2026-10-25 20:09:36,860.860 INFO    ] Launching Daemon at Sun Oct 25 20:09:36 IST 2026
[2026-10-25 20:09:36,871.871 INFO    ] ================================================
[2026-10-25 20:09:37,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:09:37
[2026-10-25 20:09:38,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:09:38,342.342 INFO    ] Initializing speech engine...
[2026-10-25 20:09:38,350.350 INFO    ] 2026-10-25 20:09:38
[2026-10-25 20:09:38,623.623 INFO    ] 2026-10-25 20:09:38
[2026-10-25 20:09:38,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:09:38,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:09:38,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:09:39,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:09:39,070.070 INFO    ] time= 25/10/2026 20:09:39
[2026-10-25 20:09:39,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:09:39,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:09:39,215.215 INFO    ] No existing commands found in stream
[2026-10-25 20:09:44,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:09:44,229.229 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 20:09:46,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:09:46,811.811 INFO    ] Checking for system updates...
[2026-10-25 20:09:46,847.847 INFO    ] 200
[2026-10-25 20:09:46,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:46,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:46,912.912 INFO    ] No update needed
[2026-10-25 20:09:46,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 20:09:46,949.949 INFO    ] 200
[2026-10-25 20:09:46,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:09:46,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:09:47,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:09:47,043.043 INFO    ] No camera update needed
[2026-10-25 20:09:47,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:09:47,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:09:47,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:09:47,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:09:49,100.100 INFO    ] ================================================
[2026-10-25 20:09:49,115.115 INFO    ] Launching Daemon at Sun Oct 25 20:09:49 IST 2026
[2026-10-25 20:09:49,126.126 INFO    ] ================================================
[2026-10-25 20:09:49,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:09:49
[2026-10-25 20:09:50,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:09:50,523.523 INFO    ] Initializing speech engine...
[2026-10-25 20:09:50,529.529 INFO    ] 2026-10-25 20:09:50
[2026-10-25 20:09:50,820.820 INFO    ] 2026-10-25 20:09:50
[2026-10-25 20:09:50,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:09:53,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:09:53,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:09:53,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:09:53,606.606 INFO    ] time= 25/10/2026 20:09:53
[2026-10-25 20:09:53,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:09:53,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:09:53,673.673 INFO    ] No existing commands found in stream
[2026-10-25 20:09:58,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:09:58,688.688 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 20:10:01,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:10:01,243.243 INFO    ] Checking for system updates...
[2026-10-25 20:10:01,282.282 INFO    ] 200
[2026-10-25 20:10:01,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:01,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:01,340.340 INFO    ] No update needed
[2026-10-25 20:10:01,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 20:10:01,380.380 INFO    ] 200
[2026-10-25 20:10:01,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:01,423.423 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:10:01,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:01,473.473 INFO    ] No camera update needed
[2026-10-25 20:10:01,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:10:01,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:10:01,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:10:01,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:10:03,541.541 INFO    ] ================================================
[2026-10-25 20:10:03,566.566 INFO    ] Launching Daemon at Sun Oct 25 20:10:03 IST 2026
[2026-10-25 20:10:03,585.585 INFO    ] ================================================
[2026-10-25 20:10:04,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:10:04
[2026-10-25 20:10:04,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:10:05,081.081 INFO    ] Initializing speech engine...
[2026-10-25 20:10:05,087.087 INFO    ] 2026-10-25 20:10:05
[2026-10-25 20:10:05,378.378 INFO    ] 2026-10-25 20:10:05
[2026-10-25 20:10:05,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:10:05,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:10:05,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:10:05,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:10:05,751.751 INFO    ] time= 25/10/2026 20:10:05
[2026-10-25 20:10:05,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:10:05,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:10:05,874.874 INFO    ] No existing commands found in stream
[2026-10-25 20:10:10,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:10:10,889.889 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 20:10:11,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:10:11,795.795 INFO    ] Checking for system updates...
[2026-10-25 20:10:11,831.831 INFO    ] 200
[2026-10-25 20:10:11,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:11,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:11,895.895 INFO    ] No update needed
[2026-10-25 20:10:11,897.897 INFO    ] Checking for camera pi updates...
[2026-10-25 20:10:11,932.932 INFO    ] 200
[2026-10-25 20:10:11,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:11,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:10:12,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:12,027.027 INFO    ] No camera update needed
[2026-10-25 20:10:12,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:10:12,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:10:12,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:10:12,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:10:14,082.082 INFO    ] ================================================
[2026-10-25 20:10:14,097.097 INFO    ] Launching Daemon at Sun Oct 25 20:10:14 IST 2026
[2026-10-25 20:10:14,108.108 INFO    ] ================================================
[2026-10-25 20:10:14,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:10:14
[2026-10-25 20:10:15,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:10:15,508.508 INFO    ] Initializing speech engine...
[2026-10-25 20:10:15,524.524 INFO    ] 2026-10-25 20:10:15
[2026-10-25 20:10:15,803.803 INFO    ] 2026-10-25 20:10:15
[2026-10-25 20:10:15,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:10:16,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:10:16,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:10:16,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:10:16,177.177 INFO    ] time= 25/10/2026 20:10:16
[2026-10-25 20:10:16,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:10:16,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:10:16,301.301 INFO    ] No existing commands found in stream
[2026-10-25 20:10:21,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:10:21,315.315 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 20:10:24,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:10:24,322.322 INFO    ] Checking for system updates...
[2026-10-25 20:10:24,357.357 INFO    ] 200
[2026-10-25 20:10:24,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:24,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:10:24,417.417 INFO    ] No update needed
[2026-10-25 20:10:24,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 20:10:24,456.456 INFO    ] 200
[2026-10-25 20:10:24,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:24,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:10:24,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:10:24,553.553 INFO    ] No camera update needed
[2026-10-25 20:10:24,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:10:24,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:10:24,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:10:24,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:10:26,607.607 INFO    ] ================================================
[2026-10-25 20:10:26,623.623 INFO    ] Launching Daemon at Sun Oct 25 20:10:26 IST 2026
[2026-10-25 20:10:26,633.633 INFO    ] ================================================
[2026-10-25 20:10:27,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:10:27
[2026-10-25 20:10:27,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:10:28,115.115 INFO    ] Initializing speech engine...
[2026-10-25 20:10:28,122.122 INFO    ] 2026-10-25 20:10:28
[2026-10-25 20:10:28,397.397 INFO    ] 2026-10-25 20:10:28
[2026-10-25 20:10:28,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:10:28,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:10:28,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:10:28,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:10:28,869.869 INFO    ] time= 25/10/2026 20:10:28
[2026-10-25 20:10:28,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:10:28,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:10:29,043.043 INFO    ] No existing commands found in stream
[2026-10-25 20:10:34,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:10:34,066.066 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-25 20:10:36,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:10:36,646.646 INFO    ] Checking for system updates...
[2026-10-25 20:10:36,683.683 INFO    ] 200
[2026-10-25 20:10:36,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:36,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:10:36,749.749 INFO    ] No update needed
[2026-10-25 20:10:36,752.752 INFO    ] Checking for camera pi updates...
[2026-10-25 20:10:36,787.787 INFO    ] 200
[2026-10-25 20:10:36,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:36,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:10:36,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:10:36,899.899 INFO    ] No camera update needed
[2026-10-25 20:10:36,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:10:36,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:10:36,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:10:36,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:10:38,957.957 INFO    ] ================================================
[2026-10-25 20:10:38,972.972 INFO    ] Launching Daemon at Sun Oct 25 20:10:38 IST 2026
[2026-10-25 20:10:38,982.982 INFO    ] ================================================
[2026-10-25 20:10:39,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:10:39
[2026-10-25 20:10:40,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:10:40,388.388 INFO    ] Initializing speech engine...
[2026-10-25 20:10:40,407.407 INFO    ] 2026-10-25 20:10:40
[2026-10-25 20:10:40,665.665 INFO    ] 2026-10-25 20:10:40
[2026-10-25 20:10:40,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:10:40,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:10:40,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:10:41,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:10:41,055.055 INFO    ] time= 25/10/2026 20:10:41
[2026-10-25 20:10:41,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:10:41,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:10:41,160.160 INFO    ] No existing commands found in stream
[2026-10-25 20:10:46,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:10:46,173.173 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 20:10:50,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:10:50,863.863 INFO    ] Checking for system updates...
[2026-10-25 20:10:50,900.900 INFO    ] 200
[2026-10-25 20:10:50,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:50,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:50,963.963 INFO    ] No update needed
[2026-10-25 20:10:50,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 20:10:51,003.003 INFO    ] 200
[2026-10-25 20:10:51,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:10:51,046.046 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:10:51,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:10:51,115.115 INFO    ] No camera update needed
[2026-10-25 20:10:51,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:10:51,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:10:51,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:10:51,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:10:53,172.172 INFO    ] ================================================
[2026-10-25 20:10:53,187.187 INFO    ] Launching Daemon at Sun Oct 25 20:10:53 IST 2026
[2026-10-25 20:10:53,198.198 INFO    ] ================================================
[2026-10-25 20:10:53,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:10:53
[2026-10-25 20:10:54,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:10:54,629.629 INFO    ] Initializing speech engine...
[2026-10-25 20:10:54,644.644 INFO    ] 2026-10-25 20:10:54
[2026-10-25 20:10:54,913.913 INFO    ] 2026-10-25 20:10:54
[2026-10-25 20:10:54,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:10:55,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:10:55,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:10:55,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:10:55,265.265 INFO    ] time= 25/10/2026 20:10:55
[2026-10-25 20:10:55,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:10:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:10:55,346.346 INFO    ] No existing commands found in stream
[2026-10-25 20:11:00,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:11:00,361.361 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 20:11:01,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:11:01,604.604 INFO    ] Checking for system updates...
[2026-10-25 20:11:01,644.644 INFO    ] 200
[2026-10-25 20:11:01,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:01,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:01,717.717 INFO    ] No update needed
[2026-10-25 20:11:01,721.721 INFO    ] Checking for camera pi updates...
[2026-10-25 20:11:01,765.765 INFO    ] 200
[2026-10-25 20:11:01,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:01,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:11:01,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:01,871.871 INFO    ] No camera update needed
[2026-10-25 20:11:01,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:11:01,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:11:01,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:11:01,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:11:03,939.939 INFO    ] ================================================
[2026-10-25 20:11:03,954.954 INFO    ] Launching Daemon at Sun Oct 25 20:11:03 IST 2026
[2026-10-25 20:11:03,965.965 INFO    ] ================================================
[2026-10-25 20:11:04,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:11:04
[2026-10-25 20:11:05,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:11:05,361.361 INFO    ] Initializing speech engine...
[2026-10-25 20:11:05,370.370 INFO    ] 2026-10-25 20:11:05
[2026-10-25 20:11:05,655.655 INFO    ] 2026-10-25 20:11:05
[2026-10-25 20:11:05,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:11:05,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:11:05,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:11:06,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:11:06,134.134 INFO    ] time= 25/10/2026 20:11:06
[2026-10-25 20:11:06,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:11:06,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:11:06,300.300 INFO    ] No existing commands found in stream
[2026-10-25 20:11:11,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:11:11,315.315 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 20:11:12,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:11:12,856.856 INFO    ] Checking for system updates...
[2026-10-25 20:11:12,892.892 INFO    ] 200
[2026-10-25 20:11:12,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:12,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:12,949.949 INFO    ] No update needed
[2026-10-25 20:11:12,951.951 INFO    ] Checking for camera pi updates...
[2026-10-25 20:11:12,986.986 INFO    ] 200
[2026-10-25 20:11:12,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:13,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:11:13,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:13,087.087 INFO    ] No camera update needed
[2026-10-25 20:11:13,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:11:13,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:11:13,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:11:13,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:11:15,141.141 INFO    ] ================================================
[2026-10-25 20:11:15,156.156 INFO    ] Launching Daemon at Sun Oct 25 20:11:15 IST 2026
[2026-10-25 20:11:15,167.167 INFO    ] ================================================
[2026-10-25 20:11:15,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:11:15
[2026-10-25 20:11:16,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:11:16,569.569 INFO    ] Initializing speech engine...
[2026-10-25 20:11:16,578.578 INFO    ] 2026-10-25 20:11:16
[2026-10-25 20:11:16,865.865 INFO    ] 2026-10-25 20:11:16
[2026-10-25 20:11:16,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:11:17,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:11:17,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:11:17,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:11:17,233.233 INFO    ] time= 25/10/2026 20:11:17
[2026-10-25 20:11:17,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:11:17,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:11:17,354.354 INFO    ] No existing commands found in stream
[2026-10-25 20:11:22,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:11:22,369.369 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 20:11:26,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:11:26,064.064 INFO    ] Checking for system updates...
[2026-10-25 20:11:26,101.101 INFO    ] 200
[2026-10-25 20:11:26,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:26,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:26,164.164 INFO    ] No update needed
[2026-10-25 20:11:26,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 20:11:26,201.201 INFO    ] 200
[2026-10-25 20:11:26,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:26,245.245 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:11:26,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:26,399.399 INFO    ] No camera update needed
[2026-10-25 20:11:26,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:11:26,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:11:26,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:11:26,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:11:28,453.453 INFO    ] ================================================
[2026-10-25 20:11:28,468.468 INFO    ] Launching Daemon at Sun Oct 25 20:11:28 IST 2026
[2026-10-25 20:11:28,479.479 INFO    ] ================================================
[2026-10-25 20:11:29,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:11:29
[2026-10-25 20:11:29,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:11:29,875.875 INFO    ] Initializing speech engine...
[2026-10-25 20:11:29,884.884 INFO    ] 2026-10-25 20:11:29
[2026-10-25 20:11:30,171.171 INFO    ] 2026-10-25 20:11:30
[2026-10-25 20:11:30,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:11:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:11:30,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:11:30,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:11:30,579.579 INFO    ] time= 25/10/2026 20:11:30
[2026-10-25 20:11:30,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:11:30,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:11:30,660.660 INFO    ] No existing commands found in stream
[2026-10-25 20:11:35,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:11:35,676.676 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 20:11:38,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:11:38,437.437 INFO    ] Checking for system updates...
[2026-10-25 20:11:38,473.473 INFO    ] 200
[2026-10-25 20:11:38,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:38,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:38,532.532 INFO    ] No update needed
[2026-10-25 20:11:38,534.534 INFO    ] Checking for camera pi updates...
[2026-10-25 20:11:38,571.571 INFO    ] 200
[2026-10-25 20:11:38,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:38,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:11:38,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:11:38,688.688 INFO    ] No camera update needed
[2026-10-25 20:11:38,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:11:38,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:11:38,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:11:38,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:11:40,745.745 INFO    ] ================================================
[2026-10-25 20:11:40,760.760 INFO    ] Launching Daemon at Sun Oct 25 20:11:40 IST 2026
[2026-10-25 20:11:40,771.771 INFO    ] ================================================
[2026-10-25 20:11:41,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:11:41
[2026-10-25 20:11:41,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:11:42,218.218 INFO    ] Initializing speech engine...
[2026-10-25 20:11:42,243.243 INFO    ] 2026-10-25 20:11:42
[2026-10-25 20:11:42,512.512 INFO    ] 2026-10-25 20:11:42
[2026-10-25 20:11:42,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:11:42,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:11:42,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:11:42,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:11:42,882.882 INFO    ] time= 25/10/2026 20:11:42
[2026-10-25 20:11:42,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:11:42,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:11:43,003.003 INFO    ] No existing commands found in stream
[2026-10-25 20:11:48,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:11:48,019.019 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 20:11:50,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:11:50,703.703 INFO    ] Checking for system updates...
[2026-10-25 20:11:50,739.739 INFO    ] 200
[2026-10-25 20:11:50,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:50,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:11:50,804.804 INFO    ] No update needed
[2026-10-25 20:11:50,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 20:11:50,840.840 INFO    ] 200
[2026-10-25 20:11:50,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:11:50,884.884 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:11:50,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:11:50,936.936 INFO    ] No camera update needed
[2026-10-25 20:11:50,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:11:50,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:11:50,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:11:50,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:11:52,990.990 INFO    ] ================================================
[2026-10-25 20:11:53,005.005 INFO    ] Launching Daemon at Sun Oct 25 20:11:53 IST 2026
[2026-10-25 20:11:53,016.016 INFO    ] ================================================
[2026-10-25 20:11:53,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:11:53
[2026-10-25 20:11:54,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:11:54,411.411 INFO    ] Initializing speech engine...
[2026-10-25 20:11:54,418.418 INFO    ] 2026-10-25 20:11:54
[2026-10-25 20:11:54,709.709 INFO    ] 2026-10-25 20:11:54
[2026-10-25 20:11:54,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:11:56,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:11:56,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:11:56,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:11:56,675.675 INFO    ] time= 25/10/2026 20:11:56
[2026-10-25 20:11:56,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:11:56,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:11:56,790.790 INFO    ] No existing commands found in stream
[2026-10-25 20:12:01,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:12:01,816.816 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 20:12:02,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:12:02,324.324 INFO    ] Checking for system updates...
[2026-10-25 20:12:02,369.369 INFO    ] 200
[2026-10-25 20:12:02,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:02,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:12:02,439.439 INFO    ] No update needed
[2026-10-25 20:12:02,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 20:12:02,488.488 INFO    ] 200
[2026-10-25 20:12:02,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:02,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:12:02,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:12:02,627.627 INFO    ] No camera update needed
[2026-10-25 20:12:02,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:12:02,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:12:02,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:12:02,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:12:04,694.694 INFO    ] ================================================
[2026-10-25 20:12:04,709.709 INFO    ] Launching Daemon at Sun Oct 25 20:12:04 IST 2026
[2026-10-25 20:12:04,720.720 INFO    ] ================================================
[2026-10-25 20:12:05,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:12:05
[2026-10-25 20:12:06,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:12:06,349.349 INFO    ] Initializing speech engine...
[2026-10-25 20:12:06,357.357 INFO    ] 2026-10-25 20:12:06
[2026-10-25 20:12:06,641.641 INFO    ] 2026-10-25 20:12:06
[2026-10-25 20:12:06,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:12:06,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:12:06,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:12:07,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:12:07,179.179 INFO    ] time= 25/10/2026 20:12:07
[2026-10-25 20:12:07,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:12:07,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:12:07,325.325 INFO    ] No existing commands found in stream
[2026-10-25 20:12:12,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:12:12,350.350 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 20:12:15,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:12:15,191.191 INFO    ] Checking for system updates...
[2026-10-25 20:12:15,229.229 INFO    ] 200
[2026-10-25 20:12:15,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:15,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:12:15,294.294 INFO    ] No update needed
[2026-10-25 20:12:15,297.297 INFO    ] Checking for camera pi updates...
[2026-10-25 20:12:15,333.333 INFO    ] 200
[2026-10-25 20:12:15,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:15,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:12:15,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:12:15,441.441 INFO    ] No camera update needed
[2026-10-25 20:12:15,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:12:15,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:12:15,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:12:15,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:12:17,497.497 INFO    ] ================================================
[2026-10-25 20:12:17,512.512 INFO    ] Launching Daemon at Sun Oct 25 20:12:17 IST 2026
[2026-10-25 20:12:17,523.523 INFO    ] ================================================
[2026-10-25 20:12:18,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:12:18
[2026-10-25 20:12:18,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:12:18,976.976 INFO    ] Initializing speech engine...
[2026-10-25 20:12:18,983.983 INFO    ] 2026-10-25 20:12:18
[2026-10-25 20:12:19,231.231 INFO    ] 2026-10-25 20:12:19
[2026-10-25 20:12:19,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:12:19,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:12:19,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:12:19,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:12:19,597.597 INFO    ] time= 25/10/2026 20:12:19
[2026-10-25 20:12:19,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:12:19,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:12:19,774.774 INFO    ] No existing commands found in stream
[2026-10-25 20:12:24,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:12:24,803.803 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 20:12:28,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:12:28,717.717 INFO    ] Checking for system updates...
[2026-10-25 20:12:28,761.761 INFO    ] 200
[2026-10-25 20:12:28,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:28,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:28,821.821 INFO    ] No update needed
[2026-10-25 20:12:28,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 20:12:28,860.860 INFO    ] 200
[2026-10-25 20:12:28,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:28,908.908 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:12:28,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:28,968.968 INFO    ] No camera update needed
[2026-10-25 20:12:28,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:12:28,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:12:28,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:12:28,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:12:31,022.022 INFO    ] ================================================
[2026-10-25 20:12:31,037.037 INFO    ] Launching Daemon at Sun Oct 25 20:12:31 IST 2026
[2026-10-25 20:12:31,048.048 INFO    ] ================================================
[2026-10-25 20:12:31,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:12:31
[2026-10-25 20:12:32,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:12:32,780.780 INFO    ] Initializing speech engine...
[2026-10-25 20:12:32,790.790 INFO    ] 2026-10-25 20:12:32
[2026-10-25 20:12:33,080.080 INFO    ] 2026-10-25 20:12:33
[2026-10-25 20:12:33,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:12:33,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:12:33,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:12:33,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:12:33,544.544 INFO    ] time= 25/10/2026 20:12:33
[2026-10-25 20:12:33,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:12:33,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:12:33,692.692 INFO    ] No existing commands found in stream
[2026-10-25 20:12:38,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:12:38,722.722 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 20:12:41,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:12:41,224.224 INFO    ] Checking for system updates...
[2026-10-25 20:12:41,261.261 INFO    ] 200
[2026-10-25 20:12:41,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:41,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:41,322.322 INFO    ] No update needed
[2026-10-25 20:12:41,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 20:12:41,360.360 INFO    ] 200
[2026-10-25 20:12:41,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:41,404.404 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:12:41,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:41,455.455 INFO    ] No camera update needed
[2026-10-25 20:12:41,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:12:41,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:12:41,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:12:41,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:12:43,510.510 INFO    ] ================================================
[2026-10-25 20:12:43,525.525 INFO    ] Launching Daemon at Sun Oct 25 20:12:43 IST 2026
[2026-10-25 20:12:43,536.536 INFO    ] ================================================
[2026-10-25 20:12:44,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:12:44
[2026-10-25 20:12:44,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:12:45,226.226 INFO    ] Initializing speech engine...
[2026-10-25 20:12:45,241.241 INFO    ] 2026-10-25 20:12:45
[2026-10-25 20:12:45,530.530 INFO    ] 2026-10-25 20:12:45
[2026-10-25 20:12:45,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:12:45,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:12:45,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:12:45,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:12:46,002.002 INFO    ] time= 25/10/2026 20:12:45
[2026-10-25 20:12:46,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:12:46,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:12:46,194.194 INFO    ] No existing commands found in stream
[2026-10-25 20:12:51,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:12:51,233.233 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 20:12:52,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:12:52,696.696 INFO    ] Checking for system updates...
[2026-10-25 20:12:52,740.740 INFO    ] 200
[2026-10-25 20:12:52,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:52,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:52,805.805 INFO    ] No update needed
[2026-10-25 20:12:52,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 20:12:52,847.847 INFO    ] 200
[2026-10-25 20:12:52,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:12:52,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:12:52,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:12:52,942.942 INFO    ] No camera update needed
[2026-10-25 20:12:52,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:12:52,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:12:52,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:12:52,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:12:55,996.996 INFO    ] ================================================
[2026-10-25 20:12:55,012.012 INFO    ] Launching Daemon at Sun Oct 25 20:12:55 IST 2026
[2026-10-25 20:12:55,022.022 INFO    ] ================================================
[2026-10-25 20:12:55,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:12:55
[2026-10-25 20:12:56,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:12:56,418.418 INFO    ] Initializing speech engine...
[2026-10-25 20:12:56,425.425 INFO    ] 2026-10-25 20:12:56
[2026-10-25 20:12:56,699.699 INFO    ] 2026-10-25 20:12:56
[2026-10-25 20:12:56,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:12:57,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:12:57,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:12:58,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:12:58,084.084 INFO    ] time= 25/10/2026 20:12:58
[2026-10-25 20:12:58,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:12:58,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:12:58,147.147 INFO    ] No existing commands found in stream
[2026-10-25 20:13:03,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:13:03,163.163 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 20:13:06,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:13:06,445.445 INFO    ] Checking for system updates...
[2026-10-25 20:13:06,486.486 INFO    ] 200
[2026-10-25 20:13:06,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:06,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:06,545.545 INFO    ] No update needed
[2026-10-25 20:13:06,548.548 INFO    ] Checking for camera pi updates...
[2026-10-25 20:13:06,582.582 INFO    ] 200
[2026-10-25 20:13:06,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:06,631.631 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:13:06,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:06,684.684 INFO    ] No camera update needed
[2026-10-25 20:13:06,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:13:06,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:13:06,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:13:06,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:13:08,742.742 INFO    ] ================================================
[2026-10-25 20:13:08,758.758 INFO    ] Launching Daemon at Sun Oct 25 20:13:08 IST 2026
[2026-10-25 20:13:08,768.768 INFO    ] ================================================
[2026-10-25 20:13:09,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:13:09
[2026-10-25 20:13:09,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:13:10,162.162 INFO    ] Initializing speech engine...
[2026-10-25 20:13:10,170.170 INFO    ] 2026-10-25 20:13:10
[2026-10-25 20:13:10,444.444 INFO    ] 2026-10-25 20:13:10
[2026-10-25 20:13:10,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:13:10,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:13:10,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:13:10,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:13:10,887.887 INFO    ] time= 25/10/2026 20:13:10
[2026-10-25 20:13:10,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:13:11,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:13:11,070.070 INFO    ] No existing commands found in stream
[2026-10-25 20:13:16,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:13:16,085.085 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 20:13:16,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:13:16,704.704 INFO    ] Checking for system updates...
[2026-10-25 20:13:16,745.745 INFO    ] 200
[2026-10-25 20:13:16,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:16,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:16,813.813 INFO    ] No update needed
[2026-10-25 20:13:16,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 20:13:16,849.849 INFO    ] 200
[2026-10-25 20:13:16,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:16,898.898 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:13:16,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:16,954.954 INFO    ] No camera update needed
[2026-10-25 20:13:16,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:13:16,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:13:16,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:13:16,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:13:19,014.014 INFO    ] ================================================
[2026-10-25 20:13:19,029.029 INFO    ] Launching Daemon at Sun Oct 25 20:13:19 IST 2026
[2026-10-25 20:13:19,040.040 INFO    ] ================================================
[2026-10-25 20:13:19,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:13:19
[2026-10-25 20:13:20,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:13:20,507.507 INFO    ] Initializing speech engine...
[2026-10-25 20:13:20,516.516 INFO    ] 2026-10-25 20:13:20
[2026-10-25 20:13:20,768.768 INFO    ] 2026-10-25 20:13:20
[2026-10-25 20:13:20,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:13:21,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:13:21,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:13:21,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:13:21,324.324 INFO    ] time= 25/10/2026 20:13:21
[2026-10-25 20:13:21,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:13:21,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:13:21,478.478 INFO    ] No existing commands found in stream
[2026-10-25 20:13:26,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:13:26,503.503 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 20:13:28,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:13:28,805.805 INFO    ] Checking for system updates...
[2026-10-25 20:13:28,848.848 INFO    ] 200
[2026-10-25 20:13:28,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:28,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:28,918.918 INFO    ] No update needed
[2026-10-25 20:13:28,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 20:13:28,956.956 INFO    ] 200
[2026-10-25 20:13:28,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:29,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:13:29,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:29,163.163 INFO    ] No camera update needed
[2026-10-25 20:13:29,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:13:29,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:13:29,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:13:29,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:13:31,218.218 INFO    ] ================================================
[2026-10-25 20:13:31,233.233 INFO    ] Launching Daemon at Sun Oct 25 20:13:31 IST 2026
[2026-10-25 20:13:31,244.244 INFO    ] ================================================
[2026-10-25 20:13:31,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:13:31
[2026-10-25 20:13:32,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:13:32,744.744 INFO    ] Initializing speech engine...
[2026-10-25 20:13:32,751.751 INFO    ] 2026-10-25 20:13:32
[2026-10-25 20:13:33,062.062 INFO    ] 2026-10-25 20:13:33
[2026-10-25 20:13:33,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:13:33,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:13:33,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:13:33,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:13:33,425.425 INFO    ] time= 25/10/2026 20:13:33
[2026-10-25 20:13:33,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:13:33,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:13:33,513.513 INFO    ] No existing commands found in stream
[2026-10-25 20:13:38,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:13:38,528.528 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 20:13:40,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:13:40,203.203 INFO    ] Checking for system updates...
[2026-10-25 20:13:40,251.251 INFO    ] 200
[2026-10-25 20:13:40,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:40,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:40,318.318 INFO    ] No update needed
[2026-10-25 20:13:40,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 20:13:40,355.355 INFO    ] 200
[2026-10-25 20:13:40,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:40,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:13:40,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:40,452.452 INFO    ] No camera update needed
[2026-10-25 20:13:40,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:13:40,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:13:40,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:13:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:13:42,506.506 INFO    ] ================================================
[2026-10-25 20:13:42,521.521 INFO    ] Launching Daemon at Sun Oct 25 20:13:42 IST 2026
[2026-10-25 20:13:42,533.533 INFO    ] ================================================
[2026-10-25 20:13:43,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:13:43
[2026-10-25 20:13:43,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:13:43,936.936 INFO    ] Initializing speech engine...
[2026-10-25 20:13:43,943.943 INFO    ] 2026-10-25 20:13:43
[2026-10-25 20:13:44,221.221 INFO    ] 2026-10-25 20:13:44
[2026-10-25 20:13:44,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:13:44,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:13:44,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:13:44,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:13:44,780.780 INFO    ] time= 25/10/2026 20:13:44
[2026-10-25 20:13:44,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:13:44,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:13:44,902.902 INFO    ] No existing commands found in stream
[2026-10-25 20:13:49,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:13:49,925.925 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 20:13:51,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:13:51,593.593 INFO    ] Checking for system updates...
[2026-10-25 20:13:51,634.634 INFO    ] 200
[2026-10-25 20:13:51,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:51,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:51,700.700 INFO    ] No update needed
[2026-10-25 20:13:51,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 20:13:51,742.742 INFO    ] 200
[2026-10-25 20:13:51,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:13:51,791.791 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:13:51,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:13:51,842.842 INFO    ] No camera update needed
[2026-10-25 20:13:51,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:13:51,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:13:51,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:13:51,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:13:53,898.898 INFO    ] ================================================
[2026-10-25 20:13:53,914.914 INFO    ] Launching Daemon at Sun Oct 25 20:13:53 IST 2026
[2026-10-25 20:13:53,926.926 INFO    ] ================================================
[2026-10-25 20:13:54,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:13:54
[2026-10-25 20:13:55,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:13:55,320.320 INFO    ] Initializing speech engine...
[2026-10-25 20:13:55,342.342 INFO    ] 2026-10-25 20:13:55
[2026-10-25 20:13:55,592.592 INFO    ] 2026-10-25 20:13:55
[2026-10-25 20:13:55,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:13:58,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:13:58,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:13:58,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:13:58,972.972 INFO    ] time= 25/10/2026 20:13:58
[2026-10-25 20:13:58,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:13:58,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:13:59,026.026 INFO    ] No existing commands found in stream
[2026-10-25 20:14:04,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:14:04,037.037 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 20:14:07,342.342 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:14:07,345.345 INFO    ] Checking for system updates...
[2026-10-25 20:14:07,381.381 INFO    ] 200
[2026-10-25 20:14:07,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:07,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:07,454.454 INFO    ] No update needed
[2026-10-25 20:14:07,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 20:14:07,490.490 INFO    ] 200
[2026-10-25 20:14:07,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:07,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:14:07,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:07,587.587 INFO    ] No camera update needed
[2026-10-25 20:14:07,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:14:07,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:14:07,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:14:07,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:14:09,642.642 INFO    ] ================================================
[2026-10-25 20:14:09,658.658 INFO    ] Launching Daemon at Sun Oct 25 20:14:09 IST 2026
[2026-10-25 20:14:09,669.669 INFO    ] ================================================
[2026-10-25 20:14:10,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:14:10
[2026-10-25 20:14:10,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:14:11,125.125 INFO    ] Initializing speech engine...
[2026-10-25 20:14:11,131.131 INFO    ] 2026-10-25 20:14:11
[2026-10-25 20:14:11,393.393 INFO    ] 2026-10-25 20:14:11
[2026-10-25 20:14:11,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:14:11,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:14:11,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:14:11,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:14:11,851.851 INFO    ] time= 25/10/2026 20:14:11
[2026-10-25 20:14:11,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:14:11,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:14:11,994.994 INFO    ] No existing commands found in stream
[2026-10-25 20:14:17,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:14:17,009.009 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 20:14:19,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:14:19,912.912 INFO    ] Checking for system updates...
[2026-10-25 20:14:19,954.954 INFO    ] 200
[2026-10-25 20:14:19,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:20,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:20,013.013 INFO    ] No update needed
[2026-10-25 20:14:20,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 20:14:20,051.051 INFO    ] 200
[2026-10-25 20:14:20,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:20,104.104 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:14:20,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:20,154.154 INFO    ] No camera update needed
[2026-10-25 20:14:20,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:14:20,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:14:20,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:14:20,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:14:22,213.213 INFO    ] ================================================
[2026-10-25 20:14:22,229.229 INFO    ] Launching Daemon at Sun Oct 25 20:14:22 IST 2026
[2026-10-25 20:14:22,240.240 INFO    ] ================================================
[2026-10-25 20:14:22,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:14:22
[2026-10-25 20:14:23,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:14:23,641.641 INFO    ] Initializing speech engine...
[2026-10-25 20:14:23,649.649 INFO    ] 2026-10-25 20:14:23
[2026-10-25 20:14:23,945.945 INFO    ] 2026-10-25 20:14:23
[2026-10-25 20:14:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:14:24,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:14:24,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:14:24,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:14:24,325.325 INFO    ] time= 25/10/2026 20:14:24
[2026-10-25 20:14:24,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:14:24,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:14:24,451.451 INFO    ] No existing commands found in stream
[2026-10-25 20:14:29,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:14:29,467.467 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 20:14:32,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:14:32,794.794 INFO    ] Checking for system updates...
[2026-10-25 20:14:32,834.834 INFO    ] 200
[2026-10-25 20:14:32,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:32,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:32,900.900 INFO    ] No update needed
[2026-10-25 20:14:32,903.903 INFO    ] Checking for camera pi updates...
[2026-10-25 20:14:32,940.940 INFO    ] 200
[2026-10-25 20:14:32,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:32,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:14:33,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:14:33,044.044 INFO    ] No camera update needed
[2026-10-25 20:14:33,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:14:33,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:14:33,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:14:33,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:14:35,101.101 INFO    ] ================================================
[2026-10-25 20:14:35,117.117 INFO    ] Launching Daemon at Sun Oct 25 20:14:35 IST 2026
[2026-10-25 20:14:35,128.128 INFO    ] ================================================
[2026-10-25 20:14:35,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:14:35
[2026-10-25 20:14:36,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:14:36,518.518 INFO    ] Initializing speech engine...
[2026-10-25 20:14:36,527.527 INFO    ] 2026-10-25 20:14:36
[2026-10-25 20:14:36,801.801 INFO    ] 2026-10-25 20:14:36
[2026-10-25 20:14:36,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:14:37,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:14:37,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:14:37,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:14:37,176.176 INFO    ] time= 25/10/2026 20:14:37
[2026-10-25 20:14:37,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:14:37,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:14:37,341.341 INFO    ] No existing commands found in stream
[2026-10-25 20:14:42,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:14:42,374.374 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 20:14:46,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:14:46,034.034 INFO    ] Checking for system updates...
[2026-10-25 20:14:46,070.070 INFO    ] 200
[2026-10-25 20:14:46,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:46,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:14:46,129.129 INFO    ] No update needed
[2026-10-25 20:14:46,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 20:14:46,165.165 INFO    ] 200
[2026-10-25 20:14:46,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:14:46,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:14:46,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:14:46,263.263 INFO    ] No camera update needed
[2026-10-25 20:14:46,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:14:46,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:14:46,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:14:46,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:14:48,317.317 INFO    ] ================================================
[2026-10-25 20:14:48,333.333 INFO    ] Launching Daemon at Sun Oct 25 20:14:48 IST 2026
[2026-10-25 20:14:48,345.345 INFO    ] ================================================
[2026-10-25 20:14:49,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:14:48
[2026-10-25 20:14:49,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:14:49,981.981 INFO    ] Initializing speech engine...
[2026-10-25 20:14:49,990.990 INFO    ] 2026-10-25 20:14:49
[2026-10-25 20:14:50,265.265 INFO    ] 2026-10-25 20:14:50
[2026-10-25 20:14:50,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:14:50,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:14:50,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:14:50,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:14:50,826.826 INFO    ] time= 25/10/2026 20:14:50
[2026-10-25 20:14:50,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:14:50,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:14:50,969.969 INFO    ] No existing commands found in stream
[2026-10-25 20:14:55,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:14:55,999.999 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 20:15:00,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:15:00,285.285 INFO    ] Checking for system updates...
[2026-10-25 20:15:00,327.327 INFO    ] 200
[2026-10-25 20:15:00,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:00,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:15:00,396.396 INFO    ] No update needed
[2026-10-25 20:15:00,399.399 INFO    ] Checking for camera pi updates...
[2026-10-25 20:15:00,439.439 INFO    ] 200
[2026-10-25 20:15:00,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:00,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:15:00,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:15:00,542.542 INFO    ] No camera update needed
[2026-10-25 20:15:00,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:15:00,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:15:00,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:15:00,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:15:02,619.619 INFO    ] ================================================
[2026-10-25 20:15:02,637.637 INFO    ] Launching Daemon at Sun Oct 25 20:15:02 IST 2026
[2026-10-25 20:15:02,650.650 INFO    ] ================================================
[2026-10-25 20:15:03,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:15:03
[2026-10-25 20:15:03,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:15:04,178.178 INFO    ] Initializing speech engine...
[2026-10-25 20:15:04,186.186 INFO    ] 2026-10-25 20:15:04
[2026-10-25 20:15:04,477.477 INFO    ] 2026-10-25 20:15:04
[2026-10-25 20:15:04,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:15:04,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:15:04,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:15:04,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:15:04,852.852 INFO    ] time= 25/10/2026 20:15:04
[2026-10-25 20:15:04,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:15:04,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:15:04,974.974 INFO    ] No existing commands found in stream
[2026-10-25 20:15:09,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:15:09,989.989 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 20:15:14,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:15:14,323.323 INFO    ] Checking for system updates...
[2026-10-25 20:15:14,367.367 INFO    ] 200
[2026-10-25 20:15:14,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:14,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:14,445.445 INFO    ] No update needed
[2026-10-25 20:15:14,448.448 INFO    ] Checking for camera pi updates...
[2026-10-25 20:15:14,489.489 INFO    ] 200
[2026-10-25 20:15:14,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:14,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:15:14,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:14,617.617 INFO    ] No camera update needed
[2026-10-25 20:15:14,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:15:14,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:15:14,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:15:14,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:15:16,685.685 INFO    ] ================================================
[2026-10-25 20:15:16,702.702 INFO    ] Launching Daemon at Sun Oct 25 20:15:16 IST 2026
[2026-10-25 20:15:16,714.714 INFO    ] ================================================
[2026-10-25 20:15:17,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:15:17
[2026-10-25 20:15:17,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:15:18,242.242 INFO    ] Initializing speech engine...
[2026-10-25 20:15:18,250.250 INFO    ] 2026-10-25 20:15:18
[2026-10-25 20:15:18,523.523 INFO    ] 2026-10-25 20:15:18
[2026-10-25 20:15:18,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:15:18,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:15:18,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:15:18,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:15:19,059.059 INFO    ] time= 25/10/2026 20:15:18
[2026-10-25 20:15:19,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:15:19,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:15:19,239.239 INFO    ] No existing commands found in stream
[2026-10-25 20:15:24,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:15:24,265.265 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 20:15:24,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:15:24,868.868 INFO    ] Checking for system updates...
[2026-10-25 20:15:24,908.908 INFO    ] 200
[2026-10-25 20:15:24,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:24,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:15:24,966.966 INFO    ] No update needed
[2026-10-25 20:15:24,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 20:15:25,002.002 INFO    ] 200
[2026-10-25 20:15:25,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:25,045.045 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:15:25,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:15:25,100.100 INFO    ] No camera update needed
[2026-10-25 20:15:25,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:15:25,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:15:25,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:15:25,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:15:27,157.157 INFO    ] ================================================
[2026-10-25 20:15:27,173.173 INFO    ] Launching Daemon at Sun Oct 25 20:15:27 IST 2026
[2026-10-25 20:15:27,184.184 INFO    ] ================================================
[2026-10-25 20:15:27,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:15:27
[2026-10-25 20:15:28,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:15:28,783.783 INFO    ] Initializing speech engine...
[2026-10-25 20:15:28,796.796 INFO    ] 2026-10-25 20:15:28
[2026-10-25 20:15:29,073.073 INFO    ] 2026-10-25 20:15:29
[2026-10-25 20:15:29,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:15:31,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:15:31,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:15:31,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:15:31,546.546 INFO    ] time= 25/10/2026 20:15:31
[2026-10-25 20:15:31,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:15:31,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:15:31,617.617 INFO    ] No existing commands found in stream
[2026-10-25 20:15:36,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:15:36,632.632 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 20:15:39,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:15:39,966.966 INFO    ] Checking for system updates...
[2026-10-25 20:15:40,004.004 INFO    ] 200
[2026-10-25 20:15:40,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:40,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:40,071.071 INFO    ] No update needed
[2026-10-25 20:15:40,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 20:15:40,114.114 INFO    ] 200
[2026-10-25 20:15:40,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:40,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:15:40,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:40,219.219 INFO    ] No camera update needed
[2026-10-25 20:15:40,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:15:40,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:15:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:15:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:15:42,279.279 INFO    ] ================================================
[2026-10-25 20:15:42,294.294 INFO    ] Launching Daemon at Sun Oct 25 20:15:42 IST 2026
[2026-10-25 20:15:42,306.306 INFO    ] ================================================
[2026-10-25 20:15:42,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:15:42
[2026-10-25 20:15:43,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:15:43,750.750 INFO    ] Initializing speech engine...
[2026-10-25 20:15:43,759.759 INFO    ] 2026-10-25 20:15:43
[2026-10-25 20:15:44,008.008 INFO    ] 2026-10-25 20:15:44
[2026-10-25 20:15:44,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:15:44,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:15:44,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:15:44,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:15:44,384.384 INFO    ] time= 25/10/2026 20:15:44
[2026-10-25 20:15:44,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:15:44,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:15:44,545.545 INFO    ] No existing commands found in stream
[2026-10-25 20:15:49,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:15:49,573.573 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 20:15:53,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:15:53,480.480 INFO    ] Checking for system updates...
[2026-10-25 20:15:53,517.517 INFO    ] 200
[2026-10-25 20:15:53,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:53,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:53,581.581 INFO    ] No update needed
[2026-10-25 20:15:53,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 20:15:53,617.617 INFO    ] 200
[2026-10-25 20:15:53,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:15:53,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:15:53,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:15:53,719.719 INFO    ] No camera update needed
[2026-10-25 20:15:53,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:15:53,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:15:53,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:15:53,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:15:55,775.775 INFO    ] ================================================
[2026-10-25 20:15:55,791.791 INFO    ] Launching Daemon at Sun Oct 25 20:15:55 IST 2026
[2026-10-25 20:15:55,803.803 INFO    ] ================================================
[2026-10-25 20:15:56,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:15:56
[2026-10-25 20:15:57,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:15:57,266.266 INFO    ] Initializing speech engine...
[2026-10-25 20:15:57,292.292 INFO    ] 2026-10-25 20:15:57
[2026-10-25 20:15:57,548.548 INFO    ] 2026-10-25 20:15:57
[2026-10-25 20:15:57,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:15:57,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:15:57,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:16:00,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:16:00,983.983 INFO    ] time= 25/10/2026 20:16:00
[2026-10-25 20:16:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:16:00,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:16:01,033.033 INFO    ] No existing commands found in stream
[2026-10-25 20:16:06,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:16:06,045.045 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 20:16:08,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:16:08,136.136 INFO    ] Checking for system updates...
[2026-10-25 20:16:08,178.178 INFO    ] 200
[2026-10-25 20:16:08,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:08,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:16:08,246.246 INFO    ] No update needed
[2026-10-25 20:16:08,248.248 INFO    ] Checking for camera pi updates...
[2026-10-25 20:16:08,283.283 INFO    ] 200
[2026-10-25 20:16:08,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:08,326.326 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:16:08,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:16:08,377.377 INFO    ] No camera update needed
[2026-10-25 20:16:08,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:16:08,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:16:08,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:16:08,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:16:10,436.436 INFO    ] ================================================
[2026-10-25 20:16:10,451.451 INFO    ] Launching Daemon at Sun Oct 25 20:16:10 IST 2026
[2026-10-25 20:16:10,463.463 INFO    ] ================================================
[2026-10-25 20:16:11,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:16:11
[2026-10-25 20:16:11,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:16:12,104.104 INFO    ] Initializing speech engine...
[2026-10-25 20:16:12,117.117 INFO    ] 2026-10-25 20:16:12
[2026-10-25 20:16:12,410.410 INFO    ] 2026-10-25 20:16:12
[2026-10-25 20:16:12,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:16:12,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:16:12,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:16:12,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:16:12,960.960 INFO    ] time= 25/10/2026 20:16:12
[2026-10-25 20:16:12,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:16:13,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:16:13,120.120 INFO    ] No existing commands found in stream
[2026-10-25 20:16:18,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:16:18,146.146 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 20:16:20,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:16:20,778.778 INFO    ] Checking for system updates...
[2026-10-25 20:16:20,816.816 INFO    ] 200
[2026-10-25 20:16:20,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:20,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:16:20,886.886 INFO    ] No update needed
[2026-10-25 20:16:20,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 20:16:20,924.924 INFO    ] 200
[2026-10-25 20:16:20,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:20,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:16:21,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:16:21,027.027 INFO    ] No camera update needed
[2026-10-25 20:16:21,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:16:21,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:16:21,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:16:21,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:16:23,085.085 INFO    ] ================================================
[2026-10-25 20:16:23,101.101 INFO    ] Launching Daemon at Sun Oct 25 20:16:23 IST 2026
[2026-10-25 20:16:23,112.112 INFO    ] ================================================
[2026-10-25 20:16:23,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:16:23
[2026-10-25 20:16:24,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:16:24,577.577 INFO    ] Initializing speech engine...
[2026-10-25 20:16:24,586.586 INFO    ] 2026-10-25 20:16:24
[2026-10-25 20:16:24,845.845 INFO    ] 2026-10-25 20:16:24
[2026-10-25 20:16:24,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:16:25,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:16:25,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:16:25,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:16:25,313.313 INFO    ] time= 25/10/2026 20:16:25
[2026-10-25 20:16:25,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:16:25,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:16:25,523.523 INFO    ] No existing commands found in stream
[2026-10-25 20:16:30,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:16:30,551.551 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 20:16:32,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:16:32,348.348 INFO    ] Checking for system updates...
[2026-10-25 20:16:32,386.386 INFO    ] 200
[2026-10-25 20:16:32,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:32,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:32,461.461 INFO    ] No update needed
[2026-10-25 20:16:32,464.464 INFO    ] Checking for camera pi updates...
[2026-10-25 20:16:32,502.502 INFO    ] 200
[2026-10-25 20:16:32,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:32,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:16:32,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:32,602.602 INFO    ] No camera update needed
[2026-10-25 20:16:32,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:16:32,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:16:32,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:16:32,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:16:34,662.662 INFO    ] ================================================
[2026-10-25 20:16:34,678.678 INFO    ] Launching Daemon at Sun Oct 25 20:16:34 IST 2026
[2026-10-25 20:16:34,690.690 INFO    ] ================================================
[2026-10-25 20:16:35,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:16:35
[2026-10-25 20:16:35,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:16:36,106.106 INFO    ] Initializing speech engine...
[2026-10-25 20:16:36,115.115 INFO    ] 2026-10-25 20:16:36
[2026-10-25 20:16:36,366.366 INFO    ] 2026-10-25 20:16:36
[2026-10-25 20:16:36,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:16:36,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:16:36,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:16:36,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:16:36,746.746 INFO    ] time= 25/10/2026 20:16:36
[2026-10-25 20:16:36,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:16:36,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:16:36,908.908 INFO    ] No existing commands found in stream
[2026-10-25 20:16:41,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:16:41,935.935 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-25 20:16:43,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:16:43,678.678 INFO    ] Checking for system updates...
[2026-10-25 20:16:43,715.715 INFO    ] 200
[2026-10-25 20:16:43,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:43,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:43,773.773 INFO    ] No update needed
[2026-10-25 20:16:43,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 20:16:43,813.813 INFO    ] 200
[2026-10-25 20:16:43,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:43,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:16:43,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:43,910.910 INFO    ] No camera update needed
[2026-10-25 20:16:43,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:16:43,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:16:43,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:16:43,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:16:45,967.967 INFO    ] ================================================
[2026-10-25 20:16:45,983.983 INFO    ] Launching Daemon at Sun Oct 25 20:16:45 IST 2026
[2026-10-25 20:16:45,994.994 INFO    ] ================================================
[2026-10-25 20:16:46,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:16:46
[2026-10-25 20:16:47,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:16:47,411.411 INFO    ] Initializing speech engine...
[2026-10-25 20:16:47,419.419 INFO    ] 2026-10-25 20:16:47
[2026-10-25 20:16:47,717.717 INFO    ] 2026-10-25 20:16:47
[2026-10-25 20:16:47,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:16:48,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:16:48,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:16:48,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:16:48,340.340 INFO    ] time= 25/10/2026 20:16:48
[2026-10-25 20:16:48,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:16:48,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:16:48,526.526 INFO    ] No existing commands found in stream
[2026-10-25 20:16:53,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:16:53,564.564 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 20:16:55,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:16:55,767.767 INFO    ] Checking for system updates...
[2026-10-25 20:16:55,804.804 INFO    ] 200
[2026-10-25 20:16:55,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:55,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:55,865.865 INFO    ] No update needed
[2026-10-25 20:16:55,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 20:16:55,908.908 INFO    ] 200
[2026-10-25 20:16:55,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:16:55,954.954 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:16:56,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:16:56,004.004 INFO    ] No camera update needed
[2026-10-25 20:16:56,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:16:56,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:16:56,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:16:56,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:16:58,064.064 INFO    ] ================================================
[2026-10-25 20:16:58,080.080 INFO    ] Launching Daemon at Sun Oct 25 20:16:58 IST 2026
[2026-10-25 20:16:58,091.091 INFO    ] ================================================
[2026-10-25 20:16:58,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:16:58
[2026-10-25 20:16:59,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:16:59,684.684 INFO    ] Initializing speech engine...
[2026-10-25 20:16:59,690.690 INFO    ] 2026-10-25 20:16:59
[2026-10-25 20:16:59,987.987 INFO    ] 2026-10-25 20:16:59
[2026-10-25 20:17:00,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:17:02,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:17:02,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:17:03,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:17:03,222.222 INFO    ] time= 25/10/2026 20:17:03
[2026-10-25 20:17:03,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:17:03,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:17:03,397.397 INFO    ] No existing commands found in stream
[2026-10-25 20:17:08,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:17:08,410.410 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 20:17:11,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:17:11,858.858 INFO    ] Checking for system updates...
[2026-10-25 20:17:11,899.899 INFO    ] 200
[2026-10-25 20:17:11,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:11,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:11,957.957 INFO    ] No update needed
[2026-10-25 20:17:11,960.960 INFO    ] Checking for camera pi updates...
[2026-10-25 20:17:11,998.998 INFO    ] 200
[2026-10-25 20:17:12,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:12,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:17:12,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:12,102.102 INFO    ] No camera update needed
[2026-10-25 20:17:12,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:17:12,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:17:12,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:17:12,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:17:14,157.157 INFO    ] ================================================
[2026-10-25 20:17:14,173.173 INFO    ] Launching Daemon at Sun Oct 25 20:17:14 IST 2026
[2026-10-25 20:17:14,184.184 INFO    ] ================================================
[2026-10-25 20:17:14,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:17:14
[2026-10-25 20:17:15,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:17:15,849.849 INFO    ] Initializing speech engine...
[2026-10-25 20:17:15,862.862 INFO    ] 2026-10-25 20:17:15
[2026-10-25 20:17:16,143.143 INFO    ] 2026-10-25 20:17:16
[2026-10-25 20:17:16,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:17:16,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:17:16,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:17:16,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:17:16,699.699 INFO    ] time= 25/10/2026 20:17:16
[2026-10-25 20:17:16,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:17:16,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:17:16,837.837 INFO    ] No existing commands found in stream
[2026-10-25 20:17:21,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:17:21,879.879 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 20:17:25,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:17:25,333.333 INFO    ] Checking for system updates...
[2026-10-25 20:17:25,368.368 INFO    ] 200
[2026-10-25 20:17:25,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:25,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:25,434.434 INFO    ] No update needed
[2026-10-25 20:17:25,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 20:17:25,471.471 INFO    ] 200
[2026-10-25 20:17:25,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:25,514.514 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:17:25,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:25,566.566 INFO    ] No camera update needed
[2026-10-25 20:17:25,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:17:25,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:17:25,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:17:25,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:17:27,621.621 INFO    ] ================================================
[2026-10-25 20:17:27,637.637 INFO    ] Launching Daemon at Sun Oct 25 20:17:27 IST 2026
[2026-10-25 20:17:27,649.649 INFO    ] ================================================
[2026-10-25 20:17:28,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:17:28
[2026-10-25 20:17:28,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:17:29,100.100 INFO    ] Initializing speech engine...
[2026-10-25 20:17:29,109.109 INFO    ] 2026-10-25 20:17:29
[2026-10-25 20:17:29,358.358 INFO    ] 2026-10-25 20:17:29
[2026-10-25 20:17:29,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:17:29,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:17:29,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:17:29,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:17:29,828.828 INFO    ] time= 25/10/2026 20:17:29
[2026-10-25 20:17:29,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:17:29,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:17:29,991.991 INFO    ] No existing commands found in stream
[2026-10-25 20:17:35,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:17:35,029.029 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 20:17:38,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:17:38,034.034 INFO    ] Checking for system updates...
[2026-10-25 20:17:38,071.071 INFO    ] 200
[2026-10-25 20:17:38,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:38,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:38,129.129 INFO    ] No update needed
[2026-10-25 20:17:38,132.132 INFO    ] Checking for camera pi updates...
[2026-10-25 20:17:38,166.166 INFO    ] 200
[2026-10-25 20:17:38,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:38,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:17:38,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:17:38,455.455 INFO    ] No camera update needed
[2026-10-25 20:17:38,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:17:38,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:17:38,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:17:38,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:17:40,512.512 INFO    ] ================================================
[2026-10-25 20:17:40,528.528 INFO    ] Launching Daemon at Sun Oct 25 20:17:40 IST 2026
[2026-10-25 20:17:40,539.539 INFO    ] ================================================
[2026-10-25 20:17:41,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:17:41
[2026-10-25 20:17:41,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:17:42,034.034 INFO    ] Initializing speech engine...
[2026-10-25 20:17:42,051.051 INFO    ] 2026-10-25 20:17:42
[2026-10-25 20:17:42,340.340 INFO    ] 2026-10-25 20:17:42
[2026-10-25 20:17:42,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:17:42,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:17:42,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:17:42,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:17:42,872.872 INFO    ] time= 25/10/2026 20:17:42
[2026-10-25 20:17:42,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:17:42,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:17:43,056.056 INFO    ] No existing commands found in stream
[2026-10-25 20:17:48,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:17:48,089.089 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-25 20:17:51,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:17:51,467.467 INFO    ] Checking for system updates...
[2026-10-25 20:17:51,503.503 INFO    ] 200
[2026-10-25 20:17:51,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:51,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:17:51,562.562 INFO    ] No update needed
[2026-10-25 20:17:51,564.564 INFO    ] Checking for camera pi updates...
[2026-10-25 20:17:51,598.598 INFO    ] 200
[2026-10-25 20:17:51,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:17:51,648.648 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:17:51,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:17:51,703.703 INFO    ] No camera update needed
[2026-10-25 20:17:51,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:17:51,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:17:51,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:17:51,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:17:53,762.762 INFO    ] ================================================
[2026-10-25 20:17:53,779.779 INFO    ] Launching Daemon at Sun Oct 25 20:17:53 IST 2026
[2026-10-25 20:17:53,790.790 INFO    ] ================================================
[2026-10-25 20:17:54,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:17:54
[2026-10-25 20:17:54,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:17:55,265.265 INFO    ] Initializing speech engine...
[2026-10-25 20:17:55,275.275 INFO    ] 2026-10-25 20:17:55
[2026-10-25 20:17:55,542.542 INFO    ] 2026-10-25 20:17:55
[2026-10-25 20:17:55,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:17:55,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:17:55,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:17:55,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:17:55,923.923 INFO    ] time= 25/10/2026 20:17:55
[2026-10-25 20:17:55,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:17:55,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:17:56,049.049 INFO    ] No existing commands found in stream
[2026-10-25 20:18:01,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:18:01,065.065 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 20:18:07,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:18:07,081.081 INFO    ] Checking for system updates...
[2026-10-25 20:18:07,118.118 INFO    ] 200
[2026-10-25 20:18:07,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:07,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:18:07,182.182 INFO    ] No update needed
[2026-10-25 20:18:07,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 20:18:07,218.218 INFO    ] 200
[2026-10-25 20:18:07,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:07,261.261 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:18:07,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:18:07,311.311 INFO    ] No camera update needed
[2026-10-25 20:18:07,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:18:07,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:18:07,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:18:07,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:18:09,367.367 INFO    ] ================================================
[2026-10-25 20:18:09,382.382 INFO    ] Launching Daemon at Sun Oct 25 20:18:09 IST 2026
[2026-10-25 20:18:09,394.394 INFO    ] ================================================
[2026-10-25 20:18:09,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:18:09
[2026-10-25 20:18:10,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:18:10,843.843 INFO    ] Initializing speech engine...
[2026-10-25 20:18:10,861.861 INFO    ] 2026-10-25 20:18:10
[2026-10-25 20:18:11,132.132 INFO    ] 2026-10-25 20:18:11
[2026-10-25 20:18:11,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:18:11,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:18:11,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:18:11,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:18:11,545.545 INFO    ] time= 25/10/2026 20:18:11
[2026-10-25 20:18:11,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:18:11,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:18:11,708.708 INFO    ] No existing commands found in stream
[2026-10-25 20:18:16,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:18:16,736.736 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 20:18:19,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:18:19,751.751 INFO    ] Checking for system updates...
[2026-10-25 20:18:19,791.791 INFO    ] 200
[2026-10-25 20:18:19,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:19,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:19,856.856 INFO    ] No update needed
[2026-10-25 20:18:19,858.858 INFO    ] Checking for camera pi updates...
[2026-10-25 20:18:19,892.892 INFO    ] 200
[2026-10-25 20:18:19,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:19,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:18:19,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:19,997.997 INFO    ] No camera update needed
[2026-10-25 20:18:19,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:18:20,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:18:20,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:18:20,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:18:22,052.052 INFO    ] ================================================
[2026-10-25 20:18:22,067.067 INFO    ] Launching Daemon at Sun Oct 25 20:18:22 IST 2026
[2026-10-25 20:18:22,079.079 INFO    ] ================================================
[2026-10-25 20:18:22,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:18:22
[2026-10-25 20:18:23,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:18:23,522.522 INFO    ] Initializing speech engine...
[2026-10-25 20:18:23,534.534 INFO    ] 2026-10-25 20:18:23
[2026-10-25 20:18:23,788.788 INFO    ] 2026-10-25 20:18:23
[2026-10-25 20:18:23,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:18:24,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:18:24,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:18:24,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:18:24,269.269 INFO    ] time= 25/10/2026 20:18:24
[2026-10-25 20:18:24,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:18:24,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:18:24,409.409 INFO    ] No existing commands found in stream
[2026-10-25 20:18:29,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:18:29,424.424 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 20:18:29,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:18:29,900.900 INFO    ] Checking for system updates...
[2026-10-25 20:18:29,939.939 INFO    ] 200
[2026-10-25 20:18:29,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:29,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:29,999.999 INFO    ] No update needed
[2026-10-25 20:18:30,001.001 INFO    ] Checking for camera pi updates...
[2026-10-25 20:18:30,036.036 INFO    ] 200
[2026-10-25 20:18:30,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:30,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:18:30,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:30,137.137 INFO    ] No camera update needed
[2026-10-25 20:18:30,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:18:30,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:18:30,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:18:30,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:18:32,200.200 INFO    ] ================================================
[2026-10-25 20:18:32,215.215 INFO    ] Launching Daemon at Sun Oct 25 20:18:32 IST 2026
[2026-10-25 20:18:32,227.227 INFO    ] ================================================
[2026-10-25 20:18:32,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:18:32
[2026-10-25 20:18:33,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:18:33,679.679 INFO    ] Initializing speech engine...
[2026-10-25 20:18:33,695.695 INFO    ] 2026-10-25 20:18:33
[2026-10-25 20:18:33,968.968 INFO    ] 2026-10-25 20:18:33
[2026-10-25 20:18:34,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:18:36,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:18:36,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:18:37,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:18:37,732.732 INFO    ] time= 25/10/2026 20:18:37
[2026-10-25 20:18:37,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:18:37,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:18:37,786.786 INFO    ] No existing commands found in stream
[2026-10-25 20:18:42,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:18:42,797.797 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 20:18:43,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:18:43,602.602 INFO    ] Checking for system updates...
[2026-10-25 20:18:43,642.642 INFO    ] 200
[2026-10-25 20:18:43,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:43,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:43,714.714 INFO    ] No update needed
[2026-10-25 20:18:43,716.716 INFO    ] Checking for camera pi updates...
[2026-10-25 20:18:43,750.750 INFO    ] 200
[2026-10-25 20:18:43,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:43,797.797 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:18:43,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:18:43,858.858 INFO    ] No camera update needed
[2026-10-25 20:18:43,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:18:43,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:18:43,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:18:43,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:18:45,914.914 INFO    ] ================================================
[2026-10-25 20:18:45,930.930 INFO    ] Launching Daemon at Sun Oct 25 20:18:45 IST 2026
[2026-10-25 20:18:45,942.942 INFO    ] ================================================
[2026-10-25 20:18:46,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:18:46
[2026-10-25 20:18:47,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:18:47,549.549 INFO    ] Initializing speech engine...
[2026-10-25 20:18:47,561.561 INFO    ] 2026-10-25 20:18:47
[2026-10-25 20:18:47,827.827 INFO    ] 2026-10-25 20:18:47
[2026-10-25 20:18:47,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:18:48,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:18:48,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:18:48,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:18:48,293.293 INFO    ] time= 25/10/2026 20:18:48
[2026-10-25 20:18:48,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:18:48,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:18:48,503.503 INFO    ] No existing commands found in stream
[2026-10-25 20:18:53,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:18:53,537.537 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 20:18:56,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:18:56,590.590 INFO    ] Checking for system updates...
[2026-10-25 20:18:56,632.632 INFO    ] 200
[2026-10-25 20:18:56,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:56,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:18:56,696.696 INFO    ] No update needed
[2026-10-25 20:18:56,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 20:18:56,733.733 INFO    ] 200
[2026-10-25 20:18:56,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:18:56,778.778 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:18:56,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:18:56,831.831 INFO    ] No camera update needed
[2026-10-25 20:18:56,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:18:56,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:18:56,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:18:56,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:18:58,892.892 INFO    ] ================================================
[2026-10-25 20:18:58,908.908 INFO    ] Launching Daemon at Sun Oct 25 20:18:58 IST 2026
[2026-10-25 20:18:58,919.919 INFO    ] ================================================
[2026-10-25 20:18:59,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:18:59
[2026-10-25 20:19:00,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:00,527.527 INFO    ] Initializing speech engine...
[2026-10-25 20:19:00,536.536 INFO    ] 2026-10-25 20:19:00
[2026-10-25 20:19:00,824.824 INFO    ] 2026-10-25 20:19:00
[2026-10-25 20:19:00,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:19:01,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:19:01,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:19:01,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:19:01,273.273 INFO    ] time= 25/10/2026 20:19:01
[2026-10-25 20:19:01,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:19:01,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:19:01,389.389 INFO    ] No existing commands found in stream
[2026-10-25 20:19:06,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:19:06,412.412 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 20:19:08,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:19:08,798.798 INFO    ] Checking for system updates...
[2026-10-25 20:19:08,838.838 INFO    ] 200
[2026-10-25 20:19:08,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:08,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:08,899.899 INFO    ] No update needed
[2026-10-25 20:19:08,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 20:19:08,937.937 INFO    ] 200
[2026-10-25 20:19:08,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:08,981.981 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:19:09,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:09,044.044 INFO    ] No camera update needed
[2026-10-25 20:19:09,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:19:09,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:19:09,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:19:09,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:19:11,099.099 INFO    ] ================================================
[2026-10-25 20:19:11,114.114 INFO    ] Launching Daemon at Sun Oct 25 20:19:11 IST 2026
[2026-10-25 20:19:11,124.124 INFO    ] ================================================
[2026-10-25 20:19:11,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:19:11
[2026-10-25 20:19:12,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:12,557.557 INFO    ] Initializing speech engine...
[2026-10-25 20:19:12,579.579 INFO    ] 2026-10-25 20:19:12
[2026-10-25 20:19:12,833.833 INFO    ] 2026-10-25 20:19:12
[2026-10-25 20:19:12,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:19:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:19:13,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:19:13,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:19:13,314.314 INFO    ] time= 25/10/2026 20:19:13
[2026-10-25 20:19:13,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:19:13,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:19:13,456.456 INFO    ] No existing commands found in stream
[2026-10-25 20:19:18,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:19:18,479.479 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 20:19:19,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:19:19,097.097 INFO    ] Checking for system updates...
[2026-10-25 20:19:19,137.137 INFO    ] 200
[2026-10-25 20:19:19,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:19,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:19,204.204 INFO    ] No update needed
[2026-10-25 20:19:19,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 20:19:19,246.246 INFO    ] 200
[2026-10-25 20:19:19,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:19,291.291 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:19:19,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:19,357.357 INFO    ] No camera update needed
[2026-10-25 20:19:19,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:19:19,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:19:19,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:19:19,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:19:21,417.417 INFO    ] ================================================
[2026-10-25 20:19:21,432.432 INFO    ] Launching Daemon at Sun Oct 25 20:19:21 IST 2026
[2026-10-25 20:19:21,443.443 INFO    ] ================================================
[2026-10-25 20:19:22,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:19:22
[2026-10-25 20:19:22,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:22,857.857 INFO    ] Initializing speech engine...
[2026-10-25 20:19:22,875.875 INFO    ] 2026-10-25 20:19:22
[2026-10-25 20:19:23,125.125 INFO    ] 2026-10-25 20:19:23
[2026-10-25 20:19:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:19:23,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:19:23,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:19:23,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:19:23,603.603 INFO    ] time= 25/10/2026 20:19:23
[2026-10-25 20:19:23,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:19:23,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:19:23,736.736 INFO    ] No existing commands found in stream
[2026-10-25 20:19:28,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:19:28,750.750 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 20:19:29,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:19:29,714.714 INFO    ] Checking for system updates...
[2026-10-25 20:19:29,750.750 INFO    ] 200
[2026-10-25 20:19:29,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:29,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:19:29,809.809 INFO    ] No update needed
[2026-10-25 20:19:29,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 20:19:29,845.845 INFO    ] 200
[2026-10-25 20:19:29,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:29,888.888 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:19:29,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:19:29,938.938 INFO    ] No camera update needed
[2026-10-25 20:19:29,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:19:29,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:19:29,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:19:29,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:19:32,995.995 INFO    ] ================================================
[2026-10-25 20:19:32,011.011 INFO    ] Launching Daemon at Sun Oct 25 20:19:32 IST 2026
[2026-10-25 20:19:32,023.023 INFO    ] ================================================
[2026-10-25 20:19:32,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:19:32
[2026-10-25 20:19:33,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:33,471.471 INFO    ] Initializing speech engine...
[2026-10-25 20:19:33,484.484 INFO    ] 2026-10-25 20:19:33
[2026-10-25 20:19:33,753.753 INFO    ] 2026-10-25 20:19:33
[2026-10-25 20:19:33,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:19:33,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:19:34,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:19:34,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:19:34,136.136 INFO    ] time= 25/10/2026 20:19:34
[2026-10-25 20:19:34,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:19:34,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:19:34,262.262 INFO    ] No existing commands found in stream
[2026-10-25 20:19:39,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:19:39,276.276 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 20:19:41,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:19:41,802.802 INFO    ] Checking for system updates...
[2026-10-25 20:19:41,839.839 INFO    ] 200
[2026-10-25 20:19:41,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:41,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:19:41,901.901 INFO    ] No update needed
[2026-10-25 20:19:41,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 20:19:41,940.940 INFO    ] 200
[2026-10-25 20:19:41,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:41,990.990 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:19:42,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:19:42,144.144 INFO    ] No camera update needed
[2026-10-25 20:19:42,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:19:42,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:19:42,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:19:42,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:19:44,208.208 INFO    ] ================================================
[2026-10-25 20:19:44,226.226 INFO    ] Launching Daemon at Sun Oct 25 20:19:44 IST 2026
[2026-10-25 20:19:44,238.238 INFO    ] ================================================
[2026-10-25 20:19:44,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:19:44
[2026-10-25 20:19:45,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:45,879.879 INFO    ] Initializing speech engine...
[2026-10-25 20:19:45,886.886 INFO    ] 2026-10-25 20:19:45
[2026-10-25 20:19:46,170.170 INFO    ] 2026-10-25 20:19:46
[2026-10-25 20:19:46,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:19:46,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:19:46,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:19:46,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:19:46,614.614 INFO    ] time= 25/10/2026 20:19:46
[2026-10-25 20:19:46,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:19:46,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:19:46,833.833 INFO    ] No existing commands found in stream
[2026-10-25 20:19:51,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:19:51,860.860 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 20:19:55,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:19:55,594.594 INFO    ] Checking for system updates...
[2026-10-25 20:19:55,631.631 INFO    ] 200
[2026-10-25 20:19:55,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:55,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:55,689.689 INFO    ] No update needed
[2026-10-25 20:19:55,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 20:19:55,725.725 INFO    ] 200
[2026-10-25 20:19:55,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:19:55,768.768 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:19:55,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:19:55,821.821 INFO    ] No camera update needed
[2026-10-25 20:19:55,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:19:55,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:19:55,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:19:55,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:19:57,875.875 INFO    ] ================================================
[2026-10-25 20:19:57,891.891 INFO    ] Launching Daemon at Sun Oct 25 20:19:57 IST 2026
[2026-10-25 20:19:57,902.902 INFO    ] ================================================
[2026-10-25 20:19:58,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:19:58
[2026-10-25 20:19:59,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:19:59,543.543 INFO    ] Initializing speech engine...
[2026-10-25 20:19:59,551.551 INFO    ] 2026-10-25 20:19:59
[2026-10-25 20:19:59,824.824 INFO    ] 2026-10-25 20:19:59
[2026-10-25 20:19:59,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:20:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:20:00,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:20:00,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:20:00,303.303 INFO    ] time= 25/10/2026 20:20:00
[2026-10-25 20:20:00,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:20:00,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:20:00,457.457 INFO    ] No existing commands found in stream
[2026-10-25 20:20:05,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:20:05,473.473 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 20:20:09,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:20:09,995.995 INFO    ] Checking for system updates...
[2026-10-25 20:20:10,033.033 INFO    ] 200
[2026-10-25 20:20:10,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:10,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:20:10,093.093 INFO    ] No update needed
[2026-10-25 20:20:10,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 20:20:10,130.130 INFO    ] 200
[2026-10-25 20:20:10,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:10,173.173 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:20:10,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:20:10,230.230 INFO    ] No camera update needed
[2026-10-25 20:20:10,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:20:10,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:20:10,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:20:10,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:20:12,287.287 INFO    ] ================================================
[2026-10-25 20:20:12,303.303 INFO    ] Launching Daemon at Sun Oct 25 20:20:12 IST 2026
[2026-10-25 20:20:12,314.314 INFO    ] ================================================
[2026-10-25 20:20:12,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:20:12
[2026-10-25 20:20:13,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:20:13,948.948 INFO    ] Initializing speech engine...
[2026-10-25 20:20:13,956.956 INFO    ] 2026-10-25 20:20:13
[2026-10-25 20:20:14,244.244 INFO    ] 2026-10-25 20:20:14
[2026-10-25 20:20:14,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:20:14,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:20:14,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:20:14,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:20:14,718.718 INFO    ] time= 25/10/2026 20:20:14
[2026-10-25 20:20:14,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:20:14,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:20:14,907.907 INFO    ] No existing commands found in stream
[2026-10-25 20:20:19,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:20:19,938.938 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 20:20:24,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:20:24,065.065 INFO    ] Checking for system updates...
[2026-10-25 20:20:24,108.108 INFO    ] 200
[2026-10-25 20:20:24,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:24,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:20:24,184.184 INFO    ] No update needed
[2026-10-25 20:20:24,187.187 INFO    ] Checking for camera pi updates...
[2026-10-25 20:20:24,222.222 INFO    ] 200
[2026-10-25 20:20:24,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:24,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:20:24,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:20:24,319.319 INFO    ] No camera update needed
[2026-10-25 20:20:24,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:20:24,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:20:24,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:20:24,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:20:26,378.378 INFO    ] ================================================
[2026-10-25 20:20:26,394.394 INFO    ] Launching Daemon at Sun Oct 25 20:20:26 IST 2026
[2026-10-25 20:20:26,409.409 INFO    ] ================================================
[2026-10-25 20:20:27,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:20:27
[2026-10-25 20:20:27,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:20:28,048.048 INFO    ] Initializing speech engine...
[2026-10-25 20:20:28,059.059 INFO    ] 2026-10-25 20:20:28
[2026-10-25 20:20:28,365.365 INFO    ] 2026-10-25 20:20:28
[2026-10-25 20:20:28,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:20:28,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:20:28,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:20:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:20:28,875.875 INFO    ] time= 25/10/2026 20:20:28
[2026-10-25 20:20:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:20:28,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:20:29,029.029 INFO    ] No existing commands found in stream
[2026-10-25 20:20:34,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:20:34,049.049 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 20:20:40,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:20:40,256.256 INFO    ] Checking for system updates...
[2026-10-25 20:20:40,295.295 INFO    ] 200
[2026-10-25 20:20:40,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:40,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:20:40,355.355 INFO    ] No update needed
[2026-10-25 20:20:40,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 20:20:40,392.392 INFO    ] 200
[2026-10-25 20:20:40,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:40,442.442 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:20:40,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:20:40,498.498 INFO    ] No camera update needed
[2026-10-25 20:20:40,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:20:40,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:20:40,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:20:40,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:20:42,558.558 INFO    ] ================================================
[2026-10-25 20:20:42,573.573 INFO    ] Launching Daemon at Sun Oct 25 20:20:42 IST 2026
[2026-10-25 20:20:42,585.585 INFO    ] ================================================
[2026-10-25 20:20:43,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:20:43
[2026-10-25 20:20:43,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:20:44,035.035 INFO    ] Initializing speech engine...
[2026-10-25 20:20:44,043.043 INFO    ] 2026-10-25 20:20:44
[2026-10-25 20:20:44,317.317 INFO    ] 2026-10-25 20:20:44
[2026-10-25 20:20:44,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:20:44,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:20:44,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:20:44,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:20:44,798.798 INFO    ] time= 25/10/2026 20:20:44
[2026-10-25 20:20:44,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:20:44,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:20:44,945.945 INFO    ] No existing commands found in stream
[2026-10-25 20:20:49,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:20:49,960.960 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 20:20:51,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:20:51,094.094 INFO    ] Checking for system updates...
[2026-10-25 20:20:51,130.130 INFO    ] 200
[2026-10-25 20:20:51,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:51,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:20:51,189.189 INFO    ] No update needed
[2026-10-25 20:20:51,191.191 INFO    ] Checking for camera pi updates...
[2026-10-25 20:20:51,229.229 INFO    ] 200
[2026-10-25 20:20:51,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:20:51,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:20:51,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:20:51,342.342 INFO    ] No camera update needed
[2026-10-25 20:20:51,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:20:51,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:20:51,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:20:51,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:20:53,398.398 INFO    ] ================================================
[2026-10-25 20:20:53,413.413 INFO    ] Launching Daemon at Sun Oct 25 20:20:53 IST 2026
[2026-10-25 20:20:53,424.424 INFO    ] ================================================
[2026-10-25 20:20:54,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:20:54
[2026-10-25 20:20:54,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:20:54,892.892 INFO    ] Initializing speech engine...
[2026-10-25 20:20:54,901.901 INFO    ] 2026-10-25 20:20:54
[2026-10-25 20:20:55,163.163 INFO    ] 2026-10-25 20:20:55
[2026-10-25 20:20:55,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:20:55,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:20:55,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:20:55,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:20:55,623.623 INFO    ] time= 25/10/2026 20:20:55
[2026-10-25 20:20:55,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:20:55,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:20:55,772.772 INFO    ] No existing commands found in stream
[2026-10-25 20:21:00,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:21:00,788.788 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 20:21:04,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:21:04,324.324 INFO    ] Checking for system updates...
[2026-10-25 20:21:04,360.360 INFO    ] 200
[2026-10-25 20:21:04,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:04,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:04,418.418 INFO    ] No update needed
[2026-10-25 20:21:04,421.421 INFO    ] Checking for camera pi updates...
[2026-10-25 20:21:04,455.455 INFO    ] 200
[2026-10-25 20:21:04,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:04,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:21:04,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:04,567.567 INFO    ] No camera update needed
[2026-10-25 20:21:04,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:21:04,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:21:04,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:21:04,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:21:06,623.623 INFO    ] ================================================
[2026-10-25 20:21:06,638.638 INFO    ] Launching Daemon at Sun Oct 25 20:21:06 IST 2026
[2026-10-25 20:21:06,649.649 INFO    ] ================================================
[2026-10-25 20:21:07,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:21:07
[2026-10-25 20:21:07,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:21:08,066.066 INFO    ] Initializing speech engine...
[2026-10-25 20:21:08,072.072 INFO    ] 2026-10-25 20:21:08
[2026-10-25 20:21:08,370.370 INFO    ] 2026-10-25 20:21:08
[2026-10-25 20:21:08,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:21:11,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:21:11,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:21:11,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:21:11,319.319 INFO    ] time= 25/10/2026 20:21:11
[2026-10-25 20:21:11,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:21:11,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:21:11,393.393 INFO    ] No existing commands found in stream
[2026-10-25 20:21:16,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:21:16,405.405 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 20:21:20,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:21:20,532.532 INFO    ] Checking for system updates...
[2026-10-25 20:21:20,569.569 INFO    ] 200
[2026-10-25 20:21:20,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:20,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:20,627.627 INFO    ] No update needed
[2026-10-25 20:21:20,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 20:21:20,663.663 INFO    ] 200
[2026-10-25 20:21:20,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:20,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:21:20,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:20,762.762 INFO    ] No camera update needed
[2026-10-25 20:21:20,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:21:20,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:21:20,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:21:20,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:21:22,819.819 INFO    ] ================================================
[2026-10-25 20:21:22,834.834 INFO    ] Launching Daemon at Sun Oct 25 20:21:22 IST 2026
[2026-10-25 20:21:22,845.845 INFO    ] ================================================
[2026-10-25 20:21:23,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:21:23
[2026-10-25 20:21:24,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:21:24,259.259 INFO    ] Initializing speech engine...
[2026-10-25 20:21:24,281.281 INFO    ] 2026-10-25 20:21:24
[2026-10-25 20:21:24,540.540 INFO    ] 2026-10-25 20:21:24
[2026-10-25 20:21:24,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:21:24,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:21:24,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:21:24,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:21:24,916.916 INFO    ] time= 25/10/2026 20:21:24
[2026-10-25 20:21:24,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:21:24,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:21:25,071.071 INFO    ] No existing commands found in stream
[2026-10-25 20:21:30,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:21:30,099.099 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 20:21:30,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:21:30,587.587 INFO    ] Checking for system updates...
[2026-10-25 20:21:30,623.623 INFO    ] 200
[2026-10-25 20:21:30,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:30,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:30,689.689 INFO    ] No update needed
[2026-10-25 20:21:30,691.691 INFO    ] Checking for camera pi updates...
[2026-10-25 20:21:30,729.729 INFO    ] 200
[2026-10-25 20:21:30,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:30,773.773 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:21:30,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:30,823.823 INFO    ] No camera update needed
[2026-10-25 20:21:30,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:21:30,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:21:30,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:21:30,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:21:32,879.879 INFO    ] ================================================
[2026-10-25 20:21:32,895.895 INFO    ] Launching Daemon at Sun Oct 25 20:21:32 IST 2026
[2026-10-25 20:21:32,907.907 INFO    ] ================================================
[2026-10-25 20:21:33,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:21:33
[2026-10-25 20:21:34,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:21:34,535.535 INFO    ] Initializing speech engine...
[2026-10-25 20:21:34,543.543 INFO    ] 2026-10-25 20:21:34
[2026-10-25 20:21:34,811.811 INFO    ] 2026-10-25 20:21:34
[2026-10-25 20:21:34,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:21:35,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:21:35,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:21:35,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:21:35,290.290 INFO    ] time= 25/10/2026 20:21:35
[2026-10-25 20:21:35,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:21:35,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:21:35,420.420 INFO    ] No existing commands found in stream
[2026-10-25 20:21:40,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:21:40,435.435 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 20:21:43,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:21:43,089.089 INFO    ] Checking for system updates...
[2026-10-25 20:21:43,126.126 INFO    ] 200
[2026-10-25 20:21:43,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:43,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:43,186.186 INFO    ] No update needed
[2026-10-25 20:21:43,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 20:21:43,228.228 INFO    ] 200
[2026-10-25 20:21:43,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:43,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:21:43,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:43,338.338 INFO    ] No camera update needed
[2026-10-25 20:21:43,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:21:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:21:43,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:21:43,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:21:45,396.396 INFO    ] ================================================
[2026-10-25 20:21:45,412.412 INFO    ] Launching Daemon at Sun Oct 25 20:21:45 IST 2026
[2026-10-25 20:21:45,424.424 INFO    ] ================================================
[2026-10-25 20:21:46,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:21:46
[2026-10-25 20:21:46,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:21:46,867.867 INFO    ] Initializing speech engine...
[2026-10-25 20:21:46,876.876 INFO    ] 2026-10-25 20:21:46
[2026-10-25 20:21:47,174.174 INFO    ] 2026-10-25 20:21:47
[2026-10-25 20:21:47,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:21:47,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:21:47,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:21:47,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:21:47,558.558 INFO    ] time= 25/10/2026 20:21:47
[2026-10-25 20:21:47,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:21:47,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:21:47,687.687 INFO    ] No existing commands found in stream
[2026-10-25 20:21:52,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:21:52,701.701 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 20:21:57,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:21:57,058.058 INFO    ] Checking for system updates...
[2026-10-25 20:21:57,094.094 INFO    ] 200
[2026-10-25 20:21:57,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:57,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:57,153.153 INFO    ] No update needed
[2026-10-25 20:21:57,155.155 INFO    ] Checking for camera pi updates...
[2026-10-25 20:21:57,189.189 INFO    ] 200
[2026-10-25 20:21:57,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:21:57,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:21:57,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:21:57,399.399 INFO    ] No camera update needed
[2026-10-25 20:21:57,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:21:57,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:21:57,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:21:57,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:21:59,455.455 INFO    ] ================================================
[2026-10-25 20:21:59,472.472 INFO    ] Launching Daemon at Sun Oct 25 20:21:59 IST 2026
[2026-10-25 20:21:59,482.482 INFO    ] ================================================
[2026-10-25 20:22:00,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:22:00
[2026-10-25 20:22:00,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:22:00,944.944 INFO    ] Initializing speech engine...
[2026-10-25 20:22:00,951.951 INFO    ] 2026-10-25 20:22:00
[2026-10-25 20:22:01,219.219 INFO    ] 2026-10-25 20:22:01
[2026-10-25 20:22:01,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:22:01,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:22:01,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:22:01,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:22:01,626.626 INFO    ] time= 25/10/2026 20:22:01
[2026-10-25 20:22:01,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:22:01,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:22:01,707.707 INFO    ] No existing commands found in stream
[2026-10-25 20:22:06,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:22:06,720.720 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 20:22:08,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:22:08,789.789 INFO    ] Checking for system updates...
[2026-10-25 20:22:08,825.825 INFO    ] 200
[2026-10-25 20:22:08,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:08,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:22:08,884.884 INFO    ] No update needed
[2026-10-25 20:22:08,886.886 INFO    ] Checking for camera pi updates...
[2026-10-25 20:22:08,920.920 INFO    ] 200
[2026-10-25 20:22:08,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:08,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:22:09,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:22:09,031.031 INFO    ] No camera update needed
[2026-10-25 20:22:09,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:22:09,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:22:09,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:22:09,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:22:11,088.088 INFO    ] ================================================
[2026-10-25 20:22:11,103.103 INFO    ] Launching Daemon at Sun Oct 25 20:22:11 IST 2026
[2026-10-25 20:22:11,113.113 INFO    ] ================================================
[2026-10-25 20:22:11,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:22:11
[2026-10-25 20:22:12,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:22:12,562.562 INFO    ] Initializing speech engine...
[2026-10-25 20:22:12,568.568 INFO    ] 2026-10-25 20:22:12
[2026-10-25 20:22:12,854.854 INFO    ] 2026-10-25 20:22:12
[2026-10-25 20:22:12,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:22:13,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:22:13,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:22:13,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:22:13,225.225 INFO    ] time= 25/10/2026 20:22:13
[2026-10-25 20:22:13,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:22:13,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:22:13,301.301 INFO    ] No existing commands found in stream
[2026-10-25 20:22:18,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:22:18,317.317 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 20:22:19,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:22:19,207.207 INFO    ] Checking for system updates...
[2026-10-25 20:22:19,243.243 INFO    ] 200
[2026-10-25 20:22:19,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:19,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:19,301.301 INFO    ] No update needed
[2026-10-25 20:22:19,304.304 INFO    ] Checking for camera pi updates...
[2026-10-25 20:22:19,337.337 INFO    ] 200
[2026-10-25 20:22:19,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:19,382.382 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:22:19,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:19,439.439 INFO    ] No camera update needed
[2026-10-25 20:22:19,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:22:19,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:22:19,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:22:19,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:22:21,497.497 INFO    ] ================================================
[2026-10-25 20:22:21,512.512 INFO    ] Launching Daemon at Sun Oct 25 20:22:21 IST 2026
[2026-10-25 20:22:21,523.523 INFO    ] ================================================
[2026-10-25 20:22:22,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:22:22
[2026-10-25 20:22:22,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:22:22,942.942 INFO    ] Initializing speech engine...
[2026-10-25 20:22:22,951.951 INFO    ] 2026-10-25 20:22:22
[2026-10-25 20:22:23,201.201 INFO    ] 2026-10-25 20:22:23
[2026-10-25 20:22:23,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:22:23,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:22:23,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:22:23,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:22:23,588.588 INFO    ] time= 25/10/2026 20:22:23
[2026-10-25 20:22:23,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:22:23,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:22:23,667.667 INFO    ] No existing commands found in stream
[2026-10-25 20:22:28,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:22:28,705.705 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 20:22:31,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:22:31,216.216 INFO    ] Checking for system updates...
[2026-10-25 20:22:31,260.260 INFO    ] 200
[2026-10-25 20:22:31,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:31,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:22:31,323.323 INFO    ] No update needed
[2026-10-25 20:22:31,326.326 INFO    ] Checking for camera pi updates...
[2026-10-25 20:22:31,363.363 INFO    ] 200
[2026-10-25 20:22:31,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:31,410.410 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:22:31,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:22:31,463.463 INFO    ] No camera update needed
[2026-10-25 20:22:31,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:22:31,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:22:31,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:22:31,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:22:33,522.522 INFO    ] ================================================
[2026-10-25 20:22:33,538.538 INFO    ] Launching Daemon at Sun Oct 25 20:22:33 IST 2026
[2026-10-25 20:22:33,548.548 INFO    ] ================================================
[2026-10-25 20:22:34,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:22:34
[2026-10-25 20:22:34,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:22:35,004.004 INFO    ] Initializing speech engine...
[2026-10-25 20:22:35,009.009 INFO    ] 2026-10-25 20:22:35
[2026-10-25 20:22:35,257.257 INFO    ] 2026-10-25 20:22:35
[2026-10-25 20:22:35,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:22:35,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:22:35,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:22:35,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:22:35,707.707 INFO    ] time= 25/10/2026 20:22:35
[2026-10-25 20:22:35,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:22:35,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:22:35,887.887 INFO    ] No existing commands found in stream
[2026-10-25 20:22:40,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:22:40,902.902 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 20:22:43,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:22:43,842.842 INFO    ] Checking for system updates...
[2026-10-25 20:22:43,878.878 INFO    ] 200
[2026-10-25 20:22:43,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:43,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:43,939.939 INFO    ] No update needed
[2026-10-25 20:22:43,941.941 INFO    ] Checking for camera pi updates...
[2026-10-25 20:22:43,976.976 INFO    ] 200
[2026-10-25 20:22:43,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:44,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:22:44,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:44,083.083 INFO    ] No camera update needed
[2026-10-25 20:22:44,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:22:44,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:22:44,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:22:44,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:22:46,140.140 INFO    ] ================================================
[2026-10-25 20:22:46,155.155 INFO    ] Launching Daemon at Sun Oct 25 20:22:46 IST 2026
[2026-10-25 20:22:46,166.166 INFO    ] ================================================
[2026-10-25 20:22:46,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:22:46
[2026-10-25 20:22:47,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:22:47,795.795 INFO    ] Initializing speech engine...
[2026-10-25 20:22:47,801.801 INFO    ] 2026-10-25 20:22:47
[2026-10-25 20:22:48,088.088 INFO    ] 2026-10-25 20:22:48
[2026-10-25 20:22:48,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:22:48,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:22:48,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:22:48,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:22:48,551.551 INFO    ] time= 25/10/2026 20:22:48
[2026-10-25 20:22:48,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:22:48,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:22:48,713.713 INFO    ] No existing commands found in stream
[2026-10-25 20:22:53,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:22:53,755.755 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 20:22:57,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:22:57,682.682 INFO    ] Checking for system updates...
[2026-10-25 20:22:57,719.719 INFO    ] 200
[2026-10-25 20:22:57,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:57,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:57,776.776 INFO    ] No update needed
[2026-10-25 20:22:57,779.779 INFO    ] Checking for camera pi updates...
[2026-10-25 20:22:57,812.812 INFO    ] 200
[2026-10-25 20:22:57,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:22:57,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:22:57,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:22:57,920.920 INFO    ] No camera update needed
[2026-10-25 20:22:57,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:22:57,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:22:57,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:22:57,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:22:59,976.976 INFO    ] ================================================
[2026-10-25 20:22:59,992.992 INFO    ] Launching Daemon at Sun Oct 25 20:22:59 IST 2026
[2026-10-25 20:23:00,003.003 INFO    ] ================================================
[2026-10-25 20:23:00,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:23:00
[2026-10-25 20:23:01,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:23:01,900.900 INFO    ] Initializing speech engine...
[2026-10-25 20:23:01,929.929 INFO    ] 2026-10-25 20:23:01
[2026-10-25 20:23:02,383.383 INFO    ] 2026-10-25 20:23:02
[2026-10-25 20:23:02,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:23:02,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:23:02,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:23:02,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:23:02,911.911 INFO    ] time= 25/10/2026 20:23:02
[2026-10-25 20:23:02,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:23:03,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:23:03,124.124 INFO    ] No existing commands found in stream
[2026-10-25 20:23:08,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:23:08,152.152 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-25 20:23:14,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:23:14,235.235 INFO    ] Checking for system updates...
[2026-10-25 20:23:14,275.275 INFO    ] 200
[2026-10-25 20:23:14,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:14,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:14,334.334 INFO    ] No update needed
[2026-10-25 20:23:14,336.336 INFO    ] Checking for camera pi updates...
[2026-10-25 20:23:14,374.374 INFO    ] 200
[2026-10-25 20:23:14,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:14,422.422 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:23:14,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:14,477.477 INFO    ] No camera update needed
[2026-10-25 20:23:14,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:23:14,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:23:14,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:23:14,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:23:16,531.531 INFO    ] ================================================
[2026-10-25 20:23:16,546.546 INFO    ] Launching Daemon at Sun Oct 25 20:23:16 IST 2026
[2026-10-25 20:23:16,557.557 INFO    ] ================================================
[2026-10-25 20:23:17,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:23:17
[2026-10-25 20:23:17,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:23:17,957.957 INFO    ] Initializing speech engine...
[2026-10-25 20:23:17,972.972 INFO    ] 2026-10-25 20:23:17
[2026-10-25 20:23:18,236.236 INFO    ] 2026-10-25 20:23:18
[2026-10-25 20:23:18,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:23:18,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:23:18,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:23:18,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:23:18,610.610 INFO    ] time= 25/10/2026 20:23:18
[2026-10-25 20:23:18,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:23:18,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:23:18,686.686 INFO    ] No existing commands found in stream
[2026-10-25 20:23:23,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:23:23,702.702 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 20:23:26,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:23:26,894.894 INFO    ] Checking for system updates...
[2026-10-25 20:23:26,930.930 INFO    ] 200
[2026-10-25 20:23:26,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:26,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:26,988.988 INFO    ] No update needed
[2026-10-25 20:23:26,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 20:23:27,024.024 INFO    ] 200
[2026-10-25 20:23:27,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:27,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:23:27,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:27,104.104 INFO    ] No camera update needed
[2026-10-25 20:23:27,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:23:27,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:23:27,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:23:27,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:23:29,160.160 INFO    ] ================================================
[2026-10-25 20:23:29,175.175 INFO    ] Launching Daemon at Sun Oct 25 20:23:29 IST 2026
[2026-10-25 20:23:29,186.186 INFO    ] ================================================
[2026-10-25 20:23:29,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:23:29
[2026-10-25 20:23:30,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:23:30,624.624 INFO    ] Initializing speech engine...
[2026-10-25 20:23:30,632.632 INFO    ] 2026-10-25 20:23:30
[2026-10-25 20:23:30,878.878 INFO    ] 2026-10-25 20:23:30
[2026-10-25 20:23:30,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:23:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:23:31,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:23:31,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:23:31,244.244 INFO    ] time= 25/10/2026 20:23:31
[2026-10-25 20:23:31,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:23:31,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:23:31,418.418 INFO    ] No existing commands found in stream
[2026-10-25 20:23:36,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:23:36,471.471 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 20:23:38,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:23:38,613.613 INFO    ] Checking for system updates...
[2026-10-25 20:23:38,652.652 INFO    ] 200
[2026-10-25 20:23:38,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:38,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:23:38,767.767 INFO    ] No update needed
[2026-10-25 20:23:38,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 20:23:38,805.805 INFO    ] 200
[2026-10-25 20:23:38,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:38,850.850 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:23:38,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:23:38,891.891 INFO    ] No camera update needed
[2026-10-25 20:23:38,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:23:38,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:23:38,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:23:38,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:23:40,948.948 INFO    ] ================================================
[2026-10-25 20:23:40,964.964 INFO    ] Launching Daemon at Sun Oct 25 20:23:40 IST 2026
[2026-10-25 20:23:40,974.974 INFO    ] ================================================
[2026-10-25 20:23:41,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:23:41
[2026-10-25 20:23:42,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:23:42,534.534 INFO    ] Initializing speech engine...
[2026-10-25 20:23:42,543.543 INFO    ] 2026-10-25 20:23:42
[2026-10-25 20:23:42,848.848 INFO    ] 2026-10-25 20:23:42
[2026-10-25 20:23:42,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:23:44,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:23:45,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:23:45,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:23:45,501.501 INFO    ] time= 25/10/2026 20:23:45
[2026-10-25 20:23:45,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:23:45,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:23:45,597.597 INFO    ] No existing commands found in stream
[2026-10-25 20:23:50,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:23:50,616.616 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 20:23:51,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:23:51,570.570 INFO    ] Checking for system updates...
[2026-10-25 20:23:51,606.606 INFO    ] 200
[2026-10-25 20:23:51,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:51,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:51,670.670 INFO    ] No update needed
[2026-10-25 20:23:51,673.673 INFO    ] Checking for camera pi updates...
[2026-10-25 20:23:51,706.706 INFO    ] 200
[2026-10-25 20:23:51,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:23:51,749.749 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:23:51,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:23:51,809.809 INFO    ] No camera update needed
[2026-10-25 20:23:51,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:23:51,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:23:51,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:23:51,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:23:53,866.866 INFO    ] ================================================
[2026-10-25 20:23:53,882.882 INFO    ] Launching Daemon at Sun Oct 25 20:23:53 IST 2026
[2026-10-25 20:23:53,894.894 INFO    ] ================================================
[2026-10-25 20:23:54,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:23:54
[2026-10-25 20:23:55,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:23:55,383.383 INFO    ] Initializing speech engine...
[2026-10-25 20:23:55,390.390 INFO    ] 2026-10-25 20:23:55
[2026-10-25 20:23:55,651.651 INFO    ] 2026-10-25 20:23:55
[2026-10-25 20:23:55,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:23:55,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:23:55,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:23:56,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:23:56,135.135 INFO    ] time= 25/10/2026 20:23:56
[2026-10-25 20:23:56,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:23:56,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:23:56,313.313 INFO    ] No existing commands found in stream
[2026-10-25 20:24:01,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:24:01,334.334 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 20:24:05,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:24:05,542.542 INFO    ] Checking for system updates...
[2026-10-25 20:24:05,580.580 INFO    ] 200
[2026-10-25 20:24:05,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:05,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:05,640.640 INFO    ] No update needed
[2026-10-25 20:24:05,643.643 INFO    ] Checking for camera pi updates...
[2026-10-25 20:24:05,682.682 INFO    ] 200
[2026-10-25 20:24:05,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:05,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:24:05,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:05,798.798 INFO    ] No camera update needed
[2026-10-25 20:24:05,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:24:05,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:24:05,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:24:05,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:24:07,856.856 INFO    ] ================================================
[2026-10-25 20:24:07,871.871 INFO    ] Launching Daemon at Sun Oct 25 20:24:07 IST 2026
[2026-10-25 20:24:07,881.881 INFO    ] ================================================
[2026-10-25 20:24:08,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:24:08
[2026-10-25 20:24:09,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:24:09,505.505 INFO    ] Initializing speech engine...
[2026-10-25 20:24:09,518.518 INFO    ] 2026-10-25 20:24:09
[2026-10-25 20:24:09,826.826 INFO    ] 2026-10-25 20:24:09
[2026-10-25 20:24:09,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:24:10,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:24:10,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:24:10,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:24:10,334.334 INFO    ] time= 25/10/2026 20:24:10
[2026-10-25 20:24:10,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:24:10,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:24:10,485.485 INFO    ] No existing commands found in stream
[2026-10-25 20:24:15,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:24:15,505.505 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 20:24:19,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:24:19,764.764 INFO    ] Checking for system updates...
[2026-10-25 20:24:19,802.802 INFO    ] 200
[2026-10-25 20:24:19,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:19,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:19,869.869 INFO    ] No update needed
[2026-10-25 20:24:19,872.872 INFO    ] Checking for camera pi updates...
[2026-10-25 20:24:19,910.910 INFO    ] 200
[2026-10-25 20:24:19,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:19,960.960 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:24:20,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:20,012.012 INFO    ] No camera update needed
[2026-10-25 20:24:20,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:24:20,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:24:20,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:24:20,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:24:22,070.070 INFO    ] ================================================
[2026-10-25 20:24:22,085.085 INFO    ] Launching Daemon at Sun Oct 25 20:24:22 IST 2026
[2026-10-25 20:24:22,096.096 INFO    ] ================================================
[2026-10-25 20:24:22,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:24:22
[2026-10-25 20:24:23,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:24:23,527.527 INFO    ] Initializing speech engine...
[2026-10-25 20:24:23,536.536 INFO    ] 2026-10-25 20:24:23
[2026-10-25 20:24:23,780.780 INFO    ] 2026-10-25 20:24:23
[2026-10-25 20:24:23,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:24:24,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:24:24,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:24:24,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:24:24,222.222 INFO    ] time= 25/10/2026 20:24:24
[2026-10-25 20:24:24,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:24:24,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:24:24,398.398 INFO    ] No existing commands found in stream
[2026-10-25 20:24:29,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:24:29,426.426 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 20:24:32,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:24:32,152.152 INFO    ] Checking for system updates...
[2026-10-25 20:24:32,212.212 INFO    ] 200
[2026-10-25 20:24:32,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 20:24:32,218.218 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 20:24:32,221.221 INFO    ] Checking for camera pi updates...
[2026-10-25 20:24:32,273.273 INFO    ] 200
[2026-10-25 20:24:32,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 20:24:32,278.278 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 20:24:32,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:24:32,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:24:32,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:24:32,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:24:34,359.359 INFO    ] ================================================
[2026-10-25 20:24:34,374.374 INFO    ] Launching Daemon at Sun Oct 25 20:24:34 IST 2026
[2026-10-25 20:24:34,384.384 INFO    ] ================================================
[2026-10-25 20:24:35,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:24:35
[2026-10-25 20:24:35,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:24:35,922.922 INFO    ] Initializing speech engine...
[2026-10-25 20:24:35,935.935 INFO    ] 2026-10-25 20:24:35
[2026-10-25 20:24:36,195.195 INFO    ] 2026-10-25 20:24:36
[2026-10-25 20:24:36,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:24:36,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:24:36,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:24:36,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:24:36,667.667 INFO    ] time= 25/10/2026 20:24:36
[2026-10-25 20:24:36,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:24:36,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:24:36,808.808 INFO    ] No existing commands found in stream
[2026-10-25 20:24:41,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:24:41,823.823 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 20:24:47,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:24:47,048.048 INFO    ] Checking for system updates...
[2026-10-25 20:24:47,084.084 INFO    ] 200
[2026-10-25 20:24:47,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:47,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:24:47,143.143 INFO    ] No update needed
[2026-10-25 20:24:47,146.146 INFO    ] Checking for camera pi updates...
[2026-10-25 20:24:47,179.179 INFO    ] 200
[2026-10-25 20:24:47,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:47,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:24:47,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:24:47,292.292 INFO    ] No camera update needed
[2026-10-25 20:24:47,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:24:47,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:24:47,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:24:47,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:24:49,348.348 INFO    ] ================================================
[2026-10-25 20:24:49,364.364 INFO    ] Launching Daemon at Sun Oct 25 20:24:49 IST 2026
[2026-10-25 20:24:49,376.376 INFO    ] ================================================
[2026-10-25 20:24:49,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:24:49
[2026-10-25 20:24:50,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:24:50,865.865 INFO    ] Initializing speech engine...
[2026-10-25 20:24:50,872.872 INFO    ] 2026-10-25 20:24:50
[2026-10-25 20:24:51,157.157 INFO    ] 2026-10-25 20:24:51
[2026-10-25 20:24:51,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:24:51,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:24:51,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:24:51,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:24:51,572.572 INFO    ] time= 25/10/2026 20:24:51
[2026-10-25 20:24:51,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:24:51,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:24:51,756.756 INFO    ] No existing commands found in stream
[2026-10-25 20:24:56,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:24:56,784.784 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 20:24:58,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:24:58,111.111 INFO    ] Checking for system updates...
[2026-10-25 20:24:58,150.150 INFO    ] 200
[2026-10-25 20:24:58,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:58,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:58,209.209 INFO    ] No update needed
[2026-10-25 20:24:58,212.212 INFO    ] Checking for camera pi updates...
[2026-10-25 20:24:58,245.245 INFO    ] 200
[2026-10-25 20:24:58,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:24:58,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:24:58,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:24:58,356.356 INFO    ] No camera update needed
[2026-10-25 20:24:58,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:24:58,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:24:58,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:24:58,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:25:00,411.411 INFO    ] ================================================
[2026-10-25 20:25:00,427.427 INFO    ] Launching Daemon at Sun Oct 25 20:25:00 IST 2026
[2026-10-25 20:25:00,438.438 INFO    ] ================================================
[2026-10-25 20:25:01,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:25:01
[2026-10-25 20:25:01,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:25:02,385.385 INFO    ] Initializing speech engine...
[2026-10-25 20:25:02,392.392 INFO    ] 2026-10-25 20:25:02
[2026-10-25 20:25:02,766.766 INFO    ] 2026-10-25 20:25:02
[2026-10-25 20:25:02,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:25:03,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:25:03,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:25:03,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:25:03,260.260 INFO    ] time= 25/10/2026 20:25:03
[2026-10-25 20:25:03,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:25:03,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:25:03,423.423 INFO    ] No existing commands found in stream
[2026-10-25 20:25:08,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:25:08,443.443 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 20:25:12,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:25:12,370.370 INFO    ] Checking for system updates...
[2026-10-25 20:25:12,410.410 INFO    ] 200
[2026-10-25 20:25:12,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:12,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:25:12,469.469 INFO    ] No update needed
[2026-10-25 20:25:12,471.471 INFO    ] Checking for camera pi updates...
[2026-10-25 20:25:12,506.506 INFO    ] 200
[2026-10-25 20:25:12,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:12,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:25:12,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:25:12,611.611 INFO    ] No camera update needed
[2026-10-25 20:25:12,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:25:12,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:25:12,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:25:12,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:25:14,666.666 INFO    ] ================================================
[2026-10-25 20:25:14,681.681 INFO    ] Launching Daemon at Sun Oct 25 20:25:14 IST 2026
[2026-10-25 20:25:14,692.692 INFO    ] ================================================
[2026-10-25 20:25:15,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:25:15
[2026-10-25 20:25:15,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:25:16,287.287 INFO    ] Initializing speech engine...
[2026-10-25 20:25:16,302.302 INFO    ] 2026-10-25 20:25:16
[2026-10-25 20:25:16,581.581 INFO    ] 2026-10-25 20:25:16
[2026-10-25 20:25:16,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:25:17,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:25:17,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:25:17,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:25:17,746.746 INFO    ] time= 25/10/2026 20:25:17
[2026-10-25 20:25:17,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:25:17,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:25:17,916.916 INFO    ] No existing commands found in stream
[2026-10-25 20:25:22,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:25:22,955.955 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 20:25:26,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:25:26,523.523 INFO    ] Checking for system updates...
[2026-10-25 20:25:26,561.561 INFO    ] 200
[2026-10-25 20:25:26,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:26,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:25:26,621.621 INFO    ] No update needed
[2026-10-25 20:25:26,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 20:25:26,662.662 INFO    ] 200
[2026-10-25 20:25:26,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:26,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:25:26,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:25:26,791.791 INFO    ] No camera update needed
[2026-10-25 20:25:26,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:25:26,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:25:26,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:25:26,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:25:28,849.849 INFO    ] ================================================
[2026-10-25 20:25:28,865.865 INFO    ] Launching Daemon at Sun Oct 25 20:25:28 IST 2026
[2026-10-25 20:25:28,876.876 INFO    ] ================================================
[2026-10-25 20:25:29,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:25:29
[2026-10-25 20:25:30,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:25:30,476.476 INFO    ] Initializing speech engine...
[2026-10-25 20:25:30,487.487 INFO    ] 2026-10-25 20:25:30
[2026-10-25 20:25:30,746.746 INFO    ] 2026-10-25 20:25:30
[2026-10-25 20:25:30,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:25:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:25:31,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:25:31,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:25:31,276.276 INFO    ] time= 25/10/2026 20:25:31
[2026-10-25 20:25:31,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:25:31,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:25:31,414.414 INFO    ] No existing commands found in stream
[2026-10-25 20:25:36,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:25:36,441.441 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 20:25:40,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:25:40,144.144 INFO    ] Checking for system updates...
[2026-10-25 20:25:40,183.183 INFO    ] 200
[2026-10-25 20:25:40,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:40,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:25:40,240.240 INFO    ] No update needed
[2026-10-25 20:25:40,243.243 INFO    ] Checking for camera pi updates...
[2026-10-25 20:25:40,280.280 INFO    ] 200
[2026-10-25 20:25:40,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:40,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:25:40,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:25:40,377.377 INFO    ] No camera update needed
[2026-10-25 20:25:40,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:25:40,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:25:40,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:25:40,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:25:42,433.433 INFO    ] ================================================
[2026-10-25 20:25:42,448.448 INFO    ] Launching Daemon at Sun Oct 25 20:25:42 IST 2026
[2026-10-25 20:25:42,459.459 INFO    ] ================================================
[2026-10-25 20:25:43,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:25:43
[2026-10-25 20:25:43,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:25:43,887.887 INFO    ] Initializing speech engine...
[2026-10-25 20:25:43,895.895 INFO    ] 2026-10-25 20:25:43
[2026-10-25 20:25:44,166.166 INFO    ] 2026-10-25 20:25:44
[2026-10-25 20:25:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:25:47,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:25:47,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:25:48,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:25:48,195.195 INFO    ] time= 25/10/2026 20:25:48
[2026-10-25 20:25:48,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:25:48,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:25:48,253.253 INFO    ] No existing commands found in stream
[2026-10-25 20:25:53,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:25:53,265.265 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-25 20:25:53,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:25:53,872.872 INFO    ] Checking for system updates...
[2026-10-25 20:25:53,909.909 INFO    ] 200
[2026-10-25 20:25:53,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:53,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:25:53,974.974 INFO    ] No update needed
[2026-10-25 20:25:53,977.977 INFO    ] Checking for camera pi updates...
[2026-10-25 20:25:54,012.012 INFO    ] 200
[2026-10-25 20:25:54,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:25:54,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:25:54,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:25:54,118.118 INFO    ] No camera update needed
[2026-10-25 20:25:54,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:25:54,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:25:54,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:25:54,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:25:56,177.177 INFO    ] ================================================
[2026-10-25 20:25:56,192.192 INFO    ] Launching Daemon at Sun Oct 25 20:25:56 IST 2026
[2026-10-25 20:25:56,204.204 INFO    ] ================================================
[2026-10-25 20:25:56,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:25:56
[2026-10-25 20:25:57,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:25:57,608.608 INFO    ] Initializing speech engine...
[2026-10-25 20:25:57,623.623 INFO    ] 2026-10-25 20:25:57
[2026-10-25 20:25:57,887.887 INFO    ] 2026-10-25 20:25:57
[2026-10-25 20:25:57,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:25:58,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:25:58,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:25:58,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:25:58,360.360 INFO    ] time= 25/10/2026 20:25:58
[2026-10-25 20:25:58,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:25:58,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:25:58,500.500 INFO    ] No existing commands found in stream
[2026-10-25 20:26:03,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:26:03,515.515 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 20:26:05,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:26:05,647.647 INFO    ] Checking for system updates...
[2026-10-25 20:26:05,691.691 INFO    ] 200
[2026-10-25 20:26:05,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:05,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:05,753.753 INFO    ] No update needed
[2026-10-25 20:26:05,755.755 INFO    ] Checking for camera pi updates...
[2026-10-25 20:26:05,789.789 INFO    ] 200
[2026-10-25 20:26:05,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:05,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:26:05,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:05,998.998 INFO    ] No camera update needed
[2026-10-25 20:26:06,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:26:06,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:26:06,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:26:06,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:26:08,055.055 INFO    ] ================================================
[2026-10-25 20:26:08,071.071 INFO    ] Launching Daemon at Sun Oct 25 20:26:08 IST 2026
[2026-10-25 20:26:08,082.082 INFO    ] ================================================
[2026-10-25 20:26:08,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:26:08
[2026-10-25 20:26:09,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:26:09,529.529 INFO    ] Initializing speech engine...
[2026-10-25 20:26:09,538.538 INFO    ] 2026-10-25 20:26:09
[2026-10-25 20:26:09,797.797 INFO    ] 2026-10-25 20:26:09
[2026-10-25 20:26:09,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:26:10,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:26:10,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:26:10,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:26:10,252.252 INFO    ] time= 25/10/2026 20:26:10
[2026-10-25 20:26:10,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:26:10,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:26:10,458.458 INFO    ] No existing commands found in stream
[2026-10-25 20:26:15,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:26:15,484.484 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 20:26:18,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:26:18,593.593 INFO    ] Checking for system updates...
[2026-10-25 20:26:18,629.629 INFO    ] 200
[2026-10-25 20:26:18,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:18,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:26:18,691.691 INFO    ] No update needed
[2026-10-25 20:26:18,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 20:26:18,727.727 INFO    ] 200
[2026-10-25 20:26:18,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:18,770.770 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:26:18,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:26:18,828.828 INFO    ] No camera update needed
[2026-10-25 20:26:18,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:26:18,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:26:18,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:26:18,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:26:20,884.884 INFO    ] ================================================
[2026-10-25 20:26:20,900.900 INFO    ] Launching Daemon at Sun Oct 25 20:26:20 IST 2026
[2026-10-25 20:26:20,911.911 INFO    ] ================================================
[2026-10-25 20:26:21,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:26:21
[2026-10-25 20:26:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:26:22,305.305 INFO    ] Initializing speech engine...
[2026-10-25 20:26:22,326.326 INFO    ] 2026-10-25 20:26:22
[2026-10-25 20:26:22,582.582 INFO    ] 2026-10-25 20:26:22
[2026-10-25 20:26:22,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:26:22,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:26:22,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:26:22,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:26:22,954.954 INFO    ] time= 25/10/2026 20:26:22
[2026-10-25 20:26:22,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:26:23,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:26:23,116.116 INFO    ] No existing commands found in stream
[2026-10-25 20:26:28,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:26:28,144.144 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 20:26:32,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:26:32,284.284 INFO    ] Checking for system updates...
[2026-10-25 20:26:32,323.323 INFO    ] 200
[2026-10-25 20:26:32,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:32,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:26:32,385.385 INFO    ] No update needed
[2026-10-25 20:26:32,387.387 INFO    ] Checking for camera pi updates...
[2026-10-25 20:26:32,421.421 INFO    ] 200
[2026-10-25 20:26:32,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:32,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:26:32,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:26:32,501.501 INFO    ] No camera update needed
[2026-10-25 20:26:32,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:26:32,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:26:32,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:26:32,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:26:34,557.557 INFO    ] ================================================
[2026-10-25 20:26:34,572.572 INFO    ] Launching Daemon at Sun Oct 25 20:26:34 IST 2026
[2026-10-25 20:26:34,584.584 INFO    ] ================================================
[2026-10-25 20:26:35,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:26:35
[2026-10-25 20:26:35,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:26:36,025.025 INFO    ] Initializing speech engine...
[2026-10-25 20:26:36,035.035 INFO    ] 2026-10-25 20:26:36
[2026-10-25 20:26:36,284.284 INFO    ] 2026-10-25 20:26:36
[2026-10-25 20:26:36,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:26:36,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:26:36,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:26:36,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:26:36,836.836 INFO    ] time= 25/10/2026 20:26:36
[2026-10-25 20:26:36,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:26:36,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:26:36,986.986 INFO    ] No existing commands found in stream
[2026-10-25 20:26:42,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:26:42,003.003 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 20:26:45,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:26:45,052.052 INFO    ] Checking for system updates...
[2026-10-25 20:26:45,089.089 INFO    ] 200
[2026-10-25 20:26:45,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:45,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:45,148.148 INFO    ] No update needed
[2026-10-25 20:26:45,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 20:26:45,184.184 INFO    ] 200
[2026-10-25 20:26:45,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:45,227.227 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:26:45,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:45,289.289 INFO    ] No camera update needed
[2026-10-25 20:26:45,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:26:45,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:26:45,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:26:45,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:26:47,346.346 INFO    ] ================================================
[2026-10-25 20:26:47,361.361 INFO    ] Launching Daemon at Sun Oct 25 20:26:47 IST 2026
[2026-10-25 20:26:47,373.373 INFO    ] ================================================
[2026-10-25 20:26:47,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:26:47
[2026-10-25 20:26:48,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:26:48,911.911 INFO    ] Initializing speech engine...
[2026-10-25 20:26:48,920.920 INFO    ] 2026-10-25 20:26:48
[2026-10-25 20:26:49,177.177 INFO    ] 2026-10-25 20:26:49
[2026-10-25 20:26:49,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:26:49,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:26:49,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:26:49,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:26:49,555.555 INFO    ] time= 25/10/2026 20:26:49
[2026-10-25 20:26:49,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:26:49,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:26:49,742.742 INFO    ] No existing commands found in stream
[2026-10-25 20:26:54,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:26:54,768.768 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 20:26:56,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:26:56,825.825 INFO    ] Checking for system updates...
[2026-10-25 20:26:56,864.864 INFO    ] 200
[2026-10-25 20:26:56,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:56,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:56,920.920 INFO    ] No update needed
[2026-10-25 20:26:56,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 20:26:56,960.960 INFO    ] 200
[2026-10-25 20:26:56,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:26:57,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:26:57,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:26:57,050.050 INFO    ] No camera update needed
[2026-10-25 20:26:57,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:26:57,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:26:57,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:26:57,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:26:59,106.106 INFO    ] ================================================
[2026-10-25 20:26:59,122.122 INFO    ] Launching Daemon at Sun Oct 25 20:26:59 IST 2026
[2026-10-25 20:26:59,133.133 INFO    ] ================================================
[2026-10-25 20:26:59,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:26:59
[2026-10-25 20:27:00,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:27:00,546.546 INFO    ] Initializing speech engine...
[2026-10-25 20:27:00,553.553 INFO    ] 2026-10-25 20:27:00
[2026-10-25 20:27:00,838.838 INFO    ] 2026-10-25 20:27:00
[2026-10-25 20:27:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:27:01,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:27:01,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:27:01,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:27:01,292.292 INFO    ] time= 25/10/2026 20:27:01
[2026-10-25 20:27:01,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:27:01,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:27:01,380.380 INFO    ] No existing commands found in stream
[2026-10-25 20:27:06,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:27:06,395.395 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 20:27:07,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:27:07,174.174 INFO    ] Checking for system updates...
[2026-10-25 20:27:07,214.214 INFO    ] 200
[2026-10-25 20:27:07,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:07,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:27:07,274.274 INFO    ] No update needed
[2026-10-25 20:27:07,276.276 INFO    ] Checking for camera pi updates...
[2026-10-25 20:27:07,314.314 INFO    ] 200
[2026-10-25 20:27:07,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:07,357.357 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:27:07,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:27:07,405.405 INFO    ] No camera update needed
[2026-10-25 20:27:07,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:27:07,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:27:07,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:27:07,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:27:09,460.460 INFO    ] ================================================
[2026-10-25 20:27:09,475.475 INFO    ] Launching Daemon at Sun Oct 25 20:27:09 IST 2026
[2026-10-25 20:27:09,487.487 INFO    ] ================================================
[2026-10-25 20:27:10,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:27:10
[2026-10-25 20:27:10,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:27:10,909.909 INFO    ] Initializing speech engine...
[2026-10-25 20:27:10,918.918 INFO    ] 2026-10-25 20:27:10
[2026-10-25 20:27:11,177.177 INFO    ] 2026-10-25 20:27:11
[2026-10-25 20:27:11,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:27:11,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:27:11,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:27:11,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:27:11,721.721 INFO    ] time= 25/10/2026 20:27:11
[2026-10-25 20:27:11,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:27:11,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:27:11,854.854 INFO    ] No existing commands found in stream
[2026-10-25 20:27:16,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:27:16,874.874 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 20:27:20,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:27:20,169.169 INFO    ] Checking for system updates...
[2026-10-25 20:27:20,210.210 INFO    ] 200
[2026-10-25 20:27:20,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:20,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:27:20,267.267 INFO    ] No update needed
[2026-10-25 20:27:20,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 20:27:20,304.304 INFO    ] 200
[2026-10-25 20:27:20,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:20,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:27:20,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:27:20,401.401 INFO    ] No camera update needed
[2026-10-25 20:27:20,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:27:20,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:27:20,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:27:20,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:27:22,457.457 INFO    ] ================================================
[2026-10-25 20:27:22,472.472 INFO    ] Launching Daemon at Sun Oct 25 20:27:22 IST 2026
[2026-10-25 20:27:22,483.483 INFO    ] ================================================
[2026-10-25 20:27:23,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:27:23
[2026-10-25 20:27:23,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:27:23,900.900 INFO    ] Initializing speech engine...
[2026-10-25 20:27:23,919.919 INFO    ] 2026-10-25 20:27:23
[2026-10-25 20:27:24,168.168 INFO    ] 2026-10-25 20:27:24
[2026-10-25 20:27:24,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:27:24,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:27:24,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:27:24,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:27:24,638.638 INFO    ] time= 25/10/2026 20:27:24
[2026-10-25 20:27:24,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:27:24,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:27:24,803.803 INFO    ] No existing commands found in stream
[2026-10-25 20:27:29,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:27:29,817.817 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 20:27:34,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:27:34,067.067 INFO    ] Checking for system updates...
[2026-10-25 20:27:34,103.103 INFO    ] 200
[2026-10-25 20:27:34,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:34,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:27:34,165.165 INFO    ] No update needed
[2026-10-25 20:27:34,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 20:27:34,209.209 INFO    ] 200
[2026-10-25 20:27:34,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:34,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:27:34,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:27:34,312.312 INFO    ] No camera update needed
[2026-10-25 20:27:34,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:27:34,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:27:34,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:27:34,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:27:36,368.368 INFO    ] ================================================
[2026-10-25 20:27:36,383.383 INFO    ] Launching Daemon at Sun Oct 25 20:27:36 IST 2026
[2026-10-25 20:27:36,394.394 INFO    ] ================================================
[2026-10-25 20:27:36,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:27:36
[2026-10-25 20:27:37,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:27:37,848.848 INFO    ] Initializing speech engine...
[2026-10-25 20:27:37,856.856 INFO    ] 2026-10-25 20:27:37
[2026-10-25 20:27:38,121.121 INFO    ] 2026-10-25 20:27:38
[2026-10-25 20:27:38,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:27:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:27:38,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:27:38,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:27:38,534.534 INFO    ] time= 25/10/2026 20:27:38
[2026-10-25 20:27:38,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:27:38,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:27:38,683.683 INFO    ] No existing commands found in stream
[2026-10-25 20:27:43,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:27:43,721.721 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 20:27:45,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:27:45,657.657 INFO    ] Checking for system updates...
[2026-10-25 20:27:45,694.694 INFO    ] 200
[2026-10-25 20:27:45,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:45,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:27:45,756.756 INFO    ] No update needed
[2026-10-25 20:27:45,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 20:27:45,793.793 INFO    ] 200
[2026-10-25 20:27:45,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:27:45,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:27:45,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:27:45,896.896 INFO    ] No camera update needed
[2026-10-25 20:27:45,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:27:45,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:27:45,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:27:45,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:27:47,954.954 INFO    ] ================================================
[2026-10-25 20:27:47,969.969 INFO    ] Launching Daemon at Sun Oct 25 20:27:47 IST 2026
[2026-10-25 20:27:47,980.980 INFO    ] ================================================
[2026-10-25 20:27:48,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:27:48
[2026-10-25 20:27:49,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:27:49,585.585 INFO    ] Initializing speech engine...
[2026-10-25 20:27:49,596.596 INFO    ] 2026-10-25 20:27:49
[2026-10-25 20:27:49,870.870 INFO    ] 2026-10-25 20:27:49
[2026-10-25 20:27:49,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:27:51,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:27:51,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:27:51,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:27:51,288.288 INFO    ] time= 25/10/2026 20:27:51
[2026-10-25 20:27:51,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:27:51,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:27:51,387.387 INFO    ] No existing commands found in stream
[2026-10-25 20:27:56,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:27:56,414.414 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 20:28:00,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:28:00,168.168 INFO    ] Checking for system updates...
[2026-10-25 20:28:00,209.209 INFO    ] 200
[2026-10-25 20:28:00,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:00,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:00,276.276 INFO    ] No update needed
[2026-10-25 20:28:00,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:00,314.314 INFO    ] 200
[2026-10-25 20:28:00,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:00,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:00,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:00,421.421 INFO    ] No camera update needed
[2026-10-25 20:28:00,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:00,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:00,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:00,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:28:02,489.489 INFO    ] ================================================
[2026-10-25 20:28:02,513.513 INFO    ] Launching Daemon at Sun Oct 25 20:28:02 IST 2026
[2026-10-25 20:28:02,528.528 INFO    ] ================================================
[2026-10-25 20:28:03,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:28:03
[2026-10-25 20:28:03,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:28:03,999.999 INFO    ] Initializing speech engine...
[2026-10-25 20:28:04,012.012 INFO    ] 2026-10-25 20:28:04
[2026-10-25 20:28:04,273.273 INFO    ] 2026-10-25 20:28:04
[2026-10-25 20:28:04,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:28:04,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:28:04,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:28:04,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:28:04,736.736 INFO    ] time= 25/10/2026 20:28:04
[2026-10-25 20:28:04,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:28:04,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:28:04,887.887 INFO    ] No existing commands found in stream
[2026-10-25 20:28:09,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:28:09,902.902 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 20:28:12,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:28:12,786.786 INFO    ] Checking for system updates...
[2026-10-25 20:28:12,822.822 INFO    ] 200
[2026-10-25 20:28:12,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:12,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:12,887.887 INFO    ] No update needed
[2026-10-25 20:28:12,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:12,927.927 INFO    ] 200
[2026-10-25 20:28:12,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:12,976.976 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:13,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:13,146.146 INFO    ] No camera update needed
[2026-10-25 20:28:13,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:13,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:13,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:13,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:28:15,203.203 INFO    ] ================================================
[2026-10-25 20:28:15,218.218 INFO    ] Launching Daemon at Sun Oct 25 20:28:15 IST 2026
[2026-10-25 20:28:15,229.229 INFO    ] ================================================
[2026-10-25 20:28:15,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:28:15
[2026-10-25 20:28:16,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:28:16,686.686 INFO    ] Initializing speech engine...
[2026-10-25 20:28:16,694.694 INFO    ] 2026-10-25 20:28:16
[2026-10-25 20:28:17,014.014 INFO    ] 2026-10-25 20:28:16
[2026-10-25 20:28:17,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:28:17,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:28:17,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:28:17,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:28:17,522.522 INFO    ] time= 25/10/2026 20:28:17
[2026-10-25 20:28:17,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:28:17,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:28:17,678.678 INFO    ] No existing commands found in stream
[2026-10-25 20:28:22,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:28:22,704.704 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 20:28:23,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:28:23,999.999 INFO    ] Checking for system updates...
[2026-10-25 20:28:24,037.037 INFO    ] 200
[2026-10-25 20:28:24,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:24,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:24,097.097 INFO    ] No update needed
[2026-10-25 20:28:24,100.100 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:24,135.135 INFO    ] 200
[2026-10-25 20:28:24,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:24,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:24,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:24,255.255 INFO    ] No camera update needed
[2026-10-25 20:28:24,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:24,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:24,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:24,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:28:26,311.311 INFO    ] ================================================
[2026-10-25 20:28:26,327.327 INFO    ] Launching Daemon at Sun Oct 25 20:28:26 IST 2026
[2026-10-25 20:28:26,338.338 INFO    ] ================================================
[2026-10-25 20:28:27,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:28:27
[2026-10-25 20:28:27,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:28:27,998.998 INFO    ] Initializing speech engine...
[2026-10-25 20:28:28,009.009 INFO    ] 2026-10-25 20:28:28
[2026-10-25 20:28:28,324.324 INFO    ] 2026-10-25 20:28:28
[2026-10-25 20:28:28,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:28:28,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:28:28,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:28:28,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:28:28,773.773 INFO    ] time= 25/10/2026 20:28:28
[2026-10-25 20:28:28,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:28:28,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:28:28,965.965 INFO    ] No existing commands found in stream
[2026-10-25 20:28:33,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:28:33,996.996 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 20:28:35,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:28:35,278.278 INFO    ] Checking for system updates...
[2026-10-25 20:28:35,316.316 INFO    ] 200
[2026-10-25 20:28:35,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:35,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:35,376.376 INFO    ] No update needed
[2026-10-25 20:28:35,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:35,419.419 INFO    ] 200
[2026-10-25 20:28:35,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:35,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:35,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:35,525.525 INFO    ] No camera update needed
[2026-10-25 20:28:35,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:35,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:35,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:35,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:28:37,586.586 INFO    ] ================================================
[2026-10-25 20:28:37,601.601 INFO    ] Launching Daemon at Sun Oct 25 20:28:37 IST 2026
[2026-10-25 20:28:37,611.611 INFO    ] ================================================
[2026-10-25 20:28:38,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:28:38
[2026-10-25 20:28:38,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:28:39,011.011 INFO    ] Initializing speech engine...
[2026-10-25 20:28:39,035.035 INFO    ] 2026-10-25 20:28:39
[2026-10-25 20:28:39,293.293 INFO    ] 2026-10-25 20:28:39
[2026-10-25 20:28:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:28:39,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:28:39,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:28:39,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:28:39,672.672 INFO    ] time= 25/10/2026 20:28:39
[2026-10-25 20:28:39,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:28:39,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:28:39,836.836 INFO    ] No existing commands found in stream
[2026-10-25 20:28:44,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:28:44,864.864 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 20:28:46,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:28:46,940.940 INFO    ] Checking for system updates...
[2026-10-25 20:28:46,977.977 INFO    ] 200
[2026-10-25 20:28:46,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:47,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:47,046.046 INFO    ] No update needed
[2026-10-25 20:28:47,048.048 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:47,087.087 INFO    ] 200
[2026-10-25 20:28:47,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:47,135.135 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:47,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:28:47,184.184 INFO    ] No camera update needed
[2026-10-25 20:28:47,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:47,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:47,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:47,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:28:49,244.244 INFO    ] ================================================
[2026-10-25 20:28:49,260.260 INFO    ] Launching Daemon at Sun Oct 25 20:28:49 IST 2026
[2026-10-25 20:28:49,271.271 INFO    ] ================================================
[2026-10-25 20:28:49,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:28:49
[2026-10-25 20:28:50,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:28:50,698.698 INFO    ] Initializing speech engine...
[2026-10-25 20:28:50,707.707 INFO    ] 2026-10-25 20:28:50
[2026-10-25 20:28:50,954.954 INFO    ] 2026-10-25 20:28:50
[2026-10-25 20:28:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:28:52,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:28:52,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:28:52,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:28:52,834.834 INFO    ] time= 25/10/2026 20:28:52
[2026-10-25 20:28:52,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:28:52,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:28:52,895.895 INFO    ] No existing commands found in stream
[2026-10-25 20:28:57,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:28:57,909.909 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 20:28:59,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:28:59,114.114 INFO    ] Checking for system updates...
[2026-10-25 20:28:59,151.151 INFO    ] 200
[2026-10-25 20:28:59,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:59,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:59,209.209 INFO    ] No update needed
[2026-10-25 20:28:59,212.212 INFO    ] Checking for camera pi updates...
[2026-10-25 20:28:59,247.247 INFO    ] 200
[2026-10-25 20:28:59,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:28:59,299.299 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:28:59,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:28:59,360.360 INFO    ] No camera update needed
[2026-10-25 20:28:59,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:28:59,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:28:59,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:28:59,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:29:01,441.441 INFO    ] ================================================
[2026-10-25 20:29:01,469.469 INFO    ] Launching Daemon at Sun Oct 25 20:29:01 IST 2026
[2026-10-25 20:29:01,504.504 INFO    ] ================================================
[2026-10-25 20:29:02,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:29:02
[2026-10-25 20:29:02,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:29:03,104.104 INFO    ] Initializing speech engine...
[2026-10-25 20:29:03,109.109 INFO    ] 2026-10-25 20:29:03
[2026-10-25 20:29:03,378.378 INFO    ] 2026-10-25 20:29:03
[2026-10-25 20:29:03,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:29:03,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:29:03,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:29:03,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:29:03,761.761 INFO    ] time= 25/10/2026 20:29:03
[2026-10-25 20:29:03,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:29:03,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:29:03,871.871 INFO    ] No existing commands found in stream
[2026-10-25 20:29:08,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:29:08,903.903 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 20:29:12,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:29:12,622.622 INFO    ] Checking for system updates...
[2026-10-25 20:29:12,658.658 INFO    ] 200
[2026-10-25 20:29:12,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:12,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:12,725.725 INFO    ] No update needed
[2026-10-25 20:29:12,727.727 INFO    ] Checking for camera pi updates...
[2026-10-25 20:29:12,761.761 INFO    ] 200
[2026-10-25 20:29:12,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:12,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:29:12,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:12,855.855 INFO    ] No camera update needed
[2026-10-25 20:29:12,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:29:12,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:29:12,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:29:12,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:29:14,912.912 INFO    ] ================================================
[2026-10-25 20:29:14,928.928 INFO    ] Launching Daemon at Sun Oct 25 20:29:14 IST 2026
[2026-10-25 20:29:14,939.939 INFO    ] ================================================
[2026-10-25 20:29:15,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:29:15
[2026-10-25 20:29:16,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:29:16,598.598 INFO    ] Initializing speech engine...
[2026-10-25 20:29:16,604.604 INFO    ] 2026-10-25 20:29:16
[2026-10-25 20:29:16,892.892 INFO    ] 2026-10-25 20:29:16
[2026-10-25 20:29:16,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:29:17,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:29:17,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:29:17,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:29:17,369.369 INFO    ] time= 25/10/2026 20:29:17
[2026-10-25 20:29:17,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:29:17,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:29:17,502.502 INFO    ] No existing commands found in stream
[2026-10-25 20:29:22,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:29:22,518.518 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 20:29:26,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:29:26,728.728 INFO    ] Checking for system updates...
[2026-10-25 20:29:26,771.771 INFO    ] 200
[2026-10-25 20:29:26,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:26,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:26,845.845 INFO    ] No update needed
[2026-10-25 20:29:26,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 20:29:26,889.889 INFO    ] 200
[2026-10-25 20:29:26,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:26,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:29:26,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:26,987.987 INFO    ] No camera update needed
[2026-10-25 20:29:26,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:29:26,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:29:26,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:29:27,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:29:29,050.050 INFO    ] ================================================
[2026-10-25 20:29:29,065.065 INFO    ] Launching Daemon at Sun Oct 25 20:29:29 IST 2026
[2026-10-25 20:29:29,076.076 INFO    ] ================================================
[2026-10-25 20:29:29,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:29:29
[2026-10-25 20:29:30,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:29:30,498.498 INFO    ] Initializing speech engine...
[2026-10-25 20:29:30,507.507 INFO    ] 2026-10-25 20:29:30
[2026-10-25 20:29:30,797.797 INFO    ] 2026-10-25 20:29:30
[2026-10-25 20:29:30,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:29:31,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:29:31,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:29:31,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:29:31,168.168 INFO    ] time= 25/10/2026 20:29:31
[2026-10-25 20:29:31,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:29:31,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:29:31,302.302 INFO    ] No existing commands found in stream
[2026-10-25 20:29:36,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:29:36,314.314 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 20:29:39,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:29:39,033.033 INFO    ] Checking for system updates...
[2026-10-25 20:29:39,070.070 INFO    ] 200
[2026-10-25 20:29:39,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:39,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:39,127.127 INFO    ] No update needed
[2026-10-25 20:29:39,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 20:29:39,167.167 INFO    ] 200
[2026-10-25 20:29:39,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:39,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:29:39,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:29:39,258.258 INFO    ] No camera update needed
[2026-10-25 20:29:39,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:29:39,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:29:39,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:29:39,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:29:41,313.313 INFO    ] ================================================
[2026-10-25 20:29:41,330.330 INFO    ] Launching Daemon at Sun Oct 25 20:29:41 IST 2026
[2026-10-25 20:29:41,342.342 INFO    ] ================================================
[2026-10-25 20:29:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:29:41
[2026-10-25 20:29:42,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:29:42,797.797 INFO    ] Initializing speech engine...
[2026-10-25 20:29:42,816.816 INFO    ] 2026-10-25 20:29:42
[2026-10-25 20:29:43,071.071 INFO    ] 2026-10-25 20:29:43
[2026-10-25 20:29:43,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:29:43,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:29:43,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:29:43,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:29:43,617.617 INFO    ] time= 25/10/2026 20:29:43
[2026-10-25 20:29:43,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:29:43,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:29:43,746.746 INFO    ] No existing commands found in stream
[2026-10-25 20:29:48,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:29:48,775.775 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 20:29:54,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:29:54,141.141 INFO    ] Checking for system updates...
[2026-10-25 20:29:54,179.179 INFO    ] 200
[2026-10-25 20:29:54,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:54,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:29:54,242.242 INFO    ] No update needed
[2026-10-25 20:29:54,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 20:29:54,282.282 INFO    ] 200
[2026-10-25 20:29:54,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:29:54,325.325 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:29:54,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:29:54,384.384 INFO    ] No camera update needed
[2026-10-25 20:29:54,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:29:54,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:29:54,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:29:54,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:29:56,439.439 INFO    ] ================================================
[2026-10-25 20:29:56,454.454 INFO    ] Launching Daemon at Sun Oct 25 20:29:56 IST 2026
[2026-10-25 20:29:56,465.465 INFO    ] ================================================
[2026-10-25 20:29:57,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:29:57
[2026-10-25 20:29:57,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:29:57,921.921 INFO    ] Initializing speech engine...
[2026-10-25 20:29:57,930.930 INFO    ] 2026-10-25 20:29:57
[2026-10-25 20:29:58,188.188 INFO    ] 2026-10-25 20:29:58
[2026-10-25 20:29:58,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:29:58,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:29:58,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:29:58,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:29:58,730.730 INFO    ] time= 25/10/2026 20:29:58
[2026-10-25 20:29:58,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:29:58,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:29:58,868.868 INFO    ] No existing commands found in stream
[2026-10-25 20:30:03,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:30:03,896.896 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 20:30:08,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:30:08,347.347 INFO    ] Checking for system updates...
[2026-10-25 20:30:08,383.383 INFO    ] 200
[2026-10-25 20:30:08,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:08,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:08,443.443 INFO    ] No update needed
[2026-10-25 20:30:08,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 20:30:08,480.480 INFO    ] 200
[2026-10-25 20:30:08,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:08,524.524 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:30:08,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:08,586.586 INFO    ] No camera update needed
[2026-10-25 20:30:08,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:30:08,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:30:08,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:30:08,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:30:10,643.643 INFO    ] ================================================
[2026-10-25 20:30:10,659.659 INFO    ] Launching Daemon at Sun Oct 25 20:30:10 IST 2026
[2026-10-25 20:30:10,670.670 INFO    ] ================================================
[2026-10-25 20:30:11,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:30:11
[2026-10-25 20:30:12,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:30:12,296.296 INFO    ] Initializing speech engine...
[2026-10-25 20:30:12,305.305 INFO    ] 2026-10-25 20:30:12
[2026-10-25 20:30:12,551.551 INFO    ] 2026-10-25 20:30:12
[2026-10-25 20:30:12,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:30:12,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:30:12,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:30:12,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:30:12,972.972 INFO    ] time= 25/10/2026 20:30:12
[2026-10-25 20:30:12,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:30:12,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:30:13,062.062 INFO    ] No existing commands found in stream
[2026-10-25 20:30:18,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:30:18,077.077 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 20:30:24,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:30:24,959.959 INFO    ] Checking for system updates...
[2026-10-25 20:30:25,000.000 INFO    ] 200
[2026-10-25 20:30:25,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:25,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:30:25,059.059 INFO    ] No update needed
[2026-10-25 20:30:25,061.061 INFO    ] Checking for camera pi updates...
[2026-10-25 20:30:25,096.096 INFO    ] 200
[2026-10-25 20:30:25,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:25,139.139 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:30:25,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:30:25,308.308 INFO    ] No camera update needed
[2026-10-25 20:30:25,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:30:25,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:30:25,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:30:25,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:30:27,364.364 INFO    ] ================================================
[2026-10-25 20:30:27,379.379 INFO    ] Launching Daemon at Sun Oct 25 20:30:27 IST 2026
[2026-10-25 20:30:27,390.390 INFO    ] ================================================
[2026-10-25 20:30:28,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:30:28
[2026-10-25 20:30:28,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:30:28,855.855 INFO    ] Initializing speech engine...
[2026-10-25 20:30:28,878.878 INFO    ] 2026-10-25 20:30:28
[2026-10-25 20:30:29,134.134 INFO    ] 2026-10-25 20:30:29
[2026-10-25 20:30:29,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:30:29,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:30:29,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:30:29,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:30:29,910.910 INFO    ] time= 25/10/2026 20:30:29
[2026-10-25 20:30:29,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:30:30,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:30:30,124.124 INFO    ] No existing commands found in stream
[2026-10-25 20:30:35,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:30:35,158.158 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 20:30:38,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:30:38,674.674 INFO    ] Checking for system updates...
[2026-10-25 20:30:38,710.710 INFO    ] 200
[2026-10-25 20:30:38,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:38,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:38,768.768 INFO    ] No update needed
[2026-10-25 20:30:38,771.771 INFO    ] Checking for camera pi updates...
[2026-10-25 20:30:38,804.804 INFO    ] 200
[2026-10-25 20:30:38,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:38,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:30:38,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:38,895.895 INFO    ] No camera update needed
[2026-10-25 20:30:38,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:30:38,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:30:38,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:30:38,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:30:40,952.952 INFO    ] ================================================
[2026-10-25 20:30:40,967.967 INFO    ] Launching Daemon at Sun Oct 25 20:30:40 IST 2026
[2026-10-25 20:30:40,978.978 INFO    ] ================================================
[2026-10-25 20:30:41,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:30:41
[2026-10-25 20:30:42,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:30:42,509.509 INFO    ] Initializing speech engine...
[2026-10-25 20:30:42,522.522 INFO    ] 2026-10-25 20:30:42
[2026-10-25 20:30:42,789.789 INFO    ] 2026-10-25 20:30:42
[2026-10-25 20:30:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:30:43,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:30:43,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:30:43,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:30:43,267.267 INFO    ] time= 25/10/2026 20:30:43
[2026-10-25 20:30:43,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:30:43,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:30:43,420.420 INFO    ] No existing commands found in stream
[2026-10-25 20:30:48,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:30:48,434.434 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-25 20:30:50,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:30:50,879.879 INFO    ] Checking for system updates...
[2026-10-25 20:30:50,920.920 INFO    ] 200
[2026-10-25 20:30:50,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:50,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:50,986.986 INFO    ] No update needed
[2026-10-25 20:30:50,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 20:30:51,022.022 INFO    ] 200
[2026-10-25 20:30:51,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:30:51,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:30:51,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:30:51,123.123 INFO    ] No camera update needed
[2026-10-25 20:30:51,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:30:51,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:30:51,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:30:51,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:30:53,182.182 INFO    ] ================================================
[2026-10-25 20:30:53,197.197 INFO    ] Launching Daemon at Sun Oct 25 20:30:53 IST 2026
[2026-10-25 20:30:53,207.207 INFO    ] ================================================
[2026-10-25 20:30:53,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:30:53
[2026-10-25 20:30:54,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:30:54,658.658 INFO    ] Initializing speech engine...
[2026-10-25 20:30:54,667.667 INFO    ] 2026-10-25 20:30:54
[2026-10-25 20:30:54,915.915 INFO    ] 2026-10-25 20:30:54
[2026-10-25 20:30:54,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:30:55,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:30:55,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:30:55,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:30:55,518.518 INFO    ] time= 25/10/2026 20:30:55
[2026-10-25 20:30:55,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:30:55,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:30:55,673.673 INFO    ] No existing commands found in stream
[2026-10-25 20:31:00,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:31:00,706.706 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 20:31:02,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:31:02,700.700 INFO    ] Checking for system updates...
[2026-10-25 20:31:02,748.748 INFO    ] 200
[2026-10-25 20:31:02,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:02,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:02,823.823 INFO    ] No update needed
[2026-10-25 20:31:02,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 20:31:02,873.873 INFO    ] 200
[2026-10-25 20:31:02,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:02,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:31:02,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:02,992.992 INFO    ] No camera update needed
[2026-10-25 20:31:02,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:31:02,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:31:03,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:31:03,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:31:05,054.054 INFO    ] ================================================
[2026-10-25 20:31:05,070.070 INFO    ] Launching Daemon at Sun Oct 25 20:31:05 IST 2026
[2026-10-25 20:31:05,080.080 INFO    ] ================================================
[2026-10-25 20:31:05,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:31:05
[2026-10-25 20:31:06,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:31:06,537.537 INFO    ] Initializing speech engine...
[2026-10-25 20:31:06,547.547 INFO    ] 2026-10-25 20:31:06
[2026-10-25 20:31:06,810.810 INFO    ] 2026-10-25 20:31:06
[2026-10-25 20:31:06,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:31:07,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:31:07,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:31:07,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:31:07,264.264 INFO    ] time= 25/10/2026 20:31:07
[2026-10-25 20:31:07,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:31:07,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:31:07,422.422 INFO    ] No existing commands found in stream
[2026-10-25 20:31:12,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:31:12,436.436 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 20:31:14,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:31:14,800.800 INFO    ] Checking for system updates...
[2026-10-25 20:31:14,836.836 INFO    ] 200
[2026-10-25 20:31:14,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:15,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:31:15,126.126 INFO    ] No update needed
[2026-10-25 20:31:15,128.128 INFO    ] Checking for camera pi updates...
[2026-10-25 20:31:15,167.167 INFO    ] 200
[2026-10-25 20:31:15,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:15,210.210 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:31:15,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:31:15,262.262 INFO    ] No camera update needed
[2026-10-25 20:31:15,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:31:15,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:31:15,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:31:15,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:31:17,321.321 INFO    ] ================================================
[2026-10-25 20:31:17,335.335 INFO    ] Launching Daemon at Sun Oct 25 20:31:17 IST 2026
[2026-10-25 20:31:17,346.346 INFO    ] ================================================
[2026-10-25 20:31:17,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:31:17
[2026-10-25 20:31:18,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:31:18,803.803 INFO    ] Initializing speech engine...
[2026-10-25 20:31:18,813.813 INFO    ] 2026-10-25 20:31:18
[2026-10-25 20:31:19,074.074 INFO    ] 2026-10-25 20:31:19
[2026-10-25 20:31:19,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:31:19,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:31:19,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:31:19,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:31:19,621.621 INFO    ] time= 25/10/2026 20:31:19
[2026-10-25 20:31:19,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:31:19,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:31:19,758.758 INFO    ] No existing commands found in stream
[2026-10-25 20:31:24,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:31:24,787.787 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 20:31:26,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:31:26,410.410 INFO    ] Checking for system updates...
[2026-10-25 20:31:26,451.451 INFO    ] 200
[2026-10-25 20:31:26,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:26,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:26,509.509 INFO    ] No update needed
[2026-10-25 20:31:26,512.512 INFO    ] Checking for camera pi updates...
[2026-10-25 20:31:26,550.550 INFO    ] 200
[2026-10-25 20:31:26,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:26,599.599 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:31:26,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:26,653.653 INFO    ] No camera update needed
[2026-10-25 20:31:26,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:31:26,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:31:26,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:31:26,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:31:28,709.709 INFO    ] ================================================
[2026-10-25 20:31:28,725.725 INFO    ] Launching Daemon at Sun Oct 25 20:31:28 IST 2026
[2026-10-25 20:31:28,736.736 INFO    ] ================================================
[2026-10-25 20:31:29,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:31:29
[2026-10-25 20:31:29,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:31:30,308.308 INFO    ] Initializing speech engine...
[2026-10-25 20:31:30,315.315 INFO    ] 2026-10-25 20:31:30
[2026-10-25 20:31:30,600.600 INFO    ] 2026-10-25 20:31:30
[2026-10-25 20:31:30,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:31:30,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:31:30,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:31:31,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:31:31,038.038 INFO    ] time= 25/10/2026 20:31:31
[2026-10-25 20:31:31,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:31:31,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:31:31,262.262 INFO    ] No existing commands found in stream
[2026-10-25 20:31:36,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:31:36,295.295 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 20:31:40,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:31:40,388.388 INFO    ] Checking for system updates...
[2026-10-25 20:31:40,430.430 INFO    ] 200
[2026-10-25 20:31:40,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:40,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:40,497.497 INFO    ] No update needed
[2026-10-25 20:31:40,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 20:31:40,534.534 INFO    ] 200
[2026-10-25 20:31:40,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:40,578.578 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:31:40,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:40,644.644 INFO    ] No camera update needed
[2026-10-25 20:31:40,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:31:40,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:31:40,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:31:40,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:31:42,699.699 INFO    ] ================================================
[2026-10-25 20:31:42,714.714 INFO    ] Launching Daemon at Sun Oct 25 20:31:42 IST 2026
[2026-10-25 20:31:42,726.726 INFO    ] ================================================
[2026-10-25 20:31:43,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:31:43
[2026-10-25 20:31:44,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:31:44,332.332 INFO    ] Initializing speech engine...
[2026-10-25 20:31:44,342.342 INFO    ] 2026-10-25 20:31:44
[2026-10-25 20:31:44,611.611 INFO    ] 2026-10-25 20:31:44
[2026-10-25 20:31:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:31:44,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:31:44,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:31:45,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:31:45,104.104 INFO    ] time= 25/10/2026 20:31:45
[2026-10-25 20:31:45,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:31:45,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:31:45,285.285 INFO    ] No existing commands found in stream
[2026-10-25 20:31:50,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:31:50,314.314 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 20:31:50,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:31:50,862.862 INFO    ] Checking for system updates...
[2026-10-25 20:31:50,899.899 INFO    ] 200
[2026-10-25 20:31:50,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:50,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:50,965.965 INFO    ] No update needed
[2026-10-25 20:31:50,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 20:31:51,001.001 INFO    ] 200
[2026-10-25 20:31:51,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:31:51,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:31:51,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:31:51,095.095 INFO    ] No camera update needed
[2026-10-25 20:31:51,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:31:51,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:31:51,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:31:51,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:31:53,149.149 INFO    ] ================================================
[2026-10-25 20:31:53,164.164 INFO    ] Launching Daemon at Sun Oct 25 20:31:53 IST 2026
[2026-10-25 20:31:53,175.175 INFO    ] ================================================
[2026-10-25 20:31:53,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:31:53
[2026-10-25 20:31:54,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:31:54,624.624 INFO    ] Initializing speech engine...
[2026-10-25 20:31:54,634.634 INFO    ] 2026-10-25 20:31:54
[2026-10-25 20:31:54,896.896 INFO    ] 2026-10-25 20:31:54
[2026-10-25 20:31:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:31:56,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:31:56,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:31:56,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:31:56,496.496 INFO    ] time= 25/10/2026 20:31:56
[2026-10-25 20:31:56,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:31:56,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:31:56,704.704 INFO    ] No existing commands found in stream
[2026-10-25 20:32:01,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:32:01,720.720 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 20:32:03,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:32:03,856.856 INFO    ] Checking for system updates...
[2026-10-25 20:32:03,891.891 INFO    ] 200
[2026-10-25 20:32:03,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:03,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:03,956.956 INFO    ] No update needed
[2026-10-25 20:32:03,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 20:32:03,992.992 INFO    ] 200
[2026-10-25 20:32:03,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:04,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:32:04,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:04,094.094 INFO    ] No camera update needed
[2026-10-25 20:32:04,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:32:04,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:32:04,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:32:04,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:32:06,150.150 INFO    ] ================================================
[2026-10-25 20:32:06,165.165 INFO    ] Launching Daemon at Sun Oct 25 20:32:06 IST 2026
[2026-10-25 20:32:06,177.177 INFO    ] ================================================
[2026-10-25 20:32:06,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:32:06
[2026-10-25 20:32:07,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:32:07,616.616 INFO    ] Initializing speech engine...
[2026-10-25 20:32:07,626.626 INFO    ] 2026-10-25 20:32:07
[2026-10-25 20:32:07,873.873 INFO    ] 2026-10-25 20:32:07
[2026-10-25 20:32:07,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:32:08,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:32:08,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:32:08,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:32:08,349.349 INFO    ] time= 25/10/2026 20:32:08
[2026-10-25 20:32:08,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:32:08,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:32:08,493.493 INFO    ] No existing commands found in stream
[2026-10-25 20:32:13,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:32:13,507.507 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 20:32:14,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:32:14,126.126 INFO    ] Checking for system updates...
[2026-10-25 20:32:14,163.163 INFO    ] 200
[2026-10-25 20:32:14,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:14,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:32:14,228.228 INFO    ] No update needed
[2026-10-25 20:32:14,231.231 INFO    ] Checking for camera pi updates...
[2026-10-25 20:32:14,266.266 INFO    ] 200
[2026-10-25 20:32:14,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:14,314.314 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:32:14,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:32:14,391.391 INFO    ] No camera update needed
[2026-10-25 20:32:14,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:32:14,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:32:14,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:32:14,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:32:16,451.451 INFO    ] ================================================
[2026-10-25 20:32:16,466.466 INFO    ] Launching Daemon at Sun Oct 25 20:32:16 IST 2026
[2026-10-25 20:32:16,477.477 INFO    ] ================================================
[2026-10-25 20:32:17,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:32:17
[2026-10-25 20:32:17,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:32:18,057.057 INFO    ] Initializing speech engine...
[2026-10-25 20:32:18,064.064 INFO    ] 2026-10-25 20:32:18
[2026-10-25 20:32:18,324.324 INFO    ] 2026-10-25 20:32:18
[2026-10-25 20:32:18,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:32:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:32:18,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:32:18,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:32:18,786.786 INFO    ] time= 25/10/2026 20:32:18
[2026-10-25 20:32:18,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:32:18,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:32:18,930.930 INFO    ] No existing commands found in stream
[2026-10-25 20:32:23,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:32:23,944.944 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 20:32:27,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:32:27,039.039 INFO    ] Checking for system updates...
[2026-10-25 20:32:27,076.076 INFO    ] 200
[2026-10-25 20:32:27,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:27,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:27,148.148 INFO    ] No update needed
[2026-10-25 20:32:27,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 20:32:27,190.190 INFO    ] 200
[2026-10-25 20:32:27,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:27,274.274 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:32:27,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:27,343.343 INFO    ] No camera update needed
[2026-10-25 20:32:27,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:32:27,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:32:27,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:32:27,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:32:29,404.404 INFO    ] ================================================
[2026-10-25 20:32:29,420.420 INFO    ] Launching Daemon at Sun Oct 25 20:32:29 IST 2026
[2026-10-25 20:32:29,431.431 INFO    ] ================================================
[2026-10-25 20:32:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:32:30
[2026-10-25 20:32:30,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:32:31,052.052 INFO    ] Initializing speech engine...
[2026-10-25 20:32:31,060.060 INFO    ] 2026-10-25 20:32:31
[2026-10-25 20:32:31,363.363 INFO    ] 2026-10-25 20:32:31
[2026-10-25 20:32:31,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:32:31,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:32:31,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:32:31,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:32:31,889.889 INFO    ] time= 25/10/2026 20:32:31
[2026-10-25 20:32:31,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:32:31,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:32:32,049.049 INFO    ] No existing commands found in stream
[2026-10-25 20:32:37,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:32:37,089.089 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 20:32:40,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:32:40,637.637 INFO    ] Checking for system updates...
[2026-10-25 20:32:40,677.677 INFO    ] 200
[2026-10-25 20:32:40,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:40,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:40,739.739 INFO    ] No update needed
[2026-10-25 20:32:40,741.741 INFO    ] Checking for camera pi updates...
[2026-10-25 20:32:40,776.776 INFO    ] 200
[2026-10-25 20:32:40,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:40,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:32:40,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:40,868.868 INFO    ] No camera update needed
[2026-10-25 20:32:40,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:32:40,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:32:40,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:32:40,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:32:42,927.927 INFO    ] ================================================
[2026-10-25 20:32:42,943.943 INFO    ] Launching Daemon at Sun Oct 25 20:32:42 IST 2026
[2026-10-25 20:32:42,953.953 INFO    ] ================================================
[2026-10-25 20:32:43,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:32:43
[2026-10-25 20:32:44,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:32:44,395.395 INFO    ] Initializing speech engine...
[2026-10-25 20:32:44,410.410 INFO    ] 2026-10-25 20:32:44
[2026-10-25 20:32:44,688.688 INFO    ] 2026-10-25 20:32:44
[2026-10-25 20:32:44,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:32:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:32:44,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:32:45,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:32:45,092.092 INFO    ] time= 25/10/2026 20:32:45
[2026-10-25 20:32:45,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:32:45,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:32:45,175.175 INFO    ] No existing commands found in stream
[2026-10-25 20:32:50,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:32:50,191.191 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 20:32:53,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:32:53,356.356 INFO    ] Checking for system updates...
[2026-10-25 20:32:53,395.395 INFO    ] 200
[2026-10-25 20:32:53,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:53,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:53,454.454 INFO    ] No update needed
[2026-10-25 20:32:53,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 20:32:53,489.489 INFO    ] 200
[2026-10-25 20:32:53,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:32:53,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:32:53,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:32:53,604.604 INFO    ] No camera update needed
[2026-10-25 20:32:53,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:32:53,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:32:53,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:32:53,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:32:55,659.659 INFO    ] ================================================
[2026-10-25 20:32:55,674.674 INFO    ] Launching Daemon at Sun Oct 25 20:32:55 IST 2026
[2026-10-25 20:32:55,685.685 INFO    ] ================================================
[2026-10-25 20:32:56,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:32:56
[2026-10-25 20:32:56,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:32:57,096.096 INFO    ] Initializing speech engine...
[2026-10-25 20:32:57,108.108 INFO    ] 2026-10-25 20:32:57
[2026-10-25 20:32:57,356.356 INFO    ] 2026-10-25 20:32:57
[2026-10-25 20:32:57,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:32:58,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:32:58,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:32:58,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:32:58,251.251 INFO    ] time= 25/10/2026 20:32:58
[2026-10-25 20:32:58,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:32:58,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:32:58,462.462 INFO    ] No existing commands found in stream
[2026-10-25 20:33:03,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:33:03,496.496 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 20:33:07,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:33:07,437.437 INFO    ] Checking for system updates...
[2026-10-25 20:33:07,476.476 INFO    ] 200
[2026-10-25 20:33:07,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:07,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:07,534.534 INFO    ] No update needed
[2026-10-25 20:33:07,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 20:33:07,570.570 INFO    ] 200
[2026-10-25 20:33:07,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:07,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:33:07,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:07,671.671 INFO    ] No camera update needed
[2026-10-25 20:33:07,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:33:07,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:33:07,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:33:07,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:33:09,727.727 INFO    ] ================================================
[2026-10-25 20:33:09,742.742 INFO    ] Launching Daemon at Sun Oct 25 20:33:09 IST 2026
[2026-10-25 20:33:09,753.753 INFO    ] ================================================
[2026-10-25 20:33:10,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:33:10
[2026-10-25 20:33:11,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:33:11,301.301 INFO    ] Initializing speech engine...
[2026-10-25 20:33:11,308.308 INFO    ] 2026-10-25 20:33:11
[2026-10-25 20:33:11,576.576 INFO    ] 2026-10-25 20:33:11
[2026-10-25 20:33:11,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:33:11,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:33:11,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:33:11,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:33:12,059.059 INFO    ] time= 25/10/2026 20:33:12
[2026-10-25 20:33:12,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:33:12,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:33:12,254.254 INFO    ] No existing commands found in stream
[2026-10-25 20:33:17,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:33:17,287.287 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 20:33:20,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:33:20,958.958 INFO    ] Checking for system updates...
[2026-10-25 20:33:20,997.997 INFO    ] 200
[2026-10-25 20:33:21,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:21,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:21,057.057 INFO    ] No update needed
[2026-10-25 20:33:21,059.059 INFO    ] Checking for camera pi updates...
[2026-10-25 20:33:21,095.095 INFO    ] 200
[2026-10-25 20:33:21,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:21,142.142 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:33:21,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:21,205.205 INFO    ] No camera update needed
[2026-10-25 20:33:21,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:33:21,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:33:21,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:33:21,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:33:23,262.262 INFO    ] ================================================
[2026-10-25 20:33:23,277.277 INFO    ] Launching Daemon at Sun Oct 25 20:33:23 IST 2026
[2026-10-25 20:33:23,288.288 INFO    ] ================================================
[2026-10-25 20:33:23,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:33:23
[2026-10-25 20:33:24,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:33:24,710.710 INFO    ] Initializing speech engine...
[2026-10-25 20:33:24,734.734 INFO    ] 2026-10-25 20:33:24
[2026-10-25 20:33:25,000.000 INFO    ] 2026-10-25 20:33:24
[2026-10-25 20:33:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:33:27,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:33:27,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:33:28,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:33:28,211.211 INFO    ] time= 25/10/2026 20:33:28
[2026-10-25 20:33:28,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:33:28,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:33:28,266.266 INFO    ] No existing commands found in stream
[2026-10-25 20:33:33,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:33:33,278.278 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 20:33:37,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:33:37,855.855 INFO    ] Checking for system updates...
[2026-10-25 20:33:37,893.893 INFO    ] 200
[2026-10-25 20:33:37,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:37,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:37,959.959 INFO    ] No update needed
[2026-10-25 20:33:37,961.961 INFO    ] Checking for camera pi updates...
[2026-10-25 20:33:37,995.995 INFO    ] 200
[2026-10-25 20:33:37,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:38,038.038 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:33:38,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:33:38,259.259 INFO    ] No camera update needed
[2026-10-25 20:33:38,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:33:38,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:33:38,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:33:38,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:33:40,315.315 INFO    ] ================================================
[2026-10-25 20:33:40,330.330 INFO    ] Launching Daemon at Sun Oct 25 20:33:40 IST 2026
[2026-10-25 20:33:40,341.341 INFO    ] ================================================
[2026-10-25 20:33:40,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:33:40
[2026-10-25 20:33:41,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:33:41,773.773 INFO    ] Initializing speech engine...
[2026-10-25 20:33:41,785.785 INFO    ] 2026-10-25 20:33:41
[2026-10-25 20:33:42,044.044 INFO    ] 2026-10-25 20:33:42
[2026-10-25 20:33:42,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:33:42,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:33:42,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:33:42,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:33:42,444.444 INFO    ] time= 25/10/2026 20:33:42
[2026-10-25 20:33:42,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:33:42,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:33:42,622.622 INFO    ] No existing commands found in stream
[2026-10-25 20:33:47,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:33:47,655.655 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 20:33:48,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:33:48,802.802 INFO    ] Checking for system updates...
[2026-10-25 20:33:48,838.838 INFO    ] 200
[2026-10-25 20:33:48,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:48,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:33:48,897.897 INFO    ] No update needed
[2026-10-25 20:33:48,899.899 INFO    ] Checking for camera pi updates...
[2026-10-25 20:33:48,933.933 INFO    ] 200
[2026-10-25 20:33:48,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:33:48,980.980 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:33:49,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:33:49,031.031 INFO    ] No camera update needed
[2026-10-25 20:33:49,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:33:49,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:33:49,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:33:49,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:33:51,087.087 INFO    ] ================================================
[2026-10-25 20:33:51,102.102 INFO    ] Launching Daemon at Sun Oct 25 20:33:51 IST 2026
[2026-10-25 20:33:51,113.113 INFO    ] ================================================
[2026-10-25 20:33:51,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:33:51
[2026-10-25 20:33:52,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:33:52,685.685 INFO    ] Initializing speech engine...
[2026-10-25 20:33:52,699.699 INFO    ] 2026-10-25 20:33:52
[2026-10-25 20:33:52,975.975 INFO    ] 2026-10-25 20:33:52
[2026-10-25 20:33:53,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:33:53,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:33:53,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:33:53,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:33:53,418.418 INFO    ] time= 25/10/2026 20:33:53
[2026-10-25 20:33:53,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:33:53,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:33:53,570.570 INFO    ] No existing commands found in stream
[2026-10-25 20:33:58,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:33:58,586.586 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 20:34:01,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:34:01,382.382 INFO    ] Checking for system updates...
[2026-10-25 20:34:01,419.419 INFO    ] 200
[2026-10-25 20:34:01,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:01,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:01,478.478 INFO    ] No update needed
[2026-10-25 20:34:01,481.481 INFO    ] Checking for camera pi updates...
[2026-10-25 20:34:01,516.516 INFO    ] 200
[2026-10-25 20:34:01,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:01,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:34:01,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:01,610.610 INFO    ] No camera update needed
[2026-10-25 20:34:01,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:34:01,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:34:01,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:34:01,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:34:03,669.669 INFO    ] ================================================
[2026-10-25 20:34:03,684.684 INFO    ] Launching Daemon at Sun Oct 25 20:34:03 IST 2026
[2026-10-25 20:34:03,695.695 INFO    ] ================================================
[2026-10-25 20:34:04,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:34:04
[2026-10-25 20:34:04,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:34:05,136.136 INFO    ] Initializing speech engine...
[2026-10-25 20:34:05,144.144 INFO    ] 2026-10-25 20:34:05
[2026-10-25 20:34:05,437.437 INFO    ] 2026-10-25 20:34:05
[2026-10-25 20:34:05,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:34:05,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:34:05,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:34:05,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:34:05,814.814 INFO    ] time= 25/10/2026 20:34:05
[2026-10-25 20:34:05,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:34:05,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:34:05,937.937 INFO    ] No existing commands found in stream
[2026-10-25 20:34:10,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:34:10,952.952 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 20:34:11,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:34:11,485.485 INFO    ] Checking for system updates...
[2026-10-25 20:34:11,524.524 INFO    ] 200
[2026-10-25 20:34:11,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:11,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:11,583.583 INFO    ] No update needed
[2026-10-25 20:34:11,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 20:34:11,619.619 INFO    ] 200
[2026-10-25 20:34:11,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:11,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:34:11,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:11,742.742 INFO    ] No camera update needed
[2026-10-25 20:34:11,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:34:11,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:34:11,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:34:11,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:34:13,804.804 INFO    ] ================================================
[2026-10-25 20:34:13,821.821 INFO    ] Launching Daemon at Sun Oct 25 20:34:13 IST 2026
[2026-10-25 20:34:13,834.834 INFO    ] ================================================
[2026-10-25 20:34:14,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:34:14
[2026-10-25 20:34:15,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:34:15,309.309 INFO    ] Initializing speech engine...
[2026-10-25 20:34:15,319.319 INFO    ] 2026-10-25 20:34:15
[2026-10-25 20:34:15,572.572 INFO    ] 2026-10-25 20:34:15
[2026-10-25 20:34:15,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:34:15,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:34:15,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:34:16,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:34:16,126.126 INFO    ] time= 25/10/2026 20:34:16
[2026-10-25 20:34:16,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:34:16,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:34:16,263.263 INFO    ] No existing commands found in stream
[2026-10-25 20:34:21,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:34:21,293.293 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 20:34:22,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:34:22,783.783 INFO    ] Checking for system updates...
[2026-10-25 20:34:22,819.819 INFO    ] 200
[2026-10-25 20:34:22,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:22,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:34:22,878.878 INFO    ] No update needed
[2026-10-25 20:34:22,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 20:34:22,914.914 INFO    ] 200
[2026-10-25 20:34:22,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:22,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:34:23,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:34:23,006.006 INFO    ] No camera update needed
[2026-10-25 20:34:23,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:34:23,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:34:23,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:34:23,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:34:25,062.062 INFO    ] ================================================
[2026-10-25 20:34:25,077.077 INFO    ] Launching Daemon at Sun Oct 25 20:34:25 IST 2026
[2026-10-25 20:34:25,088.088 INFO    ] ================================================
[2026-10-25 20:34:25,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:34:25
[2026-10-25 20:34:26,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:34:26,679.679 INFO    ] Initializing speech engine...
[2026-10-25 20:34:26,698.698 INFO    ] 2026-10-25 20:34:26
[2026-10-25 20:34:26,961.961 INFO    ] 2026-10-25 20:34:26
[2026-10-25 20:34:27,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:34:29,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:34:29,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:34:29,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:34:29,904.904 INFO    ] time= 25/10/2026 20:34:29
[2026-10-25 20:34:29,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:34:29,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:34:29,960.960 INFO    ] No existing commands found in stream
[2026-10-25 20:34:34,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:34:34,974.974 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 20:34:36,112.112 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:34:36,115.115 INFO    ] Checking for system updates...
[2026-10-25 20:34:36,152.152 INFO    ] 200
[2026-10-25 20:34:36,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:36,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:36,213.213 INFO    ] No update needed
[2026-10-25 20:34:36,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 20:34:36,249.249 INFO    ] 200
[2026-10-25 20:34:36,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:36,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:34:36,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:36,463.463 INFO    ] No camera update needed
[2026-10-25 20:34:36,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:34:36,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:34:36,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:34:36,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:34:38,519.519 INFO    ] ================================================
[2026-10-25 20:34:38,534.534 INFO    ] Launching Daemon at Sun Oct 25 20:34:38 IST 2026
[2026-10-25 20:34:38,545.545 INFO    ] ================================================
[2026-10-25 20:34:39,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:34:39
[2026-10-25 20:34:39,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:34:39,996.996 INFO    ] Initializing speech engine...
[2026-10-25 20:34:40,005.005 INFO    ] 2026-10-25 20:34:40
[2026-10-25 20:34:40,253.253 INFO    ] 2026-10-25 20:34:40
[2026-10-25 20:34:40,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:34:40,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:34:40,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:34:40,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:34:40,734.734 INFO    ] time= 25/10/2026 20:34:40
[2026-10-25 20:34:40,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:34:40,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:34:40,876.876 INFO    ] No existing commands found in stream
[2026-10-25 20:34:45,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:34:45,899.899 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 20:34:49,255.255 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:34:49,258.258 INFO    ] Checking for system updates...
[2026-10-25 20:34:49,301.301 INFO    ] 200
[2026-10-25 20:34:49,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:49,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:49,372.372 INFO    ] No update needed
[2026-10-25 20:34:49,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 20:34:49,408.408 INFO    ] 200
[2026-10-25 20:34:49,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:34:49,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:34:49,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:34:49,508.508 INFO    ] No camera update needed
[2026-10-25 20:34:49,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:34:49,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:34:49,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:34:49,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:34:51,565.565 INFO    ] ================================================
[2026-10-25 20:34:51,580.580 INFO    ] Launching Daemon at Sun Oct 25 20:34:51 IST 2026
[2026-10-25 20:34:51,591.591 INFO    ] ================================================
[2026-10-25 20:34:52,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:34:52
[2026-10-25 20:34:52,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:34:53,227.227 INFO    ] Initializing speech engine...
[2026-10-25 20:34:53,236.236 INFO    ] 2026-10-25 20:34:53
[2026-10-25 20:34:53,535.535 INFO    ] 2026-10-25 20:34:53
[2026-10-25 20:34:53,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:34:53,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:34:53,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:34:53,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:34:54,021.021 INFO    ] time= 25/10/2026 20:34:53
[2026-10-25 20:34:54,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:34:54,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:34:54,213.213 INFO    ] No existing commands found in stream
[2026-10-25 20:34:59,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:34:59,236.236 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 20:35:02,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:35:02,189.189 INFO    ] Checking for system updates...
[2026-10-25 20:35:02,284.284 INFO    ] 200
[2026-10-25 20:35:02,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:02,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:35:02,557.557 INFO    ] No update needed
[2026-10-25 20:35:02,581.581 INFO    ] Checking for camera pi updates...
[2026-10-25 20:35:02,625.625 INFO    ] 200
[2026-10-25 20:35:02,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:02,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:35:02,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:35:02,759.759 INFO    ] No camera update needed
[2026-10-25 20:35:02,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:35:02,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:35:02,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:35:02,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:35:04,820.820 INFO    ] ================================================
[2026-10-25 20:35:04,834.834 INFO    ] Launching Daemon at Sun Oct 25 20:35:04 IST 2026
[2026-10-25 20:35:04,845.845 INFO    ] ================================================
[2026-10-25 20:35:05,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:35:05
[2026-10-25 20:35:06,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:35:06,288.288 INFO    ] Initializing speech engine...
[2026-10-25 20:35:06,297.297 INFO    ] 2026-10-25 20:35:06
[2026-10-25 20:35:06,557.557 INFO    ] 2026-10-25 20:35:06
[2026-10-25 20:35:06,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:35:06,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:35:06,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:35:06,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:35:06,993.993 INFO    ] time= 25/10/2026 20:35:06
[2026-10-25 20:35:07,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:35:07,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:35:07,160.160 INFO    ] No existing commands found in stream
[2026-10-25 20:35:12,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:35:12,175.175 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 20:35:15,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:35:15,037.037 INFO    ] Checking for system updates...
[2026-10-25 20:35:15,076.076 INFO    ] 200
[2026-10-25 20:35:15,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:15,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:15,134.134 INFO    ] No update needed
[2026-10-25 20:35:15,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 20:35:15,174.174 INFO    ] 200
[2026-10-25 20:35:15,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:15,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:35:15,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:15,271.271 INFO    ] No camera update needed
[2026-10-25 20:35:15,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:35:15,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:35:15,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:35:15,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:35:17,326.326 INFO    ] ================================================
[2026-10-25 20:35:17,341.341 INFO    ] Launching Daemon at Sun Oct 25 20:35:17 IST 2026
[2026-10-25 20:35:17,352.352 INFO    ] ================================================
[2026-10-25 20:35:18,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:35:17
[2026-10-25 20:35:18,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:35:18,965.965 INFO    ] Initializing speech engine...
[2026-10-25 20:35:18,973.973 INFO    ] 2026-10-25 20:35:18
[2026-10-25 20:35:19,255.255 INFO    ] 2026-10-25 20:35:19
[2026-10-25 20:35:19,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:35:19,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:35:19,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:35:19,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:35:19,746.746 INFO    ] time= 25/10/2026 20:35:19
[2026-10-25 20:35:19,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:35:19,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:35:19,921.921 INFO    ] No existing commands found in stream
[2026-10-25 20:35:24,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:35:24,955.955 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 20:35:26,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:35:26,598.598 INFO    ] Checking for system updates...
[2026-10-25 20:35:26,633.633 INFO    ] 200
[2026-10-25 20:35:26,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:26,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:26,690.690 INFO    ] No update needed
[2026-10-25 20:35:26,692.692 INFO    ] Checking for camera pi updates...
[2026-10-25 20:35:26,729.729 INFO    ] 200
[2026-10-25 20:35:26,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:26,772.772 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:35:26,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:26,823.823 INFO    ] No camera update needed
[2026-10-25 20:35:26,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:35:26,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:35:26,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:35:26,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:35:28,878.878 INFO    ] ================================================
[2026-10-25 20:35:28,893.893 INFO    ] Launching Daemon at Sun Oct 25 20:35:28 IST 2026
[2026-10-25 20:35:28,904.904 INFO    ] ================================================
[2026-10-25 20:35:29,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:35:29
[2026-10-25 20:35:30,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:35:30,362.362 INFO    ] Initializing speech engine...
[2026-10-25 20:35:30,371.371 INFO    ] 2026-10-25 20:35:30
[2026-10-25 20:35:30,627.627 INFO    ] 2026-10-25 20:35:30
[2026-10-25 20:35:30,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:35:31,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:35:31,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:35:31,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:35:31,969.969 INFO    ] time= 25/10/2026 20:35:31
[2026-10-25 20:35:31,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:35:31,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:35:32,039.039 INFO    ] No existing commands found in stream
[2026-10-25 20:35:37,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:35:37,054.054 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 20:35:41,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:35:41,251.251 INFO    ] Checking for system updates...
[2026-10-25 20:35:41,291.291 INFO    ] 200
[2026-10-25 20:35:41,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:41,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:41,356.356 INFO    ] No update needed
[2026-10-25 20:35:41,358.358 INFO    ] Checking for camera pi updates...
[2026-10-25 20:35:41,392.392 INFO    ] 200
[2026-10-25 20:35:41,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:41,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:35:41,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:41,488.488 INFO    ] No camera update needed
[2026-10-25 20:35:41,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:35:41,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:35:41,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:35:41,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:35:43,546.546 INFO    ] ================================================
[2026-10-25 20:35:43,562.562 INFO    ] Launching Daemon at Sun Oct 25 20:35:43 IST 2026
[2026-10-25 20:35:43,573.573 INFO    ] ================================================
[2026-10-25 20:35:44,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:35:44
[2026-10-25 20:35:44,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:35:44,970.970 INFO    ] Initializing speech engine...
[2026-10-25 20:35:44,978.978 INFO    ] 2026-10-25 20:35:44
[2026-10-25 20:35:45,251.251 INFO    ] 2026-10-25 20:35:45
[2026-10-25 20:35:45,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:35:45,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:35:45,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:35:45,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:35:45,629.629 INFO    ] time= 25/10/2026 20:35:45
[2026-10-25 20:35:45,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:35:45,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:35:45,793.793 INFO    ] No existing commands found in stream
[2026-10-25 20:35:50,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:35:50,821.821 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 20:35:52,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:35:52,967.967 INFO    ] Checking for system updates...
[2026-10-25 20:35:53,003.003 INFO    ] 200
[2026-10-25 20:35:53,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:53,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:53,069.069 INFO    ] No update needed
[2026-10-25 20:35:53,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 20:35:53,105.105 INFO    ] 200
[2026-10-25 20:35:53,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:35:53,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:35:53,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:35:53,205.205 INFO    ] No camera update needed
[2026-10-25 20:35:53,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:35:53,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:35:53,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:35:53,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:35:55,261.261 INFO    ] ================================================
[2026-10-25 20:35:55,276.276 INFO    ] Launching Daemon at Sun Oct 25 20:35:55 IST 2026
[2026-10-25 20:35:55,286.286 INFO    ] ================================================
[2026-10-25 20:35:55,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:35:55
[2026-10-25 20:35:56,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:35:56,916.916 INFO    ] Initializing speech engine...
[2026-10-25 20:35:56,929.929 INFO    ] 2026-10-25 20:35:56
[2026-10-25 20:35:57,237.237 INFO    ] 2026-10-25 20:35:57
[2026-10-25 20:35:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:35:57,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:35:57,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:35:57,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:35:57,758.758 INFO    ] time= 25/10/2026 20:35:57
[2026-10-25 20:35:57,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:35:57,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:35:57,903.903 INFO    ] No existing commands found in stream
[2026-10-25 20:36:02,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:36:02,935.935 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 20:36:06,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:36:06,274.274 INFO    ] Checking for system updates...
[2026-10-25 20:36:06,312.312 INFO    ] 200
[2026-10-25 20:36:06,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:06,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:06,380.380 INFO    ] No update needed
[2026-10-25 20:36:06,383.383 INFO    ] Checking for camera pi updates...
[2026-10-25 20:36:06,416.416 INFO    ] 200
[2026-10-25 20:36:06,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:06,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:36:06,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:06,515.515 INFO    ] No camera update needed
[2026-10-25 20:36:06,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:36:06,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:36:06,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:36:06,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:36:08,569.569 INFO    ] ================================================
[2026-10-25 20:36:08,584.584 INFO    ] Launching Daemon at Sun Oct 25 20:36:08 IST 2026
[2026-10-25 20:36:08,595.595 INFO    ] ================================================
[2026-10-25 20:36:09,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:36:09
[2026-10-25 20:36:09,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:36:10,056.056 INFO    ] Initializing speech engine...
[2026-10-25 20:36:10,062.062 INFO    ] 2026-10-25 20:36:10
[2026-10-25 20:36:10,322.322 INFO    ] 2026-10-25 20:36:10
[2026-10-25 20:36:10,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:36:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:36:10,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:36:10,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:36:10,801.801 INFO    ] time= 25/10/2026 20:36:10
[2026-10-25 20:36:10,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:36:10,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:36:10,927.927 INFO    ] No existing commands found in stream
[2026-10-25 20:36:15,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:36:15,942.942 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 20:36:17,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:36:17,914.914 INFO    ] Checking for system updates...
[2026-10-25 20:36:17,954.954 INFO    ] 200
[2026-10-25 20:36:17,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:18,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:18,012.012 INFO    ] No update needed
[2026-10-25 20:36:18,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 20:36:18,048.048 INFO    ] 200
[2026-10-25 20:36:18,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:18,098.098 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:36:18,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:18,160.160 INFO    ] No camera update needed
[2026-10-25 20:36:18,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:36:18,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:36:18,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:36:18,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:36:20,216.216 INFO    ] ================================================
[2026-10-25 20:36:20,231.231 INFO    ] Launching Daemon at Sun Oct 25 20:36:20 IST 2026
[2026-10-25 20:36:20,243.243 INFO    ] ================================================
[2026-10-25 20:36:20,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:36:20
[2026-10-25 20:36:21,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:36:21,875.875 INFO    ] Initializing speech engine...
[2026-10-25 20:36:21,884.884 INFO    ] 2026-10-25 20:36:21
[2026-10-25 20:36:22,159.159 INFO    ] 2026-10-25 20:36:22
[2026-10-25 20:36:22,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:36:22,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:36:22,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:36:22,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:36:22,610.610 INFO    ] time= 25/10/2026 20:36:22
[2026-10-25 20:36:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:36:22,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:36:22,788.788 INFO    ] No existing commands found in stream
[2026-10-25 20:36:27,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:36:27,806.806 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 20:36:32,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:36:32,971.971 INFO    ] Checking for system updates...
[2026-10-25 20:36:33,012.012 INFO    ] 200
[2026-10-25 20:36:33,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:33,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:36:33,080.080 INFO    ] No update needed
[2026-10-25 20:36:33,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 20:36:33,118.118 INFO    ] 200
[2026-10-25 20:36:33,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:33,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:36:33,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:36:33,211.211 INFO    ] No camera update needed
[2026-10-25 20:36:33,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:36:33,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:36:33,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:36:33,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:36:35,270.270 INFO    ] ================================================
[2026-10-25 20:36:35,286.286 INFO    ] Launching Daemon at Sun Oct 25 20:36:35 IST 2026
[2026-10-25 20:36:35,297.297 INFO    ] ================================================
[2026-10-25 20:36:35,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:36:35
[2026-10-25 20:36:36,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:36:36,708.708 INFO    ] Initializing speech engine...
[2026-10-25 20:36:36,729.729 INFO    ] 2026-10-25 20:36:36
[2026-10-25 20:36:37,009.009 INFO    ] 2026-10-25 20:36:36
[2026-10-25 20:36:37,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:36:37,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:36:37,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:36:37,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:36:37,515.515 INFO    ] time= 25/10/2026 20:36:37
[2026-10-25 20:36:37,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:36:37,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:36:37,706.706 INFO    ] No existing commands found in stream
[2026-10-25 20:36:42,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:36:42,721.721 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-25 20:36:43,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:36:43,958.958 INFO    ] Checking for system updates...
[2026-10-25 20:36:44,008.008 INFO    ] 200
[2026-10-25 20:36:44,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:44,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:36:44,073.073 INFO    ] No update needed
[2026-10-25 20:36:44,075.075 INFO    ] Checking for camera pi updates...
[2026-10-25 20:36:44,113.113 INFO    ] 200
[2026-10-25 20:36:44,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:44,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:36:44,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:36:44,321.321 INFO    ] No camera update needed
[2026-10-25 20:36:44,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:36:44,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:36:44,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:36:44,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:36:46,376.376 INFO    ] ================================================
[2026-10-25 20:36:46,392.392 INFO    ] Launching Daemon at Sun Oct 25 20:36:46 IST 2026
[2026-10-25 20:36:46,403.403 INFO    ] ================================================
[2026-10-25 20:36:47,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:36:47
[2026-10-25 20:36:47,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:36:48,030.030 INFO    ] Initializing speech engine...
[2026-10-25 20:36:48,040.040 INFO    ] 2026-10-25 20:36:48
[2026-10-25 20:36:48,353.353 INFO    ] 2026-10-25 20:36:48
[2026-10-25 20:36:48,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:36:48,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:36:48,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:36:48,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:36:48,863.863 INFO    ] time= 25/10/2026 20:36:48
[2026-10-25 20:36:48,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:36:48,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:36:49,021.021 INFO    ] No existing commands found in stream
[2026-10-25 20:36:54,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:36:54,058.058 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 20:36:55,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:36:55,260.260 INFO    ] Checking for system updates...
[2026-10-25 20:36:55,297.297 INFO    ] 200
[2026-10-25 20:36:55,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:55,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:55,357.357 INFO    ] No update needed
[2026-10-25 20:36:55,361.361 INFO    ] Checking for camera pi updates...
[2026-10-25 20:36:55,400.400 INFO    ] 200
[2026-10-25 20:36:55,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:36:55,449.449 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:36:55,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:36:55,512.512 INFO    ] No camera update needed
[2026-10-25 20:36:55,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:36:55,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:36:55,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:36:55,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:36:57,574.574 INFO    ] ================================================
[2026-10-25 20:36:57,589.589 INFO    ] Launching Daemon at Sun Oct 25 20:36:57 IST 2026
[2026-10-25 20:36:57,601.601 INFO    ] ================================================
[2026-10-25 20:36:58,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:36:58
[2026-10-25 20:36:58,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:36:59,247.247 INFO    ] Initializing speech engine...
[2026-10-25 20:36:59,254.254 INFO    ] 2026-10-25 20:36:59
[2026-10-25 20:36:59,544.544 INFO    ] 2026-10-25 20:36:59
[2026-10-25 20:36:59,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:37:02,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:37:02,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:37:03,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:37:03,692.692 INFO    ] time= 25/10/2026 20:37:03
[2026-10-25 20:37:03,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:37:03,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:37:03,749.749 INFO    ] No existing commands found in stream
[2026-10-25 20:37:08,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:37:08,763.763 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 20:37:12,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:37:12,955.955 INFO    ] Checking for system updates...
[2026-10-25 20:37:12,992.992 INFO    ] 200
[2026-10-25 20:37:12,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:13,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:37:13,051.051 INFO    ] No update needed
[2026-10-25 20:37:13,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 20:37:13,092.092 INFO    ] 200
[2026-10-25 20:37:13,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:13,146.146 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:37:13,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:37:13,205.205 INFO    ] No camera update needed
[2026-10-25 20:37:13,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:37:13,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:37:13,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:37:13,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:37:15,264.264 INFO    ] ================================================
[2026-10-25 20:37:15,279.279 INFO    ] Launching Daemon at Sun Oct 25 20:37:15 IST 2026
[2026-10-25 20:37:15,289.289 INFO    ] ================================================
[2026-10-25 20:37:15,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:37:15
[2026-10-25 20:37:16,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:37:16,895.895 INFO    ] Initializing speech engine...
[2026-10-25 20:37:16,905.905 INFO    ] 2026-10-25 20:37:16
[2026-10-25 20:37:17,174.174 INFO    ] 2026-10-25 20:37:17
[2026-10-25 20:37:17,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:37:17,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:37:17,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:37:17,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:37:17,661.661 INFO    ] time= 25/10/2026 20:37:17
[2026-10-25 20:37:17,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:37:17,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:37:17,819.819 INFO    ] No existing commands found in stream
[2026-10-25 20:37:22,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:37:22,860.860 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 20:37:26,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:37:26,243.243 INFO    ] Checking for system updates...
[2026-10-25 20:37:26,284.284 INFO    ] 200
[2026-10-25 20:37:26,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:26,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:37:26,351.351 INFO    ] No update needed
[2026-10-25 20:37:26,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 20:37:26,389.389 INFO    ] 200
[2026-10-25 20:37:26,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:26,433.433 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:37:26,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:37:26,482.482 INFO    ] No camera update needed
[2026-10-25 20:37:26,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:37:26,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:37:26,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:37:26,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:37:28,541.541 INFO    ] ================================================
[2026-10-25 20:37:28,556.556 INFO    ] Launching Daemon at Sun Oct 25 20:37:28 IST 2026
[2026-10-25 20:37:28,567.567 INFO    ] ================================================
[2026-10-25 20:37:29,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:37:29
[2026-10-25 20:37:29,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:37:30,101.101 INFO    ] Initializing speech engine...
[2026-10-25 20:37:30,111.111 INFO    ] 2026-10-25 20:37:30
[2026-10-25 20:37:30,380.380 INFO    ] 2026-10-25 20:37:30
[2026-10-25 20:37:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:37:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:37:33,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:37:34,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:37:34,423.423 INFO    ] time= 25/10/2026 20:37:34
[2026-10-25 20:37:34,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:37:34,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:37:34,475.475 INFO    ] No existing commands found in stream
[2026-10-25 20:37:39,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:37:39,487.487 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 20:37:41,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:37:41,434.434 INFO    ] Checking for system updates...
[2026-10-25 20:37:41,471.471 INFO    ] 200
[2026-10-25 20:37:41,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:41,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:37:41,538.538 INFO    ] No update needed
[2026-10-25 20:37:41,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 20:37:41,578.578 INFO    ] 200
[2026-10-25 20:37:41,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:41,621.621 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:37:41,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:37:41,670.670 INFO    ] No camera update needed
[2026-10-25 20:37:41,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:37:41,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:37:41,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:37:41,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:37:43,725.725 INFO    ] ================================================
[2026-10-25 20:37:43,741.741 INFO    ] Launching Daemon at Sun Oct 25 20:37:43 IST 2026
[2026-10-25 20:37:43,751.751 INFO    ] ================================================
[2026-10-25 20:37:44,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:37:44
[2026-10-25 20:37:45,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:37:45,355.355 INFO    ] Initializing speech engine...
[2026-10-25 20:37:45,363.363 INFO    ] 2026-10-25 20:37:45
[2026-10-25 20:37:45,632.632 INFO    ] 2026-10-25 20:37:45
[2026-10-25 20:37:45,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:37:45,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:37:45,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:37:46,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:37:46,100.100 INFO    ] time= 25/10/2026 20:37:46
[2026-10-25 20:37:46,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:37:46,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:37:46,302.302 INFO    ] No existing commands found in stream
[2026-10-25 20:37:51,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:37:51,333.333 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 20:37:55,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:37:55,380.380 INFO    ] Checking for system updates...
[2026-10-25 20:37:55,418.418 INFO    ] 200
[2026-10-25 20:37:55,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:55,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:37:55,476.476 INFO    ] No update needed
[2026-10-25 20:37:55,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 20:37:55,512.512 INFO    ] 200
[2026-10-25 20:37:55,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:37:55,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:37:55,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:37:55,617.617 INFO    ] No camera update needed
[2026-10-25 20:37:55,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:37:55,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:37:55,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:37:55,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:37:57,673.673 INFO    ] ================================================
[2026-10-25 20:37:57,688.688 INFO    ] Launching Daemon at Sun Oct 25 20:37:57 IST 2026
[2026-10-25 20:37:57,699.699 INFO    ] ================================================
[2026-10-25 20:37:58,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:37:58
[2026-10-25 20:37:59,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:37:59,319.319 INFO    ] Initializing speech engine...
[2026-10-25 20:37:59,328.328 INFO    ] 2026-10-25 20:37:59
[2026-10-25 20:37:59,608.608 INFO    ] 2026-10-25 20:37:59
[2026-10-25 20:37:59,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:37:59,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:37:59,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:38:00,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:38:00,072.072 INFO    ] time= 25/10/2026 20:38:00
[2026-10-25 20:38:00,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:38:00,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:38:00,268.268 INFO    ] No existing commands found in stream
[2026-10-25 20:38:05,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:38:05,297.297 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 20:38:09,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:38:09,067.067 INFO    ] Checking for system updates...
[2026-10-25 20:38:09,104.104 INFO    ] 200
[2026-10-25 20:38:09,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:09,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:38:09,162.162 INFO    ] No update needed
[2026-10-25 20:38:09,164.164 INFO    ] Checking for camera pi updates...
[2026-10-25 20:38:09,198.198 INFO    ] 200
[2026-10-25 20:38:09,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:09,246.246 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:38:09,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:38:09,297.297 INFO    ] No camera update needed
[2026-10-25 20:38:09,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:38:09,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:38:09,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:38:09,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:38:11,358.358 INFO    ] ================================================
[2026-10-25 20:38:11,373.373 INFO    ] Launching Daemon at Sun Oct 25 20:38:11 IST 2026
[2026-10-25 20:38:11,384.384 INFO    ] ================================================
[2026-10-25 20:38:12,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:38:12
[2026-10-25 20:38:12,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:38:12,987.987 INFO    ] Initializing speech engine...
[2026-10-25 20:38:13,002.002 INFO    ] 2026-10-25 20:38:12
[2026-10-25 20:38:13,281.281 INFO    ] 2026-10-25 20:38:13
[2026-10-25 20:38:13,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:38:13,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:38:13,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:38:13,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:38:13,829.829 INFO    ] time= 25/10/2026 20:38:13
[2026-10-25 20:38:13,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:38:13,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:38:13,995.995 INFO    ] No existing commands found in stream
[2026-10-25 20:38:19,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:38:19,024.024 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 20:38:21,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:38:21,772.772 INFO    ] Checking for system updates...
[2026-10-25 20:38:21,809.809 INFO    ] 200
[2026-10-25 20:38:21,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:21,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:21,875.875 INFO    ] No update needed
[2026-10-25 20:38:21,878.878 INFO    ] Checking for camera pi updates...
[2026-10-25 20:38:21,912.912 INFO    ] 200
[2026-10-25 20:38:21,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:21,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:38:22,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:22,009.009 INFO    ] No camera update needed
[2026-10-25 20:38:22,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:38:22,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:38:22,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:38:22,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:38:24,067.067 INFO    ] ================================================
[2026-10-25 20:38:24,082.082 INFO    ] Launching Daemon at Sun Oct 25 20:38:24 IST 2026
[2026-10-25 20:38:24,093.093 INFO    ] ================================================
[2026-10-25 20:38:24,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:38:24
[2026-10-25 20:38:25,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:38:25,548.548 INFO    ] Initializing speech engine...
[2026-10-25 20:38:25,557.557 INFO    ] 2026-10-25 20:38:25
[2026-10-25 20:38:25,808.808 INFO    ] 2026-10-25 20:38:25
[2026-10-25 20:38:25,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:38:26,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:38:26,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:38:26,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:38:26,294.294 INFO    ] time= 25/10/2026 20:38:26
[2026-10-25 20:38:26,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:38:26,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:38:26,487.487 INFO    ] No existing commands found in stream
[2026-10-25 20:38:31,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:38:31,514.514 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 20:38:32,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:38:32,157.157 INFO    ] Checking for system updates...
[2026-10-25 20:38:32,196.196 INFO    ] 200
[2026-10-25 20:38:32,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:32,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:32,267.267 INFO    ] No update needed
[2026-10-25 20:38:32,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 20:38:32,310.310 INFO    ] 200
[2026-10-25 20:38:32,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:32,357.357 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:38:32,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:32,397.397 INFO    ] No camera update needed
[2026-10-25 20:38:32,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:38:32,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:38:32,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:38:32,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:38:34,456.456 INFO    ] ================================================
[2026-10-25 20:38:34,471.471 INFO    ] Launching Daemon at Sun Oct 25 20:38:34 IST 2026
[2026-10-25 20:38:34,482.482 INFO    ] ================================================
[2026-10-25 20:38:35,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:38:35
[2026-10-25 20:38:35,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:38:35,923.923 INFO    ] Initializing speech engine...
[2026-10-25 20:38:35,943.943 INFO    ] 2026-10-25 20:38:35
[2026-10-25 20:38:36,191.191 INFO    ] 2026-10-25 20:38:36
[2026-10-25 20:38:36,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:38:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:38:37,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:38:37,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:38:37,776.776 INFO    ] time= 25/10/2026 20:38:37
[2026-10-25 20:38:37,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:38:37,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:38:37,896.896 INFO    ] No existing commands found in stream
[2026-10-25 20:38:42,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:38:42,914.914 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 20:38:46,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:38:46,752.752 INFO    ] Checking for system updates...
[2026-10-25 20:38:46,788.788 INFO    ] 200
[2026-10-25 20:38:46,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:46,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:46,846.846 INFO    ] No update needed
[2026-10-25 20:38:46,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 20:38:46,882.882 INFO    ] 200
[2026-10-25 20:38:46,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:46,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:38:47,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:47,093.093 INFO    ] No camera update needed
[2026-10-25 20:38:47,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:38:47,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:38:47,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:38:47,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:38:49,147.147 INFO    ] ================================================
[2026-10-25 20:38:49,162.162 INFO    ] Launching Daemon at Sun Oct 25 20:38:49 IST 2026
[2026-10-25 20:38:49,173.173 INFO    ] ================================================
[2026-10-25 20:38:49,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:38:49
[2026-10-25 20:38:50,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:38:50,620.620 INFO    ] Initializing speech engine...
[2026-10-25 20:38:50,626.626 INFO    ] 2026-10-25 20:38:50
[2026-10-25 20:38:50,878.878 INFO    ] 2026-10-25 20:38:50
[2026-10-25 20:38:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:38:51,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:38:51,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:38:51,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:38:51,346.346 INFO    ] time= 25/10/2026 20:38:51
[2026-10-25 20:38:51,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:38:51,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:38:51,492.492 INFO    ] No existing commands found in stream
[2026-10-25 20:38:56,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:38:56,507.507 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 20:38:58,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:38:58,726.726 INFO    ] Checking for system updates...
[2026-10-25 20:38:58,762.762 INFO    ] 200
[2026-10-25 20:38:58,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:58,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:58,820.820 INFO    ] No update needed
[2026-10-25 20:38:58,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 20:38:58,856.856 INFO    ] 200
[2026-10-25 20:38:58,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:38:58,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:38:58,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:38:58,964.964 INFO    ] No camera update needed
[2026-10-25 20:38:58,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:38:58,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:38:58,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:38:58,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:39:01,024.024 INFO    ] ================================================
[2026-10-25 20:39:01,039.039 INFO    ] Launching Daemon at Sun Oct 25 20:39:01 IST 2026
[2026-10-25 20:39:01,050.050 INFO    ] ================================================
[2026-10-25 20:39:01,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:39:01
[2026-10-25 20:39:02,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:39:02,710.710 INFO    ] Initializing speech engine...
[2026-10-25 20:39:02,719.719 INFO    ] 2026-10-25 20:39:02
[2026-10-25 20:39:03,003.003 INFO    ] 2026-10-25 20:39:02
[2026-10-25 20:39:03,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:39:03,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:39:03,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:39:03,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:39:03,531.531 INFO    ] time= 25/10/2026 20:39:03
[2026-10-25 20:39:03,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:39:03,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:39:03,681.681 INFO    ] No existing commands found in stream
[2026-10-25 20:39:08,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:39:08,710.710 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 20:39:12,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:39:12,631.631 INFO    ] Checking for system updates...
[2026-10-25 20:39:12,669.669 INFO    ] 200
[2026-10-25 20:39:12,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:12,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:12,736.736 INFO    ] No update needed
[2026-10-25 20:39:12,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 20:39:12,773.773 INFO    ] 200
[2026-10-25 20:39:12,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:12,821.821 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:39:12,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:12,878.878 INFO    ] No camera update needed
[2026-10-25 20:39:12,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:39:12,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:39:12,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:39:12,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:39:14,933.933 INFO    ] ================================================
[2026-10-25 20:39:14,948.948 INFO    ] Launching Daemon at Sun Oct 25 20:39:14 IST 2026
[2026-10-25 20:39:14,959.959 INFO    ] ================================================
[2026-10-25 20:39:15,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:39:15
[2026-10-25 20:39:16,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:39:16,380.380 INFO    ] Initializing speech engine...
[2026-10-25 20:39:16,389.389 INFO    ] 2026-10-25 20:39:16
[2026-10-25 20:39:16,635.635 INFO    ] 2026-10-25 20:39:16
[2026-10-25 20:39:16,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:39:16,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:39:16,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:39:17,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:39:17,109.109 INFO    ] time= 25/10/2026 20:39:17
[2026-10-25 20:39:17,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:39:17,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:39:17,249.249 INFO    ] No existing commands found in stream
[2026-10-25 20:39:22,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:39:22,264.264 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 20:39:25,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:39:25,034.034 INFO    ] Checking for system updates...
[2026-10-25 20:39:25,069.069 INFO    ] 200
[2026-10-25 20:39:25,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:25,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:39:25,127.127 INFO    ] No update needed
[2026-10-25 20:39:25,129.129 INFO    ] Checking for camera pi updates...
[2026-10-25 20:39:25,164.164 INFO    ] 200
[2026-10-25 20:39:25,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:25,210.210 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:39:25,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:39:25,291.291 INFO    ] No camera update needed
[2026-10-25 20:39:25,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:39:25,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:39:25,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:39:25,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:39:27,347.347 INFO    ] ================================================
[2026-10-25 20:39:27,363.363 INFO    ] Launching Daemon at Sun Oct 25 20:39:27 IST 2026
[2026-10-25 20:39:27,374.374 INFO    ] ================================================
[2026-10-25 20:39:27,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:39:27
[2026-10-25 20:39:28,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:39:28,785.785 INFO    ] Initializing speech engine...
[2026-10-25 20:39:28,791.791 INFO    ] 2026-10-25 20:39:28
[2026-10-25 20:39:29,084.084 INFO    ] 2026-10-25 20:39:29
[2026-10-25 20:39:29,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:39:29,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:39:29,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:39:29,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:39:29,440.440 INFO    ] time= 25/10/2026 20:39:29
[2026-10-25 20:39:29,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:39:29,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:39:29,518.518 INFO    ] No existing commands found in stream
[2026-10-25 20:39:34,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:39:34,533.533 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 20:39:39,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:39:39,157.157 INFO    ] Checking for system updates...
[2026-10-25 20:39:39,194.194 INFO    ] 200
[2026-10-25 20:39:39,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:39,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:39,254.254 INFO    ] No update needed
[2026-10-25 20:39:39,257.257 INFO    ] Checking for camera pi updates...
[2026-10-25 20:39:39,295.295 INFO    ] 200
[2026-10-25 20:39:39,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:39,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:39:39,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:39,383.383 INFO    ] No camera update needed
[2026-10-25 20:39:39,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:39:39,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:39:39,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:39:39,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:39:41,437.437 INFO    ] ================================================
[2026-10-25 20:39:41,453.453 INFO    ] Launching Daemon at Sun Oct 25 20:39:41 IST 2026
[2026-10-25 20:39:41,464.464 INFO    ] ================================================
[2026-10-25 20:39:42,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:39:42
[2026-10-25 20:39:42,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:39:42,888.888 INFO    ] Initializing speech engine...
[2026-10-25 20:39:42,894.894 INFO    ] 2026-10-25 20:39:42
[2026-10-25 20:39:43,137.137 INFO    ] 2026-10-25 20:39:43
[2026-10-25 20:39:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:39:43,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:39:43,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:39:43,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:39:43,505.505 INFO    ] time= 25/10/2026 20:39:43
[2026-10-25 20:39:43,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:39:43,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:39:43,677.677 INFO    ] No existing commands found in stream
[2026-10-25 20:39:48,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:39:48,705.705 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 20:39:52,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:39:52,949.949 INFO    ] Checking for system updates...
[2026-10-25 20:39:52,991.991 INFO    ] 200
[2026-10-25 20:39:52,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:53,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:53,051.051 INFO    ] No update needed
[2026-10-25 20:39:53,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 20:39:53,093.093 INFO    ] 200
[2026-10-25 20:39:53,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:39:53,142.142 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:39:53,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:39:53,202.202 INFO    ] No camera update needed
[2026-10-25 20:39:53,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:39:53,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:39:53,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:39:53,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:39:55,261.261 INFO    ] ================================================
[2026-10-25 20:39:55,276.276 INFO    ] Launching Daemon at Sun Oct 25 20:39:55 IST 2026
[2026-10-25 20:39:55,288.288 INFO    ] ================================================
[2026-10-25 20:39:55,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:39:55
[2026-10-25 20:39:56,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:39:56,711.711 INFO    ] Initializing speech engine...
[2026-10-25 20:39:56,720.720 INFO    ] 2026-10-25 20:39:56
[2026-10-25 20:39:56,974.974 INFO    ] 2026-10-25 20:39:56
[2026-10-25 20:39:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:39:57,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:39:57,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:39:57,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:39:57,460.460 INFO    ] time= 25/10/2026 20:39:57
[2026-10-25 20:39:57,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:39:57,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:39:57,581.581 INFO    ] No existing commands found in stream
[2026-10-25 20:40:02,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:40:02,596.596 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 20:40:09,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:40:09,257.257 INFO    ] Checking for system updates...
[2026-10-25 20:40:09,293.293 INFO    ] 200
[2026-10-25 20:40:09,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:09,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:40:09,350.350 INFO    ] No update needed
[2026-10-25 20:40:09,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 20:40:09,386.386 INFO    ] 200
[2026-10-25 20:40:09,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:09,435.435 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:40:09,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:40:09,497.497 INFO    ] No camera update needed
[2026-10-25 20:40:09,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:40:09,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:40:09,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:40:09,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:40:11,554.554 INFO    ] ================================================
[2026-10-25 20:40:11,570.570 INFO    ] Launching Daemon at Sun Oct 25 20:40:11 IST 2026
[2026-10-25 20:40:11,581.581 INFO    ] ================================================
[2026-10-25 20:40:12,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:40:12
[2026-10-25 20:40:12,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:40:13,032.032 INFO    ] Initializing speech engine...
[2026-10-25 20:40:13,037.037 INFO    ] 2026-10-25 20:40:13
[2026-10-25 20:40:13,284.284 INFO    ] 2026-10-25 20:40:13
[2026-10-25 20:40:13,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:40:13,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:40:13,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:40:13,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:40:13,661.661 INFO    ] time= 25/10/2026 20:40:13
[2026-10-25 20:40:13,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:40:13,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:40:13,826.826 INFO    ] No existing commands found in stream
[2026-10-25 20:40:18,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:40:18,859.859 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 20:40:21,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:40:21,231.231 INFO    ] Checking for system updates...
[2026-10-25 20:40:21,271.271 INFO    ] 200
[2026-10-25 20:40:21,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:21,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:40:21,332.332 INFO    ] No update needed
[2026-10-25 20:40:21,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 20:40:21,372.372 INFO    ] 200
[2026-10-25 20:40:21,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:21,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:40:21,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:40:21,461.461 INFO    ] No camera update needed
[2026-10-25 20:40:21,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:40:21,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:40:21,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:40:21,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:40:23,517.517 INFO    ] ================================================
[2026-10-25 20:40:23,532.532 INFO    ] Launching Daemon at Sun Oct 25 20:40:23 IST 2026
[2026-10-25 20:40:23,543.543 INFO    ] ================================================
[2026-10-25 20:40:24,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:40:24
[2026-10-25 20:40:24,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:40:24,955.955 INFO    ] Initializing speech engine...
[2026-10-25 20:40:24,964.964 INFO    ] 2026-10-25 20:40:24
[2026-10-25 20:40:25,258.258 INFO    ] 2026-10-25 20:40:25
[2026-10-25 20:40:25,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:40:25,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:40:25,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:40:25,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:40:25,673.673 INFO    ] time= 25/10/2026 20:40:25
[2026-10-25 20:40:25,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:40:25,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:40:25,762.762 INFO    ] No existing commands found in stream
[2026-10-25 20:40:30,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:40:30,777.777 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 20:40:31,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:40:31,898.898 INFO    ] Checking for system updates...
[2026-10-25 20:40:31,935.935 INFO    ] 200
[2026-10-25 20:40:31,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:32,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:40:32,006.006 INFO    ] No update needed
[2026-10-25 20:40:32,009.009 INFO    ] Checking for camera pi updates...
[2026-10-25 20:40:32,055.055 INFO    ] 200
[2026-10-25 20:40:32,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:32,111.111 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:40:32,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:40:32,157.157 INFO    ] No camera update needed
[2026-10-25 20:40:32,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:40:32,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:40:32,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:40:32,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:40:34,219.219 INFO    ] ================================================
[2026-10-25 20:40:34,234.234 INFO    ] Launching Daemon at Sun Oct 25 20:40:34 IST 2026
[2026-10-25 20:40:34,244.244 INFO    ] ================================================
[2026-10-25 20:40:34,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:40:34
[2026-10-25 20:40:35,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:40:35,844.844 INFO    ] Initializing speech engine...
[2026-10-25 20:40:35,857.857 INFO    ] 2026-10-25 20:40:35
[2026-10-25 20:40:36,132.132 INFO    ] 2026-10-25 20:40:36
[2026-10-25 20:40:36,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:40:39,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:40:39,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:40:40,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:40:40,062.062 INFO    ] time= 25/10/2026 20:40:40
[2026-10-25 20:40:40,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:40:40,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:40:40,125.125 INFO    ] No existing commands found in stream
[2026-10-25 20:40:45,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:40:45,136.136 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 20:40:47,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:40:47,514.514 INFO    ] Checking for system updates...
[2026-10-25 20:40:47,550.550 INFO    ] 200
[2026-10-25 20:40:47,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:47,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:40:47,607.607 INFO    ] No update needed
[2026-10-25 20:40:47,610.610 INFO    ] Checking for camera pi updates...
[2026-10-25 20:40:47,651.651 INFO    ] 200
[2026-10-25 20:40:47,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:40:47,695.695 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:40:47,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:40:47,746.746 INFO    ] No camera update needed
[2026-10-25 20:40:47,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:40:47,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:40:47,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:40:47,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:40:49,802.802 INFO    ] ================================================
[2026-10-25 20:40:49,817.817 INFO    ] Launching Daemon at Sun Oct 25 20:40:49 IST 2026
[2026-10-25 20:40:49,828.828 INFO    ] ================================================
[2026-10-25 20:40:50,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:40:50
[2026-10-25 20:40:50,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:40:51,254.254 INFO    ] Initializing speech engine...
[2026-10-25 20:40:51,261.261 INFO    ] 2026-10-25 20:40:51
[2026-10-25 20:40:51,552.552 INFO    ] 2026-10-25 20:40:51
[2026-10-25 20:40:51,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:40:51,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:40:51,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:40:51,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:40:51,875.875 INFO    ] time= 25/10/2026 20:40:51
[2026-10-25 20:40:51,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:40:51,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:40:51,950.950 INFO    ] No existing commands found in stream
[2026-10-25 20:40:56,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:40:56,966.966 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 20:41:00,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:41:00,343.343 INFO    ] Checking for system updates...
[2026-10-25 20:41:00,378.378 INFO    ] 200
[2026-10-25 20:41:00,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:00,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:00,442.442 INFO    ] No update needed
[2026-10-25 20:41:00,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 20:41:00,482.482 INFO    ] 200
[2026-10-25 20:41:00,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:00,529.529 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:41:00,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:00,688.688 INFO    ] No camera update needed
[2026-10-25 20:41:00,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:41:00,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:41:00,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:41:00,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:41:02,748.748 INFO    ] ================================================
[2026-10-25 20:41:02,763.763 INFO    ] Launching Daemon at Sun Oct 25 20:41:02 IST 2026
[2026-10-25 20:41:02,774.774 INFO    ] ================================================
[2026-10-25 20:41:03,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:41:03
[2026-10-25 20:41:03,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:41:04,193.193 INFO    ] Initializing speech engine...
[2026-10-25 20:41:04,202.202 INFO    ] 2026-10-25 20:41:04
[2026-10-25 20:41:04,474.474 INFO    ] 2026-10-25 20:41:04
[2026-10-25 20:41:04,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:41:04,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:41:04,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:41:05,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:41:05,156.156 INFO    ] time= 25/10/2026 20:41:05
[2026-10-25 20:41:05,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:41:05,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:41:05,264.264 INFO    ] No existing commands found in stream
[2026-10-25 20:41:10,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:41:10,294.294 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 20:41:13,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:41:13,133.133 INFO    ] Checking for system updates...
[2026-10-25 20:41:13,169.169 INFO    ] 200
[2026-10-25 20:41:13,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:13,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:13,228.228 INFO    ] No update needed
[2026-10-25 20:41:13,230.230 INFO    ] Checking for camera pi updates...
[2026-10-25 20:41:13,264.264 INFO    ] 200
[2026-10-25 20:41:13,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:13,307.307 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:41:13,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:13,365.365 INFO    ] No camera update needed
[2026-10-25 20:41:13,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:41:13,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:41:13,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:41:13,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:41:15,422.422 INFO    ] ================================================
[2026-10-25 20:41:15,437.437 INFO    ] Launching Daemon at Sun Oct 25 20:41:15 IST 2026
[2026-10-25 20:41:15,448.448 INFO    ] ================================================
[2026-10-25 20:41:16,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:41:16
[2026-10-25 20:41:16,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:41:17,102.102 INFO    ] Initializing speech engine...
[2026-10-25 20:41:17,108.108 INFO    ] 2026-10-25 20:41:17
[2026-10-25 20:41:17,395.395 INFO    ] 2026-10-25 20:41:17
[2026-10-25 20:41:17,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:41:17,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:41:17,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:41:17,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:41:17,932.932 INFO    ] time= 25/10/2026 20:41:17
[2026-10-25 20:41:17,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:41:17,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:41:18,089.089 INFO    ] No existing commands found in stream
[2026-10-25 20:41:23,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:41:23,122.122 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 20:41:26,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:41:26,987.987 INFO    ] Checking for system updates...
[2026-10-25 20:41:27,025.025 INFO    ] 200
[2026-10-25 20:41:27,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:27,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:27,093.093 INFO    ] No update needed
[2026-10-25 20:41:27,096.096 INFO    ] Checking for camera pi updates...
[2026-10-25 20:41:27,132.132 INFO    ] 200
[2026-10-25 20:41:27,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:27,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:41:27,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:27,239.239 INFO    ] No camera update needed
[2026-10-25 20:41:27,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:41:27,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:41:27,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:41:27,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:41:29,299.299 INFO    ] ================================================
[2026-10-25 20:41:29,314.314 INFO    ] Launching Daemon at Sun Oct 25 20:41:29 IST 2026
[2026-10-25 20:41:29,325.325 INFO    ] ================================================
[2026-10-25 20:41:29,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:41:29
[2026-10-25 20:41:30,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:41:30,757.757 INFO    ] Initializing speech engine...
[2026-10-25 20:41:30,767.767 INFO    ] 2026-10-25 20:41:30
[2026-10-25 20:41:31,028.028 INFO    ] 2026-10-25 20:41:31
[2026-10-25 20:41:31,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:41:31,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:41:31,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:41:31,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:41:31,537.537 INFO    ] time= 25/10/2026 20:41:31
[2026-10-25 20:41:31,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:41:31,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:41:31,751.751 INFO    ] No existing commands found in stream
[2026-10-25 20:41:36,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:41:36,783.783 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 20:41:37,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:41:37,420.420 INFO    ] Checking for system updates...
[2026-10-25 20:41:37,462.462 INFO    ] 200
[2026-10-25 20:41:37,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:37,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:37,530.530 INFO    ] No update needed
[2026-10-25 20:41:37,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 20:41:37,573.573 INFO    ] 200
[2026-10-25 20:41:37,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:37,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:41:37,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:41:37,683.683 INFO    ] No camera update needed
[2026-10-25 20:41:37,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:41:37,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:41:37,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:41:37,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:41:39,744.744 INFO    ] ================================================
[2026-10-25 20:41:39,760.760 INFO    ] Launching Daemon at Sun Oct 25 20:41:39 IST 2026
[2026-10-25 20:41:39,771.771 INFO    ] ================================================
[2026-10-25 20:41:40,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:41:40
[2026-10-25 20:41:40,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:41:41,195.195 INFO    ] Initializing speech engine...
[2026-10-25 20:41:41,204.204 INFO    ] 2026-10-25 20:41:41
[2026-10-25 20:41:41,450.450 INFO    ] 2026-10-25 20:41:41
[2026-10-25 20:41:41,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:41:41,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:41:41,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:41:41,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:41:41,817.817 INFO    ] time= 25/10/2026 20:41:41
[2026-10-25 20:41:41,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:41:41,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:41:41,993.993 INFO    ] No existing commands found in stream
[2026-10-25 20:41:47,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:41:47,026.026 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 20:41:47,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:41:47,464.464 INFO    ] Checking for system updates...
[2026-10-25 20:41:47,499.499 INFO    ] 200
[2026-10-25 20:41:47,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:47,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:41:47,558.558 INFO    ] No update needed
[2026-10-25 20:41:47,561.561 INFO    ] Checking for camera pi updates...
[2026-10-25 20:41:47,595.595 INFO    ] 200
[2026-10-25 20:41:47,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:41:47,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:41:47,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:41:47,699.699 INFO    ] No camera update needed
[2026-10-25 20:41:47,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:41:47,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:41:47,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:41:47,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:41:49,755.755 INFO    ] ================================================
[2026-10-25 20:41:49,770.770 INFO    ] Launching Daemon at Sun Oct 25 20:41:49 IST 2026
[2026-10-25 20:41:49,781.781 INFO    ] ================================================
[2026-10-25 20:41:50,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:41:50
[2026-10-25 20:41:50,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:41:51,205.205 INFO    ] Initializing speech engine...
[2026-10-25 20:41:51,214.214 INFO    ] 2026-10-25 20:41:51
[2026-10-25 20:41:51,466.466 INFO    ] 2026-10-25 20:41:51
[2026-10-25 20:41:51,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:41:51,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:41:51,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:41:51,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:41:51,924.924 INFO    ] time= 25/10/2026 20:41:51
[2026-10-25 20:41:51,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:41:52,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:41:52,076.076 INFO    ] No existing commands found in stream
[2026-10-25 20:41:57,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:41:57,091.091 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 20:42:00,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:42:00,964.964 INFO    ] Checking for system updates...
[2026-10-25 20:42:00,999.999 INFO    ] 200
[2026-10-25 20:42:01,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:01,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:42:01,057.057 INFO    ] No update needed
[2026-10-25 20:42:01,060.060 INFO    ] Checking for camera pi updates...
[2026-10-25 20:42:01,093.093 INFO    ] 200
[2026-10-25 20:42:01,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:01,161.161 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:42:01,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:42:01,252.252 INFO    ] No camera update needed
[2026-10-25 20:42:01,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:42:01,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:42:01,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:42:01,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:42:03,322.322 INFO    ] ================================================
[2026-10-25 20:42:03,337.337 INFO    ] Launching Daemon at Sun Oct 25 20:42:03 IST 2026
[2026-10-25 20:42:03,348.348 INFO    ] ================================================
[2026-10-25 20:42:03,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:42:03
[2026-10-25 20:42:04,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:42:04,790.790 INFO    ] Initializing speech engine...
[2026-10-25 20:42:04,799.799 INFO    ] 2026-10-25 20:42:04
[2026-10-25 20:42:05,044.044 INFO    ] 2026-10-25 20:42:05
[2026-10-25 20:42:05,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:42:05,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:42:05,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:42:05,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:42:05,597.597 INFO    ] time= 25/10/2026 20:42:05
[2026-10-25 20:42:05,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:42:05,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:42:05,731.731 INFO    ] No existing commands found in stream
[2026-10-25 20:42:10,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:42:10,761.761 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 20:42:13,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:42:13,006.006 INFO    ] Checking for system updates...
[2026-10-25 20:42:13,044.044 INFO    ] 200
[2026-10-25 20:42:13,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:13,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:13,106.106 INFO    ] No update needed
[2026-10-25 20:42:13,108.108 INFO    ] Checking for camera pi updates...
[2026-10-25 20:42:13,145.145 INFO    ] 200
[2026-10-25 20:42:13,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:13,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:42:13,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:13,246.246 INFO    ] No camera update needed
[2026-10-25 20:42:13,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:42:13,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:42:13,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:42:13,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:42:15,304.304 INFO    ] ================================================
[2026-10-25 20:42:15,319.319 INFO    ] Launching Daemon at Sun Oct 25 20:42:15 IST 2026
[2026-10-25 20:42:15,330.330 INFO    ] ================================================
[2026-10-25 20:42:15,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:42:15
[2026-10-25 20:42:16,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:42:16,782.782 INFO    ] Initializing speech engine...
[2026-10-25 20:42:16,800.800 INFO    ] 2026-10-25 20:42:16
[2026-10-25 20:42:17,051.051 INFO    ] 2026-10-25 20:42:17
[2026-10-25 20:42:17,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:42:17,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:42:17,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:42:17,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:42:17,431.431 INFO    ] time= 25/10/2026 20:42:17
[2026-10-25 20:42:17,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:42:17,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:42:17,572.572 INFO    ] No existing commands found in stream
[2026-10-25 20:42:22,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:42:22,597.597 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 20:42:24,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:42:24,306.306 INFO    ] Checking for system updates...
[2026-10-25 20:42:24,342.342 INFO    ] 200
[2026-10-25 20:42:24,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:24,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:24,401.401 INFO    ] No update needed
[2026-10-25 20:42:24,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 20:42:24,437.437 INFO    ] 200
[2026-10-25 20:42:24,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:24,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:42:24,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:24,550.550 INFO    ] No camera update needed
[2026-10-25 20:42:24,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:42:24,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:42:24,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:42:24,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:42:26,604.604 INFO    ] ================================================
[2026-10-25 20:42:26,619.619 INFO    ] Launching Daemon at Sun Oct 25 20:42:26 IST 2026
[2026-10-25 20:42:26,629.629 INFO    ] ================================================
[2026-10-25 20:42:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:42:27
[2026-10-25 20:42:27,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:42:28,137.137 INFO    ] Initializing speech engine...
[2026-10-25 20:42:28,147.147 INFO    ] 2026-10-25 20:42:28
[2026-10-25 20:42:28,394.394 INFO    ] 2026-10-25 20:42:28
[2026-10-25 20:42:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:42:28,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:42:28,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:42:28,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:42:28,770.770 INFO    ] time= 25/10/2026 20:42:28
[2026-10-25 20:42:28,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:42:28,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:42:28,935.935 INFO    ] No existing commands found in stream
[2026-10-25 20:42:33,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:42:33,967.967 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 20:42:36,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:42:36,717.717 INFO    ] Checking for system updates...
[2026-10-25 20:42:36,754.754 INFO    ] 200
[2026-10-25 20:42:36,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:36,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:36,813.813 INFO    ] No update needed
[2026-10-25 20:42:36,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 20:42:36,849.849 INFO    ] 200
[2026-10-25 20:42:36,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:36,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:42:36,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:42:36,943.943 INFO    ] No camera update needed
[2026-10-25 20:42:36,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:42:36,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:42:36,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:42:36,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:42:39,997.997 INFO    ] ================================================
[2026-10-25 20:42:39,012.012 INFO    ] Launching Daemon at Sun Oct 25 20:42:39 IST 2026
[2026-10-25 20:42:39,023.023 INFO    ] ================================================
[2026-10-25 20:42:39,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:42:39
[2026-10-25 20:42:40,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:42:40,705.705 INFO    ] Initializing speech engine...
[2026-10-25 20:42:40,719.719 INFO    ] 2026-10-25 20:42:40
[2026-10-25 20:42:41,005.005 INFO    ] 2026-10-25 20:42:40
[2026-10-25 20:42:41,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:42:42,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:42:42,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:42:42,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:42:42,424.424 INFO    ] time= 25/10/2026 20:42:42
[2026-10-25 20:42:42,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:42:42,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:42:42,533.533 INFO    ] No existing commands found in stream
[2026-10-25 20:42:47,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:42:47,561.561 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 20:42:48,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:42:48,695.695 INFO    ] Checking for system updates...
[2026-10-25 20:42:48,732.732 INFO    ] 200
[2026-10-25 20:42:48,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:48,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:42:48,791.791 INFO    ] No update needed
[2026-10-25 20:42:48,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 20:42:48,835.835 INFO    ] 200
[2026-10-25 20:42:48,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:42:48,880.880 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:42:48,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:42:48,938.938 INFO    ] No camera update needed
[2026-10-25 20:42:48,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:42:48,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:42:48,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:42:48,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:42:50,992.992 INFO    ] ================================================
[2026-10-25 20:42:51,008.008 INFO    ] Launching Daemon at Sun Oct 25 20:42:51 IST 2026
[2026-10-25 20:42:51,018.018 INFO    ] ================================================
[2026-10-25 20:42:51,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:42:51
[2026-10-25 20:42:52,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:42:52,420.420 INFO    ] Initializing speech engine...
[2026-10-25 20:42:52,439.439 INFO    ] 2026-10-25 20:42:52
[2026-10-25 20:42:52,686.686 INFO    ] 2026-10-25 20:42:52
[2026-10-25 20:42:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:42:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:42:52,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:42:53,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:42:53,164.164 INFO    ] time= 25/10/2026 20:42:53
[2026-10-25 20:42:53,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:42:53,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:42:53,297.297 INFO    ] No existing commands found in stream
[2026-10-25 20:42:58,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:42:58,312.312 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 20:43:01,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:43:01,598.598 INFO    ] Checking for system updates...
[2026-10-25 20:43:01,639.639 INFO    ] 200
[2026-10-25 20:43:01,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:01,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:01,716.716 INFO    ] No update needed
[2026-10-25 20:43:01,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 20:43:01,756.756 INFO    ] 200
[2026-10-25 20:43:01,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:01,805.805 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:43:01,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:01,964.964 INFO    ] No camera update needed
[2026-10-25 20:43:01,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:43:01,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:43:01,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:43:01,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:43:04,032.032 INFO    ] ================================================
[2026-10-25 20:43:04,047.047 INFO    ] Launching Daemon at Sun Oct 25 20:43:04 IST 2026
[2026-10-25 20:43:04,058.058 INFO    ] ================================================
[2026-10-25 20:43:04,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:43:04
[2026-10-25 20:43:05,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:43:05,660.660 INFO    ] Initializing speech engine...
[2026-10-25 20:43:05,668.668 INFO    ] 2026-10-25 20:43:05
[2026-10-25 20:43:05,960.960 INFO    ] 2026-10-25 20:43:05
[2026-10-25 20:43:06,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:43:06,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:43:06,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:43:06,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:43:06,490.490 INFO    ] time= 25/10/2026 20:43:06
[2026-10-25 20:43:06,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:43:06,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:43:06,641.641 INFO    ] No existing commands found in stream
[2026-10-25 20:43:11,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:43:11,659.659 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 20:43:14,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:43:14,292.292 INFO    ] Checking for system updates...
[2026-10-25 20:43:14,330.330 INFO    ] 200
[2026-10-25 20:43:14,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:14,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:14,390.390 INFO    ] No update needed
[2026-10-25 20:43:14,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 20:43:14,431.431 INFO    ] 200
[2026-10-25 20:43:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:14,479.479 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:43:14,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:14,531.531 INFO    ] No camera update needed
[2026-10-25 20:43:14,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:43:14,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:43:14,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:43:14,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:43:16,590.590 INFO    ] ================================================
[2026-10-25 20:43:16,605.605 INFO    ] Launching Daemon at Sun Oct 25 20:43:16 IST 2026
[2026-10-25 20:43:16,617.617 INFO    ] ================================================
[2026-10-25 20:43:17,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:43:17
[2026-10-25 20:43:17,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:43:18,037.037 INFO    ] Initializing speech engine...
[2026-10-25 20:43:18,046.046 INFO    ] 2026-10-25 20:43:18
[2026-10-25 20:43:18,306.306 INFO    ] 2026-10-25 20:43:18
[2026-10-25 20:43:18,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:43:18,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:43:18,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:43:18,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:43:18,734.734 INFO    ] time= 25/10/2026 20:43:18
[2026-10-25 20:43:18,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:43:18,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:43:18,906.906 INFO    ] No existing commands found in stream
[2026-10-25 20:43:23,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:43:23,920.920 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 20:43:26,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:43:26,849.849 INFO    ] Checking for system updates...
[2026-10-25 20:43:26,891.891 INFO    ] 200
[2026-10-25 20:43:26,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:26,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:26,950.950 INFO    ] No update needed
[2026-10-25 20:43:26,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 20:43:26,987.987 INFO    ] 200
[2026-10-25 20:43:26,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:27,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:43:27,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:43:27,090.090 INFO    ] No camera update needed
[2026-10-25 20:43:27,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:43:27,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:43:27,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:43:27,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:43:29,145.145 INFO    ] ================================================
[2026-10-25 20:43:29,160.160 INFO    ] Launching Daemon at Sun Oct 25 20:43:29 IST 2026
[2026-10-25 20:43:29,171.171 INFO    ] ================================================
[2026-10-25 20:43:29,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:43:29
[2026-10-25 20:43:30,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:43:30,822.822 INFO    ] Initializing speech engine...
[2026-10-25 20:43:30,833.833 INFO    ] 2026-10-25 20:43:30
[2026-10-25 20:43:31,143.143 INFO    ] 2026-10-25 20:43:31
[2026-10-25 20:43:31,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:43:31,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:43:31,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:43:31,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:43:31,689.689 INFO    ] time= 25/10/2026 20:43:31
[2026-10-25 20:43:31,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:43:31,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:43:31,836.836 INFO    ] No existing commands found in stream
[2026-10-25 20:43:36,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:43:36,857.857 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 20:43:38,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:43:38,474.474 INFO    ] Checking for system updates...
[2026-10-25 20:43:38,511.511 INFO    ] 200
[2026-10-25 20:43:38,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:38,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:43:38,571.571 INFO    ] No update needed
[2026-10-25 20:43:38,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 20:43:38,612.612 INFO    ] 200
[2026-10-25 20:43:38,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:38,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:43:38,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:43:38,714.714 INFO    ] No camera update needed
[2026-10-25 20:43:38,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:43:38,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:43:38,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:43:38,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:43:40,774.774 INFO    ] ================================================
[2026-10-25 20:43:40,789.789 INFO    ] Launching Daemon at Sun Oct 25 20:43:40 IST 2026
[2026-10-25 20:43:40,800.800 INFO    ] ================================================
[2026-10-25 20:43:41,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:43:41
[2026-10-25 20:43:41,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:43:42,214.214 INFO    ] Initializing speech engine...
[2026-10-25 20:43:42,223.223 INFO    ] 2026-10-25 20:43:42
[2026-10-25 20:43:42,468.468 INFO    ] 2026-10-25 20:43:42
[2026-10-25 20:43:42,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:43:43,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:43:43,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:43:43,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:43:43,575.575 INFO    ] time= 25/10/2026 20:43:43
[2026-10-25 20:43:43,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:43:43,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:43:43,680.680 INFO    ] No existing commands found in stream
[2026-10-25 20:43:48,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:43:48,694.694 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 20:43:52,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:43:52,300.300 INFO    ] Checking for system updates...
[2026-10-25 20:43:52,337.337 INFO    ] 200
[2026-10-25 20:43:52,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:52,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:43:52,397.397 INFO    ] No update needed
[2026-10-25 20:43:52,399.399 INFO    ] Checking for camera pi updates...
[2026-10-25 20:43:52,437.437 INFO    ] 200
[2026-10-25 20:43:52,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:43:52,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:43:52,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:43:52,537.537 INFO    ] No camera update needed
[2026-10-25 20:43:52,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:43:52,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:43:52,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:43:52,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:43:54,593.593 INFO    ] ================================================
[2026-10-25 20:43:54,608.608 INFO    ] Launching Daemon at Sun Oct 25 20:43:54 IST 2026
[2026-10-25 20:43:54,619.619 INFO    ] ================================================
[2026-10-25 20:43:55,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:43:55
[2026-10-25 20:43:55,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:43:56,027.027 INFO    ] Initializing speech engine...
[2026-10-25 20:43:56,043.043 INFO    ] 2026-10-25 20:43:56
[2026-10-25 20:43:56,316.316 INFO    ] 2026-10-25 20:43:56
[2026-10-25 20:43:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:43:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:43:56,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:43:56,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:43:56,819.819 INFO    ] time= 25/10/2026 20:43:56
[2026-10-25 20:43:56,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:43:56,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:43:56,945.945 INFO    ] No existing commands found in stream
[2026-10-25 20:44:01,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:44:01,956.956 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 20:44:05,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:44:05,953.953 INFO    ] Checking for system updates...
[2026-10-25 20:44:05,990.990 INFO    ] 200
[2026-10-25 20:44:05,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:06,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:44:06,054.054 INFO    ] No update needed
[2026-10-25 20:44:06,057.057 INFO    ] Checking for camera pi updates...
[2026-10-25 20:44:06,094.094 INFO    ] 200
[2026-10-25 20:44:06,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:06,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:44:06,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:44:06,190.190 INFO    ] No camera update needed
[2026-10-25 20:44:06,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:44:06,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:44:06,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:44:06,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:44:08,245.245 INFO    ] ================================================
[2026-10-25 20:44:08,260.260 INFO    ] Launching Daemon at Sun Oct 25 20:44:08 IST 2026
[2026-10-25 20:44:08,271.271 INFO    ] ================================================
[2026-10-25 20:44:08,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:44:08
[2026-10-25 20:44:09,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:44:09,689.689 INFO    ] Initializing speech engine...
[2026-10-25 20:44:09,698.698 INFO    ] 2026-10-25 20:44:09
[2026-10-25 20:44:09,947.947 INFO    ] 2026-10-25 20:44:09
[2026-10-25 20:44:09,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:44:10,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:44:10,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:44:13,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:44:13,430.430 INFO    ] time= 25/10/2026 20:44:13
[2026-10-25 20:44:13,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:44:13,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:44:13,481.481 INFO    ] No existing commands found in stream
[2026-10-25 20:44:18,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:44:18,493.493 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 20:44:19,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:44:19,233.233 INFO    ] Checking for system updates...
[2026-10-25 20:44:19,273.273 INFO    ] 200
[2026-10-25 20:44:19,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:19,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:19,335.335 INFO    ] No update needed
[2026-10-25 20:44:19,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 20:44:19,372.372 INFO    ] 200
[2026-10-25 20:44:19,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:19,418.418 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:44:19,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:19,482.482 INFO    ] No camera update needed
[2026-10-25 20:44:19,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:44:19,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:44:19,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:44:19,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:44:21,540.540 INFO    ] ================================================
[2026-10-25 20:44:21,555.555 INFO    ] Launching Daemon at Sun Oct 25 20:44:21 IST 2026
[2026-10-25 20:44:21,565.565 INFO    ] ================================================
[2026-10-25 20:44:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:44:22
[2026-10-25 20:44:22,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:44:23,133.133 INFO    ] Initializing speech engine...
[2026-10-25 20:44:23,144.144 INFO    ] 2026-10-25 20:44:23
[2026-10-25 20:44:23,404.404 INFO    ] 2026-10-25 20:44:23
[2026-10-25 20:44:23,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:44:23,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:44:23,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:44:23,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:44:23,888.888 INFO    ] time= 25/10/2026 20:44:23
[2026-10-25 20:44:23,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:44:23,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:44:24,036.036 INFO    ] No existing commands found in stream
[2026-10-25 20:44:29,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:44:29,051.051 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 20:44:30,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:44:30,113.113 INFO    ] Checking for system updates...
[2026-10-25 20:44:30,151.151 INFO    ] 200
[2026-10-25 20:44:30,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:30,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:30,218.218 INFO    ] No update needed
[2026-10-25 20:44:30,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 20:44:30,257.257 INFO    ] 200
[2026-10-25 20:44:30,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:30,302.302 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:44:30,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:30,355.355 INFO    ] No camera update needed
[2026-10-25 20:44:30,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:44:30,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:44:30,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:44:30,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:44:32,410.410 INFO    ] ================================================
[2026-10-25 20:44:32,427.427 INFO    ] Launching Daemon at Sun Oct 25 20:44:32 IST 2026
[2026-10-25 20:44:32,439.439 INFO    ] ================================================
[2026-10-25 20:44:33,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:44:33
[2026-10-25 20:44:33,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:44:33,902.902 INFO    ] Initializing speech engine...
[2026-10-25 20:44:33,910.910 INFO    ] 2026-10-25 20:44:33
[2026-10-25 20:44:34,183.183 INFO    ] 2026-10-25 20:44:34
[2026-10-25 20:44:34,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:44:34,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:44:34,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:44:34,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:44:34,558.558 INFO    ] time= 25/10/2026 20:44:34
[2026-10-25 20:44:34,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:44:34,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:44:34,726.726 INFO    ] No existing commands found in stream
[2026-10-25 20:44:39,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:44:39,759.759 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 20:44:44,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:44:44,452.452 INFO    ] Checking for system updates...
[2026-10-25 20:44:44,491.491 INFO    ] 200
[2026-10-25 20:44:44,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:44,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:44:44,551.551 INFO    ] No update needed
[2026-10-25 20:44:44,553.553 INFO    ] Checking for camera pi updates...
[2026-10-25 20:44:44,591.591 INFO    ] 200
[2026-10-25 20:44:44,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:44,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:44:44,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:44:44,696.696 INFO    ] No camera update needed
[2026-10-25 20:44:44,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:44:44,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:44:44,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:44:44,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:44:46,756.756 INFO    ] ================================================
[2026-10-25 20:44:46,772.772 INFO    ] Launching Daemon at Sun Oct 25 20:44:46 IST 2026
[2026-10-25 20:44:46,783.783 INFO    ] ================================================
[2026-10-25 20:44:47,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:44:47
[2026-10-25 20:44:47,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:44:48,187.187 INFO    ] Initializing speech engine...
[2026-10-25 20:44:48,200.200 INFO    ] 2026-10-25 20:44:48
[2026-10-25 20:44:48,477.477 INFO    ] 2026-10-25 20:44:48
[2026-10-25 20:44:48,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:44:48,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:44:48,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:44:48,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:44:48,885.885 INFO    ] time= 25/10/2026 20:44:48
[2026-10-25 20:44:48,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:44:48,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:44:49,039.039 INFO    ] No existing commands found in stream
[2026-10-25 20:44:54,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:44:54,066.066 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 20:44:55,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:44:55,961.961 INFO    ] Checking for system updates...
[2026-10-25 20:44:56,000.000 INFO    ] 200
[2026-10-25 20:44:56,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:56,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:56,067.067 INFO    ] No update needed
[2026-10-25 20:44:56,069.069 INFO    ] Checking for camera pi updates...
[2026-10-25 20:44:56,118.118 INFO    ] 200
[2026-10-25 20:44:56,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:44:56,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:44:56,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:44:56,211.211 INFO    ] No camera update needed
[2026-10-25 20:44:56,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:44:56,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:44:56,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:44:56,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:44:58,266.266 INFO    ] ================================================
[2026-10-25 20:44:58,281.281 INFO    ] Launching Daemon at Sun Oct 25 20:44:58 IST 2026
[2026-10-25 20:44:58,293.293 INFO    ] ================================================
[2026-10-25 20:44:58,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:44:58
[2026-10-25 20:44:59,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:44:59,761.761 INFO    ] Initializing speech engine...
[2026-10-25 20:44:59,772.772 INFO    ] 2026-10-25 20:44:59
[2026-10-25 20:45:00,035.035 INFO    ] 2026-10-25 20:45:00
[2026-10-25 20:45:00,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:45:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:45:00,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:45:00,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:45:00,443.443 INFO    ] time= 25/10/2026 20:45:00
[2026-10-25 20:45:00,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:45:00,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:45:00,585.585 INFO    ] No existing commands found in stream
[2026-10-25 20:45:05,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:45:05,618.618 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 20:45:08,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:45:08,110.110 INFO    ] Checking for system updates...
[2026-10-25 20:45:08,147.147 INFO    ] 200
[2026-10-25 20:45:08,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:08,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:08,210.210 INFO    ] No update needed
[2026-10-25 20:45:08,213.213 INFO    ] Checking for camera pi updates...
[2026-10-25 20:45:08,249.249 INFO    ] 200
[2026-10-25 20:45:08,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:08,293.293 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:45:08,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:08,343.343 INFO    ] No camera update needed
[2026-10-25 20:45:08,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:45:08,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:45:08,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:45:08,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:45:10,401.401 INFO    ] ================================================
[2026-10-25 20:45:10,417.417 INFO    ] Launching Daemon at Sun Oct 25 20:45:10 IST 2026
[2026-10-25 20:45:10,429.429 INFO    ] ================================================
[2026-10-25 20:45:11,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:45:11
[2026-10-25 20:45:11,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:45:11,929.929 INFO    ] Initializing speech engine...
[2026-10-25 20:45:11,944.944 INFO    ] 2026-10-25 20:45:11
[2026-10-25 20:45:12,226.226 INFO    ] 2026-10-25 20:45:12
[2026-10-25 20:45:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:45:14,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:45:14,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:45:14,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:45:14,885.885 INFO    ] time= 25/10/2026 20:45:14
[2026-10-25 20:45:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:45:14,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:45:15,017.017 INFO    ] No existing commands found in stream
[2026-10-25 20:45:20,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:45:20,030.030 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 20:45:23,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:45:23,214.214 INFO    ] Checking for system updates...
[2026-10-25 20:45:23,251.251 INFO    ] 200
[2026-10-25 20:45:23,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:23,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:45:23,308.308 INFO    ] No update needed
[2026-10-25 20:45:23,310.310 INFO    ] Checking for camera pi updates...
[2026-10-25 20:45:23,347.347 INFO    ] 200
[2026-10-25 20:45:23,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:23,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:45:23,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:45:23,447.447 INFO    ] No camera update needed
[2026-10-25 20:45:23,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:45:23,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:45:23,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:45:23,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:45:25,503.503 INFO    ] ================================================
[2026-10-25 20:45:25,518.518 INFO    ] Launching Daemon at Sun Oct 25 20:45:25 IST 2026
[2026-10-25 20:45:25,529.529 INFO    ] ================================================
[2026-10-25 20:45:26,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:45:26
[2026-10-25 20:45:26,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:45:27,038.038 INFO    ] Initializing speech engine...
[2026-10-25 20:45:27,047.047 INFO    ] 2026-10-25 20:45:27
[2026-10-25 20:45:27,314.314 INFO    ] 2026-10-25 20:45:27
[2026-10-25 20:45:27,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:45:27,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:45:27,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:45:27,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:45:27,800.800 INFO    ] time= 25/10/2026 20:45:27
[2026-10-25 20:45:27,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:45:27,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:45:27,940.940 INFO    ] No existing commands found in stream
[2026-10-25 20:45:32,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:45:32,956.956 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 20:45:34,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:45:34,337.337 INFO    ] Checking for system updates...
[2026-10-25 20:45:34,377.377 INFO    ] 200
[2026-10-25 20:45:34,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:34,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:34,437.437 INFO    ] No update needed
[2026-10-25 20:45:34,440.440 INFO    ] Checking for camera pi updates...
[2026-10-25 20:45:34,477.477 INFO    ] 200
[2026-10-25 20:45:34,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:34,526.526 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:45:34,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:34,577.577 INFO    ] No camera update needed
[2026-10-25 20:45:34,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:45:34,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:45:34,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:45:34,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:45:36,634.634 INFO    ] ================================================
[2026-10-25 20:45:36,649.649 INFO    ] Launching Daemon at Sun Oct 25 20:45:36 IST 2026
[2026-10-25 20:45:36,660.660 INFO    ] ================================================
[2026-10-25 20:45:37,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:45:37
[2026-10-25 20:45:37,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:45:38,232.232 INFO    ] Initializing speech engine...
[2026-10-25 20:45:38,240.240 INFO    ] 2026-10-25 20:45:38
[2026-10-25 20:45:38,512.512 INFO    ] 2026-10-25 20:45:38
[2026-10-25 20:45:38,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:45:38,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:45:38,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:45:38,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:45:38,988.988 INFO    ] time= 25/10/2026 20:45:38
[2026-10-25 20:45:39,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:45:39,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:45:39,133.133 INFO    ] No existing commands found in stream
[2026-10-25 20:45:44,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:45:44,149.149 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-25 20:45:45,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:45:45,963.963 INFO    ] Checking for system updates...
[2026-10-25 20:45:46,003.003 INFO    ] 200
[2026-10-25 20:45:46,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:46,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:45:46,070.070 INFO    ] No update needed
[2026-10-25 20:45:46,073.073 INFO    ] Checking for camera pi updates...
[2026-10-25 20:45:46,108.108 INFO    ] 200
[2026-10-25 20:45:46,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:46,153.153 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:45:46,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:45:46,205.205 INFO    ] No camera update needed
[2026-10-25 20:45:46,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:45:46,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:45:46,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:45:46,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:45:48,264.264 INFO    ] ================================================
[2026-10-25 20:45:48,280.280 INFO    ] Launching Daemon at Sun Oct 25 20:45:48 IST 2026
[2026-10-25 20:45:48,291.291 INFO    ] ================================================
[2026-10-25 20:45:48,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:45:48
[2026-10-25 20:45:49,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:45:49,734.734 INFO    ] Initializing speech engine...
[2026-10-25 20:45:49,742.742 INFO    ] 2026-10-25 20:45:49
[2026-10-25 20:45:49,998.998 INFO    ] 2026-10-25 20:45:49
[2026-10-25 20:45:50,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:45:50,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:45:50,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:45:50,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:45:50,606.606 INFO    ] time= 25/10/2026 20:45:50
[2026-10-25 20:45:50,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:45:50,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:45:50,746.746 INFO    ] No existing commands found in stream
[2026-10-25 20:45:55,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:45:55,779.779 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 20:45:59,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:45:59,658.658 INFO    ] Checking for system updates...
[2026-10-25 20:45:59,695.695 INFO    ] 200
[2026-10-25 20:45:59,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:59,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:59,759.759 INFO    ] No update needed
[2026-10-25 20:45:59,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 20:45:59,801.801 INFO    ] 200
[2026-10-25 20:45:59,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:45:59,847.847 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:45:59,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:45:59,899.899 INFO    ] No camera update needed
[2026-10-25 20:45:59,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:45:59,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:45:59,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:45:59,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:46:01,961.961 INFO    ] ================================================
[2026-10-25 20:46:01,982.982 INFO    ] Launching Daemon at Sun Oct 25 20:46:01 IST 2026
[2026-10-25 20:46:02,996.996 INFO    ] ================================================
[2026-10-25 20:46:02,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:46:02
[2026-10-25 20:46:03,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:46:03,603.603 INFO    ] Initializing speech engine...
[2026-10-25 20:46:03,612.612 INFO    ] 2026-10-25 20:46:03
[2026-10-25 20:46:03,872.872 INFO    ] 2026-10-25 20:46:03
[2026-10-25 20:46:03,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:46:04,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:46:04,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:46:04,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:46:04,372.372 INFO    ] time= 25/10/2026 20:46:04
[2026-10-25 20:46:04,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:46:04,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:46:04,512.512 INFO    ] No existing commands found in stream
[2026-10-25 20:46:09,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:46:09,527.527 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 20:46:11,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:46:11,868.868 INFO    ] Checking for system updates...
[2026-10-25 20:46:11,906.906 INFO    ] 200
[2026-10-25 20:46:11,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:11,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:11,966.966 INFO    ] No update needed
[2026-10-25 20:46:11,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 20:46:12,003.003 INFO    ] 200
[2026-10-25 20:46:12,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:12,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:46:12,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:12,119.119 INFO    ] No camera update needed
[2026-10-25 20:46:12,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:46:12,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:46:12,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:46:12,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:46:14,178.178 INFO    ] ================================================
[2026-10-25 20:46:14,194.194 INFO    ] Launching Daemon at Sun Oct 25 20:46:14 IST 2026
[2026-10-25 20:46:14,205.205 INFO    ] ================================================
[2026-10-25 20:46:14,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:46:14
[2026-10-25 20:46:15,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:46:15,605.605 INFO    ] Initializing speech engine...
[2026-10-25 20:46:15,628.628 INFO    ] 2026-10-25 20:46:15
[2026-10-25 20:46:15,883.883 INFO    ] 2026-10-25 20:46:15
[2026-10-25 20:46:15,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:46:16,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:46:16,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:46:16,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:46:16,260.260 INFO    ] time= 25/10/2026 20:46:16
[2026-10-25 20:46:16,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:46:16,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:46:16,435.435 INFO    ] No existing commands found in stream
[2026-10-25 20:46:21,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:46:21,468.468 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 20:46:22,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:46:22,974.974 INFO    ] Checking for system updates...
[2026-10-25 20:46:23,010.010 INFO    ] 200
[2026-10-25 20:46:23,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:23,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:23,068.068 INFO    ] No update needed
[2026-10-25 20:46:23,070.070 INFO    ] Checking for camera pi updates...
[2026-10-25 20:46:23,105.105 INFO    ] 200
[2026-10-25 20:46:23,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:23,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:46:23,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:23,201.201 INFO    ] No camera update needed
[2026-10-25 20:46:23,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:46:23,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:46:23,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:46:23,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:46:25,258.258 INFO    ] ================================================
[2026-10-25 20:46:25,274.274 INFO    ] Launching Daemon at Sun Oct 25 20:46:25 IST 2026
[2026-10-25 20:46:25,285.285 INFO    ] ================================================
[2026-10-25 20:46:25,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:46:25
[2026-10-25 20:46:26,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:46:26,736.736 INFO    ] Initializing speech engine...
[2026-10-25 20:46:26,746.746 INFO    ] 2026-10-25 20:46:26
[2026-10-25 20:46:27,008.008 INFO    ] 2026-10-25 20:46:27
[2026-10-25 20:46:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:46:27,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:46:27,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:46:27,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:46:27,488.488 INFO    ] time= 25/10/2026 20:46:27
[2026-10-25 20:46:27,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:46:27,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:46:27,678.678 INFO    ] No existing commands found in stream
[2026-10-25 20:46:32,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:46:32,711.711 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 20:46:35,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:46:35,856.856 INFO    ] Checking for system updates...
[2026-10-25 20:46:35,892.892 INFO    ] 200
[2026-10-25 20:46:35,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:35,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:46:35,949.949 INFO    ] No update needed
[2026-10-25 20:46:35,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 20:46:35,987.987 INFO    ] 200
[2026-10-25 20:46:35,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:36,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:46:36,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:46:36,095.095 INFO    ] No camera update needed
[2026-10-25 20:46:36,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:46:36,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:46:36,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:46:36,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:46:38,154.154 INFO    ] ================================================
[2026-10-25 20:46:38,170.170 INFO    ] Launching Daemon at Sun Oct 25 20:46:38 IST 2026
[2026-10-25 20:46:38,182.182 INFO    ] ================================================
[2026-10-25 20:46:38,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:46:38
[2026-10-25 20:46:39,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:46:39,742.742 INFO    ] Initializing speech engine...
[2026-10-25 20:46:39,755.755 INFO    ] 2026-10-25 20:46:39
[2026-10-25 20:46:40,029.029 INFO    ] 2026-10-25 20:46:40
[2026-10-25 20:46:40,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:46:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:46:40,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:46:40,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:46:40,502.502 INFO    ] time= 25/10/2026 20:46:40
[2026-10-25 20:46:40,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:46:40,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:46:40,670.670 INFO    ] No existing commands found in stream
[2026-10-25 20:46:45,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:46:45,686.686 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 20:46:48,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:46:48,327.327 INFO    ] Checking for system updates...
[2026-10-25 20:46:48,363.363 INFO    ] 200
[2026-10-25 20:46:48,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:48,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:48,421.421 INFO    ] No update needed
[2026-10-25 20:46:48,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 20:46:48,459.459 INFO    ] 200
[2026-10-25 20:46:48,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:46:48,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:46:48,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:46:48,557.557 INFO    ] No camera update needed
[2026-10-25 20:46:48,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:46:48,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:46:48,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:46:48,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:46:50,615.615 INFO    ] ================================================
[2026-10-25 20:46:50,631.631 INFO    ] Launching Daemon at Sun Oct 25 20:46:50 IST 2026
[2026-10-25 20:46:50,643.643 INFO    ] ================================================
[2026-10-25 20:46:51,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:46:51
[2026-10-25 20:46:51,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:46:52,245.245 INFO    ] Initializing speech engine...
[2026-10-25 20:46:52,257.257 INFO    ] 2026-10-25 20:46:52
[2026-10-25 20:46:52,539.539 INFO    ] 2026-10-25 20:46:52
[2026-10-25 20:46:52,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:46:52,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:46:52,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:46:53,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:46:53,125.125 INFO    ] time= 25/10/2026 20:46:53
[2026-10-25 20:46:53,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:46:53,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:46:53,332.332 INFO    ] No existing commands found in stream
[2026-10-25 20:46:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:46:58,364.364 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 20:47:00,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:47:00,609.609 INFO    ] Checking for system updates...
[2026-10-25 20:47:00,651.651 INFO    ] 200
[2026-10-25 20:47:00,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:00,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:00,738.738 INFO    ] No update needed
[2026-10-25 20:47:00,741.741 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:00,786.786 INFO    ] 200
[2026-10-25 20:47:00,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:00,840.840 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:00,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:00,896.896 INFO    ] No camera update needed
[2026-10-25 20:47:00,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:00,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:00,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:00,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:47:02,955.955 INFO    ] ================================================
[2026-10-25 20:47:02,972.972 INFO    ] Launching Daemon at Sun Oct 25 20:47:02 IST 2026
[2026-10-25 20:47:02,985.985 INFO    ] ================================================
[2026-10-25 20:47:03,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:47:03
[2026-10-25 20:47:04,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:47:04,486.486 INFO    ] Initializing speech engine...
[2026-10-25 20:47:04,496.496 INFO    ] 2026-10-25 20:47:04
[2026-10-25 20:47:04,757.757 INFO    ] 2026-10-25 20:47:04
[2026-10-25 20:47:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:47:05,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:47:05,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:47:05,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:47:05,221.221 INFO    ] time= 25/10/2026 20:47:05
[2026-10-25 20:47:05,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:47:05,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:47:05,407.407 INFO    ] No existing commands found in stream
[2026-10-25 20:47:10,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:47:10,436.436 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 20:47:12,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:47:12,499.499 INFO    ] Checking for system updates...
[2026-10-25 20:47:12,538.538 INFO    ] 200
[2026-10-25 20:47:12,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:12,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:12,600.600 INFO    ] No update needed
[2026-10-25 20:47:12,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:12,642.642 INFO    ] 200
[2026-10-25 20:47:12,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:12,691.691 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:12,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:12,860.860 INFO    ] No camera update needed
[2026-10-25 20:47:12,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:12,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:12,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:12,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:47:14,919.919 INFO    ] ================================================
[2026-10-25 20:47:14,935.935 INFO    ] Launching Daemon at Sun Oct 25 20:47:14 IST 2026
[2026-10-25 20:47:14,947.947 INFO    ] ================================================
[2026-10-25 20:47:15,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:47:15
[2026-10-25 20:47:16,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:47:16,446.446 INFO    ] Initializing speech engine...
[2026-10-25 20:47:16,455.455 INFO    ] 2026-10-25 20:47:16
[2026-10-25 20:47:16,728.728 INFO    ] 2026-10-25 20:47:16
[2026-10-25 20:47:16,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:47:17,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:47:17,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:47:17,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:47:17,238.238 INFO    ] time= 25/10/2026 20:47:17
[2026-10-25 20:47:17,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:47:17,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:47:17,421.421 INFO    ] No existing commands found in stream
[2026-10-25 20:47:22,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:47:22,436.436 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 20:47:23,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:47:23,741.741 INFO    ] Checking for system updates...
[2026-10-25 20:47:23,781.781 INFO    ] 200
[2026-10-25 20:47:23,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:23,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:23,845.845 INFO    ] No update needed
[2026-10-25 20:47:23,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:23,881.881 INFO    ] 200
[2026-10-25 20:47:23,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:23,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:23,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:23,976.976 INFO    ] No camera update needed
[2026-10-25 20:47:23,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:23,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:23,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:23,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:47:26,032.032 INFO    ] ================================================
[2026-10-25 20:47:26,047.047 INFO    ] Launching Daemon at Sun Oct 25 20:47:26 IST 2026
[2026-10-25 20:47:26,058.058 INFO    ] ================================================
[2026-10-25 20:47:26,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:47:26
[2026-10-25 20:47:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:47:27,463.463 INFO    ] Initializing speech engine...
[2026-10-25 20:47:27,471.471 INFO    ] 2026-10-25 20:47:27
[2026-10-25 20:47:27,762.762 INFO    ] 2026-10-25 20:47:27
[2026-10-25 20:47:27,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:47:27,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:47:28,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:47:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:47:28,137.137 INFO    ] time= 25/10/2026 20:47:28
[2026-10-25 20:47:28,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:47:28,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:47:28,261.261 INFO    ] No existing commands found in stream
[2026-10-25 20:47:33,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:47:33,275.275 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 20:47:36,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:47:36,562.562 INFO    ] Checking for system updates...
[2026-10-25 20:47:36,597.597 INFO    ] 200
[2026-10-25 20:47:36,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:36,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:47:36,658.658 INFO    ] No update needed
[2026-10-25 20:47:36,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:36,694.694 INFO    ] 200
[2026-10-25 20:47:36,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:36,742.742 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:36,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:47:36,793.793 INFO    ] No camera update needed
[2026-10-25 20:47:36,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:36,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:36,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:36,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:47:38,848.848 INFO    ] ================================================
[2026-10-25 20:47:38,864.864 INFO    ] Launching Daemon at Sun Oct 25 20:47:38 IST 2026
[2026-10-25 20:47:38,875.875 INFO    ] ================================================
[2026-10-25 20:47:39,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:47:39
[2026-10-25 20:47:40,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:47:40,320.320 INFO    ] Initializing speech engine...
[2026-10-25 20:47:40,327.327 INFO    ] 2026-10-25 20:47:40
[2026-10-25 20:47:40,619.619 INFO    ] 2026-10-25 20:47:40
[2026-10-25 20:47:40,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:47:40,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:47:40,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:47:41,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:47:41,034.034 INFO    ] time= 25/10/2026 20:47:41
[2026-10-25 20:47:41,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:47:41,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:47:41,213.213 INFO    ] No existing commands found in stream
[2026-10-25 20:47:46,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:47:46,241.241 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 20:47:47,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:47:47,660.660 INFO    ] Checking for system updates...
[2026-10-25 20:47:47,696.696 INFO    ] 200
[2026-10-25 20:47:47,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:47,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:47,755.755 INFO    ] No update needed
[2026-10-25 20:47:47,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:47,791.791 INFO    ] 200
[2026-10-25 20:47:47,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:47,839.839 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:47,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:47:47,885.885 INFO    ] No camera update needed
[2026-10-25 20:47:47,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:47,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:47,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:47,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:47:49,941.941 INFO    ] ================================================
[2026-10-25 20:47:49,956.956 INFO    ] Launching Daemon at Sun Oct 25 20:47:49 IST 2026
[2026-10-25 20:47:49,967.967 INFO    ] ================================================
[2026-10-25 20:47:50,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:47:50
[2026-10-25 20:47:51,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:47:51,392.392 INFO    ] Initializing speech engine...
[2026-10-25 20:47:51,401.401 INFO    ] 2026-10-25 20:47:51
[2026-10-25 20:47:51,646.646 INFO    ] 2026-10-25 20:47:51
[2026-10-25 20:47:51,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:47:51,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:47:51,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:47:52,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:47:52,132.132 INFO    ] time= 25/10/2026 20:47:52
[2026-10-25 20:47:52,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:47:52,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:47:52,267.267 INFO    ] No existing commands found in stream
[2026-10-25 20:47:57,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:47:57,289.289 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 20:47:59,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:47:59,019.019 INFO    ] Checking for system updates...
[2026-10-25 20:47:59,055.055 INFO    ] 200
[2026-10-25 20:47:59,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:59,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:47:59,122.122 INFO    ] No update needed
[2026-10-25 20:47:59,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 20:47:59,166.166 INFO    ] 200
[2026-10-25 20:47:59,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:47:59,209.209 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:47:59,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:47:59,263.263 INFO    ] No camera update needed
[2026-10-25 20:47:59,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:47:59,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:47:59,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:47:59,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:48:01,318.318 INFO    ] ================================================
[2026-10-25 20:48:01,333.333 INFO    ] Launching Daemon at Sun Oct 25 20:48:01 IST 2026
[2026-10-25 20:48:01,344.344 INFO    ] ================================================
[2026-10-25 20:48:02,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:48:02
[2026-10-25 20:48:02,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:48:03,185.185 INFO    ] Initializing speech engine...
[2026-10-25 20:48:03,196.196 INFO    ] 2026-10-25 20:48:03
[2026-10-25 20:48:03,479.479 INFO    ] 2026-10-25 20:48:03
[2026-10-25 20:48:03,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:48:03,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:48:03,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:48:03,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:48:04,030.030 INFO    ] time= 25/10/2026 20:48:04
[2026-10-25 20:48:04,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:48:04,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:48:04,169.169 INFO    ] No existing commands found in stream
[2026-10-25 20:48:09,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:48:09,196.196 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 20:48:09,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:48:09,759.759 INFO    ] Checking for system updates...
[2026-10-25 20:48:09,798.798 INFO    ] 200
[2026-10-25 20:48:09,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:09,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:09,862.862 INFO    ] No update needed
[2026-10-25 20:48:09,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 20:48:09,898.898 INFO    ] 200
[2026-10-25 20:48:09,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:09,941.941 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:48:09,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:09,996.996 INFO    ] No camera update needed
[2026-10-25 20:48:09,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:48:10,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:48:10,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:48:10,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:48:12,051.051 INFO    ] ================================================
[2026-10-25 20:48:12,066.066 INFO    ] Launching Daemon at Sun Oct 25 20:48:12 IST 2026
[2026-10-25 20:48:12,077.077 INFO    ] ================================================
[2026-10-25 20:48:12,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:48:12
[2026-10-25 20:48:13,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:48:13,522.522 INFO    ] Initializing speech engine...
[2026-10-25 20:48:13,530.530 INFO    ] 2026-10-25 20:48:13
[2026-10-25 20:48:13,826.826 INFO    ] 2026-10-25 20:48:13
[2026-10-25 20:48:13,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:48:14,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:48:14,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:48:14,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:48:14,204.204 INFO    ] time= 25/10/2026 20:48:14
[2026-10-25 20:48:14,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:48:14,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:48:14,330.330 INFO    ] No existing commands found in stream
[2026-10-25 20:48:19,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:48:19,349.349 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 20:48:21,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:48:21,939.939 INFO    ] Checking for system updates...
[2026-10-25 20:48:21,978.978 INFO    ] 200
[2026-10-25 20:48:21,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:22,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:48:22,045.045 INFO    ] No update needed
[2026-10-25 20:48:22,047.047 INFO    ] Checking for camera pi updates...
[2026-10-25 20:48:22,085.085 INFO    ] 200
[2026-10-25 20:48:22,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:22,132.132 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:48:22,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:48:22,185.185 INFO    ] No camera update needed
[2026-10-25 20:48:22,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:48:22,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:48:22,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:48:22,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:48:24,242.242 INFO    ] ================================================
[2026-10-25 20:48:24,257.257 INFO    ] Launching Daemon at Sun Oct 25 20:48:24 IST 2026
[2026-10-25 20:48:24,268.268 INFO    ] ================================================
[2026-10-25 20:48:24,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:48:24
[2026-10-25 20:48:25,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:48:25,723.723 INFO    ] Initializing speech engine...
[2026-10-25 20:48:25,743.743 INFO    ] 2026-10-25 20:48:25
[2026-10-25 20:48:26,011.011 INFO    ] 2026-10-25 20:48:25
[2026-10-25 20:48:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:48:26,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:48:26,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:48:26,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:48:26,382.382 INFO    ] time= 25/10/2026 20:48:26
[2026-10-25 20:48:26,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:48:26,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:48:26,509.509 INFO    ] No existing commands found in stream
[2026-10-25 20:48:31,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:48:31,526.526 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 20:48:31,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:48:31,960.960 INFO    ] Checking for system updates...
[2026-10-25 20:48:31,998.998 INFO    ] 200
[2026-10-25 20:48:32,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:32,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:32,069.069 INFO    ] No update needed
[2026-10-25 20:48:32,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 20:48:32,132.132 INFO    ] 200
[2026-10-25 20:48:32,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:32,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:48:32,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:32,238.238 INFO    ] No camera update needed
[2026-10-25 20:48:32,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:48:32,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:48:32,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:48:32,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:48:34,298.298 INFO    ] ================================================
[2026-10-25 20:48:34,313.313 INFO    ] Launching Daemon at Sun Oct 25 20:48:34 IST 2026
[2026-10-25 20:48:34,323.323 INFO    ] ================================================
[2026-10-25 20:48:34,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:48:34
[2026-10-25 20:48:35,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:48:35,724.724 INFO    ] Initializing speech engine...
[2026-10-25 20:48:35,738.738 INFO    ] 2026-10-25 20:48:35
[2026-10-25 20:48:36,003.003 INFO    ] 2026-10-25 20:48:35
[2026-10-25 20:48:36,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:48:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:48:36,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:48:36,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:48:36,380.380 INFO    ] time= 25/10/2026 20:48:36
[2026-10-25 20:48:36,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:48:36,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:48:36,536.536 INFO    ] No existing commands found in stream
[2026-10-25 20:48:41,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:48:41,569.569 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-25 20:48:48,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:48:48,281.281 INFO    ] Checking for system updates...
[2026-10-25 20:48:48,321.321 INFO    ] 200
[2026-10-25 20:48:48,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:48,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:48,390.390 INFO    ] No update needed
[2026-10-25 20:48:48,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 20:48:48,431.431 INFO    ] 200
[2026-10-25 20:48:48,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:48:48,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:48:48,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:48:48,532.532 INFO    ] No camera update needed
[2026-10-25 20:48:48,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:48:48,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:48:48,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:48:48,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:48:50,590.590 INFO    ] ================================================
[2026-10-25 20:48:50,605.605 INFO    ] Launching Daemon at Sun Oct 25 20:48:50 IST 2026
[2026-10-25 20:48:50,616.616 INFO    ] ================================================
[2026-10-25 20:48:51,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:48:51
[2026-10-25 20:48:51,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:48:52,120.120 INFO    ] Initializing speech engine...
[2026-10-25 20:48:52,130.130 INFO    ] 2026-10-25 20:48:52
[2026-10-25 20:48:52,399.399 INFO    ] 2026-10-25 20:48:52
[2026-10-25 20:48:52,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:48:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:48:52,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:48:52,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:48:52,869.869 INFO    ] time= 25/10/2026 20:48:52
[2026-10-25 20:48:52,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:48:52,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:48:53,040.040 INFO    ] No existing commands found in stream
[2026-10-25 20:48:58,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:48:58,081.081 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 20:49:00,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:49:00,840.840 INFO    ] Checking for system updates...
[2026-10-25 20:49:00,878.878 INFO    ] 200
[2026-10-25 20:49:00,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:00,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:49:00,945.945 INFO    ] No update needed
[2026-10-25 20:49:00,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 20:49:00,985.985 INFO    ] 200
[2026-10-25 20:49:00,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:01,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:49:01,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:49:01,092.092 INFO    ] No camera update needed
[2026-10-25 20:49:01,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:49:01,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:49:01,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:49:01,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:49:03,153.153 INFO    ] ================================================
[2026-10-25 20:49:03,169.169 INFO    ] Launching Daemon at Sun Oct 25 20:49:03 IST 2026
[2026-10-25 20:49:03,181.181 INFO    ] ================================================
[2026-10-25 20:49:03,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:49:03
[2026-10-25 20:49:04,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:49:04,636.636 INFO    ] Initializing speech engine...
[2026-10-25 20:49:04,643.643 INFO    ] 2026-10-25 20:49:04
[2026-10-25 20:49:04,931.931 INFO    ] 2026-10-25 20:49:04
[2026-10-25 20:49:04,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:49:05,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:49:05,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:49:05,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:49:05,274.274 INFO    ] time= 25/10/2026 20:49:05
[2026-10-25 20:49:05,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:49:05,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:49:05,355.355 INFO    ] No existing commands found in stream
[2026-10-25 20:49:10,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:49:10,368.368 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 20:49:12,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:49:12,336.336 INFO    ] Checking for system updates...
[2026-10-25 20:49:12,375.375 INFO    ] 200
[2026-10-25 20:49:12,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:12,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:12,434.434 INFO    ] No update needed
[2026-10-25 20:49:12,437.437 INFO    ] Checking for camera pi updates...
[2026-10-25 20:49:12,474.474 INFO    ] 200
[2026-10-25 20:49:12,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:12,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:49:12,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:12,568.568 INFO    ] No camera update needed
[2026-10-25 20:49:12,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:49:12,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:49:12,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:49:12,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:49:14,624.624 INFO    ] ================================================
[2026-10-25 20:49:14,640.640 INFO    ] Launching Daemon at Sun Oct 25 20:49:14 IST 2026
[2026-10-25 20:49:14,651.651 INFO    ] ================================================
[2026-10-25 20:49:15,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:49:15
[2026-10-25 20:49:15,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:49:16,258.258 INFO    ] Initializing speech engine...
[2026-10-25 20:49:16,272.272 INFO    ] 2026-10-25 20:49:16
[2026-10-25 20:49:16,550.550 INFO    ] 2026-10-25 20:49:16
[2026-10-25 20:49:16,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:49:18,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:49:18,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:49:18,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:49:18,721.721 INFO    ] time= 25/10/2026 20:49:18
[2026-10-25 20:49:18,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:49:18,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:49:18,804.804 INFO    ] No existing commands found in stream
[2026-10-25 20:49:23,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:49:23,824.824 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-25 20:49:27,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:49:27,820.820 INFO    ] Checking for system updates...
[2026-10-25 20:49:27,857.857 INFO    ] 200
[2026-10-25 20:49:27,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:27,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:27,923.923 INFO    ] No update needed
[2026-10-25 20:49:27,926.926 INFO    ] Checking for camera pi updates...
[2026-10-25 20:49:27,961.961 INFO    ] 200
[2026-10-25 20:49:27,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:28,009.009 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:49:28,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:28,161.161 INFO    ] No camera update needed
[2026-10-25 20:49:28,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:49:28,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:49:28,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:49:28,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:49:30,221.221 INFO    ] ================================================
[2026-10-25 20:49:30,236.236 INFO    ] Launching Daemon at Sun Oct 25 20:49:30 IST 2026
[2026-10-25 20:49:30,247.247 INFO    ] ================================================
[2026-10-25 20:49:30,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:49:30
[2026-10-25 20:49:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:49:31,652.652 INFO    ] Initializing speech engine...
[2026-10-25 20:49:31,660.660 INFO    ] 2026-10-25 20:49:31
[2026-10-25 20:49:31,958.958 INFO    ] 2026-10-25 20:49:31
[2026-10-25 20:49:31,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:49:32,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:49:32,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:49:32,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:49:32,393.393 INFO    ] time= 25/10/2026 20:49:32
[2026-10-25 20:49:32,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:49:32,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:49:32,530.530 INFO    ] No existing commands found in stream
[2026-10-25 20:49:37,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:49:37,558.558 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 20:49:39,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:49:39,021.021 INFO    ] Checking for system updates...
[2026-10-25 20:49:39,056.056 INFO    ] 200
[2026-10-25 20:49:39,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:39,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:49:39,121.121 INFO    ] No update needed
[2026-10-25 20:49:39,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 20:49:39,156.156 INFO    ] 200
[2026-10-25 20:49:39,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:39,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:49:39,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:49:39,250.250 INFO    ] No camera update needed
[2026-10-25 20:49:39,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:49:39,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:49:39,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:49:39,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:49:41,307.307 INFO    ] ================================================
[2026-10-25 20:49:41,322.322 INFO    ] Launching Daemon at Sun Oct 25 20:49:41 IST 2026
[2026-10-25 20:49:41,333.333 INFO    ] ================================================
[2026-10-25 20:49:41,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:49:41
[2026-10-25 20:49:42,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:49:42,940.940 INFO    ] Initializing speech engine...
[2026-10-25 20:49:42,953.953 INFO    ] 2026-10-25 20:49:42
[2026-10-25 20:49:43,233.233 INFO    ] 2026-10-25 20:49:43
[2026-10-25 20:49:43,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:49:43,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:49:43,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:49:43,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:49:43,766.766 INFO    ] time= 25/10/2026 20:49:43
[2026-10-25 20:49:43,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:49:43,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:49:43,903.903 INFO    ] No existing commands found in stream
[2026-10-25 20:49:48,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:49:48,932.932 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 20:49:50,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:49:50,701.701 INFO    ] Checking for system updates...
[2026-10-25 20:49:50,738.738 INFO    ] 200
[2026-10-25 20:49:50,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:50,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:50,805.805 INFO    ] No update needed
[2026-10-25 20:49:50,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 20:49:50,846.846 INFO    ] 200
[2026-10-25 20:49:50,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:49:50,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:49:50,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:49:50,959.959 INFO    ] No camera update needed
[2026-10-25 20:49:50,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:49:50,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:49:50,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:49:50,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:49:53,014.014 INFO    ] ================================================
[2026-10-25 20:49:53,029.029 INFO    ] Launching Daemon at Sun Oct 25 20:49:53 IST 2026
[2026-10-25 20:49:53,040.040 INFO    ] ================================================
[2026-10-25 20:49:53,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:49:53
[2026-10-25 20:49:54,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:49:54,640.640 INFO    ] Initializing speech engine...
[2026-10-25 20:49:54,652.652 INFO    ] 2026-10-25 20:49:54
[2026-10-25 20:49:54,935.935 INFO    ] 2026-10-25 20:49:54
[2026-10-25 20:49:54,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:49:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:49:55,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:49:55,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:49:55,411.411 INFO    ] time= 25/10/2026 20:49:55
[2026-10-25 20:49:55,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:49:55,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:49:55,617.617 INFO    ] No existing commands found in stream
[2026-10-25 20:50:00,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:50:00,643.643 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 20:50:02,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:50:02,262.262 INFO    ] Checking for system updates...
[2026-10-25 20:50:02,322.322 INFO    ] 200
[2026-10-25 20:50:02,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:02,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:50:02,417.417 INFO    ] No update needed
[2026-10-25 20:50:02,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 20:50:02,467.467 INFO    ] 200
[2026-10-25 20:50:02,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:02,521.521 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:50:02,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:50:02,563.563 INFO    ] No camera update needed
[2026-10-25 20:50:02,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:50:02,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:50:02,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:50:02,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:50:04,629.629 INFO    ] ================================================
[2026-10-25 20:50:04,644.644 INFO    ] Launching Daemon at Sun Oct 25 20:50:04 IST 2026
[2026-10-25 20:50:04,661.661 INFO    ] ================================================
[2026-10-25 20:50:05,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:50:05
[2026-10-25 20:50:05,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:50:06,276.276 INFO    ] Initializing speech engine...
[2026-10-25 20:50:06,290.290 INFO    ] 2026-10-25 20:50:06
[2026-10-25 20:50:06,566.566 INFO    ] 2026-10-25 20:50:06
[2026-10-25 20:50:06,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:50:06,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:50:06,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:50:06,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:50:07,044.044 INFO    ] time= 25/10/2026 20:50:06
[2026-10-25 20:50:07,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:50:07,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:50:07,257.257 INFO    ] No existing commands found in stream
[2026-10-25 20:50:12,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:50:12,280.280 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 20:50:13,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:50:13,864.864 INFO    ] Checking for system updates...
[2026-10-25 20:50:13,902.902 INFO    ] 200
[2026-10-25 20:50:13,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:13,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:50:13,961.961 INFO    ] No update needed
[2026-10-25 20:50:13,964.964 INFO    ] Checking for camera pi updates...
[2026-10-25 20:50:14,003.003 INFO    ] 200
[2026-10-25 20:50:14,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:14,053.053 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:50:14,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:50:14,106.106 INFO    ] No camera update needed
[2026-10-25 20:50:14,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:50:14,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:50:14,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:50:14,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:50:16,164.164 INFO    ] ================================================
[2026-10-25 20:50:16,179.179 INFO    ] Launching Daemon at Sun Oct 25 20:50:16 IST 2026
[2026-10-25 20:50:16,190.190 INFO    ] ================================================
[2026-10-25 20:50:16,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:50:16
[2026-10-25 20:50:17,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:50:17,652.652 INFO    ] Initializing speech engine...
[2026-10-25 20:50:17,661.661 INFO    ] 2026-10-25 20:50:17
[2026-10-25 20:50:17,909.909 INFO    ] 2026-10-25 20:50:17
[2026-10-25 20:50:17,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:50:20,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:50:20,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:50:20,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:50:20,400.400 INFO    ] time= 25/10/2026 20:50:20
[2026-10-25 20:50:20,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:50:20,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:50:20,484.484 INFO    ] No existing commands found in stream
[2026-10-25 20:50:25,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:50:25,497.497 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 20:50:29,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:50:29,766.766 INFO    ] Checking for system updates...
[2026-10-25 20:50:29,804.804 INFO    ] 200
[2026-10-25 20:50:29,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:29,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:50:29,864.864 INFO    ] No update needed
[2026-10-25 20:50:29,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 20:50:29,902.902 INFO    ] 200
[2026-10-25 20:50:29,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:29,947.947 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:50:30,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:50:30,020.020 INFO    ] No camera update needed
[2026-10-25 20:50:30,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:50:30,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:50:30,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:50:30,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:50:32,080.080 INFO    ] ================================================
[2026-10-25 20:50:32,096.096 INFO    ] Launching Daemon at Sun Oct 25 20:50:32 IST 2026
[2026-10-25 20:50:32,107.107 INFO    ] ================================================
[2026-10-25 20:50:32,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:50:32
[2026-10-25 20:50:33,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:50:33,676.676 INFO    ] Initializing speech engine...
[2026-10-25 20:50:33,688.688 INFO    ] 2026-10-25 20:50:33
[2026-10-25 20:50:33,998.998 INFO    ] 2026-10-25 20:50:33
[2026-10-25 20:50:34,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:50:34,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:50:34,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:50:34,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:50:34,500.500 INFO    ] time= 25/10/2026 20:50:34
[2026-10-25 20:50:34,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:50:34,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:50:34,641.641 INFO    ] No existing commands found in stream
[2026-10-25 20:50:39,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:50:39,669.669 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 20:50:42,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:50:42,818.818 INFO    ] Checking for system updates...
[2026-10-25 20:50:42,855.855 INFO    ] 200
[2026-10-25 20:50:42,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:42,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:50:42,915.915 INFO    ] No update needed
[2026-10-25 20:50:42,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 20:50:42,953.953 INFO    ] 200
[2026-10-25 20:50:42,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:50:43,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:50:43,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:50:43,042.042 INFO    ] No camera update needed
[2026-10-25 20:50:43,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:50:43,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:50:43,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:50:43,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:50:45,100.100 INFO    ] ================================================
[2026-10-25 20:50:45,116.116 INFO    ] Launching Daemon at Sun Oct 25 20:50:45 IST 2026
[2026-10-25 20:50:45,126.126 INFO    ] ================================================
[2026-10-25 20:50:45,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:50:45
[2026-10-25 20:50:46,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:50:46,548.548 INFO    ] Initializing speech engine...
[2026-10-25 20:50:46,554.554 INFO    ] 2026-10-25 20:50:46
[2026-10-25 20:50:46,801.801 INFO    ] 2026-10-25 20:50:46
[2026-10-25 20:50:46,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:50:50,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:50:50,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:50:51,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:50:51,049.049 INFO    ] time= 25/10/2026 20:50:51
[2026-10-25 20:50:51,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:50:51,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:50:51,099.099 INFO    ] No existing commands found in stream
[2026-10-25 20:50:56,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:50:56,112.112 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-25 20:50:59,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:50:59,918.918 INFO    ] Checking for system updates...
[2026-10-25 20:50:59,954.954 INFO    ] 200
[2026-10-25 20:50:59,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:00,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:51:00,013.013 INFO    ] No update needed
[2026-10-25 20:51:00,016.016 INFO    ] Checking for camera pi updates...
[2026-10-25 20:51:00,051.051 INFO    ] 200
[2026-10-25 20:51:00,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:00,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:51:00,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:51:00,154.154 INFO    ] No camera update needed
[2026-10-25 20:51:00,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:51:00,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:51:00,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:51:00,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:51:02,236.236 INFO    ] ================================================
[2026-10-25 20:51:02,265.265 INFO    ] Launching Daemon at Sun Oct 25 20:51:02 IST 2026
[2026-10-25 20:51:02,291.291 INFO    ] ================================================
[2026-10-25 20:51:02,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:51:02
[2026-10-25 20:51:03,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:51:03,980.980 INFO    ] Initializing speech engine...
[2026-10-25 20:51:03,985.985 INFO    ] 2026-10-25 20:51:03
[2026-10-25 20:51:04,300.300 INFO    ] 2026-10-25 20:51:04
[2026-10-25 20:51:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:51:04,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:51:04,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:51:04,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:51:04,679.679 INFO    ] time= 25/10/2026 20:51:04
[2026-10-25 20:51:04,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:51:04,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:51:04,805.805 INFO    ] No existing commands found in stream
[2026-10-25 20:51:09,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:51:09,819.819 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 20:51:12,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:51:12,829.829 INFO    ] Checking for system updates...
[2026-10-25 20:51:12,879.879 INFO    ] 200
[2026-10-25 20:51:12,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:12,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:12,936.936 INFO    ] No update needed
[2026-10-25 20:51:12,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 20:51:12,972.972 INFO    ] 200
[2026-10-25 20:51:12,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:13,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:51:13,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:13,063.063 INFO    ] No camera update needed
[2026-10-25 20:51:13,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:51:13,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:51:13,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:51:13,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:51:15,118.118 INFO    ] ================================================
[2026-10-25 20:51:15,133.133 INFO    ] Launching Daemon at Sun Oct 25 20:51:15 IST 2026
[2026-10-25 20:51:15,144.144 INFO    ] ================================================
[2026-10-25 20:51:15,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:51:15
[2026-10-25 20:51:16,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:51:16,589.589 INFO    ] Initializing speech engine...
[2026-10-25 20:51:16,614.614 INFO    ] 2026-10-25 20:51:16
[2026-10-25 20:51:16,892.892 INFO    ] 2026-10-25 20:51:16
[2026-10-25 20:51:16,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:51:17,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:51:17,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:51:17,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:51:17,271.271 INFO    ] time= 25/10/2026 20:51:17
[2026-10-25 20:51:17,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:51:17,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:51:17,396.396 INFO    ] No existing commands found in stream
[2026-10-25 20:51:22,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:51:22,411.411 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 20:51:26,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:51:26,755.755 INFO    ] Checking for system updates...
[2026-10-25 20:51:26,791.791 INFO    ] 200
[2026-10-25 20:51:26,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:26,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:26,849.849 INFO    ] No update needed
[2026-10-25 20:51:26,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 20:51:26,887.887 INFO    ] 200
[2026-10-25 20:51:26,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:26,931.931 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:51:26,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:26,993.993 INFO    ] No camera update needed
[2026-10-25 20:51:26,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:51:26,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:51:27,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:51:27,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:51:29,048.048 INFO    ] ================================================
[2026-10-25 20:51:29,064.064 INFO    ] Launching Daemon at Sun Oct 25 20:51:29 IST 2026
[2026-10-25 20:51:29,076.076 INFO    ] ================================================
[2026-10-25 20:51:29,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:51:29
[2026-10-25 20:51:30,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:51:30,467.467 INFO    ] Initializing speech engine...
[2026-10-25 20:51:30,475.475 INFO    ] 2026-10-25 20:51:30
[2026-10-25 20:51:30,749.749 INFO    ] 2026-10-25 20:51:30
[2026-10-25 20:51:30,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:51:30,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:51:30,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:51:31,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:51:31,129.129 INFO    ] time= 25/10/2026 20:51:31
[2026-10-25 20:51:31,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:51:31,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:51:31,292.292 INFO    ] No existing commands found in stream
[2026-10-25 20:51:36,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:51:36,320.320 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 20:51:39,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:51:39,981.981 INFO    ] Checking for system updates...
[2026-10-25 20:51:40,017.017 INFO    ] 200
[2026-10-25 20:51:40,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:40,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:40,074.074 INFO    ] No update needed
[2026-10-25 20:51:40,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 20:51:40,111.111 INFO    ] 200
[2026-10-25 20:51:40,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:40,160.160 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:51:40,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:51:40,218.218 INFO    ] No camera update needed
[2026-10-25 20:51:40,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:51:40,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:51:40,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:51:40,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:51:42,275.275 INFO    ] ================================================
[2026-10-25 20:51:42,290.290 INFO    ] Launching Daemon at Sun Oct 25 20:51:42 IST 2026
[2026-10-25 20:51:42,301.301 INFO    ] ================================================
[2026-10-25 20:51:42,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:51:42
[2026-10-25 20:51:43,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:51:43,836.836 INFO    ] Initializing speech engine...
[2026-10-25 20:51:43,843.843 INFO    ] 2026-10-25 20:51:43
[2026-10-25 20:51:44,108.108 INFO    ] 2026-10-25 20:51:44
[2026-10-25 20:51:44,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:51:44,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:51:44,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:51:44,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:51:44,580.580 INFO    ] time= 25/10/2026 20:51:44
[2026-10-25 20:51:44,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:51:44,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:51:44,709.709 INFO    ] No existing commands found in stream
[2026-10-25 20:51:49,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:51:49,723.723 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 20:51:54,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:51:54,484.484 INFO    ] Checking for system updates...
[2026-10-25 20:51:54,525.525 INFO    ] 200
[2026-10-25 20:51:54,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:54,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:51:54,586.586 INFO    ] No update needed
[2026-10-25 20:51:54,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 20:51:54,625.625 INFO    ] 200
[2026-10-25 20:51:54,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:51:54,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:51:54,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:51:54,721.721 INFO    ] No camera update needed
[2026-10-25 20:51:54,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:51:54,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:51:54,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:51:54,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:51:56,779.779 INFO    ] ================================================
[2026-10-25 20:51:56,795.795 INFO    ] Launching Daemon at Sun Oct 25 20:51:56 IST 2026
[2026-10-25 20:51:56,805.805 INFO    ] ================================================
[2026-10-25 20:51:57,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:51:57
[2026-10-25 20:51:58,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:51:58,808.808 INFO    ] Initializing speech engine...
[2026-10-25 20:51:58,821.821 INFO    ] 2026-10-25 20:51:58
[2026-10-25 20:51:59,078.078 INFO    ] 2026-10-25 20:51:59
[2026-10-25 20:51:59,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:51:59,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:51:59,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:51:59,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:51:59,548.548 INFO    ] time= 25/10/2026 20:51:59
[2026-10-25 20:51:59,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:51:59,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:51:59,695.695 INFO    ] No existing commands found in stream
[2026-10-25 20:52:04,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:52:04,710.710 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 20:52:06,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:52:06,291.291 INFO    ] Checking for system updates...
[2026-10-25 20:52:06,327.327 INFO    ] 200
[2026-10-25 20:52:06,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:06,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:06,388.388 INFO    ] No update needed
[2026-10-25 20:52:06,391.391 INFO    ] Checking for camera pi updates...
[2026-10-25 20:52:06,426.426 INFO    ] 200
[2026-10-25 20:52:06,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:06,471.471 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:52:06,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:06,525.525 INFO    ] No camera update needed
[2026-10-25 20:52:06,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:52:06,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:52:06,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:52:06,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:52:08,586.586 INFO    ] ================================================
[2026-10-25 20:52:08,714.714 INFO    ] Launching Daemon at Sun Oct 25 20:52:08 IST 2026
[2026-10-25 20:52:08,725.725 INFO    ] ================================================
[2026-10-25 20:52:09,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:52:09
[2026-10-25 20:52:10,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:52:10,396.396 INFO    ] Initializing speech engine...
[2026-10-25 20:52:10,410.410 INFO    ] 2026-10-25 20:52:10
[2026-10-25 20:52:10,699.699 INFO    ] 2026-10-25 20:52:10
[2026-10-25 20:52:10,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:52:11,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:52:11,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:52:11,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:52:11,231.231 INFO    ] time= 25/10/2026 20:52:11
[2026-10-25 20:52:11,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:52:11,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:52:11,385.385 INFO    ] No existing commands found in stream
[2026-10-25 20:52:16,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:52:16,415.415 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 20:52:20,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:52:20,667.667 INFO    ] Checking for system updates...
[2026-10-25 20:52:20,710.710 INFO    ] 200
[2026-10-25 20:52:20,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:20,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:20,780.780 INFO    ] No update needed
[2026-10-25 20:52:20,783.783 INFO    ] Checking for camera pi updates...
[2026-10-25 20:52:20,818.818 INFO    ] 200
[2026-10-25 20:52:20,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:20,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:52:20,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:20,911.911 INFO    ] No camera update needed
[2026-10-25 20:52:20,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:52:20,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:52:20,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:52:20,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:52:22,971.971 INFO    ] ================================================
[2026-10-25 20:52:22,986.986 INFO    ] Launching Daemon at Sun Oct 25 20:52:22 IST 2026
[2026-10-25 20:52:23,999.999 INFO    ] ================================================
[2026-10-25 20:52:23,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:52:23
[2026-10-25 20:52:24,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:52:24,456.456 INFO    ] Initializing speech engine...
[2026-10-25 20:52:24,471.471 INFO    ] 2026-10-25 20:52:24
[2026-10-25 20:52:24,726.726 INFO    ] 2026-10-25 20:52:24
[2026-10-25 20:52:24,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:52:25,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:52:25,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:52:25,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:52:25,284.284 INFO    ] time= 25/10/2026 20:52:25
[2026-10-25 20:52:25,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:52:25,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:52:25,423.423 INFO    ] No existing commands found in stream
[2026-10-25 20:52:30,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:52:30,451.451 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 20:52:33,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:52:33,529.529 INFO    ] Checking for system updates...
[2026-10-25 20:52:33,565.565 INFO    ] 200
[2026-10-25 20:52:33,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:33,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:33,625.625 INFO    ] No update needed
[2026-10-25 20:52:33,628.628 INFO    ] Checking for camera pi updates...
[2026-10-25 20:52:33,663.663 INFO    ] 200
[2026-10-25 20:52:33,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:33,710.710 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:52:33,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:52:33,774.774 INFO    ] No camera update needed
[2026-10-25 20:52:33,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:52:33,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:52:33,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:52:33,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:52:35,829.829 INFO    ] ================================================
[2026-10-25 20:52:35,844.844 INFO    ] Launching Daemon at Sun Oct 25 20:52:35 IST 2026
[2026-10-25 20:52:35,855.855 INFO    ] ================================================
[2026-10-25 20:52:36,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:52:36
[2026-10-25 20:52:37,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:52:37,368.368 INFO    ] Initializing speech engine...
[2026-10-25 20:52:37,377.377 INFO    ] 2026-10-25 20:52:37
[2026-10-25 20:52:37,637.637 INFO    ] 2026-10-25 20:52:37
[2026-10-25 20:52:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:52:37,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:52:37,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:52:38,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:52:38,115.115 INFO    ] time= 25/10/2026 20:52:38
[2026-10-25 20:52:38,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:52:38,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:52:38,308.308 INFO    ] No existing commands found in stream
[2026-10-25 20:52:43,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:52:43,343.343 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 20:52:44,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:52:44,686.686 INFO    ] Checking for system updates...
[2026-10-25 20:52:44,722.722 INFO    ] 200
[2026-10-25 20:52:44,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:44,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:52:44,779.779 INFO    ] No update needed
[2026-10-25 20:52:44,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 20:52:44,816.816 INFO    ] 200
[2026-10-25 20:52:44,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:44,859.859 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:52:44,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:52:44,913.913 INFO    ] No camera update needed
[2026-10-25 20:52:44,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:52:44,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:52:44,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:52:44,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:52:46,970.970 INFO    ] ================================================
[2026-10-25 20:52:46,985.985 INFO    ] Launching Daemon at Sun Oct 25 20:52:46 IST 2026
[2026-10-25 20:52:47,996.996 INFO    ] ================================================
[2026-10-25 20:52:47,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:52:47
[2026-10-25 20:52:48,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:52:48,456.456 INFO    ] Initializing speech engine...
[2026-10-25 20:52:48,463.463 INFO    ] 2026-10-25 20:52:48
[2026-10-25 20:52:48,723.723 INFO    ] 2026-10-25 20:52:48
[2026-10-25 20:52:48,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:52:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:52:49,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:52:49,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:52:49,266.266 INFO    ] time= 25/10/2026 20:52:49
[2026-10-25 20:52:49,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:52:49,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:52:49,408.408 INFO    ] No existing commands found in stream
[2026-10-25 20:52:54,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:52:54,433.433 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 20:52:55,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:52:55,636.636 INFO    ] Checking for system updates...
[2026-10-25 20:52:55,672.672 INFO    ] 200
[2026-10-25 20:52:55,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:55,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:52:55,730.730 INFO    ] No update needed
[2026-10-25 20:52:55,732.732 INFO    ] Checking for camera pi updates...
[2026-10-25 20:52:55,766.766 INFO    ] 200
[2026-10-25 20:52:55,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:52:55,809.809 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:52:55,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:52:55,858.858 INFO    ] No camera update needed
[2026-10-25 20:52:55,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:52:55,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:52:55,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:52:55,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:52:57,916.916 INFO    ] ================================================
[2026-10-25 20:52:57,931.931 INFO    ] Launching Daemon at Sun Oct 25 20:52:57 IST 2026
[2026-10-25 20:52:57,941.941 INFO    ] ================================================
[2026-10-25 20:52:58,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:52:58
[2026-10-25 20:52:59,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:52:59,406.406 INFO    ] Initializing speech engine...
[2026-10-25 20:52:59,411.411 INFO    ] 2026-10-25 20:52:59
[2026-10-25 20:52:59,679.679 INFO    ] 2026-10-25 20:52:59
[2026-10-25 20:52:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:52:59,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:52:59,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:00,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:00,110.110 INFO    ] time= 25/10/2026 20:53:00
[2026-10-25 20:53:00,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:00,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:00,196.196 INFO    ] No existing commands found in stream
[2026-10-25 20:53:05,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:53:05,211.211 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 20:53:05,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:53:05,649.649 INFO    ] Checking for system updates...
[2026-10-25 20:53:05,691.691 INFO    ] 200
[2026-10-25 20:53:05,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:05,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:05,761.761 INFO    ] No update needed
[2026-10-25 20:53:05,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 20:53:05,805.805 INFO    ] 200
[2026-10-25 20:53:05,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:05,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:53:05,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:05,906.906 INFO    ] No camera update needed
[2026-10-25 20:53:05,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:53:05,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:53:05,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:53:05,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:53:07,969.969 INFO    ] ================================================
[2026-10-25 20:53:07,986.986 INFO    ] Launching Daemon at Sun Oct 25 20:53:07 IST 2026
[2026-10-25 20:53:08,997.997 INFO    ] ================================================
[2026-10-25 20:53:08,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:53:08
[2026-10-25 20:53:09,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:53:09,640.640 INFO    ] Initializing speech engine...
[2026-10-25 20:53:09,652.652 INFO    ] 2026-10-25 20:53:09
[2026-10-25 20:53:09,940.940 INFO    ] 2026-10-25 20:53:09
[2026-10-25 20:53:10,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:53:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:53:10,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:10,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:10,470.470 INFO    ] time= 25/10/2026 20:53:10
[2026-10-25 20:53:10,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:10,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:10,627.627 INFO    ] No existing commands found in stream
[2026-10-25 20:53:15,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:53:15,645.645 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 20:53:16,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:53:16,303.303 INFO    ] Checking for system updates...
[2026-10-25 20:53:16,340.340 INFO    ] 200
[2026-10-25 20:53:16,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:16,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:16,401.401 INFO    ] No update needed
[2026-10-25 20:53:16,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 20:53:16,439.439 INFO    ] 200
[2026-10-25 20:53:16,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:16,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:53:16,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:16,535.535 INFO    ] No camera update needed
[2026-10-25 20:53:16,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:53:16,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:53:16,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:53:16,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:53:18,595.595 INFO    ] ================================================
[2026-10-25 20:53:18,610.610 INFO    ] Launching Daemon at Sun Oct 25 20:53:18 IST 2026
[2026-10-25 20:53:18,621.621 INFO    ] ================================================
[2026-10-25 20:53:19,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:53:19
[2026-10-25 20:53:19,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:53:20,293.293 INFO    ] Initializing speech engine...
[2026-10-25 20:53:20,302.302 INFO    ] 2026-10-25 20:53:20
[2026-10-25 20:53:20,567.567 INFO    ] 2026-10-25 20:53:20
[2026-10-25 20:53:20,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:53:20,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:53:20,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:20,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:20,960.960 INFO    ] time= 25/10/2026 20:53:20
[2026-10-25 20:53:20,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:20,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:21,089.089 INFO    ] No existing commands found in stream
[2026-10-25 20:53:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:53:26,104.104 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 20:53:26,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:53:26,687.687 INFO    ] Checking for system updates...
[2026-10-25 20:53:26,725.725 INFO    ] 200
[2026-10-25 20:53:26,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:26,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:26,785.785 INFO    ] No update needed
[2026-10-25 20:53:26,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 20:53:26,823.823 INFO    ] 200
[2026-10-25 20:53:26,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:26,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:53:26,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:26,929.929 INFO    ] No camera update needed
[2026-10-25 20:53:26,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:53:26,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:53:26,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:53:26,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:53:28,989.989 INFO    ] ================================================
[2026-10-25 20:53:29,004.004 INFO    ] Launching Daemon at Sun Oct 25 20:53:28 IST 2026
[2026-10-25 20:53:29,015.015 INFO    ] ================================================
[2026-10-25 20:53:29,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:53:29
[2026-10-25 20:53:30,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:53:30,668.668 INFO    ] Initializing speech engine...
[2026-10-25 20:53:30,679.679 INFO    ] 2026-10-25 20:53:30
[2026-10-25 20:53:30,965.965 INFO    ] 2026-10-25 20:53:30
[2026-10-25 20:53:31,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:53:31,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:53:31,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:31,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:31,436.436 INFO    ] time= 25/10/2026 20:53:31
[2026-10-25 20:53:31,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:31,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:31,574.574 INFO    ] No existing commands found in stream
[2026-10-25 20:53:36,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:53:36,590.590 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 20:53:37,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 20:53:37,803.803 INFO    ] Checking for system updates...
[2026-10-25 20:53:37,841.841 INFO    ] 200
[2026-10-25 20:53:37,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:37,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:37,901.901 INFO    ] No update needed
[2026-10-25 20:53:37,904.904 INFO    ] Checking for camera pi updates...
[2026-10-25 20:53:37,940.940 INFO    ] 200
[2026-10-25 20:53:37,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:37,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:53:39,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:53:39,139.139 INFO    ] No camera update needed
[2026-10-25 20:53:39,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:53:39,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:53:39,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:53:39,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:53:41,199.199 INFO    ] ================================================
[2026-10-25 20:53:41,213.213 INFO    ] Launching Daemon at Sun Oct 25 20:53:41 IST 2026
[2026-10-25 20:53:41,224.224 INFO    ] ================================================
[2026-10-25 20:53:41,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:53:41
[2026-10-25 20:53:42,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:53:42,622.622 INFO    ] Initializing speech engine...
[2026-10-25 20:53:42,634.634 INFO    ] 2026-10-25 20:53:42
[2026-10-25 20:53:42,897.897 INFO    ] 2026-10-25 20:53:42
[2026-10-25 20:53:42,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:53:43,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:53:43,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:43,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:43,362.362 INFO    ] time= 25/10/2026 20:53:43
[2026-10-25 20:53:43,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:43,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:43,512.512 INFO    ] No existing commands found in stream
[2026-10-25 20:53:48,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:53:48,527.527 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 20:53:52,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:53:52,734.734 INFO    ] Checking for system updates...
[2026-10-25 20:53:52,770.770 INFO    ] 200
[2026-10-25 20:53:52,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:52,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:53:52,829.829 INFO    ] No update needed
[2026-10-25 20:53:52,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 20:53:52,865.865 INFO    ] 200
[2026-10-25 20:53:52,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:53:52,909.909 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:53:52,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:53:52,967.967 INFO    ] No camera update needed
[2026-10-25 20:53:52,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:53:52,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:53:52,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:53:52,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:53:55,030.030 INFO    ] ================================================
[2026-10-25 20:53:55,046.046 INFO    ] Launching Daemon at Sun Oct 25 20:53:55 IST 2026
[2026-10-25 20:53:55,058.058 INFO    ] ================================================
[2026-10-25 20:53:55,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:53:55
[2026-10-25 20:53:56,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:53:56,575.575 INFO    ] Initializing speech engine...
[2026-10-25 20:53:56,584.584 INFO    ] 2026-10-25 20:53:56
[2026-10-25 20:53:56,844.844 INFO    ] 2026-10-25 20:53:56
[2026-10-25 20:53:56,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:53:57,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:53:57,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:53:57,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:53:57,227.227 INFO    ] time= 25/10/2026 20:53:57
[2026-10-25 20:53:57,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:53:57,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:53:57,311.311 INFO    ] No existing commands found in stream
[2026-10-25 20:54:02,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:54:02,325.325 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 20:54:04,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:54:04,198.198 INFO    ] Checking for system updates...
[2026-10-25 20:54:04,234.234 INFO    ] 200
[2026-10-25 20:54:04,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:04,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:54:04,294.294 INFO    ] No update needed
[2026-10-25 20:54:04,296.296 INFO    ] Checking for camera pi updates...
[2026-10-25 20:54:04,331.331 INFO    ] 200
[2026-10-25 20:54:04,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:04,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:54:04,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:54:04,432.432 INFO    ] No camera update needed
[2026-10-25 20:54:04,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:54:04,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:54:04,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:54:04,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:54:06,491.491 INFO    ] ================================================
[2026-10-25 20:54:06,506.506 INFO    ] Launching Daemon at Sun Oct 25 20:54:06 IST 2026
[2026-10-25 20:54:06,516.516 INFO    ] ================================================
[2026-10-25 20:54:07,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:54:07
[2026-10-25 20:54:07,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:54:07,915.915 INFO    ] Initializing speech engine...
[2026-10-25 20:54:07,938.938 INFO    ] 2026-10-25 20:54:07
[2026-10-25 20:54:08,193.193 INFO    ] 2026-10-25 20:54:08
[2026-10-25 20:54:08,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:54:08,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:54:08,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:54:08,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:54:08,714.714 INFO    ] time= 25/10/2026 20:54:08
[2026-10-25 20:54:08,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:54:08,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:54:08,883.883 INFO    ] No existing commands found in stream
[2026-10-25 20:54:13,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:54:13,918.918 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 20:54:16,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:54:16,774.774 INFO    ] Checking for system updates...
[2026-10-25 20:54:16,812.812 INFO    ] 200
[2026-10-25 20:54:16,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:16,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:16,874.874 INFO    ] No update needed
[2026-10-25 20:54:16,877.877 INFO    ] Checking for camera pi updates...
[2026-10-25 20:54:16,916.916 INFO    ] 200
[2026-10-25 20:54:16,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:16,966.966 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:54:17,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:17,026.026 INFO    ] No camera update needed
[2026-10-25 20:54:17,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:54:17,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:54:17,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:54:17,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:54:19,080.080 INFO    ] ================================================
[2026-10-25 20:54:19,095.095 INFO    ] Launching Daemon at Sun Oct 25 20:54:19 IST 2026
[2026-10-25 20:54:19,106.106 INFO    ] ================================================
[2026-10-25 20:54:19,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:54:19
[2026-10-25 20:54:20,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:54:20,519.519 INFO    ] Initializing speech engine...
[2026-10-25 20:54:20,528.528 INFO    ] 2026-10-25 20:54:20
[2026-10-25 20:54:20,772.772 INFO    ] 2026-10-25 20:54:20
[2026-10-25 20:54:20,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:54:20,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:54:21,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:54:21,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:54:21,138.138 INFO    ] time= 25/10/2026 20:54:21
[2026-10-25 20:54:21,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:54:21,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:54:21,307.307 INFO    ] No existing commands found in stream
[2026-10-25 20:54:26,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:54:26,335.335 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-25 20:54:27,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:54:27,117.117 INFO    ] Checking for system updates...
[2026-10-25 20:54:27,158.158 INFO    ] 200
[2026-10-25 20:54:27,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:27,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:27,218.218 INFO    ] No update needed
[2026-10-25 20:54:27,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 20:54:27,255.255 INFO    ] 200
[2026-10-25 20:54:27,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:27,299.299 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:54:27,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:27,352.352 INFO    ] No camera update needed
[2026-10-25 20:54:27,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:54:27,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:54:27,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:54:27,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:54:29,410.410 INFO    ] ================================================
[2026-10-25 20:54:29,425.425 INFO    ] Launching Daemon at Sun Oct 25 20:54:29 IST 2026
[2026-10-25 20:54:29,435.435 INFO    ] ================================================
[2026-10-25 20:54:30,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:54:30
[2026-10-25 20:54:30,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:54:30,868.868 INFO    ] Initializing speech engine...
[2026-10-25 20:54:30,891.891 INFO    ] 2026-10-25 20:54:30
[2026-10-25 20:54:31,145.145 INFO    ] 2026-10-25 20:54:31
[2026-10-25 20:54:31,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:54:31,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:54:31,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:54:31,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:54:31,613.613 INFO    ] time= 25/10/2026 20:54:31
[2026-10-25 20:54:31,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:54:31,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:54:31,779.779 INFO    ] No existing commands found in stream
[2026-10-25 20:54:36,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:54:36,795.795 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 20:54:40,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:54:40,517.517 INFO    ] Checking for system updates...
[2026-10-25 20:54:40,553.553 INFO    ] 200
[2026-10-25 20:54:40,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:40,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:40,612.612 INFO    ] No update needed
[2026-10-25 20:54:40,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 20:54:40,650.650 INFO    ] 200
[2026-10-25 20:54:40,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:40,694.694 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:54:40,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:54:40,755.755 INFO    ] No camera update needed
[2026-10-25 20:54:40,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:54:40,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:54:40,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:54:40,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:54:42,813.813 INFO    ] ================================================
[2026-10-25 20:54:42,828.828 INFO    ] Launching Daemon at Sun Oct 25 20:54:42 IST 2026
[2026-10-25 20:54:42,839.839 INFO    ] ================================================
[2026-10-25 20:54:43,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:54:43
[2026-10-25 20:54:44,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:54:44,259.259 INFO    ] Initializing speech engine...
[2026-10-25 20:54:44,273.273 INFO    ] 2026-10-25 20:54:44
[2026-10-25 20:54:44,539.539 INFO    ] 2026-10-25 20:54:44
[2026-10-25 20:54:44,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:54:44,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:54:44,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:54:44,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:54:45,000.000 INFO    ] time= 25/10/2026 20:54:44
[2026-10-25 20:54:45,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:54:45,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:54:45,166.166 INFO    ] No existing commands found in stream
[2026-10-25 20:54:50,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:54:50,180.180 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 20:54:59,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:54:59,195.195 INFO    ] Checking for system updates...
[2026-10-25 20:54:59,231.231 INFO    ] 200
[2026-10-25 20:54:59,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:59,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:54:59,289.289 INFO    ] No update needed
[2026-10-25 20:54:59,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 20:54:59,329.329 INFO    ] 200
[2026-10-25 20:54:59,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:54:59,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:54:59,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:54:59,424.424 INFO    ] No camera update needed
[2026-10-25 20:54:59,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:54:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:54:59,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:54:59,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:55:01,480.480 INFO    ] ================================================
[2026-10-25 20:55:01,515.515 INFO    ] Launching Daemon at Sun Oct 25 20:55:01 IST 2026
[2026-10-25 20:55:01,582.582 INFO    ] ================================================
[2026-10-25 20:55:02,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:55:02
[2026-10-25 20:55:03,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:55:03,664.664 INFO    ] Initializing speech engine...
[2026-10-25 20:55:03,673.673 INFO    ] 2026-10-25 20:55:03
[2026-10-25 20:55:04,002.002 INFO    ] 2026-10-25 20:55:03
[2026-10-25 20:55:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:55:04,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:55:04,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:55:04,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:55:04,502.502 INFO    ] time= 25/10/2026 20:55:04
[2026-10-25 20:55:04,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:55:04,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:55:04,642.642 INFO    ] No existing commands found in stream
[2026-10-25 20:55:09,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:55:09,672.672 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 20:55:11,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:55:11,407.407 INFO    ] Checking for system updates...
[2026-10-25 20:55:11,445.445 INFO    ] 200
[2026-10-25 20:55:11,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:11,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:55:11,504.504 INFO    ] No update needed
[2026-10-25 20:55:11,507.507 INFO    ] Checking for camera pi updates...
[2026-10-25 20:55:11,541.541 INFO    ] 200
[2026-10-25 20:55:11,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:11,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:55:11,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:55:11,625.625 INFO    ] No camera update needed
[2026-10-25 20:55:11,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:55:11,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:55:11,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:55:11,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:55:13,684.684 INFO    ] ================================================
[2026-10-25 20:55:13,699.699 INFO    ] Launching Daemon at Sun Oct 25 20:55:13 IST 2026
[2026-10-25 20:55:13,710.710 INFO    ] ================================================
[2026-10-25 20:55:14,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:55:14
[2026-10-25 20:55:14,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:55:15,128.128 INFO    ] Initializing speech engine...
[2026-10-25 20:55:15,146.146 INFO    ] 2026-10-25 20:55:15
[2026-10-25 20:55:15,398.398 INFO    ] 2026-10-25 20:55:15
[2026-10-25 20:55:15,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:55:15,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:55:15,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:55:15,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:55:15,878.878 INFO    ] time= 25/10/2026 20:55:15
[2026-10-25 20:55:15,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:55:15,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:55:16,026.026 INFO    ] No existing commands found in stream
[2026-10-25 20:55:21,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:55:21,040.040 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-25 20:55:23,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:55:23,204.204 INFO    ] Checking for system updates...
[2026-10-25 20:55:23,240.240 INFO    ] 200
[2026-10-25 20:55:23,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:23,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:23,299.299 INFO    ] No update needed
[2026-10-25 20:55:23,302.302 INFO    ] Checking for camera pi updates...
[2026-10-25 20:55:23,339.339 INFO    ] 200
[2026-10-25 20:55:23,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:23,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:55:23,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:23,432.432 INFO    ] No camera update needed
[2026-10-25 20:55:23,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:55:23,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:55:23,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:55:23,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:55:25,488.488 INFO    ] ================================================
[2026-10-25 20:55:25,503.503 INFO    ] Launching Daemon at Sun Oct 25 20:55:25 IST 2026
[2026-10-25 20:55:25,514.514 INFO    ] ================================================
[2026-10-25 20:55:26,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:55:26
[2026-10-25 20:55:26,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:55:27,146.146 INFO    ] Initializing speech engine...
[2026-10-25 20:55:27,157.157 INFO    ] 2026-10-25 20:55:27
[2026-10-25 20:55:27,438.438 INFO    ] 2026-10-25 20:55:27
[2026-10-25 20:55:27,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:55:28,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:55:28,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:55:28,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:55:28,559.559 INFO    ] time= 25/10/2026 20:55:28
[2026-10-25 20:55:28,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:55:28,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:55:28,670.670 INFO    ] No existing commands found in stream
[2026-10-25 20:55:33,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:55:33,686.686 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 20:55:35,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:55:35,047.047 INFO    ] Checking for system updates...
[2026-10-25 20:55:35,085.085 INFO    ] 200
[2026-10-25 20:55:35,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:35,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:35,145.145 INFO    ] No update needed
[2026-10-25 20:55:35,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 20:55:35,182.182 INFO    ] 200
[2026-10-25 20:55:35,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:35,225.225 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:55:35,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:35,275.275 INFO    ] No camera update needed
[2026-10-25 20:55:35,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:55:35,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:55:35,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:55:35,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:55:37,329.329 INFO    ] ================================================
[2026-10-25 20:55:37,344.344 INFO    ] Launching Daemon at Sun Oct 25 20:55:37 IST 2026
[2026-10-25 20:55:37,355.355 INFO    ] ================================================
[2026-10-25 20:55:38,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:55:38
[2026-10-25 20:55:38,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:55:38,976.976 INFO    ] Initializing speech engine...
[2026-10-25 20:55:38,985.985 INFO    ] 2026-10-25 20:55:38
[2026-10-25 20:55:39,263.263 INFO    ] 2026-10-25 20:55:39
[2026-10-25 20:55:39,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:55:39,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:55:39,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:55:39,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:55:39,745.745 INFO    ] time= 25/10/2026 20:55:39
[2026-10-25 20:55:39,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:55:39,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:55:39,886.886 INFO    ] No existing commands found in stream
[2026-10-25 20:55:44,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:55:44,903.903 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-25 20:55:46,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:55:46,775.775 INFO    ] Checking for system updates...
[2026-10-25 20:55:46,812.812 INFO    ] 200
[2026-10-25 20:55:46,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:46,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:46,871.871 INFO    ] No update needed
[2026-10-25 20:55:46,874.874 INFO    ] Checking for camera pi updates...
[2026-10-25 20:55:46,908.908 INFO    ] 200
[2026-10-25 20:55:46,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:46,951.951 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:55:47,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:47,116.116 INFO    ] No camera update needed
[2026-10-25 20:55:47,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:55:47,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:55:47,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:55:47,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:55:49,171.171 INFO    ] ================================================
[2026-10-25 20:55:49,187.187 INFO    ] Launching Daemon at Sun Oct 25 20:55:49 IST 2026
[2026-10-25 20:55:49,198.198 INFO    ] ================================================
[2026-10-25 20:55:49,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:55:49
[2026-10-25 20:55:50,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:55:50,824.824 INFO    ] Initializing speech engine...
[2026-10-25 20:55:50,835.835 INFO    ] 2026-10-25 20:55:50
[2026-10-25 20:55:51,115.115 INFO    ] 2026-10-25 20:55:51
[2026-10-25 20:55:51,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:55:51,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:55:51,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:55:51,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:55:51,609.609 INFO    ] time= 25/10/2026 20:55:51
[2026-10-25 20:55:51,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:55:51,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:55:51,787.787 INFO    ] No existing commands found in stream
[2026-10-25 20:55:56,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:55:56,814.814 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 20:55:59,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:55:59,349.349 INFO    ] Checking for system updates...
[2026-10-25 20:55:59,385.385 INFO    ] 200
[2026-10-25 20:55:59,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:59,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:59,445.445 INFO    ] No update needed
[2026-10-25 20:55:59,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 20:55:59,480.480 INFO    ] 200
[2026-10-25 20:55:59,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:55:59,530.530 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:55:59,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:55:59,583.583 INFO    ] No camera update needed
[2026-10-25 20:55:59,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:55:59,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:55:59,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:55:59,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:56:01,639.639 INFO    ] ================================================
[2026-10-25 20:56:01,654.654 INFO    ] Launching Daemon at Sun Oct 25 20:56:01 IST 2026
[2026-10-25 20:56:01,665.665 INFO    ] ================================================
[2026-10-25 20:56:02,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:56:02
[2026-10-25 20:56:03,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:56:03,332.332 INFO    ] Initializing speech engine...
[2026-10-25 20:56:03,338.338 INFO    ] 2026-10-25 20:56:03
[2026-10-25 20:56:03,631.631 INFO    ] 2026-10-25 20:56:03
[2026-10-25 20:56:03,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:56:03,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:56:03,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:56:03,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:56:04,001.001 INFO    ] time= 25/10/2026 20:56:03
[2026-10-25 20:56:04,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:56:04,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:56:04,177.177 INFO    ] No existing commands found in stream
[2026-10-25 20:56:09,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:56:09,210.210 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-25 20:56:10,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:56:10,978.978 INFO    ] Checking for system updates...
[2026-10-25 20:56:11,014.014 INFO    ] 200
[2026-10-25 20:56:11,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:11,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:11,071.071 INFO    ] No update needed
[2026-10-25 20:56:11,074.074 INFO    ] Checking for camera pi updates...
[2026-10-25 20:56:11,107.107 INFO    ] 200
[2026-10-25 20:56:11,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:11,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:56:11,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:11,206.206 INFO    ] No camera update needed
[2026-10-25 20:56:11,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:56:11,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:56:11,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:56:11,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:56:13,262.262 INFO    ] ================================================
[2026-10-25 20:56:13,277.277 INFO    ] Launching Daemon at Sun Oct 25 20:56:13 IST 2026
[2026-10-25 20:56:13,289.289 INFO    ] ================================================
[2026-10-25 20:56:13,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:56:13
[2026-10-25 20:56:14,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:56:14,705.705 INFO    ] Initializing speech engine...
[2026-10-25 20:56:14,715.715 INFO    ] 2026-10-25 20:56:14
[2026-10-25 20:56:14,966.966 INFO    ] 2026-10-25 20:56:14
[2026-10-25 20:56:15,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:56:15,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:56:15,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:56:15,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:56:15,333.333 INFO    ] time= 25/10/2026 20:56:15
[2026-10-25 20:56:15,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:56:15,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:56:15,493.493 INFO    ] No existing commands found in stream
[2026-10-25 20:56:20,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:56:20,526.526 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 20:56:22,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:56:22,173.173 INFO    ] Checking for system updates...
[2026-10-25 20:56:22,210.210 INFO    ] 200
[2026-10-25 20:56:22,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:22,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:22,269.269 INFO    ] No update needed
[2026-10-25 20:56:22,272.272 INFO    ] Checking for camera pi updates...
[2026-10-25 20:56:22,306.306 INFO    ] 200
[2026-10-25 20:56:22,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:22,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:56:22,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:22,405.405 INFO    ] No camera update needed
[2026-10-25 20:56:22,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:56:22,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:56:22,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:56:22,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:56:24,462.462 INFO    ] ================================================
[2026-10-25 20:56:24,477.477 INFO    ] Launching Daemon at Sun Oct 25 20:56:24 IST 2026
[2026-10-25 20:56:24,488.488 INFO    ] ================================================
[2026-10-25 20:56:25,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:56:25
[2026-10-25 20:56:25,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:56:26,091.091 INFO    ] Initializing speech engine...
[2026-10-25 20:56:26,106.106 INFO    ] 2026-10-25 20:56:26
[2026-10-25 20:56:26,382.382 INFO    ] 2026-10-25 20:56:26
[2026-10-25 20:56:26,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:56:29,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:56:29,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:56:29,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:56:29,780.780 INFO    ] time= 25/10/2026 20:56:29
[2026-10-25 20:56:29,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:56:29,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:56:29,830.830 INFO    ] No existing commands found in stream
[2026-10-25 20:56:34,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:56:34,842.842 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-25 20:56:36,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:56:36,247.247 INFO    ] Checking for system updates...
[2026-10-25 20:56:36,283.283 INFO    ] 200
[2026-10-25 20:56:36,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:36,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:36,341.341 INFO    ] No update needed
[2026-10-25 20:56:36,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 20:56:36,381.381 INFO    ] 200
[2026-10-25 20:56:36,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:36,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:56:36,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:36,476.476 INFO    ] No camera update needed
[2026-10-25 20:56:36,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:56:36,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:56:36,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:56:36,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:56:38,531.531 INFO    ] ================================================
[2026-10-25 20:56:38,547.547 INFO    ] Launching Daemon at Sun Oct 25 20:56:38 IST 2026
[2026-10-25 20:56:38,558.558 INFO    ] ================================================
[2026-10-25 20:56:39,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:56:39
[2026-10-25 20:56:39,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:56:39,960.960 INFO    ] Initializing speech engine...
[2026-10-25 20:56:39,975.975 INFO    ] 2026-10-25 20:56:39
[2026-10-25 20:56:40,256.256 INFO    ] 2026-10-25 20:56:40
[2026-10-25 20:56:40,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:56:40,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:56:40,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:56:40,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:56:40,694.694 INFO    ] time= 25/10/2026 20:56:40
[2026-10-25 20:56:40,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:56:40,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:56:40,877.877 INFO    ] No existing commands found in stream
[2026-10-25 20:56:45,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:56:45,891.891 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 20:56:48,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:56:48,824.824 INFO    ] Checking for system updates...
[2026-10-25 20:56:48,860.860 INFO    ] 200
[2026-10-25 20:56:48,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:48,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:48,919.919 INFO    ] No update needed
[2026-10-25 20:56:48,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 20:56:48,955.955 INFO    ] 200
[2026-10-25 20:56:48,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:56:48,997.997 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:56:49,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:56:49,055.055 INFO    ] No camera update needed
[2026-10-25 20:56:49,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:56:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:56:49,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:56:49,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:56:51,112.112 INFO    ] ================================================
[2026-10-25 20:56:51,128.128 INFO    ] Launching Daemon at Sun Oct 25 20:56:51 IST 2026
[2026-10-25 20:56:51,139.139 INFO    ] ================================================
[2026-10-25 20:56:51,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:56:51
[2026-10-25 20:56:52,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:56:52,569.569 INFO    ] Initializing speech engine...
[2026-10-25 20:56:52,578.578 INFO    ] 2026-10-25 20:56:52
[2026-10-25 20:56:52,872.872 INFO    ] 2026-10-25 20:56:52
[2026-10-25 20:56:52,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:56:53,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:56:53,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:56:53,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:56:53,362.362 INFO    ] time= 25/10/2026 20:56:53
[2026-10-25 20:56:53,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:56:53,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:56:53,533.533 INFO    ] No existing commands found in stream
[2026-10-25 20:56:58,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:56:58,551.551 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 20:57:02,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:57:02,568.568 INFO    ] Checking for system updates...
[2026-10-25 20:57:02,614.614 INFO    ] 200
[2026-10-25 20:57:02,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:02,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:57:02,679.679 INFO    ] No update needed
[2026-10-25 20:57:02,682.682 INFO    ] Checking for camera pi updates...
[2026-10-25 20:57:02,721.721 INFO    ] 200
[2026-10-25 20:57:02,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:02,774.774 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:57:02,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:57:02,817.817 INFO    ] No camera update needed
[2026-10-25 20:57:02,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:57:02,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:57:02,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:57:02,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:57:04,877.877 INFO    ] ================================================
[2026-10-25 20:57:04,893.893 INFO    ] Launching Daemon at Sun Oct 25 20:57:04 IST 2026
[2026-10-25 20:57:04,905.905 INFO    ] ================================================
[2026-10-25 20:57:05,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:57:05
[2026-10-25 20:57:06,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:57:06,356.356 INFO    ] Initializing speech engine...
[2026-10-25 20:57:06,373.373 INFO    ] 2026-10-25 20:57:06
[2026-10-25 20:57:06,666.666 INFO    ] 2026-10-25 20:57:06
[2026-10-25 20:57:06,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:57:06,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:57:06,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:57:07,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:57:07,045.045 INFO    ] time= 25/10/2026 20:57:07
[2026-10-25 20:57:07,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:57:07,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:57:07,175.175 INFO    ] No existing commands found in stream
[2026-10-25 20:57:12,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:57:12,189.189 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 20:57:15,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:57:15,818.818 INFO    ] Checking for system updates...
[2026-10-25 20:57:15,853.853 INFO    ] 200
[2026-10-25 20:57:15,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:15,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:15,918.918 INFO    ] No update needed
[2026-10-25 20:57:15,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 20:57:15,954.954 INFO    ] 200
[2026-10-25 20:57:15,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:16,002.002 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:57:16,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:16,053.053 INFO    ] No camera update needed
[2026-10-25 20:57:16,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:57:16,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:57:16,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:57:16,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:57:18,108.108 INFO    ] ================================================
[2026-10-25 20:57:18,124.124 INFO    ] Launching Daemon at Sun Oct 25 20:57:18 IST 2026
[2026-10-25 20:57:18,135.135 INFO    ] ================================================
[2026-10-25 20:57:18,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:57:18
[2026-10-25 20:57:19,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:57:19,543.543 INFO    ] Initializing speech engine...
[2026-10-25 20:57:19,557.557 INFO    ] 2026-10-25 20:57:19
[2026-10-25 20:57:19,823.823 INFO    ] 2026-10-25 20:57:19
[2026-10-25 20:57:19,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:57:20,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:57:20,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:57:20,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:57:20,197.197 INFO    ] time= 25/10/2026 20:57:20
[2026-10-25 20:57:20,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:57:20,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:57:20,276.276 INFO    ] No existing commands found in stream
[2026-10-25 20:57:25,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:57:25,294.294 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-25 20:57:26,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:57:26,576.576 INFO    ] Checking for system updates...
[2026-10-25 20:57:26,611.611 INFO    ] 200
[2026-10-25 20:57:26,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:26,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:57:26,669.669 INFO    ] No update needed
[2026-10-25 20:57:26,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 20:57:26,705.705 INFO    ] 200
[2026-10-25 20:57:26,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:26,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:57:26,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:57:26,796.796 INFO    ] No camera update needed
[2026-10-25 20:57:26,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:57:26,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:57:26,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:57:26,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:57:28,852.852 INFO    ] ================================================
[2026-10-25 20:57:28,867.867 INFO    ] Launching Daemon at Sun Oct 25 20:57:28 IST 2026
[2026-10-25 20:57:28,879.879 INFO    ] ================================================
[2026-10-25 20:57:29,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:57:29
[2026-10-25 20:57:30,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:57:30,267.267 INFO    ] Initializing speech engine...
[2026-10-25 20:57:30,275.275 INFO    ] 2026-10-25 20:57:30
[2026-10-25 20:57:30,548.548 INFO    ] 2026-10-25 20:57:30
[2026-10-25 20:57:30,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:57:31,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:57:31,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:57:31,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:57:31,489.489 INFO    ] time= 25/10/2026 20:57:31
[2026-10-25 20:57:31,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:57:31,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:57:31,663.663 INFO    ] No existing commands found in stream
[2026-10-25 20:57:36,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:57:36,691.691 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-25 20:57:37,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 20:57:37,755.755 INFO    ] Checking for system updates...
[2026-10-25 20:57:37,795.795 INFO    ] 200
[2026-10-25 20:57:37,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:37,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:37,852.852 INFO    ] No update needed
[2026-10-25 20:57:37,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 20:57:37,892.892 INFO    ] 200
[2026-10-25 20:57:37,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:37,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:57:38,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:38,039.039 INFO    ] No camera update needed
[2026-10-25 20:57:38,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:57:38,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:57:38,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:57:38,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:57:40,097.097 INFO    ] ================================================
[2026-10-25 20:57:40,113.113 INFO    ] Launching Daemon at Sun Oct 25 20:57:40 IST 2026
[2026-10-25 20:57:40,125.125 INFO    ] ================================================
[2026-10-25 20:57:40,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:57:40
[2026-10-25 20:57:41,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:57:41,529.529 INFO    ] Initializing speech engine...
[2026-10-25 20:57:41,544.544 INFO    ] 2026-10-25 20:57:41
[2026-10-25 20:57:41,809.809 INFO    ] 2026-10-25 20:57:41
[2026-10-25 20:57:41,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:57:42,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:57:42,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:57:42,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:57:42,165.165 INFO    ] time= 25/10/2026 20:57:42
[2026-10-25 20:57:42,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:57:42,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:57:42,262.262 INFO    ] No existing commands found in stream
[2026-10-25 20:57:47,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:57:47,277.277 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 20:57:50,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:57:50,553.553 INFO    ] Checking for system updates...
[2026-10-25 20:57:50,588.588 INFO    ] 200
[2026-10-25 20:57:50,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:50,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:50,646.646 INFO    ] No update needed
[2026-10-25 20:57:50,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 20:57:50,686.686 INFO    ] 200
[2026-10-25 20:57:50,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:57:50,728.728 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:57:50,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:57:50,890.890 INFO    ] No camera update needed
[2026-10-25 20:57:50,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:57:50,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:57:50,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:57:50,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:57:52,946.946 INFO    ] ================================================
[2026-10-25 20:57:52,962.962 INFO    ] Launching Daemon at Sun Oct 25 20:57:52 IST 2026
[2026-10-25 20:57:52,972.972 INFO    ] ================================================
[2026-10-25 20:57:53,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:57:53
[2026-10-25 20:57:54,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:57:54,609.609 INFO    ] Initializing speech engine...
[2026-10-25 20:57:54,624.624 INFO    ] 2026-10-25 20:57:54
[2026-10-25 20:57:54,935.935 INFO    ] 2026-10-25 20:57:54
[2026-10-25 20:57:55,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:57:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:57:55,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:57:55,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:57:55,389.389 INFO    ] time= 25/10/2026 20:57:55
[2026-10-25 20:57:55,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:57:55,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:57:55,523.523 INFO    ] No existing commands found in stream
[2026-10-25 20:58:00,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:58:00,537.537 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 20:58:02,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:58:02,156.156 INFO    ] Checking for system updates...
[2026-10-25 20:58:02,219.219 INFO    ] 200
[2026-10-25 20:58:02,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:02,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:58:02,310.310 INFO    ] No update needed
[2026-10-25 20:58:02,313.313 INFO    ] Checking for camera pi updates...
[2026-10-25 20:58:02,367.367 INFO    ] 200
[2026-10-25 20:58:02,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:02,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:58:02,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:58:02,501.501 INFO    ] No camera update needed
[2026-10-25 20:58:02,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:58:02,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:58:02,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:58:02,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:58:04,560.560 INFO    ] ================================================
[2026-10-25 20:58:04,575.575 INFO    ] Launching Daemon at Sun Oct 25 20:58:04 IST 2026
[2026-10-25 20:58:04,586.586 INFO    ] ================================================
[2026-10-25 20:58:05,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:58:05
[2026-10-25 20:58:05,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:58:06,076.076 INFO    ] Initializing speech engine...
[2026-10-25 20:58:06,090.090 INFO    ] 2026-10-25 20:58:06
[2026-10-25 20:58:06,364.364 INFO    ] 2026-10-25 20:58:06
[2026-10-25 20:58:06,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:58:06,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:58:06,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:58:06,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:58:06,844.844 INFO    ] time= 25/10/2026 20:58:06
[2026-10-25 20:58:06,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:58:06,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:58:06,990.990 INFO    ] No existing commands found in stream
[2026-10-25 20:58:12,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:58:12,006.006 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 20:58:14,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:58:14,247.247 INFO    ] Checking for system updates...
[2026-10-25 20:58:14,284.284 INFO    ] 200
[2026-10-25 20:58:14,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:14,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:14,342.342 INFO    ] No update needed
[2026-10-25 20:58:14,344.344 INFO    ] Checking for camera pi updates...
[2026-10-25 20:58:14,377.377 INFO    ] 200
[2026-10-25 20:58:14,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:14,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:58:14,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:14,469.469 INFO    ] No camera update needed
[2026-10-25 20:58:14,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:58:14,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:58:14,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:58:14,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:58:16,525.525 INFO    ] ================================================
[2026-10-25 20:58:16,540.540 INFO    ] Launching Daemon at Sun Oct 25 20:58:16 IST 2026
[2026-10-25 20:58:16,551.551 INFO    ] ================================================
[2026-10-25 20:58:17,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:58:17
[2026-10-25 20:58:17,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:58:18,186.186 INFO    ] Initializing speech engine...
[2026-10-25 20:58:18,194.194 INFO    ] 2026-10-25 20:58:18
[2026-10-25 20:58:18,482.482 INFO    ] 2026-10-25 20:58:18
[2026-10-25 20:58:18,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:58:18,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:58:18,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:58:18,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:58:18,958.958 INFO    ] time= 25/10/2026 20:58:18
[2026-10-25 20:58:19,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:58:19,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:58:19,096.096 INFO    ] No existing commands found in stream
[2026-10-25 20:58:24,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:58:24,112.112 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 20:58:28,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:58:28,501.501 INFO    ] Checking for system updates...
[2026-10-25 20:58:28,537.537 INFO    ] 200
[2026-10-25 20:58:28,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:28,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:58:28,606.606 INFO    ] No update needed
[2026-10-25 20:58:28,609.609 INFO    ] Checking for camera pi updates...
[2026-10-25 20:58:28,642.642 INFO    ] 200
[2026-10-25 20:58:28,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:28,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:58:28,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:58:28,755.755 INFO    ] No camera update needed
[2026-10-25 20:58:28,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:58:28,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:58:28,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:58:28,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:58:30,813.813 INFO    ] ================================================
[2026-10-25 20:58:30,828.828 INFO    ] Launching Daemon at Sun Oct 25 20:58:30 IST 2026
[2026-10-25 20:58:30,839.839 INFO    ] ================================================
[2026-10-25 20:58:31,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:58:31
[2026-10-25 20:58:32,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:58:32,473.473 INFO    ] Initializing speech engine...
[2026-10-25 20:58:32,485.485 INFO    ] 2026-10-25 20:58:32
[2026-10-25 20:58:32,784.784 INFO    ] 2026-10-25 20:58:32
[2026-10-25 20:58:32,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:58:33,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:58:33,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:58:36,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:58:36,457.457 INFO    ] time= 25/10/2026 20:58:36
[2026-10-25 20:58:36,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:58:36,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:58:36,509.509 INFO    ] No existing commands found in stream
[2026-10-25 20:58:41,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:58:41,522.522 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 20:58:43,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:58:43,474.474 INFO    ] Checking for system updates...
[2026-10-25 20:58:43,516.516 INFO    ] 200
[2026-10-25 20:58:43,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:43,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:43,581.581 INFO    ] No update needed
[2026-10-25 20:58:43,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 20:58:43,618.618 INFO    ] 200
[2026-10-25 20:58:43,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:43,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:58:43,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:43,722.722 INFO    ] No camera update needed
[2026-10-25 20:58:43,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:58:43,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:58:43,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:58:43,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:58:45,778.778 INFO    ] ================================================
[2026-10-25 20:58:45,794.794 INFO    ] Launching Daemon at Sun Oct 25 20:58:45 IST 2026
[2026-10-25 20:58:45,805.805 INFO    ] ================================================
[2026-10-25 20:58:46,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:58:46
[2026-10-25 20:58:47,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:58:47,443.443 INFO    ] Initializing speech engine...
[2026-10-25 20:58:47,451.451 INFO    ] 2026-10-25 20:58:47
[2026-10-25 20:58:47,742.742 INFO    ] 2026-10-25 20:58:47
[2026-10-25 20:58:47,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:58:48,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:58:48,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:58:48,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:58:48,204.204 INFO    ] time= 25/10/2026 20:58:48
[2026-10-25 20:58:48,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:58:48,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:58:48,357.357 INFO    ] No existing commands found in stream
[2026-10-25 20:58:53,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:58:53,373.373 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 20:58:57,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 20:58:57,373.373 INFO    ] Checking for system updates...
[2026-10-25 20:58:57,415.415 INFO    ] 200
[2026-10-25 20:58:57,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:57,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:57,481.481 INFO    ] No update needed
[2026-10-25 20:58:57,485.485 INFO    ] Checking for camera pi updates...
[2026-10-25 20:58:57,530.530 INFO    ] 200
[2026-10-25 20:58:57,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:58:57,579.579 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:58:57,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:58:57,635.635 INFO    ] No camera update needed
[2026-10-25 20:58:57,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:58:57,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:58:57,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:58:57,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:58:59,694.694 INFO    ] ================================================
[2026-10-25 20:58:59,709.709 INFO    ] Launching Daemon at Sun Oct 25 20:58:59 IST 2026
[2026-10-25 20:58:59,720.720 INFO    ] ================================================
[2026-10-25 20:59:00,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:59:00
[2026-10-25 20:59:00,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:59:01,187.187 INFO    ] Initializing speech engine...
[2026-10-25 20:59:01,197.197 INFO    ] 2026-10-25 20:59:01
[2026-10-25 20:59:01,506.506 INFO    ] 2026-10-25 20:59:01
[2026-10-25 20:59:01,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:59:01,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:59:01,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:59:01,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:59:01,956.956 INFO    ] time= 25/10/2026 20:59:01
[2026-10-25 20:59:01,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:59:01,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:59:02,071.071 INFO    ] No existing commands found in stream
[2026-10-25 20:59:07,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:59:07,104.104 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 20:59:10,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 20:59:10,546.546 INFO    ] Checking for system updates...
[2026-10-25 20:59:10,586.586 INFO    ] 200
[2026-10-25 20:59:10,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:10,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:59:10,644.644 INFO    ] No update needed
[2026-10-25 20:59:10,646.646 INFO    ] Checking for camera pi updates...
[2026-10-25 20:59:10,681.681 INFO    ] 200
[2026-10-25 20:59:10,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:10,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:59:10,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:59:10,781.781 INFO    ] No camera update needed
[2026-10-25 20:59:10,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:59:10,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:59:10,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:59:10,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:59:12,840.840 INFO    ] ================================================
[2026-10-25 20:59:12,855.855 INFO    ] Launching Daemon at Sun Oct 25 20:59:12 IST 2026
[2026-10-25 20:59:12,866.866 INFO    ] ================================================
[2026-10-25 20:59:13,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:59:13
[2026-10-25 20:59:14,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:59:14,283.283 INFO    ] Initializing speech engine...
[2026-10-25 20:59:14,292.292 INFO    ] 2026-10-25 20:59:14
[2026-10-25 20:59:14,539.539 INFO    ] 2026-10-25 20:59:14
[2026-10-25 20:59:14,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:59:14,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:59:14,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:59:14,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:59:15,008.008 INFO    ] time= 25/10/2026 20:59:14
[2026-10-25 20:59:15,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:59:15,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:59:15,155.155 INFO    ] No existing commands found in stream
[2026-10-25 20:59:20,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:59:20,170.170 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 20:59:24,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:59:24,386.386 INFO    ] Checking for system updates...
[2026-10-25 20:59:24,422.422 INFO    ] 200
[2026-10-25 20:59:24,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:24,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:59:24,485.485 INFO    ] No update needed
[2026-10-25 20:59:24,487.487 INFO    ] Checking for camera pi updates...
[2026-10-25 20:59:24,524.524 INFO    ] 200
[2026-10-25 20:59:24,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:24,571.571 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:59:24,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:59:24,618.618 INFO    ] No camera update needed
[2026-10-25 20:59:24,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:59:24,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:59:24,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:59:24,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:59:26,675.675 INFO    ] ================================================
[2026-10-25 20:59:26,709.709 INFO    ] Launching Daemon at Sun Oct 25 20:59:26 IST 2026
[2026-10-25 20:59:26,721.721 INFO    ] ================================================
[2026-10-25 20:59:27,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:59:27
[2026-10-25 20:59:27,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:59:28,217.217 INFO    ] Initializing speech engine...
[2026-10-25 20:59:28,227.227 INFO    ] 2026-10-25 20:59:28
[2026-10-25 20:59:28,522.522 INFO    ] 2026-10-25 20:59:28
[2026-10-25 20:59:28,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:59:28,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:59:28,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:59:28,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:59:28,934.934 INFO    ] time= 25/10/2026 20:59:28
[2026-10-25 20:59:28,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:59:28,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:59:29,019.019 INFO    ] No existing commands found in stream
[2026-10-25 20:59:34,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:59:34,038.038 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-25 20:59:37,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 20:59:37,819.819 INFO    ] Checking for system updates...
[2026-10-25 20:59:37,855.855 INFO    ] 200
[2026-10-25 20:59:37,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:37,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:59:37,913.913 INFO    ] No update needed
[2026-10-25 20:59:37,916.916 INFO    ] Checking for camera pi updates...
[2026-10-25 20:59:37,949.949 INFO    ] 200
[2026-10-25 20:59:37,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:37,992.992 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:59:38,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 20:59:38,133.133 INFO    ] No camera update needed
[2026-10-25 20:59:38,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:59:38,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:59:38,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:59:38,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:59:40,189.189 INFO    ] ================================================
[2026-10-25 20:59:40,204.204 INFO    ] Launching Daemon at Sun Oct 25 20:59:40 IST 2026
[2026-10-25 20:59:40,215.215 INFO    ] ================================================
[2026-10-25 20:59:40,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:59:40
[2026-10-25 20:59:41,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:59:41,808.808 INFO    ] Initializing speech engine...
[2026-10-25 20:59:41,817.817 INFO    ] 2026-10-25 20:59:41
[2026-10-25 20:59:42,085.085 INFO    ] 2026-10-25 20:59:42
[2026-10-25 20:59:42,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:59:42,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:59:42,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:59:42,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:59:42,561.561 INFO    ] time= 25/10/2026 20:59:42
[2026-10-25 20:59:42,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:59:42,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:59:42,760.760 INFO    ] No existing commands found in stream
[2026-10-25 20:59:47,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 20:59:47,795.795 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 20:59:51,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 20:59:51,462.462 INFO    ] Checking for system updates...
[2026-10-25 20:59:51,499.499 INFO    ] 200
[2026-10-25 20:59:51,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:51,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:59:51,559.559 INFO    ] No update needed
[2026-10-25 20:59:51,562.562 INFO    ] Checking for camera pi updates...
[2026-10-25 20:59:51,597.597 INFO    ] 200
[2026-10-25 20:59:51,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 20:59:51,646.646 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 20:59:51,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 20:59:51,702.702 INFO    ] No camera update needed
[2026-10-25 20:59:51,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-25 20:59:51,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 20:59:51,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 20:59:51,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 20:59:53,759.759 INFO    ] ================================================
[2026-10-25 20:59:53,774.774 INFO    ] Launching Daemon at Sun Oct 25 20:59:53 IST 2026
[2026-10-25 20:59:53,785.785 INFO    ] ================================================
[2026-10-25 20:59:54,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 20:59:54
[2026-10-25 20:59:54,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 20:59:55,243.243 INFO    ] Initializing speech engine...
[2026-10-25 20:59:55,251.251 INFO    ] 2026-10-25 20:59:55
[2026-10-25 20:59:55,526.526 INFO    ] 2026-10-25 20:59:55
[2026-10-25 20:59:55,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 20:59:55,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 20:59:55,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 20:59:55,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 20:59:55,979.979 INFO    ] time= 25/10/2026 20:59:55
[2026-10-25 20:59:56,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 20:59:56,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 20:59:56,121.121 INFO    ] No existing commands found in stream
[2026-10-25 21:00:01,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:00:01,136.136 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 21:00:05,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:00:05,700.700 INFO    ] Checking for system updates...
[2026-10-25 21:00:05,762.762 INFO    ] 200
[2026-10-25 21:00:05,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:05,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:05,889.889 INFO    ] No update needed
[2026-10-25 21:00:05,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 21:00:05,952.952 INFO    ] 200
[2026-10-25 21:00:05,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:06,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:00:06,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:06,074.074 INFO    ] No camera update needed
[2026-10-25 21:00:06,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:00:06,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:00:06,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:00:06,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:00:08,141.141 INFO    ] ================================================
[2026-10-25 21:00:08,157.157 INFO    ] Launching Daemon at Sun Oct 25 21:00:08 IST 2026
[2026-10-25 21:00:08,168.168 INFO    ] ================================================
[2026-10-25 21:00:08,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:00:08
[2026-10-25 21:00:09,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:00:09,584.584 INFO    ] Initializing speech engine...
[2026-10-25 21:00:09,600.600 INFO    ] 2026-10-25 21:00:09
[2026-10-25 21:00:09,879.879 INFO    ] 2026-10-25 21:00:09
[2026-10-25 21:00:09,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:00:10,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:00:10,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:00:10,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:00:10,223.223 INFO    ] time= 25/10/2026 21:00:10
[2026-10-25 21:00:10,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:00:10,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:00:10,302.302 INFO    ] No existing commands found in stream
[2026-10-25 21:00:15,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:00:15,315.315 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 21:00:18,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:00:18,487.487 INFO    ] Checking for system updates...
[2026-10-25 21:00:18,523.523 INFO    ] 200
[2026-10-25 21:00:18,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:18,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:18,586.586 INFO    ] No update needed
[2026-10-25 21:00:18,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 21:00:18,622.622 INFO    ] 200
[2026-10-25 21:00:18,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:18,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:00:18,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:18,712.712 INFO    ] No camera update needed
[2026-10-25 21:00:18,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:00:18,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:00:18,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:00:18,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:00:20,769.769 INFO    ] ================================================
[2026-10-25 21:00:20,784.784 INFO    ] Launching Daemon at Sun Oct 25 21:00:20 IST 2026
[2026-10-25 21:00:20,795.795 INFO    ] ================================================
[2026-10-25 21:00:21,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:00:21
[2026-10-25 21:00:21,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:00:22,247.247 INFO    ] Initializing speech engine...
[2026-10-25 21:00:22,256.256 INFO    ] 2026-10-25 21:00:22
[2026-10-25 21:00:22,505.505 INFO    ] 2026-10-25 21:00:22
[2026-10-25 21:00:22,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:00:22,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:00:22,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:00:22,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:00:23,010.010 INFO    ] time= 25/10/2026 21:00:22
[2026-10-25 21:00:23,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:00:23,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:00:23,130.130 INFO    ] No existing commands found in stream
[2026-10-25 21:00:28,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:00:28,145.145 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 21:00:28,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:00:28,827.827 INFO    ] Checking for system updates...
[2026-10-25 21:00:28,865.865 INFO    ] 200
[2026-10-25 21:00:28,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:28,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:28,924.924 INFO    ] No update needed
[2026-10-25 21:00:28,927.927 INFO    ] Checking for camera pi updates...
[2026-10-25 21:00:28,966.966 INFO    ] 200
[2026-10-25 21:00:28,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:29,012.012 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:00:29,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:29,063.063 INFO    ] No camera update needed
[2026-10-25 21:00:29,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:00:29,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:00:29,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:00:29,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:00:31,118.118 INFO    ] ================================================
[2026-10-25 21:00:31,134.134 INFO    ] Launching Daemon at Sun Oct 25 21:00:31 IST 2026
[2026-10-25 21:00:31,145.145 INFO    ] ================================================
[2026-10-25 21:00:31,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:00:31
[2026-10-25 21:00:32,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:00:32,615.615 INFO    ] Initializing speech engine...
[2026-10-25 21:00:32,630.630 INFO    ] 2026-10-25 21:00:32
[2026-10-25 21:00:32,923.923 INFO    ] 2026-10-25 21:00:32
[2026-10-25 21:00:32,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:00:33,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:00:33,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:00:33,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:00:33,397.397 INFO    ] time= 25/10/2026 21:00:33
[2026-10-25 21:00:33,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:00:33,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:00:33,566.566 INFO    ] No existing commands found in stream
[2026-10-25 21:00:38,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:00:38,582.582 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 21:00:42,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:00:42,898.898 INFO    ] Checking for system updates...
[2026-10-25 21:00:42,934.934 INFO    ] 200
[2026-10-25 21:00:42,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:42,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:00:42,995.995 INFO    ] No update needed
[2026-10-25 21:00:42,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 21:00:43,033.033 INFO    ] 200
[2026-10-25 21:00:43,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:43,077.077 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:00:43,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:00:43,151.151 INFO    ] No camera update needed
[2026-10-25 21:00:43,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:00:43,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:00:43,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:00:43,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:00:45,209.209 INFO    ] ================================================
[2026-10-25 21:00:45,225.225 INFO    ] Launching Daemon at Sun Oct 25 21:00:45 IST 2026
[2026-10-25 21:00:45,236.236 INFO    ] ================================================
[2026-10-25 21:00:45,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:00:45
[2026-10-25 21:00:46,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:00:46,633.633 INFO    ] Initializing speech engine...
[2026-10-25 21:00:46,648.648 INFO    ] 2026-10-25 21:00:46
[2026-10-25 21:00:46,939.939 INFO    ] 2026-10-25 21:00:46
[2026-10-25 21:00:47,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:00:47,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:00:47,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:00:47,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:00:47,444.444 INFO    ] time= 25/10/2026 21:00:47
[2026-10-25 21:00:47,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:00:47,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:00:47,588.588 INFO    ] No existing commands found in stream
[2026-10-25 21:00:52,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:00:52,604.604 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 21:00:56,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:00:56,772.772 INFO    ] Checking for system updates...
[2026-10-25 21:00:56,811.811 INFO    ] 200
[2026-10-25 21:00:56,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:56,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:56,877.877 INFO    ] No update needed
[2026-10-25 21:00:56,880.880 INFO    ] Checking for camera pi updates...
[2026-10-25 21:00:56,921.921 INFO    ] 200
[2026-10-25 21:00:56,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:00:56,972.972 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:00:57,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:00:57,024.024 INFO    ] No camera update needed
[2026-10-25 21:00:57,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:00:57,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:00:57,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:00:57,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:00:59,082.082 INFO    ] ================================================
[2026-10-25 21:00:59,098.098 INFO    ] Launching Daemon at Sun Oct 25 21:00:59 IST 2026
[2026-10-25 21:00:59,109.109 INFO    ] ================================================
[2026-10-25 21:00:59,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:00:59
[2026-10-25 21:01:00,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:01:00,699.699 INFO    ] Initializing speech engine...
[2026-10-25 21:01:00,709.709 INFO    ] 2026-10-25 21:01:00
[2026-10-25 21:01:00,982.982 INFO    ] 2026-10-25 21:01:00
[2026-10-25 21:01:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:01:01,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:01:01,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:01:01,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:01:01,486.486 INFO    ] time= 25/10/2026 21:01:01
[2026-10-25 21:01:01,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:01:01,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:01:01,556.556 INFO    ] No existing commands found in stream
[2026-10-25 21:01:06,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:01:06,569.569 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 21:01:09,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:01:09,817.817 INFO    ] Checking for system updates...
[2026-10-25 21:01:09,857.857 INFO    ] 200
[2026-10-25 21:01:09,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:09,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:09,925.925 INFO    ] No update needed
[2026-10-25 21:01:09,928.928 INFO    ] Checking for camera pi updates...
[2026-10-25 21:01:09,967.967 INFO    ] 200
[2026-10-25 21:01:09,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:10,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:01:10,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:10,074.074 INFO    ] No camera update needed
[2026-10-25 21:01:10,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:01:10,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:01:10,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:01:10,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:01:12,134.134 INFO    ] ================================================
[2026-10-25 21:01:12,150.150 INFO    ] Launching Daemon at Sun Oct 25 21:01:12 IST 2026
[2026-10-25 21:01:12,161.161 INFO    ] ================================================
[2026-10-25 21:01:12,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:01:12
[2026-10-25 21:01:13,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:01:13,616.616 INFO    ] Initializing speech engine...
[2026-10-25 21:01:13,630.630 INFO    ] 2026-10-25 21:01:13
[2026-10-25 21:01:13,918.918 INFO    ] 2026-10-25 21:01:13
[2026-10-25 21:01:13,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:01:14,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:01:14,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:01:14,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:01:14,302.302 INFO    ] time= 25/10/2026 21:01:14
[2026-10-25 21:01:14,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:01:14,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:01:14,429.429 INFO    ] No existing commands found in stream
[2026-10-25 21:01:19,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:01:19,444.444 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 21:01:21,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:01:21,907.907 INFO    ] Checking for system updates...
[2026-10-25 21:01:21,945.945 INFO    ] 200
[2026-10-25 21:01:21,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:22,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:22,005.005 INFO    ] No update needed
[2026-10-25 21:01:22,008.008 INFO    ] Checking for camera pi updates...
[2026-10-25 21:01:22,044.044 INFO    ] 200
[2026-10-25 21:01:22,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:22,089.089 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:01:22,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:22,157.157 INFO    ] No camera update needed
[2026-10-25 21:01:22,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:01:22,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:01:22,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:01:22,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:01:24,218.218 INFO    ] ================================================
[2026-10-25 21:01:24,233.233 INFO    ] Launching Daemon at Sun Oct 25 21:01:24 IST 2026
[2026-10-25 21:01:24,244.244 INFO    ] ================================================
[2026-10-25 21:01:24,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:01:24
[2026-10-25 21:01:25,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:01:25,647.647 INFO    ] Initializing speech engine...
[2026-10-25 21:01:25,656.656 INFO    ] 2026-10-25 21:01:25
[2026-10-25 21:01:25,930.930 INFO    ] 2026-10-25 21:01:25
[2026-10-25 21:01:25,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:01:26,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:01:26,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:01:26,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:01:26,419.419 INFO    ] time= 25/10/2026 21:01:26
[2026-10-25 21:01:26,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:01:26,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:01:26,603.603 INFO    ] No existing commands found in stream
[2026-10-25 21:01:31,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:01:31,616.616 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 21:01:34,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:01:34,523.523 INFO    ] Checking for system updates...
[2026-10-25 21:01:34,559.559 INFO    ] 200
[2026-10-25 21:01:34,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:34,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:01:34,617.617 INFO    ] No update needed
[2026-10-25 21:01:34,619.619 INFO    ] Checking for camera pi updates...
[2026-10-25 21:01:34,653.653 INFO    ] 200
[2026-10-25 21:01:34,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:34,704.704 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:01:34,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:01:34,755.755 INFO    ] No camera update needed
[2026-10-25 21:01:34,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:01:34,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:01:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:01:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:01:36,812.812 INFO    ] ================================================
[2026-10-25 21:01:36,828.828 INFO    ] Launching Daemon at Sun Oct 25 21:01:36 IST 2026
[2026-10-25 21:01:36,839.839 INFO    ] ================================================
[2026-10-25 21:01:37,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:01:37
[2026-10-25 21:01:38,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:01:38,461.461 INFO    ] Initializing speech engine...
[2026-10-25 21:01:38,470.470 INFO    ] 2026-10-25 21:01:38
[2026-10-25 21:01:38,748.748 INFO    ] 2026-10-25 21:01:38
[2026-10-25 21:01:38,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:01:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:01:39,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:01:40,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:01:40,106.106 INFO    ] time= 25/10/2026 21:01:40
[2026-10-25 21:01:40,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:01:40,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:01:40,173.173 INFO    ] No existing commands found in stream
[2026-10-25 21:01:45,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:01:45,188.188 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 21:01:45,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:01:45,932.932 INFO    ] Checking for system updates...
[2026-10-25 21:01:45,969.969 INFO    ] 200
[2026-10-25 21:01:45,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:46,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:46,029.029 INFO    ] No update needed
[2026-10-25 21:01:46,032.032 INFO    ] Checking for camera pi updates...
[2026-10-25 21:01:46,067.067 INFO    ] 200
[2026-10-25 21:01:46,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:46,112.112 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:01:46,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:01:46,161.161 INFO    ] No camera update needed
[2026-10-25 21:01:46,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:01:46,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:01:46,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:01:46,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:01:48,221.221 INFO    ] ================================================
[2026-10-25 21:01:48,237.237 INFO    ] Launching Daemon at Sun Oct 25 21:01:48 IST 2026
[2026-10-25 21:01:48,248.248 INFO    ] ================================================
[2026-10-25 21:01:48,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:01:48
[2026-10-25 21:01:49,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:01:49,698.698 INFO    ] Initializing speech engine...
[2026-10-25 21:01:49,712.712 INFO    ] 2026-10-25 21:01:49
[2026-10-25 21:01:49,959.959 INFO    ] 2026-10-25 21:01:49
[2026-10-25 21:01:49,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:01:50,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:01:50,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:01:50,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:01:50,515.515 INFO    ] time= 25/10/2026 21:01:50
[2026-10-25 21:01:50,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:01:50,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:01:50,652.652 INFO    ] No existing commands found in stream
[2026-10-25 21:01:55,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:01:55,677.677 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 21:01:56,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:01:56,704.704 INFO    ] Checking for system updates...
[2026-10-25 21:01:56,743.743 INFO    ] 200
[2026-10-25 21:01:56,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:56,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:01:56,804.804 INFO    ] No update needed
[2026-10-25 21:01:56,807.807 INFO    ] Checking for camera pi updates...
[2026-10-25 21:01:56,842.842 INFO    ] 200
[2026-10-25 21:01:56,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:01:56,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:01:56,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:01:56,942.942 INFO    ] No camera update needed
[2026-10-25 21:01:56,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:01:56,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:01:56,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:01:56,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:01:59,002.002 INFO    ] ================================================
[2026-10-25 21:01:59,018.018 INFO    ] Launching Daemon at Sun Oct 25 21:01:59 IST 2026
[2026-10-25 21:01:59,030.030 INFO    ] ================================================
[2026-10-25 21:01:59,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:01:59
[2026-10-25 21:02:00,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:02:00,432.432 INFO    ] Initializing speech engine...
[2026-10-25 21:02:00,440.440 INFO    ] 2026-10-25 21:02:00
[2026-10-25 21:02:00,715.715 INFO    ] 2026-10-25 21:02:00
[2026-10-25 21:02:00,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:02:01,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:02:01,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:02:01,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:02:01,149.149 INFO    ] time= 25/10/2026 21:02:01
[2026-10-25 21:02:01,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:02:01,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:02:01,295.295 INFO    ] No existing commands found in stream
[2026-10-25 21:02:06,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:02:06,311.311 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 21:02:10,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:02:10,838.838 INFO    ] Checking for system updates...
[2026-10-25 21:02:10,875.875 INFO    ] 200
[2026-10-25 21:02:10,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:10,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:10,937.937 INFO    ] No update needed
[2026-10-25 21:02:10,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 21:02:10,976.976 INFO    ] 200
[2026-10-25 21:02:10,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:11,019.019 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:02:11,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:11,181.181 INFO    ] No camera update needed
[2026-10-25 21:02:11,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:02:11,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:02:11,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:02:11,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:02:13,237.237 INFO    ] ================================================
[2026-10-25 21:02:13,253.253 INFO    ] Launching Daemon at Sun Oct 25 21:02:13 IST 2026
[2026-10-25 21:02:13,264.264 INFO    ] ================================================
[2026-10-25 21:02:13,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:02:13
[2026-10-25 21:02:14,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:02:14,671.671 INFO    ] Initializing speech engine...
[2026-10-25 21:02:14,687.687 INFO    ] 2026-10-25 21:02:14
[2026-10-25 21:02:14,972.972 INFO    ] 2026-10-25 21:02:14
[2026-10-25 21:02:15,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:02:15,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:02:15,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:02:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:02:15,381.381 INFO    ] time= 25/10/2026 21:02:15
[2026-10-25 21:02:15,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:02:15,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:02:15,474.474 INFO    ] No existing commands found in stream
[2026-10-25 21:02:20,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:02:20,493.493 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 21:02:23,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:02:23,998.998 INFO    ] Checking for system updates...
[2026-10-25 21:02:24,035.035 INFO    ] 200
[2026-10-25 21:02:24,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:24,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:24,096.096 INFO    ] No update needed
[2026-10-25 21:02:24,098.098 INFO    ] Checking for camera pi updates...
[2026-10-25 21:02:24,134.134 INFO    ] 200
[2026-10-25 21:02:24,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:24,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:02:24,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:24,225.225 INFO    ] No camera update needed
[2026-10-25 21:02:24,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:02:24,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:02:24,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:02:24,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:02:26,280.280 INFO    ] ================================================
[2026-10-25 21:02:26,296.296 INFO    ] Launching Daemon at Sun Oct 25 21:02:26 IST 2026
[2026-10-25 21:02:26,307.307 INFO    ] ================================================
[2026-10-25 21:02:26,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:02:26
[2026-10-25 21:02:27,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:02:27,743.743 INFO    ] Initializing speech engine...
[2026-10-25 21:02:27,759.759 INFO    ] 2026-10-25 21:02:27
[2026-10-25 21:02:28,018.018 INFO    ] 2026-10-25 21:02:28
[2026-10-25 21:02:28,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:02:28,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:02:28,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:02:28,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:02:28,422.422 INFO    ] time= 25/10/2026 21:02:28
[2026-10-25 21:02:28,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:02:28,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:02:28,584.584 INFO    ] No existing commands found in stream
[2026-10-25 21:02:33,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:02:33,612.612 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 21:02:35,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:02:35,846.846 INFO    ] Checking for system updates...
[2026-10-25 21:02:35,886.886 INFO    ] 200
[2026-10-25 21:02:35,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:35,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:02:35,946.946 INFO    ] No update needed
[2026-10-25 21:02:35,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 21:02:35,984.984 INFO    ] 200
[2026-10-25 21:02:35,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:36,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:02:36,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:02:36,072.072 INFO    ] No camera update needed
[2026-10-25 21:02:36,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:02:36,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:02:36,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:02:36,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:02:38,131.131 INFO    ] ================================================
[2026-10-25 21:02:38,146.146 INFO    ] Launching Daemon at Sun Oct 25 21:02:38 IST 2026
[2026-10-25 21:02:38,158.158 INFO    ] ================================================
[2026-10-25 21:02:38,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:02:38
[2026-10-25 21:02:39,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:02:39,560.560 INFO    ] Initializing speech engine...
[2026-10-25 21:02:39,568.568 INFO    ] 2026-10-25 21:02:39
[2026-10-25 21:02:39,857.857 INFO    ] 2026-10-25 21:02:39
[2026-10-25 21:02:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:02:40,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:02:41,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:02:41,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:02:41,182.182 INFO    ] time= 25/10/2026 21:02:41
[2026-10-25 21:02:41,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:02:41,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:02:41,288.288 INFO    ] No existing commands found in stream
[2026-10-25 21:02:46,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:02:46,321.321 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 21:02:50,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:02:50,553.553 INFO    ] Checking for system updates...
[2026-10-25 21:02:50,590.590 INFO    ] 200
[2026-10-25 21:02:50,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:50,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:50,649.649 INFO    ] No update needed
[2026-10-25 21:02:50,651.651 INFO    ] Checking for camera pi updates...
[2026-10-25 21:02:50,687.687 INFO    ] 200
[2026-10-25 21:02:50,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:02:50,734.734 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:02:50,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:02:50,783.783 INFO    ] No camera update needed
[2026-10-25 21:02:50,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:02:50,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:02:50,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:02:50,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:02:52,839.839 INFO    ] ================================================
[2026-10-25 21:02:52,854.854 INFO    ] Launching Daemon at Sun Oct 25 21:02:52 IST 2026
[2026-10-25 21:02:52,866.866 INFO    ] ================================================
[2026-10-25 21:02:53,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:02:53
[2026-10-25 21:02:54,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:02:54,278.278 INFO    ] Initializing speech engine...
[2026-10-25 21:02:54,296.296 INFO    ] 2026-10-25 21:02:54
[2026-10-25 21:02:54,564.564 INFO    ] 2026-10-25 21:02:54
[2026-10-25 21:02:54,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:02:54,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:02:54,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:02:54,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:02:54,957.957 INFO    ] time= 25/10/2026 21:02:54
[2026-10-25 21:02:54,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:02:55,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:02:55,152.152 INFO    ] No existing commands found in stream
[2026-10-25 21:03:00,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:00,165.165 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 21:03:02,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:03:02,597.597 INFO    ] Checking for system updates...
[2026-10-25 21:03:02,635.635 INFO    ] 200
[2026-10-25 21:03:02,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:02,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:03:02,710.710 INFO    ] No update needed
[2026-10-25 21:03:02,714.714 INFO    ] Checking for camera pi updates...
[2026-10-25 21:03:02,757.757 INFO    ] 200
[2026-10-25 21:03:02,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:02,812.812 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:03:02,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:03:02,869.869 INFO    ] No camera update needed
[2026-10-25 21:03:02,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:03:02,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:03:02,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:03:02,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:03:04,937.937 INFO    ] ================================================
[2026-10-25 21:03:04,952.952 INFO    ] Launching Daemon at Sun Oct 25 21:03:04 IST 2026
[2026-10-25 21:03:04,963.963 INFO    ] ================================================
[2026-10-25 21:03:05,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:03:05
[2026-10-25 21:03:06,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:03:06,525.525 INFO    ] Initializing speech engine...
[2026-10-25 21:03:06,537.537 INFO    ] 2026-10-25 21:03:06
[2026-10-25 21:03:06,851.851 INFO    ] 2026-10-25 21:03:06
[2026-10-25 21:03:06,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:03:07,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:03:07,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:03:07,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:03:07,361.361 INFO    ] time= 25/10/2026 21:03:07
[2026-10-25 21:03:07,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:03:07,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:03:07,515.515 INFO    ] No existing commands found in stream
[2026-10-25 21:03:12,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:12,550.550 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 21:03:14,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:03:14,702.702 INFO    ] Checking for system updates...
[2026-10-25 21:03:14,740.740 INFO    ] 200
[2026-10-25 21:03:14,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:14,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:14,801.801 INFO    ] No update needed
[2026-10-25 21:03:14,803.803 INFO    ] Checking for camera pi updates...
[2026-10-25 21:03:14,838.838 INFO    ] 200
[2026-10-25 21:03:14,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:14,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:03:14,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:14,937.937 INFO    ] No camera update needed
[2026-10-25 21:03:14,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:03:14,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:03:14,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:03:14,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:03:16,992.992 INFO    ] ================================================
[2026-10-25 21:03:17,007.007 INFO    ] Launching Daemon at Sun Oct 25 21:03:17 IST 2026
[2026-10-25 21:03:17,018.018 INFO    ] ================================================
[2026-10-25 21:03:17,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:03:17
[2026-10-25 21:03:18,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:03:18,437.437 INFO    ] Initializing speech engine...
[2026-10-25 21:03:18,446.446 INFO    ] 2026-10-25 21:03:18
[2026-10-25 21:03:18,700.700 INFO    ] 2026-10-25 21:03:18
[2026-10-25 21:03:18,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:03:18,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:03:18,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:03:19,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:03:19,137.137 INFO    ] time= 25/10/2026 21:03:19
[2026-10-25 21:03:19,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:03:19,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:03:19,334.334 INFO    ] No existing commands found in stream
[2026-10-25 21:03:24,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:24,375.375 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 21:03:25,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:03:25,009.009 INFO    ] Checking for system updates...
[2026-10-25 21:03:25,050.050 INFO    ] 200
[2026-10-25 21:03:25,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:25,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:03:25,115.115 INFO    ] No update needed
[2026-10-25 21:03:25,118.118 INFO    ] Checking for camera pi updates...
[2026-10-25 21:03:25,152.152 INFO    ] 200
[2026-10-25 21:03:25,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:25,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:03:25,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:03:25,250.250 INFO    ] No camera update needed
[2026-10-25 21:03:25,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:03:25,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:03:25,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:03:25,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:03:27,309.309 INFO    ] ================================================
[2026-10-25 21:03:27,324.324 INFO    ] Launching Daemon at Sun Oct 25 21:03:27 IST 2026
[2026-10-25 21:03:27,335.335 INFO    ] ================================================
[2026-10-25 21:03:27,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:03:27
[2026-10-25 21:03:28,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:03:28,764.764 INFO    ] Initializing speech engine...
[2026-10-25 21:03:28,777.777 INFO    ] 2026-10-25 21:03:28
[2026-10-25 21:03:29,024.024 INFO    ] 2026-10-25 21:03:29
[2026-10-25 21:03:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:03:29,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:03:29,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:03:29,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:03:29,416.416 INFO    ] time= 25/10/2026 21:03:29
[2026-10-25 21:03:29,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:03:29,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:03:29,585.585 INFO    ] No existing commands found in stream
[2026-10-25 21:03:34,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:34,619.619 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 21:03:38,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:03:38,151.151 INFO    ] Checking for system updates...
[2026-10-25 21:03:38,188.188 INFO    ] 200
[2026-10-25 21:03:38,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:38,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:38,248.248 INFO    ] No update needed
[2026-10-25 21:03:38,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 21:03:38,286.286 INFO    ] 200
[2026-10-25 21:03:38,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:38,330.330 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:03:38,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:38,451.451 INFO    ] No camera update needed
[2026-10-25 21:03:38,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:03:38,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:03:38,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:03:38,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:03:40,510.510 INFO    ] ================================================
[2026-10-25 21:03:40,525.525 INFO    ] Launching Daemon at Sun Oct 25 21:03:40 IST 2026
[2026-10-25 21:03:40,536.536 INFO    ] ================================================
[2026-10-25 21:03:41,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:03:41
[2026-10-25 21:03:41,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:03:41,965.965 INFO    ] Initializing speech engine...
[2026-10-25 21:03:41,979.979 INFO    ] 2026-10-25 21:03:41
[2026-10-25 21:03:42,266.266 INFO    ] 2026-10-25 21:03:42
[2026-10-25 21:03:42,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:03:42,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:03:42,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:03:42,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:03:42,905.905 INFO    ] time= 25/10/2026 21:03:42
[2026-10-25 21:03:42,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:03:42,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:03:43,047.047 INFO    ] No existing commands found in stream
[2026-10-25 21:03:48,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:48,073.073 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 21:03:48,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:03:48,952.952 INFO    ] Checking for system updates...
[2026-10-25 21:03:48,989.989 INFO    ] 200
[2026-10-25 21:03:48,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:49,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:49,050.050 INFO    ] No update needed
[2026-10-25 21:03:49,053.053 INFO    ] Checking for camera pi updates...
[2026-10-25 21:03:49,093.093 INFO    ] 200
[2026-10-25 21:03:49,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:03:49,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:03:49,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:03:49,215.215 INFO    ] No camera update needed
[2026-10-25 21:03:49,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:03:49,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:03:49,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:03:49,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:03:51,273.273 INFO    ] ================================================
[2026-10-25 21:03:51,289.289 INFO    ] Launching Daemon at Sun Oct 25 21:03:51 IST 2026
[2026-10-25 21:03:51,299.299 INFO    ] ================================================
[2026-10-25 21:03:51,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:03:51
[2026-10-25 21:03:52,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:03:52,718.718 INFO    ] Initializing speech engine...
[2026-10-25 21:03:52,726.726 INFO    ] 2026-10-25 21:03:52
[2026-10-25 21:03:52,975.975 INFO    ] 2026-10-25 21:03:52
[2026-10-25 21:03:53,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:03:53,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:03:53,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:03:53,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:03:53,349.349 INFO    ] time= 25/10/2026 21:03:53
[2026-10-25 21:03:53,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:03:53,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:03:53,526.526 INFO    ] No existing commands found in stream
[2026-10-25 21:03:58,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:03:58,554.554 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 21:04:02,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:04:02,660.660 INFO    ] Checking for system updates...
[2026-10-25 21:04:02,702.702 INFO    ] 200
[2026-10-25 21:04:02,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:02,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:04:02,766.766 INFO    ] No update needed
[2026-10-25 21:04:02,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 21:04:02,807.807 INFO    ] 200
[2026-10-25 21:04:02,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:02,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:04:02,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:04:02,898.898 INFO    ] No camera update needed
[2026-10-25 21:04:02,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:04:02,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:04:02,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:04:02,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:04:04,956.956 INFO    ] ================================================
[2026-10-25 21:04:04,971.971 INFO    ] Launching Daemon at Sun Oct 25 21:04:04 IST 2026
[2026-10-25 21:04:04,982.982 INFO    ] ================================================
[2026-10-25 21:04:05,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:04:05
[2026-10-25 21:04:06,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:04:06,384.384 INFO    ] Initializing speech engine...
[2026-10-25 21:04:06,398.398 INFO    ] 2026-10-25 21:04:06
[2026-10-25 21:04:06,666.666 INFO    ] 2026-10-25 21:04:06
[2026-10-25 21:04:06,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:04:06,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:04:06,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:04:07,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:04:07,240.240 INFO    ] time= 25/10/2026 21:04:07
[2026-10-25 21:04:07,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:04:07,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:04:07,396.396 INFO    ] No existing commands found in stream
[2026-10-25 21:04:12,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:04:12,412.412 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 21:04:13,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:04:13,892.892 INFO    ] Checking for system updates...
[2026-10-25 21:04:13,928.928 INFO    ] 200
[2026-10-25 21:04:13,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:13,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:13,987.987 INFO    ] No update needed
[2026-10-25 21:04:13,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 21:04:14,028.028 INFO    ] 200
[2026-10-25 21:04:14,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:14,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:04:14,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:14,237.237 INFO    ] No camera update needed
[2026-10-25 21:04:14,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:04:14,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:04:14,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:04:14,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:04:16,295.295 INFO    ] ================================================
[2026-10-25 21:04:16,310.310 INFO    ] Launching Daemon at Sun Oct 25 21:04:16 IST 2026
[2026-10-25 21:04:16,320.320 INFO    ] ================================================
[2026-10-25 21:04:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:04:16
[2026-10-25 21:04:17,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:04:17,721.721 INFO    ] Initializing speech engine...
[2026-10-25 21:04:17,729.729 INFO    ] 2026-10-25 21:04:17
[2026-10-25 21:04:18,004.004 INFO    ] 2026-10-25 21:04:17
[2026-10-25 21:04:18,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:04:18,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:04:18,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:04:18,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:04:18,379.379 INFO    ] time= 25/10/2026 21:04:18
[2026-10-25 21:04:18,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:04:18,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:04:18,539.539 INFO    ] No existing commands found in stream
[2026-10-25 21:04:23,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:04:23,572.572 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 21:04:24,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:04:24,079.079 INFO    ] Checking for system updates...
[2026-10-25 21:04:24,116.116 INFO    ] 200
[2026-10-25 21:04:24,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:24,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:24,176.176 INFO    ] No update needed
[2026-10-25 21:04:24,178.178 INFO    ] Checking for camera pi updates...
[2026-10-25 21:04:24,213.213 INFO    ] 200
[2026-10-25 21:04:24,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:24,256.256 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:04:24,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:24,305.305 INFO    ] No camera update needed
[2026-10-25 21:04:24,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:04:24,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:04:24,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:04:24,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:04:26,362.362 INFO    ] ================================================
[2026-10-25 21:04:26,376.376 INFO    ] Launching Daemon at Sun Oct 25 21:04:26 IST 2026
[2026-10-25 21:04:26,387.387 INFO    ] ================================================
[2026-10-25 21:04:27,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:04:27
[2026-10-25 21:04:27,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:04:27,934.934 INFO    ] Initializing speech engine...
[2026-10-25 21:04:27,948.948 INFO    ] 2026-10-25 21:04:27
[2026-10-25 21:04:28,224.224 INFO    ] 2026-10-25 21:04:28
[2026-10-25 21:04:28,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:04:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:04:28,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:04:28,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:04:28,682.682 INFO    ] time= 25/10/2026 21:04:28
[2026-10-25 21:04:28,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:04:28,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:04:28,845.845 INFO    ] No existing commands found in stream
[2026-10-25 21:04:33,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:04:33,877.877 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 21:04:37,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:04:37,821.821 INFO    ] Checking for system updates...
[2026-10-25 21:04:37,858.858 INFO    ] 200
[2026-10-25 21:04:37,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:37,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:37,917.917 INFO    ] No update needed
[2026-10-25 21:04:37,921.921 INFO    ] Checking for camera pi updates...
[2026-10-25 21:04:37,956.956 INFO    ] 200
[2026-10-25 21:04:37,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:37,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:04:38,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:04:38,147.147 INFO    ] No camera update needed
[2026-10-25 21:04:38,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:04:38,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:04:38,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:04:38,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:04:40,204.204 INFO    ] ================================================
[2026-10-25 21:04:40,219.219 INFO    ] Launching Daemon at Sun Oct 25 21:04:40 IST 2026
[2026-10-25 21:04:40,229.229 INFO    ] ================================================
[2026-10-25 21:04:40,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:04:40
[2026-10-25 21:04:41,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:04:41,673.673 INFO    ] Initializing speech engine...
[2026-10-25 21:04:41,682.682 INFO    ] 2026-10-25 21:04:41
[2026-10-25 21:04:41,944.944 INFO    ] 2026-10-25 21:04:41
[2026-10-25 21:04:41,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:04:43,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:04:43,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:04:43,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:04:43,359.359 INFO    ] time= 25/10/2026 21:04:43
[2026-10-25 21:04:43,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:04:43,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:04:43,430.430 INFO    ] No existing commands found in stream
[2026-10-25 21:04:48,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:04:48,444.444 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-25 21:04:49,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:04:49,307.307 INFO    ] Checking for system updates...
[2026-10-25 21:04:49,343.343 INFO    ] 200
[2026-10-25 21:04:49,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:49,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:04:49,401.401 INFO    ] No update needed
[2026-10-25 21:04:49,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 21:04:49,438.438 INFO    ] 200
[2026-10-25 21:04:49,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:04:49,481.481 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:04:49,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:04:49,529.529 INFO    ] No camera update needed
[2026-10-25 21:04:49,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:04:49,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:04:49,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:04:49,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:04:51,586.586 INFO    ] ================================================
[2026-10-25 21:04:51,601.601 INFO    ] Launching Daemon at Sun Oct 25 21:04:51 IST 2026
[2026-10-25 21:04:51,612.612 INFO    ] ================================================
[2026-10-25 21:04:52,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:04:52
[2026-10-25 21:04:52,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:04:53,024.024 INFO    ] Initializing speech engine...
[2026-10-25 21:04:53,046.046 INFO    ] 2026-10-25 21:04:53
[2026-10-25 21:04:53,300.300 INFO    ] 2026-10-25 21:04:53
[2026-10-25 21:04:53,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:04:53,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:04:53,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:04:53,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:04:53,801.801 INFO    ] time= 25/10/2026 21:04:53
[2026-10-25 21:04:53,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:04:53,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:04:53,985.985 INFO    ] No existing commands found in stream
[2026-10-25 21:04:59,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:04:59,021.021 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 21:05:00,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:05:00,377.377 INFO    ] Checking for system updates...
[2026-10-25 21:05:00,413.413 INFO    ] 200
[2026-10-25 21:05:00,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:00,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:05:00,477.477 INFO    ] No update needed
[2026-10-25 21:05:00,480.480 INFO    ] Checking for camera pi updates...
[2026-10-25 21:05:00,516.516 INFO    ] 200
[2026-10-25 21:05:00,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:00,564.564 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:05:00,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:05:00,623.623 INFO    ] No camera update needed
[2026-10-25 21:05:00,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:05:00,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:05:00,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:05:00,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:05:02,687.687 INFO    ] ================================================
[2026-10-25 21:05:02,703.703 INFO    ] Launching Daemon at Sun Oct 25 21:05:02 IST 2026
[2026-10-25 21:05:02,716.716 INFO    ] ================================================
[2026-10-25 21:05:03,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:05:03
[2026-10-25 21:05:03,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:05:04,272.272 INFO    ] Initializing speech engine...
[2026-10-25 21:05:04,285.285 INFO    ] 2026-10-25 21:05:04
[2026-10-25 21:05:04,549.549 INFO    ] 2026-10-25 21:05:04
[2026-10-25 21:05:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:05:04,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:05:04,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:05:04,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:05:05,020.020 INFO    ] time= 25/10/2026 21:05:04
[2026-10-25 21:05:05,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:05:05,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:05:05,204.204 INFO    ] No existing commands found in stream
[2026-10-25 21:05:10,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:05:10,237.237 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 21:05:13,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:05:13,673.673 INFO    ] Checking for system updates...
[2026-10-25 21:05:13,710.710 INFO    ] 200
[2026-10-25 21:05:13,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:13,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:13,774.774 INFO    ] No update needed
[2026-10-25 21:05:13,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 21:05:13,811.811 INFO    ] 200
[2026-10-25 21:05:13,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:13,856.856 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:05:13,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:13,909.909 INFO    ] No camera update needed
[2026-10-25 21:05:13,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:05:13,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:05:13,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:05:13,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:05:15,966.966 INFO    ] ================================================
[2026-10-25 21:05:15,981.981 INFO    ] Launching Daemon at Sun Oct 25 21:05:15 IST 2026
[2026-10-25 21:05:15,992.992 INFO    ] ================================================
[2026-10-25 21:05:16,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:05:16
[2026-10-25 21:05:17,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:05:17,434.434 INFO    ] Initializing speech engine...
[2026-10-25 21:05:17,442.442 INFO    ] 2026-10-25 21:05:17
[2026-10-25 21:05:17,690.690 INFO    ] 2026-10-25 21:05:17
[2026-10-25 21:05:17,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:05:17,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:05:17,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:05:18,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:05:18,154.154 INFO    ] time= 25/10/2026 21:05:18
[2026-10-25 21:05:18,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:05:18,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:05:18,301.301 INFO    ] No existing commands found in stream
[2026-10-25 21:05:23,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:05:23,316.316 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 21:05:26,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:05:26,207.207 INFO    ] Checking for system updates...
[2026-10-25 21:05:26,243.243 INFO    ] 200
[2026-10-25 21:05:26,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:26,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:26,301.301 INFO    ] No update needed
[2026-10-25 21:05:26,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 21:05:26,337.337 INFO    ] 200
[2026-10-25 21:05:26,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:26,383.383 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:05:26,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:26,432.432 INFO    ] No camera update needed
[2026-10-25 21:05:26,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:05:26,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:05:26,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:05:26,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:05:28,488.488 INFO    ] ================================================
[2026-10-25 21:05:28,502.502 INFO    ] Launching Daemon at Sun Oct 25 21:05:28 IST 2026
[2026-10-25 21:05:28,513.513 INFO    ] ================================================
[2026-10-25 21:05:29,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:05:29
[2026-10-25 21:05:29,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:05:29,918.918 INFO    ] Initializing speech engine...
[2026-10-25 21:05:29,931.931 INFO    ] 2026-10-25 21:05:29
[2026-10-25 21:05:30,182.182 INFO    ] 2026-10-25 21:05:30
[2026-10-25 21:05:30,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:05:30,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:05:30,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:05:30,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:05:30,628.628 INFO    ] time= 25/10/2026 21:05:30
[2026-10-25 21:05:30,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:05:30,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:05:30,793.793 INFO    ] No existing commands found in stream
[2026-10-25 21:05:35,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:05:35,821.821 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-25 21:05:37,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:05:37,375.375 INFO    ] Checking for system updates...
[2026-10-25 21:05:37,411.411 INFO    ] 200
[2026-10-25 21:05:37,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:37,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:37,469.469 INFO    ] No update needed
[2026-10-25 21:05:37,472.472 INFO    ] Checking for camera pi updates...
[2026-10-25 21:05:37,506.506 INFO    ] 200
[2026-10-25 21:05:37,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:37,548.548 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:05:37,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:37,593.593 INFO    ] No camera update needed
[2026-10-25 21:05:37,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:05:37,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:05:37,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:05:37,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:05:39,648.648 INFO    ] ================================================
[2026-10-25 21:05:39,663.663 INFO    ] Launching Daemon at Sun Oct 25 21:05:39 IST 2026
[2026-10-25 21:05:39,674.674 INFO    ] ================================================
[2026-10-25 21:05:40,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:05:40
[2026-10-25 21:05:40,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:05:41,195.195 INFO    ] Initializing speech engine...
[2026-10-25 21:05:41,203.203 INFO    ] 2026-10-25 21:05:41
[2026-10-25 21:05:41,476.476 INFO    ] 2026-10-25 21:05:41
[2026-10-25 21:05:41,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:05:43,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:05:43,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:05:43,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:05:43,907.907 INFO    ] time= 25/10/2026 21:05:43
[2026-10-25 21:05:43,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:05:43,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:05:44,030.030 INFO    ] No existing commands found in stream
[2026-10-25 21:05:49,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:05:49,044.044 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 21:05:50,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:05:50,866.866 INFO    ] Checking for system updates...
[2026-10-25 21:05:50,902.902 INFO    ] 200
[2026-10-25 21:05:50,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:50,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:50,961.961 INFO    ] No update needed
[2026-10-25 21:05:50,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 21:05:50,997.997 INFO    ] 200
[2026-10-25 21:05:50,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:05:51,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:05:51,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:05:51,095.095 INFO    ] No camera update needed
[2026-10-25 21:05:51,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:05:51,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:05:51,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:05:51,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:05:53,150.150 INFO    ] ================================================
[2026-10-25 21:05:53,165.165 INFO    ] Launching Daemon at Sun Oct 25 21:05:53 IST 2026
[2026-10-25 21:05:53,175.175 INFO    ] ================================================
[2026-10-25 21:05:53,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:05:53
[2026-10-25 21:05:54,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:05:54,722.722 INFO    ] Initializing speech engine...
[2026-10-25 21:05:54,735.735 INFO    ] 2026-10-25 21:05:54
[2026-10-25 21:05:55,015.015 INFO    ] 2026-10-25 21:05:54
[2026-10-25 21:05:55,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:05:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:05:55,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:05:55,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:05:55,709.709 INFO    ] time= 25/10/2026 21:05:55
[2026-10-25 21:05:55,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:05:55,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:05:55,911.911 INFO    ] No existing commands found in stream
[2026-10-25 21:06:00,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:06:00,936.936 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 21:06:02,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:06:02,945.945 INFO    ] Checking for system updates...
[2026-10-25 21:06:03,010.010 INFO    ] 200
[2026-10-25 21:06:03,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 21:06:03,016.016 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 21:06:03,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 21:06:03,067.067 INFO    ] 200
[2026-10-25 21:06:03,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 21:06:03,073.073 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 21:06:03,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:06:03,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:06:03,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:06:03,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:06:05,136.136 INFO    ] ================================================
[2026-10-25 21:06:05,157.157 INFO    ] Launching Daemon at Sun Oct 25 21:06:05 IST 2026
[2026-10-25 21:06:05,168.168 INFO    ] ================================================
[2026-10-25 21:06:05,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:06:05
[2026-10-25 21:06:06,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:06:06,614.614 INFO    ] Initializing speech engine...
[2026-10-25 21:06:06,633.633 INFO    ] 2026-10-25 21:06:06
[2026-10-25 21:06:06,878.878 INFO    ] 2026-10-25 21:06:06
[2026-10-25 21:06:06,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:06:07,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:06:07,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:06:07,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:06:07,357.357 INFO    ] time= 25/10/2026 21:06:07
[2026-10-25 21:06:07,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:06:07,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:06:07,491.491 INFO    ] No existing commands found in stream
[2026-10-25 21:06:12,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:06:12,506.506 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 21:06:14,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:06:14,885.885 INFO    ] Checking for system updates...
[2026-10-25 21:06:14,924.924 INFO    ] 200
[2026-10-25 21:06:14,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:14,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:14,994.994 INFO    ] No update needed
[2026-10-25 21:06:14,997.997 INFO    ] Checking for camera pi updates...
[2026-10-25 21:06:15,035.035 INFO    ] 200
[2026-10-25 21:06:15,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:15,083.083 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:06:15,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:15,241.241 INFO    ] No camera update needed
[2026-10-25 21:06:15,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:06:15,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:06:15,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:06:15,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:06:17,300.300 INFO    ] ================================================
[2026-10-25 21:06:17,315.315 INFO    ] Launching Daemon at Sun Oct 25 21:06:17 IST 2026
[2026-10-25 21:06:17,326.326 INFO    ] ================================================
[2026-10-25 21:06:17,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:06:17
[2026-10-25 21:06:18,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:06:18,736.736 INFO    ] Initializing speech engine...
[2026-10-25 21:06:18,746.746 INFO    ] 2026-10-25 21:06:18
[2026-10-25 21:06:19,037.037 INFO    ] 2026-10-25 21:06:19
[2026-10-25 21:06:19,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:06:19,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:06:19,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:06:19,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:06:19,449.449 INFO    ] time= 25/10/2026 21:06:19
[2026-10-25 21:06:19,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:06:19,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:06:19,614.614 INFO    ] No existing commands found in stream
[2026-10-25 21:06:24,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:06:24,637.637 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 21:06:29,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:06:29,042.042 INFO    ] Checking for system updates...
[2026-10-25 21:06:29,078.078 INFO    ] 200
[2026-10-25 21:06:29,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:29,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:29,136.136 INFO    ] No update needed
[2026-10-25 21:06:29,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 21:06:29,172.172 INFO    ] 200
[2026-10-25 21:06:29,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:29,219.219 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:06:29,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:29,269.269 INFO    ] No camera update needed
[2026-10-25 21:06:29,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:06:29,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:06:29,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:06:29,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:06:31,324.324 INFO    ] ================================================
[2026-10-25 21:06:31,339.339 INFO    ] Launching Daemon at Sun Oct 25 21:06:31 IST 2026
[2026-10-25 21:06:31,350.350 INFO    ] ================================================
[2026-10-25 21:06:31,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:06:31
[2026-10-25 21:06:32,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:06:32,898.898 INFO    ] Initializing speech engine...
[2026-10-25 21:06:32,903.903 INFO    ] 2026-10-25 21:06:32
[2026-10-25 21:06:33,178.178 INFO    ] 2026-10-25 21:06:33
[2026-10-25 21:06:33,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:06:33,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:06:33,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:06:33,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:06:33,729.729 INFO    ] time= 25/10/2026 21:06:33
[2026-10-25 21:06:33,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:06:33,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:06:33,867.867 INFO    ] No existing commands found in stream
[2026-10-25 21:06:38,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:06:38,897.897 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 21:06:39,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:06:39,310.310 INFO    ] Checking for system updates...
[2026-10-25 21:06:39,348.348 INFO    ] 200
[2026-10-25 21:06:39,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:39,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:06:39,407.407 INFO    ] No update needed
[2026-10-25 21:06:39,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 21:06:39,444.444 INFO    ] 200
[2026-10-25 21:06:39,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:39,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:06:39,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:06:39,544.544 INFO    ] No camera update needed
[2026-10-25 21:06:39,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:06:39,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:06:39,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:06:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:06:41,599.599 INFO    ] ================================================
[2026-10-25 21:06:41,615.615 INFO    ] Launching Daemon at Sun Oct 25 21:06:41 IST 2026
[2026-10-25 21:06:41,626.626 INFO    ] ================================================
[2026-10-25 21:06:42,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:06:42
[2026-10-25 21:06:42,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:06:43,214.214 INFO    ] Initializing speech engine...
[2026-10-25 21:06:43,224.224 INFO    ] 2026-10-25 21:06:43
[2026-10-25 21:06:43,493.493 INFO    ] 2026-10-25 21:06:43
[2026-10-25 21:06:43,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:06:45,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:06:45,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:06:45,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:06:45,567.567 INFO    ] time= 25/10/2026 21:06:45
[2026-10-25 21:06:45,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:06:45,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:06:45,630.630 INFO    ] No existing commands found in stream
[2026-10-25 21:06:50,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:06:50,646.646 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 21:06:52,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:06:52,173.173 INFO    ] Checking for system updates...
[2026-10-25 21:06:52,210.210 INFO    ] 200
[2026-10-25 21:06:52,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:52,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:52,270.270 INFO    ] No update needed
[2026-10-25 21:06:52,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 21:06:52,311.311 INFO    ] 200
[2026-10-25 21:06:52,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:06:52,355.355 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:06:52,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:06:52,416.416 INFO    ] No camera update needed
[2026-10-25 21:06:52,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:06:52,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:06:52,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:06:52,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:06:54,480.480 INFO    ] ================================================
[2026-10-25 21:06:54,495.495 INFO    ] Launching Daemon at Sun Oct 25 21:06:54 IST 2026
[2026-10-25 21:06:54,506.506 INFO    ] ================================================
[2026-10-25 21:06:55,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:06:55
[2026-10-25 21:06:55,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:06:56,099.099 INFO    ] Initializing speech engine...
[2026-10-25 21:06:56,106.106 INFO    ] 2026-10-25 21:06:56
[2026-10-25 21:06:56,388.388 INFO    ] 2026-10-25 21:06:56
[2026-10-25 21:06:56,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:06:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:06:56,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:06:56,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:06:56,929.929 INFO    ] time= 25/10/2026 21:06:56
[2026-10-25 21:06:56,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:06:56,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:06:57,081.081 INFO    ] No existing commands found in stream
[2026-10-25 21:07:02,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:07:02,100.100 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-25 21:07:06,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:07:06,183.183 INFO    ] Checking for system updates...
[2026-10-25 21:07:06,224.224 INFO    ] 200
[2026-10-25 21:07:06,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:06,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:06,290.290 INFO    ] No update needed
[2026-10-25 21:07:06,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 21:07:06,332.332 INFO    ] 200
[2026-10-25 21:07:06,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:06,379.379 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:07:06,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:06,468.468 INFO    ] No camera update needed
[2026-10-25 21:07:06,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:07:06,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:07:06,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:07:06,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:07:08,526.526 INFO    ] ================================================
[2026-10-25 21:07:08,542.542 INFO    ] Launching Daemon at Sun Oct 25 21:07:08 IST 2026
[2026-10-25 21:07:08,553.553 INFO    ] ================================================
[2026-10-25 21:07:09,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:07:09
[2026-10-25 21:07:09,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:07:09,991.991 INFO    ] Initializing speech engine...
[2026-10-25 21:07:10,000.000 INFO    ] 2026-10-25 21:07:09
[2026-10-25 21:07:10,251.251 INFO    ] 2026-10-25 21:07:10
[2026-10-25 21:07:10,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:07:10,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:07:10,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:07:10,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:07:10,733.733 INFO    ] time= 25/10/2026 21:07:10
[2026-10-25 21:07:10,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:07:10,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:07:10,930.930 INFO    ] No existing commands found in stream
[2026-10-25 21:07:15,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:07:15,960.960 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 21:07:17,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:07:17,923.923 INFO    ] Checking for system updates...
[2026-10-25 21:07:17,959.959 INFO    ] 200
[2026-10-25 21:07:17,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:18,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:18,016.016 INFO    ] No update needed
[2026-10-25 21:07:18,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 21:07:18,052.052 INFO    ] 200
[2026-10-25 21:07:18,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:18,095.095 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:07:18,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:18,143.143 INFO    ] No camera update needed
[2026-10-25 21:07:18,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:07:18,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:07:18,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:07:18,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:07:20,199.199 INFO    ] ================================================
[2026-10-25 21:07:20,214.214 INFO    ] Launching Daemon at Sun Oct 25 21:07:20 IST 2026
[2026-10-25 21:07:20,225.225 INFO    ] ================================================
[2026-10-25 21:07:20,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:07:20
[2026-10-25 21:07:21,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:07:21,644.644 INFO    ] Initializing speech engine...
[2026-10-25 21:07:21,667.667 INFO    ] 2026-10-25 21:07:21
[2026-10-25 21:07:21,922.922 INFO    ] 2026-10-25 21:07:21
[2026-10-25 21:07:21,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:07:22,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:07:22,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:07:22,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:07:22,263.263 INFO    ] time= 25/10/2026 21:07:22
[2026-10-25 21:07:22,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:07:22,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:07:22,356.356 INFO    ] No existing commands found in stream
[2026-10-25 21:07:27,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:07:27,368.368 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 21:07:29,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:07:29,792.792 INFO    ] Checking for system updates...
[2026-10-25 21:07:29,829.829 INFO    ] 200
[2026-10-25 21:07:29,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:29,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:29,889.889 INFO    ] No update needed
[2026-10-25 21:07:29,892.892 INFO    ] Checking for camera pi updates...
[2026-10-25 21:07:29,931.931 INFO    ] 200
[2026-10-25 21:07:29,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:29,983.983 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:07:30,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:30,035.035 INFO    ] No camera update needed
[2026-10-25 21:07:30,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:07:30,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:07:30,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:07:30,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:07:32,096.096 INFO    ] ================================================
[2026-10-25 21:07:32,113.113 INFO    ] Launching Daemon at Sun Oct 25 21:07:32 IST 2026
[2026-10-25 21:07:32,126.126 INFO    ] ================================================
[2026-10-25 21:07:32,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:07:32
[2026-10-25 21:07:33,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:07:33,650.650 INFO    ] Initializing speech engine...
[2026-10-25 21:07:33,655.655 INFO    ] 2026-10-25 21:07:33
[2026-10-25 21:07:33,902.902 INFO    ] 2026-10-25 21:07:33
[2026-10-25 21:07:33,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:07:34,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:07:34,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:07:34,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:07:34,651.651 INFO    ] time= 25/10/2026 21:07:34
[2026-10-25 21:07:34,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:07:34,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:07:34,874.874 INFO    ] No existing commands found in stream
[2026-10-25 21:07:39,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:07:39,903.903 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 21:07:46,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:07:46,181.181 INFO    ] Checking for system updates...
[2026-10-25 21:07:46,218.218 INFO    ] 200
[2026-10-25 21:07:46,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:46,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:46,278.278 INFO    ] No update needed
[2026-10-25 21:07:46,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 21:07:46,316.316 INFO    ] 200
[2026-10-25 21:07:46,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:46,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:07:46,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:46,397.397 INFO    ] No camera update needed
[2026-10-25 21:07:46,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:07:46,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:07:46,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:07:46,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:07:48,454.454 INFO    ] ================================================
[2026-10-25 21:07:48,470.470 INFO    ] Launching Daemon at Sun Oct 25 21:07:48 IST 2026
[2026-10-25 21:07:48,482.482 INFO    ] ================================================
[2026-10-25 21:07:49,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:07:49
[2026-10-25 21:07:49,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:07:49,909.909 INFO    ] Initializing speech engine...
[2026-10-25 21:07:49,930.930 INFO    ] 2026-10-25 21:07:49
[2026-10-25 21:07:50,198.198 INFO    ] 2026-10-25 21:07:50
[2026-10-25 21:07:50,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:07:50,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:07:50,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:07:50,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:07:50,594.594 INFO    ] time= 25/10/2026 21:07:50
[2026-10-25 21:07:50,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:07:50,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:07:50,702.702 INFO    ] No existing commands found in stream
[2026-10-25 21:07:55,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:07:55,717.717 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 21:07:56,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:07:56,711.711 INFO    ] Checking for system updates...
[2026-10-25 21:07:56,747.747 INFO    ] 200
[2026-10-25 21:07:56,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:56,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:56,805.805 INFO    ] No update needed
[2026-10-25 21:07:56,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 21:07:56,842.842 INFO    ] 200
[2026-10-25 21:07:56,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:07:56,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:07:56,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:07:56,943.943 INFO    ] No camera update needed
[2026-10-25 21:07:56,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:07:56,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:07:56,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:07:56,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:07:59,998.998 INFO    ] ================================================
[2026-10-25 21:07:59,014.014 INFO    ] Launching Daemon at Sun Oct 25 21:07:59 IST 2026
[2026-10-25 21:07:59,024.024 INFO    ] ================================================
[2026-10-25 21:07:59,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:07:59
[2026-10-25 21:08:00,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:08:00,634.634 INFO    ] Initializing speech engine...
[2026-10-25 21:08:00,640.640 INFO    ] 2026-10-25 21:08:00
[2026-10-25 21:08:00,910.910 INFO    ] 2026-10-25 21:08:00
[2026-10-25 21:08:00,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:08:01,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:08:01,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:08:01,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:08:01,406.406 INFO    ] time= 25/10/2026 21:08:01
[2026-10-25 21:08:01,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:08:01,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:08:01,554.554 INFO    ] No existing commands found in stream
[2026-10-25 21:08:06,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:08:06,569.569 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 21:08:08,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:08:08,073.073 INFO    ] Checking for system updates...
[2026-10-25 21:08:08,111.111 INFO    ] 200
[2026-10-25 21:08:08,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:08,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:08:08,173.173 INFO    ] No update needed
[2026-10-25 21:08:08,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 21:08:08,209.209 INFO    ] 200
[2026-10-25 21:08:08,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:08,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:08:08,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:08:08,311.311 INFO    ] No camera update needed
[2026-10-25 21:08:08,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:08:08,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:08:08,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:08:08,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:08:10,367.367 INFO    ] ================================================
[2026-10-25 21:08:10,382.382 INFO    ] Launching Daemon at Sun Oct 25 21:08:10 IST 2026
[2026-10-25 21:08:10,392.392 INFO    ] ================================================
[2026-10-25 21:08:10,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:08:10
[2026-10-25 21:08:11,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:08:11,797.797 INFO    ] Initializing speech engine...
[2026-10-25 21:08:11,823.823 INFO    ] 2026-10-25 21:08:11
[2026-10-25 21:08:12,094.094 INFO    ] 2026-10-25 21:08:12
[2026-10-25 21:08:12,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:08:12,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:08:12,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:08:12,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:08:12,481.481 INFO    ] time= 25/10/2026 21:08:12
[2026-10-25 21:08:12,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:08:12,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:08:12,663.663 INFO    ] No existing commands found in stream
[2026-10-25 21:08:17,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:08:17,692.692 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 21:08:21,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:08:21,998.998 INFO    ] Checking for system updates...
[2026-10-25 21:08:22,035.035 INFO    ] 200
[2026-10-25 21:08:22,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:22,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:08:22,095.095 INFO    ] No update needed
[2026-10-25 21:08:22,097.097 INFO    ] Checking for camera pi updates...
[2026-10-25 21:08:22,132.132 INFO    ] 200
[2026-10-25 21:08:22,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:22,174.174 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:08:22,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:08:22,341.341 INFO    ] No camera update needed
[2026-10-25 21:08:22,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:08:22,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:08:22,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:08:22,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:08:24,394.394 INFO    ] ================================================
[2026-10-25 21:08:24,409.409 INFO    ] Launching Daemon at Sun Oct 25 21:08:24 IST 2026
[2026-10-25 21:08:24,420.420 INFO    ] ================================================
[2026-10-25 21:08:24,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:08:24
[2026-10-25 21:08:25,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:08:25,835.835 INFO    ] Initializing speech engine...
[2026-10-25 21:08:25,845.845 INFO    ] 2026-10-25 21:08:25
[2026-10-25 21:08:26,089.089 INFO    ] 2026-10-25 21:08:26
[2026-10-25 21:08:26,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:08:26,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:08:26,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:08:26,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:08:26,554.554 INFO    ] time= 25/10/2026 21:08:26
[2026-10-25 21:08:26,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:08:26,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:08:26,708.708 INFO    ] No existing commands found in stream
[2026-10-25 21:08:31,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:08:31,724.724 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 21:08:35,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:08:35,918.918 INFO    ] Checking for system updates...
[2026-10-25 21:08:35,958.958 INFO    ] 200
[2026-10-25 21:08:35,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:36,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:08:36,016.016 INFO    ] No update needed
[2026-10-25 21:08:36,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 21:08:36,053.053 INFO    ] 200
[2026-10-25 21:08:36,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:36,096.096 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:08:36,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:08:36,149.149 INFO    ] No camera update needed
[2026-10-25 21:08:36,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:08:36,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:08:36,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:08:36,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:08:38,204.204 INFO    ] ================================================
[2026-10-25 21:08:38,219.219 INFO    ] Launching Daemon at Sun Oct 25 21:08:38 IST 2026
[2026-10-25 21:08:38,231.231 INFO    ] ================================================
[2026-10-25 21:08:38,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:08:38
[2026-10-25 21:08:39,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:08:39,746.746 INFO    ] Initializing speech engine...
[2026-10-25 21:08:39,755.755 INFO    ] 2026-10-25 21:08:39
[2026-10-25 21:08:40,039.039 INFO    ] 2026-10-25 21:08:40
[2026-10-25 21:08:40,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:08:40,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:08:40,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:08:40,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:08:40,539.539 INFO    ] time= 25/10/2026 21:08:40
[2026-10-25 21:08:40,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:08:40,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:08:40,715.715 INFO    ] No existing commands found in stream
[2026-10-25 21:08:45,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:08:45,746.746 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 21:08:49,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:08:49,361.361 INFO    ] Checking for system updates...
[2026-10-25 21:08:49,436.436 INFO    ] 200
[2026-10-25 21:08:49,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:49,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:08:49,504.504 INFO    ] No update needed
[2026-10-25 21:08:49,506.506 INFO    ] Checking for camera pi updates...
[2026-10-25 21:08:49,539.539 INFO    ] 200
[2026-10-25 21:08:49,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:08:49,583.583 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:08:49,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:08:49,641.641 INFO    ] No camera update needed
[2026-10-25 21:08:49,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:08:49,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:08:49,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:08:49,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:08:51,696.696 INFO    ] ================================================
[2026-10-25 21:08:51,711.711 INFO    ] Launching Daemon at Sun Oct 25 21:08:51 IST 2026
[2026-10-25 21:08:51,722.722 INFO    ] ================================================
[2026-10-25 21:08:52,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:08:52
[2026-10-25 21:08:53,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:08:53,325.325 INFO    ] Initializing speech engine...
[2026-10-25 21:08:53,333.333 INFO    ] 2026-10-25 21:08:53
[2026-10-25 21:08:53,624.624 INFO    ] 2026-10-25 21:08:53
[2026-10-25 21:08:53,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:08:53,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:08:53,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:08:54,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:08:54,157.157 INFO    ] time= 25/10/2026 21:08:54
[2026-10-25 21:08:54,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:08:54,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:08:54,310.310 INFO    ] No existing commands found in stream
[2026-10-25 21:08:59,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:08:59,327.327 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 21:09:03,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:09:03,432.432 INFO    ] Checking for system updates...
[2026-10-25 21:09:03,468.468 INFO    ] 200
[2026-10-25 21:09:03,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:03,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:09:03,531.531 INFO    ] No update needed
[2026-10-25 21:09:03,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 21:09:03,569.569 INFO    ] 200
[2026-10-25 21:09:03,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:03,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:09:03,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:09:03,673.673 INFO    ] No camera update needed
[2026-10-25 21:09:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:09:03,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:09:03,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:09:03,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:09:05,727.727 INFO    ] ================================================
[2026-10-25 21:09:05,742.742 INFO    ] Launching Daemon at Sun Oct 25 21:09:05 IST 2026
[2026-10-25 21:09:05,753.753 INFO    ] ================================================
[2026-10-25 21:09:06,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:09:06
[2026-10-25 21:09:06,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:09:07,217.217 INFO    ] Initializing speech engine...
[2026-10-25 21:09:07,222.222 INFO    ] 2026-10-25 21:09:07
[2026-10-25 21:09:07,484.484 INFO    ] 2026-10-25 21:09:07
[2026-10-25 21:09:07,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:09:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:09:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:09:07,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:09:07,942.942 INFO    ] time= 25/10/2026 21:09:07
[2026-10-25 21:09:07,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:09:08,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:09:08,119.119 INFO    ] No existing commands found in stream
[2026-10-25 21:09:13,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:09:13,158.158 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 21:09:14,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:09:14,478.478 INFO    ] Checking for system updates...
[2026-10-25 21:09:14,517.517 INFO    ] 200
[2026-10-25 21:09:14,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:14,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:14,575.575 INFO    ] No update needed
[2026-10-25 21:09:14,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 21:09:14,619.619 INFO    ] 200
[2026-10-25 21:09:14,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:14,666.666 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:09:14,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:14,714.714 INFO    ] No camera update needed
[2026-10-25 21:09:14,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:09:14,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:09:14,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:09:14,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:09:16,771.771 INFO    ] ================================================
[2026-10-25 21:09:16,786.786 INFO    ] Launching Daemon at Sun Oct 25 21:09:16 IST 2026
[2026-10-25 21:09:16,797.797 INFO    ] ================================================
[2026-10-25 21:09:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:09:17
[2026-10-25 21:09:17,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:09:18,263.263 INFO    ] Initializing speech engine...
[2026-10-25 21:09:18,268.268 INFO    ] 2026-10-25 21:09:18
[2026-10-25 21:09:18,553.553 INFO    ] 2026-10-25 21:09:18
[2026-10-25 21:09:18,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:09:19,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:09:19,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:09:20,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:09:20,221.221 INFO    ] time= 25/10/2026 21:09:20
[2026-10-25 21:09:20,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:09:20,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:09:20,333.333 INFO    ] No existing commands found in stream
[2026-10-25 21:09:25,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:09:25,347.347 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 21:09:29,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:09:29,656.656 INFO    ] Checking for system updates...
[2026-10-25 21:09:29,692.692 INFO    ] 200
[2026-10-25 21:09:29,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:29,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:29,786.786 INFO    ] No update needed
[2026-10-25 21:09:29,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 21:09:29,821.821 INFO    ] 200
[2026-10-25 21:09:29,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:29,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:09:29,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:29,926.926 INFO    ] No camera update needed
[2026-10-25 21:09:29,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:09:29,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:09:29,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:09:29,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:09:31,982.982 INFO    ] ================================================
[2026-10-25 21:09:32,998.998 INFO    ] Launching Daemon at Sun Oct 25 21:09:31 IST 2026
[2026-10-25 21:09:32,009.009 INFO    ] ================================================
[2026-10-25 21:09:32,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:09:32
[2026-10-25 21:09:33,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:09:33,531.531 INFO    ] Initializing speech engine...
[2026-10-25 21:09:33,553.553 INFO    ] 2026-10-25 21:09:33
[2026-10-25 21:09:33,809.809 INFO    ] 2026-10-25 21:09:33
[2026-10-25 21:09:33,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:09:34,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:09:34,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:09:34,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:09:34,281.281 INFO    ] time= 25/10/2026 21:09:34
[2026-10-25 21:09:34,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:09:34,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:09:34,469.469 INFO    ] No existing commands found in stream
[2026-10-25 21:09:39,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:09:39,503.503 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 21:09:42,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:09:42,461.461 INFO    ] Checking for system updates...
[2026-10-25 21:09:42,499.499 INFO    ] 200
[2026-10-25 21:09:42,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:42,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:09:42,561.561 INFO    ] No update needed
[2026-10-25 21:09:42,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 21:09:42,602.602 INFO    ] 200
[2026-10-25 21:09:42,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:42,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:09:42,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:09:42,714.714 INFO    ] No camera update needed
[2026-10-25 21:09:42,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:09:42,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:09:42,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:09:42,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:09:44,774.774 INFO    ] ================================================
[2026-10-25 21:09:44,790.790 INFO    ] Launching Daemon at Sun Oct 25 21:09:44 IST 2026
[2026-10-25 21:09:44,802.802 INFO    ] ================================================
[2026-10-25 21:09:45,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:09:45
[2026-10-25 21:09:46,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:09:46,336.336 INFO    ] Initializing speech engine...
[2026-10-25 21:09:46,343.343 INFO    ] 2026-10-25 21:09:46
[2026-10-25 21:09:46,602.602 INFO    ] 2026-10-25 21:09:46
[2026-10-25 21:09:46,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:09:46,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:09:46,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:09:50,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:09:50,143.143 INFO    ] time= 25/10/2026 21:09:50
[2026-10-25 21:09:50,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:09:50,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:09:50,205.205 INFO    ] No existing commands found in stream
[2026-10-25 21:09:55,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:09:55,217.217 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 21:09:59,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:09:59,431.431 INFO    ] Checking for system updates...
[2026-10-25 21:09:59,468.468 INFO    ] 200
[2026-10-25 21:09:59,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:59,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:59,535.535 INFO    ] No update needed
[2026-10-25 21:09:59,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 21:09:59,576.576 INFO    ] 200
[2026-10-25 21:09:59,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:09:59,621.621 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:09:59,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:09:59,686.686 INFO    ] No camera update needed
[2026-10-25 21:09:59,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:09:59,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:09:59,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:09:59,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:10:01,785.785 INFO    ] ================================================
[2026-10-25 21:10:01,856.856 INFO    ] Launching Daemon at Sun Oct 25 21:10:01 IST 2026
[2026-10-25 21:10:01,904.904 INFO    ] ================================================
[2026-10-25 21:10:02,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:10:02
[2026-10-25 21:10:03,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:10:03,568.568 INFO    ] Initializing speech engine...
[2026-10-25 21:10:03,574.574 INFO    ] 2026-10-25 21:10:03
[2026-10-25 21:10:03,832.832 INFO    ] 2026-10-25 21:10:03
[2026-10-25 21:10:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:10:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:10:04,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:10:04,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:10:04,302.302 INFO    ] time= 25/10/2026 21:10:04
[2026-10-25 21:10:04,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:10:04,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:10:04,454.454 INFO    ] No existing commands found in stream
[2026-10-25 21:10:09,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:10:09,467.467 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 21:10:10,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:10:10,222.222 INFO    ] Checking for system updates...
[2026-10-25 21:10:10,258.258 INFO    ] 200
[2026-10-25 21:10:10,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:10,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:10,316.316 INFO    ] No update needed
[2026-10-25 21:10:10,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 21:10:10,357.357 INFO    ] 200
[2026-10-25 21:10:10,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:10,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:10:10,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:10,450.450 INFO    ] No camera update needed
[2026-10-25 21:10:10,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:10:10,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:10:10,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:10:10,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:10:12,506.506 INFO    ] ================================================
[2026-10-25 21:10:12,521.521 INFO    ] Launching Daemon at Sun Oct 25 21:10:12 IST 2026
[2026-10-25 21:10:12,533.533 INFO    ] ================================================
[2026-10-25 21:10:13,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:10:13
[2026-10-25 21:10:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:10:14,137.137 INFO    ] Initializing speech engine...
[2026-10-25 21:10:14,143.143 INFO    ] 2026-10-25 21:10:14
[2026-10-25 21:10:14,403.403 INFO    ] 2026-10-25 21:10:14
[2026-10-25 21:10:14,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:10:14,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:10:14,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:10:14,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:10:14,866.866 INFO    ] time= 25/10/2026 21:10:14
[2026-10-25 21:10:14,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:10:14,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:10:15,009.009 INFO    ] No existing commands found in stream
[2026-10-25 21:10:20,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:10:20,024.024 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-25 21:10:21,645.645 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:10:21,648.648 INFO    ] Checking for system updates...
[2026-10-25 21:10:21,687.687 INFO    ] 200
[2026-10-25 21:10:21,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:21,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:21,751.751 INFO    ] No update needed
[2026-10-25 21:10:21,754.754 INFO    ] Checking for camera pi updates...
[2026-10-25 21:10:21,788.788 INFO    ] 200
[2026-10-25 21:10:21,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:21,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:10:21,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:21,882.882 INFO    ] No camera update needed
[2026-10-25 21:10:21,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:10:21,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:10:21,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:10:21,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:10:23,938.938 INFO    ] ================================================
[2026-10-25 21:10:23,954.954 INFO    ] Launching Daemon at Sun Oct 25 21:10:23 IST 2026
[2026-10-25 21:10:23,965.965 INFO    ] ================================================
[2026-10-25 21:10:24,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:10:24
[2026-10-25 21:10:25,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:10:25,404.404 INFO    ] Initializing speech engine...
[2026-10-25 21:10:25,410.410 INFO    ] 2026-10-25 21:10:25
[2026-10-25 21:10:25,703.703 INFO    ] 2026-10-25 21:10:25
[2026-10-25 21:10:25,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:10:25,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:10:25,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:10:26,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:10:26,119.119 INFO    ] time= 25/10/2026 21:10:26
[2026-10-25 21:10:26,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:10:26,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:10:26,205.205 INFO    ] No existing commands found in stream
[2026-10-25 21:10:31,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:10:31,243.243 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 21:10:35,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:10:35,306.306 INFO    ] Checking for system updates...
[2026-10-25 21:10:35,342.342 INFO    ] 200
[2026-10-25 21:10:35,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:35,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:35,400.400 INFO    ] No update needed
[2026-10-25 21:10:35,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 21:10:35,436.436 INFO    ] 200
[2026-10-25 21:10:35,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:35,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:10:35,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:35,534.534 INFO    ] No camera update needed
[2026-10-25 21:10:35,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:10:35,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:10:35,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:10:35,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:10:37,588.588 INFO    ] ================================================
[2026-10-25 21:10:37,605.605 INFO    ] Launching Daemon at Sun Oct 25 21:10:37 IST 2026
[2026-10-25 21:10:37,616.616 INFO    ] ================================================
[2026-10-25 21:10:38,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:10:38
[2026-10-25 21:10:38,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:10:39,219.219 INFO    ] Initializing speech engine...
[2026-10-25 21:10:39,225.225 INFO    ] 2026-10-25 21:10:39
[2026-10-25 21:10:39,482.482 INFO    ] 2026-10-25 21:10:39
[2026-10-25 21:10:39,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:10:39,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:10:39,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:10:39,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:10:39,963.963 INFO    ] time= 25/10/2026 21:10:39
[2026-10-25 21:10:40,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:10:40,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:10:40,106.106 INFO    ] No existing commands found in stream
[2026-10-25 21:10:45,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:10:45,120.120 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 21:10:52,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:10:52,130.130 INFO    ] Checking for system updates...
[2026-10-25 21:10:52,167.167 INFO    ] 200
[2026-10-25 21:10:52,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:52,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:52,226.226 INFO    ] No update needed
[2026-10-25 21:10:52,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 21:10:52,263.263 INFO    ] 200
[2026-10-25 21:10:52,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:10:52,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:10:52,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:10:52,368.368 INFO    ] No camera update needed
[2026-10-25 21:10:52,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:10:52,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:10:52,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:10:52,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:10:54,423.423 INFO    ] ================================================
[2026-10-25 21:10:54,440.440 INFO    ] Launching Daemon at Sun Oct 25 21:10:54 IST 2026
[2026-10-25 21:10:54,451.451 INFO    ] ================================================
[2026-10-25 21:10:55,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:10:55
[2026-10-25 21:10:55,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:10:55,897.897 INFO    ] Initializing speech engine...
[2026-10-25 21:10:55,921.921 INFO    ] 2026-10-25 21:10:55
[2026-10-25 21:10:56,194.194 INFO    ] 2026-10-25 21:10:56
[2026-10-25 21:10:56,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:10:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:10:56,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:10:56,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:10:56,605.605 INFO    ] time= 25/10/2026 21:10:56
[2026-10-25 21:10:56,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:10:56,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:10:56,767.767 INFO    ] No existing commands found in stream
[2026-10-25 21:11:01,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:11:01,789.789 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 21:11:03,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:11:03,242.242 INFO    ] Checking for system updates...
[2026-10-25 21:11:03,282.282 INFO    ] 200
[2026-10-25 21:11:03,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:03,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:11:03,356.356 INFO    ] No update needed
[2026-10-25 21:11:03,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 21:11:03,392.392 INFO    ] 200
[2026-10-25 21:11:03,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:03,437.437 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:11:03,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:11:03,481.481 INFO    ] No camera update needed
[2026-10-25 21:11:03,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:11:03,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:11:03,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:11:03,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:11:05,535.535 INFO    ] ================================================
[2026-10-25 21:11:05,550.550 INFO    ] Launching Daemon at Sun Oct 25 21:11:05 IST 2026
[2026-10-25 21:11:05,562.562 INFO    ] ================================================
[2026-10-25 21:11:06,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:11:06
[2026-10-25 21:11:06,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:11:07,178.178 INFO    ] Initializing speech engine...
[2026-10-25 21:11:07,190.190 INFO    ] 2026-10-25 21:11:07
[2026-10-25 21:11:07,466.466 INFO    ] 2026-10-25 21:11:07
[2026-10-25 21:11:07,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:11:07,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:11:07,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:11:07,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:11:07,903.903 INFO    ] time= 25/10/2026 21:11:07
[2026-10-25 21:11:07,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:11:08,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:11:08,107.107 INFO    ] No existing commands found in stream
[2026-10-25 21:11:13,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:11:13,141.141 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 21:11:13,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:11:13,771.771 INFO    ] Checking for system updates...
[2026-10-25 21:11:13,808.808 INFO    ] 200
[2026-10-25 21:11:13,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:13,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:11:13,868.868 INFO    ] No update needed
[2026-10-25 21:11:13,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 21:11:13,905.905 INFO    ] 200
[2026-10-25 21:11:13,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:13,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:11:14,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:11:14,009.009 INFO    ] No camera update needed
[2026-10-25 21:11:14,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:11:14,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:11:14,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:11:14,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:11:16,064.064 INFO    ] ================================================
[2026-10-25 21:11:16,079.079 INFO    ] Launching Daemon at Sun Oct 25 21:11:16 IST 2026
[2026-10-25 21:11:16,091.091 INFO    ] ================================================
[2026-10-25 21:11:16,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:11:16
[2026-10-25 21:11:17,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:11:17,676.676 INFO    ] Initializing speech engine...
[2026-10-25 21:11:17,682.682 INFO    ] 2026-10-25 21:11:17
[2026-10-25 21:11:17,998.998 INFO    ] 2026-10-25 21:11:17
[2026-10-25 21:11:18,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:11:18,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:11:18,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:11:20,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:11:20,650.650 INFO    ] time= 25/10/2026 21:11:20
[2026-10-25 21:11:20,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:11:20,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:11:20,829.829 INFO    ] No existing commands found in stream
[2026-10-25 21:11:25,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:11:25,849.849 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 21:11:27,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:11:27,266.266 INFO    ] Checking for system updates...
[2026-10-25 21:11:27,303.303 INFO    ] 200
[2026-10-25 21:11:27,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:27,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:27,363.363 INFO    ] No update needed
[2026-10-25 21:11:27,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 21:11:27,403.403 INFO    ] 200
[2026-10-25 21:11:27,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:27,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:11:27,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:27,496.496 INFO    ] No camera update needed
[2026-10-25 21:11:27,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:11:27,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:11:27,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:11:27,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:11:29,551.551 INFO    ] ================================================
[2026-10-25 21:11:29,566.566 INFO    ] Launching Daemon at Sun Oct 25 21:11:29 IST 2026
[2026-10-25 21:11:29,576.576 INFO    ] ================================================
[2026-10-25 21:11:30,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:11:30
[2026-10-25 21:11:30,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:11:31,029.029 INFO    ] Initializing speech engine...
[2026-10-25 21:11:31,039.039 INFO    ] 2026-10-25 21:11:31
[2026-10-25 21:11:31,299.299 INFO    ] 2026-10-25 21:11:31
[2026-10-25 21:11:31,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:11:31,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:11:31,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:11:31,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:11:31,774.774 INFO    ] time= 25/10/2026 21:11:31
[2026-10-25 21:11:31,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:11:31,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:11:31,925.925 INFO    ] No existing commands found in stream
[2026-10-25 21:11:36,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:11:36,965.965 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 21:11:40,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:11:40,484.484 INFO    ] Checking for system updates...
[2026-10-25 21:11:40,524.524 INFO    ] 200
[2026-10-25 21:11:40,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:40,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:40,588.588 INFO    ] No update needed
[2026-10-25 21:11:40,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 21:11:40,629.629 INFO    ] 200
[2026-10-25 21:11:40,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:40,673.673 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:11:40,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:40,731.731 INFO    ] No camera update needed
[2026-10-25 21:11:40,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:11:40,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:11:40,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:11:40,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:11:42,787.787 INFO    ] ================================================
[2026-10-25 21:11:42,802.802 INFO    ] Launching Daemon at Sun Oct 25 21:11:42 IST 2026
[2026-10-25 21:11:42,813.813 INFO    ] ================================================
[2026-10-25 21:11:43,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:11:43
[2026-10-25 21:11:44,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:11:44,423.423 INFO    ] Initializing speech engine...
[2026-10-25 21:11:44,438.438 INFO    ] 2026-10-25 21:11:44
[2026-10-25 21:11:44,718.718 INFO    ] 2026-10-25 21:11:44
[2026-10-25 21:11:44,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:11:44,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:11:44,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:11:45,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:11:45,252.252 INFO    ] time= 25/10/2026 21:11:45
[2026-10-25 21:11:45,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:11:45,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:11:45,393.393 INFO    ] No existing commands found in stream
[2026-10-25 21:11:50,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:11:50,419.419 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 21:11:53,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:11:53,237.237 INFO    ] Checking for system updates...
[2026-10-25 21:11:53,274.274 INFO    ] 200
[2026-10-25 21:11:53,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:53,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:53,334.334 INFO    ] No update needed
[2026-10-25 21:11:53,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 21:11:53,376.376 INFO    ] 200
[2026-10-25 21:11:53,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:11:53,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:11:53,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:11:53,484.484 INFO    ] No camera update needed
[2026-10-25 21:11:53,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:11:53,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:11:53,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:11:53,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:11:55,541.541 INFO    ] ================================================
[2026-10-25 21:11:55,557.557 INFO    ] Launching Daemon at Sun Oct 25 21:11:55 IST 2026
[2026-10-25 21:11:55,568.568 INFO    ] ================================================
[2026-10-25 21:11:56,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:11:56
[2026-10-25 21:11:56,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:11:57,045.045 INFO    ] Initializing speech engine...
[2026-10-25 21:11:57,053.053 INFO    ] 2026-10-25 21:11:57
[2026-10-25 21:11:57,313.313 INFO    ] 2026-10-25 21:11:57
[2026-10-25 21:11:57,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:11:57,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:11:57,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:11:57,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:11:57,781.781 INFO    ] time= 25/10/2026 21:11:57
[2026-10-25 21:11:57,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:11:57,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:11:57,922.922 INFO    ] No existing commands found in stream
[2026-10-25 21:12:02,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:12:02,954.954 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 21:12:04,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:12:04,399.399 INFO    ] Checking for system updates...
[2026-10-25 21:12:04,435.435 INFO    ] 200
[2026-10-25 21:12:04,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:04,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:04,502.502 INFO    ] No update needed
[2026-10-25 21:12:04,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 21:12:04,552.552 INFO    ] 200
[2026-10-25 21:12:04,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:04,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:12:04,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:04,663.663 INFO    ] No camera update needed
[2026-10-25 21:12:04,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:12:04,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:12:04,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:12:04,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:12:06,719.719 INFO    ] ================================================
[2026-10-25 21:12:06,734.734 INFO    ] Launching Daemon at Sun Oct 25 21:12:06 IST 2026
[2026-10-25 21:12:06,746.746 INFO    ] ================================================
[2026-10-25 21:12:07,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:12:07
[2026-10-25 21:12:07,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:12:08,212.212 INFO    ] Initializing speech engine...
[2026-10-25 21:12:08,220.220 INFO    ] 2026-10-25 21:12:08
[2026-10-25 21:12:08,483.483 INFO    ] 2026-10-25 21:12:08
[2026-10-25 21:12:08,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:12:08,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:12:08,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:12:08,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:12:08,827.827 INFO    ] time= 25/10/2026 21:12:08
[2026-10-25 21:12:08,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:12:08,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:12:08,983.983 INFO    ] No existing commands found in stream
[2026-10-25 21:12:13,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:12:13,997.997 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 21:12:16,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:12:16,467.467 INFO    ] Checking for system updates...
[2026-10-25 21:12:16,507.507 INFO    ] 200
[2026-10-25 21:12:16,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:16,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:16,576.576 INFO    ] No update needed
[2026-10-25 21:12:16,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 21:12:16,618.618 INFO    ] 200
[2026-10-25 21:12:16,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:16,663.663 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:12:16,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:16,717.717 INFO    ] No camera update needed
[2026-10-25 21:12:16,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:12:16,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:12:16,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:12:16,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:12:18,775.775 INFO    ] ================================================
[2026-10-25 21:12:18,791.791 INFO    ] Launching Daemon at Sun Oct 25 21:12:18 IST 2026
[2026-10-25 21:12:18,803.803 INFO    ] ================================================
[2026-10-25 21:12:19,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:12:19
[2026-10-25 21:12:20,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:12:20,302.302 INFO    ] Initializing speech engine...
[2026-10-25 21:12:20,307.307 INFO    ] 2026-10-25 21:12:20
[2026-10-25 21:12:20,596.596 INFO    ] 2026-10-25 21:12:20
[2026-10-25 21:12:20,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:12:23,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:12:23,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:12:23,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:12:23,202.202 INFO    ] time= 25/10/2026 21:12:23
[2026-10-25 21:12:23,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:12:23,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:12:23,290.290 INFO    ] No existing commands found in stream
[2026-10-25 21:12:28,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:12:28,304.304 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 21:12:32,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:12:32,367.367 INFO    ] Checking for system updates...
[2026-10-25 21:12:32,407.407 INFO    ] 200
[2026-10-25 21:12:32,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:32,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:12:32,474.474 INFO    ] No update needed
[2026-10-25 21:12:32,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 21:12:32,516.516 INFO    ] 200
[2026-10-25 21:12:32,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:32,565.565 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:12:32,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:12:32,737.737 INFO    ] No camera update needed
[2026-10-25 21:12:32,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:12:32,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:12:32,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:12:32,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:12:34,812.812 INFO    ] ================================================
[2026-10-25 21:12:34,828.828 INFO    ] Launching Daemon at Sun Oct 25 21:12:34 IST 2026
[2026-10-25 21:12:34,840.840 INFO    ] ================================================
[2026-10-25 21:12:35,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:12:35
[2026-10-25 21:12:36,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:12:36,300.300 INFO    ] Initializing speech engine...
[2026-10-25 21:12:36,311.311 INFO    ] 2026-10-25 21:12:36
[2026-10-25 21:12:36,581.581 INFO    ] 2026-10-25 21:12:36
[2026-10-25 21:12:36,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:12:36,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:12:36,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:12:37,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:12:37,076.076 INFO    ] time= 25/10/2026 21:12:37
[2026-10-25 21:12:37,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:12:37,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:12:37,221.221 INFO    ] No existing commands found in stream
[2026-10-25 21:12:42,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:12:42,237.237 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 21:12:45,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:12:45,892.892 INFO    ] Checking for system updates...
[2026-10-25 21:12:45,935.935 INFO    ] 200
[2026-10-25 21:12:45,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:45,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:45,996.996 INFO    ] No update needed
[2026-10-25 21:12:45,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 21:12:46,033.033 INFO    ] 200
[2026-10-25 21:12:46,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:12:46,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:12:46,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:12:46,150.150 INFO    ] No camera update needed
[2026-10-25 21:12:46,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:12:46,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:12:46,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:12:46,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:12:48,206.206 INFO    ] ================================================
[2026-10-25 21:12:48,223.223 INFO    ] Launching Daemon at Sun Oct 25 21:12:48 IST 2026
[2026-10-25 21:12:48,234.234 INFO    ] ================================================
[2026-10-25 21:12:48,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:12:48
[2026-10-25 21:12:49,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:12:49,700.700 INFO    ] Initializing speech engine...
[2026-10-25 21:12:49,708.708 INFO    ] 2026-10-25 21:12:49
[2026-10-25 21:12:49,993.993 INFO    ] 2026-10-25 21:12:49
[2026-10-25 21:12:50,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:12:53,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:12:53,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:12:54,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:12:54,050.050 INFO    ] time= 25/10/2026 21:12:54
[2026-10-25 21:12:54,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:12:54,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:12:54,112.112 INFO    ] No existing commands found in stream
[2026-10-25 21:12:59,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:12:59,125.125 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 21:13:01,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:13:01,172.172 INFO    ] Checking for system updates...
[2026-10-25 21:13:01,215.215 INFO    ] 200
[2026-10-25 21:13:01,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:01,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:01,290.290 INFO    ] No update needed
[2026-10-25 21:13:01,293.293 INFO    ] Checking for camera pi updates...
[2026-10-25 21:13:01,329.329 INFO    ] 200
[2026-10-25 21:13:01,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:01,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:13:01,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:01,417.417 INFO    ] No camera update needed
[2026-10-25 21:13:01,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:13:01,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:13:01,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:13:01,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:13:03,480.480 INFO    ] ================================================
[2026-10-25 21:13:03,496.496 INFO    ] Launching Daemon at Sun Oct 25 21:13:03 IST 2026
[2026-10-25 21:13:03,508.508 INFO    ] ================================================
[2026-10-25 21:13:04,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:13:04
[2026-10-25 21:13:04,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:13:04,936.936 INFO    ] Initializing speech engine...
[2026-10-25 21:13:04,944.944 INFO    ] 2026-10-25 21:13:04
[2026-10-25 21:13:05,227.227 INFO    ] 2026-10-25 21:13:05
[2026-10-25 21:13:05,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:13:05,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:13:05,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:13:05,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:13:05,682.682 INFO    ] time= 25/10/2026 21:13:05
[2026-10-25 21:13:05,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:13:05,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:13:05,839.839 INFO    ] No existing commands found in stream
[2026-10-25 21:13:10,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:13:10,855.855 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 21:13:12,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:13:12,550.550 INFO    ] Checking for system updates...
[2026-10-25 21:13:12,588.588 INFO    ] 200
[2026-10-25 21:13:12,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:12,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:12,652.652 INFO    ] No update needed
[2026-10-25 21:13:12,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 21:13:12,691.691 INFO    ] 200
[2026-10-25 21:13:12,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:12,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:13:12,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:12,794.794 INFO    ] No camera update needed
[2026-10-25 21:13:12,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:13:12,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:13:12,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:13:12,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:13:14,858.858 INFO    ] ================================================
[2026-10-25 21:13:14,875.875 INFO    ] Launching Daemon at Sun Oct 25 21:13:14 IST 2026
[2026-10-25 21:13:14,902.902 INFO    ] ================================================
[2026-10-25 21:13:15,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:13:15
[2026-10-25 21:13:16,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:13:16,343.343 INFO    ] Initializing speech engine...
[2026-10-25 21:13:16,352.352 INFO    ] 2026-10-25 21:13:16
[2026-10-25 21:13:16,660.660 INFO    ] 2026-10-25 21:13:16
[2026-10-25 21:13:16,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:13:16,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:13:16,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:13:17,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:13:17,177.177 INFO    ] time= 25/10/2026 21:13:17
[2026-10-25 21:13:17,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:13:17,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:13:17,355.355 INFO    ] No existing commands found in stream
[2026-10-25 21:13:22,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:13:22,371.371 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 21:13:26,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:13:26,304.304 INFO    ] Checking for system updates...
[2026-10-25 21:13:26,341.341 INFO    ] 200
[2026-10-25 21:13:26,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:26,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:13:26,401.401 INFO    ] No update needed
[2026-10-25 21:13:26,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 21:13:26,443.443 INFO    ] 200
[2026-10-25 21:13:26,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:26,487.487 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:13:26,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:13:26,540.540 INFO    ] No camera update needed
[2026-10-25 21:13:26,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:13:26,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:13:26,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:13:26,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:13:28,598.598 INFO    ] ================================================
[2026-10-25 21:13:28,614.614 INFO    ] Launching Daemon at Sun Oct 25 21:13:28 IST 2026
[2026-10-25 21:13:28,625.625 INFO    ] ================================================
[2026-10-25 21:13:29,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:13:29
[2026-10-25 21:13:30,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:13:30,259.259 INFO    ] Initializing speech engine...
[2026-10-25 21:13:30,282.282 INFO    ] 2026-10-25 21:13:30
[2026-10-25 21:13:30,569.569 INFO    ] 2026-10-25 21:13:30
[2026-10-25 21:13:30,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:13:30,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:13:30,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:13:30,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:13:31,022.022 INFO    ] time= 25/10/2026 21:13:30
[2026-10-25 21:13:31,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:13:31,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:13:31,172.172 INFO    ] No existing commands found in stream
[2026-10-25 21:13:36,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:13:36,186.186 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 21:13:39,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:13:39,317.317 INFO    ] Checking for system updates...
[2026-10-25 21:13:39,354.354 INFO    ] 200
[2026-10-25 21:13:39,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:39,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:39,420.420 INFO    ] No update needed
[2026-10-25 21:13:39,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 21:13:39,458.458 INFO    ] 200
[2026-10-25 21:13:39,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:39,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:13:39,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:13:39,562.562 INFO    ] No camera update needed
[2026-10-25 21:13:39,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:13:39,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:13:39,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:13:39,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:13:41,618.618 INFO    ] ================================================
[2026-10-25 21:13:41,633.633 INFO    ] Launching Daemon at Sun Oct 25 21:13:41 IST 2026
[2026-10-25 21:13:41,651.651 INFO    ] ================================================
[2026-10-25 21:13:42,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:13:42
[2026-10-25 21:13:42,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:13:43,142.142 INFO    ] Initializing speech engine...
[2026-10-25 21:13:43,151.151 INFO    ] 2026-10-25 21:13:43
[2026-10-25 21:13:43,435.435 INFO    ] 2026-10-25 21:13:43
[2026-10-25 21:13:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:13:43,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:13:43,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:13:43,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:13:43,968.968 INFO    ] time= 25/10/2026 21:13:43
[2026-10-25 21:13:43,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:13:44,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:13:44,122.122 INFO    ] No existing commands found in stream
[2026-10-25 21:13:49,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:13:49,142.142 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 21:13:49,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:13:49,990.990 INFO    ] Checking for system updates...
[2026-10-25 21:13:50,029.029 INFO    ] 200
[2026-10-25 21:13:50,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:50,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:13:50,106.106 INFO    ] No update needed
[2026-10-25 21:13:50,109.109 INFO    ] Checking for camera pi updates...
[2026-10-25 21:13:50,144.144 INFO    ] 200
[2026-10-25 21:13:50,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:13:50,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:13:50,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:13:50,248.248 INFO    ] No camera update needed
[2026-10-25 21:13:50,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:13:50,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:13:50,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:13:50,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:13:52,305.305 INFO    ] ================================================
[2026-10-25 21:13:52,320.320 INFO    ] Launching Daemon at Sun Oct 25 21:13:52 IST 2026
[2026-10-25 21:13:52,331.331 INFO    ] ================================================
[2026-10-25 21:13:52,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:13:52
[2026-10-25 21:13:53,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:13:53,764.764 INFO    ] Initializing speech engine...
[2026-10-25 21:13:53,787.787 INFO    ] 2026-10-25 21:13:53
[2026-10-25 21:13:54,059.059 INFO    ] 2026-10-25 21:13:54
[2026-10-25 21:13:54,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:13:55,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:13:55,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:13:55,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:13:55,495.495 INFO    ] time= 25/10/2026 21:13:55
[2026-10-25 21:13:55,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:13:55,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:13:55,557.557 INFO    ] No existing commands found in stream
[2026-10-25 21:14:00,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:14:00,571.571 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 21:14:04,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:14:04,055.055 INFO    ] Checking for system updates...
[2026-10-25 21:14:04,092.092 INFO    ] 200
[2026-10-25 21:14:04,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:04,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:04,158.158 INFO    ] No update needed
[2026-10-25 21:14:04,160.160 INFO    ] Checking for camera pi updates...
[2026-10-25 21:14:04,196.196 INFO    ] 200
[2026-10-25 21:14:04,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:04,246.246 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:14:04,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:04,298.298 INFO    ] No camera update needed
[2026-10-25 21:14:04,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:14:04,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:14:04,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:14:04,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:14:06,357.357 INFO    ] ================================================
[2026-10-25 21:14:06,373.373 INFO    ] Launching Daemon at Sun Oct 25 21:14:06 IST 2026
[2026-10-25 21:14:06,385.385 INFO    ] ================================================
[2026-10-25 21:14:07,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:14:07
[2026-10-25 21:14:07,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:14:08,048.048 INFO    ] Initializing speech engine...
[2026-10-25 21:14:08,060.060 INFO    ] 2026-10-25 21:14:08
[2026-10-25 21:14:08,346.346 INFO    ] 2026-10-25 21:14:08
[2026-10-25 21:14:08,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:14:08,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:14:08,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:14:08,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:14:08,892.892 INFO    ] time= 25/10/2026 21:14:08
[2026-10-25 21:14:08,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:14:08,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:14:09,071.071 INFO    ] No existing commands found in stream
[2026-10-25 21:14:14,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:14:14,105.105 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 21:14:17,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:14:17,075.075 INFO    ] Checking for system updates...
[2026-10-25 21:14:17,116.116 INFO    ] 200
[2026-10-25 21:14:17,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:17,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:14:17,177.177 INFO    ] No update needed
[2026-10-25 21:14:17,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 21:14:17,216.216 INFO    ] 200
[2026-10-25 21:14:17,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:17,260.260 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:14:17,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:14:17,309.309 INFO    ] No camera update needed
[2026-10-25 21:14:17,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:14:17,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:14:17,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:14:17,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:14:19,368.368 INFO    ] ================================================
[2026-10-25 21:14:19,384.384 INFO    ] Launching Daemon at Sun Oct 25 21:14:19 IST 2026
[2026-10-25 21:14:19,395.395 INFO    ] ================================================
[2026-10-25 21:14:20,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:14:20
[2026-10-25 21:14:20,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:14:21,054.054 INFO    ] Initializing speech engine...
[2026-10-25 21:14:21,067.067 INFO    ] 2026-10-25 21:14:21
[2026-10-25 21:14:21,354.354 INFO    ] 2026-10-25 21:14:21
[2026-10-25 21:14:21,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:14:21,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:14:21,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:14:21,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:14:21,825.825 INFO    ] time= 25/10/2026 21:14:21
[2026-10-25 21:14:21,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:14:21,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:14:21,975.975 INFO    ] No existing commands found in stream
[2026-10-25 21:14:26,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:14:26,992.992 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-25 21:14:31,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:14:31,038.038 INFO    ] Checking for system updates...
[2026-10-25 21:14:31,077.077 INFO    ] 200
[2026-10-25 21:14:31,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:31,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:31,145.145 INFO    ] No update needed
[2026-10-25 21:14:31,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 21:14:31,197.197 INFO    ] 200
[2026-10-25 21:14:31,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:31,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:14:31,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:31,294.294 INFO    ] No camera update needed
[2026-10-25 21:14:31,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:14:31,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:14:31,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:14:31,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:14:33,359.359 INFO    ] ================================================
[2026-10-25 21:14:33,382.382 INFO    ] Launching Daemon at Sun Oct 25 21:14:33 IST 2026
[2026-10-25 21:14:33,393.393 INFO    ] ================================================
[2026-10-25 21:14:34,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:14:34
[2026-10-25 21:14:34,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:14:35,036.036 INFO    ] Initializing speech engine...
[2026-10-25 21:14:35,051.051 INFO    ] 2026-10-25 21:14:35
[2026-10-25 21:14:35,345.345 INFO    ] 2026-10-25 21:14:35
[2026-10-25 21:14:35,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:14:35,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:14:35,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:14:35,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:14:35,839.839 INFO    ] time= 25/10/2026 21:14:35
[2026-10-25 21:14:35,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:14:35,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:14:36,001.001 INFO    ] No existing commands found in stream
[2026-10-25 21:14:41,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:14:41,038.038 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-25 21:14:44,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:14:44,327.327 INFO    ] Checking for system updates...
[2026-10-25 21:14:44,366.366 INFO    ] 200
[2026-10-25 21:14:44,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:44,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:44,429.429 INFO    ] No update needed
[2026-10-25 21:14:44,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 21:14:44,469.469 INFO    ] 200
[2026-10-25 21:14:44,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:44,516.516 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:14:44,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:14:44,678.678 INFO    ] No camera update needed
[2026-10-25 21:14:44,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:14:44,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:14:44,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:14:44,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:14:46,743.743 INFO    ] ================================================
[2026-10-25 21:14:46,759.759 INFO    ] Launching Daemon at Sun Oct 25 21:14:46 IST 2026
[2026-10-25 21:14:46,770.770 INFO    ] ================================================
[2026-10-25 21:14:47,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:14:47
[2026-10-25 21:14:47,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:14:48,304.304 INFO    ] Initializing speech engine...
[2026-10-25 21:14:48,314.314 INFO    ] 2026-10-25 21:14:48
[2026-10-25 21:14:48,600.600 INFO    ] 2026-10-25 21:14:48
[2026-10-25 21:14:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:14:48,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:14:48,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:14:49,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:14:49,137.137 INFO    ] time= 25/10/2026 21:14:49
[2026-10-25 21:14:49,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:14:49,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:14:49,290.290 INFO    ] No existing commands found in stream
[2026-10-25 21:14:54,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:14:54,311.311 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-25 21:14:56,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:14:56,928.928 INFO    ] Checking for system updates...
[2026-10-25 21:14:56,967.967 INFO    ] 200
[2026-10-25 21:14:56,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:57,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:14:57,032.032 INFO    ] No update needed
[2026-10-25 21:14:57,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 21:14:57,072.072 INFO    ] 200
[2026-10-25 21:14:57,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:14:57,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:14:57,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:14:57,174.174 INFO    ] No camera update needed
[2026-10-25 21:14:57,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:14:57,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:14:57,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:14:57,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:14:59,236.236 INFO    ] ================================================
[2026-10-25 21:14:59,252.252 INFO    ] Launching Daemon at Sun Oct 25 21:14:59 IST 2026
[2026-10-25 21:14:59,264.264 INFO    ] ================================================
[2026-10-25 21:14:59,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:14:59
[2026-10-25 21:15:00,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:15:00,919.919 INFO    ] Initializing speech engine...
[2026-10-25 21:15:00,933.933 INFO    ] 2026-10-25 21:15:00
[2026-10-25 21:15:01,230.230 INFO    ] 2026-10-25 21:15:01
[2026-10-25 21:15:01,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:15:01,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:15:01,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:15:01,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:15:01,734.734 INFO    ] time= 25/10/2026 21:15:01
[2026-10-25 21:15:01,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:15:01,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:15:01,854.854 INFO    ] No existing commands found in stream
[2026-10-25 21:15:06,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:15:06,867.867 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 21:15:10,733.733 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:15:10,736.736 INFO    ] Checking for system updates...
[2026-10-25 21:15:10,776.776 INFO    ] 200
[2026-10-25 21:15:10,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:10,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:15:10,836.836 INFO    ] No update needed
[2026-10-25 21:15:10,838.838 INFO    ] Checking for camera pi updates...
[2026-10-25 21:15:10,873.873 INFO    ] 200
[2026-10-25 21:15:10,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:10,918.918 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:15:10,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:15:10,983.983 INFO    ] No camera update needed
[2026-10-25 21:15:10,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:15:10,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:15:10,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:15:10,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:15:13,040.040 INFO    ] ================================================
[2026-10-25 21:15:13,056.056 INFO    ] Launching Daemon at Sun Oct 25 21:15:13 IST 2026
[2026-10-25 21:15:13,067.067 INFO    ] ================================================
[2026-10-25 21:15:13,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:15:13
[2026-10-25 21:15:14,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:15:14,520.520 INFO    ] Initializing speech engine...
[2026-10-25 21:15:14,537.537 INFO    ] 2026-10-25 21:15:14
[2026-10-25 21:15:14,814.814 INFO    ] 2026-10-25 21:15:14
[2026-10-25 21:15:14,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:15:15,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:15:15,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:15:15,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:15:15,194.194 INFO    ] time= 25/10/2026 21:15:15
[2026-10-25 21:15:15,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:15:15,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:15:15,317.317 INFO    ] No existing commands found in stream
[2026-10-25 21:15:20,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:15:20,333.333 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-25 21:15:22,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:15:22,487.487 INFO    ] Checking for system updates...
[2026-10-25 21:15:22,524.524 INFO    ] 200
[2026-10-25 21:15:22,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:22,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:22,586.586 INFO    ] No update needed
[2026-10-25 21:15:22,588.588 INFO    ] Checking for camera pi updates...
[2026-10-25 21:15:22,623.623 INFO    ] 200
[2026-10-25 21:15:22,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:22,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:15:22,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:22,719.719 INFO    ] No camera update needed
[2026-10-25 21:15:22,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:15:22,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:15:22,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:15:22,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:15:24,778.778 INFO    ] ================================================
[2026-10-25 21:15:24,793.793 INFO    ] Launching Daemon at Sun Oct 25 21:15:24 IST 2026
[2026-10-25 21:15:24,804.804 INFO    ] ================================================
[2026-10-25 21:15:25,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:15:25
[2026-10-25 21:15:26,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:15:26,255.255 INFO    ] Initializing speech engine...
[2026-10-25 21:15:26,261.261 INFO    ] 2026-10-25 21:15:26
[2026-10-25 21:15:26,544.544 INFO    ] 2026-10-25 21:15:26
[2026-10-25 21:15:26,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:15:26,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:15:26,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:15:27,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:15:27,121.121 INFO    ] time= 25/10/2026 21:15:27
[2026-10-25 21:15:27,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:15:27,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:15:27,262.262 INFO    ] No existing commands found in stream
[2026-10-25 21:15:32,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:15:32,294.294 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 21:15:35,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:15:35,733.733 INFO    ] Checking for system updates...
[2026-10-25 21:15:35,771.771 INFO    ] 200
[2026-10-25 21:15:35,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:35,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:35,832.832 INFO    ] No update needed
[2026-10-25 21:15:35,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 21:15:35,869.869 INFO    ] 200
[2026-10-25 21:15:35,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:35,916.916 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:15:35,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:35,971.971 INFO    ] No camera update needed
[2026-10-25 21:15:35,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:15:35,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:15:35,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:15:35,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:15:38,028.028 INFO    ] ================================================
[2026-10-25 21:15:38,044.044 INFO    ] Launching Daemon at Sun Oct 25 21:15:38 IST 2026
[2026-10-25 21:15:38,055.055 INFO    ] ================================================
[2026-10-25 21:15:38,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:15:38
[2026-10-25 21:15:39,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:15:39,543.543 INFO    ] Initializing speech engine...
[2026-10-25 21:15:39,559.559 INFO    ] 2026-10-25 21:15:39
[2026-10-25 21:15:39,837.837 INFO    ] 2026-10-25 21:15:39
[2026-10-25 21:15:39,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:15:40,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:15:40,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:15:40,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:15:40,259.259 INFO    ] time= 25/10/2026 21:15:40
[2026-10-25 21:15:40,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:15:40,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:15:40,346.346 INFO    ] No existing commands found in stream
[2026-10-25 21:15:45,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:15:45,365.365 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 21:15:45,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:15:45,810.810 INFO    ] Checking for system updates...
[2026-10-25 21:15:45,847.847 INFO    ] 200
[2026-10-25 21:15:45,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:45,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:45,908.908 INFO    ] No update needed
[2026-10-25 21:15:45,910.910 INFO    ] Checking for camera pi updates...
[2026-10-25 21:15:45,946.946 INFO    ] 200
[2026-10-25 21:15:45,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:45,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:15:46,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:46,042.042 INFO    ] No camera update needed
[2026-10-25 21:15:46,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:15:46,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:15:46,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:15:46,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:15:48,100.100 INFO    ] ================================================
[2026-10-25 21:15:48,116.116 INFO    ] Launching Daemon at Sun Oct 25 21:15:48 IST 2026
[2026-10-25 21:15:48,127.127 INFO    ] ================================================
[2026-10-25 21:15:48,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:15:48
[2026-10-25 21:15:49,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:15:49,572.572 INFO    ] Initializing speech engine...
[2026-10-25 21:15:49,597.597 INFO    ] 2026-10-25 21:15:49
[2026-10-25 21:15:49,877.877 INFO    ] 2026-10-25 21:15:49
[2026-10-25 21:15:49,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:15:50,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:15:50,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:15:50,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:15:50,484.484 INFO    ] time= 25/10/2026 21:15:50
[2026-10-25 21:15:50,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:15:50,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:15:50,631.631 INFO    ] No existing commands found in stream
[2026-10-25 21:15:55,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:15:55,666.666 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-25 21:15:58,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:15:58,444.444 INFO    ] Checking for system updates...
[2026-10-25 21:15:58,486.486 INFO    ] 200
[2026-10-25 21:15:58,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:58,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:58,553.553 INFO    ] No update needed
[2026-10-25 21:15:58,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 21:15:58,593.593 INFO    ] 200
[2026-10-25 21:15:58,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:15:58,640.640 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:15:58,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:15:58,706.706 INFO    ] No camera update needed
[2026-10-25 21:15:58,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:15:58,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:15:58,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:15:58,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:16:00,767.767 INFO    ] ================================================
[2026-10-25 21:16:00,783.783 INFO    ] Launching Daemon at Sun Oct 25 21:16:00 IST 2026
[2026-10-25 21:16:00,801.801 INFO    ] ================================================
[2026-10-25 21:16:01,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:16:01
[2026-10-25 21:16:02,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:16:02,513.513 INFO    ] Initializing speech engine...
[2026-10-25 21:16:02,525.525 INFO    ] 2026-10-25 21:16:02
[2026-10-25 21:16:02,799.799 INFO    ] 2026-10-25 21:16:02
[2026-10-25 21:16:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:16:03,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:16:03,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:16:03,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:16:03,316.316 INFO    ] time= 25/10/2026 21:16:03
[2026-10-25 21:16:03,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:16:03,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:16:03,519.519 INFO    ] No existing commands found in stream
[2026-10-25 21:16:08,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:16:08,545.545 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 21:16:11,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:16:11,062.062 INFO    ] Checking for system updates...
[2026-10-25 21:16:11,100.100 INFO    ] 200
[2026-10-25 21:16:11,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:11,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:16:11,163.163 INFO    ] No update needed
[2026-10-25 21:16:11,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 21:16:11,200.200 INFO    ] 200
[2026-10-25 21:16:11,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:11,246.246 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:16:11,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:16:11,301.301 INFO    ] No camera update needed
[2026-10-25 21:16:11,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:16:11,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:16:11,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:16:11,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:16:13,359.359 INFO    ] ================================================
[2026-10-25 21:16:13,375.375 INFO    ] Launching Daemon at Sun Oct 25 21:16:13 IST 2026
[2026-10-25 21:16:13,386.386 INFO    ] ================================================
[2026-10-25 21:16:13,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:16:13
[2026-10-25 21:16:14,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:16:14,825.825 INFO    ] Initializing speech engine...
[2026-10-25 21:16:14,842.842 INFO    ] 2026-10-25 21:16:14
[2026-10-25 21:16:15,134.134 INFO    ] 2026-10-25 21:16:15
[2026-10-25 21:16:15,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:16:15,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:16:15,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:16:15,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:16:15,527.527 INFO    ] time= 25/10/2026 21:16:15
[2026-10-25 21:16:15,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:16:15,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:16:15,655.655 INFO    ] No existing commands found in stream
[2026-10-25 21:16:20,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:16:20,665.665 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 21:16:22,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:16:22,337.337 INFO    ] Checking for system updates...
[2026-10-25 21:16:22,376.376 INFO    ] 200
[2026-10-25 21:16:22,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:22,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:22,438.438 INFO    ] No update needed
[2026-10-25 21:16:22,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 21:16:22,484.484 INFO    ] 200
[2026-10-25 21:16:22,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:22,537.537 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:16:22,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:22,602.602 INFO    ] No camera update needed
[2026-10-25 21:16:22,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:16:22,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:16:22,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:16:22,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:16:24,668.668 INFO    ] ================================================
[2026-10-25 21:16:24,683.683 INFO    ] Launching Daemon at Sun Oct 25 21:16:24 IST 2026
[2026-10-25 21:16:24,694.694 INFO    ] ================================================
[2026-10-25 21:16:25,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:16:25
[2026-10-25 21:16:25,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:16:26,140.140 INFO    ] Initializing speech engine...
[2026-10-25 21:16:26,157.157 INFO    ] 2026-10-25 21:16:26
[2026-10-25 21:16:26,416.416 INFO    ] 2026-10-25 21:16:26
[2026-10-25 21:16:26,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:16:27,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:16:27,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:16:27,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:16:27,689.689 INFO    ] time= 25/10/2026 21:16:27
[2026-10-25 21:16:27,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:16:27,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:16:27,869.869 INFO    ] No existing commands found in stream
[2026-10-25 21:16:32,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:16:32,896.896 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-25 21:16:35,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:16:35,267.267 INFO    ] Checking for system updates...
[2026-10-25 21:16:35,307.307 INFO    ] 200
[2026-10-25 21:16:35,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:35,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:35,373.373 INFO    ] No update needed
[2026-10-25 21:16:35,376.376 INFO    ] Checking for camera pi updates...
[2026-10-25 21:16:35,414.414 INFO    ] 200
[2026-10-25 21:16:35,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:35,461.461 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:16:35,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:35,512.512 INFO    ] No camera update needed
[2026-10-25 21:16:35,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:16:35,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:16:35,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:16:35,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:16:37,573.573 INFO    ] ================================================
[2026-10-25 21:16:37,589.589 INFO    ] Launching Daemon at Sun Oct 25 21:16:37 IST 2026
[2026-10-25 21:16:37,601.601 INFO    ] ================================================
[2026-10-25 21:16:38,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:16:38
[2026-10-25 21:16:38,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:16:39,286.286 INFO    ] Initializing speech engine...
[2026-10-25 21:16:39,300.300 INFO    ] 2026-10-25 21:16:39
[2026-10-25 21:16:39,596.596 INFO    ] 2026-10-25 21:16:39
[2026-10-25 21:16:39,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:16:39,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:16:39,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:16:40,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:16:40,089.089 INFO    ] time= 25/10/2026 21:16:40
[2026-10-25 21:16:40,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:16:40,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:16:40,227.227 INFO    ] No existing commands found in stream
[2026-10-25 21:16:45,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:16:45,244.244 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 21:16:48,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:16:48,080.080 INFO    ] Checking for system updates...
[2026-10-25 21:16:48,119.119 INFO    ] 200
[2026-10-25 21:16:48,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:48,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:16:48,182.182 INFO    ] No update needed
[2026-10-25 21:16:48,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 21:16:48,226.226 INFO    ] 200
[2026-10-25 21:16:48,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:48,277.277 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:16:48,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:16:48,439.439 INFO    ] No camera update needed
[2026-10-25 21:16:48,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:16:48,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:16:48,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:16:48,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:16:50,502.502 INFO    ] ================================================
[2026-10-25 21:16:50,518.518 INFO    ] Launching Daemon at Sun Oct 25 21:16:50 IST 2026
[2026-10-25 21:16:50,535.535 INFO    ] ================================================
[2026-10-25 21:16:51,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:16:51
[2026-10-25 21:16:51,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:16:51,989.989 INFO    ] Initializing speech engine...
[2026-10-25 21:16:51,998.998 INFO    ] 2026-10-25 21:16:51
[2026-10-25 21:16:52,255.255 INFO    ] 2026-10-25 21:16:52
[2026-10-25 21:16:52,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:16:52,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:16:52,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:16:52,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:16:52,831.831 INFO    ] time= 25/10/2026 21:16:52
[2026-10-25 21:16:52,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:16:52,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:16:52,975.975 INFO    ] No existing commands found in stream
[2026-10-25 21:16:58,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:16:58,004.004 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 21:16:59,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:16:59,606.606 INFO    ] Checking for system updates...
[2026-10-25 21:16:59,643.643 INFO    ] 200
[2026-10-25 21:16:59,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:59,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:59,705.705 INFO    ] No update needed
[2026-10-25 21:16:59,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 21:16:59,742.742 INFO    ] 200
[2026-10-25 21:16:59,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:16:59,791.791 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:16:59,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:16:59,857.857 INFO    ] No camera update needed
[2026-10-25 21:16:59,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:16:59,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:16:59,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:16:59,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:17:01,920.920 INFO    ] ================================================
[2026-10-25 21:17:01,940.940 INFO    ] Launching Daemon at Sun Oct 25 21:17:01 IST 2026
[2026-10-25 21:17:01,955.955 INFO    ] ================================================
[2026-10-25 21:17:02,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:17:02
[2026-10-25 21:17:03,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:17:03,464.464 INFO    ] Initializing speech engine...
[2026-10-25 21:17:03,473.473 INFO    ] 2026-10-25 21:17:03
[2026-10-25 21:17:03,725.725 INFO    ] 2026-10-25 21:17:03
[2026-10-25 21:17:03,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:17:03,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:17:03,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:17:04,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:17:04,171.171 INFO    ] time= 25/10/2026 21:17:04
[2026-10-25 21:17:04,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:17:04,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:17:04,351.351 INFO    ] No existing commands found in stream
[2026-10-25 21:17:09,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:17:09,366.366 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 21:17:13,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:17:13,656.656 INFO    ] Checking for system updates...
[2026-10-25 21:17:13,698.698 INFO    ] 200
[2026-10-25 21:17:13,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:17:13,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:17:13,759.759 INFO    ] No update needed
[2026-10-25 21:17:13,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 21:17:13,798.798 INFO    ] 200
[2026-10-25 21:17:13,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:17:13,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:17:13,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:17:13,900.900 INFO    ] No camera update needed
[2026-10-25 21:17:13,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:17:13,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:17:13,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:17:13,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:17:15,964.964 INFO    ] ================================================
[2026-10-25 21:17:16,995.995 INFO    ] Launching Daemon at Sun Oct 25 21:17:15 IST 2026
[2026-10-25 21:17:16,006.006 INFO    ] ================================================
[2026-10-25 21:17:16,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:17:16
[2026-10-25 21:17:17,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:17:17,714.714 INFO    ] Initializing speech engine...
[2026-10-25 21:17:17,723.723 INFO    ] 2026-10-25 21:17:17
[2026-10-25 21:17:18,026.026 INFO    ] 2026-10-25 21:17:18
[2026-10-25 21:17:18,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:17:18,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:17:18,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:17:18,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:17:18,504.504 INFO    ] time= 25/10/2026 21:17:18
[2026-10-25 21:17:18,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:17:18,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:17:18,657.657 INFO    ] No existing commands found in stream
[2026-10-25 21:17:23,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:17:23,682.682 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 21:17:32,563.563 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-25 21:17:32,598.598 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf770>, 'Connection to neuustore.com timed out. (connect timeout=5)'))",)
[2026-10-25 21:17:32,611.611 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202502 (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x73ccf770>, 'Connection to neuustore.com timed out. (connect timeout=5)'))
[2026-10-25 21:17:32,623.623 INFO    ] None
[2026-10-25 21:17:32,626.626 INFO    ] Checking for system updates...
[2026-10-25 21:17:32,669.669 INFO    ] 200
[2026-10-25 21:17:32,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:17:32,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:17:32,735.735 INFO    ] No update needed
[2026-10-25 21:17:32,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 21:17:32,773.773 INFO    ] 200
[2026-10-25 21:17:32,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:17:32,823.823 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:17:42,799.799 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202502.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73c80450>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-25 21:17:42,824.824 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-25 21:17:42,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:17:42,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:17:42,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:17:42,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:17:44,890.890 INFO    ] ================================================
[2026-10-25 21:17:44,906.906 INFO    ] Launching Daemon at Sun Oct 25 21:17:44 IST 2026
[2026-10-25 21:17:44,916.916 INFO    ] ================================================
[2026-10-25 21:17:45,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:17:45
[2026-10-25 21:17:46,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:17:46,367.367 INFO    ] Initializing speech engine...
[2026-10-25 21:17:46,376.376 INFO    ] 2026-10-25 21:17:46
[2026-10-25 21:17:46,627.627 INFO    ] 2026-10-25 21:17:46
[2026-10-25 21:17:46,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:17:51,736.736 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 21:17:51,763.763 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 21:17:51,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:17:51,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:17:51,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:17:53,814.814 INFO    ] ================================================
[2026-10-25 21:17:53,829.829 INFO    ] Launching Daemon at Sun Oct 25 21:17:53 IST 2026
[2026-10-25 21:17:53,840.840 INFO    ] ================================================
[2026-10-25 21:17:54,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:17:54
[2026-10-25 21:17:55,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:17:55,271.271 INFO    ] Initializing speech engine...
[2026-10-25 21:17:55,280.280 INFO    ] 2026-10-25 21:17:55
[2026-10-25 21:17:55,536.536 INFO    ] 2026-10-25 21:17:55
[2026-10-25 21:17:55,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:17:55,704.704 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 21:17:55,883.883 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 21:17:55,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:17:55,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:17:55,951.951 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 21:17:55,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:17:58,034.034 INFO    ] ================================================
[2026-10-25 21:17:58,049.049 INFO    ] Launching Daemon at Sun Oct 25 21:17:58 IST 2026
[2026-10-25 21:17:58,059.059 INFO    ] ================================================
[2026-10-25 21:17:58,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:17:58
[2026-10-25 21:17:59,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:17:59,492.492 INFO    ] Initializing speech engine...
[2026-10-25 21:17:59,500.500 INFO    ] 2026-10-25 21:17:59
[2026-10-25 21:17:59,751.751 INFO    ] 2026-10-25 21:17:59
[2026-10-25 21:17:59,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:17:59,839.839 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-25 21:18:00,006.006 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 21:18:00,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:00,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:00,104.104 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-25 21:18:00,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:18:02,183.183 INFO    ] ================================================
[2026-10-25 21:18:02,204.204 INFO    ] Launching Daemon at Sun Oct 25 21:18:02 IST 2026
[2026-10-25 21:18:02,218.218 INFO    ] ================================================
[2026-10-25 21:18:02,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:18:02
[2026-10-25 21:18:03,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:18:03,750.750 INFO    ] Initializing speech engine...
[2026-10-25 21:18:03,771.771 INFO    ] 2026-10-25 21:18:03
[2026-10-25 21:18:04,048.048 INFO    ] 2026-10-25 21:18:04
[2026-10-25 21:18:04,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:18:09,143.143 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-25 21:18:09,170.170 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-25 21:18:09,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:09,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:09,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:18:11,221.221 INFO    ] ================================================
[2026-10-25 21:18:11,236.236 INFO    ] Launching Daemon at Sun Oct 25 21:18:11 IST 2026
[2026-10-25 21:18:11,247.247 INFO    ] ================================================
[2026-10-25 21:18:11,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:18:11
[2026-10-25 21:18:12,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:18:12,647.647 INFO    ] Initializing speech engine...
[2026-10-25 21:18:12,670.670 INFO    ] 2026-10-25 21:18:12
[2026-10-25 21:18:12,934.934 INFO    ] 2026-10-25 21:18:12
[2026-10-25 21:18:13,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:18:13,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:18:13,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:18:13,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:18:13,343.343 INFO    ] time= 25/10/2026 21:18:13
[2026-10-25 21:18:13,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:18:13,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:18:13,447.447 INFO    ] No existing commands found in stream
[2026-10-25 21:18:18,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:18:18,468.468 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 21:18:21,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:18:21,606.606 INFO    ] Checking for system updates...
[2026-10-25 21:18:21,641.641 INFO    ] 200
[2026-10-25 21:18:21,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:21,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:21,701.701 INFO    ] No update needed
[2026-10-25 21:18:21,703.703 INFO    ] Checking for camera pi updates...
[2026-10-25 21:18:21,737.737 INFO    ] 200
[2026-10-25 21:18:21,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:21,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:18:21,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:21,893.893 INFO    ] No camera update needed
[2026-10-25 21:18:21,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:18:21,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:21,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:21,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:18:23,946.946 INFO    ] ================================================
[2026-10-25 21:18:23,968.968 INFO    ] Launching Daemon at Sun Oct 25 21:18:23 IST 2026
[2026-10-25 21:18:23,978.978 INFO    ] ================================================
[2026-10-25 21:18:24,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:18:24
[2026-10-25 21:18:25,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:18:25,369.369 INFO    ] Initializing speech engine...
[2026-10-25 21:18:25,376.376 INFO    ] 2026-10-25 21:18:25
[2026-10-25 21:18:25,662.662 INFO    ] 2026-10-25 21:18:25
[2026-10-25 21:18:25,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:18:26,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:18:26,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:18:26,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:18:26,264.264 INFO    ] time= 25/10/2026 21:18:26
[2026-10-25 21:18:26,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:18:26,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:18:26,415.415 INFO    ] No existing commands found in stream
[2026-10-25 21:18:31,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:18:31,454.454 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-25 21:18:35,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:18:35,177.177 INFO    ] Checking for system updates...
[2026-10-25 21:18:35,220.220 INFO    ] 200
[2026-10-25 21:18:35,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:35,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:35,278.278 INFO    ] No update needed
[2026-10-25 21:18:35,281.281 INFO    ] Checking for camera pi updates...
[2026-10-25 21:18:35,315.315 INFO    ] 200
[2026-10-25 21:18:35,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:35,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:18:35,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:35,419.419 INFO    ] No camera update needed
[2026-10-25 21:18:35,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:18:35,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:35,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:35,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:18:37,478.478 INFO    ] ================================================
[2026-10-25 21:18:37,493.493 INFO    ] Launching Daemon at Sun Oct 25 21:18:37 IST 2026
[2026-10-25 21:18:37,503.503 INFO    ] ================================================
[2026-10-25 21:18:38,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:18:38
[2026-10-25 21:18:38,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:18:38,899.899 INFO    ] Initializing speech engine...
[2026-10-25 21:18:38,914.914 INFO    ] 2026-10-25 21:18:38
[2026-10-25 21:18:39,179.179 INFO    ] 2026-10-25 21:18:39
[2026-10-25 21:18:39,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:18:39,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:18:39,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:18:39,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:18:39,555.555 INFO    ] time= 25/10/2026 21:18:39
[2026-10-25 21:18:39,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:18:39,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:18:39,724.724 INFO    ] No existing commands found in stream
[2026-10-25 21:18:44,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:18:44,752.752 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 21:18:48,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:18:48,714.714 INFO    ] Checking for system updates...
[2026-10-25 21:18:48,750.750 INFO    ] 200
[2026-10-25 21:18:48,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:48,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:18:48,808.808 INFO    ] No update needed
[2026-10-25 21:18:48,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 21:18:48,848.848 INFO    ] 200
[2026-10-25 21:18:48,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:48,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:18:48,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:18:48,962.962 INFO    ] No camera update needed
[2026-10-25 21:18:48,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:18:48,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:48,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:48,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:18:51,018.018 INFO    ] ================================================
[2026-10-25 21:18:51,034.034 INFO    ] Launching Daemon at Sun Oct 25 21:18:51 IST 2026
[2026-10-25 21:18:51,044.044 INFO    ] ================================================
[2026-10-25 21:18:51,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:18:51
[2026-10-25 21:18:52,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:18:52,490.490 INFO    ] Initializing speech engine...
[2026-10-25 21:18:52,504.504 INFO    ] 2026-10-25 21:18:52
[2026-10-25 21:18:52,768.768 INFO    ] 2026-10-25 21:18:52
[2026-10-25 21:18:52,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:18:52,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:18:53,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:18:53,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:18:53,252.252 INFO    ] time= 25/10/2026 21:18:53
[2026-10-25 21:18:53,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:18:53,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:18:53,456.456 INFO    ] No existing commands found in stream
[2026-10-25 21:18:58,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:18:58,489.489 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-25 21:18:59,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:18:59,503.503 INFO    ] Checking for system updates...
[2026-10-25 21:18:59,540.540 INFO    ] 200
[2026-10-25 21:18:59,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:59,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:59,598.598 INFO    ] No update needed
[2026-10-25 21:18:59,601.601 INFO    ] Checking for camera pi updates...
[2026-10-25 21:18:59,635.635 INFO    ] 200
[2026-10-25 21:18:59,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:18:59,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:18:59,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:18:59,732.732 INFO    ] No camera update needed
[2026-10-25 21:18:59,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:18:59,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:18:59,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:18:59,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:19:01,816.816 INFO    ] ================================================
[2026-10-25 21:19:01,852.852 INFO    ] Launching Daemon at Sun Oct 25 21:19:01 IST 2026
[2026-10-25 21:19:01,867.867 INFO    ] ================================================
[2026-10-25 21:19:02,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:19:02
[2026-10-25 21:19:03,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:19:03,446.446 INFO    ] Initializing speech engine...
[2026-10-25 21:19:03,469.469 INFO    ] 2026-10-25 21:19:03
[2026-10-25 21:19:03,781.781 INFO    ] 2026-10-25 21:19:03
[2026-10-25 21:19:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:19:04,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:19:04,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:19:04,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:19:04,166.166 INFO    ] time= 25/10/2026 21:19:04
[2026-10-25 21:19:04,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:19:04,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:19:04,353.353 INFO    ] No existing commands found in stream
[2026-10-25 21:19:09,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:19:09,377.377 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 21:19:13,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:19:13,768.768 INFO    ] Checking for system updates...
[2026-10-25 21:19:13,803.803 INFO    ] 200
[2026-10-25 21:19:13,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:13,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:19:13,866.866 INFO    ] No update needed
[2026-10-25 21:19:13,868.868 INFO    ] Checking for camera pi updates...
[2026-10-25 21:19:13,901.901 INFO    ] 200
[2026-10-25 21:19:13,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:13,945.945 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:19:13,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:19:13,999.999 INFO    ] No camera update needed
[2026-10-25 21:19:14,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:19:14,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:19:14,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:19:14,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:19:16,056.056 INFO    ] ================================================
[2026-10-25 21:19:16,071.071 INFO    ] Launching Daemon at Sun Oct 25 21:19:16 IST 2026
[2026-10-25 21:19:16,082.082 INFO    ] ================================================
[2026-10-25 21:19:16,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:19:16
[2026-10-25 21:19:17,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:19:17,654.654 INFO    ] Initializing speech engine...
[2026-10-25 21:19:17,665.665 INFO    ] 2026-10-25 21:19:17
[2026-10-25 21:19:17,953.953 INFO    ] 2026-10-25 21:19:17
[2026-10-25 21:19:17,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:19:18,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:19:18,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:19:18,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:19:18,492.492 INFO    ] time= 25/10/2026 21:19:18
[2026-10-25 21:19:18,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:19:18,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:19:18,632.632 INFO    ] No existing commands found in stream
[2026-10-25 21:19:23,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:19:23,666.666 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 21:19:26,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:19:26,571.571 INFO    ] Checking for system updates...
[2026-10-25 21:19:26,637.637 INFO    ] 200
[2026-10-25 21:19:26,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:26,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:26,698.698 INFO    ] No update needed
[2026-10-25 21:19:26,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 21:19:26,736.736 INFO    ] 200
[2026-10-25 21:19:26,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:26,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:19:26,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:26,817.817 INFO    ] No camera update needed
[2026-10-25 21:19:26,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:19:26,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:19:26,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:19:26,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:19:28,875.875 INFO    ] ================================================
[2026-10-25 21:19:28,890.890 INFO    ] Launching Daemon at Sun Oct 25 21:19:28 IST 2026
[2026-10-25 21:19:28,902.902 INFO    ] ================================================
[2026-10-25 21:19:29,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:19:29
[2026-10-25 21:19:30,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:19:30,359.359 INFO    ] Initializing speech engine...
[2026-10-25 21:19:30,375.375 INFO    ] 2026-10-25 21:19:30
[2026-10-25 21:19:30,656.656 INFO    ] 2026-10-25 21:19:30
[2026-10-25 21:19:30,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:19:30,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:19:30,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:19:31,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:19:31,065.065 INFO    ] time= 25/10/2026 21:19:31
[2026-10-25 21:19:31,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:19:31,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:19:31,238.238 INFO    ] No existing commands found in stream
[2026-10-25 21:19:36,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:19:36,272.272 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 21:19:38,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:19:38,051.051 INFO    ] Checking for system updates...
[2026-10-25 21:19:38,087.087 INFO    ] 200
[2026-10-25 21:19:38,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:38,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:38,145.145 INFO    ] No update needed
[2026-10-25 21:19:38,148.148 INFO    ] Checking for camera pi updates...
[2026-10-25 21:19:38,182.182 INFO    ] 200
[2026-10-25 21:19:38,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:38,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:19:38,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:38,407.407 INFO    ] No camera update needed
[2026-10-25 21:19:38,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:19:38,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:19:38,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:19:38,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:19:40,463.463 INFO    ] ================================================
[2026-10-25 21:19:40,478.478 INFO    ] Launching Daemon at Sun Oct 25 21:19:40 IST 2026
[2026-10-25 21:19:40,488.488 INFO    ] ================================================
[2026-10-25 21:19:41,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:19:41
[2026-10-25 21:19:41,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:19:41,914.914 INFO    ] Initializing speech engine...
[2026-10-25 21:19:41,927.927 INFO    ] 2026-10-25 21:19:41
[2026-10-25 21:19:42,192.192 INFO    ] 2026-10-25 21:19:42
[2026-10-25 21:19:42,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:19:42,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:19:42,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:19:42,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:19:42,749.749 INFO    ] time= 25/10/2026 21:19:42
[2026-10-25 21:19:42,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:19:42,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:19:42,898.898 INFO    ] No existing commands found in stream
[2026-10-25 21:19:47,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:19:47,916.916 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 21:19:51,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:19:51,838.838 INFO    ] Checking for system updates...
[2026-10-25 21:19:51,873.873 INFO    ] 200
[2026-10-25 21:19:51,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:51,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:51,932.932 INFO    ] No update needed
[2026-10-25 21:19:51,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 21:19:51,968.968 INFO    ] 200
[2026-10-25 21:19:51,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:19:52,011.011 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:19:52,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:19:52,077.077 INFO    ] No camera update needed
[2026-10-25 21:19:52,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:19:52,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:19:52,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:19:52,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:19:54,133.133 INFO    ] ================================================
[2026-10-25 21:19:54,147.147 INFO    ] Launching Daemon at Sun Oct 25 21:19:54 IST 2026
[2026-10-25 21:19:54,158.158 INFO    ] ================================================
[2026-10-25 21:19:54,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:19:54
[2026-10-25 21:19:55,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:19:55,589.589 INFO    ] Initializing speech engine...
[2026-10-25 21:19:55,596.596 INFO    ] 2026-10-25 21:19:55
[2026-10-25 21:19:55,848.848 INFO    ] 2026-10-25 21:19:55
[2026-10-25 21:19:55,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:19:56,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:19:56,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:19:56,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:19:56,223.223 INFO    ] time= 25/10/2026 21:19:56
[2026-10-25 21:19:56,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:19:56,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:19:56,382.382 INFO    ] No existing commands found in stream
[2026-10-25 21:20:01,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:20:01,409.409 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 21:20:08,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:20:08,011.011 INFO    ] Checking for system updates...
[2026-10-25 21:20:08,047.047 INFO    ] 200
[2026-10-25 21:20:08,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:08,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:20:08,104.104 INFO    ] No update needed
[2026-10-25 21:20:08,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 21:20:08,140.140 INFO    ] 200
[2026-10-25 21:20:08,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:08,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:20:08,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:20:08,255.255 INFO    ] No camera update needed
[2026-10-25 21:20:08,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:20:08,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:20:08,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:20:08,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:20:10,311.311 INFO    ] ================================================
[2026-10-25 21:20:10,326.326 INFO    ] Launching Daemon at Sun Oct 25 21:20:10 IST 2026
[2026-10-25 21:20:10,336.336 INFO    ] ================================================
[2026-10-25 21:20:10,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:20:10
[2026-10-25 21:20:11,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:20:11,928.928 INFO    ] Initializing speech engine...
[2026-10-25 21:20:11,937.937 INFO    ] 2026-10-25 21:20:11
[2026-10-25 21:20:12,209.209 INFO    ] 2026-10-25 21:20:12
[2026-10-25 21:20:12,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:20:12,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:20:12,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:20:12,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:20:12,734.734 INFO    ] time= 25/10/2026 21:20:12
[2026-10-25 21:20:12,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:20:12,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:20:12,944.944 INFO    ] No existing commands found in stream
[2026-10-25 21:20:17,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:20:17,973.973 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 21:20:19,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:20:19,247.247 INFO    ] Checking for system updates...
[2026-10-25 21:20:19,282.282 INFO    ] 200
[2026-10-25 21:20:19,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:19,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:19,341.341 INFO    ] No update needed
[2026-10-25 21:20:19,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 21:20:19,377.377 INFO    ] 200
[2026-10-25 21:20:19,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:19,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:20:19,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:19,590.590 INFO    ] No camera update needed
[2026-10-25 21:20:19,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:20:19,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:20:19,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:20:19,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:20:21,645.645 INFO    ] ================================================
[2026-10-25 21:20:21,659.659 INFO    ] Launching Daemon at Sun Oct 25 21:20:21 IST 2026
[2026-10-25 21:20:21,670.670 INFO    ] ================================================
[2026-10-25 21:20:22,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:20:22
[2026-10-25 21:20:22,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:20:23,126.126 INFO    ] Initializing speech engine...
[2026-10-25 21:20:23,136.136 INFO    ] 2026-10-25 21:20:23
[2026-10-25 21:20:23,397.397 INFO    ] 2026-10-25 21:20:23
[2026-10-25 21:20:23,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:20:23,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:20:23,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:20:23,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:20:23,898.898 INFO    ] time= 25/10/2026 21:20:23
[2026-10-25 21:20:23,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:20:23,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:20:24,044.044 INFO    ] No existing commands found in stream
[2026-10-25 21:20:29,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:20:29,078.078 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 21:20:30,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:20:30,269.269 INFO    ] Checking for system updates...
[2026-10-25 21:20:30,305.305 INFO    ] 200
[2026-10-25 21:20:30,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:30,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:30,365.365 INFO    ] No update needed
[2026-10-25 21:20:30,367.367 INFO    ] Checking for camera pi updates...
[2026-10-25 21:20:30,401.401 INFO    ] 200
[2026-10-25 21:20:30,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:30,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:20:30,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:30,507.507 INFO    ] No camera update needed
[2026-10-25 21:20:30,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:20:30,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:20:30,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:20:30,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:20:32,564.564 INFO    ] ================================================
[2026-10-25 21:20:32,581.581 INFO    ] Launching Daemon at Sun Oct 25 21:20:32 IST 2026
[2026-10-25 21:20:32,592.592 INFO    ] ================================================
[2026-10-25 21:20:33,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:20:33
[2026-10-25 21:20:33,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:20:34,142.142 INFO    ] Initializing speech engine...
[2026-10-25 21:20:34,155.155 INFO    ] 2026-10-25 21:20:34
[2026-10-25 21:20:34,437.437 INFO    ] 2026-10-25 21:20:34
[2026-10-25 21:20:34,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:20:34,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:20:34,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:20:34,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:20:34,869.869 INFO    ] time= 25/10/2026 21:20:34
[2026-10-25 21:20:34,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:20:34,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:20:35,045.045 INFO    ] No existing commands found in stream
[2026-10-25 21:20:40,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:20:40,062.062 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 21:20:44,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:20:44,274.274 INFO    ] Checking for system updates...
[2026-10-25 21:20:44,311.311 INFO    ] 200
[2026-10-25 21:20:44,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:44,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:20:44,368.368 INFO    ] No update needed
[2026-10-25 21:20:44,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 21:20:44,404.404 INFO    ] 200
[2026-10-25 21:20:44,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:44,447.447 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:20:44,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:20:44,518.518 INFO    ] No camera update needed
[2026-10-25 21:20:44,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:20:44,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:20:44,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:20:44,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:20:46,572.572 INFO    ] ================================================
[2026-10-25 21:20:46,588.588 INFO    ] Launching Daemon at Sun Oct 25 21:20:46 IST 2026
[2026-10-25 21:20:46,599.599 INFO    ] ================================================
[2026-10-25 21:20:47,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:20:47
[2026-10-25 21:20:47,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:20:48,195.195 INFO    ] Initializing speech engine...
[2026-10-25 21:20:48,202.202 INFO    ] 2026-10-25 21:20:48
[2026-10-25 21:20:48,472.472 INFO    ] 2026-10-25 21:20:48
[2026-10-25 21:20:48,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:20:48,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:20:48,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:20:48,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:20:48,942.942 INFO    ] time= 25/10/2026 21:20:48
[2026-10-25 21:20:48,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:20:49,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:20:49,094.094 INFO    ] No existing commands found in stream
[2026-10-25 21:20:54,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:20:54,107.107 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 21:20:57,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:20:57,371.371 INFO    ] Checking for system updates...
[2026-10-25 21:20:57,407.407 INFO    ] 200
[2026-10-25 21:20:57,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:57,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:57,476.476 INFO    ] No update needed
[2026-10-25 21:20:57,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 21:20:57,512.512 INFO    ] 200
[2026-10-25 21:20:57,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:20:57,555.555 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:20:57,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:20:57,616.616 INFO    ] No camera update needed
[2026-10-25 21:20:57,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:20:57,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:20:57,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:20:57,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:20:59,671.671 INFO    ] ================================================
[2026-10-25 21:20:59,686.686 INFO    ] Launching Daemon at Sun Oct 25 21:20:59 IST 2026
[2026-10-25 21:20:59,697.697 INFO    ] ================================================
[2026-10-25 21:21:00,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:21:00
[2026-10-25 21:21:00,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:21:01,335.335 INFO    ] Initializing speech engine...
[2026-10-25 21:21:01,338.338 INFO    ] 2026-10-25 21:21:01
[2026-10-25 21:21:01,711.711 INFO    ] 2026-10-25 21:21:01
[2026-10-25 21:21:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:21:01,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:21:01,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:21:02,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:21:02,167.167 INFO    ] time= 25/10/2026 21:21:02
[2026-10-25 21:21:02,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:21:02,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:21:02,312.312 INFO    ] No existing commands found in stream
[2026-10-25 21:21:07,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:21:07,328.328 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 21:21:09,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:21:09,351.351 INFO    ] Checking for system updates...
[2026-10-25 21:21:09,389.389 INFO    ] 200
[2026-10-25 21:21:09,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:09,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:09,449.449 INFO    ] No update needed
[2026-10-25 21:21:09,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 21:21:09,491.491 INFO    ] 200
[2026-10-25 21:21:09,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:09,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:21:09,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:09,606.606 INFO    ] No camera update needed
[2026-10-25 21:21:09,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:21:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:21:09,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:21:09,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:21:11,668.668 INFO    ] ================================================
[2026-10-25 21:21:11,686.686 INFO    ] Launching Daemon at Sun Oct 25 21:21:11 IST 2026
[2026-10-25 21:21:11,698.698 INFO    ] ================================================
[2026-10-25 21:21:12,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:21:12
[2026-10-25 21:21:13,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:21:13,254.254 INFO    ] Initializing speech engine...
[2026-10-25 21:21:13,260.260 INFO    ] 2026-10-25 21:21:13
[2026-10-25 21:21:13,558.558 INFO    ] 2026-10-25 21:21:13
[2026-10-25 21:21:13,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:21:13,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:21:13,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:21:13,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:21:13,907.907 INFO    ] time= 25/10/2026 21:21:13
[2026-10-25 21:21:13,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:21:13,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:21:13,989.989 INFO    ] No existing commands found in stream
[2026-10-25 21:21:18,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:21:19,002.002 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 21:21:21,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:21:21,369.369 INFO    ] Checking for system updates...
[2026-10-25 21:21:21,410.410 INFO    ] 200
[2026-10-25 21:21:21,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:21,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:21:21,474.474 INFO    ] No update needed
[2026-10-25 21:21:21,476.476 INFO    ] Checking for camera pi updates...
[2026-10-25 21:21:21,509.509 INFO    ] 200
[2026-10-25 21:21:21,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:21,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:21:21,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:21:21,610.610 INFO    ] No camera update needed
[2026-10-25 21:21:21,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:21:21,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:21:21,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:21:21,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:21:23,665.665 INFO    ] ================================================
[2026-10-25 21:21:23,680.680 INFO    ] Launching Daemon at Sun Oct 25 21:21:23 IST 2026
[2026-10-25 21:21:23,693.693 INFO    ] ================================================
[2026-10-25 21:21:24,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:21:24
[2026-10-25 21:21:24,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:21:25,120.120 INFO    ] Initializing speech engine...
[2026-10-25 21:21:25,147.147 INFO    ] 2026-10-25 21:21:25
[2026-10-25 21:21:25,417.417 INFO    ] 2026-10-25 21:21:25
[2026-10-25 21:21:25,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:21:25,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:21:25,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:21:25,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:21:25,772.772 INFO    ] time= 25/10/2026 21:21:25
[2026-10-25 21:21:25,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:21:25,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:21:25,854.854 INFO    ] No existing commands found in stream
[2026-10-25 21:21:30,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:21:30,868.868 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 21:21:32,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:21:32,207.207 INFO    ] Checking for system updates...
[2026-10-25 21:21:32,250.250 INFO    ] 200
[2026-10-25 21:21:32,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:32,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:32,315.315 INFO    ] No update needed
[2026-10-25 21:21:32,318.318 INFO    ] Checking for camera pi updates...
[2026-10-25 21:21:32,355.355 INFO    ] 200
[2026-10-25 21:21:32,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:32,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:21:32,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:32,471.471 INFO    ] No camera update needed
[2026-10-25 21:21:32,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:21:32,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:21:32,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:21:32,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:21:34,536.536 INFO    ] ================================================
[2026-10-25 21:21:34,551.551 INFO    ] Launching Daemon at Sun Oct 25 21:21:34 IST 2026
[2026-10-25 21:21:34,562.562 INFO    ] ================================================
[2026-10-25 21:21:35,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:21:35
[2026-10-25 21:21:35,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:21:36,003.003 INFO    ] Initializing speech engine...
[2026-10-25 21:21:36,015.015 INFO    ] 2026-10-25 21:21:36
[2026-10-25 21:21:36,266.266 INFO    ] 2026-10-25 21:21:36
[2026-10-25 21:21:36,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:21:37,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:21:37,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:21:37,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:21:37,967.967 INFO    ] time= 25/10/2026 21:21:37
[2026-10-25 21:21:37,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:21:38,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:21:38,078.078 INFO    ] No existing commands found in stream
[2026-10-25 21:21:43,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:21:43,091.091 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 21:21:46,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:21:46,521.521 INFO    ] Checking for system updates...
[2026-10-25 21:21:46,561.561 INFO    ] 200
[2026-10-25 21:21:46,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:46,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:46,619.619 INFO    ] No update needed
[2026-10-25 21:21:46,622.622 INFO    ] Checking for camera pi updates...
[2026-10-25 21:21:46,656.656 INFO    ] 200
[2026-10-25 21:21:46,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:46,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:21:46,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:46,758.758 INFO    ] No camera update needed
[2026-10-25 21:21:46,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:21:46,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:21:46,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:21:46,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:21:48,814.814 INFO    ] ================================================
[2026-10-25 21:21:48,829.829 INFO    ] Launching Daemon at Sun Oct 25 21:21:48 IST 2026
[2026-10-25 21:21:48,840.840 INFO    ] ================================================
[2026-10-25 21:21:49,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:21:49
[2026-10-25 21:21:49,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:21:50,255.255 INFO    ] Initializing speech engine...
[2026-10-25 21:21:50,261.261 INFO    ] 2026-10-25 21:21:50
[2026-10-25 21:21:50,556.556 INFO    ] 2026-10-25 21:21:50
[2026-10-25 21:21:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:21:50,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:21:50,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:21:50,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:21:50,908.908 INFO    ] time= 25/10/2026 21:21:50
[2026-10-25 21:21:50,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:21:50,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:21:50,986.986 INFO    ] No existing commands found in stream
[2026-10-25 21:21:55,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:21:56,001.001 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 21:21:58,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:21:58,014.014 INFO    ] Checking for system updates...
[2026-10-25 21:21:58,054.054 INFO    ] 200
[2026-10-25 21:21:58,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:58,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:58,119.119 INFO    ] No update needed
[2026-10-25 21:21:58,122.122 INFO    ] Checking for camera pi updates...
[2026-10-25 21:21:58,159.159 INFO    ] 200
[2026-10-25 21:21:58,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:21:58,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:21:58,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:21:58,277.277 INFO    ] No camera update needed
[2026-10-25 21:21:58,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:21:58,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:21:58,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:21:58,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:00,333.333 INFO    ] ================================================
[2026-10-25 21:22:00,349.349 INFO    ] Launching Daemon at Sun Oct 25 21:22:00 IST 2026
[2026-10-25 21:22:00,359.359 INFO    ] ================================================
[2026-10-25 21:22:01,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:22:01
[2026-10-25 21:22:01,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:22:02,166.166 INFO    ] Initializing speech engine...
[2026-10-25 21:22:02,173.173 INFO    ] 2026-10-25 21:22:02
[2026-10-25 21:22:02,501.501 INFO    ] 2026-10-25 21:22:02
[2026-10-25 21:22:02,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:22:02,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:22:02,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:22:02,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:22:02,983.983 INFO    ] time= 25/10/2026 21:22:02
[2026-10-25 21:22:03,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:22:03,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:22:03,162.162 INFO    ] No existing commands found in stream
[2026-10-25 21:22:08,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:22:08,178.178 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-25 21:22:10,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:22:10,843.843 INFO    ] Checking for system updates...
[2026-10-25 21:22:10,886.886 INFO    ] 200
[2026-10-25 21:22:10,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:10,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:10,950.950 INFO    ] No update needed
[2026-10-25 21:22:10,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 21:22:10,995.995 INFO    ] 200
[2026-10-25 21:22:10,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:11,047.047 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:22:11,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:11,106.106 INFO    ] No camera update needed
[2026-10-25 21:22:11,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:22:11,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:22:11,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:22:11,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:13,167.167 INFO    ] ================================================
[2026-10-25 21:22:13,182.182 INFO    ] Launching Daemon at Sun Oct 25 21:22:13 IST 2026
[2026-10-25 21:22:13,193.193 INFO    ] ================================================
[2026-10-25 21:22:13,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:22:13
[2026-10-25 21:22:14,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:22:14,842.842 INFO    ] Initializing speech engine...
[2026-10-25 21:22:14,847.847 INFO    ] 2026-10-25 21:22:14
[2026-10-25 21:22:15,117.117 INFO    ] 2026-10-25 21:22:15
[2026-10-25 21:22:15,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:22:15,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:22:15,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:22:15,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:22:15,487.487 INFO    ] time= 25/10/2026 21:22:15
[2026-10-25 21:22:15,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:22:15,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:22:15,590.590 INFO    ] No existing commands found in stream
[2026-10-25 21:22:20,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:22:20,606.606 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 21:22:21,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:22:21,254.254 INFO    ] Checking for system updates...
[2026-10-25 21:22:21,294.294 INFO    ] 200
[2026-10-25 21:22:21,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:21,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:21,359.359 INFO    ] No update needed
[2026-10-25 21:22:21,362.362 INFO    ] Checking for camera pi updates...
[2026-10-25 21:22:21,400.400 INFO    ] 200
[2026-10-25 21:22:21,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:21,446.446 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:22:21,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:21,628.628 INFO    ] No camera update needed
[2026-10-25 21:22:21,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:22:21,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:22:21,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:22:21,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:23,687.687 INFO    ] ================================================
[2026-10-25 21:22:23,702.702 INFO    ] Launching Daemon at Sun Oct 25 21:22:23 IST 2026
[2026-10-25 21:22:23,728.728 INFO    ] ================================================
[2026-10-25 21:22:24,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:22:24
[2026-10-25 21:22:24,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:22:25,300.300 INFO    ] Initializing speech engine...
[2026-10-25 21:22:25,315.315 INFO    ] 2026-10-25 21:22:25
[2026-10-25 21:22:25,634.634 INFO    ] 2026-10-25 21:22:25
[2026-10-25 21:22:25,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:22:25,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:22:25,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:22:26,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:22:26,090.090 INFO    ] time= 25/10/2026 21:22:26
[2026-10-25 21:22:26,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:22:26,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:22:26,236.236 INFO    ] No existing commands found in stream
[2026-10-25 21:22:31,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:22:31,255.255 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 21:22:33,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:22:33,246.246 INFO    ] Checking for system updates...
[2026-10-25 21:22:33,287.287 INFO    ] 200
[2026-10-25 21:22:33,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:33,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:33,356.356 INFO    ] No update needed
[2026-10-25 21:22:33,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 21:22:33,398.398 INFO    ] 200
[2026-10-25 21:22:33,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:33,448.448 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:22:33,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:22:33,511.511 INFO    ] No camera update needed
[2026-10-25 21:22:33,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:22:33,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:22:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:22:33,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:35,572.572 INFO    ] ================================================
[2026-10-25 21:22:35,588.588 INFO    ] Launching Daemon at Sun Oct 25 21:22:35 IST 2026
[2026-10-25 21:22:35,599.599 INFO    ] ================================================
[2026-10-25 21:22:36,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:22:36
[2026-10-25 21:22:36,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:22:37,254.254 INFO    ] Initializing speech engine...
[2026-10-25 21:22:37,263.263 INFO    ] 2026-10-25 21:22:37
[2026-10-25 21:22:37,551.551 INFO    ] 2026-10-25 21:22:37
[2026-10-25 21:22:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:22:37,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:22:37,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:22:38,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:22:38,139.139 INFO    ] time= 25/10/2026 21:22:38
[2026-10-25 21:22:38,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:22:38,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:22:38,342.342 INFO    ] No existing commands found in stream
[2026-10-25 21:22:43,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:22:43,357.357 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 21:22:46,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:22:46,660.660 INFO    ] Checking for system updates...
[2026-10-25 21:22:46,698.698 INFO    ] 200
[2026-10-25 21:22:46,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:46,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:22:46,758.758 INFO    ] No update needed
[2026-10-25 21:22:46,761.761 INFO    ] Checking for camera pi updates...
[2026-10-25 21:22:46,805.805 INFO    ] 200
[2026-10-25 21:22:46,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:46,864.864 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:22:46,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:22:46,928.928 INFO    ] No camera update needed
[2026-10-25 21:22:46,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:22:46,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:22:46,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:22:46,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:48,988.988 INFO    ] ================================================
[2026-10-25 21:22:49,003.003 INFO    ] Launching Daemon at Sun Oct 25 21:22:48 IST 2026
[2026-10-25 21:22:49,015.015 INFO    ] ================================================
[2026-10-25 21:22:49,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:22:49
[2026-10-25 21:22:50,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:22:50,467.467 INFO    ] Initializing speech engine...
[2026-10-25 21:22:50,474.474 INFO    ] 2026-10-25 21:22:50
[2026-10-25 21:22:50,733.733 INFO    ] 2026-10-25 21:22:50
[2026-10-25 21:22:50,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:22:50,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:22:50,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:22:51,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:22:51,191.191 INFO    ] time= 25/10/2026 21:22:51
[2026-10-25 21:22:51,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:22:51,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:22:51,356.356 INFO    ] No existing commands found in stream
[2026-10-25 21:22:56,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:22:56,395.395 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 21:22:57,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:22:57,587.587 INFO    ] Checking for system updates...
[2026-10-25 21:22:57,624.624 INFO    ] 200
[2026-10-25 21:22:57,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:57,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:22:57,690.690 INFO    ] No update needed
[2026-10-25 21:22:57,693.693 INFO    ] Checking for camera pi updates...
[2026-10-25 21:22:57,729.729 INFO    ] 200
[2026-10-25 21:22:57,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:22:57,774.774 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:22:57,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:22:57,837.837 INFO    ] No camera update needed
[2026-10-25 21:22:57,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:22:57,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:22:57,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:22:57,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:22:59,896.896 INFO    ] ================================================
[2026-10-25 21:22:59,911.911 INFO    ] Launching Daemon at Sun Oct 25 21:22:59 IST 2026
[2026-10-25 21:22:59,922.922 INFO    ] ================================================
[2026-10-25 21:23:00,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:23:00
[2026-10-25 21:23:01,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:23:01,534.534 INFO    ] Initializing speech engine...
[2026-10-25 21:23:01,548.548 INFO    ] 2026-10-25 21:23:01
[2026-10-25 21:23:01,939.939 INFO    ] 2026-10-25 21:23:01
[2026-10-25 21:23:01,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:23:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:23:02,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:23:02,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:23:02,364.364 INFO    ] time= 25/10/2026 21:23:02
[2026-10-25 21:23:02,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:23:02,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:23:02,486.486 INFO    ] No existing commands found in stream
[2026-10-25 21:23:07,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:23:07,499.499 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 21:23:10,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:23:10,091.091 INFO    ] Checking for system updates...
[2026-10-25 21:23:10,127.127 INFO    ] 200
[2026-10-25 21:23:10,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:10,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:23:10,187.187 INFO    ] No update needed
[2026-10-25 21:23:10,189.189 INFO    ] Checking for camera pi updates...
[2026-10-25 21:23:10,222.222 INFO    ] 200
[2026-10-25 21:23:10,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:10,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:23:10,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:23:10,322.322 INFO    ] No camera update needed
[2026-10-25 21:23:10,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:23:10,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:23:10,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:23:10,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:23:12,378.378 INFO    ] ================================================
[2026-10-25 21:23:12,394.394 INFO    ] Launching Daemon at Sun Oct 25 21:23:12 IST 2026
[2026-10-25 21:23:12,405.405 INFO    ] ================================================
[2026-10-25 21:23:12,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:23:12
[2026-10-25 21:23:13,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:23:13,804.804 INFO    ] Initializing speech engine...
[2026-10-25 21:23:13,816.816 INFO    ] 2026-10-25 21:23:13
[2026-10-25 21:23:14,077.077 INFO    ] 2026-10-25 21:23:14
[2026-10-25 21:23:14,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:23:14,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:23:14,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:23:14,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:23:14,444.444 INFO    ] time= 25/10/2026 21:23:14
[2026-10-25 21:23:14,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:23:14,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:23:14,612.612 INFO    ] No existing commands found in stream
[2026-10-25 21:23:19,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:23:19,646.646 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 21:23:23,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:23:23,878.878 INFO    ] Checking for system updates...
[2026-10-25 21:23:23,918.918 INFO    ] 200
[2026-10-25 21:23:23,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:23,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:23:23,977.977 INFO    ] No update needed
[2026-10-25 21:23:23,979.979 INFO    ] Checking for camera pi updates...
[2026-10-25 21:23:24,014.014 INFO    ] 200
[2026-10-25 21:23:24,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:24,058.058 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:23:24,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:23:24,108.108 INFO    ] No camera update needed
[2026-10-25 21:23:24,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:23:24,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:23:24,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:23:24,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:23:26,164.164 INFO    ] ================================================
[2026-10-25 21:23:26,180.180 INFO    ] Launching Daemon at Sun Oct 25 21:23:26 IST 2026
[2026-10-25 21:23:26,191.191 INFO    ] ================================================
[2026-10-25 21:23:26,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:23:26
[2026-10-25 21:23:27,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:23:27,659.659 INFO    ] Initializing speech engine...
[2026-10-25 21:23:27,665.665 INFO    ] 2026-10-25 21:23:27
[2026-10-25 21:23:27,928.928 INFO    ] 2026-10-25 21:23:27
[2026-10-25 21:23:27,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:23:28,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:23:28,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:23:28,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:23:28,381.381 INFO    ] time= 25/10/2026 21:23:28
[2026-10-25 21:23:28,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:23:28,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:23:28,533.533 INFO    ] No existing commands found in stream
[2026-10-25 21:23:33,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:23:33,547.547 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 21:23:38,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:23:38,074.074 INFO    ] Checking for system updates...
[2026-10-25 21:23:38,110.110 INFO    ] 200
[2026-10-25 21:23:38,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:38,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:23:38,169.169 INFO    ] No update needed
[2026-10-25 21:23:38,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 21:23:38,206.206 INFO    ] 200
[2026-10-25 21:23:38,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:23:38,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:23:38,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:23:38,422.422 INFO    ] No camera update needed
[2026-10-25 21:23:38,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:23:38,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:23:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:23:38,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:23:40,478.478 INFO    ] ================================================
[2026-10-25 21:23:40,493.493 INFO    ] Launching Daemon at Sun Oct 25 21:23:40 IST 2026
[2026-10-25 21:23:40,504.504 INFO    ] ================================================
[2026-10-25 21:23:41,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:23:41
[2026-10-25 21:23:41,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:23:41,959.959 INFO    ] Initializing speech engine...
[2026-10-25 21:23:41,966.966 INFO    ] 2026-10-25 21:23:41
[2026-10-25 21:23:42,226.226 INFO    ] 2026-10-25 21:23:42
[2026-10-25 21:23:42,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:23:42,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:23:42,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:23:42,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:23:42,777.777 INFO    ] time= 25/10/2026 21:23:42
[2026-10-25 21:23:42,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:23:42,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:23:42,934.934 INFO    ] No existing commands found in stream
[2026-10-25 21:23:47,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:23:47,968.968 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 21:23:51,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:23:51,182.182 INFO    ] Checking for system updates...
[2026-10-25 21:23:51,372.372 INFO    ] 200
[2026-10-25 21:23:51,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 21:23:51,377.377 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-25 21:23:51,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 21:23:51,599.599 INFO    ] 200
[2026-10-25 21:23:51,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-10-25 21:23:51,605.605 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-25 21:23:51,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:23:51,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:23:51,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:23:51,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:23:53,664.664 INFO    ] ================================================
[2026-10-25 21:23:53,679.679 INFO    ] Launching Daemon at Sun Oct 25 21:23:53 IST 2026
[2026-10-25 21:23:53,690.690 INFO    ] ================================================
[2026-10-25 21:23:54,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:23:54
[2026-10-25 21:23:54,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:23:55,133.133 INFO    ] Initializing speech engine...
[2026-10-25 21:23:55,140.140 INFO    ] 2026-10-25 21:23:55
[2026-10-25 21:23:55,443.443 INFO    ] 2026-10-25 21:23:55
[2026-10-25 21:23:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:23:55,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:23:55,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:23:55,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:23:55,793.793 INFO    ] time= 25/10/2026 21:23:55
[2026-10-25 21:23:55,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:23:55,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:23:55,877.877 INFO    ] No existing commands found in stream
[2026-10-25 21:24:00,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:24:00,916.916 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 21:24:04,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:24:04,174.174 INFO    ] Checking for system updates...
[2026-10-25 21:24:04,210.210 INFO    ] 200
[2026-10-25 21:24:04,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:04,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:04,268.268 INFO    ] No update needed
[2026-10-25 21:24:04,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 21:24:04,305.305 INFO    ] 200
[2026-10-25 21:24:04,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:04,349.349 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:24:04,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:04,407.407 INFO    ] No camera update needed
[2026-10-25 21:24:04,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:24:04,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:24:04,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:24:04,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:24:06,464.464 INFO    ] ================================================
[2026-10-25 21:24:06,479.479 INFO    ] Launching Daemon at Sun Oct 25 21:24:06 IST 2026
[2026-10-25 21:24:06,490.490 INFO    ] ================================================
[2026-10-25 21:24:07,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:24:07
[2026-10-25 21:24:07,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:24:08,033.033 INFO    ] Initializing speech engine...
[2026-10-25 21:24:08,052.052 INFO    ] 2026-10-25 21:24:08
[2026-10-25 21:24:08,311.311 INFO    ] 2026-10-25 21:24:08
[2026-10-25 21:24:08,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:24:08,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:24:08,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:24:08,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:24:08,692.692 INFO    ] time= 25/10/2026 21:24:08
[2026-10-25 21:24:08,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:24:08,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:24:08,772.772 INFO    ] No existing commands found in stream
[2026-10-25 21:24:13,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:24:13,795.795 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 21:24:14,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:24:14,531.531 INFO    ] Checking for system updates...
[2026-10-25 21:24:14,571.571 INFO    ] 200
[2026-10-25 21:24:14,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:14,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:14,634.634 INFO    ] No update needed
[2026-10-25 21:24:14,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 21:24:14,671.671 INFO    ] 200
[2026-10-25 21:24:14,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:14,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:24:14,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:14,779.779 INFO    ] No camera update needed
[2026-10-25 21:24:14,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:24:14,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:24:14,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:24:14,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:24:16,835.835 INFO    ] ================================================
[2026-10-25 21:24:16,850.850 INFO    ] Launching Daemon at Sun Oct 25 21:24:16 IST 2026
[2026-10-25 21:24:16,861.861 INFO    ] ================================================
[2026-10-25 21:24:17,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:24:17
[2026-10-25 21:24:18,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:24:18,291.291 INFO    ] Initializing speech engine...
[2026-10-25 21:24:18,306.306 INFO    ] 2026-10-25 21:24:18
[2026-10-25 21:24:18,574.574 INFO    ] 2026-10-25 21:24:18
[2026-10-25 21:24:18,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:24:18,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:24:18,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:24:19,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:24:19,080.080 INFO    ] time= 25/10/2026 21:24:19
[2026-10-25 21:24:19,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:24:19,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:24:19,211.211 INFO    ] No existing commands found in stream
[2026-10-25 21:24:24,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:24:24,225.225 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 21:24:28,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:24:28,244.244 INFO    ] Checking for system updates...
[2026-10-25 21:24:28,280.280 INFO    ] 200
[2026-10-25 21:24:28,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:28,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:24:28,344.344 INFO    ] No update needed
[2026-10-25 21:24:28,346.346 INFO    ] Checking for camera pi updates...
[2026-10-25 21:24:28,381.381 INFO    ] 200
[2026-10-25 21:24:28,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:28,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:24:28,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:24:28,594.594 INFO    ] No camera update needed
[2026-10-25 21:24:28,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:24:28,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:24:28,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:24:28,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:24:30,656.656 INFO    ] ================================================
[2026-10-25 21:24:30,672.672 INFO    ] Launching Daemon at Sun Oct 25 21:24:30 IST 2026
[2026-10-25 21:24:30,684.684 INFO    ] ================================================
[2026-10-25 21:24:31,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:24:31
[2026-10-25 21:24:31,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:24:32,222.222 INFO    ] Initializing speech engine...
[2026-10-25 21:24:32,234.234 INFO    ] 2026-10-25 21:24:32
[2026-10-25 21:24:32,538.538 INFO    ] 2026-10-25 21:24:32
[2026-10-25 21:24:32,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:24:32,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:24:32,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:24:32,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:24:32,993.993 INFO    ] time= 25/10/2026 21:24:32
[2026-10-25 21:24:33,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:24:33,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:24:33,238.238 INFO    ] No existing commands found in stream
[2026-10-25 21:24:38,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:24:38,268.268 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 21:24:40,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:24:40,535.535 INFO    ] Checking for system updates...
[2026-10-25 21:24:40,573.573 INFO    ] 200
[2026-10-25 21:24:40,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:40,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:40,636.636 INFO    ] No update needed
[2026-10-25 21:24:40,639.639 INFO    ] Checking for camera pi updates...
[2026-10-25 21:24:40,675.675 INFO    ] 200
[2026-10-25 21:24:40,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:40,724.724 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:24:40,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:40,789.789 INFO    ] No camera update needed
[2026-10-25 21:24:40,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:24:40,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:24:40,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:24:40,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:24:42,850.850 INFO    ] ================================================
[2026-10-25 21:24:42,872.872 INFO    ] Launching Daemon at Sun Oct 25 21:24:42 IST 2026
[2026-10-25 21:24:42,883.883 INFO    ] ================================================
[2026-10-25 21:24:43,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:24:43
[2026-10-25 21:24:44,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:24:44,312.312 INFO    ] Initializing speech engine...
[2026-10-25 21:24:44,320.320 INFO    ] 2026-10-25 21:24:44
[2026-10-25 21:24:44,590.590 INFO    ] 2026-10-25 21:24:44
[2026-10-25 21:24:44,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:24:44,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:24:44,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:24:45,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:24:45,117.117 INFO    ] time= 25/10/2026 21:24:45
[2026-10-25 21:24:45,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:24:45,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:24:45,257.257 INFO    ] No existing commands found in stream
[2026-10-25 21:24:50,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:24:50,285.285 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 21:24:52,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:24:52,177.177 INFO    ] Checking for system updates...
[2026-10-25 21:24:52,213.213 INFO    ] 200
[2026-10-25 21:24:52,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:52,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:52,271.271 INFO    ] No update needed
[2026-10-25 21:24:52,274.274 INFO    ] Checking for camera pi updates...
[2026-10-25 21:24:52,308.308 INFO    ] 200
[2026-10-25 21:24:52,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:24:52,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:24:52,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:24:52,413.413 INFO    ] No camera update needed
[2026-10-25 21:24:52,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:24:52,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:24:52,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:24:52,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:24:54,471.471 INFO    ] ================================================
[2026-10-25 21:24:54,486.486 INFO    ] Launching Daemon at Sun Oct 25 21:24:54 IST 2026
[2026-10-25 21:24:54,496.496 INFO    ] ================================================
[2026-10-25 21:24:55,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:24:55
[2026-10-25 21:24:55,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:24:56,055.055 INFO    ] Initializing speech engine...
[2026-10-25 21:24:56,069.069 INFO    ] 2026-10-25 21:24:56
[2026-10-25 21:24:56,347.347 INFO    ] 2026-10-25 21:24:56
[2026-10-25 21:24:56,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:24:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:24:56,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:24:56,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:24:56,884.884 INFO    ] time= 25/10/2026 21:24:56
[2026-10-25 21:24:56,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:24:56,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:24:57,036.036 INFO    ] No existing commands found in stream
[2026-10-25 21:25:02,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:25:02,061.061 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-25 21:25:03,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:25:03,696.696 INFO    ] Checking for system updates...
[2026-10-25 21:25:03,734.734 INFO    ] 200
[2026-10-25 21:25:03,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:03,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:25:03,794.794 INFO    ] No update needed
[2026-10-25 21:25:03,797.797 INFO    ] Checking for camera pi updates...
[2026-10-25 21:25:03,839.839 INFO    ] 200
[2026-10-25 21:25:03,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:03,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:25:03,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:25:03,964.964 INFO    ] No camera update needed
[2026-10-25 21:25:03,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:25:03,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:25:03,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:25:03,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:25:06,026.026 INFO    ] ================================================
[2026-10-25 21:25:06,040.040 INFO    ] Launching Daemon at Sun Oct 25 21:25:06 IST 2026
[2026-10-25 21:25:06,051.051 INFO    ] ================================================
[2026-10-25 21:25:06,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:25:06
[2026-10-25 21:25:07,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:25:07,519.519 INFO    ] Initializing speech engine...
[2026-10-25 21:25:07,526.526 INFO    ] 2026-10-25 21:25:07
[2026-10-25 21:25:07,786.786 INFO    ] 2026-10-25 21:25:07
[2026-10-25 21:25:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:25:08,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:25:08,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:25:08,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:25:08,257.257 INFO    ] time= 25/10/2026 21:25:08
[2026-10-25 21:25:08,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:25:08,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:25:08,410.410 INFO    ] No existing commands found in stream
[2026-10-25 21:25:13,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:25:13,425.425 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 21:25:15,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:25:15,717.717 INFO    ] Checking for system updates...
[2026-10-25 21:25:15,757.757 INFO    ] 200
[2026-10-25 21:25:15,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:15,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:15,815.815 INFO    ] No update needed
[2026-10-25 21:25:15,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 21:25:15,852.852 INFO    ] 200
[2026-10-25 21:25:15,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:15,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:25:15,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:15,938.938 INFO    ] No camera update needed
[2026-10-25 21:25:15,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:25:15,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:25:15,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:25:15,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:25:17,993.993 INFO    ] ================================================
[2026-10-25 21:25:18,008.008 INFO    ] Launching Daemon at Sun Oct 25 21:25:18 IST 2026
[2026-10-25 21:25:18,019.019 INFO    ] ================================================
[2026-10-25 21:25:18,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:25:18
[2026-10-25 21:25:19,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:25:19,505.505 INFO    ] Initializing speech engine...
[2026-10-25 21:25:19,525.525 INFO    ] 2026-10-25 21:25:19
[2026-10-25 21:25:19,773.773 INFO    ] 2026-10-25 21:25:19
[2026-10-25 21:25:19,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:25:19,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:25:19,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:25:20,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:25:20,115.115 INFO    ] time= 25/10/2026 21:25:20
[2026-10-25 21:25:20,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:25:20,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:25:20,229.229 INFO    ] No existing commands found in stream
[2026-10-25 21:25:25,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:25:25,246.246 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-25 21:25:25,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:25:25,665.665 INFO    ] Checking for system updates...
[2026-10-25 21:25:25,702.702 INFO    ] 200
[2026-10-25 21:25:25,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:25,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:25,760.760 INFO    ] No update needed
[2026-10-25 21:25:25,763.763 INFO    ] Checking for camera pi updates...
[2026-10-25 21:25:25,796.796 INFO    ] 200
[2026-10-25 21:25:25,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:25,845.845 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:25:25,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:25,903.903 INFO    ] No camera update needed
[2026-10-25 21:25:25,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:25:25,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:25:25,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:25:25,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:25:27,958.958 INFO    ] ================================================
[2026-10-25 21:25:27,973.973 INFO    ] Launching Daemon at Sun Oct 25 21:25:27 IST 2026
[2026-10-25 21:25:27,984.984 INFO    ] ================================================
[2026-10-25 21:25:28,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:25:28
[2026-10-25 21:25:29,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:25:29,476.476 INFO    ] Initializing speech engine...
[2026-10-25 21:25:29,485.485 INFO    ] 2026-10-25 21:25:29
[2026-10-25 21:25:29,729.729 INFO    ] 2026-10-25 21:25:29
[2026-10-25 21:25:29,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:25:29,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:25:29,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:25:30,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:25:30,167.167 INFO    ] time= 25/10/2026 21:25:30
[2026-10-25 21:25:30,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:25:30,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:25:30,292.292 INFO    ] No existing commands found in stream
[2026-10-25 21:25:35,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:25:35,315.315 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 21:25:38,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:25:38,414.414 INFO    ] Checking for system updates...
[2026-10-25 21:25:38,450.450 INFO    ] 200
[2026-10-25 21:25:38,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:38,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:25:38,524.524 INFO    ] No update needed
[2026-10-25 21:25:38,526.526 INFO    ] Checking for camera pi updates...
[2026-10-25 21:25:38,560.560 INFO    ] 200
[2026-10-25 21:25:38,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:38,609.609 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:25:38,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:25:38,753.753 INFO    ] No camera update needed
[2026-10-25 21:25:38,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:25:38,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:25:38,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:25:38,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:25:40,809.809 INFO    ] ================================================
[2026-10-25 21:25:40,824.824 INFO    ] Launching Daemon at Sun Oct 25 21:25:40 IST 2026
[2026-10-25 21:25:40,835.835 INFO    ] ================================================
[2026-10-25 21:25:41,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:25:41
[2026-10-25 21:25:42,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:25:42,355.355 INFO    ] Initializing speech engine...
[2026-10-25 21:25:42,366.366 INFO    ] 2026-10-25 21:25:42
[2026-10-25 21:25:42,646.646 INFO    ] 2026-10-25 21:25:42
[2026-10-25 21:25:42,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:25:42,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:25:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:25:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:25:43,113.113 INFO    ] time= 25/10/2026 21:25:43
[2026-10-25 21:25:43,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:25:43,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:25:43,247.247 INFO    ] No existing commands found in stream
[2026-10-25 21:25:48,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:25:48,263.263 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 21:25:51,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:25:51,685.685 INFO    ] Checking for system updates...
[2026-10-25 21:25:51,722.722 INFO    ] 200
[2026-10-25 21:25:51,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:51,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:51,785.785 INFO    ] No update needed
[2026-10-25 21:25:51,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 21:25:51,827.827 INFO    ] 200
[2026-10-25 21:25:51,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:25:51,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:25:51,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:25:51,908.908 INFO    ] No camera update needed
[2026-10-25 21:25:51,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:25:51,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:25:51,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:25:51,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:25:53,964.964 INFO    ] ================================================
[2026-10-25 21:25:53,980.980 INFO    ] Launching Daemon at Sun Oct 25 21:25:53 IST 2026
[2026-10-25 21:25:53,991.991 INFO    ] ================================================
[2026-10-25 21:25:54,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:25:54
[2026-10-25 21:25:55,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:25:55,547.547 INFO    ] Initializing speech engine...
[2026-10-25 21:25:55,559.559 INFO    ] 2026-10-25 21:25:55
[2026-10-25 21:25:55,834.834 INFO    ] 2026-10-25 21:25:55
[2026-10-25 21:25:55,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:25:56,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:25:56,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:25:56,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:25:56,372.372 INFO    ] time= 25/10/2026 21:25:56
[2026-10-25 21:25:56,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:25:56,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:25:56,520.520 INFO    ] No existing commands found in stream
[2026-10-25 21:26:01,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:26:01,539.539 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-25 21:26:04,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:26:04,973.973 INFO    ] Checking for system updates...
[2026-10-25 21:26:05,012.012 INFO    ] 200
[2026-10-25 21:26:05,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:05,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:05,080.080 INFO    ] No update needed
[2026-10-25 21:26:05,083.083 INFO    ] Checking for camera pi updates...
[2026-10-25 21:26:05,119.119 INFO    ] 200
[2026-10-25 21:26:05,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:05,163.163 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:26:05,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:05,224.224 INFO    ] No camera update needed
[2026-10-25 21:26:05,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:26:05,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:26:05,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:26:05,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:26:07,278.278 INFO    ] ================================================
[2026-10-25 21:26:07,293.293 INFO    ] Launching Daemon at Sun Oct 25 21:26:07 IST 2026
[2026-10-25 21:26:07,304.304 INFO    ] ================================================
[2026-10-25 21:26:07,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:26:07
[2026-10-25 21:26:08,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:26:08,744.744 INFO    ] Initializing speech engine...
[2026-10-25 21:26:08,754.754 INFO    ] 2026-10-25 21:26:08
[2026-10-25 21:26:09,018.018 INFO    ] 2026-10-25 21:26:09
[2026-10-25 21:26:09,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:26:09,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:26:09,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:26:09,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:26:09,423.423 INFO    ] time= 25/10/2026 21:26:09
[2026-10-25 21:26:09,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:26:09,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:26:09,507.507 INFO    ] No existing commands found in stream
[2026-10-25 21:26:14,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:26:14,523.523 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 21:26:17,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:26:17,162.162 INFO    ] Checking for system updates...
[2026-10-25 21:26:17,197.197 INFO    ] 200
[2026-10-25 21:26:17,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:17,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:26:17,255.255 INFO    ] No update needed
[2026-10-25 21:26:17,258.258 INFO    ] Checking for camera pi updates...
[2026-10-25 21:26:17,291.291 INFO    ] 200
[2026-10-25 21:26:17,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:17,338.338 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:26:17,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:26:17,405.405 INFO    ] No camera update needed
[2026-10-25 21:26:17,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:26:17,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:26:17,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:26:17,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:26:19,462.462 INFO    ] ================================================
[2026-10-25 21:26:19,480.480 INFO    ] Launching Daemon at Sun Oct 25 21:26:19 IST 2026
[2026-10-25 21:26:19,492.492 INFO    ] ================================================
[2026-10-25 21:26:20,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:26:20
[2026-10-25 21:26:20,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:26:20,901.901 INFO    ] Initializing speech engine...
[2026-10-25 21:26:20,914.914 INFO    ] 2026-10-25 21:26:20
[2026-10-25 21:26:21,191.191 INFO    ] 2026-10-25 21:26:21
[2026-10-25 21:26:21,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:26:21,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:26:21,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:26:21,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:26:21,536.536 INFO    ] time= 25/10/2026 21:26:21
[2026-10-25 21:26:21,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:26:21,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:26:21,633.633 INFO    ] No existing commands found in stream
[2026-10-25 21:26:26,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:26:26,672.672 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 21:26:27,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:26:27,338.338 INFO    ] Checking for system updates...
[2026-10-25 21:26:27,374.374 INFO    ] 200
[2026-10-25 21:26:27,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:27,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:26:27,432.432 INFO    ] No update needed
[2026-10-25 21:26:27,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 21:26:27,468.468 INFO    ] 200
[2026-10-25 21:26:27,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:27,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:26:27,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:26:27,578.578 INFO    ] No camera update needed
[2026-10-25 21:26:27,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:26:27,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:26:27,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:26:27,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:26:29,632.632 INFO    ] ================================================
[2026-10-25 21:26:29,647.647 INFO    ] Launching Daemon at Sun Oct 25 21:26:29 IST 2026
[2026-10-25 21:26:29,658.658 INFO    ] ================================================
[2026-10-25 21:26:30,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:26:30
[2026-10-25 21:26:30,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:26:31,068.068 INFO    ] Initializing speech engine...
[2026-10-25 21:26:31,083.083 INFO    ] 2026-10-25 21:26:31
[2026-10-25 21:26:31,340.340 INFO    ] 2026-10-25 21:26:31
[2026-10-25 21:26:31,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:26:31,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:26:31,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:26:31,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:26:31,718.718 INFO    ] time= 25/10/2026 21:26:31
[2026-10-25 21:26:31,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:26:31,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:26:31,892.892 INFO    ] No existing commands found in stream
[2026-10-25 21:26:36,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:26:36,925.925 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 21:26:38,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:26:38,737.737 INFO    ] Checking for system updates...
[2026-10-25 21:26:38,787.787 INFO    ] 200
[2026-10-25 21:26:38,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:38,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:38,844.844 INFO    ] No update needed
[2026-10-25 21:26:38,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 21:26:38,880.880 INFO    ] 200
[2026-10-25 21:26:38,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:38,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:26:38,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:38,970.970 INFO    ] No camera update needed
[2026-10-25 21:26:38,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:26:38,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:26:38,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:26:38,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:26:41,027.027 INFO    ] ================================================
[2026-10-25 21:26:41,042.042 INFO    ] Launching Daemon at Sun Oct 25 21:26:41 IST 2026
[2026-10-25 21:26:41,052.052 INFO    ] ================================================
[2026-10-25 21:26:41,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:26:41
[2026-10-25 21:26:42,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:26:42,502.502 INFO    ] Initializing speech engine...
[2026-10-25 21:26:42,512.512 INFO    ] 2026-10-25 21:26:42
[2026-10-25 21:26:42,773.773 INFO    ] 2026-10-25 21:26:42
[2026-10-25 21:26:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:26:43,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:26:43,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:26:43,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:26:43,243.243 INFO    ] time= 25/10/2026 21:26:43
[2026-10-25 21:26:43,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:26:43,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:26:43,380.380 INFO    ] No existing commands found in stream
[2026-10-25 21:26:48,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:26:48,394.394 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 21:26:51,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:26:51,092.092 INFO    ] Checking for system updates...
[2026-10-25 21:26:51,128.128 INFO    ] 200
[2026-10-25 21:26:51,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:51,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:51,185.185 INFO    ] No update needed
[2026-10-25 21:26:51,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 21:26:51,221.221 INFO    ] 200
[2026-10-25 21:26:51,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:26:51,264.264 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:26:51,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:26:51,316.316 INFO    ] No camera update needed
[2026-10-25 21:26:51,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:26:51,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:26:51,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:26:51,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:26:53,372.372 INFO    ] ================================================
[2026-10-25 21:26:53,387.387 INFO    ] Launching Daemon at Sun Oct 25 21:26:53 IST 2026
[2026-10-25 21:26:53,398.398 INFO    ] ================================================
[2026-10-25 21:26:53,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:26:53
[2026-10-25 21:26:54,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:26:54,808.808 INFO    ] Initializing speech engine...
[2026-10-25 21:26:54,817.817 INFO    ] 2026-10-25 21:26:54
[2026-10-25 21:26:55,108.108 INFO    ] 2026-10-25 21:26:55
[2026-10-25 21:26:55,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:26:55,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:26:55,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:26:55,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:26:55,520.520 INFO    ] time= 25/10/2026 21:26:55
[2026-10-25 21:26:55,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:26:55,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:26:55,604.604 INFO    ] No existing commands found in stream
[2026-10-25 21:27:00,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:27:00,619.619 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 21:27:01,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:27:01,849.849 INFO    ] Checking for system updates...
[2026-10-25 21:27:01,885.885 INFO    ] 200
[2026-10-25 21:27:01,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:01,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:01,950.950 INFO    ] No update needed
[2026-10-25 21:27:01,953.953 INFO    ] Checking for camera pi updates...
[2026-10-25 21:27:02,016.016 INFO    ] 200
[2026-10-25 21:27:02,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:02,116.116 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:27:02,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:02,182.182 INFO    ] No camera update needed
[2026-10-25 21:27:02,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:27:02,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:27:02,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:27:02,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:27:04,254.254 INFO    ] ================================================
[2026-10-25 21:27:04,273.273 INFO    ] Launching Daemon at Sun Oct 25 21:27:04 IST 2026
[2026-10-25 21:27:04,284.284 INFO    ] ================================================
[2026-10-25 21:27:04,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:27:04
[2026-10-25 21:27:05,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:27:05,754.754 INFO    ] Initializing speech engine...
[2026-10-25 21:27:05,763.763 INFO    ] 2026-10-25 21:27:05
[2026-10-25 21:27:06,011.011 INFO    ] 2026-10-25 21:27:06
[2026-10-25 21:27:06,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:27:07,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:27:07,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:27:07,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:27:07,979.979 INFO    ] time= 25/10/2026 21:27:07
[2026-10-25 21:27:07,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:27:07,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:27:08,043.043 INFO    ] No existing commands found in stream
[2026-10-25 21:27:13,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:27:13,057.057 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 21:27:14,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:27:14,074.074 INFO    ] Checking for system updates...
[2026-10-25 21:27:14,110.110 INFO    ] 200
[2026-10-25 21:27:14,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:14,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:27:14,168.168 INFO    ] No update needed
[2026-10-25 21:27:14,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 21:27:14,209.209 INFO    ] 200
[2026-10-25 21:27:14,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:14,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:27:14,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:27:14,303.303 INFO    ] No camera update needed
[2026-10-25 21:27:14,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:27:14,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:27:14,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:27:14,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:27:16,357.357 INFO    ] ================================================
[2026-10-25 21:27:16,372.372 INFO    ] Launching Daemon at Sun Oct 25 21:27:16 IST 2026
[2026-10-25 21:27:16,383.383 INFO    ] ================================================
[2026-10-25 21:27:16,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:27:16
[2026-10-25 21:27:17,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:27:17,791.791 INFO    ] Initializing speech engine...
[2026-10-25 21:27:17,805.805 INFO    ] 2026-10-25 21:27:17
[2026-10-25 21:27:18,060.060 INFO    ] 2026-10-25 21:27:18
[2026-10-25 21:27:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:27:18,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:27:18,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:27:18,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:27:18,518.518 INFO    ] time= 25/10/2026 21:27:18
[2026-10-25 21:27:18,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:27:18,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:27:18,686.686 INFO    ] No existing commands found in stream
[2026-10-25 21:27:23,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:27:23,700.700 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-25 21:27:24,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:27:24,759.759 INFO    ] Checking for system updates...
[2026-10-25 21:27:24,795.795 INFO    ] 200
[2026-10-25 21:27:24,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:24,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:24,857.857 INFO    ] No update needed
[2026-10-25 21:27:24,859.859 INFO    ] Checking for camera pi updates...
[2026-10-25 21:27:24,893.893 INFO    ] 200
[2026-10-25 21:27:24,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:24,944.944 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:27:24,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:24,999.999 INFO    ] No camera update needed
[2026-10-25 21:27:25,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:27:25,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:27:25,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:27:25,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:27:27,054.054 INFO    ] ================================================
[2026-10-25 21:27:27,069.069 INFO    ] Launching Daemon at Sun Oct 25 21:27:27 IST 2026
[2026-10-25 21:27:27,080.080 INFO    ] ================================================
[2026-10-25 21:27:27,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:27:27
[2026-10-25 21:27:28,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:27:28,521.521 INFO    ] Initializing speech engine...
[2026-10-25 21:27:28,530.530 INFO    ] 2026-10-25 21:27:28
[2026-10-25 21:27:28,824.824 INFO    ] 2026-10-25 21:27:28
[2026-10-25 21:27:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:27:29,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:27:29,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:27:29,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:27:29,180.180 INFO    ] time= 25/10/2026 21:27:29
[2026-10-25 21:27:29,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:27:29,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:27:29,294.294 INFO    ] No existing commands found in stream
[2026-10-25 21:27:34,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:27:34,312.312 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-25 21:27:38,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:27:38,075.075 INFO    ] Checking for system updates...
[2026-10-25 21:27:38,112.112 INFO    ] 200
[2026-10-25 21:27:38,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:38,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:38,177.177 INFO    ] No update needed
[2026-10-25 21:27:38,179.179 INFO    ] Checking for camera pi updates...
[2026-10-25 21:27:38,219.219 INFO    ] 200
[2026-10-25 21:27:38,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:38,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:27:38,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:38,417.417 INFO    ] No camera update needed
[2026-10-25 21:27:38,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:27:38,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:27:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:27:38,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:27:40,481.481 INFO    ] ================================================
[2026-10-25 21:27:40,497.497 INFO    ] Launching Daemon at Sun Oct 25 21:27:40 IST 2026
[2026-10-25 21:27:40,507.507 INFO    ] ================================================
[2026-10-25 21:27:41,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:27:41
[2026-10-25 21:27:41,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:27:42,110.110 INFO    ] Initializing speech engine...
[2026-10-25 21:27:42,118.118 INFO    ] 2026-10-25 21:27:42
[2026-10-25 21:27:42,400.400 INFO    ] 2026-10-25 21:27:42
[2026-10-25 21:27:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:27:42,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:27:42,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:27:42,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:27:42,940.940 INFO    ] time= 25/10/2026 21:27:42
[2026-10-25 21:27:42,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:27:42,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:27:43,095.095 INFO    ] No existing commands found in stream
[2026-10-25 21:27:48,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:27:48,117.117 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 21:27:52,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:27:52,521.521 INFO    ] Checking for system updates...
[2026-10-25 21:27:52,559.559 INFO    ] 200
[2026-10-25 21:27:52,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:52,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:52,618.618 INFO    ] No update needed
[2026-10-25 21:27:52,621.621 INFO    ] Checking for camera pi updates...
[2026-10-25 21:27:52,655.655 INFO    ] 200
[2026-10-25 21:27:52,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:27:52,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:27:52,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:27:52,776.776 INFO    ] No camera update needed
[2026-10-25 21:27:52,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:27:52,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:27:52,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:27:52,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:27:54,831.831 INFO    ] ================================================
[2026-10-25 21:27:54,845.845 INFO    ] Launching Daemon at Sun Oct 25 21:27:54 IST 2026
[2026-10-25 21:27:54,856.856 INFO    ] ================================================
[2026-10-25 21:27:55,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:27:55
[2026-10-25 21:27:56,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:27:56,313.313 INFO    ] Initializing speech engine...
[2026-10-25 21:27:56,320.320 INFO    ] 2026-10-25 21:27:56
[2026-10-25 21:27:56,580.580 INFO    ] 2026-10-25 21:27:56
[2026-10-25 21:27:56,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:27:56,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:27:56,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:27:57,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:27:57,025.025 INFO    ] time= 25/10/2026 21:27:57
[2026-10-25 21:27:57,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:27:57,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:27:57,224.224 INFO    ] No existing commands found in stream
[2026-10-25 21:28:02,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:28:02,236.236 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-25 21:28:02,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:28:02,847.847 INFO    ] Checking for system updates...
[2026-10-25 21:28:02,892.892 INFO    ] 200
[2026-10-25 21:28:02,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:02,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:02,951.951 INFO    ] No update needed
[2026-10-25 21:28:02,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 21:28:02,992.992 INFO    ] 200
[2026-10-25 21:28:02,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:03,037.037 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:28:03,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:03,082.082 INFO    ] No camera update needed
[2026-10-25 21:28:03,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:28:03,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:28:03,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:28:03,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:28:05,138.138 INFO    ] ================================================
[2026-10-25 21:28:05,154.154 INFO    ] Launching Daemon at Sun Oct 25 21:28:05 IST 2026
[2026-10-25 21:28:05,164.164 INFO    ] ================================================
[2026-10-25 21:28:05,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:28:05
[2026-10-25 21:28:06,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:28:06,601.601 INFO    ] Initializing speech engine...
[2026-10-25 21:28:06,607.607 INFO    ] 2026-10-25 21:28:06
[2026-10-25 21:28:06,900.900 INFO    ] 2026-10-25 21:28:06
[2026-10-25 21:28:06,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:28:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:28:07,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:28:08,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:28:08,160.160 INFO    ] time= 25/10/2026 21:28:08
[2026-10-25 21:28:08,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:28:08,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:28:08,277.277 INFO    ] No existing commands found in stream
[2026-10-25 21:28:13,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:28:13,297.297 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 21:28:15,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:28:15,823.823 INFO    ] Checking for system updates...
[2026-10-25 21:28:15,863.863 INFO    ] 200
[2026-10-25 21:28:15,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:15,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:28:15,920.920 INFO    ] No update needed
[2026-10-25 21:28:15,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 21:28:15,957.957 INFO    ] 200
[2026-10-25 21:28:15,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:15,999.999 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:28:16,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:28:16,054.054 INFO    ] No camera update needed
[2026-10-25 21:28:16,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:28:16,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:28:16,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:28:16,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:28:18,110.110 INFO    ] ================================================
[2026-10-25 21:28:18,125.125 INFO    ] Launching Daemon at Sun Oct 25 21:28:18 IST 2026
[2026-10-25 21:28:18,136.136 INFO    ] ================================================
[2026-10-25 21:28:18,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:28:18
[2026-10-25 21:28:19,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:28:19,613.613 INFO    ] Initializing speech engine...
[2026-10-25 21:28:19,623.623 INFO    ] 2026-10-25 21:28:19
[2026-10-25 21:28:19,935.935 INFO    ] 2026-10-25 21:28:19
[2026-10-25 21:28:20,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:28:20,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:28:20,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:28:20,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:28:20,451.451 INFO    ] time= 25/10/2026 21:28:20
[2026-10-25 21:28:20,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:28:20,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:28:20,595.595 INFO    ] No existing commands found in stream
[2026-10-25 21:28:25,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:28:25,629.629 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 21:28:28,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:28:28,828.828 INFO    ] Checking for system updates...
[2026-10-25 21:28:28,871.871 INFO    ] 200
[2026-10-25 21:28:28,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:28,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:28,933.933 INFO    ] No update needed
[2026-10-25 21:28:28,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 21:28:28,973.973 INFO    ] 200
[2026-10-25 21:28:28,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:29,016.016 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:28:29,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:29,073.073 INFO    ] No camera update needed
[2026-10-25 21:28:29,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:28:29,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:28:29,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:28:29,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:28:31,127.127 INFO    ] ================================================
[2026-10-25 21:28:31,143.143 INFO    ] Launching Daemon at Sun Oct 25 21:28:31 IST 2026
[2026-10-25 21:28:31,154.154 INFO    ] ================================================
[2026-10-25 21:28:31,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:28:31
[2026-10-25 21:28:32,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:28:32,637.637 INFO    ] Initializing speech engine...
[2026-10-25 21:28:32,651.651 INFO    ] 2026-10-25 21:28:32
[2026-10-25 21:28:32,931.931 INFO    ] 2026-10-25 21:28:32
[2026-10-25 21:28:32,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:28:33,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:28:33,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:28:33,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:28:33,346.346 INFO    ] time= 25/10/2026 21:28:33
[2026-10-25 21:28:33,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:28:33,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:28:33,428.428 INFO    ] No existing commands found in stream
[2026-10-25 21:28:38,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:28:38,443.443 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 21:28:40,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:28:40,635.635 INFO    ] Checking for system updates...
[2026-10-25 21:28:40,672.672 INFO    ] 200
[2026-10-25 21:28:40,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:40,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:40,735.735 INFO    ] No update needed
[2026-10-25 21:28:40,738.738 INFO    ] Checking for camera pi updates...
[2026-10-25 21:28:40,772.772 INFO    ] 200
[2026-10-25 21:28:40,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:40,818.818 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:28:40,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:40,981.981 INFO    ] No camera update needed
[2026-10-25 21:28:40,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:28:40,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:28:40,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:28:40,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:28:43,036.036 INFO    ] ================================================
[2026-10-25 21:28:43,051.051 INFO    ] Launching Daemon at Sun Oct 25 21:28:43 IST 2026
[2026-10-25 21:28:43,062.062 INFO    ] ================================================
[2026-10-25 21:28:43,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:28:43
[2026-10-25 21:28:44,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:28:44,483.483 INFO    ] Initializing speech engine...
[2026-10-25 21:28:44,492.492 INFO    ] 2026-10-25 21:28:44
[2026-10-25 21:28:44,737.737 INFO    ] 2026-10-25 21:28:44
[2026-10-25 21:28:44,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:28:45,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:28:45,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:28:45,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:28:45,231.231 INFO    ] time= 25/10/2026 21:28:45
[2026-10-25 21:28:45,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:28:45,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:28:45,412.412 INFO    ] No existing commands found in stream
[2026-10-25 21:28:50,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:28:50,436.436 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 21:28:52,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:28:52,645.645 INFO    ] Checking for system updates...
[2026-10-25 21:28:52,681.681 INFO    ] 200
[2026-10-25 21:28:52,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:52,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:52,747.747 INFO    ] No update needed
[2026-10-25 21:28:52,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 21:28:52,788.788 INFO    ] 200
[2026-10-25 21:28:52,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:28:52,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:28:52,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:28:52,891.891 INFO    ] No camera update needed
[2026-10-25 21:28:52,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:28:52,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:28:52,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:28:52,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:28:54,950.950 INFO    ] ================================================
[2026-10-25 21:28:54,965.965 INFO    ] Launching Daemon at Sun Oct 25 21:28:54 IST 2026
[2026-10-25 21:28:54,975.975 INFO    ] ================================================
[2026-10-25 21:28:55,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:28:55
[2026-10-25 21:28:56,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:28:56,389.389 INFO    ] Initializing speech engine...
[2026-10-25 21:28:56,398.398 INFO    ] 2026-10-25 21:28:56
[2026-10-25 21:28:56,644.644 INFO    ] 2026-10-25 21:28:56
[2026-10-25 21:28:56,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:28:56,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:28:56,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:28:57,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:28:57,139.139 INFO    ] time= 25/10/2026 21:28:57
[2026-10-25 21:28:57,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:28:57,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:28:57,321.321 INFO    ] No existing commands found in stream
[2026-10-25 21:29:02,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:29:02,354.354 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 21:29:05,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:29:05,163.163 INFO    ] Checking for system updates...
[2026-10-25 21:29:05,201.201 INFO    ] 200
[2026-10-25 21:29:05,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:05,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:05,265.265 INFO    ] No update needed
[2026-10-25 21:29:05,267.267 INFO    ] Checking for camera pi updates...
[2026-10-25 21:29:05,303.303 INFO    ] 200
[2026-10-25 21:29:05,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:05,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:29:05,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:05,404.404 INFO    ] No camera update needed
[2026-10-25 21:29:05,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:29:05,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:29:05,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:29:05,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:29:07,458.458 INFO    ] ================================================
[2026-10-25 21:29:07,473.473 INFO    ] Launching Daemon at Sun Oct 25 21:29:07 IST 2026
[2026-10-25 21:29:07,484.484 INFO    ] ================================================
[2026-10-25 21:29:08,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:29:08
[2026-10-25 21:29:08,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:29:08,895.895 INFO    ] Initializing speech engine...
[2026-10-25 21:29:08,904.904 INFO    ] 2026-10-25 21:29:08
[2026-10-25 21:29:09,147.147 INFO    ] 2026-10-25 21:29:09
[2026-10-25 21:29:09,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:29:09,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:29:09,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:29:09,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:29:09,611.611 INFO    ] time= 25/10/2026 21:29:09
[2026-10-25 21:29:09,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:29:09,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:29:09,763.763 INFO    ] No existing commands found in stream
[2026-10-25 21:29:14,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:29:14,777.777 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 21:29:15,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:29:15,978.978 INFO    ] Checking for system updates...
[2026-10-25 21:29:16,017.017 INFO    ] 200
[2026-10-25 21:29:16,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:16,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:29:16,075.075 INFO    ] No update needed
[2026-10-25 21:29:16,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 21:29:16,114.114 INFO    ] 200
[2026-10-25 21:29:16,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:16,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:29:16,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:29:16,220.220 INFO    ] No camera update needed
[2026-10-25 21:29:16,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:29:16,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:29:16,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:29:16,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:29:18,276.276 INFO    ] ================================================
[2026-10-25 21:29:18,291.291 INFO    ] Launching Daemon at Sun Oct 25 21:29:18 IST 2026
[2026-10-25 21:29:18,303.303 INFO    ] ================================================
[2026-10-25 21:29:18,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:29:18
[2026-10-25 21:29:19,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:29:19,750.750 INFO    ] Initializing speech engine...
[2026-10-25 21:29:19,759.759 INFO    ] 2026-10-25 21:29:19
[2026-10-25 21:29:20,020.020 INFO    ] 2026-10-25 21:29:20
[2026-10-25 21:29:20,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:29:20,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:29:20,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:29:20,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:29:20,521.521 INFO    ] time= 25/10/2026 21:29:20
[2026-10-25 21:29:20,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:29:20,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:29:20,698.698 INFO    ] No existing commands found in stream
[2026-10-25 21:29:25,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:29:25,726.726 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-25 21:29:29,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:29:29,800.800 INFO    ] Checking for system updates...
[2026-10-25 21:29:29,836.836 INFO    ] 200
[2026-10-25 21:29:29,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:29,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:29:29,899.899 INFO    ] No update needed
[2026-10-25 21:29:29,902.902 INFO    ] Checking for camera pi updates...
[2026-10-25 21:29:29,936.936 INFO    ] 200
[2026-10-25 21:29:29,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:29,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:29:30,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:29:30,028.028 INFO    ] No camera update needed
[2026-10-25 21:29:30,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:29:30,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:29:30,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:29:30,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:29:32,084.084 INFO    ] ================================================
[2026-10-25 21:29:32,100.100 INFO    ] Launching Daemon at Sun Oct 25 21:29:32 IST 2026
[2026-10-25 21:29:32,111.111 INFO    ] ================================================
[2026-10-25 21:29:32,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:29:32
[2026-10-25 21:29:33,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:29:33,596.596 INFO    ] Initializing speech engine...
[2026-10-25 21:29:33,604.604 INFO    ] 2026-10-25 21:29:33
[2026-10-25 21:29:33,855.855 INFO    ] 2026-10-25 21:29:33
[2026-10-25 21:29:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:29:34,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:29:34,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:29:34,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:29:34,329.329 INFO    ] time= 25/10/2026 21:29:34
[2026-10-25 21:29:34,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:29:34,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:29:34,471.471 INFO    ] No existing commands found in stream
[2026-10-25 21:29:39,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:29:39,486.486 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 21:29:42,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:29:42,419.419 INFO    ] Checking for system updates...
[2026-10-25 21:29:42,458.458 INFO    ] 200
[2026-10-25 21:29:42,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:42,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:42,522.522 INFO    ] No update needed
[2026-10-25 21:29:42,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 21:29:42,561.561 INFO    ] 200
[2026-10-25 21:29:42,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:42,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:29:42,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:42,665.665 INFO    ] No camera update needed
[2026-10-25 21:29:42,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:29:42,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:29:42,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:29:42,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:29:44,722.722 INFO    ] ================================================
[2026-10-25 21:29:44,737.737 INFO    ] Launching Daemon at Sun Oct 25 21:29:44 IST 2026
[2026-10-25 21:29:44,748.748 INFO    ] ================================================
[2026-10-25 21:29:45,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:29:45
[2026-10-25 21:29:46,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:29:46,315.315 INFO    ] Initializing speech engine...
[2026-10-25 21:29:46,325.325 INFO    ] 2026-10-25 21:29:46
[2026-10-25 21:29:46,587.587 INFO    ] 2026-10-25 21:29:46
[2026-10-25 21:29:46,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:29:46,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:29:46,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:29:47,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:29:47,067.067 INFO    ] time= 25/10/2026 21:29:47
[2026-10-25 21:29:47,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:29:47,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:29:47,219.219 INFO    ] No existing commands found in stream
[2026-10-25 21:29:52,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:29:52,235.235 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 21:29:54,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:29:54,508.508 INFO    ] Checking for system updates...
[2026-10-25 21:29:54,545.545 INFO    ] 200
[2026-10-25 21:29:54,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:54,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:54,609.609 INFO    ] No update needed
[2026-10-25 21:29:54,612.612 INFO    ] Checking for camera pi updates...
[2026-10-25 21:29:54,655.655 INFO    ] 200
[2026-10-25 21:29:54,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:29:54,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:29:54,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:29:54,773.773 INFO    ] No camera update needed
[2026-10-25 21:29:54,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:29:54,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:29:54,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:29:54,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:29:56,833.833 INFO    ] ================================================
[2026-10-25 21:29:56,848.848 INFO    ] Launching Daemon at Sun Oct 25 21:29:56 IST 2026
[2026-10-25 21:29:56,859.859 INFO    ] ================================================
[2026-10-25 21:29:57,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:29:57
[2026-10-25 21:29:58,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:29:58,251.251 INFO    ] Initializing speech engine...
[2026-10-25 21:29:58,257.257 INFO    ] 2026-10-25 21:29:58
[2026-10-25 21:29:58,529.529 INFO    ] 2026-10-25 21:29:58
[2026-10-25 21:29:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:29:58,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:29:58,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:29:58,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:29:59,002.002 INFO    ] time= 25/10/2026 21:29:58
[2026-10-25 21:29:59,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:29:59,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:29:59,160.160 INFO    ] No existing commands found in stream
[2026-10-25 21:30:04,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:30:04,175.175 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 21:30:08,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:30:08,661.661 INFO    ] Checking for system updates...
[2026-10-25 21:30:08,697.697 INFO    ] 200
[2026-10-25 21:30:08,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:08,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:30:08,755.755 INFO    ] No update needed
[2026-10-25 21:30:08,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 21:30:08,795.795 INFO    ] 200
[2026-10-25 21:30:08,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:08,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:30:08,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:30:08,896.896 INFO    ] No camera update needed
[2026-10-25 21:30:08,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:30:08,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:30:08,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:30:08,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:30:10,954.954 INFO    ] ================================================
[2026-10-25 21:30:10,969.969 INFO    ] Launching Daemon at Sun Oct 25 21:30:10 IST 2026
[2026-10-25 21:30:10,979.979 INFO    ] ================================================
[2026-10-25 21:30:11,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:30:11
[2026-10-25 21:30:12,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:30:12,585.585 INFO    ] Initializing speech engine...
[2026-10-25 21:30:12,593.593 INFO    ] 2026-10-25 21:30:12
[2026-10-25 21:30:12,896.896 INFO    ] 2026-10-25 21:30:12
[2026-10-25 21:30:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:30:13,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:30:13,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:30:13,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:30:13,380.380 INFO    ] time= 25/10/2026 21:30:13
[2026-10-25 21:30:13,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:30:13,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:30:13,573.573 INFO    ] No existing commands found in stream
[2026-10-25 21:30:18,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:30:18,607.607 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 21:30:21,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:30:21,203.203 INFO    ] Checking for system updates...
[2026-10-25 21:30:21,243.243 INFO    ] 200
[2026-10-25 21:30:21,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:21,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:21,307.307 INFO    ] No update needed
[2026-10-25 21:30:21,309.309 INFO    ] Checking for camera pi updates...
[2026-10-25 21:30:21,343.343 INFO    ] 200
[2026-10-25 21:30:21,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:21,390.390 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:30:21,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:21,454.454 INFO    ] No camera update needed
[2026-10-25 21:30:21,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:30:21,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:30:21,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:30:21,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:30:23,510.510 INFO    ] ================================================
[2026-10-25 21:30:23,525.525 INFO    ] Launching Daemon at Sun Oct 25 21:30:23 IST 2026
[2026-10-25 21:30:23,535.535 INFO    ] ================================================
[2026-10-25 21:30:24,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:30:24
[2026-10-25 21:30:24,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:30:25,010.010 INFO    ] Initializing speech engine...
[2026-10-25 21:30:25,026.026 INFO    ] 2026-10-25 21:30:25
[2026-10-25 21:30:25,313.313 INFO    ] 2026-10-25 21:30:25
[2026-10-25 21:30:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:30:25,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:30:25,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:30:25,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:30:25,684.684 INFO    ] time= 25/10/2026 21:30:25
[2026-10-25 21:30:25,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:30:25,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:30:25,806.806 INFO    ] No existing commands found in stream
[2026-10-25 21:30:30,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:30:30,822.822 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 21:30:31,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:30:31,592.592 INFO    ] Checking for system updates...
[2026-10-25 21:30:31,628.628 INFO    ] 200
[2026-10-25 21:30:31,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:31,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:31,686.686 INFO    ] No update needed
[2026-10-25 21:30:31,688.688 INFO    ] Checking for camera pi updates...
[2026-10-25 21:30:31,725.725 INFO    ] 200
[2026-10-25 21:30:31,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:31,773.773 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:30:31,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:31,844.844 INFO    ] No camera update needed
[2026-10-25 21:30:31,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:30:31,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:30:31,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:30:31,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:30:33,899.899 INFO    ] ================================================
[2026-10-25 21:30:33,914.914 INFO    ] Launching Daemon at Sun Oct 25 21:30:33 IST 2026
[2026-10-25 21:30:33,925.925 INFO    ] ================================================
[2026-10-25 21:30:34,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:30:34
[2026-10-25 21:30:35,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:30:35,390.390 INFO    ] Initializing speech engine...
[2026-10-25 21:30:35,407.407 INFO    ] 2026-10-25 21:30:35
[2026-10-25 21:30:35,676.676 INFO    ] 2026-10-25 21:30:35
[2026-10-25 21:30:35,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:30:37,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:30:37,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:30:38,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:30:38,009.009 INFO    ] time= 25/10/2026 21:30:38
[2026-10-25 21:30:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:30:38,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:30:38,088.088 INFO    ] No existing commands found in stream
[2026-10-25 21:30:43,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:30:43,107.107 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 21:30:46,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:30:46,280.280 INFO    ] Checking for system updates...
[2026-10-25 21:30:46,319.319 INFO    ] 200
[2026-10-25 21:30:46,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:46,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:46,382.382 INFO    ] No update needed
[2026-10-25 21:30:46,385.385 INFO    ] Checking for camera pi updates...
[2026-10-25 21:30:46,422.422 INFO    ] 200
[2026-10-25 21:30:46,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:46,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:30:46,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:30:46,636.636 INFO    ] No camera update needed
[2026-10-25 21:30:46,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:30:46,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:30:46,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:30:46,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:30:48,692.692 INFO    ] ================================================
[2026-10-25 21:30:48,707.707 INFO    ] Launching Daemon at Sun Oct 25 21:30:48 IST 2026
[2026-10-25 21:30:48,719.719 INFO    ] ================================================
[2026-10-25 21:30:49,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:30:49
[2026-10-25 21:30:49,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:30:50,186.186 INFO    ] Initializing speech engine...
[2026-10-25 21:30:50,195.195 INFO    ] 2026-10-25 21:30:50
[2026-10-25 21:30:50,461.461 INFO    ] 2026-10-25 21:30:50
[2026-10-25 21:30:50,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:30:50,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:30:50,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:30:50,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:30:50,828.828 INFO    ] time= 25/10/2026 21:30:50
[2026-10-25 21:30:50,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:30:50,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:30:50,950.950 INFO    ] No existing commands found in stream
[2026-10-25 21:30:55,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:30:55,965.965 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 21:30:57,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:30:57,512.512 INFO    ] Checking for system updates...
[2026-10-25 21:30:57,549.549 INFO    ] 200
[2026-10-25 21:30:57,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:57,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:30:57,609.609 INFO    ] No update needed
[2026-10-25 21:30:57,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 21:30:57,649.649 INFO    ] 200
[2026-10-25 21:30:57,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:30:57,698.698 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:30:57,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:30:57,758.758 INFO    ] No camera update needed
[2026-10-25 21:30:57,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:30:57,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:30:57,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:30:57,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:30:59,815.815 INFO    ] ================================================
[2026-10-25 21:30:59,831.831 INFO    ] Launching Daemon at Sun Oct 25 21:30:59 IST 2026
[2026-10-25 21:30:59,841.841 INFO    ] ================================================
[2026-10-25 21:31:00,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:31:00
[2026-10-25 21:31:01,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:31:01,661.661 INFO    ] Initializing speech engine...
[2026-10-25 21:31:01,681.681 INFO    ] 2026-10-25 21:31:01
[2026-10-25 21:31:01,981.981 INFO    ] 2026-10-25 21:31:01
[2026-10-25 21:31:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:31:02,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:31:02,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:31:02,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:31:02,457.457 INFO    ] time= 25/10/2026 21:31:02
[2026-10-25 21:31:02,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:31:02,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:31:02,599.599 INFO    ] No existing commands found in stream
[2026-10-25 21:31:07,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:31:07,628.628 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 21:31:08,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:31:08,335.335 INFO    ] Checking for system updates...
[2026-10-25 21:31:08,372.372 INFO    ] 200
[2026-10-25 21:31:08,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:08,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:31:08,439.439 INFO    ] No update needed
[2026-10-25 21:31:08,442.442 INFO    ] Checking for camera pi updates...
[2026-10-25 21:31:08,480.480 INFO    ] 200
[2026-10-25 21:31:08,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:08,530.530 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:31:08,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:31:08,588.588 INFO    ] No camera update needed
[2026-10-25 21:31:08,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:31:08,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:31:08,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:31:08,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:31:10,649.649 INFO    ] ================================================
[2026-10-25 21:31:10,664.664 INFO    ] Launching Daemon at Sun Oct 25 21:31:10 IST 2026
[2026-10-25 21:31:10,675.675 INFO    ] ================================================
[2026-10-25 21:31:11,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:31:11
[2026-10-25 21:31:12,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:31:12,318.318 INFO    ] Initializing speech engine...
[2026-10-25 21:31:12,328.328 INFO    ] 2026-10-25 21:31:12
[2026-10-25 21:31:12,617.617 INFO    ] 2026-10-25 21:31:12
[2026-10-25 21:31:12,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:31:12,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:31:12,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:31:13,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:31:13,116.116 INFO    ] time= 25/10/2026 21:31:13
[2026-10-25 21:31:13,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:31:13,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:31:13,317.317 INFO    ] No existing commands found in stream
[2026-10-25 21:31:18,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:31:18,339.339 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-25 21:31:21,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:31:21,246.246 INFO    ] Checking for system updates...
[2026-10-25 21:31:21,287.287 INFO    ] 200
[2026-10-25 21:31:21,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:21,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:21,352.352 INFO    ] No update needed
[2026-10-25 21:31:21,354.354 INFO    ] Checking for camera pi updates...
[2026-10-25 21:31:21,388.388 INFO    ] 200
[2026-10-25 21:31:21,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:21,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:31:21,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:21,495.495 INFO    ] No camera update needed
[2026-10-25 21:31:21,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:31:21,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:31:21,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:31:21,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:31:23,553.553 INFO    ] ================================================
[2026-10-25 21:31:23,567.567 INFO    ] Launching Daemon at Sun Oct 25 21:31:23 IST 2026
[2026-10-25 21:31:23,578.578 INFO    ] ================================================
[2026-10-25 21:31:24,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:31:24
[2026-10-25 21:31:24,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:31:25,043.043 INFO    ] Initializing speech engine...
[2026-10-25 21:31:25,063.063 INFO    ] 2026-10-25 21:31:25
[2026-10-25 21:31:25,348.348 INFO    ] 2026-10-25 21:31:25
[2026-10-25 21:31:25,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:31:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:31:25,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:31:25,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:31:25,848.848 INFO    ] time= 25/10/2026 21:31:25
[2026-10-25 21:31:25,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:31:25,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:31:25,955.955 INFO    ] No existing commands found in stream
[2026-10-25 21:31:30,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:31:30,969.969 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-25 21:31:32,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:31:32,751.751 INFO    ] Checking for system updates...
[2026-10-25 21:31:32,787.787 INFO    ] 200
[2026-10-25 21:31:32,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:32,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:32,845.845 INFO    ] No update needed
[2026-10-25 21:31:32,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 21:31:32,881.881 INFO    ] 200
[2026-10-25 21:31:32,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:32,930.930 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:31:32,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:32,966.966 INFO    ] No camera update needed
[2026-10-25 21:31:32,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:31:32,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:31:32,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:31:32,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:31:35,023.023 INFO    ] ================================================
[2026-10-25 21:31:35,038.038 INFO    ] Launching Daemon at Sun Oct 25 21:31:35 IST 2026
[2026-10-25 21:31:35,049.049 INFO    ] ================================================
[2026-10-25 21:31:35,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:31:35
[2026-10-25 21:31:36,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:31:36,460.460 INFO    ] Initializing speech engine...
[2026-10-25 21:31:36,483.483 INFO    ] 2026-10-25 21:31:36
[2026-10-25 21:31:36,741.741 INFO    ] 2026-10-25 21:31:36
[2026-10-25 21:31:36,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:31:37,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:31:37,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:31:37,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:31:37,943.943 INFO    ] time= 25/10/2026 21:31:37
[2026-10-25 21:31:37,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:31:38,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:31:38,134.134 INFO    ] No existing commands found in stream
[2026-10-25 21:31:43,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:31:43,156.156 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 21:31:46,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:31:46,160.160 INFO    ] Checking for system updates...
[2026-10-25 21:31:46,196.196 INFO    ] 200
[2026-10-25 21:31:46,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:46,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:46,256.256 INFO    ] No update needed
[2026-10-25 21:31:46,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 21:31:46,293.293 INFO    ] 200
[2026-10-25 21:31:46,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:46,342.342 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:31:46,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:46,417.417 INFO    ] No camera update needed
[2026-10-25 21:31:46,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:31:46,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:31:46,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:31:46,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:31:48,474.474 INFO    ] ================================================
[2026-10-25 21:31:48,489.489 INFO    ] Launching Daemon at Sun Oct 25 21:31:48 IST 2026
[2026-10-25 21:31:48,500.500 INFO    ] ================================================
[2026-10-25 21:31:49,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:31:49
[2026-10-25 21:31:49,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:31:49,949.949 INFO    ] Initializing speech engine...
[2026-10-25 21:31:49,958.958 INFO    ] 2026-10-25 21:31:49
[2026-10-25 21:31:50,206.206 INFO    ] 2026-10-25 21:31:50
[2026-10-25 21:31:50,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:31:50,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:31:50,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:31:50,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:31:50,582.582 INFO    ] time= 25/10/2026 21:31:50
[2026-10-25 21:31:50,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:31:50,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:31:50,747.747 INFO    ] No existing commands found in stream
[2026-10-25 21:31:55,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:31:55,775.775 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 21:31:59,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:31:59,435.435 INFO    ] Checking for system updates...
[2026-10-25 21:31:59,475.475 INFO    ] 200
[2026-10-25 21:31:59,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:59,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:59,534.534 INFO    ] No update needed
[2026-10-25 21:31:59,536.536 INFO    ] Checking for camera pi updates...
[2026-10-25 21:31:59,573.573 INFO    ] 200
[2026-10-25 21:31:59,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:31:59,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:31:59,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:31:59,672.672 INFO    ] No camera update needed
[2026-10-25 21:31:59,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:31:59,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:31:59,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:31:59,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:32:01,734.734 INFO    ] ================================================
[2026-10-25 21:32:01,759.759 INFO    ] Launching Daemon at Sun Oct 25 21:32:01 IST 2026
[2026-10-25 21:32:01,774.774 INFO    ] ================================================
[2026-10-25 21:32:02,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:32:02
[2026-10-25 21:32:03,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:32:03,527.527 INFO    ] Initializing speech engine...
[2026-10-25 21:32:03,540.540 INFO    ] 2026-10-25 21:32:03
[2026-10-25 21:32:03,805.805 INFO    ] 2026-10-25 21:32:03
[2026-10-25 21:32:03,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:32:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:32:04,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:32:04,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:32:04,190.190 INFO    ] time= 25/10/2026 21:32:04
[2026-10-25 21:32:04,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:32:04,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:32:04,298.298 INFO    ] No existing commands found in stream
[2026-10-25 21:32:09,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:32:09,316.316 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 21:32:13,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:32:13,471.471 INFO    ] Checking for system updates...
[2026-10-25 21:32:13,515.515 INFO    ] 200
[2026-10-25 21:32:13,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:13,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:13,575.575 INFO    ] No update needed
[2026-10-25 21:32:13,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 21:32:13,616.616 INFO    ] 200
[2026-10-25 21:32:13,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:13,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:32:13,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:13,706.706 INFO    ] No camera update needed
[2026-10-25 21:32:13,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:32:13,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:32:13,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:32:13,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:32:15,762.762 INFO    ] ================================================
[2026-10-25 21:32:15,777.777 INFO    ] Launching Daemon at Sun Oct 25 21:32:15 IST 2026
[2026-10-25 21:32:15,787.787 INFO    ] ================================================
[2026-10-25 21:32:16,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:32:16
[2026-10-25 21:32:17,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:32:17,317.317 INFO    ] Initializing speech engine...
[2026-10-25 21:32:17,326.326 INFO    ] 2026-10-25 21:32:17
[2026-10-25 21:32:17,609.609 INFO    ] 2026-10-25 21:32:17
[2026-10-25 21:32:17,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:32:17,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:32:17,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:32:18,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:32:18,056.056 INFO    ] time= 25/10/2026 21:32:18
[2026-10-25 21:32:18,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:32:18,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:32:18,199.199 INFO    ] No existing commands found in stream
[2026-10-25 21:32:23,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:32:23,224.224 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-25 21:32:26,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:32:26,643.643 INFO    ] Checking for system updates...
[2026-10-25 21:32:26,683.683 INFO    ] 200
[2026-10-25 21:32:26,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:26,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:26,747.747 INFO    ] No update needed
[2026-10-25 21:32:26,749.749 INFO    ] Checking for camera pi updates...
[2026-10-25 21:32:26,787.787 INFO    ] 200
[2026-10-25 21:32:26,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:26,831.831 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:32:26,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:26,881.881 INFO    ] No camera update needed
[2026-10-25 21:32:26,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:32:26,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:32:26,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:32:26,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:32:28,935.935 INFO    ] ================================================
[2026-10-25 21:32:28,950.950 INFO    ] Launching Daemon at Sun Oct 25 21:32:28 IST 2026
[2026-10-25 21:32:28,961.961 INFO    ] ================================================
[2026-10-25 21:32:29,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:32:29
[2026-10-25 21:32:30,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:32:30,380.380 INFO    ] Initializing speech engine...
[2026-10-25 21:32:30,388.388 INFO    ] 2026-10-25 21:32:30
[2026-10-25 21:32:30,659.659 INFO    ] 2026-10-25 21:32:30
[2026-10-25 21:32:30,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:32:30,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:32:30,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:32:31,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:32:31,101.101 INFO    ] time= 25/10/2026 21:32:31
[2026-10-25 21:32:31,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:32:31,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:32:31,225.225 INFO    ] No existing commands found in stream
[2026-10-25 21:32:36,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:32:36,253.253 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 21:32:38,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:32:38,042.042 INFO    ] Checking for system updates...
[2026-10-25 21:32:38,083.083 INFO    ] 200
[2026-10-25 21:32:38,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:38,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:32:38,142.142 INFO    ] No update needed
[2026-10-25 21:32:38,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 21:32:38,189.189 INFO    ] 200
[2026-10-25 21:32:38,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:38,233.233 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:32:38,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:32:38,337.337 INFO    ] No camera update needed
[2026-10-25 21:32:38,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:32:38,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:32:38,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:32:38,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:32:40,398.398 INFO    ] ================================================
[2026-10-25 21:32:40,414.414 INFO    ] Launching Daemon at Sun Oct 25 21:32:40 IST 2026
[2026-10-25 21:32:40,425.425 INFO    ] ================================================
[2026-10-25 21:32:41,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:32:41
[2026-10-25 21:32:41,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:32:42,077.077 INFO    ] Initializing speech engine...
[2026-10-25 21:32:42,090.090 INFO    ] 2026-10-25 21:32:42
[2026-10-25 21:32:42,401.401 INFO    ] 2026-10-25 21:32:42
[2026-10-25 21:32:42,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:32:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:32:42,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:32:42,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:32:42,973.973 INFO    ] time= 25/10/2026 21:32:42
[2026-10-25 21:32:42,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:32:43,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:32:43,148.148 INFO    ] No existing commands found in stream
[2026-10-25 21:32:48,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:32:48,184.184 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 21:32:48,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:32:48,676.676 INFO    ] Checking for system updates...
[2026-10-25 21:32:48,717.717 INFO    ] 200
[2026-10-25 21:32:48,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:48,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:48,774.774 INFO    ] No update needed
[2026-10-25 21:32:48,777.777 INFO    ] Checking for camera pi updates...
[2026-10-25 21:32:48,816.816 INFO    ] 200
[2026-10-25 21:32:48,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:32:48,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:32:49,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:32:49,029.029 INFO    ] No camera update needed
[2026-10-25 21:32:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:32:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:32:49,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:32:49,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:32:51,085.085 INFO    ] ================================================
[2026-10-25 21:32:51,101.101 INFO    ] Launching Daemon at Sun Oct 25 21:32:51 IST 2026
[2026-10-25 21:32:51,112.112 INFO    ] ================================================
[2026-10-25 21:32:51,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:32:51
[2026-10-25 21:32:52,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:32:52,556.556 INFO    ] Initializing speech engine...
[2026-10-25 21:32:52,563.563 INFO    ] 2026-10-25 21:32:52
[2026-10-25 21:32:52,871.871 INFO    ] 2026-10-25 21:32:52
[2026-10-25 21:32:52,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:32:53,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:32:53,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:32:53,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:32:53,278.278 INFO    ] time= 25/10/2026 21:32:53
[2026-10-25 21:32:53,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:32:53,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:32:53,388.388 INFO    ] No existing commands found in stream
[2026-10-25 21:32:58,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:32:58,403.403 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 21:33:02,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:33:02,591.591 INFO    ] Checking for system updates...
[2026-10-25 21:33:02,647.647 INFO    ] 200
[2026-10-25 21:33:02,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:02,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:33:02,733.733 INFO    ] No update needed
[2026-10-25 21:33:02,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 21:33:02,796.796 INFO    ] 200
[2026-10-25 21:33:02,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:02,865.865 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:33:02,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:33:02,916.916 INFO    ] No camera update needed
[2026-10-25 21:33:02,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:33:02,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:33:02,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:33:02,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:33:04,987.987 INFO    ] ================================================
[2026-10-25 21:33:05,003.003 INFO    ] Launching Daemon at Sun Oct 25 21:33:04 IST 2026
[2026-10-25 21:33:05,014.014 INFO    ] ================================================
[2026-10-25 21:33:05,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:33:05
[2026-10-25 21:33:06,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:33:06,715.715 INFO    ] Initializing speech engine...
[2026-10-25 21:33:06,726.726 INFO    ] 2026-10-25 21:33:06
[2026-10-25 21:33:07,006.006 INFO    ] 2026-10-25 21:33:06
[2026-10-25 21:33:07,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:33:08,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:33:08,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:33:08,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:33:08,235.235 INFO    ] time= 25/10/2026 21:33:08
[2026-10-25 21:33:08,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:33:08,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:33:08,365.365 INFO    ] No existing commands found in stream
[2026-10-25 21:33:13,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:33:13,381.381 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 21:33:14,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:33:14,108.108 INFO    ] Checking for system updates...
[2026-10-25 21:33:14,146.146 INFO    ] 200
[2026-10-25 21:33:14,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:14,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:14,206.206 INFO    ] No update needed
[2026-10-25 21:33:14,209.209 INFO    ] Checking for camera pi updates...
[2026-10-25 21:33:14,247.247 INFO    ] 200
[2026-10-25 21:33:14,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:14,295.295 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:33:14,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:14,349.349 INFO    ] No camera update needed
[2026-10-25 21:33:14,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:33:14,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:33:14,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:33:14,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:33:16,404.404 INFO    ] ================================================
[2026-10-25 21:33:16,419.419 INFO    ] Launching Daemon at Sun Oct 25 21:33:16 IST 2026
[2026-10-25 21:33:16,430.430 INFO    ] ================================================
[2026-10-25 21:33:17,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:33:17
[2026-10-25 21:33:17,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:33:17,835.835 INFO    ] Initializing speech engine...
[2026-10-25 21:33:17,841.841 INFO    ] 2026-10-25 21:33:17
[2026-10-25 21:33:18,143.143 INFO    ] 2026-10-25 21:33:18
[2026-10-25 21:33:18,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:33:18,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:33:18,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:33:18,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:33:18,523.523 INFO    ] time= 25/10/2026 21:33:18
[2026-10-25 21:33:18,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:33:18,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:33:18,648.648 INFO    ] No existing commands found in stream
[2026-10-25 21:33:23,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:33:23,663.663 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 21:33:27,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:33:27,827.827 INFO    ] Checking for system updates...
[2026-10-25 21:33:27,863.863 INFO    ] 200
[2026-10-25 21:33:27,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:27,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:27,931.931 INFO    ] No update needed
[2026-10-25 21:33:27,933.933 INFO    ] Checking for camera pi updates...
[2026-10-25 21:33:27,972.972 INFO    ] 200
[2026-10-25 21:33:27,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:28,022.022 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:33:28,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:28,079.079 INFO    ] No camera update needed
[2026-10-25 21:33:28,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:33:28,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:33:28,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:33:28,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:33:30,138.138 INFO    ] ================================================
[2026-10-25 21:33:30,154.154 INFO    ] Launching Daemon at Sun Oct 25 21:33:30 IST 2026
[2026-10-25 21:33:30,164.164 INFO    ] ================================================
[2026-10-25 21:33:30,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:33:30
[2026-10-25 21:33:31,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:33:31,641.641 INFO    ] Initializing speech engine...
[2026-10-25 21:33:31,651.651 INFO    ] 2026-10-25 21:33:31
[2026-10-25 21:33:31,918.918 INFO    ] 2026-10-25 21:33:31
[2026-10-25 21:33:31,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:33:32,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:33:32,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:33:32,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:33:32,423.423 INFO    ] time= 25/10/2026 21:33:32
[2026-10-25 21:33:32,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:33:32,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:33:32,655.655 INFO    ] No existing commands found in stream
[2026-10-25 21:33:37,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:33:37,675.675 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 21:33:41,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:33:41,329.329 INFO    ] Checking for system updates...
[2026-10-25 21:33:41,369.369 INFO    ] 200
[2026-10-25 21:33:41,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:41,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:41,438.438 INFO    ] No update needed
[2026-10-25 21:33:41,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 21:33:41,475.475 INFO    ] 200
[2026-10-25 21:33:41,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:41,524.524 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:33:41,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:33:41,577.577 INFO    ] No camera update needed
[2026-10-25 21:33:41,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:33:41,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:33:41,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:33:41,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:33:43,632.632 INFO    ] ================================================
[2026-10-25 21:33:43,648.648 INFO    ] Launching Daemon at Sun Oct 25 21:33:43 IST 2026
[2026-10-25 21:33:43,659.659 INFO    ] ================================================
[2026-10-25 21:33:44,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:33:44
[2026-10-25 21:33:44,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:33:45,237.237 INFO    ] Initializing speech engine...
[2026-10-25 21:33:45,243.243 INFO    ] 2026-10-25 21:33:45
[2026-10-25 21:33:45,512.512 INFO    ] 2026-10-25 21:33:45
[2026-10-25 21:33:45,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:33:45,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:33:45,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:33:45,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:33:46,014.014 INFO    ] time= 25/10/2026 21:33:45
[2026-10-25 21:33:46,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:33:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:33:46,204.204 INFO    ] No existing commands found in stream
[2026-10-25 21:33:51,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:33:51,234.234 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 21:33:54,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:33:54,194.194 INFO    ] Checking for system updates...
[2026-10-25 21:33:54,231.231 INFO    ] 200
[2026-10-25 21:33:54,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:54,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:33:54,296.296 INFO    ] No update needed
[2026-10-25 21:33:54,298.298 INFO    ] Checking for camera pi updates...
[2026-10-25 21:33:54,338.338 INFO    ] 200
[2026-10-25 21:33:54,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:33:54,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:33:54,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:33:54,434.434 INFO    ] No camera update needed
[2026-10-25 21:33:54,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:33:54,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:33:54,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:33:54,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:33:56,489.489 INFO    ] ================================================
[2026-10-25 21:33:56,505.505 INFO    ] Launching Daemon at Sun Oct 25 21:33:56 IST 2026
[2026-10-25 21:33:56,517.517 INFO    ] ================================================
[2026-10-25 21:33:57,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:33:57
[2026-10-25 21:33:57,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:33:58,084.084 INFO    ] Initializing speech engine...
[2026-10-25 21:33:58,093.093 INFO    ] 2026-10-25 21:33:58
[2026-10-25 21:33:58,373.373 INFO    ] 2026-10-25 21:33:58
[2026-10-25 21:33:58,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:33:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:33:58,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:33:58,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:33:58,907.907 INFO    ] time= 25/10/2026 21:33:58
[2026-10-25 21:33:58,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:33:58,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:33:59,052.052 INFO    ] No existing commands found in stream
[2026-10-25 21:34:04,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:34:04,077.077 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 21:34:07,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:34:07,844.844 INFO    ] Checking for system updates...
[2026-10-25 21:34:07,886.886 INFO    ] 200
[2026-10-25 21:34:07,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:07,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:07,944.944 INFO    ] No update needed
[2026-10-25 21:34:07,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 21:34:07,981.981 INFO    ] 200
[2026-10-25 21:34:07,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:08,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:34:08,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:08,081.081 INFO    ] No camera update needed
[2026-10-25 21:34:08,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:34:08,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:34:08,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:34:08,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:34:10,136.136 INFO    ] ================================================
[2026-10-25 21:34:10,152.152 INFO    ] Launching Daemon at Sun Oct 25 21:34:10 IST 2026
[2026-10-25 21:34:10,163.163 INFO    ] ================================================
[2026-10-25 21:34:10,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:34:10
[2026-10-25 21:34:11,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:34:11,614.614 INFO    ] Initializing speech engine...
[2026-10-25 21:34:11,622.622 INFO    ] 2026-10-25 21:34:11
[2026-10-25 21:34:11,882.882 INFO    ] 2026-10-25 21:34:11
[2026-10-25 21:34:11,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:34:12,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:34:12,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:34:12,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:34:12,381.381 INFO    ] time= 25/10/2026 21:34:12
[2026-10-25 21:34:12,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:34:12,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:34:12,576.576 INFO    ] No existing commands found in stream
[2026-10-25 21:34:17,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:34:17,602.602 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 21:34:19,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:34:19,233.233 INFO    ] Checking for system updates...
[2026-10-25 21:34:19,272.272 INFO    ] 200
[2026-10-25 21:34:19,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:19,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:19,329.329 INFO    ] No update needed
[2026-10-25 21:34:19,332.332 INFO    ] Checking for camera pi updates...
[2026-10-25 21:34:19,366.366 INFO    ] 200
[2026-10-25 21:34:19,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:19,417.417 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:34:19,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:19,478.478 INFO    ] No camera update needed
[2026-10-25 21:34:19,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:34:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:34:19,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:34:19,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:34:21,535.535 INFO    ] ================================================
[2026-10-25 21:34:21,551.551 INFO    ] Launching Daemon at Sun Oct 25 21:34:21 IST 2026
[2026-10-25 21:34:21,561.561 INFO    ] ================================================
[2026-10-25 21:34:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:34:22
[2026-10-25 21:34:22,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:34:23,161.161 INFO    ] Initializing speech engine...
[2026-10-25 21:34:23,175.175 INFO    ] 2026-10-25 21:34:23
[2026-10-25 21:34:23,462.462 INFO    ] 2026-10-25 21:34:23
[2026-10-25 21:34:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:34:23,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:34:23,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:34:23,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:34:23,944.944 INFO    ] time= 25/10/2026 21:34:23
[2026-10-25 21:34:24,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:34:24,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:34:24,123.123 INFO    ] No existing commands found in stream
[2026-10-25 21:34:29,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:34:29,148.148 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-25 21:34:33,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:34:33,430.430 INFO    ] Checking for system updates...
[2026-10-25 21:34:33,469.469 INFO    ] 200
[2026-10-25 21:34:33,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:33,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:34:33,528.528 INFO    ] No update needed
[2026-10-25 21:34:33,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 21:34:33,567.567 INFO    ] 200
[2026-10-25 21:34:33,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:33,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:34:33,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:34:33,673.673 INFO    ] No camera update needed
[2026-10-25 21:34:33,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:34:33,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:34:33,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:34:33,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:34:35,727.727 INFO    ] ================================================
[2026-10-25 21:34:35,743.743 INFO    ] Launching Daemon at Sun Oct 25 21:34:35 IST 2026
[2026-10-25 21:34:35,753.753 INFO    ] ================================================
[2026-10-25 21:34:36,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:34:36
[2026-10-25 21:34:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:34:37,224.224 INFO    ] Initializing speech engine...
[2026-10-25 21:34:37,230.230 INFO    ] 2026-10-25 21:34:37
[2026-10-25 21:34:37,528.528 INFO    ] 2026-10-25 21:34:37
[2026-10-25 21:34:37,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:34:37,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:34:37,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:34:38,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:34:38,149.149 INFO    ] time= 25/10/2026 21:34:38
[2026-10-25 21:34:38,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:34:38,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:34:38,319.319 INFO    ] No existing commands found in stream
[2026-10-25 21:34:43,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:34:43,334.334 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 21:34:46,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:34:46,782.782 INFO    ] Checking for system updates...
[2026-10-25 21:34:46,820.820 INFO    ] 200
[2026-10-25 21:34:46,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:46,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:46,883.883 INFO    ] No update needed
[2026-10-25 21:34:46,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 21:34:46,919.919 INFO    ] 200
[2026-10-25 21:34:46,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:46,962.962 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:34:47,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:34:47,013.013 INFO    ] No camera update needed
[2026-10-25 21:34:47,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:34:47,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:34:47,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:34:47,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:34:49,071.071 INFO    ] ================================================
[2026-10-25 21:34:49,091.091 INFO    ] Launching Daemon at Sun Oct 25 21:34:49 IST 2026
[2026-10-25 21:34:49,102.102 INFO    ] ================================================
[2026-10-25 21:34:49,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:34:49
[2026-10-25 21:34:50,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:34:50,522.522 INFO    ] Initializing speech engine...
[2026-10-25 21:34:50,542.542 INFO    ] 2026-10-25 21:34:50
[2026-10-25 21:34:50,793.793 INFO    ] 2026-10-25 21:34:50
[2026-10-25 21:34:50,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:34:51,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:34:51,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:34:51,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:34:51,169.169 INFO    ] time= 25/10/2026 21:34:51
[2026-10-25 21:34:51,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:34:51,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:34:51,324.324 INFO    ] No existing commands found in stream
[2026-10-25 21:34:56,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:34:56,352.352 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 21:34:57,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:34:57,093.093 INFO    ] Checking for system updates...
[2026-10-25 21:34:57,129.129 INFO    ] 200
[2026-10-25 21:34:57,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:57,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:34:57,194.194 INFO    ] No update needed
[2026-10-25 21:34:57,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 21:34:57,235.235 INFO    ] 200
[2026-10-25 21:34:57,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:34:57,282.282 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:34:57,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:34:57,445.445 INFO    ] No camera update needed
[2026-10-25 21:34:57,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:34:57,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:34:57,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:34:57,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:34:59,502.502 INFO    ] ================================================
[2026-10-25 21:34:59,517.517 INFO    ] Launching Daemon at Sun Oct 25 21:34:59 IST 2026
[2026-10-25 21:34:59,528.528 INFO    ] ================================================
[2026-10-25 21:35:00,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:35:00
[2026-10-25 21:35:00,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:35:01,025.025 INFO    ] Initializing speech engine...
[2026-10-25 21:35:01,037.037 INFO    ] 2026-10-25 21:35:01
[2026-10-25 21:35:01,323.323 INFO    ] 2026-10-25 21:35:01
[2026-10-25 21:35:01,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:35:01,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:35:01,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:35:01,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:35:01,704.704 INFO    ] time= 25/10/2026 21:35:01
[2026-10-25 21:35:01,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:35:01,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:35:01,848.848 INFO    ] No existing commands found in stream
[2026-10-25 21:35:06,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:35:06,863.863 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 21:35:09,164.164 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:35:09,166.166 INFO    ] Checking for system updates...
[2026-10-25 21:35:09,203.203 INFO    ] 200
[2026-10-25 21:35:09,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:09,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:35:09,268.268 INFO    ] No update needed
[2026-10-25 21:35:09,271.271 INFO    ] Checking for camera pi updates...
[2026-10-25 21:35:09,308.308 INFO    ] 200
[2026-10-25 21:35:09,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:09,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:35:09,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:35:09,414.414 INFO    ] No camera update needed
[2026-10-25 21:35:09,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:35:09,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:35:09,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:35:09,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:35:11,470.470 INFO    ] ================================================
[2026-10-25 21:35:11,485.485 INFO    ] Launching Daemon at Sun Oct 25 21:35:11 IST 2026
[2026-10-25 21:35:11,496.496 INFO    ] ================================================
[2026-10-25 21:35:12,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:35:12
[2026-10-25 21:35:12,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:35:12,981.981 INFO    ] Initializing speech engine...
[2026-10-25 21:35:12,984.984 INFO    ] 2026-10-25 21:35:12
[2026-10-25 21:35:13,245.245 INFO    ] 2026-10-25 21:35:13
[2026-10-25 21:35:13,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:35:13,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:35:13,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:35:13,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:35:13,606.606 INFO    ] time= 25/10/2026 21:35:13
[2026-10-25 21:35:13,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:35:13,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:35:13,773.773 INFO    ] No existing commands found in stream
[2026-10-25 21:35:18,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:35:18,806.806 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 21:35:19,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:35:19,329.329 INFO    ] Checking for system updates...
[2026-10-25 21:35:19,365.365 INFO    ] 200
[2026-10-25 21:35:19,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:19,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:19,429.429 INFO    ] No update needed
[2026-10-25 21:35:19,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 21:35:19,466.466 INFO    ] 200
[2026-10-25 21:35:19,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:19,510.510 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:35:19,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:19,565.565 INFO    ] No camera update needed
[2026-10-25 21:35:19,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:35:19,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:35:19,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:35:19,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:35:21,619.619 INFO    ] ================================================
[2026-10-25 21:35:21,635.635 INFO    ] Launching Daemon at Sun Oct 25 21:35:21 IST 2026
[2026-10-25 21:35:21,645.645 INFO    ] ================================================
[2026-10-25 21:35:22,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:35:22
[2026-10-25 21:35:22,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:35:23,071.071 INFO    ] Initializing speech engine...
[2026-10-25 21:35:23,078.078 INFO    ] 2026-10-25 21:35:23
[2026-10-25 21:35:23,379.379 INFO    ] 2026-10-25 21:35:23
[2026-10-25 21:35:23,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:35:23,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:35:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:35:23,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:35:23,813.813 INFO    ] time= 25/10/2026 21:35:23
[2026-10-25 21:35:23,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:35:23,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:35:23,979.979 INFO    ] No existing commands found in stream
[2026-10-25 21:35:29,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:35:29,006.006 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 21:35:29,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:35:29,741.741 INFO    ] Checking for system updates...
[2026-10-25 21:35:29,776.776 INFO    ] 200
[2026-10-25 21:35:29,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:29,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:35:29,840.840 INFO    ] No update needed
[2026-10-25 21:35:29,843.843 INFO    ] Checking for camera pi updates...
[2026-10-25 21:35:29,876.876 INFO    ] 200
[2026-10-25 21:35:29,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:29,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:35:29,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:35:29,988.988 INFO    ] No camera update needed
[2026-10-25 21:35:29,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:35:29,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:35:29,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:35:30,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:35:32,047.047 INFO    ] ================================================
[2026-10-25 21:35:32,064.064 INFO    ] Launching Daemon at Sun Oct 25 21:35:32 IST 2026
[2026-10-25 21:35:32,075.075 INFO    ] ================================================
[2026-10-25 21:35:32,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:35:32
[2026-10-25 21:35:33,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:35:33,742.742 INFO    ] Initializing speech engine...
[2026-10-25 21:35:33,750.750 INFO    ] 2026-10-25 21:35:33
[2026-10-25 21:35:34,017.017 INFO    ] 2026-10-25 21:35:34
[2026-10-25 21:35:34,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:35:34,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:35:34,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:35:34,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:35:34,492.492 INFO    ] time= 25/10/2026 21:35:34
[2026-10-25 21:35:34,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:35:34,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:35:34,711.711 INFO    ] No existing commands found in stream
[2026-10-25 21:35:39,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:35:39,744.744 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-25 21:35:43,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:35:43,906.906 INFO    ] Checking for system updates...
[2026-10-25 21:35:43,947.947 INFO    ] 200
[2026-10-25 21:35:43,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:44,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:44,006.006 INFO    ] No update needed
[2026-10-25 21:35:44,009.009 INFO    ] Checking for camera pi updates...
[2026-10-25 21:35:44,043.043 INFO    ] 200
[2026-10-25 21:35:44,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:44,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:35:44,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:44,148.148 INFO    ] No camera update needed
[2026-10-25 21:35:44,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:35:44,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:35:44,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:35:44,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:35:46,207.207 INFO    ] ================================================
[2026-10-25 21:35:46,222.222 INFO    ] Launching Daemon at Sun Oct 25 21:35:46 IST 2026
[2026-10-25 21:35:46,233.233 INFO    ] ================================================
[2026-10-25 21:35:46,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:35:46
[2026-10-25 21:35:47,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:35:47,633.633 INFO    ] Initializing speech engine...
[2026-10-25 21:35:47,640.640 INFO    ] 2026-10-25 21:35:47
[2026-10-25 21:35:47,937.937 INFO    ] 2026-10-25 21:35:47
[2026-10-25 21:35:47,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:35:48,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:35:48,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:35:48,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:35:48,367.367 INFO    ] time= 25/10/2026 21:35:48
[2026-10-25 21:35:48,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:35:48,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:35:48,507.507 INFO    ] No existing commands found in stream
[2026-10-25 21:35:53,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:35:53,545.545 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 21:35:57,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:35:57,511.511 INFO    ] Checking for system updates...
[2026-10-25 21:35:57,546.546 INFO    ] 200
[2026-10-25 21:35:57,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:57,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:57,604.604 INFO    ] No update needed
[2026-10-25 21:35:57,606.606 INFO    ] Checking for camera pi updates...
[2026-10-25 21:35:57,644.644 INFO    ] 200
[2026-10-25 21:35:57,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:35:57,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:35:57,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:35:57,746.746 INFO    ] No camera update needed
[2026-10-25 21:35:57,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:35:57,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:35:57,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:35:57,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:35:59,802.802 INFO    ] ================================================
[2026-10-25 21:35:59,819.819 INFO    ] Launching Daemon at Sun Oct 25 21:35:59 IST 2026
[2026-10-25 21:35:59,830.830 INFO    ] ================================================
[2026-10-25 21:36:00,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:36:00
[2026-10-25 21:36:01,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:36:01,299.299 INFO    ] Initializing speech engine...
[2026-10-25 21:36:01,305.305 INFO    ] 2026-10-25 21:36:01
[2026-10-25 21:36:01,550.550 INFO    ] 2026-10-25 21:36:01
[2026-10-25 21:36:01,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:36:01,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:36:01,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:36:01,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:36:01,918.918 INFO    ] time= 25/10/2026 21:36:01
[2026-10-25 21:36:01,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:36:01,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:36:02,061.061 INFO    ] No existing commands found in stream
[2026-10-25 21:36:07,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:36:07,075.075 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 21:36:09,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:36:09,106.106 INFO    ] Checking for system updates...
[2026-10-25 21:36:09,145.145 INFO    ] 200
[2026-10-25 21:36:09,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:09,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:36:09,203.203 INFO    ] No update needed
[2026-10-25 21:36:09,206.206 INFO    ] Checking for camera pi updates...
[2026-10-25 21:36:09,240.240 INFO    ] 200
[2026-10-25 21:36:09,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:09,283.283 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:36:09,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:36:09,324.324 INFO    ] No camera update needed
[2026-10-25 21:36:09,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:36:09,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:36:09,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:36:09,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:36:11,381.381 INFO    ] ================================================
[2026-10-25 21:36:11,396.396 INFO    ] Launching Daemon at Sun Oct 25 21:36:11 IST 2026
[2026-10-25 21:36:11,406.406 INFO    ] ================================================
[2026-10-25 21:36:12,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:36:12
[2026-10-25 21:36:12,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:36:12,944.944 INFO    ] Initializing speech engine...
[2026-10-25 21:36:12,957.957 INFO    ] 2026-10-25 21:36:12
[2026-10-25 21:36:13,236.236 INFO    ] 2026-10-25 21:36:13
[2026-10-25 21:36:13,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:36:13,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:36:13,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:36:13,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:36:13,779.779 INFO    ] time= 25/10/2026 21:36:13
[2026-10-25 21:36:13,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:36:13,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:36:13,919.919 INFO    ] No existing commands found in stream
[2026-10-25 21:36:18,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:36:18,945.945 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 21:36:22,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:36:22,355.355 INFO    ] Checking for system updates...
[2026-10-25 21:36:22,392.392 INFO    ] 200
[2026-10-25 21:36:22,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:22,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:36:22,453.453 INFO    ] No update needed
[2026-10-25 21:36:22,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 21:36:22,490.490 INFO    ] 200
[2026-10-25 21:36:22,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:22,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:36:22,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:36:22,604.604 INFO    ] No camera update needed
[2026-10-25 21:36:22,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:36:22,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:36:22,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:36:22,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:36:24,665.665 INFO    ] ================================================
[2026-10-25 21:36:24,680.680 INFO    ] Launching Daemon at Sun Oct 25 21:36:24 IST 2026
[2026-10-25 21:36:24,691.691 INFO    ] ================================================
[2026-10-25 21:36:25,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:36:25
[2026-10-25 21:36:25,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:36:26,086.086 INFO    ] Initializing speech engine...
[2026-10-25 21:36:26,108.108 INFO    ] 2026-10-25 21:36:26
[2026-10-25 21:36:26,360.360 INFO    ] 2026-10-25 21:36:26
[2026-10-25 21:36:26,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:36:26,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:36:26,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:36:26,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:36:26,831.831 INFO    ] time= 25/10/2026 21:36:26
[2026-10-25 21:36:26,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:36:26,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:36:26,976.976 INFO    ] No existing commands found in stream
[2026-10-25 21:36:31,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:36:31,991.991 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-25 21:36:33,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:36:33,877.877 INFO    ] Checking for system updates...
[2026-10-25 21:36:33,912.912 INFO    ] 200
[2026-10-25 21:36:33,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:33,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:36:33,979.979 INFO    ] No update needed
[2026-10-25 21:36:33,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 21:36:34,027.027 INFO    ] 200
[2026-10-25 21:36:34,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:34,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:36:34,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:36:34,124.124 INFO    ] No camera update needed
[2026-10-25 21:36:34,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:36:34,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:36:34,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:36:34,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:36:36,187.187 INFO    ] ================================================
[2026-10-25 21:36:36,205.205 INFO    ] Launching Daemon at Sun Oct 25 21:36:36 IST 2026
[2026-10-25 21:36:36,217.217 INFO    ] ================================================
[2026-10-25 21:36:36,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:36:36
[2026-10-25 21:36:37,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:36:37,635.635 INFO    ] Initializing speech engine...
[2026-10-25 21:36:37,643.643 INFO    ] 2026-10-25 21:36:37
[2026-10-25 21:36:37,889.889 INFO    ] 2026-10-25 21:36:37
[2026-10-25 21:36:37,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:36:38,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:36:38,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:36:38,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:36:38,683.683 INFO    ] time= 25/10/2026 21:36:38
[2026-10-25 21:36:38,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:36:38,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:36:38,879.879 INFO    ] No existing commands found in stream
[2026-10-25 21:36:43,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:36:43,892.892 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 21:36:47,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:36:47,898.898 INFO    ] Checking for system updates...
[2026-10-25 21:36:47,934.934 INFO    ] 200
[2026-10-25 21:36:47,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:47,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:36:47,992.992 INFO    ] No update needed
[2026-10-25 21:36:47,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 21:36:48,028.028 INFO    ] 200
[2026-10-25 21:36:48,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:36:48,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:36:48,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:36:48,134.134 INFO    ] No camera update needed
[2026-10-25 21:36:48,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:36:48,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:36:48,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:36:48,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:36:50,191.191 INFO    ] ================================================
[2026-10-25 21:36:50,205.205 INFO    ] Launching Daemon at Sun Oct 25 21:36:50 IST 2026
[2026-10-25 21:36:50,216.216 INFO    ] ================================================
[2026-10-25 21:36:50,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:36:50
[2026-10-25 21:36:51,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:36:51,648.648 INFO    ] Initializing speech engine...
[2026-10-25 21:36:51,656.656 INFO    ] 2026-10-25 21:36:51
[2026-10-25 21:36:51,906.906 INFO    ] 2026-10-25 21:36:51
[2026-10-25 21:36:51,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:36:52,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:36:52,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:36:52,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:36:52,382.382 INFO    ] time= 25/10/2026 21:36:52
[2026-10-25 21:36:52,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:36:52,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:36:52,577.577 INFO    ] No existing commands found in stream
[2026-10-25 21:36:57,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:36:57,606.606 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 21:37:01,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:37:01,811.811 INFO    ] Checking for system updates...
[2026-10-25 21:37:01,857.857 INFO    ] 200
[2026-10-25 21:37:01,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:01,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:01,945.945 INFO    ] No update needed
[2026-10-25 21:37:01,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 21:37:01,995.995 INFO    ] 200
[2026-10-25 21:37:01,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:02,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:37:02,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:02,096.096 INFO    ] No camera update needed
[2026-10-25 21:37:02,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:37:02,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:37:02,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:37:02,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:37:04,158.158 INFO    ] ================================================
[2026-10-25 21:37:04,173.173 INFO    ] Launching Daemon at Sun Oct 25 21:37:04 IST 2026
[2026-10-25 21:37:04,184.184 INFO    ] ================================================
[2026-10-25 21:37:04,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:37:04
[2026-10-25 21:37:05,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:37:05,763.763 INFO    ] Initializing speech engine...
[2026-10-25 21:37:05,777.777 INFO    ] 2026-10-25 21:37:05
[2026-10-25 21:37:06,060.060 INFO    ] 2026-10-25 21:37:06
[2026-10-25 21:37:06,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:37:08,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:37:08,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:37:08,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:37:08,319.319 INFO    ] time= 25/10/2026 21:37:08
[2026-10-25 21:37:08,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:37:08,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:37:08,436.436 INFO    ] No existing commands found in stream
[2026-10-25 21:37:13,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:37:13,453.453 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 21:37:15,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:37:15,743.743 INFO    ] Checking for system updates...
[2026-10-25 21:37:15,783.783 INFO    ] 200
[2026-10-25 21:37:15,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:15,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:15,851.851 INFO    ] No update needed
[2026-10-25 21:37:15,853.853 INFO    ] Checking for camera pi updates...
[2026-10-25 21:37:15,889.889 INFO    ] 200
[2026-10-25 21:37:15,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:15,934.934 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:37:15,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:15,992.992 INFO    ] No camera update needed
[2026-10-25 21:37:15,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:37:15,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:37:16,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:37:16,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:37:18,050.050 INFO    ] ================================================
[2026-10-25 21:37:18,065.065 INFO    ] Launching Daemon at Sun Oct 25 21:37:18 IST 2026
[2026-10-25 21:37:18,076.076 INFO    ] ================================================
[2026-10-25 21:37:18,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:37:18
[2026-10-25 21:37:19,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:37:19,515.515 INFO    ] Initializing speech engine...
[2026-10-25 21:37:19,530.530 INFO    ] 2026-10-25 21:37:19
[2026-10-25 21:37:19,808.808 INFO    ] 2026-10-25 21:37:19
[2026-10-25 21:37:19,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:37:20,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:37:20,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:37:20,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:37:20,179.179 INFO    ] time= 25/10/2026 21:37:20
[2026-10-25 21:37:20,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:37:20,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:37:20,310.310 INFO    ] No existing commands found in stream
[2026-10-25 21:37:25,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:37:25,325.325 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 21:37:28,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:37:28,561.561 INFO    ] Checking for system updates...
[2026-10-25 21:37:28,598.598 INFO    ] 200
[2026-10-25 21:37:28,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:28,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:37:28,655.655 INFO    ] No update needed
[2026-10-25 21:37:28,658.658 INFO    ] Checking for camera pi updates...
[2026-10-25 21:37:28,692.692 INFO    ] 200
[2026-10-25 21:37:28,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:28,739.739 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:37:28,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:37:28,799.799 INFO    ] No camera update needed
[2026-10-25 21:37:28,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:37:28,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:37:28,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:37:28,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:37:30,855.855 INFO    ] ================================================
[2026-10-25 21:37:30,869.869 INFO    ] Launching Daemon at Sun Oct 25 21:37:30 IST 2026
[2026-10-25 21:37:30,880.880 INFO    ] ================================================
[2026-10-25 21:37:31,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:37:31
[2026-10-25 21:37:32,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:37:32,377.377 INFO    ] Initializing speech engine...
[2026-10-25 21:37:32,384.384 INFO    ] 2026-10-25 21:37:32
[2026-10-25 21:37:32,664.664 INFO    ] 2026-10-25 21:37:32
[2026-10-25 21:37:32,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:37:32,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:37:32,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:37:33,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:37:33,043.043 INFO    ] time= 25/10/2026 21:37:33
[2026-10-25 21:37:33,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:37:33,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:37:33,129.129 INFO    ] No existing commands found in stream
[2026-10-25 21:37:38,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:37:38,145.145 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 21:37:40,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:37:40,561.561 INFO    ] Checking for system updates...
[2026-10-25 21:37:40,600.600 INFO    ] 200
[2026-10-25 21:37:40,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:40,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:40,658.658 INFO    ] No update needed
[2026-10-25 21:37:40,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 21:37:40,693.693 INFO    ] 200
[2026-10-25 21:37:40,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:40,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:37:40,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:40,796.796 INFO    ] No camera update needed
[2026-10-25 21:37:40,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:37:40,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:37:40,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:37:40,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:37:42,852.852 INFO    ] ================================================
[2026-10-25 21:37:42,867.867 INFO    ] Launching Daemon at Sun Oct 25 21:37:42 IST 2026
[2026-10-25 21:37:42,877.877 INFO    ] ================================================
[2026-10-25 21:37:43,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:37:43
[2026-10-25 21:37:44,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:37:44,486.486 INFO    ] Initializing speech engine...
[2026-10-25 21:37:44,499.499 INFO    ] 2026-10-25 21:37:44
[2026-10-25 21:37:44,773.773 INFO    ] 2026-10-25 21:37:44
[2026-10-25 21:37:44,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:37:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:37:45,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:37:45,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:37:45,273.273 INFO    ] time= 25/10/2026 21:37:45
[2026-10-25 21:37:45,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:37:45,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:37:45,491.491 INFO    ] No existing commands found in stream
[2026-10-25 21:37:50,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:37:50,516.516 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-25 21:37:53,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:37:53,440.440 INFO    ] Checking for system updates...
[2026-10-25 21:37:53,479.479 INFO    ] 200
[2026-10-25 21:37:53,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:53,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:53,539.539 INFO    ] No update needed
[2026-10-25 21:37:53,542.542 INFO    ] Checking for camera pi updates...
[2026-10-25 21:37:53,576.576 INFO    ] 200
[2026-10-25 21:37:53,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:37:53,624.624 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:37:53,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:37:53,686.686 INFO    ] No camera update needed
[2026-10-25 21:37:53,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:37:53,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:37:53,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:37:53,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:37:55,742.742 INFO    ] ================================================
[2026-10-25 21:37:55,757.757 INFO    ] Launching Daemon at Sun Oct 25 21:37:55 IST 2026
[2026-10-25 21:37:55,767.767 INFO    ] ================================================
[2026-10-25 21:37:56,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:37:56
[2026-10-25 21:37:57,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:37:57,344.344 INFO    ] Initializing speech engine...
[2026-10-25 21:37:57,355.355 INFO    ] 2026-10-25 21:37:57
[2026-10-25 21:37:57,622.622 INFO    ] 2026-10-25 21:37:57
[2026-10-25 21:37:57,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:37:57,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:37:57,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:37:58,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:37:58,087.087 INFO    ] time= 25/10/2026 21:37:58
[2026-10-25 21:37:58,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:37:58,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:37:58,234.234 INFO    ] No existing commands found in stream
[2026-10-25 21:38:03,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:38:03,246.246 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 21:38:08,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:38:08,252.252 INFO    ] Checking for system updates...
[2026-10-25 21:38:08,296.296 INFO    ] 200
[2026-10-25 21:38:08,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:08,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:08,366.366 INFO    ] No update needed
[2026-10-25 21:38:08,369.369 INFO    ] Checking for camera pi updates...
[2026-10-25 21:38:08,406.406 INFO    ] 200
[2026-10-25 21:38:08,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:08,456.456 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:38:08,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:08,496.496 INFO    ] No camera update needed
[2026-10-25 21:38:08,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:38:08,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:38:08,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:38:08,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:38:10,553.553 INFO    ] ================================================
[2026-10-25 21:38:10,568.568 INFO    ] Launching Daemon at Sun Oct 25 21:38:10 IST 2026
[2026-10-25 21:38:10,578.578 INFO    ] ================================================
[2026-10-25 21:38:11,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:38:11
[2026-10-25 21:38:11,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:38:12,034.034 INFO    ] Initializing speech engine...
[2026-10-25 21:38:12,041.041 INFO    ] 2026-10-25 21:38:12
[2026-10-25 21:38:12,297.297 INFO    ] 2026-10-25 21:38:12
[2026-10-25 21:38:12,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:38:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:38:12,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:38:12,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:38:12,846.846 INFO    ] time= 25/10/2026 21:38:12
[2026-10-25 21:38:12,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:38:12,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:38:12,981.981 INFO    ] No existing commands found in stream
[2026-10-25 21:38:18,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:38:18,011.011 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 21:38:20,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:38:20,589.589 INFO    ] Checking for system updates...
[2026-10-25 21:38:20,625.625 INFO    ] 200
[2026-10-25 21:38:20,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:20,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:38:20,682.682 INFO    ] No update needed
[2026-10-25 21:38:20,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 21:38:20,719.719 INFO    ] 200
[2026-10-25 21:38:20,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:20,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:38:20,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:38:20,833.833 INFO    ] No camera update needed
[2026-10-25 21:38:20,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:38:20,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:38:20,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:38:20,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:38:22,888.888 INFO    ] ================================================
[2026-10-25 21:38:22,902.902 INFO    ] Launching Daemon at Sun Oct 25 21:38:22 IST 2026
[2026-10-25 21:38:22,913.913 INFO    ] ================================================
[2026-10-25 21:38:23,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:38:23
[2026-10-25 21:38:24,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:38:24,315.315 INFO    ] Initializing speech engine...
[2026-10-25 21:38:24,331.331 INFO    ] 2026-10-25 21:38:24
[2026-10-25 21:38:24,609.609 INFO    ] 2026-10-25 21:38:24
[2026-10-25 21:38:24,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:38:24,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:38:24,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:38:25,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:38:25,021.021 INFO    ] time= 25/10/2026 21:38:25
[2026-10-25 21:38:25,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:38:25,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:38:25,176.176 INFO    ] No existing commands found in stream
[2026-10-25 21:38:30,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:38:30,198.198 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 21:38:33,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:38:33,326.326 INFO    ] Checking for system updates...
[2026-10-25 21:38:33,363.363 INFO    ] 200
[2026-10-25 21:38:33,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:33,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:33,429.429 INFO    ] No update needed
[2026-10-25 21:38:33,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 21:38:33,466.466 INFO    ] 200
[2026-10-25 21:38:33,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:33,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:38:33,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:33,565.565 INFO    ] No camera update needed
[2026-10-25 21:38:33,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:38:33,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:38:33,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:38:33,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:38:35,624.624 INFO    ] ================================================
[2026-10-25 21:38:35,640.640 INFO    ] Launching Daemon at Sun Oct 25 21:38:35 IST 2026
[2026-10-25 21:38:35,650.650 INFO    ] ================================================
[2026-10-25 21:38:36,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:38:36
[2026-10-25 21:38:36,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:38:37,065.065 INFO    ] Initializing speech engine...
[2026-10-25 21:38:37,081.081 INFO    ] 2026-10-25 21:38:37
[2026-10-25 21:38:37,362.362 INFO    ] 2026-10-25 21:38:37
[2026-10-25 21:38:37,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:38:38,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:38:38,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:38:38,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:38:38,220.220 INFO    ] time= 25/10/2026 21:38:38
[2026-10-25 21:38:38,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:38:38,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:38:38,406.406 INFO    ] No existing commands found in stream
[2026-10-25 21:38:43,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:38:43,434.434 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 21:38:46,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:38:46,855.855 INFO    ] Checking for system updates...
[2026-10-25 21:38:46,892.892 INFO    ] 200
[2026-10-25 21:38:46,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:46,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:46,960.960 INFO    ] No update needed
[2026-10-25 21:38:46,963.963 INFO    ] Checking for camera pi updates...
[2026-10-25 21:38:46,998.998 INFO    ] 200
[2026-10-25 21:38:47,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:38:47,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:38:47,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:38:47,093.093 INFO    ] No camera update needed
[2026-10-25 21:38:47,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:38:47,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:38:47,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:38:47,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:38:49,153.153 INFO    ] ================================================
[2026-10-25 21:38:49,167.167 INFO    ] Launching Daemon at Sun Oct 25 21:38:49 IST 2026
[2026-10-25 21:38:49,178.178 INFO    ] ================================================
[2026-10-25 21:38:49,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:38:49
[2026-10-25 21:38:50,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:38:50,585.585 INFO    ] Initializing speech engine...
[2026-10-25 21:38:50,590.590 INFO    ] 2026-10-25 21:38:50
[2026-10-25 21:38:50,880.880 INFO    ] 2026-10-25 21:38:50
[2026-10-25 21:38:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:38:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:38:51,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:38:51,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:38:51,291.291 INFO    ] time= 25/10/2026 21:38:51
[2026-10-25 21:38:51,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:38:51,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:38:51,483.483 INFO    ] No existing commands found in stream
[2026-10-25 21:38:56,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:38:56,516.516 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 21:39:00,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:39:00,406.406 INFO    ] Checking for system updates...
[2026-10-25 21:39:00,445.445 INFO    ] 200
[2026-10-25 21:39:00,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:00,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:39:00,510.510 INFO    ] No update needed
[2026-10-25 21:39:00,512.512 INFO    ] Checking for camera pi updates...
[2026-10-25 21:39:00,546.546 INFO    ] 200
[2026-10-25 21:39:00,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:00,593.593 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:39:00,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:39:00,654.654 INFO    ] No camera update needed
[2026-10-25 21:39:00,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:39:00,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:39:00,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:39:00,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:39:02,729.729 INFO    ] ================================================
[2026-10-25 21:39:02,746.746 INFO    ] Launching Daemon at Sun Oct 25 21:39:02 IST 2026
[2026-10-25 21:39:02,757.757 INFO    ] ================================================
[2026-10-25 21:39:03,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:39:03
[2026-10-25 21:39:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:39:04,399.399 INFO    ] Initializing speech engine...
[2026-10-25 21:39:04,407.407 INFO    ] 2026-10-25 21:39:04
[2026-10-25 21:39:04,694.694 INFO    ] 2026-10-25 21:39:04
[2026-10-25 21:39:04,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:39:04,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:39:04,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:39:05,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:39:05,183.183 INFO    ] time= 25/10/2026 21:39:05
[2026-10-25 21:39:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:39:05,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:39:05,412.412 INFO    ] No existing commands found in stream
[2026-10-25 21:39:10,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:39:10,455.455 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 21:39:12,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:39:12,164.164 INFO    ] Checking for system updates...
[2026-10-25 21:39:12,200.200 INFO    ] 200
[2026-10-25 21:39:12,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:12,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:12,261.261 INFO    ] No update needed
[2026-10-25 21:39:12,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 21:39:12,311.311 INFO    ] 200
[2026-10-25 21:39:12,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:12,356.356 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:39:12,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:12,527.527 INFO    ] No camera update needed
[2026-10-25 21:39:12,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:39:12,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:39:12,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:39:12,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:39:14,585.585 INFO    ] ================================================
[2026-10-25 21:39:14,600.600 INFO    ] Launching Daemon at Sun Oct 25 21:39:14 IST 2026
[2026-10-25 21:39:14,611.611 INFO    ] ================================================
[2026-10-25 21:39:15,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:39:15
[2026-10-25 21:39:15,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:39:16,065.065 INFO    ] Initializing speech engine...
[2026-10-25 21:39:16,074.074 INFO    ] 2026-10-25 21:39:16
[2026-10-25 21:39:16,322.322 INFO    ] 2026-10-25 21:39:16
[2026-10-25 21:39:16,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:39:16,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:39:16,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:39:16,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:39:16,803.803 INFO    ] time= 25/10/2026 21:39:16
[2026-10-25 21:39:16,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:39:16,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:39:16,951.951 INFO    ] No existing commands found in stream
[2026-10-25 21:39:21,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:39:21,969.969 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 21:39:22,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:39:22,476.476 INFO    ] Checking for system updates...
[2026-10-25 21:39:22,512.512 INFO    ] 200
[2026-10-25 21:39:22,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:22,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:22,575.575 INFO    ] No update needed
[2026-10-25 21:39:22,578.578 INFO    ] Checking for camera pi updates...
[2026-10-25 21:39:22,611.611 INFO    ] 200
[2026-10-25 21:39:22,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:22,655.655 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:39:22,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:22,718.718 INFO    ] No camera update needed
[2026-10-25 21:39:22,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:39:22,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:39:22,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:39:22,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:39:24,774.774 INFO    ] ================================================
[2026-10-25 21:39:24,789.789 INFO    ] Launching Daemon at Sun Oct 25 21:39:24 IST 2026
[2026-10-25 21:39:24,799.799 INFO    ] ================================================
[2026-10-25 21:39:25,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:39:25
[2026-10-25 21:39:25,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:39:26,220.220 INFO    ] Initializing speech engine...
[2026-10-25 21:39:26,229.229 INFO    ] 2026-10-25 21:39:26
[2026-10-25 21:39:26,477.477 INFO    ] 2026-10-25 21:39:26
[2026-10-25 21:39:26,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:39:26,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:39:26,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:39:26,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:39:26,961.961 INFO    ] time= 25/10/2026 21:39:26
[2026-10-25 21:39:27,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:39:27,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:39:27,120.120 INFO    ] No existing commands found in stream
[2026-10-25 21:39:32,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:39:32,162.162 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 21:39:34,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:39:34,369.369 INFO    ] Checking for system updates...
[2026-10-25 21:39:34,405.405 INFO    ] 200
[2026-10-25 21:39:34,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:34,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:39:34,463.463 INFO    ] No update needed
[2026-10-25 21:39:34,465.465 INFO    ] Checking for camera pi updates...
[2026-10-25 21:39:34,500.500 INFO    ] 200
[2026-10-25 21:39:34,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:34,544.544 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:39:34,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:39:34,607.607 INFO    ] No camera update needed
[2026-10-25 21:39:34,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:39:34,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:39:34,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:39:34,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:39:36,663.663 INFO    ] ================================================
[2026-10-25 21:39:36,678.678 INFO    ] Launching Daemon at Sun Oct 25 21:39:36 IST 2026
[2026-10-25 21:39:36,690.690 INFO    ] ================================================
[2026-10-25 21:39:37,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:39:37
[2026-10-25 21:39:37,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:39:38,152.152 INFO    ] Initializing speech engine...
[2026-10-25 21:39:38,159.159 INFO    ] 2026-10-25 21:39:38
[2026-10-25 21:39:38,420.420 INFO    ] 2026-10-25 21:39:38
[2026-10-25 21:39:38,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:39:40,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:39:40,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:39:40,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:39:40,450.450 INFO    ] time= 25/10/2026 21:39:40
[2026-10-25 21:39:40,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:39:40,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:39:40,561.561 INFO    ] No existing commands found in stream
[2026-10-25 21:39:45,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:39:45,585.585 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 21:39:49,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:39:49,020.020 INFO    ] Checking for system updates...
[2026-10-25 21:39:49,057.057 INFO    ] 200
[2026-10-25 21:39:49,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:49,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:49,114.114 INFO    ] No update needed
[2026-10-25 21:39:49,117.117 INFO    ] Checking for camera pi updates...
[2026-10-25 21:39:49,150.150 INFO    ] 200
[2026-10-25 21:39:49,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:39:49,193.193 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:39:49,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:39:49,247.247 INFO    ] No camera update needed
[2026-10-25 21:39:49,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:39:49,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:39:49,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:39:49,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:39:51,303.303 INFO    ] ================================================
[2026-10-25 21:39:51,318.318 INFO    ] Launching Daemon at Sun Oct 25 21:39:51 IST 2026
[2026-10-25 21:39:51,330.330 INFO    ] ================================================
[2026-10-25 21:39:51,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:39:51
[2026-10-25 21:39:52,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:39:52,903.903 INFO    ] Initializing speech engine...
[2026-10-25 21:39:52,912.912 INFO    ] 2026-10-25 21:39:52
[2026-10-25 21:39:53,223.223 INFO    ] 2026-10-25 21:39:53
[2026-10-25 21:39:53,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:39:53,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:39:53,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:39:53,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:39:53,729.729 INFO    ] time= 25/10/2026 21:39:53
[2026-10-25 21:39:53,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:39:53,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:39:53,864.864 INFO    ] No existing commands found in stream
[2026-10-25 21:39:58,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:39:58,893.893 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 21:40:01,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:40:01,280.280 INFO    ] Checking for system updates...
[2026-10-25 21:40:01,320.320 INFO    ] 200
[2026-10-25 21:40:01,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:01,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:01,378.378 INFO    ] No update needed
[2026-10-25 21:40:01,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 21:40:01,422.422 INFO    ] 200
[2026-10-25 21:40:01,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:01,508.508 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:40:01,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:01,578.578 INFO    ] No camera update needed
[2026-10-25 21:40:01,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:40:01,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:40:01,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:40:01,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:40:03,671.671 INFO    ] ================================================
[2026-10-25 21:40:03,688.688 INFO    ] Launching Daemon at Sun Oct 25 21:40:03 IST 2026
[2026-10-25 21:40:03,700.700 INFO    ] ================================================
[2026-10-25 21:40:04,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:40:04
[2026-10-25 21:40:04,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:40:05,122.122 INFO    ] Initializing speech engine...
[2026-10-25 21:40:05,143.143 INFO    ] 2026-10-25 21:40:05
[2026-10-25 21:40:05,402.402 INFO    ] 2026-10-25 21:40:05
[2026-10-25 21:40:05,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:40:05,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:40:05,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:40:05,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:40:05,753.753 INFO    ] time= 25/10/2026 21:40:05
[2026-10-25 21:40:05,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:40:05,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:40:05,869.869 INFO    ] No existing commands found in stream
[2026-10-25 21:40:10,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:40:10,883.883 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 21:40:13,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:40:13,184.184 INFO    ] Checking for system updates...
[2026-10-25 21:40:13,220.220 INFO    ] 200
[2026-10-25 21:40:13,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:13,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:40:13,278.278 INFO    ] No update needed
[2026-10-25 21:40:13,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 21:40:13,319.319 INFO    ] 200
[2026-10-25 21:40:13,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:13,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:40:13,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:40:13,411.411 INFO    ] No camera update needed
[2026-10-25 21:40:13,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:40:13,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:40:13,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:40:13,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:40:15,466.466 INFO    ] ================================================
[2026-10-25 21:40:15,483.483 INFO    ] Launching Daemon at Sun Oct 25 21:40:15 IST 2026
[2026-10-25 21:40:15,494.494 INFO    ] ================================================
[2026-10-25 21:40:16,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:40:16
[2026-10-25 21:40:16,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:40:17,067.067 INFO    ] Initializing speech engine...
[2026-10-25 21:40:17,076.076 INFO    ] 2026-10-25 21:40:17
[2026-10-25 21:40:17,362.362 INFO    ] 2026-10-25 21:40:17
[2026-10-25 21:40:17,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:40:17,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:40:17,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:40:17,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:40:17,807.807 INFO    ] time= 25/10/2026 21:40:17
[2026-10-25 21:40:17,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:40:17,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:40:17,983.983 INFO    ] No existing commands found in stream
[2026-10-25 21:40:22,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:40:22,997.997 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-25 21:40:25,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:40:25,728.728 INFO    ] Checking for system updates...
[2026-10-25 21:40:25,764.764 INFO    ] 200
[2026-10-25 21:40:25,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:25,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:40:25,823.823 INFO    ] No update needed
[2026-10-25 21:40:25,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 21:40:25,862.862 INFO    ] 200
[2026-10-25 21:40:25,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:25,907.907 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:40:25,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:40:25,960.960 INFO    ] No camera update needed
[2026-10-25 21:40:25,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:40:25,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:40:25,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:40:25,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:40:28,017.017 INFO    ] ================================================
[2026-10-25 21:40:28,033.033 INFO    ] Launching Daemon at Sun Oct 25 21:40:28 IST 2026
[2026-10-25 21:40:28,044.044 INFO    ] ================================================
[2026-10-25 21:40:28,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:40:28
[2026-10-25 21:40:29,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:40:29,458.458 INFO    ] Initializing speech engine...
[2026-10-25 21:40:29,467.467 INFO    ] 2026-10-25 21:40:29
[2026-10-25 21:40:29,726.726 INFO    ] 2026-10-25 21:40:29
[2026-10-25 21:40:29,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:40:30,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:40:30,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:40:30,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:40:30,183.183 INFO    ] time= 25/10/2026 21:40:30
[2026-10-25 21:40:30,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:40:30,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:40:30,373.373 INFO    ] No existing commands found in stream
[2026-10-25 21:40:35,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:40:35,388.388 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 21:40:36,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:40:36,332.332 INFO    ] Checking for system updates...
[2026-10-25 21:40:36,367.367 INFO    ] 200
[2026-10-25 21:40:36,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:36,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:36,430.430 INFO    ] No update needed
[2026-10-25 21:40:36,433.433 INFO    ] Checking for camera pi updates...
[2026-10-25 21:40:36,466.466 INFO    ] 200
[2026-10-25 21:40:36,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:36,509.509 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:40:36,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:36,563.563 INFO    ] No camera update needed
[2026-10-25 21:40:36,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:40:36,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:40:36,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:40:36,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:40:38,619.619 INFO    ] ================================================
[2026-10-25 21:40:38,635.635 INFO    ] Launching Daemon at Sun Oct 25 21:40:38 IST 2026
[2026-10-25 21:40:38,646.646 INFO    ] ================================================
[2026-10-25 21:40:39,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:40:39
[2026-10-25 21:40:39,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:40:40,086.086 INFO    ] Initializing speech engine...
[2026-10-25 21:40:40,108.108 INFO    ] 2026-10-25 21:40:40
[2026-10-25 21:40:40,368.368 INFO    ] 2026-10-25 21:40:40
[2026-10-25 21:40:40,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:40:40,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:40:40,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:40:40,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:40:40,861.861 INFO    ] time= 25/10/2026 21:40:40
[2026-10-25 21:40:40,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:40:40,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:40:40,988.988 INFO    ] No existing commands found in stream
[2026-10-25 21:40:46,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:40:46,003.003 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 21:40:50,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:40:50,117.117 INFO    ] Checking for system updates...
[2026-10-25 21:40:50,154.154 INFO    ] 200
[2026-10-25 21:40:50,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:50,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:50,213.213 INFO    ] No update needed
[2026-10-25 21:40:50,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 21:40:50,250.250 INFO    ] 200
[2026-10-25 21:40:50,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:40:50,297.297 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:40:50,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:40:50,387.387 INFO    ] No camera update needed
[2026-10-25 21:40:50,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:40:50,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:40:50,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:40:50,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:40:52,444.444 INFO    ] ================================================
[2026-10-25 21:40:52,459.459 INFO    ] Launching Daemon at Sun Oct 25 21:40:52 IST 2026
[2026-10-25 21:40:52,470.470 INFO    ] ================================================
[2026-10-25 21:40:53,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:40:53
[2026-10-25 21:40:53,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:40:54,052.052 INFO    ] Initializing speech engine...
[2026-10-25 21:40:54,061.061 INFO    ] 2026-10-25 21:40:54
[2026-10-25 21:40:54,344.344 INFO    ] 2026-10-25 21:40:54
[2026-10-25 21:40:54,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:40:54,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:40:54,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:40:54,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:40:54,877.877 INFO    ] time= 25/10/2026 21:40:54
[2026-10-25 21:40:54,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:40:54,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:40:55,029.029 INFO    ] No existing commands found in stream
[2026-10-25 21:41:00,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:41:00,046.046 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 21:41:03,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:41:03,249.249 INFO    ] Checking for system updates...
[2026-10-25 21:41:03,304.304 INFO    ] 200
[2026-10-25 21:41:03,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:03,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:03,377.377 INFO    ] No update needed
[2026-10-25 21:41:03,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 21:41:03,426.426 INFO    ] 200
[2026-10-25 21:41:03,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:03,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:41:03,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:03,522.522 INFO    ] No camera update needed
[2026-10-25 21:41:03,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:41:03,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:41:03,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:41:03,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:41:05,582.582 INFO    ] ================================================
[2026-10-25 21:41:05,598.598 INFO    ] Launching Daemon at Sun Oct 25 21:41:05 IST 2026
[2026-10-25 21:41:05,609.609 INFO    ] ================================================
[2026-10-25 21:41:06,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:41:06
[2026-10-25 21:41:06,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:41:07,056.056 INFO    ] Initializing speech engine...
[2026-10-25 21:41:07,066.066 INFO    ] 2026-10-25 21:41:07
[2026-10-25 21:41:07,327.327 INFO    ] 2026-10-25 21:41:07
[2026-10-25 21:41:07,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:41:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:41:07,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:41:07,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:41:07,814.814 INFO    ] time= 25/10/2026 21:41:07
[2026-10-25 21:41:07,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:41:07,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:41:08,026.026 INFO    ] No existing commands found in stream
[2026-10-25 21:41:13,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:41:13,064.064 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 21:41:13,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:41:13,845.845 INFO    ] Checking for system updates...
[2026-10-25 21:41:13,883.883 INFO    ] 200
[2026-10-25 21:41:13,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:13,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:41:13,944.944 INFO    ] No update needed
[2026-10-25 21:41:13,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 21:41:13,981.981 INFO    ] 200
[2026-10-25 21:41:13,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:14,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:41:14,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:41:14,094.094 INFO    ] No camera update needed
[2026-10-25 21:41:14,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:41:14,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:41:14,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:41:14,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:41:16,155.155 INFO    ] ================================================
[2026-10-25 21:41:16,170.170 INFO    ] Launching Daemon at Sun Oct 25 21:41:16 IST 2026
[2026-10-25 21:41:16,181.181 INFO    ] ================================================
[2026-10-25 21:41:16,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:41:16
[2026-10-25 21:41:17,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:41:17,848.848 INFO    ] Initializing speech engine...
[2026-10-25 21:41:17,861.861 INFO    ] 2026-10-25 21:41:17
[2026-10-25 21:41:18,175.175 INFO    ] 2026-10-25 21:41:18
[2026-10-25 21:41:18,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:41:18,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:41:18,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:41:18,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:41:18,682.682 INFO    ] time= 25/10/2026 21:41:18
[2026-10-25 21:41:18,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:41:18,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:41:18,831.831 INFO    ] No existing commands found in stream
[2026-10-25 21:41:23,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:41:23,851.851 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 21:41:26,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:41:26,043.043 INFO    ] Checking for system updates...
[2026-10-25 21:41:26,080.080 INFO    ] 200
[2026-10-25 21:41:26,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:26,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:41:26,138.138 INFO    ] No update needed
[2026-10-25 21:41:26,141.141 INFO    ] Checking for camera pi updates...
[2026-10-25 21:41:26,179.179 INFO    ] 200
[2026-10-25 21:41:26,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:26,223.223 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:41:26,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:41:26,385.385 INFO    ] No camera update needed
[2026-10-25 21:41:26,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:41:26,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:41:26,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:41:26,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:41:28,441.441 INFO    ] ================================================
[2026-10-25 21:41:28,456.456 INFO    ] Launching Daemon at Sun Oct 25 21:41:28 IST 2026
[2026-10-25 21:41:28,467.467 INFO    ] ================================================
[2026-10-25 21:41:29,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:41:29
[2026-10-25 21:41:29,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:41:30,124.124 INFO    ] Initializing speech engine...
[2026-10-25 21:41:30,134.134 INFO    ] 2026-10-25 21:41:30
[2026-10-25 21:41:30,463.463 INFO    ] 2026-10-25 21:41:30
[2026-10-25 21:41:30,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:41:30,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:41:30,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:41:30,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:41:30,893.893 INFO    ] time= 25/10/2026 21:41:30
[2026-10-25 21:41:30,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:41:30,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:41:31,048.048 INFO    ] No existing commands found in stream
[2026-10-25 21:41:36,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:41:36,061.061 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-25 21:41:40,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:41:40,629.629 INFO    ] Checking for system updates...
[2026-10-25 21:41:40,665.665 INFO    ] 200
[2026-10-25 21:41:40,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:40,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:40,723.723 INFO    ] No update needed
[2026-10-25 21:41:40,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 21:41:40,760.760 INFO    ] 200
[2026-10-25 21:41:40,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:40,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:41:40,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:40,857.857 INFO    ] No camera update needed
[2026-10-25 21:41:40,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:41:40,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:41:40,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:41:40,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:41:42,913.913 INFO    ] ================================================
[2026-10-25 21:41:42,928.928 INFO    ] Launching Daemon at Sun Oct 25 21:41:42 IST 2026
[2026-10-25 21:41:42,938.938 INFO    ] ================================================
[2026-10-25 21:41:43,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:41:43
[2026-10-25 21:41:44,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:41:44,378.378 INFO    ] Initializing speech engine...
[2026-10-25 21:41:44,386.386 INFO    ] 2026-10-25 21:41:44
[2026-10-25 21:41:44,676.676 INFO    ] 2026-10-25 21:41:44
[2026-10-25 21:41:44,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:41:44,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:41:44,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:41:45,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:41:45,133.133 INFO    ] time= 25/10/2026 21:41:45
[2026-10-25 21:41:45,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:41:45,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:41:45,278.278 INFO    ] No existing commands found in stream
[2026-10-25 21:41:50,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:41:50,294.294 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-25 21:41:53,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:41:53,794.794 INFO    ] Checking for system updates...
[2026-10-25 21:41:53,830.830 INFO    ] 200
[2026-10-25 21:41:53,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:53,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:53,888.888 INFO    ] No update needed
[2026-10-25 21:41:53,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 21:41:53,928.928 INFO    ] 200
[2026-10-25 21:41:53,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:41:53,978.978 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:41:54,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:41:54,043.043 INFO    ] No camera update needed
[2026-10-25 21:41:54,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:41:54,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:41:54,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:41:54,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:41:56,098.098 INFO    ] ================================================
[2026-10-25 21:41:56,113.113 INFO    ] Launching Daemon at Sun Oct 25 21:41:56 IST 2026
[2026-10-25 21:41:56,131.131 INFO    ] ================================================
[2026-10-25 21:41:56,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:41:56
[2026-10-25 21:41:57,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:41:57,581.581 INFO    ] Initializing speech engine...
[2026-10-25 21:41:57,587.587 INFO    ] 2026-10-25 21:41:57
[2026-10-25 21:41:57,888.888 INFO    ] 2026-10-25 21:41:57
[2026-10-25 21:41:57,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:41:58,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:41:58,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:41:58,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:41:58,259.259 INFO    ] time= 25/10/2026 21:41:58
[2026-10-25 21:41:58,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:41:58,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:41:58,329.329 INFO    ] No existing commands found in stream
[2026-10-25 21:42:03,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:42:03,346.346 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-25 21:42:07,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:42:07,072.072 INFO    ] Checking for system updates...
[2026-10-25 21:42:07,110.110 INFO    ] 200
[2026-10-25 21:42:07,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:07,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:07,177.177 INFO    ] No update needed
[2026-10-25 21:42:07,180.180 INFO    ] Checking for camera pi updates...
[2026-10-25 21:42:07,216.216 INFO    ] 200
[2026-10-25 21:42:07,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:07,261.261 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:42:07,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:07,319.319 INFO    ] No camera update needed
[2026-10-25 21:42:07,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:42:07,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:42:07,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:42:07,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:42:09,377.377 INFO    ] ================================================
[2026-10-25 21:42:09,392.392 INFO    ] Launching Daemon at Sun Oct 25 21:42:09 IST 2026
[2026-10-25 21:42:09,402.402 INFO    ] ================================================
[2026-10-25 21:42:09,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:42:09
[2026-10-25 21:42:10,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:42:10,856.856 INFO    ] Initializing speech engine...
[2026-10-25 21:42:10,872.872 INFO    ] 2026-10-25 21:42:10
[2026-10-25 21:42:11,159.159 INFO    ] 2026-10-25 21:42:11
[2026-10-25 21:42:11,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:42:11,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:42:11,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:42:11,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:42:11,541.541 INFO    ] time= 25/10/2026 21:42:11
[2026-10-25 21:42:11,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:42:11,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:42:11,666.666 INFO    ] No existing commands found in stream
[2026-10-25 21:42:16,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:42:16,682.682 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 21:42:19,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:42:19,588.588 INFO    ] Checking for system updates...
[2026-10-25 21:42:19,623.623 INFO    ] 200
[2026-10-25 21:42:19,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:19,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:42:19,690.690 INFO    ] No update needed
[2026-10-25 21:42:19,692.692 INFO    ] Checking for camera pi updates...
[2026-10-25 21:42:19,734.734 INFO    ] 200
[2026-10-25 21:42:19,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:19,798.798 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:42:19,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:42:19,835.835 INFO    ] No camera update needed
[2026-10-25 21:42:19,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:42:19,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:42:19,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:42:19,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:42:21,891.891 INFO    ] ================================================
[2026-10-25 21:42:21,906.906 INFO    ] Launching Daemon at Sun Oct 25 21:42:21 IST 2026
[2026-10-25 21:42:21,917.917 INFO    ] ================================================
[2026-10-25 21:42:22,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:42:22
[2026-10-25 21:42:23,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:42:23,544.544 INFO    ] Initializing speech engine...
[2026-10-25 21:42:23,558.558 INFO    ] 2026-10-25 21:42:23
[2026-10-25 21:42:23,843.843 INFO    ] 2026-10-25 21:42:23
[2026-10-25 21:42:23,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:42:24,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:42:24,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:42:24,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:42:24,319.319 INFO    ] time= 25/10/2026 21:42:24
[2026-10-25 21:42:24,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:42:24,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:42:24,466.466 INFO    ] No existing commands found in stream
[2026-10-25 21:42:29,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:42:29,491.491 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 21:42:33,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:42:33,062.062 INFO    ] Checking for system updates...
[2026-10-25 21:42:33,109.109 INFO    ] 200
[2026-10-25 21:42:33,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:33,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:33,194.194 INFO    ] No update needed
[2026-10-25 21:42:33,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 21:42:33,247.247 INFO    ] 200
[2026-10-25 21:42:33,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:33,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:42:33,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:33,361.361 INFO    ] No camera update needed
[2026-10-25 21:42:33,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:42:33,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:42:33,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:42:33,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:42:35,418.418 INFO    ] ================================================
[2026-10-25 21:42:35,433.433 INFO    ] Launching Daemon at Sun Oct 25 21:42:35 IST 2026
[2026-10-25 21:42:35,444.444 INFO    ] ================================================
[2026-10-25 21:42:36,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:42:36
[2026-10-25 21:42:36,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:42:37,063.063 INFO    ] Initializing speech engine...
[2026-10-25 21:42:37,071.071 INFO    ] 2026-10-25 21:42:37
[2026-10-25 21:42:37,357.357 INFO    ] 2026-10-25 21:42:37
[2026-10-25 21:42:37,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:42:37,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:42:37,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:42:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:42:37,801.801 INFO    ] time= 25/10/2026 21:42:37
[2026-10-25 21:42:37,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:42:37,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:42:37,953.953 INFO    ] No existing commands found in stream
[2026-10-25 21:42:42,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:42:42,966.966 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 21:42:45,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:42:45,651.651 INFO    ] Checking for system updates...
[2026-10-25 21:42:45,687.687 INFO    ] 200
[2026-10-25 21:42:45,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:45,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:45,747.747 INFO    ] No update needed
[2026-10-25 21:42:45,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 21:42:45,785.785 INFO    ] 200
[2026-10-25 21:42:45,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:45,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:42:45,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:42:45,902.902 INFO    ] No camera update needed
[2026-10-25 21:42:45,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:42:45,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:42:45,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:42:45,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:42:47,961.961 INFO    ] ================================================
[2026-10-25 21:42:47,976.976 INFO    ] Launching Daemon at Sun Oct 25 21:42:47 IST 2026
[2026-10-25 21:42:47,988.988 INFO    ] ================================================
[2026-10-25 21:42:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:42:48
[2026-10-25 21:42:49,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:42:49,589.589 INFO    ] Initializing speech engine...
[2026-10-25 21:42:49,598.598 INFO    ] 2026-10-25 21:42:49
[2026-10-25 21:42:49,875.875 INFO    ] 2026-10-25 21:42:49
[2026-10-25 21:42:49,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:42:50,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:42:50,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:42:50,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:42:50,329.329 INFO    ] time= 25/10/2026 21:42:50
[2026-10-25 21:42:50,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:42:50,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:42:50,501.501 INFO    ] No existing commands found in stream
[2026-10-25 21:42:55,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:42:55,537.537 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-25 21:42:58,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:42:58,753.753 INFO    ] Checking for system updates...
[2026-10-25 21:42:58,789.789 INFO    ] 200
[2026-10-25 21:42:58,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:58,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:42:58,849.849 INFO    ] No update needed
[2026-10-25 21:42:58,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 21:42:58,886.886 INFO    ] 200
[2026-10-25 21:42:58,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:42:58,932.932 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:42:58,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:42:58,967.967 INFO    ] No camera update needed
[2026-10-25 21:42:58,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:42:58,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:42:58,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:42:58,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:43:01,024.024 INFO    ] ================================================
[2026-10-25 21:43:01,040.040 INFO    ] Launching Daemon at Sun Oct 25 21:43:01 IST 2026
[2026-10-25 21:43:01,051.051 INFO    ] ================================================
[2026-10-25 21:43:01,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:43:01
[2026-10-25 21:43:02,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:43:02,659.659 INFO    ] Initializing speech engine...
[2026-10-25 21:43:02,677.677 INFO    ] 2026-10-25 21:43:02
[2026-10-25 21:43:02,974.974 INFO    ] 2026-10-25 21:43:02
[2026-10-25 21:43:03,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:43:03,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:43:03,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:43:03,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:43:03,447.447 INFO    ] time= 25/10/2026 21:43:03
[2026-10-25 21:43:03,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:43:03,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:43:03,616.616 INFO    ] No existing commands found in stream
[2026-10-25 21:43:08,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:43:08,643.643 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 21:43:11,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:43:11,573.573 INFO    ] Checking for system updates...
[2026-10-25 21:43:11,610.610 INFO    ] 200
[2026-10-25 21:43:11,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:11,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:43:11,669.669 INFO    ] No update needed
[2026-10-25 21:43:11,671.671 INFO    ] Checking for camera pi updates...
[2026-10-25 21:43:11,709.709 INFO    ] 200
[2026-10-25 21:43:11,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:11,753.753 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:43:11,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:43:11,788.788 INFO    ] No camera update needed
[2026-10-25 21:43:11,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:43:11,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:43:11,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:43:11,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:43:13,844.844 INFO    ] ================================================
[2026-10-25 21:43:13,860.860 INFO    ] Launching Daemon at Sun Oct 25 21:43:13 IST 2026
[2026-10-25 21:43:13,870.870 INFO    ] ================================================
[2026-10-25 21:43:14,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:43:14
[2026-10-25 21:43:15,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:43:15,261.261 INFO    ] Initializing speech engine...
[2026-10-25 21:43:15,282.282 INFO    ] 2026-10-25 21:43:15
[2026-10-25 21:43:15,537.537 INFO    ] 2026-10-25 21:43:15
[2026-10-25 21:43:15,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:43:15,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:43:15,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:43:15,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:43:15,969.969 INFO    ] time= 25/10/2026 21:43:15
[2026-10-25 21:43:15,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:43:16,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:43:16,124.124 INFO    ] No existing commands found in stream
[2026-10-25 21:43:21,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:43:21,157.157 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 21:43:21,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:43:21,731.731 INFO    ] Checking for system updates...
[2026-10-25 21:43:21,767.767 INFO    ] 200
[2026-10-25 21:43:21,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:21,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:43:21,824.824 INFO    ] No update needed
[2026-10-25 21:43:21,827.827 INFO    ] Checking for camera pi updates...
[2026-10-25 21:43:21,861.861 INFO    ] 200
[2026-10-25 21:43:21,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:21,904.904 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:43:21,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:43:21,966.966 INFO    ] No camera update needed
[2026-10-25 21:43:21,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:43:21,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:43:21,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:43:21,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:43:24,023.023 INFO    ] ================================================
[2026-10-25 21:43:24,038.038 INFO    ] Launching Daemon at Sun Oct 25 21:43:24 IST 2026
[2026-10-25 21:43:24,048.048 INFO    ] ================================================
[2026-10-25 21:43:24,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:43:24
[2026-10-25 21:43:25,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:43:25,457.457 INFO    ] Initializing speech engine...
[2026-10-25 21:43:25,464.464 INFO    ] 2026-10-25 21:43:25
[2026-10-25 21:43:25,763.763 INFO    ] 2026-10-25 21:43:25
[2026-10-25 21:43:25,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:43:26,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:43:26,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:43:26,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:43:26,149.149 INFO    ] time= 25/10/2026 21:43:26
[2026-10-25 21:43:26,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:43:26,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:43:26,279.279 INFO    ] No existing commands found in stream
[2026-10-25 21:43:31,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:43:31,294.294 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 21:43:32,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:43:32,759.759 INFO    ] Checking for system updates...
[2026-10-25 21:43:32,799.799 INFO    ] 200
[2026-10-25 21:43:32,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:32,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:43:32,863.863 INFO    ] No update needed
[2026-10-25 21:43:32,866.866 INFO    ] Checking for camera pi updates...
[2026-10-25 21:43:32,903.903 INFO    ] 200
[2026-10-25 21:43:32,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:32,963.963 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:43:33,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:43:33,006.006 INFO    ] No camera update needed
[2026-10-25 21:43:33,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:43:33,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:43:33,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:43:33,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:43:35,064.064 INFO    ] ================================================
[2026-10-25 21:43:35,080.080 INFO    ] Launching Daemon at Sun Oct 25 21:43:35 IST 2026
[2026-10-25 21:43:35,092.092 INFO    ] ================================================
[2026-10-25 21:43:35,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:43:35
[2026-10-25 21:43:36,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:43:36,766.766 INFO    ] Initializing speech engine...
[2026-10-25 21:43:36,779.779 INFO    ] 2026-10-25 21:43:36
[2026-10-25 21:43:37,067.067 INFO    ] 2026-10-25 21:43:37
[2026-10-25 21:43:37,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:43:37,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:43:37,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:43:37,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:43:37,602.602 INFO    ] time= 25/10/2026 21:43:37
[2026-10-25 21:43:37,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:43:37,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:43:37,755.755 INFO    ] No existing commands found in stream
[2026-10-25 21:43:42,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:43:42,773.773 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 21:43:46,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:43:46,855.855 INFO    ] Checking for system updates...
[2026-10-25 21:43:46,898.898 INFO    ] 200
[2026-10-25 21:43:46,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:46,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:43:46,964.964 INFO    ] No update needed
[2026-10-25 21:43:46,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 21:43:47,003.003 INFO    ] 200
[2026-10-25 21:43:47,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:43:47,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:43:47,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:43:47,095.095 INFO    ] No camera update needed
[2026-10-25 21:43:47,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:43:47,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:43:47,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:43:47,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:43:49,150.150 INFO    ] ================================================
[2026-10-25 21:43:49,167.167 INFO    ] Launching Daemon at Sun Oct 25 21:43:49 IST 2026
[2026-10-25 21:43:49,178.178 INFO    ] ================================================
[2026-10-25 21:43:49,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:43:49
[2026-10-25 21:43:50,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:43:50,625.625 INFO    ] Initializing speech engine...
[2026-10-25 21:43:50,633.633 INFO    ] 2026-10-25 21:43:50
[2026-10-25 21:43:50,952.952 INFO    ] 2026-10-25 21:43:50
[2026-10-25 21:43:51,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:43:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:43:51,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:43:51,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:43:51,464.464 INFO    ] time= 25/10/2026 21:43:51
[2026-10-25 21:43:51,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:43:51,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:43:51,615.615 INFO    ] No existing commands found in stream
[2026-10-25 21:43:56,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:43:56,635.635 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-25 21:44:00,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:44:01,001.001 INFO    ] Checking for system updates...
[2026-10-25 21:44:01,038.038 INFO    ] 200
[2026-10-25 21:44:01,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:01,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:44:01,099.099 INFO    ] No update needed
[2026-10-25 21:44:01,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 21:44:01,136.136 INFO    ] 200
[2026-10-25 21:44:01,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:01,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:44:01,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:44:01,245.245 INFO    ] No camera update needed
[2026-10-25 21:44:01,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:44:01,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:44:01,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:44:01,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:44:03,300.300 INFO    ] ================================================
[2026-10-25 21:44:03,316.316 INFO    ] Launching Daemon at Sun Oct 25 21:44:03 IST 2026
[2026-10-25 21:44:03,329.329 INFO    ] ================================================
[2026-10-25 21:44:03,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:44:03
[2026-10-25 21:44:04,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:44:04,909.909 INFO    ] Initializing speech engine...
[2026-10-25 21:44:04,927.927 INFO    ] 2026-10-25 21:44:04
[2026-10-25 21:44:05,216.216 INFO    ] 2026-10-25 21:44:05
[2026-10-25 21:44:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:44:05,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:44:05,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:44:05,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:44:05,595.595 INFO    ] time= 25/10/2026 21:44:05
[2026-10-25 21:44:05,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:44:05,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:44:05,724.724 INFO    ] No existing commands found in stream
[2026-10-25 21:44:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:44:10,740.740 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 21:44:12,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:44:12,029.029 INFO    ] Checking for system updates...
[2026-10-25 21:44:12,064.064 INFO    ] 200
[2026-10-25 21:44:12,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:12,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:44:12,124.124 INFO    ] No update needed
[2026-10-25 21:44:12,126.126 INFO    ] Checking for camera pi updates...
[2026-10-25 21:44:12,164.164 INFO    ] 200
[2026-10-25 21:44:12,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:12,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:44:12,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:44:12,245.245 INFO    ] No camera update needed
[2026-10-25 21:44:12,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:44:12,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:44:12,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:44:12,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:44:14,301.301 INFO    ] ================================================
[2026-10-25 21:44:14,317.317 INFO    ] Launching Daemon at Sun Oct 25 21:44:14 IST 2026
[2026-10-25 21:44:14,328.328 INFO    ] ================================================
[2026-10-25 21:44:15,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:44:15
[2026-10-25 21:44:15,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:44:16,039.039 INFO    ] Initializing speech engine...
[2026-10-25 21:44:16,049.049 INFO    ] 2026-10-25 21:44:16
[2026-10-25 21:44:16,346.346 INFO    ] 2026-10-25 21:44:16
[2026-10-25 21:44:16,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:44:16,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:44:16,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:44:16,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:44:16,813.813 INFO    ] time= 25/10/2026 21:44:16
[2026-10-25 21:44:16,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:44:16,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:44:17,014.014 INFO    ] No existing commands found in stream
[2026-10-25 21:44:22,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:44:22,046.046 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-25 21:44:22,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:44:22,745.745 INFO    ] Checking for system updates...
[2026-10-25 21:44:22,783.783 INFO    ] 200
[2026-10-25 21:44:22,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:22,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:22,845.845 INFO    ] No update needed
[2026-10-25 21:44:22,849.849 INFO    ] Checking for camera pi updates...
[2026-10-25 21:44:22,889.889 INFO    ] 200
[2026-10-25 21:44:22,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:22,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:44:22,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:22,991.991 INFO    ] No camera update needed
[2026-10-25 21:44:22,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:44:22,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:44:23,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:44:23,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:44:25,049.049 INFO    ] ================================================
[2026-10-25 21:44:25,064.064 INFO    ] Launching Daemon at Sun Oct 25 21:44:25 IST 2026
[2026-10-25 21:44:25,074.074 INFO    ] ================================================
[2026-10-25 21:44:25,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:44:25
[2026-10-25 21:44:26,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:44:26,491.491 INFO    ] Initializing speech engine...
[2026-10-25 21:44:26,503.503 INFO    ] 2026-10-25 21:44:26
[2026-10-25 21:44:26,753.753 INFO    ] 2026-10-25 21:44:26
[2026-10-25 21:44:26,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:44:26,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:44:26,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:44:27,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:44:27,111.111 INFO    ] time= 25/10/2026 21:44:27
[2026-10-25 21:44:27,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:44:27,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:44:27,207.207 INFO    ] No existing commands found in stream
[2026-10-25 21:44:32,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:44:32,223.223 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 21:44:35,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:44:35,674.674 INFO    ] Checking for system updates...
[2026-10-25 21:44:35,710.710 INFO    ] 200
[2026-10-25 21:44:35,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:35,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:35,772.772 INFO    ] No update needed
[2026-10-25 21:44:35,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 21:44:35,808.808 INFO    ] 200
[2026-10-25 21:44:35,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:35,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:44:35,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:35,884.884 INFO    ] No camera update needed
[2026-10-25 21:44:35,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:44:35,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:44:35,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:44:35,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:44:37,941.941 INFO    ] ================================================
[2026-10-25 21:44:37,956.956 INFO    ] Launching Daemon at Sun Oct 25 21:44:37 IST 2026
[2026-10-25 21:44:37,967.967 INFO    ] ================================================
[2026-10-25 21:44:38,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:44:38
[2026-10-25 21:44:39,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:44:39,381.381 INFO    ] Initializing speech engine...
[2026-10-25 21:44:39,388.388 INFO    ] 2026-10-25 21:44:39
[2026-10-25 21:44:39,690.690 INFO    ] 2026-10-25 21:44:39
[2026-10-25 21:44:39,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:44:40,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:44:40,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:44:40,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:44:40,865.865 INFO    ] time= 25/10/2026 21:44:40
[2026-10-25 21:44:40,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:44:40,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:44:40,981.981 INFO    ] No existing commands found in stream
[2026-10-25 21:44:46,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:44:46,014.014 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 21:44:48,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:44:48,122.122 INFO    ] Checking for system updates...
[2026-10-25 21:44:48,165.165 INFO    ] 200
[2026-10-25 21:44:48,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:48,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:48,225.225 INFO    ] No update needed
[2026-10-25 21:44:48,228.228 INFO    ] Checking for camera pi updates...
[2026-10-25 21:44:48,264.264 INFO    ] 200
[2026-10-25 21:44:48,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:44:48,315.315 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:44:48,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:44:48,374.374 INFO    ] No camera update needed
[2026-10-25 21:44:48,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:44:48,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:44:48,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:44:48,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:44:50,433.433 INFO    ] ================================================
[2026-10-25 21:44:50,449.449 INFO    ] Launching Daemon at Sun Oct 25 21:44:50 IST 2026
[2026-10-25 21:44:50,460.460 INFO    ] ================================================
[2026-10-25 21:44:51,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:44:51
[2026-10-25 21:44:51,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:44:51,922.922 INFO    ] Initializing speech engine...
[2026-10-25 21:44:51,932.932 INFO    ] 2026-10-25 21:44:51
[2026-10-25 21:44:52,193.193 INFO    ] 2026-10-25 21:44:52
[2026-10-25 21:44:52,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:44:52,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:44:52,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:44:52,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:44:52,646.646 INFO    ] time= 25/10/2026 21:44:52
[2026-10-25 21:44:52,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:44:52,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:44:52,829.829 INFO    ] No existing commands found in stream
[2026-10-25 21:44:57,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:44:57,843.843 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-25 21:45:01,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:45:01,134.134 INFO    ] Checking for system updates...
[2026-10-25 21:45:01,174.174 INFO    ] 200
[2026-10-25 21:45:01,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:01,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:01,233.233 INFO    ] No update needed
[2026-10-25 21:45:01,235.235 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:01,269.269 INFO    ] 200
[2026-10-25 21:45:01,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:01,313.313 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:01,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:01,532.532 INFO    ] No camera update needed
[2026-10-25 21:45:01,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:01,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:01,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:01,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:45:03,630.630 INFO    ] ================================================
[2026-10-25 21:45:03,645.645 INFO    ] Launching Daemon at Sun Oct 25 21:45:03 IST 2026
[2026-10-25 21:45:03,656.656 INFO    ] ================================================
[2026-10-25 21:45:04,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:45:04
[2026-10-25 21:45:04,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:45:05,182.182 INFO    ] Initializing speech engine...
[2026-10-25 21:45:05,193.193 INFO    ] 2026-10-25 21:45:05
[2026-10-25 21:45:05,440.440 INFO    ] 2026-10-25 21:45:05
[2026-10-25 21:45:05,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:45:05,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:45:05,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:45:05,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:45:05,915.915 INFO    ] time= 25/10/2026 21:45:05
[2026-10-25 21:45:05,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:45:06,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:45:06,058.058 INFO    ] No existing commands found in stream
[2026-10-25 21:45:11,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:45:11,073.073 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 21:45:13,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:45:13,144.144 INFO    ] Checking for system updates...
[2026-10-25 21:45:13,180.180 INFO    ] 200
[2026-10-25 21:45:13,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:13,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:13,238.238 INFO    ] No update needed
[2026-10-25 21:45:13,240.240 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:13,274.274 INFO    ] 200
[2026-10-25 21:45:13,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:13,317.317 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:13,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:13,375.375 INFO    ] No camera update needed
[2026-10-25 21:45:13,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:13,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:13,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:13,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:45:15,432.432 INFO    ] ================================================
[2026-10-25 21:45:15,447.447 INFO    ] Launching Daemon at Sun Oct 25 21:45:15 IST 2026
[2026-10-25 21:45:15,459.459 INFO    ] ================================================
[2026-10-25 21:45:16,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:45:16
[2026-10-25 21:45:16,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:45:16,925.925 INFO    ] Initializing speech engine...
[2026-10-25 21:45:16,933.933 INFO    ] 2026-10-25 21:45:16
[2026-10-25 21:45:17,194.194 INFO    ] 2026-10-25 21:45:17
[2026-10-25 21:45:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:45:17,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:45:17,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:45:17,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:45:17,663.663 INFO    ] time= 25/10/2026 21:45:17
[2026-10-25 21:45:17,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:45:17,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:45:17,803.803 INFO    ] No existing commands found in stream
[2026-10-25 21:45:22,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:45:22,825.825 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 21:45:23,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:45:23,954.954 INFO    ] Checking for system updates...
[2026-10-25 21:45:23,989.989 INFO    ] 200
[2026-10-25 21:45:23,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:24,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:24,047.047 INFO    ] No update needed
[2026-10-25 21:45:24,049.049 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:24,089.089 INFO    ] 200
[2026-10-25 21:45:24,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:24,133.133 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:24,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:24,196.196 INFO    ] No camera update needed
[2026-10-25 21:45:24,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:24,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:24,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:24,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:45:26,257.257 INFO    ] ================================================
[2026-10-25 21:45:26,273.273 INFO    ] Launching Daemon at Sun Oct 25 21:45:26 IST 2026
[2026-10-25 21:45:26,285.285 INFO    ] ================================================
[2026-10-25 21:45:26,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:45:26
[2026-10-25 21:45:27,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:45:27,712.712 INFO    ] Initializing speech engine...
[2026-10-25 21:45:27,726.726 INFO    ] 2026-10-25 21:45:27
[2026-10-25 21:45:28,003.003 INFO    ] 2026-10-25 21:45:27
[2026-10-25 21:45:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:45:28,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:45:28,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:45:28,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:45:28,364.364 INFO    ] time= 25/10/2026 21:45:28
[2026-10-25 21:45:28,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:45:28,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:45:28,484.484 INFO    ] No existing commands found in stream
[2026-10-25 21:45:33,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:45:33,500.500 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 21:45:36,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:45:36,601.601 INFO    ] Checking for system updates...
[2026-10-25 21:45:36,639.639 INFO    ] 200
[2026-10-25 21:45:36,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:36,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:45:36,697.697 INFO    ] No update needed
[2026-10-25 21:45:36,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:36,733.733 INFO    ] 200
[2026-10-25 21:45:36,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:36,775.775 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:36,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:45:36,935.935 INFO    ] No camera update needed
[2026-10-25 21:45:36,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:36,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:36,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:36,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:45:38,990.990 INFO    ] ================================================
[2026-10-25 21:45:39,005.005 INFO    ] Launching Daemon at Sun Oct 25 21:45:38 IST 2026
[2026-10-25 21:45:39,016.016 INFO    ] ================================================
[2026-10-25 21:45:39,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:45:39
[2026-10-25 21:45:40,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:45:40,595.595 INFO    ] Initializing speech engine...
[2026-10-25 21:45:40,603.603 INFO    ] 2026-10-25 21:45:40
[2026-10-25 21:45:40,875.875 INFO    ] 2026-10-25 21:45:40
[2026-10-25 21:45:40,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:45:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:45:41,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:45:41,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:45:41,249.249 INFO    ] time= 25/10/2026 21:45:41
[2026-10-25 21:45:41,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:45:41,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:45:41,408.408 INFO    ] No existing commands found in stream
[2026-10-25 21:45:46,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:45:46,435.435 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 21:45:48,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:45:48,516.516 INFO    ] Checking for system updates...
[2026-10-25 21:45:48,553.553 INFO    ] 200
[2026-10-25 21:45:48,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:48,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:45:48,610.610 INFO    ] No update needed
[2026-10-25 21:45:48,613.613 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:48,646.646 INFO    ] 200
[2026-10-25 21:45:48,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:48,690.690 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:48,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:45:48,745.745 INFO    ] No camera update needed
[2026-10-25 21:45:48,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:48,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:48,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:48,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:45:50,800.800 INFO    ] ================================================
[2026-10-25 21:45:50,816.816 INFO    ] Launching Daemon at Sun Oct 25 21:45:50 IST 2026
[2026-10-25 21:45:50,827.827 INFO    ] ================================================
[2026-10-25 21:45:51,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:45:51
[2026-10-25 21:45:52,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:45:52,291.291 INFO    ] Initializing speech engine...
[2026-10-25 21:45:52,300.300 INFO    ] 2026-10-25 21:45:52
[2026-10-25 21:45:52,547.547 INFO    ] 2026-10-25 21:45:52
[2026-10-25 21:45:52,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:45:52,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:45:52,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:45:52,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:45:52,916.916 INFO    ] time= 25/10/2026 21:45:52
[2026-10-25 21:45:52,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:45:52,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:45:53,094.094 INFO    ] No existing commands found in stream
[2026-10-25 21:45:58,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:45:58,125.125 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 21:45:58,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:45:58,583.583 INFO    ] Checking for system updates...
[2026-10-25 21:45:58,620.620 INFO    ] 200
[2026-10-25 21:45:58,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:58,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:58,677.677 INFO    ] No update needed
[2026-10-25 21:45:58,679.679 INFO    ] Checking for camera pi updates...
[2026-10-25 21:45:58,713.713 INFO    ] 200
[2026-10-25 21:45:58,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:45:58,762.762 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:45:58,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:45:58,807.807 INFO    ] No camera update needed
[2026-10-25 21:45:58,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:45:58,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:45:58,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:45:58,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:46:00,872.872 INFO    ] ================================================
[2026-10-25 21:46:00,888.888 INFO    ] Launching Daemon at Sun Oct 25 21:46:00 IST 2026
[2026-10-25 21:46:00,899.899 INFO    ] ================================================
[2026-10-25 21:46:01,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:46:01
[2026-10-25 21:46:02,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:46:02,615.615 INFO    ] Initializing speech engine...
[2026-10-25 21:46:02,637.637 INFO    ] 2026-10-25 21:46:02
[2026-10-25 21:46:02,966.966 INFO    ] 2026-10-25 21:46:02
[2026-10-25 21:46:03,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:46:03,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:46:03,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:46:03,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:46:03,346.346 INFO    ] time= 25/10/2026 21:46:03
[2026-10-25 21:46:03,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:46:03,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:46:03,449.449 INFO    ] No existing commands found in stream
[2026-10-25 21:46:08,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:46:08,467.467 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 21:46:11,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:46:11,611.611 INFO    ] Checking for system updates...
[2026-10-25 21:46:11,647.647 INFO    ] 200
[2026-10-25 21:46:11,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:11,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:46:11,705.705 INFO    ] No update needed
[2026-10-25 21:46:11,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 21:46:11,741.741 INFO    ] 200
[2026-10-25 21:46:11,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:11,785.785 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:46:11,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:46:11,854.854 INFO    ] No camera update needed
[2026-10-25 21:46:11,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:46:11,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:46:11,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:46:11,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:46:13,912.912 INFO    ] ================================================
[2026-10-25 21:46:13,928.928 INFO    ] Launching Daemon at Sun Oct 25 21:46:13 IST 2026
[2026-10-25 21:46:13,939.939 INFO    ] ================================================
[2026-10-25 21:46:14,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:46:14
[2026-10-25 21:46:15,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:46:15,491.491 INFO    ] Initializing speech engine...
[2026-10-25 21:46:15,502.502 INFO    ] 2026-10-25 21:46:15
[2026-10-25 21:46:15,784.784 INFO    ] 2026-10-25 21:46:15
[2026-10-25 21:46:15,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:46:16,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:46:16,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:46:16,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:46:16,243.243 INFO    ] time= 25/10/2026 21:46:16
[2026-10-25 21:46:16,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:46:16,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:46:16,415.415 INFO    ] No existing commands found in stream
[2026-10-25 21:46:21,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:46:21,462.462 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 21:46:22,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:46:22,855.855 INFO    ] Checking for system updates...
[2026-10-25 21:46:22,893.893 INFO    ] 200
[2026-10-25 21:46:22,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:22,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:22,951.951 INFO    ] No update needed
[2026-10-25 21:46:22,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 21:46:22,990.990 INFO    ] 200
[2026-10-25 21:46:22,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:23,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:46:23,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:23,084.084 INFO    ] No camera update needed
[2026-10-25 21:46:23,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:46:23,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:46:23,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:46:23,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:46:25,141.141 INFO    ] ================================================
[2026-10-25 21:46:25,157.157 INFO    ] Launching Daemon at Sun Oct 25 21:46:25 IST 2026
[2026-10-25 21:46:25,168.168 INFO    ] ================================================
[2026-10-25 21:46:25,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:46:25
[2026-10-25 21:46:26,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:46:26,802.802 INFO    ] Initializing speech engine...
[2026-10-25 21:46:26,809.809 INFO    ] 2026-10-25 21:46:26
[2026-10-25 21:46:27,085.085 INFO    ] 2026-10-25 21:46:27
[2026-10-25 21:46:27,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:46:27,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:46:27,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:46:27,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:46:27,446.446 INFO    ] time= 25/10/2026 21:46:27
[2026-10-25 21:46:27,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:46:27,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:46:27,623.623 INFO    ] No existing commands found in stream
[2026-10-25 21:46:32,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:46:32,654.654 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 21:46:33,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:46:33,549.549 INFO    ] Checking for system updates...
[2026-10-25 21:46:33,587.587 INFO    ] 200
[2026-10-25 21:46:33,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:33,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:33,648.648 INFO    ] No update needed
[2026-10-25 21:46:33,650.650 INFO    ] Checking for camera pi updates...
[2026-10-25 21:46:33,686.686 INFO    ] 200
[2026-10-25 21:46:33,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:33,731.731 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:46:33,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:33,795.795 INFO    ] No camera update needed
[2026-10-25 21:46:33,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:46:33,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:46:33,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:46:33,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:46:35,855.855 INFO    ] ================================================
[2026-10-25 21:46:35,871.871 INFO    ] Launching Daemon at Sun Oct 25 21:46:35 IST 2026
[2026-10-25 21:46:35,883.883 INFO    ] ================================================
[2026-10-25 21:46:36,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:46:36
[2026-10-25 21:46:37,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:46:37,331.331 INFO    ] Initializing speech engine...
[2026-10-25 21:46:37,340.340 INFO    ] 2026-10-25 21:46:37
[2026-10-25 21:46:37,609.609 INFO    ] 2026-10-25 21:46:37
[2026-10-25 21:46:37,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:46:37,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:46:37,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:46:37,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:46:38,034.034 INFO    ] time= 25/10/2026 21:46:37
[2026-10-25 21:46:38,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:46:38,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:46:38,192.192 INFO    ] No existing commands found in stream
[2026-10-25 21:46:43,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:46:43,215.215 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-25 21:46:47,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:46:47,674.674 INFO    ] Checking for system updates...
[2026-10-25 21:46:47,712.712 INFO    ] 200
[2026-10-25 21:46:47,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:47,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:47,773.773 INFO    ] No update needed
[2026-10-25 21:46:47,775.775 INFO    ] Checking for camera pi updates...
[2026-10-25 21:46:47,810.810 INFO    ] 200
[2026-10-25 21:46:47,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:46:47,855.855 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:46:47,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:46:47,928.928 INFO    ] No camera update needed
[2026-10-25 21:46:47,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:46:47,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:46:47,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:46:47,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:46:49,987.987 INFO    ] ================================================
[2026-10-25 21:46:50,003.003 INFO    ] Launching Daemon at Sun Oct 25 21:46:49 IST 2026
[2026-10-25 21:46:50,014.014 INFO    ] ================================================
[2026-10-25 21:46:50,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:46:50
[2026-10-25 21:46:51,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:46:51,485.485 INFO    ] Initializing speech engine...
[2026-10-25 21:46:51,491.491 INFO    ] 2026-10-25 21:46:51
[2026-10-25 21:46:51,744.744 INFO    ] 2026-10-25 21:46:51
[2026-10-25 21:46:51,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:46:51,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:46:51,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:46:52,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:46:52,144.144 INFO    ] time= 25/10/2026 21:46:52
[2026-10-25 21:46:52,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:46:52,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:46:52,319.319 INFO    ] No existing commands found in stream
[2026-10-25 21:46:57,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:46:57,354.354 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-25 21:47:01,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:47:01,367.367 INFO    ] Checking for system updates...
[2026-10-25 21:47:01,433.433 INFO    ] 200
[2026-10-25 21:47:01,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:01,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:01,564.564 INFO    ] No update needed
[2026-10-25 21:47:01,568.568 INFO    ] Checking for camera pi updates...
[2026-10-25 21:47:01,625.625 INFO    ] 200
[2026-10-25 21:47:01,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:01,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:47:01,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:01,722.722 INFO    ] No camera update needed
[2026-10-25 21:47:01,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:47:01,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:47:01,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:47:01,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:47:03,785.785 INFO    ] ================================================
[2026-10-25 21:47:03,801.801 INFO    ] Launching Daemon at Sun Oct 25 21:47:03 IST 2026
[2026-10-25 21:47:03,817.817 INFO    ] ================================================
[2026-10-25 21:47:04,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:47:04
[2026-10-25 21:47:05,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:47:05,256.256 INFO    ] Initializing speech engine...
[2026-10-25 21:47:05,279.279 INFO    ] 2026-10-25 21:47:05
[2026-10-25 21:47:05,535.535 INFO    ] 2026-10-25 21:47:05
[2026-10-25 21:47:05,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:47:05,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:47:05,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:47:05,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:47:05,913.913 INFO    ] time= 25/10/2026 21:47:05
[2026-10-25 21:47:05,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:47:05,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:47:06,073.073 INFO    ] No existing commands found in stream
[2026-10-25 21:47:11,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:47:11,102.102 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 21:47:14,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:47:14,260.260 INFO    ] Checking for system updates...
[2026-10-25 21:47:14,297.297 INFO    ] 200
[2026-10-25 21:47:14,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:14,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:14,366.366 INFO    ] No update needed
[2026-10-25 21:47:14,369.369 INFO    ] Checking for camera pi updates...
[2026-10-25 21:47:14,406.406 INFO    ] 200
[2026-10-25 21:47:14,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:14,457.457 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:47:14,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:14,517.517 INFO    ] No camera update needed
[2026-10-25 21:47:14,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:47:14,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:47:14,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:47:14,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:47:16,574.574 INFO    ] ================================================
[2026-10-25 21:47:16,590.590 INFO    ] Launching Daemon at Sun Oct 25 21:47:16 IST 2026
[2026-10-25 21:47:16,602.602 INFO    ] ================================================
[2026-10-25 21:47:17,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:47:17
[2026-10-25 21:47:17,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:47:18,281.281 INFO    ] Initializing speech engine...
[2026-10-25 21:47:18,289.289 INFO    ] 2026-10-25 21:47:18
[2026-10-25 21:47:18,578.578 INFO    ] 2026-10-25 21:47:18
[2026-10-25 21:47:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:47:18,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:47:18,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:47:19,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:47:19,009.009 INFO    ] time= 25/10/2026 21:47:19
[2026-10-25 21:47:19,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:47:19,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:47:19,179.179 INFO    ] No existing commands found in stream
[2026-10-25 21:47:24,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:47:24,212.212 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 21:47:26,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:47:26,524.524 INFO    ] Checking for system updates...
[2026-10-25 21:47:26,563.563 INFO    ] 200
[2026-10-25 21:47:26,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:26,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:47:26,625.625 INFO    ] No update needed
[2026-10-25 21:47:26,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 21:47:26,664.664 INFO    ] 200
[2026-10-25 21:47:26,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:26,715.715 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:47:26,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:47:26,779.779 INFO    ] No camera update needed
[2026-10-25 21:47:26,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:47:26,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:47:26,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:47:26,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:47:28,840.840 INFO    ] ================================================
[2026-10-25 21:47:28,855.855 INFO    ] Launching Daemon at Sun Oct 25 21:47:28 IST 2026
[2026-10-25 21:47:28,867.867 INFO    ] ================================================
[2026-10-25 21:47:29,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:47:29
[2026-10-25 21:47:30,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:47:30,326.326 INFO    ] Initializing speech engine...
[2026-10-25 21:47:30,334.334 INFO    ] 2026-10-25 21:47:30
[2026-10-25 21:47:30,591.591 INFO    ] 2026-10-25 21:47:30
[2026-10-25 21:47:30,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:47:30,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:47:30,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:47:31,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:47:31,054.054 INFO    ] time= 25/10/2026 21:47:31
[2026-10-25 21:47:31,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:47:31,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:47:31,196.196 INFO    ] No existing commands found in stream
[2026-10-25 21:47:36,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:47:36,211.211 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 21:47:40,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:47:40,552.552 INFO    ] Checking for system updates...
[2026-10-25 21:47:40,590.590 INFO    ] 200
[2026-10-25 21:47:40,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:40,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:40,657.657 INFO    ] No update needed
[2026-10-25 21:47:40,660.660 INFO    ] Checking for camera pi updates...
[2026-10-25 21:47:40,695.695 INFO    ] 200
[2026-10-25 21:47:40,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:40,740.740 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:47:40,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:47:40,914.914 INFO    ] No camera update needed
[2026-10-25 21:47:40,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:47:40,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:47:40,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:47:40,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:47:42,968.968 INFO    ] ================================================
[2026-10-25 21:47:42,983.983 INFO    ] Launching Daemon at Sun Oct 25 21:47:42 IST 2026
[2026-10-25 21:47:42,993.993 INFO    ] ================================================
[2026-10-25 21:47:43,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:47:43
[2026-10-25 21:47:44,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:47:44,440.440 INFO    ] Initializing speech engine...
[2026-10-25 21:47:44,453.453 INFO    ] 2026-10-25 21:47:44
[2026-10-25 21:47:44,715.715 INFO    ] 2026-10-25 21:47:44
[2026-10-25 21:47:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:47:45,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:47:45,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:47:45,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:47:45,178.178 INFO    ] time= 25/10/2026 21:47:45
[2026-10-25 21:47:45,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:47:45,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:47:45,339.339 INFO    ] No existing commands found in stream
[2026-10-25 21:47:50,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:47:50,372.372 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 21:47:50,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:47:53,391.391 INFO    ] Checking for system updates...
[2026-10-25 21:47:53,445.445 INFO    ] 200
[2026-10-25 21:47:53,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:53,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:47:53,506.506 INFO    ] No update needed
[2026-10-25 21:47:53,508.508 INFO    ] Checking for camera pi updates...
[2026-10-25 21:47:53,542.542 INFO    ] 200
[2026-10-25 21:47:53,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:47:53,587.587 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:47:53,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:47:53,639.639 INFO    ] No camera update needed
[2026-10-25 21:47:53,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:47:53,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:47:53,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:47:53,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:47:55,696.696 INFO    ] ================================================
[2026-10-25 21:47:55,711.711 INFO    ] Launching Daemon at Sun Oct 25 21:47:55 IST 2026
[2026-10-25 21:47:55,722.722 INFO    ] ================================================
[2026-10-25 21:47:56,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:47:56
[2026-10-25 21:47:56,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:47:57,141.141 INFO    ] Initializing speech engine...
[2026-10-25 21:47:57,150.150 INFO    ] 2026-10-25 21:47:57
[2026-10-25 21:47:57,399.399 INFO    ] 2026-10-25 21:47:57
[2026-10-25 21:47:57,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:47:57,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:47:57,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:47:57,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:47:57,775.775 INFO    ] time= 25/10/2026 21:47:57
[2026-10-25 21:47:57,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:47:57,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:47:57,935.935 INFO    ] No existing commands found in stream
[2026-10-25 21:48:02,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:48:02,963.963 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 21:48:06,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:48:06,271.271 INFO    ] Checking for system updates...
[2026-10-25 21:48:06,308.308 INFO    ] 200
[2026-10-25 21:48:06,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:06,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:48:06,369.369 INFO    ] No update needed
[2026-10-25 21:48:06,372.372 INFO    ] Checking for camera pi updates...
[2026-10-25 21:48:06,407.407 INFO    ] 200
[2026-10-25 21:48:06,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:06,453.453 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:48:06,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:48:06,511.511 INFO    ] No camera update needed
[2026-10-25 21:48:06,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:48:06,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:48:06,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:48:06,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:48:08,571.571 INFO    ] ================================================
[2026-10-25 21:48:08,586.586 INFO    ] Launching Daemon at Sun Oct 25 21:48:08 IST 2026
[2026-10-25 21:48:08,597.597 INFO    ] ================================================
[2026-10-25 21:48:09,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:48:09
[2026-10-25 21:48:09,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:48:10,046.046 INFO    ] Initializing speech engine...
[2026-10-25 21:48:10,056.056 INFO    ] 2026-10-25 21:48:10
[2026-10-25 21:48:10,310.310 INFO    ] 2026-10-25 21:48:10
[2026-10-25 21:48:10,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:48:10,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:48:10,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:48:10,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:48:10,854.854 INFO    ] time= 25/10/2026 21:48:10
[2026-10-25 21:48:10,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:48:10,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:48:10,993.993 INFO    ] No existing commands found in stream
[2026-10-25 21:48:16,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:48:16,022.022 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 21:48:20,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:48:20,096.096 INFO    ] Checking for system updates...
[2026-10-25 21:48:20,133.133 INFO    ] 200
[2026-10-25 21:48:20,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:20,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:20,194.194 INFO    ] No update needed
[2026-10-25 21:48:20,197.197 INFO    ] Checking for camera pi updates...
[2026-10-25 21:48:20,241.241 INFO    ] 200
[2026-10-25 21:48:20,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:20,286.286 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:48:20,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:20,349.349 INFO    ] No camera update needed
[2026-10-25 21:48:20,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:48:20,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:48:20,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:48:20,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:48:22,409.409 INFO    ] ================================================
[2026-10-25 21:48:22,425.425 INFO    ] Launching Daemon at Sun Oct 25 21:48:22 IST 2026
[2026-10-25 21:48:22,435.435 INFO    ] ================================================
[2026-10-25 21:48:23,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:48:23
[2026-10-25 21:48:23,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:48:23,893.893 INFO    ] Initializing speech engine...
[2026-10-25 21:48:23,903.903 INFO    ] 2026-10-25 21:48:23
[2026-10-25 21:48:24,153.153 INFO    ] 2026-10-25 21:48:24
[2026-10-25 21:48:24,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:48:24,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:48:24,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:48:24,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:48:24,524.524 INFO    ] time= 25/10/2026 21:48:24
[2026-10-25 21:48:24,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:48:24,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:48:24,707.707 INFO    ] No existing commands found in stream
[2026-10-25 21:48:29,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:48:29,735.735 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 21:48:33,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:48:33,355.355 INFO    ] Checking for system updates...
[2026-10-25 21:48:33,392.392 INFO    ] 200
[2026-10-25 21:48:33,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:33,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:33,451.451 INFO    ] No update needed
[2026-10-25 21:48:33,454.454 INFO    ] Checking for camera pi updates...
[2026-10-25 21:48:33,490.490 INFO    ] 200
[2026-10-25 21:48:33,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:33,535.535 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:48:33,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:33,590.590 INFO    ] No camera update needed
[2026-10-25 21:48:33,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:48:33,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:48:33,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:48:33,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:48:35,646.646 INFO    ] ================================================
[2026-10-25 21:48:35,661.661 INFO    ] Launching Daemon at Sun Oct 25 21:48:35 IST 2026
[2026-10-25 21:48:35,672.672 INFO    ] ================================================
[2026-10-25 21:48:36,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:48:36
[2026-10-25 21:48:36,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:48:37,123.123 INFO    ] Initializing speech engine...
[2026-10-25 21:48:37,131.131 INFO    ] 2026-10-25 21:48:37
[2026-10-25 21:48:37,381.381 INFO    ] 2026-10-25 21:48:37
[2026-10-25 21:48:37,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:48:37,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:48:37,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:48:37,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:48:37,800.800 INFO    ] time= 25/10/2026 21:48:37
[2026-10-25 21:48:37,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:48:37,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:48:37,953.953 INFO    ] No existing commands found in stream
[2026-10-25 21:48:42,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:48:42,967.967 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 21:48:46,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:48:46,250.250 INFO    ] Checking for system updates...
[2026-10-25 21:48:46,287.287 INFO    ] 200
[2026-10-25 21:48:46,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:46,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:46,346.346 INFO    ] No update needed
[2026-10-25 21:48:46,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 21:48:46,382.382 INFO    ] 200
[2026-10-25 21:48:46,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:46,426.426 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:48:46,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:48:46,476.476 INFO    ] No camera update needed
[2026-10-25 21:48:46,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:48:46,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:48:46,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:48:46,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:48:48,533.533 INFO    ] ================================================
[2026-10-25 21:48:48,548.548 INFO    ] Launching Daemon at Sun Oct 25 21:48:48 IST 2026
[2026-10-25 21:48:48,559.559 INFO    ] ================================================
[2026-10-25 21:48:49,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:48:49
[2026-10-25 21:48:49,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:48:50,018.018 INFO    ] Initializing speech engine...
[2026-10-25 21:48:50,027.027 INFO    ] 2026-10-25 21:48:50
[2026-10-25 21:48:50,274.274 INFO    ] 2026-10-25 21:48:50
[2026-10-25 21:48:50,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:48:50,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:48:50,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:48:50,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:48:50,662.662 INFO    ] time= 25/10/2026 21:48:50
[2026-10-25 21:48:50,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:48:50,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:48:50,786.786 INFO    ] No existing commands found in stream
[2026-10-25 21:48:55,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:48:55,802.802 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 21:48:57,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:48:57,913.913 INFO    ] Checking for system updates...
[2026-10-25 21:48:57,950.950 INFO    ] 200
[2026-10-25 21:48:57,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:58,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:48:58,008.008 INFO    ] No update needed
[2026-10-25 21:48:58,010.010 INFO    ] Checking for camera pi updates...
[2026-10-25 21:48:58,044.044 INFO    ] 200
[2026-10-25 21:48:58,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:48:58,087.087 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:48:58,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:48:58,150.150 INFO    ] No camera update needed
[2026-10-25 21:48:58,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:48:58,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:48:58,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:48:58,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:49:00,204.204 INFO    ] ================================================
[2026-10-25 21:49:00,220.220 INFO    ] Launching Daemon at Sun Oct 25 21:49:00 IST 2026
[2026-10-25 21:49:00,231.231 INFO    ] ================================================
[2026-10-25 21:49:00,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:49:00
[2026-10-25 21:49:01,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:49:01,967.967 INFO    ] Initializing speech engine...
[2026-10-25 21:49:01,976.976 INFO    ] 2026-10-25 21:49:01
[2026-10-25 21:49:02,273.273 INFO    ] 2026-10-25 21:49:02
[2026-10-25 21:49:02,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:49:02,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:49:02,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:49:02,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:49:02,777.777 INFO    ] time= 25/10/2026 21:49:02
[2026-10-25 21:49:02,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:49:02,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:49:02,952.952 INFO    ] No existing commands found in stream
[2026-10-25 21:49:07,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:49:07,979.979 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 21:49:10,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:49:10,896.896 INFO    ] Checking for system updates...
[2026-10-25 21:49:10,935.935 INFO    ] 200
[2026-10-25 21:49:10,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:10,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:11,003.003 INFO    ] No update needed
[2026-10-25 21:49:11,006.006 INFO    ] Checking for camera pi updates...
[2026-10-25 21:49:11,050.050 INFO    ] 200
[2026-10-25 21:49:11,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:11,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:49:11,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:11,140.140 INFO    ] No camera update needed
[2026-10-25 21:49:11,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:49:11,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:49:11,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:49:11,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:49:13,212.212 INFO    ] ================================================
[2026-10-25 21:49:13,226.226 INFO    ] Launching Daemon at Sun Oct 25 21:49:13 IST 2026
[2026-10-25 21:49:13,237.237 INFO    ] ================================================
[2026-10-25 21:49:13,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:49:13
[2026-10-25 21:49:14,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:49:14,687.687 INFO    ] Initializing speech engine...
[2026-10-25 21:49:14,694.694 INFO    ] 2026-10-25 21:49:14
[2026-10-25 21:49:14,953.953 INFO    ] 2026-10-25 21:49:14
[2026-10-25 21:49:14,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:49:15,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:49:15,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:49:15,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:49:15,454.454 INFO    ] time= 25/10/2026 21:49:15
[2026-10-25 21:49:15,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:49:15,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:49:15,651.651 INFO    ] No existing commands found in stream
[2026-10-25 21:49:20,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:49:20,682.682 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 21:49:23,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:49:23,362.362 INFO    ] Checking for system updates...
[2026-10-25 21:49:23,399.399 INFO    ] 200
[2026-10-25 21:49:23,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:23,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:23,460.460 INFO    ] No update needed
[2026-10-25 21:49:23,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 21:49:23,501.501 INFO    ] 200
[2026-10-25 21:49:23,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:23,550.550 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:49:23,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:23,586.586 INFO    ] No camera update needed
[2026-10-25 21:49:23,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:49:23,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:49:23,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:49:23,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:49:25,652.652 INFO    ] ================================================
[2026-10-25 21:49:25,666.666 INFO    ] Launching Daemon at Sun Oct 25 21:49:25 IST 2026
[2026-10-25 21:49:25,677.677 INFO    ] ================================================
[2026-10-25 21:49:26,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:49:26
[2026-10-25 21:49:26,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:49:27,150.150 INFO    ] Initializing speech engine...
[2026-10-25 21:49:27,170.170 INFO    ] 2026-10-25 21:49:27
[2026-10-25 21:49:27,442.442 INFO    ] 2026-10-25 21:49:27
[2026-10-25 21:49:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:49:27,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:49:27,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:49:27,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:49:27,858.858 INFO    ] time= 25/10/2026 21:49:27
[2026-10-25 21:49:27,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:49:27,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:49:27,948.948 INFO    ] No existing commands found in stream
[2026-10-25 21:49:32,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:49:32,981.981 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 21:49:36,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:49:36,711.711 INFO    ] Checking for system updates...
[2026-10-25 21:49:36,747.747 INFO    ] 200
[2026-10-25 21:49:36,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:36,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:36,810.810 INFO    ] No update needed
[2026-10-25 21:49:36,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 21:49:36,847.847 INFO    ] 200
[2026-10-25 21:49:36,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:36,890.890 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:49:36,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:36,953.953 INFO    ] No camera update needed
[2026-10-25 21:49:36,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:49:36,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:49:36,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:49:36,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:49:39,008.008 INFO    ] ================================================
[2026-10-25 21:49:39,024.024 INFO    ] Launching Daemon at Sun Oct 25 21:49:39 IST 2026
[2026-10-25 21:49:39,034.034 INFO    ] ================================================
[2026-10-25 21:49:39,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:49:39
[2026-10-25 21:49:40,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:49:40,488.488 INFO    ] Initializing speech engine...
[2026-10-25 21:49:40,496.496 INFO    ] 2026-10-25 21:49:40
[2026-10-25 21:49:40,773.773 INFO    ] 2026-10-25 21:49:40
[2026-10-25 21:49:40,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:49:40,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:49:40,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:49:41,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:49:41,118.118 INFO    ] time= 25/10/2026 21:49:41
[2026-10-25 21:49:41,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:49:41,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:49:41,231.231 INFO    ] No existing commands found in stream
[2026-10-25 21:49:46,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:49:46,248.248 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 21:49:46,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:49:46,820.820 INFO    ] Checking for system updates...
[2026-10-25 21:49:46,856.856 INFO    ] 200
[2026-10-25 21:49:46,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:46,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:46,915.915 INFO    ] No update needed
[2026-10-25 21:49:46,917.917 INFO    ] Checking for camera pi updates...
[2026-10-25 21:49:46,951.951 INFO    ] 200
[2026-10-25 21:49:46,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:49:46,993.993 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:49:47,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:49:47,158.158 INFO    ] No camera update needed
[2026-10-25 21:49:47,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:49:47,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:49:47,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:49:47,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:49:49,213.213 INFO    ] ================================================
[2026-10-25 21:49:49,230.230 INFO    ] Launching Daemon at Sun Oct 25 21:49:49 IST 2026
[2026-10-25 21:49:49,245.245 INFO    ] ================================================
[2026-10-25 21:49:49,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:49:49
[2026-10-25 21:49:50,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:49:50,644.644 INFO    ] Initializing speech engine...
[2026-10-25 21:49:50,666.666 INFO    ] 2026-10-25 21:49:50
[2026-10-25 21:49:50,918.918 INFO    ] 2026-10-25 21:49:50
[2026-10-25 21:49:50,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:49:51,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:49:51,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:49:51,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:49:51,390.390 INFO    ] time= 25/10/2026 21:49:51
[2026-10-25 21:49:51,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:49:51,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:49:51,532.532 INFO    ] No existing commands found in stream
[2026-10-25 21:49:56,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:49:56,547.547 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 21:50:00,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:50:00,803.803 INFO    ] Checking for system updates...
[2026-10-25 21:50:00,839.839 INFO    ] 200
[2026-10-25 21:50:00,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:00,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:00,908.908 INFO    ] No update needed
[2026-10-25 21:50:00,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 21:50:00,945.945 INFO    ] 200
[2026-10-25 21:50:00,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:00,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:50:01,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:01,064.064 INFO    ] No camera update needed
[2026-10-25 21:50:01,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:50:01,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:50:01,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:50:01,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:50:03,144.144 INFO    ] ================================================
[2026-10-25 21:50:03,159.159 INFO    ] Launching Daemon at Sun Oct 25 21:50:03 IST 2026
[2026-10-25 21:50:03,170.170 INFO    ] ================================================
[2026-10-25 21:50:03,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:50:03
[2026-10-25 21:50:04,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:50:04,691.691 INFO    ] Initializing speech engine...
[2026-10-25 21:50:04,701.701 INFO    ] 2026-10-25 21:50:04
[2026-10-25 21:50:04,950.950 INFO    ] 2026-10-25 21:50:04
[2026-10-25 21:50:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:50:05,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:50:05,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:50:05,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:50:05,327.327 INFO    ] time= 25/10/2026 21:50:05
[2026-10-25 21:50:05,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:50:05,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:50:05,487.487 INFO    ] No existing commands found in stream
[2026-10-25 21:50:10,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:50:10,515.515 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 21:50:13,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:50:13,880.880 INFO    ] Checking for system updates...
[2026-10-25 21:50:13,915.915 INFO    ] 200
[2026-10-25 21:50:13,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:13,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:13,978.978 INFO    ] No update needed
[2026-10-25 21:50:13,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 21:50:14,015.015 INFO    ] 200
[2026-10-25 21:50:14,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:14,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:50:14,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:14,127.127 INFO    ] No camera update needed
[2026-10-25 21:50:14,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:50:14,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:50:14,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:50:14,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:50:16,186.186 INFO    ] ================================================
[2026-10-25 21:50:16,201.201 INFO    ] Launching Daemon at Sun Oct 25 21:50:16 IST 2026
[2026-10-25 21:50:16,212.212 INFO    ] ================================================
[2026-10-25 21:50:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:50:16
[2026-10-25 21:50:17,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:50:17,666.666 INFO    ] Initializing speech engine...
[2026-10-25 21:50:17,674.674 INFO    ] 2026-10-25 21:50:17
[2026-10-25 21:50:17,953.953 INFO    ] 2026-10-25 21:50:17
[2026-10-25 21:50:18,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:50:18,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:50:18,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:50:18,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:50:18,484.484 INFO    ] time= 25/10/2026 21:50:18
[2026-10-25 21:50:18,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:50:18,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:50:18,625.625 INFO    ] No existing commands found in stream
[2026-10-25 21:50:23,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:50:23,655.655 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 21:50:27,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:50:27,973.973 INFO    ] Checking for system updates...
[2026-10-25 21:50:28,009.009 INFO    ] 200
[2026-10-25 21:50:28,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:28,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:28,071.071 INFO    ] No update needed
[2026-10-25 21:50:28,073.073 INFO    ] Checking for camera pi updates...
[2026-10-25 21:50:28,107.107 INFO    ] 200
[2026-10-25 21:50:28,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:28,149.149 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:50:28,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:50:28,213.213 INFO    ] No camera update needed
[2026-10-25 21:50:28,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:50:28,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:50:28,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:50:28,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:50:30,270.270 INFO    ] ================================================
[2026-10-25 21:50:30,285.285 INFO    ] Launching Daemon at Sun Oct 25 21:50:30 IST 2026
[2026-10-25 21:50:30,296.296 INFO    ] ================================================
[2026-10-25 21:50:30,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:50:30
[2026-10-25 21:50:31,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:50:31,748.748 INFO    ] Initializing speech engine...
[2026-10-25 21:50:31,751.751 INFO    ] 2026-10-25 21:50:31
[2026-10-25 21:50:32,038.038 INFO    ] 2026-10-25 21:50:32
[2026-10-25 21:50:32,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:50:32,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:50:32,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:50:32,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:50:32,432.432 INFO    ] time= 25/10/2026 21:50:32
[2026-10-25 21:50:32,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:50:32,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:50:32,563.563 INFO    ] No existing commands found in stream
[2026-10-25 21:50:37,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:50:37,603.603 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-25 21:50:40,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:50:40,789.789 INFO    ] Checking for system updates...
[2026-10-25 21:50:40,825.825 INFO    ] 200
[2026-10-25 21:50:40,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:40,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:50:40,882.882 INFO    ] No update needed
[2026-10-25 21:50:40,885.885 INFO    ] Checking for camera pi updates...
[2026-10-25 21:50:40,922.922 INFO    ] 200
[2026-10-25 21:50:40,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:40,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:50:41,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:50:41,024.024 INFO    ] No camera update needed
[2026-10-25 21:50:41,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:50:41,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:50:41,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:50:41,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:50:43,082.082 INFO    ] ================================================
[2026-10-25 21:50:43,098.098 INFO    ] Launching Daemon at Sun Oct 25 21:50:43 IST 2026
[2026-10-25 21:50:43,111.111 INFO    ] ================================================
[2026-10-25 21:50:43,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:50:43
[2026-10-25 21:50:44,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:50:44,677.677 INFO    ] Initializing speech engine...
[2026-10-25 21:50:44,685.685 INFO    ] 2026-10-25 21:50:44
[2026-10-25 21:50:44,943.943 INFO    ] 2026-10-25 21:50:44
[2026-10-25 21:50:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:50:45,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:50:45,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:50:45,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:50:45,416.416 INFO    ] time= 25/10/2026 21:50:45
[2026-10-25 21:50:45,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:50:45,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:50:45,564.564 INFO    ] No existing commands found in stream
[2026-10-25 21:50:50,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:50:50,603.603 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 21:50:51,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:50:51,349.349 INFO    ] Checking for system updates...
[2026-10-25 21:50:51,385.385 INFO    ] 200
[2026-10-25 21:50:51,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:51,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:50:51,448.448 INFO    ] No update needed
[2026-10-25 21:50:51,451.451 INFO    ] Checking for camera pi updates...
[2026-10-25 21:50:51,485.485 INFO    ] 200
[2026-10-25 21:50:51,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:50:51,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:50:51,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:50:51,579.579 INFO    ] No camera update needed
[2026-10-25 21:50:51,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:50:51,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:50:51,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:50:51,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:50:53,637.637 INFO    ] ================================================
[2026-10-25 21:50:53,653.653 INFO    ] Launching Daemon at Sun Oct 25 21:50:53 IST 2026
[2026-10-25 21:50:53,664.664 INFO    ] ================================================
[2026-10-25 21:50:54,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:50:54
[2026-10-25 21:50:54,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:50:55,068.068 INFO    ] Initializing speech engine...
[2026-10-25 21:50:55,075.075 INFO    ] 2026-10-25 21:50:55
[2026-10-25 21:50:55,371.371 INFO    ] 2026-10-25 21:50:55
[2026-10-25 21:50:55,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:50:55,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:50:55,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:50:55,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:50:55,745.745 INFO    ] time= 25/10/2026 21:50:55
[2026-10-25 21:50:55,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:50:55,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:50:55,870.870 INFO    ] No existing commands found in stream
[2026-10-25 21:51:00,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:51:00,884.884 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 21:51:04,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:51:04,863.863 INFO    ] Checking for system updates...
[2026-10-25 21:51:04,906.906 INFO    ] 200
[2026-10-25 21:51:04,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:04,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:04,964.964 INFO    ] No update needed
[2026-10-25 21:51:04,967.967 INFO    ] Checking for camera pi updates...
[2026-10-25 21:51:05,001.001 INFO    ] 200
[2026-10-25 21:51:05,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:05,049.049 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:51:05,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:05,104.104 INFO    ] No camera update needed
[2026-10-25 21:51:05,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:51:05,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:51:05,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:51:05,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:51:07,159.159 INFO    ] ================================================
[2026-10-25 21:51:07,174.174 INFO    ] Launching Daemon at Sun Oct 25 21:51:07 IST 2026
[2026-10-25 21:51:07,184.184 INFO    ] ================================================
[2026-10-25 21:51:07,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:51:07
[2026-10-25 21:51:08,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:51:08,634.634 INFO    ] Initializing speech engine...
[2026-10-25 21:51:08,643.643 INFO    ] 2026-10-25 21:51:08
[2026-10-25 21:51:08,891.891 INFO    ] 2026-10-25 21:51:08
[2026-10-25 21:51:08,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:51:10,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:51:10,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:51:10,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:51:10,784.784 INFO    ] time= 25/10/2026 21:51:10
[2026-10-25 21:51:10,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:51:10,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:51:10,865.865 INFO    ] No existing commands found in stream
[2026-10-25 21:51:15,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:51:15,880.880 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 21:51:20,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:51:20,230.230 INFO    ] Checking for system updates...
[2026-10-25 21:51:20,266.266 INFO    ] 200
[2026-10-25 21:51:20,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:20,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:20,332.332 INFO    ] No update needed
[2026-10-25 21:51:20,335.335 INFO    ] Checking for camera pi updates...
[2026-10-25 21:51:20,372.372 INFO    ] 200
[2026-10-25 21:51:20,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:20,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:51:20,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:20,476.476 INFO    ] No camera update needed
[2026-10-25 21:51:20,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:51:20,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:51:20,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:51:20,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:51:22,532.532 INFO    ] ================================================
[2026-10-25 21:51:22,547.547 INFO    ] Launching Daemon at Sun Oct 25 21:51:22 IST 2026
[2026-10-25 21:51:22,558.558 INFO    ] ================================================
[2026-10-25 21:51:23,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:51:23
[2026-10-25 21:51:23,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:51:23,966.966 INFO    ] Initializing speech engine...
[2026-10-25 21:51:23,974.974 INFO    ] 2026-10-25 21:51:23
[2026-10-25 21:51:24,264.264 INFO    ] 2026-10-25 21:51:24
[2026-10-25 21:51:24,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:51:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:51:24,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:51:24,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:51:24,659.659 INFO    ] time= 25/10/2026 21:51:24
[2026-10-25 21:51:24,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:51:24,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:51:24,833.833 INFO    ] No existing commands found in stream
[2026-10-25 21:51:29,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:51:29,866.866 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 21:51:31,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:51:31,038.038 INFO    ] Checking for system updates...
[2026-10-25 21:51:31,074.074 INFO    ] 200
[2026-10-25 21:51:31,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:31,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:51:31,134.134 INFO    ] No update needed
[2026-10-25 21:51:31,136.136 INFO    ] Checking for camera pi updates...
[2026-10-25 21:51:31,169.169 INFO    ] 200
[2026-10-25 21:51:31,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:31,213.213 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:51:31,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:51:31,280.280 INFO    ] No camera update needed
[2026-10-25 21:51:31,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:51:31,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:51:31,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:51:31,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:51:33,336.336 INFO    ] ================================================
[2026-10-25 21:51:33,352.352 INFO    ] Launching Daemon at Sun Oct 25 21:51:33 IST 2026
[2026-10-25 21:51:33,362.362 INFO    ] ================================================
[2026-10-25 21:51:33,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:51:33
[2026-10-25 21:51:34,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:51:34,824.824 INFO    ] Initializing speech engine...
[2026-10-25 21:51:34,833.833 INFO    ] 2026-10-25 21:51:34
[2026-10-25 21:51:35,081.081 INFO    ] 2026-10-25 21:51:35
[2026-10-25 21:51:35,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:51:35,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:51:35,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:51:35,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:51:35,683.683 INFO    ] time= 25/10/2026 21:51:35
[2026-10-25 21:51:35,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:51:35,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:51:35,865.865 INFO    ] No existing commands found in stream
[2026-10-25 21:51:40,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:51:40,894.894 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 21:51:44,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:51:44,491.491 INFO    ] Checking for system updates...
[2026-10-25 21:51:44,545.545 INFO    ] 200
[2026-10-25 21:51:44,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:44,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:44,608.608 INFO    ] No update needed
[2026-10-25 21:51:44,611.611 INFO    ] Checking for camera pi updates...
[2026-10-25 21:51:44,645.645 INFO    ] 200
[2026-10-25 21:51:44,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:44,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:51:44,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:44,747.747 INFO    ] No camera update needed
[2026-10-25 21:51:44,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:51:44,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:51:44,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:51:44,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:51:46,802.802 INFO    ] ================================================
[2026-10-25 21:51:46,817.817 INFO    ] Launching Daemon at Sun Oct 25 21:51:46 IST 2026
[2026-10-25 21:51:46,828.828 INFO    ] ================================================
[2026-10-25 21:51:47,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:51:47
[2026-10-25 21:51:48,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:51:48,263.263 INFO    ] Initializing speech engine...
[2026-10-25 21:51:48,279.279 INFO    ] 2026-10-25 21:51:48
[2026-10-25 21:51:48,566.566 INFO    ] 2026-10-25 21:51:48
[2026-10-25 21:51:48,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:51:48,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:51:48,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:51:48,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:51:48,954.954 INFO    ] time= 25/10/2026 21:51:48
[2026-10-25 21:51:48,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:51:48,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:51:49,060.060 INFO    ] No existing commands found in stream
[2026-10-25 21:51:54,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:51:54,076.076 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 21:51:58,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:51:58,405.405 INFO    ] Checking for system updates...
[2026-10-25 21:51:58,445.445 INFO    ] 200
[2026-10-25 21:51:58,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:58,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:58,508.508 INFO    ] No update needed
[2026-10-25 21:51:58,511.511 INFO    ] Checking for camera pi updates...
[2026-10-25 21:51:58,548.548 INFO    ] 200
[2026-10-25 21:51:58,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:51:58,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:51:58,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:51:58,753.753 INFO    ] No camera update needed
[2026-10-25 21:51:58,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:51:58,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:51:58,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:51:58,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:52:00,811.811 INFO    ] ================================================
[2026-10-25 21:52:00,826.826 INFO    ] Launching Daemon at Sun Oct 25 21:52:00 IST 2026
[2026-10-25 21:52:00,836.836 INFO    ] ================================================
[2026-10-25 21:52:01,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:52:01
[2026-10-25 21:52:02,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:52:02,541.541 INFO    ] Initializing speech engine...
[2026-10-25 21:52:02,547.547 INFO    ] 2026-10-25 21:52:02
[2026-10-25 21:52:02,912.912 INFO    ] 2026-10-25 21:52:02
[2026-10-25 21:52:02,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:52:03,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:52:03,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:52:03,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:52:03,291.291 INFO    ] time= 25/10/2026 21:52:03
[2026-10-25 21:52:03,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:52:03,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:52:03,368.368 INFO    ] No existing commands found in stream
[2026-10-25 21:52:08,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:52:08,381.381 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 21:52:10,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:52:10,743.743 INFO    ] Checking for system updates...
[2026-10-25 21:52:10,779.779 INFO    ] 200
[2026-10-25 21:52:10,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:10,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:52:10,838.838 INFO    ] No update needed
[2026-10-25 21:52:10,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 21:52:10,878.878 INFO    ] 200
[2026-10-25 21:52:10,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:10,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:52:10,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:52:10,975.975 INFO    ] No camera update needed
[2026-10-25 21:52:10,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:52:10,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:52:10,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:52:10,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:52:13,033.033 INFO    ] ================================================
[2026-10-25 21:52:13,048.048 INFO    ] Launching Daemon at Sun Oct 25 21:52:13 IST 2026
[2026-10-25 21:52:13,059.059 INFO    ] ================================================
[2026-10-25 21:52:13,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:52:13
[2026-10-25 21:52:14,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:52:14,499.499 INFO    ] Initializing speech engine...
[2026-10-25 21:52:14,521.521 INFO    ] 2026-10-25 21:52:14
[2026-10-25 21:52:14,778.778 INFO    ] 2026-10-25 21:52:14
[2026-10-25 21:52:14,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:52:15,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:52:15,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:52:15,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:52:15,351.351 INFO    ] time= 25/10/2026 21:52:15
[2026-10-25 21:52:15,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:52:15,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:52:15,504.504 INFO    ] No existing commands found in stream
[2026-10-25 21:52:20,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:52:20,529.529 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 21:52:24,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:52:24,485.485 INFO    ] Checking for system updates...
[2026-10-25 21:52:24,521.521 INFO    ] 200
[2026-10-25 21:52:24,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:24,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:52:24,578.578 INFO    ] No update needed
[2026-10-25 21:52:24,580.580 INFO    ] Checking for camera pi updates...
[2026-10-25 21:52:24,614.614 INFO    ] 200
[2026-10-25 21:52:24,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:24,661.661 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:52:24,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:52:24,718.718 INFO    ] No camera update needed
[2026-10-25 21:52:24,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:52:24,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:52:24,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:52:24,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:52:26,774.774 INFO    ] ================================================
[2026-10-25 21:52:26,789.789 INFO    ] Launching Daemon at Sun Oct 25 21:52:26 IST 2026
[2026-10-25 21:52:26,800.800 INFO    ] ================================================
[2026-10-25 21:52:27,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:52:27
[2026-10-25 21:52:27,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:52:28,238.238 INFO    ] Initializing speech engine...
[2026-10-25 21:52:28,247.247 INFO    ] 2026-10-25 21:52:28
[2026-10-25 21:52:28,493.493 INFO    ] 2026-10-25 21:52:28
[2026-10-25 21:52:28,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:52:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:52:28,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:52:28,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:52:28,978.978 INFO    ] time= 25/10/2026 21:52:28
[2026-10-25 21:52:29,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:52:29,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:52:29,113.113 INFO    ] No existing commands found in stream
[2026-10-25 21:52:34,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:52:34,135.135 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 21:52:38,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:52:38,152.152 INFO    ] Checking for system updates...
[2026-10-25 21:52:38,196.196 INFO    ] 200
[2026-10-25 21:52:38,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:38,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:52:38,262.262 INFO    ] No update needed
[2026-10-25 21:52:38,264.264 INFO    ] Checking for camera pi updates...
[2026-10-25 21:52:38,302.302 INFO    ] 200
[2026-10-25 21:52:38,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:38,344.344 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:52:38,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:52:38,583.583 INFO    ] No camera update needed
[2026-10-25 21:52:38,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:52:38,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:52:38,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:52:38,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:52:40,638.638 INFO    ] ================================================
[2026-10-25 21:52:40,653.653 INFO    ] Launching Daemon at Sun Oct 25 21:52:40 IST 2026
[2026-10-25 21:52:40,664.664 INFO    ] ================================================
[2026-10-25 21:52:41,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:52:41
[2026-10-25 21:52:42,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:52:42,312.312 INFO    ] Initializing speech engine...
[2026-10-25 21:52:42,326.326 INFO    ] 2026-10-25 21:52:42
[2026-10-25 21:52:42,609.609 INFO    ] 2026-10-25 21:52:42
[2026-10-25 21:52:42,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:52:42,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:52:42,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:52:43,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:52:43,100.100 INFO    ] time= 25/10/2026 21:52:43
[2026-10-25 21:52:43,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:52:43,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:52:43,285.285 INFO    ] No existing commands found in stream
[2026-10-25 21:52:48,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:52:48,316.316 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 21:52:49,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:52:49,092.092 INFO    ] Checking for system updates...
[2026-10-25 21:52:49,130.130 INFO    ] 200
[2026-10-25 21:52:49,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:49,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:52:49,191.191 INFO    ] No update needed
[2026-10-25 21:52:49,194.194 INFO    ] Checking for camera pi updates...
[2026-10-25 21:52:49,229.229 INFO    ] 200
[2026-10-25 21:52:49,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:52:49,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:52:49,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:52:49,348.348 INFO    ] No camera update needed
[2026-10-25 21:52:49,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:52:49,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:52:49,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:52:49,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:52:51,406.406 INFO    ] ================================================
[2026-10-25 21:52:51,421.421 INFO    ] Launching Daemon at Sun Oct 25 21:52:51 IST 2026
[2026-10-25 21:52:51,432.432 INFO    ] ================================================
[2026-10-25 21:52:51,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:52:51
[2026-10-25 21:52:52,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:52:52,862.862 INFO    ] Initializing speech engine...
[2026-10-25 21:52:52,884.884 INFO    ] 2026-10-25 21:52:52
[2026-10-25 21:52:53,166.166 INFO    ] 2026-10-25 21:52:53
[2026-10-25 21:52:53,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:52:53,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:52:53,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:52:53,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:52:53,524.524 INFO    ] time= 25/10/2026 21:52:53
[2026-10-25 21:52:53,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:52:53,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:52:53,610.610 INFO    ] No existing commands found in stream
[2026-10-25 21:52:58,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:52:58,654.654 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 21:53:02,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:53:02,711.711 INFO    ] Checking for system updates...
[2026-10-25 21:53:02,747.747 INFO    ] 200
[2026-10-25 21:53:02,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:02,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:02,804.804 INFO    ] No update needed
[2026-10-25 21:53:02,807.807 INFO    ] Checking for camera pi updates...
[2026-10-25 21:53:02,841.841 INFO    ] 200
[2026-10-25 21:53:02,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:02,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:53:02,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:02,943.943 INFO    ] No camera update needed
[2026-10-25 21:53:02,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:53:02,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:53:02,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:53:02,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:53:05,004.004 INFO    ] ================================================
[2026-10-25 21:53:05,019.019 INFO    ] Launching Daemon at Sun Oct 25 21:53:05 IST 2026
[2026-10-25 21:53:05,029.029 INFO    ] ================================================
[2026-10-25 21:53:05,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:53:05
[2026-10-25 21:53:06,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:53:06,429.429 INFO    ] Initializing speech engine...
[2026-10-25 21:53:06,451.451 INFO    ] 2026-10-25 21:53:06
[2026-10-25 21:53:06,710.710 INFO    ] 2026-10-25 21:53:06
[2026-10-25 21:53:06,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:53:06,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:53:06,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:53:07,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:53:07,091.091 INFO    ] time= 25/10/2026 21:53:07
[2026-10-25 21:53:07,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:53:07,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:53:07,258.258 INFO    ] No existing commands found in stream
[2026-10-25 21:53:12,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:53:12,286.286 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 21:53:12,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:53:12,784.784 INFO    ] Checking for system updates...
[2026-10-25 21:53:12,823.823 INFO    ] 200
[2026-10-25 21:53:12,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:12,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:12,887.887 INFO    ] No update needed
[2026-10-25 21:53:12,890.890 INFO    ] Checking for camera pi updates...
[2026-10-25 21:53:12,927.927 INFO    ] 200
[2026-10-25 21:53:12,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:12,971.971 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:53:13,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:13,029.029 INFO    ] No camera update needed
[2026-10-25 21:53:13,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:53:13,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:53:13,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:53:13,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:53:15,084.084 INFO    ] ================================================
[2026-10-25 21:53:15,099.099 INFO    ] Launching Daemon at Sun Oct 25 21:53:15 IST 2026
[2026-10-25 21:53:15,111.111 INFO    ] ================================================
[2026-10-25 21:53:15,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:53:15
[2026-10-25 21:53:16,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:53:16,786.786 INFO    ] Initializing speech engine...
[2026-10-25 21:53:16,797.797 INFO    ] 2026-10-25 21:53:16
[2026-10-25 21:53:17,091.091 INFO    ] 2026-10-25 21:53:17
[2026-10-25 21:53:17,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:53:17,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:53:17,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:53:17,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:53:17,580.580 INFO    ] time= 25/10/2026 21:53:17
[2026-10-25 21:53:17,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:53:17,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:53:17,766.766 INFO    ] No existing commands found in stream
[2026-10-25 21:53:22,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:53:22,801.801 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-25 21:53:23,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:53:23,897.897 INFO    ] Checking for system updates...
[2026-10-25 21:53:23,934.934 INFO    ] 200
[2026-10-25 21:53:23,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:23,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:53:23,993.993 INFO    ] No update needed
[2026-10-25 21:53:23,996.996 INFO    ] Checking for camera pi updates...
[2026-10-25 21:53:24,035.035 INFO    ] 200
[2026-10-25 21:53:24,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:24,085.085 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:53:24,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:53:24,137.137 INFO    ] No camera update needed
[2026-10-25 21:53:24,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:53:24,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:53:24,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:53:24,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:53:26,197.197 INFO    ] ================================================
[2026-10-25 21:53:26,213.213 INFO    ] Launching Daemon at Sun Oct 25 21:53:26 IST 2026
[2026-10-25 21:53:26,224.224 INFO    ] ================================================
[2026-10-25 21:53:26,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:53:26
[2026-10-25 21:53:27,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:53:27,666.666 INFO    ] Initializing speech engine...
[2026-10-25 21:53:27,684.684 INFO    ] 2026-10-25 21:53:27
[2026-10-25 21:53:27,932.932 INFO    ] 2026-10-25 21:53:27
[2026-10-25 21:53:27,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:53:28,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:53:28,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:53:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:53:28,278.278 INFO    ] time= 25/10/2026 21:53:28
[2026-10-25 21:53:28,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:53:28,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:53:28,413.413 INFO    ] No existing commands found in stream
[2026-10-25 21:53:33,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:53:33,426.426 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-25 21:53:37,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:53:37,737.737 INFO    ] Checking for system updates...
[2026-10-25 21:53:37,772.772 INFO    ] 200
[2026-10-25 21:53:37,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:37,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:53:37,832.832 INFO    ] No update needed
[2026-10-25 21:53:37,835.835 INFO    ] Checking for camera pi updates...
[2026-10-25 21:53:37,868.868 INFO    ] 200
[2026-10-25 21:53:37,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:37,913.913 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:53:38,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:53:38,064.064 INFO    ] No camera update needed
[2026-10-25 21:53:38,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:53:38,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:53:38,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:53:38,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:53:40,121.121 INFO    ] ================================================
[2026-10-25 21:53:40,138.138 INFO    ] Launching Daemon at Sun Oct 25 21:53:40 IST 2026
[2026-10-25 21:53:40,149.149 INFO    ] ================================================
[2026-10-25 21:53:40,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:53:40
[2026-10-25 21:53:41,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:53:41,588.588 INFO    ] Initializing speech engine...
[2026-10-25 21:53:41,607.607 INFO    ] 2026-10-25 21:53:41
[2026-10-25 21:53:41,881.881 INFO    ] 2026-10-25 21:53:41
[2026-10-25 21:53:41,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:53:42,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:53:42,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:53:42,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:53:42,270.270 INFO    ] time= 25/10/2026 21:53:42
[2026-10-25 21:53:42,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:53:42,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:53:42,395.395 INFO    ] No existing commands found in stream
[2026-10-25 21:53:47,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:53:47,410.410 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 21:53:51,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:53:51,108.108 INFO    ] Checking for system updates...
[2026-10-25 21:53:51,149.149 INFO    ] 200
[2026-10-25 21:53:51,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:51,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:51,215.215 INFO    ] No update needed
[2026-10-25 21:53:51,217.217 INFO    ] Checking for camera pi updates...
[2026-10-25 21:53:51,255.255 INFO    ] 200
[2026-10-25 21:53:51,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:53:51,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:53:51,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:53:51,339.339 INFO    ] No camera update needed
[2026-10-25 21:53:51,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:53:51,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:53:51,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:53:51,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:53:53,395.395 INFO    ] ================================================
[2026-10-25 21:53:53,411.411 INFO    ] Launching Daemon at Sun Oct 25 21:53:53 IST 2026
[2026-10-25 21:53:53,421.421 INFO    ] ================================================
[2026-10-25 21:53:53,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:53:53
[2026-10-25 21:53:54,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:53:54,867.867 INFO    ] Initializing speech engine...
[2026-10-25 21:53:54,874.874 INFO    ] 2026-10-25 21:53:54
[2026-10-25 21:53:55,197.197 INFO    ] 2026-10-25 21:53:55
[2026-10-25 21:53:55,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:53:55,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:53:55,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:53:55,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:53:55,591.591 INFO    ] time= 25/10/2026 21:53:55
[2026-10-25 21:53:55,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:53:55,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:53:55,754.754 INFO    ] No existing commands found in stream
[2026-10-25 21:54:00,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:54:00,783.783 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 21:54:01,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:54:01,592.592 INFO    ] Checking for system updates...
[2026-10-25 21:54:01,644.644 INFO    ] 200
[2026-10-25 21:54:01,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:01,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:01,721.721 INFO    ] No update needed
[2026-10-25 21:54:01,724.724 INFO    ] Checking for camera pi updates...
[2026-10-25 21:54:01,769.769 INFO    ] 200
[2026-10-25 21:54:01,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:01,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:54:01,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:01,976.976 INFO    ] No camera update needed
[2026-10-25 21:54:01,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:54:01,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:54:01,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:54:01,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:54:04,040.040 INFO    ] ================================================
[2026-10-25 21:54:04,056.056 INFO    ] Launching Daemon at Sun Oct 25 21:54:04 IST 2026
[2026-10-25 21:54:04,067.067 INFO    ] ================================================
[2026-10-25 21:54:04,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:54:04
[2026-10-25 21:54:05,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:54:05,550.550 INFO    ] Initializing speech engine...
[2026-10-25 21:54:05,557.557 INFO    ] 2026-10-25 21:54:05
[2026-10-25 21:54:05,868.868 INFO    ] 2026-10-25 21:54:05
[2026-10-25 21:54:05,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:54:06,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:54:06,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:54:06,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:54:06,175.175 INFO    ] time= 25/10/2026 21:54:06
[2026-10-25 21:54:06,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:54:06,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:54:06,323.323 INFO    ] No existing commands found in stream
[2026-10-25 21:54:11,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:54:11,336.336 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 21:54:15,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:54:15,438.438 INFO    ] Checking for system updates...
[2026-10-25 21:54:15,476.476 INFO    ] 200
[2026-10-25 21:54:15,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:15,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:54:15,539.539 INFO    ] No update needed
[2026-10-25 21:54:15,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 21:54:15,598.598 INFO    ] 200
[2026-10-25 21:54:15,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:15,667.667 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:54:15,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:54:15,725.725 INFO    ] No camera update needed
[2026-10-25 21:54:15,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:54:15,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:54:15,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:54:15,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:54:17,783.783 INFO    ] ================================================
[2026-10-25 21:54:17,798.798 INFO    ] Launching Daemon at Sun Oct 25 21:54:17 IST 2026
[2026-10-25 21:54:17,809.809 INFO    ] ================================================
[2026-10-25 21:54:18,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:54:18
[2026-10-25 21:54:18,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:54:19,225.225 INFO    ] Initializing speech engine...
[2026-10-25 21:54:19,248.248 INFO    ] 2026-10-25 21:54:19
[2026-10-25 21:54:19,507.507 INFO    ] 2026-10-25 21:54:19
[2026-10-25 21:54:19,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:54:19,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:54:19,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:54:19,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:54:19,968.968 INFO    ] time= 25/10/2026 21:54:19
[2026-10-25 21:54:20,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:54:20,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:54:20,127.127 INFO    ] No existing commands found in stream
[2026-10-25 21:54:25,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:54:25,166.166 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-25 21:54:28,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:54:28,299.299 INFO    ] Checking for system updates...
[2026-10-25 21:54:28,340.340 INFO    ] 200
[2026-10-25 21:54:28,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:28,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:28,400.400 INFO    ] No update needed
[2026-10-25 21:54:28,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 21:54:28,436.436 INFO    ] 200
[2026-10-25 21:54:28,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:28,480.480 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:54:28,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:28,530.530 INFO    ] No camera update needed
[2026-10-25 21:54:28,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:54:28,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:54:28,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:54:28,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:54:30,586.586 INFO    ] ================================================
[2026-10-25 21:54:30,601.601 INFO    ] Launching Daemon at Sun Oct 25 21:54:30 IST 2026
[2026-10-25 21:54:30,612.612 INFO    ] ================================================
[2026-10-25 21:54:31,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:54:31
[2026-10-25 21:54:31,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:54:32,124.124 INFO    ] Initializing speech engine...
[2026-10-25 21:54:32,130.130 INFO    ] 2026-10-25 21:54:32
[2026-10-25 21:54:32,435.435 INFO    ] 2026-10-25 21:54:32
[2026-10-25 21:54:32,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:54:32,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:54:32,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:54:32,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:54:32,803.803 INFO    ] time= 25/10/2026 21:54:32
[2026-10-25 21:54:32,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:54:32,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:54:32,915.915 INFO    ] No existing commands found in stream
[2026-10-25 21:54:37,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:54:37,930.930 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 21:54:40,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:54:40,675.675 INFO    ] Checking for system updates...
[2026-10-25 21:54:40,710.710 INFO    ] 200
[2026-10-25 21:54:40,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:40,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:54:40,783.783 INFO    ] No update needed
[2026-10-25 21:54:40,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 21:54:40,819.819 INFO    ] 200
[2026-10-25 21:54:40,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:40,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:54:40,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:54:40,917.917 INFO    ] No camera update needed
[2026-10-25 21:54:40,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:54:40,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:54:40,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:54:40,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:54:42,974.974 INFO    ] ================================================
[2026-10-25 21:54:42,989.989 INFO    ] Launching Daemon at Sun Oct 25 21:54:42 IST 2026
[2026-10-25 21:54:43,001.001 INFO    ] ================================================
[2026-10-25 21:54:43,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:54:43
[2026-10-25 21:54:44,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:54:44,420.420 INFO    ] Initializing speech engine...
[2026-10-25 21:54:44,434.434 INFO    ] 2026-10-25 21:54:44
[2026-10-25 21:54:44,726.726 INFO    ] 2026-10-25 21:54:44
[2026-10-25 21:54:44,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:54:44,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:54:44,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:54:45,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:54:45,112.112 INFO    ] time= 25/10/2026 21:54:45
[2026-10-25 21:54:45,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:54:45,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:54:45,240.240 INFO    ] No existing commands found in stream
[2026-10-25 21:54:50,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:54:50,255.255 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 21:54:51,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:54:51,053.053 INFO    ] Checking for system updates...
[2026-10-25 21:54:51,093.093 INFO    ] 200
[2026-10-25 21:54:51,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:51,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:51,153.153 INFO    ] No update needed
[2026-10-25 21:54:51,156.156 INFO    ] Checking for camera pi updates...
[2026-10-25 21:54:51,197.197 INFO    ] 200
[2026-10-25 21:54:51,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:54:51,242.242 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:54:51,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:54:51,294.294 INFO    ] No camera update needed
[2026-10-25 21:54:51,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:54:51,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:54:51,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:54:51,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:54:53,352.352 INFO    ] ================================================
[2026-10-25 21:54:53,368.368 INFO    ] Launching Daemon at Sun Oct 25 21:54:53 IST 2026
[2026-10-25 21:54:53,379.379 INFO    ] ================================================
[2026-10-25 21:54:53,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:54:53
[2026-10-25 21:54:54,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:54:54,855.855 INFO    ] Initializing speech engine...
[2026-10-25 21:54:54,864.864 INFO    ] 2026-10-25 21:54:54
[2026-10-25 21:54:55,112.112 INFO    ] 2026-10-25 21:54:55
[2026-10-25 21:54:55,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:54:55,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:54:55,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:54:55,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:54:55,585.585 INFO    ] time= 25/10/2026 21:54:55
[2026-10-25 21:54:55,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:54:55,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:54:55,681.681 INFO    ] No existing commands found in stream
[2026-10-25 21:55:00,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:00,696.696 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 21:55:03,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:55:03,429.429 INFO    ] Checking for system updates...
[2026-10-25 21:55:03,466.466 INFO    ] 200
[2026-10-25 21:55:03,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:03,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:03,542.542 INFO    ] No update needed
[2026-10-25 21:55:03,545.545 INFO    ] Checking for camera pi updates...
[2026-10-25 21:55:03,591.591 INFO    ] 200
[2026-10-25 21:55:03,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:03,654.654 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:55:03,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:03,731.731 INFO    ] No camera update needed
[2026-10-25 21:55:03,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:55:03,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:55:03,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:55:03,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:55:05,789.789 INFO    ] ================================================
[2026-10-25 21:55:05,804.804 INFO    ] Launching Daemon at Sun Oct 25 21:55:05 IST 2026
[2026-10-25 21:55:05,815.815 INFO    ] ================================================
[2026-10-25 21:55:06,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:55:06
[2026-10-25 21:55:06,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:55:07,269.269 INFO    ] Initializing speech engine...
[2026-10-25 21:55:07,274.274 INFO    ] 2026-10-25 21:55:07
[2026-10-25 21:55:07,536.536 INFO    ] 2026-10-25 21:55:07
[2026-10-25 21:55:07,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:55:07,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:55:07,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:55:07,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:55:08,016.016 INFO    ] time= 25/10/2026 21:55:07
[2026-10-25 21:55:08,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:55:08,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:55:08,220.220 INFO    ] No existing commands found in stream
[2026-10-25 21:55:13,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:13,247.247 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 21:55:14,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:55:14,628.628 INFO    ] Checking for system updates...
[2026-10-25 21:55:14,670.670 INFO    ] 200
[2026-10-25 21:55:14,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:14,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:14,732.732 INFO    ] No update needed
[2026-10-25 21:55:14,734.734 INFO    ] Checking for camera pi updates...
[2026-10-25 21:55:14,774.774 INFO    ] 200
[2026-10-25 21:55:14,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:14,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:55:14,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:14,884.884 INFO    ] No camera update needed
[2026-10-25 21:55:14,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:55:14,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:55:14,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:55:14,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:55:16,944.944 INFO    ] ================================================
[2026-10-25 21:55:16,959.959 INFO    ] Launching Daemon at Sun Oct 25 21:55:16 IST 2026
[2026-10-25 21:55:16,970.970 INFO    ] ================================================
[2026-10-25 21:55:17,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:55:17
[2026-10-25 21:55:18,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:55:18,399.399 INFO    ] Initializing speech engine...
[2026-10-25 21:55:18,409.409 INFO    ] 2026-10-25 21:55:18
[2026-10-25 21:55:18,672.672 INFO    ] 2026-10-25 21:55:18
[2026-10-25 21:55:18,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:55:18,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:55:18,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:55:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:55:19,135.135 INFO    ] time= 25/10/2026 21:55:19
[2026-10-25 21:55:19,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:55:19,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:55:19,290.290 INFO    ] No existing commands found in stream
[2026-10-25 21:55:24,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:24,304.304 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 21:55:25,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:55:25,247.247 INFO    ] Checking for system updates...
[2026-10-25 21:55:25,283.283 INFO    ] 200
[2026-10-25 21:55:25,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:25,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:55:25,354.354 INFO    ] No update needed
[2026-10-25 21:55:25,357.357 INFO    ] Checking for camera pi updates...
[2026-10-25 21:55:25,397.397 INFO    ] 200
[2026-10-25 21:55:25,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:25,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:55:25,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:55:25,497.497 INFO    ] No camera update needed
[2026-10-25 21:55:25,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:55:25,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:55:25,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:55:25,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:55:27,554.554 INFO    ] ================================================
[2026-10-25 21:55:27,569.569 INFO    ] Launching Daemon at Sun Oct 25 21:55:27 IST 2026
[2026-10-25 21:55:27,580.580 INFO    ] ================================================
[2026-10-25 21:55:28,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:55:28
[2026-10-25 21:55:28,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:55:29,248.248 INFO    ] Initializing speech engine...
[2026-10-25 21:55:29,260.260 INFO    ] 2026-10-25 21:55:29
[2026-10-25 21:55:29,539.539 INFO    ] 2026-10-25 21:55:29
[2026-10-25 21:55:29,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:55:29,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:55:29,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:55:29,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:55:30,022.022 INFO    ] time= 25/10/2026 21:55:29
[2026-10-25 21:55:30,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:55:30,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:55:30,234.234 INFO    ] No existing commands found in stream
[2026-10-25 21:55:35,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:35,270.270 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 21:55:38,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:55:38,309.309 INFO    ] Checking for system updates...
[2026-10-25 21:55:38,348.348 INFO    ] 200
[2026-10-25 21:55:38,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:38,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:38,417.417 INFO    ] No update needed
[2026-10-25 21:55:38,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 21:55:38,460.460 INFO    ] 200
[2026-10-25 21:55:38,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:38,509.509 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:55:38,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:55:38,711.711 INFO    ] No camera update needed
[2026-10-25 21:55:38,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:55:38,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:55:38,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:55:38,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:55:40,770.770 INFO    ] ================================================
[2026-10-25 21:55:40,785.785 INFO    ] Launching Daemon at Sun Oct 25 21:55:40 IST 2026
[2026-10-25 21:55:40,797.797 INFO    ] ================================================
[2026-10-25 21:55:41,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:55:41
[2026-10-25 21:55:41,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:55:42,214.214 INFO    ] Initializing speech engine...
[2026-10-25 21:55:42,226.226 INFO    ] 2026-10-25 21:55:42
[2026-10-25 21:55:42,478.478 INFO    ] 2026-10-25 21:55:42
[2026-10-25 21:55:42,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:55:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:55:42,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:55:42,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:55:42,936.936 INFO    ] time= 25/10/2026 21:55:42
[2026-10-25 21:55:43,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:55:43,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:55:43,109.109 INFO    ] No existing commands found in stream
[2026-10-25 21:55:48,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:48,123.123 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 21:55:49,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:55:49,719.719 INFO    ] Checking for system updates...
[2026-10-25 21:55:49,755.755 INFO    ] 200
[2026-10-25 21:55:49,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:49,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:55:49,813.813 INFO    ] No update needed
[2026-10-25 21:55:49,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 21:55:49,850.850 INFO    ] 200
[2026-10-25 21:55:49,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:55:49,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:55:49,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:55:49,959.959 INFO    ] No camera update needed
[2026-10-25 21:55:49,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:55:49,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:55:49,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:55:49,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:55:52,014.014 INFO    ] ================================================
[2026-10-25 21:55:52,029.029 INFO    ] Launching Daemon at Sun Oct 25 21:55:52 IST 2026
[2026-10-25 21:55:52,041.041 INFO    ] ================================================
[2026-10-25 21:55:52,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:55:52
[2026-10-25 21:55:53,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:55:53,652.652 INFO    ] Initializing speech engine...
[2026-10-25 21:55:53,661.661 INFO    ] 2026-10-25 21:55:53
[2026-10-25 21:55:53,911.911 INFO    ] 2026-10-25 21:55:53
[2026-10-25 21:55:53,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:55:54,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:55:54,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:55:54,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:55:54,395.395 INFO    ] time= 25/10/2026 21:55:54
[2026-10-25 21:55:54,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:55:54,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:55:54,529.529 INFO    ] No existing commands found in stream
[2026-10-25 21:55:59,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:55:59,544.544 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 21:56:00,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:56:00,951.951 INFO    ] Checking for system updates...
[2026-10-25 21:56:00,992.992 INFO    ] 200
[2026-10-25 21:56:00,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:01,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:01,052.052 INFO    ] No update needed
[2026-10-25 21:56:01,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 21:56:01,091.091 INFO    ] 200
[2026-10-25 21:56:01,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:01,136.136 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:56:01,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:01,196.196 INFO    ] No camera update needed
[2026-10-25 21:56:01,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:56:01,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:56:01,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:56:01,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:56:03,257.257 INFO    ] ================================================
[2026-10-25 21:56:03,276.276 INFO    ] Launching Daemon at Sun Oct 25 21:56:03 IST 2026
[2026-10-25 21:56:03,288.288 INFO    ] ================================================
[2026-10-25 21:56:03,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:56:03
[2026-10-25 21:56:04,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:56:04,774.774 INFO    ] Initializing speech engine...
[2026-10-25 21:56:04,783.783 INFO    ] 2026-10-25 21:56:04
[2026-10-25 21:56:05,029.029 INFO    ] 2026-10-25 21:56:05
[2026-10-25 21:56:05,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:56:05,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:56:05,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:56:05,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:56:05,516.516 INFO    ] time= 25/10/2026 21:56:05
[2026-10-25 21:56:05,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:56:05,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:56:05,650.650 INFO    ] No existing commands found in stream
[2026-10-25 21:56:10,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:56:10,665.665 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 21:56:13,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:56:13,866.866 INFO    ] Checking for system updates...
[2026-10-25 21:56:13,908.908 INFO    ] 200
[2026-10-25 21:56:13,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:13,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:13,978.978 INFO    ] No update needed
[2026-10-25 21:56:13,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 21:56:14,021.021 INFO    ] 200
[2026-10-25 21:56:14,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:14,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:56:14,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:14,118.118 INFO    ] No camera update needed
[2026-10-25 21:56:14,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:56:14,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:56:14,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:56:14,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:56:16,178.178 INFO    ] ================================================
[2026-10-25 21:56:16,193.193 INFO    ] Launching Daemon at Sun Oct 25 21:56:16 IST 2026
[2026-10-25 21:56:16,204.204 INFO    ] ================================================
[2026-10-25 21:56:16,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:56:16
[2026-10-25 21:56:17,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:56:17,621.621 INFO    ] Initializing speech engine...
[2026-10-25 21:56:17,635.635 INFO    ] 2026-10-25 21:56:17
[2026-10-25 21:56:17,898.898 INFO    ] 2026-10-25 21:56:17
[2026-10-25 21:56:17,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:56:18,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:56:18,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:56:18,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:56:18,386.386 INFO    ] time= 25/10/2026 21:56:18
[2026-10-25 21:56:18,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:56:18,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:56:18,513.513 INFO    ] No existing commands found in stream
[2026-10-25 21:56:23,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:56:23,527.527 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-25 21:56:24,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:56:24,477.477 INFO    ] Checking for system updates...
[2026-10-25 21:56:24,513.513 INFO    ] 200
[2026-10-25 21:56:24,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:24,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:56:24,571.571 INFO    ] No update needed
[2026-10-25 21:56:24,573.573 INFO    ] Checking for camera pi updates...
[2026-10-25 21:56:24,608.608 INFO    ] 200
[2026-10-25 21:56:24,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:24,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:56:24,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:56:24,708.708 INFO    ] No camera update needed
[2026-10-25 21:56:24,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:56:24,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:56:24,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:56:24,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:56:26,765.765 INFO    ] ================================================
[2026-10-25 21:56:26,780.780 INFO    ] Launching Daemon at Sun Oct 25 21:56:26 IST 2026
[2026-10-25 21:56:26,791.791 INFO    ] ================================================
[2026-10-25 21:56:27,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:56:27
[2026-10-25 21:56:27,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:56:28,209.209 INFO    ] Initializing speech engine...
[2026-10-25 21:56:28,227.227 INFO    ] 2026-10-25 21:56:28
[2026-10-25 21:56:28,478.478 INFO    ] 2026-10-25 21:56:28
[2026-10-25 21:56:28,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:56:28,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:56:28,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:56:28,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:56:28,958.958 INFO    ] time= 25/10/2026 21:56:28
[2026-10-25 21:56:29,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:56:29,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:56:29,109.109 INFO    ] No existing commands found in stream
[2026-10-25 21:56:34,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:56:34,125.125 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 21:56:40,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:56:40,825.825 INFO    ] Checking for system updates...
[2026-10-25 21:56:40,867.867 INFO    ] 200
[2026-10-25 21:56:40,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:40,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:40,928.928 INFO    ] No update needed
[2026-10-25 21:56:40,931.931 INFO    ] Checking for camera pi updates...
[2026-10-25 21:56:41,008.008 INFO    ] 200
[2026-10-25 21:56:41,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:41,054.054 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:56:41,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:56:41,109.109 INFO    ] No camera update needed
[2026-10-25 21:56:41,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:56:41,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:56:41,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:56:41,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:56:43,169.169 INFO    ] ================================================
[2026-10-25 21:56:43,184.184 INFO    ] Launching Daemon at Sun Oct 25 21:56:43 IST 2026
[2026-10-25 21:56:43,195.195 INFO    ] ================================================
[2026-10-25 21:56:43,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:56:43
[2026-10-25 21:56:44,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:56:44,620.620 INFO    ] Initializing speech engine...
[2026-10-25 21:56:44,632.632 INFO    ] 2026-10-25 21:56:44
[2026-10-25 21:56:44,883.883 INFO    ] 2026-10-25 21:56:44
[2026-10-25 21:56:44,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:56:45,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:56:45,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:56:45,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:56:45,226.226 INFO    ] time= 25/10/2026 21:56:45
[2026-10-25 21:56:45,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:56:45,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:56:45,339.339 INFO    ] No existing commands found in stream
[2026-10-25 21:56:50,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:56:50,354.354 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 21:56:53,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:56:53,904.904 INFO    ] Checking for system updates...
[2026-10-25 21:56:53,941.941 INFO    ] 200
[2026-10-25 21:56:53,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:53,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:56:54,001.001 INFO    ] No update needed
[2026-10-25 21:56:54,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 21:56:54,038.038 INFO    ] 200
[2026-10-25 21:56:54,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:56:54,082.082 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:56:54,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:56:54,136.136 INFO    ] No camera update needed
[2026-10-25 21:56:54,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:56:54,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:56:54,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:56:54,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:56:56,192.192 INFO    ] ================================================
[2026-10-25 21:56:56,207.207 INFO    ] Launching Daemon at Sun Oct 25 21:56:56 IST 2026
[2026-10-25 21:56:56,217.217 INFO    ] ================================================
[2026-10-25 21:56:56,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:56:56
[2026-10-25 21:56:57,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:56:57,699.699 INFO    ] Initializing speech engine...
[2026-10-25 21:56:57,713.713 INFO    ] 2026-10-25 21:56:57
[2026-10-25 21:56:57,969.969 INFO    ] 2026-10-25 21:56:57
[2026-10-25 21:56:58,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:56:58,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:56:58,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:56:58,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:56:58,335.335 INFO    ] time= 25/10/2026 21:56:58
[2026-10-25 21:56:58,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:56:58,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:56:58,450.450 INFO    ] No existing commands found in stream
[2026-10-25 21:57:03,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:57:03,466.466 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-25 21:57:05,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:57:05,120.120 INFO    ] Checking for system updates...
[2026-10-25 21:57:05,162.162 INFO    ] 200
[2026-10-25 21:57:05,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:05,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:57:05,229.229 INFO    ] No update needed
[2026-10-25 21:57:05,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 21:57:05,267.267 INFO    ] 200
[2026-10-25 21:57:05,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:05,316.316 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:57:05,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:57:05,394.394 INFO    ] No camera update needed
[2026-10-25 21:57:05,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:57:05,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:57:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:57:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:57:07,451.451 INFO    ] ================================================
[2026-10-25 21:57:07,466.466 INFO    ] Launching Daemon at Sun Oct 25 21:57:07 IST 2026
[2026-10-25 21:57:07,477.477 INFO    ] ================================================
[2026-10-25 21:57:08,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:57:08
[2026-10-25 21:57:08,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:57:09,128.128 INFO    ] Initializing speech engine...
[2026-10-25 21:57:09,137.137 INFO    ] 2026-10-25 21:57:09
[2026-10-25 21:57:09,430.430 INFO    ] 2026-10-25 21:57:09
[2026-10-25 21:57:09,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:57:10,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:57:10,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:57:10,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:57:10,780.780 INFO    ] time= 25/10/2026 21:57:10
[2026-10-25 21:57:10,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:57:10,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:57:10,891.891 INFO    ] No existing commands found in stream
[2026-10-25 21:57:15,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:57:15,919.919 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 21:57:17,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:57:17,587.587 INFO    ] Checking for system updates...
[2026-10-25 21:57:17,622.622 INFO    ] 200
[2026-10-25 21:57:17,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:17,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:17,682.682 INFO    ] No update needed
[2026-10-25 21:57:17,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 21:57:17,718.718 INFO    ] 200
[2026-10-25 21:57:17,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:17,768.768 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:57:17,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:17,829.829 INFO    ] No camera update needed
[2026-10-25 21:57:17,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:57:17,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:57:17,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:57:17,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:57:19,887.887 INFO    ] ================================================
[2026-10-25 21:57:19,902.902 INFO    ] Launching Daemon at Sun Oct 25 21:57:19 IST 2026
[2026-10-25 21:57:19,912.912 INFO    ] ================================================
[2026-10-25 21:57:20,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:57:20
[2026-10-25 21:57:21,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:57:21,356.356 INFO    ] Initializing speech engine...
[2026-10-25 21:57:21,363.363 INFO    ] 2026-10-25 21:57:21
[2026-10-25 21:57:21,636.636 INFO    ] 2026-10-25 21:57:21
[2026-10-25 21:57:21,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:57:21,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:57:21,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:57:22,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:57:22,130.130 INFO    ] time= 25/10/2026 21:57:22
[2026-10-25 21:57:22,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:57:22,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:57:22,334.334 INFO    ] No existing commands found in stream
[2026-10-25 21:57:27,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:57:27,365.365 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 21:57:29,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:57:29,186.186 INFO    ] Checking for system updates...
[2026-10-25 21:57:29,222.222 INFO    ] 200
[2026-10-25 21:57:29,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:29,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:29,279.279 INFO    ] No update needed
[2026-10-25 21:57:29,282.282 INFO    ] Checking for camera pi updates...
[2026-10-25 21:57:29,316.316 INFO    ] 200
[2026-10-25 21:57:29,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:29,358.358 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:57:29,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:29,417.417 INFO    ] No camera update needed
[2026-10-25 21:57:29,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:57:29,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:57:29,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:57:29,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:57:31,474.474 INFO    ] ================================================
[2026-10-25 21:57:31,489.489 INFO    ] Launching Daemon at Sun Oct 25 21:57:31 IST 2026
[2026-10-25 21:57:31,499.499 INFO    ] ================================================
[2026-10-25 21:57:32,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:57:32
[2026-10-25 21:57:32,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:57:33,010.010 INFO    ] Initializing speech engine...
[2026-10-25 21:57:33,025.025 INFO    ] 2026-10-25 21:57:33
[2026-10-25 21:57:33,340.340 INFO    ] 2026-10-25 21:57:33
[2026-10-25 21:57:33,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:57:33,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:57:33,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:57:33,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:57:33,845.845 INFO    ] time= 25/10/2026 21:57:33
[2026-10-25 21:57:33,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:57:33,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:57:33,992.992 INFO    ] No existing commands found in stream
[2026-10-25 21:57:39,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:57:39,006.006 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 21:57:40,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:57:40,895.895 INFO    ] Checking for system updates...
[2026-10-25 21:57:40,931.931 INFO    ] 200
[2026-10-25 21:57:40,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:40,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:57:40,991.991 INFO    ] No update needed
[2026-10-25 21:57:40,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 21:57:41,030.030 INFO    ] 200
[2026-10-25 21:57:41,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:41,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:57:41,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:57:41,141.141 INFO    ] No camera update needed
[2026-10-25 21:57:41,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:57:41,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:57:41,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:57:41,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:57:43,200.200 INFO    ] ================================================
[2026-10-25 21:57:43,216.216 INFO    ] Launching Daemon at Sun Oct 25 21:57:43 IST 2026
[2026-10-25 21:57:43,226.226 INFO    ] ================================================
[2026-10-25 21:57:43,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:57:43
[2026-10-25 21:57:44,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:57:44,629.629 INFO    ] Initializing speech engine...
[2026-10-25 21:57:44,655.655 INFO    ] 2026-10-25 21:57:44
[2026-10-25 21:57:44,922.922 INFO    ] 2026-10-25 21:57:44
[2026-10-25 21:57:44,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:57:45,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:57:45,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:57:45,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:57:45,364.364 INFO    ] time= 25/10/2026 21:57:45
[2026-10-25 21:57:45,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:57:45,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:57:45,524.524 INFO    ] No existing commands found in stream
[2026-10-25 21:57:50,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:57:50,548.548 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 21:57:52,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:57:52,374.374 INFO    ] Checking for system updates...
[2026-10-25 21:57:52,411.411 INFO    ] 200
[2026-10-25 21:57:52,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:52,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:52,475.475 INFO    ] No update needed
[2026-10-25 21:57:52,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 21:57:52,512.512 INFO    ] 200
[2026-10-25 21:57:52,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:57:52,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:57:52,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:57:52,611.611 INFO    ] No camera update needed
[2026-10-25 21:57:52,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:57:52,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:57:52,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:57:52,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:57:54,665.665 INFO    ] ================================================
[2026-10-25 21:57:54,680.680 INFO    ] Launching Daemon at Sun Oct 25 21:57:54 IST 2026
[2026-10-25 21:57:54,691.691 INFO    ] ================================================
[2026-10-25 21:57:55,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:57:55
[2026-10-25 21:57:55,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:57:56,312.312 INFO    ] Initializing speech engine...
[2026-10-25 21:57:56,325.325 INFO    ] 2026-10-25 21:57:56
[2026-10-25 21:57:56,582.582 INFO    ] 2026-10-25 21:57:56
[2026-10-25 21:57:56,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:57:56,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:57:56,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:57:56,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:57:56,977.977 INFO    ] time= 25/10/2026 21:57:56
[2026-10-25 21:57:56,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:57:57,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:57:57,101.101 INFO    ] No existing commands found in stream
[2026-10-25 21:58:02,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:58:02,117.117 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 21:58:05,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 21:58:05,802.802 INFO    ] Checking for system updates...
[2026-10-25 21:58:05,839.839 INFO    ] 200
[2026-10-25 21:58:05,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:05,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:58:05,898.898 INFO    ] No update needed
[2026-10-25 21:58:05,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 21:58:05,936.936 INFO    ] 200
[2026-10-25 21:58:05,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:05,979.979 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:58:06,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:58:06,147.147 INFO    ] No camera update needed
[2026-10-25 21:58:06,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:58:06,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:58:06,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:58:06,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:58:08,201.201 INFO    ] ================================================
[2026-10-25 21:58:08,216.216 INFO    ] Launching Daemon at Sun Oct 25 21:58:08 IST 2026
[2026-10-25 21:58:08,227.227 INFO    ] ================================================
[2026-10-25 21:58:08,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:58:08
[2026-10-25 21:58:09,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:58:09,857.857 INFO    ] Initializing speech engine...
[2026-10-25 21:58:09,864.864 INFO    ] 2026-10-25 21:58:09
[2026-10-25 21:58:10,138.138 INFO    ] 2026-10-25 21:58:10
[2026-10-25 21:58:10,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:58:10,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:58:10,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:58:10,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:58:10,941.941 INFO    ] time= 25/10/2026 21:58:10
[2026-10-25 21:58:10,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:58:11,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:58:11,152.152 INFO    ] No existing commands found in stream
[2026-10-25 21:58:16,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:58:16,165.165 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 21:58:16,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 21:58:16,874.874 INFO    ] Checking for system updates...
[2026-10-25 21:58:16,912.912 INFO    ] 200
[2026-10-25 21:58:16,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:16,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:58:16,973.973 INFO    ] No update needed
[2026-10-25 21:58:16,976.976 INFO    ] Checking for camera pi updates...
[2026-10-25 21:58:17,011.011 INFO    ] 200
[2026-10-25 21:58:17,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:17,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:58:17,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:58:17,124.124 INFO    ] No camera update needed
[2026-10-25 21:58:17,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:58:17,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:58:17,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:58:17,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:58:19,184.184 INFO    ] ================================================
[2026-10-25 21:58:19,198.198 INFO    ] Launching Daemon at Sun Oct 25 21:58:19 IST 2026
[2026-10-25 21:58:19,209.209 INFO    ] ================================================
[2026-10-25 21:58:19,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:58:19
[2026-10-25 21:58:20,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:58:20,609.609 INFO    ] Initializing speech engine...
[2026-10-25 21:58:20,624.624 INFO    ] 2026-10-25 21:58:20
[2026-10-25 21:58:20,886.886 INFO    ] 2026-10-25 21:58:20
[2026-10-25 21:58:20,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:58:21,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:58:21,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:58:21,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:58:21,368.368 INFO    ] time= 25/10/2026 21:58:21
[2026-10-25 21:58:21,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:58:21,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:58:21,522.522 INFO    ] No existing commands found in stream
[2026-10-25 21:58:26,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:58:26,536.536 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 21:58:29,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 21:58:29,916.916 INFO    ] Checking for system updates...
[2026-10-25 21:58:29,957.957 INFO    ] 200
[2026-10-25 21:58:29,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:30,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:30,016.016 INFO    ] No update needed
[2026-10-25 21:58:30,019.019 INFO    ] Checking for camera pi updates...
[2026-10-25 21:58:30,053.053 INFO    ] 200
[2026-10-25 21:58:30,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:30,100.100 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:58:30,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:30,168.168 INFO    ] No camera update needed
[2026-10-25 21:58:30,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:58:30,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:58:30,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:58:30,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:58:32,226.226 INFO    ] ================================================
[2026-10-25 21:58:32,242.242 INFO    ] Launching Daemon at Sun Oct 25 21:58:32 IST 2026
[2026-10-25 21:58:32,253.253 INFO    ] ================================================
[2026-10-25 21:58:32,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:58:32
[2026-10-25 21:58:33,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:58:33,815.815 INFO    ] Initializing speech engine...
[2026-10-25 21:58:33,823.823 INFO    ] 2026-10-25 21:58:33
[2026-10-25 21:58:34,085.085 INFO    ] 2026-10-25 21:58:34
[2026-10-25 21:58:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:58:34,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:58:34,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:58:34,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:58:34,441.441 INFO    ] time= 25/10/2026 21:58:34
[2026-10-25 21:58:34,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:58:34,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:58:34,628.628 INFO    ] No existing commands found in stream
[2026-10-25 21:58:39,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:58:39,651.651 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 21:58:42,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:58:42,032.032 INFO    ] Checking for system updates...
[2026-10-25 21:58:42,076.076 INFO    ] 200
[2026-10-25 21:58:42,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:42,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:42,134.134 INFO    ] No update needed
[2026-10-25 21:58:42,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 21:58:42,171.171 INFO    ] 200
[2026-10-25 21:58:42,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:42,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:58:42,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:42,274.274 INFO    ] No camera update needed
[2026-10-25 21:58:42,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:58:42,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:58:42,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:58:42,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:58:44,330.330 INFO    ] ================================================
[2026-10-25 21:58:44,345.345 INFO    ] Launching Daemon at Sun Oct 25 21:58:44 IST 2026
[2026-10-25 21:58:44,356.356 INFO    ] ================================================
[2026-10-25 21:58:44,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:58:44
[2026-10-25 21:58:45,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:58:45,807.807 INFO    ] Initializing speech engine...
[2026-10-25 21:58:45,829.829 INFO    ] 2026-10-25 21:58:45
[2026-10-25 21:58:46,083.083 INFO    ] 2026-10-25 21:58:46
[2026-10-25 21:58:46,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:58:46,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:58:46,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:58:46,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:58:46,451.451 INFO    ] time= 25/10/2026 21:58:46
[2026-10-25 21:58:46,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:58:46,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:58:46,545.545 INFO    ] No existing commands found in stream
[2026-10-25 21:58:51,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:58:51,576.576 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 21:58:52,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:58:52,737.737 INFO    ] Checking for system updates...
[2026-10-25 21:58:52,774.774 INFO    ] 200
[2026-10-25 21:58:52,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:52,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:52,832.832 INFO    ] No update needed
[2026-10-25 21:58:52,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 21:58:52,872.872 INFO    ] 200
[2026-10-25 21:58:52,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:58:52,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:58:52,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:58:52,977.977 INFO    ] No camera update needed
[2026-10-25 21:58:52,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:58:52,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:58:52,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:58:52,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:58:55,035.035 INFO    ] ================================================
[2026-10-25 21:58:55,050.050 INFO    ] Launching Daemon at Sun Oct 25 21:58:55 IST 2026
[2026-10-25 21:58:55,060.060 INFO    ] ================================================
[2026-10-25 21:58:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:58:55
[2026-10-25 21:58:56,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:58:56,469.469 INFO    ] Initializing speech engine...
[2026-10-25 21:58:56,482.482 INFO    ] 2026-10-25 21:58:56
[2026-10-25 21:58:56,745.745 INFO    ] 2026-10-25 21:58:56
[2026-10-25 21:58:56,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:58:57,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:58:57,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:58:57,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:58:57,198.198 INFO    ] time= 25/10/2026 21:58:57
[2026-10-25 21:58:57,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:58:57,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:58:57,351.351 INFO    ] No existing commands found in stream
[2026-10-25 21:59:02,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:59:02,368.368 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 21:59:05,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:59:05,539.539 INFO    ] Checking for system updates...
[2026-10-25 21:59:05,575.575 INFO    ] 200
[2026-10-25 21:59:05,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:05,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:59:05,634.634 INFO    ] No update needed
[2026-10-25 21:59:05,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 21:59:05,670.670 INFO    ] 200
[2026-10-25 21:59:05,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:05,717.717 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:59:05,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:59:05,772.772 INFO    ] No camera update needed
[2026-10-25 21:59:05,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:59:05,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:59:05,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:59:05,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:59:07,829.829 INFO    ] ================================================
[2026-10-25 21:59:07,844.844 INFO    ] Launching Daemon at Sun Oct 25 21:59:07 IST 2026
[2026-10-25 21:59:07,855.855 INFO    ] ================================================
[2026-10-25 21:59:08,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:59:08
[2026-10-25 21:59:09,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:59:09,317.317 INFO    ] Initializing speech engine...
[2026-10-25 21:59:09,326.326 INFO    ] 2026-10-25 21:59:09
[2026-10-25 21:59:09,575.575 INFO    ] 2026-10-25 21:59:09
[2026-10-25 21:59:09,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:59:10,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:59:10,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:59:10,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:59:10,808.808 INFO    ] time= 25/10/2026 21:59:10
[2026-10-25 21:59:10,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:59:10,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:59:10,933.933 INFO    ] No existing commands found in stream
[2026-10-25 21:59:15,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:59:15,961.961 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 21:59:17,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 21:59:17,276.276 INFO    ] Checking for system updates...
[2026-10-25 21:59:17,312.312 INFO    ] 200
[2026-10-25 21:59:17,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:17,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:59:17,371.371 INFO    ] No update needed
[2026-10-25 21:59:17,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 21:59:17,407.407 INFO    ] 200
[2026-10-25 21:59:17,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:17,450.450 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:59:17,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 21:59:17,506.506 INFO    ] No camera update needed
[2026-10-25 21:59:17,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:59:17,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:59:17,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:59:17,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:59:19,561.561 INFO    ] ================================================
[2026-10-25 21:59:19,575.575 INFO    ] Launching Daemon at Sun Oct 25 21:59:19 IST 2026
[2026-10-25 21:59:19,586.586 INFO    ] ================================================
[2026-10-25 21:59:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:59:20
[2026-10-25 21:59:20,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:59:21,038.038 INFO    ] Initializing speech engine...
[2026-10-25 21:59:21,047.047 INFO    ] 2026-10-25 21:59:21
[2026-10-25 21:59:21,296.296 INFO    ] 2026-10-25 21:59:21
[2026-10-25 21:59:21,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:59:21,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:59:21,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:59:21,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:59:21,730.730 INFO    ] time= 25/10/2026 21:59:21
[2026-10-25 21:59:21,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:59:21,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:59:21,919.919 INFO    ] No existing commands found in stream
[2026-10-25 21:59:26,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:59:26,934.934 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 21:59:29,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:59:29,212.212 INFO    ] Checking for system updates...
[2026-10-25 21:59:29,248.248 INFO    ] 200
[2026-10-25 21:59:29,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:29,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:29,313.313 INFO    ] No update needed
[2026-10-25 21:59:29,315.315 INFO    ] Checking for camera pi updates...
[2026-10-25 21:59:29,350.350 INFO    ] 200
[2026-10-25 21:59:29,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:29,395.395 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:59:29,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:29,455.455 INFO    ] No camera update needed
[2026-10-25 21:59:29,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:59:29,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:59:29,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:59:29,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:59:31,511.511 INFO    ] ================================================
[2026-10-25 21:59:31,526.526 INFO    ] Launching Daemon at Sun Oct 25 21:59:31 IST 2026
[2026-10-25 21:59:31,536.536 INFO    ] ================================================
[2026-10-25 21:59:32,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:59:32
[2026-10-25 21:59:32,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:59:33,212.212 INFO    ] Initializing speech engine...
[2026-10-25 21:59:33,224.224 INFO    ] 2026-10-25 21:59:33
[2026-10-25 21:59:33,481.481 INFO    ] 2026-10-25 21:59:33
[2026-10-25 21:59:33,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:59:33,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:59:33,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:59:33,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:59:33,902.902 INFO    ] time= 25/10/2026 21:59:33
[2026-10-25 21:59:33,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:59:33,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:59:33,997.997 INFO    ] No existing commands found in stream
[2026-10-25 21:59:39,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:59:39,013.013 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-25 21:59:40,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 21:59:40,754.754 INFO    ] Checking for system updates...
[2026-10-25 21:59:40,790.790 INFO    ] 200
[2026-10-25 21:59:40,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:40,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:40,853.853 INFO    ] No update needed
[2026-10-25 21:59:40,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 21:59:40,890.890 INFO    ] 200
[2026-10-25 21:59:40,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:40,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:59:40,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:40,990.990 INFO    ] No camera update needed
[2026-10-25 21:59:40,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:59:40,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:59:41,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:59:41,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:59:43,045.045 INFO    ] ================================================
[2026-10-25 21:59:43,060.060 INFO    ] Launching Daemon at Sun Oct 25 21:59:43 IST 2026
[2026-10-25 21:59:43,071.071 INFO    ] ================================================
[2026-10-25 21:59:43,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:59:43
[2026-10-25 21:59:44,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:59:44,460.460 INFO    ] Initializing speech engine...
[2026-10-25 21:59:44,474.474 INFO    ] 2026-10-25 21:59:44
[2026-10-25 21:59:44,735.735 INFO    ] 2026-10-25 21:59:44
[2026-10-25 21:59:44,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:59:45,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:59:45,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:59:45,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:59:45,194.194 INFO    ] time= 25/10/2026 21:59:45
[2026-10-25 21:59:45,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:59:45,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:59:45,369.369 INFO    ] No existing commands found in stream
[2026-10-25 21:59:50,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 21:59:50,396.396 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-25 21:59:53,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 21:59:53,322.322 INFO    ] Checking for system updates...
[2026-10-25 21:59:53,362.362 INFO    ] 200
[2026-10-25 21:59:53,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:53,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:53,419.419 INFO    ] No update needed
[2026-10-25 21:59:53,422.422 INFO    ] Checking for camera pi updates...
[2026-10-25 21:59:53,456.456 INFO    ] 200
[2026-10-25 21:59:53,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 21:59:53,500.500 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 21:59:53,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 21:59:53,560.560 INFO    ] No camera update needed
[2026-10-25 21:59:53,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-25 21:59:53,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 21:59:53,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 21:59:53,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 21:59:55,615.615 INFO    ] ================================================
[2026-10-25 21:59:55,631.631 INFO    ] Launching Daemon at Sun Oct 25 21:59:55 IST 2026
[2026-10-25 21:59:55,641.641 INFO    ] ================================================
[2026-10-25 21:59:56,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 21:59:56
[2026-10-25 21:59:56,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 21:59:57,246.246 INFO    ] Initializing speech engine...
[2026-10-25 21:59:57,251.251 INFO    ] 2026-10-25 21:59:57
[2026-10-25 21:59:57,520.520 INFO    ] 2026-10-25 21:59:57
[2026-10-25 21:59:57,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 21:59:57,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 21:59:57,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 21:59:57,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 21:59:57,884.884 INFO    ] time= 25/10/2026 21:59:57
[2026-10-25 21:59:57,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 21:59:57,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-25 21:59:58,023.023 INFO    ] No existing commands found in stream
[2026-10-25 22:00:03,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:00:03,037.037 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 22:00:07,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:00:07,434.434 INFO    ] Checking for system updates...
[2026-10-25 22:00:07,470.470 INFO    ] 200
[2026-10-25 22:00:07,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:07,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:07,529.529 INFO    ] No update needed
[2026-10-25 22:00:07,532.532 INFO    ] Checking for camera pi updates...
[2026-10-25 22:00:07,570.570 INFO    ] 200
[2026-10-25 22:00:07,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:07,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:00:07,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:07,656.656 INFO    ] No camera update needed
[2026-10-25 22:00:07,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:00:07,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:00:07,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:00:07,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:00:09,716.716 INFO    ] ================================================
[2026-10-25 22:00:09,731.731 INFO    ] Launching Daemon at Sun Oct 25 22:00:09 IST 2026
[2026-10-25 22:00:09,742.742 INFO    ] ================================================
[2026-10-25 22:00:10,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:00:10
[2026-10-25 22:00:11,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:00:11,363.363 INFO    ] Initializing speech engine...
[2026-10-25 22:00:11,373.373 INFO    ] 2026-10-25 22:00:11
[2026-10-25 22:00:11,654.654 INFO    ] 2026-10-25 22:00:11
[2026-10-25 22:00:11,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:00:11,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:00:11,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:00:12,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:00:12,138.138 INFO    ] time= 25/10/2026 22:00:12
[2026-10-25 22:00:12,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:00:12,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:00:12,306.306 INFO    ] No existing commands found in stream
[2026-10-25 22:00:17,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:00:17,347.347 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-25 22:00:17,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:00:17,825.825 INFO    ] Checking for system updates...
[2026-10-25 22:00:17,862.862 INFO    ] 200
[2026-10-25 22:00:17,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:17,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:17,927.927 INFO    ] No update needed
[2026-10-25 22:00:17,930.930 INFO    ] Checking for camera pi updates...
[2026-10-25 22:00:17,969.969 INFO    ] 200
[2026-10-25 22:00:17,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:18,014.014 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:00:18,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:18,187.187 INFO    ] No camera update needed
[2026-10-25 22:00:18,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:00:18,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:00:18,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:00:18,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:00:20,245.245 INFO    ] ================================================
[2026-10-25 22:00:20,261.261 INFO    ] Launching Daemon at Sun Oct 25 22:00:20 IST 2026
[2026-10-25 22:00:20,272.272 INFO    ] ================================================
[2026-10-25 22:00:20,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:00:20
[2026-10-25 22:00:21,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:00:21,734.734 INFO    ] Initializing speech engine...
[2026-10-25 22:00:21,738.738 INFO    ] 2026-10-25 22:00:21
[2026-10-25 22:00:22,010.010 INFO    ] 2026-10-25 22:00:22
[2026-10-25 22:00:22,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:00:22,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:00:22,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:00:22,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:00:22,398.398 INFO    ] time= 25/10/2026 22:00:22
[2026-10-25 22:00:22,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:00:22,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:00:22,567.567 INFO    ] No existing commands found in stream
[2026-10-25 22:00:27,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:00:27,596.596 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 22:00:30,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:00:30,189.189 INFO    ] Checking for system updates...
[2026-10-25 22:00:30,226.226 INFO    ] 200
[2026-10-25 22:00:30,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:30,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:00:30,293.293 INFO    ] No update needed
[2026-10-25 22:00:30,295.295 INFO    ] Checking for camera pi updates...
[2026-10-25 22:00:30,329.329 INFO    ] 200
[2026-10-25 22:00:30,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:30,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:00:30,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:00:30,435.435 INFO    ] No camera update needed
[2026-10-25 22:00:30,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:00:30,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:00:30,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:00:30,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:00:32,489.489 INFO    ] ================================================
[2026-10-25 22:00:32,504.504 INFO    ] Launching Daemon at Sun Oct 25 22:00:32 IST 2026
[2026-10-25 22:00:32,515.515 INFO    ] ================================================
[2026-10-25 22:00:33,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:00:33
[2026-10-25 22:00:33,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:00:34,070.070 INFO    ] Initializing speech engine...
[2026-10-25 22:00:34,076.076 INFO    ] 2026-10-25 22:00:34
[2026-10-25 22:00:34,339.339 INFO    ] 2026-10-25 22:00:34
[2026-10-25 22:00:34,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:00:34,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:00:34,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:00:34,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:00:34,699.699 INFO    ] time= 25/10/2026 22:00:34
[2026-10-25 22:00:34,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:00:34,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:00:34,875.875 INFO    ] No existing commands found in stream
[2026-10-25 22:00:39,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:00:39,903.903 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-25 22:00:40,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:00:40,867.867 INFO    ] Checking for system updates...
[2026-10-25 22:00:40,904.904 INFO    ] 200
[2026-10-25 22:00:40,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:40,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:40,962.962 INFO    ] No update needed
[2026-10-25 22:00:40,965.965 INFO    ] Checking for camera pi updates...
[2026-10-25 22:00:40,999.999 INFO    ] 200
[2026-10-25 22:00:41,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:41,042.042 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:00:41,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:41,098.098 INFO    ] No camera update needed
[2026-10-25 22:00:41,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:00:41,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:00:41,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:00:41,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:00:43,155.155 INFO    ] ================================================
[2026-10-25 22:00:43,170.170 INFO    ] Launching Daemon at Sun Oct 25 22:00:43 IST 2026
[2026-10-25 22:00:43,181.181 INFO    ] ================================================
[2026-10-25 22:00:43,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:00:43
[2026-10-25 22:00:44,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:00:44,647.647 INFO    ] Initializing speech engine...
[2026-10-25 22:00:44,658.658 INFO    ] 2026-10-25 22:00:44
[2026-10-25 22:00:44,922.922 INFO    ] 2026-10-25 22:00:44
[2026-10-25 22:00:44,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:00:45,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:00:45,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:00:45,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:00:45,399.399 INFO    ] time= 25/10/2026 22:00:45
[2026-10-25 22:00:45,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:00:45,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:00:45,558.558 INFO    ] No existing commands found in stream
[2026-10-25 22:00:50,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:00:50,573.573 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 22:00:53,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:00:53,091.091 INFO    ] Checking for system updates...
[2026-10-25 22:00:53,127.127 INFO    ] 200
[2026-10-25 22:00:53,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:53,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:53,186.186 INFO    ] No update needed
[2026-10-25 22:00:53,188.188 INFO    ] Checking for camera pi updates...
[2026-10-25 22:00:53,222.222 INFO    ] 200
[2026-10-25 22:00:53,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:00:53,270.270 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:00:53,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:00:53,327.327 INFO    ] No camera update needed
[2026-10-25 22:00:53,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:00:53,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:00:53,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:00:53,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:00:55,384.384 INFO    ] ================================================
[2026-10-25 22:00:55,399.399 INFO    ] Launching Daemon at Sun Oct 25 22:00:55 IST 2026
[2026-10-25 22:00:55,409.409 INFO    ] ================================================
[2026-10-25 22:00:55,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:00:55
[2026-10-25 22:00:56,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:00:56,828.828 INFO    ] Initializing speech engine...
[2026-10-25 22:00:56,851.851 INFO    ] 2026-10-25 22:00:56
[2026-10-25 22:00:57,143.143 INFO    ] 2026-10-25 22:00:57
[2026-10-25 22:00:57,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:00:57,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:00:57,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:00:57,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:00:57,513.513 INFO    ] time= 25/10/2026 22:00:57
[2026-10-25 22:00:57,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:00:57,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:00:57,640.640 INFO    ] No existing commands found in stream
[2026-10-25 22:01:02,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:01:02,655.655 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 22:01:05,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:01:05,603.603 INFO    ] Checking for system updates...
[2026-10-25 22:01:05,643.643 INFO    ] 200
[2026-10-25 22:01:05,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:05,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:01:05,701.701 INFO    ] No update needed
[2026-10-25 22:01:05,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 22:01:05,737.737 INFO    ] 200
[2026-10-25 22:01:05,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:05,786.786 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:01:05,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:01:05,845.845 INFO    ] No camera update needed
[2026-10-25 22:01:05,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:01:05,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:01:05,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:01:05,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:01:07,903.903 INFO    ] ================================================
[2026-10-25 22:01:07,921.921 INFO    ] Launching Daemon at Sun Oct 25 22:01:07 IST 2026
[2026-10-25 22:01:07,934.934 INFO    ] ================================================
[2026-10-25 22:01:08,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:01:08
[2026-10-25 22:01:09,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:01:09,385.385 INFO    ] Initializing speech engine...
[2026-10-25 22:01:09,391.391 INFO    ] 2026-10-25 22:01:09
[2026-10-25 22:01:09,687.687 INFO    ] 2026-10-25 22:01:09
[2026-10-25 22:01:09,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:01:10,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:01:10,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:01:10,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:01:10,818.818 INFO    ] time= 25/10/2026 22:01:10
[2026-10-25 22:01:10,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:01:10,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:01:10,934.934 INFO    ] No existing commands found in stream
[2026-10-25 22:01:15,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:01:15,957.957 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-25 22:01:19,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:01:19,708.708 INFO    ] Checking for system updates...
[2026-10-25 22:01:19,745.745 INFO    ] 200
[2026-10-25 22:01:19,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:19,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:19,805.805 INFO    ] No update needed
[2026-10-25 22:01:19,808.808 INFO    ] Checking for camera pi updates...
[2026-10-25 22:01:19,842.842 INFO    ] 200
[2026-10-25 22:01:19,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:19,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:01:19,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:19,953.953 INFO    ] No camera update needed
[2026-10-25 22:01:19,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:01:19,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:01:19,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:01:19,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:01:22,009.009 INFO    ] ================================================
[2026-10-25 22:01:22,025.025 INFO    ] Launching Daemon at Sun Oct 25 22:01:22 IST 2026
[2026-10-25 22:01:22,036.036 INFO    ] ================================================
[2026-10-25 22:01:22,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:01:22
[2026-10-25 22:01:23,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:01:23,541.541 INFO    ] Initializing speech engine...
[2026-10-25 22:01:23,554.554 INFO    ] 2026-10-25 22:01:23
[2026-10-25 22:01:23,830.830 INFO    ] 2026-10-25 22:01:23
[2026-10-25 22:01:23,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:01:24,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:01:24,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:01:24,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:01:24,366.366 INFO    ] time= 25/10/2026 22:01:24
[2026-10-25 22:01:24,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:01:24,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:01:24,523.523 INFO    ] No existing commands found in stream
[2026-10-25 22:01:29,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:01:29,539.539 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-25 22:01:30,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:01:30,858.858 INFO    ] Checking for system updates...
[2026-10-25 22:01:30,896.896 INFO    ] 200
[2026-10-25 22:01:30,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:30,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:30,955.955 INFO    ] No update needed
[2026-10-25 22:01:30,957.957 INFO    ] Checking for camera pi updates...
[2026-10-25 22:01:30,996.996 INFO    ] 200
[2026-10-25 22:01:30,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:31,048.048 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:01:31,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:31,107.107 INFO    ] No camera update needed
[2026-10-25 22:01:31,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:01:31,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:01:31,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:01:31,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:01:33,163.163 INFO    ] ================================================
[2026-10-25 22:01:33,178.178 INFO    ] Launching Daemon at Sun Oct 25 22:01:33 IST 2026
[2026-10-25 22:01:33,189.189 INFO    ] ================================================
[2026-10-25 22:01:33,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:01:33
[2026-10-25 22:01:34,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:01:34,720.720 INFO    ] Initializing speech engine...
[2026-10-25 22:01:34,739.739 INFO    ] 2026-10-25 22:01:34
[2026-10-25 22:01:35,013.013 INFO    ] 2026-10-25 22:01:34
[2026-10-25 22:01:35,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:01:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:01:35,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:01:35,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:01:35,629.629 INFO    ] time= 25/10/2026 22:01:35
[2026-10-25 22:01:35,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:01:35,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:01:35,770.770 INFO    ] No existing commands found in stream
[2026-10-25 22:01:40,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:01:40,813.813 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 22:01:43,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:01:43,033.033 INFO    ] Checking for system updates...
[2026-10-25 22:01:43,073.073 INFO    ] 200
[2026-10-25 22:01:43,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:43,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:43,137.137 INFO    ] No update needed
[2026-10-25 22:01:43,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 22:01:43,173.173 INFO    ] 200
[2026-10-25 22:01:43,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:43,216.216 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:01:43,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:01:43,265.265 INFO    ] No camera update needed
[2026-10-25 22:01:43,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:01:43,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:01:43,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:01:43,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:01:45,320.320 INFO    ] ================================================
[2026-10-25 22:01:45,335.335 INFO    ] Launching Daemon at Sun Oct 25 22:01:45 IST 2026
[2026-10-25 22:01:45,346.346 INFO    ] ================================================
[2026-10-25 22:01:46,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:01:45
[2026-10-25 22:01:46,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:01:46,979.979 INFO    ] Initializing speech engine...
[2026-10-25 22:01:46,986.986 INFO    ] 2026-10-25 22:01:46
[2026-10-25 22:01:47,304.304 INFO    ] 2026-10-25 22:01:47
[2026-10-25 22:01:47,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:01:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:01:47,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:01:47,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:01:47,811.811 INFO    ] time= 25/10/2026 22:01:47
[2026-10-25 22:01:47,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:01:47,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:01:47,946.946 INFO    ] No existing commands found in stream
[2026-10-25 22:01:52,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:01:52,978.978 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-25 22:01:55,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:01:55,366.366 INFO    ] Checking for system updates...
[2026-10-25 22:01:55,409.409 INFO    ] 200
[2026-10-25 22:01:55,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:55,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:01:55,470.470 INFO    ] No update needed
[2026-10-25 22:01:55,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 22:01:55,508.508 INFO    ] 200
[2026-10-25 22:01:55,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:01:55,552.552 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:01:55,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:01:55,611.611 INFO    ] No camera update needed
[2026-10-25 22:01:55,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:01:55,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:01:55,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:01:55,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:01:57,671.671 INFO    ] ================================================
[2026-10-25 22:01:57,686.686 INFO    ] Launching Daemon at Sun Oct 25 22:01:57 IST 2026
[2026-10-25 22:01:57,697.697 INFO    ] ================================================
[2026-10-25 22:01:58,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:01:58
[2026-10-25 22:01:59,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:01:59,316.316 INFO    ] Initializing speech engine...
[2026-10-25 22:01:59,322.322 INFO    ] 2026-10-25 22:01:59
[2026-10-25 22:01:59,616.616 INFO    ] 2026-10-25 22:01:59
[2026-10-25 22:01:59,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:01:59,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:01:59,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:02:00,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:02:00,145.145 INFO    ] time= 25/10/2026 22:02:00
[2026-10-25 22:02:00,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:02:00,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:02:00,321.321 INFO    ] No existing commands found in stream
[2026-10-25 22:02:05,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:02:05,341.341 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 22:02:10,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:02:10,823.823 INFO    ] Checking for system updates...
[2026-10-25 22:02:10,860.860 INFO    ] 200
[2026-10-25 22:02:10,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:10,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:02:10,918.918 INFO    ] No update needed
[2026-10-25 22:02:10,920.920 INFO    ] Checking for camera pi updates...
[2026-10-25 22:02:10,958.958 INFO    ] 200
[2026-10-25 22:02:10,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:11,006.006 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:02:11,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:02:11,046.046 INFO    ] No camera update needed
[2026-10-25 22:02:11,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:02:11,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:02:11,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:02:11,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:02:13,103.103 INFO    ] ================================================
[2026-10-25 22:02:13,118.118 INFO    ] Launching Daemon at Sun Oct 25 22:02:13 IST 2026
[2026-10-25 22:02:13,129.129 INFO    ] ================================================
[2026-10-25 22:02:13,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:02:13
[2026-10-25 22:02:14,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:02:14,551.551 INFO    ] Initializing speech engine...
[2026-10-25 22:02:14,559.559 INFO    ] 2026-10-25 22:02:14
[2026-10-25 22:02:14,809.809 INFO    ] 2026-10-25 22:02:14
[2026-10-25 22:02:14,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:02:15,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:02:15,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:02:15,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:02:15,266.266 INFO    ] time= 25/10/2026 22:02:15
[2026-10-25 22:02:15,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:02:15,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:02:15,447.447 INFO    ] No existing commands found in stream
[2026-10-25 22:02:20,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:02:20,471.471 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 22:02:24,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:02:24,337.337 INFO    ] Checking for system updates...
[2026-10-25 22:02:24,374.374 INFO    ] 200
[2026-10-25 22:02:24,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:24,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:02:24,434.434 INFO    ] No update needed
[2026-10-25 22:02:24,436.436 INFO    ] Checking for camera pi updates...
[2026-10-25 22:02:24,472.472 INFO    ] 200
[2026-10-25 22:02:24,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:24,518.518 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:02:24,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:02:24,667.667 INFO    ] No camera update needed
[2026-10-25 22:02:24,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:02:24,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:02:24,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:02:24,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:02:26,729.729 INFO    ] ================================================
[2026-10-25 22:02:26,744.744 INFO    ] Launching Daemon at Sun Oct 25 22:02:26 IST 2026
[2026-10-25 22:02:26,756.756 INFO    ] ================================================
[2026-10-25 22:02:27,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:02:27
[2026-10-25 22:02:28,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:02:28,387.387 INFO    ] Initializing speech engine...
[2026-10-25 22:02:28,397.397 INFO    ] 2026-10-25 22:02:28
[2026-10-25 22:02:28,681.681 INFO    ] 2026-10-25 22:02:28
[2026-10-25 22:02:28,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:02:29,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:02:29,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:02:29,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:02:29,216.216 INFO    ] time= 25/10/2026 22:02:29
[2026-10-25 22:02:29,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:02:29,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:02:29,369.369 INFO    ] No existing commands found in stream
[2026-10-25 22:02:34,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:02:34,385.385 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 22:02:36,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:02:36,768.768 INFO    ] Checking for system updates...
[2026-10-25 22:02:36,810.810 INFO    ] 200
[2026-10-25 22:02:36,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:36,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:02:36,869.869 INFO    ] No update needed
[2026-10-25 22:02:36,871.871 INFO    ] Checking for camera pi updates...
[2026-10-25 22:02:36,905.905 INFO    ] 200
[2026-10-25 22:02:36,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:36,948.948 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:02:37,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:02:37,028.028 INFO    ] No camera update needed
[2026-10-25 22:02:37,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:02:37,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:02:37,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:02:37,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:02:39,084.084 INFO    ] ================================================
[2026-10-25 22:02:39,099.099 INFO    ] Launching Daemon at Sun Oct 25 22:02:39 IST 2026
[2026-10-25 22:02:39,113.113 INFO    ] ================================================
[2026-10-25 22:02:39,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:02:39
[2026-10-25 22:02:40,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:02:40,513.513 INFO    ] Initializing speech engine...
[2026-10-25 22:02:40,534.534 INFO    ] 2026-10-25 22:02:40
[2026-10-25 22:02:40,791.791 INFO    ] 2026-10-25 22:02:40
[2026-10-25 22:02:40,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:02:40,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:02:41,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:02:41,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:02:41,161.161 INFO    ] time= 25/10/2026 22:02:41
[2026-10-25 22:02:41,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:02:41,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:02:41,238.238 INFO    ] No existing commands found in stream
[2026-10-25 22:02:46,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:02:46,276.276 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 22:02:47,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:02:47,653.653 INFO    ] Checking for system updates...
[2026-10-25 22:02:47,694.694 INFO    ] 200
[2026-10-25 22:02:47,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:47,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:02:47,760.760 INFO    ] No update needed
[2026-10-25 22:02:47,762.762 INFO    ] Checking for camera pi updates...
[2026-10-25 22:02:47,801.801 INFO    ] 200
[2026-10-25 22:02:47,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:02:47,844.844 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:02:47,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:02:47,899.899 INFO    ] No camera update needed
[2026-10-25 22:02:47,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:02:47,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:02:47,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:02:47,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:02:49,957.957 INFO    ] ================================================
[2026-10-25 22:02:49,973.973 INFO    ] Launching Daemon at Sun Oct 25 22:02:49 IST 2026
[2026-10-25 22:02:49,984.984 INFO    ] ================================================
[2026-10-25 22:02:50,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:02:50
[2026-10-25 22:02:51,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:02:51,405.405 INFO    ] Initializing speech engine...
[2026-10-25 22:02:51,414.414 INFO    ] 2026-10-25 22:02:51
[2026-10-25 22:02:51,660.660 INFO    ] 2026-10-25 22:02:51
[2026-10-25 22:02:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:02:51,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:02:51,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:02:52,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:02:52,155.155 INFO    ] time= 25/10/2026 22:02:52
[2026-10-25 22:02:52,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:02:52,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:02:52,280.280 INFO    ] No existing commands found in stream
[2026-10-25 22:02:57,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:02:57,295.295 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 22:03:00,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:03:00,358.358 INFO    ] Checking for system updates...
[2026-10-25 22:03:00,395.395 INFO    ] 200
[2026-10-25 22:03:00,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:00,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:03:00,453.453 INFO    ] No update needed
[2026-10-25 22:03:00,456.456 INFO    ] Checking for camera pi updates...
[2026-10-25 22:03:00,490.490 INFO    ] 200
[2026-10-25 22:03:00,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:00,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:03:00,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:03:00,585.585 INFO    ] No camera update needed
[2026-10-25 22:03:00,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:03:00,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:03:00,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:03:00,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:03:02,668.668 INFO    ] ================================================
[2026-10-25 22:03:02,693.693 INFO    ] Launching Daemon at Sun Oct 25 22:03:02 IST 2026
[2026-10-25 22:03:02,708.708 INFO    ] ================================================
[2026-10-25 22:03:03,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:03:03
[2026-10-25 22:03:03,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:03:04,223.223 INFO    ] Initializing speech engine...
[2026-10-25 22:03:04,230.230 INFO    ] 2026-10-25 22:03:04
[2026-10-25 22:03:04,529.529 INFO    ] 2026-10-25 22:03:04
[2026-10-25 22:03:04,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:03:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:03:04,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:03:04,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:03:04,885.885 INFO    ] time= 25/10/2026 22:03:04
[2026-10-25 22:03:04,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:03:04,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:03:04,960.960 INFO    ] No existing commands found in stream
[2026-10-25 22:03:09,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:03:09,975.975 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-25 22:03:12,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:03:12,401.401 INFO    ] Checking for system updates...
[2026-10-25 22:03:12,437.437 INFO    ] 200
[2026-10-25 22:03:12,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:12,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:12,497.497 INFO    ] No update needed
[2026-10-25 22:03:12,499.499 INFO    ] Checking for camera pi updates...
[2026-10-25 22:03:12,536.536 INFO    ] 200
[2026-10-25 22:03:12,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:12,585.585 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:03:12,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:12,657.657 INFO    ] No camera update needed
[2026-10-25 22:03:12,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:03:12,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:03:12,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:03:12,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:03:14,712.712 INFO    ] ================================================
[2026-10-25 22:03:14,728.728 INFO    ] Launching Daemon at Sun Oct 25 22:03:14 IST 2026
[2026-10-25 22:03:14,739.739 INFO    ] ================================================
[2026-10-25 22:03:15,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:03:15
[2026-10-25 22:03:16,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:03:16,376.376 INFO    ] Initializing speech engine...
[2026-10-25 22:03:16,390.390 INFO    ] 2026-10-25 22:03:16
[2026-10-25 22:03:16,698.698 INFO    ] 2026-10-25 22:03:16
[2026-10-25 22:03:16,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:03:16,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:03:17,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:03:17,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:03:17,216.216 INFO    ] time= 25/10/2026 22:03:17
[2026-10-25 22:03:17,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:03:17,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:03:17,366.366 INFO    ] No existing commands found in stream
[2026-10-25 22:03:22,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:03:22,386.386 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 22:03:25,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:03:25,454.454 INFO    ] Checking for system updates...
[2026-10-25 22:03:25,491.491 INFO    ] 200
[2026-10-25 22:03:25,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:25,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:03:25,549.549 INFO    ] No update needed
[2026-10-25 22:03:25,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 22:03:25,586.586 INFO    ] 200
[2026-10-25 22:03:25,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:25,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:03:25,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:03:25,696.696 INFO    ] No camera update needed
[2026-10-25 22:03:25,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:03:25,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:03:25,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:03:25,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:03:27,750.750 INFO    ] ================================================
[2026-10-25 22:03:27,766.766 INFO    ] Launching Daemon at Sun Oct 25 22:03:27 IST 2026
[2026-10-25 22:03:27,778.778 INFO    ] ================================================
[2026-10-25 22:03:28,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:03:28
[2026-10-25 22:03:28,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:03:29,211.211 INFO    ] Initializing speech engine...
[2026-10-25 22:03:29,217.217 INFO    ] 2026-10-25 22:03:29
[2026-10-25 22:03:29,529.529 INFO    ] 2026-10-25 22:03:29
[2026-10-25 22:03:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:03:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:03:29,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:03:29,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:03:29,896.896 INFO    ] time= 25/10/2026 22:03:29
[2026-10-25 22:03:29,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:03:29,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:03:29,979.979 INFO    ] No existing commands found in stream
[2026-10-25 22:03:34,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:03:34,994.994 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-25 22:03:40,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:03:40,547.547 INFO    ] Checking for system updates...
[2026-10-25 22:03:40,589.589 INFO    ] 200
[2026-10-25 22:03:40,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:40,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:40,655.655 INFO    ] No update needed
[2026-10-25 22:03:40,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 22:03:40,695.695 INFO    ] 200
[2026-10-25 22:03:40,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:40,755.755 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:03:40,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:40,821.821 INFO    ] No camera update needed
[2026-10-25 22:03:40,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:03:40,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:03:40,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:03:40,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:03:42,881.881 INFO    ] ================================================
[2026-10-25 22:03:42,896.896 INFO    ] Launching Daemon at Sun Oct 25 22:03:42 IST 2026
[2026-10-25 22:03:42,907.907 INFO    ] ================================================
[2026-10-25 22:03:43,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:03:43
[2026-10-25 22:03:44,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:03:44,385.385 INFO    ] Initializing speech engine...
[2026-10-25 22:03:44,394.394 INFO    ] 2026-10-25 22:03:44
[2026-10-25 22:03:44,695.695 INFO    ] 2026-10-25 22:03:44
[2026-10-25 22:03:44,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:03:44,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:03:44,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:03:45,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:03:45,125.125 INFO    ] time= 25/10/2026 22:03:45
[2026-10-25 22:03:45,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:03:45,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:03:45,215.215 INFO    ] No existing commands found in stream
[2026-10-25 22:03:50,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:03:50,245.245 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 22:03:53,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:03:53,922.922 INFO    ] Checking for system updates...
[2026-10-25 22:03:53,962.962 INFO    ] 200
[2026-10-25 22:03:53,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:54,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:54,040.040 INFO    ] No update needed
[2026-10-25 22:03:54,043.043 INFO    ] Checking for camera pi updates...
[2026-10-25 22:03:54,086.086 INFO    ] 200
[2026-10-25 22:03:54,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:03:54,140.140 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:03:54,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:03:54,202.202 INFO    ] No camera update needed
[2026-10-25 22:03:54,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:03:54,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:03:54,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:03:54,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:03:56,263.263 INFO    ] ================================================
[2026-10-25 22:03:56,279.279 INFO    ] Launching Daemon at Sun Oct 25 22:03:56 IST 2026
[2026-10-25 22:03:56,291.291 INFO    ] ================================================
[2026-10-25 22:03:56,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:03:56
[2026-10-25 22:03:57,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:03:57,922.922 INFO    ] Initializing speech engine...
[2026-10-25 22:03:57,935.935 INFO    ] 2026-10-25 22:03:57
[2026-10-25 22:03:58,228.228 INFO    ] 2026-10-25 22:03:58
[2026-10-25 22:03:58,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:03:58,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:03:58,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:03:58,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:03:58,596.596 INFO    ] time= 25/10/2026 22:03:58
[2026-10-25 22:03:58,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:03:58,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:03:58,792.792 INFO    ] No existing commands found in stream
[2026-10-25 22:04:03,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:04:03,807.807 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-25 22:04:05,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:04:05,160.160 INFO    ] Checking for system updates...
[2026-10-25 22:04:05,197.197 INFO    ] 200
[2026-10-25 22:04:05,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:05,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:04:05,255.255 INFO    ] No update needed
[2026-10-25 22:04:05,258.258 INFO    ] Checking for camera pi updates...
[2026-10-25 22:04:05,292.292 INFO    ] 200
[2026-10-25 22:04:05,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:05,336.336 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:04:05,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:04:05,402.402 INFO    ] No camera update needed
[2026-10-25 22:04:05,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:04:05,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:04:05,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:04:05,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:04:07,459.459 INFO    ] ================================================
[2026-10-25 22:04:07,474.474 INFO    ] Launching Daemon at Sun Oct 25 22:04:07 IST 2026
[2026-10-25 22:04:07,485.485 INFO    ] ================================================
[2026-10-25 22:04:08,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:04:08
[2026-10-25 22:04:08,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:04:08,967.967 INFO    ] Initializing speech engine...
[2026-10-25 22:04:08,973.973 INFO    ] 2026-10-25 22:04:08
[2026-10-25 22:04:09,218.218 INFO    ] 2026-10-25 22:04:09
[2026-10-25 22:04:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:04:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:04:10,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:04:10,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:04:10,666.666 INFO    ] time= 25/10/2026 22:04:10
[2026-10-25 22:04:10,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:04:10,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:04:10,736.736 INFO    ] No existing commands found in stream
[2026-10-25 22:04:15,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:04:15,750.750 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 22:04:18,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:04:18,556.556 INFO    ] Checking for system updates...
[2026-10-25 22:04:18,592.592 INFO    ] 200
[2026-10-25 22:04:18,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:18,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:18,650.650 INFO    ] No update needed
[2026-10-25 22:04:18,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 22:04:18,688.688 INFO    ] 200
[2026-10-25 22:04:18,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:18,737.737 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:04:18,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:18,802.802 INFO    ] No camera update needed
[2026-10-25 22:04:18,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:04:18,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:04:18,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:04:18,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:04:20,857.857 INFO    ] ================================================
[2026-10-25 22:04:20,872.872 INFO    ] Launching Daemon at Sun Oct 25 22:04:20 IST 2026
[2026-10-25 22:04:20,884.884 INFO    ] ================================================
[2026-10-25 22:04:21,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:04:21
[2026-10-25 22:04:22,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:04:22,335.335 INFO    ] Initializing speech engine...
[2026-10-25 22:04:22,349.349 INFO    ] 2026-10-25 22:04:22
[2026-10-25 22:04:22,664.664 INFO    ] 2026-10-25 22:04:22
[2026-10-25 22:04:22,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:04:22,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:04:22,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:04:23,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:04:23,172.172 INFO    ] time= 25/10/2026 22:04:23
[2026-10-25 22:04:23,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:04:23,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:04:23,331.331 INFO    ] No existing commands found in stream
[2026-10-25 22:04:28,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:04:28,378.378 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 22:04:30,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:04:30,437.437 INFO    ] Checking for system updates...
[2026-10-25 22:04:30,483.483 INFO    ] 200
[2026-10-25 22:04:30,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:30,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:30,560.560 INFO    ] No update needed
[2026-10-25 22:04:30,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 22:04:30,632.632 INFO    ] 200
[2026-10-25 22:04:30,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:30,680.680 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:04:30,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:30,838.838 INFO    ] No camera update needed
[2026-10-25 22:04:30,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:04:30,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:04:30,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:04:30,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:04:32,924.924 INFO    ] ================================================
[2026-10-25 22:04:32,939.939 INFO    ] Launching Daemon at Sun Oct 25 22:04:32 IST 2026
[2026-10-25 22:04:32,950.950 INFO    ] ================================================
[2026-10-25 22:04:33,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:04:33
[2026-10-25 22:04:34,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:04:34,356.356 INFO    ] Initializing speech engine...
[2026-10-25 22:04:34,378.378 INFO    ] 2026-10-25 22:04:34
[2026-10-25 22:04:34,635.635 INFO    ] 2026-10-25 22:04:34
[2026-10-25 22:04:34,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:04:34,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:04:34,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:04:35,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:04:35,011.011 INFO    ] time= 25/10/2026 22:04:35
[2026-10-25 22:04:35,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:04:35,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:04:35,177.177 INFO    ] No existing commands found in stream
[2026-10-25 22:04:40,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:04:40,205.205 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 22:04:42,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:04:42,227.227 INFO    ] Checking for system updates...
[2026-10-25 22:04:42,264.264 INFO    ] 200
[2026-10-25 22:04:42,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:42,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:42,328.328 INFO    ] No update needed
[2026-10-25 22:04:42,330.330 INFO    ] Checking for camera pi updates...
[2026-10-25 22:04:42,365.365 INFO    ] 200
[2026-10-25 22:04:42,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:42,414.414 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:04:42,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:04:42,464.464 INFO    ] No camera update needed
[2026-10-25 22:04:42,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:04:42,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:04:42,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:04:42,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:04:44,522.522 INFO    ] ================================================
[2026-10-25 22:04:44,537.537 INFO    ] Launching Daemon at Sun Oct 25 22:04:44 IST 2026
[2026-10-25 22:04:44,548.548 INFO    ] ================================================
[2026-10-25 22:04:45,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:04:45
[2026-10-25 22:04:45,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:04:46,011.011 INFO    ] Initializing speech engine...
[2026-10-25 22:04:46,036.036 INFO    ] 2026-10-25 22:04:46
[2026-10-25 22:04:46,294.294 INFO    ] 2026-10-25 22:04:46
[2026-10-25 22:04:46,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:04:46,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:04:46,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:04:46,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:04:46,741.741 INFO    ] time= 25/10/2026 22:04:46
[2026-10-25 22:04:46,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:04:46,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:04:46,927.927 INFO    ] No existing commands found in stream
[2026-10-25 22:04:51,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:04:51,943.943 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 22:04:53,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:04:53,410.410 INFO    ] Checking for system updates...
[2026-10-25 22:04:53,449.449 INFO    ] 200
[2026-10-25 22:04:53,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:53,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:04:53,511.511 INFO    ] No update needed
[2026-10-25 22:04:53,513.513 INFO    ] Checking for camera pi updates...
[2026-10-25 22:04:53,555.555 INFO    ] 200
[2026-10-25 22:04:53,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:04:53,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:04:53,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:04:53,658.658 INFO    ] No camera update needed
[2026-10-25 22:04:53,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:04:53,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:04:53,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:04:53,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:04:55,715.715 INFO    ] ================================================
[2026-10-25 22:04:55,730.730 INFO    ] Launching Daemon at Sun Oct 25 22:04:55 IST 2026
[2026-10-25 22:04:55,740.740 INFO    ] ================================================
[2026-10-25 22:04:56,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:04:56
[2026-10-25 22:04:56,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:04:57,146.146 INFO    ] Initializing speech engine...
[2026-10-25 22:04:57,163.163 INFO    ] 2026-10-25 22:04:57
[2026-10-25 22:04:57,416.416 INFO    ] 2026-10-25 22:04:57
[2026-10-25 22:04:57,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:04:57,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:04:57,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:04:57,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:04:57,794.794 INFO    ] time= 25/10/2026 22:04:57
[2026-10-25 22:04:57,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:04:57,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:04:57,954.954 INFO    ] No existing commands found in stream
[2026-10-25 22:05:02,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:05:02,987.987 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 22:05:04,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:05:04,451.451 INFO    ] Checking for system updates...
[2026-10-25 22:05:04,489.489 INFO    ] 200
[2026-10-25 22:05:04,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:04,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:04,551.551 INFO    ] No update needed
[2026-10-25 22:05:04,554.554 INFO    ] Checking for camera pi updates...
[2026-10-25 22:05:04,596.596 INFO    ] 200
[2026-10-25 22:05:04,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:04,644.644 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:05:04,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:04,713.713 INFO    ] No camera update needed
[2026-10-25 22:05:04,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:05:04,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:05:04,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:05:04,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:05:06,773.773 INFO    ] ================================================
[2026-10-25 22:05:06,789.789 INFO    ] Launching Daemon at Sun Oct 25 22:05:06 IST 2026
[2026-10-25 22:05:06,801.801 INFO    ] ================================================
[2026-10-25 22:05:07,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:05:07
[2026-10-25 22:05:08,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:05:08,250.250 INFO    ] Initializing speech engine...
[2026-10-25 22:05:08,265.265 INFO    ] 2026-10-25 22:05:08
[2026-10-25 22:05:08,531.531 INFO    ] 2026-10-25 22:05:08
[2026-10-25 22:05:08,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:05:10,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:05:10,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:05:10,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:05:10,818.818 INFO    ] time= 25/10/2026 22:05:10
[2026-10-25 22:05:10,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:05:10,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:05:10,940.940 INFO    ] No existing commands found in stream
[2026-10-25 22:05:15,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:05:15,959.959 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-25 22:05:18,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:05:18,439.439 INFO    ] Checking for system updates...
[2026-10-25 22:05:18,479.479 INFO    ] 200
[2026-10-25 22:05:18,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:18,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:18,537.537 INFO    ] No update needed
[2026-10-25 22:05:18,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 22:05:18,574.574 INFO    ] 200
[2026-10-25 22:05:18,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:18,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:05:18,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:18,666.666 INFO    ] No camera update needed
[2026-10-25 22:05:18,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:05:18,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:05:18,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:05:18,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:05:20,723.723 INFO    ] ================================================
[2026-10-25 22:05:20,739.739 INFO    ] Launching Daemon at Sun Oct 25 22:05:20 IST 2026
[2026-10-25 22:05:20,749.749 INFO    ] ================================================
[2026-10-25 22:05:21,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:05:21
[2026-10-25 22:05:21,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:05:22,166.166 INFO    ] Initializing speech engine...
[2026-10-25 22:05:22,173.173 INFO    ] 2026-10-25 22:05:22
[2026-10-25 22:05:22,420.420 INFO    ] 2026-10-25 22:05:22
[2026-10-25 22:05:22,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:05:22,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:05:22,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:05:22,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:05:22,883.883 INFO    ] time= 25/10/2026 22:05:22
[2026-10-25 22:05:22,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:05:22,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:05:23,033.033 INFO    ] No existing commands found in stream
[2026-10-25 22:05:28,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:05:28,047.047 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 22:05:29,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:05:29,678.678 INFO    ] Checking for system updates...
[2026-10-25 22:05:29,719.719 INFO    ] 200
[2026-10-25 22:05:29,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:29,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:29,779.779 INFO    ] No update needed
[2026-10-25 22:05:29,782.782 INFO    ] Checking for camera pi updates...
[2026-10-25 22:05:29,817.817 INFO    ] 200
[2026-10-25 22:05:29,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:29,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:05:29,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:29,928.928 INFO    ] No camera update needed
[2026-10-25 22:05:29,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:05:29,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:05:29,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:05:29,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:05:31,993.993 INFO    ] ================================================
[2026-10-25 22:05:32,011.011 INFO    ] Launching Daemon at Sun Oct 25 22:05:32 IST 2026
[2026-10-25 22:05:32,024.024 INFO    ] ================================================
[2026-10-25 22:05:32,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:05:32
[2026-10-25 22:05:33,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:05:33,782.782 INFO    ] Initializing speech engine...
[2026-10-25 22:05:33,794.794 INFO    ] 2026-10-25 22:05:33
[2026-10-25 22:05:34,112.112 INFO    ] 2026-10-25 22:05:34
[2026-10-25 22:05:34,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:05:34,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:05:34,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:05:34,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:05:34,638.638 INFO    ] time= 25/10/2026 22:05:34
[2026-10-25 22:05:34,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:05:34,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:05:34,798.798 INFO    ] No existing commands found in stream
[2026-10-25 22:05:39,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:05:39,814.814 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 22:05:42,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:05:42,286.286 INFO    ] Checking for system updates...
[2026-10-25 22:05:42,324.324 INFO    ] 200
[2026-10-25 22:05:42,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:42,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:42,386.386 INFO    ] No update needed
[2026-10-25 22:05:42,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 22:05:42,424.424 INFO    ] 200
[2026-10-25 22:05:42,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:42,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:05:42,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:42,523.523 INFO    ] No camera update needed
[2026-10-25 22:05:42,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:05:42,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:05:42,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:05:42,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:05:44,583.583 INFO    ] ================================================
[2026-10-25 22:05:44,598.598 INFO    ] Launching Daemon at Sun Oct 25 22:05:44 IST 2026
[2026-10-25 22:05:44,609.609 INFO    ] ================================================
[2026-10-25 22:05:45,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:05:45
[2026-10-25 22:05:45,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:05:46,273.273 INFO    ] Initializing speech engine...
[2026-10-25 22:05:46,282.282 INFO    ] 2026-10-25 22:05:46
[2026-10-25 22:05:46,571.571 INFO    ] 2026-10-25 22:05:46
[2026-10-25 22:05:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:05:46,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:05:46,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:05:47,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:05:47,120.120 INFO    ] time= 25/10/2026 22:05:47
[2026-10-25 22:05:47,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:05:47,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:05:47,265.265 INFO    ] No existing commands found in stream
[2026-10-25 22:05:52,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:05:52,294.294 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 22:05:56,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:05:56,456.456 INFO    ] Checking for system updates...
[2026-10-25 22:05:56,495.495 INFO    ] 200
[2026-10-25 22:05:56,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:56,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:56,564.564 INFO    ] No update needed
[2026-10-25 22:05:56,567.567 INFO    ] Checking for camera pi updates...
[2026-10-25 22:05:56,607.607 INFO    ] 200
[2026-10-25 22:05:56,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:05:56,651.651 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:05:56,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:05:56,703.703 INFO    ] No camera update needed
[2026-10-25 22:05:56,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:05:56,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:05:56,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:05:56,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:05:58,759.759 INFO    ] ================================================
[2026-10-25 22:05:58,773.773 INFO    ] Launching Daemon at Sun Oct 25 22:05:58 IST 2026
[2026-10-25 22:05:58,784.784 INFO    ] ================================================
[2026-10-25 22:05:59,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:05:59
[2026-10-25 22:05:59,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:06:00,246.246 INFO    ] Initializing speech engine...
[2026-10-25 22:06:00,255.255 INFO    ] 2026-10-25 22:06:00
[2026-10-25 22:06:00,512.512 INFO    ] 2026-10-25 22:06:00
[2026-10-25 22:06:00,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:06:00,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:06:00,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:06:00,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:06:00,874.874 INFO    ] time= 25/10/2026 22:06:00
[2026-10-25 22:06:00,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:06:00,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:06:01,063.063 INFO    ] No existing commands found in stream
[2026-10-25 22:06:06,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:06:06,081.081 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 22:06:10,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:06:10,964.964 INFO    ] Checking for system updates...
[2026-10-25 22:06:11,001.001 INFO    ] 200
[2026-10-25 22:06:11,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:11,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:11,064.064 INFO    ] No update needed
[2026-10-25 22:06:11,066.066 INFO    ] Checking for camera pi updates...
[2026-10-25 22:06:11,100.100 INFO    ] 200
[2026-10-25 22:06:11,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:11,147.147 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:06:11,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:11,202.202 INFO    ] No camera update needed
[2026-10-25 22:06:11,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:06:11,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:06:11,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:06:11,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:06:13,257.257 INFO    ] ================================================
[2026-10-25 22:06:13,274.274 INFO    ] Launching Daemon at Sun Oct 25 22:06:13 IST 2026
[2026-10-25 22:06:13,284.284 INFO    ] ================================================
[2026-10-25 22:06:13,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:06:13
[2026-10-25 22:06:14,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:06:14,695.695 INFO    ] Initializing speech engine...
[2026-10-25 22:06:14,717.717 INFO    ] 2026-10-25 22:06:14
[2026-10-25 22:06:14,993.993 INFO    ] 2026-10-25 22:06:14
[2026-10-25 22:06:15,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:06:15,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:06:15,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:06:15,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:06:15,495.495 INFO    ] time= 25/10/2026 22:06:15
[2026-10-25 22:06:15,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:06:15,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:06:15,708.708 INFO    ] No existing commands found in stream
[2026-10-25 22:06:20,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:06:20,740.740 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-25 22:06:22,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:06:22,753.753 INFO    ] Checking for system updates...
[2026-10-25 22:06:22,789.789 INFO    ] 200
[2026-10-25 22:06:22,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:22,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:22,848.848 INFO    ] No update needed
[2026-10-25 22:06:22,850.850 INFO    ] Checking for camera pi updates...
[2026-10-25 22:06:22,886.886 INFO    ] 200
[2026-10-25 22:06:22,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:22,930.930 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:06:22,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:22,980.980 INFO    ] No camera update needed
[2026-10-25 22:06:22,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:06:22,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:06:22,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:06:22,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:06:25,039.039 INFO    ] ================================================
[2026-10-25 22:06:25,055.055 INFO    ] Launching Daemon at Sun Oct 25 22:06:25 IST 2026
[2026-10-25 22:06:25,066.066 INFO    ] ================================================
[2026-10-25 22:06:25,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:06:25
[2026-10-25 22:06:26,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:06:26,672.672 INFO    ] Initializing speech engine...
[2026-10-25 22:06:26,681.681 INFO    ] 2026-10-25 22:06:26
[2026-10-25 22:06:26,936.936 INFO    ] 2026-10-25 22:06:26
[2026-10-25 22:06:26,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:06:27,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:06:27,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:06:27,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:06:27,298.298 INFO    ] time= 25/10/2026 22:06:27
[2026-10-25 22:06:27,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:06:27,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:06:27,468.468 INFO    ] No existing commands found in stream
[2026-10-25 22:06:32,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:06:32,501.501 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 22:06:34,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:06:34,955.955 INFO    ] Checking for system updates...
[2026-10-25 22:06:34,991.991 INFO    ] 200
[2026-10-25 22:06:34,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:35,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:35,052.052 INFO    ] No update needed
[2026-10-25 22:06:35,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 22:06:35,093.093 INFO    ] 200
[2026-10-25 22:06:35,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:35,142.142 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:06:35,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:35,200.200 INFO    ] No camera update needed
[2026-10-25 22:06:35,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:06:35,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:06:35,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:06:35,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:06:37,257.257 INFO    ] ================================================
[2026-10-25 22:06:37,273.273 INFO    ] Launching Daemon at Sun Oct 25 22:06:37 IST 2026
[2026-10-25 22:06:37,284.284 INFO    ] ================================================
[2026-10-25 22:06:37,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:06:37
[2026-10-25 22:06:38,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:06:38,740.740 INFO    ] Initializing speech engine...
[2026-10-25 22:06:38,748.748 INFO    ] 2026-10-25 22:06:38
[2026-10-25 22:06:39,055.055 INFO    ] 2026-10-25 22:06:39
[2026-10-25 22:06:39,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:06:40,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:06:40,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:06:40,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:06:40,777.777 INFO    ] time= 25/10/2026 22:06:40
[2026-10-25 22:06:40,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:06:40,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:06:40,888.888 INFO    ] No existing commands found in stream
[2026-10-25 22:06:45,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:06:45,904.904 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 22:06:46,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:06:46,935.935 INFO    ] Checking for system updates...
[2026-10-25 22:06:46,973.973 INFO    ] 200
[2026-10-25 22:06:46,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:47,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:47,034.034 INFO    ] No update needed
[2026-10-25 22:06:47,036.036 INFO    ] Checking for camera pi updates...
[2026-10-25 22:06:47,072.072 INFO    ] 200
[2026-10-25 22:06:47,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:47,123.123 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:06:47,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:47,197.197 INFO    ] No camera update needed
[2026-10-25 22:06:47,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:06:47,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:06:47,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:06:47,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:06:49,255.255 INFO    ] ================================================
[2026-10-25 22:06:49,270.270 INFO    ] Launching Daemon at Sun Oct 25 22:06:49 IST 2026
[2026-10-25 22:06:49,280.280 INFO    ] ================================================
[2026-10-25 22:06:49,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:06:49
[2026-10-25 22:06:50,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:06:50,775.775 INFO    ] Initializing speech engine...
[2026-10-25 22:06:50,782.782 INFO    ] 2026-10-25 22:06:50
[2026-10-25 22:06:51,037.037 INFO    ] 2026-10-25 22:06:51
[2026-10-25 22:06:51,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:06:51,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:06:51,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:06:51,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:06:51,411.411 INFO    ] time= 25/10/2026 22:06:51
[2026-10-25 22:06:51,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:06:51,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:06:51,587.587 INFO    ] No existing commands found in stream
[2026-10-25 22:06:56,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:06:56,620.620 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 22:06:57,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:06:57,994.994 INFO    ] Checking for system updates...
[2026-10-25 22:06:58,031.031 INFO    ] 200
[2026-10-25 22:06:58,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:58,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:58,089.089 INFO    ] No update needed
[2026-10-25 22:06:58,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 22:06:58,125.125 INFO    ] 200
[2026-10-25 22:06:58,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:06:58,169.169 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:06:58,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:06:58,227.227 INFO    ] No camera update needed
[2026-10-25 22:06:58,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:06:58,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:06:58,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:06:58,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:07:00,284.284 INFO    ] ================================================
[2026-10-25 22:07:00,299.299 INFO    ] Launching Daemon at Sun Oct 25 22:07:00 IST 2026
[2026-10-25 22:07:00,310.310 INFO    ] ================================================
[2026-10-25 22:07:00,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:07:00
[2026-10-25 22:07:01,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:07:02,105.105 INFO    ] Initializing speech engine...
[2026-10-25 22:07:02,167.167 INFO    ] 2026-10-25 22:07:02
[2026-10-25 22:07:02,616.616 INFO    ] 2026-10-25 22:07:02
[2026-10-25 22:07:02,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:07:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:07:02,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:07:03,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:07:03,101.101 INFO    ] time= 25/10/2026 22:07:03
[2026-10-25 22:07:03,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:07:03,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:07:03,223.223 INFO    ] No existing commands found in stream
[2026-10-25 22:07:08,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:07:08,251.251 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-25 22:07:10,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:07:10,907.907 INFO    ] Checking for system updates...
[2026-10-25 22:07:10,949.949 INFO    ] 200
[2026-10-25 22:07:10,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:11,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:07:11,019.019 INFO    ] No update needed
[2026-10-25 22:07:11,022.022 INFO    ] Checking for camera pi updates...
[2026-10-25 22:07:11,056.056 INFO    ] 200
[2026-10-25 22:07:11,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:11,102.102 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:07:11,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:07:11,169.169 INFO    ] No camera update needed
[2026-10-25 22:07:11,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:07:11,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:07:11,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:07:11,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:07:13,227.227 INFO    ] ================================================
[2026-10-25 22:07:13,242.242 INFO    ] Launching Daemon at Sun Oct 25 22:07:13 IST 2026
[2026-10-25 22:07:13,254.254 INFO    ] ================================================
[2026-10-25 22:07:13,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:07:13
[2026-10-25 22:07:14,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:07:14,787.787 INFO    ] Initializing speech engine...
[2026-10-25 22:07:14,809.809 INFO    ] 2026-10-25 22:07:14
[2026-10-25 22:07:15,063.063 INFO    ] 2026-10-25 22:07:15
[2026-10-25 22:07:15,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:07:15,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:07:15,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:07:15,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:07:15,539.539 INFO    ] time= 25/10/2026 22:07:15
[2026-10-25 22:07:15,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:07:15,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:07:15,715.715 INFO    ] No existing commands found in stream
[2026-10-25 22:07:20,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:07:20,749.749 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-25 22:07:23,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:07:23,880.880 INFO    ] Checking for system updates...
[2026-10-25 22:07:23,934.934 INFO    ] 200
[2026-10-25 22:07:23,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:23,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:23,999.999 INFO    ] No update needed
[2026-10-25 22:07:24,002.002 INFO    ] Checking for camera pi updates...
[2026-10-25 22:07:24,035.035 INFO    ] 200
[2026-10-25 22:07:24,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:24,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:07:24,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:24,144.144 INFO    ] No camera update needed
[2026-10-25 22:07:24,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:07:24,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:07:24,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:07:24,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:07:26,203.203 INFO    ] ================================================
[2026-10-25 22:07:26,219.219 INFO    ] Launching Daemon at Sun Oct 25 22:07:26 IST 2026
[2026-10-25 22:07:26,229.229 INFO    ] ================================================
[2026-10-25 22:07:26,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:07:26
[2026-10-25 22:07:27,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:07:27,673.673 INFO    ] Initializing speech engine...
[2026-10-25 22:07:27,689.689 INFO    ] 2026-10-25 22:07:27
[2026-10-25 22:07:27,944.944 INFO    ] 2026-10-25 22:07:27
[2026-10-25 22:07:27,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:07:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:07:28,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:07:28,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:07:28,419.419 INFO    ] time= 25/10/2026 22:07:28
[2026-10-25 22:07:28,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:07:28,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:07:28,562.562 INFO    ] No existing commands found in stream
[2026-10-25 22:07:33,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:07:33,577.577 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 22:07:34,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:07:34,756.756 INFO    ] Checking for system updates...
[2026-10-25 22:07:34,793.793 INFO    ] 200
[2026-10-25 22:07:34,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:34,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:34,851.851 INFO    ] No update needed
[2026-10-25 22:07:34,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 22:07:34,892.892 INFO    ] 200
[2026-10-25 22:07:34,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:34,940.940 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:07:34,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:35,002.002 INFO    ] No camera update needed
[2026-10-25 22:07:35,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:07:35,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:07:35,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:07:35,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:07:37,059.059 INFO    ] ================================================
[2026-10-25 22:07:37,074.074 INFO    ] Launching Daemon at Sun Oct 25 22:07:37 IST 2026
[2026-10-25 22:07:37,085.085 INFO    ] ================================================
[2026-10-25 22:07:37,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:07:37
[2026-10-25 22:07:38,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:07:38,714.714 INFO    ] Initializing speech engine...
[2026-10-25 22:07:38,727.727 INFO    ] 2026-10-25 22:07:38
[2026-10-25 22:07:39,015.015 INFO    ] 2026-10-25 22:07:38
[2026-10-25 22:07:39,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:07:40,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:07:40,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:07:40,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:07:40,870.870 INFO    ] time= 25/10/2026 22:07:40
[2026-10-25 22:07:40,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:07:40,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:07:40,945.945 INFO    ] No existing commands found in stream
[2026-10-25 22:07:45,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:07:45,960.960 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 22:07:48,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:07:48,926.926 INFO    ] Checking for system updates...
[2026-10-25 22:07:48,965.965 INFO    ] 200
[2026-10-25 22:07:48,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:49,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:49,031.031 INFO    ] No update needed
[2026-10-25 22:07:49,034.034 INFO    ] Checking for camera pi updates...
[2026-10-25 22:07:49,076.076 INFO    ] 200
[2026-10-25 22:07:49,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:07:49,119.119 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:07:49,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:07:49,173.173 INFO    ] No camera update needed
[2026-10-25 22:07:49,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:07:49,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:07:49,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:07:49,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:07:51,228.228 INFO    ] ================================================
[2026-10-25 22:07:51,243.243 INFO    ] Launching Daemon at Sun Oct 25 22:07:51 IST 2026
[2026-10-25 22:07:51,253.253 INFO    ] ================================================
[2026-10-25 22:07:51,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:07:51
[2026-10-25 22:07:52,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:07:52,688.688 INFO    ] Initializing speech engine...
[2026-10-25 22:07:52,701.701 INFO    ] 2026-10-25 22:07:52
[2026-10-25 22:07:52,968.968 INFO    ] 2026-10-25 22:07:52
[2026-10-25 22:07:53,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:07:53,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:07:53,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:07:53,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:07:53,339.339 INFO    ] time= 25/10/2026 22:07:53
[2026-10-25 22:07:53,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:07:53,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:07:53,525.525 INFO    ] No existing commands found in stream
[2026-10-25 22:07:58,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:07:58,549.549 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 22:08:00,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:08:00,834.834 INFO    ] Checking for system updates...
[2026-10-25 22:08:00,871.871 INFO    ] 200
[2026-10-25 22:08:00,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:00,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:00,934.934 INFO    ] No update needed
[2026-10-25 22:08:00,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 22:08:00,974.974 INFO    ] 200
[2026-10-25 22:08:00,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:01,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:08:01,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:01,076.076 INFO    ] No camera update needed
[2026-10-25 22:08:01,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:08:01,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:08:01,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:08:01,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:08:03,138.138 INFO    ] ================================================
[2026-10-25 22:08:03,153.153 INFO    ] Launching Daemon at Sun Oct 25 22:08:03 IST 2026
[2026-10-25 22:08:03,164.164 INFO    ] ================================================
[2026-10-25 22:08:03,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:08:03
[2026-10-25 22:08:04,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:08:04,614.614 INFO    ] Initializing speech engine...
[2026-10-25 22:08:04,637.637 INFO    ] 2026-10-25 22:08:04
[2026-10-25 22:08:04,896.896 INFO    ] 2026-10-25 22:08:04
[2026-10-25 22:08:04,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:08:05,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:08:05,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:08:05,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:08:05,375.375 INFO    ] time= 25/10/2026 22:08:05
[2026-10-25 22:08:05,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:08:05,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:08:05,538.538 INFO    ] No existing commands found in stream
[2026-10-25 22:08:10,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:08:10,561.561 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-25 22:08:13,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:08:13,471.471 INFO    ] Checking for system updates...
[2026-10-25 22:08:13,511.511 INFO    ] 200
[2026-10-25 22:08:13,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:13,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:13,578.578 INFO    ] No update needed
[2026-10-25 22:08:13,580.580 INFO    ] Checking for camera pi updates...
[2026-10-25 22:08:13,618.618 INFO    ] 200
[2026-10-25 22:08:13,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:13,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:08:13,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:13,714.714 INFO    ] No camera update needed
[2026-10-25 22:08:13,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:08:13,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:08:13,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:08:13,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:08:15,771.771 INFO    ] ================================================
[2026-10-25 22:08:15,787.787 INFO    ] Launching Daemon at Sun Oct 25 22:08:15 IST 2026
[2026-10-25 22:08:15,799.799 INFO    ] ================================================
[2026-10-25 22:08:16,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:08:16
[2026-10-25 22:08:16,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:08:17,215.215 INFO    ] Initializing speech engine...
[2026-10-25 22:08:17,234.234 INFO    ] 2026-10-25 22:08:17
[2026-10-25 22:08:17,483.483 INFO    ] 2026-10-25 22:08:17
[2026-10-25 22:08:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:08:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:08:17,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:08:17,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:08:17,927.927 INFO    ] time= 25/10/2026 22:08:17
[2026-10-25 22:08:17,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:08:17,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:08:18,080.080 INFO    ] No existing commands found in stream
[2026-10-25 22:08:23,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:08:23,093.093 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-25 22:08:26,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:08:26,288.288 INFO    ] Checking for system updates...
[2026-10-25 22:08:26,324.324 INFO    ] 200
[2026-10-25 22:08:26,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:26,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:08:26,387.387 INFO    ] No update needed
[2026-10-25 22:08:26,389.389 INFO    ] Checking for camera pi updates...
[2026-10-25 22:08:26,423.423 INFO    ] 200
[2026-10-25 22:08:26,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:26,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:08:26,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:08:26,527.527 INFO    ] No camera update needed
[2026-10-25 22:08:26,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:08:26,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:08:26,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:08:26,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:08:28,584.584 INFO    ] ================================================
[2026-10-25 22:08:28,600.600 INFO    ] Launching Daemon at Sun Oct 25 22:08:28 IST 2026
[2026-10-25 22:08:28,611.611 INFO    ] ================================================
[2026-10-25 22:08:29,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:08:29
[2026-10-25 22:08:29,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:08:30,068.068 INFO    ] Initializing speech engine...
[2026-10-25 22:08:30,077.077 INFO    ] 2026-10-25 22:08:30
[2026-10-25 22:08:30,321.321 INFO    ] 2026-10-25 22:08:30
[2026-10-25 22:08:30,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:08:30,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:08:30,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:08:30,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:08:30,821.821 INFO    ] time= 25/10/2026 22:08:30
[2026-10-25 22:08:30,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:08:30,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:08:31,004.004 INFO    ] No existing commands found in stream
[2026-10-25 22:08:36,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:08:36,039.039 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 22:08:40,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:08:40,803.803 INFO    ] Checking for system updates...
[2026-10-25 22:08:40,839.839 INFO    ] 200
[2026-10-25 22:08:40,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:40,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:40,898.898 INFO    ] No update needed
[2026-10-25 22:08:40,900.900 INFO    ] Checking for camera pi updates...
[2026-10-25 22:08:40,934.934 INFO    ] 200
[2026-10-25 22:08:40,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:40,977.977 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:08:41,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:41,134.134 INFO    ] No camera update needed
[2026-10-25 22:08:41,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:08:41,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:08:41,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:08:41,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:08:43,195.195 INFO    ] ================================================
[2026-10-25 22:08:43,210.210 INFO    ] Launching Daemon at Sun Oct 25 22:08:43 IST 2026
[2026-10-25 22:08:43,221.221 INFO    ] ================================================
[2026-10-25 22:08:43,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:08:43
[2026-10-25 22:08:44,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:08:44,873.873 INFO    ] Initializing speech engine...
[2026-10-25 22:08:44,884.884 INFO    ] 2026-10-25 22:08:44
[2026-10-25 22:08:45,197.197 INFO    ] 2026-10-25 22:08:45
[2026-10-25 22:08:45,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:08:45,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:08:45,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:08:45,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:08:45,699.699 INFO    ] time= 25/10/2026 22:08:45
[2026-10-25 22:08:45,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:08:45,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:08:45,856.856 INFO    ] No existing commands found in stream
[2026-10-25 22:08:50,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:08:50,876.876 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-25 22:08:51,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:08:51,434.434 INFO    ] Checking for system updates...
[2026-10-25 22:08:51,475.475 INFO    ] 200
[2026-10-25 22:08:51,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:51,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:51,534.534 INFO    ] No update needed
[2026-10-25 22:08:51,537.537 INFO    ] Checking for camera pi updates...
[2026-10-25 22:08:51,578.578 INFO    ] 200
[2026-10-25 22:08:51,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:08:51,629.629 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:08:51,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:08:51,686.686 INFO    ] No camera update needed
[2026-10-25 22:08:51,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:08:51,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:08:51,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:08:51,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:08:53,741.741 INFO    ] ================================================
[2026-10-25 22:08:53,756.756 INFO    ] Launching Daemon at Sun Oct 25 22:08:53 IST 2026
[2026-10-25 22:08:53,767.767 INFO    ] ================================================
[2026-10-25 22:08:54,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:08:54
[2026-10-25 22:08:55,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:08:55,445.445 INFO    ] Initializing speech engine...
[2026-10-25 22:08:55,455.455 INFO    ] 2026-10-25 22:08:55
[2026-10-25 22:08:55,760.760 INFO    ] 2026-10-25 22:08:55
[2026-10-25 22:08:55,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:08:56,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:08:56,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:08:56,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:08:56,266.266 INFO    ] time= 25/10/2026 22:08:56
[2026-10-25 22:08:56,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:08:56,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:08:56,413.413 INFO    ] No existing commands found in stream
[2026-10-25 22:09:01,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:09:01,440.440 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 22:09:03,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:09:03,883.883 INFO    ] Checking for system updates...
[2026-10-25 22:09:03,920.920 INFO    ] 200
[2026-10-25 22:09:03,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:03,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:09:03,980.980 INFO    ] No update needed
[2026-10-25 22:09:03,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 22:09:04,018.018 INFO    ] 200
[2026-10-25 22:09:04,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:04,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:09:04,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:09:04,129.129 INFO    ] No camera update needed
[2026-10-25 22:09:04,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:09:04,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:09:04,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:09:04,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:09:06,188.188 INFO    ] ================================================
[2026-10-25 22:09:06,203.203 INFO    ] Launching Daemon at Sun Oct 25 22:09:06 IST 2026
[2026-10-25 22:09:06,214.214 INFO    ] ================================================
[2026-10-25 22:09:06,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:09:06
[2026-10-25 22:09:07,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:09:07,676.676 INFO    ] Initializing speech engine...
[2026-10-25 22:09:07,681.681 INFO    ] 2026-10-25 22:09:07
[2026-10-25 22:09:07,929.929 INFO    ] 2026-10-25 22:09:07
[2026-10-25 22:09:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:09:08,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:09:08,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:09:10,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:09:10,685.685 INFO    ] time= 25/10/2026 22:09:10
[2026-10-25 22:09:10,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:09:10,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:09:10,775.775 INFO    ] No existing commands found in stream
[2026-10-25 22:09:15,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:09:15,788.788 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-25 22:09:17,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:09:17,334.334 INFO    ] Checking for system updates...
[2026-10-25 22:09:17,370.370 INFO    ] 200
[2026-10-25 22:09:17,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:17,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:09:17,427.427 INFO    ] No update needed
[2026-10-25 22:09:17,430.430 INFO    ] Checking for camera pi updates...
[2026-10-25 22:09:17,464.464 INFO    ] 200
[2026-10-25 22:09:17,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:17,507.507 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:09:17,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:09:17,560.560 INFO    ] No camera update needed
[2026-10-25 22:09:17,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:09:17,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:09:17,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:09:17,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:09:19,616.616 INFO    ] ================================================
[2026-10-25 22:09:19,631.631 INFO    ] Launching Daemon at Sun Oct 25 22:09:19 IST 2026
[2026-10-25 22:09:19,642.642 INFO    ] ================================================
[2026-10-25 22:09:20,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:09:20
[2026-10-25 22:09:20,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:09:21,062.062 INFO    ] Initializing speech engine...
[2026-10-25 22:09:21,076.076 INFO    ] 2026-10-25 22:09:21
[2026-10-25 22:09:21,362.362 INFO    ] 2026-10-25 22:09:21
[2026-10-25 22:09:21,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:09:21,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:09:21,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:09:21,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:09:21,743.743 INFO    ] time= 25/10/2026 22:09:21
[2026-10-25 22:09:21,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:09:21,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:09:21,881.881 INFO    ] No existing commands found in stream
[2026-10-25 22:09:26,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:09:26,897.897 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-25 22:09:30,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:09:30,349.349 INFO    ] Checking for system updates...
[2026-10-25 22:09:30,386.386 INFO    ] 200
[2026-10-25 22:09:30,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:30,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:30,451.451 INFO    ] No update needed
[2026-10-25 22:09:30,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 22:09:30,491.491 INFO    ] 200
[2026-10-25 22:09:30,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:30,541.541 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:09:30,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:30,613.613 INFO    ] No camera update needed
[2026-10-25 22:09:30,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:09:30,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:09:30,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:09:30,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:09:32,672.672 INFO    ] ================================================
[2026-10-25 22:09:32,688.688 INFO    ] Launching Daemon at Sun Oct 25 22:09:32 IST 2026
[2026-10-25 22:09:32,700.700 INFO    ] ================================================
[2026-10-25 22:09:33,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:09:33
[2026-10-25 22:09:34,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:09:34,380.380 INFO    ] Initializing speech engine...
[2026-10-25 22:09:34,391.391 INFO    ] 2026-10-25 22:09:34
[2026-10-25 22:09:34,682.682 INFO    ] 2026-10-25 22:09:34
[2026-10-25 22:09:34,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:09:34,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:09:34,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:09:35,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:09:35,478.478 INFO    ] time= 25/10/2026 22:09:35
[2026-10-25 22:09:35,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:09:35,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:09:35,752.752 INFO    ] No existing commands found in stream
[2026-10-25 22:09:40,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:09:40,792.792 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 22:09:44,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:09:44,826.826 INFO    ] Checking for system updates...
[2026-10-25 22:09:44,865.865 INFO    ] 200
[2026-10-25 22:09:44,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:44,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:44,929.929 INFO    ] No update needed
[2026-10-25 22:09:44,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 22:09:44,972.972 INFO    ] 200
[2026-10-25 22:09:44,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:45,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:09:45,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:45,071.071 INFO    ] No camera update needed
[2026-10-25 22:09:45,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:09:45,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:09:45,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:09:45,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:09:47,126.126 INFO    ] ================================================
[2026-10-25 22:09:47,142.142 INFO    ] Launching Daemon at Sun Oct 25 22:09:47 IST 2026
[2026-10-25 22:09:47,153.153 INFO    ] ================================================
[2026-10-25 22:09:47,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:09:47
[2026-10-25 22:09:48,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:09:48,801.801 INFO    ] Initializing speech engine...
[2026-10-25 22:09:48,815.815 INFO    ] 2026-10-25 22:09:48
[2026-10-25 22:09:49,125.125 INFO    ] 2026-10-25 22:09:49
[2026-10-25 22:09:49,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:09:49,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:09:49,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:09:49,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:09:49,660.660 INFO    ] time= 25/10/2026 22:09:49
[2026-10-25 22:09:49,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:09:49,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:09:49,885.885 INFO    ] No existing commands found in stream
[2026-10-25 22:09:54,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:09:54,914.914 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 22:09:55,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:09:55,734.734 INFO    ] Checking for system updates...
[2026-10-25 22:09:55,771.771 INFO    ] 200
[2026-10-25 22:09:55,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:55,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:55,836.836 INFO    ] No update needed
[2026-10-25 22:09:55,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 22:09:55,873.873 INFO    ] 200
[2026-10-25 22:09:55,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:09:55,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:09:55,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:09:55,976.976 INFO    ] No camera update needed
[2026-10-25 22:09:55,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:09:55,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:09:55,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:09:55,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:09:58,031.031 INFO    ] ================================================
[2026-10-25 22:09:58,046.046 INFO    ] Launching Daemon at Sun Oct 25 22:09:58 IST 2026
[2026-10-25 22:09:58,057.057 INFO    ] ================================================
[2026-10-25 22:09:58,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:09:58
[2026-10-25 22:09:59,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:09:59,502.502 INFO    ] Initializing speech engine...
[2026-10-25 22:09:59,511.511 INFO    ] 2026-10-25 22:09:59
[2026-10-25 22:09:59,768.768 INFO    ] 2026-10-25 22:09:59
[2026-10-25 22:09:59,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:09:59,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:09:59,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:10:00,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:10:00,110.110 INFO    ] time= 25/10/2026 22:10:00
[2026-10-25 22:10:00,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:10:00,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:10:00,237.237 INFO    ] No existing commands found in stream
[2026-10-25 22:10:05,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:10:05,250.250 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 22:10:08,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:10:08,978.978 INFO    ] Checking for system updates...
[2026-10-25 22:10:09,020.020 INFO    ] 200
[2026-10-25 22:10:09,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:09,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:10:09,100.100 INFO    ] No update needed
[2026-10-25 22:10:09,103.103 INFO    ] Checking for camera pi updates...
[2026-10-25 22:10:09,138.138 INFO    ] 200
[2026-10-25 22:10:09,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:09,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:10:09,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:10:09,240.240 INFO    ] No camera update needed
[2026-10-25 22:10:09,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:10:09,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:10:09,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:10:09,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:10:11,300.300 INFO    ] ================================================
[2026-10-25 22:10:11,315.315 INFO    ] Launching Daemon at Sun Oct 25 22:10:11 IST 2026
[2026-10-25 22:10:11,326.326 INFO    ] ================================================
[2026-10-25 22:10:11,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:10:11
[2026-10-25 22:10:12,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:10:12,987.987 INFO    ] Initializing speech engine...
[2026-10-25 22:10:12,996.996 INFO    ] 2026-10-25 22:10:12
[2026-10-25 22:10:13,286.286 INFO    ] 2026-10-25 22:10:13
[2026-10-25 22:10:13,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:10:13,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:10:13,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:10:13,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:10:13,748.748 INFO    ] time= 25/10/2026 22:10:13
[2026-10-25 22:10:13,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:10:13,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:10:13,906.906 INFO    ] No existing commands found in stream
[2026-10-25 22:10:18,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:10:18,930.930 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 22:10:20,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:10:20,957.957 INFO    ] Checking for system updates...
[2026-10-25 22:10:20,995.995 INFO    ] 200
[2026-10-25 22:10:20,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:21,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:21,064.064 INFO    ] No update needed
[2026-10-25 22:10:21,067.067 INFO    ] Checking for camera pi updates...
[2026-10-25 22:10:21,105.105 INFO    ] 200
[2026-10-25 22:10:21,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:21,155.155 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:10:21,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:21,208.208 INFO    ] No camera update needed
[2026-10-25 22:10:21,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:10:21,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:10:21,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:10:21,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:10:23,262.262 INFO    ] ================================================
[2026-10-25 22:10:23,277.277 INFO    ] Launching Daemon at Sun Oct 25 22:10:23 IST 2026
[2026-10-25 22:10:23,287.287 INFO    ] ================================================
[2026-10-25 22:10:23,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:10:23
[2026-10-25 22:10:24,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:10:24,755.755 INFO    ] Initializing speech engine...
[2026-10-25 22:10:24,764.764 INFO    ] 2026-10-25 22:10:24
[2026-10-25 22:10:25,014.014 INFO    ] 2026-10-25 22:10:25
[2026-10-25 22:10:25,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:10:25,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:10:25,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:10:25,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:10:25,505.505 INFO    ] time= 25/10/2026 22:10:25
[2026-10-25 22:10:25,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:10:25,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:10:25,633.633 INFO    ] No existing commands found in stream
[2026-10-25 22:10:30,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:10:30,648.648 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 22:10:34,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:10:34,058.058 INFO    ] Checking for system updates...
[2026-10-25 22:10:34,095.095 INFO    ] 200
[2026-10-25 22:10:34,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:34,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:34,153.153 INFO    ] No update needed
[2026-10-25 22:10:34,155.155 INFO    ] Checking for camera pi updates...
[2026-10-25 22:10:34,190.190 INFO    ] 200
[2026-10-25 22:10:34,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:34,234.234 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:10:34,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:34,285.285 INFO    ] No camera update needed
[2026-10-25 22:10:34,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:10:34,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:10:34,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:10:34,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:10:36,342.342 INFO    ] ================================================
[2026-10-25 22:10:36,357.357 INFO    ] Launching Daemon at Sun Oct 25 22:10:36 IST 2026
[2026-10-25 22:10:36,368.368 INFO    ] ================================================
[2026-10-25 22:10:36,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:10:36
[2026-10-25 22:10:37,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:10:37,988.988 INFO    ] Initializing speech engine...
[2026-10-25 22:10:38,001.001 INFO    ] 2026-10-25 22:10:37
[2026-10-25 22:10:38,287.287 INFO    ] 2026-10-25 22:10:38
[2026-10-25 22:10:38,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:10:40,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:10:40,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:10:40,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:10:40,715.715 INFO    ] time= 25/10/2026 22:10:40
[2026-10-25 22:10:40,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:10:40,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:10:40,839.839 INFO    ] No existing commands found in stream
[2026-10-25 22:10:45,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:10:45,854.854 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 22:10:46,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:10:46,939.939 INFO    ] Checking for system updates...
[2026-10-25 22:10:46,975.975 INFO    ] 200
[2026-10-25 22:10:46,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:47,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:10:47,034.034 INFO    ] No update needed
[2026-10-25 22:10:47,036.036 INFO    ] Checking for camera pi updates...
[2026-10-25 22:10:47,071.071 INFO    ] 200
[2026-10-25 22:10:47,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:47,115.115 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:10:47,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:10:47,278.278 INFO    ] No camera update needed
[2026-10-25 22:10:47,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:10:47,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:10:47,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:10:47,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:10:49,333.333 INFO    ] ================================================
[2026-10-25 22:10:49,348.348 INFO    ] Launching Daemon at Sun Oct 25 22:10:49 IST 2026
[2026-10-25 22:10:49,360.360 INFO    ] ================================================
[2026-10-25 22:10:49,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:10:49
[2026-10-25 22:10:50,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:10:50,967.967 INFO    ] Initializing speech engine...
[2026-10-25 22:10:50,981.981 INFO    ] 2026-10-25 22:10:50
[2026-10-25 22:10:51,299.299 INFO    ] 2026-10-25 22:10:51
[2026-10-25 22:10:51,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:10:51,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:10:51,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:10:51,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:10:51,817.817 INFO    ] time= 25/10/2026 22:10:51
[2026-10-25 22:10:51,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:10:51,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:10:51,952.952 INFO    ] No existing commands found in stream
[2026-10-25 22:10:56,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:10:56,982.982 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 22:10:58,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:10:58,190.190 INFO    ] Checking for system updates...
[2026-10-25 22:10:58,228.228 INFO    ] 200
[2026-10-25 22:10:58,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:58,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:58,296.296 INFO    ] No update needed
[2026-10-25 22:10:58,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 22:10:58,339.339 INFO    ] 200
[2026-10-25 22:10:58,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:10:58,389.389 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:10:58,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:10:58,473.473 INFO    ] No camera update needed
[2026-10-25 22:10:58,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:10:58,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:10:58,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:10:58,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:11:00,527.527 INFO    ] ================================================
[2026-10-25 22:11:00,544.544 INFO    ] Launching Daemon at Sun Oct 25 22:11:00 IST 2026
[2026-10-25 22:11:00,555.555 INFO    ] ================================================
[2026-10-25 22:11:01,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:11:01
[2026-10-25 22:11:02,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:11:02,485.485 INFO    ] Initializing speech engine...
[2026-10-25 22:11:02,496.496 INFO    ] 2026-10-25 22:11:02
[2026-10-25 22:11:02,827.827 INFO    ] 2026-10-25 22:11:02
[2026-10-25 22:11:02,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:11:03,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:11:03,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:11:03,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:11:03,309.309 INFO    ] time= 25/10/2026 22:11:03
[2026-10-25 22:11:03,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:11:03,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:11:03,467.467 INFO    ] No existing commands found in stream
[2026-10-25 22:11:08,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:11:08,481.481 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 22:11:11,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:11:11,146.146 INFO    ] Checking for system updates...
[2026-10-25 22:11:11,183.183 INFO    ] 200
[2026-10-25 22:11:11,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:11,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:11:11,248.248 INFO    ] No update needed
[2026-10-25 22:11:11,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 22:11:11,285.285 INFO    ] 200
[2026-10-25 22:11:11,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:11,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:11:11,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:11:11,384.384 INFO    ] No camera update needed
[2026-10-25 22:11:11,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:11:11,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:11:11,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:11:11,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:11:13,440.440 INFO    ] ================================================
[2026-10-25 22:11:13,456.456 INFO    ] Launching Daemon at Sun Oct 25 22:11:13 IST 2026
[2026-10-25 22:11:13,467.467 INFO    ] ================================================
[2026-10-25 22:11:14,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:11:14
[2026-10-25 22:11:14,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:11:15,128.128 INFO    ] Initializing speech engine...
[2026-10-25 22:11:15,149.149 INFO    ] 2026-10-25 22:11:15
[2026-10-25 22:11:15,419.419 INFO    ] 2026-10-25 22:11:15
[2026-10-25 22:11:15,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:11:15,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:11:15,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:11:15,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:11:15,913.913 INFO    ] time= 25/10/2026 22:11:15
[2026-10-25 22:11:15,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:11:16,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:11:16,066.066 INFO    ] No existing commands found in stream
[2026-10-25 22:11:21,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:11:21,081.081 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 22:11:25,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:11:25,302.302 INFO    ] Checking for system updates...
[2026-10-25 22:11:25,339.339 INFO    ] 200
[2026-10-25 22:11:25,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:25,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:11:25,401.401 INFO    ] No update needed
[2026-10-25 22:11:25,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 22:11:25,439.439 INFO    ] 200
[2026-10-25 22:11:25,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:25,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:11:25,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:11:25,552.552 INFO    ] No camera update needed
[2026-10-25 22:11:25,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:11:25,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:11:25,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:11:25,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:11:27,614.614 INFO    ] ================================================
[2026-10-25 22:11:27,629.629 INFO    ] Launching Daemon at Sun Oct 25 22:11:27 IST 2026
[2026-10-25 22:11:27,639.639 INFO    ] ================================================
[2026-10-25 22:11:28,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:11:28
[2026-10-25 22:11:28,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:11:29,070.070 INFO    ] Initializing speech engine...
[2026-10-25 22:11:29,080.080 INFO    ] 2026-10-25 22:11:29
[2026-10-25 22:11:29,325.325 INFO    ] 2026-10-25 22:11:29
[2026-10-25 22:11:29,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:11:29,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:11:29,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:11:29,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:11:29,788.788 INFO    ] time= 25/10/2026 22:11:29
[2026-10-25 22:11:29,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:11:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:11:29,951.951 INFO    ] No existing commands found in stream
[2026-10-25 22:11:34,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:11:34,968.968 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-25 22:11:37,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:11:37,681.681 INFO    ] Checking for system updates...
[2026-10-25 22:11:37,723.723 INFO    ] 200
[2026-10-25 22:11:37,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:37,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:11:37,792.792 INFO    ] No update needed
[2026-10-25 22:11:37,795.795 INFO    ] Checking for camera pi updates...
[2026-10-25 22:11:37,835.835 INFO    ] 200
[2026-10-25 22:11:37,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:37,886.886 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:11:37,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:11:37,943.943 INFO    ] No camera update needed
[2026-10-25 22:11:37,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:11:37,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:11:37,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:11:37,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:11:40,007.007 INFO    ] ================================================
[2026-10-25 22:11:40,028.028 INFO    ] Launching Daemon at Sun Oct 25 22:11:40 IST 2026
[2026-10-25 22:11:40,039.039 INFO    ] ================================================
[2026-10-25 22:11:40,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:11:40
[2026-10-25 22:11:41,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:11:41,495.495 INFO    ] Initializing speech engine...
[2026-10-25 22:11:41,519.519 INFO    ] 2026-10-25 22:11:41
[2026-10-25 22:11:41,778.778 INFO    ] 2026-10-25 22:11:41
[2026-10-25 22:11:41,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:11:41,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:11:42,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:11:42,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:11:42,155.155 INFO    ] time= 25/10/2026 22:11:42
[2026-10-25 22:11:42,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:11:42,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:11:42,315.315 INFO    ] No existing commands found in stream
[2026-10-25 22:11:47,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:11:47,348.348 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 22:11:48,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:11:48,843.843 INFO    ] Checking for system updates...
[2026-10-25 22:11:48,879.879 INFO    ] 200
[2026-10-25 22:11:48,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:48,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:11:48,937.937 INFO    ] No update needed
[2026-10-25 22:11:48,939.939 INFO    ] Checking for camera pi updates...
[2026-10-25 22:11:48,978.978 INFO    ] 200
[2026-10-25 22:11:48,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:11:49,021.021 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:11:49,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:11:49,070.070 INFO    ] No camera update needed
[2026-10-25 22:11:49,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:11:49,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:11:49,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:11:49,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:11:51,126.126 INFO    ] ================================================
[2026-10-25 22:11:51,142.142 INFO    ] Launching Daemon at Sun Oct 25 22:11:51 IST 2026
[2026-10-25 22:11:51,153.153 INFO    ] ================================================
[2026-10-25 22:11:51,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:11:51
[2026-10-25 22:11:52,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:11:52,725.725 INFO    ] Initializing speech engine...
[2026-10-25 22:11:52,734.734 INFO    ] 2026-10-25 22:11:52
[2026-10-25 22:11:52,979.979 INFO    ] 2026-10-25 22:11:52
[2026-10-25 22:11:53,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:11:53,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:11:53,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:11:53,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:11:53,348.348 INFO    ] time= 25/10/2026 22:11:53
[2026-10-25 22:11:53,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:11:53,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:11:53,524.524 INFO    ] No existing commands found in stream
[2026-10-25 22:11:58,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:11:58,546.546 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 22:12:01,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:12:01,711.711 INFO    ] Checking for system updates...
[2026-10-25 22:12:01,754.754 INFO    ] 200
[2026-10-25 22:12:01,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:01,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:01,820.820 INFO    ] No update needed
[2026-10-25 22:12:01,823.823 INFO    ] Checking for camera pi updates...
[2026-10-25 22:12:01,867.867 INFO    ] 200
[2026-10-25 22:12:01,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:01,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:12:02,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:02,004.004 INFO    ] No camera update needed
[2026-10-25 22:12:02,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:12:02,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:12:02,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:12:02,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:12:04,065.065 INFO    ] ================================================
[2026-10-25 22:12:04,080.080 INFO    ] Launching Daemon at Sun Oct 25 22:12:04 IST 2026
[2026-10-25 22:12:04,091.091 INFO    ] ================================================
[2026-10-25 22:12:04,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:12:04
[2026-10-25 22:12:05,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:12:05,526.526 INFO    ] Initializing speech engine...
[2026-10-25 22:12:05,535.535 INFO    ] 2026-10-25 22:12:05
[2026-10-25 22:12:05,787.787 INFO    ] 2026-10-25 22:12:05
[2026-10-25 22:12:05,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:12:06,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:12:06,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:12:06,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:12:06,163.163 INFO    ] time= 25/10/2026 22:12:06
[2026-10-25 22:12:06,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:12:06,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:12:06,329.329 INFO    ] No existing commands found in stream
[2026-10-25 22:12:11,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:12:11,355.355 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 22:12:13,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:12:13,384.384 INFO    ] Checking for system updates...
[2026-10-25 22:12:13,420.420 INFO    ] 200
[2026-10-25 22:12:13,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:13,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:13,478.478 INFO    ] No update needed
[2026-10-25 22:12:13,480.480 INFO    ] Checking for camera pi updates...
[2026-10-25 22:12:13,514.514 INFO    ] 200
[2026-10-25 22:12:13,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:13,563.563 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:12:13,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:13,617.617 INFO    ] No camera update needed
[2026-10-25 22:12:13,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:12:13,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:12:13,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:12:13,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:12:15,671.671 INFO    ] ================================================
[2026-10-25 22:12:15,685.685 INFO    ] Launching Daemon at Sun Oct 25 22:12:15 IST 2026
[2026-10-25 22:12:15,696.696 INFO    ] ================================================
[2026-10-25 22:12:16,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:12:16
[2026-10-25 22:12:16,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:12:17,155.155 INFO    ] Initializing speech engine...
[2026-10-25 22:12:17,162.162 INFO    ] 2026-10-25 22:12:17
[2026-10-25 22:12:17,409.409 INFO    ] 2026-10-25 22:12:17
[2026-10-25 22:12:17,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:12:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:12:17,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:12:17,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:12:17,898.898 INFO    ] time= 25/10/2026 22:12:17
[2026-10-25 22:12:17,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:12:17,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:12:18,034.034 INFO    ] No existing commands found in stream
[2026-10-25 22:12:23,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:12:23,058.058 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 22:12:27,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:12:27,283.283 INFO    ] Checking for system updates...
[2026-10-25 22:12:27,324.324 INFO    ] 200
[2026-10-25 22:12:27,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:27,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:12:27,391.391 INFO    ] No update needed
[2026-10-25 22:12:27,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 22:12:27,431.431 INFO    ] 200
[2026-10-25 22:12:27,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:27,475.475 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:12:27,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:12:27,528.528 INFO    ] No camera update needed
[2026-10-25 22:12:27,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:12:27,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:12:27,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:12:27,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:12:29,583.583 INFO    ] ================================================
[2026-10-25 22:12:29,598.598 INFO    ] Launching Daemon at Sun Oct 25 22:12:29 IST 2026
[2026-10-25 22:12:29,609.609 INFO    ] ================================================
[2026-10-25 22:12:30,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:12:30
[2026-10-25 22:12:30,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:12:31,016.016 INFO    ] Initializing speech engine...
[2026-10-25 22:12:31,030.030 INFO    ] 2026-10-25 22:12:31
[2026-10-25 22:12:31,328.328 INFO    ] 2026-10-25 22:12:31
[2026-10-25 22:12:31,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:12:31,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:12:31,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:12:31,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:12:31,742.742 INFO    ] time= 25/10/2026 22:12:31
[2026-10-25 22:12:31,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:12:31,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:12:31,891.891 INFO    ] No existing commands found in stream
[2026-10-25 22:12:36,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:12:36,914.914 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-25 22:12:40,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:12:40,819.819 INFO    ] Checking for system updates...
[2026-10-25 22:12:40,855.855 INFO    ] 200
[2026-10-25 22:12:40,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:40,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:12:40,921.921 INFO    ] No update needed
[2026-10-25 22:12:40,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 22:12:40,961.961 INFO    ] 200
[2026-10-25 22:12:40,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:41,005.005 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:12:41,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:12:41,054.054 INFO    ] No camera update needed
[2026-10-25 22:12:41,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:12:41,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:12:41,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:12:41,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:12:43,109.109 INFO    ] ================================================
[2026-10-25 22:12:43,124.124 INFO    ] Launching Daemon at Sun Oct 25 22:12:43 IST 2026
[2026-10-25 22:12:43,136.136 INFO    ] ================================================
[2026-10-25 22:12:43,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:12:43
[2026-10-25 22:12:44,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:12:44,777.777 INFO    ] Initializing speech engine...
[2026-10-25 22:12:44,785.785 INFO    ] 2026-10-25 22:12:44
[2026-10-25 22:12:45,073.073 INFO    ] 2026-10-25 22:12:45
[2026-10-25 22:12:45,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:12:45,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:12:45,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:12:45,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:12:45,556.556 INFO    ] time= 25/10/2026 22:12:45
[2026-10-25 22:12:45,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:12:45,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:12:45,718.718 INFO    ] No existing commands found in stream
[2026-10-25 22:12:50,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:12:50,734.734 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-25 22:12:53,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:12:53,687.687 INFO    ] Checking for system updates...
[2026-10-25 22:12:53,725.725 INFO    ] 200
[2026-10-25 22:12:53,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:53,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:53,784.784 INFO    ] No update needed
[2026-10-25 22:12:53,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 22:12:53,822.822 INFO    ] 200
[2026-10-25 22:12:53,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:12:53,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:12:54,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:12:54,025.025 INFO    ] No camera update needed
[2026-10-25 22:12:54,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:12:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:12:54,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:12:54,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:12:56,078.078 INFO    ] ================================================
[2026-10-25 22:12:56,093.093 INFO    ] Launching Daemon at Sun Oct 25 22:12:56 IST 2026
[2026-10-25 22:12:56,104.104 INFO    ] ================================================
[2026-10-25 22:12:56,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:12:56
[2026-10-25 22:12:57,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:12:57,504.504 INFO    ] Initializing speech engine...
[2026-10-25 22:12:57,527.527 INFO    ] 2026-10-25 22:12:57
[2026-10-25 22:12:57,796.796 INFO    ] 2026-10-25 22:12:57
[2026-10-25 22:12:57,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:12:58,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:12:58,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:12:58,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:12:58,168.168 INFO    ] time= 25/10/2026 22:12:58
[2026-10-25 22:12:58,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:12:58,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:12:58,275.275 INFO    ] No existing commands found in stream
[2026-10-25 22:13:03,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:13:03,286.286 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-25 22:13:06,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:13:06,555.555 INFO    ] Checking for system updates...
[2026-10-25 22:13:06,591.591 INFO    ] 200
[2026-10-25 22:13:06,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:06,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:06,649.649 INFO    ] No update needed
[2026-10-25 22:13:06,652.652 INFO    ] Checking for camera pi updates...
[2026-10-25 22:13:06,686.686 INFO    ] 200
[2026-10-25 22:13:06,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:06,735.735 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:13:06,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:06,785.785 INFO    ] No camera update needed
[2026-10-25 22:13:06,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:13:06,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:13:06,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:13:06,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:13:08,839.839 INFO    ] ================================================
[2026-10-25 22:13:08,855.855 INFO    ] Launching Daemon at Sun Oct 25 22:13:08 IST 2026
[2026-10-25 22:13:08,866.866 INFO    ] ================================================
[2026-10-25 22:13:09,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:13:09
[2026-10-25 22:13:10,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:13:10,520.520 INFO    ] Initializing speech engine...
[2026-10-25 22:13:10,534.534 INFO    ] 2026-10-25 22:13:10
[2026-10-25 22:13:10,821.821 INFO    ] 2026-10-25 22:13:10
[2026-10-25 22:13:10,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:13:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:13:11,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:13:11,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:13:11,283.283 INFO    ] time= 25/10/2026 22:13:11
[2026-10-25 22:13:11,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:13:11,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:13:11,437.437 INFO    ] No existing commands found in stream
[2026-10-25 22:13:16,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:13:16,478.478 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 22:13:19,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:13:19,926.926 INFO    ] Checking for system updates...
[2026-10-25 22:13:19,966.966 INFO    ] 200
[2026-10-25 22:13:19,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:20,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:20,031.031 INFO    ] No update needed
[2026-10-25 22:13:20,033.033 INFO    ] Checking for camera pi updates...
[2026-10-25 22:13:20,067.067 INFO    ] 200
[2026-10-25 22:13:20,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:20,111.111 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:13:20,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:20,162.162 INFO    ] No camera update needed
[2026-10-25 22:13:20,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:13:20,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:13:20,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:13:20,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:13:22,217.217 INFO    ] ================================================
[2026-10-25 22:13:22,233.233 INFO    ] Launching Daemon at Sun Oct 25 22:13:22 IST 2026
[2026-10-25 22:13:22,244.244 INFO    ] ================================================
[2026-10-25 22:13:22,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:13:22
[2026-10-25 22:13:23,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:13:23,709.709 INFO    ] Initializing speech engine...
[2026-10-25 22:13:23,714.714 INFO    ] 2026-10-25 22:13:23
[2026-10-25 22:13:24,015.015 INFO    ] 2026-10-25 22:13:23
[2026-10-25 22:13:24,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:13:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:13:24,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:13:24,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:13:24,404.404 INFO    ] time= 25/10/2026 22:13:24
[2026-10-25 22:13:24,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:13:24,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:13:24,533.533 INFO    ] No existing commands found in stream
[2026-10-25 22:13:29,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:13:29,547.547 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 22:13:32,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:13:32,069.069 INFO    ] Checking for system updates...
[2026-10-25 22:13:32,108.108 INFO    ] 200
[2026-10-25 22:13:32,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:32,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:32,172.172 INFO    ] No update needed
[2026-10-25 22:13:32,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 22:13:32,223.223 INFO    ] 200
[2026-10-25 22:13:32,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:32,279.279 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:13:32,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:32,326.326 INFO    ] No camera update needed
[2026-10-25 22:13:32,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:13:32,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:13:32,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:13:32,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:13:34,389.389 INFO    ] ================================================
[2026-10-25 22:13:34,404.404 INFO    ] Launching Daemon at Sun Oct 25 22:13:34 IST 2026
[2026-10-25 22:13:34,416.416 INFO    ] ================================================
[2026-10-25 22:13:35,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:13:35
[2026-10-25 22:13:35,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:13:36,018.018 INFO    ] Initializing speech engine...
[2026-10-25 22:13:36,032.032 INFO    ] 2026-10-25 22:13:36
[2026-10-25 22:13:36,321.321 INFO    ] 2026-10-25 22:13:36
[2026-10-25 22:13:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:13:36,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:13:36,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:13:36,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:13:36,859.859 INFO    ] time= 25/10/2026 22:13:36
[2026-10-25 22:13:36,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:13:36,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:13:37,014.014 INFO    ] No existing commands found in stream
[2026-10-25 22:13:42,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:13:42,042.042 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 22:13:44,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:13:44,126.126 INFO    ] Checking for system updates...
[2026-10-25 22:13:44,169.169 INFO    ] 200
[2026-10-25 22:13:44,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:44,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:13:44,229.229 INFO    ] No update needed
[2026-10-25 22:13:44,232.232 INFO    ] Checking for camera pi updates...
[2026-10-25 22:13:44,273.273 INFO    ] 200
[2026-10-25 22:13:44,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:44,324.324 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:13:44,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:13:44,377.377 INFO    ] No camera update needed
[2026-10-25 22:13:44,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:13:44,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:13:44,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:13:44,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:13:46,438.438 INFO    ] ================================================
[2026-10-25 22:13:46,454.454 INFO    ] Launching Daemon at Sun Oct 25 22:13:46 IST 2026
[2026-10-25 22:13:46,465.465 INFO    ] ================================================
[2026-10-25 22:13:47,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:13:47
[2026-10-25 22:13:47,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:13:48,098.098 INFO    ] Initializing speech engine...
[2026-10-25 22:13:48,110.110 INFO    ] 2026-10-25 22:13:48
[2026-10-25 22:13:48,397.397 INFO    ] 2026-10-25 22:13:48
[2026-10-25 22:13:48,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:13:48,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:13:48,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:13:48,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:13:48,928.928 INFO    ] time= 25/10/2026 22:13:48
[2026-10-25 22:13:48,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:13:48,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:13:49,085.085 INFO    ] No existing commands found in stream
[2026-10-25 22:13:54,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:13:54,104.104 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-25 22:13:57,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:13:57,657.657 INFO    ] Checking for system updates...
[2026-10-25 22:13:57,694.694 INFO    ] 200
[2026-10-25 22:13:57,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:57,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:57,753.753 INFO    ] No update needed
[2026-10-25 22:13:57,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 22:13:57,791.791 INFO    ] 200
[2026-10-25 22:13:57,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:13:57,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:13:57,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:13:57,896.896 INFO    ] No camera update needed
[2026-10-25 22:13:57,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:13:57,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:13:57,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:13:57,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:13:59,951.951 INFO    ] ================================================
[2026-10-25 22:13:59,967.967 INFO    ] Launching Daemon at Sun Oct 25 22:13:59 IST 2026
[2026-10-25 22:13:59,978.978 INFO    ] ================================================
[2026-10-25 22:14:00,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:14:00
[2026-10-25 22:14:01,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:14:01,868.868 INFO    ] Initializing speech engine...
[2026-10-25 22:14:01,878.878 INFO    ] 2026-10-25 22:14:01
[2026-10-25 22:14:02,232.232 INFO    ] 2026-10-25 22:14:02
[2026-10-25 22:14:02,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:14:02,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:14:02,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:14:02,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:14:02,722.722 INFO    ] time= 25/10/2026 22:14:02
[2026-10-25 22:14:02,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:14:02,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:14:02,901.901 INFO    ] No existing commands found in stream
[2026-10-25 22:14:07,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:14:07,927.927 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 22:14:11,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:14:11,506.506 INFO    ] Checking for system updates...
[2026-10-25 22:14:11,542.542 INFO    ] 200
[2026-10-25 22:14:11,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:11,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:14:11,600.600 INFO    ] No update needed
[2026-10-25 22:14:11,603.603 INFO    ] Checking for camera pi updates...
[2026-10-25 22:14:11,638.638 INFO    ] 200
[2026-10-25 22:14:11,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:11,682.682 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:14:11,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:14:11,743.743 INFO    ] No camera update needed
[2026-10-25 22:14:11,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:14:11,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:14:11,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:14:11,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:14:13,799.799 INFO    ] ================================================
[2026-10-25 22:14:13,814.814 INFO    ] Launching Daemon at Sun Oct 25 22:14:13 IST 2026
[2026-10-25 22:14:13,825.825 INFO    ] ================================================
[2026-10-25 22:14:14,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:14:14
[2026-10-25 22:14:14,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:14:15,229.229 INFO    ] Initializing speech engine...
[2026-10-25 22:14:15,238.238 INFO    ] 2026-10-25 22:14:15
[2026-10-25 22:14:15,531.531 INFO    ] 2026-10-25 22:14:15
[2026-10-25 22:14:15,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:14:15,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:14:15,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:14:15,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:14:15,910.910 INFO    ] time= 25/10/2026 22:14:15
[2026-10-25 22:14:15,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:14:15,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:14:16,034.034 INFO    ] No existing commands found in stream
[2026-10-25 22:14:21,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:14:21,048.048 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 22:14:21,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:14:21,495.495 INFO    ] Checking for system updates...
[2026-10-25 22:14:21,532.532 INFO    ] 200
[2026-10-25 22:14:21,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:21,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:14:21,588.588 INFO    ] No update needed
[2026-10-25 22:14:21,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 22:14:21,625.625 INFO    ] 200
[2026-10-25 22:14:21,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:21,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:14:21,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:14:21,738.738 INFO    ] No camera update needed
[2026-10-25 22:14:21,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:14:21,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:14:21,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:14:21,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:14:23,795.795 INFO    ] ================================================
[2026-10-25 22:14:23,811.811 INFO    ] Launching Daemon at Sun Oct 25 22:14:23 IST 2026
[2026-10-25 22:14:23,823.823 INFO    ] ================================================
[2026-10-25 22:14:24,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:14:24
[2026-10-25 22:14:24,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:14:25,248.248 INFO    ] Initializing speech engine...
[2026-10-25 22:14:25,257.257 INFO    ] 2026-10-25 22:14:25
[2026-10-25 22:14:25,516.516 INFO    ] 2026-10-25 22:14:25
[2026-10-25 22:14:25,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:14:25,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:14:25,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:14:25,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:14:25,971.971 INFO    ] time= 25/10/2026 22:14:25
[2026-10-25 22:14:26,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:14:26,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:14:26,118.118 INFO    ] No existing commands found in stream
[2026-10-25 22:14:31,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:14:31,133.133 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 22:14:34,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:14:34,910.910 INFO    ] Checking for system updates...
[2026-10-25 22:14:34,947.947 INFO    ] 200
[2026-10-25 22:14:34,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:35,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:14:35,005.005 INFO    ] No update needed
[2026-10-25 22:14:35,007.007 INFO    ] Checking for camera pi updates...
[2026-10-25 22:14:35,044.044 INFO    ] 200
[2026-10-25 22:14:35,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:35,092.092 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:14:35,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:14:35,141.141 INFO    ] No camera update needed
[2026-10-25 22:14:35,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:14:35,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:14:35,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:14:35,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:14:37,197.197 INFO    ] ================================================
[2026-10-25 22:14:37,213.213 INFO    ] Launching Daemon at Sun Oct 25 22:14:37 IST 2026
[2026-10-25 22:14:37,224.224 INFO    ] ================================================
[2026-10-25 22:14:37,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:14:37
[2026-10-25 22:14:38,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:14:38,648.648 INFO    ] Initializing speech engine...
[2026-10-25 22:14:38,658.658 INFO    ] 2026-10-25 22:14:38
[2026-10-25 22:14:38,908.908 INFO    ] 2026-10-25 22:14:38
[2026-10-25 22:14:38,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:14:40,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:14:40,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:14:40,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:14:40,779.779 INFO    ] time= 25/10/2026 22:14:40
[2026-10-25 22:14:40,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:14:40,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:14:40,842.842 INFO    ] No existing commands found in stream
[2026-10-25 22:14:45,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:14:45,856.856 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 22:14:48,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:14:48,695.695 INFO    ] Checking for system updates...
[2026-10-25 22:14:48,731.731 INFO    ] 200
[2026-10-25 22:14:48,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:48,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:14:48,790.790 INFO    ] No update needed
[2026-10-25 22:14:48,793.793 INFO    ] Checking for camera pi updates...
[2026-10-25 22:14:48,827.827 INFO    ] 200
[2026-10-25 22:14:48,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:14:48,874.874 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:14:48,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:14:48,939.939 INFO    ] No camera update needed
[2026-10-25 22:14:48,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:14:48,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:14:48,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:14:48,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:14:51,996.996 INFO    ] ================================================
[2026-10-25 22:14:51,012.012 INFO    ] Launching Daemon at Sun Oct 25 22:14:51 IST 2026
[2026-10-25 22:14:51,023.023 INFO    ] ================================================
[2026-10-25 22:14:51,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:14:51
[2026-10-25 22:14:52,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:14:52,594.594 INFO    ] Initializing speech engine...
[2026-10-25 22:14:52,606.606 INFO    ] 2026-10-25 22:14:52
[2026-10-25 22:14:52,879.879 INFO    ] 2026-10-25 22:14:52
[2026-10-25 22:14:52,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:14:53,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:14:53,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:14:53,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:14:53,403.403 INFO    ] time= 25/10/2026 22:14:53
[2026-10-25 22:14:53,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:14:53,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:14:53,545.545 INFO    ] No existing commands found in stream
[2026-10-25 22:14:58,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:14:58,572.572 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-25 22:15:02,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:15:02,285.285 INFO    ] Checking for system updates...
[2026-10-25 22:15:02,352.352 INFO    ] 200
[2026-10-25 22:15:02,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:02,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:02,438.438 INFO    ] No update needed
[2026-10-25 22:15:02,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 22:15:02,483.483 INFO    ] 200
[2026-10-25 22:15:02,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:02,533.533 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:15:02,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:02,677.677 INFO    ] No camera update needed
[2026-10-25 22:15:02,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:15:02,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:15:02,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:15:02,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:15:04,740.740 INFO    ] ================================================
[2026-10-25 22:15:04,755.755 INFO    ] Launching Daemon at Sun Oct 25 22:15:04 IST 2026
[2026-10-25 22:15:04,765.765 INFO    ] ================================================
[2026-10-25 22:15:05,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:15:05
[2026-10-25 22:15:05,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:15:06,173.173 INFO    ] Initializing speech engine...
[2026-10-25 22:15:06,180.180 INFO    ] 2026-10-25 22:15:06
[2026-10-25 22:15:06,473.473 INFO    ] 2026-10-25 22:15:06
[2026-10-25 22:15:06,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:15:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:15:06,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:15:06,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:15:06,844.844 INFO    ] time= 25/10/2026 22:15:06
[2026-10-25 22:15:06,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:15:06,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:15:06,968.968 INFO    ] No existing commands found in stream
[2026-10-25 22:15:11,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:15:11,982.982 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-25 22:15:15,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:15:15,988.988 INFO    ] Checking for system updates...
[2026-10-25 22:15:16,030.030 INFO    ] 200
[2026-10-25 22:15:16,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:16,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:16,088.088 INFO    ] No update needed
[2026-10-25 22:15:16,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 22:15:16,124.124 INFO    ] 200
[2026-10-25 22:15:16,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:16,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:15:16,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:16,218.218 INFO    ] No camera update needed
[2026-10-25 22:15:16,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:15:16,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:15:16,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:15:16,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:15:18,274.274 INFO    ] ================================================
[2026-10-25 22:15:18,289.289 INFO    ] Launching Daemon at Sun Oct 25 22:15:18 IST 2026
[2026-10-25 22:15:18,300.300 INFO    ] ================================================
[2026-10-25 22:15:18,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:15:18
[2026-10-25 22:15:19,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:15:19,740.740 INFO    ] Initializing speech engine...
[2026-10-25 22:15:19,749.749 INFO    ] 2026-10-25 22:15:19
[2026-10-25 22:15:19,995.995 INFO    ] 2026-10-25 22:15:19
[2026-10-25 22:15:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:15:20,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:15:20,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:15:20,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:15:20,364.364 INFO    ] time= 25/10/2026 22:15:20
[2026-10-25 22:15:20,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:15:20,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:15:20,545.545 INFO    ] No existing commands found in stream
[2026-10-25 22:15:25,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:15:25,573.573 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 22:15:28,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:15:28,196.196 INFO    ] Checking for system updates...
[2026-10-25 22:15:28,232.232 INFO    ] 200
[2026-10-25 22:15:28,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:28,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:28,291.291 INFO    ] No update needed
[2026-10-25 22:15:28,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 22:15:28,329.329 INFO    ] 200
[2026-10-25 22:15:28,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:28,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:15:28,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:28,438.438 INFO    ] No camera update needed
[2026-10-25 22:15:28,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:15:28,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:15:28,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:15:28,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:15:30,496.496 INFO    ] ================================================
[2026-10-25 22:15:30,511.511 INFO    ] Launching Daemon at Sun Oct 25 22:15:30 IST 2026
[2026-10-25 22:15:30,522.522 INFO    ] ================================================
[2026-10-25 22:15:31,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:15:31
[2026-10-25 22:15:31,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:15:32,067.067 INFO    ] Initializing speech engine...
[2026-10-25 22:15:32,082.082 INFO    ] 2026-10-25 22:15:32
[2026-10-25 22:15:32,358.358 INFO    ] 2026-10-25 22:15:32
[2026-10-25 22:15:32,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:15:32,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:15:32,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:15:32,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:15:32,759.759 INFO    ] time= 25/10/2026 22:15:32
[2026-10-25 22:15:32,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:15:32,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:15:32,961.961 INFO    ] No existing commands found in stream
[2026-10-25 22:15:37,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:15:37,976.976 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 22:15:41,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:15:41,477.477 INFO    ] Checking for system updates...
[2026-10-25 22:15:41,515.515 INFO    ] 200
[2026-10-25 22:15:41,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:41,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:41,580.580 INFO    ] No update needed
[2026-10-25 22:15:41,583.583 INFO    ] Checking for camera pi updates...
[2026-10-25 22:15:41,621.621 INFO    ] 200
[2026-10-25 22:15:41,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:41,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:15:41,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:41,729.729 INFO    ] No camera update needed
[2026-10-25 22:15:41,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:15:41,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:15:41,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:15:41,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:15:43,786.786 INFO    ] ================================================
[2026-10-25 22:15:43,801.801 INFO    ] Launching Daemon at Sun Oct 25 22:15:43 IST 2026
[2026-10-25 22:15:43,812.812 INFO    ] ================================================
[2026-10-25 22:15:44,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:15:44
[2026-10-25 22:15:44,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:15:45,221.221 INFO    ] Initializing speech engine...
[2026-10-25 22:15:45,243.243 INFO    ] 2026-10-25 22:15:45
[2026-10-25 22:15:45,513.513 INFO    ] 2026-10-25 22:15:45
[2026-10-25 22:15:45,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:15:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:15:45,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:15:45,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:15:45,888.888 INFO    ] time= 25/10/2026 22:15:45
[2026-10-25 22:15:45,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:15:45,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:15:46,049.049 INFO    ] No existing commands found in stream
[2026-10-25 22:15:51,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:15:51,076.076 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 22:15:53,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:15:53,744.744 INFO    ] Checking for system updates...
[2026-10-25 22:15:53,781.781 INFO    ] 200
[2026-10-25 22:15:53,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:53,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:53,845.845 INFO    ] No update needed
[2026-10-25 22:15:53,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 22:15:53,881.881 INFO    ] 200
[2026-10-25 22:15:53,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:15:53,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:15:53,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:15:54,002.002 INFO    ] No camera update needed
[2026-10-25 22:15:54,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:15:54,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:15:54,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:15:54,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:15:56,061.061 INFO    ] ================================================
[2026-10-25 22:15:56,076.076 INFO    ] Launching Daemon at Sun Oct 25 22:15:56 IST 2026
[2026-10-25 22:15:56,086.086 INFO    ] ================================================
[2026-10-25 22:15:56,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:15:56
[2026-10-25 22:15:57,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:15:57,730.730 INFO    ] Initializing speech engine...
[2026-10-25 22:15:57,744.744 INFO    ] 2026-10-25 22:15:57
[2026-10-25 22:15:58,024.024 INFO    ] 2026-10-25 22:15:58
[2026-10-25 22:15:58,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:15:58,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:15:58,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:15:58,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:15:58,485.485 INFO    ] time= 25/10/2026 22:15:58
[2026-10-25 22:15:58,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:15:58,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:15:58,665.665 INFO    ] No existing commands found in stream
[2026-10-25 22:16:03,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:16:03,696.696 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 22:16:06,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:16:06,316.316 INFO    ] Checking for system updates...
[2026-10-25 22:16:06,352.352 INFO    ] 200
[2026-10-25 22:16:06,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:06,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:06,413.413 INFO    ] No update needed
[2026-10-25 22:16:06,415.415 INFO    ] Checking for camera pi updates...
[2026-10-25 22:16:06,451.451 INFO    ] 200
[2026-10-25 22:16:06,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:06,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:16:06,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:06,558.558 INFO    ] No camera update needed
[2026-10-25 22:16:06,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:16:06,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:16:06,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:16:06,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:16:08,615.615 INFO    ] ================================================
[2026-10-25 22:16:08,630.630 INFO    ] Launching Daemon at Sun Oct 25 22:16:08 IST 2026
[2026-10-25 22:16:08,640.640 INFO    ] ================================================
[2026-10-25 22:16:09,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:16:09
[2026-10-25 22:16:09,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:16:10,086.086 INFO    ] Initializing speech engine...
[2026-10-25 22:16:10,095.095 INFO    ] 2026-10-25 22:16:10
[2026-10-25 22:16:10,346.346 INFO    ] 2026-10-25 22:16:10
[2026-10-25 22:16:10,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:16:10,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:16:10,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:16:10,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:16:10,901.901 INFO    ] time= 25/10/2026 22:16:10
[2026-10-25 22:16:10,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:16:10,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:16:11,047.047 INFO    ] No existing commands found in stream
[2026-10-25 22:16:16,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:16:16,075.075 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 22:16:17,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:16:17,028.028 INFO    ] Checking for system updates...
[2026-10-25 22:16:17,064.064 INFO    ] 200
[2026-10-25 22:16:17,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:17,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:17,123.123 INFO    ] No update needed
[2026-10-25 22:16:17,125.125 INFO    ] Checking for camera pi updates...
[2026-10-25 22:16:17,159.159 INFO    ] 200
[2026-10-25 22:16:17,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:17,203.203 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:16:17,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:17,259.259 INFO    ] No camera update needed
[2026-10-25 22:16:17,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:16:17,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:16:17,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:16:17,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:16:19,314.314 INFO    ] ================================================
[2026-10-25 22:16:19,329.329 INFO    ] Launching Daemon at Sun Oct 25 22:16:19 IST 2026
[2026-10-25 22:16:19,340.340 INFO    ] ================================================
[2026-10-25 22:16:19,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:16:19
[2026-10-25 22:16:20,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:16:20,803.803 INFO    ] Initializing speech engine...
[2026-10-25 22:16:20,812.812 INFO    ] 2026-10-25 22:16:20
[2026-10-25 22:16:21,069.069 INFO    ] 2026-10-25 22:16:21
[2026-10-25 22:16:21,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:16:21,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:16:21,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:16:21,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:16:21,534.534 INFO    ] time= 25/10/2026 22:16:21
[2026-10-25 22:16:21,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:16:21,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:16:21,674.674 INFO    ] No existing commands found in stream
[2026-10-25 22:16:26,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:16:26,686.686 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 22:16:28,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:16:28,414.414 INFO    ] Checking for system updates...
[2026-10-25 22:16:28,451.451 INFO    ] 200
[2026-10-25 22:16:28,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:28,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:28,513.513 INFO    ] No update needed
[2026-10-25 22:16:28,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 22:16:28,551.551 INFO    ] 200
[2026-10-25 22:16:28,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:28,594.594 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:16:28,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:28,656.656 INFO    ] No camera update needed
[2026-10-25 22:16:28,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:16:28,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:16:28,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:16:28,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:16:30,711.711 INFO    ] ================================================
[2026-10-25 22:16:30,726.726 INFO    ] Launching Daemon at Sun Oct 25 22:16:30 IST 2026
[2026-10-25 22:16:30,737.737 INFO    ] ================================================
[2026-10-25 22:16:31,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:16:31
[2026-10-25 22:16:31,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:16:32,293.293 INFO    ] Initializing speech engine...
[2026-10-25 22:16:32,300.300 INFO    ] 2026-10-25 22:16:32
[2026-10-25 22:16:32,614.614 INFO    ] 2026-10-25 22:16:32
[2026-10-25 22:16:32,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:16:32,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:16:32,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:16:33,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:16:33,085.085 INFO    ] time= 25/10/2026 22:16:33
[2026-10-25 22:16:33,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:16:33,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:16:33,251.251 INFO    ] No existing commands found in stream
[2026-10-25 22:16:38,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:16:38,266.266 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 22:16:40,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:16:40,916.916 INFO    ] Checking for system updates...
[2026-10-25 22:16:40,953.953 INFO    ] 200
[2026-10-25 22:16:40,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:41,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:41,013.013 INFO    ] No update needed
[2026-10-25 22:16:41,015.015 INFO    ] Checking for camera pi updates...
[2026-10-25 22:16:41,049.049 INFO    ] 200
[2026-10-25 22:16:41,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:41,094.094 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:16:41,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:41,147.147 INFO    ] No camera update needed
[2026-10-25 22:16:41,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:16:41,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:16:41,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:16:41,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:16:43,204.204 INFO    ] ================================================
[2026-10-25 22:16:43,219.219 INFO    ] Launching Daemon at Sun Oct 25 22:16:43 IST 2026
[2026-10-25 22:16:43,229.229 INFO    ] ================================================
[2026-10-25 22:16:43,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:16:43
[2026-10-25 22:16:44,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:16:44,622.622 INFO    ] Initializing speech engine...
[2026-10-25 22:16:44,637.637 INFO    ] 2026-10-25 22:16:44
[2026-10-25 22:16:44,899.899 INFO    ] 2026-10-25 22:16:44
[2026-10-25 22:16:44,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:16:45,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:16:45,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:16:45,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:16:45,393.393 INFO    ] time= 25/10/2026 22:16:45
[2026-10-25 22:16:45,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:16:45,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:16:45,540.540 INFO    ] No existing commands found in stream
[2026-10-25 22:16:50,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:16:50,555.555 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 22:16:51,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:16:51,275.275 INFO    ] Checking for system updates...
[2026-10-25 22:16:51,311.311 INFO    ] 200
[2026-10-25 22:16:51,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:51,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:51,376.376 INFO    ] No update needed
[2026-10-25 22:16:51,378.378 INFO    ] Checking for camera pi updates...
[2026-10-25 22:16:51,426.426 INFO    ] 200
[2026-10-25 22:16:51,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:16:51,472.472 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:16:51,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:16:51,523.523 INFO    ] No camera update needed
[2026-10-25 22:16:51,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:16:51,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:16:51,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:16:51,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:16:53,577.577 INFO    ] ================================================
[2026-10-25 22:16:53,592.592 INFO    ] Launching Daemon at Sun Oct 25 22:16:53 IST 2026
[2026-10-25 22:16:53,603.603 INFO    ] ================================================
[2026-10-25 22:16:54,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:16:54
[2026-10-25 22:16:54,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:16:55,058.058 INFO    ] Initializing speech engine...
[2026-10-25 22:16:55,081.081 INFO    ] 2026-10-25 22:16:55
[2026-10-25 22:16:55,335.335 INFO    ] 2026-10-25 22:16:55
[2026-10-25 22:16:55,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:16:55,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:16:55,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:16:55,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:16:55,921.921 INFO    ] time= 25/10/2026 22:16:55
[2026-10-25 22:16:55,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:16:55,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:16:56,058.058 INFO    ] No existing commands found in stream
[2026-10-25 22:17:01,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:17:01,083.083 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 22:17:03,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:17:03,329.329 INFO    ] Checking for system updates...
[2026-10-25 22:17:03,381.381 INFO    ] 200
[2026-10-25 22:17:03,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:03,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:03,459.459 INFO    ] No update needed
[2026-10-25 22:17:03,465.465 INFO    ] Checking for camera pi updates...
[2026-10-25 22:17:03,503.503 INFO    ] 200
[2026-10-25 22:17:03,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:03,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:17:03,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:03,618.618 INFO    ] No camera update needed
[2026-10-25 22:17:03,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:17:03,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:17:03,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:17:03,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:17:05,681.681 INFO    ] ================================================
[2026-10-25 22:17:05,696.696 INFO    ] Launching Daemon at Sun Oct 25 22:17:05 IST 2026
[2026-10-25 22:17:05,707.707 INFO    ] ================================================
[2026-10-25 22:17:06,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:17:06
[2026-10-25 22:17:06,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:17:07,156.156 INFO    ] Initializing speech engine...
[2026-10-25 22:17:07,164.164 INFO    ] 2026-10-25 22:17:07
[2026-10-25 22:17:07,409.409 INFO    ] 2026-10-25 22:17:07
[2026-10-25 22:17:07,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:17:07,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:17:07,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:17:07,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:17:07,890.890 INFO    ] time= 25/10/2026 22:17:07
[2026-10-25 22:17:07,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:17:07,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:17:08,040.040 INFO    ] No existing commands found in stream
[2026-10-25 22:17:13,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:17:13,055.055 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 22:17:16,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:17:16,514.514 INFO    ] Checking for system updates...
[2026-10-25 22:17:16,566.566 INFO    ] 200
[2026-10-25 22:17:16,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:16,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:17:16,625.625 INFO    ] No update needed
[2026-10-25 22:17:16,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 22:17:16,661.661 INFO    ] 200
[2026-10-25 22:17:16,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:16,706.706 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:17:16,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:17:16,863.863 INFO    ] No camera update needed
[2026-10-25 22:17:16,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:17:16,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:17:16,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:17:16,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:17:18,917.917 INFO    ] ================================================
[2026-10-25 22:17:18,933.933 INFO    ] Launching Daemon at Sun Oct 25 22:17:18 IST 2026
[2026-10-25 22:17:18,943.943 INFO    ] ================================================
[2026-10-25 22:17:19,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:17:19
[2026-10-25 22:17:20,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:17:20,433.433 INFO    ] Initializing speech engine...
[2026-10-25 22:17:20,440.440 INFO    ] 2026-10-25 22:17:20
[2026-10-25 22:17:20,711.711 INFO    ] 2026-10-25 22:17:20
[2026-10-25 22:17:20,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:17:20,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:17:20,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:17:21,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:17:21,136.136 INFO    ] time= 25/10/2026 22:17:21
[2026-10-25 22:17:21,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:17:21,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:17:21,221.221 INFO    ] No existing commands found in stream
[2026-10-25 22:17:26,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:17:26,236.236 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 22:17:28,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:17:28,549.549 INFO    ] Checking for system updates...
[2026-10-25 22:17:28,590.590 INFO    ] 200
[2026-10-25 22:17:28,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:28,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:28,658.658 INFO    ] No update needed
[2026-10-25 22:17:28,661.661 INFO    ] Checking for camera pi updates...
[2026-10-25 22:17:28,697.697 INFO    ] 200
[2026-10-25 22:17:28,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:28,743.743 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:17:28,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:28,808.808 INFO    ] No camera update needed
[2026-10-25 22:17:28,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:17:28,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:17:28,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:17:28,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:17:30,867.867 INFO    ] ================================================
[2026-10-25 22:17:30,883.883 INFO    ] Launching Daemon at Sun Oct 25 22:17:30 IST 2026
[2026-10-25 22:17:30,893.893 INFO    ] ================================================
[2026-10-25 22:17:31,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:17:31
[2026-10-25 22:17:32,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:17:32,357.357 INFO    ] Initializing speech engine...
[2026-10-25 22:17:32,367.367 INFO    ] 2026-10-25 22:17:32
[2026-10-25 22:17:32,647.647 INFO    ] 2026-10-25 22:17:32
[2026-10-25 22:17:32,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:17:32,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:17:32,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:17:33,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:17:33,061.061 INFO    ] time= 25/10/2026 22:17:33
[2026-10-25 22:17:33,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:17:33,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:17:33,201.201 INFO    ] No existing commands found in stream
[2026-10-25 22:17:38,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:17:38,217.217 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-25 22:17:41,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:17:41,403.403 INFO    ] Checking for system updates...
[2026-10-25 22:17:41,443.443 INFO    ] 200
[2026-10-25 22:17:41,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:41,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:17:41,508.508 INFO    ] No update needed
[2026-10-25 22:17:41,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 22:17:41,545.545 INFO    ] 200
[2026-10-25 22:17:41,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:41,588.588 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:17:41,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:17:41,647.647 INFO    ] No camera update needed
[2026-10-25 22:17:41,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:17:41,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:17:41,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:17:41,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:17:43,706.706 INFO    ] ================================================
[2026-10-25 22:17:43,722.722 INFO    ] Launching Daemon at Sun Oct 25 22:17:43 IST 2026
[2026-10-25 22:17:43,735.735 INFO    ] ================================================
[2026-10-25 22:17:44,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:17:44
[2026-10-25 22:17:44,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:17:45,256.256 INFO    ] Initializing speech engine...
[2026-10-25 22:17:45,265.265 INFO    ] 2026-10-25 22:17:45
[2026-10-25 22:17:45,602.602 INFO    ] 2026-10-25 22:17:45
[2026-10-25 22:17:45,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:17:45,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:17:45,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:17:46,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:17:46,035.035 INFO    ] time= 25/10/2026 22:17:46
[2026-10-25 22:17:46,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:17:46,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:17:46,181.181 INFO    ] No existing commands found in stream
[2026-10-25 22:17:51,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:17:51,205.205 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 22:17:54,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:17:54,654.654 INFO    ] Checking for system updates...
[2026-10-25 22:17:54,694.694 INFO    ] 200
[2026-10-25 22:17:54,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:54,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:54,761.761 INFO    ] No update needed
[2026-10-25 22:17:54,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 22:17:54,798.798 INFO    ] 200
[2026-10-25 22:17:54,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:17:54,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:17:54,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:17:54,900.900 INFO    ] No camera update needed
[2026-10-25 22:17:54,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:17:54,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:17:54,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:17:54,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:17:56,956.956 INFO    ] ================================================
[2026-10-25 22:17:56,972.972 INFO    ] Launching Daemon at Sun Oct 25 22:17:56 IST 2026
[2026-10-25 22:17:56,983.983 INFO    ] ================================================
[2026-10-25 22:17:57,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:17:57
[2026-10-25 22:17:58,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:17:58,546.546 INFO    ] Initializing speech engine...
[2026-10-25 22:17:58,556.556 INFO    ] 2026-10-25 22:17:58
[2026-10-25 22:17:58,803.803 INFO    ] 2026-10-25 22:17:58
[2026-10-25 22:17:58,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:17:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:17:59,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:17:59,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:17:59,272.272 INFO    ] time= 25/10/2026 22:17:59
[2026-10-25 22:17:59,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:17:59,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:17:59,427.427 INFO    ] No existing commands found in stream
[2026-10-25 22:18:04,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:18:04,461.461 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 22:18:05,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:18:05,122.122 INFO    ] Checking for system updates...
[2026-10-25 22:18:05,158.158 INFO    ] 200
[2026-10-25 22:18:05,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:05,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:05,217.217 INFO    ] No update needed
[2026-10-25 22:18:05,219.219 INFO    ] Checking for camera pi updates...
[2026-10-25 22:18:05,254.254 INFO    ] 200
[2026-10-25 22:18:05,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:05,303.303 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:18:05,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:05,341.341 INFO    ] No camera update needed
[2026-10-25 22:18:05,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:18:05,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:18:05,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:18:05,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:18:07,397.397 INFO    ] ================================================
[2026-10-25 22:18:07,412.412 INFO    ] Launching Daemon at Sun Oct 25 22:18:07 IST 2026
[2026-10-25 22:18:07,422.422 INFO    ] ================================================
[2026-10-25 22:18:08,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:18:07
[2026-10-25 22:18:08,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:18:08,871.871 INFO    ] Initializing speech engine...
[2026-10-25 22:18:08,877.877 INFO    ] 2026-10-25 22:18:08
[2026-10-25 22:18:09,177.177 INFO    ] 2026-10-25 22:18:09
[2026-10-25 22:18:09,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:18:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:18:10,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:18:10,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:18:10,617.617 INFO    ] time= 25/10/2026 22:18:10
[2026-10-25 22:18:10,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:18:10,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:18:10,772.772 INFO    ] No existing commands found in stream
[2026-10-25 22:18:15,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:18:15,787.787 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 22:18:17,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:18:17,420.420 INFO    ] Checking for system updates...
[2026-10-25 22:18:17,461.461 INFO    ] 200
[2026-10-25 22:18:17,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:17,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:17,521.521 INFO    ] No update needed
[2026-10-25 22:18:17,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 22:18:17,557.557 INFO    ] 200
[2026-10-25 22:18:17,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:17,600.600 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:18:17,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:17,670.670 INFO    ] No camera update needed
[2026-10-25 22:18:17,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:18:17,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:18:17,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:18:17,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:18:19,727.727 INFO    ] ================================================
[2026-10-25 22:18:19,742.742 INFO    ] Launching Daemon at Sun Oct 25 22:18:19 IST 2026
[2026-10-25 22:18:19,753.753 INFO    ] ================================================
[2026-10-25 22:18:20,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:18:20
[2026-10-25 22:18:20,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:18:21,227.227 INFO    ] Initializing speech engine...
[2026-10-25 22:18:21,233.233 INFO    ] 2026-10-25 22:18:21
[2026-10-25 22:18:21,506.506 INFO    ] 2026-10-25 22:18:21
[2026-10-25 22:18:21,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:18:21,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:18:21,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:18:21,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:18:21,974.974 INFO    ] time= 25/10/2026 22:18:21
[2026-10-25 22:18:22,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:18:22,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:18:22,185.185 INFO    ] No existing commands found in stream
[2026-10-25 22:18:27,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:18:27,213.213 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-25 22:18:31,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:18:31,575.575 INFO    ] Checking for system updates...
[2026-10-25 22:18:31,616.616 INFO    ] 200
[2026-10-25 22:18:31,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:31,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:31,682.682 INFO    ] No update needed
[2026-10-25 22:18:31,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 22:18:31,718.718 INFO    ] 200
[2026-10-25 22:18:31,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:31,761.761 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:18:31,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:31,806.806 INFO    ] No camera update needed
[2026-10-25 22:18:31,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:18:31,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:18:31,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:18:31,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:18:33,865.865 INFO    ] ================================================
[2026-10-25 22:18:33,881.881 INFO    ] Launching Daemon at Sun Oct 25 22:18:33 IST 2026
[2026-10-25 22:18:33,892.892 INFO    ] ================================================
[2026-10-25 22:18:34,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:18:34
[2026-10-25 22:18:35,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:18:35,351.351 INFO    ] Initializing speech engine...
[2026-10-25 22:18:35,360.360 INFO    ] 2026-10-25 22:18:35
[2026-10-25 22:18:35,658.658 INFO    ] 2026-10-25 22:18:35
[2026-10-25 22:18:35,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:18:35,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:18:35,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:18:36,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:18:36,158.158 INFO    ] time= 25/10/2026 22:18:36
[2026-10-25 22:18:36,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:18:36,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:18:36,312.312 INFO    ] No existing commands found in stream
[2026-10-25 22:18:41,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:18:41,338.338 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 22:18:45,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:18:45,529.529 INFO    ] Checking for system updates...
[2026-10-25 22:18:45,569.569 INFO    ] 200
[2026-10-25 22:18:45,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:45,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:18:45,636.636 INFO    ] No update needed
[2026-10-25 22:18:45,638.638 INFO    ] Checking for camera pi updates...
[2026-10-25 22:18:45,677.677 INFO    ] 200
[2026-10-25 22:18:45,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:45,727.727 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:18:45,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:18:45,777.777 INFO    ] No camera update needed
[2026-10-25 22:18:45,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:18:45,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:18:45,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:18:45,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:18:47,834.834 INFO    ] ================================================
[2026-10-25 22:18:47,849.849 INFO    ] Launching Daemon at Sun Oct 25 22:18:47 IST 2026
[2026-10-25 22:18:47,860.860 INFO    ] ================================================
[2026-10-25 22:18:48,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:18:48
[2026-10-25 22:18:49,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:18:49,292.292 INFO    ] Initializing speech engine...
[2026-10-25 22:18:49,300.300 INFO    ] 2026-10-25 22:18:49
[2026-10-25 22:18:49,553.553 INFO    ] 2026-10-25 22:18:49
[2026-10-25 22:18:49,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:18:49,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:18:49,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:18:49,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:18:49,930.930 INFO    ] time= 25/10/2026 22:18:49
[2026-10-25 22:18:49,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:18:49,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:18:50,104.104 INFO    ] No existing commands found in stream
[2026-10-25 22:18:55,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:18:55,132.132 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 22:18:59,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:18:59,317.317 INFO    ] Checking for system updates...
[2026-10-25 22:18:59,353.353 INFO    ] 200
[2026-10-25 22:18:59,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:59,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:59,411.411 INFO    ] No update needed
[2026-10-25 22:18:59,414.414 INFO    ] Checking for camera pi updates...
[2026-10-25 22:18:59,447.447 INFO    ] 200
[2026-10-25 22:18:59,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:18:59,496.496 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:18:59,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:18:59,560.560 INFO    ] No camera update needed
[2026-10-25 22:18:59,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:18:59,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:18:59,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:18:59,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:19:01,616.616 INFO    ] ================================================
[2026-10-25 22:19:01,631.631 INFO    ] Launching Daemon at Sun Oct 25 22:19:01 IST 2026
[2026-10-25 22:19:01,642.642 INFO    ] ================================================
[2026-10-25 22:19:02,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:19:02
[2026-10-25 22:19:02,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:19:03,298.298 INFO    ] Initializing speech engine...
[2026-10-25 22:19:03,319.319 INFO    ] 2026-10-25 22:19:03
[2026-10-25 22:19:03,644.644 INFO    ] 2026-10-25 22:19:03
[2026-10-25 22:19:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:19:03,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:19:03,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:19:04,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:19:04,056.056 INFO    ] time= 25/10/2026 22:19:04
[2026-10-25 22:19:04,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:19:04,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:19:04,225.225 INFO    ] No existing commands found in stream
[2026-10-25 22:19:09,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:19:09,253.253 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 22:19:10,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:19:10,928.928 INFO    ] Checking for system updates...
[2026-10-25 22:19:10,967.967 INFO    ] 200
[2026-10-25 22:19:10,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:11,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:19:11,025.025 INFO    ] No update needed
[2026-10-25 22:19:11,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 22:19:11,065.065 INFO    ] 200
[2026-10-25 22:19:11,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:11,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:19:11,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:19:11,159.159 INFO    ] No camera update needed
[2026-10-25 22:19:11,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:19:11,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:19:11,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:19:11,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:19:13,216.216 INFO    ] ================================================
[2026-10-25 22:19:13,232.232 INFO    ] Launching Daemon at Sun Oct 25 22:19:13 IST 2026
[2026-10-25 22:19:13,242.242 INFO    ] ================================================
[2026-10-25 22:19:13,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:19:13
[2026-10-25 22:19:14,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:19:14,673.673 INFO    ] Initializing speech engine...
[2026-10-25 22:19:14,686.686 INFO    ] 2026-10-25 22:19:14
[2026-10-25 22:19:14,969.969 INFO    ] 2026-10-25 22:19:14
[2026-10-25 22:19:15,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:19:15,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:19:15,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:19:15,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:19:15,371.371 INFO    ] time= 25/10/2026 22:19:15
[2026-10-25 22:19:15,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:19:15,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:19:15,540.540 INFO    ] No existing commands found in stream
[2026-10-25 22:19:20,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:19:20,568.568 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 22:19:24,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:19:24,989.989 INFO    ] Checking for system updates...
[2026-10-25 22:19:25,025.025 INFO    ] 200
[2026-10-25 22:19:25,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:25,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:19:25,088.088 INFO    ] No update needed
[2026-10-25 22:19:25,091.091 INFO    ] Checking for camera pi updates...
[2026-10-25 22:19:25,128.128 INFO    ] 200
[2026-10-25 22:19:25,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:25,177.177 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:19:25,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:19:25,357.357 INFO    ] No camera update needed
[2026-10-25 22:19:25,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:19:25,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:19:25,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:19:25,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:19:27,413.413 INFO    ] ================================================
[2026-10-25 22:19:27,429.429 INFO    ] Launching Daemon at Sun Oct 25 22:19:27 IST 2026
[2026-10-25 22:19:27,440.440 INFO    ] ================================================
[2026-10-25 22:19:28,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:19:28
[2026-10-25 22:19:28,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:19:28,849.849 INFO    ] Initializing speech engine...
[2026-10-25 22:19:28,855.855 INFO    ] 2026-10-25 22:19:28
[2026-10-25 22:19:29,139.139 INFO    ] 2026-10-25 22:19:29
[2026-10-25 22:19:29,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:19:29,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:19:29,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:19:29,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:19:29,542.542 INFO    ] time= 25/10/2026 22:19:29
[2026-10-25 22:19:29,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:19:29,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:19:29,715.715 INFO    ] No existing commands found in stream
[2026-10-25 22:19:34,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:19:34,743.743 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 22:19:40,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:19:40,955.955 INFO    ] Checking for system updates...
[2026-10-25 22:19:40,991.991 INFO    ] 200
[2026-10-25 22:19:40,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:41,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:19:41,052.052 INFO    ] No update needed
[2026-10-25 22:19:41,055.055 INFO    ] Checking for camera pi updates...
[2026-10-25 22:19:41,091.091 INFO    ] 200
[2026-10-25 22:19:41,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:41,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:19:41,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:19:41,190.190 INFO    ] No camera update needed
[2026-10-25 22:19:41,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:19:41,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:19:41,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:19:41,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:19:43,246.246 INFO    ] ================================================
[2026-10-25 22:19:43,262.262 INFO    ] Launching Daemon at Sun Oct 25 22:19:43 IST 2026
[2026-10-25 22:19:43,273.273 INFO    ] ================================================
[2026-10-25 22:19:43,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:19:43
[2026-10-25 22:19:44,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:19:44,743.743 INFO    ] Initializing speech engine...
[2026-10-25 22:19:44,753.753 INFO    ] 2026-10-25 22:19:44
[2026-10-25 22:19:45,048.048 INFO    ] 2026-10-25 22:19:45
[2026-10-25 22:19:45,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:19:45,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:19:45,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:19:45,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:19:45,511.511 INFO    ] time= 25/10/2026 22:19:45
[2026-10-25 22:19:45,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:19:45,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:19:45,646.646 INFO    ] No existing commands found in stream
[2026-10-25 22:19:50,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:19:50,661.661 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 22:19:54,534.534 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:19:54,537.537 INFO    ] Checking for system updates...
[2026-10-25 22:19:54,572.572 INFO    ] 200
[2026-10-25 22:19:54,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:54,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:19:54,634.634 INFO    ] No update needed
[2026-10-25 22:19:54,637.637 INFO    ] Checking for camera pi updates...
[2026-10-25 22:19:54,670.670 INFO    ] 200
[2026-10-25 22:19:54,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:19:54,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:19:54,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:19:54,779.779 INFO    ] No camera update needed
[2026-10-25 22:19:54,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:19:54,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:19:54,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:19:54,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:19:56,835.835 INFO    ] ================================================
[2026-10-25 22:19:56,851.851 INFO    ] Launching Daemon at Sun Oct 25 22:19:56 IST 2026
[2026-10-25 22:19:56,863.863 INFO    ] ================================================
[2026-10-25 22:19:57,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:19:57
[2026-10-25 22:19:58,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:19:58,296.296 INFO    ] Initializing speech engine...
[2026-10-25 22:19:58,303.303 INFO    ] 2026-10-25 22:19:58
[2026-10-25 22:19:58,588.588 INFO    ] 2026-10-25 22:19:58
[2026-10-25 22:19:58,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:19:58,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:19:58,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:19:58,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:19:58,968.968 INFO    ] time= 25/10/2026 22:19:58
[2026-10-25 22:19:58,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:19:58,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:19:59,071.071 INFO    ] No existing commands found in stream
[2026-10-25 22:20:04,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:20:04,086.086 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-25 22:20:08,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:20:08,028.028 INFO    ] Checking for system updates...
[2026-10-25 22:20:08,071.071 INFO    ] 200
[2026-10-25 22:20:08,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:08,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:08,129.129 INFO    ] No update needed
[2026-10-25 22:20:08,131.131 INFO    ] Checking for camera pi updates...
[2026-10-25 22:20:08,165.165 INFO    ] 200
[2026-10-25 22:20:08,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:08,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:20:08,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:08,268.268 INFO    ] No camera update needed
[2026-10-25 22:20:08,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:20:08,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:20:08,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:20:08,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:20:10,325.325 INFO    ] ================================================
[2026-10-25 22:20:10,341.341 INFO    ] Launching Daemon at Sun Oct 25 22:20:10 IST 2026
[2026-10-25 22:20:10,352.352 INFO    ] ================================================
[2026-10-25 22:20:10,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:20:10
[2026-10-25 22:20:11,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:20:11,947.947 INFO    ] Initializing speech engine...
[2026-10-25 22:20:11,954.954 INFO    ] 2026-10-25 22:20:11
[2026-10-25 22:20:12,227.227 INFO    ] 2026-10-25 22:20:12
[2026-10-25 22:20:12,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:20:12,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:20:12,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:20:12,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:20:12,690.690 INFO    ] time= 25/10/2026 22:20:12
[2026-10-25 22:20:12,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:20:12,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:20:12,833.833 INFO    ] No existing commands found in stream
[2026-10-25 22:20:17,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:20:17,847.847 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-25 22:20:20,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:20:20,830.830 INFO    ] Checking for system updates...
[2026-10-25 22:20:20,870.870 INFO    ] 200
[2026-10-25 22:20:20,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:20,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:20:20,934.934 INFO    ] No update needed
[2026-10-25 22:20:20,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 22:20:20,975.975 INFO    ] 200
[2026-10-25 22:20:20,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:21,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:20:21,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:20:21,090.090 INFO    ] No camera update needed
[2026-10-25 22:20:21,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:20:21,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:20:21,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:20:21,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:20:23,146.146 INFO    ] ================================================
[2026-10-25 22:20:23,160.160 INFO    ] Launching Daemon at Sun Oct 25 22:20:23 IST 2026
[2026-10-25 22:20:23,171.171 INFO    ] ================================================
[2026-10-25 22:20:23,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:20:23
[2026-10-25 22:20:24,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:20:24,751.751 INFO    ] Initializing speech engine...
[2026-10-25 22:20:24,766.766 INFO    ] 2026-10-25 22:20:24
[2026-10-25 22:20:25,039.039 INFO    ] 2026-10-25 22:20:25
[2026-10-25 22:20:25,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:20:25,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:20:25,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:20:25,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:20:25,514.514 INFO    ] time= 25/10/2026 22:20:25
[2026-10-25 22:20:25,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:20:25,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:20:25,661.661 INFO    ] No existing commands found in stream
[2026-10-25 22:20:30,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:20:30,685.685 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 22:20:31,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:20:31,674.674 INFO    ] Checking for system updates...
[2026-10-25 22:20:31,723.723 INFO    ] 200
[2026-10-25 22:20:31,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:31,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:31,788.788 INFO    ] No update needed
[2026-10-25 22:20:31,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 22:20:31,828.828 INFO    ] 200
[2026-10-25 22:20:31,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:31,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:20:31,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:31,923.923 INFO    ] No camera update needed
[2026-10-25 22:20:31,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:20:31,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:20:31,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:20:31,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:20:33,986.986 INFO    ] ================================================
[2026-10-25 22:20:34,001.001 INFO    ] Launching Daemon at Sun Oct 25 22:20:33 IST 2026
[2026-10-25 22:20:34,013.013 INFO    ] ================================================
[2026-10-25 22:20:34,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:20:34
[2026-10-25 22:20:35,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:20:35,421.421 INFO    ] Initializing speech engine...
[2026-10-25 22:20:35,428.428 INFO    ] 2026-10-25 22:20:35
[2026-10-25 22:20:35,721.721 INFO    ] 2026-10-25 22:20:35
[2026-10-25 22:20:35,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:20:35,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:20:35,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:20:36,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:20:36,096.096 INFO    ] time= 25/10/2026 22:20:36
[2026-10-25 22:20:36,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:20:36,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:20:36,219.219 INFO    ] No existing commands found in stream
[2026-10-25 22:20:41,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:20:41,235.235 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 22:20:43,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:20:43,476.476 INFO    ] Checking for system updates...
[2026-10-25 22:20:43,517.517 INFO    ] 200
[2026-10-25 22:20:43,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:43,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:43,575.575 INFO    ] No update needed
[2026-10-25 22:20:43,577.577 INFO    ] Checking for camera pi updates...
[2026-10-25 22:20:43,618.618 INFO    ] 200
[2026-10-25 22:20:43,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:43,669.669 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:20:43,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:20:43,726.726 INFO    ] No camera update needed
[2026-10-25 22:20:43,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:20:43,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:20:43,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:20:43,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:20:45,785.785 INFO    ] ================================================
[2026-10-25 22:20:45,801.801 INFO    ] Launching Daemon at Sun Oct 25 22:20:45 IST 2026
[2026-10-25 22:20:45,813.813 INFO    ] ================================================
[2026-10-25 22:20:46,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:20:46
[2026-10-25 22:20:46,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:20:47,225.225 INFO    ] Initializing speech engine...
[2026-10-25 22:20:47,235.235 INFO    ] 2026-10-25 22:20:47
[2026-10-25 22:20:47,478.478 INFO    ] 2026-10-25 22:20:47
[2026-10-25 22:20:47,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:20:47,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:20:47,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:20:47,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:20:47,863.863 INFO    ] time= 25/10/2026 22:20:47
[2026-10-25 22:20:47,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:20:47,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:20:47,977.977 INFO    ] No existing commands found in stream
[2026-10-25 22:20:52,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:20:52,989.989 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-25 22:20:56,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:20:56,993.993 INFO    ] Checking for system updates...
[2026-10-25 22:20:57,033.033 INFO    ] 200
[2026-10-25 22:20:57,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:57,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:20:57,096.096 INFO    ] No update needed
[2026-10-25 22:20:57,099.099 INFO    ] Checking for camera pi updates...
[2026-10-25 22:20:57,136.136 INFO    ] 200
[2026-10-25 22:20:57,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:20:57,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:20:57,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:20:57,246.246 INFO    ] No camera update needed
[2026-10-25 22:20:57,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:20:57,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:20:57,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:20:57,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:20:59,303.303 INFO    ] ================================================
[2026-10-25 22:20:59,319.319 INFO    ] Launching Daemon at Sun Oct 25 22:20:59 IST 2026
[2026-10-25 22:20:59,331.331 INFO    ] ================================================
[2026-10-25 22:20:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:20:59
[2026-10-25 22:21:00,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:21:00,935.935 INFO    ] Initializing speech engine...
[2026-10-25 22:21:00,949.949 INFO    ] 2026-10-25 22:21:00
[2026-10-25 22:21:01,237.237 INFO    ] 2026-10-25 22:21:01
[2026-10-25 22:21:01,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:21:01,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:21:01,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:21:01,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:21:01,719.719 INFO    ] time= 25/10/2026 22:21:01
[2026-10-25 22:21:01,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:21:01,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:21:01,842.842 INFO    ] No existing commands found in stream
[2026-10-25 22:21:06,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:21:06,875.875 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 22:21:08,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:21:08,716.716 INFO    ] Checking for system updates...
[2026-10-25 22:21:08,754.754 INFO    ] 200
[2026-10-25 22:21:08,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:08,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:21:08,819.819 INFO    ] No update needed
[2026-10-25 22:21:08,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 22:21:08,857.857 INFO    ] 200
[2026-10-25 22:21:08,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:08,902.902 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:21:08,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:21:08,962.962 INFO    ] No camera update needed
[2026-10-25 22:21:08,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:21:08,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:21:08,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:21:08,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:21:11,023.023 INFO    ] ================================================
[2026-10-25 22:21:11,038.038 INFO    ] Launching Daemon at Sun Oct 25 22:21:11 IST 2026
[2026-10-25 22:21:11,049.049 INFO    ] ================================================
[2026-10-25 22:21:11,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:21:11
[2026-10-25 22:21:12,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:21:12,588.588 INFO    ] Initializing speech engine...
[2026-10-25 22:21:12,598.598 INFO    ] 2026-10-25 22:21:12
[2026-10-25 22:21:12,908.908 INFO    ] 2026-10-25 22:21:12
[2026-10-25 22:21:13,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:21:13,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:21:13,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:21:13,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:21:13,463.463 INFO    ] time= 25/10/2026 22:21:13
[2026-10-25 22:21:13,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:21:13,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:21:13,634.634 INFO    ] No existing commands found in stream
[2026-10-25 22:21:18,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:21:18,663.663 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 22:21:22,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:21:22,204.204 INFO    ] Checking for system updates...
[2026-10-25 22:21:22,243.243 INFO    ] 200
[2026-10-25 22:21:22,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:22,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:22,303.303 INFO    ] No update needed
[2026-10-25 22:21:22,306.306 INFO    ] Checking for camera pi updates...
[2026-10-25 22:21:22,340.340 INFO    ] 200
[2026-10-25 22:21:22,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:22,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:21:22,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:22,438.438 INFO    ] No camera update needed
[2026-10-25 22:21:22,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:21:22,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:21:22,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:21:22,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:21:24,494.494 INFO    ] ================================================
[2026-10-25 22:21:24,510.510 INFO    ] Launching Daemon at Sun Oct 25 22:21:24 IST 2026
[2026-10-25 22:21:24,521.521 INFO    ] ================================================
[2026-10-25 22:21:25,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:21:25
[2026-10-25 22:21:25,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:21:26,140.140 INFO    ] Initializing speech engine...
[2026-10-25 22:21:26,146.146 INFO    ] 2026-10-25 22:21:26
[2026-10-25 22:21:26,427.427 INFO    ] 2026-10-25 22:21:26
[2026-10-25 22:21:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:21:26,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:21:26,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:21:26,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:21:26,909.909 INFO    ] time= 25/10/2026 22:21:26
[2026-10-25 22:21:26,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:21:26,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:21:27,094.094 INFO    ] No existing commands found in stream
[2026-10-25 22:21:32,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:21:32,125.125 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 22:21:34,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:21:34,350.350 INFO    ] Checking for system updates...
[2026-10-25 22:21:34,387.387 INFO    ] 200
[2026-10-25 22:21:34,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:34,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:34,447.447 INFO    ] No update needed
[2026-10-25 22:21:34,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 22:21:34,483.483 INFO    ] 200
[2026-10-25 22:21:34,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:34,526.526 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:21:34,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:34,574.574 INFO    ] No camera update needed
[2026-10-25 22:21:34,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:21:34,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:21:34,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:21:34,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:21:36,629.629 INFO    ] ================================================
[2026-10-25 22:21:36,645.645 INFO    ] Launching Daemon at Sun Oct 25 22:21:36 IST 2026
[2026-10-25 22:21:36,656.656 INFO    ] ================================================
[2026-10-25 22:21:37,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:21:37
[2026-10-25 22:21:37,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:21:38,226.226 INFO    ] Initializing speech engine...
[2026-10-25 22:21:38,240.240 INFO    ] 2026-10-25 22:21:38
[2026-10-25 22:21:38,547.547 INFO    ] 2026-10-25 22:21:38
[2026-10-25 22:21:38,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:21:40,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:21:40,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:21:40,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:21:40,958.958 INFO    ] time= 25/10/2026 22:21:40
[2026-10-25 22:21:41,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:21:41,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:21:41,077.077 INFO    ] No existing commands found in stream
[2026-10-25 22:21:46,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:21:46,091.091 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 22:21:46,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:21:46,871.871 INFO    ] Checking for system updates...
[2026-10-25 22:21:46,908.908 INFO    ] 200
[2026-10-25 22:21:46,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:46,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:21:46,969.969 INFO    ] No update needed
[2026-10-25 22:21:46,972.972 INFO    ] Checking for camera pi updates...
[2026-10-25 22:21:47,006.006 INFO    ] 200
[2026-10-25 22:21:47,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:47,052.052 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:21:47,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:21:47,114.114 INFO    ] No camera update needed
[2026-10-25 22:21:47,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:21:47,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:21:47,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:21:47,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:21:49,173.173 INFO    ] ================================================
[2026-10-25 22:21:49,188.188 INFO    ] Launching Daemon at Sun Oct 25 22:21:49 IST 2026
[2026-10-25 22:21:49,200.200 INFO    ] ================================================
[2026-10-25 22:21:49,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:21:49
[2026-10-25 22:21:50,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:21:50,647.647 INFO    ] Initializing speech engine...
[2026-10-25 22:21:50,656.656 INFO    ] 2026-10-25 22:21:50
[2026-10-25 22:21:50,917.917 INFO    ] 2026-10-25 22:21:50
[2026-10-25 22:21:50,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:21:51,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:21:51,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:21:51,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:21:51,380.380 INFO    ] time= 25/10/2026 22:21:51
[2026-10-25 22:21:51,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:21:51,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:21:51,525.525 INFO    ] No existing commands found in stream
[2026-10-25 22:21:56,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:21:56,553.553 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-25 22:21:58,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:21:58,410.410 INFO    ] Checking for system updates...
[2026-10-25 22:21:58,450.450 INFO    ] 200
[2026-10-25 22:21:58,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:58,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:58,507.507 INFO    ] No update needed
[2026-10-25 22:21:58,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 22:21:58,547.547 INFO    ] 200
[2026-10-25 22:21:58,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:21:58,594.594 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:21:58,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:21:58,652.652 INFO    ] No camera update needed
[2026-10-25 22:21:58,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:21:58,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:21:58,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:21:58,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:22:00,707.707 INFO    ] ================================================
[2026-10-25 22:22:00,723.723 INFO    ] Launching Daemon at Sun Oct 25 22:22:00 IST 2026
[2026-10-25 22:22:00,734.734 INFO    ] ================================================
[2026-10-25 22:22:01,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:22:01
[2026-10-25 22:22:02,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:22:02,561.561 INFO    ] Initializing speech engine...
[2026-10-25 22:22:02,569.569 INFO    ] 2026-10-25 22:22:02
[2026-10-25 22:22:02,919.919 INFO    ] 2026-10-25 22:22:02
[2026-10-25 22:22:02,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:22:03,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:22:03,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:22:03,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:22:03,405.405 INFO    ] time= 25/10/2026 22:22:03
[2026-10-25 22:22:03,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:22:03,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:22:03,606.606 INFO    ] No existing commands found in stream
[2026-10-25 22:22:08,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:22:08,623.623 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-25 22:22:11,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:22:11,306.306 INFO    ] Checking for system updates...
[2026-10-25 22:22:11,344.344 INFO    ] 200
[2026-10-25 22:22:11,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:11,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:22:11,407.407 INFO    ] No update needed
[2026-10-25 22:22:11,409.409 INFO    ] Checking for camera pi updates...
[2026-10-25 22:22:11,446.446 INFO    ] 200
[2026-10-25 22:22:11,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:11,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:22:11,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:22:11,528.528 INFO    ] No camera update needed
[2026-10-25 22:22:11,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:22:11,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:22:11,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:22:11,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:22:13,585.585 INFO    ] ================================================
[2026-10-25 22:22:13,600.600 INFO    ] Launching Daemon at Sun Oct 25 22:22:13 IST 2026
[2026-10-25 22:22:13,611.611 INFO    ] ================================================
[2026-10-25 22:22:14,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:22:14
[2026-10-25 22:22:14,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:22:15,087.087 INFO    ] Initializing speech engine...
[2026-10-25 22:22:15,094.094 INFO    ] 2026-10-25 22:22:15
[2026-10-25 22:22:15,361.361 INFO    ] 2026-10-25 22:22:15
[2026-10-25 22:22:15,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:22:15,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:22:15,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:22:15,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:22:15,731.731 INFO    ] time= 25/10/2026 22:22:15
[2026-10-25 22:22:15,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:22:15,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:22:15,909.909 INFO    ] No existing commands found in stream
[2026-10-25 22:22:20,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:22:20,944.944 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-25 22:22:23,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:22:23,451.451 INFO    ] Checking for system updates...
[2026-10-25 22:22:23,489.489 INFO    ] 200
[2026-10-25 22:22:23,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:23,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:22:23,547.547 INFO    ] No update needed
[2026-10-25 22:22:23,550.550 INFO    ] Checking for camera pi updates...
[2026-10-25 22:22:23,586.586 INFO    ] 200
[2026-10-25 22:22:23,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:23,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:22:23,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:22:23,695.695 INFO    ] No camera update needed
[2026-10-25 22:22:23,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:22:23,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:22:23,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:22:23,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:22:25,754.754 INFO    ] ================================================
[2026-10-25 22:22:25,769.769 INFO    ] Launching Daemon at Sun Oct 25 22:22:25 IST 2026
[2026-10-25 22:22:25,779.779 INFO    ] ================================================
[2026-10-25 22:22:26,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:22:26
[2026-10-25 22:22:26,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:22:27,227.227 INFO    ] Initializing speech engine...
[2026-10-25 22:22:27,251.251 INFO    ] 2026-10-25 22:22:27
[2026-10-25 22:22:27,519.519 INFO    ] 2026-10-25 22:22:27
[2026-10-25 22:22:27,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:22:27,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:22:27,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:22:27,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:22:27,893.893 INFO    ] time= 25/10/2026 22:22:27
[2026-10-25 22:22:27,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:22:27,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:22:28,021.021 INFO    ] No existing commands found in stream
[2026-10-25 22:22:33,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:22:33,035.035 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-25 22:22:35,758.758 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:22:35,761.761 INFO    ] Checking for system updates...
[2026-10-25 22:22:35,796.796 INFO    ] 200
[2026-10-25 22:22:35,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:35,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:22:35,860.860 INFO    ] No update needed
[2026-10-25 22:22:35,862.862 INFO    ] Checking for camera pi updates...
[2026-10-25 22:22:35,899.899 INFO    ] 200
[2026-10-25 22:22:35,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:35,943.943 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:22:35,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:22:35,995.995 INFO    ] No camera update needed
[2026-10-25 22:22:35,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:22:36,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:22:36,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:22:36,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:22:38,051.051 INFO    ] ================================================
[2026-10-25 22:22:38,066.066 INFO    ] Launching Daemon at Sun Oct 25 22:22:38 IST 2026
[2026-10-25 22:22:38,077.077 INFO    ] ================================================
[2026-10-25 22:22:38,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:22:38
[2026-10-25 22:22:39,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:22:39,532.532 INFO    ] Initializing speech engine...
[2026-10-25 22:22:39,541.541 INFO    ] 2026-10-25 22:22:39
[2026-10-25 22:22:39,790.790 INFO    ] 2026-10-25 22:22:39
[2026-10-25 22:22:39,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:22:40,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:22:40,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:22:41,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:22:41,040.040 INFO    ] time= 25/10/2026 22:22:41
[2026-10-25 22:22:41,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:22:41,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:22:41,176.176 INFO    ] No existing commands found in stream
[2026-10-25 22:22:46,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:22:46,193.193 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-25 22:22:48,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:22:48,639.639 INFO    ] Checking for system updates...
[2026-10-25 22:22:48,678.678 INFO    ] 200
[2026-10-25 22:22:48,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:48,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:22:48,741.741 INFO    ] No update needed
[2026-10-25 22:22:48,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 22:22:48,777.777 INFO    ] 200
[2026-10-25 22:22:48,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:22:48,825.825 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:22:48,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:22:48,866.866 INFO    ] No camera update needed
[2026-10-25 22:22:48,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:22:48,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:22:48,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:22:48,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:22:50,922.922 INFO    ] ================================================
[2026-10-25 22:22:50,937.937 INFO    ] Launching Daemon at Sun Oct 25 22:22:50 IST 2026
[2026-10-25 22:22:50,947.947 INFO    ] ================================================
[2026-10-25 22:22:51,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:22:51
[2026-10-25 22:22:52,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:22:52,534.534 INFO    ] Initializing speech engine...
[2026-10-25 22:22:52,543.543 INFO    ] 2026-10-25 22:22:52
[2026-10-25 22:22:52,807.807 INFO    ] 2026-10-25 22:22:52
[2026-10-25 22:22:52,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:22:53,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:22:53,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:22:53,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:22:53,176.176 INFO    ] time= 25/10/2026 22:22:53
[2026-10-25 22:22:53,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:22:53,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:22:53,345.345 INFO    ] No existing commands found in stream
[2026-10-25 22:22:58,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:22:58,383.383 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 22:23:02,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:23:02,277.277 INFO    ] Checking for system updates...
[2026-10-25 22:23:02,322.322 INFO    ] 200
[2026-10-25 22:23:02,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:02,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:02,400.400 INFO    ] No update needed
[2026-10-25 22:23:02,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:02,444.444 INFO    ] 200
[2026-10-25 22:23:02,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:02,503.503 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:02,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:02,539.539 INFO    ] No camera update needed
[2026-10-25 22:23:02,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:02,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:02,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:02,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:23:04,603.603 INFO    ] ================================================
[2026-10-25 22:23:04,618.618 INFO    ] Launching Daemon at Sun Oct 25 22:23:04 IST 2026
[2026-10-25 22:23:04,629.629 INFO    ] ================================================
[2026-10-25 22:23:05,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:23:05
[2026-10-25 22:23:05,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:23:06,039.039 INFO    ] Initializing speech engine...
[2026-10-25 22:23:06,047.047 INFO    ] 2026-10-25 22:23:06
[2026-10-25 22:23:06,321.321 INFO    ] 2026-10-25 22:23:06
[2026-10-25 22:23:06,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:23:06,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:23:06,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:23:06,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:23:06,698.698 INFO    ] time= 25/10/2026 22:23:06
[2026-10-25 22:23:06,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:23:06,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:23:06,838.838 INFO    ] No existing commands found in stream
[2026-10-25 22:23:11,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:23:11,866.866 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 22:23:13,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:23:13,647.647 INFO    ] Checking for system updates...
[2026-10-25 22:23:13,683.683 INFO    ] 200
[2026-10-25 22:23:13,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:13,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:13,748.748 INFO    ] No update needed
[2026-10-25 22:23:13,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:13,787.787 INFO    ] 200
[2026-10-25 22:23:13,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:13,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:13,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:13,916.916 INFO    ] No camera update needed
[2026-10-25 22:23:13,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:13,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:13,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:13,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:23:15,972.972 INFO    ] ================================================
[2026-10-25 22:23:15,987.987 INFO    ] Launching Daemon at Sun Oct 25 22:23:15 IST 2026
[2026-10-25 22:23:16,997.997 INFO    ] ================================================
[2026-10-25 22:23:16,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:23:16
[2026-10-25 22:23:17,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:23:17,449.449 INFO    ] Initializing speech engine...
[2026-10-25 22:23:17,458.458 INFO    ] 2026-10-25 22:23:17
[2026-10-25 22:23:17,757.757 INFO    ] 2026-10-25 22:23:17
[2026-10-25 22:23:17,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:23:17,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:23:18,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:23:18,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:23:18,137.137 INFO    ] time= 25/10/2026 22:23:18
[2026-10-25 22:23:18,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:23:18,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:23:18,266.266 INFO    ] No existing commands found in stream
[2026-10-25 22:23:23,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:23:23,279.279 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 22:23:23,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:23:23,849.849 INFO    ] Checking for system updates...
[2026-10-25 22:23:23,885.885 INFO    ] 200
[2026-10-25 22:23:23,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:23,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:23,944.944 INFO    ] No update needed
[2026-10-25 22:23:23,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:23,981.981 INFO    ] 200
[2026-10-25 22:23:23,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:24,029.029 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:24,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:24,090.090 INFO    ] No camera update needed
[2026-10-25 22:23:24,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:24,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:24,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:24,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:23:26,145.145 INFO    ] ================================================
[2026-10-25 22:23:26,160.160 INFO    ] Launching Daemon at Sun Oct 25 22:23:26 IST 2026
[2026-10-25 22:23:26,171.171 INFO    ] ================================================
[2026-10-25 22:23:26,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:23:26
[2026-10-25 22:23:27,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:23:27,651.651 INFO    ] Initializing speech engine...
[2026-10-25 22:23:27,660.660 INFO    ] 2026-10-25 22:23:27
[2026-10-25 22:23:27,912.912 INFO    ] 2026-10-25 22:23:27
[2026-10-25 22:23:27,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:23:28,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:23:28,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:23:28,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:23:28,290.290 INFO    ] time= 25/10/2026 22:23:28
[2026-10-25 22:23:28,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:23:28,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:23:28,460.460 INFO    ] No existing commands found in stream
[2026-10-25 22:23:33,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:23:33,493.493 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 22:23:35,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:23:35,686.686 INFO    ] Checking for system updates...
[2026-10-25 22:23:35,722.722 INFO    ] 200
[2026-10-25 22:23:35,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:35,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:35,785.785 INFO    ] No update needed
[2026-10-25 22:23:35,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:35,828.828 INFO    ] 200
[2026-10-25 22:23:35,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:35,876.876 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:36,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:36,038.038 INFO    ] No camera update needed
[2026-10-25 22:23:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:36,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:36,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:36,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:23:38,094.094 INFO    ] ================================================
[2026-10-25 22:23:38,109.109 INFO    ] Launching Daemon at Sun Oct 25 22:23:38 IST 2026
[2026-10-25 22:23:38,120.120 INFO    ] ================================================
[2026-10-25 22:23:38,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:23:38
[2026-10-25 22:23:39,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:23:39,572.572 INFO    ] Initializing speech engine...
[2026-10-25 22:23:39,579.579 INFO    ] 2026-10-25 22:23:39
[2026-10-25 22:23:39,881.881 INFO    ] 2026-10-25 22:23:39
[2026-10-25 22:23:39,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:23:40,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:23:40,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:23:40,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:23:40,301.301 INFO    ] time= 25/10/2026 22:23:40
[2026-10-25 22:23:40,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:23:40,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:23:40,386.386 INFO    ] No existing commands found in stream
[2026-10-25 22:23:45,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:23:45,401.401 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 22:23:46,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:23:46,424.424 INFO    ] Checking for system updates...
[2026-10-25 22:23:46,460.460 INFO    ] 200
[2026-10-25 22:23:46,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:46,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:46,519.519 INFO    ] No update needed
[2026-10-25 22:23:46,522.522 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:46,556.556 INFO    ] 200
[2026-10-25 22:23:46,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:46,599.599 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:46,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:23:46,658.658 INFO    ] No camera update needed
[2026-10-25 22:23:46,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:46,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:46,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:46,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:23:48,714.714 INFO    ] ================================================
[2026-10-25 22:23:48,730.730 INFO    ] Launching Daemon at Sun Oct 25 22:23:48 IST 2026
[2026-10-25 22:23:48,741.741 INFO    ] ================================================
[2026-10-25 22:23:49,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:23:49
[2026-10-25 22:23:50,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:23:50,277.277 INFO    ] Initializing speech engine...
[2026-10-25 22:23:50,287.287 INFO    ] 2026-10-25 22:23:50
[2026-10-25 22:23:50,536.536 INFO    ] 2026-10-25 22:23:50
[2026-10-25 22:23:50,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:23:50,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:23:50,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:23:50,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:23:50,910.910 INFO    ] time= 25/10/2026 22:23:50
[2026-10-25 22:23:50,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:23:50,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:23:51,076.076 INFO    ] No existing commands found in stream
[2026-10-25 22:23:56,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:23:56,114.114 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 22:23:57,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:23:57,715.715 INFO    ] Checking for system updates...
[2026-10-25 22:23:57,752.752 INFO    ] 200
[2026-10-25 22:23:57,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:57,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:23:57,810.810 INFO    ] No update needed
[2026-10-25 22:23:57,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 22:23:57,848.848 INFO    ] 200
[2026-10-25 22:23:57,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:23:57,892.892 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:23:57,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:23:57,956.956 INFO    ] No camera update needed
[2026-10-25 22:23:57,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:23:57,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:23:57,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:23:57,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:24:00,013.013 INFO    ] ================================================
[2026-10-25 22:24:00,028.028 INFO    ] Launching Daemon at Sun Oct 25 22:24:00 IST 2026
[2026-10-25 22:24:00,038.038 INFO    ] ================================================
[2026-10-25 22:24:00,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:24:00
[2026-10-25 22:24:01,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:24:01,446.446 INFO    ] Initializing speech engine...
[2026-10-25 22:24:01,452.452 INFO    ] 2026-10-25 22:24:01
[2026-10-25 22:24:01,728.728 INFO    ] 2026-10-25 22:24:01
[2026-10-25 22:24:01,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:24:02,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:24:02,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:24:02,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:24:02,209.209 INFO    ] time= 25/10/2026 22:24:02
[2026-10-25 22:24:02,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:24:02,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:24:02,276.276 INFO    ] No existing commands found in stream
[2026-10-25 22:24:07,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:24:07,289.289 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-25 22:24:12,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:24:12,726.726 INFO    ] Checking for system updates...
[2026-10-25 22:24:12,762.762 INFO    ] 200
[2026-10-25 22:24:12,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:12,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:12,820.820 INFO    ] No update needed
[2026-10-25 22:24:12,822.822 INFO    ] Checking for camera pi updates...
[2026-10-25 22:24:12,856.856 INFO    ] 200
[2026-10-25 22:24:12,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:12,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:24:12,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:12,957.957 INFO    ] No camera update needed
[2026-10-25 22:24:12,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:24:12,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:24:12,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:24:12,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:24:15,017.017 INFO    ] ================================================
[2026-10-25 22:24:15,032.032 INFO    ] Launching Daemon at Sun Oct 25 22:24:15 IST 2026
[2026-10-25 22:24:15,043.043 INFO    ] ================================================
[2026-10-25 22:24:15,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:24:15
[2026-10-25 22:24:16,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:24:16,462.462 INFO    ] Initializing speech engine...
[2026-10-25 22:24:16,471.471 INFO    ] 2026-10-25 22:24:16
[2026-10-25 22:24:16,723.723 INFO    ] 2026-10-25 22:24:16
[2026-10-25 22:24:16,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:24:16,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:24:16,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:24:17,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:24:17,096.096 INFO    ] time= 25/10/2026 22:24:17
[2026-10-25 22:24:17,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:24:17,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:24:17,277.277 INFO    ] No existing commands found in stream
[2026-10-25 22:24:22,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:24:22,304.304 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 22:24:24,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:24:24,059.059 INFO    ] Checking for system updates...
[2026-10-25 22:24:24,098.098 INFO    ] 200
[2026-10-25 22:24:24,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:24,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:24,156.156 INFO    ] No update needed
[2026-10-25 22:24:24,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 22:24:24,193.193 INFO    ] 200
[2026-10-25 22:24:24,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:24,240.240 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:24:24,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:24,298.298 INFO    ] No camera update needed
[2026-10-25 22:24:24,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:24:24,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:24:24,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:24:24,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:24:26,354.354 INFO    ] ================================================
[2026-10-25 22:24:26,369.369 INFO    ] Launching Daemon at Sun Oct 25 22:24:26 IST 2026
[2026-10-25 22:24:26,379.379 INFO    ] ================================================
[2026-10-25 22:24:26,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:24:26
[2026-10-25 22:24:27,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:24:27,835.835 INFO    ] Initializing speech engine...
[2026-10-25 22:24:27,843.843 INFO    ] 2026-10-25 22:24:27
[2026-10-25 22:24:28,102.102 INFO    ] 2026-10-25 22:24:28
[2026-10-25 22:24:28,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:24:28,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:24:28,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:24:28,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:24:28,541.541 INFO    ] time= 25/10/2026 22:24:28
[2026-10-25 22:24:28,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:24:28,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:24:28,718.718 INFO    ] No existing commands found in stream
[2026-10-25 22:24:33,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:24:33,757.757 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 22:24:34,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:24:34,197.197 INFO    ] Checking for system updates...
[2026-10-25 22:24:34,233.233 INFO    ] 200
[2026-10-25 22:24:34,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:34,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:34,292.292 INFO    ] No update needed
[2026-10-25 22:24:34,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 22:24:34,328.328 INFO    ] 200
[2026-10-25 22:24:34,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:34,376.376 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:24:34,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:24:34,438.438 INFO    ] No camera update needed
[2026-10-25 22:24:34,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:24:34,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:24:34,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:24:34,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:24:36,497.497 INFO    ] ================================================
[2026-10-25 22:24:36,517.517 INFO    ] Launching Daemon at Sun Oct 25 22:24:36 IST 2026
[2026-10-25 22:24:36,529.529 INFO    ] ================================================
[2026-10-25 22:24:37,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:24:37
[2026-10-25 22:24:37,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:24:38,019.019 INFO    ] Initializing speech engine...
[2026-10-25 22:24:38,030.030 INFO    ] 2026-10-25 22:24:38
[2026-10-25 22:24:38,335.335 INFO    ] 2026-10-25 22:24:38
[2026-10-25 22:24:38,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:24:38,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:24:38,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:24:38,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:24:38,725.725 INFO    ] time= 25/10/2026 22:24:38
[2026-10-25 22:24:38,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:24:38,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:24:38,858.858 INFO    ] No existing commands found in stream
[2026-10-25 22:24:43,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:24:43,873.873 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-25 22:24:46,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:24:46,682.682 INFO    ] Checking for system updates...
[2026-10-25 22:24:46,722.722 INFO    ] 200
[2026-10-25 22:24:46,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:46,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:24:46,784.784 INFO    ] No update needed
[2026-10-25 22:24:46,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 22:24:46,820.820 INFO    ] 200
[2026-10-25 22:24:46,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:46,863.863 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:24:46,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:24:46,929.929 INFO    ] No camera update needed
[2026-10-25 22:24:46,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:24:46,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:24:46,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:24:46,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:24:48,984.984 INFO    ] ================================================
[2026-10-25 22:24:49,998.998 INFO    ] Launching Daemon at Sun Oct 25 22:24:48 IST 2026
[2026-10-25 22:24:49,009.009 INFO    ] ================================================
[2026-10-25 22:24:49,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:24:49
[2026-10-25 22:24:50,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:24:50,423.423 INFO    ] Initializing speech engine...
[2026-10-25 22:24:50,436.436 INFO    ] 2026-10-25 22:24:50
[2026-10-25 22:24:50,714.714 INFO    ] 2026-10-25 22:24:50
[2026-10-25 22:24:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:24:50,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:24:50,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:24:51,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:24:51,118.118 INFO    ] time= 25/10/2026 22:24:51
[2026-10-25 22:24:51,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:24:51,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:24:51,200.200 INFO    ] No existing commands found in stream
[2026-10-25 22:24:56,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:24:56,215.215 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 22:24:58,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:24:58,341.341 INFO    ] Checking for system updates...
[2026-10-25 22:24:58,377.377 INFO    ] 200
[2026-10-25 22:24:58,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:58,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:24:58,436.436 INFO    ] No update needed
[2026-10-25 22:24:58,438.438 INFO    ] Checking for camera pi updates...
[2026-10-25 22:24:58,474.474 INFO    ] 200
[2026-10-25 22:24:58,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:24:58,517.517 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:24:58,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:24:58,570.570 INFO    ] No camera update needed
[2026-10-25 22:24:58,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:24:58,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:24:58,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:24:58,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:25:00,626.626 INFO    ] ================================================
[2026-10-25 22:25:00,641.641 INFO    ] Launching Daemon at Sun Oct 25 22:25:00 IST 2026
[2026-10-25 22:25:00,651.651 INFO    ] ================================================
[2026-10-25 22:25:01,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:25:01
[2026-10-25 22:25:01,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:25:02,677.677 INFO    ] Initializing speech engine...
[2026-10-25 22:25:02,682.682 INFO    ] 2026-10-25 22:25:02
[2026-10-25 22:25:03,097.097 INFO    ] 2026-10-25 22:25:03
[2026-10-25 22:25:03,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:25:03,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:25:03,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:25:03,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:25:03,636.636 INFO    ] time= 25/10/2026 22:25:03
[2026-10-25 22:25:03,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:25:03,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:25:03,865.865 INFO    ] No existing commands found in stream
[2026-10-25 22:25:08,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:25:08,904.904 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 22:25:12,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:25:12,736.736 INFO    ] Checking for system updates...
[2026-10-25 22:25:12,777.777 INFO    ] 200
[2026-10-25 22:25:12,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:12,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:12,838.838 INFO    ] No update needed
[2026-10-25 22:25:12,841.841 INFO    ] Checking for camera pi updates...
[2026-10-25 22:25:12,875.875 INFO    ] 200
[2026-10-25 22:25:12,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:12,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:25:12,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:12,970.970 INFO    ] No camera update needed
[2026-10-25 22:25:12,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:25:12,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:25:12,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:25:12,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:25:15,027.027 INFO    ] ================================================
[2026-10-25 22:25:15,042.042 INFO    ] Launching Daemon at Sun Oct 25 22:25:15 IST 2026
[2026-10-25 22:25:15,053.053 INFO    ] ================================================
[2026-10-25 22:25:15,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:25:15
[2026-10-25 22:25:16,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:25:16,491.491 INFO    ] Initializing speech engine...
[2026-10-25 22:25:16,500.500 INFO    ] 2026-10-25 22:25:16
[2026-10-25 22:25:16,761.761 INFO    ] 2026-10-25 22:25:16
[2026-10-25 22:25:16,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:25:17,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:25:17,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:25:17,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:25:17,221.221 INFO    ] time= 25/10/2026 22:25:17
[2026-10-25 22:25:17,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:25:17,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:25:17,383.383 INFO    ] No existing commands found in stream
[2026-10-25 22:25:22,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:25:22,398.398 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-25 22:25:24,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:25:24,907.907 INFO    ] Checking for system updates...
[2026-10-25 22:25:24,943.943 INFO    ] 200
[2026-10-25 22:25:24,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:24,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:25,001.001 INFO    ] No update needed
[2026-10-25 22:25:25,003.003 INFO    ] Checking for camera pi updates...
[2026-10-25 22:25:25,037.037 INFO    ] 200
[2026-10-25 22:25:25,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:25,081.081 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:25:25,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:25,131.131 INFO    ] No camera update needed
[2026-10-25 22:25:25,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:25:25,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:25:25,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:25:25,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:25:27,187.187 INFO    ] ================================================
[2026-10-25 22:25:27,202.202 INFO    ] Launching Daemon at Sun Oct 25 22:25:27 IST 2026
[2026-10-25 22:25:27,213.213 INFO    ] ================================================
[2026-10-25 22:25:27,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:25:27
[2026-10-25 22:25:28,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:25:28,763.763 INFO    ] Initializing speech engine...
[2026-10-25 22:25:28,772.772 INFO    ] 2026-10-25 22:25:28
[2026-10-25 22:25:29,041.041 INFO    ] 2026-10-25 22:25:29
[2026-10-25 22:25:29,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:25:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:25:29,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:25:29,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:25:29,538.538 INFO    ] time= 25/10/2026 22:25:29
[2026-10-25 22:25:29,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:25:29,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:25:29,734.734 INFO    ] No existing commands found in stream
[2026-10-25 22:25:34,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:25:34,763.763 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-25 22:25:35,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:25:35,209.209 INFO    ] Checking for system updates...
[2026-10-25 22:25:35,247.247 INFO    ] 200
[2026-10-25 22:25:35,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:35,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:25:35,313.313 INFO    ] No update needed
[2026-10-25 22:25:35,316.316 INFO    ] Checking for camera pi updates...
[2026-10-25 22:25:35,350.350 INFO    ] 200
[2026-10-25 22:25:35,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:35,394.394 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:25:35,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:25:35,458.458 INFO    ] No camera update needed
[2026-10-25 22:25:35,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:25:35,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:25:35,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:25:35,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:25:37,523.523 INFO    ] ================================================
[2026-10-25 22:25:37,538.538 INFO    ] Launching Daemon at Sun Oct 25 22:25:37 IST 2026
[2026-10-25 22:25:37,549.549 INFO    ] ================================================
[2026-10-25 22:25:38,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:25:38
[2026-10-25 22:25:38,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:25:39,011.011 INFO    ] Initializing speech engine...
[2026-10-25 22:25:39,018.018 INFO    ] 2026-10-25 22:25:39
[2026-10-25 22:25:39,286.286 INFO    ] 2026-10-25 22:25:39
[2026-10-25 22:25:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:25:39,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:25:39,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:25:39,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:25:39,660.660 INFO    ] time= 25/10/2026 22:25:39
[2026-10-25 22:25:39,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:25:39,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:25:39,784.784 INFO    ] No existing commands found in stream
[2026-10-25 22:25:44,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:25:44,805.805 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 22:25:45,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:25:45,293.293 INFO    ] Checking for system updates...
[2026-10-25 22:25:45,330.330 INFO    ] 200
[2026-10-25 22:25:45,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:45,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:25:45,387.387 INFO    ] No update needed
[2026-10-25 22:25:45,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 22:25:45,427.427 INFO    ] 200
[2026-10-25 22:25:45,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:45,470.470 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:25:45,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:25:45,629.629 INFO    ] No camera update needed
[2026-10-25 22:25:45,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:25:45,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:25:45,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:25:45,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:25:47,685.685 INFO    ] ================================================
[2026-10-25 22:25:47,700.700 INFO    ] Launching Daemon at Sun Oct 25 22:25:47 IST 2026
[2026-10-25 22:25:47,711.711 INFO    ] ================================================
[2026-10-25 22:25:48,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:25:48
[2026-10-25 22:25:48,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:25:49,144.144 INFO    ] Initializing speech engine...
[2026-10-25 22:25:49,158.158 INFO    ] 2026-10-25 22:25:49
[2026-10-25 22:25:49,447.447 INFO    ] 2026-10-25 22:25:49
[2026-10-25 22:25:49,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:25:49,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:25:49,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:25:49,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:25:49,859.859 INFO    ] time= 25/10/2026 22:25:49
[2026-10-25 22:25:49,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:25:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:25:49,944.944 INFO    ] No existing commands found in stream
[2026-10-25 22:25:54,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:25:54,977.977 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 22:25:59,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:25:59,402.402 INFO    ] Checking for system updates...
[2026-10-25 22:25:59,438.438 INFO    ] 200
[2026-10-25 22:25:59,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:59,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:59,501.501 INFO    ] No update needed
[2026-10-25 22:25:59,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 22:25:59,538.538 INFO    ] 200
[2026-10-25 22:25:59,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:25:59,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:25:59,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:25:59,657.657 INFO    ] No camera update needed
[2026-10-25 22:25:59,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:25:59,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:25:59,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:25:59,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:26:01,714.714 INFO    ] ================================================
[2026-10-25 22:26:01,730.730 INFO    ] Launching Daemon at Sun Oct 25 22:26:01 IST 2026
[2026-10-25 22:26:01,746.746 INFO    ] ================================================
[2026-10-25 22:26:02,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:26:02
[2026-10-25 22:26:03,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:26:03,285.285 INFO    ] Initializing speech engine...
[2026-10-25 22:26:03,297.297 INFO    ] 2026-10-25 22:26:03
[2026-10-25 22:26:03,578.578 INFO    ] 2026-10-25 22:26:03
[2026-10-25 22:26:03,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:26:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:26:03,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:26:03,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:26:03,913.913 INFO    ] time= 25/10/2026 22:26:03
[2026-10-25 22:26:03,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:26:03,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:26:04,075.075 INFO    ] No existing commands found in stream
[2026-10-25 22:26:09,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:26:09,103.103 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 22:26:12,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:26:12,659.659 INFO    ] Checking for system updates...
[2026-10-25 22:26:12,699.699 INFO    ] 200
[2026-10-25 22:26:12,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:12,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:12,763.763 INFO    ] No update needed
[2026-10-25 22:26:12,765.765 INFO    ] Checking for camera pi updates...
[2026-10-25 22:26:12,806.806 INFO    ] 200
[2026-10-25 22:26:12,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:12,849.849 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:26:12,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:12,898.898 INFO    ] No camera update needed
[2026-10-25 22:26:12,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:26:12,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:26:12,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:26:12,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:26:14,956.956 INFO    ] ================================================
[2026-10-25 22:26:14,971.971 INFO    ] Launching Daemon at Sun Oct 25 22:26:14 IST 2026
[2026-10-25 22:26:14,982.982 INFO    ] ================================================
[2026-10-25 22:26:15,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:26:15
[2026-10-25 22:26:16,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:26:16,389.389 INFO    ] Initializing speech engine...
[2026-10-25 22:26:16,403.403 INFO    ] 2026-10-25 22:26:16
[2026-10-25 22:26:16,669.669 INFO    ] 2026-10-25 22:26:16
[2026-10-25 22:26:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:26:16,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:26:16,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:26:17,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:26:17,034.034 INFO    ] time= 25/10/2026 22:26:17
[2026-10-25 22:26:17,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:26:17,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:26:17,121.121 INFO    ] No existing commands found in stream
[2026-10-25 22:26:22,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:26:22,136.136 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 22:26:23,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:26:23,664.664 INFO    ] Checking for system updates...
[2026-10-25 22:26:23,706.706 INFO    ] 200
[2026-10-25 22:26:23,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:23,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:23,782.782 INFO    ] No update needed
[2026-10-25 22:26:23,785.785 INFO    ] Checking for camera pi updates...
[2026-10-25 22:26:23,821.821 INFO    ] 200
[2026-10-25 22:26:23,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:23,869.869 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:26:23,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:23,924.924 INFO    ] No camera update needed
[2026-10-25 22:26:23,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:26:23,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:26:23,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:26:23,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:26:25,982.982 INFO    ] ================================================
[2026-10-25 22:26:26,997.997 INFO    ] Launching Daemon at Sun Oct 25 22:26:25 IST 2026
[2026-10-25 22:26:26,008.008 INFO    ] ================================================
[2026-10-25 22:26:26,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:26:26
[2026-10-25 22:26:27,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:26:27,442.442 INFO    ] Initializing speech engine...
[2026-10-25 22:26:27,448.448 INFO    ] 2026-10-25 22:26:27
[2026-10-25 22:26:27,746.746 INFO    ] 2026-10-25 22:26:27
[2026-10-25 22:26:27,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:26:27,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:26:27,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:26:28,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:26:28,144.144 INFO    ] time= 25/10/2026 22:26:28
[2026-10-25 22:26:28,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:26:28,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:26:28,251.251 INFO    ] No existing commands found in stream
[2026-10-25 22:26:33,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:26:33,266.266 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 22:26:35,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:26:35,653.653 INFO    ] Checking for system updates...
[2026-10-25 22:26:35,693.693 INFO    ] 200
[2026-10-25 22:26:35,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:35,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:26:35,761.761 INFO    ] No update needed
[2026-10-25 22:26:35,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 22:26:35,803.803 INFO    ] 200
[2026-10-25 22:26:35,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:35,848.848 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:26:35,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:26:35,898.898 INFO    ] No camera update needed
[2026-10-25 22:26:35,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:26:35,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:26:35,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:26:35,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:26:37,956.956 INFO    ] ================================================
[2026-10-25 22:26:37,971.971 INFO    ] Launching Daemon at Sun Oct 25 22:26:37 IST 2026
[2026-10-25 22:26:37,981.981 INFO    ] ================================================
[2026-10-25 22:26:38,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:26:38
[2026-10-25 22:26:39,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:26:39,487.487 INFO    ] Initializing speech engine...
[2026-10-25 22:26:39,507.507 INFO    ] 2026-10-25 22:26:39
[2026-10-25 22:26:39,781.781 INFO    ] 2026-10-25 22:26:39
[2026-10-25 22:26:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:26:40,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:26:40,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:26:40,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:26:40,287.287 INFO    ] time= 25/10/2026 22:26:40
[2026-10-25 22:26:40,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:26:40,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:26:40,419.419 INFO    ] No existing commands found in stream
[2026-10-25 22:26:45,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:26:45,435.435 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 22:26:49,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:26:49,680.680 INFO    ] Checking for system updates...
[2026-10-25 22:26:49,717.717 INFO    ] 200
[2026-10-25 22:26:49,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:49,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:49,783.783 INFO    ] No update needed
[2026-10-25 22:26:49,786.786 INFO    ] Checking for camera pi updates...
[2026-10-25 22:26:49,826.826 INFO    ] 200
[2026-10-25 22:26:49,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:26:49,871.871 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:26:49,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:26:49,931.931 INFO    ] No camera update needed
[2026-10-25 22:26:49,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:26:49,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:26:49,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:26:49,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:26:51,989.989 INFO    ] ================================================
[2026-10-25 22:26:52,004.004 INFO    ] Launching Daemon at Sun Oct 25 22:26:51 IST 2026
[2026-10-25 22:26:52,014.014 INFO    ] ================================================
[2026-10-25 22:26:52,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:26:52
[2026-10-25 22:26:53,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:26:53,411.411 INFO    ] Initializing speech engine...
[2026-10-25 22:26:53,425.425 INFO    ] 2026-10-25 22:26:53
[2026-10-25 22:26:53,690.690 INFO    ] 2026-10-25 22:26:53
[2026-10-25 22:26:53,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:26:53,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:26:53,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:26:54,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:26:54,140.140 INFO    ] time= 25/10/2026 22:26:54
[2026-10-25 22:26:54,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:26:54,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:26:54,319.319 INFO    ] No existing commands found in stream
[2026-10-25 22:26:59,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:26:59,334.334 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 22:27:03,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:27:03,263.263 INFO    ] Checking for system updates...
[2026-10-25 22:27:03,312.312 INFO    ] 200
[2026-10-25 22:27:03,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:03,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:03,379.379 INFO    ] No update needed
[2026-10-25 22:27:03,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 22:27:03,417.417 INFO    ] 200
[2026-10-25 22:27:03,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:03,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:27:03,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:03,520.520 INFO    ] No camera update needed
[2026-10-25 22:27:03,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:27:03,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:27:03,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:27:03,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:27:05,579.579 INFO    ] ================================================
[2026-10-25 22:27:05,594.594 INFO    ] Launching Daemon at Sun Oct 25 22:27:05 IST 2026
[2026-10-25 22:27:05,605.605 INFO    ] ================================================
[2026-10-25 22:27:06,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:27:06
[2026-10-25 22:27:06,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:27:07,038.038 INFO    ] Initializing speech engine...
[2026-10-25 22:27:07,047.047 INFO    ] 2026-10-25 22:27:07
[2026-10-25 22:27:07,343.343 INFO    ] 2026-10-25 22:27:07
[2026-10-25 22:27:07,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:27:07,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:27:07,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:27:07,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:27:07,759.759 INFO    ] time= 25/10/2026 22:27:07
[2026-10-25 22:27:07,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:27:07,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:27:07,916.916 INFO    ] No existing commands found in stream
[2026-10-25 22:27:12,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:27:12,944.944 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 22:27:13,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:27:13,805.805 INFO    ] Checking for system updates...
[2026-10-25 22:27:13,841.841 INFO    ] 200
[2026-10-25 22:27:13,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:13,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:13,910.910 INFO    ] No update needed
[2026-10-25 22:27:13,913.913 INFO    ] Checking for camera pi updates...
[2026-10-25 22:27:13,947.947 INFO    ] 200
[2026-10-25 22:27:13,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:13,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:27:14,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:14,054.054 INFO    ] No camera update needed
[2026-10-25 22:27:14,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:27:14,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:27:14,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:27:14,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:27:16,112.112 INFO    ] ================================================
[2026-10-25 22:27:16,128.128 INFO    ] Launching Daemon at Sun Oct 25 22:27:16 IST 2026
[2026-10-25 22:27:16,139.139 INFO    ] ================================================
[2026-10-25 22:27:16,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:27:16
[2026-10-25 22:27:17,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:27:17,553.553 INFO    ] Initializing speech engine...
[2026-10-25 22:27:17,562.562 INFO    ] 2026-10-25 22:27:17
[2026-10-25 22:27:17,809.809 INFO    ] 2026-10-25 22:27:17
[2026-10-25 22:27:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:27:18,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:27:18,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:27:18,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:27:18,175.175 INFO    ] time= 25/10/2026 22:27:18
[2026-10-25 22:27:18,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:27:18,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:27:18,341.341 INFO    ] No existing commands found in stream
[2026-10-25 22:27:23,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:27:23,374.374 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 22:27:27,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:27:27,722.722 INFO    ] Checking for system updates...
[2026-10-25 22:27:27,758.758 INFO    ] 200
[2026-10-25 22:27:27,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:27,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:27,815.815 INFO    ] No update needed
[2026-10-25 22:27:27,818.818 INFO    ] Checking for camera pi updates...
[2026-10-25 22:27:27,851.851 INFO    ] 200
[2026-10-25 22:27:27,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:27,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:27:27,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:27,934.934 INFO    ] No camera update needed
[2026-10-25 22:27:27,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:27:27,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:27:27,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:27:27,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:27:29,991.991 INFO    ] ================================================
[2026-10-25 22:27:30,007.007 INFO    ] Launching Daemon at Sun Oct 25 22:27:30 IST 2026
[2026-10-25 22:27:30,018.018 INFO    ] ================================================
[2026-10-25 22:27:30,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:27:30
[2026-10-25 22:27:31,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:27:31,426.426 INFO    ] Initializing speech engine...
[2026-10-25 22:27:31,445.445 INFO    ] 2026-10-25 22:27:31
[2026-10-25 22:27:31,737.737 INFO    ] 2026-10-25 22:27:31
[2026-10-25 22:27:31,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:27:31,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:27:32,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:27:32,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:27:32,173.173 INFO    ] time= 25/10/2026 22:27:32
[2026-10-25 22:27:32,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:27:32,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:27:32,327.327 INFO    ] No existing commands found in stream
[2026-10-25 22:27:37,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:27:37,361.361 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 22:27:39,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:27:39,456.456 INFO    ] Checking for system updates...
[2026-10-25 22:27:39,492.492 INFO    ] 200
[2026-10-25 22:27:39,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:39,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:39,561.561 INFO    ] No update needed
[2026-10-25 22:27:39,563.563 INFO    ] Checking for camera pi updates...
[2026-10-25 22:27:39,598.598 INFO    ] 200
[2026-10-25 22:27:39,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:39,642.642 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:27:39,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:27:39,695.695 INFO    ] No camera update needed
[2026-10-25 22:27:39,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:27:39,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:27:39,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:27:39,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:27:41,751.751 INFO    ] ================================================
[2026-10-25 22:27:41,766.766 INFO    ] Launching Daemon at Sun Oct 25 22:27:41 IST 2026
[2026-10-25 22:27:41,777.777 INFO    ] ================================================
[2026-10-25 22:27:42,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:27:42
[2026-10-25 22:27:43,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:27:43,340.340 INFO    ] Initializing speech engine...
[2026-10-25 22:27:43,354.354 INFO    ] 2026-10-25 22:27:43
[2026-10-25 22:27:43,634.634 INFO    ] 2026-10-25 22:27:43
[2026-10-25 22:27:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:27:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:27:43,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:27:44,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:27:44,169.169 INFO    ] time= 25/10/2026 22:27:44
[2026-10-25 22:27:44,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:27:44,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:27:44,309.309 INFO    ] No existing commands found in stream
[2026-10-25 22:27:49,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:27:49,338.338 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 22:27:53,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:27:53,223.223 INFO    ] Checking for system updates...
[2026-10-25 22:27:53,260.260 INFO    ] 200
[2026-10-25 22:27:53,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:53,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:27:53,319.319 INFO    ] No update needed
[2026-10-25 22:27:53,322.322 INFO    ] Checking for camera pi updates...
[2026-10-25 22:27:53,361.361 INFO    ] 200
[2026-10-25 22:27:53,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:27:53,411.411 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:27:53,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:27:53,574.574 INFO    ] No camera update needed
[2026-10-25 22:27:53,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:27:53,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:27:53,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:27:53,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:27:55,632.632 INFO    ] ================================================
[2026-10-25 22:27:55,647.647 INFO    ] Launching Daemon at Sun Oct 25 22:27:55 IST 2026
[2026-10-25 22:27:55,658.658 INFO    ] ================================================
[2026-10-25 22:27:56,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:27:56
[2026-10-25 22:27:56,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:27:57,080.080 INFO    ] Initializing speech engine...
[2026-10-25 22:27:57,086.086 INFO    ] 2026-10-25 22:27:57
[2026-10-25 22:27:57,381.381 INFO    ] 2026-10-25 22:27:57
[2026-10-25 22:27:57,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:27:57,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:27:57,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:27:57,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:27:57,753.753 INFO    ] time= 25/10/2026 22:27:57
[2026-10-25 22:27:57,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:27:57,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:27:57,920.920 INFO    ] No existing commands found in stream
[2026-10-25 22:28:02,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:28:02,954.954 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 22:28:05,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:28:06,002.002 INFO    ] Checking for system updates...
[2026-10-25 22:28:06,043.043 INFO    ] 200
[2026-10-25 22:28:06,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:06,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:28:06,100.100 INFO    ] No update needed
[2026-10-25 22:28:06,103.103 INFO    ] Checking for camera pi updates...
[2026-10-25 22:28:06,140.140 INFO    ] 200
[2026-10-25 22:28:06,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:06,182.182 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:28:06,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:28:06,236.236 INFO    ] No camera update needed
[2026-10-25 22:28:06,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:28:06,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:28:06,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:28:06,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:28:08,292.292 INFO    ] ================================================
[2026-10-25 22:28:08,308.308 INFO    ] Launching Daemon at Sun Oct 25 22:28:08 IST 2026
[2026-10-25 22:28:08,320.320 INFO    ] ================================================
[2026-10-25 22:28:08,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:28:08
[2026-10-25 22:28:09,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:28:09,813.813 INFO    ] Initializing speech engine...
[2026-10-25 22:28:09,820.820 INFO    ] 2026-10-25 22:28:09
[2026-10-25 22:28:10,119.119 INFO    ] 2026-10-25 22:28:10
[2026-10-25 22:28:10,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:28:10,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:28:10,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:28:12,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:28:12,373.373 INFO    ] time= 25/10/2026 22:28:12
[2026-10-25 22:28:12,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:28:12,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:28:12,445.445 INFO    ] No existing commands found in stream
[2026-10-25 22:28:17,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:28:17,457.457 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 22:28:18,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:28:18,366.366 INFO    ] Checking for system updates...
[2026-10-25 22:28:18,405.405 INFO    ] 200
[2026-10-25 22:28:18,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:18,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:28:18,465.465 INFO    ] No update needed
[2026-10-25 22:28:18,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 22:28:18,502.502 INFO    ] 200
[2026-10-25 22:28:18,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:18,545.545 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:28:18,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:28:18,596.596 INFO    ] No camera update needed
[2026-10-25 22:28:18,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:28:18,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:28:18,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:28:18,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:28:20,651.651 INFO    ] ================================================
[2026-10-25 22:28:20,665.665 INFO    ] Launching Daemon at Sun Oct 25 22:28:20 IST 2026
[2026-10-25 22:28:20,676.676 INFO    ] ================================================
[2026-10-25 22:28:21,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:28:21
[2026-10-25 22:28:21,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:28:22,133.133 INFO    ] Initializing speech engine...
[2026-10-25 22:28:22,142.142 INFO    ] 2026-10-25 22:28:22
[2026-10-25 22:28:22,404.404 INFO    ] 2026-10-25 22:28:22
[2026-10-25 22:28:22,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:28:22,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:28:22,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:28:22,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:28:22,948.948 INFO    ] time= 25/10/2026 22:28:22
[2026-10-25 22:28:22,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:28:22,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:28:23,083.083 INFO    ] No existing commands found in stream
[2026-10-25 22:28:28,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:28:28,113.113 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-25 22:28:30,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:28:30,602.602 INFO    ] Checking for system updates...
[2026-10-25 22:28:30,639.639 INFO    ] 200
[2026-10-25 22:28:30,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:30,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:30,704.704 INFO    ] No update needed
[2026-10-25 22:28:30,707.707 INFO    ] Checking for camera pi updates...
[2026-10-25 22:28:30,740.740 INFO    ] 200
[2026-10-25 22:28:30,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:30,784.784 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:28:30,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:30,847.847 INFO    ] No camera update needed
[2026-10-25 22:28:30,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:28:30,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:28:30,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:28:30,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:28:32,904.904 INFO    ] ================================================
[2026-10-25 22:28:32,919.919 INFO    ] Launching Daemon at Sun Oct 25 22:28:32 IST 2026
[2026-10-25 22:28:32,931.931 INFO    ] ================================================
[2026-10-25 22:28:33,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:28:33
[2026-10-25 22:28:34,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:28:34,330.330 INFO    ] Initializing speech engine...
[2026-10-25 22:28:34,338.338 INFO    ] 2026-10-25 22:28:34
[2026-10-25 22:28:34,609.609 INFO    ] 2026-10-25 22:28:34
[2026-10-25 22:28:34,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:28:34,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:28:34,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:28:35,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:28:35,474.474 INFO    ] time= 25/10/2026 22:28:35
[2026-10-25 22:28:35,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:28:35,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:28:35,698.698 INFO    ] No existing commands found in stream
[2026-10-25 22:28:40,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:28:40,731.731 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-25 22:28:43,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:28:43,651.651 INFO    ] Checking for system updates...
[2026-10-25 22:28:43,688.688 INFO    ] 200
[2026-10-25 22:28:43,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:43,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:43,753.753 INFO    ] No update needed
[2026-10-25 22:28:43,756.756 INFO    ] Checking for camera pi updates...
[2026-10-25 22:28:43,791.791 INFO    ] 200
[2026-10-25 22:28:43,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:43,838.838 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:28:43,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:43,889.889 INFO    ] No camera update needed
[2026-10-25 22:28:43,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:28:43,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:28:43,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:28:43,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:28:45,944.944 INFO    ] ================================================
[2026-10-25 22:28:45,959.959 INFO    ] Launching Daemon at Sun Oct 25 22:28:45 IST 2026
[2026-10-25 22:28:45,970.970 INFO    ] ================================================
[2026-10-25 22:28:46,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:28:46
[2026-10-25 22:28:47,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:28:47,391.391 INFO    ] Initializing speech engine...
[2026-10-25 22:28:47,409.409 INFO    ] 2026-10-25 22:28:47
[2026-10-25 22:28:47,658.658 INFO    ] 2026-10-25 22:28:47
[2026-10-25 22:28:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:28:47,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:28:47,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:28:48,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:28:48,127.127 INFO    ] time= 25/10/2026 22:28:48
[2026-10-25 22:28:48,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:28:48,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:28:48,286.286 INFO    ] No existing commands found in stream
[2026-10-25 22:28:53,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:28:53,300.300 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-25 22:28:56,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:28:56,270.270 INFO    ] Checking for system updates...
[2026-10-25 22:28:56,306.306 INFO    ] 200
[2026-10-25 22:28:56,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:56,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:56,371.371 INFO    ] No update needed
[2026-10-25 22:28:56,374.374 INFO    ] Checking for camera pi updates...
[2026-10-25 22:28:56,408.408 INFO    ] 200
[2026-10-25 22:28:56,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:28:56,452.452 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:28:56,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:28:56,520.520 INFO    ] No camera update needed
[2026-10-25 22:28:56,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:28:56,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:28:56,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:28:56,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:28:58,574.574 INFO    ] ================================================
[2026-10-25 22:28:58,591.591 INFO    ] Launching Daemon at Sun Oct 25 22:28:58 IST 2026
[2026-10-25 22:28:58,602.602 INFO    ] ================================================
[2026-10-25 22:28:59,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:28:59
[2026-10-25 22:28:59,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:00,122.122 INFO    ] Initializing speech engine...
[2026-10-25 22:29:00,130.130 INFO    ] 2026-10-25 22:29:00
[2026-10-25 22:29:00,379.379 INFO    ] 2026-10-25 22:29:00
[2026-10-25 22:29:00,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:00,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:00,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:00,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:00,838.838 INFO    ] time= 25/10/2026 22:29:00
[2026-10-25 22:29:00,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:00,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:01,005.005 INFO    ] No existing commands found in stream
[2026-10-25 22:29:06,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:29:06,020.020 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 22:29:07,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:29:07,154.154 INFO    ] Checking for system updates...
[2026-10-25 22:29:07,193.193 INFO    ] 200
[2026-10-25 22:29:07,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:07,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:07,257.257 INFO    ] No update needed
[2026-10-25 22:29:07,259.259 INFO    ] Checking for camera pi updates...
[2026-10-25 22:29:07,296.296 INFO    ] 200
[2026-10-25 22:29:07,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:07,339.339 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:29:07,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:07,404.404 INFO    ] No camera update needed
[2026-10-25 22:29:07,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:29:07,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:29:07,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:29:07,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:29:09,461.461 INFO    ] ================================================
[2026-10-25 22:29:09,477.477 INFO    ] Launching Daemon at Sun Oct 25 22:29:09 IST 2026
[2026-10-25 22:29:09,488.488 INFO    ] ================================================
[2026-10-25 22:29:10,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:29:10
[2026-10-25 22:29:10,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:10,933.933 INFO    ] Initializing speech engine...
[2026-10-25 22:29:10,958.958 INFO    ] 2026-10-25 22:29:10
[2026-10-25 22:29:11,229.229 INFO    ] 2026-10-25 22:29:11
[2026-10-25 22:29:11,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:12,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:12,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:12,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:12,755.755 INFO    ] time= 25/10/2026 22:29:12
[2026-10-25 22:29:12,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:12,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:12,819.819 INFO    ] No existing commands found in stream
[2026-10-25 22:29:17,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:29:17,833.833 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-25 22:29:18,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:29:18,682.682 INFO    ] Checking for system updates...
[2026-10-25 22:29:18,722.722 INFO    ] 200
[2026-10-25 22:29:18,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:18,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:18,781.781 INFO    ] No update needed
[2026-10-25 22:29:18,784.784 INFO    ] Checking for camera pi updates...
[2026-10-25 22:29:18,824.824 INFO    ] 200
[2026-10-25 22:29:18,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:18,872.872 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:29:18,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:18,933.933 INFO    ] No camera update needed
[2026-10-25 22:29:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:29:18,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:29:18,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:29:18,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:29:20,991.991 INFO    ] ================================================
[2026-10-25 22:29:21,006.006 INFO    ] Launching Daemon at Sun Oct 25 22:29:21 IST 2026
[2026-10-25 22:29:21,017.017 INFO    ] ================================================
[2026-10-25 22:29:21,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:29:21
[2026-10-25 22:29:22,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:22,615.615 INFO    ] Initializing speech engine...
[2026-10-25 22:29:22,629.629 INFO    ] 2026-10-25 22:29:22
[2026-10-25 22:29:22,904.904 INFO    ] 2026-10-25 22:29:22
[2026-10-25 22:29:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:23,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:23,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:23,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:23,436.436 INFO    ] time= 25/10/2026 22:29:23
[2026-10-25 22:29:23,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:23,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:23,584.584 INFO    ] No existing commands found in stream
[2026-10-25 22:29:28,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:29:28,608.608 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-25 22:29:29,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:29:29,063.063 INFO    ] Checking for system updates...
[2026-10-25 22:29:29,104.104 INFO    ] 200
[2026-10-25 22:29:29,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:29,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:29:29,166.166 INFO    ] No update needed
[2026-10-25 22:29:29,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 22:29:29,205.205 INFO    ] 200
[2026-10-25 22:29:29,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:29,250.250 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:29:29,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:29:29,303.303 INFO    ] No camera update needed
[2026-10-25 22:29:29,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:29:29,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:29:29,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:29:29,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:29:31,367.367 INFO    ] ================================================
[2026-10-25 22:29:31,382.382 INFO    ] Launching Daemon at Sun Oct 25 22:29:31 IST 2026
[2026-10-25 22:29:31,392.392 INFO    ] ================================================
[2026-10-25 22:29:32,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:29:32
[2026-10-25 22:29:32,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:33,074.074 INFO    ] Initializing speech engine...
[2026-10-25 22:29:33,085.085 INFO    ] 2026-10-25 22:29:33
[2026-10-25 22:29:33,369.369 INFO    ] 2026-10-25 22:29:33
[2026-10-25 22:29:33,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:33,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:33,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:33,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:33,844.844 INFO    ] time= 25/10/2026 22:29:33
[2026-10-25 22:29:33,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:33,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:34,061.061 INFO    ] No existing commands found in stream
[2026-10-25 22:29:39,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:29:39,092.092 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 22:29:40,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:29:40,554.554 INFO    ] Checking for system updates...
[2026-10-25 22:29:40,591.591 INFO    ] 200
[2026-10-25 22:29:40,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:40,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:29:40,658.658 INFO    ] No update needed
[2026-10-25 22:29:40,661.661 INFO    ] Checking for camera pi updates...
[2026-10-25 22:29:40,699.699 INFO    ] 200
[2026-10-25 22:29:40,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:40,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:29:40,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:29:40,795.795 INFO    ] No camera update needed
[2026-10-25 22:29:40,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:29:40,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:29:40,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:29:40,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:29:42,856.856 INFO    ] ================================================
[2026-10-25 22:29:42,871.871 INFO    ] Launching Daemon at Sun Oct 25 22:29:42 IST 2026
[2026-10-25 22:29:42,882.882 INFO    ] ================================================
[2026-10-25 22:29:43,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:29:43
[2026-10-25 22:29:44,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:44,293.293 INFO    ] Initializing speech engine...
[2026-10-25 22:29:44,317.317 INFO    ] 2026-10-25 22:29:44
[2026-10-25 22:29:44,571.571 INFO    ] 2026-10-25 22:29:44
[2026-10-25 22:29:44,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:44,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:44,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:44,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:44,948.948 INFO    ] time= 25/10/2026 22:29:44
[2026-10-25 22:29:44,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:45,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:45,122.122 INFO    ] No existing commands found in stream
[2026-10-25 22:29:50,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:29:50,150.150 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 22:29:53,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:29:53,607.607 INFO    ] Checking for system updates...
[2026-10-25 22:29:53,644.644 INFO    ] 200
[2026-10-25 22:29:53,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:53,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:53,707.707 INFO    ] No update needed
[2026-10-25 22:29:53,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 22:29:53,746.746 INFO    ] 200
[2026-10-25 22:29:53,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:29:53,793.793 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:29:53,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:29:53,841.841 INFO    ] No camera update needed
[2026-10-25 22:29:53,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:29:53,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:29:53,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:29:53,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:29:55,902.902 INFO    ] ================================================
[2026-10-25 22:29:55,917.917 INFO    ] Launching Daemon at Sun Oct 25 22:29:55 IST 2026
[2026-10-25 22:29:55,928.928 INFO    ] ================================================
[2026-10-25 22:29:56,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:29:56
[2026-10-25 22:29:57,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:29:57,375.375 INFO    ] Initializing speech engine...
[2026-10-25 22:29:57,384.384 INFO    ] 2026-10-25 22:29:57
[2026-10-25 22:29:57,640.640 INFO    ] 2026-10-25 22:29:57
[2026-10-25 22:29:57,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:29:57,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:29:57,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:29:58,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:29:58,098.098 INFO    ] time= 25/10/2026 22:29:58
[2026-10-25 22:29:58,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:29:58,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:29:58,245.245 INFO    ] No existing commands found in stream
[2026-10-25 22:30:03,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:30:03,256.256 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-25 22:30:08,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:30:08,367.367 INFO    ] Checking for system updates...
[2026-10-25 22:30:08,421.421 INFO    ] 200
[2026-10-25 22:30:08,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:08,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:30:08,499.499 INFO    ] No update needed
[2026-10-25 22:30:08,501.501 INFO    ] Checking for camera pi updates...
[2026-10-25 22:30:08,540.540 INFO    ] 200
[2026-10-25 22:30:08,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:08,584.584 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:30:08,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:30:08,639.639 INFO    ] No camera update needed
[2026-10-25 22:30:08,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:30:08,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:30:08,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:30:08,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:30:10,696.696 INFO    ] ================================================
[2026-10-25 22:30:10,711.711 INFO    ] Launching Daemon at Sun Oct 25 22:30:10 IST 2026
[2026-10-25 22:30:10,722.722 INFO    ] ================================================
[2026-10-25 22:30:11,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:30:11
[2026-10-25 22:30:11,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:30:12,205.205 INFO    ] Initializing speech engine...
[2026-10-25 22:30:12,221.221 INFO    ] 2026-10-25 22:30:12
[2026-10-25 22:30:12,476.476 INFO    ] 2026-10-25 22:30:12
[2026-10-25 22:30:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:30:13,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:30:13,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:30:13,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:30:13,604.604 INFO    ] time= 25/10/2026 22:30:13
[2026-10-25 22:30:13,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:30:13,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:30:13,666.666 INFO    ] No existing commands found in stream
[2026-10-25 22:30:18,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:30:18,678.678 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 22:30:21,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:30:21,999.999 INFO    ] Checking for system updates...
[2026-10-25 22:30:22,039.039 INFO    ] 200
[2026-10-25 22:30:22,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:22,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:22,104.104 INFO    ] No update needed
[2026-10-25 22:30:22,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 22:30:22,140.140 INFO    ] 200
[2026-10-25 22:30:22,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:22,184.184 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:30:22,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:22,241.241 INFO    ] No camera update needed
[2026-10-25 22:30:22,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:30:22,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:30:22,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:30:22,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:30:24,295.295 INFO    ] ================================================
[2026-10-25 22:30:24,310.310 INFO    ] Launching Daemon at Sun Oct 25 22:30:24 IST 2026
[2026-10-25 22:30:24,321.321 INFO    ] ================================================
[2026-10-25 22:30:24,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:30:24
[2026-10-25 22:30:25,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:30:25,976.976 INFO    ] Initializing speech engine...
[2026-10-25 22:30:25,983.983 INFO    ] 2026-10-25 22:30:25
[2026-10-25 22:30:26,254.254 INFO    ] 2026-10-25 22:30:26
[2026-10-25 22:30:26,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:30:26,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:30:26,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:30:26,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:30:26,631.631 INFO    ] time= 25/10/2026 22:30:26
[2026-10-25 22:30:26,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:30:26,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:30:26,807.807 INFO    ] No existing commands found in stream
[2026-10-25 22:30:31,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:30:31,835.835 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 22:30:34,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:30:34,526.526 INFO    ] Checking for system updates...
[2026-10-25 22:30:34,562.562 INFO    ] 200
[2026-10-25 22:30:34,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:34,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:34,622.622 INFO    ] No update needed
[2026-10-25 22:30:34,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 22:30:34,658.658 INFO    ] 200
[2026-10-25 22:30:34,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:34,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:30:34,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:34,755.755 INFO    ] No camera update needed
[2026-10-25 22:30:34,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:30:34,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:30:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:30:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:30:36,809.809 INFO    ] ================================================
[2026-10-25 22:30:36,824.824 INFO    ] Launching Daemon at Sun Oct 25 22:30:36 IST 2026
[2026-10-25 22:30:36,835.835 INFO    ] ================================================
[2026-10-25 22:30:37,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:30:37
[2026-10-25 22:30:37,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:30:38,239.239 INFO    ] Initializing speech engine...
[2026-10-25 22:30:38,262.262 INFO    ] 2026-10-25 22:30:38
[2026-10-25 22:30:38,513.513 INFO    ] 2026-10-25 22:30:38
[2026-10-25 22:30:38,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:30:38,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:30:38,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:30:38,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:30:38,993.993 INFO    ] time= 25/10/2026 22:30:38
[2026-10-25 22:30:39,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:30:39,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:30:39,131.131 INFO    ] No existing commands found in stream
[2026-10-25 22:30:44,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:30:44,145.145 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 22:30:48,508.508 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:30:48,510.510 INFO    ] Checking for system updates...
[2026-10-25 22:30:48,546.546 INFO    ] 200
[2026-10-25 22:30:48,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:48,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:48,612.612 INFO    ] No update needed
[2026-10-25 22:30:48,615.615 INFO    ] Checking for camera pi updates...
[2026-10-25 22:30:48,649.649 INFO    ] 200
[2026-10-25 22:30:48,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:30:48,697.697 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:30:48,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:30:48,750.750 INFO    ] No camera update needed
[2026-10-25 22:30:48,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:30:48,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:30:48,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:30:48,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:30:50,804.804 INFO    ] ================================================
[2026-10-25 22:30:50,819.819 INFO    ] Launching Daemon at Sun Oct 25 22:30:50 IST 2026
[2026-10-25 22:30:50,830.830 INFO    ] ================================================
[2026-10-25 22:30:51,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:30:51
[2026-10-25 22:30:51,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:30:52,247.247 INFO    ] Initializing speech engine...
[2026-10-25 22:30:52,255.255 INFO    ] 2026-10-25 22:30:52
[2026-10-25 22:30:52,502.502 INFO    ] 2026-10-25 22:30:52
[2026-10-25 22:30:52,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:30:52,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:30:52,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:30:52,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:30:52,867.867 INFO    ] time= 25/10/2026 22:30:52
[2026-10-25 22:30:52,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:30:52,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:30:53,058.058 INFO    ] No existing commands found in stream
[2026-10-25 22:30:58,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:30:58,079.079 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-25 22:31:01,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:31:01,521.521 INFO    ] Checking for system updates...
[2026-10-25 22:31:01,573.573 INFO    ] 200
[2026-10-25 22:31:01,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:01,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:01,707.707 INFO    ] No update needed
[2026-10-25 22:31:01,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 22:31:01,759.759 INFO    ] 200
[2026-10-25 22:31:01,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:01,815.815 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:31:01,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:01,878.878 INFO    ] No camera update needed
[2026-10-25 22:31:01,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:31:01,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:31:01,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:31:01,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:31:03,938.938 INFO    ] ================================================
[2026-10-25 22:31:03,954.954 INFO    ] Launching Daemon at Sun Oct 25 22:31:03 IST 2026
[2026-10-25 22:31:03,964.964 INFO    ] ================================================
[2026-10-25 22:31:04,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:31:04
[2026-10-25 22:31:05,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:31:05,377.377 INFO    ] Initializing speech engine...
[2026-10-25 22:31:05,507.507 INFO    ] 2026-10-25 22:31:05
[2026-10-25 22:31:05,826.826 INFO    ] 2026-10-25 22:31:05
[2026-10-25 22:31:05,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:31:06,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:31:06,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:31:06,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:31:06,271.271 INFO    ] time= 25/10/2026 22:31:06
[2026-10-25 22:31:06,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:31:06,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:31:06,409.409 INFO    ] No existing commands found in stream
[2026-10-25 22:31:11,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:31:11,441.441 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 22:31:13,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:31:13,156.156 INFO    ] Checking for system updates...
[2026-10-25 22:31:13,193.193 INFO    ] 200
[2026-10-25 22:31:13,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:13,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:13,263.263 INFO    ] No update needed
[2026-10-25 22:31:13,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 22:31:13,301.301 INFO    ] 200
[2026-10-25 22:31:13,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:13,352.352 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:31:13,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:13,428.428 INFO    ] No camera update needed
[2026-10-25 22:31:13,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:31:13,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:31:13,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:31:13,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:31:15,489.489 INFO    ] ================================================
[2026-10-25 22:31:15,504.504 INFO    ] Launching Daemon at Sun Oct 25 22:31:15 IST 2026
[2026-10-25 22:31:15,516.516 INFO    ] ================================================
[2026-10-25 22:31:16,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:31:16
[2026-10-25 22:31:16,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:31:16,964.964 INFO    ] Initializing speech engine...
[2026-10-25 22:31:16,973.973 INFO    ] 2026-10-25 22:31:16
[2026-10-25 22:31:17,223.223 INFO    ] 2026-10-25 22:31:17
[2026-10-25 22:31:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:31:17,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:31:17,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:31:17,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:31:17,785.785 INFO    ] time= 25/10/2026 22:31:17
[2026-10-25 22:31:17,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:31:17,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:31:17,957.957 INFO    ] No existing commands found in stream
[2026-10-25 22:31:22,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:31:22,989.989 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 22:31:26,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:31:26,726.726 INFO    ] Checking for system updates...
[2026-10-25 22:31:26,769.769 INFO    ] 200
[2026-10-25 22:31:26,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:26,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:31:26,829.829 INFO    ] No update needed
[2026-10-25 22:31:26,832.832 INFO    ] Checking for camera pi updates...
[2026-10-25 22:31:26,867.867 INFO    ] 200
[2026-10-25 22:31:26,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:26,919.919 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:31:26,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:31:26,978.978 INFO    ] No camera update needed
[2026-10-25 22:31:26,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:31:26,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:31:26,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:31:26,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:31:29,038.038 INFO    ] ================================================
[2026-10-25 22:31:29,057.057 INFO    ] Launching Daemon at Sun Oct 25 22:31:29 IST 2026
[2026-10-25 22:31:29,071.071 INFO    ] ================================================
[2026-10-25 22:31:29,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:31:29
[2026-10-25 22:31:30,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:31:30,555.555 INFO    ] Initializing speech engine...
[2026-10-25 22:31:30,563.563 INFO    ] 2026-10-25 22:31:30
[2026-10-25 22:31:30,815.815 INFO    ] 2026-10-25 22:31:30
[2026-10-25 22:31:30,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:31:31,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:31:31,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:31:31,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:31:31,196.196 INFO    ] time= 25/10/2026 22:31:31
[2026-10-25 22:31:31,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:31:31,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:31:31,324.324 INFO    ] No existing commands found in stream
[2026-10-25 22:31:36,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:31:36,339.339 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 22:31:38,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:31:38,457.457 INFO    ] Checking for system updates...
[2026-10-25 22:31:38,495.495 INFO    ] 200
[2026-10-25 22:31:38,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:38,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:38,556.556 INFO    ] No update needed
[2026-10-25 22:31:38,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 22:31:38,594.594 INFO    ] 200
[2026-10-25 22:31:38,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:38,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:31:38,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:38,757.757 INFO    ] No camera update needed
[2026-10-25 22:31:38,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:31:38,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:31:38,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:31:38,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:31:40,818.818 INFO    ] ================================================
[2026-10-25 22:31:40,833.833 INFO    ] Launching Daemon at Sun Oct 25 22:31:40 IST 2026
[2026-10-25 22:31:40,845.845 INFO    ] ================================================
[2026-10-25 22:31:41,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:31:41
[2026-10-25 22:31:42,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:31:42,319.319 INFO    ] Initializing speech engine...
[2026-10-25 22:31:42,326.326 INFO    ] 2026-10-25 22:31:42
[2026-10-25 22:31:42,587.587 INFO    ] 2026-10-25 22:31:42
[2026-10-25 22:31:42,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:31:42,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:31:42,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:31:43,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:31:43,033.033 INFO    ] time= 25/10/2026 22:31:43
[2026-10-25 22:31:43,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:31:43,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:31:43,214.214 INFO    ] No existing commands found in stream
[2026-10-25 22:31:48,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:31:48,229.229 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-25 22:31:50,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:31:50,757.757 INFO    ] Checking for system updates...
[2026-10-25 22:31:50,793.793 INFO    ] 200
[2026-10-25 22:31:50,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:50,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:50,851.851 INFO    ] No update needed
[2026-10-25 22:31:50,854.854 INFO    ] Checking for camera pi updates...
[2026-10-25 22:31:50,892.892 INFO    ] 200
[2026-10-25 22:31:50,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:31:50,936.936 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:31:50,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:31:50,997.997 INFO    ] No camera update needed
[2026-10-25 22:31:50,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:31:51,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:31:51,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:31:51,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:31:53,054.054 INFO    ] ================================================
[2026-10-25 22:31:53,070.070 INFO    ] Launching Daemon at Sun Oct 25 22:31:53 IST 2026
[2026-10-25 22:31:53,081.081 INFO    ] ================================================
[2026-10-25 22:31:53,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:31:53
[2026-10-25 22:31:54,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:31:54,745.745 INFO    ] Initializing speech engine...
[2026-10-25 22:31:54,754.754 INFO    ] 2026-10-25 22:31:54
[2026-10-25 22:31:55,051.051 INFO    ] 2026-10-25 22:31:55
[2026-10-25 22:31:55,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:31:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:31:55,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:31:55,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:31:55,511.511 INFO    ] time= 25/10/2026 22:31:55
[2026-10-25 22:31:55,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:31:55,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:31:55,650.650 INFO    ] No existing commands found in stream
[2026-10-25 22:32:00,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:00,665.665 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 22:32:04,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:32:04,153.153 INFO    ] Checking for system updates...
[2026-10-25 22:32:04,190.190 INFO    ] 200
[2026-10-25 22:32:04,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:04,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:04,249.249 INFO    ] No update needed
[2026-10-25 22:32:04,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 22:32:04,286.286 INFO    ] 200
[2026-10-25 22:32:04,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:04,333.333 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:32:04,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:04,499.499 INFO    ] No camera update needed
[2026-10-25 22:32:04,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:32:04,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:32:04,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:32:04,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:32:06,554.554 INFO    ] ================================================
[2026-10-25 22:32:06,570.570 INFO    ] Launching Daemon at Sun Oct 25 22:32:06 IST 2026
[2026-10-25 22:32:06,581.581 INFO    ] ================================================
[2026-10-25 22:32:07,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:32:07
[2026-10-25 22:32:07,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:32:08,139.139 INFO    ] Initializing speech engine...
[2026-10-25 22:32:08,148.148 INFO    ] 2026-10-25 22:32:08
[2026-10-25 22:32:08,419.419 INFO    ] 2026-10-25 22:32:08
[2026-10-25 22:32:08,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:32:08,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:32:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:32:08,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:32:08,888.888 INFO    ] time= 25/10/2026 22:32:08
[2026-10-25 22:32:08,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:32:08,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:32:09,030.030 INFO    ] No existing commands found in stream
[2026-10-25 22:32:14,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:14,046.046 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 22:32:14,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:32:14,788.788 INFO    ] Checking for system updates...
[2026-10-25 22:32:14,826.826 INFO    ] 200
[2026-10-25 22:32:14,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:14,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:14,885.885 INFO    ] No update needed
[2026-10-25 22:32:14,887.887 INFO    ] Checking for camera pi updates...
[2026-10-25 22:32:14,922.922 INFO    ] 200
[2026-10-25 22:32:14,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:14,969.969 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:32:15,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:15,039.039 INFO    ] No camera update needed
[2026-10-25 22:32:15,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:32:15,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:32:15,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:32:15,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:32:17,095.095 INFO    ] ================================================
[2026-10-25 22:32:17,109.109 INFO    ] Launching Daemon at Sun Oct 25 22:32:17 IST 2026
[2026-10-25 22:32:17,120.120 INFO    ] ================================================
[2026-10-25 22:32:17,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:32:17
[2026-10-25 22:32:18,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:32:18,578.578 INFO    ] Initializing speech engine...
[2026-10-25 22:32:18,588.588 INFO    ] 2026-10-25 22:32:18
[2026-10-25 22:32:18,833.833 INFO    ] 2026-10-25 22:32:18
[2026-10-25 22:32:18,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:32:19,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:32:19,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:32:19,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:32:19,304.304 INFO    ] time= 25/10/2026 22:32:19
[2026-10-25 22:32:19,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:32:19,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:32:19,455.455 INFO    ] No existing commands found in stream
[2026-10-25 22:32:24,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:24,469.469 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 22:32:26,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:32:26,717.717 INFO    ] Checking for system updates...
[2026-10-25 22:32:26,756.756 INFO    ] 200
[2026-10-25 22:32:26,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:26,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:26,821.821 INFO    ] No update needed
[2026-10-25 22:32:26,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 22:32:26,864.864 INFO    ] 200
[2026-10-25 22:32:26,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:26,909.909 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:32:26,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:26,969.969 INFO    ] No camera update needed
[2026-10-25 22:32:26,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:32:26,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:32:26,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:32:26,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:32:29,033.033 INFO    ] ================================================
[2026-10-25 22:32:29,047.047 INFO    ] Launching Daemon at Sun Oct 25 22:32:29 IST 2026
[2026-10-25 22:32:29,058.058 INFO    ] ================================================
[2026-10-25 22:32:29,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:32:29
[2026-10-25 22:32:30,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:32:30,646.646 INFO    ] Initializing speech engine...
[2026-10-25 22:32:30,653.653 INFO    ] 2026-10-25 22:32:30
[2026-10-25 22:32:30,922.922 INFO    ] 2026-10-25 22:32:30
[2026-10-25 22:32:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:32:31,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:32:31,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:32:31,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:32:31,301.301 INFO    ] time= 25/10/2026 22:32:31
[2026-10-25 22:32:31,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:32:31,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:32:31,487.487 INFO    ] No existing commands found in stream
[2026-10-25 22:32:36,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:36,516.516 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-25 22:32:37,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:32:37,978.978 INFO    ] Checking for system updates...
[2026-10-25 22:32:38,015.015 INFO    ] 200
[2026-10-25 22:32:38,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:38,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:32:38,074.074 INFO    ] No update needed
[2026-10-25 22:32:38,076.076 INFO    ] Checking for camera pi updates...
[2026-10-25 22:32:38,113.113 INFO    ] 200
[2026-10-25 22:32:38,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:38,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:32:38,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:32:38,356.356 INFO    ] No camera update needed
[2026-10-25 22:32:38,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:32:38,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:32:38,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:32:38,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:32:40,414.414 INFO    ] ================================================
[2026-10-25 22:32:40,429.429 INFO    ] Launching Daemon at Sun Oct 25 22:32:40 IST 2026
[2026-10-25 22:32:40,439.439 INFO    ] ================================================
[2026-10-25 22:32:41,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:32:41
[2026-10-25 22:32:41,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:32:41,865.865 INFO    ] Initializing speech engine...
[2026-10-25 22:32:41,874.874 INFO    ] 2026-10-25 22:32:41
[2026-10-25 22:32:42,122.122 INFO    ] 2026-10-25 22:32:42
[2026-10-25 22:32:42,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:32:42,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:32:42,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:32:42,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:32:43,022.022 INFO    ] time= 25/10/2026 22:32:42
[2026-10-25 22:32:43,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:32:43,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:32:43,163.163 INFO    ] No existing commands found in stream
[2026-10-25 22:32:48,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:48,175.175 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 22:32:49,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:32:49,232.232 INFO    ] Checking for system updates...
[2026-10-25 22:32:49,269.269 INFO    ] 200
[2026-10-25 22:32:49,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:49,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:49,332.332 INFO    ] No update needed
[2026-10-25 22:32:49,334.334 INFO    ] Checking for camera pi updates...
[2026-10-25 22:32:49,368.368 INFO    ] 200
[2026-10-25 22:32:49,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:32:49,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:32:49,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:32:49,470.470 INFO    ] No camera update needed
[2026-10-25 22:32:49,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:32:49,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:32:49,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:32:49,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:32:51,526.526 INFO    ] ================================================
[2026-10-25 22:32:51,541.541 INFO    ] Launching Daemon at Sun Oct 25 22:32:51 IST 2026
[2026-10-25 22:32:51,551.551 INFO    ] ================================================
[2026-10-25 22:32:52,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:32:52
[2026-10-25 22:32:52,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:32:52,979.979 INFO    ] Initializing speech engine...
[2026-10-25 22:32:52,988.988 INFO    ] 2026-10-25 22:32:52
[2026-10-25 22:32:53,253.253 INFO    ] 2026-10-25 22:32:53
[2026-10-25 22:32:53,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:32:53,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:32:53,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:32:53,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:32:53,712.712 INFO    ] time= 25/10/2026 22:32:53
[2026-10-25 22:32:53,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:32:53,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:32:53,862.862 INFO    ] No existing commands found in stream
[2026-10-25 22:32:58,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:32:58,876.876 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 22:33:01,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:33:01,495.495 INFO    ] Checking for system updates...
[2026-10-25 22:33:01,583.583 INFO    ] 200
[2026-10-25 22:33:01,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:01,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:33:01,660.660 INFO    ] No update needed
[2026-10-25 22:33:01,663.663 INFO    ] Checking for camera pi updates...
[2026-10-25 22:33:01,737.737 INFO    ] 200
[2026-10-25 22:33:01,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:01,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:33:01,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:33:01,869.869 INFO    ] No camera update needed
[2026-10-25 22:33:01,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:33:01,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:33:01,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:33:01,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:33:03,932.932 INFO    ] ================================================
[2026-10-25 22:33:03,946.946 INFO    ] Launching Daemon at Sun Oct 25 22:33:03 IST 2026
[2026-10-25 22:33:03,957.957 INFO    ] ================================================
[2026-10-25 22:33:04,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:33:04
[2026-10-25 22:33:05,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:33:05,358.358 INFO    ] Initializing speech engine...
[2026-10-25 22:33:05,378.378 INFO    ] 2026-10-25 22:33:05
[2026-10-25 22:33:05,635.635 INFO    ] 2026-10-25 22:33:05
[2026-10-25 22:33:05,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:33:05,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:33:05,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:33:06,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:33:06,011.011 INFO    ] time= 25/10/2026 22:33:06
[2026-10-25 22:33:06,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:33:06,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:33:06,190.190 INFO    ] No existing commands found in stream
[2026-10-25 22:33:11,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:33:11,223.223 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-25 22:33:13,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:33:13,124.124 INFO    ] Checking for system updates...
[2026-10-25 22:33:13,160.160 INFO    ] 200
[2026-10-25 22:33:13,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:13,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:13,218.218 INFO    ] No update needed
[2026-10-25 22:33:13,221.221 INFO    ] Checking for camera pi updates...
[2026-10-25 22:33:13,255.255 INFO    ] 200
[2026-10-25 22:33:13,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:13,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:33:13,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:13,371.371 INFO    ] No camera update needed
[2026-10-25 22:33:13,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:33:13,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:33:13,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:33:13,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:33:15,426.426 INFO    ] ================================================
[2026-10-25 22:33:15,441.441 INFO    ] Launching Daemon at Sun Oct 25 22:33:15 IST 2026
[2026-10-25 22:33:15,451.451 INFO    ] ================================================
[2026-10-25 22:33:16,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:33:16
[2026-10-25 22:33:16,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:33:16,915.915 INFO    ] Initializing speech engine...
[2026-10-25 22:33:16,926.926 INFO    ] 2026-10-25 22:33:16
[2026-10-25 22:33:17,218.218 INFO    ] 2026-10-25 22:33:17
[2026-10-25 22:33:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:33:17,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:33:17,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:33:17,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:33:17,770.770 INFO    ] time= 25/10/2026 22:33:17
[2026-10-25 22:33:17,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:33:17,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:33:17,991.991 INFO    ] No existing commands found in stream
[2026-10-25 22:33:23,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:33:23,021.021 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-25 22:33:26,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:33:26,455.455 INFO    ] Checking for system updates...
[2026-10-25 22:33:26,496.496 INFO    ] 200
[2026-10-25 22:33:26,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:26,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:26,556.556 INFO    ] No update needed
[2026-10-25 22:33:26,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 22:33:26,594.594 INFO    ] 200
[2026-10-25 22:33:26,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:26,640.640 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:33:26,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:26,699.699 INFO    ] No camera update needed
[2026-10-25 22:33:26,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:33:26,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:33:26,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:33:26,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:33:28,760.760 INFO    ] ================================================
[2026-10-25 22:33:28,777.777 INFO    ] Launching Daemon at Sun Oct 25 22:33:28 IST 2026
[2026-10-25 22:33:28,788.788 INFO    ] ================================================
[2026-10-25 22:33:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:33:29
[2026-10-25 22:33:29,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:33:30,225.225 INFO    ] Initializing speech engine...
[2026-10-25 22:33:30,245.245 INFO    ] 2026-10-25 22:33:30
[2026-10-25 22:33:30,497.497 INFO    ] 2026-10-25 22:33:30
[2026-10-25 22:33:30,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:33:30,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:33:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:33:30,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:33:30,875.875 INFO    ] time= 25/10/2026 22:33:30
[2026-10-25 22:33:30,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:33:30,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:33:31,044.044 INFO    ] No existing commands found in stream
[2026-10-25 22:33:36,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:33:36,072.072 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 22:33:37,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:33:37,182.182 INFO    ] Checking for system updates...
[2026-10-25 22:33:37,218.218 INFO    ] 200
[2026-10-25 22:33:37,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:37,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:33:37,275.275 INFO    ] No update needed
[2026-10-25 22:33:37,277.277 INFO    ] Checking for camera pi updates...
[2026-10-25 22:33:37,311.311 INFO    ] 200
[2026-10-25 22:33:37,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:37,354.354 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:33:37,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:33:37,406.406 INFO    ] No camera update needed
[2026-10-25 22:33:37,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:33:37,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:33:37,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:33:37,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:33:39,462.462 INFO    ] ================================================
[2026-10-25 22:33:39,477.477 INFO    ] Launching Daemon at Sun Oct 25 22:33:39 IST 2026
[2026-10-25 22:33:39,488.488 INFO    ] ================================================
[2026-10-25 22:33:40,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:33:40
[2026-10-25 22:33:40,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:33:40,919.919 INFO    ] Initializing speech engine...
[2026-10-25 22:33:40,944.944 INFO    ] 2026-10-25 22:33:40
[2026-10-25 22:33:41,226.226 INFO    ] 2026-10-25 22:33:41
[2026-10-25 22:33:41,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:33:42,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:33:42,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:33:42,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:33:42,762.762 INFO    ] time= 25/10/2026 22:33:42
[2026-10-25 22:33:42,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:33:42,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:33:42,837.837 INFO    ] No existing commands found in stream
[2026-10-25 22:33:47,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:33:47,855.855 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-25 22:33:48,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:33:48,451.451 INFO    ] Checking for system updates...
[2026-10-25 22:33:48,488.488 INFO    ] 200
[2026-10-25 22:33:48,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:48,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:48,556.556 INFO    ] No update needed
[2026-10-25 22:33:48,559.559 INFO    ] Checking for camera pi updates...
[2026-10-25 22:33:48,594.594 INFO    ] 200
[2026-10-25 22:33:48,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:33:48,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:33:48,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:33:48,705.705 INFO    ] No camera update needed
[2026-10-25 22:33:48,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:33:48,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:33:48,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:33:48,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:33:50,763.763 INFO    ] ================================================
[2026-10-25 22:33:50,778.778 INFO    ] Launching Daemon at Sun Oct 25 22:33:50 IST 2026
[2026-10-25 22:33:50,789.789 INFO    ] ================================================
[2026-10-25 22:33:51,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:33:51
[2026-10-25 22:33:52,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:33:52,444.444 INFO    ] Initializing speech engine...
[2026-10-25 22:33:52,452.452 INFO    ] 2026-10-25 22:33:52
[2026-10-25 22:33:52,739.739 INFO    ] 2026-10-25 22:33:52
[2026-10-25 22:33:52,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:33:53,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:33:53,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:33:53,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:33:53,276.276 INFO    ] time= 25/10/2026 22:33:53
[2026-10-25 22:33:53,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:33:53,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:33:53,428.428 INFO    ] No existing commands found in stream
[2026-10-25 22:33:58,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:33:58,446.446 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 22:34:01,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:34:01,973.973 INFO    ] Checking for system updates...
[2026-10-25 22:34:02,015.015 INFO    ] 200
[2026-10-25 22:34:02,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:02,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:34:02,092.092 INFO    ] No update needed
[2026-10-25 22:34:02,095.095 INFO    ] Checking for camera pi updates...
[2026-10-25 22:34:02,139.139 INFO    ] 200
[2026-10-25 22:34:02,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:02,196.196 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:34:02,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:34:02,236.236 INFO    ] No camera update needed
[2026-10-25 22:34:02,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:34:02,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:34:02,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:34:02,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:34:04,302.302 INFO    ] ================================================
[2026-10-25 22:34:04,318.318 INFO    ] Launching Daemon at Sun Oct 25 22:34:04 IST 2026
[2026-10-25 22:34:04,328.328 INFO    ] ================================================
[2026-10-25 22:34:04,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:34:04
[2026-10-25 22:34:05,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:34:05,835.835 INFO    ] Initializing speech engine...
[2026-10-25 22:34:05,847.847 INFO    ] 2026-10-25 22:34:05
[2026-10-25 22:34:06,158.158 INFO    ] 2026-10-25 22:34:06
[2026-10-25 22:34:06,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:34:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:34:06,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:34:06,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:34:06,559.559 INFO    ] time= 25/10/2026 22:34:06
[2026-10-25 22:34:06,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:34:06,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:34:06,715.715 INFO    ] No existing commands found in stream
[2026-10-25 22:34:11,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:34:11,733.733 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 22:34:13,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:34:13,751.751 INFO    ] Checking for system updates...
[2026-10-25 22:34:13,787.787 INFO    ] 200
[2026-10-25 22:34:13,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:13,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:13,845.845 INFO    ] No update needed
[2026-10-25 22:34:13,847.847 INFO    ] Checking for camera pi updates...
[2026-10-25 22:34:13,885.885 INFO    ] 200
[2026-10-25 22:34:13,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:13,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:34:14,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:14,093.093 INFO    ] No camera update needed
[2026-10-25 22:34:14,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:34:14,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:34:14,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:34:14,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:34:16,147.147 INFO    ] ================================================
[2026-10-25 22:34:16,163.163 INFO    ] Launching Daemon at Sun Oct 25 22:34:16 IST 2026
[2026-10-25 22:34:16,173.173 INFO    ] ================================================
[2026-10-25 22:34:16,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:34:16
[2026-10-25 22:34:17,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:34:17,699.699 INFO    ] Initializing speech engine...
[2026-10-25 22:34:17,704.704 INFO    ] 2026-10-25 22:34:17
[2026-10-25 22:34:18,012.012 INFO    ] 2026-10-25 22:34:17
[2026-10-25 22:34:18,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:34:18,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:34:18,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:34:18,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:34:18,471.471 INFO    ] time= 25/10/2026 22:34:18
[2026-10-25 22:34:18,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:34:18,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:34:18,656.656 INFO    ] No existing commands found in stream
[2026-10-25 22:34:23,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:34:23,693.693 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-25 22:34:27,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:34:27,837.837 INFO    ] Checking for system updates...
[2026-10-25 22:34:27,874.874 INFO    ] 200
[2026-10-25 22:34:27,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:27,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:27,933.933 INFO    ] No update needed
[2026-10-25 22:34:27,936.936 INFO    ] Checking for camera pi updates...
[2026-10-25 22:34:27,970.970 INFO    ] 200
[2026-10-25 22:34:27,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:28,015.015 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:34:28,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:28,078.078 INFO    ] No camera update needed
[2026-10-25 22:34:28,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:34:28,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:34:28,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:34:28,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:34:30,138.138 INFO    ] ================================================
[2026-10-25 22:34:30,153.153 INFO    ] Launching Daemon at Sun Oct 25 22:34:30 IST 2026
[2026-10-25 22:34:30,164.164 INFO    ] ================================================
[2026-10-25 22:34:30,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:34:30
[2026-10-25 22:34:31,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:34:31,651.651 INFO    ] Initializing speech engine...
[2026-10-25 22:34:31,674.674 INFO    ] 2026-10-25 22:34:31
[2026-10-25 22:34:31,931.931 INFO    ] 2026-10-25 22:34:31
[2026-10-25 22:34:31,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:34:32,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:34:32,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:34:32,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:34:32,434.434 INFO    ] time= 25/10/2026 22:34:32
[2026-10-25 22:34:32,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:34:32,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:34:32,569.569 INFO    ] No existing commands found in stream
[2026-10-25 22:34:37,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:34:37,584.584 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 22:34:39,426.426 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:34:39,429.429 INFO    ] Checking for system updates...
[2026-10-25 22:34:39,465.465 INFO    ] 200
[2026-10-25 22:34:39,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:39,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:39,528.528 INFO    ] No update needed
[2026-10-25 22:34:39,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 22:34:39,565.565 INFO    ] 200
[2026-10-25 22:34:39,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:39,608.608 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:34:39,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:34:39,660.660 INFO    ] No camera update needed
[2026-10-25 22:34:39,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:34:39,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:34:39,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:34:39,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:34:41,717.717 INFO    ] ================================================
[2026-10-25 22:34:41,737.737 INFO    ] Launching Daemon at Sun Oct 25 22:34:41 IST 2026
[2026-10-25 22:34:41,747.747 INFO    ] ================================================
[2026-10-25 22:34:42,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:34:42
[2026-10-25 22:34:42,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:34:43,258.258 INFO    ] Initializing speech engine...
[2026-10-25 22:34:43,267.267 INFO    ] 2026-10-25 22:34:43
[2026-10-25 22:34:43,580.580 INFO    ] 2026-10-25 22:34:43
[2026-10-25 22:34:43,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:34:43,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:34:43,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:34:43,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:34:44,016.016 INFO    ] time= 25/10/2026 22:34:43
[2026-10-25 22:34:44,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:34:44,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:34:44,244.244 INFO    ] No existing commands found in stream
[2026-10-25 22:34:49,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:34:49,276.276 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-25 22:34:51,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:34:51,333.333 INFO    ] Checking for system updates...
[2026-10-25 22:34:51,370.370 INFO    ] 200
[2026-10-25 22:34:51,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:51,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:34:51,432.432 INFO    ] No update needed
[2026-10-25 22:34:51,435.435 INFO    ] Checking for camera pi updates...
[2026-10-25 22:34:51,473.473 INFO    ] 200
[2026-10-25 22:34:51,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:34:51,525.525 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:34:51,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:34:51,586.586 INFO    ] No camera update needed
[2026-10-25 22:34:51,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:34:51,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:34:51,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:34:51,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:34:53,650.650 INFO    ] ================================================
[2026-10-25 22:34:53,665.665 INFO    ] Launching Daemon at Sun Oct 25 22:34:53 IST 2026
[2026-10-25 22:34:53,676.676 INFO    ] ================================================
[2026-10-25 22:34:54,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:34:54
[2026-10-25 22:34:54,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:34:55,208.208 INFO    ] Initializing speech engine...
[2026-10-25 22:34:55,217.217 INFO    ] 2026-10-25 22:34:55
[2026-10-25 22:34:55,475.475 INFO    ] 2026-10-25 22:34:55
[2026-10-25 22:34:55,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:34:55,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:34:55,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:34:55,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:34:55,936.936 INFO    ] time= 25/10/2026 22:34:55
[2026-10-25 22:34:55,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:34:56,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:34:56,084.084 INFO    ] No existing commands found in stream
[2026-10-25 22:35:01,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:35:01,100.100 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 22:35:03,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:35:03,599.599 INFO    ] Checking for system updates...
[2026-10-25 22:35:03,643.643 INFO    ] 200
[2026-10-25 22:35:03,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:03,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:35:03,723.723 INFO    ] No update needed
[2026-10-25 22:35:03,729.729 INFO    ] Checking for camera pi updates...
[2026-10-25 22:35:03,765.765 INFO    ] 200
[2026-10-25 22:35:03,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:03,809.809 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:35:03,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:35:03,859.859 INFO    ] No camera update needed
[2026-10-25 22:35:03,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:35:03,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:35:03,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:35:03,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:35:05,915.915 INFO    ] ================================================
[2026-10-25 22:35:05,930.930 INFO    ] Launching Daemon at Sun Oct 25 22:35:05 IST 2026
[2026-10-25 22:35:05,940.940 INFO    ] ================================================
[2026-10-25 22:35:06,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:35:06
[2026-10-25 22:35:07,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:35:07,363.363 INFO    ] Initializing speech engine...
[2026-10-25 22:35:07,371.371 INFO    ] 2026-10-25 22:35:07
[2026-10-25 22:35:07,623.623 INFO    ] 2026-10-25 22:35:07
[2026-10-25 22:35:07,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:35:07,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:35:07,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:35:08,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:35:08,066.066 INFO    ] time= 25/10/2026 22:35:08
[2026-10-25 22:35:08,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:35:08,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:35:08,254.254 INFO    ] No existing commands found in stream
[2026-10-25 22:35:13,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:35:13,269.269 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 22:35:16,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:35:16,251.251 INFO    ] Checking for system updates...
[2026-10-25 22:35:16,287.287 INFO    ] 200
[2026-10-25 22:35:16,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:16,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:16,345.345 INFO    ] No update needed
[2026-10-25 22:35:16,347.347 INFO    ] Checking for camera pi updates...
[2026-10-25 22:35:16,384.384 INFO    ] 200
[2026-10-25 22:35:16,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:16,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:35:16,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:16,488.488 INFO    ] No camera update needed
[2026-10-25 22:35:16,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:35:16,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:35:16,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:35:16,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:35:18,545.545 INFO    ] ================================================
[2026-10-25 22:35:18,559.559 INFO    ] Launching Daemon at Sun Oct 25 22:35:18 IST 2026
[2026-10-25 22:35:18,570.570 INFO    ] ================================================
[2026-10-25 22:35:19,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:35:19
[2026-10-25 22:35:19,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:35:20,088.088 INFO    ] Initializing speech engine...
[2026-10-25 22:35:20,099.099 INFO    ] 2026-10-25 22:35:20
[2026-10-25 22:35:20,368.368 INFO    ] 2026-10-25 22:35:20
[2026-10-25 22:35:20,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:35:20,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:35:20,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:35:20,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:35:20,746.746 INFO    ] time= 25/10/2026 22:35:20
[2026-10-25 22:35:20,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:35:20,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:35:20,922.922 INFO    ] No existing commands found in stream
[2026-10-25 22:35:25,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:35:25,938.938 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 22:35:26,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:35:26,883.883 INFO    ] Checking for system updates...
[2026-10-25 22:35:26,919.919 INFO    ] 200
[2026-10-25 22:35:26,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:26,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:26,985.985 INFO    ] No update needed
[2026-10-25 22:35:26,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 22:35:27,043.043 INFO    ] 200
[2026-10-25 22:35:27,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:27,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:35:27,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:27,171.171 INFO    ] No camera update needed
[2026-10-25 22:35:27,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:35:27,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:35:27,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:35:27,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:35:29,227.227 INFO    ] ================================================
[2026-10-25 22:35:29,242.242 INFO    ] Launching Daemon at Sun Oct 25 22:35:29 IST 2026
[2026-10-25 22:35:29,253.253 INFO    ] ================================================
[2026-10-25 22:35:29,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:35:29
[2026-10-25 22:35:30,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:35:30,712.712 INFO    ] Initializing speech engine...
[2026-10-25 22:35:30,718.718 INFO    ] 2026-10-25 22:35:30
[2026-10-25 22:35:31,019.019 INFO    ] 2026-10-25 22:35:30
[2026-10-25 22:35:31,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:35:31,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:35:31,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:35:31,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:35:31,376.376 INFO    ] time= 25/10/2026 22:35:31
[2026-10-25 22:35:31,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:35:31,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:35:31,458.458 INFO    ] No existing commands found in stream
[2026-10-25 22:35:36,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:35:36,472.472 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 22:35:40,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:35:40,744.744 INFO    ] Checking for system updates...
[2026-10-25 22:35:40,779.779 INFO    ] 200
[2026-10-25 22:35:40,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:40,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:40,837.837 INFO    ] No update needed
[2026-10-25 22:35:40,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 22:35:40,874.874 INFO    ] 200
[2026-10-25 22:35:40,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:40,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:35:40,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:40,981.981 INFO    ] No camera update needed
[2026-10-25 22:35:40,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:35:40,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:35:40,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:35:40,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:35:43,038.038 INFO    ] ================================================
[2026-10-25 22:35:43,053.053 INFO    ] Launching Daemon at Sun Oct 25 22:35:43 IST 2026
[2026-10-25 22:35:43,064.064 INFO    ] ================================================
[2026-10-25 22:35:43,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:35:43
[2026-10-25 22:35:44,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:35:44,510.510 INFO    ] Initializing speech engine...
[2026-10-25 22:35:44,525.525 INFO    ] 2026-10-25 22:35:44
[2026-10-25 22:35:44,816.816 INFO    ] 2026-10-25 22:35:44
[2026-10-25 22:35:44,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:35:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:35:45,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:35:45,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:35:45,219.219 INFO    ] time= 25/10/2026 22:35:45
[2026-10-25 22:35:45,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:35:45,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:35:45,328.328 INFO    ] No existing commands found in stream
[2026-10-25 22:35:50,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:35:50,344.344 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 22:35:53,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:35:53,238.238 INFO    ] Checking for system updates...
[2026-10-25 22:35:53,274.274 INFO    ] 200
[2026-10-25 22:35:53,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:53,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:53,335.335 INFO    ] No update needed
[2026-10-25 22:35:53,337.337 INFO    ] Checking for camera pi updates...
[2026-10-25 22:35:53,372.372 INFO    ] 200
[2026-10-25 22:35:53,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:35:53,415.415 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:35:53,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:35:53,482.482 INFO    ] No camera update needed
[2026-10-25 22:35:53,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:35:53,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:35:53,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:35:53,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:35:55,538.538 INFO    ] ================================================
[2026-10-25 22:35:55,553.553 INFO    ] Launching Daemon at Sun Oct 25 22:35:55 IST 2026
[2026-10-25 22:35:55,565.565 INFO    ] ================================================
[2026-10-25 22:35:56,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:35:56
[2026-10-25 22:35:56,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:35:57,212.212 INFO    ] Initializing speech engine...
[2026-10-25 22:35:57,226.226 INFO    ] 2026-10-25 22:35:57
[2026-10-25 22:35:57,544.544 INFO    ] 2026-10-25 22:35:57
[2026-10-25 22:35:57,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:35:57,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:35:57,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:35:58,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:35:58,065.065 INFO    ] time= 25/10/2026 22:35:58
[2026-10-25 22:35:58,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:35:58,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:35:58,210.210 INFO    ] No existing commands found in stream
[2026-10-25 22:36:03,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:36:03,237.237 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 22:36:04,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:36:04,655.655 INFO    ] Checking for system updates...
[2026-10-25 22:36:04,697.697 INFO    ] 200
[2026-10-25 22:36:04,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:04,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:04,755.755 INFO    ] No update needed
[2026-10-25 22:36:04,757.757 INFO    ] Checking for camera pi updates...
[2026-10-25 22:36:04,791.791 INFO    ] 200
[2026-10-25 22:36:04,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:04,834.834 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:36:04,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:04,889.889 INFO    ] No camera update needed
[2026-10-25 22:36:04,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:36:04,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:36:04,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:36:04,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:36:06,945.945 INFO    ] ================================================
[2026-10-25 22:36:06,960.960 INFO    ] Launching Daemon at Sun Oct 25 22:36:06 IST 2026
[2026-10-25 22:36:06,972.972 INFO    ] ================================================
[2026-10-25 22:36:07,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:36:07
[2026-10-25 22:36:08,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:36:08,472.472 INFO    ] Initializing speech engine...
[2026-10-25 22:36:08,481.481 INFO    ] 2026-10-25 22:36:08
[2026-10-25 22:36:08,761.761 INFO    ] 2026-10-25 22:36:08
[2026-10-25 22:36:08,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:36:09,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:36:09,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:36:09,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:36:09,256.256 INFO    ] time= 25/10/2026 22:36:09
[2026-10-25 22:36:09,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:36:09,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:36:09,467.467 INFO    ] No existing commands found in stream
[2026-10-25 22:36:14,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:36:14,498.498 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-25 22:36:16,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:36:16,356.356 INFO    ] Checking for system updates...
[2026-10-25 22:36:16,392.392 INFO    ] 200
[2026-10-25 22:36:16,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:16,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:16,451.451 INFO    ] No update needed
[2026-10-25 22:36:16,453.453 INFO    ] Checking for camera pi updates...
[2026-10-25 22:36:16,487.487 INFO    ] 200
[2026-10-25 22:36:16,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:16,530.530 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:36:16,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:16,699.699 INFO    ] No camera update needed
[2026-10-25 22:36:16,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:36:16,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:36:16,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:36:16,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:36:18,754.754 INFO    ] ================================================
[2026-10-25 22:36:18,772.772 INFO    ] Launching Daemon at Sun Oct 25 22:36:18 IST 2026
[2026-10-25 22:36:18,783.783 INFO    ] ================================================
[2026-10-25 22:36:19,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:36:19
[2026-10-25 22:36:19,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:36:20,203.203 INFO    ] Initializing speech engine...
[2026-10-25 22:36:20,212.212 INFO    ] 2026-10-25 22:36:20
[2026-10-25 22:36:20,509.509 INFO    ] 2026-10-25 22:36:20
[2026-10-25 22:36:20,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:36:20,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:36:20,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:36:20,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:36:20,934.934 INFO    ] time= 25/10/2026 22:36:20
[2026-10-25 22:36:20,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:36:20,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:36:21,022.022 INFO    ] No existing commands found in stream
[2026-10-25 22:36:26,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:36:26,036.036 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 22:36:28,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:36:28,694.694 INFO    ] Checking for system updates...
[2026-10-25 22:36:28,730.730 INFO    ] 200
[2026-10-25 22:36:28,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:28,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:36:28,787.787 INFO    ] No update needed
[2026-10-25 22:36:28,790.790 INFO    ] Checking for camera pi updates...
[2026-10-25 22:36:28,824.824 INFO    ] 200
[2026-10-25 22:36:28,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:28,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:36:28,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:36:28,922.922 INFO    ] No camera update needed
[2026-10-25 22:36:28,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:36:28,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:36:28,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:36:28,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:36:30,976.976 INFO    ] ================================================
[2026-10-25 22:36:30,991.991 INFO    ] Launching Daemon at Sun Oct 25 22:36:30 IST 2026
[2026-10-25 22:36:31,002.002 INFO    ] ================================================
[2026-10-25 22:36:31,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:36:31
[2026-10-25 22:36:32,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:36:32,646.646 INFO    ] Initializing speech engine...
[2026-10-25 22:36:32,657.657 INFO    ] 2026-10-25 22:36:32
[2026-10-25 22:36:32,936.936 INFO    ] 2026-10-25 22:36:32
[2026-10-25 22:36:33,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:36:33,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:36:33,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:36:33,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:36:33,374.374 INFO    ] time= 25/10/2026 22:36:33
[2026-10-25 22:36:33,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:36:33,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:36:33,530.530 INFO    ] No existing commands found in stream
[2026-10-25 22:36:38,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:36:38,546.546 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-25 22:36:39,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:36:39,273.273 INFO    ] Checking for system updates...
[2026-10-25 22:36:39,310.310 INFO    ] 200
[2026-10-25 22:36:39,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:39,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:36:39,376.376 INFO    ] No update needed
[2026-10-25 22:36:39,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 22:36:39,416.416 INFO    ] 200
[2026-10-25 22:36:39,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:39,464.464 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:36:39,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:36:39,506.506 INFO    ] No camera update needed
[2026-10-25 22:36:39,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:36:39,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:36:39,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:36:39,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:36:41,565.565 INFO    ] ================================================
[2026-10-25 22:36:41,581.581 INFO    ] Launching Daemon at Sun Oct 25 22:36:41 IST 2026
[2026-10-25 22:36:41,593.593 INFO    ] ================================================
[2026-10-25 22:36:42,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:36:42
[2026-10-25 22:36:42,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:36:43,057.057 INFO    ] Initializing speech engine...
[2026-10-25 22:36:43,066.066 INFO    ] 2026-10-25 22:36:43
[2026-10-25 22:36:43,339.339 INFO    ] 2026-10-25 22:36:43
[2026-10-25 22:36:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:36:43,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:36:43,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:36:43,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:36:43,713.713 INFO    ] time= 25/10/2026 22:36:43
[2026-10-25 22:36:43,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:36:43,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:36:43,875.875 INFO    ] No existing commands found in stream
[2026-10-25 22:36:48,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:36:48,903.903 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 22:36:51,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:36:51,395.395 INFO    ] Checking for system updates...
[2026-10-25 22:36:51,431.431 INFO    ] 200
[2026-10-25 22:36:51,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:51,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:51,491.491 INFO    ] No update needed
[2026-10-25 22:36:51,493.493 INFO    ] Checking for camera pi updates...
[2026-10-25 22:36:51,527.527 INFO    ] 200
[2026-10-25 22:36:51,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:36:51,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:36:51,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:36:51,624.624 INFO    ] No camera update needed
[2026-10-25 22:36:51,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:36:51,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:36:51,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:36:51,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:36:53,678.678 INFO    ] ================================================
[2026-10-25 22:36:53,693.693 INFO    ] Launching Daemon at Sun Oct 25 22:36:53 IST 2026
[2026-10-25 22:36:53,705.705 INFO    ] ================================================
[2026-10-25 22:36:54,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:36:54
[2026-10-25 22:36:54,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:36:55,118.118 INFO    ] Initializing speech engine...
[2026-10-25 22:36:55,127.127 INFO    ] 2026-10-25 22:36:55
[2026-10-25 22:36:55,378.378 INFO    ] 2026-10-25 22:36:55
[2026-10-25 22:36:55,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:36:55,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:36:55,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:36:55,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:36:55,742.742 INFO    ] time= 25/10/2026 22:36:55
[2026-10-25 22:36:55,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:36:55,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:36:55,921.921 INFO    ] No existing commands found in stream
[2026-10-25 22:37:00,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:37:00,950.950 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-25 22:37:04,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:37:04,557.557 INFO    ] Checking for system updates...
[2026-10-25 22:37:04,598.598 INFO    ] 200
[2026-10-25 22:37:04,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:04,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:37:04,669.669 INFO    ] No update needed
[2026-10-25 22:37:04,672.672 INFO    ] Checking for camera pi updates...
[2026-10-25 22:37:04,705.705 INFO    ] 200
[2026-10-25 22:37:04,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:04,753.753 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:37:04,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:37:04,809.809 INFO    ] No camera update needed
[2026-10-25 22:37:04,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:37:04,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:37:04,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:37:04,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:37:06,865.865 INFO    ] ================================================
[2026-10-25 22:37:06,882.882 INFO    ] Launching Daemon at Sun Oct 25 22:37:06 IST 2026
[2026-10-25 22:37:06,893.893 INFO    ] ================================================
[2026-10-25 22:37:07,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:37:07
[2026-10-25 22:37:08,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:37:08,531.531 INFO    ] Initializing speech engine...
[2026-10-25 22:37:08,545.545 INFO    ] 2026-10-25 22:37:08
[2026-10-25 22:37:08,852.852 INFO    ] 2026-10-25 22:37:08
[2026-10-25 22:37:08,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:37:09,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:37:09,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:37:09,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:37:09,363.363 INFO    ] time= 25/10/2026 22:37:09
[2026-10-25 22:37:09,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:37:09,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:37:09,514.514 INFO    ] No existing commands found in stream
[2026-10-25 22:37:14,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:37:14,533.533 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-25 22:37:18,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:37:18,613.613 INFO    ] Checking for system updates...
[2026-10-25 22:37:18,650.650 INFO    ] 200
[2026-10-25 22:37:18,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:18,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:18,718.718 INFO    ] No update needed
[2026-10-25 22:37:18,720.720 INFO    ] Checking for camera pi updates...
[2026-10-25 22:37:18,755.755 INFO    ] 200
[2026-10-25 22:37:18,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:18,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:37:18,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:18,859.859 INFO    ] No camera update needed
[2026-10-25 22:37:18,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:37:18,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:37:18,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:37:18,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:37:20,922.922 INFO    ] ================================================
[2026-10-25 22:37:20,938.938 INFO    ] Launching Daemon at Sun Oct 25 22:37:20 IST 2026
[2026-10-25 22:37:20,949.949 INFO    ] ================================================
[2026-10-25 22:37:21,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:37:21
[2026-10-25 22:37:22,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:37:22,348.348 INFO    ] Initializing speech engine...
[2026-10-25 22:37:22,371.371 INFO    ] 2026-10-25 22:37:22
[2026-10-25 22:37:22,637.637 INFO    ] 2026-10-25 22:37:22
[2026-10-25 22:37:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:37:22,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:37:22,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:37:23,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:37:23,055.055 INFO    ] time= 25/10/2026 22:37:23
[2026-10-25 22:37:23,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:37:23,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:37:23,143.143 INFO    ] No existing commands found in stream
[2026-10-25 22:37:28,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:37:28,161.161 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-25 22:37:32,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:37:32,061.061 INFO    ] Checking for system updates...
[2026-10-25 22:37:32,101.101 INFO    ] 200
[2026-10-25 22:37:32,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:32,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:37:32,166.166 INFO    ] No update needed
[2026-10-25 22:37:32,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 22:37:32,209.209 INFO    ] 200
[2026-10-25 22:37:32,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:32,261.261 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:37:32,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:37:32,318.318 INFO    ] No camera update needed
[2026-10-25 22:37:32,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:37:32,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:37:32,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:37:32,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:37:34,377.377 INFO    ] ================================================
[2026-10-25 22:37:34,393.393 INFO    ] Launching Daemon at Sun Oct 25 22:37:34 IST 2026
[2026-10-25 22:37:34,404.404 INFO    ] ================================================
[2026-10-25 22:37:34,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:37:34
[2026-10-25 22:37:35,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:37:35,822.822 INFO    ] Initializing speech engine...
[2026-10-25 22:37:35,834.834 INFO    ] 2026-10-25 22:37:35
[2026-10-25 22:37:36,084.084 INFO    ] 2026-10-25 22:37:36
[2026-10-25 22:37:36,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:37:36,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:37:36,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:37:36,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:37:36,454.454 INFO    ] time= 25/10/2026 22:37:36
[2026-10-25 22:37:36,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:37:36,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:37:36,551.551 INFO    ] No existing commands found in stream
[2026-10-25 22:37:41,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:37:41,566.566 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 22:37:43,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:37:43,084.084 INFO    ] Checking for system updates...
[2026-10-25 22:37:43,122.122 INFO    ] 200
[2026-10-25 22:37:43,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:43,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:43,189.189 INFO    ] No update needed
[2026-10-25 22:37:43,192.192 INFO    ] Checking for camera pi updates...
[2026-10-25 22:37:43,230.230 INFO    ] 200
[2026-10-25 22:37:43,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:43,280.280 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:37:43,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:43,397.397 INFO    ] No camera update needed
[2026-10-25 22:37:43,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:37:43,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:37:43,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:37:43,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:37:45,455.455 INFO    ] ================================================
[2026-10-25 22:37:45,470.470 INFO    ] Launching Daemon at Sun Oct 25 22:37:45 IST 2026
[2026-10-25 22:37:45,482.482 INFO    ] ================================================
[2026-10-25 22:37:46,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:37:46
[2026-10-25 22:37:46,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:37:47,119.119 INFO    ] Initializing speech engine...
[2026-10-25 22:37:47,127.127 INFO    ] 2026-10-25 22:37:47
[2026-10-25 22:37:47,411.411 INFO    ] 2026-10-25 22:37:47
[2026-10-25 22:37:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:37:47,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:37:47,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:37:47,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:37:47,958.958 INFO    ] time= 25/10/2026 22:37:47
[2026-10-25 22:37:47,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:37:48,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:37:48,129.129 INFO    ] No existing commands found in stream
[2026-10-25 22:37:53,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:37:53,165.165 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-25 22:37:55,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:37:55,441.441 INFO    ] Checking for system updates...
[2026-10-25 22:37:55,478.478 INFO    ] 200
[2026-10-25 22:37:55,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:55,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:55,537.537 INFO    ] No update needed
[2026-10-25 22:37:55,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 22:37:55,574.574 INFO    ] 200
[2026-10-25 22:37:55,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:37:55,619.619 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:37:55,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:37:55,671.671 INFO    ] No camera update needed
[2026-10-25 22:37:55,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:37:55,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:37:55,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:37:55,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:37:57,730.730 INFO    ] ================================================
[2026-10-25 22:37:57,747.747 INFO    ] Launching Daemon at Sun Oct 25 22:37:57 IST 2026
[2026-10-25 22:37:57,759.759 INFO    ] ================================================
[2026-10-25 22:37:58,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:37:58
[2026-10-25 22:37:59,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:37:59,390.390 INFO    ] Initializing speech engine...
[2026-10-25 22:37:59,400.400 INFO    ] 2026-10-25 22:37:59
[2026-10-25 22:37:59,687.687 INFO    ] 2026-10-25 22:37:59
[2026-10-25 22:37:59,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:37:59,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:37:59,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:38:00,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:38:00,161.161 INFO    ] time= 25/10/2026 22:38:00
[2026-10-25 22:38:00,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:38:00,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:38:00,356.356 INFO    ] No existing commands found in stream
[2026-10-25 22:38:05,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:38:05,384.384 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 22:38:09,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:38:09,638.638 INFO    ] Checking for system updates...
[2026-10-25 22:38:09,675.675 INFO    ] 200
[2026-10-25 22:38:09,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:09,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:09,741.741 INFO    ] No update needed
[2026-10-25 22:38:09,744.744 INFO    ] Checking for camera pi updates...
[2026-10-25 22:38:09,780.780 INFO    ] 200
[2026-10-25 22:38:09,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:09,824.824 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:38:09,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:09,876.876 INFO    ] No camera update needed
[2026-10-25 22:38:09,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:38:09,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:38:09,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:38:09,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:38:11,934.934 INFO    ] ================================================
[2026-10-25 22:38:11,949.949 INFO    ] Launching Daemon at Sun Oct 25 22:38:11 IST 2026
[2026-10-25 22:38:11,960.960 INFO    ] ================================================
[2026-10-25 22:38:12,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:38:12
[2026-10-25 22:38:13,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:38:13,587.587 INFO    ] Initializing speech engine...
[2026-10-25 22:38:13,598.598 INFO    ] 2026-10-25 22:38:13
[2026-10-25 22:38:13,874.874 INFO    ] 2026-10-25 22:38:13
[2026-10-25 22:38:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:38:14,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:38:14,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:38:14,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:38:14,356.356 INFO    ] time= 25/10/2026 22:38:14
[2026-10-25 22:38:14,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:38:14,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:38:14,508.508 INFO    ] No existing commands found in stream
[2026-10-25 22:38:19,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:38:19,524.524 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 22:38:22,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:38:22,136.136 INFO    ] Checking for system updates...
[2026-10-25 22:38:22,173.173 INFO    ] 200
[2026-10-25 22:38:22,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:22,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:38:22,239.239 INFO    ] No update needed
[2026-10-25 22:38:22,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 22:38:22,278.278 INFO    ] 200
[2026-10-25 22:38:22,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:22,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:38:22,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:38:22,498.498 INFO    ] No camera update needed
[2026-10-25 22:38:22,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:38:22,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:38:22,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:38:22,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:38:24,558.558 INFO    ] ================================================
[2026-10-25 22:38:24,574.574 INFO    ] Launching Daemon at Sun Oct 25 22:38:24 IST 2026
[2026-10-25 22:38:24,585.585 INFO    ] ================================================
[2026-10-25 22:38:25,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:38:25
[2026-10-25 22:38:25,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:38:25,996.996 INFO    ] Initializing speech engine...
[2026-10-25 22:38:26,005.005 INFO    ] 2026-10-25 22:38:25
[2026-10-25 22:38:26,299.299 INFO    ] 2026-10-25 22:38:26
[2026-10-25 22:38:26,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:38:26,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:38:26,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:38:26,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:38:26,656.656 INFO    ] time= 25/10/2026 22:38:26
[2026-10-25 22:38:26,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:38:26,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:38:26,739.739 INFO    ] No existing commands found in stream
[2026-10-25 22:38:31,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:38:31,752.752 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 22:38:35,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:38:35,655.655 INFO    ] Checking for system updates...
[2026-10-25 22:38:35,703.703 INFO    ] 200
[2026-10-25 22:38:35,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:35,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:35,767.767 INFO    ] No update needed
[2026-10-25 22:38:35,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 22:38:35,805.805 INFO    ] 200
[2026-10-25 22:38:35,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:35,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:38:35,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:35,910.910 INFO    ] No camera update needed
[2026-10-25 22:38:35,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:38:35,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:38:35,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:38:35,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:38:37,968.968 INFO    ] ================================================
[2026-10-25 22:38:37,983.983 INFO    ] Launching Daemon at Sun Oct 25 22:38:37 IST 2026
[2026-10-25 22:38:37,994.994 INFO    ] ================================================
[2026-10-25 22:38:38,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:38:38
[2026-10-25 22:38:39,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:38:39,448.448 INFO    ] Initializing speech engine...
[2026-10-25 22:38:39,453.453 INFO    ] 2026-10-25 22:38:39
[2026-10-25 22:38:39,709.709 INFO    ] 2026-10-25 22:38:39
[2026-10-25 22:38:39,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:38:39,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:38:39,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:38:40,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:38:40,179.179 INFO    ] time= 25/10/2026 22:38:40
[2026-10-25 22:38:40,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:38:40,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:38:40,317.317 INFO    ] No existing commands found in stream
[2026-10-25 22:38:45,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:38:45,332.332 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 22:38:48,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:38:48,104.104 INFO    ] Checking for system updates...
[2026-10-25 22:38:48,146.146 INFO    ] 200
[2026-10-25 22:38:48,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:48,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:48,205.205 INFO    ] No update needed
[2026-10-25 22:38:48,207.207 INFO    ] Checking for camera pi updates...
[2026-10-25 22:38:48,241.241 INFO    ] 200
[2026-10-25 22:38:48,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:48,286.286 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:38:48,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:38:48,348.348 INFO    ] No camera update needed
[2026-10-25 22:38:48,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:38:48,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:38:48,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:38:48,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:38:50,407.407 INFO    ] ================================================
[2026-10-25 22:38:50,422.422 INFO    ] Launching Daemon at Sun Oct 25 22:38:50 IST 2026
[2026-10-25 22:38:50,433.433 INFO    ] ================================================
[2026-10-25 22:38:51,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:38:50
[2026-10-25 22:38:51,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:38:51,856.856 INFO    ] Initializing speech engine...
[2026-10-25 22:38:51,871.871 INFO    ] 2026-10-25 22:38:51
[2026-10-25 22:38:52,154.154 INFO    ] 2026-10-25 22:38:52
[2026-10-25 22:38:52,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:38:52,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:38:52,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:38:52,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:38:52,724.724 INFO    ] time= 25/10/2026 22:38:52
[2026-10-25 22:38:52,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:38:52,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:38:52,883.883 INFO    ] No existing commands found in stream
[2026-10-25 22:38:57,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:38:57,915.915 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 22:38:58,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:38:58,441.441 INFO    ] Checking for system updates...
[2026-10-25 22:38:58,477.477 INFO    ] 200
[2026-10-25 22:38:58,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:58,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:38:58,537.537 INFO    ] No update needed
[2026-10-25 22:38:58,540.540 INFO    ] Checking for camera pi updates...
[2026-10-25 22:38:58,574.574 INFO    ] 200
[2026-10-25 22:38:58,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:38:58,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:38:58,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:38:58,678.678 INFO    ] No camera update needed
[2026-10-25 22:38:58,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:38:58,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:38:58,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:38:58,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:00,741.741 INFO    ] ================================================
[2026-10-25 22:39:00,761.761 INFO    ] Launching Daemon at Sun Oct 25 22:39:00 IST 2026
[2026-10-25 22:39:00,771.771 INFO    ] ================================================
[2026-10-25 22:39:01,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:01
[2026-10-25 22:39:02,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:39:02,573.573 INFO    ] Initializing speech engine...
[2026-10-25 22:39:02,580.580 INFO    ] 2026-10-25 22:39:02
[2026-10-25 22:39:02,871.871 INFO    ] 2026-10-25 22:39:02
[2026-10-25 22:39:02,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:39:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:39:03,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:39:03,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:39:03,366.366 INFO    ] time= 25/10/2026 22:39:03
[2026-10-25 22:39:03,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:39:03,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:39:03,531.531 INFO    ] No existing commands found in stream
[2026-10-25 22:39:08,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:39:08,554.554 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 22:39:10,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:39:10,514.514 INFO    ] Checking for system updates...
[2026-10-25 22:39:10,553.553 INFO    ] 200
[2026-10-25 22:39:10,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:10,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:39:10,616.616 INFO    ] No update needed
[2026-10-25 22:39:10,618.618 INFO    ] Checking for camera pi updates...
[2026-10-25 22:39:10,654.654 INFO    ] 200
[2026-10-25 22:39:10,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:10,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:39:10,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:39:10,751.751 INFO    ] No camera update needed
[2026-10-25 22:39:10,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:39:10,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:39:10,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:39:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:12,809.809 INFO    ] ================================================
[2026-10-25 22:39:12,828.828 INFO    ] Launching Daemon at Sun Oct 25 22:39:12 IST 2026
[2026-10-25 22:39:12,839.839 INFO    ] ================================================
[2026-10-25 22:39:13,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:13
[2026-10-25 22:39:14,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:39:14,316.316 INFO    ] Initializing speech engine...
[2026-10-25 22:39:14,325.325 INFO    ] 2026-10-25 22:39:14
[2026-10-25 22:39:14,589.589 INFO    ] 2026-10-25 22:39:14
[2026-10-25 22:39:14,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:39:14,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:39:14,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:39:15,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:39:15,053.053 INFO    ] time= 25/10/2026 22:39:15
[2026-10-25 22:39:15,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:39:15,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:39:15,195.195 INFO    ] No existing commands found in stream
[2026-10-25 22:39:20,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:39:20,206.206 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 22:39:22,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:39:22,898.898 INFO    ] Checking for system updates...
[2026-10-25 22:39:22,934.934 INFO    ] 200
[2026-10-25 22:39:22,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:22,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:22,991.991 INFO    ] No update needed
[2026-10-25 22:39:22,994.994 INFO    ] Checking for camera pi updates...
[2026-10-25 22:39:23,027.027 INFO    ] 200
[2026-10-25 22:39:23,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:23,070.070 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:39:23,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:23,122.122 INFO    ] No camera update needed
[2026-10-25 22:39:23,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:39:23,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:39:23,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:39:23,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:25,179.179 INFO    ] ================================================
[2026-10-25 22:39:25,194.194 INFO    ] Launching Daemon at Sun Oct 25 22:39:25 IST 2026
[2026-10-25 22:39:25,205.205 INFO    ] ================================================
[2026-10-25 22:39:25,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:25
[2026-10-25 22:39:26,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:39:26,782.782 INFO    ] Initializing speech engine...
[2026-10-25 22:39:26,790.790 INFO    ] 2026-10-25 22:39:26
[2026-10-25 22:39:27,098.098 INFO    ] 2026-10-25 22:39:27
[2026-10-25 22:39:27,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:39:27,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:39:27,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:39:27,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:39:27,607.607 INFO    ] time= 25/10/2026 22:39:27
[2026-10-25 22:39:27,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:39:27,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:39:27,763.763 INFO    ] No existing commands found in stream
[2026-10-25 22:39:32,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:39:32,786.786 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 22:39:34,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:39:34,791.791 INFO    ] Checking for system updates...
[2026-10-25 22:39:34,828.828 INFO    ] 200
[2026-10-25 22:39:34,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:34,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:34,892.892 INFO    ] No update needed
[2026-10-25 22:39:34,894.894 INFO    ] Checking for camera pi updates...
[2026-10-25 22:39:34,927.927 INFO    ] 200
[2026-10-25 22:39:34,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:34,974.974 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:39:35,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:35,032.032 INFO    ] No camera update needed
[2026-10-25 22:39:35,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:39:35,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:39:35,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:39:35,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:37,086.086 INFO    ] ================================================
[2026-10-25 22:39:37,101.101 INFO    ] Launching Daemon at Sun Oct 25 22:39:37 IST 2026
[2026-10-25 22:39:37,111.111 INFO    ] ================================================
[2026-10-25 22:39:37,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:37
[2026-10-25 22:39:38,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:39:38,530.530 INFO    ] Initializing speech engine...
[2026-10-25 22:39:38,539.539 INFO    ] 2026-10-25 22:39:38
[2026-10-25 22:39:38,787.787 INFO    ] 2026-10-25 22:39:38
[2026-10-25 22:39:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:39:39,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:39:39,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:39:39,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:39:39,272.272 INFO    ] time= 25/10/2026 22:39:39
[2026-10-25 22:39:39,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:39:39,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:39:39,423.423 INFO    ] No existing commands found in stream
[2026-10-25 22:39:44,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:39:44,455.455 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 22:39:45,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:39:45,293.293 INFO    ] Checking for system updates...
[2026-10-25 22:39:45,332.332 INFO    ] 200
[2026-10-25 22:39:45,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:45,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:39:45,395.395 INFO    ] No update needed
[2026-10-25 22:39:45,397.397 INFO    ] Checking for camera pi updates...
[2026-10-25 22:39:45,434.434 INFO    ] 200
[2026-10-25 22:39:45,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:45,477.477 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:39:45,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:39:45,557.557 INFO    ] No camera update needed
[2026-10-25 22:39:45,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:39:45,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:39:45,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:39:45,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:47,613.613 INFO    ] ================================================
[2026-10-25 22:39:47,628.628 INFO    ] Launching Daemon at Sun Oct 25 22:39:47 IST 2026
[2026-10-25 22:39:47,639.639 INFO    ] ================================================
[2026-10-25 22:39:48,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:48
[2026-10-25 22:39:48,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:39:49,064.064 INFO    ] Initializing speech engine...
[2026-10-25 22:39:49,079.079 INFO    ] 2026-10-25 22:39:49
[2026-10-25 22:39:49,349.349 INFO    ] 2026-10-25 22:39:49
[2026-10-25 22:39:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:39:49,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:39:49,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:39:49,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:39:49,717.717 INFO    ] time= 25/10/2026 22:39:49
[2026-10-25 22:39:49,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:39:49,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:39:49,887.887 INFO    ] No existing commands found in stream
[2026-10-25 22:39:54,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:39:54,915.915 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-25 22:39:56,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:39:56,151.151 INFO    ] Checking for system updates...
[2026-10-25 22:39:56,187.187 INFO    ] 200
[2026-10-25 22:39:56,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:56,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:56,249.249 INFO    ] No update needed
[2026-10-25 22:39:56,252.252 INFO    ] Checking for camera pi updates...
[2026-10-25 22:39:56,286.286 INFO    ] 200
[2026-10-25 22:39:56,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:39:56,329.329 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:39:56,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:39:56,384.384 INFO    ] No camera update needed
[2026-10-25 22:39:56,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:39:56,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:39:56,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:39:56,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:39:58,439.439 INFO    ] ================================================
[2026-10-25 22:39:58,454.454 INFO    ] Launching Daemon at Sun Oct 25 22:39:58 IST 2026
[2026-10-25 22:39:58,465.465 INFO    ] ================================================
[2026-10-25 22:39:59,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:39:59
[2026-10-25 22:39:59,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:00,116.116 INFO    ] Initializing speech engine...
[2026-10-25 22:40:00,122.122 INFO    ] 2026-10-25 22:40:00
[2026-10-25 22:40:00,387.387 INFO    ] 2026-10-25 22:40:00
[2026-10-25 22:40:00,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:00,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:00,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:00,771.771 INFO    ] time= 25/10/2026 22:40:00
[2026-10-25 22:40:00,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:00,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:00,847.847 INFO    ] No existing commands found in stream
[2026-10-25 22:40:05,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:40:05,863.863 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-25 22:40:07,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:40:07,694.694 INFO    ] Checking for system updates...
[2026-10-25 22:40:07,735.735 INFO    ] 200
[2026-10-25 22:40:07,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:07,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:07,806.806 INFO    ] No update needed
[2026-10-25 22:40:07,809.809 INFO    ] Checking for camera pi updates...
[2026-10-25 22:40:07,847.847 INFO    ] 200
[2026-10-25 22:40:07,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:07,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:40:07,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:07,950.950 INFO    ] No camera update needed
[2026-10-25 22:40:07,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:40:07,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:40:07,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:40:07,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:40:10,009.009 INFO    ] ================================================
[2026-10-25 22:40:10,024.024 INFO    ] Launching Daemon at Sun Oct 25 22:40:10 IST 2026
[2026-10-25 22:40:10,034.034 INFO    ] ================================================
[2026-10-25 22:40:10,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:40:10
[2026-10-25 22:40:11,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:11,508.508 INFO    ] Initializing speech engine...
[2026-10-25 22:40:11,520.520 INFO    ] 2026-10-25 22:40:11
[2026-10-25 22:40:11,774.774 INFO    ] 2026-10-25 22:40:11
[2026-10-25 22:40:11,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:13,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:13,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:13,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:13,209.209 INFO    ] time= 25/10/2026 22:40:13
[2026-10-25 22:40:13,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:13,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:13,276.276 INFO    ] No existing commands found in stream
[2026-10-25 22:40:18,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:40:18,291.291 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 22:40:21,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:40:21,332.332 INFO    ] Checking for system updates...
[2026-10-25 22:40:21,369.369 INFO    ] 200
[2026-10-25 22:40:21,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:21,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:21,430.430 INFO    ] No update needed
[2026-10-25 22:40:21,432.432 INFO    ] Checking for camera pi updates...
[2026-10-25 22:40:21,467.467 INFO    ] 200
[2026-10-25 22:40:21,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:21,512.512 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:40:21,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:21,576.576 INFO    ] No camera update needed
[2026-10-25 22:40:21,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:40:21,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:40:21,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:40:21,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:40:23,643.643 INFO    ] ================================================
[2026-10-25 22:40:23,658.658 INFO    ] Launching Daemon at Sun Oct 25 22:40:23 IST 2026
[2026-10-25 22:40:23,669.669 INFO    ] ================================================
[2026-10-25 22:40:24,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:40:24
[2026-10-25 22:40:24,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:25,099.099 INFO    ] Initializing speech engine...
[2026-10-25 22:40:25,119.119 INFO    ] 2026-10-25 22:40:25
[2026-10-25 22:40:25,393.393 INFO    ] 2026-10-25 22:40:25
[2026-10-25 22:40:25,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:25,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:25,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:25,801.801 INFO    ] time= 25/10/2026 22:40:25
[2026-10-25 22:40:25,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:25,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:25,885.885 INFO    ] No existing commands found in stream
[2026-10-25 22:40:30,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:40:30,900.900 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 22:40:31,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:40:31,683.683 INFO    ] Checking for system updates...
[2026-10-25 22:40:31,724.724 INFO    ] 200
[2026-10-25 22:40:31,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:31,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:31,793.793 INFO    ] No update needed
[2026-10-25 22:40:31,796.796 INFO    ] Checking for camera pi updates...
[2026-10-25 22:40:31,833.833 INFO    ] 200
[2026-10-25 22:40:31,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:31,887.887 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:40:32,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:32,032.032 INFO    ] No camera update needed
[2026-10-25 22:40:32,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:40:32,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:40:32,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:40:32,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:40:34,089.089 INFO    ] ================================================
[2026-10-25 22:40:34,104.104 INFO    ] Launching Daemon at Sun Oct 25 22:40:34 IST 2026
[2026-10-25 22:40:34,115.115 INFO    ] ================================================
[2026-10-25 22:40:34,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:40:34
[2026-10-25 22:40:35,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:35,561.561 INFO    ] Initializing speech engine...
[2026-10-25 22:40:35,581.581 INFO    ] 2026-10-25 22:40:35
[2026-10-25 22:40:35,858.858 INFO    ] 2026-10-25 22:40:35
[2026-10-25 22:40:35,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:36,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:36,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:36,230.230 INFO    ] time= 25/10/2026 22:40:36
[2026-10-25 22:40:36,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:36,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:36,353.353 INFO    ] No existing commands found in stream
[2026-10-25 22:40:41,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:40:41,369.369 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 22:40:43,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:40:43,602.602 INFO    ] Checking for system updates...
[2026-10-25 22:40:43,638.638 INFO    ] 200
[2026-10-25 22:40:43,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:43,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:43,702.702 INFO    ] No update needed
[2026-10-25 22:40:43,704.704 INFO    ] Checking for camera pi updates...
[2026-10-25 22:40:43,738.738 INFO    ] 200
[2026-10-25 22:40:43,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:43,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:40:43,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:40:43,840.840 INFO    ] No camera update needed
[2026-10-25 22:40:43,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:40:43,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:40:43,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:40:43,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:40:45,896.896 INFO    ] ================================================
[2026-10-25 22:40:45,911.911 INFO    ] Launching Daemon at Sun Oct 25 22:40:45 IST 2026
[2026-10-25 22:40:45,921.921 INFO    ] ================================================
[2026-10-25 22:40:46,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:40:46
[2026-10-25 22:40:47,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:47,313.313 INFO    ] Initializing speech engine...
[2026-10-25 22:40:47,322.322 INFO    ] 2026-10-25 22:40:47
[2026-10-25 22:40:47,593.593 INFO    ] 2026-10-25 22:40:47
[2026-10-25 22:40:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:47,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:47,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:47,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:47,969.969 INFO    ] time= 25/10/2026 22:40:47
[2026-10-25 22:40:47,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:48,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:48,138.138 INFO    ] No existing commands found in stream
[2026-10-25 22:40:53,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:40:53,161.161 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 22:40:54,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:40:54,860.860 INFO    ] Checking for system updates...
[2026-10-25 22:40:54,897.897 INFO    ] 200
[2026-10-25 22:40:54,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:54,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:40:54,956.956 INFO    ] No update needed
[2026-10-25 22:40:54,958.958 INFO    ] Checking for camera pi updates...
[2026-10-25 22:40:54,994.994 INFO    ] 200
[2026-10-25 22:40:54,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:40:55,039.039 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:40:55,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:40:55,093.093 INFO    ] No camera update needed
[2026-10-25 22:40:55,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:40:55,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:40:55,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:40:55,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:40:57,152.152 INFO    ] ================================================
[2026-10-25 22:40:57,167.167 INFO    ] Launching Daemon at Sun Oct 25 22:40:57 IST 2026
[2026-10-25 22:40:57,178.178 INFO    ] ================================================
[2026-10-25 22:40:57,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:40:57
[2026-10-25 22:40:58,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:40:58,584.584 INFO    ] Initializing speech engine...
[2026-10-25 22:40:58,597.597 INFO    ] 2026-10-25 22:40:58
[2026-10-25 22:40:58,862.862 INFO    ] 2026-10-25 22:40:58
[2026-10-25 22:40:58,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:40:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:40:59,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:40:59,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:40:59,235.235 INFO    ] time= 25/10/2026 22:40:59
[2026-10-25 22:40:59,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:40:59,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:40:59,413.413 INFO    ] No existing commands found in stream
[2026-10-25 22:41:04,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:41:04,441.441 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 22:41:05,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:41:05,206.206 INFO    ] Checking for system updates...
[2026-10-25 22:41:05,246.246 INFO    ] 200
[2026-10-25 22:41:05,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:05,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:05,316.316 INFO    ] No update needed
[2026-10-25 22:41:05,319.319 INFO    ] Checking for camera pi updates...
[2026-10-25 22:41:05,353.353 INFO    ] 200
[2026-10-25 22:41:05,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:05,403.403 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:41:05,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:05,461.461 INFO    ] No camera update needed
[2026-10-25 22:41:05,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:41:05,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:41:05,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:41:05,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:41:07,519.519 INFO    ] ================================================
[2026-10-25 22:41:07,535.535 INFO    ] Launching Daemon at Sun Oct 25 22:41:07 IST 2026
[2026-10-25 22:41:07,545.545 INFO    ] ================================================
[2026-10-25 22:41:08,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:41:08
[2026-10-25 22:41:08,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:41:09,030.030 INFO    ] Initializing speech engine...
[2026-10-25 22:41:09,046.046 INFO    ] 2026-10-25 22:41:09
[2026-10-25 22:41:09,318.318 INFO    ] 2026-10-25 22:41:09
[2026-10-25 22:41:09,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:41:09,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:41:09,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:41:09,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:41:09,697.697 INFO    ] time= 25/10/2026 22:41:09
[2026-10-25 22:41:09,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:41:09,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:41:09,822.822 INFO    ] No existing commands found in stream
[2026-10-25 22:41:14,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:41:14,837.837 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-25 22:41:16,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:41:16,751.751 INFO    ] Checking for system updates...
[2026-10-25 22:41:16,790.790 INFO    ] 200
[2026-10-25 22:41:16,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:16,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:16,848.848 INFO    ] No update needed
[2026-10-25 22:41:16,851.851 INFO    ] Checking for camera pi updates...
[2026-10-25 22:41:16,884.884 INFO    ] 200
[2026-10-25 22:41:16,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:16,928.928 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:41:16,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:16,983.983 INFO    ] No camera update needed
[2026-10-25 22:41:16,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:41:16,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:41:16,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:41:16,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:41:19,038.038 INFO    ] ================================================
[2026-10-25 22:41:19,052.052 INFO    ] Launching Daemon at Sun Oct 25 22:41:19 IST 2026
[2026-10-25 22:41:19,069.069 INFO    ] ================================================
[2026-10-25 22:41:19,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:41:19
[2026-10-25 22:41:20,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:41:20,504.504 INFO    ] Initializing speech engine...
[2026-10-25 22:41:20,513.513 INFO    ] 2026-10-25 22:41:20
[2026-10-25 22:41:20,811.811 INFO    ] 2026-10-25 22:41:20
[2026-10-25 22:41:20,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:41:21,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:41:21,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:41:21,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:41:21,187.187 INFO    ] time= 25/10/2026 22:41:21
[2026-10-25 22:41:21,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:41:21,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:41:21,310.310 INFO    ] No existing commands found in stream
[2026-10-25 22:41:26,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:41:26,324.324 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-25 22:41:29,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:41:29,047.047 INFO    ] Checking for system updates...
[2026-10-25 22:41:29,083.083 INFO    ] 200
[2026-10-25 22:41:29,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:29,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:29,143.143 INFO    ] No update needed
[2026-10-25 22:41:29,145.145 INFO    ] Checking for camera pi updates...
[2026-10-25 22:41:29,179.179 INFO    ] 200
[2026-10-25 22:41:29,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:29,222.222 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:41:29,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:41:29,272.272 INFO    ] No camera update needed
[2026-10-25 22:41:29,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:41:29,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:41:29,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:41:29,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:41:31,327.327 INFO    ] ================================================
[2026-10-25 22:41:31,342.342 INFO    ] Launching Daemon at Sun Oct 25 22:41:31 IST 2026
[2026-10-25 22:41:31,352.352 INFO    ] ================================================
[2026-10-25 22:41:32,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:41:32
[2026-10-25 22:41:32,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:41:33,049.049 INFO    ] Initializing speech engine...
[2026-10-25 22:41:33,061.061 INFO    ] 2026-10-25 22:41:33
[2026-10-25 22:41:33,334.334 INFO    ] 2026-10-25 22:41:33
[2026-10-25 22:41:33,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:41:33,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:41:33,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:41:33,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:41:33,816.816 INFO    ] time= 25/10/2026 22:41:33
[2026-10-25 22:41:33,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:41:33,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:41:33,971.971 INFO    ] No existing commands found in stream
[2026-10-25 22:41:38,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:41:38,986.986 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-25 22:41:43,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:41:43,711.711 INFO    ] Checking for system updates...
[2026-10-25 22:41:43,755.755 INFO    ] 200
[2026-10-25 22:41:43,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:43,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:41:43,844.844 INFO    ] No update needed
[2026-10-25 22:41:43,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 22:41:43,881.881 INFO    ] 200
[2026-10-25 22:41:43,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:43,924.924 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:41:43,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:41:43,999.999 INFO    ] No camera update needed
[2026-10-25 22:41:44,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:41:44,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:41:44,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:41:44,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:41:46,077.077 INFO    ] ================================================
[2026-10-25 22:41:46,092.092 INFO    ] Launching Daemon at Sun Oct 25 22:41:46 IST 2026
[2026-10-25 22:41:46,103.103 INFO    ] ================================================
[2026-10-25 22:41:46,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:41:46
[2026-10-25 22:41:47,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:41:47,554.554 INFO    ] Initializing speech engine...
[2026-10-25 22:41:47,580.580 INFO    ] 2026-10-25 22:41:47
[2026-10-25 22:41:47,853.853 INFO    ] 2026-10-25 22:41:47
[2026-10-25 22:41:47,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:41:48,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:41:48,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:41:48,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:41:48,178.178 INFO    ] time= 25/10/2026 22:41:48
[2026-10-25 22:41:48,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:41:48,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:41:48,299.299 INFO    ] No existing commands found in stream
[2026-10-25 22:41:53,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:41:53,325.325 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 22:41:55,923.923 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:41:55,926.926 INFO    ] Checking for system updates...
[2026-10-25 22:41:55,962.962 INFO    ] 200
[2026-10-25 22:41:55,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:56,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:41:56,020.020 INFO    ] No update needed
[2026-10-25 22:41:56,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 22:41:56,061.061 INFO    ] 200
[2026-10-25 22:41:56,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:41:56,105.105 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:41:56,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:41:56,164.164 INFO    ] No camera update needed
[2026-10-25 22:41:56,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:41:56,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:41:56,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:41:56,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:41:58,220.220 INFO    ] ================================================
[2026-10-25 22:41:58,235.235 INFO    ] Launching Daemon at Sun Oct 25 22:41:58 IST 2026
[2026-10-25 22:41:58,246.246 INFO    ] ================================================
[2026-10-25 22:41:58,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:41:58
[2026-10-25 22:41:59,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:41:59,838.838 INFO    ] Initializing speech engine...
[2026-10-25 22:41:59,852.852 INFO    ] 2026-10-25 22:41:59
[2026-10-25 22:42:00,160.160 INFO    ] 2026-10-25 22:42:00
[2026-10-25 22:42:00,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:42:00,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:42:00,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:42:00,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:42:00,612.612 INFO    ] time= 25/10/2026 22:42:00
[2026-10-25 22:42:00,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:42:00,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:42:00,766.766 INFO    ] No existing commands found in stream
[2026-10-25 22:42:05,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:42:05,781.781 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 22:42:07,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:42:07,929.929 INFO    ] Checking for system updates...
[2026-10-25 22:42:07,965.965 INFO    ] 200
[2026-10-25 22:42:07,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:08,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:42:08,022.022 INFO    ] No update needed
[2026-10-25 22:42:08,025.025 INFO    ] Checking for camera pi updates...
[2026-10-25 22:42:08,063.063 INFO    ] 200
[2026-10-25 22:42:08,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:08,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:42:08,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:42:08,164.164 INFO    ] No camera update needed
[2026-10-25 22:42:08,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:42:08,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:42:08,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:42:08,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:42:10,221.221 INFO    ] ================================================
[2026-10-25 22:42:10,236.236 INFO    ] Launching Daemon at Sun Oct 25 22:42:10 IST 2026
[2026-10-25 22:42:10,246.246 INFO    ] ================================================
[2026-10-25 22:42:10,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:42:10
[2026-10-25 22:42:11,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:42:11,662.662 INFO    ] Initializing speech engine...
[2026-10-25 22:42:11,685.685 INFO    ] 2026-10-25 22:42:11
[2026-10-25 22:42:11,934.934 INFO    ] 2026-10-25 22:42:11
[2026-10-25 22:42:11,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:42:13,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:42:13,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:42:13,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:42:13,132.132 INFO    ] time= 25/10/2026 22:42:13
[2026-10-25 22:42:13,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:42:13,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:42:13,240.240 INFO    ] No existing commands found in stream
[2026-10-25 22:42:18,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:42:18,273.273 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 22:42:19,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:42:19,875.875 INFO    ] Checking for system updates...
[2026-10-25 22:42:19,911.911 INFO    ] 200
[2026-10-25 22:42:19,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:19,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:19,978.978 INFO    ] No update needed
[2026-10-25 22:42:19,980.980 INFO    ] Checking for camera pi updates...
[2026-10-25 22:42:20,014.014 INFO    ] 200
[2026-10-25 22:42:20,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:20,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:42:20,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:20,130.130 INFO    ] No camera update needed
[2026-10-25 22:42:20,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:42:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:42:20,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:42:20,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:42:22,196.196 INFO    ] ================================================
[2026-10-25 22:42:22,215.215 INFO    ] Launching Daemon at Sun Oct 25 22:42:22 IST 2026
[2026-10-25 22:42:22,226.226 INFO    ] ================================================
[2026-10-25 22:42:22,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:42:22
[2026-10-25 22:42:23,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:42:23,824.824 INFO    ] Initializing speech engine...
[2026-10-25 22:42:23,829.829 INFO    ] 2026-10-25 22:42:23
[2026-10-25 22:42:24,117.117 INFO    ] 2026-10-25 22:42:24
[2026-10-25 22:42:24,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:42:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:42:24,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:42:24,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:42:24,644.644 INFO    ] time= 25/10/2026 22:42:24
[2026-10-25 22:42:24,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:42:24,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:42:24,797.797 INFO    ] No existing commands found in stream
[2026-10-25 22:42:29,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:42:29,823.823 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 22:42:31,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:42:31,928.928 INFO    ] Checking for system updates...
[2026-10-25 22:42:31,966.966 INFO    ] 200
[2026-10-25 22:42:31,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:32,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:32,032.032 INFO    ] No update needed
[2026-10-25 22:42:32,035.035 INFO    ] Checking for camera pi updates...
[2026-10-25 22:42:32,071.071 INFO    ] 200
[2026-10-25 22:42:32,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:32,117.117 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:42:32,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:32,165.165 INFO    ] No camera update needed
[2026-10-25 22:42:32,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:42:32,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:42:32,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:42:32,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:42:34,221.221 INFO    ] ================================================
[2026-10-25 22:42:34,236.236 INFO    ] Launching Daemon at Sun Oct 25 22:42:34 IST 2026
[2026-10-25 22:42:34,247.247 INFO    ] ================================================
[2026-10-25 22:42:34,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:42:34
[2026-10-25 22:42:35,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:42:35,845.845 INFO    ] Initializing speech engine...
[2026-10-25 22:42:35,858.858 INFO    ] 2026-10-25 22:42:35
[2026-10-25 22:42:36,134.134 INFO    ] 2026-10-25 22:42:36
[2026-10-25 22:42:36,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:42:36,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:42:36,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:42:36,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:42:36,594.594 INFO    ] time= 25/10/2026 22:42:36
[2026-10-25 22:42:36,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:42:36,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:42:36,732.732 INFO    ] No existing commands found in stream
[2026-10-25 22:42:41,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:42:41,747.747 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 22:42:42,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:42:42,981.981 INFO    ] Checking for system updates...
[2026-10-25 22:42:43,020.020 INFO    ] 200
[2026-10-25 22:42:43,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:43,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:43,078.078 INFO    ] No update needed
[2026-10-25 22:42:43,081.081 INFO    ] Checking for camera pi updates...
[2026-10-25 22:42:43,115.115 INFO    ] 200
[2026-10-25 22:42:43,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:43,162.162 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:42:43,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:42:43,323.323 INFO    ] No camera update needed
[2026-10-25 22:42:43,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:42:43,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:42:43,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:42:43,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:42:45,377.377 INFO    ] ================================================
[2026-10-25 22:42:45,391.391 INFO    ] Launching Daemon at Sun Oct 25 22:42:45 IST 2026
[2026-10-25 22:42:45,402.402 INFO    ] ================================================
[2026-10-25 22:42:45,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:42:45
[2026-10-25 22:42:46,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:42:46,802.802 INFO    ] Initializing speech engine...
[2026-10-25 22:42:46,821.821 INFO    ] 2026-10-25 22:42:46
[2026-10-25 22:42:47,081.081 INFO    ] 2026-10-25 22:42:47
[2026-10-25 22:42:47,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:42:47,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:42:47,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:42:47,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:42:47,580.580 INFO    ] time= 25/10/2026 22:42:47
[2026-10-25 22:42:47,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:42:47,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:42:47,733.733 INFO    ] No existing commands found in stream
[2026-10-25 22:42:52,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:42:52,747.747 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 22:42:56,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:42:56,669.669 INFO    ] Checking for system updates...
[2026-10-25 22:42:56,708.708 INFO    ] 200
[2026-10-25 22:42:56,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:56,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:42:56,766.766 INFO    ] No update needed
[2026-10-25 22:42:56,769.769 INFO    ] Checking for camera pi updates...
[2026-10-25 22:42:56,803.803 INFO    ] 200
[2026-10-25 22:42:56,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:42:56,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:42:56,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:42:56,906.906 INFO    ] No camera update needed
[2026-10-25 22:42:56,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:42:56,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:42:56,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:42:56,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:42:58,961.961 INFO    ] ================================================
[2026-10-25 22:42:58,976.976 INFO    ] Launching Daemon at Sun Oct 25 22:42:58 IST 2026
[2026-10-25 22:42:58,986.986 INFO    ] ================================================
[2026-10-25 22:42:59,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:42:59
[2026-10-25 22:43:00,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:43:00,535.535 INFO    ] Initializing speech engine...
[2026-10-25 22:43:00,550.550 INFO    ] 2026-10-25 22:43:00
[2026-10-25 22:43:00,824.824 INFO    ] 2026-10-25 22:43:00
[2026-10-25 22:43:00,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:43:01,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:43:01,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:43:01,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:43:01,354.354 INFO    ] time= 25/10/2026 22:43:01
[2026-10-25 22:43:01,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:43:01,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:43:01,494.494 INFO    ] No existing commands found in stream
[2026-10-25 22:43:06,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:43:06,524.524 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 22:43:07,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:43:07,735.735 INFO    ] Checking for system updates...
[2026-10-25 22:43:07,775.775 INFO    ] 200
[2026-10-25 22:43:07,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:07,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:07,837.837 INFO    ] No update needed
[2026-10-25 22:43:07,839.839 INFO    ] Checking for camera pi updates...
[2026-10-25 22:43:07,876.876 INFO    ] 200
[2026-10-25 22:43:07,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:07,923.923 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:43:07,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:07,976.976 INFO    ] No camera update needed
[2026-10-25 22:43:07,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:43:07,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:43:07,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:43:07,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:43:10,031.031 INFO    ] ================================================
[2026-10-25 22:43:10,045.045 INFO    ] Launching Daemon at Sun Oct 25 22:43:10 IST 2026
[2026-10-25 22:43:10,057.057 INFO    ] ================================================
[2026-10-25 22:43:10,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:43:10
[2026-10-25 22:43:11,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:43:11,637.637 INFO    ] Initializing speech engine...
[2026-10-25 22:43:11,649.649 INFO    ] 2026-10-25 22:43:11
[2026-10-25 22:43:11,918.918 INFO    ] 2026-10-25 22:43:11
[2026-10-25 22:43:11,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:43:13,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:43:13,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:43:13,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:43:13,416.416 INFO    ] time= 25/10/2026 22:43:13
[2026-10-25 22:43:13,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:43:13,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:43:13,540.540 INFO    ] No existing commands found in stream
[2026-10-25 22:43:18,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:43:18,569.569 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 22:43:20,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:43:20,810.810 INFO    ] Checking for system updates...
[2026-10-25 22:43:20,847.847 INFO    ] 200
[2026-10-25 22:43:20,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:20,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:43:20,912.912 INFO    ] No update needed
[2026-10-25 22:43:20,915.915 INFO    ] Checking for camera pi updates...
[2026-10-25 22:43:20,952.952 INFO    ] 200
[2026-10-25 22:43:20,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:21,003.003 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:43:21,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:43:21,058.058 INFO    ] No camera update needed
[2026-10-25 22:43:21,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:43:21,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:43:21,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:43:21,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:43:23,116.116 INFO    ] ================================================
[2026-10-25 22:43:23,131.131 INFO    ] Launching Daemon at Sun Oct 25 22:43:23 IST 2026
[2026-10-25 22:43:23,142.142 INFO    ] ================================================
[2026-10-25 22:43:23,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:43:23
[2026-10-25 22:43:24,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:43:24,557.557 INFO    ] Initializing speech engine...
[2026-10-25 22:43:24,566.566 INFO    ] 2026-10-25 22:43:24
[2026-10-25 22:43:24,812.812 INFO    ] 2026-10-25 22:43:24
[2026-10-25 22:43:24,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:43:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:43:25,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:43:25,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:43:25,186.186 INFO    ] time= 25/10/2026 22:43:25
[2026-10-25 22:43:25,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:43:25,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:43:25,354.354 INFO    ] No existing commands found in stream
[2026-10-25 22:43:30,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:43:30,382.382 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-25 22:43:34,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:43:34,325.325 INFO    ] Checking for system updates...
[2026-10-25 22:43:34,364.364 INFO    ] 200
[2026-10-25 22:43:34,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:34,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:34,422.422 INFO    ] No update needed
[2026-10-25 22:43:34,424.424 INFO    ] Checking for camera pi updates...
[2026-10-25 22:43:34,461.461 INFO    ] 200
[2026-10-25 22:43:34,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:34,504.504 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:43:34,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:34,562.562 INFO    ] No camera update needed
[2026-10-25 22:43:34,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:43:34,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:43:34,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:43:34,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:43:36,618.618 INFO    ] ================================================
[2026-10-25 22:43:36,633.633 INFO    ] Launching Daemon at Sun Oct 25 22:43:36 IST 2026
[2026-10-25 22:43:36,645.645 INFO    ] ================================================
[2026-10-25 22:43:37,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:43:37
[2026-10-25 22:43:37,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:43:38,238.238 INFO    ] Initializing speech engine...
[2026-10-25 22:43:38,251.251 INFO    ] 2026-10-25 22:43:38
[2026-10-25 22:43:38,527.527 INFO    ] 2026-10-25 22:43:38
[2026-10-25 22:43:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:43:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:43:38,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:43:38,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:43:39,003.003 INFO    ] time= 25/10/2026 22:43:38
[2026-10-25 22:43:39,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:43:39,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:43:39,217.217 INFO    ] No existing commands found in stream
[2026-10-25 22:43:44,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:43:44,238.238 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-25 22:43:45,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:43:45,368.368 INFO    ] Checking for system updates...
[2026-10-25 22:43:45,406.406 INFO    ] 200
[2026-10-25 22:43:45,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:45,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:45,465.465 INFO    ] No update needed
[2026-10-25 22:43:45,468.468 INFO    ] Checking for camera pi updates...
[2026-10-25 22:43:45,503.503 INFO    ] 200
[2026-10-25 22:43:45,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:45,551.551 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:43:45,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:43:45,625.625 INFO    ] No camera update needed
[2026-10-25 22:43:45,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:43:45,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:43:45,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:43:45,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:43:47,680.680 INFO    ] ================================================
[2026-10-25 22:43:47,696.696 INFO    ] Launching Daemon at Sun Oct 25 22:43:47 IST 2026
[2026-10-25 22:43:47,707.707 INFO    ] ================================================
[2026-10-25 22:43:48,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:43:48
[2026-10-25 22:43:48,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:43:49,143.143 INFO    ] Initializing speech engine...
[2026-10-25 22:43:49,150.150 INFO    ] 2026-10-25 22:43:49
[2026-10-25 22:43:49,445.445 INFO    ] 2026-10-25 22:43:49
[2026-10-25 22:43:49,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:43:49,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:43:49,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:43:49,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:43:49,858.858 INFO    ] time= 25/10/2026 22:43:49
[2026-10-25 22:43:49,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:43:49,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:43:49,941.941 INFO    ] No existing commands found in stream
[2026-10-25 22:43:54,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:43:54,956.956 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-25 22:43:57,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:43:57,807.807 INFO    ] Checking for system updates...
[2026-10-25 22:43:57,847.847 INFO    ] 200
[2026-10-25 22:43:57,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:57,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:43:57,909.909 INFO    ] No update needed
[2026-10-25 22:43:57,911.911 INFO    ] Checking for camera pi updates...
[2026-10-25 22:43:57,945.945 INFO    ] 200
[2026-10-25 22:43:57,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:43:57,996.996 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:43:58,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:43:58,049.049 INFO    ] No camera update needed
[2026-10-25 22:43:58,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:43:58,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:43:58,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:43:58,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:44:00,104.104 INFO    ] ================================================
[2026-10-25 22:44:00,119.119 INFO    ] Launching Daemon at Sun Oct 25 22:44:00 IST 2026
[2026-10-25 22:44:00,130.130 INFO    ] ================================================
[2026-10-25 22:44:00,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:44:00
[2026-10-25 22:44:01,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:44:01,557.557 INFO    ] Initializing speech engine...
[2026-10-25 22:44:01,563.563 INFO    ] 2026-10-25 22:44:01
[2026-10-25 22:44:01,853.853 INFO    ] 2026-10-25 22:44:01
[2026-10-25 22:44:01,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:44:02,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:44:02,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:44:02,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:44:02,351.351 INFO    ] time= 25/10/2026 22:44:02
[2026-10-25 22:44:02,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:44:02,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:44:02,452.452 INFO    ] No existing commands found in stream
[2026-10-25 22:44:07,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:44:07,491.491 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 22:44:10,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:44:10,334.334 INFO    ] Checking for system updates...
[2026-10-25 22:44:10,372.372 INFO    ] 200
[2026-10-25 22:44:10,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:10,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:10,437.437 INFO    ] No update needed
[2026-10-25 22:44:10,439.439 INFO    ] Checking for camera pi updates...
[2026-10-25 22:44:10,474.474 INFO    ] 200
[2026-10-25 22:44:10,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:10,519.519 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:44:10,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:10,570.570 INFO    ] No camera update needed
[2026-10-25 22:44:10,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:44:10,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:44:10,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:44:10,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:44:12,627.627 INFO    ] ================================================
[2026-10-25 22:44:12,643.643 INFO    ] Launching Daemon at Sun Oct 25 22:44:12 IST 2026
[2026-10-25 22:44:12,654.654 INFO    ] ================================================
[2026-10-25 22:44:13,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:44:13
[2026-10-25 22:44:13,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:44:14,109.109 INFO    ] Initializing speech engine...
[2026-10-25 22:44:14,115.115 INFO    ] 2026-10-25 22:44:14
[2026-10-25 22:44:14,375.375 INFO    ] 2026-10-25 22:44:14
[2026-10-25 22:44:14,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:44:14,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:44:14,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:44:14,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:44:14,731.731 INFO    ] time= 25/10/2026 22:44:14
[2026-10-25 22:44:14,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:44:14,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:44:14,855.855 INFO    ] No existing commands found in stream
[2026-10-25 22:44:19,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:44:19,871.871 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 22:44:24,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:44:24,023.023 INFO    ] Checking for system updates...
[2026-10-25 22:44:24,059.059 INFO    ] 200
[2026-10-25 22:44:24,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:24,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:24,116.116 INFO    ] No update needed
[2026-10-25 22:44:24,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 22:44:24,153.153 INFO    ] 200
[2026-10-25 22:44:24,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:24,204.204 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:44:24,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:24,256.256 INFO    ] No camera update needed
[2026-10-25 22:44:24,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:44:24,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:44:24,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:44:24,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:44:26,313.313 INFO    ] ================================================
[2026-10-25 22:44:26,328.328 INFO    ] Launching Daemon at Sun Oct 25 22:44:26 IST 2026
[2026-10-25 22:44:26,339.339 INFO    ] ================================================
[2026-10-25 22:44:26,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:44:26
[2026-10-25 22:44:27,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:44:27,787.787 INFO    ] Initializing speech engine...
[2026-10-25 22:44:27,795.795 INFO    ] 2026-10-25 22:44:27
[2026-10-25 22:44:28,048.048 INFO    ] 2026-10-25 22:44:28
[2026-10-25 22:44:28,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:44:28,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:44:28,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:44:28,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:44:28,539.539 INFO    ] time= 25/10/2026 22:44:28
[2026-10-25 22:44:28,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:44:28,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:44:28,684.684 INFO    ] No existing commands found in stream
[2026-10-25 22:44:33,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:44:33,698.698 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 22:44:36,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:44:36,085.085 INFO    ] Checking for system updates...
[2026-10-25 22:44:36,121.121 INFO    ] 200
[2026-10-25 22:44:36,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:36,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:36,183.183 INFO    ] No update needed
[2026-10-25 22:44:36,185.185 INFO    ] Checking for camera pi updates...
[2026-10-25 22:44:36,223.223 INFO    ] 200
[2026-10-25 22:44:36,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:36,266.266 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:44:36,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:36,318.318 INFO    ] No camera update needed
[2026-10-25 22:44:36,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:44:36,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:44:36,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:44:36,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:44:38,374.374 INFO    ] ================================================
[2026-10-25 22:44:38,389.389 INFO    ] Launching Daemon at Sun Oct 25 22:44:38 IST 2026
[2026-10-25 22:44:38,400.400 INFO    ] ================================================
[2026-10-25 22:44:38,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:44:38
[2026-10-25 22:44:39,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:44:39,882.882 INFO    ] Initializing speech engine...
[2026-10-25 22:44:39,889.889 INFO    ] 2026-10-25 22:44:39
[2026-10-25 22:44:40,185.185 INFO    ] 2026-10-25 22:44:40
[2026-10-25 22:44:40,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:44:40,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:44:40,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:44:40,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:44:40,641.641 INFO    ] time= 25/10/2026 22:44:40
[2026-10-25 22:44:40,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:44:40,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:44:40,787.787 INFO    ] No existing commands found in stream
[2026-10-25 22:44:45,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:44:45,803.803 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-25 22:44:47,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:44:47,849.849 INFO    ] Checking for system updates...
[2026-10-25 22:44:47,886.886 INFO    ] 200
[2026-10-25 22:44:47,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:47,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:44:47,946.946 INFO    ] No update needed
[2026-10-25 22:44:47,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 22:44:47,983.983 INFO    ] 200
[2026-10-25 22:44:47,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:48,027.027 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:44:48,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:44:48,204.204 INFO    ] No camera update needed
[2026-10-25 22:44:48,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:44:48,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:44:48,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:44:48,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:44:50,261.261 INFO    ] ================================================
[2026-10-25 22:44:50,277.277 INFO    ] Launching Daemon at Sun Oct 25 22:44:50 IST 2026
[2026-10-25 22:44:50,287.287 INFO    ] ================================================
[2026-10-25 22:44:50,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:44:50
[2026-10-25 22:44:51,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:44:51,729.729 INFO    ] Initializing speech engine...
[2026-10-25 22:44:51,749.749 INFO    ] 2026-10-25 22:44:51
[2026-10-25 22:44:52,028.028 INFO    ] 2026-10-25 22:44:52
[2026-10-25 22:44:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:44:52,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:44:52,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:44:52,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:44:52,404.404 INFO    ] time= 25/10/2026 22:44:52
[2026-10-25 22:44:52,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:44:52,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:44:52,532.532 INFO    ] No existing commands found in stream
[2026-10-25 22:44:57,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:44:57,545.545 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-25 22:44:59,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:44:59,782.782 INFO    ] Checking for system updates...
[2026-10-25 22:44:59,818.818 INFO    ] 200
[2026-10-25 22:44:59,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:59,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:44:59,877.877 INFO    ] No update needed
[2026-10-25 22:44:59,879.879 INFO    ] Checking for camera pi updates...
[2026-10-25 22:44:59,916.916 INFO    ] 200
[2026-10-25 22:44:59,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:44:59,963.963 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:45:00,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:45:00,028.028 INFO    ] No camera update needed
[2026-10-25 22:45:00,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:45:00,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:45:00,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:45:00,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:45:02,104.104 INFO    ] ================================================
[2026-10-25 22:45:02,125.125 INFO    ] Launching Daemon at Sun Oct 25 22:45:02 IST 2026
[2026-10-25 22:45:02,143.143 INFO    ] ================================================
[2026-10-25 22:45:02,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:45:02
[2026-10-25 22:45:03,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:45:03,927.927 INFO    ] Initializing speech engine...
[2026-10-25 22:45:03,940.940 INFO    ] 2026-10-25 22:45:03
[2026-10-25 22:45:04,200.200 INFO    ] 2026-10-25 22:45:04
[2026-10-25 22:45:04,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:45:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:45:04,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:45:04,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:45:04,640.640 INFO    ] time= 25/10/2026 22:45:04
[2026-10-25 22:45:04,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:45:04,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:45:04,814.814 INFO    ] No existing commands found in stream
[2026-10-25 22:45:09,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:45:09,829.829 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-25 22:45:13,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:45:13,422.422 INFO    ] Checking for system updates...
[2026-10-25 22:45:13,464.464 INFO    ] 200
[2026-10-25 22:45:13,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:13,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:45:13,521.521 INFO    ] No update needed
[2026-10-25 22:45:13,524.524 INFO    ] Checking for camera pi updates...
[2026-10-25 22:45:13,557.557 INFO    ] 200
[2026-10-25 22:45:13,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:13,600.600 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:45:13,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:45:13,651.651 INFO    ] No camera update needed
[2026-10-25 22:45:13,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:45:13,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:45:13,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:45:13,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:45:15,706.706 INFO    ] ================================================
[2026-10-25 22:45:15,721.721 INFO    ] Launching Daemon at Sun Oct 25 22:45:15 IST 2026
[2026-10-25 22:45:15,732.732 INFO    ] ================================================
[2026-10-25 22:45:16,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:45:16
[2026-10-25 22:45:17,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:45:17,373.373 INFO    ] Initializing speech engine...
[2026-10-25 22:45:17,384.384 INFO    ] 2026-10-25 22:45:17
[2026-10-25 22:45:17,662.662 INFO    ] 2026-10-25 22:45:17
[2026-10-25 22:45:17,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:45:17,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:45:17,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:45:18,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:45:18,104.104 INFO    ] time= 25/10/2026 22:45:18
[2026-10-25 22:45:18,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:45:18,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:45:18,280.280 INFO    ] No existing commands found in stream
[2026-10-25 22:45:23,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:45:23,295.295 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 22:45:26,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:45:26,865.865 INFO    ] Checking for system updates...
[2026-10-25 22:45:26,902.902 INFO    ] 200
[2026-10-25 22:45:26,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:26,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:45:26,960.960 INFO    ] No update needed
[2026-10-25 22:45:26,962.962 INFO    ] Checking for camera pi updates...
[2026-10-25 22:45:26,997.997 INFO    ] 200
[2026-10-25 22:45:26,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:27,040.040 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:45:27,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:45:27,097.097 INFO    ] No camera update needed
[2026-10-25 22:45:27,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:45:27,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:45:27,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:45:27,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:45:29,156.156 INFO    ] ================================================
[2026-10-25 22:45:29,172.172 INFO    ] Launching Daemon at Sun Oct 25 22:45:29 IST 2026
[2026-10-25 22:45:29,184.184 INFO    ] ================================================
[2026-10-25 22:45:29,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:45:29
[2026-10-25 22:45:30,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:45:30,649.649 INFO    ] Initializing speech engine...
[2026-10-25 22:45:30,657.657 INFO    ] 2026-10-25 22:45:30
[2026-10-25 22:45:30,932.932 INFO    ] 2026-10-25 22:45:30
[2026-10-25 22:45:30,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:45:31,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:45:31,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:45:31,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:45:31,415.415 INFO    ] time= 25/10/2026 22:45:31
[2026-10-25 22:45:31,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:45:31,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:45:31,563.563 INFO    ] No existing commands found in stream
[2026-10-25 22:45:36,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:45:36,576.576 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-25 22:45:38,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:45:38,942.942 INFO    ] Checking for system updates...
[2026-10-25 22:45:38,981.981 INFO    ] 200
[2026-10-25 22:45:38,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:39,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:45:39,038.038 INFO    ] No update needed
[2026-10-25 22:45:39,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 22:45:39,074.074 INFO    ] 200
[2026-10-25 22:45:39,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:39,123.123 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:45:39,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:45:39,163.163 INFO    ] No camera update needed
[2026-10-25 22:45:39,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:45:39,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:45:39,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:45:39,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:45:41,219.219 INFO    ] ================================================
[2026-10-25 22:45:41,234.234 INFO    ] Launching Daemon at Sun Oct 25 22:45:41 IST 2026
[2026-10-25 22:45:41,245.245 INFO    ] ================================================
[2026-10-25 22:45:41,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:45:41
[2026-10-25 22:45:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:45:42,663.663 INFO    ] Initializing speech engine...
[2026-10-25 22:45:42,675.675 INFO    ] 2026-10-25 22:45:42
[2026-10-25 22:45:42,941.941 INFO    ] 2026-10-25 22:45:42
[2026-10-25 22:45:42,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:45:43,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:45:43,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:45:43,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:45:43,322.322 INFO    ] time= 25/10/2026 22:45:43
[2026-10-25 22:45:43,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:45:43,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:45:43,477.477 INFO    ] No existing commands found in stream
[2026-10-25 22:45:48,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:45:48,505.505 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-25 22:45:50,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:45:50,809.809 INFO    ] Checking for system updates...
[2026-10-25 22:45:50,845.845 INFO    ] 200
[2026-10-25 22:45:50,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:50,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:45:50,906.906 INFO    ] No update needed
[2026-10-25 22:45:50,909.909 INFO    ] Checking for camera pi updates...
[2026-10-25 22:45:50,947.947 INFO    ] 200
[2026-10-25 22:45:50,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:45:50,991.991 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:45:51,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:45:51,052.052 INFO    ] No camera update needed
[2026-10-25 22:45:51,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:45:51,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:45:51,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:45:51,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:45:53,108.108 INFO    ] ================================================
[2026-10-25 22:45:53,123.123 INFO    ] Launching Daemon at Sun Oct 25 22:45:53 IST 2026
[2026-10-25 22:45:53,135.135 INFO    ] ================================================
[2026-10-25 22:45:53,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:45:53
[2026-10-25 22:45:54,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:45:54,550.550 INFO    ] Initializing speech engine...
[2026-10-25 22:45:54,560.560 INFO    ] 2026-10-25 22:45:54
[2026-10-25 22:45:54,802.802 INFO    ] 2026-10-25 22:45:54
[2026-10-25 22:45:54,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:45:55,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:45:55,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:45:55,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:45:55,176.176 INFO    ] time= 25/10/2026 22:45:55
[2026-10-25 22:45:55,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:45:55,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:45:55,255.255 INFO    ] No existing commands found in stream
[2026-10-25 22:46:00,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:46:00,271.271 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-25 22:46:03,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:46:03,832.832 INFO    ] Checking for system updates...
[2026-10-25 22:46:03,869.869 INFO    ] 200
[2026-10-25 22:46:03,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:03,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:03,934.934 INFO    ] No update needed
[2026-10-25 22:46:03,937.937 INFO    ] Checking for camera pi updates...
[2026-10-25 22:46:03,975.975 INFO    ] 200
[2026-10-25 22:46:03,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:04,023.023 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:46:04,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:04,085.085 INFO    ] No camera update needed
[2026-10-25 22:46:04,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:46:04,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:46:04,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:46:04,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:46:06,141.141 INFO    ] ================================================
[2026-10-25 22:46:06,157.157 INFO    ] Launching Daemon at Sun Oct 25 22:46:06 IST 2026
[2026-10-25 22:46:06,169.169 INFO    ] ================================================
[2026-10-25 22:46:06,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:46:06
[2026-10-25 22:46:07,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:46:07,595.595 INFO    ] Initializing speech engine...
[2026-10-25 22:46:07,604.604 INFO    ] 2026-10-25 22:46:07
[2026-10-25 22:46:07,849.849 INFO    ] 2026-10-25 22:46:07
[2026-10-25 22:46:07,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:46:08,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:46:08,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:46:08,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:46:08,320.320 INFO    ] time= 25/10/2026 22:46:08
[2026-10-25 22:46:08,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:46:08,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:46:08,481.481 INFO    ] No existing commands found in stream
[2026-10-25 22:46:13,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:46:13,519.519 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-25 22:46:17,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:46:17,617.617 INFO    ] Checking for system updates...
[2026-10-25 22:46:17,659.659 INFO    ] 200
[2026-10-25 22:46:17,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:17,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:46:17,721.721 INFO    ] No update needed
[2026-10-25 22:46:17,723.723 INFO    ] Checking for camera pi updates...
[2026-10-25 22:46:17,763.763 INFO    ] 200
[2026-10-25 22:46:17,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:17,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:46:17,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:46:17,888.888 INFO    ] No camera update needed
[2026-10-25 22:46:17,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:46:17,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:46:17,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:46:17,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:46:19,947.947 INFO    ] ================================================
[2026-10-25 22:46:19,968.968 INFO    ] Launching Daemon at Sun Oct 25 22:46:19 IST 2026
[2026-10-25 22:46:19,982.982 INFO    ] ================================================
[2026-10-25 22:46:20,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:46:20
[2026-10-25 22:46:21,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:46:21,439.439 INFO    ] Initializing speech engine...
[2026-10-25 22:46:21,446.446 INFO    ] 2026-10-25 22:46:21
[2026-10-25 22:46:21,707.707 INFO    ] 2026-10-25 22:46:21
[2026-10-25 22:46:21,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:46:21,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:46:21,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:46:22,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:46:22,170.170 INFO    ] time= 25/10/2026 22:46:22
[2026-10-25 22:46:22,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:46:22,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:46:22,316.316 INFO    ] No existing commands found in stream
[2026-10-25 22:46:27,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:46:27,345.345 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 22:46:31,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:46:31,012.012 INFO    ] Checking for system updates...
[2026-10-25 22:46:31,054.054 INFO    ] 200
[2026-10-25 22:46:31,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:31,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:31,118.118 INFO    ] No update needed
[2026-10-25 22:46:31,121.121 INFO    ] Checking for camera pi updates...
[2026-10-25 22:46:31,155.155 INFO    ] 200
[2026-10-25 22:46:31,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:31,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:46:31,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:31,264.264 INFO    ] No camera update needed
[2026-10-25 22:46:31,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:46:31,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:46:31,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:46:31,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:46:33,323.323 INFO    ] ================================================
[2026-10-25 22:46:33,338.338 INFO    ] Launching Daemon at Sun Oct 25 22:46:33 IST 2026
[2026-10-25 22:46:33,350.350 INFO    ] ================================================
[2026-10-25 22:46:33,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:46:33
[2026-10-25 22:46:34,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:46:34,799.799 INFO    ] Initializing speech engine...
[2026-10-25 22:46:34,809.809 INFO    ] 2026-10-25 22:46:34
[2026-10-25 22:46:35,057.057 INFO    ] 2026-10-25 22:46:35
[2026-10-25 22:46:35,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:46:35,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:46:35,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:46:35,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:46:35,531.531 INFO    ] time= 25/10/2026 22:46:35
[2026-10-25 22:46:35,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:46:35,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:46:35,749.749 INFO    ] No existing commands found in stream
[2026-10-25 22:46:40,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:46:40,775.775 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-25 22:46:44,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:46:44,324.324 INFO    ] Checking for system updates...
[2026-10-25 22:46:44,367.367 INFO    ] 200
[2026-10-25 22:46:44,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:44,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:44,438.438 INFO    ] No update needed
[2026-10-25 22:46:44,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 22:46:44,480.480 INFO    ] 200
[2026-10-25 22:46:44,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:44,534.534 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:46:44,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:46:44,590.590 INFO    ] No camera update needed
[2026-10-25 22:46:44,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:46:44,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:46:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:46:44,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:46:46,646.646 INFO    ] ================================================
[2026-10-25 22:46:46,662.662 INFO    ] Launching Daemon at Sun Oct 25 22:46:46 IST 2026
[2026-10-25 22:46:46,676.676 INFO    ] ================================================
[2026-10-25 22:46:47,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:46:47
[2026-10-25 22:46:47,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:46:48,159.159 INFO    ] Initializing speech engine...
[2026-10-25 22:46:48,167.167 INFO    ] 2026-10-25 22:46:48
[2026-10-25 22:46:48,428.428 INFO    ] 2026-10-25 22:46:48
[2026-10-25 22:46:48,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:46:48,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:46:48,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:46:48,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:46:48,850.850 INFO    ] time= 25/10/2026 22:46:48
[2026-10-25 22:46:48,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:46:48,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:46:49,031.031 INFO    ] No existing commands found in stream
[2026-10-25 22:46:54,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:46:54,046.046 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 22:46:56,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:46:56,261.261 INFO    ] Checking for system updates...
[2026-10-25 22:46:56,299.299 INFO    ] 200
[2026-10-25 22:46:56,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:56,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:46:56,357.357 INFO    ] No update needed
[2026-10-25 22:46:56,359.359 INFO    ] Checking for camera pi updates...
[2026-10-25 22:46:56,393.393 INFO    ] 200
[2026-10-25 22:46:56,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:46:56,441.441 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:46:56,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:46:56,605.605 INFO    ] No camera update needed
[2026-10-25 22:46:56,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:46:56,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:46:56,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:46:56,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:46:58,661.661 INFO    ] ================================================
[2026-10-25 22:46:58,677.677 INFO    ] Launching Daemon at Sun Oct 25 22:46:58 IST 2026
[2026-10-25 22:46:58,688.688 INFO    ] ================================================
[2026-10-25 22:46:59,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:46:59
[2026-10-25 22:46:59,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:00,131.131 INFO    ] Initializing speech engine...
[2026-10-25 22:47:00,139.139 INFO    ] 2026-10-25 22:47:00
[2026-10-25 22:47:00,392.392 INFO    ] 2026-10-25 22:47:00
[2026-10-25 22:47:00,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:00,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:00,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:47:00,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:47:00,867.867 INFO    ] time= 25/10/2026 22:47:00
[2026-10-25 22:47:00,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:47:00,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:47:01,026.026 INFO    ] No existing commands found in stream
[2026-10-25 22:47:06,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:47:06,041.041 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 22:47:09,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:47:09,924.924 INFO    ] Checking for system updates...
[2026-10-25 22:47:09,966.966 INFO    ] 200
[2026-10-25 22:47:09,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:10,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:47:10,025.025 INFO    ] No update needed
[2026-10-25 22:47:10,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 22:47:10,063.063 INFO    ] 200
[2026-10-25 22:47:10,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:10,110.110 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:47:10,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:47:10,163.163 INFO    ] No camera update needed
[2026-10-25 22:47:10,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:47:10,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:47:10,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:47:10,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:47:12,219.219 INFO    ] ================================================
[2026-10-25 22:47:12,233.233 INFO    ] Launching Daemon at Sun Oct 25 22:47:12 IST 2026
[2026-10-25 22:47:12,244.244 INFO    ] ================================================
[2026-10-25 22:47:12,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:47:12
[2026-10-25 22:47:13,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:13,792.792 INFO    ] Initializing speech engine...
[2026-10-25 22:47:13,800.800 INFO    ] 2026-10-25 22:47:13
[2026-10-25 22:47:14,081.081 INFO    ] 2026-10-25 22:47:14
[2026-10-25 22:47:14,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:14,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:14,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:47:14,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:47:14,555.555 INFO    ] time= 25/10/2026 22:47:14
[2026-10-25 22:47:14,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:47:14,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:47:14,687.687 INFO    ] No existing commands found in stream
[2026-10-25 22:47:19,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:47:19,703.703 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-25 22:47:21,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:47:21,693.693 INFO    ] Checking for system updates...
[2026-10-25 22:47:21,736.736 INFO    ] 200
[2026-10-25 22:47:21,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:21,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:21,799.799 INFO    ] No update needed
[2026-10-25 22:47:21,801.801 INFO    ] Checking for camera pi updates...
[2026-10-25 22:47:21,839.839 INFO    ] 200
[2026-10-25 22:47:21,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:21,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:47:21,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:21,932.932 INFO    ] No camera update needed
[2026-10-25 22:47:21,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:47:21,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:47:21,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:47:21,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:47:23,986.986 INFO    ] ================================================
[2026-10-25 22:47:24,002.002 INFO    ] Launching Daemon at Sun Oct 25 22:47:23 IST 2026
[2026-10-25 22:47:24,013.013 INFO    ] ================================================
[2026-10-25 22:47:24,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:47:24
[2026-10-25 22:47:25,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:25,411.411 INFO    ] Initializing speech engine...
[2026-10-25 22:47:25,419.419 INFO    ] 2026-10-25 22:47:25
[2026-10-25 22:47:25,702.702 INFO    ] 2026-10-25 22:47:25
[2026-10-25 22:47:25,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:25,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:25,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:47:26,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:47:26,065.065 INFO    ] time= 25/10/2026 22:47:26
[2026-10-25 22:47:26,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:47:26,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:47:26,185.185 INFO    ] No existing commands found in stream
[2026-10-25 22:47:31,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:47:31,200.200 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 22:47:32,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:47:32,419.419 INFO    ] Checking for system updates...
[2026-10-25 22:47:32,466.466 INFO    ] 200
[2026-10-25 22:47:32,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:32,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:32,535.535 INFO    ] No update needed
[2026-10-25 22:47:32,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 22:47:32,586.586 INFO    ] 200
[2026-10-25 22:47:32,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:32,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:47:32,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:32,679.679 INFO    ] No camera update needed
[2026-10-25 22:47:32,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:47:32,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:47:32,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:47:32,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:47:34,739.739 INFO    ] ================================================
[2026-10-25 22:47:34,754.754 INFO    ] Launching Daemon at Sun Oct 25 22:47:34 IST 2026
[2026-10-25 22:47:34,765.765 INFO    ] ================================================
[2026-10-25 22:47:35,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:47:35
[2026-10-25 22:47:35,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:36,212.212 INFO    ] Initializing speech engine...
[2026-10-25 22:47:36,230.230 INFO    ] 2026-10-25 22:47:36
[2026-10-25 22:47:36,490.490 INFO    ] 2026-10-25 22:47:36
[2026-10-25 22:47:36,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:36,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:36,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:47:36,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:47:36,950.950 INFO    ] time= 25/10/2026 22:47:36
[2026-10-25 22:47:37,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:47:37,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:47:37,115.115 INFO    ] No existing commands found in stream
[2026-10-25 22:47:42,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:47:42,129.129 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 22:47:44,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:47:44,266.266 INFO    ] Checking for system updates...
[2026-10-25 22:47:44,307.307 INFO    ] 200
[2026-10-25 22:47:44,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:44,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:44,366.366 INFO    ] No update needed
[2026-10-25 22:47:44,368.368 INFO    ] Checking for camera pi updates...
[2026-10-25 22:47:44,408.408 INFO    ] 200
[2026-10-25 22:47:44,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:44,451.451 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:47:44,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:44,525.525 INFO    ] No camera update needed
[2026-10-25 22:47:44,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:47:44,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:47:44,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:47:44,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:47:46,586.586 INFO    ] ================================================
[2026-10-25 22:47:46,601.601 INFO    ] Launching Daemon at Sun Oct 25 22:47:46 IST 2026
[2026-10-25 22:47:46,612.612 INFO    ] ================================================
[2026-10-25 22:47:47,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:47:47
[2026-10-25 22:47:47,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:48,185.185 INFO    ] Initializing speech engine...
[2026-10-25 22:47:48,198.198 INFO    ] 2026-10-25 22:47:48
[2026-10-25 22:47:48,482.482 INFO    ] 2026-10-25 22:47:48
[2026-10-25 22:47:48,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:48,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:48,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:47:48,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:47:49,019.019 INFO    ] time= 25/10/2026 22:47:48
[2026-10-25 22:47:49,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:47:49,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:47:49,167.167 INFO    ] No existing commands found in stream
[2026-10-25 22:47:54,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:47:54,194.194 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 22:47:55,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:47:55,477.477 INFO    ] Checking for system updates...
[2026-10-25 22:47:55,517.517 INFO    ] 200
[2026-10-25 22:47:55,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:55,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:55,585.585 INFO    ] No update needed
[2026-10-25 22:47:55,589.589 INFO    ] Checking for camera pi updates...
[2026-10-25 22:47:55,623.623 INFO    ] 200
[2026-10-25 22:47:55,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:47:55,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:47:55,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:47:55,729.729 INFO    ] No camera update needed
[2026-10-25 22:47:55,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:47:55,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:47:55,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:47:55,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:47:57,787.787 INFO    ] ================================================
[2026-10-25 22:47:57,803.803 INFO    ] Launching Daemon at Sun Oct 25 22:47:57 IST 2026
[2026-10-25 22:47:57,813.813 INFO    ] ================================================
[2026-10-25 22:47:58,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:47:58
[2026-10-25 22:47:59,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:47:59,386.386 INFO    ] Initializing speech engine...
[2026-10-25 22:47:59,394.394 INFO    ] 2026-10-25 22:47:59
[2026-10-25 22:47:59,662.662 INFO    ] 2026-10-25 22:47:59
[2026-10-25 22:47:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:47:59,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:47:59,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:48:00,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:48:00,164.164 INFO    ] time= 25/10/2026 22:48:00
[2026-10-25 22:48:00,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:48:00,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:48:00,352.352 INFO    ] No existing commands found in stream
[2026-10-25 22:48:05,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:48:05,383.383 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-25 22:48:07,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:48:07,233.233 INFO    ] Checking for system updates...
[2026-10-25 22:48:07,277.277 INFO    ] 200
[2026-10-25 22:48:07,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:07,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:48:07,348.348 INFO    ] No update needed
[2026-10-25 22:48:07,352.352 INFO    ] Checking for camera pi updates...
[2026-10-25 22:48:07,391.391 INFO    ] 200
[2026-10-25 22:48:07,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:07,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:48:07,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:48:07,504.504 INFO    ] No camera update needed
[2026-10-25 22:48:07,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:48:07,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:48:07,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:48:07,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:48:09,559.559 INFO    ] ================================================
[2026-10-25 22:48:09,574.574 INFO    ] Launching Daemon at Sun Oct 25 22:48:09 IST 2026
[2026-10-25 22:48:09,585.585 INFO    ] ================================================
[2026-10-25 22:48:10,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:48:10
[2026-10-25 22:48:10,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:48:10,983.983 INFO    ] Initializing speech engine...
[2026-10-25 22:48:11,006.006 INFO    ] 2026-10-25 22:48:10
[2026-10-25 22:48:11,260.260 INFO    ] 2026-10-25 22:48:11
[2026-10-25 22:48:11,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:48:12,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:48:12,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:48:13,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:48:13,189.189 INFO    ] time= 25/10/2026 22:48:13
[2026-10-25 22:48:13,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:48:13,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:48:13,253.253 INFO    ] No existing commands found in stream
[2026-10-25 22:48:18,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:48:18,266.266 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 22:48:22,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:48:22,466.466 INFO    ] Checking for system updates...
[2026-10-25 22:48:22,508.508 INFO    ] 200
[2026-10-25 22:48:22,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:22,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:22,573.573 INFO    ] No update needed
[2026-10-25 22:48:22,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 22:48:22,608.608 INFO    ] 200
[2026-10-25 22:48:22,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:22,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:48:22,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:22,714.714 INFO    ] No camera update needed
[2026-10-25 22:48:22,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:48:22,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:48:22,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:48:22,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:48:24,768.768 INFO    ] ================================================
[2026-10-25 22:48:24,784.784 INFO    ] Launching Daemon at Sun Oct 25 22:48:24 IST 2026
[2026-10-25 22:48:24,796.796 INFO    ] ================================================
[2026-10-25 22:48:25,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:48:25
[2026-10-25 22:48:26,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:48:26,779.779 INFO    ] Initializing speech engine...
[2026-10-25 22:48:26,788.788 INFO    ] 2026-10-25 22:48:26
[2026-10-25 22:48:27,078.078 INFO    ] 2026-10-25 22:48:27
[2026-10-25 22:48:27,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:48:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:48:27,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:48:27,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:48:27,494.494 INFO    ] time= 25/10/2026 22:48:27
[2026-10-25 22:48:27,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:48:27,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:48:27,650.650 INFO    ] No existing commands found in stream
[2026-10-25 22:48:32,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:48:32,665.665 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 22:48:35,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:48:35,615.615 INFO    ] Checking for system updates...
[2026-10-25 22:48:35,655.655 INFO    ] 200
[2026-10-25 22:48:35,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:35,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:35,715.715 INFO    ] No update needed
[2026-10-25 22:48:35,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 22:48:35,752.752 INFO    ] 200
[2026-10-25 22:48:35,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:35,799.799 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:48:35,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:35,854.854 INFO    ] No camera update needed
[2026-10-25 22:48:35,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:48:35,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:48:35,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:48:35,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:48:37,910.910 INFO    ] ================================================
[2026-10-25 22:48:37,926.926 INFO    ] Launching Daemon at Sun Oct 25 22:48:37 IST 2026
[2026-10-25 22:48:37,937.937 INFO    ] ================================================
[2026-10-25 22:48:38,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:48:38
[2026-10-25 22:48:39,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:48:39,360.360 INFO    ] Initializing speech engine...
[2026-10-25 22:48:39,369.369 INFO    ] 2026-10-25 22:48:39
[2026-10-25 22:48:39,618.618 INFO    ] 2026-10-25 22:48:39
[2026-10-25 22:48:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:48:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:48:39,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:48:40,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:48:40,074.074 INFO    ] time= 25/10/2026 22:48:40
[2026-10-25 22:48:40,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:48:40,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:48:40,255.255 INFO    ] No existing commands found in stream
[2026-10-25 22:48:45,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:48:45,270.270 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 22:48:46,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:48:46,594.594 INFO    ] Checking for system updates...
[2026-10-25 22:48:46,634.634 INFO    ] 200
[2026-10-25 22:48:46,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:46,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:46,697.697 INFO    ] No update needed
[2026-10-25 22:48:46,699.699 INFO    ] Checking for camera pi updates...
[2026-10-25 22:48:46,734.734 INFO    ] 200
[2026-10-25 22:48:46,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:46,782.782 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:48:46,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:48:46,843.843 INFO    ] No camera update needed
[2026-10-25 22:48:46,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:48:46,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:48:46,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:48:46,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:48:48,902.902 INFO    ] ================================================
[2026-10-25 22:48:48,918.918 INFO    ] Launching Daemon at Sun Oct 25 22:48:48 IST 2026
[2026-10-25 22:48:48,929.929 INFO    ] ================================================
[2026-10-25 22:48:49,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:48:49
[2026-10-25 22:48:50,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:48:50,379.379 INFO    ] Initializing speech engine...
[2026-10-25 22:48:50,390.390 INFO    ] 2026-10-25 22:48:50
[2026-10-25 22:48:50,664.664 INFO    ] 2026-10-25 22:48:50
[2026-10-25 22:48:50,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:48:50,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:48:50,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:48:51,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:48:51,141.141 INFO    ] time= 25/10/2026 22:48:51
[2026-10-25 22:48:51,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:48:51,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:48:51,291.291 INFO    ] No existing commands found in stream
[2026-10-25 22:48:56,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:48:56,314.314 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 22:48:57,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:48:57,663.663 INFO    ] Checking for system updates...
[2026-10-25 22:48:57,703.703 INFO    ] 200
[2026-10-25 22:48:57,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:57,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:48:57,771.771 INFO    ] No update needed
[2026-10-25 22:48:57,773.773 INFO    ] Checking for camera pi updates...
[2026-10-25 22:48:57,810.810 INFO    ] 200
[2026-10-25 22:48:57,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:48:57,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:48:57,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:48:57,915.915 INFO    ] No camera update needed
[2026-10-25 22:48:57,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:48:57,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:48:57,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:48:57,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:48:59,972.972 INFO    ] ================================================
[2026-10-25 22:48:59,988.988 INFO    ] Launching Daemon at Sun Oct 25 22:48:59 IST 2026
[2026-10-25 22:49:00,999.999 INFO    ] ================================================
[2026-10-25 22:49:00,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:49:00
[2026-10-25 22:49:01,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:49:01,435.435 INFO    ] Initializing speech engine...
[2026-10-25 22:49:01,453.453 INFO    ] 2026-10-25 22:49:01
[2026-10-25 22:49:01,704.704 INFO    ] 2026-10-25 22:49:01
[2026-10-25 22:49:01,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:49:01,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:49:01,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:49:02,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:49:02,079.079 INFO    ] time= 25/10/2026 22:49:02
[2026-10-25 22:49:02,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:49:02,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:49:02,214.214 INFO    ] No existing commands found in stream
[2026-10-25 22:49:07,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:49:07,226.226 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 22:49:09,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:49:09,433.433 INFO    ] Checking for system updates...
[2026-10-25 22:49:09,469.469 INFO    ] 200
[2026-10-25 22:49:09,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:09,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:49:09,528.528 INFO    ] No update needed
[2026-10-25 22:49:09,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 22:49:09,568.568 INFO    ] 200
[2026-10-25 22:49:09,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:09,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:49:09,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:49:09,678.678 INFO    ] No camera update needed
[2026-10-25 22:49:09,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:49:09,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:49:09,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:49:09,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:49:11,736.736 INFO    ] ================================================
[2026-10-25 22:49:11,752.752 INFO    ] Launching Daemon at Sun Oct 25 22:49:11 IST 2026
[2026-10-25 22:49:11,763.763 INFO    ] ================================================
[2026-10-25 22:49:12,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:49:12
[2026-10-25 22:49:12,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:49:13,223.223 INFO    ] Initializing speech engine...
[2026-10-25 22:49:13,228.228 INFO    ] 2026-10-25 22:49:13
[2026-10-25 22:49:13,490.490 INFO    ] 2026-10-25 22:49:13
[2026-10-25 22:49:13,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:49:13,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:49:13,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:49:13,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:49:13,961.961 INFO    ] time= 25/10/2026 22:49:13
[2026-10-25 22:49:14,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:49:14,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:49:14,091.091 INFO    ] No existing commands found in stream
[2026-10-25 22:49:19,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:49:19,105.105 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 22:49:21,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:49:21,602.602 INFO    ] Checking for system updates...
[2026-10-25 22:49:21,641.641 INFO    ] 200
[2026-10-25 22:49:21,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:21,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:21,698.698 INFO    ] No update needed
[2026-10-25 22:49:21,701.701 INFO    ] Checking for camera pi updates...
[2026-10-25 22:49:21,735.735 INFO    ] 200
[2026-10-25 22:49:21,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:21,781.781 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:49:21,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:21,836.836 INFO    ] No camera update needed
[2026-10-25 22:49:21,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:49:21,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:49:21,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:49:21,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:49:23,892.892 INFO    ] ================================================
[2026-10-25 22:49:23,908.908 INFO    ] Launching Daemon at Sun Oct 25 22:49:23 IST 2026
[2026-10-25 22:49:23,919.919 INFO    ] ================================================
[2026-10-25 22:49:24,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:49:24
[2026-10-25 22:49:25,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:49:25,364.364 INFO    ] Initializing speech engine...
[2026-10-25 22:49:25,377.377 INFO    ] 2026-10-25 22:49:25
[2026-10-25 22:49:25,637.637 INFO    ] 2026-10-25 22:49:25
[2026-10-25 22:49:25,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:49:25,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:49:25,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:49:26,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:49:26,035.035 INFO    ] time= 25/10/2026 22:49:26
[2026-10-25 22:49:26,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:49:26,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:49:26,118.118 INFO    ] No existing commands found in stream
[2026-10-25 22:49:31,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:49:31,136.136 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-25 22:49:35,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:49:35,127.127 INFO    ] Checking for system updates...
[2026-10-25 22:49:35,166.166 INFO    ] 200
[2026-10-25 22:49:35,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:35,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:49:35,227.227 INFO    ] No update needed
[2026-10-25 22:49:35,230.230 INFO    ] Checking for camera pi updates...
[2026-10-25 22:49:35,264.264 INFO    ] 200
[2026-10-25 22:49:35,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:35,310.310 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:49:35,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:49:35,360.360 INFO    ] No camera update needed
[2026-10-25 22:49:35,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:49:35,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:49:35,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:49:35,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:49:37,416.416 INFO    ] ================================================
[2026-10-25 22:49:37,431.431 INFO    ] Launching Daemon at Sun Oct 25 22:49:37 IST 2026
[2026-10-25 22:49:37,442.442 INFO    ] ================================================
[2026-10-25 22:49:38,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:49:38
[2026-10-25 22:49:38,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:49:38,911.911 INFO    ] Initializing speech engine...
[2026-10-25 22:49:38,935.935 INFO    ] 2026-10-25 22:49:38
[2026-10-25 22:49:39,202.202 INFO    ] 2026-10-25 22:49:39
[2026-10-25 22:49:39,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:49:39,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:49:39,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:49:39,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:49:39,606.606 INFO    ] time= 25/10/2026 22:49:39
[2026-10-25 22:49:39,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:49:39,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:49:39,786.786 INFO    ] No existing commands found in stream
[2026-10-25 22:49:44,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:49:44,819.819 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 22:49:46,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:49:46,614.614 INFO    ] Checking for system updates...
[2026-10-25 22:49:46,650.650 INFO    ] 200
[2026-10-25 22:49:46,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:46,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:46,709.709 INFO    ] No update needed
[2026-10-25 22:49:46,711.711 INFO    ] Checking for camera pi updates...
[2026-10-25 22:49:46,749.749 INFO    ] 200
[2026-10-25 22:49:46,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:46,795.795 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:49:46,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:46,847.847 INFO    ] No camera update needed
[2026-10-25 22:49:46,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:49:46,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:49:46,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:49:46,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:49:48,902.902 INFO    ] ================================================
[2026-10-25 22:49:48,918.918 INFO    ] Launching Daemon at Sun Oct 25 22:49:48 IST 2026
[2026-10-25 22:49:48,929.929 INFO    ] ================================================
[2026-10-25 22:49:49,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:49:49
[2026-10-25 22:49:50,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:49:50,402.402 INFO    ] Initializing speech engine...
[2026-10-25 22:49:50,409.409 INFO    ] 2026-10-25 22:49:50
[2026-10-25 22:49:50,668.668 INFO    ] 2026-10-25 22:49:50
[2026-10-25 22:49:50,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:49:50,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:49:50,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:49:51,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:49:51,022.022 INFO    ] time= 25/10/2026 22:49:51
[2026-10-25 22:49:51,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:49:51,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:49:51,103.103 INFO    ] No existing commands found in stream
[2026-10-25 22:49:56,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:49:56,120.120 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 22:49:58,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:49:58,175.175 INFO    ] Checking for system updates...
[2026-10-25 22:49:58,214.214 INFO    ] 200
[2026-10-25 22:49:58,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:58,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:58,277.277 INFO    ] No update needed
[2026-10-25 22:49:58,279.279 INFO    ] Checking for camera pi updates...
[2026-10-25 22:49:58,316.316 INFO    ] 200
[2026-10-25 22:49:58,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:49:58,362.362 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:49:58,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:49:58,418.418 INFO    ] No camera update needed
[2026-10-25 22:49:58,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:49:58,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:49:58,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:49:58,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:50:00,474.474 INFO    ] ================================================
[2026-10-25 22:50:00,489.489 INFO    ] Launching Daemon at Sun Oct 25 22:50:00 IST 2026
[2026-10-25 22:50:00,500.500 INFO    ] ================================================
[2026-10-25 22:50:01,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:50:01
[2026-10-25 22:50:02,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:50:02,512.512 INFO    ] Initializing speech engine...
[2026-10-25 22:50:02,515.515 INFO    ] 2026-10-25 22:50:02
[2026-10-25 22:50:02,832.832 INFO    ] 2026-10-25 22:50:02
[2026-10-25 22:50:02,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:50:03,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:50:03,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:50:03,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:50:03,283.283 INFO    ] time= 25/10/2026 22:50:03
[2026-10-25 22:50:03,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:50:03,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:50:03,440.440 INFO    ] No existing commands found in stream
[2026-10-25 22:50:08,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:50:08,454.454 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-25 22:50:13,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:50:13,283.283 INFO    ] Checking for system updates...
[2026-10-25 22:50:13,322.322 INFO    ] 200
[2026-10-25 22:50:13,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:13,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:13,379.379 INFO    ] No update needed
[2026-10-25 22:50:13,382.382 INFO    ] Checking for camera pi updates...
[2026-10-25 22:50:13,419.419 INFO    ] 200
[2026-10-25 22:50:13,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:13,466.466 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:50:13,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:13,531.531 INFO    ] No camera update needed
[2026-10-25 22:50:13,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:50:13,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:50:13,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:50:13,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:50:15,586.586 INFO    ] ================================================
[2026-10-25 22:50:15,602.602 INFO    ] Launching Daemon at Sun Oct 25 22:50:15 IST 2026
[2026-10-25 22:50:15,613.613 INFO    ] ================================================
[2026-10-25 22:50:16,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:50:16
[2026-10-25 22:50:16,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:50:17,035.035 INFO    ] Initializing speech engine...
[2026-10-25 22:50:17,044.044 INFO    ] 2026-10-25 22:50:17
[2026-10-25 22:50:17,291.291 INFO    ] 2026-10-25 22:50:17
[2026-10-25 22:50:17,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:50:17,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:50:17,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:50:17,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:50:17,755.755 INFO    ] time= 25/10/2026 22:50:17
[2026-10-25 22:50:17,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:50:17,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:50:17,910.910 INFO    ] No existing commands found in stream
[2026-10-25 22:50:22,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:50:22,927.927 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 22:50:26,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:50:26,221.221 INFO    ] Checking for system updates...
[2026-10-25 22:50:26,257.257 INFO    ] 200
[2026-10-25 22:50:26,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:26,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:26,321.321 INFO    ] No update needed
[2026-10-25 22:50:26,324.324 INFO    ] Checking for camera pi updates...
[2026-10-25 22:50:26,361.361 INFO    ] 200
[2026-10-25 22:50:26,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:26,408.408 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:50:26,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:26,457.457 INFO    ] No camera update needed
[2026-10-25 22:50:26,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:50:26,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:50:26,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:50:26,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:50:28,513.513 INFO    ] ================================================
[2026-10-25 22:50:28,528.528 INFO    ] Launching Daemon at Sun Oct 25 22:50:28 IST 2026
[2026-10-25 22:50:28,538.538 INFO    ] ================================================
[2026-10-25 22:50:29,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:50:29
[2026-10-25 22:50:29,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:50:29,995.995 INFO    ] Initializing speech engine...
[2026-10-25 22:50:30,002.002 INFO    ] 2026-10-25 22:50:29
[2026-10-25 22:50:30,275.275 INFO    ] 2026-10-25 22:50:30
[2026-10-25 22:50:30,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:50:30,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:50:30,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:50:30,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:50:30,804.804 INFO    ] time= 25/10/2026 22:50:30
[2026-10-25 22:50:30,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:50:30,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:50:30,948.948 INFO    ] No existing commands found in stream
[2026-10-25 22:50:35,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:50:35,971.971 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 22:50:36,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:50:36,475.475 INFO    ] Checking for system updates...
[2026-10-25 22:50:36,514.514 INFO    ] 200
[2026-10-25 22:50:36,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:36,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:36,571.571 INFO    ] No update needed
[2026-10-25 22:50:36,574.574 INFO    ] Checking for camera pi updates...
[2026-10-25 22:50:36,610.610 INFO    ] 200
[2026-10-25 22:50:36,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:36,654.654 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:50:36,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:36,716.716 INFO    ] No camera update needed
[2026-10-25 22:50:36,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:50:36,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:50:36,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:50:36,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:50:38,771.771 INFO    ] ================================================
[2026-10-25 22:50:38,785.785 INFO    ] Launching Daemon at Sun Oct 25 22:50:38 IST 2026
[2026-10-25 22:50:38,796.796 INFO    ] ================================================
[2026-10-25 22:50:39,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:50:39
[2026-10-25 22:50:39,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:50:40,211.211 INFO    ] Initializing speech engine...
[2026-10-25 22:50:40,221.221 INFO    ] 2026-10-25 22:50:40
[2026-10-25 22:50:40,468.468 INFO    ] 2026-10-25 22:50:40
[2026-10-25 22:50:40,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:50:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:50:40,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:50:40,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:50:40,912.912 INFO    ] time= 25/10/2026 22:50:40
[2026-10-25 22:50:40,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:50:41,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:50:41,093.093 INFO    ] No existing commands found in stream
[2026-10-25 22:50:46,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:50:46,108.108 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-25 22:50:48,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:50:48,256.256 INFO    ] Checking for system updates...
[2026-10-25 22:50:48,292.292 INFO    ] 200
[2026-10-25 22:50:48,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:48,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:48,356.356 INFO    ] No update needed
[2026-10-25 22:50:48,358.358 INFO    ] Checking for camera pi updates...
[2026-10-25 22:50:48,400.400 INFO    ] 200
[2026-10-25 22:50:48,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:48,454.454 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:50:48,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:50:48,513.513 INFO    ] No camera update needed
[2026-10-25 22:50:48,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:50:48,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:50:48,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:50:48,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:50:50,569.569 INFO    ] ================================================
[2026-10-25 22:50:50,584.584 INFO    ] Launching Daemon at Sun Oct 25 22:50:50 IST 2026
[2026-10-25 22:50:50,595.595 INFO    ] ================================================
[2026-10-25 22:50:51,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:50:51
[2026-10-25 22:50:51,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:50:52,046.046 INFO    ] Initializing speech engine...
[2026-10-25 22:50:52,056.056 INFO    ] 2026-10-25 22:50:52
[2026-10-25 22:50:52,305.305 INFO    ] 2026-10-25 22:50:52
[2026-10-25 22:50:52,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:50:52,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:50:52,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:50:52,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:50:52,673.673 INFO    ] time= 25/10/2026 22:50:52
[2026-10-25 22:50:52,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:50:52,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:50:52,840.840 INFO    ] No existing commands found in stream
[2026-10-25 22:50:57,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:50:57,873.873 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-25 22:50:59,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:50:59,241.241 INFO    ] Checking for system updates...
[2026-10-25 22:50:59,287.287 INFO    ] 200
[2026-10-25 22:50:59,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:59,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:50:59,346.346 INFO    ] No update needed
[2026-10-25 22:50:59,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 22:50:59,385.385 INFO    ] 200
[2026-10-25 22:50:59,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:50:59,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:50:59,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:50:59,484.484 INFO    ] No camera update needed
[2026-10-25 22:50:59,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:50:59,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:50:59,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:50:59,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:51:01,539.539 INFO    ] ================================================
[2026-10-25 22:51:01,554.554 INFO    ] Launching Daemon at Sun Oct 25 22:51:01 IST 2026
[2026-10-25 22:51:01,567.567 INFO    ] ================================================
[2026-10-25 22:51:02,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:51:02
[2026-10-25 22:51:02,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:51:03,335.335 INFO    ] Initializing speech engine...
[2026-10-25 22:51:03,347.347 INFO    ] 2026-10-25 22:51:03
[2026-10-25 22:51:03,618.618 INFO    ] 2026-10-25 22:51:03
[2026-10-25 22:51:03,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:51:03,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:51:03,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:51:03,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:51:03,975.975 INFO    ] time= 25/10/2026 22:51:03
[2026-10-25 22:51:03,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:51:04,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:51:04,087.087 INFO    ] No existing commands found in stream
[2026-10-25 22:51:09,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:51:09,102.102 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 22:51:13,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:51:13,425.425 INFO    ] Checking for system updates...
[2026-10-25 22:51:13,463.463 INFO    ] 200
[2026-10-25 22:51:13,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:13,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:13,521.521 INFO    ] No update needed
[2026-10-25 22:51:13,523.523 INFO    ] Checking for camera pi updates...
[2026-10-25 22:51:13,557.557 INFO    ] 200
[2026-10-25 22:51:13,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:13,603.603 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:51:13,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:13,758.758 INFO    ] No camera update needed
[2026-10-25 22:51:13,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:51:13,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:51:13,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:51:13,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:51:15,813.813 INFO    ] ================================================
[2026-10-25 22:51:15,828.828 INFO    ] Launching Daemon at Sun Oct 25 22:51:15 IST 2026
[2026-10-25 22:51:15,839.839 INFO    ] ================================================
[2026-10-25 22:51:16,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:51:16
[2026-10-25 22:51:17,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:51:17,305.305 INFO    ] Initializing speech engine...
[2026-10-25 22:51:17,316.316 INFO    ] 2026-10-25 22:51:17
[2026-10-25 22:51:17,565.565 INFO    ] 2026-10-25 22:51:17
[2026-10-25 22:51:17,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:51:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:51:17,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:51:17,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:51:17,951.951 INFO    ] time= 25/10/2026 22:51:17
[2026-10-25 22:51:17,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:51:18,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:51:18,110.110 INFO    ] No existing commands found in stream
[2026-10-25 22:51:23,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:51:23,144.144 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-25 22:51:25,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:51:25,655.655 INFO    ] Checking for system updates...
[2026-10-25 22:51:25,695.695 INFO    ] 200
[2026-10-25 22:51:25,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:25,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:25,778.778 INFO    ] No update needed
[2026-10-25 22:51:25,780.780 INFO    ] Checking for camera pi updates...
[2026-10-25 22:51:25,820.820 INFO    ] 200
[2026-10-25 22:51:25,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:25,868.868 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:51:25,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:25,924.924 INFO    ] No camera update needed
[2026-10-25 22:51:25,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:51:25,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:51:25,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:51:25,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:51:27,982.982 INFO    ] ================================================
[2026-10-25 22:51:28,998.998 INFO    ] Launching Daemon at Sun Oct 25 22:51:27 IST 2026
[2026-10-25 22:51:28,009.009 INFO    ] ================================================
[2026-10-25 22:51:28,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:51:28
[2026-10-25 22:51:29,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:51:29,570.570 INFO    ] Initializing speech engine...
[2026-10-25 22:51:29,580.580 INFO    ] 2026-10-25 22:51:29
[2026-10-25 22:51:29,859.859 INFO    ] 2026-10-25 22:51:29
[2026-10-25 22:51:29,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:51:30,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:51:30,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:51:30,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:51:30,314.314 INFO    ] time= 25/10/2026 22:51:30
[2026-10-25 22:51:30,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:51:30,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:51:30,451.451 INFO    ] No existing commands found in stream
[2026-10-25 22:51:35,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:51:35,466.466 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-25 22:51:38,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:51:38,514.514 INFO    ] Checking for system updates...
[2026-10-25 22:51:38,553.553 INFO    ] 200
[2026-10-25 22:51:38,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:38,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:51:38,618.618 INFO    ] No update needed
[2026-10-25 22:51:38,620.620 INFO    ] Checking for camera pi updates...
[2026-10-25 22:51:38,657.657 INFO    ] 200
[2026-10-25 22:51:38,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:38,700.700 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:51:38,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:51:38,820.820 INFO    ] No camera update needed
[2026-10-25 22:51:38,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:51:38,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:51:38,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:51:38,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:51:40,882.882 INFO    ] ================================================
[2026-10-25 22:51:40,900.900 INFO    ] Launching Daemon at Sun Oct 25 22:51:40 IST 2026
[2026-10-25 22:51:40,911.911 INFO    ] ================================================
[2026-10-25 22:51:41,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:51:41
[2026-10-25 22:51:42,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:51:42,388.388 INFO    ] Initializing speech engine...
[2026-10-25 22:51:42,396.396 INFO    ] 2026-10-25 22:51:42
[2026-10-25 22:51:42,658.658 INFO    ] 2026-10-25 22:51:42
[2026-10-25 22:51:42,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:51:42,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:51:43,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:51:43,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:51:43,202.202 INFO    ] time= 25/10/2026 22:51:43
[2026-10-25 22:51:43,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:51:43,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:51:43,342.342 INFO    ] No existing commands found in stream
[2026-10-25 22:51:48,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:51:48,366.366 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-25 22:51:50,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:51:50,283.283 INFO    ] Checking for system updates...
[2026-10-25 22:51:50,322.322 INFO    ] 200
[2026-10-25 22:51:50,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:50,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:50,380.380 INFO    ] No update needed
[2026-10-25 22:51:50,382.382 INFO    ] Checking for camera pi updates...
[2026-10-25 22:51:50,416.416 INFO    ] 200
[2026-10-25 22:51:50,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:51:50,467.467 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:51:50,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:51:50,518.518 INFO    ] No camera update needed
[2026-10-25 22:51:50,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:51:50,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:51:50,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:51:50,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:51:52,574.574 INFO    ] ================================================
[2026-10-25 22:51:52,590.590 INFO    ] Launching Daemon at Sun Oct 25 22:51:52 IST 2026
[2026-10-25 22:51:52,602.602 INFO    ] ================================================
[2026-10-25 22:51:53,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:51:53
[2026-10-25 22:51:53,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:51:54,089.089 INFO    ] Initializing speech engine...
[2026-10-25 22:51:54,099.099 INFO    ] 2026-10-25 22:51:54
[2026-10-25 22:51:54,360.360 INFO    ] 2026-10-25 22:51:54
[2026-10-25 22:51:54,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:51:54,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:51:54,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:51:54,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:51:54,749.749 INFO    ] time= 25/10/2026 22:51:54
[2026-10-25 22:51:54,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:51:54,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:51:54,916.916 INFO    ] No existing commands found in stream
[2026-10-25 22:51:59,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:51:59,944.944 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 22:52:04,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:52:04,066.066 INFO    ] Checking for system updates...
[2026-10-25 22:52:04,107.107 INFO    ] 200
[2026-10-25 22:52:04,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:04,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:04,166.166 INFO    ] No update needed
[2026-10-25 22:52:04,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 22:52:04,203.203 INFO    ] 200
[2026-10-25 22:52:04,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:04,253.253 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:52:04,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:04,295.295 INFO    ] No camera update needed
[2026-10-25 22:52:04,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:52:04,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:52:04,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:52:04,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:52:06,353.353 INFO    ] ================================================
[2026-10-25 22:52:06,368.368 INFO    ] Launching Daemon at Sun Oct 25 22:52:06 IST 2026
[2026-10-25 22:52:06,379.379 INFO    ] ================================================
[2026-10-25 22:52:06,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:52:06
[2026-10-25 22:52:07,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:52:07,788.788 INFO    ] Initializing speech engine...
[2026-10-25 22:52:07,811.811 INFO    ] 2026-10-25 22:52:07
[2026-10-25 22:52:08,069.069 INFO    ] 2026-10-25 22:52:08
[2026-10-25 22:52:08,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:52:08,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:52:08,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:52:08,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:52:08,437.437 INFO    ] time= 25/10/2026 22:52:08
[2026-10-25 22:52:08,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:52:08,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:52:08,604.604 INFO    ] No existing commands found in stream
[2026-10-25 22:52:13,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:52:13,636.636 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-25 22:52:14,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:52:14,483.483 INFO    ] Checking for system updates...
[2026-10-25 22:52:14,528.528 INFO    ] 200
[2026-10-25 22:52:14,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:14,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:52:14,591.591 INFO    ] No update needed
[2026-10-25 22:52:14,593.593 INFO    ] Checking for camera pi updates...
[2026-10-25 22:52:14,633.633 INFO    ] 200
[2026-10-25 22:52:14,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:14,679.679 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:52:14,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:52:14,732.732 INFO    ] No camera update needed
[2026-10-25 22:52:14,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:52:14,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:52:14,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:52:14,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:52:16,789.789 INFO    ] ================================================
[2026-10-25 22:52:16,804.804 INFO    ] Launching Daemon at Sun Oct 25 22:52:16 IST 2026
[2026-10-25 22:52:16,816.816 INFO    ] ================================================
[2026-10-25 22:52:17,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:52:17
[2026-10-25 22:52:17,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:52:18,228.228 INFO    ] Initializing speech engine...
[2026-10-25 22:52:18,237.237 INFO    ] 2026-10-25 22:52:18
[2026-10-25 22:52:18,482.482 INFO    ] 2026-10-25 22:52:18
[2026-10-25 22:52:18,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:52:18,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:52:18,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:52:18,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:52:18,949.949 INFO    ] time= 25/10/2026 22:52:18
[2026-10-25 22:52:19,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:52:19,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:52:19,096.096 INFO    ] No existing commands found in stream
[2026-10-25 22:52:24,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:52:24,111.111 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-25 22:52:26,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:52:26,663.663 INFO    ] Checking for system updates...
[2026-10-25 22:52:26,704.704 INFO    ] 200
[2026-10-25 22:52:26,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:26,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:26,772.772 INFO    ] No update needed
[2026-10-25 22:52:26,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 22:52:26,808.808 INFO    ] 200
[2026-10-25 22:52:26,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:26,852.852 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:52:26,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:26,898.898 INFO    ] No camera update needed
[2026-10-25 22:52:26,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:52:26,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:52:26,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:52:26,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:52:28,960.960 INFO    ] ================================================
[2026-10-25 22:52:28,977.977 INFO    ] Launching Daemon at Sun Oct 25 22:52:28 IST 2026
[2026-10-25 22:52:28,989.989 INFO    ] ================================================
[2026-10-25 22:52:29,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:52:29
[2026-10-25 22:52:30,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:52:30,593.593 INFO    ] Initializing speech engine...
[2026-10-25 22:52:30,600.600 INFO    ] 2026-10-25 22:52:30
[2026-10-25 22:52:30,896.896 INFO    ] 2026-10-25 22:52:30
[2026-10-25 22:52:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:52:31,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:52:31,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:52:31,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:52:31,398.398 INFO    ] time= 25/10/2026 22:52:31
[2026-10-25 22:52:31,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:52:31,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:52:31,589.589 INFO    ] No existing commands found in stream
[2026-10-25 22:52:36,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:52:36,620.620 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 22:52:37,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:52:37,323.323 INFO    ] Checking for system updates...
[2026-10-25 22:52:37,360.360 INFO    ] 200
[2026-10-25 22:52:37,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:37,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:37,417.417 INFO    ] No update needed
[2026-10-25 22:52:37,420.420 INFO    ] Checking for camera pi updates...
[2026-10-25 22:52:37,453.453 INFO    ] 200
[2026-10-25 22:52:37,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:37,501.501 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:52:37,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:52:37,551.551 INFO    ] No camera update needed
[2026-10-25 22:52:37,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:52:37,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:52:37,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:52:37,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:52:39,607.607 INFO    ] ================================================
[2026-10-25 22:52:39,622.622 INFO    ] Launching Daemon at Sun Oct 25 22:52:39 IST 2026
[2026-10-25 22:52:39,633.633 INFO    ] ================================================
[2026-10-25 22:52:40,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:52:40
[2026-10-25 22:52:40,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:52:41,269.269 INFO    ] Initializing speech engine...
[2026-10-25 22:52:41,282.282 INFO    ] 2026-10-25 22:52:41
[2026-10-25 22:52:41,562.562 INFO    ] 2026-10-25 22:52:41
[2026-10-25 22:52:41,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:52:42,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:52:42,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:52:42,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:52:42,996.996 INFO    ] time= 25/10/2026 22:52:42
[2026-10-25 22:52:43,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:52:43,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:52:43,088.088 INFO    ] No existing commands found in stream
[2026-10-25 22:52:48,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:52:48,104.104 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 22:52:48,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:52:48,979.979 INFO    ] Checking for system updates...
[2026-10-25 22:52:49,015.015 INFO    ] 200
[2026-10-25 22:52:49,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:49,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:52:49,081.081 INFO    ] No update needed
[2026-10-25 22:52:49,085.085 INFO    ] Checking for camera pi updates...
[2026-10-25 22:52:49,137.137 INFO    ] 200
[2026-10-25 22:52:49,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:52:49,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:52:49,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:52:49,244.244 INFO    ] No camera update needed
[2026-10-25 22:52:49,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:52:49,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:52:49,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:52:49,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:52:51,301.301 INFO    ] ================================================
[2026-10-25 22:52:51,316.316 INFO    ] Launching Daemon at Sun Oct 25 22:52:51 IST 2026
[2026-10-25 22:52:51,328.328 INFO    ] ================================================
[2026-10-25 22:52:51,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:52:51
[2026-10-25 22:52:52,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:52:52,752.752 INFO    ] Initializing speech engine...
[2026-10-25 22:52:52,767.767 INFO    ] 2026-10-25 22:52:52
[2026-10-25 22:52:53,029.029 INFO    ] 2026-10-25 22:52:53
[2026-10-25 22:52:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:52:53,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:52:53,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:52:53,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:52:53,495.495 INFO    ] time= 25/10/2026 22:52:53
[2026-10-25 22:52:53,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:52:53,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:52:53,644.644 INFO    ] No existing commands found in stream
[2026-10-25 22:52:58,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:52:58,659.659 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 22:53:01,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:53:01,285.285 INFO    ] Checking for system updates...
[2026-10-25 22:53:01,325.325 INFO    ] 200
[2026-10-25 22:53:01,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:01,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:01,383.383 INFO    ] No update needed
[2026-10-25 22:53:01,386.386 INFO    ] Checking for camera pi updates...
[2026-10-25 22:53:01,420.420 INFO    ] 200
[2026-10-25 22:53:01,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:01,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:53:01,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:01,515.515 INFO    ] No camera update needed
[2026-10-25 22:53:01,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:53:01,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:53:01,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:53:01,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:53:03,574.574 INFO    ] ================================================
[2026-10-25 22:53:03,593.593 INFO    ] Launching Daemon at Sun Oct 25 22:53:03 IST 2026
[2026-10-25 22:53:03,605.605 INFO    ] ================================================
[2026-10-25 22:53:04,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:53:04
[2026-10-25 22:53:04,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:53:05,046.046 INFO    ] Initializing speech engine...
[2026-10-25 22:53:05,060.060 INFO    ] 2026-10-25 22:53:05
[2026-10-25 22:53:05,316.316 INFO    ] 2026-10-25 22:53:05
[2026-10-25 22:53:05,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:53:05,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:53:05,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:53:05,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:53:05,808.808 INFO    ] time= 25/10/2026 22:53:05
[2026-10-25 22:53:05,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:53:05,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:53:05,934.934 INFO    ] No existing commands found in stream
[2026-10-25 22:53:10,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:53:10,949.949 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 22:53:13,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:53:13,150.150 INFO    ] Checking for system updates...
[2026-10-25 22:53:13,188.188 INFO    ] 200
[2026-10-25 22:53:13,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:13,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:53:13,264.264 INFO    ] No update needed
[2026-10-25 22:53:13,266.266 INFO    ] Checking for camera pi updates...
[2026-10-25 22:53:13,327.327 INFO    ] 200
[2026-10-25 22:53:13,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:13,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:53:13,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:53:13,427.427 INFO    ] No camera update needed
[2026-10-25 22:53:13,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:53:13,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:53:13,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:53:13,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:53:15,484.484 INFO    ] ================================================
[2026-10-25 22:53:15,499.499 INFO    ] Launching Daemon at Sun Oct 25 22:53:15 IST 2026
[2026-10-25 22:53:15,509.509 INFO    ] ================================================
[2026-10-25 22:53:16,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:53:16
[2026-10-25 22:53:16,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:53:16,937.937 INFO    ] Initializing speech engine...
[2026-10-25 22:53:16,946.946 INFO    ] 2026-10-25 22:53:16
[2026-10-25 22:53:17,197.197 INFO    ] 2026-10-25 22:53:17
[2026-10-25 22:53:17,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:53:17,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:53:17,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:53:17,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:53:17,522.522 INFO    ] time= 25/10/2026 22:53:17
[2026-10-25 22:53:17,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:53:17,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:53:17,635.635 INFO    ] No existing commands found in stream
[2026-10-25 22:53:22,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:53:22,658.658 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 22:53:24,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:53:24,888.888 INFO    ] Checking for system updates...
[2026-10-25 22:53:24,925.925 INFO    ] 200
[2026-10-25 22:53:24,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:24,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:24,991.991 INFO    ] No update needed
[2026-10-25 22:53:24,993.993 INFO    ] Checking for camera pi updates...
[2026-10-25 22:53:25,031.031 INFO    ] 200
[2026-10-25 22:53:25,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:25,080.080 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:53:25,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:25,224.224 INFO    ] No camera update needed
[2026-10-25 22:53:25,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:53:25,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:53:25,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:53:25,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:53:27,280.280 INFO    ] ================================================
[2026-10-25 22:53:27,295.295 INFO    ] Launching Daemon at Sun Oct 25 22:53:27 IST 2026
[2026-10-25 22:53:27,306.306 INFO    ] ================================================
[2026-10-25 22:53:27,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:53:27
[2026-10-25 22:53:28,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:53:28,947.947 INFO    ] Initializing speech engine...
[2026-10-25 22:53:28,960.960 INFO    ] 2026-10-25 22:53:28
[2026-10-25 22:53:29,229.229 INFO    ] 2026-10-25 22:53:29
[2026-10-25 22:53:29,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:53:29,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:53:29,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:53:29,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:53:29,698.698 INFO    ] time= 25/10/2026 22:53:29
[2026-10-25 22:53:29,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:53:29,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:53:29,877.877 INFO    ] No existing commands found in stream
[2026-10-25 22:53:34,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:53:34,913.913 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-25 22:53:38,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:53:38,379.379 INFO    ] Checking for system updates...
[2026-10-25 22:53:38,428.428 INFO    ] 200
[2026-10-25 22:53:38,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:38,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:53:38,495.495 INFO    ] No update needed
[2026-10-25 22:53:38,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 22:53:38,532.532 INFO    ] 200
[2026-10-25 22:53:38,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:38,582.582 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:53:38,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:53:38,789.789 INFO    ] No camera update needed
[2026-10-25 22:53:38,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:53:38,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:53:38,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:53:38,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:53:40,846.846 INFO    ] ================================================
[2026-10-25 22:53:40,861.861 INFO    ] Launching Daemon at Sun Oct 25 22:53:40 IST 2026
[2026-10-25 22:53:40,872.872 INFO    ] ================================================
[2026-10-25 22:53:41,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:53:41
[2026-10-25 22:53:42,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:53:42,503.503 INFO    ] Initializing speech engine...
[2026-10-25 22:53:42,508.508 INFO    ] 2026-10-25 22:53:42
[2026-10-25 22:53:42,800.800 INFO    ] 2026-10-25 22:53:42
[2026-10-25 22:53:42,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:53:43,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:53:43,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:53:43,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:53:43,277.277 INFO    ] time= 25/10/2026 22:53:43
[2026-10-25 22:53:43,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:53:43,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:53:43,404.404 INFO    ] No existing commands found in stream
[2026-10-25 22:53:48,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:53:48,420.420 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 22:53:49,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:53:49,071.071 INFO    ] Checking for system updates...
[2026-10-25 22:53:49,108.108 INFO    ] 200
[2026-10-25 22:53:49,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:49,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:49,166.166 INFO    ] No update needed
[2026-10-25 22:53:49,169.169 INFO    ] Checking for camera pi updates...
[2026-10-25 22:53:49,207.207 INFO    ] 200
[2026-10-25 22:53:49,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:53:49,251.251 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:53:49,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:53:49,301.301 INFO    ] No camera update needed
[2026-10-25 22:53:49,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:53:49,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:53:49,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:53:49,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:53:51,356.356 INFO    ] ================================================
[2026-10-25 22:53:51,370.370 INFO    ] Launching Daemon at Sun Oct 25 22:53:51 IST 2026
[2026-10-25 22:53:51,381.381 INFO    ] ================================================
[2026-10-25 22:53:52,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:53:52
[2026-10-25 22:53:52,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:53:53,035.035 INFO    ] Initializing speech engine...
[2026-10-25 22:53:53,045.045 INFO    ] 2026-10-25 22:53:53
[2026-10-25 22:53:53,326.326 INFO    ] 2026-10-25 22:53:53
[2026-10-25 22:53:53,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:53:53,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:53:53,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:53:53,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:53:53,853.853 INFO    ] time= 25/10/2026 22:53:53
[2026-10-25 22:53:53,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:53:53,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:53:53,978.978 INFO    ] No existing commands found in stream
[2026-10-25 22:53:59,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:53:59,015.015 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 22:54:02,688.688 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:54:02,692.692 INFO    ] Checking for system updates...
[2026-10-25 22:54:02,736.736 INFO    ] 200
[2026-10-25 22:54:02,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:02,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:54:02,802.802 INFO    ] No update needed
[2026-10-25 22:54:02,805.805 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:02,847.847 INFO    ] 200
[2026-10-25 22:54:02,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:02,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:02,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:54:02,951.951 INFO    ] No camera update needed
[2026-10-25 22:54:02,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:02,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:02,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:02,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:54:05,011.011 INFO    ] ================================================
[2026-10-25 22:54:05,026.026 INFO    ] Launching Daemon at Sun Oct 25 22:54:05 IST 2026
[2026-10-25 22:54:05,036.036 INFO    ] ================================================
[2026-10-25 22:54:05,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:54:05
[2026-10-25 22:54:06,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:54:06,423.423 INFO    ] Initializing speech engine...
[2026-10-25 22:54:06,431.431 INFO    ] 2026-10-25 22:54:06
[2026-10-25 22:54:06,704.704 INFO    ] 2026-10-25 22:54:06
[2026-10-25 22:54:06,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:54:06,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:54:07,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:54:07,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:54:07,179.179 INFO    ] time= 25/10/2026 22:54:07
[2026-10-25 22:54:07,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:54:07,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:54:07,330.330 INFO    ] No existing commands found in stream
[2026-10-25 22:54:12,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:54:12,344.344 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-25 22:54:13,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:54:13,302.302 INFO    ] Checking for system updates...
[2026-10-25 22:54:13,348.348 INFO    ] 200
[2026-10-25 22:54:13,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:13,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:13,406.406 INFO    ] No update needed
[2026-10-25 22:54:13,408.408 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:13,442.442 INFO    ] 200
[2026-10-25 22:54:13,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:13,490.490 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:13,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:13,536.536 INFO    ] No camera update needed
[2026-10-25 22:54:13,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:13,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:13,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:13,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:54:15,592.592 INFO    ] ================================================
[2026-10-25 22:54:15,607.607 INFO    ] Launching Daemon at Sun Oct 25 22:54:15 IST 2026
[2026-10-25 22:54:15,618.618 INFO    ] ================================================
[2026-10-25 22:54:16,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:54:16
[2026-10-25 22:54:16,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:54:17,031.031 INFO    ] Initializing speech engine...
[2026-10-25 22:54:17,057.057 INFO    ] 2026-10-25 22:54:17
[2026-10-25 22:54:17,334.334 INFO    ] 2026-10-25 22:54:17
[2026-10-25 22:54:17,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:54:17,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:54:17,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:54:17,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:54:17,709.709 INFO    ] time= 25/10/2026 22:54:17
[2026-10-25 22:54:17,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:54:17,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:54:17,777.777 INFO    ] No existing commands found in stream
[2026-10-25 22:54:22,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:54:22,793.793 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 22:54:23,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:54:23,529.529 INFO    ] Checking for system updates...
[2026-10-25 22:54:23,570.570 INFO    ] 200
[2026-10-25 22:54:23,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:23,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:23,627.627 INFO    ] No update needed
[2026-10-25 22:54:23,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:23,664.664 INFO    ] 200
[2026-10-25 22:54:23,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:23,729.729 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:23,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:23,784.784 INFO    ] No camera update needed
[2026-10-25 22:54:23,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:23,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:23,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:23,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:54:25,839.839 INFO    ] ================================================
[2026-10-25 22:54:25,855.855 INFO    ] Launching Daemon at Sun Oct 25 22:54:25 IST 2026
[2026-10-25 22:54:25,865.865 INFO    ] ================================================
[2026-10-25 22:54:26,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:54:26
[2026-10-25 22:54:27,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:54:27,306.306 INFO    ] Initializing speech engine...
[2026-10-25 22:54:27,312.312 INFO    ] 2026-10-25 22:54:27
[2026-10-25 22:54:27,607.607 INFO    ] 2026-10-25 22:54:27
[2026-10-25 22:54:27,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:54:27,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:54:27,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:54:28,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:54:28,028.028 INFO    ] time= 25/10/2026 22:54:28
[2026-10-25 22:54:28,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:54:28,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:54:28,115.115 INFO    ] No existing commands found in stream
[2026-10-25 22:54:33,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:54:33,126.126 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 22:54:33,630.630 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:54:33,633.633 INFO    ] Checking for system updates...
[2026-10-25 22:54:33,669.669 INFO    ] 200
[2026-10-25 22:54:33,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:33,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:54:33,735.735 INFO    ] No update needed
[2026-10-25 22:54:33,737.737 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:33,784.784 INFO    ] 200
[2026-10-25 22:54:33,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:33,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:33,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:54:33,883.883 INFO    ] No camera update needed
[2026-10-25 22:54:33,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:33,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:33,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:33,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:54:35,939.939 INFO    ] ================================================
[2026-10-25 22:54:35,954.954 INFO    ] Launching Daemon at Sun Oct 25 22:54:35 IST 2026
[2026-10-25 22:54:35,966.966 INFO    ] ================================================
[2026-10-25 22:54:36,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:54:36
[2026-10-25 22:54:37,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:54:37,366.366 INFO    ] Initializing speech engine...
[2026-10-25 22:54:37,390.390 INFO    ] 2026-10-25 22:54:37
[2026-10-25 22:54:37,645.645 INFO    ] 2026-10-25 22:54:37
[2026-10-25 22:54:37,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:54:37,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:54:37,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:54:38,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:54:38,126.126 INFO    ] time= 25/10/2026 22:54:38
[2026-10-25 22:54:38,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:54:38,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:54:38,273.273 INFO    ] No existing commands found in stream
[2026-10-25 22:54:43,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:54:43,287.287 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 22:54:45,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:54:45,872.872 INFO    ] Checking for system updates...
[2026-10-25 22:54:45,908.908 INFO    ] 200
[2026-10-25 22:54:45,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:45,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:45,968.968 INFO    ] No update needed
[2026-10-25 22:54:45,970.970 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:46,008.008 INFO    ] 200
[2026-10-25 22:54:46,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:46,055.055 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:46,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:46,110.110 INFO    ] No camera update needed
[2026-10-25 22:54:46,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:46,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:46,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:46,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:54:48,165.165 INFO    ] ================================================
[2026-10-25 22:54:48,182.182 INFO    ] Launching Daemon at Sun Oct 25 22:54:48 IST 2026
[2026-10-25 22:54:48,194.194 INFO    ] ================================================
[2026-10-25 22:54:48,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:54:48
[2026-10-25 22:54:49,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:54:49,631.631 INFO    ] Initializing speech engine...
[2026-10-25 22:54:49,644.644 INFO    ] 2026-10-25 22:54:49
[2026-10-25 22:54:49,933.933 INFO    ] 2026-10-25 22:54:49
[2026-10-25 22:54:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:54:50,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:54:50,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:54:50,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:54:50,291.291 INFO    ] time= 25/10/2026 22:54:50
[2026-10-25 22:54:50,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:54:50,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:54:50,369.369 INFO    ] No existing commands found in stream
[2026-10-25 22:54:55,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:54:55,385.385 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-25 22:54:58,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:54:58,792.792 INFO    ] Checking for system updates...
[2026-10-25 22:54:58,834.834 INFO    ] 200
[2026-10-25 22:54:58,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:58,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:58,917.917 INFO    ] No update needed
[2026-10-25 22:54:58,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 22:54:58,963.963 INFO    ] 200
[2026-10-25 22:54:58,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:54:59,012.012 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:54:59,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:54:59,067.067 INFO    ] No camera update needed
[2026-10-25 22:54:59,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:54:59,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:54:59,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:54:59,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:55:01,127.127 INFO    ] ================================================
[2026-10-25 22:55:01,142.142 INFO    ] Launching Daemon at Sun Oct 25 22:55:01 IST 2026
[2026-10-25 22:55:01,153.153 INFO    ] ================================================
[2026-10-25 22:55:01,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:55:01
[2026-10-25 22:55:02,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:55:02,891.891 INFO    ] Initializing speech engine...
[2026-10-25 22:55:02,902.902 INFO    ] 2026-10-25 22:55:02
[2026-10-25 22:55:03,238.238 INFO    ] 2026-10-25 22:55:03
[2026-10-25 22:55:03,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:55:03,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:55:03,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:55:03,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:55:03,741.741 INFO    ] time= 25/10/2026 22:55:03
[2026-10-25 22:55:03,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:55:03,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:55:03,895.895 INFO    ] No existing commands found in stream
[2026-10-25 22:55:08,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:55:08,909.909 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-25 22:55:13,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:55:13,189.189 INFO    ] Checking for system updates...
[2026-10-25 22:55:13,226.226 INFO    ] 200
[2026-10-25 22:55:13,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:13,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:13,291.291 INFO    ] No update needed
[2026-10-25 22:55:13,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 22:55:13,329.329 INFO    ] 200
[2026-10-25 22:55:13,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:13,375.375 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:55:13,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:13,436.436 INFO    ] No camera update needed
[2026-10-25 22:55:13,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:55:13,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:55:13,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:55:13,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:55:15,495.495 INFO    ] ================================================
[2026-10-25 22:55:15,512.512 INFO    ] Launching Daemon at Sun Oct 25 22:55:15 IST 2026
[2026-10-25 22:55:15,523.523 INFO    ] ================================================
[2026-10-25 22:55:16,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:55:16
[2026-10-25 22:55:16,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:55:16,950.950 INFO    ] Initializing speech engine...
[2026-10-25 22:55:16,961.961 INFO    ] 2026-10-25 22:55:16
[2026-10-25 22:55:17,210.210 INFO    ] 2026-10-25 22:55:17
[2026-10-25 22:55:17,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:55:17,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:55:17,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:55:17,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:55:17,652.652 INFO    ] time= 25/10/2026 22:55:17
[2026-10-25 22:55:17,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:55:17,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:55:17,808.808 INFO    ] No existing commands found in stream
[2026-10-25 22:55:22,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:55:22,826.826 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-25 22:55:25,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:55:25,763.763 INFO    ] Checking for system updates...
[2026-10-25 22:55:25,803.803 INFO    ] 200
[2026-10-25 22:55:25,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:25,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:25,861.861 INFO    ] No update needed
[2026-10-25 22:55:25,864.864 INFO    ] Checking for camera pi updates...
[2026-10-25 22:55:25,902.902 INFO    ] 200
[2026-10-25 22:55:25,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:25,953.953 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:55:26,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:26,107.107 INFO    ] No camera update needed
[2026-10-25 22:55:26,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:55:26,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:55:26,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:55:26,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:55:28,163.163 INFO    ] ================================================
[2026-10-25 22:55:28,178.178 INFO    ] Launching Daemon at Sun Oct 25 22:55:28 IST 2026
[2026-10-25 22:55:28,188.188 INFO    ] ================================================
[2026-10-25 22:55:28,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:55:28
[2026-10-25 22:55:29,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:55:29,631.631 INFO    ] Initializing speech engine...
[2026-10-25 22:55:29,646.646 INFO    ] 2026-10-25 22:55:29
[2026-10-25 22:55:29,929.929 INFO    ] 2026-10-25 22:55:29
[2026-10-25 22:55:29,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:55:30,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:55:30,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:55:30,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:55:30,340.340 INFO    ] time= 25/10/2026 22:55:30
[2026-10-25 22:55:30,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:55:30,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:55:30,428.428 INFO    ] No existing commands found in stream
[2026-10-25 22:55:35,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:55:35,444.444 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 22:55:38,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:55:38,881.881 INFO    ] Checking for system updates...
[2026-10-25 22:55:38,917.917 INFO    ] 200
[2026-10-25 22:55:38,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:38,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:55:38,982.982 INFO    ] No update needed
[2026-10-25 22:55:38,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 22:55:39,018.018 INFO    ] 200
[2026-10-25 22:55:39,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:39,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:55:39,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:55:39,129.129 INFO    ] No camera update needed
[2026-10-25 22:55:39,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:55:39,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:55:39,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:55:39,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:55:41,184.184 INFO    ] ================================================
[2026-10-25 22:55:41,199.199 INFO    ] Launching Daemon at Sun Oct 25 22:55:41 IST 2026
[2026-10-25 22:55:41,209.209 INFO    ] ================================================
[2026-10-25 22:55:41,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:55:41
[2026-10-25 22:55:42,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:55:42,795.795 INFO    ] Initializing speech engine...
[2026-10-25 22:55:42,804.804 INFO    ] 2026-10-25 22:55:42
[2026-10-25 22:55:43,085.085 INFO    ] 2026-10-25 22:55:43
[2026-10-25 22:55:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:55:43,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:55:43,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:55:43,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:55:43,618.618 INFO    ] time= 25/10/2026 22:55:43
[2026-10-25 22:55:43,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:55:43,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:55:43,769.769 INFO    ] No existing commands found in stream
[2026-10-25 22:55:48,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:55:48,790.790 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-25 22:55:50,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:55:50,006.006 INFO    ] Checking for system updates...
[2026-10-25 22:55:50,043.043 INFO    ] 200
[2026-10-25 22:55:50,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:50,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:50,101.101 INFO    ] No update needed
[2026-10-25 22:55:50,104.104 INFO    ] Checking for camera pi updates...
[2026-10-25 22:55:50,138.138 INFO    ] 200
[2026-10-25 22:55:50,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:55:50,183.183 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:55:50,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:55:50,238.238 INFO    ] No camera update needed
[2026-10-25 22:55:50,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:55:50,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:55:50,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:55:50,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:55:52,296.296 INFO    ] ================================================
[2026-10-25 22:55:52,311.311 INFO    ] Launching Daemon at Sun Oct 25 22:55:52 IST 2026
[2026-10-25 22:55:52,322.322 INFO    ] ================================================
[2026-10-25 22:55:52,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:55:52
[2026-10-25 22:55:53,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:55:53,772.772 INFO    ] Initializing speech engine...
[2026-10-25 22:55:53,781.781 INFO    ] 2026-10-25 22:55:53
[2026-10-25 22:55:54,030.030 INFO    ] 2026-10-25 22:55:54
[2026-10-25 22:55:54,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:55:54,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:55:54,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:55:54,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:55:54,524.524 INFO    ] time= 25/10/2026 22:55:54
[2026-10-25 22:55:54,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:55:54,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:55:54,707.707 INFO    ] No existing commands found in stream
[2026-10-25 22:55:59,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:55:59,735.735 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 22:56:03,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:56:03,884.884 INFO    ] Checking for system updates...
[2026-10-25 22:56:03,921.921 INFO    ] 200
[2026-10-25 22:56:03,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:03,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:03,978.978 INFO    ] No update needed
[2026-10-25 22:56:03,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 22:56:04,018.018 INFO    ] 200
[2026-10-25 22:56:04,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:04,067.067 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:56:04,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:04,134.134 INFO    ] No camera update needed
[2026-10-25 22:56:04,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:56:04,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:56:04,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:56:04,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:56:06,196.196 INFO    ] ================================================
[2026-10-25 22:56:06,211.211 INFO    ] Launching Daemon at Sun Oct 25 22:56:06 IST 2026
[2026-10-25 22:56:06,222.222 INFO    ] ================================================
[2026-10-25 22:56:06,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:56:06
[2026-10-25 22:56:07,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:56:07,858.858 INFO    ] Initializing speech engine...
[2026-10-25 22:56:07,872.872 INFO    ] 2026-10-25 22:56:07
[2026-10-25 22:56:08,139.139 INFO    ] 2026-10-25 22:56:08
[2026-10-25 22:56:08,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:56:08,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:56:08,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:56:08,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:56:08,656.656 INFO    ] time= 25/10/2026 22:56:08
[2026-10-25 22:56:08,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:56:08,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:56:08,852.852 INFO    ] No existing commands found in stream
[2026-10-25 22:56:13,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:56:13,878.878 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-25 22:56:18,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:56:18,251.251 INFO    ] Checking for system updates...
[2026-10-25 22:56:18,292.292 INFO    ] 200
[2026-10-25 22:56:18,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:18,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:18,353.353 INFO    ] No update needed
[2026-10-25 22:56:18,355.355 INFO    ] Checking for camera pi updates...
[2026-10-25 22:56:18,390.390 INFO    ] 200
[2026-10-25 22:56:18,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:18,439.439 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:56:18,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:18,493.493 INFO    ] No camera update needed
[2026-10-25 22:56:18,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:56:18,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:56:18,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:56:18,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:56:20,552.552 INFO    ] ================================================
[2026-10-25 22:56:20,567.567 INFO    ] Launching Daemon at Sun Oct 25 22:56:20 IST 2026
[2026-10-25 22:56:20,578.578 INFO    ] ================================================
[2026-10-25 22:56:21,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:56:21
[2026-10-25 22:56:21,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:56:22,008.008 INFO    ] Initializing speech engine...
[2026-10-25 22:56:22,018.018 INFO    ] 2026-10-25 22:56:22
[2026-10-25 22:56:22,265.265 INFO    ] 2026-10-25 22:56:22
[2026-10-25 22:56:22,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:56:22,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:56:22,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:56:22,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:56:22,642.642 INFO    ] time= 25/10/2026 22:56:22
[2026-10-25 22:56:22,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:56:22,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:56:22,794.794 INFO    ] No existing commands found in stream
[2026-10-25 22:56:27,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:56:27,822.822 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 22:56:29,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:56:29,933.933 INFO    ] Checking for system updates...
[2026-10-25 22:56:29,969.969 INFO    ] 200
[2026-10-25 22:56:29,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:30,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:30,027.027 INFO    ] No update needed
[2026-10-25 22:56:30,029.029 INFO    ] Checking for camera pi updates...
[2026-10-25 22:56:30,063.063 INFO    ] 200
[2026-10-25 22:56:30,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:30,113.113 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:56:30,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:56:30,166.166 INFO    ] No camera update needed
[2026-10-25 22:56:30,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:56:30,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:56:30,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:56:30,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:56:32,227.227 INFO    ] ================================================
[2026-10-25 22:56:32,244.244 INFO    ] Launching Daemon at Sun Oct 25 22:56:32 IST 2026
[2026-10-25 22:56:32,256.256 INFO    ] ================================================
[2026-10-25 22:56:32,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:56:32
[2026-10-25 22:56:33,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:56:33,740.740 INFO    ] Initializing speech engine...
[2026-10-25 22:56:33,746.746 INFO    ] 2026-10-25 22:56:33
[2026-10-25 22:56:34,005.005 INFO    ] 2026-10-25 22:56:33
[2026-10-25 22:56:34,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:56:34,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:56:34,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:56:34,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:56:34,473.473 INFO    ] time= 25/10/2026 22:56:34
[2026-10-25 22:56:34,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:56:34,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:56:34,610.610 INFO    ] No existing commands found in stream
[2026-10-25 22:56:39,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:56:39,625.625 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-25 22:56:43,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:56:43,845.845 INFO    ] Checking for system updates...
[2026-10-25 22:56:43,892.892 INFO    ] 200
[2026-10-25 22:56:43,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:43,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:56:43,958.958 INFO    ] No update needed
[2026-10-25 22:56:43,960.960 INFO    ] Checking for camera pi updates...
[2026-10-25 22:56:43,996.996 INFO    ] 200
[2026-10-25 22:56:43,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:44,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:56:44,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:56:44,095.095 INFO    ] No camera update needed
[2026-10-25 22:56:44,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:56:44,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:56:44,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:56:44,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:56:46,154.154 INFO    ] ================================================
[2026-10-25 22:56:46,169.169 INFO    ] Launching Daemon at Sun Oct 25 22:56:46 IST 2026
[2026-10-25 22:56:46,180.180 INFO    ] ================================================
[2026-10-25 22:56:46,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:56:46
[2026-10-25 22:56:47,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:56:47,776.776 INFO    ] Initializing speech engine...
[2026-10-25 22:56:47,784.784 INFO    ] 2026-10-25 22:56:47
[2026-10-25 22:56:48,066.066 INFO    ] 2026-10-25 22:56:48
[2026-10-25 22:56:48,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:56:48,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:56:48,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:56:48,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:56:48,557.557 INFO    ] time= 25/10/2026 22:56:48
[2026-10-25 22:56:48,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:56:48,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:56:48,737.737 INFO    ] No existing commands found in stream
[2026-10-25 22:56:53,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:56:53,769.769 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-25 22:56:54,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:56:54,381.381 INFO    ] Checking for system updates...
[2026-10-25 22:56:54,417.417 INFO    ] 200
[2026-10-25 22:56:54,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:54,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:56:54,475.475 INFO    ] No update needed
[2026-10-25 22:56:54,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 22:56:54,511.511 INFO    ] 200
[2026-10-25 22:56:54,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:56:54,554.554 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:56:54,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:56:54,610.610 INFO    ] No camera update needed
[2026-10-25 22:56:54,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:56:54,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:56:54,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:56:54,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:56:56,666.666 INFO    ] ================================================
[2026-10-25 22:56:56,682.682 INFO    ] Launching Daemon at Sun Oct 25 22:56:56 IST 2026
[2026-10-25 22:56:56,693.693 INFO    ] ================================================
[2026-10-25 22:56:57,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:56:57
[2026-10-25 22:56:57,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:56:58,099.099 INFO    ] Initializing speech engine...
[2026-10-25 22:56:58,106.106 INFO    ] 2026-10-25 22:56:58
[2026-10-25 22:56:58,398.398 INFO    ] 2026-10-25 22:56:58
[2026-10-25 22:56:58,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:56:58,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:56:58,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:56:58,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:56:58,774.774 INFO    ] time= 25/10/2026 22:56:58
[2026-10-25 22:56:58,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:56:58,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:56:58,898.898 INFO    ] No existing commands found in stream
[2026-10-25 22:57:03,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:57:03,913.913 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 22:57:05,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:57:05,559.559 INFO    ] Checking for system updates...
[2026-10-25 22:57:05,596.596 INFO    ] 200
[2026-10-25 22:57:05,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:05,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:57:05,655.655 INFO    ] No update needed
[2026-10-25 22:57:05,657.657 INFO    ] Checking for camera pi updates...
[2026-10-25 22:57:05,691.691 INFO    ] 200
[2026-10-25 22:57:05,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:05,738.738 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:57:05,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:57:05,788.788 INFO    ] No camera update needed
[2026-10-25 22:57:05,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:57:05,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:57:05,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:57:05,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:57:07,844.844 INFO    ] ================================================
[2026-10-25 22:57:07,860.860 INFO    ] Launching Daemon at Sun Oct 25 22:57:07 IST 2026
[2026-10-25 22:57:07,870.870 INFO    ] ================================================
[2026-10-25 22:57:08,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:57:08
[2026-10-25 22:57:09,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:57:09,301.301 INFO    ] Initializing speech engine...
[2026-10-25 22:57:09,310.310 INFO    ] 2026-10-25 22:57:09
[2026-10-25 22:57:09,571.571 INFO    ] 2026-10-25 22:57:09
[2026-10-25 22:57:09,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:57:09,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:57:09,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:57:09,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:57:10,030.030 INFO    ] time= 25/10/2026 22:57:09
[2026-10-25 22:57:10,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:57:10,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:57:10,181.181 INFO    ] No existing commands found in stream
[2026-10-25 22:57:15,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:57:15,195.195 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-25 22:57:18,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:57:18,373.373 INFO    ] Checking for system updates...
[2026-10-25 22:57:18,408.408 INFO    ] 200
[2026-10-25 22:57:18,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:18,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:18,474.474 INFO    ] No update needed
[2026-10-25 22:57:18,477.477 INFO    ] Checking for camera pi updates...
[2026-10-25 22:57:18,514.514 INFO    ] 200
[2026-10-25 22:57:18,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:18,557.557 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:57:18,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:18,612.612 INFO    ] No camera update needed
[2026-10-25 22:57:18,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:57:18,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:57:18,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:57:18,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:57:20,667.667 INFO    ] ================================================
[2026-10-25 22:57:20,683.683 INFO    ] Launching Daemon at Sun Oct 25 22:57:20 IST 2026
[2026-10-25 22:57:20,694.694 INFO    ] ================================================
[2026-10-25 22:57:21,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:57:21
[2026-10-25 22:57:21,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:57:22,106.106 INFO    ] Initializing speech engine...
[2026-10-25 22:57:22,115.115 INFO    ] 2026-10-25 22:57:22
[2026-10-25 22:57:22,361.361 INFO    ] 2026-10-25 22:57:22
[2026-10-25 22:57:22,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:57:22,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:57:22,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:57:22,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:57:22,808.808 INFO    ] time= 25/10/2026 22:57:22
[2026-10-25 22:57:22,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:57:22,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:57:22,973.973 INFO    ] No existing commands found in stream
[2026-10-25 22:57:27,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:57:27,988.988 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-25 22:57:32,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:57:32,070.070 INFO    ] Checking for system updates...
[2026-10-25 22:57:32,108.108 INFO    ] 200
[2026-10-25 22:57:32,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:32,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:32,172.172 INFO    ] No update needed
[2026-10-25 22:57:32,175.175 INFO    ] Checking for camera pi updates...
[2026-10-25 22:57:32,211.211 INFO    ] 200
[2026-10-25 22:57:32,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:32,262.262 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:57:32,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:32,412.412 INFO    ] No camera update needed
[2026-10-25 22:57:32,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:57:32,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:57:32,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:57:32,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:57:34,473.473 INFO    ] ================================================
[2026-10-25 22:57:34,488.488 INFO    ] Launching Daemon at Sun Oct 25 22:57:34 IST 2026
[2026-10-25 22:57:34,499.499 INFO    ] ================================================
[2026-10-25 22:57:35,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:57:35
[2026-10-25 22:57:35,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:57:36,107.107 INFO    ] Initializing speech engine...
[2026-10-25 22:57:36,116.116 INFO    ] 2026-10-25 22:57:36
[2026-10-25 22:57:36,404.404 INFO    ] 2026-10-25 22:57:36
[2026-10-25 22:57:36,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:57:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:57:36,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:57:36,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:57:36,871.871 INFO    ] time= 25/10/2026 22:57:36
[2026-10-25 22:57:36,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:57:36,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:57:37,020.020 INFO    ] No existing commands found in stream
[2026-10-25 22:57:42,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:57:42,036.036 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 22:57:44,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:57:44,530.530 INFO    ] Checking for system updates...
[2026-10-25 22:57:44,567.567 INFO    ] 200
[2026-10-25 22:57:44,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:44,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:57:44,645.645 INFO    ] No update needed
[2026-10-25 22:57:44,648.648 INFO    ] Checking for camera pi updates...
[2026-10-25 22:57:44,687.687 INFO    ] 200
[2026-10-25 22:57:44,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:44,733.733 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:57:44,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:57:44,786.786 INFO    ] No camera update needed
[2026-10-25 22:57:44,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:57:44,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:57:44,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:57:44,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:57:46,843.843 INFO    ] ================================================
[2026-10-25 22:57:46,858.858 INFO    ] Launching Daemon at Sun Oct 25 22:57:46 IST 2026
[2026-10-25 22:57:46,869.869 INFO    ] ================================================
[2026-10-25 22:57:47,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:57:47
[2026-10-25 22:57:48,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:57:48,467.467 INFO    ] Initializing speech engine...
[2026-10-25 22:57:48,481.481 INFO    ] 2026-10-25 22:57:48
[2026-10-25 22:57:48,758.758 INFO    ] 2026-10-25 22:57:48
[2026-10-25 22:57:48,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:57:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:57:49,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:57:49,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:57:49,203.203 INFO    ] time= 25/10/2026 22:57:49
[2026-10-25 22:57:49,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:57:49,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:57:49,427.427 INFO    ] No existing commands found in stream
[2026-10-25 22:57:54,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:57:54,456.456 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 22:57:58,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:57:58,401.401 INFO    ] Checking for system updates...
[2026-10-25 22:57:58,442.442 INFO    ] 200
[2026-10-25 22:57:58,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:58,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:58,500.500 INFO    ] No update needed
[2026-10-25 22:57:58,503.503 INFO    ] Checking for camera pi updates...
[2026-10-25 22:57:58,537.537 INFO    ] 200
[2026-10-25 22:57:58,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:57:58,586.586 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:57:58,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:57:58,639.639 INFO    ] No camera update needed
[2026-10-25 22:57:58,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:57:58,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:57:58,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:57:58,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:00,697.697 INFO    ] ================================================
[2026-10-25 22:58:00,712.712 INFO    ] Launching Daemon at Sun Oct 25 22:58:00 IST 2026
[2026-10-25 22:58:00,722.722 INFO    ] ================================================
[2026-10-25 22:58:01,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:01
[2026-10-25 22:58:02,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:02,400.400 INFO    ] Initializing speech engine...
[2026-10-25 22:58:02,407.407 INFO    ] 2026-10-25 22:58:02
[2026-10-25 22:58:02,697.697 INFO    ] 2026-10-25 22:58:02
[2026-10-25 22:58:02,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:02,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:03,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:03,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:03,235.235 INFO    ] time= 25/10/2026 22:58:03
[2026-10-25 22:58:03,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:03,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:03,391.391 INFO    ] No existing commands found in stream
[2026-10-25 22:58:08,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:58:08,407.407 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-25 22:58:09,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:58:09,186.186 INFO    ] Checking for system updates...
[2026-10-25 22:58:09,223.223 INFO    ] 200
[2026-10-25 22:58:09,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:09,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:09,280.280 INFO    ] No update needed
[2026-10-25 22:58:09,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 22:58:09,320.320 INFO    ] 200
[2026-10-25 22:58:09,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:09,363.363 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:58:09,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:09,424.424 INFO    ] No camera update needed
[2026-10-25 22:58:09,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:58:09,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:58:09,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:58:09,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:11,479.479 INFO    ] ================================================
[2026-10-25 22:58:11,495.495 INFO    ] Launching Daemon at Sun Oct 25 22:58:11 IST 2026
[2026-10-25 22:58:11,505.505 INFO    ] ================================================
[2026-10-25 22:58:12,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:12
[2026-10-25 22:58:12,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:12,933.933 INFO    ] Initializing speech engine...
[2026-10-25 22:58:12,941.941 INFO    ] 2026-10-25 22:58:12
[2026-10-25 22:58:13,240.240 INFO    ] 2026-10-25 22:58:13
[2026-10-25 22:58:13,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:13,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:13,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:13,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:13,664.664 INFO    ] time= 25/10/2026 22:58:13
[2026-10-25 22:58:13,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:13,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:13,749.749 INFO    ] No existing commands found in stream
[2026-10-25 22:58:18,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:58:18,765.765 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-25 22:58:19,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:58:19,706.706 INFO    ] Checking for system updates...
[2026-10-25 22:58:19,742.742 INFO    ] 200
[2026-10-25 22:58:19,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:19,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:19,827.827 INFO    ] No update needed
[2026-10-25 22:58:19,829.829 INFO    ] Checking for camera pi updates...
[2026-10-25 22:58:19,863.863 INFO    ] 200
[2026-10-25 22:58:19,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:19,911.911 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:58:19,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:19,961.961 INFO    ] No camera update needed
[2026-10-25 22:58:19,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:58:19,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:58:19,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:58:19,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:22,017.017 INFO    ] ================================================
[2026-10-25 22:58:22,032.032 INFO    ] Launching Daemon at Sun Oct 25 22:58:22 IST 2026
[2026-10-25 22:58:22,042.042 INFO    ] ================================================
[2026-10-25 22:58:22,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:22
[2026-10-25 22:58:23,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:23,478.478 INFO    ] Initializing speech engine...
[2026-10-25 22:58:23,485.485 INFO    ] 2026-10-25 22:58:23
[2026-10-25 22:58:23,788.788 INFO    ] 2026-10-25 22:58:23
[2026-10-25 22:58:23,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:24,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:24,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:24,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:24,185.185 INFO    ] time= 25/10/2026 22:58:24
[2026-10-25 22:58:24,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:24,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:24,299.299 INFO    ] No existing commands found in stream
[2026-10-25 22:58:29,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:58:29,315.315 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-25 22:58:30,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 22:58:30,744.744 INFO    ] Checking for system updates...
[2026-10-25 22:58:30,780.780 INFO    ] 200
[2026-10-25 22:58:30,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:30,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:58:30,837.837 INFO    ] No update needed
[2026-10-25 22:58:30,840.840 INFO    ] Checking for camera pi updates...
[2026-10-25 22:58:30,878.878 INFO    ] 200
[2026-10-25 22:58:30,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:30,921.921 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:58:30,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:58:30,974.974 INFO    ] No camera update needed
[2026-10-25 22:58:30,977.977 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:58:30,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:58:30,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:58:30,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:33,031.031 INFO    ] ================================================
[2026-10-25 22:58:33,046.046 INFO    ] Launching Daemon at Sun Oct 25 22:58:33 IST 2026
[2026-10-25 22:58:33,057.057 INFO    ] ================================================
[2026-10-25 22:58:33,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:33
[2026-10-25 22:58:34,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:34,694.694 INFO    ] Initializing speech engine...
[2026-10-25 22:58:34,701.701 INFO    ] 2026-10-25 22:58:34
[2026-10-25 22:58:34,994.994 INFO    ] 2026-10-25 22:58:34
[2026-10-25 22:58:35,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:35,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:35,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:35,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:35,533.533 INFO    ] time= 25/10/2026 22:58:35
[2026-10-25 22:58:35,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:35,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:35,688.688 INFO    ] No existing commands found in stream
[2026-10-25 22:58:40,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:58:40,706.706 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-25 22:58:43,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:58:43,178.178 INFO    ] Checking for system updates...
[2026-10-25 22:58:43,216.216 INFO    ] 200
[2026-10-25 22:58:43,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:43,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:43,277.277 INFO    ] No update needed
[2026-10-25 22:58:43,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 22:58:43,315.315 INFO    ] 200
[2026-10-25 22:58:43,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:43,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:58:43,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:58:43,413.413 INFO    ] No camera update needed
[2026-10-25 22:58:43,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:58:43,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:58:43,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:58:43,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:45,471.471 INFO    ] ================================================
[2026-10-25 22:58:45,486.486 INFO    ] Launching Daemon at Sun Oct 25 22:58:45 IST 2026
[2026-10-25 22:58:45,496.496 INFO    ] ================================================
[2026-10-25 22:58:46,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:46
[2026-10-25 22:58:46,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:46,909.909 INFO    ] Initializing speech engine...
[2026-10-25 22:58:46,932.932 INFO    ] 2026-10-25 22:58:46
[2026-10-25 22:58:47,188.188 INFO    ] 2026-10-25 22:58:47
[2026-10-25 22:58:47,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:47,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:47,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:47,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:47,673.673 INFO    ] time= 25/10/2026 22:58:47
[2026-10-25 22:58:47,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:47,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:47,818.818 INFO    ] No existing commands found in stream
[2026-10-25 22:58:52,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:58:52,833.833 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 22:58:54,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:58:54,744.744 INFO    ] Checking for system updates...
[2026-10-25 22:58:54,780.780 INFO    ] 200
[2026-10-25 22:58:54,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:54,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:58:54,842.842 INFO    ] No update needed
[2026-10-25 22:58:54,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 22:58:54,883.883 INFO    ] 200
[2026-10-25 22:58:54,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:58:54,929.929 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:58:54,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:58:54,982.982 INFO    ] No camera update needed
[2026-10-25 22:58:54,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:58:54,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:58:54,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:58:54,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:58:57,038.038 INFO    ] ================================================
[2026-10-25 22:58:57,054.054 INFO    ] Launching Daemon at Sun Oct 25 22:58:57 IST 2026
[2026-10-25 22:58:57,065.065 INFO    ] ================================================
[2026-10-25 22:58:57,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:58:57
[2026-10-25 22:58:58,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:58:58,515.515 INFO    ] Initializing speech engine...
[2026-10-25 22:58:58,522.522 INFO    ] 2026-10-25 22:58:58
[2026-10-25 22:58:58,782.782 INFO    ] 2026-10-25 22:58:58
[2026-10-25 22:58:58,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:58:59,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:58:59,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:58:59,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:58:59,234.234 INFO    ] time= 25/10/2026 22:58:59
[2026-10-25 22:58:59,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:58:59,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:58:59,388.388 INFO    ] No existing commands found in stream
[2026-10-25 22:59:04,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:59:04,403.403 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-25 22:59:05,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 22:59:05,275.275 INFO    ] Checking for system updates...
[2026-10-25 22:59:05,311.311 INFO    ] 200
[2026-10-25 22:59:05,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:05,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:05,377.377 INFO    ] No update needed
[2026-10-25 22:59:05,379.379 INFO    ] Checking for camera pi updates...
[2026-10-25 22:59:05,413.413 INFO    ] 200
[2026-10-25 22:59:05,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:05,460.460 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:59:05,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:05,510.510 INFO    ] No camera update needed
[2026-10-25 22:59:05,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:59:05,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:59:05,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:59:05,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:59:07,564.564 INFO    ] ================================================
[2026-10-25 22:59:07,580.580 INFO    ] Launching Daemon at Sun Oct 25 22:59:07 IST 2026
[2026-10-25 22:59:07,591.591 INFO    ] ================================================
[2026-10-25 22:59:08,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:59:08
[2026-10-25 22:59:08,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:59:09,227.227 INFO    ] Initializing speech engine...
[2026-10-25 22:59:09,235.235 INFO    ] 2026-10-25 22:59:09
[2026-10-25 22:59:09,525.525 INFO    ] 2026-10-25 22:59:09
[2026-10-25 22:59:09,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:59:09,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:59:09,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:59:09,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:59:10,001.001 INFO    ] time= 25/10/2026 22:59:09
[2026-10-25 22:59:10,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:59:10,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:59:10,137.137 INFO    ] No existing commands found in stream
[2026-10-25 22:59:15,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:59:15,153.153 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 22:59:17,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 22:59:17,005.005 INFO    ] Checking for system updates...
[2026-10-25 22:59:17,044.044 INFO    ] 200
[2026-10-25 22:59:17,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:17,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:17,105.105 INFO    ] No update needed
[2026-10-25 22:59:17,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 22:59:17,142.142 INFO    ] 200
[2026-10-25 22:59:17,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:17,189.189 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:59:17,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:17,245.245 INFO    ] No camera update needed
[2026-10-25 22:59:17,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:59:17,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:59:17,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:59:17,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:59:19,301.301 INFO    ] ================================================
[2026-10-25 22:59:19,316.316 INFO    ] Launching Daemon at Sun Oct 25 22:59:19 IST 2026
[2026-10-25 22:59:19,326.326 INFO    ] ================================================
[2026-10-25 22:59:19,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:59:19
[2026-10-25 22:59:20,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:59:20,785.785 INFO    ] Initializing speech engine...
[2026-10-25 22:59:20,799.799 INFO    ] 2026-10-25 22:59:20
[2026-10-25 22:59:21,088.088 INFO    ] 2026-10-25 22:59:21
[2026-10-25 22:59:21,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:59:21,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:59:21,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:59:21,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:59:21,472.472 INFO    ] time= 25/10/2026 22:59:21
[2026-10-25 22:59:21,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:59:21,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:59:21,598.598 INFO    ] No existing commands found in stream
[2026-10-25 22:59:26,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:59:26,614.614 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 22:59:29,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 22:59:29,671.671 INFO    ] Checking for system updates...
[2026-10-25 22:59:29,706.706 INFO    ] 200
[2026-10-25 22:59:29,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:29,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:29,772.772 INFO    ] No update needed
[2026-10-25 22:59:29,774.774 INFO    ] Checking for camera pi updates...
[2026-10-25 22:59:29,809.809 INFO    ] 200
[2026-10-25 22:59:29,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:29,862.862 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:59:29,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:29,914.914 INFO    ] No camera update needed
[2026-10-25 22:59:29,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:59:29,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:59:29,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:59:29,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:59:31,971.971 INFO    ] ================================================
[2026-10-25 22:59:31,987.987 INFO    ] Launching Daemon at Sun Oct 25 22:59:31 IST 2026
[2026-10-25 22:59:32,998.998 INFO    ] ================================================
[2026-10-25 22:59:32,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:59:32
[2026-10-25 22:59:33,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:59:33,570.570 INFO    ] Initializing speech engine...
[2026-10-25 22:59:33,577.577 INFO    ] 2026-10-25 22:59:33
[2026-10-25 22:59:33,886.886 INFO    ] 2026-10-25 22:59:33
[2026-10-25 22:59:33,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:59:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:59:34,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:59:34,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:59:34,403.403 INFO    ] time= 25/10/2026 22:59:34
[2026-10-25 22:59:34,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:59:34,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:59:34,540.540 INFO    ] No existing commands found in stream
[2026-10-25 22:59:39,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:59:39,571.571 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-25 22:59:43,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 22:59:43,891.891 INFO    ] Checking for system updates...
[2026-10-25 22:59:43,928.928 INFO    ] 200
[2026-10-25 22:59:43,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:43,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:43,988.988 INFO    ] No update needed
[2026-10-25 22:59:43,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 22:59:44,030.030 INFO    ] 200
[2026-10-25 22:59:44,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:44,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:59:44,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 22:59:44,239.239 INFO    ] No camera update needed
[2026-10-25 22:59:44,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:59:44,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:59:44,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:59:44,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:59:46,297.297 INFO    ] ================================================
[2026-10-25 22:59:46,312.312 INFO    ] Launching Daemon at Sun Oct 25 22:59:46 IST 2026
[2026-10-25 22:59:46,323.323 INFO    ] ================================================
[2026-10-25 22:59:46,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 22:59:46
[2026-10-25 22:59:47,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 22:59:47,768.768 INFO    ] Initializing speech engine...
[2026-10-25 22:59:47,775.775 INFO    ] 2026-10-25 22:59:47
[2026-10-25 22:59:48,072.072 INFO    ] 2026-10-25 22:59:48
[2026-10-25 22:59:48,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 22:59:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 22:59:48,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 22:59:48,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 22:59:48,458.458 INFO    ] time= 25/10/2026 22:59:48
[2026-10-25 22:59:48,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 22:59:48,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 22:59:48,585.585 INFO    ] No existing commands found in stream
[2026-10-25 22:59:53,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 22:59:53,600.600 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-25 22:59:57,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 22:59:57,144.144 INFO    ] Checking for system updates...
[2026-10-25 22:59:57,180.180 INFO    ] 200
[2026-10-25 22:59:57,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:57,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:59:57,239.239 INFO    ] No update needed
[2026-10-25 22:59:57,242.242 INFO    ] Checking for camera pi updates...
[2026-10-25 22:59:57,276.276 INFO    ] 200
[2026-10-25 22:59:57,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 22:59:57,320.320 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 22:59:57,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 22:59:57,377.377 INFO    ] No camera update needed
[2026-10-25 22:59:57,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-25 22:59:57,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 22:59:57,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 22:59:57,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 22:59:59,432.432 INFO    ] ================================================
[2026-10-25 22:59:59,448.448 INFO    ] Launching Daemon at Sun Oct 25 22:59:59 IST 2026
[2026-10-25 22:59:59,458.458 INFO    ] ================================================
[2026-10-25 23:00:00,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:00:00
[2026-10-25 23:00:00,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:00:00,903.903 INFO    ] Initializing speech engine...
[2026-10-25 23:00:00,922.922 INFO    ] 2026-10-25 23:00:00
[2026-10-25 23:00:01,214.214 INFO    ] 2026-10-25 23:00:01
[2026-10-25 23:00:01,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:00:01,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:00:01,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:00:01,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:00:01,543.543 INFO    ] time= 25/10/2026 23:00:01
[2026-10-25 23:00:01,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:00:01,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:00:01,673.673 INFO    ] No existing commands found in stream
[2026-10-25 23:00:06,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:00:06,789.789 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 23:00:10,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:00:10,408.408 INFO    ] Checking for system updates...
[2026-10-25 23:00:10,443.443 INFO    ] 200
[2026-10-25 23:00:10,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:10,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:10,502.502 INFO    ] No update needed
[2026-10-25 23:00:10,504.504 INFO    ] Checking for camera pi updates...
[2026-10-25 23:00:10,537.537 INFO    ] 200
[2026-10-25 23:00:10,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:10,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:00:10,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:10,632.632 INFO    ] No camera update needed
[2026-10-25 23:00:10,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:00:10,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:00:10,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:00:10,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:00:12,687.687 INFO    ] ================================================
[2026-10-25 23:00:12,703.703 INFO    ] Launching Daemon at Sun Oct 25 23:00:12 IST 2026
[2026-10-25 23:00:12,714.714 INFO    ] ================================================
[2026-10-25 23:00:13,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:00:13
[2026-10-25 23:00:13,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:00:14,296.296 INFO    ] Initializing speech engine...
[2026-10-25 23:00:14,308.308 INFO    ] 2026-10-25 23:00:14
[2026-10-25 23:00:14,596.596 INFO    ] 2026-10-25 23:00:14
[2026-10-25 23:00:14,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:00:14,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:00:14,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:00:15,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:00:15,083.083 INFO    ] time= 25/10/2026 23:00:15
[2026-10-25 23:00:15,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:00:15,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:00:15,289.289 INFO    ] No existing commands found in stream
[2026-10-25 23:00:20,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:00:20,318.318 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 23:00:24,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:00:24,529.529 INFO    ] Checking for system updates...
[2026-10-25 23:00:24,565.565 INFO    ] 200
[2026-10-25 23:00:24,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:24,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:24,626.626 INFO    ] No update needed
[2026-10-25 23:00:24,636.636 INFO    ] Checking for camera pi updates...
[2026-10-25 23:00:24,672.672 INFO    ] 200
[2026-10-25 23:00:24,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:24,718.718 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:00:24,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:24,769.769 INFO    ] No camera update needed
[2026-10-25 23:00:24,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:00:24,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:00:24,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:00:24,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:00:26,832.832 INFO    ] ================================================
[2026-10-25 23:00:26,847.847 INFO    ] Launching Daemon at Sun Oct 25 23:00:26 IST 2026
[2026-10-25 23:00:26,858.858 INFO    ] ================================================
[2026-10-25 23:00:27,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:00:27
[2026-10-25 23:00:28,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:00:28,256.256 INFO    ] Initializing speech engine...
[2026-10-25 23:00:28,262.262 INFO    ] 2026-10-25 23:00:28
[2026-10-25 23:00:28,553.553 INFO    ] 2026-10-25 23:00:28
[2026-10-25 23:00:28,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:00:28,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:00:28,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:00:28,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:00:28,965.965 INFO    ] time= 25/10/2026 23:00:28
[2026-10-25 23:00:28,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:00:28,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:00:29,048.048 INFO    ] No existing commands found in stream
[2026-10-25 23:00:34,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:00:34,064.064 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-25 23:00:35,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:00:35,657.657 INFO    ] Checking for system updates...
[2026-10-25 23:00:35,693.693 INFO    ] 200
[2026-10-25 23:00:35,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:35,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:35,755.755 INFO    ] No update needed
[2026-10-25 23:00:35,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 23:00:35,795.795 INFO    ] 200
[2026-10-25 23:00:35,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:35,851.851 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:00:35,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:00:35,912.912 INFO    ] No camera update needed
[2026-10-25 23:00:35,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:00:35,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:00:35,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:00:35,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:00:37,968.968 INFO    ] ================================================
[2026-10-25 23:00:37,984.984 INFO    ] Launching Daemon at Sun Oct 25 23:00:37 IST 2026
[2026-10-25 23:00:38,995.995 INFO    ] ================================================
[2026-10-25 23:00:38,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:00:38
[2026-10-25 23:00:39,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:00:39,452.452 INFO    ] Initializing speech engine...
[2026-10-25 23:00:39,458.458 INFO    ] 2026-10-25 23:00:39
[2026-10-25 23:00:39,720.720 INFO    ] 2026-10-25 23:00:39
[2026-10-25 23:00:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:00:40,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:00:40,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:00:40,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:00:40,170.170 INFO    ] time= 25/10/2026 23:00:40
[2026-10-25 23:00:40,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:00:40,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:00:40,326.326 INFO    ] No existing commands found in stream
[2026-10-25 23:00:45,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:00:45,341.341 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 23:00:49,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:00:49,173.173 INFO    ] Checking for system updates...
[2026-10-25 23:00:49,210.210 INFO    ] 200
[2026-10-25 23:00:49,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:49,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:00:49,268.268 INFO    ] No update needed
[2026-10-25 23:00:49,270.270 INFO    ] Checking for camera pi updates...
[2026-10-25 23:00:49,303.303 INFO    ] 200
[2026-10-25 23:00:49,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:00:49,346.346 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:00:49,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:00:49,410.410 INFO    ] No camera update needed
[2026-10-25 23:00:49,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:00:49,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:00:49,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:00:49,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:00:51,464.464 INFO    ] ================================================
[2026-10-25 23:00:51,479.479 INFO    ] Launching Daemon at Sun Oct 25 23:00:51 IST 2026
[2026-10-25 23:00:51,489.489 INFO    ] ================================================
[2026-10-25 23:00:52,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:00:52
[2026-10-25 23:00:52,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:00:53,099.099 INFO    ] Initializing speech engine...
[2026-10-25 23:00:53,114.114 INFO    ] 2026-10-25 23:00:53
[2026-10-25 23:00:53,425.425 INFO    ] 2026-10-25 23:00:53
[2026-10-25 23:00:53,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:00:53,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:00:53,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:00:53,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:00:53,863.863 INFO    ] time= 25/10/2026 23:00:53
[2026-10-25 23:00:53,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:00:53,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:00:54,012.012 INFO    ] No existing commands found in stream
[2026-10-25 23:00:59,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:00:59,028.028 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 23:01:01,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:01:01,899.899 INFO    ] Checking for system updates...
[2026-10-25 23:01:01,952.952 INFO    ] 200
[2026-10-25 23:01:01,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:02,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:01:02,020.020 INFO    ] No update needed
[2026-10-25 23:01:02,023.023 INFO    ] Checking for camera pi updates...
[2026-10-25 23:01:02,062.062 INFO    ] 200
[2026-10-25 23:01:02,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:02,113.113 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:01:02,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:01:02,153.153 INFO    ] No camera update needed
[2026-10-25 23:01:02,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:01:02,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:01:02,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:01:02,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:01:04,213.213 INFO    ] ================================================
[2026-10-25 23:01:04,228.228 INFO    ] Launching Daemon at Sun Oct 25 23:01:04 IST 2026
[2026-10-25 23:01:04,238.238 INFO    ] ================================================
[2026-10-25 23:01:04,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:01:04
[2026-10-25 23:01:05,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:01:05,834.834 INFO    ] Initializing speech engine...
[2026-10-25 23:01:05,846.846 INFO    ] 2026-10-25 23:01:05
[2026-10-25 23:01:06,150.150 INFO    ] 2026-10-25 23:01:06
[2026-10-25 23:01:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:01:06,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:01:06,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:01:06,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:01:06,601.601 INFO    ] time= 25/10/2026 23:01:06
[2026-10-25 23:01:06,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:01:06,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:01:06,738.738 INFO    ] No existing commands found in stream
[2026-10-25 23:01:11,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:01:11,754.754 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-25 23:01:13,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:01:13,745.745 INFO    ] Checking for system updates...
[2026-10-25 23:01:13,784.784 INFO    ] 200
[2026-10-25 23:01:13,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:13,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:13,852.852 INFO    ] No update needed
[2026-10-25 23:01:13,855.855 INFO    ] Checking for camera pi updates...
[2026-10-25 23:01:13,893.893 INFO    ] 200
[2026-10-25 23:01:13,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:13,939.939 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:01:13,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:14,001.001 INFO    ] No camera update needed
[2026-10-25 23:01:14,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:01:14,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:01:14,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:01:14,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:01:16,059.059 INFO    ] ================================================
[2026-10-25 23:01:16,074.074 INFO    ] Launching Daemon at Sun Oct 25 23:01:16 IST 2026
[2026-10-25 23:01:16,085.085 INFO    ] ================================================
[2026-10-25 23:01:16,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:01:16
[2026-10-25 23:01:17,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:01:17,537.537 INFO    ] Initializing speech engine...
[2026-10-25 23:01:17,545.545 INFO    ] 2026-10-25 23:01:17
[2026-10-25 23:01:17,804.804 INFO    ] 2026-10-25 23:01:17
[2026-10-25 23:01:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:01:18,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:01:18,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:01:18,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:01:18,271.271 INFO    ] time= 25/10/2026 23:01:18
[2026-10-25 23:01:18,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:01:18,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:01:18,412.412 INFO    ] No existing commands found in stream
[2026-10-25 23:01:23,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:01:23,426.426 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 23:01:27,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:01:27,267.267 INFO    ] Checking for system updates...
[2026-10-25 23:01:27,303.303 INFO    ] 200
[2026-10-25 23:01:27,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:27,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:27,360.360 INFO    ] No update needed
[2026-10-25 23:01:27,363.363 INFO    ] Checking for camera pi updates...
[2026-10-25 23:01:27,396.396 INFO    ] 200
[2026-10-25 23:01:27,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:27,440.440 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:01:27,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:27,504.504 INFO    ] No camera update needed
[2026-10-25 23:01:27,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:01:27,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:01:27,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:01:27,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:01:29,560.560 INFO    ] ================================================
[2026-10-25 23:01:29,575.575 INFO    ] Launching Daemon at Sun Oct 25 23:01:29 IST 2026
[2026-10-25 23:01:29,586.586 INFO    ] ================================================
[2026-10-25 23:01:30,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:01:30
[2026-10-25 23:01:30,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:01:31,142.142 INFO    ] Initializing speech engine...
[2026-10-25 23:01:31,176.176 INFO    ] 2026-10-25 23:01:31
[2026-10-25 23:01:31,471.471 INFO    ] 2026-10-25 23:01:31
[2026-10-25 23:01:31,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:01:31,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:01:31,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:01:31,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:01:31,968.968 INFO    ] time= 25/10/2026 23:01:31
[2026-10-25 23:01:32,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:01:32,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:01:32,165.165 INFO    ] No existing commands found in stream
[2026-10-25 23:01:37,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:01:37,179.179 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-25 23:01:43,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:01:43,209.209 INFO    ] Checking for system updates...
[2026-10-25 23:01:43,253.253 INFO    ] 200
[2026-10-25 23:01:43,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:43,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:01:43,318.318 INFO    ] No update needed
[2026-10-25 23:01:43,321.321 INFO    ] Checking for camera pi updates...
[2026-10-25 23:01:43,356.356 INFO    ] 200
[2026-10-25 23:01:43,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:43,410.410 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:01:43,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:01:43,483.483 INFO    ] No camera update needed
[2026-10-25 23:01:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:01:43,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:01:43,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:01:43,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:01:45,542.542 INFO    ] ================================================
[2026-10-25 23:01:45,557.557 INFO    ] Launching Daemon at Sun Oct 25 23:01:45 IST 2026
[2026-10-25 23:01:45,567.567 INFO    ] ================================================
[2026-10-25 23:01:46,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:01:46
[2026-10-25 23:01:46,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:01:47,004.004 INFO    ] Initializing speech engine...
[2026-10-25 23:01:47,026.026 INFO    ] 2026-10-25 23:01:47
[2026-10-25 23:01:47,312.312 INFO    ] 2026-10-25 23:01:47
[2026-10-25 23:01:47,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:01:47,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:01:47,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:01:47,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:01:47,718.718 INFO    ] time= 25/10/2026 23:01:47
[2026-10-25 23:01:47,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:01:47,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:01:47,802.802 INFO    ] No existing commands found in stream
[2026-10-25 23:01:52,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:01:52,816.816 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-25 23:01:56,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:01:56,656.656 INFO    ] Checking for system updates...
[2026-10-25 23:01:56,693.693 INFO    ] 200
[2026-10-25 23:01:56,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:56,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:56,756.756 INFO    ] No update needed
[2026-10-25 23:01:56,758.758 INFO    ] Checking for camera pi updates...
[2026-10-25 23:01:56,792.792 INFO    ] 200
[2026-10-25 23:01:56,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:01:56,835.835 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:01:57,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:01:57,004.004 INFO    ] No camera update needed
[2026-10-25 23:01:57,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:01:57,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:01:57,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:01:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:01:59,058.058 INFO    ] ================================================
[2026-10-25 23:01:59,073.073 INFO    ] Launching Daemon at Sun Oct 25 23:01:59 IST 2026
[2026-10-25 23:01:59,085.085 INFO    ] ================================================
[2026-10-25 23:01:59,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:01:59
[2026-10-25 23:02:00,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:02:00,536.536 INFO    ] Initializing speech engine...
[2026-10-25 23:02:00,544.544 INFO    ] 2026-10-25 23:02:00
[2026-10-25 23:02:00,787.787 INFO    ] 2026-10-25 23:02:00
[2026-10-25 23:02:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:02:00,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:02:01,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:02:01,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:02:01,187.187 INFO    ] time= 25/10/2026 23:02:01
[2026-10-25 23:02:01,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:02:01,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:02:01,312.312 INFO    ] No existing commands found in stream
[2026-10-25 23:02:06,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:02:06,325.325 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-25 23:02:06,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:02:06,868.868 INFO    ] Checking for system updates...
[2026-10-25 23:02:06,910.910 INFO    ] 200
[2026-10-25 23:02:06,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:06,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:02:06,970.970 INFO    ] No update needed
[2026-10-25 23:02:06,973.973 INFO    ] Checking for camera pi updates...
[2026-10-25 23:02:07,008.008 INFO    ] 200
[2026-10-25 23:02:07,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:07,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:02:07,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:02:07,112.112 INFO    ] No camera update needed
[2026-10-25 23:02:07,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:02:07,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:02:07,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:02:07,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:02:09,170.170 INFO    ] ================================================
[2026-10-25 23:02:09,185.185 INFO    ] Launching Daemon at Sun Oct 25 23:02:09 IST 2026
[2026-10-25 23:02:09,196.196 INFO    ] ================================================
[2026-10-25 23:02:09,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:02:09
[2026-10-25 23:02:10,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:02:10,669.669 INFO    ] Initializing speech engine...
[2026-10-25 23:02:10,686.686 INFO    ] 2026-10-25 23:02:10
[2026-10-25 23:02:10,942.942 INFO    ] 2026-10-25 23:02:10
[2026-10-25 23:02:10,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:02:13,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:02:13,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:02:13,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:02:13,154.154 INFO    ] time= 25/10/2026 23:02:13
[2026-10-25 23:02:13,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:02:13,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:02:13,234.234 INFO    ] No existing commands found in stream
[2026-10-25 23:02:18,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:02:18,247.247 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-25 23:02:21,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:02:21,052.052 INFO    ] Checking for system updates...
[2026-10-25 23:02:21,089.089 INFO    ] 200
[2026-10-25 23:02:21,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:21,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:02:21,155.155 INFO    ] No update needed
[2026-10-25 23:02:21,158.158 INFO    ] Checking for camera pi updates...
[2026-10-25 23:02:21,194.194 INFO    ] 200
[2026-10-25 23:02:21,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:21,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:02:21,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:02:21,303.303 INFO    ] No camera update needed
[2026-10-25 23:02:21,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:02:21,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:02:21,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:02:21,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:02:23,371.371 INFO    ] ================================================
[2026-10-25 23:02:23,386.386 INFO    ] Launching Daemon at Sun Oct 25 23:02:23 IST 2026
[2026-10-25 23:02:23,397.397 INFO    ] ================================================
[2026-10-25 23:02:23,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:02:23
[2026-10-25 23:02:24,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:02:24,820.820 INFO    ] Initializing speech engine...
[2026-10-25 23:02:24,836.836 INFO    ] 2026-10-25 23:02:24
[2026-10-25 23:02:25,116.116 INFO    ] 2026-10-25 23:02:25
[2026-10-25 23:02:25,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:02:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:02:25,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:02:25,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:02:25,488.488 INFO    ] time= 25/10/2026 23:02:25
[2026-10-25 23:02:25,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:02:25,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:02:25,611.611 INFO    ] No existing commands found in stream
[2026-10-25 23:02:30,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:02:30,625.625 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-25 23:02:35,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:02:35,002.002 INFO    ] Checking for system updates...
[2026-10-25 23:02:35,042.042 INFO    ] 200
[2026-10-25 23:02:35,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:35,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:02:35,100.100 INFO    ] No update needed
[2026-10-25 23:02:35,102.102 INFO    ] Checking for camera pi updates...
[2026-10-25 23:02:35,142.142 INFO    ] 200
[2026-10-25 23:02:35,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:35,185.185 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:02:35,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:02:35,239.239 INFO    ] No camera update needed
[2026-10-25 23:02:35,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:02:35,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:02:35,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:02:35,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:02:37,293.293 INFO    ] ================================================
[2026-10-25 23:02:37,308.308 INFO    ] Launching Daemon at Sun Oct 25 23:02:37 IST 2026
[2026-10-25 23:02:37,319.319 INFO    ] ================================================
[2026-10-25 23:02:37,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:02:37
[2026-10-25 23:02:38,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:02:38,718.718 INFO    ] Initializing speech engine...
[2026-10-25 23:02:38,724.724 INFO    ] 2026-10-25 23:02:38
[2026-10-25 23:02:39,015.015 INFO    ] 2026-10-25 23:02:38
[2026-10-25 23:02:39,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:02:39,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:02:39,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:02:39,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:02:39,386.386 INFO    ] time= 25/10/2026 23:02:39
[2026-10-25 23:02:39,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:02:39,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:02:39,513.513 INFO    ] No existing commands found in stream
[2026-10-25 23:02:44,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:02:44,527.527 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-25 23:02:48,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:02:48,549.549 INFO    ] Checking for system updates...
[2026-10-25 23:02:48,589.589 INFO    ] 200
[2026-10-25 23:02:48,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:48,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:02:48,646.646 INFO    ] No update needed
[2026-10-25 23:02:48,649.649 INFO    ] Checking for camera pi updates...
[2026-10-25 23:02:48,682.682 INFO    ] 200
[2026-10-25 23:02:48,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:02:48,726.726 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:02:48,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:02:48,779.779 INFO    ] No camera update needed
[2026-10-25 23:02:48,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:02:48,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:02:48,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:02:48,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:02:50,833.833 INFO    ] ================================================
[2026-10-25 23:02:50,848.848 INFO    ] Launching Daemon at Sun Oct 25 23:02:50 IST 2026
[2026-10-25 23:02:50,858.858 INFO    ] ================================================
[2026-10-25 23:02:51,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:02:51
[2026-10-25 23:02:52,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:02:52,324.324 INFO    ] Initializing speech engine...
[2026-10-25 23:02:52,329.329 INFO    ] 2026-10-25 23:02:52
[2026-10-25 23:02:52,576.576 INFO    ] 2026-10-25 23:02:52
[2026-10-25 23:02:52,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:02:52,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:02:52,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:02:53,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:02:53,071.071 INFO    ] time= 25/10/2026 23:02:53
[2026-10-25 23:02:53,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:02:53,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:02:53,261.261 INFO    ] No existing commands found in stream
[2026-10-25 23:02:58,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:02:58,294.294 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 23:03:00,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:03:00,816.816 INFO    ] Checking for system updates...
[2026-10-25 23:03:00,853.853 INFO    ] 200
[2026-10-25 23:03:00,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:00,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:00,912.912 INFO    ] No update needed
[2026-10-25 23:03:00,914.914 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:00,948.948 INFO    ] 200
[2026-10-25 23:03:00,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:00,995.995 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:01,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:01,066.066 INFO    ] No camera update needed
[2026-10-25 23:03:01,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:01,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:01,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:01,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:03,133.133 INFO    ] ================================================
[2026-10-25 23:03:03,148.148 INFO    ] Launching Daemon at Sun Oct 25 23:03:03 IST 2026
[2026-10-25 23:03:03,161.161 INFO    ] ================================================
[2026-10-25 23:03:03,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:03
[2026-10-25 23:03:04,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:03:04,600.600 INFO    ] Initializing speech engine...
[2026-10-25 23:03:04,609.609 INFO    ] 2026-10-25 23:03:04
[2026-10-25 23:03:04,860.860 INFO    ] 2026-10-25 23:03:04
[2026-10-25 23:03:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:03:05,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:03:05,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:03:05,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:03:05,330.330 INFO    ] time= 25/10/2026 23:03:05
[2026-10-25 23:03:05,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:03:05,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:03:05,493.493 INFO    ] No existing commands found in stream
[2026-10-25 23:03:10,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:03:10,508.508 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 23:03:13,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:03:13,564.564 INFO    ] Checking for system updates...
[2026-10-25 23:03:13,600.600 INFO    ] 200
[2026-10-25 23:03:13,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:13,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:13,664.664 INFO    ] No update needed
[2026-10-25 23:03:13,667.667 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:13,700.700 INFO    ] 200
[2026-10-25 23:03:13,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:13,748.748 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:13,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:13,811.811 INFO    ] No camera update needed
[2026-10-25 23:03:13,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:13,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:13,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:13,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:15,868.868 INFO    ] ================================================
[2026-10-25 23:03:15,883.883 INFO    ] Launching Daemon at Sun Oct 25 23:03:15 IST 2026
[2026-10-25 23:03:15,893.893 INFO    ] ================================================
[2026-10-25 23:03:16,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:16
[2026-10-25 23:03:17,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:03:17,496.496 INFO    ] Initializing speech engine...
[2026-10-25 23:03:17,504.504 INFO    ] 2026-10-25 23:03:17
[2026-10-25 23:03:17,779.779 INFO    ] 2026-10-25 23:03:17
[2026-10-25 23:03:17,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:03:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:03:18,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:03:18,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:03:18,339.339 INFO    ] time= 25/10/2026 23:03:18
[2026-10-25 23:03:18,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:03:18,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:03:18,488.488 INFO    ] No existing commands found in stream
[2026-10-25 23:03:23,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:03:23,511.511 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-25 23:03:24,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:03:24,433.433 INFO    ] Checking for system updates...
[2026-10-25 23:03:24,470.470 INFO    ] 200
[2026-10-25 23:03:24,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:24,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:24,529.529 INFO    ] No update needed
[2026-10-25 23:03:24,532.532 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:24,567.567 INFO    ] 200
[2026-10-25 23:03:24,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:24,614.614 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:24,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:24,666.666 INFO    ] No camera update needed
[2026-10-25 23:03:24,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:24,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:24,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:24,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:26,720.720 INFO    ] ================================================
[2026-10-25 23:03:26,735.735 INFO    ] Launching Daemon at Sun Oct 25 23:03:26 IST 2026
[2026-10-25 23:03:26,746.746 INFO    ] ================================================
[2026-10-25 23:03:27,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:27
[2026-10-25 23:03:28,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:03:28,366.366 INFO    ] Initializing speech engine...
[2026-10-25 23:03:28,374.374 INFO    ] 2026-10-25 23:03:28
[2026-10-25 23:03:28,659.659 INFO    ] 2026-10-25 23:03:28
[2026-10-25 23:03:28,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:03:28,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:03:28,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:03:29,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:03:29,211.211 INFO    ] time= 25/10/2026 23:03:29
[2026-10-25 23:03:29,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:03:29,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:03:29,337.337 INFO    ] No existing commands found in stream
[2026-10-25 23:03:34,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:03:34,379.379 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-25 23:03:34,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:03:34,898.898 INFO    ] Checking for system updates...
[2026-10-25 23:03:34,935.935 INFO    ] 200
[2026-10-25 23:03:34,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:34,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:34,994.994 INFO    ] No update needed
[2026-10-25 23:03:34,996.996 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:35,031.031 INFO    ] 200
[2026-10-25 23:03:35,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:35,075.075 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:35,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:35,131.131 INFO    ] No camera update needed
[2026-10-25 23:03:35,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:35,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:35,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:35,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:37,186.186 INFO    ] ================================================
[2026-10-25 23:03:37,201.201 INFO    ] Launching Daemon at Sun Oct 25 23:03:37 IST 2026
[2026-10-25 23:03:37,211.211 INFO    ] ================================================
[2026-10-25 23:03:37,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:37
[2026-10-25 23:03:38,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:03:38,734.734 INFO    ] Initializing speech engine...
[2026-10-25 23:03:38,742.742 INFO    ] 2026-10-25 23:03:38
[2026-10-25 23:03:39,055.055 INFO    ] 2026-10-25 23:03:39
[2026-10-25 23:03:39,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:03:39,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:03:39,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:03:39,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:03:39,564.564 INFO    ] time= 25/10/2026 23:03:39
[2026-10-25 23:03:39,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:03:39,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:03:39,720.720 INFO    ] No existing commands found in stream
[2026-10-25 23:03:44,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:03:44,751.751 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 23:03:46,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:03:46,276.276 INFO    ] Checking for system updates...
[2026-10-25 23:03:46,318.318 INFO    ] 200
[2026-10-25 23:03:46,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:46,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:46,378.378 INFO    ] No update needed
[2026-10-25 23:03:46,381.381 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:46,419.419 INFO    ] 200
[2026-10-25 23:03:46,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:46,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:46,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:03:46,513.513 INFO    ] No camera update needed
[2026-10-25 23:03:46,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:46,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:46,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:46,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:48,567.567 INFO    ] ================================================
[2026-10-25 23:03:48,582.582 INFO    ] Launching Daemon at Sun Oct 25 23:03:48 IST 2026
[2026-10-25 23:03:48,593.593 INFO    ] ================================================
[2026-10-25 23:03:49,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:49
[2026-10-25 23:03:49,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:03:50,044.044 INFO    ] Initializing speech engine...
[2026-10-25 23:03:50,060.060 INFO    ] 2026-10-25 23:03:50
[2026-10-25 23:03:50,315.315 INFO    ] 2026-10-25 23:03:50
[2026-10-25 23:03:50,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:03:50,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:03:50,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:03:50,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:03:50,799.799 INFO    ] time= 25/10/2026 23:03:50
[2026-10-25 23:03:50,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:03:50,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:03:50,936.936 INFO    ] No existing commands found in stream
[2026-10-25 23:03:55,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:03:55,951.951 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-25 23:03:56,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:03:56,710.710 INFO    ] Checking for system updates...
[2026-10-25 23:03:56,747.747 INFO    ] 200
[2026-10-25 23:03:56,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:56,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:56,813.813 INFO    ] No update needed
[2026-10-25 23:03:56,816.816 INFO    ] Checking for camera pi updates...
[2026-10-25 23:03:56,850.850 INFO    ] 200
[2026-10-25 23:03:56,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:03:56,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:03:56,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:03:56,947.947 INFO    ] No camera update needed
[2026-10-25 23:03:56,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:03:56,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:03:56,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:03:56,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:03:59,004.004 INFO    ] ================================================
[2026-10-25 23:03:59,019.019 INFO    ] Launching Daemon at Sun Oct 25 23:03:59 IST 2026
[2026-10-25 23:03:59,030.030 INFO    ] ================================================
[2026-10-25 23:03:59,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:03:59
[2026-10-25 23:04:00,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:04:00,486.486 INFO    ] Initializing speech engine...
[2026-10-25 23:04:00,493.493 INFO    ] 2026-10-25 23:04:00
[2026-10-25 23:04:00,752.752 INFO    ] 2026-10-25 23:04:00
[2026-10-25 23:04:00,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:04:01,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:04:01,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:04:01,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:04:01,241.241 INFO    ] time= 25/10/2026 23:04:01
[2026-10-25 23:04:01,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:04:01,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:04:01,346.346 INFO    ] No existing commands found in stream
[2026-10-25 23:04:06,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:04:06,362.362 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-25 23:04:10,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:04:10,274.274 INFO    ] Checking for system updates...
[2026-10-25 23:04:10,311.311 INFO    ] 200
[2026-10-25 23:04:10,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:10,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:04:10,378.378 INFO    ] No update needed
[2026-10-25 23:04:10,380.380 INFO    ] Checking for camera pi updates...
[2026-10-25 23:04:10,418.418 INFO    ] 200
[2026-10-25 23:04:10,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:10,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:04:10,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:04:10,526.526 INFO    ] No camera update needed
[2026-10-25 23:04:10,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:04:10,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:04:10,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:04:10,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:04:12,583.583 INFO    ] ================================================
[2026-10-25 23:04:12,598.598 INFO    ] Launching Daemon at Sun Oct 25 23:04:12 IST 2026
[2026-10-25 23:04:12,608.608 INFO    ] ================================================
[2026-10-25 23:04:13,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:04:13
[2026-10-25 23:04:13,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:04:14,027.027 INFO    ] Initializing speech engine...
[2026-10-25 23:04:14,033.033 INFO    ] 2026-10-25 23:04:14
[2026-10-25 23:04:14,276.276 INFO    ] 2026-10-25 23:04:14
[2026-10-25 23:04:14,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:04:14,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:04:14,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:04:14,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:04:14,652.652 INFO    ] time= 25/10/2026 23:04:14
[2026-10-25 23:04:14,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:04:14,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:04:14,811.811 INFO    ] No existing commands found in stream
[2026-10-25 23:04:19,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:04:19,844.844 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-25 23:04:21,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:04:21,300.300 INFO    ] Checking for system updates...
[2026-10-25 23:04:21,336.336 INFO    ] 200
[2026-10-25 23:04:21,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:21,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:04:21,409.409 INFO    ] No update needed
[2026-10-25 23:04:21,412.412 INFO    ] Checking for camera pi updates...
[2026-10-25 23:04:21,457.457 INFO    ] 200
[2026-10-25 23:04:21,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:21,505.505 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:04:21,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:04:21,570.570 INFO    ] No camera update needed
[2026-10-25 23:04:21,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:04:21,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:04:21,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:04:21,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:04:23,626.626 INFO    ] ================================================
[2026-10-25 23:04:23,642.642 INFO    ] Launching Daemon at Sun Oct 25 23:04:23 IST 2026
[2026-10-25 23:04:23,653.653 INFO    ] ================================================
[2026-10-25 23:04:24,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:04:24
[2026-10-25 23:04:24,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:04:25,073.073 INFO    ] Initializing speech engine...
[2026-10-25 23:04:25,082.082 INFO    ] 2026-10-25 23:04:25
[2026-10-25 23:04:25,332.332 INFO    ] 2026-10-25 23:04:25
[2026-10-25 23:04:25,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:04:25,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:04:25,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:04:25,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:04:25,828.828 INFO    ] time= 25/10/2026 23:04:25
[2026-10-25 23:04:25,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:04:25,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:04:26,029.029 INFO    ] No existing commands found in stream
[2026-10-25 23:04:31,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:04:31,060.060 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 23:04:33,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:04:33,725.725 INFO    ] Checking for system updates...
[2026-10-25 23:04:33,766.766 INFO    ] 200
[2026-10-25 23:04:33,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:33,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:33,825.825 INFO    ] No update needed
[2026-10-25 23:04:33,828.828 INFO    ] Checking for camera pi updates...
[2026-10-25 23:04:33,864.864 INFO    ] 200
[2026-10-25 23:04:33,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:33,908.908 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:04:33,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:33,972.972 INFO    ] No camera update needed
[2026-10-25 23:04:33,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:04:33,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:04:33,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:04:33,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:04:36,033.033 INFO    ] ================================================
[2026-10-25 23:04:36,048.048 INFO    ] Launching Daemon at Sun Oct 25 23:04:36 IST 2026
[2026-10-25 23:04:36,059.059 INFO    ] ================================================
[2026-10-25 23:04:36,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:04:36
[2026-10-25 23:04:37,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:04:37,450.450 INFO    ] Initializing speech engine...
[2026-10-25 23:04:37,458.458 INFO    ] 2026-10-25 23:04:37
[2026-10-25 23:04:37,727.727 INFO    ] 2026-10-25 23:04:37
[2026-10-25 23:04:37,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:04:38,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:04:38,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:04:38,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:04:38,182.182 INFO    ] time= 25/10/2026 23:04:38
[2026-10-25 23:04:38,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:04:38,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:04:38,335.335 INFO    ] No existing commands found in stream
[2026-10-25 23:04:43,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:04:43,351.351 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 23:04:44,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:04:44,369.369 INFO    ] Checking for system updates...
[2026-10-25 23:04:44,409.409 INFO    ] 200
[2026-10-25 23:04:44,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:44,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:44,475.475 INFO    ] No update needed
[2026-10-25 23:04:44,478.478 INFO    ] Checking for camera pi updates...
[2026-10-25 23:04:44,511.511 INFO    ] 200
[2026-10-25 23:04:44,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:44,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:04:44,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:44,628.628 INFO    ] No camera update needed
[2026-10-25 23:04:44,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:04:44,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:04:44,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:04:44,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:04:46,684.684 INFO    ] ================================================
[2026-10-25 23:04:46,699.699 INFO    ] Launching Daemon at Sun Oct 25 23:04:46 IST 2026
[2026-10-25 23:04:46,711.711 INFO    ] ================================================
[2026-10-25 23:04:47,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:04:47
[2026-10-25 23:04:47,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:04:48,140.140 INFO    ] Initializing speech engine...
[2026-10-25 23:04:48,146.146 INFO    ] 2026-10-25 23:04:48
[2026-10-25 23:04:48,443.443 INFO    ] 2026-10-25 23:04:48
[2026-10-25 23:04:48,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:04:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:04:48,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:04:48,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:04:48,823.823 INFO    ] time= 25/10/2026 23:04:48
[2026-10-25 23:04:48,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:04:48,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:04:48,950.950 INFO    ] No existing commands found in stream
[2026-10-25 23:04:53,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:04:53,966.966 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-25 23:04:58,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:04:58,151.151 INFO    ] Checking for system updates...
[2026-10-25 23:04:58,190.190 INFO    ] 200
[2026-10-25 23:04:58,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:58,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:58,248.248 INFO    ] No update needed
[2026-10-25 23:04:58,251.251 INFO    ] Checking for camera pi updates...
[2026-10-25 23:04:58,285.285 INFO    ] 200
[2026-10-25 23:04:58,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:04:58,327.327 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:04:58,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:04:58,385.385 INFO    ] No camera update needed
[2026-10-25 23:04:58,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:04:58,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:04:58,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:04:58,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:05:00,442.442 INFO    ] ================================================
[2026-10-25 23:05:00,457.457 INFO    ] Launching Daemon at Sun Oct 25 23:05:00 IST 2026
[2026-10-25 23:05:00,468.468 INFO    ] ================================================
[2026-10-25 23:05:01,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:05:01
[2026-10-25 23:05:01,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:05:02,414.414 INFO    ] Initializing speech engine...
[2026-10-25 23:05:02,421.421 INFO    ] 2026-10-25 23:05:02
[2026-10-25 23:05:02,798.798 INFO    ] 2026-10-25 23:05:02
[2026-10-25 23:05:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:05:03,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:05:03,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:05:03,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:05:03,190.190 INFO    ] time= 25/10/2026 23:05:03
[2026-10-25 23:05:03,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:05:03,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:05:03,367.367 INFO    ] No existing commands found in stream
[2026-10-25 23:05:08,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:05:08,382.382 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 23:05:10,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:05:10,788.788 INFO    ] Checking for system updates...
[2026-10-25 23:05:10,829.829 INFO    ] 200
[2026-10-25 23:05:10,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:10,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:05:10,894.894 INFO    ] No update needed
[2026-10-25 23:05:10,897.897 INFO    ] Checking for camera pi updates...
[2026-10-25 23:05:10,936.936 INFO    ] 200
[2026-10-25 23:05:10,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:10,984.984 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:05:11,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:05:11,049.049 INFO    ] No camera update needed
[2026-10-25 23:05:11,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:05:11,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:05:11,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:05:11,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:05:13,104.104 INFO    ] ================================================
[2026-10-25 23:05:13,119.119 INFO    ] Launching Daemon at Sun Oct 25 23:05:13 IST 2026
[2026-10-25 23:05:13,129.129 INFO    ] ================================================
[2026-10-25 23:05:13,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:05:13
[2026-10-25 23:05:14,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:05:14,567.567 INFO    ] Initializing speech engine...
[2026-10-25 23:05:14,582.582 INFO    ] 2026-10-25 23:05:14
[2026-10-25 23:05:14,862.862 INFO    ] 2026-10-25 23:05:14
[2026-10-25 23:05:14,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:05:15,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:05:15,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:05:15,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:05:15,248.248 INFO    ] time= 25/10/2026 23:05:15
[2026-10-25 23:05:15,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:05:15,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:05:15,371.371 INFO    ] No existing commands found in stream
[2026-10-25 23:05:20,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:05:20,406.406 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-25 23:05:23,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:05:23,919.919 INFO    ] Checking for system updates...
[2026-10-25 23:05:23,961.961 INFO    ] 200
[2026-10-25 23:05:23,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:24,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:24,026.026 INFO    ] No update needed
[2026-10-25 23:05:24,028.028 INFO    ] Checking for camera pi updates...
[2026-10-25 23:05:24,063.063 INFO    ] 200
[2026-10-25 23:05:24,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:24,106.106 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:05:24,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:24,165.165 INFO    ] No camera update needed
[2026-10-25 23:05:24,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:05:24,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:05:24,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:05:24,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:05:26,223.223 INFO    ] ================================================
[2026-10-25 23:05:26,238.238 INFO    ] Launching Daemon at Sun Oct 25 23:05:26 IST 2026
[2026-10-25 23:05:26,249.249 INFO    ] ================================================
[2026-10-25 23:05:26,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:05:26
[2026-10-25 23:05:27,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:05:27,684.684 INFO    ] Initializing speech engine...
[2026-10-25 23:05:27,693.693 INFO    ] 2026-10-25 23:05:27
[2026-10-25 23:05:27,945.945 INFO    ] 2026-10-25 23:05:27
[2026-10-25 23:05:27,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:05:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:05:28,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:05:28,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:05:28,320.320 INFO    ] time= 25/10/2026 23:05:28
[2026-10-25 23:05:28,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:05:28,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:05:28,404.404 INFO    ] No existing commands found in stream
[2026-10-25 23:05:33,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:05:33,443.443 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-25 23:05:35,174.174 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:05:35,177.177 INFO    ] Checking for system updates...
[2026-10-25 23:05:35,213.213 INFO    ] 200
[2026-10-25 23:05:35,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:35,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:35,271.271 INFO    ] No update needed
[2026-10-25 23:05:35,273.273 INFO    ] Checking for camera pi updates...
[2026-10-25 23:05:35,306.306 INFO    ] 200
[2026-10-25 23:05:35,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:35,349.349 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:05:35,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:35,413.413 INFO    ] No camera update needed
[2026-10-25 23:05:35,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:05:35,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:05:35,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:05:35,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:05:37,472.472 INFO    ] ================================================
[2026-10-25 23:05:37,487.487 INFO    ] Launching Daemon at Sun Oct 25 23:05:37 IST 2026
[2026-10-25 23:05:37,498.498 INFO    ] ================================================
[2026-10-25 23:05:38,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:05:38
[2026-10-25 23:05:38,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:05:38,893.893 INFO    ] Initializing speech engine...
[2026-10-25 23:05:38,908.908 INFO    ] 2026-10-25 23:05:38
[2026-10-25 23:05:39,172.172 INFO    ] 2026-10-25 23:05:39
[2026-10-25 23:05:39,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:05:39,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:05:39,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:05:39,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:05:39,546.546 INFO    ] time= 25/10/2026 23:05:39
[2026-10-25 23:05:39,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:05:39,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:05:39,711.711 INFO    ] No existing commands found in stream
[2026-10-25 23:05:44,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:05:44,739.739 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-25 23:05:47,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:05:47,882.882 INFO    ] Checking for system updates...
[2026-10-25 23:05:47,922.922 INFO    ] 200
[2026-10-25 23:05:47,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:47,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:47,988.988 INFO    ] No update needed
[2026-10-25 23:05:47,990.990 INFO    ] Checking for camera pi updates...
[2026-10-25 23:05:48,028.028 INFO    ] 200
[2026-10-25 23:05:48,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:05:48,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:05:48,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:05:48,128.128 INFO    ] No camera update needed
[2026-10-25 23:05:48,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:05:48,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:05:48,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:05:48,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:05:50,182.182 INFO    ] ================================================
[2026-10-25 23:05:50,199.199 INFO    ] Launching Daemon at Sun Oct 25 23:05:50 IST 2026
[2026-10-25 23:05:50,211.211 INFO    ] ================================================
[2026-10-25 23:05:50,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:05:50
[2026-10-25 23:05:51,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:05:51,608.608 INFO    ] Initializing speech engine...
[2026-10-25 23:05:51,631.631 INFO    ] 2026-10-25 23:05:51
[2026-10-25 23:05:51,888.888 INFO    ] 2026-10-25 23:05:51
[2026-10-25 23:05:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:05:52,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:05:52,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:05:52,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:05:52,294.294 INFO    ] time= 25/10/2026 23:05:52
[2026-10-25 23:05:52,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:05:52,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:05:52,386.386 INFO    ] No existing commands found in stream
[2026-10-25 23:05:57,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:05:57,405.405 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-25 23:06:00,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:06:00,496.496 INFO    ] Checking for system updates...
[2026-10-25 23:06:00,532.532 INFO    ] 200
[2026-10-25 23:06:00,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:00,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:00,597.597 INFO    ] No update needed
[2026-10-25 23:06:00,599.599 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:00,637.637 INFO    ] 200
[2026-10-25 23:06:00,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:00,686.686 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:00,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:00,738.738 INFO    ] No camera update needed
[2026-10-25 23:06:00,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:00,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:00,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:00,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:06:02,795.795 INFO    ] ================================================
[2026-10-25 23:06:02,815.815 INFO    ] Launching Daemon at Sun Oct 25 23:06:02 IST 2026
[2026-10-25 23:06:02,826.826 INFO    ] ================================================
[2026-10-25 23:06:03,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:06:03
[2026-10-25 23:06:04,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:06:04,620.620 INFO    ] Initializing speech engine...
[2026-10-25 23:06:04,629.629 INFO    ] 2026-10-25 23:06:04
[2026-10-25 23:06:04,927.927 INFO    ] 2026-10-25 23:06:04
[2026-10-25 23:06:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:06:05,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:06:05,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:06:05,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:06:05,413.413 INFO    ] time= 25/10/2026 23:06:05
[2026-10-25 23:06:05,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:06:05,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:06:05,608.608 INFO    ] No existing commands found in stream
[2026-10-25 23:06:10,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:06:10,638.638 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 23:06:13,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:06:13,831.831 INFO    ] Checking for system updates...
[2026-10-25 23:06:13,874.874 INFO    ] 200
[2026-10-25 23:06:13,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:13,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:13,942.942 INFO    ] No update needed
[2026-10-25 23:06:13,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:13,986.986 INFO    ] 200
[2026-10-25 23:06:13,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:14,036.036 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:14,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:14,207.207 INFO    ] No camera update needed
[2026-10-25 23:06:14,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:14,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:14,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:14,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:06:16,267.267 INFO    ] ================================================
[2026-10-25 23:06:16,282.282 INFO    ] Launching Daemon at Sun Oct 25 23:06:16 IST 2026
[2026-10-25 23:06:16,292.292 INFO    ] ================================================
[2026-10-25 23:06:16,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:06:16
[2026-10-25 23:06:17,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:06:17,777.777 INFO    ] Initializing speech engine...
[2026-10-25 23:06:17,795.795 INFO    ] 2026-10-25 23:06:17
[2026-10-25 23:06:18,047.047 INFO    ] 2026-10-25 23:06:18
[2026-10-25 23:06:18,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:06:18,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:06:18,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:06:18,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:06:18,427.427 INFO    ] time= 25/10/2026 23:06:18
[2026-10-25 23:06:18,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:06:18,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:06:18,506.506 INFO    ] No existing commands found in stream
[2026-10-25 23:06:23,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:06:23,534.534 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 23:06:24,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:06:24,230.230 INFO    ] Checking for system updates...
[2026-10-25 23:06:24,267.267 INFO    ] 200
[2026-10-25 23:06:24,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:24,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:06:24,335.335 INFO    ] No update needed
[2026-10-25 23:06:24,338.338 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:24,372.372 INFO    ] 200
[2026-10-25 23:06:24,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:24,422.422 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:24,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:06:24,476.476 INFO    ] No camera update needed
[2026-10-25 23:06:24,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:24,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:24,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:24,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:06:26,535.535 INFO    ] ================================================
[2026-10-25 23:06:26,551.551 INFO    ] Launching Daemon at Sun Oct 25 23:06:26 IST 2026
[2026-10-25 23:06:26,561.561 INFO    ] ================================================
[2026-10-25 23:06:27,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:06:27
[2026-10-25 23:06:27,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:06:28,212.212 INFO    ] Initializing speech engine...
[2026-10-25 23:06:28,221.221 INFO    ] 2026-10-25 23:06:28
[2026-10-25 23:06:28,505.505 INFO    ] 2026-10-25 23:06:28
[2026-10-25 23:06:28,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:06:28,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:06:28,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:06:28,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:06:28,961.961 INFO    ] time= 25/10/2026 23:06:28
[2026-10-25 23:06:29,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:06:29,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:06:29,116.116 INFO    ] No existing commands found in stream
[2026-10-25 23:06:34,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:06:34,133.133 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 23:06:34,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:06:34,933.933 INFO    ] Checking for system updates...
[2026-10-25 23:06:34,974.974 INFO    ] 200
[2026-10-25 23:06:34,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:35,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:35,038.038 INFO    ] No update needed
[2026-10-25 23:06:35,041.041 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:35,075.075 INFO    ] 200
[2026-10-25 23:06:35,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:35,126.126 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:35,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:35,184.184 INFO    ] No camera update needed
[2026-10-25 23:06:35,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:35,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:35,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:35,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:06:37,238.238 INFO    ] ================================================
[2026-10-25 23:06:37,256.256 INFO    ] Launching Daemon at Sun Oct 25 23:06:37 IST 2026
[2026-10-25 23:06:37,268.268 INFO    ] ================================================
[2026-10-25 23:06:37,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:06:37
[2026-10-25 23:06:38,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:06:38,890.890 INFO    ] Initializing speech engine...
[2026-10-25 23:06:38,904.904 INFO    ] 2026-10-25 23:06:38
[2026-10-25 23:06:39,212.212 INFO    ] 2026-10-25 23:06:39
[2026-10-25 23:06:39,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:06:39,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:06:39,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:06:39,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:06:39,723.723 INFO    ] time= 25/10/2026 23:06:39
[2026-10-25 23:06:39,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:06:39,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:06:39,864.864 INFO    ] No existing commands found in stream
[2026-10-25 23:06:44,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:06:44,894.894 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 23:06:47,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:06:47,444.444 INFO    ] Checking for system updates...
[2026-10-25 23:06:47,481.481 INFO    ] 200
[2026-10-25 23:06:47,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:47,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:47,538.538 INFO    ] No update needed
[2026-10-25 23:06:47,541.541 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:47,574.574 INFO    ] 200
[2026-10-25 23:06:47,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:47,617.617 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:47,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:47,676.676 INFO    ] No camera update needed
[2026-10-25 23:06:47,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:47,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:47,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:47,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:06:49,729.729 INFO    ] ================================================
[2026-10-25 23:06:49,744.744 INFO    ] Launching Daemon at Sun Oct 25 23:06:49 IST 2026
[2026-10-25 23:06:49,755.755 INFO    ] ================================================
[2026-10-25 23:06:50,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:06:50
[2026-10-25 23:06:50,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:06:51,232.232 INFO    ] Initializing speech engine...
[2026-10-25 23:06:51,244.244 INFO    ] 2026-10-25 23:06:51
[2026-10-25 23:06:51,507.507 INFO    ] 2026-10-25 23:06:51
[2026-10-25 23:06:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:06:51,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:06:51,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:06:51,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:06:51,975.975 INFO    ] time= 25/10/2026 23:06:51
[2026-10-25 23:06:52,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:06:52,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:06:52,126.126 INFO    ] No existing commands found in stream
[2026-10-25 23:06:57,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:06:57,143.143 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-25 23:06:59,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:06:59,378.378 INFO    ] Checking for system updates...
[2026-10-25 23:06:59,435.435 INFO    ] 200
[2026-10-25 23:06:59,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:59,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:59,529.529 INFO    ] No update needed
[2026-10-25 23:06:59,533.533 INFO    ] Checking for camera pi updates...
[2026-10-25 23:06:59,569.569 INFO    ] 200
[2026-10-25 23:06:59,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:06:59,623.623 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:06:59,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:06:59,699.699 INFO    ] No camera update needed
[2026-10-25 23:06:59,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:06:59,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:06:59,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:06:59,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:07:01,761.761 INFO    ] ================================================
[2026-10-25 23:07:01,776.776 INFO    ] Launching Daemon at Sun Oct 25 23:07:01 IST 2026
[2026-10-25 23:07:01,786.786 INFO    ] ================================================
[2026-10-25 23:07:02,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:07:02
[2026-10-25 23:07:03,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:07:03,682.682 INFO    ] Initializing speech engine...
[2026-10-25 23:07:03,689.689 INFO    ] 2026-10-25 23:07:03
[2026-10-25 23:07:03,944.944 INFO    ] 2026-10-25 23:07:03
[2026-10-25 23:07:04,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:07:04,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:07:04,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:07:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:07:04,347.347 INFO    ] time= 25/10/2026 23:07:04
[2026-10-25 23:07:04,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:07:04,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:07:04,433.433 INFO    ] No existing commands found in stream
[2026-10-25 23:07:09,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:07:09,448.448 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 23:07:13,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:07:13,344.344 INFO    ] Checking for system updates...
[2026-10-25 23:07:13,382.382 INFO    ] 200
[2026-10-25 23:07:13,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:13,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:07:13,447.447 INFO    ] No update needed
[2026-10-25 23:07:13,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 23:07:13,488.488 INFO    ] 200
[2026-10-25 23:07:13,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:13,536.536 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:07:13,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:07:13,596.596 INFO    ] No camera update needed
[2026-10-25 23:07:13,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:07:13,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:07:13,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:07:13,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:07:15,652.652 INFO    ] ================================================
[2026-10-25 23:07:15,667.667 INFO    ] Launching Daemon at Sun Oct 25 23:07:15 IST 2026
[2026-10-25 23:07:15,677.677 INFO    ] ================================================
[2026-10-25 23:07:16,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:07:16
[2026-10-25 23:07:16,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:07:17,098.098 INFO    ] Initializing speech engine...
[2026-10-25 23:07:17,106.106 INFO    ] 2026-10-25 23:07:17
[2026-10-25 23:07:17,356.356 INFO    ] 2026-10-25 23:07:17
[2026-10-25 23:07:17,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:07:17,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:07:17,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:07:17,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:07:17,733.733 INFO    ] time= 25/10/2026 23:07:17
[2026-10-25 23:07:17,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:07:17,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:07:17,905.905 INFO    ] No existing commands found in stream
[2026-10-25 23:07:22,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:07:22,937.937 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 23:07:24,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:07:24,427.427 INFO    ] Checking for system updates...
[2026-10-25 23:07:24,468.468 INFO    ] 200
[2026-10-25 23:07:24,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:24,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:07:24,527.527 INFO    ] No update needed
[2026-10-25 23:07:24,529.529 INFO    ] Checking for camera pi updates...
[2026-10-25 23:07:24,563.563 INFO    ] 200
[2026-10-25 23:07:24,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:24,610.610 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:07:24,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:07:24,674.674 INFO    ] No camera update needed
[2026-10-25 23:07:24,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:07:24,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:07:24,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:07:24,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:07:26,731.731 INFO    ] ================================================
[2026-10-25 23:07:26,745.745 INFO    ] Launching Daemon at Sun Oct 25 23:07:26 IST 2026
[2026-10-25 23:07:26,756.756 INFO    ] ================================================
[2026-10-25 23:07:27,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:07:27
[2026-10-25 23:07:27,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:07:28,177.177 INFO    ] Initializing speech engine...
[2026-10-25 23:07:28,187.187 INFO    ] 2026-10-25 23:07:28
[2026-10-25 23:07:28,429.429 INFO    ] 2026-10-25 23:07:28
[2026-10-25 23:07:28,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:07:28,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:07:28,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:07:28,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:07:28,905.905 INFO    ] time= 25/10/2026 23:07:28
[2026-10-25 23:07:28,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:07:28,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:07:29,046.046 INFO    ] No existing commands found in stream
[2026-10-25 23:07:34,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:07:34,061.061 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 23:07:37,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:07:37,838.838 INFO    ] Checking for system updates...
[2026-10-25 23:07:37,877.877 INFO    ] 200
[2026-10-25 23:07:37,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:37,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:07:37,945.945 INFO    ] No update needed
[2026-10-25 23:07:37,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 23:07:37,985.985 INFO    ] 200
[2026-10-25 23:07:37,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:38,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:07:38,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:07:38,131.131 INFO    ] No camera update needed
[2026-10-25 23:07:38,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:07:38,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:07:38,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:07:38,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:07:40,186.186 INFO    ] ================================================
[2026-10-25 23:07:40,201.201 INFO    ] Launching Daemon at Sun Oct 25 23:07:40 IST 2026
[2026-10-25 23:07:40,211.211 INFO    ] ================================================
[2026-10-25 23:07:40,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:07:40
[2026-10-25 23:07:41,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:07:41,627.627 INFO    ] Initializing speech engine...
[2026-10-25 23:07:41,636.636 INFO    ] 2026-10-25 23:07:41
[2026-10-25 23:07:41,880.880 INFO    ] 2026-10-25 23:07:41
[2026-10-25 23:07:41,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:07:42,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:07:42,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:07:43,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:07:43,080.080 INFO    ] time= 25/10/2026 23:07:43
[2026-10-25 23:07:43,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:07:43,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:07:43,187.187 INFO    ] No existing commands found in stream
[2026-10-25 23:07:48,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:07:48,215.215 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-25 23:07:50,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:07:50,497.497 INFO    ] Checking for system updates...
[2026-10-25 23:07:50,533.533 INFO    ] 200
[2026-10-25 23:07:50,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:50,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:07:50,592.592 INFO    ] No update needed
[2026-10-25 23:07:50,594.594 INFO    ] Checking for camera pi updates...
[2026-10-25 23:07:50,632.632 INFO    ] 200
[2026-10-25 23:07:50,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:07:50,680.680 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:07:50,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:07:50,736.736 INFO    ] No camera update needed
[2026-10-25 23:07:50,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:07:50,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:07:50,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:07:50,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:07:52,791.791 INFO    ] ================================================
[2026-10-25 23:07:52,806.806 INFO    ] Launching Daemon at Sun Oct 25 23:07:52 IST 2026
[2026-10-25 23:07:52,817.817 INFO    ] ================================================
[2026-10-25 23:07:53,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:07:53
[2026-10-25 23:07:53,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:07:54,242.242 INFO    ] Initializing speech engine...
[2026-10-25 23:07:54,251.251 INFO    ] 2026-10-25 23:07:54
[2026-10-25 23:07:54,508.508 INFO    ] 2026-10-25 23:07:54
[2026-10-25 23:07:54,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:07:54,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:07:54,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:07:54,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:07:54,976.976 INFO    ] time= 25/10/2026 23:07:54
[2026-10-25 23:07:55,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:07:55,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:07:55,121.121 INFO    ] No existing commands found in stream
[2026-10-25 23:08:00,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:08:00,136.136 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-25 23:08:01,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:08:01,276.276 INFO    ] Checking for system updates...
[2026-10-25 23:08:01,360.360 INFO    ] 200
[2026-10-25 23:08:01,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:01,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:01,517.517 INFO    ] No update needed
[2026-10-25 23:08:01,531.531 INFO    ] Checking for camera pi updates...
[2026-10-25 23:08:01,590.590 INFO    ] 200
[2026-10-25 23:08:01,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:01,696.696 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:08:01,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:01,878.878 INFO    ] No camera update needed
[2026-10-25 23:08:01,882.882 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:08:01,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:08:01,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:08:01,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:08:03,953.953 INFO    ] ================================================
[2026-10-25 23:08:03,974.974 INFO    ] Launching Daemon at Sun Oct 25 23:08:03 IST 2026
[2026-10-25 23:08:04,992.992 INFO    ] ================================================
[2026-10-25 23:08:04,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:08:04
[2026-10-25 23:08:05,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:08:05,862.862 INFO    ] Initializing speech engine...
[2026-10-25 23:08:05,871.871 INFO    ] 2026-10-25 23:08:05
[2026-10-25 23:08:06,215.215 INFO    ] 2026-10-25 23:08:06
[2026-10-25 23:08:06,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:08:06,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:08:06,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:08:06,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:08:06,672.672 INFO    ] time= 25/10/2026 23:08:06
[2026-10-25 23:08:06,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:08:06,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:08:06,824.824 INFO    ] No existing commands found in stream
[2026-10-25 23:08:11,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:08:11,844.844 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-25 23:08:15,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:08:15,710.710 INFO    ] Checking for system updates...
[2026-10-25 23:08:15,748.748 INFO    ] 200
[2026-10-25 23:08:15,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:15,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:15,809.809 INFO    ] No update needed
[2026-10-25 23:08:15,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 23:08:15,846.846 INFO    ] 200
[2026-10-25 23:08:15,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:15,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:08:16,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:16,050.050 INFO    ] No camera update needed
[2026-10-25 23:08:16,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:08:16,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:08:16,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:08:16,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:08:18,105.105 INFO    ] ================================================
[2026-10-25 23:08:18,120.120 INFO    ] Launching Daemon at Sun Oct 25 23:08:18 IST 2026
[2026-10-25 23:08:18,130.130 INFO    ] ================================================
[2026-10-25 23:08:18,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:08:18
[2026-10-25 23:08:19,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:08:19,741.741 INFO    ] Initializing speech engine...
[2026-10-25 23:08:19,748.748 INFO    ] 2026-10-25 23:08:19
[2026-10-25 23:08:20,033.033 INFO    ] 2026-10-25 23:08:20
[2026-10-25 23:08:20,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:08:20,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:08:20,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:08:20,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:08:20,561.561 INFO    ] time= 25/10/2026 23:08:20
[2026-10-25 23:08:20,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:08:20,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:08:20,703.703 INFO    ] No existing commands found in stream
[2026-10-25 23:08:25,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:08:25,728.728 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 23:08:29,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:08:29,775.775 INFO    ] Checking for system updates...
[2026-10-25 23:08:29,816.816 INFO    ] 200
[2026-10-25 23:08:29,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:29,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:29,880.880 INFO    ] No update needed
[2026-10-25 23:08:29,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 23:08:29,920.920 INFO    ] 200
[2026-10-25 23:08:29,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:29,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:08:30,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:30,036.036 INFO    ] No camera update needed
[2026-10-25 23:08:30,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:08:30,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:08:30,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:08:30,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:08:32,092.092 INFO    ] ================================================
[2026-10-25 23:08:32,108.108 INFO    ] Launching Daemon at Sun Oct 25 23:08:32 IST 2026
[2026-10-25 23:08:32,120.120 INFO    ] ================================================
[2026-10-25 23:08:32,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:08:32
[2026-10-25 23:08:33,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:08:33,750.750 INFO    ] Initializing speech engine...
[2026-10-25 23:08:33,760.760 INFO    ] 2026-10-25 23:08:33
[2026-10-25 23:08:34,033.033 INFO    ] 2026-10-25 23:08:34
[2026-10-25 23:08:34,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:08:34,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:08:34,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:08:34,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:08:34,506.506 INFO    ] time= 25/10/2026 23:08:34
[2026-10-25 23:08:34,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:08:34,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:08:34,711.711 INFO    ] No existing commands found in stream
[2026-10-25 23:08:39,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:08:39,745.745 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 23:08:43,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:08:43,382.382 INFO    ] Checking for system updates...
[2026-10-25 23:08:43,422.422 INFO    ] 200
[2026-10-25 23:08:43,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:43,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:08:43,479.479 INFO    ] No update needed
[2026-10-25 23:08:43,482.482 INFO    ] Checking for camera pi updates...
[2026-10-25 23:08:43,516.516 INFO    ] 200
[2026-10-25 23:08:43,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:43,559.559 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:08:43,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:08:43,608.608 INFO    ] No camera update needed
[2026-10-25 23:08:43,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:08:43,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:08:43,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:08:43,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:08:45,663.663 INFO    ] ================================================
[2026-10-25 23:08:45,678.678 INFO    ] Launching Daemon at Sun Oct 25 23:08:45 IST 2026
[2026-10-25 23:08:45,689.689 INFO    ] ================================================
[2026-10-25 23:08:46,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:08:46
[2026-10-25 23:08:46,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:08:47,210.210 INFO    ] Initializing speech engine...
[2026-10-25 23:08:47,217.217 INFO    ] 2026-10-25 23:08:47
[2026-10-25 23:08:47,478.478 INFO    ] 2026-10-25 23:08:47
[2026-10-25 23:08:47,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:08:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:08:47,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:08:47,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:08:47,845.845 INFO    ] time= 25/10/2026 23:08:47
[2026-10-25 23:08:47,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:08:47,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:08:48,016.016 INFO    ] No existing commands found in stream
[2026-10-25 23:08:53,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:08:53,045.045 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-25 23:08:55,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:08:55,159.159 INFO    ] Checking for system updates...
[2026-10-25 23:08:55,199.199 INFO    ] 200
[2026-10-25 23:08:55,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:55,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:55,259.259 INFO    ] No update needed
[2026-10-25 23:08:55,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 23:08:55,299.299 INFO    ] 200
[2026-10-25 23:08:55,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:08:55,348.348 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:08:55,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:08:55,426.426 INFO    ] No camera update needed
[2026-10-25 23:08:55,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:08:55,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:08:55,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:08:55,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:08:57,482.482 INFO    ] ================================================
[2026-10-25 23:08:57,497.497 INFO    ] Launching Daemon at Sun Oct 25 23:08:57 IST 2026
[2026-10-25 23:08:57,508.508 INFO    ] ================================================
[2026-10-25 23:08:58,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:08:58
[2026-10-25 23:08:58,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:08:58,916.916 INFO    ] Initializing speech engine...
[2026-10-25 23:08:58,930.930 INFO    ] 2026-10-25 23:08:58
[2026-10-25 23:08:59,215.215 INFO    ] 2026-10-25 23:08:59
[2026-10-25 23:08:59,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:08:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:08:59,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:08:59,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:08:59,607.607 INFO    ] time= 25/10/2026 23:08:59
[2026-10-25 23:08:59,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:08:59,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:08:59,769.769 INFO    ] No existing commands found in stream
[2026-10-25 23:09:04,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:09:04,797.797 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-25 23:09:05,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:09:05,895.895 INFO    ] Checking for system updates...
[2026-10-25 23:09:05,934.934 INFO    ] 200
[2026-10-25 23:09:05,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:05,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:05,996.996 INFO    ] No update needed
[2026-10-25 23:09:05,998.998 INFO    ] Checking for camera pi updates...
[2026-10-25 23:09:06,035.035 INFO    ] 200
[2026-10-25 23:09:06,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:06,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:09:06,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:06,144.144 INFO    ] No camera update needed
[2026-10-25 23:09:06,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:09:06,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:09:06,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:09:06,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:09:08,199.199 INFO    ] ================================================
[2026-10-25 23:09:08,213.213 INFO    ] Launching Daemon at Sun Oct 25 23:09:08 IST 2026
[2026-10-25 23:09:08,224.224 INFO    ] ================================================
[2026-10-25 23:09:08,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:09:08
[2026-10-25 23:09:09,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:09:09,656.656 INFO    ] Initializing speech engine...
[2026-10-25 23:09:09,682.682 INFO    ] 2026-10-25 23:09:09
[2026-10-25 23:09:09,932.932 INFO    ] 2026-10-25 23:09:09
[2026-10-25 23:09:09,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:09:10,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:09:10,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:09:10,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:09:10,431.431 INFO    ] time= 25/10/2026 23:09:10
[2026-10-25 23:09:10,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:09:10,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:09:10,632.632 INFO    ] No existing commands found in stream
[2026-10-25 23:09:15,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:09:15,665.665 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 23:09:17,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:09:17,652.652 INFO    ] Checking for system updates...
[2026-10-25 23:09:17,688.688 INFO    ] 200
[2026-10-25 23:09:17,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:17,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:17,748.748 INFO    ] No update needed
[2026-10-25 23:09:17,750.750 INFO    ] Checking for camera pi updates...
[2026-10-25 23:09:17,785.785 INFO    ] 200
[2026-10-25 23:09:17,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:17,832.832 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:09:17,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:17,900.900 INFO    ] No camera update needed
[2026-10-25 23:09:17,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:09:17,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:09:17,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:09:17,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:09:19,957.957 INFO    ] ================================================
[2026-10-25 23:09:19,973.973 INFO    ] Launching Daemon at Sun Oct 25 23:09:19 IST 2026
[2026-10-25 23:09:19,983.983 INFO    ] ================================================
[2026-10-25 23:09:20,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:09:20
[2026-10-25 23:09:21,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:09:21,570.570 INFO    ] Initializing speech engine...
[2026-10-25 23:09:21,578.578 INFO    ] 2026-10-25 23:09:21
[2026-10-25 23:09:21,852.852 INFO    ] 2026-10-25 23:09:21
[2026-10-25 23:09:21,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:09:22,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:09:22,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:09:22,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:09:22,412.412 INFO    ] time= 25/10/2026 23:09:22
[2026-10-25 23:09:22,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:09:22,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:09:22,551.551 INFO    ] No existing commands found in stream
[2026-10-25 23:09:27,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:09:27,582.582 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-25 23:09:29,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:09:29,591.591 INFO    ] Checking for system updates...
[2026-10-25 23:09:29,631.631 INFO    ] 200
[2026-10-25 23:09:29,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:29,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:29,696.696 INFO    ] No update needed
[2026-10-25 23:09:29,698.698 INFO    ] Checking for camera pi updates...
[2026-10-25 23:09:29,740.740 INFO    ] 200
[2026-10-25 23:09:29,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:29,785.785 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:09:29,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:29,845.845 INFO    ] No camera update needed
[2026-10-25 23:09:29,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:09:29,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:09:29,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:09:29,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:09:31,906.906 INFO    ] ================================================
[2026-10-25 23:09:31,923.923 INFO    ] Launching Daemon at Sun Oct 25 23:09:31 IST 2026
[2026-10-25 23:09:31,935.935 INFO    ] ================================================
[2026-10-25 23:09:32,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:09:32
[2026-10-25 23:09:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:09:33,386.386 INFO    ] Initializing speech engine...
[2026-10-25 23:09:33,409.409 INFO    ] 2026-10-25 23:09:33
[2026-10-25 23:09:33,677.677 INFO    ] 2026-10-25 23:09:33
[2026-10-25 23:09:33,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:09:33,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:09:33,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:09:34,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:09:34,049.049 INFO    ] time= 25/10/2026 23:09:34
[2026-10-25 23:09:34,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:09:34,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:09:34,175.175 INFO    ] No existing commands found in stream
[2026-10-25 23:09:39,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:09:39,187.187 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 23:09:43,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:09:43,180.180 INFO    ] Checking for system updates...
[2026-10-25 23:09:43,219.219 INFO    ] 200
[2026-10-25 23:09:43,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:43,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:09:43,284.284 INFO    ] No update needed
[2026-10-25 23:09:43,287.287 INFO    ] Checking for camera pi updates...
[2026-10-25 23:09:43,324.324 INFO    ] 200
[2026-10-25 23:09:43,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:43,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:09:43,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:09:43,433.433 INFO    ] No camera update needed
[2026-10-25 23:09:43,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:09:43,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:09:43,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:09:43,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:09:45,489.489 INFO    ] ================================================
[2026-10-25 23:09:45,505.505 INFO    ] Launching Daemon at Sun Oct 25 23:09:45 IST 2026
[2026-10-25 23:09:45,515.515 INFO    ] ================================================
[2026-10-25 23:09:46,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:09:46
[2026-10-25 23:09:46,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:09:47,211.211 INFO    ] Initializing speech engine...
[2026-10-25 23:09:47,218.218 INFO    ] 2026-10-25 23:09:47
[2026-10-25 23:09:47,508.508 INFO    ] 2026-10-25 23:09:47
[2026-10-25 23:09:47,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:09:47,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:09:47,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:09:47,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:09:48,013.013 INFO    ] time= 25/10/2026 23:09:47
[2026-10-25 23:09:48,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:09:48,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:09:48,178.178 INFO    ] No existing commands found in stream
[2026-10-25 23:09:53,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:09:53,215.215 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 23:09:53,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:09:53,993.993 INFO    ] Checking for system updates...
[2026-10-25 23:09:54,030.030 INFO    ] 200
[2026-10-25 23:09:54,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:54,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:54,090.090 INFO    ] No update needed
[2026-10-25 23:09:54,093.093 INFO    ] Checking for camera pi updates...
[2026-10-25 23:09:54,127.127 INFO    ] 200
[2026-10-25 23:09:54,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:09:54,176.176 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:09:54,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:09:54,229.229 INFO    ] No camera update needed
[2026-10-25 23:09:54,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:09:54,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:09:54,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:09:54,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:09:56,282.282 INFO    ] ================================================
[2026-10-25 23:09:56,297.297 INFO    ] Launching Daemon at Sun Oct 25 23:09:56 IST 2026
[2026-10-25 23:09:56,308.308 INFO    ] ================================================
[2026-10-25 23:09:56,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:09:56
[2026-10-25 23:09:57,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:09:57,761.761 INFO    ] Initializing speech engine...
[2026-10-25 23:09:57,774.774 INFO    ] 2026-10-25 23:09:57
[2026-10-25 23:09:58,021.021 INFO    ] 2026-10-25 23:09:58
[2026-10-25 23:09:58,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:09:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:09:58,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:09:58,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:09:58,390.390 INFO    ] time= 25/10/2026 23:09:58
[2026-10-25 23:09:58,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:09:58,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:09:58,551.551 INFO    ] No existing commands found in stream
[2026-10-25 23:10:03,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:10:03,577.577 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 23:10:08,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:10:08,016.016 INFO    ] Checking for system updates...
[2026-10-25 23:10:08,057.057 INFO    ] 200
[2026-10-25 23:10:08,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:08,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:10:08,121.121 INFO    ] No update needed
[2026-10-25 23:10:08,123.123 INFO    ] Checking for camera pi updates...
[2026-10-25 23:10:08,161.161 INFO    ] 200
[2026-10-25 23:10:08,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:08,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:10:08,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:10:08,270.270 INFO    ] No camera update needed
[2026-10-25 23:10:08,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:10:08,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:10:08,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:10:08,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:10:10,325.325 INFO    ] ================================================
[2026-10-25 23:10:10,340.340 INFO    ] Launching Daemon at Sun Oct 25 23:10:10 IST 2026
[2026-10-25 23:10:10,351.351 INFO    ] ================================================
[2026-10-25 23:10:10,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:10:10
[2026-10-25 23:10:11,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:10:11,783.783 INFO    ] Initializing speech engine...
[2026-10-25 23:10:11,792.792 INFO    ] 2026-10-25 23:10:11
[2026-10-25 23:10:12,083.083 INFO    ] 2026-10-25 23:10:12
[2026-10-25 23:10:12,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:10:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:10:13,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:10:13,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:10:13,332.332 INFO    ] time= 25/10/2026 23:10:13
[2026-10-25 23:10:13,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:10:13,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:10:13,453.453 INFO    ] No existing commands found in stream
[2026-10-25 23:10:18,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:10:18,466.466 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-25 23:10:22,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:10:22,248.248 INFO    ] Checking for system updates...
[2026-10-25 23:10:22,284.284 INFO    ] 200
[2026-10-25 23:10:22,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:22,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:22,341.341 INFO    ] No update needed
[2026-10-25 23:10:22,343.343 INFO    ] Checking for camera pi updates...
[2026-10-25 23:10:22,377.377 INFO    ] 200
[2026-10-25 23:10:22,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:22,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:10:22,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:22,576.576 INFO    ] No camera update needed
[2026-10-25 23:10:22,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:10:22,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:10:22,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:10:22,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:10:24,632.632 INFO    ] ================================================
[2026-10-25 23:10:24,648.648 INFO    ] Launching Daemon at Sun Oct 25 23:10:24 IST 2026
[2026-10-25 23:10:24,658.658 INFO    ] ================================================
[2026-10-25 23:10:25,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:10:25
[2026-10-25 23:10:25,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:10:26,067.067 INFO    ] Initializing speech engine...
[2026-10-25 23:10:26,074.074 INFO    ] 2026-10-25 23:10:26
[2026-10-25 23:10:26,370.370 INFO    ] 2026-10-25 23:10:26
[2026-10-25 23:10:26,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:10:26,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:10:26,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:10:26,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:10:26,757.757 INFO    ] time= 25/10/2026 23:10:26
[2026-10-25 23:10:26,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:10:26,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:10:26,863.863 INFO    ] No existing commands found in stream
[2026-10-25 23:10:31,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:10:31,876.876 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 23:10:34,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:10:34,555.555 INFO    ] Checking for system updates...
[2026-10-25 23:10:34,595.595 INFO    ] 200
[2026-10-25 23:10:34,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:34,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:34,652.652 INFO    ] No update needed
[2026-10-25 23:10:34,655.655 INFO    ] Checking for camera pi updates...
[2026-10-25 23:10:34,692.692 INFO    ] 200
[2026-10-25 23:10:34,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:34,734.734 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:10:34,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:34,805.805 INFO    ] No camera update needed
[2026-10-25 23:10:34,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:10:34,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:10:34,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:10:34,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:10:36,861.861 INFO    ] ================================================
[2026-10-25 23:10:36,876.876 INFO    ] Launching Daemon at Sun Oct 25 23:10:36 IST 2026
[2026-10-25 23:10:36,887.887 INFO    ] ================================================
[2026-10-25 23:10:37,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:10:37
[2026-10-25 23:10:38,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:10:38,428.428 INFO    ] Initializing speech engine...
[2026-10-25 23:10:38,444.444 INFO    ] 2026-10-25 23:10:38
[2026-10-25 23:10:38,751.751 INFO    ] 2026-10-25 23:10:38
[2026-10-25 23:10:38,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:10:39,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:10:39,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:10:39,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:10:39,266.266 INFO    ] time= 25/10/2026 23:10:39
[2026-10-25 23:10:39,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:10:39,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:10:39,417.417 INFO    ] No existing commands found in stream
[2026-10-25 23:10:44,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:10:44,432.432 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-25 23:10:47,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:10:47,618.618 INFO    ] Checking for system updates...
[2026-10-25 23:10:47,657.657 INFO    ] 200
[2026-10-25 23:10:47,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:47,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:47,716.716 INFO    ] No update needed
[2026-10-25 23:10:47,718.718 INFO    ] Checking for camera pi updates...
[2026-10-25 23:10:47,754.754 INFO    ] 200
[2026-10-25 23:10:47,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:47,801.801 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:10:47,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:10:47,849.849 INFO    ] No camera update needed
[2026-10-25 23:10:47,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:10:47,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:10:47,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:10:47,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:10:49,906.906 INFO    ] ================================================
[2026-10-25 23:10:49,921.921 INFO    ] Launching Daemon at Sun Oct 25 23:10:49 IST 2026
[2026-10-25 23:10:49,932.932 INFO    ] ================================================
[2026-10-25 23:10:50,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:10:50
[2026-10-25 23:10:51,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:10:51,332.332 INFO    ] Initializing speech engine...
[2026-10-25 23:10:51,339.339 INFO    ] 2026-10-25 23:10:51
[2026-10-25 23:10:51,630.630 INFO    ] 2026-10-25 23:10:51
[2026-10-25 23:10:51,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:10:51,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:10:51,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:10:52,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:10:52,040.040 INFO    ] time= 25/10/2026 23:10:52
[2026-10-25 23:10:52,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:10:52,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:10:52,127.127 INFO    ] No existing commands found in stream
[2026-10-25 23:10:57,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:10:57,160.160 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-25 23:10:58,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:10:58,885.885 INFO    ] Checking for system updates...
[2026-10-25 23:10:58,921.921 INFO    ] 200
[2026-10-25 23:10:58,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:58,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:10:58,980.980 INFO    ] No update needed
[2026-10-25 23:10:58,983.983 INFO    ] Checking for camera pi updates...
[2026-10-25 23:10:59,023.023 INFO    ] 200
[2026-10-25 23:10:59,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:10:59,066.066 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:10:59,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:10:59,130.130 INFO    ] No camera update needed
[2026-10-25 23:10:59,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:10:59,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:10:59,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:10:59,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:11:01,186.186 INFO    ] ================================================
[2026-10-25 23:11:01,201.201 INFO    ] Launching Daemon at Sun Oct 25 23:11:01 IST 2026
[2026-10-25 23:11:01,212.212 INFO    ] ================================================
[2026-10-25 23:11:01,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:11:01
[2026-10-25 23:11:02,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:11:02,919.919 INFO    ] Initializing speech engine...
[2026-10-25 23:11:02,927.927 INFO    ] 2026-10-25 23:11:02
[2026-10-25 23:11:03,207.207 INFO    ] 2026-10-25 23:11:03
[2026-10-25 23:11:03,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:11:03,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:11:03,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:11:03,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:11:03,619.619 INFO    ] time= 25/10/2026 23:11:03
[2026-10-25 23:11:03,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:11:03,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:11:03,702.702 INFO    ] No existing commands found in stream
[2026-10-25 23:11:08,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:11:08,719.719 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 23:11:13,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:11:13,424.424 INFO    ] Checking for system updates...
[2026-10-25 23:11:13,465.465 INFO    ] 200
[2026-10-25 23:11:13,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:13,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:11:13,524.524 INFO    ] No update needed
[2026-10-25 23:11:13,527.527 INFO    ] Checking for camera pi updates...
[2026-10-25 23:11:13,562.562 INFO    ] 200
[2026-10-25 23:11:13,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:13,607.607 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:11:13,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:11:13,663.663 INFO    ] No camera update needed
[2026-10-25 23:11:13,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:11:13,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:11:13,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:11:13,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:11:15,721.721 INFO    ] ================================================
[2026-10-25 23:11:15,736.736 INFO    ] Launching Daemon at Sun Oct 25 23:11:15 IST 2026
[2026-10-25 23:11:15,747.747 INFO    ] ================================================
[2026-10-25 23:11:16,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:11:16
[2026-10-25 23:11:17,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:11:17,344.344 INFO    ] Initializing speech engine...
[2026-10-25 23:11:17,351.351 INFO    ] 2026-10-25 23:11:17
[2026-10-25 23:11:17,613.613 INFO    ] 2026-10-25 23:11:17
[2026-10-25 23:11:17,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:11:17,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:11:17,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:11:18,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:11:18,119.119 INFO    ] time= 25/10/2026 23:11:18
[2026-10-25 23:11:18,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:11:18,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:11:18,275.275 INFO    ] No existing commands found in stream
[2026-10-25 23:11:23,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:11:23,292.292 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 23:11:25,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:11:25,584.584 INFO    ] Checking for system updates...
[2026-10-25 23:11:25,622.622 INFO    ] 200
[2026-10-25 23:11:25,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:25,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:25,681.681 INFO    ] No update needed
[2026-10-25 23:11:25,684.684 INFO    ] Checking for camera pi updates...
[2026-10-25 23:11:25,719.719 INFO    ] 200
[2026-10-25 23:11:25,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:25,763.763 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:11:25,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:25,817.817 INFO    ] No camera update needed
[2026-10-25 23:11:25,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:11:25,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:11:25,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:11:25,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:11:27,875.875 INFO    ] ================================================
[2026-10-25 23:11:27,890.890 INFO    ] Launching Daemon at Sun Oct 25 23:11:27 IST 2026
[2026-10-25 23:11:27,901.901 INFO    ] ================================================
[2026-10-25 23:11:28,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:11:28
[2026-10-25 23:11:29,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:11:29,350.350 INFO    ] Initializing speech engine...
[2026-10-25 23:11:29,360.360 INFO    ] 2026-10-25 23:11:29
[2026-10-25 23:11:29,630.630 INFO    ] 2026-10-25 23:11:29
[2026-10-25 23:11:29,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:11:29,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:11:29,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:11:30,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:11:30,052.052 INFO    ] time= 25/10/2026 23:11:30
[2026-10-25 23:11:30,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:11:30,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:11:30,145.145 INFO    ] No existing commands found in stream
[2026-10-25 23:11:35,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:11:35,161.161 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-25 23:11:36,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:11:36,038.038 INFO    ] Checking for system updates...
[2026-10-25 23:11:36,074.074 INFO    ] 200
[2026-10-25 23:11:36,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:36,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:11:36,137.137 INFO    ] No update needed
[2026-10-25 23:11:36,139.139 INFO    ] Checking for camera pi updates...
[2026-10-25 23:11:36,174.174 INFO    ] 200
[2026-10-25 23:11:36,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:36,221.221 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:11:36,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:11:36,299.299 INFO    ] No camera update needed
[2026-10-25 23:11:36,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:11:36,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:11:36,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:11:36,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:11:38,355.355 INFO    ] ================================================
[2026-10-25 23:11:38,369.369 INFO    ] Launching Daemon at Sun Oct 25 23:11:38 IST 2026
[2026-10-25 23:11:38,380.380 INFO    ] ================================================
[2026-10-25 23:11:38,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:11:38
[2026-10-25 23:11:39,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:11:39,804.804 INFO    ] Initializing speech engine...
[2026-10-25 23:11:39,820.820 INFO    ] 2026-10-25 23:11:39
[2026-10-25 23:11:40,103.103 INFO    ] 2026-10-25 23:11:40
[2026-10-25 23:11:40,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:11:40,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:11:40,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:11:40,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:11:40,469.469 INFO    ] time= 25/10/2026 23:11:40
[2026-10-25 23:11:40,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:11:40,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:11:40,589.589 INFO    ] No existing commands found in stream
[2026-10-25 23:11:45,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:11:45,604.604 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-25 23:11:47,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:11:47,015.015 INFO    ] Checking for system updates...
[2026-10-25 23:11:47,052.052 INFO    ] 200
[2026-10-25 23:11:47,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:47,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:47,109.109 INFO    ] No update needed
[2026-10-25 23:11:47,112.112 INFO    ] Checking for camera pi updates...
[2026-10-25 23:11:47,145.145 INFO    ] 200
[2026-10-25 23:11:47,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:47,192.192 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:11:47,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:47,243.243 INFO    ] No camera update needed
[2026-10-25 23:11:47,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:11:47,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:11:47,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:11:47,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:11:49,297.297 INFO    ] ================================================
[2026-10-25 23:11:49,312.312 INFO    ] Launching Daemon at Sun Oct 25 23:11:49 IST 2026
[2026-10-25 23:11:49,323.323 INFO    ] ================================================
[2026-10-25 23:11:49,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:11:49
[2026-10-25 23:11:50,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:11:50,746.746 INFO    ] Initializing speech engine...
[2026-10-25 23:11:50,755.755 INFO    ] 2026-10-25 23:11:50
[2026-10-25 23:11:51,041.041 INFO    ] 2026-10-25 23:11:51
[2026-10-25 23:11:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:11:51,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:11:51,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:11:51,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:11:51,444.444 INFO    ] time= 25/10/2026 23:11:51
[2026-10-25 23:11:51,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:11:51,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:11:51,605.605 INFO    ] No existing commands found in stream
[2026-10-25 23:11:56,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:11:56,633.633 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-25 23:11:57,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:11:57,753.753 INFO    ] Checking for system updates...
[2026-10-25 23:11:57,791.791 INFO    ] 200
[2026-10-25 23:11:57,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:57,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:57,850.850 INFO    ] No update needed
[2026-10-25 23:11:57,852.852 INFO    ] Checking for camera pi updates...
[2026-10-25 23:11:57,886.886 INFO    ] 200
[2026-10-25 23:11:57,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:11:57,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:11:58,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:11:58,008.008 INFO    ] No camera update needed
[2026-10-25 23:11:58,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:11:58,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:11:58,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:11:58,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:12:00,062.062 INFO    ] ================================================
[2026-10-25 23:12:00,077.077 INFO    ] Launching Daemon at Sun Oct 25 23:12:00 IST 2026
[2026-10-25 23:12:00,087.087 INFO    ] ================================================
[2026-10-25 23:12:00,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:12:00
[2026-10-25 23:12:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:12:01,494.494 INFO    ] Initializing speech engine...
[2026-10-25 23:12:01,500.500 INFO    ] 2026-10-25 23:12:01
[2026-10-25 23:12:01,785.785 INFO    ] 2026-10-25 23:12:01
[2026-10-25 23:12:01,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:12:01,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:12:01,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:12:02,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:12:02,136.136 INFO    ] time= 25/10/2026 23:12:02
[2026-10-25 23:12:02,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:12:02,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:12:02,225.225 INFO    ] No existing commands found in stream
[2026-10-25 23:12:07,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:12:07,238.238 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-25 23:12:11,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:12:11,191.191 INFO    ] Checking for system updates...
[2026-10-25 23:12:11,230.230 INFO    ] 200
[2026-10-25 23:12:11,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:11,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:11,289.289 INFO    ] No update needed
[2026-10-25 23:12:11,291.291 INFO    ] Checking for camera pi updates...
[2026-10-25 23:12:11,329.329 INFO    ] 200
[2026-10-25 23:12:11,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:11,373.373 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:12:11,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:11,428.428 INFO    ] No camera update needed
[2026-10-25 23:12:11,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:12:11,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:12:11,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:12:11,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:12:13,485.485 INFO    ] ================================================
[2026-10-25 23:12:13,500.500 INFO    ] Launching Daemon at Sun Oct 25 23:12:13 IST 2026
[2026-10-25 23:12:13,510.510 INFO    ] ================================================
[2026-10-25 23:12:14,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:12:14
[2026-10-25 23:12:14,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:12:14,948.948 INFO    ] Initializing speech engine...
[2026-10-25 23:12:14,971.971 INFO    ] 2026-10-25 23:12:14
[2026-10-25 23:12:15,244.244 INFO    ] 2026-10-25 23:12:15
[2026-10-25 23:12:15,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:12:15,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:12:15,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:12:15,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:12:15,608.608 INFO    ] time= 25/10/2026 23:12:15
[2026-10-25 23:12:15,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:12:15,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:12:15,728.728 INFO    ] No existing commands found in stream
[2026-10-25 23:12:20,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:12:20,748.748 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-25 23:12:25,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:12:25,046.046 INFO    ] Checking for system updates...
[2026-10-25 23:12:25,083.083 INFO    ] 200
[2026-10-25 23:12:25,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:25,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:25,142.142 INFO    ] No update needed
[2026-10-25 23:12:25,144.144 INFO    ] Checking for camera pi updates...
[2026-10-25 23:12:25,181.181 INFO    ] 200
[2026-10-25 23:12:25,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:25,224.224 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:12:25,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:25,383.383 INFO    ] No camera update needed
[2026-10-25 23:12:25,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:12:25,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:12:25,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:12:25,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:12:27,437.437 INFO    ] ================================================
[2026-10-25 23:12:27,452.452 INFO    ] Launching Daemon at Sun Oct 25 23:12:27 IST 2026
[2026-10-25 23:12:27,462.462 INFO    ] ================================================
[2026-10-25 23:12:28,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:12:28
[2026-10-25 23:12:28,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:12:28,887.887 INFO    ] Initializing speech engine...
[2026-10-25 23:12:28,910.910 INFO    ] 2026-10-25 23:12:28
[2026-10-25 23:12:29,178.178 INFO    ] 2026-10-25 23:12:29
[2026-10-25 23:12:29,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:12:29,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:12:29,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:12:29,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:12:29,525.525 INFO    ] time= 25/10/2026 23:12:29
[2026-10-25 23:12:29,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:12:29,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:12:29,604.604 INFO    ] No existing commands found in stream
[2026-10-25 23:12:34,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:12:34,616.616 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 23:12:38,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:12:38,492.492 INFO    ] Checking for system updates...
[2026-10-25 23:12:38,527.527 INFO    ] 200
[2026-10-25 23:12:38,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:38,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:38,585.585 INFO    ] No update needed
[2026-10-25 23:12:38,587.587 INFO    ] Checking for camera pi updates...
[2026-10-25 23:12:38,622.622 INFO    ] 200
[2026-10-25 23:12:38,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:38,664.664 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:12:38,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:12:38,778.778 INFO    ] No camera update needed
[2026-10-25 23:12:38,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:12:38,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:12:38,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:12:38,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:12:40,832.832 INFO    ] ================================================
[2026-10-25 23:12:40,847.847 INFO    ] Launching Daemon at Sun Oct 25 23:12:40 IST 2026
[2026-10-25 23:12:40,857.857 INFO    ] ================================================
[2026-10-25 23:12:41,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:12:41
[2026-10-25 23:12:42,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:12:42,403.403 INFO    ] Initializing speech engine...
[2026-10-25 23:12:42,423.423 INFO    ] 2026-10-25 23:12:42
[2026-10-25 23:12:42,681.681 INFO    ] 2026-10-25 23:12:42
[2026-10-25 23:12:42,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:12:43,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:12:43,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:12:43,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:12:43,256.256 INFO    ] time= 25/10/2026 23:12:43
[2026-10-25 23:12:43,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:12:43,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:12:43,391.391 INFO    ] No existing commands found in stream
[2026-10-25 23:12:48,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:12:48,425.425 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 23:12:50,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:12:50,705.705 INFO    ] Checking for system updates...
[2026-10-25 23:12:50,742.742 INFO    ] 200
[2026-10-25 23:12:50,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:50,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:12:50,801.801 INFO    ] No update needed
[2026-10-25 23:12:50,803.803 INFO    ] Checking for camera pi updates...
[2026-10-25 23:12:50,838.838 INFO    ] 200
[2026-10-25 23:12:50,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:12:50,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:12:50,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:12:50,944.944 INFO    ] No camera update needed
[2026-10-25 23:12:50,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:12:50,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:12:50,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:12:50,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:12:53,001.001 INFO    ] ================================================
[2026-10-25 23:12:53,016.016 INFO    ] Launching Daemon at Sun Oct 25 23:12:53 IST 2026
[2026-10-25 23:12:53,027.027 INFO    ] ================================================
[2026-10-25 23:12:53,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:12:53
[2026-10-25 23:12:54,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:12:54,455.455 INFO    ] Initializing speech engine...
[2026-10-25 23:12:54,470.470 INFO    ] 2026-10-25 23:12:54
[2026-10-25 23:12:54,747.747 INFO    ] 2026-10-25 23:12:54
[2026-10-25 23:12:54,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:12:54,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:12:54,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:12:55,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:12:55,149.149 INFO    ] time= 25/10/2026 23:12:55
[2026-10-25 23:12:55,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:12:55,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:12:55,316.316 INFO    ] No existing commands found in stream
[2026-10-25 23:13:00,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:13:00,349.349 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 23:13:04,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:13:04,520.520 INFO    ] Checking for system updates...
[2026-10-25 23:13:04,557.557 INFO    ] 200
[2026-10-25 23:13:04,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:04,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:04,621.621 INFO    ] No update needed
[2026-10-25 23:13:04,624.624 INFO    ] Checking for camera pi updates...
[2026-10-25 23:13:04,659.659 INFO    ] 200
[2026-10-25 23:13:04,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:04,702.702 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:13:04,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:04,760.760 INFO    ] No camera update needed
[2026-10-25 23:13:04,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:13:04,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:13:04,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:13:04,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:13:06,815.815 INFO    ] ================================================
[2026-10-25 23:13:06,829.829 INFO    ] Launching Daemon at Sun Oct 25 23:13:06 IST 2026
[2026-10-25 23:13:06,840.840 INFO    ] ================================================
[2026-10-25 23:13:07,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:13:07
[2026-10-25 23:13:08,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:13:08,252.252 INFO    ] Initializing speech engine...
[2026-10-25 23:13:08,260.260 INFO    ] 2026-10-25 23:13:08
[2026-10-25 23:13:08,546.546 INFO    ] 2026-10-25 23:13:08
[2026-10-25 23:13:08,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:13:08,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:13:08,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:13:08,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:13:08,947.947 INFO    ] time= 25/10/2026 23:13:08
[2026-10-25 23:13:08,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:13:09,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:13:09,121.121 INFO    ] No existing commands found in stream
[2026-10-25 23:13:14,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:13:14,149.149 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-25 23:13:15,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:13:15,717.717 INFO    ] Checking for system updates...
[2026-10-25 23:13:15,752.752 INFO    ] 200
[2026-10-25 23:13:15,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:15,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:13:15,811.811 INFO    ] No update needed
[2026-10-25 23:13:15,813.813 INFO    ] Checking for camera pi updates...
[2026-10-25 23:13:15,847.847 INFO    ] 200
[2026-10-25 23:13:15,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:15,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:13:15,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:13:15,952.952 INFO    ] No camera update needed
[2026-10-25 23:13:15,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:13:15,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:13:15,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:13:15,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:13:18,006.006 INFO    ] ================================================
[2026-10-25 23:13:18,021.021 INFO    ] Launching Daemon at Sun Oct 25 23:13:18 IST 2026
[2026-10-25 23:13:18,032.032 INFO    ] ================================================
[2026-10-25 23:13:18,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:13:18
[2026-10-25 23:13:19,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:13:19,535.535 INFO    ] Initializing speech engine...
[2026-10-25 23:13:19,544.544 INFO    ] 2026-10-25 23:13:19
[2026-10-25 23:13:19,829.829 INFO    ] 2026-10-25 23:13:19
[2026-10-25 23:13:19,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:13:20,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:13:20,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:13:20,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:13:20,198.198 INFO    ] time= 25/10/2026 23:13:20
[2026-10-25 23:13:20,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:13:20,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:13:20,323.323 INFO    ] No existing commands found in stream
[2026-10-25 23:13:25,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:13:25,335.335 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 23:13:28,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:13:28,204.204 INFO    ] Checking for system updates...
[2026-10-25 23:13:28,240.240 INFO    ] 200
[2026-10-25 23:13:28,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:28,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:28,298.298 INFO    ] No update needed
[2026-10-25 23:13:28,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 23:13:28,334.334 INFO    ] 200
[2026-10-25 23:13:28,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:28,376.376 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:13:28,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:28,431.431 INFO    ] No camera update needed
[2026-10-25 23:13:28,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:13:28,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:13:28,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:13:28,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:13:30,485.485 INFO    ] ================================================
[2026-10-25 23:13:30,499.499 INFO    ] Launching Daemon at Sun Oct 25 23:13:30 IST 2026
[2026-10-25 23:13:30,510.510 INFO    ] ================================================
[2026-10-25 23:13:31,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:13:31
[2026-10-25 23:13:31,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:13:31,977.977 INFO    ] Initializing speech engine...
[2026-10-25 23:13:31,997.997 INFO    ] 2026-10-25 23:13:31
[2026-10-25 23:13:32,268.268 INFO    ] 2026-10-25 23:13:32
[2026-10-25 23:13:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:13:32,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:13:32,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:13:32,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:13:32,662.662 INFO    ] time= 25/10/2026 23:13:32
[2026-10-25 23:13:32,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:13:32,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:13:32,847.847 INFO    ] No existing commands found in stream
[2026-10-25 23:13:37,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:13:37,869.869 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-25 23:13:39,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:13:39,982.982 INFO    ] Checking for system updates...
[2026-10-25 23:13:40,018.018 INFO    ] 200
[2026-10-25 23:13:40,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:40,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:13:40,076.076 INFO    ] No update needed
[2026-10-25 23:13:40,078.078 INFO    ] Checking for camera pi updates...
[2026-10-25 23:13:40,115.115 INFO    ] 200
[2026-10-25 23:13:40,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:40,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:13:40,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:13:40,221.221 INFO    ] No camera update needed
[2026-10-25 23:13:40,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:13:40,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:13:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:13:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:13:42,277.277 INFO    ] ================================================
[2026-10-25 23:13:42,292.292 INFO    ] Launching Daemon at Sun Oct 25 23:13:42 IST 2026
[2026-10-25 23:13:42,303.303 INFO    ] ================================================
[2026-10-25 23:13:42,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:13:42
[2026-10-25 23:13:43,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:13:43,727.727 INFO    ] Initializing speech engine...
[2026-10-25 23:13:43,736.736 INFO    ] 2026-10-25 23:13:43
[2026-10-25 23:13:43,988.988 INFO    ] 2026-10-25 23:13:43
[2026-10-25 23:13:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:13:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:13:44,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:13:44,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:13:44,459.459 INFO    ] time= 25/10/2026 23:13:44
[2026-10-25 23:13:44,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:13:44,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:13:44,595.595 INFO    ] No existing commands found in stream
[2026-10-25 23:13:49,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:13:49,609.609 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-25 23:13:54,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:13:54,613.613 INFO    ] Checking for system updates...
[2026-10-25 23:13:54,650.650 INFO    ] 200
[2026-10-25 23:13:54,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:54,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:54,708.708 INFO    ] No update needed
[2026-10-25 23:13:54,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 23:13:54,745.745 INFO    ] 200
[2026-10-25 23:13:54,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:13:54,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:13:54,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:13:54,838.838 INFO    ] No camera update needed
[2026-10-25 23:13:54,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:13:54,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:13:54,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:13:54,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:13:56,895.895 INFO    ] ================================================
[2026-10-25 23:13:56,910.910 INFO    ] Launching Daemon at Sun Oct 25 23:13:56 IST 2026
[2026-10-25 23:13:56,920.920 INFO    ] ================================================
[2026-10-25 23:13:57,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:13:57
[2026-10-25 23:13:58,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:13:58,364.364 INFO    ] Initializing speech engine...
[2026-10-25 23:13:58,387.387 INFO    ] 2026-10-25 23:13:58
[2026-10-25 23:13:58,641.641 INFO    ] 2026-10-25 23:13:58
[2026-10-25 23:13:58,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:13:58,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:13:58,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:13:59,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:13:59,016.016 INFO    ] time= 25/10/2026 23:13:59
[2026-10-25 23:13:59,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:13:59,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:13:59,188.188 INFO    ] No existing commands found in stream
[2026-10-25 23:14:04,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:14:04,221.221 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-25 23:14:08,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:14:08,467.467 INFO    ] Checking for system updates...
[2026-10-25 23:14:08,504.504 INFO    ] 200
[2026-10-25 23:14:08,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:08,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:14:08,567.567 INFO    ] No update needed
[2026-10-25 23:14:08,569.569 INFO    ] Checking for camera pi updates...
[2026-10-25 23:14:08,612.612 INFO    ] 200
[2026-10-25 23:14:08,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:08,657.657 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:14:08,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:14:08,711.711 INFO    ] No camera update needed
[2026-10-25 23:14:08,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:14:08,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:14:08,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:14:08,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:14:10,768.768 INFO    ] ================================================
[2026-10-25 23:14:10,783.783 INFO    ] Launching Daemon at Sun Oct 25 23:14:10 IST 2026
[2026-10-25 23:14:10,793.793 INFO    ] ================================================
[2026-10-25 23:14:11,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:14:11
[2026-10-25 23:14:11,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:14:12,189.189 INFO    ] Initializing speech engine...
[2026-10-25 23:14:12,204.204 INFO    ] 2026-10-25 23:14:12
[2026-10-25 23:14:12,465.465 INFO    ] 2026-10-25 23:14:12
[2026-10-25 23:14:12,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:14:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:14:13,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:14:13,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:14:13,225.225 INFO    ] time= 25/10/2026 23:14:13
[2026-10-25 23:14:13,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:14:13,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:14:13,444.444 INFO    ] No existing commands found in stream
[2026-10-25 23:14:18,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:14:18,472.472 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 23:14:22,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:14:22,197.197 INFO    ] Checking for system updates...
[2026-10-25 23:14:22,234.234 INFO    ] 200
[2026-10-25 23:14:22,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:22,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:14:22,297.297 INFO    ] No update needed
[2026-10-25 23:14:22,300.300 INFO    ] Checking for camera pi updates...
[2026-10-25 23:14:22,336.336 INFO    ] 200
[2026-10-25 23:14:22,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:22,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:14:22,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:14:22,433.433 INFO    ] No camera update needed
[2026-10-25 23:14:22,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:14:22,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:14:22,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:14:22,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:14:24,491.491 INFO    ] ================================================
[2026-10-25 23:14:24,505.505 INFO    ] Launching Daemon at Sun Oct 25 23:14:24 IST 2026
[2026-10-25 23:14:24,516.516 INFO    ] ================================================
[2026-10-25 23:14:25,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:14:25
[2026-10-25 23:14:25,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:14:25,950.950 INFO    ] Initializing speech engine...
[2026-10-25 23:14:25,959.959 INFO    ] 2026-10-25 23:14:25
[2026-10-25 23:14:26,235.235 INFO    ] 2026-10-25 23:14:26
[2026-10-25 23:14:26,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:14:26,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:14:26,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:14:26,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:14:26,615.615 INFO    ] time= 25/10/2026 23:14:26
[2026-10-25 23:14:26,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:14:26,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:14:26,771.771 INFO    ] No existing commands found in stream
[2026-10-25 23:14:31,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:14:31,795.795 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-25 23:14:33,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:14:33,888.888 INFO    ] Checking for system updates...
[2026-10-25 23:14:33,924.924 INFO    ] 200
[2026-10-25 23:14:33,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:33,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:14:33,982.982 INFO    ] No update needed
[2026-10-25 23:14:33,984.984 INFO    ] Checking for camera pi updates...
[2026-10-25 23:14:34,021.021 INFO    ] 200
[2026-10-25 23:14:34,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:34,064.064 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:14:34,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:14:34,124.124 INFO    ] No camera update needed
[2026-10-25 23:14:34,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:14:34,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:14:34,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:14:34,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:14:36,178.178 INFO    ] ================================================
[2026-10-25 23:14:36,193.193 INFO    ] Launching Daemon at Sun Oct 25 23:14:36 IST 2026
[2026-10-25 23:14:36,204.204 INFO    ] ================================================
[2026-10-25 23:14:36,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:14:36
[2026-10-25 23:14:37,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:14:37,685.685 INFO    ] Initializing speech engine...
[2026-10-25 23:14:37,698.698 INFO    ] 2026-10-25 23:14:37
[2026-10-25 23:14:37,974.974 INFO    ] 2026-10-25 23:14:37
[2026-10-25 23:14:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:14:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:14:38,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:14:38,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:14:38,439.439 INFO    ] time= 25/10/2026 23:14:38
[2026-10-25 23:14:38,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:14:38,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:14:38,586.586 INFO    ] No existing commands found in stream
[2026-10-25 23:14:43,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:14:43,602.602 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-25 23:14:47,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:14:47,745.745 INFO    ] Checking for system updates...
[2026-10-25 23:14:47,784.784 INFO    ] 200
[2026-10-25 23:14:47,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:47,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:14:47,844.844 INFO    ] No update needed
[2026-10-25 23:14:47,846.846 INFO    ] Checking for camera pi updates...
[2026-10-25 23:14:47,881.881 INFO    ] 200
[2026-10-25 23:14:47,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:14:47,925.925 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:14:47,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:14:47,992.992 INFO    ] No camera update needed
[2026-10-25 23:14:47,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:14:47,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:14:48,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:14:48,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:14:50,048.048 INFO    ] ================================================
[2026-10-25 23:14:50,062.062 INFO    ] Launching Daemon at Sun Oct 25 23:14:50 IST 2026
[2026-10-25 23:14:50,073.073 INFO    ] ================================================
[2026-10-25 23:14:50,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:14:50
[2026-10-25 23:14:51,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:14:51,524.524 INFO    ] Initializing speech engine...
[2026-10-25 23:14:51,532.532 INFO    ] 2026-10-25 23:14:51
[2026-10-25 23:14:51,780.780 INFO    ] 2026-10-25 23:14:51
[2026-10-25 23:14:51,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:14:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:14:52,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:14:52,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:14:52,154.154 INFO    ] time= 25/10/2026 23:14:52
[2026-10-25 23:14:52,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:14:52,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:14:52,322.322 INFO    ] No existing commands found in stream
[2026-10-25 23:14:57,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:14:57,355.355 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-25 23:15:01,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:15:01,400.400 INFO    ] Checking for system updates...
[2026-10-25 23:15:01,517.517 INFO    ] 200
[2026-10-25 23:15:01,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:01,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:01,742.742 INFO    ] No update needed
[2026-10-25 23:15:01,745.745 INFO    ] Checking for camera pi updates...
[2026-10-25 23:15:01,802.802 INFO    ] 200
[2026-10-25 23:15:01,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:01,867.867 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:15:01,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:01,930.930 INFO    ] No camera update needed
[2026-10-25 23:15:01,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:15:01,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:15:01,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:15:01,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:15:04,007.007 INFO    ] ================================================
[2026-10-25 23:15:04,022.022 INFO    ] Launching Daemon at Sun Oct 25 23:15:04 IST 2026
[2026-10-25 23:15:04,033.033 INFO    ] ================================================
[2026-10-25 23:15:04,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:15:04
[2026-10-25 23:15:05,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:15:05,492.492 INFO    ] Initializing speech engine...
[2026-10-25 23:15:05,512.512 INFO    ] 2026-10-25 23:15:05
[2026-10-25 23:15:05,781.781 INFO    ] 2026-10-25 23:15:05
[2026-10-25 23:15:05,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:15:06,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:15:06,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:15:06,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:15:06,158.158 INFO    ] time= 25/10/2026 23:15:06
[2026-10-25 23:15:06,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:15:06,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:15:06,282.282 INFO    ] No existing commands found in stream
[2026-10-25 23:15:11,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:15:11,297.297 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-25 23:15:13,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:15:13,236.236 INFO    ] Checking for system updates...
[2026-10-25 23:15:13,280.280 INFO    ] 200
[2026-10-25 23:15:13,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:13,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:13,345.345 INFO    ] No update needed
[2026-10-25 23:15:13,348.348 INFO    ] Checking for camera pi updates...
[2026-10-25 23:15:13,382.382 INFO    ] 200
[2026-10-25 23:15:13,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:13,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:15:13,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:13,484.484 INFO    ] No camera update needed
[2026-10-25 23:15:13,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:15:13,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:15:13,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:15:13,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:15:15,539.539 INFO    ] ================================================
[2026-10-25 23:15:15,555.555 INFO    ] Launching Daemon at Sun Oct 25 23:15:15 IST 2026
[2026-10-25 23:15:15,566.566 INFO    ] ================================================
[2026-10-25 23:15:16,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:15:16
[2026-10-25 23:15:16,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:15:17,209.209 INFO    ] Initializing speech engine...
[2026-10-25 23:15:17,221.221 INFO    ] 2026-10-25 23:15:17
[2026-10-25 23:15:17,491.491 INFO    ] 2026-10-25 23:15:17
[2026-10-25 23:15:17,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:15:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:15:17,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:15:17,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:15:17,970.970 INFO    ] time= 25/10/2026 23:15:17
[2026-10-25 23:15:18,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:15:18,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:15:18,119.119 INFO    ] No existing commands found in stream
[2026-10-25 23:15:23,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:15:23,136.136 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 23:15:26,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:15:26,113.113 INFO    ] Checking for system updates...
[2026-10-25 23:15:26,156.156 INFO    ] 200
[2026-10-25 23:15:26,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:26,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:15:26,219.219 INFO    ] No update needed
[2026-10-25 23:15:26,222.222 INFO    ] Checking for camera pi updates...
[2026-10-25 23:15:26,257.257 INFO    ] 200
[2026-10-25 23:15:26,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:26,305.305 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:15:26,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:15:26,358.358 INFO    ] No camera update needed
[2026-10-25 23:15:26,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:15:26,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:15:26,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:15:26,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:15:28,414.414 INFO    ] ================================================
[2026-10-25 23:15:28,428.428 INFO    ] Launching Daemon at Sun Oct 25 23:15:28 IST 2026
[2026-10-25 23:15:28,439.439 INFO    ] ================================================
[2026-10-25 23:15:29,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:15:29
[2026-10-25 23:15:29,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:15:29,849.849 INFO    ] Initializing speech engine...
[2026-10-25 23:15:29,857.857 INFO    ] 2026-10-25 23:15:29
[2026-10-25 23:15:30,132.132 INFO    ] 2026-10-25 23:15:30
[2026-10-25 23:15:30,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:15:30,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:15:30,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:15:30,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:15:30,507.507 INFO    ] time= 25/10/2026 23:15:30
[2026-10-25 23:15:30,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:15:30,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:15:30,583.583 INFO    ] No existing commands found in stream
[2026-10-25 23:15:35,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:15:35,599.599 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 23:15:38,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:15:38,835.835 INFO    ] Checking for system updates...
[2026-10-25 23:15:38,871.871 INFO    ] 200
[2026-10-25 23:15:38,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:38,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:15:38,935.935 INFO    ] No update needed
[2026-10-25 23:15:38,938.938 INFO    ] Checking for camera pi updates...
[2026-10-25 23:15:38,975.975 INFO    ] 200
[2026-10-25 23:15:38,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:39,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:15:39,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:15:39,077.077 INFO    ] No camera update needed
[2026-10-25 23:15:39,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:15:39,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:15:39,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:15:39,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:15:41,132.132 INFO    ] ================================================
[2026-10-25 23:15:41,147.147 INFO    ] Launching Daemon at Sun Oct 25 23:15:41 IST 2026
[2026-10-25 23:15:41,158.158 INFO    ] ================================================
[2026-10-25 23:15:41,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:15:41
[2026-10-25 23:15:42,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:15:42,756.756 INFO    ] Initializing speech engine...
[2026-10-25 23:15:42,762.762 INFO    ] 2026-10-25 23:15:42
[2026-10-25 23:15:43,081.081 INFO    ] 2026-10-25 23:15:43
[2026-10-25 23:15:43,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:15:43,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:15:43,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:15:43,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:15:43,585.585 INFO    ] time= 25/10/2026 23:15:43
[2026-10-25 23:15:43,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:15:43,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:15:43,737.737 INFO    ] No existing commands found in stream
[2026-10-25 23:15:48,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:15:48,756.756 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 23:15:51,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:15:51,123.123 INFO    ] Checking for system updates...
[2026-10-25 23:15:51,159.159 INFO    ] 200
[2026-10-25 23:15:51,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:51,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:51,218.218 INFO    ] No update needed
[2026-10-25 23:15:51,220.220 INFO    ] Checking for camera pi updates...
[2026-10-25 23:15:51,254.254 INFO    ] 200
[2026-10-25 23:15:51,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:15:51,298.298 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:15:51,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:15:51,351.351 INFO    ] No camera update needed
[2026-10-25 23:15:51,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:15:51,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:15:51,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:15:51,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:15:53,406.406 INFO    ] ================================================
[2026-10-25 23:15:53,421.421 INFO    ] Launching Daemon at Sun Oct 25 23:15:53 IST 2026
[2026-10-25 23:15:53,432.432 INFO    ] ================================================
[2026-10-25 23:15:53,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:15:53
[2026-10-25 23:15:54,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:15:54,855.855 INFO    ] Initializing speech engine...
[2026-10-25 23:15:54,864.864 INFO    ] 2026-10-25 23:15:54
[2026-10-25 23:15:55,153.153 INFO    ] 2026-10-25 23:15:55
[2026-10-25 23:15:55,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:15:55,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:15:55,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:15:55,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:15:55,495.495 INFO    ] time= 25/10/2026 23:15:55
[2026-10-25 23:15:55,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:15:55,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:15:55,573.573 INFO    ] No existing commands found in stream
[2026-10-25 23:16:00,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:16:00,587.587 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-25 23:16:01,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:16:01,070.070 INFO    ] Checking for system updates...
[2026-10-25 23:16:01,106.106 INFO    ] 200
[2026-10-25 23:16:01,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:01,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:01,163.163 INFO    ] No update needed
[2026-10-25 23:16:01,166.166 INFO    ] Checking for camera pi updates...
[2026-10-25 23:16:01,199.199 INFO    ] 200
[2026-10-25 23:16:01,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:01,243.243 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:16:01,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:01,305.305 INFO    ] No camera update needed
[2026-10-25 23:16:01,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:16:01,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:16:01,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:16:01,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:16:03,362.362 INFO    ] ================================================
[2026-10-25 23:16:03,378.378 INFO    ] Launching Daemon at Sun Oct 25 23:16:03 IST 2026
[2026-10-25 23:16:03,390.390 INFO    ] ================================================
[2026-10-25 23:16:03,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:16:03
[2026-10-25 23:16:04,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:16:04,867.867 INFO    ] Initializing speech engine...
[2026-10-25 23:16:04,880.880 INFO    ] 2026-10-25 23:16:04
[2026-10-25 23:16:05,131.131 INFO    ] 2026-10-25 23:16:05
[2026-10-25 23:16:05,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:16:05,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:16:05,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:16:05,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:16:05,505.505 INFO    ] time= 25/10/2026 23:16:05
[2026-10-25 23:16:05,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:16:05,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:16:05,680.680 INFO    ] No existing commands found in stream
[2026-10-25 23:16:10,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:16:10,713.713 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 23:16:13,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:16:13,286.286 INFO    ] Checking for system updates...
[2026-10-25 23:16:13,325.325 INFO    ] 200
[2026-10-25 23:16:13,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:13,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:16:13,383.383 INFO    ] No update needed
[2026-10-25 23:16:13,385.385 INFO    ] Checking for camera pi updates...
[2026-10-25 23:16:13,419.419 INFO    ] 200
[2026-10-25 23:16:13,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:13,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:16:13,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:16:13,513.513 INFO    ] No camera update needed
[2026-10-25 23:16:13,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:16:13,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:16:13,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:16:13,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:16:15,567.567 INFO    ] ================================================
[2026-10-25 23:16:15,582.582 INFO    ] Launching Daemon at Sun Oct 25 23:16:15 IST 2026
[2026-10-25 23:16:15,593.593 INFO    ] ================================================
[2026-10-25 23:16:16,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:16:16
[2026-10-25 23:16:16,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:16:17,119.119 INFO    ] Initializing speech engine...
[2026-10-25 23:16:17,128.128 INFO    ] 2026-10-25 23:16:17
[2026-10-25 23:16:17,433.433 INFO    ] 2026-10-25 23:16:17
[2026-10-25 23:16:17,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:16:17,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:16:17,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:16:17,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:16:17,826.826 INFO    ] time= 25/10/2026 23:16:17
[2026-10-25 23:16:17,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:16:17,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:16:17,955.955 INFO    ] No existing commands found in stream
[2026-10-25 23:16:22,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:16:22,968.968 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-25 23:16:26,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:16:26,086.086 INFO    ] Checking for system updates...
[2026-10-25 23:16:26,123.123 INFO    ] 200
[2026-10-25 23:16:26,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:26,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:16:26,201.201 INFO    ] No update needed
[2026-10-25 23:16:26,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 23:16:26,237.237 INFO    ] 200
[2026-10-25 23:16:26,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:26,280.280 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:16:26,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:16:26,335.335 INFO    ] No camera update needed
[2026-10-25 23:16:26,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:16:26,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:16:26,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:16:26,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:16:28,390.390 INFO    ] ================================================
[2026-10-25 23:16:28,406.406 INFO    ] Launching Daemon at Sun Oct 25 23:16:28 IST 2026
[2026-10-25 23:16:28,417.417 INFO    ] ================================================
[2026-10-25 23:16:28,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:16:28
[2026-10-25 23:16:29,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:16:29,823.823 INFO    ] Initializing speech engine...
[2026-10-25 23:16:29,839.839 INFO    ] 2026-10-25 23:16:29
[2026-10-25 23:16:30,095.095 INFO    ] 2026-10-25 23:16:30
[2026-10-25 23:16:30,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:16:30,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:16:30,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:16:30,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:16:30,471.471 INFO    ] time= 25/10/2026 23:16:30
[2026-10-25 23:16:30,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:16:30,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:16:30,641.641 INFO    ] No existing commands found in stream
[2026-10-25 23:16:35,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:16:35,670.670 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-25 23:16:37,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:16:37,209.209 INFO    ] Checking for system updates...
[2026-10-25 23:16:37,245.245 INFO    ] 200
[2026-10-25 23:16:37,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:37,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:37,308.308 INFO    ] No update needed
[2026-10-25 23:16:37,310.310 INFO    ] Checking for camera pi updates...
[2026-10-25 23:16:37,348.348 INFO    ] 200
[2026-10-25 23:16:37,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:37,399.399 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:16:37,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:37,567.567 INFO    ] No camera update needed
[2026-10-25 23:16:37,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:16:37,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:16:37,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:16:37,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:16:39,623.623 INFO    ] ================================================
[2026-10-25 23:16:39,638.638 INFO    ] Launching Daemon at Sun Oct 25 23:16:39 IST 2026
[2026-10-25 23:16:39,649.649 INFO    ] ================================================
[2026-10-25 23:16:40,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:16:40
[2026-10-25 23:16:40,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:16:41,084.084 INFO    ] Initializing speech engine...
[2026-10-25 23:16:41,089.089 INFO    ] 2026-10-25 23:16:41
[2026-10-25 23:16:41,367.367 INFO    ] 2026-10-25 23:16:41
[2026-10-25 23:16:41,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:16:42,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:16:42,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:16:43,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:16:43,079.079 INFO    ] time= 25/10/2026 23:16:43
[2026-10-25 23:16:43,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:16:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:16:43,187.187 INFO    ] No existing commands found in stream
[2026-10-25 23:16:48,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:16:48,202.202 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 23:16:51,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:16:51,565.565 INFO    ] Checking for system updates...
[2026-10-25 23:16:51,608.608 INFO    ] 200
[2026-10-25 23:16:51,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:51,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:51,669.669 INFO    ] No update needed
[2026-10-25 23:16:51,672.672 INFO    ] Checking for camera pi updates...
[2026-10-25 23:16:51,707.707 INFO    ] 200
[2026-10-25 23:16:51,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:16:51,752.752 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:16:51,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:16:51,812.812 INFO    ] No camera update needed
[2026-10-25 23:16:51,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:16:51,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:16:51,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:16:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:16:53,874.874 INFO    ] ================================================
[2026-10-25 23:16:53,890.890 INFO    ] Launching Daemon at Sun Oct 25 23:16:53 IST 2026
[2026-10-25 23:16:53,902.902 INFO    ] ================================================
[2026-10-25 23:16:54,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:16:54
[2026-10-25 23:16:55,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:16:55,605.605 INFO    ] Initializing speech engine...
[2026-10-25 23:16:55,617.617 INFO    ] 2026-10-25 23:16:55
[2026-10-25 23:16:55,910.910 INFO    ] 2026-10-25 23:16:55
[2026-10-25 23:16:55,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:16:56,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:16:56,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:16:56,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:16:56,467.467 INFO    ] time= 25/10/2026 23:16:56
[2026-10-25 23:16:56,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:16:56,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:16:56,608.608 INFO    ] No existing commands found in stream
[2026-10-25 23:17:01,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:17:01,648.648 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 23:17:04,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:17:04,371.371 INFO    ] Checking for system updates...
[2026-10-25 23:17:04,408.408 INFO    ] 200
[2026-10-25 23:17:04,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:04,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:17:04,468.468 INFO    ] No update needed
[2026-10-25 23:17:04,470.470 INFO    ] Checking for camera pi updates...
[2026-10-25 23:17:04,505.505 INFO    ] 200
[2026-10-25 23:17:04,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:04,549.549 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:17:04,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:17:04,605.605 INFO    ] No camera update needed
[2026-10-25 23:17:04,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:17:04,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:17:04,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:17:04,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:17:06,662.662 INFO    ] ================================================
[2026-10-25 23:17:06,678.678 INFO    ] Launching Daemon at Sun Oct 25 23:17:06 IST 2026
[2026-10-25 23:17:06,689.689 INFO    ] ================================================
[2026-10-25 23:17:07,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:17:07
[2026-10-25 23:17:07,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:17:08,213.213 INFO    ] Initializing speech engine...
[2026-10-25 23:17:08,222.222 INFO    ] 2026-10-25 23:17:08
[2026-10-25 23:17:08,489.489 INFO    ] 2026-10-25 23:17:08
[2026-10-25 23:17:08,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:17:08,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:17:08,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:17:08,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:17:08,988.988 INFO    ] time= 25/10/2026 23:17:08
[2026-10-25 23:17:09,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:17:09,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:17:09,174.174 INFO    ] No existing commands found in stream
[2026-10-25 23:17:14,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:17:14,205.205 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-25 23:17:17,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:17:17,827.827 INFO    ] Checking for system updates...
[2026-10-25 23:17:17,865.865 INFO    ] 200
[2026-10-25 23:17:17,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:17,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:17,929.929 INFO    ] No update needed
[2026-10-25 23:17:17,932.932 INFO    ] Checking for camera pi updates...
[2026-10-25 23:17:17,969.969 INFO    ] 200
[2026-10-25 23:17:17,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:18,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:17:18,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:18,075.075 INFO    ] No camera update needed
[2026-10-25 23:17:18,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:17:18,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:17:18,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:17:18,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:17:20,132.132 INFO    ] ================================================
[2026-10-25 23:17:20,148.148 INFO    ] Launching Daemon at Sun Oct 25 23:17:20 IST 2026
[2026-10-25 23:17:20,159.159 INFO    ] ================================================
[2026-10-25 23:17:20,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:17:20
[2026-10-25 23:17:21,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:17:21,617.617 INFO    ] Initializing speech engine...
[2026-10-25 23:17:21,622.622 INFO    ] 2026-10-25 23:17:21
[2026-10-25 23:17:21,910.910 INFO    ] 2026-10-25 23:17:21
[2026-10-25 23:17:21,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:17:22,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:17:22,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:17:22,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:17:22,289.289 INFO    ] time= 25/10/2026 23:17:22
[2026-10-25 23:17:22,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:17:22,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:17:22,461.461 INFO    ] No existing commands found in stream
[2026-10-25 23:17:27,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:17:27,494.494 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 23:17:29,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:17:29,737.737 INFO    ] Checking for system updates...
[2026-10-25 23:17:29,773.773 INFO    ] 200
[2026-10-25 23:17:29,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:29,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:29,835.835 INFO    ] No update needed
[2026-10-25 23:17:29,837.837 INFO    ] Checking for camera pi updates...
[2026-10-25 23:17:29,871.871 INFO    ] 200
[2026-10-25 23:17:29,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:29,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:17:29,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:29,964.964 INFO    ] No camera update needed
[2026-10-25 23:17:29,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:17:29,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:17:29,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:17:29,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:17:32,019.019 INFO    ] ================================================
[2026-10-25 23:17:32,037.037 INFO    ] Launching Daemon at Sun Oct 25 23:17:32 IST 2026
[2026-10-25 23:17:32,049.049 INFO    ] ================================================
[2026-10-25 23:17:32,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:17:32
[2026-10-25 23:17:33,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:17:33,712.712 INFO    ] Initializing speech engine...
[2026-10-25 23:17:33,722.722 INFO    ] 2026-10-25 23:17:33
[2026-10-25 23:17:33,991.991 INFO    ] 2026-10-25 23:17:33
[2026-10-25 23:17:34,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:17:34,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:17:34,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:17:34,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:17:34,464.464 INFO    ] time= 25/10/2026 23:17:34
[2026-10-25 23:17:34,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:17:34,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:17:34,607.607 INFO    ] No existing commands found in stream
[2026-10-25 23:17:39,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:17:39,623.623 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-25 23:17:43,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:17:43,533.533 INFO    ] Checking for system updates...
[2026-10-25 23:17:43,570.570 INFO    ] 200
[2026-10-25 23:17:43,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:43,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:43,629.629 INFO    ] No update needed
[2026-10-25 23:17:43,632.632 INFO    ] Checking for camera pi updates...
[2026-10-25 23:17:43,667.667 INFO    ] 200
[2026-10-25 23:17:43,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:43,711.711 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:17:43,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:43,773.773 INFO    ] No camera update needed
[2026-10-25 23:17:43,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:17:43,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:17:43,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:17:43,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:17:45,830.830 INFO    ] ================================================
[2026-10-25 23:17:45,845.845 INFO    ] Launching Daemon at Sun Oct 25 23:17:45 IST 2026
[2026-10-25 23:17:45,857.857 INFO    ] ================================================
[2026-10-25 23:17:46,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:17:46
[2026-10-25 23:17:47,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:17:47,313.313 INFO    ] Initializing speech engine...
[2026-10-25 23:17:47,322.322 INFO    ] 2026-10-25 23:17:47
[2026-10-25 23:17:47,568.568 INFO    ] 2026-10-25 23:17:47
[2026-10-25 23:17:47,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:17:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:17:47,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:17:47,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:17:48,038.038 INFO    ] time= 25/10/2026 23:17:47
[2026-10-25 23:17:48,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:17:48,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:17:48,175.175 INFO    ] No existing commands found in stream
[2026-10-25 23:17:53,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:17:53,189.189 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 23:17:57,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:17:57,437.437 INFO    ] Checking for system updates...
[2026-10-25 23:17:57,476.476 INFO    ] 200
[2026-10-25 23:17:57,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:57,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:57,535.535 INFO    ] No update needed
[2026-10-25 23:17:57,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 23:17:57,572.572 INFO    ] 200
[2026-10-25 23:17:57,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:17:57,618.618 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:17:57,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:17:57,670.670 INFO    ] No camera update needed
[2026-10-25 23:17:57,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:17:57,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:17:57,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:17:57,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:17:59,726.726 INFO    ] ================================================
[2026-10-25 23:17:59,742.742 INFO    ] Launching Daemon at Sun Oct 25 23:17:59 IST 2026
[2026-10-25 23:17:59,754.754 INFO    ] ================================================
[2026-10-25 23:18:00,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:18:00
[2026-10-25 23:18:00,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:18:01,227.227 INFO    ] Initializing speech engine...
[2026-10-25 23:18:01,235.235 INFO    ] 2026-10-25 23:18:01
[2026-10-25 23:18:01,500.500 INFO    ] 2026-10-25 23:18:01
[2026-10-25 23:18:01,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:18:01,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:18:01,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:18:01,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:18:01,911.911 INFO    ] time= 25/10/2026 23:18:01
[2026-10-25 23:18:01,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:18:01,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:18:02,002.002 INFO    ] No existing commands found in stream
[2026-10-25 23:18:07,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:18:07,015.015 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-25 23:18:11,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:18:11,183.183 INFO    ] Checking for system updates...
[2026-10-25 23:18:11,219.219 INFO    ] 200
[2026-10-25 23:18:11,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:11,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:11,277.277 INFO    ] No update needed
[2026-10-25 23:18:11,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 23:18:11,317.317 INFO    ] 200
[2026-10-25 23:18:11,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:11,359.359 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:18:11,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:11,421.421 INFO    ] No camera update needed
[2026-10-25 23:18:11,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:18:11,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:18:11,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:18:11,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:18:13,475.475 INFO    ] ================================================
[2026-10-25 23:18:13,490.490 INFO    ] Launching Daemon at Sun Oct 25 23:18:13 IST 2026
[2026-10-25 23:18:13,501.501 INFO    ] ================================================
[2026-10-25 23:18:14,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:18:14
[2026-10-25 23:18:14,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:18:15,091.091 INFO    ] Initializing speech engine...
[2026-10-25 23:18:15,101.101 INFO    ] 2026-10-25 23:18:15
[2026-10-25 23:18:15,388.388 INFO    ] 2026-10-25 23:18:15
[2026-10-25 23:18:15,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:18:15,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:18:15,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:18:15,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:18:15,871.871 INFO    ] time= 25/10/2026 23:18:15
[2026-10-25 23:18:15,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:18:15,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:18:16,081.081 INFO    ] No existing commands found in stream
[2026-10-25 23:18:21,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:18:21,106.106 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 23:18:24,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:18:24,017.017 INFO    ] Checking for system updates...
[2026-10-25 23:18:24,054.054 INFO    ] 200
[2026-10-25 23:18:24,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:24,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:24,113.113 INFO    ] No update needed
[2026-10-25 23:18:24,116.116 INFO    ] Checking for camera pi updates...
[2026-10-25 23:18:24,150.150 INFO    ] 200
[2026-10-25 23:18:24,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:24,199.199 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:18:24,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:24,260.260 INFO    ] No camera update needed
[2026-10-25 23:18:24,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:18:24,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:18:24,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:18:24,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:18:26,319.319 INFO    ] ================================================
[2026-10-25 23:18:26,335.335 INFO    ] Launching Daemon at Sun Oct 25 23:18:26 IST 2026
[2026-10-25 23:18:26,346.346 INFO    ] ================================================
[2026-10-25 23:18:26,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:18:26
[2026-10-25 23:18:27,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:18:27,796.796 INFO    ] Initializing speech engine...
[2026-10-25 23:18:27,807.807 INFO    ] 2026-10-25 23:18:27
[2026-10-25 23:18:28,053.053 INFO    ] 2026-10-25 23:18:28
[2026-10-25 23:18:28,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:18:28,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:18:28,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:18:28,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:18:28,509.509 INFO    ] time= 25/10/2026 23:18:28
[2026-10-25 23:18:28,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:18:28,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:18:28,707.707 INFO    ] No existing commands found in stream
[2026-10-25 23:18:33,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:18:33,723.723 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-25 23:18:35,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:18:35,742.742 INFO    ] Checking for system updates...
[2026-10-25 23:18:35,785.785 INFO    ] 200
[2026-10-25 23:18:35,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:35,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:18:35,865.865 INFO    ] No update needed
[2026-10-25 23:18:35,867.867 INFO    ] Checking for camera pi updates...
[2026-10-25 23:18:35,905.905 INFO    ] 200
[2026-10-25 23:18:35,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:35,957.957 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:18:36,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:18:36,012.012 INFO    ] No camera update needed
[2026-10-25 23:18:36,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:18:36,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:18:36,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:18:36,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:18:38,071.071 INFO    ] ================================================
[2026-10-25 23:18:38,086.086 INFO    ] Launching Daemon at Sun Oct 25 23:18:38 IST 2026
[2026-10-25 23:18:38,096.096 INFO    ] ================================================
[2026-10-25 23:18:38,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:18:38
[2026-10-25 23:18:39,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:18:39,525.525 INFO    ] Initializing speech engine...
[2026-10-25 23:18:39,532.532 INFO    ] 2026-10-25 23:18:39
[2026-10-25 23:18:39,822.822 INFO    ] 2026-10-25 23:18:39
[2026-10-25 23:18:39,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:18:40,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:18:40,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:18:40,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:18:40,237.237 INFO    ] time= 25/10/2026 23:18:40
[2026-10-25 23:18:40,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:18:40,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:18:40,321.321 INFO    ] No existing commands found in stream
[2026-10-25 23:18:45,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:18:45,337.337 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-25 23:18:46,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:18:46,176.176 INFO    ] Checking for system updates...
[2026-10-25 23:18:46,212.212 INFO    ] 200
[2026-10-25 23:18:46,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:46,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:46,276.276 INFO    ] No update needed
[2026-10-25 23:18:46,278.278 INFO    ] Checking for camera pi updates...
[2026-10-25 23:18:46,312.312 INFO    ] 200
[2026-10-25 23:18:46,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:46,359.359 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:18:46,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:18:46,532.532 INFO    ] No camera update needed
[2026-10-25 23:18:46,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:18:46,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:18:46,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:18:46,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:18:48,587.587 INFO    ] ================================================
[2026-10-25 23:18:48,602.602 INFO    ] Launching Daemon at Sun Oct 25 23:18:48 IST 2026
[2026-10-25 23:18:48,613.613 INFO    ] ================================================
[2026-10-25 23:18:49,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:18:49
[2026-10-25 23:18:49,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:18:50,043.043 INFO    ] Initializing speech engine...
[2026-10-25 23:18:50,048.048 INFO    ] 2026-10-25 23:18:50
[2026-10-25 23:18:50,346.346 INFO    ] 2026-10-25 23:18:50
[2026-10-25 23:18:50,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:18:50,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:18:50,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:18:50,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:18:50,760.760 INFO    ] time= 25/10/2026 23:18:50
[2026-10-25 23:18:50,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:18:50,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:18:50,923.923 INFO    ] No existing commands found in stream
[2026-10-25 23:18:55,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:18:55,946.946 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-25 23:18:57,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:18:57,417.417 INFO    ] Checking for system updates...
[2026-10-25 23:18:57,453.453 INFO    ] 200
[2026-10-25 23:18:57,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:57,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:18:57,518.518 INFO    ] No update needed
[2026-10-25 23:18:57,521.521 INFO    ] Checking for camera pi updates...
[2026-10-25 23:18:57,555.555 INFO    ] 200
[2026-10-25 23:18:57,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:18:57,599.599 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:18:57,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:18:57,650.650 INFO    ] No camera update needed
[2026-10-25 23:18:57,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:18:57,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:18:57,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:18:57,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:18:59,707.707 INFO    ] ================================================
[2026-10-25 23:18:59,722.722 INFO    ] Launching Daemon at Sun Oct 25 23:18:59 IST 2026
[2026-10-25 23:18:59,733.733 INFO    ] ================================================
[2026-10-25 23:19:00,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:00
[2026-10-25 23:19:00,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:01,135.135 INFO    ] Initializing speech engine...
[2026-10-25 23:19:01,141.141 INFO    ] 2026-10-25 23:19:01
[2026-10-25 23:19:01,435.435 INFO    ] 2026-10-25 23:19:01
[2026-10-25 23:19:01,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:01,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:01,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:19:01,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:19:01,808.808 INFO    ] time= 25/10/2026 23:19:01
[2026-10-25 23:19:01,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:19:01,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:19:01,887.887 INFO    ] No existing commands found in stream
[2026-10-25 23:19:06,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:19:06,935.935 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-25 23:19:09,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:19:09,457.457 INFO    ] Checking for system updates...
[2026-10-25 23:19:09,494.494 INFO    ] 200
[2026-10-25 23:19:09,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:09,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:09,552.552 INFO    ] No update needed
[2026-10-25 23:19:09,555.555 INFO    ] Checking for camera pi updates...
[2026-10-25 23:19:09,592.592 INFO    ] 200
[2026-10-25 23:19:09,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:09,639.639 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:19:09,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:09,702.702 INFO    ] No camera update needed
[2026-10-25 23:19:09,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:19:09,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:19:09,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:19:09,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:19:11,759.759 INFO    ] ================================================
[2026-10-25 23:19:11,774.774 INFO    ] Launching Daemon at Sun Oct 25 23:19:11 IST 2026
[2026-10-25 23:19:11,785.785 INFO    ] ================================================
[2026-10-25 23:19:12,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:12
[2026-10-25 23:19:12,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:13,218.218 INFO    ] Initializing speech engine...
[2026-10-25 23:19:13,234.234 INFO    ] 2026-10-25 23:19:13
[2026-10-25 23:19:13,512.512 INFO    ] 2026-10-25 23:19:13
[2026-10-25 23:19:13,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:13,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:13,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:19:13,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:19:13,898.898 INFO    ] time= 25/10/2026 23:19:13
[2026-10-25 23:19:13,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:19:13,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:19:13,996.996 INFO    ] No existing commands found in stream
[2026-10-25 23:19:19,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:19:19,012.012 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-25 23:19:20,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:19:20,400.400 INFO    ] Checking for system updates...
[2026-10-25 23:19:20,435.435 INFO    ] 200
[2026-10-25 23:19:20,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:20,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:20,494.494 INFO    ] No update needed
[2026-10-25 23:19:20,496.496 INFO    ] Checking for camera pi updates...
[2026-10-25 23:19:20,530.530 INFO    ] 200
[2026-10-25 23:19:20,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:20,573.573 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:19:20,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:20,627.627 INFO    ] No camera update needed
[2026-10-25 23:19:20,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:19:20,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:19:20,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:19:20,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:19:22,681.681 INFO    ] ================================================
[2026-10-25 23:19:22,696.696 INFO    ] Launching Daemon at Sun Oct 25 23:19:22 IST 2026
[2026-10-25 23:19:22,707.707 INFO    ] ================================================
[2026-10-25 23:19:23,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:23
[2026-10-25 23:19:23,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:24,138.138 INFO    ] Initializing speech engine...
[2026-10-25 23:19:24,143.143 INFO    ] 2026-10-25 23:19:24
[2026-10-25 23:19:24,430.430 INFO    ] 2026-10-25 23:19:24
[2026-10-25 23:19:24,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:24,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:24,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:19:24,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:19:24,903.903 INFO    ] time= 25/10/2026 23:19:24
[2026-10-25 23:19:24,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:19:25,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:19:25,098.098 INFO    ] No existing commands found in stream
[2026-10-25 23:19:30,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:19:30,113.113 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-25 23:19:31,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:19:31,984.984 INFO    ] Checking for system updates...
[2026-10-25 23:19:32,025.025 INFO    ] 200
[2026-10-25 23:19:32,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:32,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:32,104.104 INFO    ] No update needed
[2026-10-25 23:19:32,107.107 INFO    ] Checking for camera pi updates...
[2026-10-25 23:19:32,146.146 INFO    ] 200
[2026-10-25 23:19:32,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:32,197.197 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:19:32,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:19:32,249.249 INFO    ] No camera update needed
[2026-10-25 23:19:32,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:19:32,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:19:32,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:19:32,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:19:34,304.304 INFO    ] ================================================
[2026-10-25 23:19:34,319.319 INFO    ] Launching Daemon at Sun Oct 25 23:19:34 IST 2026
[2026-10-25 23:19:34,330.330 INFO    ] ================================================
[2026-10-25 23:19:34,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:34
[2026-10-25 23:19:35,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:35,883.883 INFO    ] Initializing speech engine...
[2026-10-25 23:19:35,894.894 INFO    ] 2026-10-25 23:19:35
[2026-10-25 23:19:36,176.176 INFO    ] 2026-10-25 23:19:36
[2026-10-25 23:19:36,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:36,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:36,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:19:36,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:19:36,660.660 INFO    ] time= 25/10/2026 23:19:36
[2026-10-25 23:19:36,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:19:36,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:19:36,844.844 INFO    ] No existing commands found in stream
[2026-10-25 23:19:41,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:19:41,869.869 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-25 23:19:44,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:19:44,879.879 INFO    ] Checking for system updates...
[2026-10-25 23:19:44,919.919 INFO    ] 200
[2026-10-25 23:19:44,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:44,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:19:44,979.979 INFO    ] No update needed
[2026-10-25 23:19:44,981.981 INFO    ] Checking for camera pi updates...
[2026-10-25 23:19:45,017.017 INFO    ] 200
[2026-10-25 23:19:45,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:45,060.060 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:19:45,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:19:45,116.116 INFO    ] No camera update needed
[2026-10-25 23:19:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:19:45,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:19:45,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:19:45,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:19:47,171.171 INFO    ] ================================================
[2026-10-25 23:19:47,186.186 INFO    ] Launching Daemon at Sun Oct 25 23:19:47 IST 2026
[2026-10-25 23:19:47,197.197 INFO    ] ================================================
[2026-10-25 23:19:47,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:47
[2026-10-25 23:19:48,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:48,628.628 INFO    ] Initializing speech engine...
[2026-10-25 23:19:48,644.644 INFO    ] 2026-10-25 23:19:48
[2026-10-25 23:19:48,923.923 INFO    ] 2026-10-25 23:19:48
[2026-10-25 23:19:48,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:49,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:49,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:19:49,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:19:49,323.323 INFO    ] time= 25/10/2026 23:19:49
[2026-10-25 23:19:49,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:19:49,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:19:49,408.408 INFO    ] No existing commands found in stream
[2026-10-25 23:19:54,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:19:54,446.446 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-25 23:19:55,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:19:55,643.643 INFO    ] Checking for system updates...
[2026-10-25 23:19:55,679.679 INFO    ] 200
[2026-10-25 23:19:55,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:55,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:19:55,737.737 INFO    ] No update needed
[2026-10-25 23:19:55,739.739 INFO    ] Checking for camera pi updates...
[2026-10-25 23:19:55,773.773 INFO    ] 200
[2026-10-25 23:19:55,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:19:55,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:19:55,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:19:55,870.870 INFO    ] No camera update needed
[2026-10-25 23:19:55,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:19:55,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:19:55,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:19:55,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:19:57,924.924 INFO    ] ================================================
[2026-10-25 23:19:57,939.939 INFO    ] Launching Daemon at Sun Oct 25 23:19:57 IST 2026
[2026-10-25 23:19:57,949.949 INFO    ] ================================================
[2026-10-25 23:19:58,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:19:58
[2026-10-25 23:19:59,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:19:59,398.398 INFO    ] Initializing speech engine...
[2026-10-25 23:19:59,405.405 INFO    ] 2026-10-25 23:19:59
[2026-10-25 23:19:59,666.666 INFO    ] 2026-10-25 23:19:59
[2026-10-25 23:19:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:19:59,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:19:59,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:20:00,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:20:00,123.123 INFO    ] time= 25/10/2026 23:20:00
[2026-10-25 23:20:00,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:20:00,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:20:00,271.271 INFO    ] No existing commands found in stream
[2026-10-25 23:20:05,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:20:05,285.285 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-25 23:20:08,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:20:08,604.604 INFO    ] Checking for system updates...
[2026-10-25 23:20:08,644.644 INFO    ] 200
[2026-10-25 23:20:08,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:08,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:20:08,708.708 INFO    ] No update needed
[2026-10-25 23:20:08,710.710 INFO    ] Checking for camera pi updates...
[2026-10-25 23:20:08,744.744 INFO    ] 200
[2026-10-25 23:20:08,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:08,787.787 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:20:08,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:20:08,837.837 INFO    ] No camera update needed
[2026-10-25 23:20:08,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:20:08,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:20:08,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:20:08,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:20:10,896.896 INFO    ] ================================================
[2026-10-25 23:20:10,912.912 INFO    ] Launching Daemon at Sun Oct 25 23:20:10 IST 2026
[2026-10-25 23:20:10,923.923 INFO    ] ================================================
[2026-10-25 23:20:11,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:20:11
[2026-10-25 23:20:12,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:20:12,414.414 INFO    ] Initializing speech engine...
[2026-10-25 23:20:12,422.422 INFO    ] 2026-10-25 23:20:12
[2026-10-25 23:20:12,682.682 INFO    ] 2026-10-25 23:20:12
[2026-10-25 23:20:12,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:20:13,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:20:13,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:20:13,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:20:13,238.238 INFO    ] time= 25/10/2026 23:20:13
[2026-10-25 23:20:13,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:20:13,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:20:13,375.375 INFO    ] No existing commands found in stream
[2026-10-25 23:20:18,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:20:18,403.403 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-25 23:20:21,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:20:21,367.367 INFO    ] Checking for system updates...
[2026-10-25 23:20:21,403.403 INFO    ] 200
[2026-10-25 23:20:21,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:21,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:21,461.461 INFO    ] No update needed
[2026-10-25 23:20:21,463.463 INFO    ] Checking for camera pi updates...
[2026-10-25 23:20:21,498.498 INFO    ] 200
[2026-10-25 23:20:21,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:21,542.542 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:20:21,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:21,591.591 INFO    ] No camera update needed
[2026-10-25 23:20:21,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:20:21,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:20:21,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:20:21,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:20:23,648.648 INFO    ] ================================================
[2026-10-25 23:20:23,663.663 INFO    ] Launching Daemon at Sun Oct 25 23:20:23 IST 2026
[2026-10-25 23:20:23,673.673 INFO    ] ================================================
[2026-10-25 23:20:24,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:20:24
[2026-10-25 23:20:24,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:20:25,082.082 INFO    ] Initializing speech engine...
[2026-10-25 23:20:25,097.097 INFO    ] 2026-10-25 23:20:25
[2026-10-25 23:20:25,363.363 INFO    ] 2026-10-25 23:20:25
[2026-10-25 23:20:25,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:20:25,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:20:25,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:20:25,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:20:25,741.741 INFO    ] time= 25/10/2026 23:20:25
[2026-10-25 23:20:25,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:20:25,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:20:25,911.911 INFO    ] No existing commands found in stream
[2026-10-25 23:20:30,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:20:30,939.939 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-25 23:20:35,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:20:35,192.192 INFO    ] Checking for system updates...
[2026-10-25 23:20:35,232.232 INFO    ] 200
[2026-10-25 23:20:35,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:35,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:35,296.296 INFO    ] No update needed
[2026-10-25 23:20:35,299.299 INFO    ] Checking for camera pi updates...
[2026-10-25 23:20:35,333.333 INFO    ] 200
[2026-10-25 23:20:35,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:35,377.377 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:20:35,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:35,435.435 INFO    ] No camera update needed
[2026-10-25 23:20:35,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:20:35,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:20:35,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:20:35,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:20:37,492.492 INFO    ] ================================================
[2026-10-25 23:20:37,509.509 INFO    ] Launching Daemon at Sun Oct 25 23:20:37 IST 2026
[2026-10-25 23:20:37,520.520 INFO    ] ================================================
[2026-10-25 23:20:38,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:20:38
[2026-10-25 23:20:38,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:20:39,139.139 INFO    ] Initializing speech engine...
[2026-10-25 23:20:39,146.146 INFO    ] 2026-10-25 23:20:39
[2026-10-25 23:20:39,422.422 INFO    ] 2026-10-25 23:20:39
[2026-10-25 23:20:39,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:20:39,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:20:39,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:20:39,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:20:39,909.909 INFO    ] time= 25/10/2026 23:20:39
[2026-10-25 23:20:39,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:20:39,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:20:40,094.094 INFO    ] No existing commands found in stream
[2026-10-25 23:20:45,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:20:45,126.126 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-25 23:20:48,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:20:48,935.935 INFO    ] Checking for system updates...
[2026-10-25 23:20:48,976.976 INFO    ] 200
[2026-10-25 23:20:48,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:49,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:49,047.047 INFO    ] No update needed
[2026-10-25 23:20:49,050.050 INFO    ] Checking for camera pi updates...
[2026-10-25 23:20:49,085.085 INFO    ] 200
[2026-10-25 23:20:49,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:20:49,129.129 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:20:49,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:20:49,290.290 INFO    ] No camera update needed
[2026-10-25 23:20:49,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:20:49,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:20:49,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:20:49,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:20:51,349.349 INFO    ] ================================================
[2026-10-25 23:20:51,365.365 INFO    ] Launching Daemon at Sun Oct 25 23:20:51 IST 2026
[2026-10-25 23:20:51,376.376 INFO    ] ================================================
[2026-10-25 23:20:51,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:20:51
[2026-10-25 23:20:52,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:20:52,842.842 INFO    ] Initializing speech engine...
[2026-10-25 23:20:52,855.855 INFO    ] 2026-10-25 23:20:52
[2026-10-25 23:20:53,132.132 INFO    ] 2026-10-25 23:20:53
[2026-10-25 23:20:53,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:20:53,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:20:53,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:20:53,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:20:53,671.671 INFO    ] time= 25/10/2026 23:20:53
[2026-10-25 23:20:53,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:20:53,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:20:53,812.812 INFO    ] No existing commands found in stream
[2026-10-25 23:20:58,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:20:58,838.838 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-25 23:21:02,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:21:02,637.637 INFO    ] Checking for system updates...
[2026-10-25 23:21:02,685.685 INFO    ] 200
[2026-10-25 23:21:02,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:02,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:02,785.785 INFO    ] No update needed
[2026-10-25 23:21:02,788.788 INFO    ] Checking for camera pi updates...
[2026-10-25 23:21:02,835.835 INFO    ] 200
[2026-10-25 23:21:02,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:02,885.885 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:21:02,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:02,925.925 INFO    ] No camera update needed
[2026-10-25 23:21:02,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:21:02,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:21:02,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:21:02,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:21:04,982.982 INFO    ] ================================================
[2026-10-25 23:21:05,997.997 INFO    ] Launching Daemon at Sun Oct 25 23:21:04 IST 2026
[2026-10-25 23:21:05,008.008 INFO    ] ================================================
[2026-10-25 23:21:05,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:21:05
[2026-10-25 23:21:06,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:21:06,468.468 INFO    ] Initializing speech engine...
[2026-10-25 23:21:06,486.486 INFO    ] 2026-10-25 23:21:06
[2026-10-25 23:21:06,733.733 INFO    ] 2026-10-25 23:21:06
[2026-10-25 23:21:06,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:21:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:21:06,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:21:07,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:21:07,104.104 INFO    ] time= 25/10/2026 23:21:07
[2026-10-25 23:21:07,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:21:07,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:21:07,264.264 INFO    ] No existing commands found in stream
[2026-10-25 23:21:12,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:21:12,292.292 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-25 23:21:14,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:21:14,263.263 INFO    ] Checking for system updates...
[2026-10-25 23:21:14,303.303 INFO    ] 200
[2026-10-25 23:21:14,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:14,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:14,368.368 INFO    ] No update needed
[2026-10-25 23:21:14,371.371 INFO    ] Checking for camera pi updates...
[2026-10-25 23:21:14,408.408 INFO    ] 200
[2026-10-25 23:21:14,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:14,455.455 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:21:14,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:14,516.516 INFO    ] No camera update needed
[2026-10-25 23:21:14,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:21:14,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:21:14,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:21:14,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:21:16,571.571 INFO    ] ================================================
[2026-10-25 23:21:16,586.586 INFO    ] Launching Daemon at Sun Oct 25 23:21:16 IST 2026
[2026-10-25 23:21:16,597.597 INFO    ] ================================================
[2026-10-25 23:21:17,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:21:17
[2026-10-25 23:21:17,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:21:18,036.036 INFO    ] Initializing speech engine...
[2026-10-25 23:21:18,055.055 INFO    ] 2026-10-25 23:21:18
[2026-10-25 23:21:18,302.302 INFO    ] 2026-10-25 23:21:18
[2026-10-25 23:21:18,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:21:18,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:21:18,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:21:18,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:21:18,671.671 INFO    ] time= 25/10/2026 23:21:18
[2026-10-25 23:21:18,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:21:18,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:21:18,840.840 INFO    ] No existing commands found in stream
[2026-10-25 23:21:23,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:21:23,868.868 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-25 23:21:28,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:21:28,016.016 INFO    ] Checking for system updates...
[2026-10-25 23:21:28,052.052 INFO    ] 200
[2026-10-25 23:21:28,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:28,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:28,116.116 INFO    ] No update needed
[2026-10-25 23:21:28,119.119 INFO    ] Checking for camera pi updates...
[2026-10-25 23:21:28,154.154 INFO    ] 200
[2026-10-25 23:21:28,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:28,198.198 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:21:28,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:28,254.254 INFO    ] No camera update needed
[2026-10-25 23:21:28,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:21:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:21:28,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:21:28,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:21:30,312.312 INFO    ] ================================================
[2026-10-25 23:21:30,327.327 INFO    ] Launching Daemon at Sun Oct 25 23:21:30 IST 2026
[2026-10-25 23:21:30,347.347 INFO    ] ================================================
[2026-10-25 23:21:30,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:21:30
[2026-10-25 23:21:31,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:21:31,966.966 INFO    ] Initializing speech engine...
[2026-10-25 23:21:31,978.978 INFO    ] 2026-10-25 23:21:31
[2026-10-25 23:21:32,307.307 INFO    ] 2026-10-25 23:21:32
[2026-10-25 23:21:32,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:21:32,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:21:32,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:21:32,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:21:32,851.851 INFO    ] time= 25/10/2026 23:21:32
[2026-10-25 23:21:32,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:21:32,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:21:32,963.963 INFO    ] No existing commands found in stream
[2026-10-25 23:21:37,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:21:38,002.002 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-25 23:21:43,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:21:43,206.206 INFO    ] Checking for system updates...
[2026-10-25 23:21:43,272.272 INFO    ] 200
[2026-10-25 23:21:43,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:43,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:43,371.371 INFO    ] No update needed
[2026-10-25 23:21:43,373.373 INFO    ] Checking for camera pi updates...
[2026-10-25 23:21:43,413.413 INFO    ] 200
[2026-10-25 23:21:43,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:43,462.462 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:21:43,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:43,528.528 INFO    ] No camera update needed
[2026-10-25 23:21:43,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:21:43,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:21:43,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:21:43,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:21:45,584.584 INFO    ] ================================================
[2026-10-25 23:21:45,599.599 INFO    ] Launching Daemon at Sun Oct 25 23:21:45 IST 2026
[2026-10-25 23:21:45,609.609 INFO    ] ================================================
[2026-10-25 23:21:46,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:21:46
[2026-10-25 23:21:46,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:21:47,024.024 INFO    ] Initializing speech engine...
[2026-10-25 23:21:47,034.034 INFO    ] 2026-10-25 23:21:47
[2026-10-25 23:21:47,282.282 INFO    ] 2026-10-25 23:21:47
[2026-10-25 23:21:47,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:21:47,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:21:47,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:21:47,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:21:47,765.765 INFO    ] time= 25/10/2026 23:21:47
[2026-10-25 23:21:47,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:21:47,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:21:47,905.905 INFO    ] No existing commands found in stream
[2026-10-25 23:21:52,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:21:52,920.920 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 23:21:53,359.359 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:21:53,362.362 INFO    ] Checking for system updates...
[2026-10-25 23:21:53,401.401 INFO    ] 200
[2026-10-25 23:21:53,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:53,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:53,458.458 INFO    ] No update needed
[2026-10-25 23:21:53,461.461 INFO    ] Checking for camera pi updates...
[2026-10-25 23:21:53,495.495 INFO    ] 200
[2026-10-25 23:21:53,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:21:53,538.538 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:21:53,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:21:53,593.593 INFO    ] No camera update needed
[2026-10-25 23:21:53,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:21:53,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:21:53,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:21:53,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:21:55,651.651 INFO    ] ================================================
[2026-10-25 23:21:55,666.666 INFO    ] Launching Daemon at Sun Oct 25 23:21:55 IST 2026
[2026-10-25 23:21:55,677.677 INFO    ] ================================================
[2026-10-25 23:21:56,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:21:56
[2026-10-25 23:21:56,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:21:57,110.110 INFO    ] Initializing speech engine...
[2026-10-25 23:21:57,119.119 INFO    ] 2026-10-25 23:21:57
[2026-10-25 23:21:57,414.414 INFO    ] 2026-10-25 23:21:57
[2026-10-25 23:21:57,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:21:57,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:21:57,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:21:57,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:21:57,785.785 INFO    ] time= 25/10/2026 23:21:57
[2026-10-25 23:21:57,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:21:57,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:21:57,906.906 INFO    ] No existing commands found in stream
[2026-10-25 23:22:02,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:22:02,923.923 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-25 23:22:04,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:22:04,249.249 INFO    ] Checking for system updates...
[2026-10-25 23:22:04,286.286 INFO    ] 200
[2026-10-25 23:22:04,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:04,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:04,348.348 INFO    ] No update needed
[2026-10-25 23:22:04,351.351 INFO    ] Checking for camera pi updates...
[2026-10-25 23:22:04,385.385 INFO    ] 200
[2026-10-25 23:22:04,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:04,428.428 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:22:04,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:04,488.488 INFO    ] No camera update needed
[2026-10-25 23:22:04,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:22:04,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:22:04,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:22:04,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:22:06,549.549 INFO    ] ================================================
[2026-10-25 23:22:06,565.565 INFO    ] Launching Daemon at Sun Oct 25 23:22:06 IST 2026
[2026-10-25 23:22:06,576.576 INFO    ] ================================================
[2026-10-25 23:22:07,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:22:07
[2026-10-25 23:22:07,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:22:07,984.984 INFO    ] Initializing speech engine...
[2026-10-25 23:22:07,993.993 INFO    ] 2026-10-25 23:22:07
[2026-10-25 23:22:08,284.284 INFO    ] 2026-10-25 23:22:08
[2026-10-25 23:22:08,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:22:08,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:22:08,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:22:08,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:22:08,635.635 INFO    ] time= 25/10/2026 23:22:08
[2026-10-25 23:22:08,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:22:08,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:22:08,713.713 INFO    ] No existing commands found in stream
[2026-10-25 23:22:13,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:22:13,728.728 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 23:22:17,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:22:17,433.433 INFO    ] Checking for system updates...
[2026-10-25 23:22:17,474.474 INFO    ] 200
[2026-10-25 23:22:17,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:17,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:22:17,535.535 INFO    ] No update needed
[2026-10-25 23:22:17,538.538 INFO    ] Checking for camera pi updates...
[2026-10-25 23:22:17,576.576 INFO    ] 200
[2026-10-25 23:22:17,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:17,636.636 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:22:17,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:22:17,698.698 INFO    ] No camera update needed
[2026-10-25 23:22:17,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:22:17,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:22:17,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:22:17,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:22:19,753.753 INFO    ] ================================================
[2026-10-25 23:22:19,768.768 INFO    ] Launching Daemon at Sun Oct 25 23:22:19 IST 2026
[2026-10-25 23:22:19,779.779 INFO    ] ================================================
[2026-10-25 23:22:20,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:22:20
[2026-10-25 23:22:20,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:22:21,176.176 INFO    ] Initializing speech engine...
[2026-10-25 23:22:21,199.199 INFO    ] 2026-10-25 23:22:21
[2026-10-25 23:22:21,454.454 INFO    ] 2026-10-25 23:22:21
[2026-10-25 23:22:21,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:22:21,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:22:21,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:22:21,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:22:21,917.917 INFO    ] time= 25/10/2026 23:22:21
[2026-10-25 23:22:21,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:22:22,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:22:22,081.081 INFO    ] No existing commands found in stream
[2026-10-25 23:22:27,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:22:27,095.095 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 23:22:30,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:22:30,348.348 INFO    ] Checking for system updates...
[2026-10-25 23:22:30,384.384 INFO    ] 200
[2026-10-25 23:22:30,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:30,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:22:30,441.441 INFO    ] No update needed
[2026-10-25 23:22:30,443.443 INFO    ] Checking for camera pi updates...
[2026-10-25 23:22:30,478.478 INFO    ] 200
[2026-10-25 23:22:30,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:30,520.520 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:22:30,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:22:30,574.574 INFO    ] No camera update needed
[2026-10-25 23:22:30,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:22:30,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:22:30,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:22:30,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:22:32,628.628 INFO    ] ================================================
[2026-10-25 23:22:32,643.643 INFO    ] Launching Daemon at Sun Oct 25 23:22:32 IST 2026
[2026-10-25 23:22:32,654.654 INFO    ] ================================================
[2026-10-25 23:22:33,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:22:33
[2026-10-25 23:22:33,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:22:34,121.121 INFO    ] Initializing speech engine...
[2026-10-25 23:22:34,127.127 INFO    ] 2026-10-25 23:22:34
[2026-10-25 23:22:34,386.386 INFO    ] 2026-10-25 23:22:34
[2026-10-25 23:22:34,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:22:34,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:22:34,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:22:34,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:22:34,849.849 INFO    ] time= 25/10/2026 23:22:34
[2026-10-25 23:22:34,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:22:34,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:22:34,992.992 INFO    ] No existing commands found in stream
[2026-10-25 23:22:40,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:22:40,006.006 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-25 23:22:43,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:22:43,165.165 INFO    ] Checking for system updates...
[2026-10-25 23:22:43,206.206 INFO    ] 200
[2026-10-25 23:22:43,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:43,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:43,286.286 INFO    ] No update needed
[2026-10-25 23:22:43,289.289 INFO    ] Checking for camera pi updates...
[2026-10-25 23:22:43,327.327 INFO    ] 200
[2026-10-25 23:22:43,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:43,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:22:43,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:43,438.438 INFO    ] No camera update needed
[2026-10-25 23:22:43,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:22:43,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:22:43,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:22:43,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:22:45,497.497 INFO    ] ================================================
[2026-10-25 23:22:45,512.512 INFO    ] Launching Daemon at Sun Oct 25 23:22:45 IST 2026
[2026-10-25 23:22:45,523.523 INFO    ] ================================================
[2026-10-25 23:22:46,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:22:46
[2026-10-25 23:22:46,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:22:46,972.972 INFO    ] Initializing speech engine...
[2026-10-25 23:22:46,981.981 INFO    ] 2026-10-25 23:22:46
[2026-10-25 23:22:47,229.229 INFO    ] 2026-10-25 23:22:47
[2026-10-25 23:22:47,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:22:47,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:22:47,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:22:47,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:22:47,705.705 INFO    ] time= 25/10/2026 23:22:47
[2026-10-25 23:22:47,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:22:47,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:22:47,850.850 INFO    ] No existing commands found in stream
[2026-10-25 23:22:52,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:22:52,865.865 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 23:22:56,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:22:56,560.560 INFO    ] Checking for system updates...
[2026-10-25 23:22:56,597.597 INFO    ] 200
[2026-10-25 23:22:56,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:56,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:56,657.657 INFO    ] No update needed
[2026-10-25 23:22:56,659.659 INFO    ] Checking for camera pi updates...
[2026-10-25 23:22:56,697.697 INFO    ] 200
[2026-10-25 23:22:56,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:22:56,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:22:56,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:22:56,915.915 INFO    ] No camera update needed
[2026-10-25 23:22:56,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:22:56,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:22:56,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:22:56,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:22:58,973.973 INFO    ] ================================================
[2026-10-25 23:22:58,987.987 INFO    ] Launching Daemon at Sun Oct 25 23:22:58 IST 2026
[2026-10-25 23:22:59,998.998 INFO    ] ================================================
[2026-10-25 23:22:59,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:22:59
[2026-10-25 23:23:00,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:23:00,428.428 INFO    ] Initializing speech engine...
[2026-10-25 23:23:00,450.450 INFO    ] 2026-10-25 23:23:00
[2026-10-25 23:23:00,707.707 INFO    ] 2026-10-25 23:23:00
[2026-10-25 23:23:00,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:23:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:23:00,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:23:01,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:23:01,147.147 INFO    ] time= 25/10/2026 23:23:01
[2026-10-25 23:23:01,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:23:01,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:23:01,327.327 INFO    ] No existing commands found in stream
[2026-10-25 23:23:06,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:23:06,342.342 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-25 23:23:09,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:23:09,375.375 INFO    ] Checking for system updates...
[2026-10-25 23:23:09,411.411 INFO    ] 200
[2026-10-25 23:23:09,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:09,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:09,476.476 INFO    ] No update needed
[2026-10-25 23:23:09,479.479 INFO    ] Checking for camera pi updates...
[2026-10-25 23:23:09,517.517 INFO    ] 200
[2026-10-25 23:23:09,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:09,566.566 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:23:09,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:09,618.618 INFO    ] No camera update needed
[2026-10-25 23:23:09,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:23:09,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:23:09,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:23:09,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:23:11,674.674 INFO    ] ================================================
[2026-10-25 23:23:11,689.689 INFO    ] Launching Daemon at Sun Oct 25 23:23:11 IST 2026
[2026-10-25 23:23:11,700.700 INFO    ] ================================================
[2026-10-25 23:23:12,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:23:12
[2026-10-25 23:23:13,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:23:13,349.349 INFO    ] Initializing speech engine...
[2026-10-25 23:23:13,367.367 INFO    ] 2026-10-25 23:23:13
[2026-10-25 23:23:13,671.671 INFO    ] 2026-10-25 23:23:13
[2026-10-25 23:23:13,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:23:13,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:23:13,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:23:14,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:23:14,179.179 INFO    ] time= 25/10/2026 23:23:14
[2026-10-25 23:23:14,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:23:14,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:23:14,319.319 INFO    ] No existing commands found in stream
[2026-10-25 23:23:19,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:23:19,345.345 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-25 23:23:19,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:23:19,946.946 INFO    ] Checking for system updates...
[2026-10-25 23:23:19,983.983 INFO    ] 200
[2026-10-25 23:23:19,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:20,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:20,051.051 INFO    ] No update needed
[2026-10-25 23:23:20,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 23:23:20,094.094 INFO    ] 200
[2026-10-25 23:23:20,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:20,144.144 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:23:20,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:20,204.204 INFO    ] No camera update needed
[2026-10-25 23:23:20,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:23:20,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:23:20,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:23:20,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:23:22,264.264 INFO    ] ================================================
[2026-10-25 23:23:22,279.279 INFO    ] Launching Daemon at Sun Oct 25 23:23:22 IST 2026
[2026-10-25 23:23:22,290.290 INFO    ] ================================================
[2026-10-25 23:23:22,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:23:22
[2026-10-25 23:23:23,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:23:23,725.725 INFO    ] Initializing speech engine...
[2026-10-25 23:23:23,734.734 INFO    ] 2026-10-25 23:23:23
[2026-10-25 23:23:23,995.995 INFO    ] 2026-10-25 23:23:23
[2026-10-25 23:23:24,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:23:24,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:23:24,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:23:24,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:23:24,480.480 INFO    ] time= 25/10/2026 23:23:24
[2026-10-25 23:23:24,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:23:24,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:23:24,673.673 INFO    ] No existing commands found in stream
[2026-10-25 23:23:29,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:23:29,703.703 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 23:23:33,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:23:33,866.866 INFO    ] Checking for system updates...
[2026-10-25 23:23:33,907.907 INFO    ] 200
[2026-10-25 23:23:33,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:33,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:33,966.966 INFO    ] No update needed
[2026-10-25 23:23:33,968.968 INFO    ] Checking for camera pi updates...
[2026-10-25 23:23:34,006.006 INFO    ] 200
[2026-10-25 23:23:34,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:34,050.050 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:23:34,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:34,113.113 INFO    ] No camera update needed
[2026-10-25 23:23:34,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:23:34,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:23:34,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:23:34,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:23:36,169.169 INFO    ] ================================================
[2026-10-25 23:23:36,184.184 INFO    ] Launching Daemon at Sun Oct 25 23:23:36 IST 2026
[2026-10-25 23:23:36,194.194 INFO    ] ================================================
[2026-10-25 23:23:36,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:23:36
[2026-10-25 23:23:37,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:23:37,642.642 INFO    ] Initializing speech engine...
[2026-10-25 23:23:37,648.648 INFO    ] 2026-10-25 23:23:37
[2026-10-25 23:23:37,924.924 INFO    ] 2026-10-25 23:23:37
[2026-10-25 23:23:37,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:23:38,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:23:38,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:23:38,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:23:38,395.395 INFO    ] time= 25/10/2026 23:23:38
[2026-10-25 23:23:38,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:23:38,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:23:38,564.564 INFO    ] No existing commands found in stream
[2026-10-25 23:23:43,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:23:43,581.581 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-25 23:23:45,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:23:45,832.832 INFO    ] Checking for system updates...
[2026-10-25 23:23:45,874.874 INFO    ] 200
[2026-10-25 23:23:45,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:45,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:45,944.944 INFO    ] No update needed
[2026-10-25 23:23:45,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 23:23:45,988.988 INFO    ] 200
[2026-10-25 23:23:45,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:46,044.044 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:23:46,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:46,110.110 INFO    ] No camera update needed
[2026-10-25 23:23:46,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:23:46,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:23:46,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:23:46,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:23:48,169.169 INFO    ] ================================================
[2026-10-25 23:23:48,185.185 INFO    ] Launching Daemon at Sun Oct 25 23:23:48 IST 2026
[2026-10-25 23:23:48,196.196 INFO    ] ================================================
[2026-10-25 23:23:48,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:23:48
[2026-10-25 23:23:49,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:23:49,668.668 INFO    ] Initializing speech engine...
[2026-10-25 23:23:49,679.679 INFO    ] 2026-10-25 23:23:49
[2026-10-25 23:23:49,931.931 INFO    ] 2026-10-25 23:23:49
[2026-10-25 23:23:49,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:23:50,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:23:50,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:23:50,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:23:50,423.423 INFO    ] time= 25/10/2026 23:23:50
[2026-10-25 23:23:50,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:23:50,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:23:50,604.604 INFO    ] No existing commands found in stream
[2026-10-25 23:23:55,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:23:55,643.643 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-25 23:23:58,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:23:58,078.078 INFO    ] Checking for system updates...
[2026-10-25 23:23:58,116.116 INFO    ] 200
[2026-10-25 23:23:58,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:58,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:58,178.178 INFO    ] No update needed
[2026-10-25 23:23:58,181.181 INFO    ] Checking for camera pi updates...
[2026-10-25 23:23:58,217.217 INFO    ] 200
[2026-10-25 23:23:58,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:23:58,267.267 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:23:58,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:23:58,321.321 INFO    ] No camera update needed
[2026-10-25 23:23:58,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:23:58,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:23:58,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:23:58,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:24:00,376.376 INFO    ] ================================================
[2026-10-25 23:24:00,391.391 INFO    ] Launching Daemon at Sun Oct 25 23:24:00 IST 2026
[2026-10-25 23:24:00,408.408 INFO    ] ================================================
[2026-10-25 23:24:00,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:24:00
[2026-10-25 23:24:01,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:24:02,190.190 INFO    ] Initializing speech engine...
[2026-10-25 23:24:02,233.233 INFO    ] 2026-10-25 23:24:02
[2026-10-25 23:24:02,597.597 INFO    ] 2026-10-25 23:24:02
[2026-10-25 23:24:02,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:24:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:24:02,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:24:03,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:24:03,098.098 INFO    ] time= 25/10/2026 23:24:03
[2026-10-25 23:24:03,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:24:03,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:24:03,158.158 INFO    ] No existing commands found in stream
[2026-10-25 23:24:08,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:24:08,170.170 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-25 23:24:13,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:24:13,571.571 INFO    ] Checking for system updates...
[2026-10-25 23:24:13,614.614 INFO    ] 200
[2026-10-25 23:24:13,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:13,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:13,682.682 INFO    ] No update needed
[2026-10-25 23:24:13,685.685 INFO    ] Checking for camera pi updates...
[2026-10-25 23:24:13,719.719 INFO    ] 200
[2026-10-25 23:24:13,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:13,766.766 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:24:13,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:13,824.824 INFO    ] No camera update needed
[2026-10-25 23:24:13,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:24:13,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:24:13,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:24:13,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:24:15,881.881 INFO    ] ================================================
[2026-10-25 23:24:15,896.896 INFO    ] Launching Daemon at Sun Oct 25 23:24:15 IST 2026
[2026-10-25 23:24:15,907.907 INFO    ] ================================================
[2026-10-25 23:24:16,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:24:16
[2026-10-25 23:24:17,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:24:17,304.304 INFO    ] Initializing speech engine...
[2026-10-25 23:24:17,327.327 INFO    ] 2026-10-25 23:24:17
[2026-10-25 23:24:17,578.578 INFO    ] 2026-10-25 23:24:17
[2026-10-25 23:24:17,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:24:17,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:24:17,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:24:17,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:24:17,946.946 INFO    ] time= 25/10/2026 23:24:17
[2026-10-25 23:24:17,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:24:18,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:24:18,114.114 INFO    ] No existing commands found in stream
[2026-10-25 23:24:23,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:24:23,147.147 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 23:24:24,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:24:24,778.778 INFO    ] Checking for system updates...
[2026-10-25 23:24:24,814.814 INFO    ] 200
[2026-10-25 23:24:24,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:24,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:24,879.879 INFO    ] No update needed
[2026-10-25 23:24:24,882.882 INFO    ] Checking for camera pi updates...
[2026-10-25 23:24:24,917.917 INFO    ] 200
[2026-10-25 23:24:24,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:24,960.960 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:24:25,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:25,026.026 INFO    ] No camera update needed
[2026-10-25 23:24:25,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:24:25,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:24:25,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:24:25,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:24:27,085.085 INFO    ] ================================================
[2026-10-25 23:24:27,100.100 INFO    ] Launching Daemon at Sun Oct 25 23:24:27 IST 2026
[2026-10-25 23:24:27,111.111 INFO    ] ================================================
[2026-10-25 23:24:27,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:24:27
[2026-10-25 23:24:28,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:24:28,767.767 INFO    ] Initializing speech engine...
[2026-10-25 23:24:28,779.779 INFO    ] 2026-10-25 23:24:28
[2026-10-25 23:24:29,089.089 INFO    ] 2026-10-25 23:24:29
[2026-10-25 23:24:29,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:24:29,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:24:29,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:24:29,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:24:29,598.598 INFO    ] time= 25/10/2026 23:24:29
[2026-10-25 23:24:29,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:24:29,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:24:29,749.749 INFO    ] No existing commands found in stream
[2026-10-25 23:24:34,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:24:34,767.767 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-25 23:24:35,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:24:35,878.878 INFO    ] Checking for system updates...
[2026-10-25 23:24:35,916.916 INFO    ] 200
[2026-10-25 23:24:35,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:35,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:35,975.975 INFO    ] No update needed
[2026-10-25 23:24:35,978.978 INFO    ] Checking for camera pi updates...
[2026-10-25 23:24:36,016.016 INFO    ] 200
[2026-10-25 23:24:36,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:36,065.065 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:24:36,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:36,114.114 INFO    ] No camera update needed
[2026-10-25 23:24:36,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:24:36,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:24:36,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:24:36,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:24:38,171.171 INFO    ] ================================================
[2026-10-25 23:24:38,187.187 INFO    ] Launching Daemon at Sun Oct 25 23:24:38 IST 2026
[2026-10-25 23:24:38,200.200 INFO    ] ================================================
[2026-10-25 23:24:38,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:24:38
[2026-10-25 23:24:39,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:24:39,857.857 INFO    ] Initializing speech engine...
[2026-10-25 23:24:39,869.869 INFO    ] 2026-10-25 23:24:39
[2026-10-25 23:24:40,180.180 INFO    ] 2026-10-25 23:24:40
[2026-10-25 23:24:40,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:24:40,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:24:40,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:24:40,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:24:40,683.683 INFO    ] time= 25/10/2026 23:24:40
[2026-10-25 23:24:40,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:24:40,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:24:40,839.839 INFO    ] No existing commands found in stream
[2026-10-25 23:24:45,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:24:45,867.867 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 23:24:46,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:24:46,837.837 INFO    ] Checking for system updates...
[2026-10-25 23:24:46,875.875 INFO    ] 200
[2026-10-25 23:24:46,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:46,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:24:46,943.943 INFO    ] No update needed
[2026-10-25 23:24:46,946.946 INFO    ] Checking for camera pi updates...
[2026-10-25 23:24:46,984.984 INFO    ] 200
[2026-10-25 23:24:46,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:47,028.028 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:24:47,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:24:47,085.085 INFO    ] No camera update needed
[2026-10-25 23:24:47,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:24:47,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:24:47,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:24:47,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:24:49,143.143 INFO    ] ================================================
[2026-10-25 23:24:49,158.158 INFO    ] Launching Daemon at Sun Oct 25 23:24:49 IST 2026
[2026-10-25 23:24:49,170.170 INFO    ] ================================================
[2026-10-25 23:24:49,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:24:49
[2026-10-25 23:24:50,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:24:50,837.837 INFO    ] Initializing speech engine...
[2026-10-25 23:24:50,852.852 INFO    ] 2026-10-25 23:24:50
[2026-10-25 23:24:51,121.121 INFO    ] 2026-10-25 23:24:51
[2026-10-25 23:24:51,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:24:51,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:24:51,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:24:51,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:24:51,488.488 INFO    ] time= 25/10/2026 23:24:51
[2026-10-25 23:24:51,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:24:51,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:24:51,616.616 INFO    ] No existing commands found in stream
[2026-10-25 23:24:56,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:24:56,632.632 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-25 23:24:58,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:24:58,974.974 INFO    ] Checking for system updates...
[2026-10-25 23:24:59,011.011 INFO    ] 200
[2026-10-25 23:24:59,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:59,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:59,069.069 INFO    ] No update needed
[2026-10-25 23:24:59,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 23:24:59,110.110 INFO    ] 200
[2026-10-25 23:24:59,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:24:59,154.154 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:24:59,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:24:59,328.328 INFO    ] No camera update needed
[2026-10-25 23:24:59,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:24:59,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:24:59,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:24:59,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:25:01,385.385 INFO    ] ================================================
[2026-10-25 23:25:01,402.402 INFO    ] Launching Daemon at Sun Oct 25 23:25:01 IST 2026
[2026-10-25 23:25:01,413.413 INFO    ] ================================================
[2026-10-25 23:25:02,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:25:02
[2026-10-25 23:25:02,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:25:03,281.281 INFO    ] Initializing speech engine...
[2026-10-25 23:25:03,290.290 INFO    ] 2026-10-25 23:25:03
[2026-10-25 23:25:03,638.638 INFO    ] 2026-10-25 23:25:03
[2026-10-25 23:25:03,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:25:03,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:25:03,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:25:03,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:25:03,986.986 INFO    ] time= 25/10/2026 23:25:03
[2026-10-25 23:25:04,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:25:04,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:25:04,081.081 INFO    ] No existing commands found in stream
[2026-10-25 23:25:09,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:25:09,094.094 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-25 23:25:13,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:25:13,206.206 INFO    ] Checking for system updates...
[2026-10-25 23:25:13,253.253 INFO    ] 200
[2026-10-25 23:25:13,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:13,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:13,324.324 INFO    ] No update needed
[2026-10-25 23:25:13,329.329 INFO    ] Checking for camera pi updates...
[2026-10-25 23:25:13,371.371 INFO    ] 200
[2026-10-25 23:25:13,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:13,420.420 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:25:13,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:13,471.471 INFO    ] No camera update needed
[2026-10-25 23:25:13,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:25:13,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:25:13,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:25:13,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:25:15,529.529 INFO    ] ================================================
[2026-10-25 23:25:15,545.545 INFO    ] Launching Daemon at Sun Oct 25 23:25:15 IST 2026
[2026-10-25 23:25:15,556.556 INFO    ] ================================================
[2026-10-25 23:25:16,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:25:16
[2026-10-25 23:25:16,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:25:17,003.003 INFO    ] Initializing speech engine...
[2026-10-25 23:25:17,008.008 INFO    ] 2026-10-25 23:25:17
[2026-10-25 23:25:17,262.262 INFO    ] 2026-10-25 23:25:17
[2026-10-25 23:25:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:25:17,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:25:17,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:25:17,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:25:17,625.625 INFO    ] time= 25/10/2026 23:25:17
[2026-10-25 23:25:17,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:25:17,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:25:17,702.702 INFO    ] No existing commands found in stream
[2026-10-25 23:25:22,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:25:22,720.720 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-25 23:25:25,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:25:25,281.281 INFO    ] Checking for system updates...
[2026-10-25 23:25:25,322.322 INFO    ] 200
[2026-10-25 23:25:25,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:25,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:25,380.380 INFO    ] No update needed
[2026-10-25 23:25:25,383.383 INFO    ] Checking for camera pi updates...
[2026-10-25 23:25:25,424.424 INFO    ] 200
[2026-10-25 23:25:25,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:25,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:25:25,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:25,523.523 INFO    ] No camera update needed
[2026-10-25 23:25:25,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:25:25,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:25:25,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:25:25,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:25:27,579.579 INFO    ] ================================================
[2026-10-25 23:25:27,595.595 INFO    ] Launching Daemon at Sun Oct 25 23:25:27 IST 2026
[2026-10-25 23:25:27,607.607 INFO    ] ================================================
[2026-10-25 23:25:28,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:25:28
[2026-10-25 23:25:28,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:25:29,003.003 INFO    ] Initializing speech engine...
[2026-10-25 23:25:29,011.011 INFO    ] 2026-10-25 23:25:29
[2026-10-25 23:25:29,312.312 INFO    ] 2026-10-25 23:25:29
[2026-10-25 23:25:29,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:25:29,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:25:29,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:25:29,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:25:29,693.693 INFO    ] time= 25/10/2026 23:25:29
[2026-10-25 23:25:29,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:25:29,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:25:29,819.819 INFO    ] No existing commands found in stream
[2026-10-25 23:25:34,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:25:34,834.834 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-25 23:25:38,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:25:38,550.550 INFO    ] Checking for system updates...
[2026-10-25 23:25:38,586.586 INFO    ] 200
[2026-10-25 23:25:38,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:38,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:38,652.652 INFO    ] No update needed
[2026-10-25 23:25:38,654.654 INFO    ] Checking for camera pi updates...
[2026-10-25 23:25:38,692.692 INFO    ] 200
[2026-10-25 23:25:38,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:38,734.734 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:25:38,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:25:38,849.849 INFO    ] No camera update needed
[2026-10-25 23:25:38,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:25:38,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:25:38,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:25:38,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:25:40,904.904 INFO    ] ================================================
[2026-10-25 23:25:40,919.919 INFO    ] Launching Daemon at Sun Oct 25 23:25:40 IST 2026
[2026-10-25 23:25:40,929.929 INFO    ] ================================================
[2026-10-25 23:25:41,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:25:41
[2026-10-25 23:25:42,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:25:42,348.348 INFO    ] Initializing speech engine...
[2026-10-25 23:25:42,357.357 INFO    ] 2026-10-25 23:25:42
[2026-10-25 23:25:42,601.601 INFO    ] 2026-10-25 23:25:42
[2026-10-25 23:25:42,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:25:43,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:25:43,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:25:43,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:25:43,324.324 INFO    ] time= 25/10/2026 23:25:43
[2026-10-25 23:25:43,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:25:43,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:25:43,544.544 INFO    ] No existing commands found in stream
[2026-10-25 23:25:48,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:25:48,560.560 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 23:25:49,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:25:49,238.238 INFO    ] Checking for system updates...
[2026-10-25 23:25:49,280.280 INFO    ] 200
[2026-10-25 23:25:49,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:49,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:25:49,348.348 INFO    ] No update needed
[2026-10-25 23:25:49,350.350 INFO    ] Checking for camera pi updates...
[2026-10-25 23:25:49,389.389 INFO    ] 200
[2026-10-25 23:25:49,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:25:49,444.444 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:25:49,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:25:49,501.501 INFO    ] No camera update needed
[2026-10-25 23:25:49,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:25:49,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:25:49,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:25:49,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:25:51,560.560 INFO    ] ================================================
[2026-10-25 23:25:51,575.575 INFO    ] Launching Daemon at Sun Oct 25 23:25:51 IST 2026
[2026-10-25 23:25:51,586.586 INFO    ] ================================================
[2026-10-25 23:25:52,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:25:52
[2026-10-25 23:25:52,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:25:53,009.009 INFO    ] Initializing speech engine...
[2026-10-25 23:25:53,014.014 INFO    ] 2026-10-25 23:25:53
[2026-10-25 23:25:53,261.261 INFO    ] 2026-10-25 23:25:53
[2026-10-25 23:25:53,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:25:53,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:25:53,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:25:53,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:25:53,709.709 INFO    ] time= 25/10/2026 23:25:53
[2026-10-25 23:25:53,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:25:53,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:25:53,877.877 INFO    ] No existing commands found in stream
[2026-10-25 23:25:58,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:25:58,892.892 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-25 23:26:02,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:26:02,687.687 INFO    ] Checking for system updates...
[2026-10-25 23:26:02,736.736 INFO    ] 200
[2026-10-25 23:26:02,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:02,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:02,803.803 INFO    ] No update needed
[2026-10-25 23:26:02,806.806 INFO    ] Checking for camera pi updates...
[2026-10-25 23:26:02,844.844 INFO    ] 200
[2026-10-25 23:26:02,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:02,893.893 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:26:02,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:02,934.934 INFO    ] No camera update needed
[2026-10-25 23:26:02,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:26:02,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:26:02,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:26:02,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:26:05,998.998 INFO    ] ================================================
[2026-10-25 23:26:05,013.013 INFO    ] Launching Daemon at Sun Oct 25 23:26:05 IST 2026
[2026-10-25 23:26:05,024.024 INFO    ] ================================================
[2026-10-25 23:26:05,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:26:05
[2026-10-25 23:26:06,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:26:06,437.437 INFO    ] Initializing speech engine...
[2026-10-25 23:26:06,444.444 INFO    ] 2026-10-25 23:26:06
[2026-10-25 23:26:06,735.735 INFO    ] 2026-10-25 23:26:06
[2026-10-25 23:26:06,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:26:06,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:26:06,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:26:07,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:26:07,155.155 INFO    ] time= 25/10/2026 23:26:07
[2026-10-25 23:26:07,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:26:07,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:26:07,316.316 INFO    ] No existing commands found in stream
[2026-10-25 23:26:12,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:26:12,344.344 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 23:26:13,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:26:13,667.667 INFO    ] Checking for system updates...
[2026-10-25 23:26:13,703.703 INFO    ] 200
[2026-10-25 23:26:13,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:13,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:26:13,762.762 INFO    ] No update needed
[2026-10-25 23:26:13,764.764 INFO    ] Checking for camera pi updates...
[2026-10-25 23:26:13,798.798 INFO    ] 200
[2026-10-25 23:26:13,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:13,842.842 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:26:13,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:26:13,899.899 INFO    ] No camera update needed
[2026-10-25 23:26:13,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:26:13,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:26:13,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:26:13,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:26:15,954.954 INFO    ] ================================================
[2026-10-25 23:26:15,969.969 INFO    ] Launching Daemon at Sun Oct 25 23:26:15 IST 2026
[2026-10-25 23:26:15,980.980 INFO    ] ================================================
[2026-10-25 23:26:16,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:26:16
[2026-10-25 23:26:17,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:26:17,450.450 INFO    ] Initializing speech engine...
[2026-10-25 23:26:17,460.460 INFO    ] 2026-10-25 23:26:17
[2026-10-25 23:26:17,725.725 INFO    ] 2026-10-25 23:26:17
[2026-10-25 23:26:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:26:18,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:26:18,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:26:18,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:26:18,188.188 INFO    ] time= 25/10/2026 23:26:18
[2026-10-25 23:26:18,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:26:18,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:26:18,330.330 INFO    ] No existing commands found in stream
[2026-10-25 23:26:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:26:23,344.344 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 23:26:24,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:26:24,389.389 INFO    ] Checking for system updates...
[2026-10-25 23:26:24,426.426 INFO    ] 200
[2026-10-25 23:26:24,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:24,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:24,488.488 INFO    ] No update needed
[2026-10-25 23:26:24,491.491 INFO    ] Checking for camera pi updates...
[2026-10-25 23:26:24,529.529 INFO    ] 200
[2026-10-25 23:26:24,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:24,574.574 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:26:24,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:24,625.625 INFO    ] No camera update needed
[2026-10-25 23:26:24,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:26:24,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:26:24,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:26:24,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:26:26,686.686 INFO    ] ================================================
[2026-10-25 23:26:26,701.701 INFO    ] Launching Daemon at Sun Oct 25 23:26:26 IST 2026
[2026-10-25 23:26:26,711.711 INFO    ] ================================================
[2026-10-25 23:26:27,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:26:27
[2026-10-25 23:26:27,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:26:28,137.137 INFO    ] Initializing speech engine...
[2026-10-25 23:26:28,144.144 INFO    ] 2026-10-25 23:26:28
[2026-10-25 23:26:28,386.386 INFO    ] 2026-10-25 23:26:28
[2026-10-25 23:26:28,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:26:28,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:26:28,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:26:28,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:26:28,832.832 INFO    ] time= 25/10/2026 23:26:28
[2026-10-25 23:26:28,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:26:28,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:26:29,000.000 INFO    ] No existing commands found in stream
[2026-10-25 23:26:34,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:26:34,014.014 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 23:26:36,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:26:36,633.633 INFO    ] Checking for system updates...
[2026-10-25 23:26:36,669.669 INFO    ] 200
[2026-10-25 23:26:36,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:36,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:26:36,729.729 INFO    ] No update needed
[2026-10-25 23:26:36,731.731 INFO    ] Checking for camera pi updates...
[2026-10-25 23:26:36,765.765 INFO    ] 200
[2026-10-25 23:26:36,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:36,817.817 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:26:36,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:26:36,870.870 INFO    ] No camera update needed
[2026-10-25 23:26:36,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:26:36,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:26:36,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:26:36,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:26:38,925.925 INFO    ] ================================================
[2026-10-25 23:26:38,940.940 INFO    ] Launching Daemon at Sun Oct 25 23:26:38 IST 2026
[2026-10-25 23:26:38,951.951 INFO    ] ================================================
[2026-10-25 23:26:39,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:26:39
[2026-10-25 23:26:40,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:26:40,558.558 INFO    ] Initializing speech engine...
[2026-10-25 23:26:40,572.572 INFO    ] 2026-10-25 23:26:40
[2026-10-25 23:26:40,850.850 INFO    ] 2026-10-25 23:26:40
[2026-10-25 23:26:40,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:26:43,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:26:43,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:26:43,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:26:43,231.231 INFO    ] time= 25/10/2026 23:26:43
[2026-10-25 23:26:43,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:26:43,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:26:43,395.395 INFO    ] No existing commands found in stream
[2026-10-25 23:26:48,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:26:48,406.406 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 23:26:51,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:26:51,133.133 INFO    ] Checking for system updates...
[2026-10-25 23:26:51,171.171 INFO    ] 200
[2026-10-25 23:26:51,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:51,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:51,237.237 INFO    ] No update needed
[2026-10-25 23:26:51,239.239 INFO    ] Checking for camera pi updates...
[2026-10-25 23:26:51,277.277 INFO    ] 200
[2026-10-25 23:26:51,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:26:51,319.319 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:26:51,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:26:51,369.369 INFO    ] No camera update needed
[2026-10-25 23:26:51,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:26:51,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:26:51,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:26:51,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:26:53,425.425 INFO    ] ================================================
[2026-10-25 23:26:53,440.440 INFO    ] Launching Daemon at Sun Oct 25 23:26:53 IST 2026
[2026-10-25 23:26:53,452.452 INFO    ] ================================================
[2026-10-25 23:26:54,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:26:54
[2026-10-25 23:26:54,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:26:54,881.881 INFO    ] Initializing speech engine...
[2026-10-25 23:26:54,887.887 INFO    ] 2026-10-25 23:26:54
[2026-10-25 23:26:55,146.146 INFO    ] 2026-10-25 23:26:55
[2026-10-25 23:26:55,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:26:55,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:26:55,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:26:55,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:26:55,603.603 INFO    ] time= 25/10/2026 23:26:55
[2026-10-25 23:26:55,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:26:55,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:26:55,750.750 INFO    ] No existing commands found in stream
[2026-10-25 23:27:00,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:27:00,764.764 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-25 23:27:02,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:27:02,336.336 INFO    ] Checking for system updates...
[2026-10-25 23:27:02,385.385 INFO    ] 200
[2026-10-25 23:27:02,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:02,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:02,469.469 INFO    ] No update needed
[2026-10-25 23:27:02,475.475 INFO    ] Checking for camera pi updates...
[2026-10-25 23:27:02,527.527 INFO    ] 200
[2026-10-25 23:27:02,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:02,581.581 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:27:02,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:02,618.618 INFO    ] No camera update needed
[2026-10-25 23:27:02,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:27:02,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:27:02,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:27:02,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:27:04,681.681 INFO    ] ================================================
[2026-10-25 23:27:04,697.697 INFO    ] Launching Daemon at Sun Oct 25 23:27:04 IST 2026
[2026-10-25 23:27:04,708.708 INFO    ] ================================================
[2026-10-25 23:27:05,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:27:05
[2026-10-25 23:27:05,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:27:06,101.101 INFO    ] Initializing speech engine...
[2026-10-25 23:27:06,120.120 INFO    ] 2026-10-25 23:27:06
[2026-10-25 23:27:06,373.373 INFO    ] 2026-10-25 23:27:06
[2026-10-25 23:27:06,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:27:06,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:27:06,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:27:06,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:27:06,853.853 INFO    ] time= 25/10/2026 23:27:06
[2026-10-25 23:27:06,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:27:06,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:27:06,992.992 INFO    ] No existing commands found in stream
[2026-10-25 23:27:12,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:27:12,006.006 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-25 23:27:15,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:27:15,332.332 INFO    ] Checking for system updates...
[2026-10-25 23:27:15,368.368 INFO    ] 200
[2026-10-25 23:27:15,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:15,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:27:15,426.426 INFO    ] No update needed
[2026-10-25 23:27:15,429.429 INFO    ] Checking for camera pi updates...
[2026-10-25 23:27:15,463.463 INFO    ] 200
[2026-10-25 23:27:15,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:15,506.506 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:27:15,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:27:15,558.558 INFO    ] No camera update needed
[2026-10-25 23:27:15,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:27:15,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:27:15,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:27:15,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:27:17,613.613 INFO    ] ================================================
[2026-10-25 23:27:17,629.629 INFO    ] Launching Daemon at Sun Oct 25 23:27:17 IST 2026
[2026-10-25 23:27:17,640.640 INFO    ] ================================================
[2026-10-25 23:27:18,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:27:18
[2026-10-25 23:27:18,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:27:19,268.268 INFO    ] Initializing speech engine...
[2026-10-25 23:27:19,277.277 INFO    ] 2026-10-25 23:27:19
[2026-10-25 23:27:19,550.550 INFO    ] 2026-10-25 23:27:19
[2026-10-25 23:27:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:27:19,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:27:19,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:27:19,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:27:20,023.023 INFO    ] time= 25/10/2026 23:27:19
[2026-10-25 23:27:20,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:27:20,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:27:20,163.163 INFO    ] No existing commands found in stream
[2026-10-25 23:27:25,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:27:25,183.183 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-25 23:27:26,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:27:26,897.897 INFO    ] Checking for system updates...
[2026-10-25 23:27:26,939.939 INFO    ] 200
[2026-10-25 23:27:26,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:27,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:27,006.006 INFO    ] No update needed
[2026-10-25 23:27:27,009.009 INFO    ] Checking for camera pi updates...
[2026-10-25 23:27:27,048.048 INFO    ] 200
[2026-10-25 23:27:27,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:27,101.101 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:27:27,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:27,156.156 INFO    ] No camera update needed
[2026-10-25 23:27:27,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:27:27,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:27:27,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:27:27,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:27:29,210.210 INFO    ] ================================================
[2026-10-25 23:27:29,226.226 INFO    ] Launching Daemon at Sun Oct 25 23:27:29 IST 2026
[2026-10-25 23:27:29,237.237 INFO    ] ================================================
[2026-10-25 23:27:29,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:27:29
[2026-10-25 23:27:30,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:27:30,646.646 INFO    ] Initializing speech engine...
[2026-10-25 23:27:30,670.670 INFO    ] 2026-10-25 23:27:30
[2026-10-25 23:27:30,945.945 INFO    ] 2026-10-25 23:27:30
[2026-10-25 23:27:30,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:27:31,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:27:31,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:27:31,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:27:31,349.349 INFO    ] time= 25/10/2026 23:27:31
[2026-10-25 23:27:31,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:27:31,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:27:31,482.482 INFO    ] No existing commands found in stream
[2026-10-25 23:27:36,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:27:36,497.497 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 23:27:38,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:27:38,005.005 INFO    ] Checking for system updates...
[2026-10-25 23:27:38,045.045 INFO    ] 200
[2026-10-25 23:27:38,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:38,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:38,104.104 INFO    ] No update needed
[2026-10-25 23:27:38,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 23:27:38,140.140 INFO    ] 200
[2026-10-25 23:27:38,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:38,188.188 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:27:38,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:27:38,393.393 INFO    ] No camera update needed
[2026-10-25 23:27:38,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:27:38,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:27:38,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:27:38,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:27:40,450.450 INFO    ] ================================================
[2026-10-25 23:27:40,466.466 INFO    ] Launching Daemon at Sun Oct 25 23:27:40 IST 2026
[2026-10-25 23:27:40,478.478 INFO    ] ================================================
[2026-10-25 23:27:41,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:27:41
[2026-10-25 23:27:41,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:27:41,891.891 INFO    ] Initializing speech engine...
[2026-10-25 23:27:41,898.898 INFO    ] 2026-10-25 23:27:41
[2026-10-25 23:27:42,144.144 INFO    ] 2026-10-25 23:27:42
[2026-10-25 23:27:42,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:27:42,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:27:42,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:27:43,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:27:43,122.122 INFO    ] time= 25/10/2026 23:27:43
[2026-10-25 23:27:43,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:27:43,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:27:43,253.253 INFO    ] No existing commands found in stream
[2026-10-25 23:27:48,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:27:48,267.267 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 23:27:50,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:27:50,884.884 INFO    ] Checking for system updates...
[2026-10-25 23:27:50,921.921 INFO    ] 200
[2026-10-25 23:27:50,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:50,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:27:50,988.988 INFO    ] No update needed
[2026-10-25 23:27:50,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 23:27:51,027.027 INFO    ] 200
[2026-10-25 23:27:51,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:27:51,072.072 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:27:51,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:27:51,125.125 INFO    ] No camera update needed
[2026-10-25 23:27:51,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:27:51,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:27:51,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:27:51,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:27:53,187.187 INFO    ] ================================================
[2026-10-25 23:27:53,203.203 INFO    ] Launching Daemon at Sun Oct 25 23:27:53 IST 2026
[2026-10-25 23:27:53,214.214 INFO    ] ================================================
[2026-10-25 23:27:53,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:27:53
[2026-10-25 23:27:54,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:27:54,825.825 INFO    ] Initializing speech engine...
[2026-10-25 23:27:54,834.834 INFO    ] 2026-10-25 23:27:54
[2026-10-25 23:27:55,100.100 INFO    ] 2026-10-25 23:27:55
[2026-10-25 23:27:55,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:27:55,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:27:55,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:27:55,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:27:55,479.479 INFO    ] time= 25/10/2026 23:27:55
[2026-10-25 23:27:55,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:27:55,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:27:55,605.605 INFO    ] No existing commands found in stream
[2026-10-25 23:28:00,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:28:00,618.618 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 23:28:01,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:28:01,100.100 INFO    ] Checking for system updates...
[2026-10-25 23:28:01,138.138 INFO    ] 200
[2026-10-25 23:28:01,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:01,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:01,276.276 INFO    ] No update needed
[2026-10-25 23:28:01,283.283 INFO    ] Checking for camera pi updates...
[2026-10-25 23:28:01,343.343 INFO    ] 200
[2026-10-25 23:28:01,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:01,407.407 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:28:01,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:01,463.463 INFO    ] No camera update needed
[2026-10-25 23:28:01,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:28:01,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:28:01,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:28:01,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:28:03,545.545 INFO    ] ================================================
[2026-10-25 23:28:03,561.561 INFO    ] Launching Daemon at Sun Oct 25 23:28:03 IST 2026
[2026-10-25 23:28:03,572.572 INFO    ] ================================================
[2026-10-25 23:28:04,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:28:04
[2026-10-25 23:28:04,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:28:04,970.970 INFO    ] Initializing speech engine...
[2026-10-25 23:28:04,992.992 INFO    ] 2026-10-25 23:28:04
[2026-10-25 23:28:05,243.243 INFO    ] 2026-10-25 23:28:05
[2026-10-25 23:28:05,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:28:05,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:28:05,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:28:05,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:28:05,611.611 INFO    ] time= 25/10/2026 23:28:05
[2026-10-25 23:28:05,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:28:05,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:28:05,786.786 INFO    ] No existing commands found in stream
[2026-10-25 23:28:10,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:28:10,816.816 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 23:28:14,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:28:14,856.856 INFO    ] Checking for system updates...
[2026-10-25 23:28:14,892.892 INFO    ] 200
[2026-10-25 23:28:14,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:14,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:14,950.950 INFO    ] No update needed
[2026-10-25 23:28:14,952.952 INFO    ] Checking for camera pi updates...
[2026-10-25 23:28:14,990.990 INFO    ] 200
[2026-10-25 23:28:14,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:15,035.035 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:28:15,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:15,101.101 INFO    ] No camera update needed
[2026-10-25 23:28:15,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:28:15,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:28:15,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:28:15,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:28:17,161.161 INFO    ] ================================================
[2026-10-25 23:28:17,177.177 INFO    ] Launching Daemon at Sun Oct 25 23:28:17 IST 2026
[2026-10-25 23:28:17,188.188 INFO    ] ================================================
[2026-10-25 23:28:17,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:28:17
[2026-10-25 23:28:18,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:28:18,794.794 INFO    ] Initializing speech engine...
[2026-10-25 23:28:18,809.809 INFO    ] 2026-10-25 23:28:18
[2026-10-25 23:28:19,082.082 INFO    ] 2026-10-25 23:28:19
[2026-10-25 23:28:19,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:28:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:28:19,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:28:19,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:28:19,463.463 INFO    ] time= 25/10/2026 23:28:19
[2026-10-25 23:28:19,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:28:19,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:28:19,588.588 INFO    ] No existing commands found in stream
[2026-10-25 23:28:24,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:28:24,603.603 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 23:28:28,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:28:28,199.199 INFO    ] Checking for system updates...
[2026-10-25 23:28:28,235.235 INFO    ] 200
[2026-10-25 23:28:28,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:28,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:28,300.300 INFO    ] No update needed
[2026-10-25 23:28:28,303.303 INFO    ] Checking for camera pi updates...
[2026-10-25 23:28:28,336.336 INFO    ] 200
[2026-10-25 23:28:28,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:28,380.380 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:28:28,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:28,441.441 INFO    ] No camera update needed
[2026-10-25 23:28:28,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:28:28,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:28:28,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:28:28,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:28:30,501.501 INFO    ] ================================================
[2026-10-25 23:28:30,517.517 INFO    ] Launching Daemon at Sun Oct 25 23:28:30 IST 2026
[2026-10-25 23:28:30,528.528 INFO    ] ================================================
[2026-10-25 23:28:31,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:28:31
[2026-10-25 23:28:31,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:28:32,255.255 INFO    ] Initializing speech engine...
[2026-10-25 23:28:32,262.262 INFO    ] 2026-10-25 23:28:32
[2026-10-25 23:28:32,557.557 INFO    ] 2026-10-25 23:28:32
[2026-10-25 23:28:32,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:28:32,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:28:32,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:28:32,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:28:33,064.064 INFO    ] time= 25/10/2026 23:28:33
[2026-10-25 23:28:33,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:28:33,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:28:33,277.277 INFO    ] No existing commands found in stream
[2026-10-25 23:28:38,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:28:38,295.295 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-25 23:28:41,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:28:41,118.118 INFO    ] Checking for system updates...
[2026-10-25 23:28:41,156.156 INFO    ] 200
[2026-10-25 23:28:41,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:41,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:41,216.216 INFO    ] No update needed
[2026-10-25 23:28:41,218.218 INFO    ] Checking for camera pi updates...
[2026-10-25 23:28:41,253.253 INFO    ] 200
[2026-10-25 23:28:41,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:41,300.300 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:28:41,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:28:41,349.349 INFO    ] No camera update needed
[2026-10-25 23:28:41,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:28:41,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:28:41,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:28:41,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:28:43,405.405 INFO    ] ================================================
[2026-10-25 23:28:43,421.421 INFO    ] Launching Daemon at Sun Oct 25 23:28:43 IST 2026
[2026-10-25 23:28:43,433.433 INFO    ] ================================================
[2026-10-25 23:28:44,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:28:44
[2026-10-25 23:28:44,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:28:45,027.027 INFO    ] Initializing speech engine...
[2026-10-25 23:28:45,035.035 INFO    ] 2026-10-25 23:28:45
[2026-10-25 23:28:45,297.297 INFO    ] 2026-10-25 23:28:45
[2026-10-25 23:28:45,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:28:45,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:28:45,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:28:45,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:28:45,750.750 INFO    ] time= 25/10/2026 23:28:45
[2026-10-25 23:28:45,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:28:45,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:28:45,902.902 INFO    ] No existing commands found in stream
[2026-10-25 23:28:50,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:28:50,916.916 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 23:28:51,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:28:51,604.604 INFO    ] Checking for system updates...
[2026-10-25 23:28:51,645.645 INFO    ] 200
[2026-10-25 23:28:51,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:51,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:28:51,704.704 INFO    ] No update needed
[2026-10-25 23:28:51,706.706 INFO    ] Checking for camera pi updates...
[2026-10-25 23:28:51,740.740 INFO    ] 200
[2026-10-25 23:28:51,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:28:51,789.789 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:28:51,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:28:51,839.839 INFO    ] No camera update needed
[2026-10-25 23:28:51,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:28:51,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:28:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:28:51,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:28:53,895.895 INFO    ] ================================================
[2026-10-25 23:28:53,912.912 INFO    ] Launching Daemon at Sun Oct 25 23:28:53 IST 2026
[2026-10-25 23:28:53,929.929 INFO    ] ================================================
[2026-10-25 23:28:54,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:28:54
[2026-10-25 23:28:55,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:28:55,475.475 INFO    ] Initializing speech engine...
[2026-10-25 23:28:55,494.494 INFO    ] 2026-10-25 23:28:55
[2026-10-25 23:28:55,744.744 INFO    ] 2026-10-25 23:28:55
[2026-10-25 23:28:55,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:28:55,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:28:55,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:28:56,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:28:56,116.116 INFO    ] time= 25/10/2026 23:28:56
[2026-10-25 23:28:56,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:28:56,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:28:56,192.192 INFO    ] No existing commands found in stream
[2026-10-25 23:29:01,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:29:01,207.207 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-25 23:29:01,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:29:01,802.802 INFO    ] Checking for system updates...
[2026-10-25 23:29:01,845.845 INFO    ] 200
[2026-10-25 23:29:01,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:01,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:01,915.915 INFO    ] No update needed
[2026-10-25 23:29:01,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 23:29:01,959.959 INFO    ] 200
[2026-10-25 23:29:01,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:02,018.018 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:29:02,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:02,089.089 INFO    ] No camera update needed
[2026-10-25 23:29:02,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:29:02,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:29:02,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:29:02,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:29:04,157.157 INFO    ] ================================================
[2026-10-25 23:29:04,172.172 INFO    ] Launching Daemon at Sun Oct 25 23:29:04 IST 2026
[2026-10-25 23:29:04,183.183 INFO    ] ================================================
[2026-10-25 23:29:04,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:29:04
[2026-10-25 23:29:05,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:29:05,638.638 INFO    ] Initializing speech engine...
[2026-10-25 23:29:05,646.646 INFO    ] 2026-10-25 23:29:05
[2026-10-25 23:29:05,903.903 INFO    ] 2026-10-25 23:29:05
[2026-10-25 23:29:05,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:29:06,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:29:06,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:29:06,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:29:06,386.386 INFO    ] time= 25/10/2026 23:29:06
[2026-10-25 23:29:06,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:29:06,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:29:06,509.509 INFO    ] No existing commands found in stream
[2026-10-25 23:29:11,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:29:11,524.524 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 23:29:15,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:29:15,198.198 INFO    ] Checking for system updates...
[2026-10-25 23:29:15,234.234 INFO    ] 200
[2026-10-25 23:29:15,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:15,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:15,291.291 INFO    ] No update needed
[2026-10-25 23:29:15,294.294 INFO    ] Checking for camera pi updates...
[2026-10-25 23:29:15,327.327 INFO    ] 200
[2026-10-25 23:29:15,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:15,371.371 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:29:15,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:15,548.548 INFO    ] No camera update needed
[2026-10-25 23:29:15,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:29:15,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:29:15,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:29:15,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:29:17,606.606 INFO    ] ================================================
[2026-10-25 23:29:17,621.621 INFO    ] Launching Daemon at Sun Oct 25 23:29:17 IST 2026
[2026-10-25 23:29:17,631.631 INFO    ] ================================================
[2026-10-25 23:29:18,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:29:18
[2026-10-25 23:29:18,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:29:19,071.071 INFO    ] Initializing speech engine...
[2026-10-25 23:29:19,083.083 INFO    ] 2026-10-25 23:29:19
[2026-10-25 23:29:19,345.345 INFO    ] 2026-10-25 23:29:19
[2026-10-25 23:29:19,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:29:19,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:29:19,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:29:19,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:29:19,809.809 INFO    ] time= 25/10/2026 23:29:19
[2026-10-25 23:29:19,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:29:19,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:29:19,954.954 INFO    ] No existing commands found in stream
[2026-10-25 23:29:24,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:29:24,970.970 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-25 23:29:28,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:29:28,713.713 INFO    ] Checking for system updates...
[2026-10-25 23:29:28,751.751 INFO    ] 200
[2026-10-25 23:29:28,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:28,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:29:28,809.809 INFO    ] No update needed
[2026-10-25 23:29:28,811.811 INFO    ] Checking for camera pi updates...
[2026-10-25 23:29:28,848.848 INFO    ] 200
[2026-10-25 23:29:28,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:28,891.891 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:29:28,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:29:28,943.943 INFO    ] No camera update needed
[2026-10-25 23:29:28,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:29:28,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:29:28,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:29:28,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:29:31,000.000 INFO    ] ================================================
[2026-10-25 23:29:31,015.015 INFO    ] Launching Daemon at Sun Oct 25 23:29:31 IST 2026
[2026-10-25 23:29:31,026.026 INFO    ] ================================================
[2026-10-25 23:29:31,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:29:31
[2026-10-25 23:29:32,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:29:32,710.710 INFO    ] Initializing speech engine...
[2026-10-25 23:29:32,716.716 INFO    ] 2026-10-25 23:29:32
[2026-10-25 23:29:33,002.002 INFO    ] 2026-10-25 23:29:32
[2026-10-25 23:29:33,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:29:33,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:29:33,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:29:33,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:29:33,535.535 INFO    ] time= 25/10/2026 23:29:33
[2026-10-25 23:29:33,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:29:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:29:33,671.671 INFO    ] No existing commands found in stream
[2026-10-25 23:29:38,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:29:38,705.705 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-25 23:29:43,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:29:43,250.250 INFO    ] Checking for system updates...
[2026-10-25 23:29:43,288.288 INFO    ] 200
[2026-10-25 23:29:43,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:43,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:43,351.351 INFO    ] No update needed
[2026-10-25 23:29:43,353.353 INFO    ] Checking for camera pi updates...
[2026-10-25 23:29:43,388.388 INFO    ] 200
[2026-10-25 23:29:43,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:43,433.433 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:29:43,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:29:43,512.512 INFO    ] No camera update needed
[2026-10-25 23:29:43,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:29:43,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:29:43,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:29:43,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:29:45,567.567 INFO    ] ================================================
[2026-10-25 23:29:45,582.582 INFO    ] Launching Daemon at Sun Oct 25 23:29:45 IST 2026
[2026-10-25 23:29:45,592.592 INFO    ] ================================================
[2026-10-25 23:29:46,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:29:46
[2026-10-25 23:29:46,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:29:47,043.043 INFO    ] Initializing speech engine...
[2026-10-25 23:29:47,050.050 INFO    ] 2026-10-25 23:29:47
[2026-10-25 23:29:47,322.322 INFO    ] 2026-10-25 23:29:47
[2026-10-25 23:29:47,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:29:47,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:29:47,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:29:47,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:29:47,854.854 INFO    ] time= 25/10/2026 23:29:47
[2026-10-25 23:29:47,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:29:47,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:29:47,975.975 INFO    ] No existing commands found in stream
[2026-10-25 23:29:53,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:29:53,009.009 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-25 23:29:56,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:29:56,849.849 INFO    ] Checking for system updates...
[2026-10-25 23:29:56,888.888 INFO    ] 200
[2026-10-25 23:29:56,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:56,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:29:56,946.946 INFO    ] No update needed
[2026-10-25 23:29:56,949.949 INFO    ] Checking for camera pi updates...
[2026-10-25 23:29:56,982.982 INFO    ] 200
[2026-10-25 23:29:56,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:29:57,025.025 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:29:57,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:29:57,093.093 INFO    ] No camera update needed
[2026-10-25 23:29:57,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:29:57,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:29:57,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:29:57,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:29:59,149.149 INFO    ] ================================================
[2026-10-25 23:29:59,164.164 INFO    ] Launching Daemon at Sun Oct 25 23:29:59 IST 2026
[2026-10-25 23:29:59,175.175 INFO    ] ================================================
[2026-10-25 23:29:59,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:29:59
[2026-10-25 23:30:00,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:30:00,597.597 INFO    ] Initializing speech engine...
[2026-10-25 23:30:00,607.607 INFO    ] 2026-10-25 23:30:00
[2026-10-25 23:30:00,855.855 INFO    ] 2026-10-25 23:30:00
[2026-10-25 23:30:00,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:30:01,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:30:01,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:30:01,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:30:01,299.299 INFO    ] time= 25/10/2026 23:30:01
[2026-10-25 23:30:01,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:30:01,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:30:01,424.424 INFO    ] No existing commands found in stream
[2026-10-25 23:30:06,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:30:06,437.437 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-25 23:30:09,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:30:09,478.478 INFO    ] Checking for system updates...
[2026-10-25 23:30:09,513.513 INFO    ] 200
[2026-10-25 23:30:09,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:09,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:09,572.572 INFO    ] No update needed
[2026-10-25 23:30:09,575.575 INFO    ] Checking for camera pi updates...
[2026-10-25 23:30:09,609.609 INFO    ] 200
[2026-10-25 23:30:09,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:09,656.656 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:30:09,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:09,710.710 INFO    ] No camera update needed
[2026-10-25 23:30:09,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:30:09,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:30:09,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:30:09,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:30:11,768.768 INFO    ] ================================================
[2026-10-25 23:30:11,783.783 INFO    ] Launching Daemon at Sun Oct 25 23:30:11 IST 2026
[2026-10-25 23:30:11,794.794 INFO    ] ================================================
[2026-10-25 23:30:12,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:30:12
[2026-10-25 23:30:12,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:30:13,248.248 INFO    ] Initializing speech engine...
[2026-10-25 23:30:13,255.255 INFO    ] 2026-10-25 23:30:13
[2026-10-25 23:30:13,516.516 INFO    ] 2026-10-25 23:30:13
[2026-10-25 23:30:13,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:30:13,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:30:13,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:30:13,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:30:13,995.995 INFO    ] time= 25/10/2026 23:30:13
[2026-10-25 23:30:14,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:30:14,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:30:14,121.121 INFO    ] No existing commands found in stream
[2026-10-25 23:30:19,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:30:19,136.136 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-25 23:30:23,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:30:23,099.099 INFO    ] Checking for system updates...
[2026-10-25 23:30:23,146.146 INFO    ] 200
[2026-10-25 23:30:23,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:23,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:30:23,212.212 INFO    ] No update needed
[2026-10-25 23:30:23,215.215 INFO    ] Checking for camera pi updates...
[2026-10-25 23:30:23,265.265 INFO    ] 200
[2026-10-25 23:30:23,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:23,316.316 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:30:23,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:30:23,367.367 INFO    ] No camera update needed
[2026-10-25 23:30:23,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:30:23,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:30:23,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:30:23,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:30:25,424.424 INFO    ] ================================================
[2026-10-25 23:30:25,444.444 INFO    ] Launching Daemon at Sun Oct 25 23:30:25 IST 2026
[2026-10-25 23:30:25,460.460 INFO    ] ================================================
[2026-10-25 23:30:26,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:30:26
[2026-10-25 23:30:26,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:30:27,146.146 INFO    ] Initializing speech engine...
[2026-10-25 23:30:27,159.159 INFO    ] 2026-10-25 23:30:27
[2026-10-25 23:30:27,488.488 INFO    ] 2026-10-25 23:30:27
[2026-10-25 23:30:27,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:30:27,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:30:27,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:30:27,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:30:28,009.009 INFO    ] time= 25/10/2026 23:30:27
[2026-10-25 23:30:28,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:30:28,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:30:28,221.221 INFO    ] No existing commands found in stream
[2026-10-25 23:30:33,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:30:33,258.258 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-25 23:30:34,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:30:34,448.448 INFO    ] Checking for system updates...
[2026-10-25 23:30:34,488.488 INFO    ] 200
[2026-10-25 23:30:34,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:34,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:34,553.553 INFO    ] No update needed
[2026-10-25 23:30:34,556.556 INFO    ] Checking for camera pi updates...
[2026-10-25 23:30:34,590.590 INFO    ] 200
[2026-10-25 23:30:34,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:34,638.638 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:30:34,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:34,687.687 INFO    ] No camera update needed
[2026-10-25 23:30:34,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:30:34,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:30:34,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:30:34,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:30:36,742.742 INFO    ] ================================================
[2026-10-25 23:30:36,757.757 INFO    ] Launching Daemon at Sun Oct 25 23:30:36 IST 2026
[2026-10-25 23:30:36,768.768 INFO    ] ================================================
[2026-10-25 23:30:37,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:30:37
[2026-10-25 23:30:37,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:30:38,188.188 INFO    ] Initializing speech engine...
[2026-10-25 23:30:38,195.195 INFO    ] 2026-10-25 23:30:38
[2026-10-25 23:30:38,489.489 INFO    ] 2026-10-25 23:30:38
[2026-10-25 23:30:38,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:30:38,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:30:38,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:30:38,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:30:38,866.866 INFO    ] time= 25/10/2026 23:30:38
[2026-10-25 23:30:38,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:30:38,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:30:38,991.991 INFO    ] No existing commands found in stream
[2026-10-25 23:30:44,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:30:44,006.006 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-25 23:30:46,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:30:46,127.127 INFO    ] Checking for system updates...
[2026-10-25 23:30:46,167.167 INFO    ] 200
[2026-10-25 23:30:46,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:46,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:46,225.225 INFO    ] No update needed
[2026-10-25 23:30:46,227.227 INFO    ] Checking for camera pi updates...
[2026-10-25 23:30:46,262.262 INFO    ] 200
[2026-10-25 23:30:46,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:46,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:30:46,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:30:46,361.361 INFO    ] No camera update needed
[2026-10-25 23:30:46,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:30:46,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:30:46,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:30:46,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:30:48,416.416 INFO    ] ================================================
[2026-10-25 23:30:48,431.431 INFO    ] Launching Daemon at Sun Oct 25 23:30:48 IST 2026
[2026-10-25 23:30:48,442.442 INFO    ] ================================================
[2026-10-25 23:30:49,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:30:49
[2026-10-25 23:30:49,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:30:49,895.895 INFO    ] Initializing speech engine...
[2026-10-25 23:30:49,904.904 INFO    ] 2026-10-25 23:30:49
[2026-10-25 23:30:50,203.203 INFO    ] 2026-10-25 23:30:50
[2026-10-25 23:30:50,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:30:50,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:30:50,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:30:50,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:30:50,583.583 INFO    ] time= 25/10/2026 23:30:50
[2026-10-25 23:30:50,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:30:50,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:30:50,711.711 INFO    ] No existing commands found in stream
[2026-10-25 23:30:55,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:30:55,725.725 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-25 23:30:57,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:30:57,628.628 INFO    ] Checking for system updates...
[2026-10-25 23:30:57,664.664 INFO    ] 200
[2026-10-25 23:30:57,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:57,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:30:57,723.723 INFO    ] No update needed
[2026-10-25 23:30:57,725.725 INFO    ] Checking for camera pi updates...
[2026-10-25 23:30:57,763.763 INFO    ] 200
[2026-10-25 23:30:57,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:30:57,816.816 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:30:57,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:30:57,864.864 INFO    ] No camera update needed
[2026-10-25 23:30:57,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:30:57,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:30:57,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:30:57,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:30:59,924.924 INFO    ] ================================================
[2026-10-25 23:30:59,940.940 INFO    ] Launching Daemon at Sun Oct 25 23:30:59 IST 2026
[2026-10-25 23:30:59,952.952 INFO    ] ================================================
[2026-10-25 23:31:00,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:31:00
[2026-10-25 23:31:01,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:31:01,667.667 INFO    ] Initializing speech engine...
[2026-10-25 23:31:01,670.670 INFO    ] 2026-10-25 23:31:01
[2026-10-25 23:31:02,018.018 INFO    ] 2026-10-25 23:31:01
[2026-10-25 23:31:02,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:31:02,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:31:02,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:31:02,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:31:02,401.401 INFO    ] time= 25/10/2026 23:31:02
[2026-10-25 23:31:02,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:31:02,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:31:02,610.610 INFO    ] No existing commands found in stream
[2026-10-25 23:31:07,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:31:07,626.626 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 23:31:11,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:31:11,242.242 INFO    ] Checking for system updates...
[2026-10-25 23:31:11,282.282 INFO    ] 200
[2026-10-25 23:31:11,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:11,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:31:11,340.340 INFO    ] No update needed
[2026-10-25 23:31:11,342.342 INFO    ] Checking for camera pi updates...
[2026-10-25 23:31:11,379.379 INFO    ] 200
[2026-10-25 23:31:11,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:11,427.427 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:31:11,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:31:11,485.485 INFO    ] No camera update needed
[2026-10-25 23:31:11,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:31:11,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:31:11,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:31:11,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:31:13,540.540 INFO    ] ================================================
[2026-10-25 23:31:13,556.556 INFO    ] Launching Daemon at Sun Oct 25 23:31:13 IST 2026
[2026-10-25 23:31:13,567.567 INFO    ] ================================================
[2026-10-25 23:31:14,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:31:14
[2026-10-25 23:31:14,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:31:15,173.173 INFO    ] Initializing speech engine...
[2026-10-25 23:31:15,187.187 INFO    ] 2026-10-25 23:31:15
[2026-10-25 23:31:15,471.471 INFO    ] 2026-10-25 23:31:15
[2026-10-25 23:31:15,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:31:15,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:31:15,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:31:15,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:31:16,004.004 INFO    ] time= 25/10/2026 23:31:15
[2026-10-25 23:31:16,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:31:16,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:31:16,154.154 INFO    ] No existing commands found in stream
[2026-10-25 23:31:21,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:31:21,174.174 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-25 23:31:24,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:31:24,350.350 INFO    ] Checking for system updates...
[2026-10-25 23:31:24,386.386 INFO    ] 200
[2026-10-25 23:31:24,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:24,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:24,445.445 INFO    ] No update needed
[2026-10-25 23:31:24,447.447 INFO    ] Checking for camera pi updates...
[2026-10-25 23:31:24,481.481 INFO    ] 200
[2026-10-25 23:31:24,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:24,524.524 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:31:24,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:24,684.684 INFO    ] No camera update needed
[2026-10-25 23:31:24,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:31:24,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:31:24,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:31:24,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:31:26,739.739 INFO    ] ================================================
[2026-10-25 23:31:26,755.755 INFO    ] Launching Daemon at Sun Oct 25 23:31:26 IST 2026
[2026-10-25 23:31:26,766.766 INFO    ] ================================================
[2026-10-25 23:31:27,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:31:27
[2026-10-25 23:31:27,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:31:28,281.281 INFO    ] Initializing speech engine...
[2026-10-25 23:31:28,295.295 INFO    ] 2026-10-25 23:31:28
[2026-10-25 23:31:28,590.590 INFO    ] 2026-10-25 23:31:28
[2026-10-25 23:31:28,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:31:28,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:31:28,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:31:29,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:31:29,095.095 INFO    ] time= 25/10/2026 23:31:29
[2026-10-25 23:31:29,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:31:29,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:31:29,271.271 INFO    ] No existing commands found in stream
[2026-10-25 23:31:34,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:31:34,289.289 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-25 23:31:35,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:31:35,647.647 INFO    ] Checking for system updates...
[2026-10-25 23:31:35,686.686 INFO    ] 200
[2026-10-25 23:31:35,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:35,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:35,748.748 INFO    ] No update needed
[2026-10-25 23:31:35,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 23:31:35,791.791 INFO    ] 200
[2026-10-25 23:31:35,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:35,837.837 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:31:35,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:35,892.892 INFO    ] No camera update needed
[2026-10-25 23:31:35,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:31:35,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:31:35,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:31:35,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:31:37,954.954 INFO    ] ================================================
[2026-10-25 23:31:37,969.969 INFO    ] Launching Daemon at Sun Oct 25 23:31:37 IST 2026
[2026-10-25 23:31:37,980.980 INFO    ] ================================================
[2026-10-25 23:31:38,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:31:38
[2026-10-25 23:31:39,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:31:39,612.612 INFO    ] Initializing speech engine...
[2026-10-25 23:31:39,619.619 INFO    ] 2026-10-25 23:31:39
[2026-10-25 23:31:39,891.891 INFO    ] 2026-10-25 23:31:39
[2026-10-25 23:31:39,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:31:40,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:31:40,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:31:40,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:31:40,395.395 INFO    ] time= 25/10/2026 23:31:40
[2026-10-25 23:31:40,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:31:40,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:31:40,584.584 INFO    ] No existing commands found in stream
[2026-10-25 23:31:45,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:31:45,616.616 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-25 23:31:47,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:31:47,187.187 INFO    ] Checking for system updates...
[2026-10-25 23:31:47,230.230 INFO    ] 200
[2026-10-25 23:31:47,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:47,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:47,298.298 INFO    ] No update needed
[2026-10-25 23:31:47,301.301 INFO    ] Checking for camera pi updates...
[2026-10-25 23:31:47,336.336 INFO    ] 200
[2026-10-25 23:31:47,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:47,384.384 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:31:47,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:47,567.567 INFO    ] No camera update needed
[2026-10-25 23:31:47,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:31:47,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:31:47,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:31:47,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:31:49,622.622 INFO    ] ================================================
[2026-10-25 23:31:49,638.638 INFO    ] Launching Daemon at Sun Oct 25 23:31:49 IST 2026
[2026-10-25 23:31:49,649.649 INFO    ] ================================================
[2026-10-25 23:31:50,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:31:50
[2026-10-25 23:31:50,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:31:51,126.126 INFO    ] Initializing speech engine...
[2026-10-25 23:31:51,140.140 INFO    ] 2026-10-25 23:31:51
[2026-10-25 23:31:51,446.446 INFO    ] 2026-10-25 23:31:51
[2026-10-25 23:31:51,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:31:51,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:31:51,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:31:51,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:31:51,928.928 INFO    ] time= 25/10/2026 23:31:51
[2026-10-25 23:31:51,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:31:51,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:31:52,103.103 INFO    ] No existing commands found in stream
[2026-10-25 23:31:57,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:31:57,122.122 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 23:31:58,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:31:58,153.153 INFO    ] Checking for system updates...
[2026-10-25 23:31:58,194.194 INFO    ] 200
[2026-10-25 23:31:58,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:58,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:58,259.259 INFO    ] No update needed
[2026-10-25 23:31:58,261.261 INFO    ] Checking for camera pi updates...
[2026-10-25 23:31:58,296.296 INFO    ] 200
[2026-10-25 23:31:58,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:31:58,344.344 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:31:58,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:31:58,394.394 INFO    ] No camera update needed
[2026-10-25 23:31:58,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:31:58,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:31:58,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:31:58,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:32:00,447.447 INFO    ] ================================================
[2026-10-25 23:32:00,463.463 INFO    ] Launching Daemon at Sun Oct 25 23:32:00 IST 2026
[2026-10-25 23:32:00,473.473 INFO    ] ================================================
[2026-10-25 23:32:01,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:32:01
[2026-10-25 23:32:01,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:32:02,112.112 INFO    ] Initializing speech engine...
[2026-10-25 23:32:02,123.123 INFO    ] 2026-10-25 23:32:02
[2026-10-25 23:32:02,491.491 INFO    ] 2026-10-25 23:32:02
[2026-10-25 23:32:02,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:32:02,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:32:02,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:32:03,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:32:03,077.077 INFO    ] time= 25/10/2026 23:32:03
[2026-10-25 23:32:03,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:32:03,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:32:03,241.241 INFO    ] No existing commands found in stream
[2026-10-25 23:32:08,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:32:08,269.269 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-25 23:32:11,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:32:11,285.285 INFO    ] Checking for system updates...
[2026-10-25 23:32:11,322.322 INFO    ] 200
[2026-10-25 23:32:11,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:11,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:11,382.382 INFO    ] No update needed
[2026-10-25 23:32:11,384.384 INFO    ] Checking for camera pi updates...
[2026-10-25 23:32:11,419.419 INFO    ] 200
[2026-10-25 23:32:11,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:11,465.465 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:32:11,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:11,523.523 INFO    ] No camera update needed
[2026-10-25 23:32:11,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:32:11,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:32:11,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:32:11,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:32:13,581.581 INFO    ] ================================================
[2026-10-25 23:32:13,597.597 INFO    ] Launching Daemon at Sun Oct 25 23:32:13 IST 2026
[2026-10-25 23:32:13,608.608 INFO    ] ================================================
[2026-10-25 23:32:14,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:32:14
[2026-10-25 23:32:14,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:32:15,002.002 INFO    ] Initializing speech engine...
[2026-10-25 23:32:15,016.016 INFO    ] 2026-10-25 23:32:15
[2026-10-25 23:32:15,281.281 INFO    ] 2026-10-25 23:32:15
[2026-10-25 23:32:15,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:32:15,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:32:15,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:32:15,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:32:15,657.657 INFO    ] time= 25/10/2026 23:32:15
[2026-10-25 23:32:15,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:32:15,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:32:15,735.735 INFO    ] No existing commands found in stream
[2026-10-25 23:32:20,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:32:20,782.782 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-25 23:32:23,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:32:23,622.622 INFO    ] Checking for system updates...
[2026-10-25 23:32:23,658.658 INFO    ] 200
[2026-10-25 23:32:23,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:23,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:23,717.717 INFO    ] No update needed
[2026-10-25 23:32:23,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 23:32:23,757.757 INFO    ] 200
[2026-10-25 23:32:23,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:23,801.801 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:32:23,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:23,860.860 INFO    ] No camera update needed
[2026-10-25 23:32:23,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:32:23,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:32:23,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:32:23,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:32:25,914.914 INFO    ] ================================================
[2026-10-25 23:32:25,930.930 INFO    ] Launching Daemon at Sun Oct 25 23:32:25 IST 2026
[2026-10-25 23:32:25,941.941 INFO    ] ================================================
[2026-10-25 23:32:26,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:32:26
[2026-10-25 23:32:27,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:32:27,336.336 INFO    ] Initializing speech engine...
[2026-10-25 23:32:27,345.345 INFO    ] 2026-10-25 23:32:27
[2026-10-25 23:32:27,620.620 INFO    ] 2026-10-25 23:32:27
[2026-10-25 23:32:27,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:32:27,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:32:27,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:32:27,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:32:27,995.995 INFO    ] time= 25/10/2026 23:32:27
[2026-10-25 23:32:28,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:32:28,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:32:28,075.075 INFO    ] No existing commands found in stream
[2026-10-25 23:32:33,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:32:33,113.113 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-25 23:32:37,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:32:37,397.397 INFO    ] Checking for system updates...
[2026-10-25 23:32:37,437.437 INFO    ] 200
[2026-10-25 23:32:37,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:37,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:37,496.496 INFO    ] No update needed
[2026-10-25 23:32:37,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 23:32:37,535.535 INFO    ] 200
[2026-10-25 23:32:37,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:37,578.578 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:32:37,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:37,634.634 INFO    ] No camera update needed
[2026-10-25 23:32:37,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:32:37,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:32:37,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:32:37,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:32:39,692.692 INFO    ] ================================================
[2026-10-25 23:32:39,707.707 INFO    ] Launching Daemon at Sun Oct 25 23:32:39 IST 2026
[2026-10-25 23:32:39,719.719 INFO    ] ================================================
[2026-10-25 23:32:40,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:32:40
[2026-10-25 23:32:40,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:32:41,174.174 INFO    ] Initializing speech engine...
[2026-10-25 23:32:41,185.185 INFO    ] 2026-10-25 23:32:41
[2026-10-25 23:32:41,445.445 INFO    ] 2026-10-25 23:32:41
[2026-10-25 23:32:41,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:32:43,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:32:43,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:32:43,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:32:43,181.181 INFO    ] time= 25/10/2026 23:32:43
[2026-10-25 23:32:43,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:32:43,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:32:43,293.293 INFO    ] No existing commands found in stream
[2026-10-25 23:32:48,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:32:48,321.321 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-25 23:32:52,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:32:52,055.055 INFO    ] Checking for system updates...
[2026-10-25 23:32:52,111.111 INFO    ] 200
[2026-10-25 23:32:52,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:52,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:52,168.168 INFO    ] No update needed
[2026-10-25 23:32:52,171.171 INFO    ] Checking for camera pi updates...
[2026-10-25 23:32:52,205.205 INFO    ] 200
[2026-10-25 23:32:52,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:32:52,248.248 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:32:52,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:32:52,313.313 INFO    ] No camera update needed
[2026-10-25 23:32:52,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:32:52,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:32:52,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:32:52,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:32:54,370.370 INFO    ] ================================================
[2026-10-25 23:32:54,385.385 INFO    ] Launching Daemon at Sun Oct 25 23:32:54 IST 2026
[2026-10-25 23:32:54,397.397 INFO    ] ================================================
[2026-10-25 23:32:54,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:32:54
[2026-10-25 23:32:55,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:32:55,814.814 INFO    ] Initializing speech engine...
[2026-10-25 23:32:55,823.823 INFO    ] 2026-10-25 23:32:55
[2026-10-25 23:32:56,072.072 INFO    ] 2026-10-25 23:32:56
[2026-10-25 23:32:56,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:32:56,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:32:56,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:32:56,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:32:56,445.445 INFO    ] time= 25/10/2026 23:32:56
[2026-10-25 23:32:56,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:32:56,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:32:56,612.612 INFO    ] No existing commands found in stream
[2026-10-25 23:33:01,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:33:01,639.639 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-25 23:33:02,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:33:02,170.170 INFO    ] Checking for system updates...
[2026-10-25 23:33:02,215.215 INFO    ] 200
[2026-10-25 23:33:02,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:02,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:33:02,320.320 INFO    ] No update needed
[2026-10-25 23:33:02,323.323 INFO    ] Checking for camera pi updates...
[2026-10-25 23:33:02,367.367 INFO    ] 200
[2026-10-25 23:33:02,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:02,421.421 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:33:02,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:33:02,462.462 INFO    ] No camera update needed
[2026-10-25 23:33:02,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:33:02,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:33:02,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:33:02,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:33:04,523.523 INFO    ] ================================================
[2026-10-25 23:33:04,539.539 INFO    ] Launching Daemon at Sun Oct 25 23:33:04 IST 2026
[2026-10-25 23:33:04,551.551 INFO    ] ================================================
[2026-10-25 23:33:05,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:33:05
[2026-10-25 23:33:05,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:33:06,058.058 INFO    ] Initializing speech engine...
[2026-10-25 23:33:06,065.065 INFO    ] 2026-10-25 23:33:06
[2026-10-25 23:33:06,341.341 INFO    ] 2026-10-25 23:33:06
[2026-10-25 23:33:06,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:33:06,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:33:06,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:33:06,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:33:06,709.709 INFO    ] time= 25/10/2026 23:33:06
[2026-10-25 23:33:06,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:33:06,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:33:06,889.889 INFO    ] No existing commands found in stream
[2026-10-25 23:33:11,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:33:11,918.918 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-25 23:33:13,303.303 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:33:13,305.305 INFO    ] Checking for system updates...
[2026-10-25 23:33:13,343.343 INFO    ] 200
[2026-10-25 23:33:13,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:13,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:33:13,402.402 INFO    ] No update needed
[2026-10-25 23:33:13,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 23:33:13,442.442 INFO    ] 200
[2026-10-25 23:33:13,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:13,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:33:13,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:33:13,537.537 INFO    ] No camera update needed
[2026-10-25 23:33:13,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:33:13,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:33:13,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:33:13,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:33:15,592.592 INFO    ] ================================================
[2026-10-25 23:33:15,608.608 INFO    ] Launching Daemon at Sun Oct 25 23:33:15 IST 2026
[2026-10-25 23:33:15,619.619 INFO    ] ================================================
[2026-10-25 23:33:16,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:33:16
[2026-10-25 23:33:16,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:33:17,178.178 INFO    ] Initializing speech engine...
[2026-10-25 23:33:17,186.186 INFO    ] 2026-10-25 23:33:17
[2026-10-25 23:33:17,468.468 INFO    ] 2026-10-25 23:33:17
[2026-10-25 23:33:17,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:33:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:33:17,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:33:17,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:33:17,917.917 INFO    ] time= 25/10/2026 23:33:17
[2026-10-25 23:33:17,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:33:18,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:33:18,063.063 INFO    ] No existing commands found in stream
[2026-10-25 23:33:23,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:33:23,085.085 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 23:33:26,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:33:26,945.945 INFO    ] Checking for system updates...
[2026-10-25 23:33:26,983.983 INFO    ] 200
[2026-10-25 23:33:26,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:27,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:27,042.042 INFO    ] No update needed
[2026-10-25 23:33:27,045.045 INFO    ] Checking for camera pi updates...
[2026-10-25 23:33:27,080.080 INFO    ] 200
[2026-10-25 23:33:27,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:27,124.124 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:33:27,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:27,296.296 INFO    ] No camera update needed
[2026-10-25 23:33:27,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:33:27,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:33:27,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:33:27,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:33:29,352.352 INFO    ] ================================================
[2026-10-25 23:33:29,368.368 INFO    ] Launching Daemon at Sun Oct 25 23:33:29 IST 2026
[2026-10-25 23:33:29,383.383 INFO    ] ================================================
[2026-10-25 23:33:29,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:33:29
[2026-10-25 23:33:30,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:33:30,837.837 INFO    ] Initializing speech engine...
[2026-10-25 23:33:30,844.844 INFO    ] 2026-10-25 23:33:30
[2026-10-25 23:33:31,101.101 INFO    ] 2026-10-25 23:33:31
[2026-10-25 23:33:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:33:31,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:33:31,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:33:31,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:33:31,540.540 INFO    ] time= 25/10/2026 23:33:31
[2026-10-25 23:33:31,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:33:31,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:33:31,723.723 INFO    ] No existing commands found in stream
[2026-10-25 23:33:36,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:33:36,738.738 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 23:33:37,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:33:37,403.403 INFO    ] Checking for system updates...
[2026-10-25 23:33:37,439.439 INFO    ] 200
[2026-10-25 23:33:37,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:37,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:37,507.507 INFO    ] No update needed
[2026-10-25 23:33:37,510.510 INFO    ] Checking for camera pi updates...
[2026-10-25 23:33:37,544.544 INFO    ] 200
[2026-10-25 23:33:37,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:37,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:33:37,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:37,649.649 INFO    ] No camera update needed
[2026-10-25 23:33:37,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:33:37,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:33:37,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:33:37,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:33:39,705.705 INFO    ] ================================================
[2026-10-25 23:33:39,720.720 INFO    ] Launching Daemon at Sun Oct 25 23:33:39 IST 2026
[2026-10-25 23:33:39,732.732 INFO    ] ================================================
[2026-10-25 23:33:40,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:33:40
[2026-10-25 23:33:40,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:33:41,209.209 INFO    ] Initializing speech engine...
[2026-10-25 23:33:41,228.228 INFO    ] 2026-10-25 23:33:41
[2026-10-25 23:33:41,474.474 INFO    ] 2026-10-25 23:33:41
[2026-10-25 23:33:41,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:33:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:33:42,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:33:42,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:33:43,005.005 INFO    ] time= 25/10/2026 23:33:42
[2026-10-25 23:33:43,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:33:43,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:33:43,118.118 INFO    ] No existing commands found in stream
[2026-10-25 23:33:48,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:33:48,145.145 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 23:33:51,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:33:51,416.416 INFO    ] Checking for system updates...
[2026-10-25 23:33:51,452.452 INFO    ] 200
[2026-10-25 23:33:51,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:51,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:51,516.516 INFO    ] No update needed
[2026-10-25 23:33:51,519.519 INFO    ] Checking for camera pi updates...
[2026-10-25 23:33:51,552.552 INFO    ] 200
[2026-10-25 23:33:51,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:33:51,595.595 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:33:51,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:33:51,645.645 INFO    ] No camera update needed
[2026-10-25 23:33:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:33:51,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:33:51,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:33:51,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:33:53,701.701 INFO    ] ================================================
[2026-10-25 23:33:53,717.717 INFO    ] Launching Daemon at Sun Oct 25 23:33:53 IST 2026
[2026-10-25 23:33:53,728.728 INFO    ] ================================================
[2026-10-25 23:33:54,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:33:54
[2026-10-25 23:33:55,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:33:55,348.348 INFO    ] Initializing speech engine...
[2026-10-25 23:33:55,359.359 INFO    ] 2026-10-25 23:33:55
[2026-10-25 23:33:55,664.664 INFO    ] 2026-10-25 23:33:55
[2026-10-25 23:33:55,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:33:55,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:33:55,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:33:56,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:33:56,162.162 INFO    ] time= 25/10/2026 23:33:56
[2026-10-25 23:33:56,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:33:56,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:33:56,292.292 INFO    ] No existing commands found in stream
[2026-10-25 23:34:01,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:34:01,325.325 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-25 23:34:04,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:34:04,773.773 INFO    ] Checking for system updates...
[2026-10-25 23:34:04,813.813 INFO    ] 200
[2026-10-25 23:34:04,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:04,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:04,873.873 INFO    ] No update needed
[2026-10-25 23:34:04,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 23:34:04,913.913 INFO    ] 200
[2026-10-25 23:34:04,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:04,956.956 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:34:05,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:05,029.029 INFO    ] No camera update needed
[2026-10-25 23:34:05,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:34:05,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:34:05,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:34:05,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:34:07,084.084 INFO    ] ================================================
[2026-10-25 23:34:07,099.099 INFO    ] Launching Daemon at Sun Oct 25 23:34:07 IST 2026
[2026-10-25 23:34:07,110.110 INFO    ] ================================================
[2026-10-25 23:34:07,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:34:07
[2026-10-25 23:34:08,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:34:08,562.562 INFO    ] Initializing speech engine...
[2026-10-25 23:34:08,580.580 INFO    ] 2026-10-25 23:34:08
[2026-10-25 23:34:08,853.853 INFO    ] 2026-10-25 23:34:08
[2026-10-25 23:34:08,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:34:09,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:34:09,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:34:09,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:34:09,228.228 INFO    ] time= 25/10/2026 23:34:09
[2026-10-25 23:34:09,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:34:09,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:34:09,325.325 INFO    ] No existing commands found in stream
[2026-10-25 23:34:14,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:34:14,343.343 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-25 23:34:14,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:34:14,953.953 INFO    ] Checking for system updates...
[2026-10-25 23:34:14,993.993 INFO    ] 200
[2026-10-25 23:34:14,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:15,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:34:15,052.052 INFO    ] No update needed
[2026-10-25 23:34:15,054.054 INFO    ] Checking for camera pi updates...
[2026-10-25 23:34:15,088.088 INFO    ] 200
[2026-10-25 23:34:15,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:15,137.137 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:34:15,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:34:15,195.195 INFO    ] No camera update needed
[2026-10-25 23:34:15,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:34:15,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:34:15,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:34:15,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:34:17,251.251 INFO    ] ================================================
[2026-10-25 23:34:17,267.267 INFO    ] Launching Daemon at Sun Oct 25 23:34:17 IST 2026
[2026-10-25 23:34:17,278.278 INFO    ] ================================================
[2026-10-25 23:34:17,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:34:17
[2026-10-25 23:34:18,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:34:18,726.726 INFO    ] Initializing speech engine...
[2026-10-25 23:34:18,736.736 INFO    ] 2026-10-25 23:34:18
[2026-10-25 23:34:18,990.990 INFO    ] 2026-10-25 23:34:18
[2026-10-25 23:34:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:34:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:34:19,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:34:19,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:34:19,474.474 INFO    ] time= 25/10/2026 23:34:19
[2026-10-25 23:34:19,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:34:19,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:34:19,606.606 INFO    ] No existing commands found in stream
[2026-10-25 23:34:24,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:34:24,634.634 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 23:34:25,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:34:25,438.438 INFO    ] Checking for system updates...
[2026-10-25 23:34:25,474.474 INFO    ] 200
[2026-10-25 23:34:25,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:25,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:34:25,532.532 INFO    ] No update needed
[2026-10-25 23:34:25,535.535 INFO    ] Checking for camera pi updates...
[2026-10-25 23:34:25,573.573 INFO    ] 200
[2026-10-25 23:34:25,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:25,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:34:25,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:34:25,668.668 INFO    ] No camera update needed
[2026-10-25 23:34:25,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:34:25,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:34:25,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:34:25,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:34:27,727.727 INFO    ] ================================================
[2026-10-25 23:34:27,743.743 INFO    ] Launching Daemon at Sun Oct 25 23:34:27 IST 2026
[2026-10-25 23:34:27,754.754 INFO    ] ================================================
[2026-10-25 23:34:28,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:34:28
[2026-10-25 23:34:28,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:34:29,171.171 INFO    ] Initializing speech engine...
[2026-10-25 23:34:29,179.179 INFO    ] 2026-10-25 23:34:29
[2026-10-25 23:34:29,426.426 INFO    ] 2026-10-25 23:34:29
[2026-10-25 23:34:29,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:34:29,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:34:29,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:34:29,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:34:29,894.894 INFO    ] time= 25/10/2026 23:34:29
[2026-10-25 23:34:29,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:34:29,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:34:30,037.037 INFO    ] No existing commands found in stream
[2026-10-25 23:34:35,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:34:35,052.052 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 23:34:38,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:34:38,714.714 INFO    ] Checking for system updates...
[2026-10-25 23:34:38,756.756 INFO    ] 200
[2026-10-25 23:34:38,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:38,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:38,821.821 INFO    ] No update needed
[2026-10-25 23:34:38,824.824 INFO    ] Checking for camera pi updates...
[2026-10-25 23:34:38,857.857 INFO    ] 200
[2026-10-25 23:34:38,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:38,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:34:38,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:38,936.936 INFO    ] No camera update needed
[2026-10-25 23:34:38,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:34:38,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:34:38,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:34:38,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:34:40,991.991 INFO    ] ================================================
[2026-10-25 23:34:41,006.006 INFO    ] Launching Daemon at Sun Oct 25 23:34:41 IST 2026
[2026-10-25 23:34:41,017.017 INFO    ] ================================================
[2026-10-25 23:34:41,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:34:41
[2026-10-25 23:34:42,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:34:42,421.421 INFO    ] Initializing speech engine...
[2026-10-25 23:34:42,430.430 INFO    ] 2026-10-25 23:34:42
[2026-10-25 23:34:42,724.724 INFO    ] 2026-10-25 23:34:42
[2026-10-25 23:34:42,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:34:42,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:34:42,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:34:43,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:34:43,125.125 INFO    ] time= 25/10/2026 23:34:43
[2026-10-25 23:34:43,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:34:43,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:34:43,254.254 INFO    ] No existing commands found in stream
[2026-10-25 23:34:48,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:34:48,269.269 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-25 23:34:50,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:34:50,976.976 INFO    ] Checking for system updates...
[2026-10-25 23:34:51,012.012 INFO    ] 200
[2026-10-25 23:34:51,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:51,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:51,069.069 INFO    ] No update needed
[2026-10-25 23:34:51,072.072 INFO    ] Checking for camera pi updates...
[2026-10-25 23:34:51,110.110 INFO    ] 200
[2026-10-25 23:34:51,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:34:51,159.159 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:34:51,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:34:51,206.206 INFO    ] No camera update needed
[2026-10-25 23:34:51,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:34:51,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:34:51,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:34:51,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:34:53,262.262 INFO    ] ================================================
[2026-10-25 23:34:53,278.278 INFO    ] Launching Daemon at Sun Oct 25 23:34:53 IST 2026
[2026-10-25 23:34:53,289.289 INFO    ] ================================================
[2026-10-25 23:34:53,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:34:53
[2026-10-25 23:34:54,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:34:54,936.936 INFO    ] Initializing speech engine...
[2026-10-25 23:34:54,949.949 INFO    ] 2026-10-25 23:34:54
[2026-10-25 23:34:55,256.256 INFO    ] 2026-10-25 23:34:55
[2026-10-25 23:34:55,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:34:55,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:34:55,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:34:55,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:34:55,714.714 INFO    ] time= 25/10/2026 23:34:55
[2026-10-25 23:34:55,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:34:55,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:34:55,895.895 INFO    ] No existing commands found in stream
[2026-10-25 23:35:00,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:35:00,932.932 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-25 23:35:03,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:35:03,366.366 INFO    ] Checking for system updates...
[2026-10-25 23:35:03,406.406 INFO    ] 200
[2026-10-25 23:35:03,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:03,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:03,482.482 INFO    ] No update needed
[2026-10-25 23:35:03,484.484 INFO    ] Checking for camera pi updates...
[2026-10-25 23:35:03,528.528 INFO    ] 200
[2026-10-25 23:35:03,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:03,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:35:03,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:03,643.643 INFO    ] No camera update needed
[2026-10-25 23:35:03,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:35:03,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:35:03,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:35:03,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:35:05,699.699 INFO    ] ================================================
[2026-10-25 23:35:05,714.714 INFO    ] Launching Daemon at Sun Oct 25 23:35:05 IST 2026
[2026-10-25 23:35:05,725.725 INFO    ] ================================================
[2026-10-25 23:35:06,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:35:06
[2026-10-25 23:35:06,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:35:07,197.197 INFO    ] Initializing speech engine...
[2026-10-25 23:35:07,207.207 INFO    ] 2026-10-25 23:35:07
[2026-10-25 23:35:07,467.467 INFO    ] 2026-10-25 23:35:07
[2026-10-25 23:35:07,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:35:07,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:35:07,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:35:07,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:35:07,939.939 INFO    ] time= 25/10/2026 23:35:07
[2026-10-25 23:35:08,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:35:08,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:35:08,074.074 INFO    ] No existing commands found in stream
[2026-10-25 23:35:13,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:35:13,093.093 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 23:35:16,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:35:16,824.824 INFO    ] Checking for system updates...
[2026-10-25 23:35:16,864.864 INFO    ] 200
[2026-10-25 23:35:16,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:16,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:35:16,922.922 INFO    ] No update needed
[2026-10-25 23:35:16,924.924 INFO    ] Checking for camera pi updates...
[2026-10-25 23:35:16,962.962 INFO    ] 200
[2026-10-25 23:35:16,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:17,010.010 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:35:17,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:35:17,074.074 INFO    ] No camera update needed
[2026-10-25 23:35:17,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:35:17,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:35:17,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:35:17,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:35:19,132.132 INFO    ] ================================================
[2026-10-25 23:35:19,147.147 INFO    ] Launching Daemon at Sun Oct 25 23:35:19 IST 2026
[2026-10-25 23:35:19,158.158 INFO    ] ================================================
[2026-10-25 23:35:19,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:35:19
[2026-10-25 23:35:20,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:35:20,561.561 INFO    ] Initializing speech engine...
[2026-10-25 23:35:20,584.584 INFO    ] 2026-10-25 23:35:20
[2026-10-25 23:35:20,835.835 INFO    ] 2026-10-25 23:35:20
[2026-10-25 23:35:20,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:35:21,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:35:21,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:35:21,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:35:21,309.309 INFO    ] time= 25/10/2026 23:35:21
[2026-10-25 23:35:21,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:35:21,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:35:21,452.452 INFO    ] No existing commands found in stream
[2026-10-25 23:35:26,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:35:26,466.466 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-25 23:35:27,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:35:27,479.479 INFO    ] Checking for system updates...
[2026-10-25 23:35:27,518.518 INFO    ] 200
[2026-10-25 23:35:27,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:27,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:35:27,582.582 INFO    ] No update needed
[2026-10-25 23:35:27,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 23:35:27,622.622 INFO    ] 200
[2026-10-25 23:35:27,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:27,670.670 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:35:27,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:35:27,727.727 INFO    ] No camera update needed
[2026-10-25 23:35:27,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:35:27,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:35:27,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:35:27,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:35:29,785.785 INFO    ] ================================================
[2026-10-25 23:35:29,800.800 INFO    ] Launching Daemon at Sun Oct 25 23:35:29 IST 2026
[2026-10-25 23:35:29,811.811 INFO    ] ================================================
[2026-10-25 23:35:30,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:35:30
[2026-10-25 23:35:31,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:35:31,403.403 INFO    ] Initializing speech engine...
[2026-10-25 23:35:31,419.419 INFO    ] 2026-10-25 23:35:31
[2026-10-25 23:35:31,692.692 INFO    ] 2026-10-25 23:35:31
[2026-10-25 23:35:31,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:35:31,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:35:32,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:35:32,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:35:32,140.140 INFO    ] time= 25/10/2026 23:35:32
[2026-10-25 23:35:32,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:35:32,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:35:32,323.323 INFO    ] No existing commands found in stream
[2026-10-25 23:35:37,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:35:37,351.351 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-25 23:35:38,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:35:38,288.288 INFO    ] Checking for system updates...
[2026-10-25 23:35:38,327.327 INFO    ] 200
[2026-10-25 23:35:38,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:38,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:38,391.391 INFO    ] No update needed
[2026-10-25 23:35:38,393.393 INFO    ] Checking for camera pi updates...
[2026-10-25 23:35:38,430.430 INFO    ] 200
[2026-10-25 23:35:38,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:38,473.473 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:35:38,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:38,584.584 INFO    ] No camera update needed
[2026-10-25 23:35:38,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:35:38,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:35:38,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:35:38,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:35:40,639.639 INFO    ] ================================================
[2026-10-25 23:35:40,655.655 INFO    ] Launching Daemon at Sun Oct 25 23:35:40 IST 2026
[2026-10-25 23:35:40,666.666 INFO    ] ================================================
[2026-10-25 23:35:41,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:35:41
[2026-10-25 23:35:41,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:35:42,224.224 INFO    ] Initializing speech engine...
[2026-10-25 23:35:42,236.236 INFO    ] 2026-10-25 23:35:42
[2026-10-25 23:35:42,516.516 INFO    ] 2026-10-25 23:35:42
[2026-10-25 23:35:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:35:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:35:43,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:35:43,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:35:43,249.249 INFO    ] time= 25/10/2026 23:35:43
[2026-10-25 23:35:43,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:35:43,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:35:43,464.464 INFO    ] No existing commands found in stream
[2026-10-25 23:35:48,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:35:48,504.504 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-25 23:35:51,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:35:51,429.429 INFO    ] Checking for system updates...
[2026-10-25 23:35:51,467.467 INFO    ] 200
[2026-10-25 23:35:51,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:51,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:51,532.532 INFO    ] No update needed
[2026-10-25 23:35:51,534.534 INFO    ] Checking for camera pi updates...
[2026-10-25 23:35:51,568.568 INFO    ] 200
[2026-10-25 23:35:51,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:35:51,616.616 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:35:51,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:35:51,686.686 INFO    ] No camera update needed
[2026-10-25 23:35:51,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:35:51,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:35:51,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:35:51,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:35:53,743.743 INFO    ] ================================================
[2026-10-25 23:35:53,759.759 INFO    ] Launching Daemon at Sun Oct 25 23:35:53 IST 2026
[2026-10-25 23:35:53,770.770 INFO    ] ================================================
[2026-10-25 23:35:54,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:35:54
[2026-10-25 23:35:54,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:35:55,190.190 INFO    ] Initializing speech engine...
[2026-10-25 23:35:55,199.199 INFO    ] 2026-10-25 23:35:55
[2026-10-25 23:35:55,444.444 INFO    ] 2026-10-25 23:35:55
[2026-10-25 23:35:55,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:35:55,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:35:55,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:35:55,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:35:55,811.811 INFO    ] time= 25/10/2026 23:35:55
[2026-10-25 23:35:55,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:35:55,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:35:55,982.982 INFO    ] No existing commands found in stream
[2026-10-25 23:36:01,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:36:01,015.015 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-25 23:36:03,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:36:03,798.798 INFO    ] Checking for system updates...
[2026-10-25 23:36:03,838.838 INFO    ] 200
[2026-10-25 23:36:03,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:03,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:03,903.903 INFO    ] No update needed
[2026-10-25 23:36:03,905.905 INFO    ] Checking for camera pi updates...
[2026-10-25 23:36:03,942.942 INFO    ] 200
[2026-10-25 23:36:03,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:03,989.989 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:36:04,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:04,048.048 INFO    ] No camera update needed
[2026-10-25 23:36:04,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:36:04,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:36:04,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:36:04,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:36:06,104.104 INFO    ] ================================================
[2026-10-25 23:36:06,119.119 INFO    ] Launching Daemon at Sun Oct 25 23:36:06 IST 2026
[2026-10-25 23:36:06,131.131 INFO    ] ================================================
[2026-10-25 23:36:06,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:36:06
[2026-10-25 23:36:07,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:36:07,735.735 INFO    ] Initializing speech engine...
[2026-10-25 23:36:07,749.749 INFO    ] 2026-10-25 23:36:07
[2026-10-25 23:36:08,054.054 INFO    ] 2026-10-25 23:36:08
[2026-10-25 23:36:08,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:36:08,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:36:08,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:36:08,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:36:08,558.558 INFO    ] time= 25/10/2026 23:36:08
[2026-10-25 23:36:08,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:36:08,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:36:08,711.711 INFO    ] No existing commands found in stream
[2026-10-25 23:36:13,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:36:13,731.731 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-25 23:36:14,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:36:14,710.710 INFO    ] Checking for system updates...
[2026-10-25 23:36:14,751.751 INFO    ] 200
[2026-10-25 23:36:14,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:14,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:36:14,817.817 INFO    ] No update needed
[2026-10-25 23:36:14,820.820 INFO    ] Checking for camera pi updates...
[2026-10-25 23:36:14,858.858 INFO    ] 200
[2026-10-25 23:36:14,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:14,902.902 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:36:14,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:36:14,954.954 INFO    ] No camera update needed
[2026-10-25 23:36:14,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:36:14,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:36:14,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:36:14,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:36:17,013.013 INFO    ] ================================================
[2026-10-25 23:36:17,028.028 INFO    ] Launching Daemon at Sun Oct 25 23:36:17 IST 2026
[2026-10-25 23:36:17,039.039 INFO    ] ================================================
[2026-10-25 23:36:17,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:36:17
[2026-10-25 23:36:18,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:36:18,429.429 INFO    ] Initializing speech engine...
[2026-10-25 23:36:18,444.444 INFO    ] 2026-10-25 23:36:18
[2026-10-25 23:36:18,710.710 INFO    ] 2026-10-25 23:36:18
[2026-10-25 23:36:18,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:36:18,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:36:18,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:36:19,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:36:19,161.161 INFO    ] time= 25/10/2026 23:36:19
[2026-10-25 23:36:19,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:36:19,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:36:19,326.326 INFO    ] No existing commands found in stream
[2026-10-25 23:36:24,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:36:24,340.340 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-25 23:36:26,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:36:26,241.241 INFO    ] Checking for system updates...
[2026-10-25 23:36:26,280.280 INFO    ] 200
[2026-10-25 23:36:26,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:26,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:26,338.338 INFO    ] No update needed
[2026-10-25 23:36:26,341.341 INFO    ] Checking for camera pi updates...
[2026-10-25 23:36:26,378.378 INFO    ] 200
[2026-10-25 23:36:26,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:26,425.425 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:36:26,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:26,481.481 INFO    ] No camera update needed
[2026-10-25 23:36:26,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:36:26,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:36:26,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:36:26,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:36:28,538.538 INFO    ] ================================================
[2026-10-25 23:36:28,553.553 INFO    ] Launching Daemon at Sun Oct 25 23:36:28 IST 2026
[2026-10-25 23:36:28,564.564 INFO    ] ================================================
[2026-10-25 23:36:29,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:36:29
[2026-10-25 23:36:29,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:36:30,160.160 INFO    ] Initializing speech engine...
[2026-10-25 23:36:30,172.172 INFO    ] 2026-10-25 23:36:30
[2026-10-25 23:36:30,481.481 INFO    ] 2026-10-25 23:36:30
[2026-10-25 23:36:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:36:30,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:36:30,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:36:30,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:36:30,981.981 INFO    ] time= 25/10/2026 23:36:30
[2026-10-25 23:36:31,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:36:31,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:36:31,131.131 INFO    ] No existing commands found in stream
[2026-10-25 23:36:36,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:36:36,150.150 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-25 23:36:39,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:36:39,363.363 INFO    ] Checking for system updates...
[2026-10-25 23:36:39,403.403 INFO    ] 200
[2026-10-25 23:36:39,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:39,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:39,470.470 INFO    ] No update needed
[2026-10-25 23:36:39,473.473 INFO    ] Checking for camera pi updates...
[2026-10-25 23:36:39,511.511 INFO    ] 200
[2026-10-25 23:36:39,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:39,560.560 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:36:39,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:36:39,595.595 INFO    ] No camera update needed
[2026-10-25 23:36:39,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:36:39,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:36:39,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:36:39,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:36:41,651.651 INFO    ] ================================================
[2026-10-25 23:36:41,667.667 INFO    ] Launching Daemon at Sun Oct 25 23:36:41 IST 2026
[2026-10-25 23:36:41,678.678 INFO    ] ================================================
[2026-10-25 23:36:42,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:36:42
[2026-10-25 23:36:42,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:36:43,121.121 INFO    ] Initializing speech engine...
[2026-10-25 23:36:43,130.130 INFO    ] 2026-10-25 23:36:43
[2026-10-25 23:36:43,378.378 INFO    ] 2026-10-25 23:36:43
[2026-10-25 23:36:43,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:36:43,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:36:43,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:36:43,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:36:43,826.826 INFO    ] time= 25/10/2026 23:36:43
[2026-10-25 23:36:43,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:36:43,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:36:43,992.992 INFO    ] No existing commands found in stream
[2026-10-25 23:36:49,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:36:49,006.006 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-25 23:36:50,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:36:50,618.618 INFO    ] Checking for system updates...
[2026-10-25 23:36:50,658.658 INFO    ] 200
[2026-10-25 23:36:50,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:50,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:36:50,716.716 INFO    ] No update needed
[2026-10-25 23:36:50,719.719 INFO    ] Checking for camera pi updates...
[2026-10-25 23:36:50,753.753 INFO    ] 200
[2026-10-25 23:36:50,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:36:50,806.806 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:36:50,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:36:50,870.870 INFO    ] No camera update needed
[2026-10-25 23:36:50,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:36:50,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:36:50,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:36:50,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:36:52,931.931 INFO    ] ================================================
[2026-10-25 23:36:52,946.946 INFO    ] Launching Daemon at Sun Oct 25 23:36:52 IST 2026
[2026-10-25 23:36:52,957.957 INFO    ] ================================================
[2026-10-25 23:36:53,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:36:53
[2026-10-25 23:36:54,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:36:54,394.394 INFO    ] Initializing speech engine...
[2026-10-25 23:36:54,404.404 INFO    ] 2026-10-25 23:36:54
[2026-10-25 23:36:54,648.648 INFO    ] 2026-10-25 23:36:54
[2026-10-25 23:36:54,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:36:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:36:54,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:36:55,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:36:55,099.099 INFO    ] time= 25/10/2026 23:36:55
[2026-10-25 23:36:55,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:36:55,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:36:55,261.261 INFO    ] No existing commands found in stream
[2026-10-25 23:37:00,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:37:00,275.275 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 23:37:03,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:37:03,923.923 INFO    ] Checking for system updates...
[2026-10-25 23:37:03,964.964 INFO    ] 200
[2026-10-25 23:37:03,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:04,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:04,024.024 INFO    ] No update needed
[2026-10-25 23:37:04,027.027 INFO    ] Checking for camera pi updates...
[2026-10-25 23:37:04,062.062 INFO    ] 200
[2026-10-25 23:37:04,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:04,107.107 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:37:04,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:04,159.159 INFO    ] No camera update needed
[2026-10-25 23:37:04,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:37:04,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:37:04,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:37:04,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:37:06,218.218 INFO    ] ================================================
[2026-10-25 23:37:06,234.234 INFO    ] Launching Daemon at Sun Oct 25 23:37:06 IST 2026
[2026-10-25 23:37:06,245.245 INFO    ] ================================================
[2026-10-25 23:37:06,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:37:06
[2026-10-25 23:37:07,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:37:07,653.653 INFO    ] Initializing speech engine...
[2026-10-25 23:37:07,676.676 INFO    ] 2026-10-25 23:37:07
[2026-10-25 23:37:07,931.931 INFO    ] 2026-10-25 23:37:07
[2026-10-25 23:37:07,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:37:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:37:08,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:37:08,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:37:08,404.404 INFO    ] time= 25/10/2026 23:37:08
[2026-10-25 23:37:08,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:37:08,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:37:08,556.556 INFO    ] No existing commands found in stream
[2026-10-25 23:37:13,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:37:13,571.571 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-25 23:37:14,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:37:14,303.303 INFO    ] Checking for system updates...
[2026-10-25 23:37:14,343.343 INFO    ] 200
[2026-10-25 23:37:14,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:14,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:14,401.401 INFO    ] No update needed
[2026-10-25 23:37:14,404.404 INFO    ] Checking for camera pi updates...
[2026-10-25 23:37:14,441.441 INFO    ] 200
[2026-10-25 23:37:14,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:14,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:37:14,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:14,542.542 INFO    ] No camera update needed
[2026-10-25 23:37:14,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:37:14,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:37:14,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:37:14,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:37:16,598.598 INFO    ] ================================================
[2026-10-25 23:37:16,613.613 INFO    ] Launching Daemon at Sun Oct 25 23:37:16 IST 2026
[2026-10-25 23:37:16,623.623 INFO    ] ================================================
[2026-10-25 23:37:17,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:37:17
[2026-10-25 23:37:17,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:37:18,214.214 INFO    ] Initializing speech engine...
[2026-10-25 23:37:18,222.222 INFO    ] 2026-10-25 23:37:18
[2026-10-25 23:37:18,493.493 INFO    ] 2026-10-25 23:37:18
[2026-10-25 23:37:18,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:37:18,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:37:18,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:37:18,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:37:19,014.014 INFO    ] time= 25/10/2026 23:37:18
[2026-10-25 23:37:19,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:37:19,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:37:19,180.180 INFO    ] No existing commands found in stream
[2026-10-25 23:37:24,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:37:24,209.209 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-25 23:37:28,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:37:28,517.517 INFO    ] Checking for system updates...
[2026-10-25 23:37:28,558.558 INFO    ] 200
[2026-10-25 23:37:28,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:28,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:28,624.624 INFO    ] No update needed
[2026-10-25 23:37:28,627.627 INFO    ] Checking for camera pi updates...
[2026-10-25 23:37:28,662.662 INFO    ] 200
[2026-10-25 23:37:28,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:28,713.713 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:37:28,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:37:28,767.767 INFO    ] No camera update needed
[2026-10-25 23:37:28,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:37:28,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:37:28,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:37:28,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:37:30,826.826 INFO    ] ================================================
[2026-10-25 23:37:30,842.842 INFO    ] Launching Daemon at Sun Oct 25 23:37:30 IST 2026
[2026-10-25 23:37:30,853.853 INFO    ] ================================================
[2026-10-25 23:37:31,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:37:31
[2026-10-25 23:37:32,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:37:32,344.344 INFO    ] Initializing speech engine...
[2026-10-25 23:37:32,355.355 INFO    ] 2026-10-25 23:37:32
[2026-10-25 23:37:32,641.641 INFO    ] 2026-10-25 23:37:32
[2026-10-25 23:37:32,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:37:32,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:37:32,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:37:33,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:37:33,081.081 INFO    ] time= 25/10/2026 23:37:33
[2026-10-25 23:37:33,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:37:33,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:37:33,266.266 INFO    ] No existing commands found in stream
[2026-10-25 23:37:38,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:37:38,280.280 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 23:37:43,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:37:43,143.143 INFO    ] Checking for system updates...
[2026-10-25 23:37:43,182.182 INFO    ] 200
[2026-10-25 23:37:43,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:43,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:37:43,242.242 INFO    ] No update needed
[2026-10-25 23:37:43,244.244 INFO    ] Checking for camera pi updates...
[2026-10-25 23:37:43,282.282 INFO    ] 200
[2026-10-25 23:37:43,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:43,326.326 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:37:43,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:37:43,483.483 INFO    ] No camera update needed
[2026-10-25 23:37:43,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:37:43,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:37:43,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:37:43,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:37:45,539.539 INFO    ] ================================================
[2026-10-25 23:37:45,554.554 INFO    ] Launching Daemon at Sun Oct 25 23:37:45 IST 2026
[2026-10-25 23:37:45,565.565 INFO    ] ================================================
[2026-10-25 23:37:46,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:37:46
[2026-10-25 23:37:46,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:37:46,983.983 INFO    ] Initializing speech engine...
[2026-10-25 23:37:46,992.992 INFO    ] 2026-10-25 23:37:46
[2026-10-25 23:37:47,283.283 INFO    ] 2026-10-25 23:37:47
[2026-10-25 23:37:47,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:37:47,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:37:47,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:37:47,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:37:47,693.693 INFO    ] time= 25/10/2026 23:37:47
[2026-10-25 23:37:47,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:37:47,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:37:47,783.783 INFO    ] No existing commands found in stream
[2026-10-25 23:37:52,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:37:52,816.816 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-25 23:37:55,869.869 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:37:55,872.872 INFO    ] Checking for system updates...
[2026-10-25 23:37:55,908.908 INFO    ] 200
[2026-10-25 23:37:55,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:55,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:37:55,972.972 INFO    ] No update needed
[2026-10-25 23:37:55,974.974 INFO    ] Checking for camera pi updates...
[2026-10-25 23:37:56,008.008 INFO    ] 200
[2026-10-25 23:37:56,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:37:56,056.056 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:37:56,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:37:56,108.108 INFO    ] No camera update needed
[2026-10-25 23:37:56,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:37:56,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:37:56,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:37:56,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:37:58,164.164 INFO    ] ================================================
[2026-10-25 23:37:58,180.180 INFO    ] Launching Daemon at Sun Oct 25 23:37:58 IST 2026
[2026-10-25 23:37:58,191.191 INFO    ] ================================================
[2026-10-25 23:37:58,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:37:58
[2026-10-25 23:37:59,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:37:59,656.656 INFO    ] Initializing speech engine...
[2026-10-25 23:37:59,663.663 INFO    ] 2026-10-25 23:37:59
[2026-10-25 23:37:59,911.911 INFO    ] 2026-10-25 23:37:59
[2026-10-25 23:37:59,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:38:00,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:38:00,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:38:00,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:38:00,391.391 INFO    ] time= 25/10/2026 23:38:00
[2026-10-25 23:38:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:38:00,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:38:00,532.532 INFO    ] No existing commands found in stream
[2026-10-25 23:38:05,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:38:05,547.547 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-25 23:38:07,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:38:07,714.714 INFO    ] Checking for system updates...
[2026-10-25 23:38:07,749.749 INFO    ] 200
[2026-10-25 23:38:07,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:07,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:07,809.809 INFO    ] No update needed
[2026-10-25 23:38:07,812.812 INFO    ] Checking for camera pi updates...
[2026-10-25 23:38:07,845.845 INFO    ] 200
[2026-10-25 23:38:07,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:07,889.889 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:38:07,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:07,943.943 INFO    ] No camera update needed
[2026-10-25 23:38:07,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:38:07,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:38:07,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:38:07,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:38:10,002.002 INFO    ] ================================================
[2026-10-25 23:38:10,017.017 INFO    ] Launching Daemon at Sun Oct 25 23:38:10 IST 2026
[2026-10-25 23:38:10,028.028 INFO    ] ================================================
[2026-10-25 23:38:10,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:38:10
[2026-10-25 23:38:11,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:38:11,438.438 INFO    ] Initializing speech engine...
[2026-10-25 23:38:11,447.447 INFO    ] 2026-10-25 23:38:11
[2026-10-25 23:38:11,734.734 INFO    ] 2026-10-25 23:38:11
[2026-10-25 23:38:11,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:38:13,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:38:13,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:38:13,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:38:13,236.236 INFO    ] time= 25/10/2026 23:38:13
[2026-10-25 23:38:13,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:38:13,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:38:13,300.300 INFO    ] No existing commands found in stream
[2026-10-25 23:38:18,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:38:18,314.314 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-25 23:38:21,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:38:21,778.778 INFO    ] Checking for system updates...
[2026-10-25 23:38:21,814.814 INFO    ] 200
[2026-10-25 23:38:21,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:21,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:38:21,873.873 INFO    ] No update needed
[2026-10-25 23:38:21,875.875 INFO    ] Checking for camera pi updates...
[2026-10-25 23:38:21,909.909 INFO    ] 200
[2026-10-25 23:38:21,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:21,952.952 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:38:22,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:38:22,012.012 INFO    ] No camera update needed
[2026-10-25 23:38:22,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:38:22,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:38:22,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:38:22,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:38:24,066.066 INFO    ] ================================================
[2026-10-25 23:38:24,081.081 INFO    ] Launching Daemon at Sun Oct 25 23:38:24 IST 2026
[2026-10-25 23:38:24,093.093 INFO    ] ================================================
[2026-10-25 23:38:24,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:38:24
[2026-10-25 23:38:25,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:38:25,508.508 INFO    ] Initializing speech engine...
[2026-10-25 23:38:25,516.516 INFO    ] 2026-10-25 23:38:25
[2026-10-25 23:38:25,766.766 INFO    ] 2026-10-25 23:38:25
[2026-10-25 23:38:25,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:38:25,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:38:26,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:38:26,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:38:26,140.140 INFO    ] time= 25/10/2026 23:38:26
[2026-10-25 23:38:26,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:38:26,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:38:26,313.313 INFO    ] No existing commands found in stream
[2026-10-25 23:38:31,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:38:31,346.346 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-25 23:38:33,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:38:33,698.698 INFO    ] Checking for system updates...
[2026-10-25 23:38:33,739.739 INFO    ] 200
[2026-10-25 23:38:33,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:33,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:33,797.797 INFO    ] No update needed
[2026-10-25 23:38:33,799.799 INFO    ] Checking for camera pi updates...
[2026-10-25 23:38:33,836.836 INFO    ] 200
[2026-10-25 23:38:33,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:33,882.882 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:38:33,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:33,935.935 INFO    ] No camera update needed
[2026-10-25 23:38:33,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:38:33,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:38:33,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:38:33,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:38:35,990.990 INFO    ] ================================================
[2026-10-25 23:38:36,006.006 INFO    ] Launching Daemon at Sun Oct 25 23:38:36 IST 2026
[2026-10-25 23:38:36,017.017 INFO    ] ================================================
[2026-10-25 23:38:36,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:38:36
[2026-10-25 23:38:37,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:38:37,459.459 INFO    ] Initializing speech engine...
[2026-10-25 23:38:37,465.465 INFO    ] 2026-10-25 23:38:37
[2026-10-25 23:38:37,759.759 INFO    ] 2026-10-25 23:38:37
[2026-10-25 23:38:37,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:38:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:38:38,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:38:38,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:38:38,246.246 INFO    ] time= 25/10/2026 23:38:38
[2026-10-25 23:38:38,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:38:38,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:38:38,443.443 INFO    ] No existing commands found in stream
[2026-10-25 23:38:43,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:38:43,459.459 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 23:38:46,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:38:46,834.834 INFO    ] Checking for system updates...
[2026-10-25 23:38:46,874.874 INFO    ] 200
[2026-10-25 23:38:46,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:46,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:38:46,932.932 INFO    ] No update needed
[2026-10-25 23:38:46,934.934 INFO    ] Checking for camera pi updates...
[2026-10-25 23:38:46,969.969 INFO    ] 200
[2026-10-25 23:38:46,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:47,017.017 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:38:47,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:38:47,065.065 INFO    ] No camera update needed
[2026-10-25 23:38:47,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:38:47,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:38:47,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:38:47,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:38:49,121.121 INFO    ] ================================================
[2026-10-25 23:38:49,137.137 INFO    ] Launching Daemon at Sun Oct 25 23:38:49 IST 2026
[2026-10-25 23:38:49,149.149 INFO    ] ================================================
[2026-10-25 23:38:49,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:38:49
[2026-10-25 23:38:50,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:38:50,567.567 INFO    ] Initializing speech engine...
[2026-10-25 23:38:50,576.576 INFO    ] 2026-10-25 23:38:50
[2026-10-25 23:38:50,826.826 INFO    ] 2026-10-25 23:38:50
[2026-10-25 23:38:50,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:38:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:38:51,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:38:51,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:38:51,181.181 INFO    ] time= 25/10/2026 23:38:51
[2026-10-25 23:38:51,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:38:51,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:38:51,278.278 INFO    ] No existing commands found in stream
[2026-10-25 23:38:56,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:38:56,298.298 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 23:38:59,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:38:59,536.536 INFO    ] Checking for system updates...
[2026-10-25 23:38:59,573.573 INFO    ] 200
[2026-10-25 23:38:59,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:59,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:59,631.631 INFO    ] No update needed
[2026-10-25 23:38:59,634.634 INFO    ] Checking for camera pi updates...
[2026-10-25 23:38:59,667.667 INFO    ] 200
[2026-10-25 23:38:59,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:38:59,711.711 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:38:59,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:38:59,763.763 INFO    ] No camera update needed
[2026-10-25 23:38:59,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:38:59,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:38:59,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:38:59,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:01,837.837 INFO    ] ================================================
[2026-10-25 23:39:01,863.863 INFO    ] Launching Daemon at Sun Oct 25 23:39:01 IST 2026
[2026-10-25 23:39:01,880.880 INFO    ] ================================================
[2026-10-25 23:39:02,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:02
[2026-10-25 23:39:03,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:39:03,486.486 INFO    ] Initializing speech engine...
[2026-10-25 23:39:03,492.492 INFO    ] 2026-10-25 23:39:03
[2026-10-25 23:39:03,799.799 INFO    ] 2026-10-25 23:39:03
[2026-10-25 23:39:03,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:39:04,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:39:04,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:39:04,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:39:04,204.204 INFO    ] time= 25/10/2026 23:39:04
[2026-10-25 23:39:04,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:39:04,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:39:04,366.366 INFO    ] No existing commands found in stream
[2026-10-25 23:39:09,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:39:09,398.398 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-25 23:39:10,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:39:10,292.292 INFO    ] Checking for system updates...
[2026-10-25 23:39:10,331.331 INFO    ] 200
[2026-10-25 23:39:10,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:10,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:10,388.388 INFO    ] No update needed
[2026-10-25 23:39:10,390.390 INFO    ] Checking for camera pi updates...
[2026-10-25 23:39:10,426.426 INFO    ] 200
[2026-10-25 23:39:10,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:10,469.469 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:39:10,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:10,519.519 INFO    ] No camera update needed
[2026-10-25 23:39:10,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:39:10,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:39:10,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:39:10,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:12,573.573 INFO    ] ================================================
[2026-10-25 23:39:12,588.588 INFO    ] Launching Daemon at Sun Oct 25 23:39:12 IST 2026
[2026-10-25 23:39:12,599.599 INFO    ] ================================================
[2026-10-25 23:39:13,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:13
[2026-10-25 23:39:13,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:39:14,181.181 INFO    ] Initializing speech engine...
[2026-10-25 23:39:14,189.189 INFO    ] 2026-10-25 23:39:14
[2026-10-25 23:39:14,457.457 INFO    ] 2026-10-25 23:39:14
[2026-10-25 23:39:14,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:39:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:39:14,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:39:14,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:39:14,830.830 INFO    ] time= 25/10/2026 23:39:14
[2026-10-25 23:39:14,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:39:14,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:39:15,004.004 INFO    ] No existing commands found in stream
[2026-10-25 23:39:20,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:39:20,033.033 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-25 23:39:21,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:39:21,007.007 INFO    ] Checking for system updates...
[2026-10-25 23:39:21,043.043 INFO    ] 200
[2026-10-25 23:39:21,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:21,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:21,104.104 INFO    ] No update needed
[2026-10-25 23:39:21,106.106 INFO    ] Checking for camera pi updates...
[2026-10-25 23:39:21,143.143 INFO    ] 200
[2026-10-25 23:39:21,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:21,191.191 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:39:21,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:21,255.255 INFO    ] No camera update needed
[2026-10-25 23:39:21,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:39:21,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:39:21,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:39:21,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:23,313.313 INFO    ] ================================================
[2026-10-25 23:39:23,329.329 INFO    ] Launching Daemon at Sun Oct 25 23:39:23 IST 2026
[2026-10-25 23:39:23,340.340 INFO    ] ================================================
[2026-10-25 23:39:23,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:23
[2026-10-25 23:39:24,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:39:24,790.790 INFO    ] Initializing speech engine...
[2026-10-25 23:39:24,799.799 INFO    ] 2026-10-25 23:39:24
[2026-10-25 23:39:25,062.062 INFO    ] 2026-10-25 23:39:25
[2026-10-25 23:39:25,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:39:25,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:39:25,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:39:25,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:39:25,526.526 INFO    ] time= 25/10/2026 23:39:25
[2026-10-25 23:39:25,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:39:25,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:39:25,670.670 INFO    ] No existing commands found in stream
[2026-10-25 23:39:30,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:39:30,698.698 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-25 23:39:32,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:39:32,943.943 INFO    ] Checking for system updates...
[2026-10-25 23:39:32,980.980 INFO    ] 200
[2026-10-25 23:39:32,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:33,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:33,043.043 INFO    ] No update needed
[2026-10-25 23:39:33,046.046 INFO    ] Checking for camera pi updates...
[2026-10-25 23:39:33,080.080 INFO    ] 200
[2026-10-25 23:39:33,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:33,127.127 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:39:33,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:33,179.179 INFO    ] No camera update needed
[2026-10-25 23:39:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:39:33,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:39:33,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:39:33,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:35,234.234 INFO    ] ================================================
[2026-10-25 23:39:35,249.249 INFO    ] Launching Daemon at Sun Oct 25 23:39:35 IST 2026
[2026-10-25 23:39:35,259.259 INFO    ] ================================================
[2026-10-25 23:39:35,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:35
[2026-10-25 23:39:36,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:39:36,706.706 INFO    ] Initializing speech engine...
[2026-10-25 23:39:36,714.714 INFO    ] 2026-10-25 23:39:36
[2026-10-25 23:39:36,973.973 INFO    ] 2026-10-25 23:39:36
[2026-10-25 23:39:37,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:39:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:39:37,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:39:37,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:39:37,404.404 INFO    ] time= 25/10/2026 23:39:37
[2026-10-25 23:39:37,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:39:37,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:39:37,578.578 INFO    ] No existing commands found in stream
[2026-10-25 23:39:42,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:39:42,592.592 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 23:39:44,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:39:44,388.388 INFO    ] Checking for system updates...
[2026-10-25 23:39:44,424.424 INFO    ] 200
[2026-10-25 23:39:44,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:44,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:44,486.486 INFO    ] No update needed
[2026-10-25 23:39:44,489.489 INFO    ] Checking for camera pi updates...
[2026-10-25 23:39:44,525.525 INFO    ] 200
[2026-10-25 23:39:44,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:44,567.567 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:39:44,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:39:44,623.623 INFO    ] No camera update needed
[2026-10-25 23:39:44,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:39:44,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:39:44,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:39:44,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:46,678.678 INFO    ] ================================================
[2026-10-25 23:39:46,693.693 INFO    ] Launching Daemon at Sun Oct 25 23:39:46 IST 2026
[2026-10-25 23:39:46,704.704 INFO    ] ================================================
[2026-10-25 23:39:47,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:47
[2026-10-25 23:39:47,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:39:48,155.155 INFO    ] Initializing speech engine...
[2026-10-25 23:39:48,164.164 INFO    ] 2026-10-25 23:39:48
[2026-10-25 23:39:48,412.412 INFO    ] 2026-10-25 23:39:48
[2026-10-25 23:39:48,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:39:48,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:39:48,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:39:48,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:39:48,913.913 INFO    ] time= 25/10/2026 23:39:48
[2026-10-25 23:39:48,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:39:48,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:39:49,112.112 INFO    ] No existing commands found in stream
[2026-10-25 23:39:54,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:39:54,135.135 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 23:39:56,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:39:56,402.402 INFO    ] Checking for system updates...
[2026-10-25 23:39:56,438.438 INFO    ] 200
[2026-10-25 23:39:56,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:56,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:39:56,500.500 INFO    ] No update needed
[2026-10-25 23:39:56,503.503 INFO    ] Checking for camera pi updates...
[2026-10-25 23:39:56,536.536 INFO    ] 200
[2026-10-25 23:39:56,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:39:56,580.580 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:39:56,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:39:56,735.735 INFO    ] No camera update needed
[2026-10-25 23:39:56,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:39:56,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:39:56,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:39:56,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:39:58,791.791 INFO    ] ================================================
[2026-10-25 23:39:58,805.805 INFO    ] Launching Daemon at Sun Oct 25 23:39:58 IST 2026
[2026-10-25 23:39:58,816.816 INFO    ] ================================================
[2026-10-25 23:39:59,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:39:59
[2026-10-25 23:39:59,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:40:00,208.208 INFO    ] Initializing speech engine...
[2026-10-25 23:40:00,229.229 INFO    ] 2026-10-25 23:40:00
[2026-10-25 23:40:00,489.489 INFO    ] 2026-10-25 23:40:00
[2026-10-25 23:40:00,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:40:00,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:40:00,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:40:00,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:40:00,865.865 INFO    ] time= 25/10/2026 23:40:00
[2026-10-25 23:40:00,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:40:00,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:40:01,043.043 INFO    ] No existing commands found in stream
[2026-10-25 23:40:06,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:40:06,071.071 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-25 23:40:08,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:40:08,114.114 INFO    ] Checking for system updates...
[2026-10-25 23:40:08,154.154 INFO    ] 200
[2026-10-25 23:40:08,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:08,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:08,218.218 INFO    ] No update needed
[2026-10-25 23:40:08,221.221 INFO    ] Checking for camera pi updates...
[2026-10-25 23:40:08,254.254 INFO    ] 200
[2026-10-25 23:40:08,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:08,302.302 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:40:08,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:08,362.362 INFO    ] No camera update needed
[2026-10-25 23:40:08,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:40:08,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:40:08,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:40:08,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:40:10,416.416 INFO    ] ================================================
[2026-10-25 23:40:10,431.431 INFO    ] Launching Daemon at Sun Oct 25 23:40:10 IST 2026
[2026-10-25 23:40:10,441.441 INFO    ] ================================================
[2026-10-25 23:40:11,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:40:11
[2026-10-25 23:40:11,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:40:11,836.836 INFO    ] Initializing speech engine...
[2026-10-25 23:40:11,842.842 INFO    ] 2026-10-25 23:40:11
[2026-10-25 23:40:12,116.116 INFO    ] 2026-10-25 23:40:12
[2026-10-25 23:40:12,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:40:14,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:40:14,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:40:14,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:40:14,395.395 INFO    ] time= 25/10/2026 23:40:14
[2026-10-25 23:40:14,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:40:14,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:40:14,514.514 INFO    ] No existing commands found in stream
[2026-10-25 23:40:19,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:40:19,541.541 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-25 23:40:23,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:40:23,778.778 INFO    ] Checking for system updates...
[2026-10-25 23:40:23,814.814 INFO    ] 200
[2026-10-25 23:40:23,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:23,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:40:23,871.871 INFO    ] No update needed
[2026-10-25 23:40:23,873.873 INFO    ] Checking for camera pi updates...
[2026-10-25 23:40:23,907.907 INFO    ] 200
[2026-10-25 23:40:23,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:23,955.955 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:40:24,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:40:24,007.007 INFO    ] No camera update needed
[2026-10-25 23:40:24,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:40:24,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:40:24,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:40:24,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:40:26,063.063 INFO    ] ================================================
[2026-10-25 23:40:26,078.078 INFO    ] Launching Daemon at Sun Oct 25 23:40:26 IST 2026
[2026-10-25 23:40:26,088.088 INFO    ] ================================================
[2026-10-25 23:40:26,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:40:26
[2026-10-25 23:40:27,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:40:27,481.481 INFO    ] Initializing speech engine...
[2026-10-25 23:40:27,489.489 INFO    ] 2026-10-25 23:40:27
[2026-10-25 23:40:27,762.762 INFO    ] 2026-10-25 23:40:27
[2026-10-25 23:40:27,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:40:27,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:40:28,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:40:28,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:40:28,141.141 INFO    ] time= 25/10/2026 23:40:28
[2026-10-25 23:40:28,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:40:28,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:40:28,300.300 INFO    ] No existing commands found in stream
[2026-10-25 23:40:33,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:40:33,326.326 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-25 23:40:37,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:40:37,399.399 INFO    ] Checking for system updates...
[2026-10-25 23:40:37,441.441 INFO    ] 200
[2026-10-25 23:40:37,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:37,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:37,506.506 INFO    ] No update needed
[2026-10-25 23:40:37,509.509 INFO    ] Checking for camera pi updates...
[2026-10-25 23:40:37,544.544 INFO    ] 200
[2026-10-25 23:40:37,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:37,589.589 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:40:37,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:37,644.644 INFO    ] No camera update needed
[2026-10-25 23:40:37,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:40:37,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:40:37,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:40:37,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:40:39,702.702 INFO    ] ================================================
[2026-10-25 23:40:39,717.717 INFO    ] Launching Daemon at Sun Oct 25 23:40:39 IST 2026
[2026-10-25 23:40:39,727.727 INFO    ] ================================================
[2026-10-25 23:40:40,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:40:40
[2026-10-25 23:40:40,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:40:41,113.113 INFO    ] Initializing speech engine...
[2026-10-25 23:40:41,121.121 INFO    ] 2026-10-25 23:40:41
[2026-10-25 23:40:41,391.391 INFO    ] 2026-10-25 23:40:41
[2026-10-25 23:40:41,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:40:41,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:40:41,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:40:41,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:40:41,855.855 INFO    ] time= 25/10/2026 23:40:41
[2026-10-25 23:40:41,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:40:41,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:40:42,001.001 INFO    ] No existing commands found in stream
[2026-10-25 23:40:47,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:40:47,016.016 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-25 23:40:48,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:40:48,987.987 INFO    ] Checking for system updates...
[2026-10-25 23:40:49,023.023 INFO    ] 200
[2026-10-25 23:40:49,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:49,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:49,088.088 INFO    ] No update needed
[2026-10-25 23:40:49,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 23:40:49,128.128 INFO    ] 200
[2026-10-25 23:40:49,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:40:49,171.171 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:40:49,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:40:49,235.235 INFO    ] No camera update needed
[2026-10-25 23:40:49,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:40:49,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:40:49,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:40:49,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:40:51,290.290 INFO    ] ================================================
[2026-10-25 23:40:51,305.305 INFO    ] Launching Daemon at Sun Oct 25 23:40:51 IST 2026
[2026-10-25 23:40:51,316.316 INFO    ] ================================================
[2026-10-25 23:40:51,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:40:51
[2026-10-25 23:40:52,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:40:52,762.762 INFO    ] Initializing speech engine...
[2026-10-25 23:40:52,770.770 INFO    ] 2026-10-25 23:40:52
[2026-10-25 23:40:53,029.029 INFO    ] 2026-10-25 23:40:53
[2026-10-25 23:40:53,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:40:53,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:40:53,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:40:53,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:40:53,515.515 INFO    ] time= 25/10/2026 23:40:53
[2026-10-25 23:40:53,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:40:53,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:40:53,707.707 INFO    ] No existing commands found in stream
[2026-10-25 23:40:58,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:40:58,734.734 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-25 23:41:00,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:41:00,038.038 INFO    ] Checking for system updates...
[2026-10-25 23:41:00,079.079 INFO    ] 200
[2026-10-25 23:41:00,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:00,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:00,147.147 INFO    ] No update needed
[2026-10-25 23:41:00,149.149 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:00,183.183 INFO    ] 200
[2026-10-25 23:41:00,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:00,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:00,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:00,287.287 INFO    ] No camera update needed
[2026-10-25 23:41:00,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:00,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:00,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:00,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:41:02,353.353 INFO    ] ================================================
[2026-10-25 23:41:02,378.378 INFO    ] Launching Daemon at Sun Oct 25 23:41:02 IST 2026
[2026-10-25 23:41:02,396.396 INFO    ] ================================================
[2026-10-25 23:41:03,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:41:03
[2026-10-25 23:41:03,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:41:03,956.956 INFO    ] Initializing speech engine...
[2026-10-25 23:41:03,962.962 INFO    ] 2026-10-25 23:41:03
[2026-10-25 23:41:04,224.224 INFO    ] 2026-10-25 23:41:04
[2026-10-25 23:41:04,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:41:04,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:41:04,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:41:04,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:41:04,660.660 INFO    ] time= 25/10/2026 23:41:04
[2026-10-25 23:41:04,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:41:04,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:41:04,828.828 INFO    ] No existing commands found in stream
[2026-10-25 23:41:09,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:41:09,843.843 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-25 23:41:11,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:41:11,507.507 INFO    ] Checking for system updates...
[2026-10-25 23:41:11,544.544 INFO    ] 200
[2026-10-25 23:41:11,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:11,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:11,603.603 INFO    ] No update needed
[2026-10-25 23:41:11,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:11,639.639 INFO    ] 200
[2026-10-25 23:41:11,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:11,683.683 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:11,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:11,737.737 INFO    ] No camera update needed
[2026-10-25 23:41:11,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:11,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:11,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:11,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:41:13,792.792 INFO    ] ================================================
[2026-10-25 23:41:13,806.806 INFO    ] Launching Daemon at Sun Oct 25 23:41:13 IST 2026
[2026-10-25 23:41:13,817.817 INFO    ] ================================================
[2026-10-25 23:41:14,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:41:14
[2026-10-25 23:41:14,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:41:15,235.235 INFO    ] Initializing speech engine...
[2026-10-25 23:41:15,244.244 INFO    ] 2026-10-25 23:41:15
[2026-10-25 23:41:15,493.493 INFO    ] 2026-10-25 23:41:15
[2026-10-25 23:41:15,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:41:15,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:41:15,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:41:15,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:41:15,936.936 INFO    ] time= 25/10/2026 23:41:15
[2026-10-25 23:41:15,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:41:16,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:41:16,118.118 INFO    ] No existing commands found in stream
[2026-10-25 23:41:21,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:41:21,133.133 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-25 23:41:22,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:41:22,297.297 INFO    ] Checking for system updates...
[2026-10-25 23:41:22,337.337 INFO    ] 200
[2026-10-25 23:41:22,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:22,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:22,403.403 INFO    ] No update needed
[2026-10-25 23:41:22,405.405 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:22,439.439 INFO    ] 200
[2026-10-25 23:41:22,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:22,488.488 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:22,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:41:22,543.543 INFO    ] No camera update needed
[2026-10-25 23:41:22,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:22,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:22,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:22,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:41:24,602.602 INFO    ] ================================================
[2026-10-25 23:41:24,616.616 INFO    ] Launching Daemon at Sun Oct 25 23:41:24 IST 2026
[2026-10-25 23:41:24,627.627 INFO    ] ================================================
[2026-10-25 23:41:25,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:41:25
[2026-10-25 23:41:25,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:41:26,066.066 INFO    ] Initializing speech engine...
[2026-10-25 23:41:26,085.085 INFO    ] 2026-10-25 23:41:26
[2026-10-25 23:41:26,340.340 INFO    ] 2026-10-25 23:41:26
[2026-10-25 23:41:26,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:41:26,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:41:26,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:41:26,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:41:26,808.808 INFO    ] time= 25/10/2026 23:41:26
[2026-10-25 23:41:26,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:41:26,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:41:26,952.952 INFO    ] No existing commands found in stream
[2026-10-25 23:41:31,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:41:31,968.968 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-25 23:41:33,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:41:33,494.494 INFO    ] Checking for system updates...
[2026-10-25 23:41:33,530.530 INFO    ] 200
[2026-10-25 23:41:33,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:33,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:33,596.596 INFO    ] No update needed
[2026-10-25 23:41:33,598.598 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:33,637.637 INFO    ] 200
[2026-10-25 23:41:33,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:33,686.686 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:33,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:33,741.741 INFO    ] No camera update needed
[2026-10-25 23:41:33,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:33,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:33,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:41:35,795.795 INFO    ] ================================================
[2026-10-25 23:41:35,810.810 INFO    ] Launching Daemon at Sun Oct 25 23:41:35 IST 2026
[2026-10-25 23:41:35,821.821 INFO    ] ================================================
[2026-10-25 23:41:36,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:41:36
[2026-10-25 23:41:37,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:41:37,378.378 INFO    ] Initializing speech engine...
[2026-10-25 23:41:37,388.388 INFO    ] 2026-10-25 23:41:37
[2026-10-25 23:41:37,662.662 INFO    ] 2026-10-25 23:41:37
[2026-10-25 23:41:37,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:41:37,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:41:37,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:41:38,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:41:38,033.033 INFO    ] time= 25/10/2026 23:41:38
[2026-10-25 23:41:38,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:41:38,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:41:38,208.208 INFO    ] No existing commands found in stream
[2026-10-25 23:41:43,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:41:43,241.241 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-25 23:41:44,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:41:44,825.825 INFO    ] Checking for system updates...
[2026-10-25 23:41:44,862.862 INFO    ] 200
[2026-10-25 23:41:44,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:44,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:44,927.927 INFO    ] No update needed
[2026-10-25 23:41:44,929.929 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:44,963.963 INFO    ] 200
[2026-10-25 23:41:44,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:45,007.007 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:45,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:45,056.056 INFO    ] No camera update needed
[2026-10-25 23:41:45,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:45,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:45,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:45,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:41:47,112.112 INFO    ] ================================================
[2026-10-25 23:41:47,127.127 INFO    ] Launching Daemon at Sun Oct 25 23:41:47 IST 2026
[2026-10-25 23:41:47,138.138 INFO    ] ================================================
[2026-10-25 23:41:47,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:41:47
[2026-10-25 23:41:48,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:41:48,760.760 INFO    ] Initializing speech engine...
[2026-10-25 23:41:48,772.772 INFO    ] 2026-10-25 23:41:48
[2026-10-25 23:41:49,025.025 INFO    ] 2026-10-25 23:41:49
[2026-10-25 23:41:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:41:49,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:41:49,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:41:49,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:41:49,484.484 INFO    ] time= 25/10/2026 23:41:49
[2026-10-25 23:41:49,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:41:49,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:41:49,628.628 INFO    ] No existing commands found in stream
[2026-10-25 23:41:54,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:41:54,643.643 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-25 23:41:58,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:41:58,022.022 INFO    ] Checking for system updates...
[2026-10-25 23:41:58,063.063 INFO    ] 200
[2026-10-25 23:41:58,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:58,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:58,127.127 INFO    ] No update needed
[2026-10-25 23:41:58,130.130 INFO    ] Checking for camera pi updates...
[2026-10-25 23:41:58,167.167 INFO    ] 200
[2026-10-25 23:41:58,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:41:58,215.215 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:41:58,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:41:58,267.267 INFO    ] No camera update needed
[2026-10-25 23:41:58,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:41:58,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:41:58,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:41:58,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:42:00,323.323 INFO    ] ================================================
[2026-10-25 23:42:00,337.337 INFO    ] Launching Daemon at Sun Oct 25 23:42:00 IST 2026
[2026-10-25 23:42:00,348.348 INFO    ] ================================================
[2026-10-25 23:42:00,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:42:00
[2026-10-25 23:42:01,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:42:01,985.985 INFO    ] Initializing speech engine...
[2026-10-25 23:42:02,020.020 INFO    ] 2026-10-25 23:42:01
[2026-10-25 23:42:02,321.321 INFO    ] 2026-10-25 23:42:02
[2026-10-25 23:42:02,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:42:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:42:02,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:42:02,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:42:02,707.707 INFO    ] time= 25/10/2026 23:42:02
[2026-10-25 23:42:02,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:42:02,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:42:02,813.813 INFO    ] No existing commands found in stream
[2026-10-25 23:42:07,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:42:07,827.827 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-25 23:42:08,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:42:08,481.481 INFO    ] Checking for system updates...
[2026-10-25 23:42:08,526.526 INFO    ] 200
[2026-10-25 23:42:08,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:08,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:08,603.603 INFO    ] No update needed
[2026-10-25 23:42:08,605.605 INFO    ] Checking for camera pi updates...
[2026-10-25 23:42:08,642.642 INFO    ] 200
[2026-10-25 23:42:08,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:08,687.687 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:42:08,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:08,743.743 INFO    ] No camera update needed
[2026-10-25 23:42:08,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:42:08,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:42:08,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:42:08,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:42:10,799.799 INFO    ] ================================================
[2026-10-25 23:42:10,814.814 INFO    ] Launching Daemon at Sun Oct 25 23:42:10 IST 2026
[2026-10-25 23:42:10,825.825 INFO    ] ================================================
[2026-10-25 23:42:11,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:42:11
[2026-10-25 23:42:11,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:42:12,252.252 INFO    ] Initializing speech engine...
[2026-10-25 23:42:12,282.282 INFO    ] 2026-10-25 23:42:12
[2026-10-25 23:42:12,546.546 INFO    ] 2026-10-25 23:42:12
[2026-10-25 23:42:12,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:42:14,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:42:14,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:42:14,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:42:14,148.148 INFO    ] time= 25/10/2026 23:42:14
[2026-10-25 23:42:14,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:42:14,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:42:14,209.209 INFO    ] No existing commands found in stream
[2026-10-25 23:42:19,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:42:19,224.224 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-25 23:42:21,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:42:21,899.899 INFO    ] Checking for system updates...
[2026-10-25 23:42:21,939.939 INFO    ] 200
[2026-10-25 23:42:21,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:21,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:21,997.997 INFO    ] No update needed
[2026-10-25 23:42:21,999.999 INFO    ] Checking for camera pi updates...
[2026-10-25 23:42:22,034.034 INFO    ] 200
[2026-10-25 23:42:22,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:22,078.078 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:42:22,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:22,138.138 INFO    ] No camera update needed
[2026-10-25 23:42:22,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:42:22,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:42:22,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:42:22,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:42:24,195.195 INFO    ] ================================================
[2026-10-25 23:42:24,209.209 INFO    ] Launching Daemon at Sun Oct 25 23:42:24 IST 2026
[2026-10-25 23:42:24,220.220 INFO    ] ================================================
[2026-10-25 23:42:24,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:42:24
[2026-10-25 23:42:25,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:42:25,658.658 INFO    ] Initializing speech engine...
[2026-10-25 23:42:25,670.670 INFO    ] 2026-10-25 23:42:25
[2026-10-25 23:42:25,922.922 INFO    ] 2026-10-25 23:42:25
[2026-10-25 23:42:25,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:42:26,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:42:26,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:42:26,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:42:26,403.403 INFO    ] time= 25/10/2026 23:42:26
[2026-10-25 23:42:26,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:42:26,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:42:26,551.551 INFO    ] No existing commands found in stream
[2026-10-25 23:42:31,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:42:31,565.565 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-25 23:42:33,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:42:33,534.534 INFO    ] Checking for system updates...
[2026-10-25 23:42:33,573.573 INFO    ] 200
[2026-10-25 23:42:33,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:33,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:42:33,638.638 INFO    ] No update needed
[2026-10-25 23:42:33,640.640 INFO    ] Checking for camera pi updates...
[2026-10-25 23:42:33,692.692 INFO    ] 200
[2026-10-25 23:42:33,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:33,741.741 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:42:33,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:42:33,791.791 INFO    ] No camera update needed
[2026-10-25 23:42:33,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:42:33,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:42:33,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:42:33,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:42:35,848.848 INFO    ] ================================================
[2026-10-25 23:42:35,863.863 INFO    ] Launching Daemon at Sun Oct 25 23:42:35 IST 2026
[2026-10-25 23:42:35,874.874 INFO    ] ================================================
[2026-10-25 23:42:36,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:42:36
[2026-10-25 23:42:37,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:42:37,566.566 INFO    ] Initializing speech engine...
[2026-10-25 23:42:37,575.575 INFO    ] 2026-10-25 23:42:37
[2026-10-25 23:42:37,859.859 INFO    ] 2026-10-25 23:42:37
[2026-10-25 23:42:37,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:42:38,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:42:38,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:42:38,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:42:38,314.314 INFO    ] time= 25/10/2026 23:42:38
[2026-10-25 23:42:38,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:42:38,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:42:38,453.453 INFO    ] No existing commands found in stream
[2026-10-25 23:42:43,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:42:43,468.468 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-25 23:42:46,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:42:46,883.883 INFO    ] Checking for system updates...
[2026-10-25 23:42:46,921.921 INFO    ] 200
[2026-10-25 23:42:46,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:46,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:42:46,988.988 INFO    ] No update needed
[2026-10-25 23:42:46,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 23:42:47,030.030 INFO    ] 200
[2026-10-25 23:42:47,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:47,074.074 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:42:47,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:42:47,129.129 INFO    ] No camera update needed
[2026-10-25 23:42:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:42:47,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:42:47,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:42:47,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:42:49,189.189 INFO    ] ================================================
[2026-10-25 23:42:49,203.203 INFO    ] Launching Daemon at Sun Oct 25 23:42:49 IST 2026
[2026-10-25 23:42:49,214.214 INFO    ] ================================================
[2026-10-25 23:42:49,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:42:49
[2026-10-25 23:42:50,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:42:50,671.671 INFO    ] Initializing speech engine...
[2026-10-25 23:42:50,679.679 INFO    ] 2026-10-25 23:42:50
[2026-10-25 23:42:50,940.940 INFO    ] 2026-10-25 23:42:50
[2026-10-25 23:42:50,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:42:51,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:42:51,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:42:51,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:42:51,403.403 INFO    ] time= 25/10/2026 23:42:51
[2026-10-25 23:42:51,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:42:51,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:42:51,552.552 INFO    ] No existing commands found in stream
[2026-10-25 23:42:56,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:42:56,566.566 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-25 23:42:58,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:42:58,850.850 INFO    ] Checking for system updates...
[2026-10-25 23:42:58,886.886 INFO    ] 200
[2026-10-25 23:42:58,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:58,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:58,952.952 INFO    ] No update needed
[2026-10-25 23:42:58,954.954 INFO    ] Checking for camera pi updates...
[2026-10-25 23:42:58,992.992 INFO    ] 200
[2026-10-25 23:42:58,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:42:59,041.041 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:42:59,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:42:59,102.102 INFO    ] No camera update needed
[2026-10-25 23:42:59,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:42:59,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:42:59,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:42:59,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:43:01,158.158 INFO    ] ================================================
[2026-10-25 23:43:01,173.173 INFO    ] Launching Daemon at Sun Oct 25 23:43:01 IST 2026
[2026-10-25 23:43:01,184.184 INFO    ] ================================================
[2026-10-25 23:43:01,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:43:01
[2026-10-25 23:43:02,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:43:03,058.058 INFO    ] Initializing speech engine...
[2026-10-25 23:43:03,067.067 INFO    ] 2026-10-25 23:43:03
[2026-10-25 23:43:03,353.353 INFO    ] 2026-10-25 23:43:03
[2026-10-25 23:43:03,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:43:03,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:43:03,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:43:03,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:43:03,761.761 INFO    ] time= 25/10/2026 23:43:03
[2026-10-25 23:43:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:43:03,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:43:03,889.889 INFO    ] No existing commands found in stream
[2026-10-25 23:43:08,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:43:08,905.905 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-25 23:43:11,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:43:11,043.043 INFO    ] Checking for system updates...
[2026-10-25 23:43:11,084.084 INFO    ] 200
[2026-10-25 23:43:11,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:11,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:43:11,149.149 INFO    ] No update needed
[2026-10-25 23:43:11,151.151 INFO    ] Checking for camera pi updates...
[2026-10-25 23:43:11,189.189 INFO    ] 200
[2026-10-25 23:43:11,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:11,238.238 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:43:11,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:43:11,293.293 INFO    ] No camera update needed
[2026-10-25 23:43:11,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:43:11,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:43:11,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:43:11,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:43:13,350.350 INFO    ] ================================================
[2026-10-25 23:43:13,365.365 INFO    ] Launching Daemon at Sun Oct 25 23:43:13 IST 2026
[2026-10-25 23:43:13,376.376 INFO    ] ================================================
[2026-10-25 23:43:13,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:43:13
[2026-10-25 23:43:14,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:43:14,839.839 INFO    ] Initializing speech engine...
[2026-10-25 23:43:14,846.846 INFO    ] 2026-10-25 23:43:14
[2026-10-25 23:43:15,116.116 INFO    ] 2026-10-25 23:43:15
[2026-10-25 23:43:15,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:43:15,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:43:15,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:43:15,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:43:15,500.500 INFO    ] time= 25/10/2026 23:43:15
[2026-10-25 23:43:15,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:43:15,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:43:15,627.627 INFO    ] No existing commands found in stream
[2026-10-25 23:43:20,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:43:20,642.642 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-25 23:43:23,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:43:23,346.346 INFO    ] Checking for system updates...
[2026-10-25 23:43:23,384.384 INFO    ] 200
[2026-10-25 23:43:23,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:23,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:23,443.443 INFO    ] No update needed
[2026-10-25 23:43:23,446.446 INFO    ] Checking for camera pi updates...
[2026-10-25 23:43:23,481.481 INFO    ] 200
[2026-10-25 23:43:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:23,526.526 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:43:23,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:23,586.586 INFO    ] No camera update needed
[2026-10-25 23:43:23,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:43:23,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:43:23,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:43:23,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:43:25,647.647 INFO    ] ================================================
[2026-10-25 23:43:25,662.662 INFO    ] Launching Daemon at Sun Oct 25 23:43:25 IST 2026
[2026-10-25 23:43:25,673.673 INFO    ] ================================================
[2026-10-25 23:43:26,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:43:26
[2026-10-25 23:43:26,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:43:27,090.090 INFO    ] Initializing speech engine...
[2026-10-25 23:43:27,101.101 INFO    ] 2026-10-25 23:43:27
[2026-10-25 23:43:27,354.354 INFO    ] 2026-10-25 23:43:27
[2026-10-25 23:43:27,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:43:27,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:43:27,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:43:27,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:43:27,727.727 INFO    ] time= 25/10/2026 23:43:27
[2026-10-25 23:43:27,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:43:27,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:43:27,888.888 INFO    ] No existing commands found in stream
[2026-10-25 23:43:32,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:43:32,916.916 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-25 23:43:36,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:43:36,173.173 INFO    ] Checking for system updates...
[2026-10-25 23:43:36,213.213 INFO    ] 200
[2026-10-25 23:43:36,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:36,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:36,278.278 INFO    ] No update needed
[2026-10-25 23:43:36,280.280 INFO    ] Checking for camera pi updates...
[2026-10-25 23:43:36,317.317 INFO    ] 200
[2026-10-25 23:43:36,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:36,361.361 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:43:36,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:36,414.414 INFO    ] No camera update needed
[2026-10-25 23:43:36,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:43:36,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:43:36,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:43:36,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:43:38,469.469 INFO    ] ================================================
[2026-10-25 23:43:38,485.485 INFO    ] Launching Daemon at Sun Oct 25 23:43:38 IST 2026
[2026-10-25 23:43:38,496.496 INFO    ] ================================================
[2026-10-25 23:43:39,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:43:39
[2026-10-25 23:43:39,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:43:39,932.932 INFO    ] Initializing speech engine...
[2026-10-25 23:43:39,938.938 INFO    ] 2026-10-25 23:43:39
[2026-10-25 23:43:40,237.237 INFO    ] 2026-10-25 23:43:40
[2026-10-25 23:43:40,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:43:40,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:43:40,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:43:40,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:43:40,621.621 INFO    ] time= 25/10/2026 23:43:40
[2026-10-25 23:43:40,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:43:40,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:43:40,747.747 INFO    ] No existing commands found in stream
[2026-10-25 23:43:45,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:43:45,762.762 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-25 23:43:48,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:43:48,482.482 INFO    ] Checking for system updates...
[2026-10-25 23:43:48,523.523 INFO    ] 200
[2026-10-25 23:43:48,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:48,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:48,589.589 INFO    ] No update needed
[2026-10-25 23:43:48,591.591 INFO    ] Checking for camera pi updates...
[2026-10-25 23:43:48,629.629 INFO    ] 200
[2026-10-25 23:43:48,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:43:48,677.677 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:43:48,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:43:48,734.734 INFO    ] No camera update needed
[2026-10-25 23:43:48,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:43:48,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:43:48,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:43:48,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:43:50,792.792 INFO    ] ================================================
[2026-10-25 23:43:50,807.807 INFO    ] Launching Daemon at Sun Oct 25 23:43:50 IST 2026
[2026-10-25 23:43:50,818.818 INFO    ] ================================================
[2026-10-25 23:43:51,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:43:51
[2026-10-25 23:43:52,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:43:52,438.438 INFO    ] Initializing speech engine...
[2026-10-25 23:43:52,453.453 INFO    ] 2026-10-25 23:43:52
[2026-10-25 23:43:52,734.734 INFO    ] 2026-10-25 23:43:52
[2026-10-25 23:43:52,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:43:53,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:43:53,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:43:53,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:43:53,188.188 INFO    ] time= 25/10/2026 23:43:53
[2026-10-25 23:43:53,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:43:53,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:43:53,347.347 INFO    ] No existing commands found in stream
[2026-10-25 23:43:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:43:58,364.364 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 23:44:01,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:44:01,467.467 INFO    ] Checking for system updates...
[2026-10-25 23:44:01,554.554 INFO    ] 200
[2026-10-25 23:44:01,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:01,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:01,677.677 INFO    ] No update needed
[2026-10-25 23:44:01,680.680 INFO    ] Checking for camera pi updates...
[2026-10-25 23:44:01,741.741 INFO    ] 200
[2026-10-25 23:44:01,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:01,803.803 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:44:01,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:01,865.865 INFO    ] No camera update needed
[2026-10-25 23:44:01,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:44:01,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:44:01,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:44:01,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:44:03,939.939 INFO    ] ================================================
[2026-10-25 23:44:03,955.955 INFO    ] Launching Daemon at Sun Oct 25 23:44:03 IST 2026
[2026-10-25 23:44:03,966.966 INFO    ] ================================================
[2026-10-25 23:44:04,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:44:04
[2026-10-25 23:44:05,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:44:05,409.409 INFO    ] Initializing speech engine...
[2026-10-25 23:44:05,418.418 INFO    ] 2026-10-25 23:44:05
[2026-10-25 23:44:05,681.681 INFO    ] 2026-10-25 23:44:05
[2026-10-25 23:44:05,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:44:05,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:44:05,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:44:06,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:44:06,062.062 INFO    ] time= 25/10/2026 23:44:06
[2026-10-25 23:44:06,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:44:06,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:44:06,167.167 INFO    ] No existing commands found in stream
[2026-10-25 23:44:11,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:44:11,183.183 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-25 23:44:11,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:44:12,001.001 INFO    ] Checking for system updates...
[2026-10-25 23:44:12,040.040 INFO    ] 200
[2026-10-25 23:44:12,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:12,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:44:12,103.103 INFO    ] No update needed
[2026-10-25 23:44:12,105.105 INFO    ] Checking for camera pi updates...
[2026-10-25 23:44:12,138.138 INFO    ] 200
[2026-10-25 23:44:12,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:12,181.181 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:44:12,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:44:12,338.338 INFO    ] No camera update needed
[2026-10-25 23:44:12,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:44:12,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:44:12,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:44:12,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:44:14,393.393 INFO    ] ================================================
[2026-10-25 23:44:14,408.408 INFO    ] Launching Daemon at Sun Oct 25 23:44:14 IST 2026
[2026-10-25 23:44:14,419.419 INFO    ] ================================================
[2026-10-25 23:44:14,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:44:14
[2026-10-25 23:44:15,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:44:15,858.858 INFO    ] Initializing speech engine...
[2026-10-25 23:44:15,865.865 INFO    ] 2026-10-25 23:44:15
[2026-10-25 23:44:16,126.126 INFO    ] 2026-10-25 23:44:16
[2026-10-25 23:44:16,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:44:16,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:44:16,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:44:16,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:44:16,591.591 INFO    ] time= 25/10/2026 23:44:16
[2026-10-25 23:44:16,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:44:16,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:44:16,737.737 INFO    ] No existing commands found in stream
[2026-10-25 23:44:21,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:44:21,751.751 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-25 23:44:22,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:44:22,814.814 INFO    ] Checking for system updates...
[2026-10-25 23:44:22,853.853 INFO    ] 200
[2026-10-25 23:44:22,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:22,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:22,915.915 INFO    ] No update needed
[2026-10-25 23:44:22,918.918 INFO    ] Checking for camera pi updates...
[2026-10-25 23:44:22,954.954 INFO    ] 200
[2026-10-25 23:44:22,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:23,000.000 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:44:23,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:23,052.052 INFO    ] No camera update needed
[2026-10-25 23:44:23,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:44:23,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:44:23,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:44:23,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:44:25,107.107 INFO    ] ================================================
[2026-10-25 23:44:25,123.123 INFO    ] Launching Daemon at Sun Oct 25 23:44:25 IST 2026
[2026-10-25 23:44:25,134.134 INFO    ] ================================================
[2026-10-25 23:44:25,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:44:25
[2026-10-25 23:44:26,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:44:26,546.546 INFO    ] Initializing speech engine...
[2026-10-25 23:44:26,555.555 INFO    ] 2026-10-25 23:44:26
[2026-10-25 23:44:26,843.843 INFO    ] 2026-10-25 23:44:26
[2026-10-25 23:44:26,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:44:27,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:44:27,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:44:27,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:44:27,213.213 INFO    ] time= 25/10/2026 23:44:27
[2026-10-25 23:44:27,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:44:27,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:44:27,334.334 INFO    ] No existing commands found in stream
[2026-10-25 23:44:32,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:44:32,346.346 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-25 23:44:36,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:44:36,716.716 INFO    ] Checking for system updates...
[2026-10-25 23:44:36,753.753 INFO    ] 200
[2026-10-25 23:44:36,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:36,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:36,815.815 INFO    ] No update needed
[2026-10-25 23:44:36,818.818 INFO    ] Checking for camera pi updates...
[2026-10-25 23:44:36,852.852 INFO    ] 200
[2026-10-25 23:44:36,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:36,895.895 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:44:36,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:36,957.957 INFO    ] No camera update needed
[2026-10-25 23:44:36,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:44:36,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:44:36,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:44:36,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:44:39,013.013 INFO    ] ================================================
[2026-10-25 23:44:39,027.027 INFO    ] Launching Daemon at Sun Oct 25 23:44:39 IST 2026
[2026-10-25 23:44:39,038.038 INFO    ] ================================================
[2026-10-25 23:44:39,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:44:39
[2026-10-25 23:44:40,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:44:40,512.512 INFO    ] Initializing speech engine...
[2026-10-25 23:44:40,518.518 INFO    ] 2026-10-25 23:44:40
[2026-10-25 23:44:40,784.784 INFO    ] 2026-10-25 23:44:40
[2026-10-25 23:44:40,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:44:41,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:44:41,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:44:41,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:44:41,193.193 INFO    ] time= 25/10/2026 23:44:41
[2026-10-25 23:44:41,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:44:41,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:44:41,276.276 INFO    ] No existing commands found in stream
[2026-10-25 23:44:46,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:44:46,309.309 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-25 23:44:49,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:44:49,988.988 INFO    ] Checking for system updates...
[2026-10-25 23:44:50,026.026 INFO    ] 200
[2026-10-25 23:44:50,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:50,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:50,089.089 INFO    ] No update needed
[2026-10-25 23:44:50,092.092 INFO    ] Checking for camera pi updates...
[2026-10-25 23:44:50,129.129 INFO    ] 200
[2026-10-25 23:44:50,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:44:50,172.172 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:44:50,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:44:50,228.228 INFO    ] No camera update needed
[2026-10-25 23:44:50,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:44:50,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:44:50,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:44:50,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:44:52,284.284 INFO    ] ================================================
[2026-10-25 23:44:52,299.299 INFO    ] Launching Daemon at Sun Oct 25 23:44:52 IST 2026
[2026-10-25 23:44:52,310.310 INFO    ] ================================================
[2026-10-25 23:44:52,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:44:52
[2026-10-25 23:44:53,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:44:53,879.879 INFO    ] Initializing speech engine...
[2026-10-25 23:44:53,891.891 INFO    ] 2026-10-25 23:44:53
[2026-10-25 23:44:54,156.156 INFO    ] 2026-10-25 23:44:54
[2026-10-25 23:44:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:44:54,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:44:54,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:44:54,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:44:54,700.700 INFO    ] time= 25/10/2026 23:44:54
[2026-10-25 23:44:54,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:44:54,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:44:54,839.839 INFO    ] No existing commands found in stream
[2026-10-25 23:44:59,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:44:59,869.869 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 23:45:00,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:45:00,637.637 INFO    ] Checking for system updates...
[2026-10-25 23:45:00,677.677 INFO    ] 200
[2026-10-25 23:45:00,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:00,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:00,740.740 INFO    ] No update needed
[2026-10-25 23:45:00,743.743 INFO    ] Checking for camera pi updates...
[2026-10-25 23:45:00,780.780 INFO    ] 200
[2026-10-25 23:45:00,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:00,827.827 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:45:00,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:00,875.875 INFO    ] No camera update needed
[2026-10-25 23:45:00,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:45:00,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:45:00,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:45:00,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:45:02,967.967 INFO    ] ================================================
[2026-10-25 23:45:02,987.987 INFO    ] Launching Daemon at Sun Oct 25 23:45:02 IST 2026
[2026-10-25 23:45:03,004.004 INFO    ] ================================================
[2026-10-25 23:45:03,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:45:03
[2026-10-25 23:45:04,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:45:04,584.584 INFO    ] Initializing speech engine...
[2026-10-25 23:45:04,591.591 INFO    ] 2026-10-25 23:45:04
[2026-10-25 23:45:04,852.852 INFO    ] 2026-10-25 23:45:04
[2026-10-25 23:45:04,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:45:05,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:45:05,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:45:05,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:45:05,332.332 INFO    ] time= 25/10/2026 23:45:05
[2026-10-25 23:45:05,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:45:05,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:45:05,480.480 INFO    ] No existing commands found in stream
[2026-10-25 23:45:10,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:45:10,496.496 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-25 23:45:14,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:45:14,522.522 INFO    ] Checking for system updates...
[2026-10-25 23:45:14,561.561 INFO    ] 200
[2026-10-25 23:45:14,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:14,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:14,627.627 INFO    ] No update needed
[2026-10-25 23:45:14,629.629 INFO    ] Checking for camera pi updates...
[2026-10-25 23:45:14,668.668 INFO    ] 200
[2026-10-25 23:45:14,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:14,716.716 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:45:14,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:14,773.773 INFO    ] No camera update needed
[2026-10-25 23:45:14,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:45:14,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:45:14,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:45:14,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:45:16,830.830 INFO    ] ================================================
[2026-10-25 23:45:16,847.847 INFO    ] Launching Daemon at Sun Oct 25 23:45:16 IST 2026
[2026-10-25 23:45:16,858.858 INFO    ] ================================================
[2026-10-25 23:45:17,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:45:17
[2026-10-25 23:45:18,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:45:18,278.278 INFO    ] Initializing speech engine...
[2026-10-25 23:45:18,302.302 INFO    ] 2026-10-25 23:45:18
[2026-10-25 23:45:18,575.575 INFO    ] 2026-10-25 23:45:18
[2026-10-25 23:45:18,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:45:18,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:45:18,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:45:18,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:45:18,959.959 INFO    ] time= 25/10/2026 23:45:18
[2026-10-25 23:45:18,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:45:18,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:45:19,082.082 INFO    ] No existing commands found in stream
[2026-10-25 23:45:24,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:45:24,101.101 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-25 23:45:26,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:45:26,793.793 INFO    ] Checking for system updates...
[2026-10-25 23:45:26,834.834 INFO    ] 200
[2026-10-25 23:45:26,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:26,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:26,899.899 INFO    ] No update needed
[2026-10-25 23:45:26,901.901 INFO    ] Checking for camera pi updates...
[2026-10-25 23:45:26,939.939 INFO    ] 200
[2026-10-25 23:45:26,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:26,988.988 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:45:27,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:27,035.035 INFO    ] No camera update needed
[2026-10-25 23:45:27,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:45:27,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:45:27,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:45:27,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:45:29,092.092 INFO    ] ================================================
[2026-10-25 23:45:29,108.108 INFO    ] Launching Daemon at Sun Oct 25 23:45:29 IST 2026
[2026-10-25 23:45:29,119.119 INFO    ] ================================================
[2026-10-25 23:45:29,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:45:29
[2026-10-25 23:45:30,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:45:30,510.510 INFO    ] Initializing speech engine...
[2026-10-25 23:45:30,531.531 INFO    ] 2026-10-25 23:45:30
[2026-10-25 23:45:30,791.791 INFO    ] 2026-10-25 23:45:30
[2026-10-25 23:45:30,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:45:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:45:31,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:45:31,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:45:31,262.262 INFO    ] time= 25/10/2026 23:45:31
[2026-10-25 23:45:31,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:45:31,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:45:31,421.421 INFO    ] No existing commands found in stream
[2026-10-25 23:45:36,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:45:36,436.436 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-25 23:45:38,319.319 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:45:38,321.321 INFO    ] Checking for system updates...
[2026-10-25 23:45:38,358.358 INFO    ] 200
[2026-10-25 23:45:38,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:38,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:38,417.417 INFO    ] No update needed
[2026-10-25 23:45:38,419.419 INFO    ] Checking for camera pi updates...
[2026-10-25 23:45:38,458.458 INFO    ] 200
[2026-10-25 23:45:38,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:38,502.502 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:45:38,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:45:38,604.604 INFO    ] No camera update needed
[2026-10-25 23:45:38,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:45:38,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:45:38,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:45:38,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:45:40,661.661 INFO    ] ================================================
[2026-10-25 23:45:40,677.677 INFO    ] Launching Daemon at Sun Oct 25 23:45:40 IST 2026
[2026-10-25 23:45:40,689.689 INFO    ] ================================================
[2026-10-25 23:45:41,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:45:41
[2026-10-25 23:45:41,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:45:42,178.178 INFO    ] Initializing speech engine...
[2026-10-25 23:45:42,185.185 INFO    ] 2026-10-25 23:45:42
[2026-10-25 23:45:42,444.444 INFO    ] 2026-10-25 23:45:42
[2026-10-25 23:45:42,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:45:44,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:45:44,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:45:44,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:45:44,311.311 INFO    ] time= 25/10/2026 23:45:44
[2026-10-25 23:45:44,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:45:44,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:45:44,374.374 INFO    ] No existing commands found in stream
[2026-10-25 23:45:49,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:45:49,387.387 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-25 23:45:55,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:45:55,237.237 INFO    ] Checking for system updates...
[2026-10-25 23:45:55,278.278 INFO    ] 200
[2026-10-25 23:45:55,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:55,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:45:55,337.337 INFO    ] No update needed
[2026-10-25 23:45:55,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 23:45:55,373.373 INFO    ] 200
[2026-10-25 23:45:55,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:45:55,416.416 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:45:55,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:45:55,475.475 INFO    ] No camera update needed
[2026-10-25 23:45:55,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:45:55,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:45:55,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:45:55,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:45:57,529.529 INFO    ] ================================================
[2026-10-25 23:45:57,545.545 INFO    ] Launching Daemon at Sun Oct 25 23:45:57 IST 2026
[2026-10-25 23:45:57,556.556 INFO    ] ================================================
[2026-10-25 23:45:58,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:45:58
[2026-10-25 23:45:58,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:45:59,232.232 INFO    ] Initializing speech engine...
[2026-10-25 23:45:59,239.239 INFO    ] 2026-10-25 23:45:59
[2026-10-25 23:45:59,548.548 INFO    ] 2026-10-25 23:45:59
[2026-10-25 23:45:59,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:45:59,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:45:59,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:46:00,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:46:00,058.058 INFO    ] time= 25/10/2026 23:46:00
[2026-10-25 23:46:00,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:46:00,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:46:00,210.210 INFO    ] No existing commands found in stream
[2026-10-25 23:46:05,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:46:05,227.227 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-25 23:46:06,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:46:06,233.233 INFO    ] Checking for system updates...
[2026-10-25 23:46:06,276.276 INFO    ] 200
[2026-10-25 23:46:06,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:06,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:06,343.343 INFO    ] No update needed
[2026-10-25 23:46:06,345.345 INFO    ] Checking for camera pi updates...
[2026-10-25 23:46:06,386.386 INFO    ] 200
[2026-10-25 23:46:06,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:06,431.431 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:46:06,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:06,500.500 INFO    ] No camera update needed
[2026-10-25 23:46:06,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:46:06,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:46:06,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:46:06,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:46:08,562.562 INFO    ] ================================================
[2026-10-25 23:46:08,577.577 INFO    ] Launching Daemon at Sun Oct 25 23:46:08 IST 2026
[2026-10-25 23:46:08,588.588 INFO    ] ================================================
[2026-10-25 23:46:09,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:46:09
[2026-10-25 23:46:09,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:46:10,034.034 INFO    ] Initializing speech engine...
[2026-10-25 23:46:10,040.040 INFO    ] 2026-10-25 23:46:10
[2026-10-25 23:46:10,302.302 INFO    ] 2026-10-25 23:46:10
[2026-10-25 23:46:10,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:46:10,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:46:10,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:46:10,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:46:10,764.764 INFO    ] time= 25/10/2026 23:46:10
[2026-10-25 23:46:10,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:46:10,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:46:10,913.913 INFO    ] No existing commands found in stream
[2026-10-25 23:46:15,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:46:15,928.928 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-25 23:46:18,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:46:18,519.519 INFO    ] Checking for system updates...
[2026-10-25 23:46:18,556.556 INFO    ] 200
[2026-10-25 23:46:18,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:18,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:46:18,614.614 INFO    ] No update needed
[2026-10-25 23:46:18,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 23:46:18,654.654 INFO    ] 200
[2026-10-25 23:46:18,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:18,703.703 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:46:18,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:46:18,865.865 INFO    ] No camera update needed
[2026-10-25 23:46:18,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:46:18,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:46:18,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:46:18,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:46:20,922.922 INFO    ] ================================================
[2026-10-25 23:46:20,939.939 INFO    ] Launching Daemon at Sun Oct 25 23:46:20 IST 2026
[2026-10-25 23:46:20,950.950 INFO    ] ================================================
[2026-10-25 23:46:21,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:46:21
[2026-10-25 23:46:22,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:46:22,620.620 INFO    ] Initializing speech engine...
[2026-10-25 23:46:22,627.627 INFO    ] 2026-10-25 23:46:22
[2026-10-25 23:46:22,911.911 INFO    ] 2026-10-25 23:46:22
[2026-10-25 23:46:23,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:46:23,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:46:23,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:46:23,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:46:23,441.441 INFO    ] time= 25/10/2026 23:46:23
[2026-10-25 23:46:23,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:46:23,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:46:23,597.597 INFO    ] No existing commands found in stream
[2026-10-25 23:46:28,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:46:28,613.613 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-25 23:46:29,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:46:29,099.099 INFO    ] Checking for system updates...
[2026-10-25 23:46:29,137.137 INFO    ] 200
[2026-10-25 23:46:29,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:29,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:29,200.200 INFO    ] No update needed
[2026-10-25 23:46:29,203.203 INFO    ] Checking for camera pi updates...
[2026-10-25 23:46:29,236.236 INFO    ] 200
[2026-10-25 23:46:29,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:29,285.285 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:46:29,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:29,339.339 INFO    ] No camera update needed
[2026-10-25 23:46:29,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:46:29,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:46:29,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:46:29,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:46:31,394.394 INFO    ] ================================================
[2026-10-25 23:46:31,409.409 INFO    ] Launching Daemon at Sun Oct 25 23:46:31 IST 2026
[2026-10-25 23:46:31,421.421 INFO    ] ================================================
[2026-10-25 23:46:32,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:46:32
[2026-10-25 23:46:32,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:46:32,917.917 INFO    ] Initializing speech engine...
[2026-10-25 23:46:32,941.941 INFO    ] 2026-10-25 23:46:32
[2026-10-25 23:46:33,195.195 INFO    ] 2026-10-25 23:46:33
[2026-10-25 23:46:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:46:33,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:46:33,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:46:33,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:46:33,565.565 INFO    ] time= 25/10/2026 23:46:33
[2026-10-25 23:46:33,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:46:33,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:46:33,728.728 INFO    ] No existing commands found in stream
[2026-10-25 23:46:38,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:46:38,756.756 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 23:46:44,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:46:44,287.287 INFO    ] Checking for system updates...
[2026-10-25 23:46:44,328.328 INFO    ] 200
[2026-10-25 23:46:44,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:44,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:44,394.394 INFO    ] No update needed
[2026-10-25 23:46:44,396.396 INFO    ] Checking for camera pi updates...
[2026-10-25 23:46:44,435.435 INFO    ] 200
[2026-10-25 23:46:44,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:44,485.485 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:46:44,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:44,523.523 INFO    ] No camera update needed
[2026-10-25 23:46:44,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:46:44,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:46:44,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:46:44,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:46:46,581.581 INFO    ] ================================================
[2026-10-25 23:46:46,597.597 INFO    ] Launching Daemon at Sun Oct 25 23:46:46 IST 2026
[2026-10-25 23:46:46,609.609 INFO    ] ================================================
[2026-10-25 23:46:47,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:46:47
[2026-10-25 23:46:47,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:46:48,286.286 INFO    ] Initializing speech engine...
[2026-10-25 23:46:48,292.292 INFO    ] 2026-10-25 23:46:48
[2026-10-25 23:46:48,580.580 INFO    ] 2026-10-25 23:46:48
[2026-10-25 23:46:48,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:46:48,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:46:48,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:46:48,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:46:49,026.026 INFO    ] time= 25/10/2026 23:46:48
[2026-10-25 23:46:49,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:46:49,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:46:49,178.178 INFO    ] No existing commands found in stream
[2026-10-25 23:46:54,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:46:54,197.197 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-25 23:46:55,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:46:55,711.711 INFO    ] Checking for system updates...
[2026-10-25 23:46:55,753.753 INFO    ] 200
[2026-10-25 23:46:55,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:55,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:55,814.814 INFO    ] No update needed
[2026-10-25 23:46:55,817.817 INFO    ] Checking for camera pi updates...
[2026-10-25 23:46:55,852.852 INFO    ] 200
[2026-10-25 23:46:55,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:46:55,903.903 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:46:55,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:46:55,959.959 INFO    ] No camera update needed
[2026-10-25 23:46:55,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:46:55,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:46:55,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:46:55,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:46:58,020.020 INFO    ] ================================================
[2026-10-25 23:46:58,035.035 INFO    ] Launching Daemon at Sun Oct 25 23:46:58 IST 2026
[2026-10-25 23:46:58,047.047 INFO    ] ================================================
[2026-10-25 23:46:58,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:46:58
[2026-10-25 23:46:59,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:46:59,444.444 INFO    ] Initializing speech engine...
[2026-10-25 23:46:59,456.456 INFO    ] 2026-10-25 23:46:59
[2026-10-25 23:46:59,717.717 INFO    ] 2026-10-25 23:46:59
[2026-10-25 23:46:59,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:47:00,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:47:00,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:47:00,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:47:00,168.168 INFO    ] time= 25/10/2026 23:47:00
[2026-10-25 23:47:00,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:47:00,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:47:00,335.335 INFO    ] No existing commands found in stream
[2026-10-25 23:47:05,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:47:05,350.350 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-25 23:47:06,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:47:06,731.731 INFO    ] Checking for system updates...
[2026-10-25 23:47:06,767.767 INFO    ] 200
[2026-10-25 23:47:06,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:06,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:06,824.824 INFO    ] No update needed
[2026-10-25 23:47:06,826.826 INFO    ] Checking for camera pi updates...
[2026-10-25 23:47:06,868.868 INFO    ] 200
[2026-10-25 23:47:06,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:06,917.917 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:47:06,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:06,978.978 INFO    ] No camera update needed
[2026-10-25 23:47:06,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:47:06,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:47:06,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:47:06,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:47:09,033.033 INFO    ] ================================================
[2026-10-25 23:47:09,048.048 INFO    ] Launching Daemon at Sun Oct 25 23:47:09 IST 2026
[2026-10-25 23:47:09,060.060 INFO    ] ================================================
[2026-10-25 23:47:09,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:47:09
[2026-10-25 23:47:10,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:47:10,624.624 INFO    ] Initializing speech engine...
[2026-10-25 23:47:10,633.633 INFO    ] 2026-10-25 23:47:10
[2026-10-25 23:47:10,903.903 INFO    ] 2026-10-25 23:47:10
[2026-10-25 23:47:10,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:47:11,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:47:11,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:47:11,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:47:11,399.399 INFO    ] time= 25/10/2026 23:47:11
[2026-10-25 23:47:11,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:47:11,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:47:11,578.578 INFO    ] No existing commands found in stream
[2026-10-25 23:47:16,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:47:16,610.610 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-25 23:47:17,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:47:17,601.601 INFO    ] Checking for system updates...
[2026-10-25 23:47:17,642.642 INFO    ] 200
[2026-10-25 23:47:17,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:17,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:47:17,709.709 INFO    ] No update needed
[2026-10-25 23:47:17,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 23:47:17,751.751 INFO    ] 200
[2026-10-25 23:47:17,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:17,801.801 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:47:17,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:47:17,861.861 INFO    ] No camera update needed
[2026-10-25 23:47:17,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:47:17,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:47:17,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:47:17,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:47:19,921.921 INFO    ] ================================================
[2026-10-25 23:47:19,936.936 INFO    ] Launching Daemon at Sun Oct 25 23:47:19 IST 2026
[2026-10-25 23:47:19,947.947 INFO    ] ================================================
[2026-10-25 23:47:20,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:47:20
[2026-10-25 23:47:21,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:47:21,361.361 INFO    ] Initializing speech engine...
[2026-10-25 23:47:21,382.382 INFO    ] 2026-10-25 23:47:21
[2026-10-25 23:47:21,644.644 INFO    ] 2026-10-25 23:47:21
[2026-10-25 23:47:21,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:47:21,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:47:21,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:47:22,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:47:22,115.115 INFO    ] time= 25/10/2026 23:47:22
[2026-10-25 23:47:22,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:47:22,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:47:22,265.265 INFO    ] No existing commands found in stream
[2026-10-25 23:47:27,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:47:27,282.282 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-25 23:47:31,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:47:31,401.401 INFO    ] Checking for system updates...
[2026-10-25 23:47:31,446.446 INFO    ] 200
[2026-10-25 23:47:31,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:31,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:31,510.510 INFO    ] No update needed
[2026-10-25 23:47:31,519.519 INFO    ] Checking for camera pi updates...
[2026-10-25 23:47:31,572.572 INFO    ] 200
[2026-10-25 23:47:31,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:31,634.634 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:47:31,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:31,698.698 INFO    ] No camera update needed
[2026-10-25 23:47:31,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:47:31,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:47:31,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:47:31,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:47:33,767.767 INFO    ] ================================================
[2026-10-25 23:47:33,784.784 INFO    ] Launching Daemon at Sun Oct 25 23:47:33 IST 2026
[2026-10-25 23:47:33,796.796 INFO    ] ================================================
[2026-10-25 23:47:34,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:47:34
[2026-10-25 23:47:35,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:47:35,454.454 INFO    ] Initializing speech engine...
[2026-10-25 23:47:35,463.463 INFO    ] 2026-10-25 23:47:35
[2026-10-25 23:47:35,733.733 INFO    ] 2026-10-25 23:47:35
[2026-10-25 23:47:35,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:47:35,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:47:35,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:47:36,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:47:36,080.080 INFO    ] time= 25/10/2026 23:47:36
[2026-10-25 23:47:36,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:47:36,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:47:36,203.203 INFO    ] No existing commands found in stream
[2026-10-25 23:47:41,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:47:41,237.237 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-25 23:47:44,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:47:44,537.537 INFO    ] Checking for system updates...
[2026-10-25 23:47:44,575.575 INFO    ] 200
[2026-10-25 23:47:44,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:44,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:47:44,642.642 INFO    ] No update needed
[2026-10-25 23:47:44,645.645 INFO    ] Checking for camera pi updates...
[2026-10-25 23:47:44,685.685 INFO    ] 200
[2026-10-25 23:47:44,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:44,736.736 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:47:44,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:47:44,805.805 INFO    ] No camera update needed
[2026-10-25 23:47:44,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:47:44,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:47:44,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:47:44,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:47:46,863.863 INFO    ] ================================================
[2026-10-25 23:47:46,878.878 INFO    ] Launching Daemon at Sun Oct 25 23:47:46 IST 2026
[2026-10-25 23:47:46,889.889 INFO    ] ================================================
[2026-10-25 23:47:47,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:47:47
[2026-10-25 23:47:48,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:47:48,307.307 INFO    ] Initializing speech engine...
[2026-10-25 23:47:48,316.316 INFO    ] 2026-10-25 23:47:48
[2026-10-25 23:47:48,562.562 INFO    ] 2026-10-25 23:47:48
[2026-10-25 23:47:48,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:47:48,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:47:48,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:47:48,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:47:49,034.034 INFO    ] time= 25/10/2026 23:47:48
[2026-10-25 23:47:49,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:47:49,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:47:49,177.177 INFO    ] No existing commands found in stream
[2026-10-25 23:47:54,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:47:54,192.192 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-25 23:47:57,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:47:57,493.493 INFO    ] Checking for system updates...
[2026-10-25 23:47:57,530.530 INFO    ] 200
[2026-10-25 23:47:57,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:57,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:57,589.589 INFO    ] No update needed
[2026-10-25 23:47:57,592.592 INFO    ] Checking for camera pi updates...
[2026-10-25 23:47:57,625.625 INFO    ] 200
[2026-10-25 23:47:57,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:47:57,668.668 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:47:57,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:47:57,719.719 INFO    ] No camera update needed
[2026-10-25 23:47:57,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:47:57,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:47:57,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:47:57,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:47:59,779.779 INFO    ] ================================================
[2026-10-25 23:47:59,794.794 INFO    ] Launching Daemon at Sun Oct 25 23:47:59 IST 2026
[2026-10-25 23:47:59,805.805 INFO    ] ================================================
[2026-10-25 23:48:00,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:48:00
[2026-10-25 23:48:00,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:48:01,205.205 INFO    ] Initializing speech engine...
[2026-10-25 23:48:01,218.218 INFO    ] 2026-10-25 23:48:01
[2026-10-25 23:48:01,504.504 INFO    ] 2026-10-25 23:48:01
[2026-10-25 23:48:01,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:48:01,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:48:01,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:48:01,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:48:01,988.988 INFO    ] time= 25/10/2026 23:48:01
[2026-10-25 23:48:01,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:48:01,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:48:02,057.057 INFO    ] No existing commands found in stream
[2026-10-25 23:48:07,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:48:07,073.073 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-25 23:48:07,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:48:07,913.913 INFO    ] Checking for system updates...
[2026-10-25 23:48:07,950.950 INFO    ] 200
[2026-10-25 23:48:07,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:08,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:48:08,009.009 INFO    ] No update needed
[2026-10-25 23:48:08,012.012 INFO    ] Checking for camera pi updates...
[2026-10-25 23:48:08,046.046 INFO    ] 200
[2026-10-25 23:48:08,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:08,091.091 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:48:08,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:48:08,153.153 INFO    ] No camera update needed
[2026-10-25 23:48:08,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:48:08,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:48:08,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:48:08,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:48:10,207.207 INFO    ] ================================================
[2026-10-25 23:48:10,222.222 INFO    ] Launching Daemon at Sun Oct 25 23:48:10 IST 2026
[2026-10-25 23:48:10,233.233 INFO    ] ================================================
[2026-10-25 23:48:10,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:48:10
[2026-10-25 23:48:11,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:48:11,696.696 INFO    ] Initializing speech engine...
[2026-10-25 23:48:11,702.702 INFO    ] 2026-10-25 23:48:11
[2026-10-25 23:48:11,948.948 INFO    ] 2026-10-25 23:48:11
[2026-10-25 23:48:11,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:48:14,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:48:14,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:48:14,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:48:14,153.153 INFO    ] time= 25/10/2026 23:48:14
[2026-10-25 23:48:14,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:48:14,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:48:14,240.240 INFO    ] No existing commands found in stream
[2026-10-25 23:48:19,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:48:19,254.254 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-25 23:48:20,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:48:20,023.023 INFO    ] Checking for system updates...
[2026-10-25 23:48:20,059.059 INFO    ] 200
[2026-10-25 23:48:20,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:20,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:20,123.123 INFO    ] No update needed
[2026-10-25 23:48:20,126.126 INFO    ] Checking for camera pi updates...
[2026-10-25 23:48:20,164.164 INFO    ] 200
[2026-10-25 23:48:20,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:20,208.208 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:48:20,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:20,277.277 INFO    ] No camera update needed
[2026-10-25 23:48:20,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:48:20,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:48:20,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:48:20,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:48:22,338.338 INFO    ] ================================================
[2026-10-25 23:48:22,354.354 INFO    ] Launching Daemon at Sun Oct 25 23:48:22 IST 2026
[2026-10-25 23:48:22,365.365 INFO    ] ================================================
[2026-10-25 23:48:22,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:48:22
[2026-10-25 23:48:23,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:48:23,782.782 INFO    ] Initializing speech engine...
[2026-10-25 23:48:23,792.792 INFO    ] 2026-10-25 23:48:23
[2026-10-25 23:48:24,037.037 INFO    ] 2026-10-25 23:48:24
[2026-10-25 23:48:24,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:48:24,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:48:24,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:48:24,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:48:24,404.404 INFO    ] time= 25/10/2026 23:48:24
[2026-10-25 23:48:24,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:48:24,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:48:24,573.573 INFO    ] No existing commands found in stream
[2026-10-25 23:48:29,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:48:29,606.606 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-25 23:48:32,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:48:32,369.369 INFO    ] Checking for system updates...
[2026-10-25 23:48:32,408.408 INFO    ] 200
[2026-10-25 23:48:32,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:32,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:32,471.471 INFO    ] No update needed
[2026-10-25 23:48:32,474.474 INFO    ] Checking for camera pi updates...
[2026-10-25 23:48:32,510.510 INFO    ] 200
[2026-10-25 23:48:32,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:32,558.558 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:48:32,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:32,625.625 INFO    ] No camera update needed
[2026-10-25 23:48:32,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:48:32,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:48:32,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:48:32,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:48:34,685.685 INFO    ] ================================================
[2026-10-25 23:48:34,699.699 INFO    ] Launching Daemon at Sun Oct 25 23:48:34 IST 2026
[2026-10-25 23:48:34,710.710 INFO    ] ================================================
[2026-10-25 23:48:35,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:48:35
[2026-10-25 23:48:35,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:48:36,185.185 INFO    ] Initializing speech engine...
[2026-10-25 23:48:36,196.196 INFO    ] 2026-10-25 23:48:36
[2026-10-25 23:48:36,457.457 INFO    ] 2026-10-25 23:48:36
[2026-10-25 23:48:36,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:48:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:48:36,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:48:36,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:48:36,813.813 INFO    ] time= 25/10/2026 23:48:36
[2026-10-25 23:48:36,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:48:36,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:48:36,981.981 INFO    ] No existing commands found in stream
[2026-10-25 23:48:42,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:48:42,009.009 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-25 23:48:44,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:48:44,847.847 INFO    ] Checking for system updates...
[2026-10-25 23:48:44,885.885 INFO    ] 200
[2026-10-25 23:48:44,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:44,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:44,946.946 INFO    ] No update needed
[2026-10-25 23:48:44,948.948 INFO    ] Checking for camera pi updates...
[2026-10-25 23:48:44,984.984 INFO    ] 200
[2026-10-25 23:48:44,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:45,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:48:45,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:45,092.092 INFO    ] No camera update needed
[2026-10-25 23:48:45,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:48:45,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:48:45,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:48:45,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:48:47,151.151 INFO    ] ================================================
[2026-10-25 23:48:47,167.167 INFO    ] Launching Daemon at Sun Oct 25 23:48:47 IST 2026
[2026-10-25 23:48:47,178.178 INFO    ] ================================================
[2026-10-25 23:48:47,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:48:47
[2026-10-25 23:48:48,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:48:48,640.640 INFO    ] Initializing speech engine...
[2026-10-25 23:48:48,650.650 INFO    ] 2026-10-25 23:48:48
[2026-10-25 23:48:48,912.912 INFO    ] 2026-10-25 23:48:48
[2026-10-25 23:48:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:48:49,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:48:49,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:48:49,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:48:49,377.377 INFO    ] time= 25/10/2026 23:48:49
[2026-10-25 23:48:49,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:48:49,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:48:49,518.518 INFO    ] No existing commands found in stream
[2026-10-25 23:48:54,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:48:54,533.533 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-25 23:48:58,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:48:58,705.705 INFO    ] Checking for system updates...
[2026-10-25 23:48:58,742.742 INFO    ] 200
[2026-10-25 23:48:58,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:58,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:58,801.801 INFO    ] No update needed
[2026-10-25 23:48:58,804.804 INFO    ] Checking for camera pi updates...
[2026-10-25 23:48:58,838.838 INFO    ] 200
[2026-10-25 23:48:58,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:48:58,883.883 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:48:58,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:48:58,943.943 INFO    ] No camera update needed
[2026-10-25 23:48:58,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:48:58,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:48:58,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:48:58,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:49:01,997.997 INFO    ] ================================================
[2026-10-25 23:49:01,012.012 INFO    ] Launching Daemon at Sun Oct 25 23:49:01 IST 2026
[2026-10-25 23:49:01,023.023 INFO    ] ================================================
[2026-10-25 23:49:01,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:49:01
[2026-10-25 23:49:02,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:49:02,621.621 INFO    ] Initializing speech engine...
[2026-10-25 23:49:02,642.642 INFO    ] 2026-10-25 23:49:02
[2026-10-25 23:49:02,929.929 INFO    ] 2026-10-25 23:49:02
[2026-10-25 23:49:02,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:49:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:49:03,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:49:03,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:49:03,425.425 INFO    ] time= 25/10/2026 23:49:03
[2026-10-25 23:49:03,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:49:03,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:49:03,564.564 INFO    ] No existing commands found in stream
[2026-10-25 23:49:08,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:49:08,578.578 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-25 23:49:10,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:49:10,655.655 INFO    ] Checking for system updates...
[2026-10-25 23:49:10,691.691 INFO    ] 200
[2026-10-25 23:49:10,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:10,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:10,749.749 INFO    ] No update needed
[2026-10-25 23:49:10,751.751 INFO    ] Checking for camera pi updates...
[2026-10-25 23:49:10,785.785 INFO    ] 200
[2026-10-25 23:49:10,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:10,829.829 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:49:10,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:10,879.879 INFO    ] No camera update needed
[2026-10-25 23:49:10,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:49:10,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:49:10,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:49:10,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:49:12,933.933 INFO    ] ================================================
[2026-10-25 23:49:12,948.948 INFO    ] Launching Daemon at Sun Oct 25 23:49:12 IST 2026
[2026-10-25 23:49:12,958.958 INFO    ] ================================================
[2026-10-25 23:49:13,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:49:13
[2026-10-25 23:49:14,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:49:14,414.414 INFO    ] Initializing speech engine...
[2026-10-25 23:49:14,420.420 INFO    ] 2026-10-25 23:49:14
[2026-10-25 23:49:14,685.685 INFO    ] 2026-10-25 23:49:14
[2026-10-25 23:49:14,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:49:14,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:49:14,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:49:15,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:49:15,118.118 INFO    ] time= 25/10/2026 23:49:15
[2026-10-25 23:49:15,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:49:15,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:49:15,293.293 INFO    ] No existing commands found in stream
[2026-10-25 23:49:20,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:49:20,308.308 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-25 23:49:23,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:49:23,674.674 INFO    ] Checking for system updates...
[2026-10-25 23:49:23,710.710 INFO    ] 200
[2026-10-25 23:49:23,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:23,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:23,770.770 INFO    ] No update needed
[2026-10-25 23:49:23,772.772 INFO    ] Checking for camera pi updates...
[2026-10-25 23:49:23,806.806 INFO    ] 200
[2026-10-25 23:49:23,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:23,853.853 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:49:23,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:23,909.909 INFO    ] No camera update needed
[2026-10-25 23:49:23,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:49:23,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:49:23,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:49:23,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:49:25,965.965 INFO    ] ================================================
[2026-10-25 23:49:25,980.980 INFO    ] Launching Daemon at Sun Oct 25 23:49:25 IST 2026
[2026-10-25 23:49:25,990.990 INFO    ] ================================================
[2026-10-25 23:49:26,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:49:26
[2026-10-25 23:49:27,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:49:27,382.382 INFO    ] Initializing speech engine...
[2026-10-25 23:49:27,405.405 INFO    ] 2026-10-25 23:49:27
[2026-10-25 23:49:27,656.656 INFO    ] 2026-10-25 23:49:27
[2026-10-25 23:49:27,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:49:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:49:27,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:49:28,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:49:28,025.025 INFO    ] time= 25/10/2026 23:49:28
[2026-10-25 23:49:28,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:49:28,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:49:28,182.182 INFO    ] No existing commands found in stream
[2026-10-25 23:49:33,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:49:33,215.215 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-25 23:49:37,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:49:37,353.353 INFO    ] Checking for system updates...
[2026-10-25 23:49:37,392.392 INFO    ] 200
[2026-10-25 23:49:37,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:37,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:49:37,450.450 INFO    ] No update needed
[2026-10-25 23:49:37,452.452 INFO    ] Checking for camera pi updates...
[2026-10-25 23:49:37,486.486 INFO    ] 200
[2026-10-25 23:49:37,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:37,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:49:37,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:49:37,584.584 INFO    ] No camera update needed
[2026-10-25 23:49:37,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:49:37,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:49:37,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:49:37,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:49:39,641.641 INFO    ] ================================================
[2026-10-25 23:49:39,656.656 INFO    ] Launching Daemon at Sun Oct 25 23:49:39 IST 2026
[2026-10-25 23:49:39,666.666 INFO    ] ================================================
[2026-10-25 23:49:40,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:49:40
[2026-10-25 23:49:40,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:49:41,261.261 INFO    ] Initializing speech engine...
[2026-10-25 23:49:41,275.275 INFO    ] 2026-10-25 23:49:41
[2026-10-25 23:49:41,556.556 INFO    ] 2026-10-25 23:49:41
[2026-10-25 23:49:41,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:49:41,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:49:41,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:49:41,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:49:41,977.977 INFO    ] time= 25/10/2026 23:49:41
[2026-10-25 23:49:42,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:49:42,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:49:42,163.163 INFO    ] No existing commands found in stream
[2026-10-25 23:49:47,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:49:47,177.177 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-25 23:49:50,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:49:50,743.743 INFO    ] Checking for system updates...
[2026-10-25 23:49:50,781.781 INFO    ] 200
[2026-10-25 23:49:50,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:50,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:50,846.846 INFO    ] No update needed
[2026-10-25 23:49:50,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 23:49:50,886.886 INFO    ] 200
[2026-10-25 23:49:50,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:49:50,935.935 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:49:50,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:49:50,995.995 INFO    ] No camera update needed
[2026-10-25 23:49:50,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:49:51,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:49:51,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:49:51,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:49:53,055.055 INFO    ] ================================================
[2026-10-25 23:49:53,071.071 INFO    ] Launching Daemon at Sun Oct 25 23:49:53 IST 2026
[2026-10-25 23:49:53,082.082 INFO    ] ================================================
[2026-10-25 23:49:53,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:49:53
[2026-10-25 23:49:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:49:54,545.545 INFO    ] Initializing speech engine...
[2026-10-25 23:49:54,564.564 INFO    ] 2026-10-25 23:49:54
[2026-10-25 23:49:54,838.838 INFO    ] 2026-10-25 23:49:54
[2026-10-25 23:49:54,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:49:55,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:49:55,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:49:55,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:49:55,222.222 INFO    ] time= 25/10/2026 23:49:55
[2026-10-25 23:49:55,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:49:55,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:49:55,405.405 INFO    ] No existing commands found in stream
[2026-10-25 23:50:00,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:50:00,433.433 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-25 23:50:07,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:50:07,701.701 INFO    ] Checking for system updates...
[2026-10-25 23:50:07,741.741 INFO    ] 200
[2026-10-25 23:50:07,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:07,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:07,812.812 INFO    ] No update needed
[2026-10-25 23:50:07,814.814 INFO    ] Checking for camera pi updates...
[2026-10-25 23:50:07,849.849 INFO    ] 200
[2026-10-25 23:50:07,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:07,899.899 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:50:07,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:07,961.961 INFO    ] No camera update needed
[2026-10-25 23:50:07,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:50:07,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:50:07,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:50:07,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:50:10,017.017 INFO    ] ================================================
[2026-10-25 23:50:10,031.031 INFO    ] Launching Daemon at Sun Oct 25 23:50:10 IST 2026
[2026-10-25 23:50:10,042.042 INFO    ] ================================================
[2026-10-25 23:50:10,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:50:10
[2026-10-25 23:50:11,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:50:11,436.436 INFO    ] Initializing speech engine...
[2026-10-25 23:50:11,445.445 INFO    ] 2026-10-25 23:50:11
[2026-10-25 23:50:11,719.719 INFO    ] 2026-10-25 23:50:11
[2026-10-25 23:50:11,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:50:11,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:50:11,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:50:12,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:50:12,095.095 INFO    ] time= 25/10/2026 23:50:12
[2026-10-25 23:50:12,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:50:12,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:50:12,272.272 INFO    ] No existing commands found in stream
[2026-10-25 23:50:17,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:50:17,300.300 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-25 23:50:19,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:50:19,583.583 INFO    ] Checking for system updates...
[2026-10-25 23:50:19,619.619 INFO    ] 200
[2026-10-25 23:50:19,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:19,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:19,685.685 INFO    ] No update needed
[2026-10-25 23:50:19,687.687 INFO    ] Checking for camera pi updates...
[2026-10-25 23:50:19,721.721 INFO    ] 200
[2026-10-25 23:50:19,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:19,765.765 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:50:19,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:19,816.816 INFO    ] No camera update needed
[2026-10-25 23:50:19,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:50:19,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:50:19,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:50:19,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:50:21,874.874 INFO    ] ================================================
[2026-10-25 23:50:21,889.889 INFO    ] Launching Daemon at Sun Oct 25 23:50:21 IST 2026
[2026-10-25 23:50:21,900.900 INFO    ] ================================================
[2026-10-25 23:50:22,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:50:22
[2026-10-25 23:50:23,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:50:23,571.571 INFO    ] Initializing speech engine...
[2026-10-25 23:50:23,585.585 INFO    ] 2026-10-25 23:50:23
[2026-10-25 23:50:23,879.879 INFO    ] 2026-10-25 23:50:23
[2026-10-25 23:50:23,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:50:24,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:50:24,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:50:24,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:50:24,353.353 INFO    ] time= 25/10/2026 23:50:24
[2026-10-25 23:50:24,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:50:24,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:50:24,539.539 INFO    ] No existing commands found in stream
[2026-10-25 23:50:29,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:50:29,568.568 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 23:50:32,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:50:32,879.879 INFO    ] Checking for system updates...
[2026-10-25 23:50:32,920.920 INFO    ] 200
[2026-10-25 23:50:32,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:32,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:50:32,985.985 INFO    ] No update needed
[2026-10-25 23:50:32,988.988 INFO    ] Checking for camera pi updates...
[2026-10-25 23:50:33,030.030 INFO    ] 200
[2026-10-25 23:50:33,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:33,096.096 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:50:33,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:50:33,134.134 INFO    ] No camera update needed
[2026-10-25 23:50:33,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:50:33,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:50:33,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:50:33,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:50:35,194.194 INFO    ] ================================================
[2026-10-25 23:50:35,209.209 INFO    ] Launching Daemon at Sun Oct 25 23:50:35 IST 2026
[2026-10-25 23:50:35,219.219 INFO    ] ================================================
[2026-10-25 23:50:35,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:50:35
[2026-10-25 23:50:36,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:50:36,679.679 INFO    ] Initializing speech engine...
[2026-10-25 23:50:36,688.688 INFO    ] 2026-10-25 23:50:36
[2026-10-25 23:50:36,938.938 INFO    ] 2026-10-25 23:50:36
[2026-10-25 23:50:36,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:50:37,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:50:37,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:50:37,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:50:37,393.393 INFO    ] time= 25/10/2026 23:50:37
[2026-10-25 23:50:37,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:50:37,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:50:37,568.568 INFO    ] No existing commands found in stream
[2026-10-25 23:50:42,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:50:42,583.583 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-25 23:50:45,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:50:45,290.290 INFO    ] Checking for system updates...
[2026-10-25 23:50:45,331.331 INFO    ] 200
[2026-10-25 23:50:45,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:45,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:45,396.396 INFO    ] No update needed
[2026-10-25 23:50:45,398.398 INFO    ] Checking for camera pi updates...
[2026-10-25 23:50:45,436.436 INFO    ] 200
[2026-10-25 23:50:45,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:45,484.484 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:50:45,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:50:45,621.621 INFO    ] No camera update needed
[2026-10-25 23:50:45,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:50:45,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:50:45,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:50:45,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:50:47,678.678 INFO    ] ================================================
[2026-10-25 23:50:47,693.693 INFO    ] Launching Daemon at Sun Oct 25 23:50:47 IST 2026
[2026-10-25 23:50:47,704.704 INFO    ] ================================================
[2026-10-25 23:50:48,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:50:48
[2026-10-25 23:50:49,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:50:49,357.357 INFO    ] Initializing speech engine...
[2026-10-25 23:50:49,369.369 INFO    ] 2026-10-25 23:50:49
[2026-10-25 23:50:49,652.652 INFO    ] 2026-10-25 23:50:49
[2026-10-25 23:50:49,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:50:49,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:50:49,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:50:50,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:50:50,175.175 INFO    ] time= 25/10/2026 23:50:50
[2026-10-25 23:50:50,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:50:50,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:50:50,313.313 INFO    ] No existing commands found in stream
[2026-10-25 23:50:55,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:50:55,340.340 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-25 23:50:58,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:50:58,384.384 INFO    ] Checking for system updates...
[2026-10-25 23:50:58,421.421 INFO    ] 200
[2026-10-25 23:50:58,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:58,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:50:58,480.480 INFO    ] No update needed
[2026-10-25 23:50:58,483.483 INFO    ] Checking for camera pi updates...
[2026-10-25 23:50:58,517.517 INFO    ] 200
[2026-10-25 23:50:58,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:50:58,561.561 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:50:58,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:50:58,626.626 INFO    ] No camera update needed
[2026-10-25 23:50:58,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:50:58,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:50:58,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:50:58,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:51:00,681.681 INFO    ] ================================================
[2026-10-25 23:51:00,696.696 INFO    ] Launching Daemon at Sun Oct 25 23:51:00 IST 2026
[2026-10-25 23:51:00,707.707 INFO    ] ================================================
[2026-10-25 23:51:01,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:51:01
[2026-10-25 23:51:02,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:51:02,651.651 INFO    ] Initializing speech engine...
[2026-10-25 23:51:02,661.661 INFO    ] 2026-10-25 23:51:02
[2026-10-25 23:51:02,946.946 INFO    ] 2026-10-25 23:51:02
[2026-10-25 23:51:03,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:51:03,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:51:03,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:51:03,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:51:03,409.409 INFO    ] time= 25/10/2026 23:51:03
[2026-10-25 23:51:03,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:51:03,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:51:03,555.555 INFO    ] No existing commands found in stream
[2026-10-25 23:51:08,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:51:08,570.570 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-25 23:51:12,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:51:12,109.109 INFO    ] Checking for system updates...
[2026-10-25 23:51:12,146.146 INFO    ] 200
[2026-10-25 23:51:12,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:12,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:12,213.213 INFO    ] No update needed
[2026-10-25 23:51:12,216.216 INFO    ] Checking for camera pi updates...
[2026-10-25 23:51:12,255.255 INFO    ] 200
[2026-10-25 23:51:12,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:12,304.304 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:51:12,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:12,371.371 INFO    ] No camera update needed
[2026-10-25 23:51:12,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:51:12,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:51:12,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:51:12,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:51:14,431.431 INFO    ] ================================================
[2026-10-25 23:51:14,446.446 INFO    ] Launching Daemon at Sun Oct 25 23:51:14 IST 2026
[2026-10-25 23:51:14,457.457 INFO    ] ================================================
[2026-10-25 23:51:15,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:51:15
[2026-10-25 23:51:15,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:51:15,869.869 INFO    ] Initializing speech engine...
[2026-10-25 23:51:15,892.892 INFO    ] 2026-10-25 23:51:15
[2026-10-25 23:51:16,149.149 INFO    ] 2026-10-25 23:51:16
[2026-10-25 23:51:16,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:51:16,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:51:16,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:51:16,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:51:16,508.508 INFO    ] time= 25/10/2026 23:51:16
[2026-10-25 23:51:16,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:51:16,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:51:16,605.605 INFO    ] No existing commands found in stream
[2026-10-25 23:51:21,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:51:21,620.620 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-25 23:51:25,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:51:25,335.335 INFO    ] Checking for system updates...
[2026-10-25 23:51:25,374.374 INFO    ] 200
[2026-10-25 23:51:25,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:25,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:25,438.438 INFO    ] No update needed
[2026-10-25 23:51:25,441.441 INFO    ] Checking for camera pi updates...
[2026-10-25 23:51:25,478.478 INFO    ] 200
[2026-10-25 23:51:25,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:25,522.522 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:51:25,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:25,586.586 INFO    ] No camera update needed
[2026-10-25 23:51:25,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:51:25,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:51:25,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:51:25,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:51:27,644.644 INFO    ] ================================================
[2026-10-25 23:51:27,659.659 INFO    ] Launching Daemon at Sun Oct 25 23:51:27 IST 2026
[2026-10-25 23:51:27,670.670 INFO    ] ================================================
[2026-10-25 23:51:28,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:51:28
[2026-10-25 23:51:28,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:51:29,102.102 INFO    ] Initializing speech engine...
[2026-10-25 23:51:29,124.124 INFO    ] 2026-10-25 23:51:29
[2026-10-25 23:51:29,379.379 INFO    ] 2026-10-25 23:51:29
[2026-10-25 23:51:29,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:51:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:51:29,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:51:29,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:51:29,762.762 INFO    ] time= 25/10/2026 23:51:29
[2026-10-25 23:51:29,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:51:29,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:51:29,955.955 INFO    ] No existing commands found in stream
[2026-10-25 23:51:34,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:51:34,971.971 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-25 23:51:36,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:51:36,038.038 INFO    ] Checking for system updates...
[2026-10-25 23:51:36,073.073 INFO    ] 200
[2026-10-25 23:51:36,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:36,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:36,133.133 INFO    ] No update needed
[2026-10-25 23:51:36,135.135 INFO    ] Checking for camera pi updates...
[2026-10-25 23:51:36,169.169 INFO    ] 200
[2026-10-25 23:51:36,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:36,214.214 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:51:36,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:36,269.269 INFO    ] No camera update needed
[2026-10-25 23:51:36,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:51:36,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:51:36,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:51:36,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:51:38,326.326 INFO    ] ================================================
[2026-10-25 23:51:38,341.341 INFO    ] Launching Daemon at Sun Oct 25 23:51:38 IST 2026
[2026-10-25 23:51:38,352.352 INFO    ] ================================================
[2026-10-25 23:51:38,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:51:38
[2026-10-25 23:51:39,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:51:39,767.767 INFO    ] Initializing speech engine...
[2026-10-25 23:51:39,776.776 INFO    ] 2026-10-25 23:51:39
[2026-10-25 23:51:40,021.021 INFO    ] 2026-10-25 23:51:40
[2026-10-25 23:51:40,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:51:40,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:51:40,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:51:40,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:51:40,464.464 INFO    ] time= 25/10/2026 23:51:40
[2026-10-25 23:51:40,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:51:40,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:51:40,636.636 INFO    ] No existing commands found in stream
[2026-10-25 23:51:45,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:51:45,651.651 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-25 23:51:46,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:51:46,402.402 INFO    ] Checking for system updates...
[2026-10-25 23:51:46,437.437 INFO    ] 200
[2026-10-25 23:51:46,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:46,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:51:46,496.496 INFO    ] No update needed
[2026-10-25 23:51:46,498.498 INFO    ] Checking for camera pi updates...
[2026-10-25 23:51:46,533.533 INFO    ] 200
[2026-10-25 23:51:46,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:46,576.576 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:51:46,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:51:46,635.635 INFO    ] No camera update needed
[2026-10-25 23:51:46,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:51:46,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:51:46,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:51:46,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:51:48,691.691 INFO    ] ================================================
[2026-10-25 23:51:48,706.706 INFO    ] Launching Daemon at Sun Oct 25 23:51:48 IST 2026
[2026-10-25 23:51:48,717.717 INFO    ] ================================================
[2026-10-25 23:51:49,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:51:49
[2026-10-25 23:51:49,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:51:50,122.122 INFO    ] Initializing speech engine...
[2026-10-25 23:51:50,129.129 INFO    ] 2026-10-25 23:51:50
[2026-10-25 23:51:50,421.421 INFO    ] 2026-10-25 23:51:50
[2026-10-25 23:51:50,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:51:50,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:51:50,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:51:50,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:51:50,800.800 INFO    ] time= 25/10/2026 23:51:50
[2026-10-25 23:51:50,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:51:50,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:51:50,925.925 INFO    ] No existing commands found in stream
[2026-10-25 23:51:55,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:51:55,944.944 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-25 23:51:58,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:51:58,204.204 INFO    ] Checking for system updates...
[2026-10-25 23:51:58,243.243 INFO    ] 200
[2026-10-25 23:51:58,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:58,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:58,307.307 INFO    ] No update needed
[2026-10-25 23:51:58,309.309 INFO    ] Checking for camera pi updates...
[2026-10-25 23:51:58,346.346 INFO    ] 200
[2026-10-25 23:51:58,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:51:58,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:51:58,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:51:58,458.458 INFO    ] No camera update needed
[2026-10-25 23:51:58,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:51:58,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:51:58,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:51:58,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:52:00,514.514 INFO    ] ================================================
[2026-10-25 23:52:00,529.529 INFO    ] Launching Daemon at Sun Oct 25 23:52:00 IST 2026
[2026-10-25 23:52:00,541.541 INFO    ] ================================================
[2026-10-25 23:52:01,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:52:01
[2026-10-25 23:52:01,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:52:02,236.236 INFO    ] Initializing speech engine...
[2026-10-25 23:52:02,251.251 INFO    ] 2026-10-25 23:52:02
[2026-10-25 23:52:02,536.536 INFO    ] 2026-10-25 23:52:02
[2026-10-25 23:52:02,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:52:02,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:52:02,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:52:02,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:52:02,931.931 INFO    ] time= 25/10/2026 23:52:02
[2026-10-25 23:52:02,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:52:02,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:52:03,062.062 INFO    ] No existing commands found in stream
[2026-10-25 23:52:08,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:52:08,108.108 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-25 23:52:09,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:52:09,429.429 INFO    ] Checking for system updates...
[2026-10-25 23:52:09,467.467 INFO    ] 200
[2026-10-25 23:52:09,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:09,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:52:09,527.527 INFO    ] No update needed
[2026-10-25 23:52:09,530.530 INFO    ] Checking for camera pi updates...
[2026-10-25 23:52:09,565.565 INFO    ] 200
[2026-10-25 23:52:09,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:09,613.613 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:52:09,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:52:09,670.670 INFO    ] No camera update needed
[2026-10-25 23:52:09,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:52:09,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:52:09,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:52:09,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:52:11,731.731 INFO    ] ================================================
[2026-10-25 23:52:11,746.746 INFO    ] Launching Daemon at Sun Oct 25 23:52:11 IST 2026
[2026-10-25 23:52:11,757.757 INFO    ] ================================================
[2026-10-25 23:52:12,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:52:12
[2026-10-25 23:52:12,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:52:13,164.164 INFO    ] Initializing speech engine...
[2026-10-25 23:52:13,188.188 INFO    ] 2026-10-25 23:52:13
[2026-10-25 23:52:13,457.457 INFO    ] 2026-10-25 23:52:13
[2026-10-25 23:52:13,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:52:14,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:52:14,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:52:14,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:52:14,825.825 INFO    ] time= 25/10/2026 23:52:14
[2026-10-25 23:52:14,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:52:14,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:52:14,955.955 INFO    ] No existing commands found in stream
[2026-10-25 23:52:19,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:52:19,983.983 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-25 23:52:24,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:52:24,347.347 INFO    ] Checking for system updates...
[2026-10-25 23:52:24,383.383 INFO    ] 200
[2026-10-25 23:52:24,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:24,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:52:24,442.442 INFO    ] No update needed
[2026-10-25 23:52:24,445.445 INFO    ] Checking for camera pi updates...
[2026-10-25 23:52:24,481.481 INFO    ] 200
[2026-10-25 23:52:24,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:24,528.528 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:52:24,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:52:24,580.580 INFO    ] No camera update needed
[2026-10-25 23:52:24,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:52:24,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:52:24,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:52:24,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:52:26,636.636 INFO    ] ================================================
[2026-10-25 23:52:26,651.651 INFO    ] Launching Daemon at Sun Oct 25 23:52:26 IST 2026
[2026-10-25 23:52:26,662.662 INFO    ] ================================================
[2026-10-25 23:52:27,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:52:27
[2026-10-25 23:52:27,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:52:28,189.189 INFO    ] Initializing speech engine...
[2026-10-25 23:52:28,198.198 INFO    ] 2026-10-25 23:52:28
[2026-10-25 23:52:28,454.454 INFO    ] 2026-10-25 23:52:28
[2026-10-25 23:52:28,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:52:28,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:52:28,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:52:28,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:52:28,919.919 INFO    ] time= 25/10/2026 23:52:28
[2026-10-25 23:52:28,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:52:29,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:52:29,060.060 INFO    ] No existing commands found in stream
[2026-10-25 23:52:34,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:52:34,074.074 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-25 23:52:36,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:52:36,618.618 INFO    ] Checking for system updates...
[2026-10-25 23:52:36,654.654 INFO    ] 200
[2026-10-25 23:52:36,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:36,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:52:36,713.713 INFO    ] No update needed
[2026-10-25 23:52:36,715.715 INFO    ] Checking for camera pi updates...
[2026-10-25 23:52:36,749.749 INFO    ] 200
[2026-10-25 23:52:36,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:36,800.800 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:52:36,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:52:36,861.861 INFO    ] No camera update needed
[2026-10-25 23:52:36,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:52:36,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:52:36,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:52:36,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:52:38,916.916 INFO    ] ================================================
[2026-10-25 23:52:38,932.932 INFO    ] Launching Daemon at Sun Oct 25 23:52:38 IST 2026
[2026-10-25 23:52:38,943.943 INFO    ] ================================================
[2026-10-25 23:52:39,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:52:39
[2026-10-25 23:52:40,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:52:40,543.543 INFO    ] Initializing speech engine...
[2026-10-25 23:52:40,551.551 INFO    ] 2026-10-25 23:52:40
[2026-10-25 23:52:40,835.835 INFO    ] 2026-10-25 23:52:40
[2026-10-25 23:52:40,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:52:41,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:52:41,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:52:41,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:52:41,368.368 INFO    ] time= 25/10/2026 23:52:41
[2026-10-25 23:52:41,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:52:41,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:52:41,505.505 INFO    ] No existing commands found in stream
[2026-10-25 23:52:46,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:52:46,540.540 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-25 23:52:50,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:52:50,794.794 INFO    ] Checking for system updates...
[2026-10-25 23:52:50,830.830 INFO    ] 200
[2026-10-25 23:52:50,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:50,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:52:50,888.888 INFO    ] No update needed
[2026-10-25 23:52:50,891.891 INFO    ] Checking for camera pi updates...
[2026-10-25 23:52:50,925.925 INFO    ] 200
[2026-10-25 23:52:50,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:52:50,968.968 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:52:51,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:52:51,134.134 INFO    ] No camera update needed
[2026-10-25 23:52:51,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:52:51,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:52:51,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:52:51,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:52:53,191.191 INFO    ] ================================================
[2026-10-25 23:52:53,206.206 INFO    ] Launching Daemon at Sun Oct 25 23:52:53 IST 2026
[2026-10-25 23:52:53,217.217 INFO    ] ================================================
[2026-10-25 23:52:53,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:52:53
[2026-10-25 23:52:54,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:52:54,695.695 INFO    ] Initializing speech engine...
[2026-10-25 23:52:54,703.703 INFO    ] 2026-10-25 23:52:54
[2026-10-25 23:52:54,987.987 INFO    ] 2026-10-25 23:52:54
[2026-10-25 23:52:55,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:52:55,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:52:55,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:52:55,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:52:55,453.453 INFO    ] time= 25/10/2026 23:52:55
[2026-10-25 23:52:55,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:52:55,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:52:55,588.588 INFO    ] No existing commands found in stream
[2026-10-25 23:53:00,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:53:00,604.604 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-25 23:53:02,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:53:02,845.845 INFO    ] Checking for system updates...
[2026-10-25 23:53:02,882.882 INFO    ] 200
[2026-10-25 23:53:02,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:02,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:02,945.945 INFO    ] No update needed
[2026-10-25 23:53:02,947.947 INFO    ] Checking for camera pi updates...
[2026-10-25 23:53:02,981.981 INFO    ] 200
[2026-10-25 23:53:02,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:03,034.034 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:53:03,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:03,073.073 INFO    ] No camera update needed
[2026-10-25 23:53:03,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:53:03,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:53:03,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:53:03,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:53:05,128.128 INFO    ] ================================================
[2026-10-25 23:53:05,143.143 INFO    ] Launching Daemon at Sun Oct 25 23:53:05 IST 2026
[2026-10-25 23:53:05,154.154 INFO    ] ================================================
[2026-10-25 23:53:05,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:53:05
[2026-10-25 23:53:06,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:53:06,757.757 INFO    ] Initializing speech engine...
[2026-10-25 23:53:06,765.765 INFO    ] 2026-10-25 23:53:06
[2026-10-25 23:53:07,035.035 INFO    ] 2026-10-25 23:53:07
[2026-10-25 23:53:07,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:53:07,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:53:07,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:53:07,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:53:07,514.514 INFO    ] time= 25/10/2026 23:53:07
[2026-10-25 23:53:07,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:53:07,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:53:07,650.650 INFO    ] No existing commands found in stream
[2026-10-25 23:53:12,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:53:12,666.666 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-25 23:53:16,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:53:16,622.622 INFO    ] Checking for system updates...
[2026-10-25 23:53:16,659.659 INFO    ] 200
[2026-10-25 23:53:16,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:16,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:16,720.720 INFO    ] No update needed
[2026-10-25 23:53:16,723.723 INFO    ] Checking for camera pi updates...
[2026-10-25 23:53:16,764.764 INFO    ] 200
[2026-10-25 23:53:16,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:16,807.807 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:53:16,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:16,859.859 INFO    ] No camera update needed
[2026-10-25 23:53:16,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:53:16,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:53:16,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:53:16,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:53:18,916.916 INFO    ] ================================================
[2026-10-25 23:53:18,932.932 INFO    ] Launching Daemon at Sun Oct 25 23:53:18 IST 2026
[2026-10-25 23:53:18,944.944 INFO    ] ================================================
[2026-10-25 23:53:19,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:53:19
[2026-10-25 23:53:20,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:53:20,538.538 INFO    ] Initializing speech engine...
[2026-10-25 23:53:20,545.545 INFO    ] 2026-10-25 23:53:20
[2026-10-25 23:53:20,823.823 INFO    ] 2026-10-25 23:53:20
[2026-10-25 23:53:20,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:53:21,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:53:21,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:53:21,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:53:21,296.296 INFO    ] time= 25/10/2026 23:53:21
[2026-10-25 23:53:21,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:53:21,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:53:21,523.523 INFO    ] No existing commands found in stream
[2026-10-25 23:53:26,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:53:26,547.547 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-25 23:53:28,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:53:28,625.625 INFO    ] Checking for system updates...
[2026-10-25 23:53:28,663.663 INFO    ] 200
[2026-10-25 23:53:28,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:28,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:28,726.726 INFO    ] No update needed
[2026-10-25 23:53:28,728.728 INFO    ] Checking for camera pi updates...
[2026-10-25 23:53:28,764.764 INFO    ] 200
[2026-10-25 23:53:28,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:28,813.813 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:53:28,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:28,870.870 INFO    ] No camera update needed
[2026-10-25 23:53:28,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:53:28,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:53:28,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:53:28,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:53:30,926.926 INFO    ] ================================================
[2026-10-25 23:53:30,942.942 INFO    ] Launching Daemon at Sun Oct 25 23:53:30 IST 2026
[2026-10-25 23:53:30,953.953 INFO    ] ================================================
[2026-10-25 23:53:31,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:53:31
[2026-10-25 23:53:32,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:53:32,440.440 INFO    ] Initializing speech engine...
[2026-10-25 23:53:32,457.457 INFO    ] 2026-10-25 23:53:32
[2026-10-25 23:53:32,731.731 INFO    ] 2026-10-25 23:53:32
[2026-10-25 23:53:32,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:53:32,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:53:32,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:53:33,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:53:33,163.163 INFO    ] time= 25/10/2026 23:53:33
[2026-10-25 23:53:33,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:53:33,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:53:33,318.318 INFO    ] No existing commands found in stream
[2026-10-25 23:53:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:53:38,353.353 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-25 23:53:39,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:53:39,887.887 INFO    ] Checking for system updates...
[2026-10-25 23:53:39,926.926 INFO    ] 200
[2026-10-25 23:53:39,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:39,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:39,989.989 INFO    ] No update needed
[2026-10-25 23:53:39,991.991 INFO    ] Checking for camera pi updates...
[2026-10-25 23:53:40,028.028 INFO    ] 200
[2026-10-25 23:53:40,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:40,071.071 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:53:40,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:53:40,110.110 INFO    ] No camera update needed
[2026-10-25 23:53:40,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:53:40,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:53:40,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:53:40,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:53:42,166.166 INFO    ] ================================================
[2026-10-25 23:53:42,182.182 INFO    ] Launching Daemon at Sun Oct 25 23:53:42 IST 2026
[2026-10-25 23:53:42,193.193 INFO    ] ================================================
[2026-10-25 23:53:42,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:53:42
[2026-10-25 23:53:43,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:53:43,665.665 INFO    ] Initializing speech engine...
[2026-10-25 23:53:43,672.672 INFO    ] 2026-10-25 23:53:43
[2026-10-25 23:53:43,932.932 INFO    ] 2026-10-25 23:53:43
[2026-10-25 23:53:43,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:53:44,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:53:44,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:53:45,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:53:45,024.024 INFO    ] time= 25/10/2026 23:53:45
[2026-10-25 23:53:45,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:53:45,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:53:45,129.129 INFO    ] No existing commands found in stream
[2026-10-25 23:53:50,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:53:50,143.143 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-25 23:53:52,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:53:52,790.790 INFO    ] Checking for system updates...
[2026-10-25 23:53:52,827.827 INFO    ] 200
[2026-10-25 23:53:52,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:52,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:53:52,886.886 INFO    ] No update needed
[2026-10-25 23:53:52,889.889 INFO    ] Checking for camera pi updates...
[2026-10-25 23:53:52,923.923 INFO    ] 200
[2026-10-25 23:53:52,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:53:52,970.970 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:53:53,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:53:53,022.022 INFO    ] No camera update needed
[2026-10-25 23:53:53,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:53:53,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:53:53,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:53:53,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:53:55,079.079 INFO    ] ================================================
[2026-10-25 23:53:55,095.095 INFO    ] Launching Daemon at Sun Oct 25 23:53:55 IST 2026
[2026-10-25 23:53:55,106.106 INFO    ] ================================================
[2026-10-25 23:53:55,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:53:55
[2026-10-25 23:53:56,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:53:56,701.701 INFO    ] Initializing speech engine...
[2026-10-25 23:53:56,709.709 INFO    ] 2026-10-25 23:53:56
[2026-10-25 23:53:56,994.994 INFO    ] 2026-10-25 23:53:56
[2026-10-25 23:53:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:53:57,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:53:57,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:53:57,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:53:57,454.454 INFO    ] time= 25/10/2026 23:53:57
[2026-10-25 23:53:57,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:53:57,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:53:57,649.649 INFO    ] No existing commands found in stream
[2026-10-25 23:54:02,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:54:02,677.677 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-25 23:54:06,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:54:06,715.715 INFO    ] Checking for system updates...
[2026-10-25 23:54:06,752.752 INFO    ] 200
[2026-10-25 23:54:06,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:06,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:54:06,813.813 INFO    ] No update needed
[2026-10-25 23:54:06,815.815 INFO    ] Checking for camera pi updates...
[2026-10-25 23:54:06,853.853 INFO    ] 200
[2026-10-25 23:54:06,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:06,901.901 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:54:06,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:54:06,965.965 INFO    ] No camera update needed
[2026-10-25 23:54:06,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:54:06,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:54:06,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:54:06,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:54:09,029.029 INFO    ] ================================================
[2026-10-25 23:54:09,044.044 INFO    ] Launching Daemon at Sun Oct 25 23:54:09 IST 2026
[2026-10-25 23:54:09,056.056 INFO    ] ================================================
[2026-10-25 23:54:09,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:54:09
[2026-10-25 23:54:10,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:54:10,468.468 INFO    ] Initializing speech engine...
[2026-10-25 23:54:10,481.481 INFO    ] 2026-10-25 23:54:10
[2026-10-25 23:54:10,747.747 INFO    ] 2026-10-25 23:54:10
[2026-10-25 23:54:10,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:54:10,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:54:11,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:54:11,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:54:11,203.203 INFO    ] time= 25/10/2026 23:54:11
[2026-10-25 23:54:11,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:54:11,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:54:11,369.369 INFO    ] No existing commands found in stream
[2026-10-25 23:54:16,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:54:16,384.384 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-25 23:54:18,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:54:18,970.970 INFO    ] Checking for system updates...
[2026-10-25 23:54:19,010.010 INFO    ] 200
[2026-10-25 23:54:19,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:19,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:19,074.074 INFO    ] No update needed
[2026-10-25 23:54:19,077.077 INFO    ] Checking for camera pi updates...
[2026-10-25 23:54:19,112.112 INFO    ] 200
[2026-10-25 23:54:19,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:19,156.156 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:54:19,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:19,207.207 INFO    ] No camera update needed
[2026-10-25 23:54:19,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:54:19,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:54:19,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:54:19,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:54:21,268.268 INFO    ] ================================================
[2026-10-25 23:54:21,283.283 INFO    ] Launching Daemon at Sun Oct 25 23:54:21 IST 2026
[2026-10-25 23:54:21,293.293 INFO    ] ================================================
[2026-10-25 23:54:21,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:54:21
[2026-10-25 23:54:22,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:54:22,742.742 INFO    ] Initializing speech engine...
[2026-10-25 23:54:22,758.758 INFO    ] 2026-10-25 23:54:22
[2026-10-25 23:54:23,036.036 INFO    ] 2026-10-25 23:54:23
[2026-10-25 23:54:23,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:54:23,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:54:23,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:54:23,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:54:23,423.423 INFO    ] time= 25/10/2026 23:54:23
[2026-10-25 23:54:23,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:54:23,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:54:23,594.594 INFO    ] No existing commands found in stream
[2026-10-25 23:54:28,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:54:28,623.623 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-25 23:54:32,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:54:32,485.485 INFO    ] Checking for system updates...
[2026-10-25 23:54:32,526.526 INFO    ] 200
[2026-10-25 23:54:32,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:32,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:54:32,583.583 INFO    ] No update needed
[2026-10-25 23:54:32,585.585 INFO    ] Checking for camera pi updates...
[2026-10-25 23:54:32,619.619 INFO    ] 200
[2026-10-25 23:54:32,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:32,662.662 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:54:32,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:54:32,700.700 INFO    ] No camera update needed
[2026-10-25 23:54:32,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:54:32,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:54:32,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:54:32,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:54:34,756.756 INFO    ] ================================================
[2026-10-25 23:54:34,770.770 INFO    ] Launching Daemon at Sun Oct 25 23:54:34 IST 2026
[2026-10-25 23:54:34,781.781 INFO    ] ================================================
[2026-10-25 23:54:35,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:54:35
[2026-10-25 23:54:35,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:54:36,202.202 INFO    ] Initializing speech engine...
[2026-10-25 23:54:36,214.214 INFO    ] 2026-10-25 23:54:36
[2026-10-25 23:54:36,459.459 INFO    ] 2026-10-25 23:54:36
[2026-10-25 23:54:36,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:54:36,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:54:36,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:54:36,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:54:36,914.914 INFO    ] time= 25/10/2026 23:54:36
[2026-10-25 23:54:36,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:54:37,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:54:37,073.073 INFO    ] No existing commands found in stream
[2026-10-25 23:54:42,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:54:42,088.088 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-25 23:54:45,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:54:45,734.734 INFO    ] Checking for system updates...
[2026-10-25 23:54:45,770.770 INFO    ] 200
[2026-10-25 23:54:45,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:45,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:45,832.832 INFO    ] No update needed
[2026-10-25 23:54:45,834.834 INFO    ] Checking for camera pi updates...
[2026-10-25 23:54:45,868.868 INFO    ] 200
[2026-10-25 23:54:45,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:45,918.918 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:54:45,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:45,978.978 INFO    ] No camera update needed
[2026-10-25 23:54:45,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:54:45,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:54:45,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:54:45,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:54:48,033.033 INFO    ] ================================================
[2026-10-25 23:54:48,049.049 INFO    ] Launching Daemon at Sun Oct 25 23:54:48 IST 2026
[2026-10-25 23:54:48,059.059 INFO    ] ================================================
[2026-10-25 23:54:48,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:54:48
[2026-10-25 23:54:49,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:54:49,462.462 INFO    ] Initializing speech engine...
[2026-10-25 23:54:49,485.485 INFO    ] 2026-10-25 23:54:49
[2026-10-25 23:54:49,741.741 INFO    ] 2026-10-25 23:54:49
[2026-10-25 23:54:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:54:49,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:54:49,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:54:50,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:54:50,116.116 INFO    ] time= 25/10/2026 23:54:50
[2026-10-25 23:54:50,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:54:50,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:54:50,197.197 INFO    ] No existing commands found in stream
[2026-10-25 23:54:55,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:54:55,225.225 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-25 23:54:57,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:54:57,309.309 INFO    ] Checking for system updates...
[2026-10-25 23:54:57,346.346 INFO    ] 200
[2026-10-25 23:54:57,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:57,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:57,404.404 INFO    ] No update needed
[2026-10-25 23:54:57,406.406 INFO    ] Checking for camera pi updates...
[2026-10-25 23:54:57,440.440 INFO    ] 200
[2026-10-25 23:54:57,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:54:57,483.483 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:54:57,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:54:57,653.653 INFO    ] No camera update needed
[2026-10-25 23:54:57,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:54:57,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:54:57,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:54:57,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:54:59,708.708 INFO    ] ================================================
[2026-10-25 23:54:59,725.725 INFO    ] Launching Daemon at Sun Oct 25 23:54:59 IST 2026
[2026-10-25 23:54:59,736.736 INFO    ] ================================================
[2026-10-25 23:55:00,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:00
[2026-10-25 23:55:00,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:01,151.151 INFO    ] Initializing speech engine...
[2026-10-25 23:55:01,165.165 INFO    ] 2026-10-25 23:55:01
[2026-10-25 23:55:01,760.760 INFO    ] 2026-10-25 23:55:01
[2026-10-25 23:55:01,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:01,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:02,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:55:02,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:55:02,213.213 INFO    ] time= 25/10/2026 23:55:02
[2026-10-25 23:55:02,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:55:02,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:55:02,331.331 INFO    ] No existing commands found in stream
[2026-10-25 23:55:07,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:55:07,374.374 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-25 23:55:09,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:55:09,508.508 INFO    ] Checking for system updates...
[2026-10-25 23:55:09,544.544 INFO    ] 200
[2026-10-25 23:55:09,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:09,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:55:09,602.602 INFO    ] No update needed
[2026-10-25 23:55:09,604.604 INFO    ] Checking for camera pi updates...
[2026-10-25 23:55:09,638.638 INFO    ] 200
[2026-10-25 23:55:09,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:09,688.688 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:55:09,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:55:09,751.751 INFO    ] No camera update needed
[2026-10-25 23:55:09,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:55:09,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:55:09,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:55:09,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:55:11,806.806 INFO    ] ================================================
[2026-10-25 23:55:11,822.822 INFO    ] Launching Daemon at Sun Oct 25 23:55:11 IST 2026
[2026-10-25 23:55:11,833.833 INFO    ] ================================================
[2026-10-25 23:55:12,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:12
[2026-10-25 23:55:13,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:13,283.283 INFO    ] Initializing speech engine...
[2026-10-25 23:55:13,297.297 INFO    ] 2026-10-25 23:55:13
[2026-10-25 23:55:13,565.565 INFO    ] 2026-10-25 23:55:13
[2026-10-25 23:55:13,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:14,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:55:14,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:55:14,806.806 INFO    ] time= 25/10/2026 23:55:14
[2026-10-25 23:55:14,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:55:14,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:55:14,934.934 INFO    ] No existing commands found in stream
[2026-10-25 23:55:19,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:55:19,956.956 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-25 23:55:20,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:55:20,519.519 INFO    ] Checking for system updates...
[2026-10-25 23:55:20,554.554 INFO    ] 200
[2026-10-25 23:55:20,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:20,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:20,614.614 INFO    ] No update needed
[2026-10-25 23:55:20,616.616 INFO    ] Checking for camera pi updates...
[2026-10-25 23:55:20,650.650 INFO    ] 200
[2026-10-25 23:55:20,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:20,693.693 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:55:20,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:20,746.746 INFO    ] No camera update needed
[2026-10-25 23:55:20,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:55:20,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:55:20,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:55:20,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:55:22,804.804 INFO    ] ================================================
[2026-10-25 23:55:22,819.819 INFO    ] Launching Daemon at Sun Oct 25 23:55:22 IST 2026
[2026-10-25 23:55:22,831.831 INFO    ] ================================================
[2026-10-25 23:55:23,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:23
[2026-10-25 23:55:24,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:24,401.401 INFO    ] Initializing speech engine...
[2026-10-25 23:55:24,415.415 INFO    ] 2026-10-25 23:55:24
[2026-10-25 23:55:24,722.722 INFO    ] 2026-10-25 23:55:24
[2026-10-25 23:55:24,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:24,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:24,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:55:25,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:55:25,154.154 INFO    ] time= 25/10/2026 23:55:25
[2026-10-25 23:55:25,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:55:25,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:55:25,286.286 INFO    ] No existing commands found in stream
[2026-10-25 23:55:30,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:55:30,303.303 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-25 23:55:33,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:55:33,297.297 INFO    ] Checking for system updates...
[2026-10-25 23:55:33,334.334 INFO    ] 200
[2026-10-25 23:55:33,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:33,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:33,399.399 INFO    ] No update needed
[2026-10-25 23:55:33,403.403 INFO    ] Checking for camera pi updates...
[2026-10-25 23:55:33,437.437 INFO    ] 200
[2026-10-25 23:55:33,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:33,482.482 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:55:33,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:33,521.521 INFO    ] No camera update needed
[2026-10-25 23:55:33,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:55:33,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:55:33,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:55:33,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:55:35,579.579 INFO    ] ================================================
[2026-10-25 23:55:35,594.594 INFO    ] Launching Daemon at Sun Oct 25 23:55:35 IST 2026
[2026-10-25 23:55:35,605.605 INFO    ] ================================================
[2026-10-25 23:55:36,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:36
[2026-10-25 23:55:36,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:37,035.035 INFO    ] Initializing speech engine...
[2026-10-25 23:55:37,044.044 INFO    ] 2026-10-25 23:55:37
[2026-10-25 23:55:37,293.293 INFO    ] 2026-10-25 23:55:37
[2026-10-25 23:55:37,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:37,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:37,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:55:37,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:55:37,669.669 INFO    ] time= 25/10/2026 23:55:37
[2026-10-25 23:55:37,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:55:37,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:55:37,864.864 INFO    ] No existing commands found in stream
[2026-10-25 23:55:42,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:55:42,881.881 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-25 23:55:44,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:55:44,825.825 INFO    ] Checking for system updates...
[2026-10-25 23:55:44,861.861 INFO    ] 200
[2026-10-25 23:55:44,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:44,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:55:44,920.920 INFO    ] No update needed
[2026-10-25 23:55:44,923.923 INFO    ] Checking for camera pi updates...
[2026-10-25 23:55:44,957.957 INFO    ] 200
[2026-10-25 23:55:44,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:45,001.001 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:55:45,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:55:45,062.062 INFO    ] No camera update needed
[2026-10-25 23:55:45,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:55:45,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:55:45,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:55:45,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:55:47,118.118 INFO    ] ================================================
[2026-10-25 23:55:47,134.134 INFO    ] Launching Daemon at Sun Oct 25 23:55:47 IST 2026
[2026-10-25 23:55:47,146.146 INFO    ] ================================================
[2026-10-25 23:55:47,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:47
[2026-10-25 23:55:48,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:48,581.581 INFO    ] Initializing speech engine...
[2026-10-25 23:55:48,590.590 INFO    ] 2026-10-25 23:55:48
[2026-10-25 23:55:48,838.838 INFO    ] 2026-10-25 23:55:48
[2026-10-25 23:55:48,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:49,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:49,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:55:49,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:55:49,205.205 INFO    ] time= 25/10/2026 23:55:49
[2026-10-25 23:55:49,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:55:49,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:55:49,378.378 INFO    ] No existing commands found in stream
[2026-10-25 23:55:54,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:55:54,412.412 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-25 23:55:55,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:55:55,407.407 INFO    ] Checking for system updates...
[2026-10-25 23:55:55,443.443 INFO    ] 200
[2026-10-25 23:55:55,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:55,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:55,502.502 INFO    ] No update needed
[2026-10-25 23:55:55,505.505 INFO    ] Checking for camera pi updates...
[2026-10-25 23:55:55,538.538 INFO    ] 200
[2026-10-25 23:55:55,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:55:55,581.581 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:55:55,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:55:55,658.658 INFO    ] No camera update needed
[2026-10-25 23:55:55,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:55:55,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:55:55,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:55:55,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:55:57,714.714 INFO    ] ================================================
[2026-10-25 23:55:57,729.729 INFO    ] Launching Daemon at Sun Oct 25 23:55:57 IST 2026
[2026-10-25 23:55:57,740.740 INFO    ] ================================================
[2026-10-25 23:55:58,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:55:58
[2026-10-25 23:55:59,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:55:59,312.312 INFO    ] Initializing speech engine...
[2026-10-25 23:55:59,323.323 INFO    ] 2026-10-25 23:55:59
[2026-10-25 23:55:59,593.593 INFO    ] 2026-10-25 23:55:59
[2026-10-25 23:55:59,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:55:59,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:55:59,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:56:00,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:56:00,086.086 INFO    ] time= 25/10/2026 23:56:00
[2026-10-25 23:56:00,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:56:00,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:56:00,225.225 INFO    ] No existing commands found in stream
[2026-10-25 23:56:05,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:56:05,245.245 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-25 23:56:07,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:56:07,557.557 INFO    ] Checking for system updates...
[2026-10-25 23:56:07,593.593 INFO    ] 200
[2026-10-25 23:56:07,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:07,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:56:07,650.650 INFO    ] No update needed
[2026-10-25 23:56:07,653.653 INFO    ] Checking for camera pi updates...
[2026-10-25 23:56:07,686.686 INFO    ] 200
[2026-10-25 23:56:07,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:07,730.730 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:56:07,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:56:07,796.796 INFO    ] No camera update needed
[2026-10-25 23:56:07,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:56:07,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:56:07,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:56:07,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:56:09,851.851 INFO    ] ================================================
[2026-10-25 23:56:09,866.866 INFO    ] Launching Daemon at Sun Oct 25 23:56:09 IST 2026
[2026-10-25 23:56:09,877.877 INFO    ] ================================================
[2026-10-25 23:56:10,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:56:10
[2026-10-25 23:56:11,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:56:11,271.271 INFO    ] Initializing speech engine...
[2026-10-25 23:56:11,278.278 INFO    ] 2026-10-25 23:56:11
[2026-10-25 23:56:11,561.561 INFO    ] 2026-10-25 23:56:11
[2026-10-25 23:56:11,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:56:11,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:56:11,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:56:11,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:56:11,967.967 INFO    ] time= 25/10/2026 23:56:11
[2026-10-25 23:56:11,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:56:12,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:56:12,134.134 INFO    ] No existing commands found in stream
[2026-10-25 23:56:17,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:56:17,162.162 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-25 23:56:20,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:56:20,527.527 INFO    ] Checking for system updates...
[2026-10-25 23:56:20,563.563 INFO    ] 200
[2026-10-25 23:56:20,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:20,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:56:20,620.620 INFO    ] No update needed
[2026-10-25 23:56:20,623.623 INFO    ] Checking for camera pi updates...
[2026-10-25 23:56:20,656.656 INFO    ] 200
[2026-10-25 23:56:20,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:20,708.708 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:56:20,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:56:20,767.767 INFO    ] No camera update needed
[2026-10-25 23:56:20,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:56:20,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:56:20,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:56:20,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:56:22,825.825 INFO    ] ================================================
[2026-10-25 23:56:22,841.841 INFO    ] Launching Daemon at Sun Oct 25 23:56:22 IST 2026
[2026-10-25 23:56:22,852.852 INFO    ] ================================================
[2026-10-25 23:56:23,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:56:23
[2026-10-25 23:56:24,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:56:24,402.402 INFO    ] Initializing speech engine...
[2026-10-25 23:56:24,412.412 INFO    ] 2026-10-25 23:56:24
[2026-10-25 23:56:24,680.680 INFO    ] 2026-10-25 23:56:24
[2026-10-25 23:56:24,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:56:24,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:56:24,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:56:25,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:56:25,156.156 INFO    ] time= 25/10/2026 23:56:25
[2026-10-25 23:56:25,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:56:25,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:56:25,310.310 INFO    ] No existing commands found in stream
[2026-10-25 23:56:30,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:56:30,325.325 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-25 23:56:36,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:56:36,531.531 INFO    ] Checking for system updates...
[2026-10-25 23:56:36,568.568 INFO    ] 200
[2026-10-25 23:56:36,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:36,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:56:36,627.627 INFO    ] No update needed
[2026-10-25 23:56:36,630.630 INFO    ] Checking for camera pi updates...
[2026-10-25 23:56:36,664.664 INFO    ] 200
[2026-10-25 23:56:36,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:36,709.709 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:56:36,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:56:36,761.761 INFO    ] No camera update needed
[2026-10-25 23:56:36,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:56:36,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:56:36,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:56:36,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:56:38,820.820 INFO    ] ================================================
[2026-10-25 23:56:38,836.836 INFO    ] Launching Daemon at Sun Oct 25 23:56:38 IST 2026
[2026-10-25 23:56:38,847.847 INFO    ] ================================================
[2026-10-25 23:56:39,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:56:39
[2026-10-25 23:56:40,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:56:40,402.402 INFO    ] Initializing speech engine...
[2026-10-25 23:56:40,410.410 INFO    ] 2026-10-25 23:56:40
[2026-10-25 23:56:40,693.693 INFO    ] 2026-10-25 23:56:40
[2026-10-25 23:56:40,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:56:40,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:56:40,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:56:41,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:56:41,239.239 INFO    ] time= 25/10/2026 23:56:41
[2026-10-25 23:56:41,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:56:41,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:56:41,382.382 INFO    ] No existing commands found in stream
[2026-10-25 23:56:46,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:56:46,411.411 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-25 23:56:50,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:56:50,036.036 INFO    ] Checking for system updates...
[2026-10-25 23:56:50,073.073 INFO    ] 200
[2026-10-25 23:56:50,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:50,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:56:50,130.130 INFO    ] No update needed
[2026-10-25 23:56:50,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 23:56:50,167.167 INFO    ] 200
[2026-10-25 23:56:50,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:56:50,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:56:50,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:56:50,270.270 INFO    ] No camera update needed
[2026-10-25 23:56:50,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:56:50,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:56:50,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:56:50,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:56:52,326.326 INFO    ] ================================================
[2026-10-25 23:56:52,342.342 INFO    ] Launching Daemon at Sun Oct 25 23:56:52 IST 2026
[2026-10-25 23:56:52,353.353 INFO    ] ================================================
[2026-10-25 23:56:52,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:56:52
[2026-10-25 23:56:53,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:56:53,836.836 INFO    ] Initializing speech engine...
[2026-10-25 23:56:53,843.843 INFO    ] 2026-10-25 23:56:53
[2026-10-25 23:56:54,104.104 INFO    ] 2026-10-25 23:56:54
[2026-10-25 23:56:54,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:56:54,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:56:54,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:56:54,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:56:54,589.589 INFO    ] time= 25/10/2026 23:56:54
[2026-10-25 23:56:54,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:56:54,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:56:54,742.742 INFO    ] No existing commands found in stream
[2026-10-25 23:56:59,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:56:59,757.757 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-25 23:57:01,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:57:01,007.007 INFO    ] Checking for system updates...
[2026-10-25 23:57:01,044.044 INFO    ] 200
[2026-10-25 23:57:01,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:01,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:01,130.130 INFO    ] No update needed
[2026-10-25 23:57:01,133.133 INFO    ] Checking for camera pi updates...
[2026-10-25 23:57:01,167.167 INFO    ] 200
[2026-10-25 23:57:01,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:01,212.212 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:57:01,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:01,352.352 INFO    ] No camera update needed
[2026-10-25 23:57:01,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:57:01,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:57:01,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:57:01,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:57:03,412.412 INFO    ] ================================================
[2026-10-25 23:57:03,428.428 INFO    ] Launching Daemon at Sun Oct 25 23:57:03 IST 2026
[2026-10-25 23:57:03,439.439 INFO    ] ================================================
[2026-10-25 23:57:04,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:57:04
[2026-10-25 23:57:04,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:57:04,917.917 INFO    ] Initializing speech engine...
[2026-10-25 23:57:04,926.926 INFO    ] 2026-10-25 23:57:04
[2026-10-25 23:57:05,172.172 INFO    ] 2026-10-25 23:57:05
[2026-10-25 23:57:05,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:57:05,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:57:05,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:57:05,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:57:05,538.538 INFO    ] time= 25/10/2026 23:57:05
[2026-10-25 23:57:05,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:57:05,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:57:05,697.697 INFO    ] No existing commands found in stream
[2026-10-25 23:57:10,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:57:10,725.725 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-25 23:57:11,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:57:11,354.354 INFO    ] Checking for system updates...
[2026-10-25 23:57:11,390.390 INFO    ] 200
[2026-10-25 23:57:11,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:11,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:57:11,447.447 INFO    ] No update needed
[2026-10-25 23:57:11,449.449 INFO    ] Checking for camera pi updates...
[2026-10-25 23:57:11,484.484 INFO    ] 200
[2026-10-25 23:57:11,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:11,531.531 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:57:11,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:57:11,592.592 INFO    ] No camera update needed
[2026-10-25 23:57:11,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:57:11,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:57:11,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:57:11,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:57:13,650.650 INFO    ] ================================================
[2026-10-25 23:57:13,665.665 INFO    ] Launching Daemon at Sun Oct 25 23:57:13 IST 2026
[2026-10-25 23:57:13,676.676 INFO    ] ================================================
[2026-10-25 23:57:14,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:57:14
[2026-10-25 23:57:14,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:57:15,069.069 INFO    ] Initializing speech engine...
[2026-10-25 23:57:15,090.090 INFO    ] 2026-10-25 23:57:15
[2026-10-25 23:57:15,344.344 INFO    ] 2026-10-25 23:57:15
[2026-10-25 23:57:15,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:57:15,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:57:15,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:57:15,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:57:15,806.806 INFO    ] time= 25/10/2026 23:57:15
[2026-10-25 23:57:15,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:57:15,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:57:15,958.958 INFO    ] No existing commands found in stream
[2026-10-25 23:57:20,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:57:20,972.972 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-25 23:57:23,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:57:23,417.417 INFO    ] Checking for system updates...
[2026-10-25 23:57:23,454.454 INFO    ] 200
[2026-10-25 23:57:23,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:23,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:23,513.513 INFO    ] No update needed
[2026-10-25 23:57:23,516.516 INFO    ] Checking for camera pi updates...
[2026-10-25 23:57:23,551.551 INFO    ] 200
[2026-10-25 23:57:23,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:23,596.596 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:57:23,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:23,644.644 INFO    ] No camera update needed
[2026-10-25 23:57:23,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:57:23,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:57:23,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:57:23,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:57:25,702.702 INFO    ] ================================================
[2026-10-25 23:57:25,717.717 INFO    ] Launching Daemon at Sun Oct 25 23:57:25 IST 2026
[2026-10-25 23:57:25,728.728 INFO    ] ================================================
[2026-10-25 23:57:26,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:57:26
[2026-10-25 23:57:26,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:57:27,135.135 INFO    ] Initializing speech engine...
[2026-10-25 23:57:27,143.143 INFO    ] 2026-10-25 23:57:27
[2026-10-25 23:57:27,434.434 INFO    ] 2026-10-25 23:57:27
[2026-10-25 23:57:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:57:27,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:57:27,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:57:27,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:57:27,849.849 INFO    ] time= 25/10/2026 23:57:27
[2026-10-25 23:57:27,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:57:27,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:57:27,934.934 INFO    ] No existing commands found in stream
[2026-10-25 23:57:32,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:57:32,947.947 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-25 23:57:36,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:57:36,218.218 INFO    ] Checking for system updates...
[2026-10-25 23:57:36,254.254 INFO    ] 200
[2026-10-25 23:57:36,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:36,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:57:36,311.311 INFO    ] No update needed
[2026-10-25 23:57:36,314.314 INFO    ] Checking for camera pi updates...
[2026-10-25 23:57:36,348.348 INFO    ] 200
[2026-10-25 23:57:36,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:36,393.393 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:57:36,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:57:36,454.454 INFO    ] No camera update needed
[2026-10-25 23:57:36,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:57:36,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:57:36,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:57:36,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:57:38,510.510 INFO    ] ================================================
[2026-10-25 23:57:38,525.525 INFO    ] Launching Daemon at Sun Oct 25 23:57:38 IST 2026
[2026-10-25 23:57:38,536.536 INFO    ] ================================================
[2026-10-25 23:57:39,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:57:39
[2026-10-25 23:57:39,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:57:40,133.133 INFO    ] Initializing speech engine...
[2026-10-25 23:57:40,141.141 INFO    ] 2026-10-25 23:57:40
[2026-10-25 23:57:40,416.416 INFO    ] 2026-10-25 23:57:40
[2026-10-25 23:57:40,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:57:40,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:57:40,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:57:40,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:57:40,903.903 INFO    ] time= 25/10/2026 23:57:40
[2026-10-25 23:57:40,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:57:40,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:57:41,100.100 INFO    ] No existing commands found in stream
[2026-10-25 23:57:46,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:57:46,131.131 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-25 23:57:49,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:57:49,457.457 INFO    ] Checking for system updates...
[2026-10-25 23:57:49,492.492 INFO    ] 200
[2026-10-25 23:57:49,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:49,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:49,549.549 INFO    ] No update needed
[2026-10-25 23:57:49,552.552 INFO    ] Checking for camera pi updates...
[2026-10-25 23:57:49,589.589 INFO    ] 200
[2026-10-25 23:57:49,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:57:49,632.632 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:57:49,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:57:49,684.684 INFO    ] No camera update needed
[2026-10-25 23:57:49,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:57:49,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:57:49,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:57:49,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:57:51,741.741 INFO    ] ================================================
[2026-10-25 23:57:51,756.756 INFO    ] Launching Daemon at Sun Oct 25 23:57:51 IST 2026
[2026-10-25 23:57:51,767.767 INFO    ] ================================================
[2026-10-25 23:57:52,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:57:52
[2026-10-25 23:57:53,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:57:53,344.344 INFO    ] Initializing speech engine...
[2026-10-25 23:57:53,351.351 INFO    ] 2026-10-25 23:57:53
[2026-10-25 23:57:53,609.609 INFO    ] 2026-10-25 23:57:53
[2026-10-25 23:57:53,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:57:53,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:57:53,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:57:54,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:57:54,067.067 INFO    ] time= 25/10/2026 23:57:54
[2026-10-25 23:57:54,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:57:54,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:57:54,224.224 INFO    ] No existing commands found in stream
[2026-10-25 23:57:59,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:57:59,253.253 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-25 23:58:02,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-25 23:58:02,956.956 INFO    ] Checking for system updates...
[2026-10-25 23:58:03,007.007 INFO    ] 200
[2026-10-25 23:58:03,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:03,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:58:03,132.132 INFO    ] No update needed
[2026-10-25 23:58:03,137.137 INFO    ] Checking for camera pi updates...
[2026-10-25 23:58:03,179.179 INFO    ] 200
[2026-10-25 23:58:03,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:03,232.232 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:58:03,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:58:03,290.290 INFO    ] No camera update needed
[2026-10-25 23:58:03,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:58:03,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:58:03,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:58:03,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:58:05,354.354 INFO    ] ================================================
[2026-10-25 23:58:05,370.370 INFO    ] Launching Daemon at Sun Oct 25 23:58:05 IST 2026
[2026-10-25 23:58:05,381.381 INFO    ] ================================================
[2026-10-25 23:58:05,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:58:05
[2026-10-25 23:58:06,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:58:06,804.804 INFO    ] Initializing speech engine...
[2026-10-25 23:58:06,812.812 INFO    ] 2026-10-25 23:58:06
[2026-10-25 23:58:07,102.102 INFO    ] 2026-10-25 23:58:07
[2026-10-25 23:58:07,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:58:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:58:07,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:58:07,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:58:07,473.473 INFO    ] time= 25/10/2026 23:58:07
[2026-10-25 23:58:07,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:58:07,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:58:07,595.595 INFO    ] No existing commands found in stream
[2026-10-25 23:58:12,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:58:12,611.611 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-25 23:58:16,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:58:16,268.268 INFO    ] Checking for system updates...
[2026-10-25 23:58:16,305.305 INFO    ] 200
[2026-10-25 23:58:16,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:16,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:16,363.363 INFO    ] No update needed
[2026-10-25 23:58:16,366.366 INFO    ] Checking for camera pi updates...
[2026-10-25 23:58:16,400.400 INFO    ] 200
[2026-10-25 23:58:16,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:16,443.443 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:58:16,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:16,494.494 INFO    ] No camera update needed
[2026-10-25 23:58:16,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:58:16,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:58:16,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:58:16,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:58:18,548.548 INFO    ] ================================================
[2026-10-25 23:58:18,563.563 INFO    ] Launching Daemon at Sun Oct 25 23:58:18 IST 2026
[2026-10-25 23:58:18,574.574 INFO    ] ================================================
[2026-10-25 23:58:19,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:58:19
[2026-10-25 23:58:19,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:58:19,984.984 INFO    ] Initializing speech engine...
[2026-10-25 23:58:19,998.998 INFO    ] 2026-10-25 23:58:19
[2026-10-25 23:58:20,279.279 INFO    ] 2026-10-25 23:58:20
[2026-10-25 23:58:20,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:58:20,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:58:20,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:58:20,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:58:20,694.694 INFO    ] time= 25/10/2026 23:58:20
[2026-10-25 23:58:20,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:58:20,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:58:20,781.781 INFO    ] No existing commands found in stream
[2026-10-25 23:58:25,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:58:25,819.819 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-25 23:58:29,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:58:29,748.748 INFO    ] Checking for system updates...
[2026-10-25 23:58:29,784.784 INFO    ] 200
[2026-10-25 23:58:29,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:29,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:29,843.843 INFO    ] No update needed
[2026-10-25 23:58:29,845.845 INFO    ] Checking for camera pi updates...
[2026-10-25 23:58:29,879.879 INFO    ] 200
[2026-10-25 23:58:29,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:29,922.922 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:58:29,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:29,971.971 INFO    ] No camera update needed
[2026-10-25 23:58:29,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:58:29,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:58:29,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:58:29,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:58:32,025.025 INFO    ] ================================================
[2026-10-25 23:58:32,042.042 INFO    ] Launching Daemon at Sun Oct 25 23:58:32 IST 2026
[2026-10-25 23:58:32,053.053 INFO    ] ================================================
[2026-10-25 23:58:32,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:58:32
[2026-10-25 23:58:33,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:58:33,623.623 INFO    ] Initializing speech engine...
[2026-10-25 23:58:33,635.635 INFO    ] 2026-10-25 23:58:33
[2026-10-25 23:58:33,904.904 INFO    ] 2026-10-25 23:58:33
[2026-10-25 23:58:33,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:58:34,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:58:34,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:58:34,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:58:34,401.401 INFO    ] time= 25/10/2026 23:58:34
[2026-10-25 23:58:34,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:58:34,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:58:34,600.600 INFO    ] No existing commands found in stream
[2026-10-25 23:58:39,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:58:39,626.626 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-25 23:58:44,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:58:44,986.986 INFO    ] Checking for system updates...
[2026-10-25 23:58:45,024.024 INFO    ] 200
[2026-10-25 23:58:45,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:45,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:58:45,088.088 INFO    ] No update needed
[2026-10-25 23:58:45,090.090 INFO    ] Checking for camera pi updates...
[2026-10-25 23:58:45,124.124 INFO    ] 200
[2026-10-25 23:58:45,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:45,167.167 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:58:45,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:58:45,222.222 INFO    ] No camera update needed
[2026-10-25 23:58:45,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:58:45,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:58:45,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:58:45,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:58:47,277.277 INFO    ] ================================================
[2026-10-25 23:58:47,293.293 INFO    ] Launching Daemon at Sun Oct 25 23:58:47 IST 2026
[2026-10-25 23:58:47,304.304 INFO    ] ================================================
[2026-10-25 23:58:47,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:58:47
[2026-10-25 23:58:48,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:58:48,878.878 INFO    ] Initializing speech engine...
[2026-10-25 23:58:48,886.886 INFO    ] 2026-10-25 23:58:48
[2026-10-25 23:58:49,194.194 INFO    ] 2026-10-25 23:58:49
[2026-10-25 23:58:49,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:58:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:58:49,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:58:49,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:58:49,635.635 INFO    ] time= 25/10/2026 23:58:49
[2026-10-25 23:58:49,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:58:49,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:58:49,816.816 INFO    ] No existing commands found in stream
[2026-10-25 23:58:54,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:58:54,847.847 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-25 23:58:57,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:58:57,736.736 INFO    ] Checking for system updates...
[2026-10-25 23:58:57,772.772 INFO    ] 200
[2026-10-25 23:58:57,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:57,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:57,831.831 INFO    ] No update needed
[2026-10-25 23:58:57,833.833 INFO    ] Checking for camera pi updates...
[2026-10-25 23:58:57,867.867 INFO    ] 200
[2026-10-25 23:58:57,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:58:57,920.920 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:58:57,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:58:57,972.972 INFO    ] No camera update needed
[2026-10-25 23:58:57,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:58:57,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:58:57,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:58:57,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:00,029.029 INFO    ] ================================================
[2026-10-25 23:59:00,045.045 INFO    ] Launching Daemon at Sun Oct 25 23:59:00 IST 2026
[2026-10-25 23:59:00,056.056 INFO    ] ================================================
[2026-10-25 23:59:00,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:00
[2026-10-25 23:59:01,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:59:01,483.483 INFO    ] Initializing speech engine...
[2026-10-25 23:59:01,493.493 INFO    ] 2026-10-25 23:59:01
[2026-10-25 23:59:01,742.742 INFO    ] 2026-10-25 23:59:01
[2026-10-25 23:59:01,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:59:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:59:02,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:59:02,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:59:02,176.176 INFO    ] time= 25/10/2026 23:59:02
[2026-10-25 23:59:02,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:59:02,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:59:02,314.314 INFO    ] No existing commands found in stream
[2026-10-25 23:59:07,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:59:07,330.330 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-25 23:59:11,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-25 23:59:11,605.605 INFO    ] Checking for system updates...
[2026-10-25 23:59:11,642.642 INFO    ] 200
[2026-10-25 23:59:11,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:11,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:11,709.709 INFO    ] No update needed
[2026-10-25 23:59:11,712.712 INFO    ] Checking for camera pi updates...
[2026-10-25 23:59:11,745.745 INFO    ] 200
[2026-10-25 23:59:11,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:11,788.788 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:59:11,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:11,849.849 INFO    ] No camera update needed
[2026-10-25 23:59:11,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:59:11,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:59:11,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:59:11,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:13,905.905 INFO    ] ================================================
[2026-10-25 23:59:13,920.920 INFO    ] Launching Daemon at Sun Oct 25 23:59:13 IST 2026
[2026-10-25 23:59:13,935.935 INFO    ] ================================================
[2026-10-25 23:59:14,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:14
[2026-10-25 23:59:15,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:59:15,380.380 INFO    ] Initializing speech engine...
[2026-10-25 23:59:15,387.387 INFO    ] 2026-10-25 23:59:15
[2026-10-25 23:59:15,648.648 INFO    ] 2026-10-25 23:59:15
[2026-10-25 23:59:15,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:59:15,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:59:15,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:59:16,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:59:16,111.111 INFO    ] time= 25/10/2026 23:59:16
[2026-10-25 23:59:16,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:59:16,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:59:16,256.256 INFO    ] No existing commands found in stream
[2026-10-25 23:59:21,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:59:21,270.270 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-25 23:59:21,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-25 23:59:21,812.812 INFO    ] Checking for system updates...
[2026-10-25 23:59:21,852.852 INFO    ] 200
[2026-10-25 23:59:21,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:21,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:21,917.917 INFO    ] No update needed
[2026-10-25 23:59:21,919.919 INFO    ] Checking for camera pi updates...
[2026-10-25 23:59:21,959.959 INFO    ] 200
[2026-10-25 23:59:21,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:22,004.004 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:59:22,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:22,054.054 INFO    ] No camera update needed
[2026-10-25 23:59:22,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:59:22,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:59:22,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:59:22,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:24,109.109 INFO    ] ================================================
[2026-10-25 23:59:24,125.125 INFO    ] Launching Daemon at Sun Oct 25 23:59:24 IST 2026
[2026-10-25 23:59:24,137.137 INFO    ] ================================================
[2026-10-25 23:59:24,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:24
[2026-10-25 23:59:25,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:59:25,694.694 INFO    ] Initializing speech engine...
[2026-10-25 23:59:25,705.705 INFO    ] 2026-10-25 23:59:25
[2026-10-25 23:59:25,978.978 INFO    ] 2026-10-25 23:59:25
[2026-10-25 23:59:26,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:59:26,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:59:26,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:59:26,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:59:26,423.423 INFO    ] time= 25/10/2026 23:59:26
[2026-10-25 23:59:26,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:59:26,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:59:26,601.601 INFO    ] No existing commands found in stream
[2026-10-25 23:59:31,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:59:31,617.617 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-25 23:59:32,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-25 23:59:32,683.683 INFO    ] Checking for system updates...
[2026-10-25 23:59:32,722.722 INFO    ] 200
[2026-10-25 23:59:32,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:32,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:32,787.787 INFO    ] No update needed
[2026-10-25 23:59:32,791.791 INFO    ] Checking for camera pi updates...
[2026-10-25 23:59:32,832.832 INFO    ] 200
[2026-10-25 23:59:32,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:32,894.894 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:59:32,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:32,936.936 INFO    ] No camera update needed
[2026-10-25 23:59:32,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:59:32,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:59:32,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:59:32,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:35,007.007 INFO    ] ================================================
[2026-10-25 23:59:35,022.022 INFO    ] Launching Daemon at Sun Oct 25 23:59:35 IST 2026
[2026-10-25 23:59:35,033.033 INFO    ] ================================================
[2026-10-25 23:59:35,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:35
[2026-10-25 23:59:36,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:59:36,443.443 INFO    ] Initializing speech engine...
[2026-10-25 23:59:36,467.467 INFO    ] 2026-10-25 23:59:36
[2026-10-25 23:59:36,735.735 INFO    ] 2026-10-25 23:59:36
[2026-10-25 23:59:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:59:36,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:59:36,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:59:37,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:59:37,076.076 INFO    ] time= 25/10/2026 23:59:37
[2026-10-25 23:59:37,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:59:37,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:59:37,155.155 INFO    ] No existing commands found in stream
[2026-10-25 23:59:42,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:59:42,168.168 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-25 23:59:45,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-25 23:59:45,243.243 INFO    ] Checking for system updates...
[2026-10-25 23:59:45,279.279 INFO    ] 200
[2026-10-25 23:59:45,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:45,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:59:45,338.338 INFO    ] No update needed
[2026-10-25 23:59:45,340.340 INFO    ] Checking for camera pi updates...
[2026-10-25 23:59:45,377.377 INFO    ] 200
[2026-10-25 23:59:45,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:45,419.419 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:59:45,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-25 23:59:45,471.471 INFO    ] No camera update needed
[2026-10-25 23:59:45,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:59:45,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:59:45,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:59:45,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:47,525.525 INFO    ] ================================================
[2026-10-25 23:59:47,541.541 INFO    ] Launching Daemon at Sun Oct 25 23:59:47 IST 2026
[2026-10-25 23:59:47,552.552 INFO    ] ================================================
[2026-10-25 23:59:48,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:48
[2026-10-25 23:59:48,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-25 23:59:49,135.135 INFO    ] Initializing speech engine...
[2026-10-25 23:59:49,148.148 INFO    ] 2026-10-25 23:59:49
[2026-10-25 23:59:49,428.428 INFO    ] 2026-10-25 23:59:49
[2026-10-25 23:59:49,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-25 23:59:49,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-25 23:59:49,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-25 23:59:49,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-25 23:59:49,907.907 INFO    ] time= 25/10/2026 23:59:49
[2026-10-25 23:59:49,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202502
[2026-10-25 23:59:49,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-25 23:59:50,111.111 INFO    ] No existing commands found in stream
[2026-10-25 23:59:55,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-25 23:59:55,145.145 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-25 23:59:56,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-25 23:59:56,748.748 INFO    ] Checking for system updates...
[2026-10-25 23:59:56,785.785 INFO    ] 200
[2026-10-25 23:59:56,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:56,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:56,845.845 INFO    ] No update needed
[2026-10-25 23:59:56,848.848 INFO    ] Checking for camera pi updates...
[2026-10-25 23:59:56,885.885 INFO    ] 200
[2026-10-25 23:59:56,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-10-25 23:59:56,933.933 INFO    ] Camera IP: TMCAM06202502.local
[2026-10-25 23:59:56,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-25 23:59:56,991.991 INFO    ] No camera update needed
[2026-10-25 23:59:56,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-25 23:59:56,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-25 23:59:57,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-25 23:59:57,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-25 23:59:59,048.048 INFO    ] ================================================
[2026-10-25 23:59:59,062.062 INFO    ] Launching Daemon at Sun Oct 25 23:59:59 IST 2026
[2026-10-25 23:59:59,073.073 INFO    ] ================================================
[2026-10-25 23:59:59,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-25 23:59:59
